angular-three 1.7.2 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,6 +6,7 @@ import * as THREE from 'three';
6
6
  import { DOCUMENT, NgForOf, NgIf } from '@angular/common';
7
7
  import { RxState, selectSlice } from '@rx-angular/state';
8
8
  import { __classPrivateFieldGet } from 'tslib';
9
+ import { RouterOutlet } from '@angular/router';
9
10
 
10
11
  const idCache = {};
11
12
  function makeId(event) {
@@ -1962,6 +1963,7 @@ class NgtRendererFactory {
1962
1963
  this.compoundPrefixes = inject(NGT_COMPOUND_PREFIXES);
1963
1964
  this.document = inject(DOCUMENT);
1964
1965
  this.rendererMap = new Map();
1966
+ this.routedSet = new Set();
1965
1967
  this.portals = [];
1966
1968
  this.rendererStore = new NgtRendererStore({
1967
1969
  store: this.store,
@@ -1975,9 +1977,14 @@ class NgtRendererFactory {
1975
1977
  const delegateRenderer = this.delegateRendererFactory.createRenderer(hostElement, type);
1976
1978
  if (!type)
1977
1979
  return delegateRenderer;
1980
+ if (type['type']['isRoutedScene']) {
1981
+ this.routedSet.add(type.id);
1982
+ }
1978
1983
  let renderer = this.rendererMap.get(type.id);
1979
1984
  if (!renderer) {
1980
- renderer = new NgtRenderer(delegateRenderer, this.rendererStore, this.catalogue, !hostElement);
1985
+ renderer = new NgtRenderer(delegateRenderer, this.rendererStore, this.catalogue,
1986
+ // setting root scene if there's no routed scene OR this component is the routed Scene
1987
+ !hostElement && (this.routedSet.size === 0 || this.routedSet.has(type.id)));
1981
1988
  this.rendererMap.set(type.id, renderer);
1982
1989
  }
1983
1990
  return renderer;
@@ -3011,9 +3018,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.3", ngImpor
3011
3018
  args: ['portalContentAnchor', { read: ViewContainerRef, static: true }]
3012
3019
  }] } });
3013
3020
 
3021
+ class NgtRoutedScene {
3022
+ }
3023
+ NgtRoutedScene.isRoutedScene = true;
3024
+ NgtRoutedScene.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: NgtRoutedScene, deps: [], target: i0.ɵɵFactoryTarget.Component });
3025
+ NgtRoutedScene.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.3", type: NgtRoutedScene, isStandalone: true, selector: "ngt-routed-scene", ngImport: i0, template: `<router-outlet />`, isInline: true, dependencies: [{ kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
3026
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: NgtRoutedScene, decorators: [{
3027
+ type: Component,
3028
+ args: [{
3029
+ standalone: true,
3030
+ selector: 'ngt-routed-scene',
3031
+ template: `<router-outlet />`,
3032
+ imports: [RouterOutlet],
3033
+ }]
3034
+ }] });
3035
+
3014
3036
  /**
3015
3037
  * Generated bundle index. Do not edit.
3016
3038
  */
3017
3039
 
3018
- export { NGT_CATALOGUE, NgtArgs, NgtCanvas, NgtPortal, NgtPortalBeforeRender, NgtPortalContent, NgtPush, NgtRepeat, NgtRxStore, NgtStore, addAfterEffect, addEffect, addTail, applyProps, checkNeedsUpdate, checkUpdate, createAttachFunction, createLoop, createRunInContext, extend, flushGlobalEffects, getLocalState, injectBeforeRender, injectNgtDestroy, injectNgtLoader, injectNgtRef, invalidateInstance, is, makeDefaultCamera, makeDefaultRenderer, makeDpr, makeId, makeObjectGraph, prepare, rootStateMap, safeDetectChanges, startWithUndefined, tapEffect, updateCamera };
3040
+ export { NGT_CATALOGUE, NgtArgs, NgtCanvas, NgtPortal, NgtPortalBeforeRender, NgtPortalContent, NgtPush, NgtRepeat, NgtRoutedScene, NgtRxStore, NgtStore, addAfterEffect, addEffect, addTail, applyProps, checkNeedsUpdate, checkUpdate, createAttachFunction, createLoop, createRunInContext, extend, flushGlobalEffects, getLocalState, injectBeforeRender, injectNgtDestroy, injectNgtLoader, injectNgtRef, invalidateInstance, is, makeDefaultCamera, makeDefaultRenderer, makeDpr, makeId, makeObjectGraph, prepare, rootStateMap, safeDetectChanges, startWithUndefined, tapEffect, updateCamera };
3019
3041
  //# sourceMappingURL=angular-three.mjs.map