@babylonjs/node-editor 6.15.0 → 6.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1495,6 +1495,8 @@ ___CSS_LOADER_EXPORT___.push([module.id, `#node-editor-graph-root {
1495
1495
  grid-column: 1;
1496
1496
  width: 100%;
1497
1497
  display: grid;
1498
+ grid-template-columns: 100%;
1499
+ grid-template-rows: 100%;
1498
1500
  outline: 0 !important;
1499
1501
  padding: 0 !important;
1500
1502
  user-select: none;
@@ -1553,7 +1555,7 @@ ___CSS_LOADER_EXPORT___.push([module.id, `#node-editor-graph-root {
1553
1555
  }
1554
1556
  #node-editor-graph-root .InputBlock {
1555
1557
  width: 250px;
1556
- }`, "",{"version":3,"sources":["webpack://./../../../tools/nodeEditor/dist/main.scss"],"names":[],"mappings":"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","sourcesContent":["#node-editor-graph-root {\r\n display: grid;\r\n grid-template-rows: calc(100% - 120px) 120px;\r\n height: 100%;\r\n width: 100%;\r\n background: #464646;\r\n font: 14px \"acumin-pro\";\r\n\r\n &.popup {\r\n grid-template-columns: 100%;\r\n overflow: hidden;\r\n }\r\n\r\n .wait-screen {\r\n display: grid;\r\n justify-content: center;\r\n align-content: center;\r\n height: 100%;\r\n width: 100%;\r\n background: #464646;\r\n opacity: 0.95;\r\n color: white;\r\n font: 24px \"acumin-pro\";\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n\r\n &.hidden {\r\n visibility: hidden;\r\n }\r\n }\r\n\r\n #nodeList {\r\n grid-row: 1 / span 2;\r\n grid-column: 1;\r\n }\r\n\r\n #leftGrab {\r\n grid-row: 1 / span 2;\r\n grid-column: 2;\r\n cursor: ew-resize;\r\n }\r\n\r\n #rightGrab {\r\n grid-row: 1 / span 2;\r\n grid-column: 4;\r\n cursor: ew-resize;\r\n }\r\n\r\n .diagram-container {\r\n grid-row: 1;\r\n grid-column: 3;\r\n background: #5f5b60;\r\n width: 100%;\r\n height: 100%;\r\n\r\n .diagram {\r\n display: none;\r\n width: 100%;\r\n height: 100%;\r\n }\r\n }\r\n\r\n .right-panel {\r\n grid-row: 1 / span 2;\r\n grid-column: 5;\r\n display: grid;\r\n grid-template-rows: 1fr 40px auto 40px;\r\n grid-template-columns: 100%;\r\n height: 100%;\r\n overflow-y: auto;\r\n }\r\n\r\n #propertyTab {\r\n grid-row: 1;\r\n grid-column: 1;\r\n }\r\n\r\n .button {\r\n display: grid;\r\n justify-content: center;\r\n align-content: center;\r\n height: auto;\r\n width: calc(100% / 7);\r\n cursor: pointer;\r\n\r\n &:hover {\r\n background: rgb(51, 122, 183);\r\n color: white;\r\n opacity: 0.8;\r\n }\r\n\r\n &.selected {\r\n background: rgb(51, 122, 183);\r\n color: white;\r\n }\r\n\r\n &.align {\r\n justify-content: stretch;\r\n text-align: center;\r\n }\r\n }\r\n\r\n #preview-mesh-bar {\r\n grid-row: 2;\r\n grid-column: 1;\r\n display: grid;\r\n grid-template-columns: auto 1fr 40px 40px 40px;\r\n align-items: center;\r\n font-size: 18px;\r\n background-color: #555555;\r\n\r\n #file-picker {\r\n display: none;\r\n }\r\n\r\n .listLine {\r\n grid-column: 1;\r\n height: 40px;\r\n display: grid;\r\n grid-template-columns: 0px 1fr;\r\n\r\n .label {\r\n grid-column: 1;\r\n display: flex;\r\n align-items: center;\r\n font-size: 14px;\r\n }\r\n\r\n .options {\r\n grid-column: 2;\r\n\r\n display: flex;\r\n align-items: center;\r\n margin-left: 5px;\r\n\r\n select {\r\n width: 115px;\r\n }\r\n }\r\n }\r\n\r\n .button {\r\n color: #ffffff;\r\n width: 40px;\r\n height: 40px;\r\n transform-origin: 50% 50%;\r\n\r\n &:active {\r\n transform: scale(0.9);\r\n }\r\n\r\n &:hover {\r\n background: #3f3461;\r\n }\r\n\r\n &.selected {\r\n background: #9379e6;\r\n }\r\n\r\n img {\r\n height: 24px;\r\n width: 24px;\r\n }\r\n }\r\n\r\n #play-button {\r\n grid-column: 3;\r\n }\r\n\r\n #color-picker-button {\r\n grid-column: 4;\r\n display: grid;\r\n grid-template-columns: 100%;\r\n grid-template-rows: 100%;\r\n\r\n img {\r\n height: 24px;\r\n width: 24px;\r\n }\r\n #color-picker-image {\r\n padding-left: 7px;\r\n padding-bottom: 38px;\r\n }\r\n\r\n #color-picker {\r\n transform: scale(0);\r\n grid-column: 1;\r\n grid-row: 1;\r\n }\r\n\r\n #color-picker-label {\r\n width: 100%;\r\n background: transparent;\r\n cursor: pointer;\r\n }\r\n }\r\n\r\n #preview-new-window {\r\n grid-column: 5;\r\n }\r\n\r\n select {\r\n background-color: #a3a3a3;\r\n color: #333333;\r\n }\r\n }\r\n\r\n #preview-config-bar {\r\n grid-row: 4;\r\n grid-column: 1;\r\n display: grid;\r\n grid-template-columns: 40px 40px 40px 1fr 40px 40px;\r\n color: white;\r\n align-items: center;\r\n font-size: 18px;\r\n\r\n &.extended {\r\n grid-template-columns: 1fr;\r\n }\r\n\r\n .listLine {\r\n padding-left: 5px;\r\n height: 30px;\r\n display: grid;\r\n grid-template-columns: 1fr auto;\r\n\r\n .label {\r\n grid-column: 1;\r\n display: flex;\r\n align-items: center;\r\n font-size: 14px;\r\n }\r\n\r\n .options {\r\n grid-column: 2;\r\n\r\n display: flex;\r\n align-items: center;\r\n margin-right: 5px;\r\n\r\n select {\r\n width: 115px;\r\n }\r\n }\r\n }\r\n\r\n .button {\r\n width: 40px;\r\n grid-row: 1;\r\n height: 40px;\r\n transform-origin: 50% 50%;\r\n\r\n &:hover {\r\n background: #3f3461;\r\n }\r\n\r\n &.selected {\r\n background: #9379e6;\r\n }\r\n\r\n &:active {\r\n transform: scale(0.9);\r\n }\r\n\r\n img {\r\n height: auto;\r\n width: 100%;\r\n }\r\n\r\n &.back-face {\r\n grid-column: 6;\r\n }\r\n\r\n &.depth-pass {\r\n grid-column: 5 / 6;\r\n }\r\n\r\n &.hemispheric-light {\r\n grid-column: 3 / 4;\r\n }\r\n &.direction-light-1 {\r\n grid-column: 2 / 3;\r\n }\r\n &.direction-light-0 {\r\n grid-column: 1 / 2;\r\n }\r\n }\r\n }\r\n\r\n #preview {\r\n border-top: 1px solid rgb(85, 85, 85);\r\n grid-row: 3;\r\n grid-column: 1;\r\n width: 100%;\r\n display: grid;\r\n outline: 0 !important;\r\n padding: 0 !important;\r\n user-select: none;\r\n overflow: hidden;\r\n\r\n #preview-canvas {\r\n width: 100%;\r\n height: 100%;\r\n outline: 0 !important;\r\n padding: 0 !important;\r\n grid-row: 1;\r\n grid-column: 1;\r\n }\r\n\r\n .waitPanel {\r\n width: 100%;\r\n height: 100%;\r\n grid-row: 1;\r\n grid-column: 1;\r\n color: white;\r\n font-size: 18px;\r\n align-content: center;\r\n justify-content: center;\r\n background: rgba(20, 20, 20, 0.95);\r\n z-index: 10;\r\n display: grid;\r\n transition: opacity 250ms;\r\n\r\n &.hidden {\r\n opacity: 0;\r\n pointer-events: none;\r\n }\r\n }\r\n }\r\n\r\n .blocker {\r\n visibility: hidden;\r\n position: absolute;\r\n width: calc(100% - 40px);\r\n height: 100%;\r\n top: 0;\r\n left: 0;\r\n\r\n background: rgba(20, 20, 20, 0.95);\r\n font-family: \"acumin-pro\";\r\n color: white;\r\n font-size: 24px;\r\n\r\n display: grid;\r\n align-content: center;\r\n justify-content: center;\r\n\r\n user-select: none;\r\n\r\n padding: 20px;\r\n text-align: center;\r\n }\r\n\r\n #log-console {\r\n grid-row: 2;\r\n grid-column: 3;\r\n }\r\n\r\n .LightInformationBlock {\r\n width: 280px;\r\n }\r\n\r\n .InputBlock {\r\n width: 250px;\r\n }\r\n}\r\n"],"sourceRoot":""}]);
1558
+ }`, "",{"version":3,"sources":["webpack://./../../../tools/nodeEditor/dist/main.scss"],"names":[],"mappings":"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","sourcesContent":["#node-editor-graph-root {\r\n display: grid;\r\n grid-template-rows: calc(100% - 120px) 120px;\r\n height: 100%;\r\n width: 100%;\r\n background: #464646;\r\n font: 14px \"acumin-pro\";\r\n\r\n &.popup {\r\n grid-template-columns: 100%;\r\n overflow: hidden;\r\n }\r\n\r\n .wait-screen {\r\n display: grid;\r\n justify-content: center;\r\n align-content: center;\r\n height: 100%;\r\n width: 100%;\r\n background: #464646;\r\n opacity: 0.95;\r\n color: white;\r\n font: 24px \"acumin-pro\";\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n\r\n &.hidden {\r\n visibility: hidden;\r\n }\r\n }\r\n\r\n #nodeList {\r\n grid-row: 1 / span 2;\r\n grid-column: 1;\r\n }\r\n\r\n #leftGrab {\r\n grid-row: 1 / span 2;\r\n grid-column: 2;\r\n cursor: ew-resize;\r\n }\r\n\r\n #rightGrab {\r\n grid-row: 1 / span 2;\r\n grid-column: 4;\r\n cursor: ew-resize;\r\n }\r\n\r\n .diagram-container {\r\n grid-row: 1;\r\n grid-column: 3;\r\n background: #5f5b60;\r\n width: 100%;\r\n height: 100%;\r\n\r\n .diagram {\r\n display: none;\r\n width: 100%;\r\n height: 100%;\r\n }\r\n }\r\n\r\n .right-panel {\r\n grid-row: 1 / span 2;\r\n grid-column: 5;\r\n display: grid;\r\n grid-template-rows: 1fr 40px auto 40px;\r\n grid-template-columns: 100%;\r\n height: 100%;\r\n overflow-y: auto;\r\n }\r\n\r\n #propertyTab {\r\n grid-row: 1;\r\n grid-column: 1;\r\n }\r\n\r\n .button {\r\n display: grid;\r\n justify-content: center;\r\n align-content: center;\r\n height: auto;\r\n width: calc(100% / 7);\r\n cursor: pointer;\r\n\r\n &:hover {\r\n background: rgb(51, 122, 183);\r\n color: white;\r\n opacity: 0.8;\r\n }\r\n\r\n &.selected {\r\n background: rgb(51, 122, 183);\r\n color: white;\r\n }\r\n\r\n &.align {\r\n justify-content: stretch;\r\n text-align: center;\r\n }\r\n }\r\n\r\n #preview-mesh-bar {\r\n grid-row: 2;\r\n grid-column: 1;\r\n display: grid;\r\n grid-template-columns: auto 1fr 40px 40px 40px;\r\n align-items: center;\r\n font-size: 18px;\r\n background-color: #555555;\r\n\r\n #file-picker {\r\n display: none;\r\n }\r\n\r\n .listLine {\r\n grid-column: 1;\r\n height: 40px;\r\n display: grid;\r\n grid-template-columns: 0px 1fr;\r\n\r\n .label {\r\n grid-column: 1;\r\n display: flex;\r\n align-items: center;\r\n font-size: 14px;\r\n }\r\n\r\n .options {\r\n grid-column: 2;\r\n\r\n display: flex;\r\n align-items: center;\r\n margin-left: 5px;\r\n\r\n select {\r\n width: 115px;\r\n }\r\n }\r\n }\r\n\r\n .button {\r\n color: #ffffff;\r\n width: 40px;\r\n height: 40px;\r\n transform-origin: 50% 50%;\r\n\r\n &:active {\r\n transform: scale(0.9);\r\n }\r\n\r\n &:hover {\r\n background: #3f3461;\r\n }\r\n\r\n &.selected {\r\n background: #9379e6;\r\n }\r\n\r\n img {\r\n height: 24px;\r\n width: 24px;\r\n }\r\n }\r\n\r\n #play-button {\r\n grid-column: 3;\r\n }\r\n\r\n #color-picker-button {\r\n grid-column: 4;\r\n display: grid;\r\n grid-template-columns: 100%;\r\n grid-template-rows: 100%;\r\n\r\n img {\r\n height: 24px;\r\n width: 24px;\r\n }\r\n #color-picker-image {\r\n padding-left: 7px;\r\n padding-bottom: 38px;\r\n }\r\n\r\n #color-picker {\r\n transform: scale(0);\r\n grid-column: 1;\r\n grid-row: 1;\r\n }\r\n\r\n #color-picker-label {\r\n width: 100%;\r\n background: transparent;\r\n cursor: pointer;\r\n }\r\n }\r\n\r\n #preview-new-window {\r\n grid-column: 5;\r\n }\r\n\r\n select {\r\n background-color: #a3a3a3;\r\n color: #333333;\r\n }\r\n }\r\n\r\n #preview-config-bar {\r\n grid-row: 4;\r\n grid-column: 1;\r\n display: grid;\r\n grid-template-columns: 40px 40px 40px 1fr 40px 40px;\r\n color: white;\r\n align-items: center;\r\n font-size: 18px;\r\n\r\n &.extended {\r\n grid-template-columns: 1fr;\r\n }\r\n\r\n .listLine {\r\n padding-left: 5px;\r\n height: 30px;\r\n display: grid;\r\n grid-template-columns: 1fr auto;\r\n\r\n .label {\r\n grid-column: 1;\r\n display: flex;\r\n align-items: center;\r\n font-size: 14px;\r\n }\r\n\r\n .options {\r\n grid-column: 2;\r\n\r\n display: flex;\r\n align-items: center;\r\n margin-right: 5px;\r\n\r\n select {\r\n width: 115px;\r\n }\r\n }\r\n }\r\n\r\n .button {\r\n width: 40px;\r\n grid-row: 1;\r\n height: 40px;\r\n transform-origin: 50% 50%;\r\n\r\n &:hover {\r\n background: #3f3461;\r\n }\r\n\r\n &.selected {\r\n background: #9379e6;\r\n }\r\n\r\n &:active {\r\n transform: scale(0.9);\r\n }\r\n\r\n img {\r\n height: auto;\r\n width: 100%;\r\n }\r\n\r\n &.back-face {\r\n grid-column: 6;\r\n }\r\n\r\n &.depth-pass {\r\n grid-column: 5 / 6;\r\n }\r\n\r\n &.hemispheric-light {\r\n grid-column: 3 / 4;\r\n }\r\n &.direction-light-1 {\r\n grid-column: 2 / 3;\r\n }\r\n &.direction-light-0 {\r\n grid-column: 1 / 2;\r\n }\r\n }\r\n }\r\n\r\n #preview {\r\n border-top: 1px solid rgb(85, 85, 85);\r\n grid-row: 3;\r\n grid-column: 1;\r\n width: 100%;\r\n display: grid;\r\n grid-template-columns: 100%;\r\n grid-template-rows: 100%;\r\n outline: 0 !important;\r\n padding: 0 !important;\r\n user-select: none;\r\n overflow: hidden;\r\n\r\n #preview-canvas {\r\n width: 100%;\r\n height: 100%;\r\n outline: 0 !important;\r\n padding: 0 !important;\r\n grid-row: 1;\r\n grid-column: 1;\r\n }\r\n\r\n .waitPanel {\r\n width: 100%;\r\n height: 100%;\r\n grid-row: 1;\r\n grid-column: 1;\r\n color: white;\r\n font-size: 18px;\r\n align-content: center;\r\n justify-content: center;\r\n background: rgba(20, 20, 20, 0.95);\r\n z-index: 10;\r\n display: grid;\r\n transition: opacity 250ms;\r\n\r\n &.hidden {\r\n opacity: 0;\r\n pointer-events: none;\r\n }\r\n }\r\n }\r\n\r\n .blocker {\r\n visibility: hidden;\r\n position: absolute;\r\n width: calc(100% - 40px);\r\n height: 100%;\r\n top: 0;\r\n left: 0;\r\n\r\n background: rgba(20, 20, 20, 0.95);\r\n font-family: \"acumin-pro\";\r\n color: white;\r\n font-size: 24px;\r\n\r\n display: grid;\r\n align-content: center;\r\n justify-content: center;\r\n\r\n user-select: none;\r\n\r\n padding: 20px;\r\n text-align: center;\r\n }\r\n\r\n #log-console {\r\n grid-row: 2;\r\n grid-column: 3;\r\n }\r\n\r\n .LightInformationBlock {\r\n width: 280px;\r\n }\r\n\r\n .InputBlock {\r\n width: 250px;\r\n }\r\n}\r\n"],"sourceRoot":""}]);
1557
1559
  // Exports
