@babylonjs/node-editor 7.34.2 → 7.34.3
Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,3 @@
|
|
1
1
|
/*! For license information please see babylon.nodeEditor.js.LICENSE.txt */
|
2
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@babylonjs/core")):"function"==typeof define&&define.amd?define("@babylonjs/node-editor",["@babylonjs/core"],t):"object"==typeof exports?exports["@babylonjs/node-editor"]=t(require("@babylonjs/core")):e.NODEEDITOR=t(e.BABYLON)}("undefined"!=typeof self?self:"undefined"!=typeof global?global:this,(e=>(()=>{var t={5228:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'.color-picker-container{width:320px;height:300px;background-color:#fff;display:grid;grid-template-columns:100%;grid-template-rows:50% 50px 60px 40px 1fr auto;font-family:"acumin-pro-condensed";font-weight:normal;font-size:14px}.color-picker-container.with-hints{height:380px}.color-picker-container .color-picker-saturation{grid-row:1;grid-column:1;display:grid;grid-template-columns:100%;grid-template-rows:100%;position:relative;cursor:pointer}.color-picker-container .color-picker-saturation .color-picker-saturation-white{grid-row:1;grid-column:1;background:linear-gradient(to right, #fff, rgba(255, 255, 255, 0))}.color-picker-container .color-picker-saturation .color-picker-saturation-black{grid-row:1;grid-column:1;background:linear-gradient(to top, #000, rgba(0, 0, 0, 0))}.color-picker-container .color-picker-saturation .color-picker-saturation-cursor{pointer-events:none;width:4px;height:4px;box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px rgba(0,0,0,.3),0 0 1px 2px rgba(0,0,0,.4);border-radius:50%;transform:translate(-2px, -2px);position:absolute}.color-picker-container .color-picker-hue{grid-row:2;grid-column:1;display:grid;margin:10px;grid-template-columns:24% 76%;grid-template-rows:100%}.color-picker-container .color-picker-hue .color-picker-hue-color{grid-row:1;grid-column:1;align-self:center;justify-self:center;width:30px;height:30px;border-radius:15px;border:1px solid #000}.color-picker-container .color-picker-hue .color-picker-hue-slider{grid-row:1;grid-column:2;align-self:center;height:16px;position:relative;cursor:pointer;background:linear-gradient(to right, #f00 0%, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 83%, #f00 100%)}.color-picker-container .color-picker-hue .color-picker-hue-slider .color-picker-hue-cursor{pointer-events:none;width:8px;height:18px;transform:translate(-4px, -2px);background-color:#f8f8f8;box-shadow:0 1px 4px 0 rgba(0,0,0,.37);position:absolute}.color-picker-container .color-picker-component{display:grid;margin:5px;grid-template-columns:100%;grid-template-rows:50% 50%}.color-picker-container .color-picker-component .color-picker-component-value{justify-self:center;align-self:center;grid-row:1;grid-column:1;margin-bottom:4px}.color-picker-container .color-picker-component .color-picker-component-value input{width:50px}.color-picker-container .color-picker-component .color-picker-component-label{justify-self:center;align-self:center;grid-row:2;grid-column:1;color:#000}.color-picker-container .color-picker-rgb{grid-row:3;grid-column:1;display:grid;margin:10px;grid-template-columns:20% 6.66% 20% 6.66% 20% 6.66% 20%;grid-template-rows:100%}.color-picker-container .red{grid-row:1;grid-column:1}.color-picker-container .green{grid-row:1;grid-column:3}.color-picker-container .blue{grid-row:1;grid-column:5}.color-picker-container .alpha{grid-row:1;grid-column:7}.color-picker-container .alpha.grayed{opacity:.5}.color-picker-container .color-picker-hex{grid-row:4;grid-column:1;display:grid;grid-template-columns:20% 80%;grid-template-rows:100%}.color-picker-container .color-picker-hex .color-picker-hex-label{justify-self:center;align-self:center;grid-row:1;grid-column:1;margin-left:10px;color:#000}.color-picker-container .color-picker-hex .color-picker-hex-value{justify-self:left;align-self:center;grid-row:1;grid-column:2;margin-left:10px;margin-right:10px}.color-picker-container .color-picker-hex .color-picker-hex-value input{width:70px}.color-picker-container .color-picker-warning{color:#000;font-size:11px;padding:4px;justify-self:left;align-self:center;grid-row:6;grid-column:1}',"",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/colorPicker/colorPicker.scss"],names:[],mappings:"AAAA,wBACI,WAAA,CACA,YAAA,CACA,qBAAA,CACA,YAAA,CACA,0BAAA,CACA,8CAAA,CACA,kCAAA,CACA,kBAAA,CACA,cAAA,CAEA,mCACI,YAAA,CAGJ,iDACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,0BAAA,CACA,uBAAA,CACA,iBAAA,CACA,cAAA,CAEA,gFACI,UAAA,CACA,aAAA,CAEA,kEAAA,CAGJ,gFACI,UAAA,CACA,aAAA,CAEA,0DAAA,CAGJ,iFACI,mBAAA,CACA,SAAA,CACA,UAAA,CACA,uFACI,CAGJ,iBAAA,CACA,+BAAA,CACA,iBAAA,CAIR,0CACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,WAAA,CACA,6BAAA,CACA,uBAAA,CAEA,kEACI,UAAA,CACA,aAAA,CACA,iBAAA,CACA,mBAAA,CACA,UAAA,CACA,WAAA,CACA,kBAAA,CACA,qBAAA,CAGJ,mEACI,UAAA,CACA,aAAA,CACA,iBAAA,CACA,WAAA,CACA,iBAAA,CACA,cAAA,CAEA,0GAAA,CAEA,4FACI,mBAAA,CACA,SAAA,CACA,WAAA,CACA,+BAAA,CACA,wBAAA,CACA,sCAAA,CACA,iBAAA,CAKZ,gDACI,YAAA,CACA,UAAA,CACA,0BAAA,CACA,0BAAA,CAEA,8EACI,mBAAA,CACA,iBAAA,CACA,UAAA,CACA,aAAA,CACA,iBAAA,CAEA,oFACI,UAAA,CAIR,8EACI,mBAAA,CACA,iBAAA,CACA,UAAA,CACA,aAAA,CACA,UAAA,CAIR,0CACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,WAAA,CACA,uDAAA,CACA,uBAAA,CAGJ,6BACI,UAAA,CACA,aAAA,CAGJ,+BACI,UAAA,CACA,aAAA,CAGJ,8BACI,UAAA,CACA,aAAA,CAGJ,+BACI,UAAA,CACA,aAAA,CAEA,sCACI,UAAA,CAIR,0CACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,6BAAA,CACA,uBAAA,CAEA,kEACI,mBAAA,CACA,iBAAA,CACA,UAAA,CACA,aAAA,CACA,gBAAA,CACA,UAAA,CAGJ,kEACI,iBAAA,CACA,iBAAA,CACA,UAAA,CACA,aAAA,CACA,gBAAA,CACA,iBAAA,CAEA,wEACI,UAAA,CAKZ,8CACI,UAAA,CACA,cAAA,CACA,WAAA,CACA,iBAAA,CACA,iBAAA,CACA,UAAA,CACA,aAAA",sourceRoot:""}]),i.locals={};const s=i},2976:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,"#graph-search-container{position:absolute;width:100%;height:100%;left:0;top:0}#graph-search-container #graph-search-picking-blocker{position:absolute;width:100%;height:100%;left:0;top:0;cursor:default}#graph-search-container #graph-search-box{width:300px;height:400px;position:absolute;left:calc(50% - 150px);top:calc(50% - 200px);background:#484848;border:2px solid #000;z-index:100;cursor:auto;display:grid;grid-template-rows:auto auto 1fr}#graph-search-container #graph-search-box .graph-search-box-title{border-bottom:1px solid #282828;margin:4px;padding-bottom:4px;color:#fff;grid-row:1}#graph-search-container #graph-search-box .graph-search-box-filter{margin:4px;padding-bottom:4px;border-radius:4px;width:calc(100% - 16px);grid-row:2}#graph-search-container #graph-search-box .graph-search-box-list{grid-row:3;overflow-y:auto;display:flex;flex-direction:column}#graph-search-container #graph-search-box .graph-search-box-list .graph-search-box-list-item{margin-left:4px;cursor:pointer;color:#fff;margin-top:4px;margin-bottom:4px}#graph-search-container #graph-search-box .graph-search-box-list .graph-search-box-list-item:hover{background:#1e1e1e}#graph-search-container #graph-search-box .graph-search-box-list .graph-search-box-list-item.selected{background:#e6e6e6;color:#000}","",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/searchBox.scss"],names:[],mappings:"AAAA,wBACI,iBAAA,CACA,UAAA,CACA,WAAA,CACA,MAAA,CACA,KAAA,CAEA,sDACI,iBAAA,CACA,UAAA,CACA,WAAA,CACA,MAAA,CACA,KAAA,CACA,cAAA,CAGJ,0CACI,WAAA,CACA,YAAA,CACA,iBAAA,CACA,sBAAA,CACA,qBAAA,CACA,kBAAA,CACA,qBAAA,CACA,WAAA,CACA,WAAA,CACA,YAAA,CACA,gCAAA,CAEA,kEACI,+BAAA,CACA,UAAA,CACA,kBAAA,CACA,UAAA,CACA,UAAA,CAGJ,mEACI,UAAA,CACA,kBAAA,CACA,iBAAA,CACA,uBAAA,CACA,UAAA,CAGJ,iEACI,UAAA,CACA,eAAA,CACA,YAAA,CACA,qBAAA,CAEA,6FACI,eAAA,CACA,cAAA,CACA,UAAA,CACA,cAAA,CACA,iBAAA,CAEA,mGACI,kBAAA,CAGJ,sGACI,kBAAA,CACA,UAAA",sourceRoot:""}]),i.locals={};const s=i},9707:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'#nme-log-console{background:#333;height:120px;box-sizing:border-box;margin:0;padding:10px;width:100%;overflow:hidden;overflow-y:auto;grid-row:2;grid-column:3}#nme-log-console .log{color:#fff;font-size:14px;font-family:"Courier New",Courier,monospace}#nme-log-console .log.error{color:red}',"",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/components/log/log.scss"],names:[],mappings:"AAAA,iBACI,eAAA,CACA,YAAA,CACA,qBAAA,CACA,QAAA,CACA,YAAA,CACA,UAAA,CACA,eAAA,CACA,eAAA,CACA,UAAA,CACA,aAAA,CAEA,sBACI,UAAA,CACA,cAAA,CACA,2CAAA,CAEA,4BACI,SAAA",sourceRoot:""}]),i.locals={};const s=i},3557:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,"#nmeNodeList{background:#333;height:100%;margin:0;padding:0;display:grid;width:100%;overflow:hidden}#nmeNodeList .panes{overflow:hidden}#nmeNodeList .panes .pane{color:#fff;overflow:hidden;height:100%;user-select:none}#nmeNodeList .panes .pane .filter{display:flex;align-items:stretch}#nmeNodeList .panes .pane .filter input{width:100%;margin:10px 10px 5px 10px;display:block;border:none;padding:0;border-bottom:solid 1px #337ab7;background:linear-gradient(to bottom, rgba(255, 255, 255, 0) 96%, rgb(51, 122, 183) 4%);background-position:-1000px 0;background-size:1000px 100%;background-repeat:no-repeat;color:#fff}#nmeNodeList .panes .pane .filter input:focus{box-shadow:none;outline:none;background-position:0 0}#nmeNodeList .panes .pane .filter input::placeholder{color:gray}#nmeNodeList .panes .pane .list-container{overflow-x:hidden;overflow-y:auto;height:calc(100% - 32px)}#nmeNodeList .panes .pane .list-container .underline{border-bottom:.5px solid hsla(0,0%,100%,.5)}#nmeNodeList .panes .pane .list-container .draggableLine{height:30px;display:grid;align-items:center;justify-items:stretch;background:#222;cursor:grab;text-align:center;margin:0;box-sizing:border-box}#nmeNodeList .panes .pane .list-container .draggableLine:hover{background:#337ab7;color:#fff}#nmeNodeList .panes .pane .list-container .nonDraggableLine{height:30px;display:grid;align-items:center;justify-items:stretch;background:#222;text-align:center;margin:0;box-sizing:border-box}#nmeNodeList .panes .pane .list-container .withButton{height:30px;position:relative}#nmeNodeList .panes .pane .list-container .withButton .icon{position:absolute;right:4px;top:5px}#nmeNodeList .panes .pane .list-container .withButton .icon:hover{cursor:pointer}#nmeNodeList .panes .pane .list-container .withButton .icon .img{height:17px;width:17px}#nmeNodeList .panes .pane .list-container .withButton .buttonLine{height:30px;display:grid;align-items:center;justify-items:stretch;padding-bottom:5px;position:absolute;right:0px;top:2px}#nmeNodeList .panes .pane .list-container .withButton .buttonLine input[type=file]{display:none}#nmeNodeList .panes .pane .list-container .withButton .buttonLine .file-upload{background:rgba(0,0,0,0);border:rgba(0,0,0,0);padding:15px 200px;opacity:.9;cursor:pointer;text-align:center}#nmeNodeList .panes .pane .list-container .withButton .buttonLine .file-upload:hover{opacity:1}#nmeNodeList .panes .pane .list-container .withButton .buttonLine .file-upload:active{transform:scale(0.98);transform-origin:.5 .5}#nmeNodeList .panes .pane .list-container .withButton .buttonLine button{background:rgba(0,0,0,0);border:rgba(0,0,0,0);margin:5px 10px 5px 10px;color:#fff;padding:4px 5px;opacity:.9}#nmeNodeList .panes .pane .list-container .withButton .buttonLine button:hover{opacity:0}#nmeNodeList .panes .pane .list-container .withButton .buttonLine button:active{background:rgba(0,0,0,0)}#nmeNodeList .panes .pane .list-container .withButton .buttonLine button:focus{border:rgba(0,0,0,0);outline:0px}#nmeNodeList .panes .pane .list-container .paneContainer{margin-top:3px;display:grid;grid-template-rows:100%;grid-template-columns:100%}#nmeNodeList .panes .pane .list-container .paneContainer .paneContainer-content{grid-row:1;grid-column:1}#nmeNodeList .panes .pane .list-container .paneContainer .paneContainer-content .header{display:grid;grid-template-columns:1fr auto;background:#555;height:30px;padding-right:5px;cursor:pointer}#nmeNodeList .panes .pane .list-container .paneContainer .paneContainer-content .header .title{border-left:3px solid rgba(0,0,0,0);padding-left:5px;grid-column:1;display:flex;align-items:center}#nmeNodeList .panes .pane .list-container .paneContainer .paneContainer-content .header .collapse{grid-column:2;display:flex;align-items:center;justify-items:center;transform-origin:center}#nmeNodeList .panes .pane .list-container .paneContainer .paneContainer-content .header .collapse.closed{transform:rotate(180deg)}#nmeNodeList .panes .pane .list-container .paneContainer .paneContainer-content .paneList>div:not(:last-child){border-bottom:1px solid hsla(0,0%,100%,.3)}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/components/nodeList/nodeList.scss"],names:[],mappings:"AAAA,aACI,eAAA,CACA,WAAA,CACA,QAAA,CACA,SAAA,CACA,YAAA,CACA,UAAA,CACA,eAAA,CAEA,oBACI,eAAA,CAEA,0BACI,UAAA,CAEA,eAAA,CACA,WAAA,CAEA,gBAAA,CAEA,kCACI,YAAA,CACA,mBAAA,CAEA,wCACI,UAAA,CACA,yBAAA,CACA,aAAA,CACA,WAAA,CACA,SAAA,CACA,+BAAA,CACA,uFAAA,CACA,6BAAA,CACA,2BAAA,CACA,2BAAA,CACA,UAAA,CAGJ,8CACI,eAAA,CACA,YAAA,CACA,uBAAA,CAGJ,qDACI,UAAA,CAIR,0CACI,iBAAA,CACA,eAAA,CACA,wBAAA,CAEA,qDACI,2CAAA,CAGJ,yDACI,WAAA,CACA,YAAA,CACA,kBAAA,CACA,qBAAA,CACA,eAAA,CACA,WAAA,CACA,iBAAA,CACA,QAAA,CACA,qBAAA,CAEA,+DACI,kBAAA,CACA,UAAA,CAIR,4DACI,WAAA,CACA,YAAA,CACA,kBAAA,CACA,qBAAA,CACA,eAAA,CACA,iBAAA,CACA,QAAA,CACA,qBAAA,CAGJ,sDACI,WAAA,CACA,iBAAA,CACA,4DACI,iBAAA,CACA,SAAA,CACA,OAAA,CACA,kEACI,cAAA,CAGJ,iEACI,WAAA,CACA,UAAA,CAIR,kEACI,WAAA,CACA,YAAA,CACA,kBAAA,CACA,qBAAA,CACA,kBAAA,CACA,iBAAA,CACA,SAAA,CACA,OAAA,CACA,mFACI,YAAA,CAGJ,+EACI,wBAAA,CACA,oBAAA,CACA,kBAAA,CACA,UAAA,CACA,cAAA,CACA,iBAAA,CAGJ,qFACI,SAAA,CAGJ,sFACI,qBAAA,CACA,sBAAA,CAGJ,yEACI,wBAAA,CACA,oBAAA,CACA,wBAAA,CACA,UAAA,CACA,eAAA,CACA,UAAA,CAGJ,+EACI,SAAA,CAGJ,gFACI,wBAAA,CAGJ,+EACI,oBAAA,CACA,WAAA,CAKZ,yDACI,cAAA,CACA,YAAA,CACA,uBAAA,CACA,0BAAA,CAEA,gFACI,UAAA,CACA,aAAA,CAEA,wFACI,YAAA,CACA,8BAAA,CACA,eAAA,CACA,WAAA,CACA,iBAAA,CACA,cAAA,CAEA,+FACI,mCAAA,CACA,gBAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,kGACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,oBAAA,CACA,uBAAA,CAEA,yGACI,wBAAA,CAKZ,+GACI,0CAAA",sourceRoot:""}]),i.locals={};const s=i},35:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'.nme-right-panel #propertyTab{color:#fff;background:#333}.nme-right-panel #propertyTab #header{height:30px;font-size:16px;color:#fff;background:#222;grid-row:1;text-align:center;display:grid;grid-template-columns:30px 1fr;user-select:none}.nme-right-panel #propertyTab #header #logo{position:relative;grid-column:1;width:24px;height:24px;left:0;display:flex;align-self:center;justify-self:center}.nme-right-panel #propertyTab #header #title{grid-column:2;display:grid;align-items:center;text-align:center}.nme-right-panel #propertyTab .range{-webkit-appearance:none;width:120px;height:6px;background:#d3d3d3;border-radius:5px;outline:none;opacity:.7;transition:opacity .2s}.nme-right-panel #propertyTab .range:hover{opacity:1}.nme-right-panel #propertyTab .range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:#337ab7;cursor:pointer}.nme-right-panel #propertyTab .range::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#337ab7;cursor:pointer}.nme-right-panel #propertyTab input[type=color]{-webkit-appearance:none;border:1px solid hsla(0,0%,100%,.5);padding:0;width:30px;height:20px}.nme-right-panel #propertyTab input[type=color]::-webkit-color-swatch-wrapper{padding:0}.nme-right-panel #propertyTab input[type=color]::-webkit-color-swatch{border:none}.nme-right-panel #propertyTab .sliderLine{padding-left:5px;height:30px;display:grid;grid-template-rows:100%;grid-template-columns:1fr 50px auto}.nme-right-panel #propertyTab .sliderLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .sliderLine .slider{grid-column:3;grid-row:1;margin-right:5px;width:90%;display:flex;align-items:center}.nme-right-panel #propertyTab .sliderLine .floatLine{grid-column:2;padding-left:5px}.nme-right-panel #propertyTab .sliderLine .floatLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .sliderLine .floatLine .short{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .sliderLine .floatLine .short input{width:35px}.nme-right-panel #propertyTab .sliderLine .floatLine .short input::-webkit-outer-spin-button,.nme-right-panel #propertyTab .sliderLine .floatLine .short input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.nme-right-panel #propertyTab .sliderLine .floatLine .copy{display:none}.nme-right-panel #propertyTab .sliderLine .copy{display:none}.nme-right-panel #propertyTab .textInputLine{padding-left:5px;height:30px;display:grid;grid-template-columns:1fr 120px auto}.nme-right-panel #propertyTab .textInputLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .textInputLine .value{display:flex;align-items:center;grid-column:2}.nme-right-panel #propertyTab .textInputLine .value input{width:calc(100% - 5px);margin-right:5px}.nme-right-panel #propertyTab .textInputArea{padding-left:5px;height:50px;display:grid;grid-template-columns:1fr 120px}.nme-right-panel #propertyTab .textInputArea .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .textInputArea textarea{margin-right:5px;margin-left:-50%;height:40px;resize:none}.nme-right-panel #propertyTab .textInputArea .value{display:flex;align-items:center;grid-column:2}.nme-right-panel #propertyTab .paneContainer{margin-top:3px;display:grid;grid-template-rows:100%;grid-template-columns:100%}.nme-right-panel #propertyTab .paneContainer .paneList{border-left:3px solid rgba(0,0,0,0)}.nme-right-panel #propertyTab .paneContainer:hover .paneList{border-left:3px solid rgba(51,122,183,.8)}.nme-right-panel #propertyTab .paneContainer:hover .paneContainer-content .header .title{border-left:3px solid #337ab7}.nme-right-panel #propertyTab .paneContainer .paneContainer-highlight-border{grid-row:1;grid-column:1;opacity:1;border:3px solid red;transition:opacity 250ms;pointer-events:none}.nme-right-panel #propertyTab .paneContainer .paneContainer-highlight-border.transparent{opacity:0}.nme-right-panel #propertyTab .paneContainer .paneContainer-content{grid-row:1;grid-column:1}.nme-right-panel #propertyTab .paneContainer .paneContainer-content .header{display:grid;grid-template-columns:1fr auto;background:#555;height:30px;padding-right:5px;cursor:pointer}.nme-right-panel #propertyTab .paneContainer .paneContainer-content .header .title{border-left:3px solid rgba(0,0,0,0);padding-left:5px;grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .paneContainer .paneContainer-content .header .collapse{grid-column:2;display:flex;align-items:center;justify-items:center;transform-origin:center}.nme-right-panel #propertyTab .paneContainer .paneContainer-content .header .collapse.closed{transform:rotate(180deg)}.nme-right-panel #propertyTab .paneContainer .paneContainer-content .paneList>div:not(:last-child){border-bottom:.5px solid hsla(0,0%,100%,.1)}.nme-right-panel #propertyTab .paneContainer .paneContainer-content .fragment>div:not(:last-child){border-bottom:.5px solid hsla(0,0%,100%,.1)}.nme-right-panel #propertyTab .color-picker{height:calc(100% - 8px);margin:4px;width:calc(100% - 8px)}.nme-right-panel #propertyTab .color-picker .color-rect{height:calc(100% - 4px);border:2px #fff solid;cursor:pointer;min-height:18px}.nme-right-panel #propertyTab .color-picker .color-picker-cover{position:fixed;top:0px;right:0px;bottom:0px;left:0px;z-index:1}.nme-right-panel #propertyTab .color-picker .color-picker-float{z-index:2;position:absolute}.nme-right-panel #propertyTab .gradient-step{display:grid;grid-template-rows:100%;grid-template-columns:20px 30px 40px auto 20px 30px;padding-top:5px;padding-left:5px;padding-bottom:5px}.nme-right-panel #propertyTab .gradient-step .step{grid-row:1;grid-column:1}.nme-right-panel #propertyTab .gradient-step .color{grid-row:1;grid-column:2;cursor:pointer}.nme-right-panel #propertyTab .gradient-step .step-value{margin-left:5px;grid-row:1;grid-column:3;text-align:right;margin-right:5px}.nme-right-panel #propertyTab .gradient-step .step-slider{grid-row:1;grid-column:4;display:grid;justify-content:stretch;align-content:center;margin-right:-5px;padding-left:12px}.nme-right-panel #propertyTab .gradient-step .step-slider input{width:90%}.nme-right-panel #propertyTab .gradient-step .gradient-copy{grid-row:1;grid-column:5;display:grid;align-content:center;justify-content:center}.nme-right-panel #propertyTab .gradient-step .gradient-copy .img{height:20px;width:20px}.nme-right-panel #propertyTab .gradient-step .gradient-copy .img:hover{cursor:pointer}.nme-right-panel #propertyTab .gradient-step .gradient-delete{grid-row:1;grid-column:6;display:grid;align-content:center;justify-content:center}.nme-right-panel #propertyTab .gradient-step .gradient-delete .img{height:20px;width:20px}.nme-right-panel #propertyTab .gradient-step .gradient-delete .img:hover{cursor:pointer}.nme-right-panel #propertyTab .floatLine{padding-left:5px;height:30px;display:grid;grid-template-columns:1fr 120px}.nme-right-panel #propertyTab .floatLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .floatLine .value{grid-column:2;display:flex;align-items:center}.nme-right-panel #propertyTab .floatLine .value input{width:110px}.nme-right-panel #propertyTab .floatLine .short{grid-column:2;display:flex;align-items:center}.nme-right-panel #propertyTab .floatLine .short input{width:27px}.nme-right-panel #propertyTab .floatLine .short input::-webkit-outer-spin-button,.nme-right-panel #propertyTab .floatLine .short input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.nme-right-panel #propertyTab .floatLine .copy{display:none}.nme-right-panel #propertyTab .vector3Line{padding-left:5px;display:grid}.nme-right-panel #propertyTab .vector3Line .firstLine{display:grid;grid-template-columns:1fr auto 20px;height:30px}.nme-right-panel #propertyTab .vector3Line .firstLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .vector3Line .firstLine .vector{grid-column:2;display:flex;align-items:center;text-align:right;opacity:.8}.nme-right-panel #propertyTab .vector3Line .firstLine .expand{grid-column:3;display:grid;align-items:center;justify-items:center;cursor:pointer}.nme-right-panel #propertyTab .vector3Line .firstLine .copy{display:none}.nme-right-panel #propertyTab .vector3Line .secondLine{display:grid;padding-right:5px;border-left:1px solid #337ab7}.nme-right-panel #propertyTab .vector3Line .secondLine .no-right-margin{margin-right:0}.nme-right-panel #propertyTab .vector3Line .secondLine .numeric{display:grid;grid-template-columns:1fr auto}.nme-right-panel #propertyTab .vector3Line .secondLine .numeric-label{text-align:right;grid-column:1;display:flex;align-items:center;justify-self:right;margin-right:10px}.nme-right-panel #propertyTab .vector3Line .secondLine .numeric-value{width:120px;grid-column:2;display:flex;align-items:center;border:1px solid #337ab7}.nme-right-panel #propertyTab .buttonLine{height:30px;display:grid;align-items:center;justify-items:stretch;padding-bottom:5px}.nme-right-panel #propertyTab .buttonLine.disabled{opacity:.3}.nme-right-panel #propertyTab .buttonLine input[type=file]{display:none}.nme-right-panel #propertyTab .buttonLine .file-upload{background:#222;border:1px solid #337ab7;margin:5px 10px;color:#fff;padding:4px 5px;padding-top:0px;opacity:.9;cursor:pointer;text-align:center}.nme-right-panel #propertyTab .buttonLine .file-upload:hover{opacity:1}.nme-right-panel #propertyTab .buttonLine .file-upload:active{transform:scale(0.98);transform-origin:.5 .5}.nme-right-panel #propertyTab .buttonLine button{background:#222;border:1px solid #337ab7;margin:5px 10px 5px 10px;color:#fff;padding:4px 5px;opacity:.9}.nme-right-panel #propertyTab .buttonLine button:hover{opacity:1}.nme-right-panel #propertyTab .buttonLine button:active{background:#282828}.nme-right-panel #propertyTab .buttonLine button:focus{border:1px solid #337ab7;outline:0px}.nme-right-panel #propertyTab .checkBoxLine{padding-left:5px;height:30px;display:grid;grid-template-columns:1fr auto}.nme-right-panel #propertyTab .checkBoxLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .checkBoxLine .checkBox{grid-column:2;display:flex;align-items:center}.nme-right-panel #propertyTab .checkBoxLine .checkBox .lbl{position:relative;display:block;height:14px;width:34px;margin-right:5px;background:#898989;border-radius:100px;cursor:pointer;transition:all .3s ease}.nme-right-panel #propertyTab .checkBoxLine .checkBox .lbl:after{position:absolute;left:3px;top:2px;display:block;width:10px;height:10px;border-radius:100px;background:#fff;box-shadow:0px 3px 3px rgba(0,0,0,.05);content:"";transition:all .15s ease}.nme-right-panel #propertyTab .checkBoxLine .checkBox .lbl:active:after{transform:scale(1.15, 0.85)}.nme-right-panel #propertyTab .checkBoxLine .checkBox .cbx:checked~label{background:#337ab7}.nme-right-panel #propertyTab .checkBoxLine .checkBox .cbx:checked~label:after{left:20px;background:#164975}.nme-right-panel #propertyTab .checkBoxLine .checkBox .cbx:checked~label.disabled{background:#164975;cursor:pointer}.nme-right-panel #propertyTab .checkBoxLine .checkBox .cbx:checked~label.disabled:after{left:20px;background:#555;cursor:pointer}.nme-right-panel #propertyTab .checkBoxLine .checkBox .cbx~label.disabled{background:#555;cursor:pointer}.nme-right-panel #propertyTab .checkBoxLine .checkBox .hidden{display:none}.nme-right-panel #propertyTab .checkBoxLine .copy{display:none}.nme-right-panel #propertyTab .listLine{padding-left:5px;height:30px;display:grid;grid-template-columns:1fr auto}.nme-right-panel #propertyTab .listLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .listLine .options{grid-column:2;display:flex;align-items:center;margin-right:5px}.nme-right-panel #propertyTab .listLine .options select{width:115px}.nme-right-panel #propertyTab .listLine .copy{display:none}.nme-right-panel #propertyTab .color3Line{padding-left:5px;display:grid}.nme-right-panel #propertyTab .color3Line .firstLine{height:30px;display:grid;grid-template-columns:1fr auto 20px}.nme-right-panel #propertyTab .color3Line .firstLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .color3Line .firstLine .textInputLine{display:none}.nme-right-panel #propertyTab .color3Line .firstLine .color3{grid-column:2;width:50px;display:flex;align-items:center}.nme-right-panel #propertyTab .color3Line .firstLine .color3 input{margin-right:5px}.nme-right-panel #propertyTab .color3Line .firstLine .expand{grid-column:3;display:grid;align-items:center;justify-items:center;cursor:pointer}.nme-right-panel #propertyTab .color3Line .firstLine .copy{grid-column:4;display:grid;align-items:center;justify-items:center;cursor:pointer}.nme-right-panel #propertyTab .color3Line .firstLine .copy img{height:100%}.nme-right-panel #propertyTab .color3Line .secondLine{display:grid;padding-right:5px;border-left:1px solid #337ab7}.nme-right-panel #propertyTab .color3Line .secondLine .numeric{display:grid;grid-template-columns:1fr auto}.nme-right-panel #propertyTab .color3Line .secondLine .numeric-label{text-align:right;grid-column:1;display:flex;align-items:center;justify-self:right;margin-right:10px}.nme-right-panel #propertyTab .color3Line .secondLine .numeric-value{width:120px;grid-column:2;display:flex;align-items:center;border:1px solid #337ab7}.nme-right-panel #propertyTab .textLine{padding-left:5px;height:30px;display:grid;grid-template-columns:1fr auto}.nme-right-panel #propertyTab .textLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .textLine .link-value{grid-column:2;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;text-align:end;opacity:.8;margin:5px;margin-top:6px;max-width:140px;text-decoration:underline;cursor:pointer}.nme-right-panel #propertyTab .textLine .value{grid-column:2;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;text-align:end;opacity:.8;margin:5px;margin-top:6px;max-width:200px;user-select:text}.nme-right-panel #propertyTab .textLine .value.check{color:green}.nme-right-panel #propertyTab .textLine .value.uncheck{color:red}',"",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/components/propertyTab/propertyTab.scss"],names:[],mappings:"AACI,8BAEI,UAAA,CACA,eAAA,CAEA,sCACI,WAAA,CACA,cAAA,CACA,UAAA,CACA,eAAA,CACA,UAAA,CACA,iBAAA,CACA,YAAA,CACA,8BAAA,CACA,gBAAA,CAEA,4CACI,iBAAA,CACA,aAAA,CACA,UAAA,CACA,WAAA,CACA,MAAA,CACA,YAAA,CACA,iBAAA,CACA,mBAAA,CAGJ,6CACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,iBAAA,CAIR,qCACI,uBAAA,CACA,WAAA,CACA,UAAA,CACA,kBAAA,CACA,iBAAA,CACA,YAAA,CACA,UAAA,CACA,sBAAA,CAGJ,2CACI,SAAA,CAGJ,2DACI,uBAAA,CACA,eAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,kBAAA,CACA,cAAA,CAGJ,uDACI,UAAA,CACA,WAAA,CACA,iBAAA,CACA,kBAAA,CACA,cAAA,CAGJ,gDACI,uBAAA,CACA,mCAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CAEJ,8EACI,SAAA,CAEJ,sEACI,WAAA,CAGJ,0CACI,gBAlFgB,CAmFhB,WAAA,CACA,YAAA,CACA,uBAAA,CACA,mCAAA,CAEA,iDACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,kDACI,aAAA,CACA,UAAA,CACA,gBAAA,CACA,SAAA,CACA,YAAA,CACA,kBAAA,CAGJ,qDACI,aAAA,CACA,gBAzGY,CA2GZ,4DACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,4DACI,aAAA,CACA,YAAA,CACA,kBAAA,CAEA,kEACI,UAAA,CAGJ,0LAEI,uBAAA,CACA,QAAA,CAIR,2DACI,YAAA,CAIR,gDACI,YAAA,CAIR,6CACI,gBA5IgB,CA6IhB,WAAA,CACA,YAAA,CACA,oCAAA,CAEA,oDACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,oDACI,YAAA,CACA,kBAAA,CACA,aAAA,CAEA,0DACI,sBAAA,CACA,gBAAA,CAKZ,6CACI,gBApKgB,CAqKhB,WAAA,CACA,YAAA,CACA,+BAAA,CAEA,oDACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,sDACI,gBAAA,CACA,gBAAA,CACA,WAAA,CACA,WAAA,CAGJ,oDACI,YAAA,CACA,kBAAA,CACA,aAAA,CAIR,6CACI,cAAA,CACA,YAAA,CACA,uBAAA,CACA,0BAAA,CAEA,uDACI,mCAAA,CAIA,6DACI,yCAAA,CAKI,yFACI,6BAAA,CAMhB,6EACI,UAAA,CACA,aAAA,CACA,SAAA,CACA,oBAAA,CACA,wBAAA,CACA,mBAAA,CAEA,yFACI,SAAA,CAIR,oEACI,UAAA,CACA,aAAA,CAEA,4EACI,YAAA,CACA,8BAAA,CACA,eAAA,CACA,WAAA,CACA,iBAAA,CACA,cAAA,CAEA,mFACI,mCAAA,CACA,gBAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,sFACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,oBAAA,CACA,uBAAA,CAEA,6FACI,wBAAA,CAKZ,mGACI,2CAAA,CAGJ,mGACI,2CAAA,CAKZ,4CACI,uBAAA,CACA,UAAA,CACA,sBAAA,CAEA,wDACI,uBAAA,CACA,qBAAA,CACA,cAAA,CACA,eAAA,CAGJ,gEACI,cAAA,CACA,OAAA,CACA,SAAA,CACA,UAAA,CACA,QAAA,CACA,SAAA,CAGJ,gEACI,SAAA,CACA,iBAAA,CAIR,6CACI,YAAA,CACA,uBAAA,CACA,mDAAA,CACA,eAAA,CACA,gBAAA,CACA,kBAAA,CAEA,mDACI,UAAA,CACA,aAAA,CAGJ,oDACI,UAAA,CACA,aAAA,CACA,cAAA,CAGJ,yDACI,eAAA,CACA,UAAA,CACA,aAAA,CACA,gBAAA,CACA,gBAAA,CAGJ,0DACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,uBAAA,CACA,oBAAA,CACA,iBAAA,CACA,iBAAA,CAEA,gEACI,SAAA,CAIR,4DACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,oBAAA,CACA,sBAAA,CAEA,iEACI,WAAA,CACA,UAAA,CAEJ,uEACI,cAAA,CAGR,8DACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,oBAAA,CACA,sBAAA,CACA,mEACI,WAAA,CACA,UAAA,CAEJ,yEACI,cAAA,CAKZ,yCACI,gBAjXgB,CAkXhB,WAAA,CACA,YAAA,CACA,+BAAA,CAEA,gDACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,gDACI,aAAA,CAEA,YAAA,CACA,kBAAA,CAEA,sDACI,WAAA,CAIR,gDACI,aAAA,CAEA,YAAA,CACA,kBAAA,CAEA,sDACI,UAAA,CAGJ,kKAEI,uBAAA,CACA,QAAA,CAIR,+CACI,YAAA,CAIR,2CACI,gBA9ZgB,CA+ZhB,YAAA,CAEA,sDACI,YAAA,CACA,mCAAA,CACA,WAAA,CAEA,6DACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,8DACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,gBAAA,CACA,UAAA,CAGJ,8DACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,oBAAA,CACA,cAAA,CAGJ,4DACI,YAAA,CAIR,uDACI,YAAA,CACA,iBAAA,CACA,6BAAA,CAEA,wEACI,cAAA,CAGJ,gEACI,YAAA,CACA,8BAAA,CAGJ,sEACI,gBAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,iBAAA,CAGJ,sEACI,WAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CACA,wBAAA,CAKZ,0CACI,WAAA,CACA,YAAA,CACA,kBAAA,CACA,qBAAA,CACA,kBAAA,CAEA,mDACI,UAAA,CAGJ,2DACI,YAAA,CAGJ,uDACI,eAAA,CACA,wBAAA,CACA,eAAA,CACA,UAAA,CACA,eAAA,CACA,eAAA,CACA,UAAA,CACA,cAAA,CACA,iBAAA,CAGJ,6DACI,SAAA,CAGJ,8DACI,qBAAA,CACA,sBAAA,CAGJ,iDACI,eAAA,CACA,wBAAA,CACA,wBAAA,CACA,UAAA,CACA,eAAA,CACA,UAAA,CAGJ,uDACI,SAAA,CAGJ,wDACI,kBAAA,CAGJ,uDACI,wBAAA,CACA,WAAA,CAIR,4CACI,gBA9hBgB,CA+hBhB,WAAA,CACA,YAAA,CACA,8BAAA,CAEA,mDACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,sDACI,aAAA,CAEA,YAAA,CACA,kBAAA,CAEA,2DACI,iBAAA,CACA,aAAA,CACA,WAAA,CACA,UAAA,CACA,gBAAA,CACA,kBAAA,CACA,mBAAA,CACA,cAAA,CACA,uBAAA,CAGJ,iEACI,iBAAA,CACA,QAAA,CACA,OAAA,CACA,aAAA,CACA,UAAA,CACA,WAAA,CACA,mBAAA,CACA,eAAA,CACA,sCAAA,CACA,UAAA,CACA,wBAAA,CAGJ,wEACI,2BAAA,CAGJ,yEACI,kBAAA,CAGJ,+EACI,SAAA,CACA,kBAAA,CAGJ,kFACI,kBAAA,CACA,cAAA,CAGJ,wFACI,SAAA,CACA,eAAA,CACA,cAAA,CAGJ,0EACI,eAAA,CACA,cAAA,CAGJ,8DACI,YAAA,CAIR,kDACI,YAAA,CAIR,wCACI,gBAjnBgB,CAknBhB,WAAA,CACA,YAAA,CACA,8BAAA,CAEA,+CACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,iDACI,aAAA,CAEA,YAAA,CACA,kBAAA,CACA,gBAAA,CAEA,wDACI,WAAA,CAIR,8CACI,YAAA,CAIR,0CACI,gBA9oBgB,CA+oBhB,YAAA,CAEA,qDACI,WAAA,CACA,YAAA,CACA,mCAAA,CAEA,4DACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,oEACI,YAAA,CAGJ,6DACI,aAAA,CACA,UAAA,CAEA,YAAA,CACA,kBAAA,CAEA,mEACI,gBAAA,CAIR,6DACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,oBAAA,CACA,cAAA,CAGJ,2DACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,oBAAA,CACA,cAAA,CACA,+DACI,WAAA,CAKZ,sDACI,YAAA,CACA,iBAAA,CACA,6BAAA,CAEA,+DACI,YAAA,CACA,8BAAA,CAGJ,qEACI,gBAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,iBAAA,CAGJ,qEACI,WAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CACA,wBAAA,CAKZ,wCACI,gBA9tBgB,CA+tBhB,WAAA,CACA,YAAA,CACA,8BAAA,CAEA,+CACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,oDACI,aAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CACA,cAAA,CACA,UAAA,CACA,UAAA,CACA,cAAA,CACA,eAAA,CACA,yBAAA,CACA,cAAA,CAGJ,+CACI,aAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CACA,cAAA,CACA,UAAA,CACA,UAAA,CACA,cAAA,CACA,eAAA,CACA,gBAAA,CAEA,qDACI,WAAA,CAGJ,uDACI,SAAA",sourceRoot:""}]),i.locals={};const s=i},5778:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'#node-editor-graph-root{display:grid;grid-template-rows:calc(100% - 120px) 120px;height:100%;width:100%;background:#464646;font:14px "acumin-pro"}#node-editor-graph-root.popup{grid-template-columns:100%;overflow:hidden}#node-editor-graph-root .wait-screen{display:grid;justify-content:center;align-content:center;height:100%;width:100%;background:#464646;opacity:.95;color:#fff;font:24px "acumin-pro";position:absolute;top:0;left:0}#node-editor-graph-root .wait-screen.hidden{visibility:hidden}#node-editor-graph-root #nmeNodeList{grid-row:1/span 2;grid-column:1}#node-editor-graph-root #leftGrab{grid-row:1/span 2;grid-column:2;cursor:ew-resize}#node-editor-graph-root #rightGrab{grid-row:1/span 2;grid-column:4;cursor:ew-resize}#node-editor-graph-root .diagram-container{grid-row:1;grid-column:3;background:#5f5b60;width:100%;height:100%}#node-editor-graph-root .diagram-container .diagram{display:none;width:100%;height:100%}#node-editor-graph-root .nme-right-panel{grid-row:1/span 2;grid-column:5;display:grid;grid-template-rows:1fr 40px auto 40px;grid-template-columns:100%;height:100%;overflow-y:auto}#node-editor-graph-root #propertyTab{grid-row:1;grid-column:1}#node-editor-graph-root .button{display:grid;justify-content:center;align-content:center;height:auto;width:14.2857142857%;cursor:pointer}#node-editor-graph-root .button:hover{background:#337ab7;color:#fff;opacity:.8}#node-editor-graph-root .button.selected{background:#337ab7;color:#fff}#node-editor-graph-root .button.align{justify-content:stretch;text-align:center}#node-editor-graph-root #preview-mesh-bar{grid-row:2;grid-column:1;display:grid;grid-template-columns:auto 1fr 40px 40px 40px;align-items:center;font-size:18px;background-color:#555}#node-editor-graph-root #preview-mesh-bar #file-picker{display:none}#node-editor-graph-root #preview-mesh-bar .listLine{grid-column:1;height:40px;display:grid;grid-template-columns:0px 1fr 0px}#node-editor-graph-root #preview-mesh-bar .listLine .label{grid-column:1;display:flex;align-items:center;font-size:14px}#node-editor-graph-root #preview-mesh-bar .listLine .options{grid-column:2;display:flex;align-items:center;margin-left:5px}#node-editor-graph-root #preview-mesh-bar .listLine .options select{width:115px}#node-editor-graph-root #preview-mesh-bar .button{color:#fff;width:40px;height:40px;transform-origin:50% 50%}#node-editor-graph-root #preview-mesh-bar .button:active{transform:scale(0.9)}#node-editor-graph-root #preview-mesh-bar .button:hover{background:#3f3461}#node-editor-graph-root #preview-mesh-bar .button.selected{background:#9379e6}#node-editor-graph-root #preview-mesh-bar .button img{height:24px;width:24px}#node-editor-graph-root #preview-mesh-bar #play-button{grid-column:3}#node-editor-graph-root #preview-mesh-bar #color-picker-button{grid-column:4;display:grid;grid-template-columns:100%;grid-template-rows:100%}#node-editor-graph-root #preview-mesh-bar #color-picker-button img{height:24px;width:24px}#node-editor-graph-root #preview-mesh-bar #color-picker-button #color-picker-image{padding-left:7px;padding-top:8px}#node-editor-graph-root #preview-mesh-bar #color-picker-button #color-picker{transform:scale(0);grid-column:1;grid-row:1}#node-editor-graph-root #preview-mesh-bar #color-picker-button #color-picker-label{width:100%;background:rgba(0,0,0,0);cursor:pointer}#node-editor-graph-root #preview-mesh-bar #preview-new-window{grid-column:5}#node-editor-graph-root #preview-mesh-bar select{background-color:#a3a3a3;color:#333}#node-editor-graph-root #preview-config-bar{grid-row:4;grid-column:1;display:grid;grid-template-columns:40px 40px 40px 1fr 40px 40px;color:#fff;align-items:center;font-size:18px}#node-editor-graph-root #preview-config-bar.extended{grid-template-columns:1fr}#node-editor-graph-root #preview-config-bar .listLine{padding-left:5px;height:30px;display:grid;grid-template-columns:1fr auto}#node-editor-graph-root #preview-config-bar .listLine .label{grid-column:1;display:flex;align-items:center;font-size:14px}#node-editor-graph-root #preview-config-bar .listLine .options{grid-column:2;display:flex;align-items:center;margin-right:5px}#node-editor-graph-root #preview-config-bar .listLine .options select{width:115px}#node-editor-graph-root #preview-config-bar .listLine .copy{display:none}#node-editor-graph-root #preview-config-bar .button{width:40px;grid-row:1;height:40px;transform-origin:50% 50%}#node-editor-graph-root #preview-config-bar .button:hover{background:#3f3461}#node-editor-graph-root #preview-config-bar .button.selected{background:#9379e6}#node-editor-graph-root #preview-config-bar .button:active{transform:scale(0.9)}#node-editor-graph-root #preview-config-bar .button img{height:auto;width:100%}#node-editor-graph-root #preview-config-bar .button.back-face{grid-column:6}#node-editor-graph-root #preview-config-bar .button.depth-pass{grid-column:5/6}#node-editor-graph-root #preview-config-bar .button.hemispheric-light{grid-column:3/4}#node-editor-graph-root #preview-config-bar .button.direction-light-1{grid-column:2/3}#node-editor-graph-root #preview-config-bar .button.direction-light-0{grid-column:1/2}#node-editor-graph-root #preview{border-top:1px solid #555;grid-row:3;grid-column:1;width:100%;display:grid;grid-template-columns:100%;grid-template-rows:100%;outline:0 !important;padding:0 !important;user-select:none;overflow:hidden}#node-editor-graph-root #preview #preview-canvas{width:100%;height:100%;outline:0 !important;padding:0 !important;grid-row:1;grid-column:1}#node-editor-graph-root #preview .waitPanel{width:100%;height:100%;grid-row:1;grid-column:1;color:#fff;font-size:18px;align-content:center;justify-content:center;background:rgba(20,20,20,.95);z-index:10;display:grid;transition:opacity 250ms}#node-editor-graph-root #preview .waitPanel.hidden{opacity:0;pointer-events:none}#node-editor-graph-root .blocker{visibility:hidden;position:absolute;width:calc(100% - 40px);height:100%;top:0;left:0;background:rgba(20,20,20,.95);font-family:"acumin-pro";color:#fff;font-size:24px;display:grid;align-content:center;justify-content:center;user-select:none;padding:20px;text-align:center}#node-editor-graph-root #log-console{grid-row:2;grid-column:3}#node-editor-graph-root .LightInformationBlock{width:280px}#node-editor-graph-root .InputBlock{width:250px}',"",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/main.scss"],names:[],mappings:"AAAA,wBACI,YAAA,CACA,2CAAA,CACA,WAAA,CACA,UAAA,CACA,kBAAA,CACA,sBAAA,CAEA,8BACI,0BAAA,CACA,eAAA,CAGJ,qCACI,YAAA,CACA,sBAAA,CACA,oBAAA,CACA,WAAA,CACA,UAAA,CACA,kBAAA,CACA,WAAA,CACA,UAAA,CACA,sBAAA,CACA,iBAAA,CACA,KAAA,CACA,MAAA,CAEA,4CACI,iBAAA,CAIR,qCACI,iBAAA,CACA,aAAA,CAGJ,kCACI,iBAAA,CACA,aAAA,CACA,gBAAA,CAGJ,mCACI,iBAAA,CACA,aAAA,CACA,gBAAA,CAGJ,2CACI,UAAA,CACA,aAAA,CACA,kBAAA,CACA,UAAA,CACA,WAAA,CAEA,oDACI,YAAA,CACA,UAAA,CACA,WAAA,CAIR,yCACI,iBAAA,CACA,aAAA,CACA,YAAA,CACA,qCAAA,CACA,0BAAA,CACA,WAAA,CACA,eAAA,CAGJ,qCACI,UAAA,CACA,aAAA,CAGJ,gCACI,YAAA,CACA,sBAAA,CACA,oBAAA,CACA,WAAA,CACA,oBAAA,CACA,cAAA,CAEA,sCACI,kBAAA,CACA,UAAA,CACA,UAAA,CAGJ,yCACI,kBAAA,CACA,UAAA,CAGJ,sCACI,uBAAA,CACA,iBAAA,CAIR,0CACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,6CAAA,CACA,kBAAA,CACA,cAAA,CACA,qBAAA,CAEA,uDACI,YAAA,CAGJ,oDACI,aAAA,CACA,WAAA,CACA,YAAA,CACA,iCAAA,CAEA,2DACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,cAAA,CAGJ,6DACI,aAAA,CAEA,YAAA,CACA,kBAAA,CACA,eAAA,CAEA,oEACI,WAAA,CAKZ,kDACI,UAAA,CACA,UAAA,CACA,WAAA,CACA,wBAAA,CAEA,yDACI,oBAAA,CAGJ,wDACI,kBAAA,CAGJ,2DACI,kBAAA,CAGJ,sDACI,WAAA,CACA,UAAA,CAIR,uDACI,aAAA,CAGJ,+DACI,aAAA,CACA,YAAA,CACA,0BAAA,CACA,uBAAA,CAEA,mEACI,WAAA,CACA,UAAA,CAEJ,mFACI,gBAAA,CACA,eAAA,CAGJ,6EACI,kBAAA,CACA,aAAA,CACA,UAAA,CAGJ,mFACI,UAAA,CACA,wBAAA,CACA,cAAA,CAIR,8DACI,aAAA,CAGJ,iDACI,wBAAA,CACA,UAAA,CAIR,4CACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,kDAAA,CACA,UAAA,CACA,kBAAA,CACA,cAAA,CAEA,qDACI,yBAAA,CAGJ,sDACI,gBAAA,CACA,WAAA,CACA,YAAA,CACA,8BAAA,CAEA,6DACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,cAAA,CAGJ,+DACI,aAAA,CAEA,YAAA,CACA,kBAAA,CACA,gBAAA,CAEA,sEACI,WAAA,CAIR,4DACI,YAAA,CAIR,oDACI,UAAA,CACA,UAAA,CACA,WAAA,CACA,wBAAA,CAEA,0DACI,kBAAA,CAGJ,6DACI,kBAAA,CAGJ,2DACI,oBAAA,CAGJ,wDACI,WAAA,CACA,UAAA,CAGJ,8DACI,aAAA,CAGJ,+DACI,eAAA,CAGJ,sEACI,eAAA,CAEJ,sEACI,eAAA,CAEJ,sEACI,eAAA,CAKZ,iCACI,yBAAA,CACA,UAAA,CACA,aAAA,CACA,UAAA,CACA,YAAA,CACA,0BAAA,CACA,uBAAA,CACA,oBAAA,CACA,oBAAA,CACA,gBAAA,CACA,eAAA,CAEA,iDACI,UAAA,CACA,WAAA,CACA,oBAAA,CACA,oBAAA,CACA,UAAA,CACA,aAAA,CAGJ,4CACI,UAAA,CACA,WAAA,CACA,UAAA,CACA,aAAA,CACA,UAAA,CACA,cAAA,CACA,oBAAA,CACA,sBAAA,CACA,6BAAA,CACA,UAAA,CACA,YAAA,CACA,wBAAA,CAEA,mDACI,SAAA,CACA,mBAAA,CAKZ,iCACI,iBAAA,CACA,iBAAA,CACA,uBAAA,CACA,WAAA,CACA,KAAA,CACA,MAAA,CAEA,6BAAA,CACA,wBAAA,CACA,UAAA,CACA,cAAA,CAEA,YAAA,CACA,oBAAA,CACA,sBAAA,CAEA,gBAAA,CAEA,YAAA,CACA,iBAAA,CAGJ,qCACI,UAAA,CACA,aAAA,CAGJ,+CACI,WAAA,CAGJ,oCACI,WAAA",sourceRoot:""}]),i.locals={};const s=i},5779:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'.np7Y0MkHTIwcSHUGIIMx{position:absolute;width:100%;height:100%;background:rgba(.1,.1,.1,.6);display:grid;font-family:"acumin-pro";top:0}.np7Y0MkHTIwcSHUGIIMx .EX4YG00dguWCkO8K4BGA{align-self:center;justify-self:center;min-height:140px;max-width:400px;border-radius:10px;background:#fff;padding:10px;display:grid;grid-template-columns:100%;grid-template-rows:1fr 50px}.np7Y0MkHTIwcSHUGIIMx .EX4YG00dguWCkO8K4BGA .CScU0XzmVIJiSJZPuZ0n{grid-row:1;grid-column:1;margin-top:20px;padding:10px;font-size:18px;color:#000}.np7Y0MkHTIwcSHUGIIMx .EX4YG00dguWCkO8K4BGA .x1oa1806M24Am9GoCmnw{grid-row:2;grid-column:1;display:grid;grid-template-rows:100%;grid-template-columns:100%;color:#fff}.np7Y0MkHTIwcSHUGIIMx .EX4YG00dguWCkO8K4BGA .x1oa1806M24Am9GoCmnw .DY4D4PjfxnzHWsMdzE9g{cursor:pointer;justify-self:center;background:green;min-width:80px;justify-content:center;display:grid;align-content:center;align-self:center;height:35px;border-radius:10px}.np7Y0MkHTIwcSHUGIIMx .EX4YG00dguWCkO8K4BGA .x1oa1806M24Am9GoCmnw .DY4D4PjfxnzHWsMdzE9g:hover{opacity:.8}.np7Y0MkHTIwcSHUGIIMx .EX4YG00dguWCkO8K4BGA .x1oa1806M24Am9GoCmnw .DY4D4PjfxnzHWsMdzE9g.CB6qM9GpeI7TwYdoxBCD{background:red}',"",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/components/MessageDialog.module.scss"],names:[],mappings:"AAAA,sBACI,iBAAA,CACA,UAAA,CACA,WAAA,CACA,4BAAA,CACA,YAAA,CACA,wBAAA,CACA,KAAA,CAEA,4CACI,iBAAA,CACA,mBAAA,CACA,gBAAA,CACA,eAAA,CACA,kBAAA,CACA,eAAA,CACA,YAAA,CAEA,YAAA,CACA,0BAAA,CACA,2BAAA,CAEA,kEACI,UAAA,CACA,aAAA,CACA,eAAA,CACA,YAAA,CACA,cAAA,CACA,UAAA,CAGJ,kEACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,uBAAA,CACA,0BAAA,CACA,UAAA,CAEA,wFACI,cAAA,CACA,mBAAA,CACA,gBAAA,CACA,cAAA,CACA,sBAAA,CACA,YAAA,CACA,oBAAA,CACA,iBAAA,CACA,WAAA,CACA,kBAAA,CAEA,8FACI,UAAA,CAGJ,6GACI,cAAA",sourceRoot:""}]),i.locals={"dialog-container":"np7Y0MkHTIwcSHUGIIMx",dialog:"EX4YG00dguWCkO8K4BGA","dialog-message":"CScU0XzmVIJiSJZPuZ0n","dialog-buttons":"x1oa1806M24Am9GoCmnw","dialog-button-ok":"DY4D4PjfxnzHWsMdzE9g",error:"CB6qM9GpeI7TwYdoxBCD"};const s=i},1910:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".DCCviBxuO92A1Tfci3j7{display:none !important}.vdEKEhXs6SEHqNvzhU8Y{border-radius:20px;width:20px;height:20px;align-self:center;display:grid;grid-template-columns:100%;grid-template-rows:100%}.vdEKEhXs6SEHqNvzhU8Y .qGTG6iVaNUW7ka7n1ZmU{width:100%}.vdEKEhXs6SEHqNvzhU8Y:hover,.vdEKEhXs6SEHqNvzhU8Y.rNQFVkgchnk5QXFNBiMs{filter:brightness(2)}.x3rAB8O3DRuHq9a6G43S{height:24px;display:grid;grid-template-rows:100%}.bU84U039Du9w8E_kyWU_{align-items:center}.N9NaZ5KlHxp1s7I48pjQ{margin-top:5px;grid-row:3;grid-column:1}.N9NaZ5KlHxp1s7I48pjQ .x3rAB8O3DRuHq9a6G43S{grid-template-columns:12px calc(100% - 15px)}.N9NaZ5KlHxp1s7I48pjQ .x3rAB8O3DRuHq9a6G43S .bU84U039Du9w8E_kyWU_{grid-row:1;grid-column:2}.N9NaZ5KlHxp1s7I48pjQ .x3rAB8O3DRuHq9a6G43S .vdEKEhXs6SEHqNvzhU8Y{grid-row:1;grid-column:1;transform:translateX(-12px)}.N9NaZ5KlHxp1s7I48pjQ.EvEilsxNQe_mTsSar6Sa{grid-row:1}.SbfDvflOnTqdcPV8B2wD{margin-top:5px;grid-row:1;grid-column:2}.SbfDvflOnTqdcPV8B2wD .x3rAB8O3DRuHq9a6G43S{grid-template-columns:calc(100% - 10px) 12px}.SbfDvflOnTqdcPV8B2wD .x3rAB8O3DRuHq9a6G43S .bU84U039Du9w8E_kyWU_{grid-row:1;grid-column:1;text-align:right}.SbfDvflOnTqdcPV8B2wD .x3rAB8O3DRuHq9a6G43S .vdEKEhXs6SEHqNvzhU8Y{grid-row:1;grid-column:2;transform:translateX(2px)}.b27R0gxgM9Br4k07OEU4{position:absolute;background:rgba(72,72,72,.7);display:grid;grid-template-rows:40px calc(100% - 40px);grid-template-columns:100%;box-sizing:border-box}","",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/common.module.scss"],names:[],mappings:"AAAA,sBACI,uBAAA,CAGJ,sBACI,kBAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,YAAA,CACA,0BAAA,CACA,uBAAA,CAEA,4CACI,UAAA,CAGJ,uEAEI,oBAAA,CAIR,sBACI,WAAA,CACA,YAAA,CACA,uBAAA,CAGJ,sBACI,kBAAA,CAGJ,sBACI,cAAA,CACA,UAAA,CACA,aAAA,CAEA,4CACI,4CAAA,CAEA,kEACI,UAAA,CACA,aAAA,CAGJ,kEACI,UAAA,CACA,aAAA,CACA,2BAAA,CAIR,2CACI,UAAA,CAIR,sBACI,cAAA,CACA,UAAA,CACA,aAAA,CAEA,4CACI,4CAAA,CAEA,kEACI,UAAA,CACA,aAAA,CACA,gBAAA,CAGJ,kEACI,UAAA,CACA,aAAA,CACA,yBAAA,CAKZ,sBACI,iBAAA,CACA,4BAAA,CACA,YAAA,CACA,yCAAA,CACA,0BAAA,CACA,qBAAA",sourceRoot:""}]),i.locals={hidden:"DCCviBxuO92A1Tfci3j7",port:"vdEKEhXs6SEHqNvzhU8Y",img:"qGTG6iVaNUW7ka7n1ZmU",selected:"rNQFVkgchnk5QXFNBiMs",portLine:"x3rAB8O3DRuHq9a6G43S","port-label":"bU84U039Du9w8E_kyWU_",inputsContainer:"N9NaZ5KlHxp1s7I48pjQ",inputsContainerUp:"EvEilsxNQe_mTsSar6Sa",outputsContainer:"SbfDvflOnTqdcPV8B2wD","frame-box":"b27R0gxgM9Br4k07OEU4"};const s=i},8259:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'.f15KU6GlYM7oVHpbFhIn{width:100%;height:100%;margin:0;padding:0;font:14px "acumin-pro";user-select:none;overflow:hidden;cursor:move;position:relative;background-image:linear-gradient(to right, #4f4e4f 1px, transparent 1px),linear-gradient(to bottom, #4f4e4f 1px, transparent 1px)}.iJdBcuGEcr85ce7seMOQ{width:100%;height:100%;left:0;top:0;transform-origin:left top;display:grid;grid-template-rows:100%;grid-template-columns:100%}.z2gALX67aRzo75j2uyoQ{overflow:visible;grid-row:1;grid-column:1;position:relative;width:100%;height:100%}.QfmhbpA1CyiudWm52O2f{grid-row:1;grid-column:1;position:relative;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:2;filter:drop-shadow(7px 6px 2px rgba(0, 0, 0, 0.2))}.zJUCneE7k31yaOjWTBle{grid-row:1;grid-column:1;position:relative;width:100%;height:100%}.MWjDs2Qen1BNXZ0_N1v6{pointer-events:none}.uHfT3vSepb1Ka_re9veF{z-index:10;position:absolute;background:rgba(72,72,196,.5);border:blue solid 2px}',"",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/graphCanvas.module.scss"],names:[],mappings:"AAAA,sBACI,UAAA,CACA,WAAA,CACA,QAAA,CACA,SAAA,CACA,sBAAA,CACA,gBAAA,CACA,eAAA,CACA,WAAA,CACA,iBAAA,CACA,iIAAA,CAGJ,sBACI,UAAA,CACA,WAAA,CACA,MAAA,CACA,KAAA,CACA,yBAAA,CACA,YAAA,CACA,uBAAA,CACA,0BAAA,CAGJ,sBACI,gBAAA,CACA,UAAA,CACA,aAAA,CACA,iBAAA,CACA,UAAA,CACA,WAAA,CAGJ,sBACI,UAAA,CACA,aAAA,CACA,iBAAA,CACA,UAAA,CACA,WAAA,CACA,gBAAA,CACA,mBAAA,CACA,SAAA,CACA,kDAAA,CAGJ,sBACI,UAAA,CACA,aAAA,CACA,iBAAA,CACA,UAAA,CACA,WAAA,CAGJ,sBACI,mBAAA,CAGJ,sBACI,UAAA,CACA,iBAAA,CACA,6BAAA,CACA,qBAAA",sourceRoot:""}]),i.locals={"graph-canvas":"f15KU6GlYM7oVHpbFhIn","graph-container":"iJdBcuGEcr85ce7seMOQ","frame-container":"z2gALX67aRzo75j2uyoQ","graph-svg-container":"QfmhbpA1CyiudWm52O2f","graph-canvas-container":"zJUCneE7k31yaOjWTBle","selection-container":"MWjDs2Qen1BNXZ0_N1v6","selection-box":"uHfT3vSepb1Ka_re9veF"};const s=i},9750:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'.QoJwIsfQyC0kdP7U_VnQ{margin-top:6px;margin-bottom:6px;margin-left:4px;margin-right:4px;color:#fff;grid-row:2;grid-column:1;display:grid;grid-template-rows:100%;grid-template-columns:50% 50%;z-index:2}.bzZc2YPOE1DPrzZgVc4L{grid-row:1/span 2;grid-column:1;width:100%;height:100%;border:rgba(0,0,0,0) solid 4px;pointer-events:none;box-sizing:border-box}.dIcBAKOArBPqC6n4eyH_{display:grid;grid-row:2;grid-column:1;padding:0 10px;font-style:italic;word-wrap:break-word}.JC61QJRJjq8G0D0QBhax.bzZc2YPOE1DPrzZgVc4L{border-color:#fff}.clP6tuMZfzf3H7Nngqp_{grid-row:1;grid-column:1;background:#484848;color:#fff;text-align:center;display:grid;grid-template-rows:100%;grid-template-columns:calc(100% - 111px) 30px 7px 30px 7px 30px 7px;align-content:center;overflow:hidden}.ewDwmFa_ErkkADqFP2lg{cursor:pointer;align-self:center;transform-origin:50% 50%;transform:scale(1);stroke:rgba(0,0,0,0);fill:#fff;display:grid}.ewDwmFa_ErkkADqFP2lg.w8xt0lDJnPhzq2jLJtgy{transform:scale(0.9)}.Kk9jMJN5qywSLevvtqz_{grid-column:2;grid-row:1}.HYAx3ANgEbpyz741PkdZ{grid-column:4;grid-row:1}.WBWgH3wPXsBF2O91Iaci{grid-column:6;grid-row:1}._69WZBjkiJxdtuFb1pAE{grid-column:1;grid-row:1;display:grid;height:100%;width:100%;align-self:stretch;align-items:center;margin-top:-2px}.oZHCuoVA2AakTjNKtUxB{grid-area:1/2/3/2;width:4px;background-color:rgba(0,0,0,0);cursor:ew-resize}.oZHCuoVA2AakTjNKtUxB::after{content:"";width:8px;position:absolute;top:0;bottom:0;margin-left:-4px;cursor:ew-resize}.fo2Lv1odIvKW1ilzVuaO{background-color:rgba(0,0,0,0);height:4px;z-index:21;cursor:ne-resize;width:4px;margin-left:-6px}.fo2Lv1odIvKW1ilzVuaO::after{background-color:rgba(0,0,0,0);cursor:ne-resize;margin-left:unset;top:-4px;height:10px;width:10px}.Z25mo7mWZgEcsITq7Bcw{background-color:rgba(0,0,0,0);height:0px;z-index:21;cursor:nw-resize;grid-area:4/2/4/2;margin-left:-2px}.Z25mo7mWZgEcsITq7Bcw::after{background-color:rgba(0,0,0,0);height:10px;cursor:nw-resize;top:unset;bottom:-4px;width:10px}.E3f3RYfFpIW_ECBTuVRs{grid-area:1/1/3/1;width:4px;background-color:rgba(0,0,0,0);cursor:ew-resize}.E3f3RYfFpIW_ECBTuVRs::before{content:"";width:8px;position:absolute;top:0;bottom:0;margin-left:-4px}.WUrIw7WpKJWt4dcfFUT7{background-color:rgba(0,0,0,0);height:4px;z-index:21;cursor:nw-resize;width:4px;margin-left:-4px}.WUrIw7WpKJWt4dcfFUT7::before{background-color:rgba(0,0,0,0);cursor:nw-resize;margin-left:unset;top:-4px;height:10px;width:10px}.ofgQ4CHxlraUl1eYTCjX{background-color:rgba(0,0,0,0);height:0px;z-index:21;cursor:sw-resize;grid-area:4/1/4/1}.ofgQ4CHxlraUl1eYTCjX::before{background-color:rgba(0,0,0,0);height:10px;cursor:sw-resize;top:unset;bottom:-4px;width:10px}.kOtXE8uCgJhCA6O0G3R9{grid-area:1/1/1/1;background-color:rgba(0,0,0,0);height:4px;cursor:ns-resize}.kOtXE8uCgJhCA6O0G3R9::before{content:"";width:100%;position:absolute;top:-4px;bottom:100%;right:0;left:0;margin-bottom:-8px;cursor:ns-resize;height:8px}.N53X5Lr9NcSoKmY1filg{grid-area:3/1/3/1;background-color:rgba(0,0,0,0);height:4px;cursor:ns-resize}.N53X5Lr9NcSoKmY1filg::after{content:"";width:100%;position:absolute;top:100%;bottom:0;right:0;left:0;margin-top:-8px;cursor:ns-resize;height:12px}.tYlra2jox7Cj_8QALbbu{font-size:24px}.MjKBEwLXfmQhAZUfXxWR{height:auto !important;width:200px !important;z-index:3;font-size:16px}.j4CGcgBxBAJFPsSG4ZFn{grid-template-columns:calc(100% - 37px) 30px 7px}',"",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/graphFrame.module.scss"],names:[],mappings:"AAAA,sBACI,cAAA,CACA,iBAAA,CACA,eAAA,CACA,gBAAA,CACA,UAAA,CACA,UAAA,CACA,aAAA,CACA,YAAA,CACA,uBAAA,CACA,6BAAA,CACA,SAAA,CAGJ,sBACI,iBAAA,CACA,aAAA,CACA,UAAA,CACA,WAAA,CACA,8BAAA,CACA,mBAAA,CACA,qBAAA,CAGJ,sBACI,YAAA,CACA,UAAA,CACA,aAAA,CACA,cAAA,CACA,iBAAA,CACA,oBAAA,CAGJ,2CACI,iBAAA,CAGJ,sBACI,UAAA,CACA,aAAA,CACA,kBAAA,CACA,UAAA,CACA,iBAAA,CACA,YAAA,CACA,uBAAA,CACA,mEAAA,CACA,oBAAA,CACA,eAAA,CAGJ,sBACI,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,kBAAA,CACA,oBAAA,CACA,SAAA,CACA,YAAA,CAEA,2CACI,oBAAA,CAIR,sBACI,aAAA,CACA,UAAA,CAGJ,sBACI,aAAA,CACA,UAAA,CAGJ,sBACI,aAAA,CACA,UAAA,CAGJ,sBACI,aAAA,CACA,UAAA,CACA,YAAA,CACA,WAAA,CACA,UAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CAGJ,sBACI,iBAAA,CACA,SAAA,CACA,8BAAA,CACA,gBAAA,CAEA,6BACI,UAAA,CACA,SAAA,CACA,iBAAA,CACA,KAAA,CACA,QAAA,CACA,gBAAA,CACA,gBAAA,CAIR,sBACI,8BAAA,CACA,UAAA,CACA,UAAA,CACA,gBAAA,CACA,SAAA,CACA,gBAAA,CAEA,6BACI,8BAAA,CACA,gBAAA,CACA,iBAAA,CACA,QAAA,CACA,WAAA,CACA,UAAA,CAIR,sBACI,8BAAA,CACA,UAAA,CACA,UAAA,CACA,gBAAA,CACA,iBAAA,CACA,gBAAA,CAEA,6BACI,8BAAA,CACA,WAAA,CACA,gBAAA,CACA,SAAA,CACA,WAAA,CACA,UAAA,CAIR,sBACI,iBAAA,CACA,SAAA,CACA,8BAAA,CACA,gBAAA,CAEA,8BACI,UAAA,CACA,SAAA,CACA,iBAAA,CACA,KAAA,CACA,QAAA,CACA,gBAAA,CAIR,sBACI,8BAAA,CACA,UAAA,CACA,UAAA,CACA,gBAAA,CACA,SAAA,CACA,gBAAA,CAEA,8BACI,8BAAA,CACA,gBAAA,CACA,iBAAA,CACA,QAAA,CACA,WAAA,CACA,UAAA,CAIR,sBACI,8BAAA,CACA,UAAA,CACA,UAAA,CACA,gBAAA,CACA,iBAAA,CAEA,8BACI,8BAAA,CACA,WAAA,CACA,gBAAA,CACA,SAAA,CACA,WAAA,CACA,UAAA,CAIR,sBACI,iBAAA,CACA,8BAAA,CACA,UAAA,CACA,gBAAA,CAEA,8BACI,UAAA,CACA,UAAA,CACA,iBAAA,CACA,QAAA,CACA,WAAA,CACA,OAAA,CACA,MAAA,CACA,kBAAA,CACA,gBAAA,CACA,UAAA,CAIR,sBACI,iBAAA,CACA,8BAAA,CACA,UAAA,CACA,gBAAA,CAEA,6BACI,UAAA,CACA,UAAA,CACA,iBAAA,CACA,QAAA,CACA,QAAA,CACA,OAAA,CACA,MAAA,CACA,eAAA,CACA,gBAAA,CACA,WAAA,CAIR,sBACI,cAAA,CAGJ,sBACI,sBAAA,CACA,sBAAA,CACA,SAAA,CACA,cAAA,CAGJ,sBACI,gDAAA",sourceRoot:""}]),i.locals={"port-container":"QoJwIsfQyC0kdP7U_VnQ","frame-box-border":"bzZc2YPOE1DPrzZgVc4L","frame-comments":"dIcBAKOArBPqC6n4eyH_",selected:"JC61QJRJjq8G0D0QBhax","frame-box-header":"clP6tuMZfzf3H7Nngqp_","frame-box-header-button":"ewDwmFa_ErkkADqFP2lg",down:"w8xt0lDJnPhzq2jLJtgy","frame-box-header-collapse":"Kk9jMJN5qywSLevvtqz_","frame-box-header-focus":"HYAx3ANgEbpyz741PkdZ","frame-box-header-close":"WBWgH3wPXsBF2O91Iaci","frame-box-header-title":"_69WZBjkiJxdtuFb1pAE","right-handle":"oZHCuoVA2AakTjNKtUxB","top-right-corner-handle":"fo2Lv1odIvKW1ilzVuaO","bottom-right-corner-handle":"Z25mo7mWZgEcsITq7Bcw","left-handle":"E3f3RYfFpIW_ECBTuVRs","top-left-corner-handle":"WUrIw7WpKJWt4dcfFUT7","bottom-left-corner-handle":"ofgQ4CHxlraUl1eYTCjX","top-handle":"kOtXE8uCgJhCA6O0G3R9","bottom-handle":"N53X5Lr9NcSoKmY1filg",expanded:"tYlra2jox7Cj_8QALbbu",collapsed:"MjKBEwLXfmQhAZUfXxWR",collapsedHeader:"j4CGcgBxBAJFPsSG4ZFn"};const s=i},9319:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'.Bobo_GNuSSK3wj98J_7K{z-index:4;width:200px;position:absolute;left:0;top:0;background:gray;border:4px solid #000;border-radius:12px;display:grid;grid-template-rows:30px auto;grid-template-columns:100%;color:#fff;box-shadow:7px 6px 2px rgba(0,0,0,.2)}.VaVKfF7ZluDOZqCWrTss{z-index:5000}.tVnxKGh92qhrNS8ZrLSk{animation:VbXDgohRDHdjqNHZzzNa .5s infinite alternate}@keyframes VbXDgohRDHdjqNHZzzNa{to{border-color:#fff}}.wyuUlbj377MNT1UhvTmA{grid-row:1;grid-column:1;position:relative;border:4px solid #000;border-top-right-radius:7px;border-top-left-radius:7px;background:#000;color:#fff;transform:scaleX(1.01) translateY(-0.5px);transform-origin:center;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:100%}.BmhtBDkDfI85nbM4NxMW{z-index:10;align-self:center;user-select:none;display:grid;transform:translateY(1px);grid-row:1;grid-column:3}.OE7iNY9W9C5xaXmb4fJq{grid-row:1;grid-column:1;z-index:10;align-self:center;user-select:none;display:grid;cursor:pointer;color:#fff;font-weight:bold;font-size:16px;justify-content:center;width:20px;transform:rotate(0deg);transition:transform .2s;transform-origin:center}.Z9lpI06OUpToOdoscgAP{transform:rotate(-90deg)}.f_UcygzCMLv89LeqZSEy{grid-row:1;grid-column:2;font-size:16px;text-align:center;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;transform:translateY(-2px)}.kJbPorwpWbIl6Q7awkHo{grid-row:2;grid-column:1;display:grid;grid-template-columns:50% 50%;grid-template-rows:auto auto auto;transform:scale(1)}.RfWrHWBOKiuZXNcSUHZe{min-height:20px;grid-row:3;grid-column:1}.SgS8_RcQjdLxnu1nPvOp{position:absolute;top:-50px;width:200px;height:45px;overflow:hidden;font-style:italic;opacity:.8;display:grid;align-items:flex-end;pointer-events:none}.Cbl6uixgEd9Qw0tPi9mf{position:absolute;bottom:1px;width:195px;height:20px;overflow:hidden;font-size:11px;opacity:.5;display:grid;align-items:flex-end;justify-content:end;pointer-events:none;z-index:-1}.wm6PpDz796f_yehTb9kV{border-color:#fff !important}.GbpJUHoTKcYsbWRTctwV{grid-row:2;grid-column:1/3}.LLYUI2tB03_XrFiwqTTI{height:20px;display:flex;margin-left:4px;cursor:default;width:fit-content}.LLYUI2tB03_XrFiwqTTI input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:2px;border:rgba(0,0,0,0);background-color:#000;opacity:.5;position:relative}.LLYUI2tB03_XrFiwqTTI input[type=checkbox]:checked{background-color:#337ab7;opacity:1}.LLYUI2tB03_XrFiwqTTI input[type=checkbox]:checked::after{content:"✓";color:#fff;font-weight:bold;font-size:12px;position:relative;left:3px;top:-1px}.LLYUI2tB03_XrFiwqTTI label{word-wrap:break-word;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;transform:translateY(-1px)}.ELAsOakhMS22t6DYhtTL{display:grid;margin-top:5px;margin-bottom:5px;height:20px;cursor:default}.ELAsOakhMS22t6DYhtTL input[type=number]{grid-row:1;grid-column:1;-moz-appearance:textfield;margin-left:5px;margin-right:5px;transform:translateY(2px);border:0px;opacity:.9;color:#fff;border:0px;border-radius:2px;background-color:rgba(0,0,0,.5);padding-left:5px;z-index:1;text-align:end;padding-right:5px;cursor:col-resize}.ELAsOakhMS22t6DYhtTL input[type=number]::-webkit-outer-spin-button,.ELAsOakhMS22t6DYhtTL input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ELAsOakhMS22t6DYhtTL input[type=number]:hover{background-color:rgba(0,0,0,.2)}.ELAsOakhMS22t6DYhtTL input[type=number]:focus{outline:0px;box-shadow:2px 2px 2px rgba(0,0,0,.1);background-color:rgba(0,0,0,.8);opacity:1}.ELAsOakhMS22t6DYhtTL input[type=number]:focus+div{display:none}.ELAsOakhMS22t6DYhtTL div{grid-row:1;grid-column:1;z-index:2;align-self:center;justify-self:left;margin-left:15px;font-size:12px;font-weight:100}.sIwqD3_gaJsyql1dMo6T{margin-top:3px;height:20px;display:grid;margin-bottom:3px;cursor:default}.sQ96j8FSxarhbG1A8PUC{grid-row:1;grid-column:1;position:relative;margin-left:10px;margin-right:10px;border:1px solid rgba(0,0,0,.2);border-radius:2px;background-color:rgba(0,0,0,.5);opacity:.9;cursor:pointer;text-align:center}.sQ96j8FSxarhbG1A8PUC:hover{background-color:rgba(0,0,0,.2)}.sQ96j8FSxarhbG1A8PUC:focus{outline:0px;opacity:1}.ilzwnbRpnSkUQLp_Nvdq{color:#fff;pointer-events:none;background:rgba(0,0,0,0);transform:translateY(-1px)}.EtYnyVt872MEdulmxpma{border-radius:4px 4px 0 0;border-color:rgba(0,0,0,0);background-color:rgba(0,0,0,.2);opacity:1}.fP8a0RIFmOCLEVr5UFij{border-radius:0 0 4px 4px;overflow:auto;padding:0;padding-top:5px;padding-bottom:5px;transform:translateX(-1px);top:20px;width:100%;list-style:none;margin:0;position:absolute;border:0;z-index:100000;background-color:#333;border:1px solid #333;max-height:200px}.fP8a0RIFmOCLEVr5UFij::-webkit-scrollbar{width:6px;height:6px}.fP8a0RIFmOCLEVr5UFij::-webkit-scrollbar-track{border-radius:10px;background:rgba(0,0,0,.1)}.fP8a0RIFmOCLEVr5UFij::-webkit-scrollbar-thumb{border-radius:10px;background:rgba(0,0,0,.2)}.fP8a0RIFmOCLEVr5UFij::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.4)}.fP8a0RIFmOCLEVr5UFij::-webkit-scrollbar-thumb:active{background:rgba(0,0,0,.9)}.iN8VxGmf0YCxoYeMiho9{opacity:.8;height:22px;font-size:14px;margin-left:5px;margin-right:5px;border-radius:4px;cursor:pointer}.iN8VxGmf0YCxoYeMiho9:hover{background-color:rgba(0,0,0,.2)}.yWsLj4mFQyCZzcdaHovv{display:grid;padding-top:5px;padding-bottom:5px}.yWsLj4mFQyCZzcdaHovv input[type=range]{grid-row:1;grid-column:1;-webkit-appearance:none;margin:0;margin-left:5px;margin-right:5px;transform:translateY(2px);border-radius:2px;border:0px;opacity:.5;overflow:hidden;background-color:#000}.yWsLj4mFQyCZzcdaHovv input[type=range]:hover{outline:0px;opacity:.8}.yWsLj4mFQyCZzcdaHovv input[type=range]::-webkit-slider-runnable-track{height:5px;-webkit-appearance:none;margin-top:-1px;border:0}.yWsLj4mFQyCZzcdaHovv input[type=range]::-webkit-slider-thumb{width:.01px;-webkit-appearance:none;height:.01px;cursor:ew-resize;background:#000;border:0;box-shadow:-100px 0 0 100px #337ab7;opacity:.8;z-index:1}.yWsLj4mFQyCZzcdaHovv label{grid-row:1;grid-column:1;margin-left:10px;word-wrap:break-word;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;z-index:2;pointer-events:none;font-weight:100}.yWsLj4mFQyCZzcdaHovv div{grid-row:1;grid-column:1;z-index:2;pointer-events:none;font-size:12px;align-self:center;justify-self:end;margin-right:10px}',"",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/graphNode.module.scss"],names:[],mappings:"AAAA,sBAAA,SACI,CAAA,WACA,CAAA,iBACA,CAAA,MACA,CAAA,KACA,CAAA,eACA,CAAA,qBACA,CAAA,kBACA,CAAA,YACA,CAAA,4BACA,CAAA,0BACA,CAAA,UACA,CAAA,qCACA,CAAA,sBAGJ,YACI,CAAA,sBAGJ,qDACI,CAAA,gCACA,GACI,iBACI,CAAA,CAAA,sBAKZ,UACI,CAAA,aACA,CAAA,iBACA,CAAA,qBACA,CAAA,2BACA,CAAA,0BACA,CAAA,eACA,CAAA,UACA,CAAA,yCACA,CAAA,uBACA,CAAA,YACA,CAAA,mCACA,CAAA,uBACA,CAAA,sBAGJ,UACI,CAAA,iBACA,CAAA,gBACA,CAAA,YACA,CAAA,yBACA,CAAA,UACA,CAAA,aACA,CAAA,sBAGJ,UACI,CAAA,aACA,CAAA,UACA,CAAA,iBACA,CAAA,gBACA,CAAA,YACA,CAAA,cACA,CAAA,UACA,CAAA,gBACA,CAAA,cACA,CAAA,sBACA,CAAA,UACA,CAAA,sBACA,CAAA,wBACA,CAAA,uBACA,CAAA,sBAGJ,wBACI,CAAA,sBAGJ,UACI,CAAA,aACA,CAAA,cACA,CAAA,iBACA,CAAA,kBACA,CAAA,sBACA,CAAA,eACA,CAAA,0BACA,CAAA,sBAGJ,UACI,CAAA,aACA,CAAA,YAEA,CAAA,6BACA,CAAA,iCACA,CAAA,kBACA,CAAA,sBAGJ,eACI,CAAA,UACA,CAAA,aACA,CAAA,sBAGJ,iBACI,CAAA,SACA,CAAA,WACA,CAAA,WACA,CAAA,eACA,CAAA,iBACA,CAAA,UACA,CAAA,YACA,CAAA,oBACA,CAAA,mBACA,CAAA,sBAGJ,iBACI,CAAA,UACA,CAAA,WACA,CAAA,WACA,CAAA,eACA,CAAA,cACA,CAAA,UACA,CAAA,YACA,CAAA,oBACA,CAAA,mBACA,CAAA,mBACA,CAAA,UACA,CAAA,sBAGJ,4BACI,CAAA,sBAGJ,UACI,CAAA,eACA,CAAA,sBAGJ,WACI,CAAA,YACA,CAAA,eACA,CAAA,cACA,CAAA,iBACA,CAAA,2CAEA,uBACI,CAAA,oBACA,CAAA,eACA,CAAA,UACA,CAAA,WACA,CAAA,iBACA,CAAA,oBACA,CAAA,qBACA,CAAA,UACA,CAAA,iBACA,CAAA,mDAEA,wBACI,CAAA,SACA,CAAA,0DAGJ,WACI,CAAA,UACA,CAAA,gBACA,CAAA,cACA,CAAA,iBACA,CAAA,QACA,CAAA,QACA,CAAA,4BAGR,oBACI,CAAA,kBACA,CAAA,sBACA,CAAA,eACA,CAAA,0BACA,CAAA,sBAIR,YACI,CAAA,cACA,CAAA,iBACA,CAAA,WACA,CAAA,cACA,CAAA,yCAEA,UACI,CAAA,aACA,CAAA,yBACA,CAAA,eACA,CAAA,gBACA,CAAA,yBACA,CAAA,UACA,CAAA,UACA,CAAA,UACA,CAAA,UACA,CAAA,iBACA,CAAA,+BACA,CAAA,gBACA,CAAA,SACA,CAAA,cACA,CAAA,iBACA,CAAA,iBACA,CAAA,wIAEA,uBAEI,CAAA,QACA,CAAA,+CAGJ,+BACI,CAAA,+CAGJ,WACI,CAAA,qCACA,CAAA,+BACA,CAAA,SACA,CAAA,mDAEA,YACI,CAAA,0BAKZ,UACI,CAAA,aACA,CAAA,SACA,CAAA,iBACA,CAAA,iBACA,CAAA,gBACA,CAAA,cACA,CAAA,eACA,CAAA,sBAIR,cACI,CAAA,WACA,CAAA,YACA,CAAA,iBACA,CAAA,cACA,CAAA,sBAGJ,UACI,CAAA,aACA,CAAA,iBACA,CAAA,gBACA,CAAA,iBACA,CAAA,+BACA,CAAA,iBACA,CAAA,+BACA,CAAA,UACA,CAAA,cACA,CAAA,iBACA,CAAA,4BAEA,+BACI,CAAA,4BAGJ,WACI,CAAA,SACA,CAAA,sBAIR,UACI,CAAA,mBACA,CAAA,wBACA,CAAA,0BACA,CAAA,sBAGJ,yBACI,CAAA,0BACA,CAAA,+BACA,CAAA,SACA,CAAA,sBAGJ,yBACI,CAAA,aACA,CAAA,SACA,CAAA,eACA,CAAA,kBACA,CAAA,0BACA,CAAA,QACA,CAAA,UACA,CAAA,eACA,CAAA,QACA,CAAA,iBACA,CAAA,QACA,CAAA,cACA,CAAA,qBACA,CAAA,qBACA,CAAA,gBACA,CAAA,yCAGA,SACI,CAAA,UACA,CAAA,+CAEJ,kBACI,CAAA,yBACA,CAAA,+CAEJ,kBACI,CAAA,yBACA,CAAA,qDAEJ,yBACI,CAAA,sDAEJ,yBACI,CAAA,sBAIR,UACI,CAAA,WACA,CAAA,cACA,CAAA,eACA,CAAA,gBACA,CAAA,iBACA,CAAA,cACA,CAAA,4BACA,+BACI,CAAA,sBAIR,YACI,CAAA,eACA,CAAA,kBACA,CAAA,wCAEA,UACI,CAAA,aACA,CAAA,uBACA,CAAA,QACA,CAAA,eACA,CAAA,gBACA,CAAA,yBACA,CAAA,iBACA,CAAA,UACA,CAAA,UACA,CAAA,eACA,CAAA,qBACA,CAAA,8CAEA,WACI,CAAA,UACA,CAAA,uEAGJ,UACI,CAAA,uBACA,CAAA,eACA,CAAA,QACA,CAAA,8DAGJ,WACI,CAAA,uBACA,CAAA,YACA,CAAA,gBACA,CAAA,eACA,CAAA,QACA,CAAA,mCACA,CAAA,UACA,CAAA,SACA,CAAA,4BAIR,UACI,CAAA,aACA,CAAA,gBACA,CAAA,oBACA,CAAA,kBACA,CAAA,sBACA,CAAA,eACA,CAAA,SACA,CAAA,mBACA,CAAA,eACA,CAAA,0BAGJ,UACI,CAAA,aACA,CAAA,SACA,CAAA,mBACA,CAAA,cACA,CAAA,iBACA,CAAA,gBACA,CAAA,iBACA",sourceRoot:""}]),i.locals={visual:"Bobo_GNuSSK3wj98J_7K",topMost:"VaVKfF7ZluDOZqCWrTss",highlighted:"tVnxKGh92qhrNS8ZrLSk",glow:"VbXDgohRDHdjqNHZzzNa","header-container":"wyuUlbj377MNT1UhvTmA",headerIcon:"BmhtBDkDfI85nbM4NxMW",headerCollapse:"OE7iNY9W9C5xaXmb4fJq",collapsed:"Z9lpI06OUpToOdoscgAP",header:"f_UcygzCMLv89LeqZSEy",connections:"kJbPorwpWbIl6Q7awkHo",content:"RfWrHWBOKiuZXNcSUHZe",comments:"SgS8_RcQjdLxnu1nPvOp",executionTime:"Cbl6uixgEd9Qw0tPi9mf",selected:"wm6PpDz796f_yehTb9kV",optionsContainer:"GbpJUHoTKcYsbWRTctwV",booleanContainer:"LLYUI2tB03_XrFiwqTTI",floatContainer:"ELAsOakhMS22t6DYhtTL",listContainer:"sIwqD3_gaJsyql1dMo6T",select:"sQ96j8FSxarhbG1A8PUC",selectText:"ilzwnbRpnSkUQLp_Nvdq",active:"EtYnyVt872MEdulmxpma",selectList:"fP8a0RIFmOCLEVr5UFij",option:"iN8VxGmf0YCxoYeMiho9",sliderContainer:"yWsLj4mFQyCZzcdaHovv"};const s=i},1917:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".LcAfLURgMF6_xQIp9xW5{stroke-width:4px}.LcAfLURgMF6_xQIp9xW5.zf49BMaByhYYIAbbyPJI{stroke:#fff !important;stroke-dasharray:10,2}.jrnrI_y4VbpSgvxxjfy2{filter:brightness(1.5);stroke-width:6px}.eVGcF_1cKpBdhuYPamV_{pointer-events:all;stroke-width:16px;opacity:0;transition:opacity 75ms;stroke:rgba(0,0,0,0);cursor:pointer}.eVGcF_1cKpBdhuYPamV_:hover,.eVGcF_1cKpBdhuYPamV_.zf49BMaByhYYIAbbyPJI{stroke:#fff !important;opacity:.4}","",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/nodeLink.module.scss"],names:[],mappings:"AAAA,sBACI,gBAAA,CACA,2CACI,sBAAA,CACA,qBAAA,CAIR,sBACI,sBAAA,CACA,gBAAA,CAGJ,sBACI,kBAAA,CACA,iBAAA,CACA,SAAA,CACA,uBAAA,CACA,oBAAA,CACA,cAAA,CAEA,uEAEI,sBAAA,CACA,UAAA",sourceRoot:""}]),i.locals={link:"LcAfLURgMF6_xQIp9xW5",selected:"zf49BMaByhYYIAbbyPJI","target-candidate":"jrnrI_y4VbpSgvxxjfy2","selection-link":"eVGcF_1cKpBdhuYPamV_"};const s=i},7936:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".xp0svdQQ7lHcLyymo9_p{filter:brightness(2)}.mzsVp6_QOFaQygXylaeh{background:green;width:6px;height:6px;grid-row:1;grid-column:1;align-self:center;justify-self:center;border-radius:7px;border:2px solid #000}.mzsVp6_QOFaQygXylaeh.AGhAEUJ1eJ3ZffrDebig{display:none}img{grid-row:1;grid-column:1}img.xp0svdQQ7lHcLyymo9_p{box-shadow:0 0 0 2px;border-radius:50%}","",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/nodePort.module.scss"],names:[],mappings:"AAAA,sBACI,oBAAA,CAGJ,sBACI,gBAAA,CACA,SAAA,CACA,UAAA,CACA,UAAA,CACA,aAAA,CACA,iBAAA,CACA,mBAAA,CACA,iBAAA,CACA,qBAAA,CAEA,2CACI,YAAA,CAIR,IACI,UAAA,CACA,aAAA,CAGJ,yBACI,oBAAA,CACA,iBAAA",sourceRoot:""}]),i.locals={selected:"xp0svdQQ7lHcLyymo9_p",pip:"mzsVp6_QOFaQygXylaeh",hidden:"AGhAEUJ1eJ3ZffrDebig"};const s=i},3914:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".P2vB7N_AgSkfsRVUkbRm{display:none !important}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/blockNodeData.module.scss"],names:[],mappings:"AAAA,sBACI,uBAAA",sourceRoot:""}]),i.locals={hidden:"P2vB7N_AgSkfsRVUkbRm"};const s=i},8469:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".qD9qGeizpAp6tYoPVeow{grid-row:2;height:140px;width:140px;overflow:hidden;border-bottom-left-radius:7px;border:#000 4px solid;border-left:0px;border-bottom:0px}.qD9qGeizpAp6tYoPVeow img{width:100%;height:100%;pointer-events:none}.qD9qGeizpAp6tYoPVeow img.WqEf3hMVhtkiCMOffdh_{display:none}.WqEf3hMVhtkiCMOffdh_{display:none}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/common.module.scss"],names:[],mappings:"AAAA,sBACI,UAAA,CACA,YAAA,CACA,WAAA,CACA,eAAA,CACA,6BAAA,CACA,qBAAA,CACA,eAAA,CACA,iBAAA,CAEA,0BACI,UAAA,CACA,WAAA,CACA,mBAAA,CAEA,+CACI,YAAA,CAKZ,sBACI,YAAA",sourceRoot:""}]),i.locals={"texture-block":"qD9qGeizpAp6tYoPVeow",empty:"WqEf3hMVhtkiCMOffdh_"};const s=i},7156:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".nHwHgDZKs3gKpZ8YoasV{grid-row:2;height:34px;text-align:center;font-size:18px;font-weight:bold;margin:0 10px}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/curveDisplayManager.module.scss"],names:[],mappings:"AAAA,sBACI,UAAA,CACA,WAAA,CACA,iBAAA,CACA,cAAA,CACA,gBAAA,CACA,aAAA",sourceRoot:""}]),i.locals={"curve-block":"nHwHgDZKs3gKpZ8YoasV"};const s=i},5024:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".dOatr3YZiQ2XwfA9LYJy{width:40px !important;grid-template-rows:0px 40px 0px !important;border-radius:40px !important;transform:translateY(-7px) !important}.JUP1lJuVKx_v5omAMXEX{display:none}.BCV8x2Q4rQlur4DEIXvx{transform:translateY(7px)}.X5U0_c13uawZjGdva13x{border-radius:40px}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/elbowDisplayManager.module.scss"],names:[],mappings:"AAAA,sBACI,qBAAA,CACA,0CAAA,CACA,6BAAA,CACA,qCAAA,CAGJ,sBACI,YAAA,CAGJ,sBACI,yBAAA,CAGJ,sBACI,kBAAA",sourceRoot:""}]),i.locals={elbowBlock:"dOatr3YZiQ2XwfA9LYJy",hidden:"JUP1lJuVKx_v5omAMXEX",translatedConnections:"BCV8x2Q4rQlur4DEIXvx",roundSelectionBorder:"X5U0_c13uawZjGdva13x"};const s=i},6997:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".kKrhofchqBmMAtRFmoQA{grid-row:2;height:34px}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/gradientDisplayManager.module.scss"],names:[],mappings:"AAAA,sBACI,UAAA,CACA,WAAA",sourceRoot:""}]),i.locals={gradientBlock:"kKrhofchqBmMAtRFmoQA"};const s=i},489:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".y3r0uoRbB7Q9cxBRLbat{margin-top:5px}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/imageSourceDisplayManager.module.scss"],names:[],mappings:"AAAA,sBACI,cAAA",sourceRoot:""}]),i.locals={"image-source-block":"y3r0uoRbB7Q9cxBRLbat"};const s=i},8637:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".PlUl1ctp4YMSLZwUipsw{grid-row:2;min-height:34px;text-align:center;font-size:18px;font-weight:bold;margin:0 10px 5px;display:grid;align-content:center}.PlUl1ctp4YMSLZwUipsw.UuVLKdmPVTOTWFa33T0G{font-size:17px}.YqQLt4hf6ja9HI_mpe84{border-color:#464348;background:#464348}.WPyD50ELIGQuDwAb5nwn{border-color:#66491b;background:#66491b}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/inputDisplayManager.module.scss"],names:[],mappings:"AAAA,sBACI,UAAA,CACA,eAAA,CACA,iBAAA,CACA,cAAA,CACA,gBAAA,CACA,iBAAA,CACA,YAAA,CACA,oBAAA,CAEA,2CACI,cAAA,CAIR,sBACI,oBAAA,CACA,kBAAA,CAGJ,sBACI,oBAAA,CACA,kBAAA",sourceRoot:""}]),i.locals={"input-block":"PlUl1ctp4YMSLZwUipsw","small-font":"UuVLKdmPVTOTWFa33T0G",constant:"YqQLt4hf6ja9HI_mpe84",inspector:"WPyD50ELIGQuDwAb5nwn"};const s=i},2886:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".wHaBVvqGlmk7N9glnG_B{height:34px;text-align:center;font-size:18px;font-weight:bold;margin:0 10px}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/remapDisplayManager.module.scss"],names:[],mappings:"AAAA,sBACI,WAAA,CACA,iBAAA,CACA,cAAA,CACA,gBAAA,CACA,aAAA",sourceRoot:""}]),i.locals={"remap-block":"wHaBVvqGlmk7N9glnG_B"};const s=i},2324:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".hol3vmg6S3RmMX2BDnJQ{margin-top:80px}.jI6eo5eT93r0D5eOTjnu{margin-top:30px}.pG2BSy_fF3kPC8Kb7oq9{grid-row:3 !important}.JSNytgcYueYEIEHDn_eh{margin-top:155px}.YtzUAOeZNDFTFHo93qGQ{margin-top:80px}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/textureDisplayManager.module.scss"],names:[],mappings:"AAAA,sBACI,eAAA,CAGJ,sBACI,eAAA,CAGJ,sBACI,qBAAA,CAGJ,sBACI,gBAAA,CAGJ,sBACI,eAAA",sourceRoot:""}]),i.locals={"regular-texture-block":"hol3vmg6S3RmMX2BDnJQ","reduced-texture-block":"jI6eo5eT93r0D5eOTjnu","reflection-block":"pG2BSy_fF3kPC8Kb7oq9","triplanar-texture-block":"JSNytgcYueYEIEHDn_eh","refraction-texture-block":"YtzUAOeZNDFTFHo93qGQ"};const s=i},7474:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",r=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),r&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),r&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,r,o,a){"string"==typeof e&&(e=[[null,e,void 0]]);var i={};if(r)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(i[l]=!0)}for(var c=0;c<e.length;c++){var u=[].concat(e[c]);r&&i[u[0]]||(void 0!==a&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=a),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),t.push(u))}},t}},3234:e=>{"use strict";e.exports=function(e){var t=e[1],n=e[3];if(!n)return t;if("function"==typeof btoa){var r=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),o="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(r),a="/*# ".concat(o," */");return[t].concat([a]).join("\n")}return[t].join("\n")}},2878:(e,t,n)=>{e.exports={graphlib:n(503),layout:n(946),debug:n(2213),util:{time:n(4012).time,notime:n(4012).notime},version:n(6950)}},3070:(e,t,n)=>{"use strict";var r=n(2190),o=n(5703);e.exports={run:function(e){var t="greedy"===e.graph().acyclicer?o(e,function(e){return function(t){return e.edge(t).weight}}(e)):function(e){var t=[],n={},o={};return r.forEach(e.nodes(),(function a(i){r.has(o,i)||(o[i]=!0,n[i]=!0,r.forEach(e.outEdges(i),(function(e){r.has(n,e.w)?t.push(e):a(e.w)})),delete n[i])})),t}(e);r.forEach(t,(function(t){var n=e.edge(t);e.removeEdge(t),n.forwardName=t.name,n.reversed=!0,e.setEdge(t.w,t.v,n,r.uniqueId("rev"))}))},undo:function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);if(n.reversed){e.removeEdge(t);var r=n.forwardName;delete n.reversed,delete n.forwardName,e.setEdge(t.w,t.v,n,r)}}))}}},1087:(e,t,n)=>{var r=n(2190),o=n(4012);function a(e,t,n,r,a,i){var s={width:0,height:0,rank:i,borderType:t},l=a[t][i-1],c=o.addDummyNode(e,"border",s,n);a[t][i]=c,e.setParent(c,r),l&&e.setEdge(l,c,{weight:1})}e.exports=function(e){r.forEach(e.children(),(function t(n){var o=e.children(n),i=e.node(n);if(o.length&&r.forEach(o,t),r.has(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var s=i.minRank,l=i.maxRank+1;s<l;++s)a(e,"borderLeft","_bl",n,i,s),a(e,"borderRight","_br",n,i,s)}}))}},7210:(e,t,n)=>{"use strict";var r=n(2190);function o(e){r.forEach(e.nodes(),(function(t){a(e.node(t))})),r.forEach(e.edges(),(function(t){a(e.edge(t))}))}function a(e){var t=e.width;e.width=e.height,e.height=t}function i(e){e.y=-e.y}function s(e){var t=e.x;e.x=e.y,e.y=t}e.exports={adjust:function(e){var t=e.graph().rankdir.toLowerCase();"lr"!==t&&"rl"!==t||o(e)},undo:function(e){var t=e.graph().rankdir.toLowerCase();"bt"!==t&&"rl"!==t||function(e){r.forEach(e.nodes(),(function(t){i(e.node(t))})),r.forEach(e.edges(),(function(t){var n=e.edge(t);r.forEach(n.points,i),r.has(n,"y")&&i(n)}))}(e),"lr"!==t&&"rl"!==t||(function(e){r.forEach(e.nodes(),(function(t){s(e.node(t))})),r.forEach(e.edges(),(function(t){var n=e.edge(t);r.forEach(n.points,s),r.has(n,"x")&&s(n)}))}(e),o(e))}}},7755:e=>{function t(){var e={};e._next=e._prev=e,this._sentinel=e}function n(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function r(e,t){if("_next"!==e&&"_prev"!==e)return t}e.exports=t,t.prototype.dequeue=function(){var e=this._sentinel,t=e._prev;if(t!==e)return n(t),t},t.prototype.enqueue=function(e){var t=this._sentinel;e._prev&&e._next&&n(e),e._next=t._next,t._next._prev=e,t._next=e,e._prev=t},t.prototype.toString=function(){for(var e=[],t=this._sentinel,n=t._prev;n!==t;)e.push(JSON.stringify(n,r)),n=n._prev;return"["+e.join(", ")+"]"}},2213:(e,t,n)=>{var r=n(2190),o=n(4012),a=n(503).Graph;e.exports={debugOrdering:function(e){var t=o.buildLayerMatrix(e),n=new a({compound:!0,multigraph:!0}).setGraph({});return r.forEach(e.nodes(),(function(t){n.setNode(t,{label:t}),n.setParent(t,"layer"+e.node(t).rank)})),r.forEach(e.edges(),(function(e){n.setEdge(e.v,e.w,{},e.name)})),r.forEach(t,(function(e,t){var o="layer"+t;n.setNode(o,{rank:"same"}),r.reduce(e,(function(e,t){return n.setEdge(e,t,{style:"invis"}),t}))})),n}}},503:(e,t,n)=>{var r;try{r=n(7730)}catch(e){}r||(r=window.graphlib),e.exports=r},5703:(e,t,n)=>{var r=n(2190),o=n(503).Graph,a=n(7755);e.exports=function(e,t){if(e.nodeCount()<=1)return[];var n=function(e,t){var n=new o,i=0,s=0;r.forEach(e.nodes(),(function(e){n.setNode(e,{v:e,in:0,out:0})})),r.forEach(e.edges(),(function(e){var r=n.edge(e.v,e.w)||0,o=t(e),a=r+o;n.setEdge(e.v,e.w,a),s=Math.max(s,n.node(e.v).out+=o),i=Math.max(i,n.node(e.w).in+=o)}));var c=r.range(s+i+3).map((function(){return new a})),u=i+1;return r.forEach(n.nodes(),(function(e){l(c,u,n.node(e))})),{graph:n,buckets:c,zeroIdx:u}}(e,t||i),c=function(e,t,n){for(var r,o=[],a=t[t.length-1],i=t[0];e.nodeCount();){for(;r=i.dequeue();)s(e,t,n,r);for(;r=a.dequeue();)s(e,t,n,r);if(e.nodeCount())for(var l=t.length-2;l>0;--l)if(r=t[l].dequeue()){o=o.concat(s(e,t,n,r,!0));break}}return o}(n.graph,n.buckets,n.zeroIdx);return r.flatten(r.map(c,(function(t){return e.outEdges(t.v,t.w)})),!0)};var i=r.constant(1);function s(e,t,n,o,a){var i=a?[]:void 0;return r.forEach(e.inEdges(o.v),(function(r){var o=e.edge(r),s=e.node(r.v);a&&i.push({v:r.v,w:r.w}),s.out-=o,l(t,n,s)})),r.forEach(e.outEdges(o.v),(function(r){var o=e.edge(r),a=r.w,i=e.node(a);i.in-=o,l(t,n,i)})),e.removeNode(o.v),i}function l(e,t,n){n.out?n.in?e[n.out-n.in+t].enqueue(n):e[e.length-1].enqueue(n):e[0].enqueue(n)}},946:(e,t,n)=>{"use strict";var r=n(2190),o=n(3070),a=n(3305),i=n(985),s=n(4012).normalizeRanks,l=n(2396),c=n(4012).removeEmptyRanks,u=n(3497),d=n(1087),p=n(7210),h=n(8037),A=n(1672),f=n(4012),g=n(503).Graph;e.exports=function(e,t){var n=t&&t.debugTiming?f.time:f.notime;n("layout",(function(){var t=n(" buildLayoutGraph",(function(){return function(e){var t=new g({multigraph:!0,compound:!0}),n=N(e.graph());return t.setGraph(r.merge({},C,k(n,m),r.pick(n,b))),r.forEach(e.nodes(),(function(n){var o=N(e.node(n));t.setNode(n,r.defaults(k(o,v),y)),t.setParent(n,e.parent(n))})),r.forEach(e.edges(),(function(n){var o=N(e.edge(n));t.setEdge(n,r.merge({},w,k(o,x),r.pick(o,M)))})),t}(e)}));n(" runLayout",(function(){!function(e,t){t(" makeSpaceForEdgeLabels",(function(){!function(e){var t=e.graph();t.ranksep/=2,r.forEach(e.edges(),(function(n){var r=e.edge(n);r.minlen*=2,"c"!==r.labelpos.toLowerCase()&&("TB"===t.rankdir||"BT"===t.rankdir?r.width+=r.labeloffset:r.height+=r.labeloffset)}))}(e)})),t(" removeSelfEdges",(function(){!function(e){r.forEach(e.edges(),(function(t){if(t.v===t.w){var n=e.node(t.v);n.selfEdges||(n.selfEdges=[]),n.selfEdges.push({e:t,label:e.edge(t)}),e.removeEdge(t)}}))}(e)})),t(" acyclic",(function(){o.run(e)})),t(" nestingGraph.run",(function(){u.run(e)})),t(" rank",(function(){i(f.asNonCompoundGraph(e))})),t(" injectEdgeLabelProxies",(function(){!function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);if(n.width&&n.height){var r=e.node(t.v),o={rank:(e.node(t.w).rank-r.rank)/2+r.rank,e:t};f.addDummyNode(e,"edge-proxy",o,"_ep")}}))}(e)})),t(" removeEmptyRanks",(function(){c(e)})),t(" nestingGraph.cleanup",(function(){u.cleanup(e)})),t(" normalizeRanks",(function(){s(e)})),t(" assignRankMinMax",(function(){!function(e){var t=0;r.forEach(e.nodes(),(function(n){var o=e.node(n);o.borderTop&&(o.minRank=e.node(o.borderTop).rank,o.maxRank=e.node(o.borderBottom).rank,t=r.max(t,o.maxRank))})),e.graph().maxRank=t}(e)})),t(" removeEdgeLabelProxies",(function(){!function(e){r.forEach(e.nodes(),(function(t){var n=e.node(t);"edge-proxy"===n.dummy&&(e.edge(n.e).labelRank=n.rank,e.removeNode(t))}))}(e)})),t(" normalize.run",(function(){a.run(e)})),t(" parentDummyChains",(function(){l(e)})),t(" addBorderSegments",(function(){d(e)})),t(" order",(function(){h(e)})),t(" insertSelfEdges",(function(){!function(e){var t=f.buildLayerMatrix(e);r.forEach(t,(function(t){var n=0;r.forEach(t,(function(t,o){var a=e.node(t);a.order=o+n,r.forEach(a.selfEdges,(function(t){f.addDummyNode(e,"selfedge",{width:t.label.width,height:t.label.height,rank:a.rank,order:o+ ++n,e:t.e,label:t.label},"_se")})),delete a.selfEdges}))}))}(e)})),t(" adjustCoordinateSystem",(function(){p.adjust(e)})),t(" position",(function(){A(e)})),t(" positionSelfEdges",(function(){!function(e){r.forEach(e.nodes(),(function(t){var n=e.node(t);if("selfedge"===n.dummy){var r=e.node(n.e.v),o=r.x+r.width/2,a=r.y,i=n.x-o,s=r.height/2;e.setEdge(n.e,n.label),e.removeNode(t),n.label.points=[{x:o+2*i/3,y:a-s},{x:o+5*i/6,y:a-s},{x:o+i,y:a},{x:o+5*i/6,y:a+s},{x:o+2*i/3,y:a+s}],n.label.x=n.x,n.label.y=n.y}}))}(e)})),t(" removeBorderNodes",(function(){!function(e){r.forEach(e.nodes(),(function(t){if(e.children(t).length){var n=e.node(t),o=e.node(n.borderTop),a=e.node(n.borderBottom),i=e.node(r.last(n.borderLeft)),s=e.node(r.last(n.borderRight));n.width=Math.abs(s.x-i.x),n.height=Math.abs(a.y-o.y),n.x=i.x+n.width/2,n.y=o.y+n.height/2}})),r.forEach(e.nodes(),(function(t){"border"===e.node(t).dummy&&e.removeNode(t)}))}(e)})),t(" normalize.undo",(function(){a.undo(e)})),t(" fixupEdgeLabelCoords",(function(){!function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);if(r.has(n,"x"))switch("l"!==n.labelpos&&"r"!==n.labelpos||(n.width-=n.labeloffset),n.labelpos){case"l":n.x-=n.width/2+n.labeloffset;break;case"r":n.x+=n.width/2+n.labeloffset}}))}(e)})),t(" undoCoordinateSystem",(function(){p.undo(e)})),t(" translateGraph",(function(){!function(e){var t=Number.POSITIVE_INFINITY,n=0,o=Number.POSITIVE_INFINITY,a=0,i=e.graph(),s=i.marginx||0,l=i.marginy||0;function c(e){var r=e.x,i=e.y,s=e.width,l=e.height;t=Math.min(t,r-s/2),n=Math.max(n,r+s/2),o=Math.min(o,i-l/2),a=Math.max(a,i+l/2)}r.forEach(e.nodes(),(function(t){c(e.node(t))})),r.forEach(e.edges(),(function(t){var n=e.edge(t);r.has(n,"x")&&c(n)})),t-=s,o-=l,r.forEach(e.nodes(),(function(n){var r=e.node(n);r.x-=t,r.y-=o})),r.forEach(e.edges(),(function(n){var a=e.edge(n);r.forEach(a.points,(function(e){e.x-=t,e.y-=o})),r.has(a,"x")&&(a.x-=t),r.has(a,"y")&&(a.y-=o)})),i.width=n-t+s,i.height=a-o+l}(e)})),t(" assignNodeIntersects",(function(){!function(e){r.forEach(e.edges(),(function(t){var n,r,o=e.edge(t),a=e.node(t.v),i=e.node(t.w);o.points?(n=o.points[0],r=o.points[o.points.length-1]):(o.points=[],n=i,r=a),o.points.unshift(f.intersectRect(a,n)),o.points.push(f.intersectRect(i,r))}))}(e)})),t(" reversePoints",(function(){!function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);n.reversed&&n.points.reverse()}))}(e)})),t(" acyclic.undo",(function(){o.undo(e)}))}(t,n)})),n(" updateInputGraph",(function(){!function(e,t){r.forEach(e.nodes(),(function(n){var r=e.node(n),o=t.node(n);r&&(r.x=o.x,r.y=o.y,t.children(n).length&&(r.width=o.width,r.height=o.height))})),r.forEach(e.edges(),(function(n){var o=e.edge(n),a=t.edge(n);o.points=a.points,r.has(a,"x")&&(o.x=a.x,o.y=a.y)})),e.graph().width=t.graph().width,e.graph().height=t.graph().height}(e,t)}))}))};var m=["nodesep","edgesep","ranksep","marginx","marginy"],C={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},b=["acyclicer","ranker","rankdir","align"],v=["width","height"],y={width:0,height:0},x=["minlen","weight","width","height","labeloffset"],w={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},M=["labelpos"];function k(e,t){return r.mapValues(r.pick(e,t),Number)}function N(e){var t={};return r.forEach(e,(function(e,n){t[n.toLowerCase()]=e})),t}},2190:(e,t,n)=>{var r;try{r={cloneDeep:n(5263),constant:n(9566),defaults:n(8276),each:n(5279),filter:n(8820),find:n(2933),flatten:n(1386),forEach:n(5362),forIn:n(5692),has:n(9312),isUndefined:n(9344),last:n(7362),map:n(6938),mapValues:n(948),max:n(7810),merge:n(6652),min:n(6956),minBy:n(45),now:n(1940),pick:n(1815),range:n(3333),reduce:n(84),sortBy:n(3503),uniqueId:n(1304),values:n(5872),zipObject:n(8200)}}catch(e){}r||(r=window._),e.exports=r},3497:(e,t,n)=>{var r=n(2190),o=n(4012);function a(e,t,n,i,s,l,c){var u=e.children(c);if(u.length){var d=o.addBorderNode(e,"_bt"),p=o.addBorderNode(e,"_bb"),h=e.node(c);e.setParent(d,c),h.borderTop=d,e.setParent(p,c),h.borderBottom=p,r.forEach(u,(function(r){a(e,t,n,i,s,l,r);var o=e.node(r),u=o.borderTop?o.borderTop:r,h=o.borderBottom?o.borderBottom:r,A=o.borderTop?i:2*i,f=u!==h?1:s-l[c]+1;e.setEdge(d,u,{weight:A,minlen:f,nestingEdge:!0}),e.setEdge(h,p,{weight:A,minlen:f,nestingEdge:!0})})),e.parent(c)||e.setEdge(t,d,{weight:0,minlen:s+l[c]})}else c!==t&&e.setEdge(t,c,{weight:0,minlen:n})}e.exports={run:function(e){var t=o.addDummyNode(e,"root",{},"_root"),n=function(e){var t={};function n(o,a){var i=e.children(o);i&&i.length&&r.forEach(i,(function(e){n(e,a+1)})),t[o]=a}return r.forEach(e.children(),(function(e){n(e,1)})),t}(e),i=r.max(r.values(n))-1,s=2*i+1;e.graph().nestingRoot=t,r.forEach(e.edges(),(function(t){e.edge(t).minlen*=s}));var l=function(e){return r.reduce(e.edges(),(function(t,n){return t+e.edge(n).weight}),0)}(e)+1;r.forEach(e.children(),(function(r){a(e,t,s,l,i,n,r)})),e.graph().nodeRankFactor=s},cleanup:function(e){var t=e.graph();e.removeNode(t.nestingRoot),delete t.nestingRoot,r.forEach(e.edges(),(function(t){e.edge(t).nestingEdge&&e.removeEdge(t)}))}}},3305:(e,t,n)=>{"use strict";var r=n(2190),o=n(4012);e.exports={run:function(e){e.graph().dummyChains=[],r.forEach(e.edges(),(function(t){!function(e,t){var n,r,a,i=t.v,s=e.node(i).rank,l=t.w,c=e.node(l).rank,u=t.name,d=e.edge(t),p=d.labelRank;if(c!==s+1){for(e.removeEdge(t),a=0,++s;s<c;++a,++s)d.points=[],r={width:0,height:0,edgeLabel:d,edgeObj:t,rank:s},n=o.addDummyNode(e,"edge",r,"_d"),s===p&&(r.width=d.width,r.height=d.height,r.dummy="edge-label",r.labelpos=d.labelpos),e.setEdge(i,n,{weight:d.weight},u),0===a&&e.graph().dummyChains.push(n),i=n;e.setEdge(i,l,{weight:d.weight},u)}}(e,t)}))},undo:function(e){r.forEach(e.graph().dummyChains,(function(t){var n,r=e.node(t),o=r.edgeLabel;for(e.setEdge(r.edgeObj,o);r.dummy;)n=e.successors(t)[0],e.removeNode(t),o.points.push({x:r.x,y:r.y}),"edge-label"===r.dummy&&(o.x=r.x,o.y=r.y,o.width=r.width,o.height=r.height),t=n,r=e.node(t)}))}}},1400:(e,t,n)=>{var r=n(2190);e.exports=function(e,t,n){var o,a={};r.forEach(n,(function(n){for(var r,i,s=e.parent(n);s;){if((r=e.parent(s))?(i=a[r],a[r]=s):(i=o,o=s),i&&i!==s)return void t.setEdge(i,s);s=r}}))}},2444:(e,t,n)=>{var r=n(2190);e.exports=function(e,t){return r.map(t,(function(t){var n=e.inEdges(t);if(n.length){var o=r.reduce(n,(function(t,n){var r=e.edge(n),o=e.node(n.v);return{sum:t.sum+r.weight*o.order,weight:t.weight+r.weight}}),{sum:0,weight:0});return{v:t,barycenter:o.sum/o.weight,weight:o.weight}}return{v:t}}))}},1932:(e,t,n)=>{var r=n(2190),o=n(503).Graph;e.exports=function(e,t,n){var a=function(e){for(var t;e.hasNode(t=r.uniqueId("_root")););return t}(e),i=new o({compound:!0}).setGraph({root:a}).setDefaultNodeLabel((function(t){return e.node(t)}));return r.forEach(e.nodes(),(function(o){var s=e.node(o),l=e.parent(o);(s.rank===t||s.minRank<=t&&t<=s.maxRank)&&(i.setNode(o),i.setParent(o,l||a),r.forEach(e[n](o),(function(t){var n=t.v===o?t.w:t.v,a=i.edge(n,o),s=r.isUndefined(a)?0:a.weight;i.setEdge(n,o,{weight:e.edge(t).weight+s})})),r.has(s,"minRank")&&i.setNode(o,{borderLeft:s.borderLeft[t],borderRight:s.borderRight[t]}))})),i}},2151:(e,t,n)=>{"use strict";var r=n(2190);function o(e,t,n){for(var o=r.zipObject(n,r.map(n,(function(e,t){return t}))),a=r.flatten(r.map(t,(function(t){return r.sortBy(r.map(e.outEdges(t),(function(t){return{pos:o[t.w],weight:e.edge(t).weight}})),"pos")})),!0),i=1;i<n.length;)i<<=1;var s=2*i-1;i-=1;var l=r.map(new Array(s),(function(){return 0})),c=0;return r.forEach(a.forEach((function(e){var t=e.pos+i;l[t]+=e.weight;for(var n=0;t>0;)t%2&&(n+=l[t+1]),l[t=t-1>>1]+=e.weight;c+=e.weight*n}))),c}e.exports=function(e,t){for(var n=0,r=1;r<t.length;++r)n+=o(e,t[r-1],t[r]);return n}},8037:(e,t,n)=>{"use strict";var r=n(2190),o=n(5230),a=n(2151),i=n(8352),s=n(1932),l=n(1400),c=n(503).Graph,u=n(4012);function d(e,t,n){return r.map(t,(function(t){return s(e,t,n)}))}function p(e,t){var n=new c;r.forEach(e,(function(e){var o=e.graph().root,a=i(e,o,n,t);r.forEach(a.vs,(function(t,n){e.node(t).order=n})),l(e,n,a.vs)}))}function h(e,t){r.forEach(t,(function(t){r.forEach(t,(function(t,n){e.node(t).order=n}))}))}e.exports=function(e){var t=u.maxRank(e),n=d(e,r.range(1,t+1),"inEdges"),i=d(e,r.range(t-1,-1,-1),"outEdges"),s=o(e);h(e,s);for(var l,c=Number.POSITIVE_INFINITY,A=0,f=0;f<4;++A,++f){p(A%2?n:i,A%4>=2),s=u.buildLayerMatrix(e);var g=a(e,s);g<c&&(f=0,l=r.cloneDeep(s),c=g)}h(e,l)}},5230:(e,t,n)=>{"use strict";var r=n(2190);e.exports=function(e){var t={},n=r.filter(e.nodes(),(function(t){return!e.children(t).length})),o=r.max(r.map(n,(function(t){return e.node(t).rank}))),a=r.map(r.range(o+1),(function(){return[]})),i=r.sortBy(n,(function(t){return e.node(t).rank}));return r.forEach(i,(function n(o){if(!r.has(t,o)){t[o]=!0;var i=e.node(o);a[i.rank].push(o),r.forEach(e.successors(o),n)}})),a}},9543:(e,t,n)=>{"use strict";var r=n(2190);e.exports=function(e,t){var n={};return r.forEach(e,(function(e,t){var o=n[e.v]={indegree:0,in:[],out:[],vs:[e.v],i:t};r.isUndefined(e.barycenter)||(o.barycenter=e.barycenter,o.weight=e.weight)})),r.forEach(t.edges(),(function(e){var t=n[e.v],o=n[e.w];r.isUndefined(t)||r.isUndefined(o)||(o.indegree++,t.out.push(n[e.w]))})),function(e){var t=[];function n(e){return function(t){var n,o,a,i;t.merged||(r.isUndefined(t.barycenter)||r.isUndefined(e.barycenter)||t.barycenter>=e.barycenter)&&(o=t,a=0,i=0,(n=e).weight&&(a+=n.barycenter*n.weight,i+=n.weight),o.weight&&(a+=o.barycenter*o.weight,i+=o.weight),n.vs=o.vs.concat(n.vs),n.barycenter=a/i,n.weight=i,n.i=Math.min(o.i,n.i),o.merged=!0)}}function o(t){return function(n){n.in.push(t),0==--n.indegree&&e.push(n)}}for(;e.length;){var a=e.pop();t.push(a),r.forEach(a.in.reverse(),n(a)),r.forEach(a.out,o(a))}return r.map(r.filter(t,(function(e){return!e.merged})),(function(e){return r.pick(e,["vs","i","barycenter","weight"])}))}(r.filter(n,(function(e){return!e.indegree})))}},8352:(e,t,n)=>{var r=n(2190),o=n(2444),a=n(9543),i=n(2793);e.exports=function e(t,n,s,l){var c=t.children(n),u=t.node(n),d=u?u.borderLeft:void 0,p=u?u.borderRight:void 0,h={};d&&(c=r.filter(c,(function(e){return e!==d&&e!==p})));var A=o(t,c);r.forEach(A,(function(n){if(t.children(n.v).length){var o=e(t,n.v,s,l);h[n.v]=o,r.has(o,"barycenter")&&(a=n,i=o,r.isUndefined(a.barycenter)?(a.barycenter=i.barycenter,a.weight=i.weight):(a.barycenter=(a.barycenter*a.weight+i.barycenter*i.weight)/(a.weight+i.weight),a.weight+=i.weight))}var a,i}));var f=a(A,s);!function(e,t){r.forEach(e,(function(e){e.vs=r.flatten(e.vs.map((function(e){return t[e]?t[e].vs:e})),!0)}))}(f,h);var g=i(f,l);if(d&&(g.vs=r.flatten([d,g.vs,p],!0),t.predecessors(d).length)){var m=t.node(t.predecessors(d)[0]),C=t.node(t.predecessors(p)[0]);r.has(g,"barycenter")||(g.barycenter=0,g.weight=0),g.barycenter=(g.barycenter*g.weight+m.order+C.order)/(g.weight+2),g.weight+=2}return g}},2793:(e,t,n)=>{var r=n(2190),o=n(4012);function a(e,t,n){for(var o;t.length&&(o=r.last(t)).i<=n;)t.pop(),e.push(o.vs),n++;return n}e.exports=function(e,t){var n,i=o.partition(e,(function(e){return r.has(e,"barycenter")})),s=i.lhs,l=r.sortBy(i.rhs,(function(e){return-e.i})),c=[],u=0,d=0,p=0;s.sort((n=!!t,function(e,t){return e.barycenter<t.barycenter?-1:e.barycenter>t.barycenter?1:n?t.i-e.i:e.i-t.i})),p=a(c,l,p),r.forEach(s,(function(e){p+=e.vs.length,c.push(e.vs),u+=e.barycenter*e.weight,d+=e.weight,p=a(c,l,p)}));var h={vs:r.flatten(c,!0)};return d&&(h.barycenter=u/d,h.weight=d),h}},2396:(e,t,n)=>{var r=n(2190);e.exports=function(e){var t=function(e){var t={},n=0;return r.forEach(e.children(),(function o(a){var i=n;r.forEach(e.children(a),o),t[a]={low:i,lim:n++}})),t}(e);r.forEach(e.graph().dummyChains,(function(n){for(var r=e.node(n),o=r.edgeObj,a=function(e,t,n,r){var o,a,i=[],s=[],l=Math.min(t[n].low,t[r].low),c=Math.max(t[n].lim,t[r].lim);o=n;do{o=e.parent(o),i.push(o)}while(o&&(t[o].low>l||c>t[o].lim));for(a=o,o=r;(o=e.parent(o))!==a;)s.push(o);return{path:i.concat(s.reverse()),lca:a}}(e,t,o.v,o.w),i=a.path,s=a.lca,l=0,c=i[l],u=!0;n!==o.w;){if(r=e.node(n),u){for(;(c=i[l])!==s&&e.node(c).maxRank<r.rank;)l++;c===s&&(u=!1)}if(!u){for(;l<i.length-1&&e.node(c=i[l+1]).minRank<=r.rank;)l++;c=i[l]}e.setParent(n,c),n=e.successors(n)[0]}}))}},3509:(e,t,n)=>{"use strict";var r=n(2190),o=n(503).Graph,a=n(4012);function i(e,t){var n={};return r.reduce(t,(function(t,o){var a=0,i=0,s=t.length,c=r.last(o);return r.forEach(o,(function(t,u){var d=function(e,t){if(e.node(t).dummy)return r.find(e.predecessors(t),(function(t){return e.node(t).dummy}))}(e,t),p=d?e.node(d).order:s;(d||t===c)&&(r.forEach(o.slice(i,u+1),(function(t){r.forEach(e.predecessors(t),(function(r){var o=e.node(r),i=o.order;!(i<a||p<i)||o.dummy&&e.node(t).dummy||l(n,r,t)}))})),i=u+1,a=p)})),o})),n}function s(e,t){var n={};function o(t,o,a,i,s){var c;r.forEach(r.range(o,a),(function(o){c=t[o],e.node(c).dummy&&r.forEach(e.predecessors(c),(function(t){var r=e.node(t);r.dummy&&(r.order<i||r.order>s)&&l(n,t,c)}))}))}return r.reduce(t,(function(t,n){var a,i=-1,s=0;return r.forEach(n,(function(r,l){if("border"===e.node(r).dummy){var c=e.predecessors(r);c.length&&(a=e.node(c[0]).order,o(n,s,l,i,a),s=l,i=a)}o(n,s,n.length,a,t.length)})),n})),n}function l(e,t,n){if(t>n){var r=t;t=n,n=r}var o=e[t];o||(e[t]=o={}),o[n]=!0}function c(e,t,n){if(t>n){var o=t;t=n,n=o}return r.has(e[t],n)}function u(e,t,n,o){var a={},i={},s={};return r.forEach(t,(function(e){r.forEach(e,(function(e,t){a[e]=e,i[e]=e,s[e]=t}))})),r.forEach(t,(function(e){var t=-1;r.forEach(e,(function(e){var l=o(e);if(l.length){l=r.sortBy(l,(function(e){return s[e]}));for(var u=(l.length-1)/2,d=Math.floor(u),p=Math.ceil(u);d<=p;++d){var h=l[d];i[e]===e&&t<s[h]&&!c(n,e,h)&&(i[h]=e,i[e]=a[e]=a[h],t=s[h])}}}))})),{root:a,align:i}}function d(e,t,n,a,i){var s={},l=function(e,t,n,a){var i=new o,s=e.graph(),l=function(e,t,n){return function(o,a,i){var s,l=o.node(a),c=o.node(i),u=0;if(u+=l.width/2,r.has(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":s=-l.width/2;break;case"r":s=l.width/2}if(s&&(u+=n?s:-s),s=0,u+=(l.dummy?t:e)/2,u+=(c.dummy?t:e)/2,u+=c.width/2,r.has(c,"labelpos"))switch(c.labelpos.toLowerCase()){case"l":s=c.width/2;break;case"r":s=-c.width/2}return s&&(u+=n?s:-s),s=0,u}}(s.nodesep,s.edgesep,a);return r.forEach(t,(function(t){var o;r.forEach(t,(function(t){var r=n[t];if(i.setNode(r),o){var a=n[o],s=i.edge(a,r);i.setEdge(a,r,Math.max(l(e,t,o),s||0))}o=t}))})),i}(e,t,n,i),c=i?"borderLeft":"borderRight";function u(e,t){for(var n=l.nodes(),r=n.pop(),o={};r;)o[r]?e(r):(o[r]=!0,n.push(r),n=n.concat(t(r))),r=n.pop()}return u((function(e){s[e]=l.inEdges(e).reduce((function(e,t){return Math.max(e,s[t.v]+l.edge(t))}),0)}),l.predecessors.bind(l)),u((function(t){var n=l.outEdges(t).reduce((function(e,t){return Math.min(e,s[t.w]-l.edge(t))}),Number.POSITIVE_INFINITY),r=e.node(t);n!==Number.POSITIVE_INFINITY&&r.borderType!==c&&(s[t]=Math.max(s[t],n))}),l.successors.bind(l)),r.forEach(a,(function(e){s[e]=s[n[e]]})),s}function p(e,t){return r.minBy(r.values(t),(function(t){var n=Number.NEGATIVE_INFINITY,o=Number.POSITIVE_INFINITY;return r.forIn(t,(function(t,r){var a=function(e,t){return e.node(t).width}(e,r)/2;n=Math.max(t+a,n),o=Math.min(t-a,o)})),n-o}))}function h(e,t){var n=r.values(t),o=r.min(n),a=r.max(n);r.forEach(["u","d"],(function(n){r.forEach(["l","r"],(function(i){var s,l=n+i,c=e[l];if(c!==t){var u=r.values(c);(s="l"===i?o-r.min(u):a-r.max(u))&&(e[l]=r.mapValues(c,(function(e){return e+s})))}}))}))}function A(e,t){return r.mapValues(e.ul,(function(n,o){if(t)return e[t.toLowerCase()][o];var a=r.sortBy(r.map(e,o));return(a[1]+a[2])/2}))}e.exports={positionX:function(e){var t,n=a.buildLayerMatrix(e),o=r.merge(i(e,n),s(e,n)),l={};r.forEach(["u","d"],(function(a){t="u"===a?n:r.values(n).reverse(),r.forEach(["l","r"],(function(n){"r"===n&&(t=r.map(t,(function(e){return r.values(e).reverse()})));var i=("u"===a?e.predecessors:e.successors).bind(e),s=u(0,t,o,i),c=d(e,t,s.root,s.align,"r"===n);"r"===n&&(c=r.mapValues(c,(function(e){return-e}))),l[a+n]=c}))}));var c=p(e,l);return h(l,c),A(l,e.graph().align)},findType1Conflicts:i,findType2Conflicts:s,addConflict:l,hasConflict:c,verticalAlignment:u,horizontalCompaction:d,alignCoordinates:h,findSmallestWidthAlignment:p,balance:A}},1672:(e,t,n)=>{"use strict";var r=n(2190),o=n(4012),a=n(3509).positionX;e.exports=function(e){(function(e){var t=o.buildLayerMatrix(e),n=e.graph().ranksep,a=0;r.forEach(t,(function(t){var o=r.max(r.map(t,(function(t){return e.node(t).height})));r.forEach(t,(function(t){e.node(t).y=a+o/2})),a+=o+n}))})(e=o.asNonCompoundGraph(e)),r.forEach(a(e),(function(t,n){e.node(n).x=t}))}},4393:(e,t,n)=>{"use strict";var r=n(2190),o=n(503).Graph,a=n(7521).slack;function i(e,t){return r.forEach(e.nodes(),(function n(o){r.forEach(t.nodeEdges(o),(function(r){var i=r.v,s=o===i?r.w:i;e.hasNode(s)||a(t,r)||(e.setNode(s,{}),e.setEdge(o,s,{}),n(s))}))})),e.nodeCount()}function s(e,t){return r.minBy(t.edges(),(function(n){if(e.hasNode(n.v)!==e.hasNode(n.w))return a(t,n)}))}function l(e,t,n){r.forEach(e.nodes(),(function(e){t.node(e).rank+=n}))}e.exports=function(e){var t,n,r=new o({directed:!1}),c=e.nodes()[0],u=e.nodeCount();for(r.setNode(c,{});i(r,e)<u;)t=s(r,e),n=r.hasNode(t.v)?a(e,t):-a(e,t),l(r,e,n);return r}},985:(e,t,n)=>{"use strict";var r=n(7521).longestPath,o=n(4393),a=n(1620);e.exports=function(e){switch(e.graph().ranker){case"network-simplex":default:!function(e){a(e)}(e);break;case"tight-tree":!function(e){r(e),o(e)}(e);break;case"longest-path":i(e)}};var i=r},1620:(e,t,n)=>{"use strict";var r=n(2190),o=n(4393),a=n(7521).slack,i=n(7521).longestPath,s=n(503).alg.preorder,l=n(503).alg.postorder,c=n(4012).simplify;function u(e){e=c(e),i(e);var t,n=o(e);for(h(n),d(n,e);t=f(n);)m(n,e,t,g(n,e,t))}function d(e,t){var n=l(e,e.nodes());n=n.slice(0,n.length-1),r.forEach(n,(function(n){!function(e,t,n){var r=e.node(n).parent;e.edge(n,r).cutvalue=p(e,t,n)}(e,t,n)}))}function p(e,t,n){var o=e.node(n).parent,a=!0,i=t.edge(n,o),s=0;return i||(a=!1,i=t.edge(o,n)),s=i.weight,r.forEach(t.nodeEdges(n),(function(r){var i,l,c=r.v===n,u=c?r.w:r.v;if(u!==o){var d=c===a,p=t.edge(r).weight;if(s+=d?p:-p,i=n,l=u,e.hasEdge(i,l)){var h=e.edge(n,u).cutvalue;s+=d?-h:h}}})),s}function h(e,t){arguments.length<2&&(t=e.nodes()[0]),A(e,{},1,t)}function A(e,t,n,o,a){var i=n,s=e.node(o);return t[o]=!0,r.forEach(e.neighbors(o),(function(a){r.has(t,a)||(n=A(e,t,n,a,o))})),s.low=i,s.lim=n++,a?s.parent=a:delete s.parent,n}function f(e){return r.find(e.edges(),(function(t){return e.edge(t).cutvalue<0}))}function g(e,t,n){var o=n.v,i=n.w;t.hasEdge(o,i)||(o=n.w,i=n.v);var s=e.node(o),l=e.node(i),c=s,u=!1;s.lim>l.lim&&(c=l,u=!0);var d=r.filter(t.edges(),(function(t){return u===C(0,e.node(t.v),c)&&u!==C(0,e.node(t.w),c)}));return r.minBy(d,(function(e){return a(t,e)}))}function m(e,t,n,o){var a=n.v,i=n.w;e.removeEdge(a,i),e.setEdge(o.v,o.w,{}),h(e),d(e,t),function(e,t){var n=r.find(e.nodes(),(function(e){return!t.node(e).parent})),o=s(e,n);o=o.slice(1),r.forEach(o,(function(n){var r=e.node(n).parent,o=t.edge(n,r),a=!1;o||(o=t.edge(r,n),a=!0),t.node(n).rank=t.node(r).rank+(a?o.minlen:-o.minlen)}))}(e,t)}function C(e,t,n){return n.low<=t.lim&&t.lim<=n.lim}e.exports=u,u.initLowLimValues=h,u.initCutValues=d,u.calcCutValue=p,u.leaveEdge=f,u.enterEdge=g,u.exchangeEdges=m},7521:(e,t,n)=>{"use strict";var r=n(2190);e.exports={longestPath:function(e){var t={};r.forEach(e.sources(),(function n(o){var a=e.node(o);if(r.has(t,o))return a.rank;t[o]=!0;var i=r.min(r.map(e.outEdges(o),(function(t){return n(t.w)-e.edge(t).minlen})));return i!==Number.POSITIVE_INFINITY&&null!=i||(i=0),a.rank=i}))},slack:function(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}}},4012:(e,t,n)=>{"use strict";var r=n(2190),o=n(503).Graph;function a(e,t,n,o){var a;do{a=r.uniqueId(o)}while(e.hasNode(a));return n.dummy=t,e.setNode(a,n),a}function i(e){return r.max(r.map(e.nodes(),(function(t){var n=e.node(t).rank;if(!r.isUndefined(n))return n})))}e.exports={addDummyNode:a,simplify:function(e){var t=(new o).setGraph(e.graph());return r.forEach(e.nodes(),(function(n){t.setNode(n,e.node(n))})),r.forEach(e.edges(),(function(n){var r=t.edge(n.v,n.w)||{weight:0,minlen:1},o=e.edge(n);t.setEdge(n.v,n.w,{weight:r.weight+o.weight,minlen:Math.max(r.minlen,o.minlen)})})),t},asNonCompoundGraph:function(e){var t=new o({multigraph:e.isMultigraph()}).setGraph(e.graph());return r.forEach(e.nodes(),(function(n){e.children(n).length||t.setNode(n,e.node(n))})),r.forEach(e.edges(),(function(n){t.setEdge(n,e.edge(n))})),t},successorWeights:function(e){var t=r.map(e.nodes(),(function(t){var n={};return r.forEach(e.outEdges(t),(function(t){n[t.w]=(n[t.w]||0)+e.edge(t).weight})),n}));return r.zipObject(e.nodes(),t)},predecessorWeights:function(e){var t=r.map(e.nodes(),(function(t){var n={};return r.forEach(e.inEdges(t),(function(t){n[t.v]=(n[t.v]||0)+e.edge(t).weight})),n}));return r.zipObject(e.nodes(),t)},intersectRect:function(e,t){var n,r,o=e.x,a=e.y,i=t.x-o,s=t.y-a,l=e.width/2,c=e.height/2;if(!i&&!s)throw new Error("Not possible to find intersection inside of the rectangle");return Math.abs(s)*l>Math.abs(i)*c?(s<0&&(c=-c),n=c*i/s,r=c):(i<0&&(l=-l),n=l,r=l*s/i),{x:o+n,y:a+r}},buildLayerMatrix:function(e){var t=r.map(r.range(i(e)+1),(function(){return[]}));return r.forEach(e.nodes(),(function(n){var o=e.node(n),a=o.rank;r.isUndefined(a)||(t[a][o.order]=n)})),t},normalizeRanks:function(e){var t=r.min(r.map(e.nodes(),(function(t){return e.node(t).rank})));r.forEach(e.nodes(),(function(n){var o=e.node(n);r.has(o,"rank")&&(o.rank-=t)}))},removeEmptyRanks:function(e){var t=r.min(r.map(e.nodes(),(function(t){return e.node(t).rank}))),n=[];r.forEach(e.nodes(),(function(r){var o=e.node(r).rank-t;n[o]||(n[o]=[]),n[o].push(r)}));var o=0,a=e.graph().nodeRankFactor;r.forEach(n,(function(t,n){r.isUndefined(t)&&n%a!=0?--o:o&&r.forEach(t,(function(t){e.node(t).rank+=o}))}))},addBorderNode:function(e,t,n,r){var o={width:0,height:0};return arguments.length>=4&&(o.rank=n,o.order=r),a(e,"border",o,t)},maxRank:i,partition:function(e,t){var n={lhs:[],rhs:[]};return r.forEach(e,(function(e){t(e)?n.lhs.push(e):n.rhs.push(e)})),n},time:function(e,t){var n=r.now();try{return t()}finally{console.log(e+" time: "+(r.now()-n)+"ms")}},notime:function(e,t){return t()}}},6950:e=>{e.exports="0.8.5"},7730:(e,t,n)=>{var r=n(9990);e.exports={Graph:r.Graph,json:n(2846),alg:n(2731),version:r.version}},5947:(e,t,n)=>{var r=n(413);e.exports=function(e){var t,n={},o=[];function a(o){r.has(n,o)||(n[o]=!0,t.push(o),r.each(e.successors(o),a),r.each(e.predecessors(o),a))}return r.each(e.nodes(),(function(e){t=[],a(e),t.length&&o.push(t)})),o}},5892:(e,t,n)=>{var r=n(413);function o(e,t,n,a,i,s){r.has(a,t)||(a[t]=!0,n||s.push(t),r.each(i(t),(function(t){o(e,t,n,a,i,s)})),n&&s.push(t))}e.exports=function(e,t,n){r.isArray(t)||(t=[t]);var a=(e.isDirected()?e.successors:e.neighbors).bind(e),i=[],s={};return r.each(t,(function(t){if(!e.hasNode(t))throw new Error("Graph does not have node: "+t);o(e,t,"post"===n,s,a,i)})),i}},5247:(e,t,n)=>{var r=n(5313),o=n(413);e.exports=function(e,t,n){return o.transform(e.nodes(),(function(o,a){o[a]=r(e,a,t,n)}),{})}},5313:(e,t,n)=>{var r=n(413),o=n(5409);e.exports=function(e,t,n,r){return function(e,t,n,r){var a,i,s={},l=new o,c=function(e){var t=e.v!==a?e.v:e.w,r=s[t],o=n(e),c=i.distance+o;if(o<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+e+" Weight: "+o);c<r.distance&&(r.distance=c,r.predecessor=a,l.decrease(t,c))};for(e.nodes().forEach((function(e){var n=e===t?0:Number.POSITIVE_INFINITY;s[e]={distance:n},l.add(e,n)}));l.size()>0&&(a=l.removeMin(),(i=s[a]).distance!==Number.POSITIVE_INFINITY);)r(a).forEach(c);return s}(e,String(t),n||a,r||function(t){return e.outEdges(t)})};var a=r.constant(1)},5374:(e,t,n)=>{var r=n(413),o=n(3131);e.exports=function(e){return r.filter(o(e),(function(t){return t.length>1||1===t.length&&e.hasEdge(t[0],t[0])}))}},9486:(e,t,n)=>{var r=n(413);e.exports=function(e,t,n){return function(e,t,n){var r={},o=e.nodes();return o.forEach((function(e){r[e]={},r[e][e]={distance:0},o.forEach((function(t){e!==t&&(r[e][t]={distance:Number.POSITIVE_INFINITY})})),n(e).forEach((function(n){var o=n.v===e?n.w:n.v,a=t(n);r[e][o]={distance:a,predecessor:e}}))})),o.forEach((function(e){var t=r[e];o.forEach((function(n){var a=r[n];o.forEach((function(n){var r=a[e],o=t[n],i=a[n],s=r.distance+o.distance;s<i.distance&&(i.distance=s,i.predecessor=o.predecessor)}))}))})),r}(e,t||o,n||function(t){return e.outEdges(t)})};var o=r.constant(1)},2731:(e,t,n)=>{e.exports={components:n(5947),dijkstra:n(5313),dijkstraAll:n(5247),findCycles:n(5374),floydWarshall:n(9486),isAcyclic:n(1066),postorder:n(2941),preorder:n(7656),prim:n(8127),tarjan:n(3131),topsort:n(1112)}},1066:(e,t,n)=>{var r=n(1112);e.exports=function(e){try{r(e)}catch(e){if(e instanceof r.CycleException)return!1;throw e}return!0}},2941:(e,t,n)=>{var r=n(5892);e.exports=function(e,t){return r(e,t,"post")}},7656:(e,t,n)=>{var r=n(5892);e.exports=function(e,t){return r(e,t,"pre")}},8127:(e,t,n)=>{var r=n(413),o=n(4302),a=n(5409);e.exports=function(e,t){var n,i=new o,s={},l=new a;function c(e){var r=e.v===n?e.w:e.v,o=l.priority(r);if(void 0!==o){var a=t(e);a<o&&(s[r]=n,l.decrease(r,a))}}if(0===e.nodeCount())return i;r.each(e.nodes(),(function(e){l.add(e,Number.POSITIVE_INFINITY),i.setNode(e)})),l.decrease(e.nodes()[0],0);for(var u=!1;l.size()>0;){if(n=l.removeMin(),r.has(s,n))i.setEdge(n,s[n]);else{if(u)throw new Error("Input graph is not connected: "+e);u=!0}e.nodeEdges(n).forEach(c)}return i}},3131:(e,t,n)=>{var r=n(413);e.exports=function(e){var t=0,n=[],o={},a=[];function i(s){var l=o[s]={onStack:!0,lowlink:t,index:t++};if(n.push(s),e.successors(s).forEach((function(e){r.has(o,e)?o[e].onStack&&(l.lowlink=Math.min(l.lowlink,o[e].index)):(i(e),l.lowlink=Math.min(l.lowlink,o[e].lowlink))})),l.lowlink===l.index){var c,u=[];do{c=n.pop(),o[c].onStack=!1,u.push(c)}while(s!==c);a.push(u)}}return e.nodes().forEach((function(e){r.has(o,e)||i(e)})),a}},1112:(e,t,n)=>{var r=n(413);function o(e){var t={},n={},o=[];if(r.each(e.sinks(),(function i(s){if(r.has(n,s))throw new a;r.has(t,s)||(n[s]=!0,t[s]=!0,r.each(e.predecessors(s),i),delete n[s],o.push(s))})),r.size(t)!==e.nodeCount())throw new a;return o}function a(){}e.exports=o,o.CycleException=a,a.prototype=new Error},5409:(e,t,n)=>{var r=n(413);function o(){this._arr=[],this._keyIndices={}}e.exports=o,o.prototype.size=function(){return this._arr.length},o.prototype.keys=function(){return this._arr.map((function(e){return e.key}))},o.prototype.has=function(e){return r.has(this._keyIndices,e)},o.prototype.priority=function(e){var t=this._keyIndices[e];if(void 0!==t)return this._arr[t].priority},o.prototype.min=function(){if(0===this.size())throw new Error("Queue underflow");return this._arr[0].key},o.prototype.add=function(e,t){var n=this._keyIndices;if(e=String(e),!r.has(n,e)){var o=this._arr,a=o.length;return n[e]=a,o.push({key:e,priority:t}),this._decrease(a),!0}return!1},o.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var e=this._arr.pop();return delete this._keyIndices[e.key],this._heapify(0),e.key},o.prototype.decrease=function(e,t){var n=this._keyIndices[e];if(t>this._arr[n].priority)throw new Error("New priority is greater than current priority. Key: "+e+" Old: "+this._arr[n].priority+" New: "+t);this._arr[n].priority=t,this._decrease(n)},o.prototype._heapify=function(e){var t=this._arr,n=2*e,r=n+1,o=e;n<t.length&&(o=t[n].priority<t[o].priority?n:o,r<t.length&&(o=t[r].priority<t[o].priority?r:o),o!==e&&(this._swap(e,o),this._heapify(o)))},o.prototype._decrease=function(e){for(var t,n=this._arr,r=n[e].priority;0!==e&&!(n[t=e>>1].priority<r);)this._swap(e,t),e=t},o.prototype._swap=function(e,t){var n=this._arr,r=this._keyIndices,o=n[e],a=n[t];n[e]=a,n[t]=o,r[a.key]=e,r[o.key]=t}},4302:(e,t,n)=>{"use strict";var r=n(413);e.exports=a;var o="\0";function a(e){this._isDirected=!r.has(e,"directed")||e.directed,this._isMultigraph=!!r.has(e,"multigraph")&&e.multigraph,this._isCompound=!!r.has(e,"compound")&&e.compound,this._label=void 0,this._defaultNodeLabelFn=r.constant(void 0),this._defaultEdgeLabelFn=r.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[o]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}function i(e,t){e[t]?e[t]++:e[t]=1}function s(e,t){--e[t]||delete e[t]}function l(e,t,n,o){var a=""+t,i=""+n;if(!e&&a>i){var s=a;a=i,i=s}return a+""+i+""+(r.isUndefined(o)?"\0":o)}function c(e,t){return l(e,t.v,t.w,t.name)}a.prototype._nodeCount=0,a.prototype._edgeCount=0,a.prototype.isDirected=function(){return this._isDirected},a.prototype.isMultigraph=function(){return this._isMultigraph},a.prototype.isCompound=function(){return this._isCompound},a.prototype.setGraph=function(e){return this._label=e,this},a.prototype.graph=function(){return this._label},a.prototype.setDefaultNodeLabel=function(e){return r.isFunction(e)||(e=r.constant(e)),this._defaultNodeLabelFn=e,this},a.prototype.nodeCount=function(){return this._nodeCount},a.prototype.nodes=function(){return r.keys(this._nodes)},a.prototype.sources=function(){var e=this;return r.filter(this.nodes(),(function(t){return r.isEmpty(e._in[t])}))},a.prototype.sinks=function(){var e=this;return r.filter(this.nodes(),(function(t){return r.isEmpty(e._out[t])}))},a.prototype.setNodes=function(e,t){var n=arguments,o=this;return r.each(e,(function(e){n.length>1?o.setNode(e,t):o.setNode(e)})),this},a.prototype.setNode=function(e,t){return r.has(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=o,this._children[e]={},this._children[o][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)},a.prototype.node=function(e){return this._nodes[e]},a.prototype.hasNode=function(e){return r.has(this._nodes,e)},a.prototype.removeNode=function(e){var t=this;if(r.has(this._nodes,e)){var n=function(e){t.removeEdge(t._edgeObjs[e])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],r.each(this.children(e),(function(e){t.setParent(e)})),delete this._children[e]),r.each(r.keys(this._in[e]),n),delete this._in[e],delete this._preds[e],r.each(r.keys(this._out[e]),n),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this},a.prototype.setParent=function(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(r.isUndefined(t))t=o;else{for(var n=t+="";!r.isUndefined(n);n=this.parent(n))if(n===e)throw new Error("Setting "+t+" as parent of "+e+" would create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this},a.prototype._removeFromParentsChildList=function(e){delete this._children[this._parent[e]][e]},a.prototype.parent=function(e){if(this._isCompound){var t=this._parent[e];if(t!==o)return t}},a.prototype.children=function(e){if(r.isUndefined(e)&&(e=o),this._isCompound){var t=this._children[e];if(t)return r.keys(t)}else{if(e===o)return this.nodes();if(this.hasNode(e))return[]}},a.prototype.predecessors=function(e){var t=this._preds[e];if(t)return r.keys(t)},a.prototype.successors=function(e){var t=this._sucs[e];if(t)return r.keys(t)},a.prototype.neighbors=function(e){var t=this.predecessors(e);if(t)return r.union(t,this.successors(e))},a.prototype.isLeaf=function(e){return 0===(this.isDirected()?this.successors(e):this.neighbors(e)).length},a.prototype.filterNodes=function(e){var t=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});t.setGraph(this.graph());var n=this;r.each(this._nodes,(function(n,r){e(r)&&t.setNode(r,n)})),r.each(this._edgeObjs,(function(e){t.hasNode(e.v)&&t.hasNode(e.w)&&t.setEdge(e,n.edge(e))}));var o={};function a(e){var r=n.parent(e);return void 0===r||t.hasNode(r)?(o[e]=r,r):r in o?o[r]:a(r)}return this._isCompound&&r.each(t.nodes(),(function(e){t.setParent(e,a(e))})),t},a.prototype.setDefaultEdgeLabel=function(e){return r.isFunction(e)||(e=r.constant(e)),this._defaultEdgeLabelFn=e,this},a.prototype.edgeCount=function(){return this._edgeCount},a.prototype.edges=function(){return r.values(this._edgeObjs)},a.prototype.setPath=function(e,t){var n=this,o=arguments;return r.reduce(e,(function(e,r){return o.length>1?n.setEdge(e,r,t):n.setEdge(e,r),r})),this},a.prototype.setEdge=function(){var e,t,n,o,a=!1,s=arguments[0];"object"==typeof s&&null!==s&&"v"in s?(e=s.v,t=s.w,n=s.name,2===arguments.length&&(o=arguments[1],a=!0)):(e=s,t=arguments[1],n=arguments[3],arguments.length>2&&(o=arguments[2],a=!0)),e=""+e,t=""+t,r.isUndefined(n)||(n=""+n);var c=l(this._isDirected,e,t,n);if(r.has(this._edgeLabels,c))return a&&(this._edgeLabels[c]=o),this;if(!r.isUndefined(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(t),this._edgeLabels[c]=a?o:this._defaultEdgeLabelFn(e,t,n);var u=function(e,t,n,r){var o=""+t,a=""+n;if(!e&&o>a){var i=o;o=a,a=i}var s={v:o,w:a};return r&&(s.name=r),s}(this._isDirected,e,t,n);return e=u.v,t=u.w,Object.freeze(u),this._edgeObjs[c]=u,i(this._preds[t],e),i(this._sucs[e],t),this._in[t][c]=u,this._out[e][c]=u,this._edgeCount++,this},a.prototype.edge=function(e,t,n){var r=1===arguments.length?c(this._isDirected,arguments[0]):l(this._isDirected,e,t,n);return this._edgeLabels[r]},a.prototype.hasEdge=function(e,t,n){var o=1===arguments.length?c(this._isDirected,arguments[0]):l(this._isDirected,e,t,n);return r.has(this._edgeLabels,o)},a.prototype.removeEdge=function(e,t,n){var r=1===arguments.length?c(this._isDirected,arguments[0]):l(this._isDirected,e,t,n),o=this._edgeObjs[r];return o&&(e=o.v,t=o.w,delete this._edgeLabels[r],delete this._edgeObjs[r],s(this._preds[t],e),s(this._sucs[e],t),delete this._in[t][r],delete this._out[e][r],this._edgeCount--),this},a.prototype.inEdges=function(e,t){var n=this._in[e];if(n){var o=r.values(n);return t?r.filter(o,(function(e){return e.v===t})):o}},a.prototype.outEdges=function(e,t){var n=this._out[e];if(n){var o=r.values(n);return t?r.filter(o,(function(e){return e.w===t})):o}},a.prototype.nodeEdges=function(e,t){var n=this.inEdges(e,t);if(n)return n.concat(this.outEdges(e,t))}},9990:(e,t,n)=>{e.exports={Graph:n(4302),version:n(5282)}},2846:(e,t,n)=>{var r=n(413),o=n(4302);function a(e){return r.map(e.nodes(),(function(t){var n=e.node(t),o=e.parent(t),a={v:t};return r.isUndefined(n)||(a.value=n),r.isUndefined(o)||(a.parent=o),a}))}function i(e){return r.map(e.edges(),(function(t){var n=e.edge(t),o={v:t.v,w:t.w};return r.isUndefined(t.name)||(o.name=t.name),r.isUndefined(n)||(o.value=n),o}))}e.exports={write:function(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:a(e),edges:i(e)};return r.isUndefined(e.graph())||(t.value=r.clone(e.graph())),t},read:function(e){var t=new o(e.options).setGraph(e.value);return r.each(e.nodes,(function(e){t.setNode(e.v,e.value),e.parent&&t.setParent(e.v,e.parent)})),r.each(e.edges,(function(e){t.setEdge({v:e.v,w:e.w,name:e.name},e.value)})),t}}},413:(e,t,n)=>{var r;try{r={clone:n(5981),constant:n(9566),each:n(5279),filter:n(8820),has:n(9312),isArray:n(7321),isEmpty:n(1913),isFunction:n(3314),isUndefined:n(9344),keys:n(5782),map:n(6938),reduce:n(84),size:n(267),transform:n(8336),union:n(9715),values:n(5872)}}catch(e){}r||(r=window._),e.exports=r},5282:e=>{e.exports="2.1.8"},9892:(e,t,n)=>{var r=n(4086)(n(8357),"DataView");e.exports=r},2821:(e,t,n)=>{var r=n(3320),o=n(7934),a=n(73),i=n(9093),s=n(237);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=o,l.prototype.get=a,l.prototype.has=i,l.prototype.set=s,e.exports=l},7031:(e,t,n)=>{var r=n(6318),o=n(6760),a=n(2603),i=n(8583),s=n(7743);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=o,l.prototype.get=a,l.prototype.has=i,l.prototype.set=s,e.exports=l},7063:(e,t,n)=>{var r=n(4086)(n(8357),"Map");e.exports=r},1093:(e,t,n)=>{var r=n(7672),o=n(5310),a=n(233),i=n(6341),s=n(605);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=o,l.prototype.get=a,l.prototype.has=i,l.prototype.set=s,e.exports=l},908:(e,t,n)=>{var r=n(4086)(n(8357),"Promise");e.exports=r},8617:(e,t,n)=>{var r=n(4086)(n(8357),"Set");e.exports=r},7411:(e,t,n)=>{var r=n(1093),o=n(5004),a=n(1995);function i(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new r;++t<n;)this.add(e[t])}i.prototype.add=i.prototype.push=o,i.prototype.has=a,e.exports=i},4265:(e,t,n)=>{var r=n(7031),o=n(1812),a=n(6018),i=n(429),s=n(9297),l=n(57);function c(e){var t=this.__data__=new r(e);this.size=t.size}c.prototype.clear=o,c.prototype.delete=a,c.prototype.get=i,c.prototype.has=s,c.prototype.set=l,e.exports=c},265:(e,t,n)=>{var r=n(8357).Symbol;e.exports=r},7004:(e,t,n)=>{var r=n(8357).Uint8Array;e.exports=r},9591:(e,t,n)=>{var r=n(4086)(n(8357),"WeakMap");e.exports=r},6065:e=>{e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},7945:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}},2994:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,o=0,a=[];++n<r;){var i=e[n];t(i,n,e)&&(a[o++]=i)}return a}},2197:(e,t,n)=>{var r=n(3083);e.exports=function(e,t){return!(null==e||!e.length)&&r(e,t,0)>-1}},873:e=>{e.exports=function(e,t,n){for(var r=-1,o=null==e?0:e.length;++r<o;)if(n(t,e[r]))return!0;return!1}},8671:(e,t,n)=>{var r=n(7960),o=n(5668),a=n(7321),i=n(7555),s=n(5233),l=n(7415),c=Object.prototype.hasOwnProperty;e.exports=function(e,t){var n=a(e),u=!n&&o(e),d=!n&&!u&&i(e),p=!n&&!u&&!d&&l(e),h=n||u||d||p,A=h?r(e.length,String):[],f=A.length;for(var g in e)!t&&!c.call(e,g)||h&&("length"==g||d&&("offset"==g||"parent"==g)||p&&("buffer"==g||"byteLength"==g||"byteOffset"==g)||s(g,f))||A.push(g);return A}},12:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,o=Array(r);++n<r;)o[n]=t(e[n],n,e);return o}},7592:e=>{e.exports=function(e,t){for(var n=-1,r=t.length,o=e.length;++n<r;)e[o+n]=t[n];return e}},3898:e=>{e.exports=function(e,t,n,r){var o=-1,a=null==e?0:e.length;for(r&&a&&(n=e[++o]);++o<a;)n=t(n,e[o],o,e);return n}},4304:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}},9947:(e,t,n)=>{var r=n(1197)("length");e.exports=r},5861:(e,t,n)=>{var r=n(5352),o=n(240);e.exports=function(e,t,n){(void 0!==n&&!o(e[t],n)||void 0===n&&!(t in e))&&r(e,t,n)}},6347:(e,t,n)=>{var r=n(5352),o=n(240),a=Object.prototype.hasOwnProperty;e.exports=function(e,t,n){var i=e[t];a.call(e,t)&&o(i,n)&&(void 0!==n||t in e)||r(e,t,n)}},7361:(e,t,n)=>{var r=n(240);e.exports=function(e,t){for(var n=e.length;n--;)if(r(e[n][0],t))return n;return-1}},3429:(e,t,n)=>{var r=n(6311),o=n(5782);e.exports=function(e,t){return e&&r(t,o(t),e)}},9078:(e,t,n)=>{var r=n(6311),o=n(9905);e.exports=function(e,t){return e&&r(t,o(t),e)}},5352:(e,t,n)=>{var r=n(2691);e.exports=function(e,t,n){"__proto__"==t&&r?r(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}},1700:(e,t,n)=>{var r=n(4265),o=n(7945),a=n(6347),i=n(3429),s=n(9078),l=n(5154),c=n(1943),u=n(5095),d=n(7036),p=n(9322),h=n(5469),A=n(2909),f=n(6677),g=n(935),m=n(2286),C=n(7321),b=n(7555),v=n(1882),y=n(6901),x=n(3072),w=n(5782),M=n(9905),k="[object Arguments]",N="[object Function]",_="[object Object]",S={};S[k]=S["[object Array]"]=S["[object ArrayBuffer]"]=S["[object DataView]"]=S["[object Boolean]"]=S["[object Date]"]=S["[object Float32Array]"]=S["[object Float64Array]"]=S["[object Int8Array]"]=S["[object Int16Array]"]=S["[object Int32Array]"]=S["[object Map]"]=S["[object Number]"]=S[_]=S["[object RegExp]"]=S["[object Set]"]=S["[object String]"]=S["[object Symbol]"]=S["[object Uint8Array]"]=S["[object Uint8ClampedArray]"]=S["[object Uint16Array]"]=S["[object Uint32Array]"]=!0,S["[object Error]"]=S[N]=S["[object WeakMap]"]=!1,e.exports=function e(t,n,L,B,D,I){var j,E=1&n,T=2&n,O=4&n;if(L&&(j=D?L(t,B,D,I):L(t)),void 0!==j)return j;if(!y(t))return t;var P=C(t);if(P){if(j=f(t),!E)return c(t,j)}else{var z=A(t),R=z==N||"[object GeneratorFunction]"==z;if(b(t))return l(t,E);if(z==_||z==k||R&&!D){if(j=T||R?{}:m(t),!E)return T?d(t,s(j,t)):u(t,i(j,t))}else{if(!S[z])return D?t:{};j=g(t,z,E)}}I||(I=new r);var U=I.get(t);if(U)return U;I.set(t,j),x(t)?t.forEach((function(r){j.add(e(r,n,L,r,t,I))})):v(t)&&t.forEach((function(r,o){j.set(o,e(r,n,L,o,t,I))}));var F=P?void 0:(O?T?h:p:T?M:w)(t);return o(F||t,(function(r,o){F&&(r=t[o=r]),a(j,o,e(r,n,L,o,t,I))})),j}},4360:(e,t,n)=>{var r=n(6901),o=Object.create,a=function(){function e(){}return function(t){if(!r(t))return{};if(o)return o(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();e.exports=a},6613:(e,t,n)=>{var r=n(2169),o=n(3873)(r);e.exports=o},535:(e,t,n)=>{var r=n(7218);e.exports=function(e,t,n){for(var o=-1,a=e.length;++o<a;){var i=e[o],s=t(i);if(null!=s&&(void 0===l?s==s&&!r(s):n(s,l)))var l=s,c=i}return c}},9974:(e,t,n)=>{var r=n(6613);e.exports=function(e,t){var n=[];return r(e,(function(e,r,o){t(e,r,o)&&n.push(e)})),n}},6195:e=>{e.exports=function(e,t,n,r){for(var o=e.length,a=n+(r?1:-1);r?a--:++a<o;)if(t(e[a],a,e))return a;return-1}},5144:(e,t,n)=>{var r=n(7592),o=n(9883);e.exports=function e(t,n,a,i,s){var l=-1,c=t.length;for(a||(a=o),s||(s=[]);++l<c;){var u=t[l];n>0&&a(u)?n>1?e(u,n-1,a,i,s):r(s,u):i||(s[s.length]=u)}return s}},4257:(e,t,n)=>{var r=n(8013)();e.exports=r},2169:(e,t,n)=>{var r=n(4257),o=n(5782);e.exports=function(e,t){return e&&r(e,t,o)}},6934:(e,t,n)=>{var r=n(8033),o=n(7581);e.exports=function(e,t){for(var n=0,a=(t=r(t,e)).length;null!=e&&n<a;)e=e[o(t[n++])];return n&&n==a?e:void 0}},8047:(e,t,n)=>{var r=n(7592),o=n(7321);e.exports=function(e,t,n){var a=t(e);return o(e)?a:r(a,n(e))}},9360:(e,t,n)=>{var r=n(265),o=n(9083),a=n(926),i=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":i&&i in Object(e)?o(e):a(e)}},9247:e=>{e.exports=function(e,t){return e>t}},7042:e=>{var t=Object.prototype.hasOwnProperty;e.exports=function(e,n){return null!=e&&t.call(e,n)}},2437:e=>{e.exports=function(e,t){return null!=e&&t in Object(e)}},3083:(e,t,n)=>{var r=n(6195),o=n(1903),a=n(3319);e.exports=function(e,t,n){return t==t?a(e,t,n):r(e,o,n)}},1974:(e,t,n)=>{var r=n(9360),o=n(6082);e.exports=function(e){return o(e)&&"[object Arguments]"==r(e)}},1206:(e,t,n)=>{var r=n(3876),o=n(6082);e.exports=function e(t,n,a,i,s){return t===n||(null==t||null==n||!o(t)&&!o(n)?t!=t&&n!=n:r(t,n,a,i,e,s))}},3876:(e,t,n)=>{var r=n(4265),o=n(9919),a=n(5706),i=n(857),s=n(2909),l=n(7321),c=n(7555),u=n(7415),d="[object Arguments]",p="[object Array]",h="[object Object]",A=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,f,g,m){var C=l(e),b=l(t),v=C?p:s(e),y=b?p:s(t),x=(v=v==d?h:v)==h,w=(y=y==d?h:y)==h,M=v==y;if(M&&c(e)){if(!c(t))return!1;C=!0,x=!1}if(M&&!x)return m||(m=new r),C||u(e)?o(e,t,n,f,g,m):a(e,t,v,n,f,g,m);if(!(1&n)){var k=x&&A.call(e,"__wrapped__"),N=w&&A.call(t,"__wrapped__");if(k||N){var _=k?e.value():e,S=N?t.value():t;return m||(m=new r),g(_,S,n,f,m)}}return!!M&&(m||(m=new r),i(e,t,n,f,g,m))}},3244:(e,t,n)=>{var r=n(2909),o=n(6082);e.exports=function(e){return o(e)&&"[object Map]"==r(e)}},4719:(e,t,n)=>{var r=n(4265),o=n(1206);e.exports=function(e,t,n,a){var i=n.length,s=i,l=!a;if(null==e)return!s;for(e=Object(e);i--;){var c=n[i];if(l&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++i<s;){var u=(c=n[i])[0],d=e[u],p=c[1];if(l&&c[2]){if(void 0===d&&!(u in e))return!1}else{var h=new r;if(a)var A=a(d,p,u,e,t,h);if(!(void 0===A?o(p,d,3,a,h):A))return!1}}return!0}},1903:e=>{e.exports=function(e){return e!=e}},5027:(e,t,n)=>{var r=n(3314),o=n(9592),a=n(6901),i=n(649),s=/^\[object .+?Constructor\]$/,l=Function.prototype,c=Object.prototype,u=l.toString,d=c.hasOwnProperty,p=RegExp("^"+u.call(d).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!a(e)||o(e))&&(r(e)?p:s).test(i(e))}},5774:(e,t,n)=>{var r=n(2909),o=n(6082);e.exports=function(e){return o(e)&&"[object Set]"==r(e)}},1517:(e,t,n)=>{var r=n(9360),o=n(3150),a=n(6082),i={};i["[object Float32Array]"]=i["[object Float64Array]"]=i["[object Int8Array]"]=i["[object Int16Array]"]=i["[object Int32Array]"]=i["[object Uint8Array]"]=i["[object Uint8ClampedArray]"]=i["[object Uint16Array]"]=i["[object Uint32Array]"]=!0,i["[object Arguments]"]=i["[object Array]"]=i["[object ArrayBuffer]"]=i["[object Boolean]"]=i["[object DataView]"]=i["[object Date]"]=i["[object Error]"]=i["[object Function]"]=i["[object Map]"]=i["[object Number]"]=i["[object Object]"]=i["[object RegExp]"]=i["[object Set]"]=i["[object String]"]=i["[object WeakMap]"]=!1,e.exports=function(e){return a(e)&&o(e.length)&&!!i[r(e)]}},8757:(e,t,n)=>{var r=n(7335),o=n(962),a=n(9064),i=n(7321),s=n(8175);e.exports=function(e){return"function"==typeof e?e:null==e?a:"object"==typeof e?i(e)?o(e[0],e[1]):r(e):s(e)}},5440:(e,t,n)=>{var r=n(4767),o=n(2650),a=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return o(e);var t=[];for(var n in Object(e))a.call(e,n)&&"constructor"!=n&&t.push(n);return t}},735:(e,t,n)=>{var r=n(6901),o=n(4767),a=n(6445),i=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return a(e);var t=o(e),n=[];for(var s in e)("constructor"!=s||!t&&i.call(e,s))&&n.push(s);return n}},4248:e=>{e.exports=function(e,t){return e<t}},2560:(e,t,n)=>{var r=n(6613),o=n(6518);e.exports=function(e,t){var n=-1,a=o(e)?Array(e.length):[];return r(e,(function(e,r,o){a[++n]=t(e,r,o)})),a}},7335:(e,t,n)=>{var r=n(4719),o=n(8208),a=n(4981);e.exports=function(e){var t=o(e);return 1==t.length&&t[0][2]?a(t[0][0],t[0][1]):function(n){return n===e||r(n,e,t)}}},962:(e,t,n)=>{var r=n(1206),o=n(4548),a=n(1804),i=n(8226),s=n(1628),l=n(4981),c=n(7581);e.exports=function(e,t){return i(e)&&s(t)?l(c(e),t):function(n){var i=o(n,e);return void 0===i&&i===t?a(n,e):r(t,i,3)}}},7866:(e,t,n)=>{var r=n(4265),o=n(5861),a=n(4257),i=n(7584),s=n(6901),l=n(9905),c=n(6246);e.exports=function e(t,n,u,d,p){t!==n&&a(n,(function(a,l){if(p||(p=new r),s(a))i(t,n,l,u,e,d,p);else{var h=d?d(c(t,l),a,l+"",t,n,p):void 0;void 0===h&&(h=a),o(t,l,h)}}),l)}},7584:(e,t,n)=>{var r=n(5861),o=n(5154),a=n(5137),i=n(1943),s=n(2286),l=n(5668),c=n(7321),u=n(2133),d=n(7555),p=n(3314),h=n(6901),A=n(6923),f=n(7415),g=n(6246),m=n(6436);e.exports=function(e,t,n,C,b,v,y){var x=g(e,n),w=g(t,n),M=y.get(w);if(M)r(e,n,M);else{var k=v?v(x,w,n+"",e,t,y):void 0,N=void 0===k;if(N){var _=c(w),S=!_&&d(w),L=!_&&!S&&f(w);k=w,_||S||L?c(x)?k=x:u(x)?k=i(x):S?(N=!1,k=o(w,!0)):L?(N=!1,k=a(w,!0)):k=[]:A(w)||l(w)?(k=x,l(x)?k=m(x):h(x)&&!p(x)||(k=s(w))):N=!1}N&&(y.set(w,k),b(k,w,C,v,y),y.delete(w)),r(e,n,k)}}},2499:(e,t,n)=>{var r=n(12),o=n(6934),a=n(8757),i=n(2560),s=n(9401),l=n(1117),c=n(8234),u=n(9064),d=n(7321);e.exports=function(e,t,n){t=t.length?r(t,(function(e){return d(e)?function(t){return o(t,1===e.length?e[0]:e)}:e})):[u];var p=-1;t=r(t,l(a));var h=i(e,(function(e,n,o){return{criteria:r(t,(function(t){return t(e)})),index:++p,value:e}}));return s(h,(function(e,t){return c(e,t,n)}))}},105:(e,t,n)=>{var r=n(1236),o=n(1804);e.exports=function(e,t){return r(e,t,(function(t,n){return o(e,n)}))}},1236:(e,t,n)=>{var r=n(6934),o=n(9578),a=n(8033);e.exports=function(e,t,n){for(var i=-1,s=t.length,l={};++i<s;){var c=t[i],u=r(e,c);n(u,c)&&o(l,a(c,e),u)}return l}},1197:e=>{e.exports=function(e){return function(t){return null==t?void 0:t[e]}}},2415:(e,t,n)=>{var r=n(6934);e.exports=function(e){return function(t){return r(t,e)}}},1855:e=>{var t=Math.ceil,n=Math.max;e.exports=function(e,r,o,a){for(var i=-1,s=n(t((r-e)/(o||1)),0),l=Array(s);s--;)l[a?s:++i]=e,e+=o;return l}},2542:e=>{e.exports=function(e,t,n,r,o){return o(e,(function(e,o,a){n=r?(r=!1,e):t(n,e,o,a)})),n}},9342:(e,t,n)=>{var r=n(9064),o=n(7837),a=n(4969);e.exports=function(e,t){return a(o(e,t,r),e+"")}},9578:(e,t,n)=>{var r=n(6347),o=n(8033),a=n(5233),i=n(6901),s=n(7581);e.exports=function(e,t,n,l){if(!i(e))return e;for(var c=-1,u=(t=o(t,e)).length,d=u-1,p=e;null!=p&&++c<u;){var h=s(t[c]),A=n;if("__proto__"===h||"constructor"===h||"prototype"===h)return e;if(c!=d){var f=p[h];void 0===(A=l?l(f,h,p):void 0)&&(A=i(f)?f:a(t[c+1])?[]:{})}r(p,h,A),p=p[h]}return e}},1978:(e,t,n)=>{var r=n(9566),o=n(2691),a=n(9064),i=o?function(e,t){return o(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:a;e.exports=i},9401:e=>{e.exports=function(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}},7960:e=>{e.exports=function(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}},9084:(e,t,n)=>{var r=n(265),o=n(12),a=n(7321),i=n(7218),s=r?r.prototype:void 0,l=s?s.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(a(t))return o(t,e)+"";if(i(t))return l?l.call(t):"";var n=t+"";return"0"==n&&1/t==-1/0?"-0":n}},9272:(e,t,n)=>{var r=n(1888),o=/^\s+/;e.exports=function(e){return e?e.slice(0,r(e)+1).replace(o,""):e}},1117:e=>{e.exports=function(e){return function(t){return e(t)}}},7165:(e,t,n)=>{var r=n(7411),o=n(2197),a=n(873),i=n(843),s=n(1005),l=n(9423);e.exports=function(e,t,n){var c=-1,u=o,d=e.length,p=!0,h=[],A=h;if(n)p=!1,u=a;else if(d>=200){var f=t?null:s(e);if(f)return l(f);p=!1,u=i,A=new r}else A=t?[]:h;e:for(;++c<d;){var g=e[c],m=t?t(g):g;if(g=n||0!==g?g:0,p&&m==m){for(var C=A.length;C--;)if(A[C]===m)continue e;t&&A.push(m),h.push(g)}else u(A,m,n)||(A!==h&&A.push(m),h.push(g))}return h}},6874:(e,t,n)=>{var r=n(12);e.exports=function(e,t){return r(t,(function(t){return e[t]}))}},7818:e=>{e.exports=function(e,t,n){for(var r=-1,o=e.length,a=t.length,i={};++r<o;){var s=r<a?t[r]:void 0;n(i,e[r],s)}return i}},843:e=>{e.exports=function(e,t){return e.has(t)}},7018:(e,t,n)=>{var r=n(9064);e.exports=function(e){return"function"==typeof e?e:r}},8033:(e,t,n)=>{var r=n(7321),o=n(8226),a=n(4866),i=n(6590);e.exports=function(e,t){return r(e)?e:o(e,t)?[e]:a(i(e))}},7197:(e,t,n)=>{var r=n(7004);e.exports=function(e){var t=new e.constructor(e.byteLength);return new r(t).set(new r(e)),t}},5154:(e,t,n)=>{e=n.nmd(e);var r=n(8357),o=t&&!t.nodeType&&t,a=o&&e&&!e.nodeType&&e,i=a&&a.exports===o?r.Buffer:void 0,s=i?i.allocUnsafe:void 0;e.exports=function(e,t){if(t)return e.slice();var n=e.length,r=s?s(n):new e.constructor(n);return e.copy(r),r}},3233:(e,t,n)=>{var r=n(7197);e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}},2233:e=>{var t=/\w*$/;e.exports=function(e){var n=new e.constructor(e.source,t.exec(e));return n.lastIndex=e.lastIndex,n}},6688:(e,t,n)=>{var r=n(265),o=r?r.prototype:void 0,a=o?o.valueOf:void 0;e.exports=function(e){return a?Object(a.call(e)):{}}},5137:(e,t,n)=>{var r=n(7197);e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}},7274:(e,t,n)=>{var r=n(7218);e.exports=function(e,t){if(e!==t){var n=void 0!==e,o=null===e,a=e==e,i=r(e),s=void 0!==t,l=null===t,c=t==t,u=r(t);if(!l&&!u&&!i&&e>t||i&&s&&c&&!l&&!u||o&&s&&c||!n&&c||!a)return 1;if(!o&&!i&&!u&&e<t||u&&n&&a&&!o&&!i||l&&n&&a||!s&&a||!c)return-1}return 0}},8234:(e,t,n)=>{var r=n(7274);e.exports=function(e,t,n){for(var o=-1,a=e.criteria,i=t.criteria,s=a.length,l=n.length;++o<s;){var c=r(a[o],i[o]);if(c)return o>=l?c:c*("desc"==n[o]?-1:1)}return e.index-t.index}},1943:e=>{e.exports=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}},6311:(e,t,n)=>{var r=n(6347),o=n(5352);e.exports=function(e,t,n,a){var i=!n;n||(n={});for(var s=-1,l=t.length;++s<l;){var c=t[s],u=a?a(n[c],e[c],c,n,e):void 0;void 0===u&&(u=e[c]),i?o(n,c,u):r(n,c,u)}return n}},5095:(e,t,n)=>{var r=n(6311),o=n(6416);e.exports=function(e,t){return r(e,o(e),t)}},7036:(e,t,n)=>{var r=n(6311),o=n(1711);e.exports=function(e,t){return r(e,o(e),t)}},9393:(e,t,n)=>{var r=n(8357)["__core-js_shared__"];e.exports=r},3695:(e,t,n)=>{var r=n(9342),o=n(1688);e.exports=function(e){return r((function(t,n){var r=-1,a=n.length,i=a>1?n[a-1]:void 0,s=a>2?n[2]:void 0;for(i=e.length>3&&"function"==typeof i?(a--,i):void 0,s&&o(n[0],n[1],s)&&(i=a<3?void 0:i,a=1),t=Object(t);++r<a;){var l=n[r];l&&e(t,l,r,i)}return t}))}},3873:(e,t,n)=>{var r=n(6518);e.exports=function(e,t){return function(n,o){if(null==n)return n;if(!r(n))return e(n,o);for(var a=n.length,i=t?a:-1,s=Object(n);(t?i--:++i<a)&&!1!==o(s[i],i,s););return n}}},8013:e=>{e.exports=function(e){return function(t,n,r){for(var o=-1,a=Object(t),i=r(t),s=i.length;s--;){var l=i[e?s:++o];if(!1===n(a[l],l,a))break}return t}}},270:(e,t,n)=>{var r=n(8757),o=n(6518),a=n(5782);e.exports=function(e){return function(t,n,i){var s=Object(t);if(!o(t)){var l=r(n,3);t=a(t),n=function(e){return l(s[e],e,s)}}var c=e(t,n,i);return c>-1?s[l?t[c]:c]:void 0}}},7340:(e,t,n)=>{var r=n(1855),o=n(1688),a=n(1792);e.exports=function(e){return function(t,n,i){return i&&"number"!=typeof i&&o(t,n,i)&&(n=i=void 0),t=a(t),void 0===n?(n=t,t=0):n=a(n),i=void 0===i?t<n?1:-1:a(i),r(t,n,i,e)}}},1005:(e,t,n)=>{var r=n(8617),o=n(9529),a=n(9423),i=r&&1/a(new r([,-0]))[1]==1/0?function(e){return new r(e)}:o;e.exports=i},2691:(e,t,n)=>{var r=n(4086),o=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();e.exports=o},9919:(e,t,n)=>{var r=n(7411),o=n(4304),a=n(843);e.exports=function(e,t,n,i,s,l){var c=1&n,u=e.length,d=t.length;if(u!=d&&!(c&&d>u))return!1;var p=l.get(e),h=l.get(t);if(p&&h)return p==t&&h==e;var A=-1,f=!0,g=2&n?new r:void 0;for(l.set(e,t),l.set(t,e);++A<u;){var m=e[A],C=t[A];if(i)var b=c?i(C,m,A,t,e,l):i(m,C,A,e,t,l);if(void 0!==b){if(b)continue;f=!1;break}if(g){if(!o(t,(function(e,t){if(!a(g,t)&&(m===e||s(m,e,n,i,l)))return g.push(t)}))){f=!1;break}}else if(m!==C&&!s(m,C,n,i,l)){f=!1;break}}return l.delete(e),l.delete(t),f}},5706:(e,t,n)=>{var r=n(265),o=n(7004),a=n(240),i=n(9919),s=n(8722),l=n(9423),c=r?r.prototype:void 0,u=c?c.valueOf:void 0;e.exports=function(e,t,n,r,c,d,p){switch(n){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!d(new o(e),new o(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return a(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var h=s;case"[object Set]":var A=1&r;if(h||(h=l),e.size!=t.size&&!A)return!1;var f=p.get(e);if(f)return f==t;r|=2,p.set(e,t);var g=i(h(e),h(t),r,c,d,p);return p.delete(e),g;case"[object Symbol]":if(u)return u.call(e)==u.call(t)}return!1}},857:(e,t,n)=>{var r=n(9322),o=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,a,i,s){var l=1&n,c=r(e),u=c.length;if(u!=r(t).length&&!l)return!1;for(var d=u;d--;){var p=c[d];if(!(l?p in t:o.call(t,p)))return!1}var h=s.get(e),A=s.get(t);if(h&&A)return h==t&&A==e;var f=!0;s.set(e,t),s.set(t,e);for(var g=l;++d<u;){var m=e[p=c[d]],C=t[p];if(a)var b=l?a(C,m,p,t,e,s):a(m,C,p,e,t,s);if(!(void 0===b?m===C||i(m,C,n,a,s):b)){f=!1;break}g||(g="constructor"==p)}if(f&&!g){var v=e.constructor,y=t.constructor;v==y||!("constructor"in e)||!("constructor"in t)||"function"==typeof v&&v instanceof v&&"function"==typeof y&&y instanceof y||(f=!1)}return s.delete(e),s.delete(t),f}},5544:(e,t,n)=>{var r=n(1386),o=n(7837),a=n(4969);e.exports=function(e){return a(o(e,void 0,r),e+"")}},2704:(e,t,n)=>{var r="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;e.exports=r},9322:(e,t,n)=>{var r=n(8047),o=n(6416),a=n(5782);e.exports=function(e){return r(e,a,o)}},5469:(e,t,n)=>{var r=n(8047),o=n(1711),a=n(9905);e.exports=function(e){return r(e,a,o)}},8899:(e,t,n)=>{var r=n(2962);e.exports=function(e,t){var n=e.__data__;return r(t)?n["string"==typeof t?"string":"hash"]:n.map}},8208:(e,t,n)=>{var r=n(1628),o=n(5782);e.exports=function(e){for(var t=o(e),n=t.length;n--;){var a=t[n],i=e[a];t[n]=[a,i,r(i)]}return t}},4086:(e,t,n)=>{var r=n(5027),o=n(9936);e.exports=function(e,t){var n=o(e,t);return r(n)?n:void 0}},1719:(e,t,n)=>{var r=n(231)(Object.getPrototypeOf,Object);e.exports=r},9083:(e,t,n)=>{var r=n(265),o=Object.prototype,a=o.hasOwnProperty,i=o.toString,s=r?r.toStringTag:void 0;e.exports=function(e){var t=a.call(e,s),n=e[s];try{e[s]=void 0;var r=!0}catch(e){}var o=i.call(e);return r&&(t?e[s]=n:delete e[s]),o}},6416:(e,t,n)=>{var r=n(2994),o=n(6313),a=Object.prototype.propertyIsEnumerable,i=Object.getOwnPropertySymbols,s=i?function(e){return null==e?[]:(e=Object(e),r(i(e),(function(t){return a.call(e,t)})))}:o;e.exports=s},1711:(e,t,n)=>{var r=n(7592),o=n(1719),a=n(6416),i=n(6313),s=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)r(t,a(e)),e=o(e);return t}:i;e.exports=s},2909:(e,t,n)=>{var r=n(9892),o=n(7063),a=n(908),i=n(8617),s=n(9591),l=n(9360),c=n(649),u="[object Map]",d="[object Promise]",p="[object Set]",h="[object WeakMap]",A="[object DataView]",f=c(r),g=c(o),m=c(a),C=c(i),b=c(s),v=l;(r&&v(new r(new ArrayBuffer(1)))!=A||o&&v(new o)!=u||a&&v(a.resolve())!=d||i&&v(new i)!=p||s&&v(new s)!=h)&&(v=function(e){var t=l(e),n="[object Object]"==t?e.constructor:void 0,r=n?c(n):"";if(r)switch(r){case f:return A;case g:return u;case m:return d;case C:return p;case b:return h}return t}),e.exports=v},9936:e=>{e.exports=function(e,t){return null==e?void 0:e[t]}},8534:(e,t,n)=>{var r=n(8033),o=n(5668),a=n(7321),i=n(5233),s=n(3150),l=n(7581);e.exports=function(e,t,n){for(var c=-1,u=(t=r(t,e)).length,d=!1;++c<u;){var p=l(t[c]);if(!(d=null!=e&&n(e,p)))break;e=e[p]}return d||++c!=u?d:!!(u=null==e?0:e.length)&&s(u)&&i(p,u)&&(a(e)||o(e))}},3325:e=>{var t=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");e.exports=function(e){return t.test(e)}},3320:(e,t,n)=>{var r=n(218);e.exports=function(){this.__data__=r?r(null):{},this.size=0}},7934:e=>{e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},73:(e,t,n)=>{var r=n(218),o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(r){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return o.call(t,e)?t[e]:void 0}},9093:(e,t,n)=>{var r=n(218),o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:o.call(t,e)}},237:(e,t,n)=>{var r=n(218);e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=r&&void 0===t?"__lodash_hash_undefined__":t,this}},6677:e=>{var t=Object.prototype.hasOwnProperty;e.exports=function(e){var n=e.length,r=new e.constructor(n);return n&&"string"==typeof e[0]&&t.call(e,"index")&&(r.index=e.index,r.input=e.input),r}},935:(e,t,n)=>{var r=n(7197),o=n(3233),a=n(2233),i=n(6688),s=n(5137);e.exports=function(e,t,n){var l=e.constructor;switch(t){case"[object ArrayBuffer]":return r(e);case"[object Boolean]":case"[object Date]":return new l(+e);case"[object DataView]":return o(e,n);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return s(e,n);case"[object Map]":case"[object Set]":return new l;case"[object Number]":case"[object String]":return new l(e);case"[object RegExp]":return a(e);case"[object Symbol]":return i(e)}}},2286:(e,t,n)=>{var r=n(4360),o=n(1719),a=n(4767);e.exports=function(e){return"function"!=typeof e.constructor||a(e)?{}:r(o(e))}},9883:(e,t,n)=>{var r=n(265),o=n(5668),a=n(7321),i=r?r.isConcatSpreadable:void 0;e.exports=function(e){return a(e)||o(e)||!!(i&&e&&e[i])}},5233:e=>{var t=/^(?:0|[1-9]\d*)$/;e.exports=function(e,n){var r=typeof e;return!!(n=null==n?9007199254740991:n)&&("number"==r||"symbol"!=r&&t.test(e))&&e>-1&&e%1==0&&e<n}},1688:(e,t,n)=>{var r=n(240),o=n(6518),a=n(5233),i=n(6901);e.exports=function(e,t,n){if(!i(n))return!1;var s=typeof t;return!!("number"==s?o(n)&&a(t,n.length):"string"==s&&t in n)&&r(n[t],e)}},8226:(e,t,n)=>{var r=n(7321),o=n(7218),a=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,i=/^\w*$/;e.exports=function(e,t){if(r(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!o(e))||i.test(e)||!a.test(e)||null!=t&&e in Object(t)}},2962:e=>{e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},9592:(e,t,n)=>{var r,o=n(9393),a=(r=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";e.exports=function(e){return!!a&&a in e}},4767:e=>{var t=Object.prototype;e.exports=function(e){var n=e&&e.constructor;return e===("function"==typeof n&&n.prototype||t)}},1628:(e,t,n)=>{var r=n(6901);e.exports=function(e){return e==e&&!r(e)}},6318:e=>{e.exports=function(){this.__data__=[],this.size=0}},6760:(e,t,n)=>{var r=n(7361),o=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0||(n==t.length-1?t.pop():o.call(t,n,1),--this.size,0))}},2603:(e,t,n)=>{var r=n(7361);e.exports=function(e){var t=this.__data__,n=r(t,e);return n<0?void 0:t[n][1]}},8583:(e,t,n)=>{var r=n(7361);e.exports=function(e){return r(this.__data__,e)>-1}},7743:(e,t,n)=>{var r=n(7361);e.exports=function(e,t){var n=this.__data__,o=r(n,e);return o<0?(++this.size,n.push([e,t])):n[o][1]=t,this}},7672:(e,t,n)=>{var r=n(2821),o=n(7031),a=n(7063);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(a||o),string:new r}}},5310:(e,t,n)=>{var r=n(8899);e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},233:(e,t,n)=>{var r=n(8899);e.exports=function(e){return r(this,e).get(e)}},6341:(e,t,n)=>{var r=n(8899);e.exports=function(e){return r(this,e).has(e)}},605:(e,t,n)=>{var r=n(8899);e.exports=function(e,t){var n=r(this,e),o=n.size;return n.set(e,t),this.size+=n.size==o?0:1,this}},8722:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}},4981:e=>{e.exports=function(e,t){return function(n){return null!=n&&n[e]===t&&(void 0!==t||e in Object(n))}}},9384:(e,t,n)=>{var r=n(4336);e.exports=function(e){var t=r(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}},218:(e,t,n)=>{var r=n(4086)(Object,"create");e.exports=r},2650:(e,t,n)=>{var r=n(231)(Object.keys,Object);e.exports=r},6445:e=>{e.exports=function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t}},6817:(e,t,n)=>{e=n.nmd(e);var r=n(2704),o=t&&!t.nodeType&&t,a=o&&e&&!e.nodeType&&e,i=a&&a.exports===o&&r.process,s=function(){try{return a&&a.require&&a.require("util").types||i&&i.binding&&i.binding("util")}catch(e){}}();e.exports=s},926:e=>{var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},231:e=>{e.exports=function(e,t){return function(n){return e(t(n))}}},7837:(e,t,n)=>{var r=n(6065),o=Math.max;e.exports=function(e,t,n){return t=o(void 0===t?e.length-1:t,0),function(){for(var a=arguments,i=-1,s=o(a.length-t,0),l=Array(s);++i<s;)l[i]=a[t+i];i=-1;for(var c=Array(t+1);++i<t;)c[i]=a[i];return c[t]=n(l),r(e,this,c)}}},8357:(e,t,n)=>{var r=n(2704),o="object"==typeof self&&self&&self.Object===Object&&self,a=r||o||Function("return this")();e.exports=a},6246:e=>{e.exports=function(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}},5004:e=>{e.exports=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}},1995:e=>{e.exports=function(e){return this.__data__.has(e)}},9423:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}},4969:(e,t,n)=>{var r=n(1978),o=n(4459)(r);e.exports=o},4459:e=>{var t=Date.now;e.exports=function(e){var n=0,r=0;return function(){var o=t(),a=16-(o-r);if(r=o,a>0){if(++n>=800)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}},1812:(e,t,n)=>{var r=n(7031);e.exports=function(){this.__data__=new r,this.size=0}},6018:e=>{e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},429:e=>{e.exports=function(e){return this.__data__.get(e)}},9297:e=>{e.exports=function(e){return this.__data__.has(e)}},57:(e,t,n)=>{var r=n(7031),o=n(7063),a=n(1093);e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var i=n.__data__;if(!o||i.length<199)return i.push([e,t]),this.size=++n.size,this;n=this.__data__=new a(i)}return n.set(e,t),this.size=n.size,this}},3319:e=>{e.exports=function(e,t,n){for(var r=n-1,o=e.length;++r<o;)if(e[r]===t)return r;return-1}},7281:(e,t,n)=>{var r=n(9947),o=n(3325),a=n(8351);e.exports=function(e){return o(e)?a(e):r(e)}},4866:(e,t,n)=>{var r=n(9384),o=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,a=/\\(\\)?/g,i=r((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(o,(function(e,n,r,o){t.push(r?o.replace(a,"$1"):n||e)})),t}));e.exports=i},7581:(e,t,n)=>{var r=n(7218);e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}},649:e=>{var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(e){}try{return e+""}catch(e){}}return""}},1888:e=>{var t=/\s/;e.exports=function(e){for(var n=e.length;n--&&t.test(e.charAt(n)););return n}},8351:e=>{var t="\\ud800-\\udfff",n="["+t+"]",r="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",o="\\ud83c[\\udffb-\\udfff]",a="[^"+t+"]",i="(?:\\ud83c[\\udde6-\\uddff]){2}",s="[\\ud800-\\udbff][\\udc00-\\udfff]",l="(?:"+r+"|"+o+")?",c="[\\ufe0e\\ufe0f]?",u=c+l+"(?:\\u200d(?:"+[a,i,s].join("|")+")"+c+l+")*",d="(?:"+[a+r+"?",r,i,s,n].join("|")+")",p=RegExp(o+"(?="+o+")|"+d+u,"g");e.exports=function(e){for(var t=p.lastIndex=0;p.test(e);)++t;return t}},5981:(e,t,n)=>{var r=n(1700);e.exports=function(e){return r(e,4)}},5263:(e,t,n)=>{var r=n(1700);e.exports=function(e){return r(e,5)}},9566:e=>{e.exports=function(e){return function(){return e}}},8276:(e,t,n)=>{var r=n(9342),o=n(240),a=n(1688),i=n(9905),s=Object.prototype,l=s.hasOwnProperty,c=r((function(e,t){e=Object(e);var n=-1,r=t.length,c=r>2?t[2]:void 0;for(c&&a(t[0],t[1],c)&&(r=1);++n<r;)for(var u=t[n],d=i(u),p=-1,h=d.length;++p<h;){var A=d[p],f=e[A];(void 0===f||o(f,s[A])&&!l.call(e,A))&&(e[A]=u[A])}return e}));e.exports=c},5279:(e,t,n)=>{e.exports=n(5362)},240:e=>{e.exports=function(e,t){return e===t||e!=e&&t!=t}},8820:(e,t,n)=>{var r=n(2994),o=n(9974),a=n(8757),i=n(7321);e.exports=function(e,t){return(i(e)?r:o)(e,a(t,3))}},2933:(e,t,n)=>{var r=n(270)(n(9777));e.exports=r},9777:(e,t,n)=>{var r=n(6195),o=n(8757),a=n(7097),i=Math.max;e.exports=function(e,t,n){var s=null==e?0:e.length;if(!s)return-1;var l=null==n?0:a(n);return l<0&&(l=i(s+l,0)),r(e,o(t,3),l)}},1386:(e,t,n)=>{var r=n(5144);e.exports=function(e){return null!=e&&e.length?r(e,1):[]}},5362:(e,t,n)=>{var r=n(7945),o=n(6613),a=n(7018),i=n(7321);e.exports=function(e,t){return(i(e)?r:o)(e,a(t))}},5692:(e,t,n)=>{var r=n(4257),o=n(7018),a=n(9905);e.exports=function(e,t){return null==e?e:r(e,o(t),a)}},4548:(e,t,n)=>{var r=n(6934);e.exports=function(e,t,n){var o=null==e?void 0:r(e,t);return void 0===o?n:o}},9312:(e,t,n)=>{var r=n(7042),o=n(8534);e.exports=function(e,t){return null!=e&&o(e,t,r)}},1804:(e,t,n)=>{var r=n(2437),o=n(8534);e.exports=function(e,t){return null!=e&&o(e,t,r)}},9064:e=>{e.exports=function(e){return e}},5668:(e,t,n)=>{var r=n(1974),o=n(6082),a=Object.prototype,i=a.hasOwnProperty,s=a.propertyIsEnumerable,l=r(function(){return arguments}())?r:function(e){return o(e)&&i.call(e,"callee")&&!s.call(e,"callee")};e.exports=l},7321:e=>{var t=Array.isArray;e.exports=t},6518:(e,t,n)=>{var r=n(3314),o=n(3150);e.exports=function(e){return null!=e&&o(e.length)&&!r(e)}},2133:(e,t,n)=>{var r=n(6518),o=n(6082);e.exports=function(e){return o(e)&&r(e)}},7555:(e,t,n)=>{e=n.nmd(e);var r=n(8357),o=n(1063),a=t&&!t.nodeType&&t,i=a&&e&&!e.nodeType&&e,s=i&&i.exports===a?r.Buffer:void 0,l=(s?s.isBuffer:void 0)||o;e.exports=l},1913:(e,t,n)=>{var r=n(5440),o=n(2909),a=n(5668),i=n(7321),s=n(6518),l=n(7555),c=n(4767),u=n(7415),d=Object.prototype.hasOwnProperty;e.exports=function(e){if(null==e)return!0;if(s(e)&&(i(e)||"string"==typeof e||"function"==typeof e.splice||l(e)||u(e)||a(e)))return!e.length;var t=o(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(c(e))return!r(e).length;for(var n in e)if(d.call(e,n))return!1;return!0}},3314:(e,t,n)=>{var r=n(9360),o=n(6901);e.exports=function(e){if(!o(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},3150:e=>{e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},1882:(e,t,n)=>{var r=n(3244),o=n(1117),a=n(6817),i=a&&a.isMap,s=i?o(i):r;e.exports=s},6901:e=>{e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},6082:e=>{e.exports=function(e){return null!=e&&"object"==typeof e}},6923:(e,t,n)=>{var r=n(9360),o=n(1719),a=n(6082),i=Function.prototype,s=Object.prototype,l=i.toString,c=s.hasOwnProperty,u=l.call(Object);e.exports=function(e){if(!a(e)||"[object Object]"!=r(e))return!1;var t=o(e);if(null===t)return!0;var n=c.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&l.call(n)==u}},3072:(e,t,n)=>{var r=n(5774),o=n(1117),a=n(6817),i=a&&a.isSet,s=i?o(i):r;e.exports=s},4063:(e,t,n)=>{var r=n(9360),o=n(7321),a=n(6082);e.exports=function(e){return"string"==typeof e||!o(e)&&a(e)&&"[object String]"==r(e)}},7218:(e,t,n)=>{var r=n(9360),o=n(6082);e.exports=function(e){return"symbol"==typeof e||o(e)&&"[object Symbol]"==r(e)}},7415:(e,t,n)=>{var r=n(1517),o=n(1117),a=n(6817),i=a&&a.isTypedArray,s=i?o(i):r;e.exports=s},9344:e=>{e.exports=function(e){return void 0===e}},5782:(e,t,n)=>{var r=n(8671),o=n(5440),a=n(6518);e.exports=function(e){return a(e)?r(e):o(e)}},9905:(e,t,n)=>{var r=n(8671),o=n(735),a=n(6518);e.exports=function(e){return a(e)?r(e,!0):o(e)}},7362:e=>{e.exports=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}},6938:(e,t,n)=>{var r=n(12),o=n(8757),a=n(2560),i=n(7321);e.exports=function(e,t){return(i(e)?r:a)(e,o(t,3))}},948:(e,t,n)=>{var r=n(5352),o=n(2169),a=n(8757);e.exports=function(e,t){var n={};return t=a(t,3),o(e,(function(e,o,a){r(n,o,t(e,o,a))})),n}},7810:(e,t,n)=>{var r=n(535),o=n(9247),a=n(9064);e.exports=function(e){return e&&e.length?r(e,a,o):void 0}},4336:(e,t,n)=>{var r=n(1093);function o(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var r=arguments,o=t?t.apply(this,r):r[0],a=n.cache;if(a.has(o))return a.get(o);var i=e.apply(this,r);return n.cache=a.set(o,i)||a,i};return n.cache=new(o.Cache||r),n}o.Cache=r,e.exports=o},6652:(e,t,n)=>{var r=n(7866),o=n(3695)((function(e,t,n){r(e,t,n)}));e.exports=o},6956:(e,t,n)=>{var r=n(535),o=n(4248),a=n(9064);e.exports=function(e){return e&&e.length?r(e,a,o):void 0}},45:(e,t,n)=>{var r=n(535),o=n(8757),a=n(4248);e.exports=function(e,t){return e&&e.length?r(e,o(t,2),a):void 0}},9529:e=>{e.exports=function(){}},1940:(e,t,n)=>{var r=n(8357);e.exports=function(){return r.Date.now()}},1815:(e,t,n)=>{var r=n(105),o=n(5544)((function(e,t){return null==e?{}:r(e,t)}));e.exports=o},8175:(e,t,n)=>{var r=n(1197),o=n(2415),a=n(8226),i=n(7581);e.exports=function(e){return a(e)?r(i(e)):o(e)}},3333:(e,t,n)=>{var r=n(7340)();e.exports=r},84:(e,t,n)=>{var r=n(3898),o=n(6613),a=n(8757),i=n(2542),s=n(7321);e.exports=function(e,t,n){var l=s(e)?r:i,c=arguments.length<3;return l(e,a(t,4),n,c,o)}},267:(e,t,n)=>{var r=n(5440),o=n(2909),a=n(6518),i=n(4063),s=n(7281);e.exports=function(e){if(null==e)return 0;if(a(e))return i(e)?s(e):e.length;var t=o(e);return"[object Map]"==t||"[object Set]"==t?e.size:r(e).length}},3503:(e,t,n)=>{var r=n(5144),o=n(2499),a=n(9342),i=n(1688),s=a((function(e,t){if(null==e)return[];var n=t.length;return n>1&&i(e,t[0],t[1])?t=[]:n>2&&i(t[0],t[1],t[2])&&(t=[t[0]]),o(e,r(t,1),[])}));e.exports=s},6313:e=>{e.exports=function(){return[]}},1063:e=>{e.exports=function(){return!1}},1792:(e,t,n)=>{var r=n(8966),o=1/0;e.exports=function(e){return e?(e=r(e))===o||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}},7097:(e,t,n)=>{var r=n(1792);e.exports=function(e){var t=r(e),n=t%1;return t==t?n?t-n:t:0}},8966:(e,t,n)=>{var r=n(9272),o=n(6901),a=n(7218),i=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,l=/^0o[0-7]+$/i,c=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(a(e))return NaN;if(o(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=o(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=s.test(e);return n||l.test(e)?c(e.slice(2),n?2:8):i.test(e)?NaN:+e}},6436:(e,t,n)=>{var r=n(6311),o=n(9905);e.exports=function(e){return r(e,o(e))}},6590:(e,t,n)=>{var r=n(9084);e.exports=function(e){return null==e?"":r(e)}},8336:(e,t,n)=>{var r=n(7945),o=n(4360),a=n(2169),i=n(8757),s=n(1719),l=n(7321),c=n(7555),u=n(3314),d=n(6901),p=n(7415);e.exports=function(e,t,n){var h=l(e),A=h||c(e)||p(e);if(t=i(t,4),null==n){var f=e&&e.constructor;n=A?h?new f:[]:d(e)&&u(f)?o(s(e)):{}}return(A?r:a)(e,(function(e,r,o){return t(n,e,r,o)})),n}},9715:(e,t,n)=>{var r=n(5144),o=n(9342),a=n(7165),i=n(2133),s=o((function(e){return a(r(e,1,i,!0))}));e.exports=s},1304:(e,t,n)=>{var r=n(6590),o=0;e.exports=function(e){var t=++o;return r(e)+t}},5872:(e,t,n)=>{var r=n(6874),o=n(5782);e.exports=function(e){return null==e?[]:r(e,o(e))}},8200:(e,t,n)=>{var r=n(6347),o=n(7818);e.exports=function(e,t){return o(e||[],t||[],r)}},772:e=>{"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,o){for(var a,i,s=function(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(e),l=1;l<arguments.length;l++){for(var c in a=Object(arguments[l]))n.call(a,c)&&(s[c]=a[c]);if(t){i=t(a);for(var u=0;u<i.length;u++)r.call(a,i[u])&&(s[i[u]]=a[i[u]])}}return s}},878:(e,t,n)=>{"use strict";var r=n(8565);function o(){}function a(){}a.resetWarningCache=o,e.exports=function(){function e(e,t,n,o,a,i){if(i!==r){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:a,resetWarningCache:o};return n.PropTypes=n,n}},764:(e,t,n)=>{e.exports=n(878)()},8565:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},3903:(e,t,n)=>{"use strict";var r=n(7460),o=n(772),a=n(9798);function i(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}if(!r)throw Error(i(227));var s=new Set,l={};function c(e,t){u(e,t),u(e+"Capture",t)}function u(e,t){for(l[e]=t,e=0;e<t.length;e++)s.add(t[e])}var d=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),p=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,h=Object.prototype.hasOwnProperty,A={},f={};function g(e,t,n,r,o,a,i){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=r,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=a,this.removeEmptyString=i}var m={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e){m[e]=new g(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((function(e){var t=e[0];m[t]=new g(t,1,!1,e[1],null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((function(e){m[e]=new g(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((function(e){m[e]=new g(e,2,!1,e,null,!1,!1)})),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach((function(e){m[e]=new g(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((function(e){m[e]=new g(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((function(e){m[e]=new g(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((function(e){m[e]=new g(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((function(e){m[e]=new g(e,5,!1,e.toLowerCase(),null,!1,!1)}));var C=/[\-:]([a-z])/g;function b(e){return e[1].toUpperCase()}function v(e,t,n,r){var o=m.hasOwnProperty(t)?m[t]:null;(null!==o?0===o.type:!r&&2<t.length&&("o"===t[0]||"O"===t[0])&&("n"===t[1]||"N"===t[1]))||(function(e,t,n,r){if(null==t||function(e,t,n,r){if(null!==n&&0===n.type)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return!r&&(null!==n?!n.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,t,n,r))return!0;if(r)return!1;if(null!==n)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}(t,n,o,r)&&(n=null),r||null===o?function(e){return!!h.call(f,e)||!h.call(A,e)&&(p.test(e)?f[e]=!0:(A[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):o.mustUseProperty?e[o.propertyName]=null===n?3!==o.type&&"":n:(t=o.attributeName,r=o.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(o=o.type)||4===o&&!0===n?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach((function(e){var t=e.replace(C,b);m[t]=new g(t,1,!1,e,null,!1,!1)})),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function(e){var t=e.replace(C,b);m[t]=new g(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((function(e){var t=e.replace(C,b);m[t]=new g(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((function(e){m[e]=new g(e,1,!1,e.toLowerCase(),null,!1,!1)})),m.xlinkHref=new g("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((function(e){m[e]=new g(e,1,!1,e.toLowerCase(),null,!0,!0)}));var y=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,x=60103,w=60106,M=60107,k=60108,N=60114,_=60109,S=60110,L=60112,B=60113,D=60120,I=60115,j=60116,E=60121,T=60128,O=60129,P=60130,z=60131;if("function"==typeof Symbol&&Symbol.for){var R=Symbol.for;x=R("react.element"),w=R("react.portal"),M=R("react.fragment"),k=R("react.strict_mode"),N=R("react.profiler"),_=R("react.provider"),S=R("react.context"),L=R("react.forward_ref"),B=R("react.suspense"),D=R("react.suspense_list"),I=R("react.memo"),j=R("react.lazy"),E=R("react.block"),R("react.scope"),T=R("react.opaque.id"),O=R("react.debug_trace_mode"),P=R("react.offscreen"),z=R("react.legacy_hidden")}var U,F="function"==typeof Symbol&&Symbol.iterator;function Y(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=F&&e[F]||e["@@iterator"])?e:null}function V(e){if(void 0===U)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);U=t&&t[1]||""}return"\n"+U+e}var G=!1;function W(e,t){if(!e||G)return"";G=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(t,[])}catch(e){var r=e}Reflect.construct(e,[],t)}else{try{t.call()}catch(e){r=e}e.call(t.prototype)}else{try{throw Error()}catch(e){r=e}e()}}catch(e){if(e&&r&&"string"==typeof e.stack){for(var o=e.stack.split("\n"),a=r.stack.split("\n"),i=o.length-1,s=a.length-1;1<=i&&0<=s&&o[i]!==a[s];)s--;for(;1<=i&&0<=s;i--,s--)if(o[i]!==a[s]){if(1!==i||1!==s)do{if(i--,0>--s||o[i]!==a[s])return"\n"+o[i].replace(" at new "," at ")}while(1<=i&&0<=s);break}}}finally{G=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?V(e):""}function H(e){switch(e.tag){case 5:return V(e.type);case 16:return V("Lazy");case 13:return V("Suspense");case 19:return V("SuspenseList");case 0:case 2:case 15:return W(e.type,!1);case 11:return W(e.type.render,!1);case 22:return W(e.type._render,!1);case 1:return W(e.type,!0);default:return""}}function Q(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case M:return"Fragment";case w:return"Portal";case N:return"Profiler";case k:return"StrictMode";case B:return"Suspense";case D:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case S:return(e.displayName||"Context")+".Consumer";case _:return(e._context.displayName||"Context")+".Provider";case L:var t=e.render;return t=t.displayName||t.name||"",e.displayName||(""!==t?"ForwardRef("+t+")":"ForwardRef");case I:return Q(e.type);case E:return Q(e._render);case j:t=e._payload,e=e._init;try{return Q(e(t))}catch(e){}}return null}function Z(e){switch(typeof e){case"boolean":case"number":case"object":case"string":case"undefined":return e;default:return""}}function q(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function X(e){e._valueTracker||(e._valueTracker=function(e){var t=q(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&void 0!==n&&"function"==typeof n.get&&"function"==typeof n.set){var o=n.get,a=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(e){r=""+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function J(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=q(e)?e.checked?"true":"false":e.value),(e=r)!==n&&(t.setValue(e),!0)}function K(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}function $(e,t){var n=t.checked;return o({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function ee(e,t){var n=null==t.defaultValue?"":t.defaultValue,r=null!=t.checked?t.checked:t.defaultChecked;n=Z(null!=t.value?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function te(e,t){null!=(t=t.checked)&&v(e,"checked",t,!1)}function ne(e,t){te(e,t);var n=Z(t.value),r=t.type;if(null!=n)"number"===r?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if("submit"===r||"reset"===r)return void e.removeAttribute("value");t.hasOwnProperty("value")?oe(e,t.type,n):t.hasOwnProperty("defaultValue")&&oe(e,t.type,Z(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function re(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!("submit"!==r&&"reset"!==r||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}""!==(n=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==n&&(e.name=n)}function oe(e,t,n){"number"===t&&K(e.ownerDocument)===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}function ae(e,t){return e=o({children:void 0},t),(t=function(e){var t="";return r.Children.forEach(e,(function(e){null!=e&&(t+=e)})),t}(t.children))&&(e.children=t),e}function ie(e,t,n,r){if(e=e.options,t){t={};for(var o=0;o<n.length;o++)t["$"+n[o]]=!0;for(n=0;n<e.length;n++)o=t.hasOwnProperty("$"+e[n].value),e[n].selected!==o&&(e[n].selected=o),o&&r&&(e[n].defaultSelected=!0)}else{for(n=""+Z(n),t=null,o=0;o<e.length;o++){if(e[o].value===n)return e[o].selected=!0,void(r&&(e[o].defaultSelected=!0));null!==t||e[o].disabled||(t=e[o])}null!==t&&(t.selected=!0)}}function se(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(i(91));return o({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function le(e,t){var n=t.value;if(null==n){if(n=t.children,t=t.defaultValue,null!=n){if(null!=t)throw Error(i(92));if(Array.isArray(n)){if(!(1>=n.length))throw Error(i(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:Z(n)}}function ce(e,t){var n=Z(t.value),r=Z(t.defaultValue);null!=n&&((n=""+n)!==e.value&&(e.value=n),null==t.defaultValue&&e.defaultValue!==n&&(e.defaultValue=n)),null!=r&&(e.defaultValue=""+r)}function ue(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}var de="http://www.w3.org/1999/xhtml";function pe(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function he(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?pe(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var Ae,fe,ge=(fe=function(e,t){if("http://www.w3.org/2000/svg"!==e.namespaceURI||"innerHTML"in e)e.innerHTML=t;else{for((Ae=Ae||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=Ae.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,n,r){MSApp.execUnsafeLocalFunction((function(){return fe(e,t)}))}:fe);function me(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}var Ce={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},be=["Webkit","ms","Moz","O"];function ve(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||Ce.hasOwnProperty(e)&&Ce[e]?(""+t).trim():t+"px"}function ye(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=0===n.indexOf("--"),o=ve(n,t[n],r);"float"===n&&(n="cssFloat"),r?e.setProperty(n,o):e[n]=o}}Object.keys(Ce).forEach((function(e){be.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Ce[t]=Ce[e]}))}));var xe=o({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function we(e,t){if(t){if(xe[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(i(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(i(60));if("object"!=typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(i(61))}if(null!=t.style&&"object"!=typeof t.style)throw Error(i(62))}}function Me(e,t){if(-1===e.indexOf("-"))return"string"==typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}function ke(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var Ne=null,_e=null,Se=null;function Le(e){if(e=to(e)){if("function"!=typeof Ne)throw Error(i(280));var t=e.stateNode;t&&(t=ro(t),Ne(e.stateNode,e.type,t))}}function Be(e){_e?Se?Se.push(e):Se=[e]:_e=e}function De(){if(_e){var e=_e,t=Se;if(Se=_e=null,Le(e),t)for(e=0;e<t.length;e++)Le(t[e])}}function Ie(e,t){return e(t)}function je(e,t,n,r,o){return e(t,n,r,o)}function Ee(){}var Te=Ie,Oe=!1,Pe=!1;function ze(){null===_e&&null===Se||(Ee(),De())}function Re(e,t){var n=e.stateNode;if(null===n)return null;var r=ro(n);if(null===r)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(r=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!r;break e;default:e=!1}if(e)return null;if(n&&"function"!=typeof n)throw Error(i(231,t,typeof n));return n}var Ue=!1;if(d)try{var Fe={};Object.defineProperty(Fe,"passive",{get:function(){Ue=!0}}),window.addEventListener("test",Fe,Fe),window.removeEventListener("test",Fe,Fe)}catch(fe){Ue=!1}function Ye(e,t,n,r,o,a,i,s,l){var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(e){this.onError(e)}}var Ve=!1,Ge=null,We=!1,He=null,Qe={onError:function(e){Ve=!0,Ge=e}};function Ze(e,t,n,r,o,a,i,s,l){Ve=!1,Ge=null,Ye.apply(Qe,arguments)}function qe(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{!!(1026&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function Xe(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&null!==(e=e.alternate)&&(t=e.memoizedState),null!==t)return t.dehydrated}return null}function Je(e){if(qe(e)!==e)throw Error(i(188))}function Ke(e,t){for(var n=e.alternate;null!==t;){if(t===e||t===n)return!0;t=t.return}return!1}var $e,et,tt,nt,rt=!1,ot=[],at=null,it=null,st=null,lt=new Map,ct=new Map,ut=[],dt="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function pt(e,t,n,r,o){return{blockedOn:e,domEventName:t,eventSystemFlags:16|n,nativeEvent:o,targetContainers:[r]}}function ht(e,t){switch(e){case"focusin":case"focusout":at=null;break;case"dragenter":case"dragleave":it=null;break;case"mouseover":case"mouseout":st=null;break;case"pointerover":case"pointerout":lt.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":ct.delete(t.pointerId)}}function At(e,t,n,r,o,a){return null===e||e.nativeEvent!==a?(e=pt(t,n,r,o,a),null!==t&&null!==(t=to(t))&&et(t),e):(e.eventSystemFlags|=r,t=e.targetContainers,null!==o&&-1===t.indexOf(o)&&t.push(o),e)}function ft(e){var t=eo(e.target);if(null!==t){var n=qe(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=Xe(n)))return e.blockedOn=t,void nt(e.lanePriority,(function(){a.unstable_runWithPriority(e.priority,(function(){tt(n)}))}))}else if(3===t&&n.stateNode.hydrate)return void(e.blockedOn=3===n.tag?n.stateNode.containerInfo:null)}e.blockedOn=null}function gt(e){if(null!==e.blockedOn)return!1;for(var t=e.targetContainers;0<t.length;){var n=Jt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n)return null!==(t=to(n))&&et(t),e.blockedOn=n,!1;t.shift()}return!0}function mt(e,t,n){gt(e)&&n.delete(t)}function Ct(){for(rt=!1;0<ot.length;){var e=ot[0];if(null!==e.blockedOn){null!==(e=to(e.blockedOn))&&$e(e);break}for(var t=e.targetContainers;0<t.length;){var n=Jt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n){e.blockedOn=n;break}t.shift()}null===e.blockedOn&&ot.shift()}null!==at&>(at)&&(at=null),null!==it&>(it)&&(it=null),null!==st&>(st)&&(st=null),lt.forEach(mt),ct.forEach(mt)}function bt(e,t){e.blockedOn===t&&(e.blockedOn=null,rt||(rt=!0,a.unstable_scheduleCallback(a.unstable_NormalPriority,Ct)))}function vt(e){function t(t){return bt(t,e)}if(0<ot.length){bt(ot[0],e);for(var n=1;n<ot.length;n++){var r=ot[n];r.blockedOn===e&&(r.blockedOn=null)}}for(null!==at&&bt(at,e),null!==it&&bt(it,e),null!==st&&bt(st,e),lt.forEach(t),ct.forEach(t),n=0;n<ut.length;n++)(r=ut[n]).blockedOn===e&&(r.blockedOn=null);for(;0<ut.length&&null===(n=ut[0]).blockedOn;)ft(n),null===n.blockedOn&&ut.shift()}function yt(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var xt={animationend:yt("Animation","AnimationEnd"),animationiteration:yt("Animation","AnimationIteration"),animationstart:yt("Animation","AnimationStart"),transitionend:yt("Transition","TransitionEnd")},wt={},Mt={};function kt(e){if(wt[e])return wt[e];if(!xt[e])return e;var t,n=xt[e];for(t in n)if(n.hasOwnProperty(t)&&t in Mt)return wt[e]=n[t];return e}d&&(Mt=document.createElement("div").style,"AnimationEvent"in window||(delete xt.animationend.animation,delete xt.animationiteration.animation,delete xt.animationstart.animation),"TransitionEvent"in window||delete xt.transitionend.transition);var Nt=kt("animationend"),_t=kt("animationiteration"),St=kt("animationstart"),Lt=kt("transitionend"),Bt=new Map,Dt=new Map,It=["abort","abort",Nt,"animationEnd",_t,"animationIteration",St,"animationStart","canplay","canPlay","canplaythrough","canPlayThrough","durationchange","durationChange","emptied","emptied","encrypted","encrypted","ended","ended","error","error","gotpointercapture","gotPointerCapture","load","load","loadeddata","loadedData","loadedmetadata","loadedMetadata","loadstart","loadStart","lostpointercapture","lostPointerCapture","playing","playing","progress","progress","seeking","seeking","stalled","stalled","suspend","suspend","timeupdate","timeUpdate",Lt,"transitionEnd","waiting","waiting"];function jt(e,t){for(var n=0;n<e.length;n+=2){var r=e[n],o=e[n+1];o="on"+(o[0].toUpperCase()+o.slice(1)),Dt.set(r,t),Bt.set(r,o),c(o,[r])}}(0,a.unstable_now)();var Et=8;function Tt(e){if(1&e)return Et=15,1;if(2&e)return Et=14,2;if(4&e)return Et=13,4;var t=24&e;return 0!==t?(Et=12,t):32&e?(Et=11,32):0!=(t=192&e)?(Et=10,t):256&e?(Et=9,256):0!=(t=3584&e)?(Et=8,t):4096&e?(Et=7,4096):0!=(t=4186112&e)?(Et=6,t):0!=(t=62914560&e)?(Et=5,t):67108864&e?(Et=4,67108864):134217728&e?(Et=3,134217728):0!=(t=805306368&e)?(Et=2,t):1073741824&e?(Et=1,1073741824):(Et=8,e)}function Ot(e,t){var n=e.pendingLanes;if(0===n)return Et=0;var r=0,o=0,a=e.expiredLanes,i=e.suspendedLanes,s=e.pingedLanes;if(0!==a)r=a,o=Et=15;else if(0!=(a=134217727&n)){var l=a&~i;0!==l?(r=Tt(l),o=Et):0!=(s&=a)&&(r=Tt(s),o=Et)}else 0!=(a=n&~i)?(r=Tt(a),o=Et):0!==s&&(r=Tt(s),o=Et);if(0===r)return 0;if(r=n&((0>(r=31-Yt(r))?0:1<<r)<<1)-1,0!==t&&t!==r&&!(t&i)){if(Tt(t),o<=Et)return t;Et=o}if(0!==(t=e.entangledLanes))for(e=e.entanglements,t&=r;0<t;)o=1<<(n=31-Yt(t)),r|=e[n],t&=~o;return r}function Pt(e){return 0!=(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function zt(e,t){switch(e){case 15:return 1;case 14:return 2;case 12:return 0===(e=Rt(24&~t))?zt(10,t):e;case 10:return 0===(e=Rt(192&~t))?zt(8,t):e;case 8:return 0===(e=Rt(3584&~t))&&0===(e=Rt(4186112&~t))&&(e=512),e;case 2:return 0===(t=Rt(805306368&~t))&&(t=268435456),t}throw Error(i(358,e))}function Rt(e){return e&-e}function Ut(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Ft(e,t,n){e.pendingLanes|=t;var r=t-1;e.suspendedLanes&=r,e.pingedLanes&=r,(e=e.eventTimes)[t=31-Yt(t)]=n}var Yt=Math.clz32?Math.clz32:function(e){return 0===e?32:31-(Vt(e)/Gt|0)|0},Vt=Math.log,Gt=Math.LN2,Wt=a.unstable_UserBlockingPriority,Ht=a.unstable_runWithPriority,Qt=!0;function Zt(e,t,n,r){Oe||Ee();var o=Xt,a=Oe;Oe=!0;try{je(o,e,t,n,r)}finally{(Oe=a)||ze()}}function qt(e,t,n,r){Ht(Wt,Xt.bind(null,e,t,n,r))}function Xt(e,t,n,r){var o;if(Qt)if((o=!(4&t))&&0<ot.length&&-1<dt.indexOf(e))e=pt(null,e,t,n,r),ot.push(e);else{var a=Jt(e,t,n,r);if(null===a)o&&ht(e,r);else{if(o){if(-1<dt.indexOf(e))return e=pt(a,e,t,n,r),void ot.push(e);if(function(e,t,n,r,o){switch(t){case"focusin":return at=At(at,e,t,n,r,o),!0;case"dragenter":return it=At(it,e,t,n,r,o),!0;case"mouseover":return st=At(st,e,t,n,r,o),!0;case"pointerover":var a=o.pointerId;return lt.set(a,At(lt.get(a)||null,e,t,n,r,o)),!0;case"gotpointercapture":return a=o.pointerId,ct.set(a,At(ct.get(a)||null,e,t,n,r,o)),!0}return!1}(a,e,t,n,r))return;ht(e,r)}jr(e,t,r,null,n)}}}function Jt(e,t,n,r){var o=ke(r);if(null!==(o=eo(o))){var a=qe(o);if(null===a)o=null;else{var i=a.tag;if(13===i){if(null!==(o=Xe(a)))return o;o=null}else if(3===i){if(a.stateNode.hydrate)return 3===a.tag?a.stateNode.containerInfo:null;o=null}else a!==o&&(o=null)}}return jr(e,t,r,o,n),null}var Kt=null,$t=null,en=null;function tn(){if(en)return en;var e,t,n=$t,r=n.length,o="value"in Kt?Kt.value:Kt.textContent,a=o.length;for(e=0;e<r&&n[e]===o[e];e++);var i=r-e;for(t=1;t<=i&&n[r-t]===o[a-t];t++);return en=o.slice(e,1<t?1-t:void 0)}function nn(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}function rn(){return!0}function on(){return!1}function an(e){function t(t,n,r,o,a){for(var i in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=o,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(i)&&(t=e[i],this[i]=t?t(o):o[i]);return this.isDefaultPrevented=(null!=o.defaultPrevented?o.defaultPrevented:!1===o.returnValue)?rn:on,this.isPropagationStopped=on,this}return o(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=rn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=rn)},persist:function(){},isPersistent:rn}),t}var sn,ln,cn,un={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},dn=an(un),pn=o({},un,{view:0,detail:0}),hn=an(pn),An=o({},pn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Nn,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==cn&&(cn&&"mousemove"===e.type?(sn=e.screenX-cn.screenX,ln=e.screenY-cn.screenY):ln=sn=0,cn=e),sn)},movementY:function(e){return"movementY"in e?e.movementY:ln}}),fn=an(An),gn=an(o({},An,{dataTransfer:0})),mn=an(o({},pn,{relatedTarget:0})),Cn=an(o({},un,{animationName:0,elapsedTime:0,pseudoElement:0})),bn=o({},un,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),vn=an(bn),yn=an(o({},un,{data:0})),xn={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},wn={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Mn={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function kn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=Mn[e])&&!!t[e]}function Nn(){return kn}var _n=o({},pn,{key:function(e){if(e.key){var t=xn[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=nn(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?wn[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Nn,charCode:function(e){return"keypress"===e.type?nn(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?nn(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),Sn=an(_n),Ln=an(o({},An,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Bn=an(o({},pn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Nn})),Dn=an(o({},un,{propertyName:0,elapsedTime:0,pseudoElement:0})),In=o({},An,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),jn=an(In),En=[9,13,27,32],Tn=d&&"CompositionEvent"in window,On=null;d&&"documentMode"in document&&(On=document.documentMode);var Pn=d&&"TextEvent"in window&&!On,zn=d&&(!Tn||On&&8<On&&11>=On),Rn=String.fromCharCode(32),Un=!1;function Fn(e,t){switch(e){case"keyup":return-1!==En.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Yn(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var Vn=!1,Gn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Wn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Gn[e.type]:"textarea"===t}function Hn(e,t,n,r){Be(r),0<(t=Tr(t,"onChange")).length&&(n=new dn("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Qn=null,Zn=null;function qn(e){_r(e,0)}function Xn(e){if(J(no(e)))return e}function Jn(e,t){if("change"===e)return t}var Kn=!1;if(d){var $n;if(d){var er="oninput"in document;if(!er){var tr=document.createElement("div");tr.setAttribute("oninput","return;"),er="function"==typeof tr.oninput}$n=er}else $n=!1;Kn=$n&&(!document.documentMode||9<document.documentMode)}function nr(){Qn&&(Qn.detachEvent("onpropertychange",rr),Zn=Qn=null)}function rr(e){if("value"===e.propertyName&&Xn(Zn)){var t=[];if(Hn(t,Zn,e,ke(e)),e=qn,Oe)e(t);else{Oe=!0;try{Ie(e,t)}finally{Oe=!1,ze()}}}}function or(e,t,n){"focusin"===e?(nr(),Zn=n,(Qn=t).attachEvent("onpropertychange",rr)):"focusout"===e&&nr()}function ar(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return Xn(Zn)}function ir(e,t){if("click"===e)return Xn(t)}function sr(e,t){if("input"===e||"change"===e)return Xn(t)}var lr="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},cr=Object.prototype.hasOwnProperty;function ur(e,t){if(lr(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++)if(!cr.call(t,n[r])||!lr(e[n[r]],t[n[r]]))return!1;return!0}function dr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function pr(e,t){var n,r=dr(e);for(e=0;r;){if(3===r.nodeType){if(n=e+r.textContent.length,e<=t&&n>=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=dr(r)}}function hr(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?hr(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function Ar(){for(var e=window,t=K();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(e){n=!1}if(!n)break;t=K((e=t.contentWindow).document)}return t}function fr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}var gr=d&&"documentMode"in document&&11>=document.documentMode,mr=null,Cr=null,br=null,vr=!1;function yr(e,t,n){var r=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;vr||null==mr||mr!==K(r)||(r="selectionStart"in(r=mr)&&fr(r)?{start:r.selectionStart,end:r.selectionEnd}:{anchorNode:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset},br&&ur(br,r)||(br=r,0<(r=Tr(Cr,"onSelect")).length&&(t=new dn("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=mr)))}jt("cancel cancel click click close close contextmenu contextMenu copy copy cut cut auxclick auxClick dblclick doubleClick dragend dragEnd dragstart dragStart drop drop focusin focus focusout blur input input invalid invalid keydown keyDown keypress keyPress keyup keyUp mousedown mouseDown mouseup mouseUp paste paste pause pause play play pointercancel pointerCancel pointerdown pointerDown pointerup pointerUp ratechange rateChange reset reset seeked seeked submit submit touchcancel touchCancel touchend touchEnd touchstart touchStart volumechange volumeChange".split(" "),0),jt("drag drag dragenter dragEnter dragexit dragExit dragleave dragLeave dragover dragOver mousemove mouseMove mouseout mouseOut mouseover mouseOver pointermove pointerMove pointerout pointerOut pointerover pointerOver scroll scroll toggle toggle touchmove touchMove wheel wheel".split(" "),1),jt(It,2);for(var xr="change selectionchange textInput compositionstart compositionend compositionupdate".split(" "),wr=0;wr<xr.length;wr++)Dt.set(xr[wr],0);u("onMouseEnter",["mouseout","mouseover"]),u("onMouseLeave",["mouseout","mouseover"]),u("onPointerEnter",["pointerout","pointerover"]),u("onPointerLeave",["pointerout","pointerover"]),c("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),c("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),c("onBeforeInput",["compositionend","keypress","textInput","paste"]),c("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),c("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),c("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Mr="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),kr=new Set("cancel close invalid load scroll toggle".split(" ").concat(Mr));function Nr(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,function(e,t,n,r,o,a,s,l,c){if(Ze.apply(this,arguments),Ve){if(!Ve)throw Error(i(198));var u=Ge;Ve=!1,Ge=null,We||(We=!0,He=u)}}(r,t,void 0,e),e.currentTarget=null}function _r(e,t){t=!!(4&t);for(var n=0;n<e.length;n++){var r=e[n],o=r.event;r=r.listeners;e:{var a=void 0;if(t)for(var i=r.length-1;0<=i;i--){var s=r[i],l=s.instance,c=s.currentTarget;if(s=s.listener,l!==a&&o.isPropagationStopped())break e;Nr(o,s,c),a=l}else for(i=0;i<r.length;i++){if(l=(s=r[i]).instance,c=s.currentTarget,s=s.listener,l!==a&&o.isPropagationStopped())break e;Nr(o,s,c),a=l}}}if(We)throw e=He,We=!1,He=null,e}function Sr(e,t){var n=oo(t),r=e+"__bubble";n.has(r)||(Ir(t,e,2,!1),n.add(r))}var Lr="_reactListening"+Math.random().toString(36).slice(2);function Br(e){e[Lr]||(e[Lr]=!0,s.forEach((function(t){kr.has(t)||Dr(t,!1,e,null),Dr(t,!0,e,null)})))}function Dr(e,t,n,r){var o=4<arguments.length&&void 0!==arguments[4]?arguments[4]:0,a=n;if("selectionchange"===e&&9!==n.nodeType&&(a=n.ownerDocument),null!==r&&!t&&kr.has(e)){if("scroll"!==e)return;o|=2,a=r}var i=oo(a),s=e+"__"+(t?"capture":"bubble");i.has(s)||(t&&(o|=4),Ir(a,e,o,t),i.add(s))}function Ir(e,t,n,r){var o=Dt.get(t);switch(void 0===o?2:o){case 0:o=Zt;break;case 1:o=qt;break;default:o=Xt}n=o.bind(null,t,n,e),o=void 0,!Ue||"touchstart"!==t&&"touchmove"!==t&&"wheel"!==t||(o=!0),r?void 0!==o?e.addEventListener(t,n,{capture:!0,passive:o}):e.addEventListener(t,n,!0):void 0!==o?e.addEventListener(t,n,{passive:o}):e.addEventListener(t,n,!1)}function jr(e,t,n,r,o){var a=r;if(!(1&t||2&t||null===r))e:for(;;){if(null===r)return;var i=r.tag;if(3===i||4===i){var s=r.stateNode.containerInfo;if(s===o||8===s.nodeType&&s.parentNode===o)break;if(4===i)for(i=r.return;null!==i;){var l=i.tag;if((3===l||4===l)&&((l=i.stateNode.containerInfo)===o||8===l.nodeType&&l.parentNode===o))return;i=i.return}for(;null!==s;){if(null===(i=eo(s)))return;if(5===(l=i.tag)||6===l){r=a=i;continue e}s=s.parentNode}}r=r.return}!function(e,t,n){if(Pe)return e();Pe=!0;try{return Te(e,t,n)}finally{Pe=!1,ze()}}((function(){var r=a,o=ke(n),i=[];e:{var s=Bt.get(e);if(void 0!==s){var l=dn,c=e;switch(e){case"keypress":if(0===nn(n))break e;case"keydown":case"keyup":l=Sn;break;case"focusin":c="focus",l=mn;break;case"focusout":c="blur",l=mn;break;case"beforeblur":case"afterblur":l=mn;break;case"click":if(2===n.button)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":l=fn;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":l=gn;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":l=Bn;break;case Nt:case _t:case St:l=Cn;break;case Lt:l=Dn;break;case"scroll":l=hn;break;case"wheel":l=jn;break;case"copy":case"cut":case"paste":l=vn;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":l=Ln}var u=!!(4&t),d=!u&&"scroll"===e,p=u?null!==s?s+"Capture":null:s;u=[];for(var h,A=r;null!==A;){var f=(h=A).stateNode;if(5===h.tag&&null!==f&&(h=f,null!==p&&null!=(f=Re(A,p))&&u.push(Er(A,f,h))),d)break;A=A.return}0<u.length&&(s=new l(s,c,null,n,o),i.push({event:s,listeners:u}))}}if(!(7&t)){if(l="mouseout"===e||"pointerout"===e,(!(s="mouseover"===e||"pointerover"===e)||16&t||!(c=n.relatedTarget||n.fromElement)||!eo(c)&&!c[Kr])&&(l||s)&&(s=o.window===o?o:(s=o.ownerDocument)?s.defaultView||s.parentWindow:window,l?(l=r,null!==(c=(c=n.relatedTarget||n.toElement)?eo(c):null)&&(c!==(d=qe(c))||5!==c.tag&&6!==c.tag)&&(c=null)):(l=null,c=r),l!==c)){if(u=fn,f="onMouseLeave",p="onMouseEnter",A="mouse","pointerout"!==e&&"pointerover"!==e||(u=Ln,f="onPointerLeave",p="onPointerEnter",A="pointer"),d=null==l?s:no(l),h=null==c?s:no(c),(s=new u(f,A+"leave",l,n,o)).target=d,s.relatedTarget=h,f=null,eo(o)===r&&((u=new u(p,A+"enter",c,n,o)).target=h,u.relatedTarget=d,f=u),d=f,l&&c)e:{for(p=c,A=0,h=u=l;h;h=Or(h))A++;for(h=0,f=p;f;f=Or(f))h++;for(;0<A-h;)u=Or(u),A--;for(;0<h-A;)p=Or(p),h--;for(;A--;){if(u===p||null!==p&&u===p.alternate)break e;u=Or(u),p=Or(p)}u=null}else u=null;null!==l&&Pr(i,s,l,u,!1),null!==c&&null!==d&&Pr(i,d,c,u,!0)}if("select"===(l=(s=r?no(r):window).nodeName&&s.nodeName.toLowerCase())||"input"===l&&"file"===s.type)var g=Jn;else if(Wn(s))if(Kn)g=sr;else{g=ar;var m=or}else(l=s.nodeName)&&"input"===l.toLowerCase()&&("checkbox"===s.type||"radio"===s.type)&&(g=ir);switch(g&&(g=g(e,r))?Hn(i,g,n,o):(m&&m(e,s,r),"focusout"===e&&(m=s._wrapperState)&&m.controlled&&"number"===s.type&&oe(s,"number",s.value)),m=r?no(r):window,e){case"focusin":(Wn(m)||"true"===m.contentEditable)&&(mr=m,Cr=r,br=null);break;case"focusout":br=Cr=mr=null;break;case"mousedown":vr=!0;break;case"contextmenu":case"mouseup":case"dragend":vr=!1,yr(i,n,o);break;case"selectionchange":if(gr)break;case"keydown":case"keyup":yr(i,n,o)}var C;if(Tn)e:{switch(e){case"compositionstart":var b="onCompositionStart";break e;case"compositionend":b="onCompositionEnd";break e;case"compositionupdate":b="onCompositionUpdate";break e}b=void 0}else Vn?Fn(e,n)&&(b="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(b="onCompositionStart");b&&(zn&&"ko"!==n.locale&&(Vn||"onCompositionStart"!==b?"onCompositionEnd"===b&&Vn&&(C=tn()):($t="value"in(Kt=o)?Kt.value:Kt.textContent,Vn=!0)),0<(m=Tr(r,b)).length&&(b=new yn(b,e,null,n,o),i.push({event:b,listeners:m}),(C||null!==(C=Yn(n)))&&(b.data=C))),(C=Pn?function(e,t){switch(e){case"compositionend":return Yn(t);case"keypress":return 32!==t.which?null:(Un=!0,Rn);case"textInput":return(e=t.data)===Rn&&Un?null:e;default:return null}}(e,n):function(e,t){if(Vn)return"compositionend"===e||!Tn&&Fn(e,t)?(e=tn(),en=$t=Kt=null,Vn=!1,e):null;switch(e){case"paste":default:return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return zn&&"ko"!==t.locale?null:t.data}}(e,n))&&0<(r=Tr(r,"onBeforeInput")).length&&(o=new yn("onBeforeInput","beforeinput",null,n,o),i.push({event:o,listeners:r}),o.data=C)}_r(i,t)}))}function Er(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Tr(e,t){for(var n=t+"Capture",r=[];null!==e;){var o=e,a=o.stateNode;5===o.tag&&null!==a&&(o=a,null!=(a=Re(e,n))&&r.unshift(Er(e,a,o)),null!=(a=Re(e,t))&&r.push(Er(e,a,o))),e=e.return}return r}function Or(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function Pr(e,t,n,r,o){for(var a=t._reactName,i=[];null!==n&&n!==r;){var s=n,l=s.alternate,c=s.stateNode;if(null!==l&&l===r)break;5===s.tag&&null!==c&&(s=c,o?null!=(l=Re(n,a))&&i.unshift(Er(n,l,s)):o||null!=(l=Re(n,a))&&i.push(Er(n,l,s))),n=n.return}0!==i.length&&e.push({event:t,listeners:i})}function zr(){}var Rr=null,Ur=null;function Fr(e,t){switch(e){case"button":case"input":case"select":case"textarea":return!!t.autoFocus}return!1}function Yr(e,t){return"textarea"===e||"option"===e||"noscript"===e||"string"==typeof t.children||"number"==typeof t.children||"object"==typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var Vr="function"==typeof setTimeout?setTimeout:void 0,Gr="function"==typeof clearTimeout?clearTimeout:void 0;function Wr(e){(1===e.nodeType||9===e.nodeType&&null!=(e=e.body))&&(e.textContent="")}function Hr(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break}return e}function Qr(e){e=e.previousSibling;for(var t=0;e;){if(8===e.nodeType){var n=e.data;if("$"===n||"$!"===n||"$?"===n){if(0===t)return e;t--}else"/$"===n&&t++}e=e.previousSibling}return null}var Zr=0,qr=Math.random().toString(36).slice(2),Xr="__reactFiber$"+qr,Jr="__reactProps$"+qr,Kr="__reactContainer$"+qr,$r="__reactEvents$"+qr;function eo(e){var t=e[Xr];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Kr]||n[Xr]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=Qr(e);null!==e;){if(n=e[Xr])return n;e=Qr(e)}return t}n=(e=n).parentNode}return null}function to(e){return!(e=e[Xr]||e[Kr])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function no(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(i(33))}function ro(e){return e[Jr]||null}function oo(e){var t=e[$r];return void 0===t&&(t=e[$r]=new Set),t}var ao=[],io=-1;function so(e){return{current:e}}function lo(e){0>io||(e.current=ao[io],ao[io]=null,io--)}function co(e,t){io++,ao[io]=e.current,e.current=t}var uo={},po=so(uo),ho=so(!1),Ao=uo;function fo(e,t){var n=e.type.contextTypes;if(!n)return uo;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var o,a={};for(o in n)a[o]=t[o];return r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=a),a}function go(e){return null!=e.childContextTypes}function mo(){lo(ho),lo(po)}function Co(e,t,n){if(po.current!==uo)throw Error(i(168));co(po,t),co(ho,n)}function bo(e,t,n){var r=e.stateNode;if(e=t.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var a in r=r.getChildContext())if(!(a in e))throw Error(i(108,Q(t)||"Unknown",a));return o({},n,r)}function vo(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||uo,Ao=po.current,co(po,e),co(ho,ho.current),!0}function yo(e,t,n){var r=e.stateNode;if(!r)throw Error(i(169));n?(e=bo(e,t,Ao),r.__reactInternalMemoizedMergedChildContext=e,lo(ho),lo(po),co(po,e)):lo(ho),co(ho,n)}var xo=null,wo=null,Mo=a.unstable_runWithPriority,ko=a.unstable_scheduleCallback,No=a.unstable_cancelCallback,_o=a.unstable_shouldYield,So=a.unstable_requestPaint,Lo=a.unstable_now,Bo=a.unstable_getCurrentPriorityLevel,Do=a.unstable_ImmediatePriority,Io=a.unstable_UserBlockingPriority,jo=a.unstable_NormalPriority,Eo=a.unstable_LowPriority,To=a.unstable_IdlePriority,Oo={},Po=void 0!==So?So:function(){},zo=null,Ro=null,Uo=!1,Fo=Lo(),Yo=1e4>Fo?Lo:function(){return Lo()-Fo};function Vo(){switch(Bo()){case Do:return 99;case Io:return 98;case jo:return 97;case Eo:return 96;case To:return 95;default:throw Error(i(332))}}function Go(e){switch(e){case 99:return Do;case 98:return Io;case 97:return jo;case 96:return Eo;case 95:return To;default:throw Error(i(332))}}function Wo(e,t){return e=Go(e),Mo(e,t)}function Ho(e,t,n){return e=Go(e),ko(e,t,n)}function Qo(){if(null!==Ro){var e=Ro;Ro=null,No(e)}Zo()}function Zo(){if(!Uo&&null!==zo){Uo=!0;var e=0;try{var t=zo;Wo(99,(function(){for(;e<t.length;e++){var n=t[e];do{n=n(!0)}while(null!==n)}})),zo=null}catch(t){throw null!==zo&&(zo=zo.slice(e+1)),ko(Do,Qo),t}finally{Uo=!1}}}var qo=y.ReactCurrentBatchConfig;function Xo(e,t){if(e&&e.defaultProps){for(var n in t=o({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}return t}var Jo=so(null),Ko=null,$o=null,ea=null;function ta(){ea=$o=Ko=null}function na(e){var t=Jo.current;lo(Jo),e.type._context._currentValue=t}function ra(e,t){for(;null!==e;){var n=e.alternate;if((e.childLanes&t)===t){if(null===n||(n.childLanes&t)===t)break;n.childLanes|=t}else e.childLanes|=t,null!==n&&(n.childLanes|=t);e=e.return}}function oa(e,t){Ko=e,ea=$o=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(!!(e.lanes&t)&&(Ti=!0),e.firstContext=null)}function aa(e,t){if(ea!==e&&!1!==t&&0!==t)if("number"==typeof t&&1073741823!==t||(ea=e,t=1073741823),t={context:e,observedBits:t,next:null},null===$o){if(null===Ko)throw Error(i(308));$o=t,Ko.dependencies={lanes:0,firstContext:t,responders:null}}else $o=$o.next=t;return e._currentValue}var ia=!1;function sa(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null},effects:null}}function la(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function ca(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function ua(e,t){if(null!==(e=e.updateQueue)){var n=(e=e.shared).pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}}function da(e,t){var n=e.updateQueue,r=e.alternate;if(null!==r&&n===(r=r.updateQueue)){var o=null,a=null;if(null!==(n=n.firstBaseUpdate)){do{var i={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};null===a?o=a=i:a=a.next=i,n=n.next}while(null!==n);null===a?o=a=t:a=a.next=t}else o=a=t;return n={baseState:r.baseState,firstBaseUpdate:o,lastBaseUpdate:a,shared:r.shared,effects:r.effects},void(e.updateQueue=n)}null===(e=n.lastBaseUpdate)?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function pa(e,t,n,r){var a=e.updateQueue;ia=!1;var i=a.firstBaseUpdate,s=a.lastBaseUpdate,l=a.shared.pending;if(null!==l){a.shared.pending=null;var c=l,u=c.next;c.next=null,null===s?i=u:s.next=u,s=c;var d=e.alternate;if(null!==d){var p=(d=d.updateQueue).lastBaseUpdate;p!==s&&(null===p?d.firstBaseUpdate=u:p.next=u,d.lastBaseUpdate=c)}}if(null!==i){for(p=a.baseState,s=0,d=u=c=null;;){l=i.lane;var h=i.eventTime;if((r&l)===l){null!==d&&(d=d.next={eventTime:h,lane:0,tag:i.tag,payload:i.payload,callback:i.callback,next:null});e:{var A=e,f=i;switch(l=t,h=n,f.tag){case 1:if("function"==typeof(A=f.payload)){p=A.call(h,p,l);break e}p=A;break e;case 3:A.flags=-4097&A.flags|64;case 0:if(null==(l="function"==typeof(A=f.payload)?A.call(h,p,l):A))break e;p=o({},p,l);break e;case 2:ia=!0}}null!==i.callback&&(e.flags|=32,null===(l=a.effects)?a.effects=[i]:l.push(i))}else h={eventTime:h,lane:l,tag:i.tag,payload:i.payload,callback:i.callback,next:null},null===d?(u=d=h,c=p):d=d.next=h,s|=l;if(null===(i=i.next)){if(null===(l=a.shared.pending))break;i=l.next,l.next=null,a.lastBaseUpdate=l,a.shared.pending=null}}null===d&&(c=p),a.baseState=c,a.firstBaseUpdate=u,a.lastBaseUpdate=d,zs|=s,e.lanes=s,e.memoizedState=p}}function ha(e,t,n){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var r=e[t],o=r.callback;if(null!==o){if(r.callback=null,r=n,"function"!=typeof o)throw Error(i(191,o));o.call(r)}}}var Aa=(new r.Component).refs;function fa(e,t,n,r){n=null==(n=n(r,t=e.memoizedState))?t:o({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var ga={isMounted:function(e){return!!(e=e._reactInternals)&&qe(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=cl(),o=ul(e),a=ca(r,o);a.payload=t,null!=n&&(a.callback=n),ua(e,a),dl(e,o,r)},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=cl(),o=ul(e),a=ca(r,o);a.tag=1,a.payload=t,null!=n&&(a.callback=n),ua(e,a),dl(e,o,r)},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=cl(),r=ul(e),o=ca(n,r);o.tag=2,null!=t&&(o.callback=t),ua(e,o),dl(e,r,n)}};function ma(e,t,n,r,o,a,i){return"function"==typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(r,a,i):!(t.prototype&&t.prototype.isPureReactComponent&&ur(n,r)&&ur(o,a))}function Ca(e,t,n){var r=!1,o=uo,a=t.contextType;return"object"==typeof a&&null!==a?a=aa(a):(o=go(t)?Ao:po.current,a=(r=null!=(r=t.contextTypes))?fo(e,o):uo),t=new t(n,a),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=ga,e.stateNode=t,t._reactInternals=e,r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=o,e.__reactInternalMemoizedMaskedChildContext=a),t}function ba(e,t,n,r){e=t.state,"function"==typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,r),"function"==typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&ga.enqueueReplaceState(t,t.state,null)}function va(e,t,n,r){var o=e.stateNode;o.props=n,o.state=e.memoizedState,o.refs=Aa,sa(e);var a=t.contextType;"object"==typeof a&&null!==a?o.context=aa(a):(a=go(t)?Ao:po.current,o.context=fo(e,a)),pa(e,n,o,r),o.state=e.memoizedState,"function"==typeof(a=t.getDerivedStateFromProps)&&(fa(e,t,a,n),o.state=e.memoizedState),"function"==typeof t.getDerivedStateFromProps||"function"==typeof o.getSnapshotBeforeUpdate||"function"!=typeof o.UNSAFE_componentWillMount&&"function"!=typeof o.componentWillMount||(t=o.state,"function"==typeof o.componentWillMount&&o.componentWillMount(),"function"==typeof o.UNSAFE_componentWillMount&&o.UNSAFE_componentWillMount(),t!==o.state&&ga.enqueueReplaceState(o,o.state,null),pa(e,n,o,r),o.state=e.memoizedState),"function"==typeof o.componentDidMount&&(e.flags|=4)}var ya=Array.isArray;function xa(e,t,n){if(null!==(e=n.ref)&&"function"!=typeof e&&"object"!=typeof e){if(n._owner){if(n=n._owner){if(1!==n.tag)throw Error(i(309));var r=n.stateNode}if(!r)throw Error(i(147,e));var o=""+e;return null!==t&&null!==t.ref&&"function"==typeof t.ref&&t.ref._stringRef===o?t.ref:(t=function(e){var t=r.refs;t===Aa&&(t=r.refs={}),null===e?delete t[o]:t[o]=e},t._stringRef=o,t)}if("string"!=typeof e)throw Error(i(284));if(!n._owner)throw Error(i(290,e))}return e}function wa(e,t){if("textarea"!==e.type)throw Error(i(31,"[object Object]"===Object.prototype.toString.call(t)?"object with keys {"+Object.keys(t).join(", ")+"}":t))}function Ma(e){function t(t,n){if(e){var r=t.lastEffect;null!==r?(r.nextEffect=n,t.lastEffect=n):t.firstEffect=t.lastEffect=n,n.nextEffect=null,n.flags=8}}function n(n,r){if(!e)return null;for(;null!==r;)t(n,r),r=r.sibling;return null}function r(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function o(e,t){return(e=Fl(e,t)).index=0,e.sibling=null,e}function a(t,n,r){return t.index=r,e?null!==(r=t.alternate)?(r=r.index)<n?(t.flags=2,n):r:(t.flags=2,n):n}function s(t){return e&&null===t.alternate&&(t.flags=2),t}function l(e,t,n,r){return null===t||6!==t.tag?((t=Wl(n,e.mode,r)).return=e,t):((t=o(t,n)).return=e,t)}function c(e,t,n,r){return null!==t&&t.elementType===n.type?((r=o(t,n.props)).ref=xa(e,t,n),r.return=e,r):((r=Yl(n.type,n.key,n.props,null,e.mode,r)).ref=xa(e,t,n),r.return=e,r)}function u(e,t,n,r){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=Hl(n,e.mode,r)).return=e,t):((t=o(t,n.children||[])).return=e,t)}function d(e,t,n,r,a){return null===t||7!==t.tag?((t=Vl(n,e.mode,r,a)).return=e,t):((t=o(t,n)).return=e,t)}function p(e,t,n){if("string"==typeof t||"number"==typeof t)return(t=Wl(""+t,e.mode,n)).return=e,t;if("object"==typeof t&&null!==t){switch(t.$$typeof){case x:return(n=Yl(t.type,t.key,t.props,null,e.mode,n)).ref=xa(e,null,t),n.return=e,n;case w:return(t=Hl(t,e.mode,n)).return=e,t}if(ya(t)||Y(t))return(t=Vl(t,e.mode,n,null)).return=e,t;wa(e,t)}return null}function h(e,t,n,r){var o=null!==t?t.key:null;if("string"==typeof n||"number"==typeof n)return null!==o?null:l(e,t,""+n,r);if("object"==typeof n&&null!==n){switch(n.$$typeof){case x:return n.key===o?n.type===M?d(e,t,n.props.children,r,o):c(e,t,n,r):null;case w:return n.key===o?u(e,t,n,r):null}if(ya(n)||Y(n))return null!==o?null:d(e,t,n,r,null);wa(e,n)}return null}function A(e,t,n,r,o){if("string"==typeof r||"number"==typeof r)return l(t,e=e.get(n)||null,""+r,o);if("object"==typeof r&&null!==r){switch(r.$$typeof){case x:return e=e.get(null===r.key?n:r.key)||null,r.type===M?d(t,e,r.props.children,o,r.key):c(t,e,r,o);case w:return u(t,e=e.get(null===r.key?n:r.key)||null,r,o)}if(ya(r)||Y(r))return d(t,e=e.get(n)||null,r,o,null);wa(t,r)}return null}function f(o,i,s,l){for(var c=null,u=null,d=i,f=i=0,g=null;null!==d&&f<s.length;f++){d.index>f?(g=d,d=null):g=d.sibling;var m=h(o,d,s[f],l);if(null===m){null===d&&(d=g);break}e&&d&&null===m.alternate&&t(o,d),i=a(m,i,f),null===u?c=m:u.sibling=m,u=m,d=g}if(f===s.length)return n(o,d),c;if(null===d){for(;f<s.length;f++)null!==(d=p(o,s[f],l))&&(i=a(d,i,f),null===u?c=d:u.sibling=d,u=d);return c}for(d=r(o,d);f<s.length;f++)null!==(g=A(d,o,f,s[f],l))&&(e&&null!==g.alternate&&d.delete(null===g.key?f:g.key),i=a(g,i,f),null===u?c=g:u.sibling=g,u=g);return e&&d.forEach((function(e){return t(o,e)})),c}function g(o,s,l,c){var u=Y(l);if("function"!=typeof u)throw Error(i(150));if(null==(l=u.call(l)))throw Error(i(151));for(var d=u=null,f=s,g=s=0,m=null,C=l.next();null!==f&&!C.done;g++,C=l.next()){f.index>g?(m=f,f=null):m=f.sibling;var b=h(o,f,C.value,c);if(null===b){null===f&&(f=m);break}e&&f&&null===b.alternate&&t(o,f),s=a(b,s,g),null===d?u=b:d.sibling=b,d=b,f=m}if(C.done)return n(o,f),u;if(null===f){for(;!C.done;g++,C=l.next())null!==(C=p(o,C.value,c))&&(s=a(C,s,g),null===d?u=C:d.sibling=C,d=C);return u}for(f=r(o,f);!C.done;g++,C=l.next())null!==(C=A(f,o,g,C.value,c))&&(e&&null!==C.alternate&&f.delete(null===C.key?g:C.key),s=a(C,s,g),null===d?u=C:d.sibling=C,d=C);return e&&f.forEach((function(e){return t(o,e)})),u}return function(e,r,a,l){var c="object"==typeof a&&null!==a&&a.type===M&&null===a.key;c&&(a=a.props.children);var u="object"==typeof a&&null!==a;if(u)switch(a.$$typeof){case x:e:{for(u=a.key,c=r;null!==c;){if(c.key===u){if(7===c.tag){if(a.type===M){n(e,c.sibling),(r=o(c,a.props.children)).return=e,e=r;break e}}else if(c.elementType===a.type){n(e,c.sibling),(r=o(c,a.props)).ref=xa(e,c,a),r.return=e,e=r;break e}n(e,c);break}t(e,c),c=c.sibling}a.type===M?((r=Vl(a.props.children,e.mode,l,a.key)).return=e,e=r):((l=Yl(a.type,a.key,a.props,null,e.mode,l)).ref=xa(e,r,a),l.return=e,e=l)}return s(e);case w:e:{for(c=a.key;null!==r;){if(r.key===c){if(4===r.tag&&r.stateNode.containerInfo===a.containerInfo&&r.stateNode.implementation===a.implementation){n(e,r.sibling),(r=o(r,a.children||[])).return=e,e=r;break e}n(e,r);break}t(e,r),r=r.sibling}(r=Hl(a,e.mode,l)).return=e,e=r}return s(e)}if("string"==typeof a||"number"==typeof a)return a=""+a,null!==r&&6===r.tag?(n(e,r.sibling),(r=o(r,a)).return=e,e=r):(n(e,r),(r=Wl(a,e.mode,l)).return=e,e=r),s(e);if(ya(a))return f(e,r,a,l);if(Y(a))return g(e,r,a,l);if(u&&wa(e,a),void 0===a&&!c)switch(e.tag){case 1:case 22:case 0:case 11:case 15:throw Error(i(152,Q(e.type)||"Component"))}return n(e,r)}}var ka=Ma(!0),Na=Ma(!1),_a={},Sa=so(_a),La=so(_a),Ba=so(_a);function Da(e){if(e===_a)throw Error(i(174));return e}function Ia(e,t){switch(co(Ba,t),co(La,e),co(Sa,_a),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:he(null,"");break;default:t=he(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}lo(Sa),co(Sa,t)}function ja(){lo(Sa),lo(La),lo(Ba)}function Ea(e){Da(Ba.current);var t=Da(Sa.current),n=he(t,e.type);t!==n&&(co(La,e),co(Sa,n))}function Ta(e){La.current===e&&(lo(Sa),lo(La))}var Oa=so(0);function Pa(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(64&t.flags)return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var za=null,Ra=null,Ua=!1;function Fa(e,t){var n=Rl(5,null,null,0);n.elementType="DELETED",n.type="DELETED",n.stateNode=t,n.return=e,n.flags=8,null!==e.lastEffect?(e.lastEffect.nextEffect=n,e.lastEffect=n):e.firstEffect=e.lastEffect=n}function Ya(e,t){switch(e.tag){case 5:var n=e.type;return null!==(t=1!==t.nodeType||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,!0);default:return!1}}function Va(e){if(Ua){var t=Ra;if(t){var n=t;if(!Ya(e,t)){if(!(t=Hr(n.nextSibling))||!Ya(e,t))return e.flags=-1025&e.flags|2,Ua=!1,void(za=e);Fa(za,n)}za=e,Ra=Hr(t.firstChild)}else e.flags=-1025&e.flags|2,Ua=!1,za=e}}function Ga(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;za=e}function Wa(e){if(e!==za)return!1;if(!Ua)return Ga(e),Ua=!0,!1;var t=e.type;if(5!==e.tag||"head"!==t&&"body"!==t&&!Yr(t,e.memoizedProps))for(t=Ra;t;)Fa(e,t),t=Hr(t.nextSibling);if(Ga(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(i(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){Ra=Hr(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}Ra=null}}else Ra=za?Hr(e.stateNode.nextSibling):null;return!0}function Ha(){Ra=za=null,Ua=!1}var Qa=[];function Za(){for(var e=0;e<Qa.length;e++)Qa[e]._workInProgressVersionPrimary=null;Qa.length=0}var qa=y.ReactCurrentDispatcher,Xa=y.ReactCurrentBatchConfig,Ja=0,Ka=null,$a=null,ei=null,ti=!1,ni=!1;function ri(){throw Error(i(321))}function oi(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!lr(e[n],t[n]))return!1;return!0}function ai(e,t,n,r,o,a){if(Ja=a,Ka=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,qa.current=null===e||null===e.memoizedState?Di:Ii,e=n(r,o),ni){a=0;do{if(ni=!1,!(25>a))throw Error(i(301));a+=1,ei=$a=null,t.updateQueue=null,qa.current=ji,e=n(r,o)}while(ni)}if(qa.current=Bi,t=null!==$a&&null!==$a.next,Ja=0,ei=$a=Ka=null,ti=!1,t)throw Error(i(300));return e}function ii(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===ei?Ka.memoizedState=ei=e:ei=ei.next=e,ei}function si(){if(null===$a){var e=Ka.alternate;e=null!==e?e.memoizedState:null}else e=$a.next;var t=null===ei?Ka.memoizedState:ei.next;if(null!==t)ei=t,$a=e;else{if(null===e)throw Error(i(310));e={memoizedState:($a=e).memoizedState,baseState:$a.baseState,baseQueue:$a.baseQueue,queue:$a.queue,next:null},null===ei?Ka.memoizedState=ei=e:ei=ei.next=e}return ei}function li(e,t){return"function"==typeof t?t(e):t}function ci(e){var t=si(),n=t.queue;if(null===n)throw Error(i(311));n.lastRenderedReducer=e;var r=$a,o=r.baseQueue,a=n.pending;if(null!==a){if(null!==o){var s=o.next;o.next=a.next,a.next=s}r.baseQueue=o=a,n.pending=null}if(null!==o){o=o.next,r=r.baseState;var l=s=a=null,c=o;do{var u=c.lane;if((Ja&u)===u)null!==l&&(l=l.next={lane:0,action:c.action,eagerReducer:c.eagerReducer,eagerState:c.eagerState,next:null}),r=c.eagerReducer===e?c.eagerState:e(r,c.action);else{var d={lane:u,action:c.action,eagerReducer:c.eagerReducer,eagerState:c.eagerState,next:null};null===l?(s=l=d,a=r):l=l.next=d,Ka.lanes|=u,zs|=u}c=c.next}while(null!==c&&c!==o);null===l?a=r:l.next=s,lr(r,t.memoizedState)||(Ti=!0),t.memoizedState=r,t.baseState=a,t.baseQueue=l,n.lastRenderedState=r}return[t.memoizedState,n.dispatch]}function ui(e){var t=si(),n=t.queue;if(null===n)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,o=n.pending,a=t.memoizedState;if(null!==o){n.pending=null;var s=o=o.next;do{a=e(a,s.action),s=s.next}while(s!==o);lr(a,t.memoizedState)||(Ti=!0),t.memoizedState=a,null===t.baseQueue&&(t.baseState=a),n.lastRenderedState=a}return[a,r]}function di(e,t,n){var r=t._getVersion;r=r(t._source);var o=t._workInProgressVersionPrimary;if(null!==o?e=o===r:(e=e.mutableReadLanes,(e=(Ja&e)===e)&&(t._workInProgressVersionPrimary=r,Qa.push(t))),e)return n(t._source);throw Qa.push(t),Error(i(350))}function pi(e,t,n,r){var o=Bs;if(null===o)throw Error(i(349));var a=t._getVersion,s=a(t._source),l=qa.current,c=l.useState((function(){return di(o,t,n)})),u=c[1],d=c[0];c=ei;var p=e.memoizedState,h=p.refs,A=h.getSnapshot,f=p.source;p=p.subscribe;var g=Ka;return e.memoizedState={refs:h,source:t,subscribe:r},l.useEffect((function(){h.getSnapshot=n,h.setSnapshot=u;var e=a(t._source);if(!lr(s,e)){e=n(t._source),lr(d,e)||(u(e),e=ul(g),o.mutableReadLanes|=e&o.pendingLanes),e=o.mutableReadLanes,o.entangledLanes|=e;for(var r=o.entanglements,i=e;0<i;){var l=31-Yt(i),c=1<<l;r[l]|=e,i&=~c}}}),[n,t,r]),l.useEffect((function(){return r(t._source,(function(){var e=h.getSnapshot,n=h.setSnapshot;try{n(e(t._source));var r=ul(g);o.mutableReadLanes|=r&o.pendingLanes}catch(e){n((function(){throw e}))}}))}),[t,r]),lr(A,n)&&lr(f,t)&&lr(p,r)||((e={pending:null,dispatch:null,lastRenderedReducer:li,lastRenderedState:d}).dispatch=u=Li.bind(null,Ka,e),c.queue=e,c.baseQueue=null,d=di(o,t,n),c.memoizedState=c.baseState=d),d}function hi(e,t,n){return pi(si(),e,t,n)}function Ai(e){var t=ii();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e=(e=t.queue={pending:null,dispatch:null,lastRenderedReducer:li,lastRenderedState:e}).dispatch=Li.bind(null,Ka,e),[t.memoizedState,e]}function fi(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},null===(t=Ka.updateQueue)?(t={lastEffect:null},Ka.updateQueue=t,t.lastEffect=e.next=e):null===(n=t.lastEffect)?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function gi(e){return e={current:e},ii().memoizedState=e}function mi(){return si().memoizedState}function Ci(e,t,n,r){var o=ii();Ka.flags|=e,o.memoizedState=fi(1|t,n,void 0,void 0===r?null:r)}function bi(e,t,n,r){var o=si();r=void 0===r?null:r;var a=void 0;if(null!==$a){var i=$a.memoizedState;if(a=i.destroy,null!==r&&oi(r,i.deps))return void fi(t,n,a,r)}Ka.flags|=e,o.memoizedState=fi(1|t,n,a,r)}function vi(e,t){return Ci(516,4,e,t)}function yi(e,t){return bi(516,4,e,t)}function xi(e,t){return bi(4,2,e,t)}function wi(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function Mi(e,t,n){return n=null!=n?n.concat([e]):null,bi(4,2,wi.bind(null,t,e),n)}function ki(){}function Ni(e,t){var n=si();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&oi(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function _i(e,t){var n=si();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&oi(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function Si(e,t){var n=Vo();Wo(98>n?98:n,(function(){e(!0)})),Wo(97<n?97:n,(function(){var n=Xa.transition;Xa.transition=1;try{e(!1),t()}finally{Xa.transition=n}}))}function Li(e,t,n){var r=cl(),o=ul(e),a={lane:o,action:n,eagerReducer:null,eagerState:null,next:null},i=t.pending;if(null===i?a.next=a:(a.next=i.next,i.next=a),t.pending=a,i=e.alternate,e===Ka||null!==i&&i===Ka)ni=ti=!0;else{if(0===e.lanes&&(null===i||0===i.lanes)&&null!==(i=t.lastRenderedReducer))try{var s=t.lastRenderedState,l=i(s,n);if(a.eagerReducer=i,a.eagerState=l,lr(l,s))return}catch(e){}dl(e,o,r)}}var Bi={readContext:aa,useCallback:ri,useContext:ri,useEffect:ri,useImperativeHandle:ri,useLayoutEffect:ri,useMemo:ri,useReducer:ri,useRef:ri,useState:ri,useDebugValue:ri,useDeferredValue:ri,useTransition:ri,useMutableSource:ri,useOpaqueIdentifier:ri,unstable_isNewReconciler:!1},Di={readContext:aa,useCallback:function(e,t){return ii().memoizedState=[e,void 0===t?null:t],e},useContext:aa,useEffect:vi,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,Ci(4,2,wi.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Ci(4,2,e,t)},useMemo:function(e,t){var n=ii();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=ii();return t=void 0!==n?n(t):t,r.memoizedState=r.baseState=t,e=(e=r.queue={pending:null,dispatch:null,lastRenderedReducer:e,lastRenderedState:t}).dispatch=Li.bind(null,Ka,e),[r.memoizedState,e]},useRef:gi,useState:Ai,useDebugValue:ki,useDeferredValue:function(e){var t=Ai(e),n=t[0],r=t[1];return vi((function(){var t=Xa.transition;Xa.transition=1;try{r(e)}finally{Xa.transition=t}}),[e]),n},useTransition:function(){var e=Ai(!1),t=e[0];return gi(e=Si.bind(null,e[1])),[e,t]},useMutableSource:function(e,t,n){var r=ii();return r.memoizedState={refs:{getSnapshot:t,setSnapshot:null},source:e,subscribe:n},pi(r,e,t,n)},useOpaqueIdentifier:function(){if(Ua){var e=!1,t=function(e){return{$$typeof:T,toString:e,valueOf:e}}((function(){throw e||(e=!0,n("r:"+(Zr++).toString(36))),Error(i(355))})),n=Ai(t)[1];return!(2&Ka.mode)&&(Ka.flags|=516,fi(5,(function(){n("r:"+(Zr++).toString(36))}),void 0,null)),t}return Ai(t="r:"+(Zr++).toString(36)),t},unstable_isNewReconciler:!1},Ii={readContext:aa,useCallback:Ni,useContext:aa,useEffect:yi,useImperativeHandle:Mi,useLayoutEffect:xi,useMemo:_i,useReducer:ci,useRef:mi,useState:function(){return ci(li)},useDebugValue:ki,useDeferredValue:function(e){var t=ci(li),n=t[0],r=t[1];return yi((function(){var t=Xa.transition;Xa.transition=1;try{r(e)}finally{Xa.transition=t}}),[e]),n},useTransition:function(){var e=ci(li)[0];return[mi().current,e]},useMutableSource:hi,useOpaqueIdentifier:function(){return ci(li)[0]},unstable_isNewReconciler:!1},ji={readContext:aa,useCallback:Ni,useContext:aa,useEffect:yi,useImperativeHandle:Mi,useLayoutEffect:xi,useMemo:_i,useReducer:ui,useRef:mi,useState:function(){return ui(li)},useDebugValue:ki,useDeferredValue:function(e){var t=ui(li),n=t[0],r=t[1];return yi((function(){var t=Xa.transition;Xa.transition=1;try{r(e)}finally{Xa.transition=t}}),[e]),n},useTransition:function(){var e=ui(li)[0];return[mi().current,e]},useMutableSource:hi,useOpaqueIdentifier:function(){return ui(li)[0]},unstable_isNewReconciler:!1},Ei=y.ReactCurrentOwner,Ti=!1;function Oi(e,t,n,r){t.child=null===e?Na(t,null,n,r):ka(t,e.child,n,r)}function Pi(e,t,n,r,o){n=n.render;var a=t.ref;return oa(t,o),r=ai(e,t,n,r,a,o),null===e||Ti?(t.flags|=1,Oi(e,t,r,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~o,ns(e,t,o))}function zi(e,t,n,r,o,a){if(null===e){var i=n.type;return"function"!=typeof i||Ul(i)||void 0!==i.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Yl(n.type,null,r,t,t.mode,a)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=i,Ri(e,t,i,r,o,a))}return i=e.child,o&a||(o=i.memoizedProps,!(n=null!==(n=n.compare)?n:ur)(o,r)||e.ref!==t.ref)?(t.flags|=1,(e=Fl(i,r)).ref=t.ref,e.return=t,t.child=e):ns(e,t,a)}function Ri(e,t,n,r,o,a){if(null!==e&&ur(e.memoizedProps,r)&&e.ref===t.ref){if(Ti=!1,!(a&o))return t.lanes=e.lanes,ns(e,t,a);16384&e.flags&&(Ti=!0)}return Yi(e,t,n,r,a)}function Ui(e,t,n){var r=t.pendingProps,o=r.children,a=null!==e?e.memoizedState:null;if("hidden"===r.mode||"unstable-defer-without-hiding"===r.mode)if(4&t.mode){if(!(1073741824&n))return e=null!==a?a.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e},ml(0,e),null;t.memoizedState={baseLanes:0},ml(0,null!==a?a.baseLanes:n)}else t.memoizedState={baseLanes:0},ml(0,n);else null!==a?(r=a.baseLanes|n,t.memoizedState=null):r=n,ml(0,r);return Oi(e,t,o,n),t.child}function Fi(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=128)}function Yi(e,t,n,r,o){var a=go(n)?Ao:po.current;return a=fo(t,a),oa(t,o),n=ai(e,t,n,r,a,o),null===e||Ti?(t.flags|=1,Oi(e,t,n,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~o,ns(e,t,o))}function Vi(e,t,n,r,o){if(go(n)){var a=!0;vo(t)}else a=!1;if(oa(t,o),null===t.stateNode)null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),Ca(t,n,r),va(t,n,r,o),r=!0;else if(null===e){var i=t.stateNode,s=t.memoizedProps;i.props=s;var l=i.context,c=n.contextType;c="object"==typeof c&&null!==c?aa(c):fo(t,c=go(n)?Ao:po.current);var u=n.getDerivedStateFromProps,d="function"==typeof u||"function"==typeof i.getSnapshotBeforeUpdate;d||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(s!==r||l!==c)&&ba(t,i,r,c),ia=!1;var p=t.memoizedState;i.state=p,pa(t,r,i,o),l=t.memoizedState,s!==r||p!==l||ho.current||ia?("function"==typeof u&&(fa(t,n,u,r),l=t.memoizedState),(s=ia||ma(t,n,s,r,p,l,c))?(d||"function"!=typeof i.UNSAFE_componentWillMount&&"function"!=typeof i.componentWillMount||("function"==typeof i.componentWillMount&&i.componentWillMount(),"function"==typeof i.UNSAFE_componentWillMount&&i.UNSAFE_componentWillMount()),"function"==typeof i.componentDidMount&&(t.flags|=4)):("function"==typeof i.componentDidMount&&(t.flags|=4),t.memoizedProps=r,t.memoizedState=l),i.props=r,i.state=l,i.context=c,r=s):("function"==typeof i.componentDidMount&&(t.flags|=4),r=!1)}else{i=t.stateNode,la(e,t),s=t.memoizedProps,c=t.type===t.elementType?s:Xo(t.type,s),i.props=c,d=t.pendingProps,p=i.context,l="object"==typeof(l=n.contextType)&&null!==l?aa(l):fo(t,l=go(n)?Ao:po.current);var h=n.getDerivedStateFromProps;(u="function"==typeof h||"function"==typeof i.getSnapshotBeforeUpdate)||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(s!==d||p!==l)&&ba(t,i,r,l),ia=!1,p=t.memoizedState,i.state=p,pa(t,r,i,o);var A=t.memoizedState;s!==d||p!==A||ho.current||ia?("function"==typeof h&&(fa(t,n,h,r),A=t.memoizedState),(c=ia||ma(t,n,c,r,p,A,l))?(u||"function"!=typeof i.UNSAFE_componentWillUpdate&&"function"!=typeof i.componentWillUpdate||("function"==typeof i.componentWillUpdate&&i.componentWillUpdate(r,A,l),"function"==typeof i.UNSAFE_componentWillUpdate&&i.UNSAFE_componentWillUpdate(r,A,l)),"function"==typeof i.componentDidUpdate&&(t.flags|=4),"function"==typeof i.getSnapshotBeforeUpdate&&(t.flags|=256)):("function"!=typeof i.componentDidUpdate||s===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||s===e.memoizedProps&&p===e.memoizedState||(t.flags|=256),t.memoizedProps=r,t.memoizedState=A),i.props=r,i.state=A,i.context=l,r=c):("function"!=typeof i.componentDidUpdate||s===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||s===e.memoizedProps&&p===e.memoizedState||(t.flags|=256),r=!1)}return Gi(e,t,n,r,a,o)}function Gi(e,t,n,r,o,a){Fi(e,t);var i=!!(64&t.flags);if(!r&&!i)return o&&yo(t,n,!1),ns(e,t,a);r=t.stateNode,Ei.current=t;var s=i&&"function"!=typeof n.getDerivedStateFromError?null:r.render();return t.flags|=1,null!==e&&i?(t.child=ka(t,e.child,null,a),t.child=ka(t,null,s,a)):Oi(e,t,s,a),t.memoizedState=r.state,o&&yo(t,n,!0),t.child}function Wi(e){var t=e.stateNode;t.pendingContext?Co(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Co(0,t.context,!1),Ia(e,t.containerInfo)}var Hi,Qi,Zi,qi,Xi={dehydrated:null,retryLane:0};function Ji(e,t,n){var r,o=t.pendingProps,a=Oa.current,i=!1;return(r=!!(64&t.flags))||(r=(null===e||null!==e.memoizedState)&&!!(2&a)),r?(i=!0,t.flags&=-65):null!==e&&null===e.memoizedState||void 0===o.fallback||!0===o.unstable_avoidThisFallback||(a|=1),co(Oa,1&a),null===e?(void 0!==o.fallback&&Va(t),e=o.children,a=o.fallback,i?(e=Ki(t,e,a,n),t.child.memoizedState={baseLanes:n},t.memoizedState=Xi,e):"number"==typeof o.unstable_expectedLoadTime?(e=Ki(t,e,a,n),t.child.memoizedState={baseLanes:n},t.memoizedState=Xi,t.lanes=33554432,e):((n=Gl({mode:"visible",children:e},t.mode,n,null)).return=t,t.child=n)):(e.memoizedState,i?(o=function(e,t,n,r,o){var a=t.mode,i=e.child;e=i.sibling;var s={mode:"hidden",children:n};return 2&a||t.child===i?n=Fl(i,s):((n=t.child).childLanes=0,n.pendingProps=s,null!==(i=n.lastEffect)?(t.firstEffect=n.firstEffect,t.lastEffect=i,i.nextEffect=null):t.firstEffect=t.lastEffect=null),null!==e?r=Fl(e,r):(r=Vl(r,a,o,null)).flags|=2,r.return=t,n.return=t,n.sibling=r,t.child=n,r}(e,t,o.children,o.fallback,n),i=t.child,a=e.child.memoizedState,i.memoizedState=null===a?{baseLanes:n}:{baseLanes:a.baseLanes|n},i.childLanes=e.childLanes&~n,t.memoizedState=Xi,o):(n=function(e,t,n,r){var o=e.child;return e=o.sibling,n=Fl(o,{mode:"visible",children:n}),!(2&t.mode)&&(n.lanes=r),n.return=t,n.sibling=null,null!==e&&(e.nextEffect=null,e.flags=8,t.firstEffect=t.lastEffect=e),t.child=n}(e,t,o.children,n),t.memoizedState=null,n))}function Ki(e,t,n,r){var o=e.mode,a=e.child;return t={mode:"hidden",children:t},2&o||null===a?a=Gl(t,o,0,null):(a.childLanes=0,a.pendingProps=t),n=Vl(n,o,r,null),a.return=e,n.return=e,a.sibling=n,e.child=a,n}function $i(e,t){e.lanes|=t;var n=e.alternate;null!==n&&(n.lanes|=t),ra(e.return,t)}function es(e,t,n,r,o,a){var i=e.memoizedState;null===i?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:o,lastEffect:a}:(i.isBackwards=t,i.rendering=null,i.renderingStartTime=0,i.last=r,i.tail=n,i.tailMode=o,i.lastEffect=a)}function ts(e,t,n){var r=t.pendingProps,o=r.revealOrder,a=r.tail;if(Oi(e,t,r.children,n),2&(r=Oa.current))r=1&r|2,t.flags|=64;else{if(null!==e&&64&e.flags)e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&$i(e,n);else if(19===e.tag)$i(e,n);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(co(Oa,r),2&t.mode)switch(o){case"forwards":for(n=t.child,o=null;null!==n;)null!==(e=n.alternate)&&null===Pa(e)&&(o=n),n=n.sibling;null===(n=o)?(o=t.child,t.child=null):(o=n.sibling,n.sibling=null),es(t,!1,o,n,a,t.lastEffect);break;case"backwards":for(n=null,o=t.child,t.child=null;null!==o;){if(null!==(e=o.alternate)&&null===Pa(e)){t.child=o;break}e=o.sibling,o.sibling=n,n=o,o=e}es(t,!0,n,null,a,t.lastEffect);break;case"together":es(t,!1,null,null,void 0,t.lastEffect);break;default:t.memoizedState=null}else t.memoizedState=null;return t.child}function ns(e,t,n){if(null!==e&&(t.dependencies=e.dependencies),zs|=t.lanes,n&t.childLanes){if(null!==e&&t.child!==e.child)throw Error(i(153));if(null!==t.child){for(n=Fl(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Fl(e,e.pendingProps)).return=t;n.sibling=null}return t.child}return null}function rs(e,t){if(!Ua)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;null!==n;)null!==n.alternate&&(r=n),n=n.sibling;null===r?t||null===e.tail?e.tail=null:e.tail.sibling=null:r.sibling=null}}function os(e,t,n){var r=t.pendingProps;switch(t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return null;case 1:case 17:return go(t.type)&&mo(),null;case 3:return ja(),lo(ho),lo(po),Za(),(r=t.stateNode).pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),null!==e&&null!==e.child||(Wa(t)?t.flags|=4:r.hydrate||(t.flags|=256)),Qi(t),null;case 5:Ta(t);var a=Da(Ba.current);if(n=t.type,null!==e&&null!=t.stateNode)Zi(e,t,n,r,a),e.ref!==t.ref&&(t.flags|=128);else{if(!r){if(null===t.stateNode)throw Error(i(166));return null}if(e=Da(Sa.current),Wa(t)){r=t.stateNode,n=t.type;var s=t.memoizedProps;switch(r[Xr]=t,r[Jr]=s,n){case"dialog":Sr("cancel",r),Sr("close",r);break;case"iframe":case"object":case"embed":Sr("load",r);break;case"video":case"audio":for(e=0;e<Mr.length;e++)Sr(Mr[e],r);break;case"source":Sr("error",r);break;case"img":case"image":case"link":Sr("error",r),Sr("load",r);break;case"details":Sr("toggle",r);break;case"input":ee(r,s),Sr("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!s.multiple},Sr("invalid",r);break;case"textarea":le(r,s),Sr("invalid",r)}for(var c in we(n,s),e=null,s)s.hasOwnProperty(c)&&(a=s[c],"children"===c?"string"==typeof a?r.textContent!==a&&(e=["children",a]):"number"==typeof a&&r.textContent!==""+a&&(e=["children",""+a]):l.hasOwnProperty(c)&&null!=a&&"onScroll"===c&&Sr("scroll",r));switch(n){case"input":X(r),re(r,s,!0);break;case"textarea":X(r),ue(r);break;case"select":case"option":break;default:"function"==typeof s.onClick&&(r.onclick=zr)}r=e,t.updateQueue=r,null!==r&&(t.flags|=4)}else{switch(c=9===a.nodeType?a:a.ownerDocument,e===de&&(e=pe(n)),e===de?"script"===n?((e=c.createElement("div")).innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):"string"==typeof r.is?e=c.createElement(n,{is:r.is}):(e=c.createElement(n),"select"===n&&(c=e,r.multiple?c.multiple=!0:r.size&&(c.size=r.size))):e=c.createElementNS(e,n),e[Xr]=t,e[Jr]=r,Hi(e,t,!1,!1),t.stateNode=e,c=Me(n,r),n){case"dialog":Sr("cancel",e),Sr("close",e),a=r;break;case"iframe":case"object":case"embed":Sr("load",e),a=r;break;case"video":case"audio":for(a=0;a<Mr.length;a++)Sr(Mr[a],e);a=r;break;case"source":Sr("error",e),a=r;break;case"img":case"image":case"link":Sr("error",e),Sr("load",e),a=r;break;case"details":Sr("toggle",e),a=r;break;case"input":ee(e,r),a=$(e,r),Sr("invalid",e);break;case"option":a=ae(e,r);break;case"select":e._wrapperState={wasMultiple:!!r.multiple},a=o({},r,{value:void 0}),Sr("invalid",e);break;case"textarea":le(e,r),a=se(e,r),Sr("invalid",e);break;default:a=r}we(n,a);var u=a;for(s in u)if(u.hasOwnProperty(s)){var d=u[s];"style"===s?ye(e,d):"dangerouslySetInnerHTML"===s?null!=(d=d?d.__html:void 0)&&ge(e,d):"children"===s?"string"==typeof d?("textarea"!==n||""!==d)&&me(e,d):"number"==typeof d&&me(e,""+d):"suppressContentEditableWarning"!==s&&"suppressHydrationWarning"!==s&&"autoFocus"!==s&&(l.hasOwnProperty(s)?null!=d&&"onScroll"===s&&Sr("scroll",e):null!=d&&v(e,s,d,c))}switch(n){case"input":X(e),re(e,r,!1);break;case"textarea":X(e),ue(e);break;case"option":null!=r.value&&e.setAttribute("value",""+Z(r.value));break;case"select":e.multiple=!!r.multiple,null!=(s=r.value)?ie(e,!!r.multiple,s,!1):null!=r.defaultValue&&ie(e,!!r.multiple,r.defaultValue,!0);break;default:"function"==typeof a.onClick&&(e.onclick=zr)}Fr(n,r)&&(t.flags|=4)}null!==t.ref&&(t.flags|=128)}return null;case 6:if(e&&null!=t.stateNode)qi(e,t,e.memoizedProps,r);else{if("string"!=typeof r&&null===t.stateNode)throw Error(i(166));n=Da(Ba.current),Da(Sa.current),Wa(t)?(r=t.stateNode,n=t.memoizedProps,r[Xr]=t,r.nodeValue!==n&&(t.flags|=4)):((r=(9===n.nodeType?n:n.ownerDocument).createTextNode(r))[Xr]=t,t.stateNode=r)}return null;case 13:return lo(Oa),r=t.memoizedState,64&t.flags?(t.lanes=n,t):(r=null!==r,n=!1,null===e?void 0!==t.memoizedProps.fallback&&Wa(t):n=null!==e.memoizedState,r&&!n&&2&t.mode&&(null===e&&!0!==t.memoizedProps.unstable_avoidThisFallback||1&Oa.current?0===Ts&&(Ts=3):(0!==Ts&&3!==Ts||(Ts=4),null===Bs||!(134217727&zs)&&!(134217727&Rs)||fl(Bs,Is))),(r||n)&&(t.flags|=4),null);case 4:return ja(),Qi(t),null===e&&Br(t.stateNode.containerInfo),null;case 10:return na(t),null;case 19:if(lo(Oa),null===(r=t.memoizedState))return null;if(s=!!(64&t.flags),null===(c=r.rendering))if(s)rs(r,!1);else{if(0!==Ts||null!==e&&64&e.flags)for(e=t.child;null!==e;){if(null!==(c=Pa(e))){for(t.flags|=64,rs(r,!1),null!==(s=c.updateQueue)&&(t.updateQueue=s,t.flags|=4),null===r.lastEffect&&(t.firstEffect=null),t.lastEffect=r.lastEffect,r=n,n=t.child;null!==n;)e=r,(s=n).flags&=2,s.nextEffect=null,s.firstEffect=null,s.lastEffect=null,null===(c=s.alternate)?(s.childLanes=0,s.lanes=e,s.child=null,s.memoizedProps=null,s.memoizedState=null,s.updateQueue=null,s.dependencies=null,s.stateNode=null):(s.childLanes=c.childLanes,s.lanes=c.lanes,s.child=c.child,s.memoizedProps=c.memoizedProps,s.memoizedState=c.memoizedState,s.updateQueue=c.updateQueue,s.type=c.type,e=c.dependencies,s.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return co(Oa,1&Oa.current|2),t.child}e=e.sibling}null!==r.tail&&Yo()>Vs&&(t.flags|=64,s=!0,rs(r,!1),t.lanes=33554432)}else{if(!s)if(null!==(e=Pa(c))){if(t.flags|=64,s=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.flags|=4),rs(r,!0),null===r.tail&&"hidden"===r.tailMode&&!c.alternate&&!Ua)return null!==(t=t.lastEffect=r.lastEffect)&&(t.nextEffect=null),null}else 2*Yo()-r.renderingStartTime>Vs&&1073741824!==n&&(t.flags|=64,s=!0,rs(r,!1),t.lanes=33554432);r.isBackwards?(c.sibling=t.child,t.child=c):(null!==(n=r.last)?n.sibling=c:t.child=c,r.last=c)}return null!==r.tail?(n=r.tail,r.rendering=n,r.tail=n.sibling,r.lastEffect=t.lastEffect,r.renderingStartTime=Yo(),n.sibling=null,t=Oa.current,co(Oa,s?1&t|2:1&t),n):null;case 23:case 24:return Cl(),null!==e&&null!==e.memoizedState!=(null!==t.memoizedState)&&"unstable-defer-without-hiding"!==r.mode&&(t.flags|=4),null}throw Error(i(156,t.tag))}function as(e){switch(e.tag){case 1:go(e.type)&&mo();var t=e.flags;return 4096&t?(e.flags=-4097&t|64,e):null;case 3:if(ja(),lo(ho),lo(po),Za(),64&(t=e.flags))throw Error(i(285));return e.flags=-4097&t|64,e;case 5:return Ta(e),null;case 13:return lo(Oa),4096&(t=e.flags)?(e.flags=-4097&t|64,e):null;case 19:return lo(Oa),null;case 4:return ja(),null;case 10:return na(e),null;case 23:case 24:return Cl(),null;default:return null}}function is(e,t){try{var n="",r=t;do{n+=H(r),r=r.return}while(r);var o=n}catch(e){o="\nError generating stack: "+e.message+"\n"+e.stack}return{value:e,source:t,stack:o}}function ss(e,t){try{console.error(t.value)}catch(e){setTimeout((function(){throw e}))}}Hi=function(e,t){for(var n=t.child;null!==n;){if(5===n.tag||6===n.tag)e.appendChild(n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===t)break;for(;null===n.sibling;){if(null===n.return||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},Qi=function(){},Zi=function(e,t,n,r){var a=e.memoizedProps;if(a!==r){e=t.stateNode,Da(Sa.current);var i,s=null;switch(n){case"input":a=$(e,a),r=$(e,r),s=[];break;case"option":a=ae(e,a),r=ae(e,r),s=[];break;case"select":a=o({},a,{value:void 0}),r=o({},r,{value:void 0}),s=[];break;case"textarea":a=se(e,a),r=se(e,r),s=[];break;default:"function"!=typeof a.onClick&&"function"==typeof r.onClick&&(e.onclick=zr)}for(d in we(n,r),n=null,a)if(!r.hasOwnProperty(d)&&a.hasOwnProperty(d)&&null!=a[d])if("style"===d){var c=a[d];for(i in c)c.hasOwnProperty(i)&&(n||(n={}),n[i]="")}else"dangerouslySetInnerHTML"!==d&&"children"!==d&&"suppressContentEditableWarning"!==d&&"suppressHydrationWarning"!==d&&"autoFocus"!==d&&(l.hasOwnProperty(d)?s||(s=[]):(s=s||[]).push(d,null));for(d in r){var u=r[d];if(c=null!=a?a[d]:void 0,r.hasOwnProperty(d)&&u!==c&&(null!=u||null!=c))if("style"===d)if(c){for(i in c)!c.hasOwnProperty(i)||u&&u.hasOwnProperty(i)||(n||(n={}),n[i]="");for(i in u)u.hasOwnProperty(i)&&c[i]!==u[i]&&(n||(n={}),n[i]=u[i])}else n||(s||(s=[]),s.push(d,n)),n=u;else"dangerouslySetInnerHTML"===d?(u=u?u.__html:void 0,c=c?c.__html:void 0,null!=u&&c!==u&&(s=s||[]).push(d,u)):"children"===d?"string"!=typeof u&&"number"!=typeof u||(s=s||[]).push(d,""+u):"suppressContentEditableWarning"!==d&&"suppressHydrationWarning"!==d&&(l.hasOwnProperty(d)?(null!=u&&"onScroll"===d&&Sr("scroll",e),s||c===u||(s=[])):"object"==typeof u&&null!==u&&u.$$typeof===T?u.toString():(s=s||[]).push(d,u))}n&&(s=s||[]).push("style",n);var d=s;(t.updateQueue=d)&&(t.flags|=4)}},qi=function(e,t,n,r){n!==r&&(t.flags|=4)};var ls="function"==typeof WeakMap?WeakMap:Map;function cs(e,t,n){(n=ca(-1,n)).tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Qs||(Qs=!0,Zs=r),ss(0,t)},n}function us(e,t,n){(n=ca(-1,n)).tag=3;var r=e.type.getDerivedStateFromError;if("function"==typeof r){var o=t.value;n.payload=function(){return ss(0,t),r(o)}}var a=e.stateNode;return null!==a&&"function"==typeof a.componentDidCatch&&(n.callback=function(){"function"!=typeof r&&(null===qs?qs=new Set([this]):qs.add(this),ss(0,t));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}var ds="function"==typeof WeakSet?WeakSet:Set;function ps(e){var t=e.ref;if(null!==t)if("function"==typeof t)try{t(null)}catch(t){Tl(e,t)}else t.current=null}function hs(e,t){switch(t.tag){case 0:case 11:case 15:case 22:case 5:case 6:case 4:case 17:return;case 1:if(256&t.flags&&null!==e){var n=e.memoizedProps,r=e.memoizedState;t=(e=t.stateNode).getSnapshotBeforeUpdate(t.elementType===t.type?n:Xo(t.type,n),r),e.__reactInternalSnapshotBeforeUpdate=t}return;case 3:return void(256&t.flags&&Wr(t.stateNode.containerInfo))}throw Error(i(163))}function As(e,t,n){switch(n.tag){case 0:case 11:case 15:case 22:if(null!==(t=null!==(t=n.updateQueue)?t.lastEffect:null)){e=t=t.next;do{if(!(3&~e.tag)){var r=e.create;e.destroy=r()}e=e.next}while(e!==t)}if(null!==(t=null!==(t=n.updateQueue)?t.lastEffect:null)){e=t=t.next;do{var o=e;r=o.next,4&(o=o.tag)&&1&o&&(Il(n,e),Dl(n,e)),e=r}while(e!==t)}return;case 1:return e=n.stateNode,4&n.flags&&(null===t?e.componentDidMount():(r=n.elementType===n.type?t.memoizedProps:Xo(n.type,t.memoizedProps),e.componentDidUpdate(r,t.memoizedState,e.__reactInternalSnapshotBeforeUpdate))),void(null!==(t=n.updateQueue)&&ha(n,t,e));case 3:if(null!==(t=n.updateQueue)){if(e=null,null!==n.child)switch(n.child.tag){case 5:case 1:e=n.child.stateNode}ha(n,t,e)}return;case 5:return e=n.stateNode,void(null===t&&4&n.flags&&Fr(n.type,n.memoizedProps)&&e.focus());case 6:case 4:case 12:case 19:case 17:case 20:case 21:case 23:case 24:return;case 13:return void(null===n.memoizedState&&(n=n.alternate,null!==n&&(n=n.memoizedState,null!==n&&(n=n.dehydrated,null!==n&&vt(n)))))}throw Error(i(163))}function fs(e,t){for(var n=e;;){if(5===n.tag){var r=n.stateNode;if(t)"function"==typeof(r=r.style).setProperty?r.setProperty("display","none","important"):r.display="none";else{r=n.stateNode;var o=n.memoizedProps.style;o=null!=o&&o.hasOwnProperty("display")?o.display:null,r.style.display=ve("display",o)}}else if(6===n.tag)n.stateNode.nodeValue=t?"":n.memoizedProps;else if((23!==n.tag&&24!==n.tag||null===n.memoizedState||n===e)&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===e)break;for(;null===n.sibling;){if(null===n.return||n.return===e)return;n=n.return}n.sibling.return=n.return,n=n.sibling}}function gs(e,t){if(wo&&"function"==typeof wo.onCommitFiberUnmount)try{wo.onCommitFiberUnmount(xo,t)}catch(e){}switch(t.tag){case 0:case 11:case 14:case 15:case 22:if(null!==(e=t.updateQueue)&&null!==(e=e.lastEffect)){var n=e=e.next;do{var r=n,o=r.destroy;if(r=r.tag,void 0!==o)if(4&r)Il(t,n);else{r=t;try{o()}catch(e){Tl(r,e)}}n=n.next}while(n!==e)}break;case 1:if(ps(t),"function"==typeof(e=t.stateNode).componentWillUnmount)try{e.props=t.memoizedProps,e.state=t.memoizedState,e.componentWillUnmount()}catch(e){Tl(t,e)}break;case 5:ps(t);break;case 4:xs(e,t)}}function ms(e){e.alternate=null,e.child=null,e.dependencies=null,e.firstEffect=null,e.lastEffect=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.return=null,e.updateQueue=null}function Cs(e){return 5===e.tag||3===e.tag||4===e.tag}function bs(e){e:{for(var t=e.return;null!==t;){if(Cs(t))break e;t=t.return}throw Error(i(160))}var n=t;switch(t=n.stateNode,n.tag){case 5:var r=!1;break;case 3:case 4:t=t.containerInfo,r=!0;break;default:throw Error(i(161))}16&n.flags&&(me(t,""),n.flags&=-17);e:t:for(n=e;;){for(;null===n.sibling;){if(null===n.return||Cs(n.return)){n=null;break e}n=n.return}for(n.sibling.return=n.return,n=n.sibling;5!==n.tag&&6!==n.tag&&18!==n.tag;){if(2&n.flags)continue t;if(null===n.child||4===n.tag)continue t;n.child.return=n,n=n.child}if(!(2&n.flags)){n=n.stateNode;break e}}r?vs(e,n,t):ys(e,n,t)}function vs(e,t,n){var r=e.tag,o=5===r||6===r;if(o)e=o?e.stateNode:e.stateNode.instance,t?8===n.nodeType?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(8===n.nodeType?(t=n.parentNode).insertBefore(e,n):(t=n).appendChild(e),null!=(n=n._reactRootContainer)||null!==t.onclick||(t.onclick=zr));else if(4!==r&&null!==(e=e.child))for(vs(e,t,n),e=e.sibling;null!==e;)vs(e,t,n),e=e.sibling}function ys(e,t,n){var r=e.tag,o=5===r||6===r;if(o)e=o?e.stateNode:e.stateNode.instance,t?n.insertBefore(e,t):n.appendChild(e);else if(4!==r&&null!==(e=e.child))for(ys(e,t,n),e=e.sibling;null!==e;)ys(e,t,n),e=e.sibling}function xs(e,t){for(var n,r,o=t,a=!1;;){if(!a){a=o.return;e:for(;;){if(null===a)throw Error(i(160));switch(n=a.stateNode,a.tag){case 5:r=!1;break e;case 3:case 4:n=n.containerInfo,r=!0;break e}a=a.return}a=!0}if(5===o.tag||6===o.tag){e:for(var s=e,l=o,c=l;;)if(gs(s,c),null!==c.child&&4!==c.tag)c.child.return=c,c=c.child;else{if(c===l)break e;for(;null===c.sibling;){if(null===c.return||c.return===l)break e;c=c.return}c.sibling.return=c.return,c=c.sibling}r?(s=n,l=o.stateNode,8===s.nodeType?s.parentNode.removeChild(l):s.removeChild(l)):n.removeChild(o.stateNode)}else if(4===o.tag){if(null!==o.child){n=o.stateNode.containerInfo,r=!0,o.child.return=o,o=o.child;continue}}else if(gs(e,o),null!==o.child){o.child.return=o,o=o.child;continue}if(o===t)break;for(;null===o.sibling;){if(null===o.return||o.return===t)return;4===(o=o.return).tag&&(a=!1)}o.sibling.return=o.return,o=o.sibling}}function ws(e,t){switch(t.tag){case 0:case 11:case 14:case 15:case 22:var n=t.updateQueue;if(null!==(n=null!==n?n.lastEffect:null)){var r=n=n.next;do{!(3&~r.tag)&&(e=r.destroy,r.destroy=void 0,void 0!==e&&e()),r=r.next}while(r!==n)}return;case 1:case 12:case 17:return;case 5:if(null!=(n=t.stateNode)){r=t.memoizedProps;var o=null!==e?e.memoizedProps:r;e=t.type;var a=t.updateQueue;if(t.updateQueue=null,null!==a){for(n[Jr]=r,"input"===e&&"radio"===r.type&&null!=r.name&&te(n,r),Me(e,o),t=Me(e,r),o=0;o<a.length;o+=2){var s=a[o],l=a[o+1];"style"===s?ye(n,l):"dangerouslySetInnerHTML"===s?ge(n,l):"children"===s?me(n,l):v(n,s,l,t)}switch(e){case"input":ne(n,r);break;case"textarea":ce(n,r);break;case"select":e=n._wrapperState.wasMultiple,n._wrapperState.wasMultiple=!!r.multiple,null!=(a=r.value)?ie(n,!!r.multiple,a,!1):e!==!!r.multiple&&(null!=r.defaultValue?ie(n,!!r.multiple,r.defaultValue,!0):ie(n,!!r.multiple,r.multiple?[]:"",!1))}}}return;case 6:if(null===t.stateNode)throw Error(i(162));return void(t.stateNode.nodeValue=t.memoizedProps);case 3:return void((n=t.stateNode).hydrate&&(n.hydrate=!1,vt(n.containerInfo)));case 13:return null!==t.memoizedState&&(Ys=Yo(),fs(t.child,!0)),void Ms(t);case 19:return void Ms(t);case 23:case 24:return void fs(t,null!==t.memoizedState)}throw Error(i(163))}function Ms(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new ds),t.forEach((function(t){var r=Pl.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))}))}}function ks(e,t){return null!==e&&(null===(e=e.memoizedState)||null!==e.dehydrated)&&null!==(t=t.memoizedState)&&null===t.dehydrated}var Ns=Math.ceil,_s=y.ReactCurrentDispatcher,Ss=y.ReactCurrentOwner,Ls=0,Bs=null,Ds=null,Is=0,js=0,Es=so(0),Ts=0,Os=null,Ps=0,zs=0,Rs=0,Us=0,Fs=null,Ys=0,Vs=1/0;function Gs(){Vs=Yo()+500}var Ws,Hs=null,Qs=!1,Zs=null,qs=null,Xs=!1,Js=null,Ks=90,$s=[],el=[],tl=null,nl=0,rl=null,ol=-1,al=0,il=0,sl=null,ll=!1;function cl(){return 48&Ls?Yo():-1!==ol?ol:ol=Yo()}function ul(e){if(!(2&(e=e.mode)))return 1;if(!(4&e))return 99===Vo()?1:2;if(0===al&&(al=Ps),0!==qo.transition){0!==il&&(il=null!==Fs?Fs.pendingLanes:0),e=al;var t=4186112&~il;return 0==(t&=-t)&&0==(t=(e=4186112&~e)&-e)&&(t=8192),t}return e=Vo(),e=zt(4&Ls&&98===e?12:e=function(e){switch(e){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}(e),al)}function dl(e,t,n){if(50<nl)throw nl=0,rl=null,Error(i(185));if(null===(e=pl(e,t)))return null;Ft(e,t,n),e===Bs&&(Rs|=t,4===Ts&&fl(e,Is));var r=Vo();1===t?8&Ls&&!(48&Ls)?gl(e):(hl(e,n),0===Ls&&(Gs(),Qo())):(!(4&Ls)||98!==r&&99!==r||(null===tl?tl=new Set([e]):tl.add(e)),hl(e,n)),Fs=e}function pl(e,t){e.lanes|=t;var n=e.alternate;for(null!==n&&(n.lanes|=t),n=e,e=e.return;null!==e;)e.childLanes|=t,null!==(n=e.alternate)&&(n.childLanes|=t),n=e,e=e.return;return 3===n.tag?n.stateNode:null}function hl(e,t){for(var n=e.callbackNode,r=e.suspendedLanes,o=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes;0<s;){var l=31-Yt(s),c=1<<l,u=a[l];if(-1===u){if(!(c&r)||c&o){u=t,Tt(c);var d=Et;a[l]=10<=d?u+250:6<=d?u+5e3:-1}}else u<=t&&(e.expiredLanes|=c);s&=~c}if(r=Ot(e,e===Bs?Is:0),t=Et,0===r)null!==n&&(n!==Oo&&No(n),e.callbackNode=null,e.callbackPriority=0);else{if(null!==n){if(e.callbackPriority===t)return;n!==Oo&&No(n)}15===t?(n=gl.bind(null,e),null===zo?(zo=[n],Ro=ko(Do,Zo)):zo.push(n),n=Oo):14===t?n=Ho(99,gl.bind(null,e)):(n=function(e){switch(e){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(i(358,e))}}(t),n=Ho(n,Al.bind(null,e))),e.callbackPriority=t,e.callbackNode=n}}function Al(e){if(ol=-1,il=al=0,48&Ls)throw Error(i(327));var t=e.callbackNode;if(Bl()&&e.callbackNode!==t)return null;var n=Ot(e,e===Bs?Is:0);if(0===n)return null;var r=n,o=Ls;Ls|=16;var a=yl();for(Bs===e&&Is===r||(Gs(),bl(e,r));;)try{Ml();break}catch(t){vl(e,t)}if(ta(),_s.current=a,Ls=o,null!==Ds?r=0:(Bs=null,Is=0,r=Ts),Ps&Rs)bl(e,0);else if(0!==r){if(2===r&&(Ls|=64,e.hydrate&&(e.hydrate=!1,Wr(e.containerInfo)),0!==(n=Pt(e))&&(r=xl(e,n))),1===r)throw t=Os,bl(e,0),fl(e,n),hl(e,Yo()),t;switch(e.finishedWork=e.current.alternate,e.finishedLanes=n,r){case 0:case 1:throw Error(i(345));case 2:case 5:_l(e);break;case 3:if(fl(e,n),(62914560&n)===n&&10<(r=Ys+500-Yo())){if(0!==Ot(e,0))break;if(((o=e.suspendedLanes)&n)!==n){cl(),e.pingedLanes|=e.suspendedLanes&o;break}e.timeoutHandle=Vr(_l.bind(null,e),r);break}_l(e);break;case 4:if(fl(e,n),(4186112&n)===n)break;for(r=e.eventTimes,o=-1;0<n;){var s=31-Yt(n);a=1<<s,(s=r[s])>o&&(o=s),n&=~a}if(n=o,10<(n=(120>(n=Yo()-n)?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*Ns(n/1960))-n)){e.timeoutHandle=Vr(_l.bind(null,e),n);break}_l(e);break;default:throw Error(i(329))}}return hl(e,Yo()),e.callbackNode===t?Al.bind(null,e):null}function fl(e,t){for(t&=~Us,t&=~Rs,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Yt(t),r=1<<n;e[n]=-1,t&=~r}}function gl(e){if(48&Ls)throw Error(i(327));if(Bl(),e===Bs&&e.expiredLanes&Is){var t=Is,n=xl(e,t);Ps&Rs&&(n=xl(e,t=Ot(e,t)))}else n=xl(e,t=Ot(e,0));if(0!==e.tag&&2===n&&(Ls|=64,e.hydrate&&(e.hydrate=!1,Wr(e.containerInfo)),0!==(t=Pt(e))&&(n=xl(e,t))),1===n)throw n=Os,bl(e,0),fl(e,t),hl(e,Yo()),n;return e.finishedWork=e.current.alternate,e.finishedLanes=t,_l(e),hl(e,Yo()),null}function ml(e,t){co(Es,js),js|=t,Ps|=t}function Cl(){js=Es.current,lo(Es)}function bl(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,Gr(n)),null!==Ds)for(n=Ds.return;null!==n;){var r=n;switch(r.tag){case 1:null!=(r=r.type.childContextTypes)&&mo();break;case 3:ja(),lo(ho),lo(po),Za();break;case 5:Ta(r);break;case 4:ja();break;case 13:case 19:lo(Oa);break;case 10:na(r);break;case 23:case 24:Cl()}n=n.return}Bs=e,Ds=Fl(e.current,null),Is=js=Ps=t,Ts=0,Os=null,Us=Rs=zs=0}function vl(e,t){for(;;){var n=Ds;try{if(ta(),qa.current=Bi,ti){for(var r=Ka.memoizedState;null!==r;){var o=r.queue;null!==o&&(o.pending=null),r=r.next}ti=!1}if(Ja=0,ei=$a=Ka=null,ni=!1,Ss.current=null,null===n||null===n.return){Ts=1,Os=t,Ds=null;break}e:{var a=e,i=n.return,s=n,l=t;if(t=Is,s.flags|=2048,s.firstEffect=s.lastEffect=null,null!==l&&"object"==typeof l&&"function"==typeof l.then){var c=l;if(!(2&s.mode)){var u=s.alternate;u?(s.updateQueue=u.updateQueue,s.memoizedState=u.memoizedState,s.lanes=u.lanes):(s.updateQueue=null,s.memoizedState=null)}var d=!!(1&Oa.current),p=i;do{var h;if(h=13===p.tag){var A=p.memoizedState;if(null!==A)h=null!==A.dehydrated;else{var f=p.memoizedProps;h=void 0!==f.fallback&&(!0!==f.unstable_avoidThisFallback||!d)}}if(h){var g=p.updateQueue;if(null===g){var m=new Set;m.add(c),p.updateQueue=m}else g.add(c);if(!(2&p.mode)){if(p.flags|=64,s.flags|=16384,s.flags&=-2981,1===s.tag)if(null===s.alternate)s.tag=17;else{var C=ca(-1,1);C.tag=2,ua(s,C)}s.lanes|=1;break e}l=void 0,s=t;var b=a.pingCache;if(null===b?(b=a.pingCache=new ls,l=new Set,b.set(c,l)):void 0===(l=b.get(c))&&(l=new Set,b.set(c,l)),!l.has(s)){l.add(s);var v=Ol.bind(null,a,c,s);c.then(v,v)}p.flags|=4096,p.lanes=t;break e}p=p.return}while(null!==p);l=Error((Q(s.type)||"A React component")+" suspended while rendering, but no fallback UI was specified.\n\nAdd a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display.")}5!==Ts&&(Ts=2),l=is(l,s),p=i;do{switch(p.tag){case 3:a=l,p.flags|=4096,t&=-t,p.lanes|=t,da(p,cs(0,a,t));break e;case 1:a=l;var y=p.type,x=p.stateNode;if(!(64&p.flags||"function"!=typeof y.getDerivedStateFromError&&(null===x||"function"!=typeof x.componentDidCatch||null!==qs&&qs.has(x)))){p.flags|=4096,t&=-t,p.lanes|=t,da(p,us(p,a,t));break e}}p=p.return}while(null!==p)}Nl(n)}catch(e){t=e,Ds===n&&null!==n&&(Ds=n=n.return);continue}break}}function yl(){var e=_s.current;return _s.current=Bi,null===e?Bi:e}function xl(e,t){var n=Ls;Ls|=16;var r=yl();for(Bs===e&&Is===t||bl(e,t);;)try{wl();break}catch(t){vl(e,t)}if(ta(),Ls=n,_s.current=r,null!==Ds)throw Error(i(261));return Bs=null,Is=0,Ts}function wl(){for(;null!==Ds;)kl(Ds)}function Ml(){for(;null!==Ds&&!_o();)kl(Ds)}function kl(e){var t=Ws(e.alternate,e,js);e.memoizedProps=e.pendingProps,null===t?Nl(e):Ds=t,Ss.current=null}function Nl(e){var t=e;do{var n=t.alternate;if(e=t.return,2048&t.flags){if(null!==(n=as(t)))return n.flags&=2047,void(Ds=n);null!==e&&(e.firstEffect=e.lastEffect=null,e.flags|=2048)}else{if(null!==(n=os(n,t,js)))return void(Ds=n);if(24!==(n=t).tag&&23!==n.tag||null===n.memoizedState||1073741824&js||!(4&n.mode)){for(var r=0,o=n.child;null!==o;)r|=o.lanes|o.childLanes,o=o.sibling;n.childLanes=r}null!==e&&!(2048&e.flags)&&(null===e.firstEffect&&(e.firstEffect=t.firstEffect),null!==t.lastEffect&&(null!==e.lastEffect&&(e.lastEffect.nextEffect=t.firstEffect),e.lastEffect=t.lastEffect),1<t.flags&&(null!==e.lastEffect?e.lastEffect.nextEffect=t:e.firstEffect=t,e.lastEffect=t))}if(null!==(t=t.sibling))return void(Ds=t);Ds=t=e}while(null!==t);0===Ts&&(Ts=5)}function _l(e){var t=Vo();return Wo(99,Sl.bind(null,e,t)),null}function Sl(e,t){do{Bl()}while(null!==Js);if(48&Ls)throw Error(i(327));var n=e.finishedWork;if(null===n)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(i(177));e.callbackNode=null;var r=n.lanes|n.childLanes,o=r,a=e.pendingLanes&~o;e.pendingLanes=o,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=o,e.mutableReadLanes&=o,e.entangledLanes&=o,o=e.entanglements;for(var s=e.eventTimes,l=e.expirationTimes;0<a;){var c=31-Yt(a),u=1<<c;o[c]=0,s[c]=-1,l[c]=-1,a&=~u}if(null!==tl&&!(24&r)&&tl.has(e)&&tl.delete(e),e===Bs&&(Ds=Bs=null,Is=0),1<n.flags?null!==n.lastEffect?(n.lastEffect.nextEffect=n,r=n.firstEffect):r=n:r=n.firstEffect,null!==r){if(o=Ls,Ls|=32,Ss.current=null,Rr=Qt,fr(s=Ar())){if("selectionStart"in s)l={start:s.selectionStart,end:s.selectionEnd};else e:if(l=(l=s.ownerDocument)&&l.defaultView||window,(u=l.getSelection&&l.getSelection())&&0!==u.rangeCount){l=u.anchorNode,a=u.anchorOffset,c=u.focusNode,u=u.focusOffset;try{l.nodeType,c.nodeType}catch(e){l=null;break e}var d=0,p=-1,h=-1,A=0,f=0,g=s,m=null;t:for(;;){for(var C;g!==l||0!==a&&3!==g.nodeType||(p=d+a),g!==c||0!==u&&3!==g.nodeType||(h=d+u),3===g.nodeType&&(d+=g.nodeValue.length),null!==(C=g.firstChild);)m=g,g=C;for(;;){if(g===s)break t;if(m===l&&++A===a&&(p=d),m===c&&++f===u&&(h=d),null!==(C=g.nextSibling))break;m=(g=m).parentNode}g=C}l=-1===p||-1===h?null:{start:p,end:h}}else l=null;l=l||{start:0,end:0}}else l=null;Ur={focusedElem:s,selectionRange:l},Qt=!1,sl=null,ll=!1,Hs=r;do{try{Ll()}catch(e){if(null===Hs)throw Error(i(330));Tl(Hs,e),Hs=Hs.nextEffect}}while(null!==Hs);sl=null,Hs=r;do{try{for(s=e;null!==Hs;){var b=Hs.flags;if(16&b&&me(Hs.stateNode,""),128&b){var v=Hs.alternate;if(null!==v){var y=v.ref;null!==y&&("function"==typeof y?y(null):y.current=null)}}switch(1038&b){case 2:bs(Hs),Hs.flags&=-3;break;case 6:bs(Hs),Hs.flags&=-3,ws(Hs.alternate,Hs);break;case 1024:Hs.flags&=-1025;break;case 1028:Hs.flags&=-1025,ws(Hs.alternate,Hs);break;case 4:ws(Hs.alternate,Hs);break;case 8:xs(s,l=Hs);var x=l.alternate;ms(l),null!==x&&ms(x)}Hs=Hs.nextEffect}}catch(e){if(null===Hs)throw Error(i(330));Tl(Hs,e),Hs=Hs.nextEffect}}while(null!==Hs);if(y=Ur,v=Ar(),b=y.focusedElem,s=y.selectionRange,v!==b&&b&&b.ownerDocument&&hr(b.ownerDocument.documentElement,b)){null!==s&&fr(b)&&(v=s.start,void 0===(y=s.end)&&(y=v),"selectionStart"in b?(b.selectionStart=v,b.selectionEnd=Math.min(y,b.value.length)):(y=(v=b.ownerDocument||document)&&v.defaultView||window).getSelection&&(y=y.getSelection(),l=b.textContent.length,x=Math.min(s.start,l),s=void 0===s.end?x:Math.min(s.end,l),!y.extend&&x>s&&(l=s,s=x,x=l),l=pr(b,x),a=pr(b,s),l&&a&&(1!==y.rangeCount||y.anchorNode!==l.node||y.anchorOffset!==l.offset||y.focusNode!==a.node||y.focusOffset!==a.offset)&&((v=v.createRange()).setStart(l.node,l.offset),y.removeAllRanges(),x>s?(y.addRange(v),y.extend(a.node,a.offset)):(v.setEnd(a.node,a.offset),y.addRange(v))))),v=[];for(y=b;y=y.parentNode;)1===y.nodeType&&v.push({element:y,left:y.scrollLeft,top:y.scrollTop});for("function"==typeof b.focus&&b.focus(),b=0;b<v.length;b++)(y=v[b]).element.scrollLeft=y.left,y.element.scrollTop=y.top}Qt=!!Rr,Ur=Rr=null,e.current=n,Hs=r;do{try{for(b=e;null!==Hs;){var w=Hs.flags;if(36&w&&As(b,Hs.alternate,Hs),128&w){v=void 0;var M=Hs.ref;if(null!==M){var k=Hs.stateNode;Hs.tag,v=k,"function"==typeof M?M(v):M.current=v}}Hs=Hs.nextEffect}}catch(e){if(null===Hs)throw Error(i(330));Tl(Hs,e),Hs=Hs.nextEffect}}while(null!==Hs);Hs=null,Po(),Ls=o}else e.current=n;if(Xs)Xs=!1,Js=e,Ks=t;else for(Hs=r;null!==Hs;)t=Hs.nextEffect,Hs.nextEffect=null,8&Hs.flags&&((w=Hs).sibling=null,w.stateNode=null),Hs=t;if(0===(r=e.pendingLanes)&&(qs=null),1===r?e===rl?nl++:(nl=0,rl=e):nl=0,n=n.stateNode,wo&&"function"==typeof wo.onCommitFiberRoot)try{wo.onCommitFiberRoot(xo,n,void 0,!(64&~n.current.flags))}catch(e){}if(hl(e,Yo()),Qs)throw Qs=!1,e=Zs,Zs=null,e;return 8&Ls||Qo(),null}function Ll(){for(;null!==Hs;){var e=Hs.alternate;ll||null===sl||(8&Hs.flags?Ke(Hs,sl)&&(ll=!0):13===Hs.tag&&ks(e,Hs)&&Ke(Hs,sl)&&(ll=!0));var t=Hs.flags;256&t&&hs(e,Hs),!(512&t)||Xs||(Xs=!0,Ho(97,(function(){return Bl(),null}))),Hs=Hs.nextEffect}}function Bl(){if(90!==Ks){var e=97<Ks?97:Ks;return Ks=90,Wo(e,jl)}return!1}function Dl(e,t){$s.push(t,e),Xs||(Xs=!0,Ho(97,(function(){return Bl(),null})))}function Il(e,t){el.push(t,e),Xs||(Xs=!0,Ho(97,(function(){return Bl(),null})))}function jl(){if(null===Js)return!1;var e=Js;if(Js=null,48&Ls)throw Error(i(331));var t=Ls;Ls|=32;var n=el;el=[];for(var r=0;r<n.length;r+=2){var o=n[r],a=n[r+1],s=o.destroy;if(o.destroy=void 0,"function"==typeof s)try{s()}catch(e){if(null===a)throw Error(i(330));Tl(a,e)}}for(n=$s,$s=[],r=0;r<n.length;r+=2){o=n[r],a=n[r+1];try{var l=o.create;o.destroy=l()}catch(e){if(null===a)throw Error(i(330));Tl(a,e)}}for(l=e.current.firstEffect;null!==l;)e=l.nextEffect,l.nextEffect=null,8&l.flags&&(l.sibling=null,l.stateNode=null),l=e;return Ls=t,Qo(),!0}function El(e,t,n){ua(e,t=cs(0,t=is(n,t),1)),t=cl(),null!==(e=pl(e,1))&&(Ft(e,1,t),hl(e,t))}function Tl(e,t){if(3===e.tag)El(e,e,t);else for(var n=e.return;null!==n;){if(3===n.tag){El(n,e,t);break}if(1===n.tag){var r=n.stateNode;if("function"==typeof n.type.getDerivedStateFromError||"function"==typeof r.componentDidCatch&&(null===qs||!qs.has(r))){var o=us(n,e=is(t,e),1);if(ua(n,o),o=cl(),null!==(n=pl(n,1)))Ft(n,1,o),hl(n,o);else if("function"==typeof r.componentDidCatch&&(null===qs||!qs.has(r)))try{r.componentDidCatch(t,e)}catch(e){}break}}n=n.return}}function Ol(e,t,n){var r=e.pingCache;null!==r&&r.delete(t),t=cl(),e.pingedLanes|=e.suspendedLanes&n,Bs===e&&(Is&n)===n&&(4===Ts||3===Ts&&(62914560&Is)===Is&&500>Yo()-Ys?bl(e,0):Us|=n),hl(e,t)}function Pl(e,t){var n=e.stateNode;null!==n&&n.delete(t),0==(t=0)&&(2&(t=e.mode)?4&t?(0===al&&(al=Ps),0===(t=Rt(62914560&~al))&&(t=4194304)):t=99===Vo()?1:2:t=1),n=cl(),null!==(e=pl(e,t))&&(Ft(e,t,n),hl(e,n))}function zl(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.flags=0,this.lastEffect=this.firstEffect=this.nextEffect=null,this.childLanes=this.lanes=0,this.alternate=null}function Rl(e,t,n,r){return new zl(e,t,n,r)}function Ul(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Fl(e,t){var n=e.alternate;return null===n?((n=Rl(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.nextEffect=null,n.firstEffect=null,n.lastEffect=null),n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Yl(e,t,n,r,o,a){var s=2;if(r=e,"function"==typeof e)Ul(e)&&(s=1);else if("string"==typeof e)s=5;else e:switch(e){case M:return Vl(n.children,o,a,t);case O:s=8,o|=16;break;case k:s=8,o|=1;break;case N:return(e=Rl(12,n,t,8|o)).elementType=N,e.type=N,e.lanes=a,e;case B:return(e=Rl(13,n,t,o)).type=B,e.elementType=B,e.lanes=a,e;case D:return(e=Rl(19,n,t,o)).elementType=D,e.lanes=a,e;case P:return Gl(n,o,a,t);case z:return(e=Rl(24,n,t,o)).elementType=z,e.lanes=a,e;default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case _:s=10;break e;case S:s=9;break e;case L:s=11;break e;case I:s=14;break e;case j:s=16,r=null;break e;case E:s=22;break e}throw Error(i(130,null==e?e:typeof e,""))}return(t=Rl(s,n,t,o)).elementType=e,t.type=r,t.lanes=a,t}function Vl(e,t,n,r){return(e=Rl(7,e,r,t)).lanes=n,e}function Gl(e,t,n,r){return(e=Rl(23,e,r,t)).elementType=P,e.lanes=n,e}function Wl(e,t,n){return(e=Rl(6,e,null,t)).lanes=n,e}function Hl(e,t,n){return(t=Rl(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Ql(e,t,n){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.pendingContext=this.context=null,this.hydrate=n,this.callbackNode=null,this.callbackPriority=0,this.eventTimes=Ut(0),this.expirationTimes=Ut(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ut(0),this.mutableSourceEagerHydrationData=null}function Zl(e,t,n,r){var o=t.current,a=cl(),s=ul(o);e:if(n){t:{if(qe(n=n._reactInternals)!==n||1!==n.tag)throw Error(i(170));var l=n;do{switch(l.tag){case 3:l=l.stateNode.context;break t;case 1:if(go(l.type)){l=l.stateNode.__reactInternalMemoizedMergedChildContext;break t}}l=l.return}while(null!==l);throw Error(i(171))}if(1===n.tag){var c=n.type;if(go(c)){n=bo(n,c,l);break e}}n=l}else n=uo;return null===t.context?t.context=n:t.pendingContext=n,(t=ca(a,s)).payload={element:e},null!==(r=void 0===r?null:r)&&(t.callback=r),ua(o,t),dl(o,s,a),s}function ql(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function Xl(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n<t?n:t}}function Jl(e,t){Xl(e,t),(e=e.alternate)&&Xl(e,t)}function Kl(e,t,n){var r=null!=n&&null!=n.hydrationOptions&&n.hydrationOptions.mutableSources||null;if(n=new Ql(e,t,null!=n&&!0===n.hydrate),t=Rl(3,null,null,2===t?7:1===t?3:0),n.current=t,t.stateNode=n,sa(t),e[Kr]=n.current,Br(8===e.nodeType?e.parentNode:e),r)for(e=0;e<r.length;e++){var o=(t=r[e])._getVersion;o=o(t._source),null==n.mutableSourceEagerHydrationData?n.mutableSourceEagerHydrationData=[t,o]:n.mutableSourceEagerHydrationData.push(t,o)}this._internalRoot=n}function $l(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function ec(e,t,n,r,o){var a=n._reactRootContainer;if(a){var i=a._internalRoot;if("function"==typeof o){var s=o;o=function(){var e=ql(i);s.call(e)}}Zl(t,i,e,o)}else{if(a=n._reactRootContainer=function(e,t){if(t||(t=!(!(t=e?9===e.nodeType?e.documentElement:e.firstChild:null)||1!==t.nodeType||!t.hasAttribute("data-reactroot"))),!t)for(var n;n=e.lastChild;)e.removeChild(n);return new Kl(e,0,t?{hydrate:!0}:void 0)}(n,r),i=a._internalRoot,"function"==typeof o){var l=o;o=function(){var e=ql(i);l.call(e)}}!function(e,t){var n=Ls;Ls&=-2,Ls|=8;try{return e(t)}finally{0===(Ls=n)&&(Gs(),Qo())}}((function(){Zl(t,i,e,o)}))}return ql(i)}Ws=function(e,t,n){var r=t.lanes;if(null!==e)if(e.memoizedProps!==t.pendingProps||ho.current)Ti=!0;else{if(!(n&r)){switch(Ti=!1,t.tag){case 3:Wi(t),Ha();break;case 5:Ea(t);break;case 1:go(t.type)&&vo(t);break;case 4:Ia(t,t.stateNode.containerInfo);break;case 10:r=t.memoizedProps.value;var o=t.type._context;co(Jo,o._currentValue),o._currentValue=r;break;case 13:if(null!==t.memoizedState)return n&t.child.childLanes?Ji(e,t,n):(co(Oa,1&Oa.current),null!==(t=ns(e,t,n))?t.sibling:null);co(Oa,1&Oa.current);break;case 19:if(r=!!(n&t.childLanes),64&e.flags){if(r)return ts(e,t,n);t.flags|=64}if(null!==(o=t.memoizedState)&&(o.rendering=null,o.tail=null,o.lastEffect=null),co(Oa,Oa.current),r)break;return null;case 23:case 24:return t.lanes=0,Ui(e,t,n)}return ns(e,t,n)}Ti=!!(16384&e.flags)}else Ti=!1;switch(t.lanes=0,t.tag){case 2:if(r=t.type,null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,o=fo(t,po.current),oa(t,n),o=ai(null,t,r,e,o,n),t.flags|=1,"object"==typeof o&&null!==o&&"function"==typeof o.render&&void 0===o.$$typeof){if(t.tag=1,t.memoizedState=null,t.updateQueue=null,go(r)){var a=!0;vo(t)}else a=!1;t.memoizedState=null!==o.state&&void 0!==o.state?o.state:null,sa(t);var s=r.getDerivedStateFromProps;"function"==typeof s&&fa(t,r,s,e),o.updater=ga,t.stateNode=o,o._reactInternals=t,va(t,r,e,n),t=Gi(null,t,r,!0,a,n)}else t.tag=0,Oi(null,t,o,n),t=t.child;return t;case 16:o=t.elementType;e:{switch(null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,o=(a=o._init)(o._payload),t.type=o,a=t.tag=function(e){if("function"==typeof e)return Ul(e)?1:0;if(null!=e){if((e=e.$$typeof)===L)return 11;if(e===I)return 14}return 2}(o),e=Xo(o,e),a){case 0:t=Yi(null,t,o,e,n);break e;case 1:t=Vi(null,t,o,e,n);break e;case 11:t=Pi(null,t,o,e,n);break e;case 14:t=zi(null,t,o,Xo(o.type,e),r,n);break e}throw Error(i(306,o,""))}return t;case 0:return r=t.type,o=t.pendingProps,Yi(e,t,r,o=t.elementType===r?o:Xo(r,o),n);case 1:return r=t.type,o=t.pendingProps,Vi(e,t,r,o=t.elementType===r?o:Xo(r,o),n);case 3:if(Wi(t),r=t.updateQueue,null===e||null===r)throw Error(i(282));if(r=t.pendingProps,o=null!==(o=t.memoizedState)?o.element:null,la(e,t),pa(t,r,null,n),(r=t.memoizedState.element)===o)Ha(),t=ns(e,t,n);else{if((a=(o=t.stateNode).hydrate)&&(Ra=Hr(t.stateNode.containerInfo.firstChild),za=t,a=Ua=!0),a){if(null!=(e=o.mutableSourceEagerHydrationData))for(o=0;o<e.length;o+=2)(a=e[o])._workInProgressVersionPrimary=e[o+1],Qa.push(a);for(n=Na(t,null,r,n),t.child=n;n;)n.flags=-3&n.flags|1024,n=n.sibling}else Oi(e,t,r,n),Ha();t=t.child}return t;case 5:return Ea(t),null===e&&Va(t),r=t.type,o=t.pendingProps,a=null!==e?e.memoizedProps:null,s=o.children,Yr(r,o)?s=null:null!==a&&Yr(r,a)&&(t.flags|=16),Fi(e,t),Oi(e,t,s,n),t.child;case 6:return null===e&&Va(t),null;case 13:return Ji(e,t,n);case 4:return Ia(t,t.stateNode.containerInfo),r=t.pendingProps,null===e?t.child=ka(t,null,r,n):Oi(e,t,r,n),t.child;case 11:return r=t.type,o=t.pendingProps,Pi(e,t,r,o=t.elementType===r?o:Xo(r,o),n);case 7:return Oi(e,t,t.pendingProps,n),t.child;case 8:case 12:return Oi(e,t,t.pendingProps.children,n),t.child;case 10:e:{r=t.type._context,o=t.pendingProps,s=t.memoizedProps,a=o.value;var l=t.type._context;if(co(Jo,l._currentValue),l._currentValue=a,null!==s)if(l=s.value,0==(a=lr(l,a)?0:0|("function"==typeof r._calculateChangedBits?r._calculateChangedBits(l,a):1073741823))){if(s.children===o.children&&!ho.current){t=ns(e,t,n);break e}}else for(null!==(l=t.child)&&(l.return=t);null!==l;){var c=l.dependencies;if(null!==c){s=l.child;for(var u=c.firstContext;null!==u;){if(u.context===r&&u.observedBits&a){1===l.tag&&((u=ca(-1,n&-n)).tag=2,ua(l,u)),l.lanes|=n,null!==(u=l.alternate)&&(u.lanes|=n),ra(l.return,n),c.lanes|=n;break}u=u.next}}else s=10===l.tag&&l.type===t.type?null:l.child;if(null!==s)s.return=l;else for(s=l;null!==s;){if(s===t){s=null;break}if(null!==(l=s.sibling)){l.return=s.return,s=l;break}s=s.return}l=s}Oi(e,t,o.children,n),t=t.child}return t;case 9:return o=t.type,r=(a=t.pendingProps).children,oa(t,n),r=r(o=aa(o,a.unstable_observedBits)),t.flags|=1,Oi(e,t,r,n),t.child;case 14:return a=Xo(o=t.type,t.pendingProps),zi(e,t,o,a=Xo(o.type,a),r,n);case 15:return Ri(e,t,t.type,t.pendingProps,r,n);case 17:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:Xo(r,o),null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),t.tag=1,go(r)?(e=!0,vo(t)):e=!1,oa(t,n),Ca(t,r,o),va(t,r,o,n),Gi(null,t,r,!0,e,n);case 19:return ts(e,t,n);case 23:case 24:return Ui(e,t,n)}throw Error(i(156,t.tag))},Kl.prototype.render=function(e){Zl(e,this._internalRoot,null,null)},Kl.prototype.unmount=function(){var e=this._internalRoot,t=e.containerInfo;Zl(null,e,null,(function(){t[Kr]=null}))},$e=function(e){13===e.tag&&(dl(e,4,cl()),Jl(e,4))},et=function(e){13===e.tag&&(dl(e,67108864,cl()),Jl(e,67108864))},tt=function(e){if(13===e.tag){var t=cl(),n=ul(e);dl(e,n,t),Jl(e,n)}},nt=function(e,t){return t()},Ne=function(e,t,n){switch(t){case"input":if(ne(e,n),t=n.name,"radio"===n.type&&null!=t){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var o=ro(r);if(!o)throw Error(i(90));J(r),ne(r,o)}}}break;case"textarea":ce(e,n);break;case"select":null!=(t=n.value)&&ie(e,!!n.multiple,t,!1)}},Ie=function(e,t){var n=Ls;Ls|=1;try{return e(t)}finally{0===(Ls=n)&&(Gs(),Qo())}},je=function(e,t,n,r,o){var a=Ls;Ls|=4;try{return Wo(98,e.bind(null,t,n,r,o))}finally{0===(Ls=a)&&(Gs(),Qo())}},Ee=function(){!(49&Ls)&&(function(){if(null!==tl){var e=tl;tl=null,e.forEach((function(e){e.expiredLanes|=24&e.pendingLanes,hl(e,Yo())}))}Qo()}(),Bl())},Te=function(e,t){var n=Ls;Ls|=2;try{return e(t)}finally{0===(Ls=n)&&(Gs(),Qo())}};var tc={findFiberByHostInstance:eo,bundleType:0,version:"17.0.2",rendererPackageName:"react-dom"},nc={bundleType:tc.bundleType,version:tc.version,rendererPackageName:tc.rendererPackageName,rendererConfig:tc.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:y.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=function(e){if(e=function(e){var t=e.alternate;if(!t){if(null===(t=qe(e)))throw Error(i(188));return t!==e?null:e}for(var n=e,r=t;;){var o=n.return;if(null===o)break;var a=o.alternate;if(null===a){if(null!==(r=o.return)){n=r;continue}break}if(o.child===a.child){for(a=o.child;a;){if(a===n)return Je(o),e;if(a===r)return Je(o),t;a=a.sibling}throw Error(i(188))}if(n.return!==r.return)n=o,r=a;else{for(var s=!1,l=o.child;l;){if(l===n){s=!0,n=o,r=a;break}if(l===r){s=!0,r=o,n=a;break}l=l.sibling}if(!s){for(l=a.child;l;){if(l===n){s=!0,n=a,r=o;break}if(l===r){s=!0,r=a,n=o;break}l=l.sibling}if(!s)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(3!==n.tag)throw Error(i(188));return n.stateNode.current===n?e:t}(e),!e)return null;for(var t=e;;){if(5===t.tag||6===t.tag)return t;if(t.child)t.child.return=t,t=t.child;else{if(t===e)break;for(;!t.sibling;){if(!t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}}return null}(e))?null:e.stateNode},findFiberByHostInstance:tc.findFiberByHostInstance||function(){return null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null};if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var rc=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!rc.isDisabled&&rc.supportsFiber)try{xo=rc.inject(nc),wo=rc}catch(fe){}}t.createPortal=function(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!$l(t))throw Error(i(200));return function(e,t,n){var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:w,key:null==r?null:""+r,children:e,containerInfo:t,implementation:n}}(e,t,null,n)},t.render=function(e,t,n){if(!$l(t))throw Error(i(200));return ec(null,e,t,!1,n)}},665:(e,t,n)=>{"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}(),e.exports=n(3903)},5924:(e,t,n)=>{"use strict";n(772);var r=n(7460),o=60103;if(t.Fragment=60107,"function"==typeof Symbol&&Symbol.for){var a=Symbol.for;o=a("react.element"),t.Fragment=a("react.fragment")}var i=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s=Object.prototype.hasOwnProperty,l={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,n){var r,a={},c=null,u=null;for(r in void 0!==n&&(c=""+n),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(u=t.ref),t)s.call(t,r)&&!l.hasOwnProperty(r)&&(a[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===a[r]&&(a[r]=t[r]);return{$$typeof:o,type:e,key:c,ref:u,props:a,_owner:i.current}}t.jsx=c,t.jsxs=c},6351:(e,t,n)=>{"use strict";var r=n(772),o=60103,a=60106;t.Fragment=60107,t.StrictMode=60108,t.Profiler=60114;var i=60109,s=60110,l=60112;t.Suspense=60113;var c=60115,u=60116;if("function"==typeof Symbol&&Symbol.for){var d=Symbol.for;o=d("react.element"),a=d("react.portal"),t.Fragment=d("react.fragment"),t.StrictMode=d("react.strict_mode"),t.Profiler=d("react.profiler"),i=d("react.provider"),s=d("react.context"),l=d("react.forward_ref"),t.Suspense=d("react.suspense"),c=d("react.memo"),u=d("react.lazy")}var p="function"==typeof Symbol&&Symbol.iterator;function h(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var A={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},f={};function g(e,t,n){this.props=e,this.context=t,this.refs=f,this.updater=n||A}function m(){}function C(e,t,n){this.props=e,this.context=t,this.refs=f,this.updater=n||A}g.prototype.isReactComponent={},g.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error(h(85));this.updater.enqueueSetState(this,e,t,"setState")},g.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},m.prototype=g.prototype;var b=C.prototype=new m;b.constructor=C,r(b,g.prototype),b.isPureReactComponent=!0;var v={current:null},y=Object.prototype.hasOwnProperty,x={key:!0,ref:!0,__self:!0,__source:!0};function w(e,t,n){var r,a={},i=null,s=null;if(null!=t)for(r in void 0!==t.ref&&(s=t.ref),void 0!==t.key&&(i=""+t.key),t)y.call(t,r)&&!x.hasOwnProperty(r)&&(a[r]=t[r]);var l=arguments.length-2;if(1===l)a.children=n;else if(1<l){for(var c=Array(l),u=0;u<l;u++)c[u]=arguments[u+2];a.children=c}if(e&&e.defaultProps)for(r in l=e.defaultProps)void 0===a[r]&&(a[r]=l[r]);return{$$typeof:o,type:e,key:i,ref:s,props:a,_owner:v.current}}function M(e){return"object"==typeof e&&null!==e&&e.$$typeof===o}var k=/\/+/g;function N(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function _(e,t,n,r,i){var s=typeof e;"undefined"!==s&&"boolean"!==s||(e=null);var l=!1;if(null===e)l=!0;else switch(s){case"string":case"number":l=!0;break;case"object":switch(e.$$typeof){case o:case a:l=!0}}if(l)return i=i(l=e),e=""===r?"."+N(l,0):r,Array.isArray(i)?(n="",null!=e&&(n=e.replace(k,"$&/")+"/"),_(i,t,n,"",(function(e){return e}))):null!=i&&(M(i)&&(i=function(e,t){return{$$typeof:o,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(i,n+(!i.key||l&&l.key===i.key?"":(""+i.key).replace(k,"$&/")+"/")+e)),t.push(i)),1;if(l=0,r=""===r?".":r+":",Array.isArray(e))for(var c=0;c<e.length;c++){var u=r+N(s=e[c],c);l+=_(s,t,n,u,i)}else if(u=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=p&&e[p]||e["@@iterator"])?e:null}(e),"function"==typeof u)for(e=u.call(e),c=0;!(s=e.next()).done;)l+=_(s=s.value,t,n,u=r+N(s,c++),i);else if("object"===s)throw t=""+e,Error(h(31,"[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t));return l}function S(e,t,n){if(null==e)return e;var r=[],o=0;return _(e,r,"","",(function(e){return t.call(n,e,o++)})),r}function L(e){if(-1===e._status){var t=e._result;t=t(),e._status=0,e._result=t,t.then((function(t){0===e._status&&(t=t.default,e._status=1,e._result=t)}),(function(t){0===e._status&&(e._status=2,e._result=t)}))}if(1===e._status)return e._result;throw e._result}var B={current:null};function D(){var e=B.current;if(null===e)throw Error(h(321));return e}var I={ReactCurrentDispatcher:B,ReactCurrentBatchConfig:{transition:0},ReactCurrentOwner:v,IsSomeRendererActing:{current:!1},assign:r};t.Children={map:S,forEach:function(e,t,n){S(e,(function(){t.apply(this,arguments)}),n)},count:function(e){var t=0;return S(e,(function(){t++})),t},toArray:function(e){return S(e,(function(e){return e}))||[]},only:function(e){if(!M(e))throw Error(h(143));return e}},t.Component=g,t.PureComponent=C,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=I,t.cloneElement=function(e,t,n){if(null==e)throw Error(h(267,e));var a=r({},e.props),i=e.key,s=e.ref,l=e._owner;if(null!=t){if(void 0!==t.ref&&(s=t.ref,l=v.current),void 0!==t.key&&(i=""+t.key),e.type&&e.type.defaultProps)var c=e.type.defaultProps;for(u in t)y.call(t,u)&&!x.hasOwnProperty(u)&&(a[u]=void 0===t[u]&&void 0!==c?c[u]:t[u])}var u=arguments.length-2;if(1===u)a.children=n;else if(1<u){c=Array(u);for(var d=0;d<u;d++)c[d]=arguments[d+2];a.children=c}return{$$typeof:o,type:e.type,key:i,ref:s,props:a,_owner:l}},t.createContext=function(e,t){return void 0===t&&(t=null),(e={$$typeof:s,_calculateChangedBits:t,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null}).Provider={$$typeof:i,_context:e},e.Consumer=e},t.createElement=w,t.createFactory=function(e){var t=w.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:l,render:e}},t.isValidElement=M,t.lazy=function(e){return{$$typeof:u,_payload:{_status:-1,_result:e},_init:L}},t.memo=function(e,t){return{$$typeof:c,type:e,compare:void 0===t?null:t}},t.useCallback=function(e,t){return D().useCallback(e,t)},t.useContext=function(e,t){return D().useContext(e,t)},t.useDebugValue=function(){},t.useEffect=function(e,t){return D().useEffect(e,t)},t.useImperativeHandle=function(e,t,n){return D().useImperativeHandle(e,t,n)},t.useLayoutEffect=function(e,t){return D().useLayoutEffect(e,t)},t.useMemo=function(e,t){return D().useMemo(e,t)},t.useReducer=function(e,t,n){return D().useReducer(e,t,n)},t.useRef=function(e){return D().useRef(e)},t.useState=function(e){return D().useState(e)},t.version="17.0.2"},7460:(e,t,n)=>{"use strict";e.exports=n(6351)},6088:(e,t,n)=>{"use strict";e.exports=n(5924)},6447:(e,t)=>{"use strict";var n,r,o,a;if("object"==typeof performance&&"function"==typeof performance.now){var i=performance;t.unstable_now=function(){return i.now()}}else{var s=Date,l=s.now();t.unstable_now=function(){return s.now()-l}}if("undefined"==typeof window||"function"!=typeof MessageChannel){var c=null,u=null,d=function(){if(null!==c)try{var e=t.unstable_now();c(!0,e),c=null}catch(e){throw setTimeout(d,0),e}};n=function(e){null!==c?setTimeout(n,0,e):(c=e,setTimeout(d,0))},r=function(e,t){u=setTimeout(e,t)},o=function(){clearTimeout(u)},t.unstable_shouldYield=function(){return!1},a=t.unstable_forceFrameRate=function(){}}else{var p=window.setTimeout,h=window.clearTimeout;if("undefined"!=typeof console){var A=window.cancelAnimationFrame;"function"!=typeof window.requestAnimationFrame&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),"function"!=typeof A&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")}var f=!1,g=null,m=-1,C=5,b=0;t.unstable_shouldYield=function(){return t.unstable_now()>=b},a=function(){},t.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):C=0<e?Math.floor(1e3/e):5};var v=new MessageChannel,y=v.port2;v.port1.onmessage=function(){if(null!==g){var e=t.unstable_now();b=e+C;try{g(!0,e)?y.postMessage(null):(f=!1,g=null)}catch(e){throw y.postMessage(null),e}}else f=!1},n=function(e){g=e,f||(f=!0,y.postMessage(null))},r=function(e,n){m=p((function(){e(t.unstable_now())}),n)},o=function(){h(m),m=-1}}function x(e,t){var n=e.length;e.push(t);e:for(;;){var r=n-1>>>1,o=e[r];if(!(void 0!==o&&0<k(o,t)))break e;e[r]=t,e[n]=o,n=r}}function w(e){return void 0===(e=e[0])?null:e}function M(e){var t=e[0];if(void 0!==t){var n=e.pop();if(n!==t){e[0]=n;e:for(var r=0,o=e.length;r<o;){var a=2*(r+1)-1,i=e[a],s=a+1,l=e[s];if(void 0!==i&&0>k(i,n))void 0!==l&&0>k(l,i)?(e[r]=l,e[s]=n,r=s):(e[r]=i,e[a]=n,r=a);else{if(!(void 0!==l&&0>k(l,n)))break e;e[r]=l,e[s]=n,r=s}}}return t}return null}function k(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}var N=[],_=[],S=1,L=null,B=3,D=!1,I=!1,j=!1;function E(e){for(var t=w(_);null!==t;){if(null===t.callback)M(_);else{if(!(t.startTime<=e))break;M(_),t.sortIndex=t.expirationTime,x(N,t)}t=w(_)}}function T(e){if(j=!1,E(e),!I)if(null!==w(N))I=!0,n(O);else{var t=w(_);null!==t&&r(T,t.startTime-e)}}function O(e,n){I=!1,j&&(j=!1,o()),D=!0;var a=B;try{for(E(n),L=w(N);null!==L&&(!(L.expirationTime>n)||e&&!t.unstable_shouldYield());){var i=L.callback;if("function"==typeof i){L.callback=null,B=L.priorityLevel;var s=i(L.expirationTime<=n);n=t.unstable_now(),"function"==typeof s?L.callback=s:L===w(N)&&M(N),E(n)}else M(N);L=w(N)}if(null!==L)var l=!0;else{var c=w(_);null!==c&&r(T,c.startTime-n),l=!1}return l}finally{L=null,B=a,D=!1}}var P=a;t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){I||D||(I=!0,n(O))},t.unstable_getCurrentPriorityLevel=function(){return B},t.unstable_getFirstCallbackNode=function(){return w(N)},t.unstable_next=function(e){switch(B){case 1:case 2:case 3:var t=3;break;default:t=B}var n=B;B=t;try{return e()}finally{B=n}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=P,t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=B;B=e;try{return t()}finally{B=n}},t.unstable_scheduleCallback=function(e,a,i){var s=t.unstable_now();switch(i="object"==typeof i&&null!==i&&"number"==typeof(i=i.delay)&&0<i?s+i:s,e){case 1:var l=-1;break;case 2:l=250;break;case 5:l=1073741823;break;case 4:l=1e4;break;default:l=5e3}return e={id:S++,callback:a,priorityLevel:e,startTime:i,expirationTime:l=i+l,sortIndex:-1},i>s?(e.sortIndex=i,x(_,e),null===w(N)&&e===w(_)&&(j?o():j=!0,r(T,i-s))):(e.sortIndex=l,x(N,e),I||D||(I=!0,n(O))),e},t.unstable_wrapCallback=function(e){var t=B;return function(){var n=B;B=t;try{return e.apply(this,arguments)}finally{B=n}}}},9798:(e,t,n)=>{"use strict";e.exports=n(6447)},8392:e=>{"use strict";var t=[];function n(e){for(var n=-1,r=0;r<t.length;r++)if(t[r].identifier===e){n=r;break}return n}function r(e,r){for(var a={},i=[],s=0;s<e.length;s++){var l=e[s],c=r.base?l[0]+r.base:l[0],u=a[c]||0,d="".concat(c," ").concat(u);a[c]=u+1;var p=n(d),h={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==p)t[p].references++,t[p].updater(h);else{var A=o(h,r);r.byIndex=s,t.splice(s,0,{identifier:d,updater:A,references:1})}i.push(d)}return i}function o(e,t){var n=t.domAPI(t);return n.update(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap&&t.supports===e.supports&&t.layer===e.layer)return;n.update(e=t)}else n.remove()}}e.exports=function(e,o){var a=r(e=e||[],o=o||{});return function(e){e=e||[];for(var i=0;i<a.length;i++){var s=n(a[i]);t[s].references--}for(var l=r(e,o),c=0;c<a.length;c++){var u=n(a[c]);0===t[u].references&&(t[u].updater(),t.splice(u,1))}a=l}}},3187:e=>{"use strict";var t={};e.exports=function(e,n){var r=function(e){if(void 0===t[e]){var n=document.querySelector(e);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(e){n=null}t[e]=n}return t[e]}(e);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(n)}},1316:e=>{"use strict";e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},3784:(e,t,n)=>{"use strict";e.exports=function(e){var t=n.nc;t&&e.setAttribute("nonce",t)}},2633:e=>{"use strict";e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(n){!function(e,t,n){var r="";n.supports&&(r+="@supports (".concat(n.supports,") {")),n.media&&(r+="@media ".concat(n.media," {"));var o=void 0!==n.layer;o&&(r+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),r+=n.css,o&&(r+="}"),n.media&&(r+="}"),n.supports&&(r+="}");var a=n.sourceMap;a&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(a))))," */")),t.styleTagTransform(r,e,t.options)}(t,e,n)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},9809:e=>{"use strict";e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},2395:t=>{"use strict";t.exports=e}},n={};function r(e){var o=n[e];if(void 0!==o)return o.exports;var a=n[e]={id:e,loaded:!1,exports:{}};return t[e](a,a.exports,r),a.loaded=!0,a.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.nc=void 0;var o={};return(()=>{"use strict";r.d(o,{default:()=>ii});var e={};r.r(e),r.d(e,{NodeEditor:()=>oi});var t,n,a=r(7460),i=r(665),s=r(2395),l=r(6088),c=r(8392),u=r.n(c),d=r(2633),p=r.n(d),h=r(3187),A=r.n(h),f=r(3784),g=r.n(f),m=r(1316),C=r.n(m),b=r(9809),v=r.n(b),y=r(9707),x={};x.styleTagTransform=v(),x.setAttributes=g(),x.insert=A().bind(null,"head"),x.domAPI=p(),x.insertStyleElement=C(),u()(y.A,x),y.A&&y.A.locals&&y.A.locals;class w{constructor(e,t){this.message=e,this.isError=t,this.time=new Date}}class M extends a.Component{constructor(e){super(e),this.state={logs:[]},this._logConsoleRef=a.createRef()}componentDidMount(){this.props.globalState.onLogRequiredObservable.add((e=>{const t=this.state.logs;t.push(e),this.setState({logs:t})}))}componentDidUpdate(){this._logConsoleRef.current&&(this._logConsoleRef.current.scrollTop=this._logConsoleRef.current.scrollHeight)}render(){return(0,l.jsx)("div",{id:"nme-log-console",ref:this._logConsoleRef,children:this.state.logs.map(((e,t)=>(0,l.jsx)("div",{className:"log"+(e.isError?" error":""),children:e.time.getHours()+":"+e.time.getMinutes()+":"+e.time.getSeconds()+": "+e.message},t)))})}}!function(e){e[e.Sphere=0]="Sphere",e[e.Box=1]="Box",e[e.Torus=2]="Torus",e[e.Cylinder=3]="Cylinder",e[e.Plane=4]="Plane",e[e.ShaderBall=5]="ShaderBall",e[e.DefaultParticleSystem=6]="DefaultParticleSystem",e[e.Bubbles=7]="Bubbles",e[e.Smoke=8]="Smoke",e[e.Rain=9]="Rain",e[e.Explosion=10]="Explosion",e[e.Fire=11]="Fire",e[e.Parrot=12]="Parrot",e[e.BricksSkull=13]="BricksSkull",e[e.Plants=14]="Plants",e[e.Custom=15]="Custom",e[e.Room=16]="Room"}(t||(t={}));class k{static GetBlockFromString(e,t,n){switch(e){case"StorageWriteBlock":return new s.StorageWriteBlock("StorageWrite");case"StorageReadBlock":return new s.StorageReadBlock("StorageRead");case"LoopBlock":return new s.LoopBlock("Loop");case"ColorConverterBlock":return new s.ColorConverterBlock("ColorConverter");case"TeleportInBlock":return new s.NodeMaterialTeleportInBlock("Teleport In");case"TeleportOutBlock":return new s.NodeMaterialTeleportOutBlock("Teleport Out");case"HeightToNormalBlock":return new s.HeightToNormalBlock("HeightToNormal");case"ElbowBlock":return new s.ElbowBlock("");case"TwirlBlock":return new s.TwirlBlock("Twirl");case"VoronoiNoiseBlock":return new s.VoronoiNoiseBlock("VoronoiNoise");case"ScreenSpaceBlock":return new s.ScreenSpaceBlock("ScreenSpace");case"CloudBlock":return new s.CloudBlock("Cloud");case"MatrixBuilderBlock":return new s.MatrixBuilderBlock("MatrixBuilder");case"DesaturateBlock":return new s.DesaturateBlock("Desaturate");case"RefractBlock":return new s.RefractBlock("Refract");case"ReflectBlock":return new s.ReflectBlock("Reflect");case"DerivativeBlock":return new s.DerivativeBlock("Derivative");case"Rotate2dBlock":return new s.Rotate2dBlock("Rotate2d");case"NormalBlendBlock":return new s.NormalBlendBlock("NormalBlend");case"WorleyNoise3DBlock":return new s.WorleyNoise3DBlock("WorleyNoise3D");case"SimplexPerlin3DBlock":return new s.SimplexPerlin3DBlock("SimplexPerlin3D");case"BonesBlock":return new s.BonesBlock("Bones");case"InstancesBlock":return new s.InstancesBlock("Instances");case"MorphTargetsBlock":return new s.MorphTargetsBlock("MorphTargets");case"DiscardBlock":return new s.DiscardBlock("Discard");case"PrePassTextureBlock":return new s.PrePassTextureBlock("PrePassTexture");case"ImageProcessingBlock":return new s.ImageProcessingBlock("ImageProcessing");case"ColorMergerBlock":return new s.ColorMergerBlock("ColorMerger");case"VectorMergerBlock":return new s.VectorMergerBlock("VectorMerger");case"ColorSplitterBlock":return new s.ColorSplitterBlock("ColorSplitter");case"VectorSplitterBlock":return new s.VectorSplitterBlock("VectorSplitter");case"TextureBlock":return new s.TextureBlock("Texture",n.mode===s.NodeMaterialModes.Particle);case"ReflectionTextureBlock":return new s.ReflectionTextureBlock("Reflection texture");case"LightBlock":return new s.LightBlock("Lights");case"FogBlock":return new s.FogBlock("Fog");case"VertexOutputBlock":return new s.VertexOutputBlock("VertexOutput");case"FragmentOutputBlock":return new s.FragmentOutputBlock("FragmentOutput");case"PrePassOutputBlock":return new s.PrePassOutputBlock("PrePassOutput");case"AddBlock":return new s.AddBlock("Add");case"ClampBlock":return new s.ClampBlock("Clamp");case"ScaleBlock":return new s.ScaleBlock("Scale");case"CrossBlock":return new s.CrossBlock("Cross");case"DotBlock":return new s.DotBlock("Dot");case"PowBlock":return new s.PowBlock("Pow");case"MultiplyBlock":return new s.MultiplyBlock("Multiply");case"TransformBlock":return new s.TransformBlock("Transform");case"TrigonometryBlock":return new s.TrigonometryBlock("Trigonometry");case"RemapBlock":return new s.RemapBlock("Remap");case"NormalizeBlock":return new s.NormalizeBlock("Normalize");case"FresnelBlock":return new s.FresnelBlock("Fresnel");case"LerpBlock":return new s.LerpBlock("Lerp");case"NLerpBlock":return new s.NLerpBlock("NLerp");case"DivideBlock":return new s.DivideBlock("Divide");case"SubtractBlock":return new s.SubtractBlock("Subtract");case"ModBlock":return new s.ModBlock("Mod");case"StepBlock":return new s.StepBlock("Step");case"SmoothStepBlock":return new s.SmoothStepBlock("Smooth step");case"OneMinusBlock":return new s.OneMinusBlock("One minus");case"ReciprocalBlock":return new s.ReciprocalBlock("Reciprocal");case"ViewDirectionBlock":return new s.ViewDirectionBlock("View direction");case"LightInformationBlock":{const e=new s.LightInformationBlock("Light information");return e.light=t.lights.length?t.lights[0]:null,e}case"MaxBlock":return new s.MaxBlock("Max");case"MinBlock":return new s.MinBlock("Min");case"LengthBlock":return new s.LengthBlock("Length");case"DistanceBlock":return new s.DistanceBlock("Distance");case"NegateBlock":return new s.NegateBlock("Negate");case"PerturbNormalBlock":return new s.PerturbNormalBlock("Perturb normal");case"TBNBlock":return new s.TBNBlock("TBN");case"RandomNumberBlock":return new s.RandomNumberBlock("Random number");case"ReplaceColorBlock":return new s.ReplaceColorBlock("Replace color");case"PosterizeBlock":return new s.PosterizeBlock("Posterize");case"ArcTan2Block":return new s.ArcTan2Block("ArcTan2");case"GradientBlock":return new s.GradientBlock("Gradient");case"FrontFacingBlock":return new s.FrontFacingBlock("Front facing");case"MeshAttributeExistsBlock":return new s.MeshAttributeExistsBlock("Attribute exists");case"CosBlock":{const e=new s.TrigonometryBlock("Cos");return e.operation=s.TrigonometryBlockOperations.Cos,e}case"SinBlock":{const e=new s.TrigonometryBlock("Sin");return e.operation=s.TrigonometryBlockOperations.Sin,e}case"AbsBlock":{const e=new s.TrigonometryBlock("Abs");return e.operation=s.TrigonometryBlockOperations.Abs,e}case"SqrtBlock":{const e=new s.TrigonometryBlock("Sqrt");return e.operation=s.TrigonometryBlockOperations.Sqrt,e}case"ArcCosBlock":{const e=new s.TrigonometryBlock("ArcCos");return e.operation=s.TrigonometryBlockOperations.ArcCos,e}case"ArcSinBlock":{const e=new s.TrigonometryBlock("ArcSin");return e.operation=s.TrigonometryBlockOperations.ArcSin,e}case"TanBlock":{const e=new s.TrigonometryBlock("Tan");return e.operation=s.TrigonometryBlockOperations.Tan,e}case"ArcTanBlock":{const e=new s.TrigonometryBlock("ArcTan");return e.operation=s.TrigonometryBlockOperations.ArcTan,e}case"FractBlock":{const e=new s.TrigonometryBlock("Fract");return e.operation=s.TrigonometryBlockOperations.Fract,e}case"SignBlock":{const e=new s.TrigonometryBlock("Sign");return e.operation=s.TrigonometryBlockOperations.Sign,e}case"LogBlock":{const e=new s.TrigonometryBlock("Log");return e.operation=s.TrigonometryBlockOperations.Log,e}case"ExpBlock":{const e=new s.TrigonometryBlock("Exp");return e.operation=s.TrigonometryBlockOperations.Exp,e}case"Exp2Block":{const e=new s.TrigonometryBlock("Exp2");return e.operation=s.TrigonometryBlockOperations.Exp2,e}case"DegreesToRadiansBlock":{const e=new s.TrigonometryBlock("Degrees to radians");return e.operation=s.TrigonometryBlockOperations.Radians,e}case"RadiansToDegreesBlock":{const e=new s.TrigonometryBlock("Radians to degrees");return e.operation=s.TrigonometryBlockOperations.Degrees,e}case"RoundBlock":{const e=new s.TrigonometryBlock("Round");return e.operation=s.TrigonometryBlockOperations.Round,e}case"CeilingBlock":{const e=new s.TrigonometryBlock("Ceiling");return e.operation=s.TrigonometryBlockOperations.Ceiling,e}case"FloorBlock":{const e=new s.TrigonometryBlock("Floor");return e.operation=s.TrigonometryBlockOperations.Floor,e}case"SawToothWaveBlock":{const e=new s.WaveBlock("SawTooth wave");return e.kind=0,e}case"SquareWaveBlock":{const e=new s.WaveBlock("Square wave");return e.kind=1,e}case"TriangleWaveBlock":{const e=new s.WaveBlock("Triangle wave");return e.kind=2,e}case"SetBlock":{const e=new s.TrigonometryBlock("Set");return e.operation=s.TrigonometryBlockOperations.Set,e}case"WorldMatrixBlock":{const e=new s.InputBlock("World");return e.setAsSystemValue(s.NodeMaterialSystemValues.World),e}case"WorldViewMatrixBlock":{const e=new s.InputBlock("World x View");return e.setAsSystemValue(s.NodeMaterialSystemValues.WorldView),e}case"WorldViewProjectionMatrixBlock":{const e=new s.InputBlock("World x View x Projection");return e.setAsSystemValue(s.NodeMaterialSystemValues.WorldViewProjection),e}case"ViewMatrixBlock":{const e=new s.InputBlock("View");return e.setAsSystemValue(s.NodeMaterialSystemValues.View),e}case"ViewProjectionMatrixBlock":{const e=new s.InputBlock("View x Projection");return e.setAsSystemValue(s.NodeMaterialSystemValues.ViewProjection),e}case"ProjectionMatrixBlock":{const e=new s.InputBlock("Projection");return e.setAsSystemValue(s.NodeMaterialSystemValues.Projection),e}case"CameraPositionBlock":{const e=new s.InputBlock("Camera position");return e.setAsSystemValue(s.NodeMaterialSystemValues.CameraPosition),e}case"CameraParametersBlock":{const e=new s.InputBlock("Camera parameters");e.setAsSystemValue(s.NodeMaterialSystemValues.CameraParameters);const t=new s.VectorSplitterBlock("Vector splitter");return e.connectTo(t),t}case"FogColorBlock":{const e=new s.InputBlock("Fog color");return e.setAsSystemValue(s.NodeMaterialSystemValues.FogColor),e}case"PositionBlock":{const e=new s.InputBlock("position");return e.setAsAttribute("position"),e}case"ScreenPositionBlock":{const e=new s.InputBlock("position");return e.setAsAttribute("position2d"),e}case"UVBlock":{const e=new s.InputBlock("uv");return e.setAsAttribute("uv"),e}case"ColorBlock":{const e=new s.InputBlock("color");return e.setAsAttribute("color"),e}case"InstanceColorBlock":{const e=new s.InputBlock("Instance Color");return e.setAsAttribute("instanceColor"),e}case"SplatIndexBlock":{const e=new s.InputBlock("SplatIndex");return e.setAsAttribute("splatIndex"),e}case"NormalBlock":{const e=new s.InputBlock("normal");return e.setAsAttribute("normal"),e}case"TangentBlock":{const e=new s.InputBlock("tangent");return e.setAsAttribute("tangent"),e}case"MatrixIndicesBlock":{const e=new s.InputBlock("matricesIndices");return e.setAsAttribute("matricesIndices"),e}case"MatrixWeightsBlock":{const e=new s.InputBlock("matricesWeights");return e.setAsAttribute("matricesWeights"),e}case"MatrixIndicesExtraBlock":{const e=new s.InputBlock("matricesIndicesExtra");return e.setAsAttribute("matricesIndicesExtra"),e}case"MatrixWeightsExtraBlock":{const e=new s.InputBlock("matricesWeightsExtra");return e.setAsAttribute("matricesWeightsExtra"),e}case"MouseInfoBlock":{const e=new s.InputBlock("MouseInfo",void 0,s.NodeMaterialBlockConnectionPointTypes.Vector4);return e.animationType=s.AnimatedInputBlockTypes.MouseInfo,e}case"TimeBlock":{const e=new s.InputBlock("Time",void 0,s.NodeMaterialBlockConnectionPointTypes.Float);return e.animationType=s.AnimatedInputBlockTypes.Time,e}case"RealTimeBlock":{const e=new s.InputBlock("RealTime",void 0,s.NodeMaterialBlockConnectionPointTypes.Float);return e.animationType=s.AnimatedInputBlockTypes.RealTime,e}case"DeltaTimeBlock":{const e=new s.InputBlock("Delta time");return e.setAsSystemValue(s.NodeMaterialSystemValues.DeltaTime),e}case"MaterialAlphaBlock":{const e=new s.InputBlock("Material alpha");return e.setAsSystemValue(s.NodeMaterialSystemValues.MaterialAlpha),e}case"WorldPositionBlock":{let e=n.getInputBlockByPredicate((e=>e.isAttribute&&"position"===e.name));e||(e=new s.InputBlock("position"),e.setAsAttribute("position"));let t=n.getInputBlockByPredicate((e=>e.isSystemValue&&e.systemValue===s.NodeMaterialSystemValues.World));t||(t=new s.InputBlock("World"),t.setAsSystemValue(s.NodeMaterialSystemValues.World));const r=new s.TransformBlock("World position");return e.connectTo(r),t.connectTo(r),r}case"WorldNormalBlock":{let e=n.getInputBlockByPredicate((e=>e.isAttribute&&"normal"===e.name));e||(e=new s.InputBlock("normal"),e.setAsAttribute("normal"));let t=n.getInputBlockByPredicate((e=>e.isSystemValue&&e.systemValue===s.NodeMaterialSystemValues.World));t||(t=new s.InputBlock("World"),t.setAsSystemValue(s.NodeMaterialSystemValues.World));const r=new s.TransformBlock("World normal");return e.connectTo(r),t.connectTo(r),r}case"WorldTangentBlock":{let e=n.getInputBlockByPredicate((e=>e.isAttribute&&"tangent"===e.name));e||(e=new s.InputBlock("tangent"),e.setAsAttribute("tangent"));let t=n.getInputBlockByPredicate((e=>e.isSystemValue&&e.systemValue===s.NodeMaterialSystemValues.World));t||(t=new s.InputBlock("World"),t.setAsSystemValue(s.NodeMaterialSystemValues.World));const r=new s.TransformBlock("World tangent");return e.connectTo(r),t.connectTo(r),r}case"PBRMetallicRoughnessBlock":return new s.PBRMetallicRoughnessBlock("PBRMetallicRoughness");case"SheenBlock":return new s.SheenBlock("Sheen");case"AnisotropyBlock":return new s.AnisotropyBlock("Anisotropy");case"ReflectionBlock":return new s.ReflectionBlock("Reflection");case"ClearCoatBlock":return new s.ClearCoatBlock("ClearCoat");case"RefractionBlock":return new s.RefractionBlock("Refraction");case"SubSurfaceBlock":return new s.SubSurfaceBlock("SubSurface");case"CurrentScreenBlock":return new s.CurrentScreenBlock("CurrentScreen");case"ParticleUVBlock":{const e=new s.InputBlock("uv");return e.setAsAttribute("particle_uv"),e}case"ParticleTextureBlock":return new s.ParticleTextureBlock("ParticleTexture");case"ParticleColorBlock":{const e=new s.InputBlock("Color");return e.setAsAttribute("particle_color"),e}case"ParticleTextureMaskBlock":{const e=new s.InputBlock("TextureMask");return e.setAsAttribute("particle_texturemask"),e}case"ParticlePositionWorldBlock":{const e=new s.InputBlock("PositionWorld");return e.setAsAttribute("particle_positionw"),e}case"ParticleRampGradientBlock":return new s.ParticleRampGradientBlock("ParticleRampGradient");case"ParticleBlendMultiplyBlock":return new s.ParticleBlendMultiplyBlock("ParticleBlendMultiply");case"FragCoordBlock":return new s.FragCoordBlock("FragCoord");case"ScreenSizeBlock":return new s.ScreenSizeBlock("ScreenSize");case"SceneDepthBlock":return new s.SceneDepthBlock("SceneDepth");case"EqualBlock":{const e=new s.ConditionalBlock("Equal");return e.condition=s.ConditionalBlockConditions.Equal,e}case"NotEqualBlock":{const e=new s.ConditionalBlock("NotEqual");return e.condition=s.ConditionalBlockConditions.NotEqual,e}case"LessThanBlock":{const e=new s.ConditionalBlock("LessThan");return e.condition=s.ConditionalBlockConditions.LessThan,e}case"LessOrEqualBlock":{const e=new s.ConditionalBlock("LessOrEqual");return e.condition=s.ConditionalBlockConditions.LessOrEqual,e}case"GreaterThanBlock":{const e=new s.ConditionalBlock("GreaterThan");return e.condition=s.ConditionalBlockConditions.GreaterThan,e}case"GreaterOrEqualBlock":{const e=new s.ConditionalBlock("GreaterOrEqual");return e.condition=s.ConditionalBlockConditions.GreaterOrEqual,e}case"XorBlock":{const e=new s.ConditionalBlock("Xor");return e.condition=s.ConditionalBlockConditions.Xor,e}case"OrBlock":{const e=new s.ConditionalBlock("Or");return e.condition=s.ConditionalBlockConditions.Or,e}case"AndBlock":{const e=new s.ConditionalBlock("And");return e.condition=s.ConditionalBlockConditions.And,e}case"ImageSourceBlock":return new s.ImageSourceBlock("ImageSource");case"ClipPlanesBlock":return new s.ClipPlanesBlock("ClipPlanes");case"FragDepthBlock":return new s.FragDepthBlock("FragDepth");case"ShadowMapBlock":return new s.ShadowMapBlock("ShadowMap");case"TriPlanarBlock":return new s.TriPlanarBlock("TriPlanarTexture");case"BiPlanarBlock":return new s.BiPlanarBlock("BiPlanarTexture");case"MatrixTransposeBlock":return new s.MatrixTransposeBlock("Transpose");case"MatrixDeterminantBlock":return new s.MatrixDeterminantBlock("Determinant");case"CurveBlock":return new s.CurveBlock("Curve");case"GaussianSplattingBlock":return new s.GaussianSplattingBlock("GaussianSplatting");case"GaussianBlock":return new s.GaussianBlock("Gaussian");case"SplatReaderBlock":return new s.SplatReaderBlock("SplatReader")}return null}static GetColorFromConnectionNodeType(e){let t="#880000";switch(e){case s.NodeMaterialBlockConnectionPointTypes.Float:t="#cb9e27";break;case s.NodeMaterialBlockConnectionPointTypes.Vector2:t="#16bcb1";break;case s.NodeMaterialBlockConnectionPointTypes.Vector3:case s.NodeMaterialBlockConnectionPointTypes.Color3:t="#b786cb";break;case s.NodeMaterialBlockConnectionPointTypes.Vector4:case s.NodeMaterialBlockConnectionPointTypes.Color4:t="#be5126";break;case s.NodeMaterialBlockConnectionPointTypes.Matrix:t="#591990";break;case s.NodeMaterialBlockConnectionPointTypes.Object:t="#6174FA"}return t}static GetConnectionNodeTypeFromString(e){switch(e){case"Float":return s.NodeMaterialBlockConnectionPointTypes.Float;case"Vector2":return s.NodeMaterialBlockConnectionPointTypes.Vector2;case"Vector3":return s.NodeMaterialBlockConnectionPointTypes.Vector3;case"Vector4":return s.NodeMaterialBlockConnectionPointTypes.Vector4;case"Matrix":return s.NodeMaterialBlockConnectionPointTypes.Matrix;case"Color3":return s.NodeMaterialBlockConnectionPointTypes.Color3;case"Color4":return s.NodeMaterialBlockConnectionPointTypes.Color4}return s.NodeMaterialBlockConnectionPointTypes.AutoDetect}static GetStringFromConnectionNodeType(e){switch(e){case s.NodeMaterialBlockConnectionPointTypes.Float:return"Float";case s.NodeMaterialBlockConnectionPointTypes.Vector2:return"Vector2";case s.NodeMaterialBlockConnectionPointTypes.Vector3:return"Vector3";case s.NodeMaterialBlockConnectionPointTypes.Vector4:return"Vector4";case s.NodeMaterialBlockConnectionPointTypes.Color3:return"Color3";case s.NodeMaterialBlockConnectionPointTypes.Color4:return"Color4";case s.NodeMaterialBlockConnectionPointTypes.Matrix:return"Matrix"}return""}}class N{constructor(){this.lock=!1}}class _{constructor(){this.onSearchBoxRequiredObservable=new s.Observable,this.onSelectionChangedObservable=new s.Observable,this.onFrameCreatedObservable=new s.Observable,this.onUpdateRequiredObservable=new s.Observable,this.onGraphNodeRemovalObservable=new s.Observable,this.onSelectionBoxMoved=new s.Observable,this.onCandidateLinkMoved=new s.Observable,this.onCandidatePortSelectedObservable=new s.Observable,this.onNewNodeCreatedObservable=new s.Observable,this.onRebuildRequiredObservable=new s.Observable,this.onNodeMovedObservable=new s.Observable,this.onErrorMessageDialogRequiredObservable=new s.Observable,this.onExposePortOnFrameObservable=new s.Observable,this.onGridSizeChanged=new s.Observable,this.onNewBlockRequiredObservable=new s.Observable,this.onHighlightNodeObservable=new s.Observable,this.onPreviewCommandActivated=new s.Observable}}!function(e){e[e.Input=0]="Input",e[e.Output=1]="Output"}(n||(n={}));class S{}class L{get name(){const e=this.data.ownerBlock;let t=this.data.displayName||this.data.name;return this.data.ownerBlock.isInput&&1===this.data.ownerBlock.inputs.length&&(t=e.name),t}get internalName(){return this.data.name}get isExposedOnFrame(){return this.data.isExposedOnFrame}set isExposedOnFrame(e){this.data.isExposedOnFrame=e}get exposedPortPosition(){return this.data.exposedPortPosition}set exposedPortPosition(e){this.data.exposedPortPosition=e}get isConnected(){return this.data.isConnected}get connectedPort(){if(!this.isConnected)return null;if(!this._connectedPort&&this.data.connectedPoint){const e=this.data.connectedPoint.ownerBlock;let t=this._nodeContainer.nodes.find((t=>t.content.data===e));if(!t){t=this._nodeContainer.appendNode(S.NodeDataBuilder(e,this._nodeContainer));const n=this._nodeContainer.stateManager.data;-1===n.nodeMaterial.attachedBlocks.indexOf(e)&&n.nodeMaterial.attachedBlocks.push(e)}this._connectedPort=t.getPortDataForPortDataContent(this.data.connectedPoint)}return this._connectedPort}set connectedPort(e){this._connectedPort=e}get direction(){return 0===this.data.direction?n.Input:n.Output}get ownerData(){return this.data.ownerBlock}get needDualDirectionValidation(){return this.data.needDualDirectionValidation}get hasEndpoints(){return this.data.hasEndpoints}get endpoints(){const e=[];return this.data.endpoints.forEach((t=>{const n=t.ownerBlock,r=this._nodeContainer.nodes.find((e=>e.content.data===n));e.push(r.getPortDataForPortDataContent(t))})),e}constructor(e,t){this._connectedPort=null,this.data=e,this._nodeContainer=t}updateDisplayName(e){this.data.displayName=e}connectTo(e){this.data.connectTo(e.data),this._connectedPort=e}canConnectTo(e){return this.data.canConnectTo(e.data)}disconnectFrom(e){this.data.disconnectFrom(e.data),e.connectedPort=null}checkCompatibilityState(e){const t=this.data.checkCompatibilityState(e.data);return 0===t?0:t}getCompatibilityIssueMessage(e,t,n){if(!e&&"FragmentOutputBlock"===n.ownerData.getClassName()){const e=n.ownerData;return"rgb"===n.name&&e.rgba.isConnected?t.getLinksForPortDataContent(e.rgba)[0].dispose():"rgba"===n.name&&e.rgb.isConnected&&t.getLinksForPortDataContent(e.rgb)[0].dispose(),""}switch(e){case 1:{const e=n.data;let t=e.acceptedConnectionPointTypes.map((e=>s.NodeMaterialBlockConnectionPointTypes[e])).join(", ");return t=`${s.NodeMaterialBlockConnectionPointTypes[e.type]}`+(t?`,${t}`:""),`Cannot connect two different connection types:\nSource is ${s.NodeMaterialBlockConnectionPointTypes[this.data.type]} but destination only accepts ${t}`}case 2:return"Source block can only work in fragment shader whereas destination block is currently aimed for the vertex shader";case 3:return"Source block cannot be connected with one of its ancestors"}return""}}var B=r(3914),D={};D.styleTagTransform=v(),D.setAttributes=g(),D.insert=A().bind(null,"head"),D.domAPI=p(),D.insertStyleElement=C(),u()(B.A,D);const I=B.A&&B.A.locals?B.A.locals:void 0;class j{get uniqueId(){return this.data.uniqueId}get name(){return this.data.name}getClassName(){return this.data.getClassName()}get isInput(){return this.data.isInput}get inputs(){return this._inputs}get outputs(){return this._outputs}get comments(){return this.data.comments}set comments(e){this.data.comments=e}get executionTime(){return-1}getPortByName(e){for(const t of this.inputs)if(t.internalName===e)return t;for(const t of this.outputs)if(t.internalName===e)return t;return null}dispose(){this.data.dispose()}prepareHeaderIcon(e,t){if("ElbowBlock"!==this.data.getClassName())return this.data.target===s.NodeMaterialBlockTargets.Fragment?(e.title="In the fragment shader",void(t.src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJMYXllcl81IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2ZmZjt9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMy4xMiw1LjYxYzAtMS4zNywxLjExLTIuNDgsMi40OC0yLjQ4SDE0LjM5YzEuMzcsMCwyLjQ4LDEuMTEsMi40OCwyLjQ4VjE0LjM5YzAsMS4zNy0xLjExLDIuNDgtMi40OCwyLjQ4SDUuNjFjLTEuMzcsMC0yLjQ4LTEuMTEtMi40OC0yLjQ4VjUuNjFaIi8+PC9zdmc+")):this.data.target===s.NodeMaterialBlockTargets.Vertex?(e.title="In the vertex shader",void(t.src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJMYXllcl81IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2ZmZjt9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMi42MywxNS4yNmMtLjQ0LC44MywuMTYsMS44NCwxLjExLDEuODRoMTIuNTJjLjk1LDAsMS41NS0xLjAyLDEuMS0xLjg1TDExLjAyLDMuNTZjLS40OC0uODgtMS43NC0uODctMi4yMSwuMDFMMi42MywxNS4yNloiLz48L3N2Zz4=")):void e.classList.add(I.hidden);e.classList.add(I.hidden)}get invisibleEndpoints(){return this.data.isTeleportIn?this.data.endpoints:null}constructor(e,t){this.data=e,this._inputs=[],this._outputs=[],e.inputs&&this.data.inputs.forEach((e=>{this._inputs.push(new L(e,t))})),e.outputs&&!this.data.isTeleportIn&&this.data.outputs.forEach((e=>{this._outputs.push(new L(e,t))}))}}class E{static UpdateLocations(e,t,n){e.editorData={locations:[]};const r=n?n.nodes.map((e=>e.content.data)):e.attachedBlocks;for(const n of r){const r=t.onGetNodeFromBlock(n);e.editorData.locations.push({blockId:n.uniqueId,x:r?r.x:0,y:r?r.y:0,isCollapsed:!!r&&r.isCollapsed})}t.storeEditorData(e.editorData,n)}static Serialize(e,t,n){const r=s.Texture.SerializeBuffers;s.Texture.SerializeBuffers=s.DataStorage.ReadBoolean("EmbedTextures",!0),this.UpdateLocations(e,t,n);const o=n?n.nodes.map((e=>e.content.data)):void 0,a=e.serialize(o);return s.Texture.SerializeBuffers=r,JSON.stringify(a,void 0,2)}static Deserialize(e,t){t.nodeMaterial.parseSerializedObject(e,""),t.onIsLoadingChanged.notifyObservers(!1)}static AddFrameToMaterial(e,t,n){this.UpdateLocations(n,t),t.nodeMaterial.parseSerializedObject(e,"",!0),t.onImportFrameObservable.notifyObservers(e),t.onIsLoadingChanged.notifyObservers(!1)}}class T{get mode(){return this._mode}set mode(e){s.DataStorage.WriteNumber("Mode",e),this._mode=e,this.stateManager.onPreviewCommandActivated.notifyObservers(!0)}get engine(){return this._engine}set engine(e){e!==this._engine&&(s.DataStorage.WriteNumber("Engine",e),this._engine=e,location.reload())}get nodeMaterial(){return this._nodeMaterial}set nodeMaterial(e){this._nodeMaterial=e,e.onBuildObservable.add((()=>{this.onLogRequiredObservable.notifyObservers(new w("Node material build successful",!1)),E.UpdateLocations(e,this),this.onBuiltObservable.notifyObservers()})),e.onBuildErrorObservable.add((e=>{this.onLogRequiredObservable.notifyObservers(new w(e,!0))}))}constructor(){var e;this.onBuiltObservable=new s.Observable,this.onResetRequiredObservable=new s.Observable,this.onClearUndoStack=new s.Observable,this.onZoomToFitRequiredObservable=new s.Observable,this.onReOrganizedRequiredObservable=new s.Observable,this.onLogRequiredObservable=new s.Observable,this.onIsLoadingChanged=new s.Observable,this.onLightUpdated=new s.Observable,this.onBackgroundHDRUpdated=new s.Observable,this.onPreviewBackgroundChanged=new s.Observable,this.onBackFaceCullingChanged=new s.Observable,this.onDepthPrePassChanged=new s.Observable,this.onAnimationCommandActivated=new s.Observable,this.onImportFrameObservable=new s.Observable,this.onPopupClosedObservable=new s.Observable,this.onDropEventReceivedObservable=new s.Observable,this.particleSystemBlendMode=s.ParticleSystem.BLENDMODE_ONEONE,this.listOfCustomPreviewFiles=[],this.lockObject=new N,this.pointerOverCanvas=!1,this.onRefreshPreviewMeshControlComponentRequiredObservable=new s.Observable,this.previewType=s.DataStorage.ReadNumber("PreviewType",t.Box),this.envType=s.DataStorage.ReadNumber("EnvType",t.Room),this.backFaceCulling=s.DataStorage.ReadBoolean("BackFaceCulling",!0),this.depthPrePass=s.DataStorage.ReadBoolean("DepthPrePass",!1),this.hemisphericLight=s.DataStorage.ReadBoolean("HemisphericLight",!0),this.directionalLight0=s.DataStorage.ReadBoolean("DirectionalLight0",!1),this.directionalLight1=s.DataStorage.ReadBoolean("DirectionalLight1",!1),this.backgroundHDR=s.DataStorage.ReadBoolean("backgroundHDR",!1),this.controlCamera=s.DataStorage.ReadBoolean("ControlCamera",!0),this._mode=s.DataStorage.ReadNumber("Mode",s.NodeMaterialModes.Material),this._engine=s.DataStorage.ReadNumber("Engine",0),this.stateManager=new _,this.stateManager.data=this,this.stateManager.lockObject=this.lockObject,this.stateManager.getScene=()=>this.nodeMaterial.getScene(),this.stateManager.isElbowConnectionAllowed=(e,t)=>{const n=e.portData.data,r=t.portData.data;return n.type!==s.NodeMaterialBlockConnectionPointTypes.Object&&r.type!==s.NodeMaterialBlockConnectionPointTypes.Object},(()=>{this.stateManager.isDebugConnectionAllowed=(e,t)=>!1})(),(()=>{this.stateManager.applyNodePortDesign=(e,t,n)=>{const r=e.data.type;switch(t.style.background=k.GetColorFromConnectionNodeType(r),r){case s.NodeMaterialBlockConnectionPointTypes.Float:case s.NodeMaterialBlockConnectionPointTypes.Int:n.src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMSAyMSI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5WZWN0b3IxPC90aXRsZT48ZyBpZD0iTGF5ZXJfNSIgZGF0YS1uYW1lPSJMYXllciA1Ij48Y2lyY2xlIGNsYXNzPSJjbHMtMSIgY3g9IjEwLjUiIGN5PSIxMC41IiByPSI3LjUiLz48L2c+PC9zdmc+";break;case s.NodeMaterialBlockConnectionPointTypes.Vector2:n.src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMSAyMSI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5WZWN0b3IyPC90aXRsZT48ZyBpZD0iTGF5ZXJfNSIgZGF0YS1uYW1lPSJMYXllciA1Ij48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0zLDEwLjVhNy41Miw3LjUyLDAsMCwwLDYuNSw3LjQzVjMuMDdBNy41Miw3LjUyLDAsMCwwLDMsMTAuNVoiLz48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0xMS41LDMuMDdWMTcuOTNhNy41LDcuNSwwLDAsMCwwLTE0Ljg2WiIvPjwvZz48L3N2Zz4=";break;case s.NodeMaterialBlockConnectionPointTypes.Vector3:case s.NodeMaterialBlockConnectionPointTypes.Color3:n.src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMSAyMSI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5WZWN0b3IzPC90aXRsZT48ZyBpZD0iTGF5ZXJfNSIgZGF0YS1uYW1lPSJMYXllciA1Ij48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0zLjU3LDEzLjMxLDkuNSw5Ljg5VjNBNy41MSw3LjUxLDAsMCwwLDMsMTAuNDYsNy4zMiw3LjMyLDAsMCwwLDMuNTcsMTMuMzFaIi8+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMTYuNDMsMTUsMTAuNSwxMS42Miw0LjU3LDE1YTcuNDgsNy40OCwwLDAsMCwxMS44NiwwWiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTE4LDEwLjQ2QTcuNTEsNy41MSwwLDAsMCwxMS41LDNWOS44OWw1LjkzLDMuNDJBNy4zMiw3LjMyLDAsMCwwLDE4LDEwLjQ2WiIvPjwvZz48L3N2Zz4=";break;case s.NodeMaterialBlockConnectionPointTypes.Vector4:case s.NodeMaterialBlockConnectionPointTypes.Color4:n.src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMSAyMSI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5WZWN0b3I0PC90aXRsZT48ZyBpZD0iTGF5ZXJfNSIgZGF0YS1uYW1lPSJMYXllciA1Ij48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0xMS41LDExLjV2Ni40M2E3LjUxLDcuNTEsMCwwLDAsNi40My02LjQzWiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTExLjUsMy4wN1Y5LjVoNi40M0E3LjUxLDcuNTEsMCwwLDAsMTEuNSwzLjA3WiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTkuNSwxNy45M1YxMS41SDMuMDdBNy41MSw3LjUxLDAsMCwwLDkuNSwxNy45M1oiLz48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik05LjUsMy4wN0E3LjUxLDcuNTEsMCwwLDAsMy4wNyw5LjVIOS41WiIvPjwvZz48L3N2Zz4=";break;case s.NodeMaterialBlockConnectionPointTypes.Matrix:n.src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMSAyMSI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5NYXRyaXg8L3RpdGxlPjxnIGlkPSJMYXllcl81IiBkYXRhLW5hbWU9IkxheWVyIDUiPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTExLjUsNi4xMVY5LjVoMy4zOUE0LjUxLDQuNTEsMCwwLDAsMTEuNSw2LjExWiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTExLjUsMTQuODlhNC41MSw0LjUxLDAsMCwwLDMuMzktMy4zOUgxMS41WiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTExLjUsMy4wN3YyQTUuNTQsNS41NCwwLDAsMSwxNS45Miw5LjVoMkE3LjUxLDcuNTEsMCwwLDAsMTEuNSwzLjA3WiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTE1LjkyLDExLjVhNS41NCw1LjU0LDAsMCwxLTQuNDIsNC40MnYyYTcuNTEsNy41MSwwLDAsMCw2LjQzLTYuNDNaIi8+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNNS4wOCwxMS41aC0yQTcuNTEsNy41MSwwLDAsMCw5LjUsMTcuOTN2LTJBNS41NCw1LjU0LDAsMCwxLDUuMDgsMTEuNVoiLz48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik05LjUsMy4wN0E3LjUxLDcuNTEsMCwwLDAsMy4wNyw5LjVoMkE1LjU0LDUuNTQsMCwwLDEsOS41LDUuMDhaIi8+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNOS41LDExLjVINi4xMUE0LjUxLDQuNTEsMCwwLDAsOS41LDE0Ljg5WiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTkuNSw2LjExQTQuNTEsNC41MSwwLDAsMCw2LjExLDkuNUg5LjVaIi8+PC9nPjwvc3ZnPg==";break;case s.NodeMaterialBlockConnectionPointTypes.Object:n.src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMSIgaGVpZ2h0PSIyMSIgdmlld0JveD0iMCAwIDIxIDIxIj48Y2lyY2xlIGN4PSI3LjEiIGN5PSIxMy4wOCIgcj0iMy4yNSIgc3R5bGU9ImZpbGw6I2ZmZiIvPjxwYXRoIGQ9Ik0xMC40OSwzQTcuNTIsNy41MiwwLDAsMCwzLDEwYTUuMTMsNS4xMywwLDEsMSw2LDcuODUsNy42MSw3LjYxLDAsMCwwLDEuNTIuMTYsNy41Miw3LjUyLDAsMCwwLDAtMTVaIiBzdHlsZT0iZmlsbDojZmZmIi8+PC9zdmc+",n.style.width="100%",n.style.height="100%"}}})(),(()=>{this.stateManager.createDefaultInputData=(e,t,n)=>{const r=t.data,o=r.createCustomInputBlock();let a,i="output";if(o)[a,i]=o;else{if(r.type===s.NodeMaterialBlockConnectionPointTypes.AutoDetect)return null;a=new s.InputBlock(s.NodeMaterialBlockConnectionPointTypes[r.type],void 0,r.type)}const l=e.nodeMaterial;return l.attachedBlocks.push(a),a.isInput||a.autoConfigure(l),{data:new j(a,n),name:i}}})(),(e=this.stateManager).exportData=(t,n)=>{const r=t.nodeMaterial;return E.Serialize(r,e.data,n)},e.getEditorDataMap=()=>e.data.nodeMaterial.editorData.map;const n=s.DataStorage.ReadNumber("BackgroundColorR",.12549019607843137),r=s.DataStorage.ReadNumber("BackgroundColorG",.09803921568627451),o=s.DataStorage.ReadNumber("BackgroundColorB",.25098039215686274);this.backgroundColor=new s.Color4(n,r,o,1)}storeEditorData(e,t){this.stateManager.storeEditorData(e,t)}}class O extends a.Component{constructor(e){super(e);const t=s.DataStorage.ReadBoolean(this.props.title,!this.props.closed);this.state={isExpanded:t,isHighlighted:!1}}switchExpandedState(){const e=!this.state.isExpanded;s.DataStorage.WriteBoolean(this.props.title,e),this.setState({isExpanded:e})}renderHeader(){const e=this.state.isExpanded?"collapse":"collapse closed";return(0,l.jsxs)("div",{className:"header",onClick:()=>this.switchExpandedState(),children:[(0,l.jsx)("div",{className:"title",children:this.props.title}),(0,l.jsx)("div",{className:e,children:(0,l.jsx)("img",{className:"img",title:this.props.title,src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjE3IiBoZWlnaHQ9IjE3Ij4NCiAgPHBhdGggZD0iTTQuMjE5NjcgOC40Njk2N0M0LjUxMjU2IDguMTc2NzggNC45ODc0NCA4LjE3Njc4IDUuMjgwMzMgOC40Njk2N0wxMiAxNS4xODkzTDE4LjcxOTcgOC40Njk2N0MxOS4wMTI2IDguMTc2NzggMTkuNDg3NCA4LjE3Njc4IDE5Ljc4MDMgOC40Njk2N0MyMC4wNzMyIDguNzYyNTYgMjAuMDczMiA5LjIzNzQ0IDE5Ljc4MDMgOS41MzAzM0wxMi41MzAzIDE2Ljc4MDNDMTIuMjM3NCAxNy4wNzMyIDExLjc2MjYgMTcuMDczMiAxMS40Njk3IDE2Ljc4MDNMNC4yMTk2NyA5LjUzMDMzQzMuOTI2NzggOS4yMzc0NCAzLjkyNjc4IDguNzYyNTYgNC4yMTk2NyA4LjQ2OTY3WiIgZmlsbD0id2hpdGUiIC8+DQo8L3N2Zz4="})})]})}componentDidMount(){this.props.selection&&(0===this.props.selection.selectedLineContainerTitles.length&&0===this.props.selection.selectedLineContainerTitlesNoFocus.length||(this.props.selection.selectedLineContainerTitles.indexOf(this.props.title)>-1?(setTimeout((()=>{this.props.selection.selectedLineContainerTitles=[]})),this.setState({isExpanded:!0,isHighlighted:!0}),window.setTimeout((()=>{this.setState({isHighlighted:!1})}),5e3)):this.props.selection.selectedLineContainerTitlesNoFocus.indexOf(this.props.title)>-1?(setTimeout((()=>{this.props.selection.selectedLineContainerTitlesNoFocus=[]})),this.setState({isExpanded:!0,isHighlighted:!1})):this.setState({isExpanded:!1})))}render(){return this.state.isExpanded?(0,l.jsxs)("div",{className:"paneContainer",children:[(0,l.jsxs)("div",{className:"paneContainer-content",children:[this.renderHeader(),(0,l.jsx)("div",{className:"paneList",children:this.props.children})]}),(0,l.jsx)("div",{className:"paneContainer-highlight-border"+(this.state.isHighlighted?"":" transparent")})]}):(0,l.jsx)("div",{className:"paneContainer",children:(0,l.jsx)("div",{className:"paneContainer-content",children:this.renderHeader()})})}}class P extends a.Component{constructor(e){super(e)}render(){return(0,l.jsx)("div",{className:"draggableLine",title:this.props.tooltip,draggable:!0,onDragStart:e=>{e.dataTransfer.setData(this.props.format,this.props.data)},children:this.props.data.replace("Block","")})}}class z extends a.Component{constructor(e){super(e)}render(){return(0,l.jsxs)("div",{className:"draggableLine withButton",title:this.props.tooltip,draggable:!0,onDragStart:e=>{e.dataTransfer.setData(this.props.format,this.props.data)},children:[this.props.data.substring(0,this.props.data.length-(this.props.lenSuffixToRemove??6)),(0,l.jsx)("div",{className:"icon",onClick:()=>{this.props.onIconClick(this.props.data)},title:this.props.iconTitle,children:(0,l.jsx)("img",{className:"img",title:this.props.iconTitle,src:this.props.iconImage})})]})}}class R extends a.Component{constructor(e){super(e);const t=s.DataStorage.ReadBoolean(this.props.title,!this.props.closed);this.state={isExpanded:t},this._uploadRef=a.createRef()}onChange(e){const t=e.target.files;if(t&&t.length)for(const e of t)this.props.onIconClick(e);e.target.value=""}switchExpandedState(){const e=!this.state.isExpanded;s.DataStorage.WriteBoolean(this.props.title,e),this.setState({isExpanded:e})}render(){return(0,l.jsxs)("div",{className:"nonDraggableLine withButton",children:[this.props.label,(0,l.jsx)("div",{className:"icon",title:this.props.title,children:(0,l.jsx)("img",{className:"img",src:this.props.iconImage})}),(0,l.jsxs)("div",{className:"buttonLine",title:this.props.title,children:[(0,l.jsx)("label",{htmlFor:this.props.uploadName?this.props.uploadName:"file-upload",className:"file-upload"}),(0,l.jsx)("input",{ref:this._uploadRef,id:this.props.uploadName?this.props.uploadName:"file-upload",type:"file",multiple:this.props.multiple,accept:this.props.accept,onChange:e=>this.onChange(e)})]})]})}}const U="data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA2My4xICg5MjQ1MikgLSBodHRwczovL3NrZXRjaC5jb20gLS0+DQogIDx0aXRsZT5pY19mbHVlbnRfYWRkX2NpcmNsZV8yNF9yZWd1bGFyPC90aXRsZT4NCiAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+DQogIDxnIGlkPSLwn5SNLVN5c3RlbS1JY29ucyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+DQogICAgPGcgaWQ9ImljX2ZsdWVudF9hZGRfY2lyY2xlXzI0X3JlZ3VsYXIiIGZpbGw9IndoaXRlIiBmaWxsLXJ1bGU9Im5vbnplcm8iPg0KICAgICAgPHBhdGggZD0iTTEyLDIgQzE3LjUyMjg0NzUsMiAyMiw2LjQ3NzE1MjUgMjIsMTIgQzIyLDE3LjUyMjg0NzUgMTcuNTIyODQ3NSwyMiAxMiwyMiBDNi40NzcxNTI1LDIyIDIsMTcuNTIyODQ3NSAyLDEyIEMyLDYuNDc3MTUyNSA2LjQ3NzE1MjUsMiAxMiwyIFogTTEyLDMuNSBDNy4zMDU1Nzk2MywzLjUgMy41LDcuMzA1NTc5NjMgMy41LDEyIEMzLjUsMTYuNjk0NDIwNCA3LjMwNTU3OTYzLDIwLjUgMTIsMjAuNSBDMTYuNjk0NDIwNCwyMC41IDIwLjUsMTYuNjk0NDIwNCAyMC41LDEyIEMyMC41LDcuMzA1NTc5NjMgMTYuNjk0NDIwNCwzLjUgMTIsMy41IFogTTEyLDcgQzEyLjQxNDIxMzYsNyAxMi43NSw3LjMzNTc4NjQ0IDEyLjc1LDcuNzUgTDEyLjc1LDExLjI1IEwxNi4yNSwxMS4yNSBDMTYuNjY0MjEzNiwxMS4yNSAxNywxMS41ODU3ODY0IDE3LDEyIEMxNywxMi40MTQyMTM2IDE2LjY2NDIxMzYsMTIuNzUgMTYuMjUsMTIuNzUgTDEyLjc1LDEyLjc1IEwxMi43NSwxNi4yNSBDMTIuNzUsMTYuNjY0MjEzNiAxMi40MTQyMTM2LDE3IDEyLDE3IEMxMS41ODU3ODY0LDE3IDExLjI1LDE2LjY2NDIxMzYgMTEuMjUsMTYuMjUgTDExLjI1LDEyLjc1IEw3Ljc1LDEyLjc1IEM3LjMzNTc4NjQ0LDEyLjc1IDcsMTIuNDE0MjEzNiA3LDEyIEM3LDExLjU4NTc4NjQgNy4zMzU3ODY0NCwxMS4yNSA3Ljc1LDExLjI1IEwxMS4yNSwxMS4yNSBMMTEuMjUsNy43NSBDMTEuMjUsNy4zMzU3ODY0NCAxMS41ODU3ODY0LDcgMTIsNyBaIiBpZD0i8J+OqC1Db2xvciI+PC9wYXRoPg0KICAgIDwvZz4NCiAgPC9nPg0KPC9zdmc+",F="data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA1OS4xICg4NjE0NCkgLSBodHRwczovL3NrZXRjaC5jb20gLS0+DQogIDx0aXRsZT5pY19mbHVlbnRfZGVsZXRlXzI0X3JlZ3VsYXI8L3RpdGxlPg0KICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4NCiAgPGcgaWQ9IvCflI0tUHJvZHVjdC1JY29ucyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+DQogICAgPGcgaWQ9ImljX2ZsdWVudF9kZWxldGVfMjRfcmVndWxhciIgZmlsbD0id2hpdGUiIGZpbGwtcnVsZT0ibm9uemVybyI+DQogICAgICA8cGF0aCBkPSJNMTIsMS43NSBDMTMuNzMzMDMxNSwxLjc1IDE1LjE0OTI0NTksMy4xMDY0NTQ3NyAxNS4yNDQ4NTUyLDQuODE1NTc2MDkgTDE1LjI1LDUgTDIwLjUsNSBDMjAuOTE0MjEzNiw1IDIxLjI1LDUuMzM1Nzg2NDQgMjEuMjUsNS43NSBDMjEuMjUsNi4xMjk2OTU3NyAyMC45Njc4NDYxLDYuNDQzNDkwOTYgMjAuNjAxNzcwNiw2LjQ5MzE1MzM4IEwyMC41LDYuNSBMMTkuNzA0LDYuNSBMMTguNDIzODYyNywxOS41MTkxOTI3IEMxOC4yOTExNjY2LDIwLjg2ODI2OTYgMTcuMTk4NDMwOSwyMS45MDk5OTYxIDE1Ljg2MjYyNDksMjEuOTk0NDY0NSBMMTUuNjg3MDY5OCwyMiBMOC4zMTI5MzAyMiwyMiBDNi45NTczNDMwMiwyMiA1LjgxMzY1MzUyLDIxLjAxNDQ4NTEgNS41OTg4MzEwNiwxOS42OTMzNjI5IEw1LjU3NjEzNzM0LDE5LjUxOTE5MjcgTDQuMjk1LDYuNSBMMy41LDYuNSBDMy4xMjAzMDQyMyw2LjUgMi44MDY1MDkwNCw2LjIxNzg0NjEyIDIuNzU2ODQ2NjIsNS44NTE3NzA1NiBMMi43NSw1Ljc1IEMyLjc1LDUuMzcwMzA0MjMgMy4wMzIxNTM4OCw1LjA1NjUwOTA0IDMuMzk4MjI5NDQsNS4wMDY4NDY2MiBMMy41LDUgTDguNzUsNSBDOC43NSwzLjIwNTA3NDU2IDEwLjIwNTA3NDYsMS43NSAxMiwxLjc1IFogTTE4LjE5Nyw2LjUgTDUuODAyLDYuNSBMNy4wNjg5MzM0NiwxOS4zNzIzNjAzIEM3LjEyNzY3NjM5LDE5Ljk2OTU4MDEgNy42MDAzMzAxOSwyMC40MzQyODkxIDguMTg1ODQ1MDEsMjAuNDkzNTk2IEw4LjMxMjkzMDIyLDIwLjUgTDE1LjY4NzA2OTgsMjAuNSBDMTYuMjg3MTcxNiwyMC41IDE2Ljc5NTkxNiwyMC4wNzUxMDU3IDE2LjkxMjI1MzEsMTkuNDk4MjA4MyBMMTYuOTMxMDY2NSwxOS4zNzIzNjAzIEwxOC4xOTcsNi41IFogTTEzLjc1LDkuMjUgQzE0LjEyOTY5NTgsOS4yNSAxNC40NDM0OTEsOS41MzIxNTM4OCAxNC40OTMxNTM0LDkuODk4MjI5NDQgTDE0LjUsMTAgTDE0LjUsMTcgQzE0LjUsMTcuNDE0MjEzNiAxNC4xNjQyMTM2LDE3Ljc1IDEzLjc1LDE3Ljc1IEMxMy4zNzAzMDQyLDE3Ljc1IDEzLjA1NjUwOSwxNy40Njc4NDYxIDEzLjAwNjg0NjYsMTcuMTAxNzcwNiBMMTMsMTcgTDEzLDEwIEMxMyw5LjU4NTc4NjQ0IDEzLjMzNTc4NjQsOS4yNSAxMy43NSw5LjI1IFogTTEwLjI1LDkuMjUgQzEwLjYyOTY5NTgsOS4yNSAxMC45NDM0OTEsOS41MzIxNTM4OCAxMC45OTMxNTM0LDkuODk4MjI5NDQgTDExLDEwIEwxMSwxNyBDMTEsMTcuNDE0MjEzNiAxMC42NjQyMTM2LDE3Ljc1IDEwLjI1LDE3Ljc1IEM5Ljg3MDMwNDIzLDE3Ljc1IDkuNTU2NTA5MDQsMTcuNDY3ODQ2MSA5LjUwNjg0NjYyLDE3LjEwMTc3MDYgTDkuNSwxNyBMOS41LDEwIEM5LjUsOS41ODU3ODY0NCA5LjgzNTc4NjQ0LDkuMjUgMTAuMjUsOS4yNSBaIE0xMiwzLjI1IEMxMS4wODE4MjY2LDMuMjUgMTAuMzI4ODA3NywzLjk1NzExMDI3IDEwLjI1NTgwMTIsNC44NTY0NzI3OSBMMTAuMjUsNSBMMTMuNzUsNSBDMTMuNzUsNC4wMzM1MDE2OSAxMi45NjY0OTgzLDMuMjUgMTIsMy4yNSBaIiBpZD0i8J+OqC1Db2xvciI+PC9wYXRoPg0KICAgIDwvZz4NCiAgPC9nPg0KPC9zdmc+";class Y{}Y.RegisteredNodeNames=[],Y.NameFormatter=e=>e;var V=r(3557),G={};G.styleTagTransform=v(),G.setAttributes=g(),G.insert=A().bind(null,"head"),G.domAPI=p(),G.insertStyleElement=C(),u()(V.A,G),V.A&&V.A.locals&&V.A.locals;class W extends a.Component{constructor(e){super(e),this.state={filter:""};const t=localStorage.getItem("Custom-Frame-List");t&&(this._customFrameList=JSON.parse(t));const n=localStorage.getItem("Custom-Block-List");n&&(this._customBlockList=JSON.parse(n)),this._onResetRequiredObserver=this.props.globalState.onResetRequiredObservable.add((()=>{this.forceUpdate()}))}componentWillUnmount(){this.props.globalState.onResetRequiredObservable.remove(this._onResetRequiredObserver)}filterContent(e){this.setState({filter:e})}loadCustomFrame(e){s.Tools.ReadFile(e,(async e=>{const t=new TextDecoder("utf-8"),n=JSON.parse(t.decode(e)),r=n.editorData.frames[0].name+"Custom",o=n.editorData.frames[0].comments||"";try{localStorage.setItem(r,JSON.stringify(n))}catch(e){return void this.props.globalState.stateManager.onErrorMessageDialogRequiredObservable.notifyObservers("Error Saving Frame")}const a=localStorage.getItem("Custom-Frame-List");let i={};a&&(i=JSON.parse(a)),i[r]=o,localStorage.setItem("Custom-Frame-List",JSON.stringify(i)),this._customFrameList=i,this.forceUpdate()}),void 0,!0)}removeItem(e){const t=localStorage.getItem("Custom-Frame-List");if(t){const n=Y.RegisteredNodeNames.indexOf(e);-1!==n&&Y.RegisteredNodeNames.splice(n,1);const r=JSON.parse(t);delete r[e],localStorage.removeItem(e),localStorage.setItem("Custom-Frame-List",JSON.stringify(r)),this._customFrameList=r,this.forceUpdate()}}loadCustomBlock(e){s.Tools.ReadFile(e,(async e=>{const t=new TextDecoder("utf-8"),n=JSON.parse(t.decode(e)),r=(n.name||"")+"CustomBlock",o=n.comments||"";try{localStorage.setItem(r,JSON.stringify(n))}catch(e){return void this.props.globalState.stateManager.onErrorMessageDialogRequiredObservable.notifyObservers("Error Saving Block")}const a=localStorage.getItem("Custom-Block-List");let i={};a&&(i=JSON.parse(a)),i[r]=o,localStorage.setItem("Custom-Block-List",JSON.stringify(i)),this._customBlockList=i,this.forceUpdate()}),void 0,!0)}removeCustomBlock(e){const t=localStorage.getItem("Custom-Block-List");if(t){const n=JSON.parse(t);delete n[e],localStorage.removeItem(e),localStorage.setItem("Custom-Block-List",JSON.stringify(n)),this._customBlockList=n,this.forceUpdate()}}render(){const e=[];for(const t in this._customFrameList)e.push(t);const t=[];for(const e in this._customBlockList)t.push(e);const n={Custom_Frames:e,Custom_Blocks:t,Animation:["BonesBlock","MorphTargetsBlock"],Color_Management:["ReplaceColorBlock","PosterizeBlock","GradientBlock","DesaturateBlock","ColorConverterBlock"],Conversion_Blocks:["ColorMergerBlock","ColorSplitterBlock","VectorMergerBlock","VectorSplitterBlock"],Inputs:["Float","Vector2","Vector3","Vector4","Color3","Color4","TextureBlock","ReflectionTextureBlock","MouseInfoBlock","TimeBlock","RealTimeBlock","DeltaTimeBlock","MaterialAlphaBlock","FragCoordBlock","ScreenSizeBlock","ImageSourceBlock","TriPlanarBlock","BiPlanarBlock"],Interpolation:["LerpBlock","StepBlock","SmoothStepBlock","NLerpBlock"],Logical:["EqualBlock","NotEqualBlock","LessThanBlock","LessOrEqualBlock","GreaterThanBlock","GreaterOrEqualBlock","XorBlock","OrBlock","AndBlock"],Math__Standard:["AddBlock","DivideBlock","MaxBlock","MinBlock","ModBlock","MultiplyBlock","NegateBlock","OneMinusBlock","ReciprocalBlock","ScaleBlock","SignBlock","SqrtBlock","SubtractBlock"],Math__Scientific:["AbsBlock","ArcCosBlock","ArcSinBlock","ArcTanBlock","ArcTan2Block","CosBlock","CurveBlock","DegreesToRadiansBlock","ExpBlock","Exp2Block","FractBlock","LogBlock","PowBlock","RadiansToDegreesBlock","SawToothWaveBlock","SinBlock","SquareWaveBlock","TanBlock","TriangleWaveBlock","SetBlock"],Math__Vector:["CrossBlock","DerivativeBlock","DistanceBlock","DotBlock","FresnelBlock","LengthBlock","ReflectBlock","RefractBlock","Rotate2dBlock","TransformBlock","ScreenSpaceBlock","TwirlBlock"],Matrices:["Matrix","WorldMatrixBlock","WorldViewMatrixBlock","WorldViewProjectionMatrixBlock","ViewMatrixBlock","ViewProjectionMatrixBlock","ProjectionMatrixBlock","MatrixBuilderBlock","MatrixDeterminantBlock","MatrixTransposeBlock"],Misc:["ElbowBlock","ShadowMapBlock","TeleportInBlock","TeleportOutBlock"],Mesh:["InstancesBlock","PositionBlock","UVBlock","ColorBlock","InstanceColorBlock","NormalBlock","HeightToNormalBlock","TBNBlock","PerturbNormalBlock","NormalBlendBlock","TangentBlock","MatrixIndicesBlock","MatrixWeightsBlock","MatrixIndicesExtraBlock","MatrixWeightsExtraBlock","WorldPositionBlock","WorldNormalBlock","WorldTangentBlock","FrontFacingBlock","MeshAttributeExistsBlock"],Loop:["LoopBlock","StorageReadBlock","StorageWriteBlock"],Noises:["RandomNumberBlock","SimplexPerlin3DBlock","WorleyNoise3DBlock","CloudBlock","VoronoiNoiseBlock"],Output_Nodes:["VertexOutputBlock","FragmentOutputBlock","PrePassOutputBlock","DiscardBlock","ClipPlanesBlock","FragDepthBlock"],Particle:["ParticleBlendMultiplyBlock","ParticleColorBlock","ParticlePositionWorldBlock","ParticleRampGradientBlock","ParticleTextureBlock","ParticleTextureMaskBlock","ParticleUVBlock"],GaussianSplatting:["GaussianSplattingBlock","SplatIndexBlock","SplatReaderBlock","GaussianBlock"],PBR:["PBRMetallicRoughnessBlock","AnisotropyBlock","ClearCoatBlock","ReflectionBlock","RefractionBlock","SheenBlock","SubSurfaceBlock"],PostProcess:["ScreenPositionBlock","CurrentScreenBlock","PrePassTextureBlock"],Procedural__Texture:["ScreenPositionBlock"],Range:["ClampBlock","RemapBlock","NormalizeBlock"],Round:["RoundBlock","CeilingBlock","FloorBlock"],Scene:["FogBlock","CameraPositionBlock","CameraParametersBlock","FogColorBlock","ImageProcessingBlock","LightBlock","LightInformationBlock","ViewDirectionBlock","SceneDepthBlock"]};switch(this.props.globalState.mode){case s.NodeMaterialModes.Material:delete n.PostProcess,delete n.Particle,delete n.Procedural__Texture,delete n.GaussianSplatting;break;case s.NodeMaterialModes.PostProcess:delete n.Animation,delete n.Mesh,delete n.Particle,delete n.Procedural__Texture,delete n.PBR,delete n.GaussianSplatting,n.Output_Nodes.splice(n.Output_Nodes.indexOf("PrePassOutputBlock"),1);break;case s.NodeMaterialModes.ProceduralTexture:delete n.Animation,delete n.Mesh,delete n.Particle,delete n.PostProcess,delete n.PBR,delete n.GaussianSplatting,n.Output_Nodes.splice(n.Output_Nodes.indexOf("PrePassOutputBlock"),1);break;case s.NodeMaterialModes.Particle:delete n.Animation,delete n.Mesh,delete n.PostProcess,delete n.Procedural__Texture,delete n.PBR,delete n.GaussianSplatting,n.Output_Nodes.splice(n.Output_Nodes.indexOf("VertexOutputBlock"),1),n.Scene.splice(n.Scene.indexOf("FogBlock"),1),n.Scene.splice(n.Scene.indexOf("FogColorBlock"),1),n.Output_Nodes.splice(n.Output_Nodes.indexOf("PrePassOutputBlock"),1);break;case s.NodeMaterialModes.GaussianSplatting:delete n.Animation,delete n.Mesh,delete n.PostProcess,delete n.Procedural__Texture,delete n.PBR,n.Output_Nodes.splice(n.Output_Nodes.indexOf("VertexOutputBlock"),1),n.Scene.splice(n.Scene.indexOf("FogBlock"),1),n.Scene.splice(n.Scene.indexOf("FogColorBlock"),1),n.Output_Nodes.splice(n.Output_Nodes.indexOf("PrePassOutputBlock"),1)}const r=[];for(const e in n){const t=n[e].filter((e=>!this.state.filter||-1!==e.toLowerCase().indexOf(this.state.filter.toLowerCase()))).sort(((e,t)=>e.localeCompare(t))).map((t=>"Custom_Frames"===e?(0,l.jsx)(z,{format:"babylonjs-material-node",data:t,tooltip:this._customFrameList[t]||"",iconImage:F,iconTitle:"Delete",onIconClick:e=>this.removeItem(e)},t):"Custom_Blocks"===e?(0,l.jsx)(z,{format:"babylonjs-material-node",data:t,tooltip:this._customBlockList[t]||"",iconImage:F,iconTitle:"Delete",onIconClick:e=>this.removeCustomBlock(e),lenSuffixToRemove:11},t):(0,l.jsx)(P,{format:"babylonjs-material-node",data:t,tooltip:W._Tooltips[t]||""},t)));if("Custom_Frames"===e){const e=(0,l.jsx)(R,{title:"Add Custom Frame",closed:!1,multiple:!0,label:"Add...",uploadName:"custom-frame-upload",iconImage:U,accept:".json",onIconClick:e=>{this.loadCustomFrame(e)}},"add...");t.push(e)}else if("Custom_Blocks"===e){const e=(0,l.jsx)(R,{title:"Add Custom Block",closed:!1,multiple:!0,label:"Add...",uploadName:"custom-block-upload",iconImage:U,accept:".json",onIconClick:e=>{this.loadCustomBlock(e)}},"add...");t.push(e)}t.length&&r.push((0,l.jsx)(O,{title:e.replace("__",": ").replace("_"," "),closed:!1,children:t},e+" blocks"));const o=Y.RegisteredNodeNames;for(const e in n){const t=n[e];if(t.length)for(const e of t)o.includes(e)||o.push(e)}Y.NameFormatter=e=>{let t=e;if(e.endsWith("Custom")){const n=e.lastIndexOf("Custom");t=e.substring(0,n),t+=" [custom]"}else t=e.replace("Block","");return t}}return(0,l.jsx)("div",{id:"nmeNodeList",children:(0,l.jsx)("div",{className:"panes",children:(0,l.jsxs)("div",{className:"pane",children:[(0,l.jsx)("div",{className:"filter",children:(0,l.jsx)("input",{type:"text",placeholder:"Filter",onFocus:()=>this.props.globalState.lockObject.lock=!0,onBlur:()=>{this.props.globalState.lockObject.lock=!1},onChange:e=>this.filterContent(e.target.value)})}),(0,l.jsx)("div",{className:"list-container",children:r})]})})})}}W._Tooltips={BonesBlock:"Provides a world matrix for each vertex, based on skeletal (bone/joint) animation",MorphTargetsBlock:"Provides the final positions, normals, tangents, and uvs based on morph targets in a mesh",AddBlock:"Adds the left and right inputs of the same type together",DistanceBlock:"Provides a distance vector based on the left and right input vectors",DivideBlock:"Divides the left input by the right input of the same type",LengthBlock:"Outputs the length of an input vector",MaxBlock:"Outputs the largest value between the left and right inputs of the same type",MinBlock:"Outputs the smallest value between the left and right inputs of the same type",MultiplyBlock:"Multiplies the left and right inputs of the same type together",NegateBlock:"Multiplies the input by -1",OneMinusBlock:"Subtracts each channel of the input value from 1 (1 - input)",RandomNumberBlock:"Provides a random number based on an input seed",ReciprocalBlock:"Quotient of 1 divided by the input",ScaleBlock:"Multiplies the input channels by a float factor",SubtractBlock:"Subtracts the right input from the left input of the same type",GradientBlock:"Returns the color in the gradient represented by the target value of the input",PosterizeBlock:"Reduces the number of values in each channel to the number in the corresponding channel of steps",ReplaceColorBlock:"Outputs the replacement color if the distance between value and reference is less than distance, else outputs the value color",ColorMergerBlock:"Combines float input channels into a color",ColorSplitterBlock:"Separates color input channels into individual floats",VectorMergerBlock:"Combines up to four input floats into a vector",VectorSplitterBlock:"Separates vectors input channels into individual floats",Color3:"A color made up of red, green, and blue channel values",Color4:"A color made up of red, green, blue, and alpha channel values",MaterialAlphaBlock:"A float representing the alpha value of the material",DeltaTimeBlock:"A float representing the time that has passed since the last frame was rendered",Float:"A floating point number representing a value with a fractional component",TextureBlock:"A node for reading a linked or embedded texture file",PrePassTextureBlock:"A node for reading textures from the prepass",MouseInfoBlock:"return a Vector4 that contains x, y, leftButton, rightButton",TimeBlock:"A float value that represents the time that has passed since the scene was loaded (it is incremented by 0.6 each second)",RealTimeBlock:"A float value that represents the number of seconds that have elapsed since the engine was initialized",Vector2:"a vector composed of X and Y channels",Vector3:"a vector composed of X, Y, and Z channels",Vector4:"a vector composed of X, Y, Z, and W channels",LerpBlock:"Outputs a value that is a mix of the left and right inputs based on the target value",NLerpBlock:"Outputs a value that is a mix of the left and right inputs based on the target's normalized value",SmoothStepBlock:"Outputs a value based on a the input value's position on a curve between the two edge values",StepBlock:"Outputs 1 for any input value above the edge input, outputs 0 for any input value below the edge input",Matrix:"A 4x4 table of related values",ProjectionMatrixBlock:"A matrix to remap points in 3D space to 2D plane relative to the screen",ViewMatrixBlock:"A matrix to remap points in 3D space to 2D plane relative to the view of the scene camera",ViewProjectionMatrixBlock:"A matrix to remap points in 3D space to 2D view space before remapping to 2D screen space",WorldMatrixBlock:"A matrix to remap points in 3D local space to 3D world space",WorldViewProjectionMatrixBlock:"A matrix to remap points in 3D local space to 3D world space, then to 2D camera space, and ending in 2D screen space",ColorBlock:"Outputs the RGBA color of each vertex in the mesh",InstanceColorBlock:"Outputs the RGBA color of each instance",InstancesBlock:"Provides the world matrix for each instance to apply this material to all instances",MatrixIndicesBlock:"A Vector4 representing the vertex to bone skinning assignments",MatrixWeightsBlock:"A Vector4 representing the vertex to bone skinning weights",MatrixIndicesExtraBlock:"A Vector4 representing the vertex to bone skinning assignments when the number of influences per bone is greater than 4",MatrixWeightsExtraBlock:"A Vector4 representing the vertex to bone skinning weights when the number of influences per bone is greater than 4",NormalBlock:"A Vector3 representing the normal of each vertex of the attached mesh",PositionBlock:"A Vector3 representing the position of each vertex of the attached mesh",TangentBlock:"A Vector3 representing the tangent of each vertex of the attached mesh",UVBlock:"A Vector2 representing the UV coordinates of each vertex of the attached mesh",WorldNormal:"A Vector4 representing the normal of each vertex of the attached mesh transformed into world space",WorldTangent:"A Vector4 representing the tangent of each vertex of the attached mesh transformed into world space",PerturbNormalBlock:"Creates high-frequency detail normal vectors based on a normal map, the world position, and world normal",TBNBlock:"Creates a TBN matrix from normal, tangent, and bitangent vectors",NormalBlend:"Outputs the result of blending two normal maps together using a per-channel screen",WorldPosition:"A Vector4 representing the position of each vertex of the attached mesh transformed into world space",DiscardBlock:"A final node that will not output a pixel below the cutoff value",FragmentOutputBlock:"A mandatory final node for outputing the color of each pixel",PrePassOutputBlock:"An optional final node for outputing geometry data on prepass textures",VertexOutputBlock:"A mandatory final node for outputing the position of each vertex",ClampBlock:"Outputs values above the maximum or below minimum as maximum or minimum values respectively",NormalizeBlock:"Remaps the length of a vector or color to 1",RemapBlock:"Remaps input value between sourceMin and sourceMax to a new range between targetMin and targetMax",CeilingBlock:"Outputs fractional values as the next higher whole number",FloorBlock:"Outputs fractional values as the next lower whole number",RoundBlock:"Outputs fractional values rounded to the nearest whole number",ModBlock:"Outputs the value of one parameter modulo another",CameraPositionBlock:"Outputs a Vector3 position of the active scene camera",CameraParametersBlock:"Outputs a Vector4 containing (-1 for webGL and 1 for webGPU, camera.minZ, camera.maxZ, 1 / camera.maxZ)",FogBlock:"Applies fog to the scene with an increasing opacity based on distance from the camera",FogColorBlock:"The system value for fog color pulled from the scene",ImageProcessingBlock:"Provides access to all of the Babylon image processing properties",LightBlock:"Outputs diffuse and specular contributions from one or more scene lights",LightInformationBlock:"Provides the direction, color and intensity of a selected light based on its world position",ReflectionTextureBlock:"Creates a reflection from the input texture",ViewDirectionBlock:"Outputs the direction vector of where the camera is aimed",AbsBlock:"Outputs the absolute value of the input value",ArcCosBlock:"Outputs the inverse of the cosine value based on the input value",ArcSinBlock:"Outputs the inverse of the sine value based on the input value",ArcTan2Block:"Outputs the inverse of the tangent value based on the input value",ArcTanBlock:"Outputs the inverse of the tangent value based on the input value",SetBlock:"Outputs the alias based on the input value",CosBlock:"Outputs the cosine value based on the input value",DegreesToRadiansBlock:"Converts the input degrees value to radians",Exp2Block:"Outputs the input value multiplied by itself 1 time. (Exponent of 2)",ExpBlock:"Outputs the input value multiplied by itself 9 time. (Exponent of 10)",FractBlock:"Outputs only the fractional value of a floating point number",LogBlock:"The logarithmic value based on the input value",PowBlock:"Outputs the input value multiplied by itself the number of times equal to the power input (Exponent of power)",RadiansToDegreesBlock:"Converts the input radians value to degrees",SawToothWaveBlock:"Outputs a sawtooth pattern value between -1 and 1 based on the input value",SignBlock:"returns 1 if the input is positive, 0 if input is equal to 0, or -1 if the input is negative",SinBlock:"Outputs the sine value based on the input value",SqrtBlock:"Outputs the square root of the input value",SquareWaveBlock:"Outputs a stepped pattern value between -1 and 1 based on the input value",TanBlock:"Outputs the tangent value based on the input value",TriangleWaveBlock:"Outputs a sawtooth pattern value between 0 and 1 based on the input value",CrossBlock:"Outputs a vector that is perpendicular to two input vectors",DotBlock:"Outputs the cos of the angle between two vectors",FresnelBlock:"Outputs the grazing angle of the surface of the mesh, relative to a camera influenced by the bias and power inputs",TransformBlock:"Transforms a input vector based on the input matrix",DerivativeBlock:"FRAGMENT SHADER ONLY. Provides the rate of change for an input on a given axis (x,y).",DesaturateBlock:"Convert a color input into a grayscale representation.",WorldViewMatrixBlock:"A matrix to remap points in 3D local space to 3D world space, and ending in 2D camera space.",FrontFacingBlock:"Returns 1 if a mesh triangle faces the normal direction and 0 if it does not.",SimplexPerlin3DBlock:"Creates a type of gradient noise with few directional artifacts.",WorleyNoise3DBlock:"Creates a random pattern resembling cells.",ReflectBlock:"Outputs the direction of the input vector reflected across the surface normal.",RefractBlock:"Outputs a direction simulating a deflection of the input vector.",Rotate2dBlock:"Rotates UV coordinates around the W axis.",PBRMetallicRoughnessBlock:"PBR metallic/roughness material",SheenBlock:"PBR Sheen block",AnisotropyBlock:"PBR Anisotropy block",ReflectionBlock:"PBR Reflection block",ClearCoatBlock:"PBR ClearCoat block",RefractionBlock:"PBR Refraction block",SubSurfaceBlock:"PBR SubSurface block",ScreenPositionBlock:"A Vector2 representing the position of each vertex of the screen quad (derived from UV set from the quad used to render)",CurrentScreenBlock:"The screen buffer used as input for the post process",ParticleUVBlock:"The particle uv texture coordinate",ParticleTextureBlock:"The particle texture",ParticleColorBlock:"The particle color",ParticleTextureMaskBlock:"The particle texture mask",ParticleRampGradientBlock:"The particle ramp gradient block",ParticleBlendMultiplyBlock:"The particle blend multiply block",ParticlePositionWorldBlock:"The world position of the particle",GaussianSplattingBlock:"The gaussian splatting block",GaussianBlock:"The gaussian color computation block",SplatReaderBlock:"The gaussian splat reader block",SplatIndexBlock:"The splat index",FragCoordBlock:"The gl_FragCoord predefined variable that contains the window relative coordinate (x, y, z, 1/w)",ScreenSizeBlock:"The size (in pixels) of the screen window",SceneDepthBlock:"The scene depth buffer",MatrixBuilderBlock:"Converts 4 Vector4 into a matrix",EqualBlock:"Return a value if two operands are equals",NotEqualBlock:"Return a value if two operands are not equals",LessThanBlock:"Return a value if an operand is smaller than a second operand",LessOrEqualBlock:"Return a value if an operand is smaller or equal to a second operand",GreaterThanBlock:"Return a value if an operand is greater than a second operand",GreaterOrEqualBlock:"Return a value if an operand is greater or equal to a second operand",XorBlock:"Return a value if (a xor b) > 0",OrBlock:"Return a value if (a or b) > 0",AndBlock:"Return a value if (a and b) > 0",ImageSourceBlock:"Centralize texture access for TextureBlocks",CloudBlock:"Generate Fractal Brownian Motion Clouds",VoronoiNoiseBlock:"Generate Voronoi Noise",ScreenSpaceBlock:"Convert a Vector3 or a Vector4 into screen space",TwirlBlock:"Apply a twirl rotation",ElbowBlock:"Passthrough block mostly used to organize your graph",TeleportInBlock:"Passthrough block mostly used to organize your graph (but without visible lines). It works like a teleportation point for the graph.",TeleportOutBlock:"Endpoint for a TeleportInBlock.",ClipPlanesBlock:"A node that add clip planes support",HeightToNormalBlock:"Convert a height map into a normal map",FragDepthBlock:"A final node that sets the fragment depth",ShadowMapBlock:"Compute a depth value suitable for shadow map generation",TriPlanarBlock:"A node for reading a texture with triplanar mapping",BiPlanarBlock:"A node for reading a texture with biplanar mapping",MatrixDeterminantBlock:"Compute the determinant of a matrix",MatrixTransposeBlock:"Compute the transpose of a matrix",MeshAttributeExistsBlock:"Falls back to secondary input if specified attribute doesn't exists on the rendered mesh",CurveBlock:"Apply a curve function",ColorConverterBlock:"Converts between RGB and HSL color spaces",LoopBlock:"Block used to repeat code",StorageReadBlock:"Block used to read from a loop storage variable",StorageWriteBlock:"Block used to write to a loop storage variable"};class H{static _SaveAs(e,t,n){if("download"in HTMLAnchorElement.prototype){const r=window.URL||window.webkitURL,o=n.createElement("a");return o.download=t,o.rel="noopener",o.href=r.createObjectURL(e),setTimeout((()=>{r.revokeObjectURL(o.href)}),4e4),void setTimeout((()=>{this._Click(o,n)}),0)}let r=open("","_blank");r&&(r.document.title=r.document.body.innerText="downloading...");const o="application/octet-stream"===e.type,a=/constructor/i.test(window.HTMLElement)||window.safari,i=/CriOS\/[\d]+/.test(navigator.userAgent);if((i||o&&a)&&"undefined"!=typeof FileReader){const t=new FileReader;t.onloadend=()=>{let e=t.result;e=i?e:e.replace(/^data:[^;]*;/,"data:attachment/file;"),r?r.location.href=e:location.href=e,r=null},t.readAsDataURL(e)}else{const t=window.URL||window.webkitURL,n=t.createObjectURL(e);r?r.location.href=n:location.href=n,r=null,setTimeout((function(){t.revokeObjectURL(n)}),4e4)}}static _Click(e,t){try{e.dispatchEvent(new MouseEvent("click"))}catch(n){const r=t.createEvent("MouseEvents");r.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(r)}}static DownloadAsFile(e,t,n){const r=new Blob([t],{type:"application/octet-stream"});this._SaveAs(r,n,e)}}class Q extends a.Component{constructor(e){super(e),this._id=Q._IDGenerator++,this._uploadInputRef=a.createRef()}onChange(e){const t=e.target.files;t&&t.length&&this.props.onClick(t[0]),e.target.value=""}render(){return(0,l.jsxs)("div",{className:"buttonLine",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsx)("label",{htmlFor:"file-upload"+this._id,className:"file-upload",children:this.props.label}),(0,l.jsx)("input",{ref:this._uploadInputRef,id:"file-upload"+this._id,type:"file",accept:this.props.accept,onChange:e=>this.onChange(e)})]})}}Q._IDGenerator=0;class Z extends a.Component{constructor(e){super(e),this._localChange=!1,this._uniqueId=Z._UniqueIdSeed++,this.props.isSelected?this.state={isSelected:this.props.isSelected()}:this.state={isSelected:1==this.props.target[this.props.propertyName]},this.props.disabled&&(this.state={...this.state,isDisabled:this.props.disabled})}shouldComponentUpdate(e,t){let n;return n=e.isSelected?e.isSelected():1==e.target[e.propertyName],n!==t.isSelected||this._localChange?(t.isSelected=n,this._localChange=!1,!0):e.disabled!==!!t.isDisabled||e.label!==this.props.label||e.target!==this.props.target}onChange(){this._localChange=!0,this.props.onSelect?this.props.onSelect(!this.state.isSelected):(this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:!this.state.isSelected,initialValue:this.state.isSelected}),this.props.target[this.props.propertyName]=!this.state.isSelected),this.props.onValueChanged&&this.props.onValueChanged(),this.setState({isSelected:!this.state.isSelected})}render(){return(0,l.jsxs)("div",{className:"checkBoxLine",children:[(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label}),(0,l.jsxs)("div",{className:"checkBox",children:[(0,l.jsx)("input",{type:"checkbox",id:"checkbox"+this._uniqueId,className:"cbx hidden",checked:this.state.isSelected,onChange:()=>this.onChange(),disabled:!!this.props.disabled}),(0,l.jsx)("label",{htmlFor:"checkbox"+this._uniqueId,className:"lbl"+(this.props.disabled?" disabled":"")})]})]})}}Z._UniqueIdSeed=0;var q=r(35),X={};X.styleTagTransform=v(),X.setAttributes=g(),X.insert=A().bind(null,"head"),X.domAPI=p(),X.insertStyleElement=C(),u()(q.A,X),q.A&&q.A.locals&&q.A.locals;class J extends a.Component{constructor(e){super(e),this._localChange=!1,this.state={value:this.props.value.toFixed(void 0!==this.props.precision?this.props.precision:3)}}componentWillUnmount(){this.props.lockObject&&(this.props.lockObject.lock=!1)}shouldComponentUpdate(e,t){return this._localChange?(this._localChange=!1,!0):e.value.toString()!==t.value&&(t.value=e.value.toFixed(void 0!==this.props.precision?this.props.precision:3),!0)}updateValue(e){if(/[^0-9.-]/g.test(e))return;const t=parseFloat(e);this._localChange=!0,this.setState({value:e}),isNaN(t)||this.props.onChange(t)}onBlur(){this._localChange=!1;const e=parseFloat(this.state.value);this.props.lockObject&&(this.props.lockObject.lock=!1),isNaN(e)?this.props.onChange(this.props.value):this.props.onChange(e)}incrementValue(e){let t=parseFloat(this.state.value);isNaN(t)&&(t=0),this.updateValue((t+e).toFixed(void 0!==this.props.precision?this.props.precision:3))}onKeyDown(e){const t=this.props.step||1,n=n=>{e.shiftKey&&(n*=10,(e.ctrlKey||e.metaKey)&&(n*=10)),this.incrementValue(n*t),e.preventDefault()};"ArrowUp"===e.key?n(1):"ArrowDown"===e.key&&n(-1)}render(){return(0,l.jsxs)("div",{className:"numeric",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),this.props.label&&(0,l.jsx)("div",{className:"numeric-label",title:this.props.labelTooltip??this.props.label,children:`${this.props.label}: `}),(0,l.jsx)("input",{type:"number",step:this.props.step,className:"numeric-input",value:this.state.value,onChange:e=>this.updateValue(e.target.value),onKeyDown:e=>this.onKeyDown(e),onFocus:()=>{this.props.lockObject&&(this.props.lockObject.lock=!0)},onBlur:()=>this.onBlur()})]})}}J.defaultProps={step:1};const K=()=>{};let $={},ee={},te=null,ne={mark:K,measure:K};try{"undefined"!=typeof window&&($=window),"undefined"!=typeof document&&(ee=document),"undefined"!=typeof MutationObserver&&(te=MutationObserver),"undefined"!=typeof performance&&(ne=performance)}catch(e){}const{userAgent:re=""}=$.navigator||{},oe=$,ae=ee,ie=te,se=ne,le=(oe.document,!!ae.documentElement&&!!ae.head&&"function"==typeof ae.addEventListener&&"function"==typeof ae.createElement),ce=~re.indexOf("MSIE")||~re.indexOf("Trident/");var ue="classic",de="duotone",pe="sharp",he="sharp-duotone",Ae=[ue,de,pe,he],fe={classic:{fa:"solid",fas:"solid","fa-solid":"solid",far:"regular","fa-regular":"regular",fal:"light","fa-light":"light",fat:"thin","fa-thin":"thin",fad:"duotone","fa-duotone":"duotone",fab:"brands","fa-brands":"brands"},sharp:{fa:"solid",fass:"solid","fa-solid":"solid",fasr:"regular","fa-regular":"regular",fasl:"light","fa-light":"light",fast:"thin","fa-thin":"thin"},"sharp-duotone":{fa:"solid",fasds:"solid","fa-solid":"solid"}},ge=[1,2,3,4,5,6,7,8,9,10],me=ge.concat([11,12,13,14,15,16,17,18,19,20]),Ce={GROUP:"duotone-group",SWAP_OPACITY:"swap-opacity",PRIMARY:"primary",SECONDARY:"secondary"},be=[...Object.keys({classic:["fas","far","fal","fat"],sharp:["fass","fasr","fasl","fast"],"sharp-duotone":["fasds"]}),"solid","regular","light","thin","duotone","brands","2xs","xs","sm","lg","xl","2xl","beat","border","fade","beat-fade","bounce","flip-both","flip-horizontal","flip-vertical","flip","fw","inverse","layers-counter","layers-text","layers","li","pull-left","pull-right","pulse","rotate-180","rotate-270","rotate-90","rotate-by","shake","spin-pulse","spin-reverse","spin","stack-1x","stack-2x","stack","ul",Ce.GROUP,Ce.SWAP_OPACITY,Ce.PRIMARY,Ce.SECONDARY].concat(ge.map((e=>"".concat(e,"x")))).concat(me.map((e=>"w-".concat(e))));const ve="___FONT_AWESOME___",ye=16,xe="svg-inline--fa",we="data-fa-i2svg",Me="data-fa-pseudo-element",ke="data-prefix",Ne="data-icon",_e="fontawesome-i2svg",Se=["HTML","HEAD","STYLE","SCRIPT"],Le=(()=>{try{return!0}catch(e){return!1}})(),Be=[ue,pe,he];function De(e){return new Proxy(e,{get:(e,t)=>t in e?e[t]:e[ue]})}const Ie={...fe};Ie[ue]={...fe[ue],fak:"kit","fa-kit":"kit",fakd:"kit-duotone","fa-kit-duotone":"kit-duotone"};const je=De(Ie),Ee={classic:{solid:"fas",regular:"far",light:"fal",thin:"fat",duotone:"fad",brands:"fab"},sharp:{solid:"fass",regular:"fasr",light:"fasl",thin:"fast"},"sharp-duotone":{solid:"fasds"}};Ee[ue]={...Ee[ue],kit:"fak","kit-duotone":"fakd"};const Te=De(Ee),Oe={classic:{fab:"fa-brands",fad:"fa-duotone",fal:"fa-light",far:"fa-regular",fas:"fa-solid",fat:"fa-thin"},sharp:{fass:"fa-solid",fasr:"fa-regular",fasl:"fa-light",fast:"fa-thin"},"sharp-duotone":{fasds:"fa-solid"}};Oe[ue]={...Oe[ue],fak:"fa-kit"};const Pe=De(Oe),ze={classic:{"fa-brands":"fab","fa-duotone":"fad","fa-light":"fal","fa-regular":"far","fa-solid":"fas","fa-thin":"fat"},sharp:{"fa-solid":"fass","fa-regular":"fasr","fa-light":"fasl","fa-thin":"fast"},"sharp-duotone":{"fa-solid":"fasds"}};ze[ue]={...ze[ue],"fa-kit":"fak"};const Re=De(ze),Ue=/fa(s|r|l|t|d|b|k|kd|ss|sr|sl|st|sds)?[\-\ ]/,Fe="fa-layers-text",Ye=/Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i,Ve=(De({classic:{900:"fas",400:"far",normal:"far",300:"fal",100:"fat"},sharp:{900:"fass",400:"fasr",300:"fasl",100:"fast"},"sharp-duotone":{900:"fasds"}}),["class","data-prefix","data-icon","data-fa-transform","data-fa-mask"]),Ge=Ce,We=new Set;Object.keys(Te[ue]).map(We.add.bind(We)),Object.keys(Te[pe]).map(We.add.bind(We)),Object.keys(Te[he]).map(We.add.bind(We));const He=["kit",...be],Qe=oe.FontAwesomeConfig||{};ae&&"function"==typeof ae.querySelector&&[["data-family-prefix","familyPrefix"],["data-css-prefix","cssPrefix"],["data-family-default","familyDefault"],["data-style-default","styleDefault"],["data-replacement-class","replacementClass"],["data-auto-replace-svg","autoReplaceSvg"],["data-auto-add-css","autoAddCss"],["data-auto-a11y","autoA11y"],["data-search-pseudo-elements","searchPseudoElements"],["data-observe-mutations","observeMutations"],["data-mutate-approach","mutateApproach"],["data-keep-original-source","keepOriginalSource"],["data-measure-performance","measurePerformance"],["data-show-missing-icons","showMissingIcons"]].forEach((e=>{let[t,n]=e;const r=function(e){return""===e||"false"!==e&&("true"===e||e)}(function(e){var t=ae.querySelector("script["+e+"]");if(t)return t.getAttribute(e)}(t));null!=r&&(Qe[n]=r)}));const Ze={styleDefault:"solid",familyDefault:"classic",cssPrefix:"fa",replacementClass:xe,autoReplaceSvg:!0,autoAddCss:!0,autoA11y:!0,searchPseudoElements:!1,observeMutations:!0,mutateApproach:"async",keepOriginalSource:!0,measurePerformance:!1,showMissingIcons:!0};Qe.familyPrefix&&(Qe.cssPrefix=Qe.familyPrefix);const qe={...Ze,...Qe};qe.autoReplaceSvg||(qe.observeMutations=!1);const Xe={};Object.keys(Ze).forEach((e=>{Object.defineProperty(Xe,e,{enumerable:!0,set:function(t){qe[e]=t,Je.forEach((e=>e(Xe)))},get:function(){return qe[e]}})})),Object.defineProperty(Xe,"familyPrefix",{enumerable:!0,set:function(e){qe.cssPrefix=e,Je.forEach((e=>e(Xe)))},get:function(){return qe.cssPrefix}}),oe.FontAwesomeConfig=Xe;const Je=[],Ke=ye,$e={size:16,x:0,y:0,rotate:0,flipX:!1,flipY:!1};function et(){let e=12,t="";for(;e-- >0;)t+="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"[62*Math.random()|0];return t}function tt(e){const t=[];for(let n=(e||[]).length>>>0;n--;)t[n]=e[n];return t}function nt(e){return e.classList?tt(e.classList):(e.getAttribute("class")||"").split(" ").filter((e=>e))}function rt(e){return"".concat(e).replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}function ot(e){return Object.keys(e||{}).reduce(((t,n)=>t+"".concat(n,": ").concat(e[n].trim(),";")),"")}function at(e){return e.size!==$e.size||e.x!==$e.x||e.y!==$e.y||e.rotate!==$e.rotate||e.flipX||e.flipY}function it(){const e="fa",t=xe,n=Xe.cssPrefix,r=Xe.replacementClass;let o=':root, :host {\n --fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";\n --fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";\n --fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";\n --fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";\n --fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";\n --fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";\n --fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";\n --fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";\n --fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";\n --fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";\n --fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";\n}\n\nsvg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {\n overflow: visible;\n box-sizing: content-box;\n}\n\n.svg-inline--fa {\n display: var(--fa-display, inline-block);\n height: 1em;\n overflow: visible;\n vertical-align: -0.125em;\n}\n.svg-inline--fa.fa-2xs {\n vertical-align: 0.1em;\n}\n.svg-inline--fa.fa-xs {\n vertical-align: 0em;\n}\n.svg-inline--fa.fa-sm {\n vertical-align: -0.0714285705em;\n}\n.svg-inline--fa.fa-lg {\n vertical-align: -0.2em;\n}\n.svg-inline--fa.fa-xl {\n vertical-align: -0.25em;\n}\n.svg-inline--fa.fa-2xl {\n vertical-align: -0.3125em;\n}\n.svg-inline--fa.fa-pull-left {\n margin-right: var(--fa-pull-margin, 0.3em);\n width: auto;\n}\n.svg-inline--fa.fa-pull-right {\n margin-left: var(--fa-pull-margin, 0.3em);\n width: auto;\n}\n.svg-inline--fa.fa-li {\n width: var(--fa-li-width, 2em);\n top: 0.25em;\n}\n.svg-inline--fa.fa-fw {\n width: var(--fa-fw-width, 1.25em);\n}\n\n.fa-layers svg.svg-inline--fa {\n bottom: 0;\n left: 0;\n margin: auto;\n position: absolute;\n right: 0;\n top: 0;\n}\n\n.fa-layers-counter, .fa-layers-text {\n display: inline-block;\n position: absolute;\n text-align: center;\n}\n\n.fa-layers {\n display: inline-block;\n height: 1em;\n position: relative;\n text-align: center;\n vertical-align: -0.125em;\n width: 1em;\n}\n.fa-layers svg.svg-inline--fa {\n transform-origin: center center;\n}\n\n.fa-layers-text {\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n transform-origin: center center;\n}\n\n.fa-layers-counter {\n background-color: var(--fa-counter-background-color, #ff253a);\n border-radius: var(--fa-counter-border-radius, 1em);\n box-sizing: border-box;\n color: var(--fa-inverse, #fff);\n line-height: var(--fa-counter-line-height, 1);\n max-width: var(--fa-counter-max-width, 5em);\n min-width: var(--fa-counter-min-width, 1.5em);\n overflow: hidden;\n padding: var(--fa-counter-padding, 0.25em 0.5em);\n right: var(--fa-right, 0);\n text-overflow: ellipsis;\n top: var(--fa-top, 0);\n transform: scale(var(--fa-counter-scale, 0.25));\n transform-origin: top right;\n}\n\n.fa-layers-bottom-right {\n bottom: var(--fa-bottom, 0);\n right: var(--fa-right, 0);\n top: auto;\n transform: scale(var(--fa-layers-scale, 0.25));\n transform-origin: bottom right;\n}\n\n.fa-layers-bottom-left {\n bottom: var(--fa-bottom, 0);\n left: var(--fa-left, 0);\n right: auto;\n top: auto;\n transform: scale(var(--fa-layers-scale, 0.25));\n transform-origin: bottom left;\n}\n\n.fa-layers-top-right {\n top: var(--fa-top, 0);\n right: var(--fa-right, 0);\n transform: scale(var(--fa-layers-scale, 0.25));\n transform-origin: top right;\n}\n\n.fa-layers-top-left {\n left: var(--fa-left, 0);\n right: auto;\n top: var(--fa-top, 0);\n transform: scale(var(--fa-layers-scale, 0.25));\n transform-origin: top left;\n}\n\n.fa-1x {\n font-size: 1em;\n}\n\n.fa-2x {\n font-size: 2em;\n}\n\n.fa-3x {\n font-size: 3em;\n}\n\n.fa-4x {\n font-size: 4em;\n}\n\n.fa-5x {\n font-size: 5em;\n}\n\n.fa-6x {\n font-size: 6em;\n}\n\n.fa-7x {\n font-size: 7em;\n}\n\n.fa-8x {\n font-size: 8em;\n}\n\n.fa-9x {\n font-size: 9em;\n}\n\n.fa-10x {\n font-size: 10em;\n}\n\n.fa-2xs {\n font-size: 0.625em;\n line-height: 0.1em;\n vertical-align: 0.225em;\n}\n\n.fa-xs {\n font-size: 0.75em;\n line-height: 0.0833333337em;\n vertical-align: 0.125em;\n}\n\n.fa-sm {\n font-size: 0.875em;\n line-height: 0.0714285718em;\n vertical-align: 0.0535714295em;\n}\n\n.fa-lg {\n font-size: 1.25em;\n line-height: 0.05em;\n vertical-align: -0.075em;\n}\n\n.fa-xl {\n font-size: 1.5em;\n line-height: 0.0416666682em;\n vertical-align: -0.125em;\n}\n\n.fa-2xl {\n font-size: 2em;\n line-height: 0.03125em;\n vertical-align: -0.1875em;\n}\n\n.fa-fw {\n text-align: center;\n width: 1.25em;\n}\n\n.fa-ul {\n list-style-type: none;\n margin-left: var(--fa-li-margin, 2.5em);\n padding-left: 0;\n}\n.fa-ul > li {\n position: relative;\n}\n\n.fa-li {\n left: calc(-1 * var(--fa-li-width, 2em));\n position: absolute;\n text-align: center;\n width: var(--fa-li-width, 2em);\n line-height: inherit;\n}\n\n.fa-border {\n border-color: var(--fa-border-color, #eee);\n border-radius: var(--fa-border-radius, 0.1em);\n border-style: var(--fa-border-style, solid);\n border-width: var(--fa-border-width, 0.08em);\n padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);\n}\n\n.fa-pull-left {\n float: left;\n margin-right: var(--fa-pull-margin, 0.3em);\n}\n\n.fa-pull-right {\n float: right;\n margin-left: var(--fa-pull-margin, 0.3em);\n}\n\n.fa-beat {\n animation-name: fa-beat;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\n}\n\n.fa-bounce {\n animation-name: fa-bounce;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));\n}\n\n.fa-fade {\n animation-name: fa-fade;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\n}\n\n.fa-beat-fade {\n animation-name: fa-beat-fade;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\n}\n\n.fa-flip {\n animation-name: fa-flip;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\n}\n\n.fa-shake {\n animation-name: fa-shake;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, linear);\n}\n\n.fa-spin {\n animation-name: fa-spin;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 2s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, linear);\n}\n\n.fa-spin-reverse {\n --fa-animation-direction: reverse;\n}\n\n.fa-pulse,\n.fa-spin-pulse {\n animation-name: fa-spin;\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, steps(8));\n}\n\n@media (prefers-reduced-motion: reduce) {\n .fa-beat,\n.fa-bounce,\n.fa-fade,\n.fa-beat-fade,\n.fa-flip,\n.fa-pulse,\n.fa-shake,\n.fa-spin,\n.fa-spin-pulse {\n animation-delay: -1ms;\n animation-duration: 1ms;\n animation-iteration-count: 1;\n transition-delay: 0s;\n transition-duration: 0s;\n }\n}\n@keyframes fa-beat {\n 0%, 90% {\n transform: scale(1);\n }\n 45% {\n transform: scale(var(--fa-beat-scale, 1.25));\n }\n}\n@keyframes fa-bounce {\n 0% {\n transform: scale(1, 1) translateY(0);\n }\n 10% {\n transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);\n }\n 30% {\n transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));\n }\n 50% {\n transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);\n }\n 57% {\n transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\n }\n 64% {\n transform: scale(1, 1) translateY(0);\n }\n 100% {\n transform: scale(1, 1) translateY(0);\n }\n}\n@keyframes fa-fade {\n 50% {\n opacity: var(--fa-fade-opacity, 0.4);\n }\n}\n@keyframes fa-beat-fade {\n 0%, 100% {\n opacity: var(--fa-beat-fade-opacity, 0.4);\n transform: scale(1);\n }\n 50% {\n opacity: 1;\n transform: scale(var(--fa-beat-fade-scale, 1.125));\n }\n}\n@keyframes fa-flip {\n 50% {\n transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));\n }\n}\n@keyframes fa-shake {\n 0% {\n transform: rotate(-15deg);\n }\n 4% {\n transform: rotate(15deg);\n }\n 8%, 24% {\n transform: rotate(-18deg);\n }\n 12%, 28% {\n transform: rotate(18deg);\n }\n 16% {\n transform: rotate(-22deg);\n }\n 20% {\n transform: rotate(22deg);\n }\n 32% {\n transform: rotate(-12deg);\n }\n 36% {\n transform: rotate(12deg);\n }\n 40%, 100% {\n transform: rotate(0deg);\n }\n}\n@keyframes fa-spin {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.fa-rotate-90 {\n transform: rotate(90deg);\n}\n\n.fa-rotate-180 {\n transform: rotate(180deg);\n}\n\n.fa-rotate-270 {\n transform: rotate(270deg);\n}\n\n.fa-flip-horizontal {\n transform: scale(-1, 1);\n}\n\n.fa-flip-vertical {\n transform: scale(1, -1);\n}\n\n.fa-flip-both,\n.fa-flip-horizontal.fa-flip-vertical {\n transform: scale(-1, -1);\n}\n\n.fa-rotate-by {\n transform: rotate(var(--fa-rotate-angle, 0));\n}\n\n.fa-stack {\n display: inline-block;\n vertical-align: middle;\n height: 2em;\n position: relative;\n width: 2.5em;\n}\n\n.fa-stack-1x,\n.fa-stack-2x {\n bottom: 0;\n left: 0;\n margin: auto;\n position: absolute;\n right: 0;\n top: 0;\n z-index: var(--fa-stack-z-index, auto);\n}\n\n.svg-inline--fa.fa-stack-1x {\n height: 1em;\n width: 1.25em;\n}\n.svg-inline--fa.fa-stack-2x {\n height: 2em;\n width: 2.5em;\n}\n\n.fa-inverse {\n color: var(--fa-inverse, #fff);\n}\n\n.sr-only,\n.fa-sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n\n.sr-only-focusable:not(:focus),\n.fa-sr-only-focusable:not(:focus) {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n\n.svg-inline--fa .fa-primary {\n fill: var(--fa-primary-color, currentColor);\n opacity: var(--fa-primary-opacity, 1);\n}\n\n.svg-inline--fa .fa-secondary {\n fill: var(--fa-secondary-color, currentColor);\n opacity: var(--fa-secondary-opacity, 0.4);\n}\n\n.svg-inline--fa.fa-swap-opacity .fa-primary {\n opacity: var(--fa-secondary-opacity, 0.4);\n}\n\n.svg-inline--fa.fa-swap-opacity .fa-secondary {\n opacity: var(--fa-primary-opacity, 1);\n}\n\n.svg-inline--fa mask .fa-primary,\n.svg-inline--fa mask .fa-secondary {\n fill: black;\n}\n\n.fad.fa-inverse,\n.fa-duotone.fa-inverse {\n color: var(--fa-inverse, #fff);\n}';if(n!==e||r!==t){const a=new RegExp("\\.".concat(e,"\\-"),"g"),i=new RegExp("\\--".concat(e,"\\-"),"g"),s=new RegExp("\\.".concat(t),"g");o=o.replace(a,".".concat(n,"-")).replace(i,"--".concat(n,"-")).replace(s,".".concat(r))}return o}let st=!1;function lt(){Xe.autoAddCss&&!st&&(function(e){if(!e||!le)return;const t=ae.createElement("style");t.setAttribute("type","text/css"),t.innerHTML=e;const n=ae.head.childNodes;let r=null;for(let e=n.length-1;e>-1;e--){const t=n[e],o=(t.tagName||"").toUpperCase();["STYLE","LINK"].indexOf(o)>-1&&(r=t)}ae.head.insertBefore(t,r)}(it()),st=!0)}var ct={mixout:()=>({dom:{css:it,insertCss:lt}}),hooks:()=>({beforeDOMElementCreation(){lt()},beforeI2svg(){lt()}})};const ut=oe||{};ut[ve]||(ut[ve]={}),ut[ve].styles||(ut[ve].styles={}),ut[ve].hooks||(ut[ve].hooks={}),ut[ve].shims||(ut[ve].shims=[]);var dt=ut[ve];const pt=[],ht=function(){ae.removeEventListener("DOMContentLoaded",ht),At=1,pt.map((e=>e()))};let At=!1;function ft(e){const{tag:t,attributes:n={},children:r=[]}=e;return"string"==typeof e?rt(e):"<".concat(t," ").concat(function(e){return Object.keys(e||{}).reduce(((t,n)=>t+"".concat(n,'="').concat(rt(e[n]),'" ')),"").trim()}(n),">").concat(r.map(ft).join(""),"</").concat(t,">")}function gt(e,t,n){if(e&&e[t]&&e[t][n])return{prefix:t,iconName:n,icon:e[t][n]}}le&&(At=(ae.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(ae.readyState),At||ae.addEventListener("DOMContentLoaded",ht));var mt=function(e,t,n,r){var o,a,i,s=Object.keys(e),l=s.length,c=void 0!==r?function(e,t){return function(n,r,o,a){return e.call(t,n,r,o,a)}}(t,r):t;for(void 0===n?(o=1,i=e[s[0]]):(o=0,i=n);o<l;o++)i=c(i,e[a=s[o]],a,e);return i};function Ct(e){const t=function(e){const t=[];let n=0;const r=e.length;for(;n<r;){const o=e.charCodeAt(n++);if(o>=55296&&o<=56319&&n<r){const r=e.charCodeAt(n++);56320==(64512&r)?t.push(((1023&o)<<10)+(1023&r)+65536):(t.push(o),n--)}else t.push(o)}return t}(e);return 1===t.length?t[0].toString(16):null}function bt(e){return Object.keys(e).reduce(((t,n)=>{const r=e[n];return r.icon?t[r.iconName]=r.icon:t[n]=r,t}),{})}function vt(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const{skipHooks:r=!1}=n,o=bt(t);"function"!=typeof dt.hooks.addPack||r?dt.styles[e]={...dt.styles[e]||{},...o}:dt.hooks.addPack(e,bt(t)),"fas"===e&&vt("fa",t)}const{styles:yt,shims:xt}=dt,wt={[ue]:Object.values(Pe[ue]),[pe]:Object.values(Pe[pe]),[he]:Object.values(Pe[he])};let Mt=null,kt={},Nt={},_t={},St={},Lt={};const Bt={[ue]:Object.keys(je[ue]),[pe]:Object.keys(je[pe]),[he]:Object.keys(je[he])};const Dt=()=>{const e=e=>mt(yt,((t,n,r)=>(t[r]=mt(n,e,{}),t)),{});kt=e(((e,t,n)=>(t[3]&&(e[t[3]]=n),t[2]&&t[2].filter((e=>"number"==typeof e)).forEach((t=>{e[t.toString(16)]=n})),e))),Nt=e(((e,t,n)=>(e[n]=n,t[2]&&t[2].filter((e=>"string"==typeof e)).forEach((t=>{e[t]=n})),e))),Lt=e(((e,t,n)=>{const r=t[2];return e[n]=n,r.forEach((t=>{e[t]=n})),e}));const t="far"in yt||Xe.autoFetchSvg,n=mt(xt,((e,n)=>{const r=n[0];let o=n[1];const a=n[2];return"far"!==o||t||(o="fas"),"string"==typeof r&&(e.names[r]={prefix:o,iconName:a}),"number"==typeof r&&(e.unicodes[r.toString(16)]={prefix:o,iconName:a}),e}),{names:{},unicodes:{}});_t=n.names,St=n.unicodes,Mt=Pt(Xe.styleDefault,{family:Xe.familyDefault})};var It;function jt(e,t){return(kt[e]||{})[t]}function Et(e,t){return(Lt[e]||{})[t]}function Tt(e){return _t[e]||{prefix:null,iconName:null}}function Ot(){return Mt}function Pt(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{family:n=ue}=t,r=je[n][e],o=Te[n][e]||Te[n][r],a=e in dt.styles?e:null;return o||a||null}It=e=>{Mt=Pt(e.styleDefault,{family:Xe.familyDefault})},Je.push(It),Dt();const zt={[ue]:Object.keys(Pe[ue]),[pe]:Object.keys(Pe[pe]),[he]:Object.keys(Pe[he])};function Rt(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{skipLookups:n=!1}=t,r={[ue]:"".concat(Xe.cssPrefix,"-").concat(ue),[pe]:"".concat(Xe.cssPrefix,"-").concat(pe),[he]:"".concat(Xe.cssPrefix,"-").concat(he)};let o=null,a=ue;const i=Ae.filter((e=>e!==de));i.forEach((t=>{(e.includes(r[t])||e.some((e=>zt[t].includes(e))))&&(a=t)}));const s=e.reduce(((e,t)=>{const s=function(e,t){const n=t.split("-"),r=n[0],o=n.slice(1).join("-");return r!==e||""===o||(a=o,~He.indexOf(a))?null:o;var a}(Xe.cssPrefix,t);if(yt[t]?(t=wt[a].includes(t)?Re[a][t]:t,o=t,e.prefix=t):Bt[a].indexOf(t)>-1?(o=t,e.prefix=Pt(t,{family:a})):s?e.iconName=s:t===Xe.replacementClass||i.some((e=>t===r[e]))||e.rest.push(t),!n&&e.prefix&&e.iconName){const t="fa"===o?Tt(e.iconName):{},n=Et(e.prefix,e.iconName);t.prefix&&(o=null),e.iconName=t.iconName||n||e.iconName,e.prefix=t.prefix||e.prefix,"far"!==e.prefix||yt.far||!yt.fas||Xe.autoFetchSvg||(e.prefix="fas")}return e}),{prefix:null,iconName:null,rest:[]});return(e.includes("fa-brands")||e.includes("fab"))&&(s.prefix="fab"),(e.includes("fa-duotone")||e.includes("fad"))&&(s.prefix="fad"),s.prefix||a!==pe||!yt.fass&&!Xe.autoFetchSvg||(s.prefix="fass",s.iconName=Et(s.prefix,s.iconName)||s.iconName),s.prefix||a!==he||!yt.fasds&&!Xe.autoFetchSvg||(s.prefix="fasds",s.iconName=Et(s.prefix,s.iconName)||s.iconName),"fa"!==s.prefix&&"fa"!==o||(s.prefix=Ot()||"fas"),s}let Ut=[],Ft={};const Yt={},Vt=Object.keys(Yt);function Gt(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];return(Ft[e]||[]).forEach((e=>{t=e.apply(null,[t,...r])})),t}function Wt(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];(Ft[e]||[]).forEach((e=>{e.apply(null,n)}))}function Ht(){const e=arguments[0],t=Array.prototype.slice.call(arguments,1);return Yt[e]?Yt[e].apply(null,t):void 0}function Qt(e){"fa"===e.prefix&&(e.prefix="fas");let{iconName:t}=e;const n=e.prefix||Ot();if(t)return t=Et(n,t)||t,gt(Zt.definitions,n,t)||gt(dt.styles,n,t)}const Zt=new class{constructor(){this.definitions={}}add(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];const r=t.reduce(this._pullDefinitions,{});Object.keys(r).forEach((e=>{this.definitions[e]={...this.definitions[e]||{},...r[e]},vt(e,r[e]);const t=Pe[ue][e];t&&vt(t,r[e]),Dt()}))}reset(){this.definitions={}}_pullDefinitions(e,t){const n=t.prefix&&t.iconName&&t.icon?{0:t}:t;return Object.keys(n).map((t=>{const{prefix:r,iconName:o,icon:a}=n[t],i=a[2];e[r]||(e[r]={}),i.length>0&&i.forEach((t=>{"string"==typeof t&&(e[r][t]=a)})),e[r][o]=a})),e}},qt={i2svg:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return le?(Wt("beforeI2svg",e),Ht("pseudoElements2svg",e),Ht("i2svg",e)):Promise.reject(new Error("Operation requires a DOM of some kind."))},watch:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{autoReplaceSvgRoot:t}=e;var n;!1===Xe.autoReplaceSvg&&(Xe.autoReplaceSvg=!0),Xe.observeMutations=!0,n=()=>{Kt({autoReplaceSvgRoot:t}),Wt("watch",e)},le&&(At?setTimeout(n,0):pt.push(n))}},Xt={icon:e=>{if(null===e)return null;if("object"==typeof e&&e.prefix&&e.iconName)return{prefix:e.prefix,iconName:Et(e.prefix,e.iconName)||e.iconName};if(Array.isArray(e)&&2===e.length){const t=0===e[1].indexOf("fa-")?e[1].slice(3):e[1],n=Pt(e[0]);return{prefix:n,iconName:Et(n,t)||t}}if("string"==typeof e&&(e.indexOf("".concat(Xe.cssPrefix,"-"))>-1||e.match(Ue))){const t=Rt(e.split(" "),{skipLookups:!0});return{prefix:t.prefix||Ot(),iconName:Et(t.prefix,t.iconName)||t.iconName}}if("string"==typeof e){const t=Ot();return{prefix:t,iconName:Et(t,e)||e}}}},Jt={noAuto:()=>{Xe.autoReplaceSvg=!1,Xe.observeMutations=!1,Wt("noAuto")},config:Xe,dom:qt,parse:Xt,library:Zt,findIconDefinition:Qt,toHtml:ft},Kt=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{autoReplaceSvgRoot:t=ae}=e;(Object.keys(dt.styles).length>0||Xe.autoFetchSvg)&&le&&Xe.autoReplaceSvg&&Jt.dom.i2svg({node:t})};function $t(e,t){return Object.defineProperty(e,"abstract",{get:t}),Object.defineProperty(e,"html",{get:function(){return e.abstract.map((e=>ft(e)))}}),Object.defineProperty(e,"node",{get:function(){if(!le)return;const t=ae.createElement("div");return t.innerHTML=e.html,t.children}}),e}function en(e){const{icons:{main:t,mask:n},prefix:r,iconName:o,transform:a,symbol:i,title:s,maskId:l,titleId:c,extra:u,watchable:d=!1}=e,{width:p,height:h}=n.found?n:t,A="fak"===r,f=[Xe.replacementClass,o?"".concat(Xe.cssPrefix,"-").concat(o):""].filter((e=>-1===u.classes.indexOf(e))).filter((e=>""!==e||!!e)).concat(u.classes).join(" ");let g={children:[],attributes:{...u.attributes,"data-prefix":r,"data-icon":o,class:f,role:u.attributes.role||"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(p," ").concat(h)}};const m=A&&!~u.classes.indexOf("fa-fw")?{width:"".concat(p/h*16*.0625,"em")}:{};d&&(g.attributes[we]=""),s&&(g.children.push({tag:"title",attributes:{id:g.attributes["aria-labelledby"]||"title-".concat(c||et())},children:[s]}),delete g.attributes.title);const C={...g,prefix:r,iconName:o,main:t,mask:n,maskId:l,transform:a,symbol:i,styles:{...m,...u.styles}},{children:b,attributes:v}=n.found&&t.found?Ht("generateAbstractMask",C)||{children:[],attributes:{}}:Ht("generateAbstractIcon",C)||{children:[],attributes:{}};return C.children=b,C.attributes=v,i?function(e){let{prefix:t,iconName:n,children:r,attributes:o,symbol:a}=e;return[{tag:"svg",attributes:{style:"display: none;"},children:[{tag:"symbol",attributes:{...o,id:!0===a?"".concat(t,"-").concat(Xe.cssPrefix,"-").concat(n):a},children:r}]}]}(C):function(e){let{children:t,main:n,mask:r,attributes:o,styles:a,transform:i}=e;if(at(i)&&n.found&&!r.found){const{width:e,height:t}=n,r={x:e/t/2,y:.5};o.style=ot({...a,"transform-origin":"".concat(r.x+i.x/16,"em ").concat(r.y+i.y/16,"em")})}return[{tag:"svg",attributes:o,children:t}]}(C)}function tn(e){const{content:t,width:n,height:r,transform:o,title:a,extra:i,watchable:s=!1}=e,l={...i.attributes,...a?{title:a}:{},class:i.classes.join(" ")};s&&(l[we]="");const c={...i.styles};at(o)&&(c.transform=function(e){let{transform:t,width:n=ye,height:r=ye,startCentered:o=!1}=e,a="";return a+=o&&ce?"translate(".concat(t.x/Ke-n/2,"em, ").concat(t.y/Ke-r/2,"em) "):o?"translate(calc(-50% + ".concat(t.x/Ke,"em), calc(-50% + ").concat(t.y/Ke,"em)) "):"translate(".concat(t.x/Ke,"em, ").concat(t.y/Ke,"em) "),a+="scale(".concat(t.size/Ke*(t.flipX?-1:1),", ").concat(t.size/Ke*(t.flipY?-1:1),") "),a+="rotate(".concat(t.rotate,"deg) "),a}({transform:o,startCentered:!0,width:n,height:r}),c["-webkit-transform"]=c.transform);const u=ot(c);u.length>0&&(l.style=u);const d=[];return d.push({tag:"span",attributes:l,children:[t]}),a&&d.push({tag:"span",attributes:{class:"sr-only"},children:[a]}),d}const{styles:nn}=dt;function rn(e){const t=e[0],n=e[1],[r]=e.slice(4);let o=null;return o=Array.isArray(r)?{tag:"g",attributes:{class:"".concat(Xe.cssPrefix,"-").concat(Ge.GROUP)},children:[{tag:"path",attributes:{class:"".concat(Xe.cssPrefix,"-").concat(Ge.SECONDARY),fill:"currentColor",d:r[0]}},{tag:"path",attributes:{class:"".concat(Xe.cssPrefix,"-").concat(Ge.PRIMARY),fill:"currentColor",d:r[1]}}]}:{tag:"path",attributes:{fill:"currentColor",d:r}},{found:!0,width:t,height:n,icon:o}}const on={found:!1,width:512,height:512};function an(e,t){let n=t;return"fa"===t&&null!==Xe.styleDefault&&(t=Ot()),new Promise(((r,o)=>{if("fa"===n){const n=Tt(e)||{};e=n.iconName||e,t=n.prefix||t}if(e&&t&&nn[t]&&nn[t][e])return r(rn(nn[t][e]));!function(e,t){Le||Xe.showMissingIcons||!e||console.error('Icon with name "'.concat(e,'" and prefix "').concat(t,'" is missing.'))}(e,t),r({...on,icon:Xe.showMissingIcons&&e&&Ht("missingIconAbstract")||{}})}))}const sn=()=>{},ln=Xe.measurePerformance&&se&&se.mark&&se.measure?se:{mark:sn,measure:sn},cn='FA "6.6.0"';var un=e=>(ln.mark("".concat(cn," ").concat(e," begins")),()=>(e=>{ln.mark("".concat(cn," ").concat(e," ends")),ln.measure("".concat(cn," ").concat(e),"".concat(cn," ").concat(e," begins"),"".concat(cn," ").concat(e," ends"))})(e));const dn=()=>{};function pn(e){return"string"==typeof(e.getAttribute?e.getAttribute(we):null)}function hn(e){return ae.createElementNS("http://www.w3.org/2000/svg",e)}function An(e){return ae.createElement(e)}function fn(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{ceFn:n=("svg"===e.tag?hn:An)}=t;if("string"==typeof e)return ae.createTextNode(e);const r=n(e.tag);return Object.keys(e.attributes||[]).forEach((function(t){r.setAttribute(t,e.attributes[t])})),(e.children||[]).forEach((function(e){r.appendChild(fn(e,{ceFn:n}))})),r}const gn={replace:function(e){const t=e[0];if(t.parentNode)if(e[1].forEach((e=>{t.parentNode.insertBefore(fn(e),t)})),null===t.getAttribute(we)&&Xe.keepOriginalSource){let e=ae.createComment(function(e){let t=" ".concat(e.outerHTML," ");return t="".concat(t,"Font Awesome fontawesome.com "),t}(t));t.parentNode.replaceChild(e,t)}else t.remove()},nest:function(e){const t=e[0],n=e[1];if(~nt(t).indexOf(Xe.replacementClass))return gn.replace(e);const r=new RegExp("".concat(Xe.cssPrefix,"-.*"));if(delete n[0].attributes.id,n[0].attributes.class){const e=n[0].attributes.class.split(" ").reduce(((e,t)=>(t===Xe.replacementClass||t.match(r)?e.toSvg.push(t):e.toNode.push(t),e)),{toNode:[],toSvg:[]});n[0].attributes.class=e.toSvg.join(" "),0===e.toNode.length?t.removeAttribute("class"):t.setAttribute("class",e.toNode.join(" "))}const o=n.map((e=>ft(e))).join("\n");t.setAttribute(we,""),t.innerHTML=o}};function mn(e){e()}function Cn(e,t){const n="function"==typeof t?t:dn;if(0===e.length)n();else{let t=mn;"async"===Xe.mutateApproach&&(t=oe.requestAnimationFrame||mn),t((()=>{const t=!0===Xe.autoReplaceSvg?gn.replace:gn[Xe.autoReplaceSvg]||gn.replace,r=un("mutate");e.map(t),r(),n()}))}}let bn=!1;function vn(){bn=!0}function yn(){bn=!1}let xn=null;function wn(e){if(!ie)return;if(!Xe.observeMutations)return;const{treeCallback:t=dn,nodeCallback:n=dn,pseudoElementsCallback:r=dn,observeMutationsRoot:o=ae}=e;xn=new ie((e=>{if(bn)return;const o=Ot();tt(e).forEach((e=>{if("childList"===e.type&&e.addedNodes.length>0&&!pn(e.addedNodes[0])&&(Xe.searchPseudoElements&&r(e.target),t(e.target)),"attributes"===e.type&&e.target.parentNode&&Xe.searchPseudoElements&&r(e.target.parentNode),"attributes"===e.type&&pn(e.target)&&~Ve.indexOf(e.attributeName))if("class"===e.attributeName&&function(e){const t=e.getAttribute?e.getAttribute(ke):null,n=e.getAttribute?e.getAttribute(Ne):null;return t&&n}(e.target)){const{prefix:t,iconName:n}=Rt(nt(e.target));e.target.setAttribute(ke,t||o),n&&e.target.setAttribute(Ne,n)}else(a=e.target)&&a.classList&&a.classList.contains&&a.classList.contains(Xe.replacementClass)&&n(e.target);var a}))})),le&&xn.observe(o,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}function Mn(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{styleParser:!0};const{iconName:n,prefix:r,rest:o}=function(e){const t=e.getAttribute("data-prefix"),n=e.getAttribute("data-icon"),r=void 0!==e.innerText?e.innerText.trim():"";let o=Rt(nt(e));return o.prefix||(o.prefix=Ot()),t&&n&&(o.prefix=t,o.iconName=n),o.iconName&&o.prefix||(o.prefix&&r.length>0&&(o.iconName=(a=o.prefix,i=e.innerText,(Nt[a]||{})[i]||jt(o.prefix,Ct(e.innerText)))),!o.iconName&&Xe.autoFetchSvg&&e.firstChild&&e.firstChild.nodeType===Node.TEXT_NODE&&(o.iconName=e.firstChild.data)),o;var a,i}(e),a=function(e){const t=tt(e.attributes).reduce(((e,t)=>("class"!==e.name&&"style"!==e.name&&(e[t.name]=t.value),e)),{}),n=e.getAttribute("title"),r=e.getAttribute("data-fa-title-id");return Xe.autoA11y&&(n?t["aria-labelledby"]="".concat(Xe.replacementClass,"-title-").concat(r||et()):(t["aria-hidden"]="true",t.focusable="false")),t}(e),i=Gt("parseNodeAttributes",{},e);let s=t.styleParser?function(e){const t=e.getAttribute("style");let n=[];return t&&(n=t.split(";").reduce(((e,t)=>{const n=t.split(":"),r=n[0],o=n.slice(1);return r&&o.length>0&&(e[r]=o.join(":").trim()),e}),{})),n}(e):[];return{iconName:n,title:e.getAttribute("title"),titleId:e.getAttribute("data-fa-title-id"),prefix:r,transform:$e,mask:{iconName:null,prefix:null,rest:[]},maskId:null,symbol:!1,extra:{classes:o,styles:s,attributes:a},...i}}const{styles:kn}=dt;function Nn(e){const t="nest"===Xe.autoReplaceSvg?Mn(e,{styleParser:!1}):Mn(e);return~t.extra.classes.indexOf(Fe)?Ht("generateLayersText",e,t):Ht("generateSvgReplacementMutation",e,t)}let _n=new Set;function Sn(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(!le)return Promise.resolve();const n=ae.documentElement.classList,r=e=>n.add("".concat(_e,"-").concat(e)),o=e=>n.remove("".concat(_e,"-").concat(e)),a=Xe.autoFetchSvg?_n:Be.map((e=>"fa-".concat(e))).concat(Object.keys(kn));a.includes("fa")||a.push("fa");const i=[".".concat(Fe,":not([").concat(we,"])")].concat(a.map((e=>".".concat(e,":not([").concat(we,"])")))).join(", ");if(0===i.length)return Promise.resolve();let s=[];try{s=tt(e.querySelectorAll(i))}catch(e){}if(!(s.length>0))return Promise.resolve();r("pending"),o("complete");const l=un("onTree"),c=s.reduce(((e,t)=>{try{const n=Nn(t);n&&e.push(n)}catch(e){Le||"MissingIcon"===e.name&&console.error(e)}return e}),[]);return new Promise(((e,n)=>{Promise.all(c).then((n=>{Cn(n,(()=>{r("active"),r("complete"),o("pending"),"function"==typeof t&&t(),l(),e()}))})).catch((e=>{l(),n(e)}))}))}function Ln(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;Nn(e).then((e=>{e&&Cn([e],t)}))}Be.map((e=>{_n.add("fa-".concat(e))})),Object.keys(je[ue]).map(_n.add.bind(_n)),Object.keys(je[pe]).map(_n.add.bind(_n)),Object.keys(je[he]).map(_n.add.bind(_n)),_n=[..._n];const Bn=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{transform:n=$e,symbol:r=!1,mask:o=null,maskId:a=null,title:i=null,titleId:s=null,classes:l=[],attributes:c={},styles:u={}}=t;if(!e)return;const{prefix:d,iconName:p,icon:h}=e;return $t({type:"icon",...e},(()=>(Wt("beforeDOMElementCreation",{iconDefinition:e,params:t}),Xe.autoA11y&&(i?c["aria-labelledby"]="".concat(Xe.replacementClass,"-title-").concat(s||et()):(c["aria-hidden"]="true",c.focusable="false")),en({icons:{main:rn(h),mask:o?rn(o.icon):{found:!1,width:null,height:null,icon:{}}},prefix:d,iconName:p,transform:{...$e,...n},symbol:r,title:i,maskId:a,titleId:s,extra:{attributes:c,styles:u,classes:l}}))))};var Dn={mixout(){return{icon:(e=Bn,function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=(t||{}).icon?t:Qt(t||{});let{mask:o}=n;return o&&(o=(o||{}).icon?o:Qt(o||{})),e(r,{...n,mask:o})})};var e},hooks:()=>({mutationObserverCallbacks:e=>(e.treeCallback=Sn,e.nodeCallback=Ln,e)}),provides(e){e.i2svg=function(e){const{node:t=ae,callback:n=()=>{}}=e;return Sn(t,n)},e.generateSvgReplacementMutation=function(e,t){const{iconName:n,title:r,titleId:o,prefix:a,transform:i,symbol:s,mask:l,maskId:c,extra:u}=t;return new Promise(((t,d)=>{Promise.all([an(n,a),l.iconName?an(l.iconName,l.prefix):Promise.resolve({found:!1,width:512,height:512,icon:{}})]).then((l=>{let[d,p]=l;t([e,en({icons:{main:d,mask:p},prefix:a,iconName:n,transform:i,symbol:s,maskId:c,title:r,titleId:o,extra:u,watchable:!0})])})).catch(d)}))},e.generateAbstractIcon=function(e){let{children:t,attributes:n,main:r,transform:o,styles:a}=e;const i=ot(a);let s;return i.length>0&&(n.style=i),at(o)&&(s=Ht("generateAbstractTransformGrouping",{main:r,transform:o,containerWidth:r.width,iconWidth:r.width})),t.push(s||r.icon),{children:t,attributes:n}}}},In={mixout:()=>({layer(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{classes:n=[]}=t;return $t({type:"layer"},(()=>{Wt("beforeDOMElementCreation",{assembler:e,params:t});let r=[];return e((e=>{Array.isArray(e)?e.map((e=>{r=r.concat(e.abstract)})):r=r.concat(e.abstract)})),[{tag:"span",attributes:{class:["".concat(Xe.cssPrefix,"-layers"),...n].join(" ")},children:r}]}))}})},jn={mixout:()=>({counter(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{title:n=null,classes:r=[],attributes:o={},styles:a={}}=t;return $t({type:"counter",content:e},(()=>(Wt("beforeDOMElementCreation",{content:e,params:t}),function(e){const{content:t,title:n,extra:r}=e,o={...r.attributes,...n?{title:n}:{},class:r.classes.join(" ")},a=ot(r.styles);a.length>0&&(o.style=a);const i=[];return i.push({tag:"span",attributes:o,children:[t]}),n&&i.push({tag:"span",attributes:{class:"sr-only"},children:[n]}),i}({content:e.toString(),title:n,extra:{attributes:o,styles:a,classes:["".concat(Xe.cssPrefix,"-layers-counter"),...r]}}))))}})},En={mixout:()=>({text(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{transform:n=$e,title:r=null,classes:o=[],attributes:a={},styles:i={}}=t;return $t({type:"text",content:e},(()=>(Wt("beforeDOMElementCreation",{content:e,params:t}),tn({content:e,transform:{...$e,...n},title:r,extra:{attributes:a,styles:i,classes:["".concat(Xe.cssPrefix,"-layers-text"),...o]}}))))}}),provides(e){e.generateLayersText=function(e,t){const{title:n,transform:r,extra:o}=t;let a=null,i=null;if(ce){const t=parseInt(getComputedStyle(e).fontSize,10),n=e.getBoundingClientRect();a=n.width/t,i=n.height/t}return Xe.autoA11y&&!n&&(o.attributes["aria-hidden"]="true"),Promise.resolve([e,tn({content:e.innerHTML,width:a,height:i,transform:r,title:n,extra:o,watchable:!0})])}}};const Tn=new RegExp('"',"ug"),On=[1105920,1112319],Pn={FontAwesome:{normal:"fas",400:"fas"},"Font Awesome 6 Free":{900:"fas",400:"far"},"Font Awesome 6 Pro":{900:"fas",400:"far",normal:"far",300:"fal",100:"fat"},"Font Awesome 6 Brands":{400:"fab",normal:"fab"},"Font Awesome 6 Duotone":{900:"fad"},"Font Awesome 6 Sharp":{900:"fass",400:"fasr",normal:"fasr",300:"fasl",100:"fast"},"Font Awesome 6 Sharp Duotone":{900:"fasds"},"Font Awesome 5 Free":{900:"fas",400:"far"},"Font Awesome 5 Pro":{900:"fas",400:"far",normal:"far",300:"fal"},"Font Awesome 5 Brands":{400:"fab",normal:"fab"},"Font Awesome 5 Duotone":{900:"fad"},"Font Awesome Kit":{400:"fak",normal:"fak"},"Font Awesome Kit Duotone":{400:"fakd",normal:"fakd"}},zn=Object.keys(Pn).reduce(((e,t)=>(e[t.toLowerCase()]=Pn[t],e)),{}),Rn=Object.keys(zn).reduce(((e,t)=>{const n=zn[t];return e[t]=n[900]||[...Object.entries(n)][0][1],e}),{});function Un(e,t){const n="".concat("data-fa-pseudo-element-pending").concat(t.replace(":","-"));return new Promise(((r,o)=>{if(null!==e.getAttribute(n))return r();const a=tt(e.children).filter((e=>e.getAttribute(Me)===t))[0],i=oe.getComputedStyle(e,t),s=i.getPropertyValue("font-family"),l=s.match(Ye),c=i.getPropertyValue("font-weight"),u=i.getPropertyValue("content");if(a&&!l)return e.removeChild(a),r();if(l&&"none"!==u&&""!==u){const u=i.getPropertyValue("content");let d=function(e,t){const n=e.replace(/^['"]|['"]$/g,"").toLowerCase(),r=parseInt(t),o=isNaN(r)?"normal":r;return(zn[n]||{})[o]||Rn[n]}(s,c);const{value:p,isSecondary:h}=function(e){const t=e.replace(Tn,""),n=function(e){const t=e.length;let n,r=e.charCodeAt(0);return r>=55296&&r<=56319&&t>1&&(n=e.charCodeAt(1),n>=56320&&n<=57343)?1024*(r-55296)+n-56320+65536:r}(t),r=n>=On[0]&&n<=On[1],o=2===t.length&&t[0]===t[1];return{value:Ct(o?t[0]:t),isSecondary:r||o}}(u),A=l[0].startsWith("FontAwesome");let f=jt(d,p),g=f;if(A){const e=function(e){const t=St[e],n=jt("fas",e);return t||(n?{prefix:"fas",iconName:n}:null)||{prefix:null,iconName:null}}(p);e.iconName&&e.prefix&&(f=e.iconName,d=e.prefix)}if(!f||h||a&&a.getAttribute(ke)===d&&a.getAttribute(Ne)===g)r();else{e.setAttribute(n,g),a&&e.removeChild(a);const i={iconName:null,title:null,titleId:null,prefix:null,transform:$e,symbol:!1,mask:{iconName:null,prefix:null,rest:[]},maskId:null,extra:{classes:[],styles:{},attributes:{}}},{extra:s}=i;s.attributes[Me]=t,an(f,d).then((o=>{const a=en({...i,icons:{main:o,mask:{prefix:null,iconName:null,rest:[]}},prefix:d,iconName:g,extra:s,watchable:!0}),l=ae.createElementNS("http://www.w3.org/2000/svg","svg");"::before"===t?e.insertBefore(l,e.firstChild):e.appendChild(l),l.outerHTML=a.map((e=>ft(e))).join("\n"),e.removeAttribute(n),r()})).catch(o)}}else r()}))}function Fn(e){return Promise.all([Un(e,"::before"),Un(e,"::after")])}function Yn(e){return!(e.parentNode===document.head||~Se.indexOf(e.tagName.toUpperCase())||e.getAttribute(Me)||e.parentNode&&"svg"===e.parentNode.tagName)}function Vn(e){if(le)return new Promise(((t,n)=>{const r=tt(e.querySelectorAll("*")).filter(Yn).map(Fn),o=un("searchPseudoElements");vn(),Promise.all(r).then((()=>{o(),yn(),t()})).catch((()=>{o(),yn(),n()}))}))}var Gn={hooks:()=>({mutationObserverCallbacks:e=>(e.pseudoElementsCallback=Vn,e)}),provides(e){e.pseudoElements2svg=function(e){const{node:t=ae}=e;Xe.searchPseudoElements&&Vn(t)}}};let Wn=!1;var Hn={mixout:()=>({dom:{unwatch(){vn(),Wn=!0}}}),hooks:()=>({bootstrap(){wn(Gt("mutationObserverCallbacks",{}))},noAuto(){xn&&xn.disconnect()},watch(e){const{observeMutationsRoot:t}=e;Wn?yn():wn(Gt("mutationObserverCallbacks",{observeMutationsRoot:t}))}})};const Qn=e=>e.toLowerCase().split(" ").reduce(((e,t)=>{const n=t.toLowerCase().split("-"),r=n[0];let o=n.slice(1).join("-");if(r&&"h"===o)return e.flipX=!0,e;if(r&&"v"===o)return e.flipY=!0,e;if(o=parseFloat(o),isNaN(o))return e;switch(r){case"grow":e.size=e.size+o;break;case"shrink":e.size=e.size-o;break;case"left":e.x=e.x-o;break;case"right":e.x=e.x+o;break;case"up":e.y=e.y-o;break;case"down":e.y=e.y+o;break;case"rotate":e.rotate=e.rotate+o}return e}),{size:16,x:0,y:0,flipX:!1,flipY:!1,rotate:0});var Zn={mixout:()=>({parse:{transform:e=>Qn(e)}}),hooks:()=>({parseNodeAttributes(e,t){const n=t.getAttribute("data-fa-transform");return n&&(e.transform=Qn(n)),e}}),provides(e){e.generateAbstractTransformGrouping=function(e){let{main:t,transform:n,containerWidth:r,iconWidth:o}=e;const a={transform:"translate(".concat(r/2," 256)")},i="translate(".concat(32*n.x,", ").concat(32*n.y,") "),s="scale(".concat(n.size/16*(n.flipX?-1:1),", ").concat(n.size/16*(n.flipY?-1:1),") "),l="rotate(".concat(n.rotate," 0 0)"),c={transform:"".concat(i," ").concat(s," ").concat(l)},u={transform:"translate(".concat(o/2*-1," -256)")};return{tag:"g",attributes:{...a},children:[{tag:"g",attributes:{...c},children:[{tag:t.icon.tag,children:t.icon.children,attributes:{...t.icon.attributes,...u}}]}]}}}};const qn={x:0,y:0,width:"100%",height:"100%"};function Xn(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return e.attributes&&(e.attributes.fill||t)&&(e.attributes.fill="black"),e}var Jn={hooks:()=>({parseNodeAttributes(e,t){const n=t.getAttribute("data-fa-mask"),r=n?Rt(n.split(" ").map((e=>e.trim()))):{prefix:null,iconName:null,rest:[]};return r.prefix||(r.prefix=Ot()),e.mask=r,e.maskId=t.getAttribute("data-fa-mask-id"),e}}),provides(e){e.generateAbstractMask=function(e){let{children:t,attributes:n,main:r,mask:o,maskId:a,transform:i}=e;const{width:s,icon:l}=r,{width:c,icon:u}=o,d=function(e){let{transform:t,containerWidth:n,iconWidth:r}=e;const o={transform:"translate(".concat(n/2," 256)")},a="translate(".concat(32*t.x,", ").concat(32*t.y,") "),i="scale(".concat(t.size/16*(t.flipX?-1:1),", ").concat(t.size/16*(t.flipY?-1:1),") "),s="rotate(".concat(t.rotate," 0 0)");return{outer:o,inner:{transform:"".concat(a," ").concat(i," ").concat(s)},path:{transform:"translate(".concat(r/2*-1," -256)")}}}({transform:i,containerWidth:c,iconWidth:s}),p={tag:"rect",attributes:{...qn,fill:"white"}},h=l.children?{children:l.children.map(Xn)}:{},A={tag:"g",attributes:{...d.inner},children:[Xn({tag:l.tag,attributes:{...l.attributes,...d.path},...h})]},f={tag:"g",attributes:{...d.outer},children:[A]},g="mask-".concat(a||et()),m="clip-".concat(a||et()),C={tag:"mask",attributes:{...qn,id:g,maskUnits:"userSpaceOnUse",maskContentUnits:"userSpaceOnUse"},children:[p,f]},b={tag:"defs",children:[{tag:"clipPath",attributes:{id:m},children:(v=u,"g"===v.tag?v.children:[v])},C]};var v;return t.push(b,{tag:"rect",attributes:{fill:"currentColor","clip-path":"url(#".concat(m,")"),mask:"url(#".concat(g,")"),...qn}}),{children:t,attributes:n}}}},Kn={provides(e){let t=!1;oe.matchMedia&&(t=oe.matchMedia("(prefers-reduced-motion: reduce)").matches),e.missingIconAbstract=function(){const e=[],n={fill:"currentColor"},r={attributeType:"XML",repeatCount:"indefinite",dur:"2s"};e.push({tag:"path",attributes:{...n,d:"M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"}});const o={...r,attributeName:"opacity"},a={tag:"circle",attributes:{...n,cx:"256",cy:"364",r:"28"},children:[]};return t||a.children.push({tag:"animate",attributes:{...r,attributeName:"r",values:"28;14;28;28;14;28;"}},{tag:"animate",attributes:{...o,values:"1;0;1;1;0;1;"}}),e.push(a),e.push({tag:"path",attributes:{...n,opacity:"1",d:"M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"},children:t?[]:[{tag:"animate",attributes:{...o,values:"1;0;0;0;0;1;"}}]}),t||e.push({tag:"path",attributes:{...n,opacity:"0",d:"M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"},children:[{tag:"animate",attributes:{...o,values:"0;0;1;1;0;0;"}}]}),{tag:"g",attributes:{class:"missing"},children:e}}}};!function(e,t){let{mixoutsTo:n}=t;Ut=e,Ft={},Object.keys(Yt).forEach((e=>{-1===Vt.indexOf(e)&&delete Yt[e]})),Ut.forEach((e=>{const t=e.mixout?e.mixout():{};if(Object.keys(t).forEach((e=>{"function"==typeof t[e]&&(n[e]=t[e]),"object"==typeof t[e]&&Object.keys(t[e]).forEach((r=>{n[e]||(n[e]={}),n[e][r]=t[e][r]}))})),e.hooks){const t=e.hooks();Object.keys(t).forEach((e=>{Ft[e]||(Ft[e]=[]),Ft[e].push(t[e])}))}e.provides&&e.provides(Yt)}))}([ct,Dn,In,jn,En,Gn,Hn,Zn,Jn,Kn,{hooks:()=>({parseNodeAttributes(e,t){const n=t.getAttribute("data-fa-symbol"),r=null!==n&&(""===n||n);return e.symbol=r,e}})}],{mixoutsTo:Jt});const $n=Jt.parse,er=Jt.icon;var tr=r(764),nr=r.n(tr);function rr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function or(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?rr(Object(n),!0).forEach((function(t){ir(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):rr(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ar(e){return ar="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ar(e)}function ir(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function sr(e){return function(e){if(Array.isArray(e))return lr(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return lr(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?lr(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function lr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function cr(e){return t=e,(t-=0)==t?e:(e=e.replace(/[\-_\s]+(.)?/g,(function(e,t){return t?t.toUpperCase():""}))).substr(0,1).toLowerCase()+e.substr(1);var t}var ur=["style"],dr=!1;try{dr=!0}catch(e){}function pr(e){return e&&"object"===ar(e)&&e.prefix&&e.iconName&&e.icon?e:$n.icon?$n.icon(e):null===e?null:e&&"object"===ar(e)&&e.prefix&&e.iconName?e:Array.isArray(e)&&2===e.length?{prefix:e[0],iconName:e[1]}:"string"==typeof e?{prefix:"fas",iconName:e}:void 0}function hr(e,t){return Array.isArray(t)&&t.length>0||!Array.isArray(t)&&t?ir({},e,t):{}}var Ar={border:!1,className:"",mask:null,maskId:null,fixedWidth:!1,inverse:!1,flip:!1,icon:null,listItem:!1,pull:null,pulse:!1,rotation:null,size:null,spin:!1,spinPulse:!1,spinReverse:!1,beat:!1,fade:!1,beatFade:!1,bounce:!1,shake:!1,symbol:!1,title:"",titleId:null,transform:null,swapOpacity:!1},fr=a.forwardRef((function(e,t){var n=or(or({},Ar),e),r=n.icon,o=n.mask,a=n.symbol,i=n.className,s=n.title,l=n.titleId,c=n.maskId,u=pr(r),d=hr("classes",[].concat(sr(function(e){var t,n=e.beat,r=e.fade,o=e.beatFade,a=e.bounce,i=e.shake,s=e.flash,l=e.spin,c=e.spinPulse,u=e.spinReverse,d=e.pulse,p=e.fixedWidth,h=e.inverse,A=e.border,f=e.listItem,g=e.flip,m=e.size,C=e.rotation,b=e.pull,v=(ir(t={"fa-beat":n,"fa-fade":r,"fa-beat-fade":o,"fa-bounce":a,"fa-shake":i,"fa-flash":s,"fa-spin":l,"fa-spin-reverse":u,"fa-spin-pulse":c,"fa-pulse":d,"fa-fw":p,"fa-inverse":h,"fa-border":A,"fa-li":f,"fa-flip":!0===g,"fa-flip-horizontal":"horizontal"===g||"both"===g,"fa-flip-vertical":"vertical"===g||"both"===g},"fa-".concat(m),null!=m),ir(t,"fa-rotate-".concat(C),null!=C&&0!==C),ir(t,"fa-pull-".concat(b),null!=b),ir(t,"fa-swap-opacity",e.swapOpacity),t);return Object.keys(v).map((function(e){return v[e]?e:null})).filter((function(e){return e}))}(n)),sr((i||"").split(" ")))),p=hr("transform","string"==typeof n.transform?$n.transform(n.transform):n.transform),h=hr("mask",pr(o)),A=er(u,or(or(or(or({},d),p),h),{},{symbol:a,title:s,titleId:l,maskId:c}));if(!A)return function(){var e;!dr&&console&&"function"==typeof console.error&&(e=console).error.apply(e,arguments)}("Could not find icon",u),null;var f=A.abstract,g={ref:t};return Object.keys(n).forEach((function(e){Ar.hasOwnProperty(e)||(g[e]=n[e])})),gr(f[0],g)}));fr.displayName="FontAwesomeIcon",fr.propTypes={beat:nr().bool,border:nr().bool,beatFade:nr().bool,bounce:nr().bool,className:nr().string,fade:nr().bool,flash:nr().bool,mask:nr().oneOfType([nr().object,nr().array,nr().string]),maskId:nr().string,fixedWidth:nr().bool,inverse:nr().bool,flip:nr().oneOf([!0,!1,"horizontal","vertical","both"]),icon:nr().oneOfType([nr().object,nr().array,nr().string]),listItem:nr().bool,pull:nr().oneOf(["right","left"]),pulse:nr().bool,rotation:nr().oneOf([0,90,180,270]),shake:nr().bool,size:nr().oneOf(["2xs","xs","sm","lg","xl","2xl","1x","2x","3x","4x","5x","6x","7x","8x","9x","10x"]),spin:nr().bool,spinPulse:nr().bool,spinReverse:nr().bool,symbol:nr().oneOfType([nr().bool,nr().string]),title:nr().string,titleId:nr().string,transform:nr().oneOfType([nr().string,nr().object]),swapOpacity:nr().bool};var gr=function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if("string"==typeof n)return n;var o=(n.children||[]).map((function(n){return e(t,n)})),a=Object.keys(n.attributes||{}).reduce((function(e,t){var r=n.attributes[t];switch(t){case"class":e.attrs.className=r,delete n.attributes.class;break;case"style":e.attrs.style=r.split(";").map((function(e){return e.trim()})).filter((function(e){return e})).reduce((function(e,t){var n,r=t.indexOf(":"),o=cr(t.slice(0,r)),a=t.slice(r+1).trim();return o.startsWith("webkit")?e[(n=o,n.charAt(0).toUpperCase()+n.slice(1))]=a:e[o]=a,e}),{});break;default:0===t.indexOf("aria-")||0===t.indexOf("data-")?e.attrs[t.toLowerCase()]=r:e.attrs[cr(t)]=r}return e}),{attrs:{}}),i=r.style,s=void 0===i?{}:i,l=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(r,ur);return a.attrs.style=or(or({},a.attrs.style),s),t.apply(void 0,[n.tag,or(or({},a.attrs),l)].concat(sr(o)))}.bind(null,a.createElement);const mr={prefix:"fas",iconName:"minus",icon:[448,512,[8211,8722,10134,"subtract"],"f068","M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z"]},Cr={prefix:"fas",iconName:"plus",icon:[448,512,[10133,61543,"add"],"2b","M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 144L48 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l144 0 0 144c0 17.7 14.3 32 32 32s32-14.3 32-32l0-144 144 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-144 0 0-144z"]};class br extends a.Component{constructor(e){super(e),this._localChange=!1;const t=this.props.target[this.props.propertyName];this.state={isExpanded:!1,value:t&&t.clone?t.clone():s.Vector2.Zero()}}shouldComponentUpdate(e,t){const n=e.target[e.propertyName];return!(n.equals(t.value)&&!this._localChange||(t.value=n.clone(),this._localChange=!1,0))}switchExpandState(){this._localChange=!0,this.setState({isExpanded:!this.state.isExpanded})}raiseOnPropertyChanged(e){this.props.onChange&&this.props.onChange(this.state.value),this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:this.state.value,initialValue:e})}updateStateX(e){this._localChange=!0;const t=this.state.value.clone();this.props.target[this.props.propertyName].x=e,this.state.value.x=e,this.setState({value:this.state.value}),this.raiseOnPropertyChanged(t)}updateStateY(e){this._localChange=!0;const t=this.state.value.clone();this.props.target[this.props.propertyName].y=e,this.state.value.y=e,this.setState({value:this.state.value}),this.raiseOnPropertyChanged(t)}render(){const e=this.state.isExpanded?(0,l.jsx)(fr,{icon:mr}):(0,l.jsx)(fr,{icon:Cr});return(0,l.jsxs)("div",{className:"vector3Line",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsxs)("div",{className:"firstLine",title:this.props.label,children:[(0,l.jsx)("div",{className:"label",children:this.props.label}),(0,l.jsx)("div",{className:"vector",children:`X: ${this.state.value.x.toFixed(2)}, Y: ${this.state.value.y.toFixed(2)}`}),(0,l.jsx)("div",{className:"expand hoverIcon",onClick:()=>this.switchExpandState(),title:"Expand",children:e})]}),this.state.isExpanded&&(0,l.jsxs)("div",{className:"secondLine",children:[(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"x",step:this.props.step,value:this.state.value.x,onChange:e=>this.updateStateX(e)}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"y",step:this.props.step,value:this.state.value.y,onChange:e=>this.updateStateY(e)})]})]})}}br.defaultProps={step:.001};let vr="";const yr=void 0!==r.g?r.g:"undefined"!=typeof window?window:void 0;function xr(e){const t=document.createElement("div");if(t.textContent=e,document.body.appendChild(t),window.getSelection){const e=document.createRange();e.selectNode(t),window.getSelection().removeAllRanges(),window.getSelection().addRange(e)}document.execCommand("copy"),t.remove()}function wr(e){let t=(0,s.GetClassName)(e);return t.includes("BABYLON.")&&(t=t.split("BABYLON.")[1]),{className:t,babylonNamespace:vr}}void 0!==yr&&void 0!==yr.BABYLON&&(vr="BABYLON.");const Mr="—";class kr extends a.Component{constructor(){super(...arguments),this._arrowsRef=a.createRef(),this._drag=e=>{this.props.incrementValue(-e.movementY)},this._releaseListener=()=>{this.props.setDragging(!1),this._arrowsRef.current?.ownerDocument.exitPointerLock(),this._arrowsRef.current?.ownerDocument.defaultView.removeEventListener("pointerup",this._releaseListener),this._arrowsRef.current?.ownerDocument.removeEventListener("pointerlockchange",this._lockChangeListener),this._arrowsRef.current?.ownerDocument.defaultView.removeEventListener("mousemove",this._drag)},this._lockChangeListener=()=>{this._arrowsRef.current?.ownerDocument.pointerLockElement!==this._arrowsRef.current&&this._releaseListener()}}render(){return(0,l.jsxs)("div",{className:"arrows",ref:this._arrowsRef,onPointerDown:()=>{this._arrowsRef.current?.ownerDocument.addEventListener("pointerlockchange",this._lockChangeListener),this._arrowsRef.current?.ownerDocument.defaultView.addEventListener("pointerup",this._releaseListener),this._arrowsRef.current?.ownerDocument.defaultView.addEventListener("mousemove",this._drag),this.props.setDragging(!0),this._arrowsRef.current?.requestPointerLock()},onDragStart:e=>e.preventDefault(),children:[(0,l.jsx)("img",{className:"upArrowIcon",src:"data:image/svg+xml;base64,PHN2ZyBpZD0iaWNvbnMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE1IDE1Ij48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6IzMzMzt9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNNC4wOSw5LjQ1YS42LjYsMCwwLDEsMC0uODRsMy0zYS42LjYsMCwwLDEsLjg0LDBsMywzYS42LjYsMCwwLDEsMCwuODQuNjEuNjEsMCwwLDEtLjg1LDBsLTItMnY1LjczYS42LjYsMCwwLDEtMS4yLDBWNy40OGwtMiwyQS42MS42MSwwLDAsMSw0LjA5LDkuNDVaIi8+PC9zdmc+",alt:"Increase Value"}),(0,l.jsx)("img",{className:"downArrowIcon",src:"data:image/svg+xml;base64,PHN2ZyBpZD0iaWNvbnMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE1IDE1Ij48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6IzMzMzt9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNNC4wOSw1LjU1YS42MS42MSwwLDAsMSwuODUsMGwyLDJWMS43OWEuNi42LDAsMSwxLDEuMiwwVjcuNTJsMi0yYS42MS42MSwwLDAsMSwuODUsMCwuNi42LDAsMCwxLDAsLjg0bC0zLDNhLjYuNiwwLDAsMS0uODQsMGwtMy0zQS42LjYsMCwwLDEsNC4wOSw1LjU1WiIvPjwvc3ZnPg==",alt:"Increase Value"})]})}}const Nr="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0MCA0MCI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5jb3B5PC90aXRsZT48ZyBpZD0iVUlfRWxlbWVudHMiIGRhdGEtbmFtZT0iVUkgRWxlbWVudHMiPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTI0LDE0Ljg5SDIyLjc2bC0zLTNIMTIuNDNWMjYuNTloNC4yNnYzaDExLjVWMTlabS4zLDEuNzEsMi4xNCwyLjEzSDI0LjM0Wm0tMTAuOTEsOVYxMi45M2g1LjkzbDIsMkgxNi42OXYxMC43Wm00LjI2LDNWMTUuODloNS42NXYzLjg0aDMuODV2OC44M1oiLz48L2c+PC9zdmc+";class _r extends a.Component{constructor(e){super(e),this._localChange=!1;const t=this.props.target[this.props.propertyName];this.state={value:this.getValueString(t,this.props),dragging:!1},this._store=t}componentWillUnmount(){this.unlock()}getValueString(e,t){return e?e===Mr?Mr:t.isInteger?e.toFixed(0):e.toFixed(t.digits||4):"0"}shouldComponentUpdate(e,t){if(this._localChange)return this._localChange=!1,!0;const n=e.target[e.propertyName],r=this.getValueString(n,e);return r!==t.value?(t.value=r,!0):t.dragging!=this.state.dragging||e.unit!==this.props.unit||e.isInteger!==this.props.isInteger}raiseOnPropertyChanged(e,t){this.props.onChange&&this.props.onChange(e),this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:e,initialValue:t})}updateValue(e){if(/[^0-9.-]/g.test(e))return;let t;t=this.props.isInteger?parseInt(e):parseFloat(e),isNaN(t)?null!=this.props.defaultValue&&(t=this.props.defaultValue):(void 0!==this.props.min&&t<this.props.min&&(t=this.props.min,e=t.toString()),void 0!==this.props.max&&t>this.props.max&&(t=this.props.max,e=t.toString())),this._localChange=!0,this.setState({value:e}),isNaN(t)||(this.props.target[this.props.propertyName]=t,this.raiseOnPropertyChanged(t,this._store),this._store=t)}lock(){this.props.lockObject&&(this.props.lockObject.lock=!0)}unlock(){this.props.lockObject&&(this.props.lockObject.lock=!1)}incrementValue(e,t=!0){t&&this.props.step&&(e*=parseFloat(this.props.step));let n=parseFloat(this.state.value);isNaN(n)&&(n=0),this.updateValue((n+e).toFixed(2))}onKeyDown(e){const t=parseFloat(this.props.step||this.props.isInteger?"1":"0.01"),n=n=>{e.shiftKey&&(n*=10,(e.ctrlKey||e.metaKey)&&(n*=10)),this.incrementValue(n*t,!1),e.preventDefault()};"ArrowUp"===e.key?n(1):"ArrowDown"===e.key&&n(-1),"Enter"===e.key&&this.props.onEnter&&this.props.onEnter(this._store)}onCopyClick(){if(this.props&&this.props.target){const{className:e,babylonNamespace:t}=wr(this.props.target);xr("globalThis.debugNode."+this.props.propertyName+" = "+this.props.target[this.props.propertyName]+";// (debugNode as "+t+e+")")}else xr("undefined")}render(){let e;e=this.props.isInteger?parseInt(this.state.value):parseFloat(this.state.value);let t=this.props.smallUI?"short":"value";this.state.dragging&&(t+=" dragging"),this.props.arrows&&(t+=" hasArrows");const n=this.state.value===Mr?"":this.state.value,r=this.state.value===Mr?Mr:"";return(0,l.jsxs)(l.Fragment,{children:[!this.props.useEuler&&(0,l.jsxs)("div",{className:this.props.additionalClass?this.props.additionalClass+" floatLine":"floatLine",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(!this.props.icon||""!=this.props.label)&&(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label}),(0,l.jsxs)("div",{className:t,children:[(0,l.jsx)("input",{type:"number",step:this.props.step||this.props.isInteger?"1":"0.01",className:"numeric-input",onKeyDown:e=>this.onKeyDown(e),value:n,onBlur:()=>{this.unlock(),this.props.onEnter&&this.props.onEnter(this._store)},placeholder:r,onFocus:()=>this.lock(),onChange:e=>this.updateValue(e.target.value),disabled:this.props.disabled}),this.props.arrows&&(0,l.jsx)(kr,{incrementValue:e=>this.incrementValue(e),setDragging:t=>{const n=this.state.dragging;!n&&t&&this.props.onDragStart?this.props.onDragStart(e):n&&!t&&this.props.onDragStop&&this.props.onDragStop(e),this.setState({dragging:t})}})]}),this.props.unit,(0,l.jsx)("div",{className:"copy hoverIcon",onClick:()=>this.onCopyClick(),title:"Copy to clipboard",children:(0,l.jsx)("img",{src:Nr,alt:"Copy"})})]}),this.props.useEuler&&(0,l.jsx)(Sr,{lockObject:this.props.lockObject,label:this.props.label,minimum:0,maximum:360,step:.1,directValue:s.Tools.ToDegrees(e),onChange:e=>this.updateValue(s.Tools.ToRadians(e).toString())})]})}}class Sr extends a.Component{constructor(e){if(super(e),this._localChange=!1,void 0!==this.props.directValue)this.state={value:this.props.directValue};else{let e=this.props.target[this.props.propertyName];void 0===e&&(e=this.props.maximum),this.state={value:e}}}shouldComponentUpdate(e,t){if(void 0!==e.directValue)return t.value=e.directValue,!0;if(e.label!==this.props.label)return!0;let n=e.target[e.propertyName];return void 0===n&&(n=e.maximum),n!==t.value||this._localChange||e.maximum!==this.props.maximum||e.minimum!==this.props.minimum?(t.value=n,this._localChange=!1,!0):e.unit!==this.props.unit}onChange(e){if("—"===e)return;this._localChange=!0;let t=parseFloat(e);this.props.useEuler&&(t=s.Tools.ToRadians(t)),this.props.target&&(this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:t,initialValue:this.state.value}),this.props.target[this.props.propertyName]=t),this.props.onChange&&this.props.onChange(t),this.setState({value:t})}onInput(e){const t=parseFloat(e);this.props.onInput&&this.props.onInput(t)}prepareDataToRead(e){return null===e&&(e=0),this.props.useEuler?s.Tools.ToDegrees(e):e}onCopyClick(){if(this.props&&this.props.target){const{className:e,babylonNamespace:t}=wr(this.props.target);xr("globalThis.debugNode."+this.props.propertyName+" = "+this.props.target[this.props.propertyName]+";// (debugNode as "+t+e+")")}else xr("undefined")}render(){return(0,l.jsxs)("div",{className:"sliderLine",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(!this.props.icon||""!=this.props.label)&&(0,l.jsx)("div",{className:this.props.margin?"label withMargins":"label",title:this.props.label,children:this.props.label}),(0,l.jsx)(_r,{lockObject:this.props.lockObject,isInteger:0===this.props.decimalCount,smallUI:!0,label:"",target:this.state,digits:void 0===this.props.decimalCount?4:this.props.decimalCount,propertyName:"value",min:this.props.allowOverflow?void 0:this.props.minimum,max:this.props.allowOverflow?void 0:this.props.maximum,onEnter:()=>{const e=this.prepareDataToRead(this.state.value);this.onChange(e)},onChange:()=>{const e=this.prepareDataToRead(this.state.value);this.onChange(e)},onPropertyChangedObservable:this.props.onPropertyChangedObservable,unit:this.props.unit}),(0,l.jsx)("div",{className:"slider",children:(0,l.jsx)("input",{className:"range"+(this.props.allowOverflow&&(this.state.value>this.props.maximum||this.state.value<this.props.minimum)?" overflow":""),type:"range",step:this.props.step,min:this.prepareDataToRead(this.props.minimum),max:this.prepareDataToRead(this.props.maximum),value:this.prepareDataToRead(this.state.value),onInput:e=>this.onInput(e.target.value),onChange:e=>this.onChange(e.target.value)})}),(0,l.jsx)("div",{className:"copy hoverIcon",onClick:()=>this.onCopyClick(),title:"Copy to clipboard",children:(0,l.jsx)("img",{src:Nr,alt:"Copy"})})]})}}class Lr extends a.Component{constructor(e){super(e),this._localChange=!1;const t=this.getCurrentValue();this.state={isExpanded:!1,value:t&&t.clone?t.clone():s.Vector3.Zero()}}getCurrentValue(){return this.props.target[this.props.propertyName]}shouldComponentUpdate(e,t){const n=e.target[e.propertyName];return!(n.equals(t.value)&&!this._localChange||(t.value=n.clone(),this._localChange=!1,0))}switchExpandState(){this._localChange=!0,this.setState({isExpanded:!this.state.isExpanded})}raiseOnPropertyChanged(e){this.props.onChange&&this.props.onChange(this.state.value),this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:this.state.value,initialValue:e})}updateVector3(){const e=this.props.target[this.props.propertyName].clone();this.props.target[this.props.propertyName]=this.state.value,this.setState({value:e}),this.raiseOnPropertyChanged(e)}updateStateX(e){this._localChange=!0,this.state.value.x=e,this.updateVector3()}updateStateY(e){this._localChange=!0,this.state.value.y=e,this.updateVector3()}updateStateZ(e){this._localChange=!0,this.state.value.z=e,this.updateVector3()}onCopyClick(){if(this.props&&this.props.target){const{className:e,babylonNamespace:t}=wr(this.props.target),n="globalThis.debugNode",r=this.props.propertyName,o=this.props.target[this.props.propertyName];xr(n+"."+r+" = new "+t+"Vector3("+o.x+", "+o.y+", "+o.z+");// (debugNode as "+t+e+")")}else xr("undefined")}render(){const e=this.state.isExpanded?(0,l.jsx)(fr,{icon:mr}):(0,l.jsx)(fr,{icon:Cr});return(0,l.jsxs)("div",{className:"vector3Line",children:[(0,l.jsxs)("div",{className:"firstLine",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label}),(0,l.jsxs)("div",{className:"vector",children:[!this.props.useEuler&&`X: ${this.state.value.x.toFixed(2)}, Y: ${this.state.value.y.toFixed(2)}, Z: ${this.state.value.z.toFixed(2)}`,this.props.useEuler&&`X: ${s.Tools.ToDegrees(this.state.value.x).toFixed(2)}, Y: ${s.Tools.ToDegrees(this.state.value.y).toFixed(2)}, Z: ${s.Tools.ToDegrees(this.state.value.z).toFixed(2)}`]}),(0,l.jsx)("div",{className:"expand hoverIcon",onClick:()=>this.switchExpandState(),title:"Expand",children:e}),(0,l.jsx)("div",{className:"copy hoverIcon",onClick:()=>this.onCopyClick(),title:"Copy to clipboard",children:(0,l.jsx)("img",{src:Nr,alt:"Copy"})})]}),this.state.isExpanded&&!this.props.useEuler&&(0,l.jsxs)("div",{className:"secondLine",children:[(0,l.jsx)(J,{label:"x",lockObject:this.props.lockObject,step:this.props.step,value:this.state.value.x,onChange:e=>this.updateStateX(e)}),(0,l.jsx)(J,{label:"y",lockObject:this.props.lockObject,step:this.props.step,value:this.state.value.y,onChange:e=>this.updateStateY(e)}),(0,l.jsx)(J,{label:"z",lockObject:this.props.lockObject,step:this.props.step,value:this.state.value.z,onChange:e=>this.updateStateZ(e)})]}),this.state.isExpanded&&this.props.useEuler&&!this.props.noSlider&&(0,l.jsxs)("div",{className:"secondLine",children:[(0,l.jsx)(Sr,{lockObject:this.props.lockObject,margin:!0,label:"x",minimum:0,maximum:360,step:.1,directValue:s.Tools.ToDegrees(this.state.value.x),onChange:e=>this.updateStateX(s.Tools.ToRadians(e))}),(0,l.jsx)(Sr,{lockObject:this.props.lockObject,margin:!0,label:"y",minimum:0,maximum:360,step:.1,directValue:s.Tools.ToDegrees(this.state.value.y),onChange:e=>this.updateStateY(s.Tools.ToRadians(e))}),(0,l.jsx)(Sr,{lockObject:this.props.lockObject,margin:!0,label:"z",minimum:0,maximum:360,step:.1,directValue:s.Tools.ToDegrees(this.state.value.z),onChange:e=>this.updateStateZ(s.Tools.ToRadians(e))})]}),this.state.isExpanded&&this.props.useEuler&&this.props.noSlider&&(0,l.jsxs)("div",{className:"secondLine",children:[(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"x",step:this.props.step,value:s.Tools.ToDegrees(this.state.value.x),onChange:e=>this.updateStateX(s.Tools.ToRadians(e))}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"y",step:this.props.step,value:s.Tools.ToDegrees(this.state.value.y),onChange:e=>this.updateStateY(s.Tools.ToRadians(e))}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"z",step:this.props.step,value:s.Tools.ToDegrees(this.state.value.z),onChange:e=>this.updateStateZ(s.Tools.ToRadians(e))})]})]})}}Lr.defaultProps={step:.001};class Br extends a.Component{constructor(e){super(e),this._localChange=!1;const t=this.getCurrentValue();this.state={isExpanded:!1,value:t&&t.clone?t.clone():s.Vector4.Zero()}}getCurrentValue(){return this.props.value||this.props.target[this.props.propertyName]}shouldComponentUpdate(e,t){const n=e.value||e.target[e.propertyName];return!(n.equals(t.value)&&!this._localChange||(t.value=n.clone(),this._localChange=!1,0))}switchExpandState(){this._localChange=!0,this.setState({isExpanded:!this.state.isExpanded})}raiseOnPropertyChanged(e){this.props.onChange&&this.props.onChange(this.state.value),this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName||"",value:this.state.value,initialValue:e})}updateVector4(){const e=this.getCurrentValue().clone();this.props.value?this.props.value.copyFrom(this.state.value):this.props.target[this.props.propertyName]=this.state.value,this.setState({value:e}),this.raiseOnPropertyChanged(e)}updateStateX(e){this._localChange=!0,this.state.value.x=e,this.updateVector4()}updateStateY(e){this._localChange=!0,this.state.value.y=e,this.updateVector4()}updateStateZ(e){this._localChange=!0,this.state.value.z=e,this.updateVector4()}updateStateW(e){this._localChange=!0,this.state.value.w=e,this.updateVector4()}render(){const e=this.state.isExpanded?(0,l.jsx)(fr,{icon:mr}):(0,l.jsx)(fr,{icon:Cr});return(0,l.jsxs)("div",{className:"vector3Line",children:[(0,l.jsxs)("div",{className:"firstLine",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label}),(0,l.jsx)("div",{className:"vector",children:`X: ${this.state.value.x.toFixed(2)}, Y: ${this.state.value.y.toFixed(2)}, Z: ${this.state.value.z.toFixed(2)}, W: ${this.state.value.w.toFixed(2)}`}),(0,l.jsx)("div",{className:"expand hoverIcon",onClick:()=>this.switchExpandState(),title:"Expand",children:e})]}),(0,l.jsxs)("div",{className:"secondLine",children:[(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"x",step:this.props.step,value:this.state.value.x,onChange:e=>this.updateStateX(e)}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"y",step:this.props.step,value:this.state.value.y,onChange:e=>this.updateStateY(e)}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"z",step:this.props.step,value:this.state.value.z,onChange:e=>this.updateStateZ(e)}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"w",step:this.props.step,value:this.state.value.w,onChange:e=>this.updateStateW(e)})]})]})}}Br.defaultProps={step:.001};class Dr extends a.Component{constructor(e){super(e)}updateValue(e){if(/[^0-9.-]/g.test(e))return;let t=parseInt(e);isNaN(t)||(null!=this.props.max&&t>this.props.max&&(t=this.props.max),null!=this.props.min&&t<this.props.min&&(t=this.props.min),this.props.onChange(t))}lock(){this.props.lockObject&&(this.props.lockObject.lock=!0)}unlock(){this.props.lockObject&&(this.props.lockObject.lock=!1)}render(){return(0,l.jsxs)("div",{className:"color-picker-component",children:[(0,l.jsx)("div",{className:"color-picker-component-value",children:(0,l.jsx)("input",{type:"number",step:1,className:"numeric-input",value:this.props.value,onBlur:()=>this.unlock(),onFocus:()=>this.lock(),onChange:e=>this.updateValue(e.target.value),disabled:this.props.disabled})}),(0,l.jsx)("div",{className:"color-picker-component-label",children:this.props.label})]})}}class Ir extends a.Component{constructor(e){super(e),this.state={hex:this.props.value.replace("#","")}}shouldComponentUpdate(e,t){return e.value!==this.props.value&&(t.hex=e.value.replace("#","")),!0}lock(){this.props.lockObject&&(this.props.lockObject.lock=!0)}unlock(){this.props.lockObject&&(this.props.lockObject.lock=!1)}updateHexValue(e){if(""==e||0!=/^[0-9A-Fa-f]+$/g.test(e)){if(this.setState({hex:e}),e.length!==this.props.expectedLength)if(8===this.props.expectedLength&&6===e.length)e+="FF";else{if(6!==this.props.expectedLength||8!==e.length)return;e=e.substring(0,6)}this.props.onChange("#"+e)}}render(){return(0,l.jsx)("input",{type:"string",className:"hex-input",value:this.state.hex,onBlur:()=>this.unlock(),onFocus:()=>this.lock(),onChange:e=>this.updateHexValue(e.target.value)})}}var jr=r(5228),Er={};Er.styleTagTransform=v(),Er.setAttributes=g(),Er.insert=A().bind(null,"head"),Er.domAPI=p(),Er.insertStyleElement=C(),u()(jr.A,Er),jr.A&&jr.A.locals&&jr.A.locals;class Tr extends a.Component{constructor(e){super(e),this.props.color instanceof s.Color4?this.state={color:new s.Color3(this.props.color.r,this.props.color.g,this.props.color.b),alpha:this.props.color.a}:this.state={color:this.props.color.clone(),alpha:1},this._saturationRef=a.createRef(),this._hueRef=a.createRef()}shouldComponentUpdate(e,t){return e.color.toHexString()!==this.props.color.toHexString()||t.color.toHexString()!==this.props.color.toHexString()}onSaturationPointerDown(e){this._evaluateSaturation(e),this._isSaturationPointerDown=!0,e.currentTarget.setPointerCapture(e.pointerId)}onSaturationPointerUp(e){this._isSaturationPointerDown=!1,e.currentTarget.releasePointerCapture(e.pointerId)}onSaturationPointerMove(e){this._isSaturationPointerDown&&this._evaluateSaturation(e)}onHuePointerDown(e){this._evaluateHue(e),this._isHuePointerDown=!0,e.currentTarget.setPointerCapture(e.pointerId)}onHuePointerUp(e){this._isHuePointerDown=!1,e.currentTarget.releasePointerCapture(e.pointerId)}onHuePointerMove(e){this._isHuePointerDown&&this._evaluateHue(e)}_evaluateSaturation(e){const t=e.nativeEvent.offsetX,n=e.nativeEvent.offsetY,r=Math.min(1,Math.max(1e-4,t/this._saturationRef.current.clientWidth)),o=Math.min(1,Math.max(1e-4,1-n/this._saturationRef.current.clientHeight));this.props.debugMode&&(s.Logger.Log("Saturation: "+r),s.Logger.Log("Value: "+o));const a=this.state.color.toHSV();s.Color3.HSVtoRGBToRef(a.r,r,o,this.state.color),0===this.state.alpha&&this.setState({alpha:1}),this.setState({color:this.state.color})}_evaluateHue(e){const t=e.nativeEvent.offsetX,n=360*Math.min(.9999,Math.max(1e-4,t/this._hueRef.current.clientWidth));this.props.debugMode&&s.Logger.Log("Hue: "+n);const r=this.state.color.toHSV();s.Color3.HSVtoRGBToRef(n,Math.max(r.g,.01),Math.max(r.b,.01),this.state.color),this.setState({color:this.state.color})}componentDidUpdate(){this.raiseOnColorChanged()}raiseOnColorChanged(){if(this.props.onColorChanged)if(this.props.color instanceof s.Color4){const e=s.Color4.FromColor3(this.state.color,this.state.alpha);this.props.onColorChanged(e)}else this.props.onColorChanged(this.state.color.clone())}render(){const e=s.Color4.FromColor3(this.state.color);e.a=this.state.alpha;const t=e.toHexString(),n=this.state.color.toHSV(),r=new s.Color3;s.Color3.HSVtoRGBToRef(n.r,1,1,r);const o=r.toHexString(),a=this.props.color instanceof s.Color4;return(0,l.jsxs)("div",{className:"color-picker-container"+(this.props.linearhint?" with-hints":""),children:[(0,l.jsxs)("div",{className:"color-picker-saturation",onPointerMove:e=>this.onSaturationPointerMove(e),onPointerDown:e=>this.onSaturationPointerDown(e),onPointerUp:e=>this.onSaturationPointerUp(e),ref:this._saturationRef,style:{background:o},children:[(0,l.jsx)("div",{className:"color-picker-saturation-white"}),(0,l.jsx)("div",{className:"color-picker-saturation-black"}),(0,l.jsx)("div",{className:"color-picker-saturation-cursor",style:{top:-100*n.b+100+"%",left:100*n.g+"%"}})]}),(0,l.jsxs)("div",{className:"color-picker-hue",children:[(0,l.jsx)("div",{className:"color-picker-hue-color",style:{background:t}}),(0,l.jsx)("div",{className:"color-picker-hue-slider",ref:this._hueRef,onPointerMove:e=>this.onHuePointerMove(e),onPointerDown:e=>this.onHuePointerDown(e),onPointerUp:e=>this.onHuePointerUp(e),children:(0,l.jsx)("div",{className:"color-picker-hue-cursor",style:{left:n.r/360*100+"%",border:"1px solid "+o}})})]}),(0,l.jsx)("div",{className:"color-picker-alpha"}),(0,l.jsxs)("div",{className:"color-picker-rgb",children:[(0,l.jsx)("div",{className:"red",children:(0,l.jsx)(Dr,{lockObject:this.props.lockObject,label:"R",min:0,max:255,value:Math.round(255*this.state.color.r),onChange:e=>{this.state.color.r=e/255,this.forceUpdate()}})}),(0,l.jsx)("div",{className:"green",children:(0,l.jsx)(Dr,{lockObject:this.props.lockObject,label:"G",min:0,max:255,value:Math.round(255*this.state.color.g),onChange:e=>{this.state.color.g=e/255,this.forceUpdate()}})}),(0,l.jsx)("div",{className:"blue",children:(0,l.jsx)(Dr,{lockObject:this.props.lockObject,label:"B",min:0,max:255,value:Math.round(255*this.state.color.b),onChange:e=>{this.state.color.b=e/255,this.forceUpdate()}})}),(0,l.jsx)("div",{className:"alpha"+(a?"":" grayed"),children:(0,l.jsx)(Dr,{lockObject:this.props.lockObject,label:"A",min:0,max:255,value:Math.round(255*this.state.alpha),onChange:e=>{this.setState({alpha:e/255}),this.forceUpdate()}})})]}),(0,l.jsxs)("div",{className:"color-picker-hex",children:[(0,l.jsx)("div",{className:"color-picker-hex-label",children:"Hex"}),(0,l.jsx)("div",{className:"color-picker-hex-value",children:(0,l.jsx)(Ir,{lockObject:this.props.lockObject,expectedLength:a?8:6,value:t,onChange:e=>{if(a){const t=s.Color4.FromHexString(e);this.setState({color:new s.Color3(t.r,t.g,t.b),alpha:t.a})}else this.setState({color:s.Color3.FromHexString(e)})}})})]}),this.props.linearhint&&(0,l.jsx)("div",{className:"color-picker-warning",children:"(Note: color is stored in linear mode and was converted to gamma to be displayed here (toGammaSpace() / toLinearSpace()))"})]})}}class Or extends a.Component{constructor(e){super(e),this.state={pickerEnabled:!1,color:this.props.value,hex:this.getHexString(e)},this._floatRef=a.createRef(),this._floatHostRef=a.createRef()}syncPositions(){const e=this._floatRef.current,t=this._floatHostRef.current;if(!e||!t)return;let n=t.getBoundingClientRect().top;const r=e.getBoundingClientRect().height;n+r+10>window.innerHeight&&(n=window.innerHeight-r-10),e.style.top=n+"px",this.props.shouldPopRight?e.style.left=t.getBoundingClientRect().left+"px":e.style.left=t.getBoundingClientRect().left-e.getBoundingClientRect().width+"px"}shouldComponentUpdate(e,t){const n=this.getHexString(e)!==this.getHexString();return n&&(t.color=e.value,t.hex=this.getHexString(e)),n||t.hex!==this.state.hex||t.pickerEnabled!==this.state.pickerEnabled}getHexString(e=this.props){return e.value.toHexString()}componentDidUpdate(){this.syncPositions()}componentDidMount(){this.syncPositions()}render(){return(0,l.jsxs)("div",{className:"color-picker",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsx)("div",{className:"color-rect-background",ref:this._floatHostRef,onClick:()=>this.setState({pickerEnabled:!0}),children:(0,l.jsx)("div",{className:"color-rect",style:{background:this.state.hex}})}),this.state.pickerEnabled&&(0,l.jsx)(l.Fragment,{children:(0,l.jsx)("div",{className:"color-picker-cover",onClick:e=>{e.target===this._floatRef.current?.ownerDocument?.querySelector(".color-picker-cover")&&this.setState({pickerEnabled:!1})},children:(0,l.jsx)("div",{className:"color-picker-float",ref:this._floatRef,children:(0,l.jsx)(Tr,{lockObject:this.props.lockObject||{},color:this.state.color,linearhint:this.props.linearHint,onColorChanged:e=>{const t=e.toHexString();this.setState({hex:t,color:e}),this.props.onColorChanged(t)}})})})})]})}}const Pr=new s.Color4(0,0,0,0);class zr extends a.Component{constructor(e){super(e),this.state={isExpanded:!1,color:this.getValue()},this.props.target._isLinearColor=e.isLinear}shouldComponentUpdate(e,t){const n=t.color,r=this.getValue(e);return n!==this.state.color?(t.color=n,!0):r!==this.state.color?(t.color=r,!0):t.isExpanded!==this.state.isExpanded}getValue(e=this.props){const t=e.target[e.propertyName];return t?"string"==typeof t?t===Mr?Pr:this._convertToColor(t):e.isLinear?t.toGammaSpace():t.clone():Pr}setColorFromString(e){const t=this._convertToColor(e);this.setColor(t)}setColor(e){this.setState({color:e.clone()}),this.props.isLinear&&e.toLinearSpaceToRef(e);const t=this.props.disableAlpha?this._toColor3(e):e,n=this.props.target,r=n[this.props.propertyName],o="string"==typeof n[this.props.propertyName]?t.toHexString():t;n[this.props.propertyName]=o,this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:n,property:this.props.propertyName,value:o,initialValue:r}),this.props.onChange&&this.props.onChange()}switchExpandState(){this.setState({isExpanded:!this.state.isExpanded})}updateStateR(e){this.setColor(new s.Color4(e,this.state.color.g,this.state.color.b,this.state.color.a))}updateStateG(e){this.setColor(new s.Color4(this.state.color.r,e,this.state.color.b,this.state.color.a))}updateStateB(e){this.setColor(new s.Color4(this.state.color.r,this.state.color.g,e,this.state.color.a))}updateStateA(e){this.props.disableAlpha||this.setColor(new s.Color4(this.state.color.r,this.state.color.g,this.state.color.b,e))}_convertToColor(e){if(""===e||"transparent"===e)return Pr;if("#"!==e.substring(0,1)||7!==e.length&&9!==e.length){const t=document.createElement("div");t.style.color=e,document.body.append(t);const n=window.getComputedStyle(t).color;document.body.removeChild(t);const r=n.substring(4,n.length-1).replace(/ /g,"").split(","),o=r.length>3?parseInt(r[3])/255:1;return new s.Color4(parseInt(r[0])/255,parseInt(r[1])/255,parseInt(r[2])/255,o)}if(this.props.disableAlpha){const t=s.Color3.FromHexString(e);return new s.Color4(t.r,t.g,t.b,1)}return s.Color4.FromHexString(e)}_toColor3(e){return new s.Color3(e.r,e.g,e.b)}onCopyClick(){if(this.props&&this.props.target){const{className:e,babylonNamespace:t}=wr(this.props.target),n="globalThis.debugNode",r=this.props.propertyName,o=this.props.target[this.props.propertyName],a=this.state.color.toHexString();let i;i=o.a?"new "+t+"Color4("+o.r+", "+o.g+", "+o.b+", "+o.a+")":"new "+t+"Color3("+o.r+", "+o.g+", "+o.b+")",i+=";// (HEX : "+a,xr(n+"."+r+" = "+i+" , debugNode as "+t+e+")")}else xr("undefined")}render(){const e=this.state.isExpanded?(0,l.jsx)(fr,{icon:mr}):(0,l.jsx)(fr,{icon:Cr});return(0,l.jsxs)("div",{className:"color3Line",children:[(0,l.jsxs)("div",{className:"firstLine",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label}),(0,l.jsx)("div",{className:"color3",children:(0,l.jsx)(Or,{lockObject:this.props.lockObject,linearHint:this.props.isLinear,value:this.props.disableAlpha?this._toColor3(this.state.color):this.state.color,onColorChanged:e=>{this.setColorFromString(e)}})}),(0,l.jsx)("div",{className:"expand hoverIcon",onClick:()=>this.switchExpandState(),title:"Expand",children:e}),(0,l.jsx)("div",{className:"copy hoverIcon",onClick:()=>this.onCopyClick(),title:"Copy to clipboard",children:(0,l.jsx)("img",{src:Nr,alt:"Copy"})})]}),this.state.isExpanded&&(0,l.jsxs)("div",{className:"secondLine",children:[(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"r",labelTooltip:"Red",value:this.state.color.r,onChange:e=>this.updateStateR(e)}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"g",labelTooltip:"Green",value:this.state.color.g,onChange:e=>this.updateStateG(e)}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"b",labelTooltip:"Blue",value:this.state.color.b,onChange:e=>this.updateStateB(e)}),this.props.disableAlpha||(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"a",labelTooltip:"Alpha",value:this.state.color.a,onChange:e=>this.updateStateA(e)})]})]})}}class Rr extends a.Component{render(){const e=this.props;return(0,l.jsx)(zr,{disableAlpha:!0,...e})}}class Ur extends a.Component{render(){const e=this.props;return(0,l.jsx)(zr,{...e})}}class Fr extends a.Component{constructor(e){super(e)}processInputBlockUpdate(e){this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(e),e.isConstant&&this.props.globalState.stateManager.onRebuildRequiredObservable.notifyObservers()}renderInputBlock(e){switch(e.type){case s.NodeMaterialBlockConnectionPointTypes.Float:{const t=isNaN(e.min)||isNaN(e.max)||e.min===e.max;return(0,l.jsxs)("div",{children:[e.isBoolean&&(0,l.jsx)(Z,{label:e.name,target:e,propertyName:"value",onValueChanged:()=>{this.processInputBlockUpdate(e)}},e.uniqueId),!e.isBoolean&&t&&(0,l.jsx)(_r,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId),!e.isBoolean&&!t&&(0,l.jsx)(Sr,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",step:(e.max-e.min)/100,minimum:e.min,maximum:e.max,onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId)]},e.uniqueId)}case s.NodeMaterialBlockConnectionPointTypes.Color3:return(0,l.jsx)(Rr,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Color4:return(0,l.jsx)(Ur,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Vector2:return(0,l.jsx)(br,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Vector3:return(0,l.jsx)(Lr,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Vector4:return(0,l.jsx)(Br,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId)}return null}render(){return(0,l.jsx)(O,{title:"INPUTS",children:this.props.inputs.map((e=>e.isUniform&&!e.isSystemValue&&e.name?this.renderInputBlock(e):null))})}}let Yr=-1;class Vr extends a.Component{constructor(e){super(e),this._localChange=!1;const t=this.props.numeric?"0":"";this.state={value:(void 0!==this.props.value?this.props.value:this.props.target[this.props.propertyName])||t,dragging:!1}}componentWillUnmount(){this.props.lockObject&&(this.props.lockObject.lock=!1)}shouldComponentUpdate(e,t){if(this._localChange)return this._localChange=!1,!0;const n=void 0!==e.value?e.value:e.target[e.propertyName];return n!==t.value?(t.value=n||"",!0):t.dragging!=this.state.dragging||e.unit!==this.props.unit}raiseOnPropertyChanged(e,t){this.props.onChange?this.props.onChange(e):this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:e,initialValue:t})}getCurrentNumericValue(e){const t=parseFloat(e);if(!isNaN(t))return t;if(void 0!==this.props.placeholder){const e=parseFloat(this.props.placeholder);if(!isNaN(e))return e}return 0}updateValue(e,t){if(this.props.disabled)return;if(this.props.numbersOnly){if(/[^0-9.px%-]/g.test(e))return;e||(e="0"),0===e.search(/0+[0-9-]/g)&&(e=e.substring(1))}if(this.props.numeric){let t=this.getCurrentNumericValue(e);this.props.roundValues&&(t=Math.round(t)),void 0!==this.props.min&&(t=Math.max(this.props.min,t)),void 0!==this.props.max&&(t=Math.min(this.props.max,t)),e=t.toString()}this._localChange=!0;const n=void 0!==this.props.value?this.props.value:this.props.target[this.props.propertyName];this.props.validator&&t&&0==this.props.validator(t)&&(e=n),this.setState({value:e}),this.props.propertyName&&!this.props.delayInput&&(this.props.target[this.props.propertyName]=e),this.props.throttlePropertyChangedNotification?(Yr>=0&&window.clearTimeout(Yr),Yr=window.setTimeout((()=>{this.raiseOnPropertyChanged(e,n)}),this.props.throttlePropertyChangedNotificationDelay??200)):this.raiseOnPropertyChanged(e,n)}incrementValue(e){if(this.props.step&&(e*=this.props.step),this.props.arrowsIncrement)return void this.props.arrowsIncrement(e);const t=this.getCurrentNumericValue(this.state.value);this.updateValue((t+e).toFixed(2))}onKeyDown(e){!this.props.disabled&&this.props.arrows&&("ArrowUp"===e.key&&(this.incrementValue(1),e.preventDefault()),"ArrowDown"===e.key&&(this.incrementValue(-1),e.preventDefault()))}render(){const e=this.state.value===Mr?"":this.state.value,t=this.state.value===Mr?Mr:this.props.placeholder||"",n=this.props.step||(this.props.roundValues?1:.01),r=this.props.multilines?"textInputArea":void 0!==this.props.unit?"textInputLine withUnits":"textInputLine";return(0,l.jsxs)("div",{className:r,children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,color:"black",className:"icon"}),void 0!==this.props.label&&(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label}),this.props.multilines&&(0,l.jsx)(l.Fragment,{children:(0,l.jsx)("textarea",{className:this.props.disabled?"disabled":"",value:this.state.value,onFocus:()=>{this.props.lockObject&&(this.props.lockObject.lock=!0)},onChange:e=>this.updateValue(e.target.value),onKeyDown:e=>{13===e.keyCode&&this.updateValue(this.state.value)},onBlur:e=>{this.updateValue(e.target.value,e.target.value),this.props.lockObject&&(this.props.lockObject.lock=!1)},disabled:this.props.disabled})}),!this.props.multilines&&(0,l.jsxs)("div",{className:`value${!0===this.props.noUnderline?" noUnderline":""}${this.props.arrows?" hasArrows":""}${this.state.dragging?" dragging":""}`,children:[(0,l.jsx)("input",{className:this.props.disabled?"disabled":"",value:e,onBlur:e=>{this.props.lockObject&&(this.props.lockObject.lock=!1),this.updateValue((void 0!==this.props.value?this.props.value:this.props.target[this.props.propertyName])||"",e.target.value)},onFocus:()=>{this.props.lockObject&&(this.props.lockObject.lock=!0)},onChange:e=>this.updateValue(e.target.value),onKeyDown:e=>this.onKeyDown(e),placeholder:t,type:this.props.numeric?"number":"text",step:n,disabled:this.props.disabled}),this.props.arrows&&(0,l.jsx)(kr,{incrementValue:e=>this.incrementValue(e),setDragging:e=>this.setState({dragging:e})})]}),this.props.unit]})}}class Gr extends a.Component{constructor(e){super(e)}render(){return(0,l.jsxs)("div",{className:"buttonLine"+(this.props.isDisabled?" disabled":""),children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsx)("button",{onClick:()=>this.props.onClick(),children:this.props.label})]})}}class Wr extends a.Component{constructor(e){super(e)}componentDidMount(){this._onFrameExpandStateChangedObserver=this.props.frame.onExpandStateChanged.add((()=>this.forceUpdate()))}componentWillUnmount(){this._onFrameExpandStateChangedObserver&&(this.props.frame.onExpandStateChanged.remove(this._onFrameExpandStateChangedObserver),this._onFrameExpandStateChangedObserver=null)}render(){let e=[];return this.props.frame.nodes.forEach((t=>{const n=t.content.data;n.isInput&&n.visibleOnFrame&&e.push(n)})),e=e.sort(((e,t)=>e.name.localeCompare(t.name))),(0,l.jsxs)("div",{id:"propertyTab",children:[(0,l.jsxs)("div",{id:"header",children:[(0,l.jsx)("img",{id:"logo",src:"https://www.babylonjs.com/Assets/logo-babylonjs-social-twitter.png"}),(0,l.jsx)("div",{id:"title",children:"NODE MATERIAL EDITOR"})]}),(0,l.jsxs)("div",{children:[(0,l.jsxs)(O,{title:"GENERAL",children:[(0,l.jsx)(Vr,{label:"Name",propertyName:"name",lockObject:this.props.globalState.lockObject,target:this.props.frame}),(0,l.jsx)(Rr,{lockObject:this.props.globalState.lockObject,label:"Color",target:this.props.frame,propertyName:"color"}),(0,l.jsx)(Vr,{lockObject:this.props.globalState.lockObject,label:"Comments",propertyName:"comments",target:this.props.frame}),!this.props.frame.isCollapsed&&(0,l.jsx)(Gr,{label:"Collapse",onClick:()=>{this.props.frame.isCollapsed=!0}}),this.props.frame.isCollapsed&&(0,l.jsx)(Gr,{label:"Expand",onClick:()=>{this.props.frame.isCollapsed=!1}}),(0,l.jsx)(Gr,{label:"Export",onClick:()=>{this.props.frame.export()}})]}),(0,l.jsx)(Fr,{lockObject:this.props.globalState.lockObject,globalState:this.props.globalState,inputs:e})]})]})}}var Hr=r(1910),Qr={};Qr.styleTagTransform=v(),Qr.setAttributes=g(),Qr.insert=A().bind(null,"head"),Qr.domAPI=p(),Qr.insertStyleElement=C(),u()(Hr.A,Qr);const Zr=Hr.A&&Hr.A.locals?Hr.A.locals:void 0;var qr=r(7936),Xr={};Xr.styleTagTransform=v(),Xr.setAttributes=g(),Xr.insert=A().bind(null,"head"),Xr.domAPI=p(),Xr.insertStyleElement=C(),u()(qr.A,Xr);const Jr=qr.A&&qr.A.locals?qr.A.locals:void 0;class Kr{get element(){return this.delegatedPort?this.delegatedPort.element:this._element}get container(){return this.delegatedPort?this.delegatedPort.container:this._portContainer}get portName(){return this.portData.name}set portName(e){this._portLabelElement&&(this.portData.updateDisplayName(e),this._portLabelElement.innerHTML=e)}get disabled(){if(!this.portData.isConnected)return!1;if(this._isConnectedToNodeOutsideOfFrame())return!0;{const e=this.node.getLinksForPortData(this.portData);if(e.length&&e[0].nodeB===this.node)return!0}return!1}hasLabel(){return!!this._portLabelElement}get exposedOnFrame(){return!(!this.portData.isExposedOnFrame&&!this._isConnectedToNodeOutsideOfFrame())}set exposedOnFrame(e){this.disabled||(this.portData.isExposedOnFrame=e)}get exposedPortPosition(){return this.portData.exposedPortPosition}set exposedPortPosition(e){this.portData.exposedPortPosition=e}_isConnectedToNodeOutsideOfFrame(){const e=this.node.getLinksForPortData(this.portData);if(e.length)for(let t=0;t<e.length;t++)if(e[t].nodeA.enclosingFrameId!==e[t].nodeB.enclosingFrameId)return!0;return!1}refresh(){this._stateManager.applyNodePortDesign(this.portData,this._element,this._img,this._pip)}constructor(e,t,n,r){this.portData=t,this.node=n,this.delegatedPort=null,this._portContainer=e,this._element=e.ownerDocument.createElement("div"),this._element.classList.add(Zr.port),e.appendChild(this._element),this._stateManager=r,this._img=e.ownerDocument.createElement("img"),this._element.appendChild(this._img),this._pip=e.ownerDocument.createElement("div"),this._pip.classList.add(Jr.pip),this._pip.style.display="none",this._element.appendChild(this._pip),e.children[0].className===Zr["port-label"]&&(this._portLabelElement=e.children[0]),this._element.port=this,this._element.ondragstart=()=>!1,this._onCandidateLinkMovedObserver=r.onCandidateLinkMoved.add((e=>{const t=this._element.getBoundingClientRect();!e||t.left>e.x||t.right<e.x||t.top>e.y||t.bottom<e.y?this._element.classList.remove(Jr.selected):(this._element.classList.add(Jr.selected),this._stateManager.onCandidatePortSelectedObservable.notifyObservers(this))})),this._onSelectionChangedObserver=this._stateManager.onSelectionChangedObservable.add((e=>{const{selection:t}=e||{};t===this?this._img.classList.add(Jr.selected):this._img.classList.remove(Jr.selected)})),this.refresh()}dispose(){this._stateManager.onCandidateLinkMoved.remove(this._onCandidateLinkMovedObserver),this._onSelectionChangedObserver&&this._stateManager.onSelectionChangedObservable.remove(this._onSelectionChangedObserver)}static CreatePortElement(e,t,n,r,o){const a=n.ownerDocument.createElement("div");if(a.classList.add(Zr.portLine),n.appendChild(a),!r||r.shouldDisplayPortLabels(e)){const t=n.ownerDocument.createElement("div");t.classList.add(Zr["port-label"]),t.innerHTML=e.name,a.appendChild(t)}return new Kr(a,e,t,o)}}const $r=e=>!!e&&void 0!==e.port,eo=(e,t,n,r)=>{e.refresh();const o=e.links;t&&o.forEach((e=>{const r=e.nodeA,o=e.nodeB;t.has(r)||(t.add(r),eo(r,t,n)),o&&!t.has(o)&&(t.add(o),eo(o,t,n))}));const a=e.content.invisibleEndpoints;if(a&&a.length)for(const e of a){const o=r?.findNodeFromData(e);o&&(t&&t.add(o),eo(o,t,n))}n&&o.forEach((e=>{n.has(e)||(n.add(e),e.update())}))};class to extends Kr{get parentFrameId(){return this._parentFrameId}get onFramePortPositionChangedObservable(){return this._onFramePortPositionChangedObservable}get isInput(){return this._isInput}get framePortId(){return this._framePortId}get framePortPosition(){return this._framePortPosition}set framePortPosition(e){this._framePortPosition=e,this.onFramePortPositionChangedObservable.notifyObservers(this)}constructor(e,t,n,r,o,a,i){super(e,t,n,r),this.portData=t,this.node=n,this._onFramePortPositionChangedObservable=new s.Observable,this._parentFrameId=i,this._isInput=o,this._framePortId=a,this._onSelectionChangedObserver=r.onSelectionChangedObservable.add((e=>{const{selection:t}=e||{};$r(t)&&t.port===this?this._img.classList.add(Zr.selected):this._img.classList.remove(Zr.selected)})),this.refresh()}static CreateFrameNodePortElement(e,t,n,r,o,a,i,s){const l=n.ownerDocument.createElement("div");if(l.classList.add(Zr.portLine),null!==i&&(l.dataset.framePortId=`${i}`),n.appendChild(l),!r||r.shouldDisplayPortLabels(e)){const t=n.ownerDocument.createElement("div");t.classList.add(Zr["port-label"]),t.innerHTML=e.name,l.appendChild(t)}return new to(l,e,t,o,a,i,s)}}var no=r(9750),ro={};ro.styleTagTransform=v(),ro.setAttributes=g(),ro.insert=A().bind(null,"head"),ro.domAPI=p(),ro.insertStyleElement=C(),u()(no.A,ro);const oo=no.A&&no.A.locals?no.A.locals:void 0;function ao(e,t){let n="";for(const r in e)e[r]&&(n+=t[r]+" ");return n}var io,so;!function(e){e[e.Right=0]="Right",e[e.Left=1]="Left",e[e.Top=2]="Top",e[e.Bottom=3]="Bottom",e[e.TopRight=4]="TopRight",e[e.TopLeft=5]="TopLeft",e[e.BottomRight=6]="BottomRight",e[e.BottomLeft=7]="BottomLeft"}(io||(io={})),function(e){e[e.Top=0]="Top",e[e.Middle=1]="Middle",e[e.Bottom=2]="Bottom"}(so||(so={}));class lo{get id(){return this._id}get isCollapsed(){return this._isCollapsed}_createInputPort(e,t){const n=to.CreateFrameNodePortElement(e.portData,t,this._inputPortContainer,null,this._ownerCanvas.stateManager,!0,lo._FramePortCounter++,this.id);this._frameInPorts.push(n),e.delegatedPort=n,this._controlledPorts.push(e),e.exposedPortPosition=this._exposedInPorts.findIndex((t=>t===e)),e.exposedPortPosition<0&&(this._exposedInPorts.push(e),e.exposedPortPosition=this._exposedInPorts.length-1)}_markFramePortPositions(){if(2==this._frameInPorts.length)this._frameInPorts[0].framePortPosition=so.Top,this._frameInPorts[1].framePortPosition=so.Bottom;else for(let e=0;e<this._frameInPorts.length;e++){const t=this._frameInPorts[e];0===e?t.framePortPosition=so.Top:e===this._frameInPorts.length-1?t.framePortPosition=so.Bottom:t.framePortPosition=so.Middle}if(2==this._frameOutPorts.length)this._frameOutPorts[0].framePortPosition=so.Top,this._frameOutPorts[1].framePortPosition=so.Bottom;else for(let e=0;e<this._frameOutPorts.length;e++){const t=this._frameOutPorts[e];0===e?t.framePortPosition=so.Top:e===this._frameInPorts.length-1?t.framePortPosition=so.Bottom:t.framePortPosition=so.Middle}}_createFramePorts(){for(const e of this._nodes)e.isVisible=!1;for(let e=0;e<this._exposedOutPorts.length;){const t=this._exposedOutPorts[e];if(t)if(null===t.node||t.node.enclosingFrameId!=this.id){if(this._removePortFromExposedWithNode(t,this._exposedOutPorts))continue}else if(!this._createOutputPorts(t,t.node)&&this._removePortFromExposedWithNode(t,this._exposedOutPorts))continue;++e}for(let e=0;e<this._exposedInPorts.length;){const t=this._exposedInPorts[e];if(t&&null!==t.node&&t.node.enclosingFrameId==this.id){if(!this._createInputPorts(t,t.node)&&this._removePortFromExposedWithNode(t,this._exposedInPorts))continue}else if(this._removePortFromExposedWithNode(t,this._exposedInPorts))continue;++e}for(const e of this._nodes){for(const t of e.outputPorts)t.exposedPortPosition=this._exposedOutPorts.findIndex((e=>e===t)),t.exposedPortPosition<0&&this._createOutputPorts(t,e)&&(t.node.enclosingFrameId=this.id,this._exposedOutPorts.push(t),t.exposedPortPosition=this._exposedOutPorts.length-1);for(const t of e.inputPorts)t.exposedPortPosition=this._exposedInPorts.findIndex((e=>e===t)),t.exposedPortPosition<0&&this._createInputPorts(t,e)}}_removePortFromExposedWithNode(e,t){const n=t.findIndex((t=>t===e));return n>=0&&(t.splice(n,1),e&&(e.exposedPortPosition=-1),!0)}_removePortFromExposedWithLink(e,t){const n=t.findIndex((t=>t===e.portA)),r=t.findIndex((t=>t===e.portB));if(n>=0){if(!e.portA.exposedOnFrame)return t.splice(n,1),e.portA.exposedPortPosition=-1,!0}else if(r>=0&&e.portB&&!e.portB.exposedOnFrame)return t.splice(r,1),e.portB.exposedPortPosition=-1,!0;return!1}_createInputPorts(e,t){if(e.portData.isConnected){let n=!1;for(const r of t.links)if(r.portB===e&&-1===this.nodes.indexOf(r.nodeA)){this._createInputPort(e,t),r.isVisible=!0,n=!0;const o=r.onDisposedObservable.add((e=>{this._removePortFromExposedWithLink(e,this._exposedInPorts)&&this.redrawFramePorts()}));this._onNodeLinkDisposedObservers.push(o)}if(n)return!0}else if(e.exposedOnFrame)return this._createInputPort(e,t),!0;return!1}_createOutputPorts(e,t){if(e.portData.hasEndpoints){let n=!1;for(const r of t.links)if(r.portA===e&&-1===this.nodes.indexOf(r.nodeB)){let t;if(n)-1===this.nodes.indexOf(r.nodeB)?(r.isVisible=!0,t=this.ports.filter((t=>t.portData===e.portData))[0]):t=this.ports.filter((t=>t.portData===e.portData))[0];else{n=!0,t=to.CreateFrameNodePortElement(e.portData,r.nodeA,this._outputPortContainer,null,this._ownerCanvas.stateManager,!1,lo._FramePortCounter++,this.id),this._frameOutPorts.push(t),r.isVisible=!0;const o=r.onDisposedObservable.add((e=>{this._removePortFromExposedWithLink(e,this._exposedOutPorts)&&this.redrawFramePorts()}));this._onNodeLinkDisposedObservers.push(o)}e.delegatedPort=t,this._controlledPorts.push(e)}else if(e.exposedPortPosition>=0&&!n){const r=to.CreateFrameNodePortElement(e.portData,t,this._outputPortContainer,null,this._ownerCanvas.stateManager,!1,lo._FramePortCounter++,this.id);this._frameOutPorts.push(r),e.delegatedPort=r,this._controlledPorts.push(e),n=!0}if(n)return!0}else if(e.exposedOnFrame){const n=to.CreateFrameNodePortElement(e.portData,t,this._outputPortContainer,null,this._ownerCanvas.stateManager,!1,lo._FramePortCounter++,this.id);return this._frameOutPorts.push(n),e.delegatedPort=n,this._controlledPorts.push(e),!0}return!1}redrawFramePorts(){this.isCollapsed&&(this._outputPortContainer.innerHTML="",this._inputPortContainer.innerHTML="",this.ports.forEach((e=>{e.dispose()})),this._controlledPorts.forEach((e=>{e.delegatedPort=null,e.refresh()})),this._frameInPorts=[],this._frameOutPorts=[],this._controlledPorts=[],this._createFramePorts(),this._markFramePortPositions(),this.ports.forEach((e=>e.node._refreshLinks())))}set isCollapsed(e){if(this._isCollapsed!==e){if(this._isCollapsed=e,this._ownerCanvas._frameIsMoving=!0,e)this.element.classList.add(oo.collapsed),this.element.classList.remove(oo.expanded),this._headerElement.classList.add(oo.collapsedHeader),this._moveFrame((this.width-this._collapsedWidth)/2,0),this._createFramePorts(),this._markFramePortPositions();else{this.element.classList.add(oo.expanded),this.element.classList.remove(oo.collapsed),this._headerElement.classList.remove(oo.collapsedHeader),this._outputPortContainer.innerHTML="",this._inputPortContainer.innerHTML="",this._frameInPorts.forEach((e=>{e.dispose()})),this._frameOutPorts.forEach((e=>{e.dispose()})),this._controlledPorts.forEach((e=>{e.delegatedPort=null,e.refresh()})),this._frameInPorts=[],this._frameOutPorts=[],this._controlledPorts=[],this._onNodeLinkDisposedObservers=[];for(const e of this._nodes)e.isVisible=!0;this._moveFrame(-(this.width-this._collapsedWidth)/2,0)}this.cleanAccumulation(),this._ownerCanvas._frameIsMoving=!1,this._isCollapsed?(this._headerCollapseElement.innerHTML=this._expandSVG,this._headerCollapseElement.title="Expand"):(this._headerCollapseElement.innerHTML=this._collapseSVG,this._headerCollapseElement.title="Collapse"),this.onExpandStateChanged.notifyObservers(this)}}get nodes(){return this._nodes}get ports(){return this._frameInPorts.concat(this._frameOutPorts)}get name(){return this._name}set name(e){this._name=e,this._headerTextElement.innerHTML=e}get color(){return this._color}set color(e){this._color=e,this._headerElement.style.background=`rgba(${255*e.r}, ${255*e.g}, ${255*e.b}, 1)`,this._headerElement.style.borderColor=`rgba(${255*e.r}, ${255*e.g}, ${255*e.b}, 1)`,this.element.style.background=`rgba(${255*e.r}, ${255*e.g}, ${255*e.b}, 0.7)`}get x(){return this._x}set x(e){this._x!==e&&(this._x=e,this._gridAlignedX=this._ownerCanvas.getGridPosition(e),this.element.style.left=`${this._gridAlignedX}px`)}get y(){return this._y}set y(e){this._y!==e&&(this._y=e,this._gridAlignedY=this._ownerCanvas.getGridPosition(e),this.element.style.top=`${this._gridAlignedY}px`)}get width(){return this._width}set width(e){if(this._width===e)return;const t=e>this._minFrameWidth?e:this._minFrameWidth;this._width=t;const n=this._ownerCanvas.getGridPositionCeil(t+this._gridAlignedX);this.element.style.width=n-this._gridAlignedX+"px"}get height(){return this._height}set height(e){if(this._height===e)return;this._height=e;const t=this._ownerCanvas.getGridPositionCeil(e+this._gridAlignedY);this.element.style.height=t-this._gridAlignedY+"px"}get comments(){return this._comments}set comments(e){e&&!this._comments&&e.length>0?(this.element.style.gridTemplateRows="40px min-content 1fr",this._borderElement.style.gridRow="1 / span 3",this._portContainer.style.gridRow="3",this._commentsElement.classList.add("has-comments")):e||(this.element.style.gridTemplateRows="40px calc(100% - 40px)",this._borderElement.style.gridRow="1 / span 2",this._portContainer.style.gridRow="2",this._commentsElement.classList.remove("has-comments")),(""===e||e&&e.length>=0)&&(this._commentsElement.children[0].innerText=e),this.height=this._borderElement.offsetHeight,this._comments=e,this._updateMinHeightWithComments()}constructor(e,t,n=!1){this._collapsedWidth=200,this._x=0,this._y=0,this._gridAlignedX=0,this._gridAlignedY=0,this._nodes=[],this._mouseStartPointX=null,this._mouseStartPointY=null,this._onNodeLinkDisposedObservers=[],this._isCollapsed=!1,this._frameInPorts=[],this._frameOutPorts=[],this._controlledPorts=[],this._exposedInPorts=[],this._exposedOutPorts=[],this._minFrameHeight=40,this._minFrameWidth=220,this.onExpandStateChanged=new s.Observable,this._closeSVG='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g id="Layer_2" data-name="Layer 2"><path d="M16,15l5.85,5.84-1,1L15,15.93,9.15,21.78l-1-1L14,15,8.19,9.12l1-1L15,14l5.84-5.84,1,1Z"/></g></svg>',this._expandSVG='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g id="Layer_2" data-name="Layer 2"><path d="M22.31,7.69V22.31H7.69V7.69ZM21.19,8.81H8.81V21.19H21.19Zm-6.75,6.75H11.06V14.44h3.38V11.06h1.12v3.38h3.38v1.12H15.56v3.38H14.44Z"/></g></svg>',this._collapseSVG='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g id="Layer_2" data-name="Layer 2"><path d="M22.31,7.69V22.31H7.69V7.69ZM21.19,8.81H8.81V21.19H21.19Zm-2.25,6.75H11.06V14.44h7.88Z"/></g></svg>',this._focusSVG='<svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M6.24992 4.5C5.28344 4.5 4.49996 5.2835 4.49996 6.25V17.75C4.49996 18.7165 5.28344 19.5 6.24992 19.5H17.7496C18.7161 19.5 19.4996 18.7165 19.4996 17.75V13.75C19.4996 13.3358 19.8354 13 20.2496 13C20.6638 13 20.9995 13.3358 20.9995 13.75V17.75C20.9995 19.5449 19.5445 21 17.7496 21H6.24992C4.45504 21 3 19.5449 3 17.75V6.25C3 4.45507 4.45504 3 6.24992 3H10.2498C10.664 3 10.9998 3.33579 10.9998 3.75C10.9998 4.16421 10.664 4.5 10.2498 4.5H6.24992ZM12.9997 3.75C12.9997 3.33579 13.3355 3 13.7497 3H20.25C20.6642 3 21 3.33579 21 3.75V10.25C21 10.6642 20.6642 11 20.25 11C19.8358 11 19.5 10.6642 19.5 10.25V5.56074L14.28 10.7804C13.9871 11.0732 13.5123 11.0732 13.2194 10.7803C12.9265 10.4874 12.9265 10.0125 13.2194 9.71964L18.4395 4.5H13.7497C13.3355 4.5 12.9997 4.16421 12.9997 3.75Z" /></svg>',this._isFocused=!1,this._initResizing=e=>{e.stopPropagation(),this._mouseStartPointX=e.clientX,this._mouseStartPointY=e.clientY,this._frameIsResizing=!0},this._cleanUpResizing=e=>{e.stopPropagation(),this._frameIsResizing=!1,this._resizingDirection=null,this._mouseStartPointX=null,this._mouseStartPointY=null,this._mouseXLimit=null,this.refresh()},this._updateMinHeightWithComments=()=>{if(this.comments&&this.comments.length>0){const e=this._commentsElement.offsetHeight+40;this._minFrameHeight=e}},this._onRightHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.Right,this._mouseXLimit=e.clientX-(this.width-this._minFrameWidth),this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onRightHandlePointerUp),this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onRightHandlePointerMove))},this._onRightHandlePointerMove=e=>{const t=(this.element.offsetWidth-this._minFrameWidth)*this._ownerCanvas.zoom,n=this._mouseStartPointX-t;this._moveRightHandle(e,n)},this._moveRightHandle=(e,t)=>{if(this._mouseXLimit){if(!this._isResizingRight()||null===this._mouseStartPointX||null===this._mouseStartPointY||e.clientX<t)return;if(this._isResizingRight()){e.stopPropagation();const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandRight(t,e.clientX),this._mouseStartPointX=e.clientX}}},this._onRightHandlePointerUp=e=>{this._isResizingRight()&&(this.width=parseFloat(this.element.style.width.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onRightHandlePointerUp),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onRightHandlePointerMove),this._cleanUpResizing(e))},this._onBottomHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.Bottom,this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onBottomHandlePointerMove),this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onBottomHandlePointerUp))},this._onBottomHandlePointerMove=e=>{const t=(this.element.offsetHeight-this._minFrameHeight)*this._ownerCanvas.zoom,n=this._mouseStartPointY-t;this._moveBottomHandle(e,n)},this._moveBottomHandle=(e,t)=>{if(!(this._resizingDirection!==io.Bottom||null===this._mouseStartPointX||null===this._mouseStartPointY||e.clientY<t)&&this._resizingDirection===io.Bottom){e.stopPropagation();const t=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandBottom(t),this._mouseStartPointY=e.clientY}},this._onBottomHandlePointerUp=e=>{this._resizingDirection===io.Bottom&&(this.height=parseFloat(this.element.style.height.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onBottomHandlePointerMove),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onBottomHandlePointerUp),this._cleanUpResizing(e))},this._onLeftHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.Left,this._mouseXLimit=e.clientX+this.width-this._minFrameWidth,this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onLeftHandlePointerUp),this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onLeftHandlePointerMove))},this._onLeftHandlePointerMove=e=>{const t=(this.element.offsetWidth-this._minFrameWidth)*this._ownerCanvas.zoom,n=this._mouseStartPointX+t;this._moveLeftHandle(e,n)},this._moveLeftHandle=(e,t)=>{if(this._mouseXLimit){if(this._resizingDirection!==io.Left||null===this._mouseStartPointX||null===this._mouseStartPointY||e.clientX>t)return;if(this._resizingDirection===io.Left){e.stopPropagation();const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandLeft(t),this._mouseStartPointX=e.clientX}}},this._onLeftHandlePointerUp=e=>{this._resizingDirection===io.Left&&(this.x=parseFloat(this.element.style.left.replace("px","")),this.width=parseFloat(this.element.style.width.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onLeftHandlePointerUp),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onLeftHandlePointerMove),this._cleanUpResizing(e))},this._onTopHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.Top,this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onTopHandlePointerUp),this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onTopHandlePointerMove))},this._onTopHandlePointerMove=e=>{const t=(this.element.offsetHeight-this._minFrameHeight)*this._ownerCanvas.zoom,n=this._mouseStartPointY+t;this._moveTopHandle(e,n)},this._moveTopHandle=(e,t)=>{if(this._isResizingTop()&&null!==this._mouseStartPointX&&null!==this._mouseStartPointY&&!(e.clientY>t)&&this._isResizingTop()){e.stopPropagation();const t=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandTop(t),this._mouseStartPointY=e.clientY}},this._onTopHandlePointerUp=e=>{this._isResizingTop()&&(this.y=parseFloat(this.element.style.top.replace("px","")),this.height=parseFloat(this.element.style.height.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onTopHandlePointerUp),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onTopHandlePointerMove),this._cleanUpResizing(e))},this._onTopRightHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.TopRight,this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onTopRightHandlePointerUp),this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onTopRightHandlePointerMove))},this._onTopRightHandlePointerMove=e=>{const t=(this.element.offsetHeight-this._minFrameHeight)*this._ownerCanvas.zoom,n=this._mouseStartPointY+t,r=(this.element.offsetWidth-this._minFrameWidth)*this._ownerCanvas.zoom,o=this._mouseStartPointX-r;this._moveTopRightHandle(e,o,n)},this._moveTopRightHandle=(e,t,n)=>{if(this._isResizingTop()&&this._isResizingRight()&&null!==this._mouseStartPointX&&null!==this._mouseStartPointY&&this._isResizingRight()&&this._isResizingTop())if(e.stopPropagation(),e.clientY<n&&e.clientX>t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandRight(t,e.clientX),this._mouseStartPointX=e.clientX;const n=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandTop(n),this._mouseStartPointY=e.clientY}else if(e.clientY>n&&e.clientX>t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandRight(t,e.clientX),this._mouseStartPointX=e.clientX}else if(e.clientY<n&&e.clientX<t){const t=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandTop(t),this._mouseStartPointY=e.clientY}},this._onTopRightHandlePointerUp=e=>{e.stopPropagation(),this._resizingDirection===io.TopRight&&(this.y=parseFloat(this.element.style.top.replace("px","")),this.height=parseFloat(this.element.style.height.replace("px","")),this.width=parseFloat(this.element.style.width.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onTopRightHandlePointerUp),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onTopRightHandlePointerMove),this._cleanUpResizing(e))},this._onBottomRightHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.BottomRight,this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onBottomRightHandlePointerUp),this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onBottomRightHandlePointerMove))},this._onBottomRightHandlePointerMove=e=>{const t=(this.element.offsetHeight-this._minFrameHeight)*this._ownerCanvas.zoom,n=this._mouseStartPointY-t,r=(this.element.offsetWidth-this._minFrameWidth)*this._ownerCanvas.zoom,o=this._mouseStartPointX-r;this._moveBottomRightHandle(e,o,n)},this._moveBottomRightHandle=(e,t,n)=>{if(this._isResizingBottom()&&this._isResizingRight()&&null!==this._mouseStartPointX&&null!==this._mouseStartPointY&&this._isResizingRight()&&this._isResizingBottom())if(e.stopPropagation(),e.clientY>n&&e.clientX>t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandRight(t,e.clientX),this._mouseStartPointX=e.clientX;const n=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandBottom(n),this._mouseStartPointY=e.clientY}else if(e.clientY<n&&e.clientX>t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandRight(t,e.clientX),this._mouseStartPointX=e.clientX}else if(e.clientY>n&&e.clientX<t){const t=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandBottom(t),this._mouseStartPointY=e.clientY}},this._onBottomRightHandlePointerUp=e=>{this._resizingDirection===io.BottomRight&&(this.height=parseFloat(this.element.style.height.replace("px","")),this.width=parseFloat(this.element.style.width.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onBottomRightHandlePointerUp),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onBottomRightHandlePointerMove),this._cleanUpResizing(e))},this._onBottomLeftHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.BottomLeft,this._mouseXLimit=e.clientX+this.width-this._minFrameWidth,this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onBottomLeftHandlePointerUp),this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onBottomLeftHandlePointerMove))},this._onBottomLeftHandlePointerMove=e=>{const t=(this.element.offsetHeight-this._minFrameHeight)*this._ownerCanvas.zoom,n=this._mouseStartPointY-t,r=(this.element.offsetWidth-this._minFrameWidth)*this._ownerCanvas.zoom,o=this._mouseStartPointX+r;this._moveBottomLeftHandle(e,o,n)},this._moveBottomLeftHandle=(e,t,n)=>{if(this._isResizingBottom()&&this._isResizingLeft()&&null!==this._mouseStartPointX&&null!==this._mouseStartPointY&&this._isResizingLeft()&&this._isResizingBottom())if(e.stopPropagation(),e.clientY>n&&e.clientX<t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandLeft(t),this._mouseStartPointX=e.clientX;const n=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandBottom(n),this._mouseStartPointY=e.clientY}else if(e.clientY<n&&e.clientX<t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandLeft(t),this._mouseStartPointX=e.clientX}else if(e.clientY>n&&e.clientX>t){const t=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandBottom(t),this._mouseStartPointY=e.clientY}},this._onBottomLeftHandlePointerUp=e=>{e.stopPropagation(),this._resizingDirection===io.BottomLeft&&(this.height=parseFloat(this.element.style.height.replace("px","")),this.x=parseFloat(this.element.style.left.replace("px","")),this.width=parseFloat(this.element.style.width.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onBottomLeftHandlePointerUp),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onBottomLeftHandlePointerMove),this._cleanUpResizing(e))},this._onTopLeftHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.TopLeft,this._mouseXLimit=e.clientX+this.width-this._minFrameWidth,this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onTopLeftHandlePointerUp),this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onTopLeftHandlePointerMove))},this._onTopLeftHandlePointerMove=e=>{const t=(this.element.offsetHeight-this._minFrameHeight)*this._ownerCanvas.zoom,n=this._mouseStartPointY+t,r=(this.element.offsetWidth-this._minFrameWidth)*this._ownerCanvas.zoom,o=this._mouseStartPointX+r;this._moveTopLeftHandle(e,o,n)},this._moveTopLeftHandle=(e,t,n)=>{if(this._isResizingTop()&&this._isResizingLeft()&&null!==this._mouseStartPointX&&null!==this._mouseStartPointY&&this._isResizingLeft()&&this._isResizingTop())if(e.stopPropagation(),e.clientY<n&&e.clientX<t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandLeft(t),this._mouseStartPointX=e.clientX;const n=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandTop(n),this._mouseStartPointY=e.clientY}else if(e.clientY>n&&e.clientX<t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandLeft(t),this._mouseStartPointX=e.clientX}else if(e.clientY<n&&e.clientX>t){const t=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandTop(t),this._mouseStartPointY=e.clientY}},this._onTopLeftHandlePointerUp=e=>{e.stopPropagation(),this._resizingDirection===io.TopLeft&&(this.y=parseFloat(this.element.style.top.replace("px","")),this.height=parseFloat(this.element.style.height.replace("px","")),this.x=parseFloat(this.element.style.left.replace("px","")),this.width=parseFloat(this.element.style.width.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onTopLeftHandlePointerUp),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onTopLeftHandlePointerMove),this._cleanUpResizing(e))},this._id=lo._FrameCounter++,this._ownerCanvas=t;const r=t.frameContainer;this.element=r.ownerDocument.createElement("div"),this.element.classList.add(Zr["frame-box"]),r.appendChild(this.element),this._headerElement=r.ownerDocument.createElement("div"),this._headerElement.classList.add(oo["frame-box-header"]),this._headerElement.addEventListener("dblclick",(()=>{this.isCollapsed=!this.isCollapsed})),this.element.appendChild(this._headerElement),this._borderElement=r.ownerDocument.createElement("div"),this._borderElement.classList.add(oo["frame-box-border"]),this.element.appendChild(this._borderElement),this.element.classList.add(oo.expanded);const o=r.ownerDocument.createElement("div");o.className=oo["right-handle"],this.element.appendChild(o),o.addEventListener("pointerdown",this._onRightHandlePointerDown);const a=r.ownerDocument.createElement("div");a.className=oo["left-handle"],this.element.appendChild(a),a.addEventListener("pointerdown",this._onLeftHandlePointerDown);const i=r.ownerDocument.createElement("div");i.className=oo["bottom-handle"],this.element.appendChild(i),i.addEventListener("pointerdown",this._onBottomHandlePointerDown);const l=r.ownerDocument.createElement("div");l.className=oo["top-handle"],this.element.appendChild(l),l.addEventListener("pointerdown",this._onTopHandlePointerDown);const c=r.ownerDocument.createElement("div");c.className=ao({"right-handle":!0,"top-right-corner-handle":!0},oo),this.element.appendChild(c),c.addEventListener("pointerdown",this._onTopRightHandlePointerDown);const u=r.ownerDocument.createElement("div");u.className=ao({"right-handle":!0,"bottom-right-corner-handle":!0},oo),this.element.appendChild(u),u.addEventListener("pointerdown",this._onBottomRightHandlePointerDown);const d=r.ownerDocument.createElement("div");d.className=ao({"left-handle":!0,"top-left-corner-handle":!0},oo),this.element.appendChild(d),d.addEventListener("pointerdown",this._onTopLeftHandlePointerDown);const p=r.ownerDocument.createElement("div");p.className=ao({"left-handle":!0,"bottom-left-corner-handle":!0},oo),this.element.appendChild(p),p.addEventListener("pointerdown",this._onBottomLeftHandlePointerDown),this._headerTextElement=r.ownerDocument.createElement("div"),this._headerTextElement.classList.add(oo["frame-box-header-title"]),this._headerElement.appendChild(this._headerTextElement),this._headerFocusElement=r.ownerDocument.createElement("div"),this._headerFocusElement.classList.add(oo["frame-box-header-focus"]),this._headerFocusElement.classList.add(oo["frame-box-header-button"]),this._headerFocusElement.title="Switch focus mode",this._headerFocusElement.ondragstart=()=>!1,this._headerFocusElement.addEventListener("pointerdown",(e=>{e.stopPropagation()})),this._headerFocusElement.addEventListener("pointerup",(e=>{e.stopPropagation(),this.switchFocusMode()})),this._headerFocusElement.innerHTML=this._focusSVG,this._headerElement.appendChild(this._headerFocusElement),this._headerCollapseElement=r.ownerDocument.createElement("div"),this._headerCollapseElement.classList.add(oo["frame-box-header-collapse"]),this._headerCollapseElement.classList.add(oo["frame-box-header-button"]),this._headerCollapseElement.title="Collapse",this._headerCollapseElement.ondragstart=()=>!1,this._headerCollapseElement.addEventListener("pointerdown",(e=>{this._headerCollapseElement.classList.add("down"),e.stopPropagation()})),this._headerCollapseElement.addEventListener("pointerup",(e=>{e.stopPropagation(),this._headerCollapseElement.classList.remove("down"),this.isCollapsed=!this.isCollapsed})),this._headerCollapseElement.innerHTML=this._collapseSVG,this._headerElement.appendChild(this._headerCollapseElement),this._headerCloseElement=r.ownerDocument.createElement("div"),this._headerCloseElement.classList.add(oo["frame-box-header-close"]),this._headerCloseElement.classList.add(oo["frame-box-header-button"]),this._headerCloseElement.title="Close",this._headerCloseElement.ondragstart=()=>!1,this._headerCloseElement.addEventListener("pointerdown",(e=>{e.stopPropagation()})),this._headerCloseElement.addEventListener("pointerup",(e=>{e.stopPropagation(),this.dispose()})),this._headerCloseElement.innerHTML=this._closeSVG,this._headerElement.appendChild(this._headerCloseElement),this._portContainer=r.ownerDocument.createElement("div"),this._portContainer.classList.add(oo["port-container"]),this.element.appendChild(this._portContainer),this._outputPortContainer=r.ownerDocument.createElement("div"),this._outputPortContainer.classList.add(Zr.outputsContainer),this._portContainer.appendChild(this._outputPortContainer),this._inputPortContainer=r.ownerDocument.createElement("div"),this._inputPortContainer.classList.add(Zr.inputsContainer),this._portContainer.appendChild(this._inputPortContainer),this.name="Frame",this.color=s.Color3.FromInts(72,72,72),e&&(this.x=parseFloat(e.style.left.replace("px","")),this.y=parseFloat(e.style.top.replace("px","")),this.width=parseFloat(e.style.width.replace("px","")),this.height=parseFloat(e.style.height.replace("px","")),this.cleanAccumulation()),this._headerTextElement.addEventListener("pointerdown",(e=>this._onDown(e))),this._headerTextElement.addEventListener("pointerup",(e=>this._onUp(e))),this._headerTextElement.addEventListener("pointermove",(e=>this._onMove(e))),this._onSelectionChangedObserver=t.stateManager.onSelectionChangedObservable.add((()=>{-1!==this._ownerCanvas.selectedFrames.indexOf(this)?this._borderElement.classList.add(oo.selected):this._borderElement.classList.remove(oo.selected)})),t.stateManager.onSelectionBoxMoved.add((e=>{const n=this.element.getBoundingClientRect();!(e.right<n.left||e.left>n.right||e.bottom<n.top||e.top>n.bottom)&&t.stateManager.onSelectionChangedObservable.notifyObservers({selection:this,forceKeepSelection:!0,marqueeSelection:!0})})),this._onGraphNodeRemovalObserver=t.stateManager.onGraphNodeRemovalObservable.add((e=>{const t=this._nodes.indexOf(e);-1!==t&&(e.enclosingFrameId=-1,this._nodes.splice(t,1))})),this._onExposePortOnFrameObserver=t.stateManager.onExposePortOnFrameObservable.add((e=>{-1!==this.nodes.indexOf(e)&&this.redrawFramePorts()})),this._commentsElement=document.createElement("div"),this._commentsElement.className=oo["frame-comments"],this._commentsElement.style.color="white",this._commentsElement.style.fontSize="16px";const h=document.createElement("span");h.className=oo["frame-comment-span"],this._commentsElement.appendChild(h),this.element.appendChild(this._commentsElement),n||this.refresh()}switchFocusMode(){if(this._isFocused){this._isFocused=!1;for(const e of this._ownerCanvas.nodes)-1===this._nodes.indexOf(e)&&(e.rootElement.style.transition="",e.rootElement.style.opacity="",e.rootElement.style.pointerEvents="");for(const e of this._ownerCanvas.links)e.path.style.transition="",e.path.style.opacity="",e.selectionPath.style.pointerEvents="";for(const e of this._ownerCanvas.frames)e!==this&&(e.element.style.transition="",e.element.style.opacity="",e.element.style.pointerEvents="")}else{this._isFocused=!0;for(const e of this._ownerCanvas.nodes)-1===this._nodes.indexOf(e)&&(e.rootElement.style.transition="opacity 0.5s",e.rootElement.style.opacity="0.05",e.rootElement.style.pointerEvents="none");for(const e of this._ownerCanvas.links)-1!==this._nodes.indexOf(e.nodeA)&&-1!==this._nodes.indexOf(e.nodeB)||(e.path.style.transition="opacity 0.5s",e.path.style.opacity="0.3",e.selectionPath.style.pointerEvents="none"),-1===this._nodes.indexOf(e.nodeA)&&-1===this._nodes.indexOf(e.nodeB)&&(e.path.style.transition="opacity 0.5s",e.path.style.opacity="0.05",e.selectionPath.style.pointerEvents="none");for(const e of this._ownerCanvas.frames)e!==this&&(e.element.style.transition="opacity 0.5s",e.element.style.opacity="0.05",e.element.style.pointerEvents="none")}}refresh(){this._isFocused||(this._nodes=[],this._ownerCanvas.stateManager.onFrameCreatedObservable.notifyObservers(this))}addNode(e){-1===this.nodes.indexOf(e)&&this.nodes.push(e)}removeNode(e){const t=this.nodes.indexOf(e);t>-1&&(e.enclosingFrameId=-1,this.nodes.splice(t,1))}syncNode(e){this.isCollapsed||(e.isOverlappingFrame(this)?this.addNode(e):this.removeNode(e))}cleanAccumulation(){for(const e of this._nodes)e.cleanAccumulation();this.x=this._ownerCanvas.getGridPosition(this.x),this.y=this._ownerCanvas.getGridPosition(this.y)}_onDown(e){this._headerTextElement.setPointerCapture(e.pointerId);const t=this._ownerCanvas.selectedFrames.indexOf(this);-1===t?this._ownerCanvas.stateManager.onSelectionChangedObservable.notifyObservers({selection:this}):e.ctrlKey&&(this._ownerCanvas.selectedFrames.splice(t,1),this.element.classList.remove("selected")),this._ownerCanvas._frameIsMoving=!0,this._mouseStartPointX=e.clientX,this._mouseStartPointY=e.clientY,e.stopPropagation()}move(e,t,n=!0){const r=this.x,o=this.y;this.x=e,this.y=t;for(const e of this._nodes)e.x+=this.x-r,e.y+=this.y-o,n&&e.cleanAccumulation(!0)}_onUp(e){e.stopPropagation(),this.cleanAccumulation(),this._mouseStartPointX=null,this._mouseStartPointY=null,this._headerTextElement.releasePointerCapture(e.pointerId),this._ownerCanvas._frameIsMoving=!1}_moveFrame(e,t){this.x+=e,this.y+=t;for(const n of this._nodes)n.x+=e,n.y+=t}_onMove(e){if(null===this._mouseStartPointX||null===this._mouseStartPointY||e.ctrlKey||this._frameIsResizing)return;const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom,n=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;for(const e of this._ownerCanvas.selectedFrames)e._moveFrame(t,n);for(const e of this._ownerCanvas.selectedNodes)e.x+=t,e.y+=n;this._mouseStartPointX=e.clientX,this._mouseStartPointY=e.clientY,e.stopPropagation()}moveFramePortUp(e){let t;if(e.isInput){if(this._inputPortContainer.children.length<2)return;t=Array.from(this._inputPortContainer.childNodes);const n=this._frameInPorts.findIndex((t=>t===e));[this._exposedInPorts[n-1],this._exposedInPorts[n]]=[this._exposedInPorts[n],this._exposedInPorts[n-1]],this._movePortUp(t,e,this._frameInPorts)}else{if(this._outputPortContainer.children.length<2)return;t=Array.from(this._outputPortContainer.childNodes);const n=this._frameOutPorts.findIndex((t=>t===e));[this._exposedOutPorts[n-1],this._exposedOutPorts[n]]=[this._exposedOutPorts[n],this._exposedOutPorts[n-1]],this._movePortUp(t,e,this._frameOutPorts)}this.ports.forEach((e=>e.node._refreshLinks()))}_movePortUp(e,t,n){const r=e.findIndex((e=>e.dataset.framePortId===`${t.framePortId}`));if(0===r)return;const o=e[r],a=e[r-1];a.parentElement?.insertBefore(o,a);const i=n.findIndex((e=>e===t));[n[i-1],n[i]]=[n[i],n[i-1]],2==n.length?(n[1].framePortPosition=so.Bottom,n[0].framePortPosition=so.Top):1===r?(n[1].framePortPosition=so.Middle,n[0].framePortPosition=so.Top):i===e.length-1?(n[n.length-1].framePortPosition=so.Bottom,n[n.length-2].framePortPosition=so.Middle):t.framePortPosition=so.Middle}moveFramePortDown(e){let t;if(e.isInput){if(this._inputPortContainer.children.length<2)return;t=Array.from(this._inputPortContainer.childNodes);const n=this._frameInPorts.findIndex((t=>t===e));[this._exposedInPorts[n],this._exposedInPorts[n+1]]=[this._exposedInPorts[n+1],this._exposedInPorts[n]],this._movePortDown(t,e,this._frameInPorts)}else{if(this._outputPortContainer.children.length<2)return;t=Array.from(this._outputPortContainer.childNodes);const n=this._frameOutPorts.findIndex((t=>t===e));[this._exposedOutPorts[n],this._exposedOutPorts[n+1]]=[this._exposedOutPorts[n+1],this._exposedOutPorts[n]],this._movePortDown(t,e,this._frameOutPorts)}this.ports.forEach((e=>e.node._refreshLinks()))}_movePortDown(e,t,n){const r=e.findIndex((e=>e.dataset.framePortId===`${t.framePortId}`));if(r===e.length-1)return;const o=e[r],a=e[r+1];o.parentElement?.insertBefore(a,o);const i=n.findIndex((e=>e===t));[n[i],n[i+1]]=[n[i+1],n[i]],2==n.length?(n[0].framePortPosition=so.Top,n[1].framePortPosition=so.Bottom):i===e.length-2?(n[e.length-2].framePortPosition=so.Middle,n[e.length-1].framePortPosition=so.Bottom):0===i?(n[0].framePortPosition=so.Top,n[1].framePortPosition=so.Middle):t.framePortPosition=so.Middle}_isResizingTop(){return this._resizingDirection===io.Top||this._resizingDirection===io.TopRight||this._resizingDirection===io.TopLeft}_isResizingRight(){return this._resizingDirection===io.Right||this._resizingDirection===io.TopRight||this._resizingDirection===io.BottomRight}_isResizingBottom(){return this._resizingDirection===io.Bottom||this._resizingDirection===io.BottomLeft||this._resizingDirection===io.BottomRight}_isResizingLeft(){return this._resizingDirection===io.Left||this._resizingDirection===io.TopLeft||this._resizingDirection===io.BottomLeft}_expandLeft(e){const t=parseFloat(this.element.style.width.replace("px","")),n=parseFloat(this.element.style.left.replace("px",""));this.element.style.width=t-e+"px",this.element.style.left=`${n+e}px`,this._updateMinHeightWithComments()}_expandTop(e){const t=parseFloat(this.element.style.height.replace("px","")),n=parseFloat(this.element.style.top.replace("px",""));this.element.style.height=t-e+"px",this.element.style.top=`${n+e}px`}_expandRight(e,t){const n=parseFloat(this.element.style.width.replace("px",""));n+e>20&&(this._mouseStartPointX=t,this.element.style.width=`${n+e}px`),this._updateMinHeightWithComments()}_expandBottom(e){const t=parseFloat(this.element.style.height.replace("px",""));this.element.style.height=`${t+e}px`}dispose(){this._onSelectionChangedObserver&&this._ownerCanvas.stateManager.onSelectionChangedObservable.remove(this._onSelectionChangedObserver),this._onGraphNodeRemovalObserver&&this._ownerCanvas.stateManager.onGraphNodeRemovalObservable.remove(this._onGraphNodeRemovalObserver),this._onExposePortOnFrameObserver&&this._ownerCanvas.stateManager.onExposePortOnFrameObservable.remove(this._onExposePortOnFrameObserver),this.element.parentElement?.removeChild(this.element),this._ownerCanvas.frames.splice(this._ownerCanvas.frames.indexOf(this),1),this.onExpandStateChanged.clear()}_serializePortData(e){if(e.length>0)for(let t=0;t<e.length;++t)e[t]&&(e[t].exposedPortPosition=t)}serialize(e){return this._serializePortData(this._exposedInPorts),this._serializePortData(this._exposedOutPorts),{x:this._x,y:this._y,width:this._width,height:this._height,color:this._color.asArray(),name:this.name,isCollapsed:!e||this.isCollapsed,blocks:this.nodes.map((e=>e.content.uniqueId)),comments:this._comments}}export(){const e=this._ownerCanvas.stateManager,t=e.exportData(e.data,this);H.DownloadAsFile(e.hostDocument,t,this._name+".json")}adjustPorts(){for(const e of this.nodes){for(const t of e.outputPorts)t.exposedOnFrame&&-1!==t.exposedPortPosition&&(this._exposedOutPorts[t.exposedPortPosition]=t);for(const t of e.inputPorts)t.exposedOnFrame&&-1!==t.exposedPortPosition&&(this._exposedInPorts[t.exposedPortPosition]=t)}}static Parse(e,t,n){const r=new lo(null,t,!0),o=!!e.isCollapsed;if(r.x=e.x,r.y=e.y,r.width=e.width,r.height=e.height,r.name=e.name,r.color=s.Color3.FromArray(e.color),r.comments=e.comments,e.blocks&&n)for(const o of e.blocks){const e=n[o],a=t.nodes.filter((t=>t.content.uniqueId===e));a.length&&(r.nodes.push(a[0]),a[0].enclosingFrameId=r.id)}else r.refresh();if(r.adjustPorts(),r.isCollapsed=o,o){t._frameIsMoving=!0,r._moveFrame(-(r.width-r._collapsedWidth)/2,0);const n=e.x-r.x;r._moveFrame(n,0),r.cleanAccumulation();for(const e of r.nodes)e.refresh();t._frameIsMoving=!1}return r}}lo._FrameCounter=0,lo._FramePortCounter=0;class co extends a.Component{constructor(e){super(e),this.state={port:this.props.frameNodePort},this._onSelectionChangedObserver=this.props.stateManager.onSelectionChangedObservable.add((e=>{const{selection:t}=e||{};$r(t)&&(t.port.onFramePortPositionChangedObservable.clear(),this._onFramePortPositionChangedObserver=t.port.onFramePortPositionChangedObservable.add((e=>{this.setState({port:e})})),this.setState({port:t.port}))})),this._onFramePortPositionChangedObserver=this.props.frameNodePort.onFramePortPositionChangedObservable.add((e=>{this.setState({port:e})}))}componentWillUnmount(){this.props.frameNodePort.onFramePortPositionChangedObservable.remove(this._onFramePortPositionChangedObserver),this.props.stateManager.onSelectionChangedObservable.remove(this._onSelectionChangedObserver)}render(){return(0,l.jsxs)("div",{id:"propertyTab",children:[(0,l.jsxs)("div",{id:"header",children:[(0,l.jsx)("img",{id:"logo",src:"https://www.babylonjs.com/Assets/logo-babylonjs-social-twitter.png"}),(0,l.jsx)("div",{id:"title",children:"NODE MATERIAL EDITOR"})]}),(0,l.jsx)("div",{children:(0,l.jsxs)(O,{title:"GENERAL",children:[(0,l.jsx)(Vr,{label:"Port Name",lockObject:this.props.stateManager.lockObject,propertyName:"portName",target:this.props.frameNodePort}),this.props.frameNodePort.framePortPosition!==so.Top&&(0,l.jsx)(Gr,{label:"Move Port Up",onClick:()=>{this.props.frame.moveFramePortUp(this.props.frameNodePort)}}),this.props.frameNodePort.framePortPosition!==so.Bottom&&(0,l.jsx)(Gr,{label:"Move Port Down",onClick:()=>{this.props.frame.moveFramePortDown(this.props.frameNodePort)}})]})})]})}}class uo extends a.Component{constructor(e){super(e)}onLink(){this.props.url?window.open(this.props.url,"_blank"):this.props.onLink&&this.props.onLink()}renderContent(){return this.props.ignoreValue?null:this.props.onLink||this.props.url?(0,l.jsx)("div",{className:"link-value",title:this.props.tooltip??this.props.label??"",onClick:()=>this.onLink(),children:this.props.url?"doc":this.props.value||"no name"}):(0,l.jsx)("div",{className:"value",title:this.props.tooltip??this.props.label??"",style:{color:this.props.color?this.props.color:""},children:this.props.value||"no name"})}render(){return(0,l.jsxs)("div",{className:this.props.underline?"textLine underline":"textLine"+(this.props.additionalClass?" "+this.props.additionalClass:""),children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsx)("div",{className:"label",title:this.props.tooltip??this.props.label??"",children:this.props.label??""}),this.renderContent()]})}}class po extends a.Component{constructor(e){super(e)}toggleExposeOnFrame(e){this.props.nodePort.exposedOnFrame=e,this.props.stateManager.onExposePortOnFrameObservable.notifyObservers(this.props.nodePort.node)}render(){const e=this.props.nodePort.portData.data,t=[];for(const n of e.acceptedConnectionPointTypes){const e=s.NodeMaterialBlockConnectionPointTypes[n];e&&t.push(e)}const n=this.props.nodePort.hasLabel()?(0,l.jsxs)(l.Fragment,{children:[this.props.nodePort.hasLabel()&&(0,l.jsx)(Vr,{lockObject:this.props.stateManager.lockObject,label:"Port Label",propertyName:"portName",target:this.props.nodePort}),(0,l.jsx)(uo,{label:"Type",value:s.NodeMaterialBlockConnectionPointTypes[e.type]}),t.length>0&&t.map(((e,t)=>(0,l.jsx)(uo,{label:0===t?"Accepted Types":"",value:e}))),-1!==this.props.nodePort.node.enclosingFrameId&&(0,l.jsx)(Z,{label:"Expose Port on Frame",target:this.props.nodePort,isSelected:()=>this.props.nodePort.exposedOnFrame,onSelect:e=>this.toggleExposeOnFrame(e),propertyName:"exposedOnFrame",disabled:this.props.nodePort.disabled})]}):(0,l.jsx)(uo,{label:"This node is a constant input node and cannot be exposed to the frame.",value:" "});return(0,l.jsxs)("div",{id:"propertyTab",children:[(0,l.jsxs)("div",{id:"header",children:[(0,l.jsx)("img",{id:"logo",src:"https://www.babylonjs.com/Assets/logo-babylonjs-social-twitter.png"}),(0,l.jsx)("div",{id:"title",children:"NODE MATERIAL EDITOR"})]}),(0,l.jsx)("div",{children:(0,l.jsx)(O,{title:"GENERAL",children:n})})]})}}class ho{}ho.RegisteredControls={};class Ao{}Ao.RegisteredControls={};var fo=r(9319),go={};go.styleTagTransform=v(),go.setAttributes=g(),go.insert=A().bind(null,"head"),go.domAPI=p(),go.insertStyleElement=C(),u()(fo.A,go);const mo=fo.A&&fo.A.locals?fo.A.locals:void 0;function Co(e,t,n,r){r?.onValidation&&!r?.onValidation(e,n)||(r&&!r.update||t.onUpdateRequiredObservable.notifyObservers(e),r&&!r.rebuild||t.onRebuildRequiredObservable.notifyObservers(),r?.activatePreviewCommand&&t.onPreviewCommandActivated.notifyObservers(!0),!t.getScene)||r?.callback?.(t.getScene(),e)&&t.onRebuildRequiredObservable.notifyObservers()}class bo{addClassToVisual(e){this._visual.classList.add(e)}removeClassFromVisual(e){this._visual.classList.remove(e)}get isCollapsed(){return this._isCollapsed}get isVisible(){return this._isVisible}set isVisible(e){this._isVisible=e,e?(this._visual.classList.remove(Zr.hidden),this._upateNodePortNames()):this._visual.classList.add(Zr.hidden);for(const t of this._links)t.isVisible=e;this._refreshLinks()}_upateNodePortNames(){for(const e of this._inputPorts.concat(this._outputPorts))e.hasLabel()&&(e.portName=e.portData.name)}get outputPorts(){return this._outputPorts}get inputPorts(){return this._inputPorts}get links(){return this._links}get gridAlignedX(){return this._gridAlignedX}get gridAlignedY(){return this._gridAlignedY}get x(){return this._x}set x(e){this._x!==e&&(this._x=e,this._gridAlignedX=this._ownerCanvas.getGridPosition(e),this._visual.style.left=`${this._gridAlignedX}px`,this._refreshLinks(),this._refreshFrames())}get y(){return this._y}set y(e){this._y!==e&&(this._y=e,this._gridAlignedY=this._ownerCanvas.getGridPosition(e),this._visual.style.top=`${this._gridAlignedY}px`,this._refreshLinks(),this._refreshFrames())}get width(){return this._visual.clientWidth}get height(){return this._visual.clientHeight}get id(){return this.content.uniqueId}get name(){return this.content.name}get isSelected(){return this._isSelected}get enclosingFrameId(){return this._enclosingFrameId}set enclosingFrameId(e){this._enclosingFrameId=e}set isSelected(e){this.setIsSelected(e,!1)}setIsSelected(e,t){if(this._isSelected!==e)if(this._isSelected=e,e)this._stateManager.onSelectionChangedObservable.notifyObservers({selection:this,marqueeSelection:t});else{this._visual.classList.remove(mo.selected);const e=this._ownerCanvas.selectedNodes.indexOf(this);e>-1&&this._ownerCanvas.selectedNodes.splice(e,1)}}get rootElement(){return this._visual}constructor(e,t){this.content=e,this._inputPorts=[],this._outputPorts=[],this._links=[],this._x=0,this._y=0,this._gridAlignedX=0,this._gridAlignedY=0,this._mouseStartPointX=null,this._mouseStartPointY=null,this._displayManager=null,this._isVisible=!0,this._enclosingFrameId=-1,this._visualPropertiesRefresh=[],this._isCollapsed=!1,this._stateManager=t,this._onSelectionChangedObserver=this._stateManager.onSelectionChangedObservable.add((e=>{const{selection:t}=e||{};t===this?(this._visual.classList.add(mo.selected),this._displayManager&&this._displayManager.onSelectionChanged&&this._displayManager.onSelectionChanged(this.content,t.content,this._stateManager)):-1===this._ownerCanvas.selectedNodes.indexOf(this)&&(this._visual.classList.remove(mo.selected),this._displayManager&&this._displayManager.onSelectionChanged&&this._displayManager.onSelectionChanged(this.content,t&&t.content?t.content:null,this._stateManager))})),this._onHighlightNodeObserver=this._stateManager.onHighlightNodeObservable.add((e=>{e.data===this.content.data&&(e.active?this._visual.classList.add(mo.highlighted):this._visual.classList.remove(mo.highlighted))})),this._onUpdateRequiredObserver=this._stateManager.onUpdateRequiredObservable.add((e=>{e===this.content.data&&this.refresh()})),this._onSelectionBoxMovedObserver=this._stateManager.onSelectionBoxMoved.add((e=>{const t=this._visual.getBoundingClientRect(),n=!(e.right<t.left||e.left>t.right||e.bottom<t.top||e.top>t.bottom);this.setIsSelected(n,!0)})),this._onFrameCreatedObserver=this._stateManager.onFrameCreatedObservable.add((e=>{this._ownerCanvas.frames.some((e=>-1!==e.nodes.indexOf(this)))||this.isOverlappingFrame(e)&&e.nodes.push(this)}))}isOverlappingFrame(e){const t=this._visual.getBoundingClientRect(),n=e.element.getBoundingClientRect();n.width-=5,n.height-=5;const r=!(n.right<t.left||n.left>t.right||n.bottom<t.top||n.top>t.bottom);return r&&(this.enclosingFrameId=e.id),r}getPortForPortData(e){for(const t of this._inputPorts){const n=t.portData;if(n===e||n.ownerData===e.ownerData&&n.internalName===e.internalName)return t}for(const t of this._outputPorts){const n=t.portData;if(n===e||n.ownerData===e.ownerData&&n.internalName===e.internalName)return t}return null}getPortDataForPortDataContent(e){for(const t of this._inputPorts){const n=t.portData;if(n.data===e)return n}for(const t of this._outputPorts){const n=t.portData;if(n.data===e)return n}return null}getLinksForPortDataContent(e){return this._links.filter((t=>t.portA.portData.data===e||t.portB.portData.data===e))}getLinksForPortData(e){return this._links.filter((t=>t.portA.portData===e||t.portB.portData===e))}_refreshFrames(){if(!this._ownerCanvas._frameIsMoving&&!this._ownerCanvas._isLoading)for(const e of this._ownerCanvas.frames)e.syncNode(this)}_refreshLinks(){if(!this._ownerCanvas._isLoading)for(const e of this._links)e.update()}refresh(){if(this._displayManager){this._header.innerHTML=this._displayManager.getHeaderText(this.content),this._displayManager.updatePreviewContent(this.content,this._content),this._visual.style.background=this._displayManager.getBackgroundColor(this.content);const e=this._displayManager.getHeaderClass(this.content);this._header.classList.value=mo.header,this._headerContainer.classList.value=mo["header-container"],e&&this._headerContainer.classList.add(e),this._displayManager.updateFullVisualContent&&this._displayManager.updateFullVisualContent(this.content,{visual:this._visual,header:this._header,headerContainer:this._headerContainer,headerIcon:this._headerIcon,headerIconImg:this._headerIconImg,comments:this._comments,connections:this._connections,inputsContainer:this._inputsContainer,outputsContainer:this._outputsContainer,content:this._content,selectionBorder:this._selectionBorder})}else this._header.innerHTML=this.content.name;for(const e of this._visualPropertiesRefresh)e();for(const e of this._inputPorts)e.refresh();for(const e of this._outputPorts)e.refresh();if(-1!==this.enclosingFrameId){const e=this._ownerCanvas.frames.findIndex((e=>e.id===this.enclosingFrameId));e>=0&&this._ownerCanvas.frames[e].isCollapsed&&this._ownerCanvas.frames[e].redrawFramePorts()}this._comments.innerHTML=this.content.comments||"",this._comments.title=this.content.comments||"";const e=this.content.executionTime||0;this._executionTime.innerHTML=e>=0?`${e.toFixed(2)} ms`:"",this.content.prepareHeaderIcon(this._headerIcon,this._headerIconImg)}_onDown(e){if(!e.target||"IMG"!==e.target.nodeName||!e.target.draggable){-1===this._ownerCanvas.selectedNodes.indexOf(this)?this._stateManager.onSelectionChangedObservable.notifyObservers({selection:this}):e.ctrlKey&&this.setIsSelected(!1,!1),e.stopPropagation();for(const e of this._ownerCanvas.selectedNodes)e.cleanAccumulation();this._mouseStartPointX=e.clientX,this._mouseStartPointY=e.clientY,this._visual.setPointerCapture(e.pointerId)}}cleanAccumulation(e=!1){this.x=this._ownerCanvas.getGridPosition(this.x,e),this.y=this._ownerCanvas.getGridPosition(this.y,e)}_onUp(e){e.stopPropagation();for(const e of this._ownerCanvas.selectedNodes)e.cleanAccumulation();if(this._mouseStartPointX=null,this._mouseStartPointY=null,this._visual.releasePointerCapture(e.pointerId),!this._ownerCanvas._targetLinkCandidate)return void this._stateManager.onNodeMovedObservable.notifyObservers(this);const t=[],n=[],r=[],o=[],a=this._ownerCanvas._targetLinkCandidate.nodeA,i=this._ownerCanvas._targetLinkCandidate.nodeB,s=this._ownerCanvas._targetLinkCandidate.portA.portData,l=this._ownerCanvas._targetLinkCandidate.portB.portData;this._ownerCanvas._targetLinkCandidate.dispose(),this._ownerCanvas._targetLinkCandidate=null,r.push(...this.content.inputs.filter((e=>!e.isConnected))),o.push(...this.content.outputs),t.push(...a.content.outputs),n.push(...i.content.inputs.filter((e=>!e.isConnected)));const c=t.indexOf(s),u=n.indexOf(l);c>0&&(t.splice(c,1),t.splice(0,0,s)),u>0&&(n.splice(u,1),n.splice(0,0,l)),this._ownerCanvas.automaticRewire(t,r,!0),this._ownerCanvas.automaticRewire(o,n,!0),this._stateManager.onRebuildRequiredObservable.notifyObservers(),this._stateManager.onNodeMovedObservable.notifyObservers(this)}_onMove(e){if(this._ownerCanvas._targetLinkCandidate=null,null===this._mouseStartPointX||null===this._mouseStartPointY||e.ctrlKey)return;const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom,n=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;for(const e of this._ownerCanvas.selectedNodes)e.x+=t,e.y+=n;for(const e of this._ownerCanvas.selectedFrames)e._moveFrame(t,n);if(this._mouseStartPointX=e.clientX,this._mouseStartPointY=e.clientY,e.stopPropagation(),this._inputPorts.some((e=>e.portData.isConnected))||this._outputPorts.some((e=>e.portData.hasEndpoints)))return;const r=this._visual.getBoundingClientRect();for(const e of this._ownerCanvas.links)e.portA.node!==this&&e.portB.node!==this?(e.isTargetCandidate=e.intersectsWith(r),e.isTargetCandidate&&this._ownerCanvas._targetLinkCandidate!==e&&(this._ownerCanvas._targetLinkCandidate&&(this._ownerCanvas._targetLinkCandidate.isTargetCandidate=!1),this._ownerCanvas._targetLinkCandidate=e)):e.isTargetCandidate=!1}renderProperties(){let e=ho.RegisteredControls[this.content.getClassName()];return e||(e=ho.DefaultControl),a.createElement(e,{stateManager:this._stateManager,nodeData:this.content})}_forceRebuild(e,t,n){for(const e of this._visualPropertiesRefresh)e();Co(e,this._stateManager,t,n)}collapse(){this._headerCollapse.classList.add(mo.collapsed),this._inputPorts.filter((e=>!e.portData.isConnected)).forEach((e=>{e.container.classList.add(Zr.hidden)})),this._outputPorts.filter((e=>!e.portData.isConnected)).forEach((e=>{e.container.classList.add(Zr.hidden)})),this._refreshLinks()}expand(){this._headerCollapse.classList.remove(mo.collapsed),this._inputPorts.filter((e=>!e.portData.isConnected)).forEach((e=>{e.container.classList.remove(Zr.hidden)})),this._outputPorts.filter((e=>!e.portData.isConnected)).forEach((e=>{e.container.classList.remove(Zr.hidden)})),this._refreshLinks()}appendVisual(e,t){this._ownerCanvas=t;const n=Ao.RegisteredControls[this.content.getClassName()];n&&(this._displayManager=new n),this._visual=e.ownerDocument.createElement("div"),this._visual.classList.add(mo.visual),this._visual.addEventListener("pointerdown",(e=>this._onDown(e))),this._visual.addEventListener("pointerup",(e=>this._onUp(e))),this._visual.addEventListener("pointermove",(e=>this._onMove(e))),this._headerContainer=e.ownerDocument.createElement("div"),this._headerContainer.classList.add(mo["header-container"]),this._visual.appendChild(this._headerContainer),this._header=e.ownerDocument.createElement("div"),this._header.classList.add(mo.header),this._headerContainer.appendChild(this._header),this._headerIcon=e.ownerDocument.createElement("div"),this._headerIcon.classList.add(mo.headerIcon),this._headerIconImg=e.ownerDocument.createElement("img"),this._headerIconImg.draggable=!1,this._headerIcon.appendChild(this._headerIconImg),this._headerContainer.appendChild(this._headerIcon),(this.content.inputs.length>1||this.content.outputs.length>1)&&(this._headerCollapse=e.ownerDocument.createElement("div"),this._headerCollapse.classList.add(mo.headerCollapse),this._headerCollapseImg=e.ownerDocument.createElement("img"),this._headerCollapseImg.src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgdmlld0JveD0iMCAwIDQwIDQwIj48cGF0aCBkPSJNMTQuNDUsMThhMSwxLDAsMCwxLC43Ni0xLjY5aDkuNThBMSwxLDAsMCwxLDI1LjU1LDE4bC00LjQ4LDUuMTJhMS40MiwxLjQyLDAsMCwxLTIuMTQsMFptMS4yMS0uNDcsNC4xOSw0Ljc5YS4yLjIsMCwwLDAsLjMsMGw0LjE5LTQuNzlaIiBzdHlsZT0iZmlsbDojZmZmIi8+PC9zdmc+",this._headerCollapseImg.draggable=!1,this._headerCollapse.appendChild(this._headerCollapseImg),this._headerContainer.appendChild(this._headerCollapse),this._headerCollapse.addEventListener("pointerup",(e=>e.stopPropagation())),this._headerCollapse.addEventListener("pointermove",(e=>e.stopPropagation())),this._headerCollapse.addEventListener("pointerdown",(e=>{this._isCollapsed=!this._isCollapsed,this._isCollapsed?this.collapse():this.expand(),e.stopPropagation()}))),this._selectionBorder=e.ownerDocument.createElement("div"),this._selectionBorder.classList.add("selection-border"),this._visual.appendChild(this._selectionBorder),this._connections=e.ownerDocument.createElement("div"),this._connections.classList.add(mo.connections),this._visual.appendChild(this._connections),this._optionsContainer=e.ownerDocument.createElement("div"),this._optionsContainer.classList.add(mo.optionsContainer),this._connections.appendChild(this._optionsContainer),this._inputsContainer=e.ownerDocument.createElement("div"),this._inputsContainer.classList.add(Zr.inputsContainer),this._connections.appendChild(this._inputsContainer),this._outputsContainer=e.ownerDocument.createElement("div"),this._outputsContainer.classList.add(Zr.outputsContainer),this._connections.appendChild(this._outputsContainer),this._content=e.ownerDocument.createElement("div"),this._content.classList.add(mo.content),this._visual.appendChild(this._content),e.appendChild(this._visual),this._comments=e.ownerDocument.createElement("div"),this._comments.classList.add(mo.comments),this._visual.appendChild(this._comments),this._executionTime=e.ownerDocument.createElement("div"),this._executionTime.classList.add(mo.executionTime),this._visual.appendChild(this._executionTime);let r=0;const o=this.content.data._propStore;if(o){const t=this.content.data,n=[];let a=Object.getPrototypeOf(t);for(;a;)n.push(a.constructor.name),a=Object.getPrototypeOf(a);for(const{propertyName:a,displayName:i,type:s,options:l,className:c}of o){if(!l||!l.embedded||-1===n.indexOf(c))continue;const o=e.ownerDocument.createElement("div");switch(o.addEventListener("pointerdown",(e=>e.stopPropagation())),o.addEventListener("pointerup",(e=>e.stopPropagation())),o.addEventListener("pointermove",(e=>e.stopPropagation())),this._optionsContainer.appendChild(o),s){case 0:{o.classList.add(mo.booleanContainer);const n=e.ownerDocument.createElement("input");n.type="checkbox",n.id="checkbox-"+r++,n.checked=t[a],this._visualPropertiesRefresh.push((()=>{n.checked=t[a]})),n.onchange=()=>{t[a]=!t[a],this._forceRebuild(t,a,l?.notifiers)},o.appendChild(n);const s=e.ownerDocument.createElement("label");s.innerText=i,s.htmlFor=n.id,o.appendChild(s);break}case 2:case 1:if(isNaN(l.min)||isNaN(l.max)||l.min===l.max){o.classList.add(mo.floatContainer);const n=e.ownerDocument.createElement("input");n.type="number",n.id="number-"+r++,this._visualPropertiesRefresh.push((()=>{n.value=t[a]})),n.onchange=()=>{t[a]=parseFloat(n.value),this._forceRebuild(t,a,l?.notifiers)},o.appendChild(n);const s=e.ownerDocument.createElement("div");s.innerText=i,o.appendChild(s);let c=!1;n.onpointerdown=e=>{c=!0,e.preventDefault()},n.onpointerup=e=>{n.hasPointerCapture(e.pointerId)?(n.releasePointerCapture(e.pointerId),c=!1,e.preventDefault()):(n.focus(),n.select())},n.onpointermove=e=>{c&&n.setPointerCapture(e.pointerId),n.hasPointerCapture(e.pointerId)&&(n.value=(parseFloat(n.value)+.01*e.movementX).toFixed(2),t[a]=parseFloat(n.value),this._forceRebuild(t,a,l?.notifiers),e.preventDefault())}}else{o.classList.add(mo.sliderContainer);const n=e.ownerDocument.createElement("label");o.appendChild(n);const c=e.ownerDocument.createElement("div");o.appendChild(c);const u=e.ownerDocument.createElement("input");u.type="range",u.id="slider-"+r++,u.step=2===s?"1":(Math.abs(l.max-l.min)/100).toString(),u.min=l.min.toString(),u.max=l.max.toString(),o.appendChild(u),n.innerText=i,n.htmlFor=u.id,this._visualPropertiesRefresh.push((()=>{u.value=t[a],c.innerText=t[a]})),u.oninput=()=>{t[a]=parseFloat(u.value),c.innerText=t[a],this._forceRebuild(t,a,l?.notifiers)}}break;case 4:{o.classList.add(mo.listContainer);const n=e.ownerDocument.createElement("div");n.classList.add(mo.select),o.appendChild(n);const r=e.ownerDocument.createElement("div");r.classList.add(mo.selectText),n.appendChild(r);const i=l.options;this._visualPropertiesRefresh.push((()=>{r.innerText=i[t[a]].label}));const s=e.ownerDocument.createElement("div");s.classList.add(mo.selectList),s.classList.add(Zr.hidden),n.appendChild(s);for(const n of i){const r=e.ownerDocument.createElement("div");r.classList.add(mo.option),r.innerText=n.label,r.onclick=()=>{t[a]=n.value,this._forceRebuild(t,a,l?.notifiers)},s.appendChild(r)}n.onclick=()=>{s.classList.toggle(Zr.hidden),n.classList.toggle(mo.active),this._visual.classList.toggle(mo.topMost),this._stateManager.modalIsDisplayed=!this._stateManager.modalIsDisplayed},n.onpointerleave=()=>{s.classList.add(Zr.hidden),n.classList.remove(mo.active),this._visual.classList.remove(mo.topMost),this._stateManager.modalIsDisplayed=!1}}}}}0===this._visualPropertiesRefresh.length&&this._inputsContainer.classList.add(Zr.inputsContainerUp);for(const e of this.content.inputs)this._inputPorts.push(Kr.CreatePortElement(e,this,this._inputsContainer,this._displayManager,this._stateManager));for(const e of this.content.outputs)this._outputPorts.push(Kr.CreatePortElement(e,this,this._outputsContainer,this._displayManager,this._stateManager));this.refresh(),this.content.refreshCallback=()=>{this.refresh()}}dispose(){this._displayManager&&this._displayManager.onDispose&&this._displayManager.onDispose(this.content,this._stateManager),this._stateManager.onGraphNodeRemovalObservable.notifyObservers(this),this._onSelectionChangedObserver&&this._stateManager.onSelectionChangedObservable.remove(this._onSelectionChangedObserver),this._onUpdateRequiredObserver&&this._stateManager.onUpdateRequiredObservable.remove(this._onUpdateRequiredObserver),this._onHighlightNodeObserver&&this._stateManager.onHighlightNodeObservable.remove(this._onHighlightNodeObserver),this._onSelectionBoxMovedObserver&&this._stateManager.onSelectionBoxMoved.remove(this._onSelectionBoxMovedObserver),this._visual.parentElement&&this._visual.parentElement.removeChild(this._visual),this._onFrameCreatedObserver&&this._stateManager.onFrameCreatedObservable.remove(this._onFrameCreatedObserver);for(const e of this._inputPorts)e.dispose();for(const e of this._outputPorts)e.dispose();const e=this._links.slice(0);for(const t of e)t.dispose();this.content.dispose()}}const vo=Number.MAX_SAFE_INTEGER;class yo extends a.Component{_remapValueIn(e){return this.props.allowNullValue&&null===e?vo:e}_remapValueOut(e){return this.props.allowNullValue&&e===vo?null:e}_getValue(e){return e.extractValue?e.extractValue(e.target):e.target&&e.propertyName?e.target[e.propertyName]:e.options[e.defaultIfNull||0]}constructor(e){super(e),this._localChange=!1,this.state={value:this._remapValueIn(this._getValue(e))}}shouldComponentUpdate(e,t){if(this._localChange)return this._localChange=!1,!0;const n=this._remapValueIn(e.extractValue?e.extractValue(this.props.target):e.target[e.propertyName]);return null!=n&&n!==t.value&&(t.value=n,!0)}raiseOnPropertyChanged(e,t){this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:e,initialValue:t,allowNullValue:this.props.allowNullValue})}setValue(e){this.setState({value:e})}updateValue(e){const t=this.props.valuesAreStrings?e:parseInt(e);this._localChange=!0;const n=this.props.extractValue?this.props.extractValue(this.props.target):this.props.target[this.props.propertyName];this.props.noDirectUpdate||(this.props.target[this.props.propertyName]=this._remapValueOut(t)),this.setState({value:t}),this.props.onSelect&&this.props.onSelect(t);const r=this.props.extractValue?this.props.extractValue(this.props.target):this.props.target[this.props.propertyName];this.raiseOnPropertyChanged(r,n)}onCopyClick(){if(this.props&&this.props.target){const{className:e,babylonNamespace:t}=wr(this.props.target);xr("globalThis.debugNode."+this.props.propertyName+" = "+(this.props.extractValue?this.props.extractValue(this.props.target):this.props.target[this.props.propertyName])+";// (debugNode as "+t+e+")")}else xr("undefined")}render(){return(0,l.jsxs)("div",{className:"listLine"+(this.props.className?" "+this.props.className:""),children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,color:"black",className:"icon"}),(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label}),(0,l.jsx)("div",{className:"options",children:(0,l.jsx)("select",{onChange:e=>this.updateValue(e.target.value),value:this.state.value??"",children:this.props.options.map(((e,t)=>(0,l.jsx)("option",{selected:e.selected,value:e.value,title:e.label,children:e.label},e.label+t)))})}),(0,l.jsx)("div",{className:"copy hoverIcon",onClick:()=>this.onCopyClick(),title:"Copy to clipboard",children:(0,l.jsx)("img",{src:Nr,alt:"Copy"})})]})}}class xo extends a.Component{constructor(e){super(e),this.state={currentNode:null,currentFrame:null,currentFrameNodePort:null,currentNodePort:null,uploadInProgress:!1},this._modeSelect=a.createRef()}componentDidMount(){this.props.globalState.stateManager.onSelectionChangedObservable.add((e=>{const{selection:t}=e||{};t instanceof bo?this.setState({currentNode:t,currentFrame:null,currentFrameNodePort:null,currentNodePort:null}):t instanceof lo?this.setState({currentNode:null,currentFrame:t,currentFrameNodePort:null,currentNodePort:null}):$r(t)?this.setState({currentNode:null,currentFrame:t.frame,currentFrameNodePort:t.port,currentNodePort:null}):t instanceof Kr?this.setState({currentNode:null,currentFrame:null,currentFrameNodePort:null,currentNodePort:t}):this.setState({currentNode:null,currentFrame:null,currentFrameNodePort:null,currentNodePort:null})})),this._onBuiltObserver=this.props.globalState.onBuiltObservable.add((()=>{this.forceUpdate()}))}componentWillUnmount(){this.props.globalState.onBuiltObservable.remove(this._onBuiltObserver)}processInputBlockUpdate(e){this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(e),e.isConstant&&this.props.globalState.stateManager.onRebuildRequiredObservable.notifyObservers()}renderInputBlock(e){switch(e.type){case s.NodeMaterialBlockConnectionPointTypes.Float:{const t=isNaN(e.min)||isNaN(e.max)||e.min===e.max;return(0,l.jsxs)("div",{children:[e.isBoolean&&(0,l.jsx)(Z,{label:e.name,target:e,propertyName:"value",onValueChanged:()=>{this.processInputBlockUpdate(e)}},e.uniqueId),!e.isBoolean&&t&&(0,l.jsx)(_r,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId),!e.isBoolean&&!t&&(0,l.jsx)(Sr,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",step:(e.max-e.min)/100,minimum:e.min,maximum:e.max,onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId)]},e.uniqueId)}case s.NodeMaterialBlockConnectionPointTypes.Color3:return(0,l.jsx)(Rr,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Color4:return(0,l.jsx)(Ur,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Vector2:return(0,l.jsx)(br,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Vector3:return(0,l.jsx)(Lr,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Vector4:return(0,l.jsx)(Br,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId)}return null}load(e){s.Tools.ReadFile(e,(e=>{const t=new TextDecoder("utf-8");E.Deserialize(JSON.parse(t.decode(e)),this.props.globalState),this.changeMode(this.props.globalState.nodeMaterial.mode,!0,!1)||this.props.globalState.onResetRequiredObservable.notifyObservers(!1),this.props.globalState.stateManager.onSelectionChangedObservable.notifyObservers(null),this.props.globalState.onClearUndoStack.notifyObservers()}),void 0,!0)}loadFrame(e){s.Tools.ReadFile(e,(e=>{const t=new TextDecoder("utf-8"),n=JSON.parse(t.decode(e));E.AddFrameToMaterial(n,this.props.globalState,this.props.globalState.nodeMaterial)}),void 0,!0)}save(){const e=E.Serialize(this.props.globalState.nodeMaterial,this.props.globalState);H.DownloadAsFile(this.props.globalState.hostDocument,e,"nodeMaterial.json")}customSave(){this.setState({uploadInProgress:!0}),this.props.globalState.onLogRequiredObservable.notifyObservers(new w("Saving your material to Babylon.js snippet server...",!1)),this.props.globalState.customSave.action(E.Serialize(this.props.globalState.nodeMaterial,this.props.globalState)).then((()=>{this.props.globalState.onLogRequiredObservable.notifyObservers(new w("Material saved successfully",!1)),this.setState({uploadInProgress:!1})})).catch((e=>{this.props.globalState.onLogRequiredObservable.notifyObservers(new w(e,!0)),this.setState({uploadInProgress:!1})}))}saveToSnippetServer(){const e=this.props.globalState.nodeMaterial,t=new XMLHttpRequest,n=E.Serialize(e,this.props.globalState);t.onreadystatechange=()=>{if(4==t.readyState)if(200==t.status){const n=JSON.parse(t.responseText),r=e.snippetId;e.snippetId=n.id,n.version&&"0"!=n.version&&(e.snippetId+="#"+n.version),this.forceUpdate(),navigator.clipboard&&navigator.clipboard.writeText(e.snippetId);const o=window;o.Playground&&r&&o.Playground.onRequestCodeChangeObservable.notifyObservers({regex:new RegExp(r,"g"),replace:e.snippetId}),this.props.globalState.hostDocument.defaultView.alert("NodeMaterial saved with ID: "+e.snippetId+" (please note that the id was also saved to your clipboard)")}else this.props.globalState.hostDocument.defaultView.alert(`Unable to save your node material. It may be too large (${(r.payload.length/1024).toFixed(2)} KB) because of embedded textures. Please reduce texture sizes or point to a specific url instead of embedding them and try again.`)},t.open("POST",s.NodeMaterial.SnippetUrl+(e.snippetId?"/"+e.snippetId:""),!0),t.setRequestHeader("Content-Type","application/json");const r={payload:JSON.stringify({nodeMaterial:n}),name:"",description:"",tags:""};t.send(JSON.stringify(r))}loadFromSnippet(){const e=this.props.globalState.nodeMaterial,t=e.getScene(),n=this.props.globalState.hostDocument.defaultView.prompt("Please enter the snippet ID to use");n&&(this.props.globalState.stateManager.onSelectionChangedObservable.notifyObservers(null),s.NodeMaterial.ParseFromSnippetAsync(n,t,"",e).then((()=>{e.build(),this.changeMode(this.props.globalState.nodeMaterial.mode,!0,!1)||this.props.globalState.onResetRequiredObservable.notifyObservers(!0),this.props.globalState.onClearUndoStack.notifyObservers()})).catch((e=>{this.props.globalState.hostDocument.defaultView.alert("Unable to load your node material: "+e)})))}changeMode(e,n=!1,r=!0){if(this.props.globalState.mode===e)return!1;if(!n&&!this.props.globalState.hostDocument.defaultView.confirm("Are your sure? You will lose your current changes (if any) if they are not saved!"))return this._modeSelect.current?.setValue(this.props.globalState.mode),!1;if(n&&this._modeSelect.current?.setValue(e),r)switch(e){case s.NodeMaterialModes.Material:this.props.globalState.nodeMaterial.setToDefault();break;case s.NodeMaterialModes.PostProcess:this.props.globalState.nodeMaterial.setToDefaultPostProcess();break;case s.NodeMaterialModes.Particle:this.props.globalState.nodeMaterial.setToDefaultParticle();break;case s.NodeMaterialModes.ProceduralTexture:this.props.globalState.nodeMaterial.setToDefaultProceduralTexture();break;case s.NodeMaterialModes.GaussianSplatting:(0,s.SetToDefaultGaussianSplatting)(this.props.globalState.nodeMaterial)}switch(e){case s.NodeMaterialModes.Material:this.props.globalState.previewType=t.Sphere;break;case s.NodeMaterialModes.Particle:this.props.globalState.previewType=t.Bubbles;break;case s.NodeMaterialModes.GaussianSplatting:this.props.globalState.previewType=t.BricksSkull}return this.props.globalState.listOfCustomPreviewFiles=[],this.props.globalState.previewFile=void 0,s.DataStorage.WriteNumber("PreviewType",this.props.globalState.previewType),this.props.globalState.mode=e,this.props.globalState.onResetRequiredObservable.notifyObservers(!0),this.props.globalState.onClearUndoStack.notifyObservers(),this.props.globalState.envFile=void 0,s.DataStorage.WriteNumber("EnvType",this.props.globalState.envType),!0}render(){if(this.state.currentNode)return(0,l.jsxs)("div",{id:"propertyTab",children:[(0,l.jsxs)("div",{id:"header",children:[(0,l.jsx)("img",{id:"logo",src:"https://www.babylonjs.com/Assets/logo-babylonjs-social-twitter.png"}),(0,l.jsx)("div",{id:"title",children:"NODE MATERIAL EDITOR"})]}),this.state.currentNode?.renderProperties()||this.state.currentNodePort?.node.renderProperties()]});if(this.state.currentFrameNodePort&&this.state.currentFrame)return(0,l.jsx)(co,{globalState:this.props.globalState,stateManager:this.props.globalState.stateManager,frame:this.state.currentFrame,frameNodePort:this.state.currentFrameNodePort});if(this.state.currentNodePort)return(0,l.jsx)(po,{stateManager:this.props.globalState.stateManager,nodePort:this.state.currentNodePort});if(this.state.currentFrame)return(0,l.jsx)(Wr,{globalState:this.props.globalState,frame:this.state.currentFrame});const e=s.DataStorage.ReadNumber("GridSize",20),t=[{label:"Material",value:s.NodeMaterialModes.Material},{label:"Post Process",value:s.NodeMaterialModes.PostProcess},{label:"Particle",value:s.NodeMaterialModes.Particle},{label:"Procedural",value:s.NodeMaterialModes.ProceduralTexture},{label:"Gaussian Splatting",value:s.NodeMaterialModes.GaussianSplatting}],n=[{label:"Combine",value:s.Constants.ALPHA_COMBINE},{label:"One one",value:s.Constants.ALPHA_ONEONE},{label:"Add",value:s.Constants.ALPHA_ADD},{label:"Subtract",value:s.Constants.ALPHA_SUBTRACT},{label:"Multiply",value:s.Constants.ALPHA_MULTIPLY},{label:"Maximized",value:s.Constants.ALPHA_MAXIMIZED},{label:"Pre-multiplied",value:s.Constants.ALPHA_PREMULTIPLIED}];return(0,l.jsxs)("div",{id:"propertyTab",children:[(0,l.jsxs)("div",{id:"header",children:[(0,l.jsx)("img",{id:"logo",src:"https://www.babylonjs.com/Assets/logo-babylonjs-social-twitter.png"}),(0,l.jsx)("div",{id:"title",children:"NODE MATERIAL EDITOR"})]}),(0,l.jsxs)("div",{children:[(0,l.jsxs)(O,{title:"GENERAL",children:[(0,l.jsx)(yo,{ref:this._modeSelect,label:"Mode",target:this,extractValue:()=>this.props.globalState.mode,options:t,onSelect:e=>this.changeMode(e),propertyName:""}),(0,l.jsx)(yo,{label:"Engine",target:this,extractValue:()=>this.props.globalState.engine,options:[{label:"WebGL",value:0},{label:"WebGPU",value:1}],onSelect:e=>{this.props.globalState.engine=e,this.forceUpdate()},propertyName:""}),(0,l.jsx)(uo,{label:"Version",value:s.Engine.Version}),(0,l.jsx)(uo,{label:"Help",value:"doc.babylonjs.com",underline:!0,onLink:()=>this.props.globalState.hostDocument.defaultView.open("https://doc.babylonjs.com/how_to/node_material","_blank")}),(0,l.jsx)(Vr,{label:"Comment",multilines:!0,lockObject:this.props.globalState.lockObject,value:this.props.globalState.nodeMaterial.comment,target:this.props.globalState.nodeMaterial,propertyName:"comment"}),(0,l.jsx)(Gr,{label:"Reset to default",onClick:()=>{switch(this.props.globalState.mode){case s.NodeMaterialModes.Material:this.props.globalState.nodeMaterial.setToDefault();break;case s.NodeMaterialModes.PostProcess:this.props.globalState.nodeMaterial.setToDefaultPostProcess();break;case s.NodeMaterialModes.Particle:this.props.globalState.nodeMaterial.setToDefaultParticle();break;case s.NodeMaterialModes.ProceduralTexture:this.props.globalState.nodeMaterial.setToDefaultProceduralTexture();break;case s.NodeMaterialModes.GaussianSplatting:(0,s.SetToDefaultGaussianSplatting)(this.props.globalState.nodeMaterial)}this.props.globalState.onResetRequiredObservable.notifyObservers(!0),this.props.globalState.onClearUndoStack.notifyObservers()}})]}),(0,l.jsxs)(O,{title:"UI",children:[(0,l.jsx)(Gr,{label:"Zoom to fit",onClick:()=>{this.props.globalState.onZoomToFitRequiredObservable.notifyObservers()}}),(0,l.jsx)(Gr,{label:"Reorganize",onClick:()=>{this.props.globalState.onReOrganizedRequiredObservable.notifyObservers()}})]}),(0,l.jsxs)(O,{title:"OPTIONS",children:[(0,l.jsx)(Z,{label:"Embed textures when saving",isSelected:()=>s.DataStorage.ReadBoolean("EmbedTextures",!0),onSelect:e=>{s.DataStorage.WriteBoolean("EmbedTextures",e)}}),(0,l.jsx)(Sr,{lockObject:this.props.lockObject,label:"Grid size",minimum:0,maximum:100,step:5,decimalCount:0,directValue:e,onChange:e=>{s.DataStorage.WriteNumber("GridSize",e),this.props.globalState.stateManager.onGridSizeChanged.notifyObservers(),this.forceUpdate()}}),(0,l.jsx)(Z,{label:"Show grid",isSelected:()=>s.DataStorage.ReadBoolean("ShowGrid",!0),onSelect:e=>{s.DataStorage.WriteBoolean("ShowGrid",e),this.props.globalState.stateManager.onGridSizeChanged.notifyObservers()}})]}),(0,l.jsxs)(O,{title:"FILE",children:[(0,l.jsx)(Q,{label:"Load",onClick:e=>this.load(e),accept:".json"}),(0,l.jsx)(Gr,{label:"Save",onClick:()=>{this.save()}}),(0,l.jsx)(Gr,{label:"Generate code",onClick:()=>{H.DownloadAsFile(this.props.globalState.hostDocument,this.props.globalState.nodeMaterial.generateCode(),"code.txt")}}),(0,l.jsx)(Gr,{label:"Export shaders",onClick:()=>{this.props.globalState.nodeMaterial.build(),H.DownloadAsFile(this.props.globalState.hostDocument,this.props.globalState.nodeMaterial.compiledShaders,"shaders.txt")}}),this.props.globalState.customSave&&(0,l.jsx)(Gr,{label:this.props.globalState.customSave.label,isDisabled:this.state.uploadInProgress,onClick:()=>{this.customSave()}}),(0,l.jsx)(Q,{label:"Load Frame",onClick:e=>this.loadFrame(e),accept:".json"})]}),!this.props.globalState.customSave&&(0,l.jsxs)(O,{title:"SNIPPET",children:[this.props.globalState.nodeMaterial.snippetId&&(0,l.jsx)(uo,{label:"Snippet ID",value:this.props.globalState.nodeMaterial.snippetId}),(0,l.jsx)(Gr,{label:"Load from snippet server",onClick:()=>this.loadFromSnippet()}),(0,l.jsx)(Gr,{label:"Save to snippet server",onClick:()=>{this.saveToSnippetServer()}})]}),(0,l.jsxs)(O,{title:"TRANSPARENCY",children:[(0,l.jsx)(Z,{label:"Force alpha blending",target:this.props.globalState.nodeMaterial,propertyName:"forceAlphaBlending",onValueChanged:()=>this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(null)}),(0,l.jsx)(yo,{label:"Alpha mode",options:n,target:this.props.globalState.nodeMaterial,propertyName:"alphaMode",onSelect:()=>this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(null)})]}),(0,l.jsx)(Fr,{lockObject:this.props.lockObject,globalState:this.props.globalState,inputs:this.props.globalState.nodeMaterial.getInputBlocks()})]})]})}}class wo extends a.Component{render(){return i.createPortal(this.props.children,this.props.globalState.hostElement)}}var Mo=r(5779),ko={};ko.styleTagTransform=v(),ko.setAttributes=g(),ko.insert=A().bind(null,"head"),ko.domAPI=p(),ko.insertStyleElement=C(),u()(Mo.A,ko);const No=Mo.A&&Mo.A.locals?Mo.A.locals:void 0,_o=e=>{const[t,n]=(0,a.useState)(e.message),[r,o]=(0,a.useState)(e.isError);return(0,a.useEffect)((()=>{n(e.message),o(e.isError)}),[e]),t?(0,l.jsx)("div",{className:No["dialog-container"],children:(0,l.jsxs)("div",{className:No.dialog,children:[(0,l.jsx)("div",{className:No["dialog-message"],children:t}),(0,l.jsx)("div",{className:No["dialog-buttons"],children:(0,l.jsx)("div",{className:ao({"dialog-button-ok":!0,error:r},No),onClick:()=>{n(""),e.onClose&&e.onClose()},children:"OK"})})]})}):null};class So{_serializeMaterial(){const e=this._nodeMaterial;let t=!1;{const n=e.getAllTextureBlocks();for(const e of n){const n=e.texture;if(!n||e.hasImageSource)continue;let r=!1;for(const e of this._engine.getLoadedTexturesCache())if(e.uniqueId===n._texture?.uniqueId){r=!0;break}if(!r){t=!0;break}}}const n=s.Texture.SerializeBuffers;s.Texture.SerializeBuffers=t,s.Texture._SerializeInternalTextureUniqueId=!0;const r=e.serialize();return s.Texture.SerializeBuffers=n,s.Texture._SerializeInternalTextureUniqueId=!1,r}constructor(e,t){this._nodeMaterial=t.nodeMaterial,this._globalState=t,this._onBuildObserver=this._nodeMaterial.onBuildObservable.add((()=>{this._updatePreview()})),this._onPreviewCommandActivatedObserver=t.stateManager.onPreviewCommandActivated.add((e=>{e&&(this._currentType=-1,this._scene.disableDepthRenderer()),this._refreshPreviewMesh()})),this._onLightUpdatedObserver=t.onLightUpdated.add((()=>{this._prepareLights()})),this._onBackgroundHDRUpdatedObserver=t.onBackgroundHDRUpdated.add((()=>{this._prepareBackgroundHDR()})),this._onUpdateRequiredObserver=t.stateManager.onUpdateRequiredObservable.add((()=>{this._updatePreview()})),this._onPreviewBackgroundChangedObserver=t.onPreviewBackgroundChanged.add((()=>{this._scene.clearColor=this._globalState.backgroundColor})),this._onAnimationCommandActivatedObserver=t.onAnimationCommandActivated.add((()=>{this._handleAnimations()})),this._onBackFaceCullingChangedObserver=t.onBackFaceCullingChanged.add((()=>{this._material.backFaceCulling=this._globalState.backFaceCulling})),this._onDepthPrePassChangedObserver=t.onDepthPrePassChanged.add((()=>{this._material.needDepthPrePass=this._globalState.depthPrePass})),this._initAsync(e)}async _initAsync(e){1===this._nodeMaterial.shaderLanguage?(this._engine=new s.WebGPUEngine(e),await this._engine.initAsync()):this._engine=new s.Engine(e),this._scene=new s.Scene(this._engine),this._scene.clearColor=this._globalState.backgroundColor,this._scene.ambientColor=new s.Color3(1,1,1),this._camera=new s.ArcRotateCamera("Camera",0,.8,4,s.Vector3.Zero(),this._scene),this._camera.lowerRadiusLimit=3,this._camera.upperRadiusLimit=10,this._camera.wheelPrecision=20,this._camera.minZ=.1,this._camera.attachControl(!1),this._lightParent=new s.TransformNode("LightParent",this._scene),this._globalState.filesInput=new s.FilesInput(this._engine,this._scene,((e,t)=>{this._meshes.push(...t.meshes),this._prepareScene()}),null,null,null,null,null,(()=>{this._reset()}),!0);const t=this._engine.getRenderingCanvas();if(t){const e=e=>{e.stopPropagation(),e.preventDefault()};t.addEventListener("dragenter",e,!1),t.addEventListener("dragover",e,!1);const n=e=>{e.stopPropagation(),e.preventDefault(),this._globalState.onDropEventReceivedObservable.notifyObservers(e)};t.addEventListener("drop",n,!1)}let n;this._refreshPreviewMesh(),this._engine.runRenderLoop((()=>{this._engine.resize(),this._scene.render()})),this._scene.onPointerObservable.add((e=>{if(this._globalState.controlCamera)return;if(e.type===s.PointerEventTypes.POINTERUP)return void(n=void 0);if(1!==e.event.buttons)return;void 0===n&&(n=e.event.offsetX);const t=.01*(n-e.event.offsetX);this._lightParent.rotation.y+=t,n=e.event.offsetX}))}_reset(){this._globalState.envType=t.Room,this._globalState.previewType=t.Box,this._globalState.listOfCustomPreviewFiles=[],this._scene.meshes.forEach((e=>e.dispose())),this._globalState.onRefreshPreviewMeshControlComponentRequiredObservable.notifyObservers(),this._refreshPreviewMesh(!0)}_handleAnimations(){if(this._scene.stopAllAnimations(),this._globalState.rotatePreview)for(const e of this._scene.rootNodes){const t=e;"TransformNode"!==t.getClassName()&&"Mesh"!==t.getClassName()&&"GroundMesh"!==t.getClassName()||(t.rotationQuaternion&&(t.rotation=t.rotationQuaternion.toEulerAngles(),t.rotationQuaternion=null),s.Animation.CreateAndStartAnimation("turnTable",e,"rotation.y",60,1200,t.rotation.y,t.rotation.y+2*Math.PI,1))}}_prepareLights(){const e=this._scene.lights.slice(0);for(const t of e)t.dispose();if(this._globalState.hemisphericLight&&new s.HemisphericLight("Hemispheric light",new s.Vector3(0,1,0),this._scene),this._globalState.directionalLight0){const e=new s.DirectionalLight("Directional light #0",new s.Vector3(.841626576496605,-.2193391004130599,-.49351298337996535),this._scene);e.intensity=.9,e.diffuse=new s.Color3(.9294117647058824,.9725490196078431,.996078431372549),e.specular=new s.Color3(.9294117647058824,.9725490196078431,.996078431372549),e.parent=this._lightParent}if(this._globalState.directionalLight1){const e=new s.DirectionalLight("Directional light #1",new s.Vector3(-.9519937437504213,-.24389315636999764,-.1849974057546125),this._scene);e.intensity=1.2,e.specular=new s.Color3(.9803921568627451,.9529411764705882,.7725490196078432),e.diffuse=new s.Color3(.9803921568627451,.9529411764705882,.7725490196078432),e.parent=this._lightParent}}_prepareBackgroundHDR(){this._scene.environmentTexture=null,this._hdrSkyBox&&this._scene.removeMesh(this._hdrSkyBox),this._globalState.backgroundHDR&&(this._scene.environmentTexture=this._hdrTexture,this._hdrSkyBox=this._scene.createDefaultSkybox(this._hdrTexture)),this._updatePreview()}_prepareScene(){switch(this._camera.useFramingBehavior=this._globalState.mode===s.NodeMaterialModes.Material,this._globalState.mode){case s.NodeMaterialModes.Material:{this._prepareLights(),this._globalState.envFile||(this._globalState.backgroundHDR=!1),this._prepareBackgroundHDR();const e=this._camera.getBehaviorByName("Framing");setTimeout((()=>{if(e.framingTime=0,e.elevationReturnTime=-1,this._scene.meshes.length){const t=this._scene.getWorldExtends();this._camera.lowerRadiusLimit=null,this._camera.upperRadiusLimit=null,e.zoomOnBoundingInfo(t.min,t.max)}this._camera.pinchPrecision=200/this._camera.radius,this._camera.upperRadiusLimit=5*this._camera.radius})),this._camera.wheelDeltaPercentage=.01,this._camera.pinchDeltaPercentage=.01,this._handleAnimations();break}case s.NodeMaterialModes.PostProcess:case s.NodeMaterialModes.ProceduralTexture:this._camera.radius=4,this._camera.upperRadiusLimit=10;break;case s.NodeMaterialModes.Particle:this._camera.radius=this._globalState.previewType===t.Explosion?50:this._globalState.previewType===t.DefaultParticleSystem?6:20,this._camera.upperRadiusLimit=5e3,this._globalState.particleSystemBlendMode=this._particleSystem?.blendMode??s.ParticleSystem.BLENDMODE_STANDARD;break;case s.NodeMaterialModes.GaussianSplatting:this._camera.radius=6,this._camera.upperRadiusLimit=5e3}this._updatePreview()}_refreshPreviewMesh(e){if(this._globalState.mode===s.NodeMaterialModes.Material)switch(this._globalState.envType){case t.Room:this._hdrTexture=new s.CubeTexture(So.DefaultEnvironmentURL,this._scene),this._hdrTexture&&this._prepareBackgroundHDR();break;case t.Custom:{const e=new Blob([this._globalState.envFile],{type:"octet/stream"}),t=new FileReader;t.onload=e=>{const t=e.target.result;this._hdrTexture=new s.CubeTexture(t,this._scene,void 0,!1,void 0,void 0,void 0,void 0,void 0,".env"),this._prepareBackgroundHDR()},t.readAsDataURL(e);break}}else this._scene.environmentTexture=null;if(this._currentType!==this._globalState.previewType||this._currentType===t.Custom||e){if(this._currentType=this._globalState.previewType,this._meshes&&this._meshes.length)for(const e of this._meshes)e.dispose();this._meshes=[],this._layer&&(this._layer.dispose(),this._layer=null);const e=this._scene.lights.slice(0);for(const t of e)t.dispose();this._engine.releaseEffects(),this._particleSystem&&(this._particleSystem.onBeforeDrawParticlesObservable.clear(),this._particleSystem.onDisposeObservable.clear(),this._particleSystem.stop(),this._particleSystem.dispose(),this._particleSystem=null),s.SceneLoader.ShowLoadingScreen=!1,this._globalState.onIsLoadingChanged.notifyObservers(!0);const n=e=>{e.bakeCurrentTransformIntoVertices(),e.refreshBoundingInfo(),e.parent=null};if(this._globalState.mode===s.NodeMaterialModes.Material)switch(this._globalState.previewType){case t.Box:return void s.SceneLoader.AppendAsync("https://assets.babylonjs.com/meshes/","roundedCube.glb",this._scene).then((()=>{n(this._scene.getMeshByName("__root__").getChildMeshes(!0)[0]),this._meshes.push(...this._scene.meshes),this._prepareScene()}));case t.Sphere:s.SceneLoader.AppendAsync("https://assets.babylonjs.com/meshes/","previewSphere.glb",this._scene).then((()=>{n(this._scene.getMeshByName("__root__").getChildMeshes(!0)[0]),this._meshes.push(...this._scene.meshes),this._prepareScene()}));break;case t.Torus:this._meshes.push((0,s.CreateTorus)("dummy-torus",{diameter:2,thickness:.5,tessellation:32},this._scene));break;case t.Cylinder:return void s.SceneLoader.AppendAsync("https://assets.babylonjs.com/meshes/","roundedCylinder.glb",this._scene).then((()=>{this._meshes.push(...this._scene.meshes),this._prepareScene()}));case t.Plane:s.SceneLoader.AppendAsync("https://assets.babylonjs.com/meshes/","highPolyPlane.glb",this._scene).then((()=>{n(this._scene.getMeshByName("__root__").getChildMeshes(!0)[0]),this._meshes.push(...this._scene.meshes),this._prepareScene()}));break;case t.ShaderBall:return void s.SceneLoader.AppendAsync("https://assets.babylonjs.com/meshes/","shaderBall.glb",this._scene).then((()=>{this._meshes.push(...this._scene.meshes),this._prepareScene()}));case t.Custom:return void this._globalState.filesInput.loadFiles({target:{files:this._globalState.listOfCustomPreviewFiles}})}else if(this._globalState.mode===s.NodeMaterialModes.ProceduralTexture)this._layer=new s.Layer("proceduralLayer",null,this._scene,!1);else if(this._globalState.mode===s.NodeMaterialModes.Particle)switch(this._globalState.previewType){case t.DefaultParticleSystem:this._particleSystem=s.ParticleHelper.CreateDefault(new s.Vector3(0,0,0),500,this._scene),this._particleSystem.blendMode=s.DataStorage.ReadNumber("DefaultParticleSystemBlendMode",s.ParticleSystem.BLENDMODE_ONEONE),this._particleSystem.start();break;case t.Bubbles:this._particleSystem=new s.ParticleSystem("particles",4e3,this._scene),this._particleSystem.particleTexture=new s.Texture("https://assets.babylonjs.com/particles/textures/explosion/Flare.png",this._scene),this._particleSystem.minSize=.1,this._particleSystem.maxSize=1,this._particleSystem.minLifeTime=.5,this._particleSystem.maxLifeTime=5,this._particleSystem.minEmitPower=.5,this._particleSystem.maxEmitPower=3,this._particleSystem.createBoxEmitter(new s.Vector3(-1,1,-1),new s.Vector3(1,1,1),new s.Vector3(-.1,-.1,-.1),new s.Vector3(.1,.1,.1)),this._particleSystem.emitRate=100,this._particleSystem.blendMode=s.DataStorage.ReadNumber("DefaultParticleSystemBlendMode",s.ParticleSystem.BLENDMODE_ONEONE),this._particleSystem.color1=new s.Color4(1,1,0,1),this._particleSystem.color2=new s.Color4(1,.5,0,1),this._particleSystem.gravity=new s.Vector3(0,-1,0),this._particleSystem.start();break;case t.Explosion:return void this._loadParticleSystem(this._globalState.previewType,1);case t.Fire:case t.Rain:case t.Smoke:return void this._loadParticleSystem(this._globalState.previewType);case t.Custom:return void(0,s.ReadFile)(this._globalState.previewFile,(e=>{this._particleSystem=s.ParticleSystem.Parse(JSON.parse(e),this._scene,""),this._particleSystem.start(),this._prepareScene()}),void 0,!1,(e=>{console.log(e)}))}else if(this._globalState.mode===s.NodeMaterialModes.GaussianSplatting)switch(this._globalState.previewType){case t.Parrot:s.SceneLoader.AppendAsync("https://assets.babylonjs.com/splats/","gs_Sqwakers_trimed.splat",this._scene).then((()=>{this._meshes.push(...this._scene.meshes),this._prepareScene()}));break;case t.BricksSkull:s.SceneLoader.AppendAsync("https://assets.babylonjs.com/splats/","gs_Skull.splat",this._scene).then((()=>{this._meshes.push(...this._scene.meshes),this._prepareScene()}));break;case t.Plants:s.SceneLoader.AppendAsync("https://assets.babylonjs.com/splats/","gs_Plants.splat",this._scene).then((()=>{this._meshes.push(...this._scene.meshes),this._prepareScene()}));break;case t.Custom:return void this._globalState.filesInput.loadFiles({target:{files:this._globalState.listOfCustomPreviewFiles}})}}}_loadParticleSystem(e,n=0,r=!0){let o="";switch(e){case t.Explosion:o="explosion";break;case t.Fire:o="fire";break;case t.Rain:o="rain";break;case t.Smoke:o="smoke"}s.ParticleHelper.CreateAsync(o,this._scene).then((t=>{for(let r=0;r<t.systems.length;++r)r==n?(this._particleSystem=t.systems[r],this._particleSystem.disposeOnStop=!0,this._particleSystem.onDisposeObservable.add((()=>{this._loadParticleSystem(e,n,!1)})),this._particleSystem.start()):t.systems[r].dispose();r?this._prepareScene():this._updatePreview()}))}_forceCompilationAsync(e,t){return e.forceCompilationAsync(t)}_updatePreview(){try{const e=this._serializeMaterial(),t=s.NodeMaterial.IgnoreTexturesAtLoadTime;s.NodeMaterial.IgnoreTexturesAtLoadTime=!1;const n=s.NodeMaterial.Parse(e,this._scene,"",this._nodeMaterial.shaderLanguage);switch(s.NodeMaterial.IgnoreTexturesAtLoadTime=t,n.backFaceCulling=this._globalState.backFaceCulling,n.needDepthPrePass=this._globalState.depthPrePass,this._postprocess&&(this._postprocess.dispose(this._camera),this._postprocess=null),this._proceduralTexture&&(this._proceduralTexture.dispose(),this._proceduralTexture=null),this._globalState.mode){case s.NodeMaterialModes.PostProcess:{this._globalState.onIsLoadingChanged.notifyObservers(!1),this._postprocess=n.createPostProcess(this._camera,1,s.Constants.TEXTURE_NEAREST_SAMPLINGMODE,this._engine);const e=n.getBlockByPredicate((e=>e instanceof s.CurrentScreenBlock));e&&this._postprocess&&(this._postprocess.externalTextureSamplerBinding=!0,this._postprocess.onApplyObservable.add((t=>{t.setTexture("textureSampler",e.texture)}))),this._material&&this._material.dispose(),this._material=n;break}case s.NodeMaterialModes.ProceduralTexture:this._globalState.onIsLoadingChanged.notifyObservers(!1),this._proceduralTexture=n.createProceduralTexture(512,this._scene),this._material&&this._material.dispose(),this._layer&&(this._layer.texture=this._proceduralTexture);break;case s.NodeMaterialModes.Particle:this._globalState.onIsLoadingChanged.notifyObservers(!1),this._particleSystem.onBeforeDrawParticlesObservable.clear(),this._particleSystem.onBeforeDrawParticlesObservable.add((e=>{const t=n.getBlockByPredicate((e=>e instanceof s.ParticleTextureBlock));t&&t.texture&&e&&e.setTexture("diffuseSampler",t.texture)})),n.createEffectForParticles(this._particleSystem),this._particleSystem.blendMode=this._globalState.particleSystemBlendMode,this._material&&this._material.dispose(),this._material=n;break;default:if(this._meshes.length){const e=this._meshes.map((e=>(e.hasVertexAlpha=!1,this._forceCompilationAsync(n,e))));Promise.all(e).then((()=>{for(const e of this._meshes)e.material=n;this._material&&this._material.dispose(),this._material=n,this._globalState.onIsLoadingChanged.notifyObservers(!1)})).catch((e=>{this._globalState.onLogRequiredObservable.notifyObservers(new w("Shader compilation error:\r\n"+e,!0)),this._globalState.onIsLoadingChanged.notifyObservers(!1)}))}else this._material=n}}catch(e){this._globalState.onIsLoadingChanged.notifyObservers(!1)}}dispose(){this._nodeMaterial.onBuildObservable.remove(this._onBuildObserver),this._globalState.stateManager.onPreviewCommandActivated.remove(this._onPreviewCommandActivatedObserver),this._globalState.stateManager.onUpdateRequiredObservable.remove(this._onUpdateRequiredObserver),this._globalState.onAnimationCommandActivated.remove(this._onAnimationCommandActivatedObserver),this._globalState.onPreviewBackgroundChanged.remove(this._onPreviewBackgroundChangedObserver),this._globalState.onBackFaceCullingChanged.remove(this._onBackFaceCullingChangedObserver),this._globalState.onDepthPrePassChanged.remove(this._onDepthPrePassChangedObserver),this._globalState.onLightUpdated.remove(this._onLightUpdatedObserver),this._globalState.onBackgroundHDRUpdated.remove(this._onBackgroundHDRUpdatedObserver),this._material&&this._material.dispose(!1,!0),this._camera.dispose();for(const e of this._meshes)e.dispose();this._scene.dispose(),this._engine.dispose()}}So.DefaultEnvironmentURL="https://assets.babylonjs.com/environments/environmentSpecular.env";class Lo extends a.Component{constructor(e){super(e),this._colorInputRef=a.createRef(),this._filePickerRef=a.createRef(),this._envPickerRef=a.createRef(),this._onResetRequiredObserver=this.props.globalState.onResetRequiredObservable.add((()=>{this.forceUpdate()})),this._onDropEventObserver=this.props.globalState.onDropEventReceivedObservable.add((e=>{this.useCustomMesh(e)})),this._onRefreshPreviewMeshControlComponentRequiredObserver=this.props.globalState.onRefreshPreviewMeshControlComponentRequiredObservable.add((()=>{this.forceUpdate()}))}componentWillUnmount(){this.props.globalState.onResetRequiredObservable.remove(this._onResetRequiredObserver),this.props.globalState.onDropEventReceivedObservable.remove(this._onDropEventObserver),this.props.globalState.onRefreshPreviewMeshControlComponentRequiredObservable.remove(this._onRefreshPreviewMeshControlComponentRequiredObserver)}changeMeshType(e){this.props.globalState.previewType!==e&&(this.props.globalState.previewType=e,this.props.globalState.stateManager.onPreviewCommandActivated.notifyObservers(!1),s.DataStorage.WriteNumber("PreviewType",e),this.forceUpdate())}useCustomMesh(e){const n=e.target?.files||e.dataTransfer?.files;if(n&&n.length){const e=n[0];this.props.globalState.previewFile=e,this.props.globalState.previewType=t.Custom,this.props.globalState.listOfCustomPreviewFiles=[...n],this.props.globalState.stateManager.onPreviewCommandActivated.notifyObservers(!1),this.forceUpdate()}this._filePickerRef.current&&(this._filePickerRef.current.value="")}useCustomEnv(e){const n=e.target?.files||e.dataTransfer?.files;if(n&&n.length){const e=n[0];this.props.globalState.envFile=e,this.props.globalState.envType=t.Custom,this.props.globalState.stateManager.onPreviewCommandActivated.notifyObservers(!1),this.forceUpdate()}this._envPickerRef.current&&(this._envPickerRef.current.value="")}onPopUp(){this.props.togglePreviewAreaComponent()}changeAnimation(){this.props.globalState.rotatePreview=!this.props.globalState.rotatePreview,this.props.globalState.onAnimationCommandActivated.notifyObservers(),this.forceUpdate()}changeBackground(e){const t=s.Color3.FromHexString(e);s.DataStorage.WriteNumber("BackgroundColorR",t.r),s.DataStorage.WriteNumber("BackgroundColorG",t.g),s.DataStorage.WriteNumber("BackgroundColorB",t.b);const n=s.Color4.FromColor3(t,1);this.props.globalState.backgroundColor=n,this.props.globalState.onPreviewBackgroundChanged.notifyObservers()}changeBackgroundClick(){this._colorInputRef.current?.click()}render(){const e=[{label:"Cube",value:t.Box},{label:"Cylinder",value:t.Cylinder},{label:"Plane",value:t.Plane},{label:"Shader ball",value:t.ShaderBall},{label:"Sphere",value:t.Sphere},{label:"Load...",value:t.Custom+1}],n=[{label:"Default",value:t.DefaultParticleSystem},{label:"Bubbles",value:t.Bubbles},{label:"Explosion",value:t.Explosion},{label:"Fire",value:t.Fire},{label:"Rain",value:t.Rain},{label:"Smoke",value:t.Smoke},{label:"Load...",value:t.Custom+1}],r=[{label:"Default",value:t.Parrot},{label:"Bricks Skull",value:t.BricksSkull},{label:"Plants",value:t.Plants},{label:"Load...",value:t.Custom+1}];this.props.globalState.listOfCustomPreviewFiles.length>0&&(e.splice(0,0,{label:"Custom",value:t.Custom}),n.splice(0,0,{label:"Custom",value:t.Custom}),r.splice(0,0,{label:"Custom",value:t.Custom}));const o=this.props.globalState.mode===s.NodeMaterialModes.Particle?n:this.props.globalState.mode===s.NodeMaterialModes.GaussianSplatting?r:e,a=this.props.globalState.mode===s.NodeMaterialModes.Particle?".json":".*";return(0,l.jsxs)("div",{id:"preview-mesh-bar",children:[(this.props.globalState.mode===s.NodeMaterialModes.Material||this.props.globalState.mode===s.NodeMaterialModes.Particle||this.props.globalState.mode===s.NodeMaterialModes.GaussianSplatting)&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(yo,{label:"",options:o,target:this.props.globalState,propertyName:"previewType",noDirectUpdate:!0,onSelect:e=>{e!==t.Custom+1?this.changeMeshType(e):this._filePickerRef.current?.click()}}),(0,l.jsxs)("div",{style:{display:"none"},title:"Preview with a custom mesh",children:[(0,l.jsx)("input",{ref:this._filePickerRef,multiple:!0,id:"file-picker",type:"file",onChange:e=>this.useCustomMesh(e),accept:a}),(0,l.jsx)("input",{ref:this._envPickerRef,id:"env-picker",accept:".env",type:"file",onChange:e=>this.useCustomEnv(e)})]})]}),this.props.globalState.mode===s.NodeMaterialModes.Material&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("div",{id:"env-button",title:"Environment image",className:"button",onClick:e=>this._envPickerRef.current?.click(),children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyBjbGFzcz0iaWNvbiIgd2lkdGg9IjY0cHgiIGhlaWdodD0iNjQuMDBweCIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNmZmZmZmYiIGQ9Ik0zMjAgNjI3LjJsMjkuODY2NjY3LTI5Ljg2NjY2NyAyOS44NjY2NjYgMjkuODY2NjY3IDY0IDY0IDE0OS4zMzMzMzQtMTQ5LjMzMzMzMyAyOS44NjY2NjYtMjkuODY2NjY3IDI5Ljg2NjY2NyAyOS44NjY2NjcgMTk2LjI2NjY2NyAxOTYuMjY2NjY2VjI5OC42NjY2NjdIMjEzLjMzMzMzM3Y0MzUuMmwxMDYuNjY2NjY3LTEwNi42NjY2Njd6IG0yOS44NjY2NjcgMjkuODY2NjY3TDIzOC45MzMzMzMgNzY4aDEzNi41MzMzMzRsLTQuMjY2NjY3LTQuMjY2NjY3IDQyLjY2NjY2Ny00Mi42NjY2NjYtNjQtNjR6TTgyMy40NjY2NjcgNzY4bC0xOTYuMjY2NjY3LTE5Ni4yNjY2NjctMTk2LjI2NjY2NyAxOTYuMjY2NjY3aDM5Mi41MzMzMzR6TTg5NiAyNTZ2NTU0LjY2NjY2N0gxNzAuNjY2NjY3VjI1Nmg3MjUuMzMzMzMzeiIgIC8+PC9zdmc+",alt:"",id:"env-picker-image"})}),(0,l.jsx)("div",{title:"Turn-table animation",onClick:()=>this.changeAnimation(),className:"button",id:"play-button",children:this.props.globalState.rotatePreview?(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA1OS4xICg4NjE0NCkgLSBodHRwczovL3NrZXRjaC5jb20gLS0+DQogIDx0aXRsZT5pY19mbHVlbnRfcGF1c2VfMjRfcmVndWxhcjwvdGl0bGU+DQogIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPg0KICA8ZyBpZD0i8J+UjS1Qcm9kdWN0LUljb25zIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4NCiAgICA8ZyBpZD0iaWNfZmx1ZW50X3BhdXNlXzI0X3JlZ3VsYXIiIGZpbGw9IndoaXRlIiBmaWxsLXJ1bGU9Im5vbnplcm8iPg0KICAgICAgPHBhdGggZD0iTTguMjUsMiBDOS4yMTY0OTgzMSwyIDEwLDIuNzgzNTAxNjkgMTAsMy43NSBMMTAsMjAuMjUgQzEwLDIxLjIxNjQ5ODMgOS4yMTY0OTgzMSwyMiA4LjI1LDIyIEw0Ljc1LDIyIEMzLjc4MzUwMTY5LDIyIDMsMjEuMjE2NDk4MyAzLDIwLjI1IEwzLDMuNzUgQzMsMi43ODM1MDE2OSAzLjc4MzUwMTY5LDIgNC43NSwyIEw4LjI1LDIgWiBNMTkuMjUsMiBDMjAuMjE2NDk4MywyIDIxLDIuNzgzNTAxNjkgMjEsMy43NSBMMjEsMjAuMjUgQzIxLDIxLjIxNjQ5ODMgMjAuMjE2NDk4MywyMiAxOS4yNSwyMiBMMTUuNzUsMjIgQzE0Ljc4MzUwMTcsMjIgMTQsMjEuMjE2NDk4MyAxNCwyMC4yNSBMMTQsMy43NSBDMTQsMi43ODM1MDE2OSAxNC43ODM1MDE3LDIgMTUuNzUsMiBMMTkuMjUsMiBaIE04LjI1LDMuNSBMNC43NSwzLjUgQzQuNjExOTI4ODEsMy41IDQuNSwzLjYxMTkyODgxIDQuNSwzLjc1IEw0LjUsMjAuMjUgQzQuNSwyMC4zODgwNzEyIDQuNjExOTI4ODEsMjAuNSA0Ljc1LDIwLjUgTDguMjUsMjAuNSBDOC4zODgwNzExOSwyMC41IDguNSwyMC4zODgwNzEyIDguNSwyMC4yNSBMOC41LDMuNzUgQzguNSwzLjYxMTkyODgxIDguMzg4MDcxMTksMy41IDguMjUsMy41IFogTTE5LjI1LDMuNSBMMTUuNzUsMy41IEMxNS42MTE5Mjg4LDMuNSAxNS41LDMuNjExOTI4ODEgMTUuNSwzLjc1IEwxNS41LDIwLjI1IEMxNS41LDIwLjM4ODA3MTIgMTUuNjExOTI4OCwyMC41IDE1Ljc1LDIwLjUgTDE5LjI1LDIwLjUgQzE5LjM4ODA3MTIsMjAuNSAxOS41LDIwLjM4ODA3MTIgMTkuNSwyMC4yNSBMMTkuNSwzLjc1IEMxOS41LDMuNjExOTI4ODEgMTkuMzg4MDcxMiwzLjUgMTkuMjUsMy41IFoiIGlkPSLwn46oLUNvbG9yIj48L3BhdGg+DQogICAgPC9nPg0KICA8L2c+DQo8L3N2Zz4=",alt:""}):(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA1OS4xICg4NjE0NCkgLSBodHRwczovL3NrZXRjaC5jb20gLS0+DQogIDx0aXRsZT5pY19mbHVlbnRfcGxheV8yNF9yZWd1bGFyPC90aXRsZT4NCiAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+DQogIDxnIGlkPSLwn5SNLVByb2R1Y3QtSWNvbnMiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPg0KICAgIDxnIGlkPSJpY19mbHVlbnRfcGxheV8yNF9yZWd1bGFyIiBmaWxsPSJ3aGl0ZSIgZmlsbC1ydWxlPSJub256ZXJvIj4NCiAgICAgIDxwYXRoIGQ9Ik02LjMzOTk0OTc2LDIuMjc1MDA5MTIgQzUuMjUyODQ0OTUsMS42NzMwNDY0OSAzLjg4MzU4NTI1LDIuMDY2MzMxOTMgMy4yODE2MjI2MiwzLjE1MzQzNjc0IEMzLjA5NjkwNzM0LDMuNDg3MDIwMzUgMywzLjg2MjA3NTkyIDMsNC4yNDMzODY1IEwzLDE5Ljc1OTEzODggQzMsMjEuMDAxNzc5NSA0LjAwNzM1OTMxLDIyLjAwOTEzODggNS4yNSwyMi4wMDkxMzg4IEM1LjYzMTQwMDUxLDIyLjAwOTEzODggNi4wMDY1NDE1NCwyMS45MTIxODU4IDYuMzQwMTgyMDIsMjEuNzI3Mzg3NiBMMjAuMzQ4NDQ0MywxMy45Njg0MzE0IEMyMS40MzU0NzgxLDEzLjM2NjM0MDUgMjEuODI4NjAxOSwxMS45OTcwMzQ0IDIxLjIyNjUxMSwxMC45MTAwMDA2IEMyMS4wMjE5Mzk2LDEwLjU0MDY2MSAyMC43MTc1NzU4LDEwLjIzNjMzMzEgMjAuMzQ4MjEyLDEwLjAzMTgwNTMgTDYuMzM5OTQ5NzYsMi4yNzUwMDkxMiBaIE0xOS45MTQzNDUyLDExLjYzNjc4ODcgQzIwLjExNTA0MjIsMTEuOTk5MTMzMyAxOS45ODQwMDA5LDEyLjQ1NTU2ODYgMTkuNjIxNjU2MywxMi42NTYyNjU2IEw1LjYxMzM5NDAxLDIwLjQxNTIyMTcgQzUuNTAyMTgwNTEsMjAuNDc2ODIxMSA1LjM3NzEzMzUsMjAuNTA5MTM4OCA1LjI1LDIwLjUwOTEzODggQzQuODM1Nzg2NDQsMjAuNTA5MTM4OCA0LjUsMjAuMTczMzUyNCA0LjUsMTkuNzU5MTM4OCBMNC41LDQuMjQzMzg2NSBDNC41LDQuMTE2MjgyOTggNC41MzIzMDI0NSwzLjk5MTI2NDQ1IDQuNTkzODc0MjEsMy44ODAwNjk5MiBDNC43OTQ1Mjg0MiwzLjUxNzcwMTY1IDUuMjUwOTQ4MzIsMy4zODY2MDY1IDUuNjEzMzE2NTksMy41ODcyNjA3MSBMMTkuNjIxNTc4OSwxMS4zNDQwNTY5IEMxOS43NDQ3MDAxLDExLjQxMjIzMjggMTkuODQ2MTU0NywxMS41MTM2NzU1IDE5LjkxNDM0NTIsMTEuNjM2Nzg4NyBaIiBpZD0i8J+OqC1Db2xvciI+PC9wYXRoPg0KICAgIDwvZz4NCiAgPC9nPg0KPC9zdmc+",alt:""})}),(0,l.jsxs)("div",{id:"color-picker-button",title:"Background color",className:"button align",onClick:e=>this.changeBackgroundClick(),children:[(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjUiIGhlaWdodD0iMjQiPg0KICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDU5LjEgKDg2MTQ0KSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4NCiAgPHRpdGxlPmljX2ZsdWVudF9jb2xvcl8yNF9yZWd1bGFyPC90aXRsZT4NCiAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+DQogIDxnIGlkPSLwn5SNLVByb2R1Y3QtSWNvbnMiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPg0KICAgIDxnIGlkPSJpY19mbHVlbnRfY29sb3JfMjRfcmVndWxhciIgZmlsbD0id2hpdGUiIGZpbGwtcnVsZT0ibm9uemVybyI+DQogICAgICA8cGF0aCBkPSJNMy44MzkwNDA1OCw1Ljg1NzQ5NTYxIEM2Ljc4MDA0NTgxLDEuOTQxODg5NzEgMTIuODY4NjcwNywwLjgwMjUwNTIwMiAxNy4yMDI5Mzk0LDMuNDk3Mzc3IEMyMS40ODI3NTI1LDYuMTU4MzkwNTcgMjMuMDU2Nzk3MiwxMS4yNzQ0NjU1IDIxLjMwMzg2NiwxNi4wNzQ3NDA3IEMxOS42NDg2ODksMjAuNjA3MzIzMSAxNS4yODc1Mjk1LDIyLjQwMzIwOSAxMi4xNDQyMTAxLDIwLjEyMzE0MjggQzEwLjk2Njc0MjUsMTkuMjY5MDQ0NCAxMC41MTAyOTAxLDE4LjE5ODQwMzUgMTAuMjg5NjU3NiwxNi40NTkzMTMyIEwxMC4xODQyNzQ1LDE1LjQ3MTM5MTMgTDEwLjEzODg1ODksMTUuMDczOTU0IEMxMC4wMTYyMzQyLDE0LjEzOTkwNjUgOS44Mjc4MDc0OCwxMy43MjE0Mjk2IDkuNDM0NTM2MDUsMTMuNTAyMjI2NCBDOC44OTg5NDUzNSwxMy4yMDM2OTY2IDguNTQyMzE3NTcsMTMuMTk2NzIyNiA3LjgzOTA1MjgyLDEzLjQ2OTI3ODQgTDcuNDg3OTQxOTMsMTMuNjE0ODc3OSBMNy4zMDkyMDc1NCwxMy42OTI4MjE4IEM2LjI5NTQzMTk2LDE0LjEzMzEwMzggNS42MjEwNDE2MSwxNC4yODc3OTIzIDQuNzY4MDQ1ODgsMTQuMTA5MDU0MyBMNC41Njc3OTQ0MiwxNC4wNjE4NjY1IEw0LjQwNDI2MTM4LDE0LjAxNTI2OTEgQzEuNjE1Mjk1NDcsMTMuMTUxMDU4NiAxLjIwMjIwNjUzLDkuMzY4MTMzMDMgMy44MzkwNDA1OCw1Ljg1NzQ5NTYxIFogTTQuODIzMjU5NywxMi41NzM5MTI1IEw0Ljk0NjE2NDI4LDEyLjYxMDM3MiBMNS4wODAxMTMsMTIuNjQxMjE2MSBDNS41MTkxODg3OCwxMi43MjgxNjY1IDUuODk0NDQwMzksMTIuNjU1Njc0OSA2LjUxNzEzNDg2LDEyLjM5OTM5NTUgTDcuMTE5MzA2ODEsMTIuMTQyMTM0NyBDOC4zMjE0NDk5NCwxMS42NDkyMTkxIDkuMTA0NTQ2MywxMS42MDEwMjMzIDEwLjE2NDgzMDUsMTIuMTkyMDA4OCBDMTEuMDgyNDE5MSwxMi43MDM0NTgxIDExLjQ0MDA1ODMsMTMuNDg5NTk3OCAxMS42MjI0NywxNC44NTE2NTExIEwxMS42NzU2NjM3LDE1LjMxMDgwMiBMMTEuNzI5ODczLDE1Ljg0MjUxODkgTDExLjc3NzAwOTUsMTYuMjY0OTQzMSBDMTEuOTQ5MDg0MiwxNy42MjYyMDc4IDEyLjI2MTkxNjIsMTguMzU1NDU1MyAxMy4wMjQ5NTUsMTguOTA4OTQgQzE1LjMwMDI4ODYsMjAuNTU5Mzk2MyAxOC41NTkzOTM3LDE5LjIxNzMyNjMgMTkuODk0ODcyNSwxNS41NjAyMTQzIEMyMS40MTExNDIsMTEuNDA4MDIwMSAyMC4wNjg5OTQxLDcuMDQ1NjczMDMgMTYuNDEwOTExNyw0Ljc3MTIyNjM2IEMxMi43MzY3MTgsMi40ODY3NjIzMSA3LjUxMjQ4NzQyLDMuNDY0Mzg5ODYgNS4wMzg0MDc5Niw2Ljc1ODMzODQ5IEMyLjk2MzYxOTk0LDkuNTIwNjc3MDcgMy4yMTgwOTUzMiwxMi4wMzc4OTQ0IDQuODIzMjU5NywxMi41NzM5MTI1IFogTTE2LjA0Nzc0NjIsMTAuNTc5NTc0NCBDMTUuODY5MDY4OSw5LjkxMjc0MTc5IDE2LjI2NDc5Nyw5LjIyNzMyMDYgMTYuOTMxNjI5Nyw5LjA0ODY0MzMzIEMxNy41OTg0NjIzLDguODY5OTY2MDcgMTguMjgzODgzNSw5LjI2NTY5NDE4IDE4LjQ2MjU2MDgsOS45MzI1MjY4MSBDMTguNjQxMjM4LDEwLjU5OTM1OTQgMTguMjQ1NTA5OSwxMS4yODQ3ODA2IDE3LjU3ODY3NzMsMTEuNDYzNDU3OSBDMTYuOTExODQ0NywxMS42NDIxMzUyIDE2LjIyNjQyMzUsMTEuMjQ2NDA3MSAxNi4wNDc3NDYyLDEwLjU3OTU3NDQgWiBNMTYuNTQyMzM2MSwxNC4wNjgyMzg5IEMxNi4zNjM2NTg5LDEzLjQwMTQwNjMgMTYuNzU5Mzg3LDEyLjcxNTk4NTEgMTcuNDI2MjE5NiwxMi41MzczMDc4IEMxOC4wOTMwNTIyLDEyLjM1ODYzMDYgMTguNzc4NDczNCwxMi43NTQzNTg3IDE4Ljk1NzE1MDcsMTMuNDIxMTkxMyBDMTkuMTM1ODI4LDE0LjA4ODAyMzkgMTguNzQwMDk5OSwxNC43NzM0NDUxIDE4LjA3MzI2NzIsMTQuOTUyMTIyNCBDMTcuNDA2NDM0NiwxNS4xMzA3OTk3IDE2LjcyMTAxMzQsMTQuNzM1MDcxNiAxNi41NDIzMzYxLDE0LjA2ODIzODkgWiBNMTQuMDY5MjM4Niw3LjU3Njg5MDYyIEMxMy44OTA1NjEzLDYuOTEwMDU3OTkgMTQuMjg2Mjg5NCw2LjIyNDYzNjggMTQuOTUzMTIyMSw2LjA0NTk1OTUzIEMxNS42MTk5NTQ3LDUuODY3MjgyMjcgMTYuMzA1Mzc1OSw2LjI2MzAxMDM4IDE2LjQ4NDA1MzEsNi45Mjk4NDMwMSBDMTYuNjYyNzMwNCw3LjU5NjY3NTY0IDE2LjI2NzAwMjMsOC4yODIwOTY4MyAxNS42MDAxNjk3LDguNDYwNzc0MSBDMTQuOTMzMzM3LDguNjM5NDUxMzYgMTQuMjQ3OTE1OCw4LjI0MzcyMzI1IDE0LjA2OTIzODYsNy41NzY4OTA2MiBaIE0xNC4wNDA3NTY5LDE2LjU3NTI3NDcgQzEzLjg2MjA3OTYsMTUuOTA4NDQyMSAxNC4yNTc4MDc3LDE1LjIyMzAyMDkgMTQuOTI0NjQwMywxNS4wNDQzNDM3IEMxNS41OTE0NzMsMTQuODY1NjY2NCAxNi4yNzY4OTQyLDE1LjI2MTM5NDUgMTYuNDU1NTcxNCwxNS45MjgyMjcxIEMxNi42MzQyNDg3LDE2LjU5NTA1OTggMTYuMjM4NTIwNiwxNy4yODA0ODEgMTUuNTcxNjg4LDE3LjQ1OTE1ODIgQzE0LjkwNDg1NTMsMTcuNjM3ODM1NSAxNC4yMTk0MzQxLDE3LjI0MjEwNzQgMTQuMDQwNzU2OSwxNi41NzUyNzQ3IFogTTEwLjU0MzgzMzksNi42MDUyOTcyNSBDMTAuMzY1MTU2Niw1LjkzODQ2NDYyIDEwLjc2MDg4NDcsNS4yNTMwNDM0MyAxMS40Mjc3MTc0LDUuMDc0MzY2MTYgQzEyLjA5NDU1LDQuODk1Njg4OSAxMi43Nzk5NzEyLDUuMjkxNDE3MDEgMTIuOTU4NjQ4NCw1Ljk1ODI0OTY0IEMxMy4xMzczMjU3LDYuNjI1MDgyMjcgMTIuNzQxNTk3Niw3LjMxMDUwMzQ2IDEyLjA3NDc2NSw3LjQ4OTE4MDczIEMxMS40MDc5MzIzLDcuNjY3ODU3OTkgMTAuNzIyNTExMSw3LjI3MjEyOTg4IDEwLjU0MzgzMzksNi42MDUyOTcyNSBaIiBpZD0i8J+OqC1Db2xvciI+PC9wYXRoPg0KICAgIDwvZz4NCiAgPC9nPg0KPC9zdmc+",alt:"",id:"color-picker-image"}),(0,l.jsx)("input",{ref:this._colorInputRef,id:"color-picker",type:"color",value:this.props.globalState.backgroundColor.toHexString().slice(0,7),onChange:e=>this.changeBackground(e.target.value)})]})]}),(0,l.jsx)("div",{title:"Open preview in new window",id:"preview-new-window",onClick:()=>this.onPopUp(),className:"button",children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmZmZmY7fTwvc3R5bGU+PC9kZWZzPjxnIGlkPSJfLVN5c3RlbS1JY29ucyIgZGF0YS1uYW1lPSLwn5SNLVN5c3RlbS1JY29ucyI+PGcgaWQ9ImljX2ZsdWVudF93aW5kb3dfbmV3XzIwX3JlZ3VsYXIiIGRhdGEtbmFtZT0iaWMgZmx1ZW50IHdpbmRvdyBuZXcgMjAgcmVndWxhciI+PHBhdGggaWQ9Il8tQ29sb3IiIGRhdGEtbmFtZT0i8J+OqC1Db2xvciIgY2xhc3M9ImNscy0xIiBkPSJNMTguMTQsMi40NGEzLjQyLDMuNDIsMCwwLDEsMy40MSwzLjE5djkuNzhhMy40MSwzLjQxLDAsMCwxLTIuNDEsMy4yNkEzLjQ0LDMuNDQsMCwwLDEsMTYsMjEuNTVINy4yMkE0Ljc4LDQuNzgsMCwwLDEsMi40NSwxN1Y4LjI3QTMuNDIsMy40MiwwLDAsMSw1LjMxLDQuOWEzLjQzLDMuNDMsMCwwLDEsMy0yLjQ1aDkuOFptLTEzLDMuOUEyLDIsMCwwLDAsMy44Miw4LjA2djguNzJBMy40MSwzLjQxLDAsMCwwLDcsMjAuMThoOC43OEEyLDIsMCwwLDAsMTcuNjMsMTlsLjA4LS4xN0g4LjU5YTMuNDIsMy40MiwwLDAsMS0zLjQxLTMuMTlWNi4zNFptMTMtMi41M0g4LjU5YTIuMDUsMi4wNSwwLDAsMC0yLDIuMDV2OS41NWEyLjA1LDIuMDUsMCwwLDAsMi4wNSwyLjA1aDkuNTVhMi4wNSwyLjA1LDAsMCwwLDIuMDUtMi4wNVY1Ljg2QTIuMDUsMi4wNSwwLDAsMCwxOC4xNCwzLjgxWk0xNi43OCw2LjU0YS42OS42OSwwLDAsMSwuNjcuNTZ2NS41NmEuNjguNjgsMCwwLDEtLjY4LjY4LjY3LjY3LDAsMCwxLS42Ny0uNTZWOC44N2wtNS42Niw1LjY2YS42OC42OCwwLDAsMS0xLS44N2wuMDgtLjFMMTUuMTMsNy45SDExLjM0YS42Ny42NywwLDAsMS0uNjgtLjY4LjY5LjY5LDAsMCwxLC41Ni0uNjdoNS41NloiLz48L2c+PC9nPjwvc3ZnPg==",alt:""})})]})}}class Bo extends a.Component{constructor(e){super(e),this._onPointerOverCanvas=()=>{this.props.globalState.pointerOverCanvas=!0},this._onPointerOutCanvas=()=>{this.props.globalState.pointerOverCanvas=!1},this.state={isLoading:!0},this._onIsLoadingChangedObserver=this.props.globalState.onIsLoadingChanged.add((e=>this.setState({isLoading:e}))),this._onResetRequiredObserver=this.props.globalState.onResetRequiredObservable.add((()=>{this.forceUpdate()}))}componentWillUnmount(){this.props.globalState.onIsLoadingChanged.remove(this._onIsLoadingChangedObserver),this.props.globalState.onResetRequiredObservable.remove(this._onResetRequiredObserver)}changeBackFaceCulling(e){this.props.globalState.backFaceCulling=e,s.DataStorage.WriteBoolean("BackFaceCulling",e),this.props.globalState.onBackFaceCullingChanged.notifyObservers(),this.forceUpdate()}changeDepthPrePass(e){this.props.globalState.depthPrePass=e,s.DataStorage.WriteBoolean("DepthPrePass",e),this.props.globalState.onDepthPrePassChanged.notifyObservers(),this.forceUpdate()}changeParticleSystemBlendMode(e){this.props.globalState.particleSystemBlendMode!==e&&(this.props.globalState.particleSystemBlendMode=e,this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(null),s.DataStorage.WriteNumber("DefaultParticleSystemBlendMode",e),this.forceUpdate())}render(){const e=[{label:"Add",value:s.ParticleSystem.BLENDMODE_ADD},{label:"Multiply",value:s.ParticleSystem.BLENDMODE_MULTIPLY},{label:"Multiply Add",value:s.ParticleSystem.BLENDMODE_MULTIPLYADD},{label:"OneOne",value:s.ParticleSystem.BLENDMODE_ONEONE},{label:"Standard",value:s.ParticleSystem.BLENDMODE_STANDARD}];return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)("div",{id:"preview",style:{height:this.props.width+"px"},children:[(0,l.jsx)("canvas",{onPointerOver:this._onPointerOverCanvas,onPointerOut:this._onPointerOutCanvas,id:"preview-canvas"}),(0,l.jsx)("div",{className:"waitPanel"+(this.state.isLoading?"":" hidden"),children:"Please wait, loading..."})]}),this.props.globalState.mode===s.NodeMaterialModes.Particle&&(0,l.jsx)("div",{id:"preview-config-bar",className:"extended",children:(0,l.jsx)(yo,{label:"Blend mode",options:e,target:this.props.globalState,propertyName:"particleSystemBlendMode",noDirectUpdate:!0,onSelect:e=>{this.changeParticleSystemBlendMode(e)}})}),this.props.globalState.mode===s.NodeMaterialModes.Material&&(0,l.jsx)(l.Fragment,{children:(0,l.jsxs)("div",{id:"preview-config-bar",children:[(0,l.jsx)("div",{title:"Render without back face culling",onClick:()=>this.changeBackFaceCulling(!this.props.globalState.backFaceCulling),className:"button back-face"+(this.props.globalState.backFaceCulling?"":" selected"),children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNOC42MiwxMS4ySDMuOTJsMy0zYS43NS43NSwwLDAsMCwwLTEuMDYuNzQuNzQsMCwwLDAtMS4wNiwwTDIuMjQsMTAuNzZhMS42NywxLjY3LDAsMCwwLDAsMi4zN2wzLjU4LDMuNThhLjc1Ljc1LDAsMCwwLDEuMDYsMCwuNzUuNzUsMCwwLDAsMC0xLjA2bC0zLTNoNC43YS43NS43NSwwLDEsMCwwLTEuNVoiIHN0eWxlPSJmaWxsOndoaXRlIi8+PHBhdGggZD0iTTIxLjc2LDEwLjc2LDE4LjE4LDcuMThhLjc0Ljc0LDAsMCwwLTEuMDYsMCwuNzUuNzUsMCwwLDAsMCwxLjA2bDMsM2gtNC43YS43NS43NSwwLDEsMCwwLDEuNWg0LjdsLTMsM2EuNzUuNzUsMCwwLDAsMCwxLjA2Ljc0Ljc0LDAsMCwwLC41My4yMi43My43MywwLDAsMCwuNTMtLjIybDMuNTgtMy41OEExLjY3LDEuNjcsMCwwLDAsMjEuNzYsMTAuNzZaIiBzdHlsZT0iZmlsbDp3aGl0ZSIvPjxwYXRoIGQ9Ik0xMiwzLjY0YS43Ni43NiwwLDAsMC0uNzUuNzVWMTkuNjFhLjc1Ljc1LDAsMCwwLDEuNSwwVjQuMzlBLjc1Ljc1LDAsMCwwLDEyLDMuNjRaIiBzdHlsZT0iZmlsbDp3aGl0ZSIvPjwvc3ZnPg==",alt:""})}),(0,l.jsx)("div",{title:"Render with depth pre-pass",onClick:()=>this.changeDepthPrePass(!this.props.globalState.depthPrePass),className:"button depth-pass"+(this.props.globalState.depthPrePass?" selected":""),children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMjEuMTIsMTgsMTYuMjgsOC4zNWExLjM0LDEuMzQsMCwwLDAtMS4yMS0uNzYsMS4zNiwxLjM2LDAsMCwwLTEsLjQyaDBsLS44Ny0xLjc0QTEuMzUsMS4zNSwwLDAsMCwxMiw1LjUyYTEuMzIsMS4zMiwwLDAsMC0xLC40MmgwbC0uODctMS43NWExLjM2LDEuMzYsMCwwLDAtMS4yMi0uNzUsMS4zNCwxLjM0LDAsMCwwLTEuMjEuNzVMMi44OCwxMy44NmExLjM2LDEuMzYsMCwwLDAsMS4yMiwySDZsMCwuMTFhMS4zNiwxLjM2LDAsMCwwLDEuMjEsMkg5LjA3TDksMThhMS4zNSwxLjM1LDAsMCwwLDEuMjEsMkgxOS45YTEuMzUsMS4zNSwwLDAsMCwxLjIyLTJaTTYuNzUsMTQuMzNINC4zMkw4LjkzLDUuMTFsMS4yMiwyLjQzWm0zLjA3LDIuMDhINy4zOUwxMiw3LjE5bDEuMjIsMi40M1ptLjY0LDIuMDcsNC42MS05LjIxLDQuNjEsOS4yMVoiIHN0eWxlPSJmaWxsOndoaXRlIi8+PC9zdmc+",alt:""})}),(0,l.jsx)("div",{title:"Turn on/off hemispheric light",onClick:()=>{this.props.globalState.hemisphericLight=!this.props.globalState.hemisphericLight,s.DataStorage.WriteBoolean("HemisphericLight",this.props.globalState.hemisphericLight),this.props.globalState.onLightUpdated.notifyObservers(),this.forceUpdate()},className:"button hemispheric-light"+(this.props.globalState.hemisphericLight?" selected":""),children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA1OS4xICg4NjE0NCkgLSBodHRwczovL3NrZXRjaC5jb20gLS0+DQogIDx0aXRsZT5pY19mbHVlbnRfbGlnaHRidWxiXzI0X3JlZ3VsYXI8L3RpdGxlPg0KICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4NCiAgPGcgaWQ9IvCflI0tUHJvZHVjdC1JY29ucyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+DQogICAgPGcgaWQ9ImljX2ZsdWVudF9saWdodGJ1bGJfMjRfcmVndWxhciIgZmlsbD0id2hpdGUiIGZpbGwtcnVsZT0ibm9uemVybyI+DQogICAgICA8cGF0aCBkPSJNMTIuMDAwMDA4LDIuMDAxMzk3MzQgQzE2LjAwNDA2MjgsMi4wMDEzOTczNCAxOS4yNDk5OTIsNS4yNDczMzIwOCAxOS4yNDk5OTIsOS4yNTEzOTczNCBDMTkuMjQ5OTkyLDExLjM0NzQ1NjcgMTguMzQ5MzMzMywxMy4yNzExMDU0IDE2LjU4Njk1MzUsMTQuOTkzMzAxMSBDMTYuNTEwMDA1NCwxNS4wNjg1MDA0IDE2LjQ1MDQ0MSwxNS4xNTkwNjE3IDE2LjQxMTg0NTcsMTUuMjU4NjAzMSBMMTYuMzgwMzczLDE1LjM2MDkwMTYgTDE1LjI0OTI5NTcsMjAuMjU2NDk3IEMxNS4wMjY1OTEzLDIxLjIyMDQxOTUgMTQuMjAzNDcwNywyMS45MTg3NjExIDEzLjIzMDI1NTgsMjEuOTkzMzc5NiBMMTMuMDU3MDQ1NiwyMiBMMTAuOTQzMjY4OSwyMiBDOS45NTM3NDk5NywyMiA5LjA4NzkxNDg2LDIxLjM1NDk0OTIgOC43OTYyOTgwOCwyMC40MjMyNTM0IEw4Ljc1MDg4ODc0LDIwLjI1NTkzMzkgTDcuNjIxMzIzOTksMTUuMzYxMTUzMyBDNy41ODkwNDMwNiwxNS4yMjEyNTk1IDcuNTE3MjgzMjEsMTUuMDkzNTY5NSA3LjQxNDU2ODI0LDE0Ljk5MzI1MTcgQzUuNzM1MTYyMDcsMTMuMzUzMDM5OSA0LjgzNzc5MDExLDExLjUzMDE1MTkgNC43NTYxMzQyOSw5LjU0OTY1MTM4IEw0Ljc1MDAwOCw5LjI1MTM5NzM0IEw0Ljc1Mzg4MzIyLDkuMDEyMDgyOTIgQzQuODgwMTQ4NTMsNS4xMTg3OTA0MSA4LjA3NjAyMTM0LDIuMDAxMzk3MzQgMTIuMDAwMDA4LDIuMDAxMzk3MzQgWiBNMTQuMTE1MDA4LDE4LjQ5OTM5NzMgTDkuODg0MDA4LDE4LjQ5OTM5NzMgTDEwLjIxMjQ3NTUsMTkuOTE4NjQ0NiBDMTAuMjgzMTUyOSwyMC4yMjQ5MTMxIDEwLjUzNTY2NzYsMjAuNDUwNzk2MiAxMC44NDAwNjEyLDIwLjQ5MjkxMDEgTDEwLjk0MzI2ODksMjAuNSBMMTMuMDU3MDQ1NiwyMC41IEMxMy4zNzEyOTg1LDIwLjUgMTMuNjQ4MTM2NCwyMC4zMDQ4MjI2IDEzLjc1NzY2MiwyMC4wMTc3NzU2IEwxMy43ODc3OTU2LDE5LjkxODgzMjMgTDE0LjExNTAwOCwxOC40OTkzOTczIFogTTEyLjAwMDAwOCwzLjUwMTM5NzM0IEM4Ljg5ODIxOTIyLDMuNTAxMzk3MzQgNi4zNzAwNzA4Myw1Ljk1NzQxMTExIDYuMjU0MTYwMDgsOS4wMzA4NDEzOSBMNi4yNTAwMDgsOS4yNTEzOTczNCBMNi4yNTY3MjM0Myw5LjUyODQwNjc5IEM2LjMzMjg2OTUzLDExLjA5MTc2OTUgNy4wNTcyMjM1MiwxMi41NDc1MzQyIDguNDYyNjMyMjcsMTMuOTIwMTQzMiBDOC43MjY3NjAxMywxNC4xNzgxMDY4IDguOTIyNjYyNTcsMTQuNDk2NDA3NSA5LjAzNDIzMTM1LDE0Ljg0NjM4MTUgTDkuMDgyOTEzMzYsMTUuMDIzODc1MiBMOS41MzgwMDgsMTYuOTk5Mzk3MyBMMTQuNDYxMDA4LDE2Ljk5OTM5NzMgTDE0LjkxODg3MjksMTUuMDIzMjM3IEMxNS4wMDE5MDExLDE0LjY2Mzg2OTQgMTUuMTcxNzY2NCwxNC4zMzEzNjc3IDE1LjQxMjQyMTUsMTQuMDU0Mjg5MyBMMTUuNTM4NTczOSwxMy45MjA1MDA5IEMxNi45NDMxOTk4LDEyLjU0NzkwMiAxNy42NjcxNzM4LDExLjA5MjAzMzggMTcuNzQzMjgwMSw5LjUyODQ0NzUgTDE3Ljc0OTk5Miw5LjI1MTM5NzM0IEwxNy43NDU4Mzk5LDkuMDMwODQxNTQgQzE3LjYyOTkyOTMsNS45NTc0MTMyIDE1LjEwMTc4MzMsMy41MDEzOTczNCAxMi4wMDAwMDgsMy41MDEzOTczNCBaIiBpZD0i8J+OqC1Db2xvciI+PC9wYXRoPg0KICAgIDwvZz4NCiAgPC9nPg0KPC9zdmc+",alt:""})}),(0,l.jsx)("div",{title:"Turn on/off direction light #1",onClick:()=>{this.props.globalState.directionalLight1=!this.props.globalState.directionalLight1,s.DataStorage.WriteBoolean("DirectionalLight1",this.props.globalState.directionalLight1),this.props.globalState.onLightUpdated.notifyObservers(),this.forceUpdate()},className:"button direction-light-1"+(this.props.globalState.directionalLight1?" selected":""),children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy4xMywxMy42MWEuNzYuNzYsMCwwLDAsLjA2LDEuMDYsMS42LDEuNiwwLDAsMSwuNTEuODhsMSw0LjY4QTIuMjYsMi4yNiwwLDAsMCwxMC45MiwyMmgyLjE2YTIuMjYsMi4yNiwwLDAsMCwyLjE5LTEuNzZsMS00LjY4YTEuNiwxLjYsMCwwLDEsLjUxLS44OCw3LjE4LDcuMTgsMCwwLDAsMi40Mi01LDcuMjYsNy4yNiwwLDAsMC0yLTUuNEE3LjEzLDcuMTMsMCwwLDAsMTIsMiw2LjksNi45LDAsMCwwLDcuMTMsMy45NGEuNzUuNzUsMCwxLDAsMSwxLjFBNS4zNSw1LjM1LDAsMCwxLDEyLDMuNTFhNS42Nyw1LjY3LDAsMCwxLDQuMTYsMS44LDUuOCw1LjgsMCwwLDEsMS41OCw0LjI4LDUuNyw1LjcsMCwwLDEtMS45MywzLjk1LDMuMTgsMy4xOCwwLDAsMC0xLDEuNjlMMTQuNDUsMTdIOS41NWwtLjM4LTEuNzdhMy4xNiwzLjE2LDAsMCwwLTEtMS42OEEuNzUuNzUsMCwwLDAsNy4xMywxMy42MVptMy4wNiw2LjI5LS4zLTEuNGg0LjIzbC0uMzEsMS40YS43Ni43NiwwLDAsMS0uNzMuNTlIMTAuOTJBLjc2Ljc2LDAsMCwxLDEwLjE5LDE5LjlaIiBzdHlsZT0iZmlsbDp3aGl0ZSIvPjxwYXRoIGQ9Ik0yLjIzLDguODYsNC44Nyw2LjIzYS43NS43NSwwLDAsMSwxLjA2LDAsLjc0Ljc0LDAsMCwxLDAsMS4wNkw0LjU4LDguNjRoNy4xMWEuNzUuNzUsMCwwLDEsMCwxLjVINC41OGwxLjM1LDEuMzVhLjc0Ljc0LDAsMCwxLDAsMS4wNi43NS43NSwwLDAsMS0uNTMuMjIuNzQuNzQsMCwwLDEtLjUzLS4yMkwyLjIzLDkuOTJhLjc1Ljc1LDAsMCwxLDAtMS4wNloiIHN0eWxlPSJmaWxsOndoaXRlIi8+PC9zdmc+",alt:""})}),(0,l.jsx)("div",{title:"Turn on/off direction light #0",onClick:()=>{this.props.globalState.directionalLight0=!this.props.globalState.directionalLight0,s.DataStorage.WriteBoolean("DirectionalLight0",this.props.globalState.directionalLight0),this.props.globalState.onLightUpdated.notifyObservers(),this.forceUpdate()},className:"button direction-light-0"+(this.props.globalState.directionalLight0?" selected":""),children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuODEsMTMuNTVhMy4xNiwzLjE2LDAsMCwwLTEsMS42OEwxNC40NSwxN0g5LjU1bC0uMzgtMS43N2EzLjE4LDMuMTgsMCwwLDAtMS0xLjY5QTUuNyw1LjcsMCwwLDEsNi4yNiw5LjU5LDUuOCw1LjgsMCwwLDEsNy44NCw1LjMxLDUuNjcsNS42NywwLDAsMSwxMiwzLjUxLDUuMzUsNS4zNSwwLDAsMSwxNS44NSw1YS43NS43NSwwLDAsMCwxLTEuMUE2LjksNi45LDAsMCwwLDEyLDIsNy4xMyw3LjEzLDAsMCwwLDYuNzUsNC4yOGE3LjI2LDcuMjYsMCwwLDAtMiw1LjQsNy4xOCw3LjE4LDAsMCwwLDIuNDIsNSwxLjYsMS42LDAsMCwxLC41MS44OGwxLDQuNjhBMi4yNiwyLjI2LDAsMCwwLDEwLjkyLDIyaDIuMTZhMi4yNiwyLjI2LDAsMCwwLDIuMTktMS43NmwxLTQuNjhhMS42LDEuNiwwLDAsMSwuNTEtLjg4Ljc2Ljc2LDAsMCwwLC4wNi0xLjA2QS43NS43NSwwLDAsMCwxNS44MSwxMy41NVptLTIuNzMsNi45NEgxMC45MmEuNzYuNzYsMCwwLDEtLjczLS41OWwtLjMxLTEuNGg0LjIzbC0uMywxLjRBLjc2Ljc2LDAsMCwxLDEzLjA4LDIwLjQ5WiIgc3R5bGU9ImZpbGw6d2hpdGUiLz48cGF0aCBkPSJNMjEuNzcsOC44NiwxOS4xMyw2LjIzYS43NS43NSwwLDAsMC0xLjA2LDAsLjc0Ljc0LDAsMCwwLDAsMS4wNmwxLjM1LDEuMzVIMTIuMzFhLjc1Ljc1LDAsMCwwLDAsMS41aDcuMTFsLTEuMzUsMS4zNWEuNzQuNzQsMCwwLDAsMCwxLjA2Ljc1Ljc1LDAsMCwwLC41My4yMi43NC43NCwwLDAsMCwuNTMtLjIybDIuNjQtMi42M2EuNzUuNzUsMCwwLDAsMC0xLjA2WiIgc3R5bGU9ImZpbGw6d2hpdGUiLz48L3N2Zz4=",alt:""})}),(0,l.jsx)("div",{title:"Turn on/off environment",onClick:()=>{this.props.globalState.backgroundHDR=!this.props.globalState.backgroundHDR,s.DataStorage.WriteBoolean("backgroundHDR",this.props.globalState.backgroundHDR),this.props.globalState.onBackgroundHDRUpdated.notifyObservers(),this.forceUpdate()},className:"button "+(this.props.globalState.backgroundHDR?" selected":""),children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48ZGVmcz48c3R5bGU+LmNscy0xe3N0cm9rZS13aWR0aDowcHg7fTwvc3R5bGU+PC9kZWZzPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0ibTEyLDEuOTdDNi40NiwxLjk3LDEuOTcsNi40NiwxLjk3LDEyczQuNDksMTAuMDMsMTAuMDMsMTAuMDMsMTAuMDMtNC40OSwxMC4wMy0xMC4wM1MxNy41NCwxLjk3LDEyLDEuOTdabTAsMTguNTVjLTQuNzEsMC04LjUyLTMuODItOC41Mi04LjUyUzcuMjksMy40OCwxMiwzLjQ4czguNTIsMy44Miw4LjUyLDguNTItMy44Miw4LjUyLTguNTIsOC41MlptNS4wMS0xMC4zM2MwLTIuNzctMi4yNS01LjAxLTUuMDEtNS4wMXMtNS4wMSwyLjI0LTUuMDEsNS4wMXYuMjdzLjAzLjI2LjAzLjI2Yy4xNCwxLjI3Ljc0LDIuNDIsMS42OCwzLjI0bC4xNS4xMy43NywzLjM4LjA0LjE1Yy4yNi43My45MSwxLjIsMS42NSwxLjJoMS41NHMuMTUtLjAzLjE1LS4wM2MuNy0uMTQsMS4yMy0uNjQsMS4zOC0xLjMxbC43Ny0zLjM4LS4wMy4wM2MxLjItLjk2LDEuOS0yLjM5LDEuOS0zLjkzWm0tNC4xLDYuOTRjLS4wMi4wOS0uMS4xNi0uMi4xOGgtLjA3cy0xLjM0LDAtMS4zNCwwYy0uMSwwLS4xOS0uMDYtLjIyLS4xNWwtLjAyLS4wNy0uMjUtMS4wOGgyLjM1bC0uMjYsMS4xMlptMS4yOC00LjJsLS4xNy4xMy0uMDguMDdjLS4xLjEtLjE3LjIzLS4yLjM2bC0uMjMsMS4wMWgtLjA0cy0yLjk1LDAtMi45NSwwaC0uMDRzLS4yMy0xLjAxLS4yMy0xLjAxYy0uMDQtLjE4LS4xNS0uMzQtLjMtLjQ0LS44Ni0uNjEtMS40LTEuNTgtMS40Ni0yLjY1di0uMjNjMC0xLjkyLDEuNTctMy40OSwzLjUtMy40OXMzLjUxLDEuNTcsMy41MSwzLjUxYzAsMS4wOC0uNDksMi4wOC0xLjMyLDIuNzRaIiBzdHlsZT0iZmlsbDp3aGl0ZSIvPjwvc3ZnPg==",alt:""})})]})})]})}}class Do{static CreatePopup(e,t,n=300,r=800){const o={width:n,height:r,top:(window.innerHeight-n)/2+window.screenY,left:(window.innerWidth-r)/2+window.screenX},a=Object.keys(o).map((e=>e+"="+o[e])).join(","),i=window.open("",e,a);if(!i)return null;const s=i.document,l=s.createElement("link");l.rel="stylesheet",l.href="https://use.typekit.net/cta4xsb.css",s.head.appendChild(l),s.title=e,s.body.style.width="100%",s.body.style.height="100%",s.body.style.margin="0",s.body.style.padding="0";const c=s.createElement("div");return c.style.width="100%",c.style.height="100%",c.style.margin="0",c.style.padding="0",i.document.body.appendChild(c),this._CopyStyles(window.document,s),setTimeout((()=>{this._CopyStyles(window.document,s)}),0),this[t]=i,c}static _CopyStyles(e,t){for(let n=0;n<e.styleSheets.length;n++){const r=e.styleSheets[n];try{if(r.cssRules){const n=e.createElement("style");for(const t of r.cssRules)n.appendChild(e.createTextNode(t.cssText));t.head.appendChild(n)}else if(r.href){const n=e.createElement("link");n.rel="stylesheet",n.href=r.href,t.head.appendChild(n)}}catch(e){}}}}var Io=r(5778),jo={};jo.styleTagTransform=v(),jo.setAttributes=g(),jo.insert=A().bind(null,"head"),jo.domAPI=p(),jo.insertStyleElement=C(),u()(Io.A,jo),Io.A&&Io.A.locals&&Io.A.locals;var Eo=r(2878),To=r(1917),Oo={};Oo.styleTagTransform=v(),Oo.setAttributes=g(),Oo.insert=A().bind(null,"head"),Oo.domAPI=p(),Oo.insertStyleElement=C(),u()(To.A,Oo);const Po=To.A&&To.A.locals?To.A.locals:void 0;class zo{get isTargetCandidate(){return this._isTargetCandidate}set isTargetCandidate(e){this._isTargetCandidate!==e&&(this._isTargetCandidate=e,e?this._path.classList.add(Po["target-candidate"]):this._path.classList.remove(Po["target-candidate"]))}get isVisible(){return this._isVisible}set isVisible(e){this._isVisible=e,e?(this._path.classList.remove(Zr.hidden),this._selectionPath.classList.remove(Zr.hidden)):(this._path.classList.add(Zr.hidden),this._selectionPath.classList.add(Zr.hidden)),this.update()}get portA(){return this._portA}get portB(){return this._portB}get nodeA(){return this._nodeA}get nodeB(){return this._nodeB}intersectsWith(e){const t=this._path.getBoundingClientRect();if(e.left>t.right||e.right<t.left||e.top>t.bottom||e.bottom<t.top)return!1;const n=this._graphCanvas.zoom,r=this._graphCanvas.svgCanvas.getBoundingClientRect(),o=(e.x-r.x)/n,a=(e.y-r.y)/n,i=o+e.width/n,s=a+e.height/n;for(let e=0;e<1;e+=.1){const t=this._path.getPointAtLength(e*this._path.getTotalLength());if(o<t.x&&i>t.x&&a<t.y&&s>t.y)return!0}return!1}update(e=0,t=0,n=!1){const r=this._portA.element.getBoundingClientRect(),o=this._graphCanvas.canvasContainer.getBoundingClientRect(),a=this._graphCanvas.zoom,i=o.left,s=o.top,l=(r.left-i+.5*r.width)/a,c=(r.top-s+.5*r.height)/a;if(this._portB){const n=this._portB.element.getBoundingClientRect();e=(n.left-i+.5*n.width)/a,t=(n.top-s+.5*n.height)/a}if(n)this._path.setAttribute("d",`M${l},${c} L${e},${t}`),this._path.setAttribute("stroke-dasharray","10, 10"),this._path.setAttribute("stroke-linecap","round");else{const n=e-l,r=t-c,o=Math.min(.5*Math.sqrt(n*n+r*r),300);this._path.setAttribute("d",`M${l},${c} C${l+o},${c} ${e-o},${t} ${e},${t}`),this._selectionPath.setAttribute("d",`M${l},${c} C${l+o},${c} ${e-o},${t} ${e},${t}`)}this._path.setAttribute("stroke",this._portA.element.style.backgroundColor)}get path(){return this._path}get selectionPath(){return this._selectionPath}constructor(e,t,n,r,o){this._isVisible=!0,this._isTargetCandidate=!1,this.onDisposedObservable=new s.Observable,this._portA=t,this._portB=r,this._nodeA=n,this._nodeB=o,this._graphCanvas=e;const a=t.element.ownerDocument,i=e.svgCanvas;this._path=a.createElementNS("http://www.w3.org/2000/svg","path"),this._path.setAttribute("fill","none"),this._path.classList.add(Po.link),i.appendChild(this._path),this._selectionPath=a.createElementNS("http://www.w3.org/2000/svg","path"),this._selectionPath.setAttribute("fill","none"),this._selectionPath.classList.add(Po["selection-link"]),i.appendChild(this._selectionPath),this._selectionPath.onmousedown=e=>this.onClick(e),this._portB&&this.update(),this._onSelectionChangedObserver=this._graphCanvas.stateManager.onSelectionChangedObservable.add((e=>{const{selection:t}=e||{};t===this?(this._path.classList.add(Po.selected),this._selectionPath.classList.add(Po.selected)):(this._path.classList.remove(Po.selected),this._selectionPath.classList.remove(Po.selected))}))}onClick(e){const t=this._graphCanvas.stateManager,n=this._nodeA,r=this._portA.portData,o=this._nodeB,a=this._portB.portData,i=e=>{const i=e.content.data;this.dispose(),this._graphCanvas.connectNodes(n,r,e,e.getPortDataForPortDataContent(i.input)),this._graphCanvas.connectNodes(e,e.getPortDataForPortDataContent(i.output),o,a),t.onRebuildRequiredObservable.notifyObservers()};if(e.altKey){if(!t.isElbowConnectionAllowed(this._portA,this._portB))return;return t.onNewNodeCreatedObservable.addOnce(i),t.onNewBlockRequiredObservable.notifyObservers({type:"ElbowBlock",targetX:e.clientX,targetY:e.clientY,needRepositioning:!0}),void t.historyStack.collapseLastTwo()}if(e.ctrlKey){if(!t.isDebugConnectionAllowed(this._portA,this._portB))return;return t.onNewNodeCreatedObservable.addOnce(i),t.onNewBlockRequiredObservable.notifyObservers({type:"DebugBlock",targetX:e.clientX,targetY:e.clientY,needRepositioning:!0}),void t.historyStack.collapseLastTwo()}t.onSelectionChangedObservable.notifyObservers({selection:this})}dispose(e=!0){this._graphCanvas.stateManager.onSelectionChangedObservable.remove(this._onSelectionChangedObserver),this._path.parentElement&&this._path.parentElement.removeChild(this._path),this._selectionPath.parentElement&&this._selectionPath.parentElement.removeChild(this._selectionPath),this._nodeB&&(this._nodeA.links.splice(this._nodeA.links.indexOf(this),1),this._nodeB.links.splice(this._nodeB.links.indexOf(this),1),this._graphCanvas.links.splice(this._graphCanvas.links.indexOf(this),1),this._portA.portData.disconnectFrom(this._portB.portData),eo(this._nodeB,void 0,void 0,this._graphCanvas)),e&&(this.onDisposedObservable.notifyObservers(this),this.onDisposedObservable.clear())}}var Ro=r(8259),Uo={};Uo.styleTagTransform=v(),Uo.setAttributes=g(),Uo.insert=A().bind(null,"head"),Uo.domAPI=p(),Uo.insertStyleElement=C(),u()(Ro.A,Uo);const Fo=Ro.A&&Ro.A.locals?Ro.A.locals:void 0;var Yo=r(2976),Vo={};Vo.styleTagTransform=v(),Vo.setAttributes=g(),Vo.insert=A().bind(null,"head"),Vo.domAPI=p(),Vo.insertStyleElement=C(),u()(Yo.A,Vo),Yo.A&&Yo.A.locals&&Yo.A.locals;class Go extends a.Component{constructor(e){super(e),this.state={isVisible:!1,filter:"",selectedIndex:0},this._handleEscKey=e=>{"Escape"===e.key&&this.hide()},this.props.stateManager.onSearchBoxRequiredObservable.add((e=>{this._targetX=e.x,this._targetY=e.y,this.setState({isVisible:!0,filter:"",selectedIndex:0}),this.props.stateManager.hostDocument.addEventListener("keydown",this._handleEscKey)}))}hide(){this.setState({isVisible:!1}),this.props.stateManager.modalIsDisplayed=!1,this.props.stateManager.hostDocument.removeEventListener("keydown",this._handleEscKey)}onFilterChange(e){this.setState({filter:e.target.value})}onNewNodeRequested(e){this.props.stateManager.onNewBlockRequiredObservable.notifyObservers({type:e,targetX:this._targetX,targetY:this._targetY,needRepositioning:!0,smartAdd:!0}),this.hide()}onKeyDown(e){"Enter"===e.code&&this._nodes.length>0?this.onNewNodeRequested(this._nodes[this.state.selectedIndex]):"ArrowDown"===e.code&&this._nodes.length>0?this.setState({selectedIndex:Math.min(this.state.selectedIndex+1,this._nodes.length-1)}):"ArrowUp"===e.code&&this._nodes.length>0&&this.setState({selectedIndex:Math.max(this.state.selectedIndex-1,0)})}render(){if(!this.state.isVisible)return null;if(this._nodes=Array.from(new Set(Y.RegisteredNodeNames.sort())),this.state.filter){const e=this.state.filter.toLowerCase().trim();this._nodes=this._nodes.filter((t=>Y.NameFormatter(t).toLowerCase().includes(e)))}const e=this.props.stateManager.hostDocument.getElementById("graph-canvas").getBoundingClientRect(),t=this._targetX-(150+e.x),n=this._targetY-(200+e.y),r={left:t+"px",top:n+"px"};return t+300>e.width?r.left=e.width-300-10+"px":t<10&&(r.left="10px"),n+400>e.height?r.top=e.height-400-10+"px":n<10&&(r.top="10px"),(0,l.jsxs)("div",{id:"graph-search-container",children:[(0,l.jsx)("div",{id:"graph-search-picking-blocker",onClick:()=>this.hide()}),(0,l.jsxs)("div",{id:"graph-search-box",style:r,children:[(0,l.jsx)("div",{className:"graph-search-box-title",children:"Add a node"}),(0,l.jsx)("input",{type:"text",placeholder:"Search...",onChange:e=>this.onFilterChange(e),onKeyDown:e=>this.onKeyDown(e),value:this.state.filter,className:"graph-search-box-filter",autoFocus:!0,tabIndex:0}),(0,l.jsx)("div",{className:"graph-search-box-list",children:this._nodes.map(((e,t)=>(0,l.jsx)("div",{className:"graph-search-box-list-item "+(this.state.selectedIndex===t?"selected ":""),onClick:()=>this.onNewNodeRequested(e),children:Y.NameFormatter(e)},e)))})]})]})}}class Wo extends a.Component{get gridSize(){return this._gridSize}set gridSize(e){this._gridSize=e,this.updateTransform()}get stateManager(){return this.props.stateManager}get nodes(){return this._nodes}get links(){return this._links}get frames(){return this._frames}get zoom(){return this._zoom}set zoom(e){this._zoom!==e&&(this._zoom=e,this.updateTransform())}get x(){return this._x}set x(e){this._x=e,this.updateTransform()}get y(){return this._y}set y(e){this._y=e,this.updateTransform()}get selectedNodes(){return this._selectedNodes}get selectedLink(){return this._selectedLink}get selectedFrames(){return this._selectedFrames}get selectedPort(){return this._selectedPort}get canvasContainer(){return this._graphCanvas}get hostCanvas(){return this._hostCanvas}get svgCanvas(){return this._svgCanvas}get selectionContainer(){return this._selectionContainer}get frameContainer(){return this._frameContainer}_selectedFrameAndNodesConflict(e,t){for(const n of e)for(const e of t)if(n.nodes.includes(e))return!0;return!1}constructor(e){super(e),this._minZoom=.1,this._maxZoom=4,this._hostCanvasRef=a.createRef(),this._graphCanvasRef=a.createRef(),this._selectionContainerRef=a.createRef(),this._frameContainerRef=a.createRef(),this._svgCanvasRef=a.createRef(),this._rootContainerRef=a.createRef(),this._nodes=[],this._links=[],this._mouseStartPointX=null,this._mouseStartPointY=null,this._dropPointX=0,this._dropPointY=0,this._selectionStartX=0,this._selectionStartY=0,this._candidateLinkedHasMoved=!1,this._x=0,this._y=0,this._zoom=1,this._selectedNodes=[],this._selectedLink=null,this._selectedPort=null,this._candidateLink=null,this._candidatePort=null,this._gridSize=20,this._selectionBox=null,this._selectedFrames=[],this._frameCandidate=null,this._frames=[],this._nodeDataContentList=new Array,this._altKeyIsPressed=!1,this._multiKeyIsPressed=!1,this._oldY=-1,this._frameIsMoving=!1,this._isLoading=!1,this._targetLinkCandidate=null,this._copiedNodes=[],this._copiedFrames=[],e.stateManager.onSelectionChangedObservable.add((e=>{const{selection:t,forceKeepSelection:n,marqueeSelection:r=!1}=e||{};if(t){if(t instanceof zo)this._selectedNodes=[],this._selectedFrames=[],this._selectedLink=t,this._selectedPort=null;else if(t instanceof Kr)this._selectedNodes=[],this._selectedFrames=[],this._selectedLink=null,this._selectedPort=t;else if(t instanceof to)this._selectedNodes=[],this._selectedFrames=[],this._selectedLink=null,this._selectedPort=t;else if(t instanceof bo||t instanceof lo)if(r){if(t instanceof lo&&!this._selectedFrames.includes(t)?this._selectedFrames.push(t):t instanceof bo&&!this._selectedNodes.includes(t)&&this._selectedNodes.push(t),this._selectedFrameAndNodesConflict(this.selectedFrames,this.selectedNodes)){const e=new Set;for(const t of this._selectedNodes)for(const n of this._selectedFrames)n.nodes.includes(t)&&e.add(n);this._selectedFrames=this._selectedFrames.filter((t=>!e.has(t)))}}else t instanceof lo?this._multiKeyIsPressed||n?this._selectedFrameAndNodesConflict([t],this._selectedNodes)||this._selectedFrames.includes(t)||this._selectedFrames.push(t):(this._selectedFrames=[t],this._selectedNodes=[],this._selectedLink=null,this._selectedPort=null):t instanceof bo&&(this._multiKeyIsPressed||n?this._selectedFrameAndNodesConflict(this._selectedFrames,[t])||this._selectedNodes.includes(t)||this._selectedNodes.push(t):(this._selectedFrames=[],this._selectedNodes=[t],this._selectedLink=null,this._selectedPort=null))}else this._selectedNodes=[],this._selectedLink=null,this._selectedFrames=[],this._selectedPort=null})),e.stateManager.onCandidatePortSelectedObservable.add((e=>{this._candidatePort=e})),e.stateManager.onGridSizeChanged.add((()=>{this.gridSize=s.DataStorage.ReadNumber("GridSize",20)})),this.props.stateManager.hostDocument.addEventListener("keyup",(()=>this.onKeyUp()),!1),this.props.stateManager.hostDocument.addEventListener("keydown",(e=>{this._altKeyIsPressed=e.altKey,this._multiKeyIsPressed=e.ctrlKey||e.metaKey}),!1),this.props.stateManager.hostDocument.defaultView.addEventListener("blur",(()=>{this._altKeyIsPressed=!1,this._multiKeyIsPressed=!1}),!1),this.props.stateManager.storeEditorData=(e,t)=>{if(e.frames=[],t)e.frames.push(t.serialize(!1));else{e.x=this.x,e.y=this.y,e.zoom=this.zoom;for(const t of this._frames)e.frames.push(t.serialize(!0))}}}populateConnectedEntriesBeforeRemoval(e,t,n,r){n.push(...e.content.inputs.filter((e=>e.isConnected&&t.every((t=>t.content.data!==e.connectedPort?.ownerData)))).map((e=>e.connectedPort))),r.push(...e.content.outputs.filter((e=>e.isConnected)).map((e=>e.endpoints)).flat().filter((e=>e&&t.every((t=>t.content.data!==e.ownerData)))))}automaticRewire(e,t,n=!1){let r=!1;t.length&&e.length&&e.forEach((e=>{if(r)return;if(!e)return;const o=t[0];if(o&&e.canConnectTo(o)){const a=this.findNodeFromData(e.ownerData),i=this.findNodeFromData(o.ownerData);if(this.connectNodes(a,e,i,o),t.shift(),n)return void(r=!0)}}))}smartAddOverLink(e,t){const n=[],r=[],o=[],a=[],i=t.nodeA,s=t.nodeB;t.dispose(),o.push(...e.content.inputs.filter((e=>!e.isConnected))),a.push(...e.content.outputs),n.push(...i.content.outputs),r.push(...s.content.inputs.filter((e=>!e.isConnected))),this.automaticRewire(n,o,!0),this.automaticRewire(a,r,!0),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}smartAddOverNode(e,t){const n=[],r=[];r.push(...e.content.inputs.filter((e=>!e.isConnected))),n.push(...t.content.outputs),this.automaticRewire(n,r,!0),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}deleteSelection(e,t=!1){const n=this.selectedNodes,r=[],o=[];let a=!1;if(n.length>0){a=!0;for(const a of n)t&&this.populateConnectedEntriesBeforeRemoval(a,n,r,o),a.dispose(),e(a.content),this.removeDataFromCache(a.content.data)}if(this.selectedLink&&(a=!0,this.selectedLink.dispose()),this.selectedFrames.length){a=!0;for(const t of this.selectedFrames){if(t.isCollapsed){for(;t.nodes.length>0;)e(t.nodes[0].content),this.removeDataFromCache(t.nodes[0].content.data),t.nodes[0].dispose();t.isCollapsed=!1}else t.nodes.forEach((e=>{e.enclosingFrameId=-1}));t.dispose()}}a&&(this.automaticRewire(r,o),this.props.stateManager.onSelectionChangedObservable.notifyObservers(null),this.props.stateManager.onRebuildRequiredObservable.notifyObservers())}handleKeyDown(e,t,n,r,o,a){if(!this.stateManager.modalIsDisplayed){if("Space"===e.code&&e.target===this.props.stateManager.hostDocument.body)return this.stateManager.modalIsDisplayed=!0,void this.props.stateManager.onSearchBoxRequiredObservable.notifyObservers({x:n,y:r});if(46!==e.keyCode&&8!==e.keyCode||this.props.stateManager.lockObject.lock){if((e.ctrlKey||e.metaKey)&&!this.props.stateManager.lockObject.lock)if("c"===e.key||"C"===e.key){if(this._copiedNodes=[],this._copiedFrames=[],this.selectedFrames.length){for(const e of this.selectedFrames)e.serialize(!0),this._copiedFrames.push(e);return}const e=this.selectedNodes;if(!e.length)return;if(!e[0].content.data)return;this._copiedNodes=e.slice(0)}else if("v"===e.key||"V"===e.key){const e=this.zoom;let t=(r-a.offsetTop-this.y-20)/e;if(this._copiedFrames.length)for(const r of this._copiedFrames){const i=new lo(null,this,!0);this.frames.push(i),i.width=r.width,i.height=r.height,i.width,i.name=r.name,i.color=r.color;let s=(n-a.offsetLeft-this.x)/e;if(i.x=s-i.width/2,i.y=t,r.nodes.length){s=i.x+r.nodes[0].x-r.x,t=i.y+r.nodes[0].y-r.y,this._frameIsMoving=!0;const e=this.pasteSelection(r.nodes,s,t,o);if(e)for(const t of e)i.syncNode(t);this._frameIsMoving=!1}return i.adjustPorts(),r.isCollapsed&&(i.isCollapsed=!0),void this.props.stateManager.onSelectionChangedObservable.notifyObservers({selection:i,forceKeepSelection:!0})}if(!this._copiedNodes.length)return;const i=(n-a.offsetLeft-this.x-Wo.NodeWidth)/e;this.pasteSelection(this._copiedNodes,i,t,o,!0)}}else this.deleteSelection(t,e.altKey)}}pasteSelection(e,t,n,r,o=!1){let a=null;const i=[];e=e.slice(),this.props.stateManager.onSelectionChangedObservable.notifyObservers(null);for(const s of e){if(!s.content.data)continue;const e=r(s.content);let l=0,c=0;a?(l=t+s.x-a.x,c=n+s.y-a.y):(a=s,l=t,c=n),e.x=l,e.y=c,e.cleanAccumulation(),i.push(e),this.props.stateManager.onNewNodeCreatedObservable.notifyObservers(e),o&&this.props.stateManager.onSelectionChangedObservable.notifyObservers({selection:e,forceKeepSelection:!0})}const s=new Array(i.length);for(let t=0;t<i.length;t++)this.reconnectNewNodes(t,i,e,s);return i}reconnectNewNodes(e,t,n,r){if(r[e])return;const o=t[e],a=n[e];for(let e=0;e<a.content.inputs.length;e++){const i=a.content.inputs[e],s=o.content.inputs[e];if(!i.isConnected)continue;const l=this.findNodeFromData(i.connectedPort.ownerData).content,c=n.filter((e=>e.content===l));if(c.length>0){const e=c[0],o=n.indexOf(e);this.reconnectNewNodes(o,t,n,r);const a=l.outputs.indexOf(i.connectedPort);t[o].content.data.outputs[a].connectTo(s.data)}else i.connectedPort.connectTo(s);this.connectPorts(s.connectedPort,s)}o.refresh(),r[e]=!0}getCachedData(){return this._nodeDataContentList}removeDataFromCache(e){const t=this._nodeDataContentList.indexOf(e);t>-1&&this._nodeDataContentList.splice(t,1)}createNodeFromObject(e,t,n=!0){if(-1!==this._nodeDataContentList.indexOf(e.data)){if(e.inputs.length&&n)for(const t of e.inputs)t.isConnected&&this.connectPorts(t.connectedPort,t);return this.nodes.filter((t=>t.content.data===e.data))[0]}if(t(e.data),e.inputs.length)for(const r of e.inputs)r.connectedPort&&n&&this.createNodeFromObject(S.NodeDataBuilder(r.connectedPort.ownerData,this),t);const r=this.appendNode(e);if(e.inputs.length&&n)for(const t of e.inputs)t.isConnected&&this.connectPorts(t.connectedPort,t);return r}getGridPosition(e,t=!1){const n=this.gridSize;return 0===n?e:t?n*Math.ceil(e/n):n*Math.floor(e/n)}getGridPositionCeil(e){const t=this.gridSize;return 0===t?e:t*Math.ceil(e/t)}updateTransform(){this._rootContainer.style.transform=`translate(${this._x}px, ${this._y}px) scale(${this._zoom})`,s.DataStorage.ReadBoolean("ShowGrid",!0)?(this._hostCanvas.style.backgroundSize=`${this._gridSize*this._zoom}px ${this._gridSize*this._zoom}px`,this._hostCanvas.style.backgroundPosition=`${this._x}px ${this._y}px`):this._hostCanvas.style.backgroundSize="0"}onKeyUp(){this._altKeyIsPressed=!1,this._multiKeyIsPressed=!1,this._oldY=-1}findNodeFromData(e){return this.nodes.filter((t=>t.content.data===e))[0]}reset(){this._nodeDataContentList=[];for(const e of this._nodes)e.dispose();const e=this._frames.splice(0);for(const t of e)t.dispose();this._nodes=[],this._frames=[],this._links=[],this._graphCanvas.innerHTML="",this._svgCanvas.innerHTML=""}connectPorts(e,t){if(!e||!t)return;const n=e.ownerData,r=t.ownerData,o=this.findNodeFromData(n),a=this.findNodeFromData(r);if(!o||!a)return;const i=o.getPortForPortData(e),s=a.getPortForPortData(t);if(!i||!s)return;for(const e of this._links){if(e.portA===i&&e.portB===s)return;if(e.portA===s&&e.portB===i)return}const l=new zo(this,i,o,s,a);this._links.push(l),o.links.push(l),a.links.push(l)}removeLink(e){const t=this._links.indexOf(e);t>-1&&this._links.splice(t,1),e.dispose()}appendNode(e){const t=new bo(e,this.props.stateManager);return t.appendVisual(this._graphCanvas,this),t.addClassToVisual(e.getClassName()),this._nodes.push(t),this._nodeDataContentList.push(e.data),t}distributeGraph(){this.x=0,this.y=0,this.zoom=1;const e=new Eo.graphlib.Graph;e.setGraph({}),e.setDefaultEdgeLabel((()=>({}))),e.graph().rankdir="LR",this._nodes.forEach((t=>{this._frames.some((e=>-1!==e.nodes.indexOf(t)))||e.setNode(t.id.toString(),{id:t.id,type:"node",width:t.width,height:t.height})})),this._frames.forEach((t=>{e.setNode(t.id.toString(),{id:t.id,type:"frame",width:t.element.clientWidth,height:t.element.clientHeight})})),this._nodes.forEach((t=>{t.content.outputs.forEach((n=>{n.hasEndpoints&&n.endpoints.forEach((n=>{const r=this._frames.filter((e=>-1!==e.nodes.indexOf(t))),o=this._frames.filter((e=>e.nodes.some((e=>e.content.data===n.ownerData)))),a=r.length>0?r[0].id:t.id,i=o.length>0?o[0].id:n.ownerData.uniqueId;e.setEdge(a.toString(),i.toString())}))}))})),Eo.layout(e),e.nodes().map((t=>e.node(t))).forEach((e=>{if(e)if("node"!==e.type){for(const t of this._frames)if(t.id===e.id)return this._frameIsMoving=!0,t.move(e.x-e.width/2,e.y-e.height/2,!1),t.cleanAccumulation(),void(this._frameIsMoving=!1)}else for(const t of this._nodes)if(t.id===e.id)return t.x=e.x-e.width/2,t.y=e.y-e.height/2,void t.cleanAccumulation()}))}componentDidMount(){this._hostCanvas=this._hostCanvasRef.current,this._rootContainer=this._rootContainerRef.current,this._graphCanvas=this._graphCanvasRef.current,this._svgCanvas=this._svgCanvasRef.current,this._selectionContainer=this._selectionContainerRef.current,this._frameContainer=this._frameContainerRef.current,this.gridSize=s.DataStorage.ReadNumber("GridSize",20),this.updateTransform()}onMove(e){if(!this.stateManager.modalIsDisplayed){if(this._selectionBox){const t=this.canvasContainer.getBoundingClientRect(),n=e.pageX-t.left,r=e.pageY-t.top;return n>this._selectionStartX?(this._selectionBox.style.left=this._selectionStartX/this.zoom+"px",this._selectionBox.style.width=(n-this._selectionStartX)/this.zoom+"px"):(this._selectionBox.style.left=n/this.zoom+"px",this._selectionBox.style.width=(this._selectionStartX-n)/this.zoom+"px"),r>this._selectionStartY?(this._selectionBox.style.top=this._selectionStartY/this.zoom+"px",this._selectionBox.style.height=(r-this._selectionStartY)/this.zoom+"px"):(this._selectionBox.style.top=r/this.zoom+"px",this._selectionBox.style.height=(this._selectionStartY-r)/this.zoom+"px"),void this.props.stateManager.onSelectionBoxMoved.notifyObservers(this._selectionBox.getBoundingClientRect())}if(this._frameCandidate){const t=this.canvasContainer.getBoundingClientRect(),n=e.pageX-t.left,r=e.pageY-t.top;return n>this._selectionStartX?(this._frameCandidate.style.left=this._selectionStartX/this.zoom+"px",this._frameCandidate.style.width=(n-this._selectionStartX)/this.zoom+"px"):(this._frameCandidate.style.left=n/this.zoom+"px",this._frameCandidate.style.width=(this._selectionStartX-n)/this.zoom+"px"),void(r>this._selectionStartY?(this._frameCandidate.style.top=this._selectionStartY/this.zoom+"px",this._frameCandidate.style.height=(r-this._selectionStartY)/this.zoom+"px"):(this._frameCandidate.style.top=r/this.zoom+"px",this._frameCandidate.style.height=(this._selectionStartY-r)/this.zoom+"px"))}if(this._candidateLink){const t=this.canvasContainer.getBoundingClientRect();return this._candidatePort=null,this.props.stateManager.onCandidateLinkMoved.notifyObservers(new s.Vector2(e.pageX,e.pageY)),this._dropPointX=(e.pageX-t.left)/this.zoom,this._dropPointY=(e.pageY-t.top)/this.zoom,this._candidateLink.update(this._dropPointX,this._dropPointY,!0),void(this._candidateLinkedHasMoved=!0)}if(this._altKeyIsPressed&&1===e.buttons){this._oldY<0&&(this._oldY=e.pageY);const t=(e.pageY-this._oldY)/10;if(Math.abs(t)>5){const n=this.zoom;this.zoom=Math.max(Math.min(this._maxZoom,this.zoom+t/100),this._minZoom);const r=e.currentTarget.getBoundingClientRect(),o=r.width,a=o*this.zoom-o*n,i=(e.clientX-r.left-this.x)/n/o;this.x=this.x-a*i,this._oldY=e.pageY}}else this._rootContainer.style.cursor="move",null!==this._mouseStartPointX&&null!==this._mouseStartPointY&&(this.x+=e.clientX-this._mouseStartPointX,this.y+=e.clientY-this._mouseStartPointY,this._mouseStartPointX=e.clientX,this._mouseStartPointY=e.clientY)}}onDown(e){if(!this.stateManager.modalIsDisplayed)if(this._rootContainer.setPointerCapture(e.pointerId),e.nativeEvent.srcElement&&"IMG"===e.nativeEvent.srcElement.nodeName){if(!this._candidateLink){const t=e.nativeEvent.srcElement.parentElement.port;if(this._altKeyIsPressed&&(t.portData.isConnected||t.portData.hasEndpoints)){const e=t.node,n=e.getLinksForPortData(t.portData);n.forEach((e=>{e.dispose(!1)}));const r=n[0].nodeA===e?n[0].nodeB:n[0].nodeA,o=n[0].nodeA===e?n[0].portB:n[0].portA;this._candidateLink=new zo(this,o,r)}else if(this._multiKeyIsPressed&&(t.portData.isConnected||t.portData.hasEndpoints)){const e=t.node,n=e.getLinksForPortData(t.portData),r=this._selectedLink||n[0],o=r.nodeA===e?r.nodeB:r.nodeA,a=r.nodeA===e?r.portB:r.portA;this._candidateLink=new zo(this,a,o)}else this._candidateLink=new zo(this,t,t.node);this._candidateLinkedHasMoved=!1}}else{if(e.currentTarget===this._hostCanvas&&this._multiKeyIsPressed){this._selectionBox=this.props.stateManager.hostDocument.createElement("div"),this._selectionBox.classList.add(Fo["selection-box"]),this._selectionContainer.appendChild(this._selectionBox);const t=this.canvasContainer.getBoundingClientRect();return this._selectionStartX=e.pageX-t.left,this._selectionStartY=e.pageY-t.top,this._selectionBox.style.left=this._selectionStartX/this.zoom+"px",this._selectionBox.style.top=this._selectionStartY/this.zoom+"px",this._selectionBox.style.width="0px",void(this._selectionBox.style.height="0px")}if(e.currentTarget===this._hostCanvas&&e.shiftKey){this._frameCandidate=this.props.stateManager.hostDocument.createElement("div"),this._frameCandidate.classList.add(Zr["frame-box"]),this._frameContainer.appendChild(this._frameCandidate);const t=this.canvasContainer.getBoundingClientRect();return this._selectionStartX=e.pageX-t.left,this._selectionStartY=e.pageY-t.top,this._frameCandidate.style.left=this._selectionStartX/this.zoom+"px",this._frameCandidate.style.top=this._selectionStartY/this.zoom+"px",this._frameCandidate.style.width="0px",void(this._frameCandidate.style.height="0px")}this.props.stateManager.onSelectionChangedObservable.notifyObservers(null),this._mouseStartPointX=e.clientX,this._mouseStartPointY=e.clientY}}onUp(e){if(!this.stateManager.modalIsDisplayed){if(this._mouseStartPointX=null,this._mouseStartPointY=null,this._rootContainer.releasePointerCapture(e.pointerId),this._oldY=-1,this._candidateLink){if(this._candidateLinkedHasMoved)this.processCandidatePort(),this.props.stateManager.onCandidateLinkMoved.notifyObservers(null);else if(this._candidateLink.portA instanceof to){const e=this._candidateLink.portA,t=this.frames.find((t=>t.id===e.parentFrameId));if(t){const n={frame:t,port:e};this.props.stateManager.onSelectionChangedObservable.notifyObservers({selection:n})}}else this._candidateLink.portA instanceof Kr&&this.props.stateManager.onSelectionChangedObservable.notifyObservers({selection:this._candidateLink.portA});this._candidateLink.dispose(),this._candidateLink=null,this._candidatePort=null}if(this._selectionBox&&(this._selectionBox.parentElement.removeChild(this._selectionBox),this._selectionBox=null),this._frameCandidate){const e=new lo(this._frameCandidate,this);this._frames.push(e),this._frameCandidate.parentElement.removeChild(this._frameCandidate),this._frameCandidate=null,this.props.stateManager.onSelectionChangedObservable.notifyObservers({selection:e})}}}onWheel(e){if(this.stateManager.modalIsDisplayed)return;const t=e.deltaY<0?.1:-.1,n=this.zoom;this.zoom=Math.min(Math.max(this._minZoom,this.zoom+t*this.zoom),this._maxZoom);const r=e.currentTarget.getBoundingClientRect(),o=r.width,a=r.height,i=o*this.zoom-o*n,s=a*this.zoom-a*n,l=e.clientX-r.left,c=e.clientY-r.top,u=(l-this.x)/n/o,d=(c-this.y)/n/a;this.x=this.x-i*u,this.y=this.y-s*d}zoomToFit(){let e=0,t=0;this._nodes.forEach((n=>{this._frames.some((e=>-1!==e.nodes.indexOf(n)))||(n.x<e&&(e=n.x),n.y<t&&(t=n.y))})),this._frames.forEach((n=>{n.x<e&&(e=n.x),n.y<t&&(t=n.y)})),this._frames.forEach((n=>{n.x+=-e,n.y+=-t,n.cleanAccumulation()})),this._nodes.forEach((n=>{n.x+=-e,n.y+=-t,n.cleanAccumulation()}));const n=this._rootContainer.clientWidth/this._rootContainer.scrollWidth,r=this._rootContainer.clientHeight/this._rootContainer.scrollHeight,o=n<r?n:r;this.zoom=o,this.x=0,this.y=0}processCandidatePort(){let e,t,r=this._candidateLink.portA.portData,o=this._candidateLink.portA.node;if(this._candidatePort)e=this._candidatePort.portData,t=this._candidatePort.node;else{if(r.direction===n.Output)return;const o=this.props.stateManager.createDefaultInputData(this.props.stateManager.data,this._candidateLink.portA.portData,this);if(!o)return;const a=o.name,i=o.data;if(e=i.getPortByName(a),!e){for(let t=0;t<i.outputs.length;t++){const n=i.outputs[t];if(n.data._blockType===r.data._blockType){e=n;break}}if(!e)return}t=i.isInput?this.appendNode(i):this.props.onEmitNewNode(i),t.x=this._dropPointX-200,t.y=this._dropPointY-50;const s=t.x-250;let l=t.y;i.inputs.forEach((e=>{if(e.connectedPort){const t=this.nodes.filter((t=>t.content.data===e.connectedPort?.ownerData))[0];0===t.x&&0===t.y&&(t.x=s,t.y=l,t.cleanAccumulation(),l+=80)}}))}if(e.direction===n.Input){const n=r;r=e,e=n;const a=t;t=o,o=a}if(r.connectedPort===e)return;if(r===e)return;if(r.direction===e.direction)return;if(r.ownerData===e.ownerData)return;let a=e.checkCompatibilityState(r);!e.needDualDirectionValidation&&!r.needDualDirectionValidation||a||(a=r.checkCompatibilityState(e));const i=e.getCompatibilityIssueMessage(a,o,r);if(i)return void this.props.stateManager.onErrorMessageDialogRequiredObservable.notifyObservers(i);let s=null;if(r.isConnected){const e=o.getLinksForPortData(r);s=e.slice(),e.forEach((e=>{e.dispose(!1)}))}r.ownerData.inputsAreExclusive&&r.ownerData.inputs.forEach((e=>{const t=o.getLinksForPortData(e);s?s.push(...t.slice()):s=t.slice(),t.forEach((e=>{e.dispose(!1)}))})),this.connectNodes(t,e,o,r),s?.forEach((e=>{e.onDisposedObservable.notifyObservers(e),e.onDisposedObservable.clear()})),o.content.isConnectedToOutput&&!o.content.isConnectedToOutput()||this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}connectNodes(e,t,n,r){t.connectTo(r),this.connectPorts(t,r);const o=new Set([e]),a=new Set([n.links[n.links.length-1]]);eo(n,o,a,this)}drop(e,t,n,r,o){let a=t-this.x-r*this.zoom,i=n-this.y-o*this.zoom;e.x=a/this.zoom,e.y=i/this.zoom,e.cleanAccumulation(),a-=Wo.NodeWidth+200,e.content.inputs.forEach((e=>{if(e.connectedPort){const t=this.nodes.filter((t=>t.content.data===e.connectedPort?.ownerData))[0];0===t.x&&0===t.y&&(t.x=a/this.zoom,t.y=i/this.zoom,t.cleanAccumulation(),i+=80)}})),this.props.stateManager.onNewNodeCreatedObservable.notifyObservers(e),this.props.stateManager.onSelectionChangedObservable.notifyObservers(null),this.props.stateManager.onSelectionChangedObservable.notifyObservers({selection:e})}processEditorData(e){const t=this._frames.splice(0);for(const e of t)e.dispose();if(this._frames=[],this.x=e.x||0,this.y=e.y||0,this.zoom=e.zoom||1,e.frames)for(const t of e.frames){const n=lo.Parse(t,this,e.map);this._frames.push(n)}}reOrganize(e=null,t=!1){if(e&&e.locations){for(const t of e.locations)for(const e of this.nodes){const n=e.content.data;if(n&&n.uniqueId===t.blockId){e.x=t.x,e.y=t.y,t.isCollapsed&&e.collapse(),e.cleanAccumulation();break}}t||this.processEditorData(e)}else this.distributeGraph();this._isLoading=!1;for(const e of this.nodes)e._refreshLinks()}addFrame(e){const t=lo.Parse(e,this,this.props.stateManager.getEditorDataMap());this._frames.push(t),this.stateManager.onSelectionChangedObservable.notifyObservers({selection:t})}render(){return(0,l.jsxs)("div",{ref:this._hostCanvasRef,id:"graph-canvas",className:Fo["graph-canvas"],onWheel:e=>this.onWheel(e),onPointerMove:e=>this.onMove(e),onPointerDown:e=>this.onDown(e),onPointerUp:e=>this.onUp(e),children:[(0,l.jsxs)("div",{id:"graph-container",className:Fo["graph-container"],ref:this._rootContainerRef,children:[(0,l.jsx)("div",{id:"graph-canvas-container",className:Fo["graph-canvas-container"],ref:this._graphCanvasRef}),(0,l.jsx)("div",{id:"frame-container",className:Fo["frame-container"],ref:this._frameContainerRef}),(0,l.jsx)("svg",{id:"graph-svg-container",className:Fo["graph-svg-container"],ref:this._svgCanvasRef}),(0,l.jsx)("div",{id:"selection-container",className:Fo["selection-container"],ref:this._selectionContainerRef})]}),(0,l.jsx)(Go,{stateManager:this.stateManager})]})}}Wo.NodeWidth=100;class Ho{constructor(e,t){this._historyStack=[],this._redoStack=[],this._maxHistoryLength=256,this._locked=!1,this.isEnabled=!0,this._dataProvider=e,this._applyUpdate=t}processKeyEvent(e){if(!this.isEnabled)return!1;if(e.ctrlKey||e.metaKey){if("z"===e.key||"Z"===e.key)return e.shiftKey?(this.redo(),!0):(this.undo(),!0);if("y"===e.key||"Y"===e.key)return this.redo(),!0}return!1}reset(){this._historyStack=[],this._redoStack=[],this._activeData=null,this.store()}collapseLastTwo(){if(this._historyStack.length<2)return;this._locked=!0;const e=this._historyStack.pop(),t=this._historyStack.pop();let n=this._applyJSONDiff(this._activeData,JSON.parse(e));n=this._applyJSONDiff(n,JSON.parse(t)),this._historyStack.push(JSON.stringify(this._generateJSONDiff(this._activeData,n))),this._locked=!1}_generateJSONDiff(e,t){if(e===t)return;if(null===e||null===t||"object"!=typeof e||"object"!=typeof t)return e!==t&&void 0===t?"@d@":t;if(Array.isArray(e)&&Array.isArray(t)){const n=[],r=Math.max(e.length,t.length);let o=!1;for(let a=0;a<r;a++){const r=this._generateJSONDiff(e[a],t[a]);void 0!==r&&(n[a]=r,o=!0)}return o?n:void 0}const n={},r=new Set([...Object.keys(e),...Object.keys(t)]);let o=!1;for(const a of r)if(a in e)if(a in t){const r=this._generateJSONDiff(e[a],t[a]);void 0!==r&&(n[a]=r,o=!0)}else n[a]="@d@",o=!0;else n[a]=t[a],o=!0;return o?n:void 0}_applyJSONDiff(e,t){if(void 0===t)return e;if("object"!=typeof t||null===t||null==e)return t;const n=Array.isArray(e)?[]:{};if(Array.isArray(t))for(let r=0;r<Math.max(e.length,t.length);r++)null===t[r]&&r<e.length?n[r]=e[r]:"@d@"!==t[r]&&(n[r]=this._applyJSONDiff(e[r],t[r]));else{for(const r in e)r in t||(n[r]=e[r]);for(const r in t)"@d@"===t[r]||("object"==typeof t[r]&&null!==t[r]?n[r]=this._applyJSONDiff(e[r],t[r]):n[r]=t[r])}return n}_copy(e){return JSON.parse(JSON.stringify(e))}store(){if(this._locked||!this.isEnabled)return;const e=this._copy(this._dataProvider());if(this._activeData){const t=this._generateJSONDiff(e,this._activeData);if(!t)return;this._historyStack.push(JSON.stringify(t))}this._activeData=e,this._historyStack.length>this._maxHistoryLength&&this._historyStack.shift(),this._redoStack.length=0}undo(){if(!this._historyStack.length)return;this._locked=!0;const e=this._historyStack.pop(),t=this._applyJSONDiff(this._activeData,JSON.parse(e));this._redoStack.push(JSON.stringify(this._generateJSONDiff(t,this._activeData))),this._applyUpdate(this._copy(t)),this._activeData=t,this._locked=!1}redo(){if(!this._redoStack.length)return;this._locked=!0;const e=this._redoStack.pop(),t=this._applyJSONDiff(this._activeData,JSON.parse(e));this._historyStack.push(JSON.stringify(this._generateJSONDiff(t,this._activeData))),this._applyUpdate(this._copy(t)),this._activeData=t,this._locked=!1}dispose(){this._historyStack=[],this._redoStack=[]}}class Qo extends a.Component{appendBlock(e,t=!0){return this._graphCanvas.createNodeFromObject(e instanceof s.NodeMaterialBlock?S.NodeDataBuilder(e,this._graphCanvas):e,(e=>{-1===this.props.globalState.nodeMaterial.attachedBlocks.indexOf(e)&&this.props.globalState.nodeMaterial.attachedBlocks.push(e),e.isFinalMerger&&this.props.globalState.nodeMaterial.addOutputNode(e)}),t)}addValueNode(e){const t=k.GetConnectionNodeTypeFromString(e),n=new s.InputBlock(e,void 0,t);return this.appendBlock(n)}prepareHistoryStack(){const e=this.props.globalState.nodeMaterial,t=this.props.globalState;this._historyStack=new Ho((()=>(E.UpdateLocations(e,t),e.serialize())),(n=>{t.stateManager.onSelectionChangedObservable.notifyObservers(null),e.parseSerializedObject(n),t.onResetRequiredObservable.notifyObservers(!1)})),t.stateManager.historyStack=this._historyStack,t.stateManager.onUpdateRequiredObservable.add((()=>{this._historyStack.store()})),t.stateManager.onRebuildRequiredObservable.add((()=>{this._historyStack.store()})),t.stateManager.onNodeMovedObservable.add((()=>{this._historyStack.store()})),t.stateManager.onNewNodeCreatedObservable.add((()=>{this._historyStack.store()})),t.onClearUndoStack.add((()=>{this._historyStack.reset()}))}componentDidMount(){window.addEventListener("wheel",this.onWheel,{passive:!1}),this.props.globalState.hostDocument&&(this._graphCanvas=this._graphCanvasRef.current,this._diagramContainer=this._diagramContainerRef.current,this.prepareHistoryStack(),this._previewManager=new So(this.props.globalState.hostDocument.getElementById("preview-canvas"),this.props.globalState),this.props.globalState._previewManager=this._previewManager),-1!==navigator.userAgent.indexOf("Mobile")&&((this.props.globalState.hostDocument||document).querySelector(".blocker").style.visibility="visible"),this.props.globalState.onPopupClosedObservable.addOnce((()=>{this.componentWillUnmount()})),this.build(),this.props.globalState.onClearUndoStack.notifyObservers()}componentWillUnmount(){window.removeEventListener("wheel",this.onWheel),this.props.globalState.hostDocument&&this.props.globalState.hostDocument.removeEventListener("keyup",this._onWidgetKeyUpPointer,!1),this._historyStack&&(this._historyStack.dispose(),this._historyStack=null),this._previewManager&&(this._previewManager.dispose(),this._previewManager=null)}constructor(e){super(e),this._leftWidth=s.DataStorage.ReadNumber("LeftWidth",200),this._rightWidth=s.DataStorage.ReadNumber("RightWidth",300),this._mouseLocationX=0,this._mouseLocationY=0,this.onWheel=e=>{if(this.props.globalState.pointerOverCanvas)return e.preventDefault();if(e.ctrlKey)return e.preventDefault();if(Math.abs(e.deltaX)<Math.abs(e.deltaY))return;const t=e.currentTarget,n=t.scrollWidth-t.offsetWidth;return t.scrollLeft+e.deltaX<0||t.scrollLeft+e.deltaX>n?e.preventDefault():void 0},this.handlePopUp=()=>{this.setState({showPreviewPopUp:!0}),this.createPopUp(),this.props.globalState.hostWindow.addEventListener("beforeunload",this.handleClosingPopUp)},this.handleClosingPopUp=()=>{this._previewManager&&this._previewManager.dispose(),this._popUpWindow.close(),this.setState({showPreviewPopUp:!1},(()=>this.initiatePreviewArea()))},this.initiatePreviewArea=(e=this.props.globalState.hostDocument.getElementById("preview-canvas"))=>{this._previewManager=new So(e,this.props.globalState)},this.createPopUp=()=>{const e={embedHostWidth:"100%",original:!0,popup:!0,overlay:!1,embedMode:!1,enableClose:!0,handleResize:!0,enablePopup:!0},t=this.createPopupWindow("PREVIEW AREA","_PreviewHostWindow");if(t){t.addEventListener("beforeunload",this.handleClosingPopUp);const n=t.document.getElementById("node-editor-graph-root");this.createPreviewMeshControlHost(e,n),this.createPreviewHost(e,n),n&&(this.fixPopUpStyles(n.ownerDocument),this.initiatePreviewArea(n.ownerDocument.getElementById("preview-canvas")))}},this.createPopupWindow=(e,t,n=500,r=500)=>{const o={width:n,height:r,top:(this.props.globalState.hostWindow.innerHeight-n)/2+window.screenY,left:(this.props.globalState.hostWindow.innerWidth-r)/2+window.screenX},a=Object.keys(o).map((e=>e+"="+o[e])).join(","),i=this.props.globalState.hostWindow.open("",e,a);if(!i)return null;const s=i.document;s.title=e,s.body.style.width="100%",s.body.style.height="100%",s.body.style.margin="0",s.body.style.padding="0";const l=s.createElement("div");return l.style.width="100%",l.style.height="100%",l.style.margin="0",l.style.padding="0",l.style.display="grid",l.style.gridTemplateRows="40px auto",l.id="node-editor-graph-root",l.className="nme-right-panel popup",i.document.body.appendChild(l),Do._CopyStyles(this.props.globalState.hostWindow.document,s),this[t]=i,this._popUpWindow=i,i},this.createPreviewMeshControlHost=(e,t)=>{if(t){const n=t.ownerDocument.createElement("div");n.id="PreviewMeshControl-host",n.style.width=e.embedHostWidth||"auto",t.appendChild(n);const r=a.createElement(Lo,{globalState:this.props.globalState,togglePreviewAreaComponent:this.handlePopUp});i.render(r,n)}},this.createPreviewHost=(e,t)=>{if(t){const n=t.ownerDocument.createElement("div");n.id="PreviewAreaComponent-host",n.style.width=e.embedHostWidth||"auto",n.style.height="100%",n.style.overflow="hidden",n.style.display="grid",n.style.gridRow="2",n.style.gridTemplateRows="auto 40px",n.style.gridTemplateRows="calc(100% - 40px) 40px",t.appendChild(n),this._previewHost=n,e.overlay||(this._previewHost.style.position="relative")}if(this._previewHost){const e=a.createElement(Bo,{globalState:this.props.globalState,width:200});i.render(e,this._previewHost)}},this.fixPopUpStyles=e=>{const t=e.getElementById("preview");t&&(t.style.height="auto",t.style.gridRow="1");const n=e.getElementById("preview-config-bar");n&&(n.style.gridRow="2");const r=e.getElementById("preview-new-window");r&&(r.style.display="none");const o=e.getElementById("preview-mesh-bar");o&&(o.style.gridTemplateColumns="auto 1fr 40px 40px")},this.state={showPreviewPopUp:!1,message:"",isError:!0},this._graphCanvasRef=a.createRef(),this._diagramContainerRef=a.createRef(),this.props.globalState.stateManager.onNewBlockRequiredObservable.add((e=>{let t=e.targetX,n=e.targetY;e.needRepositioning&&(t-=this._diagramContainer.offsetLeft,n-=this._diagramContainer.offsetTop);const r=this._graphCanvas.selectedLink,o=this._graphCanvas.selectedNodes.length?this._graphCanvas.selectedNodes[0]:null,a=this.emitNewBlock(e.type,t,n);a&&e.smartAdd&&(r?this._graphCanvas.smartAddOverLink(a,r):o&&this._graphCanvas.smartAddOverNode(a,o))})),this.props.globalState.stateManager.onRebuildRequiredObservable.add((()=>{this.props.globalState.nodeMaterial&&this.buildMaterial()})),this.props.globalState.onResetRequiredObservable.add((e=>{e?(this.props.globalState.nodeMaterial&&this.buildMaterial(),this.build(!0)):(this.build(),this.props.globalState.nodeMaterial&&this.buildMaterial())})),this.props.globalState.onImportFrameObservable.add((e=>{const t=e.editorData.frames[0];this.props.globalState.nodeMaterial.attachedBlocks.slice(-t.blocks.length).forEach((e=>{this.appendBlock(e)})),this._graphCanvas.addFrame(t),this.reOrganize(this.props.globalState.nodeMaterial.editorData,!0)})),this.props.globalState.onZoomToFitRequiredObservable.add((()=>{this.zoomToFit()})),this.props.globalState.onReOrganizedRequiredObservable.add((()=>{this.reOrganize()})),this.props.globalState.onGetNodeFromBlock=e=>this._graphCanvas.findNodeFromData(e),this.props.globalState.hostDocument.addEventListener("keydown",(e=>{this._historyStack.processKeyEvent(e)||this._graphCanvas.handleKeyDown(e,(e=>{this.props.globalState.nodeMaterial.removeBlock(e.data)}),this._mouseLocationX,this._mouseLocationY,(e=>{const t=e.data.clone(this.props.globalState.nodeMaterial.getScene());return t?this.appendBlock(t,!1):null}),this.props.globalState.hostDocument.querySelector(".diagram-container"))})),this.props.globalState.stateManager.onErrorMessageDialogRequiredObservable.add((e=>{this.setState({message:e,isError:!0})}))}zoomToFit(){this._graphCanvas.zoomToFit()}buildMaterial(){if(!this.props.globalState.nodeMaterial)return;const e=this.props.globalState.nodeMaterial;try{e.options.emitComments=!0,e.build(!0)}catch(e){this.props.globalState.onLogRequiredObservable.notifyObservers(new w(e,!0))}}build(e=!1){let t=e?null:this.props.globalState.nodeMaterial.editorData;this._graphCanvas._isLoading=!0,t instanceof Array&&(t={locations:t}),this._graphCanvas.reset(),this.props.globalState.nodeMaterial&&this.loadGraph(),this.reOrganize(t)}loadGraph(){const e=this.props.globalState.nodeMaterial;e._vertexOutputNodes.forEach((e=>{this.appendBlock(e,!0)})),e._fragmentOutputNodes.forEach((e=>{this.appendBlock(e,!0)})),e.attachedBlocks.forEach((e=>{this.appendBlock(e,!0)})),e.attachedBlocks.forEach((e=>{if(e.inputs.length){const t=this._graphCanvas.findNodeFromData(e);for(const e of t.content.inputs)e.isConnected&&this._graphCanvas.connectPorts(e.connectedPort,e)}}))}showWaitScreen(){this.props.globalState.hostDocument.querySelector(".wait-screen")?.classList.remove("hidden")}hideWaitScreen(){this.props.globalState.hostDocument.querySelector(".wait-screen")?.classList.add("hidden")}reOrganize(e=null,t=!1){this.showWaitScreen(),this._graphCanvas._isLoading=!0,this._graphCanvas.reOrganize(e,t),this.hideWaitScreen()}onPointerDown(e){this._startX=e.clientX,this._moveInProgress=!0,e.currentTarget.setPointerCapture(e.pointerId)}onPointerUp(e){this._moveInProgress=!1,e.currentTarget.releasePointerCapture(e.pointerId)}resizeColumns(e,t=!0){if(!this._moveInProgress)return;const n=e.clientX-this._startX,r=e.currentTarget.ownerDocument.getElementById("node-editor-graph-root");t?(this._leftWidth+=n,this._leftWidth=Math.max(150,Math.min(400,this._leftWidth)),s.DataStorage.WriteNumber("LeftWidth",this._leftWidth)):(this._rightWidth-=n,this._rightWidth=Math.max(250,Math.min(500,this._rightWidth)),s.DataStorage.WriteNumber("RightWidth",this._rightWidth),r.ownerDocument.getElementById("preview").style.height=this._rightWidth+"px"),r.style.gridTemplateColumns=this.buildColumnLayout(),this._startX=e.clientX}buildColumnLayout(){return`${this._leftWidth}px 4px calc(100% - ${this._leftWidth+8+this._rightWidth}px) 4px ${this._rightWidth}px`}emitNewBlock(e,t,n){let r,o;if(""===e)return;if(e.indexOf("CustomBlock")>-1){const t=localStorage.getItem(e);if(!t)return void this.props.globalState.stateManager.onErrorMessageDialogRequiredObservable.notifyObservers("Error loading custom block");if(o=JSON.parse(t),!o)return void this.props.globalState.stateManager.onErrorMessageDialogRequiredObservable.notifyObservers("Error parsing custom block")}else if(e.indexOf("Custom")>-1){const r=localStorage.getItem(e);if(r){const e=JSON.parse(r),o=(t-this._graphCanvas.x-Wo.NodeWidth)/this._graphCanvas.zoom,a=(n-this._graphCanvas.y-20)/this._graphCanvas.zoom,i=e.editorData.frames[0].x,s=e.editorData.frames[0].y;e.editorData.frames[0].x=o,e.editorData.frames[0].y=a;for(const t of e.editorData.locations)t.x+=o-i,t.y+=a-s;return E.AddFrameToMaterial(e,this.props.globalState,this.props.globalState.nodeMaterial),this._graphCanvas.frames[this._graphCanvas.frames.length-1].cleanAccumulation(),void this.forceUpdate()}}if(-1===e.indexOf("Block"))r=this.addValueNode(e);else{let t;if(o?(t=new s.CustomBlock(""),t.options=o):t=k.GetBlockFromString(e,this.props.globalState.nodeMaterial.getScene(),this.props.globalState.nodeMaterial),t.isUnique){const e=t.getClassName();for(const n of this._graphCanvas.getCachedData())if(n!==t&&n.getClassName()===e)return void this.props.globalState.stateManager.onErrorMessageDialogRequiredObservable.notifyObservers(`You can only have one ${e} per graph`)}t.autoConfigure(this.props.globalState.nodeMaterial,(e=>!this._graphCanvas.nodes.some((t=>t.enclosingFrameId>=0&&t.content.data.uniqueId===e.uniqueId)))),r=this.appendBlock(t),r.addClassToVisual(t.getClassName())}let a=Wo.NodeWidth,i=20;return"ElbowBlock"===e&&(a=10,i=10),this._graphCanvas.drop(r,t,n,a,i),this.forceUpdate(),r}dropNewBlock(e){const t=e.dataTransfer.getData("babylonjs-material-node");this.emitNewBlock(t,e.clientX-this._diagramContainer.offsetLeft,e.clientY-this._diagramContainer.offsetTop)}render(){return(0,l.jsxs)(wo,{globalState:this.props.globalState,children:[(0,l.jsxs)("div",{id:"node-editor-graph-root",style:{gridTemplateColumns:this.buildColumnLayout()},onMouseMove:e=>{this._mouseLocationX=e.pageX,this._mouseLocationY=e.pageY},onMouseDown:e=>{"INPUT"!==e.target.nodeName&&(this.props.globalState.lockObject.lock=!1)},children:[(0,l.jsx)(W,{globalState:this.props.globalState}),(0,l.jsx)("div",{id:"leftGrab",onPointerDown:e=>this.onPointerDown(e),onPointerUp:e=>this.onPointerUp(e),onPointerMove:e=>this.resizeColumns(e)}),(0,l.jsx)("div",{className:"diagram-container",ref:this._diagramContainerRef,onDrop:e=>{this.dropNewBlock(e)},onDragOver:e=>{e.preventDefault()},children:(0,l.jsx)(Wo,{ref:this._graphCanvasRef,stateManager:this.props.globalState.stateManager,onEmitNewNode:e=>this.appendBlock(e.data)})}),(0,l.jsx)("div",{id:"rightGrab",onPointerDown:e=>this.onPointerDown(e),onPointerUp:e=>this.onPointerUp(e),onPointerMove:e=>this.resizeColumns(e,!1)}),(0,l.jsxs)("div",{className:"nme-right-panel",children:[(0,l.jsx)(xo,{lockObject:this.props.globalState.lockObject,globalState:this.props.globalState}),this.state.showPreviewPopUp?null:(0,l.jsx)(Lo,{globalState:this.props.globalState,togglePreviewAreaComponent:this.handlePopUp}),this.state.showPreviewPopUp?null:(0,l.jsx)(Bo,{globalState:this.props.globalState,width:this._rightWidth})]}),(0,l.jsx)(M,{globalState:this.props.globalState})]}),(0,l.jsx)(_o,{message:this.state.message,isError:this.state.isError,onClose:()=>this.setState({message:""})}),(0,l.jsx)("div",{className:"blocker",children:"Node Material Editor runs only on desktop"}),(0,l.jsx)("div",{className:"wait-screen hidden",children:"Processing...please wait"})]})}}var Zo=r(8637),qo={};qo.styleTagTransform=v(),qo.setAttributes=g(),qo.insert=A().bind(null,"head"),qo.domAPI=p(),qo.insertStyleElement=C(),u()(Zo.A,qo);const Xo=Zo.A&&Zo.A.locals?Zo.A.locals:void 0,Jo={position2d:"position",particle_uv:"uv",particle_color:"color",particle_texturemask:"textureMask",particle_positionw:"positionW"},Ko={position2d:"screen",particle_uv:"particle",particle_color:"particle",particle_texturemask:"particle",particle_positionw:"particle"};class $o{getHeaderClass(e){const t=e.data;return t.isConstant?Xo.constant:t.visibleInInspector?Xo.inspector:""}shouldDisplayPortLabels(){return!1}getHeaderText(e){const t=e.data;let n=`${t.name} (${$o.GetBaseType(t.output.type)})`;return t.isAttribute&&(n=$o.GetBaseType(t.output.type)),n}static GetBaseType(e){return s.NodeMaterialBlockConnectionPointTypes[e]}getBackgroundColor(e){let t="";const n=e.data;switch(n.type){case s.NodeMaterialBlockConnectionPointTypes.Color3:case s.NodeMaterialBlockConnectionPointTypes.Color4:if(n.value){t=n.value.toHexString();break}default:t=k.GetColorFromConnectionNodeType(n.type)}return t}updatePreviewContent(e,t){let n="";const r=e.data;if(r.isAttribute){const e=Jo[r.name]??r.name;n=(Ko[r.name]??"mesh")+"."+e}else if(r.isSystemValue)switch(r.systemValue){case s.NodeMaterialSystemValues.World:n="World";break;case s.NodeMaterialSystemValues.WorldView:n="World x View";break;case s.NodeMaterialSystemValues.WorldViewProjection:n="World x View x Projection";break;case s.NodeMaterialSystemValues.View:n="View";break;case s.NodeMaterialSystemValues.ViewProjection:n="View x Projection";break;case s.NodeMaterialSystemValues.Projection:n="Projection";break;case s.NodeMaterialSystemValues.CameraPosition:n="Camera position";break;case s.NodeMaterialSystemValues.FogColor:n="Fog color";break;case s.NodeMaterialSystemValues.DeltaTime:n="Delta time";break;case s.NodeMaterialSystemValues.CameraParameters:n="Camera parameters";break;case s.NodeMaterialSystemValues.MaterialAlpha:n="Material alpha"}else switch(r.type){case s.NodeMaterialBlockConnectionPointTypes.Float:n=r.animationType!==s.AnimatedInputBlockTypes.None?s.AnimatedInputBlockTypes[r.animationType]:r.value.toFixed(4);break;case s.NodeMaterialBlockConnectionPointTypes.Vector2:{const e=r.value;n=`(${e.x.toFixed(2)}, ${e.y.toFixed(2)})`;break}case s.NodeMaterialBlockConnectionPointTypes.Vector3:{const e=r.value;n=`(${e.x.toFixed(2)}, ${e.y.toFixed(2)}, ${e.z.toFixed(2)})`;break}case s.NodeMaterialBlockConnectionPointTypes.Vector4:if(r.animationType!==s.AnimatedInputBlockTypes.None)n=s.AnimatedInputBlockTypes[r.animationType];else{const e=r.value;n=`(${e.x.toFixed(2)}, ${e.y.toFixed(2)}, ${e.z.toFixed(2)}, ${e.w.toFixed(2)})`}}t.innerHTML=n,t.classList.add(Xo["input-block"])}}class ea{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"rgb(106, 44, 131)"}updatePreviewContent(e,t){t.classList.add("output-block")}}class ta{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"#4086BB"}updatePreviewContent(e,t){}}var na=r(6997),ra={};ra.styleTagTransform=v(),ra.setAttributes=g(),ra.insert=A().bind(null,"head"),ra.domAPI=p(),ra.insertStyleElement=C(),u()(na.A,ra);const oa=na.A&&na.A.locals?na.A.locals:void 0;class aa{getHeaderClass(){return""}shouldDisplayPortLabels(){return!1}getHeaderText(e){return e.data.name}getBackgroundColor(e){const t=e.data.colorSteps.map((e=>`rgb(${255*e.color.r}, ${255*e.color.g}, ${255*e.color.b}) ${100*e.step}%`));return t.length?`linear-gradient(90deg, ${t.join(", ")})`:"black"}updatePreviewContent(e,t){t.classList.add(oa.gradientBlock)}}var ia=r(2886),sa={};sa.styleTagTransform=v(),sa.setAttributes=g(),sa.insert=A().bind(null,"head"),sa.domAPI=p(),sa.insertStyleElement=C(),u()(ia.A,sa);const la=ia.A&&ia.A.locals?ia.A.locals:void 0;class ca{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"#4086BB"}_extractInputValue(e){const t=e.connectedPoint.ownerBlock;if(t.isInput){const e=t;if(e.isUniform&&!e.isSystemValue)return e.value}return"?"}updatePreviewContent(e,t){const n=e.data,r=n.sourceMin.isConnected?this._extractInputValue(n.sourceMin):n.sourceRange.x,o=n.sourceMax.isConnected?this._extractInputValue(n.sourceMax):n.sourceRange.y,a=n.targetMin.isConnected?this._extractInputValue(n.targetMin):n.targetRange.x,i=n.targetMax.isConnected?this._extractInputValue(n.targetMax):n.targetRange.y;t.classList.add(la["remap-block"]),t.innerHTML=`[${r}, ${o}] -> [${a}, ${i}]`}}class ua{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"#405C86"}updatePreviewContent(e,t){}}class da extends a.Component{constructor(e){super(e),this.state={displayRed:!0,displayGreen:!0,displayBlue:!0,displayAlpha:!0,face:0},this._canvasRef=a.createRef()}shouldComponentUpdate(){return!0}componentDidMount(){this.updatePreview()}componentDidUpdate(){this.updatePreview()}updatePreview(){da.UpdatePreview(this._canvasRef.current,this.props.texture,this.props.width,this.state,void 0,this.props.globalState)}static async UpdatePreview(e,t,n,r,o,a){!t.isReady()&&t._texture&&t._texture.onLoadedObservable.addOnce((()=>{da.UpdatePreview(e,t,n,r,o,a)}));const i=t.getScene(),l=i.getEngine(),c=t.getSize(),u=c.width/c.height,d=n/u|1;let p;if(t.isCube){const e=new s.PassCubePostProcess("pass",1,null,s.Texture.NEAREST_SAMPLINGMODE,l,!1,s.Constants.TEXTURETYPE_UNSIGNED_INT);e.face=r.face,p=e}else p=new s.PassPostProcess("pass",1,null,s.Texture.NEAREST_SAMPLINGMODE,l,!1,s.Constants.TEXTURETYPE_UNSIGNED_INT);p.onEffectCreatedObservable.add((c=>{c.executeWhenCompiled((async()=>{a&&(a.blockMutationUpdates=!0);const c=new s.RenderTargetTexture("temp",{width:n,height:d},i,!1);p.externalTextureSamplerBinding=!0,p.onApply=function(e){e.setTexture("textureSampler",t)};const u=c.renderTarget;if(u){i.postProcessManager.directRender([p],u,!0);const a=4*n,s=d/2,c=await l.readPixels(0,0,n,d),h=new Uint8Array(c.buffer,0,c.byteLength);if(!(t.isCube||r.displayRed&&r.displayGreen&&r.displayBlue))for(let e=0;e<n*d*4;e+=4)if(r.displayRed||(h[e]=0),r.displayGreen||(h[e+1]=0),r.displayBlue||(h[e+2]=0),r.displayAlpha){const t=h[e+2];h[e]=t,h[e+1]=t,h[e+2]=t,h[e+2]=0}if(t.invertY||t.isCube)for(let e=0;e<s;e++)for(let t=0;t<a;t++){const n=t+e*a,r=t+(d-e-1)*a,o=h[n];h[n]=h[r],h[r]=o}e.width=n,e.height=d;const A=e.getContext("2d");if(A){const e=A.createImageData(n,d);e.data.set(h),A.putImageData(e,0,0),o&&o()}l.unBindFramebuffer(u)}c.dispose(),p.dispose(),e.style.height=d+"px",a&&(a.blockMutationUpdates=!1)}))}))}render(){const e=this.props.texture;return(0,l.jsxs)("div",{className:"textureLine",children:[!this.props.hideChannelSelect&&e.isCube&&(0,l.jsxs)("div",{className:"control3D",children:[(0,l.jsx)("button",{className:0===this.state.face?"px command selected":"px command",onClick:()=>this.setState({face:0}),children:"PX"}),(0,l.jsx)("button",{className:1===this.state.face?"nx command selected":"nx command",onClick:()=>this.setState({face:1}),children:"NX"}),(0,l.jsx)("button",{className:2===this.state.face?"py command selected":"py command",onClick:()=>this.setState({face:2}),children:"PY"}),(0,l.jsx)("button",{className:3===this.state.face?"ny command selected":"ny command",onClick:()=>this.setState({face:3}),children:"NY"}),(0,l.jsx)("button",{className:4===this.state.face?"pz command selected":"pz command",onClick:()=>this.setState({face:4}),children:"PZ"}),(0,l.jsx)("button",{className:5===this.state.face?"nz command selected":"nz command",onClick:()=>this.setState({face:5}),children:"NZ"})]}),!this.props.hideChannelSelect&&!e.isCube&&(0,l.jsxs)("div",{className:"control",children:[(0,l.jsx)("button",{className:this.state.displayRed&&!this.state.displayGreen?"red command selected":"red command",onClick:()=>this.setState({displayRed:!0,displayGreen:!1,displayBlue:!1,displayAlpha:!1}),children:"R"}),(0,l.jsx)("button",{className:this.state.displayGreen&&!this.state.displayBlue?"green command selected":"green command",onClick:()=>this.setState({displayRed:!1,displayGreen:!0,displayBlue:!1,displayAlpha:!1}),children:"G"}),(0,l.jsx)("button",{className:this.state.displayBlue&&!this.state.displayAlpha?"blue command selected":"blue command",onClick:()=>this.setState({displayRed:!1,displayGreen:!1,displayBlue:!0,displayAlpha:!1}),children:"B"}),(0,l.jsx)("button",{className:this.state.displayAlpha&&!this.state.displayRed?"alpha command selected":"alpha command",onClick:()=>this.setState({displayRed:!1,displayGreen:!1,displayBlue:!1,displayAlpha:!0}),children:"A"}),(0,l.jsx)("button",{className:this.state.displayRed&&this.state.displayGreen?"all command selected":"all command",onClick:()=>this.setState({displayRed:!0,displayGreen:!0,displayBlue:!0,displayAlpha:!0}),children:"ALL"})]}),(0,l.jsx)("canvas",{ref:this._canvasRef,className:"preview"})]})}}var pa=r(2324),ha={};ha.styleTagTransform=v(),ha.setAttributes=g(),ha.insert=A().bind(null,"head"),ha.domAPI=p(),ha.insertStyleElement=C(),u()(pa.A,ha);const Aa=pa.A&&pa.A.locals?pa.A.locals:void 0;var fa=r(8469),ga={};ga.styleTagTransform=v(),ga.setAttributes=g(),ga.insert=A().bind(null,"head"),ga.domAPI=p(),ga.insertStyleElement=C(),u()(fa.A,ga);const ma=fa.A&&fa.A.locals?fa.A.locals:void 0;class Ca{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(e){const t=e.data;return"RefractionBlock"===t.getClassName()||"ReflectionBlock"===t.getClassName()?"#6174FA":"#323232"}updatePreviewContent(e,t){const n=e.data,r=n;this._previewCanvas||(t.classList.add(ma["texture-block"]),n instanceof s.TextureBlock&&t.classList.add(Aa["regular-texture-block"]),(n instanceof s.ReflectionTextureBlock||n instanceof s.ReflectionBlock)&&t.classList.add(Aa["reflection-block"]),(n instanceof s.CurrentScreenBlock||n instanceof s.ParticleTextureBlock)&&t.classList.add(Aa["reduced-texture-block"]),n instanceof s.TriPlanarBlock&&t.classList.add(Aa["triplanar-texture-block"]),n instanceof s.RefractionBlock&&t.classList.add(Aa["refraction-texture-block"]),this._previewCanvas=t.ownerDocument.createElement("canvas"),this._previewImage=t.ownerDocument.createElement("img"),t.appendChild(this._previewImage),this._previewImage.classList.add(ma.empty)),r.texture?da.UpdatePreview(this._previewCanvas,r.texture,140,{face:0,displayRed:!0,displayAlpha:!0,displayBlue:!0,displayGreen:!0},(()=>{this._previewImage.src=this._previewCanvas.toDataURL("image/png"),this._previewImage.classList.remove(ma.empty)})):this._previewImage.classList.add(ma.empty)}}class ba{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"#540b0b"}updatePreviewContent(e,t){t.classList.add("discard-block")}}class va{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"#6174FA"}updatePreviewContent(e,t){t.classList.add("pbr-block")}}class ya{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){const t=e.data;let n="";switch(t.condition){case s.ConditionalBlockConditions.Equal:n="=";break;case s.ConditionalBlockConditions.NotEqual:n="!=";break;case s.ConditionalBlockConditions.LessThan:n="<";break;case s.ConditionalBlockConditions.LessOrEqual:n="<=";break;case s.ConditionalBlockConditions.GreaterThan:n=">";break;case s.ConditionalBlockConditions.GreaterOrEqual:n=">=";break;case s.ConditionalBlockConditions.Xor:n="xor";break;case s.ConditionalBlockConditions.Or:n="|";break;case s.ConditionalBlockConditions.And:n="&"}return t.name+" ("+n+")"}getBackgroundColor(){return"#00A080"}updatePreviewContent(){}}var xa=r(489),wa={};wa.styleTagTransform=v(),wa.setAttributes=g(),wa.insert=A().bind(null,"head"),wa.domAPI=p(),wa.insertStyleElement=C(),u()(xa.A,wa);const Ma=xa.A&&xa.A.locals?xa.A.locals:void 0;class ka{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"#323232"}updatePreviewContent(e,t){const n=e.data;this._previewCanvas||(t.classList.add(ma["texture-block"]),t.classList.add(Ma["image-source-block"]),this._previewCanvas=t.ownerDocument.createElement("canvas"),this._previewImage=t.ownerDocument.createElement("img"),t.appendChild(this._previewImage),this._previewImage.classList.add(ma.empty)),n.texture?da.UpdatePreview(this._previewCanvas,n.texture,140,{face:0,displayRed:!0,displayAlpha:!0,displayBlue:!0,displayGreen:!0},(()=>{this._previewImage.src=this._previewCanvas.toDataURL("image/png"),this._previewImage.classList.remove(ma.empty)})):this._previewImage.classList.add(ma.empty)}}var Na=r(5024),_a={};_a.styleTagTransform=v(),_a.setAttributes=g(),_a.insert=A().bind(null,"head"),_a.domAPI=p(),_a.insertStyleElement=C(),u()(Na.A,_a);const Sa=Na.A&&Na.A.locals?Na.A.locals:void 0;class La{getHeaderClass(){return""}shouldDisplayPortLabels(){return!1}getHeaderText(e){return e.data.name}getBackgroundColor(e){const t=e.data;return k.GetColorFromConnectionNodeType(t.input.type)}updatePreviewContent(e,t){}updateFullVisualContent(e,t){const n=t.visual,r=t.headerContainer,o=t.content,a=t.connections,i=t.selectionBorder;n.classList.add(Sa.elbowBlock),r.classList.add(Sa.hidden),o.classList.add(Sa.hidden),a.classList.add(Sa.translatedConnections),i.classList.add(Sa.roundSelectionBorder)}}class Ba{getHeaderClass(e){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){const t=e.data;let n,r=t.name;switch(t.attributeType){case 3:n="Color";break;case 1:n="Normal";break;case 2:n="Tangent";break;case 4:n="UV";break;case 5:n="UV2";break;case 6:n="UV3";break;case 7:n="UV4";break;case 8:n="UV5";break;case 9:n="UV6"}return n&&(r+=` (${n})`),r}getBackgroundColor(e){return""}updatePreviewContent(){}}var Da=r(7156),Ia={};Ia.styleTagTransform=v(),Ia.setAttributes=g(),Ia.insert=A().bind(null,"head"),Ia.domAPI=p(),Ia.insertStyleElement=C(),u()(Da.A,Ia);const ja=Da.A&&Da.A.locals?Da.A.locals:void 0;class Ea{getHeaderClass(){return""}shouldDisplayPortLabels(){return!1}getHeaderText(e){return e.data.name}getBackgroundColor(){return"#405C86"}updatePreviewContent(e,t){const n=e.data;t.classList.add(ja["curve-block"]),t.innerHTML=s.CurveBlockTypes[n.type]}}class Ta{constructor(){this._hasHighlights=!1}getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(e){const t=e.data;return`linear-gradient(to right, white, ${k.GetColorFromConnectionNodeType(t.output.type)})`}updatePreviewContent(e,t){}onSelectionChanged(e,t,n){const r=e.data;if(t===e)r.entryPoint&&(n.onHighlightNodeObservable.notifyObservers({data:r.entryPoint,active:!0}),this._hasHighlights=!0);else if(this._hasHighlights){let e;e=!t||"NodeMaterialTeleportOutBlock"!==t.data.getClassName()||t.data.entryPoint!==r.entryPoint,e&&n.onHighlightNodeObservable.notifyObservers({data:r.entryPoint,active:!1}),this._hasHighlights=!1}}onDispose(e,t){const n=e.data;n.entryPoint&&t.onHighlightNodeObservable.notifyObservers({data:n.entryPoint,active:!1})}}class Oa{constructor(){this._hasHighlights=!1}getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(e){const t=e.data;return`linear-gradient(to right, ${k.GetColorFromConnectionNodeType(t.input.type)}, white)`}updatePreviewContent(e,t){}onSelectionChanged(e,t,n){const r=e.data;if(t===e){for(const e of r.endpoints)n.onHighlightNodeObservable.notifyObservers({data:e,active:!0});this._hasHighlights=!0}else if(this._hasHighlights){for(const e of r.endpoints)n.onHighlightNodeObservable.notifyObservers({data:e,active:!1});this._hasHighlights=!1}}onDispose(e,t){const n=e.data;for(const e of n.endpoints)t.onHighlightNodeObservable.notifyObservers({data:e,active:!1})}}class Pa{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"rgb(86, 185, 120)"}updatePreviewContent(e,t){}}class za extends a.Component{constructor(e){super(e)}render(){return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(Ra,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsx)(Ua,{stateManager:this.props.stateManager,nodeData:this.props.nodeData})]})}}class Ra extends a.Component{constructor(e){super(e)}render(){const e=[{label:"Neutral",value:s.NodeMaterialBlockTargets.Neutral},{label:"Vertex",value:s.NodeMaterialBlockTargets.Vertex},{label:"Fragment",value:s.NodeMaterialBlockTargets.Fragment}],t=this.props.nodeData.data;return(0,l.jsx)(l.Fragment,{children:(0,l.jsxs)(O,{title:"GENERAL",children:[(!t.isInput||!t.isAttribute)&&(0,l.jsx)(Vr,{label:"Name",propertyName:"name",target:t,lockObject:this.props.stateManager.lockObject,onChange:()=>this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t),throttlePropertyChangedNotification:!0,validator:e=>!!t.validateBlockName(e)||(this.props.stateManager.onErrorMessageDialogRequiredObservable.notifyObservers(`"${e}" is a reserved name, please choose another`),!1)}),t._originalTargetIsNeutral&&(0,l.jsx)(yo,{label:"Target",options:e,target:t,propertyName:"target",onSelect:()=>{this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}}),!t._originalTargetIsNeutral&&(0,l.jsx)(uo,{label:"Target",value:s.NodeMaterialBlockTargets[t.target]}),(0,l.jsx)(uo,{label:"Type",value:t.getClassName()}),(0,l.jsx)(Vr,{label:"Comments",propertyName:"comments",lockObject:this.props.stateManager.lockObject,target:t,onChange:()=>this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t),throttlePropertyChangedNotification:!0})]})})}}class Ua extends a.Component{constructor(e){super(e)}render(){const e=this.props.nodeData.data,t=e._propStore;if(!t)return(0,l.jsx)(l.Fragment,{});const n={},r=[],o=[];let a=Object.getPrototypeOf(e);for(;a;)o.push(a.constructor.name),a=Object.getPrototypeOf(a);for(const{propertyName:a,displayName:i,type:s,groupName:c,options:u,className:d}of t){let t=n[c];if(!u.embedded&&-1!==o.indexOf(d))switch(t||(t=[],n[c]=t,r.push(c)),s){case 0:t.push((0,l.jsx)(Z,{label:i,target:e,propertyName:a,onValueChanged:()=>Co(e,this.props.stateManager,a,u.notifiers)},`checkBox-${a}`));break;case 1:isNaN(u.min)||isNaN(u.max)||u.min===u.max?t.push((0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:i,propertyName:a,target:e,onChange:()=>Co(e,this.props.stateManager,a,u.notifiers)},`float-${a}`)):t.push((0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:i,target:e,propertyName:a,step:Math.abs(u.max-u.min)/100,minimum:Math.min(u.min,u.max),maximum:u.max,onChange:()=>Co(e,this.props.stateManager,a,u.notifiers)},`slider-${a}`));break;case 2:t.push((0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,digits:0,step:"1",isInteger:!0,label:i,propertyName:a,target:e,onChange:()=>Co(e,this.props.stateManager,a,u.notifiers)},`int-${a}`));break;case 3:t.push((0,l.jsx)(br,{lockObject:this.props.stateManager.lockObject,label:i,propertyName:a,target:e,onChange:()=>Co(e,this.props.stateManager,a,u.notifiers)},`vector2-${a}`));break;case 4:t.push((0,l.jsx)(yo,{label:i,options:u.options,target:e,propertyName:a,onSelect:()=>Co(e,this.props.stateManager,a,u.notifiers)},`options-${a}`))}}return(0,l.jsx)(l.Fragment,{children:r.map((e=>(0,l.jsx)(O,{title:e,children:n[e]},`group-${e}`)))})}}class Fa extends a.Component{constructor(e){super(e)}render(){const e=this.props.nodeData.data,t=[{label:"R",value:"r"},{label:"G",value:"g"},{label:"B",value:"b"},{label:"A",value:"a"}];return(0,l.jsxs)("div",{children:[(0,l.jsx)(Ra,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsxs)(O,{title:"SWIZZLES",children:[(0,l.jsx)(yo,{label:"R",options:t,target:e,propertyName:"rSwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}}),(0,l.jsx)(yo,{label:"G",options:t,target:e,propertyName:"gSwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}}),(0,l.jsx)(yo,{label:"B",options:t,target:e,propertyName:"bSwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}}),(0,l.jsx)(yo,{label:"A",options:t,target:e,propertyName:"aSwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}})]})]})}}class Ya extends a.Component{constructor(e){super(e),this.state={gradient:e.step.step}}updateColor(e){this.props.step.color=s.Color3.FromHexString(e),this.props.onUpdateStep(),this.forceUpdate()}updateStep(e){this.props.step.step=e,this.setState({gradient:e}),this.props.onUpdateStep()}onPointerUp(){this.props.onCheckForReOrder()}render(){const e=this.props.step;return(0,l.jsxs)("div",{className:"gradient-step",children:[(0,l.jsx)("div",{className:"step",children:`#${this.props.lineIndex}`}),(0,l.jsx)("div",{className:"color",children:(0,l.jsx)(Or,{lockObject:this.props.stateManager.lockObject,value:e.color,onColorChanged:e=>{this.updateColor(e)}})}),(0,l.jsx)("div",{className:"step-value",children:(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,smallUI:!0,label:"",target:e,propertyName:"step",min:0,max:1,onEnter:()=>{this.props.onUpdateStep(),this.props.onCheckForReOrder(),this.forceUpdate()}})}),(0,l.jsx)("div",{className:"step-slider",children:(0,l.jsx)("input",{className:"range",type:"range",step:.01,min:0,max:1,value:e.step,onPointerUp:()=>this.onPointerUp(),onChange:e=>this.updateStep(parseFloat(e.target.value))})}),(0,l.jsx)("div",{className:"gradient-copy",onClick:()=>{this.props.onCopy&&this.props.onCopy()},title:"Copy Step",children:(0,l.jsx)("img",{className:"img",src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA1OS4xICg4NjE0NCkgLSBodHRwczovL3NrZXRjaC5jb20gLS0+DQogIDx0aXRsZT5pY19mbHVlbnRfY29weV8yNF9yZWd1bGFyPC90aXRsZT4NCiAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+DQogIDxnIGlkPSLwn5SNLVByb2R1Y3QtSWNvbnMiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPg0KICAgIDxnIGlkPSJpY19mbHVlbnRfY29weV8yNF9yZWd1bGFyIiBmaWxsPSJ3aGl0ZSIgZmlsbC1ydWxlPSJub256ZXJvIj4NCiAgICAgIDxwYXRoIGQ9Ik01LjUwMjgwMzgxLDQuNjI3MDQwMzggTDUuNSw2Ljc1IEw1LjUsMTcuMjU0MjA4NyBDNS41LDE5LjA0OTEzNDIgNi45NTUwNzQ1NiwyMC41MDQyMDg3IDguNzUsMjAuNTA0MjA4NyBMMTcuMzY2Mjg2OCwyMC41MDQ0NjIyIEMxNy4wNTczMzgsMjEuMzc4MjI0MSAxNi4yMjM5NzUxLDIyLjAwNDIwODcgMTUuMjQ0NDA1NywyMi4wMDQyMDg3IEw4Ljc1LDIyLjAwNDIwODcgQzYuMTI2NjQ3NDQsMjIuMDA0MjA4NyA0LDE5Ljg3NzU2MTMgNCwxNy4yNTQyMDg3IEw0LDYuNzUgQzQsNS43NjkyODg0OCA0LjYyNzQ0NTIzLDQuOTM1MTI0NjQgNS41MDI4MDM4MSw0LjYyNzA0MDM4IFogTTE3Ljc1LDIgQzE4Ljk5MjY0MDcsMiAyMCwzLjAwNzM1OTMxIDIwLDQuMjUgTDIwLDE3LjI1IEMyMCwxOC40OTI2NDA3IDE4Ljk5MjY0MDcsMTkuNSAxNy43NSwxOS41IEw4Ljc1LDE5LjUgQzcuNTA3MzU5MzEsMTkuNSA2LjUsMTguNDkyNjQwNyA2LjUsMTcuMjUgTDYuNSw0LjI1IEM2LjUsMy4wMDczNTkzMSA3LjUwNzM1OTMxLDIgOC43NSwyIEwxNy43NSwyIFogTTE3Ljc1LDMuNSBMOC43NSwzLjUgQzguMzM1Nzg2NDQsMy41IDgsMy44MzU3ODY0NCA4LDQuMjUgTDgsMTcuMjUgQzgsMTcuNjY0MjEzNiA4LjMzNTc4NjQ0LDE4IDguNzUsMTggTDE3Ljc1LDE4IEMxOC4xNjQyMTM2LDE4IDE4LjUsMTcuNjY0MjEzNiAxOC41LDE3LjI1IEwxOC41LDQuMjUgQzE4LjUsMy44MzU3ODY0NCAxOC4xNjQyMTM2LDMuNSAxNy43NSwzLjUgWiIgaWQ9IvCfjqgtQ29sb3IiPjwvcGF0aD4NCiAgICA8L2c+DQogIDwvZz4NCjwvc3ZnPg=="})}),(0,l.jsx)("div",{className:"gradient-delete",onClick:()=>this.props.onDelete(),title:"Delete Step",children:(0,l.jsx)("img",{className:"img",src:F})})]})}}class Va extends a.Component{constructor(e){super(e)}componentDidMount(){const e=this.props.nodeData.data;this._onValueChangedObserver=e.onValueChangedObservable.add((()=>{this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e)}))}componentWillUnmount(){const e=this.props.nodeData.data;this._onValueChangedObserver&&(e.onValueChangedObservable.remove(this._onValueChangedObserver),this._onValueChangedObserver=null)}forceRebuild(){this.props.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.nodeData.data),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}deleteStep(e){const t=this.props.nodeData.data,n=t.colorSteps.indexOf(e);n>-1&&(t.colorSteps.splice(n,1),t.colorStepsUpdated(),this.forceRebuild(),this.forceUpdate())}copyStep(e){const t=this.props.nodeData.data,n=new s.GradientBlockColorStep(1,e.color);t.colorSteps.push(n),t.colorStepsUpdated(),this.forceRebuild(),this.forceUpdate()}addNewStep(){const e=this.props.nodeData.data,t=new s.GradientBlockColorStep(1,s.Color3.White());e.colorSteps.push(t),e.colorStepsUpdated(),this.forceRebuild(),this.forceUpdate()}checkForReOrder(){const e=this.props.nodeData.data;e.colorSteps.sort(((e,t)=>e.step===t.step?0:e.step>t.step?1:-1)),e.colorStepsUpdated(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.forceUpdate()}render(){const e=this.props.nodeData.data;return(0,l.jsxs)("div",{children:[(0,l.jsx)(Ra,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsx)(O,{title:"PROPERTIES",children:(0,l.jsx)(yo,{label:"Type",options:[{label:"None",value:0},{label:"Visible in the inspector",value:1}],target:e,noDirectUpdate:!0,extractValue:e=>e.visibleInInspector?1:e.isConstant?2:0,onSelect:t=>{switch(t){case 0:e.visibleInInspector=!1;break;case 1:e.visibleInInspector=!0}this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()},propertyName:""})}),(0,l.jsxs)(O,{title:"STEPS",children:[(0,l.jsx)(Gr,{label:"Add new step",onClick:()=>this.addNewStep()}),e.colorSteps.map(((e,t)=>(0,l.jsx)(Ya,{stateManager:this.props.stateManager,onCheckForReOrder:()=>this.checkForReOrder(),onUpdateStep:()=>this.forceRebuild(),lineIndex:t,step:e,onCopy:()=>this.copyStep(e),onDelete:()=>this.deleteStep(e)},"step-"+t)))]})]})}}class Ga extends a.Component{get imageSourceBlock(){return this.props.nodeData.data}constructor(e){super(e);const t=this.imageSourceBlock.texture;this.state={isEmbedded:!t||"data"===t.name.substring(0,4)}}UNSAFE_componentWillUpdate(e,t){if(e.nodeData.data!==this.props.nodeData.data){const n=e.nodeData.data.texture;t.isEmbedded=!n||"data"===n.name.substring(0,4),t.loadAsCubeTexture=n&&n.isCube}}_generateRandomForCache(){return"xxxxxxxxxxxxxxxxxxxx".replace(/[x]/g,(()=>(10*Math.random()|0).toString()))}updateAfterTextureLoad(){this.props.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.nodeData.data),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}removeTexture(){let e=this.imageSourceBlock.texture;e&&(e.dispose(),e=null,this.imageSourceBlock.texture=null),this.updateAfterTextureLoad()}_prepareTexture(){let e=this.imageSourceBlock.texture;e&&(e.dispose(),e=null),e||(this.imageSourceBlock.texture=new s.Texture(null,this.props.stateManager.data.nodeMaterial.getScene(),!1,!1),e=this.imageSourceBlock.texture,e.coordinatesMode=s.Texture.EQUIRECTANGULAR_MODE)}replaceTexture(e){this._prepareTexture();const t=this.imageSourceBlock.texture;s.Tools.ReadFile(e,(n=>{const r=new Blob([n],{type:"octet/stream"}),o=new FileReader;o.readAsDataURL(r),o.onloadend=()=>{const n=o.result;let r;e.name.toLowerCase().indexOf(".dds")>0?r=".dds":e.name.toLowerCase().indexOf(".env")>0&&(r=".env"),t.updateURL(n,r,(()=>this.updateAfterTextureLoad()))}}),void 0,!0)}replaceTextureWithUrl(e){this._prepareTexture(),this.imageSourceBlock.texture.updateURL(e,null,(()=>this.updateAfterTextureLoad()))}render(){let e="";const t=this.props.nodeData.data,n=this.imageSourceBlock.texture;n&&n.name&&"data"!==n.name.substring(0,4)&&(e=n.name),e=e.replace(/\?nocache=\d+/,"");const r=[{label:"Nearest",value:s.Texture.NEAREST_NEAREST},{label:"Linear",value:s.Texture.LINEAR_LINEAR},{label:"Linear & linear mip",value:s.Texture.LINEAR_LINEAR_MIPLINEAR},{label:"Linear & nearest mip",value:s.Texture.LINEAR_LINEAR_MIPNEAREST},{label:"Nearest & linear mip",value:s.Texture.NEAREST_NEAREST_MIPLINEAR},{label:"Nearest & nearest mip",value:s.Texture.NEAREST_NEAREST_MIPNEAREST},{label:"Nearest/Linear",value:s.Texture.NEAREST_LINEAR},{label:"Nearest/Linear & linear mip",value:s.Texture.NEAREST_LINEAR_MIPLINEAR},{label:"Nearest/Linear & nearest mip",value:s.Texture.NEAREST_LINEAR_MIPNEAREST},{label:"Linear/Nearest",value:s.Texture.LINEAR_NEAREST},{label:"Linear/Nearest & linear mip",value:s.Texture.LINEAR_NEAREST_MIPLINEAR},{label:"Linear/Nearest & nearest mip",value:s.Texture.LINEAR_NEAREST_MIPNEAREST}];return(0,l.jsxs)("div",{children:[(0,l.jsx)(Ra,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsxs)(O,{title:"PROPERTIES",children:[n&&n.updateSamplingMode&&(0,l.jsx)(yo,{label:"Sampling",options:r,target:n,noDirectUpdate:!0,propertyName:"samplingMode",onSelect:e=>{n.updateSamplingMode(e),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(Z,{label:"Clamp U",isSelected:()=>n.wrapU===s.Texture.CLAMP_ADDRESSMODE,onSelect:e=>{n.wrapU=e?s.Texture.CLAMP_ADDRESSMODE:s.Texture.WRAP_ADDRESSMODE,this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(Z,{label:"Clamp V",isSelected:()=>n.wrapV===s.Texture.CLAMP_ADDRESSMODE,onSelect:e=>{n.wrapV=e?s.Texture.CLAMP_ADDRESSMODE:s.Texture.WRAP_ADDRESSMODE,this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Offset U",target:n,propertyName:"uOffset",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Offset V",target:n,propertyName:"vOffset",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Scale U",target:n,propertyName:"uScale",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Scale V",target:n,propertyName:"vScale",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:"Rotation U",target:n,propertyName:"uAng",minimum:0,maximum:2*Math.PI,useEuler:!0,step:.1,onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:"Rotation V",target:n,propertyName:"vAng",minimum:0,maximum:2*Math.PI,useEuler:!0,step:.1,onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:"Rotation W",target:n,propertyName:"wAng",minimum:0,maximum:2*Math.PI,useEuler:!0,step:.1,onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}})]}),(0,l.jsxs)(O,{title:"SOURCE",children:[(0,l.jsx)(Z,{label:"Embed static texture",isSelected:()=>this.state.isEmbedded,onSelect:e=>{this.setState({isEmbedded:e}),this.imageSourceBlock.texture=null,this.updateAfterTextureLoad()}}),this.state.isEmbedded&&(0,l.jsx)(Q,{label:"Upload",onClick:e=>this.replaceTexture(e),accept:".jpg, .png, .tga, .dds, .env"}),!this.state.isEmbedded&&(0,l.jsx)(Vr,{lockObject:this.props.stateManager.lockObject,label:"Link",value:e,onChange:e=>this.replaceTextureWithUrl(e)}),!this.state.isEmbedded&&e&&(0,l.jsx)(Gr,{label:"Refresh",onClick:()=>this.replaceTextureWithUrl(e+"?nocache="+this._generateRandomForCache())}),n&&(0,l.jsx)(Gr,{label:"Remove",onClick:()=>this.removeTexture()})]}),(0,l.jsx)(Ua,{stateManager:this.props.stateManager,nodeData:this.props.nodeData})]})}}class Wa extends a.Component{render(){return(0,l.jsx)(_r,{lockObject:this.props.globalState.lockObject,label:"Value",target:this.props.inputBlock,propertyName:"value",onChange:()=>{this.props.inputBlock.isConstant&&this.props.globalState.stateManager.onRebuildRequiredObservable.notifyObservers(),this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.inputBlock)}})}}class Ha extends a.Component{render(){return(0,l.jsx)(br,{lockObject:this.props.lockObject,label:"Value",target:this.props.inputBlock,propertyName:"value",onChange:()=>{this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.inputBlock)}})}}class Qa extends a.Component{render(){return(0,l.jsx)(Rr,{lockObject:this.props.lockObject,label:"Value",target:this.props.inputBlock,propertyName:"value",onChange:()=>{this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.inputBlock)}})}}class Za extends a.Component{render(){return(0,l.jsx)(Lr,{lockObject:this.props.lockObject,label:"Value",target:this.props.inputBlock,propertyName:"value",onChange:()=>{this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.inputBlock)}})}}class qa extends a.Component{render(){return(0,l.jsx)(Br,{lockObject:this.props.lockObject,label:"Value",target:this.props.inputBlock,propertyName:"value",onChange:()=>{this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.inputBlock)}})}}class Xa extends a.Component{constructor(e){super(e),this._localChange=!1;const t=this.props.target[this.props.propertyName].clone();let n=0;if(this.props.mode){const e=new s.Quaternion;t.decompose(void 0,e);const r=e.toEulerAngles();switch(this.props.mode){case 1:n=r.x;break;case 2:n=r.y;break;case 3:n=r.z}}this.state={value:t,mode:this.props.mode||0,angle:n}}shouldComponentUpdate(e,t){const n=e.target[e.propertyName];return!n.equals(t.value)||this._localChange?(t.value=n.clone(),this._localChange=!1,!0):t.mode!==this.state.mode||t.angle!==this.state.angle}raiseOnPropertyChanged(e){this.props.onChange&&this.props.onChange(this.state.value),this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:this.state.value,initialValue:e})}updateMatrix(){const e=this.props.target[this.props.propertyName].clone();this.props.target[this.props.propertyName]=this.state.value,this.setState({value:e}),this.raiseOnPropertyChanged(e)}updateRow(e,t){this._localChange=!0,this.state.value.setRow(t,e),this.updateMatrix()}updateBasedOnMode(e){switch(this.state.mode){case 1:s.Matrix.RotationXToRef(this.state.angle,this.state.value);break;case 2:s.Matrix.RotationYToRef(this.state.angle,this.state.value);break;case 3:s.Matrix.RotationZToRef(this.state.angle,this.state.value)}this.updateMatrix(),this.setState({angle:e})}render(){return(0,l.jsxs)("div",{className:"vector3Line",children:[(0,l.jsx)("div",{className:"firstLine",children:(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label})}),(0,l.jsx)("div",{className:"secondLine",children:(0,l.jsx)(yo,{label:"Mode",className:"no-right-margin",options:[{label:"User-defined",value:0},{label:"Rotation over X axis",value:1},{label:"Rotation over Y axis",value:2},{label:"Rotation over Z axis",value:3}],target:this,noDirectUpdate:!0,propertyName:"",extractValue:()=>this.state.mode,onSelect:e=>{this.props.target[this.props.propertyName]=s.Matrix.Identity(),s.Matrix.IdentityToRef(this.state.value),this.setState({mode:e,angle:0}),this.updateMatrix(),this.props.onModeChange&&this.props.onModeChange(e)}})}),0===this.state.mode&&(0,l.jsxs)("div",{className:"secondLine",children:[(0,l.jsx)(Br,{lockObject:this.props.lockObject,label:"Row #0",value:this.state.value.getRow(0),onChange:e=>this.updateRow(e,0)}),(0,l.jsx)(Br,{lockObject:this.props.lockObject,label:"Row #1",value:this.state.value.getRow(1),onChange:e=>this.updateRow(e,1)}),(0,l.jsx)(Br,{lockObject:this.props.lockObject,label:"Row #2",value:this.state.value.getRow(2),onChange:e=>this.updateRow(e,2)}),(0,l.jsx)(Br,{lockObject:this.props.lockObject,label:"Row #3",value:this.state.value.getRow(3),onChange:e=>this.updateRow(e,3)})]}),0!==this.state.mode&&(0,l.jsx)("div",{className:"secondLine",children:(0,l.jsx)(Sr,{label:"Angle",lockObject:this.props.lockObject,minimum:0,maximum:2*Math.PI,useEuler:!0,step:.1,directValue:this.state.angle,onChange:e=>this.updateBasedOnMode(e)})})]})}}class Ja extends a.Component{render(){return(0,l.jsx)(Xa,{lockObject:this.props.lockObject,label:"Value",target:this.props.inputBlock,propertyName:"value",onChange:()=>{this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.inputBlock)},mode:this.props.inputBlock.matrixMode,onModeChange:e=>{this.props.inputBlock.matrixMode=e}})}}class Ka extends a.Component{render(){return(0,l.jsx)(Ur,{lockObject:this.props.lockObject,label:"Value",target:this.props.inputBlock,propertyName:"value",onChange:()=>{this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.inputBlock)}})}}class $a extends a.Component{constructor(e){super(e)}componentDidMount(){const e=this.props.nodeData.data;this._onValueChangedObserver=e.onValueChangedObservable.add((()=>{this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e)}))}componentWillUnmount(){const e=this.props.nodeData.data;this._onValueChangedObserver&&(e.onValueChangedObservable.remove(this._onValueChangedObserver),this._onValueChangedObserver=null)}renderValue(e){const t=this.props.nodeData.data;switch(t.type){case s.NodeMaterialBlockConnectionPointTypes.Float:{const n=isNaN(t.min)||isNaN(t.max)||t.min===t.max;return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(Z,{label:"Is boolean",target:t,propertyName:"isBoolean"}),t.isBoolean&&(0,l.jsx)(Z,{label:"Value",isSelected:()=>1===t.value,onSelect:e=>{t.value=e?1:0,t.isConstant&&this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),!t.isBoolean&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Min",target:t,propertyName:"min",onChange:()=>{t.value<t.min&&(t.value=t.min,t.isConstant&&this.props.stateManager.onRebuildRequiredObservable.notifyObservers()),this.forceUpdate()}}),!t.isBoolean&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Max",target:t,propertyName:"max",onChange:()=>{t.value>t.max&&(t.value=t.max,t.isConstant&&this.props.stateManager.onRebuildRequiredObservable.notifyObservers()),this.forceUpdate()}}),!t.isBoolean&&n&&(0,l.jsx)(Wa,{globalState:e,inputBlock:t}),!t.isBoolean&&!n&&(0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:"Value",target:t,propertyName:"value",step:Math.abs(t.max-t.min)/100,minimum:Math.min(t.min,t.max),maximum:t.max,onChange:()=>{t.isConstant&&this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}})]})}case s.NodeMaterialBlockConnectionPointTypes.Vector2:return(0,l.jsx)(Ha,{lockObject:e.lockObject,globalState:e,inputBlock:t});case s.NodeMaterialBlockConnectionPointTypes.Color3:return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(Qa,{lockObject:e.lockObject,globalState:e,inputBlock:t}),(0,l.jsx)(Z,{label:"Convert to gamma space",propertyName:"convertToGammaSpace",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),(0,l.jsx)(Z,{label:"Convert to linear space",propertyName:"convertToLinearSpace",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}})]});case s.NodeMaterialBlockConnectionPointTypes.Color4:return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(Ka,{lockObject:e.lockObject,globalState:e,inputBlock:t}),(0,l.jsx)(Z,{label:"Convert to gamma space",propertyName:"convertToGammaSpace",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),(0,l.jsx)(Z,{label:"Convert to linear space",propertyName:"convertToLinearSpace",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}})]});case s.NodeMaterialBlockConnectionPointTypes.Vector3:return(0,l.jsx)(Za,{lockObject:e.lockObject,globalState:e,inputBlock:t});case s.NodeMaterialBlockConnectionPointTypes.Vector4:return(0,l.jsx)(qa,{lockObject:e.lockObject,globalState:e,inputBlock:t});case s.NodeMaterialBlockConnectionPointTypes.Matrix:return(0,l.jsx)(Ja,{lockObject:e.lockObject,globalState:e,inputBlock:t})}return null}setDefaultValue(){this.props.nodeData.data.setDefaultValue()}render(){const e=this.props.nodeData.data;let t=[],n=[],r=[];switch(e.type){case s.NodeMaterialBlockConnectionPointTypes.Float:r=[{label:"None",value:s.AnimatedInputBlockTypes.None},{label:"Time",value:s.AnimatedInputBlockTypes.Time},{label:"RealTime",value:s.AnimatedInputBlockTypes.RealTime}],t=[{label:"Delta time",value:s.NodeMaterialSystemValues.DeltaTime},{label:"Material alpha",value:s.NodeMaterialSystemValues.MaterialAlpha}];break;case s.NodeMaterialBlockConnectionPointTypes.Matrix:t=[{label:"World",value:s.NodeMaterialSystemValues.World},{label:"World x View",value:s.NodeMaterialSystemValues.WorldView},{label:"World x View x Projection",value:s.NodeMaterialSystemValues.WorldViewProjection},{label:"View",value:s.NodeMaterialSystemValues.View},{label:"View x Projection",value:s.NodeMaterialSystemValues.ViewProjection},{label:"Projection",value:s.NodeMaterialSystemValues.Projection}];break;case s.NodeMaterialBlockConnectionPointTypes.Color3:t=[{label:"Fog color",value:s.NodeMaterialSystemValues.FogColor}];break;case s.NodeMaterialBlockConnectionPointTypes.Color4:n=[{label:"color",value:"color"},{label:"Instance Color",value:"instanceColor"}];break;case s.NodeMaterialBlockConnectionPointTypes.Vector2:n=[{label:"uv",value:"uv"},{label:"uv2",value:"uv2"},{label:"uv3",value:"uv3"},{label:"uv4",value:"uv4"},{label:"uv5",value:"uv5"},{label:"uv6",value:"uv6"}];break;case s.NodeMaterialBlockConnectionPointTypes.Vector3:t=[{label:"Camera position",value:s.NodeMaterialSystemValues.CameraPosition}],n=[{label:"position",value:"position"},{label:"normal",value:"normal"}];break;case s.NodeMaterialBlockConnectionPointTypes.Vector4:r=[{label:"None",value:s.AnimatedInputBlockTypes.None},{label:"MouseInfo",value:s.AnimatedInputBlockTypes.MouseInfo}],n=[{label:"matricesIndices",value:"matricesIndices"},{label:"matricesWeights",value:"matricesWeights"},{label:"matricesIndicesExtra",value:"matricesIndicesExtra"},{label:"matricesWeightsExtra",value:"matricesWeightsExtra"},{label:"tangent",value:"tangent"}],t=[{label:"Camera parameters",value:s.NodeMaterialSystemValues.CameraParameters}]}const o=[{label:"User-defined",value:0}];return n.length>0&&o.push({label:"Mesh attribute",value:1}),t.length>0&&o.push({label:"System value",value:2}),(0,l.jsxs)("div",{children:[(0,l.jsx)(Ra,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsxs)(O,{title:"PROPERTIES",children:[e.isUniform&&!e.isSystemValue&&e.animationType===s.AnimatedInputBlockTypes.None&&(0,l.jsx)(yo,{label:"Type",options:[{label:"None",value:0},{label:"Visible in the inspector",value:1},{label:"Constant",value:2}],target:e,noDirectUpdate:!0,extractValue:()=>e.visibleInInspector?1:e.isConstant?2:0,onSelect:t=>{switch(t){case 0:e.visibleInInspector=!1,e.isConstant=!1;break;case 1:e.visibleInInspector=!0,e.isConstant=!1;break;case 2:e.visibleInInspector=!1,e.isConstant=!0}this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()},propertyName:""}),e.visibleInInspector&&(0,l.jsx)(Vr,{label:"Group",propertyName:"groupInInspector",target:e,lockObject:this.props.stateManager.lockObject,onChange:()=>{this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()},throttlePropertyChangedNotification:!0}),(0,l.jsx)(yo,{label:"Mode",options:o,target:e,noDirectUpdate:!0,extractValue:()=>e.isAttribute?1:e.isSystemValue?2:0,onSelect:r=>{switch(r){case 0:e.isUniform=!0,e.setAsSystemValue(null),this.setDefaultValue();break;case 1:e.setAsAttribute(n[0].value);break;case 2:e.setAsSystemValue(t[0].value)}this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()},propertyName:""}),e.isAttribute&&(0,l.jsx)(yo,{label:"Attribute",valuesAreStrings:!0,options:n,target:e,propertyName:"name",onSelect:t=>{e.setAsAttribute(t),this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}}),e.isUniform&&r.length>0&&(0,l.jsx)(yo,{label:"Animation type",options:r,target:e,propertyName:"animationType",onSelect:()=>{this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}}),e.isUniform&&!e.isSystemValue&&e.animationType===s.AnimatedInputBlockTypes.None&&this.renderValue(this.props.stateManager.data),e.isUniform&&e.isSystemValue&&(0,l.jsx)(yo,{label:"System value",options:t,target:e,propertyName:"systemValue",onSelect:t=>{e.setAsSystemValue(t),this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}}),e.isUniform&&!e.isSystemValue&&e.animationType===s.AnimatedInputBlockTypes.None&&(0,l.jsx)(Z,{label:"Visible on frame",target:e,propertyName:"visibleOnFrame"})]})]})}}class ei extends a.Component{render(){const e=this.props.stateManager.data.nodeMaterial.getScene(),t=e.lights.map((e=>({label:e.name,value:e.name}))),n=this.props.nodeData.data;return(0,l.jsxs)("div",{children:[(0,l.jsx)(Ra,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsx)(O,{title:"PROPERTIES",children:(0,l.jsx)(yo,{label:"Light",noDirectUpdate:!0,valuesAreStrings:!0,options:t,target:n,propertyName:"name",extractValue:e=>e.light?.name??"",onSelect:t=>{n.light=e.getLightByName(t),this.forceUpdate(),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}})})]})}}class ti extends a.Component{get textureBlock(){return this.props.nodeData.data}constructor(e){super(e);const t=this.textureBlock.texture;this.state={isEmbedded:!t||"data"===t.name.substring(0,4),loadAsCubeTexture:t&&t.isCube,textureIsPrefiltered:!0}}UNSAFE_componentWillUpdate(e,t){if(e.nodeData.data!==this.props.nodeData.data){const n=e.nodeData.data.texture;t.isEmbedded=!n||"data"===n.name.substring(0,4),t.loadAsCubeTexture=n&&n.isCube}}_generateRandomForCache(){return"xxxxxxxxxxxxxxxxxxxx".replace(/[x]/g,(()=>(10*Math.random()|0).toString()))}updateAfterTextureLoad(){this.props.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.nodeData.data),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}removeTexture(){let e=this.textureBlock.texture;e&&(e.dispose(),e=null,this.textureBlock.texture=null),this.updateAfterTextureLoad()}_prepareTexture(){let e=this.textureBlock.texture;if(e&&e.isCube!==this.state.loadAsCubeTexture&&(e.dispose(),e=null),!e){const t=this.props.stateManager.data;this.state.loadAsCubeTexture?(this.textureBlock.texture=new s.CubeTexture("",t.nodeMaterial.getScene()),e=this.textureBlock.texture,e.coordinatesMode=s.Texture.CUBIC_MODE):(this.textureBlock.texture=new s.Texture(null,t.nodeMaterial.getScene(),!1,this.textureBlock instanceof s.ReflectionTextureBlock||this.textureBlock instanceof s.ReflectionBlock||this.textureBlock instanceof s.RefractionBlock||t.mode===s.NodeMaterialModes.PostProcess),e=this.textureBlock.texture,e.coordinatesMode=s.Texture.EQUIRECTANGULAR_MODE)}}replaceTexture(e){this._prepareTexture();const t=this.textureBlock.texture;s.Tools.ReadFile(e,(n=>{const r=new Blob([n],{type:"octet/stream"}),o=new FileReader;o.readAsDataURL(r),o.onloadend=()=>{const n=o.result;let r;e.name.toLowerCase().indexOf(".dds")>0?r=".dds":e.name.toLowerCase().indexOf(".env")>0&&(r=".env"),t.isCube?t.updateURL(n,r,(()=>this.updateAfterTextureLoad()),this.state.textureIsPrefiltered):t.updateURL(n,r,(()=>this.updateAfterTextureLoad()))}}),void 0,!0)}replaceTextureWithUrl(e){this._prepareTexture();const t=this.textureBlock.texture;if(t.name=e,t.isCube||this.textureBlock instanceof s.ReflectionTextureBlock||this.textureBlock instanceof s.ReflectionBlock||this.textureBlock instanceof s.RefractionBlock){let n;e.toLowerCase().indexOf(".dds")>0?n=".dds":e.toLowerCase().indexOf(".env")>0&&(n=".env"),t.updateURL(e,n,(()=>this.updateAfterTextureLoad()),this.state.textureIsPrefiltered)}else t.updateURL(e,null,(()=>this.updateAfterTextureLoad()))}render(){let e="";const t=this.props.nodeData.data,n=this.textureBlock.hasImageSource?null:this.textureBlock.texture;n&&n.name&&"data"!==n.name.substring(0,4)&&(e=n.name),e=e.replace(/\?nocache=\d+/,"");const r=this.textureBlock instanceof s.ReflectionTextureBlock||this.textureBlock instanceof s.ReflectionBlock||this.textureBlock instanceof s.RefractionBlock,o=this.textureBlock instanceof s.CurrentScreenBlock||this.textureBlock instanceof s.ParticleTextureBlock,a=this.textureBlock instanceof s.ReflectionBlock,i=[{label:"Cubic",value:s.Texture.CUBIC_MODE},{label:"Equirectangular",value:s.Texture.EQUIRECTANGULAR_MODE},{label:"Explicit",value:s.Texture.EXPLICIT_MODE},{label:"Fixed equirectangular",value:s.Texture.FIXED_EQUIRECTANGULAR_MODE},{label:"Fixed mirrored equirectangular",value:s.Texture.FIXED_EQUIRECTANGULAR_MIRRORED_MODE},{label:"Planar",value:s.Texture.PLANAR_MODE},{label:"Projection",value:s.Texture.PROJECTION_MODE},{label:"Skybox",value:s.Texture.SKYBOX_MODE},{label:"Spherical",value:s.Texture.SPHERICAL_MODE}],c=[{label:"Nearest",value:s.Texture.NEAREST_NEAREST},{label:"Linear",value:s.Texture.LINEAR_LINEAR},{label:"Linear & linear mip",value:s.Texture.LINEAR_LINEAR_MIPLINEAR},{label:"Linear & nearest mip",value:s.Texture.LINEAR_LINEAR_MIPNEAREST},{label:"Nearest & linear mip",value:s.Texture.NEAREST_NEAREST_MIPLINEAR},{label:"Nearest & nearest mip",value:s.Texture.NEAREST_NEAREST_MIPNEAREST},{label:"Nearest/Linear",value:s.Texture.NEAREST_LINEAR},{label:"Nearest/Linear & linear mip",value:s.Texture.NEAREST_LINEAR_MIPLINEAR},{label:"Nearest/Linear & nearest mip",value:s.Texture.NEAREST_LINEAR_MIPNEAREST},{label:"Linear/Nearest",value:s.Texture.LINEAR_NEAREST},{label:"Linear/Nearest & linear mip",value:s.Texture.LINEAR_NEAREST_MIPLINEAR},{label:"Linear/Nearest & nearest mip",value:s.Texture.LINEAR_NEAREST_MIPNEAREST}];return(0,l.jsxs)("div",{children:[(0,l.jsx)(Ra,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsxs)(O,{title:"PROPERTIES",children:[(0,l.jsx)(Z,{label:"Auto select UV",propertyName:"autoSelectUV",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),!r&&(0,l.jsx)(Z,{label:"Convert to gamma space",propertyName:"convertToGammaSpace",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),!r&&(0,l.jsx)(Z,{label:"Convert to linear space",propertyName:"convertToLinearSpace",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&a&&(0,l.jsx)(Z,{label:"Is in gamma space",propertyName:"gammaSpace",target:n,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),(0,l.jsx)(Z,{label:"Disable multiplying by level",propertyName:"disableLevelMultiplication",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}}),n&&n.updateSamplingMode&&(0,l.jsx)(yo,{label:"Sampling",options:c,target:n,noDirectUpdate:!0,propertyName:"samplingMode",onSelect:e=>{n.updateSamplingMode(e),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&r&&(0,l.jsx)(yo,{label:"Reflection mode",options:i,target:n,propertyName:"coordinatesMode",onSelect:e=>{n.coordinatesMode=e,this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&!r&&!o&&(0,l.jsx)(Z,{label:"Clamp U",isSelected:()=>n.wrapU===s.Texture.CLAMP_ADDRESSMODE,onSelect:e=>{n.wrapU=e?s.Texture.CLAMP_ADDRESSMODE:s.Texture.WRAP_ADDRESSMODE,this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}}),n&&!r&&!o&&(0,l.jsx)(Z,{label:"Clamp V",isSelected:()=>n.wrapV===s.Texture.CLAMP_ADDRESSMODE,onSelect:e=>{n.wrapV=e?s.Texture.CLAMP_ADDRESSMODE:s.Texture.WRAP_ADDRESSMODE,this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}}),n&&!r&&!o&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Offset U",target:n,propertyName:"uOffset",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&!r&&!o&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Offset V",target:n,propertyName:"vOffset",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&!r&&!o&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Scale U",target:n,propertyName:"uScale",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&!r&&!o&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Scale V",target:n,propertyName:"vScale",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&!r&&!o&&(0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:"Rotation U",target:n,propertyName:"uAng",minimum:0,maximum:2*Math.PI,useEuler:!0,step:.1,onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&!r&&!o&&(0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:"Rotation V",target:n,propertyName:"vAng",minimum:0,maximum:2*Math.PI,useEuler:!0,step:.1,onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&!r&&!o&&(0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:"Rotation W",target:n,propertyName:"wAng",minimum:0,maximum:2*Math.PI,useEuler:!0,step:.1,onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}})]}),!this.textureBlock.hasImageSource&&(0,l.jsxs)(O,{title:"SOURCE",children:[(0,l.jsx)(Z,{label:"Embed static texture",isSelected:()=>this.state.isEmbedded,onSelect:e=>{this.setState({isEmbedded:e}),this.textureBlock.texture=null,this.updateAfterTextureLoad()}}),r&&(0,l.jsx)(Z,{label:"Load as cube texture",isSelected:()=>this.state.loadAsCubeTexture,onSelect:e=>this.setState({loadAsCubeTexture:e})}),r&&this.state.loadAsCubeTexture&&(0,l.jsx)(Z,{label:" Texture is prefiltered",isSelected:()=>this.state.textureIsPrefiltered,onSelect:e=>this.setState({textureIsPrefiltered:e})}),this.state.isEmbedded&&(0,l.jsx)(Q,{label:"Upload",onClick:e=>this.replaceTexture(e),accept:".jpg, .png, .tga, .dds, .env, .exr"}),!this.state.isEmbedded&&(0,l.jsx)(Vr,{lockObject:this.props.stateManager.lockObject,label:"Link",value:e,onChange:e=>this.replaceTextureWithUrl(e)}),!this.state.isEmbedded&&e&&(0,l.jsx)(Gr,{label:"Refresh",onClick:()=>this.replaceTextureWithUrl(e+"?nocache="+this._generateRandomForCache())}),n&&(0,l.jsx)(Gr,{label:"Remove",onClick:()=>this.removeTexture()})]}),(0,l.jsx)(Ua,{stateManager:this.props.stateManager,nodeData:this.props.nodeData})]})}}class ni extends a.Component{constructor(e){super(e)}render(){const e=this.props.nodeData.data,t=[{label:"X",value:"x"},{label:"Y",value:"y"},{label:"Z",value:"z"},{label:"W",value:"w"}];return(0,l.jsxs)("div",{children:[(0,l.jsx)(Ra,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsxs)(O,{title:"SWIZZLES",children:[(0,l.jsx)(yo,{label:"X",options:t,target:e,propertyName:"xSwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}}),(0,l.jsx)(yo,{label:"Y",options:t,target:e,propertyName:"ySwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}}),(0,l.jsx)(yo,{label:"Z",options:t,target:e,propertyName:"zSwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}}),(0,l.jsx)(yo,{label:"W",options:t,target:e,propertyName:"wSwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}})]})]})}}class ri extends a.Component{constructor(e){super(e)}componentDidMount(){this._onUpdateRequiredObserver=this.props.stateManager.onUpdateRequiredObservable.add((()=>{this.forceUpdate()}))}componentWillUnmount(){this.props.stateManager.onUpdateRequiredObservable.remove(this._onUpdateRequiredObserver)}render(){const e=this.props.nodeData.data,t=[{label:"None",value:-1}],n=[],r=this.props.stateManager.data.nodeMaterial;for(const e of r.attachedBlocks)"NodeMaterialTeleportInBlock"===e.getClassName()&&n.push(e);n.sort(((e,t)=>e.name.localeCompare(t.name)));for(const e of n)t.push({label:e.name,value:e.uniqueId});return(0,l.jsxs)("div",{children:[(0,l.jsx)(Ra,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsx)(O,{title:"PROPERTIES",children:(0,l.jsx)(yo,{label:"Entry point",options:t,target:e,propertyName:"entryPoint",noDirectUpdate:!0,onSelect:t=>{if(e.entryPoint&&this.props.stateManager.onHighlightNodeObservable.notifyObservers({data:e.entryPoint,active:!1}),-1===t)e.detach();else{const r=n.find((e=>e.uniqueId===t));r?.attachToEndpoint(e)}e.entryPoint&&this.props.stateManager.onHighlightNodeObservable.notifyObservers({data:e.entryPoint,active:!0}),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.forceUpdate()},extractValue:()=>e.entryPoint?e.entryPoint?.uniqueId:-1})})]})}}class oi{static Show(e){if(Ao.RegisteredControls.LoopBlock=Pa,Ao.RegisteredControls.InputBlock=$o,Ao.RegisteredControls.VertexOutputBlock=ea,Ao.RegisteredControls.FragmentOutputBlock=ea,Ao.RegisteredControls.ClampBlock=ta,Ao.RegisteredControls.GradientBlock=aa,Ao.RegisteredControls.RemapBlock=ca,Ao.RegisteredControls.TrigonometryBlock=ua,Ao.RegisteredControls.ConditionalBlock=ya,Ao.RegisteredControls.TextureBlock=Ca,Ao.RegisteredControls.ReflectionTextureBlock=Ca,Ao.RegisteredControls.ReflectionBlock=Ca,Ao.RegisteredControls.RefractionBlock=Ca,Ao.RegisteredControls.CurrentScreenBlock=Ca,Ao.RegisteredControls.ParticleTextureBlock=Ca,Ao.RegisteredControls.TriPlanarBlock=Ca,Ao.RegisteredControls.BiPlanarBlock=Ca,Ao.RegisteredControls.DiscardBlock=ba,Ao.RegisteredControls.PBRMetallicRoughnessBlock=va,Ao.RegisteredControls.AnisotropyBlock=va,Ao.RegisteredControls.ClearCoatBlock=va,Ao.RegisteredControls.SheenBlock=va,Ao.RegisteredControls.SubSurfaceBlock=va,Ao.RegisteredControls.ImageSourceBlock=ka,Ao.RegisteredControls.ElbowBlock=La,Ao.RegisteredControls.MeshAttributeExistsBlock=Ba,Ao.RegisteredControls.CurveBlock=Ea,Ao.RegisteredControls.NodeMaterialTeleportInBlock=Oa,Ao.RegisteredControls.NodeMaterialTeleportOutBlock=Ta,ho.DefaultControl=za,ho.RegisteredControls.InputBlock=$a,ho.RegisteredControls.GradientBlock=Va,ho.RegisteredControls.LightInformationBlock=ei,ho.RegisteredControls.TextureBlock=ti,ho.RegisteredControls.ReflectionTextureBlock=ti,ho.RegisteredControls.ReflectionBlock=ti,ho.RegisteredControls.RefractionBlock=ti,ho.RegisteredControls.CurrentScreenBlock=ti,ho.RegisteredControls.ParticleTextureBlock=ti,ho.RegisteredControls.TriPlanarBlock=ti,ho.RegisteredControls.BiPlanarBlock=ti,ho.RegisteredControls.ImageSourceBlock=Ga,ho.RegisteredControls.VectorMergerBlock=ni,ho.RegisteredControls.ColorMergerBlock=Fa,ho.RegisteredControls.NodeMaterialTeleportOutBlock=ri,S.PortDataBuilder=(e,t)=>new L(e.portData.data,t),S.NodeDataBuilder=(e,t)=>new j(e,t),this._CurrentState){const e=Do["node-editor"];e&&e.close()}let n=e.hostElement;n||(n=Do.CreatePopup("BABYLON.JS NODE EDITOR","node-editor",1e3,800));const r=new T;r.nodeMaterial=e.nodeMaterial,r.mode=e.nodeMaterial.mode,r.hostElement=n,r.hostDocument=n.ownerDocument,r.customSave=e.customSave,r.hostWindow=n.ownerDocument.defaultView,r.stateManager.hostDocument=r.hostDocument,e.backgroundColor&&(r.backgroundColor=e.backgroundColor);const o=a.createElement(Qo,{globalState:r});i.render(o,n),e.customLoadObservable&&e.customLoadObservable.add((t=>{E.Deserialize(t,r),r.mode=e.nodeMaterial.mode,r.onResetRequiredObservable.notifyObservers(!1),r.onBuiltObservable.notifyObservers()})),this._CurrentState=r,r.hostWindow.addEventListener("beforeunload",(()=>{r.onPopupClosedObservable.notifyObservers()}));const l=Do["node-editor"];r.nodeMaterial&&l&&(r.nodeMaterial.getScene().onDisposeObservable.addOnce((()=>{l&&l.close()})),window.onbeforeunload=()=>{const e=Do["node-editor"];e&&e.close()}),window.addEventListener("beforeunload",(()=>{s.DataStorage.ReadNumber("PreviewType",t.Box)===t.Custom&&s.DataStorage.WriteNumber("PreviewType",r.mode===s.NodeMaterialModes.Material?t.Box:t.Bubbles)}))}}const ai=void 0!==r.g?r.g:"undefined"!=typeof window?window:void 0;void 0!==ai&&(ai.BABYLON=ai.BABYLON||{},ai.BABYLON.NodeEditor=oi);const ii=e})(),o.default})()));
|
2
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@babylonjs/core")):"function"==typeof define&&define.amd?define("@babylonjs/node-editor",["@babylonjs/core"],t):"object"==typeof exports?exports["@babylonjs/node-editor"]=t(require("@babylonjs/core")):e.NODEEDITOR=t(e.BABYLON)}("undefined"!=typeof self?self:"undefined"!=typeof global?global:this,(e=>(()=>{var t={5228:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'.color-picker-container{width:320px;height:300px;background-color:#fff;display:grid;grid-template-columns:100%;grid-template-rows:50% 50px 60px 40px 1fr auto;font-family:"acumin-pro-condensed";font-weight:normal;font-size:14px}.color-picker-container.with-hints{height:380px}.color-picker-container .color-picker-saturation{grid-row:1;grid-column:1;display:grid;grid-template-columns:100%;grid-template-rows:100%;position:relative;cursor:pointer}.color-picker-container .color-picker-saturation .color-picker-saturation-white{grid-row:1;grid-column:1;background:linear-gradient(to right, #fff, rgba(255, 255, 255, 0))}.color-picker-container .color-picker-saturation .color-picker-saturation-black{grid-row:1;grid-column:1;background:linear-gradient(to top, #000, rgba(0, 0, 0, 0))}.color-picker-container .color-picker-saturation .color-picker-saturation-cursor{pointer-events:none;width:4px;height:4px;box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px rgba(0,0,0,.3),0 0 1px 2px rgba(0,0,0,.4);border-radius:50%;transform:translate(-2px, -2px);position:absolute}.color-picker-container .color-picker-hue{grid-row:2;grid-column:1;display:grid;margin:10px;grid-template-columns:24% 76%;grid-template-rows:100%}.color-picker-container .color-picker-hue .color-picker-hue-color{grid-row:1;grid-column:1;align-self:center;justify-self:center;width:30px;height:30px;border-radius:15px;border:1px solid #000}.color-picker-container .color-picker-hue .color-picker-hue-slider{grid-row:1;grid-column:2;align-self:center;height:16px;position:relative;cursor:pointer;background:linear-gradient(to right, #f00 0%, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 83%, #f00 100%)}.color-picker-container .color-picker-hue .color-picker-hue-slider .color-picker-hue-cursor{pointer-events:none;width:8px;height:18px;transform:translate(-4px, -2px);background-color:#f8f8f8;box-shadow:0 1px 4px 0 rgba(0,0,0,.37);position:absolute}.color-picker-container .color-picker-component{display:grid;margin:5px;grid-template-columns:100%;grid-template-rows:50% 50%}.color-picker-container .color-picker-component .color-picker-component-value{justify-self:center;align-self:center;grid-row:1;grid-column:1;margin-bottom:4px}.color-picker-container .color-picker-component .color-picker-component-value input{width:50px}.color-picker-container .color-picker-component .color-picker-component-label{justify-self:center;align-self:center;grid-row:2;grid-column:1;color:#000}.color-picker-container .color-picker-rgb{grid-row:3;grid-column:1;display:grid;margin:10px;grid-template-columns:20% 6.66% 20% 6.66% 20% 6.66% 20%;grid-template-rows:100%}.color-picker-container .red{grid-row:1;grid-column:1}.color-picker-container .green{grid-row:1;grid-column:3}.color-picker-container .blue{grid-row:1;grid-column:5}.color-picker-container .alpha{grid-row:1;grid-column:7}.color-picker-container .alpha.grayed{opacity:.5}.color-picker-container .color-picker-hex{grid-row:4;grid-column:1;display:grid;grid-template-columns:20% 80%;grid-template-rows:100%}.color-picker-container .color-picker-hex .color-picker-hex-label{justify-self:center;align-self:center;grid-row:1;grid-column:1;margin-left:10px;color:#000}.color-picker-container .color-picker-hex .color-picker-hex-value{justify-self:left;align-self:center;grid-row:1;grid-column:2;margin-left:10px;margin-right:10px}.color-picker-container .color-picker-hex .color-picker-hex-value input{width:70px}.color-picker-container .color-picker-warning{color:#000;font-size:11px;padding:4px;justify-self:left;align-self:center;grid-row:6;grid-column:1}',"",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/colorPicker/colorPicker.scss"],names:[],mappings:"AAAA,wBACI,WAAA,CACA,YAAA,CACA,qBAAA,CACA,YAAA,CACA,0BAAA,CACA,8CAAA,CACA,kCAAA,CACA,kBAAA,CACA,cAAA,CAEA,mCACI,YAAA,CAGJ,iDACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,0BAAA,CACA,uBAAA,CACA,iBAAA,CACA,cAAA,CAEA,gFACI,UAAA,CACA,aAAA,CAEA,kEAAA,CAGJ,gFACI,UAAA,CACA,aAAA,CAEA,0DAAA,CAGJ,iFACI,mBAAA,CACA,SAAA,CACA,UAAA,CACA,uFACI,CAGJ,iBAAA,CACA,+BAAA,CACA,iBAAA,CAIR,0CACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,WAAA,CACA,6BAAA,CACA,uBAAA,CAEA,kEACI,UAAA,CACA,aAAA,CACA,iBAAA,CACA,mBAAA,CACA,UAAA,CACA,WAAA,CACA,kBAAA,CACA,qBAAA,CAGJ,mEACI,UAAA,CACA,aAAA,CACA,iBAAA,CACA,WAAA,CACA,iBAAA,CACA,cAAA,CAEA,0GAAA,CAEA,4FACI,mBAAA,CACA,SAAA,CACA,WAAA,CACA,+BAAA,CACA,wBAAA,CACA,sCAAA,CACA,iBAAA,CAKZ,gDACI,YAAA,CACA,UAAA,CACA,0BAAA,CACA,0BAAA,CAEA,8EACI,mBAAA,CACA,iBAAA,CACA,UAAA,CACA,aAAA,CACA,iBAAA,CAEA,oFACI,UAAA,CAIR,8EACI,mBAAA,CACA,iBAAA,CACA,UAAA,CACA,aAAA,CACA,UAAA,CAIR,0CACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,WAAA,CACA,uDAAA,CACA,uBAAA,CAGJ,6BACI,UAAA,CACA,aAAA,CAGJ,+BACI,UAAA,CACA,aAAA,CAGJ,8BACI,UAAA,CACA,aAAA,CAGJ,+BACI,UAAA,CACA,aAAA,CAEA,sCACI,UAAA,CAIR,0CACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,6BAAA,CACA,uBAAA,CAEA,kEACI,mBAAA,CACA,iBAAA,CACA,UAAA,CACA,aAAA,CACA,gBAAA,CACA,UAAA,CAGJ,kEACI,iBAAA,CACA,iBAAA,CACA,UAAA,CACA,aAAA,CACA,gBAAA,CACA,iBAAA,CAEA,wEACI,UAAA,CAKZ,8CACI,UAAA,CACA,cAAA,CACA,WAAA,CACA,iBAAA,CACA,iBAAA,CACA,UAAA,CACA,aAAA",sourceRoot:""}]),i.locals={};const s=i},2976:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,"#graph-search-container{position:absolute;width:100%;height:100%;left:0;top:0}#graph-search-container #graph-search-picking-blocker{position:absolute;width:100%;height:100%;left:0;top:0;cursor:default}#graph-search-container #graph-search-box{width:300px;height:400px;position:absolute;left:calc(50% - 150px);top:calc(50% - 200px);background:#484848;border:2px solid #000;z-index:100;cursor:auto;display:grid;grid-template-rows:auto auto 1fr}#graph-search-container #graph-search-box .graph-search-box-title{border-bottom:1px solid #282828;margin:4px;padding-bottom:4px;color:#fff;grid-row:1}#graph-search-container #graph-search-box .graph-search-box-filter{margin:4px;padding-bottom:4px;border-radius:4px;width:calc(100% - 16px);grid-row:2}#graph-search-container #graph-search-box .graph-search-box-list{grid-row:3;overflow-y:auto;display:flex;flex-direction:column}#graph-search-container #graph-search-box .graph-search-box-list .graph-search-box-list-item{margin-left:4px;cursor:pointer;color:#fff;margin-top:4px;margin-bottom:4px}#graph-search-container #graph-search-box .graph-search-box-list .graph-search-box-list-item:hover{background:#1e1e1e}#graph-search-container #graph-search-box .graph-search-box-list .graph-search-box-list-item.selected{background:#e6e6e6;color:#000}","",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/searchBox.scss"],names:[],mappings:"AAAA,wBACI,iBAAA,CACA,UAAA,CACA,WAAA,CACA,MAAA,CACA,KAAA,CAEA,sDACI,iBAAA,CACA,UAAA,CACA,WAAA,CACA,MAAA,CACA,KAAA,CACA,cAAA,CAGJ,0CACI,WAAA,CACA,YAAA,CACA,iBAAA,CACA,sBAAA,CACA,qBAAA,CACA,kBAAA,CACA,qBAAA,CACA,WAAA,CACA,WAAA,CACA,YAAA,CACA,gCAAA,CAEA,kEACI,+BAAA,CACA,UAAA,CACA,kBAAA,CACA,UAAA,CACA,UAAA,CAGJ,mEACI,UAAA,CACA,kBAAA,CACA,iBAAA,CACA,uBAAA,CACA,UAAA,CAGJ,iEACI,UAAA,CACA,eAAA,CACA,YAAA,CACA,qBAAA,CAEA,6FACI,eAAA,CACA,cAAA,CACA,UAAA,CACA,cAAA,CACA,iBAAA,CAEA,mGACI,kBAAA,CAGJ,sGACI,kBAAA,CACA,UAAA",sourceRoot:""}]),i.locals={};const s=i},9707:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'#nme-log-console{background:#333;height:100%;box-sizing:border-box;margin:0;padding:10px;width:100%;overflow:hidden;overflow-y:auto;grid-row:2;grid-column:3}#nme-log-console .log{color:#fff;font-size:14px;font-family:"Courier New",Courier,monospace}#nme-log-console .log.error{color:red}',"",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/components/log/log.scss"],names:[],mappings:"AAAA,iBACI,eAAA,CACA,WAAA,CACA,qBAAA,CACA,QAAA,CACA,YAAA,CACA,UAAA,CACA,eAAA,CACA,eAAA,CACA,UAAA,CACA,aAAA,CAEA,sBACI,UAAA,CACA,cAAA,CACA,2CAAA,CAEA,4BACI,SAAA",sourceRoot:""}]),i.locals={};const s=i},3557:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,"#nmeNodeList{background:#333;height:100%;margin:0;padding:0;display:grid;width:100%;overflow:hidden}#nmeNodeList .panes{overflow:hidden}#nmeNodeList .panes .pane{color:#fff;overflow:hidden;height:100%;user-select:none}#nmeNodeList .panes .pane .filter{display:flex;align-items:stretch}#nmeNodeList .panes .pane .filter input{width:100%;margin:10px 10px 5px 10px;display:block;border:none;padding:0;border-bottom:solid 1px #337ab7;background:linear-gradient(to bottom, rgba(255, 255, 255, 0) 96%, rgb(51, 122, 183) 4%);background-position:-1000px 0;background-size:1000px 100%;background-repeat:no-repeat;color:#fff}#nmeNodeList .panes .pane .filter input:focus{box-shadow:none;outline:none;background-position:0 0}#nmeNodeList .panes .pane .filter input::placeholder{color:gray}#nmeNodeList .panes .pane .list-container{overflow-x:hidden;overflow-y:auto;height:calc(100% - 32px)}#nmeNodeList .panes .pane .list-container .underline{border-bottom:.5px solid hsla(0,0%,100%,.5)}#nmeNodeList .panes .pane .list-container .draggableLine{height:30px;display:grid;align-items:center;justify-items:stretch;background:#222;cursor:grab;text-align:center;margin:0;box-sizing:border-box}#nmeNodeList .panes .pane .list-container .draggableLine:hover{background:#337ab7;color:#fff}#nmeNodeList .panes .pane .list-container .nonDraggableLine{height:30px;display:grid;align-items:center;justify-items:stretch;background:#222;text-align:center;margin:0;box-sizing:border-box}#nmeNodeList .panes .pane .list-container .withButton{height:30px;position:relative}#nmeNodeList .panes .pane .list-container .withButton .icon{position:absolute;right:4px;top:5px}#nmeNodeList .panes .pane .list-container .withButton .icon:hover{cursor:pointer}#nmeNodeList .panes .pane .list-container .withButton .icon .img{height:17px;width:17px}#nmeNodeList .panes .pane .list-container .withButton .buttonLine{height:30px;display:grid;align-items:center;justify-items:stretch;padding-bottom:5px;position:absolute;right:0px;top:2px}#nmeNodeList .panes .pane .list-container .withButton .buttonLine input[type=file]{display:none}#nmeNodeList .panes .pane .list-container .withButton .buttonLine .file-upload{background:rgba(0,0,0,0);border:rgba(0,0,0,0);padding:15px 200px;opacity:.9;cursor:pointer;text-align:center}#nmeNodeList .panes .pane .list-container .withButton .buttonLine .file-upload:hover{opacity:1}#nmeNodeList .panes .pane .list-container .withButton .buttonLine .file-upload:active{transform:scale(0.98);transform-origin:.5 .5}#nmeNodeList .panes .pane .list-container .withButton .buttonLine button{background:rgba(0,0,0,0);border:rgba(0,0,0,0);margin:5px 10px 5px 10px;color:#fff;padding:4px 5px;opacity:.9}#nmeNodeList .panes .pane .list-container .withButton .buttonLine button:hover{opacity:0}#nmeNodeList .panes .pane .list-container .withButton .buttonLine button:active{background:rgba(0,0,0,0)}#nmeNodeList .panes .pane .list-container .withButton .buttonLine button:focus{border:rgba(0,0,0,0);outline:0px}#nmeNodeList .panes .pane .list-container .paneContainer{margin-top:3px;display:grid;grid-template-rows:100%;grid-template-columns:100%}#nmeNodeList .panes .pane .list-container .paneContainer .paneContainer-content{grid-row:1;grid-column:1}#nmeNodeList .panes .pane .list-container .paneContainer .paneContainer-content .header{display:grid;grid-template-columns:1fr auto;background:#555;height:30px;padding-right:5px;cursor:pointer}#nmeNodeList .panes .pane .list-container .paneContainer .paneContainer-content .header .title{border-left:3px solid rgba(0,0,0,0);padding-left:5px;grid-column:1;display:flex;align-items:center}#nmeNodeList .panes .pane .list-container .paneContainer .paneContainer-content .header .collapse{grid-column:2;display:flex;align-items:center;justify-items:center;transform-origin:center}#nmeNodeList .panes .pane .list-container .paneContainer .paneContainer-content .header .collapse.closed{transform:rotate(180deg)}#nmeNodeList .panes .pane .list-container .paneContainer .paneContainer-content .paneList>div:not(:last-child){border-bottom:1px solid hsla(0,0%,100%,.3)}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/components/nodeList/nodeList.scss"],names:[],mappings:"AAAA,aACI,eAAA,CACA,WAAA,CACA,QAAA,CACA,SAAA,CACA,YAAA,CACA,UAAA,CACA,eAAA,CAEA,oBACI,eAAA,CAEA,0BACI,UAAA,CAEA,eAAA,CACA,WAAA,CAEA,gBAAA,CAEA,kCACI,YAAA,CACA,mBAAA,CAEA,wCACI,UAAA,CACA,yBAAA,CACA,aAAA,CACA,WAAA,CACA,SAAA,CACA,+BAAA,CACA,uFAAA,CACA,6BAAA,CACA,2BAAA,CACA,2BAAA,CACA,UAAA,CAGJ,8CACI,eAAA,CACA,YAAA,CACA,uBAAA,CAGJ,qDACI,UAAA,CAIR,0CACI,iBAAA,CACA,eAAA,CACA,wBAAA,CAEA,qDACI,2CAAA,CAGJ,yDACI,WAAA,CACA,YAAA,CACA,kBAAA,CACA,qBAAA,CACA,eAAA,CACA,WAAA,CACA,iBAAA,CACA,QAAA,CACA,qBAAA,CAEA,+DACI,kBAAA,CACA,UAAA,CAIR,4DACI,WAAA,CACA,YAAA,CACA,kBAAA,CACA,qBAAA,CACA,eAAA,CACA,iBAAA,CACA,QAAA,CACA,qBAAA,CAGJ,sDACI,WAAA,CACA,iBAAA,CACA,4DACI,iBAAA,CACA,SAAA,CACA,OAAA,CACA,kEACI,cAAA,CAGJ,iEACI,WAAA,CACA,UAAA,CAIR,kEACI,WAAA,CACA,YAAA,CACA,kBAAA,CACA,qBAAA,CACA,kBAAA,CACA,iBAAA,CACA,SAAA,CACA,OAAA,CACA,mFACI,YAAA,CAGJ,+EACI,wBAAA,CACA,oBAAA,CACA,kBAAA,CACA,UAAA,CACA,cAAA,CACA,iBAAA,CAGJ,qFACI,SAAA,CAGJ,sFACI,qBAAA,CACA,sBAAA,CAGJ,yEACI,wBAAA,CACA,oBAAA,CACA,wBAAA,CACA,UAAA,CACA,eAAA,CACA,UAAA,CAGJ,+EACI,SAAA,CAGJ,gFACI,wBAAA,CAGJ,+EACI,oBAAA,CACA,WAAA,CAKZ,yDACI,cAAA,CACA,YAAA,CACA,uBAAA,CACA,0BAAA,CAEA,gFACI,UAAA,CACA,aAAA,CAEA,wFACI,YAAA,CACA,8BAAA,CACA,eAAA,CACA,WAAA,CACA,iBAAA,CACA,cAAA,CAEA,+FACI,mCAAA,CACA,gBAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,kGACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,oBAAA,CACA,uBAAA,CAEA,yGACI,wBAAA,CAKZ,+GACI,0CAAA",sourceRoot:""}]),i.locals={};const s=i},35:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'.nme-right-panel #propertyTab{color:#fff;background:#333}.nme-right-panel #propertyTab #header{height:30px;font-size:16px;color:#fff;background:#222;grid-row:1;text-align:center;display:grid;grid-template-columns:30px 1fr;user-select:none}.nme-right-panel #propertyTab #header #logo{position:relative;grid-column:1;width:24px;height:24px;left:0;display:flex;align-self:center;justify-self:center}.nme-right-panel #propertyTab #header #title{grid-column:2;display:grid;align-items:center;text-align:center}.nme-right-panel #propertyTab .range{-webkit-appearance:none;width:120px;height:6px;background:#d3d3d3;border-radius:5px;outline:none;opacity:.7;transition:opacity .2s}.nme-right-panel #propertyTab .range:hover{opacity:1}.nme-right-panel #propertyTab .range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:#337ab7;cursor:pointer}.nme-right-panel #propertyTab .range::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#337ab7;cursor:pointer}.nme-right-panel #propertyTab input[type=color]{-webkit-appearance:none;border:1px solid hsla(0,0%,100%,.5);padding:0;width:30px;height:20px}.nme-right-panel #propertyTab input[type=color]::-webkit-color-swatch-wrapper{padding:0}.nme-right-panel #propertyTab input[type=color]::-webkit-color-swatch{border:none}.nme-right-panel #propertyTab .sliderLine{padding-left:5px;height:30px;display:grid;grid-template-rows:100%;grid-template-columns:1fr 50px auto}.nme-right-panel #propertyTab .sliderLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .sliderLine .slider{grid-column:3;grid-row:1;margin-right:5px;width:90%;display:flex;align-items:center}.nme-right-panel #propertyTab .sliderLine .floatLine{grid-column:2;padding-left:5px}.nme-right-panel #propertyTab .sliderLine .floatLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .sliderLine .floatLine .short{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .sliderLine .floatLine .short input{width:35px}.nme-right-panel #propertyTab .sliderLine .floatLine .short input::-webkit-outer-spin-button,.nme-right-panel #propertyTab .sliderLine .floatLine .short input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.nme-right-panel #propertyTab .sliderLine .floatLine .copy{display:none}.nme-right-panel #propertyTab .sliderLine .copy{display:none}.nme-right-panel #propertyTab .textInputLine{padding-left:5px;height:30px;display:grid;grid-template-columns:1fr 120px auto}.nme-right-panel #propertyTab .textInputLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .textInputLine .value{display:flex;align-items:center;grid-column:2}.nme-right-panel #propertyTab .textInputLine .value input{width:calc(100% - 5px);margin-right:5px}.nme-right-panel #propertyTab .textInputArea{padding-left:5px;height:50px;display:grid;grid-template-columns:1fr 120px}.nme-right-panel #propertyTab .textInputArea .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .textInputArea textarea{margin-right:5px;margin-left:-50%;height:40px;resize:none}.nme-right-panel #propertyTab .textInputArea .value{display:flex;align-items:center;grid-column:2}.nme-right-panel #propertyTab .paneContainer{margin-top:3px;display:grid;grid-template-rows:100%;grid-template-columns:100%}.nme-right-panel #propertyTab .paneContainer .paneList{border-left:3px solid rgba(0,0,0,0)}.nme-right-panel #propertyTab .paneContainer:hover .paneList{border-left:3px solid rgba(51,122,183,.8)}.nme-right-panel #propertyTab .paneContainer:hover .paneContainer-content .header .title{border-left:3px solid #337ab7}.nme-right-panel #propertyTab .paneContainer .paneContainer-highlight-border{grid-row:1;grid-column:1;opacity:1;border:3px solid red;transition:opacity 250ms;pointer-events:none}.nme-right-panel #propertyTab .paneContainer .paneContainer-highlight-border.transparent{opacity:0}.nme-right-panel #propertyTab .paneContainer .paneContainer-content{grid-row:1;grid-column:1}.nme-right-panel #propertyTab .paneContainer .paneContainer-content .header{display:grid;grid-template-columns:1fr auto;background:#555;height:30px;padding-right:5px;cursor:pointer}.nme-right-panel #propertyTab .paneContainer .paneContainer-content .header .title{border-left:3px solid rgba(0,0,0,0);padding-left:5px;grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .paneContainer .paneContainer-content .header .collapse{grid-column:2;display:flex;align-items:center;justify-items:center;transform-origin:center}.nme-right-panel #propertyTab .paneContainer .paneContainer-content .header .collapse.closed{transform:rotate(180deg)}.nme-right-panel #propertyTab .paneContainer .paneContainer-content .paneList>div:not(:last-child){border-bottom:.5px solid hsla(0,0%,100%,.1)}.nme-right-panel #propertyTab .paneContainer .paneContainer-content .fragment>div:not(:last-child){border-bottom:.5px solid hsla(0,0%,100%,.1)}.nme-right-panel #propertyTab .color-picker{height:calc(100% - 8px);margin:4px;width:calc(100% - 8px)}.nme-right-panel #propertyTab .color-picker .color-rect{height:calc(100% - 4px);border:2px #fff solid;cursor:pointer;min-height:18px}.nme-right-panel #propertyTab .color-picker .color-picker-cover{position:fixed;top:0px;right:0px;bottom:0px;left:0px;z-index:1}.nme-right-panel #propertyTab .color-picker .color-picker-float{z-index:2;position:absolute}.nme-right-panel #propertyTab .gradient-step{display:grid;grid-template-rows:100%;grid-template-columns:20px 30px 40px auto 20px 30px;padding-top:5px;padding-left:5px;padding-bottom:5px}.nme-right-panel #propertyTab .gradient-step .step{grid-row:1;grid-column:1}.nme-right-panel #propertyTab .gradient-step .color{grid-row:1;grid-column:2;cursor:pointer}.nme-right-panel #propertyTab .gradient-step .step-value{margin-left:5px;grid-row:1;grid-column:3;text-align:right;margin-right:5px}.nme-right-panel #propertyTab .gradient-step .step-slider{grid-row:1;grid-column:4;display:grid;justify-content:stretch;align-content:center;margin-right:-5px;padding-left:12px}.nme-right-panel #propertyTab .gradient-step .step-slider input{width:90%}.nme-right-panel #propertyTab .gradient-step .gradient-copy{grid-row:1;grid-column:5;display:grid;align-content:center;justify-content:center}.nme-right-panel #propertyTab .gradient-step .gradient-copy .img{height:20px;width:20px}.nme-right-panel #propertyTab .gradient-step .gradient-copy .img:hover{cursor:pointer}.nme-right-panel #propertyTab .gradient-step .gradient-delete{grid-row:1;grid-column:6;display:grid;align-content:center;justify-content:center}.nme-right-panel #propertyTab .gradient-step .gradient-delete .img{height:20px;width:20px}.nme-right-panel #propertyTab .gradient-step .gradient-delete .img:hover{cursor:pointer}.nme-right-panel #propertyTab .floatLine{padding-left:5px;height:30px;display:grid;grid-template-columns:1fr 120px}.nme-right-panel #propertyTab .floatLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .floatLine .value{grid-column:2;display:flex;align-items:center}.nme-right-panel #propertyTab .floatLine .value input{width:110px}.nme-right-panel #propertyTab .floatLine .short{grid-column:2;display:flex;align-items:center}.nme-right-panel #propertyTab .floatLine .short input{width:27px}.nme-right-panel #propertyTab .floatLine .short input::-webkit-outer-spin-button,.nme-right-panel #propertyTab .floatLine .short input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.nme-right-panel #propertyTab .floatLine .copy{display:none}.nme-right-panel #propertyTab .vector3Line{padding-left:5px;display:grid}.nme-right-panel #propertyTab .vector3Line .firstLine{display:grid;grid-template-columns:1fr auto 20px;height:30px}.nme-right-panel #propertyTab .vector3Line .firstLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .vector3Line .firstLine .vector{grid-column:2;display:flex;align-items:center;text-align:right;opacity:.8}.nme-right-panel #propertyTab .vector3Line .firstLine .expand{grid-column:3;display:grid;align-items:center;justify-items:center;cursor:pointer}.nme-right-panel #propertyTab .vector3Line .firstLine .copy{display:none}.nme-right-panel #propertyTab .vector3Line .secondLine{display:grid;padding-right:5px;border-left:1px solid #337ab7}.nme-right-panel #propertyTab .vector3Line .secondLine .no-right-margin{margin-right:0}.nme-right-panel #propertyTab .vector3Line .secondLine .numeric{display:grid;grid-template-columns:1fr auto}.nme-right-panel #propertyTab .vector3Line .secondLine .numeric-label{text-align:right;grid-column:1;display:flex;align-items:center;justify-self:right;margin-right:10px}.nme-right-panel #propertyTab .vector3Line .secondLine .numeric-value{width:120px;grid-column:2;display:flex;align-items:center;border:1px solid #337ab7}.nme-right-panel #propertyTab .buttonLine{height:30px;display:grid;align-items:center;justify-items:stretch;padding-bottom:5px}.nme-right-panel #propertyTab .buttonLine.disabled{opacity:.3}.nme-right-panel #propertyTab .buttonLine input[type=file]{display:none}.nme-right-panel #propertyTab .buttonLine .file-upload{background:#222;border:1px solid #337ab7;margin:5px 10px;color:#fff;padding:4px 5px;padding-top:0px;opacity:.9;cursor:pointer;text-align:center}.nme-right-panel #propertyTab .buttonLine .file-upload:hover{opacity:1}.nme-right-panel #propertyTab .buttonLine .file-upload:active{transform:scale(0.98);transform-origin:.5 .5}.nme-right-panel #propertyTab .buttonLine button{background:#222;border:1px solid #337ab7;margin:5px 10px 5px 10px;color:#fff;padding:4px 5px;opacity:.9}.nme-right-panel #propertyTab .buttonLine button:hover{opacity:1}.nme-right-panel #propertyTab .buttonLine button:active{background:#282828}.nme-right-panel #propertyTab .buttonLine button:focus{border:1px solid #337ab7;outline:0px}.nme-right-panel #propertyTab .checkBoxLine{padding-left:5px;height:30px;display:grid;grid-template-columns:1fr auto}.nme-right-panel #propertyTab .checkBoxLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .checkBoxLine .checkBox{grid-column:2;display:flex;align-items:center}.nme-right-panel #propertyTab .checkBoxLine .checkBox .lbl{position:relative;display:block;height:14px;width:34px;margin-right:5px;background:#898989;border-radius:100px;cursor:pointer;transition:all .3s ease}.nme-right-panel #propertyTab .checkBoxLine .checkBox .lbl:after{position:absolute;left:3px;top:2px;display:block;width:10px;height:10px;border-radius:100px;background:#fff;box-shadow:0px 3px 3px rgba(0,0,0,.05);content:"";transition:all .15s ease}.nme-right-panel #propertyTab .checkBoxLine .checkBox .lbl:active:after{transform:scale(1.15, 0.85)}.nme-right-panel #propertyTab .checkBoxLine .checkBox .cbx:checked~label{background:#337ab7}.nme-right-panel #propertyTab .checkBoxLine .checkBox .cbx:checked~label:after{left:20px;background:#164975}.nme-right-panel #propertyTab .checkBoxLine .checkBox .cbx:checked~label.disabled{background:#164975;cursor:pointer}.nme-right-panel #propertyTab .checkBoxLine .checkBox .cbx:checked~label.disabled:after{left:20px;background:#555;cursor:pointer}.nme-right-panel #propertyTab .checkBoxLine .checkBox .cbx~label.disabled{background:#555;cursor:pointer}.nme-right-panel #propertyTab .checkBoxLine .checkBox .hidden{display:none}.nme-right-panel #propertyTab .checkBoxLine .copy{display:none}.nme-right-panel #propertyTab .listLine{padding-left:5px;height:30px;display:grid;grid-template-columns:1fr auto}.nme-right-panel #propertyTab .listLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .listLine .options{grid-column:2;display:flex;align-items:center;margin-right:5px}.nme-right-panel #propertyTab .listLine .options select{width:115px}.nme-right-panel #propertyTab .listLine .copy{display:none}.nme-right-panel #propertyTab .color3Line{padding-left:5px;display:grid}.nme-right-panel #propertyTab .color3Line .firstLine{height:30px;display:grid;grid-template-columns:1fr auto 20px}.nme-right-panel #propertyTab .color3Line .firstLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .color3Line .firstLine .textInputLine{display:none}.nme-right-panel #propertyTab .color3Line .firstLine .color3{grid-column:2;width:50px;display:flex;align-items:center}.nme-right-panel #propertyTab .color3Line .firstLine .color3 input{margin-right:5px}.nme-right-panel #propertyTab .color3Line .firstLine .expand{grid-column:3;display:grid;align-items:center;justify-items:center;cursor:pointer}.nme-right-panel #propertyTab .color3Line .firstLine .copy{grid-column:4;display:grid;align-items:center;justify-items:center;cursor:pointer}.nme-right-panel #propertyTab .color3Line .firstLine .copy img{height:100%}.nme-right-panel #propertyTab .color3Line .secondLine{display:grid;padding-right:5px;border-left:1px solid #337ab7}.nme-right-panel #propertyTab .color3Line .secondLine .numeric{display:grid;grid-template-columns:1fr auto}.nme-right-panel #propertyTab .color3Line .secondLine .numeric-label{text-align:right;grid-column:1;display:flex;align-items:center;justify-self:right;margin-right:10px}.nme-right-panel #propertyTab .color3Line .secondLine .numeric-value{width:120px;grid-column:2;display:flex;align-items:center;border:1px solid #337ab7}.nme-right-panel #propertyTab .textLine{padding-left:5px;height:30px;display:grid;grid-template-columns:1fr auto}.nme-right-panel #propertyTab .textLine .label{grid-column:1;display:flex;align-items:center}.nme-right-panel #propertyTab .textLine .link-value{grid-column:2;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;text-align:end;opacity:.8;margin:5px;margin-top:6px;max-width:140px;text-decoration:underline;cursor:pointer}.nme-right-panel #propertyTab .textLine .value{grid-column:2;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;text-align:end;opacity:.8;margin:5px;margin-top:6px;max-width:200px;user-select:text}.nme-right-panel #propertyTab .textLine .value.check{color:green}.nme-right-panel #propertyTab .textLine .value.uncheck{color:red}',"",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/components/propertyTab/propertyTab.scss"],names:[],mappings:"AACI,8BAEI,UAAA,CACA,eAAA,CAEA,sCACI,WAAA,CACA,cAAA,CACA,UAAA,CACA,eAAA,CACA,UAAA,CACA,iBAAA,CACA,YAAA,CACA,8BAAA,CACA,gBAAA,CAEA,4CACI,iBAAA,CACA,aAAA,CACA,UAAA,CACA,WAAA,CACA,MAAA,CACA,YAAA,CACA,iBAAA,CACA,mBAAA,CAGJ,6CACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,iBAAA,CAIR,qCACI,uBAAA,CACA,WAAA,CACA,UAAA,CACA,kBAAA,CACA,iBAAA,CACA,YAAA,CACA,UAAA,CACA,sBAAA,CAGJ,2CACI,SAAA,CAGJ,2DACI,uBAAA,CACA,eAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,kBAAA,CACA,cAAA,CAGJ,uDACI,UAAA,CACA,WAAA,CACA,iBAAA,CACA,kBAAA,CACA,cAAA,CAGJ,gDACI,uBAAA,CACA,mCAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CAEJ,8EACI,SAAA,CAEJ,sEACI,WAAA,CAGJ,0CACI,gBAlFgB,CAmFhB,WAAA,CACA,YAAA,CACA,uBAAA,CACA,mCAAA,CAEA,iDACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,kDACI,aAAA,CACA,UAAA,CACA,gBAAA,CACA,SAAA,CACA,YAAA,CACA,kBAAA,CAGJ,qDACI,aAAA,CACA,gBAzGY,CA2GZ,4DACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,4DACI,aAAA,CACA,YAAA,CACA,kBAAA,CAEA,kEACI,UAAA,CAGJ,0LAEI,uBAAA,CACA,QAAA,CAIR,2DACI,YAAA,CAIR,gDACI,YAAA,CAIR,6CACI,gBA5IgB,CA6IhB,WAAA,CACA,YAAA,CACA,oCAAA,CAEA,oDACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,oDACI,YAAA,CACA,kBAAA,CACA,aAAA,CAEA,0DACI,sBAAA,CACA,gBAAA,CAKZ,6CACI,gBApKgB,CAqKhB,WAAA,CACA,YAAA,CACA,+BAAA,CAEA,oDACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,sDACI,gBAAA,CACA,gBAAA,CACA,WAAA,CACA,WAAA,CAGJ,oDACI,YAAA,CACA,kBAAA,CACA,aAAA,CAIR,6CACI,cAAA,CACA,YAAA,CACA,uBAAA,CACA,0BAAA,CAEA,uDACI,mCAAA,CAIA,6DACI,yCAAA,CAKI,yFACI,6BAAA,CAMhB,6EACI,UAAA,CACA,aAAA,CACA,SAAA,CACA,oBAAA,CACA,wBAAA,CACA,mBAAA,CAEA,yFACI,SAAA,CAIR,oEACI,UAAA,CACA,aAAA,CAEA,4EACI,YAAA,CACA,8BAAA,CACA,eAAA,CACA,WAAA,CACA,iBAAA,CACA,cAAA,CAEA,mFACI,mCAAA,CACA,gBAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,sFACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,oBAAA,CACA,uBAAA,CAEA,6FACI,wBAAA,CAKZ,mGACI,2CAAA,CAGJ,mGACI,2CAAA,CAKZ,4CACI,uBAAA,CACA,UAAA,CACA,sBAAA,CAEA,wDACI,uBAAA,CACA,qBAAA,CACA,cAAA,CACA,eAAA,CAGJ,gEACI,cAAA,CACA,OAAA,CACA,SAAA,CACA,UAAA,CACA,QAAA,CACA,SAAA,CAGJ,gEACI,SAAA,CACA,iBAAA,CAIR,6CACI,YAAA,CACA,uBAAA,CACA,mDAAA,CACA,eAAA,CACA,gBAAA,CACA,kBAAA,CAEA,mDACI,UAAA,CACA,aAAA,CAGJ,oDACI,UAAA,CACA,aAAA,CACA,cAAA,CAGJ,yDACI,eAAA,CACA,UAAA,CACA,aAAA,CACA,gBAAA,CACA,gBAAA,CAGJ,0DACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,uBAAA,CACA,oBAAA,CACA,iBAAA,CACA,iBAAA,CAEA,gEACI,SAAA,CAIR,4DACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,oBAAA,CACA,sBAAA,CAEA,iEACI,WAAA,CACA,UAAA,CAEJ,uEACI,cAAA,CAGR,8DACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,oBAAA,CACA,sBAAA,CACA,mEACI,WAAA,CACA,UAAA,CAEJ,yEACI,cAAA,CAKZ,yCACI,gBAjXgB,CAkXhB,WAAA,CACA,YAAA,CACA,+BAAA,CAEA,gDACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,gDACI,aAAA,CAEA,YAAA,CACA,kBAAA,CAEA,sDACI,WAAA,CAIR,gDACI,aAAA,CAEA,YAAA,CACA,kBAAA,CAEA,sDACI,UAAA,CAGJ,kKAEI,uBAAA,CACA,QAAA,CAIR,+CACI,YAAA,CAIR,2CACI,gBA9ZgB,CA+ZhB,YAAA,CAEA,sDACI,YAAA,CACA,mCAAA,CACA,WAAA,CAEA,6DACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,8DACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,gBAAA,CACA,UAAA,CAGJ,8DACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,oBAAA,CACA,cAAA,CAGJ,4DACI,YAAA,CAIR,uDACI,YAAA,CACA,iBAAA,CACA,6BAAA,CAEA,wEACI,cAAA,CAGJ,gEACI,YAAA,CACA,8BAAA,CAGJ,sEACI,gBAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,iBAAA,CAGJ,sEACI,WAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CACA,wBAAA,CAKZ,0CACI,WAAA,CACA,YAAA,CACA,kBAAA,CACA,qBAAA,CACA,kBAAA,CAEA,mDACI,UAAA,CAGJ,2DACI,YAAA,CAGJ,uDACI,eAAA,CACA,wBAAA,CACA,eAAA,CACA,UAAA,CACA,eAAA,CACA,eAAA,CACA,UAAA,CACA,cAAA,CACA,iBAAA,CAGJ,6DACI,SAAA,CAGJ,8DACI,qBAAA,CACA,sBAAA,CAGJ,iDACI,eAAA,CACA,wBAAA,CACA,wBAAA,CACA,UAAA,CACA,eAAA,CACA,UAAA,CAGJ,uDACI,SAAA,CAGJ,wDACI,kBAAA,CAGJ,uDACI,wBAAA,CACA,WAAA,CAIR,4CACI,gBA9hBgB,CA+hBhB,WAAA,CACA,YAAA,CACA,8BAAA,CAEA,mDACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,sDACI,aAAA,CAEA,YAAA,CACA,kBAAA,CAEA,2DACI,iBAAA,CACA,aAAA,CACA,WAAA,CACA,UAAA,CACA,gBAAA,CACA,kBAAA,CACA,mBAAA,CACA,cAAA,CACA,uBAAA,CAGJ,iEACI,iBAAA,CACA,QAAA,CACA,OAAA,CACA,aAAA,CACA,UAAA,CACA,WAAA,CACA,mBAAA,CACA,eAAA,CACA,sCAAA,CACA,UAAA,CACA,wBAAA,CAGJ,wEACI,2BAAA,CAGJ,yEACI,kBAAA,CAGJ,+EACI,SAAA,CACA,kBAAA,CAGJ,kFACI,kBAAA,CACA,cAAA,CAGJ,wFACI,SAAA,CACA,eAAA,CACA,cAAA,CAGJ,0EACI,eAAA,CACA,cAAA,CAGJ,8DACI,YAAA,CAIR,kDACI,YAAA,CAIR,wCACI,gBAjnBgB,CAknBhB,WAAA,CACA,YAAA,CACA,8BAAA,CAEA,+CACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,iDACI,aAAA,CAEA,YAAA,CACA,kBAAA,CACA,gBAAA,CAEA,wDACI,WAAA,CAIR,8CACI,YAAA,CAIR,0CACI,gBA9oBgB,CA+oBhB,YAAA,CAEA,qDACI,WAAA,CACA,YAAA,CACA,mCAAA,CAEA,4DACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,oEACI,YAAA,CAGJ,6DACI,aAAA,CACA,UAAA,CAEA,YAAA,CACA,kBAAA,CAEA,mEACI,gBAAA,CAIR,6DACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,oBAAA,CACA,cAAA,CAGJ,2DACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,oBAAA,CACA,cAAA,CACA,+DACI,WAAA,CAKZ,sDACI,YAAA,CACA,iBAAA,CACA,6BAAA,CAEA,+DACI,YAAA,CACA,8BAAA,CAGJ,qEACI,gBAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,iBAAA,CAGJ,qEACI,WAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CACA,wBAAA,CAKZ,wCACI,gBA9tBgB,CA+tBhB,WAAA,CACA,YAAA,CACA,8BAAA,CAEA,+CACI,aAAA,CACA,YAAA,CACA,kBAAA,CAGJ,oDACI,aAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CACA,cAAA,CACA,UAAA,CACA,UAAA,CACA,cAAA,CACA,eAAA,CACA,yBAAA,CACA,cAAA,CAGJ,+CACI,aAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CACA,cAAA,CACA,UAAA,CACA,UAAA,CACA,cAAA,CACA,eAAA,CACA,gBAAA,CAEA,qDACI,WAAA,CAGJ,uDACI,SAAA",sourceRoot:""}]),i.locals={};const s=i},5778:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'#node-editor-graph-root{display:grid;height:100%;width:100%;background:#464646;font:14px "acumin-pro"}#node-editor-graph-root.popup{grid-template-columns:100%;overflow:hidden}#node-editor-graph-root .wait-screen{display:grid;justify-content:center;align-content:center;height:100%;width:100%;background:#464646;opacity:.95;color:#fff;font:24px "acumin-pro";position:absolute;top:0;left:0}#node-editor-graph-root .wait-screen.hidden{visibility:hidden}#node-editor-graph-root .diagram-container{background:#5f5b60;width:100%;height:100%}#node-editor-graph-root .diagram-container .diagram{display:none;width:100%;height:100%}#node-editor-graph-root .nme-right-panel{display:grid;grid-template-rows:1fr 40px auto 40px;grid-template-columns:100%;height:100%;overflow-y:auto}#node-editor-graph-root #propertyTab{grid-row:1;grid-column:1}#node-editor-graph-root .button{display:grid;justify-content:center;align-content:center;height:auto;width:14.2857142857%;cursor:pointer}#node-editor-graph-root .button:hover{background:#337ab7;color:#fff;opacity:.8}#node-editor-graph-root .button.selected{background:#337ab7;color:#fff}#node-editor-graph-root .button.align{justify-content:stretch;text-align:center}#node-editor-graph-root #preview-mesh-bar{grid-row:2;grid-column:1;display:grid;grid-template-columns:auto 1fr 40px 40px 40px;align-items:center;font-size:18px;background-color:#555}#node-editor-graph-root #preview-mesh-bar #file-picker{display:none}#node-editor-graph-root #preview-mesh-bar .listLine{grid-column:1;height:40px;display:grid;grid-template-columns:0px 1fr 0px}#node-editor-graph-root #preview-mesh-bar .listLine .label{grid-column:1;display:flex;align-items:center;font-size:14px}#node-editor-graph-root #preview-mesh-bar .listLine .options{grid-column:2;display:flex;align-items:center;margin-left:5px}#node-editor-graph-root #preview-mesh-bar .listLine .options select{width:115px}#node-editor-graph-root #preview-mesh-bar .button{color:#fff;width:40px;height:40px;transform-origin:50% 50%}#node-editor-graph-root #preview-mesh-bar .button:active{transform:scale(0.9)}#node-editor-graph-root #preview-mesh-bar .button:hover{background:#3f3461}#node-editor-graph-root #preview-mesh-bar .button.selected{background:#9379e6}#node-editor-graph-root #preview-mesh-bar .button img{height:24px;width:24px}#node-editor-graph-root #preview-mesh-bar #play-button{grid-column:3}#node-editor-graph-root #preview-mesh-bar #color-picker-button{grid-column:4;display:grid;grid-template-columns:100%;grid-template-rows:100%}#node-editor-graph-root #preview-mesh-bar #color-picker-button img{height:24px;width:24px}#node-editor-graph-root #preview-mesh-bar #color-picker-button #color-picker-image{padding-left:7px;padding-top:8px}#node-editor-graph-root #preview-mesh-bar #color-picker-button #color-picker{transform:scale(0);grid-column:1;grid-row:1}#node-editor-graph-root #preview-mesh-bar #color-picker-button #color-picker-label{width:100%;background:rgba(0,0,0,0);cursor:pointer}#node-editor-graph-root #preview-mesh-bar #preview-new-window{grid-column:5}#node-editor-graph-root #preview-mesh-bar select{background-color:#a3a3a3;color:#333}#node-editor-graph-root #preview-config-bar{grid-row:4;grid-column:1;display:grid;grid-template-columns:40px 40px 40px 1fr 40px 40px;color:#fff;align-items:center;font-size:18px}#node-editor-graph-root #preview-config-bar.extended{grid-template-columns:1fr}#node-editor-graph-root #preview-config-bar .listLine{padding-left:5px;height:30px;display:grid;grid-template-columns:1fr auto}#node-editor-graph-root #preview-config-bar .listLine .label{grid-column:1;display:flex;align-items:center;font-size:14px}#node-editor-graph-root #preview-config-bar .listLine .options{grid-column:2;display:flex;align-items:center;margin-right:5px}#node-editor-graph-root #preview-config-bar .listLine .options select{width:115px}#node-editor-graph-root #preview-config-bar .listLine .copy{display:none}#node-editor-graph-root #preview-config-bar .button{width:40px;grid-row:1;height:40px;transform-origin:50% 50%}#node-editor-graph-root #preview-config-bar .button:hover{background:#3f3461}#node-editor-graph-root #preview-config-bar .button.selected{background:#9379e6}#node-editor-graph-root #preview-config-bar .button:active{transform:scale(0.9)}#node-editor-graph-root #preview-config-bar .button img{height:auto;width:100%}#node-editor-graph-root #preview-config-bar .button.back-face{grid-column:6}#node-editor-graph-root #preview-config-bar .button.depth-pass{grid-column:5/6}#node-editor-graph-root #preview-config-bar .button.hemispheric-light{grid-column:3/4}#node-editor-graph-root #preview-config-bar .button.direction-light-1{grid-column:2/3}#node-editor-graph-root #preview-config-bar .button.direction-light-0{grid-column:1/2}#node-editor-graph-root #preview{border-top:1px solid #555;grid-row:3;grid-column:1;width:100%;display:grid;grid-template-columns:100%;grid-template-rows:100%;outline:0 !important;padding:0 !important;user-select:none;overflow:hidden}#node-editor-graph-root #preview #preview-canvas{width:100%;aspect-ratio:1/1;outline:0 !important;padding:0 !important;grid-row:1;grid-column:1}#node-editor-graph-root #preview .waitPanel{width:100%;height:100%;grid-row:1;grid-column:1;color:#fff;font-size:18px;align-content:center;justify-content:center;background:rgba(20,20,20,.95);z-index:10;display:grid;transition:opacity 250ms}#node-editor-graph-root #preview .waitPanel.hidden{opacity:0;pointer-events:none}#node-editor-graph-root .blocker{visibility:hidden;position:absolute;width:calc(100% - 40px);height:100%;top:0;left:0;background:rgba(20,20,20,.95);font-family:"acumin-pro";color:#fff;font-size:24px;display:grid;align-content:center;justify-content:center;user-select:none;padding:20px;text-align:center}#node-editor-graph-root #log-console{grid-row:2;grid-column:3}#node-editor-graph-root .LightInformationBlock{width:280px}#node-editor-graph-root .InputBlock{width:250px}',"",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/main.scss"],names:[],mappings:"AAAA,wBACI,YAAA,CACA,WAAA,CACA,UAAA,CACA,kBAAA,CACA,sBAAA,CAEA,8BACI,0BAAA,CACA,eAAA,CAGJ,qCACI,YAAA,CACA,sBAAA,CACA,oBAAA,CACA,WAAA,CACA,UAAA,CACA,kBAAA,CACA,WAAA,CACA,UAAA,CACA,sBAAA,CACA,iBAAA,CACA,KAAA,CACA,MAAA,CAEA,4CACI,iBAAA,CAIR,2CACI,kBAAA,CACA,UAAA,CACA,WAAA,CAEA,oDACI,YAAA,CACA,UAAA,CACA,WAAA,CAIR,yCACI,YAAA,CACA,qCAAA,CACA,0BAAA,CACA,WAAA,CACA,eAAA,CAGJ,qCACI,UAAA,CACA,aAAA,CAGJ,gCACI,YAAA,CACA,sBAAA,CACA,oBAAA,CACA,WAAA,CACA,oBAAA,CACA,cAAA,CAEA,sCACI,kBAAA,CACA,UAAA,CACA,UAAA,CAGJ,yCACI,kBAAA,CACA,UAAA,CAGJ,sCACI,uBAAA,CACA,iBAAA,CAIR,0CACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,6CAAA,CACA,kBAAA,CACA,cAAA,CACA,qBAAA,CAEA,uDACI,YAAA,CAGJ,oDACI,aAAA,CACA,WAAA,CACA,YAAA,CACA,iCAAA,CAEA,2DACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,cAAA,CAGJ,6DACI,aAAA,CAEA,YAAA,CACA,kBAAA,CACA,eAAA,CAEA,oEACI,WAAA,CAKZ,kDACI,UAAA,CACA,UAAA,CACA,WAAA,CACA,wBAAA,CAEA,yDACI,oBAAA,CAGJ,wDACI,kBAAA,CAGJ,2DACI,kBAAA,CAGJ,sDACI,WAAA,CACA,UAAA,CAIR,uDACI,aAAA,CAGJ,+DACI,aAAA,CACA,YAAA,CACA,0BAAA,CACA,uBAAA,CAEA,mEACI,WAAA,CACA,UAAA,CAEJ,mFACI,gBAAA,CACA,eAAA,CAGJ,6EACI,kBAAA,CACA,aAAA,CACA,UAAA,CAGJ,mFACI,UAAA,CACA,wBAAA,CACA,cAAA,CAIR,8DACI,aAAA,CAGJ,iDACI,wBAAA,CACA,UAAA,CAIR,4CACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,kDAAA,CACA,UAAA,CACA,kBAAA,CACA,cAAA,CAEA,qDACI,yBAAA,CAGJ,sDACI,gBAAA,CACA,WAAA,CACA,YAAA,CACA,8BAAA,CAEA,6DACI,aAAA,CACA,YAAA,CACA,kBAAA,CACA,cAAA,CAGJ,+DACI,aAAA,CAEA,YAAA,CACA,kBAAA,CACA,gBAAA,CAEA,sEACI,WAAA,CAIR,4DACI,YAAA,CAIR,oDACI,UAAA,CACA,UAAA,CACA,WAAA,CACA,wBAAA,CAEA,0DACI,kBAAA,CAGJ,6DACI,kBAAA,CAGJ,2DACI,oBAAA,CAGJ,wDACI,WAAA,CACA,UAAA,CAGJ,8DACI,aAAA,CAGJ,+DACI,eAAA,CAGJ,sEACI,eAAA,CAEJ,sEACI,eAAA,CAEJ,sEACI,eAAA,CAKZ,iCACI,yBAAA,CACA,UAAA,CACA,aAAA,CACA,UAAA,CACA,YAAA,CACA,0BAAA,CACA,uBAAA,CACA,oBAAA,CACA,oBAAA,CACA,gBAAA,CACA,eAAA,CAEA,iDACI,UAAA,CACA,gBAAA,CACA,oBAAA,CACA,oBAAA,CACA,UAAA,CACA,aAAA,CAGJ,4CACI,UAAA,CACA,WAAA,CACA,UAAA,CACA,aAAA,CACA,UAAA,CACA,cAAA,CACA,oBAAA,CACA,sBAAA,CACA,6BAAA,CACA,UAAA,CACA,YAAA,CACA,wBAAA,CAEA,mDACI,SAAA,CACA,mBAAA,CAKZ,iCACI,iBAAA,CACA,iBAAA,CACA,uBAAA,CACA,WAAA,CACA,KAAA,CACA,MAAA,CAEA,6BAAA,CACA,wBAAA,CACA,UAAA,CACA,cAAA,CAEA,YAAA,CACA,oBAAA,CACA,sBAAA,CAEA,gBAAA,CAEA,YAAA,CACA,iBAAA,CAGJ,qCACI,UAAA,CACA,aAAA,CAGJ,+CACI,WAAA,CAGJ,oCACI,WAAA",sourceRoot:""}]),i.locals={};const s=i},5779:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'.np7Y0MkHTIwcSHUGIIMx{position:absolute;width:100%;height:100%;background:rgba(.1,.1,.1,.6);display:grid;font-family:"acumin-pro";top:0}.np7Y0MkHTIwcSHUGIIMx .EX4YG00dguWCkO8K4BGA{align-self:center;justify-self:center;min-height:140px;max-width:400px;border-radius:10px;background:#fff;padding:10px;display:grid;grid-template-columns:100%;grid-template-rows:1fr 50px}.np7Y0MkHTIwcSHUGIIMx .EX4YG00dguWCkO8K4BGA .CScU0XzmVIJiSJZPuZ0n{grid-row:1;grid-column:1;margin-top:20px;padding:10px;font-size:18px;color:#000}.np7Y0MkHTIwcSHUGIIMx .EX4YG00dguWCkO8K4BGA .x1oa1806M24Am9GoCmnw{grid-row:2;grid-column:1;display:grid;grid-template-rows:100%;grid-template-columns:100%;color:#fff}.np7Y0MkHTIwcSHUGIIMx .EX4YG00dguWCkO8K4BGA .x1oa1806M24Am9GoCmnw .DY4D4PjfxnzHWsMdzE9g{cursor:pointer;justify-self:center;background:green;min-width:80px;justify-content:center;display:grid;align-content:center;align-self:center;height:35px;border-radius:10px}.np7Y0MkHTIwcSHUGIIMx .EX4YG00dguWCkO8K4BGA .x1oa1806M24Am9GoCmnw .DY4D4PjfxnzHWsMdzE9g:hover{opacity:.8}.np7Y0MkHTIwcSHUGIIMx .EX4YG00dguWCkO8K4BGA .x1oa1806M24Am9GoCmnw .DY4D4PjfxnzHWsMdzE9g.CB6qM9GpeI7TwYdoxBCD{background:red}',"",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/components/MessageDialog.module.scss"],names:[],mappings:"AAAA,sBACI,iBAAA,CACA,UAAA,CACA,WAAA,CACA,4BAAA,CACA,YAAA,CACA,wBAAA,CACA,KAAA,CAEA,4CACI,iBAAA,CACA,mBAAA,CACA,gBAAA,CACA,eAAA,CACA,kBAAA,CACA,eAAA,CACA,YAAA,CAEA,YAAA,CACA,0BAAA,CACA,2BAAA,CAEA,kEACI,UAAA,CACA,aAAA,CACA,eAAA,CACA,YAAA,CACA,cAAA,CACA,UAAA,CAGJ,kEACI,UAAA,CACA,aAAA,CACA,YAAA,CACA,uBAAA,CACA,0BAAA,CACA,UAAA,CAEA,wFACI,cAAA,CACA,mBAAA,CACA,gBAAA,CACA,cAAA,CACA,sBAAA,CACA,YAAA,CACA,oBAAA,CACA,iBAAA,CACA,WAAA,CACA,kBAAA,CAEA,8FACI,UAAA,CAGJ,6GACI,cAAA",sourceRoot:""}]),i.locals={"dialog-container":"np7Y0MkHTIwcSHUGIIMx",dialog:"EX4YG00dguWCkO8K4BGA","dialog-message":"CScU0XzmVIJiSJZPuZ0n","dialog-buttons":"x1oa1806M24Am9GoCmnw","dialog-button-ok":"DY4D4PjfxnzHWsMdzE9g",error:"CB6qM9GpeI7TwYdoxBCD"};const s=i},1910:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".DCCviBxuO92A1Tfci3j7{display:none !important}.vdEKEhXs6SEHqNvzhU8Y{border-radius:20px;width:20px;height:20px;align-self:center;display:grid;grid-template-columns:100%;grid-template-rows:100%}.vdEKEhXs6SEHqNvzhU8Y .qGTG6iVaNUW7ka7n1ZmU{width:100%}.vdEKEhXs6SEHqNvzhU8Y:hover,.vdEKEhXs6SEHqNvzhU8Y.rNQFVkgchnk5QXFNBiMs{filter:brightness(2)}.x3rAB8O3DRuHq9a6G43S{height:24px;display:grid;grid-template-rows:100%}.bU84U039Du9w8E_kyWU_{align-items:center}.N9NaZ5KlHxp1s7I48pjQ{margin-top:5px;grid-row:3;grid-column:1}.N9NaZ5KlHxp1s7I48pjQ .x3rAB8O3DRuHq9a6G43S{grid-template-columns:12px calc(100% - 15px)}.N9NaZ5KlHxp1s7I48pjQ .x3rAB8O3DRuHq9a6G43S .bU84U039Du9w8E_kyWU_{grid-row:1;grid-column:2}.N9NaZ5KlHxp1s7I48pjQ .x3rAB8O3DRuHq9a6G43S .vdEKEhXs6SEHqNvzhU8Y{grid-row:1;grid-column:1;transform:translateX(-12px)}.N9NaZ5KlHxp1s7I48pjQ.EvEilsxNQe_mTsSar6Sa{grid-row:1}.SbfDvflOnTqdcPV8B2wD{margin-top:5px;grid-row:1;grid-column:2}.SbfDvflOnTqdcPV8B2wD .x3rAB8O3DRuHq9a6G43S{grid-template-columns:calc(100% - 10px) 12px}.SbfDvflOnTqdcPV8B2wD .x3rAB8O3DRuHq9a6G43S .bU84U039Du9w8E_kyWU_{grid-row:1;grid-column:1;text-align:right}.SbfDvflOnTqdcPV8B2wD .x3rAB8O3DRuHq9a6G43S .vdEKEhXs6SEHqNvzhU8Y{grid-row:1;grid-column:2;transform:translateX(2px)}.b27R0gxgM9Br4k07OEU4{position:absolute;background:rgba(72,72,72,.7);display:grid;grid-template-rows:40px calc(100% - 40px);grid-template-columns:100%;box-sizing:border-box}","",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/common.module.scss"],names:[],mappings:"AAAA,sBACI,uBAAA,CAGJ,sBACI,kBAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,YAAA,CACA,0BAAA,CACA,uBAAA,CAEA,4CACI,UAAA,CAGJ,uEAEI,oBAAA,CAIR,sBACI,WAAA,CACA,YAAA,CACA,uBAAA,CAGJ,sBACI,kBAAA,CAGJ,sBACI,cAAA,CACA,UAAA,CACA,aAAA,CAEA,4CACI,4CAAA,CAEA,kEACI,UAAA,CACA,aAAA,CAGJ,kEACI,UAAA,CACA,aAAA,CACA,2BAAA,CAIR,2CACI,UAAA,CAIR,sBACI,cAAA,CACA,UAAA,CACA,aAAA,CAEA,4CACI,4CAAA,CAEA,kEACI,UAAA,CACA,aAAA,CACA,gBAAA,CAGJ,kEACI,UAAA,CACA,aAAA,CACA,yBAAA,CAKZ,sBACI,iBAAA,CACA,4BAAA,CACA,YAAA,CACA,yCAAA,CACA,0BAAA,CACA,qBAAA",sourceRoot:""}]),i.locals={hidden:"DCCviBxuO92A1Tfci3j7",port:"vdEKEhXs6SEHqNvzhU8Y",img:"qGTG6iVaNUW7ka7n1ZmU",selected:"rNQFVkgchnk5QXFNBiMs",portLine:"x3rAB8O3DRuHq9a6G43S","port-label":"bU84U039Du9w8E_kyWU_",inputsContainer:"N9NaZ5KlHxp1s7I48pjQ",inputsContainerUp:"EvEilsxNQe_mTsSar6Sa",outputsContainer:"SbfDvflOnTqdcPV8B2wD","frame-box":"b27R0gxgM9Br4k07OEU4"};const s=i},8259:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'.f15KU6GlYM7oVHpbFhIn{width:100%;height:100%;margin:0;padding:0;font:14px "acumin-pro";user-select:none;overflow:hidden;cursor:move;position:relative;background-image:linear-gradient(to right, #4f4e4f 1px, transparent 1px),linear-gradient(to bottom, #4f4e4f 1px, transparent 1px)}.iJdBcuGEcr85ce7seMOQ{width:100%;height:100%;left:0;top:0;transform-origin:left top;display:grid;grid-template-rows:100%;grid-template-columns:100%}.z2gALX67aRzo75j2uyoQ{overflow:visible;grid-row:1;grid-column:1;position:relative;width:100%;height:100%}.QfmhbpA1CyiudWm52O2f{grid-row:1;grid-column:1;position:relative;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:2;filter:drop-shadow(7px 6px 2px rgba(0, 0, 0, 0.2))}.zJUCneE7k31yaOjWTBle{grid-row:1;grid-column:1;position:relative;width:100%;height:100%}.MWjDs2Qen1BNXZ0_N1v6{pointer-events:none}.uHfT3vSepb1Ka_re9veF{z-index:10;position:absolute;background:rgba(72,72,196,.5);border:blue solid 2px}',"",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/graphCanvas.module.scss"],names:[],mappings:"AAAA,sBACI,UAAA,CACA,WAAA,CACA,QAAA,CACA,SAAA,CACA,sBAAA,CACA,gBAAA,CACA,eAAA,CACA,WAAA,CACA,iBAAA,CACA,iIAAA,CAGJ,sBACI,UAAA,CACA,WAAA,CACA,MAAA,CACA,KAAA,CACA,yBAAA,CACA,YAAA,CACA,uBAAA,CACA,0BAAA,CAGJ,sBACI,gBAAA,CACA,UAAA,CACA,aAAA,CACA,iBAAA,CACA,UAAA,CACA,WAAA,CAGJ,sBACI,UAAA,CACA,aAAA,CACA,iBAAA,CACA,UAAA,CACA,WAAA,CACA,gBAAA,CACA,mBAAA,CACA,SAAA,CACA,kDAAA,CAGJ,sBACI,UAAA,CACA,aAAA,CACA,iBAAA,CACA,UAAA,CACA,WAAA,CAGJ,sBACI,mBAAA,CAGJ,sBACI,UAAA,CACA,iBAAA,CACA,6BAAA,CACA,qBAAA",sourceRoot:""}]),i.locals={"graph-canvas":"f15KU6GlYM7oVHpbFhIn","graph-container":"iJdBcuGEcr85ce7seMOQ","frame-container":"z2gALX67aRzo75j2uyoQ","graph-svg-container":"QfmhbpA1CyiudWm52O2f","graph-canvas-container":"zJUCneE7k31yaOjWTBle","selection-container":"MWjDs2Qen1BNXZ0_N1v6","selection-box":"uHfT3vSepb1Ka_re9veF"};const s=i},9750:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'.QoJwIsfQyC0kdP7U_VnQ{margin-top:6px;margin-bottom:6px;margin-left:4px;margin-right:4px;color:#fff;grid-row:2;grid-column:1;display:grid;grid-template-rows:100%;grid-template-columns:50% 50%;z-index:2}.bzZc2YPOE1DPrzZgVc4L{grid-row:1/span 2;grid-column:1;width:100%;height:100%;border:rgba(0,0,0,0) solid 4px;pointer-events:none;box-sizing:border-box}.dIcBAKOArBPqC6n4eyH_{display:grid;grid-row:2;grid-column:1;padding:0 10px;font-style:italic;word-wrap:break-word}.JC61QJRJjq8G0D0QBhax.bzZc2YPOE1DPrzZgVc4L{border-color:#fff}.clP6tuMZfzf3H7Nngqp_{grid-row:1;grid-column:1;background:#484848;color:#fff;text-align:center;display:grid;grid-template-rows:100%;grid-template-columns:calc(100% - 111px) 30px 7px 30px 7px 30px 7px;align-content:center;overflow:hidden}.ewDwmFa_ErkkADqFP2lg{cursor:pointer;align-self:center;transform-origin:50% 50%;transform:scale(1);stroke:rgba(0,0,0,0);fill:#fff;display:grid}.ewDwmFa_ErkkADqFP2lg.w8xt0lDJnPhzq2jLJtgy{transform:scale(0.9)}.Kk9jMJN5qywSLevvtqz_{grid-column:2;grid-row:1}.HYAx3ANgEbpyz741PkdZ{grid-column:4;grid-row:1}.WBWgH3wPXsBF2O91Iaci{grid-column:6;grid-row:1}._69WZBjkiJxdtuFb1pAE{grid-column:1;grid-row:1;display:grid;height:100%;width:100%;align-self:stretch;align-items:center;margin-top:-2px}.oZHCuoVA2AakTjNKtUxB{grid-area:1/2/3/2;width:4px;background-color:rgba(0,0,0,0);cursor:ew-resize}.oZHCuoVA2AakTjNKtUxB::after{content:"";width:8px;position:absolute;top:0;bottom:0;margin-left:-4px;cursor:ew-resize}.fo2Lv1odIvKW1ilzVuaO{background-color:rgba(0,0,0,0);height:4px;z-index:21;cursor:ne-resize;width:4px;margin-left:-6px}.fo2Lv1odIvKW1ilzVuaO::after{background-color:rgba(0,0,0,0);cursor:ne-resize;margin-left:unset;top:-4px;height:10px;width:10px}.Z25mo7mWZgEcsITq7Bcw{background-color:rgba(0,0,0,0);height:0px;z-index:21;cursor:nw-resize;grid-area:4/2/4/2;margin-left:-2px}.Z25mo7mWZgEcsITq7Bcw::after{background-color:rgba(0,0,0,0);height:10px;cursor:nw-resize;top:unset;bottom:-4px;width:10px}.E3f3RYfFpIW_ECBTuVRs{grid-area:1/1/3/1;width:4px;background-color:rgba(0,0,0,0);cursor:ew-resize}.E3f3RYfFpIW_ECBTuVRs::before{content:"";width:8px;position:absolute;top:0;bottom:0;margin-left:-4px}.WUrIw7WpKJWt4dcfFUT7{background-color:rgba(0,0,0,0);height:4px;z-index:21;cursor:nw-resize;width:4px;margin-left:-4px}.WUrIw7WpKJWt4dcfFUT7::before{background-color:rgba(0,0,0,0);cursor:nw-resize;margin-left:unset;top:-4px;height:10px;width:10px}.ofgQ4CHxlraUl1eYTCjX{background-color:rgba(0,0,0,0);height:0px;z-index:21;cursor:sw-resize;grid-area:4/1/4/1}.ofgQ4CHxlraUl1eYTCjX::before{background-color:rgba(0,0,0,0);height:10px;cursor:sw-resize;top:unset;bottom:-4px;width:10px}.kOtXE8uCgJhCA6O0G3R9{grid-area:1/1/1/1;background-color:rgba(0,0,0,0);height:4px;cursor:ns-resize}.kOtXE8uCgJhCA6O0G3R9::before{content:"";width:100%;position:absolute;top:-4px;bottom:100%;right:0;left:0;margin-bottom:-8px;cursor:ns-resize;height:8px}.N53X5Lr9NcSoKmY1filg{grid-area:3/1/3/1;background-color:rgba(0,0,0,0);height:4px;cursor:ns-resize}.N53X5Lr9NcSoKmY1filg::after{content:"";width:100%;position:absolute;top:100%;bottom:0;right:0;left:0;margin-top:-8px;cursor:ns-resize;height:12px}.tYlra2jox7Cj_8QALbbu{font-size:24px}.MjKBEwLXfmQhAZUfXxWR{height:auto !important;width:200px !important;z-index:3;font-size:16px}.j4CGcgBxBAJFPsSG4ZFn{grid-template-columns:calc(100% - 37px) 30px 7px}',"",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/graphFrame.module.scss"],names:[],mappings:"AAAA,sBACI,cAAA,CACA,iBAAA,CACA,eAAA,CACA,gBAAA,CACA,UAAA,CACA,UAAA,CACA,aAAA,CACA,YAAA,CACA,uBAAA,CACA,6BAAA,CACA,SAAA,CAGJ,sBACI,iBAAA,CACA,aAAA,CACA,UAAA,CACA,WAAA,CACA,8BAAA,CACA,mBAAA,CACA,qBAAA,CAGJ,sBACI,YAAA,CACA,UAAA,CACA,aAAA,CACA,cAAA,CACA,iBAAA,CACA,oBAAA,CAGJ,2CACI,iBAAA,CAGJ,sBACI,UAAA,CACA,aAAA,CACA,kBAAA,CACA,UAAA,CACA,iBAAA,CACA,YAAA,CACA,uBAAA,CACA,mEAAA,CACA,oBAAA,CACA,eAAA,CAGJ,sBACI,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,kBAAA,CACA,oBAAA,CACA,SAAA,CACA,YAAA,CAEA,2CACI,oBAAA,CAIR,sBACI,aAAA,CACA,UAAA,CAGJ,sBACI,aAAA,CACA,UAAA,CAGJ,sBACI,aAAA,CACA,UAAA,CAGJ,sBACI,aAAA,CACA,UAAA,CACA,YAAA,CACA,WAAA,CACA,UAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CAGJ,sBACI,iBAAA,CACA,SAAA,CACA,8BAAA,CACA,gBAAA,CAEA,6BACI,UAAA,CACA,SAAA,CACA,iBAAA,CACA,KAAA,CACA,QAAA,CACA,gBAAA,CACA,gBAAA,CAIR,sBACI,8BAAA,CACA,UAAA,CACA,UAAA,CACA,gBAAA,CACA,SAAA,CACA,gBAAA,CAEA,6BACI,8BAAA,CACA,gBAAA,CACA,iBAAA,CACA,QAAA,CACA,WAAA,CACA,UAAA,CAIR,sBACI,8BAAA,CACA,UAAA,CACA,UAAA,CACA,gBAAA,CACA,iBAAA,CACA,gBAAA,CAEA,6BACI,8BAAA,CACA,WAAA,CACA,gBAAA,CACA,SAAA,CACA,WAAA,CACA,UAAA,CAIR,sBACI,iBAAA,CACA,SAAA,CACA,8BAAA,CACA,gBAAA,CAEA,8BACI,UAAA,CACA,SAAA,CACA,iBAAA,CACA,KAAA,CACA,QAAA,CACA,gBAAA,CAIR,sBACI,8BAAA,CACA,UAAA,CACA,UAAA,CACA,gBAAA,CACA,SAAA,CACA,gBAAA,CAEA,8BACI,8BAAA,CACA,gBAAA,CACA,iBAAA,CACA,QAAA,CACA,WAAA,CACA,UAAA,CAIR,sBACI,8BAAA,CACA,UAAA,CACA,UAAA,CACA,gBAAA,CACA,iBAAA,CAEA,8BACI,8BAAA,CACA,WAAA,CACA,gBAAA,CACA,SAAA,CACA,WAAA,CACA,UAAA,CAIR,sBACI,iBAAA,CACA,8BAAA,CACA,UAAA,CACA,gBAAA,CAEA,8BACI,UAAA,CACA,UAAA,CACA,iBAAA,CACA,QAAA,CACA,WAAA,CACA,OAAA,CACA,MAAA,CACA,kBAAA,CACA,gBAAA,CACA,UAAA,CAIR,sBACI,iBAAA,CACA,8BAAA,CACA,UAAA,CACA,gBAAA,CAEA,6BACI,UAAA,CACA,UAAA,CACA,iBAAA,CACA,QAAA,CACA,QAAA,CACA,OAAA,CACA,MAAA,CACA,eAAA,CACA,gBAAA,CACA,WAAA,CAIR,sBACI,cAAA,CAGJ,sBACI,sBAAA,CACA,sBAAA,CACA,SAAA,CACA,cAAA,CAGJ,sBACI,gDAAA",sourceRoot:""}]),i.locals={"port-container":"QoJwIsfQyC0kdP7U_VnQ","frame-box-border":"bzZc2YPOE1DPrzZgVc4L","frame-comments":"dIcBAKOArBPqC6n4eyH_",selected:"JC61QJRJjq8G0D0QBhax","frame-box-header":"clP6tuMZfzf3H7Nngqp_","frame-box-header-button":"ewDwmFa_ErkkADqFP2lg",down:"w8xt0lDJnPhzq2jLJtgy","frame-box-header-collapse":"Kk9jMJN5qywSLevvtqz_","frame-box-header-focus":"HYAx3ANgEbpyz741PkdZ","frame-box-header-close":"WBWgH3wPXsBF2O91Iaci","frame-box-header-title":"_69WZBjkiJxdtuFb1pAE","right-handle":"oZHCuoVA2AakTjNKtUxB","top-right-corner-handle":"fo2Lv1odIvKW1ilzVuaO","bottom-right-corner-handle":"Z25mo7mWZgEcsITq7Bcw","left-handle":"E3f3RYfFpIW_ECBTuVRs","top-left-corner-handle":"WUrIw7WpKJWt4dcfFUT7","bottom-left-corner-handle":"ofgQ4CHxlraUl1eYTCjX","top-handle":"kOtXE8uCgJhCA6O0G3R9","bottom-handle":"N53X5Lr9NcSoKmY1filg",expanded:"tYlra2jox7Cj_8QALbbu",collapsed:"MjKBEwLXfmQhAZUfXxWR",collapsedHeader:"j4CGcgBxBAJFPsSG4ZFn"};const s=i},9319:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,'.Bobo_GNuSSK3wj98J_7K{z-index:4;width:200px;position:absolute;left:0;top:0;background:gray;border:4px solid #000;border-radius:12px;display:grid;grid-template-rows:30px auto;grid-template-columns:100%;color:#fff;box-shadow:7px 6px 2px rgba(0,0,0,.2)}.VaVKfF7ZluDOZqCWrTss{z-index:5000}.tVnxKGh92qhrNS8ZrLSk{animation:VbXDgohRDHdjqNHZzzNa .5s infinite alternate}@keyframes VbXDgohRDHdjqNHZzzNa{to{border-color:#fff}}.wyuUlbj377MNT1UhvTmA{grid-row:1;grid-column:1;position:relative;border:4px solid #000;border-top-right-radius:7px;border-top-left-radius:7px;background:#000;color:#fff;transform:scaleX(1.01) translateY(-0.5px);transform-origin:center;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:100%}.BmhtBDkDfI85nbM4NxMW{z-index:10;align-self:center;user-select:none;display:grid;transform:translateY(1px);grid-row:1;grid-column:3}.OE7iNY9W9C5xaXmb4fJq{grid-row:1;grid-column:1;z-index:10;align-self:center;user-select:none;display:grid;cursor:pointer;color:#fff;font-weight:bold;font-size:16px;justify-content:center;width:20px;transform:rotate(0deg);transition:transform .2s;transform-origin:center}.Z9lpI06OUpToOdoscgAP{transform:rotate(-90deg)}.f_UcygzCMLv89LeqZSEy{grid-row:1;grid-column:2;font-size:16px;text-align:center;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;transform:translateY(-2px)}.kJbPorwpWbIl6Q7awkHo{grid-row:2;grid-column:1;display:grid;grid-template-columns:50% 50%;grid-template-rows:auto auto auto;transform:scale(1)}.RfWrHWBOKiuZXNcSUHZe{min-height:20px;grid-row:3;grid-column:1}.SgS8_RcQjdLxnu1nPvOp{position:absolute;top:-50px;width:200px;height:45px;overflow:hidden;font-style:italic;opacity:.8;display:grid;align-items:flex-end;pointer-events:none}.Cbl6uixgEd9Qw0tPi9mf{position:absolute;bottom:1px;width:195px;height:20px;overflow:hidden;font-size:11px;opacity:.5;display:grid;align-items:flex-end;justify-content:end;pointer-events:none;z-index:-1}.wm6PpDz796f_yehTb9kV{border-color:#fff !important}.GbpJUHoTKcYsbWRTctwV{grid-row:2;grid-column:1/3}.LLYUI2tB03_XrFiwqTTI{height:20px;display:flex;margin-left:4px;cursor:default;width:fit-content}.LLYUI2tB03_XrFiwqTTI input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:2px;border:rgba(0,0,0,0);background-color:#000;opacity:.5;position:relative}.LLYUI2tB03_XrFiwqTTI input[type=checkbox]:checked{background-color:#337ab7;opacity:1}.LLYUI2tB03_XrFiwqTTI input[type=checkbox]:checked::after{content:"✓";color:#fff;font-weight:bold;font-size:12px;position:relative;left:3px;top:-1px}.LLYUI2tB03_XrFiwqTTI label{word-wrap:break-word;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;transform:translateY(-1px)}.ELAsOakhMS22t6DYhtTL{display:grid;margin-top:5px;margin-bottom:5px;height:20px;cursor:default}.ELAsOakhMS22t6DYhtTL input[type=number]{grid-row:1;grid-column:1;-moz-appearance:textfield;margin-left:5px;margin-right:5px;transform:translateY(2px);border:0px;opacity:.9;color:#fff;border:0px;border-radius:2px;background-color:rgba(0,0,0,.5);padding-left:5px;z-index:1;text-align:end;padding-right:5px;cursor:col-resize}.ELAsOakhMS22t6DYhtTL input[type=number]::-webkit-outer-spin-button,.ELAsOakhMS22t6DYhtTL input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ELAsOakhMS22t6DYhtTL input[type=number]:hover{background-color:rgba(0,0,0,.2)}.ELAsOakhMS22t6DYhtTL input[type=number]:focus{outline:0px;box-shadow:2px 2px 2px rgba(0,0,0,.1);background-color:rgba(0,0,0,.8);opacity:1}.ELAsOakhMS22t6DYhtTL input[type=number]:focus+div{display:none}.ELAsOakhMS22t6DYhtTL div{grid-row:1;grid-column:1;z-index:2;align-self:center;justify-self:left;margin-left:15px;font-size:12px;font-weight:100}.sIwqD3_gaJsyql1dMo6T{margin-top:3px;height:20px;display:grid;margin-bottom:3px;cursor:default}.sQ96j8FSxarhbG1A8PUC{grid-row:1;grid-column:1;position:relative;margin-left:10px;margin-right:10px;border:1px solid rgba(0,0,0,.2);border-radius:2px;background-color:rgba(0,0,0,.5);opacity:.9;cursor:pointer;text-align:center}.sQ96j8FSxarhbG1A8PUC:hover{background-color:rgba(0,0,0,.2)}.sQ96j8FSxarhbG1A8PUC:focus{outline:0px;opacity:1}.ilzwnbRpnSkUQLp_Nvdq{color:#fff;pointer-events:none;background:rgba(0,0,0,0);transform:translateY(-1px)}.JTNKfVBFeStDDavIFnzv{border-radius:4px 4px 0 0;border-color:rgba(0,0,0,0);background-color:rgba(0,0,0,.2);opacity:1}.fP8a0RIFmOCLEVr5UFij{border-radius:0 0 4px 4px;overflow:auto;padding:0;padding-top:5px;padding-bottom:5px;transform:translateX(-1px);top:20px;width:100%;list-style:none;margin:0;position:absolute;border:0;z-index:100000;background-color:#333;border:1px solid #333;max-height:200px}.fP8a0RIFmOCLEVr5UFij::-webkit-scrollbar{width:6px;height:6px}.fP8a0RIFmOCLEVr5UFij::-webkit-scrollbar-track{border-radius:10px;background:rgba(0,0,0,.1)}.fP8a0RIFmOCLEVr5UFij::-webkit-scrollbar-thumb{border-radius:10px;background:rgba(0,0,0,.2)}.fP8a0RIFmOCLEVr5UFij::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.4)}.fP8a0RIFmOCLEVr5UFij::-webkit-scrollbar-thumb:active{background:rgba(0,0,0,.9)}.iN8VxGmf0YCxoYeMiho9{opacity:.8;height:22px;font-size:14px;margin-left:5px;margin-right:5px;border-radius:4px;cursor:pointer}.iN8VxGmf0YCxoYeMiho9:hover{background-color:rgba(0,0,0,.2)}.yWsLj4mFQyCZzcdaHovv{display:grid;padding-top:5px;padding-bottom:5px}.yWsLj4mFQyCZzcdaHovv input[type=range]{grid-row:1;grid-column:1;-webkit-appearance:none;margin:0;margin-left:5px;margin-right:5px;transform:translateY(2px);border-radius:2px;border:0px;opacity:.5;overflow:hidden;background-color:#000}.yWsLj4mFQyCZzcdaHovv input[type=range]:hover{outline:0px;opacity:.8}.yWsLj4mFQyCZzcdaHovv input[type=range]::-webkit-slider-runnable-track{height:5px;-webkit-appearance:none;margin-top:-1px;border:0}.yWsLj4mFQyCZzcdaHovv input[type=range]::-webkit-slider-thumb{width:.01px;-webkit-appearance:none;height:.01px;cursor:ew-resize;background:#000;border:0;box-shadow:-100px 0 0 100px #337ab7;opacity:.8;z-index:1}.yWsLj4mFQyCZzcdaHovv label{grid-row:1;grid-column:1;margin-left:10px;word-wrap:break-word;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;z-index:2;pointer-events:none;font-weight:100}.yWsLj4mFQyCZzcdaHovv div{grid-row:1;grid-column:1;z-index:2;pointer-events:none;font-size:12px;align-self:center;justify-self:end;margin-right:10px}',"",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/graphNode.module.scss"],names:[],mappings:"AAAA,sBAAA,SACI,CAAA,WACA,CAAA,iBACA,CAAA,MACA,CAAA,KACA,CAAA,eACA,CAAA,qBACA,CAAA,kBACA,CAAA,YACA,CAAA,4BACA,CAAA,0BACA,CAAA,UACA,CAAA,qCACA,CAAA,sBAGJ,YACI,CAAA,sBAGJ,qDACI,CAAA,gCACA,GACI,iBACI,CAAA,CAAA,sBAKZ,UACI,CAAA,aACA,CAAA,iBACA,CAAA,qBACA,CAAA,2BACA,CAAA,0BACA,CAAA,eACA,CAAA,UACA,CAAA,yCACA,CAAA,uBACA,CAAA,YACA,CAAA,mCACA,CAAA,uBACA,CAAA,sBAGJ,UACI,CAAA,iBACA,CAAA,gBACA,CAAA,YACA,CAAA,yBACA,CAAA,UACA,CAAA,aACA,CAAA,sBAGJ,UACI,CAAA,aACA,CAAA,UACA,CAAA,iBACA,CAAA,gBACA,CAAA,YACA,CAAA,cACA,CAAA,UACA,CAAA,gBACA,CAAA,cACA,CAAA,sBACA,CAAA,UACA,CAAA,sBACA,CAAA,wBACA,CAAA,uBACA,CAAA,sBAGJ,wBACI,CAAA,sBAGJ,UACI,CAAA,aACA,CAAA,cACA,CAAA,iBACA,CAAA,kBACA,CAAA,sBACA,CAAA,eACA,CAAA,0BACA,CAAA,sBAGJ,UACI,CAAA,aACA,CAAA,YAEA,CAAA,6BACA,CAAA,iCACA,CAAA,kBACA,CAAA,sBAGJ,eACI,CAAA,UACA,CAAA,aACA,CAAA,sBAGJ,iBACI,CAAA,SACA,CAAA,WACA,CAAA,WACA,CAAA,eACA,CAAA,iBACA,CAAA,UACA,CAAA,YACA,CAAA,oBACA,CAAA,mBACA,CAAA,sBAGJ,iBACI,CAAA,UACA,CAAA,WACA,CAAA,WACA,CAAA,eACA,CAAA,cACA,CAAA,UACA,CAAA,YACA,CAAA,oBACA,CAAA,mBACA,CAAA,mBACA,CAAA,UACA,CAAA,sBAGJ,4BACI,CAAA,sBAGJ,UACI,CAAA,eACA,CAAA,sBAGJ,WACI,CAAA,YACA,CAAA,eACA,CAAA,cACA,CAAA,iBACA,CAAA,2CAEA,uBACI,CAAA,oBACA,CAAA,eACA,CAAA,UACA,CAAA,WACA,CAAA,iBACA,CAAA,oBACA,CAAA,qBACA,CAAA,UACA,CAAA,iBACA,CAAA,mDAEA,wBACI,CAAA,SACA,CAAA,0DAGJ,WACI,CAAA,UACA,CAAA,gBACA,CAAA,cACA,CAAA,iBACA,CAAA,QACA,CAAA,QACA,CAAA,4BAGR,oBACI,CAAA,kBACA,CAAA,sBACA,CAAA,eACA,CAAA,0BACA,CAAA,sBAIR,YACI,CAAA,cACA,CAAA,iBACA,CAAA,WACA,CAAA,cACA,CAAA,yCAEA,UACI,CAAA,aACA,CAAA,yBACA,CAAA,eACA,CAAA,gBACA,CAAA,yBACA,CAAA,UACA,CAAA,UACA,CAAA,UACA,CAAA,UACA,CAAA,iBACA,CAAA,+BACA,CAAA,gBACA,CAAA,SACA,CAAA,cACA,CAAA,iBACA,CAAA,iBACA,CAAA,wIAEA,uBAEI,CAAA,QACA,CAAA,+CAGJ,+BACI,CAAA,+CAGJ,WACI,CAAA,qCACA,CAAA,+BACA,CAAA,SACA,CAAA,mDAEA,YACI,CAAA,0BAKZ,UACI,CAAA,aACA,CAAA,SACA,CAAA,iBACA,CAAA,iBACA,CAAA,gBACA,CAAA,cACA,CAAA,eACA,CAAA,sBAIR,cACI,CAAA,WACA,CAAA,YACA,CAAA,iBACA,CAAA,cACA,CAAA,sBAGJ,UACI,CAAA,aACA,CAAA,iBACA,CAAA,gBACA,CAAA,iBACA,CAAA,+BACA,CAAA,iBACA,CAAA,+BACA,CAAA,UACA,CAAA,cACA,CAAA,iBACA,CAAA,4BAEA,+BACI,CAAA,4BAGJ,WACI,CAAA,SACA,CAAA,sBAIR,UACI,CAAA,mBACA,CAAA,wBACA,CAAA,0BACA,CAAA,sBAGJ,yBACI,CAAA,0BACA,CAAA,+BACA,CAAA,SACA,CAAA,sBAGJ,yBACI,CAAA,aACA,CAAA,SACA,CAAA,eACA,CAAA,kBACA,CAAA,0BACA,CAAA,QACA,CAAA,UACA,CAAA,eACA,CAAA,QACA,CAAA,iBACA,CAAA,QACA,CAAA,cACA,CAAA,qBACA,CAAA,qBACA,CAAA,gBACA,CAAA,yCAGA,SACI,CAAA,UACA,CAAA,+CAEJ,kBACI,CAAA,yBACA,CAAA,+CAEJ,kBACI,CAAA,yBACA,CAAA,qDAEJ,yBACI,CAAA,sDAEJ,yBACI,CAAA,sBAIR,UACI,CAAA,WACA,CAAA,cACA,CAAA,eACA,CAAA,gBACA,CAAA,iBACA,CAAA,cACA,CAAA,4BACA,+BACI,CAAA,sBAIR,YACI,CAAA,eACA,CAAA,kBACA,CAAA,wCAEA,UACI,CAAA,aACA,CAAA,uBACA,CAAA,QACA,CAAA,eACA,CAAA,gBACA,CAAA,yBACA,CAAA,iBACA,CAAA,UACA,CAAA,UACA,CAAA,eACA,CAAA,qBACA,CAAA,8CAEA,WACI,CAAA,UACA,CAAA,uEAGJ,UACI,CAAA,uBACA,CAAA,eACA,CAAA,QACA,CAAA,8DAGJ,WACI,CAAA,uBACA,CAAA,YACA,CAAA,gBACA,CAAA,eACA,CAAA,QACA,CAAA,mCACA,CAAA,UACA,CAAA,SACA,CAAA,4BAIR,UACI,CAAA,aACA,CAAA,gBACA,CAAA,oBACA,CAAA,kBACA,CAAA,sBACA,CAAA,eACA,CAAA,SACA,CAAA,mBACA,CAAA,eACA,CAAA,0BAGJ,UACI,CAAA,aACA,CAAA,SACA,CAAA,mBACA,CAAA,cACA,CAAA,iBACA,CAAA,gBACA,CAAA,iBACA",sourceRoot:""}]),i.locals={visual:"Bobo_GNuSSK3wj98J_7K",topMost:"VaVKfF7ZluDOZqCWrTss",highlighted:"tVnxKGh92qhrNS8ZrLSk",glow:"VbXDgohRDHdjqNHZzzNa","header-container":"wyuUlbj377MNT1UhvTmA",headerIcon:"BmhtBDkDfI85nbM4NxMW",headerCollapse:"OE7iNY9W9C5xaXmb4fJq",collapsed:"Z9lpI06OUpToOdoscgAP",header:"f_UcygzCMLv89LeqZSEy",connections:"kJbPorwpWbIl6Q7awkHo",content:"RfWrHWBOKiuZXNcSUHZe",comments:"SgS8_RcQjdLxnu1nPvOp",executionTime:"Cbl6uixgEd9Qw0tPi9mf",selected:"wm6PpDz796f_yehTb9kV",optionsContainer:"GbpJUHoTKcYsbWRTctwV",booleanContainer:"LLYUI2tB03_XrFiwqTTI",floatContainer:"ELAsOakhMS22t6DYhtTL",listContainer:"sIwqD3_gaJsyql1dMo6T",select:"sQ96j8FSxarhbG1A8PUC",selectText:"ilzwnbRpnSkUQLp_Nvdq",activeNode:"JTNKfVBFeStDDavIFnzv",selectList:"fP8a0RIFmOCLEVr5UFij",option:"iN8VxGmf0YCxoYeMiho9",sliderContainer:"yWsLj4mFQyCZzcdaHovv"};const s=i},1917:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".LcAfLURgMF6_xQIp9xW5{stroke-width:4px}.LcAfLURgMF6_xQIp9xW5.zf49BMaByhYYIAbbyPJI{stroke:#fff !important;stroke-dasharray:10,2}.jrnrI_y4VbpSgvxxjfy2{filter:brightness(1.5);stroke-width:6px}.eVGcF_1cKpBdhuYPamV_{pointer-events:all;stroke-width:16px;opacity:0;transition:opacity 75ms;stroke:rgba(0,0,0,0);cursor:pointer}.eVGcF_1cKpBdhuYPamV_:hover,.eVGcF_1cKpBdhuYPamV_.zf49BMaByhYYIAbbyPJI{stroke:#fff !important;opacity:.4}","",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/nodeLink.module.scss"],names:[],mappings:"AAAA,sBACI,gBAAA,CACA,2CACI,sBAAA,CACA,qBAAA,CAIR,sBACI,sBAAA,CACA,gBAAA,CAGJ,sBACI,kBAAA,CACA,iBAAA,CACA,SAAA,CACA,uBAAA,CACA,oBAAA,CACA,cAAA,CAEA,uEAEI,sBAAA,CACA,UAAA",sourceRoot:""}]),i.locals={link:"LcAfLURgMF6_xQIp9xW5",selected:"zf49BMaByhYYIAbbyPJI","target-candidate":"jrnrI_y4VbpSgvxxjfy2","selection-link":"eVGcF_1cKpBdhuYPamV_"};const s=i},7936:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".xp0svdQQ7lHcLyymo9_p{filter:brightness(2)}.mzsVp6_QOFaQygXylaeh{background:green;width:6px;height:6px;grid-row:1;grid-column:1;align-self:center;justify-self:center;border-radius:7px;border:2px solid #000}.mzsVp6_QOFaQygXylaeh.AGhAEUJ1eJ3ZffrDebig{display:none}img{grid-row:1;grid-column:1}img.xp0svdQQ7lHcLyymo9_p{box-shadow:0 0 0 2px;border-radius:50%}","",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/nodePort.module.scss"],names:[],mappings:"AAAA,sBACI,oBAAA,CAGJ,sBACI,gBAAA,CACA,SAAA,CACA,UAAA,CACA,UAAA,CACA,aAAA,CACA,iBAAA,CACA,mBAAA,CACA,iBAAA,CACA,qBAAA,CAEA,2CACI,YAAA,CAIR,IACI,UAAA,CACA,aAAA,CAGJ,yBACI,oBAAA,CACA,iBAAA",sourceRoot:""}]),i.locals={selected:"xp0svdQQ7lHcLyymo9_p",pip:"mzsVp6_QOFaQygXylaeh",hidden:"AGhAEUJ1eJ3ZffrDebig"};const s=i},8929:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".r4ahfNLNjd1vdkE_hQl2{display:grid}.r4ahfNLNjd1vdkE_hQl2 .gv4Ab2PP_HaGmyz2gB8m{width:100%;height:100%;padding:0;margin:0;background-color:#444;border:0px;overlay:hidden}.r4ahfNLNjd1vdkE_hQl2 .gv4Ab2PP_HaGmyz2gB8m.eEEMUXTISbaTT2tPb9l7{cursor:row-resize}.r4ahfNLNjd1vdkE_hQl2 .gv4Ab2PP_HaGmyz2gB8m.ejkXNkJNa6NmG6WeqSjb{cursor:col-resize}.r4ahfNLNjd1vdkE_hQl2 .gv4Ab2PP_HaGmyz2gB8m:hover{background-color:#666}","",{version:3,sources:["webpack://./../../../dev/sharedUiComponents/dist/split/splitContainer.module.scss"],names:[],mappings:"AAAA,sBACI,YAAA,CAEA,4CACI,UAAA,CACA,WAAA,CACA,SAAA,CACA,QAAA,CACA,qBAAA,CACA,UAAA,CACA,cAAA,CAEA,iEACI,iBAAA,CAGJ,iEACI,iBAAA,CAGJ,kDACI,qBAAA",sourceRoot:""}]),i.locals={"split-container":"r4ahfNLNjd1vdkE_hQl2",splitter:"gv4Ab2PP_HaGmyz2gB8m",vertical:"eEEMUXTISbaTT2tPb9l7",horizontal:"ejkXNkJNa6NmG6WeqSjb"};const s=i},3914:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".P2vB7N_AgSkfsRVUkbRm{display:none !important}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/blockNodeData.module.scss"],names:[],mappings:"AAAA,sBACI,uBAAA",sourceRoot:""}]),i.locals={hidden:"P2vB7N_AgSkfsRVUkbRm"};const s=i},8469:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".qD9qGeizpAp6tYoPVeow{grid-row:2;height:140px;width:140px;overflow:hidden;border-bottom-left-radius:7px;border:#000 4px solid;border-left:0px;border-bottom:0px}.qD9qGeizpAp6tYoPVeow img{width:100%;height:100%;pointer-events:none}.qD9qGeizpAp6tYoPVeow img.WqEf3hMVhtkiCMOffdh_{display:none}.WqEf3hMVhtkiCMOffdh_{display:none}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/common.module.scss"],names:[],mappings:"AAAA,sBACI,UAAA,CACA,YAAA,CACA,WAAA,CACA,eAAA,CACA,6BAAA,CACA,qBAAA,CACA,eAAA,CACA,iBAAA,CAEA,0BACI,UAAA,CACA,WAAA,CACA,mBAAA,CAEA,+CACI,YAAA,CAKZ,sBACI,YAAA",sourceRoot:""}]),i.locals={"texture-block":"qD9qGeizpAp6tYoPVeow",empty:"WqEf3hMVhtkiCMOffdh_"};const s=i},7156:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".nHwHgDZKs3gKpZ8YoasV{grid-row:2;height:34px;text-align:center;font-size:18px;font-weight:bold;margin:0 10px}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/curveDisplayManager.module.scss"],names:[],mappings:"AAAA,sBACI,UAAA,CACA,WAAA,CACA,iBAAA,CACA,cAAA,CACA,gBAAA,CACA,aAAA",sourceRoot:""}]),i.locals={"curve-block":"nHwHgDZKs3gKpZ8YoasV"};const s=i},5024:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".dOatr3YZiQ2XwfA9LYJy{width:40px !important;grid-template-rows:0px 40px 0px !important;border-radius:40px !important;transform:translateY(-7px) !important}.JUP1lJuVKx_v5omAMXEX{display:none}.BCV8x2Q4rQlur4DEIXvx{transform:translateY(7px)}.X5U0_c13uawZjGdva13x{border-radius:40px}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/elbowDisplayManager.module.scss"],names:[],mappings:"AAAA,sBACI,qBAAA,CACA,0CAAA,CACA,6BAAA,CACA,qCAAA,CAGJ,sBACI,YAAA,CAGJ,sBACI,yBAAA,CAGJ,sBACI,kBAAA",sourceRoot:""}]),i.locals={elbowBlock:"dOatr3YZiQ2XwfA9LYJy",hidden:"JUP1lJuVKx_v5omAMXEX",translatedConnections:"BCV8x2Q4rQlur4DEIXvx",roundSelectionBorder:"X5U0_c13uawZjGdva13x"};const s=i},6997:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".kKrhofchqBmMAtRFmoQA{grid-row:2;height:34px}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/gradientDisplayManager.module.scss"],names:[],mappings:"AAAA,sBACI,UAAA,CACA,WAAA",sourceRoot:""}]),i.locals={gradientBlock:"kKrhofchqBmMAtRFmoQA"};const s=i},489:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".y3r0uoRbB7Q9cxBRLbat{margin-top:5px}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/imageSourceDisplayManager.module.scss"],names:[],mappings:"AAAA,sBACI,cAAA",sourceRoot:""}]),i.locals={"image-source-block":"y3r0uoRbB7Q9cxBRLbat"};const s=i},8637:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".PlUl1ctp4YMSLZwUipsw{grid-row:2;min-height:34px;text-align:center;font-size:18px;font-weight:bold;margin:0 10px 5px;display:grid;align-content:center}.PlUl1ctp4YMSLZwUipsw.UuVLKdmPVTOTWFa33T0G{font-size:17px}.YqQLt4hf6ja9HI_mpe84{border-color:#464348;background:#464348}.WPyD50ELIGQuDwAb5nwn{border-color:#66491b;background:#66491b}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/inputDisplayManager.module.scss"],names:[],mappings:"AAAA,sBACI,UAAA,CACA,eAAA,CACA,iBAAA,CACA,cAAA,CACA,gBAAA,CACA,iBAAA,CACA,YAAA,CACA,oBAAA,CAEA,2CACI,cAAA,CAIR,sBACI,oBAAA,CACA,kBAAA,CAGJ,sBACI,oBAAA,CACA,kBAAA",sourceRoot:""}]),i.locals={"input-block":"PlUl1ctp4YMSLZwUipsw","small-font":"UuVLKdmPVTOTWFa33T0G",constant:"YqQLt4hf6ja9HI_mpe84",inspector:"WPyD50ELIGQuDwAb5nwn"};const s=i},2886:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".wHaBVvqGlmk7N9glnG_B{height:34px;text-align:center;font-size:18px;font-weight:bold;margin:0 10px}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/remapDisplayManager.module.scss"],names:[],mappings:"AAAA,sBACI,WAAA,CACA,iBAAA,CACA,cAAA,CACA,gBAAA,CACA,aAAA",sourceRoot:""}]),i.locals={"remap-block":"wHaBVvqGlmk7N9glnG_B"};const s=i},2324:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(3234),o=n.n(r),a=n(7474),i=n.n(a)()(o());i.push([e.id,".hol3vmg6S3RmMX2BDnJQ{margin-top:80px}.jI6eo5eT93r0D5eOTjnu{margin-top:30px}.pG2BSy_fF3kPC8Kb7oq9{grid-row:3 !important}.JSNytgcYueYEIEHDn_eh{margin-top:155px}.YtzUAOeZNDFTFHo93qGQ{margin-top:80px}","",{version:3,sources:["webpack://./../../../tools/nodeEditor/dist/graphSystem/display/textureDisplayManager.module.scss"],names:[],mappings:"AAAA,sBACI,eAAA,CAGJ,sBACI,eAAA,CAGJ,sBACI,qBAAA,CAGJ,sBACI,gBAAA,CAGJ,sBACI,eAAA",sourceRoot:""}]),i.locals={"regular-texture-block":"hol3vmg6S3RmMX2BDnJQ","reduced-texture-block":"jI6eo5eT93r0D5eOTjnu","reflection-block":"pG2BSy_fF3kPC8Kb7oq9","triplanar-texture-block":"JSNytgcYueYEIEHDn_eh","refraction-texture-block":"YtzUAOeZNDFTFHo93qGQ"};const s=i},7474:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",r=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),r&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),r&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,r,o,a){"string"==typeof e&&(e=[[null,e,void 0]]);var i={};if(r)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(i[l]=!0)}for(var c=0;c<e.length;c++){var u=[].concat(e[c]);r&&i[u[0]]||(void 0!==a&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=a),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),t.push(u))}},t}},3234:e=>{"use strict";e.exports=function(e){var t=e[1],n=e[3];if(!n)return t;if("function"==typeof btoa){var r=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),o="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(r),a="/*# ".concat(o," */");return[t].concat([a]).join("\n")}return[t].join("\n")}},2878:(e,t,n)=>{e.exports={graphlib:n(503),layout:n(946),debug:n(2213),util:{time:n(4012).time,notime:n(4012).notime},version:n(6950)}},3070:(e,t,n)=>{"use strict";var r=n(2190),o=n(5703);e.exports={run:function(e){var t="greedy"===e.graph().acyclicer?o(e,function(e){return function(t){return e.edge(t).weight}}(e)):function(e){var t=[],n={},o={};return r.forEach(e.nodes(),(function a(i){r.has(o,i)||(o[i]=!0,n[i]=!0,r.forEach(e.outEdges(i),(function(e){r.has(n,e.w)?t.push(e):a(e.w)})),delete n[i])})),t}(e);r.forEach(t,(function(t){var n=e.edge(t);e.removeEdge(t),n.forwardName=t.name,n.reversed=!0,e.setEdge(t.w,t.v,n,r.uniqueId("rev"))}))},undo:function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);if(n.reversed){e.removeEdge(t);var r=n.forwardName;delete n.reversed,delete n.forwardName,e.setEdge(t.w,t.v,n,r)}}))}}},1087:(e,t,n)=>{var r=n(2190),o=n(4012);function a(e,t,n,r,a,i){var s={width:0,height:0,rank:i,borderType:t},l=a[t][i-1],c=o.addDummyNode(e,"border",s,n);a[t][i]=c,e.setParent(c,r),l&&e.setEdge(l,c,{weight:1})}e.exports=function(e){r.forEach(e.children(),(function t(n){var o=e.children(n),i=e.node(n);if(o.length&&r.forEach(o,t),r.has(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var s=i.minRank,l=i.maxRank+1;s<l;++s)a(e,"borderLeft","_bl",n,i,s),a(e,"borderRight","_br",n,i,s)}}))}},7210:(e,t,n)=>{"use strict";var r=n(2190);function o(e){r.forEach(e.nodes(),(function(t){a(e.node(t))})),r.forEach(e.edges(),(function(t){a(e.edge(t))}))}function a(e){var t=e.width;e.width=e.height,e.height=t}function i(e){e.y=-e.y}function s(e){var t=e.x;e.x=e.y,e.y=t}e.exports={adjust:function(e){var t=e.graph().rankdir.toLowerCase();"lr"!==t&&"rl"!==t||o(e)},undo:function(e){var t=e.graph().rankdir.toLowerCase();"bt"!==t&&"rl"!==t||function(e){r.forEach(e.nodes(),(function(t){i(e.node(t))})),r.forEach(e.edges(),(function(t){var n=e.edge(t);r.forEach(n.points,i),r.has(n,"y")&&i(n)}))}(e),"lr"!==t&&"rl"!==t||(function(e){r.forEach(e.nodes(),(function(t){s(e.node(t))})),r.forEach(e.edges(),(function(t){var n=e.edge(t);r.forEach(n.points,s),r.has(n,"x")&&s(n)}))}(e),o(e))}}},7755:e=>{function t(){var e={};e._next=e._prev=e,this._sentinel=e}function n(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function r(e,t){if("_next"!==e&&"_prev"!==e)return t}e.exports=t,t.prototype.dequeue=function(){var e=this._sentinel,t=e._prev;if(t!==e)return n(t),t},t.prototype.enqueue=function(e){var t=this._sentinel;e._prev&&e._next&&n(e),e._next=t._next,t._next._prev=e,t._next=e,e._prev=t},t.prototype.toString=function(){for(var e=[],t=this._sentinel,n=t._prev;n!==t;)e.push(JSON.stringify(n,r)),n=n._prev;return"["+e.join(", ")+"]"}},2213:(e,t,n)=>{var r=n(2190),o=n(4012),a=n(503).Graph;e.exports={debugOrdering:function(e){var t=o.buildLayerMatrix(e),n=new a({compound:!0,multigraph:!0}).setGraph({});return r.forEach(e.nodes(),(function(t){n.setNode(t,{label:t}),n.setParent(t,"layer"+e.node(t).rank)})),r.forEach(e.edges(),(function(e){n.setEdge(e.v,e.w,{},e.name)})),r.forEach(t,(function(e,t){var o="layer"+t;n.setNode(o,{rank:"same"}),r.reduce(e,(function(e,t){return n.setEdge(e,t,{style:"invis"}),t}))})),n}}},503:(e,t,n)=>{var r;try{r=n(7730)}catch(e){}r||(r=window.graphlib),e.exports=r},5703:(e,t,n)=>{var r=n(2190),o=n(503).Graph,a=n(7755);e.exports=function(e,t){if(e.nodeCount()<=1)return[];var n=function(e,t){var n=new o,i=0,s=0;r.forEach(e.nodes(),(function(e){n.setNode(e,{v:e,in:0,out:0})})),r.forEach(e.edges(),(function(e){var r=n.edge(e.v,e.w)||0,o=t(e),a=r+o;n.setEdge(e.v,e.w,a),s=Math.max(s,n.node(e.v).out+=o),i=Math.max(i,n.node(e.w).in+=o)}));var c=r.range(s+i+3).map((function(){return new a})),u=i+1;return r.forEach(n.nodes(),(function(e){l(c,u,n.node(e))})),{graph:n,buckets:c,zeroIdx:u}}(e,t||i),c=function(e,t,n){for(var r,o=[],a=t[t.length-1],i=t[0];e.nodeCount();){for(;r=i.dequeue();)s(e,t,n,r);for(;r=a.dequeue();)s(e,t,n,r);if(e.nodeCount())for(var l=t.length-2;l>0;--l)if(r=t[l].dequeue()){o=o.concat(s(e,t,n,r,!0));break}}return o}(n.graph,n.buckets,n.zeroIdx);return r.flatten(r.map(c,(function(t){return e.outEdges(t.v,t.w)})),!0)};var i=r.constant(1);function s(e,t,n,o,a){var i=a?[]:void 0;return r.forEach(e.inEdges(o.v),(function(r){var o=e.edge(r),s=e.node(r.v);a&&i.push({v:r.v,w:r.w}),s.out-=o,l(t,n,s)})),r.forEach(e.outEdges(o.v),(function(r){var o=e.edge(r),a=r.w,i=e.node(a);i.in-=o,l(t,n,i)})),e.removeNode(o.v),i}function l(e,t,n){n.out?n.in?e[n.out-n.in+t].enqueue(n):e[e.length-1].enqueue(n):e[0].enqueue(n)}},946:(e,t,n)=>{"use strict";var r=n(2190),o=n(3070),a=n(3305),i=n(985),s=n(4012).normalizeRanks,l=n(2396),c=n(4012).removeEmptyRanks,u=n(3497),d=n(1087),p=n(7210),h=n(8037),A=n(1672),f=n(4012),g=n(503).Graph;e.exports=function(e,t){var n=t&&t.debugTiming?f.time:f.notime;n("layout",(function(){var t=n(" buildLayoutGraph",(function(){return function(e){var t=new g({multigraph:!0,compound:!0}),n=N(e.graph());return t.setGraph(r.merge({},C,k(n,m),r.pick(n,b))),r.forEach(e.nodes(),(function(n){var o=N(e.node(n));t.setNode(n,r.defaults(k(o,v),y)),t.setParent(n,e.parent(n))})),r.forEach(e.edges(),(function(n){var o=N(e.edge(n));t.setEdge(n,r.merge({},w,k(o,x),r.pick(o,M)))})),t}(e)}));n(" runLayout",(function(){!function(e,t){t(" makeSpaceForEdgeLabels",(function(){!function(e){var t=e.graph();t.ranksep/=2,r.forEach(e.edges(),(function(n){var r=e.edge(n);r.minlen*=2,"c"!==r.labelpos.toLowerCase()&&("TB"===t.rankdir||"BT"===t.rankdir?r.width+=r.labeloffset:r.height+=r.labeloffset)}))}(e)})),t(" removeSelfEdges",(function(){!function(e){r.forEach(e.edges(),(function(t){if(t.v===t.w){var n=e.node(t.v);n.selfEdges||(n.selfEdges=[]),n.selfEdges.push({e:t,label:e.edge(t)}),e.removeEdge(t)}}))}(e)})),t(" acyclic",(function(){o.run(e)})),t(" nestingGraph.run",(function(){u.run(e)})),t(" rank",(function(){i(f.asNonCompoundGraph(e))})),t(" injectEdgeLabelProxies",(function(){!function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);if(n.width&&n.height){var r=e.node(t.v),o={rank:(e.node(t.w).rank-r.rank)/2+r.rank,e:t};f.addDummyNode(e,"edge-proxy",o,"_ep")}}))}(e)})),t(" removeEmptyRanks",(function(){c(e)})),t(" nestingGraph.cleanup",(function(){u.cleanup(e)})),t(" normalizeRanks",(function(){s(e)})),t(" assignRankMinMax",(function(){!function(e){var t=0;r.forEach(e.nodes(),(function(n){var o=e.node(n);o.borderTop&&(o.minRank=e.node(o.borderTop).rank,o.maxRank=e.node(o.borderBottom).rank,t=r.max(t,o.maxRank))})),e.graph().maxRank=t}(e)})),t(" removeEdgeLabelProxies",(function(){!function(e){r.forEach(e.nodes(),(function(t){var n=e.node(t);"edge-proxy"===n.dummy&&(e.edge(n.e).labelRank=n.rank,e.removeNode(t))}))}(e)})),t(" normalize.run",(function(){a.run(e)})),t(" parentDummyChains",(function(){l(e)})),t(" addBorderSegments",(function(){d(e)})),t(" order",(function(){h(e)})),t(" insertSelfEdges",(function(){!function(e){var t=f.buildLayerMatrix(e);r.forEach(t,(function(t){var n=0;r.forEach(t,(function(t,o){var a=e.node(t);a.order=o+n,r.forEach(a.selfEdges,(function(t){f.addDummyNode(e,"selfedge",{width:t.label.width,height:t.label.height,rank:a.rank,order:o+ ++n,e:t.e,label:t.label},"_se")})),delete a.selfEdges}))}))}(e)})),t(" adjustCoordinateSystem",(function(){p.adjust(e)})),t(" position",(function(){A(e)})),t(" positionSelfEdges",(function(){!function(e){r.forEach(e.nodes(),(function(t){var n=e.node(t);if("selfedge"===n.dummy){var r=e.node(n.e.v),o=r.x+r.width/2,a=r.y,i=n.x-o,s=r.height/2;e.setEdge(n.e,n.label),e.removeNode(t),n.label.points=[{x:o+2*i/3,y:a-s},{x:o+5*i/6,y:a-s},{x:o+i,y:a},{x:o+5*i/6,y:a+s},{x:o+2*i/3,y:a+s}],n.label.x=n.x,n.label.y=n.y}}))}(e)})),t(" removeBorderNodes",(function(){!function(e){r.forEach(e.nodes(),(function(t){if(e.children(t).length){var n=e.node(t),o=e.node(n.borderTop),a=e.node(n.borderBottom),i=e.node(r.last(n.borderLeft)),s=e.node(r.last(n.borderRight));n.width=Math.abs(s.x-i.x),n.height=Math.abs(a.y-o.y),n.x=i.x+n.width/2,n.y=o.y+n.height/2}})),r.forEach(e.nodes(),(function(t){"border"===e.node(t).dummy&&e.removeNode(t)}))}(e)})),t(" normalize.undo",(function(){a.undo(e)})),t(" fixupEdgeLabelCoords",(function(){!function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);if(r.has(n,"x"))switch("l"!==n.labelpos&&"r"!==n.labelpos||(n.width-=n.labeloffset),n.labelpos){case"l":n.x-=n.width/2+n.labeloffset;break;case"r":n.x+=n.width/2+n.labeloffset}}))}(e)})),t(" undoCoordinateSystem",(function(){p.undo(e)})),t(" translateGraph",(function(){!function(e){var t=Number.POSITIVE_INFINITY,n=0,o=Number.POSITIVE_INFINITY,a=0,i=e.graph(),s=i.marginx||0,l=i.marginy||0;function c(e){var r=e.x,i=e.y,s=e.width,l=e.height;t=Math.min(t,r-s/2),n=Math.max(n,r+s/2),o=Math.min(o,i-l/2),a=Math.max(a,i+l/2)}r.forEach(e.nodes(),(function(t){c(e.node(t))})),r.forEach(e.edges(),(function(t){var n=e.edge(t);r.has(n,"x")&&c(n)})),t-=s,o-=l,r.forEach(e.nodes(),(function(n){var r=e.node(n);r.x-=t,r.y-=o})),r.forEach(e.edges(),(function(n){var a=e.edge(n);r.forEach(a.points,(function(e){e.x-=t,e.y-=o})),r.has(a,"x")&&(a.x-=t),r.has(a,"y")&&(a.y-=o)})),i.width=n-t+s,i.height=a-o+l}(e)})),t(" assignNodeIntersects",(function(){!function(e){r.forEach(e.edges(),(function(t){var n,r,o=e.edge(t),a=e.node(t.v),i=e.node(t.w);o.points?(n=o.points[0],r=o.points[o.points.length-1]):(o.points=[],n=i,r=a),o.points.unshift(f.intersectRect(a,n)),o.points.push(f.intersectRect(i,r))}))}(e)})),t(" reversePoints",(function(){!function(e){r.forEach(e.edges(),(function(t){var n=e.edge(t);n.reversed&&n.points.reverse()}))}(e)})),t(" acyclic.undo",(function(){o.undo(e)}))}(t,n)})),n(" updateInputGraph",(function(){!function(e,t){r.forEach(e.nodes(),(function(n){var r=e.node(n),o=t.node(n);r&&(r.x=o.x,r.y=o.y,t.children(n).length&&(r.width=o.width,r.height=o.height))})),r.forEach(e.edges(),(function(n){var o=e.edge(n),a=t.edge(n);o.points=a.points,r.has(a,"x")&&(o.x=a.x,o.y=a.y)})),e.graph().width=t.graph().width,e.graph().height=t.graph().height}(e,t)}))}))};var m=["nodesep","edgesep","ranksep","marginx","marginy"],C={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},b=["acyclicer","ranker","rankdir","align"],v=["width","height"],y={width:0,height:0},x=["minlen","weight","width","height","labeloffset"],w={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},M=["labelpos"];function k(e,t){return r.mapValues(r.pick(e,t),Number)}function N(e){var t={};return r.forEach(e,(function(e,n){t[n.toLowerCase()]=e})),t}},2190:(e,t,n)=>{var r;try{r={cloneDeep:n(5263),constant:n(9566),defaults:n(8276),each:n(5279),filter:n(8820),find:n(2933),flatten:n(1386),forEach:n(5362),forIn:n(5692),has:n(9312),isUndefined:n(9344),last:n(7362),map:n(6938),mapValues:n(948),max:n(7810),merge:n(6652),min:n(6956),minBy:n(45),now:n(1940),pick:n(1815),range:n(3333),reduce:n(84),sortBy:n(3503),uniqueId:n(1304),values:n(5872),zipObject:n(8200)}}catch(e){}r||(r=window._),e.exports=r},3497:(e,t,n)=>{var r=n(2190),o=n(4012);function a(e,t,n,i,s,l,c){var u=e.children(c);if(u.length){var d=o.addBorderNode(e,"_bt"),p=o.addBorderNode(e,"_bb"),h=e.node(c);e.setParent(d,c),h.borderTop=d,e.setParent(p,c),h.borderBottom=p,r.forEach(u,(function(r){a(e,t,n,i,s,l,r);var o=e.node(r),u=o.borderTop?o.borderTop:r,h=o.borderBottom?o.borderBottom:r,A=o.borderTop?i:2*i,f=u!==h?1:s-l[c]+1;e.setEdge(d,u,{weight:A,minlen:f,nestingEdge:!0}),e.setEdge(h,p,{weight:A,minlen:f,nestingEdge:!0})})),e.parent(c)||e.setEdge(t,d,{weight:0,minlen:s+l[c]})}else c!==t&&e.setEdge(t,c,{weight:0,minlen:n})}e.exports={run:function(e){var t=o.addDummyNode(e,"root",{},"_root"),n=function(e){var t={};function n(o,a){var i=e.children(o);i&&i.length&&r.forEach(i,(function(e){n(e,a+1)})),t[o]=a}return r.forEach(e.children(),(function(e){n(e,1)})),t}(e),i=r.max(r.values(n))-1,s=2*i+1;e.graph().nestingRoot=t,r.forEach(e.edges(),(function(t){e.edge(t).minlen*=s}));var l=function(e){return r.reduce(e.edges(),(function(t,n){return t+e.edge(n).weight}),0)}(e)+1;r.forEach(e.children(),(function(r){a(e,t,s,l,i,n,r)})),e.graph().nodeRankFactor=s},cleanup:function(e){var t=e.graph();e.removeNode(t.nestingRoot),delete t.nestingRoot,r.forEach(e.edges(),(function(t){e.edge(t).nestingEdge&&e.removeEdge(t)}))}}},3305:(e,t,n)=>{"use strict";var r=n(2190),o=n(4012);e.exports={run:function(e){e.graph().dummyChains=[],r.forEach(e.edges(),(function(t){!function(e,t){var n,r,a,i=t.v,s=e.node(i).rank,l=t.w,c=e.node(l).rank,u=t.name,d=e.edge(t),p=d.labelRank;if(c!==s+1){for(e.removeEdge(t),a=0,++s;s<c;++a,++s)d.points=[],r={width:0,height:0,edgeLabel:d,edgeObj:t,rank:s},n=o.addDummyNode(e,"edge",r,"_d"),s===p&&(r.width=d.width,r.height=d.height,r.dummy="edge-label",r.labelpos=d.labelpos),e.setEdge(i,n,{weight:d.weight},u),0===a&&e.graph().dummyChains.push(n),i=n;e.setEdge(i,l,{weight:d.weight},u)}}(e,t)}))},undo:function(e){r.forEach(e.graph().dummyChains,(function(t){var n,r=e.node(t),o=r.edgeLabel;for(e.setEdge(r.edgeObj,o);r.dummy;)n=e.successors(t)[0],e.removeNode(t),o.points.push({x:r.x,y:r.y}),"edge-label"===r.dummy&&(o.x=r.x,o.y=r.y,o.width=r.width,o.height=r.height),t=n,r=e.node(t)}))}}},1400:(e,t,n)=>{var r=n(2190);e.exports=function(e,t,n){var o,a={};r.forEach(n,(function(n){for(var r,i,s=e.parent(n);s;){if((r=e.parent(s))?(i=a[r],a[r]=s):(i=o,o=s),i&&i!==s)return void t.setEdge(i,s);s=r}}))}},2444:(e,t,n)=>{var r=n(2190);e.exports=function(e,t){return r.map(t,(function(t){var n=e.inEdges(t);if(n.length){var o=r.reduce(n,(function(t,n){var r=e.edge(n),o=e.node(n.v);return{sum:t.sum+r.weight*o.order,weight:t.weight+r.weight}}),{sum:0,weight:0});return{v:t,barycenter:o.sum/o.weight,weight:o.weight}}return{v:t}}))}},1932:(e,t,n)=>{var r=n(2190),o=n(503).Graph;e.exports=function(e,t,n){var a=function(e){for(var t;e.hasNode(t=r.uniqueId("_root")););return t}(e),i=new o({compound:!0}).setGraph({root:a}).setDefaultNodeLabel((function(t){return e.node(t)}));return r.forEach(e.nodes(),(function(o){var s=e.node(o),l=e.parent(o);(s.rank===t||s.minRank<=t&&t<=s.maxRank)&&(i.setNode(o),i.setParent(o,l||a),r.forEach(e[n](o),(function(t){var n=t.v===o?t.w:t.v,a=i.edge(n,o),s=r.isUndefined(a)?0:a.weight;i.setEdge(n,o,{weight:e.edge(t).weight+s})})),r.has(s,"minRank")&&i.setNode(o,{borderLeft:s.borderLeft[t],borderRight:s.borderRight[t]}))})),i}},2151:(e,t,n)=>{"use strict";var r=n(2190);function o(e,t,n){for(var o=r.zipObject(n,r.map(n,(function(e,t){return t}))),a=r.flatten(r.map(t,(function(t){return r.sortBy(r.map(e.outEdges(t),(function(t){return{pos:o[t.w],weight:e.edge(t).weight}})),"pos")})),!0),i=1;i<n.length;)i<<=1;var s=2*i-1;i-=1;var l=r.map(new Array(s),(function(){return 0})),c=0;return r.forEach(a.forEach((function(e){var t=e.pos+i;l[t]+=e.weight;for(var n=0;t>0;)t%2&&(n+=l[t+1]),l[t=t-1>>1]+=e.weight;c+=e.weight*n}))),c}e.exports=function(e,t){for(var n=0,r=1;r<t.length;++r)n+=o(e,t[r-1],t[r]);return n}},8037:(e,t,n)=>{"use strict";var r=n(2190),o=n(5230),a=n(2151),i=n(8352),s=n(1932),l=n(1400),c=n(503).Graph,u=n(4012);function d(e,t,n){return r.map(t,(function(t){return s(e,t,n)}))}function p(e,t){var n=new c;r.forEach(e,(function(e){var o=e.graph().root,a=i(e,o,n,t);r.forEach(a.vs,(function(t,n){e.node(t).order=n})),l(e,n,a.vs)}))}function h(e,t){r.forEach(t,(function(t){r.forEach(t,(function(t,n){e.node(t).order=n}))}))}e.exports=function(e){var t=u.maxRank(e),n=d(e,r.range(1,t+1),"inEdges"),i=d(e,r.range(t-1,-1,-1),"outEdges"),s=o(e);h(e,s);for(var l,c=Number.POSITIVE_INFINITY,A=0,f=0;f<4;++A,++f){p(A%2?n:i,A%4>=2),s=u.buildLayerMatrix(e);var g=a(e,s);g<c&&(f=0,l=r.cloneDeep(s),c=g)}h(e,l)}},5230:(e,t,n)=>{"use strict";var r=n(2190);e.exports=function(e){var t={},n=r.filter(e.nodes(),(function(t){return!e.children(t).length})),o=r.max(r.map(n,(function(t){return e.node(t).rank}))),a=r.map(r.range(o+1),(function(){return[]})),i=r.sortBy(n,(function(t){return e.node(t).rank}));return r.forEach(i,(function n(o){if(!r.has(t,o)){t[o]=!0;var i=e.node(o);a[i.rank].push(o),r.forEach(e.successors(o),n)}})),a}},9543:(e,t,n)=>{"use strict";var r=n(2190);e.exports=function(e,t){var n={};return r.forEach(e,(function(e,t){var o=n[e.v]={indegree:0,in:[],out:[],vs:[e.v],i:t};r.isUndefined(e.barycenter)||(o.barycenter=e.barycenter,o.weight=e.weight)})),r.forEach(t.edges(),(function(e){var t=n[e.v],o=n[e.w];r.isUndefined(t)||r.isUndefined(o)||(o.indegree++,t.out.push(n[e.w]))})),function(e){var t=[];function n(e){return function(t){var n,o,a,i;t.merged||(r.isUndefined(t.barycenter)||r.isUndefined(e.barycenter)||t.barycenter>=e.barycenter)&&(o=t,a=0,i=0,(n=e).weight&&(a+=n.barycenter*n.weight,i+=n.weight),o.weight&&(a+=o.barycenter*o.weight,i+=o.weight),n.vs=o.vs.concat(n.vs),n.barycenter=a/i,n.weight=i,n.i=Math.min(o.i,n.i),o.merged=!0)}}function o(t){return function(n){n.in.push(t),0==--n.indegree&&e.push(n)}}for(;e.length;){var a=e.pop();t.push(a),r.forEach(a.in.reverse(),n(a)),r.forEach(a.out,o(a))}return r.map(r.filter(t,(function(e){return!e.merged})),(function(e){return r.pick(e,["vs","i","barycenter","weight"])}))}(r.filter(n,(function(e){return!e.indegree})))}},8352:(e,t,n)=>{var r=n(2190),o=n(2444),a=n(9543),i=n(2793);e.exports=function e(t,n,s,l){var c=t.children(n),u=t.node(n),d=u?u.borderLeft:void 0,p=u?u.borderRight:void 0,h={};d&&(c=r.filter(c,(function(e){return e!==d&&e!==p})));var A=o(t,c);r.forEach(A,(function(n){if(t.children(n.v).length){var o=e(t,n.v,s,l);h[n.v]=o,r.has(o,"barycenter")&&(a=n,i=o,r.isUndefined(a.barycenter)?(a.barycenter=i.barycenter,a.weight=i.weight):(a.barycenter=(a.barycenter*a.weight+i.barycenter*i.weight)/(a.weight+i.weight),a.weight+=i.weight))}var a,i}));var f=a(A,s);!function(e,t){r.forEach(e,(function(e){e.vs=r.flatten(e.vs.map((function(e){return t[e]?t[e].vs:e})),!0)}))}(f,h);var g=i(f,l);if(d&&(g.vs=r.flatten([d,g.vs,p],!0),t.predecessors(d).length)){var m=t.node(t.predecessors(d)[0]),C=t.node(t.predecessors(p)[0]);r.has(g,"barycenter")||(g.barycenter=0,g.weight=0),g.barycenter=(g.barycenter*g.weight+m.order+C.order)/(g.weight+2),g.weight+=2}return g}},2793:(e,t,n)=>{var r=n(2190),o=n(4012);function a(e,t,n){for(var o;t.length&&(o=r.last(t)).i<=n;)t.pop(),e.push(o.vs),n++;return n}e.exports=function(e,t){var n,i=o.partition(e,(function(e){return r.has(e,"barycenter")})),s=i.lhs,l=r.sortBy(i.rhs,(function(e){return-e.i})),c=[],u=0,d=0,p=0;s.sort((n=!!t,function(e,t){return e.barycenter<t.barycenter?-1:e.barycenter>t.barycenter?1:n?t.i-e.i:e.i-t.i})),p=a(c,l,p),r.forEach(s,(function(e){p+=e.vs.length,c.push(e.vs),u+=e.barycenter*e.weight,d+=e.weight,p=a(c,l,p)}));var h={vs:r.flatten(c,!0)};return d&&(h.barycenter=u/d,h.weight=d),h}},2396:(e,t,n)=>{var r=n(2190);e.exports=function(e){var t=function(e){var t={},n=0;return r.forEach(e.children(),(function o(a){var i=n;r.forEach(e.children(a),o),t[a]={low:i,lim:n++}})),t}(e);r.forEach(e.graph().dummyChains,(function(n){for(var r=e.node(n),o=r.edgeObj,a=function(e,t,n,r){var o,a,i=[],s=[],l=Math.min(t[n].low,t[r].low),c=Math.max(t[n].lim,t[r].lim);o=n;do{o=e.parent(o),i.push(o)}while(o&&(t[o].low>l||c>t[o].lim));for(a=o,o=r;(o=e.parent(o))!==a;)s.push(o);return{path:i.concat(s.reverse()),lca:a}}(e,t,o.v,o.w),i=a.path,s=a.lca,l=0,c=i[l],u=!0;n!==o.w;){if(r=e.node(n),u){for(;(c=i[l])!==s&&e.node(c).maxRank<r.rank;)l++;c===s&&(u=!1)}if(!u){for(;l<i.length-1&&e.node(c=i[l+1]).minRank<=r.rank;)l++;c=i[l]}e.setParent(n,c),n=e.successors(n)[0]}}))}},3509:(e,t,n)=>{"use strict";var r=n(2190),o=n(503).Graph,a=n(4012);function i(e,t){var n={};return r.reduce(t,(function(t,o){var a=0,i=0,s=t.length,c=r.last(o);return r.forEach(o,(function(t,u){var d=function(e,t){if(e.node(t).dummy)return r.find(e.predecessors(t),(function(t){return e.node(t).dummy}))}(e,t),p=d?e.node(d).order:s;(d||t===c)&&(r.forEach(o.slice(i,u+1),(function(t){r.forEach(e.predecessors(t),(function(r){var o=e.node(r),i=o.order;!(i<a||p<i)||o.dummy&&e.node(t).dummy||l(n,r,t)}))})),i=u+1,a=p)})),o})),n}function s(e,t){var n={};function o(t,o,a,i,s){var c;r.forEach(r.range(o,a),(function(o){c=t[o],e.node(c).dummy&&r.forEach(e.predecessors(c),(function(t){var r=e.node(t);r.dummy&&(r.order<i||r.order>s)&&l(n,t,c)}))}))}return r.reduce(t,(function(t,n){var a,i=-1,s=0;return r.forEach(n,(function(r,l){if("border"===e.node(r).dummy){var c=e.predecessors(r);c.length&&(a=e.node(c[0]).order,o(n,s,l,i,a),s=l,i=a)}o(n,s,n.length,a,t.length)})),n})),n}function l(e,t,n){if(t>n){var r=t;t=n,n=r}var o=e[t];o||(e[t]=o={}),o[n]=!0}function c(e,t,n){if(t>n){var o=t;t=n,n=o}return r.has(e[t],n)}function u(e,t,n,o){var a={},i={},s={};return r.forEach(t,(function(e){r.forEach(e,(function(e,t){a[e]=e,i[e]=e,s[e]=t}))})),r.forEach(t,(function(e){var t=-1;r.forEach(e,(function(e){var l=o(e);if(l.length){l=r.sortBy(l,(function(e){return s[e]}));for(var u=(l.length-1)/2,d=Math.floor(u),p=Math.ceil(u);d<=p;++d){var h=l[d];i[e]===e&&t<s[h]&&!c(n,e,h)&&(i[h]=e,i[e]=a[e]=a[h],t=s[h])}}}))})),{root:a,align:i}}function d(e,t,n,a,i){var s={},l=function(e,t,n,a){var i=new o,s=e.graph(),l=function(e,t,n){return function(o,a,i){var s,l=o.node(a),c=o.node(i),u=0;if(u+=l.width/2,r.has(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":s=-l.width/2;break;case"r":s=l.width/2}if(s&&(u+=n?s:-s),s=0,u+=(l.dummy?t:e)/2,u+=(c.dummy?t:e)/2,u+=c.width/2,r.has(c,"labelpos"))switch(c.labelpos.toLowerCase()){case"l":s=c.width/2;break;case"r":s=-c.width/2}return s&&(u+=n?s:-s),s=0,u}}(s.nodesep,s.edgesep,a);return r.forEach(t,(function(t){var o;r.forEach(t,(function(t){var r=n[t];if(i.setNode(r),o){var a=n[o],s=i.edge(a,r);i.setEdge(a,r,Math.max(l(e,t,o),s||0))}o=t}))})),i}(e,t,n,i),c=i?"borderLeft":"borderRight";function u(e,t){for(var n=l.nodes(),r=n.pop(),o={};r;)o[r]?e(r):(o[r]=!0,n.push(r),n=n.concat(t(r))),r=n.pop()}return u((function(e){s[e]=l.inEdges(e).reduce((function(e,t){return Math.max(e,s[t.v]+l.edge(t))}),0)}),l.predecessors.bind(l)),u((function(t){var n=l.outEdges(t).reduce((function(e,t){return Math.min(e,s[t.w]-l.edge(t))}),Number.POSITIVE_INFINITY),r=e.node(t);n!==Number.POSITIVE_INFINITY&&r.borderType!==c&&(s[t]=Math.max(s[t],n))}),l.successors.bind(l)),r.forEach(a,(function(e){s[e]=s[n[e]]})),s}function p(e,t){return r.minBy(r.values(t),(function(t){var n=Number.NEGATIVE_INFINITY,o=Number.POSITIVE_INFINITY;return r.forIn(t,(function(t,r){var a=function(e,t){return e.node(t).width}(e,r)/2;n=Math.max(t+a,n),o=Math.min(t-a,o)})),n-o}))}function h(e,t){var n=r.values(t),o=r.min(n),a=r.max(n);r.forEach(["u","d"],(function(n){r.forEach(["l","r"],(function(i){var s,l=n+i,c=e[l];if(c!==t){var u=r.values(c);(s="l"===i?o-r.min(u):a-r.max(u))&&(e[l]=r.mapValues(c,(function(e){return e+s})))}}))}))}function A(e,t){return r.mapValues(e.ul,(function(n,o){if(t)return e[t.toLowerCase()][o];var a=r.sortBy(r.map(e,o));return(a[1]+a[2])/2}))}e.exports={positionX:function(e){var t,n=a.buildLayerMatrix(e),o=r.merge(i(e,n),s(e,n)),l={};r.forEach(["u","d"],(function(a){t="u"===a?n:r.values(n).reverse(),r.forEach(["l","r"],(function(n){"r"===n&&(t=r.map(t,(function(e){return r.values(e).reverse()})));var i=("u"===a?e.predecessors:e.successors).bind(e),s=u(0,t,o,i),c=d(e,t,s.root,s.align,"r"===n);"r"===n&&(c=r.mapValues(c,(function(e){return-e}))),l[a+n]=c}))}));var c=p(e,l);return h(l,c),A(l,e.graph().align)},findType1Conflicts:i,findType2Conflicts:s,addConflict:l,hasConflict:c,verticalAlignment:u,horizontalCompaction:d,alignCoordinates:h,findSmallestWidthAlignment:p,balance:A}},1672:(e,t,n)=>{"use strict";var r=n(2190),o=n(4012),a=n(3509).positionX;e.exports=function(e){(function(e){var t=o.buildLayerMatrix(e),n=e.graph().ranksep,a=0;r.forEach(t,(function(t){var o=r.max(r.map(t,(function(t){return e.node(t).height})));r.forEach(t,(function(t){e.node(t).y=a+o/2})),a+=o+n}))})(e=o.asNonCompoundGraph(e)),r.forEach(a(e),(function(t,n){e.node(n).x=t}))}},4393:(e,t,n)=>{"use strict";var r=n(2190),o=n(503).Graph,a=n(7521).slack;function i(e,t){return r.forEach(e.nodes(),(function n(o){r.forEach(t.nodeEdges(o),(function(r){var i=r.v,s=o===i?r.w:i;e.hasNode(s)||a(t,r)||(e.setNode(s,{}),e.setEdge(o,s,{}),n(s))}))})),e.nodeCount()}function s(e,t){return r.minBy(t.edges(),(function(n){if(e.hasNode(n.v)!==e.hasNode(n.w))return a(t,n)}))}function l(e,t,n){r.forEach(e.nodes(),(function(e){t.node(e).rank+=n}))}e.exports=function(e){var t,n,r=new o({directed:!1}),c=e.nodes()[0],u=e.nodeCount();for(r.setNode(c,{});i(r,e)<u;)t=s(r,e),n=r.hasNode(t.v)?a(e,t):-a(e,t),l(r,e,n);return r}},985:(e,t,n)=>{"use strict";var r=n(7521).longestPath,o=n(4393),a=n(1620);e.exports=function(e){switch(e.graph().ranker){case"network-simplex":default:!function(e){a(e)}(e);break;case"tight-tree":!function(e){r(e),o(e)}(e);break;case"longest-path":i(e)}};var i=r},1620:(e,t,n)=>{"use strict";var r=n(2190),o=n(4393),a=n(7521).slack,i=n(7521).longestPath,s=n(503).alg.preorder,l=n(503).alg.postorder,c=n(4012).simplify;function u(e){e=c(e),i(e);var t,n=o(e);for(h(n),d(n,e);t=f(n);)m(n,e,t,g(n,e,t))}function d(e,t){var n=l(e,e.nodes());n=n.slice(0,n.length-1),r.forEach(n,(function(n){!function(e,t,n){var r=e.node(n).parent;e.edge(n,r).cutvalue=p(e,t,n)}(e,t,n)}))}function p(e,t,n){var o=e.node(n).parent,a=!0,i=t.edge(n,o),s=0;return i||(a=!1,i=t.edge(o,n)),s=i.weight,r.forEach(t.nodeEdges(n),(function(r){var i,l,c=r.v===n,u=c?r.w:r.v;if(u!==o){var d=c===a,p=t.edge(r).weight;if(s+=d?p:-p,i=n,l=u,e.hasEdge(i,l)){var h=e.edge(n,u).cutvalue;s+=d?-h:h}}})),s}function h(e,t){arguments.length<2&&(t=e.nodes()[0]),A(e,{},1,t)}function A(e,t,n,o,a){var i=n,s=e.node(o);return t[o]=!0,r.forEach(e.neighbors(o),(function(a){r.has(t,a)||(n=A(e,t,n,a,o))})),s.low=i,s.lim=n++,a?s.parent=a:delete s.parent,n}function f(e){return r.find(e.edges(),(function(t){return e.edge(t).cutvalue<0}))}function g(e,t,n){var o=n.v,i=n.w;t.hasEdge(o,i)||(o=n.w,i=n.v);var s=e.node(o),l=e.node(i),c=s,u=!1;s.lim>l.lim&&(c=l,u=!0);var d=r.filter(t.edges(),(function(t){return u===C(0,e.node(t.v),c)&&u!==C(0,e.node(t.w),c)}));return r.minBy(d,(function(e){return a(t,e)}))}function m(e,t,n,o){var a=n.v,i=n.w;e.removeEdge(a,i),e.setEdge(o.v,o.w,{}),h(e),d(e,t),function(e,t){var n=r.find(e.nodes(),(function(e){return!t.node(e).parent})),o=s(e,n);o=o.slice(1),r.forEach(o,(function(n){var r=e.node(n).parent,o=t.edge(n,r),a=!1;o||(o=t.edge(r,n),a=!0),t.node(n).rank=t.node(r).rank+(a?o.minlen:-o.minlen)}))}(e,t)}function C(e,t,n){return n.low<=t.lim&&t.lim<=n.lim}e.exports=u,u.initLowLimValues=h,u.initCutValues=d,u.calcCutValue=p,u.leaveEdge=f,u.enterEdge=g,u.exchangeEdges=m},7521:(e,t,n)=>{"use strict";var r=n(2190);e.exports={longestPath:function(e){var t={};r.forEach(e.sources(),(function n(o){var a=e.node(o);if(r.has(t,o))return a.rank;t[o]=!0;var i=r.min(r.map(e.outEdges(o),(function(t){return n(t.w)-e.edge(t).minlen})));return i!==Number.POSITIVE_INFINITY&&null!=i||(i=0),a.rank=i}))},slack:function(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}}},4012:(e,t,n)=>{"use strict";var r=n(2190),o=n(503).Graph;function a(e,t,n,o){var a;do{a=r.uniqueId(o)}while(e.hasNode(a));return n.dummy=t,e.setNode(a,n),a}function i(e){return r.max(r.map(e.nodes(),(function(t){var n=e.node(t).rank;if(!r.isUndefined(n))return n})))}e.exports={addDummyNode:a,simplify:function(e){var t=(new o).setGraph(e.graph());return r.forEach(e.nodes(),(function(n){t.setNode(n,e.node(n))})),r.forEach(e.edges(),(function(n){var r=t.edge(n.v,n.w)||{weight:0,minlen:1},o=e.edge(n);t.setEdge(n.v,n.w,{weight:r.weight+o.weight,minlen:Math.max(r.minlen,o.minlen)})})),t},asNonCompoundGraph:function(e){var t=new o({multigraph:e.isMultigraph()}).setGraph(e.graph());return r.forEach(e.nodes(),(function(n){e.children(n).length||t.setNode(n,e.node(n))})),r.forEach(e.edges(),(function(n){t.setEdge(n,e.edge(n))})),t},successorWeights:function(e){var t=r.map(e.nodes(),(function(t){var n={};return r.forEach(e.outEdges(t),(function(t){n[t.w]=(n[t.w]||0)+e.edge(t).weight})),n}));return r.zipObject(e.nodes(),t)},predecessorWeights:function(e){var t=r.map(e.nodes(),(function(t){var n={};return r.forEach(e.inEdges(t),(function(t){n[t.v]=(n[t.v]||0)+e.edge(t).weight})),n}));return r.zipObject(e.nodes(),t)},intersectRect:function(e,t){var n,r,o=e.x,a=e.y,i=t.x-o,s=t.y-a,l=e.width/2,c=e.height/2;if(!i&&!s)throw new Error("Not possible to find intersection inside of the rectangle");return Math.abs(s)*l>Math.abs(i)*c?(s<0&&(c=-c),n=c*i/s,r=c):(i<0&&(l=-l),n=l,r=l*s/i),{x:o+n,y:a+r}},buildLayerMatrix:function(e){var t=r.map(r.range(i(e)+1),(function(){return[]}));return r.forEach(e.nodes(),(function(n){var o=e.node(n),a=o.rank;r.isUndefined(a)||(t[a][o.order]=n)})),t},normalizeRanks:function(e){var t=r.min(r.map(e.nodes(),(function(t){return e.node(t).rank})));r.forEach(e.nodes(),(function(n){var o=e.node(n);r.has(o,"rank")&&(o.rank-=t)}))},removeEmptyRanks:function(e){var t=r.min(r.map(e.nodes(),(function(t){return e.node(t).rank}))),n=[];r.forEach(e.nodes(),(function(r){var o=e.node(r).rank-t;n[o]||(n[o]=[]),n[o].push(r)}));var o=0,a=e.graph().nodeRankFactor;r.forEach(n,(function(t,n){r.isUndefined(t)&&n%a!=0?--o:o&&r.forEach(t,(function(t){e.node(t).rank+=o}))}))},addBorderNode:function(e,t,n,r){var o={width:0,height:0};return arguments.length>=4&&(o.rank=n,o.order=r),a(e,"border",o,t)},maxRank:i,partition:function(e,t){var n={lhs:[],rhs:[]};return r.forEach(e,(function(e){t(e)?n.lhs.push(e):n.rhs.push(e)})),n},time:function(e,t){var n=r.now();try{return t()}finally{console.log(e+" time: "+(r.now()-n)+"ms")}},notime:function(e,t){return t()}}},6950:e=>{e.exports="0.8.5"},7730:(e,t,n)=>{var r=n(9990);e.exports={Graph:r.Graph,json:n(2846),alg:n(2731),version:r.version}},5947:(e,t,n)=>{var r=n(413);e.exports=function(e){var t,n={},o=[];function a(o){r.has(n,o)||(n[o]=!0,t.push(o),r.each(e.successors(o),a),r.each(e.predecessors(o),a))}return r.each(e.nodes(),(function(e){t=[],a(e),t.length&&o.push(t)})),o}},5892:(e,t,n)=>{var r=n(413);function o(e,t,n,a,i,s){r.has(a,t)||(a[t]=!0,n||s.push(t),r.each(i(t),(function(t){o(e,t,n,a,i,s)})),n&&s.push(t))}e.exports=function(e,t,n){r.isArray(t)||(t=[t]);var a=(e.isDirected()?e.successors:e.neighbors).bind(e),i=[],s={};return r.each(t,(function(t){if(!e.hasNode(t))throw new Error("Graph does not have node: "+t);o(e,t,"post"===n,s,a,i)})),i}},5247:(e,t,n)=>{var r=n(5313),o=n(413);e.exports=function(e,t,n){return o.transform(e.nodes(),(function(o,a){o[a]=r(e,a,t,n)}),{})}},5313:(e,t,n)=>{var r=n(413),o=n(5409);e.exports=function(e,t,n,r){return function(e,t,n,r){var a,i,s={},l=new o,c=function(e){var t=e.v!==a?e.v:e.w,r=s[t],o=n(e),c=i.distance+o;if(o<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+e+" Weight: "+o);c<r.distance&&(r.distance=c,r.predecessor=a,l.decrease(t,c))};for(e.nodes().forEach((function(e){var n=e===t?0:Number.POSITIVE_INFINITY;s[e]={distance:n},l.add(e,n)}));l.size()>0&&(a=l.removeMin(),(i=s[a]).distance!==Number.POSITIVE_INFINITY);)r(a).forEach(c);return s}(e,String(t),n||a,r||function(t){return e.outEdges(t)})};var a=r.constant(1)},5374:(e,t,n)=>{var r=n(413),o=n(3131);e.exports=function(e){return r.filter(o(e),(function(t){return t.length>1||1===t.length&&e.hasEdge(t[0],t[0])}))}},9486:(e,t,n)=>{var r=n(413);e.exports=function(e,t,n){return function(e,t,n){var r={},o=e.nodes();return o.forEach((function(e){r[e]={},r[e][e]={distance:0},o.forEach((function(t){e!==t&&(r[e][t]={distance:Number.POSITIVE_INFINITY})})),n(e).forEach((function(n){var o=n.v===e?n.w:n.v,a=t(n);r[e][o]={distance:a,predecessor:e}}))})),o.forEach((function(e){var t=r[e];o.forEach((function(n){var a=r[n];o.forEach((function(n){var r=a[e],o=t[n],i=a[n],s=r.distance+o.distance;s<i.distance&&(i.distance=s,i.predecessor=o.predecessor)}))}))})),r}(e,t||o,n||function(t){return e.outEdges(t)})};var o=r.constant(1)},2731:(e,t,n)=>{e.exports={components:n(5947),dijkstra:n(5313),dijkstraAll:n(5247),findCycles:n(5374),floydWarshall:n(9486),isAcyclic:n(1066),postorder:n(2941),preorder:n(7656),prim:n(8127),tarjan:n(3131),topsort:n(1112)}},1066:(e,t,n)=>{var r=n(1112);e.exports=function(e){try{r(e)}catch(e){if(e instanceof r.CycleException)return!1;throw e}return!0}},2941:(e,t,n)=>{var r=n(5892);e.exports=function(e,t){return r(e,t,"post")}},7656:(e,t,n)=>{var r=n(5892);e.exports=function(e,t){return r(e,t,"pre")}},8127:(e,t,n)=>{var r=n(413),o=n(4302),a=n(5409);e.exports=function(e,t){var n,i=new o,s={},l=new a;function c(e){var r=e.v===n?e.w:e.v,o=l.priority(r);if(void 0!==o){var a=t(e);a<o&&(s[r]=n,l.decrease(r,a))}}if(0===e.nodeCount())return i;r.each(e.nodes(),(function(e){l.add(e,Number.POSITIVE_INFINITY),i.setNode(e)})),l.decrease(e.nodes()[0],0);for(var u=!1;l.size()>0;){if(n=l.removeMin(),r.has(s,n))i.setEdge(n,s[n]);else{if(u)throw new Error("Input graph is not connected: "+e);u=!0}e.nodeEdges(n).forEach(c)}return i}},3131:(e,t,n)=>{var r=n(413);e.exports=function(e){var t=0,n=[],o={},a=[];function i(s){var l=o[s]={onStack:!0,lowlink:t,index:t++};if(n.push(s),e.successors(s).forEach((function(e){r.has(o,e)?o[e].onStack&&(l.lowlink=Math.min(l.lowlink,o[e].index)):(i(e),l.lowlink=Math.min(l.lowlink,o[e].lowlink))})),l.lowlink===l.index){var c,u=[];do{c=n.pop(),o[c].onStack=!1,u.push(c)}while(s!==c);a.push(u)}}return e.nodes().forEach((function(e){r.has(o,e)||i(e)})),a}},1112:(e,t,n)=>{var r=n(413);function o(e){var t={},n={},o=[];if(r.each(e.sinks(),(function i(s){if(r.has(n,s))throw new a;r.has(t,s)||(n[s]=!0,t[s]=!0,r.each(e.predecessors(s),i),delete n[s],o.push(s))})),r.size(t)!==e.nodeCount())throw new a;return o}function a(){}e.exports=o,o.CycleException=a,a.prototype=new Error},5409:(e,t,n)=>{var r=n(413);function o(){this._arr=[],this._keyIndices={}}e.exports=o,o.prototype.size=function(){return this._arr.length},o.prototype.keys=function(){return this._arr.map((function(e){return e.key}))},o.prototype.has=function(e){return r.has(this._keyIndices,e)},o.prototype.priority=function(e){var t=this._keyIndices[e];if(void 0!==t)return this._arr[t].priority},o.prototype.min=function(){if(0===this.size())throw new Error("Queue underflow");return this._arr[0].key},o.prototype.add=function(e,t){var n=this._keyIndices;if(e=String(e),!r.has(n,e)){var o=this._arr,a=o.length;return n[e]=a,o.push({key:e,priority:t}),this._decrease(a),!0}return!1},o.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var e=this._arr.pop();return delete this._keyIndices[e.key],this._heapify(0),e.key},o.prototype.decrease=function(e,t){var n=this._keyIndices[e];if(t>this._arr[n].priority)throw new Error("New priority is greater than current priority. Key: "+e+" Old: "+this._arr[n].priority+" New: "+t);this._arr[n].priority=t,this._decrease(n)},o.prototype._heapify=function(e){var t=this._arr,n=2*e,r=n+1,o=e;n<t.length&&(o=t[n].priority<t[o].priority?n:o,r<t.length&&(o=t[r].priority<t[o].priority?r:o),o!==e&&(this._swap(e,o),this._heapify(o)))},o.prototype._decrease=function(e){for(var t,n=this._arr,r=n[e].priority;0!==e&&!(n[t=e>>1].priority<r);)this._swap(e,t),e=t},o.prototype._swap=function(e,t){var n=this._arr,r=this._keyIndices,o=n[e],a=n[t];n[e]=a,n[t]=o,r[a.key]=e,r[o.key]=t}},4302:(e,t,n)=>{"use strict";var r=n(413);e.exports=a;var o="\0";function a(e){this._isDirected=!r.has(e,"directed")||e.directed,this._isMultigraph=!!r.has(e,"multigraph")&&e.multigraph,this._isCompound=!!r.has(e,"compound")&&e.compound,this._label=void 0,this._defaultNodeLabelFn=r.constant(void 0),this._defaultEdgeLabelFn=r.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[o]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}function i(e,t){e[t]?e[t]++:e[t]=1}function s(e,t){--e[t]||delete e[t]}function l(e,t,n,o){var a=""+t,i=""+n;if(!e&&a>i){var s=a;a=i,i=s}return a+""+i+""+(r.isUndefined(o)?"\0":o)}function c(e,t){return l(e,t.v,t.w,t.name)}a.prototype._nodeCount=0,a.prototype._edgeCount=0,a.prototype.isDirected=function(){return this._isDirected},a.prototype.isMultigraph=function(){return this._isMultigraph},a.prototype.isCompound=function(){return this._isCompound},a.prototype.setGraph=function(e){return this._label=e,this},a.prototype.graph=function(){return this._label},a.prototype.setDefaultNodeLabel=function(e){return r.isFunction(e)||(e=r.constant(e)),this._defaultNodeLabelFn=e,this},a.prototype.nodeCount=function(){return this._nodeCount},a.prototype.nodes=function(){return r.keys(this._nodes)},a.prototype.sources=function(){var e=this;return r.filter(this.nodes(),(function(t){return r.isEmpty(e._in[t])}))},a.prototype.sinks=function(){var e=this;return r.filter(this.nodes(),(function(t){return r.isEmpty(e._out[t])}))},a.prototype.setNodes=function(e,t){var n=arguments,o=this;return r.each(e,(function(e){n.length>1?o.setNode(e,t):o.setNode(e)})),this},a.prototype.setNode=function(e,t){return r.has(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=o,this._children[e]={},this._children[o][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)},a.prototype.node=function(e){return this._nodes[e]},a.prototype.hasNode=function(e){return r.has(this._nodes,e)},a.prototype.removeNode=function(e){var t=this;if(r.has(this._nodes,e)){var n=function(e){t.removeEdge(t._edgeObjs[e])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],r.each(this.children(e),(function(e){t.setParent(e)})),delete this._children[e]),r.each(r.keys(this._in[e]),n),delete this._in[e],delete this._preds[e],r.each(r.keys(this._out[e]),n),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this},a.prototype.setParent=function(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(r.isUndefined(t))t=o;else{for(var n=t+="";!r.isUndefined(n);n=this.parent(n))if(n===e)throw new Error("Setting "+t+" as parent of "+e+" would create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this},a.prototype._removeFromParentsChildList=function(e){delete this._children[this._parent[e]][e]},a.prototype.parent=function(e){if(this._isCompound){var t=this._parent[e];if(t!==o)return t}},a.prototype.children=function(e){if(r.isUndefined(e)&&(e=o),this._isCompound){var t=this._children[e];if(t)return r.keys(t)}else{if(e===o)return this.nodes();if(this.hasNode(e))return[]}},a.prototype.predecessors=function(e){var t=this._preds[e];if(t)return r.keys(t)},a.prototype.successors=function(e){var t=this._sucs[e];if(t)return r.keys(t)},a.prototype.neighbors=function(e){var t=this.predecessors(e);if(t)return r.union(t,this.successors(e))},a.prototype.isLeaf=function(e){return 0===(this.isDirected()?this.successors(e):this.neighbors(e)).length},a.prototype.filterNodes=function(e){var t=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});t.setGraph(this.graph());var n=this;r.each(this._nodes,(function(n,r){e(r)&&t.setNode(r,n)})),r.each(this._edgeObjs,(function(e){t.hasNode(e.v)&&t.hasNode(e.w)&&t.setEdge(e,n.edge(e))}));var o={};function a(e){var r=n.parent(e);return void 0===r||t.hasNode(r)?(o[e]=r,r):r in o?o[r]:a(r)}return this._isCompound&&r.each(t.nodes(),(function(e){t.setParent(e,a(e))})),t},a.prototype.setDefaultEdgeLabel=function(e){return r.isFunction(e)||(e=r.constant(e)),this._defaultEdgeLabelFn=e,this},a.prototype.edgeCount=function(){return this._edgeCount},a.prototype.edges=function(){return r.values(this._edgeObjs)},a.prototype.setPath=function(e,t){var n=this,o=arguments;return r.reduce(e,(function(e,r){return o.length>1?n.setEdge(e,r,t):n.setEdge(e,r),r})),this},a.prototype.setEdge=function(){var e,t,n,o,a=!1,s=arguments[0];"object"==typeof s&&null!==s&&"v"in s?(e=s.v,t=s.w,n=s.name,2===arguments.length&&(o=arguments[1],a=!0)):(e=s,t=arguments[1],n=arguments[3],arguments.length>2&&(o=arguments[2],a=!0)),e=""+e,t=""+t,r.isUndefined(n)||(n=""+n);var c=l(this._isDirected,e,t,n);if(r.has(this._edgeLabels,c))return a&&(this._edgeLabels[c]=o),this;if(!r.isUndefined(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(t),this._edgeLabels[c]=a?o:this._defaultEdgeLabelFn(e,t,n);var u=function(e,t,n,r){var o=""+t,a=""+n;if(!e&&o>a){var i=o;o=a,a=i}var s={v:o,w:a};return r&&(s.name=r),s}(this._isDirected,e,t,n);return e=u.v,t=u.w,Object.freeze(u),this._edgeObjs[c]=u,i(this._preds[t],e),i(this._sucs[e],t),this._in[t][c]=u,this._out[e][c]=u,this._edgeCount++,this},a.prototype.edge=function(e,t,n){var r=1===arguments.length?c(this._isDirected,arguments[0]):l(this._isDirected,e,t,n);return this._edgeLabels[r]},a.prototype.hasEdge=function(e,t,n){var o=1===arguments.length?c(this._isDirected,arguments[0]):l(this._isDirected,e,t,n);return r.has(this._edgeLabels,o)},a.prototype.removeEdge=function(e,t,n){var r=1===arguments.length?c(this._isDirected,arguments[0]):l(this._isDirected,e,t,n),o=this._edgeObjs[r];return o&&(e=o.v,t=o.w,delete this._edgeLabels[r],delete this._edgeObjs[r],s(this._preds[t],e),s(this._sucs[e],t),delete this._in[t][r],delete this._out[e][r],this._edgeCount--),this},a.prototype.inEdges=function(e,t){var n=this._in[e];if(n){var o=r.values(n);return t?r.filter(o,(function(e){return e.v===t})):o}},a.prototype.outEdges=function(e,t){var n=this._out[e];if(n){var o=r.values(n);return t?r.filter(o,(function(e){return e.w===t})):o}},a.prototype.nodeEdges=function(e,t){var n=this.inEdges(e,t);if(n)return n.concat(this.outEdges(e,t))}},9990:(e,t,n)=>{e.exports={Graph:n(4302),version:n(5282)}},2846:(e,t,n)=>{var r=n(413),o=n(4302);function a(e){return r.map(e.nodes(),(function(t){var n=e.node(t),o=e.parent(t),a={v:t};return r.isUndefined(n)||(a.value=n),r.isUndefined(o)||(a.parent=o),a}))}function i(e){return r.map(e.edges(),(function(t){var n=e.edge(t),o={v:t.v,w:t.w};return r.isUndefined(t.name)||(o.name=t.name),r.isUndefined(n)||(o.value=n),o}))}e.exports={write:function(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:a(e),edges:i(e)};return r.isUndefined(e.graph())||(t.value=r.clone(e.graph())),t},read:function(e){var t=new o(e.options).setGraph(e.value);return r.each(e.nodes,(function(e){t.setNode(e.v,e.value),e.parent&&t.setParent(e.v,e.parent)})),r.each(e.edges,(function(e){t.setEdge({v:e.v,w:e.w,name:e.name},e.value)})),t}}},413:(e,t,n)=>{var r;try{r={clone:n(5981),constant:n(9566),each:n(5279),filter:n(8820),has:n(9312),isArray:n(7321),isEmpty:n(1913),isFunction:n(3314),isUndefined:n(9344),keys:n(5782),map:n(6938),reduce:n(84),size:n(267),transform:n(8336),union:n(9715),values:n(5872)}}catch(e){}r||(r=window._),e.exports=r},5282:e=>{e.exports="2.1.8"},9892:(e,t,n)=>{var r=n(4086)(n(8357),"DataView");e.exports=r},2821:(e,t,n)=>{var r=n(3320),o=n(7934),a=n(73),i=n(9093),s=n(237);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=o,l.prototype.get=a,l.prototype.has=i,l.prototype.set=s,e.exports=l},7031:(e,t,n)=>{var r=n(6318),o=n(6760),a=n(2603),i=n(8583),s=n(7743);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=o,l.prototype.get=a,l.prototype.has=i,l.prototype.set=s,e.exports=l},7063:(e,t,n)=>{var r=n(4086)(n(8357),"Map");e.exports=r},1093:(e,t,n)=>{var r=n(7672),o=n(5310),a=n(233),i=n(6341),s=n(605);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=o,l.prototype.get=a,l.prototype.has=i,l.prototype.set=s,e.exports=l},908:(e,t,n)=>{var r=n(4086)(n(8357),"Promise");e.exports=r},8617:(e,t,n)=>{var r=n(4086)(n(8357),"Set");e.exports=r},7411:(e,t,n)=>{var r=n(1093),o=n(5004),a=n(1995);function i(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new r;++t<n;)this.add(e[t])}i.prototype.add=i.prototype.push=o,i.prototype.has=a,e.exports=i},4265:(e,t,n)=>{var r=n(7031),o=n(1812),a=n(6018),i=n(429),s=n(9297),l=n(57);function c(e){var t=this.__data__=new r(e);this.size=t.size}c.prototype.clear=o,c.prototype.delete=a,c.prototype.get=i,c.prototype.has=s,c.prototype.set=l,e.exports=c},265:(e,t,n)=>{var r=n(8357).Symbol;e.exports=r},7004:(e,t,n)=>{var r=n(8357).Uint8Array;e.exports=r},9591:(e,t,n)=>{var r=n(4086)(n(8357),"WeakMap");e.exports=r},6065:e=>{e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},7945:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}},2994:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,o=0,a=[];++n<r;){var i=e[n];t(i,n,e)&&(a[o++]=i)}return a}},2197:(e,t,n)=>{var r=n(3083);e.exports=function(e,t){return!(null==e||!e.length)&&r(e,t,0)>-1}},873:e=>{e.exports=function(e,t,n){for(var r=-1,o=null==e?0:e.length;++r<o;)if(n(t,e[r]))return!0;return!1}},8671:(e,t,n)=>{var r=n(7960),o=n(5668),a=n(7321),i=n(7555),s=n(5233),l=n(7415),c=Object.prototype.hasOwnProperty;e.exports=function(e,t){var n=a(e),u=!n&&o(e),d=!n&&!u&&i(e),p=!n&&!u&&!d&&l(e),h=n||u||d||p,A=h?r(e.length,String):[],f=A.length;for(var g in e)!t&&!c.call(e,g)||h&&("length"==g||d&&("offset"==g||"parent"==g)||p&&("buffer"==g||"byteLength"==g||"byteOffset"==g)||s(g,f))||A.push(g);return A}},12:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,o=Array(r);++n<r;)o[n]=t(e[n],n,e);return o}},7592:e=>{e.exports=function(e,t){for(var n=-1,r=t.length,o=e.length;++n<r;)e[o+n]=t[n];return e}},3898:e=>{e.exports=function(e,t,n,r){var o=-1,a=null==e?0:e.length;for(r&&a&&(n=e[++o]);++o<a;)n=t(n,e[o],o,e);return n}},4304:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}},9947:(e,t,n)=>{var r=n(1197)("length");e.exports=r},5861:(e,t,n)=>{var r=n(5352),o=n(240);e.exports=function(e,t,n){(void 0!==n&&!o(e[t],n)||void 0===n&&!(t in e))&&r(e,t,n)}},6347:(e,t,n)=>{var r=n(5352),o=n(240),a=Object.prototype.hasOwnProperty;e.exports=function(e,t,n){var i=e[t];a.call(e,t)&&o(i,n)&&(void 0!==n||t in e)||r(e,t,n)}},7361:(e,t,n)=>{var r=n(240);e.exports=function(e,t){for(var n=e.length;n--;)if(r(e[n][0],t))return n;return-1}},3429:(e,t,n)=>{var r=n(6311),o=n(5782);e.exports=function(e,t){return e&&r(t,o(t),e)}},9078:(e,t,n)=>{var r=n(6311),o=n(9905);e.exports=function(e,t){return e&&r(t,o(t),e)}},5352:(e,t,n)=>{var r=n(2691);e.exports=function(e,t,n){"__proto__"==t&&r?r(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}},1700:(e,t,n)=>{var r=n(4265),o=n(7945),a=n(6347),i=n(3429),s=n(9078),l=n(5154),c=n(1943),u=n(5095),d=n(7036),p=n(9322),h=n(5469),A=n(2909),f=n(6677),g=n(935),m=n(2286),C=n(7321),b=n(7555),v=n(1882),y=n(6901),x=n(3072),w=n(5782),M=n(9905),k="[object Arguments]",N="[object Function]",_="[object Object]",S={};S[k]=S["[object Array]"]=S["[object ArrayBuffer]"]=S["[object DataView]"]=S["[object Boolean]"]=S["[object Date]"]=S["[object Float32Array]"]=S["[object Float64Array]"]=S["[object Int8Array]"]=S["[object Int16Array]"]=S["[object Int32Array]"]=S["[object Map]"]=S["[object Number]"]=S[_]=S["[object RegExp]"]=S["[object Set]"]=S["[object String]"]=S["[object Symbol]"]=S["[object Uint8Array]"]=S["[object Uint8ClampedArray]"]=S["[object Uint16Array]"]=S["[object Uint32Array]"]=!0,S["[object Error]"]=S[N]=S["[object WeakMap]"]=!1,e.exports=function e(t,n,L,B,D,I){var j,E=1&n,T=2&n,O=4&n;if(L&&(j=D?L(t,B,D,I):L(t)),void 0!==j)return j;if(!y(t))return t;var P=C(t);if(P){if(j=f(t),!E)return c(t,j)}else{var z=A(t),R=z==N||"[object GeneratorFunction]"==z;if(b(t))return l(t,E);if(z==_||z==k||R&&!D){if(j=T||R?{}:m(t),!E)return T?d(t,s(j,t)):u(t,i(j,t))}else{if(!S[z])return D?t:{};j=g(t,z,E)}}I||(I=new r);var U=I.get(t);if(U)return U;I.set(t,j),x(t)?t.forEach((function(r){j.add(e(r,n,L,r,t,I))})):v(t)&&t.forEach((function(r,o){j.set(o,e(r,n,L,o,t,I))}));var F=P?void 0:(O?T?h:p:T?M:w)(t);return o(F||t,(function(r,o){F&&(r=t[o=r]),a(j,o,e(r,n,L,o,t,I))})),j}},4360:(e,t,n)=>{var r=n(6901),o=Object.create,a=function(){function e(){}return function(t){if(!r(t))return{};if(o)return o(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();e.exports=a},6613:(e,t,n)=>{var r=n(2169),o=n(3873)(r);e.exports=o},535:(e,t,n)=>{var r=n(7218);e.exports=function(e,t,n){for(var o=-1,a=e.length;++o<a;){var i=e[o],s=t(i);if(null!=s&&(void 0===l?s==s&&!r(s):n(s,l)))var l=s,c=i}return c}},9974:(e,t,n)=>{var r=n(6613);e.exports=function(e,t){var n=[];return r(e,(function(e,r,o){t(e,r,o)&&n.push(e)})),n}},6195:e=>{e.exports=function(e,t,n,r){for(var o=e.length,a=n+(r?1:-1);r?a--:++a<o;)if(t(e[a],a,e))return a;return-1}},5144:(e,t,n)=>{var r=n(7592),o=n(9883);e.exports=function e(t,n,a,i,s){var l=-1,c=t.length;for(a||(a=o),s||(s=[]);++l<c;){var u=t[l];n>0&&a(u)?n>1?e(u,n-1,a,i,s):r(s,u):i||(s[s.length]=u)}return s}},4257:(e,t,n)=>{var r=n(8013)();e.exports=r},2169:(e,t,n)=>{var r=n(4257),o=n(5782);e.exports=function(e,t){return e&&r(e,t,o)}},6934:(e,t,n)=>{var r=n(8033),o=n(7581);e.exports=function(e,t){for(var n=0,a=(t=r(t,e)).length;null!=e&&n<a;)e=e[o(t[n++])];return n&&n==a?e:void 0}},8047:(e,t,n)=>{var r=n(7592),o=n(7321);e.exports=function(e,t,n){var a=t(e);return o(e)?a:r(a,n(e))}},9360:(e,t,n)=>{var r=n(265),o=n(9083),a=n(926),i=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":i&&i in Object(e)?o(e):a(e)}},9247:e=>{e.exports=function(e,t){return e>t}},7042:e=>{var t=Object.prototype.hasOwnProperty;e.exports=function(e,n){return null!=e&&t.call(e,n)}},2437:e=>{e.exports=function(e,t){return null!=e&&t in Object(e)}},3083:(e,t,n)=>{var r=n(6195),o=n(1903),a=n(3319);e.exports=function(e,t,n){return t==t?a(e,t,n):r(e,o,n)}},1974:(e,t,n)=>{var r=n(9360),o=n(6082);e.exports=function(e){return o(e)&&"[object Arguments]"==r(e)}},1206:(e,t,n)=>{var r=n(3876),o=n(6082);e.exports=function e(t,n,a,i,s){return t===n||(null==t||null==n||!o(t)&&!o(n)?t!=t&&n!=n:r(t,n,a,i,e,s))}},3876:(e,t,n)=>{var r=n(4265),o=n(9919),a=n(5706),i=n(857),s=n(2909),l=n(7321),c=n(7555),u=n(7415),d="[object Arguments]",p="[object Array]",h="[object Object]",A=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,f,g,m){var C=l(e),b=l(t),v=C?p:s(e),y=b?p:s(t),x=(v=v==d?h:v)==h,w=(y=y==d?h:y)==h,M=v==y;if(M&&c(e)){if(!c(t))return!1;C=!0,x=!1}if(M&&!x)return m||(m=new r),C||u(e)?o(e,t,n,f,g,m):a(e,t,v,n,f,g,m);if(!(1&n)){var k=x&&A.call(e,"__wrapped__"),N=w&&A.call(t,"__wrapped__");if(k||N){var _=k?e.value():e,S=N?t.value():t;return m||(m=new r),g(_,S,n,f,m)}}return!!M&&(m||(m=new r),i(e,t,n,f,g,m))}},3244:(e,t,n)=>{var r=n(2909),o=n(6082);e.exports=function(e){return o(e)&&"[object Map]"==r(e)}},4719:(e,t,n)=>{var r=n(4265),o=n(1206);e.exports=function(e,t,n,a){var i=n.length,s=i,l=!a;if(null==e)return!s;for(e=Object(e);i--;){var c=n[i];if(l&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++i<s;){var u=(c=n[i])[0],d=e[u],p=c[1];if(l&&c[2]){if(void 0===d&&!(u in e))return!1}else{var h=new r;if(a)var A=a(d,p,u,e,t,h);if(!(void 0===A?o(p,d,3,a,h):A))return!1}}return!0}},1903:e=>{e.exports=function(e){return e!=e}},5027:(e,t,n)=>{var r=n(3314),o=n(9592),a=n(6901),i=n(649),s=/^\[object .+?Constructor\]$/,l=Function.prototype,c=Object.prototype,u=l.toString,d=c.hasOwnProperty,p=RegExp("^"+u.call(d).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!a(e)||o(e))&&(r(e)?p:s).test(i(e))}},5774:(e,t,n)=>{var r=n(2909),o=n(6082);e.exports=function(e){return o(e)&&"[object Set]"==r(e)}},1517:(e,t,n)=>{var r=n(9360),o=n(3150),a=n(6082),i={};i["[object Float32Array]"]=i["[object Float64Array]"]=i["[object Int8Array]"]=i["[object Int16Array]"]=i["[object Int32Array]"]=i["[object Uint8Array]"]=i["[object Uint8ClampedArray]"]=i["[object Uint16Array]"]=i["[object Uint32Array]"]=!0,i["[object Arguments]"]=i["[object Array]"]=i["[object ArrayBuffer]"]=i["[object Boolean]"]=i["[object DataView]"]=i["[object Date]"]=i["[object Error]"]=i["[object Function]"]=i["[object Map]"]=i["[object Number]"]=i["[object Object]"]=i["[object RegExp]"]=i["[object Set]"]=i["[object String]"]=i["[object WeakMap]"]=!1,e.exports=function(e){return a(e)&&o(e.length)&&!!i[r(e)]}},8757:(e,t,n)=>{var r=n(7335),o=n(962),a=n(9064),i=n(7321),s=n(8175);e.exports=function(e){return"function"==typeof e?e:null==e?a:"object"==typeof e?i(e)?o(e[0],e[1]):r(e):s(e)}},5440:(e,t,n)=>{var r=n(4767),o=n(2650),a=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return o(e);var t=[];for(var n in Object(e))a.call(e,n)&&"constructor"!=n&&t.push(n);return t}},735:(e,t,n)=>{var r=n(6901),o=n(4767),a=n(6445),i=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return a(e);var t=o(e),n=[];for(var s in e)("constructor"!=s||!t&&i.call(e,s))&&n.push(s);return n}},4248:e=>{e.exports=function(e,t){return e<t}},2560:(e,t,n)=>{var r=n(6613),o=n(6518);e.exports=function(e,t){var n=-1,a=o(e)?Array(e.length):[];return r(e,(function(e,r,o){a[++n]=t(e,r,o)})),a}},7335:(e,t,n)=>{var r=n(4719),o=n(8208),a=n(4981);e.exports=function(e){var t=o(e);return 1==t.length&&t[0][2]?a(t[0][0],t[0][1]):function(n){return n===e||r(n,e,t)}}},962:(e,t,n)=>{var r=n(1206),o=n(4548),a=n(1804),i=n(8226),s=n(1628),l=n(4981),c=n(7581);e.exports=function(e,t){return i(e)&&s(t)?l(c(e),t):function(n){var i=o(n,e);return void 0===i&&i===t?a(n,e):r(t,i,3)}}},7866:(e,t,n)=>{var r=n(4265),o=n(5861),a=n(4257),i=n(7584),s=n(6901),l=n(9905),c=n(6246);e.exports=function e(t,n,u,d,p){t!==n&&a(n,(function(a,l){if(p||(p=new r),s(a))i(t,n,l,u,e,d,p);else{var h=d?d(c(t,l),a,l+"",t,n,p):void 0;void 0===h&&(h=a),o(t,l,h)}}),l)}},7584:(e,t,n)=>{var r=n(5861),o=n(5154),a=n(5137),i=n(1943),s=n(2286),l=n(5668),c=n(7321),u=n(2133),d=n(7555),p=n(3314),h=n(6901),A=n(6923),f=n(7415),g=n(6246),m=n(6436);e.exports=function(e,t,n,C,b,v,y){var x=g(e,n),w=g(t,n),M=y.get(w);if(M)r(e,n,M);else{var k=v?v(x,w,n+"",e,t,y):void 0,N=void 0===k;if(N){var _=c(w),S=!_&&d(w),L=!_&&!S&&f(w);k=w,_||S||L?c(x)?k=x:u(x)?k=i(x):S?(N=!1,k=o(w,!0)):L?(N=!1,k=a(w,!0)):k=[]:A(w)||l(w)?(k=x,l(x)?k=m(x):h(x)&&!p(x)||(k=s(w))):N=!1}N&&(y.set(w,k),b(k,w,C,v,y),y.delete(w)),r(e,n,k)}}},2499:(e,t,n)=>{var r=n(12),o=n(6934),a=n(8757),i=n(2560),s=n(9401),l=n(1117),c=n(8234),u=n(9064),d=n(7321);e.exports=function(e,t,n){t=t.length?r(t,(function(e){return d(e)?function(t){return o(t,1===e.length?e[0]:e)}:e})):[u];var p=-1;t=r(t,l(a));var h=i(e,(function(e,n,o){return{criteria:r(t,(function(t){return t(e)})),index:++p,value:e}}));return s(h,(function(e,t){return c(e,t,n)}))}},105:(e,t,n)=>{var r=n(1236),o=n(1804);e.exports=function(e,t){return r(e,t,(function(t,n){return o(e,n)}))}},1236:(e,t,n)=>{var r=n(6934),o=n(9578),a=n(8033);e.exports=function(e,t,n){for(var i=-1,s=t.length,l={};++i<s;){var c=t[i],u=r(e,c);n(u,c)&&o(l,a(c,e),u)}return l}},1197:e=>{e.exports=function(e){return function(t){return null==t?void 0:t[e]}}},2415:(e,t,n)=>{var r=n(6934);e.exports=function(e){return function(t){return r(t,e)}}},1855:e=>{var t=Math.ceil,n=Math.max;e.exports=function(e,r,o,a){for(var i=-1,s=n(t((r-e)/(o||1)),0),l=Array(s);s--;)l[a?s:++i]=e,e+=o;return l}},2542:e=>{e.exports=function(e,t,n,r,o){return o(e,(function(e,o,a){n=r?(r=!1,e):t(n,e,o,a)})),n}},9342:(e,t,n)=>{var r=n(9064),o=n(7837),a=n(4969);e.exports=function(e,t){return a(o(e,t,r),e+"")}},9578:(e,t,n)=>{var r=n(6347),o=n(8033),a=n(5233),i=n(6901),s=n(7581);e.exports=function(e,t,n,l){if(!i(e))return e;for(var c=-1,u=(t=o(t,e)).length,d=u-1,p=e;null!=p&&++c<u;){var h=s(t[c]),A=n;if("__proto__"===h||"constructor"===h||"prototype"===h)return e;if(c!=d){var f=p[h];void 0===(A=l?l(f,h,p):void 0)&&(A=i(f)?f:a(t[c+1])?[]:{})}r(p,h,A),p=p[h]}return e}},1978:(e,t,n)=>{var r=n(9566),o=n(2691),a=n(9064),i=o?function(e,t){return o(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:a;e.exports=i},9401:e=>{e.exports=function(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}},7960:e=>{e.exports=function(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}},9084:(e,t,n)=>{var r=n(265),o=n(12),a=n(7321),i=n(7218),s=r?r.prototype:void 0,l=s?s.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(a(t))return o(t,e)+"";if(i(t))return l?l.call(t):"";var n=t+"";return"0"==n&&1/t==-1/0?"-0":n}},9272:(e,t,n)=>{var r=n(1888),o=/^\s+/;e.exports=function(e){return e?e.slice(0,r(e)+1).replace(o,""):e}},1117:e=>{e.exports=function(e){return function(t){return e(t)}}},7165:(e,t,n)=>{var r=n(7411),o=n(2197),a=n(873),i=n(843),s=n(1005),l=n(9423);e.exports=function(e,t,n){var c=-1,u=o,d=e.length,p=!0,h=[],A=h;if(n)p=!1,u=a;else if(d>=200){var f=t?null:s(e);if(f)return l(f);p=!1,u=i,A=new r}else A=t?[]:h;e:for(;++c<d;){var g=e[c],m=t?t(g):g;if(g=n||0!==g?g:0,p&&m==m){for(var C=A.length;C--;)if(A[C]===m)continue e;t&&A.push(m),h.push(g)}else u(A,m,n)||(A!==h&&A.push(m),h.push(g))}return h}},6874:(e,t,n)=>{var r=n(12);e.exports=function(e,t){return r(t,(function(t){return e[t]}))}},7818:e=>{e.exports=function(e,t,n){for(var r=-1,o=e.length,a=t.length,i={};++r<o;){var s=r<a?t[r]:void 0;n(i,e[r],s)}return i}},843:e=>{e.exports=function(e,t){return e.has(t)}},7018:(e,t,n)=>{var r=n(9064);e.exports=function(e){return"function"==typeof e?e:r}},8033:(e,t,n)=>{var r=n(7321),o=n(8226),a=n(4866),i=n(6590);e.exports=function(e,t){return r(e)?e:o(e,t)?[e]:a(i(e))}},7197:(e,t,n)=>{var r=n(7004);e.exports=function(e){var t=new e.constructor(e.byteLength);return new r(t).set(new r(e)),t}},5154:(e,t,n)=>{e=n.nmd(e);var r=n(8357),o=t&&!t.nodeType&&t,a=o&&e&&!e.nodeType&&e,i=a&&a.exports===o?r.Buffer:void 0,s=i?i.allocUnsafe:void 0;e.exports=function(e,t){if(t)return e.slice();var n=e.length,r=s?s(n):new e.constructor(n);return e.copy(r),r}},3233:(e,t,n)=>{var r=n(7197);e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}},2233:e=>{var t=/\w*$/;e.exports=function(e){var n=new e.constructor(e.source,t.exec(e));return n.lastIndex=e.lastIndex,n}},6688:(e,t,n)=>{var r=n(265),o=r?r.prototype:void 0,a=o?o.valueOf:void 0;e.exports=function(e){return a?Object(a.call(e)):{}}},5137:(e,t,n)=>{var r=n(7197);e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}},7274:(e,t,n)=>{var r=n(7218);e.exports=function(e,t){if(e!==t){var n=void 0!==e,o=null===e,a=e==e,i=r(e),s=void 0!==t,l=null===t,c=t==t,u=r(t);if(!l&&!u&&!i&&e>t||i&&s&&c&&!l&&!u||o&&s&&c||!n&&c||!a)return 1;if(!o&&!i&&!u&&e<t||u&&n&&a&&!o&&!i||l&&n&&a||!s&&a||!c)return-1}return 0}},8234:(e,t,n)=>{var r=n(7274);e.exports=function(e,t,n){for(var o=-1,a=e.criteria,i=t.criteria,s=a.length,l=n.length;++o<s;){var c=r(a[o],i[o]);if(c)return o>=l?c:c*("desc"==n[o]?-1:1)}return e.index-t.index}},1943:e=>{e.exports=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}},6311:(e,t,n)=>{var r=n(6347),o=n(5352);e.exports=function(e,t,n,a){var i=!n;n||(n={});for(var s=-1,l=t.length;++s<l;){var c=t[s],u=a?a(n[c],e[c],c,n,e):void 0;void 0===u&&(u=e[c]),i?o(n,c,u):r(n,c,u)}return n}},5095:(e,t,n)=>{var r=n(6311),o=n(6416);e.exports=function(e,t){return r(e,o(e),t)}},7036:(e,t,n)=>{var r=n(6311),o=n(1711);e.exports=function(e,t){return r(e,o(e),t)}},9393:(e,t,n)=>{var r=n(8357)["__core-js_shared__"];e.exports=r},3695:(e,t,n)=>{var r=n(9342),o=n(1688);e.exports=function(e){return r((function(t,n){var r=-1,a=n.length,i=a>1?n[a-1]:void 0,s=a>2?n[2]:void 0;for(i=e.length>3&&"function"==typeof i?(a--,i):void 0,s&&o(n[0],n[1],s)&&(i=a<3?void 0:i,a=1),t=Object(t);++r<a;){var l=n[r];l&&e(t,l,r,i)}return t}))}},3873:(e,t,n)=>{var r=n(6518);e.exports=function(e,t){return function(n,o){if(null==n)return n;if(!r(n))return e(n,o);for(var a=n.length,i=t?a:-1,s=Object(n);(t?i--:++i<a)&&!1!==o(s[i],i,s););return n}}},8013:e=>{e.exports=function(e){return function(t,n,r){for(var o=-1,a=Object(t),i=r(t),s=i.length;s--;){var l=i[e?s:++o];if(!1===n(a[l],l,a))break}return t}}},270:(e,t,n)=>{var r=n(8757),o=n(6518),a=n(5782);e.exports=function(e){return function(t,n,i){var s=Object(t);if(!o(t)){var l=r(n,3);t=a(t),n=function(e){return l(s[e],e,s)}}var c=e(t,n,i);return c>-1?s[l?t[c]:c]:void 0}}},7340:(e,t,n)=>{var r=n(1855),o=n(1688),a=n(1792);e.exports=function(e){return function(t,n,i){return i&&"number"!=typeof i&&o(t,n,i)&&(n=i=void 0),t=a(t),void 0===n?(n=t,t=0):n=a(n),i=void 0===i?t<n?1:-1:a(i),r(t,n,i,e)}}},1005:(e,t,n)=>{var r=n(8617),o=n(9529),a=n(9423),i=r&&1/a(new r([,-0]))[1]==1/0?function(e){return new r(e)}:o;e.exports=i},2691:(e,t,n)=>{var r=n(4086),o=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();e.exports=o},9919:(e,t,n)=>{var r=n(7411),o=n(4304),a=n(843);e.exports=function(e,t,n,i,s,l){var c=1&n,u=e.length,d=t.length;if(u!=d&&!(c&&d>u))return!1;var p=l.get(e),h=l.get(t);if(p&&h)return p==t&&h==e;var A=-1,f=!0,g=2&n?new r:void 0;for(l.set(e,t),l.set(t,e);++A<u;){var m=e[A],C=t[A];if(i)var b=c?i(C,m,A,t,e,l):i(m,C,A,e,t,l);if(void 0!==b){if(b)continue;f=!1;break}if(g){if(!o(t,(function(e,t){if(!a(g,t)&&(m===e||s(m,e,n,i,l)))return g.push(t)}))){f=!1;break}}else if(m!==C&&!s(m,C,n,i,l)){f=!1;break}}return l.delete(e),l.delete(t),f}},5706:(e,t,n)=>{var r=n(265),o=n(7004),a=n(240),i=n(9919),s=n(8722),l=n(9423),c=r?r.prototype:void 0,u=c?c.valueOf:void 0;e.exports=function(e,t,n,r,c,d,p){switch(n){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!d(new o(e),new o(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return a(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var h=s;case"[object Set]":var A=1&r;if(h||(h=l),e.size!=t.size&&!A)return!1;var f=p.get(e);if(f)return f==t;r|=2,p.set(e,t);var g=i(h(e),h(t),r,c,d,p);return p.delete(e),g;case"[object Symbol]":if(u)return u.call(e)==u.call(t)}return!1}},857:(e,t,n)=>{var r=n(9322),o=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,a,i,s){var l=1&n,c=r(e),u=c.length;if(u!=r(t).length&&!l)return!1;for(var d=u;d--;){var p=c[d];if(!(l?p in t:o.call(t,p)))return!1}var h=s.get(e),A=s.get(t);if(h&&A)return h==t&&A==e;var f=!0;s.set(e,t),s.set(t,e);for(var g=l;++d<u;){var m=e[p=c[d]],C=t[p];if(a)var b=l?a(C,m,p,t,e,s):a(m,C,p,e,t,s);if(!(void 0===b?m===C||i(m,C,n,a,s):b)){f=!1;break}g||(g="constructor"==p)}if(f&&!g){var v=e.constructor,y=t.constructor;v==y||!("constructor"in e)||!("constructor"in t)||"function"==typeof v&&v instanceof v&&"function"==typeof y&&y instanceof y||(f=!1)}return s.delete(e),s.delete(t),f}},5544:(e,t,n)=>{var r=n(1386),o=n(7837),a=n(4969);e.exports=function(e){return a(o(e,void 0,r),e+"")}},2704:(e,t,n)=>{var r="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;e.exports=r},9322:(e,t,n)=>{var r=n(8047),o=n(6416),a=n(5782);e.exports=function(e){return r(e,a,o)}},5469:(e,t,n)=>{var r=n(8047),o=n(1711),a=n(9905);e.exports=function(e){return r(e,a,o)}},8899:(e,t,n)=>{var r=n(2962);e.exports=function(e,t){var n=e.__data__;return r(t)?n["string"==typeof t?"string":"hash"]:n.map}},8208:(e,t,n)=>{var r=n(1628),o=n(5782);e.exports=function(e){for(var t=o(e),n=t.length;n--;){var a=t[n],i=e[a];t[n]=[a,i,r(i)]}return t}},4086:(e,t,n)=>{var r=n(5027),o=n(9936);e.exports=function(e,t){var n=o(e,t);return r(n)?n:void 0}},1719:(e,t,n)=>{var r=n(231)(Object.getPrototypeOf,Object);e.exports=r},9083:(e,t,n)=>{var r=n(265),o=Object.prototype,a=o.hasOwnProperty,i=o.toString,s=r?r.toStringTag:void 0;e.exports=function(e){var t=a.call(e,s),n=e[s];try{e[s]=void 0;var r=!0}catch(e){}var o=i.call(e);return r&&(t?e[s]=n:delete e[s]),o}},6416:(e,t,n)=>{var r=n(2994),o=n(6313),a=Object.prototype.propertyIsEnumerable,i=Object.getOwnPropertySymbols,s=i?function(e){return null==e?[]:(e=Object(e),r(i(e),(function(t){return a.call(e,t)})))}:o;e.exports=s},1711:(e,t,n)=>{var r=n(7592),o=n(1719),a=n(6416),i=n(6313),s=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)r(t,a(e)),e=o(e);return t}:i;e.exports=s},2909:(e,t,n)=>{var r=n(9892),o=n(7063),a=n(908),i=n(8617),s=n(9591),l=n(9360),c=n(649),u="[object Map]",d="[object Promise]",p="[object Set]",h="[object WeakMap]",A="[object DataView]",f=c(r),g=c(o),m=c(a),C=c(i),b=c(s),v=l;(r&&v(new r(new ArrayBuffer(1)))!=A||o&&v(new o)!=u||a&&v(a.resolve())!=d||i&&v(new i)!=p||s&&v(new s)!=h)&&(v=function(e){var t=l(e),n="[object Object]"==t?e.constructor:void 0,r=n?c(n):"";if(r)switch(r){case f:return A;case g:return u;case m:return d;case C:return p;case b:return h}return t}),e.exports=v},9936:e=>{e.exports=function(e,t){return null==e?void 0:e[t]}},8534:(e,t,n)=>{var r=n(8033),o=n(5668),a=n(7321),i=n(5233),s=n(3150),l=n(7581);e.exports=function(e,t,n){for(var c=-1,u=(t=r(t,e)).length,d=!1;++c<u;){var p=l(t[c]);if(!(d=null!=e&&n(e,p)))break;e=e[p]}return d||++c!=u?d:!!(u=null==e?0:e.length)&&s(u)&&i(p,u)&&(a(e)||o(e))}},3325:e=>{var t=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");e.exports=function(e){return t.test(e)}},3320:(e,t,n)=>{var r=n(218);e.exports=function(){this.__data__=r?r(null):{},this.size=0}},7934:e=>{e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},73:(e,t,n)=>{var r=n(218),o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(r){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return o.call(t,e)?t[e]:void 0}},9093:(e,t,n)=>{var r=n(218),o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:o.call(t,e)}},237:(e,t,n)=>{var r=n(218);e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=r&&void 0===t?"__lodash_hash_undefined__":t,this}},6677:e=>{var t=Object.prototype.hasOwnProperty;e.exports=function(e){var n=e.length,r=new e.constructor(n);return n&&"string"==typeof e[0]&&t.call(e,"index")&&(r.index=e.index,r.input=e.input),r}},935:(e,t,n)=>{var r=n(7197),o=n(3233),a=n(2233),i=n(6688),s=n(5137);e.exports=function(e,t,n){var l=e.constructor;switch(t){case"[object ArrayBuffer]":return r(e);case"[object Boolean]":case"[object Date]":return new l(+e);case"[object DataView]":return o(e,n);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return s(e,n);case"[object Map]":case"[object Set]":return new l;case"[object Number]":case"[object String]":return new l(e);case"[object RegExp]":return a(e);case"[object Symbol]":return i(e)}}},2286:(e,t,n)=>{var r=n(4360),o=n(1719),a=n(4767);e.exports=function(e){return"function"!=typeof e.constructor||a(e)?{}:r(o(e))}},9883:(e,t,n)=>{var r=n(265),o=n(5668),a=n(7321),i=r?r.isConcatSpreadable:void 0;e.exports=function(e){return a(e)||o(e)||!!(i&&e&&e[i])}},5233:e=>{var t=/^(?:0|[1-9]\d*)$/;e.exports=function(e,n){var r=typeof e;return!!(n=null==n?9007199254740991:n)&&("number"==r||"symbol"!=r&&t.test(e))&&e>-1&&e%1==0&&e<n}},1688:(e,t,n)=>{var r=n(240),o=n(6518),a=n(5233),i=n(6901);e.exports=function(e,t,n){if(!i(n))return!1;var s=typeof t;return!!("number"==s?o(n)&&a(t,n.length):"string"==s&&t in n)&&r(n[t],e)}},8226:(e,t,n)=>{var r=n(7321),o=n(7218),a=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,i=/^\w*$/;e.exports=function(e,t){if(r(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!o(e))||i.test(e)||!a.test(e)||null!=t&&e in Object(t)}},2962:e=>{e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},9592:(e,t,n)=>{var r,o=n(9393),a=(r=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";e.exports=function(e){return!!a&&a in e}},4767:e=>{var t=Object.prototype;e.exports=function(e){var n=e&&e.constructor;return e===("function"==typeof n&&n.prototype||t)}},1628:(e,t,n)=>{var r=n(6901);e.exports=function(e){return e==e&&!r(e)}},6318:e=>{e.exports=function(){this.__data__=[],this.size=0}},6760:(e,t,n)=>{var r=n(7361),o=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0||(n==t.length-1?t.pop():o.call(t,n,1),--this.size,0))}},2603:(e,t,n)=>{var r=n(7361);e.exports=function(e){var t=this.__data__,n=r(t,e);return n<0?void 0:t[n][1]}},8583:(e,t,n)=>{var r=n(7361);e.exports=function(e){return r(this.__data__,e)>-1}},7743:(e,t,n)=>{var r=n(7361);e.exports=function(e,t){var n=this.__data__,o=r(n,e);return o<0?(++this.size,n.push([e,t])):n[o][1]=t,this}},7672:(e,t,n)=>{var r=n(2821),o=n(7031),a=n(7063);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(a||o),string:new r}}},5310:(e,t,n)=>{var r=n(8899);e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},233:(e,t,n)=>{var r=n(8899);e.exports=function(e){return r(this,e).get(e)}},6341:(e,t,n)=>{var r=n(8899);e.exports=function(e){return r(this,e).has(e)}},605:(e,t,n)=>{var r=n(8899);e.exports=function(e,t){var n=r(this,e),o=n.size;return n.set(e,t),this.size+=n.size==o?0:1,this}},8722:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}},4981:e=>{e.exports=function(e,t){return function(n){return null!=n&&n[e]===t&&(void 0!==t||e in Object(n))}}},9384:(e,t,n)=>{var r=n(4336);e.exports=function(e){var t=r(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}},218:(e,t,n)=>{var r=n(4086)(Object,"create");e.exports=r},2650:(e,t,n)=>{var r=n(231)(Object.keys,Object);e.exports=r},6445:e=>{e.exports=function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t}},6817:(e,t,n)=>{e=n.nmd(e);var r=n(2704),o=t&&!t.nodeType&&t,a=o&&e&&!e.nodeType&&e,i=a&&a.exports===o&&r.process,s=function(){try{return a&&a.require&&a.require("util").types||i&&i.binding&&i.binding("util")}catch(e){}}();e.exports=s},926:e=>{var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},231:e=>{e.exports=function(e,t){return function(n){return e(t(n))}}},7837:(e,t,n)=>{var r=n(6065),o=Math.max;e.exports=function(e,t,n){return t=o(void 0===t?e.length-1:t,0),function(){for(var a=arguments,i=-1,s=o(a.length-t,0),l=Array(s);++i<s;)l[i]=a[t+i];i=-1;for(var c=Array(t+1);++i<t;)c[i]=a[i];return c[t]=n(l),r(e,this,c)}}},8357:(e,t,n)=>{var r=n(2704),o="object"==typeof self&&self&&self.Object===Object&&self,a=r||o||Function("return this")();e.exports=a},6246:e=>{e.exports=function(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}},5004:e=>{e.exports=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}},1995:e=>{e.exports=function(e){return this.__data__.has(e)}},9423:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}},4969:(e,t,n)=>{var r=n(1978),o=n(4459)(r);e.exports=o},4459:e=>{var t=Date.now;e.exports=function(e){var n=0,r=0;return function(){var o=t(),a=16-(o-r);if(r=o,a>0){if(++n>=800)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}},1812:(e,t,n)=>{var r=n(7031);e.exports=function(){this.__data__=new r,this.size=0}},6018:e=>{e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},429:e=>{e.exports=function(e){return this.__data__.get(e)}},9297:e=>{e.exports=function(e){return this.__data__.has(e)}},57:(e,t,n)=>{var r=n(7031),o=n(7063),a=n(1093);e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var i=n.__data__;if(!o||i.length<199)return i.push([e,t]),this.size=++n.size,this;n=this.__data__=new a(i)}return n.set(e,t),this.size=n.size,this}},3319:e=>{e.exports=function(e,t,n){for(var r=n-1,o=e.length;++r<o;)if(e[r]===t)return r;return-1}},7281:(e,t,n)=>{var r=n(9947),o=n(3325),a=n(8351);e.exports=function(e){return o(e)?a(e):r(e)}},4866:(e,t,n)=>{var r=n(9384),o=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,a=/\\(\\)?/g,i=r((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(o,(function(e,n,r,o){t.push(r?o.replace(a,"$1"):n||e)})),t}));e.exports=i},7581:(e,t,n)=>{var r=n(7218);e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}},649:e=>{var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(e){}try{return e+""}catch(e){}}return""}},1888:e=>{var t=/\s/;e.exports=function(e){for(var n=e.length;n--&&t.test(e.charAt(n)););return n}},8351:e=>{var t="\\ud800-\\udfff",n="["+t+"]",r="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",o="\\ud83c[\\udffb-\\udfff]",a="[^"+t+"]",i="(?:\\ud83c[\\udde6-\\uddff]){2}",s="[\\ud800-\\udbff][\\udc00-\\udfff]",l="(?:"+r+"|"+o+")?",c="[\\ufe0e\\ufe0f]?",u=c+l+"(?:\\u200d(?:"+[a,i,s].join("|")+")"+c+l+")*",d="(?:"+[a+r+"?",r,i,s,n].join("|")+")",p=RegExp(o+"(?="+o+")|"+d+u,"g");e.exports=function(e){for(var t=p.lastIndex=0;p.test(e);)++t;return t}},5981:(e,t,n)=>{var r=n(1700);e.exports=function(e){return r(e,4)}},5263:(e,t,n)=>{var r=n(1700);e.exports=function(e){return r(e,5)}},9566:e=>{e.exports=function(e){return function(){return e}}},8276:(e,t,n)=>{var r=n(9342),o=n(240),a=n(1688),i=n(9905),s=Object.prototype,l=s.hasOwnProperty,c=r((function(e,t){e=Object(e);var n=-1,r=t.length,c=r>2?t[2]:void 0;for(c&&a(t[0],t[1],c)&&(r=1);++n<r;)for(var u=t[n],d=i(u),p=-1,h=d.length;++p<h;){var A=d[p],f=e[A];(void 0===f||o(f,s[A])&&!l.call(e,A))&&(e[A]=u[A])}return e}));e.exports=c},5279:(e,t,n)=>{e.exports=n(5362)},240:e=>{e.exports=function(e,t){return e===t||e!=e&&t!=t}},8820:(e,t,n)=>{var r=n(2994),o=n(9974),a=n(8757),i=n(7321);e.exports=function(e,t){return(i(e)?r:o)(e,a(t,3))}},2933:(e,t,n)=>{var r=n(270)(n(9777));e.exports=r},9777:(e,t,n)=>{var r=n(6195),o=n(8757),a=n(7097),i=Math.max;e.exports=function(e,t,n){var s=null==e?0:e.length;if(!s)return-1;var l=null==n?0:a(n);return l<0&&(l=i(s+l,0)),r(e,o(t,3),l)}},1386:(e,t,n)=>{var r=n(5144);e.exports=function(e){return null!=e&&e.length?r(e,1):[]}},5362:(e,t,n)=>{var r=n(7945),o=n(6613),a=n(7018),i=n(7321);e.exports=function(e,t){return(i(e)?r:o)(e,a(t))}},5692:(e,t,n)=>{var r=n(4257),o=n(7018),a=n(9905);e.exports=function(e,t){return null==e?e:r(e,o(t),a)}},4548:(e,t,n)=>{var r=n(6934);e.exports=function(e,t,n){var o=null==e?void 0:r(e,t);return void 0===o?n:o}},9312:(e,t,n)=>{var r=n(7042),o=n(8534);e.exports=function(e,t){return null!=e&&o(e,t,r)}},1804:(e,t,n)=>{var r=n(2437),o=n(8534);e.exports=function(e,t){return null!=e&&o(e,t,r)}},9064:e=>{e.exports=function(e){return e}},5668:(e,t,n)=>{var r=n(1974),o=n(6082),a=Object.prototype,i=a.hasOwnProperty,s=a.propertyIsEnumerable,l=r(function(){return arguments}())?r:function(e){return o(e)&&i.call(e,"callee")&&!s.call(e,"callee")};e.exports=l},7321:e=>{var t=Array.isArray;e.exports=t},6518:(e,t,n)=>{var r=n(3314),o=n(3150);e.exports=function(e){return null!=e&&o(e.length)&&!r(e)}},2133:(e,t,n)=>{var r=n(6518),o=n(6082);e.exports=function(e){return o(e)&&r(e)}},7555:(e,t,n)=>{e=n.nmd(e);var r=n(8357),o=n(1063),a=t&&!t.nodeType&&t,i=a&&e&&!e.nodeType&&e,s=i&&i.exports===a?r.Buffer:void 0,l=(s?s.isBuffer:void 0)||o;e.exports=l},1913:(e,t,n)=>{var r=n(5440),o=n(2909),a=n(5668),i=n(7321),s=n(6518),l=n(7555),c=n(4767),u=n(7415),d=Object.prototype.hasOwnProperty;e.exports=function(e){if(null==e)return!0;if(s(e)&&(i(e)||"string"==typeof e||"function"==typeof e.splice||l(e)||u(e)||a(e)))return!e.length;var t=o(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(c(e))return!r(e).length;for(var n in e)if(d.call(e,n))return!1;return!0}},3314:(e,t,n)=>{var r=n(9360),o=n(6901);e.exports=function(e){if(!o(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},3150:e=>{e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},1882:(e,t,n)=>{var r=n(3244),o=n(1117),a=n(6817),i=a&&a.isMap,s=i?o(i):r;e.exports=s},6901:e=>{e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},6082:e=>{e.exports=function(e){return null!=e&&"object"==typeof e}},6923:(e,t,n)=>{var r=n(9360),o=n(1719),a=n(6082),i=Function.prototype,s=Object.prototype,l=i.toString,c=s.hasOwnProperty,u=l.call(Object);e.exports=function(e){if(!a(e)||"[object Object]"!=r(e))return!1;var t=o(e);if(null===t)return!0;var n=c.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&l.call(n)==u}},3072:(e,t,n)=>{var r=n(5774),o=n(1117),a=n(6817),i=a&&a.isSet,s=i?o(i):r;e.exports=s},4063:(e,t,n)=>{var r=n(9360),o=n(7321),a=n(6082);e.exports=function(e){return"string"==typeof e||!o(e)&&a(e)&&"[object String]"==r(e)}},7218:(e,t,n)=>{var r=n(9360),o=n(6082);e.exports=function(e){return"symbol"==typeof e||o(e)&&"[object Symbol]"==r(e)}},7415:(e,t,n)=>{var r=n(1517),o=n(1117),a=n(6817),i=a&&a.isTypedArray,s=i?o(i):r;e.exports=s},9344:e=>{e.exports=function(e){return void 0===e}},5782:(e,t,n)=>{var r=n(8671),o=n(5440),a=n(6518);e.exports=function(e){return a(e)?r(e):o(e)}},9905:(e,t,n)=>{var r=n(8671),o=n(735),a=n(6518);e.exports=function(e){return a(e)?r(e,!0):o(e)}},7362:e=>{e.exports=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}},6938:(e,t,n)=>{var r=n(12),o=n(8757),a=n(2560),i=n(7321);e.exports=function(e,t){return(i(e)?r:a)(e,o(t,3))}},948:(e,t,n)=>{var r=n(5352),o=n(2169),a=n(8757);e.exports=function(e,t){var n={};return t=a(t,3),o(e,(function(e,o,a){r(n,o,t(e,o,a))})),n}},7810:(e,t,n)=>{var r=n(535),o=n(9247),a=n(9064);e.exports=function(e){return e&&e.length?r(e,a,o):void 0}},4336:(e,t,n)=>{var r=n(1093);function o(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var r=arguments,o=t?t.apply(this,r):r[0],a=n.cache;if(a.has(o))return a.get(o);var i=e.apply(this,r);return n.cache=a.set(o,i)||a,i};return n.cache=new(o.Cache||r),n}o.Cache=r,e.exports=o},6652:(e,t,n)=>{var r=n(7866),o=n(3695)((function(e,t,n){r(e,t,n)}));e.exports=o},6956:(e,t,n)=>{var r=n(535),o=n(4248),a=n(9064);e.exports=function(e){return e&&e.length?r(e,a,o):void 0}},45:(e,t,n)=>{var r=n(535),o=n(8757),a=n(4248);e.exports=function(e,t){return e&&e.length?r(e,o(t,2),a):void 0}},9529:e=>{e.exports=function(){}},1940:(e,t,n)=>{var r=n(8357);e.exports=function(){return r.Date.now()}},1815:(e,t,n)=>{var r=n(105),o=n(5544)((function(e,t){return null==e?{}:r(e,t)}));e.exports=o},8175:(e,t,n)=>{var r=n(1197),o=n(2415),a=n(8226),i=n(7581);e.exports=function(e){return a(e)?r(i(e)):o(e)}},3333:(e,t,n)=>{var r=n(7340)();e.exports=r},84:(e,t,n)=>{var r=n(3898),o=n(6613),a=n(8757),i=n(2542),s=n(7321);e.exports=function(e,t,n){var l=s(e)?r:i,c=arguments.length<3;return l(e,a(t,4),n,c,o)}},267:(e,t,n)=>{var r=n(5440),o=n(2909),a=n(6518),i=n(4063),s=n(7281);e.exports=function(e){if(null==e)return 0;if(a(e))return i(e)?s(e):e.length;var t=o(e);return"[object Map]"==t||"[object Set]"==t?e.size:r(e).length}},3503:(e,t,n)=>{var r=n(5144),o=n(2499),a=n(9342),i=n(1688),s=a((function(e,t){if(null==e)return[];var n=t.length;return n>1&&i(e,t[0],t[1])?t=[]:n>2&&i(t[0],t[1],t[2])&&(t=[t[0]]),o(e,r(t,1),[])}));e.exports=s},6313:e=>{e.exports=function(){return[]}},1063:e=>{e.exports=function(){return!1}},1792:(e,t,n)=>{var r=n(8966),o=1/0;e.exports=function(e){return e?(e=r(e))===o||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}},7097:(e,t,n)=>{var r=n(1792);e.exports=function(e){var t=r(e),n=t%1;return t==t?n?t-n:t:0}},8966:(e,t,n)=>{var r=n(9272),o=n(6901),a=n(7218),i=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,l=/^0o[0-7]+$/i,c=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(a(e))return NaN;if(o(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=o(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=s.test(e);return n||l.test(e)?c(e.slice(2),n?2:8):i.test(e)?NaN:+e}},6436:(e,t,n)=>{var r=n(6311),o=n(9905);e.exports=function(e){return r(e,o(e))}},6590:(e,t,n)=>{var r=n(9084);e.exports=function(e){return null==e?"":r(e)}},8336:(e,t,n)=>{var r=n(7945),o=n(4360),a=n(2169),i=n(8757),s=n(1719),l=n(7321),c=n(7555),u=n(3314),d=n(6901),p=n(7415);e.exports=function(e,t,n){var h=l(e),A=h||c(e)||p(e);if(t=i(t,4),null==n){var f=e&&e.constructor;n=A?h?new f:[]:d(e)&&u(f)?o(s(e)):{}}return(A?r:a)(e,(function(e,r,o){return t(n,e,r,o)})),n}},9715:(e,t,n)=>{var r=n(5144),o=n(9342),a=n(7165),i=n(2133),s=o((function(e){return a(r(e,1,i,!0))}));e.exports=s},1304:(e,t,n)=>{var r=n(6590),o=0;e.exports=function(e){var t=++o;return r(e)+t}},5872:(e,t,n)=>{var r=n(6874),o=n(5782);e.exports=function(e){return null==e?[]:r(e,o(e))}},8200:(e,t,n)=>{var r=n(6347),o=n(7818);e.exports=function(e,t){return o(e||[],t||[],r)}},772:e=>{"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,o){for(var a,i,s=function(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(e),l=1;l<arguments.length;l++){for(var c in a=Object(arguments[l]))n.call(a,c)&&(s[c]=a[c]);if(t){i=t(a);for(var u=0;u<i.length;u++)r.call(a,i[u])&&(s[i[u]]=a[i[u]])}}return s}},878:(e,t,n)=>{"use strict";var r=n(8565);function o(){}function a(){}a.resetWarningCache=o,e.exports=function(){function e(e,t,n,o,a,i){if(i!==r){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:a,resetWarningCache:o};return n.PropTypes=n,n}},764:(e,t,n)=>{e.exports=n(878)()},8565:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},3903:(e,t,n)=>{"use strict";var r=n(7460),o=n(772),a=n(9798);function i(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}if(!r)throw Error(i(227));var s=new Set,l={};function c(e,t){u(e,t),u(e+"Capture",t)}function u(e,t){for(l[e]=t,e=0;e<t.length;e++)s.add(t[e])}var d=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),p=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,h=Object.prototype.hasOwnProperty,A={},f={};function g(e,t,n,r,o,a,i){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=r,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=a,this.removeEmptyString=i}var m={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e){m[e]=new g(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((function(e){var t=e[0];m[t]=new g(t,1,!1,e[1],null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((function(e){m[e]=new g(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((function(e){m[e]=new g(e,2,!1,e,null,!1,!1)})),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach((function(e){m[e]=new g(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((function(e){m[e]=new g(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((function(e){m[e]=new g(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((function(e){m[e]=new g(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((function(e){m[e]=new g(e,5,!1,e.toLowerCase(),null,!1,!1)}));var C=/[\-:]([a-z])/g;function b(e){return e[1].toUpperCase()}function v(e,t,n,r){var o=m.hasOwnProperty(t)?m[t]:null;(null!==o?0===o.type:!r&&2<t.length&&("o"===t[0]||"O"===t[0])&&("n"===t[1]||"N"===t[1]))||(function(e,t,n,r){if(null==t||function(e,t,n,r){if(null!==n&&0===n.type)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return!r&&(null!==n?!n.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,t,n,r))return!0;if(r)return!1;if(null!==n)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}(t,n,o,r)&&(n=null),r||null===o?function(e){return!!h.call(f,e)||!h.call(A,e)&&(p.test(e)?f[e]=!0:(A[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):o.mustUseProperty?e[o.propertyName]=null===n?3!==o.type&&"":n:(t=o.attributeName,r=o.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(o=o.type)||4===o&&!0===n?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach((function(e){var t=e.replace(C,b);m[t]=new g(t,1,!1,e,null,!1,!1)})),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function(e){var t=e.replace(C,b);m[t]=new g(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((function(e){var t=e.replace(C,b);m[t]=new g(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((function(e){m[e]=new g(e,1,!1,e.toLowerCase(),null,!1,!1)})),m.xlinkHref=new g("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((function(e){m[e]=new g(e,1,!1,e.toLowerCase(),null,!0,!0)}));var y=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,x=60103,w=60106,M=60107,k=60108,N=60114,_=60109,S=60110,L=60112,B=60113,D=60120,I=60115,j=60116,E=60121,T=60128,O=60129,P=60130,z=60131;if("function"==typeof Symbol&&Symbol.for){var R=Symbol.for;x=R("react.element"),w=R("react.portal"),M=R("react.fragment"),k=R("react.strict_mode"),N=R("react.profiler"),_=R("react.provider"),S=R("react.context"),L=R("react.forward_ref"),B=R("react.suspense"),D=R("react.suspense_list"),I=R("react.memo"),j=R("react.lazy"),E=R("react.block"),R("react.scope"),T=R("react.opaque.id"),O=R("react.debug_trace_mode"),P=R("react.offscreen"),z=R("react.legacy_hidden")}var U,F="function"==typeof Symbol&&Symbol.iterator;function Y(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=F&&e[F]||e["@@iterator"])?e:null}function V(e){if(void 0===U)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);U=t&&t[1]||""}return"\n"+U+e}var G=!1;function W(e,t){if(!e||G)return"";G=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(t,[])}catch(e){var r=e}Reflect.construct(e,[],t)}else{try{t.call()}catch(e){r=e}e.call(t.prototype)}else{try{throw Error()}catch(e){r=e}e()}}catch(e){if(e&&r&&"string"==typeof e.stack){for(var o=e.stack.split("\n"),a=r.stack.split("\n"),i=o.length-1,s=a.length-1;1<=i&&0<=s&&o[i]!==a[s];)s--;for(;1<=i&&0<=s;i--,s--)if(o[i]!==a[s]){if(1!==i||1!==s)do{if(i--,0>--s||o[i]!==a[s])return"\n"+o[i].replace(" at new "," at ")}while(1<=i&&0<=s);break}}}finally{G=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?V(e):""}function H(e){switch(e.tag){case 5:return V(e.type);case 16:return V("Lazy");case 13:return V("Suspense");case 19:return V("SuspenseList");case 0:case 2:case 15:return W(e.type,!1);case 11:return W(e.type.render,!1);case 22:return W(e.type._render,!1);case 1:return W(e.type,!0);default:return""}}function Q(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case M:return"Fragment";case w:return"Portal";case N:return"Profiler";case k:return"StrictMode";case B:return"Suspense";case D:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case S:return(e.displayName||"Context")+".Consumer";case _:return(e._context.displayName||"Context")+".Provider";case L:var t=e.render;return t=t.displayName||t.name||"",e.displayName||(""!==t?"ForwardRef("+t+")":"ForwardRef");case I:return Q(e.type);case E:return Q(e._render);case j:t=e._payload,e=e._init;try{return Q(e(t))}catch(e){}}return null}function Z(e){switch(typeof e){case"boolean":case"number":case"object":case"string":case"undefined":return e;default:return""}}function q(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function X(e){e._valueTracker||(e._valueTracker=function(e){var t=q(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&void 0!==n&&"function"==typeof n.get&&"function"==typeof n.set){var o=n.get,a=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(e){r=""+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function J(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=q(e)?e.checked?"true":"false":e.value),(e=r)!==n&&(t.setValue(e),!0)}function K(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}function $(e,t){var n=t.checked;return o({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function ee(e,t){var n=null==t.defaultValue?"":t.defaultValue,r=null!=t.checked?t.checked:t.defaultChecked;n=Z(null!=t.value?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function te(e,t){null!=(t=t.checked)&&v(e,"checked",t,!1)}function ne(e,t){te(e,t);var n=Z(t.value),r=t.type;if(null!=n)"number"===r?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if("submit"===r||"reset"===r)return void e.removeAttribute("value");t.hasOwnProperty("value")?oe(e,t.type,n):t.hasOwnProperty("defaultValue")&&oe(e,t.type,Z(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function re(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!("submit"!==r&&"reset"!==r||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}""!==(n=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==n&&(e.name=n)}function oe(e,t,n){"number"===t&&K(e.ownerDocument)===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}function ae(e,t){return e=o({children:void 0},t),(t=function(e){var t="";return r.Children.forEach(e,(function(e){null!=e&&(t+=e)})),t}(t.children))&&(e.children=t),e}function ie(e,t,n,r){if(e=e.options,t){t={};for(var o=0;o<n.length;o++)t["$"+n[o]]=!0;for(n=0;n<e.length;n++)o=t.hasOwnProperty("$"+e[n].value),e[n].selected!==o&&(e[n].selected=o),o&&r&&(e[n].defaultSelected=!0)}else{for(n=""+Z(n),t=null,o=0;o<e.length;o++){if(e[o].value===n)return e[o].selected=!0,void(r&&(e[o].defaultSelected=!0));null!==t||e[o].disabled||(t=e[o])}null!==t&&(t.selected=!0)}}function se(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(i(91));return o({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function le(e,t){var n=t.value;if(null==n){if(n=t.children,t=t.defaultValue,null!=n){if(null!=t)throw Error(i(92));if(Array.isArray(n)){if(!(1>=n.length))throw Error(i(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:Z(n)}}function ce(e,t){var n=Z(t.value),r=Z(t.defaultValue);null!=n&&((n=""+n)!==e.value&&(e.value=n),null==t.defaultValue&&e.defaultValue!==n&&(e.defaultValue=n)),null!=r&&(e.defaultValue=""+r)}function ue(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}var de="http://www.w3.org/1999/xhtml";function pe(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function he(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?pe(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var Ae,fe,ge=(fe=function(e,t){if("http://www.w3.org/2000/svg"!==e.namespaceURI||"innerHTML"in e)e.innerHTML=t;else{for((Ae=Ae||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=Ae.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,n,r){MSApp.execUnsafeLocalFunction((function(){return fe(e,t)}))}:fe);function me(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}var Ce={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},be=["Webkit","ms","Moz","O"];function ve(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||Ce.hasOwnProperty(e)&&Ce[e]?(""+t).trim():t+"px"}function ye(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=0===n.indexOf("--"),o=ve(n,t[n],r);"float"===n&&(n="cssFloat"),r?e.setProperty(n,o):e[n]=o}}Object.keys(Ce).forEach((function(e){be.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Ce[t]=Ce[e]}))}));var xe=o({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function we(e,t){if(t){if(xe[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(i(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(i(60));if("object"!=typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(i(61))}if(null!=t.style&&"object"!=typeof t.style)throw Error(i(62))}}function Me(e,t){if(-1===e.indexOf("-"))return"string"==typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}function ke(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var Ne=null,_e=null,Se=null;function Le(e){if(e=to(e)){if("function"!=typeof Ne)throw Error(i(280));var t=e.stateNode;t&&(t=ro(t),Ne(e.stateNode,e.type,t))}}function Be(e){_e?Se?Se.push(e):Se=[e]:_e=e}function De(){if(_e){var e=_e,t=Se;if(Se=_e=null,Le(e),t)for(e=0;e<t.length;e++)Le(t[e])}}function Ie(e,t){return e(t)}function je(e,t,n,r,o){return e(t,n,r,o)}function Ee(){}var Te=Ie,Oe=!1,Pe=!1;function ze(){null===_e&&null===Se||(Ee(),De())}function Re(e,t){var n=e.stateNode;if(null===n)return null;var r=ro(n);if(null===r)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(r=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!r;break e;default:e=!1}if(e)return null;if(n&&"function"!=typeof n)throw Error(i(231,t,typeof n));return n}var Ue=!1;if(d)try{var Fe={};Object.defineProperty(Fe,"passive",{get:function(){Ue=!0}}),window.addEventListener("test",Fe,Fe),window.removeEventListener("test",Fe,Fe)}catch(fe){Ue=!1}function Ye(e,t,n,r,o,a,i,s,l){var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(e){this.onError(e)}}var Ve=!1,Ge=null,We=!1,He=null,Qe={onError:function(e){Ve=!0,Ge=e}};function Ze(e,t,n,r,o,a,i,s,l){Ve=!1,Ge=null,Ye.apply(Qe,arguments)}function qe(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{!!(1026&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function Xe(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&null!==(e=e.alternate)&&(t=e.memoizedState),null!==t)return t.dehydrated}return null}function Je(e){if(qe(e)!==e)throw Error(i(188))}function Ke(e,t){for(var n=e.alternate;null!==t;){if(t===e||t===n)return!0;t=t.return}return!1}var $e,et,tt,nt,rt=!1,ot=[],at=null,it=null,st=null,lt=new Map,ct=new Map,ut=[],dt="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function pt(e,t,n,r,o){return{blockedOn:e,domEventName:t,eventSystemFlags:16|n,nativeEvent:o,targetContainers:[r]}}function ht(e,t){switch(e){case"focusin":case"focusout":at=null;break;case"dragenter":case"dragleave":it=null;break;case"mouseover":case"mouseout":st=null;break;case"pointerover":case"pointerout":lt.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":ct.delete(t.pointerId)}}function At(e,t,n,r,o,a){return null===e||e.nativeEvent!==a?(e=pt(t,n,r,o,a),null!==t&&null!==(t=to(t))&&et(t),e):(e.eventSystemFlags|=r,t=e.targetContainers,null!==o&&-1===t.indexOf(o)&&t.push(o),e)}function ft(e){var t=eo(e.target);if(null!==t){var n=qe(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=Xe(n)))return e.blockedOn=t,void nt(e.lanePriority,(function(){a.unstable_runWithPriority(e.priority,(function(){tt(n)}))}))}else if(3===t&&n.stateNode.hydrate)return void(e.blockedOn=3===n.tag?n.stateNode.containerInfo:null)}e.blockedOn=null}function gt(e){if(null!==e.blockedOn)return!1;for(var t=e.targetContainers;0<t.length;){var n=Jt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n)return null!==(t=to(n))&&et(t),e.blockedOn=n,!1;t.shift()}return!0}function mt(e,t,n){gt(e)&&n.delete(t)}function Ct(){for(rt=!1;0<ot.length;){var e=ot[0];if(null!==e.blockedOn){null!==(e=to(e.blockedOn))&&$e(e);break}for(var t=e.targetContainers;0<t.length;){var n=Jt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n){e.blockedOn=n;break}t.shift()}null===e.blockedOn&&ot.shift()}null!==at&>(at)&&(at=null),null!==it&>(it)&&(it=null),null!==st&>(st)&&(st=null),lt.forEach(mt),ct.forEach(mt)}function bt(e,t){e.blockedOn===t&&(e.blockedOn=null,rt||(rt=!0,a.unstable_scheduleCallback(a.unstable_NormalPriority,Ct)))}function vt(e){function t(t){return bt(t,e)}if(0<ot.length){bt(ot[0],e);for(var n=1;n<ot.length;n++){var r=ot[n];r.blockedOn===e&&(r.blockedOn=null)}}for(null!==at&&bt(at,e),null!==it&&bt(it,e),null!==st&&bt(st,e),lt.forEach(t),ct.forEach(t),n=0;n<ut.length;n++)(r=ut[n]).blockedOn===e&&(r.blockedOn=null);for(;0<ut.length&&null===(n=ut[0]).blockedOn;)ft(n),null===n.blockedOn&&ut.shift()}function yt(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var xt={animationend:yt("Animation","AnimationEnd"),animationiteration:yt("Animation","AnimationIteration"),animationstart:yt("Animation","AnimationStart"),transitionend:yt("Transition","TransitionEnd")},wt={},Mt={};function kt(e){if(wt[e])return wt[e];if(!xt[e])return e;var t,n=xt[e];for(t in n)if(n.hasOwnProperty(t)&&t in Mt)return wt[e]=n[t];return e}d&&(Mt=document.createElement("div").style,"AnimationEvent"in window||(delete xt.animationend.animation,delete xt.animationiteration.animation,delete xt.animationstart.animation),"TransitionEvent"in window||delete xt.transitionend.transition);var Nt=kt("animationend"),_t=kt("animationiteration"),St=kt("animationstart"),Lt=kt("transitionend"),Bt=new Map,Dt=new Map,It=["abort","abort",Nt,"animationEnd",_t,"animationIteration",St,"animationStart","canplay","canPlay","canplaythrough","canPlayThrough","durationchange","durationChange","emptied","emptied","encrypted","encrypted","ended","ended","error","error","gotpointercapture","gotPointerCapture","load","load","loadeddata","loadedData","loadedmetadata","loadedMetadata","loadstart","loadStart","lostpointercapture","lostPointerCapture","playing","playing","progress","progress","seeking","seeking","stalled","stalled","suspend","suspend","timeupdate","timeUpdate",Lt,"transitionEnd","waiting","waiting"];function jt(e,t){for(var n=0;n<e.length;n+=2){var r=e[n],o=e[n+1];o="on"+(o[0].toUpperCase()+o.slice(1)),Dt.set(r,t),Bt.set(r,o),c(o,[r])}}(0,a.unstable_now)();var Et=8;function Tt(e){if(1&e)return Et=15,1;if(2&e)return Et=14,2;if(4&e)return Et=13,4;var t=24&e;return 0!==t?(Et=12,t):32&e?(Et=11,32):0!=(t=192&e)?(Et=10,t):256&e?(Et=9,256):0!=(t=3584&e)?(Et=8,t):4096&e?(Et=7,4096):0!=(t=4186112&e)?(Et=6,t):0!=(t=62914560&e)?(Et=5,t):67108864&e?(Et=4,67108864):134217728&e?(Et=3,134217728):0!=(t=805306368&e)?(Et=2,t):1073741824&e?(Et=1,1073741824):(Et=8,e)}function Ot(e,t){var n=e.pendingLanes;if(0===n)return Et=0;var r=0,o=0,a=e.expiredLanes,i=e.suspendedLanes,s=e.pingedLanes;if(0!==a)r=a,o=Et=15;else if(0!=(a=134217727&n)){var l=a&~i;0!==l?(r=Tt(l),o=Et):0!=(s&=a)&&(r=Tt(s),o=Et)}else 0!=(a=n&~i)?(r=Tt(a),o=Et):0!==s&&(r=Tt(s),o=Et);if(0===r)return 0;if(r=n&((0>(r=31-Yt(r))?0:1<<r)<<1)-1,0!==t&&t!==r&&!(t&i)){if(Tt(t),o<=Et)return t;Et=o}if(0!==(t=e.entangledLanes))for(e=e.entanglements,t&=r;0<t;)o=1<<(n=31-Yt(t)),r|=e[n],t&=~o;return r}function Pt(e){return 0!=(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function zt(e,t){switch(e){case 15:return 1;case 14:return 2;case 12:return 0===(e=Rt(24&~t))?zt(10,t):e;case 10:return 0===(e=Rt(192&~t))?zt(8,t):e;case 8:return 0===(e=Rt(3584&~t))&&0===(e=Rt(4186112&~t))&&(e=512),e;case 2:return 0===(t=Rt(805306368&~t))&&(t=268435456),t}throw Error(i(358,e))}function Rt(e){return e&-e}function Ut(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Ft(e,t,n){e.pendingLanes|=t;var r=t-1;e.suspendedLanes&=r,e.pingedLanes&=r,(e=e.eventTimes)[t=31-Yt(t)]=n}var Yt=Math.clz32?Math.clz32:function(e){return 0===e?32:31-(Vt(e)/Gt|0)|0},Vt=Math.log,Gt=Math.LN2,Wt=a.unstable_UserBlockingPriority,Ht=a.unstable_runWithPriority,Qt=!0;function Zt(e,t,n,r){Oe||Ee();var o=Xt,a=Oe;Oe=!0;try{je(o,e,t,n,r)}finally{(Oe=a)||ze()}}function qt(e,t,n,r){Ht(Wt,Xt.bind(null,e,t,n,r))}function Xt(e,t,n,r){var o;if(Qt)if((o=!(4&t))&&0<ot.length&&-1<dt.indexOf(e))e=pt(null,e,t,n,r),ot.push(e);else{var a=Jt(e,t,n,r);if(null===a)o&&ht(e,r);else{if(o){if(-1<dt.indexOf(e))return e=pt(a,e,t,n,r),void ot.push(e);if(function(e,t,n,r,o){switch(t){case"focusin":return at=At(at,e,t,n,r,o),!0;case"dragenter":return it=At(it,e,t,n,r,o),!0;case"mouseover":return st=At(st,e,t,n,r,o),!0;case"pointerover":var a=o.pointerId;return lt.set(a,At(lt.get(a)||null,e,t,n,r,o)),!0;case"gotpointercapture":return a=o.pointerId,ct.set(a,At(ct.get(a)||null,e,t,n,r,o)),!0}return!1}(a,e,t,n,r))return;ht(e,r)}jr(e,t,r,null,n)}}}function Jt(e,t,n,r){var o=ke(r);if(null!==(o=eo(o))){var a=qe(o);if(null===a)o=null;else{var i=a.tag;if(13===i){if(null!==(o=Xe(a)))return o;o=null}else if(3===i){if(a.stateNode.hydrate)return 3===a.tag?a.stateNode.containerInfo:null;o=null}else a!==o&&(o=null)}}return jr(e,t,r,o,n),null}var Kt=null,$t=null,en=null;function tn(){if(en)return en;var e,t,n=$t,r=n.length,o="value"in Kt?Kt.value:Kt.textContent,a=o.length;for(e=0;e<r&&n[e]===o[e];e++);var i=r-e;for(t=1;t<=i&&n[r-t]===o[a-t];t++);return en=o.slice(e,1<t?1-t:void 0)}function nn(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}function rn(){return!0}function on(){return!1}function an(e){function t(t,n,r,o,a){for(var i in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=o,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(i)&&(t=e[i],this[i]=t?t(o):o[i]);return this.isDefaultPrevented=(null!=o.defaultPrevented?o.defaultPrevented:!1===o.returnValue)?rn:on,this.isPropagationStopped=on,this}return o(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=rn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=rn)},persist:function(){},isPersistent:rn}),t}var sn,ln,cn,un={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},dn=an(un),pn=o({},un,{view:0,detail:0}),hn=an(pn),An=o({},pn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Nn,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==cn&&(cn&&"mousemove"===e.type?(sn=e.screenX-cn.screenX,ln=e.screenY-cn.screenY):ln=sn=0,cn=e),sn)},movementY:function(e){return"movementY"in e?e.movementY:ln}}),fn=an(An),gn=an(o({},An,{dataTransfer:0})),mn=an(o({},pn,{relatedTarget:0})),Cn=an(o({},un,{animationName:0,elapsedTime:0,pseudoElement:0})),bn=o({},un,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),vn=an(bn),yn=an(o({},un,{data:0})),xn={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},wn={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Mn={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function kn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=Mn[e])&&!!t[e]}function Nn(){return kn}var _n=o({},pn,{key:function(e){if(e.key){var t=xn[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=nn(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?wn[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Nn,charCode:function(e){return"keypress"===e.type?nn(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?nn(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),Sn=an(_n),Ln=an(o({},An,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Bn=an(o({},pn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Nn})),Dn=an(o({},un,{propertyName:0,elapsedTime:0,pseudoElement:0})),In=o({},An,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),jn=an(In),En=[9,13,27,32],Tn=d&&"CompositionEvent"in window,On=null;d&&"documentMode"in document&&(On=document.documentMode);var Pn=d&&"TextEvent"in window&&!On,zn=d&&(!Tn||On&&8<On&&11>=On),Rn=String.fromCharCode(32),Un=!1;function Fn(e,t){switch(e){case"keyup":return-1!==En.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Yn(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var Vn=!1,Gn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Wn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Gn[e.type]:"textarea"===t}function Hn(e,t,n,r){Be(r),0<(t=Tr(t,"onChange")).length&&(n=new dn("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Qn=null,Zn=null;function qn(e){_r(e,0)}function Xn(e){if(J(no(e)))return e}function Jn(e,t){if("change"===e)return t}var Kn=!1;if(d){var $n;if(d){var er="oninput"in document;if(!er){var tr=document.createElement("div");tr.setAttribute("oninput","return;"),er="function"==typeof tr.oninput}$n=er}else $n=!1;Kn=$n&&(!document.documentMode||9<document.documentMode)}function nr(){Qn&&(Qn.detachEvent("onpropertychange",rr),Zn=Qn=null)}function rr(e){if("value"===e.propertyName&&Xn(Zn)){var t=[];if(Hn(t,Zn,e,ke(e)),e=qn,Oe)e(t);else{Oe=!0;try{Ie(e,t)}finally{Oe=!1,ze()}}}}function or(e,t,n){"focusin"===e?(nr(),Zn=n,(Qn=t).attachEvent("onpropertychange",rr)):"focusout"===e&&nr()}function ar(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return Xn(Zn)}function ir(e,t){if("click"===e)return Xn(t)}function sr(e,t){if("input"===e||"change"===e)return Xn(t)}var lr="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},cr=Object.prototype.hasOwnProperty;function ur(e,t){if(lr(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++)if(!cr.call(t,n[r])||!lr(e[n[r]],t[n[r]]))return!1;return!0}function dr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function pr(e,t){var n,r=dr(e);for(e=0;r;){if(3===r.nodeType){if(n=e+r.textContent.length,e<=t&&n>=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=dr(r)}}function hr(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?hr(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function Ar(){for(var e=window,t=K();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(e){n=!1}if(!n)break;t=K((e=t.contentWindow).document)}return t}function fr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}var gr=d&&"documentMode"in document&&11>=document.documentMode,mr=null,Cr=null,br=null,vr=!1;function yr(e,t,n){var r=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;vr||null==mr||mr!==K(r)||(r="selectionStart"in(r=mr)&&fr(r)?{start:r.selectionStart,end:r.selectionEnd}:{anchorNode:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset},br&&ur(br,r)||(br=r,0<(r=Tr(Cr,"onSelect")).length&&(t=new dn("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=mr)))}jt("cancel cancel click click close close contextmenu contextMenu copy copy cut cut auxclick auxClick dblclick doubleClick dragend dragEnd dragstart dragStart drop drop focusin focus focusout blur input input invalid invalid keydown keyDown keypress keyPress keyup keyUp mousedown mouseDown mouseup mouseUp paste paste pause pause play play pointercancel pointerCancel pointerdown pointerDown pointerup pointerUp ratechange rateChange reset reset seeked seeked submit submit touchcancel touchCancel touchend touchEnd touchstart touchStart volumechange volumeChange".split(" "),0),jt("drag drag dragenter dragEnter dragexit dragExit dragleave dragLeave dragover dragOver mousemove mouseMove mouseout mouseOut mouseover mouseOver pointermove pointerMove pointerout pointerOut pointerover pointerOver scroll scroll toggle toggle touchmove touchMove wheel wheel".split(" "),1),jt(It,2);for(var xr="change selectionchange textInput compositionstart compositionend compositionupdate".split(" "),wr=0;wr<xr.length;wr++)Dt.set(xr[wr],0);u("onMouseEnter",["mouseout","mouseover"]),u("onMouseLeave",["mouseout","mouseover"]),u("onPointerEnter",["pointerout","pointerover"]),u("onPointerLeave",["pointerout","pointerover"]),c("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),c("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),c("onBeforeInput",["compositionend","keypress","textInput","paste"]),c("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),c("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),c("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Mr="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),kr=new Set("cancel close invalid load scroll toggle".split(" ").concat(Mr));function Nr(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,function(e,t,n,r,o,a,s,l,c){if(Ze.apply(this,arguments),Ve){if(!Ve)throw Error(i(198));var u=Ge;Ve=!1,Ge=null,We||(We=!0,He=u)}}(r,t,void 0,e),e.currentTarget=null}function _r(e,t){t=!!(4&t);for(var n=0;n<e.length;n++){var r=e[n],o=r.event;r=r.listeners;e:{var a=void 0;if(t)for(var i=r.length-1;0<=i;i--){var s=r[i],l=s.instance,c=s.currentTarget;if(s=s.listener,l!==a&&o.isPropagationStopped())break e;Nr(o,s,c),a=l}else for(i=0;i<r.length;i++){if(l=(s=r[i]).instance,c=s.currentTarget,s=s.listener,l!==a&&o.isPropagationStopped())break e;Nr(o,s,c),a=l}}}if(We)throw e=He,We=!1,He=null,e}function Sr(e,t){var n=oo(t),r=e+"__bubble";n.has(r)||(Ir(t,e,2,!1),n.add(r))}var Lr="_reactListening"+Math.random().toString(36).slice(2);function Br(e){e[Lr]||(e[Lr]=!0,s.forEach((function(t){kr.has(t)||Dr(t,!1,e,null),Dr(t,!0,e,null)})))}function Dr(e,t,n,r){var o=4<arguments.length&&void 0!==arguments[4]?arguments[4]:0,a=n;if("selectionchange"===e&&9!==n.nodeType&&(a=n.ownerDocument),null!==r&&!t&&kr.has(e)){if("scroll"!==e)return;o|=2,a=r}var i=oo(a),s=e+"__"+(t?"capture":"bubble");i.has(s)||(t&&(o|=4),Ir(a,e,o,t),i.add(s))}function Ir(e,t,n,r){var o=Dt.get(t);switch(void 0===o?2:o){case 0:o=Zt;break;case 1:o=qt;break;default:o=Xt}n=o.bind(null,t,n,e),o=void 0,!Ue||"touchstart"!==t&&"touchmove"!==t&&"wheel"!==t||(o=!0),r?void 0!==o?e.addEventListener(t,n,{capture:!0,passive:o}):e.addEventListener(t,n,!0):void 0!==o?e.addEventListener(t,n,{passive:o}):e.addEventListener(t,n,!1)}function jr(e,t,n,r,o){var a=r;if(!(1&t||2&t||null===r))e:for(;;){if(null===r)return;var i=r.tag;if(3===i||4===i){var s=r.stateNode.containerInfo;if(s===o||8===s.nodeType&&s.parentNode===o)break;if(4===i)for(i=r.return;null!==i;){var l=i.tag;if((3===l||4===l)&&((l=i.stateNode.containerInfo)===o||8===l.nodeType&&l.parentNode===o))return;i=i.return}for(;null!==s;){if(null===(i=eo(s)))return;if(5===(l=i.tag)||6===l){r=a=i;continue e}s=s.parentNode}}r=r.return}!function(e,t,n){if(Pe)return e();Pe=!0;try{return Te(e,t,n)}finally{Pe=!1,ze()}}((function(){var r=a,o=ke(n),i=[];e:{var s=Bt.get(e);if(void 0!==s){var l=dn,c=e;switch(e){case"keypress":if(0===nn(n))break e;case"keydown":case"keyup":l=Sn;break;case"focusin":c="focus",l=mn;break;case"focusout":c="blur",l=mn;break;case"beforeblur":case"afterblur":l=mn;break;case"click":if(2===n.button)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":l=fn;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":l=gn;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":l=Bn;break;case Nt:case _t:case St:l=Cn;break;case Lt:l=Dn;break;case"scroll":l=hn;break;case"wheel":l=jn;break;case"copy":case"cut":case"paste":l=vn;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":l=Ln}var u=!!(4&t),d=!u&&"scroll"===e,p=u?null!==s?s+"Capture":null:s;u=[];for(var h,A=r;null!==A;){var f=(h=A).stateNode;if(5===h.tag&&null!==f&&(h=f,null!==p&&null!=(f=Re(A,p))&&u.push(Er(A,f,h))),d)break;A=A.return}0<u.length&&(s=new l(s,c,null,n,o),i.push({event:s,listeners:u}))}}if(!(7&t)){if(l="mouseout"===e||"pointerout"===e,(!(s="mouseover"===e||"pointerover"===e)||16&t||!(c=n.relatedTarget||n.fromElement)||!eo(c)&&!c[Kr])&&(l||s)&&(s=o.window===o?o:(s=o.ownerDocument)?s.defaultView||s.parentWindow:window,l?(l=r,null!==(c=(c=n.relatedTarget||n.toElement)?eo(c):null)&&(c!==(d=qe(c))||5!==c.tag&&6!==c.tag)&&(c=null)):(l=null,c=r),l!==c)){if(u=fn,f="onMouseLeave",p="onMouseEnter",A="mouse","pointerout"!==e&&"pointerover"!==e||(u=Ln,f="onPointerLeave",p="onPointerEnter",A="pointer"),d=null==l?s:no(l),h=null==c?s:no(c),(s=new u(f,A+"leave",l,n,o)).target=d,s.relatedTarget=h,f=null,eo(o)===r&&((u=new u(p,A+"enter",c,n,o)).target=h,u.relatedTarget=d,f=u),d=f,l&&c)e:{for(p=c,A=0,h=u=l;h;h=Or(h))A++;for(h=0,f=p;f;f=Or(f))h++;for(;0<A-h;)u=Or(u),A--;for(;0<h-A;)p=Or(p),h--;for(;A--;){if(u===p||null!==p&&u===p.alternate)break e;u=Or(u),p=Or(p)}u=null}else u=null;null!==l&&Pr(i,s,l,u,!1),null!==c&&null!==d&&Pr(i,d,c,u,!0)}if("select"===(l=(s=r?no(r):window).nodeName&&s.nodeName.toLowerCase())||"input"===l&&"file"===s.type)var g=Jn;else if(Wn(s))if(Kn)g=sr;else{g=ar;var m=or}else(l=s.nodeName)&&"input"===l.toLowerCase()&&("checkbox"===s.type||"radio"===s.type)&&(g=ir);switch(g&&(g=g(e,r))?Hn(i,g,n,o):(m&&m(e,s,r),"focusout"===e&&(m=s._wrapperState)&&m.controlled&&"number"===s.type&&oe(s,"number",s.value)),m=r?no(r):window,e){case"focusin":(Wn(m)||"true"===m.contentEditable)&&(mr=m,Cr=r,br=null);break;case"focusout":br=Cr=mr=null;break;case"mousedown":vr=!0;break;case"contextmenu":case"mouseup":case"dragend":vr=!1,yr(i,n,o);break;case"selectionchange":if(gr)break;case"keydown":case"keyup":yr(i,n,o)}var C;if(Tn)e:{switch(e){case"compositionstart":var b="onCompositionStart";break e;case"compositionend":b="onCompositionEnd";break e;case"compositionupdate":b="onCompositionUpdate";break e}b=void 0}else Vn?Fn(e,n)&&(b="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(b="onCompositionStart");b&&(zn&&"ko"!==n.locale&&(Vn||"onCompositionStart"!==b?"onCompositionEnd"===b&&Vn&&(C=tn()):($t="value"in(Kt=o)?Kt.value:Kt.textContent,Vn=!0)),0<(m=Tr(r,b)).length&&(b=new yn(b,e,null,n,o),i.push({event:b,listeners:m}),(C||null!==(C=Yn(n)))&&(b.data=C))),(C=Pn?function(e,t){switch(e){case"compositionend":return Yn(t);case"keypress":return 32!==t.which?null:(Un=!0,Rn);case"textInput":return(e=t.data)===Rn&&Un?null:e;default:return null}}(e,n):function(e,t){if(Vn)return"compositionend"===e||!Tn&&Fn(e,t)?(e=tn(),en=$t=Kt=null,Vn=!1,e):null;switch(e){case"paste":default:return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return zn&&"ko"!==t.locale?null:t.data}}(e,n))&&0<(r=Tr(r,"onBeforeInput")).length&&(o=new yn("onBeforeInput","beforeinput",null,n,o),i.push({event:o,listeners:r}),o.data=C)}_r(i,t)}))}function Er(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Tr(e,t){for(var n=t+"Capture",r=[];null!==e;){var o=e,a=o.stateNode;5===o.tag&&null!==a&&(o=a,null!=(a=Re(e,n))&&r.unshift(Er(e,a,o)),null!=(a=Re(e,t))&&r.push(Er(e,a,o))),e=e.return}return r}function Or(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function Pr(e,t,n,r,o){for(var a=t._reactName,i=[];null!==n&&n!==r;){var s=n,l=s.alternate,c=s.stateNode;if(null!==l&&l===r)break;5===s.tag&&null!==c&&(s=c,o?null!=(l=Re(n,a))&&i.unshift(Er(n,l,s)):o||null!=(l=Re(n,a))&&i.push(Er(n,l,s))),n=n.return}0!==i.length&&e.push({event:t,listeners:i})}function zr(){}var Rr=null,Ur=null;function Fr(e,t){switch(e){case"button":case"input":case"select":case"textarea":return!!t.autoFocus}return!1}function Yr(e,t){return"textarea"===e||"option"===e||"noscript"===e||"string"==typeof t.children||"number"==typeof t.children||"object"==typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var Vr="function"==typeof setTimeout?setTimeout:void 0,Gr="function"==typeof clearTimeout?clearTimeout:void 0;function Wr(e){(1===e.nodeType||9===e.nodeType&&null!=(e=e.body))&&(e.textContent="")}function Hr(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break}return e}function Qr(e){e=e.previousSibling;for(var t=0;e;){if(8===e.nodeType){var n=e.data;if("$"===n||"$!"===n||"$?"===n){if(0===t)return e;t--}else"/$"===n&&t++}e=e.previousSibling}return null}var Zr=0,qr=Math.random().toString(36).slice(2),Xr="__reactFiber$"+qr,Jr="__reactProps$"+qr,Kr="__reactContainer$"+qr,$r="__reactEvents$"+qr;function eo(e){var t=e[Xr];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Kr]||n[Xr]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=Qr(e);null!==e;){if(n=e[Xr])return n;e=Qr(e)}return t}n=(e=n).parentNode}return null}function to(e){return!(e=e[Xr]||e[Kr])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function no(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(i(33))}function ro(e){return e[Jr]||null}function oo(e){var t=e[$r];return void 0===t&&(t=e[$r]=new Set),t}var ao=[],io=-1;function so(e){return{current:e}}function lo(e){0>io||(e.current=ao[io],ao[io]=null,io--)}function co(e,t){io++,ao[io]=e.current,e.current=t}var uo={},po=so(uo),ho=so(!1),Ao=uo;function fo(e,t){var n=e.type.contextTypes;if(!n)return uo;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var o,a={};for(o in n)a[o]=t[o];return r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=a),a}function go(e){return null!=e.childContextTypes}function mo(){lo(ho),lo(po)}function Co(e,t,n){if(po.current!==uo)throw Error(i(168));co(po,t),co(ho,n)}function bo(e,t,n){var r=e.stateNode;if(e=t.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var a in r=r.getChildContext())if(!(a in e))throw Error(i(108,Q(t)||"Unknown",a));return o({},n,r)}function vo(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||uo,Ao=po.current,co(po,e),co(ho,ho.current),!0}function yo(e,t,n){var r=e.stateNode;if(!r)throw Error(i(169));n?(e=bo(e,t,Ao),r.__reactInternalMemoizedMergedChildContext=e,lo(ho),lo(po),co(po,e)):lo(ho),co(ho,n)}var xo=null,wo=null,Mo=a.unstable_runWithPriority,ko=a.unstable_scheduleCallback,No=a.unstable_cancelCallback,_o=a.unstable_shouldYield,So=a.unstable_requestPaint,Lo=a.unstable_now,Bo=a.unstable_getCurrentPriorityLevel,Do=a.unstable_ImmediatePriority,Io=a.unstable_UserBlockingPriority,jo=a.unstable_NormalPriority,Eo=a.unstable_LowPriority,To=a.unstable_IdlePriority,Oo={},Po=void 0!==So?So:function(){},zo=null,Ro=null,Uo=!1,Fo=Lo(),Yo=1e4>Fo?Lo:function(){return Lo()-Fo};function Vo(){switch(Bo()){case Do:return 99;case Io:return 98;case jo:return 97;case Eo:return 96;case To:return 95;default:throw Error(i(332))}}function Go(e){switch(e){case 99:return Do;case 98:return Io;case 97:return jo;case 96:return Eo;case 95:return To;default:throw Error(i(332))}}function Wo(e,t){return e=Go(e),Mo(e,t)}function Ho(e,t,n){return e=Go(e),ko(e,t,n)}function Qo(){if(null!==Ro){var e=Ro;Ro=null,No(e)}Zo()}function Zo(){if(!Uo&&null!==zo){Uo=!0;var e=0;try{var t=zo;Wo(99,(function(){for(;e<t.length;e++){var n=t[e];do{n=n(!0)}while(null!==n)}})),zo=null}catch(t){throw null!==zo&&(zo=zo.slice(e+1)),ko(Do,Qo),t}finally{Uo=!1}}}var qo=y.ReactCurrentBatchConfig;function Xo(e,t){if(e&&e.defaultProps){for(var n in t=o({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}return t}var Jo=so(null),Ko=null,$o=null,ea=null;function ta(){ea=$o=Ko=null}function na(e){var t=Jo.current;lo(Jo),e.type._context._currentValue=t}function ra(e,t){for(;null!==e;){var n=e.alternate;if((e.childLanes&t)===t){if(null===n||(n.childLanes&t)===t)break;n.childLanes|=t}else e.childLanes|=t,null!==n&&(n.childLanes|=t);e=e.return}}function oa(e,t){Ko=e,ea=$o=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(!!(e.lanes&t)&&(Ti=!0),e.firstContext=null)}function aa(e,t){if(ea!==e&&!1!==t&&0!==t)if("number"==typeof t&&1073741823!==t||(ea=e,t=1073741823),t={context:e,observedBits:t,next:null},null===$o){if(null===Ko)throw Error(i(308));$o=t,Ko.dependencies={lanes:0,firstContext:t,responders:null}}else $o=$o.next=t;return e._currentValue}var ia=!1;function sa(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null},effects:null}}function la(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function ca(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function ua(e,t){if(null!==(e=e.updateQueue)){var n=(e=e.shared).pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}}function da(e,t){var n=e.updateQueue,r=e.alternate;if(null!==r&&n===(r=r.updateQueue)){var o=null,a=null;if(null!==(n=n.firstBaseUpdate)){do{var i={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};null===a?o=a=i:a=a.next=i,n=n.next}while(null!==n);null===a?o=a=t:a=a.next=t}else o=a=t;return n={baseState:r.baseState,firstBaseUpdate:o,lastBaseUpdate:a,shared:r.shared,effects:r.effects},void(e.updateQueue=n)}null===(e=n.lastBaseUpdate)?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function pa(e,t,n,r){var a=e.updateQueue;ia=!1;var i=a.firstBaseUpdate,s=a.lastBaseUpdate,l=a.shared.pending;if(null!==l){a.shared.pending=null;var c=l,u=c.next;c.next=null,null===s?i=u:s.next=u,s=c;var d=e.alternate;if(null!==d){var p=(d=d.updateQueue).lastBaseUpdate;p!==s&&(null===p?d.firstBaseUpdate=u:p.next=u,d.lastBaseUpdate=c)}}if(null!==i){for(p=a.baseState,s=0,d=u=c=null;;){l=i.lane;var h=i.eventTime;if((r&l)===l){null!==d&&(d=d.next={eventTime:h,lane:0,tag:i.tag,payload:i.payload,callback:i.callback,next:null});e:{var A=e,f=i;switch(l=t,h=n,f.tag){case 1:if("function"==typeof(A=f.payload)){p=A.call(h,p,l);break e}p=A;break e;case 3:A.flags=-4097&A.flags|64;case 0:if(null==(l="function"==typeof(A=f.payload)?A.call(h,p,l):A))break e;p=o({},p,l);break e;case 2:ia=!0}}null!==i.callback&&(e.flags|=32,null===(l=a.effects)?a.effects=[i]:l.push(i))}else h={eventTime:h,lane:l,tag:i.tag,payload:i.payload,callback:i.callback,next:null},null===d?(u=d=h,c=p):d=d.next=h,s|=l;if(null===(i=i.next)){if(null===(l=a.shared.pending))break;i=l.next,l.next=null,a.lastBaseUpdate=l,a.shared.pending=null}}null===d&&(c=p),a.baseState=c,a.firstBaseUpdate=u,a.lastBaseUpdate=d,zs|=s,e.lanes=s,e.memoizedState=p}}function ha(e,t,n){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var r=e[t],o=r.callback;if(null!==o){if(r.callback=null,r=n,"function"!=typeof o)throw Error(i(191,o));o.call(r)}}}var Aa=(new r.Component).refs;function fa(e,t,n,r){n=null==(n=n(r,t=e.memoizedState))?t:o({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var ga={isMounted:function(e){return!!(e=e._reactInternals)&&qe(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=cl(),o=ul(e),a=ca(r,o);a.payload=t,null!=n&&(a.callback=n),ua(e,a),dl(e,o,r)},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=cl(),o=ul(e),a=ca(r,o);a.tag=1,a.payload=t,null!=n&&(a.callback=n),ua(e,a),dl(e,o,r)},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=cl(),r=ul(e),o=ca(n,r);o.tag=2,null!=t&&(o.callback=t),ua(e,o),dl(e,r,n)}};function ma(e,t,n,r,o,a,i){return"function"==typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(r,a,i):!(t.prototype&&t.prototype.isPureReactComponent&&ur(n,r)&&ur(o,a))}function Ca(e,t,n){var r=!1,o=uo,a=t.contextType;return"object"==typeof a&&null!==a?a=aa(a):(o=go(t)?Ao:po.current,a=(r=null!=(r=t.contextTypes))?fo(e,o):uo),t=new t(n,a),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=ga,e.stateNode=t,t._reactInternals=e,r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=o,e.__reactInternalMemoizedMaskedChildContext=a),t}function ba(e,t,n,r){e=t.state,"function"==typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,r),"function"==typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&ga.enqueueReplaceState(t,t.state,null)}function va(e,t,n,r){var o=e.stateNode;o.props=n,o.state=e.memoizedState,o.refs=Aa,sa(e);var a=t.contextType;"object"==typeof a&&null!==a?o.context=aa(a):(a=go(t)?Ao:po.current,o.context=fo(e,a)),pa(e,n,o,r),o.state=e.memoizedState,"function"==typeof(a=t.getDerivedStateFromProps)&&(fa(e,t,a,n),o.state=e.memoizedState),"function"==typeof t.getDerivedStateFromProps||"function"==typeof o.getSnapshotBeforeUpdate||"function"!=typeof o.UNSAFE_componentWillMount&&"function"!=typeof o.componentWillMount||(t=o.state,"function"==typeof o.componentWillMount&&o.componentWillMount(),"function"==typeof o.UNSAFE_componentWillMount&&o.UNSAFE_componentWillMount(),t!==o.state&&ga.enqueueReplaceState(o,o.state,null),pa(e,n,o,r),o.state=e.memoizedState),"function"==typeof o.componentDidMount&&(e.flags|=4)}var ya=Array.isArray;function xa(e,t,n){if(null!==(e=n.ref)&&"function"!=typeof e&&"object"!=typeof e){if(n._owner){if(n=n._owner){if(1!==n.tag)throw Error(i(309));var r=n.stateNode}if(!r)throw Error(i(147,e));var o=""+e;return null!==t&&null!==t.ref&&"function"==typeof t.ref&&t.ref._stringRef===o?t.ref:(t=function(e){var t=r.refs;t===Aa&&(t=r.refs={}),null===e?delete t[o]:t[o]=e},t._stringRef=o,t)}if("string"!=typeof e)throw Error(i(284));if(!n._owner)throw Error(i(290,e))}return e}function wa(e,t){if("textarea"!==e.type)throw Error(i(31,"[object Object]"===Object.prototype.toString.call(t)?"object with keys {"+Object.keys(t).join(", ")+"}":t))}function Ma(e){function t(t,n){if(e){var r=t.lastEffect;null!==r?(r.nextEffect=n,t.lastEffect=n):t.firstEffect=t.lastEffect=n,n.nextEffect=null,n.flags=8}}function n(n,r){if(!e)return null;for(;null!==r;)t(n,r),r=r.sibling;return null}function r(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function o(e,t){return(e=Fl(e,t)).index=0,e.sibling=null,e}function a(t,n,r){return t.index=r,e?null!==(r=t.alternate)?(r=r.index)<n?(t.flags=2,n):r:(t.flags=2,n):n}function s(t){return e&&null===t.alternate&&(t.flags=2),t}function l(e,t,n,r){return null===t||6!==t.tag?((t=Wl(n,e.mode,r)).return=e,t):((t=o(t,n)).return=e,t)}function c(e,t,n,r){return null!==t&&t.elementType===n.type?((r=o(t,n.props)).ref=xa(e,t,n),r.return=e,r):((r=Yl(n.type,n.key,n.props,null,e.mode,r)).ref=xa(e,t,n),r.return=e,r)}function u(e,t,n,r){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=Hl(n,e.mode,r)).return=e,t):((t=o(t,n.children||[])).return=e,t)}function d(e,t,n,r,a){return null===t||7!==t.tag?((t=Vl(n,e.mode,r,a)).return=e,t):((t=o(t,n)).return=e,t)}function p(e,t,n){if("string"==typeof t||"number"==typeof t)return(t=Wl(""+t,e.mode,n)).return=e,t;if("object"==typeof t&&null!==t){switch(t.$$typeof){case x:return(n=Yl(t.type,t.key,t.props,null,e.mode,n)).ref=xa(e,null,t),n.return=e,n;case w:return(t=Hl(t,e.mode,n)).return=e,t}if(ya(t)||Y(t))return(t=Vl(t,e.mode,n,null)).return=e,t;wa(e,t)}return null}function h(e,t,n,r){var o=null!==t?t.key:null;if("string"==typeof n||"number"==typeof n)return null!==o?null:l(e,t,""+n,r);if("object"==typeof n&&null!==n){switch(n.$$typeof){case x:return n.key===o?n.type===M?d(e,t,n.props.children,r,o):c(e,t,n,r):null;case w:return n.key===o?u(e,t,n,r):null}if(ya(n)||Y(n))return null!==o?null:d(e,t,n,r,null);wa(e,n)}return null}function A(e,t,n,r,o){if("string"==typeof r||"number"==typeof r)return l(t,e=e.get(n)||null,""+r,o);if("object"==typeof r&&null!==r){switch(r.$$typeof){case x:return e=e.get(null===r.key?n:r.key)||null,r.type===M?d(t,e,r.props.children,o,r.key):c(t,e,r,o);case w:return u(t,e=e.get(null===r.key?n:r.key)||null,r,o)}if(ya(r)||Y(r))return d(t,e=e.get(n)||null,r,o,null);wa(t,r)}return null}function f(o,i,s,l){for(var c=null,u=null,d=i,f=i=0,g=null;null!==d&&f<s.length;f++){d.index>f?(g=d,d=null):g=d.sibling;var m=h(o,d,s[f],l);if(null===m){null===d&&(d=g);break}e&&d&&null===m.alternate&&t(o,d),i=a(m,i,f),null===u?c=m:u.sibling=m,u=m,d=g}if(f===s.length)return n(o,d),c;if(null===d){for(;f<s.length;f++)null!==(d=p(o,s[f],l))&&(i=a(d,i,f),null===u?c=d:u.sibling=d,u=d);return c}for(d=r(o,d);f<s.length;f++)null!==(g=A(d,o,f,s[f],l))&&(e&&null!==g.alternate&&d.delete(null===g.key?f:g.key),i=a(g,i,f),null===u?c=g:u.sibling=g,u=g);return e&&d.forEach((function(e){return t(o,e)})),c}function g(o,s,l,c){var u=Y(l);if("function"!=typeof u)throw Error(i(150));if(null==(l=u.call(l)))throw Error(i(151));for(var d=u=null,f=s,g=s=0,m=null,C=l.next();null!==f&&!C.done;g++,C=l.next()){f.index>g?(m=f,f=null):m=f.sibling;var b=h(o,f,C.value,c);if(null===b){null===f&&(f=m);break}e&&f&&null===b.alternate&&t(o,f),s=a(b,s,g),null===d?u=b:d.sibling=b,d=b,f=m}if(C.done)return n(o,f),u;if(null===f){for(;!C.done;g++,C=l.next())null!==(C=p(o,C.value,c))&&(s=a(C,s,g),null===d?u=C:d.sibling=C,d=C);return u}for(f=r(o,f);!C.done;g++,C=l.next())null!==(C=A(f,o,g,C.value,c))&&(e&&null!==C.alternate&&f.delete(null===C.key?g:C.key),s=a(C,s,g),null===d?u=C:d.sibling=C,d=C);return e&&f.forEach((function(e){return t(o,e)})),u}return function(e,r,a,l){var c="object"==typeof a&&null!==a&&a.type===M&&null===a.key;c&&(a=a.props.children);var u="object"==typeof a&&null!==a;if(u)switch(a.$$typeof){case x:e:{for(u=a.key,c=r;null!==c;){if(c.key===u){if(7===c.tag){if(a.type===M){n(e,c.sibling),(r=o(c,a.props.children)).return=e,e=r;break e}}else if(c.elementType===a.type){n(e,c.sibling),(r=o(c,a.props)).ref=xa(e,c,a),r.return=e,e=r;break e}n(e,c);break}t(e,c),c=c.sibling}a.type===M?((r=Vl(a.props.children,e.mode,l,a.key)).return=e,e=r):((l=Yl(a.type,a.key,a.props,null,e.mode,l)).ref=xa(e,r,a),l.return=e,e=l)}return s(e);case w:e:{for(c=a.key;null!==r;){if(r.key===c){if(4===r.tag&&r.stateNode.containerInfo===a.containerInfo&&r.stateNode.implementation===a.implementation){n(e,r.sibling),(r=o(r,a.children||[])).return=e,e=r;break e}n(e,r);break}t(e,r),r=r.sibling}(r=Hl(a,e.mode,l)).return=e,e=r}return s(e)}if("string"==typeof a||"number"==typeof a)return a=""+a,null!==r&&6===r.tag?(n(e,r.sibling),(r=o(r,a)).return=e,e=r):(n(e,r),(r=Wl(a,e.mode,l)).return=e,e=r),s(e);if(ya(a))return f(e,r,a,l);if(Y(a))return g(e,r,a,l);if(u&&wa(e,a),void 0===a&&!c)switch(e.tag){case 1:case 22:case 0:case 11:case 15:throw Error(i(152,Q(e.type)||"Component"))}return n(e,r)}}var ka=Ma(!0),Na=Ma(!1),_a={},Sa=so(_a),La=so(_a),Ba=so(_a);function Da(e){if(e===_a)throw Error(i(174));return e}function Ia(e,t){switch(co(Ba,t),co(La,e),co(Sa,_a),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:he(null,"");break;default:t=he(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}lo(Sa),co(Sa,t)}function ja(){lo(Sa),lo(La),lo(Ba)}function Ea(e){Da(Ba.current);var t=Da(Sa.current),n=he(t,e.type);t!==n&&(co(La,e),co(Sa,n))}function Ta(e){La.current===e&&(lo(Sa),lo(La))}var Oa=so(0);function Pa(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(64&t.flags)return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var za=null,Ra=null,Ua=!1;function Fa(e,t){var n=Rl(5,null,null,0);n.elementType="DELETED",n.type="DELETED",n.stateNode=t,n.return=e,n.flags=8,null!==e.lastEffect?(e.lastEffect.nextEffect=n,e.lastEffect=n):e.firstEffect=e.lastEffect=n}function Ya(e,t){switch(e.tag){case 5:var n=e.type;return null!==(t=1!==t.nodeType||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,!0);default:return!1}}function Va(e){if(Ua){var t=Ra;if(t){var n=t;if(!Ya(e,t)){if(!(t=Hr(n.nextSibling))||!Ya(e,t))return e.flags=-1025&e.flags|2,Ua=!1,void(za=e);Fa(za,n)}za=e,Ra=Hr(t.firstChild)}else e.flags=-1025&e.flags|2,Ua=!1,za=e}}function Ga(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;za=e}function Wa(e){if(e!==za)return!1;if(!Ua)return Ga(e),Ua=!0,!1;var t=e.type;if(5!==e.tag||"head"!==t&&"body"!==t&&!Yr(t,e.memoizedProps))for(t=Ra;t;)Fa(e,t),t=Hr(t.nextSibling);if(Ga(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(i(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){Ra=Hr(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}Ra=null}}else Ra=za?Hr(e.stateNode.nextSibling):null;return!0}function Ha(){Ra=za=null,Ua=!1}var Qa=[];function Za(){for(var e=0;e<Qa.length;e++)Qa[e]._workInProgressVersionPrimary=null;Qa.length=0}var qa=y.ReactCurrentDispatcher,Xa=y.ReactCurrentBatchConfig,Ja=0,Ka=null,$a=null,ei=null,ti=!1,ni=!1;function ri(){throw Error(i(321))}function oi(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!lr(e[n],t[n]))return!1;return!0}function ai(e,t,n,r,o,a){if(Ja=a,Ka=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,qa.current=null===e||null===e.memoizedState?Di:Ii,e=n(r,o),ni){a=0;do{if(ni=!1,!(25>a))throw Error(i(301));a+=1,ei=$a=null,t.updateQueue=null,qa.current=ji,e=n(r,o)}while(ni)}if(qa.current=Bi,t=null!==$a&&null!==$a.next,Ja=0,ei=$a=Ka=null,ti=!1,t)throw Error(i(300));return e}function ii(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===ei?Ka.memoizedState=ei=e:ei=ei.next=e,ei}function si(){if(null===$a){var e=Ka.alternate;e=null!==e?e.memoizedState:null}else e=$a.next;var t=null===ei?Ka.memoizedState:ei.next;if(null!==t)ei=t,$a=e;else{if(null===e)throw Error(i(310));e={memoizedState:($a=e).memoizedState,baseState:$a.baseState,baseQueue:$a.baseQueue,queue:$a.queue,next:null},null===ei?Ka.memoizedState=ei=e:ei=ei.next=e}return ei}function li(e,t){return"function"==typeof t?t(e):t}function ci(e){var t=si(),n=t.queue;if(null===n)throw Error(i(311));n.lastRenderedReducer=e;var r=$a,o=r.baseQueue,a=n.pending;if(null!==a){if(null!==o){var s=o.next;o.next=a.next,a.next=s}r.baseQueue=o=a,n.pending=null}if(null!==o){o=o.next,r=r.baseState;var l=s=a=null,c=o;do{var u=c.lane;if((Ja&u)===u)null!==l&&(l=l.next={lane:0,action:c.action,eagerReducer:c.eagerReducer,eagerState:c.eagerState,next:null}),r=c.eagerReducer===e?c.eagerState:e(r,c.action);else{var d={lane:u,action:c.action,eagerReducer:c.eagerReducer,eagerState:c.eagerState,next:null};null===l?(s=l=d,a=r):l=l.next=d,Ka.lanes|=u,zs|=u}c=c.next}while(null!==c&&c!==o);null===l?a=r:l.next=s,lr(r,t.memoizedState)||(Ti=!0),t.memoizedState=r,t.baseState=a,t.baseQueue=l,n.lastRenderedState=r}return[t.memoizedState,n.dispatch]}function ui(e){var t=si(),n=t.queue;if(null===n)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,o=n.pending,a=t.memoizedState;if(null!==o){n.pending=null;var s=o=o.next;do{a=e(a,s.action),s=s.next}while(s!==o);lr(a,t.memoizedState)||(Ti=!0),t.memoizedState=a,null===t.baseQueue&&(t.baseState=a),n.lastRenderedState=a}return[a,r]}function di(e,t,n){var r=t._getVersion;r=r(t._source);var o=t._workInProgressVersionPrimary;if(null!==o?e=o===r:(e=e.mutableReadLanes,(e=(Ja&e)===e)&&(t._workInProgressVersionPrimary=r,Qa.push(t))),e)return n(t._source);throw Qa.push(t),Error(i(350))}function pi(e,t,n,r){var o=Bs;if(null===o)throw Error(i(349));var a=t._getVersion,s=a(t._source),l=qa.current,c=l.useState((function(){return di(o,t,n)})),u=c[1],d=c[0];c=ei;var p=e.memoizedState,h=p.refs,A=h.getSnapshot,f=p.source;p=p.subscribe;var g=Ka;return e.memoizedState={refs:h,source:t,subscribe:r},l.useEffect((function(){h.getSnapshot=n,h.setSnapshot=u;var e=a(t._source);if(!lr(s,e)){e=n(t._source),lr(d,e)||(u(e),e=ul(g),o.mutableReadLanes|=e&o.pendingLanes),e=o.mutableReadLanes,o.entangledLanes|=e;for(var r=o.entanglements,i=e;0<i;){var l=31-Yt(i),c=1<<l;r[l]|=e,i&=~c}}}),[n,t,r]),l.useEffect((function(){return r(t._source,(function(){var e=h.getSnapshot,n=h.setSnapshot;try{n(e(t._source));var r=ul(g);o.mutableReadLanes|=r&o.pendingLanes}catch(e){n((function(){throw e}))}}))}),[t,r]),lr(A,n)&&lr(f,t)&&lr(p,r)||((e={pending:null,dispatch:null,lastRenderedReducer:li,lastRenderedState:d}).dispatch=u=Li.bind(null,Ka,e),c.queue=e,c.baseQueue=null,d=di(o,t,n),c.memoizedState=c.baseState=d),d}function hi(e,t,n){return pi(si(),e,t,n)}function Ai(e){var t=ii();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e=(e=t.queue={pending:null,dispatch:null,lastRenderedReducer:li,lastRenderedState:e}).dispatch=Li.bind(null,Ka,e),[t.memoizedState,e]}function fi(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},null===(t=Ka.updateQueue)?(t={lastEffect:null},Ka.updateQueue=t,t.lastEffect=e.next=e):null===(n=t.lastEffect)?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function gi(e){return e={current:e},ii().memoizedState=e}function mi(){return si().memoizedState}function Ci(e,t,n,r){var o=ii();Ka.flags|=e,o.memoizedState=fi(1|t,n,void 0,void 0===r?null:r)}function bi(e,t,n,r){var o=si();r=void 0===r?null:r;var a=void 0;if(null!==$a){var i=$a.memoizedState;if(a=i.destroy,null!==r&&oi(r,i.deps))return void fi(t,n,a,r)}Ka.flags|=e,o.memoizedState=fi(1|t,n,a,r)}function vi(e,t){return Ci(516,4,e,t)}function yi(e,t){return bi(516,4,e,t)}function xi(e,t){return bi(4,2,e,t)}function wi(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function Mi(e,t,n){return n=null!=n?n.concat([e]):null,bi(4,2,wi.bind(null,t,e),n)}function ki(){}function Ni(e,t){var n=si();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&oi(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function _i(e,t){var n=si();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&oi(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function Si(e,t){var n=Vo();Wo(98>n?98:n,(function(){e(!0)})),Wo(97<n?97:n,(function(){var n=Xa.transition;Xa.transition=1;try{e(!1),t()}finally{Xa.transition=n}}))}function Li(e,t,n){var r=cl(),o=ul(e),a={lane:o,action:n,eagerReducer:null,eagerState:null,next:null},i=t.pending;if(null===i?a.next=a:(a.next=i.next,i.next=a),t.pending=a,i=e.alternate,e===Ka||null!==i&&i===Ka)ni=ti=!0;else{if(0===e.lanes&&(null===i||0===i.lanes)&&null!==(i=t.lastRenderedReducer))try{var s=t.lastRenderedState,l=i(s,n);if(a.eagerReducer=i,a.eagerState=l,lr(l,s))return}catch(e){}dl(e,o,r)}}var Bi={readContext:aa,useCallback:ri,useContext:ri,useEffect:ri,useImperativeHandle:ri,useLayoutEffect:ri,useMemo:ri,useReducer:ri,useRef:ri,useState:ri,useDebugValue:ri,useDeferredValue:ri,useTransition:ri,useMutableSource:ri,useOpaqueIdentifier:ri,unstable_isNewReconciler:!1},Di={readContext:aa,useCallback:function(e,t){return ii().memoizedState=[e,void 0===t?null:t],e},useContext:aa,useEffect:vi,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,Ci(4,2,wi.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Ci(4,2,e,t)},useMemo:function(e,t){var n=ii();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=ii();return t=void 0!==n?n(t):t,r.memoizedState=r.baseState=t,e=(e=r.queue={pending:null,dispatch:null,lastRenderedReducer:e,lastRenderedState:t}).dispatch=Li.bind(null,Ka,e),[r.memoizedState,e]},useRef:gi,useState:Ai,useDebugValue:ki,useDeferredValue:function(e){var t=Ai(e),n=t[0],r=t[1];return vi((function(){var t=Xa.transition;Xa.transition=1;try{r(e)}finally{Xa.transition=t}}),[e]),n},useTransition:function(){var e=Ai(!1),t=e[0];return gi(e=Si.bind(null,e[1])),[e,t]},useMutableSource:function(e,t,n){var r=ii();return r.memoizedState={refs:{getSnapshot:t,setSnapshot:null},source:e,subscribe:n},pi(r,e,t,n)},useOpaqueIdentifier:function(){if(Ua){var e=!1,t=function(e){return{$$typeof:T,toString:e,valueOf:e}}((function(){throw e||(e=!0,n("r:"+(Zr++).toString(36))),Error(i(355))})),n=Ai(t)[1];return!(2&Ka.mode)&&(Ka.flags|=516,fi(5,(function(){n("r:"+(Zr++).toString(36))}),void 0,null)),t}return Ai(t="r:"+(Zr++).toString(36)),t},unstable_isNewReconciler:!1},Ii={readContext:aa,useCallback:Ni,useContext:aa,useEffect:yi,useImperativeHandle:Mi,useLayoutEffect:xi,useMemo:_i,useReducer:ci,useRef:mi,useState:function(){return ci(li)},useDebugValue:ki,useDeferredValue:function(e){var t=ci(li),n=t[0],r=t[1];return yi((function(){var t=Xa.transition;Xa.transition=1;try{r(e)}finally{Xa.transition=t}}),[e]),n},useTransition:function(){var e=ci(li)[0];return[mi().current,e]},useMutableSource:hi,useOpaqueIdentifier:function(){return ci(li)[0]},unstable_isNewReconciler:!1},ji={readContext:aa,useCallback:Ni,useContext:aa,useEffect:yi,useImperativeHandle:Mi,useLayoutEffect:xi,useMemo:_i,useReducer:ui,useRef:mi,useState:function(){return ui(li)},useDebugValue:ki,useDeferredValue:function(e){var t=ui(li),n=t[0],r=t[1];return yi((function(){var t=Xa.transition;Xa.transition=1;try{r(e)}finally{Xa.transition=t}}),[e]),n},useTransition:function(){var e=ui(li)[0];return[mi().current,e]},useMutableSource:hi,useOpaqueIdentifier:function(){return ui(li)[0]},unstable_isNewReconciler:!1},Ei=y.ReactCurrentOwner,Ti=!1;function Oi(e,t,n,r){t.child=null===e?Na(t,null,n,r):ka(t,e.child,n,r)}function Pi(e,t,n,r,o){n=n.render;var a=t.ref;return oa(t,o),r=ai(e,t,n,r,a,o),null===e||Ti?(t.flags|=1,Oi(e,t,r,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~o,ns(e,t,o))}function zi(e,t,n,r,o,a){if(null===e){var i=n.type;return"function"!=typeof i||Ul(i)||void 0!==i.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Yl(n.type,null,r,t,t.mode,a)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=i,Ri(e,t,i,r,o,a))}return i=e.child,o&a||(o=i.memoizedProps,!(n=null!==(n=n.compare)?n:ur)(o,r)||e.ref!==t.ref)?(t.flags|=1,(e=Fl(i,r)).ref=t.ref,e.return=t,t.child=e):ns(e,t,a)}function Ri(e,t,n,r,o,a){if(null!==e&&ur(e.memoizedProps,r)&&e.ref===t.ref){if(Ti=!1,!(a&o))return t.lanes=e.lanes,ns(e,t,a);16384&e.flags&&(Ti=!0)}return Yi(e,t,n,r,a)}function Ui(e,t,n){var r=t.pendingProps,o=r.children,a=null!==e?e.memoizedState:null;if("hidden"===r.mode||"unstable-defer-without-hiding"===r.mode)if(4&t.mode){if(!(1073741824&n))return e=null!==a?a.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e},ml(0,e),null;t.memoizedState={baseLanes:0},ml(0,null!==a?a.baseLanes:n)}else t.memoizedState={baseLanes:0},ml(0,n);else null!==a?(r=a.baseLanes|n,t.memoizedState=null):r=n,ml(0,r);return Oi(e,t,o,n),t.child}function Fi(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=128)}function Yi(e,t,n,r,o){var a=go(n)?Ao:po.current;return a=fo(t,a),oa(t,o),n=ai(e,t,n,r,a,o),null===e||Ti?(t.flags|=1,Oi(e,t,n,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~o,ns(e,t,o))}function Vi(e,t,n,r,o){if(go(n)){var a=!0;vo(t)}else a=!1;if(oa(t,o),null===t.stateNode)null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),Ca(t,n,r),va(t,n,r,o),r=!0;else if(null===e){var i=t.stateNode,s=t.memoizedProps;i.props=s;var l=i.context,c=n.contextType;c="object"==typeof c&&null!==c?aa(c):fo(t,c=go(n)?Ao:po.current);var u=n.getDerivedStateFromProps,d="function"==typeof u||"function"==typeof i.getSnapshotBeforeUpdate;d||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(s!==r||l!==c)&&ba(t,i,r,c),ia=!1;var p=t.memoizedState;i.state=p,pa(t,r,i,o),l=t.memoizedState,s!==r||p!==l||ho.current||ia?("function"==typeof u&&(fa(t,n,u,r),l=t.memoizedState),(s=ia||ma(t,n,s,r,p,l,c))?(d||"function"!=typeof i.UNSAFE_componentWillMount&&"function"!=typeof i.componentWillMount||("function"==typeof i.componentWillMount&&i.componentWillMount(),"function"==typeof i.UNSAFE_componentWillMount&&i.UNSAFE_componentWillMount()),"function"==typeof i.componentDidMount&&(t.flags|=4)):("function"==typeof i.componentDidMount&&(t.flags|=4),t.memoizedProps=r,t.memoizedState=l),i.props=r,i.state=l,i.context=c,r=s):("function"==typeof i.componentDidMount&&(t.flags|=4),r=!1)}else{i=t.stateNode,la(e,t),s=t.memoizedProps,c=t.type===t.elementType?s:Xo(t.type,s),i.props=c,d=t.pendingProps,p=i.context,l="object"==typeof(l=n.contextType)&&null!==l?aa(l):fo(t,l=go(n)?Ao:po.current);var h=n.getDerivedStateFromProps;(u="function"==typeof h||"function"==typeof i.getSnapshotBeforeUpdate)||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(s!==d||p!==l)&&ba(t,i,r,l),ia=!1,p=t.memoizedState,i.state=p,pa(t,r,i,o);var A=t.memoizedState;s!==d||p!==A||ho.current||ia?("function"==typeof h&&(fa(t,n,h,r),A=t.memoizedState),(c=ia||ma(t,n,c,r,p,A,l))?(u||"function"!=typeof i.UNSAFE_componentWillUpdate&&"function"!=typeof i.componentWillUpdate||("function"==typeof i.componentWillUpdate&&i.componentWillUpdate(r,A,l),"function"==typeof i.UNSAFE_componentWillUpdate&&i.UNSAFE_componentWillUpdate(r,A,l)),"function"==typeof i.componentDidUpdate&&(t.flags|=4),"function"==typeof i.getSnapshotBeforeUpdate&&(t.flags|=256)):("function"!=typeof i.componentDidUpdate||s===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||s===e.memoizedProps&&p===e.memoizedState||(t.flags|=256),t.memoizedProps=r,t.memoizedState=A),i.props=r,i.state=A,i.context=l,r=c):("function"!=typeof i.componentDidUpdate||s===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||s===e.memoizedProps&&p===e.memoizedState||(t.flags|=256),r=!1)}return Gi(e,t,n,r,a,o)}function Gi(e,t,n,r,o,a){Fi(e,t);var i=!!(64&t.flags);if(!r&&!i)return o&&yo(t,n,!1),ns(e,t,a);r=t.stateNode,Ei.current=t;var s=i&&"function"!=typeof n.getDerivedStateFromError?null:r.render();return t.flags|=1,null!==e&&i?(t.child=ka(t,e.child,null,a),t.child=ka(t,null,s,a)):Oi(e,t,s,a),t.memoizedState=r.state,o&&yo(t,n,!0),t.child}function Wi(e){var t=e.stateNode;t.pendingContext?Co(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Co(0,t.context,!1),Ia(e,t.containerInfo)}var Hi,Qi,Zi,qi,Xi={dehydrated:null,retryLane:0};function Ji(e,t,n){var r,o=t.pendingProps,a=Oa.current,i=!1;return(r=!!(64&t.flags))||(r=(null===e||null!==e.memoizedState)&&!!(2&a)),r?(i=!0,t.flags&=-65):null!==e&&null===e.memoizedState||void 0===o.fallback||!0===o.unstable_avoidThisFallback||(a|=1),co(Oa,1&a),null===e?(void 0!==o.fallback&&Va(t),e=o.children,a=o.fallback,i?(e=Ki(t,e,a,n),t.child.memoizedState={baseLanes:n},t.memoizedState=Xi,e):"number"==typeof o.unstable_expectedLoadTime?(e=Ki(t,e,a,n),t.child.memoizedState={baseLanes:n},t.memoizedState=Xi,t.lanes=33554432,e):((n=Gl({mode:"visible",children:e},t.mode,n,null)).return=t,t.child=n)):(e.memoizedState,i?(o=function(e,t,n,r,o){var a=t.mode,i=e.child;e=i.sibling;var s={mode:"hidden",children:n};return 2&a||t.child===i?n=Fl(i,s):((n=t.child).childLanes=0,n.pendingProps=s,null!==(i=n.lastEffect)?(t.firstEffect=n.firstEffect,t.lastEffect=i,i.nextEffect=null):t.firstEffect=t.lastEffect=null),null!==e?r=Fl(e,r):(r=Vl(r,a,o,null)).flags|=2,r.return=t,n.return=t,n.sibling=r,t.child=n,r}(e,t,o.children,o.fallback,n),i=t.child,a=e.child.memoizedState,i.memoizedState=null===a?{baseLanes:n}:{baseLanes:a.baseLanes|n},i.childLanes=e.childLanes&~n,t.memoizedState=Xi,o):(n=function(e,t,n,r){var o=e.child;return e=o.sibling,n=Fl(o,{mode:"visible",children:n}),!(2&t.mode)&&(n.lanes=r),n.return=t,n.sibling=null,null!==e&&(e.nextEffect=null,e.flags=8,t.firstEffect=t.lastEffect=e),t.child=n}(e,t,o.children,n),t.memoizedState=null,n))}function Ki(e,t,n,r){var o=e.mode,a=e.child;return t={mode:"hidden",children:t},2&o||null===a?a=Gl(t,o,0,null):(a.childLanes=0,a.pendingProps=t),n=Vl(n,o,r,null),a.return=e,n.return=e,a.sibling=n,e.child=a,n}function $i(e,t){e.lanes|=t;var n=e.alternate;null!==n&&(n.lanes|=t),ra(e.return,t)}function es(e,t,n,r,o,a){var i=e.memoizedState;null===i?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:o,lastEffect:a}:(i.isBackwards=t,i.rendering=null,i.renderingStartTime=0,i.last=r,i.tail=n,i.tailMode=o,i.lastEffect=a)}function ts(e,t,n){var r=t.pendingProps,o=r.revealOrder,a=r.tail;if(Oi(e,t,r.children,n),2&(r=Oa.current))r=1&r|2,t.flags|=64;else{if(null!==e&&64&e.flags)e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&$i(e,n);else if(19===e.tag)$i(e,n);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(co(Oa,r),2&t.mode)switch(o){case"forwards":for(n=t.child,o=null;null!==n;)null!==(e=n.alternate)&&null===Pa(e)&&(o=n),n=n.sibling;null===(n=o)?(o=t.child,t.child=null):(o=n.sibling,n.sibling=null),es(t,!1,o,n,a,t.lastEffect);break;case"backwards":for(n=null,o=t.child,t.child=null;null!==o;){if(null!==(e=o.alternate)&&null===Pa(e)){t.child=o;break}e=o.sibling,o.sibling=n,n=o,o=e}es(t,!0,n,null,a,t.lastEffect);break;case"together":es(t,!1,null,null,void 0,t.lastEffect);break;default:t.memoizedState=null}else t.memoizedState=null;return t.child}function ns(e,t,n){if(null!==e&&(t.dependencies=e.dependencies),zs|=t.lanes,n&t.childLanes){if(null!==e&&t.child!==e.child)throw Error(i(153));if(null!==t.child){for(n=Fl(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Fl(e,e.pendingProps)).return=t;n.sibling=null}return t.child}return null}function rs(e,t){if(!Ua)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;null!==n;)null!==n.alternate&&(r=n),n=n.sibling;null===r?t||null===e.tail?e.tail=null:e.tail.sibling=null:r.sibling=null}}function os(e,t,n){var r=t.pendingProps;switch(t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return null;case 1:case 17:return go(t.type)&&mo(),null;case 3:return ja(),lo(ho),lo(po),Za(),(r=t.stateNode).pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),null!==e&&null!==e.child||(Wa(t)?t.flags|=4:r.hydrate||(t.flags|=256)),Qi(t),null;case 5:Ta(t);var a=Da(Ba.current);if(n=t.type,null!==e&&null!=t.stateNode)Zi(e,t,n,r,a),e.ref!==t.ref&&(t.flags|=128);else{if(!r){if(null===t.stateNode)throw Error(i(166));return null}if(e=Da(Sa.current),Wa(t)){r=t.stateNode,n=t.type;var s=t.memoizedProps;switch(r[Xr]=t,r[Jr]=s,n){case"dialog":Sr("cancel",r),Sr("close",r);break;case"iframe":case"object":case"embed":Sr("load",r);break;case"video":case"audio":for(e=0;e<Mr.length;e++)Sr(Mr[e],r);break;case"source":Sr("error",r);break;case"img":case"image":case"link":Sr("error",r),Sr("load",r);break;case"details":Sr("toggle",r);break;case"input":ee(r,s),Sr("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!s.multiple},Sr("invalid",r);break;case"textarea":le(r,s),Sr("invalid",r)}for(var c in we(n,s),e=null,s)s.hasOwnProperty(c)&&(a=s[c],"children"===c?"string"==typeof a?r.textContent!==a&&(e=["children",a]):"number"==typeof a&&r.textContent!==""+a&&(e=["children",""+a]):l.hasOwnProperty(c)&&null!=a&&"onScroll"===c&&Sr("scroll",r));switch(n){case"input":X(r),re(r,s,!0);break;case"textarea":X(r),ue(r);break;case"select":case"option":break;default:"function"==typeof s.onClick&&(r.onclick=zr)}r=e,t.updateQueue=r,null!==r&&(t.flags|=4)}else{switch(c=9===a.nodeType?a:a.ownerDocument,e===de&&(e=pe(n)),e===de?"script"===n?((e=c.createElement("div")).innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):"string"==typeof r.is?e=c.createElement(n,{is:r.is}):(e=c.createElement(n),"select"===n&&(c=e,r.multiple?c.multiple=!0:r.size&&(c.size=r.size))):e=c.createElementNS(e,n),e[Xr]=t,e[Jr]=r,Hi(e,t,!1,!1),t.stateNode=e,c=Me(n,r),n){case"dialog":Sr("cancel",e),Sr("close",e),a=r;break;case"iframe":case"object":case"embed":Sr("load",e),a=r;break;case"video":case"audio":for(a=0;a<Mr.length;a++)Sr(Mr[a],e);a=r;break;case"source":Sr("error",e),a=r;break;case"img":case"image":case"link":Sr("error",e),Sr("load",e),a=r;break;case"details":Sr("toggle",e),a=r;break;case"input":ee(e,r),a=$(e,r),Sr("invalid",e);break;case"option":a=ae(e,r);break;case"select":e._wrapperState={wasMultiple:!!r.multiple},a=o({},r,{value:void 0}),Sr("invalid",e);break;case"textarea":le(e,r),a=se(e,r),Sr("invalid",e);break;default:a=r}we(n,a);var u=a;for(s in u)if(u.hasOwnProperty(s)){var d=u[s];"style"===s?ye(e,d):"dangerouslySetInnerHTML"===s?null!=(d=d?d.__html:void 0)&&ge(e,d):"children"===s?"string"==typeof d?("textarea"!==n||""!==d)&&me(e,d):"number"==typeof d&&me(e,""+d):"suppressContentEditableWarning"!==s&&"suppressHydrationWarning"!==s&&"autoFocus"!==s&&(l.hasOwnProperty(s)?null!=d&&"onScroll"===s&&Sr("scroll",e):null!=d&&v(e,s,d,c))}switch(n){case"input":X(e),re(e,r,!1);break;case"textarea":X(e),ue(e);break;case"option":null!=r.value&&e.setAttribute("value",""+Z(r.value));break;case"select":e.multiple=!!r.multiple,null!=(s=r.value)?ie(e,!!r.multiple,s,!1):null!=r.defaultValue&&ie(e,!!r.multiple,r.defaultValue,!0);break;default:"function"==typeof a.onClick&&(e.onclick=zr)}Fr(n,r)&&(t.flags|=4)}null!==t.ref&&(t.flags|=128)}return null;case 6:if(e&&null!=t.stateNode)qi(e,t,e.memoizedProps,r);else{if("string"!=typeof r&&null===t.stateNode)throw Error(i(166));n=Da(Ba.current),Da(Sa.current),Wa(t)?(r=t.stateNode,n=t.memoizedProps,r[Xr]=t,r.nodeValue!==n&&(t.flags|=4)):((r=(9===n.nodeType?n:n.ownerDocument).createTextNode(r))[Xr]=t,t.stateNode=r)}return null;case 13:return lo(Oa),r=t.memoizedState,64&t.flags?(t.lanes=n,t):(r=null!==r,n=!1,null===e?void 0!==t.memoizedProps.fallback&&Wa(t):n=null!==e.memoizedState,r&&!n&&2&t.mode&&(null===e&&!0!==t.memoizedProps.unstable_avoidThisFallback||1&Oa.current?0===Ts&&(Ts=3):(0!==Ts&&3!==Ts||(Ts=4),null===Bs||!(134217727&zs)&&!(134217727&Rs)||fl(Bs,Is))),(r||n)&&(t.flags|=4),null);case 4:return ja(),Qi(t),null===e&&Br(t.stateNode.containerInfo),null;case 10:return na(t),null;case 19:if(lo(Oa),null===(r=t.memoizedState))return null;if(s=!!(64&t.flags),null===(c=r.rendering))if(s)rs(r,!1);else{if(0!==Ts||null!==e&&64&e.flags)for(e=t.child;null!==e;){if(null!==(c=Pa(e))){for(t.flags|=64,rs(r,!1),null!==(s=c.updateQueue)&&(t.updateQueue=s,t.flags|=4),null===r.lastEffect&&(t.firstEffect=null),t.lastEffect=r.lastEffect,r=n,n=t.child;null!==n;)e=r,(s=n).flags&=2,s.nextEffect=null,s.firstEffect=null,s.lastEffect=null,null===(c=s.alternate)?(s.childLanes=0,s.lanes=e,s.child=null,s.memoizedProps=null,s.memoizedState=null,s.updateQueue=null,s.dependencies=null,s.stateNode=null):(s.childLanes=c.childLanes,s.lanes=c.lanes,s.child=c.child,s.memoizedProps=c.memoizedProps,s.memoizedState=c.memoizedState,s.updateQueue=c.updateQueue,s.type=c.type,e=c.dependencies,s.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return co(Oa,1&Oa.current|2),t.child}e=e.sibling}null!==r.tail&&Yo()>Vs&&(t.flags|=64,s=!0,rs(r,!1),t.lanes=33554432)}else{if(!s)if(null!==(e=Pa(c))){if(t.flags|=64,s=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.flags|=4),rs(r,!0),null===r.tail&&"hidden"===r.tailMode&&!c.alternate&&!Ua)return null!==(t=t.lastEffect=r.lastEffect)&&(t.nextEffect=null),null}else 2*Yo()-r.renderingStartTime>Vs&&1073741824!==n&&(t.flags|=64,s=!0,rs(r,!1),t.lanes=33554432);r.isBackwards?(c.sibling=t.child,t.child=c):(null!==(n=r.last)?n.sibling=c:t.child=c,r.last=c)}return null!==r.tail?(n=r.tail,r.rendering=n,r.tail=n.sibling,r.lastEffect=t.lastEffect,r.renderingStartTime=Yo(),n.sibling=null,t=Oa.current,co(Oa,s?1&t|2:1&t),n):null;case 23:case 24:return Cl(),null!==e&&null!==e.memoizedState!=(null!==t.memoizedState)&&"unstable-defer-without-hiding"!==r.mode&&(t.flags|=4),null}throw Error(i(156,t.tag))}function as(e){switch(e.tag){case 1:go(e.type)&&mo();var t=e.flags;return 4096&t?(e.flags=-4097&t|64,e):null;case 3:if(ja(),lo(ho),lo(po),Za(),64&(t=e.flags))throw Error(i(285));return e.flags=-4097&t|64,e;case 5:return Ta(e),null;case 13:return lo(Oa),4096&(t=e.flags)?(e.flags=-4097&t|64,e):null;case 19:return lo(Oa),null;case 4:return ja(),null;case 10:return na(e),null;case 23:case 24:return Cl(),null;default:return null}}function is(e,t){try{var n="",r=t;do{n+=H(r),r=r.return}while(r);var o=n}catch(e){o="\nError generating stack: "+e.message+"\n"+e.stack}return{value:e,source:t,stack:o}}function ss(e,t){try{console.error(t.value)}catch(e){setTimeout((function(){throw e}))}}Hi=function(e,t){for(var n=t.child;null!==n;){if(5===n.tag||6===n.tag)e.appendChild(n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===t)break;for(;null===n.sibling;){if(null===n.return||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},Qi=function(){},Zi=function(e,t,n,r){var a=e.memoizedProps;if(a!==r){e=t.stateNode,Da(Sa.current);var i,s=null;switch(n){case"input":a=$(e,a),r=$(e,r),s=[];break;case"option":a=ae(e,a),r=ae(e,r),s=[];break;case"select":a=o({},a,{value:void 0}),r=o({},r,{value:void 0}),s=[];break;case"textarea":a=se(e,a),r=se(e,r),s=[];break;default:"function"!=typeof a.onClick&&"function"==typeof r.onClick&&(e.onclick=zr)}for(d in we(n,r),n=null,a)if(!r.hasOwnProperty(d)&&a.hasOwnProperty(d)&&null!=a[d])if("style"===d){var c=a[d];for(i in c)c.hasOwnProperty(i)&&(n||(n={}),n[i]="")}else"dangerouslySetInnerHTML"!==d&&"children"!==d&&"suppressContentEditableWarning"!==d&&"suppressHydrationWarning"!==d&&"autoFocus"!==d&&(l.hasOwnProperty(d)?s||(s=[]):(s=s||[]).push(d,null));for(d in r){var u=r[d];if(c=null!=a?a[d]:void 0,r.hasOwnProperty(d)&&u!==c&&(null!=u||null!=c))if("style"===d)if(c){for(i in c)!c.hasOwnProperty(i)||u&&u.hasOwnProperty(i)||(n||(n={}),n[i]="");for(i in u)u.hasOwnProperty(i)&&c[i]!==u[i]&&(n||(n={}),n[i]=u[i])}else n||(s||(s=[]),s.push(d,n)),n=u;else"dangerouslySetInnerHTML"===d?(u=u?u.__html:void 0,c=c?c.__html:void 0,null!=u&&c!==u&&(s=s||[]).push(d,u)):"children"===d?"string"!=typeof u&&"number"!=typeof u||(s=s||[]).push(d,""+u):"suppressContentEditableWarning"!==d&&"suppressHydrationWarning"!==d&&(l.hasOwnProperty(d)?(null!=u&&"onScroll"===d&&Sr("scroll",e),s||c===u||(s=[])):"object"==typeof u&&null!==u&&u.$$typeof===T?u.toString():(s=s||[]).push(d,u))}n&&(s=s||[]).push("style",n);var d=s;(t.updateQueue=d)&&(t.flags|=4)}},qi=function(e,t,n,r){n!==r&&(t.flags|=4)};var ls="function"==typeof WeakMap?WeakMap:Map;function cs(e,t,n){(n=ca(-1,n)).tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Qs||(Qs=!0,Zs=r),ss(0,t)},n}function us(e,t,n){(n=ca(-1,n)).tag=3;var r=e.type.getDerivedStateFromError;if("function"==typeof r){var o=t.value;n.payload=function(){return ss(0,t),r(o)}}var a=e.stateNode;return null!==a&&"function"==typeof a.componentDidCatch&&(n.callback=function(){"function"!=typeof r&&(null===qs?qs=new Set([this]):qs.add(this),ss(0,t));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}var ds="function"==typeof WeakSet?WeakSet:Set;function ps(e){var t=e.ref;if(null!==t)if("function"==typeof t)try{t(null)}catch(t){Tl(e,t)}else t.current=null}function hs(e,t){switch(t.tag){case 0:case 11:case 15:case 22:case 5:case 6:case 4:case 17:return;case 1:if(256&t.flags&&null!==e){var n=e.memoizedProps,r=e.memoizedState;t=(e=t.stateNode).getSnapshotBeforeUpdate(t.elementType===t.type?n:Xo(t.type,n),r),e.__reactInternalSnapshotBeforeUpdate=t}return;case 3:return void(256&t.flags&&Wr(t.stateNode.containerInfo))}throw Error(i(163))}function As(e,t,n){switch(n.tag){case 0:case 11:case 15:case 22:if(null!==(t=null!==(t=n.updateQueue)?t.lastEffect:null)){e=t=t.next;do{if(!(3&~e.tag)){var r=e.create;e.destroy=r()}e=e.next}while(e!==t)}if(null!==(t=null!==(t=n.updateQueue)?t.lastEffect:null)){e=t=t.next;do{var o=e;r=o.next,4&(o=o.tag)&&1&o&&(Il(n,e),Dl(n,e)),e=r}while(e!==t)}return;case 1:return e=n.stateNode,4&n.flags&&(null===t?e.componentDidMount():(r=n.elementType===n.type?t.memoizedProps:Xo(n.type,t.memoizedProps),e.componentDidUpdate(r,t.memoizedState,e.__reactInternalSnapshotBeforeUpdate))),void(null!==(t=n.updateQueue)&&ha(n,t,e));case 3:if(null!==(t=n.updateQueue)){if(e=null,null!==n.child)switch(n.child.tag){case 5:case 1:e=n.child.stateNode}ha(n,t,e)}return;case 5:return e=n.stateNode,void(null===t&&4&n.flags&&Fr(n.type,n.memoizedProps)&&e.focus());case 6:case 4:case 12:case 19:case 17:case 20:case 21:case 23:case 24:return;case 13:return void(null===n.memoizedState&&(n=n.alternate,null!==n&&(n=n.memoizedState,null!==n&&(n=n.dehydrated,null!==n&&vt(n)))))}throw Error(i(163))}function fs(e,t){for(var n=e;;){if(5===n.tag){var r=n.stateNode;if(t)"function"==typeof(r=r.style).setProperty?r.setProperty("display","none","important"):r.display="none";else{r=n.stateNode;var o=n.memoizedProps.style;o=null!=o&&o.hasOwnProperty("display")?o.display:null,r.style.display=ve("display",o)}}else if(6===n.tag)n.stateNode.nodeValue=t?"":n.memoizedProps;else if((23!==n.tag&&24!==n.tag||null===n.memoizedState||n===e)&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===e)break;for(;null===n.sibling;){if(null===n.return||n.return===e)return;n=n.return}n.sibling.return=n.return,n=n.sibling}}function gs(e,t){if(wo&&"function"==typeof wo.onCommitFiberUnmount)try{wo.onCommitFiberUnmount(xo,t)}catch(e){}switch(t.tag){case 0:case 11:case 14:case 15:case 22:if(null!==(e=t.updateQueue)&&null!==(e=e.lastEffect)){var n=e=e.next;do{var r=n,o=r.destroy;if(r=r.tag,void 0!==o)if(4&r)Il(t,n);else{r=t;try{o()}catch(e){Tl(r,e)}}n=n.next}while(n!==e)}break;case 1:if(ps(t),"function"==typeof(e=t.stateNode).componentWillUnmount)try{e.props=t.memoizedProps,e.state=t.memoizedState,e.componentWillUnmount()}catch(e){Tl(t,e)}break;case 5:ps(t);break;case 4:xs(e,t)}}function ms(e){e.alternate=null,e.child=null,e.dependencies=null,e.firstEffect=null,e.lastEffect=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.return=null,e.updateQueue=null}function Cs(e){return 5===e.tag||3===e.tag||4===e.tag}function bs(e){e:{for(var t=e.return;null!==t;){if(Cs(t))break e;t=t.return}throw Error(i(160))}var n=t;switch(t=n.stateNode,n.tag){case 5:var r=!1;break;case 3:case 4:t=t.containerInfo,r=!0;break;default:throw Error(i(161))}16&n.flags&&(me(t,""),n.flags&=-17);e:t:for(n=e;;){for(;null===n.sibling;){if(null===n.return||Cs(n.return)){n=null;break e}n=n.return}for(n.sibling.return=n.return,n=n.sibling;5!==n.tag&&6!==n.tag&&18!==n.tag;){if(2&n.flags)continue t;if(null===n.child||4===n.tag)continue t;n.child.return=n,n=n.child}if(!(2&n.flags)){n=n.stateNode;break e}}r?vs(e,n,t):ys(e,n,t)}function vs(e,t,n){var r=e.tag,o=5===r||6===r;if(o)e=o?e.stateNode:e.stateNode.instance,t?8===n.nodeType?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(8===n.nodeType?(t=n.parentNode).insertBefore(e,n):(t=n).appendChild(e),null!=(n=n._reactRootContainer)||null!==t.onclick||(t.onclick=zr));else if(4!==r&&null!==(e=e.child))for(vs(e,t,n),e=e.sibling;null!==e;)vs(e,t,n),e=e.sibling}function ys(e,t,n){var r=e.tag,o=5===r||6===r;if(o)e=o?e.stateNode:e.stateNode.instance,t?n.insertBefore(e,t):n.appendChild(e);else if(4!==r&&null!==(e=e.child))for(ys(e,t,n),e=e.sibling;null!==e;)ys(e,t,n),e=e.sibling}function xs(e,t){for(var n,r,o=t,a=!1;;){if(!a){a=o.return;e:for(;;){if(null===a)throw Error(i(160));switch(n=a.stateNode,a.tag){case 5:r=!1;break e;case 3:case 4:n=n.containerInfo,r=!0;break e}a=a.return}a=!0}if(5===o.tag||6===o.tag){e:for(var s=e,l=o,c=l;;)if(gs(s,c),null!==c.child&&4!==c.tag)c.child.return=c,c=c.child;else{if(c===l)break e;for(;null===c.sibling;){if(null===c.return||c.return===l)break e;c=c.return}c.sibling.return=c.return,c=c.sibling}r?(s=n,l=o.stateNode,8===s.nodeType?s.parentNode.removeChild(l):s.removeChild(l)):n.removeChild(o.stateNode)}else if(4===o.tag){if(null!==o.child){n=o.stateNode.containerInfo,r=!0,o.child.return=o,o=o.child;continue}}else if(gs(e,o),null!==o.child){o.child.return=o,o=o.child;continue}if(o===t)break;for(;null===o.sibling;){if(null===o.return||o.return===t)return;4===(o=o.return).tag&&(a=!1)}o.sibling.return=o.return,o=o.sibling}}function ws(e,t){switch(t.tag){case 0:case 11:case 14:case 15:case 22:var n=t.updateQueue;if(null!==(n=null!==n?n.lastEffect:null)){var r=n=n.next;do{!(3&~r.tag)&&(e=r.destroy,r.destroy=void 0,void 0!==e&&e()),r=r.next}while(r!==n)}return;case 1:case 12:case 17:return;case 5:if(null!=(n=t.stateNode)){r=t.memoizedProps;var o=null!==e?e.memoizedProps:r;e=t.type;var a=t.updateQueue;if(t.updateQueue=null,null!==a){for(n[Jr]=r,"input"===e&&"radio"===r.type&&null!=r.name&&te(n,r),Me(e,o),t=Me(e,r),o=0;o<a.length;o+=2){var s=a[o],l=a[o+1];"style"===s?ye(n,l):"dangerouslySetInnerHTML"===s?ge(n,l):"children"===s?me(n,l):v(n,s,l,t)}switch(e){case"input":ne(n,r);break;case"textarea":ce(n,r);break;case"select":e=n._wrapperState.wasMultiple,n._wrapperState.wasMultiple=!!r.multiple,null!=(a=r.value)?ie(n,!!r.multiple,a,!1):e!==!!r.multiple&&(null!=r.defaultValue?ie(n,!!r.multiple,r.defaultValue,!0):ie(n,!!r.multiple,r.multiple?[]:"",!1))}}}return;case 6:if(null===t.stateNode)throw Error(i(162));return void(t.stateNode.nodeValue=t.memoizedProps);case 3:return void((n=t.stateNode).hydrate&&(n.hydrate=!1,vt(n.containerInfo)));case 13:return null!==t.memoizedState&&(Ys=Yo(),fs(t.child,!0)),void Ms(t);case 19:return void Ms(t);case 23:case 24:return void fs(t,null!==t.memoizedState)}throw Error(i(163))}function Ms(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new ds),t.forEach((function(t){var r=Pl.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))}))}}function ks(e,t){return null!==e&&(null===(e=e.memoizedState)||null!==e.dehydrated)&&null!==(t=t.memoizedState)&&null===t.dehydrated}var Ns=Math.ceil,_s=y.ReactCurrentDispatcher,Ss=y.ReactCurrentOwner,Ls=0,Bs=null,Ds=null,Is=0,js=0,Es=so(0),Ts=0,Os=null,Ps=0,zs=0,Rs=0,Us=0,Fs=null,Ys=0,Vs=1/0;function Gs(){Vs=Yo()+500}var Ws,Hs=null,Qs=!1,Zs=null,qs=null,Xs=!1,Js=null,Ks=90,$s=[],el=[],tl=null,nl=0,rl=null,ol=-1,al=0,il=0,sl=null,ll=!1;function cl(){return 48&Ls?Yo():-1!==ol?ol:ol=Yo()}function ul(e){if(!(2&(e=e.mode)))return 1;if(!(4&e))return 99===Vo()?1:2;if(0===al&&(al=Ps),0!==qo.transition){0!==il&&(il=null!==Fs?Fs.pendingLanes:0),e=al;var t=4186112&~il;return 0==(t&=-t)&&0==(t=(e=4186112&~e)&-e)&&(t=8192),t}return e=Vo(),e=zt(4&Ls&&98===e?12:e=function(e){switch(e){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}(e),al)}function dl(e,t,n){if(50<nl)throw nl=0,rl=null,Error(i(185));if(null===(e=pl(e,t)))return null;Ft(e,t,n),e===Bs&&(Rs|=t,4===Ts&&fl(e,Is));var r=Vo();1===t?8&Ls&&!(48&Ls)?gl(e):(hl(e,n),0===Ls&&(Gs(),Qo())):(!(4&Ls)||98!==r&&99!==r||(null===tl?tl=new Set([e]):tl.add(e)),hl(e,n)),Fs=e}function pl(e,t){e.lanes|=t;var n=e.alternate;for(null!==n&&(n.lanes|=t),n=e,e=e.return;null!==e;)e.childLanes|=t,null!==(n=e.alternate)&&(n.childLanes|=t),n=e,e=e.return;return 3===n.tag?n.stateNode:null}function hl(e,t){for(var n=e.callbackNode,r=e.suspendedLanes,o=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes;0<s;){var l=31-Yt(s),c=1<<l,u=a[l];if(-1===u){if(!(c&r)||c&o){u=t,Tt(c);var d=Et;a[l]=10<=d?u+250:6<=d?u+5e3:-1}}else u<=t&&(e.expiredLanes|=c);s&=~c}if(r=Ot(e,e===Bs?Is:0),t=Et,0===r)null!==n&&(n!==Oo&&No(n),e.callbackNode=null,e.callbackPriority=0);else{if(null!==n){if(e.callbackPriority===t)return;n!==Oo&&No(n)}15===t?(n=gl.bind(null,e),null===zo?(zo=[n],Ro=ko(Do,Zo)):zo.push(n),n=Oo):14===t?n=Ho(99,gl.bind(null,e)):(n=function(e){switch(e){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(i(358,e))}}(t),n=Ho(n,Al.bind(null,e))),e.callbackPriority=t,e.callbackNode=n}}function Al(e){if(ol=-1,il=al=0,48&Ls)throw Error(i(327));var t=e.callbackNode;if(Bl()&&e.callbackNode!==t)return null;var n=Ot(e,e===Bs?Is:0);if(0===n)return null;var r=n,o=Ls;Ls|=16;var a=yl();for(Bs===e&&Is===r||(Gs(),bl(e,r));;)try{Ml();break}catch(t){vl(e,t)}if(ta(),_s.current=a,Ls=o,null!==Ds?r=0:(Bs=null,Is=0,r=Ts),Ps&Rs)bl(e,0);else if(0!==r){if(2===r&&(Ls|=64,e.hydrate&&(e.hydrate=!1,Wr(e.containerInfo)),0!==(n=Pt(e))&&(r=xl(e,n))),1===r)throw t=Os,bl(e,0),fl(e,n),hl(e,Yo()),t;switch(e.finishedWork=e.current.alternate,e.finishedLanes=n,r){case 0:case 1:throw Error(i(345));case 2:case 5:_l(e);break;case 3:if(fl(e,n),(62914560&n)===n&&10<(r=Ys+500-Yo())){if(0!==Ot(e,0))break;if(((o=e.suspendedLanes)&n)!==n){cl(),e.pingedLanes|=e.suspendedLanes&o;break}e.timeoutHandle=Vr(_l.bind(null,e),r);break}_l(e);break;case 4:if(fl(e,n),(4186112&n)===n)break;for(r=e.eventTimes,o=-1;0<n;){var s=31-Yt(n);a=1<<s,(s=r[s])>o&&(o=s),n&=~a}if(n=o,10<(n=(120>(n=Yo()-n)?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*Ns(n/1960))-n)){e.timeoutHandle=Vr(_l.bind(null,e),n);break}_l(e);break;default:throw Error(i(329))}}return hl(e,Yo()),e.callbackNode===t?Al.bind(null,e):null}function fl(e,t){for(t&=~Us,t&=~Rs,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Yt(t),r=1<<n;e[n]=-1,t&=~r}}function gl(e){if(48&Ls)throw Error(i(327));if(Bl(),e===Bs&&e.expiredLanes&Is){var t=Is,n=xl(e,t);Ps&Rs&&(n=xl(e,t=Ot(e,t)))}else n=xl(e,t=Ot(e,0));if(0!==e.tag&&2===n&&(Ls|=64,e.hydrate&&(e.hydrate=!1,Wr(e.containerInfo)),0!==(t=Pt(e))&&(n=xl(e,t))),1===n)throw n=Os,bl(e,0),fl(e,t),hl(e,Yo()),n;return e.finishedWork=e.current.alternate,e.finishedLanes=t,_l(e),hl(e,Yo()),null}function ml(e,t){co(Es,js),js|=t,Ps|=t}function Cl(){js=Es.current,lo(Es)}function bl(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,Gr(n)),null!==Ds)for(n=Ds.return;null!==n;){var r=n;switch(r.tag){case 1:null!=(r=r.type.childContextTypes)&&mo();break;case 3:ja(),lo(ho),lo(po),Za();break;case 5:Ta(r);break;case 4:ja();break;case 13:case 19:lo(Oa);break;case 10:na(r);break;case 23:case 24:Cl()}n=n.return}Bs=e,Ds=Fl(e.current,null),Is=js=Ps=t,Ts=0,Os=null,Us=Rs=zs=0}function vl(e,t){for(;;){var n=Ds;try{if(ta(),qa.current=Bi,ti){for(var r=Ka.memoizedState;null!==r;){var o=r.queue;null!==o&&(o.pending=null),r=r.next}ti=!1}if(Ja=0,ei=$a=Ka=null,ni=!1,Ss.current=null,null===n||null===n.return){Ts=1,Os=t,Ds=null;break}e:{var a=e,i=n.return,s=n,l=t;if(t=Is,s.flags|=2048,s.firstEffect=s.lastEffect=null,null!==l&&"object"==typeof l&&"function"==typeof l.then){var c=l;if(!(2&s.mode)){var u=s.alternate;u?(s.updateQueue=u.updateQueue,s.memoizedState=u.memoizedState,s.lanes=u.lanes):(s.updateQueue=null,s.memoizedState=null)}var d=!!(1&Oa.current),p=i;do{var h;if(h=13===p.tag){var A=p.memoizedState;if(null!==A)h=null!==A.dehydrated;else{var f=p.memoizedProps;h=void 0!==f.fallback&&(!0!==f.unstable_avoidThisFallback||!d)}}if(h){var g=p.updateQueue;if(null===g){var m=new Set;m.add(c),p.updateQueue=m}else g.add(c);if(!(2&p.mode)){if(p.flags|=64,s.flags|=16384,s.flags&=-2981,1===s.tag)if(null===s.alternate)s.tag=17;else{var C=ca(-1,1);C.tag=2,ua(s,C)}s.lanes|=1;break e}l=void 0,s=t;var b=a.pingCache;if(null===b?(b=a.pingCache=new ls,l=new Set,b.set(c,l)):void 0===(l=b.get(c))&&(l=new Set,b.set(c,l)),!l.has(s)){l.add(s);var v=Ol.bind(null,a,c,s);c.then(v,v)}p.flags|=4096,p.lanes=t;break e}p=p.return}while(null!==p);l=Error((Q(s.type)||"A React component")+" suspended while rendering, but no fallback UI was specified.\n\nAdd a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display.")}5!==Ts&&(Ts=2),l=is(l,s),p=i;do{switch(p.tag){case 3:a=l,p.flags|=4096,t&=-t,p.lanes|=t,da(p,cs(0,a,t));break e;case 1:a=l;var y=p.type,x=p.stateNode;if(!(64&p.flags||"function"!=typeof y.getDerivedStateFromError&&(null===x||"function"!=typeof x.componentDidCatch||null!==qs&&qs.has(x)))){p.flags|=4096,t&=-t,p.lanes|=t,da(p,us(p,a,t));break e}}p=p.return}while(null!==p)}Nl(n)}catch(e){t=e,Ds===n&&null!==n&&(Ds=n=n.return);continue}break}}function yl(){var e=_s.current;return _s.current=Bi,null===e?Bi:e}function xl(e,t){var n=Ls;Ls|=16;var r=yl();for(Bs===e&&Is===t||bl(e,t);;)try{wl();break}catch(t){vl(e,t)}if(ta(),Ls=n,_s.current=r,null!==Ds)throw Error(i(261));return Bs=null,Is=0,Ts}function wl(){for(;null!==Ds;)kl(Ds)}function Ml(){for(;null!==Ds&&!_o();)kl(Ds)}function kl(e){var t=Ws(e.alternate,e,js);e.memoizedProps=e.pendingProps,null===t?Nl(e):Ds=t,Ss.current=null}function Nl(e){var t=e;do{var n=t.alternate;if(e=t.return,2048&t.flags){if(null!==(n=as(t)))return n.flags&=2047,void(Ds=n);null!==e&&(e.firstEffect=e.lastEffect=null,e.flags|=2048)}else{if(null!==(n=os(n,t,js)))return void(Ds=n);if(24!==(n=t).tag&&23!==n.tag||null===n.memoizedState||1073741824&js||!(4&n.mode)){for(var r=0,o=n.child;null!==o;)r|=o.lanes|o.childLanes,o=o.sibling;n.childLanes=r}null!==e&&!(2048&e.flags)&&(null===e.firstEffect&&(e.firstEffect=t.firstEffect),null!==t.lastEffect&&(null!==e.lastEffect&&(e.lastEffect.nextEffect=t.firstEffect),e.lastEffect=t.lastEffect),1<t.flags&&(null!==e.lastEffect?e.lastEffect.nextEffect=t:e.firstEffect=t,e.lastEffect=t))}if(null!==(t=t.sibling))return void(Ds=t);Ds=t=e}while(null!==t);0===Ts&&(Ts=5)}function _l(e){var t=Vo();return Wo(99,Sl.bind(null,e,t)),null}function Sl(e,t){do{Bl()}while(null!==Js);if(48&Ls)throw Error(i(327));var n=e.finishedWork;if(null===n)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(i(177));e.callbackNode=null;var r=n.lanes|n.childLanes,o=r,a=e.pendingLanes&~o;e.pendingLanes=o,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=o,e.mutableReadLanes&=o,e.entangledLanes&=o,o=e.entanglements;for(var s=e.eventTimes,l=e.expirationTimes;0<a;){var c=31-Yt(a),u=1<<c;o[c]=0,s[c]=-1,l[c]=-1,a&=~u}if(null!==tl&&!(24&r)&&tl.has(e)&&tl.delete(e),e===Bs&&(Ds=Bs=null,Is=0),1<n.flags?null!==n.lastEffect?(n.lastEffect.nextEffect=n,r=n.firstEffect):r=n:r=n.firstEffect,null!==r){if(o=Ls,Ls|=32,Ss.current=null,Rr=Qt,fr(s=Ar())){if("selectionStart"in s)l={start:s.selectionStart,end:s.selectionEnd};else e:if(l=(l=s.ownerDocument)&&l.defaultView||window,(u=l.getSelection&&l.getSelection())&&0!==u.rangeCount){l=u.anchorNode,a=u.anchorOffset,c=u.focusNode,u=u.focusOffset;try{l.nodeType,c.nodeType}catch(e){l=null;break e}var d=0,p=-1,h=-1,A=0,f=0,g=s,m=null;t:for(;;){for(var C;g!==l||0!==a&&3!==g.nodeType||(p=d+a),g!==c||0!==u&&3!==g.nodeType||(h=d+u),3===g.nodeType&&(d+=g.nodeValue.length),null!==(C=g.firstChild);)m=g,g=C;for(;;){if(g===s)break t;if(m===l&&++A===a&&(p=d),m===c&&++f===u&&(h=d),null!==(C=g.nextSibling))break;m=(g=m).parentNode}g=C}l=-1===p||-1===h?null:{start:p,end:h}}else l=null;l=l||{start:0,end:0}}else l=null;Ur={focusedElem:s,selectionRange:l},Qt=!1,sl=null,ll=!1,Hs=r;do{try{Ll()}catch(e){if(null===Hs)throw Error(i(330));Tl(Hs,e),Hs=Hs.nextEffect}}while(null!==Hs);sl=null,Hs=r;do{try{for(s=e;null!==Hs;){var b=Hs.flags;if(16&b&&me(Hs.stateNode,""),128&b){var v=Hs.alternate;if(null!==v){var y=v.ref;null!==y&&("function"==typeof y?y(null):y.current=null)}}switch(1038&b){case 2:bs(Hs),Hs.flags&=-3;break;case 6:bs(Hs),Hs.flags&=-3,ws(Hs.alternate,Hs);break;case 1024:Hs.flags&=-1025;break;case 1028:Hs.flags&=-1025,ws(Hs.alternate,Hs);break;case 4:ws(Hs.alternate,Hs);break;case 8:xs(s,l=Hs);var x=l.alternate;ms(l),null!==x&&ms(x)}Hs=Hs.nextEffect}}catch(e){if(null===Hs)throw Error(i(330));Tl(Hs,e),Hs=Hs.nextEffect}}while(null!==Hs);if(y=Ur,v=Ar(),b=y.focusedElem,s=y.selectionRange,v!==b&&b&&b.ownerDocument&&hr(b.ownerDocument.documentElement,b)){null!==s&&fr(b)&&(v=s.start,void 0===(y=s.end)&&(y=v),"selectionStart"in b?(b.selectionStart=v,b.selectionEnd=Math.min(y,b.value.length)):(y=(v=b.ownerDocument||document)&&v.defaultView||window).getSelection&&(y=y.getSelection(),l=b.textContent.length,x=Math.min(s.start,l),s=void 0===s.end?x:Math.min(s.end,l),!y.extend&&x>s&&(l=s,s=x,x=l),l=pr(b,x),a=pr(b,s),l&&a&&(1!==y.rangeCount||y.anchorNode!==l.node||y.anchorOffset!==l.offset||y.focusNode!==a.node||y.focusOffset!==a.offset)&&((v=v.createRange()).setStart(l.node,l.offset),y.removeAllRanges(),x>s?(y.addRange(v),y.extend(a.node,a.offset)):(v.setEnd(a.node,a.offset),y.addRange(v))))),v=[];for(y=b;y=y.parentNode;)1===y.nodeType&&v.push({element:y,left:y.scrollLeft,top:y.scrollTop});for("function"==typeof b.focus&&b.focus(),b=0;b<v.length;b++)(y=v[b]).element.scrollLeft=y.left,y.element.scrollTop=y.top}Qt=!!Rr,Ur=Rr=null,e.current=n,Hs=r;do{try{for(b=e;null!==Hs;){var w=Hs.flags;if(36&w&&As(b,Hs.alternate,Hs),128&w){v=void 0;var M=Hs.ref;if(null!==M){var k=Hs.stateNode;Hs.tag,v=k,"function"==typeof M?M(v):M.current=v}}Hs=Hs.nextEffect}}catch(e){if(null===Hs)throw Error(i(330));Tl(Hs,e),Hs=Hs.nextEffect}}while(null!==Hs);Hs=null,Po(),Ls=o}else e.current=n;if(Xs)Xs=!1,Js=e,Ks=t;else for(Hs=r;null!==Hs;)t=Hs.nextEffect,Hs.nextEffect=null,8&Hs.flags&&((w=Hs).sibling=null,w.stateNode=null),Hs=t;if(0===(r=e.pendingLanes)&&(qs=null),1===r?e===rl?nl++:(nl=0,rl=e):nl=0,n=n.stateNode,wo&&"function"==typeof wo.onCommitFiberRoot)try{wo.onCommitFiberRoot(xo,n,void 0,!(64&~n.current.flags))}catch(e){}if(hl(e,Yo()),Qs)throw Qs=!1,e=Zs,Zs=null,e;return 8&Ls||Qo(),null}function Ll(){for(;null!==Hs;){var e=Hs.alternate;ll||null===sl||(8&Hs.flags?Ke(Hs,sl)&&(ll=!0):13===Hs.tag&&ks(e,Hs)&&Ke(Hs,sl)&&(ll=!0));var t=Hs.flags;256&t&&hs(e,Hs),!(512&t)||Xs||(Xs=!0,Ho(97,(function(){return Bl(),null}))),Hs=Hs.nextEffect}}function Bl(){if(90!==Ks){var e=97<Ks?97:Ks;return Ks=90,Wo(e,jl)}return!1}function Dl(e,t){$s.push(t,e),Xs||(Xs=!0,Ho(97,(function(){return Bl(),null})))}function Il(e,t){el.push(t,e),Xs||(Xs=!0,Ho(97,(function(){return Bl(),null})))}function jl(){if(null===Js)return!1;var e=Js;if(Js=null,48&Ls)throw Error(i(331));var t=Ls;Ls|=32;var n=el;el=[];for(var r=0;r<n.length;r+=2){var o=n[r],a=n[r+1],s=o.destroy;if(o.destroy=void 0,"function"==typeof s)try{s()}catch(e){if(null===a)throw Error(i(330));Tl(a,e)}}for(n=$s,$s=[],r=0;r<n.length;r+=2){o=n[r],a=n[r+1];try{var l=o.create;o.destroy=l()}catch(e){if(null===a)throw Error(i(330));Tl(a,e)}}for(l=e.current.firstEffect;null!==l;)e=l.nextEffect,l.nextEffect=null,8&l.flags&&(l.sibling=null,l.stateNode=null),l=e;return Ls=t,Qo(),!0}function El(e,t,n){ua(e,t=cs(0,t=is(n,t),1)),t=cl(),null!==(e=pl(e,1))&&(Ft(e,1,t),hl(e,t))}function Tl(e,t){if(3===e.tag)El(e,e,t);else for(var n=e.return;null!==n;){if(3===n.tag){El(n,e,t);break}if(1===n.tag){var r=n.stateNode;if("function"==typeof n.type.getDerivedStateFromError||"function"==typeof r.componentDidCatch&&(null===qs||!qs.has(r))){var o=us(n,e=is(t,e),1);if(ua(n,o),o=cl(),null!==(n=pl(n,1)))Ft(n,1,o),hl(n,o);else if("function"==typeof r.componentDidCatch&&(null===qs||!qs.has(r)))try{r.componentDidCatch(t,e)}catch(e){}break}}n=n.return}}function Ol(e,t,n){var r=e.pingCache;null!==r&&r.delete(t),t=cl(),e.pingedLanes|=e.suspendedLanes&n,Bs===e&&(Is&n)===n&&(4===Ts||3===Ts&&(62914560&Is)===Is&&500>Yo()-Ys?bl(e,0):Us|=n),hl(e,t)}function Pl(e,t){var n=e.stateNode;null!==n&&n.delete(t),0==(t=0)&&(2&(t=e.mode)?4&t?(0===al&&(al=Ps),0===(t=Rt(62914560&~al))&&(t=4194304)):t=99===Vo()?1:2:t=1),n=cl(),null!==(e=pl(e,t))&&(Ft(e,t,n),hl(e,n))}function zl(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.flags=0,this.lastEffect=this.firstEffect=this.nextEffect=null,this.childLanes=this.lanes=0,this.alternate=null}function Rl(e,t,n,r){return new zl(e,t,n,r)}function Ul(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Fl(e,t){var n=e.alternate;return null===n?((n=Rl(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.nextEffect=null,n.firstEffect=null,n.lastEffect=null),n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Yl(e,t,n,r,o,a){var s=2;if(r=e,"function"==typeof e)Ul(e)&&(s=1);else if("string"==typeof e)s=5;else e:switch(e){case M:return Vl(n.children,o,a,t);case O:s=8,o|=16;break;case k:s=8,o|=1;break;case N:return(e=Rl(12,n,t,8|o)).elementType=N,e.type=N,e.lanes=a,e;case B:return(e=Rl(13,n,t,o)).type=B,e.elementType=B,e.lanes=a,e;case D:return(e=Rl(19,n,t,o)).elementType=D,e.lanes=a,e;case P:return Gl(n,o,a,t);case z:return(e=Rl(24,n,t,o)).elementType=z,e.lanes=a,e;default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case _:s=10;break e;case S:s=9;break e;case L:s=11;break e;case I:s=14;break e;case j:s=16,r=null;break e;case E:s=22;break e}throw Error(i(130,null==e?e:typeof e,""))}return(t=Rl(s,n,t,o)).elementType=e,t.type=r,t.lanes=a,t}function Vl(e,t,n,r){return(e=Rl(7,e,r,t)).lanes=n,e}function Gl(e,t,n,r){return(e=Rl(23,e,r,t)).elementType=P,e.lanes=n,e}function Wl(e,t,n){return(e=Rl(6,e,null,t)).lanes=n,e}function Hl(e,t,n){return(t=Rl(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Ql(e,t,n){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.pendingContext=this.context=null,this.hydrate=n,this.callbackNode=null,this.callbackPriority=0,this.eventTimes=Ut(0),this.expirationTimes=Ut(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ut(0),this.mutableSourceEagerHydrationData=null}function Zl(e,t,n,r){var o=t.current,a=cl(),s=ul(o);e:if(n){t:{if(qe(n=n._reactInternals)!==n||1!==n.tag)throw Error(i(170));var l=n;do{switch(l.tag){case 3:l=l.stateNode.context;break t;case 1:if(go(l.type)){l=l.stateNode.__reactInternalMemoizedMergedChildContext;break t}}l=l.return}while(null!==l);throw Error(i(171))}if(1===n.tag){var c=n.type;if(go(c)){n=bo(n,c,l);break e}}n=l}else n=uo;return null===t.context?t.context=n:t.pendingContext=n,(t=ca(a,s)).payload={element:e},null!==(r=void 0===r?null:r)&&(t.callback=r),ua(o,t),dl(o,s,a),s}function ql(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function Xl(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n<t?n:t}}function Jl(e,t){Xl(e,t),(e=e.alternate)&&Xl(e,t)}function Kl(e,t,n){var r=null!=n&&null!=n.hydrationOptions&&n.hydrationOptions.mutableSources||null;if(n=new Ql(e,t,null!=n&&!0===n.hydrate),t=Rl(3,null,null,2===t?7:1===t?3:0),n.current=t,t.stateNode=n,sa(t),e[Kr]=n.current,Br(8===e.nodeType?e.parentNode:e),r)for(e=0;e<r.length;e++){var o=(t=r[e])._getVersion;o=o(t._source),null==n.mutableSourceEagerHydrationData?n.mutableSourceEagerHydrationData=[t,o]:n.mutableSourceEagerHydrationData.push(t,o)}this._internalRoot=n}function $l(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function ec(e,t,n,r,o){var a=n._reactRootContainer;if(a){var i=a._internalRoot;if("function"==typeof o){var s=o;o=function(){var e=ql(i);s.call(e)}}Zl(t,i,e,o)}else{if(a=n._reactRootContainer=function(e,t){if(t||(t=!(!(t=e?9===e.nodeType?e.documentElement:e.firstChild:null)||1!==t.nodeType||!t.hasAttribute("data-reactroot"))),!t)for(var n;n=e.lastChild;)e.removeChild(n);return new Kl(e,0,t?{hydrate:!0}:void 0)}(n,r),i=a._internalRoot,"function"==typeof o){var l=o;o=function(){var e=ql(i);l.call(e)}}!function(e,t){var n=Ls;Ls&=-2,Ls|=8;try{return e(t)}finally{0===(Ls=n)&&(Gs(),Qo())}}((function(){Zl(t,i,e,o)}))}return ql(i)}Ws=function(e,t,n){var r=t.lanes;if(null!==e)if(e.memoizedProps!==t.pendingProps||ho.current)Ti=!0;else{if(!(n&r)){switch(Ti=!1,t.tag){case 3:Wi(t),Ha();break;case 5:Ea(t);break;case 1:go(t.type)&&vo(t);break;case 4:Ia(t,t.stateNode.containerInfo);break;case 10:r=t.memoizedProps.value;var o=t.type._context;co(Jo,o._currentValue),o._currentValue=r;break;case 13:if(null!==t.memoizedState)return n&t.child.childLanes?Ji(e,t,n):(co(Oa,1&Oa.current),null!==(t=ns(e,t,n))?t.sibling:null);co(Oa,1&Oa.current);break;case 19:if(r=!!(n&t.childLanes),64&e.flags){if(r)return ts(e,t,n);t.flags|=64}if(null!==(o=t.memoizedState)&&(o.rendering=null,o.tail=null,o.lastEffect=null),co(Oa,Oa.current),r)break;return null;case 23:case 24:return t.lanes=0,Ui(e,t,n)}return ns(e,t,n)}Ti=!!(16384&e.flags)}else Ti=!1;switch(t.lanes=0,t.tag){case 2:if(r=t.type,null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,o=fo(t,po.current),oa(t,n),o=ai(null,t,r,e,o,n),t.flags|=1,"object"==typeof o&&null!==o&&"function"==typeof o.render&&void 0===o.$$typeof){if(t.tag=1,t.memoizedState=null,t.updateQueue=null,go(r)){var a=!0;vo(t)}else a=!1;t.memoizedState=null!==o.state&&void 0!==o.state?o.state:null,sa(t);var s=r.getDerivedStateFromProps;"function"==typeof s&&fa(t,r,s,e),o.updater=ga,t.stateNode=o,o._reactInternals=t,va(t,r,e,n),t=Gi(null,t,r,!0,a,n)}else t.tag=0,Oi(null,t,o,n),t=t.child;return t;case 16:o=t.elementType;e:{switch(null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,o=(a=o._init)(o._payload),t.type=o,a=t.tag=function(e){if("function"==typeof e)return Ul(e)?1:0;if(null!=e){if((e=e.$$typeof)===L)return 11;if(e===I)return 14}return 2}(o),e=Xo(o,e),a){case 0:t=Yi(null,t,o,e,n);break e;case 1:t=Vi(null,t,o,e,n);break e;case 11:t=Pi(null,t,o,e,n);break e;case 14:t=zi(null,t,o,Xo(o.type,e),r,n);break e}throw Error(i(306,o,""))}return t;case 0:return r=t.type,o=t.pendingProps,Yi(e,t,r,o=t.elementType===r?o:Xo(r,o),n);case 1:return r=t.type,o=t.pendingProps,Vi(e,t,r,o=t.elementType===r?o:Xo(r,o),n);case 3:if(Wi(t),r=t.updateQueue,null===e||null===r)throw Error(i(282));if(r=t.pendingProps,o=null!==(o=t.memoizedState)?o.element:null,la(e,t),pa(t,r,null,n),(r=t.memoizedState.element)===o)Ha(),t=ns(e,t,n);else{if((a=(o=t.stateNode).hydrate)&&(Ra=Hr(t.stateNode.containerInfo.firstChild),za=t,a=Ua=!0),a){if(null!=(e=o.mutableSourceEagerHydrationData))for(o=0;o<e.length;o+=2)(a=e[o])._workInProgressVersionPrimary=e[o+1],Qa.push(a);for(n=Na(t,null,r,n),t.child=n;n;)n.flags=-3&n.flags|1024,n=n.sibling}else Oi(e,t,r,n),Ha();t=t.child}return t;case 5:return Ea(t),null===e&&Va(t),r=t.type,o=t.pendingProps,a=null!==e?e.memoizedProps:null,s=o.children,Yr(r,o)?s=null:null!==a&&Yr(r,a)&&(t.flags|=16),Fi(e,t),Oi(e,t,s,n),t.child;case 6:return null===e&&Va(t),null;case 13:return Ji(e,t,n);case 4:return Ia(t,t.stateNode.containerInfo),r=t.pendingProps,null===e?t.child=ka(t,null,r,n):Oi(e,t,r,n),t.child;case 11:return r=t.type,o=t.pendingProps,Pi(e,t,r,o=t.elementType===r?o:Xo(r,o),n);case 7:return Oi(e,t,t.pendingProps,n),t.child;case 8:case 12:return Oi(e,t,t.pendingProps.children,n),t.child;case 10:e:{r=t.type._context,o=t.pendingProps,s=t.memoizedProps,a=o.value;var l=t.type._context;if(co(Jo,l._currentValue),l._currentValue=a,null!==s)if(l=s.value,0==(a=lr(l,a)?0:0|("function"==typeof r._calculateChangedBits?r._calculateChangedBits(l,a):1073741823))){if(s.children===o.children&&!ho.current){t=ns(e,t,n);break e}}else for(null!==(l=t.child)&&(l.return=t);null!==l;){var c=l.dependencies;if(null!==c){s=l.child;for(var u=c.firstContext;null!==u;){if(u.context===r&&u.observedBits&a){1===l.tag&&((u=ca(-1,n&-n)).tag=2,ua(l,u)),l.lanes|=n,null!==(u=l.alternate)&&(u.lanes|=n),ra(l.return,n),c.lanes|=n;break}u=u.next}}else s=10===l.tag&&l.type===t.type?null:l.child;if(null!==s)s.return=l;else for(s=l;null!==s;){if(s===t){s=null;break}if(null!==(l=s.sibling)){l.return=s.return,s=l;break}s=s.return}l=s}Oi(e,t,o.children,n),t=t.child}return t;case 9:return o=t.type,r=(a=t.pendingProps).children,oa(t,n),r=r(o=aa(o,a.unstable_observedBits)),t.flags|=1,Oi(e,t,r,n),t.child;case 14:return a=Xo(o=t.type,t.pendingProps),zi(e,t,o,a=Xo(o.type,a),r,n);case 15:return Ri(e,t,t.type,t.pendingProps,r,n);case 17:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:Xo(r,o),null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),t.tag=1,go(r)?(e=!0,vo(t)):e=!1,oa(t,n),Ca(t,r,o),va(t,r,o,n),Gi(null,t,r,!0,e,n);case 19:return ts(e,t,n);case 23:case 24:return Ui(e,t,n)}throw Error(i(156,t.tag))},Kl.prototype.render=function(e){Zl(e,this._internalRoot,null,null)},Kl.prototype.unmount=function(){var e=this._internalRoot,t=e.containerInfo;Zl(null,e,null,(function(){t[Kr]=null}))},$e=function(e){13===e.tag&&(dl(e,4,cl()),Jl(e,4))},et=function(e){13===e.tag&&(dl(e,67108864,cl()),Jl(e,67108864))},tt=function(e){if(13===e.tag){var t=cl(),n=ul(e);dl(e,n,t),Jl(e,n)}},nt=function(e,t){return t()},Ne=function(e,t,n){switch(t){case"input":if(ne(e,n),t=n.name,"radio"===n.type&&null!=t){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var o=ro(r);if(!o)throw Error(i(90));J(r),ne(r,o)}}}break;case"textarea":ce(e,n);break;case"select":null!=(t=n.value)&&ie(e,!!n.multiple,t,!1)}},Ie=function(e,t){var n=Ls;Ls|=1;try{return e(t)}finally{0===(Ls=n)&&(Gs(),Qo())}},je=function(e,t,n,r,o){var a=Ls;Ls|=4;try{return Wo(98,e.bind(null,t,n,r,o))}finally{0===(Ls=a)&&(Gs(),Qo())}},Ee=function(){!(49&Ls)&&(function(){if(null!==tl){var e=tl;tl=null,e.forEach((function(e){e.expiredLanes|=24&e.pendingLanes,hl(e,Yo())}))}Qo()}(),Bl())},Te=function(e,t){var n=Ls;Ls|=2;try{return e(t)}finally{0===(Ls=n)&&(Gs(),Qo())}};var tc={findFiberByHostInstance:eo,bundleType:0,version:"17.0.2",rendererPackageName:"react-dom"},nc={bundleType:tc.bundleType,version:tc.version,rendererPackageName:tc.rendererPackageName,rendererConfig:tc.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:y.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=function(e){if(e=function(e){var t=e.alternate;if(!t){if(null===(t=qe(e)))throw Error(i(188));return t!==e?null:e}for(var n=e,r=t;;){var o=n.return;if(null===o)break;var a=o.alternate;if(null===a){if(null!==(r=o.return)){n=r;continue}break}if(o.child===a.child){for(a=o.child;a;){if(a===n)return Je(o),e;if(a===r)return Je(o),t;a=a.sibling}throw Error(i(188))}if(n.return!==r.return)n=o,r=a;else{for(var s=!1,l=o.child;l;){if(l===n){s=!0,n=o,r=a;break}if(l===r){s=!0,r=o,n=a;break}l=l.sibling}if(!s){for(l=a.child;l;){if(l===n){s=!0,n=a,r=o;break}if(l===r){s=!0,r=a,n=o;break}l=l.sibling}if(!s)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(3!==n.tag)throw Error(i(188));return n.stateNode.current===n?e:t}(e),!e)return null;for(var t=e;;){if(5===t.tag||6===t.tag)return t;if(t.child)t.child.return=t,t=t.child;else{if(t===e)break;for(;!t.sibling;){if(!t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}}return null}(e))?null:e.stateNode},findFiberByHostInstance:tc.findFiberByHostInstance||function(){return null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null};if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var rc=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!rc.isDisabled&&rc.supportsFiber)try{xo=rc.inject(nc),wo=rc}catch(fe){}}t.createPortal=function(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!$l(t))throw Error(i(200));return function(e,t,n){var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:w,key:null==r?null:""+r,children:e,containerInfo:t,implementation:n}}(e,t,null,n)},t.render=function(e,t,n){if(!$l(t))throw Error(i(200));return ec(null,e,t,!1,n)}},665:(e,t,n)=>{"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}(),e.exports=n(3903)},5924:(e,t,n)=>{"use strict";n(772);var r=n(7460),o=60103;if(t.Fragment=60107,"function"==typeof Symbol&&Symbol.for){var a=Symbol.for;o=a("react.element"),t.Fragment=a("react.fragment")}var i=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s=Object.prototype.hasOwnProperty,l={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,n){var r,a={},c=null,u=null;for(r in void 0!==n&&(c=""+n),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(u=t.ref),t)s.call(t,r)&&!l.hasOwnProperty(r)&&(a[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===a[r]&&(a[r]=t[r]);return{$$typeof:o,type:e,key:c,ref:u,props:a,_owner:i.current}}t.jsx=c,t.jsxs=c},6351:(e,t,n)=>{"use strict";var r=n(772),o=60103,a=60106;t.Fragment=60107,t.StrictMode=60108,t.Profiler=60114;var i=60109,s=60110,l=60112;t.Suspense=60113;var c=60115,u=60116;if("function"==typeof Symbol&&Symbol.for){var d=Symbol.for;o=d("react.element"),a=d("react.portal"),t.Fragment=d("react.fragment"),t.StrictMode=d("react.strict_mode"),t.Profiler=d("react.profiler"),i=d("react.provider"),s=d("react.context"),l=d("react.forward_ref"),t.Suspense=d("react.suspense"),c=d("react.memo"),u=d("react.lazy")}var p="function"==typeof Symbol&&Symbol.iterator;function h(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var A={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},f={};function g(e,t,n){this.props=e,this.context=t,this.refs=f,this.updater=n||A}function m(){}function C(e,t,n){this.props=e,this.context=t,this.refs=f,this.updater=n||A}g.prototype.isReactComponent={},g.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error(h(85));this.updater.enqueueSetState(this,e,t,"setState")},g.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},m.prototype=g.prototype;var b=C.prototype=new m;b.constructor=C,r(b,g.prototype),b.isPureReactComponent=!0;var v={current:null},y=Object.prototype.hasOwnProperty,x={key:!0,ref:!0,__self:!0,__source:!0};function w(e,t,n){var r,a={},i=null,s=null;if(null!=t)for(r in void 0!==t.ref&&(s=t.ref),void 0!==t.key&&(i=""+t.key),t)y.call(t,r)&&!x.hasOwnProperty(r)&&(a[r]=t[r]);var l=arguments.length-2;if(1===l)a.children=n;else if(1<l){for(var c=Array(l),u=0;u<l;u++)c[u]=arguments[u+2];a.children=c}if(e&&e.defaultProps)for(r in l=e.defaultProps)void 0===a[r]&&(a[r]=l[r]);return{$$typeof:o,type:e,key:i,ref:s,props:a,_owner:v.current}}function M(e){return"object"==typeof e&&null!==e&&e.$$typeof===o}var k=/\/+/g;function N(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function _(e,t,n,r,i){var s=typeof e;"undefined"!==s&&"boolean"!==s||(e=null);var l=!1;if(null===e)l=!0;else switch(s){case"string":case"number":l=!0;break;case"object":switch(e.$$typeof){case o:case a:l=!0}}if(l)return i=i(l=e),e=""===r?"."+N(l,0):r,Array.isArray(i)?(n="",null!=e&&(n=e.replace(k,"$&/")+"/"),_(i,t,n,"",(function(e){return e}))):null!=i&&(M(i)&&(i=function(e,t){return{$$typeof:o,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(i,n+(!i.key||l&&l.key===i.key?"":(""+i.key).replace(k,"$&/")+"/")+e)),t.push(i)),1;if(l=0,r=""===r?".":r+":",Array.isArray(e))for(var c=0;c<e.length;c++){var u=r+N(s=e[c],c);l+=_(s,t,n,u,i)}else if(u=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=p&&e[p]||e["@@iterator"])?e:null}(e),"function"==typeof u)for(e=u.call(e),c=0;!(s=e.next()).done;)l+=_(s=s.value,t,n,u=r+N(s,c++),i);else if("object"===s)throw t=""+e,Error(h(31,"[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t));return l}function S(e,t,n){if(null==e)return e;var r=[],o=0;return _(e,r,"","",(function(e){return t.call(n,e,o++)})),r}function L(e){if(-1===e._status){var t=e._result;t=t(),e._status=0,e._result=t,t.then((function(t){0===e._status&&(t=t.default,e._status=1,e._result=t)}),(function(t){0===e._status&&(e._status=2,e._result=t)}))}if(1===e._status)return e._result;throw e._result}var B={current:null};function D(){var e=B.current;if(null===e)throw Error(h(321));return e}var I={ReactCurrentDispatcher:B,ReactCurrentBatchConfig:{transition:0},ReactCurrentOwner:v,IsSomeRendererActing:{current:!1},assign:r};t.Children={map:S,forEach:function(e,t,n){S(e,(function(){t.apply(this,arguments)}),n)},count:function(e){var t=0;return S(e,(function(){t++})),t},toArray:function(e){return S(e,(function(e){return e}))||[]},only:function(e){if(!M(e))throw Error(h(143));return e}},t.Component=g,t.PureComponent=C,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=I,t.cloneElement=function(e,t,n){if(null==e)throw Error(h(267,e));var a=r({},e.props),i=e.key,s=e.ref,l=e._owner;if(null!=t){if(void 0!==t.ref&&(s=t.ref,l=v.current),void 0!==t.key&&(i=""+t.key),e.type&&e.type.defaultProps)var c=e.type.defaultProps;for(u in t)y.call(t,u)&&!x.hasOwnProperty(u)&&(a[u]=void 0===t[u]&&void 0!==c?c[u]:t[u])}var u=arguments.length-2;if(1===u)a.children=n;else if(1<u){c=Array(u);for(var d=0;d<u;d++)c[d]=arguments[d+2];a.children=c}return{$$typeof:o,type:e.type,key:i,ref:s,props:a,_owner:l}},t.createContext=function(e,t){return void 0===t&&(t=null),(e={$$typeof:s,_calculateChangedBits:t,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null}).Provider={$$typeof:i,_context:e},e.Consumer=e},t.createElement=w,t.createFactory=function(e){var t=w.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:l,render:e}},t.isValidElement=M,t.lazy=function(e){return{$$typeof:u,_payload:{_status:-1,_result:e},_init:L}},t.memo=function(e,t){return{$$typeof:c,type:e,compare:void 0===t?null:t}},t.useCallback=function(e,t){return D().useCallback(e,t)},t.useContext=function(e,t){return D().useContext(e,t)},t.useDebugValue=function(){},t.useEffect=function(e,t){return D().useEffect(e,t)},t.useImperativeHandle=function(e,t,n){return D().useImperativeHandle(e,t,n)},t.useLayoutEffect=function(e,t){return D().useLayoutEffect(e,t)},t.useMemo=function(e,t){return D().useMemo(e,t)},t.useReducer=function(e,t,n){return D().useReducer(e,t,n)},t.useRef=function(e){return D().useRef(e)},t.useState=function(e){return D().useState(e)},t.version="17.0.2"},7460:(e,t,n)=>{"use strict";e.exports=n(6351)},6088:(e,t,n)=>{"use strict";e.exports=n(5924)},6447:(e,t)=>{"use strict";var n,r,o,a;if("object"==typeof performance&&"function"==typeof performance.now){var i=performance;t.unstable_now=function(){return i.now()}}else{var s=Date,l=s.now();t.unstable_now=function(){return s.now()-l}}if("undefined"==typeof window||"function"!=typeof MessageChannel){var c=null,u=null,d=function(){if(null!==c)try{var e=t.unstable_now();c(!0,e),c=null}catch(e){throw setTimeout(d,0),e}};n=function(e){null!==c?setTimeout(n,0,e):(c=e,setTimeout(d,0))},r=function(e,t){u=setTimeout(e,t)},o=function(){clearTimeout(u)},t.unstable_shouldYield=function(){return!1},a=t.unstable_forceFrameRate=function(){}}else{var p=window.setTimeout,h=window.clearTimeout;if("undefined"!=typeof console){var A=window.cancelAnimationFrame;"function"!=typeof window.requestAnimationFrame&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),"function"!=typeof A&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")}var f=!1,g=null,m=-1,C=5,b=0;t.unstable_shouldYield=function(){return t.unstable_now()>=b},a=function(){},t.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):C=0<e?Math.floor(1e3/e):5};var v=new MessageChannel,y=v.port2;v.port1.onmessage=function(){if(null!==g){var e=t.unstable_now();b=e+C;try{g(!0,e)?y.postMessage(null):(f=!1,g=null)}catch(e){throw y.postMessage(null),e}}else f=!1},n=function(e){g=e,f||(f=!0,y.postMessage(null))},r=function(e,n){m=p((function(){e(t.unstable_now())}),n)},o=function(){h(m),m=-1}}function x(e,t){var n=e.length;e.push(t);e:for(;;){var r=n-1>>>1,o=e[r];if(!(void 0!==o&&0<k(o,t)))break e;e[r]=t,e[n]=o,n=r}}function w(e){return void 0===(e=e[0])?null:e}function M(e){var t=e[0];if(void 0!==t){var n=e.pop();if(n!==t){e[0]=n;e:for(var r=0,o=e.length;r<o;){var a=2*(r+1)-1,i=e[a],s=a+1,l=e[s];if(void 0!==i&&0>k(i,n))void 0!==l&&0>k(l,i)?(e[r]=l,e[s]=n,r=s):(e[r]=i,e[a]=n,r=a);else{if(!(void 0!==l&&0>k(l,n)))break e;e[r]=l,e[s]=n,r=s}}}return t}return null}function k(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}var N=[],_=[],S=1,L=null,B=3,D=!1,I=!1,j=!1;function E(e){for(var t=w(_);null!==t;){if(null===t.callback)M(_);else{if(!(t.startTime<=e))break;M(_),t.sortIndex=t.expirationTime,x(N,t)}t=w(_)}}function T(e){if(j=!1,E(e),!I)if(null!==w(N))I=!0,n(O);else{var t=w(_);null!==t&&r(T,t.startTime-e)}}function O(e,n){I=!1,j&&(j=!1,o()),D=!0;var a=B;try{for(E(n),L=w(N);null!==L&&(!(L.expirationTime>n)||e&&!t.unstable_shouldYield());){var i=L.callback;if("function"==typeof i){L.callback=null,B=L.priorityLevel;var s=i(L.expirationTime<=n);n=t.unstable_now(),"function"==typeof s?L.callback=s:L===w(N)&&M(N),E(n)}else M(N);L=w(N)}if(null!==L)var l=!0;else{var c=w(_);null!==c&&r(T,c.startTime-n),l=!1}return l}finally{L=null,B=a,D=!1}}var P=a;t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){I||D||(I=!0,n(O))},t.unstable_getCurrentPriorityLevel=function(){return B},t.unstable_getFirstCallbackNode=function(){return w(N)},t.unstable_next=function(e){switch(B){case 1:case 2:case 3:var t=3;break;default:t=B}var n=B;B=t;try{return e()}finally{B=n}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=P,t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=B;B=e;try{return t()}finally{B=n}},t.unstable_scheduleCallback=function(e,a,i){var s=t.unstable_now();switch(i="object"==typeof i&&null!==i&&"number"==typeof(i=i.delay)&&0<i?s+i:s,e){case 1:var l=-1;break;case 2:l=250;break;case 5:l=1073741823;break;case 4:l=1e4;break;default:l=5e3}return e={id:S++,callback:a,priorityLevel:e,startTime:i,expirationTime:l=i+l,sortIndex:-1},i>s?(e.sortIndex=i,x(_,e),null===w(N)&&e===w(_)&&(j?o():j=!0,r(T,i-s))):(e.sortIndex=l,x(N,e),I||D||(I=!0,n(O))),e},t.unstable_wrapCallback=function(e){var t=B;return function(){var n=B;B=t;try{return e.apply(this,arguments)}finally{B=n}}}},9798:(e,t,n)=>{"use strict";e.exports=n(6447)},8392:e=>{"use strict";var t=[];function n(e){for(var n=-1,r=0;r<t.length;r++)if(t[r].identifier===e){n=r;break}return n}function r(e,r){for(var a={},i=[],s=0;s<e.length;s++){var l=e[s],c=r.base?l[0]+r.base:l[0],u=a[c]||0,d="".concat(c," ").concat(u);a[c]=u+1;var p=n(d),h={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==p)t[p].references++,t[p].updater(h);else{var A=o(h,r);r.byIndex=s,t.splice(s,0,{identifier:d,updater:A,references:1})}i.push(d)}return i}function o(e,t){var n=t.domAPI(t);return n.update(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap&&t.supports===e.supports&&t.layer===e.layer)return;n.update(e=t)}else n.remove()}}e.exports=function(e,o){var a=r(e=e||[],o=o||{});return function(e){e=e||[];for(var i=0;i<a.length;i++){var s=n(a[i]);t[s].references--}for(var l=r(e,o),c=0;c<a.length;c++){var u=n(a[c]);0===t[u].references&&(t[u].updater(),t.splice(u,1))}a=l}}},3187:e=>{"use strict";var t={};e.exports=function(e,n){var r=function(e){if(void 0===t[e]){var n=document.querySelector(e);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(e){n=null}t[e]=n}return t[e]}(e);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(n)}},1316:e=>{"use strict";e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},3784:(e,t,n)=>{"use strict";e.exports=function(e){var t=n.nc;t&&e.setAttribute("nonce",t)}},2633:e=>{"use strict";e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(n){!function(e,t,n){var r="";n.supports&&(r+="@supports (".concat(n.supports,") {")),n.media&&(r+="@media ".concat(n.media," {"));var o=void 0!==n.layer;o&&(r+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),r+=n.css,o&&(r+="}"),n.media&&(r+="}"),n.supports&&(r+="}");var a=n.sourceMap;a&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(a))))," */")),t.styleTagTransform(r,e,t.options)}(t,e,n)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},9809:e=>{"use strict";e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},2395:t=>{"use strict";t.exports=e}},n={};function r(e){var o=n[e];if(void 0!==o)return o.exports;var a=n[e]={id:e,loaded:!1,exports:{}};return t[e](a,a.exports,r),a.loaded=!0,a.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.nc=void 0;var o={};return(()=>{"use strict";r.d(o,{default:()=>fi});var e={};r.r(e),r.d(e,{NodeEditor:()=>hi});var t,n,a=r(7460),i=r(665),s=r(2395),l=r(6088),c=r(8392),u=r.n(c),d=r(2633),p=r.n(d),h=r(3187),A=r.n(h),f=r(3784),g=r.n(f),m=r(1316),C=r.n(m),b=r(9809),v=r.n(b),y=r(9707),x={};x.styleTagTransform=v(),x.setAttributes=g(),x.insert=A().bind(null,"head"),x.domAPI=p(),x.insertStyleElement=C(),u()(y.A,x),y.A&&y.A.locals&&y.A.locals;class w{constructor(e,t){this.message=e,this.isError=t,this.time=new Date}}class M extends a.Component{constructor(e){super(e),this.state={logs:[]},this._logConsoleRef=a.createRef()}componentDidMount(){this.props.globalState.onLogRequiredObservable.add((e=>{const t=this.state.logs;t.push(e),this.setState({logs:t})}))}componentDidUpdate(){this._logConsoleRef.current&&(this._logConsoleRef.current.scrollTop=this._logConsoleRef.current.scrollHeight)}render(){return(0,l.jsx)("div",{id:"nme-log-console",ref:this._logConsoleRef,children:this.state.logs.map(((e,t)=>(0,l.jsx)("div",{className:"log"+(e.isError?" error":""),children:e.time.getHours()+":"+e.time.getMinutes()+":"+e.time.getSeconds()+": "+e.message},t)))})}}!function(e){e[e.Sphere=0]="Sphere",e[e.Box=1]="Box",e[e.Torus=2]="Torus",e[e.Cylinder=3]="Cylinder",e[e.Plane=4]="Plane",e[e.ShaderBall=5]="ShaderBall",e[e.DefaultParticleSystem=6]="DefaultParticleSystem",e[e.Bubbles=7]="Bubbles",e[e.Smoke=8]="Smoke",e[e.Rain=9]="Rain",e[e.Explosion=10]="Explosion",e[e.Fire=11]="Fire",e[e.Parrot=12]="Parrot",e[e.BricksSkull=13]="BricksSkull",e[e.Plants=14]="Plants",e[e.Custom=15]="Custom",e[e.Room=16]="Room"}(t||(t={}));class k{static GetBlockFromString(e,t,n){switch(e){case"StorageWriteBlock":return new s.StorageWriteBlock("StorageWrite");case"StorageReadBlock":return new s.StorageReadBlock("StorageRead");case"LoopBlock":return new s.LoopBlock("Loop");case"ColorConverterBlock":return new s.ColorConverterBlock("ColorConverter");case"TeleportInBlock":return new s.NodeMaterialTeleportInBlock("Teleport In");case"TeleportOutBlock":return new s.NodeMaterialTeleportOutBlock("Teleport Out");case"HeightToNormalBlock":return new s.HeightToNormalBlock("HeightToNormal");case"ElbowBlock":return new s.ElbowBlock("");case"TwirlBlock":return new s.TwirlBlock("Twirl");case"VoronoiNoiseBlock":return new s.VoronoiNoiseBlock("VoronoiNoise");case"ScreenSpaceBlock":return new s.ScreenSpaceBlock("ScreenSpace");case"CloudBlock":return new s.CloudBlock("Cloud");case"MatrixBuilderBlock":return new s.MatrixBuilderBlock("MatrixBuilder");case"DesaturateBlock":return new s.DesaturateBlock("Desaturate");case"RefractBlock":return new s.RefractBlock("Refract");case"ReflectBlock":return new s.ReflectBlock("Reflect");case"DerivativeBlock":return new s.DerivativeBlock("Derivative");case"Rotate2dBlock":return new s.Rotate2dBlock("Rotate2d");case"NormalBlendBlock":return new s.NormalBlendBlock("NormalBlend");case"WorleyNoise3DBlock":return new s.WorleyNoise3DBlock("WorleyNoise3D");case"SimplexPerlin3DBlock":return new s.SimplexPerlin3DBlock("SimplexPerlin3D");case"BonesBlock":return new s.BonesBlock("Bones");case"InstancesBlock":return new s.InstancesBlock("Instances");case"MorphTargetsBlock":return new s.MorphTargetsBlock("MorphTargets");case"DiscardBlock":return new s.DiscardBlock("Discard");case"PrePassTextureBlock":return new s.PrePassTextureBlock("PrePassTexture");case"ImageProcessingBlock":return new s.ImageProcessingBlock("ImageProcessing");case"ColorMergerBlock":return new s.ColorMergerBlock("ColorMerger");case"VectorMergerBlock":return new s.VectorMergerBlock("VectorMerger");case"ColorSplitterBlock":return new s.ColorSplitterBlock("ColorSplitter");case"VectorSplitterBlock":return new s.VectorSplitterBlock("VectorSplitter");case"TextureBlock":return new s.TextureBlock("Texture",n.mode===s.NodeMaterialModes.Particle);case"ReflectionTextureBlock":return new s.ReflectionTextureBlock("Reflection texture");case"LightBlock":return new s.LightBlock("Lights");case"FogBlock":return new s.FogBlock("Fog");case"VertexOutputBlock":return new s.VertexOutputBlock("VertexOutput");case"FragmentOutputBlock":return new s.FragmentOutputBlock("FragmentOutput");case"PrePassOutputBlock":return new s.PrePassOutputBlock("PrePassOutput");case"AddBlock":return new s.AddBlock("Add");case"ClampBlock":return new s.ClampBlock("Clamp");case"ScaleBlock":return new s.ScaleBlock("Scale");case"CrossBlock":return new s.CrossBlock("Cross");case"DotBlock":return new s.DotBlock("Dot");case"PowBlock":return new s.PowBlock("Pow");case"MultiplyBlock":return new s.MultiplyBlock("Multiply");case"TransformBlock":return new s.TransformBlock("Transform");case"TrigonometryBlock":return new s.TrigonometryBlock("Trigonometry");case"RemapBlock":return new s.RemapBlock("Remap");case"NormalizeBlock":return new s.NormalizeBlock("Normalize");case"FresnelBlock":return new s.FresnelBlock("Fresnel");case"LerpBlock":return new s.LerpBlock("Lerp");case"NLerpBlock":return new s.NLerpBlock("NLerp");case"DivideBlock":return new s.DivideBlock("Divide");case"SubtractBlock":return new s.SubtractBlock("Subtract");case"ModBlock":return new s.ModBlock("Mod");case"StepBlock":return new s.StepBlock("Step");case"SmoothStepBlock":return new s.SmoothStepBlock("Smooth step");case"OneMinusBlock":return new s.OneMinusBlock("One minus");case"ReciprocalBlock":return new s.ReciprocalBlock("Reciprocal");case"ViewDirectionBlock":return new s.ViewDirectionBlock("View direction");case"LightInformationBlock":{const e=new s.LightInformationBlock("Light information");return e.light=t.lights.length?t.lights[0]:null,e}case"MaxBlock":return new s.MaxBlock("Max");case"MinBlock":return new s.MinBlock("Min");case"LengthBlock":return new s.LengthBlock("Length");case"DistanceBlock":return new s.DistanceBlock("Distance");case"NegateBlock":return new s.NegateBlock("Negate");case"PerturbNormalBlock":return new s.PerturbNormalBlock("Perturb normal");case"TBNBlock":return new s.TBNBlock("TBN");case"RandomNumberBlock":return new s.RandomNumberBlock("Random number");case"ReplaceColorBlock":return new s.ReplaceColorBlock("Replace color");case"PosterizeBlock":return new s.PosterizeBlock("Posterize");case"ArcTan2Block":return new s.ArcTan2Block("ArcTan2");case"GradientBlock":return new s.GradientBlock("Gradient");case"FrontFacingBlock":return new s.FrontFacingBlock("Front facing");case"MeshAttributeExistsBlock":return new s.MeshAttributeExistsBlock("Attribute exists");case"CosBlock":{const e=new s.TrigonometryBlock("Cos");return e.operation=s.TrigonometryBlockOperations.Cos,e}case"SinBlock":{const e=new s.TrigonometryBlock("Sin");return e.operation=s.TrigonometryBlockOperations.Sin,e}case"AbsBlock":{const e=new s.TrigonometryBlock("Abs");return e.operation=s.TrigonometryBlockOperations.Abs,e}case"SqrtBlock":{const e=new s.TrigonometryBlock("Sqrt");return e.operation=s.TrigonometryBlockOperations.Sqrt,e}case"ArcCosBlock":{const e=new s.TrigonometryBlock("ArcCos");return e.operation=s.TrigonometryBlockOperations.ArcCos,e}case"ArcSinBlock":{const e=new s.TrigonometryBlock("ArcSin");return e.operation=s.TrigonometryBlockOperations.ArcSin,e}case"TanBlock":{const e=new s.TrigonometryBlock("Tan");return e.operation=s.TrigonometryBlockOperations.Tan,e}case"ArcTanBlock":{const e=new s.TrigonometryBlock("ArcTan");return e.operation=s.TrigonometryBlockOperations.ArcTan,e}case"FractBlock":{const e=new s.TrigonometryBlock("Fract");return e.operation=s.TrigonometryBlockOperations.Fract,e}case"SignBlock":{const e=new s.TrigonometryBlock("Sign");return e.operation=s.TrigonometryBlockOperations.Sign,e}case"LogBlock":{const e=new s.TrigonometryBlock("Log");return e.operation=s.TrigonometryBlockOperations.Log,e}case"ExpBlock":{const e=new s.TrigonometryBlock("Exp");return e.operation=s.TrigonometryBlockOperations.Exp,e}case"Exp2Block":{const e=new s.TrigonometryBlock("Exp2");return e.operation=s.TrigonometryBlockOperations.Exp2,e}case"DegreesToRadiansBlock":{const e=new s.TrigonometryBlock("Degrees to radians");return e.operation=s.TrigonometryBlockOperations.Radians,e}case"RadiansToDegreesBlock":{const e=new s.TrigonometryBlock("Radians to degrees");return e.operation=s.TrigonometryBlockOperations.Degrees,e}case"RoundBlock":{const e=new s.TrigonometryBlock("Round");return e.operation=s.TrigonometryBlockOperations.Round,e}case"CeilingBlock":{const e=new s.TrigonometryBlock("Ceiling");return e.operation=s.TrigonometryBlockOperations.Ceiling,e}case"FloorBlock":{const e=new s.TrigonometryBlock("Floor");return e.operation=s.TrigonometryBlockOperations.Floor,e}case"SawToothWaveBlock":{const e=new s.WaveBlock("SawTooth wave");return e.kind=0,e}case"SquareWaveBlock":{const e=new s.WaveBlock("Square wave");return e.kind=1,e}case"TriangleWaveBlock":{const e=new s.WaveBlock("Triangle wave");return e.kind=2,e}case"SetBlock":{const e=new s.TrigonometryBlock("Set");return e.operation=s.TrigonometryBlockOperations.Set,e}case"WorldMatrixBlock":{const e=new s.InputBlock("World");return e.setAsSystemValue(s.NodeMaterialSystemValues.World),e}case"WorldViewMatrixBlock":{const e=new s.InputBlock("World x View");return e.setAsSystemValue(s.NodeMaterialSystemValues.WorldView),e}case"WorldViewProjectionMatrixBlock":{const e=new s.InputBlock("World x View x Projection");return e.setAsSystemValue(s.NodeMaterialSystemValues.WorldViewProjection),e}case"ViewMatrixBlock":{const e=new s.InputBlock("View");return e.setAsSystemValue(s.NodeMaterialSystemValues.View),e}case"ViewProjectionMatrixBlock":{const e=new s.InputBlock("View x Projection");return e.setAsSystemValue(s.NodeMaterialSystemValues.ViewProjection),e}case"ProjectionMatrixBlock":{const e=new s.InputBlock("Projection");return e.setAsSystemValue(s.NodeMaterialSystemValues.Projection),e}case"CameraPositionBlock":{const e=new s.InputBlock("Camera position");return e.setAsSystemValue(s.NodeMaterialSystemValues.CameraPosition),e}case"CameraParametersBlock":{const e=new s.InputBlock("Camera parameters");e.setAsSystemValue(s.NodeMaterialSystemValues.CameraParameters);const t=new s.VectorSplitterBlock("Vector splitter");return e.connectTo(t),t}case"FogColorBlock":{const e=new s.InputBlock("Fog color");return e.setAsSystemValue(s.NodeMaterialSystemValues.FogColor),e}case"PositionBlock":{const e=new s.InputBlock("position");return e.setAsAttribute("position"),e}case"ScreenPositionBlock":{const e=new s.InputBlock("position");return e.setAsAttribute("position2d"),e}case"UVBlock":{const e=new s.InputBlock("uv");return e.setAsAttribute("uv"),e}case"ColorBlock":{const e=new s.InputBlock("color");return e.setAsAttribute("color"),e}case"InstanceColorBlock":{const e=new s.InputBlock("Instance Color");return e.setAsAttribute("instanceColor"),e}case"SplatIndexBlock":{const e=new s.InputBlock("SplatIndex");return e.setAsAttribute("splatIndex"),e}case"NormalBlock":{const e=new s.InputBlock("normal");return e.setAsAttribute("normal"),e}case"TangentBlock":{const e=new s.InputBlock("tangent");return e.setAsAttribute("tangent"),e}case"MatrixIndicesBlock":{const e=new s.InputBlock("matricesIndices");return e.setAsAttribute("matricesIndices"),e}case"MatrixWeightsBlock":{const e=new s.InputBlock("matricesWeights");return e.setAsAttribute("matricesWeights"),e}case"MatrixIndicesExtraBlock":{const e=new s.InputBlock("matricesIndicesExtra");return e.setAsAttribute("matricesIndicesExtra"),e}case"MatrixWeightsExtraBlock":{const e=new s.InputBlock("matricesWeightsExtra");return e.setAsAttribute("matricesWeightsExtra"),e}case"MouseInfoBlock":{const e=new s.InputBlock("MouseInfo",void 0,s.NodeMaterialBlockConnectionPointTypes.Vector4);return e.animationType=s.AnimatedInputBlockTypes.MouseInfo,e}case"TimeBlock":{const e=new s.InputBlock("Time",void 0,s.NodeMaterialBlockConnectionPointTypes.Float);return e.animationType=s.AnimatedInputBlockTypes.Time,e}case"RealTimeBlock":{const e=new s.InputBlock("RealTime",void 0,s.NodeMaterialBlockConnectionPointTypes.Float);return e.animationType=s.AnimatedInputBlockTypes.RealTime,e}case"DeltaTimeBlock":{const e=new s.InputBlock("Delta time");return e.setAsSystemValue(s.NodeMaterialSystemValues.DeltaTime),e}case"MaterialAlphaBlock":{const e=new s.InputBlock("Material alpha");return e.setAsSystemValue(s.NodeMaterialSystemValues.MaterialAlpha),e}case"WorldPositionBlock":{let e=n.getInputBlockByPredicate((e=>e.isAttribute&&"position"===e.name));e||(e=new s.InputBlock("position"),e.setAsAttribute("position"));let t=n.getInputBlockByPredicate((e=>e.isSystemValue&&e.systemValue===s.NodeMaterialSystemValues.World));t||(t=new s.InputBlock("World"),t.setAsSystemValue(s.NodeMaterialSystemValues.World));const r=new s.TransformBlock("World position");return e.connectTo(r),t.connectTo(r),r}case"WorldNormalBlock":{let e=n.getInputBlockByPredicate((e=>e.isAttribute&&"normal"===e.name));e||(e=new s.InputBlock("normal"),e.setAsAttribute("normal"));let t=n.getInputBlockByPredicate((e=>e.isSystemValue&&e.systemValue===s.NodeMaterialSystemValues.World));t||(t=new s.InputBlock("World"),t.setAsSystemValue(s.NodeMaterialSystemValues.World));const r=new s.TransformBlock("World normal");return e.connectTo(r),t.connectTo(r),r}case"WorldTangentBlock":{let e=n.getInputBlockByPredicate((e=>e.isAttribute&&"tangent"===e.name));e||(e=new s.InputBlock("tangent"),e.setAsAttribute("tangent"));let t=n.getInputBlockByPredicate((e=>e.isSystemValue&&e.systemValue===s.NodeMaterialSystemValues.World));t||(t=new s.InputBlock("World"),t.setAsSystemValue(s.NodeMaterialSystemValues.World));const r=new s.TransformBlock("World tangent");return e.connectTo(r),t.connectTo(r),r}case"PBRMetallicRoughnessBlock":return new s.PBRMetallicRoughnessBlock("PBRMetallicRoughness");case"SheenBlock":return new s.SheenBlock("Sheen");case"AnisotropyBlock":return new s.AnisotropyBlock("Anisotropy");case"ReflectionBlock":return new s.ReflectionBlock("Reflection");case"ClearCoatBlock":return new s.ClearCoatBlock("ClearCoat");case"RefractionBlock":return new s.RefractionBlock("Refraction");case"SubSurfaceBlock":return new s.SubSurfaceBlock("SubSurface");case"CurrentScreenBlock":return new s.CurrentScreenBlock("CurrentScreen");case"ParticleUVBlock":{const e=new s.InputBlock("uv");return e.setAsAttribute("particle_uv"),e}case"ParticleTextureBlock":return new s.ParticleTextureBlock("ParticleTexture");case"ParticleColorBlock":{const e=new s.InputBlock("Color");return e.setAsAttribute("particle_color"),e}case"ParticleTextureMaskBlock":{const e=new s.InputBlock("TextureMask");return e.setAsAttribute("particle_texturemask"),e}case"ParticlePositionWorldBlock":{const e=new s.InputBlock("PositionWorld");return e.setAsAttribute("particle_positionw"),e}case"ParticleRampGradientBlock":return new s.ParticleRampGradientBlock("ParticleRampGradient");case"ParticleBlendMultiplyBlock":return new s.ParticleBlendMultiplyBlock("ParticleBlendMultiply");case"FragCoordBlock":return new s.FragCoordBlock("FragCoord");case"ScreenSizeBlock":return new s.ScreenSizeBlock("ScreenSize");case"SceneDepthBlock":return new s.SceneDepthBlock("SceneDepth");case"EqualBlock":{const e=new s.ConditionalBlock("Equal");return e.condition=s.ConditionalBlockConditions.Equal,e}case"NotEqualBlock":{const e=new s.ConditionalBlock("NotEqual");return e.condition=s.ConditionalBlockConditions.NotEqual,e}case"LessThanBlock":{const e=new s.ConditionalBlock("LessThan");return e.condition=s.ConditionalBlockConditions.LessThan,e}case"LessOrEqualBlock":{const e=new s.ConditionalBlock("LessOrEqual");return e.condition=s.ConditionalBlockConditions.LessOrEqual,e}case"GreaterThanBlock":{const e=new s.ConditionalBlock("GreaterThan");return e.condition=s.ConditionalBlockConditions.GreaterThan,e}case"GreaterOrEqualBlock":{const e=new s.ConditionalBlock("GreaterOrEqual");return e.condition=s.ConditionalBlockConditions.GreaterOrEqual,e}case"XorBlock":{const e=new s.ConditionalBlock("Xor");return e.condition=s.ConditionalBlockConditions.Xor,e}case"OrBlock":{const e=new s.ConditionalBlock("Or");return e.condition=s.ConditionalBlockConditions.Or,e}case"AndBlock":{const e=new s.ConditionalBlock("And");return e.condition=s.ConditionalBlockConditions.And,e}case"ImageSourceBlock":return new s.ImageSourceBlock("ImageSource");case"ClipPlanesBlock":return new s.ClipPlanesBlock("ClipPlanes");case"FragDepthBlock":return new s.FragDepthBlock("FragDepth");case"ShadowMapBlock":return new s.ShadowMapBlock("ShadowMap");case"TriPlanarBlock":return new s.TriPlanarBlock("TriPlanarTexture");case"BiPlanarBlock":return new s.BiPlanarBlock("BiPlanarTexture");case"MatrixTransposeBlock":return new s.MatrixTransposeBlock("Transpose");case"MatrixDeterminantBlock":return new s.MatrixDeterminantBlock("Determinant");case"CurveBlock":return new s.CurveBlock("Curve");case"GaussianSplattingBlock":return new s.GaussianSplattingBlock("GaussianSplatting");case"GaussianBlock":return new s.GaussianBlock("Gaussian");case"SplatReaderBlock":return new s.SplatReaderBlock("SplatReader")}return null}static GetColorFromConnectionNodeType(e){let t="#880000";switch(e){case s.NodeMaterialBlockConnectionPointTypes.Float:t="#cb9e27";break;case s.NodeMaterialBlockConnectionPointTypes.Vector2:t="#16bcb1";break;case s.NodeMaterialBlockConnectionPointTypes.Vector3:case s.NodeMaterialBlockConnectionPointTypes.Color3:t="#b786cb";break;case s.NodeMaterialBlockConnectionPointTypes.Vector4:case s.NodeMaterialBlockConnectionPointTypes.Color4:t="#be5126";break;case s.NodeMaterialBlockConnectionPointTypes.Matrix:t="#591990";break;case s.NodeMaterialBlockConnectionPointTypes.Object:t="#6174FA"}return t}static GetConnectionNodeTypeFromString(e){switch(e){case"Float":return s.NodeMaterialBlockConnectionPointTypes.Float;case"Vector2":return s.NodeMaterialBlockConnectionPointTypes.Vector2;case"Vector3":return s.NodeMaterialBlockConnectionPointTypes.Vector3;case"Vector4":return s.NodeMaterialBlockConnectionPointTypes.Vector4;case"Matrix":return s.NodeMaterialBlockConnectionPointTypes.Matrix;case"Color3":return s.NodeMaterialBlockConnectionPointTypes.Color3;case"Color4":return s.NodeMaterialBlockConnectionPointTypes.Color4}return s.NodeMaterialBlockConnectionPointTypes.AutoDetect}static GetStringFromConnectionNodeType(e){switch(e){case s.NodeMaterialBlockConnectionPointTypes.Float:return"Float";case s.NodeMaterialBlockConnectionPointTypes.Vector2:return"Vector2";case s.NodeMaterialBlockConnectionPointTypes.Vector3:return"Vector3";case s.NodeMaterialBlockConnectionPointTypes.Vector4:return"Vector4";case s.NodeMaterialBlockConnectionPointTypes.Color3:return"Color3";case s.NodeMaterialBlockConnectionPointTypes.Color4:return"Color4";case s.NodeMaterialBlockConnectionPointTypes.Matrix:return"Matrix"}return""}}class N{constructor(){this.lock=!1}}class _{constructor(){this.onSearchBoxRequiredObservable=new s.Observable,this.onSelectionChangedObservable=new s.Observable,this.onFrameCreatedObservable=new s.Observable,this.onUpdateRequiredObservable=new s.Observable,this.onGraphNodeRemovalObservable=new s.Observable,this.onSelectionBoxMoved=new s.Observable,this.onCandidateLinkMoved=new s.Observable,this.onCandidatePortSelectedObservable=new s.Observable,this.onNewNodeCreatedObservable=new s.Observable,this.onRebuildRequiredObservable=new s.Observable,this.onNodeMovedObservable=new s.Observable,this.onErrorMessageDialogRequiredObservable=new s.Observable,this.onExposePortOnFrameObservable=new s.Observable,this.onGridSizeChanged=new s.Observable,this.onNewBlockRequiredObservable=new s.Observable,this.onHighlightNodeObservable=new s.Observable,this.onPreviewCommandActivated=new s.Observable}}!function(e){e[e.Input=0]="Input",e[e.Output=1]="Output"}(n||(n={}));class S{}class L{get name(){const e=this.data.ownerBlock;let t=this.data.displayName||this.data.name;return this.data.ownerBlock.isInput&&1===this.data.ownerBlock.inputs.length&&(t=e.name),t}get internalName(){return this.data.name}get isExposedOnFrame(){return this.data.isExposedOnFrame}set isExposedOnFrame(e){this.data.isExposedOnFrame=e}get exposedPortPosition(){return this.data.exposedPortPosition}set exposedPortPosition(e){this.data.exposedPortPosition=e}get isConnected(){return this.data.isConnected}get connectedPort(){if(!this.isConnected)return null;if(!this._connectedPort&&this.data.connectedPoint){const e=this.data.connectedPoint.ownerBlock;let t=this._nodeContainer.nodes.find((t=>t.content.data===e));if(!t){t=this._nodeContainer.appendNode(S.NodeDataBuilder(e,this._nodeContainer));const n=this._nodeContainer.stateManager.data;-1===n.nodeMaterial.attachedBlocks.indexOf(e)&&n.nodeMaterial.attachedBlocks.push(e)}this._connectedPort=t.getPortDataForPortDataContent(this.data.connectedPoint)}return this._connectedPort}set connectedPort(e){this._connectedPort=e}get direction(){return 0===this.data.direction?n.Input:n.Output}get ownerData(){return this.data.ownerBlock}get needDualDirectionValidation(){return this.data.needDualDirectionValidation}get hasEndpoints(){return this.data.hasEndpoints}get endpoints(){const e=[];return this.data.endpoints.forEach((t=>{const n=t.ownerBlock,r=this._nodeContainer.nodes.find((e=>e.content.data===n));e.push(r.getPortDataForPortDataContent(t))})),e}constructor(e,t){this._connectedPort=null,this.data=e,this._nodeContainer=t}updateDisplayName(e){this.data.displayName=e}connectTo(e){this.data.connectTo(e.data),this._connectedPort=e}canConnectTo(e){return this.data.canConnectTo(e.data)}disconnectFrom(e){this.data.disconnectFrom(e.data),e.connectedPort=null}checkCompatibilityState(e){const t=this.data.checkCompatibilityState(e.data);return 0===t?0:t}getCompatibilityIssueMessage(e,t,n){if(!e&&"FragmentOutputBlock"===n.ownerData.getClassName()){const e=n.ownerData;return"rgb"===n.name&&e.rgba.isConnected?t.getLinksForPortDataContent(e.rgba)[0].dispose():"rgba"===n.name&&e.rgb.isConnected&&t.getLinksForPortDataContent(e.rgb)[0].dispose(),""}switch(e){case 1:{const e=n.data;let t=e.acceptedConnectionPointTypes.map((e=>s.NodeMaterialBlockConnectionPointTypes[e])).join(", ");return t=`${s.NodeMaterialBlockConnectionPointTypes[e.type]}`+(t?`,${t}`:""),`Cannot connect two different connection types:\nSource is ${s.NodeMaterialBlockConnectionPointTypes[this.data.type]} but destination only accepts ${t}`}case 2:return"Source block can only work in fragment shader whereas destination block is currently aimed for the vertex shader";case 3:return"Source block cannot be connected with one of its ancestors"}return""}}var B=r(3914),D={};D.styleTagTransform=v(),D.setAttributes=g(),D.insert=A().bind(null,"head"),D.domAPI=p(),D.insertStyleElement=C(),u()(B.A,D);const I=B.A&&B.A.locals?B.A.locals:void 0;class j{get uniqueId(){return this.data.uniqueId}get name(){return this.data.name}getClassName(){return this.data.getClassName()}get isInput(){return this.data.isInput}get inputs(){return this._inputs}get outputs(){return this._outputs}get comments(){return this.data.comments}set comments(e){this.data.comments=e}get executionTime(){return-1}getPortByName(e){for(const t of this.inputs)if(t.internalName===e)return t;for(const t of this.outputs)if(t.internalName===e)return t;return null}dispose(){this.data.dispose()}prepareHeaderIcon(e,t){if("ElbowBlock"!==this.data.getClassName())return this.data.target===s.NodeMaterialBlockTargets.Fragment?(e.title="In the fragment shader",void(t.src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJMYXllcl81IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2ZmZjt9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMy4xMiw1LjYxYzAtMS4zNywxLjExLTIuNDgsMi40OC0yLjQ4SDE0LjM5YzEuMzcsMCwyLjQ4LDEuMTEsMi40OCwyLjQ4VjE0LjM5YzAsMS4zNy0xLjExLDIuNDgtMi40OCwyLjQ4SDUuNjFjLTEuMzcsMC0yLjQ4LTEuMTEtMi40OC0yLjQ4VjUuNjFaIi8+PC9zdmc+")):this.data.target===s.NodeMaterialBlockTargets.Vertex?(e.title="In the vertex shader",void(t.src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJMYXllcl81IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2ZmZjt9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMi42MywxNS4yNmMtLjQ0LC44MywuMTYsMS44NCwxLjExLDEuODRoMTIuNTJjLjk1LDAsMS41NS0xLjAyLDEuMS0xLjg1TDExLjAyLDMuNTZjLS40OC0uODgtMS43NC0uODctMi4yMSwuMDFMMi42MywxNS4yNloiLz48L3N2Zz4=")):void e.classList.add(I.hidden);e.classList.add(I.hidden)}get invisibleEndpoints(){return this.data.isTeleportIn?this.data.endpoints:null}constructor(e,t){this.data=e,this._inputs=[],this._outputs=[],e.inputs&&this.data.inputs.forEach((e=>{this._inputs.push(new L(e,t))})),e.outputs&&!this.data.isTeleportIn&&this.data.outputs.forEach((e=>{this._outputs.push(new L(e,t))}))}}class E{static UpdateLocations(e,t,n){e.editorData={locations:[]};const r=n?n.nodes.map((e=>e.content.data)):e.attachedBlocks;for(const n of r){const r=t.onGetNodeFromBlock(n);e.editorData.locations.push({blockId:n.uniqueId,x:r?r.x:0,y:r?r.y:0,isCollapsed:!!r&&r.isCollapsed})}t.storeEditorData(e.editorData,n)}static Serialize(e,t,n){const r=s.Texture.SerializeBuffers;s.Texture.SerializeBuffers=s.DataStorage.ReadBoolean("EmbedTextures",!0),this.UpdateLocations(e,t,n);const o=n?n.nodes.map((e=>e.content.data)):void 0,a=e.serialize(o);return s.Texture.SerializeBuffers=r,JSON.stringify(a,void 0,2)}static Deserialize(e,t){t.nodeMaterial.parseSerializedObject(e,""),t.onIsLoadingChanged.notifyObservers(!1)}static AddFrameToMaterial(e,t,n){this.UpdateLocations(n,t),t.nodeMaterial.parseSerializedObject(e,"",!0),t.onImportFrameObservable.notifyObservers(e),t.onIsLoadingChanged.notifyObservers(!1)}}class T{get mode(){return this._mode}set mode(e){s.DataStorage.WriteNumber("Mode",e),this._mode=e,this.stateManager.onPreviewCommandActivated.notifyObservers(!0)}get engine(){return this._engine}set engine(e){e!==this._engine&&(s.DataStorage.WriteNumber("Engine",e),this._engine=e,location.reload())}get nodeMaterial(){return this._nodeMaterial}set nodeMaterial(e){this._nodeMaterial=e,e.onBuildObservable.add((()=>{this.onLogRequiredObservable.notifyObservers(new w("Node material build successful",!1)),E.UpdateLocations(e,this),this.onBuiltObservable.notifyObservers()})),e.onBuildErrorObservable.add((e=>{this.onLogRequiredObservable.notifyObservers(new w(e,!0))}))}constructor(){var e;this.onBuiltObservable=new s.Observable,this.onResetRequiredObservable=new s.Observable,this.onClearUndoStack=new s.Observable,this.onZoomToFitRequiredObservable=new s.Observable,this.onReOrganizedRequiredObservable=new s.Observable,this.onLogRequiredObservable=new s.Observable,this.onIsLoadingChanged=new s.Observable,this.onLightUpdated=new s.Observable,this.onBackgroundHDRUpdated=new s.Observable,this.onPreviewBackgroundChanged=new s.Observable,this.onBackFaceCullingChanged=new s.Observable,this.onDepthPrePassChanged=new s.Observable,this.onAnimationCommandActivated=new s.Observable,this.onImportFrameObservable=new s.Observable,this.onPopupClosedObservable=new s.Observable,this.onDropEventReceivedObservable=new s.Observable,this.particleSystemBlendMode=s.ParticleSystem.BLENDMODE_ONEONE,this.listOfCustomPreviewFiles=[],this.lockObject=new N,this.pointerOverCanvas=!1,this.onRefreshPreviewMeshControlComponentRequiredObservable=new s.Observable,this.previewType=s.DataStorage.ReadNumber("PreviewType",t.Box),this.envType=s.DataStorage.ReadNumber("EnvType",t.Room),this.backFaceCulling=s.DataStorage.ReadBoolean("BackFaceCulling",!0),this.depthPrePass=s.DataStorage.ReadBoolean("DepthPrePass",!1),this.hemisphericLight=s.DataStorage.ReadBoolean("HemisphericLight",!0),this.directionalLight0=s.DataStorage.ReadBoolean("DirectionalLight0",!1),this.directionalLight1=s.DataStorage.ReadBoolean("DirectionalLight1",!1),this.backgroundHDR=s.DataStorage.ReadBoolean("backgroundHDR",!1),this.controlCamera=s.DataStorage.ReadBoolean("ControlCamera",!0),this._mode=s.DataStorage.ReadNumber("Mode",s.NodeMaterialModes.Material),this._engine=s.DataStorage.ReadNumber("Engine",0),this.stateManager=new _,this.stateManager.data=this,this.stateManager.lockObject=this.lockObject,this.stateManager.getScene=()=>this.nodeMaterial.getScene(),this.stateManager.isElbowConnectionAllowed=(e,t)=>{const n=e.portData.data,r=t.portData.data;return n.type!==s.NodeMaterialBlockConnectionPointTypes.Object&&r.type!==s.NodeMaterialBlockConnectionPointTypes.Object},(()=>{this.stateManager.isDebugConnectionAllowed=(e,t)=>!1})(),(()=>{this.stateManager.applyNodePortDesign=(e,t,n)=>{const r=e.data.type;switch(t.style.background=k.GetColorFromConnectionNodeType(r),r){case s.NodeMaterialBlockConnectionPointTypes.Float:case s.NodeMaterialBlockConnectionPointTypes.Int:n.src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMSAyMSI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5WZWN0b3IxPC90aXRsZT48ZyBpZD0iTGF5ZXJfNSIgZGF0YS1uYW1lPSJMYXllciA1Ij48Y2lyY2xlIGNsYXNzPSJjbHMtMSIgY3g9IjEwLjUiIGN5PSIxMC41IiByPSI3LjUiLz48L2c+PC9zdmc+";break;case s.NodeMaterialBlockConnectionPointTypes.Vector2:n.src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMSAyMSI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5WZWN0b3IyPC90aXRsZT48ZyBpZD0iTGF5ZXJfNSIgZGF0YS1uYW1lPSJMYXllciA1Ij48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0zLDEwLjVhNy41Miw3LjUyLDAsMCwwLDYuNSw3LjQzVjMuMDdBNy41Miw3LjUyLDAsMCwwLDMsMTAuNVoiLz48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0xMS41LDMuMDdWMTcuOTNhNy41LDcuNSwwLDAsMCwwLTE0Ljg2WiIvPjwvZz48L3N2Zz4=";break;case s.NodeMaterialBlockConnectionPointTypes.Vector3:case s.NodeMaterialBlockConnectionPointTypes.Color3:n.src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMSAyMSI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5WZWN0b3IzPC90aXRsZT48ZyBpZD0iTGF5ZXJfNSIgZGF0YS1uYW1lPSJMYXllciA1Ij48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0zLjU3LDEzLjMxLDkuNSw5Ljg5VjNBNy41MSw3LjUxLDAsMCwwLDMsMTAuNDYsNy4zMiw3LjMyLDAsMCwwLDMuNTcsMTMuMzFaIi8+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMTYuNDMsMTUsMTAuNSwxMS42Miw0LjU3LDE1YTcuNDgsNy40OCwwLDAsMCwxMS44NiwwWiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTE4LDEwLjQ2QTcuNTEsNy41MSwwLDAsMCwxMS41LDNWOS44OWw1LjkzLDMuNDJBNy4zMiw3LjMyLDAsMCwwLDE4LDEwLjQ2WiIvPjwvZz48L3N2Zz4=";break;case s.NodeMaterialBlockConnectionPointTypes.Vector4:case s.NodeMaterialBlockConnectionPointTypes.Color4:n.src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMSAyMSI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5WZWN0b3I0PC90aXRsZT48ZyBpZD0iTGF5ZXJfNSIgZGF0YS1uYW1lPSJMYXllciA1Ij48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0xMS41LDExLjV2Ni40M2E3LjUxLDcuNTEsMCwwLDAsNi40My02LjQzWiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTExLjUsMy4wN1Y5LjVoNi40M0E3LjUxLDcuNTEsMCwwLDAsMTEuNSwzLjA3WiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTkuNSwxNy45M1YxMS41SDMuMDdBNy41MSw3LjUxLDAsMCwwLDkuNSwxNy45M1oiLz48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik05LjUsMy4wN0E3LjUxLDcuNTEsMCwwLDAsMy4wNyw5LjVIOS41WiIvPjwvZz48L3N2Zz4=";break;case s.NodeMaterialBlockConnectionPointTypes.Matrix:n.src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMSAyMSI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5NYXRyaXg8L3RpdGxlPjxnIGlkPSJMYXllcl81IiBkYXRhLW5hbWU9IkxheWVyIDUiPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTExLjUsNi4xMVY5LjVoMy4zOUE0LjUxLDQuNTEsMCwwLDAsMTEuNSw2LjExWiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTExLjUsMTQuODlhNC41MSw0LjUxLDAsMCwwLDMuMzktMy4zOUgxMS41WiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTExLjUsMy4wN3YyQTUuNTQsNS41NCwwLDAsMSwxNS45Miw5LjVoMkE3LjUxLDcuNTEsMCwwLDAsMTEuNSwzLjA3WiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTE1LjkyLDExLjVhNS41NCw1LjU0LDAsMCwxLTQuNDIsNC40MnYyYTcuNTEsNy41MSwwLDAsMCw2LjQzLTYuNDNaIi8+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNNS4wOCwxMS41aC0yQTcuNTEsNy41MSwwLDAsMCw5LjUsMTcuOTN2LTJBNS41NCw1LjU0LDAsMCwxLDUuMDgsMTEuNVoiLz48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik05LjUsMy4wN0E3LjUxLDcuNTEsMCwwLDAsMy4wNyw5LjVoMkE1LjU0LDUuNTQsMCwwLDEsOS41LDUuMDhaIi8+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNOS41LDExLjVINi4xMUE0LjUxLDQuNTEsMCwwLDAsOS41LDE0Ljg5WiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTkuNSw2LjExQTQuNTEsNC41MSwwLDAsMCw2LjExLDkuNUg5LjVaIi8+PC9nPjwvc3ZnPg==";break;case s.NodeMaterialBlockConnectionPointTypes.Object:n.src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMSIgaGVpZ2h0PSIyMSIgdmlld0JveD0iMCAwIDIxIDIxIj48Y2lyY2xlIGN4PSI3LjEiIGN5PSIxMy4wOCIgcj0iMy4yNSIgc3R5bGU9ImZpbGw6I2ZmZiIvPjxwYXRoIGQ9Ik0xMC40OSwzQTcuNTIsNy41MiwwLDAsMCwzLDEwYTUuMTMsNS4xMywwLDEsMSw2LDcuODUsNy42MSw3LjYxLDAsMCwwLDEuNTIuMTYsNy41Miw3LjUyLDAsMCwwLDAtMTVaIiBzdHlsZT0iZmlsbDojZmZmIi8+PC9zdmc+",n.style.width="100%",n.style.height="100%"}}})(),(()=>{this.stateManager.createDefaultInputData=(e,t,n)=>{const r=t.data,o=r.createCustomInputBlock();let a,i="output";if(o)[a,i]=o;else{if(r.type===s.NodeMaterialBlockConnectionPointTypes.AutoDetect)return null;a=new s.InputBlock(s.NodeMaterialBlockConnectionPointTypes[r.type],void 0,r.type)}const l=e.nodeMaterial;return l.attachedBlocks.push(a),a.isInput||a.autoConfigure(l),{data:new j(a,n),name:i}}})(),(e=this.stateManager).exportData=(t,n)=>{const r=t.nodeMaterial;return E.Serialize(r,e.data,n)},e.getEditorDataMap=()=>e.data.nodeMaterial.editorData.map;const n=s.DataStorage.ReadNumber("BackgroundColorR",.12549019607843137),r=s.DataStorage.ReadNumber("BackgroundColorG",.09803921568627451),o=s.DataStorage.ReadNumber("BackgroundColorB",.25098039215686274);this.backgroundColor=new s.Color4(n,r,o,1)}storeEditorData(e,t){this.stateManager.storeEditorData(e,t)}}class O extends a.Component{constructor(e){super(e);const t=s.DataStorage.ReadBoolean(this.props.title,!this.props.closed);this.state={isExpanded:t,isHighlighted:!1}}switchExpandedState(){const e=!this.state.isExpanded;s.DataStorage.WriteBoolean(this.props.title,e),this.setState({isExpanded:e})}renderHeader(){const e=this.state.isExpanded?"collapse":"collapse closed";return(0,l.jsxs)("div",{className:"header",onClick:()=>this.switchExpandedState(),children:[(0,l.jsx)("div",{className:"title",children:this.props.title}),(0,l.jsx)("div",{className:e,children:(0,l.jsx)("img",{className:"img",title:this.props.title,src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjE3IiBoZWlnaHQ9IjE3Ij4NCiAgPHBhdGggZD0iTTQuMjE5NjcgOC40Njk2N0M0LjUxMjU2IDguMTc2NzggNC45ODc0NCA4LjE3Njc4IDUuMjgwMzMgOC40Njk2N0wxMiAxNS4xODkzTDE4LjcxOTcgOC40Njk2N0MxOS4wMTI2IDguMTc2NzggMTkuNDg3NCA4LjE3Njc4IDE5Ljc4MDMgOC40Njk2N0MyMC4wNzMyIDguNzYyNTYgMjAuMDczMiA5LjIzNzQ0IDE5Ljc4MDMgOS41MzAzM0wxMi41MzAzIDE2Ljc4MDNDMTIuMjM3NCAxNy4wNzMyIDExLjc2MjYgMTcuMDczMiAxMS40Njk3IDE2Ljc4MDNMNC4yMTk2NyA5LjUzMDMzQzMuOTI2NzggOS4yMzc0NCAzLjkyNjc4IDguNzYyNTYgNC4yMTk2NyA4LjQ2OTY3WiIgZmlsbD0id2hpdGUiIC8+DQo8L3N2Zz4="})})]})}componentDidMount(){this.props.selection&&(0===this.props.selection.selectedLineContainerTitles.length&&0===this.props.selection.selectedLineContainerTitlesNoFocus.length||(this.props.selection.selectedLineContainerTitles.indexOf(this.props.title)>-1?(setTimeout((()=>{this.props.selection.selectedLineContainerTitles=[]})),this.setState({isExpanded:!0,isHighlighted:!0}),window.setTimeout((()=>{this.setState({isHighlighted:!1})}),5e3)):this.props.selection.selectedLineContainerTitlesNoFocus.indexOf(this.props.title)>-1?(setTimeout((()=>{this.props.selection.selectedLineContainerTitlesNoFocus=[]})),this.setState({isExpanded:!0,isHighlighted:!1})):this.setState({isExpanded:!1})))}render(){return this.state.isExpanded?(0,l.jsxs)("div",{className:"paneContainer",children:[(0,l.jsxs)("div",{className:"paneContainer-content",children:[this.renderHeader(),(0,l.jsx)("div",{className:"paneList",children:this.props.children})]}),(0,l.jsx)("div",{className:"paneContainer-highlight-border"+(this.state.isHighlighted?"":" transparent")})]}):(0,l.jsx)("div",{className:"paneContainer",children:(0,l.jsx)("div",{className:"paneContainer-content",children:this.renderHeader()})})}}class P extends a.Component{constructor(e){super(e)}render(){return(0,l.jsx)("div",{className:"draggableLine",title:this.props.tooltip,draggable:!0,onDragStart:e=>{e.dataTransfer.setData(this.props.format,this.props.data)},children:this.props.data.replace("Block","")})}}class z extends a.Component{constructor(e){super(e)}render(){return(0,l.jsxs)("div",{className:"draggableLine withButton",title:this.props.tooltip,draggable:!0,onDragStart:e=>{e.dataTransfer.setData(this.props.format,this.props.data)},children:[this.props.data.substring(0,this.props.data.length-(this.props.lenSuffixToRemove??6)),(0,l.jsx)("div",{className:"icon",onClick:()=>{this.props.onIconClick(this.props.data)},title:this.props.iconTitle,children:(0,l.jsx)("img",{className:"img",title:this.props.iconTitle,src:this.props.iconImage})})]})}}class R extends a.Component{constructor(e){super(e);const t=s.DataStorage.ReadBoolean(this.props.title,!this.props.closed);this.state={isExpanded:t},this._uploadRef=a.createRef()}onChange(e){const t=e.target.files;if(t&&t.length)for(const e of t)this.props.onIconClick(e);e.target.value=""}switchExpandedState(){const e=!this.state.isExpanded;s.DataStorage.WriteBoolean(this.props.title,e),this.setState({isExpanded:e})}render(){return(0,l.jsxs)("div",{className:"nonDraggableLine withButton",children:[this.props.label,(0,l.jsx)("div",{className:"icon",title:this.props.title,children:(0,l.jsx)("img",{className:"img",src:this.props.iconImage})}),(0,l.jsxs)("div",{className:"buttonLine",title:this.props.title,children:[(0,l.jsx)("label",{htmlFor:this.props.uploadName?this.props.uploadName:"file-upload",className:"file-upload"}),(0,l.jsx)("input",{ref:this._uploadRef,id:this.props.uploadName?this.props.uploadName:"file-upload",type:"file",multiple:this.props.multiple,accept:this.props.accept,onChange:e=>this.onChange(e)})]})]})}}const U="data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA2My4xICg5MjQ1MikgLSBodHRwczovL3NrZXRjaC5jb20gLS0+DQogIDx0aXRsZT5pY19mbHVlbnRfYWRkX2NpcmNsZV8yNF9yZWd1bGFyPC90aXRsZT4NCiAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+DQogIDxnIGlkPSLwn5SNLVN5c3RlbS1JY29ucyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+DQogICAgPGcgaWQ9ImljX2ZsdWVudF9hZGRfY2lyY2xlXzI0X3JlZ3VsYXIiIGZpbGw9IndoaXRlIiBmaWxsLXJ1bGU9Im5vbnplcm8iPg0KICAgICAgPHBhdGggZD0iTTEyLDIgQzE3LjUyMjg0NzUsMiAyMiw2LjQ3NzE1MjUgMjIsMTIgQzIyLDE3LjUyMjg0NzUgMTcuNTIyODQ3NSwyMiAxMiwyMiBDNi40NzcxNTI1LDIyIDIsMTcuNTIyODQ3NSAyLDEyIEMyLDYuNDc3MTUyNSA2LjQ3NzE1MjUsMiAxMiwyIFogTTEyLDMuNSBDNy4zMDU1Nzk2MywzLjUgMy41LDcuMzA1NTc5NjMgMy41LDEyIEMzLjUsMTYuNjk0NDIwNCA3LjMwNTU3OTYzLDIwLjUgMTIsMjAuNSBDMTYuNjk0NDIwNCwyMC41IDIwLjUsMTYuNjk0NDIwNCAyMC41LDEyIEMyMC41LDcuMzA1NTc5NjMgMTYuNjk0NDIwNCwzLjUgMTIsMy41IFogTTEyLDcgQzEyLjQxNDIxMzYsNyAxMi43NSw3LjMzNTc4NjQ0IDEyLjc1LDcuNzUgTDEyLjc1LDExLjI1IEwxNi4yNSwxMS4yNSBDMTYuNjY0MjEzNiwxMS4yNSAxNywxMS41ODU3ODY0IDE3LDEyIEMxNywxMi40MTQyMTM2IDE2LjY2NDIxMzYsMTIuNzUgMTYuMjUsMTIuNzUgTDEyLjc1LDEyLjc1IEwxMi43NSwxNi4yNSBDMTIuNzUsMTYuNjY0MjEzNiAxMi40MTQyMTM2LDE3IDEyLDE3IEMxMS41ODU3ODY0LDE3IDExLjI1LDE2LjY2NDIxMzYgMTEuMjUsMTYuMjUgTDExLjI1LDEyLjc1IEw3Ljc1LDEyLjc1IEM3LjMzNTc4NjQ0LDEyLjc1IDcsMTIuNDE0MjEzNiA3LDEyIEM3LDExLjU4NTc4NjQgNy4zMzU3ODY0NCwxMS4yNSA3Ljc1LDExLjI1IEwxMS4yNSwxMS4yNSBMMTEuMjUsNy43NSBDMTEuMjUsNy4zMzU3ODY0NCAxMS41ODU3ODY0LDcgMTIsNyBaIiBpZD0i8J+OqC1Db2xvciI+PC9wYXRoPg0KICAgIDwvZz4NCiAgPC9nPg0KPC9zdmc+",F="data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA1OS4xICg4NjE0NCkgLSBodHRwczovL3NrZXRjaC5jb20gLS0+DQogIDx0aXRsZT5pY19mbHVlbnRfZGVsZXRlXzI0X3JlZ3VsYXI8L3RpdGxlPg0KICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4NCiAgPGcgaWQ9IvCflI0tUHJvZHVjdC1JY29ucyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+DQogICAgPGcgaWQ9ImljX2ZsdWVudF9kZWxldGVfMjRfcmVndWxhciIgZmlsbD0id2hpdGUiIGZpbGwtcnVsZT0ibm9uemVybyI+DQogICAgICA8cGF0aCBkPSJNMTIsMS43NSBDMTMuNzMzMDMxNSwxLjc1IDE1LjE0OTI0NTksMy4xMDY0NTQ3NyAxNS4yNDQ4NTUyLDQuODE1NTc2MDkgTDE1LjI1LDUgTDIwLjUsNSBDMjAuOTE0MjEzNiw1IDIxLjI1LDUuMzM1Nzg2NDQgMjEuMjUsNS43NSBDMjEuMjUsNi4xMjk2OTU3NyAyMC45Njc4NDYxLDYuNDQzNDkwOTYgMjAuNjAxNzcwNiw2LjQ5MzE1MzM4IEwyMC41LDYuNSBMMTkuNzA0LDYuNSBMMTguNDIzODYyNywxOS41MTkxOTI3IEMxOC4yOTExNjY2LDIwLjg2ODI2OTYgMTcuMTk4NDMwOSwyMS45MDk5OTYxIDE1Ljg2MjYyNDksMjEuOTk0NDY0NSBMMTUuNjg3MDY5OCwyMiBMOC4zMTI5MzAyMiwyMiBDNi45NTczNDMwMiwyMiA1LjgxMzY1MzUyLDIxLjAxNDQ4NTEgNS41OTg4MzEwNiwxOS42OTMzNjI5IEw1LjU3NjEzNzM0LDE5LjUxOTE5MjcgTDQuMjk1LDYuNSBMMy41LDYuNSBDMy4xMjAzMDQyMyw2LjUgMi44MDY1MDkwNCw2LjIxNzg0NjEyIDIuNzU2ODQ2NjIsNS44NTE3NzA1NiBMMi43NSw1Ljc1IEMyLjc1LDUuMzcwMzA0MjMgMy4wMzIxNTM4OCw1LjA1NjUwOTA0IDMuMzk4MjI5NDQsNS4wMDY4NDY2MiBMMy41LDUgTDguNzUsNSBDOC43NSwzLjIwNTA3NDU2IDEwLjIwNTA3NDYsMS43NSAxMiwxLjc1IFogTTE4LjE5Nyw2LjUgTDUuODAyLDYuNSBMNy4wNjg5MzM0NiwxOS4zNzIzNjAzIEM3LjEyNzY3NjM5LDE5Ljk2OTU4MDEgNy42MDAzMzAxOSwyMC40MzQyODkxIDguMTg1ODQ1MDEsMjAuNDkzNTk2IEw4LjMxMjkzMDIyLDIwLjUgTDE1LjY4NzA2OTgsMjAuNSBDMTYuMjg3MTcxNiwyMC41IDE2Ljc5NTkxNiwyMC4wNzUxMDU3IDE2LjkxMjI1MzEsMTkuNDk4MjA4MyBMMTYuOTMxMDY2NSwxOS4zNzIzNjAzIEwxOC4xOTcsNi41IFogTTEzLjc1LDkuMjUgQzE0LjEyOTY5NTgsOS4yNSAxNC40NDM0OTEsOS41MzIxNTM4OCAxNC40OTMxNTM0LDkuODk4MjI5NDQgTDE0LjUsMTAgTDE0LjUsMTcgQzE0LjUsMTcuNDE0MjEzNiAxNC4xNjQyMTM2LDE3Ljc1IDEzLjc1LDE3Ljc1IEMxMy4zNzAzMDQyLDE3Ljc1IDEzLjA1NjUwOSwxNy40Njc4NDYxIDEzLjAwNjg0NjYsMTcuMTAxNzcwNiBMMTMsMTcgTDEzLDEwIEMxMyw5LjU4NTc4NjQ0IDEzLjMzNTc4NjQsOS4yNSAxMy43NSw5LjI1IFogTTEwLjI1LDkuMjUgQzEwLjYyOTY5NTgsOS4yNSAxMC45NDM0OTEsOS41MzIxNTM4OCAxMC45OTMxNTM0LDkuODk4MjI5NDQgTDExLDEwIEwxMSwxNyBDMTEsMTcuNDE0MjEzNiAxMC42NjQyMTM2LDE3Ljc1IDEwLjI1LDE3Ljc1IEM5Ljg3MDMwNDIzLDE3Ljc1IDkuNTU2NTA5MDQsMTcuNDY3ODQ2MSA5LjUwNjg0NjYyLDE3LjEwMTc3MDYgTDkuNSwxNyBMOS41LDEwIEM5LjUsOS41ODU3ODY0NCA5LjgzNTc4NjQ0LDkuMjUgMTAuMjUsOS4yNSBaIE0xMiwzLjI1IEMxMS4wODE4MjY2LDMuMjUgMTAuMzI4ODA3NywzLjk1NzExMDI3IDEwLjI1NTgwMTIsNC44NTY0NzI3OSBMMTAuMjUsNSBMMTMuNzUsNSBDMTMuNzUsNC4wMzM1MDE2OSAxMi45NjY0OTgzLDMuMjUgMTIsMy4yNSBaIiBpZD0i8J+OqC1Db2xvciI+PC9wYXRoPg0KICAgIDwvZz4NCiAgPC9nPg0KPC9zdmc+";class Y{}Y.RegisteredNodeNames=[],Y.NameFormatter=e=>e;var V=r(3557),G={};G.styleTagTransform=v(),G.setAttributes=g(),G.insert=A().bind(null,"head"),G.domAPI=p(),G.insertStyleElement=C(),u()(V.A,G),V.A&&V.A.locals&&V.A.locals;class W extends a.Component{constructor(e){super(e),this.state={filter:""};const t=localStorage.getItem("Custom-Frame-List");t&&(this._customFrameList=JSON.parse(t));const n=localStorage.getItem("Custom-Block-List");n&&(this._customBlockList=JSON.parse(n)),this._onResetRequiredObserver=this.props.globalState.onResetRequiredObservable.add((()=>{this.forceUpdate()}))}componentWillUnmount(){this.props.globalState.onResetRequiredObservable.remove(this._onResetRequiredObserver)}filterContent(e){this.setState({filter:e})}loadCustomFrame(e){s.Tools.ReadFile(e,(async e=>{const t=new TextDecoder("utf-8"),n=JSON.parse(t.decode(e)),r=n.editorData.frames[0].name+"Custom",o=n.editorData.frames[0].comments||"";try{localStorage.setItem(r,JSON.stringify(n))}catch(e){return void this.props.globalState.stateManager.onErrorMessageDialogRequiredObservable.notifyObservers("Error Saving Frame")}const a=localStorage.getItem("Custom-Frame-List");let i={};a&&(i=JSON.parse(a)),i[r]=o,localStorage.setItem("Custom-Frame-List",JSON.stringify(i)),this._customFrameList=i,this.forceUpdate()}),void 0,!0)}removeItem(e){const t=localStorage.getItem("Custom-Frame-List");if(t){const n=Y.RegisteredNodeNames.indexOf(e);-1!==n&&Y.RegisteredNodeNames.splice(n,1);const r=JSON.parse(t);delete r[e],localStorage.removeItem(e),localStorage.setItem("Custom-Frame-List",JSON.stringify(r)),this._customFrameList=r,this.forceUpdate()}}loadCustomBlock(e){s.Tools.ReadFile(e,(async e=>{const t=new TextDecoder("utf-8"),n=JSON.parse(t.decode(e)),r=(n.name||"")+"CustomBlock",o=n.comments||"";try{localStorage.setItem(r,JSON.stringify(n))}catch(e){return void this.props.globalState.stateManager.onErrorMessageDialogRequiredObservable.notifyObservers("Error Saving Block")}const a=localStorage.getItem("Custom-Block-List");let i={};a&&(i=JSON.parse(a)),i[r]=o,localStorage.setItem("Custom-Block-List",JSON.stringify(i)),this._customBlockList=i,this.forceUpdate()}),void 0,!0)}removeCustomBlock(e){const t=localStorage.getItem("Custom-Block-List");if(t){const n=JSON.parse(t);delete n[e],localStorage.removeItem(e),localStorage.setItem("Custom-Block-List",JSON.stringify(n)),this._customBlockList=n,this.forceUpdate()}}render(){const e=[];for(const t in this._customFrameList)e.push(t);const t=[];for(const e in this._customBlockList)t.push(e);const n={Custom_Frames:e,Custom_Blocks:t,Animation:["BonesBlock","MorphTargetsBlock"],Color_Management:["ReplaceColorBlock","PosterizeBlock","GradientBlock","DesaturateBlock","ColorConverterBlock"],Conversion_Blocks:["ColorMergerBlock","ColorSplitterBlock","VectorMergerBlock","VectorSplitterBlock"],Inputs:["Float","Vector2","Vector3","Vector4","Color3","Color4","TextureBlock","ReflectionTextureBlock","MouseInfoBlock","TimeBlock","RealTimeBlock","DeltaTimeBlock","MaterialAlphaBlock","FragCoordBlock","ScreenSizeBlock","ImageSourceBlock","TriPlanarBlock","BiPlanarBlock"],Interpolation:["LerpBlock","StepBlock","SmoothStepBlock","NLerpBlock"],Logical:["EqualBlock","NotEqualBlock","LessThanBlock","LessOrEqualBlock","GreaterThanBlock","GreaterOrEqualBlock","XorBlock","OrBlock","AndBlock"],Math__Standard:["AddBlock","DivideBlock","MaxBlock","MinBlock","ModBlock","MultiplyBlock","NegateBlock","OneMinusBlock","ReciprocalBlock","ScaleBlock","SignBlock","SqrtBlock","SubtractBlock"],Math__Scientific:["AbsBlock","ArcCosBlock","ArcSinBlock","ArcTanBlock","ArcTan2Block","CosBlock","CurveBlock","DegreesToRadiansBlock","ExpBlock","Exp2Block","FractBlock","LogBlock","PowBlock","RadiansToDegreesBlock","SawToothWaveBlock","SinBlock","SquareWaveBlock","TanBlock","TriangleWaveBlock","SetBlock"],Math__Vector:["CrossBlock","DerivativeBlock","DistanceBlock","DotBlock","FresnelBlock","LengthBlock","ReflectBlock","RefractBlock","Rotate2dBlock","TransformBlock","ScreenSpaceBlock","TwirlBlock"],Matrices:["Matrix","WorldMatrixBlock","WorldViewMatrixBlock","WorldViewProjectionMatrixBlock","ViewMatrixBlock","ViewProjectionMatrixBlock","ProjectionMatrixBlock","MatrixBuilderBlock","MatrixDeterminantBlock","MatrixTransposeBlock"],Misc:["ElbowBlock","ShadowMapBlock","TeleportInBlock","TeleportOutBlock"],Mesh:["InstancesBlock","PositionBlock","UVBlock","ColorBlock","InstanceColorBlock","NormalBlock","HeightToNormalBlock","TBNBlock","PerturbNormalBlock","NormalBlendBlock","TangentBlock","MatrixIndicesBlock","MatrixWeightsBlock","MatrixIndicesExtraBlock","MatrixWeightsExtraBlock","WorldPositionBlock","WorldNormalBlock","WorldTangentBlock","FrontFacingBlock","MeshAttributeExistsBlock"],Loop:["LoopBlock","StorageReadBlock","StorageWriteBlock"],Noises:["RandomNumberBlock","SimplexPerlin3DBlock","WorleyNoise3DBlock","CloudBlock","VoronoiNoiseBlock"],Output_Nodes:["VertexOutputBlock","FragmentOutputBlock","PrePassOutputBlock","DiscardBlock","ClipPlanesBlock","FragDepthBlock"],Particle:["ParticleBlendMultiplyBlock","ParticleColorBlock","ParticlePositionWorldBlock","ParticleRampGradientBlock","ParticleTextureBlock","ParticleTextureMaskBlock","ParticleUVBlock"],GaussianSplatting:["GaussianSplattingBlock","SplatIndexBlock","SplatReaderBlock","GaussianBlock"],PBR:["PBRMetallicRoughnessBlock","AnisotropyBlock","ClearCoatBlock","ReflectionBlock","RefractionBlock","SheenBlock","SubSurfaceBlock"],PostProcess:["ScreenPositionBlock","CurrentScreenBlock","PrePassTextureBlock"],Procedural__Texture:["ScreenPositionBlock"],Range:["ClampBlock","RemapBlock","NormalizeBlock"],Round:["RoundBlock","CeilingBlock","FloorBlock"],Scene:["FogBlock","CameraPositionBlock","CameraParametersBlock","FogColorBlock","ImageProcessingBlock","LightBlock","LightInformationBlock","ViewDirectionBlock","SceneDepthBlock"]};switch(this.props.globalState.mode){case s.NodeMaterialModes.Material:delete n.PostProcess,delete n.Particle,delete n.Procedural__Texture,delete n.GaussianSplatting;break;case s.NodeMaterialModes.PostProcess:delete n.Animation,delete n.Mesh,delete n.Particle,delete n.Procedural__Texture,delete n.PBR,delete n.GaussianSplatting,n.Output_Nodes.splice(n.Output_Nodes.indexOf("PrePassOutputBlock"),1);break;case s.NodeMaterialModes.ProceduralTexture:delete n.Animation,delete n.Mesh,delete n.Particle,delete n.PostProcess,delete n.PBR,delete n.GaussianSplatting,n.Output_Nodes.splice(n.Output_Nodes.indexOf("PrePassOutputBlock"),1);break;case s.NodeMaterialModes.Particle:delete n.Animation,delete n.Mesh,delete n.PostProcess,delete n.Procedural__Texture,delete n.PBR,delete n.GaussianSplatting,n.Output_Nodes.splice(n.Output_Nodes.indexOf("VertexOutputBlock"),1),n.Scene.splice(n.Scene.indexOf("FogBlock"),1),n.Scene.splice(n.Scene.indexOf("FogColorBlock"),1),n.Output_Nodes.splice(n.Output_Nodes.indexOf("PrePassOutputBlock"),1);break;case s.NodeMaterialModes.GaussianSplatting:delete n.Animation,delete n.Mesh,delete n.PostProcess,delete n.Procedural__Texture,delete n.PBR,n.Output_Nodes.splice(n.Output_Nodes.indexOf("VertexOutputBlock"),1),n.Scene.splice(n.Scene.indexOf("FogBlock"),1),n.Scene.splice(n.Scene.indexOf("FogColorBlock"),1),n.Output_Nodes.splice(n.Output_Nodes.indexOf("PrePassOutputBlock"),1)}const r=[];for(const e in n){const t=n[e].filter((e=>!this.state.filter||-1!==e.toLowerCase().indexOf(this.state.filter.toLowerCase()))).sort(((e,t)=>e.localeCompare(t))).map((t=>"Custom_Frames"===e?(0,l.jsx)(z,{format:"babylonjs-material-node",data:t,tooltip:this._customFrameList[t]||"",iconImage:F,iconTitle:"Delete",onIconClick:e=>this.removeItem(e)},t):"Custom_Blocks"===e?(0,l.jsx)(z,{format:"babylonjs-material-node",data:t,tooltip:this._customBlockList[t]||"",iconImage:F,iconTitle:"Delete",onIconClick:e=>this.removeCustomBlock(e),lenSuffixToRemove:11},t):(0,l.jsx)(P,{format:"babylonjs-material-node",data:t,tooltip:W._Tooltips[t]||""},t)));if("Custom_Frames"===e){const e=(0,l.jsx)(R,{title:"Add Custom Frame",closed:!1,multiple:!0,label:"Add...",uploadName:"custom-frame-upload",iconImage:U,accept:".json",onIconClick:e=>{this.loadCustomFrame(e)}},"add...");t.push(e)}else if("Custom_Blocks"===e){const e=(0,l.jsx)(R,{title:"Add Custom Block",closed:!1,multiple:!0,label:"Add...",uploadName:"custom-block-upload",iconImage:U,accept:".json",onIconClick:e=>{this.loadCustomBlock(e)}},"add...");t.push(e)}t.length&&r.push((0,l.jsx)(O,{title:e.replace("__",": ").replace("_"," "),closed:!1,children:t},e+" blocks"));const o=Y.RegisteredNodeNames;for(const e in n){const t=n[e];if(t.length)for(const e of t)o.includes(e)||o.push(e)}Y.NameFormatter=e=>{let t=e;if(e.endsWith("Custom")){const n=e.lastIndexOf("Custom");t=e.substring(0,n),t+=" [custom]"}else t=e.replace("Block","");return t}}return(0,l.jsx)("div",{id:"nmeNodeList",children:(0,l.jsx)("div",{className:"panes",children:(0,l.jsxs)("div",{className:"pane",children:[(0,l.jsx)("div",{className:"filter",children:(0,l.jsx)("input",{type:"text",placeholder:"Filter",onFocus:()=>this.props.globalState.lockObject.lock=!0,onBlur:()=>{this.props.globalState.lockObject.lock=!1},onChange:e=>this.filterContent(e.target.value)})}),(0,l.jsx)("div",{className:"list-container",children:r})]})})})}}W._Tooltips={BonesBlock:"Provides a world matrix for each vertex, based on skeletal (bone/joint) animation",MorphTargetsBlock:"Provides the final positions, normals, tangents, and uvs based on morph targets in a mesh",AddBlock:"Adds the left and right inputs of the same type together",DistanceBlock:"Provides a distance vector based on the left and right input vectors",DivideBlock:"Divides the left input by the right input of the same type",LengthBlock:"Outputs the length of an input vector",MaxBlock:"Outputs the largest value between the left and right inputs of the same type",MinBlock:"Outputs the smallest value between the left and right inputs of the same type",MultiplyBlock:"Multiplies the left and right inputs of the same type together",NegateBlock:"Multiplies the input by -1",OneMinusBlock:"Subtracts each channel of the input value from 1 (1 - input)",RandomNumberBlock:"Provides a random number based on an input seed",ReciprocalBlock:"Quotient of 1 divided by the input",ScaleBlock:"Multiplies the input channels by a float factor",SubtractBlock:"Subtracts the right input from the left input of the same type",GradientBlock:"Returns the color in the gradient represented by the target value of the input",PosterizeBlock:"Reduces the number of values in each channel to the number in the corresponding channel of steps",ReplaceColorBlock:"Outputs the replacement color if the distance between value and reference is less than distance, else outputs the value color",ColorMergerBlock:"Combines float input channels into a color",ColorSplitterBlock:"Separates color input channels into individual floats",VectorMergerBlock:"Combines up to four input floats into a vector",VectorSplitterBlock:"Separates vectors input channels into individual floats",Color3:"A color made up of red, green, and blue channel values",Color4:"A color made up of red, green, blue, and alpha channel values",MaterialAlphaBlock:"A float representing the alpha value of the material",DeltaTimeBlock:"A float representing the time that has passed since the last frame was rendered",Float:"A floating point number representing a value with a fractional component",TextureBlock:"A node for reading a linked or embedded texture file",PrePassTextureBlock:"A node for reading textures from the prepass",MouseInfoBlock:"return a Vector4 that contains x, y, leftButton, rightButton",TimeBlock:"A float value that represents the time that has passed since the scene was loaded (it is incremented by 0.6 each second)",RealTimeBlock:"A float value that represents the number of seconds that have elapsed since the engine was initialized",Vector2:"a vector composed of X and Y channels",Vector3:"a vector composed of X, Y, and Z channels",Vector4:"a vector composed of X, Y, Z, and W channels",LerpBlock:"Outputs a value that is a mix of the left and right inputs based on the target value",NLerpBlock:"Outputs a value that is a mix of the left and right inputs based on the target's normalized value",SmoothStepBlock:"Outputs a value based on a the input value's position on a curve between the two edge values",StepBlock:"Outputs 1 for any input value above the edge input, outputs 0 for any input value below the edge input",Matrix:"A 4x4 table of related values",ProjectionMatrixBlock:"A matrix to remap points in 3D space to 2D plane relative to the screen",ViewMatrixBlock:"A matrix to remap points in 3D space to 2D plane relative to the view of the scene camera",ViewProjectionMatrixBlock:"A matrix to remap points in 3D space to 2D view space before remapping to 2D screen space",WorldMatrixBlock:"A matrix to remap points in 3D local space to 3D world space",WorldViewProjectionMatrixBlock:"A matrix to remap points in 3D local space to 3D world space, then to 2D camera space, and ending in 2D screen space",ColorBlock:"Outputs the RGBA color of each vertex in the mesh",InstanceColorBlock:"Outputs the RGBA color of each instance",InstancesBlock:"Provides the world matrix for each instance to apply this material to all instances",MatrixIndicesBlock:"A Vector4 representing the vertex to bone skinning assignments",MatrixWeightsBlock:"A Vector4 representing the vertex to bone skinning weights",MatrixIndicesExtraBlock:"A Vector4 representing the vertex to bone skinning assignments when the number of influences per bone is greater than 4",MatrixWeightsExtraBlock:"A Vector4 representing the vertex to bone skinning weights when the number of influences per bone is greater than 4",NormalBlock:"A Vector3 representing the normal of each vertex of the attached mesh",PositionBlock:"A Vector3 representing the position of each vertex of the attached mesh",TangentBlock:"A Vector3 representing the tangent of each vertex of the attached mesh",UVBlock:"A Vector2 representing the UV coordinates of each vertex of the attached mesh",WorldNormal:"A Vector4 representing the normal of each vertex of the attached mesh transformed into world space",WorldTangent:"A Vector4 representing the tangent of each vertex of the attached mesh transformed into world space",PerturbNormalBlock:"Creates high-frequency detail normal vectors based on a normal map, the world position, and world normal",TBNBlock:"Creates a TBN matrix from normal, tangent, and bitangent vectors",NormalBlend:"Outputs the result of blending two normal maps together using a per-channel screen",WorldPosition:"A Vector4 representing the position of each vertex of the attached mesh transformed into world space",DiscardBlock:"A final node that will not output a pixel below the cutoff value",FragmentOutputBlock:"A mandatory final node for outputing the color of each pixel",PrePassOutputBlock:"An optional final node for outputing geometry data on prepass textures",VertexOutputBlock:"A mandatory final node for outputing the position of each vertex",ClampBlock:"Outputs values above the maximum or below minimum as maximum or minimum values respectively",NormalizeBlock:"Remaps the length of a vector or color to 1",RemapBlock:"Remaps input value between sourceMin and sourceMax to a new range between targetMin and targetMax",CeilingBlock:"Outputs fractional values as the next higher whole number",FloorBlock:"Outputs fractional values as the next lower whole number",RoundBlock:"Outputs fractional values rounded to the nearest whole number",ModBlock:"Outputs the value of one parameter modulo another",CameraPositionBlock:"Outputs a Vector3 position of the active scene camera",CameraParametersBlock:"Outputs a Vector4 containing (-1 for webGL and 1 for webGPU, camera.minZ, camera.maxZ, 1 / camera.maxZ)",FogBlock:"Applies fog to the scene with an increasing opacity based on distance from the camera",FogColorBlock:"The system value for fog color pulled from the scene",ImageProcessingBlock:"Provides access to all of the Babylon image processing properties",LightBlock:"Outputs diffuse and specular contributions from one or more scene lights",LightInformationBlock:"Provides the direction, color and intensity of a selected light based on its world position",ReflectionTextureBlock:"Creates a reflection from the input texture",ViewDirectionBlock:"Outputs the direction vector of where the camera is aimed",AbsBlock:"Outputs the absolute value of the input value",ArcCosBlock:"Outputs the inverse of the cosine value based on the input value",ArcSinBlock:"Outputs the inverse of the sine value based on the input value",ArcTan2Block:"Outputs the inverse of the tangent value based on the input value",ArcTanBlock:"Outputs the inverse of the tangent value based on the input value",SetBlock:"Outputs the alias based on the input value",CosBlock:"Outputs the cosine value based on the input value",DegreesToRadiansBlock:"Converts the input degrees value to radians",Exp2Block:"Outputs the input value multiplied by itself 1 time. (Exponent of 2)",ExpBlock:"Outputs the input value multiplied by itself 9 time. (Exponent of 10)",FractBlock:"Outputs only the fractional value of a floating point number",LogBlock:"The logarithmic value based on the input value",PowBlock:"Outputs the input value multiplied by itself the number of times equal to the power input (Exponent of power)",RadiansToDegreesBlock:"Converts the input radians value to degrees",SawToothWaveBlock:"Outputs a sawtooth pattern value between -1 and 1 based on the input value",SignBlock:"returns 1 if the input is positive, 0 if input is equal to 0, or -1 if the input is negative",SinBlock:"Outputs the sine value based on the input value",SqrtBlock:"Outputs the square root of the input value",SquareWaveBlock:"Outputs a stepped pattern value between -1 and 1 based on the input value",TanBlock:"Outputs the tangent value based on the input value",TriangleWaveBlock:"Outputs a sawtooth pattern value between 0 and 1 based on the input value",CrossBlock:"Outputs a vector that is perpendicular to two input vectors",DotBlock:"Outputs the cos of the angle between two vectors",FresnelBlock:"Outputs the grazing angle of the surface of the mesh, relative to a camera influenced by the bias and power inputs",TransformBlock:"Transforms a input vector based on the input matrix",DerivativeBlock:"FRAGMENT SHADER ONLY. Provides the rate of change for an input on a given axis (x,y).",DesaturateBlock:"Convert a color input into a grayscale representation.",WorldViewMatrixBlock:"A matrix to remap points in 3D local space to 3D world space, and ending in 2D camera space.",FrontFacingBlock:"Returns 1 if a mesh triangle faces the normal direction and 0 if it does not.",SimplexPerlin3DBlock:"Creates a type of gradient noise with few directional artifacts.",WorleyNoise3DBlock:"Creates a random pattern resembling cells.",ReflectBlock:"Outputs the direction of the input vector reflected across the surface normal.",RefractBlock:"Outputs a direction simulating a deflection of the input vector.",Rotate2dBlock:"Rotates UV coordinates around the W axis.",PBRMetallicRoughnessBlock:"PBR metallic/roughness material",SheenBlock:"PBR Sheen block",AnisotropyBlock:"PBR Anisotropy block",ReflectionBlock:"PBR Reflection block",ClearCoatBlock:"PBR ClearCoat block",RefractionBlock:"PBR Refraction block",SubSurfaceBlock:"PBR SubSurface block",ScreenPositionBlock:"A Vector2 representing the position of each vertex of the screen quad (derived from UV set from the quad used to render)",CurrentScreenBlock:"The screen buffer used as input for the post process",ParticleUVBlock:"The particle uv texture coordinate",ParticleTextureBlock:"The particle texture",ParticleColorBlock:"The particle color",ParticleTextureMaskBlock:"The particle texture mask",ParticleRampGradientBlock:"The particle ramp gradient block",ParticleBlendMultiplyBlock:"The particle blend multiply block",ParticlePositionWorldBlock:"The world position of the particle",GaussianSplattingBlock:"The gaussian splatting block",GaussianBlock:"The gaussian color computation block",SplatReaderBlock:"The gaussian splat reader block",SplatIndexBlock:"The splat index",FragCoordBlock:"The gl_FragCoord predefined variable that contains the window relative coordinate (x, y, z, 1/w)",ScreenSizeBlock:"The size (in pixels) of the screen window",SceneDepthBlock:"The scene depth buffer",MatrixBuilderBlock:"Converts 4 Vector4 into a matrix",EqualBlock:"Return a value if two operands are equals",NotEqualBlock:"Return a value if two operands are not equals",LessThanBlock:"Return a value if an operand is smaller than a second operand",LessOrEqualBlock:"Return a value if an operand is smaller or equal to a second operand",GreaterThanBlock:"Return a value if an operand is greater than a second operand",GreaterOrEqualBlock:"Return a value if an operand is greater or equal to a second operand",XorBlock:"Return a value if (a xor b) > 0",OrBlock:"Return a value if (a or b) > 0",AndBlock:"Return a value if (a and b) > 0",ImageSourceBlock:"Centralize texture access for TextureBlocks",CloudBlock:"Generate Fractal Brownian Motion Clouds",VoronoiNoiseBlock:"Generate Voronoi Noise",ScreenSpaceBlock:"Convert a Vector3 or a Vector4 into screen space",TwirlBlock:"Apply a twirl rotation",ElbowBlock:"Passthrough block mostly used to organize your graph",TeleportInBlock:"Passthrough block mostly used to organize your graph (but without visible lines). It works like a teleportation point for the graph.",TeleportOutBlock:"Endpoint for a TeleportInBlock.",ClipPlanesBlock:"A node that add clip planes support",HeightToNormalBlock:"Convert a height map into a normal map",FragDepthBlock:"A final node that sets the fragment depth",ShadowMapBlock:"Compute a depth value suitable for shadow map generation",TriPlanarBlock:"A node for reading a texture with triplanar mapping",BiPlanarBlock:"A node for reading a texture with biplanar mapping",MatrixDeterminantBlock:"Compute the determinant of a matrix",MatrixTransposeBlock:"Compute the transpose of a matrix",MeshAttributeExistsBlock:"Falls back to secondary input if specified attribute doesn't exists on the rendered mesh",CurveBlock:"Apply a curve function",ColorConverterBlock:"Converts between RGB and HSL color spaces",LoopBlock:"Block used to repeat code",StorageReadBlock:"Block used to read from a loop storage variable",StorageWriteBlock:"Block used to write to a loop storage variable"};class H{static _SaveAs(e,t,n){if("download"in HTMLAnchorElement.prototype){const r=window.URL||window.webkitURL,o=n.createElement("a");return o.download=t,o.rel="noopener",o.href=r.createObjectURL(e),setTimeout((()=>{r.revokeObjectURL(o.href)}),4e4),void setTimeout((()=>{this._Click(o,n)}),0)}let r=open("","_blank");r&&(r.document.title=r.document.body.innerText="downloading...");const o="application/octet-stream"===e.type,a=/constructor/i.test(window.HTMLElement)||window.safari,i=/CriOS\/[\d]+/.test(navigator.userAgent);if((i||o&&a)&&"undefined"!=typeof FileReader){const t=new FileReader;t.onloadend=()=>{let e=t.result;e=i?e:e.replace(/^data:[^;]*;/,"data:attachment/file;"),r?r.location.href=e:location.href=e,r=null},t.readAsDataURL(e)}else{const t=window.URL||window.webkitURL,n=t.createObjectURL(e);r?r.location.href=n:location.href=n,r=null,setTimeout((function(){t.revokeObjectURL(n)}),4e4)}}static _Click(e,t){try{e.dispatchEvent(new MouseEvent("click"))}catch(n){const r=t.createEvent("MouseEvents");r.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(r)}}static DownloadAsFile(e,t,n){const r=new Blob([t],{type:"application/octet-stream"});this._SaveAs(r,n,e)}}class Q extends a.Component{constructor(e){super(e),this._id=Q._IDGenerator++,this._uploadInputRef=a.createRef()}onChange(e){const t=e.target.files;t&&t.length&&this.props.onClick(t[0]),e.target.value=""}render(){return(0,l.jsxs)("div",{className:"buttonLine",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsx)("label",{htmlFor:"file-upload"+this._id,className:"file-upload",children:this.props.label}),(0,l.jsx)("input",{ref:this._uploadInputRef,id:"file-upload"+this._id,type:"file",accept:this.props.accept,onChange:e=>this.onChange(e)})]})}}Q._IDGenerator=0;class Z extends a.Component{constructor(e){super(e),this._localChange=!1,this._uniqueId=Z._UniqueIdSeed++,this.props.isSelected?this.state={isSelected:this.props.isSelected()}:this.state={isSelected:1==this.props.target[this.props.propertyName]},this.props.disabled&&(this.state={...this.state,isDisabled:this.props.disabled})}shouldComponentUpdate(e,t){let n;return n=e.isSelected?e.isSelected():1==e.target[e.propertyName],n!==t.isSelected||this._localChange?(t.isSelected=n,this._localChange=!1,!0):e.disabled!==!!t.isDisabled||e.label!==this.props.label||e.target!==this.props.target}onChange(){this._localChange=!0,this.props.onSelect?this.props.onSelect(!this.state.isSelected):(this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:!this.state.isSelected,initialValue:this.state.isSelected}),this.props.target[this.props.propertyName]=!this.state.isSelected),this.props.onValueChanged&&this.props.onValueChanged(),this.setState({isSelected:!this.state.isSelected})}render(){return(0,l.jsxs)("div",{className:"checkBoxLine",children:[(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label}),(0,l.jsxs)("div",{className:"checkBox",children:[(0,l.jsx)("input",{type:"checkbox",id:"checkbox"+this._uniqueId,className:"cbx hidden",checked:this.state.isSelected,onChange:()=>this.onChange(),disabled:!!this.props.disabled}),(0,l.jsx)("label",{htmlFor:"checkbox"+this._uniqueId,className:"lbl"+(this.props.disabled?" disabled":"")})]})]})}}Z._UniqueIdSeed=0;var q=r(35),X={};X.styleTagTransform=v(),X.setAttributes=g(),X.insert=A().bind(null,"head"),X.domAPI=p(),X.insertStyleElement=C(),u()(q.A,X),q.A&&q.A.locals&&q.A.locals;class J extends a.Component{constructor(e){super(e),this._localChange=!1,this.state={value:this.props.value.toFixed(void 0!==this.props.precision?this.props.precision:3)}}componentWillUnmount(){this.props.lockObject&&(this.props.lockObject.lock=!1)}shouldComponentUpdate(e,t){return this._localChange?(this._localChange=!1,!0):e.value.toString()!==t.value&&(t.value=e.value.toFixed(void 0!==this.props.precision?this.props.precision:3),!0)}updateValue(e){if(/[^0-9.-]/g.test(e))return;const t=parseFloat(e);this._localChange=!0,this.setState({value:e}),isNaN(t)||this.props.onChange(t)}onBlur(){this._localChange=!1;const e=parseFloat(this.state.value);this.props.lockObject&&(this.props.lockObject.lock=!1),isNaN(e)?this.props.onChange(this.props.value):this.props.onChange(e)}incrementValue(e){let t=parseFloat(this.state.value);isNaN(t)&&(t=0),this.updateValue((t+e).toFixed(void 0!==this.props.precision?this.props.precision:3))}onKeyDown(e){const t=this.props.step||1,n=n=>{e.shiftKey&&(n*=10,(e.ctrlKey||e.metaKey)&&(n*=10)),this.incrementValue(n*t),e.preventDefault()};"ArrowUp"===e.key?n(1):"ArrowDown"===e.key&&n(-1)}render(){return(0,l.jsxs)("div",{className:"numeric",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),this.props.label&&(0,l.jsx)("div",{className:"numeric-label",title:this.props.labelTooltip??this.props.label,children:`${this.props.label}: `}),(0,l.jsx)("input",{type:"number",step:this.props.step,className:"numeric-input",value:this.state.value,onChange:e=>this.updateValue(e.target.value),onKeyDown:e=>this.onKeyDown(e),onFocus:()=>{this.props.lockObject&&(this.props.lockObject.lock=!0)},onBlur:()=>this.onBlur()})]})}}J.defaultProps={step:1};const K=()=>{};let $={},ee={},te=null,ne={mark:K,measure:K};try{"undefined"!=typeof window&&($=window),"undefined"!=typeof document&&(ee=document),"undefined"!=typeof MutationObserver&&(te=MutationObserver),"undefined"!=typeof performance&&(ne=performance)}catch(e){}const{userAgent:re=""}=$.navigator||{},oe=$,ae=ee,ie=te,se=ne,le=(oe.document,!!ae.documentElement&&!!ae.head&&"function"==typeof ae.addEventListener&&"function"==typeof ae.createElement),ce=~re.indexOf("MSIE")||~re.indexOf("Trident/");var ue="classic",de="duotone",pe="sharp",he="sharp-duotone",Ae=[ue,de,pe,he],fe={classic:{fa:"solid",fas:"solid","fa-solid":"solid",far:"regular","fa-regular":"regular",fal:"light","fa-light":"light",fat:"thin","fa-thin":"thin",fad:"duotone","fa-duotone":"duotone",fab:"brands","fa-brands":"brands"},sharp:{fa:"solid",fass:"solid","fa-solid":"solid",fasr:"regular","fa-regular":"regular",fasl:"light","fa-light":"light",fast:"thin","fa-thin":"thin"},"sharp-duotone":{fa:"solid",fasds:"solid","fa-solid":"solid"}},ge=[1,2,3,4,5,6,7,8,9,10],me=ge.concat([11,12,13,14,15,16,17,18,19,20]),Ce={GROUP:"duotone-group",SWAP_OPACITY:"swap-opacity",PRIMARY:"primary",SECONDARY:"secondary"},be=[...Object.keys({classic:["fas","far","fal","fat"],sharp:["fass","fasr","fasl","fast"],"sharp-duotone":["fasds"]}),"solid","regular","light","thin","duotone","brands","2xs","xs","sm","lg","xl","2xl","beat","border","fade","beat-fade","bounce","flip-both","flip-horizontal","flip-vertical","flip","fw","inverse","layers-counter","layers-text","layers","li","pull-left","pull-right","pulse","rotate-180","rotate-270","rotate-90","rotate-by","shake","spin-pulse","spin-reverse","spin","stack-1x","stack-2x","stack","ul",Ce.GROUP,Ce.SWAP_OPACITY,Ce.PRIMARY,Ce.SECONDARY].concat(ge.map((e=>"".concat(e,"x")))).concat(me.map((e=>"w-".concat(e))));const ve="___FONT_AWESOME___",ye=16,xe="svg-inline--fa",we="data-fa-i2svg",Me="data-fa-pseudo-element",ke="data-prefix",Ne="data-icon",_e="fontawesome-i2svg",Se=["HTML","HEAD","STYLE","SCRIPT"],Le=(()=>{try{return!0}catch(e){return!1}})(),Be=[ue,pe,he];function De(e){return new Proxy(e,{get:(e,t)=>t in e?e[t]:e[ue]})}const Ie={...fe};Ie[ue]={...fe[ue],fak:"kit","fa-kit":"kit",fakd:"kit-duotone","fa-kit-duotone":"kit-duotone"};const je=De(Ie),Ee={classic:{solid:"fas",regular:"far",light:"fal",thin:"fat",duotone:"fad",brands:"fab"},sharp:{solid:"fass",regular:"fasr",light:"fasl",thin:"fast"},"sharp-duotone":{solid:"fasds"}};Ee[ue]={...Ee[ue],kit:"fak","kit-duotone":"fakd"};const Te=De(Ee),Oe={classic:{fab:"fa-brands",fad:"fa-duotone",fal:"fa-light",far:"fa-regular",fas:"fa-solid",fat:"fa-thin"},sharp:{fass:"fa-solid",fasr:"fa-regular",fasl:"fa-light",fast:"fa-thin"},"sharp-duotone":{fasds:"fa-solid"}};Oe[ue]={...Oe[ue],fak:"fa-kit"};const Pe=De(Oe),ze={classic:{"fa-brands":"fab","fa-duotone":"fad","fa-light":"fal","fa-regular":"far","fa-solid":"fas","fa-thin":"fat"},sharp:{"fa-solid":"fass","fa-regular":"fasr","fa-light":"fasl","fa-thin":"fast"},"sharp-duotone":{"fa-solid":"fasds"}};ze[ue]={...ze[ue],"fa-kit":"fak"};const Re=De(ze),Ue=/fa(s|r|l|t|d|b|k|kd|ss|sr|sl|st|sds)?[\-\ ]/,Fe="fa-layers-text",Ye=/Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i,Ve=(De({classic:{900:"fas",400:"far",normal:"far",300:"fal",100:"fat"},sharp:{900:"fass",400:"fasr",300:"fasl",100:"fast"},"sharp-duotone":{900:"fasds"}}),["class","data-prefix","data-icon","data-fa-transform","data-fa-mask"]),Ge=Ce,We=new Set;Object.keys(Te[ue]).map(We.add.bind(We)),Object.keys(Te[pe]).map(We.add.bind(We)),Object.keys(Te[he]).map(We.add.bind(We));const He=["kit",...be],Qe=oe.FontAwesomeConfig||{};ae&&"function"==typeof ae.querySelector&&[["data-family-prefix","familyPrefix"],["data-css-prefix","cssPrefix"],["data-family-default","familyDefault"],["data-style-default","styleDefault"],["data-replacement-class","replacementClass"],["data-auto-replace-svg","autoReplaceSvg"],["data-auto-add-css","autoAddCss"],["data-auto-a11y","autoA11y"],["data-search-pseudo-elements","searchPseudoElements"],["data-observe-mutations","observeMutations"],["data-mutate-approach","mutateApproach"],["data-keep-original-source","keepOriginalSource"],["data-measure-performance","measurePerformance"],["data-show-missing-icons","showMissingIcons"]].forEach((e=>{let[t,n]=e;const r=function(e){return""===e||"false"!==e&&("true"===e||e)}(function(e){var t=ae.querySelector("script["+e+"]");if(t)return t.getAttribute(e)}(t));null!=r&&(Qe[n]=r)}));const Ze={styleDefault:"solid",familyDefault:"classic",cssPrefix:"fa",replacementClass:xe,autoReplaceSvg:!0,autoAddCss:!0,autoA11y:!0,searchPseudoElements:!1,observeMutations:!0,mutateApproach:"async",keepOriginalSource:!0,measurePerformance:!1,showMissingIcons:!0};Qe.familyPrefix&&(Qe.cssPrefix=Qe.familyPrefix);const qe={...Ze,...Qe};qe.autoReplaceSvg||(qe.observeMutations=!1);const Xe={};Object.keys(Ze).forEach((e=>{Object.defineProperty(Xe,e,{enumerable:!0,set:function(t){qe[e]=t,Je.forEach((e=>e(Xe)))},get:function(){return qe[e]}})})),Object.defineProperty(Xe,"familyPrefix",{enumerable:!0,set:function(e){qe.cssPrefix=e,Je.forEach((e=>e(Xe)))},get:function(){return qe.cssPrefix}}),oe.FontAwesomeConfig=Xe;const Je=[],Ke=ye,$e={size:16,x:0,y:0,rotate:0,flipX:!1,flipY:!1};function et(){let e=12,t="";for(;e-- >0;)t+="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"[62*Math.random()|0];return t}function tt(e){const t=[];for(let n=(e||[]).length>>>0;n--;)t[n]=e[n];return t}function nt(e){return e.classList?tt(e.classList):(e.getAttribute("class")||"").split(" ").filter((e=>e))}function rt(e){return"".concat(e).replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}function ot(e){return Object.keys(e||{}).reduce(((t,n)=>t+"".concat(n,": ").concat(e[n].trim(),";")),"")}function at(e){return e.size!==$e.size||e.x!==$e.x||e.y!==$e.y||e.rotate!==$e.rotate||e.flipX||e.flipY}function it(){const e="fa",t=xe,n=Xe.cssPrefix,r=Xe.replacementClass;let o=':root, :host {\n --fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";\n --fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";\n --fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";\n --fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";\n --fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";\n --fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";\n --fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";\n --fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";\n --fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";\n --fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";\n --fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";\n}\n\nsvg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {\n overflow: visible;\n box-sizing: content-box;\n}\n\n.svg-inline--fa {\n display: var(--fa-display, inline-block);\n height: 1em;\n overflow: visible;\n vertical-align: -0.125em;\n}\n.svg-inline--fa.fa-2xs {\n vertical-align: 0.1em;\n}\n.svg-inline--fa.fa-xs {\n vertical-align: 0em;\n}\n.svg-inline--fa.fa-sm {\n vertical-align: -0.0714285705em;\n}\n.svg-inline--fa.fa-lg {\n vertical-align: -0.2em;\n}\n.svg-inline--fa.fa-xl {\n vertical-align: -0.25em;\n}\n.svg-inline--fa.fa-2xl {\n vertical-align: -0.3125em;\n}\n.svg-inline--fa.fa-pull-left {\n margin-right: var(--fa-pull-margin, 0.3em);\n width: auto;\n}\n.svg-inline--fa.fa-pull-right {\n margin-left: var(--fa-pull-margin, 0.3em);\n width: auto;\n}\n.svg-inline--fa.fa-li {\n width: var(--fa-li-width, 2em);\n top: 0.25em;\n}\n.svg-inline--fa.fa-fw {\n width: var(--fa-fw-width, 1.25em);\n}\n\n.fa-layers svg.svg-inline--fa {\n bottom: 0;\n left: 0;\n margin: auto;\n position: absolute;\n right: 0;\n top: 0;\n}\n\n.fa-layers-counter, .fa-layers-text {\n display: inline-block;\n position: absolute;\n text-align: center;\n}\n\n.fa-layers {\n display: inline-block;\n height: 1em;\n position: relative;\n text-align: center;\n vertical-align: -0.125em;\n width: 1em;\n}\n.fa-layers svg.svg-inline--fa {\n transform-origin: center center;\n}\n\n.fa-layers-text {\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n transform-origin: center center;\n}\n\n.fa-layers-counter {\n background-color: var(--fa-counter-background-color, #ff253a);\n border-radius: var(--fa-counter-border-radius, 1em);\n box-sizing: border-box;\n color: var(--fa-inverse, #fff);\n line-height: var(--fa-counter-line-height, 1);\n max-width: var(--fa-counter-max-width, 5em);\n min-width: var(--fa-counter-min-width, 1.5em);\n overflow: hidden;\n padding: var(--fa-counter-padding, 0.25em 0.5em);\n right: var(--fa-right, 0);\n text-overflow: ellipsis;\n top: var(--fa-top, 0);\n transform: scale(var(--fa-counter-scale, 0.25));\n transform-origin: top right;\n}\n\n.fa-layers-bottom-right {\n bottom: var(--fa-bottom, 0);\n right: var(--fa-right, 0);\n top: auto;\n transform: scale(var(--fa-layers-scale, 0.25));\n transform-origin: bottom right;\n}\n\n.fa-layers-bottom-left {\n bottom: var(--fa-bottom, 0);\n left: var(--fa-left, 0);\n right: auto;\n top: auto;\n transform: scale(var(--fa-layers-scale, 0.25));\n transform-origin: bottom left;\n}\n\n.fa-layers-top-right {\n top: var(--fa-top, 0);\n right: var(--fa-right, 0);\n transform: scale(var(--fa-layers-scale, 0.25));\n transform-origin: top right;\n}\n\n.fa-layers-top-left {\n left: var(--fa-left, 0);\n right: auto;\n top: var(--fa-top, 0);\n transform: scale(var(--fa-layers-scale, 0.25));\n transform-origin: top left;\n}\n\n.fa-1x {\n font-size: 1em;\n}\n\n.fa-2x {\n font-size: 2em;\n}\n\n.fa-3x {\n font-size: 3em;\n}\n\n.fa-4x {\n font-size: 4em;\n}\n\n.fa-5x {\n font-size: 5em;\n}\n\n.fa-6x {\n font-size: 6em;\n}\n\n.fa-7x {\n font-size: 7em;\n}\n\n.fa-8x {\n font-size: 8em;\n}\n\n.fa-9x {\n font-size: 9em;\n}\n\n.fa-10x {\n font-size: 10em;\n}\n\n.fa-2xs {\n font-size: 0.625em;\n line-height: 0.1em;\n vertical-align: 0.225em;\n}\n\n.fa-xs {\n font-size: 0.75em;\n line-height: 0.0833333337em;\n vertical-align: 0.125em;\n}\n\n.fa-sm {\n font-size: 0.875em;\n line-height: 0.0714285718em;\n vertical-align: 0.0535714295em;\n}\n\n.fa-lg {\n font-size: 1.25em;\n line-height: 0.05em;\n vertical-align: -0.075em;\n}\n\n.fa-xl {\n font-size: 1.5em;\n line-height: 0.0416666682em;\n vertical-align: -0.125em;\n}\n\n.fa-2xl {\n font-size: 2em;\n line-height: 0.03125em;\n vertical-align: -0.1875em;\n}\n\n.fa-fw {\n text-align: center;\n width: 1.25em;\n}\n\n.fa-ul {\n list-style-type: none;\n margin-left: var(--fa-li-margin, 2.5em);\n padding-left: 0;\n}\n.fa-ul > li {\n position: relative;\n}\n\n.fa-li {\n left: calc(-1 * var(--fa-li-width, 2em));\n position: absolute;\n text-align: center;\n width: var(--fa-li-width, 2em);\n line-height: inherit;\n}\n\n.fa-border {\n border-color: var(--fa-border-color, #eee);\n border-radius: var(--fa-border-radius, 0.1em);\n border-style: var(--fa-border-style, solid);\n border-width: var(--fa-border-width, 0.08em);\n padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);\n}\n\n.fa-pull-left {\n float: left;\n margin-right: var(--fa-pull-margin, 0.3em);\n}\n\n.fa-pull-right {\n float: right;\n margin-left: var(--fa-pull-margin, 0.3em);\n}\n\n.fa-beat {\n animation-name: fa-beat;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\n}\n\n.fa-bounce {\n animation-name: fa-bounce;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));\n}\n\n.fa-fade {\n animation-name: fa-fade;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\n}\n\n.fa-beat-fade {\n animation-name: fa-beat-fade;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\n}\n\n.fa-flip {\n animation-name: fa-flip;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\n}\n\n.fa-shake {\n animation-name: fa-shake;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, linear);\n}\n\n.fa-spin {\n animation-name: fa-spin;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 2s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, linear);\n}\n\n.fa-spin-reverse {\n --fa-animation-direction: reverse;\n}\n\n.fa-pulse,\n.fa-spin-pulse {\n animation-name: fa-spin;\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, steps(8));\n}\n\n@media (prefers-reduced-motion: reduce) {\n .fa-beat,\n.fa-bounce,\n.fa-fade,\n.fa-beat-fade,\n.fa-flip,\n.fa-pulse,\n.fa-shake,\n.fa-spin,\n.fa-spin-pulse {\n animation-delay: -1ms;\n animation-duration: 1ms;\n animation-iteration-count: 1;\n transition-delay: 0s;\n transition-duration: 0s;\n }\n}\n@keyframes fa-beat {\n 0%, 90% {\n transform: scale(1);\n }\n 45% {\n transform: scale(var(--fa-beat-scale, 1.25));\n }\n}\n@keyframes fa-bounce {\n 0% {\n transform: scale(1, 1) translateY(0);\n }\n 10% {\n transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);\n }\n 30% {\n transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));\n }\n 50% {\n transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);\n }\n 57% {\n transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\n }\n 64% {\n transform: scale(1, 1) translateY(0);\n }\n 100% {\n transform: scale(1, 1) translateY(0);\n }\n}\n@keyframes fa-fade {\n 50% {\n opacity: var(--fa-fade-opacity, 0.4);\n }\n}\n@keyframes fa-beat-fade {\n 0%, 100% {\n opacity: var(--fa-beat-fade-opacity, 0.4);\n transform: scale(1);\n }\n 50% {\n opacity: 1;\n transform: scale(var(--fa-beat-fade-scale, 1.125));\n }\n}\n@keyframes fa-flip {\n 50% {\n transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));\n }\n}\n@keyframes fa-shake {\n 0% {\n transform: rotate(-15deg);\n }\n 4% {\n transform: rotate(15deg);\n }\n 8%, 24% {\n transform: rotate(-18deg);\n }\n 12%, 28% {\n transform: rotate(18deg);\n }\n 16% {\n transform: rotate(-22deg);\n }\n 20% {\n transform: rotate(22deg);\n }\n 32% {\n transform: rotate(-12deg);\n }\n 36% {\n transform: rotate(12deg);\n }\n 40%, 100% {\n transform: rotate(0deg);\n }\n}\n@keyframes fa-spin {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.fa-rotate-90 {\n transform: rotate(90deg);\n}\n\n.fa-rotate-180 {\n transform: rotate(180deg);\n}\n\n.fa-rotate-270 {\n transform: rotate(270deg);\n}\n\n.fa-flip-horizontal {\n transform: scale(-1, 1);\n}\n\n.fa-flip-vertical {\n transform: scale(1, -1);\n}\n\n.fa-flip-both,\n.fa-flip-horizontal.fa-flip-vertical {\n transform: scale(-1, -1);\n}\n\n.fa-rotate-by {\n transform: rotate(var(--fa-rotate-angle, 0));\n}\n\n.fa-stack {\n display: inline-block;\n vertical-align: middle;\n height: 2em;\n position: relative;\n width: 2.5em;\n}\n\n.fa-stack-1x,\n.fa-stack-2x {\n bottom: 0;\n left: 0;\n margin: auto;\n position: absolute;\n right: 0;\n top: 0;\n z-index: var(--fa-stack-z-index, auto);\n}\n\n.svg-inline--fa.fa-stack-1x {\n height: 1em;\n width: 1.25em;\n}\n.svg-inline--fa.fa-stack-2x {\n height: 2em;\n width: 2.5em;\n}\n\n.fa-inverse {\n color: var(--fa-inverse, #fff);\n}\n\n.sr-only,\n.fa-sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n\n.sr-only-focusable:not(:focus),\n.fa-sr-only-focusable:not(:focus) {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n\n.svg-inline--fa .fa-primary {\n fill: var(--fa-primary-color, currentColor);\n opacity: var(--fa-primary-opacity, 1);\n}\n\n.svg-inline--fa .fa-secondary {\n fill: var(--fa-secondary-color, currentColor);\n opacity: var(--fa-secondary-opacity, 0.4);\n}\n\n.svg-inline--fa.fa-swap-opacity .fa-primary {\n opacity: var(--fa-secondary-opacity, 0.4);\n}\n\n.svg-inline--fa.fa-swap-opacity .fa-secondary {\n opacity: var(--fa-primary-opacity, 1);\n}\n\n.svg-inline--fa mask .fa-primary,\n.svg-inline--fa mask .fa-secondary {\n fill: black;\n}\n\n.fad.fa-inverse,\n.fa-duotone.fa-inverse {\n color: var(--fa-inverse, #fff);\n}';if(n!==e||r!==t){const a=new RegExp("\\.".concat(e,"\\-"),"g"),i=new RegExp("\\--".concat(e,"\\-"),"g"),s=new RegExp("\\.".concat(t),"g");o=o.replace(a,".".concat(n,"-")).replace(i,"--".concat(n,"-")).replace(s,".".concat(r))}return o}let st=!1;function lt(){Xe.autoAddCss&&!st&&(function(e){if(!e||!le)return;const t=ae.createElement("style");t.setAttribute("type","text/css"),t.innerHTML=e;const n=ae.head.childNodes;let r=null;for(let e=n.length-1;e>-1;e--){const t=n[e],o=(t.tagName||"").toUpperCase();["STYLE","LINK"].indexOf(o)>-1&&(r=t)}ae.head.insertBefore(t,r)}(it()),st=!0)}var ct={mixout:()=>({dom:{css:it,insertCss:lt}}),hooks:()=>({beforeDOMElementCreation(){lt()},beforeI2svg(){lt()}})};const ut=oe||{};ut[ve]||(ut[ve]={}),ut[ve].styles||(ut[ve].styles={}),ut[ve].hooks||(ut[ve].hooks={}),ut[ve].shims||(ut[ve].shims=[]);var dt=ut[ve];const pt=[],ht=function(){ae.removeEventListener("DOMContentLoaded",ht),At=1,pt.map((e=>e()))};let At=!1;function ft(e){const{tag:t,attributes:n={},children:r=[]}=e;return"string"==typeof e?rt(e):"<".concat(t," ").concat(function(e){return Object.keys(e||{}).reduce(((t,n)=>t+"".concat(n,'="').concat(rt(e[n]),'" ')),"").trim()}(n),">").concat(r.map(ft).join(""),"</").concat(t,">")}function gt(e,t,n){if(e&&e[t]&&e[t][n])return{prefix:t,iconName:n,icon:e[t][n]}}le&&(At=(ae.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(ae.readyState),At||ae.addEventListener("DOMContentLoaded",ht));var mt=function(e,t,n,r){var o,a,i,s=Object.keys(e),l=s.length,c=void 0!==r?function(e,t){return function(n,r,o,a){return e.call(t,n,r,o,a)}}(t,r):t;for(void 0===n?(o=1,i=e[s[0]]):(o=0,i=n);o<l;o++)i=c(i,e[a=s[o]],a,e);return i};function Ct(e){const t=function(e){const t=[];let n=0;const r=e.length;for(;n<r;){const o=e.charCodeAt(n++);if(o>=55296&&o<=56319&&n<r){const r=e.charCodeAt(n++);56320==(64512&r)?t.push(((1023&o)<<10)+(1023&r)+65536):(t.push(o),n--)}else t.push(o)}return t}(e);return 1===t.length?t[0].toString(16):null}function bt(e){return Object.keys(e).reduce(((t,n)=>{const r=e[n];return r.icon?t[r.iconName]=r.icon:t[n]=r,t}),{})}function vt(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const{skipHooks:r=!1}=n,o=bt(t);"function"!=typeof dt.hooks.addPack||r?dt.styles[e]={...dt.styles[e]||{},...o}:dt.hooks.addPack(e,bt(t)),"fas"===e&&vt("fa",t)}const{styles:yt,shims:xt}=dt,wt={[ue]:Object.values(Pe[ue]),[pe]:Object.values(Pe[pe]),[he]:Object.values(Pe[he])};let Mt=null,kt={},Nt={},_t={},St={},Lt={};const Bt={[ue]:Object.keys(je[ue]),[pe]:Object.keys(je[pe]),[he]:Object.keys(je[he])};const Dt=()=>{const e=e=>mt(yt,((t,n,r)=>(t[r]=mt(n,e,{}),t)),{});kt=e(((e,t,n)=>(t[3]&&(e[t[3]]=n),t[2]&&t[2].filter((e=>"number"==typeof e)).forEach((t=>{e[t.toString(16)]=n})),e))),Nt=e(((e,t,n)=>(e[n]=n,t[2]&&t[2].filter((e=>"string"==typeof e)).forEach((t=>{e[t]=n})),e))),Lt=e(((e,t,n)=>{const r=t[2];return e[n]=n,r.forEach((t=>{e[t]=n})),e}));const t="far"in yt||Xe.autoFetchSvg,n=mt(xt,((e,n)=>{const r=n[0];let o=n[1];const a=n[2];return"far"!==o||t||(o="fas"),"string"==typeof r&&(e.names[r]={prefix:o,iconName:a}),"number"==typeof r&&(e.unicodes[r.toString(16)]={prefix:o,iconName:a}),e}),{names:{},unicodes:{}});_t=n.names,St=n.unicodes,Mt=Pt(Xe.styleDefault,{family:Xe.familyDefault})};var It;function jt(e,t){return(kt[e]||{})[t]}function Et(e,t){return(Lt[e]||{})[t]}function Tt(e){return _t[e]||{prefix:null,iconName:null}}function Ot(){return Mt}function Pt(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{family:n=ue}=t,r=je[n][e],o=Te[n][e]||Te[n][r],a=e in dt.styles?e:null;return o||a||null}It=e=>{Mt=Pt(e.styleDefault,{family:Xe.familyDefault})},Je.push(It),Dt();const zt={[ue]:Object.keys(Pe[ue]),[pe]:Object.keys(Pe[pe]),[he]:Object.keys(Pe[he])};function Rt(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{skipLookups:n=!1}=t,r={[ue]:"".concat(Xe.cssPrefix,"-").concat(ue),[pe]:"".concat(Xe.cssPrefix,"-").concat(pe),[he]:"".concat(Xe.cssPrefix,"-").concat(he)};let o=null,a=ue;const i=Ae.filter((e=>e!==de));i.forEach((t=>{(e.includes(r[t])||e.some((e=>zt[t].includes(e))))&&(a=t)}));const s=e.reduce(((e,t)=>{const s=function(e,t){const n=t.split("-"),r=n[0],o=n.slice(1).join("-");return r!==e||""===o||(a=o,~He.indexOf(a))?null:o;var a}(Xe.cssPrefix,t);if(yt[t]?(t=wt[a].includes(t)?Re[a][t]:t,o=t,e.prefix=t):Bt[a].indexOf(t)>-1?(o=t,e.prefix=Pt(t,{family:a})):s?e.iconName=s:t===Xe.replacementClass||i.some((e=>t===r[e]))||e.rest.push(t),!n&&e.prefix&&e.iconName){const t="fa"===o?Tt(e.iconName):{},n=Et(e.prefix,e.iconName);t.prefix&&(o=null),e.iconName=t.iconName||n||e.iconName,e.prefix=t.prefix||e.prefix,"far"!==e.prefix||yt.far||!yt.fas||Xe.autoFetchSvg||(e.prefix="fas")}return e}),{prefix:null,iconName:null,rest:[]});return(e.includes("fa-brands")||e.includes("fab"))&&(s.prefix="fab"),(e.includes("fa-duotone")||e.includes("fad"))&&(s.prefix="fad"),s.prefix||a!==pe||!yt.fass&&!Xe.autoFetchSvg||(s.prefix="fass",s.iconName=Et(s.prefix,s.iconName)||s.iconName),s.prefix||a!==he||!yt.fasds&&!Xe.autoFetchSvg||(s.prefix="fasds",s.iconName=Et(s.prefix,s.iconName)||s.iconName),"fa"!==s.prefix&&"fa"!==o||(s.prefix=Ot()||"fas"),s}let Ut=[],Ft={};const Yt={},Vt=Object.keys(Yt);function Gt(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];return(Ft[e]||[]).forEach((e=>{t=e.apply(null,[t,...r])})),t}function Wt(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];(Ft[e]||[]).forEach((e=>{e.apply(null,n)}))}function Ht(){const e=arguments[0],t=Array.prototype.slice.call(arguments,1);return Yt[e]?Yt[e].apply(null,t):void 0}function Qt(e){"fa"===e.prefix&&(e.prefix="fas");let{iconName:t}=e;const n=e.prefix||Ot();if(t)return t=Et(n,t)||t,gt(Zt.definitions,n,t)||gt(dt.styles,n,t)}const Zt=new class{constructor(){this.definitions={}}add(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];const r=t.reduce(this._pullDefinitions,{});Object.keys(r).forEach((e=>{this.definitions[e]={...this.definitions[e]||{},...r[e]},vt(e,r[e]);const t=Pe[ue][e];t&&vt(t,r[e]),Dt()}))}reset(){this.definitions={}}_pullDefinitions(e,t){const n=t.prefix&&t.iconName&&t.icon?{0:t}:t;return Object.keys(n).map((t=>{const{prefix:r,iconName:o,icon:a}=n[t],i=a[2];e[r]||(e[r]={}),i.length>0&&i.forEach((t=>{"string"==typeof t&&(e[r][t]=a)})),e[r][o]=a})),e}},qt={i2svg:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return le?(Wt("beforeI2svg",e),Ht("pseudoElements2svg",e),Ht("i2svg",e)):Promise.reject(new Error("Operation requires a DOM of some kind."))},watch:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{autoReplaceSvgRoot:t}=e;var n;!1===Xe.autoReplaceSvg&&(Xe.autoReplaceSvg=!0),Xe.observeMutations=!0,n=()=>{Kt({autoReplaceSvgRoot:t}),Wt("watch",e)},le&&(At?setTimeout(n,0):pt.push(n))}},Xt={icon:e=>{if(null===e)return null;if("object"==typeof e&&e.prefix&&e.iconName)return{prefix:e.prefix,iconName:Et(e.prefix,e.iconName)||e.iconName};if(Array.isArray(e)&&2===e.length){const t=0===e[1].indexOf("fa-")?e[1].slice(3):e[1],n=Pt(e[0]);return{prefix:n,iconName:Et(n,t)||t}}if("string"==typeof e&&(e.indexOf("".concat(Xe.cssPrefix,"-"))>-1||e.match(Ue))){const t=Rt(e.split(" "),{skipLookups:!0});return{prefix:t.prefix||Ot(),iconName:Et(t.prefix,t.iconName)||t.iconName}}if("string"==typeof e){const t=Ot();return{prefix:t,iconName:Et(t,e)||e}}}},Jt={noAuto:()=>{Xe.autoReplaceSvg=!1,Xe.observeMutations=!1,Wt("noAuto")},config:Xe,dom:qt,parse:Xt,library:Zt,findIconDefinition:Qt,toHtml:ft},Kt=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{autoReplaceSvgRoot:t=ae}=e;(Object.keys(dt.styles).length>0||Xe.autoFetchSvg)&&le&&Xe.autoReplaceSvg&&Jt.dom.i2svg({node:t})};function $t(e,t){return Object.defineProperty(e,"abstract",{get:t}),Object.defineProperty(e,"html",{get:function(){return e.abstract.map((e=>ft(e)))}}),Object.defineProperty(e,"node",{get:function(){if(!le)return;const t=ae.createElement("div");return t.innerHTML=e.html,t.children}}),e}function en(e){const{icons:{main:t,mask:n},prefix:r,iconName:o,transform:a,symbol:i,title:s,maskId:l,titleId:c,extra:u,watchable:d=!1}=e,{width:p,height:h}=n.found?n:t,A="fak"===r,f=[Xe.replacementClass,o?"".concat(Xe.cssPrefix,"-").concat(o):""].filter((e=>-1===u.classes.indexOf(e))).filter((e=>""!==e||!!e)).concat(u.classes).join(" ");let g={children:[],attributes:{...u.attributes,"data-prefix":r,"data-icon":o,class:f,role:u.attributes.role||"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(p," ").concat(h)}};const m=A&&!~u.classes.indexOf("fa-fw")?{width:"".concat(p/h*16*.0625,"em")}:{};d&&(g.attributes[we]=""),s&&(g.children.push({tag:"title",attributes:{id:g.attributes["aria-labelledby"]||"title-".concat(c||et())},children:[s]}),delete g.attributes.title);const C={...g,prefix:r,iconName:o,main:t,mask:n,maskId:l,transform:a,symbol:i,styles:{...m,...u.styles}},{children:b,attributes:v}=n.found&&t.found?Ht("generateAbstractMask",C)||{children:[],attributes:{}}:Ht("generateAbstractIcon",C)||{children:[],attributes:{}};return C.children=b,C.attributes=v,i?function(e){let{prefix:t,iconName:n,children:r,attributes:o,symbol:a}=e;return[{tag:"svg",attributes:{style:"display: none;"},children:[{tag:"symbol",attributes:{...o,id:!0===a?"".concat(t,"-").concat(Xe.cssPrefix,"-").concat(n):a},children:r}]}]}(C):function(e){let{children:t,main:n,mask:r,attributes:o,styles:a,transform:i}=e;if(at(i)&&n.found&&!r.found){const{width:e,height:t}=n,r={x:e/t/2,y:.5};o.style=ot({...a,"transform-origin":"".concat(r.x+i.x/16,"em ").concat(r.y+i.y/16,"em")})}return[{tag:"svg",attributes:o,children:t}]}(C)}function tn(e){const{content:t,width:n,height:r,transform:o,title:a,extra:i,watchable:s=!1}=e,l={...i.attributes,...a?{title:a}:{},class:i.classes.join(" ")};s&&(l[we]="");const c={...i.styles};at(o)&&(c.transform=function(e){let{transform:t,width:n=ye,height:r=ye,startCentered:o=!1}=e,a="";return a+=o&&ce?"translate(".concat(t.x/Ke-n/2,"em, ").concat(t.y/Ke-r/2,"em) "):o?"translate(calc(-50% + ".concat(t.x/Ke,"em), calc(-50% + ").concat(t.y/Ke,"em)) "):"translate(".concat(t.x/Ke,"em, ").concat(t.y/Ke,"em) "),a+="scale(".concat(t.size/Ke*(t.flipX?-1:1),", ").concat(t.size/Ke*(t.flipY?-1:1),") "),a+="rotate(".concat(t.rotate,"deg) "),a}({transform:o,startCentered:!0,width:n,height:r}),c["-webkit-transform"]=c.transform);const u=ot(c);u.length>0&&(l.style=u);const d=[];return d.push({tag:"span",attributes:l,children:[t]}),a&&d.push({tag:"span",attributes:{class:"sr-only"},children:[a]}),d}const{styles:nn}=dt;function rn(e){const t=e[0],n=e[1],[r]=e.slice(4);let o=null;return o=Array.isArray(r)?{tag:"g",attributes:{class:"".concat(Xe.cssPrefix,"-").concat(Ge.GROUP)},children:[{tag:"path",attributes:{class:"".concat(Xe.cssPrefix,"-").concat(Ge.SECONDARY),fill:"currentColor",d:r[0]}},{tag:"path",attributes:{class:"".concat(Xe.cssPrefix,"-").concat(Ge.PRIMARY),fill:"currentColor",d:r[1]}}]}:{tag:"path",attributes:{fill:"currentColor",d:r}},{found:!0,width:t,height:n,icon:o}}const on={found:!1,width:512,height:512};function an(e,t){let n=t;return"fa"===t&&null!==Xe.styleDefault&&(t=Ot()),new Promise(((r,o)=>{if("fa"===n){const n=Tt(e)||{};e=n.iconName||e,t=n.prefix||t}if(e&&t&&nn[t]&&nn[t][e])return r(rn(nn[t][e]));!function(e,t){Le||Xe.showMissingIcons||!e||console.error('Icon with name "'.concat(e,'" and prefix "').concat(t,'" is missing.'))}(e,t),r({...on,icon:Xe.showMissingIcons&&e&&Ht("missingIconAbstract")||{}})}))}const sn=()=>{},ln=Xe.measurePerformance&&se&&se.mark&&se.measure?se:{mark:sn,measure:sn},cn='FA "6.6.0"';var un=e=>(ln.mark("".concat(cn," ").concat(e," begins")),()=>(e=>{ln.mark("".concat(cn," ").concat(e," ends")),ln.measure("".concat(cn," ").concat(e),"".concat(cn," ").concat(e," begins"),"".concat(cn," ").concat(e," ends"))})(e));const dn=()=>{};function pn(e){return"string"==typeof(e.getAttribute?e.getAttribute(we):null)}function hn(e){return ae.createElementNS("http://www.w3.org/2000/svg",e)}function An(e){return ae.createElement(e)}function fn(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{ceFn:n=("svg"===e.tag?hn:An)}=t;if("string"==typeof e)return ae.createTextNode(e);const r=n(e.tag);return Object.keys(e.attributes||[]).forEach((function(t){r.setAttribute(t,e.attributes[t])})),(e.children||[]).forEach((function(e){r.appendChild(fn(e,{ceFn:n}))})),r}const gn={replace:function(e){const t=e[0];if(t.parentNode)if(e[1].forEach((e=>{t.parentNode.insertBefore(fn(e),t)})),null===t.getAttribute(we)&&Xe.keepOriginalSource){let e=ae.createComment(function(e){let t=" ".concat(e.outerHTML," ");return t="".concat(t,"Font Awesome fontawesome.com "),t}(t));t.parentNode.replaceChild(e,t)}else t.remove()},nest:function(e){const t=e[0],n=e[1];if(~nt(t).indexOf(Xe.replacementClass))return gn.replace(e);const r=new RegExp("".concat(Xe.cssPrefix,"-.*"));if(delete n[0].attributes.id,n[0].attributes.class){const e=n[0].attributes.class.split(" ").reduce(((e,t)=>(t===Xe.replacementClass||t.match(r)?e.toSvg.push(t):e.toNode.push(t),e)),{toNode:[],toSvg:[]});n[0].attributes.class=e.toSvg.join(" "),0===e.toNode.length?t.removeAttribute("class"):t.setAttribute("class",e.toNode.join(" "))}const o=n.map((e=>ft(e))).join("\n");t.setAttribute(we,""),t.innerHTML=o}};function mn(e){e()}function Cn(e,t){const n="function"==typeof t?t:dn;if(0===e.length)n();else{let t=mn;"async"===Xe.mutateApproach&&(t=oe.requestAnimationFrame||mn),t((()=>{const t=!0===Xe.autoReplaceSvg?gn.replace:gn[Xe.autoReplaceSvg]||gn.replace,r=un("mutate");e.map(t),r(),n()}))}}let bn=!1;function vn(){bn=!0}function yn(){bn=!1}let xn=null;function wn(e){if(!ie)return;if(!Xe.observeMutations)return;const{treeCallback:t=dn,nodeCallback:n=dn,pseudoElementsCallback:r=dn,observeMutationsRoot:o=ae}=e;xn=new ie((e=>{if(bn)return;const o=Ot();tt(e).forEach((e=>{if("childList"===e.type&&e.addedNodes.length>0&&!pn(e.addedNodes[0])&&(Xe.searchPseudoElements&&r(e.target),t(e.target)),"attributes"===e.type&&e.target.parentNode&&Xe.searchPseudoElements&&r(e.target.parentNode),"attributes"===e.type&&pn(e.target)&&~Ve.indexOf(e.attributeName))if("class"===e.attributeName&&function(e){const t=e.getAttribute?e.getAttribute(ke):null,n=e.getAttribute?e.getAttribute(Ne):null;return t&&n}(e.target)){const{prefix:t,iconName:n}=Rt(nt(e.target));e.target.setAttribute(ke,t||o),n&&e.target.setAttribute(Ne,n)}else(a=e.target)&&a.classList&&a.classList.contains&&a.classList.contains(Xe.replacementClass)&&n(e.target);var a}))})),le&&xn.observe(o,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}function Mn(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{styleParser:!0};const{iconName:n,prefix:r,rest:o}=function(e){const t=e.getAttribute("data-prefix"),n=e.getAttribute("data-icon"),r=void 0!==e.innerText?e.innerText.trim():"";let o=Rt(nt(e));return o.prefix||(o.prefix=Ot()),t&&n&&(o.prefix=t,o.iconName=n),o.iconName&&o.prefix||(o.prefix&&r.length>0&&(o.iconName=(a=o.prefix,i=e.innerText,(Nt[a]||{})[i]||jt(o.prefix,Ct(e.innerText)))),!o.iconName&&Xe.autoFetchSvg&&e.firstChild&&e.firstChild.nodeType===Node.TEXT_NODE&&(o.iconName=e.firstChild.data)),o;var a,i}(e),a=function(e){const t=tt(e.attributes).reduce(((e,t)=>("class"!==e.name&&"style"!==e.name&&(e[t.name]=t.value),e)),{}),n=e.getAttribute("title"),r=e.getAttribute("data-fa-title-id");return Xe.autoA11y&&(n?t["aria-labelledby"]="".concat(Xe.replacementClass,"-title-").concat(r||et()):(t["aria-hidden"]="true",t.focusable="false")),t}(e),i=Gt("parseNodeAttributes",{},e);let s=t.styleParser?function(e){const t=e.getAttribute("style");let n=[];return t&&(n=t.split(";").reduce(((e,t)=>{const n=t.split(":"),r=n[0],o=n.slice(1);return r&&o.length>0&&(e[r]=o.join(":").trim()),e}),{})),n}(e):[];return{iconName:n,title:e.getAttribute("title"),titleId:e.getAttribute("data-fa-title-id"),prefix:r,transform:$e,mask:{iconName:null,prefix:null,rest:[]},maskId:null,symbol:!1,extra:{classes:o,styles:s,attributes:a},...i}}const{styles:kn}=dt;function Nn(e){const t="nest"===Xe.autoReplaceSvg?Mn(e,{styleParser:!1}):Mn(e);return~t.extra.classes.indexOf(Fe)?Ht("generateLayersText",e,t):Ht("generateSvgReplacementMutation",e,t)}let _n=new Set;function Sn(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(!le)return Promise.resolve();const n=ae.documentElement.classList,r=e=>n.add("".concat(_e,"-").concat(e)),o=e=>n.remove("".concat(_e,"-").concat(e)),a=Xe.autoFetchSvg?_n:Be.map((e=>"fa-".concat(e))).concat(Object.keys(kn));a.includes("fa")||a.push("fa");const i=[".".concat(Fe,":not([").concat(we,"])")].concat(a.map((e=>".".concat(e,":not([").concat(we,"])")))).join(", ");if(0===i.length)return Promise.resolve();let s=[];try{s=tt(e.querySelectorAll(i))}catch(e){}if(!(s.length>0))return Promise.resolve();r("pending"),o("complete");const l=un("onTree"),c=s.reduce(((e,t)=>{try{const n=Nn(t);n&&e.push(n)}catch(e){Le||"MissingIcon"===e.name&&console.error(e)}return e}),[]);return new Promise(((e,n)=>{Promise.all(c).then((n=>{Cn(n,(()=>{r("active"),r("complete"),o("pending"),"function"==typeof t&&t(),l(),e()}))})).catch((e=>{l(),n(e)}))}))}function Ln(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;Nn(e).then((e=>{e&&Cn([e],t)}))}Be.map((e=>{_n.add("fa-".concat(e))})),Object.keys(je[ue]).map(_n.add.bind(_n)),Object.keys(je[pe]).map(_n.add.bind(_n)),Object.keys(je[he]).map(_n.add.bind(_n)),_n=[..._n];const Bn=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{transform:n=$e,symbol:r=!1,mask:o=null,maskId:a=null,title:i=null,titleId:s=null,classes:l=[],attributes:c={},styles:u={}}=t;if(!e)return;const{prefix:d,iconName:p,icon:h}=e;return $t({type:"icon",...e},(()=>(Wt("beforeDOMElementCreation",{iconDefinition:e,params:t}),Xe.autoA11y&&(i?c["aria-labelledby"]="".concat(Xe.replacementClass,"-title-").concat(s||et()):(c["aria-hidden"]="true",c.focusable="false")),en({icons:{main:rn(h),mask:o?rn(o.icon):{found:!1,width:null,height:null,icon:{}}},prefix:d,iconName:p,transform:{...$e,...n},symbol:r,title:i,maskId:a,titleId:s,extra:{attributes:c,styles:u,classes:l}}))))};var Dn={mixout(){return{icon:(e=Bn,function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=(t||{}).icon?t:Qt(t||{});let{mask:o}=n;return o&&(o=(o||{}).icon?o:Qt(o||{})),e(r,{...n,mask:o})})};var e},hooks:()=>({mutationObserverCallbacks:e=>(e.treeCallback=Sn,e.nodeCallback=Ln,e)}),provides(e){e.i2svg=function(e){const{node:t=ae,callback:n=()=>{}}=e;return Sn(t,n)},e.generateSvgReplacementMutation=function(e,t){const{iconName:n,title:r,titleId:o,prefix:a,transform:i,symbol:s,mask:l,maskId:c,extra:u}=t;return new Promise(((t,d)=>{Promise.all([an(n,a),l.iconName?an(l.iconName,l.prefix):Promise.resolve({found:!1,width:512,height:512,icon:{}})]).then((l=>{let[d,p]=l;t([e,en({icons:{main:d,mask:p},prefix:a,iconName:n,transform:i,symbol:s,maskId:c,title:r,titleId:o,extra:u,watchable:!0})])})).catch(d)}))},e.generateAbstractIcon=function(e){let{children:t,attributes:n,main:r,transform:o,styles:a}=e;const i=ot(a);let s;return i.length>0&&(n.style=i),at(o)&&(s=Ht("generateAbstractTransformGrouping",{main:r,transform:o,containerWidth:r.width,iconWidth:r.width})),t.push(s||r.icon),{children:t,attributes:n}}}},In={mixout:()=>({layer(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{classes:n=[]}=t;return $t({type:"layer"},(()=>{Wt("beforeDOMElementCreation",{assembler:e,params:t});let r=[];return e((e=>{Array.isArray(e)?e.map((e=>{r=r.concat(e.abstract)})):r=r.concat(e.abstract)})),[{tag:"span",attributes:{class:["".concat(Xe.cssPrefix,"-layers"),...n].join(" ")},children:r}]}))}})},jn={mixout:()=>({counter(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{title:n=null,classes:r=[],attributes:o={},styles:a={}}=t;return $t({type:"counter",content:e},(()=>(Wt("beforeDOMElementCreation",{content:e,params:t}),function(e){const{content:t,title:n,extra:r}=e,o={...r.attributes,...n?{title:n}:{},class:r.classes.join(" ")},a=ot(r.styles);a.length>0&&(o.style=a);const i=[];return i.push({tag:"span",attributes:o,children:[t]}),n&&i.push({tag:"span",attributes:{class:"sr-only"},children:[n]}),i}({content:e.toString(),title:n,extra:{attributes:o,styles:a,classes:["".concat(Xe.cssPrefix,"-layers-counter"),...r]}}))))}})},En={mixout:()=>({text(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{transform:n=$e,title:r=null,classes:o=[],attributes:a={},styles:i={}}=t;return $t({type:"text",content:e},(()=>(Wt("beforeDOMElementCreation",{content:e,params:t}),tn({content:e,transform:{...$e,...n},title:r,extra:{attributes:a,styles:i,classes:["".concat(Xe.cssPrefix,"-layers-text"),...o]}}))))}}),provides(e){e.generateLayersText=function(e,t){const{title:n,transform:r,extra:o}=t;let a=null,i=null;if(ce){const t=parseInt(getComputedStyle(e).fontSize,10),n=e.getBoundingClientRect();a=n.width/t,i=n.height/t}return Xe.autoA11y&&!n&&(o.attributes["aria-hidden"]="true"),Promise.resolve([e,tn({content:e.innerHTML,width:a,height:i,transform:r,title:n,extra:o,watchable:!0})])}}};const Tn=new RegExp('"',"ug"),On=[1105920,1112319],Pn={FontAwesome:{normal:"fas",400:"fas"},"Font Awesome 6 Free":{900:"fas",400:"far"},"Font Awesome 6 Pro":{900:"fas",400:"far",normal:"far",300:"fal",100:"fat"},"Font Awesome 6 Brands":{400:"fab",normal:"fab"},"Font Awesome 6 Duotone":{900:"fad"},"Font Awesome 6 Sharp":{900:"fass",400:"fasr",normal:"fasr",300:"fasl",100:"fast"},"Font Awesome 6 Sharp Duotone":{900:"fasds"},"Font Awesome 5 Free":{900:"fas",400:"far"},"Font Awesome 5 Pro":{900:"fas",400:"far",normal:"far",300:"fal"},"Font Awesome 5 Brands":{400:"fab",normal:"fab"},"Font Awesome 5 Duotone":{900:"fad"},"Font Awesome Kit":{400:"fak",normal:"fak"},"Font Awesome Kit Duotone":{400:"fakd",normal:"fakd"}},zn=Object.keys(Pn).reduce(((e,t)=>(e[t.toLowerCase()]=Pn[t],e)),{}),Rn=Object.keys(zn).reduce(((e,t)=>{const n=zn[t];return e[t]=n[900]||[...Object.entries(n)][0][1],e}),{});function Un(e,t){const n="".concat("data-fa-pseudo-element-pending").concat(t.replace(":","-"));return new Promise(((r,o)=>{if(null!==e.getAttribute(n))return r();const a=tt(e.children).filter((e=>e.getAttribute(Me)===t))[0],i=oe.getComputedStyle(e,t),s=i.getPropertyValue("font-family"),l=s.match(Ye),c=i.getPropertyValue("font-weight"),u=i.getPropertyValue("content");if(a&&!l)return e.removeChild(a),r();if(l&&"none"!==u&&""!==u){const u=i.getPropertyValue("content");let d=function(e,t){const n=e.replace(/^['"]|['"]$/g,"").toLowerCase(),r=parseInt(t),o=isNaN(r)?"normal":r;return(zn[n]||{})[o]||Rn[n]}(s,c);const{value:p,isSecondary:h}=function(e){const t=e.replace(Tn,""),n=function(e){const t=e.length;let n,r=e.charCodeAt(0);return r>=55296&&r<=56319&&t>1&&(n=e.charCodeAt(1),n>=56320&&n<=57343)?1024*(r-55296)+n-56320+65536:r}(t),r=n>=On[0]&&n<=On[1],o=2===t.length&&t[0]===t[1];return{value:Ct(o?t[0]:t),isSecondary:r||o}}(u),A=l[0].startsWith("FontAwesome");let f=jt(d,p),g=f;if(A){const e=function(e){const t=St[e],n=jt("fas",e);return t||(n?{prefix:"fas",iconName:n}:null)||{prefix:null,iconName:null}}(p);e.iconName&&e.prefix&&(f=e.iconName,d=e.prefix)}if(!f||h||a&&a.getAttribute(ke)===d&&a.getAttribute(Ne)===g)r();else{e.setAttribute(n,g),a&&e.removeChild(a);const i={iconName:null,title:null,titleId:null,prefix:null,transform:$e,symbol:!1,mask:{iconName:null,prefix:null,rest:[]},maskId:null,extra:{classes:[],styles:{},attributes:{}}},{extra:s}=i;s.attributes[Me]=t,an(f,d).then((o=>{const a=en({...i,icons:{main:o,mask:{prefix:null,iconName:null,rest:[]}},prefix:d,iconName:g,extra:s,watchable:!0}),l=ae.createElementNS("http://www.w3.org/2000/svg","svg");"::before"===t?e.insertBefore(l,e.firstChild):e.appendChild(l),l.outerHTML=a.map((e=>ft(e))).join("\n"),e.removeAttribute(n),r()})).catch(o)}}else r()}))}function Fn(e){return Promise.all([Un(e,"::before"),Un(e,"::after")])}function Yn(e){return!(e.parentNode===document.head||~Se.indexOf(e.tagName.toUpperCase())||e.getAttribute(Me)||e.parentNode&&"svg"===e.parentNode.tagName)}function Vn(e){if(le)return new Promise(((t,n)=>{const r=tt(e.querySelectorAll("*")).filter(Yn).map(Fn),o=un("searchPseudoElements");vn(),Promise.all(r).then((()=>{o(),yn(),t()})).catch((()=>{o(),yn(),n()}))}))}var Gn={hooks:()=>({mutationObserverCallbacks:e=>(e.pseudoElementsCallback=Vn,e)}),provides(e){e.pseudoElements2svg=function(e){const{node:t=ae}=e;Xe.searchPseudoElements&&Vn(t)}}};let Wn=!1;var Hn={mixout:()=>({dom:{unwatch(){vn(),Wn=!0}}}),hooks:()=>({bootstrap(){wn(Gt("mutationObserverCallbacks",{}))},noAuto(){xn&&xn.disconnect()},watch(e){const{observeMutationsRoot:t}=e;Wn?yn():wn(Gt("mutationObserverCallbacks",{observeMutationsRoot:t}))}})};const Qn=e=>e.toLowerCase().split(" ").reduce(((e,t)=>{const n=t.toLowerCase().split("-"),r=n[0];let o=n.slice(1).join("-");if(r&&"h"===o)return e.flipX=!0,e;if(r&&"v"===o)return e.flipY=!0,e;if(o=parseFloat(o),isNaN(o))return e;switch(r){case"grow":e.size=e.size+o;break;case"shrink":e.size=e.size-o;break;case"left":e.x=e.x-o;break;case"right":e.x=e.x+o;break;case"up":e.y=e.y-o;break;case"down":e.y=e.y+o;break;case"rotate":e.rotate=e.rotate+o}return e}),{size:16,x:0,y:0,flipX:!1,flipY:!1,rotate:0});var Zn={mixout:()=>({parse:{transform:e=>Qn(e)}}),hooks:()=>({parseNodeAttributes(e,t){const n=t.getAttribute("data-fa-transform");return n&&(e.transform=Qn(n)),e}}),provides(e){e.generateAbstractTransformGrouping=function(e){let{main:t,transform:n,containerWidth:r,iconWidth:o}=e;const a={transform:"translate(".concat(r/2," 256)")},i="translate(".concat(32*n.x,", ").concat(32*n.y,") "),s="scale(".concat(n.size/16*(n.flipX?-1:1),", ").concat(n.size/16*(n.flipY?-1:1),") "),l="rotate(".concat(n.rotate," 0 0)"),c={transform:"".concat(i," ").concat(s," ").concat(l)},u={transform:"translate(".concat(o/2*-1," -256)")};return{tag:"g",attributes:{...a},children:[{tag:"g",attributes:{...c},children:[{tag:t.icon.tag,children:t.icon.children,attributes:{...t.icon.attributes,...u}}]}]}}}};const qn={x:0,y:0,width:"100%",height:"100%"};function Xn(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return e.attributes&&(e.attributes.fill||t)&&(e.attributes.fill="black"),e}var Jn={hooks:()=>({parseNodeAttributes(e,t){const n=t.getAttribute("data-fa-mask"),r=n?Rt(n.split(" ").map((e=>e.trim()))):{prefix:null,iconName:null,rest:[]};return r.prefix||(r.prefix=Ot()),e.mask=r,e.maskId=t.getAttribute("data-fa-mask-id"),e}}),provides(e){e.generateAbstractMask=function(e){let{children:t,attributes:n,main:r,mask:o,maskId:a,transform:i}=e;const{width:s,icon:l}=r,{width:c,icon:u}=o,d=function(e){let{transform:t,containerWidth:n,iconWidth:r}=e;const o={transform:"translate(".concat(n/2," 256)")},a="translate(".concat(32*t.x,", ").concat(32*t.y,") "),i="scale(".concat(t.size/16*(t.flipX?-1:1),", ").concat(t.size/16*(t.flipY?-1:1),") "),s="rotate(".concat(t.rotate," 0 0)");return{outer:o,inner:{transform:"".concat(a," ").concat(i," ").concat(s)},path:{transform:"translate(".concat(r/2*-1," -256)")}}}({transform:i,containerWidth:c,iconWidth:s}),p={tag:"rect",attributes:{...qn,fill:"white"}},h=l.children?{children:l.children.map(Xn)}:{},A={tag:"g",attributes:{...d.inner},children:[Xn({tag:l.tag,attributes:{...l.attributes,...d.path},...h})]},f={tag:"g",attributes:{...d.outer},children:[A]},g="mask-".concat(a||et()),m="clip-".concat(a||et()),C={tag:"mask",attributes:{...qn,id:g,maskUnits:"userSpaceOnUse",maskContentUnits:"userSpaceOnUse"},children:[p,f]},b={tag:"defs",children:[{tag:"clipPath",attributes:{id:m},children:(v=u,"g"===v.tag?v.children:[v])},C]};var v;return t.push(b,{tag:"rect",attributes:{fill:"currentColor","clip-path":"url(#".concat(m,")"),mask:"url(#".concat(g,")"),...qn}}),{children:t,attributes:n}}}},Kn={provides(e){let t=!1;oe.matchMedia&&(t=oe.matchMedia("(prefers-reduced-motion: reduce)").matches),e.missingIconAbstract=function(){const e=[],n={fill:"currentColor"},r={attributeType:"XML",repeatCount:"indefinite",dur:"2s"};e.push({tag:"path",attributes:{...n,d:"M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"}});const o={...r,attributeName:"opacity"},a={tag:"circle",attributes:{...n,cx:"256",cy:"364",r:"28"},children:[]};return t||a.children.push({tag:"animate",attributes:{...r,attributeName:"r",values:"28;14;28;28;14;28;"}},{tag:"animate",attributes:{...o,values:"1;0;1;1;0;1;"}}),e.push(a),e.push({tag:"path",attributes:{...n,opacity:"1",d:"M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"},children:t?[]:[{tag:"animate",attributes:{...o,values:"1;0;0;0;0;1;"}}]}),t||e.push({tag:"path",attributes:{...n,opacity:"0",d:"M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"},children:[{tag:"animate",attributes:{...o,values:"0;0;1;1;0;0;"}}]}),{tag:"g",attributes:{class:"missing"},children:e}}}};!function(e,t){let{mixoutsTo:n}=t;Ut=e,Ft={},Object.keys(Yt).forEach((e=>{-1===Vt.indexOf(e)&&delete Yt[e]})),Ut.forEach((e=>{const t=e.mixout?e.mixout():{};if(Object.keys(t).forEach((e=>{"function"==typeof t[e]&&(n[e]=t[e]),"object"==typeof t[e]&&Object.keys(t[e]).forEach((r=>{n[e]||(n[e]={}),n[e][r]=t[e][r]}))})),e.hooks){const t=e.hooks();Object.keys(t).forEach((e=>{Ft[e]||(Ft[e]=[]),Ft[e].push(t[e])}))}e.provides&&e.provides(Yt)}))}([ct,Dn,In,jn,En,Gn,Hn,Zn,Jn,Kn,{hooks:()=>({parseNodeAttributes(e,t){const n=t.getAttribute("data-fa-symbol"),r=null!==n&&(""===n||n);return e.symbol=r,e}})}],{mixoutsTo:Jt});const $n=Jt.parse,er=Jt.icon;var tr=r(764),nr=r.n(tr);function rr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function or(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?rr(Object(n),!0).forEach((function(t){ir(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):rr(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ar(e){return ar="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ar(e)}function ir(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function sr(e){return function(e){if(Array.isArray(e))return lr(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return lr(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?lr(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function lr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function cr(e){return t=e,(t-=0)==t?e:(e=e.replace(/[\-_\s]+(.)?/g,(function(e,t){return t?t.toUpperCase():""}))).substr(0,1).toLowerCase()+e.substr(1);var t}var ur=["style"],dr=!1;try{dr=!0}catch(e){}function pr(e){return e&&"object"===ar(e)&&e.prefix&&e.iconName&&e.icon?e:$n.icon?$n.icon(e):null===e?null:e&&"object"===ar(e)&&e.prefix&&e.iconName?e:Array.isArray(e)&&2===e.length?{prefix:e[0],iconName:e[1]}:"string"==typeof e?{prefix:"fas",iconName:e}:void 0}function hr(e,t){return Array.isArray(t)&&t.length>0||!Array.isArray(t)&&t?ir({},e,t):{}}var Ar={border:!1,className:"",mask:null,maskId:null,fixedWidth:!1,inverse:!1,flip:!1,icon:null,listItem:!1,pull:null,pulse:!1,rotation:null,size:null,spin:!1,spinPulse:!1,spinReverse:!1,beat:!1,fade:!1,beatFade:!1,bounce:!1,shake:!1,symbol:!1,title:"",titleId:null,transform:null,swapOpacity:!1},fr=a.forwardRef((function(e,t){var n=or(or({},Ar),e),r=n.icon,o=n.mask,a=n.symbol,i=n.className,s=n.title,l=n.titleId,c=n.maskId,u=pr(r),d=hr("classes",[].concat(sr(function(e){var t,n=e.beat,r=e.fade,o=e.beatFade,a=e.bounce,i=e.shake,s=e.flash,l=e.spin,c=e.spinPulse,u=e.spinReverse,d=e.pulse,p=e.fixedWidth,h=e.inverse,A=e.border,f=e.listItem,g=e.flip,m=e.size,C=e.rotation,b=e.pull,v=(ir(t={"fa-beat":n,"fa-fade":r,"fa-beat-fade":o,"fa-bounce":a,"fa-shake":i,"fa-flash":s,"fa-spin":l,"fa-spin-reverse":u,"fa-spin-pulse":c,"fa-pulse":d,"fa-fw":p,"fa-inverse":h,"fa-border":A,"fa-li":f,"fa-flip":!0===g,"fa-flip-horizontal":"horizontal"===g||"both"===g,"fa-flip-vertical":"vertical"===g||"both"===g},"fa-".concat(m),null!=m),ir(t,"fa-rotate-".concat(C),null!=C&&0!==C),ir(t,"fa-pull-".concat(b),null!=b),ir(t,"fa-swap-opacity",e.swapOpacity),t);return Object.keys(v).map((function(e){return v[e]?e:null})).filter((function(e){return e}))}(n)),sr((i||"").split(" ")))),p=hr("transform","string"==typeof n.transform?$n.transform(n.transform):n.transform),h=hr("mask",pr(o)),A=er(u,or(or(or(or({},d),p),h),{},{symbol:a,title:s,titleId:l,maskId:c}));if(!A)return function(){var e;!dr&&console&&"function"==typeof console.error&&(e=console).error.apply(e,arguments)}("Could not find icon",u),null;var f=A.abstract,g={ref:t};return Object.keys(n).forEach((function(e){Ar.hasOwnProperty(e)||(g[e]=n[e])})),gr(f[0],g)}));fr.displayName="FontAwesomeIcon",fr.propTypes={beat:nr().bool,border:nr().bool,beatFade:nr().bool,bounce:nr().bool,className:nr().string,fade:nr().bool,flash:nr().bool,mask:nr().oneOfType([nr().object,nr().array,nr().string]),maskId:nr().string,fixedWidth:nr().bool,inverse:nr().bool,flip:nr().oneOf([!0,!1,"horizontal","vertical","both"]),icon:nr().oneOfType([nr().object,nr().array,nr().string]),listItem:nr().bool,pull:nr().oneOf(["right","left"]),pulse:nr().bool,rotation:nr().oneOf([0,90,180,270]),shake:nr().bool,size:nr().oneOf(["2xs","xs","sm","lg","xl","2xl","1x","2x","3x","4x","5x","6x","7x","8x","9x","10x"]),spin:nr().bool,spinPulse:nr().bool,spinReverse:nr().bool,symbol:nr().oneOfType([nr().bool,nr().string]),title:nr().string,titleId:nr().string,transform:nr().oneOfType([nr().string,nr().object]),swapOpacity:nr().bool};var gr=function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if("string"==typeof n)return n;var o=(n.children||[]).map((function(n){return e(t,n)})),a=Object.keys(n.attributes||{}).reduce((function(e,t){var r=n.attributes[t];switch(t){case"class":e.attrs.className=r,delete n.attributes.class;break;case"style":e.attrs.style=r.split(";").map((function(e){return e.trim()})).filter((function(e){return e})).reduce((function(e,t){var n,r=t.indexOf(":"),o=cr(t.slice(0,r)),a=t.slice(r+1).trim();return o.startsWith("webkit")?e[(n=o,n.charAt(0).toUpperCase()+n.slice(1))]=a:e[o]=a,e}),{});break;default:0===t.indexOf("aria-")||0===t.indexOf("data-")?e.attrs[t.toLowerCase()]=r:e.attrs[cr(t)]=r}return e}),{attrs:{}}),i=r.style,s=void 0===i?{}:i,l=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(r,ur);return a.attrs.style=or(or({},a.attrs.style),s),t.apply(void 0,[n.tag,or(or({},a.attrs),l)].concat(sr(o)))}.bind(null,a.createElement);const mr={prefix:"fas",iconName:"minus",icon:[448,512,[8211,8722,10134,"subtract"],"f068","M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z"]},Cr={prefix:"fas",iconName:"plus",icon:[448,512,[10133,61543,"add"],"2b","M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 144L48 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l144 0 0 144c0 17.7 14.3 32 32 32s32-14.3 32-32l0-144 144 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-144 0 0-144z"]};class br extends a.Component{constructor(e){super(e),this._localChange=!1;const t=this.props.target[this.props.propertyName];this.state={isExpanded:!1,value:t&&t.clone?t.clone():s.Vector2.Zero()}}shouldComponentUpdate(e,t){const n=e.target[e.propertyName];return!(n.equals(t.value)&&!this._localChange||(t.value=n.clone(),this._localChange=!1,0))}switchExpandState(){this._localChange=!0,this.setState({isExpanded:!this.state.isExpanded})}raiseOnPropertyChanged(e){this.props.onChange&&this.props.onChange(this.state.value),this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:this.state.value,initialValue:e})}updateStateX(e){this._localChange=!0;const t=this.state.value.clone();this.props.target[this.props.propertyName].x=e,this.state.value.x=e,this.setState({value:this.state.value}),this.raiseOnPropertyChanged(t)}updateStateY(e){this._localChange=!0;const t=this.state.value.clone();this.props.target[this.props.propertyName].y=e,this.state.value.y=e,this.setState({value:this.state.value}),this.raiseOnPropertyChanged(t)}render(){const e=this.state.isExpanded?(0,l.jsx)(fr,{icon:mr}):(0,l.jsx)(fr,{icon:Cr});return(0,l.jsxs)("div",{className:"vector3Line",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsxs)("div",{className:"firstLine",title:this.props.label,children:[(0,l.jsx)("div",{className:"label",children:this.props.label}),(0,l.jsx)("div",{className:"vector",children:`X: ${this.state.value.x.toFixed(2)}, Y: ${this.state.value.y.toFixed(2)}`}),(0,l.jsx)("div",{className:"expand hoverIcon",onClick:()=>this.switchExpandState(),title:"Expand",children:e})]}),this.state.isExpanded&&(0,l.jsxs)("div",{className:"secondLine",children:[(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"x",step:this.props.step,value:this.state.value.x,onChange:e=>this.updateStateX(e)}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"y",step:this.props.step,value:this.state.value.y,onChange:e=>this.updateStateY(e)})]})]})}}br.defaultProps={step:.001};let vr="";const yr=void 0!==r.g?r.g:"undefined"!=typeof window?window:void 0;function xr(e){const t=document.createElement("div");if(t.textContent=e,document.body.appendChild(t),window.getSelection){const e=document.createRange();e.selectNode(t),window.getSelection().removeAllRanges(),window.getSelection().addRange(e)}document.execCommand("copy"),t.remove()}function wr(e){let t=(0,s.GetClassName)(e);return t.includes("BABYLON.")&&(t=t.split("BABYLON.")[1]),{className:t,babylonNamespace:vr}}void 0!==yr&&void 0!==yr.BABYLON&&(vr="BABYLON.");const Mr="—";class kr extends a.Component{constructor(){super(...arguments),this._arrowsRef=a.createRef(),this._drag=e=>{this.props.incrementValue(-e.movementY)},this._releaseListener=()=>{this.props.setDragging(!1),this._arrowsRef.current?.ownerDocument.exitPointerLock(),this._arrowsRef.current?.ownerDocument.defaultView.removeEventListener("pointerup",this._releaseListener),this._arrowsRef.current?.ownerDocument.removeEventListener("pointerlockchange",this._lockChangeListener),this._arrowsRef.current?.ownerDocument.defaultView.removeEventListener("mousemove",this._drag)},this._lockChangeListener=()=>{this._arrowsRef.current?.ownerDocument.pointerLockElement!==this._arrowsRef.current&&this._releaseListener()}}render(){return(0,l.jsxs)("div",{className:"arrows",ref:this._arrowsRef,onPointerDown:()=>{this._arrowsRef.current?.ownerDocument.addEventListener("pointerlockchange",this._lockChangeListener),this._arrowsRef.current?.ownerDocument.defaultView.addEventListener("pointerup",this._releaseListener),this._arrowsRef.current?.ownerDocument.defaultView.addEventListener("mousemove",this._drag),this.props.setDragging(!0),this._arrowsRef.current?.requestPointerLock()},onDragStart:e=>e.preventDefault(),children:[(0,l.jsx)("img",{className:"upArrowIcon",src:"data:image/svg+xml;base64,PHN2ZyBpZD0iaWNvbnMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE1IDE1Ij48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6IzMzMzt9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNNC4wOSw5LjQ1YS42LjYsMCwwLDEsMC0uODRsMy0zYS42LjYsMCwwLDEsLjg0LDBsMywzYS42LjYsMCwwLDEsMCwuODQuNjEuNjEsMCwwLDEtLjg1LDBsLTItMnY1LjczYS42LjYsMCwwLDEtMS4yLDBWNy40OGwtMiwyQS42MS42MSwwLDAsMSw0LjA5LDkuNDVaIi8+PC9zdmc+",alt:"Increase Value"}),(0,l.jsx)("img",{className:"downArrowIcon",src:"data:image/svg+xml;base64,PHN2ZyBpZD0iaWNvbnMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE1IDE1Ij48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6IzMzMzt9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNNC4wOSw1LjU1YS42MS42MSwwLDAsMSwuODUsMGwyLDJWMS43OWEuNi42LDAsMSwxLDEuMiwwVjcuNTJsMi0yYS42MS42MSwwLDAsMSwuODUsMCwuNi42LDAsMCwxLDAsLjg0bC0zLDNhLjYuNiwwLDAsMS0uODQsMGwtMy0zQS42LjYsMCwwLDEsNC4wOSw1LjU1WiIvPjwvc3ZnPg==",alt:"Increase Value"})]})}}const Nr="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0MCA0MCI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5jb3B5PC90aXRsZT48ZyBpZD0iVUlfRWxlbWVudHMiIGRhdGEtbmFtZT0iVUkgRWxlbWVudHMiPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTI0LDE0Ljg5SDIyLjc2bC0zLTNIMTIuNDNWMjYuNTloNC4yNnYzaDExLjVWMTlabS4zLDEuNzEsMi4xNCwyLjEzSDI0LjM0Wm0tMTAuOTEsOVYxMi45M2g1LjkzbDIsMkgxNi42OXYxMC43Wm00LjI2LDNWMTUuODloNS42NXYzLjg0aDMuODV2OC44M1oiLz48L2c+PC9zdmc+";class _r extends a.Component{constructor(e){super(e),this._localChange=!1;const t=this.props.target[this.props.propertyName];this.state={value:this.getValueString(t,this.props),dragging:!1},this._store=t}componentWillUnmount(){this.unlock()}getValueString(e,t){return e?e===Mr?Mr:t.isInteger?e.toFixed(0):e.toFixed(t.digits||4):"0"}shouldComponentUpdate(e,t){if(this._localChange)return this._localChange=!1,!0;const n=e.target[e.propertyName],r=this.getValueString(n,e);return r!==t.value?(t.value=r,!0):t.dragging!=this.state.dragging||e.unit!==this.props.unit||e.isInteger!==this.props.isInteger}raiseOnPropertyChanged(e,t){this.props.onChange&&this.props.onChange(e),this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:e,initialValue:t})}updateValue(e){if(/[^0-9.-]/g.test(e))return;let t;t=this.props.isInteger?parseInt(e):parseFloat(e),isNaN(t)?null!=this.props.defaultValue&&(t=this.props.defaultValue):(void 0!==this.props.min&&t<this.props.min&&(t=this.props.min,e=t.toString()),void 0!==this.props.max&&t>this.props.max&&(t=this.props.max,e=t.toString())),this._localChange=!0,this.setState({value:e}),isNaN(t)||(this.props.target[this.props.propertyName]=t,this.raiseOnPropertyChanged(t,this._store),this._store=t)}lock(){this.props.lockObject&&(this.props.lockObject.lock=!0)}unlock(){this.props.lockObject&&(this.props.lockObject.lock=!1)}incrementValue(e,t=!0){t&&this.props.step&&(e*=parseFloat(this.props.step));let n=parseFloat(this.state.value);isNaN(n)&&(n=0),this.updateValue((n+e).toFixed(2))}onKeyDown(e){const t=parseFloat(this.props.step||this.props.isInteger?"1":"0.01"),n=n=>{e.shiftKey&&(n*=10,(e.ctrlKey||e.metaKey)&&(n*=10)),this.incrementValue(n*t,!1),e.preventDefault()};"ArrowUp"===e.key?n(1):"ArrowDown"===e.key&&n(-1),"Enter"===e.key&&this.props.onEnter&&this.props.onEnter(this._store)}onCopyClick(){if(this.props&&this.props.target){const{className:e,babylonNamespace:t}=wr(this.props.target);xr("globalThis.debugNode."+this.props.propertyName+" = "+this.props.target[this.props.propertyName]+";// (debugNode as "+t+e+")")}else xr("undefined")}render(){let e;e=this.props.isInteger?parseInt(this.state.value):parseFloat(this.state.value);let t=this.props.smallUI?"short":"value";this.state.dragging&&(t+=" dragging"),this.props.arrows&&(t+=" hasArrows");const n=this.state.value===Mr?"":this.state.value,r=this.state.value===Mr?Mr:"";return(0,l.jsxs)(l.Fragment,{children:[!this.props.useEuler&&(0,l.jsxs)("div",{className:this.props.additionalClass?this.props.additionalClass+" floatLine":"floatLine",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(!this.props.icon||""!=this.props.label)&&(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label}),(0,l.jsxs)("div",{className:t,children:[(0,l.jsx)("input",{type:"number",step:this.props.step||this.props.isInteger?"1":"0.01",className:"numeric-input",onKeyDown:e=>this.onKeyDown(e),value:n,onBlur:()=>{this.unlock(),this.props.onEnter&&this.props.onEnter(this._store)},placeholder:r,onFocus:()=>this.lock(),onChange:e=>this.updateValue(e.target.value),disabled:this.props.disabled}),this.props.arrows&&(0,l.jsx)(kr,{incrementValue:e=>this.incrementValue(e),setDragging:t=>{const n=this.state.dragging;!n&&t&&this.props.onDragStart?this.props.onDragStart(e):n&&!t&&this.props.onDragStop&&this.props.onDragStop(e),this.setState({dragging:t})}})]}),this.props.unit,(0,l.jsx)("div",{className:"copy hoverIcon",onClick:()=>this.onCopyClick(),title:"Copy to clipboard",children:(0,l.jsx)("img",{src:Nr,alt:"Copy"})})]}),this.props.useEuler&&(0,l.jsx)(Sr,{lockObject:this.props.lockObject,label:this.props.label,minimum:0,maximum:360,step:.1,directValue:s.Tools.ToDegrees(e),onChange:e=>this.updateValue(s.Tools.ToRadians(e).toString())})]})}}class Sr extends a.Component{constructor(e){if(super(e),this._localChange=!1,void 0!==this.props.directValue)this.state={value:this.props.directValue};else{let e=this.props.target[this.props.propertyName];void 0===e&&(e=this.props.maximum),this.state={value:e}}}shouldComponentUpdate(e,t){if(void 0!==e.directValue)return t.value=e.directValue,!0;if(e.label!==this.props.label)return!0;let n=e.target[e.propertyName];return void 0===n&&(n=e.maximum),n!==t.value||this._localChange||e.maximum!==this.props.maximum||e.minimum!==this.props.minimum?(t.value=n,this._localChange=!1,!0):e.unit!==this.props.unit}onChange(e){if("—"===e)return;this._localChange=!0;let t=parseFloat(e);this.props.useEuler&&(t=s.Tools.ToRadians(t)),this.props.target&&(this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:t,initialValue:this.state.value}),this.props.target[this.props.propertyName]=t),this.props.onChange&&this.props.onChange(t),this.setState({value:t})}onInput(e){const t=parseFloat(e);this.props.onInput&&this.props.onInput(t)}prepareDataToRead(e){return null===e&&(e=0),this.props.useEuler?s.Tools.ToDegrees(e):e}onCopyClick(){if(this.props&&this.props.target){const{className:e,babylonNamespace:t}=wr(this.props.target);xr("globalThis.debugNode."+this.props.propertyName+" = "+this.props.target[this.props.propertyName]+";// (debugNode as "+t+e+")")}else xr("undefined")}render(){return(0,l.jsxs)("div",{className:"sliderLine",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(!this.props.icon||""!=this.props.label)&&(0,l.jsx)("div",{className:this.props.margin?"label withMargins":"label",title:this.props.label,children:this.props.label}),(0,l.jsx)(_r,{lockObject:this.props.lockObject,isInteger:0===this.props.decimalCount,smallUI:!0,label:"",target:this.state,digits:void 0===this.props.decimalCount?4:this.props.decimalCount,propertyName:"value",min:this.props.allowOverflow?void 0:this.props.minimum,max:this.props.allowOverflow?void 0:this.props.maximum,onEnter:()=>{const e=this.prepareDataToRead(this.state.value);this.onChange(e)},onChange:()=>{const e=this.prepareDataToRead(this.state.value);this.onChange(e)},onPropertyChangedObservable:this.props.onPropertyChangedObservable,unit:this.props.unit}),(0,l.jsx)("div",{className:"slider",children:(0,l.jsx)("input",{className:"range"+(this.props.allowOverflow&&(this.state.value>this.props.maximum||this.state.value<this.props.minimum)?" overflow":""),type:"range",step:this.props.step,min:this.prepareDataToRead(this.props.minimum),max:this.prepareDataToRead(this.props.maximum),value:this.prepareDataToRead(this.state.value),onInput:e=>this.onInput(e.target.value),onChange:e=>this.onChange(e.target.value)})}),(0,l.jsx)("div",{className:"copy hoverIcon",onClick:()=>this.onCopyClick(),title:"Copy to clipboard",children:(0,l.jsx)("img",{src:Nr,alt:"Copy"})})]})}}class Lr extends a.Component{constructor(e){super(e),this._localChange=!1;const t=this.getCurrentValue();this.state={isExpanded:!1,value:t&&t.clone?t.clone():s.Vector3.Zero()}}getCurrentValue(){return this.props.target[this.props.propertyName]}shouldComponentUpdate(e,t){const n=e.target[e.propertyName];return!(n.equals(t.value)&&!this._localChange||(t.value=n.clone(),this._localChange=!1,0))}switchExpandState(){this._localChange=!0,this.setState({isExpanded:!this.state.isExpanded})}raiseOnPropertyChanged(e){this.props.onChange&&this.props.onChange(this.state.value),this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:this.state.value,initialValue:e})}updateVector3(){const e=this.props.target[this.props.propertyName].clone();this.props.target[this.props.propertyName]=this.state.value,this.setState({value:e}),this.raiseOnPropertyChanged(e)}updateStateX(e){this._localChange=!0,this.state.value.x=e,this.updateVector3()}updateStateY(e){this._localChange=!0,this.state.value.y=e,this.updateVector3()}updateStateZ(e){this._localChange=!0,this.state.value.z=e,this.updateVector3()}onCopyClick(){if(this.props&&this.props.target){const{className:e,babylonNamespace:t}=wr(this.props.target),n="globalThis.debugNode",r=this.props.propertyName,o=this.props.target[this.props.propertyName];xr(n+"."+r+" = new "+t+"Vector3("+o.x+", "+o.y+", "+o.z+");// (debugNode as "+t+e+")")}else xr("undefined")}render(){const e=this.state.isExpanded?(0,l.jsx)(fr,{icon:mr}):(0,l.jsx)(fr,{icon:Cr});return(0,l.jsxs)("div",{className:"vector3Line",children:[(0,l.jsxs)("div",{className:"firstLine",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label}),(0,l.jsxs)("div",{className:"vector",children:[!this.props.useEuler&&`X: ${this.state.value.x.toFixed(2)}, Y: ${this.state.value.y.toFixed(2)}, Z: ${this.state.value.z.toFixed(2)}`,this.props.useEuler&&`X: ${s.Tools.ToDegrees(this.state.value.x).toFixed(2)}, Y: ${s.Tools.ToDegrees(this.state.value.y).toFixed(2)}, Z: ${s.Tools.ToDegrees(this.state.value.z).toFixed(2)}`]}),(0,l.jsx)("div",{className:"expand hoverIcon",onClick:()=>this.switchExpandState(),title:"Expand",children:e}),(0,l.jsx)("div",{className:"copy hoverIcon",onClick:()=>this.onCopyClick(),title:"Copy to clipboard",children:(0,l.jsx)("img",{src:Nr,alt:"Copy"})})]}),this.state.isExpanded&&!this.props.useEuler&&(0,l.jsxs)("div",{className:"secondLine",children:[(0,l.jsx)(J,{label:"x",lockObject:this.props.lockObject,step:this.props.step,value:this.state.value.x,onChange:e=>this.updateStateX(e)}),(0,l.jsx)(J,{label:"y",lockObject:this.props.lockObject,step:this.props.step,value:this.state.value.y,onChange:e=>this.updateStateY(e)}),(0,l.jsx)(J,{label:"z",lockObject:this.props.lockObject,step:this.props.step,value:this.state.value.z,onChange:e=>this.updateStateZ(e)})]}),this.state.isExpanded&&this.props.useEuler&&!this.props.noSlider&&(0,l.jsxs)("div",{className:"secondLine",children:[(0,l.jsx)(Sr,{lockObject:this.props.lockObject,margin:!0,label:"x",minimum:0,maximum:360,step:.1,directValue:s.Tools.ToDegrees(this.state.value.x),onChange:e=>this.updateStateX(s.Tools.ToRadians(e))}),(0,l.jsx)(Sr,{lockObject:this.props.lockObject,margin:!0,label:"y",minimum:0,maximum:360,step:.1,directValue:s.Tools.ToDegrees(this.state.value.y),onChange:e=>this.updateStateY(s.Tools.ToRadians(e))}),(0,l.jsx)(Sr,{lockObject:this.props.lockObject,margin:!0,label:"z",minimum:0,maximum:360,step:.1,directValue:s.Tools.ToDegrees(this.state.value.z),onChange:e=>this.updateStateZ(s.Tools.ToRadians(e))})]}),this.state.isExpanded&&this.props.useEuler&&this.props.noSlider&&(0,l.jsxs)("div",{className:"secondLine",children:[(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"x",step:this.props.step,value:s.Tools.ToDegrees(this.state.value.x),onChange:e=>this.updateStateX(s.Tools.ToRadians(e))}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"y",step:this.props.step,value:s.Tools.ToDegrees(this.state.value.y),onChange:e=>this.updateStateY(s.Tools.ToRadians(e))}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"z",step:this.props.step,value:s.Tools.ToDegrees(this.state.value.z),onChange:e=>this.updateStateZ(s.Tools.ToRadians(e))})]})]})}}Lr.defaultProps={step:.001};class Br extends a.Component{constructor(e){super(e),this._localChange=!1;const t=this.getCurrentValue();this.state={isExpanded:!1,value:t&&t.clone?t.clone():s.Vector4.Zero()}}getCurrentValue(){return this.props.value||this.props.target[this.props.propertyName]}shouldComponentUpdate(e,t){const n=e.value||e.target[e.propertyName];return!(n.equals(t.value)&&!this._localChange||(t.value=n.clone(),this._localChange=!1,0))}switchExpandState(){this._localChange=!0,this.setState({isExpanded:!this.state.isExpanded})}raiseOnPropertyChanged(e){this.props.onChange&&this.props.onChange(this.state.value),this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName||"",value:this.state.value,initialValue:e})}updateVector4(){const e=this.getCurrentValue().clone();this.props.value?this.props.value.copyFrom(this.state.value):this.props.target[this.props.propertyName]=this.state.value,this.setState({value:e}),this.raiseOnPropertyChanged(e)}updateStateX(e){this._localChange=!0,this.state.value.x=e,this.updateVector4()}updateStateY(e){this._localChange=!0,this.state.value.y=e,this.updateVector4()}updateStateZ(e){this._localChange=!0,this.state.value.z=e,this.updateVector4()}updateStateW(e){this._localChange=!0,this.state.value.w=e,this.updateVector4()}render(){const e=this.state.isExpanded?(0,l.jsx)(fr,{icon:mr}):(0,l.jsx)(fr,{icon:Cr});return(0,l.jsxs)("div",{className:"vector3Line",children:[(0,l.jsxs)("div",{className:"firstLine",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label}),(0,l.jsx)("div",{className:"vector",children:`X: ${this.state.value.x.toFixed(2)}, Y: ${this.state.value.y.toFixed(2)}, Z: ${this.state.value.z.toFixed(2)}, W: ${this.state.value.w.toFixed(2)}`}),(0,l.jsx)("div",{className:"expand hoverIcon",onClick:()=>this.switchExpandState(),title:"Expand",children:e})]}),(0,l.jsxs)("div",{className:"secondLine",children:[(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"x",step:this.props.step,value:this.state.value.x,onChange:e=>this.updateStateX(e)}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"y",step:this.props.step,value:this.state.value.y,onChange:e=>this.updateStateY(e)}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"z",step:this.props.step,value:this.state.value.z,onChange:e=>this.updateStateZ(e)}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"w",step:this.props.step,value:this.state.value.w,onChange:e=>this.updateStateW(e)})]})]})}}Br.defaultProps={step:.001};class Dr extends a.Component{constructor(e){super(e)}updateValue(e){if(/[^0-9.-]/g.test(e))return;let t=parseInt(e);isNaN(t)||(null!=this.props.max&&t>this.props.max&&(t=this.props.max),null!=this.props.min&&t<this.props.min&&(t=this.props.min),this.props.onChange(t))}lock(){this.props.lockObject&&(this.props.lockObject.lock=!0)}unlock(){this.props.lockObject&&(this.props.lockObject.lock=!1)}render(){return(0,l.jsxs)("div",{className:"color-picker-component",children:[(0,l.jsx)("div",{className:"color-picker-component-value",children:(0,l.jsx)("input",{type:"number",step:1,className:"numeric-input",value:this.props.value,onBlur:()=>this.unlock(),onFocus:()=>this.lock(),onChange:e=>this.updateValue(e.target.value),disabled:this.props.disabled})}),(0,l.jsx)("div",{className:"color-picker-component-label",children:this.props.label})]})}}class Ir extends a.Component{constructor(e){super(e),this.state={hex:this.props.value.replace("#","")}}shouldComponentUpdate(e,t){return e.value!==this.props.value&&(t.hex=e.value.replace("#","")),!0}lock(){this.props.lockObject&&(this.props.lockObject.lock=!0)}unlock(){this.props.lockObject&&(this.props.lockObject.lock=!1)}updateHexValue(e){if(""==e||0!=/^[0-9A-Fa-f]+$/g.test(e)){if(this.setState({hex:e}),e.length!==this.props.expectedLength)if(8===this.props.expectedLength&&6===e.length)e+="FF";else{if(6!==this.props.expectedLength||8!==e.length)return;e=e.substring(0,6)}this.props.onChange("#"+e)}}render(){return(0,l.jsx)("input",{type:"string",className:"hex-input",value:this.state.hex,onBlur:()=>this.unlock(),onFocus:()=>this.lock(),onChange:e=>this.updateHexValue(e.target.value)})}}var jr=r(5228),Er={};Er.styleTagTransform=v(),Er.setAttributes=g(),Er.insert=A().bind(null,"head"),Er.domAPI=p(),Er.insertStyleElement=C(),u()(jr.A,Er),jr.A&&jr.A.locals&&jr.A.locals;class Tr extends a.Component{constructor(e){super(e),this.props.color instanceof s.Color4?this.state={color:new s.Color3(this.props.color.r,this.props.color.g,this.props.color.b),alpha:this.props.color.a}:this.state={color:this.props.color.clone(),alpha:1},this._saturationRef=a.createRef(),this._hueRef=a.createRef()}shouldComponentUpdate(e,t){return e.color.toHexString()!==this.props.color.toHexString()||t.color.toHexString()!==this.props.color.toHexString()}onSaturationPointerDown(e){this._evaluateSaturation(e),this._isSaturationPointerDown=!0,e.currentTarget.setPointerCapture(e.pointerId)}onSaturationPointerUp(e){this._isSaturationPointerDown=!1,e.currentTarget.releasePointerCapture(e.pointerId)}onSaturationPointerMove(e){this._isSaturationPointerDown&&this._evaluateSaturation(e)}onHuePointerDown(e){this._evaluateHue(e),this._isHuePointerDown=!0,e.currentTarget.setPointerCapture(e.pointerId)}onHuePointerUp(e){this._isHuePointerDown=!1,e.currentTarget.releasePointerCapture(e.pointerId)}onHuePointerMove(e){this._isHuePointerDown&&this._evaluateHue(e)}_evaluateSaturation(e){const t=e.nativeEvent.offsetX,n=e.nativeEvent.offsetY,r=Math.min(1,Math.max(1e-4,t/this._saturationRef.current.clientWidth)),o=Math.min(1,Math.max(1e-4,1-n/this._saturationRef.current.clientHeight));this.props.debugMode&&(s.Logger.Log("Saturation: "+r),s.Logger.Log("Value: "+o));const a=this.state.color.toHSV();s.Color3.HSVtoRGBToRef(a.r,r,o,this.state.color),0===this.state.alpha&&this.setState({alpha:1}),this.setState({color:this.state.color})}_evaluateHue(e){const t=e.nativeEvent.offsetX,n=360*Math.min(.9999,Math.max(1e-4,t/this._hueRef.current.clientWidth));this.props.debugMode&&s.Logger.Log("Hue: "+n);const r=this.state.color.toHSV();s.Color3.HSVtoRGBToRef(n,Math.max(r.g,.01),Math.max(r.b,.01),this.state.color),this.setState({color:this.state.color})}componentDidUpdate(){this.raiseOnColorChanged()}raiseOnColorChanged(){if(this.props.onColorChanged)if(this.props.color instanceof s.Color4){const e=s.Color4.FromColor3(this.state.color,this.state.alpha);this.props.onColorChanged(e)}else this.props.onColorChanged(this.state.color.clone())}render(){const e=s.Color4.FromColor3(this.state.color);e.a=this.state.alpha;const t=e.toHexString(),n=this.state.color.toHSV(),r=new s.Color3;s.Color3.HSVtoRGBToRef(n.r,1,1,r);const o=r.toHexString(),a=this.props.color instanceof s.Color4;return(0,l.jsxs)("div",{className:"color-picker-container"+(this.props.linearhint?" with-hints":""),children:[(0,l.jsxs)("div",{className:"color-picker-saturation",onPointerMove:e=>this.onSaturationPointerMove(e),onPointerDown:e=>this.onSaturationPointerDown(e),onPointerUp:e=>this.onSaturationPointerUp(e),ref:this._saturationRef,style:{background:o},children:[(0,l.jsx)("div",{className:"color-picker-saturation-white"}),(0,l.jsx)("div",{className:"color-picker-saturation-black"}),(0,l.jsx)("div",{className:"color-picker-saturation-cursor",style:{top:-100*n.b+100+"%",left:100*n.g+"%"}})]}),(0,l.jsxs)("div",{className:"color-picker-hue",children:[(0,l.jsx)("div",{className:"color-picker-hue-color",style:{background:t}}),(0,l.jsx)("div",{className:"color-picker-hue-slider",ref:this._hueRef,onPointerMove:e=>this.onHuePointerMove(e),onPointerDown:e=>this.onHuePointerDown(e),onPointerUp:e=>this.onHuePointerUp(e),children:(0,l.jsx)("div",{className:"color-picker-hue-cursor",style:{left:n.r/360*100+"%",border:"1px solid "+o}})})]}),(0,l.jsx)("div",{className:"color-picker-alpha"}),(0,l.jsxs)("div",{className:"color-picker-rgb",children:[(0,l.jsx)("div",{className:"red",children:(0,l.jsx)(Dr,{lockObject:this.props.lockObject,label:"R",min:0,max:255,value:Math.round(255*this.state.color.r),onChange:e=>{this.state.color.r=e/255,this.forceUpdate()}})}),(0,l.jsx)("div",{className:"green",children:(0,l.jsx)(Dr,{lockObject:this.props.lockObject,label:"G",min:0,max:255,value:Math.round(255*this.state.color.g),onChange:e=>{this.state.color.g=e/255,this.forceUpdate()}})}),(0,l.jsx)("div",{className:"blue",children:(0,l.jsx)(Dr,{lockObject:this.props.lockObject,label:"B",min:0,max:255,value:Math.round(255*this.state.color.b),onChange:e=>{this.state.color.b=e/255,this.forceUpdate()}})}),(0,l.jsx)("div",{className:"alpha"+(a?"":" grayed"),children:(0,l.jsx)(Dr,{lockObject:this.props.lockObject,label:"A",min:0,max:255,value:Math.round(255*this.state.alpha),onChange:e=>{this.setState({alpha:e/255}),this.forceUpdate()}})})]}),(0,l.jsxs)("div",{className:"color-picker-hex",children:[(0,l.jsx)("div",{className:"color-picker-hex-label",children:"Hex"}),(0,l.jsx)("div",{className:"color-picker-hex-value",children:(0,l.jsx)(Ir,{lockObject:this.props.lockObject,expectedLength:a?8:6,value:t,onChange:e=>{if(a){const t=s.Color4.FromHexString(e);this.setState({color:new s.Color3(t.r,t.g,t.b),alpha:t.a})}else this.setState({color:s.Color3.FromHexString(e)})}})})]}),this.props.linearhint&&(0,l.jsx)("div",{className:"color-picker-warning",children:"(Note: color is stored in linear mode and was converted to gamma to be displayed here (toGammaSpace() / toLinearSpace()))"})]})}}class Or extends a.Component{constructor(e){super(e),this.state={pickerEnabled:!1,color:this.props.value,hex:this.getHexString(e)},this._floatRef=a.createRef(),this._floatHostRef=a.createRef()}syncPositions(){const e=this._floatRef.current,t=this._floatHostRef.current;if(!e||!t)return;let n=t.getBoundingClientRect().top;const r=e.getBoundingClientRect().height;n+r+10>window.innerHeight&&(n=window.innerHeight-r-10),e.style.top=n+"px",this.props.shouldPopRight?e.style.left=t.getBoundingClientRect().left+"px":e.style.left=t.getBoundingClientRect().left-e.getBoundingClientRect().width+"px"}shouldComponentUpdate(e,t){const n=this.getHexString(e)!==this.getHexString();return n&&(t.color=e.value,t.hex=this.getHexString(e)),n||t.hex!==this.state.hex||t.pickerEnabled!==this.state.pickerEnabled}getHexString(e=this.props){return e.value.toHexString()}componentDidUpdate(){this.syncPositions()}componentDidMount(){this.syncPositions()}render(){return(0,l.jsxs)("div",{className:"color-picker",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsx)("div",{className:"color-rect-background",ref:this._floatHostRef,onClick:()=>this.setState({pickerEnabled:!0}),children:(0,l.jsx)("div",{className:"color-rect",style:{background:this.state.hex}})}),this.state.pickerEnabled&&(0,l.jsx)(l.Fragment,{children:(0,l.jsx)("div",{className:"color-picker-cover",onClick:e=>{e.target===this._floatRef.current?.ownerDocument?.querySelector(".color-picker-cover")&&this.setState({pickerEnabled:!1})},children:(0,l.jsx)("div",{className:"color-picker-float",ref:this._floatRef,children:(0,l.jsx)(Tr,{lockObject:this.props.lockObject||{},color:this.state.color,linearhint:this.props.linearHint,onColorChanged:e=>{const t=e.toHexString();this.setState({hex:t,color:e}),this.props.onColorChanged(t)}})})})})]})}}const Pr=new s.Color4(0,0,0,0);class zr extends a.Component{constructor(e){super(e),this.state={isExpanded:!1,color:this.getValue()},this.props.target._isLinearColor=e.isLinear}shouldComponentUpdate(e,t){const n=t.color,r=this.getValue(e);return n!==this.state.color?(t.color=n,!0):r!==this.state.color?(t.color=r,!0):t.isExpanded!==this.state.isExpanded}getValue(e=this.props){const t=e.target[e.propertyName];return t?"string"==typeof t?t===Mr?Pr:this._convertToColor(t):e.isLinear?t.toGammaSpace():t.clone():Pr}setColorFromString(e){const t=this._convertToColor(e);this.setColor(t)}setColor(e){this.setState({color:e.clone()}),this.props.isLinear&&e.toLinearSpaceToRef(e);const t=this.props.disableAlpha?this._toColor3(e):e,n=this.props.target,r=n[this.props.propertyName],o="string"==typeof n[this.props.propertyName]?t.toHexString():t;n[this.props.propertyName]=o,this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:n,property:this.props.propertyName,value:o,initialValue:r}),this.props.onChange&&this.props.onChange()}switchExpandState(){this.setState({isExpanded:!this.state.isExpanded})}updateStateR(e){this.setColor(new s.Color4(e,this.state.color.g,this.state.color.b,this.state.color.a))}updateStateG(e){this.setColor(new s.Color4(this.state.color.r,e,this.state.color.b,this.state.color.a))}updateStateB(e){this.setColor(new s.Color4(this.state.color.r,this.state.color.g,e,this.state.color.a))}updateStateA(e){this.props.disableAlpha||this.setColor(new s.Color4(this.state.color.r,this.state.color.g,this.state.color.b,e))}_convertToColor(e){if(""===e||"transparent"===e)return Pr;if("#"!==e.substring(0,1)||7!==e.length&&9!==e.length){const t=document.createElement("div");t.style.color=e,document.body.append(t);const n=window.getComputedStyle(t).color;document.body.removeChild(t);const r=n.substring(4,n.length-1).replace(/ /g,"").split(","),o=r.length>3?parseInt(r[3])/255:1;return new s.Color4(parseInt(r[0])/255,parseInt(r[1])/255,parseInt(r[2])/255,o)}if(this.props.disableAlpha){const t=s.Color3.FromHexString(e);return new s.Color4(t.r,t.g,t.b,1)}return s.Color4.FromHexString(e)}_toColor3(e){return new s.Color3(e.r,e.g,e.b)}onCopyClick(){if(this.props&&this.props.target){const{className:e,babylonNamespace:t}=wr(this.props.target),n="globalThis.debugNode",r=this.props.propertyName,o=this.props.target[this.props.propertyName],a=this.state.color.toHexString();let i;i=o.a?"new "+t+"Color4("+o.r+", "+o.g+", "+o.b+", "+o.a+")":"new "+t+"Color3("+o.r+", "+o.g+", "+o.b+")",i+=";// (HEX : "+a,xr(n+"."+r+" = "+i+" , debugNode as "+t+e+")")}else xr("undefined")}render(){const e=this.state.isExpanded?(0,l.jsx)(fr,{icon:mr}):(0,l.jsx)(fr,{icon:Cr});return(0,l.jsxs)("div",{className:"color3Line",children:[(0,l.jsxs)("div",{className:"firstLine",children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label}),(0,l.jsx)("div",{className:"color3",children:(0,l.jsx)(Or,{lockObject:this.props.lockObject,linearHint:this.props.isLinear,value:this.props.disableAlpha?this._toColor3(this.state.color):this.state.color,onColorChanged:e=>{this.setColorFromString(e)}})}),(0,l.jsx)("div",{className:"expand hoverIcon",onClick:()=>this.switchExpandState(),title:"Expand",children:e}),(0,l.jsx)("div",{className:"copy hoverIcon",onClick:()=>this.onCopyClick(),title:"Copy to clipboard",children:(0,l.jsx)("img",{src:Nr,alt:"Copy"})})]}),this.state.isExpanded&&(0,l.jsxs)("div",{className:"secondLine",children:[(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"r",labelTooltip:"Red",value:this.state.color.r,onChange:e=>this.updateStateR(e)}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"g",labelTooltip:"Green",value:this.state.color.g,onChange:e=>this.updateStateG(e)}),(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"b",labelTooltip:"Blue",value:this.state.color.b,onChange:e=>this.updateStateB(e)}),this.props.disableAlpha||(0,l.jsx)(J,{lockObject:this.props.lockObject,label:"a",labelTooltip:"Alpha",value:this.state.color.a,onChange:e=>this.updateStateA(e)})]})]})}}class Rr extends a.Component{render(){const e=this.props;return(0,l.jsx)(zr,{disableAlpha:!0,...e})}}class Ur extends a.Component{render(){const e=this.props;return(0,l.jsx)(zr,{...e})}}class Fr extends a.Component{constructor(e){super(e)}processInputBlockUpdate(e){this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(e),e.isConstant&&this.props.globalState.stateManager.onRebuildRequiredObservable.notifyObservers()}renderInputBlock(e){switch(e.type){case s.NodeMaterialBlockConnectionPointTypes.Float:{const t=isNaN(e.min)||isNaN(e.max)||e.min===e.max;return(0,l.jsxs)("div",{children:[e.isBoolean&&(0,l.jsx)(Z,{label:e.name,target:e,propertyName:"value",onValueChanged:()=>{this.processInputBlockUpdate(e)}},e.uniqueId),!e.isBoolean&&t&&(0,l.jsx)(_r,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId),!e.isBoolean&&!t&&(0,l.jsx)(Sr,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",step:(e.max-e.min)/100,minimum:e.min,maximum:e.max,onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId)]},e.uniqueId)}case s.NodeMaterialBlockConnectionPointTypes.Color3:return(0,l.jsx)(Rr,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Color4:return(0,l.jsx)(Ur,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Vector2:return(0,l.jsx)(br,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Vector3:return(0,l.jsx)(Lr,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Vector4:return(0,l.jsx)(Br,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId)}return null}render(){return(0,l.jsx)(O,{title:"INPUTS",children:this.props.inputs.map((e=>e.isUniform&&!e.isSystemValue&&e.name?this.renderInputBlock(e):null))})}}let Yr=-1;class Vr extends a.Component{constructor(e){super(e),this._localChange=!1;const t=this.props.numeric?"0":"";this.state={value:(void 0!==this.props.value?this.props.value:this.props.target[this.props.propertyName])||t,dragging:!1}}componentWillUnmount(){this.props.lockObject&&(this.props.lockObject.lock=!1)}shouldComponentUpdate(e,t){if(this._localChange)return this._localChange=!1,!0;const n=void 0!==e.value?e.value:e.target[e.propertyName];return n!==t.value?(t.value=n||"",!0):t.dragging!=this.state.dragging||e.unit!==this.props.unit}raiseOnPropertyChanged(e,t){this.props.onChange?this.props.onChange(e):this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:e,initialValue:t})}getCurrentNumericValue(e){const t=parseFloat(e);if(!isNaN(t))return t;if(void 0!==this.props.placeholder){const e=parseFloat(this.props.placeholder);if(!isNaN(e))return e}return 0}updateValue(e,t){if(this.props.disabled)return;if(this.props.numbersOnly){if(/[^0-9.px%-]/g.test(e))return;e||(e="0"),0===e.search(/0+[0-9-]/g)&&(e=e.substring(1))}if(this.props.numeric){let t=this.getCurrentNumericValue(e);this.props.roundValues&&(t=Math.round(t)),void 0!==this.props.min&&(t=Math.max(this.props.min,t)),void 0!==this.props.max&&(t=Math.min(this.props.max,t)),e=t.toString()}this._localChange=!0;const n=void 0!==this.props.value?this.props.value:this.props.target[this.props.propertyName];this.props.validator&&t&&0==this.props.validator(t)&&(e=n),this.setState({value:e}),this.props.propertyName&&!this.props.delayInput&&(this.props.target[this.props.propertyName]=e),this.props.throttlePropertyChangedNotification?(Yr>=0&&window.clearTimeout(Yr),Yr=window.setTimeout((()=>{this.raiseOnPropertyChanged(e,n)}),this.props.throttlePropertyChangedNotificationDelay??200)):this.raiseOnPropertyChanged(e,n)}incrementValue(e){if(this.props.step&&(e*=this.props.step),this.props.arrowsIncrement)return void this.props.arrowsIncrement(e);const t=this.getCurrentNumericValue(this.state.value);this.updateValue((t+e).toFixed(2))}onKeyDown(e){!this.props.disabled&&this.props.arrows&&("ArrowUp"===e.key&&(this.incrementValue(1),e.preventDefault()),"ArrowDown"===e.key&&(this.incrementValue(-1),e.preventDefault()))}render(){const e=this.state.value===Mr?"":this.state.value,t=this.state.value===Mr?Mr:this.props.placeholder||"",n=this.props.step||(this.props.roundValues?1:.01),r=this.props.multilines?"textInputArea":void 0!==this.props.unit?"textInputLine withUnits":"textInputLine";return(0,l.jsxs)("div",{className:r,children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,color:"black",className:"icon"}),void 0!==this.props.label&&(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label}),this.props.multilines&&(0,l.jsx)(l.Fragment,{children:(0,l.jsx)("textarea",{className:this.props.disabled?"disabled":"",value:this.state.value,onFocus:()=>{this.props.lockObject&&(this.props.lockObject.lock=!0)},onChange:e=>this.updateValue(e.target.value),onKeyDown:e=>{13===e.keyCode&&this.updateValue(this.state.value)},onBlur:e=>{this.updateValue(e.target.value,e.target.value),this.props.lockObject&&(this.props.lockObject.lock=!1)},disabled:this.props.disabled})}),!this.props.multilines&&(0,l.jsxs)("div",{className:`value${!0===this.props.noUnderline?" noUnderline":""}${this.props.arrows?" hasArrows":""}${this.state.dragging?" dragging":""}`,children:[(0,l.jsx)("input",{className:this.props.disabled?"disabled":"",value:e,onBlur:e=>{this.props.lockObject&&(this.props.lockObject.lock=!1),this.updateValue((void 0!==this.props.value?this.props.value:this.props.target[this.props.propertyName])||"",e.target.value)},onFocus:()=>{this.props.lockObject&&(this.props.lockObject.lock=!0)},onChange:e=>this.updateValue(e.target.value),onKeyDown:e=>this.onKeyDown(e),placeholder:t,type:this.props.numeric?"number":"text",step:n,disabled:this.props.disabled}),this.props.arrows&&(0,l.jsx)(kr,{incrementValue:e=>this.incrementValue(e),setDragging:e=>this.setState({dragging:e})})]}),this.props.unit]})}}class Gr extends a.Component{constructor(e){super(e)}render(){return(0,l.jsxs)("div",{className:"buttonLine"+(this.props.isDisabled?" disabled":""),children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsx)("button",{onClick:()=>this.props.onClick(),children:this.props.label})]})}}class Wr extends a.Component{constructor(e){super(e)}componentDidMount(){this._onFrameExpandStateChangedObserver=this.props.frame.onExpandStateChanged.add((()=>this.forceUpdate()))}componentWillUnmount(){this._onFrameExpandStateChangedObserver&&(this.props.frame.onExpandStateChanged.remove(this._onFrameExpandStateChangedObserver),this._onFrameExpandStateChangedObserver=null)}render(){let e=[];return this.props.frame.nodes.forEach((t=>{const n=t.content.data;n.isInput&&n.visibleOnFrame&&e.push(n)})),e=e.sort(((e,t)=>e.name.localeCompare(t.name))),(0,l.jsxs)("div",{id:"propertyTab",children:[(0,l.jsxs)("div",{id:"header",children:[(0,l.jsx)("img",{id:"logo",src:"https://www.babylonjs.com/Assets/logo-babylonjs-social-twitter.png"}),(0,l.jsx)("div",{id:"title",children:"NODE MATERIAL EDITOR"})]}),(0,l.jsxs)("div",{children:[(0,l.jsxs)(O,{title:"GENERAL",children:[(0,l.jsx)(Vr,{label:"Name",propertyName:"name",lockObject:this.props.globalState.lockObject,target:this.props.frame}),(0,l.jsx)(Rr,{lockObject:this.props.globalState.lockObject,label:"Color",target:this.props.frame,propertyName:"color"}),(0,l.jsx)(Vr,{lockObject:this.props.globalState.lockObject,label:"Comments",propertyName:"comments",target:this.props.frame}),!this.props.frame.isCollapsed&&(0,l.jsx)(Gr,{label:"Collapse",onClick:()=>{this.props.frame.isCollapsed=!0}}),this.props.frame.isCollapsed&&(0,l.jsx)(Gr,{label:"Expand",onClick:()=>{this.props.frame.isCollapsed=!1}}),(0,l.jsx)(Gr,{label:"Export",onClick:()=>{this.props.frame.export()}})]}),(0,l.jsx)(Fr,{lockObject:this.props.globalState.lockObject,globalState:this.props.globalState,inputs:e})]})]})}}var Hr=r(1910),Qr={};Qr.styleTagTransform=v(),Qr.setAttributes=g(),Qr.insert=A().bind(null,"head"),Qr.domAPI=p(),Qr.insertStyleElement=C(),u()(Hr.A,Qr);const Zr=Hr.A&&Hr.A.locals?Hr.A.locals:void 0;var qr=r(7936),Xr={};Xr.styleTagTransform=v(),Xr.setAttributes=g(),Xr.insert=A().bind(null,"head"),Xr.domAPI=p(),Xr.insertStyleElement=C(),u()(qr.A,Xr);const Jr=qr.A&&qr.A.locals?qr.A.locals:void 0;class Kr{get element(){return this.delegatedPort?this.delegatedPort.element:this._element}get container(){return this.delegatedPort?this.delegatedPort.container:this._portContainer}get portName(){return this.portData.name}set portName(e){this._portLabelElement&&(this.portData.updateDisplayName(e),this._portLabelElement.innerHTML=e)}get disabled(){if(!this.portData.isConnected)return!1;if(this._isConnectedToNodeOutsideOfFrame())return!0;{const e=this.node.getLinksForPortData(this.portData);if(e.length&&e[0].nodeB===this.node)return!0}return!1}hasLabel(){return!!this._portLabelElement}get exposedOnFrame(){return!(!this.portData.isExposedOnFrame&&!this._isConnectedToNodeOutsideOfFrame())}set exposedOnFrame(e){this.disabled||(this.portData.isExposedOnFrame=e)}get exposedPortPosition(){return this.portData.exposedPortPosition}set exposedPortPosition(e){this.portData.exposedPortPosition=e}_isConnectedToNodeOutsideOfFrame(){const e=this.node.getLinksForPortData(this.portData);if(e.length)for(let t=0;t<e.length;t++)if(e[t].nodeA.enclosingFrameId!==e[t].nodeB.enclosingFrameId)return!0;return!1}refresh(){this._stateManager.applyNodePortDesign(this.portData,this._element,this._img,this._pip)}constructor(e,t,n,r){this.portData=t,this.node=n,this.delegatedPort=null,this._portContainer=e,this._element=e.ownerDocument.createElement("div"),this._element.classList.add(Zr.port),e.appendChild(this._element),this._stateManager=r,this._img=e.ownerDocument.createElement("img"),this._element.appendChild(this._img),this._pip=e.ownerDocument.createElement("div"),this._pip.classList.add(Jr.pip),this._pip.style.display="none",this._element.appendChild(this._pip),e.children[0].className===Zr["port-label"]&&(this._portLabelElement=e.children[0]),this._element.port=this,this._element.ondragstart=()=>!1,this._onCandidateLinkMovedObserver=r.onCandidateLinkMoved.add((e=>{const t=this._element.getBoundingClientRect();!e||t.left>e.x||t.right<e.x||t.top>e.y||t.bottom<e.y?this._element.classList.remove(Jr.selected):(this._element.classList.add(Jr.selected),this._stateManager.onCandidatePortSelectedObservable.notifyObservers(this))})),this._onSelectionChangedObserver=this._stateManager.onSelectionChangedObservable.add((e=>{const{selection:t}=e||{};t===this?this._img.classList.add(Jr.selected):this._img.classList.remove(Jr.selected)})),this.refresh()}dispose(){this._stateManager.onCandidateLinkMoved.remove(this._onCandidateLinkMovedObserver),this._onSelectionChangedObserver&&this._stateManager.onSelectionChangedObservable.remove(this._onSelectionChangedObserver)}static CreatePortElement(e,t,n,r,o){const a=n.ownerDocument.createElement("div");if(a.classList.add(Zr.portLine),n.appendChild(a),!r||r.shouldDisplayPortLabels(e)){const t=n.ownerDocument.createElement("div");t.classList.add(Zr["port-label"]),t.innerHTML=e.name,a.appendChild(t)}return new Kr(a,e,t,o)}}const $r=e=>!!e&&void 0!==e.port,eo=(e,t,n,r)=>{e.refresh();const o=e.links;t&&o.forEach((e=>{const r=e.nodeA,o=e.nodeB;t.has(r)||(t.add(r),eo(r,t,n)),o&&!t.has(o)&&(t.add(o),eo(o,t,n))}));const a=e.content.invisibleEndpoints;if(a&&a.length)for(const e of a){const o=r?.findNodeFromData(e);o&&(t&&t.add(o),eo(o,t,n))}n&&o.forEach((e=>{n.has(e)||(n.add(e),e.update())}))};class to extends Kr{get parentFrameId(){return this._parentFrameId}get onFramePortPositionChangedObservable(){return this._onFramePortPositionChangedObservable}get isInput(){return this._isInput}get framePortId(){return this._framePortId}get framePortPosition(){return this._framePortPosition}set framePortPosition(e){this._framePortPosition=e,this.onFramePortPositionChangedObservable.notifyObservers(this)}constructor(e,t,n,r,o,a,i){super(e,t,n,r),this.portData=t,this.node=n,this._onFramePortPositionChangedObservable=new s.Observable,this._parentFrameId=i,this._isInput=o,this._framePortId=a,this._onSelectionChangedObserver=r.onSelectionChangedObservable.add((e=>{const{selection:t}=e||{};$r(t)&&t.port===this?this._img.classList.add(Zr.selected):this._img.classList.remove(Zr.selected)})),this.refresh()}static CreateFrameNodePortElement(e,t,n,r,o,a,i,s){const l=n.ownerDocument.createElement("div");if(l.classList.add(Zr.portLine),null!==i&&(l.dataset.framePortId=`${i}`),n.appendChild(l),!r||r.shouldDisplayPortLabels(e)){const t=n.ownerDocument.createElement("div");t.classList.add(Zr["port-label"]),t.innerHTML=e.name,l.appendChild(t)}return new to(l,e,t,o,a,i,s)}}var no=r(9750),ro={};ro.styleTagTransform=v(),ro.setAttributes=g(),ro.insert=A().bind(null,"head"),ro.domAPI=p(),ro.insertStyleElement=C(),u()(no.A,ro);const oo=no.A&&no.A.locals?no.A.locals:void 0;function ao(e,t){let n="";for(const r in e)e[r]&&(n+=t[r]+" ");return n}var io,so;!function(e){e[e.Right=0]="Right",e[e.Left=1]="Left",e[e.Top=2]="Top",e[e.Bottom=3]="Bottom",e[e.TopRight=4]="TopRight",e[e.TopLeft=5]="TopLeft",e[e.BottomRight=6]="BottomRight",e[e.BottomLeft=7]="BottomLeft"}(io||(io={})),function(e){e[e.Top=0]="Top",e[e.Middle=1]="Middle",e[e.Bottom=2]="Bottom"}(so||(so={}));class lo{get id(){return this._id}get isCollapsed(){return this._isCollapsed}_createInputPort(e,t){const n=to.CreateFrameNodePortElement(e.portData,t,this._inputPortContainer,null,this._ownerCanvas.stateManager,!0,lo._FramePortCounter++,this.id);this._frameInPorts.push(n),e.delegatedPort=n,this._controlledPorts.push(e),e.exposedPortPosition=this._exposedInPorts.findIndex((t=>t===e)),e.exposedPortPosition<0&&(this._exposedInPorts.push(e),e.exposedPortPosition=this._exposedInPorts.length-1)}_markFramePortPositions(){if(2==this._frameInPorts.length)this._frameInPorts[0].framePortPosition=so.Top,this._frameInPorts[1].framePortPosition=so.Bottom;else for(let e=0;e<this._frameInPorts.length;e++){const t=this._frameInPorts[e];0===e?t.framePortPosition=so.Top:e===this._frameInPorts.length-1?t.framePortPosition=so.Bottom:t.framePortPosition=so.Middle}if(2==this._frameOutPorts.length)this._frameOutPorts[0].framePortPosition=so.Top,this._frameOutPorts[1].framePortPosition=so.Bottom;else for(let e=0;e<this._frameOutPorts.length;e++){const t=this._frameOutPorts[e];0===e?t.framePortPosition=so.Top:e===this._frameInPorts.length-1?t.framePortPosition=so.Bottom:t.framePortPosition=so.Middle}}_createFramePorts(){for(const e of this._nodes)e.isVisible=!1;for(let e=0;e<this._exposedOutPorts.length;){const t=this._exposedOutPorts[e];if(t)if(null===t.node||t.node.enclosingFrameId!=this.id){if(this._removePortFromExposedWithNode(t,this._exposedOutPorts))continue}else if(!this._createOutputPorts(t,t.node)&&this._removePortFromExposedWithNode(t,this._exposedOutPorts))continue;++e}for(let e=0;e<this._exposedInPorts.length;){const t=this._exposedInPorts[e];if(t&&null!==t.node&&t.node.enclosingFrameId==this.id){if(!this._createInputPorts(t,t.node)&&this._removePortFromExposedWithNode(t,this._exposedInPorts))continue}else if(this._removePortFromExposedWithNode(t,this._exposedInPorts))continue;++e}for(const e of this._nodes){for(const t of e.outputPorts)t.exposedPortPosition=this._exposedOutPorts.findIndex((e=>e===t)),t.exposedPortPosition<0&&this._createOutputPorts(t,e)&&(t.node.enclosingFrameId=this.id,this._exposedOutPorts.push(t),t.exposedPortPosition=this._exposedOutPorts.length-1);for(const t of e.inputPorts)t.exposedPortPosition=this._exposedInPorts.findIndex((e=>e===t)),t.exposedPortPosition<0&&this._createInputPorts(t,e)}}_removePortFromExposedWithNode(e,t){const n=t.findIndex((t=>t===e));return n>=0&&(t.splice(n,1),e&&(e.exposedPortPosition=-1),!0)}_removePortFromExposedWithLink(e,t){const n=t.findIndex((t=>t===e.portA)),r=t.findIndex((t=>t===e.portB));if(n>=0){if(!e.portA.exposedOnFrame)return t.splice(n,1),e.portA.exposedPortPosition=-1,!0}else if(r>=0&&e.portB&&!e.portB.exposedOnFrame)return t.splice(r,1),e.portB.exposedPortPosition=-1,!0;return!1}_createInputPorts(e,t){if(e.portData.isConnected){let n=!1;for(const r of t.links)if(r.portB===e&&-1===this.nodes.indexOf(r.nodeA)){this._createInputPort(e,t),r.isVisible=!0,n=!0;const o=r.onDisposedObservable.add((e=>{this._removePortFromExposedWithLink(e,this._exposedInPorts)&&this.redrawFramePorts()}));this._onNodeLinkDisposedObservers.push(o)}if(n)return!0}else if(e.exposedOnFrame)return this._createInputPort(e,t),!0;return!1}_createOutputPorts(e,t){if(e.portData.hasEndpoints){let n=!1;for(const r of t.links)if(r.portA===e&&-1===this.nodes.indexOf(r.nodeB)){let t;if(n)-1===this.nodes.indexOf(r.nodeB)?(r.isVisible=!0,t=this.ports.filter((t=>t.portData===e.portData))[0]):t=this.ports.filter((t=>t.portData===e.portData))[0];else{n=!0,t=to.CreateFrameNodePortElement(e.portData,r.nodeA,this._outputPortContainer,null,this._ownerCanvas.stateManager,!1,lo._FramePortCounter++,this.id),this._frameOutPorts.push(t),r.isVisible=!0;const o=r.onDisposedObservable.add((e=>{this._removePortFromExposedWithLink(e,this._exposedOutPorts)&&this.redrawFramePorts()}));this._onNodeLinkDisposedObservers.push(o)}e.delegatedPort=t,this._controlledPorts.push(e)}else if(e.exposedPortPosition>=0&&!n){const r=to.CreateFrameNodePortElement(e.portData,t,this._outputPortContainer,null,this._ownerCanvas.stateManager,!1,lo._FramePortCounter++,this.id);this._frameOutPorts.push(r),e.delegatedPort=r,this._controlledPorts.push(e),n=!0}if(n)return!0}else if(e.exposedOnFrame){const n=to.CreateFrameNodePortElement(e.portData,t,this._outputPortContainer,null,this._ownerCanvas.stateManager,!1,lo._FramePortCounter++,this.id);return this._frameOutPorts.push(n),e.delegatedPort=n,this._controlledPorts.push(e),!0}return!1}redrawFramePorts(){this.isCollapsed&&(this._outputPortContainer.innerHTML="",this._inputPortContainer.innerHTML="",this.ports.forEach((e=>{e.dispose()})),this._controlledPorts.forEach((e=>{e.delegatedPort=null,e.refresh()})),this._frameInPorts=[],this._frameOutPorts=[],this._controlledPorts=[],this._createFramePorts(),this._markFramePortPositions(),this.ports.forEach((e=>e.node._refreshLinks())))}set isCollapsed(e){if(this._isCollapsed!==e){if(this._isCollapsed=e,this._ownerCanvas._frameIsMoving=!0,e)this.element.classList.add(oo.collapsed),this.element.classList.remove(oo.expanded),this._headerElement.classList.add(oo.collapsedHeader),this._moveFrame((this.width-this._collapsedWidth)/2,0),this._createFramePorts(),this._markFramePortPositions();else{this.element.classList.add(oo.expanded),this.element.classList.remove(oo.collapsed),this._headerElement.classList.remove(oo.collapsedHeader),this._outputPortContainer.innerHTML="",this._inputPortContainer.innerHTML="",this._frameInPorts.forEach((e=>{e.dispose()})),this._frameOutPorts.forEach((e=>{e.dispose()})),this._controlledPorts.forEach((e=>{e.delegatedPort=null,e.refresh()})),this._frameInPorts=[],this._frameOutPorts=[],this._controlledPorts=[],this._onNodeLinkDisposedObservers=[];for(const e of this._nodes)e.isVisible=!0;this._moveFrame(-(this.width-this._collapsedWidth)/2,0)}this.cleanAccumulation(),this._ownerCanvas._frameIsMoving=!1,this._isCollapsed?(this._headerCollapseElement.innerHTML=this._expandSVG,this._headerCollapseElement.title="Expand"):(this._headerCollapseElement.innerHTML=this._collapseSVG,this._headerCollapseElement.title="Collapse"),this.onExpandStateChanged.notifyObservers(this)}}get nodes(){return this._nodes}get ports(){return this._frameInPorts.concat(this._frameOutPorts)}get name(){return this._name}set name(e){this._name=e,this._headerTextElement.innerHTML=e}get color(){return this._color}set color(e){this._color=e,this._headerElement.style.background=`rgba(${255*e.r}, ${255*e.g}, ${255*e.b}, 1)`,this._headerElement.style.borderColor=`rgba(${255*e.r}, ${255*e.g}, ${255*e.b}, 1)`,this.element.style.background=`rgba(${255*e.r}, ${255*e.g}, ${255*e.b}, 0.7)`}get x(){return this._x}set x(e){this._x!==e&&(this._x=e,this._gridAlignedX=this._ownerCanvas.getGridPosition(e),this.element.style.left=`${this._gridAlignedX}px`)}get y(){return this._y}set y(e){this._y!==e&&(this._y=e,this._gridAlignedY=this._ownerCanvas.getGridPosition(e),this.element.style.top=`${this._gridAlignedY}px`)}get width(){return this._width}set width(e){if(this._width===e)return;const t=e>this._minFrameWidth?e:this._minFrameWidth;this._width=t;const n=this._ownerCanvas.getGridPositionCeil(t+this._gridAlignedX);this.element.style.width=n-this._gridAlignedX+"px"}get height(){return this._height}set height(e){if(this._height===e)return;this._height=e;const t=this._ownerCanvas.getGridPositionCeil(e+this._gridAlignedY);this.element.style.height=t-this._gridAlignedY+"px"}get comments(){return this._comments}set comments(e){e&&!this._comments&&e.length>0?(this.element.style.gridTemplateRows="40px min-content 1fr",this._borderElement.style.gridRow="1 / span 3",this._portContainer.style.gridRow="3",this._commentsElement.classList.add("has-comments")):e||(this.element.style.gridTemplateRows="40px calc(100% - 40px)",this._borderElement.style.gridRow="1 / span 2",this._portContainer.style.gridRow="2",this._commentsElement.classList.remove("has-comments")),(""===e||e&&e.length>=0)&&(this._commentsElement.children[0].innerText=e),this.height=this._borderElement.offsetHeight,this._comments=e,this._updateMinHeightWithComments()}constructor(e,t,n=!1){this._collapsedWidth=200,this._x=0,this._y=0,this._gridAlignedX=0,this._gridAlignedY=0,this._nodes=[],this._mouseStartPointX=null,this._mouseStartPointY=null,this._onNodeLinkDisposedObservers=[],this._isCollapsed=!1,this._frameInPorts=[],this._frameOutPorts=[],this._controlledPorts=[],this._exposedInPorts=[],this._exposedOutPorts=[],this._minFrameHeight=40,this._minFrameWidth=220,this.onExpandStateChanged=new s.Observable,this._closeSVG='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g id="Layer_2" data-name="Layer 2"><path d="M16,15l5.85,5.84-1,1L15,15.93,9.15,21.78l-1-1L14,15,8.19,9.12l1-1L15,14l5.84-5.84,1,1Z"/></g></svg>',this._expandSVG='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g id="Layer_2" data-name="Layer 2"><path d="M22.31,7.69V22.31H7.69V7.69ZM21.19,8.81H8.81V21.19H21.19Zm-6.75,6.75H11.06V14.44h3.38V11.06h1.12v3.38h3.38v1.12H15.56v3.38H14.44Z"/></g></svg>',this._collapseSVG='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g id="Layer_2" data-name="Layer 2"><path d="M22.31,7.69V22.31H7.69V7.69ZM21.19,8.81H8.81V21.19H21.19Zm-2.25,6.75H11.06V14.44h7.88Z"/></g></svg>',this._focusSVG='<svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M6.24992 4.5C5.28344 4.5 4.49996 5.2835 4.49996 6.25V17.75C4.49996 18.7165 5.28344 19.5 6.24992 19.5H17.7496C18.7161 19.5 19.4996 18.7165 19.4996 17.75V13.75C19.4996 13.3358 19.8354 13 20.2496 13C20.6638 13 20.9995 13.3358 20.9995 13.75V17.75C20.9995 19.5449 19.5445 21 17.7496 21H6.24992C4.45504 21 3 19.5449 3 17.75V6.25C3 4.45507 4.45504 3 6.24992 3H10.2498C10.664 3 10.9998 3.33579 10.9998 3.75C10.9998 4.16421 10.664 4.5 10.2498 4.5H6.24992ZM12.9997 3.75C12.9997 3.33579 13.3355 3 13.7497 3H20.25C20.6642 3 21 3.33579 21 3.75V10.25C21 10.6642 20.6642 11 20.25 11C19.8358 11 19.5 10.6642 19.5 10.25V5.56074L14.28 10.7804C13.9871 11.0732 13.5123 11.0732 13.2194 10.7803C12.9265 10.4874 12.9265 10.0125 13.2194 9.71964L18.4395 4.5H13.7497C13.3355 4.5 12.9997 4.16421 12.9997 3.75Z" /></svg>',this._isFocused=!1,this._initResizing=e=>{e.stopPropagation(),this._mouseStartPointX=e.clientX,this._mouseStartPointY=e.clientY,this._frameIsResizing=!0},this._cleanUpResizing=e=>{e.stopPropagation(),this._frameIsResizing=!1,this._resizingDirection=null,this._mouseStartPointX=null,this._mouseStartPointY=null,this._mouseXLimit=null,this.refresh()},this._updateMinHeightWithComments=()=>{if(this.comments&&this.comments.length>0){const e=this._commentsElement.offsetHeight+40;this._minFrameHeight=e}},this._onRightHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.Right,this._mouseXLimit=e.clientX-(this.width-this._minFrameWidth),this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onRightHandlePointerUp),this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onRightHandlePointerMove))},this._onRightHandlePointerMove=e=>{const t=(this.element.offsetWidth-this._minFrameWidth)*this._ownerCanvas.zoom,n=this._mouseStartPointX-t;this._moveRightHandle(e,n)},this._moveRightHandle=(e,t)=>{if(this._mouseXLimit){if(!this._isResizingRight()||null===this._mouseStartPointX||null===this._mouseStartPointY||e.clientX<t)return;if(this._isResizingRight()){e.stopPropagation();const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandRight(t,e.clientX),this._mouseStartPointX=e.clientX}}},this._onRightHandlePointerUp=e=>{this._isResizingRight()&&(this.width=parseFloat(this.element.style.width.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onRightHandlePointerUp),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onRightHandlePointerMove),this._cleanUpResizing(e))},this._onBottomHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.Bottom,this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onBottomHandlePointerMove),this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onBottomHandlePointerUp))},this._onBottomHandlePointerMove=e=>{const t=(this.element.offsetHeight-this._minFrameHeight)*this._ownerCanvas.zoom,n=this._mouseStartPointY-t;this._moveBottomHandle(e,n)},this._moveBottomHandle=(e,t)=>{if(!(this._resizingDirection!==io.Bottom||null===this._mouseStartPointX||null===this._mouseStartPointY||e.clientY<t)&&this._resizingDirection===io.Bottom){e.stopPropagation();const t=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandBottom(t),this._mouseStartPointY=e.clientY}},this._onBottomHandlePointerUp=e=>{this._resizingDirection===io.Bottom&&(this.height=parseFloat(this.element.style.height.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onBottomHandlePointerMove),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onBottomHandlePointerUp),this._cleanUpResizing(e))},this._onLeftHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.Left,this._mouseXLimit=e.clientX+this.width-this._minFrameWidth,this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onLeftHandlePointerUp),this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onLeftHandlePointerMove))},this._onLeftHandlePointerMove=e=>{const t=(this.element.offsetWidth-this._minFrameWidth)*this._ownerCanvas.zoom,n=this._mouseStartPointX+t;this._moveLeftHandle(e,n)},this._moveLeftHandle=(e,t)=>{if(this._mouseXLimit){if(this._resizingDirection!==io.Left||null===this._mouseStartPointX||null===this._mouseStartPointY||e.clientX>t)return;if(this._resizingDirection===io.Left){e.stopPropagation();const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandLeft(t),this._mouseStartPointX=e.clientX}}},this._onLeftHandlePointerUp=e=>{this._resizingDirection===io.Left&&(this.x=parseFloat(this.element.style.left.replace("px","")),this.width=parseFloat(this.element.style.width.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onLeftHandlePointerUp),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onLeftHandlePointerMove),this._cleanUpResizing(e))},this._onTopHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.Top,this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onTopHandlePointerUp),this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onTopHandlePointerMove))},this._onTopHandlePointerMove=e=>{const t=(this.element.offsetHeight-this._minFrameHeight)*this._ownerCanvas.zoom,n=this._mouseStartPointY+t;this._moveTopHandle(e,n)},this._moveTopHandle=(e,t)=>{if(this._isResizingTop()&&null!==this._mouseStartPointX&&null!==this._mouseStartPointY&&!(e.clientY>t)&&this._isResizingTop()){e.stopPropagation();const t=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandTop(t),this._mouseStartPointY=e.clientY}},this._onTopHandlePointerUp=e=>{this._isResizingTop()&&(this.y=parseFloat(this.element.style.top.replace("px","")),this.height=parseFloat(this.element.style.height.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onTopHandlePointerUp),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onTopHandlePointerMove),this._cleanUpResizing(e))},this._onTopRightHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.TopRight,this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onTopRightHandlePointerUp),this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onTopRightHandlePointerMove))},this._onTopRightHandlePointerMove=e=>{const t=(this.element.offsetHeight-this._minFrameHeight)*this._ownerCanvas.zoom,n=this._mouseStartPointY+t,r=(this.element.offsetWidth-this._minFrameWidth)*this._ownerCanvas.zoom,o=this._mouseStartPointX-r;this._moveTopRightHandle(e,o,n)},this._moveTopRightHandle=(e,t,n)=>{if(this._isResizingTop()&&this._isResizingRight()&&null!==this._mouseStartPointX&&null!==this._mouseStartPointY&&this._isResizingRight()&&this._isResizingTop())if(e.stopPropagation(),e.clientY<n&&e.clientX>t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandRight(t,e.clientX),this._mouseStartPointX=e.clientX;const n=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandTop(n),this._mouseStartPointY=e.clientY}else if(e.clientY>n&&e.clientX>t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandRight(t,e.clientX),this._mouseStartPointX=e.clientX}else if(e.clientY<n&&e.clientX<t){const t=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandTop(t),this._mouseStartPointY=e.clientY}},this._onTopRightHandlePointerUp=e=>{e.stopPropagation(),this._resizingDirection===io.TopRight&&(this.y=parseFloat(this.element.style.top.replace("px","")),this.height=parseFloat(this.element.style.height.replace("px","")),this.width=parseFloat(this.element.style.width.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onTopRightHandlePointerUp),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onTopRightHandlePointerMove),this._cleanUpResizing(e))},this._onBottomRightHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.BottomRight,this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onBottomRightHandlePointerUp),this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onBottomRightHandlePointerMove))},this._onBottomRightHandlePointerMove=e=>{const t=(this.element.offsetHeight-this._minFrameHeight)*this._ownerCanvas.zoom,n=this._mouseStartPointY-t,r=(this.element.offsetWidth-this._minFrameWidth)*this._ownerCanvas.zoom,o=this._mouseStartPointX-r;this._moveBottomRightHandle(e,o,n)},this._moveBottomRightHandle=(e,t,n)=>{if(this._isResizingBottom()&&this._isResizingRight()&&null!==this._mouseStartPointX&&null!==this._mouseStartPointY&&this._isResizingRight()&&this._isResizingBottom())if(e.stopPropagation(),e.clientY>n&&e.clientX>t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandRight(t,e.clientX),this._mouseStartPointX=e.clientX;const n=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandBottom(n),this._mouseStartPointY=e.clientY}else if(e.clientY<n&&e.clientX>t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandRight(t,e.clientX),this._mouseStartPointX=e.clientX}else if(e.clientY>n&&e.clientX<t){const t=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandBottom(t),this._mouseStartPointY=e.clientY}},this._onBottomRightHandlePointerUp=e=>{this._resizingDirection===io.BottomRight&&(this.height=parseFloat(this.element.style.height.replace("px","")),this.width=parseFloat(this.element.style.width.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onBottomRightHandlePointerUp),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onBottomRightHandlePointerMove),this._cleanUpResizing(e))},this._onBottomLeftHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.BottomLeft,this._mouseXLimit=e.clientX+this.width-this._minFrameWidth,this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onBottomLeftHandlePointerUp),this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onBottomLeftHandlePointerMove))},this._onBottomLeftHandlePointerMove=e=>{const t=(this.element.offsetHeight-this._minFrameHeight)*this._ownerCanvas.zoom,n=this._mouseStartPointY-t,r=(this.element.offsetWidth-this._minFrameWidth)*this._ownerCanvas.zoom,o=this._mouseStartPointX+r;this._moveBottomLeftHandle(e,o,n)},this._moveBottomLeftHandle=(e,t,n)=>{if(this._isResizingBottom()&&this._isResizingLeft()&&null!==this._mouseStartPointX&&null!==this._mouseStartPointY&&this._isResizingLeft()&&this._isResizingBottom())if(e.stopPropagation(),e.clientY>n&&e.clientX<t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandLeft(t),this._mouseStartPointX=e.clientX;const n=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandBottom(n),this._mouseStartPointY=e.clientY}else if(e.clientY<n&&e.clientX<t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandLeft(t),this._mouseStartPointX=e.clientX}else if(e.clientY>n&&e.clientX>t){const t=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandBottom(t),this._mouseStartPointY=e.clientY}},this._onBottomLeftHandlePointerUp=e=>{e.stopPropagation(),this._resizingDirection===io.BottomLeft&&(this.height=parseFloat(this.element.style.height.replace("px","")),this.x=parseFloat(this.element.style.left.replace("px","")),this.width=parseFloat(this.element.style.width.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onBottomLeftHandlePointerUp),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onBottomLeftHandlePointerMove),this._cleanUpResizing(e))},this._onTopLeftHandlePointerDown=e=>{this.isCollapsed||(this._initResizing(e),this._resizingDirection=io.TopLeft,this._mouseXLimit=e.clientX+this.width-this._minFrameWidth,this._ownerCanvas.hostCanvas.addEventListener("pointerup",this._onTopLeftHandlePointerUp),this._ownerCanvas.hostCanvas.addEventListener("pointermove",this._onTopLeftHandlePointerMove))},this._onTopLeftHandlePointerMove=e=>{const t=(this.element.offsetHeight-this._minFrameHeight)*this._ownerCanvas.zoom,n=this._mouseStartPointY+t,r=(this.element.offsetWidth-this._minFrameWidth)*this._ownerCanvas.zoom,o=this._mouseStartPointX+r;this._moveTopLeftHandle(e,o,n)},this._moveTopLeftHandle=(e,t,n)=>{if(this._isResizingTop()&&this._isResizingLeft()&&null!==this._mouseStartPointX&&null!==this._mouseStartPointY&&this._isResizingLeft()&&this._isResizingTop())if(e.stopPropagation(),e.clientY<n&&e.clientX<t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandLeft(t),this._mouseStartPointX=e.clientX;const n=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandTop(n),this._mouseStartPointY=e.clientY}else if(e.clientY>n&&e.clientX<t){const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom;this._expandLeft(t),this._mouseStartPointX=e.clientX}else if(e.clientY<n&&e.clientX>t){const t=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;this._expandTop(t),this._mouseStartPointY=e.clientY}},this._onTopLeftHandlePointerUp=e=>{e.stopPropagation(),this._resizingDirection===io.TopLeft&&(this.y=parseFloat(this.element.style.top.replace("px","")),this.height=parseFloat(this.element.style.height.replace("px","")),this.x=parseFloat(this.element.style.left.replace("px","")),this.width=parseFloat(this.element.style.width.replace("px","")),this._ownerCanvas.hostCanvas.removeEventListener("pointerup",this._onTopLeftHandlePointerUp),this._ownerCanvas.hostCanvas.removeEventListener("pointermove",this._onTopLeftHandlePointerMove),this._cleanUpResizing(e))},this._id=lo._FrameCounter++,this._ownerCanvas=t;const r=t.frameContainer;this.element=r.ownerDocument.createElement("div"),this.element.classList.add(Zr["frame-box"]),r.appendChild(this.element),this._headerElement=r.ownerDocument.createElement("div"),this._headerElement.classList.add(oo["frame-box-header"]),this._headerElement.addEventListener("dblclick",(()=>{this.isCollapsed=!this.isCollapsed})),this.element.appendChild(this._headerElement),this._borderElement=r.ownerDocument.createElement("div"),this._borderElement.classList.add(oo["frame-box-border"]),this.element.appendChild(this._borderElement),this.element.classList.add(oo.expanded);const o=r.ownerDocument.createElement("div");o.className=oo["right-handle"],this.element.appendChild(o),o.addEventListener("pointerdown",this._onRightHandlePointerDown);const a=r.ownerDocument.createElement("div");a.className=oo["left-handle"],this.element.appendChild(a),a.addEventListener("pointerdown",this._onLeftHandlePointerDown);const i=r.ownerDocument.createElement("div");i.className=oo["bottom-handle"],this.element.appendChild(i),i.addEventListener("pointerdown",this._onBottomHandlePointerDown);const l=r.ownerDocument.createElement("div");l.className=oo["top-handle"],this.element.appendChild(l),l.addEventListener("pointerdown",this._onTopHandlePointerDown);const c=r.ownerDocument.createElement("div");c.className=ao({"right-handle":!0,"top-right-corner-handle":!0},oo),this.element.appendChild(c),c.addEventListener("pointerdown",this._onTopRightHandlePointerDown);const u=r.ownerDocument.createElement("div");u.className=ao({"right-handle":!0,"bottom-right-corner-handle":!0},oo),this.element.appendChild(u),u.addEventListener("pointerdown",this._onBottomRightHandlePointerDown);const d=r.ownerDocument.createElement("div");d.className=ao({"left-handle":!0,"top-left-corner-handle":!0},oo),this.element.appendChild(d),d.addEventListener("pointerdown",this._onTopLeftHandlePointerDown);const p=r.ownerDocument.createElement("div");p.className=ao({"left-handle":!0,"bottom-left-corner-handle":!0},oo),this.element.appendChild(p),p.addEventListener("pointerdown",this._onBottomLeftHandlePointerDown),this._headerTextElement=r.ownerDocument.createElement("div"),this._headerTextElement.classList.add(oo["frame-box-header-title"]),this._headerElement.appendChild(this._headerTextElement),this._headerFocusElement=r.ownerDocument.createElement("div"),this._headerFocusElement.classList.add(oo["frame-box-header-focus"]),this._headerFocusElement.classList.add(oo["frame-box-header-button"]),this._headerFocusElement.title="Switch focus mode",this._headerFocusElement.ondragstart=()=>!1,this._headerFocusElement.addEventListener("pointerdown",(e=>{e.stopPropagation()})),this._headerFocusElement.addEventListener("pointerup",(e=>{e.stopPropagation(),this.switchFocusMode()})),this._headerFocusElement.innerHTML=this._focusSVG,this._headerElement.appendChild(this._headerFocusElement),this._headerCollapseElement=r.ownerDocument.createElement("div"),this._headerCollapseElement.classList.add(oo["frame-box-header-collapse"]),this._headerCollapseElement.classList.add(oo["frame-box-header-button"]),this._headerCollapseElement.title="Collapse",this._headerCollapseElement.ondragstart=()=>!1,this._headerCollapseElement.addEventListener("pointerdown",(e=>{this._headerCollapseElement.classList.add("down"),e.stopPropagation()})),this._headerCollapseElement.addEventListener("pointerup",(e=>{e.stopPropagation(),this._headerCollapseElement.classList.remove("down"),this.isCollapsed=!this.isCollapsed})),this._headerCollapseElement.innerHTML=this._collapseSVG,this._headerElement.appendChild(this._headerCollapseElement),this._headerCloseElement=r.ownerDocument.createElement("div"),this._headerCloseElement.classList.add(oo["frame-box-header-close"]),this._headerCloseElement.classList.add(oo["frame-box-header-button"]),this._headerCloseElement.title="Close",this._headerCloseElement.ondragstart=()=>!1,this._headerCloseElement.addEventListener("pointerdown",(e=>{e.stopPropagation()})),this._headerCloseElement.addEventListener("pointerup",(e=>{e.stopPropagation(),this.dispose()})),this._headerCloseElement.innerHTML=this._closeSVG,this._headerElement.appendChild(this._headerCloseElement),this._portContainer=r.ownerDocument.createElement("div"),this._portContainer.classList.add(oo["port-container"]),this.element.appendChild(this._portContainer),this._outputPortContainer=r.ownerDocument.createElement("div"),this._outputPortContainer.classList.add(Zr.outputsContainer),this._portContainer.appendChild(this._outputPortContainer),this._inputPortContainer=r.ownerDocument.createElement("div"),this._inputPortContainer.classList.add(Zr.inputsContainer,Zr.inputsContainerUp),this._portContainer.appendChild(this._inputPortContainer),this.name="Frame",this.color=s.Color3.FromInts(72,72,72),e&&(this.x=parseFloat(e.style.left.replace("px","")),this.y=parseFloat(e.style.top.replace("px","")),this.width=parseFloat(e.style.width.replace("px","")),this.height=parseFloat(e.style.height.replace("px","")),this.cleanAccumulation()),this._headerTextElement.addEventListener("pointerdown",(e=>this._onDown(e))),this._headerTextElement.addEventListener("pointerup",(e=>this._onUp(e))),this._headerTextElement.addEventListener("pointermove",(e=>this._onMove(e))),this._onSelectionChangedObserver=t.stateManager.onSelectionChangedObservable.add((()=>{-1!==this._ownerCanvas.selectedFrames.indexOf(this)?this._borderElement.classList.add(oo.selected):this._borderElement.classList.remove(oo.selected)})),t.stateManager.onSelectionBoxMoved.add((e=>{const n=this.element.getBoundingClientRect();!(e.right<n.left||e.left>n.right||e.bottom<n.top||e.top>n.bottom)&&t.stateManager.onSelectionChangedObservable.notifyObservers({selection:this,forceKeepSelection:!0,marqueeSelection:!0})})),this._onGraphNodeRemovalObserver=t.stateManager.onGraphNodeRemovalObservable.add((e=>{const t=this._nodes.indexOf(e);-1!==t&&(e.enclosingFrameId=-1,this._nodes.splice(t,1))})),this._onExposePortOnFrameObserver=t.stateManager.onExposePortOnFrameObservable.add((e=>{-1!==this.nodes.indexOf(e)&&this.redrawFramePorts()})),this._commentsElement=document.createElement("div"),this._commentsElement.className=oo["frame-comments"],this._commentsElement.style.color="white",this._commentsElement.style.fontSize="16px";const h=document.createElement("span");h.className=oo["frame-comment-span"],this._commentsElement.appendChild(h),this.element.appendChild(this._commentsElement),n||this.refresh()}switchFocusMode(){if(this._isFocused){this._isFocused=!1;for(const e of this._ownerCanvas.nodes)-1===this._nodes.indexOf(e)&&(e.rootElement.style.transition="",e.rootElement.style.opacity="",e.rootElement.style.pointerEvents="");for(const e of this._ownerCanvas.links)e.path.style.transition="",e.path.style.opacity="",e.selectionPath.style.pointerEvents="";for(const e of this._ownerCanvas.frames)e!==this&&(e.element.style.transition="",e.element.style.opacity="",e.element.style.pointerEvents="")}else{this._isFocused=!0;for(const e of this._ownerCanvas.nodes)-1===this._nodes.indexOf(e)&&(e.rootElement.style.transition="opacity 0.5s",e.rootElement.style.opacity="0.05",e.rootElement.style.pointerEvents="none");for(const e of this._ownerCanvas.links)-1!==this._nodes.indexOf(e.nodeA)&&-1!==this._nodes.indexOf(e.nodeB)||(e.path.style.transition="opacity 0.5s",e.path.style.opacity="0.3",e.selectionPath.style.pointerEvents="none"),-1===this._nodes.indexOf(e.nodeA)&&-1===this._nodes.indexOf(e.nodeB)&&(e.path.style.transition="opacity 0.5s",e.path.style.opacity="0.05",e.selectionPath.style.pointerEvents="none");for(const e of this._ownerCanvas.frames)e!==this&&(e.element.style.transition="opacity 0.5s",e.element.style.opacity="0.05",e.element.style.pointerEvents="none")}}refresh(){this._isFocused||(this._nodes=[],this._ownerCanvas.stateManager.onFrameCreatedObservable.notifyObservers(this))}addNode(e){-1===this.nodes.indexOf(e)&&this.nodes.push(e)}removeNode(e){const t=this.nodes.indexOf(e);t>-1&&(e.enclosingFrameId=-1,this.nodes.splice(t,1))}syncNode(e){this.isCollapsed||(e.isOverlappingFrame(this)?this.addNode(e):this.removeNode(e))}cleanAccumulation(){for(const e of this._nodes)e.cleanAccumulation();this.x=this._ownerCanvas.getGridPosition(this.x),this.y=this._ownerCanvas.getGridPosition(this.y)}_onDown(e){this._headerTextElement.setPointerCapture(e.pointerId);const t=this._ownerCanvas.selectedFrames.indexOf(this);-1===t?this._ownerCanvas.stateManager.onSelectionChangedObservable.notifyObservers({selection:this}):e.ctrlKey&&(this._ownerCanvas.selectedFrames.splice(t,1),this.element.classList.remove("selected")),this._ownerCanvas._frameIsMoving=!0,this._mouseStartPointX=e.clientX,this._mouseStartPointY=e.clientY,e.stopPropagation()}move(e,t,n=!0){const r=this.x,o=this.y;this.x=e,this.y=t;for(const e of this._nodes)e.x+=this.x-r,e.y+=this.y-o,n&&e.cleanAccumulation(!0)}_onUp(e){e.stopPropagation(),this.cleanAccumulation(),this._mouseStartPointX=null,this._mouseStartPointY=null,this._headerTextElement.releasePointerCapture(e.pointerId),this._ownerCanvas._frameIsMoving=!1}_moveFrame(e,t){this.x+=e,this.y+=t;for(const n of this._nodes)n.x+=e,n.y+=t}_onMove(e){if(null===this._mouseStartPointX||null===this._mouseStartPointY||e.ctrlKey||this._frameIsResizing)return;const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom,n=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;for(const e of this._ownerCanvas.selectedFrames)e._moveFrame(t,n);for(const e of this._ownerCanvas.selectedNodes)e.x+=t,e.y+=n;this._mouseStartPointX=e.clientX,this._mouseStartPointY=e.clientY,e.stopPropagation()}moveFramePortUp(e){let t;if(e.isInput){if(this._inputPortContainer.children.length<2)return;t=Array.from(this._inputPortContainer.childNodes);const n=this._frameInPorts.findIndex((t=>t===e));[this._exposedInPorts[n-1],this._exposedInPorts[n]]=[this._exposedInPorts[n],this._exposedInPorts[n-1]],this._movePortUp(t,e,this._frameInPorts)}else{if(this._outputPortContainer.children.length<2)return;t=Array.from(this._outputPortContainer.childNodes);const n=this._frameOutPorts.findIndex((t=>t===e));[this._exposedOutPorts[n-1],this._exposedOutPorts[n]]=[this._exposedOutPorts[n],this._exposedOutPorts[n-1]],this._movePortUp(t,e,this._frameOutPorts)}this.ports.forEach((e=>e.node._refreshLinks()))}_movePortUp(e,t,n){const r=e.findIndex((e=>e.dataset.framePortId===`${t.framePortId}`));if(0===r)return;const o=e[r],a=e[r-1];a.parentElement?.insertBefore(o,a);const i=n.findIndex((e=>e===t));[n[i-1],n[i]]=[n[i],n[i-1]],2==n.length?(n[1].framePortPosition=so.Bottom,n[0].framePortPosition=so.Top):1===r?(n[1].framePortPosition=so.Middle,n[0].framePortPosition=so.Top):i===e.length-1?(n[n.length-1].framePortPosition=so.Bottom,n[n.length-2].framePortPosition=so.Middle):t.framePortPosition=so.Middle}moveFramePortDown(e){let t;if(e.isInput){if(this._inputPortContainer.children.length<2)return;t=Array.from(this._inputPortContainer.childNodes);const n=this._frameInPorts.findIndex((t=>t===e));[this._exposedInPorts[n],this._exposedInPorts[n+1]]=[this._exposedInPorts[n+1],this._exposedInPorts[n]],this._movePortDown(t,e,this._frameInPorts)}else{if(this._outputPortContainer.children.length<2)return;t=Array.from(this._outputPortContainer.childNodes);const n=this._frameOutPorts.findIndex((t=>t===e));[this._exposedOutPorts[n],this._exposedOutPorts[n+1]]=[this._exposedOutPorts[n+1],this._exposedOutPorts[n]],this._movePortDown(t,e,this._frameOutPorts)}this.ports.forEach((e=>e.node._refreshLinks()))}_movePortDown(e,t,n){const r=e.findIndex((e=>e.dataset.framePortId===`${t.framePortId}`));if(r===e.length-1)return;const o=e[r],a=e[r+1];o.parentElement?.insertBefore(a,o);const i=n.findIndex((e=>e===t));[n[i],n[i+1]]=[n[i+1],n[i]],2==n.length?(n[0].framePortPosition=so.Top,n[1].framePortPosition=so.Bottom):i===e.length-2?(n[e.length-2].framePortPosition=so.Middle,n[e.length-1].framePortPosition=so.Bottom):0===i?(n[0].framePortPosition=so.Top,n[1].framePortPosition=so.Middle):t.framePortPosition=so.Middle}_isResizingTop(){return this._resizingDirection===io.Top||this._resizingDirection===io.TopRight||this._resizingDirection===io.TopLeft}_isResizingRight(){return this._resizingDirection===io.Right||this._resizingDirection===io.TopRight||this._resizingDirection===io.BottomRight}_isResizingBottom(){return this._resizingDirection===io.Bottom||this._resizingDirection===io.BottomLeft||this._resizingDirection===io.BottomRight}_isResizingLeft(){return this._resizingDirection===io.Left||this._resizingDirection===io.TopLeft||this._resizingDirection===io.BottomLeft}_expandLeft(e){const t=parseFloat(this.element.style.width.replace("px","")),n=parseFloat(this.element.style.left.replace("px",""));this.element.style.width=t-e+"px",this.element.style.left=`${n+e}px`,this._updateMinHeightWithComments()}_expandTop(e){const t=parseFloat(this.element.style.height.replace("px","")),n=parseFloat(this.element.style.top.replace("px",""));this.element.style.height=t-e+"px",this.element.style.top=`${n+e}px`}_expandRight(e,t){const n=parseFloat(this.element.style.width.replace("px",""));n+e>20&&(this._mouseStartPointX=t,this.element.style.width=`${n+e}px`),this._updateMinHeightWithComments()}_expandBottom(e){const t=parseFloat(this.element.style.height.replace("px",""));this.element.style.height=`${t+e}px`}dispose(){this._onSelectionChangedObserver&&this._ownerCanvas.stateManager.onSelectionChangedObservable.remove(this._onSelectionChangedObserver),this._onGraphNodeRemovalObserver&&this._ownerCanvas.stateManager.onGraphNodeRemovalObservable.remove(this._onGraphNodeRemovalObserver),this._onExposePortOnFrameObserver&&this._ownerCanvas.stateManager.onExposePortOnFrameObservable.remove(this._onExposePortOnFrameObserver),this.element.parentElement?.removeChild(this.element),this._ownerCanvas.frames.splice(this._ownerCanvas.frames.indexOf(this),1),this.onExpandStateChanged.clear()}_serializePortData(e){if(e.length>0)for(let t=0;t<e.length;++t)e[t]&&(e[t].exposedPortPosition=t)}serialize(e){return this._serializePortData(this._exposedInPorts),this._serializePortData(this._exposedOutPorts),{x:this._x,y:this._y,width:this._width,height:this._height,color:this._color.asArray(),name:this.name,isCollapsed:!e||this.isCollapsed,blocks:this.nodes.map((e=>e.content.uniqueId)),comments:this._comments}}export(){const e=this._ownerCanvas.stateManager,t=e.exportData(e.data,this);H.DownloadAsFile(e.hostDocument,t,this._name+".json")}adjustPorts(){for(const e of this.nodes){for(const t of e.outputPorts)t.exposedOnFrame&&-1!==t.exposedPortPosition&&(this._exposedOutPorts[t.exposedPortPosition]=t);for(const t of e.inputPorts)t.exposedOnFrame&&-1!==t.exposedPortPosition&&(this._exposedInPorts[t.exposedPortPosition]=t)}}static Parse(e,t,n){const r=new lo(null,t,!0),o=!!e.isCollapsed;if(r.x=e.x,r.y=e.y,r.width=e.width,r.height=e.height,r.name=e.name,r.color=s.Color3.FromArray(e.color),r.comments=e.comments,e.blocks&&n)for(const o of e.blocks){const e=n[o],a=t.nodes.filter((t=>t.content.uniqueId===e));a.length&&(r.nodes.push(a[0]),a[0].enclosingFrameId=r.id)}else r.refresh();if(r.adjustPorts(),r.isCollapsed=o,o){t._frameIsMoving=!0,r._moveFrame(-(r.width-r._collapsedWidth)/2,0);const n=e.x-r.x;r._moveFrame(n,0),r.cleanAccumulation();for(const e of r.nodes)e.refresh();t._frameIsMoving=!1}return r}}lo._FrameCounter=0,lo._FramePortCounter=0;class co extends a.Component{constructor(e){super(e),this.state={port:this.props.frameNodePort},this._onSelectionChangedObserver=this.props.stateManager.onSelectionChangedObservable.add((e=>{const{selection:t}=e||{};$r(t)&&(t.port.onFramePortPositionChangedObservable.clear(),this._onFramePortPositionChangedObserver=t.port.onFramePortPositionChangedObservable.add((e=>{this.setState({port:e})})),this.setState({port:t.port}))})),this._onFramePortPositionChangedObserver=this.props.frameNodePort.onFramePortPositionChangedObservable.add((e=>{this.setState({port:e})}))}componentWillUnmount(){this.props.frameNodePort.onFramePortPositionChangedObservable.remove(this._onFramePortPositionChangedObserver),this.props.stateManager.onSelectionChangedObservable.remove(this._onSelectionChangedObserver)}render(){return(0,l.jsxs)("div",{id:"propertyTab",children:[(0,l.jsxs)("div",{id:"header",children:[(0,l.jsx)("img",{id:"logo",src:"https://www.babylonjs.com/Assets/logo-babylonjs-social-twitter.png"}),(0,l.jsx)("div",{id:"title",children:"NODE MATERIAL EDITOR"})]}),(0,l.jsx)("div",{children:(0,l.jsxs)(O,{title:"GENERAL",children:[(0,l.jsx)(Vr,{label:"Port Name",lockObject:this.props.stateManager.lockObject,propertyName:"portName",target:this.props.frameNodePort}),this.props.frameNodePort.framePortPosition!==so.Top&&(0,l.jsx)(Gr,{label:"Move Port Up",onClick:()=>{this.props.frame.moveFramePortUp(this.props.frameNodePort)}}),this.props.frameNodePort.framePortPosition!==so.Bottom&&(0,l.jsx)(Gr,{label:"Move Port Down",onClick:()=>{this.props.frame.moveFramePortDown(this.props.frameNodePort)}})]})})]})}}class uo extends a.Component{constructor(e){super(e)}onLink(){this.props.url?window.open(this.props.url,"_blank"):this.props.onLink&&this.props.onLink()}renderContent(){return this.props.ignoreValue?null:this.props.onLink||this.props.url?(0,l.jsx)("div",{className:"link-value",title:this.props.tooltip??this.props.label??"",onClick:()=>this.onLink(),children:this.props.url?"doc":this.props.value||"no name"}):(0,l.jsx)("div",{className:"value",title:this.props.tooltip??this.props.label??"",style:{color:this.props.color?this.props.color:""},children:this.props.value||"no name"})}render(){return(0,l.jsxs)("div",{className:this.props.underline?"textLine underline":"textLine"+(this.props.additionalClass?" "+this.props.additionalClass:""),children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,className:"icon"}),(0,l.jsx)("div",{className:"label",title:this.props.tooltip??this.props.label??"",children:this.props.label??""}),this.renderContent()]})}}class po extends a.Component{constructor(e){super(e)}toggleExposeOnFrame(e){this.props.nodePort.exposedOnFrame=e,this.props.stateManager.onExposePortOnFrameObservable.notifyObservers(this.props.nodePort.node)}render(){const e=this.props.nodePort.portData.data,t=[];for(const n of e.acceptedConnectionPointTypes){const e=s.NodeMaterialBlockConnectionPointTypes[n];e&&t.push(e)}const n=this.props.nodePort.hasLabel()?(0,l.jsxs)(l.Fragment,{children:[this.props.nodePort.hasLabel()&&(0,l.jsx)(Vr,{lockObject:this.props.stateManager.lockObject,label:"Port Label",propertyName:"portName",target:this.props.nodePort}),(0,l.jsx)(uo,{label:"Type",value:s.NodeMaterialBlockConnectionPointTypes[e.type]}),t.length>0&&t.map(((e,t)=>(0,l.jsx)(uo,{label:0===t?"Accepted Types":"",value:e}))),-1!==this.props.nodePort.node.enclosingFrameId&&(0,l.jsx)(Z,{label:"Expose Port on Frame",target:this.props.nodePort,isSelected:()=>this.props.nodePort.exposedOnFrame,onSelect:e=>this.toggleExposeOnFrame(e),propertyName:"exposedOnFrame",disabled:this.props.nodePort.disabled})]}):(0,l.jsx)(uo,{label:"This node is a constant input node and cannot be exposed to the frame.",value:" "});return(0,l.jsxs)("div",{id:"propertyTab",children:[(0,l.jsxs)("div",{id:"header",children:[(0,l.jsx)("img",{id:"logo",src:"https://www.babylonjs.com/Assets/logo-babylonjs-social-twitter.png"}),(0,l.jsx)("div",{id:"title",children:"NODE MATERIAL EDITOR"})]}),(0,l.jsx)("div",{children:(0,l.jsx)(O,{title:"GENERAL",children:n})})]})}}class ho{}ho.RegisteredControls={};class Ao{}Ao.RegisteredControls={};var fo=r(9319),go={};go.styleTagTransform=v(),go.setAttributes=g(),go.insert=A().bind(null,"head"),go.domAPI=p(),go.insertStyleElement=C(),u()(fo.A,go);const mo=fo.A&&fo.A.locals?fo.A.locals:void 0;function Co(e,t,n,r){r?.onValidation&&!r?.onValidation(e,n)||(r&&!r.update||t.onUpdateRequiredObservable.notifyObservers(e),r&&!r.rebuild||t.onRebuildRequiredObservable.notifyObservers(),r?.activatePreviewCommand&&t.onPreviewCommandActivated.notifyObservers(!0),!t.getScene)||r?.callback?.(t.getScene(),e)&&t.onRebuildRequiredObservable.notifyObservers()}class bo{addClassToVisual(e){this._visual.classList.add(e)}removeClassFromVisual(e){this._visual.classList.remove(e)}get isCollapsed(){return this._isCollapsed}get isVisible(){return this._isVisible}set isVisible(e){this._isVisible=e,e?(this._visual.classList.remove(Zr.hidden),this._upateNodePortNames()):this._visual.classList.add(Zr.hidden);for(const t of this._links)t.isVisible=e;this._refreshLinks()}_upateNodePortNames(){for(const e of this._inputPorts.concat(this._outputPorts))e.hasLabel()&&(e.portName=e.portData.name)}get outputPorts(){return this._outputPorts}get inputPorts(){return this._inputPorts}get links(){return this._links}get gridAlignedX(){return this._gridAlignedX}get gridAlignedY(){return this._gridAlignedY}get x(){return this._x}set x(e){this._x!==e&&(this._x=e,this._gridAlignedX=this._ownerCanvas.getGridPosition(e),this._visual.style.left=`${this._gridAlignedX}px`,this._refreshLinks(),this._refreshFrames())}get y(){return this._y}set y(e){this._y!==e&&(this._y=e,this._gridAlignedY=this._ownerCanvas.getGridPosition(e),this._visual.style.top=`${this._gridAlignedY}px`,this._refreshLinks(),this._refreshFrames())}get width(){return this._visual.clientWidth}get height(){return this._visual.clientHeight}get id(){return this.content.uniqueId}get name(){return this.content.name}get isSelected(){return this._isSelected}get enclosingFrameId(){return this._enclosingFrameId}set enclosingFrameId(e){this._enclosingFrameId=e}set isSelected(e){this.setIsSelected(e,!1)}setIsSelected(e,t){if(this._isSelected!==e)if(this._isSelected=e,e)this._stateManager.onSelectionChangedObservable.notifyObservers({selection:this,marqueeSelection:t});else{this._visual.classList.remove(mo.selected);const e=this._ownerCanvas.selectedNodes.indexOf(this);e>-1&&this._ownerCanvas.selectedNodes.splice(e,1)}}get rootElement(){return this._visual}constructor(e,t){this.content=e,this._inputPorts=[],this._outputPorts=[],this._links=[],this._x=0,this._y=0,this._gridAlignedX=0,this._gridAlignedY=0,this._mouseStartPointX=null,this._mouseStartPointY=null,this._displayManager=null,this._isVisible=!0,this._enclosingFrameId=-1,this._visualPropertiesRefresh=[],this._isCollapsed=!1,this._stateManager=t,this._onSelectionChangedObserver=this._stateManager.onSelectionChangedObservable.add((e=>{const{selection:t}=e||{};t===this?(this._visual.classList.add(mo.selected),this._displayManager&&this._displayManager.onSelectionChanged&&this._displayManager.onSelectionChanged(this.content,t.content,this._stateManager)):-1===this._ownerCanvas.selectedNodes.indexOf(this)&&(this._visual.classList.remove(mo.selected),this._displayManager&&this._displayManager.onSelectionChanged&&this._displayManager.onSelectionChanged(this.content,t&&t.content?t.content:null,this._stateManager))})),this._onHighlightNodeObserver=this._stateManager.onHighlightNodeObservable.add((e=>{e.data===this.content.data&&(e.active?this._visual.classList.add(mo.highlighted):this._visual.classList.remove(mo.highlighted))})),this._onUpdateRequiredObserver=this._stateManager.onUpdateRequiredObservable.add((e=>{e===this.content.data&&this.refresh()})),this._onSelectionBoxMovedObserver=this._stateManager.onSelectionBoxMoved.add((e=>{const t=this._visual.getBoundingClientRect(),n=!(e.right<t.left||e.left>t.right||e.bottom<t.top||e.top>t.bottom);this.setIsSelected(n,!0)})),this._onFrameCreatedObserver=this._stateManager.onFrameCreatedObservable.add((e=>{this._ownerCanvas.frames.some((e=>-1!==e.nodes.indexOf(this)))||this.isOverlappingFrame(e)&&e.nodes.push(this)}))}isOverlappingFrame(e){const t=this._visual.getBoundingClientRect(),n=e.element.getBoundingClientRect();n.width-=5,n.height-=5;const r=!(n.right<t.left||n.left>t.right||n.bottom<t.top||n.top>t.bottom);return r&&(this.enclosingFrameId=e.id),r}getPortForPortData(e){for(const t of this._inputPorts){const n=t.portData;if(n===e||n.ownerData===e.ownerData&&n.internalName===e.internalName)return t}for(const t of this._outputPorts){const n=t.portData;if(n===e||n.ownerData===e.ownerData&&n.internalName===e.internalName)return t}return null}getPortDataForPortDataContent(e){for(const t of this._inputPorts){const n=t.portData;if(n.data===e)return n}for(const t of this._outputPorts){const n=t.portData;if(n.data===e)return n}return null}getLinksForPortDataContent(e){return this._links.filter((t=>t.portA.portData.data===e||t.portB.portData.data===e))}getLinksForPortData(e){return this._links.filter((t=>t.portA.portData===e||t.portB.portData===e))}_refreshFrames(){if(!this._ownerCanvas._frameIsMoving&&!this._ownerCanvas._isLoading)for(const e of this._ownerCanvas.frames)e.syncNode(this)}_refreshLinks(){if(!this._ownerCanvas._isLoading)for(const e of this._links)e.update()}refresh(){if(this._displayManager){this._header.innerHTML=this._displayManager.getHeaderText(this.content),this._displayManager.updatePreviewContent(this.content,this._content),this._visual.style.background=this._displayManager.getBackgroundColor(this.content);const e=this._displayManager.getHeaderClass(this.content);this._header.classList.value=mo.header,this._headerContainer.classList.value=mo["header-container"],e&&this._headerContainer.classList.add(e),this._displayManager.updateFullVisualContent&&this._displayManager.updateFullVisualContent(this.content,{visual:this._visual,header:this._header,headerContainer:this._headerContainer,headerIcon:this._headerIcon,headerIconImg:this._headerIconImg,comments:this._comments,connections:this._connections,inputsContainer:this._inputsContainer,outputsContainer:this._outputsContainer,content:this._content,selectionBorder:this._selectionBorder})}else this._header.innerHTML=this.content.name;for(const e of this._visualPropertiesRefresh)e();for(const e of this._inputPorts)e.refresh();for(const e of this._outputPorts)e.refresh();if(-1!==this.enclosingFrameId){const e=this._ownerCanvas.frames.findIndex((e=>e.id===this.enclosingFrameId));e>=0&&this._ownerCanvas.frames[e].isCollapsed&&this._ownerCanvas.frames[e].redrawFramePorts()}this._comments.innerHTML=this.content.comments||"",this._comments.title=this.content.comments||"";const e=this.content.executionTime||0;this._executionTime.innerHTML=e>=0?`${e.toFixed(2)} ms`:"",this.content.prepareHeaderIcon(this._headerIcon,this._headerIconImg)}_onDown(e){if(!e.target||"IMG"!==e.target.nodeName||!e.target.draggable){-1===this._ownerCanvas.selectedNodes.indexOf(this)?this._stateManager.onSelectionChangedObservable.notifyObservers({selection:this}):e.ctrlKey&&this.setIsSelected(!1,!1),e.stopPropagation();for(const e of this._ownerCanvas.selectedNodes)e.cleanAccumulation();this._mouseStartPointX=e.clientX,this._mouseStartPointY=e.clientY,this._visual.setPointerCapture(e.pointerId)}}cleanAccumulation(e=!1){this.x=this._ownerCanvas.getGridPosition(this.x,e),this.y=this._ownerCanvas.getGridPosition(this.y,e)}_onUp(e){e.stopPropagation();for(const e of this._ownerCanvas.selectedNodes)e.cleanAccumulation();if(this._mouseStartPointX=null,this._mouseStartPointY=null,this._visual.releasePointerCapture(e.pointerId),!this._ownerCanvas._targetLinkCandidate)return void this._stateManager.onNodeMovedObservable.notifyObservers(this);const t=[],n=[],r=[],o=[],a=this._ownerCanvas._targetLinkCandidate.nodeA,i=this._ownerCanvas._targetLinkCandidate.nodeB,s=this._ownerCanvas._targetLinkCandidate.portA.portData,l=this._ownerCanvas._targetLinkCandidate.portB.portData;this._ownerCanvas._targetLinkCandidate.dispose(),this._ownerCanvas._targetLinkCandidate=null,r.push(...this.content.inputs.filter((e=>!e.isConnected))),o.push(...this.content.outputs),t.push(...a.content.outputs),n.push(...i.content.inputs.filter((e=>!e.isConnected)));const c=t.indexOf(s),u=n.indexOf(l);c>0&&(t.splice(c,1),t.splice(0,0,s)),u>0&&(n.splice(u,1),n.splice(0,0,l)),this._ownerCanvas.automaticRewire(t,r,!0),this._ownerCanvas.automaticRewire(o,n,!0),this._stateManager.onRebuildRequiredObservable.notifyObservers(),this._stateManager.onNodeMovedObservable.notifyObservers(this)}_onMove(e){if(this._ownerCanvas._targetLinkCandidate=null,null===this._mouseStartPointX||null===this._mouseStartPointY||e.ctrlKey)return;const t=(e.clientX-this._mouseStartPointX)/this._ownerCanvas.zoom,n=(e.clientY-this._mouseStartPointY)/this._ownerCanvas.zoom;for(const e of this._ownerCanvas.selectedNodes)e.x+=t,e.y+=n;for(const e of this._ownerCanvas.selectedFrames)e._moveFrame(t,n);if(this._mouseStartPointX=e.clientX,this._mouseStartPointY=e.clientY,e.stopPropagation(),this._inputPorts.some((e=>e.portData.isConnected))||this._outputPorts.some((e=>e.portData.hasEndpoints)))return;const r=this._visual.getBoundingClientRect();for(const e of this._ownerCanvas.links)e.portA.node!==this&&e.portB.node!==this?(e.isTargetCandidate=e.intersectsWith(r),e.isTargetCandidate&&this._ownerCanvas._targetLinkCandidate!==e&&(this._ownerCanvas._targetLinkCandidate&&(this._ownerCanvas._targetLinkCandidate.isTargetCandidate=!1),this._ownerCanvas._targetLinkCandidate=e)):e.isTargetCandidate=!1}renderProperties(){let e=ho.RegisteredControls[this.content.getClassName()];return e||(e=ho.DefaultControl),a.createElement(e,{stateManager:this._stateManager,nodeData:this.content})}_forceRebuild(e,t,n){for(const e of this._visualPropertiesRefresh)e();Co(e,this._stateManager,t,n)}collapse(){this._headerCollapse.classList.add(mo.collapsed),this._inputPorts.filter((e=>!e.portData.isConnected)).forEach((e=>{e.container.classList.add(Zr.hidden)})),this._outputPorts.filter((e=>!e.portData.isConnected)).forEach((e=>{e.container.classList.add(Zr.hidden)})),this._refreshLinks()}expand(){this._headerCollapse.classList.remove(mo.collapsed),this._inputPorts.filter((e=>!e.portData.isConnected)).forEach((e=>{e.container.classList.remove(Zr.hidden)})),this._outputPorts.filter((e=>!e.portData.isConnected)).forEach((e=>{e.container.classList.remove(Zr.hidden)})),this._refreshLinks()}appendVisual(e,t){this._ownerCanvas=t;const n=Ao.RegisteredControls[this.content.getClassName()];n&&(this._displayManager=new n),this._visual=e.ownerDocument.createElement("div"),this._visual.classList.add(mo.visual),this._visual.addEventListener("pointerdown",(e=>this._onDown(e))),this._visual.addEventListener("pointerup",(e=>this._onUp(e))),this._visual.addEventListener("pointermove",(e=>this._onMove(e))),this._headerContainer=e.ownerDocument.createElement("div"),this._headerContainer.classList.add(mo["header-container"]),this._visual.appendChild(this._headerContainer),this._header=e.ownerDocument.createElement("div"),this._header.classList.add(mo.header),this._headerContainer.appendChild(this._header),this._headerIcon=e.ownerDocument.createElement("div"),this._headerIcon.classList.add(mo.headerIcon),this._headerIconImg=e.ownerDocument.createElement("img"),this._headerIconImg.draggable=!1,this._headerIcon.appendChild(this._headerIconImg),this._headerContainer.appendChild(this._headerIcon),(this.content.inputs.length>1||this.content.outputs.length>1)&&(this._headerCollapse=e.ownerDocument.createElement("div"),this._headerCollapse.classList.add(mo.headerCollapse),this._headerCollapseImg=e.ownerDocument.createElement("img"),this._headerCollapseImg.src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgdmlld0JveD0iMCAwIDQwIDQwIj48cGF0aCBkPSJNMTQuNDUsMThhMSwxLDAsMCwxLC43Ni0xLjY5aDkuNThBMSwxLDAsMCwxLDI1LjU1LDE4bC00LjQ4LDUuMTJhMS40MiwxLjQyLDAsMCwxLTIuMTQsMFptMS4yMS0uNDcsNC4xOSw0Ljc5YS4yLjIsMCwwLDAsLjMsMGw0LjE5LTQuNzlaIiBzdHlsZT0iZmlsbDojZmZmIi8+PC9zdmc+",this._headerCollapseImg.draggable=!1,this._headerCollapse.appendChild(this._headerCollapseImg),this._headerContainer.appendChild(this._headerCollapse),this._headerCollapse.addEventListener("pointerup",(e=>e.stopPropagation())),this._headerCollapse.addEventListener("pointermove",(e=>e.stopPropagation())),this._headerCollapse.addEventListener("pointerdown",(e=>{this._isCollapsed=!this._isCollapsed,this._isCollapsed?this.collapse():this.expand(),e.stopPropagation()}))),this._selectionBorder=e.ownerDocument.createElement("div"),this._selectionBorder.classList.add("selection-border"),this._visual.appendChild(this._selectionBorder),this._connections=e.ownerDocument.createElement("div"),this._connections.classList.add(mo.connections),this._visual.appendChild(this._connections),this._optionsContainer=e.ownerDocument.createElement("div"),this._optionsContainer.classList.add(mo.optionsContainer),this._connections.appendChild(this._optionsContainer),this._inputsContainer=e.ownerDocument.createElement("div"),this._inputsContainer.classList.add(Zr.inputsContainer),this._connections.appendChild(this._inputsContainer),this._outputsContainer=e.ownerDocument.createElement("div"),this._outputsContainer.classList.add(Zr.outputsContainer),this._connections.appendChild(this._outputsContainer),this._content=e.ownerDocument.createElement("div"),this._content.classList.add(mo.content),this._visual.appendChild(this._content),e.appendChild(this._visual),this._comments=e.ownerDocument.createElement("div"),this._comments.classList.add(mo.comments),this._visual.appendChild(this._comments),this._executionTime=e.ownerDocument.createElement("div"),this._executionTime.classList.add(mo.executionTime),this._visual.appendChild(this._executionTime);let r=0;const o=this.content.data._propStore;if(o){const t=this.content.data,n=[];let a=Object.getPrototypeOf(t);for(;a;)n.push(a.constructor.name),a=Object.getPrototypeOf(a);for(const{propertyName:a,displayName:i,type:s,options:l,className:c}of o){if(!l||!l.embedded||-1===n.indexOf(c))continue;const o=e.ownerDocument.createElement("div");switch(o.addEventListener("pointerdown",(e=>e.stopPropagation())),o.addEventListener("pointerup",(e=>e.stopPropagation())),o.addEventListener("pointermove",(e=>e.stopPropagation())),this._optionsContainer.appendChild(o),s){case 0:{o.classList.add(mo.booleanContainer);const n=e.ownerDocument.createElement("input");n.type="checkbox",n.id="checkbox-"+r++,n.checked=t[a],this._visualPropertiesRefresh.push((()=>{n.checked=t[a]})),n.onchange=()=>{t[a]=!t[a],this._forceRebuild(t,a,l?.notifiers)},o.appendChild(n);const s=e.ownerDocument.createElement("label");s.innerText=i,s.htmlFor=n.id,o.appendChild(s);break}case 2:case 1:if(isNaN(l.min)||isNaN(l.max)||l.min===l.max){o.classList.add(mo.floatContainer);const n=e.ownerDocument.createElement("input");n.type="number",n.id="number-"+r++,this._visualPropertiesRefresh.push((()=>{n.value=t[a]})),n.onchange=()=>{t[a]=parseFloat(n.value),this._forceRebuild(t,a,l?.notifiers)},o.appendChild(n);const s=e.ownerDocument.createElement("div");s.innerText=i,o.appendChild(s);let c=!1;n.onpointerdown=e=>{c=!0,e.preventDefault()},n.onpointerup=e=>{n.hasPointerCapture(e.pointerId)?(n.releasePointerCapture(e.pointerId),c=!1,e.preventDefault()):(n.focus(),n.select())},n.onpointermove=e=>{c&&n.setPointerCapture(e.pointerId),n.hasPointerCapture(e.pointerId)&&(n.value=(parseFloat(n.value)+.01*e.movementX).toFixed(2),t[a]=parseFloat(n.value),this._forceRebuild(t,a,l?.notifiers),e.preventDefault())}}else{o.classList.add(mo.sliderContainer);const n=e.ownerDocument.createElement("label");o.appendChild(n);const c=e.ownerDocument.createElement("div");o.appendChild(c);const u=e.ownerDocument.createElement("input");u.type="range",u.id="slider-"+r++,u.step=2===s?"1":(Math.abs(l.max-l.min)/100).toString(),u.min=l.min.toString(),u.max=l.max.toString(),o.appendChild(u),n.innerText=i,n.htmlFor=u.id,this._visualPropertiesRefresh.push((()=>{u.value=t[a],c.innerText=t[a]})),u.oninput=()=>{t[a]=parseFloat(u.value),c.innerText=t[a],this._forceRebuild(t,a,l?.notifiers)}}break;case 4:{o.classList.add(mo.listContainer);const n=e.ownerDocument.createElement("div");n.classList.add(mo.select),o.appendChild(n);const r=e.ownerDocument.createElement("div");r.classList.add(mo.selectText),n.appendChild(r);const i=l.options;this._visualPropertiesRefresh.push((()=>{r.innerText=i[t[a]].label}));const s=e.ownerDocument.createElement("div");s.classList.add(mo.selectList),s.classList.add(Zr.hidden),n.appendChild(s);for(const n of i){const r=e.ownerDocument.createElement("div");r.classList.add(mo.option),r.innerText=n.label,r.onclick=()=>{t[a]=n.value,this._forceRebuild(t,a,l?.notifiers)},s.appendChild(r)}n.onclick=()=>{s.classList.toggle(Zr.hidden),n.classList.toggle(mo.activeNode),this._visual.classList.toggle(mo.topMost),this._stateManager.modalIsDisplayed=!this._stateManager.modalIsDisplayed},n.onpointerleave=()=>{s.classList.add(Zr.hidden),n.classList.remove(mo.activeNode),this._visual.classList.remove(mo.topMost),this._stateManager.modalIsDisplayed=!1}}}}}0===this._visualPropertiesRefresh.length&&this._inputsContainer.classList.add(Zr.inputsContainerUp);for(const e of this.content.inputs)this._inputPorts.push(Kr.CreatePortElement(e,this,this._inputsContainer,this._displayManager,this._stateManager));for(const e of this.content.outputs)this._outputPorts.push(Kr.CreatePortElement(e,this,this._outputsContainer,this._displayManager,this._stateManager));this.refresh(),this.content.refreshCallback=()=>{this.refresh()}}dispose(){this._displayManager&&this._displayManager.onDispose&&this._displayManager.onDispose(this.content,this._stateManager),this._stateManager.onGraphNodeRemovalObservable.notifyObservers(this),this._onSelectionChangedObserver&&this._stateManager.onSelectionChangedObservable.remove(this._onSelectionChangedObserver),this._onUpdateRequiredObserver&&this._stateManager.onUpdateRequiredObservable.remove(this._onUpdateRequiredObserver),this._onHighlightNodeObserver&&this._stateManager.onHighlightNodeObservable.remove(this._onHighlightNodeObserver),this._onSelectionBoxMovedObserver&&this._stateManager.onSelectionBoxMoved.remove(this._onSelectionBoxMovedObserver),this._visual.parentElement&&this._visual.parentElement.removeChild(this._visual),this._onFrameCreatedObserver&&this._stateManager.onFrameCreatedObservable.remove(this._onFrameCreatedObserver);for(const e of this._inputPorts)e.dispose();for(const e of this._outputPorts)e.dispose();const e=this._links.slice(0);for(const t of e)t.dispose();this.content.dispose()}}const vo=Number.MAX_SAFE_INTEGER;class yo extends a.Component{_remapValueIn(e){return this.props.allowNullValue&&null===e?vo:e}_remapValueOut(e){return this.props.allowNullValue&&e===vo?null:e}_getValue(e){return e.extractValue?e.extractValue(e.target):e.target&&e.propertyName?e.target[e.propertyName]:e.options[e.defaultIfNull||0]}constructor(e){super(e),this._localChange=!1,this.state={value:this._remapValueIn(this._getValue(e))}}shouldComponentUpdate(e,t){if(this._localChange)return this._localChange=!1,!0;const n=this._remapValueIn(e.extractValue?e.extractValue(this.props.target):e.target[e.propertyName]);return null!=n&&n!==t.value&&(t.value=n,!0)}raiseOnPropertyChanged(e,t){this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:e,initialValue:t,allowNullValue:this.props.allowNullValue})}setValue(e){this.setState({value:e})}updateValue(e){const t=this.props.valuesAreStrings?e:parseInt(e);this._localChange=!0;const n=this.props.extractValue?this.props.extractValue(this.props.target):this.props.target[this.props.propertyName];this.props.noDirectUpdate||(this.props.target[this.props.propertyName]=this._remapValueOut(t)),this.setState({value:t}),this.props.onSelect&&this.props.onSelect(t);const r=this.props.extractValue?this.props.extractValue(this.props.target):this.props.target[this.props.propertyName];this.raiseOnPropertyChanged(r,n)}onCopyClick(){if(this.props&&this.props.target){const{className:e,babylonNamespace:t}=wr(this.props.target);xr("globalThis.debugNode."+this.props.propertyName+" = "+(this.props.extractValue?this.props.extractValue(this.props.target):this.props.target[this.props.propertyName])+";// (debugNode as "+t+e+")")}else xr("undefined")}render(){return(0,l.jsxs)("div",{className:"listLine"+(this.props.className?" "+this.props.className:""),children:[this.props.icon&&(0,l.jsx)("img",{src:this.props.icon,title:this.props.iconLabel,alt:this.props.iconLabel,color:"black",className:"icon"}),(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label}),(0,l.jsx)("div",{className:"options",children:(0,l.jsx)("select",{onChange:e=>this.updateValue(e.target.value),value:this.state.value??"",children:this.props.options.map(((e,t)=>(0,l.jsx)("option",{selected:e.selected,value:e.value,title:e.label,children:e.label},e.label+t)))})}),(0,l.jsx)("div",{className:"copy hoverIcon",onClick:()=>this.onCopyClick(),title:"Copy to clipboard",children:(0,l.jsx)("img",{src:Nr,alt:"Copy"})})]})}}class xo extends a.Component{constructor(e){super(e),this.state={currentNode:null,currentFrame:null,currentFrameNodePort:null,currentNodePort:null,uploadInProgress:!1},this._modeSelect=a.createRef()}componentDidMount(){this.props.globalState.stateManager.onSelectionChangedObservable.add((e=>{const{selection:t}=e||{};t instanceof bo?this.setState({currentNode:t,currentFrame:null,currentFrameNodePort:null,currentNodePort:null}):t instanceof lo?this.setState({currentNode:null,currentFrame:t,currentFrameNodePort:null,currentNodePort:null}):$r(t)?this.setState({currentNode:null,currentFrame:t.frame,currentFrameNodePort:t.port,currentNodePort:null}):t instanceof Kr?this.setState({currentNode:null,currentFrame:null,currentFrameNodePort:null,currentNodePort:t}):this.setState({currentNode:null,currentFrame:null,currentFrameNodePort:null,currentNodePort:null})})),this._onBuiltObserver=this.props.globalState.onBuiltObservable.add((()=>{this.forceUpdate()}))}componentWillUnmount(){this.props.globalState.onBuiltObservable.remove(this._onBuiltObserver)}processInputBlockUpdate(e){this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(e),e.isConstant&&this.props.globalState.stateManager.onRebuildRequiredObservable.notifyObservers()}renderInputBlock(e){switch(e.type){case s.NodeMaterialBlockConnectionPointTypes.Float:{const t=isNaN(e.min)||isNaN(e.max)||e.min===e.max;return(0,l.jsxs)("div",{children:[e.isBoolean&&(0,l.jsx)(Z,{label:e.name,target:e,propertyName:"value",onValueChanged:()=>{this.processInputBlockUpdate(e)}},e.uniqueId),!e.isBoolean&&t&&(0,l.jsx)(_r,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId),!e.isBoolean&&!t&&(0,l.jsx)(Sr,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",step:(e.max-e.min)/100,minimum:e.min,maximum:e.max,onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId)]},e.uniqueId)}case s.NodeMaterialBlockConnectionPointTypes.Color3:return(0,l.jsx)(Rr,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Color4:return(0,l.jsx)(Ur,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Vector2:return(0,l.jsx)(br,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Vector3:return(0,l.jsx)(Lr,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId);case s.NodeMaterialBlockConnectionPointTypes.Vector4:return(0,l.jsx)(Br,{lockObject:this.props.lockObject,label:e.name,target:e,propertyName:"value",onChange:()=>this.processInputBlockUpdate(e)},e.uniqueId)}return null}load(e){s.Tools.ReadFile(e,(e=>{const t=new TextDecoder("utf-8");E.Deserialize(JSON.parse(t.decode(e)),this.props.globalState),this.changeMode(this.props.globalState.nodeMaterial.mode,!0,!1)||this.props.globalState.onResetRequiredObservable.notifyObservers(!1),this.props.globalState.stateManager.onSelectionChangedObservable.notifyObservers(null),this.props.globalState.onClearUndoStack.notifyObservers()}),void 0,!0)}loadFrame(e){s.Tools.ReadFile(e,(e=>{const t=new TextDecoder("utf-8"),n=JSON.parse(t.decode(e));E.AddFrameToMaterial(n,this.props.globalState,this.props.globalState.nodeMaterial)}),void 0,!0)}save(){const e=E.Serialize(this.props.globalState.nodeMaterial,this.props.globalState);H.DownloadAsFile(this.props.globalState.hostDocument,e,"nodeMaterial.json")}customSave(){this.setState({uploadInProgress:!0}),this.props.globalState.onLogRequiredObservable.notifyObservers(new w("Saving your material to Babylon.js snippet server...",!1)),this.props.globalState.customSave.action(E.Serialize(this.props.globalState.nodeMaterial,this.props.globalState)).then((()=>{this.props.globalState.onLogRequiredObservable.notifyObservers(new w("Material saved successfully",!1)),this.setState({uploadInProgress:!1})})).catch((e=>{this.props.globalState.onLogRequiredObservable.notifyObservers(new w(e,!0)),this.setState({uploadInProgress:!1})}))}saveToSnippetServer(){const e=this.props.globalState.nodeMaterial,t=new XMLHttpRequest,n=E.Serialize(e,this.props.globalState);t.onreadystatechange=()=>{if(4==t.readyState)if(200==t.status){const n=JSON.parse(t.responseText),r=e.snippetId;e.snippetId=n.id,n.version&&"0"!=n.version&&(e.snippetId+="#"+n.version),this.forceUpdate(),navigator.clipboard&&navigator.clipboard.writeText(e.snippetId);const o=window;o.Playground&&r&&o.Playground.onRequestCodeChangeObservable.notifyObservers({regex:new RegExp(r,"g"),replace:e.snippetId}),this.props.globalState.hostDocument.defaultView.alert("NodeMaterial saved with ID: "+e.snippetId+" (please note that the id was also saved to your clipboard)")}else this.props.globalState.hostDocument.defaultView.alert(`Unable to save your node material. It may be too large (${(r.payload.length/1024).toFixed(2)} KB) because of embedded textures. Please reduce texture sizes or point to a specific url instead of embedding them and try again.`)},t.open("POST",s.NodeMaterial.SnippetUrl+(e.snippetId?"/"+e.snippetId:""),!0),t.setRequestHeader("Content-Type","application/json");const r={payload:JSON.stringify({nodeMaterial:n}),name:"",description:"",tags:""};t.send(JSON.stringify(r))}loadFromSnippet(){const e=this.props.globalState.nodeMaterial,t=e.getScene(),n=this.props.globalState.hostDocument.defaultView.prompt("Please enter the snippet ID to use");n&&(this.props.globalState.stateManager.onSelectionChangedObservable.notifyObservers(null),s.NodeMaterial.ParseFromSnippetAsync(n,t,"",e).then((()=>{e.build(),this.changeMode(this.props.globalState.nodeMaterial.mode,!0,!1)||this.props.globalState.onResetRequiredObservable.notifyObservers(!0),this.props.globalState.onClearUndoStack.notifyObservers()})).catch((e=>{this.props.globalState.hostDocument.defaultView.alert("Unable to load your node material: "+e)})))}changeMode(e,n=!1,r=!0){if(this.props.globalState.mode===e)return!1;if(!n&&!this.props.globalState.hostDocument.defaultView.confirm("Are your sure? You will lose your current changes (if any) if they are not saved!"))return this._modeSelect.current?.setValue(this.props.globalState.mode),!1;if(n&&this._modeSelect.current?.setValue(e),r)switch(e){case s.NodeMaterialModes.Material:this.props.globalState.nodeMaterial.setToDefault();break;case s.NodeMaterialModes.PostProcess:this.props.globalState.nodeMaterial.setToDefaultPostProcess();break;case s.NodeMaterialModes.Particle:this.props.globalState.nodeMaterial.setToDefaultParticle();break;case s.NodeMaterialModes.ProceduralTexture:this.props.globalState.nodeMaterial.setToDefaultProceduralTexture();break;case s.NodeMaterialModes.GaussianSplatting:(0,s.SetToDefaultGaussianSplatting)(this.props.globalState.nodeMaterial)}switch(e){case s.NodeMaterialModes.Material:this.props.globalState.previewType=t.Sphere;break;case s.NodeMaterialModes.Particle:this.props.globalState.previewType=t.Bubbles;break;case s.NodeMaterialModes.GaussianSplatting:this.props.globalState.previewType=t.BricksSkull}return this.props.globalState.listOfCustomPreviewFiles=[],this.props.globalState.previewFile=void 0,s.DataStorage.WriteNumber("PreviewType",this.props.globalState.previewType),this.props.globalState.mode=e,this.props.globalState.onResetRequiredObservable.notifyObservers(!0),this.props.globalState.onClearUndoStack.notifyObservers(),this.props.globalState.envFile=void 0,s.DataStorage.WriteNumber("EnvType",this.props.globalState.envType),!0}render(){if(this.state.currentNode)return(0,l.jsxs)("div",{id:"propertyTab",children:[(0,l.jsxs)("div",{id:"header",children:[(0,l.jsx)("img",{id:"logo",src:"https://www.babylonjs.com/Assets/logo-babylonjs-social-twitter.png"}),(0,l.jsx)("div",{id:"title",children:"NODE MATERIAL EDITOR"})]}),this.state.currentNode?.renderProperties()||this.state.currentNodePort?.node.renderProperties()]});if(this.state.currentFrameNodePort&&this.state.currentFrame)return(0,l.jsx)(co,{globalState:this.props.globalState,stateManager:this.props.globalState.stateManager,frame:this.state.currentFrame,frameNodePort:this.state.currentFrameNodePort});if(this.state.currentNodePort)return(0,l.jsx)(po,{stateManager:this.props.globalState.stateManager,nodePort:this.state.currentNodePort});if(this.state.currentFrame)return(0,l.jsx)(Wr,{globalState:this.props.globalState,frame:this.state.currentFrame});const e=s.DataStorage.ReadNumber("GridSize",20),t=[{label:"Material",value:s.NodeMaterialModes.Material},{label:"Post Process",value:s.NodeMaterialModes.PostProcess},{label:"Particle",value:s.NodeMaterialModes.Particle},{label:"Procedural",value:s.NodeMaterialModes.ProceduralTexture},{label:"Gaussian Splatting",value:s.NodeMaterialModes.GaussianSplatting}],n=[{label:"Combine",value:s.Constants.ALPHA_COMBINE},{label:"One one",value:s.Constants.ALPHA_ONEONE},{label:"Add",value:s.Constants.ALPHA_ADD},{label:"Subtract",value:s.Constants.ALPHA_SUBTRACT},{label:"Multiply",value:s.Constants.ALPHA_MULTIPLY},{label:"Maximized",value:s.Constants.ALPHA_MAXIMIZED},{label:"Pre-multiplied",value:s.Constants.ALPHA_PREMULTIPLIED}];return(0,l.jsxs)("div",{id:"propertyTab",children:[(0,l.jsxs)("div",{id:"header",children:[(0,l.jsx)("img",{id:"logo",src:"https://www.babylonjs.com/Assets/logo-babylonjs-social-twitter.png"}),(0,l.jsx)("div",{id:"title",children:"NODE MATERIAL EDITOR"})]}),(0,l.jsxs)("div",{children:[(0,l.jsxs)(O,{title:"GENERAL",children:[(0,l.jsx)(yo,{ref:this._modeSelect,label:"Mode",target:this,extractValue:()=>this.props.globalState.mode,options:t,onSelect:e=>this.changeMode(e),propertyName:""}),(0,l.jsx)(yo,{label:"Engine",target:this,extractValue:()=>this.props.globalState.engine,options:[{label:"WebGL",value:0},{label:"WebGPU",value:1}],onSelect:e=>{this.props.globalState.engine=e,this.forceUpdate()},propertyName:""}),(0,l.jsx)(uo,{label:"Version",value:s.Engine.Version}),(0,l.jsx)(uo,{label:"Help",value:"doc.babylonjs.com",underline:!0,onLink:()=>this.props.globalState.hostDocument.defaultView.open("https://doc.babylonjs.com/how_to/node_material","_blank")}),(0,l.jsx)(Vr,{label:"Comment",multilines:!0,lockObject:this.props.globalState.lockObject,value:this.props.globalState.nodeMaterial.comment,target:this.props.globalState.nodeMaterial,propertyName:"comment"}),(0,l.jsx)(Gr,{label:"Reset to default",onClick:()=>{switch(this.props.globalState.mode){case s.NodeMaterialModes.Material:this.props.globalState.nodeMaterial.setToDefault();break;case s.NodeMaterialModes.PostProcess:this.props.globalState.nodeMaterial.setToDefaultPostProcess();break;case s.NodeMaterialModes.Particle:this.props.globalState.nodeMaterial.setToDefaultParticle();break;case s.NodeMaterialModes.ProceduralTexture:this.props.globalState.nodeMaterial.setToDefaultProceduralTexture();break;case s.NodeMaterialModes.GaussianSplatting:(0,s.SetToDefaultGaussianSplatting)(this.props.globalState.nodeMaterial)}this.props.globalState.onResetRequiredObservable.notifyObservers(!0),this.props.globalState.onClearUndoStack.notifyObservers()}})]}),(0,l.jsxs)(O,{title:"UI",children:[(0,l.jsx)(Gr,{label:"Zoom to fit",onClick:()=>{this.props.globalState.onZoomToFitRequiredObservable.notifyObservers()}}),(0,l.jsx)(Gr,{label:"Reorganize",onClick:()=>{this.props.globalState.onReOrganizedRequiredObservable.notifyObservers()}})]}),(0,l.jsxs)(O,{title:"OPTIONS",children:[(0,l.jsx)(Z,{label:"Embed textures when saving",isSelected:()=>s.DataStorage.ReadBoolean("EmbedTextures",!0),onSelect:e=>{s.DataStorage.WriteBoolean("EmbedTextures",e)}}),(0,l.jsx)(Sr,{lockObject:this.props.lockObject,label:"Grid size",minimum:0,maximum:100,step:5,decimalCount:0,directValue:e,onChange:e=>{s.DataStorage.WriteNumber("GridSize",e),this.props.globalState.stateManager.onGridSizeChanged.notifyObservers(),this.forceUpdate()}}),(0,l.jsx)(Z,{label:"Show grid",isSelected:()=>s.DataStorage.ReadBoolean("ShowGrid",!0),onSelect:e=>{s.DataStorage.WriteBoolean("ShowGrid",e),this.props.globalState.stateManager.onGridSizeChanged.notifyObservers()}})]}),(0,l.jsxs)(O,{title:"FILE",children:[(0,l.jsx)(Q,{label:"Load",onClick:e=>this.load(e),accept:".json"}),(0,l.jsx)(Gr,{label:"Save",onClick:()=>{this.save()}}),(0,l.jsx)(Gr,{label:"Generate code",onClick:()=>{H.DownloadAsFile(this.props.globalState.hostDocument,this.props.globalState.nodeMaterial.generateCode(),"code.txt")}}),(0,l.jsx)(Gr,{label:"Export shaders",onClick:()=>{this.props.globalState.nodeMaterial.build(),H.DownloadAsFile(this.props.globalState.hostDocument,this.props.globalState.nodeMaterial.compiledShaders,"shaders.txt")}}),this.props.globalState.customSave&&(0,l.jsx)(Gr,{label:this.props.globalState.customSave.label,isDisabled:this.state.uploadInProgress,onClick:()=>{this.customSave()}}),(0,l.jsx)(Q,{label:"Load Frame",onClick:e=>this.loadFrame(e),accept:".json"})]}),!this.props.globalState.customSave&&(0,l.jsxs)(O,{title:"SNIPPET",children:[this.props.globalState.nodeMaterial.snippetId&&(0,l.jsx)(uo,{label:"Snippet ID",value:this.props.globalState.nodeMaterial.snippetId}),(0,l.jsx)(Gr,{label:"Load from snippet server",onClick:()=>this.loadFromSnippet()}),(0,l.jsx)(Gr,{label:"Save to snippet server",onClick:()=>{this.saveToSnippetServer()}})]}),(0,l.jsxs)(O,{title:"TRANSPARENCY",children:[(0,l.jsx)(Z,{label:"Force alpha blending",target:this.props.globalState.nodeMaterial,propertyName:"forceAlphaBlending",onValueChanged:()=>this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(null)}),(0,l.jsx)(yo,{label:"Alpha mode",options:n,target:this.props.globalState.nodeMaterial,propertyName:"alphaMode",onSelect:()=>this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(null)})]}),(0,l.jsx)(Fr,{lockObject:this.props.lockObject,globalState:this.props.globalState,inputs:this.props.globalState.nodeMaterial.getInputBlocks()})]})]})}}class wo extends a.Component{render(){return i.createPortal(this.props.children,this.props.globalState.hostElement)}}var Mo=r(5779),ko={};ko.styleTagTransform=v(),ko.setAttributes=g(),ko.insert=A().bind(null,"head"),ko.domAPI=p(),ko.insertStyleElement=C(),u()(Mo.A,ko);const No=Mo.A&&Mo.A.locals?Mo.A.locals:void 0,_o=e=>{const[t,n]=(0,a.useState)(e.message),[r,o]=(0,a.useState)(e.isError);return(0,a.useEffect)((()=>{n(e.message),o(e.isError)}),[e]),t?(0,l.jsx)("div",{className:No["dialog-container"],children:(0,l.jsxs)("div",{className:No.dialog,children:[(0,l.jsx)("div",{className:No["dialog-message"],children:t}),(0,l.jsx)("div",{className:No["dialog-buttons"],children:(0,l.jsx)("div",{className:ao({"dialog-button-ok":!0,error:r},No),onClick:()=>{n(""),e.onClose&&e.onClose()},children:"OK"})})]})}):null};class So{_serializeMaterial(){const e=this._nodeMaterial;let t=!1;{const n=e.getAllTextureBlocks();for(const e of n){const n=e.texture;if(!n||e.hasImageSource)continue;let r=!1;for(const e of this._engine.getLoadedTexturesCache())if(e.uniqueId===n._texture?.uniqueId){r=!0;break}if(!r){t=!0;break}}}const n=s.Texture.SerializeBuffers;s.Texture.SerializeBuffers=t,s.Texture._SerializeInternalTextureUniqueId=!0;const r=e.serialize();return s.Texture.SerializeBuffers=n,s.Texture._SerializeInternalTextureUniqueId=!1,r}constructor(e,t){this._nodeMaterial=t.nodeMaterial,this._globalState=t,this._onBuildObserver=this._nodeMaterial.onBuildObservable.add((()=>{this._updatePreview()})),this._onPreviewCommandActivatedObserver=t.stateManager.onPreviewCommandActivated.add((e=>{e&&(this._currentType=-1,this._scene.disableDepthRenderer()),this._refreshPreviewMesh()})),this._onLightUpdatedObserver=t.onLightUpdated.add((()=>{this._prepareLights()})),this._onBackgroundHDRUpdatedObserver=t.onBackgroundHDRUpdated.add((()=>{this._prepareBackgroundHDR()})),this._onUpdateRequiredObserver=t.stateManager.onUpdateRequiredObservable.add((()=>{this._updatePreview()})),this._onPreviewBackgroundChangedObserver=t.onPreviewBackgroundChanged.add((()=>{this._scene.clearColor=this._globalState.backgroundColor})),this._onAnimationCommandActivatedObserver=t.onAnimationCommandActivated.add((()=>{this._handleAnimations()})),this._onBackFaceCullingChangedObserver=t.onBackFaceCullingChanged.add((()=>{this._material.backFaceCulling=this._globalState.backFaceCulling})),this._onDepthPrePassChangedObserver=t.onDepthPrePassChanged.add((()=>{this._material.needDepthPrePass=this._globalState.depthPrePass})),this._initAsync(e)}async _initAsync(e){1===this._nodeMaterial.shaderLanguage?(this._engine=new s.WebGPUEngine(e),await this._engine.initAsync()):this._engine=new s.Engine(e),this._scene=new s.Scene(this._engine),this._scene.clearColor=this._globalState.backgroundColor,this._scene.ambientColor=new s.Color3(1,1,1),this._camera=new s.ArcRotateCamera("Camera",0,.8,4,s.Vector3.Zero(),this._scene),this._camera.lowerRadiusLimit=3,this._camera.upperRadiusLimit=10,this._camera.wheelPrecision=20,this._camera.minZ=.1,this._camera.attachControl(!1),this._lightParent=new s.TransformNode("LightParent",this._scene),this._globalState.filesInput=new s.FilesInput(this._engine,this._scene,((e,t)=>{this._meshes.push(...t.meshes),this._prepareScene()}),null,null,null,null,null,(()=>{this._reset()}),!0);const t=this._engine.getRenderingCanvas();if(t){const e=e=>{e.stopPropagation(),e.preventDefault()};t.addEventListener("dragenter",e,!1),t.addEventListener("dragover",e,!1);const n=e=>{e.stopPropagation(),e.preventDefault(),this._globalState.onDropEventReceivedObservable.notifyObservers(e)};t.addEventListener("drop",n,!1)}let n;this._refreshPreviewMesh(),this._engine.runRenderLoop((()=>{this._engine.resize(),this._scene.render()})),this._scene.onPointerObservable.add((e=>{if(this._globalState.controlCamera)return;if(e.type===s.PointerEventTypes.POINTERUP)return void(n=void 0);if(1!==e.event.buttons)return;void 0===n&&(n=e.event.offsetX);const t=.01*(n-e.event.offsetX);this._lightParent.rotation.y+=t,n=e.event.offsetX}))}_reset(){this._globalState.envType=t.Room,this._globalState.previewType=t.Box,this._globalState.listOfCustomPreviewFiles=[],this._scene.meshes.forEach((e=>e.dispose())),this._globalState.onRefreshPreviewMeshControlComponentRequiredObservable.notifyObservers(),this._refreshPreviewMesh(!0)}_handleAnimations(){if(this._scene.stopAllAnimations(),this._globalState.rotatePreview)for(const e of this._scene.rootNodes){const t=e;"TransformNode"!==t.getClassName()&&"Mesh"!==t.getClassName()&&"GroundMesh"!==t.getClassName()||(t.rotationQuaternion&&(t.rotation=t.rotationQuaternion.toEulerAngles(),t.rotationQuaternion=null),s.Animation.CreateAndStartAnimation("turnTable",e,"rotation.y",60,1200,t.rotation.y,t.rotation.y+2*Math.PI,1))}}_prepareLights(){const e=this._scene.lights.slice(0);for(const t of e)t.dispose();if(this._globalState.hemisphericLight&&new s.HemisphericLight("Hemispheric light",new s.Vector3(0,1,0),this._scene),this._globalState.directionalLight0){const e=new s.DirectionalLight("Directional light #0",new s.Vector3(.841626576496605,-.2193391004130599,-.49351298337996535),this._scene);e.intensity=.9,e.diffuse=new s.Color3(.9294117647058824,.9725490196078431,.996078431372549),e.specular=new s.Color3(.9294117647058824,.9725490196078431,.996078431372549),e.parent=this._lightParent}if(this._globalState.directionalLight1){const e=new s.DirectionalLight("Directional light #1",new s.Vector3(-.9519937437504213,-.24389315636999764,-.1849974057546125),this._scene);e.intensity=1.2,e.specular=new s.Color3(.9803921568627451,.9529411764705882,.7725490196078432),e.diffuse=new s.Color3(.9803921568627451,.9529411764705882,.7725490196078432),e.parent=this._lightParent}}_prepareBackgroundHDR(){this._scene.environmentTexture=null,this._hdrSkyBox&&this._scene.removeMesh(this._hdrSkyBox),this._globalState.backgroundHDR&&(this._scene.environmentTexture=this._hdrTexture,this._hdrSkyBox=this._scene.createDefaultSkybox(this._hdrTexture)),this._updatePreview()}_prepareScene(){switch(this._camera.useFramingBehavior=this._globalState.mode===s.NodeMaterialModes.Material,this._globalState.mode){case s.NodeMaterialModes.Material:{this._prepareLights(),this._globalState.envFile||(this._globalState.backgroundHDR=!1),this._prepareBackgroundHDR();const e=this._camera.getBehaviorByName("Framing");setTimeout((()=>{if(e.framingTime=0,e.elevationReturnTime=-1,this._scene.meshes.length){const t=this._scene.getWorldExtends();this._camera.lowerRadiusLimit=null,this._camera.upperRadiusLimit=null,e.zoomOnBoundingInfo(t.min,t.max)}this._camera.pinchPrecision=200/this._camera.radius,this._camera.upperRadiusLimit=5*this._camera.radius})),this._camera.wheelDeltaPercentage=.01,this._camera.pinchDeltaPercentage=.01,this._handleAnimations();break}case s.NodeMaterialModes.PostProcess:case s.NodeMaterialModes.ProceduralTexture:this._camera.radius=4,this._camera.upperRadiusLimit=10;break;case s.NodeMaterialModes.Particle:this._camera.radius=this._globalState.previewType===t.Explosion?50:this._globalState.previewType===t.DefaultParticleSystem?6:20,this._camera.upperRadiusLimit=5e3,this._globalState.particleSystemBlendMode=this._particleSystem?.blendMode??s.ParticleSystem.BLENDMODE_STANDARD;break;case s.NodeMaterialModes.GaussianSplatting:this._camera.radius=6,this._camera.upperRadiusLimit=5e3}this._updatePreview()}_refreshPreviewMesh(e){if(this._globalState.mode===s.NodeMaterialModes.Material)switch(this._globalState.envType){case t.Room:this._hdrTexture=new s.CubeTexture(So.DefaultEnvironmentURL,this._scene),this._hdrTexture&&this._prepareBackgroundHDR();break;case t.Custom:{const e=new Blob([this._globalState.envFile],{type:"octet/stream"}),t=new FileReader;t.onload=e=>{const t=e.target.result;this._hdrTexture=new s.CubeTexture(t,this._scene,void 0,!1,void 0,void 0,void 0,void 0,void 0,".env"),this._prepareBackgroundHDR()},t.readAsDataURL(e);break}}else this._scene.environmentTexture=null;if(this._currentType!==this._globalState.previewType||this._currentType===t.Custom||e){if(this._currentType=this._globalState.previewType,this._meshes&&this._meshes.length)for(const e of this._meshes)e.dispose();this._meshes=[],this._layer&&(this._layer.dispose(),this._layer=null);const e=this._scene.lights.slice(0);for(const t of e)t.dispose();this._engine.releaseEffects(),this._particleSystem&&(this._particleSystem.onBeforeDrawParticlesObservable.clear(),this._particleSystem.onDisposeObservable.clear(),this._particleSystem.stop(),this._particleSystem.dispose(),this._particleSystem=null),s.SceneLoader.ShowLoadingScreen=!1,this._globalState.onIsLoadingChanged.notifyObservers(!0);const n=e=>{e.bakeCurrentTransformIntoVertices(),e.refreshBoundingInfo(),e.parent=null};if(this._globalState.mode===s.NodeMaterialModes.Material)switch(this._globalState.previewType){case t.Box:return void s.SceneLoader.AppendAsync("https://assets.babylonjs.com/meshes/","roundedCube.glb",this._scene).then((()=>{n(this._scene.getMeshByName("__root__").getChildMeshes(!0)[0]),this._meshes.push(...this._scene.meshes),this._prepareScene()}));case t.Sphere:s.SceneLoader.AppendAsync("https://assets.babylonjs.com/meshes/","previewSphere.glb",this._scene).then((()=>{n(this._scene.getMeshByName("__root__").getChildMeshes(!0)[0]),this._meshes.push(...this._scene.meshes),this._prepareScene()}));break;case t.Torus:this._meshes.push((0,s.CreateTorus)("dummy-torus",{diameter:2,thickness:.5,tessellation:32},this._scene));break;case t.Cylinder:return void s.SceneLoader.AppendAsync("https://assets.babylonjs.com/meshes/","roundedCylinder.glb",this._scene).then((()=>{this._meshes.push(...this._scene.meshes),this._prepareScene()}));case t.Plane:s.SceneLoader.AppendAsync("https://assets.babylonjs.com/meshes/","highPolyPlane.glb",this._scene).then((()=>{n(this._scene.getMeshByName("__root__").getChildMeshes(!0)[0]),this._meshes.push(...this._scene.meshes),this._prepareScene()}));break;case t.ShaderBall:return void s.SceneLoader.AppendAsync("https://assets.babylonjs.com/meshes/","shaderBall.glb",this._scene).then((()=>{this._meshes.push(...this._scene.meshes),this._prepareScene()}));case t.Custom:return void this._globalState.filesInput.loadFiles({target:{files:this._globalState.listOfCustomPreviewFiles}})}else if(this._globalState.mode===s.NodeMaterialModes.ProceduralTexture)this._layer=new s.Layer("proceduralLayer",null,this._scene,!1);else if(this._globalState.mode===s.NodeMaterialModes.Particle)switch(this._globalState.previewType){case t.DefaultParticleSystem:this._particleSystem=s.ParticleHelper.CreateDefault(new s.Vector3(0,0,0),500,this._scene),this._particleSystem.blendMode=s.DataStorage.ReadNumber("DefaultParticleSystemBlendMode",s.ParticleSystem.BLENDMODE_ONEONE),this._particleSystem.start();break;case t.Bubbles:this._particleSystem=new s.ParticleSystem("particles",4e3,this._scene),this._particleSystem.particleTexture=new s.Texture("https://assets.babylonjs.com/particles/textures/explosion/Flare.png",this._scene),this._particleSystem.minSize=.1,this._particleSystem.maxSize=1,this._particleSystem.minLifeTime=.5,this._particleSystem.maxLifeTime=5,this._particleSystem.minEmitPower=.5,this._particleSystem.maxEmitPower=3,this._particleSystem.createBoxEmitter(new s.Vector3(-1,1,-1),new s.Vector3(1,1,1),new s.Vector3(-.1,-.1,-.1),new s.Vector3(.1,.1,.1)),this._particleSystem.emitRate=100,this._particleSystem.blendMode=s.DataStorage.ReadNumber("DefaultParticleSystemBlendMode",s.ParticleSystem.BLENDMODE_ONEONE),this._particleSystem.color1=new s.Color4(1,1,0,1),this._particleSystem.color2=new s.Color4(1,.5,0,1),this._particleSystem.gravity=new s.Vector3(0,-1,0),this._particleSystem.start();break;case t.Explosion:return void this._loadParticleSystem(this._globalState.previewType,1);case t.Fire:case t.Rain:case t.Smoke:return void this._loadParticleSystem(this._globalState.previewType);case t.Custom:return void(0,s.ReadFile)(this._globalState.previewFile,(e=>{this._particleSystem=s.ParticleSystem.Parse(JSON.parse(e),this._scene,""),this._particleSystem.start(),this._prepareScene()}),void 0,!1,(e=>{console.log(e)}))}else if(this._globalState.mode===s.NodeMaterialModes.GaussianSplatting)switch(this._globalState.previewType){case t.Parrot:s.SceneLoader.AppendAsync("https://assets.babylonjs.com/splats/","gs_Sqwakers_trimed.splat",this._scene).then((()=>{this._meshes.push(...this._scene.meshes),this._prepareScene()}));break;case t.BricksSkull:s.SceneLoader.AppendAsync("https://assets.babylonjs.com/splats/","gs_Skull.splat",this._scene).then((()=>{this._meshes.push(...this._scene.meshes),this._prepareScene()}));break;case t.Plants:s.SceneLoader.AppendAsync("https://assets.babylonjs.com/splats/","gs_Plants.splat",this._scene).then((()=>{this._meshes.push(...this._scene.meshes),this._prepareScene()}));break;case t.Custom:return void this._globalState.filesInput.loadFiles({target:{files:this._globalState.listOfCustomPreviewFiles}})}}}_loadParticleSystem(e,n=0,r=!0){let o="";switch(e){case t.Explosion:o="explosion";break;case t.Fire:o="fire";break;case t.Rain:o="rain";break;case t.Smoke:o="smoke"}s.ParticleHelper.CreateAsync(o,this._scene).then((t=>{for(let r=0;r<t.systems.length;++r)r==n?(this._particleSystem=t.systems[r],this._particleSystem.disposeOnStop=!0,this._particleSystem.onDisposeObservable.add((()=>{this._loadParticleSystem(e,n,!1)})),this._particleSystem.start()):t.systems[r].dispose();r?this._prepareScene():this._updatePreview()}))}_forceCompilationAsync(e,t){return e.forceCompilationAsync(t)}_updatePreview(){try{const e=this._serializeMaterial(),t=s.NodeMaterial.IgnoreTexturesAtLoadTime;s.NodeMaterial.IgnoreTexturesAtLoadTime=!1;const n=s.NodeMaterial.Parse(e,this._scene,"",this._nodeMaterial.shaderLanguage);switch(s.NodeMaterial.IgnoreTexturesAtLoadTime=t,n.backFaceCulling=this._globalState.backFaceCulling,n.needDepthPrePass=this._globalState.depthPrePass,this._postprocess&&(this._postprocess.dispose(this._camera),this._postprocess=null),this._proceduralTexture&&(this._proceduralTexture.dispose(),this._proceduralTexture=null),this._globalState.mode){case s.NodeMaterialModes.PostProcess:{this._globalState.onIsLoadingChanged.notifyObservers(!1),this._postprocess=n.createPostProcess(this._camera,1,s.Constants.TEXTURE_NEAREST_SAMPLINGMODE,this._engine);const e=n.getBlockByPredicate((e=>e instanceof s.CurrentScreenBlock));e&&this._postprocess&&(this._postprocess.externalTextureSamplerBinding=!0,this._postprocess.onApplyObservable.add((t=>{t.setTexture("textureSampler",e.texture)}))),this._material&&this._material.dispose(),this._material=n;break}case s.NodeMaterialModes.ProceduralTexture:this._globalState.onIsLoadingChanged.notifyObservers(!1),this._proceduralTexture=n.createProceduralTexture(512,this._scene),this._material&&this._material.dispose(),this._layer&&(this._layer.texture=this._proceduralTexture);break;case s.NodeMaterialModes.Particle:this._globalState.onIsLoadingChanged.notifyObservers(!1),this._particleSystem.onBeforeDrawParticlesObservable.clear(),this._particleSystem.onBeforeDrawParticlesObservable.add((e=>{const t=n.getBlockByPredicate((e=>e instanceof s.ParticleTextureBlock));t&&t.texture&&e&&e.setTexture("diffuseSampler",t.texture)})),n.createEffectForParticles(this._particleSystem),this._particleSystem.blendMode=this._globalState.particleSystemBlendMode,this._material&&this._material.dispose(),this._material=n;break;default:if(this._meshes.length){const e=this._meshes.map((e=>(e.hasVertexAlpha=!1,this._forceCompilationAsync(n,e))));Promise.all(e).then((()=>{for(const e of this._meshes)e.material=n;this._material&&this._material.dispose(),this._material=n,this._globalState.onIsLoadingChanged.notifyObservers(!1)})).catch((e=>{this._globalState.onLogRequiredObservable.notifyObservers(new w("Shader compilation error:\r\n"+e,!0)),this._globalState.onIsLoadingChanged.notifyObservers(!1)}))}else this._material=n}}catch(e){this._globalState.onIsLoadingChanged.notifyObservers(!1)}}dispose(){this._nodeMaterial.onBuildObservable.remove(this._onBuildObserver),this._globalState.stateManager.onPreviewCommandActivated.remove(this._onPreviewCommandActivatedObserver),this._globalState.stateManager.onUpdateRequiredObservable.remove(this._onUpdateRequiredObserver),this._globalState.onAnimationCommandActivated.remove(this._onAnimationCommandActivatedObserver),this._globalState.onPreviewBackgroundChanged.remove(this._onPreviewBackgroundChangedObserver),this._globalState.onBackFaceCullingChanged.remove(this._onBackFaceCullingChangedObserver),this._globalState.onDepthPrePassChanged.remove(this._onDepthPrePassChangedObserver),this._globalState.onLightUpdated.remove(this._onLightUpdatedObserver),this._globalState.onBackgroundHDRUpdated.remove(this._onBackgroundHDRUpdatedObserver),this._material&&this._material.dispose(!1,!0),this._camera.dispose();for(const e of this._meshes)e.dispose();this._scene.dispose(),this._engine.dispose()}}So.DefaultEnvironmentURL="https://assets.babylonjs.com/environments/environmentSpecular.env";class Lo extends a.Component{constructor(e){super(e),this._colorInputRef=a.createRef(),this._filePickerRef=a.createRef(),this._envPickerRef=a.createRef(),this._onResetRequiredObserver=this.props.globalState.onResetRequiredObservable.add((()=>{this.forceUpdate()})),this._onDropEventObserver=this.props.globalState.onDropEventReceivedObservable.add((e=>{this.useCustomMesh(e)})),this._onRefreshPreviewMeshControlComponentRequiredObserver=this.props.globalState.onRefreshPreviewMeshControlComponentRequiredObservable.add((()=>{this.forceUpdate()}))}componentWillUnmount(){this.props.globalState.onResetRequiredObservable.remove(this._onResetRequiredObserver),this.props.globalState.onDropEventReceivedObservable.remove(this._onDropEventObserver),this.props.globalState.onRefreshPreviewMeshControlComponentRequiredObservable.remove(this._onRefreshPreviewMeshControlComponentRequiredObserver)}changeMeshType(e){this.props.globalState.previewType!==e&&(this.props.globalState.previewType=e,this.props.globalState.stateManager.onPreviewCommandActivated.notifyObservers(!1),s.DataStorage.WriteNumber("PreviewType",e),this.forceUpdate())}useCustomMesh(e){const n=e.target?.files||e.dataTransfer?.files;if(n&&n.length){const e=n[0];this.props.globalState.previewFile=e,this.props.globalState.previewType=t.Custom,this.props.globalState.listOfCustomPreviewFiles=[...n],this.props.globalState.stateManager.onPreviewCommandActivated.notifyObservers(!1),this.forceUpdate()}this._filePickerRef.current&&(this._filePickerRef.current.value="")}useCustomEnv(e){const n=e.target?.files||e.dataTransfer?.files;if(n&&n.length){const e=n[0];this.props.globalState.envFile=e,this.props.globalState.envType=t.Custom,this.props.globalState.stateManager.onPreviewCommandActivated.notifyObservers(!1),this.forceUpdate()}this._envPickerRef.current&&(this._envPickerRef.current.value="")}onPopUp(){this.props.togglePreviewAreaComponent()}changeAnimation(){this.props.globalState.rotatePreview=!this.props.globalState.rotatePreview,this.props.globalState.onAnimationCommandActivated.notifyObservers(),this.forceUpdate()}changeBackground(e){const t=s.Color3.FromHexString(e);s.DataStorage.WriteNumber("BackgroundColorR",t.r),s.DataStorage.WriteNumber("BackgroundColorG",t.g),s.DataStorage.WriteNumber("BackgroundColorB",t.b);const n=s.Color4.FromColor3(t,1);this.props.globalState.backgroundColor=n,this.props.globalState.onPreviewBackgroundChanged.notifyObservers()}changeBackgroundClick(){this._colorInputRef.current?.click()}render(){const e=[{label:"Cube",value:t.Box},{label:"Cylinder",value:t.Cylinder},{label:"Plane",value:t.Plane},{label:"Shader ball",value:t.ShaderBall},{label:"Sphere",value:t.Sphere},{label:"Load...",value:t.Custom+1}],n=[{label:"Default",value:t.DefaultParticleSystem},{label:"Bubbles",value:t.Bubbles},{label:"Explosion",value:t.Explosion},{label:"Fire",value:t.Fire},{label:"Rain",value:t.Rain},{label:"Smoke",value:t.Smoke},{label:"Load...",value:t.Custom+1}],r=[{label:"Default",value:t.Parrot},{label:"Bricks Skull",value:t.BricksSkull},{label:"Plants",value:t.Plants},{label:"Load...",value:t.Custom+1}];this.props.globalState.listOfCustomPreviewFiles.length>0&&(e.splice(0,0,{label:"Custom",value:t.Custom}),n.splice(0,0,{label:"Custom",value:t.Custom}),r.splice(0,0,{label:"Custom",value:t.Custom}));const o=this.props.globalState.mode===s.NodeMaterialModes.Particle?n:this.props.globalState.mode===s.NodeMaterialModes.GaussianSplatting?r:e,a=this.props.globalState.mode===s.NodeMaterialModes.Particle?".json":".*";return(0,l.jsxs)("div",{id:"preview-mesh-bar",children:[(this.props.globalState.mode===s.NodeMaterialModes.Material||this.props.globalState.mode===s.NodeMaterialModes.Particle||this.props.globalState.mode===s.NodeMaterialModes.GaussianSplatting)&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(yo,{label:"",options:o,target:this.props.globalState,propertyName:"previewType",noDirectUpdate:!0,onSelect:e=>{e!==t.Custom+1?this.changeMeshType(e):this._filePickerRef.current?.click()}}),(0,l.jsxs)("div",{style:{display:"none"},title:"Preview with a custom mesh",children:[(0,l.jsx)("input",{ref:this._filePickerRef,multiple:!0,id:"file-picker",type:"file",onChange:e=>this.useCustomMesh(e),accept:a}),(0,l.jsx)("input",{ref:this._envPickerRef,id:"env-picker",accept:".env",type:"file",onChange:e=>this.useCustomEnv(e)})]})]}),this.props.globalState.mode===s.NodeMaterialModes.Material&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("div",{id:"env-button",title:"Environment image",className:"button",onClick:e=>this._envPickerRef.current?.click(),children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyBjbGFzcz0iaWNvbiIgd2lkdGg9IjY0cHgiIGhlaWdodD0iNjQuMDBweCIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNmZmZmZmYiIGQ9Ik0zMjAgNjI3LjJsMjkuODY2NjY3LTI5Ljg2NjY2NyAyOS44NjY2NjYgMjkuODY2NjY3IDY0IDY0IDE0OS4zMzMzMzQtMTQ5LjMzMzMzMyAyOS44NjY2NjYtMjkuODY2NjY3IDI5Ljg2NjY2NyAyOS44NjY2NjcgMTk2LjI2NjY2NyAxOTYuMjY2NjY2VjI5OC42NjY2NjdIMjEzLjMzMzMzM3Y0MzUuMmwxMDYuNjY2NjY3LTEwNi42NjY2Njd6IG0yOS44NjY2NjcgMjkuODY2NjY3TDIzOC45MzMzMzMgNzY4aDEzNi41MzMzMzRsLTQuMjY2NjY3LTQuMjY2NjY3IDQyLjY2NjY2Ny00Mi42NjY2NjYtNjQtNjR6TTgyMy40NjY2NjcgNzY4bC0xOTYuMjY2NjY3LTE5Ni4yNjY2NjctMTk2LjI2NjY2NyAxOTYuMjY2NjY3aDM5Mi41MzMzMzR6TTg5NiAyNTZ2NTU0LjY2NjY2N0gxNzAuNjY2NjY3VjI1Nmg3MjUuMzMzMzMzeiIgIC8+PC9zdmc+",alt:"",id:"env-picker-image"})}),(0,l.jsx)("div",{title:"Turn-table animation",onClick:()=>this.changeAnimation(),className:"button",id:"play-button",children:this.props.globalState.rotatePreview?(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA1OS4xICg4NjE0NCkgLSBodHRwczovL3NrZXRjaC5jb20gLS0+DQogIDx0aXRsZT5pY19mbHVlbnRfcGF1c2VfMjRfcmVndWxhcjwvdGl0bGU+DQogIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPg0KICA8ZyBpZD0i8J+UjS1Qcm9kdWN0LUljb25zIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4NCiAgICA8ZyBpZD0iaWNfZmx1ZW50X3BhdXNlXzI0X3JlZ3VsYXIiIGZpbGw9IndoaXRlIiBmaWxsLXJ1bGU9Im5vbnplcm8iPg0KICAgICAgPHBhdGggZD0iTTguMjUsMiBDOS4yMTY0OTgzMSwyIDEwLDIuNzgzNTAxNjkgMTAsMy43NSBMMTAsMjAuMjUgQzEwLDIxLjIxNjQ5ODMgOS4yMTY0OTgzMSwyMiA4LjI1LDIyIEw0Ljc1LDIyIEMzLjc4MzUwMTY5LDIyIDMsMjEuMjE2NDk4MyAzLDIwLjI1IEwzLDMuNzUgQzMsMi43ODM1MDE2OSAzLjc4MzUwMTY5LDIgNC43NSwyIEw4LjI1LDIgWiBNMTkuMjUsMiBDMjAuMjE2NDk4MywyIDIxLDIuNzgzNTAxNjkgMjEsMy43NSBMMjEsMjAuMjUgQzIxLDIxLjIxNjQ5ODMgMjAuMjE2NDk4MywyMiAxOS4yNSwyMiBMMTUuNzUsMjIgQzE0Ljc4MzUwMTcsMjIgMTQsMjEuMjE2NDk4MyAxNCwyMC4yNSBMMTQsMy43NSBDMTQsMi43ODM1MDE2OSAxNC43ODM1MDE3LDIgMTUuNzUsMiBMMTkuMjUsMiBaIE04LjI1LDMuNSBMNC43NSwzLjUgQzQuNjExOTI4ODEsMy41IDQuNSwzLjYxMTkyODgxIDQuNSwzLjc1IEw0LjUsMjAuMjUgQzQuNSwyMC4zODgwNzEyIDQuNjExOTI4ODEsMjAuNSA0Ljc1LDIwLjUgTDguMjUsMjAuNSBDOC4zODgwNzExOSwyMC41IDguNSwyMC4zODgwNzEyIDguNSwyMC4yNSBMOC41LDMuNzUgQzguNSwzLjYxMTkyODgxIDguMzg4MDcxMTksMy41IDguMjUsMy41IFogTTE5LjI1LDMuNSBMMTUuNzUsMy41IEMxNS42MTE5Mjg4LDMuNSAxNS41LDMuNjExOTI4ODEgMTUuNSwzLjc1IEwxNS41LDIwLjI1IEMxNS41LDIwLjM4ODA3MTIgMTUuNjExOTI4OCwyMC41IDE1Ljc1LDIwLjUgTDE5LjI1LDIwLjUgQzE5LjM4ODA3MTIsMjAuNSAxOS41LDIwLjM4ODA3MTIgMTkuNSwyMC4yNSBMMTkuNSwzLjc1IEMxOS41LDMuNjExOTI4ODEgMTkuMzg4MDcxMiwzLjUgMTkuMjUsMy41IFoiIGlkPSLwn46oLUNvbG9yIj48L3BhdGg+DQogICAgPC9nPg0KICA8L2c+DQo8L3N2Zz4=",alt:""}):(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA1OS4xICg4NjE0NCkgLSBodHRwczovL3NrZXRjaC5jb20gLS0+DQogIDx0aXRsZT5pY19mbHVlbnRfcGxheV8yNF9yZWd1bGFyPC90aXRsZT4NCiAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+DQogIDxnIGlkPSLwn5SNLVByb2R1Y3QtSWNvbnMiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPg0KICAgIDxnIGlkPSJpY19mbHVlbnRfcGxheV8yNF9yZWd1bGFyIiBmaWxsPSJ3aGl0ZSIgZmlsbC1ydWxlPSJub256ZXJvIj4NCiAgICAgIDxwYXRoIGQ9Ik02LjMzOTk0OTc2LDIuMjc1MDA5MTIgQzUuMjUyODQ0OTUsMS42NzMwNDY0OSAzLjg4MzU4NTI1LDIuMDY2MzMxOTMgMy4yODE2MjI2MiwzLjE1MzQzNjc0IEMzLjA5NjkwNzM0LDMuNDg3MDIwMzUgMywzLjg2MjA3NTkyIDMsNC4yNDMzODY1IEwzLDE5Ljc1OTEzODggQzMsMjEuMDAxNzc5NSA0LjAwNzM1OTMxLDIyLjAwOTEzODggNS4yNSwyMi4wMDkxMzg4IEM1LjYzMTQwMDUxLDIyLjAwOTEzODggNi4wMDY1NDE1NCwyMS45MTIxODU4IDYuMzQwMTgyMDIsMjEuNzI3Mzg3NiBMMjAuMzQ4NDQ0MywxMy45Njg0MzE0IEMyMS40MzU0NzgxLDEzLjM2NjM0MDUgMjEuODI4NjAxOSwxMS45OTcwMzQ0IDIxLjIyNjUxMSwxMC45MTAwMDA2IEMyMS4wMjE5Mzk2LDEwLjU0MDY2MSAyMC43MTc1NzU4LDEwLjIzNjMzMzEgMjAuMzQ4MjEyLDEwLjAzMTgwNTMgTDYuMzM5OTQ5NzYsMi4yNzUwMDkxMiBaIE0xOS45MTQzNDUyLDExLjYzNjc4ODcgQzIwLjExNTA0MjIsMTEuOTk5MTMzMyAxOS45ODQwMDA5LDEyLjQ1NTU2ODYgMTkuNjIxNjU2MywxMi42NTYyNjU2IEw1LjYxMzM5NDAxLDIwLjQxNTIyMTcgQzUuNTAyMTgwNTEsMjAuNDc2ODIxMSA1LjM3NzEzMzUsMjAuNTA5MTM4OCA1LjI1LDIwLjUwOTEzODggQzQuODM1Nzg2NDQsMjAuNTA5MTM4OCA0LjUsMjAuMTczMzUyNCA0LjUsMTkuNzU5MTM4OCBMNC41LDQuMjQzMzg2NSBDNC41LDQuMTE2MjgyOTggNC41MzIzMDI0NSwzLjk5MTI2NDQ1IDQuNTkzODc0MjEsMy44ODAwNjk5MiBDNC43OTQ1Mjg0MiwzLjUxNzcwMTY1IDUuMjUwOTQ4MzIsMy4zODY2MDY1IDUuNjEzMzE2NTksMy41ODcyNjA3MSBMMTkuNjIxNTc4OSwxMS4zNDQwNTY5IEMxOS43NDQ3MDAxLDExLjQxMjIzMjggMTkuODQ2MTU0NywxMS41MTM2NzU1IDE5LjkxNDM0NTIsMTEuNjM2Nzg4NyBaIiBpZD0i8J+OqC1Db2xvciI+PC9wYXRoPg0KICAgIDwvZz4NCiAgPC9nPg0KPC9zdmc+",alt:""})}),(0,l.jsxs)("div",{id:"color-picker-button",title:"Background color",className:"button align",onClick:e=>this.changeBackgroundClick(),children:[(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjUiIGhlaWdodD0iMjQiPg0KICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDU5LjEgKDg2MTQ0KSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4NCiAgPHRpdGxlPmljX2ZsdWVudF9jb2xvcl8yNF9yZWd1bGFyPC90aXRsZT4NCiAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+DQogIDxnIGlkPSLwn5SNLVByb2R1Y3QtSWNvbnMiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPg0KICAgIDxnIGlkPSJpY19mbHVlbnRfY29sb3JfMjRfcmVndWxhciIgZmlsbD0id2hpdGUiIGZpbGwtcnVsZT0ibm9uemVybyI+DQogICAgICA8cGF0aCBkPSJNMy44MzkwNDA1OCw1Ljg1NzQ5NTYxIEM2Ljc4MDA0NTgxLDEuOTQxODg5NzEgMTIuODY4NjcwNywwLjgwMjUwNTIwMiAxNy4yMDI5Mzk0LDMuNDk3Mzc3IEMyMS40ODI3NTI1LDYuMTU4MzkwNTcgMjMuMDU2Nzk3MiwxMS4yNzQ0NjU1IDIxLjMwMzg2NiwxNi4wNzQ3NDA3IEMxOS42NDg2ODksMjAuNjA3MzIzMSAxNS4yODc1Mjk1LDIyLjQwMzIwOSAxMi4xNDQyMTAxLDIwLjEyMzE0MjggQzEwLjk2Njc0MjUsMTkuMjY5MDQ0NCAxMC41MTAyOTAxLDE4LjE5ODQwMzUgMTAuMjg5NjU3NiwxNi40NTkzMTMyIEwxMC4xODQyNzQ1LDE1LjQ3MTM5MTMgTDEwLjEzODg1ODksMTUuMDczOTU0IEMxMC4wMTYyMzQyLDE0LjEzOTkwNjUgOS44Mjc4MDc0OCwxMy43MjE0Mjk2IDkuNDM0NTM2MDUsMTMuNTAyMjI2NCBDOC44OTg5NDUzNSwxMy4yMDM2OTY2IDguNTQyMzE3NTcsMTMuMTk2NzIyNiA3LjgzOTA1MjgyLDEzLjQ2OTI3ODQgTDcuNDg3OTQxOTMsMTMuNjE0ODc3OSBMNy4zMDkyMDc1NCwxMy42OTI4MjE4IEM2LjI5NTQzMTk2LDE0LjEzMzEwMzggNS42MjEwNDE2MSwxNC4yODc3OTIzIDQuNzY4MDQ1ODgsMTQuMTA5MDU0MyBMNC41Njc3OTQ0MiwxNC4wNjE4NjY1IEw0LjQwNDI2MTM4LDE0LjAxNTI2OTEgQzEuNjE1Mjk1NDcsMTMuMTUxMDU4NiAxLjIwMjIwNjUzLDkuMzY4MTMzMDMgMy44MzkwNDA1OCw1Ljg1NzQ5NTYxIFogTTQuODIzMjU5NywxMi41NzM5MTI1IEw0Ljk0NjE2NDI4LDEyLjYxMDM3MiBMNS4wODAxMTMsMTIuNjQxMjE2MSBDNS41MTkxODg3OCwxMi43MjgxNjY1IDUuODk0NDQwMzksMTIuNjU1Njc0OSA2LjUxNzEzNDg2LDEyLjM5OTM5NTUgTDcuMTE5MzA2ODEsMTIuMTQyMTM0NyBDOC4zMjE0NDk5NCwxMS42NDkyMTkxIDkuMTA0NTQ2MywxMS42MDEwMjMzIDEwLjE2NDgzMDUsMTIuMTkyMDA4OCBDMTEuMDgyNDE5MSwxMi43MDM0NTgxIDExLjQ0MDA1ODMsMTMuNDg5NTk3OCAxMS42MjI0NywxNC44NTE2NTExIEwxMS42NzU2NjM3LDE1LjMxMDgwMiBMMTEuNzI5ODczLDE1Ljg0MjUxODkgTDExLjc3NzAwOTUsMTYuMjY0OTQzMSBDMTEuOTQ5MDg0MiwxNy42MjYyMDc4IDEyLjI2MTkxNjIsMTguMzU1NDU1MyAxMy4wMjQ5NTUsMTguOTA4OTQgQzE1LjMwMDI4ODYsMjAuNTU5Mzk2MyAxOC41NTkzOTM3LDE5LjIxNzMyNjMgMTkuODk0ODcyNSwxNS41NjAyMTQzIEMyMS40MTExNDIsMTEuNDA4MDIwMSAyMC4wNjg5OTQxLDcuMDQ1NjczMDMgMTYuNDEwOTExNyw0Ljc3MTIyNjM2IEMxMi43MzY3MTgsMi40ODY3NjIzMSA3LjUxMjQ4NzQyLDMuNDY0Mzg5ODYgNS4wMzg0MDc5Niw2Ljc1ODMzODQ5IEMyLjk2MzYxOTk0LDkuNTIwNjc3MDcgMy4yMTgwOTUzMiwxMi4wMzc4OTQ0IDQuODIzMjU5NywxMi41NzM5MTI1IFogTTE2LjA0Nzc0NjIsMTAuNTc5NTc0NCBDMTUuODY5MDY4OSw5LjkxMjc0MTc5IDE2LjI2NDc5Nyw5LjIyNzMyMDYgMTYuOTMxNjI5Nyw5LjA0ODY0MzMzIEMxNy41OTg0NjIzLDguODY5OTY2MDcgMTguMjgzODgzNSw5LjI2NTY5NDE4IDE4LjQ2MjU2MDgsOS45MzI1MjY4MSBDMTguNjQxMjM4LDEwLjU5OTM1OTQgMTguMjQ1NTA5OSwxMS4yODQ3ODA2IDE3LjU3ODY3NzMsMTEuNDYzNDU3OSBDMTYuOTExODQ0NywxMS42NDIxMzUyIDE2LjIyNjQyMzUsMTEuMjQ2NDA3MSAxNi4wNDc3NDYyLDEwLjU3OTU3NDQgWiBNMTYuNTQyMzM2MSwxNC4wNjgyMzg5IEMxNi4zNjM2NTg5LDEzLjQwMTQwNjMgMTYuNzU5Mzg3LDEyLjcxNTk4NTEgMTcuNDI2MjE5NiwxMi41MzczMDc4IEMxOC4wOTMwNTIyLDEyLjM1ODYzMDYgMTguNzc4NDczNCwxMi43NTQzNTg3IDE4Ljk1NzE1MDcsMTMuNDIxMTkxMyBDMTkuMTM1ODI4LDE0LjA4ODAyMzkgMTguNzQwMDk5OSwxNC43NzM0NDUxIDE4LjA3MzI2NzIsMTQuOTUyMTIyNCBDMTcuNDA2NDM0NiwxNS4xMzA3OTk3IDE2LjcyMTAxMzQsMTQuNzM1MDcxNiAxNi41NDIzMzYxLDE0LjA2ODIzODkgWiBNMTQuMDY5MjM4Niw3LjU3Njg5MDYyIEMxMy44OTA1NjEzLDYuOTEwMDU3OTkgMTQuMjg2Mjg5NCw2LjIyNDYzNjggMTQuOTUzMTIyMSw2LjA0NTk1OTUzIEMxNS42MTk5NTQ3LDUuODY3MjgyMjcgMTYuMzA1Mzc1OSw2LjI2MzAxMDM4IDE2LjQ4NDA1MzEsNi45Mjk4NDMwMSBDMTYuNjYyNzMwNCw3LjU5NjY3NTY0IDE2LjI2NzAwMjMsOC4yODIwOTY4MyAxNS42MDAxNjk3LDguNDYwNzc0MSBDMTQuOTMzMzM3LDguNjM5NDUxMzYgMTQuMjQ3OTE1OCw4LjI0MzcyMzI1IDE0LjA2OTIzODYsNy41NzY4OTA2MiBaIE0xNC4wNDA3NTY5LDE2LjU3NTI3NDcgQzEzLjg2MjA3OTYsMTUuOTA4NDQyMSAxNC4yNTc4MDc3LDE1LjIyMzAyMDkgMTQuOTI0NjQwMywxNS4wNDQzNDM3IEMxNS41OTE0NzMsMTQuODY1NjY2NCAxNi4yNzY4OTQyLDE1LjI2MTM5NDUgMTYuNDU1NTcxNCwxNS45MjgyMjcxIEMxNi42MzQyNDg3LDE2LjU5NTA1OTggMTYuMjM4NTIwNiwxNy4yODA0ODEgMTUuNTcxNjg4LDE3LjQ1OTE1ODIgQzE0LjkwNDg1NTMsMTcuNjM3ODM1NSAxNC4yMTk0MzQxLDE3LjI0MjEwNzQgMTQuMDQwNzU2OSwxNi41NzUyNzQ3IFogTTEwLjU0MzgzMzksNi42MDUyOTcyNSBDMTAuMzY1MTU2Niw1LjkzODQ2NDYyIDEwLjc2MDg4NDcsNS4yNTMwNDM0MyAxMS40Mjc3MTc0LDUuMDc0MzY2MTYgQzEyLjA5NDU1LDQuODk1Njg4OSAxMi43Nzk5NzEyLDUuMjkxNDE3MDEgMTIuOTU4NjQ4NCw1Ljk1ODI0OTY0IEMxMy4xMzczMjU3LDYuNjI1MDgyMjcgMTIuNzQxNTk3Niw3LjMxMDUwMzQ2IDEyLjA3NDc2NSw3LjQ4OTE4MDczIEMxMS40MDc5MzIzLDcuNjY3ODU3OTkgMTAuNzIyNTExMSw3LjI3MjEyOTg4IDEwLjU0MzgzMzksNi42MDUyOTcyNSBaIiBpZD0i8J+OqC1Db2xvciI+PC9wYXRoPg0KICAgIDwvZz4NCiAgPC9nPg0KPC9zdmc+",alt:"",id:"color-picker-image"}),(0,l.jsx)("input",{ref:this._colorInputRef,id:"color-picker",type:"color",value:this.props.globalState.backgroundColor.toHexString().slice(0,7),onChange:e=>this.changeBackground(e.target.value)})]})]}),(0,l.jsx)("div",{title:"Open preview in new window",id:"preview-new-window",onClick:()=>this.onPopUp(),className:"button",children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmZmZmY7fTwvc3R5bGU+PC9kZWZzPjxnIGlkPSJfLVN5c3RlbS1JY29ucyIgZGF0YS1uYW1lPSLwn5SNLVN5c3RlbS1JY29ucyI+PGcgaWQ9ImljX2ZsdWVudF93aW5kb3dfbmV3XzIwX3JlZ3VsYXIiIGRhdGEtbmFtZT0iaWMgZmx1ZW50IHdpbmRvdyBuZXcgMjAgcmVndWxhciI+PHBhdGggaWQ9Il8tQ29sb3IiIGRhdGEtbmFtZT0i8J+OqC1Db2xvciIgY2xhc3M9ImNscy0xIiBkPSJNMTguMTQsMi40NGEzLjQyLDMuNDIsMCwwLDEsMy40MSwzLjE5djkuNzhhMy40MSwzLjQxLDAsMCwxLTIuNDEsMy4yNkEzLjQ0LDMuNDQsMCwwLDEsMTYsMjEuNTVINy4yMkE0Ljc4LDQuNzgsMCwwLDEsMi40NSwxN1Y4LjI3QTMuNDIsMy40MiwwLDAsMSw1LjMxLDQuOWEzLjQzLDMuNDMsMCwwLDEsMy0yLjQ1aDkuOFptLTEzLDMuOUEyLDIsMCwwLDAsMy44Miw4LjA2djguNzJBMy40MSwzLjQxLDAsMCwwLDcsMjAuMThoOC43OEEyLDIsMCwwLDAsMTcuNjMsMTlsLjA4LS4xN0g4LjU5YTMuNDIsMy40MiwwLDAsMS0zLjQxLTMuMTlWNi4zNFptMTMtMi41M0g4LjU5YTIuMDUsMi4wNSwwLDAsMC0yLDIuMDV2OS41NWEyLjA1LDIuMDUsMCwwLDAsMi4wNSwyLjA1aDkuNTVhMi4wNSwyLjA1LDAsMCwwLDIuMDUtMi4wNVY1Ljg2QTIuMDUsMi4wNSwwLDAsMCwxOC4xNCwzLjgxWk0xNi43OCw2LjU0YS42OS42OSwwLDAsMSwuNjcuNTZ2NS41NmEuNjguNjgsMCwwLDEtLjY4LjY4LjY3LjY3LDAsMCwxLS42Ny0uNTZWOC44N2wtNS42Niw1LjY2YS42OC42OCwwLDAsMS0xLS44N2wuMDgtLjFMMTUuMTMsNy45SDExLjM0YS42Ny42NywwLDAsMS0uNjgtLjY4LjY5LjY5LDAsMCwxLC41Ni0uNjdoNS41NloiLz48L2c+PC9nPjwvc3ZnPg==",alt:""})})]})}}class Bo extends a.Component{constructor(e){super(e),this._onPointerOverCanvas=()=>{this.props.globalState.pointerOverCanvas=!0},this._onPointerOutCanvas=()=>{this.props.globalState.pointerOverCanvas=!1},this.state={isLoading:!0},this._onIsLoadingChangedObserver=this.props.globalState.onIsLoadingChanged.add((e=>this.setState({isLoading:e}))),this._onResetRequiredObserver=this.props.globalState.onResetRequiredObservable.add((()=>{this.forceUpdate()}))}componentWillUnmount(){this.props.globalState.onIsLoadingChanged.remove(this._onIsLoadingChangedObserver),this.props.globalState.onResetRequiredObservable.remove(this._onResetRequiredObserver)}changeBackFaceCulling(e){this.props.globalState.backFaceCulling=e,s.DataStorage.WriteBoolean("BackFaceCulling",e),this.props.globalState.onBackFaceCullingChanged.notifyObservers(),this.forceUpdate()}changeDepthPrePass(e){this.props.globalState.depthPrePass=e,s.DataStorage.WriteBoolean("DepthPrePass",e),this.props.globalState.onDepthPrePassChanged.notifyObservers(),this.forceUpdate()}changeParticleSystemBlendMode(e){this.props.globalState.particleSystemBlendMode!==e&&(this.props.globalState.particleSystemBlendMode=e,this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(null),s.DataStorage.WriteNumber("DefaultParticleSystemBlendMode",e),this.forceUpdate())}render(){const e=[{label:"Add",value:s.ParticleSystem.BLENDMODE_ADD},{label:"Multiply",value:s.ParticleSystem.BLENDMODE_MULTIPLY},{label:"Multiply Add",value:s.ParticleSystem.BLENDMODE_MULTIPLYADD},{label:"OneOne",value:s.ParticleSystem.BLENDMODE_ONEONE},{label:"Standard",value:s.ParticleSystem.BLENDMODE_STANDARD}];return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)("div",{id:"preview",children:[(0,l.jsx)("canvas",{onPointerOver:this._onPointerOverCanvas,onPointerOut:this._onPointerOutCanvas,id:"preview-canvas"}),(0,l.jsx)("div",{className:"waitPanel"+(this.state.isLoading?"":" hidden"),children:"Please wait, loading..."})]}),this.props.globalState.mode===s.NodeMaterialModes.Particle&&(0,l.jsx)("div",{id:"preview-config-bar",className:"extended",children:(0,l.jsx)(yo,{label:"Blend mode",options:e,target:this.props.globalState,propertyName:"particleSystemBlendMode",noDirectUpdate:!0,onSelect:e=>{this.changeParticleSystemBlendMode(e)}})}),this.props.globalState.mode===s.NodeMaterialModes.Material&&(0,l.jsx)(l.Fragment,{children:(0,l.jsxs)("div",{id:"preview-config-bar",children:[(0,l.jsx)("div",{title:"Render without back face culling",onClick:()=>this.changeBackFaceCulling(!this.props.globalState.backFaceCulling),className:"button back-face"+(this.props.globalState.backFaceCulling?"":" selected"),children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNOC42MiwxMS4ySDMuOTJsMy0zYS43NS43NSwwLDAsMCwwLTEuMDYuNzQuNzQsMCwwLDAtMS4wNiwwTDIuMjQsMTAuNzZhMS42NywxLjY3LDAsMCwwLDAsMi4zN2wzLjU4LDMuNThhLjc1Ljc1LDAsMCwwLDEuMDYsMCwuNzUuNzUsMCwwLDAsMC0xLjA2bC0zLTNoNC43YS43NS43NSwwLDEsMCwwLTEuNVoiIHN0eWxlPSJmaWxsOndoaXRlIi8+PHBhdGggZD0iTTIxLjc2LDEwLjc2LDE4LjE4LDcuMThhLjc0Ljc0LDAsMCwwLTEuMDYsMCwuNzUuNzUsMCwwLDAsMCwxLjA2bDMsM2gtNC43YS43NS43NSwwLDEsMCwwLDEuNWg0LjdsLTMsM2EuNzUuNzUsMCwwLDAsMCwxLjA2Ljc0Ljc0LDAsMCwwLC41My4yMi43My43MywwLDAsMCwuNTMtLjIybDMuNTgtMy41OEExLjY3LDEuNjcsMCwwLDAsMjEuNzYsMTAuNzZaIiBzdHlsZT0iZmlsbDp3aGl0ZSIvPjxwYXRoIGQ9Ik0xMiwzLjY0YS43Ni43NiwwLDAsMC0uNzUuNzVWMTkuNjFhLjc1Ljc1LDAsMCwwLDEuNSwwVjQuMzlBLjc1Ljc1LDAsMCwwLDEyLDMuNjRaIiBzdHlsZT0iZmlsbDp3aGl0ZSIvPjwvc3ZnPg==",alt:""})}),(0,l.jsx)("div",{title:"Render with depth pre-pass",onClick:()=>this.changeDepthPrePass(!this.props.globalState.depthPrePass),className:"button depth-pass"+(this.props.globalState.depthPrePass?" selected":""),children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMjEuMTIsMTgsMTYuMjgsOC4zNWExLjM0LDEuMzQsMCwwLDAtMS4yMS0uNzYsMS4zNiwxLjM2LDAsMCwwLTEsLjQyaDBsLS44Ny0xLjc0QTEuMzUsMS4zNSwwLDAsMCwxMiw1LjUyYTEuMzIsMS4zMiwwLDAsMC0xLC40MmgwbC0uODctMS43NWExLjM2LDEuMzYsMCwwLDAtMS4yMi0uNzUsMS4zNCwxLjM0LDAsMCwwLTEuMjEuNzVMMi44OCwxMy44NmExLjM2LDEuMzYsMCwwLDAsMS4yMiwySDZsMCwuMTFhMS4zNiwxLjM2LDAsMCwwLDEuMjEsMkg5LjA3TDksMThhMS4zNSwxLjM1LDAsMCwwLDEuMjEsMkgxOS45YTEuMzUsMS4zNSwwLDAsMCwxLjIyLTJaTTYuNzUsMTQuMzNINC4zMkw4LjkzLDUuMTFsMS4yMiwyLjQzWm0zLjA3LDIuMDhINy4zOUwxMiw3LjE5bDEuMjIsMi40M1ptLjY0LDIuMDcsNC42MS05LjIxLDQuNjEsOS4yMVoiIHN0eWxlPSJmaWxsOndoaXRlIi8+PC9zdmc+",alt:""})}),(0,l.jsx)("div",{title:"Turn on/off hemispheric light",onClick:()=>{this.props.globalState.hemisphericLight=!this.props.globalState.hemisphericLight,s.DataStorage.WriteBoolean("HemisphericLight",this.props.globalState.hemisphericLight),this.props.globalState.onLightUpdated.notifyObservers(),this.forceUpdate()},className:"button hemispheric-light"+(this.props.globalState.hemisphericLight?" selected":""),children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA1OS4xICg4NjE0NCkgLSBodHRwczovL3NrZXRjaC5jb20gLS0+DQogIDx0aXRsZT5pY19mbHVlbnRfbGlnaHRidWxiXzI0X3JlZ3VsYXI8L3RpdGxlPg0KICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4NCiAgPGcgaWQ9IvCflI0tUHJvZHVjdC1JY29ucyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+DQogICAgPGcgaWQ9ImljX2ZsdWVudF9saWdodGJ1bGJfMjRfcmVndWxhciIgZmlsbD0id2hpdGUiIGZpbGwtcnVsZT0ibm9uemVybyI+DQogICAgICA8cGF0aCBkPSJNMTIuMDAwMDA4LDIuMDAxMzk3MzQgQzE2LjAwNDA2MjgsMi4wMDEzOTczNCAxOS4yNDk5OTIsNS4yNDczMzIwOCAxOS4yNDk5OTIsOS4yNTEzOTczNCBDMTkuMjQ5OTkyLDExLjM0NzQ1NjcgMTguMzQ5MzMzMywxMy4yNzExMDU0IDE2LjU4Njk1MzUsMTQuOTkzMzAxMSBDMTYuNTEwMDA1NCwxNS4wNjg1MDA0IDE2LjQ1MDQ0MSwxNS4xNTkwNjE3IDE2LjQxMTg0NTcsMTUuMjU4NjAzMSBMMTYuMzgwMzczLDE1LjM2MDkwMTYgTDE1LjI0OTI5NTcsMjAuMjU2NDk3IEMxNS4wMjY1OTEzLDIxLjIyMDQxOTUgMTQuMjAzNDcwNywyMS45MTg3NjExIDEzLjIzMDI1NTgsMjEuOTkzMzc5NiBMMTMuMDU3MDQ1NiwyMiBMMTAuOTQzMjY4OSwyMiBDOS45NTM3NDk5NywyMiA5LjA4NzkxNDg2LDIxLjM1NDk0OTIgOC43OTYyOTgwOCwyMC40MjMyNTM0IEw4Ljc1MDg4ODc0LDIwLjI1NTkzMzkgTDcuNjIxMzIzOTksMTUuMzYxMTUzMyBDNy41ODkwNDMwNiwxNS4yMjEyNTk1IDcuNTE3MjgzMjEsMTUuMDkzNTY5NSA3LjQxNDU2ODI0LDE0Ljk5MzI1MTcgQzUuNzM1MTYyMDcsMTMuMzUzMDM5OSA0LjgzNzc5MDExLDExLjUzMDE1MTkgNC43NTYxMzQyOSw5LjU0OTY1MTM4IEw0Ljc1MDAwOCw5LjI1MTM5NzM0IEw0Ljc1Mzg4MzIyLDkuMDEyMDgyOTIgQzQuODgwMTQ4NTMsNS4xMTg3OTA0MSA4LjA3NjAyMTM0LDIuMDAxMzk3MzQgMTIuMDAwMDA4LDIuMDAxMzk3MzQgWiBNMTQuMTE1MDA4LDE4LjQ5OTM5NzMgTDkuODg0MDA4LDE4LjQ5OTM5NzMgTDEwLjIxMjQ3NTUsMTkuOTE4NjQ0NiBDMTAuMjgzMTUyOSwyMC4yMjQ5MTMxIDEwLjUzNTY2NzYsMjAuNDUwNzk2MiAxMC44NDAwNjEyLDIwLjQ5MjkxMDEgTDEwLjk0MzI2ODksMjAuNSBMMTMuMDU3MDQ1NiwyMC41IEMxMy4zNzEyOTg1LDIwLjUgMTMuNjQ4MTM2NCwyMC4zMDQ4MjI2IDEzLjc1NzY2MiwyMC4wMTc3NzU2IEwxMy43ODc3OTU2LDE5LjkxODgzMjMgTDE0LjExNTAwOCwxOC40OTkzOTczIFogTTEyLjAwMDAwOCwzLjUwMTM5NzM0IEM4Ljg5ODIxOTIyLDMuNTAxMzk3MzQgNi4zNzAwNzA4Myw1Ljk1NzQxMTExIDYuMjU0MTYwMDgsOS4wMzA4NDEzOSBMNi4yNTAwMDgsOS4yNTEzOTczNCBMNi4yNTY3MjM0Myw5LjUyODQwNjc5IEM2LjMzMjg2OTUzLDExLjA5MTc2OTUgNy4wNTcyMjM1MiwxMi41NDc1MzQyIDguNDYyNjMyMjcsMTMuOTIwMTQzMiBDOC43MjY3NjAxMywxNC4xNzgxMDY4IDguOTIyNjYyNTcsMTQuNDk2NDA3NSA5LjAzNDIzMTM1LDE0Ljg0NjM4MTUgTDkuMDgyOTEzMzYsMTUuMDIzODc1MiBMOS41MzgwMDgsMTYuOTk5Mzk3MyBMMTQuNDYxMDA4LDE2Ljk5OTM5NzMgTDE0LjkxODg3MjksMTUuMDIzMjM3IEMxNS4wMDE5MDExLDE0LjY2Mzg2OTQgMTUuMTcxNzY2NCwxNC4zMzEzNjc3IDE1LjQxMjQyMTUsMTQuMDU0Mjg5MyBMMTUuNTM4NTczOSwxMy45MjA1MDA5IEMxNi45NDMxOTk4LDEyLjU0NzkwMiAxNy42NjcxNzM4LDExLjA5MjAzMzggMTcuNzQzMjgwMSw5LjUyODQ0NzUgTDE3Ljc0OTk5Miw5LjI1MTM5NzM0IEwxNy43NDU4Mzk5LDkuMDMwODQxNTQgQzE3LjYyOTkyOTMsNS45NTc0MTMyIDE1LjEwMTc4MzMsMy41MDEzOTczNCAxMi4wMDAwMDgsMy41MDEzOTczNCBaIiBpZD0i8J+OqC1Db2xvciI+PC9wYXRoPg0KICAgIDwvZz4NCiAgPC9nPg0KPC9zdmc+",alt:""})}),(0,l.jsx)("div",{title:"Turn on/off direction light #1",onClick:()=>{this.props.globalState.directionalLight1=!this.props.globalState.directionalLight1,s.DataStorage.WriteBoolean("DirectionalLight1",this.props.globalState.directionalLight1),this.props.globalState.onLightUpdated.notifyObservers(),this.forceUpdate()},className:"button direction-light-1"+(this.props.globalState.directionalLight1?" selected":""),children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy4xMywxMy42MWEuNzYuNzYsMCwwLDAsLjA2LDEuMDYsMS42LDEuNiwwLDAsMSwuNTEuODhsMSw0LjY4QTIuMjYsMi4yNiwwLDAsMCwxMC45MiwyMmgyLjE2YTIuMjYsMi4yNiwwLDAsMCwyLjE5LTEuNzZsMS00LjY4YTEuNiwxLjYsMCwwLDEsLjUxLS44OCw3LjE4LDcuMTgsMCwwLDAsMi40Mi01LDcuMjYsNy4yNiwwLDAsMC0yLTUuNEE3LjEzLDcuMTMsMCwwLDAsMTIsMiw2LjksNi45LDAsMCwwLDcuMTMsMy45NGEuNzUuNzUsMCwxLDAsMSwxLjFBNS4zNSw1LjM1LDAsMCwxLDEyLDMuNTFhNS42Nyw1LjY3LDAsMCwxLDQuMTYsMS44LDUuOCw1LjgsMCwwLDEsMS41OCw0LjI4LDUuNyw1LjcsMCwwLDEtMS45MywzLjk1LDMuMTgsMy4xOCwwLDAsMC0xLDEuNjlMMTQuNDUsMTdIOS41NWwtLjM4LTEuNzdhMy4xNiwzLjE2LDAsMCwwLTEtMS42OEEuNzUuNzUsMCwwLDAsNy4xMywxMy42MVptMy4wNiw2LjI5LS4zLTEuNGg0LjIzbC0uMzEsMS40YS43Ni43NiwwLDAsMS0uNzMuNTlIMTAuOTJBLjc2Ljc2LDAsMCwxLDEwLjE5LDE5LjlaIiBzdHlsZT0iZmlsbDp3aGl0ZSIvPjxwYXRoIGQ9Ik0yLjIzLDguODYsNC44Nyw2LjIzYS43NS43NSwwLDAsMSwxLjA2LDAsLjc0Ljc0LDAsMCwxLDAsMS4wNkw0LjU4LDguNjRoNy4xMWEuNzUuNzUsMCwwLDEsMCwxLjVINC41OGwxLjM1LDEuMzVhLjc0Ljc0LDAsMCwxLDAsMS4wNi43NS43NSwwLDAsMS0uNTMuMjIuNzQuNzQsMCwwLDEtLjUzLS4yMkwyLjIzLDkuOTJhLjc1Ljc1LDAsMCwxLDAtMS4wNloiIHN0eWxlPSJmaWxsOndoaXRlIi8+PC9zdmc+",alt:""})}),(0,l.jsx)("div",{title:"Turn on/off direction light #0",onClick:()=>{this.props.globalState.directionalLight0=!this.props.globalState.directionalLight0,s.DataStorage.WriteBoolean("DirectionalLight0",this.props.globalState.directionalLight0),this.props.globalState.onLightUpdated.notifyObservers(),this.forceUpdate()},className:"button direction-light-0"+(this.props.globalState.directionalLight0?" selected":""),children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuODEsMTMuNTVhMy4xNiwzLjE2LDAsMCwwLTEsMS42OEwxNC40NSwxN0g5LjU1bC0uMzgtMS43N2EzLjE4LDMuMTgsMCwwLDAtMS0xLjY5QTUuNyw1LjcsMCwwLDEsNi4yNiw5LjU5LDUuOCw1LjgsMCwwLDEsNy44NCw1LjMxLDUuNjcsNS42NywwLDAsMSwxMiwzLjUxLDUuMzUsNS4zNSwwLDAsMSwxNS44NSw1YS43NS43NSwwLDAsMCwxLTEuMUE2LjksNi45LDAsMCwwLDEyLDIsNy4xMyw3LjEzLDAsMCwwLDYuNzUsNC4yOGE3LjI2LDcuMjYsMCwwLDAtMiw1LjQsNy4xOCw3LjE4LDAsMCwwLDIuNDIsNSwxLjYsMS42LDAsMCwxLC41MS44OGwxLDQuNjhBMi4yNiwyLjI2LDAsMCwwLDEwLjkyLDIyaDIuMTZhMi4yNiwyLjI2LDAsMCwwLDIuMTktMS43NmwxLTQuNjhhMS42LDEuNiwwLDAsMSwuNTEtLjg4Ljc2Ljc2LDAsMCwwLC4wNi0xLjA2QS43NS43NSwwLDAsMCwxNS44MSwxMy41NVptLTIuNzMsNi45NEgxMC45MmEuNzYuNzYsMCwwLDEtLjczLS41OWwtLjMxLTEuNGg0LjIzbC0uMywxLjRBLjc2Ljc2LDAsMCwxLDEzLjA4LDIwLjQ5WiIgc3R5bGU9ImZpbGw6d2hpdGUiLz48cGF0aCBkPSJNMjEuNzcsOC44NiwxOS4xMyw2LjIzYS43NS43NSwwLDAsMC0xLjA2LDAsLjc0Ljc0LDAsMCwwLDAsMS4wNmwxLjM1LDEuMzVIMTIuMzFhLjc1Ljc1LDAsMCwwLDAsMS41aDcuMTFsLTEuMzUsMS4zNWEuNzQuNzQsMCwwLDAsMCwxLjA2Ljc1Ljc1LDAsMCwwLC41My4yMi43NC43NCwwLDAsMCwuNTMtLjIybDIuNjQtMi42M2EuNzUuNzUsMCwwLDAsMC0xLjA2WiIgc3R5bGU9ImZpbGw6d2hpdGUiLz48L3N2Zz4=",alt:""})}),(0,l.jsx)("div",{title:"Turn on/off environment",onClick:()=>{this.props.globalState.backgroundHDR=!this.props.globalState.backgroundHDR,s.DataStorage.WriteBoolean("backgroundHDR",this.props.globalState.backgroundHDR),this.props.globalState.onBackgroundHDRUpdated.notifyObservers(),this.forceUpdate()},className:"button "+(this.props.globalState.backgroundHDR?" selected":""),children:(0,l.jsx)("img",{src:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48ZGVmcz48c3R5bGU+LmNscy0xe3N0cm9rZS13aWR0aDowcHg7fTwvc3R5bGU+PC9kZWZzPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0ibTEyLDEuOTdDNi40NiwxLjk3LDEuOTcsNi40NiwxLjk3LDEyczQuNDksMTAuMDMsMTAuMDMsMTAuMDMsMTAuMDMtNC40OSwxMC4wMy0xMC4wM1MxNy41NCwxLjk3LDEyLDEuOTdabTAsMTguNTVjLTQuNzEsMC04LjUyLTMuODItOC41Mi04LjUyUzcuMjksMy40OCwxMiwzLjQ4czguNTIsMy44Miw4LjUyLDguNTItMy44Miw4LjUyLTguNTIsOC41MlptNS4wMS0xMC4zM2MwLTIuNzctMi4yNS01LjAxLTUuMDEtNS4wMXMtNS4wMSwyLjI0LTUuMDEsNS4wMXYuMjdzLjAzLjI2LjAzLjI2Yy4xNCwxLjI3Ljc0LDIuNDIsMS42OCwzLjI0bC4xNS4xMy43NywzLjM4LjA0LjE1Yy4yNi43My45MSwxLjIsMS42NSwxLjJoMS41NHMuMTUtLjAzLjE1LS4wM2MuNy0uMTQsMS4yMy0uNjQsMS4zOC0xLjMxbC43Ny0zLjM4LS4wMy4wM2MxLjItLjk2LDEuOS0yLjM5LDEuOS0zLjkzWm0tNC4xLDYuOTRjLS4wMi4wOS0uMS4xNi0uMi4xOGgtLjA3cy0xLjM0LDAtMS4zNCwwYy0uMSwwLS4xOS0uMDYtLjIyLS4xNWwtLjAyLS4wNy0uMjUtMS4wOGgyLjM1bC0uMjYsMS4xMlptMS4yOC00LjJsLS4xNy4xMy0uMDguMDdjLS4xLjEtLjE3LjIzLS4yLjM2bC0uMjMsMS4wMWgtLjA0cy0yLjk1LDAtMi45NSwwaC0uMDRzLS4yMy0xLjAxLS4yMy0xLjAxYy0uMDQtLjE4LS4xNS0uMzQtLjMtLjQ0LS44Ni0uNjEtMS40LTEuNTgtMS40Ni0yLjY1di0uMjNjMC0xLjkyLDEuNTctMy40OSwzLjUtMy40OXMzLjUxLDEuNTcsMy41MSwzLjUxYzAsMS4wOC0uNDksMi4wOC0xLjMyLDIuNzRaIiBzdHlsZT0iZmlsbDp3aGl0ZSIvPjwvc3ZnPg==",alt:""})})]})})]})}}function Do(e,t){Array.from(e.querySelectorAll("style")).forEach((e=>{const n=t.createElement("style");n.textContent=e.textContent,t.head.appendChild(n)})),Array.from(e.querySelectorAll('link[rel="stylesheet"]')).forEach((e=>{const n=t.createElement("link");n.rel="stylesheet",n.href=e.href,t.head.appendChild(n)}))}function Io(e,t){const n={width:300,height:800,...t},r={width:n.width,height:n.height,top:(window.innerHeight-n.width)/2+window.screenY,left:(window.innerWidth-n.height)/2+window.screenX},o=Object.keys(r).map((e=>e+"="+r[e])).join(","),a=window.open("",e,o);if(!a)return null;const i=a.document,s=i.createElement("link");s.rel="stylesheet",s.href="https://use.typekit.net/cta4xsb.css",i.head.appendChild(s),i.title=e,i.body.style.width="100%",i.body.style.height="100%",i.body.style.margin="0",i.body.style.padding="0";const l=i.createElement("div");return l.style.width="100%",l.style.height="100%",l.style.margin="0",l.style.padding="0",n.onParentControlCreateCallback&&n.onParentControlCreateCallback(l),a.document.body.appendChild(l),Do(window.document,i),setTimeout((()=>{Do(window.document,i)}),0),n.onWindowCreateCallback&&n.onWindowCreateCallback(a),l}var jo=r(5778),Eo={};Eo.styleTagTransform=v(),Eo.setAttributes=g(),Eo.insert=A().bind(null,"head"),Eo.domAPI=p(),Eo.insertStyleElement=C(),u()(jo.A,Eo),jo.A&&jo.A.locals&&jo.A.locals;var To=r(2878),Oo=r(1917),Po={};Po.styleTagTransform=v(),Po.setAttributes=g(),Po.insert=A().bind(null,"head"),Po.domAPI=p(),Po.insertStyleElement=C(),u()(Oo.A,Po);const zo=Oo.A&&Oo.A.locals?Oo.A.locals:void 0;class Ro{get isTargetCandidate(){return this._isTargetCandidate}set isTargetCandidate(e){this._isTargetCandidate!==e&&(this._isTargetCandidate=e,e?this._path.classList.add(zo["target-candidate"]):this._path.classList.remove(zo["target-candidate"]))}get isVisible(){return this._isVisible}set isVisible(e){this._isVisible=e,e?(this._path.classList.remove(Zr.hidden),this._selectionPath.classList.remove(Zr.hidden)):(this._path.classList.add(Zr.hidden),this._selectionPath.classList.add(Zr.hidden)),this.update()}get portA(){return this._portA}get portB(){return this._portB}get nodeA(){return this._nodeA}get nodeB(){return this._nodeB}intersectsWith(e){const t=this._path.getBoundingClientRect();if(e.left>t.right||e.right<t.left||e.top>t.bottom||e.bottom<t.top)return!1;const n=this._graphCanvas.zoom,r=this._graphCanvas.svgCanvas.getBoundingClientRect(),o=(e.x-r.x)/n,a=(e.y-r.y)/n,i=o+e.width/n,s=a+e.height/n;for(let e=0;e<1;e+=.1){const t=this._path.getPointAtLength(e*this._path.getTotalLength());if(o<t.x&&i>t.x&&a<t.y&&s>t.y)return!0}return!1}update(e=0,t=0,n=!1){const r=this._portA.element.getBoundingClientRect(),o=this._graphCanvas.canvasContainer.getBoundingClientRect(),a=this._graphCanvas.zoom,i=o.left,s=o.top,l=(r.left-i+.5*r.width)/a,c=(r.top-s+.5*r.height)/a;if(this._portB){const n=this._portB.element.getBoundingClientRect();e=(n.left-i+.5*n.width)/a,t=(n.top-s+.5*n.height)/a}if(n)this._path.setAttribute("d",`M${l},${c} L${e},${t}`),this._path.setAttribute("stroke-dasharray","10, 10"),this._path.setAttribute("stroke-linecap","round");else{const n=e-l,r=t-c,o=Math.min(.5*Math.sqrt(n*n+r*r),300);this._path.setAttribute("d",`M${l},${c} C${l+o},${c} ${e-o},${t} ${e},${t}`),this._selectionPath.setAttribute("d",`M${l},${c} C${l+o},${c} ${e-o},${t} ${e},${t}`)}this._path.setAttribute("stroke",this._portA.element.style.backgroundColor)}get path(){return this._path}get selectionPath(){return this._selectionPath}constructor(e,t,n,r,o){this._isVisible=!0,this._isTargetCandidate=!1,this.onDisposedObservable=new s.Observable,this._portA=t,this._portB=r,this._nodeA=n,this._nodeB=o,this._graphCanvas=e;const a=t.element.ownerDocument,i=e.svgCanvas;this._path=a.createElementNS("http://www.w3.org/2000/svg","path"),this._path.setAttribute("fill","none"),this._path.classList.add(zo.link),i.appendChild(this._path),this._selectionPath=a.createElementNS("http://www.w3.org/2000/svg","path"),this._selectionPath.setAttribute("fill","none"),this._selectionPath.classList.add(zo["selection-link"]),i.appendChild(this._selectionPath),this._selectionPath.onmousedown=e=>this.onClick(e),this._portB&&this.update(),this._onSelectionChangedObserver=this._graphCanvas.stateManager.onSelectionChangedObservable.add((e=>{const{selection:t}=e||{};t===this?(this._path.classList.add(zo.selected),this._selectionPath.classList.add(zo.selected)):(this._path.classList.remove(zo.selected),this._selectionPath.classList.remove(zo.selected))}))}onClick(e){const t=this._graphCanvas.stateManager,n=this._nodeA,r=this._portA.portData,o=this._nodeB,a=this._portB.portData,i=e=>{const i=e.content.data;this.dispose(),this._graphCanvas.connectNodes(n,r,e,e.getPortDataForPortDataContent(i.input)),this._graphCanvas.connectNodes(e,e.getPortDataForPortDataContent(i.output),o,a),t.onRebuildRequiredObservable.notifyObservers()};if(e.altKey){if(!t.isElbowConnectionAllowed(this._portA,this._portB))return;return t.onNewNodeCreatedObservable.addOnce(i),t.onNewBlockRequiredObservable.notifyObservers({type:"ElbowBlock",targetX:e.clientX,targetY:e.clientY,needRepositioning:!0}),void t.historyStack.collapseLastTwo()}if(e.ctrlKey){if(!t.isDebugConnectionAllowed(this._portA,this._portB))return;return t.onNewNodeCreatedObservable.addOnce(i),t.onNewBlockRequiredObservable.notifyObservers({type:"DebugBlock",targetX:e.clientX,targetY:e.clientY,needRepositioning:!0}),void t.historyStack.collapseLastTwo()}t.onSelectionChangedObservable.notifyObservers({selection:this})}dispose(e=!0){this._graphCanvas.stateManager.onSelectionChangedObservable.remove(this._onSelectionChangedObserver),this._path.parentElement&&this._path.parentElement.removeChild(this._path),this._selectionPath.parentElement&&this._selectionPath.parentElement.removeChild(this._selectionPath),this._nodeB&&(this._nodeA.links.splice(this._nodeA.links.indexOf(this),1),this._nodeB.links.splice(this._nodeB.links.indexOf(this),1),this._graphCanvas.links.splice(this._graphCanvas.links.indexOf(this),1),this._portA.portData.disconnectFrom(this._portB.portData),eo(this._nodeB,void 0,void 0,this._graphCanvas)),e&&(this.onDisposedObservable.notifyObservers(this),this.onDisposedObservable.clear())}}var Uo=r(8259),Fo={};Fo.styleTagTransform=v(),Fo.setAttributes=g(),Fo.insert=A().bind(null,"head"),Fo.domAPI=p(),Fo.insertStyleElement=C(),u()(Uo.A,Fo);const Yo=Uo.A&&Uo.A.locals?Uo.A.locals:void 0;var Vo=r(2976),Go={};Go.styleTagTransform=v(),Go.setAttributes=g(),Go.insert=A().bind(null,"head"),Go.domAPI=p(),Go.insertStyleElement=C(),u()(Vo.A,Go),Vo.A&&Vo.A.locals&&Vo.A.locals;class Wo extends a.Component{constructor(e){super(e),this.state={isVisible:!1,filter:"",selectedIndex:0},this._handleEscKey=e=>{"Escape"===e.key&&this.hide()},this.props.stateManager.onSearchBoxRequiredObservable.add((e=>{this._targetX=e.x,this._targetY=e.y,this.setState({isVisible:!0,filter:"",selectedIndex:0}),this.props.stateManager.hostDocument.addEventListener("keydown",this._handleEscKey)}))}hide(){this.setState({isVisible:!1}),this.props.stateManager.modalIsDisplayed=!1,this.props.stateManager.hostDocument.removeEventListener("keydown",this._handleEscKey)}onFilterChange(e){this.setState({filter:e.target.value})}onNewNodeRequested(e){this.props.stateManager.onNewBlockRequiredObservable.notifyObservers({type:e,targetX:this._targetX,targetY:this._targetY,needRepositioning:!0,smartAdd:!0}),this.hide()}onKeyDown(e){"Enter"===e.code&&this._nodes.length>0?this.onNewNodeRequested(this._nodes[this.state.selectedIndex]):"ArrowDown"===e.code&&this._nodes.length>0?this.setState({selectedIndex:Math.min(this.state.selectedIndex+1,this._nodes.length-1)}):"ArrowUp"===e.code&&this._nodes.length>0&&this.setState({selectedIndex:Math.max(this.state.selectedIndex-1,0)})}render(){if(!this.state.isVisible)return null;if(this._nodes=Array.from(new Set(Y.RegisteredNodeNames.sort())),this.state.filter){const e=this.state.filter.toLowerCase().trim();this._nodes=this._nodes.filter((t=>Y.NameFormatter(t).toLowerCase().includes(e)))}const e=this.props.stateManager.hostDocument.getElementById("graph-canvas").getBoundingClientRect(),t=this._targetX-(150+e.x),n=this._targetY-(200+e.y),r={left:t+"px",top:n+"px"};return t+300>e.width?r.left=e.width-300-10+"px":t<10&&(r.left="10px"),n+400>e.height?r.top=e.height-400-10+"px":n<10&&(r.top="10px"),(0,l.jsxs)("div",{id:"graph-search-container",children:[(0,l.jsx)("div",{id:"graph-search-picking-blocker",onClick:()=>this.hide()}),(0,l.jsxs)("div",{id:"graph-search-box",style:r,children:[(0,l.jsx)("div",{className:"graph-search-box-title",children:"Add a node"}),(0,l.jsx)("input",{type:"text",placeholder:"Search...",onChange:e=>this.onFilterChange(e),onKeyDown:e=>this.onKeyDown(e),value:this.state.filter,className:"graph-search-box-filter",autoFocus:!0,tabIndex:0}),(0,l.jsx)("div",{className:"graph-search-box-list",children:this._nodes.map(((e,t)=>(0,l.jsx)("div",{className:"graph-search-box-list-item "+(this.state.selectedIndex===t?"selected ":""),onClick:()=>this.onNewNodeRequested(e),children:Y.NameFormatter(e)},e)))})]})]})}}class Ho extends a.Component{get gridSize(){return this._gridSize}set gridSize(e){this._gridSize=e,this.updateTransform()}get stateManager(){return this.props.stateManager}get nodes(){return this._nodes}get links(){return this._links}get frames(){return this._frames}get zoom(){return this._zoom}set zoom(e){this._zoom!==e&&(this._zoom=e,this.updateTransform())}get x(){return this._x}set x(e){this._x=e,this.updateTransform()}get y(){return this._y}set y(e){this._y=e,this.updateTransform()}get selectedNodes(){return this._selectedNodes}get selectedLink(){return this._selectedLink}get selectedFrames(){return this._selectedFrames}get selectedPort(){return this._selectedPort}get canvasContainer(){return this._graphCanvas}get hostCanvas(){return this._hostCanvas}get svgCanvas(){return this._svgCanvas}get selectionContainer(){return this._selectionContainer}get frameContainer(){return this._frameContainer}_selectedFrameAndNodesConflict(e,t){for(const n of e)for(const e of t)if(n.nodes.includes(e))return!0;return!1}constructor(e){super(e),this._minZoom=.1,this._maxZoom=4,this._hostCanvasRef=a.createRef(),this._graphCanvasRef=a.createRef(),this._selectionContainerRef=a.createRef(),this._frameContainerRef=a.createRef(),this._svgCanvasRef=a.createRef(),this._rootContainerRef=a.createRef(),this._nodes=[],this._links=[],this._mouseStartPointX=null,this._mouseStartPointY=null,this._dropPointX=0,this._dropPointY=0,this._selectionStartX=0,this._selectionStartY=0,this._candidateLinkedHasMoved=!1,this._x=0,this._y=0,this._zoom=1,this._selectedNodes=[],this._selectedLink=null,this._selectedPort=null,this._candidateLink=null,this._candidatePort=null,this._gridSize=20,this._selectionBox=null,this._selectedFrames=[],this._frameCandidate=null,this._frames=[],this._nodeDataContentList=new Array,this._altKeyIsPressed=!1,this._multiKeyIsPressed=!1,this._oldY=-1,this._frameIsMoving=!1,this._isLoading=!1,this._targetLinkCandidate=null,this._copiedNodes=[],this._copiedFrames=[],e.stateManager.onSelectionChangedObservable.add((e=>{const{selection:t,forceKeepSelection:n,marqueeSelection:r=!1}=e||{};if(t){if(t instanceof Ro)this._selectedNodes=[],this._selectedFrames=[],this._selectedLink=t,this._selectedPort=null;else if(t instanceof Kr)this._selectedNodes=[],this._selectedFrames=[],this._selectedLink=null,this._selectedPort=t;else if(t instanceof to)this._selectedNodes=[],this._selectedFrames=[],this._selectedLink=null,this._selectedPort=t;else if(t instanceof bo||t instanceof lo)if(r){if(t instanceof lo&&!this._selectedFrames.includes(t)?this._selectedFrames.push(t):t instanceof bo&&!this._selectedNodes.includes(t)&&this._selectedNodes.push(t),this._selectedFrameAndNodesConflict(this.selectedFrames,this.selectedNodes)){const e=new Set;for(const t of this._selectedNodes)for(const n of this._selectedFrames)n.nodes.includes(t)&&e.add(n);this._selectedFrames=this._selectedFrames.filter((t=>!e.has(t)))}}else t instanceof lo?this._multiKeyIsPressed||n?this._selectedFrameAndNodesConflict([t],this._selectedNodes)||this._selectedFrames.includes(t)||this._selectedFrames.push(t):(this._selectedFrames=[t],this._selectedNodes=[],this._selectedLink=null,this._selectedPort=null):t instanceof bo&&(this._multiKeyIsPressed||n?this._selectedFrameAndNodesConflict(this._selectedFrames,[t])||this._selectedNodes.includes(t)||this._selectedNodes.push(t):(this._selectedFrames=[],this._selectedNodes=[t],this._selectedLink=null,this._selectedPort=null))}else this._selectedNodes=[],this._selectedLink=null,this._selectedFrames=[],this._selectedPort=null})),e.stateManager.onCandidatePortSelectedObservable.add((e=>{this._candidatePort=e})),e.stateManager.onGridSizeChanged.add((()=>{this.gridSize=s.DataStorage.ReadNumber("GridSize",20)})),this.props.stateManager.hostDocument.addEventListener("keyup",(()=>this.onKeyUp()),!1),this.props.stateManager.hostDocument.addEventListener("keydown",(e=>{this._altKeyIsPressed=e.altKey,this._multiKeyIsPressed=e.ctrlKey||e.metaKey}),!1),this.props.stateManager.hostDocument.defaultView.addEventListener("blur",(()=>{this._altKeyIsPressed=!1,this._multiKeyIsPressed=!1}),!1),this.props.stateManager.storeEditorData=(e,t)=>{if(e.frames=[],t)e.frames.push(t.serialize(!1));else{e.x=this.x,e.y=this.y,e.zoom=this.zoom;for(const t of this._frames)e.frames.push(t.serialize(!0))}}}populateConnectedEntriesBeforeRemoval(e,t,n,r){n.push(...e.content.inputs.filter((e=>e.isConnected&&t.every((t=>t.content.data!==e.connectedPort?.ownerData)))).map((e=>e.connectedPort))),r.push(...e.content.outputs.filter((e=>e.isConnected)).map((e=>e.endpoints)).flat().filter((e=>e&&t.every((t=>t.content.data!==e.ownerData)))))}automaticRewire(e,t,n=!1){let r=!1;t.length&&e.length&&e.forEach((e=>{if(r)return;if(!e)return;const o=t[0];if(o&&e.canConnectTo(o)){const a=this.findNodeFromData(e.ownerData),i=this.findNodeFromData(o.ownerData);if(this.connectNodes(a,e,i,o),t.shift(),n)return void(r=!0)}}))}smartAddOverLink(e,t){const n=[],r=[],o=[],a=[],i=t.nodeA,s=t.nodeB;t.dispose(),o.push(...e.content.inputs.filter((e=>!e.isConnected))),a.push(...e.content.outputs),n.push(...i.content.outputs),r.push(...s.content.inputs.filter((e=>!e.isConnected))),this.automaticRewire(n,o,!0),this.automaticRewire(a,r,!0),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}smartAddOverNode(e,t){const n=[],r=[];r.push(...e.content.inputs.filter((e=>!e.isConnected))),n.push(...t.content.outputs),this.automaticRewire(n,r,!0),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}deleteSelection(e,t=!1){const n=this.selectedNodes,r=[],o=[];let a=!1;if(n.length>0){a=!0;for(const a of n)t&&this.populateConnectedEntriesBeforeRemoval(a,n,r,o),a.dispose(),e(a.content),this.removeDataFromCache(a.content.data)}if(this.selectedLink&&(a=!0,this.selectedLink.dispose()),this.selectedFrames.length){a=!0;for(const t of this.selectedFrames){if(t.isCollapsed){for(;t.nodes.length>0;)e(t.nodes[0].content),this.removeDataFromCache(t.nodes[0].content.data),t.nodes[0].dispose();t.isCollapsed=!1}else t.nodes.forEach((e=>{e.enclosingFrameId=-1}));t.dispose()}}a&&(this.automaticRewire(r,o),this.props.stateManager.onSelectionChangedObservable.notifyObservers(null),this.props.stateManager.onRebuildRequiredObservable.notifyObservers())}handleKeyDown(e,t,n,r,o,a){if(!this.stateManager.modalIsDisplayed){if("Space"===e.code&&e.target===this.props.stateManager.hostDocument.body)return this.stateManager.modalIsDisplayed=!0,void this.props.stateManager.onSearchBoxRequiredObservable.notifyObservers({x:n,y:r});if(46!==e.keyCode&&8!==e.keyCode||this.props.stateManager.lockObject.lock){if((e.ctrlKey||e.metaKey)&&!this.props.stateManager.lockObject.lock)if("c"===e.key||"C"===e.key){if(this._copiedNodes=[],this._copiedFrames=[],this.selectedFrames.length){for(const e of this.selectedFrames)e.serialize(!0),this._copiedFrames.push(e);return}const e=this.selectedNodes;if(!e.length)return;if(!e[0].content.data)return;this._copiedNodes=e.slice(0)}else if("v"===e.key||"V"===e.key){const e=this.zoom;let t=(r-a.offsetTop-this.y-20)/e;if(this._copiedFrames.length)for(const r of this._copiedFrames){const i=new lo(null,this,!0);this.frames.push(i),i.width=r.width,i.height=r.height,i.width,i.name=r.name,i.color=r.color;let s=(n-a.offsetLeft-this.x)/e;if(i.x=s-i.width/2,i.y=t,r.nodes.length){s=i.x+r.nodes[0].x-r.x,t=i.y+r.nodes[0].y-r.y,this._frameIsMoving=!0;const e=this.pasteSelection(r.nodes,s,t,o);if(e)for(const t of e)i.syncNode(t);this._frameIsMoving=!1}return i.adjustPorts(),r.isCollapsed&&(i.isCollapsed=!0),void this.props.stateManager.onSelectionChangedObservable.notifyObservers({selection:i,forceKeepSelection:!0})}if(!this._copiedNodes.length)return;const i=(n-a.offsetLeft-this.x-Ho.NodeWidth)/e;this.pasteSelection(this._copiedNodes,i,t,o,!0)}}else this.deleteSelection(t,e.altKey)}}pasteSelection(e,t,n,r,o=!1){let a=null;const i=[];e=e.slice(),this.props.stateManager.onSelectionChangedObservable.notifyObservers(null);for(const s of e){if(!s.content.data)continue;const e=r(s.content);let l=0,c=0;a?(l=t+s.x-a.x,c=n+s.y-a.y):(a=s,l=t,c=n),e.x=l,e.y=c,e.cleanAccumulation(),i.push(e),this.props.stateManager.onNewNodeCreatedObservable.notifyObservers(e),o&&this.props.stateManager.onSelectionChangedObservable.notifyObservers({selection:e,forceKeepSelection:!0})}const s=new Array(i.length);for(let t=0;t<i.length;t++)this.reconnectNewNodes(t,i,e,s);return i}reconnectNewNodes(e,t,n,r){if(r[e])return;const o=t[e],a=n[e];for(let e=0;e<a.content.inputs.length;e++){const i=a.content.inputs[e],s=o.content.inputs[e];if(!i.isConnected)continue;const l=this.findNodeFromData(i.connectedPort.ownerData).content,c=n.filter((e=>e.content===l));if(c.length>0){const e=c[0],o=n.indexOf(e);this.reconnectNewNodes(o,t,n,r);const a=l.outputs.indexOf(i.connectedPort);t[o].content.data.outputs[a].connectTo(s.data)}else i.connectedPort.connectTo(s);this.connectPorts(s.connectedPort,s)}o.refresh(),r[e]=!0}getCachedData(){return this._nodeDataContentList}removeDataFromCache(e){const t=this._nodeDataContentList.indexOf(e);t>-1&&this._nodeDataContentList.splice(t,1)}createNodeFromObject(e,t,n=!0){if(-1!==this._nodeDataContentList.indexOf(e.data)){if(e.inputs.length&&n)for(const t of e.inputs)t.isConnected&&this.connectPorts(t.connectedPort,t);return this.nodes.filter((t=>t.content.data===e.data))[0]}if(t(e.data),e.inputs.length)for(const r of e.inputs)r.connectedPort&&n&&this.createNodeFromObject(S.NodeDataBuilder(r.connectedPort.ownerData,this),t);const r=this.appendNode(e);if(e.inputs.length&&n)for(const t of e.inputs)t.isConnected&&this.connectPorts(t.connectedPort,t);return r}getGridPosition(e,t=!1){const n=this.gridSize;return 0===n?e:t?n*Math.ceil(e/n):n*Math.floor(e/n)}getGridPositionCeil(e){const t=this.gridSize;return 0===t?e:t*Math.ceil(e/t)}updateTransform(){this._rootContainer.style.transform=`translate(${this._x}px, ${this._y}px) scale(${this._zoom})`,s.DataStorage.ReadBoolean("ShowGrid",!0)?(this._hostCanvas.style.backgroundSize=`${this._gridSize*this._zoom}px ${this._gridSize*this._zoom}px`,this._hostCanvas.style.backgroundPosition=`${this._x}px ${this._y}px`):this._hostCanvas.style.backgroundSize="0"}onKeyUp(){this._altKeyIsPressed=!1,this._multiKeyIsPressed=!1,this._oldY=-1}findNodeFromData(e){return this.nodes.filter((t=>t.content.data===e))[0]}reset(){this._nodeDataContentList=[];for(const e of this._nodes)e.dispose();const e=this._frames.splice(0);for(const t of e)t.dispose();this._nodes=[],this._frames=[],this._links=[],this._graphCanvas.innerHTML="",this._svgCanvas.innerHTML=""}connectPorts(e,t){if(!e||!t)return;const n=e.ownerData,r=t.ownerData,o=this.findNodeFromData(n),a=this.findNodeFromData(r);if(!o||!a)return;const i=o.getPortForPortData(e),s=a.getPortForPortData(t);if(!i||!s)return;for(const e of this._links){if(e.portA===i&&e.portB===s)return;if(e.portA===s&&e.portB===i)return}const l=new Ro(this,i,o,s,a);this._links.push(l),o.links.push(l),a.links.push(l)}removeLink(e){const t=this._links.indexOf(e);t>-1&&this._links.splice(t,1),e.dispose()}appendNode(e){const t=new bo(e,this.props.stateManager);return t.appendVisual(this._graphCanvas,this),t.addClassToVisual(e.getClassName()),this._nodes.push(t),this._nodeDataContentList.push(e.data),t}distributeGraph(){this.x=0,this.y=0,this.zoom=1;const e=new To.graphlib.Graph;e.setGraph({}),e.setDefaultEdgeLabel((()=>({}))),e.graph().rankdir="LR",this._nodes.forEach((t=>{this._frames.some((e=>-1!==e.nodes.indexOf(t)))||e.setNode(t.id.toString(),{id:t.id,type:"node",width:t.width,height:t.height})})),this._frames.forEach((t=>{e.setNode(t.id.toString(),{id:t.id,type:"frame",width:t.element.clientWidth,height:t.element.clientHeight})})),this._nodes.forEach((t=>{t.content.outputs.forEach((n=>{n.hasEndpoints&&n.endpoints.forEach((n=>{const r=this._frames.filter((e=>-1!==e.nodes.indexOf(t))),o=this._frames.filter((e=>e.nodes.some((e=>e.content.data===n.ownerData)))),a=r.length>0?r[0].id:t.id,i=o.length>0?o[0].id:n.ownerData.uniqueId;e.setEdge(a.toString(),i.toString())}))}))})),To.layout(e),e.nodes().map((t=>e.node(t))).forEach((e=>{if(e)if("node"!==e.type){for(const t of this._frames)if(t.id===e.id)return this._frameIsMoving=!0,t.move(e.x-e.width/2,e.y-e.height/2,!1),t.cleanAccumulation(),void(this._frameIsMoving=!1)}else for(const t of this._nodes)if(t.id===e.id)return t.x=e.x-e.width/2,t.y=e.y-e.height/2,void t.cleanAccumulation()}))}componentDidMount(){this._hostCanvas=this._hostCanvasRef.current,this._rootContainer=this._rootContainerRef.current,this._graphCanvas=this._graphCanvasRef.current,this._svgCanvas=this._svgCanvasRef.current,this._selectionContainer=this._selectionContainerRef.current,this._frameContainer=this._frameContainerRef.current,this.gridSize=s.DataStorage.ReadNumber("GridSize",20),this.updateTransform()}onMove(e){if(!this.stateManager.modalIsDisplayed){if(this._selectionBox){const t=this.canvasContainer.getBoundingClientRect(),n=e.pageX-t.left,r=e.pageY-t.top;return n>this._selectionStartX?(this._selectionBox.style.left=this._selectionStartX/this.zoom+"px",this._selectionBox.style.width=(n-this._selectionStartX)/this.zoom+"px"):(this._selectionBox.style.left=n/this.zoom+"px",this._selectionBox.style.width=(this._selectionStartX-n)/this.zoom+"px"),r>this._selectionStartY?(this._selectionBox.style.top=this._selectionStartY/this.zoom+"px",this._selectionBox.style.height=(r-this._selectionStartY)/this.zoom+"px"):(this._selectionBox.style.top=r/this.zoom+"px",this._selectionBox.style.height=(this._selectionStartY-r)/this.zoom+"px"),void this.props.stateManager.onSelectionBoxMoved.notifyObservers(this._selectionBox.getBoundingClientRect())}if(this._frameCandidate){const t=this.canvasContainer.getBoundingClientRect(),n=e.pageX-t.left,r=e.pageY-t.top;return n>this._selectionStartX?(this._frameCandidate.style.left=this._selectionStartX/this.zoom+"px",this._frameCandidate.style.width=(n-this._selectionStartX)/this.zoom+"px"):(this._frameCandidate.style.left=n/this.zoom+"px",this._frameCandidate.style.width=(this._selectionStartX-n)/this.zoom+"px"),void(r>this._selectionStartY?(this._frameCandidate.style.top=this._selectionStartY/this.zoom+"px",this._frameCandidate.style.height=(r-this._selectionStartY)/this.zoom+"px"):(this._frameCandidate.style.top=r/this.zoom+"px",this._frameCandidate.style.height=(this._selectionStartY-r)/this.zoom+"px"))}if(this._candidateLink){const t=this.canvasContainer.getBoundingClientRect();return this._candidatePort=null,this.props.stateManager.onCandidateLinkMoved.notifyObservers(new s.Vector2(e.pageX,e.pageY)),this._dropPointX=(e.pageX-t.left)/this.zoom,this._dropPointY=(e.pageY-t.top)/this.zoom,this._candidateLink.update(this._dropPointX,this._dropPointY,!0),void(this._candidateLinkedHasMoved=!0)}if(this._altKeyIsPressed&&1===e.buttons){this._oldY<0&&(this._oldY=e.pageY);const t=(e.pageY-this._oldY)/10;if(Math.abs(t)>5){const n=this.zoom;this.zoom=Math.max(Math.min(this._maxZoom,this.zoom+t/100),this._minZoom);const r=e.currentTarget.getBoundingClientRect(),o=r.width,a=o*this.zoom-o*n,i=(e.clientX-r.left-this.x)/n/o;this.x=this.x-a*i,this._oldY=e.pageY}}else this._rootContainer.style.cursor="move",null!==this._mouseStartPointX&&null!==this._mouseStartPointY&&(this.x+=e.clientX-this._mouseStartPointX,this.y+=e.clientY-this._mouseStartPointY,this._mouseStartPointX=e.clientX,this._mouseStartPointY=e.clientY)}}onDown(e){if(!this.stateManager.modalIsDisplayed)if(this._rootContainer.setPointerCapture(e.pointerId),e.nativeEvent.srcElement&&"IMG"===e.nativeEvent.srcElement.nodeName){if(!this._candidateLink){const t=e.nativeEvent.srcElement.parentElement.port;if(this._altKeyIsPressed&&(t.portData.isConnected||t.portData.hasEndpoints)){const e=t.node,n=e.getLinksForPortData(t.portData);n.forEach((e=>{e.dispose(!1)}));const r=n[0].nodeA===e?n[0].nodeB:n[0].nodeA,o=n[0].nodeA===e?n[0].portB:n[0].portA;this._candidateLink=new Ro(this,o,r)}else if(this._multiKeyIsPressed&&(t.portData.isConnected||t.portData.hasEndpoints)){const e=t.node,n=e.getLinksForPortData(t.portData),r=this._selectedLink||n[0],o=r.nodeA===e?r.nodeB:r.nodeA,a=r.nodeA===e?r.portB:r.portA;this._candidateLink=new Ro(this,a,o)}else this._candidateLink=new Ro(this,t,t.node);this._candidateLinkedHasMoved=!1}}else{if(e.currentTarget===this._hostCanvas&&this._multiKeyIsPressed){this._selectionBox=this.props.stateManager.hostDocument.createElement("div"),this._selectionBox.classList.add(Yo["selection-box"]),this._selectionContainer.appendChild(this._selectionBox);const t=this.canvasContainer.getBoundingClientRect();return this._selectionStartX=e.pageX-t.left,this._selectionStartY=e.pageY-t.top,this._selectionBox.style.left=this._selectionStartX/this.zoom+"px",this._selectionBox.style.top=this._selectionStartY/this.zoom+"px",this._selectionBox.style.width="0px",void(this._selectionBox.style.height="0px")}if(e.currentTarget===this._hostCanvas&&e.shiftKey){this._frameCandidate=this.props.stateManager.hostDocument.createElement("div"),this._frameCandidate.classList.add(Zr["frame-box"]),this._frameContainer.appendChild(this._frameCandidate);const t=this.canvasContainer.getBoundingClientRect();return this._selectionStartX=e.pageX-t.left,this._selectionStartY=e.pageY-t.top,this._frameCandidate.style.left=this._selectionStartX/this.zoom+"px",this._frameCandidate.style.top=this._selectionStartY/this.zoom+"px",this._frameCandidate.style.width="0px",void(this._frameCandidate.style.height="0px")}this.props.stateManager.onSelectionChangedObservable.notifyObservers(null),this._mouseStartPointX=e.clientX,this._mouseStartPointY=e.clientY}}onUp(e){if(!this.stateManager.modalIsDisplayed){if(this._mouseStartPointX=null,this._mouseStartPointY=null,this._rootContainer.releasePointerCapture(e.pointerId),this._oldY=-1,this._candidateLink){if(this._candidateLinkedHasMoved)this.processCandidatePort(),this.props.stateManager.onCandidateLinkMoved.notifyObservers(null);else if(this._candidateLink.portA instanceof to){const e=this._candidateLink.portA,t=this.frames.find((t=>t.id===e.parentFrameId));if(t){const n={frame:t,port:e};this.props.stateManager.onSelectionChangedObservable.notifyObservers({selection:n})}}else this._candidateLink.portA instanceof Kr&&this.props.stateManager.onSelectionChangedObservable.notifyObservers({selection:this._candidateLink.portA});this._candidateLink.dispose(),this._candidateLink=null,this._candidatePort=null}if(this._selectionBox&&(this._selectionBox.parentElement.removeChild(this._selectionBox),this._selectionBox=null),this._frameCandidate){const e=new lo(this._frameCandidate,this);this._frames.push(e),this._frameCandidate.parentElement.removeChild(this._frameCandidate),this._frameCandidate=null,this.props.stateManager.onSelectionChangedObservable.notifyObservers({selection:e})}}}onWheel(e){if(this.stateManager.modalIsDisplayed)return;const t=e.deltaY<0?.1:-.1,n=this.zoom;this.zoom=Math.min(Math.max(this._minZoom,this.zoom+t*this.zoom),this._maxZoom);const r=e.currentTarget.getBoundingClientRect(),o=r.width,a=r.height,i=o*this.zoom-o*n,s=a*this.zoom-a*n,l=e.clientX-r.left,c=e.clientY-r.top,u=(l-this.x)/n/o,d=(c-this.y)/n/a;this.x=this.x-i*u,this.y=this.y-s*d}zoomToFit(){let e=0,t=0;this._nodes.forEach((n=>{this._frames.some((e=>-1!==e.nodes.indexOf(n)))||(n.x<e&&(e=n.x),n.y<t&&(t=n.y))})),this._frames.forEach((n=>{n.x<e&&(e=n.x),n.y<t&&(t=n.y)})),this._frames.forEach((n=>{n.x+=-e,n.y+=-t,n.cleanAccumulation()})),this._nodes.forEach((n=>{n.x+=-e,n.y+=-t,n.cleanAccumulation()}));const n=this._rootContainer.clientWidth/this._rootContainer.scrollWidth,r=this._rootContainer.clientHeight/this._rootContainer.scrollHeight,o=n<r?n:r;this.zoom=o,this.x=0,this.y=0}processCandidatePort(){let e,t,r=this._candidateLink.portA.portData,o=this._candidateLink.portA.node;if(this._candidatePort)e=this._candidatePort.portData,t=this._candidatePort.node;else{if(r.direction===n.Output)return;const o=this.props.stateManager.createDefaultInputData(this.props.stateManager.data,this._candidateLink.portA.portData,this);if(!o)return;const a=o.name,i=o.data;if(e=i.getPortByName(a),!e){for(let t=0;t<i.outputs.length;t++){const n=i.outputs[t];if(n.data._blockType===r.data._blockType){e=n;break}}if(!e)return}t=i.isInput?this.appendNode(i):this.props.onEmitNewNode(i),t.x=this._dropPointX-200,t.y=this._dropPointY-50;const s=t.x-250;let l=t.y;i.inputs.forEach((e=>{if(e.connectedPort){const t=this.nodes.filter((t=>t.content.data===e.connectedPort?.ownerData))[0];0===t.x&&0===t.y&&(t.x=s,t.y=l,t.cleanAccumulation(),l+=80)}}))}if(e.direction===n.Input){const n=r;r=e,e=n;const a=t;t=o,o=a}if(r.connectedPort===e)return;if(r===e)return;if(r.direction===e.direction)return;if(r.ownerData===e.ownerData)return;let a=e.checkCompatibilityState(r);!e.needDualDirectionValidation&&!r.needDualDirectionValidation||a||(a=r.checkCompatibilityState(e));const i=e.getCompatibilityIssueMessage(a,o,r);if(i)return void this.props.stateManager.onErrorMessageDialogRequiredObservable.notifyObservers(i);let s=null;if(r.isConnected){const e=o.getLinksForPortData(r);s=e.slice(),e.forEach((e=>{e.dispose(!1)}))}r.ownerData.inputsAreExclusive&&r.ownerData.inputs.forEach((e=>{const t=o.getLinksForPortData(e);s?s.push(...t.slice()):s=t.slice(),t.forEach((e=>{e.dispose(!1)}))})),this.connectNodes(t,e,o,r),s?.forEach((e=>{e.onDisposedObservable.notifyObservers(e),e.onDisposedObservable.clear()})),o.content.isConnectedToOutput&&!o.content.isConnectedToOutput()||this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}connectNodes(e,t,n,r){t.connectTo(r),this.connectPorts(t,r);const o=new Set([e]),a=new Set([n.links[n.links.length-1]]);eo(n,o,a,this)}drop(e,t,n,r,o){let a=t-this.x-r*this.zoom,i=n-this.y-o*this.zoom;e.x=a/this.zoom,e.y=i/this.zoom,e.cleanAccumulation(),a-=Ho.NodeWidth+200,e.content.inputs.forEach((e=>{if(e.connectedPort){const t=this.nodes.filter((t=>t.content.data===e.connectedPort?.ownerData))[0];0===t.x&&0===t.y&&(t.x=a/this.zoom,t.y=i/this.zoom,t.cleanAccumulation(),i+=80)}})),this.props.stateManager.onNewNodeCreatedObservable.notifyObservers(e),this.props.stateManager.onSelectionChangedObservable.notifyObservers(null),this.props.stateManager.onSelectionChangedObservable.notifyObservers({selection:e})}processEditorData(e){const t=this._frames.splice(0);for(const e of t)e.dispose();if(this._frames=[],this.x=e.x||0,this.y=e.y||0,this.zoom=e.zoom||1,e.frames)for(const t of e.frames){const n=lo.Parse(t,this,e.map);this._frames.push(n)}}reOrganize(e=null,t=!1){if(e&&e.locations){for(const t of e.locations)for(const e of this.nodes){const n=e.content.data;if(n&&n.uniqueId===t.blockId){e.x=t.x,e.y=t.y,t.isCollapsed&&e.collapse(),e.cleanAccumulation();break}}t||this.processEditorData(e)}else this.distributeGraph();this._isLoading=!1;for(const e of this.nodes)e._refreshLinks()}addFrame(e){const t=lo.Parse(e,this,this.props.stateManager.getEditorDataMap());this._frames.push(t),this.stateManager.onSelectionChangedObservable.notifyObservers({selection:t})}render(){return(0,l.jsxs)("div",{ref:this._hostCanvasRef,id:"graph-canvas",className:Yo["graph-canvas"],onWheel:e=>this.onWheel(e),onPointerMove:e=>this.onMove(e),onPointerDown:e=>this.onDown(e),onPointerUp:e=>this.onUp(e),children:[(0,l.jsxs)("div",{id:"graph-container",className:Yo["graph-container"],ref:this._rootContainerRef,children:[(0,l.jsx)("div",{id:"graph-canvas-container",className:Yo["graph-canvas-container"],ref:this._graphCanvasRef}),(0,l.jsx)("div",{id:"frame-container",className:Yo["frame-container"],ref:this._frameContainerRef}),(0,l.jsx)("svg",{id:"graph-svg-container",className:Yo["graph-svg-container"],ref:this._svgCanvasRef}),(0,l.jsx)("div",{id:"selection-container",className:Yo["selection-container"],ref:this._selectionContainerRef})]}),(0,l.jsx)(Wo,{stateManager:this.stateManager})]})}}Ho.NodeWidth=100;var Qo=r(8929),Zo={};Zo.styleTagTransform=v(),Zo.setAttributes=g(),Zo.insert=A().bind(null,"head"),Zo.domAPI=p(),Zo.insertStyleElement=C(),u()(Qo.A,Zo);const qo=Qo.A&&Qo.A.locals?Qo.A.locals:void 0;var Xo,Jo;!function(e){e[e.First=0]="First",e[e.Second=1]="Second"}(Xo||(Xo={})),function(e){e[e.Horizontal=0]="Horizontal",e[e.Vertical=1]="Vertical"}(Jo||(Jo={}));const Ko=(0,a.createContext)({direction:Jo.Horizontal,drag:()=>{},beginDrag:()=>{},endDrag:()=>{},sync:()=>{}}),$o=e=>{const t=e.containerRef||(0,a.useRef)(null),n=[],r=[],o=[],i=e.floatingMinSize||200,s=[],c=[],u=[],d=()=>{if(!t.current)return;const n=t.current.children;let a=1;const i=Array.from(n);let s="";for(const t of n){const n=t;if(t.classList.contains(qo.splitter))s+="auto ";else{const e=i.indexOf(t);r[e]||o[e]?s+="1fr ":s+="auto "}e.direction===Jo.Horizontal?(n.style.gridRow="1",n.style.gridColumn=a.toString()):(n.style.gridColumn="1",n.style.gridRow=a.toString()),a++}e.direction===Jo.Horizontal?(t.current.style.gridTemplateRows="100%",t.current.style.gridTemplateColumns=s):(t.current.style.gridTemplateColumns="100%",t.current.style.gridTemplateRows=s)},p=()=>{if(!t.current)return;const n=t.current.children;for(let t=0;t<n.length;t++){if(!r[t])continue;const o=n[t];let a=0;if(a=e.direction===Jo.Horizontal?o.getBoundingClientRect().width:o.getBoundingClientRect().height,a<i){const r=Math.floor(i-a);let o=0;for(let a=0;a<s[t].length;a++){const i=s[t][a],l=n[i],u=e.direction===Jo.Horizontal?l.getBoundingClientRect().width:l.getBoundingClientRect().height;let d=u-r;if(c[i]&&(d=Math.max(d,c[i])),e.direction===Jo.Horizontal?l.style.width=`${d}px`:l.style.height=`${d}px`,o+=u-d,o===r)break}}}};return(0,a.useEffect)((()=>(d(),window.addEventListener("resize",p),()=>{window.removeEventListener("resize",p)})),[]),(0,l.jsx)(Ko.Provider,{value:{direction:e.direction,drag:(a,s,l)=>{if(!t.current)return;const p=t.current.children,h=Array.from(p),A=h.indexOf(s);if(A<=0)return;let f=0;f=l===Xo.First?A-1:A+1;const g=c[f]||0,m=u[f];o[f]=!1,d();let C=Math.floor(l===Xo.First?n[f]+a:n[f]-a);C<g&&(C=g),m&&C>m&&(C=m);const b=n.reduce(((e,t)=>e+t),0)||0;let v=0,y=0;for(let e=0;e<p.length;e++)r[e]?y++:v+=e===f?C:n[e];b-v<i*y&&(C=b-i*y),e.direction===Jo.Horizontal?h[f].style.width=`${C}px`:h[f].style.height=`${C}px`},beginDrag:()=>{if(!t.current)return;const r=t.current.children;n.length=0;for(const t of r){const r=t;e.direction===Jo.Horizontal?n.push(r.getBoundingClientRect().width):n.push(r.getBoundingClientRect().height)}},endDrag:()=>{n.length=0},sync:(n,a,i,l,d)=>{if(!t.current)return;const p=t.current.children,h=Array.from(p),A=h.indexOf(n);if(A<=0)return;let f=0,g=0;if(a===Xo.First?(f=A-1,g=A+1):(f=A+1,g=A-1),void 0!==i){const t=(0|i)+"px";e.direction===Jo.Horizontal?h[f].style.width=t:h[f].style.height=t}else o[f]=!0;void 0!==l&&(c[f]=l),void 0!==d&&(u[f]=d),s[g]||(s[g]=[]),s[g].push(f),r[g]=!0}},children:(0,l.jsx)("div",{id:e.id,className:qo["split-container"]+" "+e.className,ref:t,onPointerDown:t=>e.onPointerDown&&e.onPointerDown(t),onPointerMove:t=>e.onPointerMove&&e.onPointerMove(t),onPointerUp:t=>e.onPointerUp&&e.onPointerUp(t),onDrop:t=>e.onDrop&&e.onDrop(t),onDragOver:t=>e.onDragOver&&e.onDragOver(t),children:e.children})})},ea=e=>{const t=e.refObject||(0,a.useRef)(null),n=(0,a.useContext)(Ko);let r,o=!1;return(0,a.useEffect)((()=>{t.current&&(n.direction===Jo.Horizontal?(t.current.style.width=`${e.size}px`,t.current.style.height="100%",t.current.classList.add(qo.horizontal)):(t.current.style.height=`${e.size}px`,t.current.style.width="100%",t.current.classList.add(qo.vertical)),n.sync(t.current,e.controlledSide,e.initialSize,e.minSize,e.maxSize))})),(0,l.jsx)("div",{id:e.id,className:qo.splitter,ref:t,onPointerDown:e=>(e=>{t.current&&(t.current.setPointerCapture(e.pointerId),o=!0,n.beginDrag(),r=n.direction===Jo.Horizontal?e.clientX:e.clientY,e.preventDefault())})(e),onPointerUp:e=>(e=>{t.current&&(t.current.releasePointerCapture(e.pointerId),o=!1,n.endDrag(),e.preventDefault())})(e),onPointerMove:a=>(a=>{t.current&&o&&(n.direction===Jo.Horizontal?n.drag(a.clientX-r,t.current,e.controlledSide):n.drag(a.clientY-r,t.current,e.controlledSide),a.preventDefault())})(a)})};class ta{constructor(e,t){this._historyStack=[],this._redoStack=[],this._maxHistoryLength=256,this._locked=!1,this.isEnabled=!0,this._dataProvider=e,this._applyUpdate=t}processKeyEvent(e){if(!this.isEnabled)return!1;if(e.ctrlKey||e.metaKey){if("z"===e.key||"Z"===e.key)return e.shiftKey?(this.redo(),!0):(this.undo(),!0);if("y"===e.key||"Y"===e.key)return this.redo(),!0}return!1}reset(){this._historyStack=[],this._redoStack=[],this._activeData=null,this.store()}collapseLastTwo(){if(this._historyStack.length<2)return;this._locked=!0;const e=this._historyStack.pop(),t=this._historyStack.pop();let n=this._applyJSONDiff(this._activeData,JSON.parse(e));n=this._applyJSONDiff(n,JSON.parse(t)),this._historyStack.push(JSON.stringify(this._generateJSONDiff(this._activeData,n))),this._locked=!1}_generateJSONDiff(e,t){if(e===t)return;if(null===e||null===t||"object"!=typeof e||"object"!=typeof t)return e!==t&&void 0===t?"@d@":t;if(Array.isArray(e)&&Array.isArray(t)){const n=[],r=Math.max(e.length,t.length);let o=!1;for(let a=0;a<r;a++){const r=this._generateJSONDiff(e[a],t[a]);void 0!==r&&(n[a]=r,o=!0)}return o?n:void 0}const n={},r=new Set([...Object.keys(e),...Object.keys(t)]);let o=!1;for(const a of r)if(a in e)if(a in t){const r=this._generateJSONDiff(e[a],t[a]);void 0!==r&&(n[a]=r,o=!0)}else n[a]="@d@",o=!0;else n[a]=t[a],o=!0;return o?n:void 0}_applyJSONDiff(e,t){if(void 0===t)return e;if("object"!=typeof t||null===t||null==e)return t;const n=Array.isArray(e)?[]:{};if(Array.isArray(t))for(let r=0;r<Math.max(e.length,t.length);r++)null===t[r]&&r<e.length?n[r]=e[r]:"@d@"!==t[r]&&(n[r]=this._applyJSONDiff(e[r],t[r]));else{for(const r in e)r in t||(n[r]=e[r]);for(const r in t)"@d@"===t[r]||("object"==typeof t[r]&&null!==t[r]?n[r]=this._applyJSONDiff(e[r],t[r]):n[r]=t[r])}return n}_copy(e){return JSON.parse(JSON.stringify(e))}store(){if(this._locked||!this.isEnabled)return;const e=this._copy(this._dataProvider());if(this._activeData){const t=this._generateJSONDiff(e,this._activeData);if(!t)return;this._historyStack.push(JSON.stringify(t))}this._activeData=e,this._historyStack.length>this._maxHistoryLength&&this._historyStack.shift(),this._redoStack.length=0}undo(){if(!this._historyStack.length)return;this._locked=!0;const e=this._historyStack.pop(),t=this._applyJSONDiff(this._activeData,JSON.parse(e));this._redoStack.push(JSON.stringify(this._generateJSONDiff(t,this._activeData))),this._applyUpdate(this._copy(t)),this._activeData=t,this._locked=!1}redo(){if(!this._redoStack.length)return;this._locked=!0;const e=this._redoStack.pop(),t=this._applyJSONDiff(this._activeData,JSON.parse(e));this._historyStack.push(JSON.stringify(this._generateJSONDiff(t,this._activeData))),this._applyUpdate(this._copy(t)),this._activeData=t,this._locked=!1}dispose(){this._historyStack=[],this._redoStack=[]}}class na extends a.Component{appendBlock(e,t=!0){return this._graphCanvas.createNodeFromObject(e instanceof s.NodeMaterialBlock?S.NodeDataBuilder(e,this._graphCanvas):e,(e=>{-1===this.props.globalState.nodeMaterial.attachedBlocks.indexOf(e)&&this.props.globalState.nodeMaterial.attachedBlocks.push(e),e.isFinalMerger&&this.props.globalState.nodeMaterial.addOutputNode(e)}),t)}addValueNode(e){const t=k.GetConnectionNodeTypeFromString(e),n=new s.InputBlock(e,void 0,t);return this.appendBlock(n)}prepareHistoryStack(){const e=this.props.globalState.nodeMaterial,t=this.props.globalState;this._historyStack=new ta((()=>(E.UpdateLocations(e,t),e.serialize())),(n=>{t.stateManager.onSelectionChangedObservable.notifyObservers(null),e.parseSerializedObject(n),t.onResetRequiredObservable.notifyObservers(!1)})),t.stateManager.historyStack=this._historyStack,t.stateManager.onUpdateRequiredObservable.add((()=>{this._historyStack.store()})),t.stateManager.onRebuildRequiredObservable.add((()=>{this._historyStack.store()})),t.stateManager.onNodeMovedObservable.add((()=>{this._historyStack.store()})),t.stateManager.onNewNodeCreatedObservable.add((()=>{this._historyStack.store()})),t.onClearUndoStack.add((()=>{this._historyStack.reset()}))}componentDidMount(){window.addEventListener("wheel",this.onWheel,{passive:!1}),this.props.globalState.hostDocument&&(this._graphCanvas=this._graphCanvasRef.current,this.prepareHistoryStack(),this._previewManager=new So(this.props.globalState.hostDocument.getElementById("preview-canvas"),this.props.globalState),this.props.globalState._previewManager=this._previewManager),-1!==navigator.userAgent.indexOf("Mobile")&&((this.props.globalState.hostDocument||document).querySelector(".blocker").style.visibility="visible"),this.props.globalState.onPopupClosedObservable.addOnce((()=>{this.componentWillUnmount()})),this.build(),this.props.globalState.onClearUndoStack.notifyObservers()}componentWillUnmount(){window.removeEventListener("wheel",this.onWheel),this.props.globalState.hostDocument&&this.props.globalState.hostDocument.removeEventListener("keyup",this._onWidgetKeyUpPointer,!1),this._historyStack&&(this._historyStack.dispose(),this._historyStack=null),this._previewManager&&(this._previewManager.dispose(),this._previewManager=null)}constructor(e){super(e),this._mouseLocationX=0,this._mouseLocationY=0,this.onWheel=e=>{if(this.props.globalState.pointerOverCanvas)return e.preventDefault();if(e.ctrlKey)return e.preventDefault();if(Math.abs(e.deltaX)<Math.abs(e.deltaY))return;const t=e.currentTarget,n=t.scrollWidth-t.offsetWidth;return t.scrollLeft+e.deltaX<0||t.scrollLeft+e.deltaX>n?e.preventDefault():void 0},this.handlePopUp=()=>{this.setState({showPreviewPopUp:!0}),this.createPopUp(),this.props.globalState.hostWindow.addEventListener("beforeunload",this.handleClosingPopUp)},this.handleClosingPopUp=()=>{this._previewManager&&this._previewManager.dispose(),this._popUpWindow?.close(),this.setState({showPreviewPopUp:!1},(()=>this.initiatePreviewArea()))},this.initiatePreviewArea=(e=this.props.globalState.hostDocument.getElementById("preview-canvas"))=>{this._previewManager=new So(e,this.props.globalState)},this.createPopUp=()=>{const e={embedHostWidth:"100%",original:!0,popup:!0,overlay:!1,embedMode:!1,enableClose:!0,handleResize:!0,enablePopup:!0};let t=null;Io("PREVIEW AREA",{width:500,height:500,onParentControlCreateCallback:e=>{e&&(e.style.display="grid",e.style.gridTemplateRows="40px auto",e.id="node-editor-graph-root",e.className="nme-right-panel popup")},onWindowCreateCallback:n=>{if(t=n,t){t.addEventListener("beforeunload",this.handleClosingPopUp);const n=t.document.getElementById("node-editor-graph-root");this.createPreviewMeshControlHost(e,n),this.createPreviewHost(e,n),n&&(this.fixPopUpStyles(n.ownerDocument),this.initiatePreviewArea(n.ownerDocument.getElementById("preview-canvas")))}}})},this.createPreviewMeshControlHost=(e,t)=>{if(t){const n=t.ownerDocument.createElement("div");n.id="PreviewMeshControl-host",n.style.width=e.embedHostWidth||"auto",t.appendChild(n);const r=a.createElement(Lo,{globalState:this.props.globalState,togglePreviewAreaComponent:this.handlePopUp});i.render(r,n)}},this.createPreviewHost=(e,t)=>{if(t){const n=t.ownerDocument.createElement("div");n.id="PreviewAreaComponent-host",n.style.width=e.embedHostWidth||"auto",n.style.height="100%",n.style.overflow="hidden",n.style.display="grid",n.style.gridRow="2",n.style.gridTemplateRows="auto 40px",n.style.gridTemplateRows="calc(100% - 40px) 40px",t.appendChild(n),this._previewHost=n,e.overlay||(this._previewHost.style.position="relative")}if(this._previewHost){const e=a.createElement(Bo,{globalState:this.props.globalState});i.render(e,this._previewHost)}},this.fixPopUpStyles=e=>{const t=e.getElementById("preview");t&&(t.style.height="auto",t.style.gridRow="1");const n=e.getElementById("preview-config-bar");n&&(n.style.gridRow="2");const r=e.getElementById("preview-new-window");r&&(r.style.display="none");const o=e.getElementById("preview-mesh-bar");o&&(o.style.gridTemplateColumns="auto 1fr 40px 40px")},this.state={showPreviewPopUp:!1,message:"",isError:!0},this._graphCanvasRef=a.createRef(),this._diagramContainerRef=a.createRef(),this.props.globalState.stateManager.onNewBlockRequiredObservable.add((e=>{let t=e.targetX,n=e.targetY;if(e.needRepositioning){const e=this._diagramContainerRef.current;t-=e.offsetLeft,n-=e.offsetTop}const r=this._graphCanvas.selectedLink,o=this._graphCanvas.selectedNodes.length?this._graphCanvas.selectedNodes[0]:null,a=this.emitNewBlock(e.type,t,n);a&&e.smartAdd&&(r?this._graphCanvas.smartAddOverLink(a,r):o&&this._graphCanvas.smartAddOverNode(a,o))})),this.props.globalState.stateManager.onRebuildRequiredObservable.add((()=>{this.props.globalState.nodeMaterial&&this.buildMaterial()})),this.props.globalState.onResetRequiredObservable.add((e=>{e?(this.props.globalState.nodeMaterial&&this.buildMaterial(),this.build(!0)):(this.build(),this.props.globalState.nodeMaterial&&this.buildMaterial())})),this.props.globalState.onImportFrameObservable.add((e=>{const t=e.editorData.frames[0];this.props.globalState.nodeMaterial.attachedBlocks.slice(-t.blocks.length).forEach((e=>{this.appendBlock(e)})),this._graphCanvas.addFrame(t),this.reOrganize(this.props.globalState.nodeMaterial.editorData,!0)})),this.props.globalState.onZoomToFitRequiredObservable.add((()=>{this.zoomToFit()})),this.props.globalState.onReOrganizedRequiredObservable.add((()=>{this.reOrganize()})),this.props.globalState.onGetNodeFromBlock=e=>this._graphCanvas.findNodeFromData(e),this.props.globalState.hostDocument.addEventListener("keydown",(e=>{this._historyStack.processKeyEvent(e)||this._graphCanvas.handleKeyDown(e,(e=>{this.props.globalState.nodeMaterial.removeBlock(e.data)}),this._mouseLocationX,this._mouseLocationY,(e=>{const t=e.data.clone(this.props.globalState.nodeMaterial.getScene());return t?this.appendBlock(t,!1):null}),this.props.globalState.hostDocument.querySelector(".diagram-container"))})),this.props.globalState.stateManager.onErrorMessageDialogRequiredObservable.add((e=>{this.setState({message:e,isError:!0})}))}zoomToFit(){this._graphCanvas.zoomToFit()}buildMaterial(){if(!this.props.globalState.nodeMaterial)return;const e=this.props.globalState.nodeMaterial;try{e.options.emitComments=!0,e.build(!0)}catch(e){this.props.globalState.onLogRequiredObservable.notifyObservers(new w(e,!0))}}build(e=!1){let t=e?null:this.props.globalState.nodeMaterial.editorData;this._graphCanvas._isLoading=!0,t instanceof Array&&(t={locations:t}),this._graphCanvas.reset(),this.props.globalState.nodeMaterial&&this.loadGraph(),this.reOrganize(t)}loadGraph(){const e=this.props.globalState.nodeMaterial;e._vertexOutputNodes.forEach((e=>{this.appendBlock(e,!0)})),e._fragmentOutputNodes.forEach((e=>{this.appendBlock(e,!0)})),e.attachedBlocks.forEach((e=>{this.appendBlock(e,!0)})),e.attachedBlocks.forEach((e=>{if(e.inputs.length){const t=this._graphCanvas.findNodeFromData(e);for(const e of t.content.inputs)e.isConnected&&this._graphCanvas.connectPorts(e.connectedPort,e)}}))}showWaitScreen(){this.props.globalState.hostDocument.querySelector(".wait-screen")?.classList.remove("hidden")}hideWaitScreen(){this.props.globalState.hostDocument.querySelector(".wait-screen")?.classList.add("hidden")}reOrganize(e=null,t=!1){this.showWaitScreen(),this._graphCanvas._isLoading=!0,this._graphCanvas.reOrganize(e,t),this.hideWaitScreen()}emitNewBlock(e,t,n){let r,o;if(""===e)return;if(e.indexOf("CustomBlock")>-1){const t=localStorage.getItem(e);if(!t)return void this.props.globalState.stateManager.onErrorMessageDialogRequiredObservable.notifyObservers("Error loading custom block");if(o=JSON.parse(t),!o)return void this.props.globalState.stateManager.onErrorMessageDialogRequiredObservable.notifyObservers("Error parsing custom block")}else if(e.indexOf("Custom")>-1){const r=localStorage.getItem(e);if(r){const e=JSON.parse(r),o=(t-this._graphCanvas.x-Ho.NodeWidth)/this._graphCanvas.zoom,a=(n-this._graphCanvas.y-20)/this._graphCanvas.zoom,i=e.editorData.frames[0].x,s=e.editorData.frames[0].y;e.editorData.frames[0].x=o,e.editorData.frames[0].y=a;for(const t of e.editorData.locations)t.x+=o-i,t.y+=a-s;return E.AddFrameToMaterial(e,this.props.globalState,this.props.globalState.nodeMaterial),this._graphCanvas.frames[this._graphCanvas.frames.length-1].cleanAccumulation(),void this.forceUpdate()}}if(-1===e.indexOf("Block"))r=this.addValueNode(e);else{let t;if(o?(t=new s.CustomBlock(""),t.options=o):t=k.GetBlockFromString(e,this.props.globalState.nodeMaterial.getScene(),this.props.globalState.nodeMaterial),t.isUnique){const e=t.getClassName();for(const n of this._graphCanvas.getCachedData())if(n!==t&&n.getClassName()===e)return void this.props.globalState.stateManager.onErrorMessageDialogRequiredObservable.notifyObservers(`You can only have one ${e} per graph`)}t.autoConfigure(this.props.globalState.nodeMaterial,(e=>!this._graphCanvas.nodes.some((t=>t.enclosingFrameId>=0&&t.content.data.uniqueId===e.uniqueId)))),r=this.appendBlock(t),r.addClassToVisual(t.getClassName())}let a=Ho.NodeWidth,i=20;return"ElbowBlock"===e&&(a=10,i=10),this._graphCanvas.drop(r,t,n,a,i),this.forceUpdate(),r}dropNewBlock(e){const t=e.dataTransfer.getData("babylonjs-material-node"),n=this._diagramContainerRef.current;this.emitNewBlock(t,e.clientX-n.offsetLeft,e.clientY-n.offsetTop)}render(){return(0,l.jsxs)(wo,{globalState:this.props.globalState,children:[(0,l.jsxs)($o,{id:"node-editor-graph-root",direction:Jo.Horizontal,onPointerMove:e=>{this._mouseLocationX=e.pageX,this._mouseLocationY=e.pageY},onPointerDown:e=>{"INPUT"!==e.target.nodeName&&(this.props.globalState.lockObject.lock=!1)},children:[(0,l.jsx)(W,{globalState:this.props.globalState}),(0,l.jsx)(ea,{size:8,minSize:180,initialSize:200,maxSize:350,controlledSide:Xo.First}),(0,l.jsxs)($o,{direction:Jo.Vertical,className:"diagram-container",containerRef:this._diagramContainerRef,onDrop:e=>{this.dropNewBlock(e)},onDragOver:e=>{e.preventDefault()},children:[(0,l.jsx)(Ho,{ref:this._graphCanvasRef,stateManager:this.props.globalState.stateManager,onEmitNewNode:e=>this.appendBlock(e.data)}),(0,l.jsx)(ea,{size:8,minSize:40,initialSize:120,maxSize:500,controlledSide:Xo.Second}),(0,l.jsx)(M,{globalState:this.props.globalState})]}),(0,l.jsx)(ea,{size:8,minSize:250,initialSize:300,maxSize:500,controlledSide:Xo.Second}),(0,l.jsxs)("div",{className:"nme-right-panel",children:[(0,l.jsx)(xo,{lockObject:this.props.globalState.lockObject,globalState:this.props.globalState}),this.state.showPreviewPopUp?null:(0,l.jsx)(Lo,{globalState:this.props.globalState,togglePreviewAreaComponent:this.handlePopUp}),this.state.showPreviewPopUp?null:(0,l.jsx)(Bo,{globalState:this.props.globalState})]})]}),(0,l.jsx)(_o,{message:this.state.message,isError:this.state.isError,onClose:()=>this.setState({message:""})}),(0,l.jsx)("div",{className:"blocker",children:"Node Material Editor runs only on desktop"}),(0,l.jsx)("div",{className:"wait-screen hidden",children:"Processing...please wait"})]})}}var ra=r(8637),oa={};oa.styleTagTransform=v(),oa.setAttributes=g(),oa.insert=A().bind(null,"head"),oa.domAPI=p(),oa.insertStyleElement=C(),u()(ra.A,oa);const aa=ra.A&&ra.A.locals?ra.A.locals:void 0,ia={position2d:"position",particle_uv:"uv",particle_color:"color",particle_texturemask:"textureMask",particle_positionw:"positionW"},sa={position2d:"screen",particle_uv:"particle",particle_color:"particle",particle_texturemask:"particle",particle_positionw:"particle"};class la{getHeaderClass(e){const t=e.data;return t.isConstant?aa.constant:t.visibleInInspector?aa.inspector:""}shouldDisplayPortLabels(){return!1}getHeaderText(e){const t=e.data;let n=`${t.name} (${la.GetBaseType(t.output.type)})`;return t.isAttribute&&(n=la.GetBaseType(t.output.type)),n}static GetBaseType(e){return s.NodeMaterialBlockConnectionPointTypes[e]}getBackgroundColor(e){let t="";const n=e.data;switch(n.type){case s.NodeMaterialBlockConnectionPointTypes.Color3:case s.NodeMaterialBlockConnectionPointTypes.Color4:if(n.value){t=n.value.toHexString();break}default:t=k.GetColorFromConnectionNodeType(n.type)}return t}updatePreviewContent(e,t){let n="";const r=e.data;if(r.isAttribute){const e=ia[r.name]??r.name;n=(sa[r.name]??"mesh")+"."+e}else if(r.isSystemValue)switch(r.systemValue){case s.NodeMaterialSystemValues.World:n="World";break;case s.NodeMaterialSystemValues.WorldView:n="World x View";break;case s.NodeMaterialSystemValues.WorldViewProjection:n="World x View x Projection";break;case s.NodeMaterialSystemValues.View:n="View";break;case s.NodeMaterialSystemValues.ViewProjection:n="View x Projection";break;case s.NodeMaterialSystemValues.Projection:n="Projection";break;case s.NodeMaterialSystemValues.CameraPosition:n="Camera position";break;case s.NodeMaterialSystemValues.FogColor:n="Fog color";break;case s.NodeMaterialSystemValues.DeltaTime:n="Delta time";break;case s.NodeMaterialSystemValues.CameraParameters:n="Camera parameters";break;case s.NodeMaterialSystemValues.MaterialAlpha:n="Material alpha"}else switch(r.type){case s.NodeMaterialBlockConnectionPointTypes.Float:n=r.animationType!==s.AnimatedInputBlockTypes.None?s.AnimatedInputBlockTypes[r.animationType]:r.value.toFixed(4);break;case s.NodeMaterialBlockConnectionPointTypes.Vector2:{const e=r.value;n=`(${e.x.toFixed(2)}, ${e.y.toFixed(2)})`;break}case s.NodeMaterialBlockConnectionPointTypes.Vector3:{const e=r.value;n=`(${e.x.toFixed(2)}, ${e.y.toFixed(2)}, ${e.z.toFixed(2)})`;break}case s.NodeMaterialBlockConnectionPointTypes.Vector4:if(r.animationType!==s.AnimatedInputBlockTypes.None)n=s.AnimatedInputBlockTypes[r.animationType];else{const e=r.value;n=`(${e.x.toFixed(2)}, ${e.y.toFixed(2)}, ${e.z.toFixed(2)}, ${e.w.toFixed(2)})`}}t.innerHTML=n,t.classList.add(aa["input-block"])}}class ca{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"rgb(106, 44, 131)"}updatePreviewContent(e,t){t.classList.add("output-block")}}class ua{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"#4086BB"}updatePreviewContent(e,t){}}var da=r(6997),pa={};pa.styleTagTransform=v(),pa.setAttributes=g(),pa.insert=A().bind(null,"head"),pa.domAPI=p(),pa.insertStyleElement=C(),u()(da.A,pa);const ha=da.A&&da.A.locals?da.A.locals:void 0;class Aa{getHeaderClass(){return""}shouldDisplayPortLabels(){return!1}getHeaderText(e){return e.data.name}getBackgroundColor(e){const t=e.data.colorSteps.map((e=>`rgb(${255*e.color.r}, ${255*e.color.g}, ${255*e.color.b}) ${100*e.step}%`));return t.length?`linear-gradient(90deg, ${t.join(", ")})`:"black"}updatePreviewContent(e,t){t.classList.add(ha.gradientBlock)}}var fa=r(2886),ga={};ga.styleTagTransform=v(),ga.setAttributes=g(),ga.insert=A().bind(null,"head"),ga.domAPI=p(),ga.insertStyleElement=C(),u()(fa.A,ga);const ma=fa.A&&fa.A.locals?fa.A.locals:void 0;class Ca{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"#4086BB"}_extractInputValue(e){const t=e.connectedPoint.ownerBlock;if(t.isInput){const e=t;if(e.isUniform&&!e.isSystemValue)return e.value}return"?"}updatePreviewContent(e,t){const n=e.data,r=n.sourceMin.isConnected?this._extractInputValue(n.sourceMin):n.sourceRange.x,o=n.sourceMax.isConnected?this._extractInputValue(n.sourceMax):n.sourceRange.y,a=n.targetMin.isConnected?this._extractInputValue(n.targetMin):n.targetRange.x,i=n.targetMax.isConnected?this._extractInputValue(n.targetMax):n.targetRange.y;t.classList.add(ma["remap-block"]),t.innerHTML=`[${r}, ${o}] -> [${a}, ${i}]`}}class ba{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"#405C86"}updatePreviewContent(e,t){}}class va extends a.Component{constructor(e){super(e),this.state={displayRed:!0,displayGreen:!0,displayBlue:!0,displayAlpha:!0,face:0},this._canvasRef=a.createRef()}shouldComponentUpdate(){return!0}componentDidMount(){this.updatePreview()}componentDidUpdate(){this.updatePreview()}updatePreview(){va.UpdatePreview(this._canvasRef.current,this.props.texture,this.props.width,this.state,void 0,this.props.globalState)}static async UpdatePreview(e,t,n,r,o,a){!t.isReady()&&t._texture&&t._texture.onLoadedObservable.addOnce((()=>{va.UpdatePreview(e,t,n,r,o,a)}));const i=t.getScene(),l=i.getEngine(),c=t.getSize(),u=c.width/c.height,d=n/u|1;let p;if(t.isCube){const e=new s.PassCubePostProcess("pass",1,null,s.Texture.NEAREST_SAMPLINGMODE,l,!1,s.Constants.TEXTURETYPE_UNSIGNED_INT);e.face=r.face,p=e}else p=new s.PassPostProcess("pass",1,null,s.Texture.NEAREST_SAMPLINGMODE,l,!1,s.Constants.TEXTURETYPE_UNSIGNED_INT);p.onEffectCreatedObservable.add((c=>{c.executeWhenCompiled((async()=>{a&&(a.blockMutationUpdates=!0);const c=new s.RenderTargetTexture("temp",{width:n,height:d},i,!1);p.externalTextureSamplerBinding=!0,p.onApply=function(e){e.setTexture("textureSampler",t)};const u=c.renderTarget;if(u){i.postProcessManager.directRender([p],u,!0);const a=4*n,s=d/2,c=await l.readPixels(0,0,n,d),h=new Uint8Array(c.buffer,0,c.byteLength);if(!(t.isCube||r.displayRed&&r.displayGreen&&r.displayBlue))for(let e=0;e<n*d*4;e+=4)if(r.displayRed||(h[e]=0),r.displayGreen||(h[e+1]=0),r.displayBlue||(h[e+2]=0),r.displayAlpha){const t=h[e+2];h[e]=t,h[e+1]=t,h[e+2]=t,h[e+2]=0}if(t.invertY||t.isCube)for(let e=0;e<s;e++)for(let t=0;t<a;t++){const n=t+e*a,r=t+(d-e-1)*a,o=h[n];h[n]=h[r],h[r]=o}e.width=n,e.height=d;const A=e.getContext("2d");if(A){const e=A.createImageData(n,d);e.data.set(h),A.putImageData(e,0,0),o&&o()}l.unBindFramebuffer(u)}c.dispose(),p.dispose(),e.style.height=d+"px",a&&(a.blockMutationUpdates=!1)}))}))}render(){const e=this.props.texture;return(0,l.jsxs)("div",{className:"textureLine",children:[!this.props.hideChannelSelect&&e.isCube&&(0,l.jsxs)("div",{className:"control3D",children:[(0,l.jsx)("button",{className:0===this.state.face?"px command selected":"px command",onClick:()=>this.setState({face:0}),children:"PX"}),(0,l.jsx)("button",{className:1===this.state.face?"nx command selected":"nx command",onClick:()=>this.setState({face:1}),children:"NX"}),(0,l.jsx)("button",{className:2===this.state.face?"py command selected":"py command",onClick:()=>this.setState({face:2}),children:"PY"}),(0,l.jsx)("button",{className:3===this.state.face?"ny command selected":"ny command",onClick:()=>this.setState({face:3}),children:"NY"}),(0,l.jsx)("button",{className:4===this.state.face?"pz command selected":"pz command",onClick:()=>this.setState({face:4}),children:"PZ"}),(0,l.jsx)("button",{className:5===this.state.face?"nz command selected":"nz command",onClick:()=>this.setState({face:5}),children:"NZ"})]}),!this.props.hideChannelSelect&&!e.isCube&&(0,l.jsxs)("div",{className:"control",children:[(0,l.jsx)("button",{className:this.state.displayRed&&!this.state.displayGreen?"red command selected":"red command",onClick:()=>this.setState({displayRed:!0,displayGreen:!1,displayBlue:!1,displayAlpha:!1}),children:"R"}),(0,l.jsx)("button",{className:this.state.displayGreen&&!this.state.displayBlue?"green command selected":"green command",onClick:()=>this.setState({displayRed:!1,displayGreen:!0,displayBlue:!1,displayAlpha:!1}),children:"G"}),(0,l.jsx)("button",{className:this.state.displayBlue&&!this.state.displayAlpha?"blue command selected":"blue command",onClick:()=>this.setState({displayRed:!1,displayGreen:!1,displayBlue:!0,displayAlpha:!1}),children:"B"}),(0,l.jsx)("button",{className:this.state.displayAlpha&&!this.state.displayRed?"alpha command selected":"alpha command",onClick:()=>this.setState({displayRed:!1,displayGreen:!1,displayBlue:!1,displayAlpha:!0}),children:"A"}),(0,l.jsx)("button",{className:this.state.displayRed&&this.state.displayGreen?"all command selected":"all command",onClick:()=>this.setState({displayRed:!0,displayGreen:!0,displayBlue:!0,displayAlpha:!0}),children:"ALL"})]}),(0,l.jsx)("canvas",{ref:this._canvasRef,className:"preview"})]})}}var ya=r(2324),xa={};xa.styleTagTransform=v(),xa.setAttributes=g(),xa.insert=A().bind(null,"head"),xa.domAPI=p(),xa.insertStyleElement=C(),u()(ya.A,xa);const wa=ya.A&&ya.A.locals?ya.A.locals:void 0;var Ma=r(8469),ka={};ka.styleTagTransform=v(),ka.setAttributes=g(),ka.insert=A().bind(null,"head"),ka.domAPI=p(),ka.insertStyleElement=C(),u()(Ma.A,ka);const Na=Ma.A&&Ma.A.locals?Ma.A.locals:void 0;class _a{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(e){const t=e.data;return"RefractionBlock"===t.getClassName()||"ReflectionBlock"===t.getClassName()?"#6174FA":"#323232"}updatePreviewContent(e,t){const n=e.data,r=n;this._previewCanvas||(t.classList.add(Na["texture-block"]),n instanceof s.TextureBlock&&t.classList.add(wa["regular-texture-block"]),(n instanceof s.ReflectionTextureBlock||n instanceof s.ReflectionBlock)&&t.classList.add(wa["reflection-block"]),(n instanceof s.CurrentScreenBlock||n instanceof s.ParticleTextureBlock)&&t.classList.add(wa["reduced-texture-block"]),n instanceof s.TriPlanarBlock&&t.classList.add(wa["triplanar-texture-block"]),n instanceof s.RefractionBlock&&t.classList.add(wa["refraction-texture-block"]),this._previewCanvas=t.ownerDocument.createElement("canvas"),this._previewImage=t.ownerDocument.createElement("img"),t.appendChild(this._previewImage),this._previewImage.classList.add(Na.empty)),r.texture?va.UpdatePreview(this._previewCanvas,r.texture,140,{face:0,displayRed:!0,displayAlpha:!0,displayBlue:!0,displayGreen:!0},(()=>{this._previewImage.src=this._previewCanvas.toDataURL("image/png"),this._previewImage.classList.remove(Na.empty)})):this._previewImage.classList.add(Na.empty)}}class Sa{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"#540b0b"}updatePreviewContent(e,t){t.classList.add("discard-block")}}class La{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"#6174FA"}updatePreviewContent(e,t){t.classList.add("pbr-block")}}class Ba{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){const t=e.data;let n="";switch(t.condition){case s.ConditionalBlockConditions.Equal:n="=";break;case s.ConditionalBlockConditions.NotEqual:n="!=";break;case s.ConditionalBlockConditions.LessThan:n="<";break;case s.ConditionalBlockConditions.LessOrEqual:n="<=";break;case s.ConditionalBlockConditions.GreaterThan:n=">";break;case s.ConditionalBlockConditions.GreaterOrEqual:n=">=";break;case s.ConditionalBlockConditions.Xor:n="xor";break;case s.ConditionalBlockConditions.Or:n="|";break;case s.ConditionalBlockConditions.And:n="&"}return t.name+" ("+n+")"}getBackgroundColor(){return"#00A080"}updatePreviewContent(){}}var Da=r(489),Ia={};Ia.styleTagTransform=v(),Ia.setAttributes=g(),Ia.insert=A().bind(null,"head"),Ia.domAPI=p(),Ia.insertStyleElement=C(),u()(Da.A,Ia);const ja=Da.A&&Da.A.locals?Da.A.locals:void 0;class Ea{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"#323232"}updatePreviewContent(e,t){const n=e.data;this._previewCanvas||(t.classList.add(Na["texture-block"]),t.classList.add(ja["image-source-block"]),this._previewCanvas=t.ownerDocument.createElement("canvas"),this._previewImage=t.ownerDocument.createElement("img"),t.appendChild(this._previewImage),this._previewImage.classList.add(Na.empty)),n.texture?va.UpdatePreview(this._previewCanvas,n.texture,140,{face:0,displayRed:!0,displayAlpha:!0,displayBlue:!0,displayGreen:!0},(()=>{this._previewImage.src=this._previewCanvas.toDataURL("image/png"),this._previewImage.classList.remove(Na.empty)})):this._previewImage.classList.add(Na.empty)}}var Ta=r(5024),Oa={};Oa.styleTagTransform=v(),Oa.setAttributes=g(),Oa.insert=A().bind(null,"head"),Oa.domAPI=p(),Oa.insertStyleElement=C(),u()(Ta.A,Oa);const Pa=Ta.A&&Ta.A.locals?Ta.A.locals:void 0;class za{getHeaderClass(){return""}shouldDisplayPortLabels(){return!1}getHeaderText(e){return e.data.name}getBackgroundColor(e){const t=e.data;return k.GetColorFromConnectionNodeType(t.input.type)}updatePreviewContent(e,t){}updateFullVisualContent(e,t){const n=t.visual,r=t.headerContainer,o=t.content,a=t.connections,i=t.selectionBorder;n.classList.add(Pa.elbowBlock),r.classList.add(Pa.hidden),o.classList.add(Pa.hidden),a.classList.add(Pa.translatedConnections),i.classList.add(Pa.roundSelectionBorder)}}class Ra{getHeaderClass(e){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){const t=e.data;let n,r=t.name;switch(t.attributeType){case 3:n="Color";break;case 1:n="Normal";break;case 2:n="Tangent";break;case 4:n="UV";break;case 5:n="UV2";break;case 6:n="UV3";break;case 7:n="UV4";break;case 8:n="UV5";break;case 9:n="UV6"}return n&&(r+=` (${n})`),r}getBackgroundColor(e){return""}updatePreviewContent(){}}var Ua=r(7156),Fa={};Fa.styleTagTransform=v(),Fa.setAttributes=g(),Fa.insert=A().bind(null,"head"),Fa.domAPI=p(),Fa.insertStyleElement=C(),u()(Ua.A,Fa);const Ya=Ua.A&&Ua.A.locals?Ua.A.locals:void 0;class Va{getHeaderClass(){return""}shouldDisplayPortLabels(){return!1}getHeaderText(e){return e.data.name}getBackgroundColor(){return"#405C86"}updatePreviewContent(e,t){const n=e.data;t.classList.add(Ya["curve-block"]),t.innerHTML=s.CurveBlockTypes[n.type]}}class Ga{constructor(){this._hasHighlights=!1}getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(e){const t=e.data;return`linear-gradient(to right, white, ${k.GetColorFromConnectionNodeType(t.output.type)})`}updatePreviewContent(e,t){}onSelectionChanged(e,t,n){const r=e.data;if(t===e)r.entryPoint&&(n.onHighlightNodeObservable.notifyObservers({data:r.entryPoint,active:!0}),this._hasHighlights=!0);else if(this._hasHighlights){let e;e=!t||"NodeMaterialTeleportOutBlock"!==t.data.getClassName()||t.data.entryPoint!==r.entryPoint,e&&n.onHighlightNodeObservable.notifyObservers({data:r.entryPoint,active:!1}),this._hasHighlights=!1}}onDispose(e,t){const n=e.data;n.entryPoint&&t.onHighlightNodeObservable.notifyObservers({data:n.entryPoint,active:!1})}}class Wa{constructor(){this._hasHighlights=!1}getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(e){const t=e.data;return`linear-gradient(to right, ${k.GetColorFromConnectionNodeType(t.input.type)}, white)`}updatePreviewContent(e,t){}onSelectionChanged(e,t,n){const r=e.data;if(t===e){for(const e of r.endpoints)n.onHighlightNodeObservable.notifyObservers({data:e,active:!0});this._hasHighlights=!0}else if(this._hasHighlights){for(const e of r.endpoints)n.onHighlightNodeObservable.notifyObservers({data:e,active:!1});this._hasHighlights=!1}}onDispose(e,t){const n=e.data;for(const e of n.endpoints)t.onHighlightNodeObservable.notifyObservers({data:e,active:!1})}}class Ha{getHeaderClass(){return""}shouldDisplayPortLabels(){return!0}getHeaderText(e){return e.data.name}getBackgroundColor(){return"rgb(86, 185, 120)"}updatePreviewContent(e,t){}}class Qa extends a.Component{constructor(e){super(e)}render(){return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(Za,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsx)(qa,{stateManager:this.props.stateManager,nodeData:this.props.nodeData})]})}}class Za extends a.Component{constructor(e){super(e)}render(){const e=[{label:"Neutral",value:s.NodeMaterialBlockTargets.Neutral},{label:"Vertex",value:s.NodeMaterialBlockTargets.Vertex},{label:"Fragment",value:s.NodeMaterialBlockTargets.Fragment}],t=this.props.nodeData.data;return(0,l.jsx)(l.Fragment,{children:(0,l.jsxs)(O,{title:"GENERAL",children:[(!t.isInput||!t.isAttribute)&&(0,l.jsx)(Vr,{label:"Name",propertyName:"name",target:t,lockObject:this.props.stateManager.lockObject,onChange:()=>this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t),throttlePropertyChangedNotification:!0,validator:e=>!!t.validateBlockName(e)||(this.props.stateManager.onErrorMessageDialogRequiredObservable.notifyObservers(`"${e}" is a reserved name, please choose another`),!1)}),t._originalTargetIsNeutral&&(0,l.jsx)(yo,{label:"Target",options:e,target:t,propertyName:"target",onSelect:()=>{this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}}),!t._originalTargetIsNeutral&&(0,l.jsx)(uo,{label:"Target",value:s.NodeMaterialBlockTargets[t.target]}),(0,l.jsx)(uo,{label:"Type",value:t.getClassName()}),(0,l.jsx)(Vr,{label:"Comments",propertyName:"comments",lockObject:this.props.stateManager.lockObject,target:t,onChange:()=>this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t),throttlePropertyChangedNotification:!0})]})})}}class qa extends a.Component{constructor(e){super(e)}render(){const e=this.props.nodeData.data,t=e._propStore;if(!t)return(0,l.jsx)(l.Fragment,{});const n={},r=[],o=[];let a=Object.getPrototypeOf(e);for(;a;)o.push(a.constructor.name),a=Object.getPrototypeOf(a);for(const{propertyName:a,displayName:i,type:s,groupName:c,options:u,className:d}of t){let t=n[c];if(!u.embedded&&-1!==o.indexOf(d))switch(t||(t=[],n[c]=t,r.push(c)),s){case 0:t.push((0,l.jsx)(Z,{label:i,target:e,propertyName:a,onValueChanged:()=>Co(e,this.props.stateManager,a,u.notifiers)},`checkBox-${a}`));break;case 1:isNaN(u.min)||isNaN(u.max)||u.min===u.max?t.push((0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:i,propertyName:a,target:e,onChange:()=>Co(e,this.props.stateManager,a,u.notifiers)},`float-${a}`)):t.push((0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:i,target:e,propertyName:a,step:Math.abs(u.max-u.min)/100,minimum:Math.min(u.min,u.max),maximum:u.max,onChange:()=>Co(e,this.props.stateManager,a,u.notifiers)},`slider-${a}`));break;case 2:t.push((0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,digits:0,step:"1",isInteger:!0,label:i,propertyName:a,target:e,onChange:()=>Co(e,this.props.stateManager,a,u.notifiers)},`int-${a}`));break;case 3:t.push((0,l.jsx)(br,{lockObject:this.props.stateManager.lockObject,label:i,propertyName:a,target:e,onChange:()=>Co(e,this.props.stateManager,a,u.notifiers)},`vector2-${a}`));break;case 4:t.push((0,l.jsx)(yo,{label:i,options:u.options,target:e,propertyName:a,onSelect:()=>Co(e,this.props.stateManager,a,u.notifiers)},`options-${a}`))}}return(0,l.jsx)(l.Fragment,{children:r.map((e=>(0,l.jsx)(O,{title:e,children:n[e]},`group-${e}`)))})}}class Xa extends a.Component{constructor(e){super(e)}render(){const e=this.props.nodeData.data,t=[{label:"R",value:"r"},{label:"G",value:"g"},{label:"B",value:"b"},{label:"A",value:"a"}];return(0,l.jsxs)("div",{children:[(0,l.jsx)(Za,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsxs)(O,{title:"SWIZZLES",children:[(0,l.jsx)(yo,{label:"R",options:t,target:e,propertyName:"rSwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}}),(0,l.jsx)(yo,{label:"G",options:t,target:e,propertyName:"gSwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}}),(0,l.jsx)(yo,{label:"B",options:t,target:e,propertyName:"bSwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}}),(0,l.jsx)(yo,{label:"A",options:t,target:e,propertyName:"aSwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}})]})]})}}class Ja extends a.Component{constructor(e){super(e),this.state={gradient:e.step.step}}updateColor(e){this.props.step.color=s.Color3.FromHexString(e),this.props.onUpdateStep(),this.forceUpdate()}updateStep(e){this.props.step.step=e,this.setState({gradient:e}),this.props.onUpdateStep()}onPointerUp(){this.props.onCheckForReOrder()}render(){const e=this.props.step;return(0,l.jsxs)("div",{className:"gradient-step",children:[(0,l.jsx)("div",{className:"step",children:`#${this.props.lineIndex}`}),(0,l.jsx)("div",{className:"color",children:(0,l.jsx)(Or,{lockObject:this.props.stateManager.lockObject,value:e.color,onColorChanged:e=>{this.updateColor(e)}})}),(0,l.jsx)("div",{className:"step-value",children:(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,smallUI:!0,label:"",target:e,propertyName:"step",min:0,max:1,onEnter:()=>{this.props.onUpdateStep(),this.props.onCheckForReOrder(),this.forceUpdate()}})}),(0,l.jsx)("div",{className:"step-slider",children:(0,l.jsx)("input",{className:"range",type:"range",step:.01,min:0,max:1,value:e.step,onPointerUp:()=>this.onPointerUp(),onChange:e=>this.updateStep(parseFloat(e.target.value))})}),(0,l.jsx)("div",{className:"gradient-copy",onClick:()=>{this.props.onCopy&&this.props.onCopy()},title:"Copy Step",children:(0,l.jsx)("img",{className:"img",src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4NCiAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA1OS4xICg4NjE0NCkgLSBodHRwczovL3NrZXRjaC5jb20gLS0+DQogIDx0aXRsZT5pY19mbHVlbnRfY29weV8yNF9yZWd1bGFyPC90aXRsZT4NCiAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+DQogIDxnIGlkPSLwn5SNLVByb2R1Y3QtSWNvbnMiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPg0KICAgIDxnIGlkPSJpY19mbHVlbnRfY29weV8yNF9yZWd1bGFyIiBmaWxsPSJ3aGl0ZSIgZmlsbC1ydWxlPSJub256ZXJvIj4NCiAgICAgIDxwYXRoIGQ9Ik01LjUwMjgwMzgxLDQuNjI3MDQwMzggTDUuNSw2Ljc1IEw1LjUsMTcuMjU0MjA4NyBDNS41LDE5LjA0OTEzNDIgNi45NTUwNzQ1NiwyMC41MDQyMDg3IDguNzUsMjAuNTA0MjA4NyBMMTcuMzY2Mjg2OCwyMC41MDQ0NjIyIEMxNy4wNTczMzgsMjEuMzc4MjI0MSAxNi4yMjM5NzUxLDIyLjAwNDIwODcgMTUuMjQ0NDA1NywyMi4wMDQyMDg3IEw4Ljc1LDIyLjAwNDIwODcgQzYuMTI2NjQ3NDQsMjIuMDA0MjA4NyA0LDE5Ljg3NzU2MTMgNCwxNy4yNTQyMDg3IEw0LDYuNzUgQzQsNS43NjkyODg0OCA0LjYyNzQ0NTIzLDQuOTM1MTI0NjQgNS41MDI4MDM4MSw0LjYyNzA0MDM4IFogTTE3Ljc1LDIgQzE4Ljk5MjY0MDcsMiAyMCwzLjAwNzM1OTMxIDIwLDQuMjUgTDIwLDE3LjI1IEMyMCwxOC40OTI2NDA3IDE4Ljk5MjY0MDcsMTkuNSAxNy43NSwxOS41IEw4Ljc1LDE5LjUgQzcuNTA3MzU5MzEsMTkuNSA2LjUsMTguNDkyNjQwNyA2LjUsMTcuMjUgTDYuNSw0LjI1IEM2LjUsMy4wMDczNTkzMSA3LjUwNzM1OTMxLDIgOC43NSwyIEwxNy43NSwyIFogTTE3Ljc1LDMuNSBMOC43NSwzLjUgQzguMzM1Nzg2NDQsMy41IDgsMy44MzU3ODY0NCA4LDQuMjUgTDgsMTcuMjUgQzgsMTcuNjY0MjEzNiA4LjMzNTc4NjQ0LDE4IDguNzUsMTggTDE3Ljc1LDE4IEMxOC4xNjQyMTM2LDE4IDE4LjUsMTcuNjY0MjEzNiAxOC41LDE3LjI1IEwxOC41LDQuMjUgQzE4LjUsMy44MzU3ODY0NCAxOC4xNjQyMTM2LDMuNSAxNy43NSwzLjUgWiIgaWQ9IvCfjqgtQ29sb3IiPjwvcGF0aD4NCiAgICA8L2c+DQogIDwvZz4NCjwvc3ZnPg=="})}),(0,l.jsx)("div",{className:"gradient-delete",onClick:()=>this.props.onDelete(),title:"Delete Step",children:(0,l.jsx)("img",{className:"img",src:F})})]})}}class Ka extends a.Component{constructor(e){super(e)}componentDidMount(){const e=this.props.nodeData.data;this._onValueChangedObserver=e.onValueChangedObservable.add((()=>{this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e)}))}componentWillUnmount(){const e=this.props.nodeData.data;this._onValueChangedObserver&&(e.onValueChangedObservable.remove(this._onValueChangedObserver),this._onValueChangedObserver=null)}forceRebuild(){this.props.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.nodeData.data),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}deleteStep(e){const t=this.props.nodeData.data,n=t.colorSteps.indexOf(e);n>-1&&(t.colorSteps.splice(n,1),t.colorStepsUpdated(),this.forceRebuild(),this.forceUpdate())}copyStep(e){const t=this.props.nodeData.data,n=new s.GradientBlockColorStep(1,e.color);t.colorSteps.push(n),t.colorStepsUpdated(),this.forceRebuild(),this.forceUpdate()}addNewStep(){const e=this.props.nodeData.data,t=new s.GradientBlockColorStep(1,s.Color3.White());e.colorSteps.push(t),e.colorStepsUpdated(),this.forceRebuild(),this.forceUpdate()}checkForReOrder(){const e=this.props.nodeData.data;e.colorSteps.sort(((e,t)=>e.step===t.step?0:e.step>t.step?1:-1)),e.colorStepsUpdated(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.forceUpdate()}render(){const e=this.props.nodeData.data;return(0,l.jsxs)("div",{children:[(0,l.jsx)(Za,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsx)(O,{title:"PROPERTIES",children:(0,l.jsx)(yo,{label:"Type",options:[{label:"None",value:0},{label:"Visible in the inspector",value:1}],target:e,noDirectUpdate:!0,extractValue:e=>e.visibleInInspector?1:e.isConstant?2:0,onSelect:t=>{switch(t){case 0:e.visibleInInspector=!1;break;case 1:e.visibleInInspector=!0}this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()},propertyName:""})}),(0,l.jsxs)(O,{title:"STEPS",children:[(0,l.jsx)(Gr,{label:"Add new step",onClick:()=>this.addNewStep()}),e.colorSteps.map(((e,t)=>(0,l.jsx)(Ja,{stateManager:this.props.stateManager,onCheckForReOrder:()=>this.checkForReOrder(),onUpdateStep:()=>this.forceRebuild(),lineIndex:t,step:e,onCopy:()=>this.copyStep(e),onDelete:()=>this.deleteStep(e)},"step-"+t)))]})]})}}class $a extends a.Component{get imageSourceBlock(){return this.props.nodeData.data}constructor(e){super(e);const t=this.imageSourceBlock.texture;this.state={isEmbedded:!t||"data"===t.name.substring(0,4)}}UNSAFE_componentWillUpdate(e,t){if(e.nodeData.data!==this.props.nodeData.data){const n=e.nodeData.data.texture;t.isEmbedded=!n||"data"===n.name.substring(0,4),t.loadAsCubeTexture=n&&n.isCube}}_generateRandomForCache(){return"xxxxxxxxxxxxxxxxxxxx".replace(/[x]/g,(()=>(10*Math.random()|0).toString()))}updateAfterTextureLoad(){this.props.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.nodeData.data),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}removeTexture(){let e=this.imageSourceBlock.texture;e&&(e.dispose(),e=null,this.imageSourceBlock.texture=null),this.updateAfterTextureLoad()}_prepareTexture(){let e=this.imageSourceBlock.texture;e&&(e.dispose(),e=null),e||(this.imageSourceBlock.texture=new s.Texture(null,this.props.stateManager.data.nodeMaterial.getScene(),!1,!1),e=this.imageSourceBlock.texture,e.coordinatesMode=s.Texture.EQUIRECTANGULAR_MODE)}replaceTexture(e){this._prepareTexture();const t=this.imageSourceBlock.texture;s.Tools.ReadFile(e,(n=>{const r=new Blob([n],{type:"octet/stream"}),o=new FileReader;o.readAsDataURL(r),o.onloadend=()=>{const n=o.result;let r;e.name.toLowerCase().indexOf(".dds")>0?r=".dds":e.name.toLowerCase().indexOf(".env")>0&&(r=".env"),t.updateURL(n,r,(()=>this.updateAfterTextureLoad()))}}),void 0,!0)}replaceTextureWithUrl(e){this._prepareTexture(),this.imageSourceBlock.texture.updateURL(e,null,(()=>this.updateAfterTextureLoad()))}render(){let e="";const t=this.props.nodeData.data,n=this.imageSourceBlock.texture;n&&n.name&&"data"!==n.name.substring(0,4)&&(e=n.name),e=e.replace(/\?nocache=\d+/,"");const r=[{label:"Nearest",value:s.Texture.NEAREST_NEAREST},{label:"Linear",value:s.Texture.LINEAR_LINEAR},{label:"Linear & linear mip",value:s.Texture.LINEAR_LINEAR_MIPLINEAR},{label:"Linear & nearest mip",value:s.Texture.LINEAR_LINEAR_MIPNEAREST},{label:"Nearest & linear mip",value:s.Texture.NEAREST_NEAREST_MIPLINEAR},{label:"Nearest & nearest mip",value:s.Texture.NEAREST_NEAREST_MIPNEAREST},{label:"Nearest/Linear",value:s.Texture.NEAREST_LINEAR},{label:"Nearest/Linear & linear mip",value:s.Texture.NEAREST_LINEAR_MIPLINEAR},{label:"Nearest/Linear & nearest mip",value:s.Texture.NEAREST_LINEAR_MIPNEAREST},{label:"Linear/Nearest",value:s.Texture.LINEAR_NEAREST},{label:"Linear/Nearest & linear mip",value:s.Texture.LINEAR_NEAREST_MIPLINEAR},{label:"Linear/Nearest & nearest mip",value:s.Texture.LINEAR_NEAREST_MIPNEAREST}];return(0,l.jsxs)("div",{children:[(0,l.jsx)(Za,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsxs)(O,{title:"PROPERTIES",children:[n&&n.updateSamplingMode&&(0,l.jsx)(yo,{label:"Sampling",options:r,target:n,noDirectUpdate:!0,propertyName:"samplingMode",onSelect:e=>{n.updateSamplingMode(e),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(Z,{label:"Clamp U",isSelected:()=>n.wrapU===s.Texture.CLAMP_ADDRESSMODE,onSelect:e=>{n.wrapU=e?s.Texture.CLAMP_ADDRESSMODE:s.Texture.WRAP_ADDRESSMODE,this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(Z,{label:"Clamp V",isSelected:()=>n.wrapV===s.Texture.CLAMP_ADDRESSMODE,onSelect:e=>{n.wrapV=e?s.Texture.CLAMP_ADDRESSMODE:s.Texture.WRAP_ADDRESSMODE,this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Offset U",target:n,propertyName:"uOffset",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Offset V",target:n,propertyName:"vOffset",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Scale U",target:n,propertyName:"uScale",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Scale V",target:n,propertyName:"vScale",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:"Rotation U",target:n,propertyName:"uAng",minimum:0,maximum:2*Math.PI,useEuler:!0,step:.1,onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:"Rotation V",target:n,propertyName:"vAng",minimum:0,maximum:2*Math.PI,useEuler:!0,step:.1,onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&(0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:"Rotation W",target:n,propertyName:"wAng",minimum:0,maximum:2*Math.PI,useEuler:!0,step:.1,onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}})]}),(0,l.jsxs)(O,{title:"SOURCE",children:[(0,l.jsx)(Z,{label:"Embed static texture",isSelected:()=>this.state.isEmbedded,onSelect:e=>{this.setState({isEmbedded:e}),this.imageSourceBlock.texture=null,this.updateAfterTextureLoad()}}),this.state.isEmbedded&&(0,l.jsx)(Q,{label:"Upload",onClick:e=>this.replaceTexture(e),accept:".jpg, .png, .tga, .dds, .env"}),!this.state.isEmbedded&&(0,l.jsx)(Vr,{lockObject:this.props.stateManager.lockObject,label:"Link",value:e,onChange:e=>this.replaceTextureWithUrl(e)}),!this.state.isEmbedded&&e&&(0,l.jsx)(Gr,{label:"Refresh",onClick:()=>this.replaceTextureWithUrl(e+"?nocache="+this._generateRandomForCache())}),n&&(0,l.jsx)(Gr,{label:"Remove",onClick:()=>this.removeTexture()})]}),(0,l.jsx)(qa,{stateManager:this.props.stateManager,nodeData:this.props.nodeData})]})}}class ei extends a.Component{render(){return(0,l.jsx)(_r,{lockObject:this.props.globalState.lockObject,label:"Value",target:this.props.inputBlock,propertyName:"value",onChange:()=>{this.props.inputBlock.isConstant&&this.props.globalState.stateManager.onRebuildRequiredObservable.notifyObservers(),this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.inputBlock)}})}}class ti extends a.Component{render(){return(0,l.jsx)(br,{lockObject:this.props.lockObject,label:"Value",target:this.props.inputBlock,propertyName:"value",onChange:()=>{this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.inputBlock)}})}}class ni extends a.Component{render(){return(0,l.jsx)(Rr,{lockObject:this.props.lockObject,label:"Value",target:this.props.inputBlock,propertyName:"value",onChange:()=>{this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.inputBlock)}})}}class ri extends a.Component{render(){return(0,l.jsx)(Lr,{lockObject:this.props.lockObject,label:"Value",target:this.props.inputBlock,propertyName:"value",onChange:()=>{this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.inputBlock)}})}}class oi extends a.Component{render(){return(0,l.jsx)(Br,{lockObject:this.props.lockObject,label:"Value",target:this.props.inputBlock,propertyName:"value",onChange:()=>{this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.inputBlock)}})}}class ai extends a.Component{constructor(e){super(e),this._localChange=!1;const t=this.props.target[this.props.propertyName].clone();let n=0;if(this.props.mode){const e=new s.Quaternion;t.decompose(void 0,e);const r=e.toEulerAngles();switch(this.props.mode){case 1:n=r.x;break;case 2:n=r.y;break;case 3:n=r.z}}this.state={value:t,mode:this.props.mode||0,angle:n}}shouldComponentUpdate(e,t){const n=e.target[e.propertyName];return!n.equals(t.value)||this._localChange?(t.value=n.clone(),this._localChange=!1,!0):t.mode!==this.state.mode||t.angle!==this.state.angle}raiseOnPropertyChanged(e){this.props.onChange&&this.props.onChange(this.state.value),this.props.onPropertyChangedObservable&&this.props.onPropertyChangedObservable.notifyObservers({object:this.props.target,property:this.props.propertyName,value:this.state.value,initialValue:e})}updateMatrix(){const e=this.props.target[this.props.propertyName].clone();this.props.target[this.props.propertyName]=this.state.value,this.setState({value:e}),this.raiseOnPropertyChanged(e)}updateRow(e,t){this._localChange=!0,this.state.value.setRow(t,e),this.updateMatrix()}updateBasedOnMode(e){switch(this.state.mode){case 1:s.Matrix.RotationXToRef(this.state.angle,this.state.value);break;case 2:s.Matrix.RotationYToRef(this.state.angle,this.state.value);break;case 3:s.Matrix.RotationZToRef(this.state.angle,this.state.value)}this.updateMatrix(),this.setState({angle:e})}render(){return(0,l.jsxs)("div",{className:"vector3Line",children:[(0,l.jsx)("div",{className:"firstLine",children:(0,l.jsx)("div",{className:"label",title:this.props.label,children:this.props.label})}),(0,l.jsx)("div",{className:"secondLine",children:(0,l.jsx)(yo,{label:"Mode",className:"no-right-margin",options:[{label:"User-defined",value:0},{label:"Rotation over X axis",value:1},{label:"Rotation over Y axis",value:2},{label:"Rotation over Z axis",value:3}],target:this,noDirectUpdate:!0,propertyName:"",extractValue:()=>this.state.mode,onSelect:e=>{this.props.target[this.props.propertyName]=s.Matrix.Identity(),s.Matrix.IdentityToRef(this.state.value),this.setState({mode:e,angle:0}),this.updateMatrix(),this.props.onModeChange&&this.props.onModeChange(e)}})}),0===this.state.mode&&(0,l.jsxs)("div",{className:"secondLine",children:[(0,l.jsx)(Br,{lockObject:this.props.lockObject,label:"Row #0",value:this.state.value.getRow(0),onChange:e=>this.updateRow(e,0)}),(0,l.jsx)(Br,{lockObject:this.props.lockObject,label:"Row #1",value:this.state.value.getRow(1),onChange:e=>this.updateRow(e,1)}),(0,l.jsx)(Br,{lockObject:this.props.lockObject,label:"Row #2",value:this.state.value.getRow(2),onChange:e=>this.updateRow(e,2)}),(0,l.jsx)(Br,{lockObject:this.props.lockObject,label:"Row #3",value:this.state.value.getRow(3),onChange:e=>this.updateRow(e,3)})]}),0!==this.state.mode&&(0,l.jsx)("div",{className:"secondLine",children:(0,l.jsx)(Sr,{label:"Angle",lockObject:this.props.lockObject,minimum:0,maximum:2*Math.PI,useEuler:!0,step:.1,directValue:this.state.angle,onChange:e=>this.updateBasedOnMode(e)})})]})}}class ii extends a.Component{render(){return(0,l.jsx)(ai,{lockObject:this.props.lockObject,label:"Value",target:this.props.inputBlock,propertyName:"value",onChange:()=>{this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.inputBlock)},mode:this.props.inputBlock.matrixMode,onModeChange:e=>{this.props.inputBlock.matrixMode=e}})}}class si extends a.Component{render(){return(0,l.jsx)(Ur,{lockObject:this.props.lockObject,label:"Value",target:this.props.inputBlock,propertyName:"value",onChange:()=>{this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.inputBlock)}})}}class li extends a.Component{constructor(e){super(e)}componentDidMount(){const e=this.props.nodeData.data;this._onValueChangedObserver=e.onValueChangedObservable.add((()=>{this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e)}))}componentWillUnmount(){const e=this.props.nodeData.data;this._onValueChangedObserver&&(e.onValueChangedObservable.remove(this._onValueChangedObserver),this._onValueChangedObserver=null)}renderValue(e){const t=this.props.nodeData.data;switch(t.type){case s.NodeMaterialBlockConnectionPointTypes.Float:{const n=isNaN(t.min)||isNaN(t.max)||t.min===t.max;return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(Z,{label:"Is boolean",target:t,propertyName:"isBoolean"}),t.isBoolean&&(0,l.jsx)(Z,{label:"Value",isSelected:()=>1===t.value,onSelect:e=>{t.value=e?1:0,t.isConstant&&this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),!t.isBoolean&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Min",target:t,propertyName:"min",onChange:()=>{t.value<t.min&&(t.value=t.min,t.isConstant&&this.props.stateManager.onRebuildRequiredObservable.notifyObservers()),this.forceUpdate()}}),!t.isBoolean&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Max",target:t,propertyName:"max",onChange:()=>{t.value>t.max&&(t.value=t.max,t.isConstant&&this.props.stateManager.onRebuildRequiredObservable.notifyObservers()),this.forceUpdate()}}),!t.isBoolean&&n&&(0,l.jsx)(ei,{globalState:e,inputBlock:t}),!t.isBoolean&&!n&&(0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:"Value",target:t,propertyName:"value",step:Math.abs(t.max-t.min)/100,minimum:Math.min(t.min,t.max),maximum:t.max,onChange:()=>{t.isConstant&&this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}})]})}case s.NodeMaterialBlockConnectionPointTypes.Vector2:return(0,l.jsx)(ti,{lockObject:e.lockObject,globalState:e,inputBlock:t});case s.NodeMaterialBlockConnectionPointTypes.Color3:return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(ni,{lockObject:e.lockObject,globalState:e,inputBlock:t}),(0,l.jsx)(Z,{label:"Convert to gamma space",propertyName:"convertToGammaSpace",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),(0,l.jsx)(Z,{label:"Convert to linear space",propertyName:"convertToLinearSpace",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}})]});case s.NodeMaterialBlockConnectionPointTypes.Color4:return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(si,{lockObject:e.lockObject,globalState:e,inputBlock:t}),(0,l.jsx)(Z,{label:"Convert to gamma space",propertyName:"convertToGammaSpace",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),(0,l.jsx)(Z,{label:"Convert to linear space",propertyName:"convertToLinearSpace",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}})]});case s.NodeMaterialBlockConnectionPointTypes.Vector3:return(0,l.jsx)(ri,{lockObject:e.lockObject,globalState:e,inputBlock:t});case s.NodeMaterialBlockConnectionPointTypes.Vector4:return(0,l.jsx)(oi,{lockObject:e.lockObject,globalState:e,inputBlock:t});case s.NodeMaterialBlockConnectionPointTypes.Matrix:return(0,l.jsx)(ii,{lockObject:e.lockObject,globalState:e,inputBlock:t})}return null}setDefaultValue(){this.props.nodeData.data.setDefaultValue()}render(){const e=this.props.nodeData.data;let t=[],n=[],r=[];switch(e.type){case s.NodeMaterialBlockConnectionPointTypes.Float:r=[{label:"None",value:s.AnimatedInputBlockTypes.None},{label:"Time",value:s.AnimatedInputBlockTypes.Time},{label:"RealTime",value:s.AnimatedInputBlockTypes.RealTime}],t=[{label:"Delta time",value:s.NodeMaterialSystemValues.DeltaTime},{label:"Material alpha",value:s.NodeMaterialSystemValues.MaterialAlpha}];break;case s.NodeMaterialBlockConnectionPointTypes.Matrix:t=[{label:"World",value:s.NodeMaterialSystemValues.World},{label:"World x View",value:s.NodeMaterialSystemValues.WorldView},{label:"World x View x Projection",value:s.NodeMaterialSystemValues.WorldViewProjection},{label:"View",value:s.NodeMaterialSystemValues.View},{label:"View x Projection",value:s.NodeMaterialSystemValues.ViewProjection},{label:"Projection",value:s.NodeMaterialSystemValues.Projection}];break;case s.NodeMaterialBlockConnectionPointTypes.Color3:t=[{label:"Fog color",value:s.NodeMaterialSystemValues.FogColor}];break;case s.NodeMaterialBlockConnectionPointTypes.Color4:n=[{label:"color",value:"color"},{label:"Instance Color",value:"instanceColor"}];break;case s.NodeMaterialBlockConnectionPointTypes.Vector2:n=[{label:"uv",value:"uv"},{label:"uv2",value:"uv2"},{label:"uv3",value:"uv3"},{label:"uv4",value:"uv4"},{label:"uv5",value:"uv5"},{label:"uv6",value:"uv6"}];break;case s.NodeMaterialBlockConnectionPointTypes.Vector3:t=[{label:"Camera position",value:s.NodeMaterialSystemValues.CameraPosition}],n=[{label:"position",value:"position"},{label:"normal",value:"normal"}];break;case s.NodeMaterialBlockConnectionPointTypes.Vector4:r=[{label:"None",value:s.AnimatedInputBlockTypes.None},{label:"MouseInfo",value:s.AnimatedInputBlockTypes.MouseInfo}],n=[{label:"matricesIndices",value:"matricesIndices"},{label:"matricesWeights",value:"matricesWeights"},{label:"matricesIndicesExtra",value:"matricesIndicesExtra"},{label:"matricesWeightsExtra",value:"matricesWeightsExtra"},{label:"tangent",value:"tangent"}],t=[{label:"Camera parameters",value:s.NodeMaterialSystemValues.CameraParameters}]}const o=[{label:"User-defined",value:0}];return n.length>0&&o.push({label:"Mesh attribute",value:1}),t.length>0&&o.push({label:"System value",value:2}),(0,l.jsxs)("div",{children:[(0,l.jsx)(Za,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsxs)(O,{title:"PROPERTIES",children:[e.isUniform&&!e.isSystemValue&&e.animationType===s.AnimatedInputBlockTypes.None&&(0,l.jsx)(yo,{label:"Type",options:[{label:"None",value:0},{label:"Visible in the inspector",value:1},{label:"Constant",value:2}],target:e,noDirectUpdate:!0,extractValue:()=>e.visibleInInspector?1:e.isConstant?2:0,onSelect:t=>{switch(t){case 0:e.visibleInInspector=!1,e.isConstant=!1;break;case 1:e.visibleInInspector=!0,e.isConstant=!1;break;case 2:e.visibleInInspector=!1,e.isConstant=!0}this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()},propertyName:""}),e.visibleInInspector&&(0,l.jsx)(Vr,{label:"Group",propertyName:"groupInInspector",target:e,lockObject:this.props.stateManager.lockObject,onChange:()=>{this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()},throttlePropertyChangedNotification:!0}),(0,l.jsx)(yo,{label:"Mode",options:o,target:e,noDirectUpdate:!0,extractValue:()=>e.isAttribute?1:e.isSystemValue?2:0,onSelect:r=>{switch(r){case 0:e.isUniform=!0,e.setAsSystemValue(null),this.setDefaultValue();break;case 1:e.setAsAttribute(n[0].value);break;case 2:e.setAsSystemValue(t[0].value)}this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()},propertyName:""}),e.isAttribute&&(0,l.jsx)(yo,{label:"Attribute",valuesAreStrings:!0,options:n,target:e,propertyName:"name",onSelect:t=>{e.setAsAttribute(t),this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}}),e.isUniform&&r.length>0&&(0,l.jsx)(yo,{label:"Animation type",options:r,target:e,propertyName:"animationType",onSelect:()=>{this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}}),e.isUniform&&!e.isSystemValue&&e.animationType===s.AnimatedInputBlockTypes.None&&this.renderValue(this.props.stateManager.data),e.isUniform&&e.isSystemValue&&(0,l.jsx)(yo,{label:"System value",options:t,target:e,propertyName:"systemValue",onSelect:t=>{e.setAsSystemValue(t),this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}}),e.isUniform&&!e.isSystemValue&&e.animationType===s.AnimatedInputBlockTypes.None&&(0,l.jsx)(Z,{label:"Visible on frame",target:e,propertyName:"visibleOnFrame"})]})]})}}class ci extends a.Component{render(){const e=this.props.stateManager.data.nodeMaterial.getScene(),t=e.lights.map((e=>({label:e.name,value:e.name}))),n=this.props.nodeData.data;return(0,l.jsxs)("div",{children:[(0,l.jsx)(Za,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsx)(O,{title:"PROPERTIES",children:(0,l.jsx)(yo,{label:"Light",noDirectUpdate:!0,valuesAreStrings:!0,options:t,target:n,propertyName:"name",extractValue:e=>e.light?.name??"",onSelect:t=>{n.light=e.getLightByName(t),this.forceUpdate(),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}})})]})}}class ui extends a.Component{get textureBlock(){return this.props.nodeData.data}constructor(e){super(e);const t=this.textureBlock.texture;this.state={isEmbedded:!t||"data"===t.name.substring(0,4),loadAsCubeTexture:t&&t.isCube,textureIsPrefiltered:!0}}UNSAFE_componentWillUpdate(e,t){if(e.nodeData.data!==this.props.nodeData.data){const n=e.nodeData.data.texture;t.isEmbedded=!n||"data"===n.name.substring(0,4),t.loadAsCubeTexture=n&&n.isCube}}_generateRandomForCache(){return"xxxxxxxxxxxxxxxxxxxx".replace(/[x]/g,(()=>(10*Math.random()|0).toString()))}updateAfterTextureLoad(){this.props.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.nodeData.data),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}removeTexture(){let e=this.textureBlock.texture;e&&(e.dispose(),e=null,this.textureBlock.texture=null),this.updateAfterTextureLoad()}_prepareTexture(){let e=this.textureBlock.texture;if(e&&e.isCube!==this.state.loadAsCubeTexture&&(e.dispose(),e=null),!e){const t=this.props.stateManager.data;this.state.loadAsCubeTexture?(this.textureBlock.texture=new s.CubeTexture("",t.nodeMaterial.getScene()),e=this.textureBlock.texture,e.coordinatesMode=s.Texture.CUBIC_MODE):(this.textureBlock.texture=new s.Texture(null,t.nodeMaterial.getScene(),!1,this.textureBlock instanceof s.ReflectionTextureBlock||this.textureBlock instanceof s.ReflectionBlock||this.textureBlock instanceof s.RefractionBlock||t.mode===s.NodeMaterialModes.PostProcess),e=this.textureBlock.texture,e.coordinatesMode=s.Texture.EQUIRECTANGULAR_MODE)}}replaceTexture(e){this._prepareTexture();const t=this.textureBlock.texture;s.Tools.ReadFile(e,(n=>{const r=new Blob([n],{type:"octet/stream"}),o=new FileReader;o.readAsDataURL(r),o.onloadend=()=>{const n=o.result;let r;e.name.toLowerCase().indexOf(".dds")>0?r=".dds":e.name.toLowerCase().indexOf(".env")>0&&(r=".env"),t.isCube?t.updateURL(n,r,(()=>this.updateAfterTextureLoad()),this.state.textureIsPrefiltered):t.updateURL(n,r,(()=>this.updateAfterTextureLoad()))}}),void 0,!0)}replaceTextureWithUrl(e){this._prepareTexture();const t=this.textureBlock.texture;if(t.name=e,t.isCube||this.textureBlock instanceof s.ReflectionTextureBlock||this.textureBlock instanceof s.ReflectionBlock||this.textureBlock instanceof s.RefractionBlock){let n;e.toLowerCase().indexOf(".dds")>0?n=".dds":e.toLowerCase().indexOf(".env")>0&&(n=".env"),t.updateURL(e,n,(()=>this.updateAfterTextureLoad()),this.state.textureIsPrefiltered)}else t.updateURL(e,null,(()=>this.updateAfterTextureLoad()))}render(){let e="";const t=this.props.nodeData.data,n=this.textureBlock.hasImageSource?null:this.textureBlock.texture;n&&n.name&&"data"!==n.name.substring(0,4)&&(e=n.name),e=e.replace(/\?nocache=\d+/,"");const r=this.textureBlock instanceof s.ReflectionTextureBlock||this.textureBlock instanceof s.ReflectionBlock||this.textureBlock instanceof s.RefractionBlock,o=this.textureBlock instanceof s.CurrentScreenBlock||this.textureBlock instanceof s.ParticleTextureBlock,a=this.textureBlock instanceof s.ReflectionBlock,i=[{label:"Cubic",value:s.Texture.CUBIC_MODE},{label:"Equirectangular",value:s.Texture.EQUIRECTANGULAR_MODE},{label:"Explicit",value:s.Texture.EXPLICIT_MODE},{label:"Fixed equirectangular",value:s.Texture.FIXED_EQUIRECTANGULAR_MODE},{label:"Fixed mirrored equirectangular",value:s.Texture.FIXED_EQUIRECTANGULAR_MIRRORED_MODE},{label:"Planar",value:s.Texture.PLANAR_MODE},{label:"Projection",value:s.Texture.PROJECTION_MODE},{label:"Skybox",value:s.Texture.SKYBOX_MODE},{label:"Spherical",value:s.Texture.SPHERICAL_MODE}],c=[{label:"Nearest",value:s.Texture.NEAREST_NEAREST},{label:"Linear",value:s.Texture.LINEAR_LINEAR},{label:"Linear & linear mip",value:s.Texture.LINEAR_LINEAR_MIPLINEAR},{label:"Linear & nearest mip",value:s.Texture.LINEAR_LINEAR_MIPNEAREST},{label:"Nearest & linear mip",value:s.Texture.NEAREST_NEAREST_MIPLINEAR},{label:"Nearest & nearest mip",value:s.Texture.NEAREST_NEAREST_MIPNEAREST},{label:"Nearest/Linear",value:s.Texture.NEAREST_LINEAR},{label:"Nearest/Linear & linear mip",value:s.Texture.NEAREST_LINEAR_MIPLINEAR},{label:"Nearest/Linear & nearest mip",value:s.Texture.NEAREST_LINEAR_MIPNEAREST},{label:"Linear/Nearest",value:s.Texture.LINEAR_NEAREST},{label:"Linear/Nearest & linear mip",value:s.Texture.LINEAR_NEAREST_MIPLINEAR},{label:"Linear/Nearest & nearest mip",value:s.Texture.LINEAR_NEAREST_MIPNEAREST}];return(0,l.jsxs)("div",{children:[(0,l.jsx)(Za,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsxs)(O,{title:"PROPERTIES",children:[(0,l.jsx)(Z,{label:"Auto select UV",propertyName:"autoSelectUV",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),!r&&(0,l.jsx)(Z,{label:"Convert to gamma space",propertyName:"convertToGammaSpace",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),!r&&(0,l.jsx)(Z,{label:"Convert to linear space",propertyName:"convertToLinearSpace",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&a&&(0,l.jsx)(Z,{label:"Is in gamma space",propertyName:"gammaSpace",target:n,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),(0,l.jsx)(Z,{label:"Disable multiplying by level",propertyName:"disableLevelMultiplication",target:t,onValueChanged:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}}),n&&n.updateSamplingMode&&(0,l.jsx)(yo,{label:"Sampling",options:c,target:n,noDirectUpdate:!0,propertyName:"samplingMode",onSelect:e=>{n.updateSamplingMode(e),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&r&&(0,l.jsx)(yo,{label:"Reflection mode",options:i,target:n,propertyName:"coordinatesMode",onSelect:e=>{n.coordinatesMode=e,this.forceUpdate(),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&!r&&!o&&(0,l.jsx)(Z,{label:"Clamp U",isSelected:()=>n.wrapU===s.Texture.CLAMP_ADDRESSMODE,onSelect:e=>{n.wrapU=e?s.Texture.CLAMP_ADDRESSMODE:s.Texture.WRAP_ADDRESSMODE,this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}}),n&&!r&&!o&&(0,l.jsx)(Z,{label:"Clamp V",isSelected:()=>n.wrapV===s.Texture.CLAMP_ADDRESSMODE,onSelect:e=>{n.wrapV=e?s.Texture.CLAMP_ADDRESSMODE:s.Texture.WRAP_ADDRESSMODE,this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t),this.props.stateManager.onRebuildRequiredObservable.notifyObservers()}}),n&&!r&&!o&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Offset U",target:n,propertyName:"uOffset",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&!r&&!o&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Offset V",target:n,propertyName:"vOffset",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&!r&&!o&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Scale U",target:n,propertyName:"uScale",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&!r&&!o&&(0,l.jsx)(_r,{lockObject:this.props.stateManager.lockObject,label:"Scale V",target:n,propertyName:"vScale",onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&!r&&!o&&(0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:"Rotation U",target:n,propertyName:"uAng",minimum:0,maximum:2*Math.PI,useEuler:!0,step:.1,onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&!r&&!o&&(0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:"Rotation V",target:n,propertyName:"vAng",minimum:0,maximum:2*Math.PI,useEuler:!0,step:.1,onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}}),n&&!r&&!o&&(0,l.jsx)(Sr,{lockObject:this.props.stateManager.lockObject,label:"Rotation W",target:n,propertyName:"wAng",minimum:0,maximum:2*Math.PI,useEuler:!0,step:.1,onChange:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(t)}})]}),!this.textureBlock.hasImageSource&&(0,l.jsxs)(O,{title:"SOURCE",children:[(0,l.jsx)(Z,{label:"Embed static texture",isSelected:()=>this.state.isEmbedded,onSelect:e=>{this.setState({isEmbedded:e}),this.textureBlock.texture=null,this.updateAfterTextureLoad()}}),r&&(0,l.jsx)(Z,{label:"Load as cube texture",isSelected:()=>this.state.loadAsCubeTexture,onSelect:e=>this.setState({loadAsCubeTexture:e})}),r&&this.state.loadAsCubeTexture&&(0,l.jsx)(Z,{label:" Texture is prefiltered",isSelected:()=>this.state.textureIsPrefiltered,onSelect:e=>this.setState({textureIsPrefiltered:e})}),this.state.isEmbedded&&(0,l.jsx)(Q,{label:"Upload",onClick:e=>this.replaceTexture(e),accept:".jpg, .png, .tga, .dds, .env, .exr"}),!this.state.isEmbedded&&(0,l.jsx)(Vr,{lockObject:this.props.stateManager.lockObject,label:"Link",value:e,onChange:e=>this.replaceTextureWithUrl(e)}),!this.state.isEmbedded&&e&&(0,l.jsx)(Gr,{label:"Refresh",onClick:()=>this.replaceTextureWithUrl(e+"?nocache="+this._generateRandomForCache())}),n&&(0,l.jsx)(Gr,{label:"Remove",onClick:()=>this.removeTexture()})]}),(0,l.jsx)(qa,{stateManager:this.props.stateManager,nodeData:this.props.nodeData})]})}}class di extends a.Component{constructor(e){super(e)}render(){const e=this.props.nodeData.data,t=[{label:"X",value:"x"},{label:"Y",value:"y"},{label:"Z",value:"z"},{label:"W",value:"w"}];return(0,l.jsxs)("div",{children:[(0,l.jsx)(Za,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsxs)(O,{title:"SWIZZLES",children:[(0,l.jsx)(yo,{label:"X",options:t,target:e,propertyName:"xSwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}}),(0,l.jsx)(yo,{label:"Y",options:t,target:e,propertyName:"ySwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}}),(0,l.jsx)(yo,{label:"Z",options:t,target:e,propertyName:"zSwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}}),(0,l.jsx)(yo,{label:"W",options:t,target:e,propertyName:"wSwizzle",valuesAreStrings:!0,onSelect:()=>{this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.props.stateManager.onRebuildRequiredObservable.notifyObservers(),this.forceUpdate()}})]})]})}}class pi extends a.Component{constructor(e){super(e)}componentDidMount(){this._onUpdateRequiredObserver=this.props.stateManager.onUpdateRequiredObservable.add((()=>{this.forceUpdate()}))}componentWillUnmount(){this.props.stateManager.onUpdateRequiredObservable.remove(this._onUpdateRequiredObserver)}render(){const e=this.props.nodeData.data,t=[{label:"None",value:-1}],n=[],r=this.props.stateManager.data.nodeMaterial;for(const e of r.attachedBlocks)"NodeMaterialTeleportInBlock"===e.getClassName()&&n.push(e);n.sort(((e,t)=>e.name.localeCompare(t.name)));for(const e of n)t.push({label:e.name,value:e.uniqueId});return(0,l.jsxs)("div",{children:[(0,l.jsx)(Za,{stateManager:this.props.stateManager,nodeData:this.props.nodeData}),(0,l.jsx)(O,{title:"PROPERTIES",children:(0,l.jsx)(yo,{label:"Entry point",options:t,target:e,propertyName:"entryPoint",noDirectUpdate:!0,onSelect:t=>{if(e.entryPoint&&this.props.stateManager.onHighlightNodeObservable.notifyObservers({data:e.entryPoint,active:!1}),-1===t)e.detach();else{const r=n.find((e=>e.uniqueId===t));r?.attachToEndpoint(e)}e.entryPoint&&this.props.stateManager.onHighlightNodeObservable.notifyObservers({data:e.entryPoint,active:!0}),this.props.stateManager.onUpdateRequiredObservable.notifyObservers(e),this.forceUpdate()},extractValue:()=>e.entryPoint?e.entryPoint?.uniqueId:-1})})]})}}class hi{static Show(e){Ao.RegisteredControls.LoopBlock=Ha,Ao.RegisteredControls.InputBlock=la,Ao.RegisteredControls.VertexOutputBlock=ca,Ao.RegisteredControls.FragmentOutputBlock=ca,Ao.RegisteredControls.ClampBlock=ua,Ao.RegisteredControls.GradientBlock=Aa,Ao.RegisteredControls.RemapBlock=Ca,Ao.RegisteredControls.TrigonometryBlock=ba,Ao.RegisteredControls.ConditionalBlock=Ba,Ao.RegisteredControls.TextureBlock=_a,Ao.RegisteredControls.ReflectionTextureBlock=_a,Ao.RegisteredControls.ReflectionBlock=_a,Ao.RegisteredControls.RefractionBlock=_a,Ao.RegisteredControls.CurrentScreenBlock=_a,Ao.RegisteredControls.ParticleTextureBlock=_a,Ao.RegisteredControls.TriPlanarBlock=_a,Ao.RegisteredControls.BiPlanarBlock=_a,Ao.RegisteredControls.DiscardBlock=Sa,Ao.RegisteredControls.PBRMetallicRoughnessBlock=La,Ao.RegisteredControls.AnisotropyBlock=La,Ao.RegisteredControls.ClearCoatBlock=La,Ao.RegisteredControls.SheenBlock=La,Ao.RegisteredControls.SubSurfaceBlock=La,Ao.RegisteredControls.ImageSourceBlock=Ea,Ao.RegisteredControls.ElbowBlock=za,Ao.RegisteredControls.MeshAttributeExistsBlock=Ra,Ao.RegisteredControls.CurveBlock=Va,Ao.RegisteredControls.NodeMaterialTeleportInBlock=Wa,Ao.RegisteredControls.NodeMaterialTeleportOutBlock=Ga,ho.DefaultControl=Qa,ho.RegisteredControls.InputBlock=li,ho.RegisteredControls.GradientBlock=Ka,ho.RegisteredControls.LightInformationBlock=ci,ho.RegisteredControls.TextureBlock=ui,ho.RegisteredControls.ReflectionTextureBlock=ui,ho.RegisteredControls.ReflectionBlock=ui,ho.RegisteredControls.RefractionBlock=ui,ho.RegisteredControls.CurrentScreenBlock=ui,ho.RegisteredControls.ParticleTextureBlock=ui,ho.RegisteredControls.TriPlanarBlock=ui,ho.RegisteredControls.BiPlanarBlock=ui,ho.RegisteredControls.ImageSourceBlock=$a,ho.RegisteredControls.VectorMergerBlock=di,ho.RegisteredControls.ColorMergerBlock=Xa,ho.RegisteredControls.NodeMaterialTeleportOutBlock=pi,S.PortDataBuilder=(e,t)=>new L(e.portData.data,t),S.NodeDataBuilder=(e,t)=>new j(e,t),this._CurrentState&&this._PopupWindow&&this._PopupWindow.close();let n=e.hostElement;n||(n=Io("BABYLON.JS NODE EDITOR",{onWindowCreateCallback:e=>this._PopupWindow=e,width:1e3,height:800}));const r=new T;r.nodeMaterial=e.nodeMaterial,r.mode=e.nodeMaterial.mode,r.hostElement=n,r.hostDocument=n.ownerDocument,r.customSave=e.customSave,r.hostWindow=n.ownerDocument.defaultView,r.stateManager.hostDocument=r.hostDocument,e.backgroundColor&&(r.backgroundColor=e.backgroundColor);const o=a.createElement(na,{globalState:r});i.render(o,n),e.customLoadObservable&&e.customLoadObservable.add((t=>{E.Deserialize(t,r),r.mode=e.nodeMaterial.mode,r.onResetRequiredObservable.notifyObservers(!1),r.onBuiltObservable.notifyObservers()})),this._CurrentState=r,r.hostWindow.addEventListener("beforeunload",(()=>{r.onPopupClosedObservable.notifyObservers()})),r.nodeMaterial&&this._PopupWindow&&(r.nodeMaterial.getScene().onDisposeObservable.addOnce((()=>{this._PopupWindow&&this._PopupWindow.close()})),window.onbeforeunload=()=>{this._PopupWindow&&this._PopupWindow.close()}),window.addEventListener("beforeunload",(()=>{s.DataStorage.ReadNumber("PreviewType",t.Box)===t.Custom&&s.DataStorage.WriteNumber("PreviewType",r.mode===s.NodeMaterialModes.Material?t.Box:t.Bubbles)}))}}const Ai=void 0!==r.g?r.g:"undefined"!=typeof window?window:void 0;void 0!==Ai&&(Ai.BABYLON=Ai.BABYLON||{},Ai.BABYLON.NodeEditor=hi);const fi=e})(),o.default})()));
|
3
3
|
//# sourceMappingURL=babylon.nodeEditor.js.map
|