angular-three 1.5.0 → 1.6.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.
- package/esm2020/index.mjs +2 -2
- package/esm2020/lib/di/run-in-context.mjs +21 -0
- package/esm2020/lib/renderer/renderer.mjs +3 -10
- package/esm2020/lib/renderer/state.mjs +15 -15
- package/fesm2015/angular-three.mjs +38 -53
- package/fesm2015/angular-three.mjs.map +1 -1
- package/fesm2020/angular-three.mjs +37 -52
- package/fesm2020/angular-three.mjs.map +1 -1
- package/index.d.ts +1 -1
- package/lib/di/run-in-context.d.ts +1 -0
- package/lib/renderer/state.d.ts +0 -1
- package/package.json +1 -1
- package/plugin/package.json +1 -1
- package/esm2020/lib/directives/ref.mjs +0 -31
- package/lib/directives/ref.d.ts +0 -11
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { ElementRef, Injectable, inject, InjectionToken, ViewContainerRef, TemplateRef, Directive, Input, EventEmitter, getDebugNode, RendererFactory2, ChangeDetectorRef, makeEnvironmentProviders, EnvironmentInjector, createEnvironmentInjector, Component, HostBinding, Output, ViewChild, Pipe, SkipSelf, ContentChild } from '@angular/core';
|
|
2
|
+
import { ElementRef, Injectable, inject, InjectionToken, ViewContainerRef, TemplateRef, Directive, Input, EventEmitter, getDebugNode, RendererFactory2, ChangeDetectorRef, makeEnvironmentProviders, EnvironmentInjector, createEnvironmentInjector, Component, HostBinding, Output, ViewChild, Injector, Pipe, SkipSelf, ContentChild } from '@angular/core';
|
|
3
3
|
import { provideNgxResizeOptions, NgxResize } from 'ngx-resize';
|
|
4
4
|
import { isObservable, of, map, from, tap, retry, catchError, share, ReplaySubject, switchMap, forkJoin, take, BehaviorSubject, startWith, combineLatest, filter, distinctUntilChanged, takeUntil, merge } from 'rxjs';
|
|
5
5
|
import * as THREE from 'three';
|
|
@@ -973,34 +973,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.3", ngImpor
|
|
|
973
973
|
type: Input
|
|
974
974
|
}] } });
|
|
975
975
|
|
|
976
|
-
class NgtRef extends NgtCommonDirective {
|
|
977
|
-
set ref(ref) {
|
|
978
|
-
if (!ref || ref == null)
|
|
979
|
-
return;
|
|
980
|
-
this.injected = false;
|
|
981
|
-
this.injectedRef = ref;
|
|
982
|
-
this.createView();
|
|
983
|
-
}
|
|
984
|
-
get ref() {
|
|
985
|
-
if (this.validate()) {
|
|
986
|
-
this.injected = true;
|
|
987
|
-
return this.injectedRef;
|
|
988
|
-
}
|
|
989
|
-
return null;
|
|
990
|
-
}
|
|
991
|
-
validate() {
|
|
992
|
-
return !this.injected && !!this.injectedRef && !this.injectedRef.nativeElement;
|
|
993
|
-
}
|
|
994
|
-
}
|
|
995
|
-
NgtRef.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: NgtRef, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
996
|
-
NgtRef.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.3", type: NgtRef, isStandalone: true, selector: "[ref]", inputs: { ref: "ref" }, usesInheritance: true, ngImport: i0 });
|
|
997
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: NgtRef, decorators: [{
|
|
998
|
-
type: Directive,
|
|
999
|
-
args: [{ selector: '[ref]', standalone: true }]
|
|
1000
|
-
}], propDecorators: { ref: [{
|
|
1001
|
-
type: Input
|
|
1002
|
-
}] } });
|
|
1003
|
-
|
|
1004
976
|
function releaseInternalPointerCapture(capturedMap, obj, captures, pointerId) {
|
|
1005
977
|
const captureData = captures.get(obj);
|
|
1006
978
|
if (captureData) {
|
|
@@ -1695,24 +1667,25 @@ class NgtRendererStore {
|
|
|
1695
1667
|
applyProperty(node, name, value) {
|
|
1696
1668
|
if (node.__ngt_renderer__[3 /* NgtRendererClassId.destroyed */])
|
|
1697
1669
|
return;
|
|
1698
|
-
//
|
|
1699
|
-
|
|
1700
|
-
|
|
1701
|
-
|
|
1702
|
-
|
|
1703
|
-
|
|
1704
|
-
// }
|
|
1670
|
+
// [ref]
|
|
1671
|
+
if (name === SPECIAL_PROPERTIES.REF && is.ref(value)) {
|
|
1672
|
+
node.__ngt_renderer__[11 /* NgtRendererClassId.ref */] = value;
|
|
1673
|
+
value.nativeElement = node;
|
|
1674
|
+
return;
|
|
1675
|
+
}
|
|
1705
1676
|
const parent = getLocalState(node).parent || node.__ngt_renderer__[1 /* NgtRendererClassId.parent */];
|
|
1706
|
-
// rawValue
|
|
1677
|
+
// [rawValue]
|
|
1707
1678
|
if (getLocalState(node).isRaw && name === SPECIAL_PROPERTIES.VALUE) {
|
|
1708
1679
|
node.__ngt_renderer__[10 /* NgtRendererClassId.rawValue */] = value;
|
|
1709
|
-
|
|
1680
|
+
if (parent)
|
|
1681
|
+
attachThreeChild(parent, node);
|
|
1710
1682
|
return;
|
|
1711
1683
|
}
|
|
1712
|
-
// attach
|
|
1684
|
+
// [attach]
|
|
1713
1685
|
if (name === SPECIAL_PROPERTIES.ATTACH) {
|
|
1714
1686
|
getLocalState(node).attach = Array.isArray(value) ? value.map((v) => v.toString()) : value;
|
|
1715
|
-
|
|
1687
|
+
if (parent)
|
|
1688
|
+
attachThreeChild(parent, node);
|
|
1716
1689
|
return;
|
|
1717
1690
|
}
|
|
1718
1691
|
const compound = node.__ngt_renderer__[4 /* NgtRendererClassId.compound */];
|
|
@@ -1777,11 +1750,10 @@ class NgtRendererStore {
|
|
|
1777
1750
|
return null;
|
|
1778
1751
|
}
|
|
1779
1752
|
getCreationState() {
|
|
1780
|
-
var _a
|
|
1753
|
+
var _a;
|
|
1781
1754
|
const injectedArgs = ((_a = this.firstNonInjectedDirective(NgtArgs)) === null || _a === void 0 ? void 0 : _a.args) || [];
|
|
1782
|
-
const injectedRef = ((_b = this.firstNonInjectedDirective(NgtRef)) === null || _b === void 0 ? void 0 : _b.ref) || null;
|
|
1783
1755
|
const store = this.tryGetPortalStore();
|
|
1784
|
-
return { injectedArgs,
|
|
1756
|
+
return { injectedArgs, store };
|
|
1785
1757
|
}
|
|
1786
1758
|
destroy(node, parent) {
|
|
1787
1759
|
const state = node.__ngt_renderer__;
|
|
@@ -1998,7 +1970,7 @@ class NgtRenderer {
|
|
|
1998
1970
|
if (name === SPECIAL_DOM_TAG.NGT_VALUE) {
|
|
1999
1971
|
return this.store.createNode('three', Object.assign({ __ngt_renderer__: { rawValue: undefined } }, { __ngt__: { isRaw: true } }));
|
|
2000
1972
|
}
|
|
2001
|
-
const { injectedArgs,
|
|
1973
|
+
const { injectedArgs, store } = this.store.getCreationState();
|
|
2002
1974
|
// handle primitive
|
|
2003
1975
|
if (name === SPECIAL_DOM_TAG.NGT_PRIMITIVE) {
|
|
2004
1976
|
if (!injectedArgs[0])
|
|
@@ -2011,10 +1983,7 @@ class NgtRenderer {
|
|
|
2011
1983
|
}
|
|
2012
1984
|
if (!localState.store)
|
|
2013
1985
|
localState.store = store;
|
|
2014
|
-
|
|
2015
|
-
if (injectedRef)
|
|
2016
|
-
injectedRef.nativeElement = primitiveNode;
|
|
2017
|
-
return primitiveNode;
|
|
1986
|
+
return this.store.createNode('three', object);
|
|
2018
1987
|
}
|
|
2019
1988
|
const threeTag = name.startsWith('ngt') ? name.slice(4) : name;
|
|
2020
1989
|
const threeName = kebabToPascal(threeTag);
|
|
@@ -2030,10 +1999,6 @@ class NgtRenderer {
|
|
|
2030
1999
|
else if (is.material(instance)) {
|
|
2031
2000
|
localState.attach = ['material'];
|
|
2032
2001
|
}
|
|
2033
|
-
if (injectedRef) {
|
|
2034
|
-
injectedRef.nativeElement = node;
|
|
2035
|
-
node.__ngt_renderer__[11 /* NgtRendererClassId.ref */] = injectedRef;
|
|
2036
|
-
}
|
|
2037
2002
|
return node;
|
|
2038
2003
|
}
|
|
2039
2004
|
const domNode = this.store.createNode('dom', element);
|
|
@@ -2649,6 +2614,26 @@ function injectNgtRef(initialValue = null) {
|
|
|
2649
2614
|
return Object.assign(ref, { subscribe, $, children$, useCDR: (cdr) => void cdRefs.push(cdr) });
|
|
2650
2615
|
}
|
|
2651
2616
|
|
|
2617
|
+
function createRunInContext() {
|
|
2618
|
+
const nodeInjector = inject(Injector);
|
|
2619
|
+
const envInjector = inject(EnvironmentInjector);
|
|
2620
|
+
const originalGet = envInjector.get;
|
|
2621
|
+
return (cb) => {
|
|
2622
|
+
envInjector.get = (...args) => {
|
|
2623
|
+
try {
|
|
2624
|
+
const fromNodeInjector = nodeInjector.get(...args);
|
|
2625
|
+
if (fromNodeInjector)
|
|
2626
|
+
return fromNodeInjector;
|
|
2627
|
+
return originalGet(...args);
|
|
2628
|
+
}
|
|
2629
|
+
catch (e) {
|
|
2630
|
+
return originalGet(...args);
|
|
2631
|
+
}
|
|
2632
|
+
};
|
|
2633
|
+
return envInjector.runInContext(cb);
|
|
2634
|
+
};
|
|
2635
|
+
}
|
|
2636
|
+
|
|
2652
2637
|
class NgtRepeat extends NgForOf {
|
|
2653
2638
|
set ngForRepeat(count) {
|
|
2654
2639
|
this.ngForOf = Number.isInteger(count) ? Array.from({ length: count }, (_, i) => i) : [];
|
|
@@ -2928,5 +2913,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.3", ngImpor
|
|
|
2928
2913
|
* Generated bundle index. Do not edit.
|
|
2929
2914
|
*/
|
|
2930
2915
|
|
|
2931
|
-
export { NGT_CATALOGUE, NgtArgs, NgtCanvas, NgtPortal, NgtPortalBeforeRender, NgtPortalContent, NgtPush,
|
|
2916
|
+
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 };
|
|
2932
2917
|
//# sourceMappingURL=angular-three.mjs.map
|