1558
1560
  ___CSS_LOADER_EXPORT___.locals = {};
1559
1561
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
@@ -2174,6 +2176,15 @@ ___CSS_LOADER_EXPORT___.push([module.id, `.\\---------dev-sharedUiComponents-dis
2174
2176
  box-shadow: 7px 6px 2px rgba(0, 0, 0, 0.2);
2175
2177
  }
2176
2178
 
2179
+ .\\---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__highlighted {
2180
+ animation: \\---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__glow 0.5s infinite alternate;
2181
+ }
2182
+ @keyframes \\---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__glow {
2183
+ to {
2184
+ border-color: white;
2185
+ }
2186
+ }
2187
+
2177
2188
  .\\---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__header-container {
2178
2189
  grid-row: 1;
2179
2190
  grid-column: 1;
@@ -2239,12 +2250,28 @@ ___CSS_LOADER_EXPORT___.push([module.id, `.\\---------dev-sharedUiComponents-dis
2239
2250
  pointer-events: none;
2240
2251
  }
2241
2252
 
2253
+ .\\---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__executionTime {
2254
+ position: absolute;
2255
+ bottom: 1px;
2256
+ width: 195px;
2257
+ height: 20px;
2258
+ overflow: hidden;
2259
+ font-size: 11px;
2260
+ opacity: 0.5;
2261
+ display: grid;
2262
+ align-items: flex-end;
2263
+ justify-content: end;
2264
+ pointer-events: none;
2265
+ }
2266
+
2242
2267
  .\\---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__selected {
2243
2268
  border-color: white !important;
2244
- }`, "",{"version":3,"sources":["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/graphNode.modules.scss"],"names":[],"mappings":"AAAA;EACI,UAAA;EACA,YAAA;EACA,kBAAA;EACA,OAAA;EACA,MAAA;EACA,gBAAA;EACA,uBAAA;EACA,mBAAA;EACA,aAAA;EACA,6BAAA;EACA,2BAAA;EACA,YAAA;EACA,0CAAA;AACJ;;AAEA;EACI,WAAA;EACA,cAAA;EACA,kBAAA;EACA,uBAAA;EACA,4BAAA;EACA,2BAAA;EACA,iBAAA;EACA,YAAA;EACA,0CAAA;EACA,wBAAA;EACA,aAAA;EACA,+BAAA;EACA,wBAAA;AACJ;;AAKA;EACI,WAAA;EACA,kBAAA;EACA,iBAAA;EACA,oBAAA;EACA,WARO;EASP,aAAA;EACA,gBATS;AAOb;;AAKA;EACI,eAAA;EACA,kBAAA;EACA,mBAAA;EACA,uBAAA;EACA,gBAAA;AAFJ;;AAKA;EACI,6BAAA;AAFJ;;AAKA;EACI,WAAA;EACA,cAAA;EAEA,aAAA;EACA,8BAAA;EACA,mBAAA;AAHJ;;AAMA;EACI,gBAAA;EACA,WAAA;EACA,cAAA;AAHJ;;AAMA;EACI,kBAAA;EACA,UAAA;EACA,YAAA;EACA,YAAA;EACA,gBAAA;EACA,kBAAA;EACA,YAAA;EACA,aAAA;EACA,qBAAA;EACA,oBAAA;AAHJ;;AAMA;EACI,8BAAA;AAHJ","sourcesContent":[".visual {\r\n z-index: 4;\r\n width: 200px;\r\n position: absolute;\r\n left: 0;\r\n top: 0;\r\n background: gray;\r\n border: 4px solid black;\r\n border-radius: 12px;\r\n display: grid;\r\n grid-template-rows: 30px auto;\r\n grid-template-columns: 100%;\r\n color: white;\r\n box-shadow: 7px 6px 2px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.header-container {\r\n grid-row: 1;\r\n grid-column: 1;\r\n position: relative;\r\n border: 4px solid black;\r\n border-top-right-radius: 7px;\r\n border-top-left-radius: 7px;\r\n background: black;\r\n color: white;\r\n transform: scaleX(1.01) translateY(-0.5px);\r\n transform-origin: center;\r\n display: grid;\r\n grid-template-columns: 1fr auto;\r\n grid-template-rows: 100%;\r\n}\r\n\r\n$iconSize: 20px;\r\n$iconMargin: 6px;\r\n\r\n.headerIcon {\r\n z-index: 10;\r\n align-self: center;\r\n user-select: none;\r\n pointer-events: none;\r\n width: $iconSize;\r\n display: grid;\r\n margin-left: $iconMargin;\r\n}\r\n\r\n.header {\r\n font-size: 16px;\r\n text-align: center;\r\n white-space: nowrap;\r\n text-overflow: ellipsis;\r\n overflow: hidden;\r\n}\r\n\r\n.headerWithIcon {\r\n margin-left: calc(#{$iconSize} + #{$iconMargin});\r\n}\r\n\r\n.connections {\r\n grid-row: 2;\r\n grid-column: 1;\r\n\r\n display: grid;\r\n grid-template-columns: 50% 50%;\r\n transform: scale(1);\r\n}\r\n\r\n.content {\r\n min-height: 20px;\r\n grid-row: 3;\r\n grid-column: 1;\r\n}\r\n\r\n.comments {\r\n position: absolute;\r\n top: -50px;\r\n width: 200px;\r\n height: 45px;\r\n overflow: hidden;\r\n font-style: italic;\r\n opacity: 0.8;\r\n display: grid;\r\n align-items: flex-end;\r\n pointer-events: none;\r\n}\r\n\r\n.selected {\r\n border-color: white !important;\r\n}\r\n"],"sourceRoot":""}]);
2269
+ }`, "",{"version":3,"sources":["webpack://./../../../dev/sharedUiComponents/dist/nodeGraphSystem/graphNode.modules.scss"],"names":[],"mappings":"AAAA;EACI,UAAA;EACA,YAAA;EACA,kBAAA;EACA,OAAA;EACA,MAAA;EACA,gBAAA;EACA,uBAAA;EACA,mBAAA;EACA,aAAA;EACA,6BAAA;EACA,2BAAA;EACA,YAAA;EACA,0CAAA;AACJ;;AAEA;EAMI,gHAAA;AAJJ;AADI;EACI;IACI,mBAAA;EAGV;AACF;;AAEA;EACI,WAAA;EACA,cAAA;EACA,kBAAA;EACA,uBAAA;EACA,4BAAA;EACA,2BAAA;EACA,iBAAA;EACA,YAAA;EACA,0CAAA;EACA,wBAAA;EACA,aAAA;EACA,+BAAA;EACA,wBAAA;AACJ;;AAKA;EACI,WAAA;EACA,kBAAA;EACA,iBAAA;EACA,oBAAA;EACA,WARO;EASP,aAAA;EACA,gBATS;AAOb;;AAKA;EACI,eAAA;EACA,kBAAA;EACA,mBAAA;EACA,uBAAA;EACA,gBAAA;AAFJ;;AAKA;EACI,6BAAA;AAFJ;;AAKA;EACI,WAAA;EACA,cAAA;EAEA,aAAA;EACA,8BAAA;EACA,mBAAA;AAHJ;;AAMA;EACI,gBAAA;EACA,WAAA;EACA,cAAA;AAHJ;;AAMA;EACI,kBAAA;EACA,UAAA;EACA,YAAA;EACA,YAAA;EACA,gBAAA;EACA,kBAAA;EACA,YAAA;EACA,aAAA;EACA,qBAAA;EACA,oBAAA;AAHJ;;AAMA;EACI,kBAAA;EACA,WAAA;EACA,YAAA;EACA,YAAA;EACA,gBAAA;EACA,eAAA;EACA,YAAA;EACA,aAAA;EACA,qBAAA;EACA,oBAAA;EACA,oBAAA;AAHJ;;AAMA;EACI,8BAAA;AAHJ","sourcesContent":[".visual {\r\n z-index: 4;\r\n width: 200px;\r\n position: absolute;\r\n left: 0;\r\n top: 0;\r\n background: gray;\r\n border: 4px solid black;\r\n border-radius: 12px;\r\n display: grid;\r\n grid-template-rows: 30px auto;\r\n grid-template-columns: 100%;\r\n color: white;\r\n box-shadow: 7px 6px 2px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.highlighted {\r\n @keyframes glow {\r\n to {\r\n border-color: white;\r\n }\r\n }\r\n animation: glow 0.5s infinite alternate;\r\n}\r\n\r\n.header-container {\r\n grid-row: 1;\r\n grid-column: 1;\r\n position: relative;\r\n border: 4px solid black;\r\n border-top-right-radius: 7px;\r\n border-top-left-radius: 7px;\r\n background: black;\r\n color: white;\r\n transform: scaleX(1.01) translateY(-0.5px);\r\n transform-origin: center;\r\n display: grid;\r\n grid-template-columns: 1fr auto;\r\n grid-template-rows: 100%;\r\n}\r\n\r\n$iconSize: 20px;\r\n$iconMargin: 6px;\r\n\r\n.headerIcon {\r\n z-index: 10;\r\n align-self: center;\r\n user-select: none;\r\n pointer-events: none;\r\n width: $iconSize;\r\n display: grid;\r\n margin-left: $iconMargin;\r\n}\r\n\r\n.header {\r\n font-size: 16px;\r\n text-align: center;\r\n white-space: nowrap;\r\n text-overflow: ellipsis;\r\n overflow: hidden;\r\n}\r\n\r\n.headerWithIcon {\r\n margin-left: calc(#{$iconSize} + #{$iconMargin});\r\n}\r\n\r\n.connections {\r\n grid-row: 2;\r\n grid-column: 1;\r\n\r\n display: grid;\r\n grid-template-columns: 50% 50%;\r\n transform: scale(1);\r\n}\r\n\r\n.content {\r\n min-height: 20px;\r\n grid-row: 3;\r\n grid-column: 1;\r\n}\r\n\r\n.comments {\r\n position: absolute;\r\n top: -50px;\r\n width: 200px;\r\n height: 45px;\r\n overflow: hidden;\r\n font-style: italic;\r\n opacity: 0.8;\r\n display: grid;\r\n align-items: flex-end;\r\n pointer-events: none;\r\n}\r\n\r\n.executionTime {\r\n position: absolute;\r\n bottom: 1px;\r\n width: 195px;\r\n height: 20px;\r\n overflow: hidden;\r\n font-size: 11px;\r\n opacity: 0.5;\r\n display: grid;\r\n align-items: flex-end;\r\n justify-content: end;\r\n pointer-events: none;\r\n}\r\n\r\n.selected {\r\n border-color: white !important;\r\n}\r\n"],"sourceRoot":""}]);
2245
2270
  // Exports
