angular-three-cannon 2.13.0 → 3.0.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/body/lib/utils.d.ts +20 -20
- package/fesm2022/angular-three-cannon-body.mjs.map +1 -1
- package/fesm2022/angular-three-cannon-constraint.mjs.map +1 -1
- package/fesm2022/angular-three-cannon-debug.mjs +3 -3
- package/fesm2022/angular-three-cannon-debug.mjs.map +1 -1
- package/fesm2022/angular-three-cannon.mjs +3 -3
- package/fesm2022/angular-three-cannon.mjs.map +1 -1
- package/package.json +4 -12
- package/esm2022/angular-three-cannon.mjs +0 -5
- package/esm2022/body/angular-three-cannon-body.mjs +0 -5
- package/esm2022/body/index.mjs +0 -2
- package/esm2022/body/lib/body.mjs +0 -111
- package/esm2022/body/lib/types.mjs +0 -2
- package/esm2022/body/lib/utils.mjs +0 -193
- package/esm2022/constraint/angular-three-cannon-constraint.mjs +0 -5
- package/esm2022/constraint/index.mjs +0 -2
- package/esm2022/constraint/lib/constraint.mjs +0 -67
- package/esm2022/debug/angular-three-cannon-debug.mjs +0 -5
- package/esm2022/debug/index.mjs +0 -2
- package/esm2022/debug/lib/debug.mjs +0 -81
- package/esm2022/index.mjs +0 -2
- package/esm2022/lib/physics.mjs +0 -187
|
@@ -1,193 +0,0 @@
|
|
|
1
|
-
import { Euler, Quaternion, Vector3 } from 'three';
|
|
2
|
-
function capitalize(str) {
|
|
3
|
-
return (str.charAt(0).toUpperCase() + str.slice(1));
|
|
4
|
-
}
|
|
5
|
-
function getUUID(body, index) {
|
|
6
|
-
const suffix = index === undefined ? '' : `/${index}`;
|
|
7
|
-
if (typeof body === 'function')
|
|
8
|
-
return null;
|
|
9
|
-
return body && body && `${body.uuid}${suffix}`;
|
|
10
|
-
}
|
|
11
|
-
const e = new Euler();
|
|
12
|
-
const q = new Quaternion();
|
|
13
|
-
function quaternionToRotation(callback) {
|
|
14
|
-
return (v) => callback(e.setFromQuaternion(q.fromArray(v)).toArray());
|
|
15
|
-
}
|
|
16
|
-
let incrementingId = 0;
|
|
17
|
-
export function createSubscribe(body, worker, subscriptions, type, index, target = 'bodies') {
|
|
18
|
-
return (callback) => {
|
|
19
|
-
const id = incrementingId++;
|
|
20
|
-
subscriptions[id] = { [type]: callback };
|
|
21
|
-
const uuid = getUUID(body, index);
|
|
22
|
-
uuid && worker.subscribe({ props: { id, target, type }, uuid });
|
|
23
|
-
return () => {
|
|
24
|
-
delete subscriptions[id];
|
|
25
|
-
worker.unsubscribe({ props: id });
|
|
26
|
-
};
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
function makeTriplet(v) {
|
|
30
|
-
return v instanceof Vector3 ? [v.x, v.y, v.z] : v;
|
|
31
|
-
}
|
|
32
|
-
export function prepare(object, { position = [0, 0, 0], rotation = [0, 0, 0], userData = {} }) {
|
|
33
|
-
object.userData = userData;
|
|
34
|
-
object.position.set(...position);
|
|
35
|
-
object.rotation.set(...rotation);
|
|
36
|
-
object.updateMatrix();
|
|
37
|
-
}
|
|
38
|
-
export function setupCollision(events, { onCollide, onCollideBegin, onCollideEnd }, uuid) {
|
|
39
|
-
events[uuid] = { collide: onCollide, collideBegin: onCollideBegin, collideEnd: onCollideEnd };
|
|
40
|
-
}
|
|
41
|
-
export function makeBodyApi(body, worker, { subscriptions, scaleOverrides }) {
|
|
42
|
-
const makeAtomic = (type, index) => {
|
|
43
|
-
const op = `set${capitalize(type)}`;
|
|
44
|
-
return {
|
|
45
|
-
set: (value) => {
|
|
46
|
-
const uuid = getUUID(body, index);
|
|
47
|
-
uuid && worker[op]({ props: value, uuid });
|
|
48
|
-
},
|
|
49
|
-
subscribe: createSubscribe(body, worker, subscriptions, type, index),
|
|
50
|
-
};
|
|
51
|
-
};
|
|
52
|
-
const makeQuaternion = (index) => {
|
|
53
|
-
const type = 'quaternion';
|
|
54
|
-
return {
|
|
55
|
-
copy: ({ w, x, y, z }) => {
|
|
56
|
-
const uuid = getUUID(body, index);
|
|
57
|
-
uuid && worker.setQuaternion({ props: [x, y, z, w], uuid });
|
|
58
|
-
},
|
|
59
|
-
set: (x, y, z, w) => {
|
|
60
|
-
const uuid = getUUID(body, index);
|
|
61
|
-
uuid && worker.setQuaternion({ props: [x, y, z, w], uuid });
|
|
62
|
-
},
|
|
63
|
-
subscribe: createSubscribe(body, worker, subscriptions, type, index),
|
|
64
|
-
};
|
|
65
|
-
};
|
|
66
|
-
const makeRotation = (index) => {
|
|
67
|
-
return {
|
|
68
|
-
copy: ({ x, y, z }) => {
|
|
69
|
-
const uuid = getUUID(body, index);
|
|
70
|
-
uuid && worker.setRotation({ props: [x, y, z], uuid });
|
|
71
|
-
},
|
|
72
|
-
set: (x, y, z) => {
|
|
73
|
-
const uuid = getUUID(body, index);
|
|
74
|
-
uuid && worker.setRotation({ props: [x, y, z], uuid });
|
|
75
|
-
},
|
|
76
|
-
subscribe: (callback) => {
|
|
77
|
-
const id = incrementingId++;
|
|
78
|
-
const target = 'bodies';
|
|
79
|
-
const type = 'quaternion';
|
|
80
|
-
const uuid = getUUID(body, index);
|
|
81
|
-
subscriptions[id] = { [type]: quaternionToRotation(callback) };
|
|
82
|
-
uuid && worker.subscribe({ props: { id, target, type }, uuid });
|
|
83
|
-
return () => {
|
|
84
|
-
delete subscriptions[id];
|
|
85
|
-
worker.unsubscribe({ props: id });
|
|
86
|
-
};
|
|
87
|
-
},
|
|
88
|
-
};
|
|
89
|
-
};
|
|
90
|
-
const makeVec = (type, index) => {
|
|
91
|
-
const op = `set${capitalize(type)}`;
|
|
92
|
-
return {
|
|
93
|
-
copy: ({ x, y, z }) => {
|
|
94
|
-
const uuid = getUUID(body, index);
|
|
95
|
-
uuid && worker[op]({ props: [x, y, z], uuid });
|
|
96
|
-
},
|
|
97
|
-
set: (x, y, z) => {
|
|
98
|
-
const uuid = getUUID(body, index);
|
|
99
|
-
uuid && worker[op]({ props: [x, y, z], uuid });
|
|
100
|
-
},
|
|
101
|
-
subscribe: createSubscribe(body, worker, subscriptions, type, index),
|
|
102
|
-
};
|
|
103
|
-
};
|
|
104
|
-
const makeRemove = (index) => {
|
|
105
|
-
const uuid = getUUID(body, index);
|
|
106
|
-
return () => {
|
|
107
|
-
if (uuid)
|
|
108
|
-
worker.removeBodies({ uuid: [uuid] });
|
|
109
|
-
};
|
|
110
|
-
};
|
|
111
|
-
function makeApi(index) {
|
|
112
|
-
return {
|
|
113
|
-
allowSleep: makeAtomic('allowSleep', index),
|
|
114
|
-
angularDamping: makeAtomic('angularDamping', index),
|
|
115
|
-
angularFactor: makeVec('angularFactor', index),
|
|
116
|
-
angularVelocity: makeVec('angularVelocity', index),
|
|
117
|
-
applyForce(force, worldPoint) {
|
|
118
|
-
const uuid = getUUID(body, index);
|
|
119
|
-
uuid && worker.applyForce({ props: [force, worldPoint], uuid });
|
|
120
|
-
},
|
|
121
|
-
applyImpulse(impulse, worldPoint) {
|
|
122
|
-
const uuid = getUUID(body, index);
|
|
123
|
-
uuid && worker.applyImpulse({ props: [impulse, worldPoint], uuid });
|
|
124
|
-
},
|
|
125
|
-
applyLocalForce(force, localPoint) {
|
|
126
|
-
const uuid = getUUID(body, index);
|
|
127
|
-
uuid && worker.applyLocalForce({ props: [force, localPoint], uuid });
|
|
128
|
-
},
|
|
129
|
-
applyLocalImpulse(impulse, localPoint) {
|
|
130
|
-
const uuid = getUUID(body, index);
|
|
131
|
-
uuid && worker.applyLocalImpulse({ props: [impulse, localPoint], uuid });
|
|
132
|
-
},
|
|
133
|
-
applyTorque(torque) {
|
|
134
|
-
const uuid = getUUID(body, index);
|
|
135
|
-
uuid && worker.applyTorque({ props: [torque], uuid });
|
|
136
|
-
},
|
|
137
|
-
collisionFilterGroup: makeAtomic('collisionFilterGroup', index),
|
|
138
|
-
collisionFilterMask: makeAtomic('collisionFilterMask', index),
|
|
139
|
-
collisionResponse: makeAtomic('collisionResponse', index),
|
|
140
|
-
fixedRotation: makeAtomic('fixedRotation', index),
|
|
141
|
-
isTrigger: makeAtomic('isTrigger', index),
|
|
142
|
-
linearDamping: makeAtomic('linearDamping', index),
|
|
143
|
-
linearFactor: makeVec('linearFactor', index),
|
|
144
|
-
mass: makeAtomic('mass', index),
|
|
145
|
-
material: makeAtomic('material', index),
|
|
146
|
-
position: makeVec('position', index),
|
|
147
|
-
quaternion: makeQuaternion(index),
|
|
148
|
-
rotation: makeRotation(index),
|
|
149
|
-
scaleOverride(scale) {
|
|
150
|
-
const uuid = getUUID(body, index);
|
|
151
|
-
if (uuid)
|
|
152
|
-
scaleOverrides[uuid] = new Vector3(...scale);
|
|
153
|
-
},
|
|
154
|
-
sleep() {
|
|
155
|
-
const uuid = getUUID(body, index);
|
|
156
|
-
uuid && worker.sleep({ uuid });
|
|
157
|
-
},
|
|
158
|
-
sleepSpeedLimit: makeAtomic('sleepSpeedLimit', index),
|
|
159
|
-
sleepTimeLimit: makeAtomic('sleepTimeLimit', index),
|
|
160
|
-
userData: makeAtomic('userData', index),
|
|
161
|
-
velocity: makeVec('velocity', index),
|
|
162
|
-
remove: makeRemove(index),
|
|
163
|
-
wakeUp() {
|
|
164
|
-
const uuid = getUUID(body, index);
|
|
165
|
-
uuid && worker.wakeUp({ uuid });
|
|
166
|
-
},
|
|
167
|
-
};
|
|
168
|
-
}
|
|
169
|
-
const cache = {};
|
|
170
|
-
return { ...makeApi(), at: (index) => cache[index] || (cache[index] = makeApi(index)) };
|
|
171
|
-
}
|
|
172
|
-
export const defaultTransformArgs = {
|
|
173
|
-
Plane: (_) => [],
|
|
174
|
-
Box: (args = [1, 1, 1]) => args,
|
|
175
|
-
Trimesh: (args) => args,
|
|
176
|
-
Cylinder: (_ = []) => [],
|
|
177
|
-
Heightfield: (args) => args,
|
|
178
|
-
ConvexPolyhedron: ([vertices, faces, normals, axes, boundingSphereRadius] = []) => [
|
|
179
|
-
vertices && vertices.map(makeTriplet),
|
|
180
|
-
faces,
|
|
181
|
-
normals && normals.map(makeTriplet),
|
|
182
|
-
axes && axes.map(makeTriplet),
|
|
183
|
-
boundingSphereRadius,
|
|
184
|
-
],
|
|
185
|
-
Particle: (_) => [],
|
|
186
|
-
Sphere: (args = [1]) => {
|
|
187
|
-
if (!Array.isArray(args))
|
|
188
|
-
throw new Error('Sphere body args must be an array');
|
|
189
|
-
return [args[0]];
|
|
190
|
-
},
|
|
191
|
-
Compound: (args) => args,
|
|
192
|
-
};
|
|
193
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nhbm5vbi9ib2R5L3NyYy9saWIvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdUJBLE9BQU8sRUFBRSxLQUFLLEVBQVksVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUc3RCxTQUFTLFVBQVUsQ0FBbUIsR0FBTTtJQUMzQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFrQixDQUFDO0FBQ3RFLENBQUM7QUFFRCxTQUFTLE9BQU8sQ0FBQyxJQUFjLEVBQUUsS0FBYztJQUM5QyxNQUFNLE1BQU0sR0FBRyxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxFQUFFLENBQUM7SUFDdEQsSUFBSSxPQUFPLElBQUksS0FBSyxVQUFVO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFDNUMsT0FBTyxJQUFJLElBQUksSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLEVBQUUsQ0FBQztBQUNoRCxDQUFDO0FBRUQsTUFBTSxDQUFDLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQztBQUN0QixNQUFNLENBQUMsR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO0FBRTNCLFNBQVMsb0JBQW9CLENBQUMsUUFBOEI7SUFDM0QsT0FBTyxDQUFDLENBQU8sRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFhLENBQUMsQ0FBQztBQUN4RixDQUFDO0FBRUQsSUFBSSxjQUFjLEdBQUcsQ0FBQyxDQUFDO0FBQ3ZCLE1BQU0sVUFBVSxlQUFlLENBQzlCLElBQWMsRUFDZCxNQUF1QixFQUN2QixhQUE0QixFQUM1QixJQUFPLEVBQ1AsS0FBYyxFQUNkLFNBQTZCLFFBQVE7SUFFckMsT0FBTyxDQUFDLFFBQXVDLEVBQUUsRUFBRTtRQUNsRCxNQUFNLEVBQUUsR0FBRyxjQUFjLEVBQUUsQ0FBQztRQUM1QixhQUFhLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDO1FBQ3pDLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDbEMsSUFBSSxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDaEUsT0FBTyxHQUFHLEVBQUU7WUFDWCxPQUFPLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUN6QixNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDbkMsQ0FBQyxDQUFDO0lBQ0gsQ0FBQyxDQUFDO0FBQ0gsQ0FBQztBQUVELFNBQVMsV0FBVyxDQUFDLENBQW9CO0lBQ3hDLE9BQU8sQ0FBQyxZQUFZLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDbkQsQ0FBQztBQUVELE1BQU0sVUFBVSxPQUFPLENBQUMsTUFBZ0IsRUFBRSxFQUFFLFFBQVEsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsUUFBUSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxRQUFRLEdBQUcsRUFBRSxFQUFhO0lBQ2pILE1BQU0sQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzNCLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7SUFDakMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQztJQUNqQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7QUFDdkIsQ0FBQztBQUVELE1BQU0sVUFBVSxjQUFjLENBQzdCLE1BQXdCLEVBQ3hCLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQXNCLEVBQy9ELElBQVk7SUFFWixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxDQUFDO0FBQy9GLENBQUM7QUFFRCxNQUFNLFVBQVUsV0FBVyxDQUMxQixJQUFjLEVBQ2QsTUFBdUIsRUFDdkIsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUF5RDtJQUV4RixNQUFNLFVBQVUsR0FBRyxDQUF1QixJQUFPLEVBQUUsS0FBYyxFQUFFLEVBQUU7UUFDcEUsTUFBTSxFQUFFLEdBQWlCLE1BQU0sVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFFbEQsT0FBTztZQUNOLEdBQUcsRUFBRSxDQUFDLEtBQW1CLEVBQUUsRUFBRTtnQkFDNUIsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDbEMsSUFBSSxJQUFJLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFXLENBQUMsQ0FBQztZQUNyRCxDQUFDO1lBQ0QsU0FBUyxFQUFFLGVBQWUsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDO1NBQ3BFLENBQUM7SUFDSCxDQUFDLENBQUM7SUFFRixNQUFNLGNBQWMsR0FBRyxDQUFDLEtBQWMsRUFBRSxFQUFFO1FBQ3pDLE1BQU0sSUFBSSxHQUFHLFlBQVksQ0FBQztRQUMxQixPQUFPO1lBQ04sSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQWMsRUFBRSxFQUFFO2dCQUNwQyxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUNsQyxJQUFJLElBQUksTUFBTSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFDN0QsQ0FBQztZQUNELEdBQUcsRUFBRSxDQUFDLENBQVMsRUFBRSxDQUFTLEVBQUUsQ0FBUyxFQUFFLENBQVMsRUFBRSxFQUFFO2dCQUNuRCxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUNsQyxJQUFJLElBQUksTUFBTSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFDN0QsQ0FBQztZQUNELFNBQVMsRUFBRSxlQUFlLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQztTQUNwRSxDQUFDO0lBQ0gsQ0FBQyxDQUFDO0lBRUYsTUFBTSxZQUFZLEdBQUcsQ0FBQyxLQUFjLEVBQUUsRUFBRTtRQUN2QyxPQUFPO1lBQ04sSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBbUIsRUFBRSxFQUFFO2dCQUN0QyxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUNsQyxJQUFJLElBQUksTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUN4RCxDQUFDO1lBQ0QsR0FBRyxFQUFFLENBQUMsQ0FBUyxFQUFFLENBQVMsRUFBRSxDQUFTLEVBQUUsRUFBRTtnQkFDeEMsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDbEMsSUFBSSxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFDeEQsQ0FBQztZQUNELFNBQVMsRUFBRSxDQUFDLFFBQWtDLEVBQUUsRUFBRTtnQkFDakQsTUFBTSxFQUFFLEdBQUcsY0FBYyxFQUFFLENBQUM7Z0JBQzVCLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQztnQkFDeEIsTUFBTSxJQUFJLEdBQUcsWUFBWSxDQUFDO2dCQUMxQixNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUNsQyxhQUFhLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7Z0JBQy9ELElBQUksSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRSxPQUFPLEdBQUcsRUFBRTtvQkFDWCxPQUFPLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDekIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUNuQyxDQUFDLENBQUM7WUFDSCxDQUFDO1NBQ0QsQ0FBQztJQUNILENBQUMsQ0FBQztJQUNGLE1BQU0sT0FBTyxHQUFHLENBQUMsSUFBZ0IsRUFBRSxLQUFjLEVBQUUsRUFBRTtRQUNwRCxNQUFNLEVBQUUsR0FBMEIsTUFBTSxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUMzRCxPQUFPO1lBQ04sSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBbUIsRUFBRSxFQUFFO2dCQUN0QyxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUNsQyxJQUFJLElBQUksTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ2hELENBQUM7WUFDRCxHQUFHLEVBQUUsQ0FBQyxDQUFTLEVBQUUsQ0FBUyxFQUFFLENBQVMsRUFBRSxFQUFFO2dCQUN4QyxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUNsQyxJQUFJLElBQUksTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ2hELENBQUM7WUFDRCxTQUFTLEVBQUUsZUFBZSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxLQUFLLENBQUM7U0FDcEUsQ0FBQztJQUNILENBQUMsQ0FBQztJQUVGLE1BQU0sVUFBVSxHQUFHLENBQUMsS0FBYyxFQUFFLEVBQUU7UUFDckMsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNsQyxPQUFPLEdBQUcsRUFBRTtZQUNYLElBQUksSUFBSTtnQkFBRSxNQUFNLENBQUMsWUFBWSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FBQztJQUNILENBQUMsQ0FBQztJQUVGLFNBQVMsT0FBTyxDQUFDLEtBQWM7UUFDOUIsT0FBTztZQUNOLFVBQVUsRUFBRSxVQUFVLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQztZQUMzQyxjQUFjLEVBQUUsVUFBVSxDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQztZQUNuRCxhQUFhLEVBQUUsT0FBTyxDQUFDLGVBQWUsRUFBRSxLQUFLLENBQUM7WUFDOUMsZUFBZSxFQUFFLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLENBQUM7WUFDbEQsVUFBVSxDQUFDLEtBQWMsRUFBRSxVQUFtQjtnQkFDN0MsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDbEMsSUFBSSxJQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUNqRSxDQUFDO1lBQ0QsWUFBWSxDQUFDLE9BQWdCLEVBQUUsVUFBbUI7Z0JBQ2pELE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ2xDLElBQUksSUFBSSxNQUFNLENBQUMsWUFBWSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFDckUsQ0FBQztZQUNELGVBQWUsQ0FBQyxLQUFjLEVBQUUsVUFBbUI7Z0JBQ2xELE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ2xDLElBQUksSUFBSSxNQUFNLENBQUMsZUFBZSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFDdEUsQ0FBQztZQUNELGlCQUFpQixDQUFDLE9BQWdCLEVBQUUsVUFBbUI7Z0JBQ3RELE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ2xDLElBQUksSUFBSSxNQUFNLENBQUMsaUJBQWlCLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUMxRSxDQUFDO1lBQ0QsV0FBVyxDQUFDLE1BQWU7Z0JBQzFCLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ2xDLElBQUksSUFBSSxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUN2RCxDQUFDO1lBQ0Qsb0JBQW9CLEVBQUUsVUFBVSxDQUFDLHNCQUFzQixFQUFFLEtBQUssQ0FBQztZQUMvRCxtQkFBbUIsRUFBRSxVQUFVLENBQUMscUJBQXFCLEVBQUUsS0FBSyxDQUFDO1lBQzdELGlCQUFpQixFQUFFLFVBQVUsQ0FBQyxtQkFBbUIsRUFBRSxLQUFLLENBQUM7WUFDekQsYUFBYSxFQUFFLFVBQVUsQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDO1lBQ2pELFNBQVMsRUFBRSxVQUFVLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQztZQUN6QyxhQUFhLEVBQUUsVUFBVSxDQUFDLGVBQWUsRUFBRSxLQUFLLENBQUM7WUFDakQsWUFBWSxFQUFFLE9BQU8sQ0FBQyxjQUFjLEVBQUUsS0FBSyxDQUFDO1lBQzVDLElBQUksRUFBRSxVQUFVLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQztZQUMvQixRQUFRLEVBQUUsVUFBVSxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUM7WUFDdkMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDO1lBQ3BDLFVBQVUsRUFBRSxjQUFjLENBQUMsS0FBSyxDQUFDO1lBQ2pDLFFBQVEsRUFBRSxZQUFZLENBQUMsS0FBSyxDQUFDO1lBQzdCLGFBQWEsQ0FBQyxLQUFLO2dCQUNsQixNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUNsQyxJQUFJLElBQUk7b0JBQUUsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksT0FBTyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFDeEQsQ0FBQztZQUNELEtBQUs7Z0JBQ0osTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDbEMsSUFBSSxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ2hDLENBQUM7WUFDRCxlQUFlLEVBQUUsVUFBVSxDQUFDLGlCQUFpQixFQUFFLEtBQUssQ0FBQztZQUNyRCxjQUFjLEVBQUUsVUFBVSxDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQztZQUNuRCxRQUFRLEVBQUUsVUFBVSxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUM7WUFDdkMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDO1lBQ3BDLE1BQU0sRUFBRSxVQUFVLENBQUMsS0FBSyxDQUFDO1lBQ3pCLE1BQU07Z0JBQ0wsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDbEMsSUFBSSxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ2pDLENBQUM7U0FDRCxDQUFDO0lBQ0gsQ0FBQztJQUNELE1BQU0sS0FBSyxHQUFrQyxFQUFFLENBQUM7SUFDaEQsT0FBTyxFQUFFLEdBQUcsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsS0FBYSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztBQUNqRyxDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUc7SUFDbkMsS0FBSyxFQUFFLENBQUMsQ0FBcUIsRUFBRSxFQUFFLENBQUMsRUFBRTtJQUNwQyxHQUFHLEVBQUUsQ0FBQyxPQUF5QixDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUk7SUFDakQsT0FBTyxFQUFFLENBQUMsSUFBaUIsRUFBRSxFQUFFLENBQUMsSUFBSTtJQUNwQyxRQUFRLEVBQUUsQ0FBQyxJQUFrQixFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUU7SUFDdEMsV0FBVyxFQUFFLENBQUMsSUFBcUIsRUFBRSxFQUFFLENBQUMsSUFBSTtJQUM1QyxnQkFBZ0IsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLG9CQUFvQixJQUEwQixFQUFFLEVBQUUsRUFBRSxDQUFDO1FBQ3hHLFFBQVEsSUFBSSxRQUFRLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQztRQUNyQyxLQUFLO1FBQ0wsT0FBTyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDO1FBQ25DLElBQUksSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQztRQUM3QixvQkFBb0I7S0FDcEI7SUFDRCxRQUFRLEVBQUUsQ0FBQyxDQUF3QixFQUFFLEVBQUUsQ0FBQyxFQUFFO0lBQzFDLE1BQU0sRUFBRSxDQUFDLE9BQW1CLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUNsQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7UUFDL0UsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFDRCxRQUFRLEVBQUUsQ0FBQyxJQUErQixFQUFFLEVBQUUsQ0FBQyxJQUFJO0NBQ25ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuXHRBdG9taWNOYW1lLFxuXHRCb2R5UHJvcHMsXG5cdEJveFByb3BzLFxuXHRDYW5ub25Xb3JrZXJBUEksXG5cdENvbXBvdW5kQm9keVByb3BzLFxuXHRDb252ZXhQb2x5aGVkcm9uQXJncyxcblx0Q3lsaW5kZXJBcmdzLFxuXHRIZWlnaHRmaWVsZEFyZ3MsXG5cdFBhcnRpY2xlUHJvcHMsXG5cdFBsYW5lUHJvcHMsXG5cdFByb3BWYWx1ZSxcblx0UXVhZCxcblx0U2V0T3BOYW1lLFxuXHRTcGhlcmVBcmdzLFxuXHRTdWJzY3JpcHRpb25OYW1lLFxuXHRTdWJzY3JpcHRpb25UYXJnZXQsXG5cdFN1YnNjcmlwdGlvbnMsXG5cdFRyaW1lc2hBcmdzLFxuXHRUcmlwbGV0LFxuXHRWZWN0b3JOYW1lLFxufSBmcm9tICdAcG1uZHJzL2Nhbm5vbi13b3JrZXItYXBpJztcbmltcG9ydCB7IE5ndGNDYW5ub25FdmVudHMsIE5ndGNQaHlzaWNzIH0gZnJvbSAnYW5ndWxhci10aHJlZS1jYW5ub24nO1xuaW1wb3J0IHsgRXVsZXIsIE9iamVjdDNELCBRdWF0ZXJuaW9uLCBWZWN0b3IzIH0gZnJvbSAndGhyZWUnO1xuaW1wb3J0IHsgTmd0Y1dvcmtlckFwaSB9IGZyb20gJy4vdHlwZXMnO1xuXG5mdW5jdGlvbiBjYXBpdGFsaXplPFQgZXh0ZW5kcyBzdHJpbmc+KHN0cjogVCk6IENhcGl0YWxpemU8VD4ge1xuXHRyZXR1cm4gKHN0ci5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHN0ci5zbGljZSgxKSkgYXMgQ2FwaXRhbGl6ZTxUPjtcbn1cblxuZnVuY3Rpb24gZ2V0VVVJRChib2R5OiBPYmplY3QzRCwgaW5kZXg/OiBudW1iZXIpIHtcblx0Y29uc3Qgc3VmZml4ID0gaW5kZXggPT09IHVuZGVmaW5lZCA/ICcnIDogYC8ke2luZGV4fWA7XG5cdGlmICh0eXBlb2YgYm9keSA9PT0gJ2Z1bmN0aW9uJykgcmV0dXJuIG51bGw7XG5cdHJldHVybiBib2R5ICYmIGJvZHkgJiYgYCR7Ym9keS51dWlkfSR7c3VmZml4fWA7XG59XG5cbmNvbnN0IGUgPSBuZXcgRXVsZXIoKTtcbmNvbnN0IHEgPSBuZXcgUXVhdGVybmlvbigpO1xuXG5mdW5jdGlvbiBxdWF0ZXJuaW9uVG9Sb3RhdGlvbihjYWxsYmFjazogKHY6IFRyaXBsZXQpID0+IHZvaWQpIHtcblx0cmV0dXJuICh2OiBRdWFkKSA9PiBjYWxsYmFjayhlLnNldEZyb21RdWF0ZXJuaW9uKHEuZnJvbUFycmF5KHYpKS50b0FycmF5KCkgYXMgVHJpcGxldCk7XG59XG5cbmxldCBpbmNyZW1lbnRpbmdJZCA9IDA7XG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU3Vic2NyaWJlPFQgZXh0ZW5kcyBTdWJzY3JpcHRpb25OYW1lPihcblx0Ym9keTogT2JqZWN0M0QsXG5cdHdvcmtlcjogQ2Fubm9uV29ya2VyQVBJLFxuXHRzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25zLFxuXHR0eXBlOiBULFxuXHRpbmRleD86IG51bWJlcixcblx0dGFyZ2V0OiBTdWJzY3JpcHRpb25UYXJnZXQgPSAnYm9kaWVzJyxcbikge1xuXHRyZXR1cm4gKGNhbGxiYWNrOiAodmFsdWU6IFByb3BWYWx1ZTxUPikgPT4gdm9pZCkgPT4ge1xuXHRcdGNvbnN0IGlkID0gaW5jcmVtZW50aW5nSWQrKztcblx0XHRzdWJzY3JpcHRpb25zW2lkXSA9IHsgW3R5cGVdOiBjYWxsYmFjayB9O1xuXHRcdGNvbnN0IHV1aWQgPSBnZXRVVUlEKGJvZHksIGluZGV4KTtcblx0XHR1dWlkICYmIHdvcmtlci5zdWJzY3JpYmUoeyBwcm9wczogeyBpZCwgdGFyZ2V0LCB0eXBlIH0sIHV1aWQgfSk7XG5cdFx0cmV0dXJuICgpID0+IHtcblx0XHRcdGRlbGV0ZSBzdWJzY3JpcHRpb25zW2lkXTtcblx0XHRcdHdvcmtlci51bnN1YnNjcmliZSh7IHByb3BzOiBpZCB9KTtcblx0XHR9O1xuXHR9O1xufVxuXG5mdW5jdGlvbiBtYWtlVHJpcGxldCh2OiBWZWN0b3IzIHwgVHJpcGxldCk6IFRyaXBsZXQge1xuXHRyZXR1cm4gdiBpbnN0YW5jZW9mIFZlY3RvcjMgPyBbdi54LCB2LnksIHYuel0gOiB2O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJlcGFyZShvYmplY3Q6IE9iamVjdDNELCB7IHBvc2l0aW9uID0gWzAsIDAsIDBdLCByb3RhdGlvbiA9IFswLCAwLCAwXSwgdXNlckRhdGEgPSB7fSB9OiBCb2R5UHJvcHMpIHtcblx0b2JqZWN0LnVzZXJEYXRhID0gdXNlckRhdGE7XG5cdG9iamVjdC5wb3NpdGlvbi5zZXQoLi4ucG9zaXRpb24pO1xuXHRvYmplY3Qucm90YXRpb24uc2V0KC4uLnJvdGF0aW9uKTtcblx0b2JqZWN0LnVwZGF0ZU1hdHJpeCgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2V0dXBDb2xsaXNpb24oXG5cdGV2ZW50czogTmd0Y0Nhbm5vbkV2ZW50cyxcblx0eyBvbkNvbGxpZGUsIG9uQ29sbGlkZUJlZ2luLCBvbkNvbGxpZGVFbmQgfTogUGFydGlhbDxCb2R5UHJvcHM+LFxuXHR1dWlkOiBzdHJpbmcsXG4pIHtcblx0ZXZlbnRzW3V1aWRdID0geyBjb2xsaWRlOiBvbkNvbGxpZGUsIGNvbGxpZGVCZWdpbjogb25Db2xsaWRlQmVnaW4sIGNvbGxpZGVFbmQ6IG9uQ29sbGlkZUVuZCB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWFrZUJvZHlBcGkoXG5cdGJvZHk6IE9iamVjdDNELFxuXHR3b3JrZXI6IENhbm5vbldvcmtlckFQSSxcblx0eyBzdWJzY3JpcHRpb25zLCBzY2FsZU92ZXJyaWRlcyB9OiBQaWNrPE5ndGNQaHlzaWNzLCAnc3Vic2NyaXB0aW9ucycgfCAnc2NhbGVPdmVycmlkZXMnPixcbikge1xuXHRjb25zdCBtYWtlQXRvbWljID0gPFQgZXh0ZW5kcyBBdG9taWNOYW1lPih0eXBlOiBULCBpbmRleD86IG51bWJlcikgPT4ge1xuXHRcdGNvbnN0IG9wOiBTZXRPcE5hbWU8VD4gPSBgc2V0JHtjYXBpdGFsaXplKHR5cGUpfWA7XG5cblx0XHRyZXR1cm4ge1xuXHRcdFx0c2V0OiAodmFsdWU6IFByb3BWYWx1ZTxUPikgPT4ge1xuXHRcdFx0XHRjb25zdCB1dWlkID0gZ2V0VVVJRChib2R5LCBpbmRleCk7XG5cdFx0XHRcdHV1aWQgJiYgd29ya2VyW29wXSh7IHByb3BzOiB2YWx1ZSwgdXVpZCB9IGFzIG5ldmVyKTtcblx0XHRcdH0sXG5cdFx0XHRzdWJzY3JpYmU6IGNyZWF0ZVN1YnNjcmliZShib2R5LCB3b3JrZXIsIHN1YnNjcmlwdGlvbnMsIHR5cGUsIGluZGV4KSxcblx0XHR9O1xuXHR9O1xuXG5cdGNvbnN0IG1ha2VRdWF0ZXJuaW9uID0gKGluZGV4PzogbnVtYmVyKSA9PiB7XG5cdFx0Y29uc3QgdHlwZSA9ICdxdWF0ZXJuaW9uJztcblx0XHRyZXR1cm4ge1xuXHRcdFx0Y29weTogKHsgdywgeCwgeSwgeiB9OiBRdWF0ZXJuaW9uKSA9PiB7XG5cdFx0XHRcdGNvbnN0IHV1aWQgPSBnZXRVVUlEKGJvZHksIGluZGV4KTtcblx0XHRcdFx0dXVpZCAmJiB3b3JrZXIuc2V0UXVhdGVybmlvbih7IHByb3BzOiBbeCwgeSwgeiwgd10sIHV1aWQgfSk7XG5cdFx0XHR9LFxuXHRcdFx0c2V0OiAoeDogbnVtYmVyLCB5OiBudW1iZXIsIHo6IG51bWJlciwgdzogbnVtYmVyKSA9PiB7XG5cdFx0XHRcdGNvbnN0IHV1aWQgPSBnZXRVVUlEKGJvZHksIGluZGV4KTtcblx0XHRcdFx0dXVpZCAmJiB3b3JrZXIuc2V0UXVhdGVybmlvbih7IHByb3BzOiBbeCwgeSwgeiwgd10sIHV1aWQgfSk7XG5cdFx0XHR9LFxuXHRcdFx0c3Vic2NyaWJlOiBjcmVhdGVTdWJzY3JpYmUoYm9keSwgd29ya2VyLCBzdWJzY3JpcHRpb25zLCB0eXBlLCBpbmRleCksXG5cdFx0fTtcblx0fTtcblxuXHRjb25zdCBtYWtlUm90YXRpb24gPSAoaW5kZXg/OiBudW1iZXIpID0+IHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0Y29weTogKHsgeCwgeSwgeiB9OiBWZWN0b3IzIHwgRXVsZXIpID0+IHtcblx0XHRcdFx0Y29uc3QgdXVpZCA9IGdldFVVSUQoYm9keSwgaW5kZXgpO1xuXHRcdFx0XHR1dWlkICYmIHdvcmtlci5zZXRSb3RhdGlvbih7IHByb3BzOiBbeCwgeSwgel0sIHV1aWQgfSk7XG5cdFx0XHR9LFxuXHRcdFx0c2V0OiAoeDogbnVtYmVyLCB5OiBudW1iZXIsIHo6IG51bWJlcikgPT4ge1xuXHRcdFx0XHRjb25zdCB1dWlkID0gZ2V0VVVJRChib2R5LCBpbmRleCk7XG5cdFx0XHRcdHV1aWQgJiYgd29ya2VyLnNldFJvdGF0aW9uKHsgcHJvcHM6IFt4LCB5LCB6XSwgdXVpZCB9KTtcblx0XHRcdH0sXG5cdFx0XHRzdWJzY3JpYmU6IChjYWxsYmFjazogKHZhbHVlOiBUcmlwbGV0KSA9PiB2b2lkKSA9PiB7XG5cdFx0XHRcdGNvbnN0IGlkID0gaW5jcmVtZW50aW5nSWQrKztcblx0XHRcdFx0Y29uc3QgdGFyZ2V0ID0gJ2JvZGllcyc7XG5cdFx0XHRcdGNvbnN0IHR5cGUgPSAncXVhdGVybmlvbic7XG5cdFx0XHRcdGNvbnN0IHV1aWQgPSBnZXRVVUlEKGJvZHksIGluZGV4KTtcblx0XHRcdFx0c3Vic2NyaXB0aW9uc1tpZF0gPSB7IFt0eXBlXTogcXVhdGVybmlvblRvUm90YXRpb24oY2FsbGJhY2spIH07XG5cdFx0XHRcdHV1aWQgJiYgd29ya2VyLnN1YnNjcmliZSh7IHByb3BzOiB7IGlkLCB0YXJnZXQsIHR5cGUgfSwgdXVpZCB9KTtcblx0XHRcdFx0cmV0dXJuICgpID0+IHtcblx0XHRcdFx0XHRkZWxldGUgc3Vic2NyaXB0aW9uc1tpZF07XG5cdFx0XHRcdFx0d29ya2VyLnVuc3Vic2NyaWJlKHsgcHJvcHM6IGlkIH0pO1xuXHRcdFx0XHR9O1xuXHRcdFx0fSxcblx0XHR9O1xuXHR9O1xuXHRjb25zdCBtYWtlVmVjID0gKHR5cGU6IFZlY3Rvck5hbWUsIGluZGV4PzogbnVtYmVyKSA9PiB7XG5cdFx0Y29uc3Qgb3A6IFNldE9wTmFtZTxWZWN0b3JOYW1lPiA9IGBzZXQke2NhcGl0YWxpemUodHlwZSl9YDtcblx0XHRyZXR1cm4ge1xuXHRcdFx0Y29weTogKHsgeCwgeSwgeiB9OiBWZWN0b3IzIHwgRXVsZXIpID0+IHtcblx0XHRcdFx0Y29uc3QgdXVpZCA9IGdldFVVSUQoYm9keSwgaW5kZXgpO1xuXHRcdFx0XHR1dWlkICYmIHdvcmtlcltvcF0oeyBwcm9wczogW3gsIHksIHpdLCB1dWlkIH0pO1xuXHRcdFx0fSxcblx0XHRcdHNldDogKHg6IG51bWJlciwgeTogbnVtYmVyLCB6OiBudW1iZXIpID0+IHtcblx0XHRcdFx0Y29uc3QgdXVpZCA9IGdldFVVSUQoYm9keSwgaW5kZXgpO1xuXHRcdFx0XHR1dWlkICYmIHdvcmtlcltvcF0oeyBwcm9wczogW3gsIHksIHpdLCB1dWlkIH0pO1xuXHRcdFx0fSxcblx0XHRcdHN1YnNjcmliZTogY3JlYXRlU3Vic2NyaWJlKGJvZHksIHdvcmtlciwgc3Vic2NyaXB0aW9ucywgdHlwZSwgaW5kZXgpLFxuXHRcdH07XG5cdH07XG5cblx0Y29uc3QgbWFrZVJlbW92ZSA9IChpbmRleD86IG51bWJlcikgPT4ge1xuXHRcdGNvbnN0IHV1aWQgPSBnZXRVVUlEKGJvZHksIGluZGV4KTtcblx0XHRyZXR1cm4gKCkgPT4ge1xuXHRcdFx0aWYgKHV1aWQpIHdvcmtlci5yZW1vdmVCb2RpZXMoeyB1dWlkOiBbdXVpZF0gfSk7XG5cdFx0fTtcblx0fTtcblxuXHRmdW5jdGlvbiBtYWtlQXBpKGluZGV4PzogbnVtYmVyKTogTmd0Y1dvcmtlckFwaSB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdGFsbG93U2xlZXA6IG1ha2VBdG9taWMoJ2FsbG93U2xlZXAnLCBpbmRleCksXG5cdFx0XHRhbmd1bGFyRGFtcGluZzogbWFrZUF0b21pYygnYW5ndWxhckRhbXBpbmcnLCBpbmRleCksXG5cdFx0XHRhbmd1bGFyRmFjdG9yOiBtYWtlVmVjKCdhbmd1bGFyRmFjdG9yJywgaW5kZXgpLFxuXHRcdFx0YW5ndWxhclZlbG9jaXR5OiBtYWtlVmVjKCdhbmd1bGFyVmVsb2NpdHknLCBpbmRleCksXG5cdFx0XHRhcHBseUZvcmNlKGZvcmNlOiBUcmlwbGV0LCB3b3JsZFBvaW50OiBUcmlwbGV0KSB7XG5cdFx0XHRcdGNvbnN0IHV1aWQgPSBnZXRVVUlEKGJvZHksIGluZGV4KTtcblx0XHRcdFx0dXVpZCAmJiB3b3JrZXIuYXBwbHlGb3JjZSh7IHByb3BzOiBbZm9yY2UsIHdvcmxkUG9pbnRdLCB1dWlkIH0pO1xuXHRcdFx0fSxcblx0XHRcdGFwcGx5SW1wdWxzZShpbXB1bHNlOiBUcmlwbGV0LCB3b3JsZFBvaW50OiBUcmlwbGV0KSB7XG5cdFx0XHRcdGNvbnN0IHV1aWQgPSBnZXRVVUlEKGJvZHksIGluZGV4KTtcblx0XHRcdFx0dXVpZCAmJiB3b3JrZXIuYXBwbHlJbXB1bHNlKHsgcHJvcHM6IFtpbXB1bHNlLCB3b3JsZFBvaW50XSwgdXVpZCB9KTtcblx0XHRcdH0sXG5cdFx0XHRhcHBseUxvY2FsRm9yY2UoZm9yY2U6IFRyaXBsZXQsIGxvY2FsUG9pbnQ6IFRyaXBsZXQpIHtcblx0XHRcdFx0Y29uc3QgdXVpZCA9IGdldFVVSUQoYm9keSwgaW5kZXgpO1xuXHRcdFx0XHR1dWlkICYmIHdvcmtlci5hcHBseUxvY2FsRm9yY2UoeyBwcm9wczogW2ZvcmNlLCBsb2NhbFBvaW50XSwgdXVpZCB9KTtcblx0XHRcdH0sXG5cdFx0XHRhcHBseUxvY2FsSW1wdWxzZShpbXB1bHNlOiBUcmlwbGV0LCBsb2NhbFBvaW50OiBUcmlwbGV0KSB7XG5cdFx0XHRcdGNvbnN0IHV1aWQgPSBnZXRVVUlEKGJvZHksIGluZGV4KTtcblx0XHRcdFx0dXVpZCAmJiB3b3JrZXIuYXBwbHlMb2NhbEltcHVsc2UoeyBwcm9wczogW2ltcHVsc2UsIGxvY2FsUG9pbnRdLCB1dWlkIH0pO1xuXHRcdFx0fSxcblx0XHRcdGFwcGx5VG9ycXVlKHRvcnF1ZTogVHJpcGxldCkge1xuXHRcdFx0XHRjb25zdCB1dWlkID0gZ2V0VVVJRChib2R5LCBpbmRleCk7XG5cdFx0XHRcdHV1aWQgJiYgd29ya2VyLmFwcGx5VG9ycXVlKHsgcHJvcHM6IFt0b3JxdWVdLCB1dWlkIH0pO1xuXHRcdFx0fSxcblx0XHRcdGNvbGxpc2lvbkZpbHRlckdyb3VwOiBtYWtlQXRvbWljKCdjb2xsaXNpb25GaWx0ZXJHcm91cCcsIGluZGV4KSxcblx0XHRcdGNvbGxpc2lvbkZpbHRlck1hc2s6IG1ha2VBdG9taWMoJ2NvbGxpc2lvbkZpbHRlck1hc2snLCBpbmRleCksXG5cdFx0XHRjb2xsaXNpb25SZXNwb25zZTogbWFrZUF0b21pYygnY29sbGlzaW9uUmVzcG9uc2UnLCBpbmRleCksXG5cdFx0XHRmaXhlZFJvdGF0aW9uOiBtYWtlQXRvbWljKCdmaXhlZFJvdGF0aW9uJywgaW5kZXgpLFxuXHRcdFx0aXNUcmlnZ2VyOiBtYWtlQXRvbWljKCdpc1RyaWdnZXInLCBpbmRleCksXG5cdFx0XHRsaW5lYXJEYW1waW5nOiBtYWtlQXRvbWljKCdsaW5lYXJEYW1waW5nJywgaW5kZXgpLFxuXHRcdFx0bGluZWFyRmFjdG9yOiBtYWtlVmVjKCdsaW5lYXJGYWN0b3InLCBpbmRleCksXG5cdFx0XHRtYXNzOiBtYWtlQXRvbWljKCdtYXNzJywgaW5kZXgpLFxuXHRcdFx0bWF0ZXJpYWw6IG1ha2VBdG9taWMoJ21hdGVyaWFsJywgaW5kZXgpLFxuXHRcdFx0cG9zaXRpb246IG1ha2VWZWMoJ3Bvc2l0aW9uJywgaW5kZXgpLFxuXHRcdFx0cXVhdGVybmlvbjogbWFrZVF1YXRlcm5pb24oaW5kZXgpLFxuXHRcdFx0cm90YXRpb246IG1ha2VSb3RhdGlvbihpbmRleCksXG5cdFx0XHRzY2FsZU92ZXJyaWRlKHNjYWxlKSB7XG5cdFx0XHRcdGNvbnN0IHV1aWQgPSBnZXRVVUlEKGJvZHksIGluZGV4KTtcblx0XHRcdFx0aWYgKHV1aWQpIHNjYWxlT3ZlcnJpZGVzW3V1aWRdID0gbmV3IFZlY3RvcjMoLi4uc2NhbGUpO1xuXHRcdFx0fSxcblx0XHRcdHNsZWVwKCkge1xuXHRcdFx0XHRjb25zdCB1dWlkID0gZ2V0VVVJRChib2R5LCBpbmRleCk7XG5cdFx0XHRcdHV1aWQgJiYgd29ya2VyLnNsZWVwKHsgdXVpZCB9KTtcblx0XHRcdH0sXG5cdFx0XHRzbGVlcFNwZWVkTGltaXQ6IG1ha2VBdG9taWMoJ3NsZWVwU3BlZWRMaW1pdCcsIGluZGV4KSxcblx0XHRcdHNsZWVwVGltZUxpbWl0OiBtYWtlQXRvbWljKCdzbGVlcFRpbWVMaW1pdCcsIGluZGV4KSxcblx0XHRcdHVzZXJEYXRhOiBtYWtlQXRvbWljKCd1c2VyRGF0YScsIGluZGV4KSxcblx0XHRcdHZlbG9jaXR5OiBtYWtlVmVjKCd2ZWxvY2l0eScsIGluZGV4KSxcblx0XHRcdHJlbW92ZTogbWFrZVJlbW92ZShpbmRleCksXG5cdFx0XHR3YWtlVXAoKSB7XG5cdFx0XHRcdGNvbnN0IHV1aWQgPSBnZXRVVUlEKGJvZHksIGluZGV4KTtcblx0XHRcdFx0dXVpZCAmJiB3b3JrZXIud2FrZVVwKHsgdXVpZCB9KTtcblx0XHRcdH0sXG5cdFx0fTtcblx0fVxuXHRjb25zdCBjYWNoZTogUmVjb3JkPG51bWJlciwgTmd0Y1dvcmtlckFwaT4gPSB7fTtcblx0cmV0dXJuIHsgLi4ubWFrZUFwaSgpLCBhdDogKGluZGV4OiBudW1iZXIpID0+IGNhY2hlW2luZGV4XSB8fCAoY2FjaGVbaW5kZXhdID0gbWFrZUFwaShpbmRleCkpIH07XG59XG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0VHJhbnNmb3JtQXJncyA9IHtcblx0UGxhbmU6IChfOiBQbGFuZVByb3BzWydhcmdzJ10pID0+IFtdLFxuXHRCb3g6IChhcmdzOiBCb3hQcm9wc1snYXJncyddID0gWzEsIDEsIDFdKSA9PiBhcmdzLFxuXHRUcmltZXNoOiAoYXJnczogVHJpbWVzaEFyZ3MpID0+IGFyZ3MsXG5cdEN5bGluZGVyOiAoXzogQ3lsaW5kZXJBcmdzID0gW10pID0+IFtdLFxuXHRIZWlnaHRmaWVsZDogKGFyZ3M6IEhlaWdodGZpZWxkQXJncykgPT4gYXJncyxcblx0Q29udmV4UG9seWhlZHJvbjogKFt2ZXJ0aWNlcywgZmFjZXMsIG5vcm1hbHMsIGF4ZXMsIGJvdW5kaW5nU3BoZXJlUmFkaXVzXTogQ29udmV4UG9seWhlZHJvbkFyZ3MgPSBbXSkgPT4gW1xuXHRcdHZlcnRpY2VzICYmIHZlcnRpY2VzLm1hcChtYWtlVHJpcGxldCksXG5cdFx0ZmFjZXMsXG5cdFx0bm9ybWFscyAmJiBub3JtYWxzLm1hcChtYWtlVHJpcGxldCksXG5cdFx0YXhlcyAmJiBheGVzLm1hcChtYWtlVHJpcGxldCksXG5cdFx0Ym91bmRpbmdTcGhlcmVSYWRpdXMsXG5cdF0sXG5cdFBhcnRpY2xlOiAoXzogUGFydGljbGVQcm9wc1snYXJncyddKSA9PiBbXSxcblx0U3BoZXJlOiAoYXJnczogU3BoZXJlQXJncyA9IFsxXSkgPT4ge1xuXHRcdGlmICghQXJyYXkuaXNBcnJheShhcmdzKSkgdGhyb3cgbmV3IEVycm9yKCdTcGhlcmUgYm9keSBhcmdzIG11c3QgYmUgYW4gYXJyYXknKTtcblx0XHRyZXR1cm4gW2FyZ3NbMF1dO1xuXHR9LFxuXHRDb21wb3VuZDogKGFyZ3M6IENvbXBvdW5kQm9keVByb3BzWydhcmdzJ10pID0+IGFyZ3MsXG59O1xuIl19
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './index';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci10aHJlZS1jYW5ub24tY29uc3RyYWludC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY2Fubm9uL2NvbnN0cmFpbnQvc3JjL2FuZ3VsYXItdGhyZWUtY2Fubm9uLWNvbnN0cmFpbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './lib/constraint';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2Nhbm5vbi9jb25zdHJhaW50L3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RyYWludCc7XG4iXX0=
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import { computed, effect, inject, isSignal, signal, untracked } from '@angular/core';
|
|
2
|
-
import { makeId, resolveRef } from 'angular-three';
|
|
3
|
-
import { NgtcPhysics } from 'angular-three-cannon';
|
|
4
|
-
import { assertInjector } from 'ngxtension/assert-injector';
|
|
5
|
-
function createInjectConstraint(type) {
|
|
6
|
-
return (bodyA, bodyB, options) => injectConstraint(type, bodyA, bodyB, options);
|
|
7
|
-
}
|
|
8
|
-
function injectConstraint(type, bodyA, bodyB, { injector, options = {}, disableOnStart = false, } = {}) {
|
|
9
|
-
return assertInjector(injectConstraint, injector, () => {
|
|
10
|
-
const physics = inject(NgtcPhysics, { optional: true });
|
|
11
|
-
if (!physics) {
|
|
12
|
-
throw new Error(`[NGT Cannon] injectConstraint was called outside of <ngtc-physics>`);
|
|
13
|
-
}
|
|
14
|
-
const worker = physics.worker;
|
|
15
|
-
const uuid = makeId();
|
|
16
|
-
const bodyARef = isSignal(bodyA) ? bodyA : signal(bodyA);
|
|
17
|
-
const bodyBRef = isSignal(bodyB) ? bodyB : signal(bodyB);
|
|
18
|
-
const bodyAValue = computed(() => resolveRef(bodyARef()));
|
|
19
|
-
const bodyBValue = computed(() => resolveRef(bodyBRef()));
|
|
20
|
-
const constraintApi = computed(() => {
|
|
21
|
-
const _worker = worker();
|
|
22
|
-
if (!_worker)
|
|
23
|
-
return null;
|
|
24
|
-
const enableDisable = {
|
|
25
|
-
disable: () => _worker.disableConstraint({ uuid }),
|
|
26
|
-
enable: () => _worker.enableConstraint({ uuid }),
|
|
27
|
-
remove: () => _worker.removeConstraint({ uuid }),
|
|
28
|
-
};
|
|
29
|
-
if (type === 'Hinge') {
|
|
30
|
-
return {
|
|
31
|
-
...enableDisable,
|
|
32
|
-
disableMotor: () => _worker.disableConstraintMotor({ uuid }),
|
|
33
|
-
enableMotor: () => _worker.enableConstraintMotor({ uuid }),
|
|
34
|
-
setMotorMaxForce: (value) => _worker.setConstraintMotorMaxForce({ props: value, uuid }),
|
|
35
|
-
setMotorSpeed: (value) => _worker.setConstraintMotorSpeed({ props: value, uuid }),
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
return enableDisable;
|
|
39
|
-
});
|
|
40
|
-
let alreadyDisabled = false;
|
|
41
|
-
effect((onCleanup) => {
|
|
42
|
-
const currentWorker = worker();
|
|
43
|
-
if (!currentWorker)
|
|
44
|
-
return;
|
|
45
|
-
const [a, b, api] = [bodyAValue(), bodyBValue(), untracked(constraintApi)];
|
|
46
|
-
if (!a || !b)
|
|
47
|
-
return;
|
|
48
|
-
currentWorker.addConstraint({
|
|
49
|
-
props: [a.uuid, b.uuid, options],
|
|
50
|
-
type,
|
|
51
|
-
uuid,
|
|
52
|
-
});
|
|
53
|
-
if (disableOnStart && !alreadyDisabled) {
|
|
54
|
-
alreadyDisabled = true;
|
|
55
|
-
api?.disable();
|
|
56
|
-
}
|
|
57
|
-
onCleanup(() => currentWorker.removeConstraint({ uuid }));
|
|
58
|
-
});
|
|
59
|
-
return constraintApi;
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
export const injectPointToPoint = createInjectConstraint('PointToPoint');
|
|
63
|
-
export const injectConeTwist = createInjectConstraint('ConeTwist');
|
|
64
|
-
export const injectDistance = createInjectConstraint('Distance');
|
|
65
|
-
export const injectLock = createInjectConstraint('Lock');
|
|
66
|
-
export const injectHinge = createInjectConstraint('Hinge');
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RyYWludC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2Fubm9uL2NvbnN0cmFpbnQvc3JjL2xpYi9jb25zdHJhaW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0MsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFTcEgsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQWtDNUQsU0FBUyxzQkFBc0IsQ0FBZ0QsSUFBaUI7SUFDL0YsT0FBTyxDQUNOLEtBQWdFLEVBQ2hFLEtBQWdFLEVBQ2hFLE9BQTRDLEVBQzNDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBb0IsSUFBSSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDdkUsQ0FBQztBQUVELFNBQVMsZ0JBQWdCLENBS3hCLElBQWlCLEVBQ2pCLEtBQWdFLEVBQ2hFLEtBQWdFLEVBQ2hFLEVBQ0MsUUFBUSxFQUNSLE9BQU8sR0FBRyxFQUEyQyxFQUNyRCxjQUFjLEdBQUcsS0FBSyxNQUNpQixFQUFFO0lBRTFDLE9BQU8sY0FBYyxDQUFDLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUU7UUFDdEQsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLFdBQVcsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRXhELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNkLE1BQU0sSUFBSSxLQUFLLENBQUMsb0VBQW9FLENBQUMsQ0FBQztRQUN2RixDQUFDO1FBRUQsTUFBTSxNQUFNLEdBQUcsT0FB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QUUsQ0FBQztZQUNoQixDQUFDO1lBRUQsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMzRCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sYUFBYSxDQUFDO0lBQ3RCLENBQUMsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLHNCQUFzQixDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQ3pFLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxzQkFBc0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUNuRSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsc0JBQXNCLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDakUsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ3pELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnRSZWYsIEluamVjdG9yLCBTaWduYWwsIGNvbXB1dGVkLCBlZmZlY3QsIGluamVjdCwgaXNTaWduYWwsIHNpZ25hbCwgdW50cmFja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuXHRDb25lVHdpc3RDb25zdHJhaW50T3B0cyxcblx0Q29uc3RyYWludFR5cGVzLFxuXHREaXN0YW5jZUNvbnN0cmFpbnRPcHRzLFxuXHRIaW5nZUNvbnN0cmFpbnRPcHRzLFxuXHRMb2NrQ29uc3RyYWludE9wdHMsXG5cdFBvaW50VG9Qb2ludENvbnN0cmFpbnRPcHRzLFxufSBmcm9tICdAcG1uZHJzL2Nhbm5vbi13b3JrZXItYXBpJztcbmltcG9ydCB7IG1ha2VJZCwgcmVzb2x2ZVJlZiB9IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0IHsgTmd0Y1BoeXNpY3MgfSBmcm9tICdhbmd1bGFyLXRocmVlLWNhbm5vbic7XG5pbXBvcnQgeyBhc3NlcnRJbmplY3RvciB9IGZyb20gJ25neHRlbnNpb24vYXNzZXJ0LWluamVjdG9yJztcbmltcG9ydCB7IE9iamVjdDNEIH0gZnJvbSAndGhyZWUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5ndGNDb25zdHJhaW50QXBpIHtcblx0ZGlzYWJsZTogKCkgPT4gdm9pZDtcblx0ZW5hYmxlOiAoKSA9PiB2b2lkO1xuXHRyZW1vdmU6ICgpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmd0Y0hpbmdlQ29uc3RyYWludEFwaSBleHRlbmRzIE5ndGNDb25zdHJhaW50QXBpIHtcblx0ZGlzYWJsZU1vdG9yOiAoKSA9PiB2b2lkO1xuXHRlbmFibGVNb3RvcjogKCkgPT4gdm9pZDtcblx0c2V0TW90b3JNYXhGb3JjZTogKHZhbHVlOiBudW1iZXIpID0+IHZvaWQ7XG5cdHNldE1vdG9yU3BlZWQ6ICh2YWx1ZTogbnVtYmVyKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgdHlwZSBOZ3RjQ29uc3RyYWludE9SSGluZ2VBcGk8VCBleHRlbmRzICdIaW5nZScgfCBDb25zdHJhaW50VHlwZXM+ID0gVCBleHRlbmRzIENvbnN0cmFpbnRUeXBlc1xuXHQ/IE5ndGNDb25zdHJhaW50QXBpXG5cdDogTmd0Y0hpbmdlQ29uc3RyYWludEFwaTtcblxuZXhwb3J0IHR5cGUgTmd0Y0NvbnN0cmFpbnRPcHRpb25zTWFwID0ge1xuXHRDb25lVHdpc3Q6IENvbmVUd2lzdENvbnN0cmFpbnRPcHRzO1xuXHRQb2ludFRvUG9pbnQ6IFBvaW50VG9Qb2ludENvbnN0cmFpbnRPcHRzO1xuXHREaXN0YW5jZTogRGlzdGFuY2VDb25zdHJhaW50T3B0cztcblx0TG9jazogTG9ja0NvbnN0cmFpbnRPcHRzO1xuXHRIaW5nZTogSGluZ2VDb25zdHJhaW50T3B0cztcbn07XG5cbmV4cG9ydCB0eXBlIE5ndGNDb25zdHJhaW50T3B0aW9uczxUQ29uc3RyYWludFR5cGUgZXh0ZW5kcyAnSGluZ2UnIHwgQ29uc3RyYWludFR5cGVzPiA9IHtcblx0aW5qZWN0b3I/OiBJbmplY3Rvcjtcblx0ZGlzYWJsZU9uU3RhcnQ/OiBib29sZWFuO1xuXHRvcHRpb25zPzogTmd0Y0NvbnN0cmFpbnRPcHRpb25zTWFwW1RDb25zdHJhaW50VHlwZV07XG59O1xuXG5mdW5jdGlvbiBjcmVhdGVJbmplY3RDb25zdHJhaW50PFRDb25zdHJhaW50IGV4dGVuZHMgQ29uc3RyYWludFR5cGVzIHwgJ0hpbmdlJz4odHlwZTogVENvbnN0cmFpbnQpIHtcblx0cmV0dXJuIDxBIGV4dGVuZHMgT2JqZWN0M0QgPSBPYmplY3QzRCwgQiBleHRlbmRzIE9iamVjdDNEID0gT2JqZWN0M0Q+KFxuXHRcdGJvZHlBOiBFbGVtZW50UmVmPEE+IHwgQSB8IFNpZ25hbDxFbGVtZW50UmVmPEE+IHwgQSB8IHVuZGVmaW5lZD4sXG5cdFx0Ym9keUI6IEVsZW1lbnRSZWY8Qj4gfCBCIHwgU2lnbmFsPEVsZW1lbnRSZWY8Qj4gfCBCIHwgdW5kZWZpbmVkPixcblx0XHRvcHRpb25zPzogTmd0Y0NvbnN0cmFpbnRPcHRpb25zPFRDb25zdHJhaW50Pixcblx0KSA9PiBpbmplY3RDb25zdHJhaW50PFRDb25zdHJhaW50LCBBLCBCPih0eXBlLCBib2R5QSwgYm9keUIsIG9wdGlvbnMpO1xufVxuXG5mdW5jdGlvbiBpbmplY3RDb25zdHJhaW50PFxuXHRUQ29uc3RyYWludCBleHRlbmRzIENvbnN0cmFpbnRUeXBlcyB8ICdIaW5nZScsXG5cdEEgZXh0ZW5kcyBPYmplY3QzRCA9IE9iamVjdDNELFxuXHRCIGV4dGVuZHMgT2JqZWN0M0QgPSBPYmplY3QzRCxcbj4oXG5cdHR5cGU6IFRDb25zdHJhaW50LFxuXHRib2R5QTogRWxlbWVudFJlZjxBPiB8IEEgfCBTaWduYWw8RWxlbWVudFJlZjxBPiB8IEEgfCB1bmRlZmluZWQ+LFxuXHRib2R5QjogRWxlbWVudFJlZjxCPiB8IEIgfCBTaWduYWw8RWxlbWVudFJlZjxCPiB8IEIgfCB1bmRlZmluZWQ+LFxuXHR7XG5cdFx0aW5qZWN0b3IsXG5cdFx0b3B0aW9ucyA9IHt9IGFzIE5ndGNDb25zdHJhaW50T3B0aW9uc01hcFtUQ29uc3RyYWludF0sXG5cdFx0ZGlzYWJsZU9uU3RhcnQgPSBmYWxzZSxcblx0fTogTmd0Y0NvbnN0cmFpbnRPcHRpb25zPFRDb25zdHJhaW50PiA9IHt9LFxuKSB7XG5cdHJldHVybiBhc3NlcnRJbmplY3RvcihpbmplY3RDb25zdHJhaW50LCBpbmplY3RvciwgKCkgPT4ge1xuXHRcdGNvbnN0IHBoeXNpY3MgPSBpbmplY3QoTmd0Y1BoeXNpY3MsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cblx0XHRpZiAoIXBoeXNpY3MpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgW05HVCBDYW5ub25dIGluamVjdENvbnN0cmFpbnQgd2FzIGNhbGxlZCBvdXRzaWRlIG9mIDxuZ3RjLXBoeXNpY3M+YCk7XG5cdFx0fVxuXG5cdFx0Y29uc3Qgd29ya2VyID0gcGh5c2ljcy53b3JrZXI7XG5cblx0XHRjb25zdCB1dWlkID0gbWFrZUlkKCk7XG5cdFx0Y29uc3QgYm9keUFSZWYgPSBpc1NpZ25hbChib2R5QSkgPyBib2R5QSA6IHNpZ25hbChib2R5QSk7XG5cdFx0Y29uc3QgYm9keUJSZWYgPSBpc1NpZ25hbChib2R5QikgPyBib2R5QiA6IHNpZ25hbChib2R5Qik7XG5cdFx0Y29uc3QgYm9keUFWYWx1ZSA9IGNvbXB1dGVkKCgpID0+IHJlc29sdmVSZWYoYm9keUFSZWYoKSkpO1xuXHRcdGNvbnN0IGJvZHlCVmFsdWUgPSBjb21wdXRlZCgoKSA9PiByZXNvbHZlUmVmKGJvZHlCUmVmKCkpKTtcblxuXHRcdGNvbnN0IGNvbnN0cmFpbnRBcGkgPSBjb21wdXRlZCgoKSA9PiB7XG5cdFx0XHRjb25zdCBfd29ya2VyID0gd29ya2VyKCk7XG5cdFx0XHRpZiAoIV93b3JrZXIpIHJldHVybiBudWxsO1xuXG5cdFx0XHRjb25zdCBlbmFibGVEaXNhYmxlID0ge1xuXHRcdFx0XHRkaXNhYmxlOiAoKSA9PiBfd29ya2VyLmRpc2FibGVDb25zdHJhaW50KHsgdXVpZCB9KSxcblx0XHRcdFx0ZW5hYmxlOiAoKSA9PiBfd29ya2VyLmVuYWJsZUNvbnN0cmFpbnQoeyB1dWlkIH0pLFxuXHRcdFx0XHRyZW1vdmU6ICgpID0+IF93b3JrZXIucmVtb3ZlQ29uc3RyYWludCh7IHV1aWQgfSksXG5cdFx0XHR9O1xuXHRcdFx0aWYgKHR5cGUgPT09ICdIaW5nZScpIHtcblx0XHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0XHQuLi5lbmFibGVEaXNhYmxlLFxuXHRcdFx0XHRcdGRpc2FibGVNb3RvcjogKCkgPT4gX3dvcmtlci5kaXNhYmxlQ29uc3RyYWludE1vdG9yKHsgdXVpZCB9KSxcblx0XHRcdFx0XHRlbmFibGVNb3RvcjogKCkgPT4gX3dvcmtlci5lbmFibGVDb25zdHJhaW50TW90b3IoeyB1dWlkIH0pLFxuXHRcdFx0XHRcdHNldE1vdG9yTWF4Rm9yY2U6ICh2YWx1ZTogbnVtYmVyKSA9PiBfd29ya2VyLnNldENvbnN0cmFpbnRNb3Rvck1heEZvcmNlKHsgcHJvcHM6IHZhbHVlLCB1dWlkIH0pLFxuXHRcdFx0XHRcdHNldE1vdG9yU3BlZWQ6ICh2YWx1ZTogbnVtYmVyKSA9PiBfd29ya2VyLnNldENvbnN0cmFpbnRNb3RvclNwZWVkKHsgcHJvcHM6IHZhbHVlLCB1dWlkIH0pLFxuXHRcdFx0XHR9IGFzIE5ndGNIaW5nZUNvbnN0cmFpbnRBcGk7XG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gZW5hYmxlRGlzYWJsZSBhcyBOZ3RjQ29uc3RyYWludEFwaTtcblx0XHR9KTtcblxuXHRcdGxldCBhbHJlYWR5RGlzYWJsZWQgPSBmYWxzZTtcblx0XHRlZmZlY3QoKG9uQ2xlYW51cCkgPT4ge1xuXHRcdFx0Y29uc3QgY3VycmVudFdvcmtlciA9IHdvcmtlcigpO1xuXHRcdFx0aWYgKCFjdXJyZW50V29ya2VyKSByZXR1cm47XG5cblx0XHRcdGNvbnN0IFthLCBiLCBhcGldID0gW2JvZHlBVmFsdWUoKSwgYm9keUJWYWx1ZSgpLCB1bnRyYWNrZWQoY29uc3RyYWludEFwaSldO1xuXHRcdFx0aWYgKCFhIHx8ICFiKSByZXR1cm47XG5cblx0XHRcdGN1cnJlbnRXb3JrZXIuYWRkQ29uc3RyYWludCh7XG5cdFx0XHRcdHByb3BzOiBbYS51dWlkLCBiLnV1aWQsIG9wdGlvbnNdLFxuXHRcdFx0XHR0eXBlLFxuXHRcdFx0XHR1dWlkLFxuXHRcdFx0fSk7XG5cblx0XHRcdGlmIChkaXNhYmxlT25TdGFydCAmJiAhYWxyZWFkeURpc2FibGVkKSB7XG5cdFx0XHRcdGFscmVhZHlEaXNhYmxlZCA9IHRydWU7XG5cdFx0XHRcdGFwaT8uZGlzYWJsZSgpO1xuXHRcdFx0fVxuXG5cdFx0XHRvbkNsZWFudXAoKCkgPT4gY3VycmVudFdvcmtlci5yZW1vdmVDb25zdHJhaW50KHsgdXVpZCB9KSk7XG5cdFx0fSk7XG5cblx0XHRyZXR1cm4gY29uc3RyYWludEFwaTtcblx0fSk7XG59XG5cbmV4cG9ydCBjb25zdCBpbmplY3RQb2ludFRvUG9pbnQgPSBjcmVhdGVJbmplY3RDb25zdHJhaW50KCdQb2ludFRvUG9pbnQnKTtcbmV4cG9ydCBjb25zdCBpbmplY3RDb25lVHdpc3QgPSBjcmVhdGVJbmplY3RDb25zdHJhaW50KCdDb25lVHdpc3QnKTtcbmV4cG9ydCBjb25zdCBpbmplY3REaXN0YW5jZSA9IGNyZWF0ZUluamVjdENvbnN0cmFpbnQoJ0Rpc3RhbmNlJyk7XG5leHBvcnQgY29uc3QgaW5qZWN0TG9jayA9IGNyZWF0ZUluamVjdENvbnN0cmFpbnQoJ0xvY2snKTtcbmV4cG9ydCBjb25zdCBpbmplY3RIaW5nZSA9IGNyZWF0ZUluamVjdENvbnN0cmFpbnQoJ0hpbmdlJyk7XG4iXX0=
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './index';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci10aHJlZS1jYW5ub24tZGVidWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2Nhbm5vbi9kZWJ1Zy9zcmMvYW5ndWxhci10aHJlZS1jYW5ub24tZGVidWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
|
package/esm2022/debug/index.mjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './lib/debug';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2Nhbm5vbi9kZWJ1Zy9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9kZWJ1Zyc7XG4iXX0=
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import { Directive, afterNextRender, inject, input } from '@angular/core';
|
|
2
|
-
import { propsToBody } from '@pmndrs/cannon-worker-api';
|
|
3
|
-
import { injectBeforeRender, injectStore } from 'angular-three';
|
|
4
|
-
import { NgtcPhysics } from 'angular-three-cannon';
|
|
5
|
-
import CannonDebugger from 'cannon-es-debugger';
|
|
6
|
-
import { mergeInputs } from 'ngxtension/inject-inputs';
|
|
7
|
-
import { InstancedMesh, Matrix4, Quaternion, Scene, Vector3 } from 'three';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
const q = new Quaternion();
|
|
10
|
-
const s = new Vector3(1, 1, 1);
|
|
11
|
-
const v = new Vector3();
|
|
12
|
-
const m = new Matrix4();
|
|
13
|
-
function getMatrix(o) {
|
|
14
|
-
if (o instanceof InstancedMesh) {
|
|
15
|
-
o.getMatrixAt(parseInt(o.uuid.split('/')[1]), m);
|
|
16
|
-
return m;
|
|
17
|
-
}
|
|
18
|
-
return o.matrix;
|
|
19
|
-
}
|
|
20
|
-
const defaultOptions = {
|
|
21
|
-
enabled: true,
|
|
22
|
-
scale: 1,
|
|
23
|
-
color: 'black',
|
|
24
|
-
impl: CannonDebugger,
|
|
25
|
-
};
|
|
26
|
-
export class NgtcDebug {
|
|
27
|
-
constructor() {
|
|
28
|
-
this.store = injectStore();
|
|
29
|
-
this.physics = inject(NgtcPhysics);
|
|
30
|
-
this.debug = input(defaultOptions, { transform: mergeInputs(defaultOptions) });
|
|
31
|
-
this.defaultScene = this.store.select('scene');
|
|
32
|
-
this.debuggerScene = new Scene();
|
|
33
|
-
this.bodies = [];
|
|
34
|
-
this.bodyMap = {};
|
|
35
|
-
// NOTE: afterNextRender so we only instantiate once after inputs have been resolved
|
|
36
|
-
afterNextRender(() => {
|
|
37
|
-
this.defaultScene().add(this.debuggerScene);
|
|
38
|
-
this.cannonDebugger = this.debug().impl(this.debuggerScene, { bodies: this.bodies }, {
|
|
39
|
-
color: this.debug().color,
|
|
40
|
-
scale: this.debug().scale,
|
|
41
|
-
});
|
|
42
|
-
});
|
|
43
|
-
injectBeforeRender(() => {
|
|
44
|
-
if (!this.cannonDebugger)
|
|
45
|
-
return;
|
|
46
|
-
const enabled = this.debug().enabled;
|
|
47
|
-
const refs = this.physics.refs;
|
|
48
|
-
for (const uuid in this.bodyMap) {
|
|
49
|
-
const ref = refs[uuid];
|
|
50
|
-
const body = this.bodyMap[uuid];
|
|
51
|
-
if (ref) {
|
|
52
|
-
getMatrix(ref).decompose(v, q, s);
|
|
53
|
-
body.position.copy(v);
|
|
54
|
-
body.quaternion.copy(q);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
for (const child of this.debuggerScene.children)
|
|
58
|
-
child.visible = enabled;
|
|
59
|
-
if (enabled)
|
|
60
|
-
this.cannonDebugger.update();
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
add(uuid, props, type) {
|
|
64
|
-
const body = propsToBody({ uuid, props, type });
|
|
65
|
-
this.bodies.push(body);
|
|
66
|
-
this.bodyMap[uuid] = body;
|
|
67
|
-
}
|
|
68
|
-
remove(uuid) {
|
|
69
|
-
const debugBodyIndex = this.bodies.indexOf(this.bodyMap[uuid]);
|
|
70
|
-
if (debugBodyIndex > -1)
|
|
71
|
-
this.bodies.splice(debugBodyIndex, 1);
|
|
72
|
-
delete this.bodyMap[uuid];
|
|
73
|
-
}
|
|
74
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: NgtcDebug, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
75
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.11", type: NgtcDebug, isStandalone: true, selector: "ngtc-physics[debug]", inputs: { debug: { classPropertyName: "debug", publicName: "debug", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
|
|
76
|
-
}
|
|
77
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: NgtcDebug, decorators: [{
|
|
78
|
-
type: Directive,
|
|
79
|
-
args: [{ selector: 'ngtc-physics[debug]', standalone: true }]
|
|
80
|
-
}], ctorParameters: () => [] });
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nhbm5vbi9kZWJ1Zy9zcmMvbGliL2RlYnVnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUE0QixXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRCxPQUFPLGNBQWMsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQVksVUFBVSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxPQUFPLENBQUM7O0FBRXJGLE1BQU0sQ0FBQyxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7QUFDM0IsTUFBTSxDQUFDLEdBQUcsSUFBSSxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUMvQixNQUFNLENBQUMsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0FBQ3hCLE1BQU0sQ0FBQyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7QUFDeEIsU0FBUyxTQUFTLENBQUMsQ0FBVztJQUM3QixJQUFJLENBQUMsWUFBWSxhQUFhLEVBQUUsQ0FBQztRQUNoQyxDQUFDLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2pELE9BQU8sQ0FBQyxDQUFDO0lB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QUFJLENBQUM7SUFDM0IsQ0FBQztJQUVELE1BQU0sQ0FBQyxJQUFZO1FBQ2xCLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMvRCxJQUFJLGNBQWMsR0FBRyxDQUFDLENBQUM7WUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDL0QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNCLENBQUM7K0dBdERXLFNBQVM7bUdBQVQsU0FBUzs7NEZBQVQsU0FBUztrQkFEckIsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxxQkFBcUIsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBhZnRlck5leHRSZW5kZXIsIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJvZHlQcm9wcywgQm9keVNoYXBlVHlwZSwgcHJvcHNUb0JvZHkgfSBmcm9tICdAcG1uZHJzL2Nhbm5vbi13b3JrZXItYXBpJztcbmltcG9ydCB7IGluamVjdEJlZm9yZVJlbmRlciwgaW5qZWN0U3RvcmUgfSBmcm9tICdhbmd1bGFyLXRocmVlJztcbmltcG9ydCB7IE5ndGNQaHlzaWNzIH0gZnJvbSAnYW5ndWxhci10aHJlZS1jYW5ub24nO1xuaW1wb3J0IHsgQm9keSwgUXVhdGVybmlvbiBhcyBDUXVhcnRlcm5pb24sIFZlYzMsIFdvcmxkIH0gZnJvbSAnY2Fubm9uLWVzJztcbmltcG9ydCBDYW5ub25EZWJ1Z2dlciBmcm9tICdjYW5ub24tZXMtZGVidWdnZXInO1xuaW1wb3J0IHsgbWVyZ2VJbnB1dHMgfSBmcm9tICduZ3h0ZW5zaW9uL2luamVjdC1pbnB1dHMnO1xuaW1wb3J0IHsgSW5zdGFuY2VkTWVzaCwgTWF0cml4NCwgT2JqZWN0M0QsIFF1YXRlcm5pb24sIFNjZW5lLCBWZWN0b3IzIH0gZnJvbSAndGhyZWUnO1xuXG5jb25zdCBxID0gbmV3IFF1YXRlcm5pb24oKTtcbmNvbnN0IHMgPSBuZXcgVmVjdG9yMygxLCAxLCAxKTtcbmNvbnN0IHYgPSBuZXcgVmVjdG9yMygpO1xuY29uc3QgbSA9IG5ldyBNYXRyaXg0KCk7XG5mdW5jdGlvbiBnZXRNYXRyaXgobzogT2JqZWN0M0QpIHtcblx0aWYgKG8gaW5zdGFuY2VvZiBJbnN0YW5jZWRNZXNoKSB7XG5cdFx0by5nZXRNYXRyaXhBdChwYXJzZUludChvLnV1aWQuc3BsaXQoJy8nKVsxXSksIG0pO1xuXHRcdHJldHVybiBtO1xuXHR9XG5cdHJldHVybiBvLm1hdHJpeDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOZ3RjRGVidWdJbnB1dHMge1xuXHRlbmFibGVkOiBib29sZWFuO1xuXHRjb2xvcjogc3RyaW5nO1xuXHRpbXBsOiB0eXBlb2YgQ2Fubm9uRGVidWdnZXI7XG5cdHNjYWxlOiBudW1iZXI7XG59XG5cbmNvbnN0IGRlZmF1bHRPcHRpb25zOiBOZ3RjRGVidWdJbnB1dHMgPSB7XG5cdGVuYWJsZWQ6IHRydWUsXG5cdHNjYWxlOiAxLFxuXHRjb2xvcjogJ2JsYWNrJyxcblx0aW1wbDogQ2Fubm9uRGVidWdnZXIsXG59O1xuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICduZ3RjLXBoeXNpY3NbZGVidWddJywgc3RhbmRhbG9uZTogdHJ1ZSB9KVxuZXhwb3J0IGNsYXNzIE5ndGNEZWJ1ZyB7XG5cdHByaXZhdGUgc3RvcmUgPSBpbmplY3RTdG9yZSgpO1xuXHRwcml2YXRlIHBoeXNpY3MgPSBpbmplY3QoTmd0Y1BoeXNpY3MpO1xuXG5cdGRlYnVnID0gaW5wdXQoZGVmYXVsdE9wdGlvbnMsIHsgdHJhbnNmb3JtOiBtZXJnZUlucHV0cyhkZWZhdWx0T3B0aW9ucykgfSk7XG5cblx0cHJpdmF0ZSBkZWZhdWx0U2NlbmUgPSB0aGlzLnN0b3JlLnNlbGVjdCgnc2NlbmUnKTtcblxuXHRwcml2YXRlIGRlYnVnZ2VyU2NlbmUgPSBuZXcgU2NlbmUoKTtcblx0cHJpdmF0ZSBib2RpZXM6IEJvZHlbXSA9IFtdO1xuXHRwcml2YXRlIGJvZHlNYXA6IFJlY29yZDxzdHJpbmcsIEJvZHk+ID0ge307XG5cblx0cHJpdmF0ZSBjYW5ub25EZWJ1Z2dlciE6IFJldHVyblR5cGU8dHlwZW9mIENhbm5vbkRlYnVnZ2VyPjtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHQvLyBOT1RFOiBhZnRlck5leHRSZW5kZXIgc28gd2Ugb25seSBpbnN0YW50aWF0ZSBvbmNlIGFmdGVyIGlucHV0cyBoYXZlIGJlZW4gcmVzb2x2ZWRcblx0XHRhZnRlck5leHRSZW5kZXIoKCkgPT4ge1xuXHRcdFx0dGhpcy5kZWZhdWx0U2NlbmUoKS5hZGQodGhpcy5kZWJ1Z2dlclNjZW5lKTtcblx0XHRcdHRoaXMuY2Fubm9uRGVidWdnZXIgPSB0aGlzLmRlYnVnKCkuaW1wbCh0aGlzLmRlYnVnZ2VyU2NlbmUsIHsgYm9kaWVzOiB0aGlzLmJvZGllcyB9IGFzIFdvcmxkLCB7XG5cdFx0XHRcdGNvbG9yOiB0aGlzLmRlYnVnKCkuY29sb3IsXG5cdFx0XHRcdHNjYWxlOiB0aGlzLmRlYnVnKCkuc2NhbGUsXG5cdFx0XHR9KTtcblx0XHR9KTtcblxuXHRcdGluamVjdEJlZm9yZVJlbmRlcigoKSA9PiB7XG5cdFx0XHRpZiAoIXRoaXMuY2Fubm9uRGVidWdnZXIpIHJldHVybjtcblxuXHRcdFx0Y29uc3QgZW5hYmxlZCA9IHRoaXMuZGVidWcoKS5lbmFibGVkO1xuXHRcdFx0Y29uc3QgcmVmcyA9IHRoaXMucGh5c2ljcy5yZWZzO1xuXHRcdFx0Zm9yIChjb25zdCB1dWlkIGluIHRoaXMuYm9keU1hcCkge1xuXHRcdFx0XHRjb25zdCByZWYgPSByZWZzW3V1aWRdO1xuXHRcdFx0XHRjb25zdCBib2R5ID0gdGhpcy5ib2R5TWFwW3V1aWRdO1xuXHRcdFx0XHRpZiAocmVmKSB7XG5cdFx0XHRcdFx0Z2V0TWF0cml4KHJlZikuZGVjb21wb3NlKHYsIHEsIHMpO1xuXHRcdFx0XHRcdGJvZHkucG9zaXRpb24uY29weSh2IGFzIHVua25vd24gYXMgVmVjMyk7XG5cdFx0XHRcdFx0Ym9keS5xdWF0ZXJuaW9uLmNvcHkocSBhcyB1bmtub3duIGFzIENRdWFydGVybmlvbik7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Zm9yIChjb25zdCBjaGlsZCBvZiB0aGlzLmRlYnVnZ2VyU2NlbmUuY2hpbGRyZW4pIGNoaWxkLnZpc2libGUgPSBlbmFibGVkO1xuXHRcdFx0aWYgKGVuYWJsZWQpIHRoaXMuY2Fubm9uRGVidWdnZXIudXBkYXRlKCk7XG5cdFx0fSk7XG5cdH1cblxuXHRhZGQodXVpZDogc3RyaW5nLCBwcm9wczogQm9keVByb3BzLCB0eXBlOiBCb2R5U2hhcGVUeXBlKSB7XG5cdFx0Y29uc3QgYm9keSA9IHByb3BzVG9Cb2R5KHsgdXVpZCwgcHJvcHMsIHR5cGUgfSk7XG5cdFx0dGhpcy5ib2RpZXMucHVzaChib2R5KTtcblx0XHR0aGlzLmJvZHlNYXBbdXVpZF0gPSBib2R5O1xuXHR9XG5cblx0cmVtb3ZlKHV1aWQ6IHN0cmluZykge1xuXHRcdGNvbnN0IGRlYnVnQm9keUluZGV4ID0gdGhpcy5ib2RpZXMuaW5kZXhPZih0aGlzLmJvZHlNYXBbdXVpZF0pO1xuXHRcdGlmIChkZWJ1Z0JvZHlJbmRleCA+IC0xKSB0aGlzLmJvZGllcy5zcGxpY2UoZGVidWdCb2R5SW5kZXgsIDEpO1xuXHRcdGRlbGV0ZSB0aGlzLmJvZHlNYXBbdXVpZF07XG5cdH1cbn1cbiJdfQ==
|
package/esm2022/index.mjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './lib/physics';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2Nhbm5vbi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9waHlzaWNzJztcbiJdfQ==
|