angular-three 2.0.0-beta.288 → 2.0.0-beta.289
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.
|
@@ -5,14 +5,9 @@ import * as i0 from "@angular/core";
|
|
|
5
5
|
export class NgtSelection {
|
|
6
6
|
constructor() {
|
|
7
7
|
this.enabled = input(true, { alias: 'ngtSelection', transform: booleanAttribute });
|
|
8
|
-
this.
|
|
9
|
-
this.
|
|
10
|
-
|
|
11
|
-
select(...objects) {
|
|
12
|
-
this.selection.update((prev) => [...prev, ...objects]);
|
|
13
|
-
}
|
|
14
|
-
unselect(...objects) {
|
|
15
|
-
this.selection.update((prev) => prev.filter((selected) => !objects.includes(selected)));
|
|
8
|
+
this.source = signal([]);
|
|
9
|
+
this.selected = this.source.asReadonly();
|
|
10
|
+
this.update = this.source.update.bind(this.source);
|
|
16
11
|
}
|
|
17
12
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: NgtSelection, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
18
13
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.1.3", type: NgtSelection, isStandalone: true, selector: "[ngtSelection]", inputs: { enabled: { classPropertyName: "enabled", publicName: "ngtSelection", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
|
|
@@ -24,12 +19,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.3", ngImpor
|
|
|
24
19
|
export class NgtSelect {
|
|
25
20
|
constructor() {
|
|
26
21
|
this.enabled = input(false, { transform: booleanAttribute, alias: 'ngtSelect' });
|
|
27
|
-
|
|
22
|
+
const elementRef = inject(ElementRef);
|
|
28
23
|
const selection = inject(NgtSelection);
|
|
29
24
|
const autoEffect = injectAutoEffect();
|
|
30
25
|
afterNextRender(() => {
|
|
31
26
|
autoEffect(() => {
|
|
32
|
-
const host =
|
|
27
|
+
const host = elementRef.nativeElement;
|
|
33
28
|
if (!host)
|
|
34
29
|
return;
|
|
35
30
|
const localState = getLocalState(host);
|
|
@@ -40,10 +35,10 @@ export class NgtSelect {
|
|
|
40
35
|
return;
|
|
41
36
|
// ngt-mesh[ngtSelect]
|
|
42
37
|
if (host.type === 'Mesh') {
|
|
43
|
-
selection.
|
|
44
|
-
return () => selection.
|
|
38
|
+
selection.update((prev) => [...prev, host]);
|
|
39
|
+
return () => selection.update((prev) => prev.filter((el) => el !== host));
|
|
45
40
|
}
|
|
46
|
-
const [collection] = [untracked(selection.
|
|
41
|
+
const [collection] = [untracked(selection.selected), localState.objects()];
|
|
47
42
|
let changed = false;
|
|
48
43
|
const current = [];
|
|
49
44
|
host.traverse((child) => {
|
|
@@ -53,9 +48,9 @@ export class NgtSelect {
|
|
|
53
48
|
});
|
|
54
49
|
if (!changed)
|
|
55
50
|
return;
|
|
56
|
-
selection.
|
|
51
|
+
selection.update((prev) => [...prev, ...current]);
|
|
57
52
|
return () => {
|
|
58
|
-
selection.
|
|
53
|
+
selection.update((prev) => prev.filter((el) => !current.includes(el)));
|
|
59
54
|
};
|
|
60
55
|
}, { allowSignalWrites: true });
|
|
61
56
|
});
|
|
@@ -67,4 +62,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.3", ngImpor
|
|
|
67
62
|
type: Directive,
|
|
68
63
|
args: [{ standalone: true, selector: 'ngt-group[ngtSelect], ngt-mesh[ngtSelect]' }]
|
|
69
64
|
}], ctorParameters: () => [] });
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9zZWxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFHNUMsTUFBTSxPQUFPLFlBQVk7SUFEekI7UUFFQyxZQUFPLEdBQUcsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQztRQUN0RSxXQUFNLEdBQUcsTUFBTSxDQUF5QyxFQUFFLENBQUMsQ0FBQztRQUNwRSxhQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNwQyxXQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztLQUM5Qzs4R0FMWSxZQUFZO2tHQUFaLFlBQVk7OzJGQUFaLFlBQVk7a0JBRHhCLFNBQVM7bUJBQUMsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRTs7QUFTM0QsTUFBTSxPQUFPLFNBQVM7SUFHckI7UUFGQSxZQUFPLEdBQUcsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUczRSxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQTJCLFVBQVUsQ0FBQyxDQUFDO1FBQ2hFLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN2QyxNQUFNLFVBQVUsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO1FBRXRDLGVBQWUsQ0FBQyxHQUFHLEVBQUU7WUFDcEIsVUFBVSxDQUNULEdBQUcsRUFBRTtnQkFDSixNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsYUFBYSxDQUFDO2dCQUN0QyxJQUFJLENBQUMsSUFBSTtvQkFBRSxPQUFPO2dCQUVsQixNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQyxVQUFVO29CQUFFLE9BQU87Z0JBRXhCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDL0IsSUFBSSxDQUFDLE9BQU87b0JBQUUsT0FBTztnQkFFckIsc0JBQXNCO2dCQUN0QixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssTUFBTSxFQUFFLENBQUM7b0JBQzFCLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztvQkFDNUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDM0UsQ0FBQztnQkFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO2dCQUMzRSxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUM7Z0JBQ3BCLE1BQU0sT0FBTyxHQUFlLEVBQUUsQ0FBQztnQkFDL0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO29CQUN2QixLQUFLLENBQUMsSUFBSSxLQUFLLE1BQU0sSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUM3QyxJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO3dCQUFFLE9BQU8sR0FBRyxJQUFJLENBQUM7Z0JBQ3RELENBQUMsQ0FBQyxDQUFDO2dCQUVILElBQUksQ0FBQyxPQUFPO29CQUFFLE9BQU87Z0JBRXJCLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxJQUFJLEVBQUUsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDO2dCQUNsRCxPQUFPLEdBQUcsRUFBRTtvQkFDWCxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNwRixDQUFDLENBQUM7WUFDSCxDQUFDLEVBQ0QsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsQ0FDM0IsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQzs4R0E1Q1csU0FBUztrR0FBVCxTQUFTOzsyRkFBVCxTQUFTO2tCQURyQixTQUFTO21CQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsMkNBQTJDLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuXHRhZnRlck5leHRSZW5kZXIsXG5cdGJvb2xlYW5BdHRyaWJ1dGUsXG5cdERpcmVjdGl2ZSxcblx0RWxlbWVudFJlZixcblx0aW5qZWN0LFxuXHRpbnB1dCxcblx0c2lnbmFsLFxuXHR1bnRyYWNrZWQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaW5qZWN0QXV0b0VmZmVjdCB9IGZyb20gJ25neHRlbnNpb24vYXV0by1lZmZlY3QnO1xuaW1wb3J0IHsgR3JvdXAsIE1lc2gsIE9iamVjdDNEIH0gZnJvbSAndGhyZWUnO1xuaW1wb3J0IHsgZ2V0TG9jYWxTdGF0ZSB9IGZyb20gJy4uL2luc3RhbmNlJztcblxuQERpcmVjdGl2ZSh7IHN0YW5kYWxvbmU6IHRydWUsIHNlbGVjdG9yOiAnW25ndFNlbGVjdGlvbl0nIH0pXG5leHBvcnQgY2xhc3MgTmd0U2VsZWN0aW9uIHtcblx0ZW5hYmxlZCA9IGlucHV0KHRydWUsIHsgYWxpYXM6ICduZ3RTZWxlY3Rpb24nLCB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSk7XG5cdHByaXZhdGUgc291cmNlID0gc2lnbmFsPEFycmF5PEVsZW1lbnRSZWY8T2JqZWN0M0Q+IHwgT2JqZWN0M0Q+PihbXSk7XG5cdHNlbGVjdGVkID0gdGhpcy5zb3VyY2UuYXNSZWFkb25seSgpO1xuXHR1cGRhdGUgPSB0aGlzLnNvdXJjZS51cGRhdGUuYmluZCh0aGlzLnNvdXJjZSk7XG59XG5cbkBEaXJlY3RpdmUoeyBzdGFuZGFsb25lOiB0cnVlLCBzZWxlY3RvcjogJ25ndC1ncm91cFtuZ3RTZWxlY3RdLCBuZ3QtbWVzaFtuZ3RTZWxlY3RdJyB9KVxuZXhwb3J0IGNsYXNzIE5ndFNlbGVjdCB7XG5cdGVuYWJsZWQgPSBpbnB1dChmYWxzZSwgeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUsIGFsaWFzOiAnbmd0U2VsZWN0JyB9KTtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRjb25zdCBlbGVtZW50UmVmID0gaW5qZWN0PEVsZW1lbnRSZWY8R3JvdXAgfCBNZXNoPj4oRWxlbWVudFJlZik7XG5cdFx0Y29uc3Qgc2VsZWN0aW9uID0gaW5qZWN0KE5ndFNlbGVjdGlvbik7XG5cdFx0Y29uc3QgYXV0b0VmZmVjdCA9IGluamVjdEF1dG9FZmZlY3QoKTtcblxuXHRcdGFmdGVyTmV4dFJlbmRlcigoKSA9PiB7XG5cdFx0XHRhdXRvRWZmZWN0KFxuXHRcdFx0XHQoKSA9PiB7XG5cdFx0XHRcdFx0Y29uc3QgaG9zdCA9IGVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcblx0XHRcdFx0XHRpZiAoIWhvc3QpIHJldHVybjtcblxuXHRcdFx0XHRcdGNvbnN0IGxvY2FsU3RhdGUgPSBnZXRMb2NhbFN0YXRlKGhvc3QpO1xuXHRcdFx0XHRcdGlmICghbG9jYWxTdGF0ZSkgcmV0dXJuO1xuXG5cdFx0XHRcdFx0Y29uc3QgZW5hYmxlZCA9IHRoaXMuZW5hYmxlZCgpO1xuXHRcdFx0XHRcdGlmICghZW5hYmxlZCkgcmV0dXJuO1xuXG5cdFx0XHRcdFx0Ly8gbmd0LW1lc2hbbmd0U2VsZWN0XVxuXHRcdFx0XHRcdGlmIChob3N0LnR5cGUgPT09ICdNZXNoJykge1xuXHRcdFx0XHRcdFx0c2VsZWN0aW9uLnVwZGF0ZSgocHJldikgPT4gWy4uLnByZXYsIGhvc3RdKTtcblx0XHRcdFx0XHRcdHJldHVybiAoKSA9PiBzZWxlY3Rpb24udXBkYXRlKChwcmV2KSA9PiBwcmV2LmZpbHRlcigoZWwpID0+IGVsICE9PSBob3N0KSk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Y29uc3QgW2NvbGxlY3Rpb25dID0gW3VudHJhY2tlZChzZWxlY3Rpb24uc2VsZWN0ZWQpLCBsb2NhbFN0YXRlLm9iamVjdHMoKV07XG5cdFx0XHRcdFx0bGV0IGNoYW5nZWQgPSBmYWxzZTtcblx0XHRcdFx0XHRjb25zdCBjdXJyZW50OiBPYmplY3QzRFtdID0gW107XG5cdFx0XHRcdFx0aG9zdC50cmF2ZXJzZSgoY2hpbGQpID0+IHtcblx0XHRcdFx0XHRcdGNoaWxkLnR5cGUgPT09ICdNZXNoJyAmJiBjdXJyZW50LnB1c2goY2hpbGQpO1xuXHRcdFx0XHRcdFx0aWYgKGNvbGxlY3Rpb24uaW5kZXhPZihjaGlsZCkgPT09IC0xKSBjaGFuZ2VkID0gdHJ1ZTtcblx0XHRcdFx0XHR9KTtcblxuXHRcdFx0XHRcdGlmICghY2hhbmdlZCkgcmV0dXJuO1xuXG5cdFx0XHRcdFx0c2VsZWN0aW9uLnVwZGF0ZSgocHJldikgPT4gWy4uLnByZXYsIC4uLmN1cnJlbnRdKTtcblx0XHRcdFx0XHRyZXR1cm4gKCkgPT4ge1xuXHRcdFx0XHRcdFx0c2VsZWN0aW9uLnVwZGF0ZSgocHJldikgPT4gcHJldi5maWx0ZXIoKGVsKSA9PiAhY3VycmVudC5pbmNsdWRlcyhlbCBhcyBPYmplY3QzRCkpKTtcblx0XHRcdFx0XHR9O1xuXHRcdFx0XHR9LFxuXHRcdFx0XHR7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH0sXG5cdFx0XHQpO1xuXHRcdH0pO1xuXHR9XG59XG4iXX0=
|
|
@@ -2518,14 +2518,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.3", ngImpor
|
|
|
2518
2518
|
class NgtSelection {
|
|
2519
2519
|
constructor() {
|
|
2520
2520
|
this.enabled = input(true, { alias: 'ngtSelection', transform: booleanAttribute });
|
|
2521
|
-
this.
|
|
2522
|
-
this.
|
|
2523
|
-
|
|
2524
|
-
select(...objects) {
|
|
2525
|
-
this.selection.update((prev) => [...prev, ...objects]);
|
|
2526
|
-
}
|
|
2527
|
-
unselect(...objects) {
|
|
2528
|
-
this.selection.update((prev) => prev.filter((selected) => !objects.includes(selected)));
|
|
2521
|
+
this.source = signal([]);
|
|
2522
|
+
this.selected = this.source.asReadonly();
|
|
2523
|
+
this.update = this.source.update.bind(this.source);
|
|
2529
2524
|
}
|
|
2530
2525
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: NgtSelection, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
2531
2526
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.1.3", type: NgtSelection, isStandalone: true, selector: "[ngtSelection]", inputs: { enabled: { classPropertyName: "enabled", publicName: "ngtSelection", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
|
|
@@ -2537,12 +2532,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.3", ngImpor
|
|
|
2537
2532
|
class NgtSelect {
|
|
2538
2533
|
constructor() {
|
|
2539
2534
|
this.enabled = input(false, { transform: booleanAttribute, alias: 'ngtSelect' });
|
|
2540
|
-
|
|
2535
|
+
const elementRef = inject(ElementRef);
|
|
2541
2536
|
const selection = inject(NgtSelection);
|
|
2542
2537
|
const autoEffect = injectAutoEffect();
|
|
2543
2538
|
afterNextRender(() => {
|
|
2544
2539
|
autoEffect(() => {
|
|
2545
|
-
const host =
|
|
2540
|
+
const host = elementRef.nativeElement;
|
|
2546
2541
|
if (!host)
|
|
2547
2542
|
return;
|
|
2548
2543
|
const localState = getLocalState(host);
|
|
@@ -2553,10 +2548,10 @@ class NgtSelect {
|
|
|
2553
2548
|
return;
|
|
2554
2549
|
// ngt-mesh[ngtSelect]
|
|
2555
2550
|
if (host.type === 'Mesh') {
|
|
2556
|
-
selection.
|
|
2557
|
-
return () => selection.
|
|
2551
|
+
selection.update((prev) => [...prev, host]);
|
|
2552
|
+
return () => selection.update((prev) => prev.filter((el) => el !== host));
|
|
2558
2553
|
}
|
|
2559
|
-
const [collection] = [untracked(selection.
|
|
2554
|
+
const [collection] = [untracked(selection.selected), localState.objects()];
|
|
2560
2555
|
let changed = false;
|
|
2561
2556
|
const current = [];
|
|
2562
2557
|
host.traverse((child) => {
|
|
@@ -2566,9 +2561,9 @@ class NgtSelect {
|
|
|
2566
2561
|
});
|
|
2567
2562
|
if (!changed)
|
|
2568
2563
|
return;
|
|
2569
|
-
selection.
|
|
2564
|
+
selection.update((prev) => [...prev, ...current]);
|
|
2570
2565
|
return () => {
|
|
2571
|
-
selection.
|
|
2566
|
+
selection.update((prev) => prev.filter((el) => !current.includes(el)));
|
|
2572
2567
|
};
|
|
2573
2568
|
}, { allowSignalWrites: true });
|
|
2574
2569
|
});
|