2246
2271
  ___CSS_LOADER_EXPORT___.locals = {
2247
2272
  "visual": `---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__visual`,
2273
+ "highlighted": `---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__highlighted`,
2274
+ "glow": `---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__glow`,
2248
2275
  "header-container": `---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__header-container`,
2249
2276
  "headerIcon": `---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__headerIcon`,
2250
2277
  "header": `---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__header`,
@@ -2252,6 +2279,7 @@ ___CSS_LOADER_EXPORT___.locals = {
2252
2279
  "connections": `---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__connections`,
2253
2280
  "content": `---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__content`,
2254
2281
  "comments": `---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__comments`,
2282
+ "executionTime": `---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__executionTime`,
2255
2283
  "selected": `---------dev-sharedUiComponents-dist-nodeGraphSystem-graphNode-modules__selected`
2256
2284
  };
2257
2285
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
@@ -49860,6 +49888,9 @@ class HexColor extends react__WEBPACK_IMPORTED_MODULE_1__.Component {
49860
49888
  if (this.props.expectedLength === 8 && valueString.length === 6) {
49861
49889
  valueString = valueString + "FF";
49862
49890
  }
49891
+ else if (this.props.expectedLength === 6 && valueString.length === 8) {
49892
+ valueString = valueString.substring(0, 6);
49893
+ }
49863
49894
  else {
49864
49895
  return;
49865
49896
  }
@@ -50305,22 +50336,22 @@ class FloatLineComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component {
50305
50336
  super(props);
50306
50337
  this._localChange = false;
50307
50338
  const currentValue = this.props.target[this.props.propertyName];
50308
- this.state = { value: this.getValueString(currentValue), dragging: false };
50339
+ this.state = { value: this.getValueString(currentValue, this.props), dragging: false };
50309
50340
  this._store = currentValue;
50310
50341
  }
50311
50342
  componentWillUnmount() {
50312
50343
  this.unlock();
50313
50344
  }
50314
- getValueString(value) {
50345
+ getValueString(value, props) {
50315
50346
  if (value) {
50316
50347
  if (value === _targetsProxy__WEBPACK_IMPORTED_MODULE_4__.conflictingValuesPlaceholder) {
50317
50348
  return _targetsProxy__WEBPACK_IMPORTED_MODULE_4__.conflictingValuesPlaceholder;
50318
50349
  }
50319
- else if (this.props.isInteger) {
50350
+ else if (props.isInteger) {
50320
50351
  return value.toFixed(0);
50321
50352
  }
50322
50353
  else {
50323
- return value.toFixed(this.props.digits || 4);
50354
+ return value.toFixed(props.digits || 4);
50324
50355
  }
50325
50356
  }
50326
50357
  return "0";
@@ -50331,12 +50362,12 @@ class FloatLineComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component {
50331
50362
  return true;
50332
50363
  }
50333
50364
  const newValue = nextProps.target[nextProps.propertyName];
50334
- const newValueString = this.getValueString(newValue);
50365
+ const newValueString = this.getValueString(newValue, nextProps);
50335
50366
  if (newValueString !== nextState.value) {
50336
50367
  nextState.value = newValueString;
50337
50368
  return true;
50338
50369
  }
50339
- if (nextState.dragging != this.state.dragging || nextProps.unit !== this.props.unit) {
50370
+ if (nextState.dragging != this.state.dragging || nextProps.unit !== this.props.unit || nextProps.isInteger !== this.props.isInteger) {
50340
50371
  return true;
50341
50372
  }
50342
50373
  return false;
@@ -51359,7 +51390,7 @@ class Vector3LineComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component
51359
51390
  return this.props.target[this.props.propertyName];
51360
51391
  }
51361
51392
  shouldComponentUpdate(nextProps, nextState) {
51362
- const nextPropsValue = this.getCurrentValue();
51393
+ const nextPropsValue = nextProps.target[nextProps.propertyName];
51363
51394
  if (!nextPropsValue.equals(nextState.value) || this._localChange) {
51364
51395
  nextState.value = nextPropsValue.clone();
51365
51396
  this._localChange = false;
@@ -51451,7 +51482,7 @@ class Vector4LineComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component
51451
51482
  return this.props.value || this.props.target[this.props.propertyName];
51452
51483
  }
51453
51484
  shouldComponentUpdate(nextProps, nextState) {
51454
- const nextPropsValue = this.getCurrentValue();
51485
+ const nextPropsValue = nextProps.value || nextProps.target[nextProps.propertyName];
51455
51486
  if (!nextPropsValue.equals(nextState.value) || this._localChange) {
51456
51487
  nextState.value = nextPropsValue.clone();
51457
51488
  this._localChange = false;
@@ -51946,7 +51977,7 @@ class GraphCanvasComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component
51946
51977
  // Reconnect
51947
51978
  this.automaticRewire(inputs, availableNodeInputs, true);
51948
51979
  this.automaticRewire(availableNodeOutputs, outputs, true);
51949
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(false);
51980
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
51950
51981
  }
51951
51982
  smartAddOverNode(node, source) {
51952
51983
  // Connect the ports
@@ -51957,7 +51988,7 @@ class GraphCanvasComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component
51957
51988
  inputs.push(...source.content.outputs);
51958
51989
  // Reconnect
51959
51990
  this.automaticRewire(inputs, availableNodeInputs, true);
51960
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(false);
51991
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
51961
51992
  }
51962
51993
  deleteSelection(onRemove, autoReconnect = false) {
51963
51994
  // Delete
@@ -52005,7 +52036,7 @@ class GraphCanvasComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component
52005
52036
  // Reconnect if required
52006
52037
  this.automaticRewire(inputs, outputs);
52007
52038
  this.props.stateManager.onSelectionChangedObservable.notifyObservers(null);
52008
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(false);
52039
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
52009
52040
  }
52010
52041
  handleKeyDown(evt, onRemove, mouseLocationX, mouseLocationY, dataGenerator, rootElement) {
52011
52042
  if (this.stateManager.modalIsDisplayed) {
@@ -52769,7 +52800,9 @@ class GraphCanvasComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component
52769
52800
  link.onDisposedObservable.notifyObservers(link);
52770
52801
  link.onDisposedObservable.clear();
52771
52802
  });
52772
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
52803
+ if (!nodeB.content.isConnectedToOutput || nodeB.content.isConnectedToOutput()) {
52804
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
52805
+ }
52773
52806
  }
52774
52807
  connectNodes(nodeA, pointA, nodeB, pointB) {
52775
52808
  pointA.connectTo(pointB);
@@ -52778,7 +52811,7 @@ class GraphCanvasComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component
52778
52811
  // We also need to check if we want to display the promotion warning
52779
52812
  const visitedNodes = new Set([nodeA]);
52780
52813
  const visitedLinks = new Set([nodeB.links[nodeB.links.length - 1]]);
52781
- (0,_tools__WEBPACK_IMPORTED_MODULE_13__.RefreshNode)(nodeB, visitedNodes, visitedLinks);
52814
+ (0,_tools__WEBPACK_IMPORTED_MODULE_13__.RefreshNode)(nodeB, visitedNodes, visitedLinks, this);
52782
52815
  }
52783
52816
  drop(newNode, targetX, targetY, offsetX, offsetY) {
52784
52817
  let x = targetX - this.x - offsetX * this.zoom;
@@ -54364,13 +54397,28 @@ class GraphNode {
54364
54397
  const { selection: node } = options || {};
54365
54398
  if (node === this) {
54366
54399
  this._visual.classList.add(_graphNode_modules_scss__WEBPACK_IMPORTED_MODULE_4__["default"]["selected"]);
54400
+ if (this._displayManager && this._displayManager.onSelectionChanged) {
54401
+ this._displayManager.onSelectionChanged(this.content, node.content, this._stateManager);
54402
+ }
54367
54403
  }
54368
54404
  else {
54369
- setTimeout(() => {
54370
- if (this._ownerCanvas.selectedNodes.indexOf(this) === -1) {
54371
- this._visual.classList.remove(_graphNode_modules_scss__WEBPACK_IMPORTED_MODULE_4__["default"]["selected"]);
54405
+ if (this._ownerCanvas.selectedNodes.indexOf(this) === -1) {
54406
+ this._visual.classList.remove(_graphNode_modules_scss__WEBPACK_IMPORTED_MODULE_4__["default"]["selected"]);
54407
+ if (this._displayManager && this._displayManager.onSelectionChanged) {
54408
+ this._displayManager.onSelectionChanged(this.content, node && node.content ? node.content : null, this._stateManager);
54372
54409
  }
54373
- });
54410
+ }
54411
+ }
54412
+ });
54413
+ this._onHighlightNodeObserver = this._stateManager.onHighlightNodeObservable.add((data) => {
54414
+ if (data.data !== this.content.data) {
54415
+ return;
54416
+ }
54417
+ if (data.active) {
54418
+ this._visual.classList.add(_graphNode_modules_scss__WEBPACK_IMPORTED_MODULE_4__["default"]["highlighted"]);
54419
+ }
54420
+ else {
54421
+ this._visual.classList.remove(_graphNode_modules_scss__WEBPACK_IMPORTED_MODULE_4__["default"]["highlighted"]);
54374
54422
  }
54375
54423
  });
54376
54424
  this._onUpdateRequiredObserver = this._stateManager.onUpdateRequiredObservable.add((data) => {
@@ -54502,6 +54550,7 @@ class GraphNode {
54502
54550
  }
54503
54551
  this._comments.innerHTML = this.content.comments || "";
54504
54552
  this._comments.title = this.content.comments || "";
54553
+ this._executionTime.innerHTML = this.content.executionTime ? `${this.content.executionTime.toFixed(2)} ms` : "";
54505
54554
  this.content.prepareHeaderIcon(this._headerIcon, this._headerIconImg);
54506
54555
  if (this._headerIconImg.src) {
54507
54556
  this._header.classList.add(_graphNode_modules_scss__WEBPACK_IMPORTED_MODULE_4__["default"]["headerWithIcon"]);
@@ -54560,7 +54609,7 @@ class GraphNode {
54560
54609
  // Reconnect
54561
54610
  this._ownerCanvas.automaticRewire(inputs, availableNodeInputs, true);
54562
54611
  this._ownerCanvas.automaticRewire(availableNodeOutputs, outputs, true);
54563
- this._stateManager.onRebuildRequiredObservable.notifyObservers(false);
54612
+ this._stateManager.onRebuildRequiredObservable.notifyObservers();
54564
54613
  }
54565
54614
  _onMove(evt) {
54566
54615
  this._ownerCanvas._targetLinkCandidate = null;
@@ -54655,6 +54704,10 @@ class GraphNode {
54655
54704
  this._comments = root.ownerDocument.createElement("div");
54656
54705
  this._comments.classList.add(_graphNode_modules_scss__WEBPACK_IMPORTED_MODULE_4__["default"].comments);
54657
54706
  this._visual.appendChild(this._comments);
54707
+ // Comments
54708
+ this._executionTime = root.ownerDocument.createElement("div");
54709
+ this._executionTime.classList.add(_graphNode_modules_scss__WEBPACK_IMPORTED_MODULE_4__["default"].executionTime);
54710
+ this._visual.appendChild(this._executionTime);
54658
54711
  // Connections
54659
54712
  for (const input of this.content.inputs) {
54660
54713
  this._inputPorts.push(_nodePort__WEBPACK_IMPORTED_MODULE_1__.NodePort.CreatePortElement(input, this, this._inputsContainer, this._displayManager, this._stateManager));
@@ -54663,8 +54716,14 @@ class GraphNode {
54663
54716
  this._outputPorts.push(_nodePort__WEBPACK_IMPORTED_MODULE_1__.NodePort.CreatePortElement(output, this, this._outputsContainer, this._displayManager, this._stateManager));
54664
54717
  }
54665
54718
  this.refresh();
54719
+ this.content.refreshCallback = () => {
54720
+ this.refresh();
54721
+ };
54666
54722
  }
54667
54723
  dispose() {
54724
+ if (this._displayManager && this._displayManager.onDispose) {
54725
+ this._displayManager.onDispose(this.content, this._stateManager);
54726
+ }
54668
54727
  // notify frame observers that this node is being deleted
54669
54728
  this._stateManager.onGraphNodeRemovalObservable.notifyObservers(this);
54670
54729
  if (this._onSelectionChangedObserver) {
@@ -54673,6 +54732,9 @@ class GraphNode {
54673
54732
  if (this._onUpdateRequiredObserver) {
54674
54733
  this._stateManager.onUpdateRequiredObservable.remove(this._onUpdateRequiredObserver);
54675
54734
  }
54735
+ if (this._onHighlightNodeObserver) {
54736
+ this._stateManager.onHighlightNodeObservable.remove(this._onHighlightNodeObserver);
54737
+ }
54676
54738
  if (this._onSelectionBoxMovedObserver) {
54677
54739
  this._stateManager.onSelectionBoxMoved.remove(this._onSelectionBoxMovedObserver);
54678
54740
  }
@@ -54906,7 +54968,7 @@ class NodeLink {
54906
54968
  // Connect to Elbow block
54907
54969
  this._graphCanvas.connectNodes(nodeA, pointA, newNode, newNode.getPortDataForPortDataContent(newElbowBlock.input));
54908
54970
  this._graphCanvas.connectNodes(newNode, newNode.getPortDataForPortDataContent(newElbowBlock.output), nodeB, pointB);
54909
- stateManager.onRebuildRequiredObservable.notifyObservers(true);
54971
+ stateManager.onRebuildRequiredObservable.notifyObservers();
54910
54972
  });
54911
54973
  stateManager.onNewBlockRequiredObservable.notifyObservers({
54912
54974
  type: "ElbowBlock",
@@ -54931,7 +54993,7 @@ class NodeLink {
54931
54993
  this._nodeB.links.splice(this._nodeB.links.indexOf(this), 1);
54932
54994
  this._graphCanvas.links.splice(this._graphCanvas.links.indexOf(this), 1);
54933
54995
  this._portA.portData.disconnectFrom(this._portB.portData);
54934
- (0,_tools__WEBPACK_IMPORTED_MODULE_1__.RefreshNode)(this._nodeB);
54996
+ (0,_tools__WEBPACK_IMPORTED_MODULE_1__.RefreshNode)(this._nodeB, undefined, undefined, this._graphCanvas);
54935
54997
  }
54936
54998
  if (notify) {
54937
54999
  this.onDisposedObservable.notifyObservers(this);
@@ -55246,6 +55308,7 @@ class StateManager {
55246
55308
  this.onExposePortOnFrameObservable = new core_Misc_observable__WEBPACK_IMPORTED_MODULE_0__.Observable();
55247
55309
  this.onGridSizeChanged = new core_Misc_observable__WEBPACK_IMPORTED_MODULE_0__.Observable();
55248
55310
  this.onNewBlockRequiredObservable = new core_Misc_observable__WEBPACK_IMPORTED_MODULE_0__.Observable();
55311
+ this.onHighlightNodeObservable = new core_Misc_observable__WEBPACK_IMPORTED_MODULE_0__.Observable();
55249
55312
  }
55250
55313
  }
55251
55314
 
@@ -55272,7 +55335,7 @@ const IsFramePortData = (variableToCheck) => {
55272
55335
  return false;
55273
55336
  }
55274
55337
  };
55275
- const RefreshNode = (node, visitedNodes, visitedLinks) => {
55338
+ const RefreshNode = (node, visitedNodes, visitedLinks, canvas) => {
55276
55339
  node.refresh();
55277
55340
  const links = node.links;
55278
55341
  if (visitedNodes) {
@@ -55289,6 +55352,19 @@ const RefreshNode = (node, visitedNodes, visitedLinks) => {
55289
55352
  }
55290
55353
  });
55291
55354
  }
55355
+ // Invisible endpoints (for teleport nodes)
55356
+ const invisibleEndpoints = node.content.invisibleEndpoints;
55357
+ if (invisibleEndpoints && invisibleEndpoints.length) {
55358
+ for (const endpoint of invisibleEndpoints) {
55359
+ const graphNode = canvas?.findNodeFromData(endpoint);
55360
+ if (graphNode) {
55361
+ if (visitedNodes) {
55362
+ visitedNodes.add(graphNode);
55363
+ }
55364
+ RefreshNode(graphNode, visitedNodes, visitedLinks);
55365
+ }
55366
+ }
55367
+ }
55292
55368
  if (!visitedLinks) {
55293
55369
  return;
55294
55370
  }
@@ -55461,7 +55537,7 @@ __webpack_require__.r(__webpack_exports__);
55461
55537
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
55462
55538
  /* harmony export */ BlockTools: () => (/* binding */ BlockTools)
55463
55539
  /* harmony export */ });
55464
- /* harmony import */ var core_Materials_Node_Blocks_Fragment_discardBlock__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core/Materials/Node/Blocks/curveBlock */ "core/Misc/dataStorage");
55540
+ /* harmony import */ var core_Materials_Node_Blocks_Fragment_discardBlock__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core/Materials/Node/Blocks/Teleport/teleportOutBlock */ "core/Misc/dataStorage");
55465
55541
  /* harmony import */ var core_Materials_Node_Blocks_Fragment_discardBlock__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_Materials_Node_Blocks_Fragment_discardBlock__WEBPACK_IMPORTED_MODULE_0__);
55466
55542
 
55467
55543
 
@@ -55557,12 +55633,18 @@ __webpack_require__.r(__webpack_exports__);
55557
55633
 
55558
55634
 
55559
55635
 
55636
+
55637
+
55560
55638
 
55561
55639
 
55562
55640
 
55563
55641
  class BlockTools {
55564
55642
  static GetBlockFromString(data, scene, nodeMaterial) {
55565
55643
  switch (data) {
55644
+ case "TeleportInBlock":
55645
+ return new core_Materials_Node_Blocks_Fragment_discardBlock__WEBPACK_IMPORTED_MODULE_0__.NodeMaterialTeleportInBlock("Teleport In");
55646
+ case "TeleportOutBlock":
55647
+ return new core_Materials_Node_Blocks_Fragment_discardBlock__WEBPACK_IMPORTED_MODULE_0__.NodeMaterialTeleportOutBlock("Teleport Out");
55566
55648
  case "HeightToNormalBlock":
55567
55649
  return new core_Materials_Node_Blocks_Fragment_discardBlock__WEBPACK_IMPORTED_MODULE_0__.HeightToNormalBlock("HeightToNormal");
55568
55650
  case "ElbowBlock":
@@ -56172,9 +56254,7 @@ __webpack_require__.r(__webpack_exports__);
56172
56254
  /* harmony export */ });
56173
56255
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-runtime */ "../../../../node_modules/react/jsx-runtime.js");
56174
56256
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "../../../../node_modules/react/index.js");
56175
- /* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-dom */ "../../../../node_modules/react-dom/index.js");
56176
- /* harmony import */ var _log_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./log.scss */ "../../../tools/nodeEditor/dist/components/log/log.scss");
56177
-
56257
+ /* harmony import */ var _log_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./log.scss */ "../../../tools/nodeEditor/dist/components/log/log.scss");
56178
56258
 
56179
56259
 
56180
56260
 
@@ -56189,6 +56269,7 @@ class LogComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component {
56189
56269
  constructor(props) {
56190
56270
  super(props);
56191
56271
  this.state = { logs: [] };
56272
+ this._logConsoleRef = react__WEBPACK_IMPORTED_MODULE_1__.createRef();
56192
56273
  }
56193
56274
  componentDidMount() {
56194
56275
  this.props.globalState.onLogRequiredObservable.add((log) => {
@@ -56198,14 +56279,13 @@ class LogComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component {
56198
56279
  });
56199
56280
  }
56200
56281
  componentDidUpdate() {
56201
- const logConsole = react_dom__WEBPACK_IMPORTED_MODULE_2__.findDOMNode(this.refs["nme-log-console"]);
56202
- if (!logConsole) {
56282
+ if (!this._logConsoleRef.current) {
56203
56283
  return;
56204
56284
  }
56205
- logConsole.scrollTop = logConsole.scrollHeight;
56285
+ this._logConsoleRef.current.scrollTop = this._logConsoleRef.current.scrollHeight;
56206
56286
  }
56207
56287
  render() {
56208
- return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { id: "nme-log-console", ref: "log-console", children: this.state.logs.map((l, i) => {
56288
+ return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { id: "nme-log-console", ref: this._logConsoleRef, children: this.state.logs.map((l, i) => {
56209
56289
  return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { className: "log" + (l.isError ? " error" : ""), children: l.time.getHours() + ":" + l.time.getMinutes() + ":" + l.time.getSeconds() + ": " + l.message }, i));
56210
56290
  }) }));
56211
56291
  }
@@ -56443,7 +56523,7 @@ class NodeListComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component {
56443
56523
  "MatrixDeterminantBlock",
56444
56524
  "MatrixTransposeBlock",
56445
56525
  ],
56446
- Misc: ["ElbowBlock", "ShadowMapBlock"],
56526
+ Misc: ["ElbowBlock", "ShadowMapBlock", "TeleportInBlock", "TeleportOutBlock"],
56447
56527
  Mesh: [
56448
56528
  "InstancesBlock",
56449
56529
  "PositionBlock",
@@ -56720,6 +56800,8 @@ NodeListComponent._Tooltips = {
56720
56800
  ScreenSpaceBlock: "Convert a Vector3 or a Vector4 into screen space",
56721
56801
  TwirlBlock: "Apply a twirl rotation",
56722
56802
  ElbowBlock: "Passthrough block mostly used to organize your graph",
56803
+ TeleportInBlock: "Passthrough block mostly used to organize your graph (but without visible lines). It works like a teleportation point for the graph.",
56804
+ TeleportOutBlock: "Endpoint for a TeleportInBlock.",
56723
56805
  ClipPlanesBlock: "A node that add clip planes support",
56724
56806
  HeightToNormalBlock: "Convert a height map into a normal map",
56725
56807
  FragDepthBlock: "A final node that sets the fragment depth",
@@ -57598,7 +57680,7 @@ class InputsPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Comp
57598
57680
  processInputBlockUpdate(ib) {
57599
57681
  this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(ib);
57600
57682
  if (ib.isConstant) {
57601
- this.props.globalState.stateManager.onRebuildRequiredObservable.notifyObservers(true);
57683
+ this.props.globalState.stateManager.onRebuildRequiredObservable.notifyObservers();
57602
57684
  }
57603
57685
  }
57604
57686
  renderInputBlock(block) {
@@ -57712,7 +57794,7 @@ class FloatPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Compo
57712
57794
  render() {
57713
57795
  return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_2__.FloatLineComponent, { lockObject: this.props.globalState.lockObject, label: "Value", target: this.props.inputBlock, propertyName: "value", onChange: () => {
57714
57796
  if (this.props.inputBlock.isConstant) {
57715
- this.props.globalState.stateManager.onRebuildRequiredObservable.notifyObservers(true);
57797
+ this.props.globalState.stateManager.onRebuildRequiredObservable.notifyObservers();
57716
57798
  }
57717
57799
  this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.inputBlock);
57718
57800
  } }));
@@ -57949,7 +58031,7 @@ class PropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component
57949
58031
  processInputBlockUpdate(ib) {
57950
58032
  this.props.globalState.stateManager.onUpdateRequiredObservable.notifyObservers(ib);
57951
58033
  if (ib.isConstant) {
57952
- this.props.globalState.stateManager.onRebuildRequiredObservable.notifyObservers(true);
58034
+ this.props.globalState.stateManager.onRebuildRequiredObservable.notifyObservers();
57953
58035
  }
57954
58036
  }
57955
58037
  renderInputBlock(block) {
@@ -58561,9 +58643,9 @@ class GraphEditor extends react__WEBPACK_IMPORTED_MODULE_1__.Component {
58561
58643
  }
58562
58644
  }
58563
58645
  });
58564
- this.props.globalState.stateManager.onRebuildRequiredObservable.add((autoConfigure) => {
58646
+ this.props.globalState.stateManager.onRebuildRequiredObservable.add(() => {
58565
58647
  if (this.props.globalState.nodeMaterial) {
58566
- this.buildMaterial(autoConfigure);
58648
+ this.buildMaterial();
58567
58649
  }
58568
58650
  });
58569
58651
  this.props.globalState.onResetRequiredObservable.add((isDefault) => {
@@ -58617,13 +58699,13 @@ class GraphEditor extends react__WEBPACK_IMPORTED_MODULE_1__.Component {
58617
58699
  zoomToFit() {
58618
58700
  this._graphCanvas.zoomToFit();
58619
58701
  }
58620
- buildMaterial(autoConfigure = true) {
58702
+ buildMaterial() {
58621
58703
  if (!this.props.globalState.nodeMaterial) {
58622
58704
  return;
58623
58705
  }
58624
58706
  try {
58625
58707
  this.props.globalState.nodeMaterial.options.emitComments = true;
58626
- this.props.globalState.nodeMaterial.build(true, undefined, autoConfigure);
58708
+ this.props.globalState.nodeMaterial.build(true);
58627
58709
  this.props.globalState.onLogRequiredObservable.notifyObservers(new _components_log_logComponent__WEBPACK_IMPORTED_MODULE_6__.LogEntry("Node material build successful", false));
58628
58710
  }
58629
58711
  catch (err) {
@@ -58898,6 +58980,13 @@ class BlockNodeData {
58898
58980
  }
58899
58981
  iconDiv.classList.add(_blockNodeData_modules_scss__WEBPACK_IMPORTED_MODULE_4__["default"].hidden);
58900
58982
  }
58983
+ get invisibleEndpoints() {
58984
+ if (this.data.isTeleportIn) {
58985
+ const teleportIn = this.data;
58986
+ return teleportIn.endpoints;
58987
+ }
58988
+ return null;
58989
+ }
58901
58990
  constructor(data, nodeContainer) {
58902
58991
  this.data = data;
58903
58992
  this._inputs = [];
@@ -58972,6 +59061,10 @@ class ConnectionPointPortData {
58972
59061
  let otherNode = this._nodeContainer.nodes.find((n) => n.content.data === otherBlock);
58973
59062
  if (!otherNode) {
58974
59063
  otherNode = this._nodeContainer.appendNode(shared_ui_components_nodeGraphSystem_typeLedger__WEBPACK_IMPORTED_MODULE_2__.TypeLedger.NodeDataBuilder(otherBlock, this._nodeContainer));
59064
+ const globalState = this._nodeContainer.stateManager.data;
59065
+ if (globalState.nodeMaterial.attachedBlocks.indexOf(otherBlock) === -1) {
59066
+ globalState.nodeMaterial.attachedBlocks.push(otherBlock);
59067
+ }
58975
59068
  }
58976
59069
  this._connectedPort = otherNode.getPortDataForPortDataContent(this.data.connectedPoint);
58977
59070
  }
@@ -59718,6 +59811,130 @@ class RemapDisplayManager {
59718
59811
  }
59719
59812
 
59720
59813
 
59814
+ /***/ }),
59815
+
59816
+ /***/ "../../../tools/nodeEditor/dist/graphSystem/display/teleportInDisplayManager.js":
59817
+ /*!**************************************************************************************!*\
59818
+ !*** ../../../tools/nodeEditor/dist/graphSystem/display/teleportInDisplayManager.js ***!
59819
+ \**************************************************************************************/
59820
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
59821
+
59822
+ "use strict";
59823
+ __webpack_require__.r(__webpack_exports__);
59824
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
59825
+ /* harmony export */ TeleportInDisplayManager: () => (/* binding */ TeleportInDisplayManager)
59826
+ /* harmony export */ });
59827
+ /* harmony import */ var _blockTools__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../blockTools */ "../../../tools/nodeEditor/dist/blockTools.js");
59828
+
59829
+ class TeleportInDisplayManager {
59830
+ constructor() {
59831
+ this._hasHighlights = false;
59832
+ }
59833
+ getHeaderClass() {
59834
+ return "";
59835
+ }
59836
+ shouldDisplayPortLabels() {
59837
+ return true;
59838
+ }
59839
+ getHeaderText(nodeData) {
59840
+ return nodeData.data.name;
59841
+ }
59842
+ getBackgroundColor(nodeData) {
59843
+ const block = nodeData.data;
59844
+ return `linear-gradient(to right, ${_blockTools__WEBPACK_IMPORTED_MODULE_0__.BlockTools.GetColorFromConnectionNodeType(block.input.type)}, white)`;
59845
+ }
59846
+ updatePreviewContent(nodeData, contentArea) { }
59847
+ onSelectionChanged(nodeData, selectedData, manager) {
59848
+ const block = nodeData.data;
59849
+ if (selectedData !== nodeData) {
59850
+ if (this._hasHighlights) {
59851
+ for (const endpoint of block.endpoints) {
59852
+ manager.onHighlightNodeObservable.notifyObservers({ data: endpoint, active: false });
59853
+ }
59854
+ this._hasHighlights = false;
59855
+ }
59856
+ return;
59857
+ }
59858
+ for (const endpoint of block.endpoints) {
59859
+ manager.onHighlightNodeObservable.notifyObservers({ data: endpoint, active: true });
59860
+ }
59861
+ this._hasHighlights = true;
59862
+ }
59863
+ onDispose(nodeData, manager) {
59864
+ const block = nodeData.data;
59865
+ for (const endpoint of block.endpoints) {
59866
+ manager.onHighlightNodeObservable.notifyObservers({ data: endpoint, active: false });
59867
+ }
59868
+ }
59869
+ }
59870
+
59871
+
59872
+ /***/ }),
59873
+
59874
+ /***/ "../../../tools/nodeEditor/dist/graphSystem/display/teleportOutDisplayManager.js":
59875
+ /*!***************************************************************************************!*\
59876
+ !*** ../../../tools/nodeEditor/dist/graphSystem/display/teleportOutDisplayManager.js ***!
59877
+ \***************************************************************************************/
59878
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
59879
+
59880
+ "use strict";
59881
+ __webpack_require__.r(__webpack_exports__);
59882
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
59883
+ /* harmony export */ TeleportOutDisplayManager: () => (/* binding */ TeleportOutDisplayManager)
59884
+ /* harmony export */ });
59885
+ /* harmony import */ var _blockTools__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../blockTools */ "../../../tools/nodeEditor/dist/blockTools.js");
59886
+
59887
+ class TeleportOutDisplayManager {
59888
+ constructor() {
59889
+ this._hasHighlights = false;
59890
+ }
59891
+ getHeaderClass() {
59892
+ return "";
59893
+ }
59894
+ shouldDisplayPortLabels() {
59895
+ return true;
59896
+ }
59897
+ getHeaderText(nodeData) {
59898
+ return nodeData.data.name;
59899
+ }
59900
+ getBackgroundColor(nodeData) {
59901
+ const block = nodeData.data;
59902
+ return `linear-gradient(to right, white, ${_blockTools__WEBPACK_IMPORTED_MODULE_0__.BlockTools.GetColorFromConnectionNodeType(block.output.type)})`;
59903
+ }
59904
+ updatePreviewContent(nodeData, contentArea) { }
59905
+ onSelectionChanged(nodeData, selectedData, manager) {
59906
+ const block = nodeData.data;
59907
+ if (selectedData !== nodeData) {
59908
+ if (this._hasHighlights) {
59909
+ let removeHighlight;
59910
+ if (selectedData && selectedData.data.getClassName() === "NodeMaterialTeleportOutBlock") {
59911
+ const otherTeleport = selectedData.data;
59912
+ removeHighlight = otherTeleport.entryPoint !== block.entryPoint;
59913
+ }
59914
+ else {
59915
+ removeHighlight = true;
59916
+ }
59917
+ if (removeHighlight) {
59918
+ manager.onHighlightNodeObservable.notifyObservers({ data: block.entryPoint, active: false });
59919
+ }
59920
+ this._hasHighlights = false;
59921
+ }
59922
+ return;
59923
+ }
59924
+ if (block.entryPoint) {
59925
+ manager.onHighlightNodeObservable.notifyObservers({ data: block.entryPoint, active: true });
59926
+ this._hasHighlights = true;
59927
+ }
59928
+ }
59929
+ onDispose(nodeData, manager) {
59930
+ const block = nodeData.data;
59931
+ if (block.entryPoint) {
59932
+ manager.onHighlightNodeObservable.notifyObservers({ data: block.entryPoint, active: false });
59933
+ }
59934
+ }
59935
+ }
59936
+
59937
+
59721
59938
  /***/ }),
59722
59939
 
59723
59940
  /***/ "../../../tools/nodeEditor/dist/graphSystem/display/textureDisplayManager.js":
@@ -59880,19 +60097,19 @@ class ColorMergerPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__
59880
60097
  ];
59881
60098
  return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_genericNodePropertyComponent__WEBPACK_IMPORTED_MODULE_3__.GeneralPropertyTabComponent, { stateManager: this.props.stateManager, nodeData: this.props.nodeData }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__.LineContainerComponent, { title: "SWIZZLES", children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_4__.OptionsLineComponent, { label: "R", options: targetOptions, target: colorMergerBlock, propertyName: "rSwizzle", valuesAreStrings: true, onSelect: () => {
59882
60099
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(colorMergerBlock);
59883
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60100
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
59884
60101
  this.forceUpdate();
59885
60102
  } }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_4__.OptionsLineComponent, { label: "G", options: targetOptions, target: colorMergerBlock, propertyName: "gSwizzle", valuesAreStrings: true, onSelect: () => {
59886
60103
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(colorMergerBlock);
59887
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60104
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
59888
60105
  this.forceUpdate();
59889
60106
  } }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_4__.OptionsLineComponent, { label: "B", options: targetOptions, target: colorMergerBlock, propertyName: "bSwizzle", valuesAreStrings: true, onSelect: () => {
59890
60107
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(colorMergerBlock);
59891
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60108
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
59892
60109
  this.forceUpdate();
59893
60110
  } }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_4__.OptionsLineComponent, { label: "A", options: targetOptions, target: colorMergerBlock, propertyName: "aSwizzle", valuesAreStrings: true, onSelect: () => {
59894
60111
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(colorMergerBlock);
59895
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60112
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
59896
60113
  this.forceUpdate();
59897
60114
  } })] })] }));
