@bimdata/viewer 2.4.0-beta.7 → 2.4.0-beta.8

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.
@@ -76,7 +76,7 @@
76
76
  --iteration: ${i.laps};
77
77
  --dasharray: ${i.dashArray};
78
78
  --dashoffset-from: ${i.dashOffsetFrom};
79
- --dashoffset-to: ${i.dashOffsetTo};`),onAnimationiteration:e[0]||(e[0]=s=>t.$emit("lap",(i.delay*i.laps-s.elapsedTime)/i.delay)),onAnimationend:e[1]||(e[1]=s=>t.$emit("stop"))},null,44,hgt)],8,dgt)),v("div",{class:"bimdata-pie-spinner__inside",style:Se({width:i.width+"px",height:i.width+"px"})},[Ct(t.$slots,"default",{},void 0,!0)],4)])}const Agt=W(cgt,[["render",pgt],["__scopeId","data-v-70da4628"]]),ggt={model:{prop:"modelValue",event:"update:modelValue"},props:{big:{type:Boolean,default:!1},text:{type:String,default:null},value:{default:!0},modelValue:{},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],computed:{checked(){return this.modelValue===this.value}},methods:{onClick(){this.$emit("update:modelValue",this.value)}}},I9=t=>(Jo("data-v-517bf62f"),t=t(),Wo(),t),Mgt=["disabled"],fgt=I9(()=>v("div",{class:"bimdata-radio__background"},null,-1)),wgt=I9(()=>v("div",{class:"bimdata-radio__circle"},null,-1)),Lgt=I9(()=>v("div",{class:"bimdata-radio__dot"},null,-1)),mgt={class:"bimdata-radio__text"};function ygt(t,e,i,o,r,n){return D(),U("button",{type:"button",class:Ne(["bimdata-radio",{disabled:i.disabled,"bimdata-radio--checked":n.checked,"bimdata-radio--big":i.big}]),disabled:i.disabled,onClick:e[0]||(e[0]=(...s)=>n.onClick&&n.onClick(...s))},[fgt,wgt,Lgt,v("span",mgt,X(i.text),1)],10,Mgt)}const vgt=W(ggt,[["render",ygt],["__scopeId","data-v-517bf62f"]]),Cgt={props:{itemWidth:{type:String,default:"100px"},rowGap:{type:String,default:"12px"},columnGap:{type:String,default:"12px"},isRepeatFit:{type:Boolean,default:!1}}};function Igt(t,e,i,o,r,n){return D(),U("div",{class:"bimdata-responsive-grid",style:Se({gridTemplateColumns:i.isRepeatFit?`repeat(auto-fit, minmax(${i.itemWidth}, 1fr))`:`repeat(auto-fill, minmax(${i.itemWidth}, 1fr))`,rowGap:i.rowGap,columnGap:i.columnGap})},[Ct(t.$slots,"default",{},void 0,!0)],4)}const jgt=W(Cgt,[["render",Igt],["__scopeId","data-v-b626b0fb"]]),bgt={components:{BIMDataIconClose:RC,BIMDataButton:bn},props:{reverse:{type:Boolean,default:!1}},emits:["confirm-delete","cancel-delete"]},xgt={class:"safe-zone-inline"};function Dgt(t,e,i,o,r,n){const s=z("BIMDataButton"),a=z("BIMDataIconClose");return D(),U("div",xgt,[O(s,{class:"safe-zone-inline__btn-delete",color:"high",fill:"",radius:"",onClick:e[0]||(e[0]=l=>t.$emit("confirm-delete"))},{default:J(()=>[Ct(t.$slots,"content",{},()=>[dt("Delete")],!0)]),_:3}),O(s,{class:"safe-zone-inline__btn-close",style:Se({width:"15px",order:i.reverse?-1:0}),width:"0px",radius:"",onClick:e[1]||(e[1]=l=>t.$emit("cancel-delete"))},{default:J(()=>[O(a,{size:"xxs",color:"granite"})]),_:1},8,["style"])])}const Ngt=W(bgt,[["render",Dgt],["__scopeId","data-v-b2effc6d"]]),Sgt={components:{BIMDataIconClose:RC,BIMDataIconSearch:m9,BIMDataButton:bn},directives:{focus:{inserted:function(t,{value:e}){e&&t.focus()}},clickaway:Uc},model:{prop:"modelValue",event:"update:modelValue"},props:{modelValue:{type:String},placeholder:{type:String,default:""},width:{type:[Number,String],default:"150px"},height:{type:[Number,String],default:"32px"},autofocus:{type:Boolean,default:!1},clear:{type:Boolean,default:!1},radius:{type:Boolean,default:!1},square:{type:Boolean,default:!1},color:{type:String,default:"default",validator:t=>h9.includes(t)},autocomplete:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","enter","clear"],data(){return{inputVisible:!1,focused:!1}},computed:{classes(){return{"bimdata-search-bar__radius":this.radius,"bimdata-search-bar__square":this.square,[`bimdata-search-bar__${this.color}`]:this.color}}},methods:{away(){this.inputVisible=!1},focus(){this.$refs.input&&this.$refs.input.focus()},blur(){this.$refs.input&&this.$refs.input.blur()},clickClear(){this.$emit("update:modelValue",""),this.$emit("clear")}}},kgt={class:"bimdata-search-icon"},Tgt=["value","placeholder","autocomplete","disabled"];function Egt(t,e,i,o,r,n){const s=z("BIMDataIconSearch"),a=z("BIMDataIconClose"),l=z("BIMDataButton"),c=Yi("focus"),u=Yi("clickaway");return Tt((D(),U("div",{class:Ne(["bimdata-search-bar",{focus:r.focused,disabled:i.disabled,...n.classes}]),style:Se({width:i.width,height:i.height})},[v("span",kgt,[O(s,{size:"xxs"})]),Tt(v("input",{ref:"input",value:i.modelValue,onFocus:e[0]||(e[0]=d=>r.focused=!0),onBlur:e[1]||(e[1]=d=>r.focused=!1),onInput:e[2]||(e[2]=d=>t.$emit("update:modelValue",d.target.value)),placeholder:i.placeholder,onKeyup:e[3]||(e[3]=si(d=>t.$emit("enter",d.target.value),["enter"])),autocomplete:i.autocomplete?"on":"off",disabled:i.disabled},null,40,Tgt),[[c,i.autofocus]]),i.clear&&i.modelValue!==""?(D(),oe(l,{key:0,width:"25px",onClick:e[4]||(e[4]=d=>n.clickClear())},{default:J(()=>[O(a,{size:"xxs"})]),_:1})):be("",!0)],6)),[[u,n.away]])}const zgt=W(Sgt,[["render",Egt],["__scopeId","data-v-c3818791"]]),Pgt={components:{BIMDataIconDefault:UG,BIMDataIconSearch:m9,BIMDataTextbox:UC},directives:{clickaway:Uc},props:{items:{type:Array,required:!0,default:()=>[]},isAllResultatsBtnActive:{type:Boolean,required:!1,default:!0},perPage:{type:Number,default:10,validator:t=>t>0},loading:{type:Boolean,default:!1},placeholder:{type:String,default:""},autoclear:{type:Boolean,default:!0}},data(){return{isOpen:!1,search:"",current:0}},computed:{results(){const t=["title","text","logo"];let e;return typeof this.search=="object"?e=this.search.title.toLowerCase()||this.search.text.toLowerCase():e=this.search.toLowerCase(),this.items.filter(i=>t.some(o=>typeof i[o]=="string"?i[o].toLowerCase().includes(e):!1)).slice(0,this.perPage)},openResults(){return this.search!==""&&this.results.length!==0&&this.isOpen===!0}},methods:{onChange(){this.$emit("input",this.search),this.isOpen===!1&&(this.isOpen=!0,this.current=-1)},onElementClick(t){this.$emit("item-click",t),this.isOpen=!1,this.autoclear&&(this.search="")},onAllResultatsBtnClick(){this.$emit("all-results-click",{results:this.results,search:this.search}),this.isOpen=!1,this.autoclear&&(this.search="")},onEnter(){this.$emit("enter",this.results[this.current].id),this.isOpen=!1,this.current=-1,this.autoclear&&(this.search="")},onArrowUp(){this.current>=1?this.current=this.current-1:this.current=this.results.length-1},onArrowDown(){this.current<this.results.length-1?this.current=this.current+1:this.current=0},focus(){this.isOpen=!0},away(){this.isOpen=!1}}},Bgt=t=>(Jo("data-v-b485ea22"),t=t(),Wo(),t),Ogt={class:"bimdata-search-autocomplete"},Rgt={class:"bimdata-search-autocomplete__input flex items-center"},Ugt={class:"bimdata-search-icon flex"},Fgt=["placeholder"],Ygt={class:"bimdata-list p-y-6"},Qgt={key:0,class:"loading"},Ggt=Bgt(()=>v("p",{class:"text-center"},"loading results...",-1)),Hgt=["onClick"],Vgt={class:"bimdata-search-autocomplete__dropdown__left m-r-12"},Zgt=["src"],Jgt={class:"bimdata-search-autocomplete__dropdown__right flex flex-col"},Wgt={key:0,class:"title"},Kgt={key:1,class:"text"};function _gt(t,e,i,o,r,n){const s=z("BIMDataIconSearch"),a=z("BIMDataIconDefault"),l=z("BIMDataTextbox"),c=Yi("clickaway");return Tt((D(),U("div",Ogt,[v("div",Rgt,[v("span",Ugt,[O(s,{fill:"",color:"default",size:"xxs"})]),Tt(v("input",{class:"form-control p-l-36 p-r-12",type:"text","onUpdate:modelValue":e[0]||(e[0]=u=>r.search=u),placeholder:i.placeholder,onKeydown:[e[1]||(e[1]=si((...u)=>n.onEnter&&n.onEnter(...u),["enter"])),e[2]||(e[2]=si((...u)=>n.onArrowDown&&n.onArrowDown(...u),["down"])),e[3]||(e[3]=si((...u)=>n.onArrowUp&&n.onArrowUp(...u),["up"]))],onInput:e[4]||(e[4]=(...u)=>n.onChange&&n.onChange(...u)),onFocus:e[5]||(e[5]=(...u)=>n.focus&&n.focus(...u))},null,40,Fgt),[[Dp,r.search]])]),v("div",{class:Ne(["bimdata-search-autocomplete__dropdown",{open:n.openResults}])},[v("ul",Ygt,[i.loading?(D(),U("li",Qgt,[Ct(t.$slots,"loading",{},()=>[Ggt],!0)])):(D(!0),U(Mt,{key:1},ii(n.results,(u,d)=>(D(),U("li",{key:d,class:Ne([{active:d===r.current},"p-y-6 p-x-12 flex items-center"]),onClick:h=>n.onElementClick(u)},[Ct(t.$slots,"left",{result:u},()=>[v("div",Vgt,[u&&u.logo?(D(),U("img",{key:0,class:"logo",src:u.logo},null,8,Zgt)):Ct(t.$slots,"logoPlaceholder",{key:1},()=>[O(a,{fill:"",color:"default"})],!0)])],!0),v("div",Jgt,[u&&u.title?(D(),U("span",Wgt,X(u.title),1)):be("",!0),u&&u.text?(D(),U("span",Kgt,[O(l,{text:u.text,width:"260px",cutPosition:"end",tooltip:!1},null,8,["text"])])):be("",!0)])],10,Hgt))),128))]),i.isAllResultatsBtnActive?(D(),U("div",{key:0,class:"bimdata-search-autocomplete__dropdown__button flex items-center justify-center",onClick:e[6]||(e[6]=(...u)=>n.onAllResultatsBtnClick&&n.onAllResultatsBtnClick(...u))},' See all results for "'+X(r.search)+'" ',1)):be("",!0)],2)])),[[c,n.away]])}const qgt=W(Pgt,[["render",_gt],["__scopeId","data-v-b485ea22"]]),Xgt={components:{BIMDataCheckbox:BC,BIMDataIconChevron:Wl},directives:{clickaway:Uc},model:{prop:"modelValue",event:"update:modelValue"},props:{width:{type:[String,Number]},label:{type:String,default:null},options:{type:Array,default:()=>[]},optionKey:{type:String},optionLabelKey:{type:String},modelValue:{type:Array},nullLabel:{type:String},disabled:{type:Boolean,default:!1},search:{type:Boolean,default:!1},searchPlaceholder:{type:String,default:"Search"},resetOnLeave:{type:Boolean,default:!1}},emits:["update:modelValue"],data(){return{isOpen:!1,searchText:""}},computed:{displayedValue(){return this.modelValue.map(this.optionLabel).join(", ")},filteredOptions(){if(this.searchText==="")return this.options;{const t=this.searchText.toLowerCase();return this.optionLabelKey?this.options.filter(e=>e[this.optionLabelKey].toLowerCase().includes(t)):this.optionKey?this.options.filter(e=>e.optionGroup||e[this.optionKey].toLowerCase().includes(t)):this.options.filter(e=>e.toLowerCase().includes(t))}}},methods:{toggle(){this.disabled||(this.isOpen=!this.isOpen)},optionValue(t){return this.optionKey&&t?t[this.optionKey]:t},optionLabel(t){return this.nullLabel&&t==null?this.nullLabel:this.optionLabelKey&&t?t[this.optionLabelKey]:this.optionKey&&t?t[this.optionKey]:t},isSelected(t){const e=this.optionValue(t);return this.modelValue.map(this.optionValue).includes(e)},isDisabled(t){return this.optionKey&&t&&t.disabled},isOptionGroup(t){return this.optionKey&&t&&t.optionGroup},onOptionClick(t){if(this.optionKey&&(t.disabled||t.optionGroup))return;let e;if(this.isSelected(t)){const i=this.optionValue(t);e=this.modelValue.filter(o=>this.optionValue(o)!==i)}else e=this.modelValue.concat(t);this.$emit("update:modelValue",e)},resetSearch(){this.clearSearchOnLeave&&(this.searchText="")},away(){this.isOpen=!1,this.resetSearch()}}},$gt=t=>(Jo("data-v-cfb01881"),t=t(),Wo(),t),e4t={class:"bimdata-select__content"},t4t={class:"bimdata-select__content__label"},i4t=$gt(()=>v("span",{class:"bimdata-select__content__underline"},null,-1)),o4t={class:"bimdata-select__option-list"},r4t={key:1},s4t={class:"bimdata-list m-y-6"},n4t=["onClick"];function a4t(t,e,i,o,r,n){const s=z("BIMDataIconChevron"),a=z("BIMDataSearch"),l=z("BIMDataCheckbox"),c=Yi("clickaway");return Tt((D(),U("div",{class:Ne(["bimdata-select",{disabled:i.disabled,active:r.isOpen,"not-empty":i.modelValue.length>0}]),style:Se({width:i.width})},[v("div",e4t,[v("div",{class:"bimdata-select__content__value",onClick:e[0]||(e[0]=(...u)=>n.toggle&&n.toggle(...u))},[v("span",null,X(n.displayedValue),1),O(s,{size:"xxs",rotate:r.isOpen?90:0},null,8,["rotate"])]),v("label",t4t,X(i.label),1),i4t]),O($i,{name:"slide-fade-down"},{default:J(()=>[Tt(v("div",o4t,[i.search?(D(),oe(a,{key:0,width:"calc(100% - 12px)",color:"primary",radius:"",placeholder:i.searchPlaceholder,modelValue:r.searchText,"onUpdate:modelValue":e[1]||(e[1]=u=>r.searchText=u),class:"m-6"},null,8,["placeholder","modelValue"])):be("",!0),n.filteredOptions.length===0?(D(),U("div",r4t,[Ct(t.$slots,"empty",{},void 0,!0)])):be("",!0),v("ul",s4t,[(D(!0),U(Mt,null,ii(n.filteredOptions,(u,d)=>(D(),U("li",{class:Ne(["bimdata-select__option-list__entry",{selected:n.isSelected(u),disabled:n.isDisabled(u),"option-group":n.isOptionGroup(u)}]),key:d,onClick:h=>n.onOptionClick(u)},[n.isOptionGroup(u)?(D(),U(Mt,{key:0},[dt(X(n.optionLabel(u)),1)],64)):(D(),oe(l,{key:1,modelValue:n.isSelected(u),disabled:n.isDisabled(u),text:n.optionLabel(u)},null,8,["modelValue","disabled","text"]))],10,n4t))),128))])],512),[[Ai,!i.disabled&&r.isOpen]])]),_:3})],6)),[[c,n.away]])}const _G=W(Xgt,[["render",a4t],["__scopeId","data-v-cfb01881"]]),l4t={components:{BIMDataIconChevron:Wl},directives:{clickaway:Uc},model:{prop:"modelValue",event:"update:modelValue"},props:{width:{type:[String,Number]},label:{type:String,default:null},options:{type:Array,default:()=>[]},optionKey:{type:String},optionLabelKey:{type:String},modelValue:{type:[String,Object]},nullValue:{type:Boolean,default:!1},nullLabel:{type:String},disabled:{type:Boolean,default:!1},search:{type:Boolean,default:!1},searchPlaceholder:{type:String,default:"Search"},clearSearchOnLeave:{type:Boolean,default:!1}},emits:["update:modelValue"],data(){return{isOpen:!1,searchText:""}},computed:{displayedValue(){return this.optionLabel(this.modelValue)},filteredOptions(){if(this.searchText==="")return this.options;{const t=this.searchText.toLowerCase();return this.optionLabelKey?this.options.filter(e=>e[this.optionLabelKey].toLowerCase().includes(t)):this.optionKey?this.options.filter(e=>e.optionGroup||e[this.optionKey].toLowerCase().includes(t)):this.options.filter(e=>e.toLowerCase().includes(t))}}},methods:{toggle(){this.disabled||(this.isOpen=!this.isOpen)},optionValue(t){return this.optionKey&&t?t[this.optionKey]:t},optionLabel(t){return this.nullLabel&&t==null?this.nullLabel:this.optionLabelKey&&t?t[this.optionLabelKey]:this.optionKey&&t?t[this.optionKey]:t},isSelected(t){const e=this.optionValue(t);return this.optionValue(this.modelValue)===e},isDisabled(t){return this.optionKey&&t&&t.disabled},isOptionGroup(t){return this.optionKey&&t&&t.optionGroup},resetSearch(){this.clearSearchOnLeave&&(this.searchText="")},onOptionClick(t){this.optionKey&&(t.disabled||t.optionGroup)||(this.$emit("update:modelValue",t),this.resetSearch(),this.isOpen=!1)},onNullValueClick(){this.$emit("update:modelValue",null),this.resetSearch(),this.isOpen=!1},away(){this.isOpen=!1,this.resetSearch()}}},c4t=t=>(Jo("data-v-53825b9f"),t=t(),Wo(),t),u4t={class:"bimdata-select__content"},d4t={class:"bimdata-select__content__label"},h4t=c4t(()=>v("span",{class:"bimdata-select__content__underline"},null,-1)),p4t={class:"bimdata-select__option-list"},A4t={key:1},g4t={class:"bimdata-list m-y-6"},M4t=["onClick"];function f4t(t,e,i,o,r,n){const s=z("BIMDataIconChevron"),a=z("BIMDataSearch"),l=Yi("clickaway");return Tt((D(),U("div",{class:Ne(["bimdata-select",{disabled:i.disabled,active:r.isOpen,"not-empty":i.modelValue!==void 0&&i.modelValue!==null}]),style:Se({width:i.width})},[v("div",u4t,[v("div",{class:"bimdata-select__content__value",onClick:e[0]||(e[0]=(...c)=>n.toggle&&n.toggle(...c))},[v("span",null,X(n.displayedValue),1),O(s,{size:"xxs",rotate:r.isOpen?90:0},null,8,["rotate"])]),v("label",d4t,X(i.label),1),h4t]),O($i,{name:"slide-fade-down"},{default:J(()=>[Tt(v("div",p4t,[i.search?(D(),oe(a,{key:0,width:"calc(100% - 12px)",color:"primary",radius:"",placeholder:i.searchPlaceholder,modelValue:r.searchText,"onUpdate:modelValue":e[1]||(e[1]=c=>r.searchText=c),class:"m-6"},null,8,["placeholder","modelValue"])):be("",!0),n.filteredOptions.length===0?(D(),U("div",A4t,[Ct(t.$slots,"empty",{},void 0,!0)])):be("",!0),v("ul",g4t,[i.nullValue?(D(),U("li",{key:0,class:"bimdata-select__option-list__entry",onClick:e[2]||(e[2]=c=>n.onNullValueClick())},X(i.nullLabel||"None"),1)):be("",!0),(D(!0),U(Mt,null,ii(n.filteredOptions,(c,u)=>(D(),U("li",{class:Ne(["bimdata-select__option-list__entry",{selected:n.isSelected(c),disabled:n.isDisabled(c),"option-group":n.isOptionGroup(c)}]),key:u,onClick:d=>n.onOptionClick(c)},X(n.optionLabel(c)),11,M4t))),128))])],512),[[Ai,!i.disabled&&r.isOpen]])]),_:3})],6)),[[l,n.away]])}const qG=W(l4t,[["render",f4t],["__scopeId","data-v-53825b9f"]]),w4t={components:{BIMDataSelectMulti:_G,BIMDataSelectSingle:qG},model:{prop:"modelValue",event:"update:modelValue"},props:{width:{type:[String,Number],default:"100%"},label:{type:String,default:null},options:{type:Array,default:()=>[]},optionKey:{type:String},optionLabelKey:{type:String},modelValue:{type:[String,Object,Array]},multi:{type:Boolean,default:!1},nullValue:{type:Boolean,default:!1},nullLabel:{type:String},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:e,slots:i}){return()=>_i(t.multi?_G:qG,{...t,"onUpdate:modelValue":o=>e("update:modelValue",o)},{empty:()=>{var o;return(o=i.empty)==null?void 0:o.call(i)}})}},L4t={props:{barsData:{type:Array,default:()=>[]},barDistanceFromCenter:{type:Number,default:50},barStrokeWidth:{type:Number,default:10},placeholder:{type:Boolean,default:!1},placeholderStrokeWidth:{type:Number,default:4},placeholderColor:{type:String,default:"#EBEBEB"},graphDrawTime:{type:Number,default:4}},computed:{roundCapPercentageOffset(){const t=this.barStrokeWidth/2-4,e=this.barDistanceFromCenter*2*Math.PI;return t/e*100},center(){return this.viewBoxSize/2},displayedBarsData(){let t=0;return this.barsData.map(e=>{const i={...e,previousPercentageSum:t};return t+=+e.percentage,i})},viewBoxSize(){return this.barDistanceFromCenter*2+this.barStrokeWidth},viewBox(){return`0 0 ${this.viewBoxSize} ${this.viewBoxSize}`}},methods:{getPath(t){let e=t.percentage-2*this.roundCapPercentageOffset,i=t.previousPercentageSum+this.roundCapPercentageOffset;+t.percentage==100&&(e=99.999,i=0);const o=this.getPercentagePosition(i),r=this.barDistanceFromCenter;return`M${o.x},${o.y} A${r} ${r} 0 ${this.getTarget(e,i)}`},getPercentagePosition(t){const e=this.barDistanceFromCenter,i=t/100*Math.PI*2-Math.PI/2,o=e*Math.cos(i)+this.center,r=e*Math.sin(i)+this.center;return{x:o,y:r}},getTarget(t,e){const i=t>50?1:0,{x:o,y:r}=this.getPercentagePosition(t+e);return`${i} 1 ${o},${r}`}}},m4t={class:"bimdata-simple-pie-chart",ref:"container"},y4t=["viewBox"],v4t=["cx","cy","r","stroke-width","stroke"],C4t=["d","stroke-width","stroke"];function I4t(t,e,i,o,r,n){return D(),U("div",m4t,[(D(),U("svg",{viewBox:n.viewBox,style:Se(`--graph-draw-time: ${i.graphDrawTime}s;`)},[i.placeholder?(D(),U("circle",{key:0,cx:n.center,cy:n.center,r:i.barDistanceFromCenter,"stroke-width":i.placeholderStrokeWidth,stroke:i.placeholderColor,fill:"none"},null,8,v4t)):be("",!0),(D(!0),U(Mt,null,ii(n.displayedBarsData,(s,a)=>(D(),U("g",{key:a},[s.percentage>0?(D(),U("path",{key:0,class:"path",d:n.getPath(s),"stroke-width":i.barStrokeWidth,stroke:s.color,fill:"none"},null,8,C4t)):be("",!0)]))),128))],12,y4t))],512)}const j4t=W(L4t,[["render",I4t],["__scopeId","data-v-4572e7e7"]]),b4t={props:{min:{type:[Number,String],default:null},max:{type:[Number,String],default:null},step:{type:[Number,String],default:null},modelValue:{type:Number,default:0},disabled:{type:Boolean,default:!1},tooltip:{type:Boolean,default:!1}},emits:["update:modelValue"],data(){return{backgroundSize:0,tooltipPosition:`calc(${this.modelValue}% + (${8-this.modelValue*.18}px))`}},watch:{modelValue(){this.$nextTick(()=>{this.backgroundSize=this.getBackgroundSize(),this.tooltip&&this.getTooltipPosition()})}},mounted(){this.backgroundSize=this.getBackgroundSize()},methods:{getBackgroundSize(){const t=this.$refs.input;if(!t)return null;const e=+t.min||0,i=+t.max||100;return(+t.value-e)/(i-e)*100},onInput(t){this.$emit("update:modelValue",+t.target.value)},getTooltipPosition(){const t=this.min?this.min:0,e=this.max?this.max:100,i=Number((this.modelValue-t)*100/(e-t));this.tooltipPosition=`calc(${i}% + (${8-i*.18}px))`}}},x4t={class:"bimdata-slider"},D4t=["min","max","step","value","disabled"];function N4t(t,e,i,o,r,n){return D(),U("div",x4t,[v("input",{ref:"input",class:"bimdata-slider-input",type:"range",style:Se(`--background-size: ${r.backgroundSize}%`),min:i.min,max:i.max,step:i.step,value:i.modelValue,disabled:i.disabled,onInput:e[0]||(e[0]=(...s)=>n.onInput&&n.onInput(...s))},null,44,D4t),i.tooltip?(D(),U("output",{key:0,class:"bimdata-slider-tooltip",style:Se({left:r.tooltipPosition})},X(i.modelValue),5)):be("",!0)])}const S4t=W(b4t,[["render",N4t],["__scopeId","data-v-de9cce2c"]]);function k4t(t,e,{rowSelectionUpdateEffect:i=()=>{},rowSelectionToggleEffect:o=()=>{},fullSelectionToggleEffect:r=()=>{}}={}){const n=Fe(new Map);return Zt(t,()=>{n.value=new Map(t.value.filter(({key:s})=>e.value.has(s)).map(({key:s,data:a})=>[s,a]))},{immediate:!0}),Zt(e,()=>{n.value=e.value},{immediate:!0}),Zt(n,()=>{i(n.value)}),{rowSelection:n,toggleRowSelection:({key:s,data:a})=>{const l=()=>n.value.has(s);l()?n.value.delete(s):n.value.set(s,a),n.value=new Map([...n.value.entries()]),o(l(),{key:s,data:a})},toggleFullSelection:()=>{const s=()=>n.value.size===t.value.length;s()?n.value=new Map:n.value=new Map(t.value.map(({key:a,data:l})=>[a,l])),r(s())}}}const T4t={components:{BIMDataButton:bn,BIMDataIconCaret:w9},props:{sortOrder:{type:String,required:!0,validator:t=>["asc","desc"].includes(t)},index:{type:Number,required:!0},active:{type:Boolean,required:!0}},setup(t,{emit:e}){return{toggleActive:()=>{e("set-active",t.index)}}}};function E4t(t,e,i,o,r,n){const s=z("BIMDataIconCaret"),a=z("BIMDataButton");return D(),U("span",{class:Ne([i.sortOrder==="asc"?"asc":"desc","m-l-6"]),onMousedown:e[0]||(e[0]=bt(()=>{},["prevent"]))},[O(a,{color:"primary",ghost:"",rounded:"",icon:"",class:Ne({active:i.active}),onClick:o.toggleActive},{default:J(()=>[O(s,{rotate:i.sortOrder==="desc"?180:0,size:"xxxs",fill:"",color:"default"},null,8,["rotate"])]),_:1},8,["class","onClick"])],34)}const z4t=W(T4t,[["render",E4t],["__scopeId","data-v-cddfddda"]]),P4t={components:{BIMDataCheckbox:BC},props:{column:{type:Object,required:!0},columnData:{type:Array,required:!0},filters:{type:Array,required:!0}},emits:["filter"],setup(t,{emit:e}){const i=t.column,o=At(()=>{const r=t.columnData.filter(n=>n!==null);return[...new Set(r.flatMap(n=>(Array.isArray(n)||(n=[n]),i!=null&&i.filterKey?n.map(s=>s[i?.filterKey]):n)))]});return{columnElements:At(()=>o.value.map(r=>({data:r,checked:t.filters.includes(r)}))),toggle:(r,n)=>{const s=new Set(t.filters);n?s.add(r):s.delete(r),e("filter",[...s])}}}},B4t={class:"column-filters p-12"},O4t={key:0,class:"column-filters__element flex align-center"};function R4t(t,e,i,o,r,n){const s=z("BIMDataCheckbox");return D(),U("div",B4t,[o.columnElements.length===0?(D(),U("div",O4t,[Ct(t.$slots,"column-filter-empty",{},void 0,!0)])):be("",!0),(D(!0),U(Mt,null,ii(o.columnElements,a=>(D(),U("div",{key:a.data,class:"column-filters__element flex align-center"},[O(s,{text:a.data,modelValue:a.checked,"onUpdate:modelValue":l=>o.toggle(a.data,l)},null,8,["text","modelValue","onUpdate:modelValue"])]))),128))])}const U4t=W(P4t,[["render",R4t],["__scopeId","data-v-27deb2d0"]]),F4t={components:{BIMDataButton:bn,BIMDataCheckbox:BC,BIMDataIconCaret:w9,BIMDataIconChevron:Wl,ColumnSorting:z4t,ColumnFilters:U4t},directives:{clickaway:Uc},props:{columns:{type:Array,required:!0},rows:{type:Array,required:!0},rowKey:{type:String},rowHeight:{type:Number,default:50},selectable:{type:Boolean,default:!1},selection:{type:Map,default:()=>new Map},paginated:{type:Boolean,default:!1},perPage:{type:Number,default:10},placeholder:{type:String,default:""},tableWidth:{type:String,default:"100%"},tableLayout:{type:String,default:"auto"},canDragOverRow:{type:Function,default:()=>!1}},emits:["update:selection","selection-changed","row-selected","row-deselected","all-selected","all-deselected","row-drop"],setup(t,{emit:e}){const i=At(()=>t.rows.map((P,S)=>({key:P[t.rowKey]??S,data:P}))),{rowSelection:o,toggleRowSelection:r,toggleFullSelection:n}=k4t(i,At(()=>t.selection),{rowSelectionUpdateEffect:P=>{e("update:selection",P),e("selection-changed",Array.from(P.values()))},rowSelectionToggleEffect:(P,{data:S})=>{e(P?"row-selected":"row-deselected",S)},fullSelectionToggleEffect:P=>{e(P?"all-selected":"all-deselected")}}),s=P=>{t.selectable&&r(P)},a=()=>{t.selectable&&n()},l=(P,S)=>{t.canDragOverRow(P)&&(e("row-drop",{data:P,event:S}),c.value=null)},c=Fe(null),u=(P,S,k)=>{t.canDragOverRow(S)&&(k.preventDefault(),c.value=P)},d=()=>{c.value=null},h=Fe(null),p=P=>{h.value===P.id?h.value=null:h.value=P.id},g=P=>{P.id===h.value&&(h.value=null)},A=Cn({column:null,order:null}),M=Fe([]),f=At(()=>{if(A.column){const P=A.order!=="desc"?1:-1;if(A.column.sortFunction){const S=(k,R)=>A.column.sortFunction(k.data,R.data)*P;return Array.from(i.value).sort(S)}else return Array.from(i.value).sort((S,k)=>S.data[A.column.id]<k.data[A.column.id]?P:S.data[A.column.id]>k.data[A.column.id]?-P:0)}return M.value.length>0?Array.from(i.value).filter(P=>P.data[M.value[0].id]===M.value[0].text):i.value}),L=P=>{A.column===P?A.order=A.order==="asc"?"desc":"asc":(A.column=P,A.order=P.defaultSortOrder??"asc")},w=Fe([]),m=At(()=>f.value.filter(P=>w.value.every(S=>{const k=t.columns.find(Y=>Y.id===S.columnKey),R=P.data[S.columnKey];if(R!==null)return Array.isArray(R)?R.some(Y=>S.columnFilters.includes(k.filterKey?Y[k.filterKey]:Y)):S.columnFilters.includes(k.filterKey?R[k.filterKey]:R)}))),C=(P,S)=>{w.value=w.value.filter(k=>k.columnKey!==P.id),S.length>0&&w.value.push({columnKey:P.id,columnFilters:S})},I=Fe([]),j=Fe(0),b=Fe(1),T=Fe(t.perPage);return Zt([m,()=>t.perPage],()=>{j.value=0},{immediate:!0}),Zt([m,()=>t.paginated,()=>t.perPage,j],([P,S,k,R])=>{const Y=P.map(Z=>Z.key);if(S){const Z=k*R,G=Z+k;I.value=Y.slice(Z,G),b.value=Z+1,T.value=Math.min(G,P.length)}else I.value=Y},{immediate:!0}),{activeHeadercolumnKey:null,computedRows:i,paginatedRows:I,pageIndex:j,pageIndexEnd:T,pageIndexStart:b,rowSelection:o,dragOveredRowKey:c,displayedColumnFilterId:h,filteringColumns:M,filters:w,sortObject:A,awayFromFilter:g,onDrop:l,onDragover:u,onDragleave:d,toggleAll:a,toggleRow:s,toggleSorting:L,updateFilters:C,toggleFiltersMenu:p,displayedRows:m}}},Y4t={class:"bimdata-table"},Q4t={key:0,class:"cell-checkbox"},G4t={style:{display:"inline-flex","align-items":"center"}},H4t={key:1},V4t={key:"head-row-1"},Z4t=["colspan"],J4t=["onDrop","onDragover"],W4t={key:0,class:"cell-checkbox"},K4t={class:"bimdata-table__page-nav__text"};function _4t(t,e,i,o,r,n){const s=z("BIMDataCheckbox"),a=z("ColumnSorting"),l=z("BIMDataIconCaret"),c=z("BIMDataButton"),u=z("ColumnFilters"),d=z("BIMDataIconChevron"),h=Yi("clickaway");return D(),U("div",Y4t,[v("div",{class:"bimdata-table__container",style:Se({height:i.paginated?`${(i.perPage+1)*i.rowHeight}px`:void 0})},[v("table",{style:Se({width:i.tableWidth,tableLayout:i.tableLayout})},[v("thead",null,[v("tr",{key:"head-row-0",style:Se({height:`${i.rowHeight}px`})},[i.selectable?(D(),U("th",Q4t,[O(s,{disabled:i.rows.length===0,modelValue:i.rows.length>0&&o.rowSelection.size===i.rows.length,"onUpdate:modelValue":o.toggleAll},null,8,["disabled","modelValue","onUpdate:modelValue"])])):be("",!0),(D(!0),U(Mt,null,ii(i.columns,(p,g)=>{var A;return D(),U("th",{key:`head-row-0-col-${g}`,style:Se({width:p.width||"auto",textAlign:p.align||"left"})},[v("div",G4t,[dt(X(p.id?p.label||p.id:p)+" ",1),Ct(t.$slots,"column-header-right",{},void 0,!0),p.sortable?(D(),oe(a,{key:0,sortOrder:!o.sortObject.order||o.sortObject.column!==p?"asc":o.sortObject.order,index:g,active:g===o.activeHeadercolumnKey,onClick:M=>o.toggleSorting(p),onSetActive:e[0]||(e[0]=M=>o.activeHeadercolumnKey=M)},null,8,["sortOrder","index","active","onClick"])):be("",!0),p.filter?Tt((D(),U("div",H4t,[O(c,{color:"primary",ghost:"",rounded:"",icon:"",class:Ne(["m-l-6",{active:o.filters.some(M=>M.columnKey===p.id)}]),onClick:M=>o.toggleFiltersMenu(p)},{default:J(()=>[O(l,{size:"xxxs",fill:"",color:"default"})]),_:2},1032,["class","onClick"]),o.displayedColumnFilterId===p.id?(D(),oe(u,{key:0,column:p,columnData:o.computedRows.map(M=>M.data[p.id]),filters:((A=o.filters.find(M=>M.columnKey===p.id))==null?void 0:A.columnFilters)??[],onFilter:M=>o.updateFilters(p,M)},{"column-filter-empty":J(()=>[Ct(t.$slots,"column-filter-empty",{},void 0,!0)]),_:2},1032,["column","columnData","filters","onFilter"])):be("",!0)])),[[h,()=>o.awayFromFilter(p)]]):be("",!0)])],4)}),128))],4),v("tr",V4t,[v("th",{class:"cell-sub-header",colspan:i.columns.length+i.selectable},[Ct(t.$slots,"sub-header",{},void 0,!0)],8,Z4t)])]),v("tbody",{onDragleave:e[1]||(e[1]=(...p)=>o.onDragleave&&o.onDragleave(...p))},[(D(!0),U(Mt,null,ii(o.displayedRows,({key:p,data:g})=>Tt((D(),U("tr",{key:`body-row-${p}`,style:Se({height:`${i.rowHeight}px`}),onDrop:A=>o.onDrop(g,A),onDragover:A=>o.onDragover(p,g,A),class:Ne({"bimdata-table__row--drag-overed":o.dragOveredRowKey===p})},[i.selectable?(D(),U("td",W4t,[O(s,{modelValue:o.rowSelection.has(p),"onUpdate:modelValue":A=>o.toggleRow({key:p,data:g})},null,8,["modelValue","onUpdate:modelValue"])])):be("",!0),(D(!0),U(Mt,null,ii(i.columns,(A,M)=>(D(),U("td",{key:`body-row-${p}-col-${M}`,style:Se({width:A.width||"auto",textAlign:A.align||"left"})},[Ct(t.$slots,`cell-${A.id}`,{row:g},()=>[dt(X(g[A.id]||g[M]),1)],!0)],4))),128))],46,J4t)),[[Ai,o.paginatedRows.includes(p)]])),128))],32)],4),i.rows.length===0?(D(),U("div",{key:0,class:"bimdata-table__container__placeholder",style:Se({height:`calc(100% - ${i.rowHeight}px)`})},[Ct(t.$slots,"placeholder",{},()=>[dt(X(i.placeholder),1)],!0)],4)):be("",!0)],4),i.paginated?(D(),U("div",{key:0,class:"bimdata-table__page-nav",style:Se({visibility:o.displayedRows.length>i.perPage?"visible":"hidden"})},[O(c,{ghost:"",rounded:"",icon:"",disabled:o.pageIndexStart===1,onClick:e[2]||(e[2]=p=>o.pageIndex--)},{default:J(()=>[O(d,{size:"s",rotate:180})]),_:1},8,["disabled"]),v("span",K4t,X(`${o.pageIndexStart} - ${o.pageIndexEnd} / ${o.displayedRows.length}`),1),O(c,{ghost:"",rounded:"",icon:"",disabled:o.pageIndexEnd===o.displayedRows.length,onClick:e[3]||(e[3]=p=>o.pageIndex++)},{default:J(()=>[O(d,{size:"s"})]),_:1},8,["disabled"])],4)):be("",!0)])}const q4t=W(F4t,[["render",_4t],["__scopeId","data-v-272e2173"]]),X4t={components:{BIMDataButton:bn,BIMDataIconChevron:Wl},props:{width:{type:[String,Number],default:"100%"},height:{type:[String,Number],default:"32px"},tabs:{type:Array,required:!0},tabSize:{type:[String,Number],default:"120px"},selected:{type:[String,Number]}},emits:["tab-click","tab-selected"],data(){return{scrollValues:[],displayIndex:0,activeTab:{}}},computed:{containerWidth(){return Number.isNaN(+this.width)?this.width:`${this.width}px`},containerHeight(){return Number.isNaN(+this.height)?this.height:`${this.height}px`},tabWidth(){return Number.isNaN(+this.tabSize)?this.tabSize:`${this.tabSize}px`}},watch:{tabs(){this.$nextTick(()=>this._setScrollValues())},tabSize(){this.$nextTick(()=>this._setScrollValues())},selected(t){this._setSelected(t)}},mounted(){this.resizeObserver=new ResizeObserver(()=>this._setScrollValues()),this.resizeObserver.observe(this.$refs.container),this._setScrollValues(),this._setSelected(this.selected)},beforeUnmount(){this.resizeObserver.disconnect()},beforeDestroy(){this.resizeObserver.disconnect()},methods:{prev(){this.displayIndex--,this.$refs.container.scrollTo(this.scrollValues[this.displayIndex],0)},next(){this.displayIndex++,this.$refs.container.scrollTo(this.scrollValues[this.displayIndex],0)},onTabClick(t){this.activeTab=t,this.$emit("tab-click",t),this.$emit("tab-selected",t)},_setSelected(t){if(typeof t=="number"&&t>=0&&t<this.tabs.length)this.activeTab=this.tabs[t],this.$emit("tab-selected",this.activeTab);else{const e=this.tabs.find(i=>i.id===t);e&&(this.activeTab=e,this.$emit("tab-selected",this.activeTab))}},_setScrollValues(){if(this.displayIndex=0,this.tabs.length>0){let t=this.$refs.container.offsetWidth,e=this.$refs.container.querySelector(".bimdata-tabs__container__tab").offsetWidth;Math.floor((this.tabs.length*e-t)*10/e)>0?this.scrollValues=[0].concat(this.tabs.map((i,o)=>(o+1)*e-t).filter(i=>i>0)):this.scrollValues=[]}}}},$4t=["onClick"];function eMt(t,e,i,o,r,n){const s=z("BIMDataIconChevron"),a=z("BIMDataButton");return D(),U("div",{class:"bimdata-tabs",style:Se({width:i.width})},[Tt(O(a,{disabled:r.displayIndex===0,onClick:n.prev},{default:J(()=>[O(s,{class:"fill-primary",size:"xxs",rotate:180})]),_:1},8,["disabled","onClick"]),[[Ai,r.scrollValues.length>1]]),v("ul",{ref:"container",class:"bimdata-tabs__container",style:Se({width:n.containerWidth,minHeight:n.containerHeight})},[(D(!0),U(Mt,null,ii(i.tabs,l=>(D(),U("li",{key:l.id,class:Ne(["bimdata-tabs__container__tab",{active:l.id===r.activeTab.id}]),style:Se({minWidth:n.tabWidth}),onClick:c=>n.onTabClick(l)},[Ct(t.$slots,"tab",{tab:l,active:l.id===r.activeTab.id},()=>[dt(X(l.label),1)],!0)],14,$4t))),128))],4),Tt(O(a,{disabled:r.displayIndex===r.scrollValues.length-1,onClick:n.next},{default:J(()=>[O(s,{class:"fill-primary",size:"xxs"})]),_:1},8,["disabled","onClick"]),[[Ai,r.scrollValues.length>1]])],4)}const tMt=W(X4t,[["render",eMt],["__scopeId","data-v-7da61e21"]]),iMt={model:{prop:"modelValue",event:"update:modelValue"},props:{name:{type:[String,Number],default:""},resizable:{type:Boolean,default:!0},modelValue:{type:[String,Number],default:null},placeholder:{type:String,default:null},label:{type:String,default:""},width:{type:[Number,String],default:"150px"},height:{type:[Number,String],default:"32px"},error:{type:Boolean,default:!1},success:{type:Boolean,default:!1},errorMessage:{type:String,default:""},successMessage:{type:String,default:""},fitContent:{type:Boolean,default:!1}},emits:["update:modelValue"],created(){this.$watch(()=>this.success&&this.error,t=>{if(t)throw new Error("Textarea state cannot be both success and error.")})},mounted(){this.fitContent&&this.handleFitContent()},methods:{focus(){this.$refs.textarea&&this.$refs.textarea.focus()},blur(){this.$refs.textarea&&this.$refs.textarea.blur()},handleFitContent(){this.$refs.textarea.style.height="auto",this.$refs.textarea.style.height=this.$refs.textarea.scrollHeight+"px"},onInput(t){this.$emit("update:modelValue",t.currentTarget.value),this.fitContent&&this.handleFitContent()}}},oMt=t=>(Jo("data-v-77c71958"),t=t(),Wo(),t),rMt=["name","id","value","placeholder"],sMt=["for"],nMt=oMt(()=>v("span",{class:"bar"},null,-1)),aMt={key:0,class:"error"},lMt={key:1,class:"success"};function cMt(t,e,i,o,r,n){return D(),U("div",{class:Ne(["bimdata-textarea",{"not-empty":i.modelValue!==null&&i.modelValue!==""||i.placeholder!==null,error:i.error,success:i.success}]),style:Se({"min-width":i.width,"min-height":i.height})},[v("textarea",ja({ref:"textarea",name:i.name,id:i.name,value:i.modelValue,placeholder:i.placeholder,style:`${i.resizable?"":"resize: none;"}`,onInput:e[0]||(e[0]=(...s)=>n.onInput&&n.onInput(...s))},t.$attrs),null,16,rMt),v("label",{for:i.name},X(i.label),9,sMt),nMt,i.error?(D(),U("span",aMt,X(i.errorMessage),1)):be("",!0),i.success?(D(),U("span",lMt,X(i.successMessage),1)):be("",!0)],6)}const uMt=W(iMt,[["render",cMt],["__scopeId","data-v-77c71958"]]),dMt={model:{prop:"modelValue",event:"update:modelValue"},props:{disabled:{type:Boolean,default:!1},modelValue:{type:Boolean,default:!1}},emits:["update:modelValue"],data(){return{uniqueId:null}},computed:{checkedValue:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}}},created(){this.uniqueId=Math.random().toString()}},hMt=t=>(Jo("data-v-ab3de434"),t=t(),Wo(),t),pMt=["for"],AMt=["disabled","id"],gMt=hMt(()=>v("span",{class:"toggle__switch"},null,-1));function MMt(t,e,i,o,r,n){return D(),U("label",{for:`bimdata-toggle-${r.uniqueId}`,class:Ne([{active:i.modelValue,disabled:i.disabled},"toggle__button"])},[Ct(t.$slots,"default",{},void 0,!0),Tt(v("input",{type:"checkbox",disabled:i.disabled,id:`bimdata-toggle-${r.uniqueId}`,"onUpdate:modelValue":e[0]||(e[0]=s=>n.checkedValue=s)},null,8,AMt),[[dw,n.checkedValue]]),gMt,Ct(t.$slots,"right",{},void 0,!0)],10,pMt)}const fMt=W(dMt,[["render",MMt],["__scopeId","data-v-ab3de434"]]),wMt={props:{text:{type:String,default:""},maxWidth:{type:String,default:"240px"},position:{type:String,default:"bottom",validator:t=>["top","right","bottom","left"].includes(t)},color:{type:String,default:"primary",validator:t=>["white","primary","secondary","granite-light","silver-light","success","warning","high"].includes(t)},disabled:{type:Boolean,default:!1},message:{type:String},className:{type:[String,Array]}},data(){return{width:null,height:null,parentHeight:null,hover:!1}},computed:{isDisplayed(){return!this.disabled&&this._text&&this.hover},_text(){return this.text||this.message},_className(){return[this.className].flat()}}},LMt={class:"bimdata-tooltip"};function mMt(t,e,i,o,r,n){return D(),U("div",LMt,[v("div",{class:"bimdata-tooltip__content",onMouseover:e[0]||(e[0]=s=>r.hover=!0),onMouseleave:e[1]||(e[1]=s=>r.hover=!1)},[Ct(t.$slots,"content",{},void 0,!0),Ct(t.$slots,"default",{},void 0,!0)],32),O($i,{name:"fade"},{default:J(()=>[Tt(v("div",{ref:"tooltipText",class:Ne(["bimdata-tooltip__tooltip",[`bimdata-tooltip__tooltip--${i.position}`,`bimdata-tooltip__tooltip--${i.color}`,...n._className]]),style:Se({maxWidth:i.maxWidth})},X(n._text),7),[[Ai,n.isDisplayed]])]),_:1})])}const yMt=W(wMt,[["render",mMt],["__scopeId","data-v-36856a43"]]);let j9,XG;XG={inject:["root"],props:{node:{type:Object,required:!0,validator:t=>Number.isFinite(t?.id)},depth:{type:Number,default:0},dragAndDrop:{type:Boolean,default:!1}},render(){const{node:t,depth:e,dragAndDrop:i,root:o}=this,r=o.state;return t.children.map(n=>_i(j9,{node:n,depth:e,dragAndDrop:i,key:n.id},()=>{var s,a,l;return(l=(a=o.$slots).node)==null?void 0:l.call(a,{node:n,depth:e,selected:n.id===r.selectedId,hovered:n.id===((s=r.hoveredNode)==null?void 0:s.id),ancestorSelected:r.hasAncestorSelected(n),dragAndDrop:i})}))}},j9={name:"Node",components:{NodeChildren:XG},inject:["root"],props:{node:{type:Object,required:!0},depth:{type:Number,default:0},dragAndDrop:{type:Boolean,default:!1}},setup(t){const e=Ut("state");let i=null;Er(t.node.visibleRef)?i=t.node.visibleRef:i=Fe(!0);let o=null;Er(t.node.expandedRef)?o=t.node.expandedRef:o=Fe(!1);const r=Fe(null);let n=null;const s=()=>{var h,p;if(!((h=t.node.children)!=null&&h.length)||!e.dragPosition||((p=e.hoveredNode)==null?void 0:p.id)!==t.node.id||o.value){clearTimeout(n),n=null;return}const g=e.getNodeDropPosition(t.node,r.value);if(g!=="center"&&g!=="bottom"){clearTimeout(n),n=null;return}n===null&&(n=setTimeout(()=>{o.value=!0,n=null},500))};Zt(()=>e.dragPosition&&e.hoveredNode,s);const a=()=>e.onNodeMouseEnter(t.node),l=h=>e.onNodeMouseDown(t.node,h),c=h=>{e.onNodeMouseMove(h),s()},u=At(()=>{var h;return!t.dragAndDrop||!e.dragPosition||((h=e.hoveredNode)==null?void 0:h.id)!==t.node.id?null:e.getNodeDropPosition(t.node,r.value)}),d=()=>e.onNodeMouseUp(t.node,r.value,o.value);return{state:e,nodeRef:r,expanded:o,visible:i,dropHelperPosition:u,hasAncestorSelected:e.hasAncestorSelected,onMouseEnter:a,onMouseDown:l,onMouseMove:c,onMouseUp:d}}};const vMt=j9,CMt={class:"bimdata-tree__node__content__element"};function IMt(t,e,i,o,r,n){var s,a;const l=z("BIMDataIcon"),c=z("NodeChildren");return D(),U(Mt,null,[Tt(v("div",{ref:"nodeRef",class:Ne(["bimdata-tree__node",{"bimdata-tree__node--selected":t.node.id===t.state.selectedId,"bimdata-tree__node--ancestor-selected":t.hasAncestorSelected(t.node),"bimdata-tree__node--highlighted":t.node.id===t.state.highlightedId}]),onMouseenter:e[2]||(e[2]=(...u)=>t.onMouseEnter&&t.onMouseEnter(...u)),onMousedown:e[3]||(e[3]=(...u)=>t.onMouseDown&&t.onMouseDown(...u)),onMousemove:e[4]||(e[4]=(...u)=>t.onMouseMove&&t.onMouseMove(...u)),onMouseup:e[5]||(e[5]=(...u)=>t.onMouseUp&&t.onMouseUp(...u))},[t.dropHelperPosition==="top"||t.dropHelperPosition==="bottom"?(D(),U("div",{key:0,class:"bimdata-tree__node__drop-helper",style:Se(`--drop-helper-top: ${t.dropHelperPosition==="top"?"0px":"30px"};`)},null,4)):be("",!0),v("div",{class:"bimdata-tree__node__content",style:Se(`padding-left: calc(var(--spacing-unit) * 2 * ${t.depth});`)},[v("div",{class:"bimdata-tree__node__content__arrow",onMousedown:e[1]||(e[1]=bt(()=>{},["stop"]))},[((s=t.node.children)==null?void 0:s.length)>0?(D(),U("div",{key:0,class:"bimdata-tree__node__content__arrow__content",onClick:e[0]||(e[0]=u=>t.expanded=!t.expanded)},[O(l,{name:"chevron",size:"xxxs",rotate:t.expanded?90:0},null,8,["rotate"])])):be("",!0)],32),v("div",CMt,[Ct(t.$slots,"default",{},()=>[dt(X(t.node.label),1)],!0)])],4)],34),[[Ai,t.visible]]),((a=t.node.children)==null?void 0:a.length)>0&&t.expanded?(D(),oe(c,{key:0,node:t.node,depth:t.depth+1,"drag-and-drop":t.dragAndDrop},null,8,["node","depth","drag-and-drop"])):be("",!0)],64)}const jMt=W(vMt,[["render",IMt],["__scopeId","data-v-77e5bb06"]]);function bMt(t,e){const i=Cn({selectedId:null,highlightedId:null,hoveredNode:null,trees:t.data,dragPosition:null});Zt(()=>t.selectedId,()=>{i.selectedId=t.selectedId??null}),Zt(()=>t.highlightedId,()=>{i.highlightedId=t.highlightedId??null}),Zt(()=>i.hoveredNode,()=>e("hover",i.hoveredNode));const o=or(null);Zt(()=>t.data,L=>{i.trees=L});const r=()=>{o.value=null,i.dragPosition=null},n=L=>{i.hoveredNode=L},s=(L,w)=>{w.stopPropagation(),e("click",L),o.value=L,window.addEventListener("mouseup",r,{once:!0})},a=L=>{if(!o.value)return;const{clientX:w,clientY:m}=L;i.dragPosition={x:w,y:m}},l=(L,w,m)=>{var C,I;if(!t.dragAndDrop||!i.dragPosition||((C=i.hoveredNode)==null?void 0:C.id)===((I=o.value)==null?void 0:I.id)||i.isDescendant(L,o.value))return;const j=h(L,w);let b=null,T=null;const P=p(o.value);switch(j){case"top":b=p(L),T=(b?.children??i.trees).findIndex(R=>R.id===L.id);break;case"bottom":L.children&&m?(b=L,T=0):(b=p(L),T=(b?.children??i.trees).findIndex(R=>R.id===L.id)+1);break;case"center":b=L,T=0;break}const S=b?.id===P?.id,k=(P?.children??i.trees).findIndex(R=>R.id===o.value.id);S&&(j==="top"||j==="bottom")&&k<T&&T--,!(S&&T===k)&&e("drop",{node:o.value,previousParent:P,parent:b,index:T,position:j})},c=()=>{i.hoveredNode=null},u=()=>{e("click",null)},d=()=>{if(!t.dragAndDrop||!i.dragPosition||i.trees.indexOf(o.value)===i.trees.length-1)return;const L=i.trees.includes(o.value);e("drop",{node:o.value,parent:null,index:L?i.trees.length-1:i.trees.length,previousParent:p(o.value)})};i.onNodeMouseEnter=n,i.onNodeMouseDown=s,i.onNodeMouseMove=a,i.onNodeMouseUp=l,i.onNodesMouseLeave=c,i.onTreeMouseDown=u,i.onTreeMouseUp=d;const h=(L,w)=>{const{y:m}=i.dragPosition,{top:C,height:I}=w.getBoundingClientRect();return L.children?m<C+I/3?"top":m>C+I*2/3?"bottom":"center":m<C+I/2?"top":"bottom"},p=(L,w=i.trees)=>{var m;for(const C of w)if((m=C.children)!=null&&m.length){if(C.children.some(j=>j.id===L.id))return C;const I=p(L,C.children);if(I)return I}},g=(L,w=i.trees)=>{var m;for(const C of w)if(C.id===L.id||(m=C.children)!=null&&m.length&&g(L,C.children))return!0;return!1},A=(L,w=i.trees)=>{var m;const C=[];for(const I of w)I.id!==L.id&&(m=I.children)!=null&&m.length&&g(L,I.children)&&C.push(I,...A(L,I.children));return C},M=L=>i.selectedId===null?!1:A(L).some(w=>w.id===i.selectedId),f=(L,w)=>{var m;return((m=w?.children)==null?void 0:m.some(C=>C.id===L.id||f(L,C)))??!1};return i.getNodeDropPosition=h,i.getParent=p,i.getAncestors=A,i.hasAncestorSelected=M,i.isDescendant=f,i}const xMt={components:{Node:jMt},provide(){return{root:this}},props:{data:{type:Array,required:!0,validator:t=>{if(!Array.isArray(t))return!1;const e=new Set;for(const i of t){if(!Number.isFinite(i?.id)||i.children&&!Array.isArray(i.children))return!1;e.add(i.id)}return e.size===t.length}},selectedId:{type:Number,default:null},highlightedId:{type:Number,default:null},dragAndDrop:{type:Boolean,default:!1}},emits:["drop","click","hover"],setup(t,{emit:e}){const i=bMt(t,e);tn("state",i);const o=()=>i.onNodesMouseLeave(),r=()=>i.onTreeMouseDown(),n=Fe(!1),s=()=>{n.value=!0},a=()=>{n.value=!1},l=()=>i.onTreeMouseUp(),c=At(()=>t.dragAndDrop&&n.value&&i.dragPosition!==null&&i.hoveredNode===null);return{state:i,dropHelperDisplayed:c,onMouseEnter:s,onMouseLeave:a,onNodesMouseLeave:o,onTreeMouseDown:r,onMouseUp:l}}},DMt={key:0,class:"bimdata-tree__drop-helper"};function NMt(t,e,i,o,r,n){const s=z("Node");return D(),U("div",{class:"bimdata-tree",onMousedown:e[1]||(e[1]=(...a)=>o.onTreeMouseDown&&o.onTreeMouseDown(...a)),onMouseenter:e[2]||(e[2]=(...a)=>o.onMouseEnter&&o.onMouseEnter(...a)),onMouseleave:e[3]||(e[3]=(...a)=>o.onMouseLeave&&o.onMouseLeave(...a)),onMouseup:e[4]||(e[4]=bt((...a)=>o.onMouseUp&&o.onMouseUp(...a),["self"]))},[v("div",{class:"bimdata-tree__nodes",onMouseleave:e[0]||(e[0]=(...a)=>o.onNodesMouseLeave&&o.onNodesMouseLeave(...a))},[(D(!0),U(Mt,null,ii(i.data,a=>(D(),oe(s,{key:a.id,node:a,"drag-and-drop":i.dragAndDrop},{default:J(()=>{var l;return[Ct(t.$slots,"node",{node:a,depth:0,selected:a.id===o.state.selectedId,hovered:a.id===((l=o.state.hoveredNode)==null?void 0:l.id),ancestorSelected:o.state.hasAncestorSelected(a)},void 0,!0)]}),_:2},1032,["node","drag-and-drop"]))),128))],32),o.dropHelperDisplayed?(D(),U("div",DMt)):be("",!0)],32)}const SMt=W(xMt,[["render",NMt],["__scopeId","data-v-8a1ab21a"]]),kMt=Object.freeze(Object.defineProperty({__proto__:null,BIMDataBigSpinner:Vxe,BIMDataButton:bn,BIMDataCard:p9,BIMDataCarousel:LDe,BIMDataCheckbox:BC,BIMDataColorSelector:NDe,BIMDataDatePicker:e$e,BIMDataDropdownList:x$e,BIMDataDropdownMenu:O$e,BIMDataFileIcon:est,BIMDataIcon:ost,BIMDataIconAddFile:p8e,BIMDataIconAddFolder:m8e,BIMDataIconAddGavel:T8e,BIMDataIconAddList:Z8e,BIMDataIconAddUser:$8e,BIMDataIconAlphabeticalAscending:dNe,BIMDataIconAlphabeticalDescending:CNe,BIMDataIconAlphabeticalSort:ENe,BIMDataIconAlt:YNe,BIMDataIconAngle:$Ne,BIMDataIconApi:n9e,BIMDataIconApp:g9e,BIMDataIconArchive:v9e,BIMDataIconArrow:N9e,BIMDataIconAttach:B9e,BIMDataIconBcf:G9e,BIMDataIconBcfPolychrome:hKe,BIMDataIconBuilding:_9e,BIMDataIconBurgerMenu:n6e,BIMDataIconCalendar:p6e,BIMDataIconCaliper:m6e,BIMDataIconCamera:x6e,BIMDataIconCancelCamera:O6e,BIMDataIconCaret:w9,BIMDataIconCheck:_6e,BIMDataIconChevron:Wl,BIMDataIconClassificationCategory:aSe,BIMDataIconClassificationElement:LSe,BIMDataIconClick:bSe,BIMDataIconClose:RC,BIMDataIconCloud:USe,BIMDataIconColor:ZSe,BIMDataIconComment:v7e,BIMDataIconCreateSpace:i7e,BIMDataIconCreateWindowPolychrome:vKe,BIMDataIconCreateZone:g7e,BIMDataIconDateAscending:T7e,BIMDataIconDateDescending:G7e,BIMDataIconDefault:UG,BIMDataIconDelete:g9,BIMDataIconDeniedFile:nke,BIMDataIconDetach:pke,BIMDataIconDistance:Cke,BIMDataIconDocInfoPolychrome:PKe,BIMDataIconDoubleChevron:L9,BIMDataIconDown:Bke,BIMDataIconDownload:Gke,BIMDataIconDrag:nTe,BIMDataIconEdit:pTe,BIMDataIconEllipsis:FG,BIMDataIconExpanded:ETe,BIMDataIconExplosion:FTe,BIMDataIconExport:KTe,BIMDataIconExportIfc:nEe,BIMDataIconExportXlsx:wEe,BIMDataIconFailed:jEe,BIMDataIconFileDwgPolychrome:JKe,BIMDataIconFileDxfPolychrome:s_e,BIMDataIconFileIfcPolychrome:f_e,BIMDataIconFileImagePolychrome:N_e,BIMDataIconFileJpegPolychrome:Q_e,BIMDataIconFilePdfPolychrome:X_e,BIMDataIconFilePlanPolychrome:lqe,BIMDataIconFilePngPolychrome:mqe,BIMDataIconFilePointCloudPolychrome:Sqe,BIMDataIconFilterList:TEe,BIMDataIconFitView:YEe,BIMDataIconFolder:WEe,BIMDataIconFolderMove:oze,BIMDataIconFolderOpen:uze,BIMDataIconFolderPolychrome:Uqe,BIMDataIconFullscreen:fze,BIMDataIconGavel:Ize,BIMDataIconGrid:Fze,BIMDataIconGroup:qze,BIMDataIconHide:rPe,BIMDataIconHome:hPe,BIMDataIconIfc:LPe,BIMDataIconIfcFile:bPe,BIMDataIconImport:EPe,BIMDataIconInProgressFile:ABe,BIMDataIconIndexAscending:GPe,BIMDataIconIndexDescending:qPe,BIMDataIconInformation:rBe,BIMDataIconInvitation:yBe,BIMDataIconIsolate:DBe,BIMDataIconKey:PBe,BIMDataIconLeft:QBe,BIMDataIconLinkedDocument:KBe,BIMDataIconList:lOe,BIMDataIconListManage:gOe,BIMDataIconLocation:vOe,BIMDataIconLock:NOe,BIMDataIconLogout:BOe,BIMDataIconMeasure:GOe,BIMDataIconMinus:_Oe,BIMDataIconModel3D:oRe,BIMDataIconNamingConvention:hRe,BIMDataIconNavigation:LRe,BIMDataIconOrganization:bRe,BIMDataIconParameters:ERe,BIMDataIconPathway:FRe,BIMDataIconPieGraph:_Re,BIMDataIconPipette:oUe,BIMDataIconPlan:uUe,BIMDataIconPlus:fUe,BIMDataIconPreview:IUe,BIMDataIconProject:kUe,BIMDataIconQuickSelect:FUe,BIMDataIconReadonlyFolder:JUe,BIMDataIconRedo:eFe,BIMDataIconReduced:dFe,BIMDataIconRefresh:wFe,BIMDataIconRemoveModel:NFe,BIMDataIconReprocessIfc:UFe,BIMDataIconReset:ZFe,BIMDataIconRestore:tYe,BIMDataIconRight:lYe,BIMDataIconRotate:wYe,BIMDataIconRules:jYe,BIMDataIconSandglass:TYe,BIMDataIconSave:UYe,BIMDataIconScreenConfig:WYe,BIMDataIconScreenshot:gQe,BIMDataIconSearch:m9,BIMDataIconSection:DQe,BIMDataIconSetAsModel:YQe,BIMDataIconSettings:WQe,BIMDataIconShare:tGe,BIMDataIconShow:lGe,BIMDataIconShowSelected:fGe,BIMDataIconSmartview:bGe,BIMDataIconSocotec:EGe,BIMDataIconSpace:GGe,BIMDataIconSpace2:qGe,BIMDataIconSpacing:cHe,BIMDataIconSplit:CHe,BIMDataIconStorey:SHe,BIMDataIconStructure:OHe,BIMDataIconStructurePolychrome:Wqe,BIMDataIconSuccess:HHe,BIMDataIconSurface:iVe,BIMDataIconSwap:dVe,BIMDataIconSynchro2D:NVe,BIMDataIconSystem:BVe,BIMDataIconTag:VVe,BIMDataIconTranslate:iZe,BIMDataIconTree:cZe,BIMDataIconUnarchive:MZe,BIMDataIconUndo:CZe,BIMDataIconUnion:SZe,BIMDataIconUp:OZe,BIMDataIconUpload:_Ze,BIMDataIconUser:oJe,BIMDataIconValidate:uJe,BIMDataIconValidatedFile:mJe,BIMDataIconVersioning:kJe,BIMDataIconVideocam:RJe,BIMDataIconViewer2DPolychrome:oXe,BIMDataIconViewer3DPolychrome:pXe,BIMDataIconVisa:JJe,BIMDataIconWarning:eWe,BIMDataIconWindowBottom:aWe,BIMDataIconWindowLeft:yWe,BIMDataIconWindowRight:DWe,BIMDataIconWindowTop:PWe,BIMDataIconWindowed:AWe,BIMDataIconZone:ZWe,BIMDataIconZone2:oKe,BIMDataIllustration:p1t,BIMDataInput:C1t,BIMDataInputOutlined:P1t,BIMDataLoading:G1t,BIMDataMenu:q1t,BIMDataMenuInline:tgt,BIMDataMultiplePieChart:lgt,BIMDataPaginatedList:GG,BIMDataPieSpinner:Agt,BIMDataRadio:vgt,BIMDataResponsiveGrid:jgt,BIMDataSafeZoneInline:Ngt,BIMDataSearch:zgt,BIMDataSearchAutocomplete:qgt,BIMDataSelect:w4t,BIMDataSimplePieChart:j4t,BIMDataSlider:S4t,BIMDataSpinner:QG,BIMDataTable:q4t,BIMDataTabs:tMt,BIMDataText:KG,BIMDataTextarea:uMt,BIMDataTextbox:UC,BIMDataToggle:fMt,BIMDataTooltip:yMt,BIMDataTree:SMt},Symbol.toStringTag,{value:"Module"})),$G=Object.freeze({bisque:16770244,orange:16753920,coral:16744272,red:16711680,maroon:8388608,khaki:15787660,tan:13808780,peru:13468991,sienna:10506797,brown:10824234,greenyellow:11403055,yellowgreen:10145074,olive:8421376,green:32768,darkgreen:25600,lightcyan:14745599,skyblue:8900331,steelblue:4620980,blue:255,darkblue:139,plum:14524637,hotpink:16738740,magenta:16711935,purple:8388736,indigo:4915330,ghostwhite:16316671,silver:12632256,darkgray:11119017,grey:8421504,black:0}),TMt=["bisque","khaki","greenyellow","lightcyan","plum","ghostwhite"];function Ph(){const t=Object.entries($G).filter(([i])=>!TMt.includes(i)),e=Math.floor(Math.random()*t.length);return t[e][1]}const EMt={props:{message:{type:String,required:!0},active:{type:Boolean,default:!0}}},zMt={key:0,class:"bimdata-empty"},PMt={class:"m-t-6"};function BMt(t,e,i,o,r,n){return i.active?(D(),U("div",zMt,[Ct(t.$slots,"default"),v("p",PMt,X(i.message),1),Ct(t.$slots,"footer")])):be("",!0)}const Op=W(EMt,[["render",BMt]]),OMt=Object.entries($G).reduce((t,e,i)=>(i%5===0?t.push([e]):t[t.length-1].push(e),t),[]),RMt={props:{selectedColor:{type:Number,default:null}},emits:["color-select"],data(){return{colorLines:OMt}},methods:{toColorString(t){return`#${t.toString(16).padStart(6,0)}`}}},UMt=["title","onClick"];function FMt(t,e,i,o,r,n){const s=z("BIMDataCard");return D(),oe(s,{class:"color-selector"},{content:J(()=>[(D(!0),U(Mt,null,ii(r.colorLines,(a,l)=>(D(),U("div",{key:`colorLine${l}`,class:"color-selector__line"},[(D(!0),U(Mt,null,ii(a,([c,u],d)=>(D(),U("div",{key:`colorElement${d}ofColorLine${l}`,class:Ne(["color-selector__line__element",{selected:u===i.selectedColor}]),style:Se(`background-color: ${n.toColorString(u)}`),title:c,onClick:h=>t.$emit("color-select",{name:c,value:u})},null,14,UMt))),128))]))),128))]),_:1})}const b9=W(RMt,[["render",FMt]]),YMt="data:image/gif;base64,R0lGODlhxAF6AfcAAAEBAQAAAAMDAxwdHwAAAiotPg8PEAUFBdbW1vHy9/39/P38/vv7+gEAAERFSp6gqSEkMiwuOiotOPr7/01RXc7W2oeIizw8PNXY2D5BTf////T09KzAwqu+v//+//Pz8/Xz9LLFxef3+a+/wvXx9u7x+Y+RlPTz9v///PHy8/3+/vL086nAwa/Cw+X29i0tLUFBQi8vL+rr7i4uM3JycicqNS0uN3Jzc21tbd3d3aurq62trUVIVX19fnBwcHx8fBgWGtPT04yRnPPy9yUlJeXt9ikpKU1PV+Tk6tXa3AwMDCIiIoKCgszN1Hp6egoKChcXF0JGThIUHFZVWSotQPf5/O7v8ggICVhZX4uLjKCgoLCwsebn552dniguQR8fIIqMlRITEzI0PiYsPenp6gMLC6mqtPX19fX19uzs7Li4ubu7u7S0tMjIyZeZoCkvOff7/1JSUlNZXiYuPDMzM87Pz+Tk5JeXl97g3ywsLMDAwE9PT0tLSzc3N66trX19faenp+3t7bS0tb29vWRkZPDy7/Hx8UZHSSctQMPExN7h4SguQiEtRHV1dYSEhJGRkRgYGFhYWDo6OiguP9LS0mZmZvz+/15fX/Pz8f3/+6WlpaKnsjc9S36Ci+Xl5eTi4oGGlSoxQ/L29+Tm5j9GVVNcZmVlZHh6g9bc4sHGy+Lm6vD09ygvPnN1ft7h6hcWFauxt3Bzfd7h5Oz2+PLy9mVka2lqcsPL0lpdaHx6gmtwfl9nbW9vbwgICLS4xWxvdPTy8bCyu8DAxF9ibL7AzDQ4SJCaoF1lY2hoae719I6XohoaGlVVVS40QlVWVYmSn8rU1RMYFwgJBm5zf+n298DNzrfGx7fLzMvf32Rse7zMzsTS08DU1eHu8KStq7C/v9vv79To6M/j5KK4uExcXVBgZsbW2jxFSKLCx6CwtMjc3Y+ps5CfpUlhZ7S1sS83Sr/R3bTN6qnQ+zI6TjU8UzlBXTtEWzpCWTlCWzpDXDtCXDZCWra0sgAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/ilPcHRpbWl6ZWQgd2l0aCBodHRwczovL2V6Z2lmLmNvbS9vcHRpbWl6ZQAh+QQECgD/ACwAAAAAxAF6AQAI/wA3CBxIsKDBgwgTKlzIsKHDhwzzQCoEAqLFixgzatzIsaPHjxdpBBhJsqTJkyZ3gFzJsqXLjxYCAPrwsqbNmzhz6iQoEqXPnzJ3Ch1KNCEeJZGKKl3KtKnHnkCjklTptKrVjpKWXN3KtatQqFKjUvVKtqxAJgH0mF3Ltu1CsGF/jnVLV6meAI3O1N3LlyvcuCjn9h1s0wAdwogT7/wLOKXixyv7fIFMuXJHxo2nWt4cUgnnz6ATYs4cNLTpg3cEJDrNmvPozIJbh75bSbbtx68bx77NucEy3sD75ga8OzjlGE+4GF/Odnjc4swT3xCQQ2/061udh4WOva+mAEG6i/93ql0q9/F01wBQg7490fJi3SNuAyALTfn4bcIHej4/WQwNEOLfgC3tJxeBewEgyX0INqiRgT7156BVSkw04YUWQRgYhmvRAUAgHIb4FmkR3qbciSimqOKKLLbo4oswtngJeNaJaCNPJG7YmiQ59ujjjyTVceOQA2l4koRt3bHHkkwmRdASAdAhyZRUVmnllVhmqeWWXHaJ5RMBpEEkkUY69hiURzKYB3WsfREmGmPeWGZJSLK1hBEpWPfdFjWueWKNnLlJUZw2zqnZmXjqWZqYBgDgKJCQRhoViISKaOhIda71RaICpYbSpneGKuqopJZq6qmopqqqqYcAWumFly7/mtimhgxEXx644holg6/2ClmsmZpFq1ENHObrsbhFGmxZjUrp7LNSAgAJIaZQa2212F6r7bbcduvtt+CGK+645JZr7rnopqvuuuy26+61Hj7q47JkHSDpvfjmq+++/Pbr778AA0mvV43KG/DBCCes8MIMN3zwwF0V7PDEFFds8cUY6wsxVxJn7PHHIIcsMsIbb9XxyCinrPLKLB+q2MktxyzzzDT/W/JVMNes884898wfZDn7LPTQRK98M4UGF6300kxXfHRVYTQt9dRUB/y0U1EnXfXWXHdNHNBehy322Gk+pgTZaKe99dVNHRLD23DHLffcdNdt991456333nz3/+3334AHLvjghBdueOGQKIvs4ow/pXjjkEf+0HSQsi355ZY+jvnmmwPL+eeXew766IyLTvrpvZqO+upjqs7665lXDvvssQtM++2wak2i5bj3HprrvgePHvDCF38d8cYnHxzyyjcvG/POR/+77qTxLv31ZUGP/fbJys7995tpD/74dYlP/vlrmY/++l2pz/77VbkP//xKyU///Ytpjv/+5OnP//9FsR8A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itIuK4Fw6ModMEegmQG/8O5dzNihSr9Ci9ptTLmywsdML1q0zLkzYIlIMXsebVk0UNOkSVtNy3Zoyr41UaeerbY13deyX+amTXk179/AgwsfTry48ePIkytfzry58+fQo0ufTr269etDsWvXu3u796aav4v/v9p9vPme4c+rX8++vfv3VevCny9TK/37LrVakoq//0jf/gVYlYAEFmjggQgmqOCCDDbo4IMQRijhhBRWaOGFGGao4YYW4lYeh955CBqI7IlIYnsmnrjeY7CpqJ6HLq7owYwebBajeTus4dqN5oUyUDFC8HgeFZuVskCNQn7XFVtBtpWkkhY16eSTId5G5XlHXjleBmdp+d2MXoYp5phklmnmmWimqeaabLbp5ptwxinnnHTWaeedeOap55589unnn4AGKuighBZq6KGIJqrooow26uifKtj32aNiRUrQBRFI8IamnG7qaaegfipqqKSOamqplzaKCKV5seLFIml5/0HpJLSyihattdqq66689urrr8AGK+ywxBbr0CTGTtUVRpsmS9MYVSREzVvOhsRpKRzN4WO1O9HxF2GwcmutCYoBNplBnJwrbkeWwFGFL8syJB9h64bE5Y+chHuQqzwg4mq9Jb0Krrr0QgbwwQgnrLBxsi7s8MPedbIqxLpRbPHFGGes8cYcd+zxxyCHTFMAInNEMsklm5zyQwCsnFEABAzAzgDo5EXLzSfgTAuhBBBQDjvj1DyABePQDFbOSONs6C7klHEMOuuE5bJAAACwhxgCCLDLNNIYtEEyNoUQbAMDVF32AWgDggkmZQcVyABcwM1q1QJ4EAfdalO1gq1VH/8JQ89qf7AFdzorvWfLMHswwwR/B+5HyxuwVnjOfPbcswcELH6BFikIHoAjZ3gNgorWQFXNANssZzkBC5QdAwNbkBHI46CTCQ3qqWtjtHBkN9AA5nZpYAcXtEfe9hnIh85h5F8371XzySM/XO+/mw0AHQoQ//nXx4Pg/YnRh/8B9NzzfrYGdLvugSBDUy6k9/DHL//3vPsOgALp94w9DD10eeP8AISfcRB3Nsth7w5vSxL5Fki+6VENf4TJ3JEmaIcnMfCCxiPO/QizgxgEoAt64EUAcDA8U7RsamVTwOsa8YPracARiOGCIUyIws9A7gUf1MP2PlDDEy7lBq7DgAA4mMDDHhKQLnTY4B+KWMODsIEiOupfEwdyQqP4YQtZaN8UqVbFO0RFC0PbohMDMbsqipGK/mtiQAAAIfkEBQoAAwAsKACwAMgAegAACP8ABwgcSLCgwYMIEypcyLChw4cQI0qcKFCFxYsWKWrcyLGjx48gCWLEGLKkyZMoUyYceVGly5cwYzJkmVGmzZs4S9LMybOnz4c7fwodKpSmCqJIk8o0o0bkUaVQo5b0MvDdM6lYs3Kc9GzCUQqWnmodS1bhnAGZUFzNVLatW4Jn065l+7ZuWbpoNdjd21aBXr6AsZ7z8DewYaUaCh9ezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw4v/H0++vPnz6NOrX8++vfv38OPLn0+/vv37+PPr38+/v///AAYoGgEEtGOMQCyg84ZA3QwgRX+7IIgOC6B0MEALA1mIXwMFdcCOAIDQcsJAVuQXgEBvWHLEMQ5qIuIWBDhywiobBiAAAImdI0BFGwgko4k7orgADAGE2OMAP9ZI4AIN0MHABVqISCKQSzYgQAxVCEKGFX7EOMR+NgpEIJafcDFlQWecIV4I17SpDTfcJGQjjgTa6KQnO1QUX5xwvnnhnHQCiiUbATCBJgiIfpfmCow26uijKwCqAACABoAlDH+kkN4GnHYKqaOSVmqnAncEsqmnqKY6p5iWWprYq3Ycg2leqrR2alAMO7xQZCK8AIBDmaYAMOunxBaEZSM/AHBsoVwYEuywxEIq6aQBKKCrJnow+0ElJ9pHabVz3vCIshgIwMQHG3B7342iWktnprJ6K2qRfq3BrH7zFurHFlncy9+3Nt6BAAJaFOpfpS4GsgMASYIJqJFdOiLgABB3GyC9/gUEACH5BAUKAAMALCgAsADIAHgAAAj/AAcIHEiwoMGDCBMqXMiwocOHECNKnChQg8WLFilq3Mixo8ePIAlixBiypMmTKFMmHHlRpcuXMGMyZJlRps2bOEvSzMmzp8+HO38KHSrUg9GjRokqXSpzxxqRHphKnWoy1MBiQqhq3cqRyoAFUUuB5Uq2LMMIXzVkRWG2rVuCaFEoWMv2rV2zddPe3dt2LN+/WjMkBUxY6uDCiBMrXsy4sePHkCNLnky5suXLmDNr3sy5s+fPoEOLHk26tOnTqFOrXs26tevXsGPLnk27tu3buHPr3s27t+/fwIMLH068uPHjyJMrX868ufPn0KNLn069uvXr2LNr3869u/fv4MOL/x9Pvrz58+jTq1/Pvr379/Djy59Pv779+/jz69/Pv79/0AAEQI5ALBQ4EDgiCdSNCAyK4F4AAg7gjQjXjNNJgSGMo2EHHBKozYcPAoADOQJYMss4AmiyAgh+AOBIITLc8MWBScDHxwAlvgAHDFrAuIWLH6xSCwAyrGLkKiEKoKQGAMTAwBZkpLDFgaYEkAYmWGKSZANEQuikHWT8+CImVV55RpbtcQkhAB6sSYcGnugQABNn4mjmBhtsyWaAXmrAxpx44jjfmhAySaiTMDgRSAp24hmod9ZcI2k1A2yDEKF7YqrjHVwY0qij5kFT6TYfRoqpApj2CWaZjua5XauwnpsZ6wanehmAkwrkCichJbbqnazAzopnrTHsEEMAXewgYBt28BqIeCBEK+201IJwqpONPHIrqsjkQEaZ0FYrbrSnohqABsfecYOihlQ5nrDC1grhFl3cukMjMLobLrywpromnXSwia+r9PnrYh0W8YLvfQbfkcgWfwAKgn89IlDvH4zmhykghgTS4ov6bRzkx/9JeGaLJSMbpH4BAQAh+QQFCgADACwoALAAyAB4AAAI/wAHCBxIsKDBgwgTKlzIsKHDhxAjSpwoUIXFixYpatzIsaPHjyAJYsQYsqTJkyhTJhx5UaXLlzBjMmSZUabNmzhL0szJs6fPhzt/Ch0qlKYKokiTyjSjRuRRpVCjlvQy8N0zqVizcpz0bMJRCpaeah1LVuGcAZlQXM1Utq1bgmfTrmX7tm5Zumg12N3bVoFevoCxnkMbuHBUDX8NK17MuLHjx5AjS55MubLly5gza97MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx48iTK1/OvLnz59CjS59Ovbr169iza9/Ovbv37+DDi/8fT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+///8AihaAAO0IhM4s19AhkCrjREPYAALUBwAAxwywzjqiwGGMN9Z8I8g4HhJkzXwDVliGM5nQkYk7aRiyw4JpEKRIEvMdQoc0AqgAwAsK2JHGFgE4ksIAhBAgQzIkEpTjhDFo4IkOQZ6B34ATNgCAAlQ2KUiUU1I5oAZV7rgADD8EckIlRp6g5gnwefklAAJZ2eQdXJyZJhp40vemm01+wgWagZQXwjWEasMNNwztyaeTpriH6KGGdujmlQPGEECTfvl1SQAxhnfGBiuEKuqopK4wKZYvtGHpI43E4Ucbm5J9QR6otNaaQqmnztmFmJfUkUOss9oqbK2nYomDBjcysQMeaRTZqXjDRrvBqQMyUceuqeZQCKDBluqtqZNWOwiynGJgSCXmffttuAN24StigJj7XwCa4JFIDw3gwCyAgLR4BwCNmMnvrTtwOW+/HxTMxAcBNnwQqFs4DCN/AQEAIfkEBQoAAwAsJQCwAMsAdwAACP8ABwgcSLCgwYMIEypcyLChw4cQI0qcWFCDxYsWKWrcyLGjx48gD2LEGLKkyZMoUzIceVGly5cwYz5kmVGmzZs4UdLMybOnT4k7fwodSnSAh6NIjxZdylTmjjUElTadSrVkqIHFhFTdypUjFaMeBpRaELar2bMLI4DVigKt27cE1aJQwLYt3Lto7YLFy9ct2b6AuWaQGrhwU8KGEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw4v/H0++vPnz6NOrX8++vfv38OPLn0+/vv37sAPoB9BAv8Az+BnE34BhGNAAIIF8EKCAAuhnQRdK8BFAGwsSBAAgjxRohQcB7JGIJJpUOEB/bGgg4YYTKnABE09coiB+/UWiARsAyKBBADlo8MWFNYIAYwNLkGEIjjdysQABPyyQBxkBvmLAF48UyQABKVQhAB4YLBngGhAaQRNZXdChikHUUPMefwjMSCRGQi5QyzHBfFNQNWfq90IaGrTZiAY4KHmUJFjIIMMNQdZ3QBwKXASDiR70QRYUNyRwQiVRGRVfGCVatOgFjS6QYZIfVNLjBmeUKh8RbVi0Z599tJEHkiRsyEApWKReul+qiZIliwNTwCrrmrXWx4BFBFDZiwm+iopnqQDSB8AFfLygRB/83SGAI6UqO541AlVD5zYQ7ReAEzcwocm1H8jKHjQDbOOuNtZYI+68A2qCQQ5+jJuteKT26y+zAJdKL70IfpAvtr+mwW/A//478LwFb6Hvr+OBYPHFGGcMwsPiRjzxrAtrLPLGHOvnMcL/hdzwyiWbTOrBwVa88swtB3ByzCIKdPMGOVe0Acw89zzQy/oKHdXPRRv9X9BKG+RHgAEBACH5BAUKAAMALDAAEAHAABAAAAi9ABVY0iBwgMGDCBMqXMiwocOHECNKnEixosWLBE0NEMTi4LWLIEOKHEmypMmDGgZcGpCmEUtFJ2PKnEmzZkIPZ16xtMmzp8+fDlMiBAG0qNGjJzXQGfCiwU6kUKNKbaiAJYxIAJ5O3cr1aAAAIA48yvqhq9mzPgUEQMu2rcQQ1+Jq48bNrd27JOvSnbsRr9+7ZzasGEy4sOEVfxO7Fcy4cYrDiiOfdUzZseTLWytr3oC5M9TDoAl7Hl00dOiAACH5BAUKAAAALN4AGAESAAgAAAgyAAEItDawGoBtAhMqXKgQ2sFt2iJa20Cx4pmLGDNq3GixI4iPIEOKHEmypMeTKFN6DAgAIfkEBQoABQAsJQBsAHsB1AAACP8ANwgcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYFxbYyLGjx48gQ4ocSbKkyZMoQWZcybKly5cwY15MSbOmzZs4acrcybOnz58+cwodSrSoSKBIIda5c4fSh6RQo2I0SrWqVZQRdQDaytVPIjtPpVZ0FABA2TViB7bp2rUOprBn0ia9SrduXYh9yurdG2BJJT1w5TZ8sReHXEB8+X651CauYKB2I0seCtFs4sSH8DweXDgwVFOXEz9yvJnn5NOosT4MHRpBaYWX9m6RC5r1Xqevd6bezftj5cKRDhm5vCRQbtJoBgqykOUr7b1xGvlwlhhSmuMxe2vn/busdYKAlvD/3YMdee7aZ+HisFzWU/mX24WeiX+ye1+DOQjv5TLw0aVIhuVQyQtEwOBaf8HlsUQeh+DQmFqVAGhKDgXd8R8hOxQkoIRxbXhJgE+pcaFTQRDSBxEv8KGFZwjCEIMkEiKDg4OwyVYQJPvhZ8EedBjhYxyjJaRIFjz6SAeQxlV4oUCDRNJjH4w51oaJKEbyIEX04TRfliTZ911gOQjAXhaOLWOZIHnYmEYj7IkW1iNj3shekgJFspdAZOl14AZ76MVcm2Y5cR14A9gWgGEJoRdAhgR9MWeFBgDq3WzmPQKFpOkRRIeeTojZpiaB5MkXqFhymZIf71W0FxQI5aVXHmGZ/2nWK59uoIOhizLJHqxqtblnIJ7et4GoAWAwUJ/esQYIaWHiiiiLGyjKaKw5DsSmoZQ6th62cMXwamhhIMPalRGZai5VXiLExqpJynrZsncEi2kYhgjkqJ7W1ipQs2VJgme1fOIq7FNPrMrHFW6al69e0wYMsCDz8qWZrgLz95S3ArOGTKnndpxTugi1Oai7esVx8Fc7BOpWCoHUEUa1hOzVxUD3ltyrZUESa2ydoukBQ5uAfYBAsHdQW1aU0PJcshM0wICjmvbuZYRbGGTRwF4W0Lwq1VZ3FvWqWvgRac/6zcqxx2jrtJperIb86AYkG6DGW3T6QWFBh7ytiddpjP8N89s6H7u11mdSPPAZnXqncEGKYnoooZZ98Yl6Uj81NNsWP2XBrmFhbHaH8hqA2+V6sSxR2qinBDKLfitBxtdlzby4Z9e2t+/Vigt9GVrAvrqw7Upn+q+flntanLZvJ2poHisSxATfoOcYr80EYYD7wJ4XS1Av7K0c18/4np76+F2unTvrb7t7/OKJ+MfHBScCfMFtw17myAZt8B148AGYLhBixDsDvwJQtA3kx3cLaVx1nIM8hhkkTfiykwMLIi/CAQ929CJNJbo3O4WQ74MhWV1BBsEuEMAtcup6mW3cE5fpleV+fttWAPzVBajtz2EXtJXMjNavg0FNeX7aggz/z8c/BgoOX5IAmAUB8LoNZC9zJ/zc77QnPhBacSMiJIgPzUIHCxrhIOtyXPgEGCwDvUoN+5Hg4W6IrBymLIAGtM0XGSKt20FHi/RDDvjM4pRNjXGJ9XKiEiF4uGgp8SFXTGQW7TjBKBbyYmBjQ5OUuDWbsUcLKnzcFHeGw/6BZ4eww0wTEwg1LZSQfw2DZAR/KJBTPlFTmHPeIR2SyCsuMg3zQ6EXDZI/6g0vh+IqmQPz1q8fslGJb4xdCy1Dh0YIB0C8a0gdGfnCBlazesH6Tu00ebPzvdKCGdzkRGppxSz6bDyNQuAncaZBJVKiNTq8zN1+ScVOBiaZAAjSFvlA/6eITPMpQzTAoGoYyylGIi562BUUeXFHVeaQkOGMiw9m2RBygtBLWWDOgKrDwrioj5cNDZXI5KSY4olSlmNsoyeVA8rYQIcPcbgEE3SAG1I2spVQk5cR1oCAKenLEwfYWk8Dmq1vYpBxFGWIRT9oH1yR6wwfNUjo4pDJP36ACInhRfRGVSEO8u+eoEyoGLkJROF9T6H0ZM0FCBIzXPHTMUZ1ZEQRl1SNLHV8TVXrxNJJxCmypqP/A9S0XHrIY5ZunWYJUgpu4CybmvUM+KznpQwFFr6yZhmVDSUUIYqciVqVlndNHV4MBYNB9HOXB6EqoEz02dYBgJOkk6I4n6JSsP8GcA06FQ+gvHeQDd7UoblyjBpPCibCEheQln1FZ71artCiTimOiC5zpqsJI4LxBjPKFi8r4SIYzU0H0mHCaW3FNB84YVngCa8Tnio0JvCCBveTUnkL6Lz3/uFufutiWBCwx+AihBLuvUF8R6jeX+GPCe/7EROsO0IEP4kPC2aREN8ru7Do4QfZRU4d5hvI5joXbakKMUt/+zw4ingzH07biUMMwKPRCQFl8++KBZNiEM+4PL0ETowfeWOp1NhjPS4PVp0aZBr/+FxFxk4cbMMHTibZx0c215OP0wYLmOJ9F4Bpc5I25Z9EWcpdDrOYZfJlU435zGjOSJm5lOY2uxn/ImvO0pvnTOeDxJk+dc5zne8cHz372c183s6fB33mQGuH0IjusqF7k+hGF3nR3HG0pFcM6d1MOiyaiFAj5lkaJ3yoeR1Mc6VT8+ea4ud6f4BKT6FImi0U1M+jRk2R0fSFWqN3cX5QrV4uIQipmngnibhE3JDWTclxuc2xPk2Q2/prPIbmBoGJU09UmtUOv7OveU72ZG6cY+g5W1mkyeStZeIqMZJKd/0itLYlM+P+ettwK+QhG3iSiDYtxt2YZWQfQo3sddtlxbh99kFIVgn3qIFWcMxlABjskm1uDN6v1be6/X2XE0OsX8YV1AgrN0Ve4dDU/82shgCb2uR1koGe/3rrsdFM8YqLOKE7rV+zu3bNrQIPPXs9SLkBEE0cCjQhxCyLqbdYz6AGIA4rF3XLr1JkODV7uL1O7oPiZYB8A53jBFPnQRKXbpMS0VEG8MHEl16Vpr975wYOOs/5rSF9+TGHIEXrZB87KLaznOxlDzLNyZp1q0I96Uj1XWxVPjtmjHXAk8Z73nu8d41v75DGBfVDBphPtEsT3JcWiOLRpXdpP/6wbAVlRPZesF0DvpNsI1PmN7B5o5i92SMN/W/NpxhWl/UyhJd064vy+poPRAmQJxpFLs4X1TNkx2rveuJ3T5nON7tm9USlqhJjWjqilQs7l3Gjmd98xnt+IEnUS//QwJ9HiQRU+UIyeg7VbopLc18+zvc9/xSL0882hPKsNEgYXUyQgHPR/e+nJfHHd2fgdPwXWL4UEUv2LVp3EAR1gPDmL6f3ZgEogN7XbPUGNcNROBLhfzMUWwTUQfi0PvR0UBMIaBVoEyuGB6FjP3ClGERnFrbHGYWzTcb2X4K1FuHHTsuXgmrzci3IURAnKVE3euxxCHSjfgDQAzWCKzeoez74gyFGQk6IUgI3EbolPNvkOkIyZI4DBU7maFEohakCgqFhgpj2dmdEEdaTgHKVc1vnhWBTdz04hiaRZ0vBHIBgYBOBATnAaQOBBwgAiAqBAVuQUVmgCXxYh3ZYPqv/94il0Yj1AYmUaGSS6IiVmIlQcYkloYmeOBecOBKfOIpBEYpHQYqomB2mGEKp2IotsYqs6IqyOBOw6BuzeItnU4tYhIu8CGe62BG9GIwV9YscIYzGmBDEWIzHuIwEkYy7yIzM6IwFAI3QKI3UGI3OeI3LaI3aaIzc2I3B+I3gyIviOI63WI7mKIvomI6tuI7siIru+I6jGI/y6In0WI+ZeI/4SIn6uI+P2I/+mHkAGZCMqIsESYoDeZDbl40KaY8M2ZD5+JAQyY8SOZH/WJEWKZAYmZEFWYsGEAdzw5EAmIzhJwk9J5KIxo3bYiAdhpJ/Jo4rOYMuOWfliAASVHAz/6ln63hOAyBeOUln8agDm2IE5/aTSpeMC3EHjnIJhGiUiraRBuFDqOKUYwaQW/AyMDBKVPlkA4kHqkVfW/loUJkQOoAjmRGWYomUEZEDqlWEaElpY5mUkUJ/bxliCalhwId0dSlid/lAAOBxJ7iXkBGXDkEDfTF+gpkbfemAL0OXifkYi3kQbYBVTGh3j1mKarkS8+N4lykXkZkQefEsnSkWn3l1aDiaUVGaphmYqLkSqqk8udeamEmMMhEbsSmbukGYFwEaLImbPfGaC9Epp+mbqpiZtUmAxPmKupkRB2N8yekSwMkZ8/ac0LmcGXFADEedFRGd9/cyvKWdFsGd3f/5hOC5ndbJEimzVqxZngMhnoW5hOxpnsYJFE6DmPGJSOfZEi4zAPdZRbQZFYhxCetZnu4JEXaSnf1pZ/n5ElUXhgmKEAWqFE8wnA+qoPP5GSFomewZoRHRI4qgoQS6oDCBWwJaoRAqojCxZOxloqyHoi8xNHPEos3ooi+xOZIno1G2F1h0aJvhKHBooikWGujFo4/haiUqoy36Ye+ieYxWGt5SfTiqpEtqK01aGkqgX1EaWspicEtoaa9hJ0VZoVKaTVj5BGuwN/EVa2QkgVlKTuPRJ43RAG1QBw1gJuKVbEnqlmK6VIMjAMbiSa9FBBujbVuinm3qpkejARYzASr/UAWuASXg0A27UAaRKgKWSg2YmqmzsKnJwKmr8KkDakKh6prPiKQ7YZhWwTY/gwDA2EQQ9g0hAKuyag20Wg22ug3QkKtJsKuoIAu+qpVBthEAcJskUKwncKzIKqqm6k8AUBWipwG+8QI4uUGj8DrV+qu8qqu4equ12gEj4K2x2q3cMK7qUK7icK7hUKnd4ALseqnuqqmeCqryGp7TaFeCNpqoehWapAEaAAMKsFb7hgZAAG2GRIedOq/x+q7vmq4Miw3mag7jeg0SG64sULEcQLHawK0VsLG9qgjYKgMtKT4A8HDIiGedma9XAQmuUYz+um9Wo3HUqqxSwR924LF//+iH2pqx3Tqr3yqu5Pqw6Kqu4HCKCYuwIDqqRyuzSssS0lgTzVoAieABGgBtWmWShFGZMbu077Gw6xqp6OqwEBuxOoux4Oqz2sqrHzteida0NFF+HgCyh6CMd6i1dFu32KEIA8CSNputObuzZYuxPwu0Ddu1XKuwRbsCiJu4Scq242MWykgABIAGB2ACBJCmpZqSUHuwmGqLheu1DfuwYjuxLdCzpGu2HNuxNSuTjGtFApBl3pIXwmq5hKo7jTCz17q3HLut3Eq2o2u6gsuwQmu4hysKilu89Hq5b2aYl+GsT7uE5mVKPtlyi5u0QNG5nwu2YRu6vOu7p4u6qgCsnv/hEUibZsqbGPqaWH64EdG7bkm6dohGs4LIt327vWa7Eb8bvJybsPnbY+XLF8z7tCrhb4tbr1CGvJYpitQbr63quV8LumNLv93KEd2btmq7Yv2ro5LhB8WoeD1oty5xu/Kru377txJrv4F7ruLbrsI7vPPaiScqrBhcAI4bGVuyurznaO5ajNcLuvY7wqWrDSY8wR9rwO+ZVR1xMDSMd0ogWnTTxP1GxPoJwkkQxCJMqxfrrRsRqxLcJTAsJhuxDizgEQDMdIr3JfWojNghAsA4EubQET78EehQsQVwDF6MLhtMdh9gwyBWExTBWGEQDbWWB248x2S8o3iMRno8aiv/0MUBkMUF0AxlsAvkUBZld8dLl8eJrMgMhRkpRweFPI14FxeZXGkrcMGULMOQO8N2bMh4XEOjvGieZSifXMNkV2+vbGixzBp0UcO0THGifMu4nDFWwcuhzKTAfGe5bBvDbMnH3MyGRsx4bL/OTJvMfMlkMM2/CM14jMnYXIva3M3gfBU+cGjVHM7mTBTjzGjlfM7sfBPpzB3r3M7yjBLvfBoAvAXznM+syxH4rM/+nDr3/M8CjTYBPdAGjWQfoMGsfNAMHWly29AQnRpDpb7CGtEWLRnme9EabRd1qgZr4NFRu9EiTRREwDIPPdIoTRmXm9Is3bYljckG0dIyPYkTGloQM33TqtOeOL3TJfECC83TQF3R8RzUBx0QACH5BAUKAAMALCQAdQB8AasAAAj/AAcIHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Lhho8ePIEOKHEmypMmTHFGqXMmypcuXMGHuENgxps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cq1q9evYMOKHUu2rNmzaNOqXcu2rdu3cOPKnUu3rt27ePPq3cu3r9+/gAMLHky4sOHDiBMrXsy4sePHkCNLnky5suXLmDNr3sy5s+fPoEOLHk26tOnTqFOrXs26tevXsGPLPvxhQ83ZuEGesZ27t8faagL4Ho5xAxviyJMrX868ufPn0KNLn069uvXr2LNr3869u/fv0G3X/waP23YOAORn80afPrbtNcLby59Pv779+/jz69/Pv7///wAGKOCABBZo4IEIJqjgggw26OCDEEYo4YQUVmjhhRhmqOGGHHbo4YcghijiiCSWaOKJKKao4oostujiizDGKOOMNNZo44045qjjjjz26OOPQAYp5JBEFmnkkUgmqeSSTDbp5JNQRinllFRWaeWVWGap5ZZcdunll2CGKeaYZJZp5plopqnmmmy26V0DDRgEAggD0ekmSXDKaecAe975UZ4DwAnonH6WBKigcfLZZ6EiIYoeAICMF+eijGrkaAANRGrcpJX+iSmmdOwBqQvi+NGAI5R2WtGngu5xDKTafP9jKqqpqipRfAe8EoYReZQBhjeyvpEFn7ZidEWoA9TBRQBtVANANEaMY8I4IQzAwjfWtlBtsRAZoEegGARKwgLM0mEBAEysR9Ao3D4EQCWKKjpBEB5c0Aq645oibzLJtNvQMjAIp4EHCxDMxcBx/HHqGQIFEIh4t/mLkABZqHCwBo0MgMMCfQx8QRYLN7yvxAq9O7DHHKd8BhFdCHzbCjCvQPJB7EGCgAIowzABHQpkwYcmAsRLU8wzK0REIgTfgHG9idABCCA0bRnz1FRPbRJ6beBccCB4wPADHjMRq2XVZBNt6NBoACBACgcoKxCqUkMs99woCXDBITEY8IQAAtw8vEXUY88tOG8nqf1ooJHYUUidcZdN90qGD3BHCmA6TnbdgQ7EXpjXCMRNQuHYNB7gYH4+0DXbCsTBRwEBACH5BAUKAAUALCQACAFtASgAAAj/AAMIHCiwgMGDGzYgPMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKPFiwYcKFI1OqXMmypcuXMGO6JEjQ4EmZOHPq3Mmzp8+UNAfaVPizqNGjSJMq1Rg0ACCiARwRXUq1qtWrWD02fWow6tSsYMOKHYs06NMNfrySXcu2rduRZhOmlfr1rd27eNs22BugD5+B6ayU2EGAbqUAaRIqXsy4sePHkCNLnuwYorRPlBlTzBw5r+elfPtG6guqQ5EEWwQYRsy5tevXryVimg2sNojbkDfDxg3is++joQdA4kOnDJhtstItAQWu264yzUVIn06t+qzr2LOvEsX9w27e3sHH/w4p/rv58+h5/7Z7xW+AOmQI1Nl2QEqNccbGfQsxokP//9YEWM2A0BRYQRKoICiLKguSIUMghYSX3m4ilTfhCRheqKGFva2nlwF6KAAABh4QgOGIdFgggE21XIGEgy/GqIiCBxpIoID8+acjjtr0yM2P5qgjpDhEhmNkdEhSZ92S2m3n5JOTLdFADhLSYuWVG2aYXkYcdumlhR4aNVAlGjjowZkMBKHBBU4AwMQZJxBiIpZ0JtPknUp209yRRWIzZJA+XpMjBywUSuiggdpYY4INwmhIClWu0Nhckdb5ZaWYapnZSJd26mWYRQWwDAxTaoDmAmSYGkcPQx0GIQmwxv9KmWzpcWHrjDnQqOiNiALIY6Lk7NInn0kyaSyeUFqawLJDoKFplp6eB2pPA2XhARdnNuIBDgv0cSYMWbgJqauylgvtuce6oC6SfPpZoAm7dLANr73u9+st8yrKqCsMPiiYssw+iy660/oEADKnwtDtwmgQ0YVXaJAr8MAUz2qTSZIC3C+uutoYqL0gh5wooO4Oq+e6eaaLbLLNtuyyuRNXnLHMA99wEQACQYLAAt96oDAdGjzChybiRjxnzOdmpTHLK6u8brsl50tvvSLfqC/H/f4b8NYwIx0tzV/L3BERiWSrAS8+J0IHIIBcbJd3OoU92VDnnczvvoviO3XV9/7/WTKxdqfcNNeEd+012CvIhHMbCpyKB7h4EPZmwSvJjXh3TA/O7rB/Si0o1S3kmMrIeTcqo9YvG740nBQrLhADE6BBgAAfHAAfSpRvNPPul7Pu++8DI5Tp0hvjnffoH/P9OZAk/w04yoJrnrmzqR++Ag0PzU6RABccMoMBTwggwM5buJ27Rryn3/v66q9e/fRNbx4188mHrrzVpZseeOHvI81LU404RgAmgrOuGCQSdjBE+QpwhvNxqn3siyAELVcxuzWoYx7DkchERzq/mUxP2TjA7AjQkHYwpClbgRTuHPiRCUrwhTB0H/ykJz/O0a9+h9LPA9ihDFB0Ah2GIgkKjXEmFAYKj4VIfAkFYwi8JlasEWFYxhKI8AI6MKQD6DNJErdYuSUyMYINKaBBnlGAA3DxjGjMy+9o0JRziM8gfUijHOcoljXWhCQnpKMe98jHPvrxj4AMpCDzEpq9DPKQiIRJIRuQyEY68pGQjKQkJ0nJSlrykpjMpCY3yclOevKToEwKAA6ywFCaknIBAQAh+QQFCgAFACwkABABbAEgAAAI/wADCBxIcCCgDyv8BGBSCE0lAjJOSJy4oaLFixgzatzIsaPHj8BCigTG54mdMyBBqFzJsqXLlx8LyJxJs6bNmzhz6tzJs6fPn0CDCh1qs6AAgylSKGToECLFlFCjSp06UiQ/mVRhat26kajXr2DDih1LFidBSeeOAkhn5cTSig/TZJ3Lte7WsXTz6t3rsqzfv4DHEiR3TMAFE9/avj0Tl69juzDxPp5MuW7gy5gz5wQw2Ji3dOhYYBM3roaJcOB+RQPnorWI17CpyZ49q7btVbhz66bFu/eKpL+BBx9OXLhxx0Sc+n7KvLnz55WjQ8aoubr1nw04L4t27kUZUOu4Xf/r8Ax0iHHmv7VQP8Ka+/fVtsmHVqF+kvt4FMnaz4VMxEBtLVfcgAQWmNcWAmSRgIDQNeigdBBCdd2EFMrEGWd0lFQHFwC0UccBy8RQiA4AOIIJYwDI1ZCKSIzCHyr42UdffDTCt14H7OVoo3g8mqPOj+IEidqQrHXjWmy30ZbkbruBiFCEUE4HZYVUZnahAYl4EAAGGgTAW4d0rLFYY3kpiaSRRRIpJJA+zqfNmzbeiGN7OtboZowxqqInGYSEocdxUQYqJV9VFopZAJVY4p8KjFaBQCYwaEKiiSiyGKVNg2q054t4zuhmnOjVed54pPbI5mhrpnnkmay2aqCgr8L/mqmslgX1BQxbatCoAmToGocfOywEl5e0FrvkbQNAoGqaa55qaqmjsjDntDvecuep+Z2kLYCAGustSrOGK25LQSXIq66NaIDDAn0soMEFegTLRE4PjvutgTK5E2F/Ln6Sbad1fAqqqPA9i22qRK567MLJNOywKLEOIfHEC1JcL7j3boAZMrr6yu7HZxCBwVs4XZyxYzNdcvLDLLvKbLPO9gitnASnYqenGOT54qLcWkyCzyavXBFmkAShgCXvTgCD0hpksYcnMjFl6NQ62Wu1Rzs95l+/nMoo8MzUhl3qtQcv6/LZEDNZ8doXz8SgbzcRNJNRARAhDKM3qLCuJInk/3GQH1hpTPXgNV1tOMZCM4w2mi+jGjOPA4tdLc46u7Lpf2zXmzUtM9EAgE03YIFhSQW1McGueEjCTA4f0CQ44UMRGFjitKNh+7eXw6i711+/pyOdIUBrcNlmt6aLWjkdc1MVpxMAkbkfbBE47ETJDljt2GevOMOND+l4mzKDLe2cm7BjzDOgdNJJqOmYdcEhMRjwBGePDE39/fi7fuL+/NNK1pOIg9DyIkbAiDkhWUZ4QYbOERp0yIQcRbkSUlqHlfxZcHD9y6CsLhi7AnqwQL+Q4FFYYKES+uR1BTgDB1fIwha6ECwXqcmVDqEWPvTkcxV02wt3yMMe8jCGcXPeQEl8SMQiGvGISEyiEpfIxCY68YlQjKIUp0jFKlrxiljMoha3yMUuevGLYAyjGMdIxjKa8YxoTKMa18jGNrrxjTecCeDgSMc63iQgACH5BAUKAAUALCQAEAFsARgAAAj/AAMIHEhwIKANG/wEcISwQIA0CCNKnEixosWLGDNq3IiJzxM7ZziCGEmy5ImTKE2KXMmypcuXMGPKnEkDQMGbOHMeTLiw4cOZQIOudAeAj9CUKo8qXcq0qdOMNXNKJUD15k6FTAqhcSgDqdenYDVeKBAorNmzaNOmjTq1LcGrPbcS6PpVrV2eyO7qTcq3796/R9m6xSkpigCq6T7QworQ1E/AfsESmZuAluW6mDND3sy5843BUsntKmrs20nGZxxDVNwZ7RYCjypf1ky7duvbuJV+Bo2zHDt0LIBjw5aumYlw4GINQN7NRXPn0EVIn05tVvVk17Fr376qO/fZtiPP/zxAJGTu8+LRA97NuyAPduvGyddWrQOo+fK/tdDPv7+1/wDWV8020BRoYAVJJKigIrI0qMooZNBlRQrg6RWJAImwpt6G6XEIFnvt2QRJNEREU0YW42i1w4nYqWYeRRFCaIeDqCyo4IEE0hdggB34t18IQO44IDc5qmPkcEiKwxw4Sz4XXXbWzZKEALFEaeWV3mW5wpZcdvmdh2CGmRSIoNHhURtpYNiGACQmYwYAWZ3BFVhQUvckk00qmaQ5fBI5pI5C/tijjztakMWfONpYI40xluXloy9GKuakuAkGWoYAYKDBT5nGsAZqc1L6UqMyKtLJOVvYiCOiPBLq6jU6+v/Z55F75unknXViqeuuWso2xK++BhuepBUOa6xnNrVnCgoRKqDBswhocIEmoD4malDQCECWKLzm6u2deOpZa5GyAtrqoOj6lwqriSrqyoPwSigst/MWe+1Tlrb1BQwBRPvss6vtscOKcYZ6L1AxDGAIsRvG6/Ciqq7657npCipkubPWauutdnbc7ce9QkrhyGiUbPLJxyKV71SxeYKCBo3ALK2zF+ihQ1wGHyyTQzvpHDLI34K7pLh7SmwurBZXHCii7bpbqrwiR41yyimRKdAvcdh0gUdX/zszDArQ8SwRGFS7ms8xIXAF2GgzHCapNEZsNNIUj6D0xRjTSvTGuIr/kM1hgB+WDjoOiZYsJEE4+7UKfWiQxR6emN22TDC8QvLkbmNOL9BCh7s3rRgfzcHopAdXejrwPQNKJ6dMA1xw7Dg0EBHCqCAzDownksdBkmvukiMC+Ov78FRrmFaETBiRxwtmnoPq6+yQE7hNaNo+gQyKFIYHTwxtkDPxGzkUs/HgZ17+X1aX0QE770izi/Q3VbEAGlTRn8XCr3X//fkYFfDF5fwLILKSNRCuCeAQkiBgARFogCdQpWW9EyBG+LAtCVoQMiurigYH0wXFRPCCFOlCpkBIwrvILkQ6QcgHS4iQRDQgTuRjoQyVckIUWkWFOLPWDLlwgAru8IdHqaENEt+CQ/3pcIb82h4QlwgUIUolIAAh+QQFCgADACwkABABbQEZAAAI/wADCBxIcCCgDRv8BHCEsFKANAgjSpxIsaLFixgzatz4gc8TO2c4ghhJsqTIkyhTqlzJsqXLlxlpAChIs6bNAAcTLmz4EKbPnxsFAeADtKjRo0iTKuUo86ZTmzkVMtzgEOLSqysvDAiEtavXr2CXNn1K1iBCqTythl07cQsAZGzjyp1Ld2xZslF3Uu1Jly0RAjkS0Bp8orDhw4gT913MuDHPu2XzTq3q+KvbR4IJK95cubNntjcgRz6rl/LnqweIhDzNuvXi0KKfSk7rOmkkAYk+1N7Nuyvs2DdnYzLFF5Px48iTK9fNfLVz1hgONOpNvbpRu8CXvboCaegd0pOLL/8fT976F9XNratffxL7XToe65AJ0KZOAEgvknmTTi0ZIcCrBCjggARqZmBmCCbI2YIMNuhgCsw5tMVz7FVoIUU+ZKdHJg0goEFP9MXgDSyHGINBEo5ckIQiLLYoy4uqwDgKSGTUaKMMOFqRo4I8PujjjxRCGIQAWwV54ZHrZQicKSiQoYAGTzLgoSQmdICDN9Vs00Un2qTSZZbWeBnmmGSG8E0LZ6apZgdrtmnmm2Ve8+WcdHJj553mbJOnOnz2iY2f4gQq6KDhUHBOOIiCk6iijHbj6KOQutCfCJJSaumlmM6i6aacdurpp6CGWuCoB5ZqKpCnopqqqqxuxMtMkH3/AQN9UNZq1R477NdJMtTsIkCkok4qbKaVFgtso4smS+iyfzYL6J7Q6iltnXJ2mc4z41QbJ5ojcMDmt26GC2ecYJY7LTTopqtuBey2u+K7qMTroryuxGjvvfjeuKOOq7bq778Ai+ReAMhIMhMMhxCEmScoaDAdDhr0AeUFiaA1HABqladxhQhIA8PGGakVab71lkwvvCi7u+7K55q77cvdxiwzuDRza/O4L2tLLZ7P9uwss8oGjayxRBdN7NGUZiPA0kwLkA465AhAzjFNw9VwxFhLXMUSGFhMXMYgh00dDJCIbWS/pAar9tpsI+320HALDfTPPkfL884646w3C3z3/+13zXvrTecDp0xj+C/Z7IJO3wNQPRAkQUT58eQqZLGHJ16LhyRKjgjg4eZng36VVVzoOyONdsybw+oonnPI63tMnW22jTd9X24OL8CLCpIkksdBmYMt+kYD6BX68Mg39lvT46xzThnlyGH7TG0s4MH1gcgiiTN46BSe8MljNMAXEIZvvmdKwirQbQdfoD5BVVhPAAFoCJCFId6HZNr5GfFRJP8AfA1wBnKBQ8zAAE+Y38KCF0CMdAFjDYxgXNI3wPlZECe6YaAEKZKIBjDheBsMIVAoWEGCCGd/IkRIatKTwhaOsIQ1OaHmRDir7rnwhj8hIQwBIEPwbXAHANgQDgeH6JKB2SQgACH5BAUKAAUALCQAEAFtASAAAAj/AAsIHEiwoMGDCBMqXMiwocOHBDdInEix4gaIGDNq3Mixo8ePIEOKHEmyZESLKCWaXMmypcuXMGPKnKkwZUqaOHPq3MmzJ02bKH0KHUq0qFGeJ5IqXcr0xNGnUKNKnVqzqdWkVLNq3cpVJlCLXcOKHUvW4deKZdOqFRigrdsGAkH4aeBIYqW4Z0Ho3cu3r9+/gPNeHUx4heEzGxAIaHQm4+HHkCMXnky5suXLmDNr3iwYk+fPoEOL5vi2NCC9c+texNs5sOvXrTlLpjiACDDYsWfL3s27t+/fuUULH/4ZY+kGAgCYlriDgOpKANIEnw4ct3UQyBqwuc6duu7vJMKL/x9Pvrz58+jTq1/Pvn117wUIyJ9/vD5ySGG+4H8S5/SG5s8FEIh3BLrX3YGUsHZggeA1aOCDEEYo4YQLMkhRfPRlaB8dfARQBxkNtFFHAMvYlgwsADCRzCzHCNDNijDOEuOMq9Ro44045qjjjjz26OOPiH0QwxcfVGjhkUgmqeSSxDXpZGgYKscWQfXpoUCIGgh4JQYvAIIBLHt0gUEFWRwBTRJopqnmmqgo4uabcMoi55yq1GmnK3fmqacMfPbp559WAErjoEVW9IMAmhjJ5KKMNurok5A2eYNBBBxDx0FtmeIBGQpo0CkDCCxwARjbdLCLN9tsYwwO1aTq6qutxv8qqza01mqNrbfmquuuvIbg6wjABivssMQWa2wLyCb7qzfp/Opsr9Dieo201HJj7bWwYqutOdx2q8634IaLzbjklmuuOOimq+664bTr7rvgwBvvvPTWa68L9+Kr774i9OvvvwAHLPDABBdMzcEIJzyLLsk1nNxAALCl3AAweOjpxdJ5wAcsVoyz2MEtvigjoSMrTHLJKKdsssEsF8GvyyLHLHO95LyRr7w4s6vzueLy3LO3QIu77dBEV2t0tM8mrezSTLPAwdNQOy11B1NH3bTSSGd99Kxcv8rOL7tkE3bYCAnwiAJcoIACYzhoQIfakgyCyQ54QYdRoXgH+eh7FDn/EnEBmCRU4UFOFaSo3nsnbsjijDc+IKdkRC755JRzgYTll2duh+ab0+l5nDm0GTqbpJsQx+nkODOQ1AVVgjEMbsd+xhcYgDBQYyEhrjvfSpX091O8Ky48LcQXb/zxyCcP5Mk43uCwcmWMk85ALba1TBAXw669BhZI4skHa4UPUvDklz98axCXhkUZyR1SsVtEWKnBDfO7ncgyjBku/v4Qme///+dTiULsAz23tAFjgcCDJAJwB8Tw74GCA2AAJwjAsiEHLhE8Q1s0yMDVxAWCIAScBClIQvJZEDkJAcAFDjGkJ7glhDCMYVoWFKUL2rAtCykgAPwjwx76cCo0vKEQOAPgmB8a8YhIpFQSl8jEJjrxiVCMohSnSMUqWvGKWMyiFrfYkt9tgYtgDKPv4vJFwInxjGg0SEAAACH5BAUKAAMALCgAEAFpARoAAAj/AAcIHEiwoMGDCBMqXMiwocOEolZsmLjhocWLGDNq3Mixo8ePIEOKHPlRIsWKJFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQFXSGkq0qNGjSIsGXcq0qVObSaNKNfq0qtWrWBdOFAiiK8qsYMOKHWtx6wBhwM6cIcu2rcoAcOEC+rDBTwCMJ/Pq3cu3r9+/gP0iODAADd3AiBMrXsy4sePHkCNLNqsRAFyude9enMy5c94vhQ17Hk26tOnTqPdyjAtgLgiBTFYI1Nwy9eKBJwcE2GK794nfwIMLH068+NTjyJMbX85cufOjG6/M3k0XdorZaXxrZ4wbk/fv4MOL/x9Pfnvz8+ifq0/Pvv36pB+VhLbrqGulAIHM61cd+jedL++5t99jZQ1oIHcGxfUQAi8MAgJ99gmQ34EUDqWbawJmWOGGHPqW0AsDwQAARAJBMw457KijDhjkcKPiizBiE6OMNNZo443i4Jjjjjz26OOPQIYj5JBEFklkDeSAY+SSSjbpZDdPQinllFS6YOWVWGap5ZZciuDll2CGKeaYZJZp5plopqnmmmzOYuYvCZFyQDuzIaTCAMZs08ExKW5jzDEumrNNoIMWauihiBKq6KLVaNOoo5BGKumklFpj6aWYZqrpNZemw04Im4IqagvfjErqqaimqioHHYzA6quusv8g66y01mrrra3mqiusvPa6qqnABhvqsMRyamylyCZ7y6PLNpvos9BCI6ihAu1yjLXXljNrQRp4gFsfGhQEQH2YmCKhSWp1eNi6pREkAALeHcTubQbRUi9pMuSr77789usvGf9ygYTABA88isEH24Hwwgo37LAsEEcssSIUV2wxKhfjgfHGOXDscRIghyzyyBiQbHLJFaBcrTPkyHGJy3Z6AIO3Mt/JFYRrlaSuYgkyFeDPQAe9ytBEF210AskkffTSSDPt9NNQG32QAASRwi1XM4Pr1tYj7ey117pZJnYAl8jLFS/ecq02SF+3nRfbX2FEG2sKhtZtILKsrTdHGvZC7fffgGs4EwFVLIAGAYQTtvfiBQbu+OOQ/z24QDNMx/jlmLdFGUmId9555qCHftXmKXlOgOiop676dJ6v7vrrawcEACH5BAUKAAMALCgAGAFZARIAAAj/AAcIHEiwoMGDCBMqXMiwocOHECNKnEix4gBgGDNq3Mixo0dMIEOKHEmypMmTH1OqBGaxpcuXMGPKnDlzpc2bKHPq3IlzJc2fQIMKHUpU4IajSJMqXcq0qdOnUKOumCq1atKiWLNq3YrVqtevYMOKZcq1rNmzaBuC6Ml2LM+3bVOmnUu3bta4eOHq3ZuXpd2/gAML1kqtsOHCRhNfVDyLYOPFkB8/Hky5smWC1kJk3hxiojWBnxVee1ltQOnTEqGZXg1NtWvXF1EM1EBH9uXbgQMt1q37YqDfaYILD757t/CEZO42xJODufPm0PEMiI6KevXrFDEkwcA6SUIUsjUUgsdNvm6K8+ipql/Pvv2K8pCLJxuPcH78mqJW5Re/uzb8/2fxtROAuClgFA78EajgXQLmtOBl/Bko3YMUBuXWUxUOFgADFwWwoQAZhhjThU6JCBgAAsUgkIcmtlhRgw66SJeHAQwAAI0y5vgQjCjpOCONNfoo5JBE2ggkikUmqSSFAQEAIfkEBQoAAwAsJAAYAV0BHAAACP8AAwgc2KAggAYDEm5IyLChw4cQI0qcSLGixYsYM2rcyLFjxQ0gQ4ocSbKkyZMoU6pcybKkQ4MIBxT0SLOmzZs4c+rU2bKnz59Ag7psSPDgQEDAgPlpwATYzqdQo0qdmpOW1atYs2rdyvWE169gw4odS7ar2bNmXxY9mnRpU6pw48qdCxWt3btl8+rdi7cvQ4Iwzg0sBwDphh0BHKGhy7ix48cPz0ieLLSy5cs9/w6skkUAn3TjCoN0uxCy6dOod2JezfpD65GaBWrQ0GGcbXLjzKXezbu377mzRAQXPrw48ePGkysPvlZBDDgs0I0rl1v37+vYsw8IYY279+7gw4v/H38NPEVtN29tX39rm/v38OPLnw8tfvMGz795E2CYoWTtAO5mxYAEWqGQDAUiqOCCDCookQzAWaTIhBRWaCEqeGCoYQ4bYthREhWAKGIFExXlQUEvwMEEfx8klFiAMKLWl18xKuTfKjjmiONEqxyo449ABikkkPcJ9BwMWhiSgh81NvnYa1BGKeWUJBVpJANskGEIkzY66SVVUn7ZJEEaFPWcHVzscKCYbD7F15thtVljQWXChJ8CngCSmGty9mkTnICe4GeAstl5pSB7ljboohmFyWh2AJwIQAwBpLiAArMB0JSij3b6YJSeYqdApTtQ+sMOXWzxyJ6hturqqxJpfZAiDU5MSlsbWmjaIqy89uppppFSeseEiDHh67HI9jmqQDf0YKsixXKa7LTUEiobpRpgQFq13HZ7nVE+MOABAghE6+256Jpm1EFOJALti+nGKy9jiZo77734QhWAJkpyeUa+AAdc076u+SvwwQhvZHDCDDdMlEILOywxugEBACH5BAUKAAMALCgAdAB4AcwAAAj/ADcIHEiwoMGDCBMqHKihocOHECNKnEixosWLGDNq3Mixo8ePIDkOGEmypMmTKFOqXMmypcuXME+GnEmzps2bOHPq3Bizp8+eZ34K9bmzqNGjSJMqvTi0qdORQZ9KRbm0qtWrWLNKnMrVpZ+FYMOKXai1rNmzaDt2Xcu2bcq0cOPKReu2rl2uc/Pq3Vv0rt+/RPkKHkxYI+DDiFUWXsy4ceLHkBtLnqwXsuXDlDNrNnu5893NoEMr9Uy6rejTqHGWXo03tevXalnLbgq7tu2Ks3P/7CirlY0oJibcHl5Yt3GYHXFRiWLjjRni0Gmm0ZKmohY2sY9rV8yRCq4JriLw/4hO/qMmXkzITHyEI73I7fBlbpTF6juc+uXzz2fSvrqCh+zhkEh28RXYESmkxMKcfR8hUIgH1gHyHwb/NUJhSHjol1Qa/LnnUIADElggfByZgYgXEaRIiiwqtKiRLKWkGMEpcLgYES6xwJGKDZQgEQExNmYi5AIoFClRBU0QCcYbDECooVEcoqeeAiB+NOKI3Z1ohm9jtBLkRapEsQsqRQTTDChG3phjFUByUQCQHMUyDJFF3ELnk1B2GKWA/3l0pYEX6eDKBJug+J0drLASxaCpsHiREBEEQqQHSwr3wBGcdOKgJTjqyIMqPoKCaTZFeEAGD6J2UkInPKBaKg+TTP/y6aWWtChqgiVoIAMPl2agqpN4crQnL3yC9Gd8GF2yKCmJwjlNoq3suKZF2cghXJA7RCBEMBTY1+ktPPr4zgOgzEGjuKAQc0oxmxRqDJulUOBLFcpwUqsuEghR7i6mxuqGMW+8G6xHaRDLC3Z9+nnsdhgpkigV3tWoQnjLiZdwRZ0C22Iiz1lipioTfCtBDj7CYqu9JRdphrOkQDjNnJSi7FythSaRsgq6MJjmwI/i4LOHVi6sXUYmohiirRDzAOdFu5QyKUS3mIALrGSKLIuPcIJL8hvWGOkLq/TYizPM9arAxhtkWoLKJMFgfTLPHIGop7FCH0f0HAUk/XIoeGP/UWtGnRRwgpMVbKLjG53A4kaknHqptSo/Qvj4m0iDocazDb1Ms70mlqorK7BADqeocGtUZZRAv1e3bhkxW8AzeyP4DKON3H00BeNhYR8xjFstekMPFFOF22i8XuszGbSoecwqtBG5BrDMUcHvzJfec7G6zi3i6qxhVHTtTzvEHCmp/G0RH0pXUO4DllhQDDHEMJek7wUobaIuCxAvRylNFC1cuWQqWxVwh6RuDY9yGiCdxqwHkdM9RHs84V5uMMIcBEbke9eyCBJ2ISM3CEcVHJxRBExGv2fVL22syBoF8pYNL9hBbRngEfJa5IoYRQBm1FOg+Rj4IZ+1QSKok1QE/yUoGzBJYEYUcVj9dggmDIWvYTy8SSIOhjEtbI+InsGIBHAxKIoQI2MLjCJs/JMTLBaxiV86khjXmBEzdo+NcFyKG1cTxzoiZY6lsWMY9UgTPJKGj4C8iR+zGMhChmSQnTGkIhWGyMgs8pFtbKQjIUlJikhykpXM5EMu+RhNetIhnEzMJz8ZSsSM0pOlxMwpCVcFCGUoIptaYyoBs8pJLepeHbNRLsjkpSjO8i+1hNAtLRGLldkCU0CyRRNiOB4e/tIvwbTEMIsJiwy4YkucSpIEmAi3Z36mImnIwd8CIc40YUATe0xnfj6Fy2B4yRXJw4I2uckzb9pFg8IrUicsEP++VNQijepcZ5I4FQx35i+ePbJBBq1nz7owDU5isFktfAUvD2BBPVlQA6EcMIUL4QkMYACPGEpgUCQ4IGTzDKiGGuqWnnlsCoQK6S4K+k9rEhMWy7wmjQAaHTv8Agbs8gAbnGCqk0YiCAuYqEr1w1LT4LMKxaxV1EqxrZqC7BSKw4IydLjUaFKmqWxJVudUoIxhuNMNX1SBTbEqhGM84K309OppwLoW7xXDFsp7ji2qSlA4YKFtR8jVvHgqV9DQtSut02jzOIojYeBVEDDQ3Q4m4D7gdLWwkzlsazAbSM1OhbOF9KxUQNtZ0TqFtIA07WlRq0fV0oa1dnTtUGAbW9n/7oa2cbTtbXHLRt0Ghrey9G1MgNtb4SKHuGI07nGR60zluuRFlGAuY+DpKNU5dyUakQQdpLsYSF2iuoa5Lku8t4QAxIC7i3EC4rpIWIiId7waBMANLnFe9BZGOWBgL0bei90mmqK+gJTaung1AjlkSgZPHM4htBXXrfD3LRmpBID5yARWtCIdNtxqMYKzTgZH8sHySdaE9bguqXq4FRTQD6SicFkQUyXCI7bjKZw2sedBKj+JqN8Pu+riEDMtxnWcscQkMNgZkmdH4Wpxj0uiEQkXUsj/mRmVxAadHHOtwQ5eMlRg/GS/9avIyYMOxcrX3ohomSTRhHIgECiEll12/zOQInOZ3XvmAdjXNYp48ybrfOdu8rnPA6uznQEdLEETutB/PvRKE63o/Bi60UxlNKSj8+haBoESmM70pTW96U5z+tOeDrWoQU3qUZu61KgGNVMkfaRTp/rVsI61rGct64uNstKTpjSrc30bXPN6OL7+tW2CLWzYELvYrjk2slGj7GWLptnONuyuo/3saVNb2me+9mugre3MWrvbX/02uCXD7XEvptzmJgy60y2YdbN7L+5+d17iLW+50LvecLk3vukibpfNYxEoCrjAB07wghv84AhPuMIXzvCGO/zhEI+4xBP+q4Bye10An7jGN87xjnv84yDveMUt2e9iQCzkKP9PucpXznKWrzrbFslby2dO85rb3OYv1/JFMh6rm/v850APesJzvuSdn1zoSE+60mdO9B4bfelQj7rUNd50Fz996ljPutYHXnUQX33rYD96z8Pu864/+OtkT7vaa252/qJ97XCPO8jb/t63y/3ueIc43cVr97xzfGmLEzvPBy/4E/n943u/bt8PL3G9csJwLTQ84ScvecZ7PPHOXbzlHx6M+6RIXaEQRo18MUKKbQJyv7ACeFy3+Y5jXrmabz3DA1uEckGMHQs4hUzxGsMyjacJuRgC6Ssv+4i/3rixL77C+fe/5awQGWwSnDHi+YyQpU/5Gz++cJOP/YRzEQ4tRPD/KjZKDFe8aw6DdRHeum98W9MZ5hUpPPsV3r+Aw8EMzxGDQknPL1moAXSexzdvMH965357Bn8UIX8EeHDlsy4hZTkl4Cq8s01+NQdzYibpsn4LyHDa51vct4EoAg/XQnoppjYlMGYlIHPsczzEB4IH14G69YEuKAExJCMDeIM4mIMVNIMLB4O2JYM82IICSHlCGIRcZ4CgVHIKaIRLyITZh4QNwW1OOIU4ZxFSSIVY6HJWqIRj14Ve+IVgGIZiOIZkWIZmeIZomIZquIZsyIY+KFtA2IZyOId0WId2eId42INbiIAT8TBZ+IdzZ3FcSISAWIgNp1IXl4OEuIiGmIU7/4Ub/QYHgdOIlOhwI0dyfLhvxRGJmmhvnNiJ+faJoMhvmTiK8CaKplgW+paKVrGKrChHqPiKV+GKsnhHsViLsFiKuEiKgnYZCUEEAPBKHzCMY1GMxtgkM9GLythSB7EDAfAIKUCMxziNxchIy3iNrSEQJ2EE1NiNx2hd2BiOs2UQJQEAIeKN6EgW86GN4sgaAfCODUAAEnICfkAAjjA4lUAA4kcL/JiOg/OPABmQAjmQBFmQBnmQObBlB7mQDNmQB3FZJBCREjmRFFmRFnmRGOmPGrmRK9CRHvmRIFmMNEAAJFmS8FiSTnGS81iP90gL+biP/ciRDjmTNMmQClmTOP+Zk0uVkTzZkz4pk0AZlCEZFiNpkkZJkkIRj0r5jiv5jCvwFpgQlVI5lVQplFapEGgmjVfpjTsDEVv5lVUZlmI5lmRZlmZ5lmNZlCd5lPHoE0sJj02ZHiMRACaBlnYJlv6IADeJl9Q4JH7Jl4B5l4I5mISZlgCwlmzZAD3RAEBFACWBTvRoj/z4kj8ZmDqZkzPwTZf5kQlWmZ75mSCglaE5mqRZmqY5mtAkmniplmyZlA1AVo7JZJHZksigj6BpmZvJkD0Qm1CJBr6Zm8D5ELc5nMR5msapmrh5lTfAlseQB3Q5l4sJISSBDiRhDj2hDtiZndq5ndjQnd75neIAnuH/OZ7kWZ7meZ4xAQ7hsJ7s2Z7saYHuCQ4koZ70WZ/2eZ/4mZ/6WRLd4AL+KTH/GaACKgIEWqAGeqAImqAKuqAM2qAOSg0QGqESOgsTWqEWeqEYSqEauqEZaqFzeZggOg5zWQ7H8JzDNZ3j0A7jYJ0jsQ7QwA3PUA7VyQ00WqM2eqM4mqPaoKM72qM++qNAGqTXMKREag1FeqQhMBIhcKRKmqTVuaRFehItMKVUWqVWeqVYygFaygJc2qUd4KVfGqbrmaUjEKZleqZmiqZquqZk2gIpYaRwGqdyOqd0Wqd2KqTVgKd5uqd82qfb4Kd/GqiCOqiESqjGcAyImqjtYBIy/xoTh+kBAnBeJIFOJOEeyCCbyXkGmpqpK8AEBxBLnIqchvAgZQkV5BROqJqq+yh+ZKCqrfqqrsoFsgoqtFqro2Crt5qrurqrvHo1ivCrwBqswkomI4EHxooHKIEKNrOsytqszMqs/IkBSTCj0gqtySo1+7M/SloSJeqorykAlQoATQkVlBmq5noGawAAmHqum8quQzl+8Bqv8poM9Fqv9nqv+DqvHJqv/Nqv/vqvHaqvs7CcAlCwBksS0tAOlwCuMPGo6poSDwudTbUBL9au7nqx75qxGruxGGuxIomYBIALBlCwjemtGnCYaLYF1VGP5QhWAsEHBgCrHTuzHFuzNv/LkbPRmg0bAAqwluf1CdMhX6FZrsdZtEZ7tEibtEprtOu6tDT7tFBrlT6QmIhpsoi5XZ8ACA1Am8HotF77tWAbtqPZBnsptlF7tmhrjFNLtSdptVerAIIgtBJ7WESAJTd7t3hbmGlrtlW5ElW7sz2LqQ1hogMQsQ01EFm5t3m7uIyrt477tH67lk3xAgHwBzpQl3NLV3T5Ae24ZOflA04QqXBbB13glJlrT1GBrJ3rYg/bszxbnXhwuS1LV+xoZ6t7dvBIA39gXq2qA5WLsLQbFbZ7uz32nDyLAM44u8S7vI2Uu02CABgwEo4AvMxbvZfUCImguvd4utbbvdxjsO93+AjGKr0UW7jee754JCk7ABXo275zFI3rO7zuO78S9AHxW770m79/Iq7DeL/6+79/UrvCC8AEzDAFfMAInMCsi7CGq8AObBlhcAkL+8AU/EcVfMGXwY0DjMEcfBe8i78dHML3JMIkPMIlfMJ1hcIq/Fkr3MItERAAIfkEBQoACAAsKAB1AHgBvwAACP8AEQgcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2q8uGGjx48gQ4ocSbKkyZMcUapcybKly5cwWe7YQDOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5ZhpEOBAkPmy562bO38eTVU06dNRFahWgLq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw4v/H0++vPnz6NOrX8++vfv38OPLn0+/vv37+PPr38+/v///AAYo4IAEFmjggQgmqOCCDDbo4IMQRijhhBRWaOGFGGao4YYcdujhhyCGKOKIJJZo4okopqjiiiy26OKLMMYo44w01mjjjTjmqOOOPPbo449ABinkkERyuMiRSHqh5CQQLelFkS4l6eQkVD7ZkJNQtlTAllUuKRCTV06ZpUpcdjklkgudOSZJiLSJyAAEQBABK3QqKZAlD0lp5ZoguTlGGVVIIeccSm6igkAP4KmQn17yKVKSCxjzRZm+VBHBlQQVMYEqjoaU5BdVNDFom3xYUgICoTwERxOniNKpRmXG/0rJBge8EsYyXxzgQBsewAFGAQgcMVAwVPj66kixcvlKFgoA0AUZALRRBwG3VqCCLZwgMQFBqRx70pxl1BqHAnncoYEAhjDQAAZGQEBQMwQN461JEhhQgi9PhLHavrPSIS8C3RoEx7x9fgqNJYOgq8G+ZPQaRzAFdTOQBAQXvOQAEqiiARcLN6IBL+ROgAIdo84pwRsVP0rFpxSosLAGMMAc8iqC+pkymyt/KsjLMV+gQh+RLsPozd8myesEN1xrSR+JQIAx0St9KkAqvS4sQw4X1Awm1PR2KYXCyVBLc8lnNso1rGOkDQEBMERBcjTUkl32nmdvpLagNWtNZd2ezv/NKCNy842Snn4TbqfgaP9dp5iI41T14x40zhLkVUu+EuW9Wq4S5pFrfhLnnn+OeegmgU46SaafrvrqrLfu+uuwxy4btQHU3oDtgNDkRwCO0FRJAGnQJPwJxBdv/PHIJ6/88Mw37/zz0Ec//EDSV2/99R2p+jIDZ2DvvfSX0W477rrz7jvw3y+vfvrst18TZx+4L3/zEG3f/fzsfzb+7QTkfsLuvTvB72SwPvwZEBMITKAC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SZKkPHgcS6pcybKlS4IePDy09LKmzZs4D8bMybOnz5w7fwodSvRj0KJIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS9ZnhQIR0EpQy7ZthSYVBEALUrauyJht81LZy3eCX0t+7QoOGbOj4cKICw9efPew48QLFDCebBGy5cuKKWtWiLlz4s2gCX8OTbry6NKoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw4v/H0++vPnz6NOrX8++vfv38OPLn0+/vv37+PPr38+/v///AAYo4IAEFmggRCckqOCCDDbo4IMbRCjhhBRWaOGFGGI4UIYcdughhRI99uGIJEJo4oklpqjihAIZ8sGKMF4YomMx1mjjjZjkqOOOPPbo4486VgKAAEAWaeSRP87IQCFINunkkzhCKeWTdBE55ZVFKonlllyiGOWXE8ZgJZgqaknmmV6miSaJPwQw5poemgmnhiOJg42deN5pZ07h9Onnn3/WcJCfAwEKzqGIJqroooW6AM5djkYqqQskScrNpZhmqumm2nBKUKecgirqqNeQWuqppQ5kTapyCYRqCLDGdhrrp7OSxEELuHbAwje75rrrRL0GK6yuxA5rLK4gzXnGssw26+yzXwokDQYrQGvttTciGMi23DLpbbfgpiHuuOSWOy5BaRAJlFNuvinVi/Aqa+F68nJIb710pgfCvvz26++/AAcsML/3DmzwwQgXjG+FCi88YUAAIfkEBQoAAgAsQADAANAAaAAACP8ANwgcSLCgwYMHVShcuFCAw4cQI0qcSLGixYsYM2rcyLGjx48SGYpU+FCew3jxRIBcybKly5cwY44cGVEePJUxc+rcybOnxZkia6a0ZMmn0aNIk14EqqGpBqVQo0pVytTpRBFPp2rdyhVj1aZdw4odG/KrvLNob2Yly7YtV6dW3cqdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIE8tE4cFDgceQJ0meTLmyl8uYM2vezLmz58+gQ3eeoNgj48aRLateLbq169ewUz+GU7pjY7i4c+vezbu379/Ag/uuzfG28K/HkytfPpy4aePQmUufTr23c5DRq2vfrv267ezIw4P/H0++vPnz6L1rRC+evfv38N2rn0+/vv37+PPr38+/v///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stZcey32QWCHPfbZt5U9Itpst+3223DHLffcdNdt991456333lxZax0yCIAHLvjghBdueOB8j5Vzzt0d7vjjjifeN2YbVG755ZhnrvnmnEu+FeWchy766JZ7/nnakBOeXOqqm54VCH+zXvjqrLuuuMoi4L6ySbnnbrtUHHQg3wgdED+CfMgfb/zyzC/fUAjInxYQACH5BAUKAAAALNcA6AB6ADgAAAj/APMJHEiwoMGDCBMqXMiwoUN9ECNK1AegoiUVFTNq3Mixo8ePIEOKHEmy4sSTEAFoKMmypcuXME2iPDkBY8ybOHOWnElTgYaHQIMKHUqU50QVNnUqXarUqESkTKNKfek0ItSpWLN+rArxqtavYDsa9OAhrNmzY8ueXas1Ldu3U93Cndu0IFm6eHHKzcu35d6+gEX+DUxYrF21FMp0LFG4b1oNylRW9EWqMWG5UdSahGPZ8eHOoAE8rmcxdODBpgGjTs13NWuzXO15fc029mzaaO3p3s3balLcuXsLl/0beFjbxY1/Ra48uFGVyZtjdWrxovTr2LNr3869u/fv4MOLcx9Pvrz58+jTq1/Pvv1UDfCrb5hPv779+/jz198Of2Vp/QAGCCB/GK1g4IEIJqjgggw2yB90DUYo4YQGcreBfALap1GG+FkIIYf5bQgieC6UKJkLJ0aFIoraseDiizB2IOOMHNRo44045tjCjjz22AJwAQEAIfkEBQoAAwAseAC4ANkAaAAACP8ABwgEILCgwYMIEypcyLChw4cQI0qcSLGiRYMKNGggeLGjx48gQ4ocWVEAyZMoU6pcGVIBR5YwY8qcORLNS5o4c+rcOSBAT55Agwod6dPn0KNIkz68qbSp06FdmD6dSlUmgEFGq2rdmhIAHqlcw4qtGGfj2LNoKYJNy7btQLdw466NS5dqRrN18+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+suna+379/1CsKxtLsq8OP17g0gXpwqcuQam099PiD5PXv2LGl/zr279+/gw4v/H0++vPnz6L1rl/40/Hr2Td0zh59UPv2t139Hv288//X9/E3n3z0ABujUgARqYKCA+im44IEDFvggUghKOOFQFTp4IYURarghhh1+yGGDIh6VYYkg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Sc1qRjOZQaSkNbfJzW1ic0wxCac4x0nOcpqznN88pzrXyU5xKrOb8PyAPOMpzXfOk5747OYyRyRJgn76858ADahABwrQZHKgAwgdQUIVytCFNvShEG1ICGi3z8kk4aIYxahfzsDRjnr0o7j0DTWSMdKSknQWKE0pSiuaEZB61CYBAQAh+QQFCgAAACywAHUA8ACuAAAI/wABCBxIsKDBgwgTKlzIsKHDhxAjSpxIseLBDRYzatzIsaPHjyALYgxJsqTJkyhP7tjAMqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KtavXr2DDih1LtqzZs2jTql3Ltq3bt3Djyp1Lt67du3jz6pWYBgAOAH33Cjb4N/DgwYYPI1aQRoHix5AjS55MubLly5gza97MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx48iTK1/OvLnz59CjS59Ovbr169iza9/Ovbv37+DDi94fT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+///8ABijggAQWaOCBCCao4IIMNujggxBGKOGEFFZo4YUYZqjhhhx26OGHIIYo4ogklmjiiSimqOKKLLYYlAYwCsTSjDTWaOONON54HYwaDIRRjkAGCeSOKgC2wpFIJqnkkkw22eSORjop5ZRUHondSELiSFCWOkLJZZBbfsmdC2QCZqYLZnqEJprWseDmm3B2IOecHNRp55145tnCnnz22YKLOlWAATaDCkqoTV+O9FsyjFLT6CyPRkqfomHaFBAAOw==",QMt={distance:"m",path:"m",angle:"\xB0",surface:"m\xB2"},GMt="measure2d_measurements",HMt={name:"BIMDataMeasure2D",components:{ColorSelector:b9,BIMDataEmpty:Op},data(){return{guide:YMt,carrier:null,ruler2dPluginAvailable:!1,surface2dPluginAvailable:!1,angle2dPluginAvailable:!1,path2dPluginAvailable:!1,selectedMeasurementPlugin:null,currentColor:null,currentPlugin:null,currentGroup:null,measurements:[],isUpdated:!1,hasBeenOpened:!1,pluginViewer:{},calibrating:!1}},computed:{storageKey(){return`${GMt}-${this.carrier}`},model(){return this.pluginViewer.model},isCalibrated(){return this.carrier!=="plan"||this.model&&this.model.size_ratio!=null},standard(){return this.model.size_ratio||1}},watch:{model(t){t&&this.setStandard(t.size_ratio)},currentGroup(t){this.measurements.forEach(e=>{e.visible=e.group===t})},measurements(t){t.forEach(e=>{e.visible=e.group===this.currentGroup})},selectedMeasurementPlugin(t){const e=this.measurementPlugins.get(t);if(this.currentPlugin&&this.currentPlugin!==e&&(this.currentPlugin.disable(),this.pathValidationModal&&this.closePathValidationModal()),e&&(e.enable(),t==="path")){const i=this;this.$viewer.localContext.modals.pushModal({created(){i.pathValidationModal=this},render(){return _i(p9,{width:"100%",class:"bimdata-measure2d__path-validation"},{content:()=>_i("div",{style:"display: flex; justify-content: space-between; align-items: center;"},[_i("div",this.$t("measure2d.validate_path")),_i(bn,{fill:!0,radius:!0,color:"high",width:"121px",onClick:i.onPathCancel},{default:()=>this.$t("global.cancel")}),_i(bn,{fill:!0,radius:!0,color:"primary",width:"121px",onClick:i.onPathValidate},{default:()=>this.$t("global.validate")})])})}},null,{display:"banner"})}this.currentPlugin=e},currentColor(t){this.measurementPlugins.forEach(e=>{e.color=t})}},mounted(){var t,e,i,o;const r=this.$viewer.localContext.viewer;if(!r||!r.viewer){const c="Measure2d plugin cannot work without a viewer2d, dwg or plan plugin and viewer.";throw console.error(c),new Error(c)}this.carrier=r.plugin.name,this.pluginViewer=r;const n=(t=r.plugins)==null?void 0:t.ruler,s=(e=r.plugins)==null?void 0:e.surface,a=(i=r.plugins)==null?void 0:i.angle,l=(o=r.plugins)==null?void 0:o.path;this.measurementPlugins=new Map,n&&(this.measurementPlugins.set("distance",n),this.ruler2dPluginAvailable=!0,n.on("add",c=>{this.isUpdated=!0,this.makeMeasurement({type:"distance",get value(){return c.length},color:this.currentColor,object:c}),this.selectedMeasurementPlugin=null,this.currentColor=Ph()})),s&&(this.measurementPlugins.set("surface",s),this.surface2dPluginAvailable=!0,s.on("add",c=>{this.isUpdated=!0,this.makeMeasurement({type:"surface",get value(){return c.surface},color:this.currentColor,object:c}),this.selectedMeasurementPlugin=null,this.currentColor=Ph()})),a&&(this.measurementPlugins.set("angle",a),this.angle2dPluginAvailable=!0,a.on("add",c=>{this.isUpdated=!0,this.makeMeasurement({type:"angle",get value(){return c.angle},color:this.currentColor,object:c}),this.selectedMeasurementPlugin=null,this.currentColor=Ph()})),l&&(this.measurementPlugins.set("path",l),this.path2dPluginAvailable=!0,l.on("add",c=>{this.isUpdated=!0,this.makeMeasurement({type:"path",get value(){return c.length},color:this.currentColor,object:c}),this.selectedMeasurementPlugin=null,this.currentColor=Ph()})),this.currentColor=Ph(),this.carrier==="viewer2d"||this.carrier==="plan"?this.$watch(()=>this.pluginViewer.selectedStorey,c=>{this.currentGroup=c?.name}):this.$watch(()=>this.pluginViewer.model,c=>{this.currentGroup=c?.id})},onOpen(){document.addEventListener("keydown",this.onKeyDown),this.pluginViewer.viewer.ui.mode=null,this.hasBeenOpened||(this.hasBeenOpened=!0,this.$watch(()=>this.pluginViewer.model,t=>{this.measurements=[],t&&this.restoreSavedMeasurements()},{immediate:!0}))},onClose(){var t;document.removeEventListener("keydown",this.onKeyDown),this.pluginViewer.viewer.ui.mode="pick",this.selectedMeasurementPlugin=null,(t=this.pluginViewer.plugins.caliper)==null||t.disable(),this.calibrating=!1},methods:{setStandard(t){var e,i,o;[(e=this.pluginViewer.plugins)==null?void 0:e.ruler,(i=this.pluginViewer.plugins)==null?void 0:i.surface,(o=this.pluginViewer.plugins)==null?void 0:o.path].filter(Boolean).forEach(r=>{r.standard=t||1})},toggleCalibrate(){var t;this.calibrating?((t=this.pluginViewer.plugins.caliper)==null||t.disable(),this.calibrating=!1):this.onCalibrateClick()},onCalibrateClick(){this.pluginViewer.plugins.caliper.enable(this.onCalibrationValidated,this.onCalibrationCancel),this.calibrating=!0},async onCalibrationValidated(t){this.pluginViewer.plugins.caliper.disable();const e=this.$viewer.api.cloudId,i=this.$viewer.api.projectId;try{this.model.size_ratio=t,this.setStandard(t),this.$viewer.api.permissions.hasModelWritePermission&&await this.$viewer.api.apiClient.modelApi.updateModel(e,this.model.id,i,{size_ratio:t}),this.$viewer.localContext.hub.emit("alert",{type:"success",message:this.$t("measure2d.calibration_success")})}catch(o){console.error(o.message),this.$viewer.localContext.hub.emit("alert",{type:"error",message:o.message})}finally{this.calibrating=!1}},onCalibrationCancel(){this.calibrating=!1,this.pluginViewer.plugins.caliper.disable()},isHideElementDisabled(t){return t.group!==this.currentGroup},closePathValidationModal(){this.pathValidationModal.$emit("close"),this.pathValidationModal=null},onPathCancel(){this.selectedMeasurementPlugin=null,this.pathValidationModal&&this.closePathValidationModal()},onPathValidate(){const t=this.measurementPlugins.get(this.selectedMeasurementPlugin).validate();this.closePathValidationModal(),t||(this.selectedMeasurementPlugin=null)},makeMeasurement(t){const{type:e,group:i,name:o,color:r,object:n}=t;let s=r,a=!0,l;switch(e){case"distance":l=[n.startPoint,n.endPoint];break;case"angle":l=[n.startPoint,n.anglePoint,n.endPoint];break;case"surface":l=n.points;break;case"path":l=n.points;break}const c=this,u={id:n.id,group:i||this.currentGroup,unit:QMt[e],get value(){return c.standard,t.value.toFixed(2)},name:o||e,type:e,get color(){return s},get colorString(){return`#${s.toString(16).padStart(6,0)}`},set color(d){s=d,n.colorize(d)},get visible(){return a},set visible(d){a=d,n.visible=d},get points(){return l},destroy(){n.destroy()},nameEditing:!1,colorEditing:!1};return this.measurements.push(u),u},onTagClick(t){this.measurements.filter(e=>e!==t).forEach(e=>e.colorEditing=!1),t.colorEditing=!0,this.isUpdated=!0},onElementNameClick(t){t.nameEditing=!0,this.isUpdated=!0,this.$nextTick(()=>{this.$refs.elementInput&&this.$refs.elementInput.focus()})},onInputBlur(t){t.nameEditing=!1},onAddMeasurementClick(t){this.selectedMeasurementPlugin===t?this.selectedMeasurementPlugin=null:this.selectedMeasurementPlugin=t},onKeyDown(t){t.key==="Escape"&&this.onEscapeDown()},onEscapeDown(){this.selectedMeasurementPlugin=null,this.measurements.forEach(t=>{t.nameEditing=!1,t.colorEditing=!1})},onHideMeasurementClick(t){t.visible=!t.visible},onDeleteMeasurementClick(t){t.destroy(),this.measurements.splice(this.measurements.indexOf(t),1),this.isUpdated=!0},getSavedMeasurements(){let t={};try{const e=localStorage.getItem(this.storageKey)||"{}";t=JSON.parse(e)}catch{localStorage.removeItem(this.storageKey)}return t},restoreSavedMeasurements(){const t=String(this.pluginViewer.model.id),e=this.getSavedMeasurements(),i=e[t]||[];try{this.ruler2dPluginAvailable&&this.restoreMeasurements(i.filter(o=>o.type==="distance")),this.surface2dPluginAvailable&&this.restoreMeasurements(i.filter(o=>o.type==="surface")),this.angle2dPluginAvailable&&this.restoreMeasurements(i.filter(o=>o.type==="angle")),this.path2dPluginAvailable&&this.restoreMeasurements(i.filter(o=>o.type==="path"))}catch{e[t]=[],localStorage.setItem(this.storageKey,e)}},restoreMeasurements(t){t.forEach(e=>{const i=this.measurementPlugins.get(e.type).create(e.points);i.colorize(e.color),this.makeMeasurement({type:e.type,group:e.group,name:e.name,color:e.color,object:i,get value(){return e.type==="surface"?i.surface:e.type==="angle"?i.angle:i.length}})})},onSaveMeasurementsClick(){const t=String(this.pluginViewer.model.id),e=this.getSavedMeasurements();e[t]=this.measurements.map(i=>({type:i.type,group:i.group,name:i.name,color:i.color,points:i.points})),localStorage.setItem(this.storageKey,JSON.stringify(e)),this.isUpdated=!1}}},VMt={class:"bimdata-measure2d"},ZMt={key:0,class:"bimdata-measure2d__actions-0"},JMt={class:"bimdata-measure2d__actions-1"},WMt={class:"bimdata-measure2d__actions-2"},KMt={class:"bimdata-measure2d__list"},_Mt={class:"bimdata-measure2d__list__element"},qMt={class:"bimdata-measure2d__list__element__label"},XMt=["onClick"],$Mt={class:"bimdata-measure2d__list__element__tag"},eft=["onClick"],tft={class:"bimdata-measure2d__list__element__buttons"},ift={key:2,class:"bimdata-measure2d--not-calibrated"},oft={key:0,class:"bimdata-measure2d--not-calibrated__guide"},rft=["src"];function sft(t,e,i,o,r,n){const s=z("BIMDataIconSave"),a=z("BIMDataButton"),l=z("BIMDataIconCaliper"),c=z("BIMDataIconDistance"),u=z("BIMDataIconAngle"),d=z("BIMDataIconSurface"),h=z("BIMDataIconPathway"),p=z("BIMDataIcon"),g=z("BIMDataInput"),A=z("ColorSelector"),M=z("BIMDataIconHide"),f=z("BIMDataIconShow"),L=z("BIMDataIconDelete"),w=z("BIMDataPaginatedList"),m=z("BIMDataIllustration"),C=z("BIMDataEmpty"),I=Yi("click-away");return D(),U("div",VMt,[n.model?n.isCalibrated?(D(),U(Mt,{key:1},[v("div",JMt,[O(a,{class:"bimdata-measure2d__actions-1__btn-save",color:"primary",fill:"",radius:"",icon:"",disabled:!r.isUpdated,onClick:n.onSaveMeasurementsClick},{default:J(()=>[O(s,{size:"xs",margin:"0 6px 0 0"}),v("span",null,X(t.$t("measure2d.save_measurements")),1)]),_:1},8,["disabled","onClick"]),t.$viewer.api.permissions.hasModelWritePermission&&r.carrier==="plan"?(D(),oe(a,{key:0,color:r.calibrating?"primary":"default",fill:"",radius:"",icon:"",class:"bimdata-measure2d__actions-1__caliper",onClick:n.toggleCalibrate},{default:J(()=>[O(l,{size:"xs"})]),_:1},8,["color","onClick"])):be("",!0)]),v("div",WMt,[r.ruler2dPluginAvailable?(D(),oe(a,{key:0,color:r.selectedMeasurementPlugin==="distance"?"primary":"default",fill:"",radius:"",onClick:e[0]||(e[0]=j=>n.onAddMeasurementClick("distance"))},{default:J(()=>[O(c,{size:"s",margin:"0 6px 0 0"}),v("span",null," + "+X(t.$t("measure2d.distance_measurement")),1)]),_:1},8,["color"])):be("",!0),r.angle2dPluginAvailable?(D(),oe(a,{key:1,color:r.selectedMeasurementPlugin==="angle"?"primary":"default",fill:"",radius:"",onClick:e[1]||(e[1]=j=>n.onAddMeasurementClick("angle"))},{default:J(()=>[O(u,{size:"s",margin:"0 6px 0 0"}),v("span",null," + "+X(t.$t("measure2d.angle_measurement")),1)]),_:1},8,["color"])):be("",!0),r.surface2dPluginAvailable?(D(),oe(a,{key:2,color:r.selectedMeasurementPlugin==="surface"?"primary":"default",fill:"",radius:"",onClick:e[2]||(e[2]=j=>n.onAddMeasurementClick("surface"))},{default:J(()=>[O(d,{size:"s",margin:"0 6px 0 0"}),v("span",null," + "+X(t.$t("measure2d.surface_measurement")),1)]),_:1},8,["color"])):be("",!0),r.path2dPluginAvailable?(D(),oe(a,{key:3,color:r.selectedMeasurementPlugin==="path"?"primary":"default",fill:"",radius:"",onClick:e[3]||(e[3]=j=>n.onAddMeasurementClick("path"))},{default:J(()=>[O(h,{size:"s",margin:"0 6px 0 0"}),v("span",null," + "+X(t.$t("measure2d.path_measurement")),1)]),_:1},8,["color"])):be("",!0)]),v("div",KMt,[r.measurements.length>0?(D(),oe(w,{key:0,list:r.measurements,"element-key":"id",style:{overflow:"unset"}},{element:J(({element:j})=>[v("div",_Mt,[v("div",qMt,[O(p,{name:j.type==="path"?"pathway":j.type,size:"m",margin:"0 12px 0 0"},null,8,["name"]),j.nameEditing?(D(),oe(g,{key:0,ref:"elementInput",modelValue:j.name,"onUpdate:modelValue":b=>j.name=b,onBlur:b=>j.nameEditing=!1,onKeypress:si(b=>j.nameEditing=!1,["enter"])},null,8,["modelValue","onUpdate:modelValue","onBlur","onKeypress"])):(D(),U("span",{key:1,onClick:b=>n.onElementNameClick(j)},X(j.name),9,XMt))]),v("div",$Mt,[v("span",{class:"bimdata-measure2d__list__element__tag__content",style:Se(`color: ${j.colorString}; background-color: ${j.colorString}20;`),onClick:b=>n.onTagClick(j)},X(j.value)+" "+X(j.unit),13,eft),j.colorEditing?Tt((D(),oe(A,{key:0,class:"bimdata-measure2d__list__element__tag__color-selector","selected-color":j.color,onColorSelect:b=>{j.color=b.value,j.colorEditing=!1}},null,8,["selected-color","onColorSelect"])),[[I,()=>{j.colorEditing=!1}]]):be("",!0)]),v("div",tft,[O(a,{icon:"",class:"m-r-6",color:"granite",ghost:"",radius:"",disabled:n.isHideElementDisabled(j),onClick:b=>n.onHideMeasurementClick(j)},{default:J(()=>[j.visible?(D(),oe(M,{key:0,size:"s"})):(D(),oe(f,{key:1,size:"s"}))]),_:2},1032,["disabled","onClick"]),O(a,{icon:"",ghost:"",radius:"",color:"granite",onClick:b=>n.onDeleteMeasurementClick(j)},{default:J(()=>[O(L,{size:"m"})]),_:2},1032,["onClick"])])])]),_:1},8,["list"])):(D(),oe(C,{key:1,message:t.$t("measure2d.empty")},{default:J(()=>[O(m,{name:"emptyBucket"})]),_:1},8,["message"]))])],64)):(D(),U("div",ift,[r.calibrating?(D(),U("div",oft,[v("img",{src:r.guide},null,8,rft)])):(D(),oe(m,{key:1,name:"emptyMeasure"})),v("div",null,X(r.calibrating?t.$t("measure2d.calibrating"):t.$t("measure2d.not_calibrated")),1),O(a,{color:"primary",fill:"",radius:"",icon:"",width:"150px",disabled:r.calibrating,onClick:e[4]||(e[4]=j=>n.onCalibrateClick())},{default:J(()=>[O(l,{size:"s",margin:"0 var(--spacing-unit) 0 0"}),dt(" "+X(t.$t("measure2d.calibrate")),1)]),_:1},8,["disabled"])])):(D(),U("div",ZMt,X(t.$t("measure2d.no_model"))+". ",1))])}const nft=W(HMt,[["render",sft]]),aft="Speichern",lft="Entfernung",cft="Winkel",uft="Oberfl\xE4che",dft="Weg",hft="Sie haben derzeit keine gespeicherten Messungen.",pft="Umbenennen",Aft="Farbe \xE4ndern",gft="Messger\xE4t",Mft="Klicken Sie auf \u201EBest\xE4tigen\u201C, um die Zeichnung zu beenden.",fft="Kalibrierung",wft="Bitte skizzieren und best\xE4tigen Sie Ihren Standard",Lft="Um das Messwerkzeug verwenden zu k\xF6nnen, stellen Sie sicher, dass Sie Ihren Plan kalibriert haben.",mft="W\xE4hlen Sie ein Modell aus, um Messungen durchf\xFChren zu k\xF6nnen.",yft="Es muss sich um eine strikte positive Zahl handeln",vft="Plan erfolgreich kalibriert",Cft={save_measurements:aft,distance_measurement:lft,angle_measurement:cft,surface_measurement:uft,path_measurement:dft,empty:hft,rename:pft,update_color:Aft,tooltip:gft,validate_path:Mft,calibrate:fft,calibrating:wft,not_calibrated:Lft,no_model:mft,modal_error:yft,calibration_success:vft},Ift="Save",jft="Distance",bft="Angle",xft="Surface",Dft="Path",Nft="There is currently no saved measurement.",Sft="Rename",kft="Update color",Tft="Measurement tool",Eft="Click on \u201Cvalidate\u201D to end the path.",zft="Calibration",Pft="Please trace and validate your stallion",Bft="To use the measurement tool, make sure you have calibrated your plan.",Oft="Select a model to be able to perform measurements",Rft="Must be a strictly positive number",Uft="Successfully calibrated plan",Fft={save_measurements:Ift,distance_measurement:jft,angle_measurement:bft,surface_measurement:xft,path_measurement:Dft,empty:Nft,rename:Sft,update_color:kft,tooltip:Tft,validate_path:Eft,calibrate:zft,calibrating:Pft,not_calibrated:Bft,no_model:Oft,modal_error:Rft,calibration_success:Uft},Yft="Guardar",Qft="Distancia",Gft="\xC1ngulo",Hft="Superficie",Vft="Camino",Zft="Actualmente no hay ninguna medici\xF3n guardada.",Jft="Renombrar",Wft="Actualizar color",Kft="Herramienta de medici\xF3n",_ft="Haga clic en \xE2\u20AC\u0153validar\xE2\u20AC para finalizar el camino.",qft="Calibraci\xF3n",Xft="Rastree y valide su patr\xF3n",$ft="Para poder utilizar la herramienta de medici\xF3n, aseg\xFArese de haber calibrado su plano.",ewt="Seleccionar un modelo para poder realizar mediciones",twt="El n\xFAmero debe ser necesariamente positivo",iwt="Plano calibrado de forma correcta",owt={save_measurements:Yft,distance_measurement:Qft,angle_measurement:Gft,surface_measurement:Hft,path_measurement:Vft,empty:Zft,rename:Jft,update_color:Wft,tooltip:Kft,validate_path:_ft,calibrate:qft,calibrating:Xft,not_calibrated:$ft,no_model:ewt,modal_error:twt,calibration_success:iwt},rwt="Sauvegarder",swt="Distance",nwt="Angle",awt="Surface",lwt="Chemin",cwt="Vous n\u2019avez actuellement aucune mesure enregistr\xE9e.",uwt="Renommer",dwt="Modifier la couleur",hwt="Outil de mesure",pwt="Cliquer sur \u201Cvalider\u201D pour terminer le trac\xE9.",Awt="Etalonnage",gwt="Veuillez tra\xE7er et valider votre \xE9talon",Mwt="Pour pouvoir utiliser l\u2019outil de mesure, assurez-vous d\u2019avoir calibr\xE9 votre plan.",fwt="Selectionner un model pour pouvoir r\xE9aliser des mesures",wwt="Doit \xEAtre un nombre strictement positif",Lwt="Plan calibr\xE9 avec succ\xE8s",mwt={save_measurements:rwt,distance_measurement:swt,angle_measurement:nwt,surface_measurement:awt,path_measurement:lwt,empty:cwt,rename:uwt,update_color:dwt,tooltip:hwt,validate_path:pwt,calibrate:Awt,calibrating:gwt,not_calibrated:Mwt,no_model:fwt,modal_error:wwt,calibration_success:Lwt},ywt="Salva",vwt="Distanza",Cwt="Angolo",Iwt="Superficie",jwt="Percorso",bwt="Attualmente non hai misure salvate.",xwt="Rinomina",Dwt="Cambia colore",Nwt="Strumento di misura",Swt='Clicca su "OK" per completare il percorso.',kwt="Calibrazione",Twt="Indica e conferma il tuo campione",Ewt="Per poter utilizzare lo strumento di misurazione, assicurati di aver calibrato il tuo progetto.",zwt="Seleziona un modello per eseguire delle misurazioni",Pwt="Deve essere un numero positivo",Bwt="Progetto calibrato correttamente",Owt={save_measurements:ywt,distance_measurement:vwt,angle_measurement:Cwt,surface_measurement:Iwt,path_measurement:jwt,empty:bwt,rename:xwt,update_color:Dwt,tooltip:Nwt,validate_path:Swt,calibrate:kwt,calibrating:Twt,not_calibrated:Ewt,no_model:zwt,modal_error:Pwt,calibration_success:Bwt},Rwt={name:"measure2d",i18n:{de:Cft,en:Fft,es:owt,fr:mwt,it:Owt},component:nft,addToWindows:["2d","dwg","plan"],button:{tooltip:"measure2d.tooltip",position:"right",content:"panel",keepOpen:!0,icon:{component:"BIMDataIconMeasure",options:{size:"m"}}}},Uwt={name:"BIMDataMeasure3D",components:{BIMDataEmpty:Op,ColorSelector:b9},data(){return{selectedMeasurementPlugin:null,currentPlugin:null,isUpdated:!1,measurements:[],distanceMeasurementId:1,angleMeasurementId:1,spacingMeasurementId:1,spacingMeasurementEnabled:!1}},computed:{displayedMeasurements(){const t=this.$viewer.localContext.loadedModelIds;return this.measurements.filter(e=>e.modelIds.some(i=>t.includes(i)))}},watch:{selectedMeasurementPlugin(t,e){e&&this.plugins.get(e).control.deactivate(),t&&this.plugins.get(t).control.activate()},displayedMeasurements(t){this.measurements.forEach(e=>{e.visible=t.includes(e)})}},mounted(){const t=this.$viewer.localContext.pluginComponentInstances.get("viewer3d")||this.$viewer.localContext.pluginComponentInstances.get("pointCloud");if(!t){const o="Measure3D plugin cannot work without viewer3d or tileset plugin.";throw console.error(o),new Error(o)}this.viewer3d=t,this.spacingMeasurementEnabled=t.spacingMeasurementsPlugin,this.plugins=new Map,this.plugins.set("distance",t.distanceMeasurementsPlugin),this.plugins.set("angle",t.angleMeasurementsPlugin),this.spacingMeasurementEnabled&&this.plugins.set("spacing",t.spacingMeasurementsPlugin),this.updateCurrentColor();const e=Object.values(this.viewer3d.distanceMeasurementsPlugin.measurements).map(this.makeDistanceMeasurement),i=Object.values(this.viewer3d.angleMeasurementsPlugin.measurements).map(this.makeAngleMeasurement);if(this.measurements=[...e,...i],this.spacingMeasurementEnabled){const o=Object.values(this.viewer3d.spacingMeasurementsPlugin.measurements).map(this.makeSpacingMeasurement);this.measurements.push(...o)}this.distanceMeasurementSubscription=this.viewer3d.distanceMeasurementsPlugin.on("measurementEnd",o=>{this.measurements.push(this.makeDistanceMeasurement(o)),this.selectedMeasurementPlugin=null,this.updateCurrentColor()}),this.angleMeasurementSubscription=this.viewer3d.angleMeasurementsPlugin.on("measurementEnd",o=>{this.measurements.push(this.makeAngleMeasurement(o)),this.selectedMeasurementPlugin=null,this.updateCurrentColor()}),this.spacingMeasurementEnabled&&(this.spacingMeasurementSubscription=this.viewer3d.spacingMeasurementsPlugin.on("measurementEnd",o=>{this.measurements.push(this.makeSpacingMeasurement(o)),this.selectedMeasurementPlugin=null,this.updateCurrentColor()}))},onOpen(){this.viewer3d.highlightOnHover=!1,this.viewer3d.selectOnClick=!1,document.addEventListener("keydown",this.onKeyDown)},onClose(){if(this.viewer3d.highlightOnHover=!0,this.viewer3d.selectOnClick=!0,this.selectedMeasurementPlugin){const t=this.plugins.get(this.selectedMeasurementPlugin);t?.control.deactivate()}document.removeEventListener("keydown",this.onKeyDown),this.selectedMeasurementPlugin=null},unmounted(){var t;this.viewer3d.distanceMeasurementsPlugin.off(this.distanceMeasurementSubscription),this.viewer3d.angleMeasurementsPlugin.off(this.angleMeasurementSubscription),(t=this.viewer3d.spacingMeasurementsPlugin)==null||t.off(this.spacingMeasurementSubscription)},methods:{onTagClick(t){this.measurements.filter(e=>e!==t).forEach(e=>e.colorEditing=!1),t.colorEditing=!0,this.isUpdated=!0},updateCurrentColor(){this.currentColor=Ph(),this.plugins.forEach(t=>t.defaultColor=`#${this.currentColor.toString(16).padStart(6,0)}`)},onElementNameClick(t){t.nameEditing=!0,this.isUpdated=!0,this.$nextTick(()=>{this.$refs.elementInput&&this.$refs.elementInput.focus()})},onInputBlur(t){t.nameEditing=!1},onAddMeasurementClick(t){this.selectedMeasurementPlugin===t?this.selectedMeasurementPlugin=null:this.selectedMeasurementPlugin=t},onKeyDown(t){t.key==="Escape"&&this.onEscapeDown()},onEscapeDown(){this.selectedMeasurementPlugin=null,this.measurements.forEach(t=>{t.nameEditing=!1,t.colorEditing=!1})},onHideMeasurementClick(t){t.visible=!t.visible},onDeleteMeasurementClick(t){t.destroy(),this.measurements.splice(this.measurements.indexOf(t),1),this.isUpdated=!0},makeAngleMeasurement(t){return this.makeMeasurement(t,`angle-${this.angleMeasurementId++}`,t.angle.toFixed(2),"\xB0","angle",t.color)},makeDistanceMeasurement(t){return this.makeMeasurement(t,`distance-${this.distanceMeasurementId++}`,t.length.toFixed(2),"m","distance",t.color)},makeSpacingMeasurement(t){return this.makeMeasurement(t,`spacing-${this.spacingMeasurementId++}`,t.length.toFixed(2),"m","spacing",t.color)},makeMeasurement(t,e,i,o,r,n){let s=!0,a=!1,l=n;return{nameEditing:!1,get visible(){return s},set visible(c){s=c,t.visible=c},colorEditing:!1,get color(){return l},set color(c){l=c,t.color=c},name:e,value:i,unit:o,type:r,modelIds:this.$viewer.localContext.loadedModelIds,destroy(){a||(t.destroy(),a=!0)},get destroyed(){return a}}}}},Fwt={class:"bimdata-measure3d"},Ywt={class:"bimdata-measure3d__actions"},Qwt={class:"bimdata-measure3d__content"},Gwt={class:"bimdata-measure3d__list__element"},Hwt={class:"bimdata-measure3d__list__element__label"},Vwt=["onClick"],Zwt={class:"bimdata-measure3d__list__element__tag"},Jwt=["onClick"],Wwt={class:"bimdata-measure3d__list__element__buttons"};function Kwt(t,e,i,o,r,n){const s=z("BIMDataIconDistance"),a=z("BIMDataButton"),l=z("BIMDataIconAngle"),c=z("BIMDataIcon"),u=z("BIMDataIllustration"),d=z("BIMDataEmpty"),h=z("BIMDataInput"),p=z("ColorSelector"),g=z("BIMDataIconHide"),A=z("BIMDataIconShow"),M=z("BIMDataIconDelete"),f=z("BIMDataPaginatedList"),L=Yi("click-away");return D(),U("div",Fwt,[v("div",Ywt,[O(a,{color:r.selectedMeasurementPlugin==="distance"?"primary":"default",fill:"",radius:"",onClick:e[0]||(e[0]=w=>n.onAddMeasurementClick("distance"))},{default:J(()=>[O(s,{size:"s",margin:"0 6px 0 0"}),v("span",null," + "+X(t.$t("measure3d.distance_measurement")),1)]),_:1},8,["color"]),O(a,{color:r.selectedMeasurementPlugin==="angle"?"primary":"default",fill:"",radius:"",onClick:e[1]||(e[1]=w=>n.onAddMeasurementClick("angle"))},{default:J(()=>[O(l,{size:"s",margin:"0 6px 0 0"}),v("span",null," + "+X(t.$t("measure3d.angle_measurement")),1)]),_:1},8,["color"]),r.spacingMeasurementEnabled?(D(),oe(a,{key:0,color:r.selectedMeasurementPlugin==="spacing"?"primary":"default",fill:"",radius:"",onClick:e[2]||(e[2]=w=>n.onAddMeasurementClick("spacing"))},{default:J(()=>[O(c,{name:"spacing",size:"xs",margin:"0 6px 0 0"}),v("span",null," + "+X(t.$t("measure3d.spacing_measurement")),1)]),_:1},8,["color"])):be("",!0)]),v("div",Qwt,[O(f,{list:n.displayedMeasurements,"element-key":"id",style:{overflow:"unset"}},{empty:J(()=>[O(d,{message:t.$t("measure3d.empty")},{default:J(()=>[O(u,{name:"emptyBucket"})]),_:1},8,["message"])]),element:J(({element:w})=>[v("div",Gwt,[v("div",Hwt,[O(c,{name:w.type,size:"m",margin:"0 12px 0 0"},null,8,["name"]),w.nameEditing?(D(),oe(h,{key:0,ref:"elementInput",modelValue:w.name,"onUpdate:modelValue":m=>w.name=m,onBlur:m=>w.nameEditing=!1,onKeypress:si(m=>w.nameEditing=!1,["enter"])},null,8,["modelValue","onUpdate:modelValue","onBlur","onKeypress"])):(D(),U("span",{key:1,onClick:m=>n.onElementNameClick(w)},X(w.name),9,Vwt))]),v("div",Zwt,[v("span",{class:"bimdata-measure3d__list__element__tag__content",style:Se(`color: ${w.color}; background-color: ${w.color}20;`),onClick:m=>n.onTagClick(w)},X(w.value)+" "+X(w.unit),13,Jwt),w.colorEditing?Tt((D(),oe(p,{key:0,class:"bimdata-measure3d__list__element__tag__color-selector","selected-color":parseInt(w.color.slice(1),16),onColorSelect:m=>{w.color=`#${m.value.toString(16).padStart(6,0)}`,w.colorEditing=!1}},null,8,["selected-color","onColorSelect"])),[[L,()=>{w.colorEditing=!1}]]):be("",!0)]),v("div",Wwt,[O(a,{icon:"",class:"m-r-6",color:"granite",ghost:"",radius:"",onClick:m=>n.onHideMeasurementClick(w)},{default:J(()=>[w.visible?(D(),oe(g,{key:0,size:"s"})):(D(),oe(A,{key:1,size:"s"}))]),_:2},1032,["onClick"]),O(a,{icon:"",ghost:"",radius:"",color:"granite",onClick:m=>n.onDeleteMeasurementClick(w)},{default:J(()=>[O(M,{size:"m"})]),_:2},1032,["onClick"])])])]),_:1},8,["list"])])])}const _wt=W(Uwt,[["render",Kwt],["__scopeId","data-v-b6e2d727"]]),qwt="Entfernungs",Xwt="Winkel",$wt="Messung",eLt="Keine Messung",tLt={distance_measurement:qwt,angle_measurement:Xwt,tooltip:$wt,empty:eLt},iLt="Distance",oLt="Angle",rLt="Measurement",sLt="No measure",nLt="Spacing",aLt={distance_measurement:iLt,angle_measurement:oLt,tooltip:rLt,empty:sLt,spacing_measurement:nLt},lLt="Distancia",cLt="Angular",uLt="Medici\xF3n",dLt="Sin mediciones",hLt={distance_measurement:lLt,angle_measurement:cLt,tooltip:uLt,empty:dLt},pLt="Distance",ALt="Angle",gLt="Espacement",MLt="Mesure",fLt="Pas de mesure",wLt={distance_measurement:pLt,angle_measurement:ALt,spacing_measurement:gLt,tooltip:MLt,empty:fLt},LLt="Distanza",mLt="Angolo",yLt="Misura",vLt="Nessuna misurazione",CLt={distance_measurement:LLt,angle_measurement:mLt,tooltip:yLt,empty:vLt},ILt={name:"measure3d",i18n:{de:tLt,en:aLt,es:hLt,fr:wLt,it:CLt},component:_wt,addToWindows:["3d"],button:{tooltip:"measure3d.tooltip",position:"right",content:"panel",keepOpen:!0,icon:{component:"BIMDataIconMeasure",options:{size:"m"}}}},jLt={render(){return null},async onOpen(){try{const t=this.$viewer.localContext.pluginComponentInstances.get("plan"),e=t.$viewer.localContext.loadedModels[0],i=t.pdfPages;if(e)if(i?.length>0){const{format:o,scale:r}=this.$plugin.settings;(await t.exportAsPDF({format:o,scale:r})).save("pdf-export.pdf")}else{await this.$viewer.localContext.hideUI(),this.$viewer.globalContext.loadingProcessStart();const o=document.createElement("a");o.href=await t.exportAsJPG(),o.download="jpg-export.jpeg",o.click(),o.remove(),this.$viewer.globalContext.loadingProcessEnd(),this.$viewer.localContext.showUI()}setTimeout(()=>this.$close())}catch(t){console.error(t)}}},bLt="data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWlkWU1pZCBtZWV0IgogIHZpZXdCb3g9Ii01IC01IDM0IDM0Igo+CiAgPHBhdGgKICAgIGZpbGw9IiMyRjM3NEEiCiAgICBkPSJNMTguNTQzOCA5Ljc3ODA4QzE3Ljg5MjEgNi40NzE4MyAxNC45ODgzIDMuOTg5NzUgMTEuNSAzLjk4OTc1QzguNzMwNDIgMy45ODk3NSA2LjMyNSA1LjU2MTQxIDUuMTI3MDggNy44NjE0MUMyLjI0MjUgOC4xNjgwOCAwIDEwLjYxMTggMCAxMy41NzMxQzAgMTYuNzQ1MiAyLjU3NzkyIDE5LjMyMzEgNS43NSAxOS4zMjMxSDE4LjIwODNDMjAuODUzMyAxOS4zMjMxIDIzIDE3LjE3NjQgMjMgMTQuNTMxNEMyMyAxMi4wMDE0IDIxLjAzNTQgOS45NTA1OCAxOC41NDM4IDkuNzc4MDhaTTE2LjI5MTcgMTIuNjE0N0wxMS41IDE3LjQwNjRMNi43MDgzMyAxMi42MTQ3SDkuNTgzMzNWOC43ODE0MUgxMy40MTY3VjEyLjYxNDdIMTYuMjkxN1oiCiAgLz4KPC9zdmc+",xLt={name:"pdfExport",component:jLt,addToWindows:["plan"],button:{position:"right",tooltip:"pdfExport.title",icon:{imgUri:bLt}},i18n:{en:{title:"PDF Export",loadingMsg:"Generating PDF...",loadingSubMsg:"( page {page} of {total} )"},fr:{title:"Export PDF",loadingMsg:"G\xE9n\xE9ration du document PDF...",loadingSubMsg:"( page {page} sur {total} )"}}},DLt={props:{width:{type:String,default:"32px"},height:{type:String,default:"32px"},accept:{type:String,default:""}},emits:["change"],methods:{onClick(){this.$refs.input.click()},onFileChange(t){const e=t.target.files&&t.target.files[0]?t.target.files[0]:null;this.$emit("change",e)}}},NLt=["accept"];function SLt(t,e,i,o,r,n){const s=z("BIMDataIconAddFile"),a=z("BIMDataButton");return D(),oe(a,{style:{padding:"5px"},width:i.width,height:i.height,color:"primary",outline:"",radius:"",icon:"",onClick:n.onClick},{default:J(()=>[O(s,{size:"xs"}),Ct(t.$slots,"default"),v("input",{ref:"input",type:"file",hidden:"",accept:i.accept,onChange:e[0]||(e[0]=(...l)=>n.onFileChange&&n.onFileChange(...l))},null,40,NLt)]),_:3},8,["width","height","onClick"])}const kLt=W(DLt,[["render",SLt]]),TLt={inject:["$viewer"],props:{singleSelectMode:{type:Boolean,default:!1},multiSelectMode:{type:Boolean,default:!1},headerButtons:{type:Boolean,default:!0},headerSearch:{type:Boolean,default:!0},alreadySelectedIds:{type:Array,default:()=>[]},selectableFileTypes:{type:Array,default:()=>[]}},emits:["selection-change"],data(){return{apiUrl:null,archiveUrl:null,spaceId:null,projectId:null,accessToken:null}},computed:{selectMode(){return this.singleSelectMode||this.multiSelectMode}},created(){this.apiUrl=this.$viewer.api.apiUrl,this.archiveUrl=this.$viewer.api.archiveUrl,this.projectId=this.$viewer.api.projectId,this.spaceId=this.$viewer.api.cloudId,this.accessToken=this.$viewer.api.accessToken},methods:{onError(t){this.$viewer.localContext.hub.emit("alert",{type:"error",message:t&&t.message})},onSuccess(t){this.$viewer.localContext.hub.emit("alert",{type:"success",message:t&&t.message})},onSelectionChange(t){const e=t.map(({document:i})=>i);this.$emit("selection-change",e)}}};function ELt(t,e,i,o,r,n){const s=z("BIMDataFileManager");return D(),oe(s,{ref:"fileManager",class:"bimdata_ged","space-id":r.spaceId,"project-id":r.projectId,"api-url":r.apiUrl,"archive-url":r.archiveUrl,"access-token":r.accessToken,select:n.selectMode,multi:i.multiSelectMode,"header-buttons":i.headerButtons,"header-search":i.headerSearch,locale:t.$i18n.locale,"already-selected-ids":i.alreadySelectedIds,"selectable-file-types":i.selectableFileTypes,"view-pdf":"",onSelectionChange:n.onSelectionChange,onError:n.onError,onSuccess:n.onSuccess},null,8,["space-id","project-id","api-url","archive-url","access-token","select","multi","header-buttons","header-search","locale","already-selected-ids","selectable-file-types","onSelectionChange","onError","onSuccess"])}const FC=W(TLt,[["render",ELt]]),zLt={components:{FileInput:kLt,BIMDataGED:FC},data(){return{file:null,isGedOpen:!1,pdfToView:null}},computed:{pdfUrl(){return this.file?window.URL.createObjectURL(this.file):null}},methods:{onOpenGedClick(){this.isGedOpen=!this.isGedOpen},onCloseClick(){this.file=null,this.pdfToView=null},back(){this.isGedOpen=!1},async loadFile(t){t.name?this.pdfToView=t:this.pdfToView=this.file,this.back()}}},PLt={class:"pdf-viewer"},BLt={class:"pdf-viewer__content"},OLt={key:1},RLt={key:0,class:"pdf-viewer__content--empty"},ULt={class:"flex items-center justify-center m-t-18"},FLt={class:"m-l-6"},YLt={class:"m-l-6"},QLt={key:1,class:"pdf-viewer__content--ged"},GLt={class:"p-x-12"},HLt={class:"pdf-viewer__content--ged__buttons flex items-center justify-between"};function VLt(t,e,i,o,r,n){const s=z("BIMDataIconArrow"),a=z("BIMDataButton"),l=z("BIMDataPDFViewer",!0),c=z("BIMDataIllustration"),u=z("FileInput"),d=z("BIMDataIconFolder"),h=z("BIMDataGED");return D(),U("div",PLt,[v("div",BLt,[r.pdfToView?(D(),oe(l,{key:0,pdf:r.pdfToView,header:""},{"header-left":J(()=>[O(a,{class:"m-l-12",width:"32px",height:"32px",color:"primary",ghost:"",radius:"",icon:"",onClick:n.onCloseClick},{default:J(()=>[O(s,{size:"xxs"})]),_:1},8,["onClick"])]),_:1},8,["pdf"])):(D(),U("div",OLt,[r.isGedOpen?be("",!0):(D(),U("div",RLt,[O(c,{name:"emptyPdf",x:"90",y:"90"}),v("h3",null,X(t.$t("pdf.title")),1),v("div",ULt,[O(u,{accept:"application/pdf",onChange:n.loadFile},{default:J(()=>[v("div",FLt,X(t.$t("pdf.empty")),1)]),_:1},8,["onChange"]),O(a,{class:"m-l-12",color:"primary",outline:"",radius:"",onClick:n.onOpenGedClick},{default:J(()=>[O(d,{fill:"",color:"default",size:"xxs"}),v("span",YLt,X(t.$t("pdf.openGed")),1)]),_:1},8,["onClick"])])])),r.isGedOpen?(D(),U("div",QLt,[v("div",null,[v("h3",GLt,X(t.$t("pdf.title")),1)]),O(h,{"header-buttons":!0,"single-select-mode":"","selectable-file-types":["pdf"],onSelectionChange:e[0]||(e[0]=p=>r.file=p[0])}),v("div",HLt,[O(a,{class:"pdf-viewer__content--ged__validate",outline:"",color:"primary",radius:"",width:"48%",onClick:n.back},{default:J(()=>[v("span",null,X(t.$t("pdf.cancel")),1)]),_:1},8,["onClick"]),O(a,{class:"pdf-viewer__content--ged__validate",fill:"",color:"primary",radius:"",width:"48%",onClick:n.loadFile},{default:J(()=>[v("span",null,X(t.$t("pdf.validate")),1)]),_:1},8,["onClick"])])])):be("",!0)]))])])}const ZLt=W(zLt,[["render",VLt],["__scopeId","data-v-68ab9d79"]]),JLt="PDF-Viewer",WLt="Bitte w\xE4hlen Sie eine Datei aus oder legen Sie sie in diesem Fenster ab.",KLt={window_label:JLt,empty:WLt},_Lt="PDF Viewer",qLt="No file selected. Please select a file or drag it on the window.",XLt="PDF Viewer",$Lt="Files",emt="Cancel",tmt="Validate",imt={window_label:_Lt,empty:qLt,title:XLt,openGed:$Lt,cancel:emt,validate:tmt},omt="Visor de PDF",rmt="No hay ning\xFAn archivo seleccionado. Seleccione un archivo o arr\xE1strelo a la ventana.",smt={window_label:omt,empty:rmt},nmt="Visionneuse PDF",amt="Selectionner un fichier",lmt="Visionneuse PDF",cmt="Ouvrir la GED",umt="Annuler",dmt="Valider",hmt={window_label:nmt,empty:amt,title:lmt,openGed:cmt,cancel:umt,validate:dmt},pmt="Visualizzatore PDF",Amt="Seleziona un file.",gmt={window_label:pmt,empty:Amt},Mmt="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjMiIHZpZXdCb3g9IjAgMCAyMiAyMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00LjAxMjQ0IDcuOTA2MjVMMTAuMTIxOCAxLjc5Njg4VjUuOTcyNDVWNy45MDYyNUg0LjAxMjQ0Wk0yMC4zODg1IDIuM0MyMC4zODg1IDEuMDM1IDE5LjM2NSAwIDE4LjEgMEg4LjlMMiA2LjlWMjAuN0MyIDIxLjk2NSAzLjAzNDY0IDIzIDQuMyAyM0gxOC4xMTE1QzE5LjM3NjUgMjMgMjAuNCAyMS45NjUgMjAuNCAyMC43TDIwLjM4ODUgMi4zWiIgZmlsbD0iIzJGMzc0QSIvPgo8cmVjdCB5PSIxMiIgd2lkdGg9IjIyIiBoZWlnaHQ9IjkiIHJ4PSIxIiBmaWxsPSIjRkYwMDAwIi8+CjxwYXRoIGQ9Ik0zLjg4MDg2IDE3LjQ5NTFWMjBIMi40MTYwMlYxMi44OTA2SDUuMTg5NDVDNS43MjMzMSAxMi44OTA2IDYuMTkyMDYgMTIuOTg4MyA2LjU5NTcgMTMuMTgzNkM3LjAwMjYgMTMuMzc4OSA3LjMxNTEgMTMuNjU3MiA3LjUzMzIgMTQuMDE4NkM3Ljc1MTMgMTQuMzc2NiA3Ljg2MDM1IDE0Ljc4NTIgNy44NjAzNSAxNS4yNDQxQzcuODYwMzUgMTUuOTQwOCA3LjYyMTA5IDE2LjQ5MDkgNy4xNDI1OCAxNi44OTQ1QzYuNjY3MzIgMTcuMjk0OSA2LjAwODE0IDE3LjQ5NTEgNS4xNjUwNCAxNy40OTUxSDMuODgwODZaTTMuODgwODYgMTYuMzA4Nkg1LjE4OTQ1QzUuNTc2ODIgMTYuMzA4NiA1Ljg3MTQyIDE2LjIxNzQgNi4wNzMyNCAxNi4wMzUyQzYuMjc4MzIgMTUuODUyOSA2LjM4MDg2IDE1LjU5MjQgNi4zODA4NiAxNS4yNTM5QzYuMzgwODYgMTQuOTA1NiA2LjI3ODMyIDE0LjYyNCA2LjA3MzI0IDE0LjQwOTJDNS44NjgxNiAxNC4xOTQzIDUuNTg0OTYgMTQuMDgzNyA1LjIyMzYzIDE0LjA3NzFIMy44ODA4NlYxNi4zMDg2Wk04Ljg3MTA5IDIwVjEyLjg5MDZIMTEuMDU4NkMxMS42ODM2IDEyLjg5MDYgMTIuMjQxOSAxMy4wMzIyIDEyLjczMzQgMTMuMzE1NEMxMy4yMjgyIDEzLjU5NTQgMTMuNjEzOSAxMy45OTU4IDEzLjg5MDYgMTQuNTE2NkMxNC4xNjczIDE1LjAzNDIgMTQuMzA1NyAxNS42MjM0IDE0LjMwNTcgMTYuMjg0MlYxNi42MTEzQzE0LjMwNTcgMTcuMjcyMSAxNC4xNjg5IDE3Ljg1OTcgMTMuODk1NSAxOC4zNzRDMTMuNjI1MyAxOC44ODgzIDEzLjI0MjggMTkuMjg3MSAxMi43NDggMTkuNTcwM0MxMi4yNTMzIDE5Ljg1MzUgMTEuNjk1IDE5Ljk5NjcgMTEuMDczMiAyMEg4Ljg3MTA5Wk0xMC4zMzU5IDE0LjA3NzFWMTguODIzMkgxMS4wNDM5QzExLjYxNjkgMTguODIzMiAxMi4wNTQ3IDE4LjYzNjEgMTIuMzU3NCAxOC4yNjE3QzEyLjY2MDIgMTcuODg3NCAxMi44MTQ4IDE3LjM1MTkgMTIuODIxMyAxNi42NTUzVjE2LjI3OTNDMTIuODIxMyAxNS41NTY2IDEyLjY3MTUgMTUuMDA5OCAxMi4zNzIxIDE0LjYzODdDMTIuMDcyNiAxNC4yNjQzIDExLjYzNDggMTQuMDc3MSAxMS4wNTg2IDE0LjA3NzFIMTAuMzM1OVpNMTkuNjUyMyAxNy4wOTQ3SDE2LjgzOThWMjBIMTUuMzc1VjEyLjg5MDZIMjAuMDAzOVYxNC4wNzcxSDE2LjgzOThWMTUuOTEzMUgxOS42NTIzVjE3LjA5NDdaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K",fmt={name:"pdf",i18n:{de:KLt,en:imt,es:smt,fr:hmt,it:gmt},component:ZLt,window:{name:"pdf",noModel:!0,label:"pdf.window_label",icon:{imgUri:Mmt}}};function wmt(t){return function(e){return t?.[e]}}var Lmt=wmt,mmt=Lmt,ymt={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},vmt=mmt(ymt),Cmt=vmt,Imt=typeof pr=="object"&&pr&&pr.Object===Object&&pr,eH=Imt,jmt=eH,bmt=typeof self=="object"&&self&&self.Object===Object&&self,xmt=jmt||bmt||Function("return this")(),Fc=xmt,Dmt=Fc,Nmt=Dmt.Symbol,YC=Nmt;function Smt(t,e){for(var i=-1,o=t==null?0:t.length,r=Array(o);++i<o;)r[i]=e(t[i],i,t);return r}var kmt=Smt,Tmt=Array.isArray,QC=Tmt,tH=YC,iH=Object.prototype,Emt=iH.hasOwnProperty,zmt=iH.toString,Nw=tH?tH.toStringTag:void 0;function Pmt(t){var e=Emt.call(t,Nw),i=t[Nw];try{t[Nw]=void 0;var o=!0}catch{}var r=zmt.call(t);return o&&(e?t[Nw]=i:delete t[Nw]),r}var Bmt=Pmt,Omt=Object.prototype,Rmt=Omt.toString;function Umt(t){return Rmt.call(t)}var Fmt=Umt,oH=YC,Ymt=Bmt,Qmt=Fmt,Gmt="[object Null]",Hmt="[object Undefined]",rH=oH?oH.toStringTag:void 0;function Vmt(t){return t==null?t===void 0?Hmt:Gmt:rH&&rH in Object(t)?Ymt(t):Qmt(t)}var Sw=Vmt;function Zmt(t){return t!=null&&typeof t=="object"}var dg=Zmt,Jmt=Sw,Wmt=dg,Kmt="[object Symbol]";function _mt(t){return typeof t=="symbol"||Wmt(t)&&Jmt(t)==Kmt}var qmt=_mt,sH=YC,Xmt=kmt,$mt=QC,e2t=qmt,t2t=1/0,nH=sH?sH.prototype:void 0,aH=nH?nH.toString:void 0;function lH(t){if(typeof t=="string")return t;if($mt(t))return Xmt(t,lH)+"";if(e2t(t))return aH?aH.call(t):"";var e=t+"";return e=="0"&&1/t==-t2t?"-0":e}var i2t=lH,o2t=i2t;function r2t(t){return t==null?"":o2t(t)}var s2t=r2t,n2t=Cmt,a2t=s2t,l2t=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,c2t="\\u0300-\\u036f",u2t="\\ufe20-\\ufe2f",d2t="\\u20d0-\\u20ff",h2t=c2t+u2t+d2t,p2t="["+h2t+"]",A2t=RegExp(p2t,"g");function g2t(t){return t=a2t(t),t&&t.replace(l2t,n2t).replace(A2t,"")}var M2t=g2t;const cH=Pp(M2t),f2t=Object.freeze({IfcAbsorbedDoseMeasure:"decimal_number",IfcAccelerationMeasure:"decimal_number",IfcAmountOfSubstanceMeasure:"decimal_number",IfcAngularVelocityMeasure:"decimal_number",IfcAreaDensityMeasure:"decimal_number",IfcAreaMeasure:"decimal_number",IfcBinary:"string",IfcBoolean:"boolean",IfcComplexNumber:"string",IfcCompoundPlaneAngleMeasure:"string",IfcContextDependentMeasure:"decimal_number",IfcCountMeasure:"integer",IfcCurvatureMeasure:"decimal_number",IfcDescriptiveMeasure:"string",IfcDoseEquivalentMeasure:"decimal_number",IfcDynamicViscosityMeasure:"decimal_number",IfcElectricCapacitanceMeasure:"decimal_number",IfcElectricChargeMeasure:"decimal_number",IfcElectricConductanceMeasure:"decimal_number",IfcElectricCurrentMeasure:"decimal_number",IfcElectricResistanceMeasure:"decimal_number",IfcElectricVoltageMeasure:"decimal_number",IfcEnergyMeasure:"decimal_number",IfcForceMeasure:"decimal_number",IfcFrequencyMeasure:"decimal_number",IfcHeatFluxDensityMeasure:"decimal_number",IfcHeatingValueMeasure:"decimal_number",IfcIdentifier:"string_max255",IfcIlluminanceMeasure:"decimal_number",IfcInductanceMeasure:"decimal_number",IfcInteger:"integer",IfcIntegerCountRateMeasure:"integer",IfcIonConcentrationMeasure:"decimal_number",IfcIsothermalMoistureCapacityMeasure:"decimal_number",IfcKinematicViscosityMeasure:"decimal_number",IfcLabel:"string_max255",IfcLengthMeasure:"decimal_number",IfcLinearForceMeasure:"decimal_number",IfcLinearMomentMeasure:"decimal_number",IfcLinearStiffnessMeasure:"decimal_number",IfcLinearVelocityMeasure:"decimal_number",IfcLogical:"logical",IfcLuminousFluxMeasure:"decimal_number",IfcLuminousIntensityDistributionMeasure:"decimal_number",IfcLuminousIntensityMeasure:"decimal_number",IfcMagneticFluxDensityMeasure:"decimal_number",IfcMagneticFluxMeasure:"decimal_number",IfcMassDensityMeasure:"decimal_number",IfcMassFlowRateMeasure:"decimal_number",IfcMassMeasure:"decimal_number",IfcMassPerLengthMeasure:"decimal_number",IfcMeasureValue:"decimal_number",IfcModulusOfElasticityMeasure:"decimal_number",IfcModulusOfLinearSubgradeReactionMeasure:"decimal_number",IfcModulusOfRotationalSubgradeReactionMeasure:"decimal_number",IfcModulusOfSubgradeReactionMeasure:"decimal_number",IfcMoistureDiffusivityMeasure:"decimal_number",IfcMolecularWeightMeasure:"decimal_number",IfcMomentOfInertiaMeasure:"decimal_number",IfcMonetaryMeasure:"decimal_number",IfcMonetaryUnit:"string_max255",IfcNonNegativeLengthMeasure:"positive_decimal_number",IfcNormalisedRatioMeasure:"decimal_range_0_1",IfcNumericMeasure:"integer",IfcParameterValue:"decimal_number",IfcPHMeasure:"decimal_range_0_14",IfcPlanarForceMeasure:"decimal_number",IfcPlaneAngleMeasure:"decimal_number",IfcPositiveInteger:"positive_integer",IfcPositiveLengthMeasure:"positive_decimal_number",IfcPositivePlaneAngleMeasure:"positive_decimal_number",IfcPositiveRatioMeasure:"positive_decimal_number",IfcPowerMeasure:"decimal_number",IfcPressureMeasure:"decimal_number",IfcRadioActivityMeasure:"decimal_number",IfcRatioMeasure:"decimal_number",IfcReal:"decimal_number",IfcRotationalFrequencyMeasure:"decimal_number",IfcRotationalMassMeasure:"decimal_number",IfcRotationalStiffnessMeasure:"decimal_number",IfcSectionalAreaIntegralMeasure:"decimal_number",IfcSectionModulusMeasure:"decimal_number",IfcShearModulusMeasure:"decimal_number",IfcSolidAngleMeasure:"decimal_number",IfcSoundPowerLevelMeasure:"decimal_number",IfcText:"string"}),w2t={name:"EditableLabel",props:{disabled:{type:Boolean,default:!1},cancelOnClickAway:{type:Boolean,default:!0},editOnClick:{type:Boolean,default:!0},editOnRightClick:{type:Boolean,default:!0},text:{type:[String,Number,Boolean],default:""},valueType:{type:String,default:"string"},units:{type:[String,Number,Boolean],default:""},validateCallback:{type:Function,default:()=>!0},validateCallbackArgs:{type:Array,default:()=>[]}},emits:["editing-start","editing-end"],data(){return{loading:!1,editedText:this.text,edit:!1,success:null,error:null,types:f2t}},watch:{edit(t){t?(this.editedText=this.text,this.$nextTick(()=>this.$refs.input.focus()),document.addEventListener("keydown",this.onKeyDown),this.$emit("editing-start")):(document.removeEventListener("keydown",this.onKeyDown),this.$emit("editing-end"))}},methods:{onKeyDown(t){t.keyCode===27?this.onCancel():t.keyCode===13&&!t.altKey&&!t.metaKey&&!t.ctrlKey&&!t.shiftKey&&this.onValidate()},onClick(){!this.disabled&&this.editOnClick&&!this.edit&&(this.edit=!0)},onRightClick(){const t=this.$viewer.contextMenu;t&&!this.disabled&&!this.loading&&this.editOnRightClick&&t.registerContextCommand({label:this.$t("global.edit"),execute:()=>this.edit=!0})},isIfcTypeFormatValid(t){switch(this.types[this.valueType]){case"decimal_number":{const e=+t;return!isNaN(e)&&typeof e=="number"}case"positive_decimal_number":{const e=+t;return!isNaN(e)&&typeof e=="number"&&e>=0}case"decimal_range_0_1":{const e=+t;return!isNaN(e)&&typeof e=="number"&&0>=e&&e<=1}case"decimal_range_0_14":{const e=+t;return!isNaN(e)&&typeof e=="number"&&0>=e&&e<=14}case"integer":{const e=+t;return!isNaN(e)&&typeof e=="number"&&Number.isInteger(e)}case"positive_integer":{const e=+t;return!isNaN(e)&&typeof e=="number"&&Number.isInteger(e)&&e>=0}case"string":return typeof t=="string";case"string_max255":return typeof t=="string"&&t.length<255;case"boolean":return typeof t=="boolean"||t==="true"||t==="false";case"logical":return typeof t=="boolean"||t==="true"||t==="false"||t==="null"||t===null}},async onValidate(){const t=typeof this.validateCallbackArgs=="object"&&typeof this.validateCallbackArgs[Symbol.iterator]=="function"?this.validateCallbackArgs:[this.validateCallbackArgs],e=this.validateCallback(this.editedText,this.isIfcTypeFormatValid(this.editedText),...t);let i=null;typeof e.then=="function"?(this.loading=!0,i=await e,this.loading=!1):i=e,this.edit=!1,i?(this.success=!0,setTimeout(()=>this.success=null,500)):(this.error=!0,setTimeout(()=>this.error=null,500))},onCancel(){this.edit=!1},isValidUrl(t){return typeof t=="string"&&t.match("://")},ifcTypeFormat(t){return this.types[t]??"string"}}},L2t={key:0,class:"editable-label__input"},m2t={class:"flex justify-between items-center"},y2t={key:0,class:"editable-label__input--buttons flex m-l-6"},v2t={class:"editable-label__text flex items-center"},C2t=["href"];function I2t(t,e,i,o,r,n){const s=z("BIMDataInput"),a=z("BIMDataIconValidate"),l=z("BIMDataButton"),c=z("BIMDataIconClose"),u=z("BIMDataIconEdit"),d=Yi("click-away");return Tt((D(),U("div",{class:Ne(["editable-label",{disabled:i.disabled}]),onClick:e[1]||(e[1]=(...h)=>n.onClick&&n.onClick(...h)),onContextmenu:e[2]||(e[2]=bt((...h)=>n.onRightClick&&n.onRightClick(...h),["right"]))},[r.edit?(D(),U("div",L2t,[v("div",m2t,[O(s,{ref:"input",modelValue:r.editedText,"onUpdate:modelValue":e[0]||(e[0]=h=>r.editedText=h),loading:r.loading,disabled:r.loading||i.disabled,margin:"0px"},null,8,["modelValue","loading","disabled"]),r.loading?be("",!0):(D(),U("div",y2t,[O(l,{color:"primary",ghost:"",rounded:"",icon:"",onClick:bt(n.onValidate,["stop"])},{default:J(()=>[O(a,{size:"xxs",class:"fill-primary"})]),_:1},8,["onClick"]),O(l,{color:"primary",ghost:"",rounded:"",icon:"",onClick:bt(n.onCancel,["stop"])},{default:J(()=>[O(c,{size:"xxxs",class:"fill-primary"})]),_:1},8,["onClick"])]))]),v("span",{class:Ne({error:!n.isIfcTypeFormatValid(r.editedText)})},X(t.$t("properties.requested_format"))+" "+X(t.$t(`properties.${n.ifcTypeFormat(i.valueType)}`)),3)])):be("",!0),v("div",v2t,[!r.edit&&i.editOnClick?(D(),oe(u,{key:0,size:"xxs",color:"granite",margin:"0 8px 0 0"})):be("",!0),!r.edit&&n.isValidUrl(i.text)?(D(),U("a",{key:1,target:"_blank",href:i.text},X(i.text),9,C2t)):be("",!0),!r.edit&&!n.isValidUrl(i.text)?(D(),U("span",{key:2,class:Ne({error:r.error,success:r.success})},X(`${i.text!=null?i.text:""} ${i.units}`),3)):be("",!0)])],34)),[[d,()=>i.cancelOnClickAway&&!r.loading&&(r.edit=!1)]])}const j2t=W(w2t,[["render",I2t]]),b2t={name:"BimdataProperties",components:{BIMDataEditableLabel:j2t},inject:["$viewer"],props:{editAllowed:{type:Boolean,default:!1},selectedObject:{type:Object,default:null}},data(){return{loading:!1,editLoading:!1,filter:"",highlightedProperties:[],displayedElement:null}},computed:{slugFilter(){return cH(this.filter).toLowerCase()}},watch:{highlightedProperties(){var t,e;this.highlightedProperties.length===0&&((e=(t=Object.values(this.$refs)[0])==null?void 0:t[0])==null||e.scrollIntoView())},selectedObject:{async handler(t){t?this.displayedElement=await this.getDisplayedElement(t):this.displayedElement=null},immediate:!0},filter(t){t?this.highlightedProperties=x2t(this.displayedElement.properties):this.highlightedProperties=[]}},created(){this.globalContextSubscription=this.$viewer.globalContext.hub.on("properties-update",this.onPropertiesEdited)},mounted(){document.addEventListener("keyup",this.onKeyUp)},unmounted(){document.removeEventListener("keyup",this.onKeyUp),this.$viewer.globalContext.hub.off(this.globalContextSubscription)},methods:{async onKeyUp(t){var e,i;if(t.key==="Enter"&&this.highlightedProperties.length>0){let o=(e=this.$refs[this.highlightedProperties[0].ref])==null?void 0:e[0];o||(this.highlightedProperties[0].parent.displayed=!0,await this.$nextTick(),o=(i=this.$refs[this.highlightedProperties[0].ref])==null?void 0:i[0]),o&&o.scrollIntoView(),this.highlightedProperties.push(this.highlightedProperties.shift())}},async onValidate(t,e,i,o){const r={...i,value:t};delete r.parent,this.editLoading=!0;try{const n=this.$viewer.api.cloudId,s=this.$viewer.api.projectId,a=this.displayedElement.stateObject.model.id;e?(await this.$viewer.api.apiClient.modelApi.updateElementPropertySetProperty(n,this.displayedElement.uuid,i.id,a,s,o,r),this.$viewer.localContext.hub.emit("alert",{type:"success",message:this.$t("properties.edit-success")}),this.refreshDisplayedElement(),this.$viewer.globalContext.hub.emit("properties-update",{object:this.displayedElement.stateObject,author:this})):this.$viewer.localContext.hub.emit("alert",{type:"error",message:this.$t("properties.invalid-format")})}catch{this.$viewer.localContext.hub.emit("alert",{type:"error",message:this.$t("properties.edit-error")})}finally{this.editLoading=!1}},async refreshDisplayedElement(){this.displayedElement=await this.getDisplayedElement(this.selectedObject)},async getDisplayedElement(t){let e=null;if(!t.uuid)console.warn("Impossible to show properties of the selected state object because it has no uuid.");else{this.loading=!0;try{const i=await this.$viewer.api.apiClient.modelApi.getElement(this.$viewer.api.cloudId,t.model.id,this.$viewer.api.projectId,t.uuid);e={properties:N2t(i,this),stateObject:t,uuid:t.uuid}}catch(i){console.error(i)}finally{this.loading=!1}}return e},onPropertiesEdited({object:t,author:e}){var i;e!==this&&((i=this.displayedElement)==null?void 0:i.uuid)===t.uuid&&this.refreshDisplayedElement()}}};function x2t(t){const e=[];return t.forEach(i=>{i.highlighted&&e.push(i),e.push(...i.children.filter(o=>o.highlighted))}),e}const uH={GRAY:"Gy",BECQUEREL:"Bq",MOLE:"mole",SQUARE_METRE:"m\xB2",FARAD:"F",DEGREE_CELSIUS:"\xBAC",DEGREE:"\xB0",SIEVERT:"Sv",COULOMB:"C",SIEMENS:"S",AMPERE:"A",VOLT:"V",OHM:"W",JOULE:"J",NEWTON:"N",HERTZ:"Hz",LUX:"lx",HENRY:"H",METRE:"m",LUMEN:"lm",CANDELA:"ld",WEBER:"Wb",TESLA:"T",GRAM:"g",RADIAN:"rad",WATT:"W",PASCAL:"Pa",STERADIAN:"sr",KELVIN:"K",SECOND:"s",CUBIC_METRE:"m\xB3"},dH={KILO:"k",DECA:"da",CENTI:"c",MILLI:"m",MEGA:"M",GIGA:"M",HECTO:"h",DEKA:"da",DECI:"d",MICRO:"\u03BC"};function hH({id:t,property_set_id:e,definition:i,value:o,nonEditable:r},n,s,a){var l,c;let u=((l=i.unit)==null?void 0:l.name)||"",d=((c=i.unit)==null?void 0:c.prefix)||"";d&&dH[d]&&(d=dH[d]),u&&uH[u]&&(u=uH[u]);let h=d+u,p;const g=`properties.attributes_name.${i.name}`,A=i.value_type;return a.name==="Attributs"&&s.$viewer.i18n.$te(g)?p=s.$viewer.i18n.$t(g):p=i.name,{id:t,ref:n,property_set_id:e,name:p,value:o,valueType:A,unit:h,nonEditable:r,searchContent:cH(`${p||""}${o||""} ${h}`).toLowerCase(),get highlighted(){return s.filter!==""&&this.searchContent.includes(s.slugFilter)},parent:a}}function D2t(t){const e=t.attributes.properties;e.id=t.attributes.id;const i=e.findIndex(o=>o.definition.name==="type");return i!==-1&&e.splice(i,1),e.push({definition:{name:"type"},value:t.type,nonEditable:!0}),e.push({definition:{name:"UUID"},value:t.uuid,nonEditable:!0}),e}function N2t(t,e){let i=1;const o=[],r=D2t(t),{classifications:n,property_sets:s}=t;if(r){const a={id:r.id,ref:`element${i++}`,get name(){return e.$viewer.i18n.$t("properties.attributes")},editable:!0,displayed:!0,get searchContent(){return e.$viewer.i18n.$t("properties.attributes").toLowerCase()},get highlighted(){return e.filter!==""&&this.searchContent.includes(e.slugFilter)}};a.children=r.map(l=>hH(l,`element${i++}`,e,a)),o.push(a)}if(n?.length>0){const a={ref:`element${i++}`,get name(){return e.$viewer.i18n.$t("properties.classification")},editable:!1,displayed:!0,get searchContent(){return e.$viewer.i18n.$t("properties.classification").toLowerCase()},get highlighted(){return e.filter!==""&&this.searchContent.includes(e.slugFilter)}};a.children=n.map(l=>({...l,searchContent:`${l.name||""} ${l.notation||""} - ${l.title||""}
79
+ --dashoffset-to: ${i.dashOffsetTo};`),onAnimationiteration:e[0]||(e[0]=s=>t.$emit("lap",(i.delay*i.laps-s.elapsedTime)/i.delay)),onAnimationend:e[1]||(e[1]=s=>t.$emit("stop"))},null,44,hgt)],8,dgt)),v("div",{class:"bimdata-pie-spinner__inside",style:Se({width:i.width+"px",height:i.width+"px"})},[Ct(t.$slots,"default",{},void 0,!0)],4)])}const Agt=W(cgt,[["render",pgt],["__scopeId","data-v-70da4628"]]),ggt={model:{prop:"modelValue",event:"update:modelValue"},props:{big:{type:Boolean,default:!1},text:{type:String,default:null},value:{default:!0},modelValue:{},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],computed:{checked(){return this.modelValue===this.value}},methods:{onClick(){this.$emit("update:modelValue",this.value)}}},I9=t=>(Jo("data-v-517bf62f"),t=t(),Wo(),t),Mgt=["disabled"],fgt=I9(()=>v("div",{class:"bimdata-radio__background"},null,-1)),wgt=I9(()=>v("div",{class:"bimdata-radio__circle"},null,-1)),Lgt=I9(()=>v("div",{class:"bimdata-radio__dot"},null,-1)),mgt={class:"bimdata-radio__text"};function ygt(t,e,i,o,r,n){return D(),U("button",{type:"button",class:Ne(["bimdata-radio",{disabled:i.disabled,"bimdata-radio--checked":n.checked,"bimdata-radio--big":i.big}]),disabled:i.disabled,onClick:e[0]||(e[0]=(...s)=>n.onClick&&n.onClick(...s))},[fgt,wgt,Lgt,v("span",mgt,X(i.text),1)],10,Mgt)}const vgt=W(ggt,[["render",ygt],["__scopeId","data-v-517bf62f"]]),Cgt={props:{itemWidth:{type:String,default:"100px"},rowGap:{type:String,default:"12px"},columnGap:{type:String,default:"12px"},isRepeatFit:{type:Boolean,default:!1}}};function Igt(t,e,i,o,r,n){return D(),U("div",{class:"bimdata-responsive-grid",style:Se({gridTemplateColumns:i.isRepeatFit?`repeat(auto-fit, minmax(${i.itemWidth}, 1fr))`:`repeat(auto-fill, minmax(${i.itemWidth}, 1fr))`,rowGap:i.rowGap,columnGap:i.columnGap})},[Ct(t.$slots,"default",{},void 0,!0)],4)}const jgt=W(Cgt,[["render",Igt],["__scopeId","data-v-b626b0fb"]]),bgt={components:{BIMDataIconClose:RC,BIMDataButton:bn},props:{reverse:{type:Boolean,default:!1}},emits:["confirm-delete","cancel-delete"]},xgt={class:"safe-zone-inline"};function Dgt(t,e,i,o,r,n){const s=z("BIMDataButton"),a=z("BIMDataIconClose");return D(),U("div",xgt,[O(s,{class:"safe-zone-inline__btn-delete",color:"high",fill:"",radius:"",onClick:e[0]||(e[0]=l=>t.$emit("confirm-delete"))},{default:J(()=>[Ct(t.$slots,"content",{},()=>[dt("Delete")],!0)]),_:3}),O(s,{class:"safe-zone-inline__btn-close",style:Se({width:"15px",order:i.reverse?-1:0}),width:"0px",radius:"",onClick:e[1]||(e[1]=l=>t.$emit("cancel-delete"))},{default:J(()=>[O(a,{size:"xxs",color:"granite"})]),_:1},8,["style"])])}const Ngt=W(bgt,[["render",Dgt],["__scopeId","data-v-b2effc6d"]]),Sgt={components:{BIMDataIconClose:RC,BIMDataIconSearch:m9,BIMDataButton:bn},directives:{focus:{inserted:function(t,{value:e}){e&&t.focus()}},clickaway:Uc},model:{prop:"modelValue",event:"update:modelValue"},props:{modelValue:{type:String},placeholder:{type:String,default:""},width:{type:[Number,String],default:"150px"},height:{type:[Number,String],default:"32px"},autofocus:{type:Boolean,default:!1},clear:{type:Boolean,default:!1},radius:{type:Boolean,default:!1},square:{type:Boolean,default:!1},color:{type:String,default:"default",validator:t=>h9.includes(t)},autocomplete:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","enter","clear"],data(){return{inputVisible:!1,focused:!1}},computed:{classes(){return{"bimdata-search-bar__radius":this.radius,"bimdata-search-bar__square":this.square,[`bimdata-search-bar__${this.color}`]:this.color}}},methods:{away(){this.inputVisible=!1},focus(){this.$refs.input&&this.$refs.input.focus()},blur(){this.$refs.input&&this.$refs.input.blur()},clickClear(){this.$emit("update:modelValue",""),this.$emit("clear")}}},kgt={class:"bimdata-search-icon"},Tgt=["value","placeholder","autocomplete","disabled"];function Egt(t,e,i,o,r,n){const s=z("BIMDataIconSearch"),a=z("BIMDataIconClose"),l=z("BIMDataButton"),c=Yi("focus"),u=Yi("clickaway");return Tt((D(),U("div",{class:Ne(["bimdata-search-bar",{focus:r.focused,disabled:i.disabled,...n.classes}]),style:Se({width:i.width,height:i.height})},[v("span",kgt,[O(s,{size:"xxs"})]),Tt(v("input",{ref:"input",value:i.modelValue,onFocus:e[0]||(e[0]=d=>r.focused=!0),onBlur:e[1]||(e[1]=d=>r.focused=!1),onInput:e[2]||(e[2]=d=>t.$emit("update:modelValue",d.target.value)),placeholder:i.placeholder,onKeyup:e[3]||(e[3]=si(d=>t.$emit("enter",d.target.value),["enter"])),autocomplete:i.autocomplete?"on":"off",disabled:i.disabled},null,40,Tgt),[[c,i.autofocus]]),i.clear&&i.modelValue!==""?(D(),oe(l,{key:0,width:"25px",onClick:e[4]||(e[4]=d=>n.clickClear())},{default:J(()=>[O(a,{size:"xxs"})]),_:1})):be("",!0)],6)),[[u,n.away]])}const zgt=W(Sgt,[["render",Egt],["__scopeId","data-v-c3818791"]]),Pgt={components:{BIMDataIconDefault:UG,BIMDataIconSearch:m9,BIMDataTextbox:UC},directives:{clickaway:Uc},props:{items:{type:Array,required:!0,default:()=>[]},isAllResultatsBtnActive:{type:Boolean,required:!1,default:!0},perPage:{type:Number,default:10,validator:t=>t>0},loading:{type:Boolean,default:!1},placeholder:{type:String,default:""},autoclear:{type:Boolean,default:!0}},data(){return{isOpen:!1,search:"",current:0}},computed:{results(){const t=["title","text","logo"];let e;return typeof this.search=="object"?e=this.search.title.toLowerCase()||this.search.text.toLowerCase():e=this.search.toLowerCase(),this.items.filter(i=>t.some(o=>typeof i[o]=="string"?i[o].toLowerCase().includes(e):!1)).slice(0,this.perPage)},openResults(){return this.search!==""&&this.results.length!==0&&this.isOpen===!0}},methods:{onChange(){this.$emit("input",this.search),this.isOpen===!1&&(this.isOpen=!0,this.current=-1)},onElementClick(t){this.$emit("item-click",t),this.isOpen=!1,this.autoclear&&(this.search="")},onAllResultatsBtnClick(){this.$emit("all-results-click",{results:this.results,search:this.search}),this.isOpen=!1,this.autoclear&&(this.search="")},onEnter(){this.$emit("enter",this.results[this.current].id),this.isOpen=!1,this.current=-1,this.autoclear&&(this.search="")},onArrowUp(){this.current>=1?this.current=this.current-1:this.current=this.results.length-1},onArrowDown(){this.current<this.results.length-1?this.current=this.current+1:this.current=0},focus(){this.isOpen=!0},away(){this.isOpen=!1}}},Bgt=t=>(Jo("data-v-b485ea22"),t=t(),Wo(),t),Ogt={class:"bimdata-search-autocomplete"},Rgt={class:"bimdata-search-autocomplete__input flex items-center"},Ugt={class:"bimdata-search-icon flex"},Fgt=["placeholder"],Ygt={class:"bimdata-list p-y-6"},Qgt={key:0,class:"loading"},Ggt=Bgt(()=>v("p",{class:"text-center"},"loading results...",-1)),Hgt=["onClick"],Vgt={class:"bimdata-search-autocomplete__dropdown__left m-r-12"},Zgt=["src"],Jgt={class:"bimdata-search-autocomplete__dropdown__right flex flex-col"},Wgt={key:0,class:"title"},Kgt={key:1,class:"text"};function _gt(t,e,i,o,r,n){const s=z("BIMDataIconSearch"),a=z("BIMDataIconDefault"),l=z("BIMDataTextbox"),c=Yi("clickaway");return Tt((D(),U("div",Ogt,[v("div",Rgt,[v("span",Ugt,[O(s,{fill:"",color:"default",size:"xxs"})]),Tt(v("input",{class:"form-control p-l-36 p-r-12",type:"text","onUpdate:modelValue":e[0]||(e[0]=u=>r.search=u),placeholder:i.placeholder,onKeydown:[e[1]||(e[1]=si((...u)=>n.onEnter&&n.onEnter(...u),["enter"])),e[2]||(e[2]=si((...u)=>n.onArrowDown&&n.onArrowDown(...u),["down"])),e[3]||(e[3]=si((...u)=>n.onArrowUp&&n.onArrowUp(...u),["up"]))],onInput:e[4]||(e[4]=(...u)=>n.onChange&&n.onChange(...u)),onFocus:e[5]||(e[5]=(...u)=>n.focus&&n.focus(...u))},null,40,Fgt),[[Dp,r.search]])]),v("div",{class:Ne(["bimdata-search-autocomplete__dropdown",{open:n.openResults}])},[v("ul",Ygt,[i.loading?(D(),U("li",Qgt,[Ct(t.$slots,"loading",{},()=>[Ggt],!0)])):(D(!0),U(Mt,{key:1},ii(n.results,(u,d)=>(D(),U("li",{key:d,class:Ne([{active:d===r.current},"p-y-6 p-x-12 flex items-center"]),onClick:h=>n.onElementClick(u)},[Ct(t.$slots,"left",{result:u},()=>[v("div",Vgt,[u&&u.logo?(D(),U("img",{key:0,class:"logo",src:u.logo},null,8,Zgt)):Ct(t.$slots,"logoPlaceholder",{key:1},()=>[O(a,{fill:"",color:"default"})],!0)])],!0),v("div",Jgt,[u&&u.title?(D(),U("span",Wgt,X(u.title),1)):be("",!0),u&&u.text?(D(),U("span",Kgt,[O(l,{text:u.text,width:"260px",cutPosition:"end",tooltip:!1},null,8,["text"])])):be("",!0)])],10,Hgt))),128))]),i.isAllResultatsBtnActive?(D(),U("div",{key:0,class:"bimdata-search-autocomplete__dropdown__button flex items-center justify-center",onClick:e[6]||(e[6]=(...u)=>n.onAllResultatsBtnClick&&n.onAllResultatsBtnClick(...u))},' See all results for "'+X(r.search)+'" ',1)):be("",!0)],2)])),[[c,n.away]])}const qgt=W(Pgt,[["render",_gt],["__scopeId","data-v-b485ea22"]]),Xgt={components:{BIMDataCheckbox:BC,BIMDataIconChevron:Wl},directives:{clickaway:Uc},model:{prop:"modelValue",event:"update:modelValue"},props:{width:{type:[String,Number]},label:{type:String,default:null},options:{type:Array,default:()=>[]},optionKey:{type:String},optionLabelKey:{type:String},modelValue:{type:Array},nullLabel:{type:String},disabled:{type:Boolean,default:!1},search:{type:Boolean,default:!1},searchPlaceholder:{type:String,default:"Search"},resetOnLeave:{type:Boolean,default:!1}},emits:["update:modelValue"],data(){return{isOpen:!1,searchText:""}},computed:{displayedValue(){return this.modelValue.map(this.optionLabel).join(", ")},filteredOptions(){if(this.searchText==="")return this.options;{const t=this.searchText.toLowerCase();return this.optionLabelKey?this.options.filter(e=>e[this.optionLabelKey].toLowerCase().includes(t)):this.optionKey?this.options.filter(e=>e.optionGroup||e[this.optionKey].toLowerCase().includes(t)):this.options.filter(e=>e.toLowerCase().includes(t))}}},methods:{toggle(){this.disabled||(this.isOpen=!this.isOpen)},optionValue(t){return this.optionKey&&t?t[this.optionKey]:t},optionLabel(t){return this.nullLabel&&t==null?this.nullLabel:this.optionLabelKey&&t?t[this.optionLabelKey]:this.optionKey&&t?t[this.optionKey]:t},isSelected(t){const e=this.optionValue(t);return this.modelValue.map(this.optionValue).includes(e)},isDisabled(t){return this.optionKey&&t&&t.disabled},isOptionGroup(t){return this.optionKey&&t&&t.optionGroup},onOptionClick(t){if(this.optionKey&&(t.disabled||t.optionGroup))return;let e;if(this.isSelected(t)){const i=this.optionValue(t);e=this.modelValue.filter(o=>this.optionValue(o)!==i)}else e=this.modelValue.concat(t);this.$emit("update:modelValue",e)},resetSearch(){this.clearSearchOnLeave&&(this.searchText="")},away(){this.isOpen=!1,this.resetSearch()}}},$gt=t=>(Jo("data-v-cfb01881"),t=t(),Wo(),t),e4t={class:"bimdata-select__content"},t4t={class:"bimdata-select__content__label"},i4t=$gt(()=>v("span",{class:"bimdata-select__content__underline"},null,-1)),o4t={class:"bimdata-select__option-list"},r4t={key:1},s4t={class:"bimdata-list m-y-6"},n4t=["onClick"];function a4t(t,e,i,o,r,n){const s=z("BIMDataIconChevron"),a=z("BIMDataSearch"),l=z("BIMDataCheckbox"),c=Yi("clickaway");return Tt((D(),U("div",{class:Ne(["bimdata-select",{disabled:i.disabled,active:r.isOpen,"not-empty":i.modelValue.length>0}]),style:Se({width:i.width})},[v("div",e4t,[v("div",{class:"bimdata-select__content__value",onClick:e[0]||(e[0]=(...u)=>n.toggle&&n.toggle(...u))},[v("span",null,X(n.displayedValue),1),O(s,{size:"xxs",rotate:r.isOpen?90:0},null,8,["rotate"])]),v("label",t4t,X(i.label),1),i4t]),O($i,{name:"slide-fade-down"},{default:J(()=>[Tt(v("div",o4t,[i.search?(D(),oe(a,{key:0,width:"calc(100% - 12px)",color:"primary",radius:"",placeholder:i.searchPlaceholder,modelValue:r.searchText,"onUpdate:modelValue":e[1]||(e[1]=u=>r.searchText=u),class:"m-6"},null,8,["placeholder","modelValue"])):be("",!0),n.filteredOptions.length===0?(D(),U("div",r4t,[Ct(t.$slots,"empty",{},void 0,!0)])):be("",!0),v("ul",s4t,[(D(!0),U(Mt,null,ii(n.filteredOptions,(u,d)=>(D(),U("li",{class:Ne(["bimdata-select__option-list__entry",{selected:n.isSelected(u),disabled:n.isDisabled(u),"option-group":n.isOptionGroup(u)}]),key:d,onClick:h=>n.onOptionClick(u)},[n.isOptionGroup(u)?(D(),U(Mt,{key:0},[dt(X(n.optionLabel(u)),1)],64)):(D(),oe(l,{key:1,modelValue:n.isSelected(u),disabled:n.isDisabled(u),text:n.optionLabel(u)},null,8,["modelValue","disabled","text"]))],10,n4t))),128))])],512),[[Ai,!i.disabled&&r.isOpen]])]),_:3})],6)),[[c,n.away]])}const _G=W(Xgt,[["render",a4t],["__scopeId","data-v-cfb01881"]]),l4t={components:{BIMDataIconChevron:Wl},directives:{clickaway:Uc},model:{prop:"modelValue",event:"update:modelValue"},props:{width:{type:[String,Number]},label:{type:String,default:null},options:{type:Array,default:()=>[]},optionKey:{type:String},optionLabelKey:{type:String},modelValue:{type:[String,Object]},nullValue:{type:Boolean,default:!1},nullLabel:{type:String},disabled:{type:Boolean,default:!1},search:{type:Boolean,default:!1},searchPlaceholder:{type:String,default:"Search"},clearSearchOnLeave:{type:Boolean,default:!1}},emits:["update:modelValue"],data(){return{isOpen:!1,searchText:""}},computed:{displayedValue(){return this.optionLabel(this.modelValue)},filteredOptions(){if(this.searchText==="")return this.options;{const t=this.searchText.toLowerCase();return this.optionLabelKey?this.options.filter(e=>e[this.optionLabelKey].toLowerCase().includes(t)):this.optionKey?this.options.filter(e=>e.optionGroup||e[this.optionKey].toLowerCase().includes(t)):this.options.filter(e=>e.toLowerCase().includes(t))}}},methods:{toggle(){this.disabled||(this.isOpen=!this.isOpen)},optionValue(t){return this.optionKey&&t?t[this.optionKey]:t},optionLabel(t){return this.nullLabel&&t==null?this.nullLabel:this.optionLabelKey&&t?t[this.optionLabelKey]:this.optionKey&&t?t[this.optionKey]:t},isSelected(t){const e=this.optionValue(t);return this.optionValue(this.modelValue)===e},isDisabled(t){return this.optionKey&&t&&t.disabled},isOptionGroup(t){return this.optionKey&&t&&t.optionGroup},resetSearch(){this.clearSearchOnLeave&&(this.searchText="")},onOptionClick(t){this.optionKey&&(t.disabled||t.optionGroup)||(this.$emit("update:modelValue",t),this.resetSearch(),this.isOpen=!1)},onNullValueClick(){this.$emit("update:modelValue",null),this.resetSearch(),this.isOpen=!1},away(){this.isOpen=!1,this.resetSearch()}}},c4t=t=>(Jo("data-v-53825b9f"),t=t(),Wo(),t),u4t={class:"bimdata-select__content"},d4t={class:"bimdata-select__content__label"},h4t=c4t(()=>v("span",{class:"bimdata-select__content__underline"},null,-1)),p4t={class:"bimdata-select__option-list"},A4t={key:1},g4t={class:"bimdata-list m-y-6"},M4t=["onClick"];function f4t(t,e,i,o,r,n){const s=z("BIMDataIconChevron"),a=z("BIMDataSearch"),l=Yi("clickaway");return Tt((D(),U("div",{class:Ne(["bimdata-select",{disabled:i.disabled,active:r.isOpen,"not-empty":i.modelValue!==void 0&&i.modelValue!==null}]),style:Se({width:i.width})},[v("div",u4t,[v("div",{class:"bimdata-select__content__value",onClick:e[0]||(e[0]=(...c)=>n.toggle&&n.toggle(...c))},[v("span",null,X(n.displayedValue),1),O(s,{size:"xxs",rotate:r.isOpen?90:0},null,8,["rotate"])]),v("label",d4t,X(i.label),1),h4t]),O($i,{name:"slide-fade-down"},{default:J(()=>[Tt(v("div",p4t,[i.search?(D(),oe(a,{key:0,width:"calc(100% - 12px)",color:"primary",radius:"",placeholder:i.searchPlaceholder,modelValue:r.searchText,"onUpdate:modelValue":e[1]||(e[1]=c=>r.searchText=c),class:"m-6"},null,8,["placeholder","modelValue"])):be("",!0),n.filteredOptions.length===0?(D(),U("div",A4t,[Ct(t.$slots,"empty",{},void 0,!0)])):be("",!0),v("ul",g4t,[i.nullValue?(D(),U("li",{key:0,class:"bimdata-select__option-list__entry",onClick:e[2]||(e[2]=c=>n.onNullValueClick())},X(i.nullLabel||"None"),1)):be("",!0),(D(!0),U(Mt,null,ii(n.filteredOptions,(c,u)=>(D(),U("li",{class:Ne(["bimdata-select__option-list__entry",{selected:n.isSelected(c),disabled:n.isDisabled(c),"option-group":n.isOptionGroup(c)}]),key:u,onClick:d=>n.onOptionClick(c)},X(n.optionLabel(c)),11,M4t))),128))])],512),[[Ai,!i.disabled&&r.isOpen]])]),_:3})],6)),[[l,n.away]])}const qG=W(l4t,[["render",f4t],["__scopeId","data-v-53825b9f"]]),w4t={components:{BIMDataSelectMulti:_G,BIMDataSelectSingle:qG},model:{prop:"modelValue",event:"update:modelValue"},props:{width:{type:[String,Number],default:"100%"},label:{type:String,default:null},options:{type:Array,default:()=>[]},optionKey:{type:String},optionLabelKey:{type:String},modelValue:{type:[String,Object,Array]},multi:{type:Boolean,default:!1},nullValue:{type:Boolean,default:!1},nullLabel:{type:String},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:e,slots:i}){return()=>_i(t.multi?_G:qG,{...t,"onUpdate:modelValue":o=>e("update:modelValue",o)},{empty:()=>{var o;return(o=i.empty)==null?void 0:o.call(i)}})}},L4t={props:{barsData:{type:Array,default:()=>[]},barDistanceFromCenter:{type:Number,default:50},barStrokeWidth:{type:Number,default:10},placeholder:{type:Boolean,default:!1},placeholderStrokeWidth:{type:Number,default:4},placeholderColor:{type:String,default:"#EBEBEB"},graphDrawTime:{type:Number,default:4}},computed:{roundCapPercentageOffset(){const t=this.barStrokeWidth/2-4,e=this.barDistanceFromCenter*2*Math.PI;return t/e*100},center(){return this.viewBoxSize/2},displayedBarsData(){let t=0;return this.barsData.map(e=>{const i={...e,previousPercentageSum:t};return t+=+e.percentage,i})},viewBoxSize(){return this.barDistanceFromCenter*2+this.barStrokeWidth},viewBox(){return`0 0 ${this.viewBoxSize} ${this.viewBoxSize}`}},methods:{getPath(t){let e=t.percentage-2*this.roundCapPercentageOffset,i=t.previousPercentageSum+this.roundCapPercentageOffset;+t.percentage==100&&(e=99.999,i=0);const o=this.getPercentagePosition(i),r=this.barDistanceFromCenter;return`M${o.x},${o.y} A${r} ${r} 0 ${this.getTarget(e,i)}`},getPercentagePosition(t){const e=this.barDistanceFromCenter,i=t/100*Math.PI*2-Math.PI/2,o=e*Math.cos(i)+this.center,r=e*Math.sin(i)+this.center;return{x:o,y:r}},getTarget(t,e){const i=t>50?1:0,{x:o,y:r}=this.getPercentagePosition(t+e);return`${i} 1 ${o},${r}`}}},m4t={class:"bimdata-simple-pie-chart",ref:"container"},y4t=["viewBox"],v4t=["cx","cy","r","stroke-width","stroke"],C4t=["d","stroke-width","stroke"];function I4t(t,e,i,o,r,n){return D(),U("div",m4t,[(D(),U("svg",{viewBox:n.viewBox,style:Se(`--graph-draw-time: ${i.graphDrawTime}s;`)},[i.placeholder?(D(),U("circle",{key:0,cx:n.center,cy:n.center,r:i.barDistanceFromCenter,"stroke-width":i.placeholderStrokeWidth,stroke:i.placeholderColor,fill:"none"},null,8,v4t)):be("",!0),(D(!0),U(Mt,null,ii(n.displayedBarsData,(s,a)=>(D(),U("g",{key:a},[s.percentage>0?(D(),U("path",{key:0,class:"path",d:n.getPath(s),"stroke-width":i.barStrokeWidth,stroke:s.color,fill:"none"},null,8,C4t)):be("",!0)]))),128))],12,y4t))],512)}const j4t=W(L4t,[["render",I4t],["__scopeId","data-v-4572e7e7"]]),b4t={props:{min:{type:[Number,String],default:null},max:{type:[Number,String],default:null},step:{type:[Number,String],default:null},modelValue:{type:Number,default:0},disabled:{type:Boolean,default:!1},tooltip:{type:Boolean,default:!1}},emits:["update:modelValue"],data(){return{backgroundSize:0,tooltipPosition:`calc(${this.modelValue}% + (${8-this.modelValue*.18}px))`}},watch:{modelValue(){this.$nextTick(()=>{this.backgroundSize=this.getBackgroundSize(),this.tooltip&&this.getTooltipPosition()})}},mounted(){this.backgroundSize=this.getBackgroundSize()},methods:{getBackgroundSize(){const t=this.$refs.input;if(!t)return null;const e=+t.min||0,i=+t.max||100;return(+t.value-e)/(i-e)*100},onInput(t){this.$emit("update:modelValue",+t.target.value)},getTooltipPosition(){const t=this.min?this.min:0,e=this.max?this.max:100,i=Number((this.modelValue-t)*100/(e-t));this.tooltipPosition=`calc(${i}% + (${8-i*.18}px))`}}},x4t={class:"bimdata-slider"},D4t=["min","max","step","value","disabled"];function N4t(t,e,i,o,r,n){return D(),U("div",x4t,[v("input",{ref:"input",class:"bimdata-slider-input",type:"range",style:Se(`--background-size: ${r.backgroundSize}%`),min:i.min,max:i.max,step:i.step,value:i.modelValue,disabled:i.disabled,onInput:e[0]||(e[0]=(...s)=>n.onInput&&n.onInput(...s))},null,44,D4t),i.tooltip?(D(),U("output",{key:0,class:"bimdata-slider-tooltip",style:Se({left:r.tooltipPosition})},X(i.modelValue),5)):be("",!0)])}const S4t=W(b4t,[["render",N4t],["__scopeId","data-v-de9cce2c"]]);function k4t(t,e,{rowSelectionUpdateEffect:i=()=>{},rowSelectionToggleEffect:o=()=>{},fullSelectionToggleEffect:r=()=>{}}={}){const n=Fe(new Map);return Zt(t,()=>{n.value=new Map(t.value.filter(({key:s})=>e.value.has(s)).map(({key:s,data:a})=>[s,a]))},{immediate:!0}),Zt(e,()=>{n.value=e.value},{immediate:!0}),Zt(n,()=>{i(n.value)}),{rowSelection:n,toggleRowSelection:({key:s,data:a})=>{const l=()=>n.value.has(s);l()?n.value.delete(s):n.value.set(s,a),n.value=new Map([...n.value.entries()]),o(l(),{key:s,data:a})},toggleFullSelection:()=>{const s=()=>n.value.size===t.value.length;s()?n.value=new Map:n.value=new Map(t.value.map(({key:a,data:l})=>[a,l])),r(s())}}}const T4t={components:{BIMDataButton:bn,BIMDataIconCaret:w9},props:{sortOrder:{type:String,required:!0,validator:t=>["asc","desc"].includes(t)},index:{type:Number,required:!0},active:{type:Boolean,required:!0}},setup(t,{emit:e}){return{toggleActive:()=>{e("set-active",t.index)}}}};function E4t(t,e,i,o,r,n){const s=z("BIMDataIconCaret"),a=z("BIMDataButton");return D(),U("span",{class:Ne([i.sortOrder==="asc"?"asc":"desc","m-l-6"]),onMousedown:e[0]||(e[0]=bt(()=>{},["prevent"]))},[O(a,{color:"primary",ghost:"",rounded:"",icon:"",class:Ne({active:i.active}),onClick:o.toggleActive},{default:J(()=>[O(s,{rotate:i.sortOrder==="desc"?180:0,size:"xxxs",fill:"",color:"default"},null,8,["rotate"])]),_:1},8,["class","onClick"])],34)}const z4t=W(T4t,[["render",E4t],["__scopeId","data-v-cddfddda"]]),P4t={components:{BIMDataCheckbox:BC},props:{column:{type:Object,required:!0},columnData:{type:Array,required:!0},filters:{type:Array,required:!0}},emits:["filter"],setup(t,{emit:e}){const i=t.column,o=At(()=>{const r=t.columnData.filter(n=>n!==null);return[...new Set(r.flatMap(n=>(Array.isArray(n)||(n=[n]),i!=null&&i.filterKey?n.map(s=>s[i?.filterKey]):n)))]});return{columnElements:At(()=>o.value.map(r=>({data:r,checked:t.filters.includes(r)}))),toggle:(r,n)=>{const s=new Set(t.filters);n?s.add(r):s.delete(r),e("filter",[...s])}}}},B4t={class:"column-filters p-12"},O4t={key:0,class:"column-filters__element flex align-center"};function R4t(t,e,i,o,r,n){const s=z("BIMDataCheckbox");return D(),U("div",B4t,[o.columnElements.length===0?(D(),U("div",O4t,[Ct(t.$slots,"column-filter-empty",{},void 0,!0)])):be("",!0),(D(!0),U(Mt,null,ii(o.columnElements,a=>(D(),U("div",{key:a.data,class:"column-filters__element flex align-center"},[O(s,{text:a.data,modelValue:a.checked,"onUpdate:modelValue":l=>o.toggle(a.data,l)},null,8,["text","modelValue","onUpdate:modelValue"])]))),128))])}const U4t=W(P4t,[["render",R4t],["__scopeId","data-v-27deb2d0"]]),F4t={components:{BIMDataButton:bn,BIMDataCheckbox:BC,BIMDataIconCaret:w9,BIMDataIconChevron:Wl,ColumnSorting:z4t,ColumnFilters:U4t},directives:{clickaway:Uc},props:{columns:{type:Array,required:!0},rows:{type:Array,required:!0},rowKey:{type:String},rowHeight:{type:Number,default:50},selectable:{type:Boolean,default:!1},selection:{type:Map,default:()=>new Map},paginated:{type:Boolean,default:!1},perPage:{type:Number,default:10},placeholder:{type:String,default:""},tableWidth:{type:String,default:"100%"},tableLayout:{type:String,default:"auto"},canDragOverRow:{type:Function,default:()=>!1}},emits:["update:selection","selection-changed","row-selected","row-deselected","all-selected","all-deselected","row-drop"],setup(t,{emit:e}){const i=At(()=>t.rows.map((P,S)=>({key:P[t.rowKey]??S,data:P}))),{rowSelection:o,toggleRowSelection:r,toggleFullSelection:n}=k4t(i,At(()=>t.selection),{rowSelectionUpdateEffect:P=>{e("update:selection",P),e("selection-changed",Array.from(P.values()))},rowSelectionToggleEffect:(P,{data:S})=>{e(P?"row-selected":"row-deselected",S)},fullSelectionToggleEffect:P=>{e(P?"all-selected":"all-deselected")}}),s=P=>{t.selectable&&r(P)},a=()=>{t.selectable&&n()},l=(P,S)=>{t.canDragOverRow(P)&&(e("row-drop",{data:P,event:S}),c.value=null)},c=Fe(null),u=(P,S,k)=>{t.canDragOverRow(S)&&(k.preventDefault(),c.value=P)},d=()=>{c.value=null},h=Fe(null),p=P=>{h.value===P.id?h.value=null:h.value=P.id},g=P=>{P.id===h.value&&(h.value=null)},A=Cn({column:null,order:null}),M=Fe([]),f=At(()=>{if(A.column){const P=A.order!=="desc"?1:-1;if(A.column.sortFunction){const S=(k,R)=>A.column.sortFunction(k.data,R.data)*P;return Array.from(i.value).sort(S)}else return Array.from(i.value).sort((S,k)=>S.data[A.column.id]<k.data[A.column.id]?P:S.data[A.column.id]>k.data[A.column.id]?-P:0)}return M.value.length>0?Array.from(i.value).filter(P=>P.data[M.value[0].id]===M.value[0].text):i.value}),L=P=>{A.column===P?A.order=A.order==="asc"?"desc":"asc":(A.column=P,A.order=P.defaultSortOrder??"asc")},w=Fe([]),m=At(()=>f.value.filter(P=>w.value.every(S=>{const k=t.columns.find(Y=>Y.id===S.columnKey),R=P.data[S.columnKey];if(R!==null)return Array.isArray(R)?R.some(Y=>S.columnFilters.includes(k.filterKey?Y[k.filterKey]:Y)):S.columnFilters.includes(k.filterKey?R[k.filterKey]:R)}))),C=(P,S)=>{w.value=w.value.filter(k=>k.columnKey!==P.id),S.length>0&&w.value.push({columnKey:P.id,columnFilters:S})},I=Fe([]),j=Fe(0),b=Fe(1),T=Fe(t.perPage);return Zt([m,()=>t.perPage],()=>{j.value=0},{immediate:!0}),Zt([m,()=>t.paginated,()=>t.perPage,j],([P,S,k,R])=>{const Y=P.map(Z=>Z.key);if(S){const Z=k*R,G=Z+k;I.value=Y.slice(Z,G),b.value=Z+1,T.value=Math.min(G,P.length)}else I.value=Y},{immediate:!0}),{activeHeadercolumnKey:null,computedRows:i,paginatedRows:I,pageIndex:j,pageIndexEnd:T,pageIndexStart:b,rowSelection:o,dragOveredRowKey:c,displayedColumnFilterId:h,filteringColumns:M,filters:w,sortObject:A,awayFromFilter:g,onDrop:l,onDragover:u,onDragleave:d,toggleAll:a,toggleRow:s,toggleSorting:L,updateFilters:C,toggleFiltersMenu:p,displayedRows:m}}},Y4t={class:"bimdata-table"},Q4t={key:0,class:"cell-checkbox"},G4t={style:{display:"inline-flex","align-items":"center"}},H4t={key:1},V4t={key:"head-row-1"},Z4t=["colspan"],J4t=["onDrop","onDragover"],W4t={key:0,class:"cell-checkbox"},K4t={class:"bimdata-table__page-nav__text"};function _4t(t,e,i,o,r,n){const s=z("BIMDataCheckbox"),a=z("ColumnSorting"),l=z("BIMDataIconCaret"),c=z("BIMDataButton"),u=z("ColumnFilters"),d=z("BIMDataIconChevron"),h=Yi("clickaway");return D(),U("div",Y4t,[v("div",{class:"bimdata-table__container",style:Se({height:i.paginated?`${(i.perPage+1)*i.rowHeight}px`:void 0})},[v("table",{style:Se({width:i.tableWidth,tableLayout:i.tableLayout})},[v("thead",null,[v("tr",{key:"head-row-0",style:Se({height:`${i.rowHeight}px`})},[i.selectable?(D(),U("th",Q4t,[O(s,{disabled:i.rows.length===0,modelValue:i.rows.length>0&&o.rowSelection.size===i.rows.length,"onUpdate:modelValue":o.toggleAll},null,8,["disabled","modelValue","onUpdate:modelValue"])])):be("",!0),(D(!0),U(Mt,null,ii(i.columns,(p,g)=>{var A;return D(),U("th",{key:`head-row-0-col-${g}`,style:Se({width:p.width||"auto",textAlign:p.align||"left"})},[v("div",G4t,[dt(X(p.id?p.label||p.id:p)+" ",1),Ct(t.$slots,"column-header-right",{},void 0,!0),p.sortable?(D(),oe(a,{key:0,sortOrder:!o.sortObject.order||o.sortObject.column!==p?"asc":o.sortObject.order,index:g,active:g===o.activeHeadercolumnKey,onClick:M=>o.toggleSorting(p),onSetActive:e[0]||(e[0]=M=>o.activeHeadercolumnKey=M)},null,8,["sortOrder","index","active","onClick"])):be("",!0),p.filter?Tt((D(),U("div",H4t,[O(c,{color:"primary",ghost:"",rounded:"",icon:"",class:Ne(["m-l-6",{active:o.filters.some(M=>M.columnKey===p.id)}]),onClick:M=>o.toggleFiltersMenu(p)},{default:J(()=>[O(l,{size:"xxxs",fill:"",color:"default"})]),_:2},1032,["class","onClick"]),o.displayedColumnFilterId===p.id?(D(),oe(u,{key:0,column:p,columnData:o.computedRows.map(M=>M.data[p.id]),filters:((A=o.filters.find(M=>M.columnKey===p.id))==null?void 0:A.columnFilters)??[],onFilter:M=>o.updateFilters(p,M)},{"column-filter-empty":J(()=>[Ct(t.$slots,"column-filter-empty",{},void 0,!0)]),_:2},1032,["column","columnData","filters","onFilter"])):be("",!0)])),[[h,()=>o.awayFromFilter(p)]]):be("",!0)])],4)}),128))],4),v("tr",V4t,[v("th",{class:"cell-sub-header",colspan:i.columns.length+i.selectable},[Ct(t.$slots,"sub-header",{},void 0,!0)],8,Z4t)])]),v("tbody",{onDragleave:e[1]||(e[1]=(...p)=>o.onDragleave&&o.onDragleave(...p))},[(D(!0),U(Mt,null,ii(o.displayedRows,({key:p,data:g})=>Tt((D(),U("tr",{key:`body-row-${p}`,style:Se({height:`${i.rowHeight}px`}),onDrop:A=>o.onDrop(g,A),onDragover:A=>o.onDragover(p,g,A),class:Ne({"bimdata-table__row--drag-overed":o.dragOveredRowKey===p})},[i.selectable?(D(),U("td",W4t,[O(s,{modelValue:o.rowSelection.has(p),"onUpdate:modelValue":A=>o.toggleRow({key:p,data:g})},null,8,["modelValue","onUpdate:modelValue"])])):be("",!0),(D(!0),U(Mt,null,ii(i.columns,(A,M)=>(D(),U("td",{key:`body-row-${p}-col-${M}`,style:Se({width:A.width||"auto",textAlign:A.align||"left"})},[Ct(t.$slots,`cell-${A.id}`,{row:g},()=>[dt(X(g[A.id]||g[M]),1)],!0)],4))),128))],46,J4t)),[[Ai,o.paginatedRows.includes(p)]])),128))],32)],4),i.rows.length===0?(D(),U("div",{key:0,class:"bimdata-table__container__placeholder",style:Se({height:`calc(100% - ${i.rowHeight}px)`})},[Ct(t.$slots,"placeholder",{},()=>[dt(X(i.placeholder),1)],!0)],4)):be("",!0)],4),i.paginated?(D(),U("div",{key:0,class:"bimdata-table__page-nav",style:Se({visibility:o.displayedRows.length>i.perPage?"visible":"hidden"})},[O(c,{ghost:"",rounded:"",icon:"",disabled:o.pageIndexStart===1,onClick:e[2]||(e[2]=p=>o.pageIndex--)},{default:J(()=>[O(d,{size:"s",rotate:180})]),_:1},8,["disabled"]),v("span",K4t,X(`${o.pageIndexStart} - ${o.pageIndexEnd} / ${o.displayedRows.length}`),1),O(c,{ghost:"",rounded:"",icon:"",disabled:o.pageIndexEnd===o.displayedRows.length,onClick:e[3]||(e[3]=p=>o.pageIndex++)},{default:J(()=>[O(d,{size:"s"})]),_:1},8,["disabled"])],4)):be("",!0)])}const q4t=W(F4t,[["render",_4t],["__scopeId","data-v-272e2173"]]),X4t={components:{BIMDataButton:bn,BIMDataIconChevron:Wl},props:{width:{type:[String,Number],default:"100%"},height:{type:[String,Number],default:"32px"},tabs:{type:Array,required:!0},tabSize:{type:[String,Number],default:"120px"},selected:{type:[String,Number]}},emits:["tab-click","tab-selected"],data(){return{scrollValues:[],displayIndex:0,activeTab:{}}},computed:{containerWidth(){return Number.isNaN(+this.width)?this.width:`${this.width}px`},containerHeight(){return Number.isNaN(+this.height)?this.height:`${this.height}px`},tabWidth(){return Number.isNaN(+this.tabSize)?this.tabSize:`${this.tabSize}px`}},watch:{tabs(){this.$nextTick(()=>this._setScrollValues())},tabSize(){this.$nextTick(()=>this._setScrollValues())},selected(t){this._setSelected(t)}},mounted(){this.resizeObserver=new ResizeObserver(()=>this._setScrollValues()),this.resizeObserver.observe(this.$refs.container),this._setScrollValues(),this._setSelected(this.selected)},beforeUnmount(){this.resizeObserver.disconnect()},beforeDestroy(){this.resizeObserver.disconnect()},methods:{prev(){this.displayIndex--,this.$refs.container.scrollTo(this.scrollValues[this.displayIndex],0)},next(){this.displayIndex++,this.$refs.container.scrollTo(this.scrollValues[this.displayIndex],0)},onTabClick(t){this.activeTab=t,this.$emit("tab-click",t),this.$emit("tab-selected",t)},_setSelected(t){if(typeof t=="number"&&t>=0&&t<this.tabs.length)this.activeTab=this.tabs[t],this.$emit("tab-selected",this.activeTab);else{const e=this.tabs.find(i=>i.id===t);e&&(this.activeTab=e,this.$emit("tab-selected",this.activeTab))}},_setScrollValues(){if(this.displayIndex=0,this.tabs.length>0){let t=this.$refs.container.offsetWidth,e=this.$refs.container.querySelector(".bimdata-tabs__container__tab").offsetWidth;Math.floor((this.tabs.length*e-t)*10/e)>0?this.scrollValues=[0].concat(this.tabs.map((i,o)=>(o+1)*e-t).filter(i=>i>0)):this.scrollValues=[]}}}},$4t=["onClick"];function eMt(t,e,i,o,r,n){const s=z("BIMDataIconChevron"),a=z("BIMDataButton");return D(),U("div",{class:"bimdata-tabs",style:Se({width:i.width})},[Tt(O(a,{disabled:r.displayIndex===0,onClick:n.prev},{default:J(()=>[O(s,{class:"fill-primary",size:"xxs",rotate:180})]),_:1},8,["disabled","onClick"]),[[Ai,r.scrollValues.length>1]]),v("ul",{ref:"container",class:"bimdata-tabs__container",style:Se({width:n.containerWidth,minHeight:n.containerHeight})},[(D(!0),U(Mt,null,ii(i.tabs,l=>(D(),U("li",{key:l.id,class:Ne(["bimdata-tabs__container__tab",{active:l.id===r.activeTab.id}]),style:Se({minWidth:n.tabWidth}),onClick:c=>n.onTabClick(l)},[Ct(t.$slots,"tab",{tab:l,active:l.id===r.activeTab.id},()=>[dt(X(l.label),1)],!0)],14,$4t))),128))],4),Tt(O(a,{disabled:r.displayIndex===r.scrollValues.length-1,onClick:n.next},{default:J(()=>[O(s,{class:"fill-primary",size:"xxs"})]),_:1},8,["disabled","onClick"]),[[Ai,r.scrollValues.length>1]])],4)}const tMt=W(X4t,[["render",eMt],["__scopeId","data-v-7da61e21"]]),iMt={model:{prop:"modelValue",event:"update:modelValue"},props:{name:{type:[String,Number],default:""},resizable:{type:Boolean,default:!0},modelValue:{type:[String,Number],default:null},placeholder:{type:String,default:null},label:{type:String,default:""},width:{type:[Number,String],default:"150px"},height:{type:[Number,String],default:"32px"},error:{type:Boolean,default:!1},success:{type:Boolean,default:!1},errorMessage:{type:String,default:""},successMessage:{type:String,default:""},fitContent:{type:Boolean,default:!1}},emits:["update:modelValue"],created(){this.$watch(()=>this.success&&this.error,t=>{if(t)throw new Error("Textarea state cannot be both success and error.")})},mounted(){this.fitContent&&this.handleFitContent()},methods:{focus(){this.$refs.textarea&&this.$refs.textarea.focus()},blur(){this.$refs.textarea&&this.$refs.textarea.blur()},handleFitContent(){this.$refs.textarea.style.height="auto",this.$refs.textarea.style.height=this.$refs.textarea.scrollHeight+"px"},onInput(t){this.$emit("update:modelValue",t.currentTarget.value),this.fitContent&&this.handleFitContent()}}},oMt=t=>(Jo("data-v-77c71958"),t=t(),Wo(),t),rMt=["name","id","value","placeholder"],sMt=["for"],nMt=oMt(()=>v("span",{class:"bar"},null,-1)),aMt={key:0,class:"error"},lMt={key:1,class:"success"};function cMt(t,e,i,o,r,n){return D(),U("div",{class:Ne(["bimdata-textarea",{"not-empty":i.modelValue!==null&&i.modelValue!==""||i.placeholder!==null,error:i.error,success:i.success}]),style:Se({"min-width":i.width,"min-height":i.height})},[v("textarea",ja({ref:"textarea",name:i.name,id:i.name,value:i.modelValue,placeholder:i.placeholder,style:`${i.resizable?"":"resize: none;"}`,onInput:e[0]||(e[0]=(...s)=>n.onInput&&n.onInput(...s))},t.$attrs),null,16,rMt),v("label",{for:i.name},X(i.label),9,sMt),nMt,i.error?(D(),U("span",aMt,X(i.errorMessage),1)):be("",!0),i.success?(D(),U("span",lMt,X(i.successMessage),1)):be("",!0)],6)}const uMt=W(iMt,[["render",cMt],["__scopeId","data-v-77c71958"]]),dMt={model:{prop:"modelValue",event:"update:modelValue"},props:{disabled:{type:Boolean,default:!1},modelValue:{type:Boolean,default:!1}},emits:["update:modelValue"],data(){return{uniqueId:null}},computed:{checkedValue:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}}},created(){this.uniqueId=Math.random().toString()}},hMt=t=>(Jo("data-v-ab3de434"),t=t(),Wo(),t),pMt=["for"],AMt=["disabled","id"],gMt=hMt(()=>v("span",{class:"toggle__switch"},null,-1));function MMt(t,e,i,o,r,n){return D(),U("label",{for:`bimdata-toggle-${r.uniqueId}`,class:Ne([{active:i.modelValue,disabled:i.disabled},"toggle__button"])},[Ct(t.$slots,"default",{},void 0,!0),Tt(v("input",{type:"checkbox",disabled:i.disabled,id:`bimdata-toggle-${r.uniqueId}`,"onUpdate:modelValue":e[0]||(e[0]=s=>n.checkedValue=s)},null,8,AMt),[[dw,n.checkedValue]]),gMt,Ct(t.$slots,"right",{},void 0,!0)],10,pMt)}const fMt=W(dMt,[["render",MMt],["__scopeId","data-v-ab3de434"]]),wMt={props:{text:{type:String,default:""},maxWidth:{type:String,default:"240px"},position:{type:String,default:"bottom",validator:t=>["top","right","bottom","left"].includes(t)},color:{type:String,default:"primary",validator:t=>["white","primary","secondary","granite-light","silver-light","success","warning","high"].includes(t)},disabled:{type:Boolean,default:!1},message:{type:String},className:{type:[String,Array]}},data(){return{width:null,height:null,parentHeight:null,hover:!1}},computed:{isDisplayed(){return!this.disabled&&this._text&&this.hover},_text(){return this.text||this.message},_className(){return[this.className].flat()}}},LMt={class:"bimdata-tooltip"};function mMt(t,e,i,o,r,n){return D(),U("div",LMt,[v("div",{class:"bimdata-tooltip__content",onMouseover:e[0]||(e[0]=s=>r.hover=!0),onMouseleave:e[1]||(e[1]=s=>r.hover=!1)},[Ct(t.$slots,"content",{},void 0,!0),Ct(t.$slots,"default",{},void 0,!0)],32),O($i,{name:"fade"},{default:J(()=>[Tt(v("div",{ref:"tooltipText",class:Ne(["bimdata-tooltip__tooltip",[`bimdata-tooltip__tooltip--${i.position}`,`bimdata-tooltip__tooltip--${i.color}`,...n._className]]),style:Se({maxWidth:i.maxWidth})},X(n._text),7),[[Ai,n.isDisplayed]])]),_:1})])}const yMt=W(wMt,[["render",mMt],["__scopeId","data-v-36856a43"]]);let j9,XG;XG={inject:["root"],props:{node:{type:Object,required:!0,validator:t=>Number.isFinite(t?.id)},depth:{type:Number,default:0},dragAndDrop:{type:Boolean,default:!1}},render(){const{node:t,depth:e,dragAndDrop:i,root:o}=this,r=o.state;return t.children.map(n=>_i(j9,{node:n,depth:e,dragAndDrop:i,key:n.id},()=>{var s,a,l;return(l=(a=o.$slots).node)==null?void 0:l.call(a,{node:n,depth:e,selected:n.id===r.selectedId,hovered:n.id===((s=r.hoveredNode)==null?void 0:s.id),ancestorSelected:r.hasAncestorSelected(n),dragAndDrop:i})}))}},j9={name:"Node",components:{NodeChildren:XG},inject:["root"],props:{node:{type:Object,required:!0},depth:{type:Number,default:0},dragAndDrop:{type:Boolean,default:!1}},setup(t){const e=Ut("state");let i=null;Er(t.node.visibleRef)?i=t.node.visibleRef:i=Fe(!0);let o=null;Er(t.node.expandedRef)?o=t.node.expandedRef:o=Fe(!1);const r=Fe(null);let n=null;const s=()=>{var h,p;if(!((h=t.node.children)!=null&&h.length)||!e.dragPosition||((p=e.hoveredNode)==null?void 0:p.id)!==t.node.id||o.value){clearTimeout(n),n=null;return}const g=e.getNodeDropPosition(t.node,r.value);if(g!=="center"&&g!=="bottom"){clearTimeout(n),n=null;return}n===null&&(n=setTimeout(()=>{o.value=!0,n=null},500))};Zt(()=>e.dragPosition&&e.hoveredNode,s);const a=()=>e.onNodeMouseEnter(t.node),l=h=>e.onNodeMouseDown(t.node,h),c=h=>{e.onNodeMouseMove(h),s()},u=At(()=>{var h;return!t.dragAndDrop||!e.dragPosition||((h=e.hoveredNode)==null?void 0:h.id)!==t.node.id?null:e.getNodeDropPosition(t.node,r.value)}),d=()=>e.onNodeMouseUp(t.node,r.value,o.value);return{state:e,nodeRef:r,expanded:o,visible:i,dropHelperPosition:u,hasAncestorSelected:e.hasAncestorSelected,onMouseEnter:a,onMouseDown:l,onMouseMove:c,onMouseUp:d}}};const vMt=j9,CMt={class:"bimdata-tree__node__content__element"};function IMt(t,e,i,o,r,n){var s,a;const l=z("BIMDataIcon"),c=z("NodeChildren");return D(),U(Mt,null,[Tt(v("div",{ref:"nodeRef",class:Ne(["bimdata-tree__node",{"bimdata-tree__node--selected":t.node.id===t.state.selectedId,"bimdata-tree__node--ancestor-selected":t.hasAncestorSelected(t.node),"bimdata-tree__node--highlighted":t.node.id===t.state.highlightedId}]),onMouseenter:e[2]||(e[2]=(...u)=>t.onMouseEnter&&t.onMouseEnter(...u)),onMousedown:e[3]||(e[3]=(...u)=>t.onMouseDown&&t.onMouseDown(...u)),onMousemove:e[4]||(e[4]=(...u)=>t.onMouseMove&&t.onMouseMove(...u)),onMouseup:e[5]||(e[5]=(...u)=>t.onMouseUp&&t.onMouseUp(...u))},[t.dropHelperPosition==="top"||t.dropHelperPosition==="bottom"?(D(),U("div",{key:0,class:"bimdata-tree__node__drop-helper",style:Se(`--drop-helper-top: ${t.dropHelperPosition==="top"?"0px":"30px"};`)},null,4)):be("",!0),v("div",{class:"bimdata-tree__node__content",style:Se(`padding-left: calc(var(--spacing-unit) * 2 * ${t.depth});`)},[v("div",{class:"bimdata-tree__node__content__arrow",onMousedown:e[1]||(e[1]=bt(()=>{},["stop"]))},[((s=t.node.children)==null?void 0:s.length)>0?(D(),U("div",{key:0,class:"bimdata-tree__node__content__arrow__content",onClick:e[0]||(e[0]=u=>t.expanded=!t.expanded)},[O(l,{name:"chevron",size:"xxxs",rotate:t.expanded?90:0},null,8,["rotate"])])):be("",!0)],32),v("div",CMt,[Ct(t.$slots,"default",{},()=>[dt(X(t.node.label),1)],!0)])],4)],34),[[Ai,t.visible]]),((a=t.node.children)==null?void 0:a.length)>0&&t.expanded?(D(),oe(c,{key:0,node:t.node,depth:t.depth+1,"drag-and-drop":t.dragAndDrop},null,8,["node","depth","drag-and-drop"])):be("",!0)],64)}const jMt=W(vMt,[["render",IMt],["__scopeId","data-v-77e5bb06"]]);function bMt(t,e){const i=Cn({selectedId:null,highlightedId:null,hoveredNode:null,trees:t.data,dragPosition:null});Zt(()=>t.selectedId,()=>{i.selectedId=t.selectedId??null}),Zt(()=>t.highlightedId,()=>{i.highlightedId=t.highlightedId??null}),Zt(()=>i.hoveredNode,()=>e("hover",i.hoveredNode));const o=or(null);Zt(()=>t.data,L=>{i.trees=L});const r=()=>{o.value=null,i.dragPosition=null},n=L=>{i.hoveredNode=L},s=(L,w)=>{w.stopPropagation(),e("click",L),o.value=L,window.addEventListener("mouseup",r,{once:!0})},a=L=>{if(!o.value)return;const{clientX:w,clientY:m}=L;i.dragPosition={x:w,y:m}},l=(L,w,m)=>{var C,I;if(!t.dragAndDrop||!i.dragPosition||((C=i.hoveredNode)==null?void 0:C.id)===((I=o.value)==null?void 0:I.id)||i.isDescendant(L,o.value))return;const j=h(L,w);let b=null,T=null;const P=p(o.value);switch(j){case"top":b=p(L),T=(b?.children??i.trees).findIndex(R=>R.id===L.id);break;case"bottom":L.children&&m?(b=L,T=0):(b=p(L),T=(b?.children??i.trees).findIndex(R=>R.id===L.id)+1);break;case"center":b=L,T=0;break}const S=b?.id===P?.id,k=(P?.children??i.trees).findIndex(R=>R.id===o.value.id);S&&(j==="top"||j==="bottom")&&k<T&&T--,!(S&&T===k)&&e("drop",{node:o.value,previousParent:P,parent:b,index:T,position:j})},c=()=>{i.hoveredNode=null},u=()=>{e("click",null)},d=()=>{if(!t.dragAndDrop||!i.dragPosition||i.trees.indexOf(o.value)===i.trees.length-1)return;const L=i.trees.includes(o.value);e("drop",{node:o.value,parent:null,index:L?i.trees.length-1:i.trees.length,previousParent:p(o.value)})};i.onNodeMouseEnter=n,i.onNodeMouseDown=s,i.onNodeMouseMove=a,i.onNodeMouseUp=l,i.onNodesMouseLeave=c,i.onTreeMouseDown=u,i.onTreeMouseUp=d;const h=(L,w)=>{const{y:m}=i.dragPosition,{top:C,height:I}=w.getBoundingClientRect();return L.children?m<C+I/3?"top":m>C+I*2/3?"bottom":"center":m<C+I/2?"top":"bottom"},p=(L,w=i.trees)=>{var m;for(const C of w)if((m=C.children)!=null&&m.length){if(C.children.some(j=>j.id===L.id))return C;const I=p(L,C.children);if(I)return I}},g=(L,w=i.trees)=>{var m;for(const C of w)if(C.id===L.id||(m=C.children)!=null&&m.length&&g(L,C.children))return!0;return!1},A=(L,w=i.trees)=>{var m;const C=[];for(const I of w)I.id!==L.id&&(m=I.children)!=null&&m.length&&g(L,I.children)&&C.push(I,...A(L,I.children));return C},M=L=>i.selectedId===null?!1:A(L).some(w=>w.id===i.selectedId),f=(L,w)=>{var m;return((m=w?.children)==null?void 0:m.some(C=>C.id===L.id||f(L,C)))??!1};return i.getNodeDropPosition=h,i.getParent=p,i.getAncestors=A,i.hasAncestorSelected=M,i.isDescendant=f,i}const xMt={components:{Node:jMt},provide(){return{root:this}},props:{data:{type:Array,required:!0,validator:t=>{if(!Array.isArray(t))return!1;const e=new Set;for(const i of t){if(!Number.isFinite(i?.id)||i.children&&!Array.isArray(i.children))return!1;e.add(i.id)}return e.size===t.length}},selectedId:{type:Number,default:null},highlightedId:{type:Number,default:null},dragAndDrop:{type:Boolean,default:!1}},emits:["drop","click","hover"],setup(t,{emit:e}){const i=bMt(t,e);tn("state",i);const o=()=>i.onNodesMouseLeave(),r=()=>i.onTreeMouseDown(),n=Fe(!1),s=()=>{n.value=!0},a=()=>{n.value=!1},l=()=>i.onTreeMouseUp(),c=At(()=>t.dragAndDrop&&n.value&&i.dragPosition!==null&&i.hoveredNode===null);return{state:i,dropHelperDisplayed:c,onMouseEnter:s,onMouseLeave:a,onNodesMouseLeave:o,onTreeMouseDown:r,onMouseUp:l}}},DMt={key:0,class:"bimdata-tree__drop-helper"};function NMt(t,e,i,o,r,n){const s=z("Node");return D(),U("div",{class:"bimdata-tree",onMousedown:e[1]||(e[1]=(...a)=>o.onTreeMouseDown&&o.onTreeMouseDown(...a)),onMouseenter:e[2]||(e[2]=(...a)=>o.onMouseEnter&&o.onMouseEnter(...a)),onMouseleave:e[3]||(e[3]=(...a)=>o.onMouseLeave&&o.onMouseLeave(...a)),onMouseup:e[4]||(e[4]=bt((...a)=>o.onMouseUp&&o.onMouseUp(...a),["self"]))},[v("div",{class:"bimdata-tree__nodes",onMouseleave:e[0]||(e[0]=(...a)=>o.onNodesMouseLeave&&o.onNodesMouseLeave(...a))},[(D(!0),U(Mt,null,ii(i.data,a=>(D(),oe(s,{key:a.id,node:a,"drag-and-drop":i.dragAndDrop},{default:J(()=>{var l;return[Ct(t.$slots,"node",{node:a,depth:0,selected:a.id===o.state.selectedId,hovered:a.id===((l=o.state.hoveredNode)==null?void 0:l.id),ancestorSelected:o.state.hasAncestorSelected(a)},void 0,!0)]}),_:2},1032,["node","drag-and-drop"]))),128))],32),o.dropHelperDisplayed?(D(),U("div",DMt)):be("",!0)],32)}const SMt=W(xMt,[["render",NMt],["__scopeId","data-v-8a1ab21a"]]),kMt=Object.freeze(Object.defineProperty({__proto__:null,BIMDataBigSpinner:Vxe,BIMDataButton:bn,BIMDataCard:p9,BIMDataCarousel:LDe,BIMDataCheckbox:BC,BIMDataColorSelector:NDe,BIMDataDatePicker:e$e,BIMDataDropdownList:x$e,BIMDataDropdownMenu:O$e,BIMDataFileIcon:est,BIMDataIcon:ost,BIMDataIconAddFile:p8e,BIMDataIconAddFolder:m8e,BIMDataIconAddGavel:T8e,BIMDataIconAddList:Z8e,BIMDataIconAddUser:$8e,BIMDataIconAlphabeticalAscending:dNe,BIMDataIconAlphabeticalDescending:CNe,BIMDataIconAlphabeticalSort:ENe,BIMDataIconAlt:YNe,BIMDataIconAngle:$Ne,BIMDataIconApi:n9e,BIMDataIconApp:g9e,BIMDataIconArchive:v9e,BIMDataIconArrow:N9e,BIMDataIconAttach:B9e,BIMDataIconBcf:G9e,BIMDataIconBcfPolychrome:hKe,BIMDataIconBuilding:_9e,BIMDataIconBurgerMenu:n6e,BIMDataIconCalendar:p6e,BIMDataIconCaliper:m6e,BIMDataIconCamera:x6e,BIMDataIconCancelCamera:O6e,BIMDataIconCaret:w9,BIMDataIconCheck:_6e,BIMDataIconChevron:Wl,BIMDataIconClassificationCategory:aSe,BIMDataIconClassificationElement:LSe,BIMDataIconClick:bSe,BIMDataIconClose:RC,BIMDataIconCloud:USe,BIMDataIconColor:ZSe,BIMDataIconComment:v7e,BIMDataIconCreateSpace:i7e,BIMDataIconCreateWindowPolychrome:vKe,BIMDataIconCreateZone:g7e,BIMDataIconDateAscending:T7e,BIMDataIconDateDescending:G7e,BIMDataIconDefault:UG,BIMDataIconDelete:g9,BIMDataIconDeniedFile:nke,BIMDataIconDetach:pke,BIMDataIconDistance:Cke,BIMDataIconDocInfoPolychrome:PKe,BIMDataIconDoubleChevron:L9,BIMDataIconDown:Bke,BIMDataIconDownload:Gke,BIMDataIconDrag:nTe,BIMDataIconEdit:pTe,BIMDataIconEllipsis:FG,BIMDataIconExpanded:ETe,BIMDataIconExplosion:FTe,BIMDataIconExport:KTe,BIMDataIconExportIfc:nEe,BIMDataIconExportXlsx:wEe,BIMDataIconFailed:jEe,BIMDataIconFileDwgPolychrome:JKe,BIMDataIconFileDxfPolychrome:s_e,BIMDataIconFileIfcPolychrome:f_e,BIMDataIconFileImagePolychrome:N_e,BIMDataIconFileJpegPolychrome:Q_e,BIMDataIconFilePdfPolychrome:X_e,BIMDataIconFilePlanPolychrome:lqe,BIMDataIconFilePngPolychrome:mqe,BIMDataIconFilePointCloudPolychrome:Sqe,BIMDataIconFilterList:TEe,BIMDataIconFitView:YEe,BIMDataIconFolder:WEe,BIMDataIconFolderMove:oze,BIMDataIconFolderOpen:uze,BIMDataIconFolderPolychrome:Uqe,BIMDataIconFullscreen:fze,BIMDataIconGavel:Ize,BIMDataIconGrid:Fze,BIMDataIconGroup:qze,BIMDataIconHide:rPe,BIMDataIconHome:hPe,BIMDataIconIfc:LPe,BIMDataIconIfcFile:bPe,BIMDataIconImport:EPe,BIMDataIconInProgressFile:ABe,BIMDataIconIndexAscending:GPe,BIMDataIconIndexDescending:qPe,BIMDataIconInformation:rBe,BIMDataIconInvitation:yBe,BIMDataIconIsolate:DBe,BIMDataIconKey:PBe,BIMDataIconLeft:QBe,BIMDataIconLinkedDocument:KBe,BIMDataIconList:lOe,BIMDataIconListManage:gOe,BIMDataIconLocation:vOe,BIMDataIconLock:NOe,BIMDataIconLogout:BOe,BIMDataIconMeasure:GOe,BIMDataIconMinus:_Oe,BIMDataIconModel3D:oRe,BIMDataIconNamingConvention:hRe,BIMDataIconNavigation:LRe,BIMDataIconOrganization:bRe,BIMDataIconParameters:ERe,BIMDataIconPathway:FRe,BIMDataIconPieGraph:_Re,BIMDataIconPipette:oUe,BIMDataIconPlan:uUe,BIMDataIconPlus:fUe,BIMDataIconPreview:IUe,BIMDataIconProject:kUe,BIMDataIconQuickSelect:FUe,BIMDataIconReadonlyFolder:JUe,BIMDataIconRedo:eFe,BIMDataIconReduced:dFe,BIMDataIconRefresh:wFe,BIMDataIconRemoveModel:NFe,BIMDataIconReprocessIfc:UFe,BIMDataIconReset:ZFe,BIMDataIconRestore:tYe,BIMDataIconRight:lYe,BIMDataIconRotate:wYe,BIMDataIconRules:jYe,BIMDataIconSandglass:TYe,BIMDataIconSave:UYe,BIMDataIconScreenConfig:WYe,BIMDataIconScreenshot:gQe,BIMDataIconSearch:m9,BIMDataIconSection:DQe,BIMDataIconSetAsModel:YQe,BIMDataIconSettings:WQe,BIMDataIconShare:tGe,BIMDataIconShow:lGe,BIMDataIconShowSelected:fGe,BIMDataIconSmartview:bGe,BIMDataIconSocotec:EGe,BIMDataIconSpace:GGe,BIMDataIconSpace2:qGe,BIMDataIconSpacing:cHe,BIMDataIconSplit:CHe,BIMDataIconStorey:SHe,BIMDataIconStructure:OHe,BIMDataIconStructurePolychrome:Wqe,BIMDataIconSuccess:HHe,BIMDataIconSurface:iVe,BIMDataIconSwap:dVe,BIMDataIconSynchro2D:NVe,BIMDataIconSystem:BVe,BIMDataIconTag:VVe,BIMDataIconTranslate:iZe,BIMDataIconTree:cZe,BIMDataIconUnarchive:MZe,BIMDataIconUndo:CZe,BIMDataIconUnion:SZe,BIMDataIconUp:OZe,BIMDataIconUpload:_Ze,BIMDataIconUser:oJe,BIMDataIconValidate:uJe,BIMDataIconValidatedFile:mJe,BIMDataIconVersioning:kJe,BIMDataIconVideocam:RJe,BIMDataIconViewer2DPolychrome:oXe,BIMDataIconViewer3DPolychrome:pXe,BIMDataIconVisa:JJe,BIMDataIconWarning:eWe,BIMDataIconWindowBottom:aWe,BIMDataIconWindowLeft:yWe,BIMDataIconWindowRight:DWe,BIMDataIconWindowTop:PWe,BIMDataIconWindowed:AWe,BIMDataIconZone:ZWe,BIMDataIconZone2:oKe,BIMDataIllustration:p1t,BIMDataInput:C1t,BIMDataInputOutlined:P1t,BIMDataLoading:G1t,BIMDataMenu:q1t,BIMDataMenuInline:tgt,BIMDataMultiplePieChart:lgt,BIMDataPaginatedList:GG,BIMDataPieSpinner:Agt,BIMDataRadio:vgt,BIMDataResponsiveGrid:jgt,BIMDataSafeZoneInline:Ngt,BIMDataSearch:zgt,BIMDataSearchAutocomplete:qgt,BIMDataSelect:w4t,BIMDataSimplePieChart:j4t,BIMDataSlider:S4t,BIMDataSpinner:QG,BIMDataTable:q4t,BIMDataTabs:tMt,BIMDataText:KG,BIMDataTextarea:uMt,BIMDataTextbox:UC,BIMDataToggle:fMt,BIMDataTooltip:yMt,BIMDataTree:SMt},Symbol.toStringTag,{value:"Module"})),$G=Object.freeze({bisque:16770244,orange:16753920,coral:16744272,red:16711680,maroon:8388608,khaki:15787660,tan:13808780,peru:13468991,sienna:10506797,brown:10824234,greenyellow:11403055,yellowgreen:10145074,olive:8421376,green:32768,darkgreen:25600,lightcyan:14745599,skyblue:8900331,steelblue:4620980,blue:255,darkblue:139,plum:14524637,hotpink:16738740,magenta:16711935,purple:8388736,indigo:4915330,ghostwhite:16316671,silver:12632256,darkgray:11119017,grey:8421504,black:0}),TMt=["bisque","khaki","greenyellow","lightcyan","plum","ghostwhite"];function Ph(){const t=Object.entries($G).filter(([i])=>!TMt.includes(i)),e=Math.floor(Math.random()*t.length);return t[e][1]}const EMt={props:{message:{type:String,required:!0},active:{type:Boolean,default:!0}}},zMt={key:0,class:"bimdata-empty"},PMt={class:"m-t-6"};function BMt(t,e,i,o,r,n){return i.active?(D(),U("div",zMt,[Ct(t.$slots,"default"),v("p",PMt,X(i.message),1),Ct(t.$slots,"footer")])):be("",!0)}const Op=W(EMt,[["render",BMt]]),OMt=Object.entries($G).reduce((t,e,i)=>(i%5===0?t.push([e]):t[t.length-1].push(e),t),[]),RMt={props:{selectedColor:{type:Number,default:null}},emits:["color-select"],data(){return{colorLines:OMt}},methods:{toColorString(t){return`#${t.toString(16).padStart(6,0)}`}}},UMt=["title","onClick"];function FMt(t,e,i,o,r,n){const s=z("BIMDataCard");return D(),oe(s,{class:"color-selector"},{content:J(()=>[(D(!0),U(Mt,null,ii(r.colorLines,(a,l)=>(D(),U("div",{key:`colorLine${l}`,class:"color-selector__line"},[(D(!0),U(Mt,null,ii(a,([c,u],d)=>(D(),U("div",{key:`colorElement${d}ofColorLine${l}`,class:Ne(["color-selector__line__element",{selected:u===i.selectedColor}]),style:Se(`background-color: ${n.toColorString(u)}`),title:c,onClick:h=>t.$emit("color-select",{name:c,value:u})},null,14,UMt))),128))]))),128))]),_:1})}const b9=W(RMt,[["render",FMt]]),YMt="data:image/gif;base64,R0lGODlhxAF6AfcAAAEBAQAAAAMDAxwdHwAAAiotPg8PEAUFBdbW1vHy9/39/P38/vv7+gEAAERFSp6gqSEkMiwuOiotOPr7/01RXc7W2oeIizw8PNXY2D5BTf////T09KzAwqu+v//+//Pz8/Xz9LLFxef3+a+/wvXx9u7x+Y+RlPTz9v///PHy8/3+/vL086nAwa/Cw+X29i0tLUFBQi8vL+rr7i4uM3JycicqNS0uN3Jzc21tbd3d3aurq62trUVIVX19fnBwcHx8fBgWGtPT04yRnPPy9yUlJeXt9ikpKU1PV+Tk6tXa3AwMDCIiIoKCgszN1Hp6egoKChcXF0JGThIUHFZVWSotQPf5/O7v8ggICVhZX4uLjKCgoLCwsebn552dniguQR8fIIqMlRITEzI0PiYsPenp6gMLC6mqtPX19fX19uzs7Li4ubu7u7S0tMjIyZeZoCkvOff7/1JSUlNZXiYuPDMzM87Pz+Tk5JeXl97g3ywsLMDAwE9PT0tLSzc3N66trX19faenp+3t7bS0tb29vWRkZPDy7/Hx8UZHSSctQMPExN7h4SguQiEtRHV1dYSEhJGRkRgYGFhYWDo6OiguP9LS0mZmZvz+/15fX/Pz8f3/+6WlpaKnsjc9S36Ci+Xl5eTi4oGGlSoxQ/L29+Tm5j9GVVNcZmVlZHh6g9bc4sHGy+Lm6vD09ygvPnN1ft7h6hcWFauxt3Bzfd7h5Oz2+PLy9mVka2lqcsPL0lpdaHx6gmtwfl9nbW9vbwgICLS4xWxvdPTy8bCyu8DAxF9ibL7AzDQ4SJCaoF1lY2hoae719I6XohoaGlVVVS40QlVWVYmSn8rU1RMYFwgJBm5zf+n298DNzrfGx7fLzMvf32Rse7zMzsTS08DU1eHu8KStq7C/v9vv79To6M/j5KK4uExcXVBgZsbW2jxFSKLCx6CwtMjc3Y+ps5CfpUlhZ7S1sS83Sr/R3bTN6qnQ+zI6TjU8UzlBXTtEWzpCWTlCWzpDXDtCXDZCWra0sgAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/ilPcHRpbWl6ZWQgd2l0aCBodHRwczovL2V6Z2lmLmNvbS9vcHRpbWl6ZQAh+QQECgD/ACwAAAAAxAF6AQAI/wA3CBxIsKDBgwgTKlzIsKHDhwzzQCoEAqLFixgzatzIsaPHjxdpBBhJsqTJkyZ3gFzJsqXLjxYCAPrwsqbNmzhz6iQoEqXPnzJ3Ch1KNCEeJZGKKl3KtKnHnkCjklTptKrVjpKWXN3KtatQqFKjUvVKtqxAJgH0mF3Ltu1CsGF/jnVLV6meAI3O1N3LlyvcuCjn9h1s0wAdwogT7/wLOKXixyv7fIFMuXJHxo2nWt4cUgnnz6ATYs4cNLTpg3cEJDrNmvPozIJbh75bSbbtx68bx77NucEy3sD75ga8OzjlGE+4GF/Odnjc4swT3xCQQ2/061udh4WOva+mAEG6i/93ql0q9/F01wBQg7490fJi3SNuAyALTfn4bcIHej4/WQwNEOLfgC3tJxeBewEgyX0INqiRgT7156BVSkw04YUWQRgYhmvRAUAgHIb4FmkR3qbciSimqOKKLLbo4oswtngJeNaJaCNPJG7YmiQ59ujjjyTVceOQA2l4koRt3bHHkkwmRdASAdAhyZRUVmnllVhmqeWWXHaJ5RMBpEEkkUY69hiURzKYB3WsfREmGmPeWGZJSLK1hBEpWPfdFjWueWKNnLlJUZw2zqnZmXjqWZqYBgDgKJCQRhoViISKaOhIda71RaICpYbSpneGKuqopJZq6qmopqqqqYcAWumFly7/mtimhgxEXx644holg6/2ClmsmZpFq1ENHObrsbhFGmxZjUrp7LNSAgAJIaZQa2212F6r7bbcduvtt+CGK+645JZr7rnopqvuuuy26+61Hj7q47JkHSDpvfjmq+++/Pbr778AA0mvV43KG/DBCCes8MIMN3zwwF0V7PDEFFds8cUY6wsxVxJn7PHHIIcsMsIbb9XxyCinrPLKLB+q2MktxyzzzDT/W/JVMNes884898wfZDn7LPTQRK98M4UGF6300kxXfHRVYTQt9dRUB/y0U1EnXfXWXHdNHNBehy322Gk+pgTZaKe99dVNHRLD23DHLffcdNdt991456333nz3/+3334AHLvjghBdueOGQKIvs4ow/pXjjkEf+0HSQsi355ZY+jvnmmwPL+eeXew766IyLTvrpvZqO+upjqs7665lXDvvssQtM++2wak2i5bj3HprrvgePHvDCF38d8cYnHxzyyjcvG/POR/+77qTxLv31ZUGP/fbJys7995tpD/74dYlP/vlrmY/++l2pz/77VbkP//xKyU///Ytpjv/+5OnP//9FsR8A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itIuK4Fw6ModMEegmQG/8O5dzNihSr9Ci9ptTLmywsdML1q0zLkzYIlIMXsebVk0UNOkSVtNy3Zoyr41UaeerbY13deyX+amTXk179/AgwsfTry48ePIkytfzry58+fQo0ufTr269etDsWvXu3u796aav4v/v9p9vPme4c+rX8++vfv3VevCny9TK/37LrVakoq//0jf/gVYlYAEFmjggQgmqOCCDDbo4IMQRijhhBRWaOGFGGao4YYW4lYeh955CBqI7IlIYnsmnrjeY7CpqJ6HLq7owYwebBajeTus4dqN5oUyUDFC8HgeFZuVskCNQn7XFVtBtpWkkhY16eSTId5G5XlHXjleBmdp+d2MXoYp5phklmnmmWimqeaabLbp5ptwxinnnHTWaeedeOap55589unnn4AGKuighBZq6KGIJqrooow26uifKtj32aNiRUrQBRFI8IamnG7qaaegfipqqKSOamqplzaKCKV5seLFIml5/0HpJLSyihattdqq66689urrr8AGK+ywxBbr0CTGTtUVRpsmS9MYVSREzVvOhsRpKRzN4WO1O9HxF2GwcmutCYoBNplBnJwrbkeWwFGFL8syJB9h64bE5Y+chHuQqzwg4mq9Jb0Krrr0QgbwwQgnrLBxsi7s8MPedbIqxLpRbPHFGGes8cYcd+zxxyCHTFMAInNEMsklm5zyQwCsnFEABAzAzgDo5EXLzSfgTAuhBBBQDjvj1DyABePQDFbOSONs6C7klHEMOuuE5bJAAACwhxgCCLDLNNIYtEEyNoUQbAMDVF32AWgDggkmZQcVyABcwM1q1QJ4EAfdalO1gq1VH/8JQ89qf7AFdzorvWfLMHswwwR/B+5HyxuwVnjOfPbcswcELH6BFikIHoAjZ3gNgorWQFXNANssZzkBC5QdAwNbkBHI46CTCQ3qqWtjtHBkN9AA5nZpYAcXtEfe9hnIh85h5F8371XzySM/XO+/mw0AHQoQ//nXx4Pg/YnRh/8B9NzzfrYGdLvugSBDUy6k9/DHL//3vPsOgALp94w9DD10eeP8AISfcRB3Nsth7w5vSxL5Fki+6VENf4TJ3JEmaIcnMfCCxiPO/QizgxgEoAt64EUAcDA8U7RsamVTwOsa8YPracARiOGCIUyIws9A7gUf1MP2PlDDEy7lBq7DgAA4mMDDHhKQLnTY4B+KWMOD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UapcybKly5cwWe7YQDOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5ZhpEOBAkPmy562bO38eTVU06dNRFahWgLq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw4v/H0++vPnz6NOrX8++vfv38OPLn0+/vv37+PPr38+/v///AAYo4IAEFmjggQgmqOCCDDbo4IMQRijhhBRWaOGFGGao4YYcdujhhyCGKOKIJJZo4okopqjiiiy26OKLMMYo44w01mjjjTjmqOOOPPbo449ABinkkERyuMiRSHqh5CQQLelFkS4l6eQkVD7ZkJNQtlTAllUuKRCTV06ZpUpcdjklkgudOSZJiLSJyAAEQBABK3QqKZAlD0lp5ZoguTlGGVVIIeccSm6igkAP4KmQn17yKVKSCxjzRZm+VBHBlQQVMYEqjoaU5BdVNDFom3xYUgICoTwERxOniNKpRmXG/0rJBge8EsYyXxzgQBsewAFGAQgcMVAwVPj66kixcvlKFgoA0AUZALRRBwG3VqCCLZwgMQFBqRx70pxl1BqHAnncoYEAhjDQAAZGQEBQMwQN461JEhhQgi9PhLHavrPSIS8C3RoEx7x9fgqNJYOgq8G+ZPQaRzAFdTOQBAQXvOQAEqiiARcLN6IBL+ROgAIdo84pwRsVP0rFpxSosLAGMMAc8iqC+pkymyt/KsjLMV+gQh+RLsPozd8myesEN1xrSR+JQIAx0St9KkAqvS4sQw4X1Awm1PR2KYXCyVBLc8lnNso1rGOkDQEBMERBcjTUkl32nmdvpLagNWtNZd2ezv/NKCNy842Snn4TbqfgaP9dp5iI41T14x40zhLkVUu+EuW9Wq4S5pFrfhLnnn+OeegmgU46SaafrvrqrLfu+uuwxy4btQHU3oDtgNDkRwCO0FRJAGnQJPwJxBdv/PHIJ6/88Mw37/zz0Ec//EDSV2/99R2p+jIDZ2DvvfSX0W477rrz7jvw3y+vfvrst18TZx+4L3/zEG3f/fzsfzb+7QTkfsLuvTvB72SwPvwZEBMITKAC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SZKkPHgcS6pcybKlS4IePDy09LKmzZs4D8bMybOnz5w7fwodSvRj0KJIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS9ZnhQIR0EpQy7ZthSYVBEALUrauyJht81LZy3eCX0t+7QoOGbOj4cKICw9efPew48QLFDCebBGy5cuKKWtWiLlz4s2gCX8OTbry6NKoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw4v/H0++vPnz6NOrX8++vfv38OPLn0+/vv37+PPr38+/v///AAYo4IAEFmggRCckqOCCDDbo4IMbRCjhhBRWaOGFGGI4UIYcdughhRI99uGIJEJo4oklpqjihAIZ8sGKMF4YomMx1mjjjZjkqOOOPPbo4486VgKAAEAWaeSRP87IQCFINunkkzhCKeWTdBE55ZVFKonlllyiGOWXE8ZgJZgqaknmmV6miSaJPwQw5poemgmnhiOJg42deN5pZ07h9Onnn3/WcJCfAwEKzqGIJqroooW6AM5djkYqqQskScrNpZhmqumm2nBKUKecgirqqNeQWuqppQ5kTapyCYRqCLDGdhrrp7OSxEELuHbAwje75rrrRL0GK6yuxA5rLK4gzXnGssw26+yzXwokDQYrQGvttTciGMi23DLpbbfgpiHuuOSWOy5BaRAJlFNuvinVi/Aqa+F68nJIb710pgfCvvz26++/AAcsML/3DmzwwQgXjG+FCi88YUAAIfkEBQoAAgAsQADAANAAaAAACP8ANwgcSLCgwYMHVShcuFCAw4cQI0qcSLGixYsYM2rcyLGjx48SGYpU+FCew3jxRIBcybKly5cwY44cGVEePJUxc+rcybOnxZkia6a0ZMmn0aNIk14EqqGpBqVQo0pVytTpRBFPp2rdyhVj1aZdw4odG/KrvLNob2Yly7YtV6dW3cqdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIE8tE4cFDgceQJ0meTLmyl8uYM2vezLmz58+gQ3eeoNgj48aRLateLbq169ewUz+GU7pjY7i4c+vezbu379/Ag/uuzfG28K/HkytfPpy4aePQmUufTr23c5DRq2vfrv267ezIw4P/H0++vPnz6L1rRC+evfv38N2rn0+/vv37+PPr38+/v///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stZcey32QWCHPfbZt5U9Itpst+3223DHLffcdNdt991456333lxZax0yCIAHLvjghBdueOB8j5Vzzt0d7vjjjifeN2YbVG755ZhnrvnmnEu+FeWchy766JZ7/nnakBOeXOqqm54VCH+zXvjqrLuuuMoi4L6ySbnnbrtUHHQg3wgdED+CfMgfb/zyzC/fUAjInxYQACH5BAUKAAAALNcA6AB6ADgAAAj/APMJHEiwoMGDCBMqXMiwoUN9ECNK1AegoiUVFTNq3Mixo8ePIEOKHEmy4sSTEAFoKMmypcuXME2iPDkBY8ybOHOWnElTgYaHQIMKHUqU50QVNnUqXarUqESkTKNKfek0ItSpWLN+rArxqtavYDsa9OAhrNmzY8ueXas1Ldu3U93Cndu0IFm6eHHKzcu35d6+gEX+DUxYrF21FMp0LFG4b1oNylRW9EWqMWG5UdSahGPZ8eHOoAE8rmcxdODBpgGjTs13NWuzXO15fc029mzaaO3p3s3balLcuXsLl/0beFjbxY1/Ra48uFGVyZtjdWrxovTr2LNr3869u/fv4MOLcx9Pvrz58+jTq1/Pvv1UDfCrb5hPv779+/jz198Of2Vp/QAGCCB/GK1g4IEIJqjgggw2yB90DUYo4YQGcreBfALap1GG+FkIIYf5bQgieC6UKJkLJ0aFIoraseDiizB2IOOMHNRo44045tjCjjz22AJwAQEAIfkEBQoAAwAseAC4ANkAaAAACP8ABwgEILCgwYMIEypcyLChw4cQI0qcSLGiRYMKNGggeLGjx48gQ4ocWVEAyZMoU6pcGVIBR5YwY8qcORLNS5o4c+rcOSBAT55Agwod6dPn0KNIkz68qbSp06FdmD6dSlUmgEFGq2rdmhIAHqlcw4qtGGfj2LNoKYJNy7btQLdw466NS5dqRrN18+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+suna+379/1CsKxtLsq8OP17g0gXpwqcuQam099PiD5PXv2LGl/zr279+/gw4v/H0++vPnz6L1rl/40/Hr2Td0zh59UPv2t139Hv288//X9/E3n3z0ABujUgARqYKCA+im44IEDFvggUghKOOFQFTp4IYURarghhh1+yGGDIh6VYYkg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Sc1qRjOZQaSkNbfJzW1ic0wxCac4x0nOcpqznN88pzrXyU5xKrOb8PyAPOMpzXfOk5747OYyRyRJgn76858ADahABwrQZHKgAwgdQUIVytCFNvShEG1ICGi3z8kk4aIYxahfzsDRjnr0o7j0DTWSMdKSknQWKE0pSiuaEZB61CYBAQAh+QQFCgAAACywAHUA8ACuAAAI/wABCBxIsKDBgwgTKlzIsKHDhxAjSpxIseLBDRYzatzIsaPHjyALYgxJsqTJkyhP7tjAMqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KtavXr2DDih1LtqzZs2jTql3Ltq3bt3Djyp1Lt67du3jz6pWYBgAOAH33Cjb4N/DgwYYPI1aQRoHix5AjS55MubLly5gza97MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx48iTK1/OvLnz59CjS59Ovbr169iza9/Ovbv37+DDi94fT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+///8ABijggAQWaOCBCCao4IIMNujggxBGKOGEFFZo4YUYZqjhhhx26OGHIIYo4ogklmjiiSimqOKKLLYYlAYwCsTSjDTWaOONON54HYwaDIRRjkAGCeSOKgC2wpFIJqnkkkw22eSORjop5ZRUHondSELiSFCWOkLJZZBbfsmdC2QCZqYLZnqEJprWseDmm3B2IOecHNRp55145tnCnnz22YKLOlWAATaDCkqoTV+O9FsyjFLT6CyPRkqfomHaFBAAOw==",QMt={distance:"m",path:"m",angle:"\xB0",surface:"m\xB2"},GMt="measure2d_measurements",HMt={name:"BIMDataMeasure2D",components:{ColorSelector:b9,BIMDataEmpty:Op},data(){return{guide:YMt,carrier:null,ruler2dPluginAvailable:!1,surface2dPluginAvailable:!1,angle2dPluginAvailable:!1,path2dPluginAvailable:!1,selectedMeasurementPlugin:null,currentColor:null,currentPlugin:null,currentGroup:null,measurements:[],isUpdated:!1,hasBeenOpened:!1,pluginViewer:{},calibrating:!1}},computed:{storageKey(){return`${GMt}-${this.carrier}`},model(){return this.pluginViewer.model},isCalibrated(){return this.carrier!=="plan"||this.model&&this.model.size_ratio!=null},standard(){return this.model.size_ratio||1}},watch:{model(t){t&&this.setStandard(t.size_ratio)},currentGroup(t){this.measurements.forEach(e=>{e.visible=e.group===t})},measurements(t){t.forEach(e=>{e.visible=e.group===this.currentGroup})},selectedMeasurementPlugin(t){const e=this.measurementPlugins.get(t);if(this.currentPlugin&&this.currentPlugin!==e&&(this.currentPlugin.disable(),this.pathValidationModal&&this.closePathValidationModal()),e&&(e.enable(),t==="path")){const i=this;this.$viewer.localContext.modals.pushModal({created(){i.pathValidationModal=this},render(){return _i(p9,{width:"100%",class:"bimdata-measure2d__path-validation"},{content:()=>_i("div",{style:"display: flex; justify-content: space-between; align-items: center;"},[_i("div",this.$t("measure2d.validate_path")),_i(bn,{fill:!0,radius:!0,color:"high",width:"121px",onClick:i.onPathCancel},{default:()=>this.$t("global.cancel")}),_i(bn,{fill:!0,radius:!0,color:"primary",width:"121px",onClick:i.onPathValidate},{default:()=>this.$t("global.validate")})])})}},null,{display:"banner"})}this.currentPlugin=e},currentColor(t){this.measurementPlugins.forEach(e=>{e.color=t})}},mounted(){var t,e,i,o;const r=this.$viewer.localContext.viewer;if(!r||!r.viewer){const c="Measure2d plugin cannot work without a viewer2d, dwg or plan plugin and viewer.";throw console.error(c),new Error(c)}this.carrier=r.plugin.name,this.pluginViewer=r;const n=(t=r.plugins)==null?void 0:t.ruler,s=(e=r.plugins)==null?void 0:e.surface,a=(i=r.plugins)==null?void 0:i.angle,l=(o=r.plugins)==null?void 0:o.path;this.measurementPlugins=new Map,n&&(this.measurementPlugins.set("distance",n),this.ruler2dPluginAvailable=!0,n.on("add",c=>{this.isUpdated=!0,this.makeMeasurement({type:"distance",get value(){return c.length},color:this.currentColor,object:c}),this.selectedMeasurementPlugin=null,this.currentColor=Ph()})),s&&(this.measurementPlugins.set("surface",s),this.surface2dPluginAvailable=!0,s.on("add",c=>{this.isUpdated=!0,this.makeMeasurement({type:"surface",get value(){return c.surface},color:this.currentColor,object:c}),this.selectedMeasurementPlugin=null,this.currentColor=Ph()})),a&&(this.measurementPlugins.set("angle",a),this.angle2dPluginAvailable=!0,a.on("add",c=>{this.isUpdated=!0,this.makeMeasurement({type:"angle",get value(){return c.angle},color:this.currentColor,object:c}),this.selectedMeasurementPlugin=null,this.currentColor=Ph()})),l&&(this.measurementPlugins.set("path",l),this.path2dPluginAvailable=!0,l.on("add",c=>{this.isUpdated=!0,this.makeMeasurement({type:"path",get value(){return c.length},color:this.currentColor,object:c}),this.selectedMeasurementPlugin=null,this.currentColor=Ph()})),this.currentColor=Ph(),this.carrier==="viewer2d"||this.carrier==="plan"?this.$watch(()=>this.pluginViewer.selectedStorey,c=>{this.currentGroup=c?.name}):this.$watch(()=>this.pluginViewer.model,c=>{this.currentGroup=c?.id})},onOpen(){document.addEventListener("keydown",this.onKeyDown),this.pluginViewer.viewer.ui.mode=null,this.hasBeenOpened||(this.hasBeenOpened=!0,this.$watch(()=>this.pluginViewer.model,t=>{this.measurements=[],t&&this.restoreSavedMeasurements()},{immediate:!0}))},onClose(){var t;document.removeEventListener("keydown",this.onKeyDown),this.pluginViewer.viewer.ui.mode="pick",this.selectedMeasurementPlugin=null,(t=this.pluginViewer.plugins.caliper)==null||t.disable(),this.calibrating=!1},methods:{setStandard(t){var e,i,o;[(e=this.pluginViewer.plugins)==null?void 0:e.ruler,(i=this.pluginViewer.plugins)==null?void 0:i.surface,(o=this.pluginViewer.plugins)==null?void 0:o.path].filter(Boolean).forEach(r=>{r.standard=t||1})},toggleCalibrate(){var t;this.calibrating?((t=this.pluginViewer.plugins.caliper)==null||t.disable(),this.calibrating=!1):this.onCalibrateClick()},onCalibrateClick(){this.pluginViewer.plugins.caliper.enable(this.onCalibrationValidated,this.onCalibrationCancel),this.calibrating=!0},async onCalibrationValidated(t){this.pluginViewer.plugins.caliper.disable();const e=this.$viewer.api.cloudId,i=this.$viewer.api.projectId;try{this.model.size_ratio=t,this.setStandard(t),this.$viewer.api.permissions.hasModelWritePermission&&await this.$viewer.api.apiClient.modelApi.updateModel(e,this.model.id,i,{size_ratio:t}),this.$viewer.localContext.hub.emit("alert",{type:"success",message:this.$t("measure2d.calibration_success")})}catch(o){console.error(o.message),this.$viewer.localContext.hub.emit("alert",{type:"error",message:o.message})}finally{this.calibrating=!1}},onCalibrationCancel(){this.calibrating=!1,this.pluginViewer.plugins.caliper.disable()},isHideElementDisabled(t){return t.group!==this.currentGroup},closePathValidationModal(){this.pathValidationModal.$emit("close"),this.pathValidationModal=null},onPathCancel(){this.selectedMeasurementPlugin=null,this.pathValidationModal&&this.closePathValidationModal()},onPathValidate(){const t=this.measurementPlugins.get(this.selectedMeasurementPlugin).validate();this.closePathValidationModal(),t||(this.selectedMeasurementPlugin=null)},makeMeasurement(t){const{type:e,group:i,name:o,color:r,object:n}=t;let s=r,a=!0,l;switch(e){case"distance":l=[n.startPoint,n.endPoint];break;case"angle":l=[n.startPoint,n.anglePoint,n.endPoint];break;case"surface":l=n.points;break;case"path":l=n.points;break}const c=this,u={id:n.id,group:i||this.currentGroup,unit:QMt[e],get value(){return c.standard,t.value.toFixed(2)},name:o||e,type:e,get color(){return s},get colorString(){return`#${s.toString(16).padStart(6,0)}`},set color(d){s=d,n.colorize(d)},get visible(){return a},set visible(d){a=d,n.visible=d},get points(){return l},destroy(){n.destroy()},nameEditing:!1,colorEditing:!1};return this.measurements.push(u),u},onTagClick(t){this.measurements.filter(e=>e!==t).forEach(e=>e.colorEditing=!1),t.colorEditing=!0,this.isUpdated=!0},onElementNameClick(t){t.nameEditing=!0,this.isUpdated=!0,this.$nextTick(()=>{this.$refs.elementInput&&this.$refs.elementInput.focus()})},onInputBlur(t){t.nameEditing=!1},onAddMeasurementClick(t){this.selectedMeasurementPlugin===t?this.selectedMeasurementPlugin=null:this.selectedMeasurementPlugin=t},onKeyDown(t){t.key==="Escape"&&this.onEscapeDown()},onEscapeDown(){this.selectedMeasurementPlugin=null,this.measurements.forEach(t=>{t.nameEditing=!1,t.colorEditing=!1})},onHideMeasurementClick(t){t.visible=!t.visible},onDeleteMeasurementClick(t){t.destroy(),this.measurements.splice(this.measurements.indexOf(t),1),this.isUpdated=!0},getSavedMeasurements(){let t={};try{const e=localStorage.getItem(this.storageKey)||"{}";t=JSON.parse(e)}catch{localStorage.removeItem(this.storageKey)}return t},restoreSavedMeasurements(){const t=String(this.pluginViewer.model.id),e=this.getSavedMeasurements(),i=e[t]||[];try{this.ruler2dPluginAvailable&&this.restoreMeasurements(i.filter(o=>o.type==="distance")),this.surface2dPluginAvailable&&this.restoreMeasurements(i.filter(o=>o.type==="surface")),this.angle2dPluginAvailable&&this.restoreMeasurements(i.filter(o=>o.type==="angle")),this.path2dPluginAvailable&&this.restoreMeasurements(i.filter(o=>o.type==="path"))}catch{e[t]=[],localStorage.setItem(this.storageKey,e)}},restoreMeasurements(t){t.forEach(e=>{const i=this.measurementPlugins.get(e.type).create(e.points);i.colorize(e.color),this.makeMeasurement({type:e.type,group:e.group,name:e.name,color:e.color,object:i,get value(){return e.type==="surface"?i.surface:e.type==="angle"?i.angle:i.length}})})},onSaveMeasurementsClick(){const t=String(this.pluginViewer.model.id),e=this.getSavedMeasurements();e[t]=this.measurements.map(i=>({type:i.type,group:i.group,name:i.name,color:i.color,points:i.points})),localStorage.setItem(this.storageKey,JSON.stringify(e)),this.isUpdated=!1}}},VMt={class:"bimdata-measure2d"},ZMt={key:0,class:"bimdata-measure2d__actions-0"},JMt={class:"bimdata-measure2d__actions-1"},WMt={class:"bimdata-measure2d__actions-2"},KMt={class:"bimdata-measure2d__list"},_Mt={class:"bimdata-measure2d__list__element"},qMt={class:"bimdata-measure2d__list__element__label"},XMt=["onClick"],$Mt={class:"bimdata-measure2d__list__element__tag"},eft=["onClick"],tft={class:"bimdata-measure2d__list__element__buttons"},ift={key:2,class:"bimdata-measure2d--not-calibrated"},oft={key:0,class:"bimdata-measure2d--not-calibrated__guide"},rft=["src"];function sft(t,e,i,o,r,n){const s=z("BIMDataIconSave"),a=z("BIMDataButton"),l=z("BIMDataIconCaliper"),c=z("BIMDataIconDistance"),u=z("BIMDataIconAngle"),d=z("BIMDataIconSurface"),h=z("BIMDataIconPathway"),p=z("BIMDataIcon"),g=z("BIMDataInput"),A=z("ColorSelector"),M=z("BIMDataIconHide"),f=z("BIMDataIconShow"),L=z("BIMDataIconDelete"),w=z("BIMDataPaginatedList"),m=z("BIMDataIllustration"),C=z("BIMDataEmpty"),I=Yi("click-away");return D(),U("div",VMt,[n.model?n.isCalibrated?(D(),U(Mt,{key:1},[v("div",JMt,[O(a,{class:"bimdata-measure2d__actions-1__btn-save",color:"primary",fill:"",radius:"",icon:"",disabled:!r.isUpdated,onClick:n.onSaveMeasurementsClick},{default:J(()=>[O(s,{size:"xs",margin:"0 6px 0 0"}),v("span",null,X(t.$t("measure2d.save_measurements")),1)]),_:1},8,["disabled","onClick"]),t.$viewer.api.permissions.hasModelWritePermission&&r.carrier==="plan"?(D(),oe(a,{key:0,color:r.calibrating?"primary":"default",fill:"",radius:"",icon:"",class:"bimdata-measure2d__actions-1__caliper",onClick:n.toggleCalibrate},{default:J(()=>[O(l,{size:"xs"})]),_:1},8,["color","onClick"])):be("",!0)]),v("div",WMt,[r.ruler2dPluginAvailable?(D(),oe(a,{key:0,color:r.selectedMeasurementPlugin==="distance"?"primary":"default",fill:"",radius:"",onClick:e[0]||(e[0]=j=>n.onAddMeasurementClick("distance"))},{default:J(()=>[O(c,{size:"s",margin:"0 6px 0 0"}),v("span",null," + "+X(t.$t("measure2d.distance_measurement")),1)]),_:1},8,["color"])):be("",!0),r.angle2dPluginAvailable?(D(),oe(a,{key:1,color:r.selectedMeasurementPlugin==="angle"?"primary":"default",fill:"",radius:"",onClick:e[1]||(e[1]=j=>n.onAddMeasurementClick("angle"))},{default:J(()=>[O(u,{size:"s",margin:"0 6px 0 0"}),v("span",null," + "+X(t.$t("measure2d.angle_measurement")),1)]),_:1},8,["color"])):be("",!0),r.surface2dPluginAvailable?(D(),oe(a,{key:2,color:r.selectedMeasurementPlugin==="surface"?"primary":"default",fill:"",radius:"",onClick:e[2]||(e[2]=j=>n.onAddMeasurementClick("surface"))},{default:J(()=>[O(d,{size:"s",margin:"0 6px 0 0"}),v("span",null," + "+X(t.$t("measure2d.surface_measurement")),1)]),_:1},8,["color"])):be("",!0),r.path2dPluginAvailable?(D(),oe(a,{key:3,color:r.selectedMeasurementPlugin==="path"?"primary":"default",fill:"",radius:"",onClick:e[3]||(e[3]=j=>n.onAddMeasurementClick("path"))},{default:J(()=>[O(h,{size:"s",margin:"0 6px 0 0"}),v("span",null," + "+X(t.$t("measure2d.path_measurement")),1)]),_:1},8,["color"])):be("",!0)]),v("div",KMt,[r.measurements.length>0?(D(),oe(w,{key:0,list:r.measurements,"element-key":"id",style:{overflow:"unset"}},{element:J(({element:j})=>[v("div",_Mt,[v("div",qMt,[O(p,{name:j.type==="path"?"pathway":j.type,size:"m",margin:"0 12px 0 0"},null,8,["name"]),j.nameEditing?(D(),oe(g,{key:0,ref:"elementInput",modelValue:j.name,"onUpdate:modelValue":b=>j.name=b,onBlur:b=>j.nameEditing=!1,onKeypress:si(b=>j.nameEditing=!1,["enter"])},null,8,["modelValue","onUpdate:modelValue","onBlur","onKeypress"])):(D(),U("span",{key:1,onClick:b=>n.onElementNameClick(j)},X(j.name),9,XMt))]),v("div",$Mt,[v("span",{class:"bimdata-measure2d__list__element__tag__content",style:Se(`color: ${j.colorString}; background-color: ${j.colorString}20;`),onClick:b=>n.onTagClick(j)},X(j.value)+" "+X(j.unit),13,eft),j.colorEditing?Tt((D(),oe(A,{key:0,class:"bimdata-measure2d__list__element__tag__color-selector","selected-color":j.color,onColorSelect:b=>{j.color=b.value,j.colorEditing=!1}},null,8,["selected-color","onColorSelect"])),[[I,()=>{j.colorEditing=!1}]]):be("",!0)]),v("div",tft,[O(a,{icon:"",class:"m-r-6",color:"granite",ghost:"",radius:"",disabled:n.isHideElementDisabled(j),onClick:b=>n.onHideMeasurementClick(j)},{default:J(()=>[j.visible?(D(),oe(M,{key:0,size:"s"})):(D(),oe(f,{key:1,size:"s"}))]),_:2},1032,["disabled","onClick"]),O(a,{icon:"",ghost:"",radius:"",color:"granite",onClick:b=>n.onDeleteMeasurementClick(j)},{default:J(()=>[O(L,{size:"m"})]),_:2},1032,["onClick"])])])]),_:1},8,["list"])):(D(),oe(C,{key:1,message:t.$t("measure2d.empty")},{default:J(()=>[O(m,{name:"emptyBucket"})]),_:1},8,["message"]))])],64)):(D(),U("div",ift,[r.calibrating?(D(),U("div",oft,[v("img",{src:r.guide},null,8,rft)])):(D(),oe(m,{key:1,name:"emptyMeasure"})),v("div",null,X(r.calibrating?t.$t("measure2d.calibrating"):t.$t("measure2d.not_calibrated")),1),O(a,{color:"primary",fill:"",radius:"",icon:"",width:"150px",disabled:r.calibrating,onClick:e[4]||(e[4]=j=>n.onCalibrateClick())},{default:J(()=>[O(l,{size:"s",margin:"0 var(--spacing-unit) 0 0"}),dt(" "+X(t.$t("measure2d.calibrate")),1)]),_:1},8,["disabled"])])):(D(),U("div",ZMt,X(t.$t("measure2d.no_model"))+". ",1))])}const nft=W(HMt,[["render",sft]]),aft="Speichern",lft="Entfernung",cft="Winkel",uft="Oberfl\xE4che",dft="Weg",hft="Sie haben derzeit keine gespeicherten Messungen.",pft="Umbenennen",Aft="Farbe \xE4ndern",gft="Messger\xE4t",Mft="Klicken Sie auf \u201EBest\xE4tigen\u201C, um die Zeichnung zu beenden.",fft="Kalibrierung",wft="Bitte skizzieren und best\xE4tigen Sie Ihren Standard",Lft="Um das Messwerkzeug verwenden zu k\xF6nnen, stellen Sie sicher, dass Sie Ihren Plan kalibriert haben.",mft="W\xE4hlen Sie ein Modell aus, um Messungen durchf\xFChren zu k\xF6nnen.",yft="Es muss sich um eine strikte positive Zahl handeln",vft="Plan erfolgreich kalibriert",Cft={save_measurements:aft,distance_measurement:lft,angle_measurement:cft,surface_measurement:uft,path_measurement:dft,empty:hft,rename:pft,update_color:Aft,tooltip:gft,validate_path:Mft,calibrate:fft,calibrating:wft,not_calibrated:Lft,no_model:mft,modal_error:yft,calibration_success:vft},Ift="Save",jft="Distance",bft="Angle",xft="Surface",Dft="Path",Nft="There is currently no saved measurement.",Sft="Rename",kft="Update color",Tft="Measurement tool",Eft="Click on \u201Cvalidate\u201D to end the path.",zft="Calibration",Pft="Please trace and validate your stallion",Bft="To use the measurement tool, make sure you have calibrated your plan.",Oft="Select a model to be able to perform measurements",Rft="Must be a strictly positive number",Uft="Successfully calibrated plan",Fft={save_measurements:Ift,distance_measurement:jft,angle_measurement:bft,surface_measurement:xft,path_measurement:Dft,empty:Nft,rename:Sft,update_color:kft,tooltip:Tft,validate_path:Eft,calibrate:zft,calibrating:Pft,not_calibrated:Bft,no_model:Oft,modal_error:Rft,calibration_success:Uft},Yft="Guardar",Qft="Distancia",Gft="\xC1ngulo",Hft="Superficie",Vft="Camino",Zft="Actualmente no hay ninguna medici\xF3n guardada.",Jft="Renombrar",Wft="Actualizar color",Kft="Herramienta de medici\xF3n",_ft="Haga clic en \xE2\u20AC\u0153validar\xE2\u20AC para finalizar el camino.",qft="Calibraci\xF3n",Xft="Rastree y valide su patr\xF3n",$ft="Para poder utilizar la herramienta de medici\xF3n, aseg\xFArese de haber calibrado su plano.",ewt="Seleccionar un modelo para poder realizar mediciones",twt="El n\xFAmero debe ser necesariamente positivo",iwt="Plano calibrado de forma correcta",owt={save_measurements:Yft,distance_measurement:Qft,angle_measurement:Gft,surface_measurement:Hft,path_measurement:Vft,empty:Zft,rename:Jft,update_color:Wft,tooltip:Kft,validate_path:_ft,calibrate:qft,calibrating:Xft,not_calibrated:$ft,no_model:ewt,modal_error:twt,calibration_success:iwt},rwt="Sauvegarder",swt="Distance",nwt="Angle",awt="Surface",lwt="Chemin",cwt="Vous n\u2019avez actuellement aucune mesure enregistr\xE9e.",uwt="Renommer",dwt="Modifier la couleur",hwt="Outil de mesure",pwt="Cliquer sur \u201Cvalider\u201D pour terminer le trac\xE9.",Awt="Etalonnage",gwt="Veuillez tra\xE7er et valider votre \xE9talon",Mwt="Pour pouvoir utiliser l\u2019outil de mesure, assurez-vous d\u2019avoir calibr\xE9 votre plan.",fwt="Selectionner un model pour pouvoir r\xE9aliser des mesures",wwt="Doit \xEAtre un nombre strictement positif",Lwt="Plan calibr\xE9 avec succ\xE8s",mwt={save_measurements:rwt,distance_measurement:swt,angle_measurement:nwt,surface_measurement:awt,path_measurement:lwt,empty:cwt,rename:uwt,update_color:dwt,tooltip:hwt,validate_path:pwt,calibrate:Awt,calibrating:gwt,not_calibrated:Mwt,no_model:fwt,modal_error:wwt,calibration_success:Lwt},ywt="Salva",vwt="Distanza",Cwt="Angolo",Iwt="Superficie",jwt="Percorso",bwt="Attualmente non hai misure salvate.",xwt="Rinomina",Dwt="Cambia colore",Nwt="Strumento di misura",Swt='Clicca su "OK" per completare il percorso.',kwt="Calibrazione",Twt="Indica e conferma il tuo campione",Ewt="Per poter utilizzare lo strumento di misurazione, assicurati di aver calibrato il tuo progetto.",zwt="Seleziona un modello per eseguire delle misurazioni",Pwt="Deve essere un numero positivo",Bwt="Progetto calibrato correttamente",Owt={save_measurements:ywt,distance_measurement:vwt,angle_measurement:Cwt,surface_measurement:Iwt,path_measurement:jwt,empty:bwt,rename:xwt,update_color:Dwt,tooltip:Nwt,validate_path:Swt,calibrate:kwt,calibrating:Twt,not_calibrated:Ewt,no_model:zwt,modal_error:Pwt,calibration_success:Bwt},Rwt={name:"measure2d",i18n:{de:Cft,en:Fft,es:owt,fr:mwt,it:Owt},component:nft,addToWindows:["2d","dwg","plan"],button:{tooltip:"measure2d.tooltip",position:"right",content:"panel",keepOpen:!0,icon:{component:"BIMDataIconMeasure",options:{size:"m"}}}},Uwt={name:"BIMDataMeasure3D",components:{BIMDataEmpty:Op,ColorSelector:b9},data(){return{selectedMeasurementPlugin:null,currentPlugin:null,isUpdated:!1,measurements:[],distanceMeasurementId:1,angleMeasurementId:1,spacingMeasurementId:1,spacingMeasurementEnabled:!1}},computed:{displayedMeasurements(){const t=this.$viewer.localContext.loadedModelIds;return this.measurements.filter(e=>e.modelIds.some(i=>t.includes(i)))}},watch:{selectedMeasurementPlugin(t,e){e&&this.plugins.get(e).control.deactivate(),t&&this.plugins.get(t).control.activate()},displayedMeasurements(t){this.measurements.forEach(e=>{e.visible=t.includes(e)})}},mounted(){const t=this.$viewer.localContext.pluginComponentInstances.get("viewer3d")||this.$viewer.localContext.pluginComponentInstances.get("pointCloud");if(!t){const o="Measure3D plugin cannot work without viewer3d or tileset plugin.";throw console.error(o),new Error(o)}this.viewer3d=t,this.spacingMeasurementEnabled=t.spacingMeasurementsPlugin,this.plugins=new Map,this.plugins.set("distance",t.distanceMeasurementsPlugin),this.plugins.set("angle",t.angleMeasurementsPlugin),this.spacingMeasurementEnabled&&this.plugins.set("spacing",t.spacingMeasurementsPlugin),this.updateCurrentColor();const e=Object.values(this.viewer3d.distanceMeasurementsPlugin.measurements).map(this.makeDistanceMeasurement),i=Object.values(this.viewer3d.angleMeasurementsPlugin.measurements).map(this.makeAngleMeasurement);if(this.measurements=[...e,...i],this.spacingMeasurementEnabled){const o=Object.values(this.viewer3d.spacingMeasurementsPlugin.measurements).map(this.makeSpacingMeasurement);this.measurements.push(...o)}this.distanceMeasurementSubscription=this.viewer3d.distanceMeasurementsPlugin.on("measurementEnd",o=>{this.measurements.push(this.makeDistanceMeasurement(o)),this.selectedMeasurementPlugin=null,this.updateCurrentColor()}),this.angleMeasurementSubscription=this.viewer3d.angleMeasurementsPlugin.on("measurementEnd",o=>{this.measurements.push(this.makeAngleMeasurement(o)),this.selectedMeasurementPlugin=null,this.updateCurrentColor()}),this.spacingMeasurementEnabled&&(this.spacingMeasurementSubscription=this.viewer3d.spacingMeasurementsPlugin.on("measurementEnd",o=>{this.measurements.push(this.makeSpacingMeasurement(o)),this.selectedMeasurementPlugin=null,this.updateCurrentColor()}))},onOpen(){this.viewer3d.highlightOnHover=!1,this.viewer3d.selectOnClick=!1,document.addEventListener("keydown",this.onKeyDown)},onClose(){if(this.viewer3d.highlightOnHover=!0,this.viewer3d.selectOnClick=!0,this.selectedMeasurementPlugin){const t=this.plugins.get(this.selectedMeasurementPlugin);t?.control.deactivate()}document.removeEventListener("keydown",this.onKeyDown),this.selectedMeasurementPlugin=null},unmounted(){var t;this.viewer3d.distanceMeasurementsPlugin.off(this.distanceMeasurementSubscription),this.viewer3d.angleMeasurementsPlugin.off(this.angleMeasurementSubscription),(t=this.viewer3d.spacingMeasurementsPlugin)==null||t.off(this.spacingMeasurementSubscription)},methods:{onTagClick(t){this.measurements.filter(e=>e!==t).forEach(e=>e.colorEditing=!1),t.colorEditing=!0,this.isUpdated=!0},updateCurrentColor(){this.currentColor=Ph(),this.plugins.forEach(t=>t.defaultColor=`#${this.currentColor.toString(16).padStart(6,0)}`)},onElementNameClick(t){t.nameEditing=!0,this.isUpdated=!0,this.$nextTick(()=>{this.$refs.elementInput&&this.$refs.elementInput.focus()})},onInputBlur(t){t.nameEditing=!1},onAddMeasurementClick(t){this.selectedMeasurementPlugin===t?this.selectedMeasurementPlugin=null:this.selectedMeasurementPlugin=t},onKeyDown(t){t.key==="Escape"&&this.onEscapeDown()},onEscapeDown(){this.selectedMeasurementPlugin=null,this.measurements.forEach(t=>{t.nameEditing=!1,t.colorEditing=!1})},onHideMeasurementClick(t){t.visible=!t.visible},onDeleteMeasurementClick(t){t.destroy(),this.measurements.splice(this.measurements.indexOf(t),1),this.isUpdated=!0},makeAngleMeasurement(t){return this.makeMeasurement(t,`angle-${this.angleMeasurementId++}`,t.angle.toFixed(2),"\xB0","angle",t.color)},makeDistanceMeasurement(t){return this.makeMeasurement(t,`distance-${this.distanceMeasurementId++}`,t.length.toFixed(2),"m","distance",t.color)},makeSpacingMeasurement(t){return this.makeMeasurement(t,`spacing-${this.spacingMeasurementId++}`,t.length.toFixed(2),"m","spacing",t.color)},makeMeasurement(t,e,i,o,r,n){let s=!0,a=!1,l=n;return{nameEditing:!1,get visible(){return s},set visible(c){s=c,t.visible=c},colorEditing:!1,get color(){return l},set color(c){l=c,t.color=c},name:e,value:i,unit:o,type:r,modelIds:this.$viewer.localContext.loadedModelIds,destroy(){a||(t.destroy(),a=!0)},get destroyed(){return a}}}}},Fwt={class:"bimdata-measure3d"},Ywt={class:"bimdata-measure3d__actions"},Qwt={class:"bimdata-measure3d__content"},Gwt={class:"bimdata-measure3d__list__element"},Hwt={class:"bimdata-measure3d__list__element__label"},Vwt=["onClick"],Zwt={class:"bimdata-measure3d__list__element__tag"},Jwt=["onClick"],Wwt={class:"bimdata-measure3d__list__element__buttons"};function Kwt(t,e,i,o,r,n){const s=z("BIMDataIconDistance"),a=z("BIMDataButton"),l=z("BIMDataIconAngle"),c=z("BIMDataIcon"),u=z("BIMDataIllustration"),d=z("BIMDataEmpty"),h=z("BIMDataInput"),p=z("ColorSelector"),g=z("BIMDataIconHide"),A=z("BIMDataIconShow"),M=z("BIMDataIconDelete"),f=z("BIMDataPaginatedList"),L=Yi("click-away");return D(),U("div",Fwt,[v("div",Ywt,[O(a,{color:r.selectedMeasurementPlugin==="distance"?"primary":"default",fill:"",radius:"",onClick:e[0]||(e[0]=w=>n.onAddMeasurementClick("distance"))},{default:J(()=>[O(s,{size:"s",margin:"0 6px 0 0"}),v("span",null," + "+X(t.$t("measure3d.distance_measurement")),1)]),_:1},8,["color"]),O(a,{color:r.selectedMeasurementPlugin==="angle"?"primary":"default",fill:"",radius:"",onClick:e[1]||(e[1]=w=>n.onAddMeasurementClick("angle"))},{default:J(()=>[O(l,{size:"s",margin:"0 6px 0 0"}),v("span",null," + "+X(t.$t("measure3d.angle_measurement")),1)]),_:1},8,["color"]),r.spacingMeasurementEnabled?(D(),oe(a,{key:0,color:r.selectedMeasurementPlugin==="spacing"?"primary":"default",fill:"",radius:"",onClick:e[2]||(e[2]=w=>n.onAddMeasurementClick("spacing"))},{default:J(()=>[O(c,{name:"spacing",size:"xs",margin:"0 6px 0 0"}),v("span",null," + "+X(t.$t("measure3d.spacing_measurement")),1)]),_:1},8,["color"])):be("",!0)]),v("div",Qwt,[O(f,{list:n.displayedMeasurements,"element-key":"id",style:{overflow:"unset"}},{empty:J(()=>[O(d,{message:t.$t("measure3d.empty")},{default:J(()=>[O(u,{name:"emptyBucket"})]),_:1},8,["message"])]),element:J(({element:w})=>[v("div",Gwt,[v("div",Hwt,[O(c,{name:w.type,size:"m",margin:"0 12px 0 0"},null,8,["name"]),w.nameEditing?(D(),oe(h,{key:0,ref:"elementInput",modelValue:w.name,"onUpdate:modelValue":m=>w.name=m,onBlur:m=>w.nameEditing=!1,onKeypress:si(m=>w.nameEditing=!1,["enter"])},null,8,["modelValue","onUpdate:modelValue","onBlur","onKeypress"])):(D(),U("span",{key:1,onClick:m=>n.onElementNameClick(w)},X(w.name),9,Vwt))]),v("div",Zwt,[v("span",{class:"bimdata-measure3d__list__element__tag__content",style:Se(`color: ${w.color}; background-color: ${w.color}20;`),onClick:m=>n.onTagClick(w)},X(w.value)+" "+X(w.unit),13,Jwt),w.colorEditing?Tt((D(),oe(p,{key:0,class:"bimdata-measure3d__list__element__tag__color-selector","selected-color":parseInt(w.color.slice(1),16),onColorSelect:m=>{w.color=`#${m.value.toString(16).padStart(6,0)}`,w.colorEditing=!1}},null,8,["selected-color","onColorSelect"])),[[L,()=>{w.colorEditing=!1}]]):be("",!0)]),v("div",Wwt,[O(a,{icon:"",class:"m-r-6",color:"granite",ghost:"",radius:"",onClick:m=>n.onHideMeasurementClick(w)},{default:J(()=>[w.visible?(D(),oe(g,{key:0,size:"s"})):(D(),oe(A,{key:1,size:"s"}))]),_:2},1032,["onClick"]),O(a,{icon:"",ghost:"",radius:"",color:"granite",onClick:m=>n.onDeleteMeasurementClick(w)},{default:J(()=>[O(M,{size:"m"})]),_:2},1032,["onClick"])])])]),_:1},8,["list"])])])}const _wt=W(Uwt,[["render",Kwt],["__scopeId","data-v-b6e2d727"]]),qwt="Entfernungs",Xwt="Winkel",$wt="Messung",eLt="Keine Messung",tLt={distance_measurement:qwt,angle_measurement:Xwt,tooltip:$wt,empty:eLt},iLt="Distance",oLt="Angle",rLt="Measurement",sLt="No measure",nLt="Spacing",aLt={distance_measurement:iLt,angle_measurement:oLt,tooltip:rLt,empty:sLt,spacing_measurement:nLt},lLt="Distancia",cLt="Angular",uLt="Medici\xF3n",dLt="Sin mediciones",hLt={distance_measurement:lLt,angle_measurement:cLt,tooltip:uLt,empty:dLt},pLt="Distance",ALt="Angle",gLt="Espacement",MLt="Mesure",fLt="Pas de mesure",wLt={distance_measurement:pLt,angle_measurement:ALt,spacing_measurement:gLt,tooltip:MLt,empty:fLt},LLt="Distanza",mLt="Angolo",yLt="Misura",vLt="Nessuna misurazione",CLt={distance_measurement:LLt,angle_measurement:mLt,tooltip:yLt,empty:vLt},ILt={name:"measure3d",i18n:{de:tLt,en:aLt,es:hLt,fr:wLt,it:CLt},component:_wt,addToWindows:["3d"],button:{tooltip:"measure3d.tooltip",position:"right",content:"panel",keepOpen:!0,icon:{component:"BIMDataIconMeasure",options:{size:"m"}}}},jLt={render(){return null},async onOpen(){try{const t=this.$viewer.localContext.pluginComponentInstances.get("plan"),e=t.$viewer.localContext.loadedModels[0],i=t.pdfPages;if(e)if(i?.length>0){const{format:o,scale:r}=this.$plugin.settings;(await t.exportAsPDF({format:o,scale:r})).save("pdf-export.pdf")}else{await this.$viewer.localContext.hideUI(),this.$viewer.globalContext.loadingProcessStart();const o=document.createElement("a");o.href=await t.exportAsJPG(),o.download="jpg-export.jpeg",o.click(),o.remove(),this.$viewer.globalContext.loadingProcessEnd(),this.$viewer.localContext.showUI()}setTimeout(()=>this.$close())}catch(t){console.error(t)}}},bLt="data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWlkWU1pZCBtZWV0IgogIHZpZXdCb3g9Ii01IC01IDM0IDM0Igo+CiAgPHBhdGgKICAgIGZpbGw9IiMyRjM3NEEiCiAgICBkPSJNMTguNTQzOCA5Ljc3ODA4QzE3Ljg5MjEgNi40NzE4MyAxNC45ODgzIDMuOTg5NzUgMTEuNSAzLjk4OTc1QzguNzMwNDIgMy45ODk3NSA2LjMyNSA1LjU2MTQxIDUuMTI3MDggNy44NjE0MUMyLjI0MjUgOC4xNjgwOCAwIDEwLjYxMTggMCAxMy41NzMxQzAgMTYuNzQ1MiAyLjU3NzkyIDE5LjMyMzEgNS43NSAxOS4zMjMxSDE4LjIwODNDMjAuODUzMyAxOS4zMjMxIDIzIDE3LjE3NjQgMjMgMTQuNTMxNEMyMyAxMi4wMDE0IDIxLjAzNTQgOS45NTA1OCAxOC41NDM4IDkuNzc4MDhaTTE2LjI5MTcgMTIuNjE0N0wxMS41IDE3LjQwNjRMNi43MDgzMyAxMi42MTQ3SDkuNTgzMzNWOC43ODE0MUgxMy40MTY3VjEyLjYxNDdIMTYuMjkxN1oiCiAgLz4KPC9zdmc+",xLt={name:"pdfExport",component:jLt,addToWindows:["plan"],button:{position:"right",tooltip:"pdfExport.title",icon:{imgUri:bLt}},i18n:{en:{title:"PDF Export",loadingMsg:"Generating PDF...",loadingSubMsg:"( page {page} of {total} )"},fr:{title:"Export PDF",loadingMsg:"G\xE9n\xE9ration du document PDF...",loadingSubMsg:"( page {page} sur {total} )"}}},DLt={props:{width:{type:String,default:"32px"},height:{type:String,default:"32px"},accept:{type:String,default:""}},emits:["change"],methods:{onClick(){this.$refs.input.click()},onFileChange(t){const e=t.target.files&&t.target.files[0]?t.target.files[0]:null;this.$emit("change",e)}}},NLt=["accept"];function SLt(t,e,i,o,r,n){const s=z("BIMDataIconAddFile"),a=z("BIMDataButton");return D(),oe(a,{style:{padding:"5px"},width:i.width,height:i.height,color:"primary",outline:"",radius:"",icon:"",onClick:n.onClick},{default:J(()=>[O(s,{size:"xs"}),Ct(t.$slots,"default"),v("input",{ref:"input",type:"file",hidden:"",accept:i.accept,onChange:e[0]||(e[0]=(...l)=>n.onFileChange&&n.onFileChange(...l))},null,40,NLt)]),_:3},8,["width","height","onClick"])}const kLt=W(DLt,[["render",SLt]]),TLt={inject:["$viewer"],props:{singleSelectMode:{type:Boolean,default:!1},multiSelectMode:{type:Boolean,default:!1},headerButtons:{type:Boolean,default:!0},headerSearch:{type:Boolean,default:!0},alreadySelectedIds:{type:Array,default:()=>[]},selectableFileTypes:{type:Array,default:()=>[]}},emits:["selection-change"],data(){return{apiUrl:null,archiveUrl:null,spaceId:null,projectId:null,accessToken:null}},computed:{selectMode(){return this.singleSelectMode||this.multiSelectMode}},created(){this.apiUrl=this.$viewer.api.apiUrl,this.archiveUrl=this.$viewer.api.archiveUrl,this.projectId=this.$viewer.api.projectId,this.spaceId=this.$viewer.api.cloudId,this.accessToken=this.$viewer.api.accessToken},methods:{onError(t){this.$viewer.localContext.hub.emit("alert",{type:"error",message:t&&t.message})},onSuccess(t){this.$viewer.localContext.hub.emit("alert",{type:"success",message:t&&t.message})},onSelectionChange(t){const e=t.map(({document:i})=>i);this.$emit("selection-change",e)}}};function ELt(t,e,i,o,r,n){const s=z("BIMDataFileManager");return D(),oe(s,{ref:"fileManager",class:"bimdata_ged","space-id":r.spaceId,"project-id":r.projectId,"api-url":r.apiUrl,"archive-url":r.archiveUrl,"access-token":r.accessToken,select:n.selectMode,multi:i.multiSelectMode,"header-buttons":i.headerButtons,"header-search":i.headerSearch,locale:t.$i18n.locale,"already-selected-ids":i.alreadySelectedIds,"selectable-file-types":i.selectableFileTypes,"view-pdf":"",onSelectionChange:n.onSelectionChange,onError:n.onError,onSuccess:n.onSuccess},null,8,["space-id","project-id","api-url","archive-url","access-token","select","multi","header-buttons","header-search","locale","already-selected-ids","selectable-file-types","onSelectionChange","onError","onSuccess"])}const FC=W(TLt,[["render",ELt]]),zLt={components:{FileInput:kLt,BIMDataGED:FC},data(){return{file:null,isGedOpen:!1,pdfToView:null}},computed:{pdfUrl(){return this.file?window.URL.createObjectURL(this.file):null}},methods:{onOpenGedClick(){this.isGedOpen=!this.isGedOpen},onCloseClick(){this.file=null,this.pdfToView=null},back(){this.isGedOpen=!1},async loadFile(t){t.name?this.pdfToView=t:this.pdfToView=this.file,this.back()}}},PLt={class:"pdf-viewer"},BLt={class:"pdf-viewer__content"},OLt={key:1},RLt={key:0,class:"pdf-viewer__content--empty"},ULt={class:"flex items-center justify-center m-t-18"},FLt={class:"m-l-6"},YLt={class:"m-l-6"},QLt={key:1,class:"pdf-viewer__content--ged"},GLt={class:"p-x-12"},HLt={class:"pdf-viewer__content--ged__buttons flex items-center justify-between"};function VLt(t,e,i,o,r,n){const s=z("BIMDataIconArrow"),a=z("BIMDataButton"),l=z("BIMDataPDFViewer",!0),c=z("BIMDataIllustration"),u=z("FileInput"),d=z("BIMDataIconFolder"),h=z("BIMDataGED");return D(),U("div",PLt,[v("div",BLt,[r.pdfToView?(D(),oe(l,{key:0,pdf:r.pdfToView,header:""},{"header-left":J(()=>[O(a,{class:"m-l-12",width:"32px",height:"32px",color:"primary",ghost:"",radius:"",icon:"",onClick:n.onCloseClick},{default:J(()=>[O(s,{size:"xxs"})]),_:1},8,["onClick"])]),_:1},8,["pdf"])):(D(),U("div",OLt,[r.isGedOpen?be("",!0):(D(),U("div",RLt,[O(c,{name:"emptyPdf",x:"90",y:"90"}),v("h3",null,X(t.$t("pdf.title")),1),v("div",ULt,[O(u,{accept:"application/pdf",onChange:n.loadFile},{default:J(()=>[v("div",FLt,X(t.$t("pdf.empty")),1)]),_:1},8,["onChange"]),O(a,{class:"m-l-12",color:"primary",outline:"",radius:"",onClick:n.onOpenGedClick},{default:J(()=>[O(d,{fill:"",color:"default",size:"xxs"}),v("span",YLt,X(t.$t("pdf.openGed")),1)]),_:1},8,["onClick"])])])),r.isGedOpen?(D(),U("div",QLt,[v("div",null,[v("h3",GLt,X(t.$t("pdf.title")),1)]),O(h,{"header-buttons":!0,"single-select-mode":"","selectable-file-types":["pdf"],onSelectionChange:e[0]||(e[0]=p=>r.file=p[0])}),v("div",HLt,[O(a,{class:"pdf-viewer__content--ged__validate",outline:"",color:"primary",radius:"",width:"48%",onClick:n.back},{default:J(()=>[v("span",null,X(t.$t("pdf.cancel")),1)]),_:1},8,["onClick"]),O(a,{class:"pdf-viewer__content--ged__validate",fill:"",color:"primary",radius:"",width:"48%",onClick:n.loadFile},{default:J(()=>[v("span",null,X(t.$t("pdf.validate")),1)]),_:1},8,["onClick"])])])):be("",!0)]))])])}const ZLt=W(zLt,[["render",VLt],["__scopeId","data-v-68ab9d79"]]),JLt="PDF-Viewer",WLt="Bitte w\xE4hlen Sie eine Datei aus oder legen Sie sie in diesem Fenster ab.",KLt={window_label:JLt,empty:WLt},_Lt="PDF Viewer",qLt="No file selected. Please select a file or drag it on the window.",XLt="PDF Viewer",$Lt="Files",emt="Cancel",tmt="Validate",imt={window_label:_Lt,empty:qLt,title:XLt,openGed:$Lt,cancel:emt,validate:tmt},omt="Visor de PDF",rmt="No hay ning\xFAn archivo seleccionado. Seleccione un archivo o arr\xE1strelo a la ventana.",smt={window_label:omt,empty:rmt},nmt="Visionneuse PDF",amt="Selectionner un fichier",lmt="Visionneuse PDF",cmt="Ouvrir la GED",umt="Annuler",dmt="Valider",hmt={window_label:nmt,empty:amt,title:lmt,openGed:cmt,cancel:umt,validate:dmt},pmt="Visualizzatore PDF",Amt="Seleziona un file.",gmt={window_label:pmt,empty:Amt},Mmt="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjMiIHZpZXdCb3g9IjAgMCAyMiAyMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00LjAxMjQ0IDcuOTA2MjVMMTAuMTIxOCAxLjc5Njg4VjUuOTcyNDVWNy45MDYyNUg0LjAxMjQ0Wk0yMC4zODg1IDIuM0MyMC4zODg1IDEuMDM1IDE5LjM2NSAwIDE4LjEgMEg4LjlMMiA2LjlWMjAuN0MyIDIxLjk2NSAzLjAzNDY0IDIzIDQuMyAyM0gxOC4xMTE1QzE5LjM3NjUgMjMgMjAuNCAyMS45NjUgMjAuNCAyMC43TDIwLjM4ODUgMi4zWiIgZmlsbD0iIzJGMzc0QSIvPgo8cmVjdCB5PSIxMiIgd2lkdGg9IjIyIiBoZWlnaHQ9IjkiIHJ4PSIxIiBmaWxsPSIjRkYwMDAwIi8+CjxwYXRoIGQ9Ik0zLjg4MDg2IDE3LjQ5NTFWMjBIMi40MTYwMlYxMi44OTA2SDUuMTg5NDVDNS43MjMzMSAxMi44OTA2IDYuMTkyMDYgMTIuOTg4MyA2LjU5NTcgMTMuMTgzNkM3LjAwMjYgMTMuMzc4OSA3LjMxNTEgMTMuNjU3MiA3LjUzMzIgMTQuMDE4NkM3Ljc1MTMgMTQuMzc2NiA3Ljg2MDM1IDE0Ljc4NTIgNy44NjAzNSAxNS4yNDQxQzcuODYwMzUgMTUuOTQwOCA3LjYyMTA5IDE2LjQ5MDkgNy4xNDI1OCAxNi44OTQ1QzYuNjY3MzIgMTcuMjk0OSA2LjAwODE0IDE3LjQ5NTEgNS4xNjUwNCAxNy40OTUxSDMuODgwODZaTTMuODgwODYgMTYuMzA4Nkg1LjE4OTQ1QzUuNTc2ODIgMTYuMzA4NiA1Ljg3MTQyIDE2LjIxNzQgNi4wNzMyNCAxNi4wMzUyQzYuMjc4MzIgMTUuODUyOSA2LjM4MDg2IDE1LjU5MjQgNi4zODA4NiAxNS4yNTM5QzYuMzgwODYgMTQuOTA1NiA2LjI3ODMyIDE0LjYyNCA2LjA3MzI0IDE0LjQwOTJDNS44NjgxNiAxNC4xOTQzIDUuNTg0OTYgMTQuMDgzNyA1LjIyMzYzIDE0LjA3NzFIMy44ODA4NlYxNi4zMDg2Wk04Ljg3MTA5IDIwVjEyLjg5MDZIMTEuMDU4NkMxMS42ODM2IDEyLjg5MDYgMTIuMjQxOSAxMy4wMzIyIDEyLjczMzQgMTMuMzE1NEMxMy4yMjgyIDEzLjU5NTQgMTMuNjEzOSAxMy45OTU4IDEzLjg5MDYgMTQuNTE2NkMxNC4xNjczIDE1LjAzNDIgMTQuMzA1NyAxNS42MjM0IDE0LjMwNTcgMTYuMjg0MlYxNi42MTEzQzE0LjMwNTcgMTcuMjcyMSAxNC4xNjg5IDE3Ljg1OTcgMTMuODk1NSAxOC4zNzRDMTMuNjI1MyAxOC44ODgzIDEzLjI0MjggMTkuMjg3MSAxMi43NDggMTkuNTcwM0MxMi4yNTMzIDE5Ljg1MzUgMTEuNjk1IDE5Ljk5NjcgMTEuMDczMiAyMEg4Ljg3MTA5Wk0xMC4zMzU5IDE0LjA3NzFWMTguODIzMkgxMS4wNDM5QzExLjYxNjkgMTguODIzMiAxMi4wNTQ3IDE4LjYzNjEgMTIuMzU3NCAxOC4yNjE3QzEyLjY2MDIgMTcuODg3NCAxMi44MTQ4IDE3LjM1MTkgMTIuODIxMyAxNi42NTUzVjE2LjI3OTNDMTIuODIxMyAxNS41NTY2IDEyLjY3MTUgMTUuMDA5OCAxMi4zNzIxIDE0LjYzODdDMTIuMDcyNiAxNC4yNjQzIDExLjYzNDggMTQuMDc3MSAxMS4wNTg2IDE0LjA3NzFIMTAuMzM1OVpNMTkuNjUyMyAxNy4wOTQ3SDE2LjgzOThWMjBIMTUuMzc1VjEyLjg5MDZIMjAuMDAzOVYxNC4wNzcxSDE2LjgzOThWMTUuOTEzMUgxOS42NTIzVjE3LjA5NDdaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K",fmt={name:"pdf",i18n:{de:KLt,en:imt,es:smt,fr:hmt,it:gmt},component:ZLt,window:{name:"pdf",noModel:!0,label:"pdf.window_label",icon:{imgUri:Mmt}}};function wmt(t){return function(e){return t?.[e]}}var Lmt=wmt,mmt=Lmt,ymt={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},vmt=mmt(ymt),Cmt=vmt,Imt=typeof pr=="object"&&pr&&pr.Object===Object&&pr,eH=Imt,jmt=eH,bmt=typeof self=="object"&&self&&self.Object===Object&&self,xmt=jmt||bmt||Function("return this")(),Fc=xmt,Dmt=Fc,Nmt=Dmt.Symbol,YC=Nmt;function Smt(t,e){for(var i=-1,o=t==null?0:t.length,r=Array(o);++i<o;)r[i]=e(t[i],i,t);return r}var kmt=Smt,Tmt=Array.isArray,QC=Tmt,tH=YC,iH=Object.prototype,Emt=iH.hasOwnProperty,zmt=iH.toString,Nw=tH?tH.toStringTag:void 0;function Pmt(t){var e=Emt.call(t,Nw),i=t[Nw];try{t[Nw]=void 0;var o=!0}catch{}var r=zmt.call(t);return o&&(e?t[Nw]=i:delete t[Nw]),r}var Bmt=Pmt,Omt=Object.prototype,Rmt=Omt.toString;function Umt(t){return Rmt.call(t)}var Fmt=Umt,oH=YC,Ymt=Bmt,Qmt=Fmt,Gmt="[object Null]",Hmt="[object Undefined]",rH=oH?oH.toStringTag:void 0;function Vmt(t){return t==null?t===void 0?Hmt:Gmt:rH&&rH in Object(t)?Ymt(t):Qmt(t)}var Sw=Vmt;function Zmt(t){return t!=null&&typeof t=="object"}var dg=Zmt,Jmt=Sw,Wmt=dg,Kmt="[object Symbol]";function _mt(t){return typeof t=="symbol"||Wmt(t)&&Jmt(t)==Kmt}var qmt=_mt,sH=YC,Xmt=kmt,$mt=QC,e2t=qmt,t2t=1/0,nH=sH?sH.prototype:void 0,aH=nH?nH.toString:void 0;function lH(t){if(typeof t=="string")return t;if($mt(t))return Xmt(t,lH)+"";if(e2t(t))return aH?aH.call(t):"";var e=t+"";return e=="0"&&1/t==-t2t?"-0":e}var i2t=lH,o2t=i2t;function r2t(t){return t==null?"":o2t(t)}var s2t=r2t,n2t=Cmt,a2t=s2t,l2t=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,c2t="\\u0300-\\u036f",u2t="\\ufe20-\\ufe2f",d2t="\\u20d0-\\u20ff",h2t=c2t+u2t+d2t,p2t="["+h2t+"]",A2t=RegExp(p2t,"g");function g2t(t){return t=a2t(t),t&&t.replace(l2t,n2t).replace(A2t,"")}var M2t=g2t;const cH=Pp(M2t),f2t=Object.freeze({IfcAbsorbedDoseMeasure:"decimal_number",IfcAccelerationMeasure:"decimal_number",IfcAmountOfSubstanceMeasure:"decimal_number",IfcAngularVelocityMeasure:"decimal_number",IfcAreaDensityMeasure:"decimal_number",IfcAreaMeasure:"decimal_number",IfcBinary:"string",IfcBoolean:"boolean",IfcComplexNumber:"string",IfcCompoundPlaneAngleMeasure:"string",IfcContextDependentMeasure:"decimal_number",IfcCountMeasure:"integer",IfcCurvatureMeasure:"decimal_number",IfcDescriptiveMeasure:"string",IfcDoseEquivalentMeasure:"decimal_number",IfcDynamicViscosityMeasure:"decimal_number",IfcElectricCapacitanceMeasure:"decimal_number",IfcElectricChargeMeasure:"decimal_number",IfcElectricConductanceMeasure:"decimal_number",IfcElectricCurrentMeasure:"decimal_number",IfcElectricResistanceMeasure:"decimal_number",IfcElectricVoltageMeasure:"decimal_number",IfcEnergyMeasure:"decimal_number",IfcForceMeasure:"decimal_number",IfcFrequencyMeasure:"decimal_number",IfcHeatFluxDensityMeasure:"decimal_number",IfcHeatingValueMeasure:"decimal_number",IfcIdentifier:"string_max255",IfcIlluminanceMeasure:"decimal_number",IfcInductanceMeasure:"decimal_number",IfcInteger:"integer",IfcIntegerCountRateMeasure:"integer",IfcIonConcentrationMeasure:"decimal_number",IfcIsothermalMoistureCapacityMeasure:"decimal_number",IfcKinematicViscosityMeasure:"decimal_number",IfcLabel:"string_max255",IfcLengthMeasure:"decimal_number",IfcLinearForceMeasure:"decimal_number",IfcLinearMomentMeasure:"decimal_number",IfcLinearStiffnessMeasure:"decimal_number",IfcLinearVelocityMeasure:"decimal_number",IfcLogical:"logical",IfcLuminousFluxMeasure:"decimal_number",IfcLuminousIntensityDistributionMeasure:"decimal_number",IfcLuminousIntensityMeasure:"decimal_number",IfcMagneticFluxDensityMeasure:"decimal_number",IfcMagneticFluxMeasure:"decimal_number",IfcMassDensityMeasure:"decimal_number",IfcMassFlowRateMeasure:"decimal_number",IfcMassMeasure:"decimal_number",IfcMassPerLengthMeasure:"decimal_number",IfcMeasureValue:"decimal_number",IfcModulusOfElasticityMeasure:"decimal_number",IfcModulusOfLinearSubgradeReactionMeasure:"decimal_number",IfcModulusOfRotationalSubgradeReactionMeasure:"decimal_number",IfcModulusOfSubgradeReactionMeasure:"decimal_number",IfcMoistureDiffusivityMeasure:"decimal_number",IfcMolecularWeightMeasure:"decimal_number",IfcMomentOfInertiaMeasure:"decimal_number",IfcMonetaryMeasure:"decimal_number",IfcMonetaryUnit:"string_max255",IfcNonNegativeLengthMeasure:"positive_decimal_number",IfcNormalisedRatioMeasure:"decimal_range_0_1",IfcNumericMeasure:"integer",IfcParameterValue:"decimal_number",IfcPHMeasure:"decimal_range_0_14",IfcPlanarForceMeasure:"decimal_number",IfcPlaneAngleMeasure:"decimal_number",IfcPositiveInteger:"positive_integer",IfcPositiveLengthMeasure:"positive_decimal_number",IfcPositivePlaneAngleMeasure:"positive_decimal_number",IfcPositiveRatioMeasure:"positive_decimal_number",IfcPowerMeasure:"decimal_number",IfcPressureMeasure:"decimal_number",IfcRadioActivityMeasure:"decimal_number",IfcRatioMeasure:"decimal_number",IfcReal:"decimal_number",IfcRotationalFrequencyMeasure:"decimal_number",IfcRotationalMassMeasure:"decimal_number",IfcRotationalStiffnessMeasure:"decimal_number",IfcSectionalAreaIntegralMeasure:"decimal_number",IfcSectionModulusMeasure:"decimal_number",IfcShearModulusMeasure:"decimal_number",IfcSolidAngleMeasure:"decimal_number",IfcSoundPowerLevelMeasure:"decimal_number",IfcText:"string"}),w2t={name:"EditableLabel",props:{disabled:{type:Boolean,default:!1},cancelOnClickAway:{type:Boolean,default:!0},editOnClick:{type:Boolean,default:!0},editOnRightClick:{type:Boolean,default:!0},text:{type:[String,Number,Boolean],default:""},valueType:{type:String,default:"string"},units:{type:[String,Number,Boolean],default:""},validateCallback:{type:Function,default:()=>!0},validateCallbackArgs:{type:Array,default:()=>[]}},emits:["editing-start","editing-end"],data(){return{loading:!1,editedText:this.text,edit:!1,success:null,error:null,types:f2t}},watch:{edit(t){t?(this.editedText=this.text,this.$nextTick(()=>this.$refs.input.focus()),document.addEventListener("keydown",this.onKeyDown),this.$emit("editing-start")):(document.removeEventListener("keydown",this.onKeyDown),this.$emit("editing-end"))}},methods:{onKeyDown(t){t.keyCode===27?this.onCancel():t.keyCode===13&&!t.altKey&&!t.metaKey&&!t.ctrlKey&&!t.shiftKey&&this.onValidate()},onClick(){!this.disabled&&this.editOnClick&&!this.edit&&(this.edit=!0)},onRightClick(){const t=this.$viewer.contextMenu;t&&!this.disabled&&!this.loading&&this.editOnRightClick&&t.registerContextCommand({label:this.$t("global.edit"),execute:()=>this.edit=!0})},isIfcTypeFormatValid(t){switch(this.valueType){case"decimal_number":{const e=+t;return!isNaN(e)&&typeof e=="number"}case"positive_decimal_number":{const e=+t;return!isNaN(e)&&typeof e=="number"&&e>=0}case"decimal_range_0_1":{const e=+t;return!isNaN(e)&&typeof e=="number"&&0>=e&&e<=1}case"decimal_range_0_14":{const e=+t;return!isNaN(e)&&typeof e=="number"&&0>=e&&e<=14}case"integer":{const e=+t;return!isNaN(e)&&typeof e=="number"&&Number.isInteger(e)}case"positive_integer":{const e=+t;return!isNaN(e)&&typeof e=="number"&&Number.isInteger(e)&&e>=0}case"string":return typeof t=="string";case"string_max255":return typeof t=="string"&&t.length<255;case"boolean":return typeof t=="boolean"||t==="true"||t==="false";case"logical":return typeof t=="boolean"||t==="true"||t==="false"||t==="null"||t===null}},async onValidate(){const t=typeof this.validateCallbackArgs=="object"&&typeof this.validateCallbackArgs[Symbol.iterator]=="function"?this.validateCallbackArgs:[this.validateCallbackArgs],e=this.validateCallback(this.editedText,this.isIfcTypeFormatValid(this.editedText),...t);let i=null;typeof e.then=="function"?(this.loading=!0,i=await e,this.loading=!1):i=e,this.edit=!1,i?(this.success=!0,setTimeout(()=>this.success=null,500)):(this.error=!0,setTimeout(()=>this.error=null,500))},onCancel(){this.edit=!1},isValidUrl(t){return typeof t=="string"&&t.match("://")},ifcTypeFormat(t){return this.types[t]??"string"}}},L2t={key:0,class:"editable-label__input"},m2t={class:"flex justify-between items-center"},y2t={key:0,class:"editable-label__input--buttons flex m-l-6"},v2t={class:"editable-label__text flex items-center"},C2t=["href"];function I2t(t,e,i,o,r,n){const s=z("BIMDataInput"),a=z("BIMDataIconValidate"),l=z("BIMDataButton"),c=z("BIMDataIconClose"),u=z("BIMDataIconEdit"),d=Yi("click-away");return Tt((D(),U("div",{class:Ne(["editable-label",{disabled:i.disabled}]),onClick:e[1]||(e[1]=(...h)=>n.onClick&&n.onClick(...h)),onContextmenu:e[2]||(e[2]=bt((...h)=>n.onRightClick&&n.onRightClick(...h),["right"]))},[r.edit?(D(),U("div",L2t,[v("div",m2t,[O(s,{ref:"input",modelValue:r.editedText,"onUpdate:modelValue":e[0]||(e[0]=h=>r.editedText=h),loading:r.loading,disabled:r.loading||i.disabled,margin:"0px"},null,8,["modelValue","loading","disabled"]),r.loading?be("",!0):(D(),U("div",y2t,[O(l,{color:"primary",ghost:"",rounded:"",icon:"",onClick:bt(n.onValidate,["stop"])},{default:J(()=>[O(a,{size:"xxs",class:"fill-primary"})]),_:1},8,["onClick"]),O(l,{color:"primary",ghost:"",rounded:"",icon:"",onClick:bt(n.onCancel,["stop"])},{default:J(()=>[O(c,{size:"xxxs",class:"fill-primary"})]),_:1},8,["onClick"])]))]),v("span",{class:Ne({error:!n.isIfcTypeFormatValid(r.editedText)})},X(t.$t("properties.requested_format"))+" "+X(t.$t(`properties.${n.ifcTypeFormat(i.valueType)}`)),3)])):be("",!0),v("div",v2t,[!r.edit&&i.editOnClick?(D(),oe(u,{key:0,size:"xxs",color:"granite",margin:"0 8px 0 0"})):be("",!0),!r.edit&&n.isValidUrl(i.text)?(D(),U("a",{key:1,target:"_blank",href:i.text},X(i.text),9,C2t)):be("",!0),!r.edit&&!n.isValidUrl(i.text)?(D(),U("span",{key:2,class:Ne({error:r.error,success:r.success})},X(`${i.text!=null?i.text:""} ${i.units}`),3)):be("",!0)])],34)),[[d,()=>i.cancelOnClickAway&&!r.loading&&(r.edit=!1)]])}const j2t=W(w2t,[["render",I2t]]),b2t={name:"BimdataProperties",components:{BIMDataEditableLabel:j2t},inject:["$viewer"],props:{editAllowed:{type:Boolean,default:!1},selectedObject:{type:Object,default:null}},data(){return{loading:!1,editLoading:!1,filter:"",highlightedProperties:[],displayedElement:null}},computed:{slugFilter(){return cH(this.filter).toLowerCase()}},watch:{highlightedProperties(){var t,e;this.highlightedProperties.length===0&&((e=(t=Object.values(this.$refs)[0])==null?void 0:t[0])==null||e.scrollIntoView())},selectedObject:{async handler(t){t?this.displayedElement=await this.getDisplayedElement(t):this.displayedElement=null},immediate:!0},filter(t){t?this.highlightedProperties=x2t(this.displayedElement.properties):this.highlightedProperties=[]}},created(){this.globalContextSubscription=this.$viewer.globalContext.hub.on("properties-update",this.onPropertiesEdited)},mounted(){document.addEventListener("keyup",this.onKeyUp)},unmounted(){document.removeEventListener("keyup",this.onKeyUp),this.$viewer.globalContext.hub.off(this.globalContextSubscription)},methods:{async onKeyUp(t){var e,i;if(t.key==="Enter"&&this.highlightedProperties.length>0){let o=(e=this.$refs[this.highlightedProperties[0].ref])==null?void 0:e[0];o||(this.highlightedProperties[0].parent.displayed=!0,await this.$nextTick(),o=(i=this.$refs[this.highlightedProperties[0].ref])==null?void 0:i[0]),o&&o.scrollIntoView(),this.highlightedProperties.push(this.highlightedProperties.shift())}},async onValidate(t,e,i,o){const r={...i,value:t};delete r.parent,this.editLoading=!0;try{const n=this.$viewer.api.cloudId,s=this.$viewer.api.projectId,a=this.displayedElement.stateObject.model.id;e?(await this.$viewer.api.apiClient.modelApi.updateElementPropertySetProperty(n,this.displayedElement.uuid,i.id,a,s,o,r),this.$viewer.localContext.hub.emit("alert",{type:"success",message:this.$t("properties.edit-success")}),this.refreshDisplayedElement(),this.$viewer.globalContext.hub.emit("properties-update",{object:this.displayedElement.stateObject,author:this})):this.$viewer.localContext.hub.emit("alert",{type:"error",message:this.$t("properties.invalid-format")})}catch{this.$viewer.localContext.hub.emit("alert",{type:"error",message:this.$t("properties.edit-error")})}finally{this.editLoading=!1}},async refreshDisplayedElement(){this.displayedElement=await this.getDisplayedElement(this.selectedObject)},async getDisplayedElement(t){let e=null;if(!t.uuid)console.warn("Impossible to show properties of the selected state object because it has no uuid.");else{this.loading=!0;try{const i=await this.$viewer.api.apiClient.modelApi.getElement(this.$viewer.api.cloudId,t.model.id,this.$viewer.api.projectId,t.uuid);e={properties:N2t(i,this),stateObject:t,uuid:t.uuid}}catch(i){console.error(i)}finally{this.loading=!1}}return e},onPropertiesEdited({object:t,author:e}){var i;e!==this&&((i=this.displayedElement)==null?void 0:i.uuid)===t.uuid&&this.refreshDisplayedElement()}}};function x2t(t){const e=[];return t.forEach(i=>{i.highlighted&&e.push(i),e.push(...i.children.filter(o=>o.highlighted))}),e}const uH={GRAY:"Gy",BECQUEREL:"Bq",MOLE:"mole",SQUARE_METRE:"m\xB2",FARAD:"F",DEGREE_CELSIUS:"\xBAC",DEGREE:"\xB0",SIEVERT:"Sv",COULOMB:"C",SIEMENS:"S",AMPERE:"A",VOLT:"V",OHM:"W",JOULE:"J",NEWTON:"N",HERTZ:"Hz",LUX:"lx",HENRY:"H",METRE:"m",LUMEN:"lm",CANDELA:"ld",WEBER:"Wb",TESLA:"T",GRAM:"g",RADIAN:"rad",WATT:"W",PASCAL:"Pa",STERADIAN:"sr",KELVIN:"K",SECOND:"s",CUBIC_METRE:"m\xB3"},dH={KILO:"k",DECA:"da",CENTI:"c",MILLI:"m",MEGA:"M",GIGA:"M",HECTO:"h",DEKA:"da",DECI:"d",MICRO:"\u03BC"};function hH({id:t,property_set_id:e,definition:i,value:o,nonEditable:r},n,s,a){var l,c;let u=((l=i.unit)==null?void 0:l.name)||"",d=((c=i.unit)==null?void 0:c.prefix)||"";d&&dH[d]&&(d=dH[d]),u&&uH[u]&&(u=uH[u]);let h=d+u,p;const g=`properties.attributes_name.${i.name}`,A=i.value_type;return a.name==="Attributs"&&s.$viewer.i18n.$te(g)?p=s.$viewer.i18n.$t(g):p=i.name,{id:t,ref:n,property_set_id:e,name:p,value:o,valueType:A,unit:h,nonEditable:r,searchContent:cH(`${p||""}${o||""} ${h}`).toLowerCase(),get highlighted(){return s.filter!==""&&this.searchContent.includes(s.slugFilter)},parent:a}}function D2t(t){const e=t.attributes.properties;e.id=t.attributes.id;const i=e.findIndex(o=>o.definition.name==="type");return i!==-1&&e.splice(i,1),e.push({definition:{name:"type"},value:t.type,nonEditable:!0}),e.push({definition:{name:"UUID"},value:t.uuid,nonEditable:!0}),e}function N2t(t,e){let i=1;const o=[],r=D2t(t),{classifications:n,property_sets:s}=t;if(r){const a={id:r.id,ref:`element${i++}`,get name(){return e.$viewer.i18n.$t("properties.attributes")},editable:!0,displayed:!0,get searchContent(){return e.$viewer.i18n.$t("properties.attributes").toLowerCase()},get highlighted(){return e.filter!==""&&this.searchContent.includes(e.slugFilter)}};a.children=r.map(l=>hH(l,`element${i++}`,e,a)),o.push(a)}if(n?.length>0){const a={ref:`element${i++}`,get name(){return e.$viewer.i18n.$t("properties.classification")},editable:!1,displayed:!0,get searchContent(){return e.$viewer.i18n.$t("properties.classification").toLowerCase()},get highlighted(){return e.filter!==""&&this.searchContent.includes(e.slugFilter)}};a.children=n.map(l=>({...l,searchContent:`${l.name||""} ${l.notation||""} - ${l.title||""}
80
80
  `.toLowerCase(),ref:`element${i++}`,get highlighted(){return e.filter!==""&&this.searchContent.includes(e.slugFilter)},parent:a})),o.push(a)}return s&&s.forEach(({id:a,name:l,properties:c,type:u})=>{const d={id:a,ref:`element${i++}`,name:l,editable:!0,displayed:!0,isType:u?.endsWith("_type"),searchContent:l.toLowerCase(),get highlighted(){return e.filter!==""&&this.searchContent.includes(e.slugFilter)}};d.children=c.map(h=>hH(h,`element${i++}`,e,d)),o.push(d)}),o}const S2t={class:"bimdata-properties__properties"},k2t={key:0,class:"bimdata-properties__properties__content"},T2t={class:"bimdata-properties__properties__content__searchbar"},E2t={class:"bimdata-properties__properties__content__list"},z2t=["onClick"],P2t={key:0,class:"bimdata-properties__properties__content__list__element__detail"},B2t={class:"bimdata-properties__properties__content__list__element__detail__property__name"},O2t={class:"bimdata-properties__properties__content__list__element__detail__property__value"},R2t={key:0,class:"bimdata-properties__properties__content__list__element__detail"},U2t={class:"bimdata-properties__properties__content__list__element__detail__property__name"},F2t={class:"bimdata-properties__properties__content__list__element__detail__property__value"};function Y2t(t,e,i,o,r,n){const s=z("BIMDataSearch"),a=z("BIMDataIconChevron"),l=z("BIMDataEditableLabel"),c=z("BIMDataLoading");return D(),U("div",S2t,[r.displayedElement?(D(),U("div",k2t,[v("div",T2t,[O(s,{modelValue:r.filter,"onUpdate:modelValue":e[0]||(e[0]=u=>r.filter=u),placeholder:t.$t("properties.search"),height:"36px",radius:"",width:"100%",color:"primary"},null,8,["modelValue","placeholder"])]),v("div",E2t,[(D(!0),U(Mt,null,ii(r.displayedElement.properties,u=>(D(),U("div",{key:u.id,class:"bimdata-properties__properties__content__list__element"},[v("div",{ref_for:!0,ref:u.ref,class:Ne(["bimdata-properties__properties__content__list__element__title",{"bimdata-properties__properties__content__list__element__title--highlighted":u.highlighted}]),onClick:d=>u.displayed=!u.displayed},[v("span",null,X(u.name+(u.isType?` (${t.$t("properties.property_set_type")})`:"")),1),O(a,{class:"fill-primary",size:"xxxs",rotate:u.displayed?-90:90},null,8,["rotate"])],10,z2t),u.name!==t.$t("properties.classification")?(D(),U(Mt,{key:0},[u.displayed?(D(),U("div",P2t,[(D(!0),U(Mt,null,ii(u.children,d=>(D(),U("div",{key:d.id,ref_for:!0,ref:d.ref,class:Ne(["bimdata-properties__properties__content__list__element__detail__property",{"bimdata-properties__properties__content__list__element__detail__property--highlighted":d.highlighted}])},[v("div",B2t,[v("span",null,X(d.name),1)]),v("span",O2t,[O(l,{disabled:r.editLoading,"validate-callback":n.onValidate,"validate-callback-args":[d,u.id,"attributes"],"edit-on-click":i.editAllowed&&!d.nonEditable,"edit-on-right-click":i.editAllowed&&!d.nonEditable,text:d.value,units:d.unit,"value-type":d.valueType},null,8,["disabled","validate-callback","validate-callback-args","edit-on-click","edit-on-right-click","text","units","value-type"])])],2))),128))])):be("",!0)],64)):(D(),U(Mt,{key:1},[u.displayed?(D(),U("div",R2t,[(D(!0),U(Mt,null,ii(u.children,d=>(D(),U("div",{key:d.id,class:Ne(["bimdata-properties__properties__content__list__element__detail__property",{"bimdata-properties__properties__content__list__element__detail__property--highlighted":d.highlighted}])},[v("span",U2t,X(d.name),1),v("span",F2t,X(d.notation)+" - "+X(d.title),1)],2))),128))])):be("",!0)],64))]))),128))])])):be("",!0),r.loading?(D(),oe(c,{key:1})):be("",!0)])}const Q2t=W(b2t,[["render",Y2t]]);var x9={exports:{}},D9={exports:{}};(function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var i=fG,o=l(i),r=EC(),n=l(r),s=IG,a=l(s);function l(c){return c&&c.__esModule?c:{default:c}}e.default=(0,a.default)((c,u,d)=>{var h=(0,o.default)(u)?[]:{};c(u,(p,g,A)=>{(0,n.default)(p)((M,...f)=>{f.length<2&&([f]=f),h[g]=f,A(M)})},p=>d(p,h))},3),t.exports=e.default})(D9,D9.exports);var G2t=D9.exports;(function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var i=CG,o=s(i),r=G2t,n=s(r);function s(l){return l&&l.__esModule?l:{default:l}}function a(l,c,u){return(0,n.default)((0,o.default)(c),l,u)}t.exports=e.default})(x9,x9.exports);var H2t=x9.exports;const V2t=Pp(H2t),pH="Folder";function AH(t){return new Promise(e=>setTimeout(e,t))}async function Z2t({name:t,url:e}){const i=document.createElement("a");i.style.display="none",i.download=t,i.href=e,document.body.append(i),i.click(),await AH(100),i.remove(),await AH(500)}function J2t(t){const e=[],i=[];for(const o of t)o.type===pH?e.push(o):i.push(o);return{folders:e,documents:i}}function W2t(t,e){const{projectId:i,spaceId:o,accessToken:r,apiUrl:n="https://api.bimdata.io"}=e,s=K2t(n),{folders:a,documents:l}=J2t(t);let c="";return(a.length>0||l.length>0)&&(c+=`${s}/cloud/${o}/project/${i}?`,c+=`accessToken=${r}&`,c+=a.map(u=>`folderId[]=${u.id}`).join("&"),c+=a.length>0&&l.length>0?"&":"",c+=l.map(u=>`documentId[]=${u.id}`).join("&")),c}function K2t(t){const e=new URL(t),i=e.hostname;let o="";const[r,...n]=i.split("."),s=n.join(".");return r.includes("-staging")?o="-staging":r.includes("-next")&&(o="-next"),e.protocol+"//archive"+o+"."+s}async function _2t(t,e={}){try{if(t.length===0)return;let i=null;const o=t[0].name;return t.length===1&&t[0].type!==pH?i=t[0].file:i=W2t(t,e),await Z2t({name:o,url:i})}catch(i){throw new Error(i)}}const q2t={props:{documents:{type:Array,default:()=>[]}},emits:["close","validate"],created(){document.addEventListener("keydown",this.onKeyDown)},unmounted(){document.removeEventListener("keydown",this.onKeyDown)},methods:{onKeyDown(t){t.key==="Escape"&&this.$emit("close")},onCancelClick(){this.$emit("close")},onDeleteClick(){this.$emit("validate")},onCloseClick(){this.$emit("close")}}},X2t={class:"bimdata-properties__delete-modal"},$2t={class:"bimdata-properties__delete-modal__content"},eyt={class:"bimdata-properties__delete-modal__content__close"},tyt={class:"bimdata-properties__delete-modal__content__title"},iyt={class:"bimdata-properties__delete-modal__content__description"},oyt={class:"bimdata-properties__delete-modal__content__list"},ryt={class:"bimdata-properties__delete-modal__content__footer"};function syt(t,e,i,o,r,n){const s=z("BIMDataIconClose"),a=z("BIMDataButton"),l=z("BIMDataTextbox");return D(),U("div",X2t,[v("div",$2t,[v("div",eyt,[O(a,{color:"primary",ghost:"",rounded:"",icon:"",onClick:n.onCloseClick},{default:J(()=>[O(s,{size:"s"})]),_:1},8,["onClick"])]),v("h2",tyt,X(t.$t("properties.delete_modal_title")),1),v("div",iyt,X(t.$t("properties.delete_modal_description"))+" : ",1),v("ul",oyt,[(D(!0),U(Mt,null,ii(i.documents,c=>(D(),U("li",{key:c.id},[O(l,{text:c.name,width:"calc(100% - 40px)"},null,8,["text"])]))),128))]),v("div",ryt,[O(a,{color:"granite",outline:"",radius:"",width:"120px",onClick:n.onCancelClick},{default:J(()=>[dt(X(t.$t("global.cancel")),1)]),_:1},8,["onClick"]),O(a,{color:"high",fill:"",radius:"",width:"120px",onClick:n.onDeleteClick},{default:J(()=>[dt(X(t.$t("global.delete")),1)]),_:1},8,["onClick"])])])])}const nyt=W(q2t,[["render",syt]]),ayt={components:{BIMDataEmpty:Op},inject:["$viewer"],emits:["back","selected"],data(){return{loading:!1,filter:"",elements:[]}},computed:{filteredElements(){const t=new RegExp(this.filter,"i");return this.elements.filter(e=>t.test(e.name))},emptySearch(){return this.elements.length>0&&this.filteredElements.length===0}},async created(){this.loading=!0;try{const t=this.$viewer.api.cloudId,e=this.$viewer.api.projectId,i=this.$viewer.state.models.map(n=>n.id),o=await Promise.all(i.map(n=>this.$viewer.api.apiClient.modelApi.getElementLinkedDocuments(t,n,e))),r=Array.from(new Set(o.flat().flatMap(n=>n.element_uuids)));this.elements=this.$viewer.state.getObjectsByUuids(r)}catch{console.error(this.$t("properties.linked_documents_error")),this.$viewer.localContext.hub.emit("alert",{type:"error",message:this.$t("properties.linked_documents_error")})}finally{this.loading=!1}},methods:{onElementClick(t){this.$viewer.state.selectObjects([t.id],{exclusive:!0}),this.$emit("selected")}}},lyt={class:"bimdata-properties-linked-element"},cyt={class:"bimdata-properties-linked-element__header"},uyt={class:"bimdata-properties-linked-element__header__text"},dyt={key:0,class:"bimdata-properties-linked-element__list--empty"},hyt={key:1,class:"bimdata-properties-linked-element__list"},pyt=["onClick"],Ayt={class:"bimdata-properties-linked-element__list__element__icon"};function gyt(t,e,i,o,r,n){const s=z("BIMDataIconArrow"),a=z("BIMDataButton"),l=z("BIMDataSearch"),c=z("BIMDataIllustration"),u=z("BIMDataEmpty"),d=z("BIMDataIconModel3D"),h=z("BIMDataTextbox"),p=z("BIMDataLoading");return D(),U("div",lyt,[v("div",cyt,[O(a,{color:"primary",ghost:"",radius:"",icon:"",height:"36px",width:"36px",onClick:e[0]||(e[0]=g=>t.$emit("back"))},{default:J(()=>[O(s,{size:"xs"})]),_:1}),v("h4",uyt,X(t.$t("properties.linked_element_list")),1)]),O(l,{modelValue:r.filter,"onUpdate:modelValue":e[1]||(e[1]=g=>r.filter=g),placeholder:t.$t("properties.search"),height:"36px",width:"100%",radius:"",color:"primary",class:"bimdata-properties-linked-element__searchbar"},null,8,["modelValue","placeholder"]),n.emptySearch?(D(),U("div",dyt,[O(u,{message:t.$t("properties.empty_search")},{default:J(()=>[O(c,{name:"emptyProperties"})]),_:1},8,["message"])])):(D(),U("ul",hyt,[(D(!0),U(Mt,null,ii(n.filteredElements,g=>(D(),U("li",{key:g.id,class:"bimdata-properties-linked-element__list__element",onClick:A=>n.onElementClick(g)},[v("div",Ayt,[O(d,{size:"xs"})]),O(h,{text:g.name,width:"calc(100% - 18px)"},null,8,["text"])],8,pyt))),128))])),r.loading?(D(),oe(p,{key:2})):be("",!0)])}const Myt=W(ayt,[["render",gyt]]),fyt={name:"BimdataDocument",components:{BIMDataEmpty:Op,BIMDataGED:FC,DeleteModal:nyt,LinkedElement:Myt},inject:["$viewer"],props:{selectedObject:{type:Object,default:null},linkedElementsShown:{type:Boolean}},emits:["link-close"],data(){return{selectedGEDDocuments:[],selectedLineDocuments:[],view:"list",documents:[],loading:!1,filter:"",gedFilter:"",deleteModalDisplayed:!1}},computed:{headerCheckboxValue(){return this.selectedLineDocuments.length===0?!1:this.selectedLineDocuments.length===this.documents.length?!0:null},alreadySelectedIds(){return this.documents.map(t=>t.id)},filteredDocuments(){if(this.filter==="")return this.documents;{const t=new RegExp(this.filter,"i");return this.documents.filter(e=>t.test(e.name))}},emptySearch(){return this.documents.length>0&&this.filteredDocuments.length===0}},watch:{selectedObject:{async handler(t){this.view="list",this.selectedLineDocuments=[],t?this.getDocuments():this.documents=[]},immediate:!0},view(){this.selectedGEDDocuments=[]}},created(){document.addEventListener("keyup",this.onKeyUp)},unmounted(){document.removeEventListener("keyup",this.onKeyUp)},methods:{onLineDocumentClick(t){var e,i;if((i=(e=t?.name)==null?void 0:e.match)!=null&&i.call(e,/\.pdf$/)&&this.$viewer.registeredWindows.includes("pdf")){this.showPdf(t);return}this.toggleLineDocumentSelection(t)},async showPdf(t){this.$viewer.globalContext.pluginComponentInstances.has("pdf")||await this.$viewer.globalContext.open({ratio:60,direction:"row",insertAfter:!0,windowName:"pdf"}),this.$viewer.globalContext.pluginComponentInstances.get("pdf")[0].loadFile(t)},onLinkedElementBack(){this.linkedElementsShown?this.$emit("link-close"):this.view="list"},onLinkedElementSelected(){this.view="list",this.$emit("link-close")},onLinkedElementClick(){this.view="linked"},onCancelClick(){this.view="list"},async onDeleteModalValidate(){this.deleteModalDisplayed=!1,this.loading=!0;try{const t=this.$viewer.api.cloudId,e=this.$viewer.api.projectId,i=this.selectedObject.model.id;await this.$viewer.api.apiClient.modelApi.bulkRemoveDocumentsOfElement(t,this.selectedObject.uuid,i,e,this.selectedLineDocuments.map(o=>o.id)),this.documents=this.documents.filter(o=>!this.selectedLineDocuments.includes(o)),this.selectedLineDocuments=[],this.$viewer.localContext.hub.emit("alert",{type:"success",message:this.$t("properties.unlink_documents_success")})}catch{this.$viewer.localContext.hub.emit("alert",{type:"error",message:this.$t("properties.unlink_documents_error")})}finally{this.loading=!1}},onDeleteClick(){this.deleteModalDisplayed=!0},onDownloadClick(){const t={projectId:this.$viewer.api.projectId,spaceId:this.$viewer.api.cloudId,accessToken:this.$viewer.api.accessToken,apiUrl:this.$viewer.api.apiUrl};_2t(this.selectedLineDocuments,t)},onHeaderCheckboxClick(){this.headerCheckboxValue===!0||this.headerCheckboxValue===null?this.selectedLineDocuments=[]:this.selectedLineDocuments=Array.from(this.documents)},toggleLineDocumentSelection(t){this.selectedLineDocuments.includes(t)?this.selectedLineDocuments=this.selectedLineDocuments.filter(e=>e!==t):this.selectedLineDocuments.push(t)},isSelected(t){return this.selectedLineDocuments.includes(t)},onAddDocumentClick(){this.view="dms"},async onValidateSelectionClick(){const t=this.selectedGEDDocuments.map(e=>e.id);this.loading=!0;try{const e=this.$viewer.api.cloudId,i=this.$viewer.api.projectId;await V2t(this.$viewer.state.selectedObjects.map(o=>async()=>this.$viewer.api.apiClient.modelApi.linkDocumentsOfElement(e,o.uuid,o.model.id,i,t)),20),console.info(this.$t("properties.link_documents_success")),this.$viewer.localContext.hub.emit("alert",{type:"success",message:this.$t("properties.link_documents_success")}),this.documents.push(...this.selectedGEDDocuments.filter(o=>!this.documents.find(r=>r.id===o.id))),this.selectedGEDDocuments=[],this.view="list"}catch{this.$viewer.localContext.hub.emit("alert",{type:"error",message:this.$t("properties.link_documents_error")})}finally{this.loading=!1}},onKeyUp(t){t.key==="Escape"&&(this.view="list")},onDocumentSelectionChange(t){this.selectedGEDDocuments=t},onFromDMSClick(){this.view="dms"},async getDocuments(){this.documents=[],this.loading=!0;try{const t=await this.$viewer.api.apiClient.modelApi.getDocumentsOfElement(this.$viewer.api.cloudId,this.selectedObject.uuid,this.selectedObject.model.id,this.$viewer.api.projectId);this.documents=t}catch(t){this.$viewer.localContext.hub.emit("alert",{type:"error",message:t.message})}finally{this.loading=!1}}}},wyt={class:"bimdata-properties__documents"},Lyt={class:"bimdata-properties__documents__searchbar"},myt={key:0,class:"bimdata-properties__documents__list"},yyt={class:"bimdata-properties__documents__list__header"},vyt={class:"bimdata-properties__documents__list__header__start"},Cyt=v("div",{class:"bimdata-properties__documents__list__spacer"},null,-1),Iyt={key:1,class:"bimdata-properties__documents__list__header__buttons"},jyt={class:"bimdata-properties__documents__list__spacer"},byt={key:1,class:"bimdata-properties__documents__empty"},xyt={class:"bimdata-properties__documents__selection__buttons"},Dyt={key:0,class:"bimdata-properties__documents__selection__buttons__length"};function Nyt(t,e,i,o,r,n){const s=z("LinkedElement"),a=z("BIMDataIconLinkedDocument"),l=z("BIMDataButton"),c=z("BIMDataSearch"),u=z("BIMDataCheckbox"),d=z("BIMDataIconDelete"),h=z("BIMDataIconDownload"),p=z("BIMDataFileIcon"),g=z("BIMDataTextbox"),A=z("BIMDataIconPlus"),M=z("BIMDataIllustration"),f=z("BIMDataEmpty"),L=z("DeleteModal"),w=z("BIMDataGED"),m=z("BIMDataLoading");return D(),U("div",wyt,[i.linkedElementsShown||r.view==="linked"?(D(),oe(s,{key:0,onBack:n.onLinkedElementBack,onSelected:n.onLinkedElementSelected},null,8,["onBack","onSelected"])):r.view==="list"?(D(),U(Mt,{key:1},[r.documents.length>0?(D(),U(Mt,{key:0},[v("div",Lyt,[O(l,{icon:"",fill:"",radius:"",height:"36px",width:"36px",onClick:n.onLinkedElementClick},{default:J(()=>[O(a,{class:"fill-primary",size:"m"})]),_:1},8,["onClick"]),O(c,{modelValue:r.filter,"onUpdate:modelValue":e[0]||(e[0]=C=>r.filter=C),placeholder:t.$t("properties.search"),height:"36px",radius:"",width:"calc(100% - 42px)",color:"primary"},null,8,["modelValue","placeholder"])]),n.emptySearch?be("",!0):(D(),U("ul",myt,[v("li",yyt,[v("div",vyt,[O(u,{"model-value":n.headerCheckboxValue,"onUpdate:modelValue":n.onHeaderCheckboxClick},null,8,["model-value","onUpdate:modelValue"]),r.selectedLineDocuments.length===0?(D(),U(Mt,{key:0},[Cyt,v("span",null,X(t.$t("properties.name")),1)],64)):(D(),U("div",Iyt,[O(l,{color:"high",ghost:"",radius:"",class:"bimdata-properties__documents__list__header__buttons__delete",onClick:n.onDeleteClick},{default:J(()=>[O(d,{size:"xs",margin:"0 12px 0 0"}),v("span",null,X(t.$t("global.delete")),1)]),_:1},8,["onClick"]),O(l,{color:"primary",ghost:"",radius:"",class:"bimdata-properties__documents__list__header__buttons__download",onClick:n.onDownloadClick},{default:J(()=>[O(h,{size:"xs",margin:"0 12px 0 0"}),v("span",null,X(t.$t("global.download")),1)]),_:1},8,["onClick"])]))])]),(D(!0),U(Mt,null,ii(n.filteredDocuments,C=>(D(),U("li",{key:C.id,class:"bimdata-properties__documents__list__element"},[O(u,{"model-value":n.isSelected(C),"onUpdate:modelValue":I=>n.toggleLineDocumentSelection(C)},null,8,["model-value","onUpdate:modelValue"]),v("div",jyt,[O(p,{"file-name":C.name,size:20,onClick:I=>n.toggleLineDocumentSelection(C)},null,8,["file-name","onClick"])]),O(g,{width:"calc(100% - 100px)",text:C.name,onClick:I=>n.onLineDocumentClick(C)},null,8,["text","onClick"])]))),128))])),O(l,{class:"bimdata-properties__documents__list__header__add-button",color:"primary",fill:"",radius:"",icon:"",onClick:n.onAddDocumentClick},{default:J(()=>[O(A,{size:"xxxs"})]),_:1},8,["onClick"]),n.emptySearch?(D(),oe(f,{key:1,message:t.$t("properties.empty_search")},{default:J(()=>[O(M,{name:"emptyProperties"})]),_:1},8,["message"])):be("",!0),r.deleteModalDisplayed?(D(),oe(L,{key:2,class:"bimdata-properties__documents__delete-modal",documents:r.selectedLineDocuments,onClose:e[1]||(e[1]=C=>r.deleteModalDisplayed=!1),onValidate:n.onDeleteModalValidate},null,8,["documents","onValidate"])):be("",!0)],64)):(D(),U("div",byt,[O(f,{message:t.$t("properties.no_document")},{default:J(()=>[O(M,{name:"emptyProperties"})]),_:1},8,["message"]),O(l,{color:"primary",fill:"",radius:"",width:"296px",class:"bimdata-properties__documents__empty__button",disabled:!i.selectedObject,onClick:n.onFromDMSClick},{default:J(()=>[dt(X(t.$t("properties.from_dms")),1)]),_:1},8,["disabled","onClick"]),O(l,{color:"primary",fill:"",radius:"",width:"296px",class:"bimdata-properties__documents__empty__button--linked-element",onClick:n.onLinkedElementClick},{default:J(()=>[dt(X(t.$t("properties.linked_element_list")),1)]),_:1},8,["onClick"])]))],64)):(D(),U(Mt,{key:2},[O(w,{ref:"ged",class:"bimdata-properties__documents__ged","header-buttons":!0,"multi-select-mode":!0,"already-selected-ids":n.alreadySelectedIds,onSelectionChange:n.onDocumentSelectionChange},null,8,["already-selected-ids","onSelectionChange"]),v("div",xyt,[O(l,{key:"cancelButton",width:"45%",color:"granite",outline:"",radius:"",onClick:n.onCancelClick},{default:J(()=>[dt(X(t.$t("global.cancel")),1)]),_:1},8,["onClick"]),O(l,{key:"validateButton",width:"45%",color:"primary",fill:"",radius:"",disabled:r.selectedGEDDocuments.length===0,onClick:n.onValidateSelectionClick},{default:J(()=>[dt(X(t.$t("properties.validate_selection"))+" ",1),r.selectedGEDDocuments.length>0?(D(),U("div",Dyt,X(r.selectedGEDDocuments.length),1)):be("",!0)]),_:1},8,["disabled","onClick"])])],64)),r.loading?(D(),oe(m,{key:3})):be("",!0)])}const Syt=W(fyt,[["render",Nyt]]),kyt={key:0,class:"bimdata-properties__bucket"},Tyt={key:0,class:"bimdata-properties__bucket__edit-switch"},Eyt={class:"bimdata-properties__bucket__selection-list__header"},zyt={class:"bimdata-info-length"},Pyt=["onClick"],Byt={class:"bimdata-properties__content"},gH={__name:"BIMDataProperties",props:{fromWrapper:{type:Boolean,default:!1}},setup(t){const e=Ut("$viewer"),i=t,o=Fe("properties"),r=or(null),n=or([]),s=Fe(!1),a=Fe(!1),l=Fe(0),c=At(()=>[{id:1,get label(){return e.i18n.$t("properties.title")}},{id:2,get label(){return e.i18n.$t("properties.technical_documents")}}]),u=At(()=>{var j;return((j=r.value)==null?void 0:j.model.document.user_permission)===100}),d=At(()=>{var j,b;return i.fromWrapper?(j=e.pluginsCfg["structure-properties"])==null?void 0:j.editProperties:(b=e.pluginsCfg.properties)==null?void 0:b.editProperties}),h=At(()=>d.value&&o.value==="properties"&&e.api.permissions.hasModelWritePermission),p=At(()=>`${a.value?"--content-height: calc(100% - 44px)":"--content-height: calc(100% - 92px)"};
81
81
  ${h.value?"--bucket-width: calc(100% - 38px)":"--bucket-width: 100%"};
82
82
  `),g=At(()=>{var j;return n.value.length>0?`${((j=r.value)==null?void 0:j.name)??e.i18n.$t("properties.no_name")}`:e.i18n.$t("properties.no_element")});Zt(l,()=>a.value=!1);const A=()=>{if(i.fromWrapper){const j=e.localContext.pluginComponentInstances.get("viewer3d"),b=[];for(const T of j.loadedIfcIds)for(const P of e.state.modelsMap.get(T).objects)P.selected&&b.push(P);return b}else return e.state.selectedObjects},M=j=>{j.id===1?o.value="properties":o.value="documents"},f=j=>{r.value=j},L=j=>{var b;return j?.uuid===((b=r.value)==null?void 0:b.uuid)},w=()=>{a.value=!0};let m=Array.from(A());const C=()=>{const j=A();n.value=[],r.value=null,j.length>0&&(n.value=Array.from(j),r.value=n.value.find(b=>b.model!=null&&b.uuid&&!m.some(T=>T.id===b.id))??null,r.value||(r.value=n.value.find(b=>b.model!=null&&b.uuid)??null)),m=Array.from(A())},I=[e.state.hub.on("objects-deselected",C),e.state.hub.on("objects-selected",C)];if(i.fromWrapper)Zt(()=>e.localContext.pluginComponentInstances.get("viewer3d").loadedIfcIds,j=>{l.value=j.length});else{const j=()=>{l.value=e.state.models.length};I.push(e.state.hub.on("ifcs-loaded",j,{getLastEvent:!0}),e.state.hub.on("ifcs-unloaded",j))}return C(),Oo(()=>{I.forEach(j=>e.state.hub.off(j))}),(j,b)=>{const T=z("BIMDataTabs"),P=z("BIMDataIconEdit"),S=z("BIMDataButton"),k=z("BIMDataTooltip"),R=z("BIMDataTextbox"),Y=z("BIMDataDropdownList"),Z=z("BIMDataIllustration");return D(),U("div",{class:"bimdata-properties",style:Se(p.value)},[O(T,{tabs:c.value,"tab-size":"50%",selected:0,class:"bimdata-properties__tabs",onTabSelected:M},null,8,["tabs"]),a.value?be("",!0):(D(),U("div",kyt,[h.value?(D(),U("div",Tyt,[O(k,{text:j.$t("properties.tooltip"),color:"granite-light"},{default:J(()=>[O(S,{class:Ne(["bimdata-properties__bucket__edit-switch__button",{active:s.value}]),icon:"",fill:"",radius:"",height:"35px",disabled:!u.value,onClick:b[0]||(b[0]=G=>s.value=!s.value)},{default:J(()=>[O(P,{class:"fill-primary",size:"xs"})]),_:1},8,["class","disabled"])]),_:1},8,["text"])])):be("",!0),a.value?be("",!0):(D(),oe(Y,{key:1,ref:"propertiesHeaderList",class:"bimdata-properties__bucket__selection-list",list:n.value,disabled:n.value.length===0,"per-page":30,"element-key":"id"},{header:J(()=>[v("div",Eyt,[v("div",zyt,X(n.value.length),1),O(R,{text:g.value,tooltip:!1,width:"calc(100% - 42px)"},null,8,["text"])])]),element:J(({element:G,close:_})=>[v("span",{class:Ne({"bimdata-properties__bucket__selection-list--selected":L(G)}),onClick:ee=>{_(),f(G)}},[O(R,{text:G.name||j.$t("properties.no_name"),tooltip:!1},null,8,["text"])],10,Pyt)]),_:1},8,["list","disabled"]))])),v("div",Byt,[r.value||o.value==="documents"&&a.value?(D(),U(Mt,{key:0},[Tt(O(Q2t,{"edit-allowed":s.value,"selected-object":r.value},null,8,["edit-allowed","selected-object"]),[[Ai,o.value==="properties"]]),Tt(O(Syt,{"selected-object":r.value,"linked-elements-shown":a.value,onLinkClose:b[1]||(b[1]=G=>a.value=!1)},null,8,["selected-object","linked-elements-shown"]),[[Ai,o.value==="documents"]])],64)):(D(),oe(Op,{key:1,message:o.value==="properties"?j.$t("properties.new_properties"):j.$t("properties.new_documents")},{footer:J(()=>[o.value==="documents"?(D(),oe(S,{key:0,color:"primary",fill:"",radius:"",width:"296px",disabled:l.value===0,onClick:w},{default:J(()=>[dt(X(j.$t("properties.linked_element_list")),1)]),_:1},8,["disabled"])):be("",!0)]),default:J(()=>[v("h2",null,X(o.value==="properties"?j.$t("properties.title"):j.$t("properties.title_secondary")),1),O(Z,{name:"emptyProperties"})]),_:1},8,["message"]))])],4)}}},Oyt="Eigenschaften",Ryt="Ausgabe",Uyt="Bitte w\xE4hlen Sie im Modell ein Element aus, um seine Eigenschaften anzuzeigen",Fyt="Gegenstand",Yyt="Gegenst\xE4nde",Qyt="Kein Element ausgew\xE4hlt",Gyt="Nicht spezifiziert",Hyt="Klassifizierung",Vyt="Attribute",Zyt="Format angefordert:",Jyt="Dokumente",Wyt="Bitte w\xE4hlen Sie einen Artikel im Modell aus, damit seine Dokumente angezeigt werden.",Kyt="nachforschen",_yt="Die Suche liefert keine Erkenntnisse",qyt="Technische Dokumente",Xyt="Kein Dokument",$yt="Aus dem GED des Projekts",evt="Die Auswahl best\xE4tigen",tvt="Dokumente erfolgreich verkn\xFCpft",ivt="Beim Verkn\xFCpfen der Dokumente ist ein Fehler aufgetreten.",ovt="Beim Aufheben der Verkn\xFCpfung der Dokumente ist ein Fehler aufgetreten.",rvt="Verkn\xFCpfung der Dokumente erfolgreich aufgehoben.",svt="Name",nvt="Verkn\xFCpfung von Dokumenten aufheben",avt="Durch diese Aktion wird die Verkn\xFCpfung der folgenden Dokumente aufgehoben.",lvt="Liste verkn\xFCpfter Elemente",cvt="Verkn\xFCpfte Elemente k\xF6nnen nicht abgerufen werden.",uvt={CompositionType:"Art der Zusammensetzung",Description:"Beschreibung",Elevation:"Erhebung",LongName:"Vollst\xE4ndiger Name",ObjectType:"Art des Objekts",Representation:"Vertretung",type:"Art",Name:"Name"},MH={title:Oyt,tooltip:Ryt,new_properties:Uyt,object:Fyt,objects:Yyt,no_element:Qyt,no_name:Gyt,classification:Hyt,attributes:Vyt,"edit-success":"Eigenschaft aktualisiert","edit-error":"Die Eigenschaft kann nicht aktualisiert werden","invalid-format":"Ung\xFCltiges Format",requested_format:Zyt,"get-error":"Die Daten k\xF6nnen nicht wiederhergestellt werden, bitte aktualisieren Sie die Seite",title_secondary:Jyt,new_documents:Wyt,search:Kyt,empty_search:_yt,technical_documents:qyt,no_document:Xyt,from_dms:$yt,validate_selection:evt,link_documents_success:tvt,link_documents_error:ivt,unlink_documents_error:ovt,unlink_documents_success:rvt,name:svt,delete_modal_title:nvt,delete_modal_description:avt,linked_element_list:lvt,linked_documents_error:cvt,attributes_name:uvt},dvt="Properties",hvt="Editing",pvt="Please select an element in the model to display its properties",Avt="Object",gvt="Objects",Mvt="No element",fvt="Not specified",wvt="Classification",Lvt="Attributes",mvt="Documents",yvt="Please select an item in the template to view its documents",vvt="Research",Cvt="The search did not give any results",Ivt="Technical documents",jvt="No document",bvt="From the project's DMS",xvt="Validate the selection",Dvt="Successfully linked documents",Nvt="An error occurred in linking the documents",Svt="An error occurred while untying the documents",kvt="Documents successfully untied",Tvt="Name",Evt="Untie the documents",zvt="This action will untie the following documents",Pvt="List of related items",Bvt="Unable to retrieve linked items",Ovt={CompositionType:"Type of composition",Description:"Description",Elevation:"Elevation",LongName:"Full name",ObjectType:"Type of object",Representation:"Representation",type:"Type",Name:"Name"},Rvt="Expected format:",Uvt="Type",fH={title:dvt,tooltip:hvt,new_properties:pvt,object:Avt,objects:gvt,no_element:Mvt,no_name:fvt,classification:wvt,attributes:Lvt,"edit-success":"Propertie updated","edit-error":"Impossible to update propertie","get-error":"Error fetching data, you should refresh the page",title_secondary:mvt,new_documents:yvt,search:vvt,empty_search:Cvt,technical_documents:Ivt,no_document:jvt,from_dms:bvt,validate_selection:xvt,link_documents_success:Dvt,link_documents_error:Nvt,unlink_documents_error:Svt,unlink_documents_success:kvt,name:Tvt,delete_modal_title:Evt,delete_modal_description:zvt,linked_element_list:Pvt,linked_documents_error:Bvt,attributes_name:Ovt,"invalid-format":"Invalid format",requested_format:Rvt,property_set_type:Uvt},Fvt="Propiedades",Yvt="Correcci\xF3n",Qvt="Seleccione un elemento del modelo para mostrar sus propiedades",Gvt="Objeto",Hvt="Objetos",Vvt="Sin elemento",Zvt="No especificado",Jvt="Clasificaci\xF3n",Wvt="Atributos",Kvt="Formato solicitado:",_vt="Documentos",qvt="Seleccione un elemento de la plantilla para ver sus documentos",Xvt="Buscar",$vt="La b\xFAsqueda no ha arrojado ning\xFAn resultado",e3t="Documentos t\xE9cnicos",t3t="Sin documentos",i3t="De la GED del proyecto",o3t="Confirmar la selecci\xF3n",r3t="Se han vinculado correctamente los documentos",s3t="Se ha producido un error al vincular los documentos",n3t="Se ha producido un error al desvincular los documentos",a3t="Se han desvinculado correctamente los documentos",l3t="Nombre",c3t="Desvincular los documentos",u3t="Esta acci\xF3n desvincular\xE1 los siguientes documentos",d3t="Lista de elementos vinculados",h3t="No se pueden recuperar los elementos vinculados",p3t={CompositionType:"Tipo de composici\xF3n",Description:"Descripci\xF3n",Elevation:"Elevaci\xF3n",LongName:"Nombre completo",ObjectType:"Tipo de objeto",Representation:"Representaci\xF3n",type:"Tipo",Name:"Nombre"},A3t={title:Fvt,tooltip:Yvt,new_properties:Qvt,object:Gvt,objects:Hvt,no_element:Vvt,no_name:Zvt,classification:Jvt,attributes:Wvt,"edit-success":"Propiedad actualizada","edit-error":"Imposible actualizar la propiedad","invalid-format":"Formato inv\xE1lido",requested_format:Kvt,"get-error":"Error al obtener datos, debe actualizar la p\xE1gina",title_secondary:_vt,new_documents:qvt,search:Xvt,empty_search:$vt,technical_documents:e3t,no_document:t3t,from_dms:i3t,validate_selection:o3t,link_documents_success:r3t,link_documents_error:s3t,unlink_documents_error:n3t,unlink_documents_success:a3t,name:l3t,delete_modal_title:c3t,delete_modal_description:u3t,linked_element_list:d3t,linked_documents_error:h3t,attributes_name:p3t},g3t="Propri\xE9t\xE9s",M3t="\xC9dition",f3t="Veuillez s\xE9lectionner un \xE9l\xE9ment dans le mod\xE8le pour afficher ses propri\xE9t\xE9s",w3t="Objet",L3t="Objets",m3t="Pas d'\xE9l\xE9ment selectionn\xE9",y3t="Non sp\xE9cifi\xE9",v3t="Classification",C3t="Attributs",I3t="Format attendu :",j3t="Documents",b3t="Veuillez s\xE9lectionner un \xE9l\xE9ment dans le mod\xE8le pour afficher ses documents",x3t="Rechercher",D3t="La recherche ne donne aucun r\xE9sultat",N3t="Documents techniques",S3t="Aucun document",k3t="Depuis la GED du projet",T3t="Valider la selection",E3t="Documents li\xE9s avec succ\xE8s",z3t="Une erreur est survenue en liant les documents",P3t="Une erreur est survenue en d\xE9liant les documents",B3t="Documents d\xE9li\xE9s avec succ\xE8s",O3t="Nom",R3t="D\xE9lier les documents",U3t="Cette action va d\xE9lier les documents suivants",F3t="Liste des \xE9l\xE9ments li\xE9s",Y3t="Impossible de r\xE9cup\xE9rer les \xE9l\xE9ments li\xE9s",Q3t={CompositionType:"Type de composition",Description:"Description",Elevation:"\xC9l\xE9vation",LongName:"Nom complet",ObjectType:"Type d'objet",Representation:"Repr\xE9sentation",type:"Type",Name:"Nom"},G3t="Type",wH={title:g3t,tooltip:M3t,new_properties:f3t,object:w3t,objects:L3t,no_element:m3t,no_name:y3t,classification:v3t,attributes:C3t,"edit-success":"Propri\xE9t\xE9 mise \xE0 jour","edit-error":"Impossible de mettre \xE0 jour la propri\xE9t\xE9","invalid-format":"Format invalide",requested_format:I3t,"get-error":"Impossible de r\xE9sup\xE9rer la donn\xE9e, veuillez rafraichir la page",title_secondary:j3t,new_documents:b3t,search:x3t,empty_search:D3t,technical_documents:N3t,no_document:S3t,from_dms:k3t,validate_selection:T3t,link_documents_success:E3t,link_documents_error:z3t,unlink_documents_error:P3t,unlink_documents_success:B3t,name:O3t,delete_modal_title:R3t,delete_modal_description:U3t,linked_element_list:F3t,linked_documents_error:Y3t,attributes_name:Q3t,property_set_type:G3t},H3t="Propriet\xE0",V3t="Modifica",Z3t="Seleziona un elemento nel modello per visualizzare le sue propriet\xE0",J3t="Oggetto",W3t="Oggetti",K3t="Nessun elemento selezionato",_3t="Non specificato",q3t="Classificazione",X3t="Attributi",$3t="Formato richiesto:",eCt="Documenti",tCt="Seleziona un elemento nel modello per visualizzare i relativi documenti",iCt="Cerca",oCt="La ricerca non ha fornito risultati",rCt="Documenti tecnici",sCt="Nessun documento",nCt="Dalla GED del progetto",aCt="Conferma la selezione",lCt="Documenti collegati correttamente",cCt="Si \xE8 verificato un errore durante il collegamento dei documenti",uCt="Si \xE8 verificato un errore durante lo scollegamento dei documenti",dCt="Documenti scollegati correttamente",hCt="Nome",pCt="Scollega i documenti",ACt="Questa azione scollegher\xE0 i documenti seguenti",gCt="Elenco degli elementi collegati",MCt="Impossibile recuperare gli elementi collegati",fCt={CompositionType:"Tipo di composizione",Description:"Descrizione",Elevation:"Elevazione",LongName:"Nome completo",ObjectType:"Tipo di oggetto",Representation:"Rappresentazione",type:"Tipo",Name:"Nome"},wCt={title:H3t,tooltip:V3t,new_properties:Z3t,object:J3t,objects:W3t,no_element:K3t,no_name:_3t,classification:q3t,attributes:X3t,"edit-success":"Propriet\xE0 aggiornata","edit-error":"Impossibile aggiornare la propriet\xE0","invalid-format":"Formato non valido",requested_format:$3t,"get-error":"Impossibile recuperare i dati, aggiorna la pagina",title_secondary:eCt,new_documents:tCt,search:iCt,empty_search:oCt,technical_documents:rCt,no_document:sCt,from_dms:nCt,validate_selection:aCt,link_documents_success:lCt,link_documents_error:cCt,unlink_documents_error:uCt,unlink_documents_success:dCt,name:hCt,delete_modal_title:pCt,delete_modal_description:ACt,linked_element_list:gCt,linked_documents_error:MCt,attributes_name:fCt},LCt="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjMiIHZpZXdCb3g9IjAgMCAyNCAyMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeD0iOC42NzEzOSIgeT0iNC4xNDAwMSIgd2lkdGg9IjYuNDQiIGhlaWdodD0iMS44NCIgZmlsbD0iI0Y4QzYyQyIvPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTYuMDYxMyAwLjQ1OTk2MUgxOC43OTE0VjguOTcxODRDMTguMjAzMyA4LjgyMDQ3IDE3LjU4NjcgOC43Mzk5NiAxNi45NTE0IDguNzM5OTZMMTYuOTUxNCAyLjI5OTk2SDYuODMxMzdWNi45MDAwMkgyLjIzMTM5VjE5Ljc4SDEwLjU3NkMxMC45NzY3IDIwLjQ3MjUgMTEuNDg2OSAyMS4wOTM4IDEyLjA4MzEgMjEuNjJIMC4zOTEzODhWNi4xMjk4N0w2LjA2MTMgMC40NTk5NjFaIiBmaWxsPSIjMkYzNzRBIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNOS41OTE0IDE2LjA5OTlINC4wNzEzOFYxNy45Mzk5SDkuODIzMjRDOS42NzE4OSAxNy4zNTE4IDkuNTkxNCAxNi43MzUzIDkuNTkxNCAxNi4xQzkuNTkxNCAxNi4wOTk5IDkuNTkxNCAxNi4wOTk5IDkuNTkxNCAxNi4wOTk5WiIgZmlsbD0iI0Y4QzYyQyIvPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEwLjU3NjEgMTIuNDJINC4wNzEzOFYxNC4yNkg5LjgyMzI4QzkuOTkxMyAxMy42MDczIDEwLjI0NjYgMTIuOTg5NSAxMC41NzYxIDEyLjQyWiIgZmlsbD0iI0Y4QzYyQyIvPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTE1LjExMTQgOC45NzE4NFY4LjczOTk5SDQuMDcxMzhWMTAuNThIMTIuMDgzQzEyLjkzODkgOS44MjQ2MiAxMy45NzE3IDkuMjY1MTcgMTUuMTExNCA4Ljk3MTg0WiIgZmlsbD0iI0Y4QzYyQyIvPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTE2Ljk1MTQgMjIuNTRDMjAuNTA4MSAyMi41NCAyMy4zOTE0IDE5LjY1NjcgMjMuMzkxNCAxNi4xQzIzLjM5MTQgMTIuNTQzMyAyMC41MDgxIDkuNjYwMDMgMTYuOTUxNCA5LjY2MDAzQzEzLjM5NDcgOS42NjAwMyAxMC41MTE0IDEyLjU0MzMgMTAuNTExNCAxNi4xQzEwLjUxMTQgMTkuNjU2NyAxMy4zOTQ3IDIyLjU0IDE2Ljk1MTQgMjIuNTRaTTE2LjIzNCAxNy40MDZIMTcuNDE5OUwxNy41ODc5IDEyLjQyMDFIMTYuMDY2TDE2LjIzNCAxNy40MDZaTTE3LjQwNTEgMTguMzk5MkMxNy4yNjAxIDE4LjI1NzYgMTcuMDY3NCAxOC4xODY4IDE2LjgyNjkgMTguMTg2OEMxNi41ODk4IDE4LjE4NjggMTYuMzk3IDE4LjI1OTIgMTYuMjQ4OCAxOC40MDQyQzE2LjEwMzkgMTguNTQ1OCAxNi4wMzE0IDE4LjcyNTQgMTYuMDMxNCAxOC45NDI4QzE2LjAzMTQgMTkuMTYwMiAxNi4xMDM5IDE5LjMzOTggMTYuMjQ4OCAxOS40ODE0QzE2LjM5NyAxOS42MjMxIDE2LjU4OTggMTkuNjkzOSAxNi44MjY5IDE5LjY5MzlDMTcuMDY3NCAxOS42OTM5IDE3LjI2MDEgMTkuNjIzMSAxNy40MDUxIDE5LjQ4MTRDMTcuNTUzMyAxOS4zMzk4IDE3LjYyNzUgMTkuMTYwMiAxNy42Mjc1IDE4Ljk0MjhDMTcuNjI3NSAxOC43MjIxIDE3LjU1MzMgMTguNTQwOSAxNy40MDUxIDE4LjM5OTJaIiBmaWxsPSIjMkYzNzRBIi8+Cjwvc3ZnPgo=",mCt={name:"properties",i18n:{de:MH,en:fH,es:A3t,fr:wH,it:wCt},component:gH,window:{name:"properties",label:"properties.title",icon:{imgUri:LCt}}},yCt={render(){return null},name:"BIMDataFirstPersonView",mounted(){const t=this.$viewer.localContext.pluginComponentInstances.get("viewer3d");if(!t){const e="Plugin Projection cannot work without viewer3D plugin.";throw console.error(e),new Error(e)}this.viewer3d=t},onOpen(){var t;const e=this.viewer3d.xeokit,i=this.$viewer.localContext.loadedModels[0];if(!i){setTimeout(()=>this.$close());return}const o=this.$viewer.state.getStoreyFromAbsoluteElevation(i,e.camera.eye[1]);if(o&&o.key!==((t=this.$viewer.localContext.selectedStorey)==null?void 0:t.key)&&this.$viewer.localContext.selectStorey(o),!o)return;const{math:r}=this.viewer3d.xeokitSdk,n=Object.values(e.scene.models).find(A=>A.ifc.id===o.model.id);if(!n)return;const s=new Map(Array.from(Object.values(n.objects)).map(A=>[A.originalSystemId,A])),a=o.objects.map(A=>A.uuid).map(A=>s.get(A)).filter(Boolean),{eye:l}=e.scene.camera;let c=1/0,u=null;for(const A of a){const[M,,f,L,,w]=A.aabb,m={x:(M+L)/2,y:(f+w)/2},C={x:m.x+(L-M)/2,y:m.y+(w-f)/2},I=Math.sqrt((C.x-l[0])**2+(C.y-l[2])**2);I<c&&(c=I,u=C)}if(!u)return;const d=[u.x,u.y],h=r.mulVec2Scalar(r.normalizeVec2(r.subVec2([l[0],l[2]],d,r.vec2())),3),p=[d[0]+h[0],d[1]+h[1]],g=[p[0],o.absoluteElevation+this.viewer3d.STOREY_HEIGHT_CAMERA_OFFSET,p[1]];return e.cameraFlight.flyTo({eye:g,duration:.5}),new Promise(A=>setTimeout(()=>{this.viewer3d.firstPersonView=!0,A()},500))},onClose(){this.viewer3d.firstPersonView=!1}},vCt={},CCt={width:"14",height:"23",viewBox:"0 0 14 23",fill:"none",xmlns:"http://www.w3.org/2000/svg"},ICt=v("path",{d:"M7.96154 4.27907C9.12923 4.27907 10.0846 3.31628 10.0846 2.13953C10.0846 0.962791 9.12923 0 7.96154 0C6.79385 0 5.83846 0.962791 5.83846 2.13953C5.83846 3.31628 6.79385 4.27907 7.96154 4.27907ZM4.03385 7.91628L1.06154 23H3.29077L5.20154 14.4419L7.43077 16.5814V23H9.55385V14.9767L7.32461 12.8372L7.96154 9.62791C9.34154 11.2326 11.4646 12.3023 13.8 12.3023V10.1628C11.7831 10.1628 10.0846 9.09302 9.23538 7.59535L8.17385 5.88372C7.74923 5.24186 7.11231 4.81395 6.36923 4.81395C6.05077 4.81395 5.83846 4.92093 5.52 4.92093L0 7.27442V12.3023H2.12308V8.66512L4.03385 7.91628Z",fill:"black"},null,-1),jCt=[ICt];function bCt(t,e){return D(),U("svg",CCt,jCt)}const xCt=W(vCt,[["render",bCt]]),DCt={},NCt={width:"21",height:"23",viewBox:"0 0 21 23",fill:"none",xmlns:"http://www.w3.org/2000/svg"},SCt=v("path",{d:"M10.35 0C11.615 0 12.65 1.035 12.65 2.3C12.65 3.565 11.615 4.6 10.35 4.6C9.085 4.6 8.05 3.565 8.05 2.3C8.05 1.035 9.085 0 10.35 0ZM20.7 8.05H13.8V23H11.5V16.1H9.2V23H6.9V8.05H0V5.75H20.7V8.05Z",fill:"black"},null,-1),kCt=[SCt];function TCt(t,e){return D(),U("svg",NCt,kCt)}const ECt=W(DCt,[["render",TCt]]),zCt="First person view",PCt={tooltip:zCt},BCt="Vue premi\xE8re personne",OCt={tooltip:BCt},RCt={name:"firstPersonView",i18n:{en:PCt,fr:OCt},addToWindows:["3d"],component:yCt,button:{tooltip:"firstPersonView.tooltip",position:"right",content:"free",keepOpen:!0,icon:{component:ECt},iconOpen:{component:xCt}}};var Zu=(t=>(t[t.WEBGL_LEGACY=0]="WEBGL_LEGACY",t[t.WEBGL=1]="WEBGL",t[t.WEBGL2=2]="WEBGL2",t))(Zu||{}),LH=(t=>(t[t.UNKNOWN=0]="UNKNOWN",t[t.WEBGL=1]="WEBGL",t[t.CANVAS=2]="CANVAS",t))(LH||{}),GC=(t=>(t[t.COLOR=16384]="COLOR",t[t.DEPTH=256]="DEPTH",t[t.STENCIL=1024]="STENCIL",t))(GC||{}),Li=(t=>(t[t.NORMAL=0]="NORMAL",t[t.ADD=1]="ADD",t[t.MULTIPLY=2]="MULTIPLY",t[t.SCREEN=3]="SCREEN",t[t.OVERLAY=4]="OVERLAY",t[t.DARKEN=5]="DARKEN",t[t.LIGHTEN=6]="LIGHTEN",t[t.COLOR_DODGE=7]="COLOR_DODGE",t[t.COLOR_BURN=8]="COLOR_BURN",t[t.HARD_LIGHT=9]="HARD_LIGHT",t[t.SOFT_LIGHT=10]="SOFT_LIGHT",t[t.DIFFERENCE=11]="DIFFERENCE",t[t.EXCLUSION=12]="EXCLUSION",t[t.HUE=13]="HUE",t[t.SATURATION=14]="SATURATION",t[t.COLOR=15]="COLOR",t[t.LUMINOSITY=16]="LUMINOSITY",t[t.NORMAL_NPM=17]="NORMAL_NPM",t[t.ADD_NPM=18]="ADD_NPM",t[t.SCREEN_NPM=19]="SCREEN_NPM",t[t.NONE=20]="NONE",t[t.SRC_OVER=0]="SRC_OVER",t[t.SRC_IN=21]="SRC_IN",t[t.SRC_OUT=22]="SRC_OUT",t[t.SRC_ATOP=23]="SRC_ATOP",t[t.DST_OVER=24]="DST_OVER",t[t.DST_IN=25]="DST_IN",t[t.DST_OUT=26]="DST_OUT",t[t.DST_ATOP=27]="DST_ATOP",t[t.ERASE=26]="ERASE",t[t.SUBTRACT=28]="SUBTRACT",t[t.XOR=29]="XOR",t))(Li||{}),Da=(t=>(t[t.POINTS=0]="POINTS",t[t.LINES=1]="LINES",t[t.LINE_LOOP=2]="LINE_LOOP",t[t.LINE_STRIP=3]="LINE_STRIP",t[t.TRIANGLES=4]="TRIANGLES",t[t.TRIANGLE_STRIP=5]="TRIANGLE_STRIP",t[t.TRIANGLE_FAN=6]="TRIANGLE_FAN",t))(Da||{}),$t=(t=>(t[t.RGBA=6408]="RGBA",t[t.RGB=6407]="RGB",t[t.RG=33319]="RG",t[t.RED=6403]="RED",t[t.RGBA_INTEGER=36249]="RGBA_INTEGER",t[t.RGB_INTEGER=36248]="RGB_INTEGER",t[t.RG_INTEGER=33320]="RG_INTEGER",t[t.RED_INTEGER=36244]="RED_INTEGER",t[t.ALPHA=6406]="ALPHA",t[t.LUMINANCE=6409]="LUMINANCE",t[t.LUMINANCE_ALPHA=6410]="LUMINANCE_ALPHA",t[t.DEPTH_COMPONENT=6402]="DEPTH_COMPONENT",t[t.DEPTH_STENCIL=34041]="DEPTH_STENCIL",t))($t||{}),Rp=(t=>(t[t.TEXTURE_2D=3553]="TEXTURE_2D",t[t.TEXTURE_CUBE_MAP=34067]="TEXTURE_CUBE_MAP",t[t.TEXTURE_2D_ARRAY=35866]="TEXTURE_2D_ARRAY",t[t.TEXTURE_CUBE_MAP_POSITIVE_X=34069]="TEXTURE_CUBE_MAP_POSITIVE_X",t[t.TEXTURE_CUBE_MAP_NEGATIVE_X=34070]="TEXTURE_CUBE_MAP_NEGATIVE_X",t[t.TEXTURE_CUBE_MAP_POSITIVE_Y=34071]="TEXTURE_CUBE_MAP_POSITIVE_Y",t[t.TEXTURE_CUBE_MAP_NEGATIVE_Y=34072]="TEXTURE_CUBE_MAP_NEGATIVE_Y",t[t.TEXTURE_CUBE_MAP_POSITIVE_Z=34073]="TEXTURE_CUBE_MAP_POSITIVE_Z",t[t.TEXTURE_CUBE_MAP_NEGATIVE_Z=34074]="TEXTURE_CUBE_MAP_NEGATIVE_Z",t))(Rp||{}),Oi=(t=>(t[t.UNSIGNED_BYTE=5121]="UNSIGNED_BYTE",t[t.UNSIGNED_SHORT=5123]="UNSIGNED_SHORT",t[t.UNSIGNED_SHORT_5_6_5=33635]="UNSIGNED_SHORT_5_6_5",t[t.UNSIGNED_SHORT_4_4_4_4=32819]="UNSIGNED_SHORT_4_4_4_4",t[t.UNSIGNED_SHORT_5_5_5_1=32820]="UNSIGNED_SHORT_5_5_5_1",t[t.UNSIGNED_INT=5125]="UNSIGNED_INT",t[t.UNSIGNED_INT_10F_11F_11F_REV=35899]="UNSIGNED_INT_10F_11F_11F_REV",t[t.UNSIGNED_INT_2_10_10_10_REV=33640]="UNSIGNED_INT_2_10_10_10_REV",t[t.UNSIGNED_INT_24_8=34042]="UNSIGNED_INT_24_8",t[t.UNSIGNED_INT_5_9_9_9_REV=35902]="UNSIGNED_INT_5_9_9_9_REV",t[t.BYTE=5120]="BYTE",t[t.SHORT=5122]="SHORT",t[t.INT=5124]="INT",t[t.FLOAT=5126]="FLOAT",t[t.FLOAT_32_UNSIGNED_INT_24_8_REV=36269]="FLOAT_32_UNSIGNED_INT_24_8_REV",t[t.HALF_FLOAT=36193]="HALF_FLOAT",t))(Oi||{}),HC=(t=>(t[t.FLOAT=0]="FLOAT",t[t.INT=1]="INT",t[t.UINT=2]="UINT",t))(HC||{}),Kl=(t=>(t[t.NEAREST=0]="NEAREST",t[t.LINEAR=1]="LINEAR",t))(Kl||{}),Bh=(t=>(t[t.CLAMP=33071]="CLAMP",t[t.REPEAT=10497]="REPEAT",t[t.MIRRORED_REPEAT=33648]="MIRRORED_REPEAT",t))(Bh||{}),Ju=(t=>(t[t.OFF=0]="OFF",t[t.POW2=1]="POW2",t[t.ON=2]="ON",t[t.ON_MANUAL=3]="ON_MANUAL",t))(Ju||{}),Yc=(t=>(t[t.NPM=0]="NPM",t[t.UNPACK=1]="UNPACK",t[t.PMA=2]="PMA",t[t.NO_PREMULTIPLIED_ALPHA=0]="NO_PREMULTIPLIED_ALPHA",t[t.PREMULTIPLY_ON_UPLOAD=1]="PREMULTIPLY_ON_UPLOAD",t[t.PREMULTIPLIED_ALPHA=2]="PREMULTIPLIED_ALPHA",t))(Yc||{}),Oh=(t=>(t[t.NO=0]="NO",t[t.YES=1]="YES",t[t.AUTO=2]="AUTO",t[t.BLEND=0]="BLEND",t[t.CLEAR=1]="CLEAR",t[t.BLIT=2]="BLIT",t))(Oh||{}),VC=(t=>(t[t.AUTO=0]="AUTO",t[t.MANUAL=1]="MANUAL",t))(VC||{}),Na=(t=>(t.LOW="lowp",t.MEDIUM="mediump",t.HIGH="highp",t))(Na||{}),$r=(t=>(t[t.NONE=0]="NONE",t[t.SCISSOR=1]="SCISSOR",t[t.STENCIL=2]="STENCIL",t[t.SPRITE=3]="SPRITE",t[t.COLOR=4]="COLOR",t))($r||{}),mH=(t=>(t[t.RED=1]="RED",t[t.GREEN=2]="GREEN",t[t.BLUE=4]="BLUE",t[t.ALPHA=8]="ALPHA",t))(mH||{}),jr=(t=>(t[t.NONE=0]="NONE",t[t.LOW=2]="LOW",t[t.MEDIUM=4]="MEDIUM",t[t.HIGH=8]="HIGH",t))(jr||{}),_l=(t=>(t[t.ELEMENT_ARRAY_BUFFER=34963]="ELEMENT_ARRAY_BUFFER",t[t.ARRAY_BUFFER=34962]="ARRAY_BUFFER",t[t.UNIFORM_BUFFER=35345]="UNIFORM_BUFFER",t))(_l||{});const Up=2*Math.PI,yH=180/Math.PI,vH=Math.PI/180;var ro=(t=>(t[t.POLY=0]="POLY",t[t.RECT=1]="RECT",t[t.CIRC=2]="CIRC",t[t.ELIP=3]="ELIP",t[t.RREC=4]="RREC",t))(ro||{});let Ar=class Yge{constructor(e=0,i=0){this.x=0,this.y=0,this.x=e,this.y=i}clone(){return new Yge(this.x,this.y)}copyFrom(e){return this.set(e.x,e.y),this}copyTo(e){return e.set(this.x,this.y),e}equals(e){return e.x===this.x&&e.y===this.y}set(e=0,i=e){return this.x=e,this.y=i,this}toString(){return`[@pixi/math:Point x=${this.x} y=${this.y}]`}};const ZC=[new Ar,new Ar,new Ar,new Ar];let bo=class wO{constructor(e=0,i=0,o=0,r=0){this.x=Number(e),this.y=Number(i),this.width=Number(o),this.height=Number(r),this.type=ro.RECT}get left(){return this.x}get right(){return this.x+this.width}get top(){return this.y}get bottom(){return this.y+this.height}static get EMPTY(){return new wO(0,0,0,0)}clone(){return new wO(this.x,this.y,this.width,this.height)}copyFrom(e){return this.x=e.x,this.y=e.y,this.width=e.width,this.height=e.height,this}copyTo(e){return e.x=this.x,e.y=this.y,e.width=this.width,e.height=this.height,e}contains(e,i){return!(this.width<=0||this.height<=0)&&e>=this.x&&e<this.x+this.width&&i>=this.y&&i<this.y+this.height}intersects(e,i){if(!i){const b=this.x<e.x?e.x:this.x;if((this.right>e.right?e.right:this.right)<=b)return!1;const T=this.y<e.y?e.y:this.y;return(this.bottom>e.bottom?e.bottom:this.bottom)>T}const o=this.left,r=this.right,n=this.top,s=this.bottom;if(r<=o||s<=n)return!1;const a=ZC[0].set(e.left,e.top),l=ZC[1].set(e.left,e.bottom),c=ZC[2].set(e.right,e.top),u=ZC[3].set(e.right,e.bottom);if(c.x<=a.x||l.y<=a.y)return!1;const d=Math.sign(i.a*i.d-i.b*i.c);if(d===0||(i.apply(a,a),i.apply(l,l),i.apply(c,c),i.apply(u,u),Math.max(a.x,l.x,c.x,u.x)<=o||Math.min(a.x,l.x,c.x,u.x)>=r||Math.max(a.y,l.y,c.y,u.y)<=n||Math.min(a.y,l.y,c.y,u.y)>=s))return!1;const h=d*(l.y-a.y),p=d*(a.x-l.x),g=h*o+p*n,A=h*r+p*n,M=h*o+p*s,f=h*r+p*s;if(Math.max(g,A,M,f)<=h*a.x+p*a.y||Math.min(g,A,M,f)>=h*u.x+p*u.y)return!1;const L=d*(a.y-c.y),w=d*(c.x-a.x),m=L*o+w*n,C=L*r+w*n,I=L*o+w*s,j=L*r+w*s;return!(Math.max(m,C,I,j)<=L*a.x+w*a.y||Math.min(m,C,I,j)>=L*u.x+w*u.y)}pad(e=0,i=e){return this.x-=e,this.y-=i,this.width+=2*e,this.height+=2*i,this}fit(e){const i=Math.max(this.x,e.x),o=Math.min(this.x+this.width,e.x+e.width),r=Math.max(this.y,e.y),n=Math.min(this.y+this.height,e.y+e.height);return this.x=i,this.width=Math.max(o-i,0),this.y=r,this.height=Math.max(n-r,0),this}ceil(e=1,i=.001){const o=Math.ceil((this.x+this.width-i)*e)/e,r=Math.ceil((this.y+this.height-i)*e)/e;return this.x=Math.floor((this.x+i)*e)/e,this.y=Math.floor((this.y+i)*e)/e,this.width=o-this.x,this.height=r-this.y,this}enlarge(e){const i=Math.min(this.x,e.x),o=Math.max(this.x+this.width,e.x+e.width),r=Math.min(this.y,e.y),n=Math.max(this.y+this.height,e.y+e.height);return this.x=i,this.width=o-i,this.y=r,this.height=n-r,this}toString(){return`[@pixi/math:Rectangle x=${this.x} y=${this.y} width=${this.width} height=${this.height}]`}};class Dv{constructor(e=0,i=0,o=0){this.x=e,this.y=i,this.radius=o,this.type=ro.CIRC}clone(){return new Dv(this.x,this.y,this.radius)}contains(e,i){if(this.radius<=0)return!1;const o=this.radius*this.radius;let r=this.x-e,n=this.y-i;return r*=r,n*=n,r+n<=o}getBounds(){return new bo(this.x-this.radius,this.y-this.radius,2*this.radius,2*this.radius)}toString(){return`[@pixi/math:Circle x=${this.x} y=${this.y} radius=${this.radius}]`}}class Nv{constructor(e=0,i=0,o=0,r=0){this.x=e,this.y=i,this.width=o,this.height=r,this.type=ro.ELIP}clone(){return new Nv(this.x,this.y,this.width,this.height)}contains(e,i){if(this.width<=0||this.height<=0)return!1;let o=(e-this.x)/this.width,r=(i-this.y)/this.height;return o*=o,r*=r,o+r<=1}getBounds(){return new bo(this.x-this.width,this.y-this.height,this.width,this.height)}toString(){return`[@pixi/math:Ellipse x=${this.x} y=${this.y} width=${this.width} height=${this.height}]`}}let Rh=class Qge{constructor(...e){let i=Array.isArray(e[0])?e[0]:e;if(typeof i[0]!="number"){const o=[];for(let r=0,n=i.length;r<n;r++)o.push(i[r].x,i[r].y);i=o}this.points=i,this.type=ro.POLY,this.closeStroke=!0}clone(){const e=this.points.slice(),i=new Qge(e);return i.closeStroke=this.closeStroke,i}contains(e,i){let o=!1;const r=this.points.length/2;for(let n=0,s=r-1;n<r;s=n++){const a=this.points[2*n],l=this.points[2*n+1],c=this.points[2*s],u=this.points[2*s+1];l>i!=u>i&&e<(i-l)/(u-l)*(c-a)+a&&(o=!o)}return o}toString(){return`[@pixi/math:PolygoncloseStroke=${this.closeStroke}points=${this.points.reduce((e,i)=>`${e}, ${i}`,"")}]`}};class Sv{constructor(e=0,i=0,o=0,r=0,n=20){this.x=e,this.y=i,this.width=o,this.height=r,this.radius=n,this.type=ro.RREC}clone(){return new Sv(this.x,this.y,this.width,this.height,this.radius)}contains(e,i){if(this.width<=0||this.height<=0)return!1;if(e>=this.x&&e<=this.x+this.width&&i>=this.y&&i<=this.y+this.height){const o=Math.max(0,Math.min(this.radius,Math.min(this.width,this.height)/2));if(i>=this.y+o&&i<=this.y+this.height-o||e>=this.x+o&&e<=this.x+this.width-o)return!0;let r=e-(this.x+o),n=i-(this.y+o);const s=o*o;if(r*r+n*n<=s||(r=e-(this.x+this.width-o),r*r+n*n<=s)||(n=i-(this.y+this.height-o),r*r+n*n<=s)||(r=e-(this.x+o),r*r+n*n<=s))return!0}return!1}toString(){return`[@pixi/math:RoundedRectangle x=${this.x} y=${this.y}width=${this.width} height=${this.height} radius=${this.radius}]`}}let hg=class Gge{constructor(e,i,o=0,r=0){this._x=o,this._y=r,this.cb=e,this.scope=i}clone(e=this.cb,i=this.scope){return new Gge(e,i,this._x,this._y)}set(e=0,i=e){return(this._x!==e||this._y!==i)&&(this._x=e,this._y=i,this.cb.call(this.scope)),this}copyFrom(e){return(this._x!==e.x||this._y!==e.y)&&(this._x=e.x,this._y=e.y,this.cb.call(this.scope)),this}copyTo(e){return e.set(this._x,this._y),e}equals(e){return e.x===this._x&&e.y===this._y}toString(){return`[@pixi/math:ObservablePoint x=0 y=0 scope=${this.scope}]`}get x(){return this._x}set x(e){this._x!==e&&(this._x=e,this.cb.call(this.scope))}get y(){return this._y}set y(e){this._y!==e&&(this._y=e,this.cb.call(this.scope))}},Wi=class aD{constructor(e=1,i=0,o=0,r=1,n=0,s=0){this.array=null,this.a=e,this.b=i,this.c=o,this.d=r,this.tx=n,this.ty=s}fromArray(e){this.a=e[0],this.b=e[1],this.c=e[3],this.d=e[4],this.tx=e[2],this.ty=e[5]}set(e,i,o,r,n,s){return this.a=e,this.b=i,this.c=o,this.d=r,this.tx=n,this.ty=s,this}toArray(e,i){this.array||(this.array=new Float32Array(9));const o=i||this.array;return e?(o[0]=this.a,o[1]=this.b,o[2]=0,o[3]=this.c,o[4]=this.d,o[5]=0,o[6]=this.tx,o[7]=this.ty,o[8]=1):(o[0]=this.a,o[1]=this.c,o[2]=this.tx,o[3]=this.b,o[4]=this.d,o[5]=this.ty,o[6]=0,o[7]=0,o[8]=1),o}apply(e,i){i=i||new Ar;const o=e.x,r=e.y;return i.x=this.a*o+this.c*r+this.tx,i.y=this.b*o+this.d*r+this.ty,i}applyInverse(e,i){i=i||new Ar;const o=1/(this.a*this.d+this.c*-this.b),r=e.x,n=e.y;return i.x=this.d*o*r+-this.c*o*n+(this.ty*this.c-this.tx*this.d)*o,i.y=this.a*o*n+-this.b*o*r+(-this.ty*this.a+this.tx*this.b)*o,i}translate(e,i){return this.tx+=e,this.ty+=i,this}scale(e,i){return this.a*=e,this.d*=i,this.c*=e,this.b*=i,this.tx*=e,this.ty*=i,this}rotate(e){const i=Math.cos(e),o=Math.sin(e),r=this.a,n=this.c,s=this.tx;return this.a=r*i-this.b*o,this.b=r*o+this.b*i,this.c=n*i-this.d*o,this.d=n*o+this.d*i,this.tx=s*i-this.ty*o,this.ty=s*o+this.ty*i,this}append(e){const i=this.a,o=this.b,r=this.c,n=this.d;return this.a=e.a*i+e.b*r,this.b=e.a*o+e.b*n,this.c=e.c*i+e.d*r,this.d=e.c*o+e.d*n,this.tx=e.tx*i+e.ty*r+this.tx,this.ty=e.tx*o+e.ty*n+this.ty,this}setTransform(e,i,o,r,n,s,a,l,c){return this.a=Math.cos(a+c)*n,this.b=Math.sin(a+c)*n,this.c=-Math.sin(a-l)*s,this.d=Math.cos(a-l)*s,this.tx=e-(o*this.a+r*this.c),this.ty=i-(o*this.b+r*this.d),this}prepend(e){const i=this.tx;if(e.a!==1||e.b!==0||e.c!==0||e.d!==1){const o=this.a,r=this.c;this.a=o*e.a+this.b*e.c,this.b=o*e.b+this.b*e.d,this.c=r*e.a+this.d*e.c,this.d=r*e.b+this.d*e.d}return this.tx=i*e.a+this.ty*e.c+e.tx,this.ty=i*e.b+this.ty*e.d+e.ty,this}decompose(e){const i=this.a,o=this.b,r=this.c,n=this.d,s=e.pivot,a=-Math.atan2(-r,n),l=Math.atan2(o,i),c=Math.abs(a+l);return c<1e-5||Math.abs(Up-c)<1e-5?(e.rotation=l,e.skew.x=e.skew.y=0):(e.rotation=0,e.skew.x=a,e.skew.y=l),e.scale.x=Math.sqrt(i*i+o*o),e.scale.y=Math.sqrt(r*r+n*n),e.position.x=this.tx+(s.x*i+s.y*r),e.position.y=this.ty+(s.x*o+s.y*n),e}invert(){const e=this.a,i=this.b,o=this.c,r=this.d,n=this.tx,s=e*r-i*o;return this.a=r/s,this.b=-i/s,this.c=-o/s,this.d=e/s,this.tx=(o*this.ty-r*n)/s,this.ty=-(e*this.ty-i*n)/s,this}identity(){return this.a=1,this.b=0,this.c=0,this.d=1,this.tx=0,this.ty=0,this}clone(){const e=new aD;return e.a=this.a,e.b=this.b,e.c=this.c,e.d=this.d,e.tx=this.tx,e.ty=this.ty,e}copyTo(e){return e.a=this.a,e.b=this.b,e.c=this.c,e.d=this.d,e.tx=this.tx,e.ty=this.ty,e}copyFrom(e){return this.a=e.a,this.b=e.b,this.c=e.c,this.d=e.d,this.tx=e.tx,this.ty=e.ty,this}toString(){return`[@pixi/math:Matrix a=${this.a} b=${this.b} c=${this.c} d=${this.d} tx=${this.tx} ty=${this.ty}]`}static get IDENTITY(){return new aD}static get TEMP_MATRIX(){return new aD}};const Fp=[1,1,0,-1,-1,-1,0,1,1,1,0,-1,-1,-1,0,1],Yp=[0,1,1,1,0,-1,-1,-1,0,1,1,1,0,-1,-1,-1],Qp=[0,-1,-1,-1,0,1,1,1,0,1,1,1,0,-1,-1,-1],Gp=[1,1,0,-1,-1,-1,0,1,-1,-1,0,1,1,1,0,-1],N9=[],CH=[],JC=Math.sign;(function(){for(let t=0;t<16;t++){const e=[];N9.push(e);for(let i=0;i<16;i++){const o=JC(Fp[t]*Fp[i]+Qp[t]*Yp[i]),r=JC(Yp[t]*Fp[i]+Gp[t]*Yp[i]),n=JC(Fp[t]*Qp[i]+Qp[t]*Gp[i]),s=JC(Yp[t]*Qp[i]+Gp[t]*Gp[i]);for(let a=0;a<16;a++)if(Fp[a]===o&&Yp[a]===r&&Qp[a]===n&&Gp[a]===s){e.push(a);break}}}for(let t=0;t<16;t++){const e=new Wi;e.set(Fp[t],Yp[t],Qp[t],Gp[t],0,0),CH.push(e)}})();const sr={E:0,SE:1,S:2,SW:3,W:4,NW:5,N:6,NE:7,MIRROR_VERTICAL:8,MAIN_DIAGONAL:10,MIRROR_HORIZONTAL:12,REVERSE_DIAGONAL:14,uX:t=>Fp[t],uY:t=>Yp[t],vX:t=>Qp[t],vY:t=>Gp[t],inv:t=>8&t?15&t:7&-t,add:(t,e)=>N9[t][e],sub:(t,e)=>N9[t][sr.inv(e)],rotate180:t=>4^t,isVertical:t=>(3&t)==2,byDirection:(t,e)=>2*Math.abs(t)<=Math.abs(e)?e>=0?sr.S:sr.N:2*Math.abs(e)<=Math.abs(t)?t>0?sr.E:sr.W:e>0?t>0?sr.SE:sr.SW:t>0?sr.NE:sr.NW,matrixAppendRotationInv:(t,e,i=0,o=0)=>{const r=CH[sr.inv(e)];r.tx=i,r.ty=o,t.append(r)}},IH=class{constructor(){this.worldTransform=new Wi,this.localTransform=new Wi,this.position=new hg(this.onChange,this,0,0),this.scale=new hg(this.onChange,this,1,1),this.pivot=new hg(this.onChange,this,0,0),this.skew=new hg(this.updateSkew,this,0,0),this._rotation=0,this._cx=1,this._sx=0,this._cy=0,this._sy=1,this._localID=0,this._currentLocalID=0,this._worldID=0,this._parentID=0}onChange(){this._localID++}updateSkew(){this._cx=Math.cos(this._rotation+this.skew.y),this._sx=Math.sin(this._rotation+this.skew.y),this._cy=-Math.sin(this._rotation-this.skew.x),this._sy=Math.cos(this._rotation-this.skew.x),this._localID++}toString(){return`[@pixi/math:Transform position=(${this.position.x}, ${this.position.y}) rotation=${this.rotation} scale=(${this.scale.x}, ${this.scale.y}) skew=(${this.skew.x}, ${this.skew.y}) ]`}updateLocalTransform(){const t=this.localTransform;this._localID!==this._currentLocalID&&(t.a=this._cx*this.scale.x,t.b=this._sx*this.scale.x,t.c=this._cy*this.scale.y,t.d=this._sy*this.scale.y,t.tx=this.position.x-(this.pivot.x*t.a+this.pivot.y*t.c),t.ty=this.position.y-(this.pivot.x*t.b+this.pivot.y*t.d),this._currentLocalID=this._localID,this._parentID=-1)}updateTransform(t){const e=this.localTransform;if(this._localID!==this._currentLocalID&&(e.a=this._cx*this.scale.x,e.b=this._sx*this.scale.x,e.c=this._cy*this.scale.y,e.d=this._sy*this.scale.y,e.tx=this.position.x-(this.pivot.x*e.a+this.pivot.y*e.c),e.ty=this.position.y-(this.pivot.x*e.b+this.pivot.y*e.d),this._currentLocalID=this._localID,this._parentID=-1),this._parentID!==t._worldID){const i=t.worldTransform,o=this.worldTransform;o.a=e.a*i.a+e.b*i.c,o.b=e.a*i.b+e.b*i.d,o.c=e.c*i.a+e.d*i.c,o.d=e.c*i.b+e.d*i.d,o.tx=e.tx*i.a+e.ty*i.c+i.tx,o.ty=e.tx*i.b+e.ty*i.d+i.ty,this._parentID=t._worldID,this._worldID++}}setFromMatrix(t){t.decompose(this),this._localID++}get rotation(){return this._rotation}set rotation(t){this._rotation!==t&&(this._rotation=t,this.updateSkew())}};let pg=IH;pg.IDENTITY=new IH;let Sa=class{constructor(t){this.items=[],this._name=t,this._aliasCount=0}emit(t,e,i,o,r,n,s,a){if(arguments.length>8)throw new Error("max arguments reached");const{name:l,items:c}=this;this._aliasCount++;for(let u=0,d=c.length;u<d;u++)c[u][l](t,e,i,o,r,n,s,a);return c===this.items&&this._aliasCount--,this}ensureNonAliasedItems(){this._aliasCount>0&&this.items.length>1&&(this._aliasCount=0,this.items=this.items.slice(0))}add(t){return t[this._name]&&(this.ensureNonAliasedItems(),this.remove(t),this.items.push(t)),this}remove(t){const e=this.items.indexOf(t);return e!==-1&&(this.ensureNonAliasedItems(),this.items.splice(e,1)),this}contains(t){return this.items.includes(t)}removeAll(){return this.ensureNonAliasedItems(),this.items.length=0,this}destroy(){this.removeAll(),this.items=null,this._name=null}get empty(){return this.items.length===0}get name(){return this._name}};Object.defineProperties(Sa.prototype,{dispatch:{value:Sa.prototype.emit},run:{value:Sa.prototype.emit}});const jH={createCanvas:(t,e)=>{const i=document.createElement("canvas");return i.width=t,i.height=e,i},getWebGLRenderingContext:()=>WebGLRenderingContext,getNavigator:()=>navigator,getBaseUrl:()=>document.baseURI??window.location.href,getFontFaceSet:()=>document.fonts,fetch:(t,e)=>fetch(t,e),parseXML:t=>new DOMParser().parseFromString(t,"text/xml")};var S9=/iPhone/i,bH=/iPod/i,xH=/iPad/i,DH=/\biOS-universal(?:.+)Mac\b/i,k9=/\bAndroid(?:.+)Mobile\b/i,NH=/Android/i,Ag=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,WC=/Silk/i,Wu=/Windows Phone/i,SH=/\bWindows(?:.+)ARM\b/i,kH=/BlackBerry/i,TH=/BB10/i,EH=/Opera Mini/i,zH=/\b(CriOS|Chrome)(?:.+)Mobile/i,PH=/Mobile(?:.+)Firefox\b/i,BH=function(t){return typeof t<"u"&&t.platform==="MacIntel"&&typeof t.maxTouchPoints=="number"&&t.maxTouchPoints>1&&typeof MSStream>"u"};const Uh=function(t){var e={userAgent:"",platform:"",maxTouchPoints:0};!t&&typeof navigator<"u"?e={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof t=="string"?e.userAgent=t:t&&t.userAgent&&(e={userAgent:t.userAgent,platform:t.platform,maxTouchPoints:t.maxTouchPoints||0});var i=e.userAgent,o=i.split("[FBAN");typeof o[1]<"u"&&(i=o[0]),typeof(o=i.split("Twitter"))[1]<"u"&&(i=o[0]);var r=function(s){return function(a){return a.test(s)}}(i),n={apple:{phone:r(S9)&&!r(Wu),ipod:r(bH),tablet:!r(S9)&&(r(xH)||BH(e))&&!r(Wu),universal:r(DH),device:(r(S9)||r(bH)||r(xH)||r(DH)||BH(e))&&!r(Wu)},amazon:{phone:r(Ag),tablet:!r(Ag)&&r(WC),device:r(Ag)||r(WC)},android:{phone:!r(Wu)&&r(Ag)||!r(Wu)&&r(k9),tablet:!r(Wu)&&!r(Ag)&&!r(k9)&&(r(WC)||r(NH)),device:!r(Wu)&&(r(Ag)||r(WC)||r(k9)||r(NH))||r(/\bokhttp\b/i)},windows:{phone:r(Wu),tablet:r(SH),device:r(Wu)||r(SH)},other:{blackberry:r(kH),blackberry10:r(TH),opera:r(EH),firefox:r(PH),chrome:r(zH),device:r(kH)||r(TH)||r(EH)||r(PH)||r(zH)},any:!1,phone:!1,tablet:!1};return n.any=n.apple.device||n.android.device||n.windows.device||n.other.device,n.phone=n.apple.phone||n.android.phone||n.windows.phone,n.tablet=n.apple.tablet||n.android.tablet||n.windows.tablet,n}(globalThis.navigator),ai={ADAPTER:jH,MIPMAP_TEXTURES:Ju.POW2,ANISOTROPIC_LEVEL:0,RESOLUTION:1,FILTER_RESOLUTION:1,FILTER_MULTISAMPLE:jr.NONE,SPRITE_MAX_TEXTURES:function(t){let e=!0;if(Uh.tablet||Uh.phone){if(Uh.apple.device){const i=navigator.userAgent.match(/OS (\d+)_(\d+)?/);i&&parseInt(i[1],10)<11&&(e=!1)}if(Uh.android.device){const i=navigator.userAgent.match(/Android\s([0-9.]*)/);i&&parseInt(i[1],10)<7&&(e=!1)}}return e?t:4}(32),SPRITE_BATCH_SIZE:4096,RENDER_OPTIONS:{view:null,antialias:!1,autoDensity:!1,backgroundColor:0,backgroundAlpha:1,premultipliedAlpha:!0,clearBeforeRender:!0,preserveDrawingBuffer:!1,width:800,height:600,legacy:!1,hello:!1},GC_MODE:VC.AUTO,GC_MAX_IDLE:3600,GC_MAX_CHECK_COUNT:600,WRAP_MODE:Bh.CLAMP,SCALE_MODE:Kl.LINEAR,PRECISION_VERTEX:Na.HIGH,PRECISION_FRAGMENT:Uh.apple.device?Na.HIGH:Na.MEDIUM,CAN_UPLOAD_SAME_BUFFER:!Uh.apple.device,CREATE_IMAGE_BITMAP:!1,ROUND_PIXELS:!1,TARGET_FPMS:.06};var kw=(t=>(t[t.HIGH=25]="HIGH",t[t.NORMAL=0]="NORMAL",t[t.LOW=-25]="LOW",t[t.UTILITY=-50]="UTILITY",t))(kw||{});class T9{constructor(e,i=null,o=0,r=!1){this.next=null,this.previous=null,this._destroyed=!1,this.fn=e,this.context=i,this.priority=o,this.once=r}match(e,i=null){return this.fn===e&&this.context===i}emit(e){this.fn&&(this.context?this.fn.call(this.context,e):this.fn(e));const i=this.next;return this.once&&this.destroy(!0),this._destroyed&&(this.next=null),i}connect(e){this.previous=e,e.next&&(e.next.previous=this),this.next=e.next,e.next=this}destroy(e=!1){this._destroyed=!0,this.fn=null,this.context=null,this.previous&&(this.previous.next=this.next),this.next&&(this.next.previous=this.previous);const i=this.next;return this.next=e?null:i,this.previous=null,i}}let Ku=class xd{constructor(){this.autoStart=!1,this.deltaTime=1,this.lastTime=-1,this.speed=1,this.started=!1,this._requestId=null,this._maxElapsedMS=100,this._minElapsedMS=0,this._protected=!1,this._lastFrame=-1,this._head=new T9(null,null,1/0),this.deltaMS=1/ai.TARGET_FPMS,this.elapsedMS=1/ai.TARGET_FPMS,this._tick=e=>{this._requestId=null,this.started&&(this.update(e),this.started&&this._requestId===null&&this._head.next&&(this._requestId=requestAnimationFrame(this._tick)))}}_requestIfNeeded(){this._requestId===null&&this._head.next&&(this.lastTime=performance.now(),this._lastFrame=this.lastTime,this._requestId=requestAnimationFrame(this._tick))}_cancelIfNeeded(){this._requestId!==null&&(cancelAnimationFrame(this._requestId),this._requestId=null)}_startIfPossible(){this.started?this._requestIfNeeded():this.autoStart&&this.start()}add(e,i,o=kw.NORMAL){return this._addListener(new T9(e,i,o))}addOnce(e,i,o=kw.NORMAL){return this._addListener(new T9(e,i,o,!0))}_addListener(e){let i=this._head.next,o=this._head;if(i){for(;i;){if(e.priority>i.priority){e.connect(o);break}o=i,i=i.next}e.previous||e.connect(o)}else e.connect(o);return this._startIfPossible(),this}remove(e,i){let o=this._head.next;for(;o;)o=o.match(e,i)?o.destroy():o.next;return this._head.next||this._cancelIfNeeded(),this}get count(){if(!this._head)return 0;let e=0,i=this._head;for(;i=i.next;)e++;return e}start(){this.started||(this.started=!0,this._requestIfNeeded())}stop(){this.started&&(this.started=!1,this._cancelIfNeeded())}destroy(){if(!this._protected){this.stop();let e=this._head.next;for(;e;)e=e.destroy(!0);this._head.destroy(),this._head=null}}update(e=performance.now()){let i;if(e>this.lastTime){if(i=this.elapsedMS=e-this.lastTime,i>this._maxElapsedMS&&(i=this._maxElapsedMS),i*=this.speed,this._minElapsedMS){const n=e-this._lastFrame|0;if(n<this._minElapsedMS)return;this._lastFrame=e-n%this._minElapsedMS}this.deltaMS=i,this.deltaTime=this.deltaMS*ai.TARGET_FPMS;const o=this._head;let r=o.next;for(;r;)r=r.emit(this.deltaTime);o.next||this._cancelIfNeeded()}else this.deltaTime=this.deltaMS=this.elapsedMS=0;this.lastTime=e}get FPS(){return 1e3/this.elapsedMS}get minFPS(){return 1e3/this._maxElapsedMS}set minFPS(e){const i=Math.min(this.maxFPS,e),o=Math.min(Math.max(0,i)/1e3,ai.TARGET_FPMS);this._maxElapsedMS=1/o}get maxFPS(){return this._minElapsedMS?Math.round(1e3/this._minElapsedMS):0}set maxFPS(e){if(e===0)this._minElapsedMS=0;else{const i=Math.max(this.minFPS,e);this._minElapsedMS=1/(i/1e3)}}static get shared(){if(!xd._shared){const e=xd._shared=new xd;e.autoStart=!0,e._protected=!0}return xd._shared}static get system(){if(!xd._system){const e=xd._system=new xd;e.autoStart=!0,e._protected=!0}return xd._system}};var Ki=(t=>(t.Renderer="renderer",t.Application="application",t.RendererSystem="renderer-webgl-system",t.RendererPlugin="renderer-webgl-plugin",t.CanvasRendererSystem="renderer-canvas-system",t.CanvasRendererPlugin="renderer-canvas-plugin",t.Asset="asset",t.LoadParser="load-parser",t.ResolveParser="resolve-parser",t.CacheParser="cache-parser",t.DetectionParser="detection-parser",t))(Ki||{});const E9=t=>{if(typeof t=="function"||typeof t=="object"&&t.extension){if(!t.extension)throw new Error("Extension class must have an extension object");t={...typeof t.extension!="object"?{type:t.extension}:t.extension,ref:t}}if(typeof t!="object")throw new Error("Invalid extension type");return typeof(t={...t}).type=="string"&&(t.type=[t.type]),t},OH=(t,e)=>E9(t).priority??e,fo={_addHandlers:{},_removeHandlers:{},_queue:{},remove(...t){return t.map(E9).forEach(e=>{e.type.forEach(i=>{var o,r;return(r=(o=this._removeHandlers)[i])==null?void 0:r.call(o,e)})}),this},add(...t){return t.map(E9).forEach(e=>{e.type.forEach(i=>{const o=this._addHandlers,r=this._queue;o[i]?o[i](e):(r[i]=r[i]||[],r[i].push(e))})}),this},handle(t,e,i){const o=this._addHandlers,r=this._removeHandlers;if(o[t]||r[t])throw new Error(`Extension type ${t} already has a handler`);o[t]=e,r[t]=i;const n=this._queue;return n[t]&&(n[t].forEach(s=>e(s)),delete n[t]),this},handleByMap(t,e){return this.handle(t,i=>{e[i.name]=i.ref},i=>{delete e[i.name]})},handleByList(t,e,i=-1){return this.handle(t,o=>{e.includes(o.ref)||(e.push(o.ref),e.sort((r,n)=>OH(n,i)-OH(r,i)))},o=>{const r=e.indexOf(o.ref);r!==-1&&e.splice(r,1)})}};class z9{static init(e){e=Object.assign({autoStart:!0,sharedTicker:!1},e),Object.defineProperty(this,"ticker",{set(i){this._ticker&&this._ticker.remove(this.render,this),this._ticker=i,i&&i.add(this.render,this,kw.LOW)},get(){return this._ticker}}),this.stop=()=>{this._ticker.stop()},this.start=()=>{this._ticker.start()},this._ticker=null,this.ticker=e.sharedTicker?Ku.shared:new Ku,e.autoStart&&this.start()}static destroy(){if(this._ticker){const e=this._ticker;this.ticker=null,e.destroy()}}}z9.extension=Ki.Application,fo.add(z9);var P9=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function RH(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var UH={exports:{}};(function(t){var e=Object.prototype.hasOwnProperty,i="~";function o(){}function r(l,c,u){this.fn=l,this.context=c,this.once=u||!1}function n(l,c,u,d,h){if(typeof u!="function")throw new TypeError("The listener must be a function");var p=new r(u,d||l,h),g=i?i+c:c;return l._events[g]?l._events[g].fn?l._events[g]=[l._events[g],p]:l._events[g].push(p):(l._events[g]=p,l._eventsCount++),l}function s(l,c){--l._eventsCount==0?l._events=new o:delete l._events[c]}function a(){this._events=new o,this._eventsCount=0}Object.create&&(o.prototype=Object.create(null),new o().__proto__||(i=!1)),a.prototype.eventNames=function(){var l,c,u=[];if(this._eventsCount===0)return u;for(c in l=this._events)e.call(l,c)&&u.push(i?c.slice(1):c);return Object.getOwnPropertySymbols?u.concat(Object.getOwnPropertySymbols(l)):u},a.prototype.listeners=function(l){var c=i?i+l:l,u=this._events[c];if(!u)return[];if(u.fn)return[u.fn];for(var d=0,h=u.length,p=new Array(h);d<h;d++)p[d]=u[d].fn;return p},a.prototype.listenerCount=function(l){var c=i?i+l:l,u=this._events[c];return u?u.fn?1:u.length:0},a.prototype.emit=function(l,c,u,d,h,p){var g=i?i+l:l;if(!this._events[g])return!1;var A,M,f=this._events[g],L=arguments.length;if(f.fn){switch(f.once&&this.removeListener(l,f.fn,void 0,!0),L){case 1:return f.fn.call(f.context),!0;case 2:return f.fn.call(f.context,c),!0;case 3:return f.fn.call(f.context,c,u),!0;case 4:return f.fn.call(f.context,c,u,d),!0;case 5:return f.fn.call(f.context,c,u,d,h),!0;case 6:return f.fn.call(f.context,c,u,d,h,p),!0}for(M=1,A=new Array(L-1);M<L;M++)A[M-1]=arguments[M];f.fn.apply(f.context,A)}else{var w,m=f.length;for(M=0;M<m;M++)switch(f[M].once&&this.removeListener(l,f[M].fn,void 0,!0),L){case 1:f[M].fn.call(f[M].context);break;case 2:f[M].fn.call(f[M].context,c);break;case 3:f[M].fn.call(f[M].context,c,u);break;case 4:f[M].fn.call(f[M].context,c,u,d);break;default:if(!A)for(w=1,A=new Array(L-1);w<L;w++)A[w-1]=arguments[w];f[M].fn.apply(f[M].context,A)}}return!0},a.prototype.on=function(l,c,u){return n(this,l,c,u,!1)},a.prototype.once=function(l,c,u){return n(this,l,c,u,!0)},a.prototype.removeListener=function(l,c,u,d){var h=i?i+l:l;if(!this._events[h])return this;if(!c)return s(this,h),this;var p=this._events[h];if(p.fn)p.fn===c&&(!d||p.once)&&(!u||p.context===u)&&s(this,h);else{for(var g=0,A=[],M=p.length;g<M;g++)(p[g].fn!==c||d&&!p[g].once||u&&p[g].context!==u)&&A.push(p[g]);A.length?this._events[h]=A.length===1?A[0]:A:s(this,h)}return this},a.prototype.removeAllListeners=function(l){var c;return l?(c=i?i+l:l,this._events[c]&&s(this,c)):(this._events=new o,this._eventsCount=0),this},a.prototype.off=a.prototype.removeListener,a.prototype.addListener=a.prototype.on,a.prefixed=i,a.EventEmitter=a,t.exports=a})(UH);const Tw=RH(UH.exports);var B9={exports:{}};function KC(t,e,i){i=i||2;var o,r,n,s,a,l,c,u=e&&e.length,d=u?e[0]*i:t.length,h=FH(t,0,d,i,!0),p=[];if(!h||h.next===h.prev)return p;if(u&&(h=function(A,M,f,L){var w,m,C,I,j,b=[];for(w=0,m=M.length;w<m;w++)C=M[w]*L,I=w<m-1?M[w+1]*L:A.length,(j=FH(A,C,I,L,!1))===j.next&&(j.steiner=!0),b.push(ZCt(j));for(b.sort(GCt),w=0;w<b.length;w++)f=HCt(b[w],f);return f}(t,e,h,i)),t.length>80*i){o=n=t[0],r=s=t[1];for(var g=i;g<d;g+=i)(a=t[g])<o&&(o=a),(l=t[g+1])<r&&(r=l),a>n&&(n=a),l>s&&(s=l);c=(c=Math.max(n-o,s-r))!==0?32767/c:0}return Ew(h,p,i,o,r,c,0),p}function FH(t,e,i,o,r){var n,s;if(r===U9(t,e,i,o)>0)for(n=e;n<i;n+=o)s=GH(n,t[n],t[n+1],s);else for(n=i-o;n>=e;n-=o)s=GH(n,t[n],t[n+1],s);return s&&_C(s,s.next)&&(Pw(s),s=s.next),s}function Hp(t,e){if(!t)return t;e||(e=t);var i,o=t;do if(i=!1,o.steiner||!_C(o,o.next)&&gr(o.prev,o,o.next)!==0)o=o.next;else{if(Pw(o),(o=e=o.prev)===o.next)break;i=!0}while(i||o!==e);return e}function Ew(t,e,i,o,r,n,s){if(t){!s&&n&&function(u,d,h,p){var g=u;do g.z===0&&(g.z=O9(g.x,g.y,d,h,p)),g.prevZ=g.prev,g.nextZ=g.next,g=g.next;while(g!==u);g.prevZ.nextZ=null,g.prevZ=null,function(A){var M,f,L,w,m,C,I,j,b=1;do{for(f=A,A=null,m=null,C=0;f;){for(C++,L=f,I=0,M=0;M<b&&(I++,L=L.nextZ);M++);for(j=b;I>0||j>0&&L;)I!==0&&(j===0||!L||f.z<=L.z)?(w=f,f=f.nextZ,I--):(w=L,L=L.nextZ,j--),m?m.nextZ=w:A=w,w.prevZ=m,m=w;f=L}m.nextZ=null,b*=2}while(C>1)}(g)}(t,o,r,n);for(var a,l,c=t;t.prev!==t.next;)if(a=t.prev,l=t.next,n?FCt(t,o,r,n):UCt(t))e.push(a.i/i|0),e.push(t.i/i|0),e.push(l.i/i|0),Pw(t),t=l.next,c=l.next;else if((t=l)===c){s?s===1?Ew(t=YCt(Hp(t),e,i),e,i,o,r,n,2):s===2&&QCt(t,e,i,o,r,n):Ew(Hp(t),e,i,o,r,n,1);break}}}function UCt(t){var e=t.prev,i=t,o=t.next;if(gr(e,i,o)>=0)return!1;for(var r=e.x,n=i.x,s=o.x,a=e.y,l=i.y,c=o.y,u=r<n?r<s?r:s:n<s?n:s,d=a<l?a<c?a:c:l<c?l:c,h=r>n?r>s?r:s:n>s?n:s,p=a>l?a>c?a:c:l>c?l:c,g=o.next;g!==e;){if(g.x>=u&&g.x<=h&&g.y>=d&&g.y<=p&&gg(r,a,n,l,s,c,g.x,g.y)&&gr(g.prev,g,g.next)>=0)return!1;g=g.next}return!0}function FCt(t,e,i,o){var r=t.prev,n=t,s=t.next;if(gr(r,n,s)>=0)return!1;for(var a=r.x,l=n.x,c=s.x,u=r.y,d=n.y,h=s.y,p=a<l?a<c?a:c:l<c?l:c,g=u<d?u<h?u:h:d<h?d:h,A=a>l?a>c?a:c:l>c?l:c,M=u>d?u>h?u:h:d>h?d:h,f=O9(p,g,e,i,o),L=O9(A,M,e,i,o),w=t.prevZ,m=t.nextZ;w&&w.z>=f&&m&&m.z<=L;){if(w.x>=p&&w.x<=A&&w.y>=g&&w.y<=M&&w!==r&&w!==s&&gg(a,u,l,d,c,h,w.x,w.y)&&gr(w.prev,w,w.next)>=0||(w=w.prevZ,m.x>=p&&m.x<=A&&m.y>=g&&m.y<=M&&m!==r&&m!==s&&gg(a,u,l,d,c,h,m.x,m.y)&&gr(m.prev,m,m.next)>=0))return!1;m=m.nextZ}for(;w&&w.z>=f;){if(w.x>=p&&w.x<=A&&w.y>=g&&w.y<=M&&w!==r&&w!==s&&gg(a,u,l,d,c,h,w.x,w.y)&&gr(w.prev,w,w.next)>=0)return!1;w=w.prevZ}for(;m&&m.z<=L;){if(m.x>=p&&m.x<=A&&m.y>=g&&m.y<=M&&m!==r&&m!==s&&gg(a,u,l,d,c,h,m.x,m.y)&&gr(m.prev,m,m.next)>=0)return!1;m=m.nextZ}return!0}function YCt(t,e,i){var o=t;do{var r=o.prev,n=o.next.next;!_C(r,n)&&YH(r,o,o.next,n)&&zw(r,n)&&zw(n,r)&&(e.push(r.i/i|0),e.push(o.i/i|0),e.push(n.i/i|0),Pw(o),Pw(o.next),o=t=n),o=o.next}while(o!==t);return Hp(o)}function QCt(t,e,i,o,r,n){var s=t;do{for(var a=s.next.next;a!==s.prev;){if(s.i!==a.i&&JCt(s,a)){var l=QH(s,a);return s=Hp(s,s.next),l=Hp(l,l.next),Ew(s,e,i,o,r,n,0),void Ew(l,e,i,o,r,n,0)}a=a.next}s=s.next}while(s!==t)}function GCt(t,e){return t.x-e.x}function HCt(t,e){var i=function(r,n){var s,a=n,l=r.x,c=r.y,u=-1/0;do{if(c<=a.y&&c>=a.next.y&&a.next.y!==a.y){var d=a.x+(c-a.y)*(a.next.x-a.x)/(a.next.y-a.y);if(d<=l&&d>u&&(u=d,s=a.x<a.next.x?a:a.next,d===l))return s}a=a.next}while(a!==n);if(!s)return null;var h,p=s,g=s.x,A=s.y,M=1/0;a=s;do l>=a.x&&a.x>=g&&l!==a.x&&gg(c<A?l:u,c,g,A,c<A?u:l,c,a.x,a.y)&&(h=Math.abs(c-a.y)/(l-a.x),zw(a,r)&&(h<M||h===M&&(a.x>s.x||a.x===s.x&&VCt(s,a)))&&(s=a,M=h)),a=a.next;while(a!==p);return s}(t,e);if(!i)return e;var o=QH(i,t);return Hp(o,o.next),Hp(i,i.next)}function VCt(t,e){return gr(t.prev,t,e.prev)<0&&gr(e.next,t,t.next)<0}function O9(t,e,i,o,r){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-i)*r|0)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=(e-o)*r|0)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function ZCt(t){var e=t,i=t;do(e.x<i.x||e.x===i.x&&e.y<i.y)&&(i=e),e=e.next;while(e!==t);return i}function gg(t,e,i,o,r,n,s,a){return(r-s)*(e-a)>=(t-s)*(n-a)&&(t-s)*(o-a)>=(i-s)*(e-a)&&(i-s)*(n-a)>=(r-s)*(o-a)}function JCt(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(i,o){var r=i;do{if(r.i!==i.i&&r.next.i!==i.i&&r.i!==o.i&&r.next.i!==o.i&&YH(r,r.next,i,o))return!0;r=r.next}while(r!==i);return!1}(t,e)&&(zw(t,e)&&zw(e,t)&&function(i,o){var r=i,n=!1,s=(i.x+o.x)/2,a=(i.y+o.y)/2;do r.y>a!=r.next.y>a&&r.next.y!==r.y&&s<(r.next.x-r.x)*(a-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next;while(r!==i);return n}(t,e)&&(gr(t.prev,t,e.prev)||gr(t,e.prev,e))||_C(t,e)&&gr(t.prev,t,t.next)>0&&gr(e.prev,e,e.next)>0)}function gr(t,e,i){return(e.y-t.y)*(i.x-e.x)-(e.x-t.x)*(i.y-e.y)}function _C(t,e){return t.x===e.x&&t.y===e.y}function YH(t,e,i,o){var r=XC(gr(t,e,i)),n=XC(gr(t,e,o)),s=XC(gr(i,o,t)),a=XC(gr(i,o,e));return!!(r!==n&&s!==a||r===0&&qC(t,i,e)||n===0&&qC(t,o,e)||s===0&&qC(i,t,o)||a===0&&qC(i,e,o))}function qC(t,e,i){return e.x<=Math.max(t.x,i.x)&&e.x>=Math.min(t.x,i.x)&&e.y<=Math.max(t.y,i.y)&&e.y>=Math.min(t.y,i.y)}function XC(t){return t>0?1:t<0?-1:0}function zw(t,e){return gr(t.prev,t,t.next)<0?gr(t,e,t.next)>=0&&gr(t,t.prev,e)>=0:gr(t,e,t.prev)<0||gr(t,t.next,e)<0}function QH(t,e){var i=new R9(t.i,t.x,t.y),o=new R9(e.i,e.x,e.y),r=t.next,n=e.prev;return t.next=e,e.prev=t,i.next=r,r.prev=i,o.next=i,i.prev=o,n.next=o,o.prev=n,o}function GH(t,e,i,o){var r=new R9(t,e,i);return o?(r.next=o.next,r.prev=o,o.next.prev=r,o.next=r):(r.prev=r,r.next=r),r}function Pw(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function R9(t,e,i){this.i=t,this.x=e,this.y=i,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}function U9(t,e,i,o){for(var r=0,n=e,s=i-o;n<i;n+=o)r+=(t[s]-t[n])*(t[n+1]+t[s+1]),s=n;return r}B9.exports=KC,B9.exports.default=KC,KC.deviation=function(t,e,i,o){var r=e&&e.length,n=r?e[0]*i:t.length,s=Math.abs(U9(t,0,n,i));if(r)for(var a=0,l=e.length;a<l;a++){var c=e[a]*i,u=a<l-1?e[a+1]*i:t.length;s-=Math.abs(U9(t,c,u,i))}var d=0;for(a=0;a<o.length;a+=3){var h=o[a]*i,p=o[a+1]*i,g=o[a+2]*i;d+=Math.abs((t[h]-t[g])*(t[p+1]-t[h+1])-(t[h]-t[p])*(t[g+1]-t[h+1]))}return s===0&&d===0?0:Math.abs((d-s)/s)},KC.flatten=function(t){for(var e=t[0][0].length,i={vertices:[],holes:[],dimensions:e},o=0,r=0;r<t.length;r++){for(var n=0;n<t[r].length;n++)for(var s=0;s<e;s++)i.vertices.push(t[r][n][s]);r>0&&(o+=t[r-1].length,i.holes.push(o))}return i};const F9=RH(B9.exports);var Bw,$C,Y9={exports:{}};/*! https://mths.be/punycode v1.3.2 by @mathias */Bw=Y9,$C=Y9.exports,function(t){var e=$C&&!$C.nodeType&&$C,i=Bw&&!Bw.nodeType&&Bw,o=typeof P9=="object"&&P9;(o.global===o||o.window===o||o.self===o)&&(t=o);var r,n,s=2147483647,a=36,l=1,c=26,u=38,d=700,h=72,p=128,g="-",A=/^xn--/,M=/[^\x20-\x7E]/,f=/[\x2E\u3002\uFF0E\uFF61]/g,L={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},w=a-l,m=Math.floor,C=String.fromCharCode;function I(G){throw RangeError(L[G])}function j(G,_){for(var ee=G.length,ue=[];ee--;)ue[ee]=_(G[ee]);return ue}function b(G,_){var ee=G.split("@"),ue="";return ee.length>1&&(ue=ee[0]+"@",G=ee[1]),ue+j((G=G.replace(f,".")).split("."),_).join(".")}function T(G){for(var _,ee,ue=[],de=0,Ee=G.length;de<Ee;)(_=G.charCodeAt(de++))>=55296&&_<=56319&&de<Ee?(64512&(ee=G.charCodeAt(de++)))==56320?ue.push(((1023&_)<<10)+(1023&ee)+65536):(ue.push(_),de--):ue.push(_);return ue}function P(G){return j(G,function(_){var ee="";return _>65535&&(ee+=C((_-=65536)>>>10&1023|55296),_=56320|1023&_),ee+=C(_)}).join("")}function S(G){return G-48<10?G-22:G-65<26?G-65:G-97<26?G-97:a}function k(G,_){return G+22+75*(G<26)-((_!=0)<<5)}function R(G,_,ee){var ue=0;for(G=ee?m(G/d):G>>1,G+=m(G/_);G>w*c>>1;ue+=a)G=m(G/w);return m(ue+(w+1)*G/(G+u))}function Y(G){var _,ee,ue,de,Ee,V,ie,he,te,ae,fe=[],Ce=G.length,je=0,Oe=p,Ye=h;for((ee=G.lastIndexOf(g))<0&&(ee=0),ue=0;ue<ee;++ue)G.charCodeAt(ue)>=128&&I("not-basic"),fe.push(G.charCodeAt(ue));for(de=ee>0?ee+1:0;de<Ce;){for(Ee=je,V=1,ie=a;de>=Ce&&I("invalid-input"),((he=S(G.charCodeAt(de++)))>=a||he>m((s-je)/V))&&I("overflow"),je+=he*V,!(he<(te=ie<=Ye?l:ie>=Ye+c?c:ie-Ye));ie+=a)V>m(s/(ae=a-te))&&I("overflow"),V*=ae;Ye=R(je-Ee,_=fe.length+1,Ee==0),m(je/_)>s-Oe&&I("overflow"),Oe+=m(je/_),je%=_,fe.splice(je++,0,Oe)}return P(fe)}function Z(G){var _,ee,ue,de,Ee,V,ie,he,te,ae,fe,Ce,je,Oe,Ye,We=[];for(Ce=(G=T(G)).length,_=p,ee=0,Ee=h,V=0;V<Ce;++V)(fe=G[V])<128&&We.push(C(fe));for(ue=de=We.length,de&&We.push(g);ue<Ce;){for(ie=s,V=0;V<Ce;++V)(fe=G[V])>=_&&fe<ie&&(ie=fe);for(ie-_>m((s-ee)/(je=ue+1))&&I("overflow"),ee+=(ie-_)*je,_=ie,V=0;V<Ce;++V)if((fe=G[V])<_&&++ee>s&&I("overflow"),fe==_){for(he=ee,te=a;!(he<(ae=te<=Ee?l:te>=Ee+c?c:te-Ee));te+=a)Ye=he-ae,Oe=a-ae,We.push(C(k(ae+Ye%Oe,0))),he=m(Ye/Oe);We.push(C(k(he,0))),Ee=R(ee,je,ue==de),ee=0,++ue}++ee,++_}return We.join("")}if(r={version:"1.3.2",ucs2:{decode:T,encode:P},decode:Y,encode:Z,toASCII:function(G){return b(G,function(_){return M.test(_)?"xn--"+Z(_):_})},toUnicode:function(G){return b(G,function(_){return A.test(_)?Y(_.slice(4).toLowerCase()):_})}},e&&i)if(Bw.exports==e)i.exports=r;else for(n in r)r.hasOwnProperty(n)&&(e[n]=r[n]);else t.punycode=r}(P9);var WCt=Y9.exports,Ow={};function KCt(t,e){return Object.prototype.hasOwnProperty.call(t,e)}var Rw=function(t){switch(typeof t){case"string":return t;case"boolean":return t?"true":"false";case"number":return isFinite(t)?t:"";default:return""}};Ow.decode=Ow.parse=function(t,e,i,o){e=e||"&",i=i||"=";var r={};if(typeof t!="string"||t.length===0)return r;var n=/\+/g;t=t.split(e);var s=1e3;o&&typeof o.maxKeys=="number"&&(s=o.maxKeys);var a=t.length;s>0&&a>s&&(a=s);for(var l=0;l<a;++l){var c,u,d,h,p=t[l].replace(n,"%20"),g=p.indexOf(i);g>=0?(c=p.substr(0,g),u=p.substr(g+1)):(c=p,u=""),d=decodeURIComponent(c),h=decodeURIComponent(u),KCt(r,d)?Array.isArray(r[d])?r[d].push(h):r[d]=[r[d],h]:r[d]=h}return r},Ow.encode=Ow.stringify=function(t,e,i,o){return e=e||"&",i=i||"=",t===null&&(t=void 0),typeof t=="object"?Object.keys(t).map(function(r){var n=encodeURIComponent(Rw(r))+i;return Array.isArray(t[r])?t[r].map(function(s){return n+encodeURIComponent(Rw(s))}).join(e):n+encodeURIComponent(Rw(t[r]))}).join(e):o?encodeURIComponent(Rw(o))+i+encodeURIComponent(Rw(t)):""};var _Ct=WCt,Qc={isString:function(t){return typeof t=="string"},isObject:function(t){return typeof t=="object"&&t!==null},isNull:function(t){return t===null},isNullOrUndefined:function(t){return t==null}},qCt=e5,XCt=function(t,e){return e5(t,!1,!0).resolve(e)},$Ct=function(t){return Qc.isString(t)&&(t=e5(t)),t instanceof ql?t.format():ql.prototype.format.call(t)};function ql(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}var e5t=/^([a-z0-9.+-]+:)/i,t5t=/:[0-9]*$/,i5t=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,o5t=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r",`
@@ -1867,7 +1867,7 @@ end`};e.events.push(["putFont",function(n){(function(s){var a=s.font,l=s.out,c=s
1867
1867
  --bimdata-local-context-width: ${o.width}px;
1868
1868
  --bimdata-local-context-center-width: ${o.centerWidth}px;
1869
1869
  --bimdata-local-context-resolution: ${o.resolution};
1870
- `),onMouseenter:e[0]||(e[0]=(...h)=>o.onMouseEnter&&o.onMouseEnter(...h)),onMouseleave:e[1]||(e[1]=(...h)=>o.onMouseLeave&&o.onMouseLeave(...h))},[O(s,{ref:"modalManagerTemplateRef"},null,512),v("div",Fzi,[o.windowPlugins.leftSidePanel?(D(),oe(a,{key:0,plugin:o.windowPlugins.leftSidePanel},null,8,["plugin"])):be("",!0),v("div",Yzi,[(D(!0),U(Mt,null,ii(o.windowPlugins.free,h=>(D(),oe(l,{key:h.name,class:Ne({"window-container__content__center__viewer":h.isViewer}),plugin:h},null,8,["class","plugin"]))),128)),O(c,{position:"left",plugins:o.windowPlugins.leftButtonColumn},null,8,["plugins"]),O(c,{position:"right",plugins:o.windowPlugins.rightButtonColumn},null,8,["plugins"])]),o.windowPlugins.rightSidePanel?(D(),oe(a,{key:1,plugin:o.windowPlugins.rightSidePanel},null,8,["plugin"])):be("",!0)]),o.loading?(D(),U("div",Qzi,[o.spinner&&o.spinner.component?(D(),oe(hr(o.spinner.component),Pu(ja({key:0},o.spinner.props)),null,16)):(D(),oe(u,{key:1,size:"20px",border:"3px"}))])):be("",!0),o.layoutSettingsDisplayed?(D(),U("div",Gzi,[O(d)])):be("",!0)],36)}const Vzi=W(Uzi,[["render",Hzi]]);class Zzi{constructor(e=!0){const i=SEi(_Q,null,{resizable:e});i.registerContent("default",Vzi),this.settings=Cn({edit:!1,swap:!1,full:!1}),this.areas=i}get resizable(){return this.areas.resizable}set resizable(e){this.areas.resizable=e}apply(e=null){this.areas.layout=e?kEi(e):null}copy(e){return TEi(this.areas.layout,e)}open({ratio:e,direction:i,insertAfter:o,windowName:r=null,windowState:n=null,localContextId:s=null}={}){const a=r?{options:{windowName:r,windowState:n}}:null;return s===null?this.areas.splitLayout(e,i,o,a):this.areas.split(s,e,i,o,a)}swap(e,i){return this.areas.swap(e,i)}close(e){return this.areas.delete(e)}}const Jzi="@bimdata/viewer",Wzi="module",Kzi="2.4.0-beta.7",_zi="A customizable BIM viewer.",qzi=["bim","viewer","bimdata","ifc","bcf"],Xzi="./index.d.ts",$zi="BIMData.io",ePi="https://developers.bimdata.io/viewer/index.html",tPi={email:"support@bimdata.io"},iPi=["last 2 chrome version","last 2 firefox version"],oPi="dist/bimdata-viewer.esm.min.js",rPi="dist/bimdata-viewer.esm.min.js",sPi={build:"vite build && esbuild dist/bimdata-viewer.esm.min.js --minify --outfile=dist/bimdata-viewer.esm.min.js --allow-overwrite","build:split":"vite build -c vite.config.split.js && esbuild dist/bimdata-viewer-split.esm.min.js --minify --outfile=dist/bimdata-viewer-split.esm.min.js --allow-overwrite","cy:run":"cypress run","cy:open":"cypress open",dev:"vite",prebuild:"rm -rf dist",prepublishOnly:"npm run build","semantic-release":"semantic-release",serve:"http-server -c-1 --silent",test:"npm run test:unit & npm run build & npm run test:e2e","test:unit":"jest","test:e2e":"start-server-and-test 'npm run serve -- -p 8080' http://localhost:8080 cy:run","test:e2e-dev":"start-server-and-test 'npm run serve -- -p 8080' http://localhost:8080 cy:open",version:"echo $npm_package_version",ts:"tsc"},nPi=["dist/*","types/*","CHANGELOG.md","README.md","package.json","package-lock.json","index.d.ts"],aPi={"@babel/preset-env":"^7.24.4","@bimdata/2d-engine":"2.4.0","@bimdata/areas-next":"0.1.15","@bimdata/bcf-components":"6.2.1","@bimdata/components":"1.5.0","@bimdata/design-system":"2.1.0-rc.24","@bimdata/typescript-fetch-api-client":"10.1.0","@eslint/eslintrc":"^3.1.0","@eslint/js":"^9.5.0","@rollup/plugin-alias":"5.1.0","@rollup/plugin-babel":"^6.0.4","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-image":"^3.0.3","@rollup/plugin-replace":"^5.0.5","@semantic-release/changelog":"^6.0.3","@semantic-release/commit-analyzer":"^12.0.0","@semantic-release/git":"^10.0.1","@semantic-release/github":"^10.0.3","@semantic-release/npm":"^12.0.0","@semantic-release/release-notes-generator":"^13.0.0","@vitejs/plugin-vue":"4.6.2","@vue/vue3-jest":"^29.2.6","@xeokit/xeokit-sdk":"git+https://git@github.com/Amoki/xeokit-sdk.git#27e95db2e157215e870f7125bd28b258dee699a9","@zip.js/zip.js":"^2.7.41",async:"^3.2.5",autoprefixer:"^10.4.19","babel-core":"^7.0.0-bridge.0","babel-jest":"^29.7.0","conventional-changelog-eslint":"^5.0.0",cypress:"^13.7.3",esbuild:"^0.20.2",eslint:"9.5.0","eslint-config-prettier":"9.1.0","eslint-plugin-cypress":"2.15.2","eslint-plugin-jest":"28.6.0","eslint-plugin-prettier":"5.1.3","eslint-plugin-vue":"9.26.0","form-data":"^4.0.0",globals:"^15.6.0",html2canvas:"1.4.1","http-server":"^14.1.1",jest:"^29.7.0","jest-environment-jsdom":"^29.7.0","jest-extended":"^4.0.2",jspdf:"^2.5.1",lodash:"^4.17.21","node-fetch":"^3.3.2",postcss:"^8.4.38",prettier:"^3.2.5",querystring:"^0.2.0",sass:"^1.75.0","semantic-release":"^23.0.8",sinon:"^17.0.1","start-server-and-test":"^2.0.3",vite:"4.5.3","vite-plugin-css-injected-by-js":"^3.5.0",vue:"3.4.23","vue-eslint-parser":"^9.4.2","vue-i18n":"^9.12.1"},lPi={name:Jzi,type:Wzi,version:Kzi,description:_zi,keywords:qzi,types:Xzi,author:$zi,homepage:ePi,bugs:tPi,browserslist:iPi,main:oPi,module:rPi,scripts:sPi,files:nPi,devDependencies:aPi};class cPi{constructor({plugins:e,api:i,ui:o,locale:r="fr"}){this.pluginManager=new qSi(e),this.windowManager=new $Si,this.windowManager.registerAndAddPluginsToWindows([...this.pluginManager.registeredPlugins.values()]),this.api=new zTi(i),this.globalContext=new Oye(this),this.state=WTi(this),this.shortcutManager=Y4e(this.state),this.uiSettings=o||{},this.i18n=new Pye(r),this._contextMenu=null,this.layout=new Zzi(this.uiSettings.resizable!==!1),this.localContext=null,window.$viewer=this}get version(){return lPi.version}get locale(){return this.i18n.locale}get contextMenu(){return this._contextMenu||U4e}set contextMenu(e){this._contextMenu=e}get registeredWindows(){return[...this.windowManager.registeredWindows.keys()]}get registeredPlugins(){return[...this.pluginManager.registeredPlugins.keys()]}get pluginsCfg(){return this.pluginManager.cfg}registerPlugin(e){this.pluginManager.registerPlugin(e),this.windowManager.registerAndAddPluginsToWindows([e])}}function uPi(t,e={}){e.backgroundColor&&(t.style.setProperty("--bimdata-viewer-background-color",e.backgroundColor),e.backgroundColor==="transparent"&&t.style.setProperty("--areas-separator-color","transparent")),e.colorPrimary&&t.style.setProperty("--color-primary",e.colorPrimary),e.colorPrimaryLighter&&t.style.setProperty("--color-primary-lighter",e.colorPrimaryLighter),e.colorPrimaryLight&&t.style.setProperty("--color-primary-light",e.colorPrimaryLight),e.colorPrimaryDark&&t.style.setProperty("--color-primary-dark",e.colorPrimaryDark),e.colorSecondary&&t.style.setProperty("--color-secondary",e.colorSecondary),e.colorSecondaryLighter&&t.style.setProperty("--color-secondary-lighter",e.colorSecondaryLighter),e.colorSecondaryLight&&t.style.setProperty("--color-secondary-light",e.colorSecondaryLight),e.colorSecondaryDark&&t.style.setProperty("--color-secondary-dark",e.colorSecondaryDark),e.colorSilverLight&&t.style.setProperty("--color-silver-light",e.colorSilverLight),e.colorSilver&&t.style.setProperty("--color-silver",e.colorSilver),e.colorSilverDark&&t.style.setProperty("--color-silver-dark",e.colorSilverDark),e.colorGraniteLight&&t.style.setProperty("--color-granite-light",e.colorGraniteLight),e.colorGranite&&t.style.setProperty("--color-granite",e.colorGranite),e.colorSuccess&&t.style.setProperty("--color-success",e.colorSuccess),e.colorSuccessLighter&&t.style.setProperty("--color-success-Lighter",e.colorSuccessLighter),e.colorSuccessLight&&t.style.setProperty("--color-success-Light",e.colorSuccessLight),e.colorSuccessDark&&t.style.setProperty("--color-success-Dark",e.colorSuccessDark),e.colorWarning&&t.style.setProperty("--color-warning",e.colorWarning),e.colorWarningLighter&&t.style.setProperty("--color-warning-Lighter",e.colorWarningLighter),e.colorWarningLight&&t.style.setProperty("--color-warning-Light",e.colorWarningLight),e.colorWarningDark&&t.style.setProperty("--color-warning-Dark",e.colorWarningDark),e.colorHigh&&t.style.setProperty("--color-high",e.colorHigh),e.colorHighLighter&&t.style.setProperty("--color-high-lighter",e.colorHighLighter),e.colorHighLight&&t.style.setProperty("--color-high-light",e.colorHighLight),e.colorHighDark&&t.style.setProperty("--color-high-dark",e.colorHighDark),e.colorText&&t.style.setProperty("--color-text",e.colorText),(!e.backgroundColor||e.backgroundColor!=="transparent")&&t.style.setProperty("--areas-separator-color","rgba(216, 216, 216, 1)"),e.headerHeight!=null&&t.style.setProperty("--bimdata-viewer-header-height",e.headerHeight),t.style.setProperty("--areas-background-color","transparent")}const dPi=Object.freeze({25:"GUEST",50:"USER",100:"ADMIN"}),lf=Object.freeze({READ:"read",WRITE:"write"});function Xhe(t){const e={};return t.forEach(i=>{const[o,r]=i.split(":");e[o]?e[o].push(r):e[o]=[r]}),e}const hPi={token_scopes:[],usable_scopes:[],user_role:25};function $he(t=hPi){var e,i,o,r,n,s;const a=Xhe(t.token_scopes),l=Xhe(t.usable_scopes);return{...pJ(t),tokenScopes:a,usableScopes:l,userRole:dPi[t.user_role],user:t.user?pJ(t.user):null,hasBcfReadPermission:((e=l.bcf)==null?void 0:e.includes(lf.READ))??!1,hasBcfWritePermission:((i=l.bcf)==null?void 0:i.includes(lf.WRITE))??!1,hasModelReadPermission:((o=l.model)==null?void 0:o.includes(lf.READ))??!1,hasModelWritePermission:((r=l.model)==null?void 0:r.includes(lf.WRITE))??!1,hasDocReadPermission:((n=l.document)==null?void 0:n.includes(lf.READ))??!1,hasDocWritePermission:((s=l.document)==null?void 0:s.includes(lf.WRITE))??!1}}const pPi={BcfFilters:{filtersButton:"Filter",filtersTitle:"Filter",priorityLabel:"Priorit\xE4t",statusLabel:"Status",assignedToLabel:"Zugewiesen an",creatorsLabel:"Erstellt von",tagsLabel:"Tags",resetButton:"Zur\xFCcksetzen",searchButton:"Suchen",undefined:"Nicht definiert",datePlaceholder:"Erstellungsdatum"},BcfSettings:{goBackButton:"Zur\xFCck",title:"BCF-Parameter",text:"Erstellen, f\xFCllen und listen Sie die BCF-Einstellungen auf, die Sie f\xFCr dieses Projekt haben m\xF6chten.",validateButton:"Die BCF-Parameter anerkennen"},BcfStatistics:{emptyText:"F\xFCgen Sie Fragen hinzu, um zugeh\xF6rige Statistiken hier anzuzeigen.",issues:"Probleme",extension:{Priority:"Priorit\xE4t",PriorityNotDefined:"Keine Priorit\xE4t",PriorityTitle:"Priorit\xE4ten",Status:"Status",StatusNotDefined:"Kein Status",StatusTitle:"Status"}},BcfTopicCard:{priority:"Priorit\xE4t:",noPriority:"Keine",assignedTo:"Zugewiesen an :",elements:"Elemente",notSpecified:"Nicht definiert",see:"Anzeigen"},BcfTopicCreationCard:{text:"Ein neues BCF-Thema erstellen",createBcfSideTitle:"Ein Problem melden"},BcfTopicForm:{dragDropImageText:"Bitte w\xE4hlen Sie eine Datei aus.",addObjectButton:"Objekt",addAnnotationButton:"Annotation",annotationButtonTooltip:"Zu diesem Thema gibt es derzeit keine Ansichten.",addPictureButton:"F\xFCgen Sie ein Bild hinzu.",titlePlaceholder:"Titel *",titleErrorMessage:"Titel fehlt",typeLabel:"Typ",priorityLabel:"Priorit\xE4t",statusLabel:"Status",stageLabel:"Phase",assignedToLabel:"Zugewiesen an",dueDateLabel:"F\xE4lligkeitsdatum (TT.MM.JJJJ)",descriptionLabel:"Beschreibung",labelsLabel:"Tags",createButton:"Best\xE4tigen",updateButton:"\xC4nderungen \xFCbernehmen",modalText:"Sie sind dabei, die Bearbeitung der Ausgabe {Name} zu beenden, aber es gibt noch ungespeicherte \xC4nderungen.",cancelButton:"\xC4nderungen verwerfen",continueButton:"\xC4nderungen fortsetzen",createTitle:"Ein Problem melden",dragDropImageTextTablet:"Foto machen",takeSnapshot:"Mach einen Schnappschuss",importFile:"Eine Datei importieren",searchPlaceholder:"Suchen",emptySearch:"kein Ergebnis"},BcfTopicOverview:{openViewer:"Im Viewer \xF6ffnen",openViewerNoModels:"Es sind keine Vorlagen zur Ansicht bereit",elements:"{count} Elemente",noElements:"kein Element",type:"Typ",noTypeSpecified:"Kein Typ angegeben",description:"Beschreibung",noDescriptionProvided:"Keine Beschreibung angegeben",assignedTo:"Zugeteilt an",notAssigned:"Nicht zugewiesen",dueDate:"F\xE4lligkeitsdatum",noDueDate:"Kein F\xE4lligkeitsdatum",informations:"Informationen",status:"Status",noStatusSpecified:"Kein Status angegeben",stage:"Phase",noStageProvided:"Keine Phase angegeben",priority:"Priorit\xE4t",priorityNotDefined:"Nicht definiert",tags:"Tags",noTags:"Keine Tags",commentButton:"Ein Kommentar ver\xF6ffentlichen",deleteText:"Sie l\xF6schen jetzt {Name}",deleteBcfButton:"Dieses BCF l\xF6schen",keepBcfButton:"Dieses BCF beibehalten",author:"Autor"},BcfTopicsTable:{headers:{index:"#",priority:"Priorit\xE4t",status:"Status",title:"Titel",creator:"Autor",date:"Datum"}},BcfTopicActionsCell:{seeButton:"Anzeigen"},BcfTopicComments:{commentButton:"Ein Kommentar verfassen",commentLabel:"Ein Kommentar verfassen",commentText:"Kommentar",cancelButton:"Abbrechen",publishButton:"Ver\xF6ffentlichen",commentsText:"Kommentare",deleteCommentText:"Diesen Kommentar l\xF6schen?",deleteButton:"L\xF6schen",takeSnapshot:"Mach einen Schnappschuss"},BcfTopicPriorityCell:{noPriority:"Keine"},SettingCard:{addButton:"ein Element hinzuf\xFCgen",cancelButton:"Abbrechen",validateButton:"Best\xE4tigen",deleteExtensionText:"Diesen Parameter l\xF6schen",deleteButton:"L\xF6schen",title:{Priority:"Priorit\xE4ten",Label:"Tags",Status:"Status",Type:"Typen",Stage:"Phasen"},input:{Priority:"Eine neue Priorit\xE4t hinzuf\xFCgen",Label:"Ein neues Etikett hinzuf\xFCgen",Status:"Einen neuen Status hinzuf\xFCgen",Type:"Einen neuen Typ hinzuf\xFCgen",Stage:"Eine neue Phase hinzuf\xFCgen"},text:{Priority:"Liste der Priorit\xE4ten",Label:"Liste von Tags",Status:"Liste der Status",Type:"Liste der Typen",Stage:"Liste der Phasen"}}},APi={BcfComponents:pPi},gPi={BcfFilters:{filtersButton:"Filters",filtersTitle:"Filters",priorityLabel:"Priority",statusLabel:"Status",assignedToLabel:"Assigned to",creatorsLabel:"Created by",tagsLabel:"Tags",resetButton:"Reset",searchButton:"Search",undefined:"Not defined",datePlaceholder:"Creation date"},BcfSettings:{goBackButton:"Back",title:"BCF Settings",text:"Create, enter in, and list the BCF settings you would like to have for this project",validateButton:"Validate BCF settings"},BcfStatistics:{emptyText:"Add BCF Topics to start to have some stats here.",issues:"issues",extension:{Priority:"Priority",PriorityNotDefined:"No priority",PriorityTitle:"Priorities",Status:"Status",StatusNotDefined:"No status",StatusTitle:"Status"}},BcfTopicCard:{priority:"Priority: ",noPriority:"None",assignedTo:"Assigned to: ",elements:"Elements",notSpecified:"Not specified",see:"See"},BcfTopicCreationCard:{text:"Create a new BCF topic",createBcfSideTitle:"Report a problem"},BcfTopicForm:{dragDropImageText:"Please select a file",addObjectButton:"Object",addAnnotationButton:"Annotation",annotationButtonTooltip:"This topic has no viewpoint",addPictureButton:"Add a picture",titlePlaceholder:"Title *",titleErrorMessage:"Missing title",typeLabel:"Type",priorityLabel:"Priority",statusLabel:"Status",stageLabel:"Stage",assignedToLabel:"Assigned to",dueDateLabel:"Due date",descriptionLabel:"Description",labelsLabel:"Tags",createButton:"Validate",updateButton:"Modify this BCF",modalText:"You are about to quit editing issue {name} but there are unsaved changes.",cancelButton:"Discard changes",continueButton:"Continue editing",createTitle:"Report a problem",dragDropImageTextTablet:"Take a picture",takeSnapshot:"Take a snapshot",importFile:"Import a file",searchPlaceholder:"Search",emptySearch:"No result"},BcfTopicOverview:{openViewer:"Open in viewer",openViewerNoModels:"No model to open",elements:"{count} Elements",noElements:"No element",type:"Type",noTypeSpecified:"No type specified",description:"Description",noDescriptionProvided:"No description provided",assignedTo:"Assigned to",notAssigned:"Not assigned",dueDate:"Due date",noDueDate:"No due date",informations:"Informations",status:"Status",noStatusSpecified:"No status specified",stage:"Stage",noStageProvided:"No stage provided",priority:"Priority",priorityNotDefined:"Not defined",tags:"Tags",noTags:"No tags",commentButton:"Post a comment",deleteText:"You are about to delete {name}",deleteBcfButton:"Delete this BCF",keepBcfButton:"Keep this BCF",author:"Author"},BcfTopicsTable:{headers:{index:"#",priority:"Priority",status:"Status",title:"Title",creator:"Author",date:"Date"}},BcfTopicActionsCell:{seeButton:"See"},BcfTopicComments:{commentButton:"Post a comment",commentLabel:"Post a comment",commentText:"Comment",cancelButton:"Cancel",publishButton:"Publish",commentsText:"Comments",deleteCommentText:"Delete this comment ?",deleteButton:"Delete",takeSnapshot:"Take a snapshot"},BcfTopicPriorityCell:{noPriority:"None"},SettingCard:{addButton:"add an element",cancelButton:"Cancel",validateButton:"Validate",deleteExtensionText:"Remove this setting",deleteButton:"Delete",title:{Priority:"Priorities",Label:"Labels",Status:"Status",Type:"Types",Stage:"Stages"},input:{Priority:"Add a new priority",Label:"Add a new label",Status:"Add new status",Type:"Add a new type",Stage:"Add a new stage"},text:{Priority:"Priority list",Label:"Labels list",Status:"Status list",Type:"Type list",Stage:"Stage list"}}},MPi={BcfComponents:gPi},fPi={BcfFilters:{filtersButton:"Filtros",filtersTitle:"Filtros",priorityLabel:"Prioridad",statusLabel:"Estado",assignedToLabel:"Asignado a",creatorsLabel:"Creado por",tagsLabel:"Etiquetas:",resetButton:"Restablecer",searchButton:"Buscar en",undefined:"No definido",datePlaceholder:"Fecha de creaci\xF3n"},BcfSettings:{goBackButton:"Volver",title:"Par\xE1metros del BCF",text:"Cree, rellene y enumere los par\xE1metros del BCF que desea tener en este proyecto",validateButton:"Validar los par\xE1metros del BCF"},BcfStatistics:{emptyText:"A\xF1ada preguntas para ver las estad\xEDsticas asociadas aqu\xED.",issues:"problemas",extension:{Priority:"Prioridad",PriorityNotDefined:"Sin prioridad",PriorityTitle:"Prioridades",Status:"Estado",StatusNotDefined:"Sin estado",StatusTitle:"Estatutos"}},BcfTopicCard:{priority:"Prioridad :",noPriority:"Sin",assignedTo:"Asignado a :",elements:"Elementos",notSpecified:"No definido",see:"Ver"},BcfTopicCreationCard:{text:"Crear un nuevo tema BCF",createBcfSideTitle:"Informar de un problema"},BcfTopicForm:{dragDropImageText:"Seleccione un archivo",addObjectButton:"Objeto",addAnnotationButton:"Anotaci\xF3n",annotationButtonTooltip:"Actualmente este tema no posee ning\xFAn punto de vista",addPictureButton:"A\xF1adir una imagen",titlePlaceholder:"T\xEDtulo *",titleErrorMessage:"Falta el t\xEDtulo",typeLabel:"Tipo",priorityLabel:"Prioridad",statusLabel:"Estado",stageLabel:"Fase",assignedToLabel:"Asignado a",dueDateLabel:"Fecha de vencimiento (DD/MM/AAAA)",descriptionLabel:"Descripci\xF3n",labelsLabel:"Etiquetas",createButton:"Validar",updateButton:"Modificar este BCF",modalText:"Est\xE1 a punto de salir de la edici\xF3n del problema de {name} pero hay cambios sin guardar.",cancelButton:"Cancelar los cambios",continueButton:"Continuar con los cambios",createTitle:"Informar de un problema",dragDropImageTextTablet:"Tomar una fotograf\xEDa",takeSnapshot:"Tomar un snapshot",importFile:"Importar un archivo",searchPlaceholder:"Buscar",emptySearch:"No hay resultados"},BcfTopicOverview:{openViewer:"Abrir en el visor",openViewerNoModels:"No hay ning\xFAn modelo listo para la visualizaci\xF3n",elements:"{count} Elementos",noElements:"Ning\xFAn elemento",type:"Tipo",noTypeSpecified:"No se especifica el tipo",description:"Descripci\xF3n",noDescriptionProvided:"No hay descripci\xF3n",assignedTo:"Asignado a",notAssigned:"No asignado",dueDate:"Plazo",noDueDate:"Sin fecha de vencimiento",informations:"Informaci\xF3n",status:"Estado",noStatusSpecified:"No se especifica el estado",stage:"Fase",noStageProvided:"No se indica ninguna fase",priority:"Prioridad",priorityNotDefined:"No definido",tags:"Etiquetas",noTags:"Sin etiquetas",commentButton:"Publicar un comentario",deleteText:"Est\xE1s a punto de borrar {name}",deleteBcfButton:"Borrar este BCF",keepBcfButton:"Mantenga este BCF",author:"Autor"},BcfTopicsTable:{headers:{index:"#",priority:"Prioridad",status:"Estado",title:"T\xEDtulo",creator:"Autor",date:"Fecha"}},BcfTopicActionsCell:{seeButton:"Ver"},BcfTopicComments:{commentButton:"Publicar un comentario",commentLabel:"Publicar un comentario",commentText:"Comentario",cancelButton:"Cancelar",publishButton:"Publicar",commentsText:"comentarios",deleteCommentText:"\xBFBorrar este comentario?",deleteButton:"Borrar",takeSnapshot:"Tomar un snapshot"},BcfTopicPriorityCell:{noPriority:"Sin"},SettingCard:{addButton:"a\xF1adir un elemento",cancelButton:"Cancelar",validateButton:"Validar",deleteExtensionText:"Borrar esta configuraci\xF3n",deleteButton:"Borrar",title:{Priority:"Prioridades",Label:"Etiquetas:",Status:"Estatutos",Type:"Tipos",Stage:"Fases"},input:{Priority:"A\xF1adir una nueva prioridad",Label:"A\xF1adir una nueva etiqueta",Status:"A\xF1adir un nuevo estado",Type:"A\xF1adir un nuevo tipo",Stage:"A\xF1adir una nueva fase"},text:{Priority:"Lista de prioridades",Label:"Lista de etiquetas",Status:"Lista de estatutos",Type:"Lista de tipos",Stage:"Lista de fases"}}},wPi={BcfComponents:fPi},LPi={BcfFilters:{filtersButton:"Filtres",filtersTitle:"Filtres",priorityLabel:"Priorit\xE9",statusLabel:"Statut",assignedToLabel:"Assign\xE9 \xE0",creatorsLabel:"Cr\xE9\xE9 par",tagsLabel:"Tags",resetButton:"R\xE9initialiser",searchButton:"Rechercher",undefined:"Non d\xE9fini",datePlaceholder:"Date de cr\xE9ation"},BcfSettings:{goBackButton:"Retour",title:"Param\xE8tres BCF",text:"Cr\xE9ez, renseignez et listez les param\xE8tres BCF que vous souhaitez avoir sur ce projet",validateButton:"Valider les param\xE8tres BCF"},BcfStatistics:{emptyText:"Ajoutez des questions pour voir les statistiques associ\xE9es ici.",issues:"probl\xE8mes",extension:{Priority:"Priorit\xE9",PriorityNotDefined:"Aucune priorit\xE9",PriorityTitle:"Priorit\xE9s",Status:"Statut",StatusNotDefined:"Aucun statut",StatusTitle:"Statuts"}},BcfTopicCard:{priority:"Priorit\xE9 : ",noPriority:"Aucune",assignedTo:"Assign\xE9 \xE0 : ",elements:"{n} \xC9lements",notSpecified:"Non d\xE9fini",see:"Voir"},BcfTopicCreationCard:{text:"Cr\xE9er un nouveau topic BCF",createBcfSideTitle:"Signaler un probl\xE8me"},BcfTopicForm:{dragDropImageText:"Veuillez s\xE9lectionner un fichier",addObjectButton:"Objet",addAnnotationButton:"Annotation",annotationButtonTooltip:"Ce topic ne poss\xE8de actuellement aucun point de vue",addPictureButton:"Ajouter une image",titlePlaceholder:"Titre *",titleErrorMessage:"Titre manquant",typeLabel:"Type",priorityLabel:"Priorit\xE9",statusLabel:"Statut",stageLabel:"Phase",assignedToLabel:"Assign\xE9 \xE0",dueDateLabel:"Date d'\xE9ch\xE9ance",descriptionLabel:"Description",labelsLabel:"Tags",createButton:"Valider",updateButton:"Modifier ce BCF",modalText:"Vous \xEAtes sur le point de quitter l'\xE9dition de l'issue {name} mais il y'a des modifications non enregistr\xE9es.",cancelButton:"Annuler les modifications",continueButton:"Continuer les modifications",createTitle:"Signaler un probl\xE8me",dragDropImageTextTablet:"Prendre une photo",takeSnapshot:"Prendre un snapshot",importFile:"Importer un fichier",searchPlaceholder:"Rechercher",emptySearch:"Pas de r\xE9sultat"},BcfTopicOverview:{openViewer:"Ouvrir dans le viewer",openViewerNoModels:"Il n'y a aucun mod\xE8le pr\xEAt pour une visualisation",elements:"{count} \xC9lements",noElements:"Aucun \xE9l\xE9ment concern\xE9",type:"Type",noTypeSpecified:"Pas de type sp\xE9cifi\xE9",description:"Description",noDescriptionProvided:"Pas de description renseign\xE9e",assignedTo:"Assign\xE9 \xE0",notAssigned:"Non assign\xE9",dueDate:"\xC9ch\xE9ance",noDueDate:"Pas de date d'\xE9ch\xE9ance",informations:"Informations",status:"Statut",noStatusSpecified:"Pas de statut sp\xE9cifi\xE9",stage:"Phase",noStageProvided:"Pas de phase renseign\xE9e",priority:"Priorit\xE9",priorityNotDefined:"Non d\xE9fini",tags:"Tags",noTags:"Pas de tags",commentButton:"Poster un commentaire",deleteText:"Vous \xEAtes sur le point de supprimer {name}",deleteBcfButton:"Supprimer ce BCF",keepBcfButton:"Conserver ce BCF",author:"Auteur"},BcfTopicsTable:{headers:{index:"#",priority:"Priorit\xE9",status:"Statut",title:"Titre",creator:"Auteur",date:"Date"}},BcfTopicActionsCell:{seeButton:"Voir"},BcfTopicComments:{commentButton:"Poster un commentaire",commentLabel:"Poster un commentaire",commentText:"Commentaire",cancelButton:"Annuler",publishButton:"Publier",commentsText:"commentaires",deleteCommentText:"Supprimer ce commentaire ?",deleteButton:"Supprimer",takeSnapshot:"Prendre un snapshot"},BcfTopicPriorityCell:{noPriority:"Aucune"},SettingCard:{addButton:"ajouter un \xE9l\xE9ment",cancelButton:"Annuler",validateButton:"Valider",deleteExtensionText:"Supprimmer ce param\xE8tre",deleteButton:"Supprimer",title:{Priority:"Priorit\xE9s",Label:"Tags",Status:"Statuts",Type:"Types",Stage:"Phases"},input:{Priority:"Ajouter une nouvelle priorit\xE9",Label:"Ajouter un nouveau label",Status:"Ajouter un nouveau statut",Type:"Ajouter un nouveau type",Stage:"Ajouter une nouvelle phase"},text:{Priority:"Liste des priorit\xE9s",Label:"Liste des tags",Status:"Liste des statuts",Type:"Liste des types",Stage:"Liste des phases"}}},mPi={BcfComponents:LPi},yPi={BcfFilters:{filtersButton:"Filtri",filtersTitle:"Filtri",priorityLabel:"Priorit\xE0",statusLabel:"Stato",datePlaceholder:"Data di creazione",assignedToLabel:"Assegnato a",creatorsLabel:"Creato da",tagsLabel:"Etichette",resetButton:"Ripristina",searchButton:"Cerca",undefined:"Non definito"},BcfSettings:{goBackButton:"Indietro",title:"Parametri BCF",text:"Creare, notificare e elencare i parametri BCF che si desidera avere su questo progetto",validateButton:"Conferma i parametri BCF"},BcfStatistics:{emptyText:"Aggiungi delle domande per vedere le statistiche associate qui.",issues:"problemi",extension:{Priority:"Priorit\xE0",PriorityNotDefined:"Nessuna priorit\xE0",PriorityTitle:"Priorit\xE0",Status:"Stato",StatusNotDefined:"Nessuno stato",StatusTitle:"Stati"}},BcfTopicCard:{priority:"Priorit\xE0:",noPriority:"Nessuno",assignedTo:"Assegnato a:",elements:"Elementi",noElements:"0 elementi",notSpecified:"Non definito",see:"Visualizza"},BcfTopicCreationCard:{text:"Crea un nuovo topic BCF",createBcfSideTitle:"Segnala un problema"},BcfTopicForm:{dragDropImageText:"Selezionare un file",addObjectButton:"Oggetto",addAnnotationButton:"Annotazione",annotationButtonTooltip:"Attualmente questo argomento non presenta alcun punto di vista",addPictureButton:"Aggiungere un'immagine",titlePlaceholder:"Titolo *",titleErrorMessage:"Titolo mancante",typeLabel:"Tipo",priorityLabel:"Priorit\xE0",statusLabel:"Stato",stageLabel:"Fase",assignedToLabel:"Assegnato a",dueDateLabel:"Data di scadenza",descriptionLabel:"Descrizione",labelsLabel:"Tag",createButton:"Conferma",updateButton:"Modificare questo BCF",modalText:"State per abbandonare la modifica di {name} ma ci sono modifiche non salvate.",cancelButton:"Annullare le modifiche",continueButton:"Continuare le modifiche",createTitle:"Segnala un problema"},BcfTopicOverview:{openViewer:"Apri nel visualizzatore",openViewerNoModels:"Non esistono modelli pronti per la visualizzazione",elements:"{count} Elementi",noElements:"Nessun elemento",type:"Tipo",noTypeSpecified:"Nessun tipo specificato",description:"Descrizione",noDescriptionProvided:"Nessuna descrizione inserita",assignedTo:"Assegnato a",notAssigned:"Non assegnato",dueDate:"Scadenza",noDueDate:"Nessuna data di scadenza",informations:"Informazioni",status:"Stato",noStatusSpecified:"Nessuno stato specificato",stage:"Fase",noStageProvided:"Nessuna fase inserita",priority:"Priorit\xE0",priorityNotDefined:"Non definita",tags:"Etichette",noTags:"Nessuna etichetta",commentButton:"Pubblica un commento",deleteText:"Stai per eliminare {name}",deleteBcfButton:"Elimina questo BCF",keepBcfButton:"Conserva questo BCF",author:"Autore"},BcfTopicsTable:{headers:{index:"#",priority:"Priorit\xE0",status:"Stato",title:"Titolo",creator:"Autore",date:"Data"}},BcfTopicActionsCell:{seeButton:"Visualizza"},BcfTopicComments:{commentButton:"Pubblica un commento",commentLabel:"Pubblica un commento",commentText:"Commento",cancelButton:"Annulla",publishButton:"Pubblica",commentsText:"commenti",deleteCommentText:"Eliminare questo commento?",deleteButton:"Elimina"},BcfTopicPriorityCell:{noPriority:"Nessuno"},SettingCard:{addButton:"aggiungi un elemento",cancelButton:"Annulla",validateButton:"Conferma",deleteExtensionText:"Elimina questo parametro",deleteButton:"Elimina",title:{Priority:"Priorit\xE0",Label:"Etichette",Status:"Stati",Type:"Tipi",Stage:"Fasi"},input:{Priority:"Aggiungi una nuova priorit\xE0",Label:"Aggiungi una nuova etichetta",Status:"Aggiungi un nuovo stato",Type:"Aggiungi un nuovo tipo",Stage:"Aggiungi una nuova fase"},text:{Priority:"Elenco delle priorit\xE0",Label:"Elenco delle etichette",Status:"Elenco degli stati",Type:"Elenco dei tipi",Stage:"Elenco delle fasi"}}},vPi={BcfComponents:yPi},CPi={de:APi,en:MPi,es:wPi,fr:mPi,it:vPi},IPi=({apiClient:t,fetchUsers:e,i18nPlugin:i}={})=>({install(o){t?Yo.setup({apiClient:t,fetchUsers:e}):console.error("[BCF Components Plugin] No api client provided. You must provide an api client for the components to work properly."),i?Object.entries(CPi).forEach(([r,n])=>{i.global.mergeLocaleMessage(r,n)}):console.warn("[BCF Components Plugin] No i18n instance provided. You should either provide an i18n instance or define your own translations in order have text displayed properly."),Object.entries(nje).forEach(([r,n])=>{o.component(r,n)})}}),jPi={title:"Building Maker",back:"Zur\xFCck",list:{text:"Erstellen und bearbeiten Sie die Etagen und laden Sie anschlie\xDFend Ihre PDFs herunter.",createButton:"Neues Projekt",updateButton:"Umbenennen",deleteButton:"L\xF6schen"},form:{text:"Erstellen und bearbeiten Sie die Etagen und laden Sie anschlie\xDFend Ihre PDFs herunter.",input:"Name des Geb\xE4udes",error:"Ung\xFCltiger Name",createButton:"Erstellen",updateButton:"Best\xE4tigen"},storeys:{addStoreyButton:"Etage",addFileButton:"Grundriss",closeButton:"Fertigstellen",submitFilesButton:"Best\xE4tigen"},storeyForm:{title:"Neue Etage",input:"Name",error:"Ung\xFCltiger Name",cancelButton:"Abbrechen",submitButton:"Best\xE4tigen"}},bPi={creationFormTitle:"Ordner erstellen",renameFormPlaceholder:"Datei- / Ordnernam",nameInputPlaceholder:"Ordnername",emptyFolder:"Dieser Ordner ist leer",newFolderSuccess:"Neuer Ordner erstellt",renameFolderSuccess:"Umbenannter Ordner",deleteFolderSuccess:"Ordner gel\xF6scht",newFileSuccess:"Datei hinzugef\xFCgt",renameFileSuccess:"Umbenannte Datei",deleteFileSuccess:"Datei gel\xF6scht",nameInputErrorMessage:"Ung\xFCltiger name",cancel:"Abbrechen",submit:"Best\xE4tigen",buttonText:"Neuer Ordner",addFileButtonText:"Datei laden",rename:"Umbenennen",view:"Sehen",download:"Herunterladen",delete:"L\xF6schen",deleteTitle:"Dateien l\xF6schen",deleteDetail:"Sie sind im Begriff, die folgenden Dateien / Ordner endg\xFCltig zu l\xF6schen"},xPi={BuildingMaker:jPi,FileManager:bPi},DPi={title:"Building",back:"Back",list:{text:"Create and edit the layers, then download your PDFs.",createButton:"New project",updateButton:"Rename",deleteButton:"Delete"},form:{text:"Create and edit the layers, then download your PDFs.",input:"Building name",error:"Invalid",createButton:"Create",updateButton:"Confirm"},storeys:{addStoreyButton:"Storey",addFileButton:"Plan",closeButton:"Finish",submitFilesButton:"Validate"},storeyForm:{title:"New storey",input:"Name",error:"Invalid name",cancelButton:"Cancel",submitButton:"Validate"}},NPi={creationFormTitle:"Create folder",renameFormPlaceholder:"Folder/File name",nameInputPlaceholder:"Folder name",emptyFolder:"This folder is empty",newFolderSuccess:"New folder created",renameFolderSuccess:"Folder renamed",deleteFolderSuccess:"Folder deleted",newFileSuccess:"File added",renameFileSuccess:"File renamed",deleteFileSuccess:"File deleted",nameInputErrorMessage:"Invalid name",cancel:"Cancel",submit:"Submit",buttonText:"New folder",addFileButtonText:"Upload a file",rename:"Rename",view:"View",download:"Download",delete:"Delete",deleteTitle:"Deleting Files",deleteDetail:"You are about to permanently delete the following files / folders",dmsRoot:"Root of the project's DMS",validate:"Validate",back:"Back",pdfPageSelectorTitle:"Select a page"},SPi={title:"Meta-Building Structure",tab:{structure:"Structure",zones:"Zones",equipments:"Equipments"},StoreySelector:{placeholder:"Select a storey"},StructureView:{search:"Search"}},kPi={BuildingMaker:DPi,FileManager:NPi,MetaBuildingStructure:SPi},TPi={title:"Building Maker",back:"Vuelta",list:{text:"Cree y edite los pisos despu\xE9s cargue los PDF.",createButton:"Nuevo proyecto",updateButton:"Renombrar",deleteButton:"Suprimir"},form:{text:"Cree y edite los pisos despu\xE9s cargue los PDF.",input:"Nombre del edificio",error:"Nombre no v\xE1lido",createButton:"Crear",updateButton:"Validar"},storeys:{addStoreyButton:"Piso",addFileButton:"Plano",closeButton:"Terminar",submitFilesButton:"Validar"},storeyForm:{title:"Nuevo piso",input:"Nombre",error:"Nombre no v\xE1lido",cancelButton:"Anular",submitButton:"Validar"}},EPi={creationFormTitle:"Crear un archivo",renameFormPlaceholder:"Nombre de archivo / carpeta",nameInputPlaceholder:"Nombre de la carpeta",emptyFolder:"Esta carpeta est\xE1 vac\xEDa",newFolderSuccess:"Nueva carpeta creada",renameFolderSuccess:"Carpeta renombrada",deleteFolderSuccess:"Carpeta eliminada",newFileSuccess:"Archivo agregado",renameFileSuccess:"Archivo renombrado",deleteFileSuccess:"Archivo eliminado",nameInputErrorMessage:"Nombre inv\xE1lida",cancel:"Cancelar",submit:"Validar",buttonText:"Carpeta nueva",addFileButtonText:"Cargar un archivo",rename:"Renombrar",view:"Ver",download:"Descargar",delete:"Borrar",deleteTitle:"Eliminar archivos",deleteDetail:"Est\xE1 a punto de eliminar permanentemente los siguientes archivos / carpetas"},zPi={BuildingMaker:TPi,FileManager:EPi},PPi={title:"Building Maker",back:"Retour",list:{text:"Cr\xE9ez et \xE9ditez les \xE9tages puis t\xE9l\xE9chagez vos PDF.",createButton:"Nouveau projet",updateButton:"Renommer",deleteButton:"Supprimer"},form:{text:"Cr\xE9ez et \xE9ditez les \xE9tages puis t\xE9l\xE9chagez vos PDF.",input:"Nom du b\xE2timent",error:"Nom invalide",createButton:"Cr\xE9er",updateButton:"Valider"},storeys:{addStoreyButton:"\xC9tage",addFileButton:"Plan",closeButton:"Terminer",submitFilesButton:"Valider"},storeyForm:{title:"Nouvel \xE9tage",input:"Nom",error:"Nom invalide",cancelButton:"Annuler",submitButton:"Valider"}},BPi={creationFormTitle:"Cr\xE9er un dossier",renameFormPlaceholder:"Nom du fichier/dosier",nameInputPlaceholder:"Nom du dossier",emptyFolder:"Ce dossier est vide",newFolderSuccess:"Nouveau dossier cr\xE9\xE9",renameFolderSuccess:"Dossier renomm\xE9",deleteFolderSuccess:"Dossier supprim\xE9",newFileSuccess:"Fichier ajout\xE9",renameFileSuccess:"Fichier renomm\xE9",deleteFileSuccess:"Fichier supprim\xE9",nameInputErrorMessage:"Nom invalide",cancel:"Annuler",submit:"Valider",buttonText:"Nouveau dossier",addFileButtonText:"Charger un fichier",rename:"Renommer",view:"Voir",download:"T\xE9l\xE9charger",delete:"Supprimer",deleteTitle:"Supression de fichiers",deleteDetail:"Vous \xEAtes sur le point de supprimer d\xE9finitivement les fichiers/dossiers suivants",dmsRoot:"Racine de la GED du projet",validate:"Valider",back:"Retour",pdfPageSelectorTitle:"S\xE9lectionner une page"},OPi={title:"Structure M\xE9ta-Building",tab:{structure:"Structure",zones:"Zones",equipments:"Equipements"},StoreySelector:{placeholder:"S\xE9lectionner un \xE9tage"},StructureView:{search:"Rechercher"}},RPi={BuildingMaker:PPi,FileManager:BPi,MetaBuildingStructure:OPi},UPi={title:"Building Maker",back:"Reso",list:{text:"Crea e modifica i piani e poi scarica i tuoi PDF.",createButton:"Nuovo progetto",updateButton:"Rinominare",deleteButton:"Eliminare"},form:{text:"Crea e modifica i piani e poi scarica i tuoi PDF.",input:"Nome della costruzione",error:"Nome non corretto",createButton:"Creare",updateButton:"Convalidare"},storeys:{addStoreyButton:"Piano",addFileButton:"Progetto",closeButton:"Finire",submitFilesButton:"Convalidare"},storeyForm:{title:"Nuovo piano",input:"Nome",error:"Nome non corretto",cancelButton:"Annullare",submitButton:"Convalidare"}},FPi={creationFormTitle:"Crea una cartella",renameFormPlaceholder:"Nome file/cartella",nameInputPlaceholder:"Nome della cartella",emptyFolder:"Questa cartella \xE8 vuota",newFolderSuccess:"Nuova cartella creata",renameFolderSuccess:"Cartella rinominata",deleteFolderSuccess:"Cartella eliminata",newFileSuccess:"File aggiunto",renameFileSuccess:"File rinominato",deleteFileSuccess:"File cancellato",nameInputErrorMessage:"Nome non valido",cancel:"Annulla",submit:"Invia",buttonText:"Nuova cartella",addFileButtonText:"Carica un file",rename:"Rinominare",view:"Vedere",download:"Scaricare",delete:"Cancellare",deleteTitle:"Eliminazione di file",deleteDetail:"Stai per eliminare definitivamente i seguenti file/cartelle"},YPi={BuildingMaker:UPi,FileManager:FPi},QPi={de:xPi,en:kPi,es:zPi,fr:RPi,it:YPi},GPi=({i18nPlugin:t}={})=>({install(e){t?Object.entries(QPi).forEach(([i,o])=>{t.global.mergeLocaleMessage(i,o)}):console.warn("[BIMData Components Plugin] No i18n instance provided. You should either provide an i18n instance or define your own translations in order have text displayed properly."),Object.entries(dmi).forEach(([i,o])=>{e.component(i,o)})}}),HPi={beforeMount(t,e){if(typeof e.value!="function")throw Error(`click away directive needs function, got ${typeof e.value}`);t.clickAwayHandler=i=>{(i.path||i.composedPath&&i.composedPath()).find(o=>o===t)||e.value()},window.addEventListener("mousedown",t.clickAwayHandler,!0)},unmounted(t){window.removeEventListener("mousedown",t.clickAwayHandler,!0),delete t.clickAwayHandler}},VPi=Object.freeze(Object.defineProperty({__proto__:null,BIMDataClickAway:Uc,BIMDataClickInputAway:HPi},Symbol.toStringTag,{value:"Module"})),ZPi=t=>({install(e){Object.entries(kMt).forEach(([i,o])=>{t&&t.excludedComponents&&t.excludedComponents.length>0&&t.excludedComponents.includes(i)||(!t||!t.includedComponents||t.includedComponents.includes(i))&&e.component(i,o)}),(!t||t.directives!==!1)&&Object.entries(VPi).forEach(([i,o])=>e.directive(i.split("BIMData")[1],o))}}),JPi={name:"LiWrapper",render(){return _i("li",this.$slots.default())}};function WPi(t,e){var i=new Set([]);return t.forEach(o=>{e.has(o)||i.add(o)}),i}const pu=ms("id"),KPi=({contextMenu:t,objects:e=[],state:i=t.$viewer.state,pictos:o})=>[{name:"selectAll",get group(){return t.groupPositions.select},position:1,get label(){return t.$t("context_menu.select_all")},get picto(){return o.get(this.name)},execute:()=>i.selectObjects(e.filter(kc(Ji("visible"),Tu("selected"))).map(pu)),predicate:()=>e.some(kc(Ji("visible"),Tu("selected")))},{name:"deselectAll",get group(){return t.groupPositions.select},position:2,get label(){return t.$t("context_menu.deselect_all")},get picto(){return o.get(this.name)},execute:()=>i.deselectObjects(e.filter(Ji("selected")).map(pu)),predicate:()=>e.some(Ji("selected"))},{name:"selectSimilar",get group(){return t.groupPositions.select},position:3,get label(){return t.$t("context_menu.select_similar")},get picto(){return o.get(this.name)},execute(){const r=e.filter(n=>n.visible&&n.type===this.selectedObject.type&&n.id!==this.selectedObject.id).map(pu);i.selectObjects(r)},selectedObject:null,predicate(){const r=e.filter(kc(Ji("visible"),Ji("selected")));return r.length===1&&r[0].type!==void 0?(this.selectedObject=r[0],!0):(this.selectedObject=null,!1)}},{name:"reverseSelection",get label(){return t.$t("context_menu.reverse_selection")},get group(){return t.groupPositions.select},position:4,execute:()=>{const r=new Set(e.filter(Ji("selected")).map(pu)),n=new Set(e.filter(Ji("visible")).map(pu));i.selectObjects(Array.from(WPi(n,r)),{exclusive:!0})},predicate:()=>e.some(kc(Tu("selected"),Ji("visible")))&&e.some(kc(Ji("selected"),Ji("visible")))},{name:"showAll",get group(){return t.groupPositions.visibility},position:1,get label(){return t.$t("context_menu.show_all")},get picto(){return o.get(this.name)},execute:()=>i.showObjects(e.filter(Tu("visible")).map(pu)),predicate:()=>e.some(Tu("visible"))},{name:"hide",get group(){return t.groupPositions.visibility},position:2,get label(){return t.$t("context_menu.hide")},get picto(){return o.get(this.name)},objectsToHide:null,execute(){const r=this.objectsToHide.filter(Ji("selected"));r.length>0&&i.deselectObjects(r.map(pu)),i.hideObjects(this.objectsToHide.map(pu))},predicate(){return this.objectsToHide=e.filter(kc(Ji("selected"),Ji("visible"))),this.objectsToHide.length>0}},{name:"hideAll",get group(){return t.groupPositions.visibility},position:3,get label(){return t.$t("context_menu.hide_all")},execute:()=>{const r=e.filter(Ji("visible"));r.some(Ji("selected"))&&i.deselectObjects(r.filter(Ji("selected")).map(pu)),i.hideObjects(r.map(pu))},predicate:()=>e.some(Ji("visible"))}].filter(r=>r.predicate()),_Pi={components:{LiWrapper:JPi},inject:["$viewer"],data(){return{defaultPrevented:!1,displayed:!1,top:null,bottom:null,left:null,width:200,nextCommandId:1,currentCommands:[],contextCommands:[],registeredCommands:[],groupPositions:{select:10,visibility:20},asyncPredicateRunning:!1}},computed:{position(){return{top:this.top?this.top+"px":"unset",bottom:this.bottom?this.bottom+"px":"unset",left:this.left+"px",width:this.width+"px"}}},watch:{displayed(t){t?document.addEventListener("keydown",this.onKeyDown):document.removeEventListener("keydown",this.onKeyDown)}},created(){this.$viewer.contextMenu=this,this.asyncPredicates=new Set},methods:{onKeyDown(t){t.key==="Escape"&&this.away()},setPosition(t){const e=(document.fullscreenElement?document.fullscreenElement:this.$parent.$el).getBoundingClientRect();this.left=t.clientX-e.left,this.top=t.clientY-e.top,this.left+this.width>e.width&&(this.left=this.left-this.width),t.clientY>e.top+e.height/2?(this.bottom=e.height-this.top,this.top=null):this.bottom=null},typeCheckCommand(t={}){let e=null;if((!t.execute||typeof t.execute!="function")&!t.component&&(e="Cannot register context menu command. A command must have an execute function or a component property."),t.label||(e="Cannot register context menu command. A command must have a label."),e)throw console.error(e),new Error(e);return t.id=this.nextCommandId++,t},open(t){this.currentCommands=[],this.setPosition(t),this.originEvent=t,t.preventDefault(),this.setCurrentCommands(),this.groupCurrentCommands(),this.defaultPrevented=!1,this.displayed=!0,document.fullscreenElement?(this.$el.parentElement.removeChild(this.$el),this.adoptiveParent=document.fullscreenElement,this.adoptiveParent.appendChild(this.$el)):this.adoptiveParent&&this.adoptiveParent!==this.$viewer.globalContext.el&&(this.adoptiveParent.removeChild(this.$el),this.$viewer.globalContext.el.appendChild(this.$el),this.adoptiveParent=null)},setCurrentCommands(){this.asyncPredicates.clear(),this.asyncPredicateRunning=!1,this.defaultPrevented||this.registeredCommands.forEach(async t=>{if(typeof t.predicate=="function"){const e=t.predicate(this.$viewer.globalContext.activeLocalContext);if(e===!0)this.currentCommands.push(t);else if(typeof e?.then=="function"){this.asyncPredicates.add(e),this.asyncPredicateRunning=!0;const i=await e;this.asyncPredicates.has(e)&&(this.asyncPredicates.delete(e),this.asyncPredicateRunning=this.asyncPredicates.size>0,i===!0&&this.currentCommands.push(t))}}else this.currentCommands.push(t)}),this.currentCommands.push(...this.contextCommands),this.contextCommands=[]},getDefaultCommands({objects:t=[],state:e=this.$viewer.state,context:i=null}){const o=new Map;return i&&this.$viewer.shortcutManager.getShortcuts(i).forEach(r=>o.set(r.name,r.key)),KPi({contextMenu:this,objects:t,state:e,pictos:o})},executeCommand(t){if(t.execute&&(t.execute(this.originEvent),this.displayed=!1),t.component&&!t.menu)throw new Error("Command with component property must have a `menu` property")},away(){this.displayed=!1},groupCurrentCommands(){const t=new Map;this.currentCommands.forEach(i=>{(i.group===null||i.group===void 0)&&(i.group=0),t.has(i.group)?t.get(i.group).push(i):t.set(i.group,[i])}),t.forEach(i=>i.sort((o,r)=>(o.position=o.position||0,r.position=r.position||0,o.position-r.position)));const e=[...t.keys()].sort((i,o)=>i-o).map(i=>t.get(i)).flat();this.currentCommands=e},isGroupIntersection(t){if(t===0)return!1;const e=this.currentCommands[t-1],i=this.currentCommands[t];return e.group<i.group},registerContextCommand(t){const e=this.typeCheckCommand(t);return this.contextCommands.push(e),t.id},registerCommand(t){const e=this.typeCheckCommand(t);return this.registeredCommands.push(e),t.id},unregisterCommand(t){return this.registeredCommands.find(e=>e.id===t)?(this.registeredCommands=this.registeredCommands.filter(e=>e.id!==t),!0):!1},preventDefault(){this.defaultPrevented=!0}}},qPi={key:0,class:"separator"},XPi={class:"menu-text"},$Pi={key:1,class:"menu-picto"},eBi={key:0,class:"context-menu__spinner"};function tBi(t,e,i,o,r,n){const s=z("BIMDataIconChevron"),a=z("LiWrapper"),l=z("BIMDataSpinner"),c=Yi("click-away");return r.displayed&&(r.currentCommands.length||r.asyncPredicateRunning)?Tt((D(),U("ul",{key:0,class:"bimdata-list context-menu",style:Se(n.position)},[(D(!0),U(Mt,null,ii(r.currentCommands,(u,d)=>(D(),oe(a,{key:u.label,class:"context-menu__element",onClick:h=>n.executeCommand(u)},{default:J(()=>[n.isGroupIntersection(d)?(D(),U("div",qPi)):be("",!0),v("div",XPi,X(u.label),1),!u.component&&u.picto?(D(),U("span",$Pi,X(u.picto),1)):u.component?(D(),oe(s,{key:2,size:"xxs",class:"fill-primary"})):be("",!0)]),_:2},1032,["onClick"]))),128)),r.asyncPredicateRunning?(D(),U("li",eBi,[O(l)])):be("",!0)],4)),[[c,n.away]]):be("",!0)}const iBi=W(_Pi,[["render",tBi],["__scopeId","data-v-5b87d4a3"]]),oBi={name:"ViewerHeader",inject:["$viewer"],props:{visible:{type:Boolean,default:!0}},setup(){const t=Ut("$viewer"),e=Cn(new Map),i=r=>{if(!r.name)throw new TypeError("[Viewer Header] Content must have a name");if(e.has(r.name))throw new Error(`[Viewer Header] Content with name ${r.name} already exists`);e.set(r.name,r)},o=r=>e.has(r)?(e.delete(r),!0):!1;return{logo:t.uiSettings.bimdataLogo!==!1,version:t.uiSettings.version!==!1?t.version:null,headerContent:e,headerRightContentComponents:At(()=>Array.from(e.values()).filter(r=>r.position==="right").sort((r,n)=>r.order-n.order).map(r=>r.component)),headerLeftContentComponents:At(()=>Array.from(e.values()).filter(r=>r.position==="left").sort((r,n)=>r.order-n.order).map(r=>r.component)),addContent:i,removeContent:o}}},rBi={class:"viewer-header"},sBi={class:"viewer-header__content"},nBi={class:"viewer-header__content__left"},aBi={class:"viewer-header__content__right"},lBi={key:0,class:"m-l-6 flex items-center"},cBi={key:1,class:"viewer-header__version"};function uBi(t,e,i,o,r,n){const s=z("BIMDataIllustration");return Tt((D(),U("div",rBi,[v("div",sBi,[v("div",nBi,[(D(!0),U(Mt,null,ii(o.headerLeftContentComponents,a=>(D(),oe(hr(a),{key:a.name}))),128))]),v("div",aBi,[(D(!0),U(Mt,null,ii(o.headerRightContentComponents,a=>(D(),oe(hr(a),{key:a.name}))),128))])]),o.logo||o.version?(D(),U("div",lBi,[o.logo?(D(),oe(s,{key:0,name:"logo",width:"30px",height:"30px"})):be("",!0),o.version?(D(),U("div",cBi,X(o.version),1)):be("",!0)])):be("",!0)],512)),[[Ai,i.visible]])}const dBi=W(oBi,[["render",uBi],["__scopeId","data-v-5c9ea6b6"]]),hBi={emits:["resize"],setup(t,{emit:e}){return{onResizerMousedown:i=>{i.preventDefault();let o=i.clientX;const r=s=>{s.preventDefault();const a=s.clientX-o;o=s.clientX,e("resize",a)},n=s=>{s.preventDefault(),window.removeEventListener("mousemove",r),window.removeEventListener("mouseup",n)};window.addEventListener("mousemove",r),window.addEventListener("mouseup",n)}}}},pBi=t=>(Jo("data-v-79a3b3af"),t=t(),Wo(),t),ABi={class:"bimdata-separator"},gBi=pBi(()=>v("div",{class:"bimdata-separator__line"},null,-1));function MBi(t,e,i,o,r,n){return D(),U("div",ABi,[gBi,v("div",{class:"bimdata-separator__resizer",onMousedown:e[0]||(e[0]=(...s)=>o.onResizerMousedown&&o.onResizerMousedown(...s))},null,32)])}const fBi=W(hBi,[["render",MBi],["__scopeId","data-v-79a3b3af"]]),wBi={components:{Separator:fBi},props:{position:{type:String,required:!0,validator(t){return["left","right"].includes(t)}},sidePanel:{type:Object,required:!0,validator(t){if(t.width&&(typeof t.width!="number"||t.width<0))return console.error(`[GlobalSidePanel] sidePanel.width must be a strictly positive number, received ${typeof t.width}`),!1;const e=typeof t?.component=="object";return e||console.error("[GlobalSidePanel] sidePanel must have a component property"),e}}},setup(t){const e=Fe(null),i=Fe(t.sidePanel.width??400),o=(r,n=1)=>{const s=i.value+r*n;i.value=Math.max(0,s)};return Object.defineProperty(t.sidePanel,"width",{get(){return i.value},set(r){if(typeof r!="number"||r<=0){console.error(`[GlobalSidePanel] sidePanel.width must be a strictly positive number, received ${typeof r}`);return}i.value=r}}),Object.defineProperty(t.sidePanel,"componentInstance",{get(){return e.value},enumerable:!0}),{componentInstance:e,width:i,onResize:o}}},LBi={class:"bimdata-global-side-panel__component"};function mBi(t,e,i,o,r,n){const s=z("Separator");return D(),U("div",{class:"bimdata-global-side-panel",style:Se(`width: ${o.width}px`)},[i.sidePanel.resizable&&i.position==="right"?(D(),oe(s,{key:0,onResize:e[0]||(e[0]=a=>o.onResize(a,-1))})):be("",!0),v("div",LBi,[(D(),oe(hr(i.sidePanel.component),{ref:"componentInstance"},null,512))]),i.sidePanel.resizable&&i.position==="left"?(D(),oe(s,{key:1,onResize:e[1]||(e[1]=a=>o.onResize(a))})):be("",!0)],4)}const yBi=W(wBi,[["render",mBi],["__scopeId","data-v-7374abbf"]]),vBi={name:"BimdataViewer",components:{ContextMenu:iBi,ViewerHeader:dBi,ModalManager:Whe,GlobalSidePanel:yBi},setup(){const t=Ut("$viewer"),{globalContext:e,shortcutManager:i}=t;Oo(()=>{i&&i.destroy(),e.hub.clear()}),lo(()=>{t.pluginManager.runPluginsScripts(t)});const o=At(()=>{var p;return t.uiSettings.bimdataLogo!==!1&&(e.localContexts.length!==1||((p=e.localContexts[0].window)==null?void 0:p.logoAndVersion))}),r=At(()=>{var p;return t.uiSettings.version!==!1&&(e.localContexts.length!==1||(p=e.localContexts[0].window)!=null&&p.logoAndVersion)?t.version:null}),n=At(()=>e.leftSidePanel),s=At(()=>e.rightSidePanel),a=At(()=>{var p;const g=t.uiSettings.header!==!1,A=e.localContexts.length===1&&((p=e.localContexts[0].window)==null?void 0:p.header)===!1,M=!!(n.value||s.value);return g&&(!A||M)}),l=t.uiSettings.contextMenu!==!1,c=Fe(null);function u(p){l&&c.value.open(p)}function d(){t.shortcutManager.active=!0}function h(){t.shortcutManager.active=!1}return{Layout:t.layout.areas.component,onContextMenu:u,onMouseenter:d,onMouseleave:h,isHeaderVisible:a,viewerTemplateRef:e.templateRef,modalManagerTemplateRef:e.modalManagerTemplateRef,headerTemplateRef:e.headerTemplateRef,contextMenuTemplateRef:c,contextMenuEnabled:l,bimdataLogoOnSingleWindow:o,viewerVersionOnSingleWindow:r,version:t.version,loading:At(()=>e.loading),spinner:At(()=>e.spinner),leftSidePanel:n,rightSidePanel:s}}},CBi={key:1,class:"global-spinner",style:{"z-index":"3"}},IBi={key:2,class:"viewer__logo"},jBi={key:1,class:"version m-t-6"};function bBi(t,e,i,o,r,n){const s=z("ModalManager"),a=z("ContextMenu"),l=z("ViewerHeader"),c=z("GlobalSidePanel"),u=z("BIMDataSpinner"),d=z("BIMDataIllustration");return D(),U("div",{id:"bimdata-viewer",ref:"viewerTemplateRef",class:"bimdata-viewer bimdata-scrollbar",onContextmenu:e[0]||(e[0]=(...h)=>o.onContextMenu&&o.onContextMenu(...h)),onMouseenter:e[1]||(e[1]=(...h)=>o.onMouseenter&&o.onMouseenter(...h)),onMouseleave:e[2]||(e[2]=(...h)=>o.onMouseleave&&o.onMouseleave(...h))},[O(s,{ref:"modalManagerTemplateRef",global:""},null,512),o.contextMenuEnabled?(D(),oe(a,{key:0,ref:"contextMenuTemplateRef"},null,512)):be("",!0),O(l,{ref:"headerTemplateRef",visible:o.isHeaderVisible},null,8,["visible"]),v("div",{class:"bimdata-viewer__content",style:Se(o.isHeaderVisible?"height: calc(100% - var(--bimdata-viewer-header-height, 40px))":"height: 100%")},[o.leftSidePanel?(D(),oe(c,{key:0,"side-panel":o.leftSidePanel,position:"left"},null,8,["side-panel"])):be("",!0),(D(),oe(hr(o.Layout),{style:"height: 100%; flex-grow: 1;"})),o.rightSidePanel?(D(),oe(c,{key:1,"side-panel":o.rightSidePanel,position:"right"},null,8,["side-panel"])):be("",!0)],4),o.loading?(D(),U("div",CBi,[o.spinner&&o.spinner.component?(D(),oe(hr(o.spinner.component),Pu(ja({key:0},o.spinner.props)),null,16)):(D(),oe(u,{key:1,size:"40px",border:"5px"}))])):be("",!0),!o.isHeaderVisible&&(o.bimdataLogoOnSingleWindow||o.viewerVersionOnSingleWindow)?(D(),U("div",IBi,[o.bimdataLogoOnSingleWindow?(D(),oe(d,{key:0,name:"logo"})):be("",!0),o.viewerVersionOnSingleWindow?(D(),U("div",jBi,X(o.version),1)):be("",!0)])):be("",!0)],544)}const xBi=W(vBi,[["render",bBi]]),DBi=["src"],NBi={class:"bimdata-models__header"},SBi={key:0,class:"bimdata-models__header__loader"},kBi={class:"bimdata-models__header__picto"},TBi={class:"bimdata-models__header__name"},EBi={key:0,class:"bimdata-models__header__name--empty"},zBi={key:1,class:"bimdata-models__header__name--empty"},PBi={key:3},BBi=["onMousemove","onClick"],e0e={__name:"Models",props:{preview:{type:Boolean,default:!1},windowPositioning:{type:Boolean,default:!0},customFilter:{type:Function,default:null},width:{type:String,default:"350px"}},setup(t){const e=t,i=Ut("$viewer"),o=Fe(),r=Fe(0),n=Fe(0),s=Fe(),a=or([]),l=Fe(!1),c=At(()=>i.localContext.loadedModels),u=At(()=>i.localContext.loadedModelIds),d=At(()=>i.localContext.loadingModelIds),h=At(()=>i.localContext.multiModel),p=At(()=>(e.customFilter?a.value.filter(e.customFilter):a.value).map(I=>c.value.find(j=>{var b;return((b=j.document)==null?void 0:b.head_id)!=null&&j.document.head_id===I.document.id})??I)),g=I=>u.value.includes(I),A=I=>d.value.includes(I),M=At(()=>{var I;const{x:j,y:b}=((I=s.value)==null?void 0:I.getBoundingClientRect())??{x:0,y:0};return`top:${n.value-b}px; left:${r.value-j}px;`}),f=I=>{!h.value&&g(I.id)||d.value.length>0||(i.localContext.loadedModelIds.includes(I.id)?i.localContext.unloadModels([I.id]):i.localContext.loadModels([I.id]))},L=I=>{switch(I){case"C":return"success";case"E":return"failed";case"P":case"I":return"sandglass"}},w=(I,j)=>{I!=null&&I.viewer_360_file&&(r.value=j.clientX,n.value=j.clientY),o.value=I?.viewer_360_file},m=async I=>{l.value=!0;try{return(await i.api.apiClient.modelApi.getModels(i.api.cloudId,i.api.projectId,void 0,void 0,I)).filter(j=>i.state.models.some(b=>b.archived)||!j.archived).sort(Zh("updated_at",!1))}catch(j){console.error("[Models] Cannot get project models. Error: ",j)}finally{l.value=!1}return[]},C=I=>{var j;return((j=I.children)==null?void 0:j.some(b=>g(b.id)))??!1};return m(i.localContext.modelTypes).then(I=>{a.value=I}),(I,j)=>{const b=z("BIMDataSpinner"),T=z("BIMDataIconModel3D"),P=z("BIMDataTextbox"),S=z("BIMDataCheckbox"),k=z("BIMDataRadio"),R=z("BIMDataIcon"),Y=z("BIMDataDropdownList");return D(),U("div",{ref_key:"templateRef",ref:s,class:Ne(["bimdata-models",{"bimdata-models--window-positioning":t.windowPositioning}])},[o.value?(D(),U("div",{key:0,class:"bimdata-models__preview",style:Se(M.value)},[v("img",{src:o.value},null,8,DBi)],4)):be("",!0),O(Y,{style:Se(`--bimdata-models-width: ${t.width};`),width:t.width,list:p.value,"element-key":"id","per-page":40,loading:l.value,class:"bimdata-models__list",disabled:p.value.length===0,onElementClick:f},{header:J(({isOpen:Z})=>[v("div",NBi,[l.value||d.value.length>0?(D(),U("div",SBi,[O(b)])):(D(),U(Mt,{key:1},[v("div",kBi,[O(T)]),v("div",{class:Ne(["bimdata-models__header__number bimdata-info-length",{"bimdata-models__header__number--empty":u.value.length===0}])},[v("span",null,X(u.value.length),1)],2),v("div",TBi,[p.value.length===0?(D(),U("span",EBi,X(I.$t("model.no_model")),1)):u.value.length===0?(D(),U("span",zBi,X(I.$t("model.no_loaded_model")),1)):u.value.length===1?(D(),oe(P,{key:2,text:c.value[0].name,tooltip:!Z},null,8,["text","tooltip"])):u.value.length>1?(D(),U("span",PBi,X(I.$t("model.selected_models")),1)):be("",!0)])],64))])]),element:J(({element:Z,close:G})=>[v("div",{class:"bimdata-models__model",onMousemove:_=>t.preview&&w(Z,_),onMouseout:j[0]||(j[0]=_=>t.preview&&w()),onClick:()=>{!h.value&&!g(Z.id)&&G()}},[h.value?(D(),oe(S,{key:0,"model-value":g(Z.id)||C(Z),disabled:Z.status!=="C"||d.value.length>0},null,8,["model-value","disabled"])):(D(),oe(k,{key:1,"model-value":g(Z.id)||C(Z),disabled:Z.status!=="C"||d.value.length>0},null,8,["model-value","disabled"])),O(R,{margin:"0 calc(var(--spacing-unit) / 2)",name:L(Z.status),size:"xs",class:Ne({"fill-success":Z.status==="C","fill-high":Z.status==="E"})},null,8,["name","class"]),O(P,{class:Ne({"bimdata-models__model__name":!0,"bimdata-models__model__name--disabled":Z.status!=="C"||d.value.length>0}),text:Z.name,width:`calc(100% -
1870
+ `),onMouseenter:e[0]||(e[0]=(...h)=>o.onMouseEnter&&o.onMouseEnter(...h)),onMouseleave:e[1]||(e[1]=(...h)=>o.onMouseLeave&&o.onMouseLeave(...h))},[O(s,{ref:"modalManagerTemplateRef"},null,512),v("div",Fzi,[o.windowPlugins.leftSidePanel?(D(),oe(a,{key:0,plugin:o.windowPlugins.leftSidePanel},null,8,["plugin"])):be("",!0),v("div",Yzi,[(D(!0),U(Mt,null,ii(o.windowPlugins.free,h=>(D(),oe(l,{key:h.name,class:Ne({"window-container__content__center__viewer":h.isViewer}),plugin:h},null,8,["class","plugin"]))),128)),O(c,{position:"left",plugins:o.windowPlugins.leftButtonColumn},null,8,["plugins"]),O(c,{position:"right",plugins:o.windowPlugins.rightButtonColumn},null,8,["plugins"])]),o.windowPlugins.rightSidePanel?(D(),oe(a,{key:1,plugin:o.windowPlugins.rightSidePanel},null,8,["plugin"])):be("",!0)]),o.loading?(D(),U("div",Qzi,[o.spinner&&o.spinner.component?(D(),oe(hr(o.spinner.component),Pu(ja({key:0},o.spinner.props)),null,16)):(D(),oe(u,{key:1,size:"20px",border:"3px"}))])):be("",!0),o.layoutSettingsDisplayed?(D(),U("div",Gzi,[O(d)])):be("",!0)],36)}const Vzi=W(Uzi,[["render",Hzi]]);class Zzi{constructor(e=!0){const i=SEi(_Q,null,{resizable:e});i.registerContent("default",Vzi),this.settings=Cn({edit:!1,swap:!1,full:!1}),this.areas=i}get resizable(){return this.areas.resizable}set resizable(e){this.areas.resizable=e}apply(e=null){this.areas.layout=e?kEi(e):null}copy(e){return TEi(this.areas.layout,e)}open({ratio:e,direction:i,insertAfter:o,windowName:r=null,windowState:n=null,localContextId:s=null}={}){const a=r?{options:{windowName:r,windowState:n}}:null;return s===null?this.areas.splitLayout(e,i,o,a):this.areas.split(s,e,i,o,a)}swap(e,i){return this.areas.swap(e,i)}close(e){return this.areas.delete(e)}}const Jzi="@bimdata/viewer",Wzi="module",Kzi="2.4.0-beta.8",_zi="A customizable BIM viewer.",qzi=["bim","viewer","bimdata","ifc","bcf"],Xzi="./index.d.ts",$zi="BIMData.io",ePi="https://developers.bimdata.io/viewer/index.html",tPi={email:"support@bimdata.io"},iPi=["last 2 chrome version","last 2 firefox version"],oPi="dist/bimdata-viewer.esm.min.js",rPi="dist/bimdata-viewer.esm.min.js",sPi={build:"vite build && esbuild dist/bimdata-viewer.esm.min.js --minify --outfile=dist/bimdata-viewer.esm.min.js --allow-overwrite","build:split":"vite build -c vite.config.split.js && esbuild dist/bimdata-viewer-split.esm.min.js --minify --outfile=dist/bimdata-viewer-split.esm.min.js --allow-overwrite","cy:run":"cypress run","cy:open":"cypress open",dev:"vite",prebuild:"rm -rf dist",prepublishOnly:"npm run build","semantic-release":"semantic-release",serve:"http-server -c-1 --silent",test:"npm run test:unit & npm run build & npm run test:e2e","test:unit":"jest","test:e2e":"start-server-and-test 'npm run serve -- -p 8080' http://localhost:8080 cy:run","test:e2e-dev":"start-server-and-test 'npm run serve -- -p 8080' http://localhost:8080 cy:open",version:"echo $npm_package_version",ts:"tsc"},nPi=["dist/*","types/*","CHANGELOG.md","README.md","package.json","package-lock.json","index.d.ts"],aPi={"@babel/preset-env":"^7.24.4","@bimdata/2d-engine":"2.4.0","@bimdata/areas-next":"0.1.15","@bimdata/bcf-components":"6.2.1","@bimdata/components":"1.5.0","@bimdata/design-system":"2.1.0-rc.24","@bimdata/typescript-fetch-api-client":"10.1.0","@eslint/eslintrc":"^3.1.0","@eslint/js":"^9.5.0","@rollup/plugin-alias":"5.1.0","@rollup/plugin-babel":"^6.0.4","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-image":"^3.0.3","@rollup/plugin-replace":"^5.0.5","@semantic-release/changelog":"^6.0.3","@semantic-release/commit-analyzer":"^12.0.0","@semantic-release/git":"^10.0.1","@semantic-release/github":"^10.0.3","@semantic-release/npm":"^12.0.0","@semantic-release/release-notes-generator":"^13.0.0","@vitejs/plugin-vue":"4.6.2","@vue/vue3-jest":"^29.2.6","@xeokit/xeokit-sdk":"git+https://git@github.com/Amoki/xeokit-sdk.git#27e95db2e157215e870f7125bd28b258dee699a9","@zip.js/zip.js":"^2.7.41",async:"^3.2.5",autoprefixer:"^10.4.19","babel-core":"^7.0.0-bridge.0","babel-jest":"^29.7.0","conventional-changelog-eslint":"^5.0.0",cypress:"^13.7.3",esbuild:"^0.20.2",eslint:"9.5.0","eslint-config-prettier":"9.1.0","eslint-plugin-cypress":"2.15.2","eslint-plugin-jest":"28.6.0","eslint-plugin-prettier":"5.1.3","eslint-plugin-vue":"9.26.0","form-data":"^4.0.0",globals:"^15.6.0",html2canvas:"1.4.1","http-server":"^14.1.1",jest:"^29.7.0","jest-environment-jsdom":"^29.7.0","jest-extended":"^4.0.2",jspdf:"^2.5.1",lodash:"^4.17.21","node-fetch":"^3.3.2",postcss:"^8.4.38",prettier:"^3.2.5",querystring:"^0.2.0",sass:"^1.75.0","semantic-release":"^23.0.8",sinon:"^17.0.1","start-server-and-test":"^2.0.3",vite:"4.5.3","vite-plugin-css-injected-by-js":"^3.5.0",vue:"3.4.23","vue-eslint-parser":"^9.4.2","vue-i18n":"^9.12.1"},lPi={name:Jzi,type:Wzi,version:Kzi,description:_zi,keywords:qzi,types:Xzi,author:$zi,homepage:ePi,bugs:tPi,browserslist:iPi,main:oPi,module:rPi,scripts:sPi,files:nPi,devDependencies:aPi};class cPi{constructor({plugins:e,api:i,ui:o,locale:r="fr"}){this.pluginManager=new qSi(e),this.windowManager=new $Si,this.windowManager.registerAndAddPluginsToWindows([...this.pluginManager.registeredPlugins.values()]),this.api=new zTi(i),this.globalContext=new Oye(this),this.state=WTi(this),this.shortcutManager=Y4e(this.state),this.uiSettings=o||{},this.i18n=new Pye(r),this._contextMenu=null,this.layout=new Zzi(this.uiSettings.resizable!==!1),this.localContext=null,window.$viewer=this}get version(){return lPi.version}get locale(){return this.i18n.locale}get contextMenu(){return this._contextMenu||U4e}set contextMenu(e){this._contextMenu=e}get registeredWindows(){return[...this.windowManager.registeredWindows.keys()]}get registeredPlugins(){return[...this.pluginManager.registeredPlugins.keys()]}get pluginsCfg(){return this.pluginManager.cfg}registerPlugin(e){this.pluginManager.registerPlugin(e),this.windowManager.registerAndAddPluginsToWindows([e])}}function uPi(t,e={}){e.backgroundColor&&(t.style.setProperty("--bimdata-viewer-background-color",e.backgroundColor),e.backgroundColor==="transparent"&&t.style.setProperty("--areas-separator-color","transparent")),e.colorPrimary&&t.style.setProperty("--color-primary",e.colorPrimary),e.colorPrimaryLighter&&t.style.setProperty("--color-primary-lighter",e.colorPrimaryLighter),e.colorPrimaryLight&&t.style.setProperty("--color-primary-light",e.colorPrimaryLight),e.colorPrimaryDark&&t.style.setProperty("--color-primary-dark",e.colorPrimaryDark),e.colorSecondary&&t.style.setProperty("--color-secondary",e.colorSecondary),e.colorSecondaryLighter&&t.style.setProperty("--color-secondary-lighter",e.colorSecondaryLighter),e.colorSecondaryLight&&t.style.setProperty("--color-secondary-light",e.colorSecondaryLight),e.colorSecondaryDark&&t.style.setProperty("--color-secondary-dark",e.colorSecondaryDark),e.colorSilverLight&&t.style.setProperty("--color-silver-light",e.colorSilverLight),e.colorSilver&&t.style.setProperty("--color-silver",e.colorSilver),e.colorSilverDark&&t.style.setProperty("--color-silver-dark",e.colorSilverDark),e.colorGraniteLight&&t.style.setProperty("--color-granite-light",e.colorGraniteLight),e.colorGranite&&t.style.setProperty("--color-granite",e.colorGranite),e.colorSuccess&&t.style.setProperty("--color-success",e.colorSuccess),e.colorSuccessLighter&&t.style.setProperty("--color-success-Lighter",e.colorSuccessLighter),e.colorSuccessLight&&t.style.setProperty("--color-success-Light",e.colorSuccessLight),e.colorSuccessDark&&t.style.setProperty("--color-success-Dark",e.colorSuccessDark),e.colorWarning&&t.style.setProperty("--color-warning",e.colorWarning),e.colorWarningLighter&&t.style.setProperty("--color-warning-Lighter",e.colorWarningLighter),e.colorWarningLight&&t.style.setProperty("--color-warning-Light",e.colorWarningLight),e.colorWarningDark&&t.style.setProperty("--color-warning-Dark",e.colorWarningDark),e.colorHigh&&t.style.setProperty("--color-high",e.colorHigh),e.colorHighLighter&&t.style.setProperty("--color-high-lighter",e.colorHighLighter),e.colorHighLight&&t.style.setProperty("--color-high-light",e.colorHighLight),e.colorHighDark&&t.style.setProperty("--color-high-dark",e.colorHighDark),e.colorText&&t.style.setProperty("--color-text",e.colorText),(!e.backgroundColor||e.backgroundColor!=="transparent")&&t.style.setProperty("--areas-separator-color","rgba(216, 216, 216, 1)"),e.headerHeight!=null&&t.style.setProperty("--bimdata-viewer-header-height",e.headerHeight),t.style.setProperty("--areas-background-color","transparent")}const dPi=Object.freeze({25:"GUEST",50:"USER",100:"ADMIN"}),lf=Object.freeze({READ:"read",WRITE:"write"});function Xhe(t){const e={};return t.forEach(i=>{const[o,r]=i.split(":");e[o]?e[o].push(r):e[o]=[r]}),e}const hPi={token_scopes:[],usable_scopes:[],user_role:25};function $he(t=hPi){var e,i,o,r,n,s;const a=Xhe(t.token_scopes),l=Xhe(t.usable_scopes);return{...pJ(t),tokenScopes:a,usableScopes:l,userRole:dPi[t.user_role],user:t.user?pJ(t.user):null,hasBcfReadPermission:((e=l.bcf)==null?void 0:e.includes(lf.READ))??!1,hasBcfWritePermission:((i=l.bcf)==null?void 0:i.includes(lf.WRITE))??!1,hasModelReadPermission:((o=l.model)==null?void 0:o.includes(lf.READ))??!1,hasModelWritePermission:((r=l.model)==null?void 0:r.includes(lf.WRITE))??!1,hasDocReadPermission:((n=l.document)==null?void 0:n.includes(lf.READ))??!1,hasDocWritePermission:((s=l.document)==null?void 0:s.includes(lf.WRITE))??!1}}const pPi={BcfFilters:{filtersButton:"Filter",filtersTitle:"Filter",priorityLabel:"Priorit\xE4t",statusLabel:"Status",assignedToLabel:"Zugewiesen an",creatorsLabel:"Erstellt von",tagsLabel:"Tags",resetButton:"Zur\xFCcksetzen",searchButton:"Suchen",undefined:"Nicht definiert",datePlaceholder:"Erstellungsdatum"},BcfSettings:{goBackButton:"Zur\xFCck",title:"BCF-Parameter",text:"Erstellen, f\xFCllen und listen Sie die BCF-Einstellungen auf, die Sie f\xFCr dieses Projekt haben m\xF6chten.",validateButton:"Die BCF-Parameter anerkennen"},BcfStatistics:{emptyText:"F\xFCgen Sie Fragen hinzu, um zugeh\xF6rige Statistiken hier anzuzeigen.",issues:"Probleme",extension:{Priority:"Priorit\xE4t",PriorityNotDefined:"Keine Priorit\xE4t",PriorityTitle:"Priorit\xE4ten",Status:"Status",StatusNotDefined:"Kein Status",StatusTitle:"Status"}},BcfTopicCard:{priority:"Priorit\xE4t:",noPriority:"Keine",assignedTo:"Zugewiesen an :",elements:"Elemente",notSpecified:"Nicht definiert",see:"Anzeigen"},BcfTopicCreationCard:{text:"Ein neues BCF-Thema erstellen",createBcfSideTitle:"Ein Problem melden"},BcfTopicForm:{dragDropImageText:"Bitte w\xE4hlen Sie eine Datei aus.",addObjectButton:"Objekt",addAnnotationButton:"Annotation",annotationButtonTooltip:"Zu diesem Thema gibt es derzeit keine Ansichten.",addPictureButton:"F\xFCgen Sie ein Bild hinzu.",titlePlaceholder:"Titel *",titleErrorMessage:"Titel fehlt",typeLabel:"Typ",priorityLabel:"Priorit\xE4t",statusLabel:"Status",stageLabel:"Phase",assignedToLabel:"Zugewiesen an",dueDateLabel:"F\xE4lligkeitsdatum (TT.MM.JJJJ)",descriptionLabel:"Beschreibung",labelsLabel:"Tags",createButton:"Best\xE4tigen",updateButton:"\xC4nderungen \xFCbernehmen",modalText:"Sie sind dabei, die Bearbeitung der Ausgabe {Name} zu beenden, aber es gibt noch ungespeicherte \xC4nderungen.",cancelButton:"\xC4nderungen verwerfen",continueButton:"\xC4nderungen fortsetzen",createTitle:"Ein Problem melden",dragDropImageTextTablet:"Foto machen",takeSnapshot:"Mach einen Schnappschuss",importFile:"Eine Datei importieren",searchPlaceholder:"Suchen",emptySearch:"kein Ergebnis"},BcfTopicOverview:{openViewer:"Im Viewer \xF6ffnen",openViewerNoModels:"Es sind keine Vorlagen zur Ansicht bereit",elements:"{count} Elemente",noElements:"kein Element",type:"Typ",noTypeSpecified:"Kein Typ angegeben",description:"Beschreibung",noDescriptionProvided:"Keine Beschreibung angegeben",assignedTo:"Zugeteilt an",notAssigned:"Nicht zugewiesen",dueDate:"F\xE4lligkeitsdatum",noDueDate:"Kein F\xE4lligkeitsdatum",informations:"Informationen",status:"Status",noStatusSpecified:"Kein Status angegeben",stage:"Phase",noStageProvided:"Keine Phase angegeben",priority:"Priorit\xE4t",priorityNotDefined:"Nicht definiert",tags:"Tags",noTags:"Keine Tags",commentButton:"Ein Kommentar ver\xF6ffentlichen",deleteText:"Sie l\xF6schen jetzt {Name}",deleteBcfButton:"Dieses BCF l\xF6schen",keepBcfButton:"Dieses BCF beibehalten",author:"Autor"},BcfTopicsTable:{headers:{index:"#",priority:"Priorit\xE4t",status:"Status",title:"Titel",creator:"Autor",date:"Datum"}},BcfTopicActionsCell:{seeButton:"Anzeigen"},BcfTopicComments:{commentButton:"Ein Kommentar verfassen",commentLabel:"Ein Kommentar verfassen",commentText:"Kommentar",cancelButton:"Abbrechen",publishButton:"Ver\xF6ffentlichen",commentsText:"Kommentare",deleteCommentText:"Diesen Kommentar l\xF6schen?",deleteButton:"L\xF6schen",takeSnapshot:"Mach einen Schnappschuss"},BcfTopicPriorityCell:{noPriority:"Keine"},SettingCard:{addButton:"ein Element hinzuf\xFCgen",cancelButton:"Abbrechen",validateButton:"Best\xE4tigen",deleteExtensionText:"Diesen Parameter l\xF6schen",deleteButton:"L\xF6schen",title:{Priority:"Priorit\xE4ten",Label:"Tags",Status:"Status",Type:"Typen",Stage:"Phasen"},input:{Priority:"Eine neue Priorit\xE4t hinzuf\xFCgen",Label:"Ein neues Etikett hinzuf\xFCgen",Status:"Einen neuen Status hinzuf\xFCgen",Type:"Einen neuen Typ hinzuf\xFCgen",Stage:"Eine neue Phase hinzuf\xFCgen"},text:{Priority:"Liste der Priorit\xE4ten",Label:"Liste von Tags",Status:"Liste der Status",Type:"Liste der Typen",Stage:"Liste der Phasen"}}},APi={BcfComponents:pPi},gPi={BcfFilters:{filtersButton:"Filters",filtersTitle:"Filters",priorityLabel:"Priority",statusLabel:"Status",assignedToLabel:"Assigned to",creatorsLabel:"Created by",tagsLabel:"Tags",resetButton:"Reset",searchButton:"Search",undefined:"Not defined",datePlaceholder:"Creation date"},BcfSettings:{goBackButton:"Back",title:"BCF Settings",text:"Create, enter in, and list the BCF settings you would like to have for this project",validateButton:"Validate BCF settings"},BcfStatistics:{emptyText:"Add BCF Topics to start to have some stats here.",issues:"issues",extension:{Priority:"Priority",PriorityNotDefined:"No priority",PriorityTitle:"Priorities",Status:"Status",StatusNotDefined:"No status",StatusTitle:"Status"}},BcfTopicCard:{priority:"Priority: ",noPriority:"None",assignedTo:"Assigned to: ",elements:"Elements",notSpecified:"Not specified",see:"See"},BcfTopicCreationCard:{text:"Create a new BCF topic",createBcfSideTitle:"Report a problem"},BcfTopicForm:{dragDropImageText:"Please select a file",addObjectButton:"Object",addAnnotationButton:"Annotation",annotationButtonTooltip:"This topic has no viewpoint",addPictureButton:"Add a picture",titlePlaceholder:"Title *",titleErrorMessage:"Missing title",typeLabel:"Type",priorityLabel:"Priority",statusLabel:"Status",stageLabel:"Stage",assignedToLabel:"Assigned to",dueDateLabel:"Due date",descriptionLabel:"Description",labelsLabel:"Tags",createButton:"Validate",updateButton:"Modify this BCF",modalText:"You are about to quit editing issue {name} but there are unsaved changes.",cancelButton:"Discard changes",continueButton:"Continue editing",createTitle:"Report a problem",dragDropImageTextTablet:"Take a picture",takeSnapshot:"Take a snapshot",importFile:"Import a file",searchPlaceholder:"Search",emptySearch:"No result"},BcfTopicOverview:{openViewer:"Open in viewer",openViewerNoModels:"No model to open",elements:"{count} Elements",noElements:"No element",type:"Type",noTypeSpecified:"No type specified",description:"Description",noDescriptionProvided:"No description provided",assignedTo:"Assigned to",notAssigned:"Not assigned",dueDate:"Due date",noDueDate:"No due date",informations:"Informations",status:"Status",noStatusSpecified:"No status specified",stage:"Stage",noStageProvided:"No stage provided",priority:"Priority",priorityNotDefined:"Not defined",tags:"Tags",noTags:"No tags",commentButton:"Post a comment",deleteText:"You are about to delete {name}",deleteBcfButton:"Delete this BCF",keepBcfButton:"Keep this BCF",author:"Author"},BcfTopicsTable:{headers:{index:"#",priority:"Priority",status:"Status",title:"Title",creator:"Author",date:"Date"}},BcfTopicActionsCell:{seeButton:"See"},BcfTopicComments:{commentButton:"Post a comment",commentLabel:"Post a comment",commentText:"Comment",cancelButton:"Cancel",publishButton:"Publish",commentsText:"Comments",deleteCommentText:"Delete this comment ?",deleteButton:"Delete",takeSnapshot:"Take a snapshot"},BcfTopicPriorityCell:{noPriority:"None"},SettingCard:{addButton:"add an element",cancelButton:"Cancel",validateButton:"Validate",deleteExtensionText:"Remove this setting",deleteButton:"Delete",title:{Priority:"Priorities",Label:"Labels",Status:"Status",Type:"Types",Stage:"Stages"},input:{Priority:"Add a new priority",Label:"Add a new label",Status:"Add new status",Type:"Add a new type",Stage:"Add a new stage"},text:{Priority:"Priority list",Label:"Labels list",Status:"Status list",Type:"Type list",Stage:"Stage list"}}},MPi={BcfComponents:gPi},fPi={BcfFilters:{filtersButton:"Filtros",filtersTitle:"Filtros",priorityLabel:"Prioridad",statusLabel:"Estado",assignedToLabel:"Asignado a",creatorsLabel:"Creado por",tagsLabel:"Etiquetas:",resetButton:"Restablecer",searchButton:"Buscar en",undefined:"No definido",datePlaceholder:"Fecha de creaci\xF3n"},BcfSettings:{goBackButton:"Volver",title:"Par\xE1metros del BCF",text:"Cree, rellene y enumere los par\xE1metros del BCF que desea tener en este proyecto",validateButton:"Validar los par\xE1metros del BCF"},BcfStatistics:{emptyText:"A\xF1ada preguntas para ver las estad\xEDsticas asociadas aqu\xED.",issues:"problemas",extension:{Priority:"Prioridad",PriorityNotDefined:"Sin prioridad",PriorityTitle:"Prioridades",Status:"Estado",StatusNotDefined:"Sin estado",StatusTitle:"Estatutos"}},BcfTopicCard:{priority:"Prioridad :",noPriority:"Sin",assignedTo:"Asignado a :",elements:"Elementos",notSpecified:"No definido",see:"Ver"},BcfTopicCreationCard:{text:"Crear un nuevo tema BCF",createBcfSideTitle:"Informar de un problema"},BcfTopicForm:{dragDropImageText:"Seleccione un archivo",addObjectButton:"Objeto",addAnnotationButton:"Anotaci\xF3n",annotationButtonTooltip:"Actualmente este tema no posee ning\xFAn punto de vista",addPictureButton:"A\xF1adir una imagen",titlePlaceholder:"T\xEDtulo *",titleErrorMessage:"Falta el t\xEDtulo",typeLabel:"Tipo",priorityLabel:"Prioridad",statusLabel:"Estado",stageLabel:"Fase",assignedToLabel:"Asignado a",dueDateLabel:"Fecha de vencimiento (DD/MM/AAAA)",descriptionLabel:"Descripci\xF3n",labelsLabel:"Etiquetas",createButton:"Validar",updateButton:"Modificar este BCF",modalText:"Est\xE1 a punto de salir de la edici\xF3n del problema de {name} pero hay cambios sin guardar.",cancelButton:"Cancelar los cambios",continueButton:"Continuar con los cambios",createTitle:"Informar de un problema",dragDropImageTextTablet:"Tomar una fotograf\xEDa",takeSnapshot:"Tomar un snapshot",importFile:"Importar un archivo",searchPlaceholder:"Buscar",emptySearch:"No hay resultados"},BcfTopicOverview:{openViewer:"Abrir en el visor",openViewerNoModels:"No hay ning\xFAn modelo listo para la visualizaci\xF3n",elements:"{count} Elementos",noElements:"Ning\xFAn elemento",type:"Tipo",noTypeSpecified:"No se especifica el tipo",description:"Descripci\xF3n",noDescriptionProvided:"No hay descripci\xF3n",assignedTo:"Asignado a",notAssigned:"No asignado",dueDate:"Plazo",noDueDate:"Sin fecha de vencimiento",informations:"Informaci\xF3n",status:"Estado",noStatusSpecified:"No se especifica el estado",stage:"Fase",noStageProvided:"No se indica ninguna fase",priority:"Prioridad",priorityNotDefined:"No definido",tags:"Etiquetas",noTags:"Sin etiquetas",commentButton:"Publicar un comentario",deleteText:"Est\xE1s a punto de borrar {name}",deleteBcfButton:"Borrar este BCF",keepBcfButton:"Mantenga este BCF",author:"Autor"},BcfTopicsTable:{headers:{index:"#",priority:"Prioridad",status:"Estado",title:"T\xEDtulo",creator:"Autor",date:"Fecha"}},BcfTopicActionsCell:{seeButton:"Ver"},BcfTopicComments:{commentButton:"Publicar un comentario",commentLabel:"Publicar un comentario",commentText:"Comentario",cancelButton:"Cancelar",publishButton:"Publicar",commentsText:"comentarios",deleteCommentText:"\xBFBorrar este comentario?",deleteButton:"Borrar",takeSnapshot:"Tomar un snapshot"},BcfTopicPriorityCell:{noPriority:"Sin"},SettingCard:{addButton:"a\xF1adir un elemento",cancelButton:"Cancelar",validateButton:"Validar",deleteExtensionText:"Borrar esta configuraci\xF3n",deleteButton:"Borrar",title:{Priority:"Prioridades",Label:"Etiquetas:",Status:"Estatutos",Type:"Tipos",Stage:"Fases"},input:{Priority:"A\xF1adir una nueva prioridad",Label:"A\xF1adir una nueva etiqueta",Status:"A\xF1adir un nuevo estado",Type:"A\xF1adir un nuevo tipo",Stage:"A\xF1adir una nueva fase"},text:{Priority:"Lista de prioridades",Label:"Lista de etiquetas",Status:"Lista de estatutos",Type:"Lista de tipos",Stage:"Lista de fases"}}},wPi={BcfComponents:fPi},LPi={BcfFilters:{filtersButton:"Filtres",filtersTitle:"Filtres",priorityLabel:"Priorit\xE9",statusLabel:"Statut",assignedToLabel:"Assign\xE9 \xE0",creatorsLabel:"Cr\xE9\xE9 par",tagsLabel:"Tags",resetButton:"R\xE9initialiser",searchButton:"Rechercher",undefined:"Non d\xE9fini",datePlaceholder:"Date de cr\xE9ation"},BcfSettings:{goBackButton:"Retour",title:"Param\xE8tres BCF",text:"Cr\xE9ez, renseignez et listez les param\xE8tres BCF que vous souhaitez avoir sur ce projet",validateButton:"Valider les param\xE8tres BCF"},BcfStatistics:{emptyText:"Ajoutez des questions pour voir les statistiques associ\xE9es ici.",issues:"probl\xE8mes",extension:{Priority:"Priorit\xE9",PriorityNotDefined:"Aucune priorit\xE9",PriorityTitle:"Priorit\xE9s",Status:"Statut",StatusNotDefined:"Aucun statut",StatusTitle:"Statuts"}},BcfTopicCard:{priority:"Priorit\xE9 : ",noPriority:"Aucune",assignedTo:"Assign\xE9 \xE0 : ",elements:"{n} \xC9lements",notSpecified:"Non d\xE9fini",see:"Voir"},BcfTopicCreationCard:{text:"Cr\xE9er un nouveau topic BCF",createBcfSideTitle:"Signaler un probl\xE8me"},BcfTopicForm:{dragDropImageText:"Veuillez s\xE9lectionner un fichier",addObjectButton:"Objet",addAnnotationButton:"Annotation",annotationButtonTooltip:"Ce topic ne poss\xE8de actuellement aucun point de vue",addPictureButton:"Ajouter une image",titlePlaceholder:"Titre *",titleErrorMessage:"Titre manquant",typeLabel:"Type",priorityLabel:"Priorit\xE9",statusLabel:"Statut",stageLabel:"Phase",assignedToLabel:"Assign\xE9 \xE0",dueDateLabel:"Date d'\xE9ch\xE9ance",descriptionLabel:"Description",labelsLabel:"Tags",createButton:"Valider",updateButton:"Modifier ce BCF",modalText:"Vous \xEAtes sur le point de quitter l'\xE9dition de l'issue {name} mais il y'a des modifications non enregistr\xE9es.",cancelButton:"Annuler les modifications",continueButton:"Continuer les modifications",createTitle:"Signaler un probl\xE8me",dragDropImageTextTablet:"Prendre une photo",takeSnapshot:"Prendre un snapshot",importFile:"Importer un fichier",searchPlaceholder:"Rechercher",emptySearch:"Pas de r\xE9sultat"},BcfTopicOverview:{openViewer:"Ouvrir dans le viewer",openViewerNoModels:"Il n'y a aucun mod\xE8le pr\xEAt pour une visualisation",elements:"{count} \xC9lements",noElements:"Aucun \xE9l\xE9ment concern\xE9",type:"Type",noTypeSpecified:"Pas de type sp\xE9cifi\xE9",description:"Description",noDescriptionProvided:"Pas de description renseign\xE9e",assignedTo:"Assign\xE9 \xE0",notAssigned:"Non assign\xE9",dueDate:"\xC9ch\xE9ance",noDueDate:"Pas de date d'\xE9ch\xE9ance",informations:"Informations",status:"Statut",noStatusSpecified:"Pas de statut sp\xE9cifi\xE9",stage:"Phase",noStageProvided:"Pas de phase renseign\xE9e",priority:"Priorit\xE9",priorityNotDefined:"Non d\xE9fini",tags:"Tags",noTags:"Pas de tags",commentButton:"Poster un commentaire",deleteText:"Vous \xEAtes sur le point de supprimer {name}",deleteBcfButton:"Supprimer ce BCF",keepBcfButton:"Conserver ce BCF",author:"Auteur"},BcfTopicsTable:{headers:{index:"#",priority:"Priorit\xE9",status:"Statut",title:"Titre",creator:"Auteur",date:"Date"}},BcfTopicActionsCell:{seeButton:"Voir"},BcfTopicComments:{commentButton:"Poster un commentaire",commentLabel:"Poster un commentaire",commentText:"Commentaire",cancelButton:"Annuler",publishButton:"Publier",commentsText:"commentaires",deleteCommentText:"Supprimer ce commentaire ?",deleteButton:"Supprimer",takeSnapshot:"Prendre un snapshot"},BcfTopicPriorityCell:{noPriority:"Aucune"},SettingCard:{addButton:"ajouter un \xE9l\xE9ment",cancelButton:"Annuler",validateButton:"Valider",deleteExtensionText:"Supprimmer ce param\xE8tre",deleteButton:"Supprimer",title:{Priority:"Priorit\xE9s",Label:"Tags",Status:"Statuts",Type:"Types",Stage:"Phases"},input:{Priority:"Ajouter une nouvelle priorit\xE9",Label:"Ajouter un nouveau label",Status:"Ajouter un nouveau statut",Type:"Ajouter un nouveau type",Stage:"Ajouter une nouvelle phase"},text:{Priority:"Liste des priorit\xE9s",Label:"Liste des tags",Status:"Liste des statuts",Type:"Liste des types",Stage:"Liste des phases"}}},mPi={BcfComponents:LPi},yPi={BcfFilters:{filtersButton:"Filtri",filtersTitle:"Filtri",priorityLabel:"Priorit\xE0",statusLabel:"Stato",datePlaceholder:"Data di creazione",assignedToLabel:"Assegnato a",creatorsLabel:"Creato da",tagsLabel:"Etichette",resetButton:"Ripristina",searchButton:"Cerca",undefined:"Non definito"},BcfSettings:{goBackButton:"Indietro",title:"Parametri BCF",text:"Creare, notificare e elencare i parametri BCF che si desidera avere su questo progetto",validateButton:"Conferma i parametri BCF"},BcfStatistics:{emptyText:"Aggiungi delle domande per vedere le statistiche associate qui.",issues:"problemi",extension:{Priority:"Priorit\xE0",PriorityNotDefined:"Nessuna priorit\xE0",PriorityTitle:"Priorit\xE0",Status:"Stato",StatusNotDefined:"Nessuno stato",StatusTitle:"Stati"}},BcfTopicCard:{priority:"Priorit\xE0:",noPriority:"Nessuno",assignedTo:"Assegnato a:",elements:"Elementi",noElements:"0 elementi",notSpecified:"Non definito",see:"Visualizza"},BcfTopicCreationCard:{text:"Crea un nuovo topic BCF",createBcfSideTitle:"Segnala un problema"},BcfTopicForm:{dragDropImageText:"Selezionare un file",addObjectButton:"Oggetto",addAnnotationButton:"Annotazione",annotationButtonTooltip:"Attualmente questo argomento non presenta alcun punto di vista",addPictureButton:"Aggiungere un'immagine",titlePlaceholder:"Titolo *",titleErrorMessage:"Titolo mancante",typeLabel:"Tipo",priorityLabel:"Priorit\xE0",statusLabel:"Stato",stageLabel:"Fase",assignedToLabel:"Assegnato a",dueDateLabel:"Data di scadenza",descriptionLabel:"Descrizione",labelsLabel:"Tag",createButton:"Conferma",updateButton:"Modificare questo BCF",modalText:"State per abbandonare la modifica di {name} ma ci sono modifiche non salvate.",cancelButton:"Annullare le modifiche",continueButton:"Continuare le modifiche",createTitle:"Segnala un problema"},BcfTopicOverview:{openViewer:"Apri nel visualizzatore",openViewerNoModels:"Non esistono modelli pronti per la visualizzazione",elements:"{count} Elementi",noElements:"Nessun elemento",type:"Tipo",noTypeSpecified:"Nessun tipo specificato",description:"Descrizione",noDescriptionProvided:"Nessuna descrizione inserita",assignedTo:"Assegnato a",notAssigned:"Non assegnato",dueDate:"Scadenza",noDueDate:"Nessuna data di scadenza",informations:"Informazioni",status:"Stato",noStatusSpecified:"Nessuno stato specificato",stage:"Fase",noStageProvided:"Nessuna fase inserita",priority:"Priorit\xE0",priorityNotDefined:"Non definita",tags:"Etichette",noTags:"Nessuna etichetta",commentButton:"Pubblica un commento",deleteText:"Stai per eliminare {name}",deleteBcfButton:"Elimina questo BCF",keepBcfButton:"Conserva questo BCF",author:"Autore"},BcfTopicsTable:{headers:{index:"#",priority:"Priorit\xE0",status:"Stato",title:"Titolo",creator:"Autore",date:"Data"}},BcfTopicActionsCell:{seeButton:"Visualizza"},BcfTopicComments:{commentButton:"Pubblica un commento",commentLabel:"Pubblica un commento",commentText:"Commento",cancelButton:"Annulla",publishButton:"Pubblica",commentsText:"commenti",deleteCommentText:"Eliminare questo commento?",deleteButton:"Elimina"},BcfTopicPriorityCell:{noPriority:"Nessuno"},SettingCard:{addButton:"aggiungi un elemento",cancelButton:"Annulla",validateButton:"Conferma",deleteExtensionText:"Elimina questo parametro",deleteButton:"Elimina",title:{Priority:"Priorit\xE0",Label:"Etichette",Status:"Stati",Type:"Tipi",Stage:"Fasi"},input:{Priority:"Aggiungi una nuova priorit\xE0",Label:"Aggiungi una nuova etichetta",Status:"Aggiungi un nuovo stato",Type:"Aggiungi un nuovo tipo",Stage:"Aggiungi una nuova fase"},text:{Priority:"Elenco delle priorit\xE0",Label:"Elenco delle etichette",Status:"Elenco degli stati",Type:"Elenco dei tipi",Stage:"Elenco delle fasi"}}},vPi={BcfComponents:yPi},CPi={de:APi,en:MPi,es:wPi,fr:mPi,it:vPi},IPi=({apiClient:t,fetchUsers:e,i18nPlugin:i}={})=>({install(o){t?Yo.setup({apiClient:t,fetchUsers:e}):console.error("[BCF Components Plugin] No api client provided. You must provide an api client for the components to work properly."),i?Object.entries(CPi).forEach(([r,n])=>{i.global.mergeLocaleMessage(r,n)}):console.warn("[BCF Components Plugin] No i18n instance provided. You should either provide an i18n instance or define your own translations in order have text displayed properly."),Object.entries(nje).forEach(([r,n])=>{o.component(r,n)})}}),jPi={title:"Building Maker",back:"Zur\xFCck",list:{text:"Erstellen und bearbeiten Sie die Etagen und laden Sie anschlie\xDFend Ihre PDFs herunter.",createButton:"Neues Projekt",updateButton:"Umbenennen",deleteButton:"L\xF6schen"},form:{text:"Erstellen und bearbeiten Sie die Etagen und laden Sie anschlie\xDFend Ihre PDFs herunter.",input:"Name des Geb\xE4udes",error:"Ung\xFCltiger Name",createButton:"Erstellen",updateButton:"Best\xE4tigen"},storeys:{addStoreyButton:"Etage",addFileButton:"Grundriss",closeButton:"Fertigstellen",submitFilesButton:"Best\xE4tigen"},storeyForm:{title:"Neue Etage",input:"Name",error:"Ung\xFCltiger Name",cancelButton:"Abbrechen",submitButton:"Best\xE4tigen"}},bPi={creationFormTitle:"Ordner erstellen",renameFormPlaceholder:"Datei- / Ordnernam",nameInputPlaceholder:"Ordnername",emptyFolder:"Dieser Ordner ist leer",newFolderSuccess:"Neuer Ordner erstellt",renameFolderSuccess:"Umbenannter Ordner",deleteFolderSuccess:"Ordner gel\xF6scht",newFileSuccess:"Datei hinzugef\xFCgt",renameFileSuccess:"Umbenannte Datei",deleteFileSuccess:"Datei gel\xF6scht",nameInputErrorMessage:"Ung\xFCltiger name",cancel:"Abbrechen",submit:"Best\xE4tigen",buttonText:"Neuer Ordner",addFileButtonText:"Datei laden",rename:"Umbenennen",view:"Sehen",download:"Herunterladen",delete:"L\xF6schen",deleteTitle:"Dateien l\xF6schen",deleteDetail:"Sie sind im Begriff, die folgenden Dateien / Ordner endg\xFCltig zu l\xF6schen"},xPi={BuildingMaker:jPi,FileManager:bPi},DPi={title:"Building",back:"Back",list:{text:"Create and edit the layers, then download your PDFs.",createButton:"New project",updateButton:"Rename",deleteButton:"Delete"},form:{text:"Create and edit the layers, then download your PDFs.",input:"Building name",error:"Invalid",createButton:"Create",updateButton:"Confirm"},storeys:{addStoreyButton:"Storey",addFileButton:"Plan",closeButton:"Finish",submitFilesButton:"Validate"},storeyForm:{title:"New storey",input:"Name",error:"Invalid name",cancelButton:"Cancel",submitButton:"Validate"}},NPi={creationFormTitle:"Create folder",renameFormPlaceholder:"Folder/File name",nameInputPlaceholder:"Folder name",emptyFolder:"This folder is empty",newFolderSuccess:"New folder created",renameFolderSuccess:"Folder renamed",deleteFolderSuccess:"Folder deleted",newFileSuccess:"File added",renameFileSuccess:"File renamed",deleteFileSuccess:"File deleted",nameInputErrorMessage:"Invalid name",cancel:"Cancel",submit:"Submit",buttonText:"New folder",addFileButtonText:"Upload a file",rename:"Rename",view:"View",download:"Download",delete:"Delete",deleteTitle:"Deleting Files",deleteDetail:"You are about to permanently delete the following files / folders",dmsRoot:"Root of the project's DMS",validate:"Validate",back:"Back",pdfPageSelectorTitle:"Select a page"},SPi={title:"Meta-Building Structure",tab:{structure:"Structure",zones:"Zones",equipments:"Equipments"},StoreySelector:{placeholder:"Select a storey"},StructureView:{search:"Search"}},kPi={BuildingMaker:DPi,FileManager:NPi,MetaBuildingStructure:SPi},TPi={title:"Building Maker",back:"Vuelta",list:{text:"Cree y edite los pisos despu\xE9s cargue los PDF.",createButton:"Nuevo proyecto",updateButton:"Renombrar",deleteButton:"Suprimir"},form:{text:"Cree y edite los pisos despu\xE9s cargue los PDF.",input:"Nombre del edificio",error:"Nombre no v\xE1lido",createButton:"Crear",updateButton:"Validar"},storeys:{addStoreyButton:"Piso",addFileButton:"Plano",closeButton:"Terminar",submitFilesButton:"Validar"},storeyForm:{title:"Nuevo piso",input:"Nombre",error:"Nombre no v\xE1lido",cancelButton:"Anular",submitButton:"Validar"}},EPi={creationFormTitle:"Crear un archivo",renameFormPlaceholder:"Nombre de archivo / carpeta",nameInputPlaceholder:"Nombre de la carpeta",emptyFolder:"Esta carpeta est\xE1 vac\xEDa",newFolderSuccess:"Nueva carpeta creada",renameFolderSuccess:"Carpeta renombrada",deleteFolderSuccess:"Carpeta eliminada",newFileSuccess:"Archivo agregado",renameFileSuccess:"Archivo renombrado",deleteFileSuccess:"Archivo eliminado",nameInputErrorMessage:"Nombre inv\xE1lida",cancel:"Cancelar",submit:"Validar",buttonText:"Carpeta nueva",addFileButtonText:"Cargar un archivo",rename:"Renombrar",view:"Ver",download:"Descargar",delete:"Borrar",deleteTitle:"Eliminar archivos",deleteDetail:"Est\xE1 a punto de eliminar permanentemente los siguientes archivos / carpetas"},zPi={BuildingMaker:TPi,FileManager:EPi},PPi={title:"Building Maker",back:"Retour",list:{text:"Cr\xE9ez et \xE9ditez les \xE9tages puis t\xE9l\xE9chagez vos PDF.",createButton:"Nouveau projet",updateButton:"Renommer",deleteButton:"Supprimer"},form:{text:"Cr\xE9ez et \xE9ditez les \xE9tages puis t\xE9l\xE9chagez vos PDF.",input:"Nom du b\xE2timent",error:"Nom invalide",createButton:"Cr\xE9er",updateButton:"Valider"},storeys:{addStoreyButton:"\xC9tage",addFileButton:"Plan",closeButton:"Terminer",submitFilesButton:"Valider"},storeyForm:{title:"Nouvel \xE9tage",input:"Nom",error:"Nom invalide",cancelButton:"Annuler",submitButton:"Valider"}},BPi={creationFormTitle:"Cr\xE9er un dossier",renameFormPlaceholder:"Nom du fichier/dosier",nameInputPlaceholder:"Nom du dossier",emptyFolder:"Ce dossier est vide",newFolderSuccess:"Nouveau dossier cr\xE9\xE9",renameFolderSuccess:"Dossier renomm\xE9",deleteFolderSuccess:"Dossier supprim\xE9",newFileSuccess:"Fichier ajout\xE9",renameFileSuccess:"Fichier renomm\xE9",deleteFileSuccess:"Fichier supprim\xE9",nameInputErrorMessage:"Nom invalide",cancel:"Annuler",submit:"Valider",buttonText:"Nouveau dossier",addFileButtonText:"Charger un fichier",rename:"Renommer",view:"Voir",download:"T\xE9l\xE9charger",delete:"Supprimer",deleteTitle:"Supression de fichiers",deleteDetail:"Vous \xEAtes sur le point de supprimer d\xE9finitivement les fichiers/dossiers suivants",dmsRoot:"Racine de la GED du projet",validate:"Valider",back:"Retour",pdfPageSelectorTitle:"S\xE9lectionner une page"},OPi={title:"Structure M\xE9ta-Building",tab:{structure:"Structure",zones:"Zones",equipments:"Equipements"},StoreySelector:{placeholder:"S\xE9lectionner un \xE9tage"},StructureView:{search:"Rechercher"}},RPi={BuildingMaker:PPi,FileManager:BPi,MetaBuildingStructure:OPi},UPi={title:"Building Maker",back:"Reso",list:{text:"Crea e modifica i piani e poi scarica i tuoi PDF.",createButton:"Nuovo progetto",updateButton:"Rinominare",deleteButton:"Eliminare"},form:{text:"Crea e modifica i piani e poi scarica i tuoi PDF.",input:"Nome della costruzione",error:"Nome non corretto",createButton:"Creare",updateButton:"Convalidare"},storeys:{addStoreyButton:"Piano",addFileButton:"Progetto",closeButton:"Finire",submitFilesButton:"Convalidare"},storeyForm:{title:"Nuovo piano",input:"Nome",error:"Nome non corretto",cancelButton:"Annullare",submitButton:"Convalidare"}},FPi={creationFormTitle:"Crea una cartella",renameFormPlaceholder:"Nome file/cartella",nameInputPlaceholder:"Nome della cartella",emptyFolder:"Questa cartella \xE8 vuota",newFolderSuccess:"Nuova cartella creata",renameFolderSuccess:"Cartella rinominata",deleteFolderSuccess:"Cartella eliminata",newFileSuccess:"File aggiunto",renameFileSuccess:"File rinominato",deleteFileSuccess:"File cancellato",nameInputErrorMessage:"Nome non valido",cancel:"Annulla",submit:"Invia",buttonText:"Nuova cartella",addFileButtonText:"Carica un file",rename:"Rinominare",view:"Vedere",download:"Scaricare",delete:"Cancellare",deleteTitle:"Eliminazione di file",deleteDetail:"Stai per eliminare definitivamente i seguenti file/cartelle"},YPi={BuildingMaker:UPi,FileManager:FPi},QPi={de:xPi,en:kPi,es:zPi,fr:RPi,it:YPi},GPi=({i18nPlugin:t}={})=>({install(e){t?Object.entries(QPi).forEach(([i,o])=>{t.global.mergeLocaleMessage(i,o)}):console.warn("[BIMData Components Plugin] No i18n instance provided. You should either provide an i18n instance or define your own translations in order have text displayed properly."),Object.entries(dmi).forEach(([i,o])=>{e.component(i,o)})}}),HPi={beforeMount(t,e){if(typeof e.value!="function")throw Error(`click away directive needs function, got ${typeof e.value}`);t.clickAwayHandler=i=>{(i.path||i.composedPath&&i.composedPath()).find(o=>o===t)||e.value()},window.addEventListener("mousedown",t.clickAwayHandler,!0)},unmounted(t){window.removeEventListener("mousedown",t.clickAwayHandler,!0),delete t.clickAwayHandler}},VPi=Object.freeze(Object.defineProperty({__proto__:null,BIMDataClickAway:Uc,BIMDataClickInputAway:HPi},Symbol.toStringTag,{value:"Module"})),ZPi=t=>({install(e){Object.entries(kMt).forEach(([i,o])=>{t&&t.excludedComponents&&t.excludedComponents.length>0&&t.excludedComponents.includes(i)||(!t||!t.includedComponents||t.includedComponents.includes(i))&&e.component(i,o)}),(!t||t.directives!==!1)&&Object.entries(VPi).forEach(([i,o])=>e.directive(i.split("BIMData")[1],o))}}),JPi={name:"LiWrapper",render(){return _i("li",this.$slots.default())}};function WPi(t,e){var i=new Set([]);return t.forEach(o=>{e.has(o)||i.add(o)}),i}const pu=ms("id"),KPi=({contextMenu:t,objects:e=[],state:i=t.$viewer.state,pictos:o})=>[{name:"selectAll",get group(){return t.groupPositions.select},position:1,get label(){return t.$t("context_menu.select_all")},get picto(){return o.get(this.name)},execute:()=>i.selectObjects(e.filter(kc(Ji("visible"),Tu("selected"))).map(pu)),predicate:()=>e.some(kc(Ji("visible"),Tu("selected")))},{name:"deselectAll",get group(){return t.groupPositions.select},position:2,get label(){return t.$t("context_menu.deselect_all")},get picto(){return o.get(this.name)},execute:()=>i.deselectObjects(e.filter(Ji("selected")).map(pu)),predicate:()=>e.some(Ji("selected"))},{name:"selectSimilar",get group(){return t.groupPositions.select},position:3,get label(){return t.$t("context_menu.select_similar")},get picto(){return o.get(this.name)},execute(){const r=e.filter(n=>n.visible&&n.type===this.selectedObject.type&&n.id!==this.selectedObject.id).map(pu);i.selectObjects(r)},selectedObject:null,predicate(){const r=e.filter(kc(Ji("visible"),Ji("selected")));return r.length===1&&r[0].type!==void 0?(this.selectedObject=r[0],!0):(this.selectedObject=null,!1)}},{name:"reverseSelection",get label(){return t.$t("context_menu.reverse_selection")},get group(){return t.groupPositions.select},position:4,execute:()=>{const r=new Set(e.filter(Ji("selected")).map(pu)),n=new Set(e.filter(Ji("visible")).map(pu));i.selectObjects(Array.from(WPi(n,r)),{exclusive:!0})},predicate:()=>e.some(kc(Tu("selected"),Ji("visible")))&&e.some(kc(Ji("selected"),Ji("visible")))},{name:"showAll",get group(){return t.groupPositions.visibility},position:1,get label(){return t.$t("context_menu.show_all")},get picto(){return o.get(this.name)},execute:()=>i.showObjects(e.filter(Tu("visible")).map(pu)),predicate:()=>e.some(Tu("visible"))},{name:"hide",get group(){return t.groupPositions.visibility},position:2,get label(){return t.$t("context_menu.hide")},get picto(){return o.get(this.name)},objectsToHide:null,execute(){const r=this.objectsToHide.filter(Ji("selected"));r.length>0&&i.deselectObjects(r.map(pu)),i.hideObjects(this.objectsToHide.map(pu))},predicate(){return this.objectsToHide=e.filter(kc(Ji("selected"),Ji("visible"))),this.objectsToHide.length>0}},{name:"hideAll",get group(){return t.groupPositions.visibility},position:3,get label(){return t.$t("context_menu.hide_all")},execute:()=>{const r=e.filter(Ji("visible"));r.some(Ji("selected"))&&i.deselectObjects(r.filter(Ji("selected")).map(pu)),i.hideObjects(r.map(pu))},predicate:()=>e.some(Ji("visible"))}].filter(r=>r.predicate()),_Pi={components:{LiWrapper:JPi},inject:["$viewer"],data(){return{defaultPrevented:!1,displayed:!1,top:null,bottom:null,left:null,width:200,nextCommandId:1,currentCommands:[],contextCommands:[],registeredCommands:[],groupPositions:{select:10,visibility:20},asyncPredicateRunning:!1}},computed:{position(){return{top:this.top?this.top+"px":"unset",bottom:this.bottom?this.bottom+"px":"unset",left:this.left+"px",width:this.width+"px"}}},watch:{displayed(t){t?document.addEventListener("keydown",this.onKeyDown):document.removeEventListener("keydown",this.onKeyDown)}},created(){this.$viewer.contextMenu=this,this.asyncPredicates=new Set},methods:{onKeyDown(t){t.key==="Escape"&&this.away()},setPosition(t){const e=(document.fullscreenElement?document.fullscreenElement:this.$parent.$el).getBoundingClientRect();this.left=t.clientX-e.left,this.top=t.clientY-e.top,this.left+this.width>e.width&&(this.left=this.left-this.width),t.clientY>e.top+e.height/2?(this.bottom=e.height-this.top,this.top=null):this.bottom=null},typeCheckCommand(t={}){let e=null;if((!t.execute||typeof t.execute!="function")&!t.component&&(e="Cannot register context menu command. A command must have an execute function or a component property."),t.label||(e="Cannot register context menu command. A command must have a label."),e)throw console.error(e),new Error(e);return t.id=this.nextCommandId++,t},open(t){this.currentCommands=[],this.setPosition(t),this.originEvent=t,t.preventDefault(),this.setCurrentCommands(),this.groupCurrentCommands(),this.defaultPrevented=!1,this.displayed=!0,document.fullscreenElement?(this.$el.parentElement.removeChild(this.$el),this.adoptiveParent=document.fullscreenElement,this.adoptiveParent.appendChild(this.$el)):this.adoptiveParent&&this.adoptiveParent!==this.$viewer.globalContext.el&&(this.adoptiveParent.removeChild(this.$el),this.$viewer.globalContext.el.appendChild(this.$el),this.adoptiveParent=null)},setCurrentCommands(){this.asyncPredicates.clear(),this.asyncPredicateRunning=!1,this.defaultPrevented||this.registeredCommands.forEach(async t=>{if(typeof t.predicate=="function"){const e=t.predicate(this.$viewer.globalContext.activeLocalContext);if(e===!0)this.currentCommands.push(t);else if(typeof e?.then=="function"){this.asyncPredicates.add(e),this.asyncPredicateRunning=!0;const i=await e;this.asyncPredicates.has(e)&&(this.asyncPredicates.delete(e),this.asyncPredicateRunning=this.asyncPredicates.size>0,i===!0&&this.currentCommands.push(t))}}else this.currentCommands.push(t)}),this.currentCommands.push(...this.contextCommands),this.contextCommands=[]},getDefaultCommands({objects:t=[],state:e=this.$viewer.state,context:i=null}){const o=new Map;return i&&this.$viewer.shortcutManager.getShortcuts(i).forEach(r=>o.set(r.name,r.key)),KPi({contextMenu:this,objects:t,state:e,pictos:o})},executeCommand(t){if(t.execute&&(t.execute(this.originEvent),this.displayed=!1),t.component&&!t.menu)throw new Error("Command with component property must have a `menu` property")},away(){this.displayed=!1},groupCurrentCommands(){const t=new Map;this.currentCommands.forEach(i=>{(i.group===null||i.group===void 0)&&(i.group=0),t.has(i.group)?t.get(i.group).push(i):t.set(i.group,[i])}),t.forEach(i=>i.sort((o,r)=>(o.position=o.position||0,r.position=r.position||0,o.position-r.position)));const e=[...t.keys()].sort((i,o)=>i-o).map(i=>t.get(i)).flat();this.currentCommands=e},isGroupIntersection(t){if(t===0)return!1;const e=this.currentCommands[t-1],i=this.currentCommands[t];return e.group<i.group},registerContextCommand(t){const e=this.typeCheckCommand(t);return this.contextCommands.push(e),t.id},registerCommand(t){const e=this.typeCheckCommand(t);return this.registeredCommands.push(e),t.id},unregisterCommand(t){return this.registeredCommands.find(e=>e.id===t)?(this.registeredCommands=this.registeredCommands.filter(e=>e.id!==t),!0):!1},preventDefault(){this.defaultPrevented=!0}}},qPi={key:0,class:"separator"},XPi={class:"menu-text"},$Pi={key:1,class:"menu-picto"},eBi={key:0,class:"context-menu__spinner"};function tBi(t,e,i,o,r,n){const s=z("BIMDataIconChevron"),a=z("LiWrapper"),l=z("BIMDataSpinner"),c=Yi("click-away");return r.displayed&&(r.currentCommands.length||r.asyncPredicateRunning)?Tt((D(),U("ul",{key:0,class:"bimdata-list context-menu",style:Se(n.position)},[(D(!0),U(Mt,null,ii(r.currentCommands,(u,d)=>(D(),oe(a,{key:u.label,class:"context-menu__element",onClick:h=>n.executeCommand(u)},{default:J(()=>[n.isGroupIntersection(d)?(D(),U("div",qPi)):be("",!0),v("div",XPi,X(u.label),1),!u.component&&u.picto?(D(),U("span",$Pi,X(u.picto),1)):u.component?(D(),oe(s,{key:2,size:"xxs",class:"fill-primary"})):be("",!0)]),_:2},1032,["onClick"]))),128)),r.asyncPredicateRunning?(D(),U("li",eBi,[O(l)])):be("",!0)],4)),[[c,n.away]]):be("",!0)}const iBi=W(_Pi,[["render",tBi],["__scopeId","data-v-5b87d4a3"]]),oBi={name:"ViewerHeader",inject:["$viewer"],props:{visible:{type:Boolean,default:!0}},setup(){const t=Ut("$viewer"),e=Cn(new Map),i=r=>{if(!r.name)throw new TypeError("[Viewer Header] Content must have a name");if(e.has(r.name))throw new Error(`[Viewer Header] Content with name ${r.name} already exists`);e.set(r.name,r)},o=r=>e.has(r)?(e.delete(r),!0):!1;return{logo:t.uiSettings.bimdataLogo!==!1,version:t.uiSettings.version!==!1?t.version:null,headerContent:e,headerRightContentComponents:At(()=>Array.from(e.values()).filter(r=>r.position==="right").sort((r,n)=>r.order-n.order).map(r=>r.component)),headerLeftContentComponents:At(()=>Array.from(e.values()).filter(r=>r.position==="left").sort((r,n)=>r.order-n.order).map(r=>r.component)),addContent:i,removeContent:o}}},rBi={class:"viewer-header"},sBi={class:"viewer-header__content"},nBi={class:"viewer-header__content__left"},aBi={class:"viewer-header__content__right"},lBi={key:0,class:"m-l-6 flex items-center"},cBi={key:1,class:"viewer-header__version"};function uBi(t,e,i,o,r,n){const s=z("BIMDataIllustration");return Tt((D(),U("div",rBi,[v("div",sBi,[v("div",nBi,[(D(!0),U(Mt,null,ii(o.headerLeftContentComponents,a=>(D(),oe(hr(a),{key:a.name}))),128))]),v("div",aBi,[(D(!0),U(Mt,null,ii(o.headerRightContentComponents,a=>(D(),oe(hr(a),{key:a.name}))),128))])]),o.logo||o.version?(D(),U("div",lBi,[o.logo?(D(),oe(s,{key:0,name:"logo",width:"30px",height:"30px"})):be("",!0),o.version?(D(),U("div",cBi,X(o.version),1)):be("",!0)])):be("",!0)],512)),[[Ai,i.visible]])}const dBi=W(oBi,[["render",uBi],["__scopeId","data-v-5c9ea6b6"]]),hBi={emits:["resize"],setup(t,{emit:e}){return{onResizerMousedown:i=>{i.preventDefault();let o=i.clientX;const r=s=>{s.preventDefault();const a=s.clientX-o;o=s.clientX,e("resize",a)},n=s=>{s.preventDefault(),window.removeEventListener("mousemove",r),window.removeEventListener("mouseup",n)};window.addEventListener("mousemove",r),window.addEventListener("mouseup",n)}}}},pBi=t=>(Jo("data-v-79a3b3af"),t=t(),Wo(),t),ABi={class:"bimdata-separator"},gBi=pBi(()=>v("div",{class:"bimdata-separator__line"},null,-1));function MBi(t,e,i,o,r,n){return D(),U("div",ABi,[gBi,v("div",{class:"bimdata-separator__resizer",onMousedown:e[0]||(e[0]=(...s)=>o.onResizerMousedown&&o.onResizerMousedown(...s))},null,32)])}const fBi=W(hBi,[["render",MBi],["__scopeId","data-v-79a3b3af"]]),wBi={components:{Separator:fBi},props:{position:{type:String,required:!0,validator(t){return["left","right"].includes(t)}},sidePanel:{type:Object,required:!0,validator(t){if(t.width&&(typeof t.width!="number"||t.width<0))return console.error(`[GlobalSidePanel] sidePanel.width must be a strictly positive number, received ${typeof t.width}`),!1;const e=typeof t?.component=="object";return e||console.error("[GlobalSidePanel] sidePanel must have a component property"),e}}},setup(t){const e=Fe(null),i=Fe(t.sidePanel.width??400),o=(r,n=1)=>{const s=i.value+r*n;i.value=Math.max(0,s)};return Object.defineProperty(t.sidePanel,"width",{get(){return i.value},set(r){if(typeof r!="number"||r<=0){console.error(`[GlobalSidePanel] sidePanel.width must be a strictly positive number, received ${typeof r}`);return}i.value=r}}),Object.defineProperty(t.sidePanel,"componentInstance",{get(){return e.value},enumerable:!0}),{componentInstance:e,width:i,onResize:o}}},LBi={class:"bimdata-global-side-panel__component"};function mBi(t,e,i,o,r,n){const s=z("Separator");return D(),U("div",{class:"bimdata-global-side-panel",style:Se(`width: ${o.width}px`)},[i.sidePanel.resizable&&i.position==="right"?(D(),oe(s,{key:0,onResize:e[0]||(e[0]=a=>o.onResize(a,-1))})):be("",!0),v("div",LBi,[(D(),oe(hr(i.sidePanel.component),{ref:"componentInstance"},null,512))]),i.sidePanel.resizable&&i.position==="left"?(D(),oe(s,{key:1,onResize:e[1]||(e[1]=a=>o.onResize(a))})):be("",!0)],4)}const yBi=W(wBi,[["render",mBi],["__scopeId","data-v-7374abbf"]]),vBi={name:"BimdataViewer",components:{ContextMenu:iBi,ViewerHeader:dBi,ModalManager:Whe,GlobalSidePanel:yBi},setup(){const t=Ut("$viewer"),{globalContext:e,shortcutManager:i}=t;Oo(()=>{i&&i.destroy(),e.hub.clear()}),lo(()=>{t.pluginManager.runPluginsScripts(t)});const o=At(()=>{var p;return t.uiSettings.bimdataLogo!==!1&&(e.localContexts.length!==1||((p=e.localContexts[0].window)==null?void 0:p.logoAndVersion))}),r=At(()=>{var p;return t.uiSettings.version!==!1&&(e.localContexts.length!==1||(p=e.localContexts[0].window)!=null&&p.logoAndVersion)?t.version:null}),n=At(()=>e.leftSidePanel),s=At(()=>e.rightSidePanel),a=At(()=>{var p;const g=t.uiSettings.header!==!1,A=e.localContexts.length===1&&((p=e.localContexts[0].window)==null?void 0:p.header)===!1,M=!!(n.value||s.value);return g&&(!A||M)}),l=t.uiSettings.contextMenu!==!1,c=Fe(null);function u(p){l&&c.value.open(p)}function d(){t.shortcutManager.active=!0}function h(){t.shortcutManager.active=!1}return{Layout:t.layout.areas.component,onContextMenu:u,onMouseenter:d,onMouseleave:h,isHeaderVisible:a,viewerTemplateRef:e.templateRef,modalManagerTemplateRef:e.modalManagerTemplateRef,headerTemplateRef:e.headerTemplateRef,contextMenuTemplateRef:c,contextMenuEnabled:l,bimdataLogoOnSingleWindow:o,viewerVersionOnSingleWindow:r,version:t.version,loading:At(()=>e.loading),spinner:At(()=>e.spinner),leftSidePanel:n,rightSidePanel:s}}},CBi={key:1,class:"global-spinner",style:{"z-index":"3"}},IBi={key:2,class:"viewer__logo"},jBi={key:1,class:"version m-t-6"};function bBi(t,e,i,o,r,n){const s=z("ModalManager"),a=z("ContextMenu"),l=z("ViewerHeader"),c=z("GlobalSidePanel"),u=z("BIMDataSpinner"),d=z("BIMDataIllustration");return D(),U("div",{id:"bimdata-viewer",ref:"viewerTemplateRef",class:"bimdata-viewer bimdata-scrollbar",onContextmenu:e[0]||(e[0]=(...h)=>o.onContextMenu&&o.onContextMenu(...h)),onMouseenter:e[1]||(e[1]=(...h)=>o.onMouseenter&&o.onMouseenter(...h)),onMouseleave:e[2]||(e[2]=(...h)=>o.onMouseleave&&o.onMouseleave(...h))},[O(s,{ref:"modalManagerTemplateRef",global:""},null,512),o.contextMenuEnabled?(D(),oe(a,{key:0,ref:"contextMenuTemplateRef"},null,512)):be("",!0),O(l,{ref:"headerTemplateRef",visible:o.isHeaderVisible},null,8,["visible"]),v("div",{class:"bimdata-viewer__content",style:Se(o.isHeaderVisible?"height: calc(100% - var(--bimdata-viewer-header-height, 40px))":"height: 100%")},[o.leftSidePanel?(D(),oe(c,{key:0,"side-panel":o.leftSidePanel,position:"left"},null,8,["side-panel"])):be("",!0),(D(),oe(hr(o.Layout),{style:"height: 100%; flex-grow: 1;"})),o.rightSidePanel?(D(),oe(c,{key:1,"side-panel":o.rightSidePanel,position:"right"},null,8,["side-panel"])):be("",!0)],4),o.loading?(D(),U("div",CBi,[o.spinner&&o.spinner.component?(D(),oe(hr(o.spinner.component),Pu(ja({key:0},o.spinner.props)),null,16)):(D(),oe(u,{key:1,size:"40px",border:"5px"}))])):be("",!0),!o.isHeaderVisible&&(o.bimdataLogoOnSingleWindow||o.viewerVersionOnSingleWindow)?(D(),U("div",IBi,[o.bimdataLogoOnSingleWindow?(D(),oe(d,{key:0,name:"logo"})):be("",!0),o.viewerVersionOnSingleWindow?(D(),U("div",jBi,X(o.version),1)):be("",!0)])):be("",!0)],544)}const xBi=W(vBi,[["render",bBi]]),DBi=["src"],NBi={class:"bimdata-models__header"},SBi={key:0,class:"bimdata-models__header__loader"},kBi={class:"bimdata-models__header__picto"},TBi={class:"bimdata-models__header__name"},EBi={key:0,class:"bimdata-models__header__name--empty"},zBi={key:1,class:"bimdata-models__header__name--empty"},PBi={key:3},BBi=["onMousemove","onClick"],e0e={__name:"Models",props:{preview:{type:Boolean,default:!1},windowPositioning:{type:Boolean,default:!0},customFilter:{type:Function,default:null},width:{type:String,default:"350px"}},setup(t){const e=t,i=Ut("$viewer"),o=Fe(),r=Fe(0),n=Fe(0),s=Fe(),a=or([]),l=Fe(!1),c=At(()=>i.localContext.loadedModels),u=At(()=>i.localContext.loadedModelIds),d=At(()=>i.localContext.loadingModelIds),h=At(()=>i.localContext.multiModel),p=At(()=>(e.customFilter?a.value.filter(e.customFilter):a.value).map(I=>c.value.find(j=>{var b;return((b=j.document)==null?void 0:b.head_id)!=null&&j.document.head_id===I.document.id})??I)),g=I=>u.value.includes(I),A=I=>d.value.includes(I),M=At(()=>{var I;const{x:j,y:b}=((I=s.value)==null?void 0:I.getBoundingClientRect())??{x:0,y:0};return`top:${n.value-b}px; left:${r.value-j}px;`}),f=I=>{!h.value&&g(I.id)||d.value.length>0||(i.localContext.loadedModelIds.includes(I.id)?i.localContext.unloadModels([I.id]):i.localContext.loadModels([I.id]))},L=I=>{switch(I){case"C":return"success";case"E":return"failed";case"P":case"I":return"sandglass"}},w=(I,j)=>{I!=null&&I.viewer_360_file&&(r.value=j.clientX,n.value=j.clientY),o.value=I?.viewer_360_file},m=async I=>{l.value=!0;try{return(await i.api.apiClient.modelApi.getModels(i.api.cloudId,i.api.projectId,void 0,void 0,I)).filter(j=>i.state.models.some(b=>b.archived)||!j.archived).sort(Zh("updated_at",!1))}catch(j){console.error("[Models] Cannot get project models. Error: ",j)}finally{l.value=!1}return[]},C=I=>{var j;return((j=I.children)==null?void 0:j.some(b=>g(b.id)))??!1};return m(i.localContext.modelTypes).then(I=>{a.value=I}),(I,j)=>{const b=z("BIMDataSpinner"),T=z("BIMDataIconModel3D"),P=z("BIMDataTextbox"),S=z("BIMDataCheckbox"),k=z("BIMDataRadio"),R=z("BIMDataIcon"),Y=z("BIMDataDropdownList");return D(),U("div",{ref_key:"templateRef",ref:s,class:Ne(["bimdata-models",{"bimdata-models--window-positioning":t.windowPositioning}])},[o.value?(D(),U("div",{key:0,class:"bimdata-models__preview",style:Se(M.value)},[v("img",{src:o.value},null,8,DBi)],4)):be("",!0),O(Y,{style:Se(`--bimdata-models-width: ${t.width};`),width:t.width,list:p.value,"element-key":"id","per-page":40,loading:l.value,class:"bimdata-models__list",disabled:p.value.length===0,onElementClick:f},{header:J(({isOpen:Z})=>[v("div",NBi,[l.value||d.value.length>0?(D(),U("div",SBi,[O(b)])):(D(),U(Mt,{key:1},[v("div",kBi,[O(T)]),v("div",{class:Ne(["bimdata-models__header__number bimdata-info-length",{"bimdata-models__header__number--empty":u.value.length===0}])},[v("span",null,X(u.value.length),1)],2),v("div",TBi,[p.value.length===0?(D(),U("span",EBi,X(I.$t("model.no_model")),1)):u.value.length===0?(D(),U("span",zBi,X(I.$t("model.no_loaded_model")),1)):u.value.length===1?(D(),oe(P,{key:2,text:c.value[0].name,tooltip:!Z},null,8,["text","tooltip"])):u.value.length>1?(D(),U("span",PBi,X(I.$t("model.selected_models")),1)):be("",!0)])],64))])]),element:J(({element:Z,close:G})=>[v("div",{class:"bimdata-models__model",onMousemove:_=>t.preview&&w(Z,_),onMouseout:j[0]||(j[0]=_=>t.preview&&w()),onClick:()=>{!h.value&&!g(Z.id)&&G()}},[h.value?(D(),oe(S,{key:0,"model-value":g(Z.id)||C(Z),disabled:Z.status!=="C"||d.value.length>0},null,8,["model-value","disabled"])):(D(),oe(k,{key:1,"model-value":g(Z.id)||C(Z),disabled:Z.status!=="C"||d.value.length>0},null,8,["model-value","disabled"])),O(R,{margin:"0 calc(var(--spacing-unit) / 2)",name:L(Z.status),size:"xs",class:Ne({"fill-success":Z.status==="C","fill-high":Z.status==="E"})},null,8,["name","class"]),O(P,{class:Ne({"bimdata-models__model__name":!0,"bimdata-models__model__name--disabled":Z.status!=="C"||d.value.length>0}),text:Z.name,width:`calc(100% -
1871
1871
  ${h.value?13:23}px - 2 * 6px - 16px)`},null,8,["class","text","width"]),Z.document&&!Z.document.is_head_version?(D(),oe(R,{key:2,name:"versioning",fill:"",color:"default",size:"xs",margin:"0 0 0 6px"})):be("",!0)],40,BBi),A(Z.id)?(D(),oe(b,{key:0,class:"bimdata-models__model__spinner"})):be("",!0)]),_:1},8,["style","width","list","loading","disabled"])],2)}}},OBi={data(){return{shown:!1}},mounted(){setTimeout(()=>{this.shown=!0},500)}};function RBi(t,e,i,o,r,n){const s=z("BIMDataIllustration");return D(),U("div",{class:"bimdata__no-model",style:Se({"--no-model--opacity":r.shown?1:0})},[O(s,{name:"emptyViewer",x:"90",y:"90"}),v("span",null,X(t.$t("model.select_model")),1)],4)}const t0e=W(OBi,[["render",RBi],["__scopeId","data-v-54b49e82"]]);window.BIMDataViewerVue=_Q;class UBi{constructor(e={}){var i,o;const{api:r={},ui:n}=e;this.uiCfg=n,r.apiUrl||(console.info("[BIMData Viewer] INFO - Viewer config - `apiUrl` not set, use 'https://api.bimdata.io' by default."),r.apiUrl="https://api.bimdata.io"),r.archiveUrl||(console.info("[BIMData Viewer] INFO - Viewer config - `archiveUrl` not set, use 'https://archive.bimdata.io' by default."),r.archiveUrl="https://archive.bimdata.io"),r.ifcIds&&(console.warn("[BIMData Viewer] DEPRECATED - Viewer config - please use the `modelIds` property instead of `ifcIds`."),r.modelIds===void 0&&(r.modelIds=r.ifcIds)),r.modelIds||(r.modelIds=[]),(i=r.offline)!=null&&i.dataFile&&(r.offline.data=r.offline.dataFile),this.$viewer=new cPi(e),(o=r.offline)!=null&&o.enabled?this.$viewer.api.enableOfflineMode(r.offline.data,r.offline.options).then(()=>this.state.loadModels(r.modelIds)):(this.$viewer.globalContext.loadingProcessStart(),this.state.loadModels(r.modelIds).finally(()=>this.$viewer.globalContext.loadingProcessEnd())),this.vueApp=null}get state(){return this.$viewer.state}get api(){return this.$viewer.api}async mount(e,i="3d"){var o;const{$viewer:r}=this;await r.api.ready;try{const d=await r.api.apiClient.collaborationApi.checkProjectAccess(r.api.cloudId,r.api.projectId);r.api.permissions=$he(d)}catch{r.api.permissions=$he()}const n=this.api.accessToken,{i18n:s}=r;s.registerTranslations(r.pluginManager.pluginTranslations),r.layout.apply(i);const a={i18n:s.i18nVuePlugin,data(){return{accessToken:n}},render(){return _i(xBi,{style:"height: 100%"})}},l=dN(a).use(s.i18nVuePlugin).use(ZPi()).use(GPi({i18nPlugin:s.i18nVuePlugin})).use(IPi({apiClient:r.api.apiClient,i18nPlugin:s.i18nVuePlugin}));l.provide("$viewer",r),l.component("BIMDataModelLoader",e0e),l.component("BIMDataNoModelWindowPlaceHolder",t0e),l.component("BIMDataStoreySelector",d7),l.component("ModelsLoader",e0e),l.component("NoModelWindowPlaceHolder",t0e);const c=e instanceof HTMLElement?e:document.querySelector(e);c&&(c.style.height="100%");const u=l.mount(e);return u.$viewer=r,uPi(u.$el,(o=this.uiCfg)==null?void 0:o.style),typeof window<"u"&&(window.bimdataViewer=u),this.vueApp=l,u}destroy(){var e;(e=this.vueApp)==null||e.unmount()}setLocale(e){if(!pG.includes(e))throw new Error(`Viewer available locales are ${pG.join(", ")}.`);this.$viewer.i18n.locale=e}registerPlugin(e){this.$viewer.registerPlugin(e)}registerWindow(e){return this.$viewer.windowManager.registerWindow(e)}unregisterWindow(e){return this.$viewer.windowManager.unregisterWindow(e)}setAccessToken(e){this.api.accessToken=e}async loadModels(e){this.$viewer.globalContext.loadingProcessStart();const i=await this.state.loadModels(e);return this.$viewer.globalContext.loadingProcessEnd(),i}loadIfcs(e){return console.warn("[BIMData Viewer] DEPRECATED - Viewer - please use the loadModels method instead of loadIfcs."),this.loadModels(e)}}const i0e=(t={})=>new UBi(t);window.makeBIMDataViewer=i0e;/*! @license DOMPurify 2.5.5 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/2.5.5/LICENSE */function H0(t){"@babel/helpers - typeof";return H0=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},H0(t)}function Qz(t,e){return Qz=Object.setPrototypeOf||function(i,o){return i.__proto__=o,i},Qz(t,e)}function FBi(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function ax(t,e,i){return FBi()?ax=Reflect.construct:ax=function(o,r,n){var s=[null];s.push.apply(s,r);var a=Function.bind.apply(o,s),l=new a;return n&&Qz(l,n.prototype),l},ax.apply(null,arguments)}function Mc(t){return YBi(t)||QBi(t)||GBi(t)||HBi()}function YBi(t){if(Array.isArray(t))return Gz(t)}function QBi(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function GBi(t,e){if(t){if(typeof t=="string")return Gz(t,e);var i=Object.prototype.toString.call(t).slice(8,-1);if(i==="Object"&&t.constructor&&(i=t.constructor.name),i==="Map"||i==="Set")return Array.from(t);if(i==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return Gz(t,e)}}function Gz(t,e){(e==null||e>t.length)&&(e=t.length);for(var i=0,o=new Array(e);i<e;i++)o[i]=t[i];return o}function HBi(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
1872
1872
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var VBi=Object.hasOwnProperty,o0e=Object.setPrototypeOf,ZBi=Object.isFrozen,JBi=Object.getPrototypeOf,WBi=Object.getOwnPropertyDescriptor,Yn=Object.freeze,Il=Object.seal,KBi=Object.create,r0e=typeof Reflect<"u"&&Reflect,lx=r0e.apply,Hz=r0e.construct;lx||(lx=function(t,e,i){return t.apply(e,i)}),Yn||(Yn=function(t){return t}),Il||(Il=function(t){return t}),Hz||(Hz=function(t,e){return ax(t,Mc(e))});var _Bi=jl(Array.prototype.forEach),s0e=jl(Array.prototype.pop),sv=jl(Array.prototype.push),cx=jl(String.prototype.toLowerCase),Vz=jl(String.prototype.toString),n0e=jl(String.prototype.match),fc=jl(String.prototype.replace),qBi=jl(String.prototype.indexOf),XBi=jl(String.prototype.trim),Js=jl(RegExp.prototype.test),Zz=$Bi(TypeError);function jl(t){return function(e){for(var i=arguments.length,o=new Array(i>1?i-1:0),r=1;r<i;r++)o[r-1]=arguments[r];return lx(t,e,o)}}function $Bi(t){return function(){for(var e=arguments.length,i=new Array(e),o=0;o<e;o++)i[o]=arguments[o];return Hz(t,i)}}function Ui(t,e,i){var o;i=(o=i)!==null&&o!==void 0?o:cx,o0e&&o0e(t,null);for(var r=e.length;r--;){var n=e[r];if(typeof n=="string"){var s=i(n);s!==n&&(ZBi(e)||(e[r]=s),n=s)}t[n]=!0}return t}function o1(t){var e=KBi(null),i;for(i in t)lx(VBi,t,[i])===!0&&(e[i]=t[i]);return e}function ux(t,e){for(;t!==null;){var i=WBi(t,e);if(i){if(i.get)return jl(i.get);if(typeof i.value=="function")return jl(i.value)}t=JBi(t)}function o(r){return console.warn("fallback value for",r),null}return o}var a0e=Yn(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Jz=Yn(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Wz=Yn(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),eOi=Yn(["animate","color-profile","cursor","discard","fedropshadow","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Kz=Yn(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover"]),tOi=Yn(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),l0e=Yn(["#text"]),c0e=Yn(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","xmlns","slot"]),_z=Yn(["accent-height","accumulate","additive","alignment-baseline","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),u0e=Yn(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),dx=Yn(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),iOi=Il(/\{\{[\w\W]*|[\w\W]*\}\}/gm),oOi=Il(/<%[\w\W]*|[\w\W]*%>/gm),rOi=Il(/\${[\w\W]*}/gm),sOi=Il(/^data-[\-\w.\u00B7-\uFFFF]/),nOi=Il(/^aria-[\-\w]+$/),aOi=Il(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),lOi=Il(/^(?:\w+script|data):/i),cOi=Il(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),uOi=Il(/^html$/i),dOi=Il(/^[a-z][.\w]*(-[.\w]+)+$/i),hOi=function(){return typeof window>"u"?null:window},pOi=function(t,e){if(H0(t)!=="object"||typeof t.createPolicy!="function")return null;var i=null,o="data-tt-policy-suffix";e.currentScript&&e.currentScript.hasAttribute(o)&&(i=e.currentScript.getAttribute(o));var r="dompurify"+(i?"#"+i:"");try{return t.createPolicy(r,{createHTML:function(n){return n},createScriptURL:function(n){return n}})}catch{return console.warn("TrustedTypes policy "+r+" could not be created."),null}};function d0e(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:hOi(),e=function(Qe){return d0e(Qe)};if(e.version="2.5.5",e.removed=[],!t||!t.document||t.document.nodeType!==9)return e.isSupported=!1,e;var i=t.document,o=t.document,r=t.DocumentFragment,n=t.HTMLTemplateElement,s=t.Node,a=t.Element,l=t.NodeFilter,c=t.NamedNodeMap,u=c===void 0?t.NamedNodeMap||t.MozNamedAttrMap:c,d=t.HTMLFormElement,h=t.DOMParser,p=t.trustedTypes,g=a.prototype,A=ux(g,"cloneNode"),M=ux(g,"nextSibling"),f=ux(g,"childNodes"),L=ux(g,"parentNode");if(typeof n=="function"){var w=o.createElement("template");w.content&&w.content.ownerDocument&&(o=w.content.ownerDocument)}var m=pOi(p,i),C=m?m.createHTML(""):"",I=o,j=I.implementation,b=I.createNodeIterator,T=I.createDocumentFragment,P=I.getElementsByTagName,S=i.importNode,k={};try{k=o1(o).documentMode?o.documentMode:{}}catch{}var R={};e.isSupported=typeof L=="function"&&j&&j.createHTMLDocument!==void 0&&k!==9;var Y=iOi,Z=oOi,G=rOi,_=sOi,ee=nOi,ue=lOi,de=cOi,Ee=dOi,V=aOi,ie=null,he=Ui({},[].concat(Mc(a0e),Mc(Jz),Mc(Wz),Mc(Kz),Mc(l0e))),te=null,ae=Ui({},[].concat(Mc(c0e),Mc(_z),Mc(u0e),Mc(dx))),fe=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Ce=null,je=null,Oe=!0,Ye=!0,We=!1,ce=!0,Le=!1,Me=!0,se=!1,Ie=!1,De=!1,xe=!1,q=!1,$=!1,ye=!0,Te=!1,we="user-content-",Pe=!0,Be=!1,Ze={},wt=null,at=Ui({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),rt=null,ht=Ui({},["audio","video","img","source","image","track"]),ut=null,Ft=Ui({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ve="http://www.w3.org/1998/Math/MathML",et="http://www.w3.org/2000/svg",Je="http://www.w3.org/1999/xhtml",st=Je,Xe=!1,St=null,It=Ui({},[Ve,et,Je],Vz),Vt,Bt=["application/xhtml+xml","text/html"],ft="text/html",kt,Et=null,Pi=o.createElement("form"),Vi=function(Qe){return Qe instanceof RegExp||Qe instanceof Function},wi=function(Qe){Et&&Et===Qe||((!Qe||H0(Qe)!=="object")&&(Qe={}),Qe=o1(Qe),Vt=Bt.indexOf(Qe.PARSER_MEDIA_TYPE)===-1?Vt=ft:Vt=Qe.PARSER_MEDIA_TYPE,kt=Vt==="application/xhtml+xml"?Vz:cx,ie="ALLOWED_TAGS"in Qe?Ui({},Qe.ALLOWED_TAGS,kt):he,te="ALLOWED_ATTR"in Qe?Ui({},Qe.ALLOWED_ATTR,kt):ae,St="ALLOWED_NAMESPACES"in Qe?Ui({},Qe.ALLOWED_NAMESPACES,Vz):It,ut="ADD_URI_SAFE_ATTR"in Qe?Ui(o1(Ft),Qe.ADD_URI_SAFE_ATTR,kt):Ft,rt="ADD_DATA_URI_TAGS"in Qe?Ui(o1(ht),Qe.ADD_DATA_URI_TAGS,kt):ht,wt="FORBID_CONTENTS"in Qe?Ui({},Qe.FORBID_CONTENTS,kt):at,Ce="FORBID_TAGS"in Qe?Ui({},Qe.FORBID_TAGS,kt):{},je="FORBID_ATTR"in Qe?Ui({},Qe.FORBID_ATTR,kt):{},Ze="USE_PROFILES"in Qe?Qe.USE_PROFILES:!1,Oe=Qe.ALLOW_ARIA_ATTR!==!1,Ye=Qe.ALLOW_DATA_ATTR!==!1,We=Qe.ALLOW_UNKNOWN_PROTOCOLS||!1,ce=Qe.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Le=Qe.SAFE_FOR_TEMPLATES||!1,Me=Qe.SAFE_FOR_XML!==!1,se=Qe.WHOLE_DOCUMENT||!1,xe=Qe.RETURN_DOM||!1,q=Qe.RETURN_DOM_FRAGMENT||!1,$=Qe.RETURN_TRUSTED_TYPE||!1,De=Qe.FORCE_BODY||!1,ye=Qe.SANITIZE_DOM!==!1,Te=Qe.SANITIZE_NAMED_PROPS||!1,Pe=Qe.KEEP_CONTENT!==!1,Be=Qe.IN_PLACE||!1,V=Qe.ALLOWED_URI_REGEXP||V,st=Qe.NAMESPACE||Je,fe=Qe.CUSTOM_ELEMENT_HANDLING||{},Qe.CUSTOM_ELEMENT_HANDLING&&Vi(Qe.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(fe.tagNameCheck=Qe.CUSTOM_ELEMENT_HANDLING.tagNameCheck),Qe.CUSTOM_ELEMENT_HANDLING&&Vi(Qe.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(fe.attributeNameCheck=Qe.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),Qe.CUSTOM_ELEMENT_HANDLING&&typeof Qe.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(fe.allowCustomizedBuiltInElements=Qe.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Le&&(Ye=!1),q&&(xe=!0),Ze&&(ie=Ui({},Mc(l0e)),te=[],Ze.html===!0&&(Ui(ie,a0e),Ui(te,c0e)),Ze.svg===!0&&(Ui(ie,Jz),Ui(te,_z),Ui(te,dx)),Ze.svgFilters===!0&&(Ui(ie,Wz),Ui(te,_z),Ui(te,dx)),Ze.mathMl===!0&&(Ui(ie,Kz),Ui(te,u0e),Ui(te,dx))),Qe.ADD_TAGS&&(ie===he&&(ie=o1(ie)),Ui(ie,Qe.ADD_TAGS,kt)),Qe.ADD_ATTR&&(te===ae&&(te=o1(te)),Ui(te,Qe.ADD_ATTR,kt)),Qe.ADD_URI_SAFE_ATTR&&Ui(ut,Qe.ADD_URI_SAFE_ATTR,kt),Qe.FORBID_CONTENTS&&(wt===at&&(wt=o1(wt)),Ui(wt,Qe.FORBID_CONTENTS,kt)),Pe&&(ie["#text"]=!0),se&&Ui(ie,["html","head","body"]),ie.table&&(Ui(ie,["tbody"]),delete Ce.tbody),Yn&&Yn(Qe),Et=Qe)},Zo=Ui({},["mi","mo","mn","ms","mtext"]),Wt=Ui({},["foreignobject","annotation-xml"]),Es=Ui({},["title","style","font","a","script"]),fr=Ui({},Jz);Ui(fr,Wz),Ui(fr,eOi);var vo=Ui({},Kz);Ui(vo,tOi);var zo=function(Qe){var Yt=L(Qe);(!Yt||!Yt.tagName)&&(Yt={namespaceURI:st,tagName:"template"});var Nt=cx(Qe.tagName),Fi=cx(Yt.tagName);return St[Qe.namespaceURI]?Qe.namespaceURI===et?Yt.namespaceURI===Je?Nt==="svg":Yt.namespaceURI===Ve?Nt==="svg"&&(Fi==="annotation-xml"||Zo[Fi]):!!fr[Nt]:Qe.namespaceURI===Ve?Yt.namespaceURI===Je?Nt==="math":Yt.namespaceURI===et?Nt==="math"&&Wt[Fi]:!!vo[Nt]:Qe.namespaceURI===Je?Yt.namespaceURI===et&&!Wt[Fi]||Yt.namespaceURI===Ve&&!Zo[Fi]?!1:!vo[Nt]&&(Es[Nt]||!fr[Nt]):!!(Vt==="application/xhtml+xml"&&St[Qe.namespaceURI]):!1},go=function(Qe){sv(e.removed,{element:Qe});try{Qe.parentNode.removeChild(Qe)}catch{try{Qe.outerHTML=C}catch{Qe.remove()}}},er=function(Qe,Yt){try{sv(e.removed,{attribute:Yt.getAttributeNode(Qe),from:Yt})}catch{sv(e.removed,{attribute:null,from:Yt})}if(Yt.removeAttribute(Qe),Qe==="is"&&!te[Qe])if(xe||q)try{go(Yt)}catch{}else try{Yt.setAttribute(Qe,"")}catch{}},Ja=function(Qe){var Yt,Nt;if(De)Qe="<remove></remove>"+Qe;else{var Fi=n0e(Qe,/^[\r\n\t ]+/);Nt=Fi&&Fi[0]}Vt==="application/xhtml+xml"&&st===Je&&(Qe='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+Qe+"</body></html>");var Po=m?m.createHTML(Qe):Qe;if(st===Je)try{Yt=new h().parseFromString(Po,Vt)}catch{}if(!Yt||!Yt.documentElement){Yt=j.createDocument(st,"template",null);try{Yt.documentElement.innerHTML=Xe?C:Po}catch{}}var os=Yt.body||Yt.documentElement;return Qe&&Nt&&os.insertBefore(o.createTextNode(Nt),os.childNodes[0]||null),st===Je?P.call(Yt,se?"html":"body")[0]:se?Yt.documentElement:os},fn=function(Qe){return b.call(Qe.ownerDocument||Qe,Qe,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT|l.SHOW_PROCESSING_INSTRUCTION|l.SHOW_CDATA_SECTION,null,!1)},zs=function(Qe){return Qe instanceof d&&(typeof Qe.nodeName!="string"||typeof Qe.textContent!="string"||typeof Qe.removeChild!="function"||!(Qe.attributes instanceof u)||typeof Qe.removeAttribute!="function"||typeof Qe.setAttribute!="function"||typeof Qe.namespaceURI!="string"||typeof Qe.insertBefore!="function"||typeof Qe.hasChildNodes!="function")},cr=function(Qe){return H0(s)==="object"?Qe instanceof s:Qe&&H0(Qe)==="object"&&typeof Qe.nodeType=="number"&&typeof Qe.nodeName=="string"},ur=function(Qe,Yt,Nt){R[Qe]&&_Bi(R[Qe],function(Fi){Fi.call(e,Yt,Nt,Et)})},Ks=function(Qe){var Yt;if(ur("beforeSanitizeElements",Qe,null),zs(Qe)||Js(/[\u0080-\uFFFF]/,Qe.nodeName))return go(Qe),!0;var Nt=kt(Qe.nodeName);if(ur("uponSanitizeElement",Qe,{tagName:Nt,allowedTags:ie}),Qe.hasChildNodes()&&!cr(Qe.firstElementChild)&&(!cr(Qe.content)||!cr(Qe.content.firstElementChild))&&Js(/<[/\w]/g,Qe.innerHTML)&&Js(/<[/\w]/g,Qe.textContent)||Nt==="select"&&Js(/<template/i,Qe.innerHTML)||Qe.nodeType===7||Me&&Qe.nodeType===8&&Js(/<[/\w]/g,Qe.data))return go(Qe),!0;if(!ie[Nt]||Ce[Nt]){if(!Ce[Nt]&&_s(Nt)&&(fe.tagNameCheck instanceof RegExp&&Js(fe.tagNameCheck,Nt)||fe.tagNameCheck instanceof Function&&fe.tagNameCheck(Nt)))return!1;if(Pe&&!wt[Nt]){var Fi=L(Qe)||Qe.parentNode,Po=f(Qe)||Qe.childNodes;if(Po&&Fi)for(var os=Po.length,xo=os-1;xo>=0;--xo){var wn=A(Po[xo],!0);wn.__removalCount=(Qe.__removalCount||0)+1,Fi.insertBefore(wn,M(Qe))}}return go(Qe),!0}return Qe instanceof a&&!zo(Qe)||(Nt==="noscript"||Nt==="noembed"||Nt==="noframes")&&Js(/<\/no(script|embed|frames)/i,Qe.innerHTML)?(go(Qe),!0):(Le&&Qe.nodeType===3&&(Yt=Qe.textContent,Yt=fc(Yt,Y," "),Yt=fc(Yt,Z," "),Yt=fc(Yt,G," "),Qe.textContent!==Yt&&(sv(e.removed,{element:Qe.cloneNode()}),Qe.textContent=Yt)),ur("afterSanitizeElements",Qe,null),!1)},fs=function(Qe,Yt,Nt){if(ye&&(Yt==="id"||Yt==="name")&&(Nt in o||Nt in Pi))return!1;if(!(Ye&&!je[Yt]&&Js(_,Yt))&&!(Oe&&Js(ee,Yt))){if(!te[Yt]||je[Yt]){if(!(_s(Qe)&&(fe.tagNameCheck instanceof RegExp&&Js(fe.tagNameCheck,Qe)||fe.tagNameCheck instanceof Function&&fe.tagNameCheck(Qe))&&(fe.attributeNameCheck instanceof RegExp&&Js(fe.attributeNameCheck,Yt)||fe.attributeNameCheck instanceof Function&&fe.attributeNameCheck(Yt))||Yt==="is"&&fe.allowCustomizedBuiltInElements&&(fe.tagNameCheck instanceof RegExp&&Js(fe.tagNameCheck,Nt)||fe.tagNameCheck instanceof Function&&fe.tagNameCheck(Nt))))return!1}else if(!ut[Yt]&&!Js(V,fc(Nt,de,""))&&!((Yt==="src"||Yt==="xlink:href"||Yt==="href")&&Qe!=="script"&&qBi(Nt,"data:")===0&&rt[Qe])&&!(We&&!Js(ue,fc(Nt,de,"")))&&Nt)return!1}return!0},_s=function(Qe){return Qe!=="annotation-xml"&&n0e(Qe,Ee)},qs=function(Qe){var Yt,Nt,Fi,Po;ur("beforeSanitizeAttributes",Qe,null);var os=Qe.attributes;if(os){var xo={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:te};for(Po=os.length;Po--;){Yt=os[Po];var wn=Yt,rs=wn.name,wr=wn.namespaceURI;if(Nt=rs==="value"?Yt.value:XBi(Yt.value),Fi=kt(rs),xo.attrName=Fi,xo.attrValue=Nt,xo.keepAttr=!0,xo.forceKeepAttr=void 0,ur("uponSanitizeAttribute",Qe,xo),Nt=xo.attrValue,!xo.forceKeepAttr&&(er(rs,Qe),!!xo.keepAttr)){if(!ce&&Js(/\/>/i,Nt)){er(rs,Qe);continue}if(Me&&Js(/((--!?|])>)|<\/(style|title)/i,Nt)){er(rs,Qe);continue}Le&&(Nt=fc(Nt,Y," "),Nt=fc(Nt,Z," "),Nt=fc(Nt,G," "));var kd=kt(Qe.nodeName);if(fs(kd,Fi,Nt)){if(Te&&(Fi==="id"||Fi==="name")&&(er(rs,Qe),Nt=we+Nt),m&&H0(p)==="object"&&typeof p.getAttributeType=="function"&&!wr)switch(p.getAttributeType(kd,Fi)){case"TrustedHTML":{Nt=m.createHTML(Nt);break}case"TrustedScriptURL":{Nt=m.createScriptURL(Nt);break}}try{wr?Qe.setAttributeNS(wr,rs,Nt):Qe.setAttribute(rs,Nt),zs(Qe)?go(Qe):s0e(e.removed)}catch{}}}}ur("afterSanitizeAttributes",Qe,null)}},Wa=function Qe(Yt){var Nt,Fi=fn(Yt);for(ur("beforeSanitizeShadowDOM",Yt,null);Nt=Fi.nextNode();)ur("uponSanitizeShadowNode",Nt,null),!Ks(Nt)&&(Nt.content instanceof r&&Qe(Nt.content),qs(Nt));ur("afterSanitizeShadowDOM",Yt,null)};return e.sanitize=function(Qe){var Yt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Nt,Fi,Po,os,xo;if(Xe=!Qe,Xe&&(Qe="<!-->"),typeof Qe!="string"&&!cr(Qe))if(typeof Qe.toString=="function"){if(Qe=Qe.toString(),typeof Qe!="string")throw Zz("dirty is not a string, aborting")}else throw Zz("toString is not a function");if(!e.isSupported){if(H0(t.toStaticHTML)==="object"||typeof t.toStaticHTML=="function"){if(typeof Qe=="string")return t.toStaticHTML(Qe);if(cr(Qe))return t.toStaticHTML(Qe.outerHTML)}return Qe}if(Ie||wi(Yt),e.removed=[],typeof Qe=="string"&&(Be=!1),Be){if(Qe.nodeName){var wn=kt(Qe.nodeName);if(!ie[wn]||Ce[wn])throw Zz("root node is forbidden and cannot be sanitized in-place")}}else if(Qe instanceof s)Nt=Ja("<!---->"),Fi=Nt.ownerDocument.importNode(Qe,!0),Fi.nodeType===1&&Fi.nodeName==="BODY"||Fi.nodeName==="HTML"?Nt=Fi:Nt.appendChild(Fi);else{if(!xe&&!Le&&!se&&Qe.indexOf("<")===-1)return m&&$?m.createHTML(Qe):Qe;if(Nt=Ja(Qe),!Nt)return xe?null:$?C:""}Nt&&De&&go(Nt.firstChild);for(var rs=fn(Be?Qe:Nt);Po=rs.nextNode();)Po.nodeType===3&&Po===os||Ks(Po)||(Po.content instanceof r&&Wa(Po.content),qs(Po),os=Po);if(os=null,Be)return Qe;if(xe){if(q)for(xo=T.call(Nt.ownerDocument);Nt.firstChild;)xo.appendChild(Nt.firstChild);else xo=Nt;return(te.shadowroot||te.shadowrootmod)&&(xo=S.call(i,xo,!0)),xo}var wr=se?Nt.outerHTML:Nt.innerHTML;return se&&ie["!doctype"]&&Nt.ownerDocument&&Nt.ownerDocument.doctype&&Nt.ownerDocument.doctype.name&&Js(uOi,Nt.ownerDocument.doctype.name)&&(wr="<!DOCTYPE "+Nt.ownerDocument.doctype.name+`>
1873
1873
  `+wr),Le&&(wr=fc(wr,Y," "),wr=fc(wr,Z," "),wr=fc(wr,G," ")),m&&$?m.createHTML(wr):wr},e.setConfig=function(Qe){wi(Qe),Ie=!0},e.clearConfig=function(){Et=null,Ie=!1},e.isValidAttribute=function(Qe,Yt,Nt){Et||wi({});var Fi=kt(Qe),Po=kt(Yt);return fs(Fi,Po,Nt)},e.addHook=function(Qe,Yt){typeof Yt=="function"&&(R[Qe]=R[Qe]||[],sv(R[Qe],Yt))},e.removeHook=function(Qe){if(R[Qe])return s0e(R[Qe])},e.removeHooks=function(Qe){R[Qe]&&(R[Qe]=[])},e.removeAllHooks=function(){R={}},e}var AOi=d0e();const gOi=Object.freeze(Object.defineProperty({__proto__:null,default:AOi},Symbol.toStringTag,{value:"Module"}));var nv=function(t){return t&&t.Math===Math&&t},Gr=nv(typeof globalThis=="object"&&globalThis)||nv(typeof window=="object"&&window)||nv(typeof self=="object"&&self)||nv(typeof pr=="object"&&pr)||nv(typeof pr=="object"&&pr)||function(){return this}()||Function("return this")(),av={},Hr=function(t){try{return!!t()}catch{return!0}},MOi=Hr,wc=!MOi(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7}),fOi=Hr,hx=!fOi(function(){var t=function(){}.bind();return typeof t!="function"||t.hasOwnProperty("prototype")}),wOi=hx,px=Function.prototype.call,Ws=wOi?px.bind(px):function(){return px.apply(px,arguments)},h0e={},p0e={}.propertyIsEnumerable,A0e=Object.getOwnPropertyDescriptor,LOi=A0e&&!p0e.call({1:2},1);h0e.f=LOi?function(t){var e=A0e(this,t);return!!e&&e.enumerable}:p0e;var qz=function(t,e){return{enumerable:!(t&1),configurable:!(t&2),writable:!(t&4),value:e}},g0e=hx,M0e=Function.prototype,Xz=M0e.call,mOi=g0e&&M0e.bind.bind(Xz,Xz),Vr=g0e?mOi:function(t){return function(){return Xz.apply(t,arguments)}},f0e=Vr,yOi=f0e({}.toString),vOi=f0e("".slice),r1=function(t){return vOi(yOi(t),8,-1)},COi=Vr,IOi=Hr,jOi=r1,$z=Object,bOi=COi("".split),w0e=IOi(function(){return!$z("z").propertyIsEnumerable(0)})?function(t){return jOi(t)==="String"?bOi(t,""):$z(t)}:$z,s1=function(t){return t==null},xOi=s1,DOi=TypeError,Lc=function(t){if(xOi(t))throw new DOi("Can't call method on "+t);return t},NOi=w0e,SOi=Lc,lv=function(t){return NOi(SOi(t))},eP=typeof document=="object"&&document.all,Zr=typeof eP>"u"&&eP!==void 0?function(t){return typeof t=="function"||t===eP}:function(t){return typeof t=="function"},kOi=Zr,mc=function(t){return typeof t=="object"?t!==null:kOi(t)},tP=Gr,TOi=Zr,EOi=function(t){return TOi(t)?t:void 0},n1=function(t,e){return arguments.length<2?EOi(tP[t]):tP[t]&&tP[t][e]},zOi=Vr,Ax=zOi({}.isPrototypeOf),gx=typeof navigator<"u"&&String(navigator.userAgent)||"",L0e=Gr,iP=gx,m0e=L0e.process,y0e=L0e.Deno,v0e=m0e&&m0e.versions||y0e&&y0e.version,C0e=v0e&&v0e.v8,yc,Mx;C0e&&(yc=C0e.split("."),Mx=yc[0]>0&&yc[0]<4?1:+(yc[0]+yc[1])),!Mx&&iP&&(yc=iP.match(/Edge\/(\d+)/),(!yc||yc[1]>=74)&&(yc=iP.match(/Chrome\/(\d+)/),yc&&(Mx=+yc[1])));var oP=Mx,I0e=oP,POi=Hr,BOi=Gr,OOi=BOi.String,j0e=!!Object.getOwnPropertySymbols&&!POi(function(){var t=Symbol("symbol detection");return!OOi(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&I0e&&I0e<41}),ROi=j0e,b0e=ROi&&!Symbol.sham&&typeof Symbol.iterator=="symbol",UOi=n1,FOi=Zr,YOi=Ax,QOi=b0e,GOi=Object,x0e=QOi?function(t){return typeof t=="symbol"}:function(t){var e=UOi("Symbol");return FOi(e)&&YOi(e.prototype,GOi(t))},HOi=String,fx=function(t){try{return HOi(t)}catch{return"Object"}},VOi=Zr,ZOi=fx,JOi=TypeError,yd=function(t){if(VOi(t))return t;throw new JOi(ZOi(t)+" is not a function")},WOi=yd,KOi=s1,cf=function(t,e){var i=t[e];return KOi(i)?void 0:WOi(i)},rP=Ws,sP=Zr,nP=mc,_Oi=TypeError,qOi=function(t,e){var i,o;if(e==="string"&&sP(i=t.toString)&&!nP(o=rP(i,t))||sP(i=t.valueOf)&&!nP(o=rP(i,t))||e!=="string"&&sP(i=t.toString)&&!nP(o=rP(i,t)))return o;throw new _Oi("Can't convert object to primitive value")},D0e={exports:{}},N0e=Gr,XOi=Object.defineProperty,aP=function(t,e){try{XOi(N0e,t,{value:e,configurable:!0,writable:!0})}catch{N0e[t]=e}return e},$Oi=Gr,eRi=aP,S0e="__core-js_shared__",k0e=D0e.exports=$Oi[S0e]||eRi(S0e,{});(k0e.versions||(k0e.versions=[])).push({version:"3.37.1",mode:"global",copyright:"\xA9 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.37.1/LICENSE",source:"https://github.com/zloirock/core-js"});var lP=D0e.exports,T0e=lP,cP=function(t,e){return T0e[t]||(T0e[t]=e||{})},tRi=Lc,iRi=Object,wx=function(t){return iRi(tRi(t))},oRi=Vr,rRi=wx,sRi=oRi({}.hasOwnProperty),vc=Object.hasOwn||function(t,e){return sRi(rRi(t),e)},nRi=Vr,aRi=0,lRi=Math.random(),cRi=nRi(1 .toString),E0e=function(t){return"Symbol("+(t===void 0?"":t)+")_"+cRi(++aRi+lRi,36)},uRi=Gr,dRi=cP,z0e=vc,hRi=E0e,pRi=j0e,ARi=b0e,uf=uRi.Symbol,uP=dRi("wks"),gRi=ARi?uf.for||uf:uf&&uf.withoutSetter||hRi,ks=function(t){return z0e(uP,t)||(uP[t]=pRi&&z0e(uf,t)?uf[t]:gRi("Symbol."+t)),uP[t]},MRi=Ws,P0e=mc,B0e=x0e,fRi=cf,wRi=qOi,LRi=ks,mRi=TypeError,yRi=LRi("toPrimitive"),vRi=function(t,e){if(!P0e(t)||B0e(t))return t;var i=fRi(t,yRi),o;if(i){if(e===void 0&&(e="default"),o=MRi(i,t,e),!P0e(o)||B0e(o))return o;throw new mRi("Can't convert object to primitive value")}return e===void 0&&(e="number"),wRi(t,e)},CRi=vRi,IRi=x0e,O0e=function(t){var e=CRi(t,"string");return IRi(e)?e:e+""},jRi=Gr,R0e=mc,dP=jRi.document,bRi=R0e(dP)&&R0e(dP.createElement),Lx=function(t){return bRi?dP.createElement(t):{}},xRi=wc,DRi=Hr,NRi=Lx,U0e=!xRi&&!DRi(function(){return Object.defineProperty(NRi("div"),"a",{get:function(){return 7}}).a!==7}),SRi=wc,kRi=Ws,TRi=h0e,ERi=qz,zRi=lv,PRi=O0e,BRi=vc,ORi=U0e,F0e=Object.getOwnPropertyDescriptor;av.f=SRi?F0e:function(t,e){if(t=zRi(t),e=PRi(e),ORi)try{return F0e(t,e)}catch{}if(BRi(t,e))return ERi(!kRi(TRi.f,t,e),t[e])};var vd={},RRi=wc,URi=Hr,Y0e=RRi&&URi(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42}),FRi=mc,YRi=String,QRi=TypeError,Qn=function(t){if(FRi(t))return t;throw new QRi(YRi(t)+" is not an object")},GRi=wc,HRi=U0e,VRi=Y0e,mx=Qn,Q0e=O0e,ZRi=TypeError,hP=Object.defineProperty,JRi=Object.getOwnPropertyDescriptor,pP="enumerable",AP="configurable",gP="writable";vd.f=GRi?VRi?function(t,e,i){if(mx(t),e=Q0e(e),mx(i),typeof t=="function"&&e==="prototype"&&"value"in i&&gP in i&&!i[gP]){var o=JRi(t,e);o&&o[gP]&&(t[e]=i.value,i={configurable:AP in i?i[AP]:o[AP],enumerable:pP in i?i[pP]:o[pP],writable:!1})}return hP(t,e,i)}:hP:function(t,e,i){if(mx(t),e=Q0e(e),mx(i),HRi)try{return hP(t,e,i)}catch{}if("get"in i||"set"in i)throw new ZRi("Accessors not supported");return"value"in i&&(t[e]=i.value),t};var WRi=wc,KRi=vd,_Ri=qz,cv=WRi?function(t,e,i){return KRi.f(t,e,_Ri(1,i))}:function(t,e,i){return t[e]=i,t},G0e={exports:{}},MP=wc,qRi=vc,H0e=Function.prototype,XRi=MP&&Object.getOwnPropertyDescriptor,fP=qRi(H0e,"name"),$Ri=fP&&function(){}.name==="something",eUi=fP&&(!MP||MP&&XRi(H0e,"name").configurable),yx={EXISTS:fP,PROPER:$Ri,CONFIGURABLE:eUi},tUi=Vr,iUi=Zr,wP=lP,oUi=tUi(Function.toString);iUi(wP.inspectSource)||(wP.inspectSource=function(t){return oUi(t)});var LP=wP.inspectSource,rUi=Gr,sUi=Zr,V0e=rUi.WeakMap,nUi=sUi(V0e)&&/native code/.test(String(V0e)),aUi=cP,lUi=E0e,Z0e=aUi("keys"),mP=function(t){return Z0e[t]||(Z0e[t]=lUi(t))},yP={},cUi=nUi,J0e=Gr,uUi=mc,dUi=cv,vP=vc,CP=lP,hUi=mP,pUi=yP,W0e="Object already initialized",IP=J0e.TypeError,AUi=J0e.WeakMap,vx,uv,Cx,gUi=function(t){return Cx(t)?uv(t):vx(t,{})},MUi=function(t){return function(e){var i;if(!uUi(e)||(i=uv(e)).type!==t)throw new IP("Incompatible receiver, "+t+" required");return i}};if(cUi||CP.state){var Au=CP.state||(CP.state=new AUi);Au.get=Au.get,Au.has=Au.has,Au.set=Au.set,vx=function(t,e){if(Au.has(t))throw new IP(W0e);return e.facade=t,Au.set(t,e),e},uv=function(t){return Au.get(t)||{}},Cx=function(t){return Au.has(t)}}else{var df=hUi("state");pUi[df]=!0,vx=function(t,e){if(vP(t,df))throw new IP(W0e);return e.facade=t,dUi(t,df,e),e},uv=function(t){return vP(t,df)?t[df]:{}},Cx=function(t){return vP(t,df)}}var Ix={set:vx,get:uv,has:Cx,enforce:gUi,getterFor:MUi},jP=Vr,fUi=Hr,wUi=Zr,jx=vc,bP=wc,LUi=yx.CONFIGURABLE,mUi=LP,K0e=Ix,yUi=K0e.enforce,vUi=K0e.get,_0e=String,bx=Object.defineProperty,CUi=jP("".slice),IUi=jP("".replace),jUi=jP([].join),bUi=bP&&!fUi(function(){return bx(function(){},"length",{value:8}).length!==8}),xUi=String(String).split("String"),DUi=G0e.exports=function(t,e,i){CUi(_0e(e),0,7)==="Symbol("&&(e="["+IUi(_0e(e),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),i&&i.getter&&(e="get "+e),i&&i.setter&&(e="set "+e),(!jx(t,"name")||LUi&&t.name!==e)&&(bP?bx(t,"name",{value:e,configurable:!0}):t.name=e),bUi&&i&&jx(i,"arity")&&t.length!==i.arity&&bx(t,"length",{value:i.arity});try{i&&jx(i,"constructor")&&i.constructor?bP&&bx(t,"prototype",{writable:!1}):t.prototype&&(t.prototype=void 0)}catch{}var o=yUi(t);return jx(o,"source")||(o.source=jUi(xUi,typeof e=="string"?e:"")),t};Function.prototype.toString=DUi(function(){return wUi(this)&&vUi(this).source||mUi(this)},"toString");var q0e=G0e.exports,NUi=Zr,SUi=vd,kUi=q0e,TUi=aP,a1=function(t,e,i,o){o||(o={});var r=o.enumerable,n=o.name!==void 0?o.name:e;if(NUi(i)&&kUi(i,n,o),o.global)r?t[e]=i:TUi(e,i);else{try{o.unsafe?t[e]&&(r=!0):delete t[e]}catch{}r?t[e]=i:SUi.f(t,e,{value:i,enumerable:!1,configurable:!o.nonConfigurable,writable:!o.nonWritable})}return t},X0e={},EUi=Math.ceil,zUi=Math.floor,PUi=Math.trunc||function(t){var e=+t;return(e>0?zUi:EUi)(e)},BUi=PUi,xx=function(t){var e=+t;return e!==e||e===0?0:BUi(e)},OUi=xx,RUi=Math.max,UUi=Math.min,FUi=function(t,e){var i=OUi(t);return i<0?RUi(i+e,0):UUi(i,e)},YUi=xx,QUi=Math.min,hf=function(t){var e=YUi(t);return e>0?QUi(e,9007199254740991):0},GUi=hf,xP=function(t){return GUi(t.length)},HUi=lv,VUi=FUi,ZUi=xP,$0e=function(t){return function(e,i,o){var r=HUi(e),n=ZUi(r);if(n===0)return!t&&-1;var s=VUi(o,n),a;if(t&&i!==i){for(;n>s;)if(a=r[s++],a!==a)return!0}else for(;n>s;s++)if((t||s in r)&&r[s]===i)return t||s||0;return!t&&-1}},epe={includes:$0e(!0),indexOf:$0e(!1)},JUi=Vr,DP=vc,WUi=lv,KUi=epe.indexOf,_Ui=yP,tpe=JUi([].push),ipe=function(t,e){var i=WUi(t),o=0,r=[],n;for(n in i)!DP(_Ui,n)&&DP(i,n)&&tpe(r,n);for(;e.length>o;)DP(i,n=e[o++])&&(~KUi(r,n)||tpe(r,n));return r},NP=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],qUi=ipe,XUi=NP,$Ui=XUi.concat("length","prototype");X0e.f=Object.getOwnPropertyNames||function(t){return qUi(t,$Ui)};var ope={};ope.f=Object.getOwnPropertySymbols;var eFi=n1,tFi=Vr,iFi=X0e,oFi=ope,rFi=Qn,sFi=tFi([].concat),nFi=eFi("Reflect","ownKeys")||function(t){var e=iFi.f(rFi(t)),i=oFi.f;return i?sFi(e,i(t)):e},rpe=vc,aFi=nFi,lFi=av,cFi=vd,uFi=function(t,e,i){for(var o=aFi(e),r=cFi.f,n=lFi.f,s=0;s<o.length;s++){var a=o[s];!rpe(t,a)&&!(i&&rpe(i,a))&&r(t,a,n(e,a))}},dFi=Hr,hFi=Zr,pFi=/#|\.prototype\./,dv=function(t,e){var i=gFi[AFi(t)];return i===fFi?!0:i===MFi?!1:hFi(e)?dFi(e):!!e},AFi=dv.normalize=function(t){return String(t).replace(pFi,".").toLowerCase()},gFi=dv.data={},MFi=dv.NATIVE="N",fFi=dv.POLYFILL="P",spe=dv,Dx=Gr,wFi=av.f,LFi=cv,mFi=a1,yFi=aP,vFi=uFi,CFi=spe,Gn=function(t,e){var i=t.target,o=t.global,r=t.stat,n,s,a,l,c,u;if(o?s=Dx:r?s=Dx[i]||yFi(i,{}):s=Dx[i]&&Dx[i].prototype,s)for(a in e){if(c=e[a],t.dontCallGetSet?(u=wFi(s,a),l=u&&u.value):l=s[a],n=CFi(o?a:i+(r?".":"#")+a,t.forced),!n&&l!==void 0){if(typeof c==typeof l)continue;vFi(c,l)}(t.sham||l&&l.sham)&&LFi(c,"sham",!0),mFi(s,a,c,t)}},IFi=Gr,jFi=r1,hv=jFi(IFi.process)==="process",bFi=Vr,xFi=yd,DFi=function(t,e,i){try{return bFi(xFi(Object.getOwnPropertyDescriptor(t,e)[i]))}catch{}},NFi=mc,SFi=function(t){return NFi(t)||t===null},kFi=SFi,TFi=String,EFi=TypeError,zFi=function(t){if(kFi(t))return t;throw new EFi("Can't set "+TFi(t)+" as a prototype")},PFi=DFi,BFi=mc,OFi=Lc,RFi=zFi,npe=Object.setPrototypeOf||("__proto__"in{}?function(){var t=!1,e={},i;try{i=PFi(Object.prototype,"__proto__","set"),i(e,[]),t=e instanceof Array}catch{}return function(o,r){return OFi(o),RFi(r),BFi(o)&&(t?i(o,r):o.__proto__=r),o}}():void 0),UFi=vd.f,FFi=vc,YFi=ks,ape=YFi("toStringTag"),Nx=function(t,e,i){t&&!i&&(t=t.prototype),t&&!FFi(t,ape)&&UFi(t,ape,{configurable:!0,value:e})},lpe=q0e,QFi=vd,GFi=function(t,e,i){return i.get&&lpe(i.get,e,{getter:!0}),i.set&&lpe(i.set,e,{setter:!0}),QFi.f(t,e,i)},HFi=n1,VFi=GFi,ZFi=ks,JFi=wc,cpe=ZFi("species"),WFi=function(t){var e=HFi(t);JFi&&e&&!e[cpe]&&VFi(e,cpe,{configurable:!0,get:function(){return this}})},KFi=Ax,_Fi=TypeError,qFi=function(t,e){if(KFi(e,t))return t;throw new _Fi("Incorrect invocation")},XFi=ks,$Fi=XFi("toStringTag"),upe={};upe[$Fi]="z";var eYi=String(upe)==="[object z]",tYi=eYi,iYi=Zr,Sx=r1,oYi=ks,rYi=oYi("toStringTag"),sYi=Object,nYi=Sx(function(){return arguments}())==="Arguments",aYi=function(t,e){try{return t[e]}catch{}},SP=tYi?Sx:function(t){var e,i,o;return t===void 0?"Undefined":t===null?"Null":typeof(i=aYi(e=sYi(t),rYi))=="string"?i:nYi?Sx(e):(o=Sx(e))==="Object"&&iYi(e.callee)?"Arguments":o},lYi=Vr,cYi=Hr,dpe=Zr,uYi=SP,dYi=n1,hYi=LP,hpe=function(){},ppe=dYi("Reflect","construct"),kP=/^\s*(?:class|function)\b/,pYi=lYi(kP.exec),AYi=!kP.test(hpe),pv=function(t){if(!dpe(t))return!1;try{return ppe(hpe,[],t),!0}catch{return!1}},Ape=function(t){if(!dpe(t))return!1;switch(uYi(t)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return AYi||!!pYi(kP,hYi(t))}catch{return!0}};Ape.sham=!0;var gYi=!ppe||cYi(function(){var t;return pv(pv.call)||!pv(Object)||!pv(function(){t=!0})||t})?Ape:pv,MYi=gYi,fYi=fx,wYi=TypeError,LYi=function(t){if(MYi(t))return t;throw new wYi(fYi(t)+" is not a constructor")},gpe=Qn,mYi=LYi,yYi=s1,vYi=ks,CYi=vYi("species"),Mpe=function(t,e){var i=gpe(t).constructor,o;return i===void 0||yYi(o=gpe(i)[CYi])?e:mYi(o)},IYi=hx,fpe=Function.prototype,wpe=fpe.apply,Lpe=fpe.call,mpe=typeof Reflect=="object"&&Reflect.apply||(IYi?Lpe.bind(wpe):function(){return Lpe.apply(wpe,arguments)}),jYi=r1,bYi=Vr,kx=function(t){if(jYi(t)==="Function")return bYi(t)},ype=kx,xYi=yd,DYi=hx,NYi=ype(ype.bind),TP=function(t,e){return xYi(t),e===void 0?t:DYi?NYi(t,e):function(){return t.apply(e,arguments)}},SYi=n1,vpe=SYi("document","documentElement"),kYi=Vr,TYi=kYi([].slice),EYi=TypeError,zYi=function(t,e){if(t<e)throw new EYi("Not enough arguments");return t},PYi=gx,Cpe=/(?:ipad|iphone|ipod).*applewebkit/i.test(PYi),Za=Gr,BYi=mpe,OYi=TP,Ipe=Zr,RYi=vc,jpe=Hr,bpe=vpe,UYi=TYi,xpe=Lx,FYi=zYi,YYi=Cpe,QYi=hv,EP=Za.setImmediate,zP=Za.clearImmediate,GYi=Za.process,PP=Za.Dispatch,HYi=Za.Function,Dpe=Za.MessageChannel,VYi=Za.String,BP=0,Av={},Npe="onreadystatechange",gv,l1,OP,RP;jpe(function(){gv=Za.location});var UP=function(t){if(RYi(Av,t)){var e=Av[t];delete Av[t],e()}},FP=function(t){return function(){UP(t)}},Spe=function(t){UP(t.data)},kpe=function(t){Za.postMessage(VYi(t),gv.protocol+"//"+gv.host)};(!EP||!zP)&&(EP=function(t){FYi(arguments.length,1);var e=Ipe(t)?t:HYi(t),i=UYi(arguments,1);return Av[++BP]=function(){BYi(e,void 0,i)},l1(BP),BP},zP=function(t){delete Av[t]},QYi?l1=function(t){GYi.nextTick(FP(t))}:PP&&PP.now?l1=function(t){PP.now(FP(t))}:Dpe&&!YYi?(OP=new Dpe,RP=OP.port2,OP.port1.onmessage=Spe,l1=OYi(RP.postMessage,RP)):Za.addEventListener&&Ipe(Za.postMessage)&&!Za.importScripts&&gv&&gv.protocol!=="file:"&&!jpe(kpe)?(l1=kpe,Za.addEventListener("message",Spe,!1)):Npe in xpe("script")?l1=function(t){bpe.appendChild(xpe("script"))[Npe]=function(){bpe.removeChild(this),UP(t)}}:l1=function(t){setTimeout(FP(t),0)});var Tpe={set:EP,clear:zP},Epe=Gr,ZYi=wc,JYi=Object.getOwnPropertyDescriptor,WYi=function(t){if(!ZYi)return Epe[t];var e=JYi(Epe,t);return e&&e.value},zpe=function(){this.head=null,this.tail=null};zpe.prototype={add:function(t){var e={item:t,next:null},i=this.tail;i?i.next=e:this.head=e,this.tail=e},get:function(){var t=this.head;if(t){var e=this.head=t.next;return e===null&&(this.tail=null),t.item}}};var Ppe=zpe,KYi=gx,_Yi=/ipad|iphone|ipod/i.test(KYi)&&typeof Pebble<"u",qYi=gx,XYi=/web0s(?!.*chrome)/i.test(qYi),pf=Gr,$Yi=WYi,Bpe=TP,YP=Tpe.set,eQi=Ppe,tQi=Cpe,iQi=_Yi,oQi=XYi,QP=hv,Ope=pf.MutationObserver||pf.WebKitMutationObserver,Rpe=pf.document,Upe=pf.process,Tx=pf.Promise,GP=$Yi("queueMicrotask"),Af,HP,VP,Ex,Fpe;if(!GP){var zx=new eQi,Px=function(){var t,e;for(QP&&(t=Upe.domain)&&t.exit();e=zx.get();)try{e()}catch(i){throw zx.head&&Af(),i}t&&t.enter()};!tQi&&!QP&&!oQi&&Ope&&Rpe?(HP=!0,VP=Rpe.createTextNode(""),new Ope(Px).observe(VP,{characterData:!0}),Af=function(){VP.data=HP=!HP}):!iQi&&Tx&&Tx.resolve?(Ex=Tx.resolve(void 0),Ex.constructor=Tx,Fpe=Bpe(Ex.then,Ex),Af=function(){Fpe(Px)}):QP?Af=function(){Upe.nextTick(Px)}:(YP=Bpe(YP,pf),Af=function(){YP(Px)}),GP=function(t){zx.head||Af(),zx.add(t)}}var rQi=GP,sQi=function(t,e){try{arguments.length===1?console.error(t):console.error(t,e)}catch{}},ZP=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}},nQi=Gr,Bx=nQi.Promise,Ype=typeof Deno=="object"&&Deno&&typeof Deno.version=="object",aQi=Ype,lQi=hv,cQi=!aQi&&!lQi&&typeof window=="object"&&typeof document=="object",uQi=Gr,Mv=Bx,dQi=Zr,hQi=spe,pQi=LP,AQi=ks,gQi=cQi,MQi=Ype,JP=oP;Mv&&Mv.prototype;var fQi=AQi("species"),WP=!1,Qpe=dQi(uQi.PromiseRejectionEvent),wQi=hQi("Promise",function(){var t=pQi(Mv),e=t!==String(Mv);if(!e&&JP===66)return!0;if(!JP||JP<51||!/native code/.test(t)){var i=new Mv(function(n){n(1)}),o=function(n){n(function(){},function(){})},r=i.constructor={};if(r[fQi]=o,WP=i.then(function(){})instanceof o,!WP)return!0}return!e&&(gQi||MQi)&&!Qpe}),fv={CONSTRUCTOR:wQi,REJECTION_EVENT:Qpe,SUBCLASSING:WP},gf={},Gpe=yd,LQi=TypeError,mQi=function(t){var e,i;this.promise=new t(function(o,r){if(e!==void 0||i!==void 0)throw new LQi("Bad Promise constructor");e=o,i=r}),this.resolve=Gpe(e),this.reject=Gpe(i)};gf.f=function(t){return new mQi(t)};var yQi=Gn,Ox=hv,V0=Gr,Mf=Ws,Hpe=a1,Vpe=npe,vQi=Nx,CQi=WFi,IQi=yd,Rx=Zr,jQi=mc,bQi=qFi,xQi=Mpe,Zpe=Tpe.set,KP=rQi,DQi=sQi,NQi=ZP,SQi=Ppe,Jpe=Ix,Ux=Bx,_P=fv,Wpe=gf,Fx="Promise",Kpe=_P.CONSTRUCTOR,kQi=_P.REJECTION_EVENT,TQi=_P.SUBCLASSING,qP=Jpe.getterFor(Fx),EQi=Jpe.set,ff=Ux&&Ux.prototype,c1=Ux,Yx=ff,_pe=V0.TypeError,XP=V0.document,$P=V0.process,eB=Wpe.f,zQi=eB,PQi=!!(XP&&XP.createEvent&&V0.dispatchEvent),qpe="unhandledrejection",BQi="rejectionhandled",Xpe=0,$pe=1,OQi=2,tB=1,eAe=2,Qx,tAe,RQi,iAe,oAe=function(t){var e;return jQi(t)&&Rx(e=t.then)?e:!1},rAe=function(t,e){var i=e.value,o=e.state===$pe,r=o?t.ok:t.fail,n=t.resolve,s=t.reject,a=t.domain,l,c,u;try{r?(o||(e.rejection===eAe&&FQi(e),e.rejection=tB),r===!0?l=i:(a&&a.enter(),l=r(i),a&&(a.exit(),u=!0)),l===t.promise?s(new _pe("Promise-chain cycle")):(c=oAe(l))?Mf(c,l,n,s):n(l)):s(i)}catch(d){a&&!u&&a.exit(),s(d)}},sAe=function(t,e){t.notified||(t.notified=!0,KP(function(){for(var i=t.reactions,o;o=i.get();)rAe(o,t);t.notified=!1,e&&!t.rejection&&UQi(t)}))},nAe=function(t,e,i){var o,r;PQi?(o=XP.createEvent("Event"),o.promise=e,o.reason=i,o.initEvent(t,!1,!0),V0.dispatchEvent(o)):o={promise:e,reason:i},!kQi&&(r=V0["on"+t])?r(o):t===qpe&&DQi("Unhandled promise rejection",i)},UQi=function(t){Mf(Zpe,V0,function(){var e=t.facade,i=t.value,o=aAe(t),r;if(o&&(r=NQi(function(){Ox?$P.emit("unhandledRejection",i,e):nAe(qpe,e,i)}),t.rejection=Ox||aAe(t)?eAe:tB,r.error))throw r.value})},aAe=function(t){return t.rejection!==tB&&!t.parent},FQi=function(t){Mf(Zpe,V0,function(){var e=t.facade;Ox?$P.emit("rejectionHandled",e):nAe(BQi,e,t.value)})},wf=function(t,e,i){return function(o){t(e,o,i)}},Lf=function(t,e,i){t.done||(t.done=!0,i&&(t=i),t.value=e,t.state=OQi,sAe(t,!0))},iB=function(t,e,i){if(!t.done){t.done=!0,i&&(t=i);try{if(t.facade===e)throw new _pe("Promise can't be resolved itself");var o=oAe(e);o?KP(function(){var r={done:!1};try{Mf(o,e,wf(iB,r,t),wf(Lf,r,t))}catch(n){Lf(r,n,t)}}):(t.value=e,t.state=$pe,sAe(t,!1))}catch(r){Lf({done:!1},r,t)}}};if(Kpe&&(c1=function(t){bQi(this,Yx),IQi(t),Mf(Qx,this);var e=qP(this);try{t(wf(iB,e),wf(Lf,e))}catch(i){Lf(e,i)}},Yx=c1.prototype,Qx=function(t){EQi(this,{type:Fx,done:!1,notified:!1,parent:!1,reactions:new SQi,rejection:!1,state:Xpe,value:void 0})},Qx.prototype=Hpe(Yx,"then",function(t,e){var i=qP(this),o=eB(xQi(this,c1));return i.parent=!0,o.ok=Rx(t)?t:!0,o.fail=Rx(e)&&e,o.domain=Ox?$P.domain:void 0,i.state===Xpe?i.reactions.add(o):KP(function(){rAe(o,i)}),o.promise}),tAe=function(){var t=new Qx,e=qP(t);this.promise=t,this.resolve=wf(iB,e),this.reject=wf(Lf,e)},Wpe.f=eB=function(t){return t===c1||t===RQi?new tAe(t):zQi(t)},Rx(Ux)&&ff!==Object.prototype)){iAe=ff.then,TQi||Hpe(ff,"then",function(t,e){var i=this;return new c1(function(o,r){Mf(iAe,i,o,r)}).then(t,e)},{unsafe:!0});try{delete ff.constructor}catch{}Vpe&&Vpe(ff,Yx)}yQi({global:!0,constructor:!0,wrap:!0,forced:Kpe},{Promise:c1}),vQi(c1,Fx,!1),CQi(Fx);var wv={},YQi=ks,QQi=wv,GQi=YQi("iterator"),HQi=Array.prototype,VQi=function(t){return t!==void 0&&(QQi.Array===t||HQi[GQi]===t)},ZQi=SP,lAe=cf,JQi=s1,WQi=wv,KQi=ks,_Qi=KQi("iterator"),cAe=function(t){if(!JQi(t))return lAe(t,_Qi)||lAe(t,"@@iterator")||WQi[ZQi(t)]},qQi=Ws,XQi=yd,$Qi=Qn,eGi=fx,tGi=cAe,iGi=TypeError,oGi=function(t,e){var i=arguments.length<2?tGi(t):e;if(XQi(i))return $Qi(qQi(i,t));throw new iGi(eGi(t)+" is not iterable")},rGi=Ws,uAe=Qn,sGi=cf,nGi=function(t,e,i){var o,r;uAe(t);try{if(o=sGi(t,"return"),!o){if(e==="throw")throw i;return i}o=rGi(o,t)}catch(n){r=!0,o=n}if(e==="throw")throw i;if(r)throw o;return uAe(o),i},aGi=TP,lGi=Ws,cGi=Qn,uGi=fx,dGi=VQi,hGi=xP,dAe=Ax,pGi=oGi,AGi=cAe,hAe=nGi,gGi=TypeError,Gx=function(t,e){this.stopped=t,this.result=e},pAe=Gx.prototype,AAe=function(t,e,i){var o=i&&i.that,r=!!(i&&i.AS_ENTRIES),n=!!(i&&i.IS_RECORD),s=!!(i&&i.IS_ITERATOR),a=!!(i&&i.INTERRUPTED),l=aGi(e,o),c,u,d,h,p,g,A,M=function(L){return c&&hAe(c,"normal",L),new Gx(!0,L)},f=function(L){return r?(cGi(L),a?l(L[0],L[1],M):l(L[0],L[1])):a?l(L,M):l(L)};if(n)c=t.iterator;else if(s)c=t;else{if(u=AGi(t),!u)throw new gGi(uGi(t)+" is not iterable");if(dGi(u)){for(d=0,h=hGi(t);h>d;d++)if(p=f(t[d]),p&&dAe(pAe,p))return p;return new Gx(!1)}c=pGi(t,u)}for(g=n?t.next:c.next;!(A=lGi(g,c)).done;){try{p=f(A.value)}catch(L){hAe(c,"throw",L)}if(typeof p=="object"&&p&&dAe(pAe,p))return p}return new Gx(!1)},MGi=ks,gAe=MGi("iterator"),MAe=!1;try{var fGi=0,fAe={next:function(){return{done:!!fGi++}},return:function(){MAe=!0}};fAe[gAe]=function(){return this},Array.from(fAe,function(){throw 2})}catch{}var wGi=function(t,e){try{if(!e&&!MAe)return!1}catch{return!1}var i=!1;try{var o={};o[gAe]=function(){return{next:function(){return{done:i=!0}}}},t(o)}catch{}return i},LGi=Bx,mGi=wGi,yGi=fv.CONSTRUCTOR,wAe=yGi||!mGi(function(t){LGi.all(t).then(void 0,function(){})}),vGi=Gn,CGi=Ws,IGi=yd,jGi=gf,bGi=ZP,xGi=AAe,DGi=wAe;vGi({target:"Promise",stat:!0,forced:DGi},{all:function(t){var e=this,i=jGi.f(e),o=i.resolve,r=i.reject,n=bGi(function(){var s=IGi(e.resolve),a=[],l=0,c=1;xGi(t,function(u){var d=l++,h=!1;c++,CGi(s,e,u).then(function(p){h||(h=!0,a[d]=p,--c||o(a))},r)}),--c||o(a)});return n.error&&r(n.value),i.promise}});var NGi=Gn,SGi=fv.CONSTRUCTOR,oB=Bx,kGi=n1,TGi=Zr,EGi=a1,LAe=oB&&oB.prototype;if(NGi({target:"Promise",proto:!0,forced:SGi,real:!0},{catch:function(t){return this.then(void 0,t)}}),TGi(oB)){var mAe=kGi("Promise").prototype.catch;LAe.catch!==mAe&&EGi(LAe,"catch",mAe,{unsafe:!0})}var zGi=Gn,PGi=Ws,BGi=yd,OGi=gf,RGi=ZP,UGi=AAe,FGi=wAe;zGi({target:"Promise",stat:!0,forced:FGi},{race:function(t){var e=this,i=OGi.f(e),o=i.reject,r=RGi(function(){var n=BGi(e.resolve);UGi(t,function(s){PGi(n,e,s).then(i.resolve,o)})});return r.error&&o(r.value),i.promise}});var YGi=Gn,QGi=gf,GGi=fv.CONSTRUCTOR;YGi({target:"Promise",stat:!0,forced:GGi},{reject:function(t){var e=QGi.f(this),i=e.reject;return i(t),e.promise}});var HGi=Qn,VGi=mc,ZGi=gf,JGi=function(t,e){if(HGi(t),VGi(e)&&e.constructor===t)return e;var i=ZGi.f(t),o=i.resolve;return o(e),i.promise},WGi=Gn,KGi=n1,_Gi=fv.CONSTRUCTOR,qGi=JGi;KGi("Promise"),WGi({target:"Promise",stat:!0,forced:_Gi},{resolve:function(t){return qGi(this,t)}});function yAe(t,e,i,o,r,n,s){try{var a=t[n](s),l=a.value}catch(c){return void i(c)}a.done?e(l):Promise.resolve(l).then(o,r)}function Cd(t){return function(){var e=this,i=arguments;return new Promise(function(o,r){var n=t.apply(e,i);function s(l){yAe(n,o,r,s,a,"next",l)}function a(l){yAe(n,o,r,s,a,"throw",l)}s(void 0)})}}var XGi=SP,$Gi=String,gu=function(t){if(XGi(t)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return $Gi(t)},eHi=Qn,vAe=function(){var t=eHi(this),e="";return t.hasIndices&&(e+="d"),t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.unicodeSets&&(e+="v"),t.sticky&&(e+="y"),e},rB=Hr,tHi=Gr,sB=tHi.RegExp,nB=rB(function(){var t=sB("a","y");return t.lastIndex=2,t.exec("abcd")!==null}),iHi=nB||rB(function(){return!sB("a","y").sticky}),oHi=nB||rB(function(){var t=sB("^r","gy");return t.lastIndex=2,t.exec("str")!==null}),CAe={BROKEN_CARET:oHi,MISSED_STICKY:iHi,UNSUPPORTED_Y:nB},IAe={},rHi=ipe,sHi=NP,nHi=Object.keys||function(t){return rHi(t,sHi)},aHi=wc,lHi=Y0e,cHi=vd,uHi=Qn,dHi=lv,hHi=nHi;IAe.f=aHi&&!lHi?Object.defineProperties:function(t,e){uHi(t);for(var i=dHi(e),o=hHi(e),r=o.length,n=0,s;r>n;)cHi.f(t,s=o[n++],i[s]);return t};var pHi=Qn,AHi=IAe,jAe=NP,gHi=yP,MHi=vpe,fHi=Lx,wHi=mP,bAe=">",xAe="<",aB="prototype",lB="script",DAe=wHi("IE_PROTO"),cB=function(){},NAe=function(t){return xAe+lB+bAe+t+xAe+"/"+lB+bAe},SAe=function(t){t.write(NAe("")),t.close();var e=t.parentWindow.Object;return t=null,e},LHi=function(){var t=fHi("iframe"),e="java"+lB+":",i;return t.style.display="none",MHi.appendChild(t),t.src=String(e),i=t.contentWindow.document,i.open(),i.write(NAe("document.F=Object")),i.close(),i.F},Hx,Vx=function(){try{Hx=new ActiveXObject("htmlfile")}catch{}Vx=typeof document<"u"?document.domain&&Hx?SAe(Hx):LHi():SAe(Hx);for(var t=jAe.length;t--;)delete Vx[aB][jAe[t]];return Vx()};gHi[DAe]=!0;var uB=Object.create||function(t,e){var i;return t!==null?(cB[aB]=pHi(t),i=new cB,cB[aB]=null,i[DAe]=t):i=Vx(),e===void 0?i:AHi.f(i,e)},mHi=Hr,yHi=Gr,vHi=yHi.RegExp,CHi=mHi(function(){var t=vHi(".","s");return!(t.dotAll&&t.test(`