Skip to content

Commit 1c98ed6

Browse files
committed
feat: revert *ref
1 parent c00b134 commit 1c98ed6

File tree

4 files changed

+13
-43
lines changed

4 files changed

+13
-43
lines changed

libs/angular-three/src/index.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ export * from './lib/di/catalogue';
44
export * from './lib/di/destroy';
55
export * from './lib/di/ref';
66
export * from './lib/directives/args';
7-
export * from './lib/directives/ref';
87
export * from './lib/directives/repeat';
98
export * from './lib/loader';
109
export * from './lib/loop';

libs/angular-three/src/lib/directives/ref.ts

Lines changed: 0 additions & 27 deletions
This file was deleted.

libs/angular-three/src/lib/renderer/renderer.ts

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ export class NgtRenderer implements Renderer2 {
105105
);
106106
}
107107

108-
const { injectedArgs, injectedRef, store } = this.store.getCreationState();
108+
const { injectedArgs, store } = this.store.getCreationState();
109109

110110
// handle primitive
111111
if (name === SPECIAL_DOM_TAG.NGT_PRIMITIVE) {
@@ -117,9 +117,7 @@ export class NgtRenderer implements Renderer2 {
117117
localState = getLocalState(object);
118118
}
119119
if (!localState.store) localState.store = store;
120-
const primitiveNode = this.store.createNode('three', object);
121-
if (injectedRef) injectedRef.nativeElement = primitiveNode;
122-
return primitiveNode;
120+
return this.store.createNode('three', object);
123121
}
124122

125123
const threeTag = name.startsWith('ngt') ? name.slice(4) : name;
@@ -135,12 +133,6 @@ export class NgtRenderer implements Renderer2 {
135133
} else if (is.material(instance)) {
136134
localState.attach = ['material'];
137135
}
138-
139-
if (injectedRef) {
140-
injectedRef.nativeElement = node;
141-
node.__ngt_renderer__[NgtRendererClassId.ref] = injectedRef;
142-
}
143-
144136
return node;
145137
}
146138

libs/angular-three/src/lib/renderer/state.ts

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import { ChangeDetectorRef, getDebugNode, Injector, Type } from '@angular/core';
22
import { NgtArgs } from '../directives/args';
33
import { NgtCommonDirective } from '../directives/common';
4-
import { NgtRef } from '../directives/ref';
54
import { NgtStore } from '../stores/store';
65
import type { NgtAnyRecord } from '../types';
76
import { applyProps } from '../utils/apply-props';
87
import { getLocalState } from '../utils/instance';
8+
import { is } from '../utils/is';
99
import { NgtCompoundClassId, NgtQueueOpClassId, NgtRendererClassId } from './enums';
1010
import { attachThreeChild, removeThreeChild, SPECIAL_PROPERTIES } from './utils';
1111

@@ -210,16 +210,23 @@ export class NgtRendererStore {
210210
applyProperty(node: NgtRendererNode, name: string, value: any) {
211211
if (node.__ngt_renderer__[NgtRendererClassId.destroyed]) return;
212212

213+
// [ref]
214+
if (name === SPECIAL_PROPERTIES.REF && is.ref(value)) {
215+
node.__ngt_renderer__[NgtRendererClassId.ref] = value;
216+
value.nativeElement = node;
217+
return;
218+
}
219+
213220
const parent = getLocalState(node).parent || node.__ngt_renderer__[NgtRendererClassId.parent];
214221

215-
// rawValue
222+
// [rawValue]
216223
if (getLocalState(node).isRaw && name === SPECIAL_PROPERTIES.VALUE) {
217224
node.__ngt_renderer__[NgtRendererClassId.rawValue] = value;
218225
if (parent) attachThreeChild(parent, node);
219226
return;
220227
}
221228

222-
// attach
229+
// [attach]
223230
if (name === SPECIAL_PROPERTIES.ATTACH) {
224231
getLocalState(node).attach = Array.isArray(value) ? value.map((v) => v.toString()) : value;
225232
if (parent) attachThreeChild(parent, node);
@@ -312,9 +319,8 @@ export class NgtRendererStore {
312319

313320
getCreationState() {
314321
const injectedArgs = this.firstNonInjectedDirective(NgtArgs)?.args || [];
315-
const injectedRef = this.firstNonInjectedDirective(NgtRef)?.ref || null;
316322
const store = this.tryGetPortalStore();
317-
return { injectedArgs, injectedRef, store };
323+
return { injectedArgs, store };
318324
}
319325

320326
destroy(node: NgtRendererNode, parent?: NgtRendererNode) {

0 commit comments

Comments
 (0)