59898
60115
  }
@@ -59947,7 +60164,7 @@ class ConditionalPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__
59947
60164
  });
59948
60165
  return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_genericNodePropertyComponent__WEBPACK_IMPORTED_MODULE_4__.GeneralPropertyTabComponent, { stateManager: this.props.stateManager, nodeData: this.props.nodeData }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__.LineContainerComponent, { title: "PROPERTIES", children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_5__.OptionsLineComponent, { label: "Condition", options: conditionOptions, target: conditionBlock, propertyName: "condition", onSelect: () => {
59949
60166
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(conditionBlock);
59950
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60167
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
59951
60168
  this.forceUpdate();
59952
60169
  } }) })] }));
59953
60170
  }
@@ -59999,7 +60216,7 @@ class CurvePropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Compo
59999
60216
  }
60000
60217
  return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_genericNodePropertyComponent__WEBPACK_IMPORTED_MODULE_3__.GeneralPropertyTabComponent, { stateManager: this.props.stateManager, nodeData: this.props.nodeData }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__.LineContainerComponent, { title: "PROPERTIES", children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_4__.OptionsLineComponent, { label: "Type", options: typeOptions, target: curveBlock, propertyName: "type", onSelect: () => {
60001
60218
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(curveBlock);
60002
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60219
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60003
60220
  this.forceUpdate();
60004
60221
  } }) })] }));
60005
60222
  }
@@ -60148,8 +60365,8 @@ __webpack_require__.r(__webpack_exports__);
60148
60365
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "../../../../node_modules/react/index.js");
60149
60366
  /* harmony import */ var _sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../sharedComponents/lineContainerComponent */ "../../../tools/nodeEditor/dist/sharedComponents/lineContainerComponent.js");
60150
60367
  /* harmony import */ var _sharedComponents_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../sharedComponents/checkBoxLineComponent */ "../../../tools/nodeEditor/dist/sharedComponents/checkBoxLineComponent.js");
60151
- /* harmony import */ var core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core/Materials/Node/Enums/nodeMaterialBlockTargets */ "core/Misc/dataStorage");
60152
- /* harmony import */ var core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__);
60368
+ /* harmony import */ var core_Decorators_nodeDecorator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core/Materials/Node/Enums/nodeMaterialBlockTargets */ "core/Misc/dataStorage");
60369
+ /* harmony import */ var core_Decorators_nodeDecorator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_Decorators_nodeDecorator__WEBPACK_IMPORTED_MODULE_4__);
60153
60370
  /* harmony import */ var shared_ui_components_lines_textInputLineComponent__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! shared-ui-components/lines/textInputLineComponent */ "../../../dev/sharedUiComponents/dist/lines/textInputLineComponent.js");
60154
60371
  /* harmony import */ var shared_ui_components_lines_vector2LineComponent__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! shared-ui-components/lines/vector2LineComponent */ "../../../dev/sharedUiComponents/dist/lines/vector2LineComponent.js");
60155
60372
  /* harmony import */ var shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! shared-ui-components/lines/optionsLineComponent */ "../../../dev/sharedUiComponents/dist/lines/optionsLineComponent.js");
@@ -60182,9 +60399,9 @@ class GeneralPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Com
60182
60399
  }
60183
60400
  render() {
60184
60401
  const targetOptions = [
60185
- { label: "Neutral", value: core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__.NodeMaterialBlockTargets.Neutral },
60186
- { label: "Vertex", value: core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__.NodeMaterialBlockTargets.Vertex },
60187
- { label: "Fragment", value: core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__.NodeMaterialBlockTargets.Fragment },
60402
+ { label: "Neutral", value: core_Decorators_nodeDecorator__WEBPACK_IMPORTED_MODULE_4__.NodeMaterialBlockTargets.Neutral },
60403
+ { label: "Vertex", value: core_Decorators_nodeDecorator__WEBPACK_IMPORTED_MODULE_4__.NodeMaterialBlockTargets.Vertex },
60404
+ { label: "Fragment", value: core_Decorators_nodeDecorator__WEBPACK_IMPORTED_MODULE_4__.NodeMaterialBlockTargets.Fragment },
60188
60405
  ];
60189
60406
  const block = this.props.nodeData.data;
60190
60407
  return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, { children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__.LineContainerComponent, { title: "GENERAL", children: [(!block.isInput || !block.isAttribute) && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_textInputLineComponent__WEBPACK_IMPORTED_MODULE_5__.TextInputLineComponent, { label: "Name", propertyName: "name", target: block, lockObject: this.props.stateManager.lockObject, onChange: () => this.props.stateManager.onUpdateRequiredObservable.notifyObservers(block), throttlePropertyChangedNotification: true, validator: (newName) => {
@@ -60196,8 +60413,8 @@ class GeneralPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Com
60196
60413
  } })), block._originalTargetIsNeutral && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_7__.OptionsLineComponent, { label: "Target", options: targetOptions, target: block, propertyName: "target", onSelect: () => {
60197
60414
  this.forceUpdate();
60198
60415
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(block);
60199
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60200
- } })), !block._originalTargetIsNeutral && (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_8__.TextLineComponent, { label: "Target", value: core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__.NodeMaterialBlockTargets[block.target] }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_8__.TextLineComponent, { label: "Type", value: block.getClassName() }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_textInputLineComponent__WEBPACK_IMPORTED_MODULE_5__.TextInputLineComponent, { label: "Comments", propertyName: "comments", lockObject: this.props.stateManager.lockObject, target: block, onChange: () => this.props.stateManager.onUpdateRequiredObservable.notifyObservers(block), throttlePropertyChangedNotification: true })] }) }));
60416
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60417
+ } })), !block._originalTargetIsNeutral && (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_8__.TextLineComponent, { label: "Target", value: core_Decorators_nodeDecorator__WEBPACK_IMPORTED_MODULE_4__.NodeMaterialBlockTargets[block.target] }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_8__.TextLineComponent, { label: "Type", value: block.getClassName() }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_textInputLineComponent__WEBPACK_IMPORTED_MODULE_5__.TextInputLineComponent, { label: "Comments", propertyName: "comments", lockObject: this.props.stateManager.lockObject, target: block, onChange: () => this.props.stateManager.onUpdateRequiredObservable.notifyObservers(block), throttlePropertyChangedNotification: true })] }) }));
60201
60418
  }
60202
60419
  }
60203
60420
  class GenericPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component {
@@ -60212,14 +60429,14 @@ class GenericPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Com
60212
60429
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.nodeData.data);
60213
60430
  }
60214
60431
  if (!notifiers || notifiers.rebuild) {
60215
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60432
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60216
60433
  }
60217
60434
  if (notifiers?.activatePreviewCommand) {
60218
60435
  this.props.stateManager.data.onPreviewCommandActivated.notifyObservers(true);
60219
60436
  }
60220
60437
  const rebuild = notifiers?.callback?.(this.props.stateManager.data.nodeMaterial.getScene(), this.props.nodeData.data) ?? false;
60221
60438
  if (rebuild) {
60222
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60439
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60223
60440
  }
60224
60441
  }
60225
60442
  render() {
@@ -60236,11 +60453,11 @@ class GenericPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Com
60236
60453
  groups.push(groupName);
60237
60454
  }
60238
60455
  switch (type) {
60239
- case core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__.PropertyTypeForEdition.Boolean: {
60456
+ case core_Decorators_nodeDecorator__WEBPACK_IMPORTED_MODULE_4__.PropertyTypeForEdition.Boolean: {
60240
60457
  components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_3__.CheckBoxLineComponent, { label: displayName, target: block, propertyName: propertyName, onValueChanged: () => this.forceRebuild(propertyName, options.notifiers) }, `checkBox-${propertyName}`));
60241
60458
  break;
60242
60459
  }
60243
- case core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__.PropertyTypeForEdition.Float: {
60460
+ case core_Decorators_nodeDecorator__WEBPACK_IMPORTED_MODULE_4__.PropertyTypeForEdition.Float: {
60244
60461
  const cantDisplaySlider = isNaN(options.min) || isNaN(options.max) || options.min === options.max;
60245
60462
  if (cantDisplaySlider) {
60246
60463
  components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_9__.FloatLineComponent, { lockObject: this.props.stateManager.lockObject, label: displayName, propertyName: propertyName, target: block, onChange: () => this.forceRebuild(propertyName, options.notifiers) }, `float-${propertyName}`));
@@ -60250,15 +60467,15 @@ class GenericPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Com
60250
60467
  }
60251
60468
  break;
60252
60469
  }
60253
- case core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__.PropertyTypeForEdition.Int: {
60470
+ case core_Decorators_nodeDecorator__WEBPACK_IMPORTED_MODULE_4__.PropertyTypeForEdition.Int: {
60254
60471
  components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_9__.FloatLineComponent, { lockObject: this.props.stateManager.lockObject, digits: 0, step: "1", isInteger: true, label: displayName, propertyName: propertyName, target: block, onChange: () => this.forceRebuild(propertyName, options.notifiers) }, `int-${propertyName}`));
60255
60472
  break;
60256
60473
  }
60257
- case core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__.PropertyTypeForEdition.Vector2: {
60474
+ case core_Decorators_nodeDecorator__WEBPACK_IMPORTED_MODULE_4__.PropertyTypeForEdition.Vector2: {
60258
60475
  components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_vector2LineComponent__WEBPACK_IMPORTED_MODULE_6__.Vector2LineComponent, { lockObject: this.props.stateManager.lockObject, label: displayName, propertyName: propertyName, target: block, onChange: () => this.forceRebuild(propertyName, options.notifiers) }, `vector2-${propertyName}`));
60259
60476
  break;
60260
60477
  }
60261
- case core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__.PropertyTypeForEdition.List: {
60478
+ case core_Decorators_nodeDecorator__WEBPACK_IMPORTED_MODULE_4__.PropertyTypeForEdition.List: {
60262
60479
  components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_7__.OptionsLineComponent, { label: displayName, options: options.options, target: block, propertyName: propertyName, onSelect: () => this.forceRebuild(propertyName, options.notifiers) }, `options-${propertyName}`));
60263
60480
  break;
60264
60481
  }
@@ -60320,7 +60537,7 @@ class GradientPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Co
60320
60537
  }
60321
60538
  forceRebuild() {
60322
60539
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.nodeData.data);
60323
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60540
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60324
60541
  }
60325
60542
  deleteStep(step) {
60326
60543
  const gradientBlock = this.props.nodeData.data;
@@ -60388,7 +60605,7 @@ class GradientPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Co
60388
60605
  }
60389
60606
  this.forceUpdate();
60390
60607
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(gradientBlock);
60391
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60608
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60392
60609
  }, propertyName: "" }) }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__.LineContainerComponent, { title: "STEPS", children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_buttonLineComponent__WEBPACK_IMPORTED_MODULE_6__.ButtonLineComponent, { label: "Add new step", onClick: () => this.addNewStep() }), gradientBlock.colorSteps.map((c, i) => {
60393
60610
  return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_gradientStepComponent__WEBPACK_IMPORTED_MODULE_4__.GradientStepComponent, { stateManager: this.props.stateManager, onCheckForReOrder: () => this.checkForReOrder(), onUpdateStep: () => this.forceRebuild(), lineIndex: i, step: c, onCopy: () => this.copyStep(c), onDelete: () => this.deleteStep(c) }, "step-" + i));
60394
60611
  })] })] }));
@@ -60522,7 +60739,7 @@ class ImageSourcePropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__
60522
60739
  }
60523
60740
  updateAfterTextureLoad() {
60524
60741
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.nodeData.data);
60525
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60742
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60526
60743
  this.forceUpdate();
60527
60744
  }
60528
60745
  removeTexture() {
@@ -60707,14 +60924,14 @@ class InputPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Compo
60707
60924
  }, onSelect: (value) => {
60708
60925
  inputBlock.value = value ? 1 : 0;
60709
60926
  if (inputBlock.isConstant) {
60710
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60927
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60711
60928
  }
60712
60929
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(inputBlock);
60713
60930
  } })), !inputBlock.isBoolean && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_15__.FloatLineComponent, { lockObject: this.props.stateManager.lockObject, label: "Min", target: inputBlock, propertyName: "min", onChange: () => {
60714
60931
  if (inputBlock.value < inputBlock.min) {
60715
60932
  inputBlock.value = inputBlock.min;
60716
60933
  if (inputBlock.isConstant) {
60717
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60934
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60718
60935
  }
60719
60936
  }
60720
60937
  this.forceUpdate();
@@ -60722,13 +60939,13 @@ class InputPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Compo
60722
60939
  if (inputBlock.value > inputBlock.max) {
60723
60940
  inputBlock.value = inputBlock.max;
60724
60941
  if (inputBlock.isConstant) {
60725
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60942
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60726
60943
  }
60727
60944
  }
60728
60945
  this.forceUpdate();
60729
60946
  } })), !inputBlock.isBoolean && cantDisplaySlider && (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_components_propertyTab_properties_floatPropertyTabComponent__WEBPACK_IMPORTED_MODULE_2__.FloatPropertyTabComponent, { globalState: globalState, inputBlock: inputBlock }), !inputBlock.isBoolean && !cantDisplaySlider && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_sliderLineComponent__WEBPACK_IMPORTED_MODULE_16__.SliderLineComponent, { lockObject: this.props.stateManager.lockObject, label: "Value", target: inputBlock, propertyName: "value", step: Math.abs(inputBlock.max - inputBlock.min) / 100.0, minimum: Math.min(inputBlock.min, inputBlock.max), maximum: inputBlock.max, onChange: () => {
60730
60947
  if (inputBlock.isConstant) {
60731
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
60948
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60732
60949
  }
60733
60950
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(inputBlock);
60734
60951
  } }))] }));
@@ -60861,11 +61078,11 @@ class InputPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Compo
60861
61078
  }
60862
61079
  this.forceUpdate();
60863
61080
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(inputBlock);
60864
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61081
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60865
61082
  }, propertyName: "" })), inputBlock.visibleInInspector && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_textInputLineComponent__WEBPACK_IMPORTED_MODULE_13__.TextInputLineComponent, { label: "Group", propertyName: "groupInInspector", target: inputBlock, lockObject: this.props.stateManager.lockObject, onChange: () => {
60866
61083
  this.forceUpdate();
60867
61084
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(inputBlock);
60868
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61085
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60869
61086
  }, throttlePropertyChangedNotification: true })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_14__.OptionsLineComponent, { label: "Mode", options: modeOptions, target: inputBlock, noDirectUpdate: true, extractValue: () => {
60870
61087
  if (inputBlock.isAttribute) {
60871
61088
  return 1;
@@ -60890,16 +61107,16 @@ class InputPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Compo
60890
61107
  }
60891
61108
  this.forceUpdate();
60892
61109
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(inputBlock);
60893
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61110
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60894
61111
  }, propertyName: "" }), inputBlock.isAttribute && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_14__.OptionsLineComponent, { label: "Attribute", valuesAreStrings: true, options: attributeOptions, target: inputBlock, propertyName: "name", onSelect: (value) => {
60895
61112
  inputBlock.setAsAttribute(value);
60896
61113
  this.forceUpdate();
60897
61114
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(inputBlock);
60898
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61115
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60899
61116
  } })), inputBlock.isUniform && animationOptions.length > 0 && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_14__.OptionsLineComponent, { label: "Animation type", options: animationOptions, target: inputBlock, propertyName: "animationType", onSelect: () => {
60900
61117
  this.forceUpdate();
60901
61118
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(inputBlock);
60902
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61119
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60903
61120
  } })), inputBlock.isUniform &&
60904
61121
  !inputBlock.isSystemValue &&
60905
61122
  inputBlock.animationType === core_Materials_Node_Enums_nodeMaterialBlockConnectionPointTypes__WEBPACK_IMPORTED_MODULE_9__.AnimatedInputBlockTypes.None &&
@@ -60907,7 +61124,7 @@ class InputPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Compo
60907
61124
  inputBlock.setAsSystemValue(value);
60908
61125
  this.forceUpdate();
60909
61126
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(inputBlock);
60910
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61127
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60911
61128
  } })), inputBlock.isUniform && !inputBlock.isSystemValue && inputBlock.animationType === core_Materials_Node_Enums_nodeMaterialBlockConnectionPointTypes__WEBPACK_IMPORTED_MODULE_9__.AnimatedInputBlockTypes.None && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_11__.CheckBoxLineComponent, { label: "Visible on frame", target: inputBlock, propertyName: "visibleOnFrame" }))] })] }));
60912
61129
  }
60913
61130
  }
@@ -60946,7 +61163,7 @@ class LightInformationPropertyTabComponent extends react__WEBPACK_IMPORTED_MODUL
60946
61163
  return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_genericNodePropertyComponent__WEBPACK_IMPORTED_MODULE_3__.GeneralPropertyTabComponent, { stateManager: this.props.stateManager, nodeData: this.props.nodeData }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__.LineContainerComponent, { title: "PROPERTIES", children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_4__.OptionsLineComponent, { label: "Light", noDirectUpdate: true, valuesAreStrings: true, options: lightOptions, target: lightInformationBlock, propertyName: "name", extractValue: (target) => target.light?.name ?? "", onSelect: (name) => {
60947
61164
  lightInformationBlock.light = scene.getLightByName(name);
60948
61165
  this.forceUpdate();
60949
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61166
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
60950
61167
  } }) })] }));
60951
61168
  }
60952
61169
  }
@@ -60981,9 +61198,6 @@ class NodePortPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Co
60981
61198
  constructor(props) {
60982
61199
  super(props);
60983
61200
  }
60984
- componentWillUnmount() {
60985
- this.props.stateManager.onSelectionChangedObservable.remove(this._onSelectionChangedObserver);
60986
- }
60987
61201
  toggleExposeOnFrame(value) {
60988
61202
  this.props.nodePort.exposedOnFrame = value;
60989
61203
  this.props.stateManager.onExposePortOnFrameObservable.notifyObservers(this.props.nodePort.node);
@@ -60995,6 +61209,85 @@ class NodePortPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Co
60995
61209
  }
60996
61210
 
60997
61211
 
61212
+ /***/ }),
61213
+
61214
+ /***/ "../../../tools/nodeEditor/dist/graphSystem/properties/teleportOutNodePropertyComponent.js":
61215
+ /*!*************************************************************************************************!*\
61216
+ !*** ../../../tools/nodeEditor/dist/graphSystem/properties/teleportOutNodePropertyComponent.js ***!
61217
+ \*************************************************************************************************/
61218
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
61219
+
61220
+ "use strict";
61221
+ __webpack_require__.r(__webpack_exports__);
61222
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
61223
+ /* harmony export */ TeleportOutPropertyTabComponent: () => (/* binding */ TeleportOutPropertyTabComponent)
61224
+ /* harmony export */ });
61225
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-runtime */ "../../../../node_modules/react/jsx-runtime.js");
61226
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "../../../../node_modules/react/index.js");
61227
+ /* harmony import */ var _genericNodePropertyComponent__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./genericNodePropertyComponent */ "../../../tools/nodeEditor/dist/graphSystem/properties/genericNodePropertyComponent.js");
61228
+ /* harmony import */ var _sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../sharedComponents/lineContainerComponent */ "../../../tools/nodeEditor/dist/sharedComponents/lineContainerComponent.js");
61229
+ /* harmony import */ var shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! shared-ui-components/lines/optionsLineComponent */ "../../../dev/sharedUiComponents/dist/lines/optionsLineComponent.js");
61230
+
61231
+
61232
+
61233
+
61234
+
61235
+ class TeleportOutPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component {
61236
+ constructor(props) {
61237
+ super(props);
61238
+ }
61239
+ componentDidMount() {
61240
+ this._onUpdateRequiredObserver = this.props.stateManager.onUpdateRequiredObservable.add(() => {
61241
+ this.forceUpdate();
61242
+ });
61243
+ }
61244
+ componentWillUnmount() {
61245
+ this.props.stateManager.onUpdateRequiredObservable.remove(this._onUpdateRequiredObserver);
61246
+ }
61247
+ render() {
61248
+ const block = this.props.nodeData.data;
61249
+ const options = [{ label: "None", value: -1 }];
61250
+ const teleporters = new Array();
61251
+ const nodeGeometry = this.props.stateManager.data.nodeMaterial;
61252
+ for (const block of nodeGeometry.attachedBlocks) {
61253
+ if (block.getClassName() === "NodeMaterialTeleportInBlock") {
61254
+ teleporters.push(block);
61255
+ }
61256
+ }
61257
+ teleporters.sort((a, b) => a.name.localeCompare(b.name));
61258
+ for (const block of teleporters) {
61259
+ options.push({ label: block.name, value: block.uniqueId });
61260
+ }
61261
+ return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_genericNodePropertyComponent__WEBPACK_IMPORTED_MODULE_2__.GeneralPropertyTabComponent, { stateManager: this.props.stateManager, nodeData: this.props.nodeData }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_3__.LineContainerComponent, { title: "PROPERTIES", children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_4__.OptionsLineComponent, { label: "Entry point", options: options, target: block, propertyName: "entryPoint", noDirectUpdate: true, onSelect: (value) => {
61262
+ // Remove the highlight from the previous entry point
61263
+ if (block.entryPoint) {
61264
+ this.props.stateManager.onHighlightNodeObservable.notifyObservers({ data: block.entryPoint, active: false });
61265
+ }
61266
+ switch (value) {
61267
+ case -1:
61268
+ block.detach();
61269
+ break;
61270
+ default: {
61271
+ const source = teleporters.find((t) => t.uniqueId === value);
61272
+ source?.attachToEndpoint(block);
61273
+ }
61274
+ }
61275
+ // Highlight the new entry point
61276
+ if (block.entryPoint) {
61277
+ this.props.stateManager.onHighlightNodeObservable.notifyObservers({ data: block.entryPoint, active: true });
61278
+ }
61279
+ this.props.stateManager.onUpdateRequiredObservable.notifyObservers(block);
61280
+ this.forceUpdate();
61281
+ }, extractValue: () => {
61282
+ if (!block.entryPoint) {
61283
+ return -1;
61284
+ }
61285
+ return block.entryPoint?.uniqueId;
61286
+ } }) })] }));
61287
+ }
61288
+ }
61289
+
61290
+
60998
61291
  /***/ }),
60999
61292
 
61000
61293
  /***/ "../../../tools/nodeEditor/dist/graphSystem/properties/texturePropertyTabComponent.js":
@@ -61066,7 +61359,7 @@ class TexturePropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Com
61066
61359
  }
61067
61360
  updateAfterTextureLoad() {
61068
61361
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(this.props.nodeData.data);
61069
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61362
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
61070
61363
  this.forceUpdate();
61071
61364
  }
61072
61365
  removeTexture() {
@@ -61223,7 +61516,7 @@ class TexturePropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Com
61223
61516
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(block);
61224
61517
  } })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_5__.CheckBoxLineComponent, { label: "Disable multiplying by level", propertyName: "disableLevelMultiplication", target: block, onValueChanged: () => {
61225
61518
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(block);
61226
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61519
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
61227
61520
  } }), texture && texture.updateSamplingMode && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_9__.OptionsLineComponent, { label: "Sampling", options: samplingMode, target: texture, noDirectUpdate: true, propertyName: "samplingMode", onSelect: (value) => {
61228
61521
  texture.updateSamplingMode(value);
61229
61522
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(block);
@@ -61234,11 +61527,11 @@ class TexturePropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Com
61234
61527
  } })), texture && !isInReflectionMode && !isFrozenTexture && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_5__.CheckBoxLineComponent, { label: "Clamp U", isSelected: () => texture.wrapU === core_Misc_tools__WEBPACK_IMPORTED_MODULE_3__.Texture.CLAMP_ADDRESSMODE, onSelect: (value) => {
61235
61528
  texture.wrapU = value ? core_Misc_tools__WEBPACK_IMPORTED_MODULE_3__.Texture.CLAMP_ADDRESSMODE : core_Misc_tools__WEBPACK_IMPORTED_MODULE_3__.Texture.WRAP_ADDRESSMODE;
61236
61529
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(block);
61237
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61530
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
61238
61531
  } })), texture && !isInReflectionMode && !isFrozenTexture && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_5__.CheckBoxLineComponent, { label: "Clamp V", isSelected: () => texture.wrapV === core_Misc_tools__WEBPACK_IMPORTED_MODULE_3__.Texture.CLAMP_ADDRESSMODE, onSelect: (value) => {
61239
61532
  texture.wrapV = value ? core_Misc_tools__WEBPACK_IMPORTED_MODULE_3__.Texture.CLAMP_ADDRESSMODE : core_Misc_tools__WEBPACK_IMPORTED_MODULE_3__.Texture.WRAP_ADDRESSMODE;
61240
61533
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(block);
61241
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61534
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
61242
61535
  } })), texture && !isInReflectionMode && !isFrozenTexture && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_10__.FloatLineComponent, { lockObject: this.props.stateManager.lockObject, label: "Offset U", target: texture, propertyName: "uOffset", onChange: () => {
61243
61536
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(block);
61244
61537
  } })), texture && !isInReflectionMode && !isFrozenTexture && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_10__.FloatLineComponent, { lockObject: this.props.stateManager.lockObject, label: "Offset V", target: texture, propertyName: "vOffset", onChange: () => {
@@ -61298,7 +61591,7 @@ class TransformPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.C
61298
61591
  else {
61299
61592
  transformBlock.complementW = 1;
61300
61593
  }
61301
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61594
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
61302
61595
  }, isSelected: () => this.props.nodeData.data.complementW === 0 }) })] }));
61303
61596
  }
61304
61597
  }
@@ -61361,7 +61654,7 @@ class TrigonometryPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1_
61361
61654
  });
61362
61655
  return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_genericNodePropertyComponent__WEBPACK_IMPORTED_MODULE_4__.GeneralPropertyTabComponent, { stateManager: this.props.stateManager, nodeData: this.props.nodeData }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__.LineContainerComponent, { title: "PROPERTIES", children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_5__.OptionsLineComponent, { label: "Operation", options: operationOptions, target: trigonometryBlock, propertyName: "operation", onSelect: () => {
61363
61656
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(trigonometryBlock);
61364
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61657
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
61365
61658
  this.forceUpdate();
61366
61659
  } }) })] }));
61367
61660
  }
@@ -61405,19 +61698,19 @@ class VectorMergerPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1_
61405
61698
  ];
61406
61699
  return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_genericNodePropertyComponent__WEBPACK_IMPORTED_MODULE_3__.GeneralPropertyTabComponent, { stateManager: this.props.stateManager, nodeData: this.props.nodeData }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__.LineContainerComponent, { title: "SWIZZLES", children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_4__.OptionsLineComponent, { label: "X", options: targetOptions, target: vectorMergerBlock, propertyName: "xSwizzle", valuesAreStrings: true, onSelect: () => {
61407
61700
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(vectorMergerBlock);
61408
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61701
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
61409
61702
  this.forceUpdate();
61410
61703
  } }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_4__.OptionsLineComponent, { label: "Y", options: targetOptions, target: vectorMergerBlock, propertyName: "ySwizzle", valuesAreStrings: true, onSelect: () => {
61411
61704
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(vectorMergerBlock);
61412
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61705
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
61413
61706
  this.forceUpdate();
61414
61707
  } }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_4__.OptionsLineComponent, { label: "Z", options: targetOptions, target: vectorMergerBlock, propertyName: "zSwizzle", valuesAreStrings: true, onSelect: () => {
61415
61708
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(vectorMergerBlock);
61416
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61709
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
61417
61710
  this.forceUpdate();
61418
61711
  } }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_4__.OptionsLineComponent, { label: "W", options: targetOptions, target: vectorMergerBlock, propertyName: "wSwizzle", valuesAreStrings: true, onSelect: () => {
61419
61712
  this.props.stateManager.onUpdateRequiredObservable.notifyObservers(vectorMergerBlock);
61420
- this.props.stateManager.onRebuildRequiredObservable.notifyObservers(true);
61713
+ this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
61421
61714
  this.forceUpdate();
61422
61715
  } })] })] }));
61423
61716
  }
@@ -61610,6 +61903,10 @@ __webpack_require__.r(__webpack_exports__);
61610
61903
  /* harmony import */ var shared_ui_components_nodeGraphSystem_displayLedger__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! shared-ui-components/nodeGraphSystem/displayLedger */ "../../../dev/sharedUiComponents/dist/nodeGraphSystem/displayLedger.js");
61611
61904
  /* harmony import */ var _display_meshAttributeExistsDisplayManager__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./display/meshAttributeExistsDisplayManager */ "../../../tools/nodeEditor/dist/graphSystem/display/meshAttributeExistsDisplayManager.js");
61612
61905
  /* harmony import */ var _display_curveDisplayManager__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./display/curveDisplayManager */ "../../../tools/nodeEditor/dist/graphSystem/display/curveDisplayManager.js");
61906
+ /* harmony import */ var _display_teleportOutDisplayManager__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./display/teleportOutDisplayManager */ "../../../tools/nodeEditor/dist/graphSystem/display/teleportOutDisplayManager.js");
61907
+ /* harmony import */ var _display_teleportInDisplayManager__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./display/teleportInDisplayManager */ "../../../tools/nodeEditor/dist/graphSystem/display/teleportInDisplayManager.js");
61908
+
61909
+
61613
61910
 
61614
61911
 
61615
61912
 
@@ -61652,6 +61949,8 @@ const RegisterToDisplayManagers = () => {
61652
61949
  shared_ui_components_nodeGraphSystem_displayLedger__WEBPACK_IMPORTED_MODULE_12__.DisplayLedger.RegisteredControls["ElbowBlock"] = _display_elbowDisplayManager__WEBPACK_IMPORTED_MODULE_11__.ElbowDisplayManager;
61653
61950
  shared_ui_components_nodeGraphSystem_displayLedger__WEBPACK_IMPORTED_MODULE_12__.DisplayLedger.RegisteredControls["MeshAttributeExistsBlock"] = _display_meshAttributeExistsDisplayManager__WEBPACK_IMPORTED_MODULE_13__.MeshAttributeExistsDisplayManager;
61654
61951
  shared_ui_components_nodeGraphSystem_displayLedger__WEBPACK_IMPORTED_MODULE_12__.DisplayLedger.RegisteredControls["CurveBlock"] = _display_curveDisplayManager__WEBPACK_IMPORTED_MODULE_14__.CurveDisplayManager;
61952
+ shared_ui_components_nodeGraphSystem_displayLedger__WEBPACK_IMPORTED_MODULE_12__.DisplayLedger.RegisteredControls["NodeMaterialTeleportInBlock"] = _display_teleportInDisplayManager__WEBPACK_IMPORTED_MODULE_16__.TeleportInDisplayManager;
61953
+ shared_ui_components_nodeGraphSystem_displayLedger__WEBPACK_IMPORTED_MODULE_12__.DisplayLedger.RegisteredControls["NodeMaterialTeleportOutBlock"] = _display_teleportOutDisplayManager__WEBPACK_IMPORTED_MODULE_15__.TeleportOutDisplayManager;
61655
61954
  };
61656
61955
 
61657
61956
 
@@ -61681,6 +61980,8 @@ __webpack_require__.r(__webpack_exports__);
61681
61980
  /* harmony import */ var _properties_trigonometryNodePropertyComponent__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./properties/trigonometryNodePropertyComponent */ "../../../tools/nodeEditor/dist/graphSystem/properties/trigonometryNodePropertyComponent.js");
61682
61981
  /* harmony import */ var _properties_vectorMergerPropertyComponent__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./properties/vectorMergerPropertyComponent */ "../../../tools/nodeEditor/dist/graphSystem/properties/vectorMergerPropertyComponent.js");
61683
61982
  /* harmony import */ var _properties_curveNodePropertyComponent__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./properties/curveNodePropertyComponent */ "../../../tools/nodeEditor/dist/graphSystem/properties/curveNodePropertyComponent.js");
61983
+ /* harmony import */ var _properties_teleportOutNodePropertyComponent__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./properties/teleportOutNodePropertyComponent */ "../../../tools/nodeEditor/dist/graphSystem/properties/teleportOutNodePropertyComponent.js");
61984
+
61684
61985
 
61685
61986
 
61686
61987
 
@@ -61714,6 +62015,7 @@ const RegisterToPropertyTabManagers = () => {
61714
62015
  shared_ui_components_nodeGraphSystem_propertyLedger__WEBPACK_IMPORTED_MODULE_0__.PropertyLedger.RegisteredControls["VectorMergerBlock"] = _properties_vectorMergerPropertyComponent__WEBPACK_IMPORTED_MODULE_11__.VectorMergerPropertyTabComponent;
61715
62016
  shared_ui_components_nodeGraphSystem_propertyLedger__WEBPACK_IMPORTED_MODULE_0__.PropertyLedger.RegisteredControls["ColorMergerBlock"] = _properties_colorMergerPropertyComponent__WEBPACK_IMPORTED_MODULE_1__.ColorMergerPropertyTabComponent;
61716
62017
  shared_ui_components_nodeGraphSystem_propertyLedger__WEBPACK_IMPORTED_MODULE_0__.PropertyLedger.RegisteredControls["CurveBlock"] = _properties_curveNodePropertyComponent__WEBPACK_IMPORTED_MODULE_12__.CurvePropertyTabComponent;
62018
+ shared_ui_components_nodeGraphSystem_propertyLedger__WEBPACK_IMPORTED_MODULE_0__.PropertyLedger.RegisteredControls["NodeMaterialTeleportOutBlock"] = _properties_teleportOutNodePropertyComponent__WEBPACK_IMPORTED_MODULE_13__.TeleportOutPropertyTabComponent;
61717
62019
  };
61718
62020
 
61719
62021
 
@@ -65748,7 +66050,7 @@ var p = config.measurePerformance && PERFORMANCE && PERFORMANCE.mark && PERFORMA
65748
66050
  mark: noop$1,
65749
66051
  measure: noop$1
65750
66052
  };
65751
- var preamble = "FA \"6.4.0\"";
66053
+ var preamble = "FA \"6.4.2\"";
65752
66054
 
65753
66055
  var begin = function begin(name) {
65754
66056
  p.mark("".concat(preamble, " ").concat(name, " begins"));
@@ -66625,7 +66927,7 @@ function replaceForPosition(node, position) {
66625
66927
  watchable: true
66626
66928
  }));
66627
66929
 
66628
- var element = DOCUMENT.createElement('svg');
66930
+ var element = DOCUMENT.createElementNS('http://www.w3.org/2000/svg', 'svg');
66629
66931
 
66630
66932
  if (position === '::before') {
66631
66933
  node.insertBefore(element, node.firstChild);
@@ -69308,7 +69610,7 @@ var faFingerprint = {
69308
69610
  var faHandPointRight = {
69309
69611
  prefix: 'fas',
69310
69612
  iconName: 'hand-point-right',
69311
- icon: [512, 512, [], "f0a4", "M480 96c17.7 0 32 14.3 32 32s-14.3 32-32 32l-208 0 0-64 208 0zM320 288c17.7 0 32 14.3 32 32s-14.3 32-32 32H256c-17.7 0-32-14.3-32-32s14.3-32 32-32h64zm64-64c0 17.7-14.3 32-32 32H304c-17.7 0-32-14.3-32-32s14.3-32 32-32h48c17.7 0 32 14.3 32 32zM288 384c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32h64zm-88-96l.6 0c-5.4 9.4-8.6 20.3-8.6 32c0 13.2 4 25.4 10.8 35.6C177.9 364.3 160 388.1 160 416c0 11.7 3.1 22.6 8.6 32H160C71.6 448 0 376.4 0 288l0-61.7c0-42.4 16.9-83.1 46.9-113.1l11.6-11.6C82.5 77.5 115.1 64 149 64l27 0c35.3 0 64 28.7 64 64v88c0 22.1-17.9 40-40 40s-40-17.9-40-40V160c0-8.8-7.2-16-16-16s-16 7.2-16 16v56c0 39.8 32.2 72 72 72z"]
69613
+ icon: [512, 512, [], "f0a4", "M480 96c17.7 0 32 14.3 32 32s-14.3 32-32 32l-208 0 0-64 208 0zM320 288c17.7 0 32 14.3 32 32s-14.3 32-32 32l-64 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l64 0zm64-64c0 17.7-14.3 32-32 32l-48 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l48 0c17.7 0 32 14.3 32 32zM288 384c17.7 0 32 14.3 32 32s-14.3 32-32 32l-64 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l64 0zm-88-96l.6 0c-5.4 9.4-8.6 20.3-8.6 32c0 13.2 4 25.4 10.8 35.6C177.9 364.3 160 388.1 160 416c0 11.7 3.1 22.6 8.6 32l-8.6 0C71.6 448 0 376.4 0 288l0-61.7c0-42.4 16.9-83.1 46.9-113.1l11.6-11.6C82.5 77.5 115.1 64 149 64l27 0c35.3 0 64 28.7 64 64l0 88c0 22.1-17.9 40-40 40s-40-17.9-40-40l0-56c0-8.8-7.2-16-16-16s-16 7.2-16 16l0 56c0 39.8 32.2 72 72 72z"]
69312
69614
  };
69313
69615
  var faMagnifyingGlassLocation = {
69314
69616
  prefix: 'fas',
@@ -69524,7 +69826,7 @@ var faComments = {
69524
69826
  var faPaste = {
69525
69827
  prefix: 'fas',
69526
69828
  iconName: 'paste',
69527
- icon: [512, 512, ["file-clipboard"], "f0ea", "M160 0c-23.7 0-44.4 12.9-55.4 32H48C21.5 32 0 53.5 0 80V400c0 26.5 21.5 48 48 48H192V176c0-44.2 35.8-80 80-80h48V80c0-26.5-21.5-48-48-48H215.4C204.4 12.9 183.7 0 160 0zM272 128c-26.5 0-48 21.5-48 48V448v16c0 26.5 21.5 48 48 48H464c26.5 0 48-21.5 48-48V243.9c0-12.7-5.1-24.9-14.1-33.9l-67.9-67.9c-9-9-21.2-14.1-33.9-14.1H320 272zM160 40a24 24 0 1 1 0 48 24 24 0 1 1 0-48z"]
69829
+ icon: [512, 512, ["file-clipboard"], "f0ea", "M160 0c-23.7 0-44.4 12.9-55.4 32H48C21.5 32 0 53.5 0 80V400c0 26.5 21.5 48 48 48H192V176c0-44.2 35.8-80 80-80h48V80c0-26.5-21.5-48-48-48H215.4C204.4 12.9 183.7 0 160 0zM272 128c-26.5 0-48 21.5-48 48V448v16c0 26.5 21.5 48 48 48H464c26.5 0 48-21.5 48-48V256H416c-17.7 0-32-14.3-32-32V128H320 272zM160 40a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm256 88v96h96l-96-96z"]
69528
69830
  };
69529
69831
  var faFileClipboard = faPaste;
69530
69832
  var faCodePullRequest = {
@@ -70267,7 +70569,7 @@ var faChevronUp = {
70267
70569
  var faHandSpock = {
70268
70570
  prefix: 'fas',
70269
70571
  iconName: 'hand-spock',
70270
- icon: [576, 512, [128406], "f259", "M246.9 23.7C242.3 6.6 224.8-3.5 207.7 1.1s-27.2 22.1-22.6 39.2L238 237.8c2.5 9.2-4.5 18.2-14 18.2c-6.4 0-12-4.2-13.9-10.3L166.6 102.7c-5.1-16.9-23-26.4-39.9-21.3s-26.4 23-21.3 39.9l62.8 206.4c2.4 7.9-7.2 13.8-13.2 8.1L99.6 283c-16-15.2-41.3-14.6-56.6 1.4s-14.6 41.3 1.4 56.6L156.8 448c43.1 41.1 100.4 64 160 64h10.9 8.2c.1 0 .1-.1 .1-.1s.1-.1 .1-.1c58.3-3.5 108.6-43.2 125.3-99.7l81.2-275c5-16.9-4.7-34.7-21.6-39.8s-34.7 4.7-39.8 21.6L443.5 247.1c-1.6 5.3-6.4 8.9-12 8.9c-7.9 0-13.8-7.3-12.2-15.1l36-170.3c3.7-17.3-7.4-34.3-24.7-37.9s-34.3 7.4-37.9 24.7L355.1 235.1c-2.6 12.2-13.3 20.9-25.8 20.9c-11.9 0-22.4-8-25.4-19.5l-57-212.8z"]
70572
+ icon: [576, 512, [128406], "f259", "M246.9 23.7C242.3 6.6 224.8-3.5 207.7 1.1s-27.2 22.1-22.6 39.2L238 237.8c2.5 9.2-4.5 18.2-14 18.2c-6.4 0-12-4.2-13.9-10.3L166.6 102.7c-5.1-16.9-23-26.4-39.9-21.3s-26.4 23-21.3 39.9l62.8 206.4c2.4 7.9-7.2 13.8-13.2 8.1L99.6 283c-16-15.2-41.3-14.6-56.6 1.4s-14.6 41.3 1.4 56.6L156.8 448c43.1 41.1 100.4 64 160 64h10.9 8.2c.1 0 .1-.1 .1-.1v0c0-.1 .1-.1 .1-.1c58.3-3.5 108.6-43.2 125.3-99.7l81.2-275c5-16.9-4.7-34.7-21.6-39.8s-34.7 4.7-39.8 21.6L443.5 247.1c-1.6 5.3-6.4 8.9-12 8.9c-7.9 0-13.8-7.3-12.2-15.1l36-170.3c3.7-17.3-7.4-34.3-24.7-37.9s-34.3 7.4-37.9 24.7L355.1 235.1c-2.6 12.2-13.3 20.9-25.8 20.9c-11.9 0-22.4-8-25.4-19.5l-57-212.8z"]
70271
70573
  };
70272
70574
  var faStopwatch = {
70273
70575
  prefix: 'fas',
@@ -71918,7 +72220,7 @@ var faEnvelopeOpen = {
71918
72220
  var faHandshakeSimpleSlash = {
71919
72221
  prefix: 'fas',
71920
72222
  iconName: 'handshake-simple-slash',
71921
- icon: [640, 512, ["handshake-alt-slash"], "e05f", "M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7l-135-105.8c-1.1-11.3-6.3-22.3-15.3-30.7l-134.2-123-23.4 18.2-26-20.3 77.2-60.1c7-5.4 17-4.2 22.5 2.8s4.2 17-2.8 22.5l-20.9 16.2L550.2 352H592c26.5 0 48-21.5 48-48V176c0-26.5-21.5-48-48-48H516h-4-.7l-3.9-2.5L434.8 79c-15.3-9.8-33.2-15-51.4-15c-21.8 0-43 7.5-60 21.2l-89.7 72.6-25.8-20.3 81.8-66.2c-11.6-4.9-24.1-7.4-36.8-7.4C234 64 215.7 69.6 200 80l-35.5 23.7L38.8 5.1zM0 176V304c0 26.5 21.5 48 48 48H156.2l91.4 83.4c19.6 17.9 49.9 16.5 67.8-3.1c5.5-6.1 9.2-13.2 11.1-20.6l17 15.6c19.5 17.9 49.9 16.6 67.8-2.9c.8-.8 1.5-1.7 2.2-2.6L41.2 128.5C17.9 131.8 0 151.8 0 176z"]
72223
+ icon: [640, 512, ["handshake-alt-slash"], "e05f", "M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7l-135-105.8c-1.1-11.3-6.3-22.3-15.3-30.7l-134.2-123-23.4 18.2-26-20.3 77.2-60.1c7-5.4 17-4.2 22.5 2.8s4.2 17-2.8 22.5l-20.9 16.2L550.2 352H592c26.5 0 48-21.5 48-48V176c0-26.5-21.5-48-48-48H516h-4-.7l-3.9-2.5L434.8 79c-15.3-9.8-33.2-15-51.4-15c-21.8 0-43 7.5-60 21.2l-89.7 72.6-25.8-20.3 81.8-66.2c-11.6-4.9-24.1-7.4-36.8-7.4C234 64 215.7 69.6 200 80l-35.5 23.7L38.8 5.1zM413.6 421.9L41.2 128.5C17.9 131.8 0 151.8 0 176V304c0 26.5 21.5 48 48 48H156.2l91.4 83.4c19.6 17.9 49.9 16.5 67.8-3.1c5.5-6.1 9.2-13.2 11.1-20.6l17 15.6c19.5 17.9 49.9 16.6 67.8-2.9c.8-.8 1.5-1.7 2.2-2.6z"]
71922
72224
  };
71923
72225
  var faHandshakeAltSlash = faHandshakeSimpleSlash;
71924
72226
  var faMattressPillow = {
@@ -72192,7 +72494,7 @@ var faHouseChimneyUser = {
72192
72494
  var faHandHoldingHeart = {
72193
72495
  prefix: 'fas',
72194
72496
  iconName: 'hand-holding-heart',
72195
- icon: [576, 512, [], "f4be", "M148 76.6C148 34.3 182.3 0 224.6 0c20.3 0 39.8 8.1 54.1 22.4l9.3 9.3 9.3-9.3C311.6 8.1 331.1 0 351.4 0C393.7 0 428 34.3 428 76.6c0 20.3-8.1 39.8-22.4 54.1L302.1 234.1c-7.8 7.8-20.5 7.8-28.3 0L170.4 130.7C156.1 116.4 148 96.9 148 76.6zM568.2 336.3c13.1 17.8 9.3 42.8-8.5 55.9L433.1 485.5c-23.4 17.2-51.6 26.5-80.7 26.5H192 32c-17.7 0-32-14.3-32-32V416c0-17.7 14.3-32 32-32H68.8l44.9-36c22.7-18.2 50.9-28 80-28H272h16 64c17.7 0 32 14.3 32 32s-14.3 32-32 32H288 272c-8.8 0-16 7.2-16 16s7.2 16 16 16H392.6l119.7-88.2c17.8-13.1 42.8-9.3 55.9 8.5zM193.6 384l0 0-.9 0c.3 0 .6 0 .9 0z"]
72497
+ icon: [576, 512, [], "f4be", "M163.9 136.9c-29.4-29.8-29.4-78.2 0-108s77-29.8 106.4 0l17.7 18 17.7-18c29.4-29.8 77-29.8 106.4 0s29.4 78.2 0 108L310.5 240.1c-6.2 6.3-14.3 9.4-22.5 9.4s-16.3-3.1-22.5-9.4L163.9 136.9zM568.2 336.3c13.1 17.8 9.3 42.8-8.5 55.9L433.1 485.5c-23.4 17.2-51.6 26.5-80.7 26.5H192 32c-17.7 0-32-14.3-32-32V416c0-17.7 14.3-32 32-32H68.8l44.9-36c22.7-18.2 50.9-28 80-28H272h16 64c17.7 0 32 14.3 32 32s-14.3 32-32 32H288 272c-8.8 0-16 7.2-16 16s7.2 16 16 16H392.6l119.7-88.2c17.8-13.1 42.8-9.3 55.9 8.5zM193.6 384l0 0-.9 0c.3 0 .6 0 .9 0z"]
72196
72498
  };
72197
72499
  var faPuzzlePiece = {
72198
72500
  prefix: 'fas',
@@ -72695,7 +72997,7 @@ var faPlaneDeparture = {
72695
72997
  var faHandshakeSlash = {
72696
72998
  prefix: 'fas',
72697
72999
  iconName: 'handshake-slash',
72698
- icon: [640, 512, [], "e060", "M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7l-135-105.8c-1.1-11.3-6.3-22.3-15.3-30.7l-134.2-123-23.4 18.2-26-20.3 77.2-60.1c7-5.4 17-4.2 22.5 2.8s4.2 17-2.8 22.5l-20.9 16.2L512 316.8V128h-.7l-3.9-2.5L434.8 79c-15.3-9.8-33.2-15-51.4-15c-21.8 0-43 7.5-60 21.2l-89.7 72.6-25.8-20.3 81.8-66.2c-11.6-4.9-24.1-7.4-36.8-7.4C234 64 215.7 69.6 200 80l-35.5 23.7L38.8 5.1zM96 171.6L40.6 128H0V352c0 17.7 14.3 32 32 32H64c17.7 0 32-14.3 32-32V171.6zM413.6 421.9L128 196.9V352h28.2l91.4 83.4c19.6 17.9 49.9 16.5 67.8-3.1c5.5-6.1 9.2-13.2 11.1-20.6l17 15.6c19.5 17.9 49.9 16.6 67.8-2.9c.8-.8 1.5-1.7 2.2-2.6zM48 320a16 16 0 1 1 0 32 16 16 0 1 1 0-32zM544 128V352c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V128H544zm32 208a16 16 0 1 1 32 0 16 16 0 1 1 -32 0z"]
73000
+ icon: [640, 512, [], "e060", "M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7l-135-105.8c-1.1-11.3-6.3-22.3-15.3-30.7l-134.2-123-23.4 18.2-26-20.3 77.2-60.1c7-5.4 17-4.2 22.5 2.8s4.2 17-2.8 22.5l-20.9 16.2L512 316.8V128h-.7l-3.9-2.5L434.8 79c-15.3-9.8-33.2-15-51.4-15c-21.8 0-43 7.5-60 21.2l-89.7 72.6-25.8-20.3 81.8-66.2c-11.6-4.9-24.1-7.4-36.8-7.4C234 64 215.7 69.6 200 80l-35.5 23.7L38.8 5.1zM413.6 421.9L128 196.8V352h28.2l91.4 83.4c19.6 17.9 49.9 16.5 67.8-3.1c5.5-6.1 9.2-13.2 11.1-20.6l17 15.6c19.5 17.9 49.9 16.6 67.8-2.9c.8-.8 1.5-1.7 2.2-2.6zM96 171.6L40.6 128H16c-8.8 0-16 7.2-16 16V352c0 17.7 14.3 32 32 32H64c17.7 0 32-14.3 32-32V171.6zM48 320a16 16 0 1 1 0 32 16 16 0 1 1 0-32zM544 128V352c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V144c0-8.8-7.2-16-16-16H544zm32 208a16 16 0 1 1 32 0 16 16 0 1 1 -32 0z"]
72699
73001
  };
72700
73002
  var faBookBookmark = {
72701
73003
  prefix: 'fas',
@@ -73000,7 +73302,7 @@ var faGrinSquint = faFaceGrinSquint;
73000
73302
  var faHandHoldingDollar = {
73001
73303
  prefix: 'fas',
73002
73304
  iconName: 'hand-holding-dollar',
73003
- icon: [576, 512, ["hand-holding-usd"], "f4c0", "M312 24V34.5c6.4 1.2 12.6 2.7 18.2 4.2c12.8 3.4 20.4 16.6 17 29.4s-16.6 20.4-29.4 17c-10.9-2.9-21.1-4.9-30.2-5c-7.3-.1-14.7 1.7-19.4 4.4c-2.1 1.3-3.1 2.4-3.5 3c-.3 .5-.7 1.2-.7 2.8c0 .3 0 .5 0 .6c.2 .2 .9 1.2 3.3 2.6c5.8 3.5 14.4 6.2 27.4 10.1l.9 .3 0 0c11.1 3.3 25.9 7.8 37.9 15.3c13.7 8.6 26.1 22.9 26.4 44.9c.3 22.5-11.4 38.9-26.7 48.5c-6.7 4.1-13.9 7-21.3 8.8V232c0 13.3-10.7 24-24 24s-24-10.7-24-24V220.6c-9.5-2.3-18.2-5.3-25.6-7.8c-2.1-.7-4.1-1.4-6-2c-12.6-4.2-19.4-17.8-15.2-30.4s17.8-19.4 30.4-15.2c2.6 .9 5 1.7 7.3 2.5c13.6 4.6 23.4 7.9 33.9 8.3c8 .3 15.1-1.6 19.2-4.1c1.9-1.2 2.8-2.2 3.2-2.9c.4-.6 .9-1.8 .8-4.1l0-.2c0-1 0-2.1-4-4.6c-5.7-3.6-14.3-6.4-27.1-10.3l-1.9-.6c-10.8-3.2-25-7.5-36.4-14.4c-13.5-8.1-26.5-22-26.6-44.1c-.1-22.9 12.9-38.6 27.7-47.4c6.4-3.8 13.3-6.4 20.2-8.2V24c0-13.3 10.7-24 24-24s24 10.7 24 24zM568.2 336.3c13.1 17.8 9.3 42.8-8.5 55.9L433.1 485.5c-23.4 17.2-51.6 26.5-80.7 26.5H192 32c-17.7 0-32-14.3-32-32V416c0-17.7 14.3-32 32-32H68.8l44.9-36c22.7-18.2 50.9-28 80-28H272h16 64c17.7 0 32 14.3 32 32s-14.3 32-32 32H288 272c-8.8 0-16 7.2-16 16s7.2 16 16 16H392.6l119.7-88.2c17.8-13.1 42.8-9.3 55.9 8.5zM193.6 384l0 0-.9 0c.3 0 .6 0 .9 0z"]
73305
+ icon: [576, 512, ["hand-holding-usd"], "f4c0", "M312 24V34.5c6.4 1.2 12.6 2.7 18.2 4.2c12.8 3.4 20.4 16.6 17 29.4s-16.6 20.4-29.4 17c-10.9-2.9-21.1-4.9-30.2-5c-7.3-.1-14.7 1.7-19.4 4.4c-2.1 1.3-3.1 2.4-3.5 3c-.3 .5-.7 1.2-.7 2.8c0 .3 0 .5 0 .6c.2 .2 .9 1.2 3.3 2.6c5.8 3.5 14.4 6.2 27.4 10.1l.9 .3c11.1 3.3 25.9 7.8 37.9 15.3c13.7 8.6 26.1 22.9 26.4 44.9c.3 22.5-11.4 38.9-26.7 48.5c-6.7 4.1-13.9 7-21.3 8.8V232c0 13.3-10.7 24-24 24s-24-10.7-24-24V220.6c-9.5-2.3-18.2-5.3-25.6-7.8c-2.1-.7-4.1-1.4-6-2c-12.6-4.2-19.4-17.8-15.2-30.4s17.8-19.4 30.4-15.2c2.6 .9 5 1.7 7.3 2.5c13.6 4.6 23.4 7.9 33.9 8.3c8 .3 15.1-1.6 19.2-4.1c1.9-1.2 2.8-2.2 3.2-2.9c.4-.6 .9-1.8 .8-4.1l0-.2c0-1 0-2.1-4-4.6c-5.7-3.6-14.3-6.4-27.1-10.3l-1.9-.6c-10.8-3.2-25-7.5-36.4-14.4c-13.5-8.1-26.5-22-26.6-44.1c-.1-22.9 12.9-38.6 27.7-47.4c6.4-3.8 13.3-6.4 20.2-8.2V24c0-13.3 10.7-24 24-24s24 10.7 24 24zM568.2 336.3c13.1 17.8 9.3 42.8-8.5 55.9L433.1 485.5c-23.4 17.2-51.6 26.5-80.7 26.5H192 32c-17.7 0-32-14.3-32-32V416c0-17.7 14.3-32 32-32H68.8l44.9-36c22.7-18.2 50.9-28 80-28H272h16 64c17.7 0 32 14.3 32 32s-14.3 32-32 32H288 272c-8.8 0-16 7.2-16 16s7.2 16 16 16H392.6l119.7-88.2c17.8-13.1 42.8-9.3 55.9 8.5zM193.6 384l0 0-.9 0c.3 0 .6 0 .9 0z"]
73004
73306
  };
73005
73307
  var faHandHoldingUsd = faHandHoldingDollar;
73006
73308
  var faBacterium = {
@@ -75082,7 +75384,7 @@ var faProjectDiagram = faDiagramProject;
75082
75384
  var faCopy = {
75083
75385
  prefix: 'fas',
75084
75386
  iconName: 'copy',
75085
- icon: [512, 512, [], "f0c5", "M272 0H396.1c12.7 0 24.9 5.1 33.9 14.1l67.9 67.9c9 9 14.1 21.2 14.1 33.9V336c0 26.5-21.5 48-48 48H272c-26.5 0-48-21.5-48-48V48c0-26.5 21.5-48 48-48zM48 128H192v64H64V448H256V416h64v48c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V176c0-26.5 21.5-48 48-48z"]
75387
+ icon: [448, 512, [], "f0c5", "M208 0H332.1c12.7 0 24.9 5.1 33.9 14.1l67.9 67.9c9 9 14.1 21.2 14.1 33.9V336c0 26.5-21.5 48-48 48H208c-26.5 0-48-21.5-48-48V48c0-26.5 21.5-48 48-48zM48 128h80v64H64V448H256V416h64v48c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V176c0-26.5 21.5-48 48-48z"]
75086
75388
  };
75087
75389
  var faVolumeXmark = {
75088
75390
  prefix: 'fas',
@@ -76532,7 +76834,7 @@ var faKipSign = {
76532
76834
  var faHandPointLeft = {
76533
76835
  prefix: 'fas',
76534
76836
  iconName: 'hand-point-left',
76535
- icon: [512, 512, [], "f0a5", "M32 96C14.3 96 0 110.3 0 128s14.3 32 32 32l208 0V96L32 96zM192 288c-17.7 0-32 14.3-32 32s14.3 32 32 32h64c17.7 0 32-14.3 32-32s-14.3-32-32-32H192zm-64-64c0 17.7 14.3 32 32 32h48c17.7 0 32-14.3 32-32s-14.3-32-32-32H160c-17.7 0-32 14.3-32 32zm96 160c-17.7 0-32 14.3-32 32s14.3 32 32 32h64c17.7 0 32-14.3 32-32s-14.3-32-32-32H224zm88-96l-.6 0c5.4 9.4 8.6 20.3 8.6 32c0 13.2-4 25.4-10.8 35.6c24.9 8.7 42.8 32.5 42.8 60.4c0 11.7-3.1 22.6-8.6 32H352c88.4 0 160-71.6 160-160V226.3c0-42.4-16.9-83.1-46.9-113.1l-11.6-11.6C429.5 77.5 396.9 64 363 64l-27 0c-35.3 0-64 28.7-64 64v88c0 22.1 17.9 40 40 40s40-17.9 40-40V160c0-8.8 7.2-16 16-16s16 7.2 16 16v56c0 39.8-32.2 72-72 72z"]
76837
+ icon: [512, 512, [], "f0a5", "M32 96C14.3 96 0 110.3 0 128s14.3 32 32 32l208 0 0-64L32 96zM192 288c-17.7 0-32 14.3-32 32s14.3 32 32 32l64 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-64 0zm-64-64c0 17.7 14.3 32 32 32l48 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-48 0c-17.7 0-32 14.3-32 32zm96 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l64 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-64 0zm88-96l-.6 0c5.4 9.4 8.6 20.3 8.6 32c0 13.2-4 25.4-10.8 35.6c24.9 8.7 42.8 32.5 42.8 60.4c0 11.7-3.1 22.6-8.6 32l8.6 0c88.4 0 160-71.6 160-160l0-61.7c0-42.4-16.9-83.1-46.9-113.1l-11.6-11.6C429.5 77.5 396.9 64 363 64l-27 0c-35.3 0-64 28.7-64 64l0 88c0 22.1 17.9 40 40 40s40-17.9 40-40l0-56c0-8.8 7.2-16 16-16s16 7.2 16 16l0 56c0 39.8-32.2 72-72 72z"]
76536
76838
  };
76537
76839
  var faHandshakeSimple = {
76538
76840
  prefix: 'fas',