three-gamepad-controls 0.14.0 → 0.16.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/dist/core.d.ts +14 -1
- package/dist/core.js +14 -1
- package/dist/gamepad-arcball-controls.d.ts +0 -1
- package/dist/gamepad-controls.d.ts +2 -3
- package/dist/gamepad-controls.js +2 -2
- package/dist/gamepad-drag-controls.d.ts +0 -1
- package/dist/gamepad-first-person-controls.d.ts +0 -1
- package/dist/gamepad-fly-controls.d.ts +0 -1
- package/dist/gamepad-input.d.ts +26 -8
- package/dist/gamepad-input.js +65 -14
- package/dist/gamepad-manager.js +3 -3
- package/dist/gamepad-map-controls.d.ts +0 -1
- package/dist/gamepad-orbit-controls.d.ts +0 -1
- package/dist/gamepad-pointer-lock-controls.d.ts +0 -1
- package/dist/gamepad-trackball-controls.d.ts +0 -1
- package/dist/gamepad-transform-controls.d.ts +0 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.js +2 -2
- package/package.json +6 -6
package/dist/core.d.ts
CHANGED
|
@@ -1,4 +1,17 @@
|
|
|
1
1
|
//#region src/core.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Smallest valid browser-assigned gamepad index.
|
|
4
|
+
*
|
|
5
|
+
* Gamepad slots cannot be negative.
|
|
6
|
+
*/
|
|
7
|
+
declare const MIN_GAMEPAD_INDEX = 0;
|
|
8
|
+
/**
|
|
9
|
+
* Largest valid browser-assigned gamepad index.
|
|
10
|
+
*
|
|
11
|
+
* `Gamepad.index` is a Web IDL `long`, a signed 32-bit integer. Because
|
|
12
|
+
* gamepad slots cannot be negative, the largest valid index is 2^31 - 1.
|
|
13
|
+
*/
|
|
14
|
+
declare const MAX_GAMEPAD_INDEX = 2147483647;
|
|
2
15
|
/**
|
|
3
16
|
* Button indices for the W3C Standard Gamepad mapping.
|
|
4
17
|
* @see https://www.w3.org/TR/gamepad/#dfn-standard-gamepad
|
|
@@ -49,4 +62,4 @@ type GamepadAxisKey = keyof typeof GAMEPAD_AXIS;
|
|
|
49
62
|
*/
|
|
50
63
|
type GamepadAxisValue = (typeof GAMEPAD_AXIS)[keyof typeof GAMEPAD_AXIS];
|
|
51
64
|
//#endregion
|
|
52
|
-
export { GAMEPAD_AXIS, GAMEPAD_BUTTON, GamepadAxisKey, GamepadAxisValue, GamepadButtonKey, GamepadButtonValue };
|
|
65
|
+
export { GAMEPAD_AXIS, GAMEPAD_BUTTON, GamepadAxisKey, GamepadAxisValue, GamepadButtonKey, GamepadButtonValue, MAX_GAMEPAD_INDEX, MIN_GAMEPAD_INDEX };
|
package/dist/core.js
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
//#region src/core.ts
|
|
2
2
|
/**
|
|
3
|
+
* Smallest valid browser-assigned gamepad index.
|
|
4
|
+
*
|
|
5
|
+
* Gamepad slots cannot be negative.
|
|
6
|
+
*/
|
|
7
|
+
const MIN_GAMEPAD_INDEX = 0;
|
|
8
|
+
/**
|
|
9
|
+
* Largest valid browser-assigned gamepad index.
|
|
10
|
+
*
|
|
11
|
+
* `Gamepad.index` is a Web IDL `long`, a signed 32-bit integer. Because
|
|
12
|
+
* gamepad slots cannot be negative, the largest valid index is 2^31 - 1.
|
|
13
|
+
*/
|
|
14
|
+
const MAX_GAMEPAD_INDEX = 2147483647;
|
|
15
|
+
/**
|
|
3
16
|
* Button indices for the W3C Standard Gamepad mapping.
|
|
4
17
|
* @see https://www.w3.org/TR/gamepad/#dfn-standard-gamepad
|
|
5
18
|
*/
|
|
@@ -33,4 +46,4 @@ const GAMEPAD_AXIS = {
|
|
|
33
46
|
RightY: 3
|
|
34
47
|
};
|
|
35
48
|
//#endregion
|
|
36
|
-
export { GAMEPAD_AXIS, GAMEPAD_BUTTON };
|
|
49
|
+
export { GAMEPAD_AXIS, GAMEPAD_BUTTON, MAX_GAMEPAD_INDEX, MIN_GAMEPAD_INDEX };
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { GamepadInput, GamepadInputOptions } from "./gamepad-input.js";
|
|
2
2
|
import { EventDispatcher } from "three";
|
|
3
|
-
|
|
4
3
|
//#region src/gamepad-controls.d.ts
|
|
5
4
|
/**
|
|
6
5
|
* Event map for {@link GamepadControls}.
|
|
@@ -53,8 +52,8 @@ declare abstract class GamepadControls extends EventDispatcher<GamepadControlsEv
|
|
|
53
52
|
* Creates the base input reader and attaches lifecycle listeners.
|
|
54
53
|
*
|
|
55
54
|
* @param options - Shared gamepad selection options.
|
|
56
|
-
* @throws {RangeError} When `gamepadIndex` is not an integer
|
|
57
|
-
*
|
|
55
|
+
* @throws {RangeError} When `gamepadIndex` is not an integer from
|
|
56
|
+
* `MIN_GAMEPAD_INDEX` through `MAX_GAMEPAD_INDEX`.
|
|
58
57
|
*/
|
|
59
58
|
constructor(options?: GamepadControlsOptions);
|
|
60
59
|
/**
|
package/dist/gamepad-controls.js
CHANGED
|
@@ -24,8 +24,8 @@ var GamepadControls = class extends EventDispatcher {
|
|
|
24
24
|
* Creates the base input reader and attaches lifecycle listeners.
|
|
25
25
|
*
|
|
26
26
|
* @param options - Shared gamepad selection options.
|
|
27
|
-
* @throws {RangeError} When `gamepadIndex` is not an integer
|
|
28
|
-
*
|
|
27
|
+
* @throws {RangeError} When `gamepadIndex` is not an integer from
|
|
28
|
+
* `MIN_GAMEPAD_INDEX` through `MAX_GAMEPAD_INDEX`.
|
|
29
29
|
*/
|
|
30
30
|
constructor(options) {
|
|
31
31
|
super();
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { GamepadControls, GamepadControlsOptions } from "./gamepad-controls.js";
|
|
2
2
|
import { FirstPersonControls } from "three/addons/controls/FirstPersonControls.js";
|
|
3
|
-
|
|
4
3
|
//#region src/gamepad-first-person-controls.d.ts
|
|
5
4
|
/**
|
|
6
5
|
* Configuration for {@link GamepadFirstPersonControls}.
|
package/dist/gamepad-input.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { EventDispatcher } from "three";
|
|
2
|
-
|
|
3
2
|
//#region src/gamepad-input.d.ts
|
|
4
3
|
/**
|
|
5
4
|
* Event map for {@link GamepadInput}.
|
|
@@ -37,14 +36,15 @@ type GamepadInputOptions = {
|
|
|
37
36
|
* Browser-assigned gamepad slot to use.
|
|
38
37
|
*
|
|
39
38
|
* When omitted, the connected gamepad with the lowest index is selected.
|
|
40
|
-
* The index must be an integer
|
|
39
|
+
* The index must be an integer from `MIN_GAMEPAD_INDEX` through
|
|
40
|
+
* `MAX_GAMEPAD_INDEX`.
|
|
41
41
|
* A valid but empty slot keeps this input disconnected without falling back
|
|
42
42
|
* to another gamepad.
|
|
43
43
|
*/
|
|
44
44
|
gamepadIndex?: number;
|
|
45
45
|
};
|
|
46
46
|
/**
|
|
47
|
-
* Options for axis
|
|
47
|
+
* Options for axis reads.
|
|
48
48
|
*/
|
|
49
49
|
type GamepadAxisOptions = {
|
|
50
50
|
/**
|
|
@@ -52,6 +52,24 @@ type GamepadAxisOptions = {
|
|
|
52
52
|
*/
|
|
53
53
|
deadzone?: number;
|
|
54
54
|
};
|
|
55
|
+
/**
|
|
56
|
+
* Options for two-dimensional stick reads.
|
|
57
|
+
*/
|
|
58
|
+
type GamepadStickOptions = GamepadAxisOptions & {
|
|
59
|
+
/**
|
|
60
|
+
* Dead zone shape for this read.
|
|
61
|
+
*
|
|
62
|
+
* `"axial"` processes each axis independently, while `"radial"` processes
|
|
63
|
+
* the stick magnitude.
|
|
64
|
+
* @default "axial"
|
|
65
|
+
*/
|
|
66
|
+
deadzoneMode?: "axial" | "radial";
|
|
67
|
+
/**
|
|
68
|
+
* Whether to remap values outside the dead zone to the full output range.
|
|
69
|
+
* @default false
|
|
70
|
+
*/
|
|
71
|
+
rescale?: boolean;
|
|
72
|
+
};
|
|
55
73
|
/**
|
|
56
74
|
* Two-dimensional stick input after dead zone processing.
|
|
57
75
|
*/
|
|
@@ -81,8 +99,8 @@ declare class GamepadInput extends EventDispatcher<GamepadInputEventMap> {
|
|
|
81
99
|
* Creates a gamepad input reader.
|
|
82
100
|
*
|
|
83
101
|
* @param options - Optional overrides for the default input behavior.
|
|
84
|
-
* @throws {RangeError} When `gamepadIndex` is not an integer
|
|
85
|
-
*
|
|
102
|
+
* @throws {RangeError} When `gamepadIndex` is not an integer from
|
|
103
|
+
* `MIN_GAMEPAD_INDEX` through `MAX_GAMEPAD_INDEX`.
|
|
86
104
|
*/
|
|
87
105
|
constructor(options?: Partial<GamepadInputOptions>);
|
|
88
106
|
/**
|
|
@@ -166,10 +184,10 @@ declare class GamepadInput extends EventDispatcher<GamepadInputEventMap> {
|
|
|
166
184
|
*
|
|
167
185
|
* @param xAxis - Horizontal axis index.
|
|
168
186
|
* @param yAxis - Vertical axis index.
|
|
169
|
-
* @param options - Optional per-read
|
|
187
|
+
* @param options - Optional per-read stick options.
|
|
170
188
|
* @returns Object containing processed `x` and `y` values.
|
|
171
189
|
*/
|
|
172
|
-
stick(xAxis: number, yAxis: number, options?:
|
|
190
|
+
stick(xAxis: number, yAxis: number, options?: GamepadStickOptions): GamepadStick;
|
|
173
191
|
/**
|
|
174
192
|
* Plays an effect through the active gamepad's primary vibration actuator.
|
|
175
193
|
*
|
|
@@ -193,4 +211,4 @@ declare class GamepadInput extends EventDispatcher<GamepadInputEventMap> {
|
|
|
193
211
|
resetVibration(): Promise<GamepadHapticsResult | null>;
|
|
194
212
|
}
|
|
195
213
|
//#endregion
|
|
196
|
-
export { GamepadAxisOptions, GamepadInput, GamepadInputEventMap, GamepadInputOptions, GamepadStick };
|
|
214
|
+
export { GamepadAxisOptions, GamepadInput, GamepadInputEventMap, GamepadInputOptions, GamepadStick, GamepadStickOptions };
|
package/dist/gamepad-input.js
CHANGED
|
@@ -4,17 +4,62 @@ import { EventDispatcher } from "three";
|
|
|
4
4
|
//#region src/gamepad-input.ts
|
|
5
5
|
const DEFAULT_GAMEPAD_INPUT_OPTIONS = { deadzone: .1 };
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* Applies a dead zone and remaps the remaining magnitude to `[0, 1]`.
|
|
8
8
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
9
|
+
* @param magnitude - Non-negative input magnitude.
|
|
10
|
+
* @param threshold - Dead zone size.
|
|
11
|
+
* @returns Rescaled magnitude, or `0` when inside a fully closed dead zone.
|
|
12
|
+
*/
|
|
13
|
+
const rescaleGamepadDeadzoneMagnitude = (magnitude, threshold) => {
|
|
14
|
+
if (magnitude <= threshold || threshold >= 1) return 0;
|
|
15
|
+
return Math.min((magnitude - threshold) / (1 - threshold), 1);
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Applies an axial dead zone, optionally rescaling the remaining range.
|
|
19
|
+
*
|
|
20
|
+
* @param value - Raw axis value.
|
|
21
|
+
* @param threshold - Dead zone size.
|
|
22
|
+
* @param rescale - Whether to remap the remaining magnitude to `[0, 1]`.
|
|
23
|
+
* @returns Processed signed axis value.
|
|
24
|
+
*/
|
|
25
|
+
const applyGamepadAxialDeadzone = (value, threshold, rescale) => {
|
|
26
|
+
const magnitude = Math.abs(value);
|
|
27
|
+
if (magnitude < threshold) return 0;
|
|
28
|
+
if (!rescale) return value;
|
|
29
|
+
return Math.sign(value) * rescaleGamepadDeadzoneMagnitude(magnitude, threshold);
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Returns the stick unchanged, or centered if its magnitude is below the dead
|
|
33
|
+
* zone `threshold`.
|
|
11
34
|
*
|
|
12
|
-
* @param
|
|
13
|
-
* @param
|
|
14
|
-
* @
|
|
35
|
+
* @param x - Raw horizontal stick value.
|
|
36
|
+
* @param y - Raw vertical stick value.
|
|
37
|
+
* @param threshold - Radial dead zone size.
|
|
38
|
+
* @param rescale - Whether to remap the remaining magnitude to `[0, 1]`.
|
|
39
|
+
* @returns The processed stick, or `{ x: 0, y: 0 }` inside the dead zone.
|
|
15
40
|
*/
|
|
16
|
-
const
|
|
17
|
-
|
|
41
|
+
const applyGamepadRadialDeadzone = (x, y, threshold, rescale) => {
|
|
42
|
+
const magnitude = Math.hypot(x, y);
|
|
43
|
+
if (magnitude < threshold) return {
|
|
44
|
+
x: 0,
|
|
45
|
+
y: 0
|
|
46
|
+
};
|
|
47
|
+
if (rescale) {
|
|
48
|
+
const rescaledMagnitude = rescaleGamepadDeadzoneMagnitude(magnitude, threshold);
|
|
49
|
+
if (rescaledMagnitude === 0 || magnitude === 0) return {
|
|
50
|
+
x: 0,
|
|
51
|
+
y: 0
|
|
52
|
+
};
|
|
53
|
+
const scale = rescaledMagnitude / magnitude;
|
|
54
|
+
return {
|
|
55
|
+
x: x * scale,
|
|
56
|
+
y: y * scale
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
return {
|
|
60
|
+
x,
|
|
61
|
+
y
|
|
62
|
+
};
|
|
18
63
|
};
|
|
19
64
|
/**
|
|
20
65
|
* Returns whether a gamepad button is currently pressed.
|
|
@@ -66,8 +111,8 @@ var GamepadInput = class extends EventDispatcher {
|
|
|
66
111
|
* Creates a gamepad input reader.
|
|
67
112
|
*
|
|
68
113
|
* @param options - Optional overrides for the default input behavior.
|
|
69
|
-
* @throws {RangeError} When `gamepadIndex` is not an integer
|
|
70
|
-
*
|
|
114
|
+
* @throws {RangeError} When `gamepadIndex` is not an integer from
|
|
115
|
+
* `MIN_GAMEPAD_INDEX` through `MAX_GAMEPAD_INDEX`.
|
|
71
116
|
*/
|
|
72
117
|
constructor(options) {
|
|
73
118
|
super();
|
|
@@ -224,20 +269,26 @@ var GamepadInput = class extends EventDispatcher {
|
|
|
224
269
|
* @returns Axis value after dead zone processing, or `0` when unavailable.
|
|
225
270
|
*/
|
|
226
271
|
axis(axis, options) {
|
|
227
|
-
|
|
272
|
+
const value = this.#gamepad?.axes[axis] ?? 0;
|
|
273
|
+
return applyGamepadAxialDeadzone(value, this.#getDeadzone(options), false);
|
|
228
274
|
}
|
|
229
275
|
/**
|
|
230
276
|
* Returns a two-axis stick after dead zone processing.
|
|
231
277
|
*
|
|
232
278
|
* @param xAxis - Horizontal axis index.
|
|
233
279
|
* @param yAxis - Vertical axis index.
|
|
234
|
-
* @param options - Optional per-read
|
|
280
|
+
* @param options - Optional per-read stick options.
|
|
235
281
|
* @returns Object containing processed `x` and `y` values.
|
|
236
282
|
*/
|
|
237
283
|
stick(xAxis, yAxis, options) {
|
|
284
|
+
const rescale = options?.rescale ?? false;
|
|
285
|
+
const threshold = this.#getDeadzone(options);
|
|
286
|
+
const x = this.#gamepad?.axes[xAxis] ?? 0;
|
|
287
|
+
const y = this.#gamepad?.axes[yAxis] ?? 0;
|
|
288
|
+
if (options?.deadzoneMode === "radial") return applyGamepadRadialDeadzone(x, y, threshold, rescale);
|
|
238
289
|
return {
|
|
239
|
-
x:
|
|
240
|
-
y:
|
|
290
|
+
x: applyGamepadAxialDeadzone(x, threshold, rescale),
|
|
291
|
+
y: applyGamepadAxialDeadzone(y, threshold, rescale)
|
|
241
292
|
};
|
|
242
293
|
}
|
|
243
294
|
/**
|
package/dist/gamepad-manager.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { MAX_GAMEPAD_INDEX } from "./core.js";
|
|
1
2
|
//#region src/gamepad-manager.ts
|
|
2
|
-
const MAX_GAMEPAD_INDEX = 2147483647;
|
|
3
3
|
const EMPTY_UPDATE_RESULT = {
|
|
4
4
|
gamepad: null,
|
|
5
5
|
connected: null,
|
|
@@ -151,11 +151,11 @@ var GamepadManager = class {
|
|
|
151
151
|
* @param gamepadIndex - Browser-assigned gamepad index option.
|
|
152
152
|
* @returns Internal active-gamepad selection mode.
|
|
153
153
|
* @throws {RangeError} When the explicit index is not an integer in the
|
|
154
|
-
* inclusive range
|
|
154
|
+
* inclusive range [{@link MIN_GAMEPAD_INDEX}, {@link MAX_GAMEPAD_INDEX}].
|
|
155
155
|
*/
|
|
156
156
|
#resolveSelection(gamepadIndex) {
|
|
157
157
|
if (gamepadIndex === void 0) return { type: "first-available" };
|
|
158
|
-
if (!Number.isInteger(gamepadIndex) || gamepadIndex < 0 || gamepadIndex >
|
|
158
|
+
if (!Number.isInteger(gamepadIndex) || gamepadIndex < 0 || gamepadIndex > 2147483647) throw new RangeError(`gamepadIndex must be an integer between 0 and ${MAX_GAMEPAD_INDEX}.`);
|
|
159
159
|
return {
|
|
160
160
|
type: "index",
|
|
161
161
|
index: gamepadIndex
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { GamepadControls, GamepadControlsOptions } from "./gamepad-controls.js";
|
|
2
2
|
import { PointerLockControls } from "three/addons/controls/PointerLockControls.js";
|
|
3
|
-
|
|
4
3
|
//#region src/gamepad-pointer-lock-controls.d.ts
|
|
5
4
|
/**
|
|
6
5
|
* Configuration for {@link GamepadPointerLockControls}.
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { GamepadControls, GamepadControlsOptions } from "./gamepad-controls.js";
|
|
2
2
|
import { TrackballControls } from "three/addons/controls/TrackballControls.js";
|
|
3
|
-
|
|
4
3
|
//#region src/gamepad-trackball-controls.d.ts
|
|
5
4
|
/**
|
|
6
5
|
* Configuration for {@link GamepadTrackballControls}.
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { GamepadControls, GamepadControlsOptions } from "./gamepad-controls.js";
|
|
2
2
|
import { TransformControls } from "three/addons/controls/TransformControls.js";
|
|
3
|
-
|
|
4
3
|
//#region src/gamepad-transform-controls.d.ts
|
|
5
4
|
/**
|
|
6
5
|
* Configuration for {@link GamepadTransformControls}.
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { GAMEPAD_AXIS, GAMEPAD_BUTTON, GamepadAxisKey, GamepadAxisValue, GamepadButtonKey, GamepadButtonValue } from "./core.js";
|
|
2
|
-
import { GamepadAxisOptions, GamepadInput, GamepadInputEventMap, GamepadInputOptions, GamepadStick } from "./gamepad-input.js";
|
|
1
|
+
import { GAMEPAD_AXIS, GAMEPAD_BUTTON, GamepadAxisKey, GamepadAxisValue, GamepadButtonKey, GamepadButtonValue, MAX_GAMEPAD_INDEX, MIN_GAMEPAD_INDEX } from "./core.js";
|
|
2
|
+
import { GamepadAxisOptions, GamepadInput, GamepadInputEventMap, GamepadInputOptions, GamepadStick, GamepadStickOptions } from "./gamepad-input.js";
|
|
3
3
|
import { GamepadControls, GamepadControlsEventMap, GamepadControlsOptions } from "./gamepad-controls.js";
|
|
4
4
|
import { GamepadArcballControls, GamepadArcballControlsOptions } from "./gamepad-arcball-controls.js";
|
|
5
5
|
import { GamepadDragControls, GamepadDragControlsOptions } from "./gamepad-drag-controls.js";
|
|
@@ -10,4 +10,4 @@ import { GamepadMapControls } from "./gamepad-map-controls.js";
|
|
|
10
10
|
import { GamepadPointerLockControls, GamepadPointerLockControlsOptions } from "./gamepad-pointer-lock-controls.js";
|
|
11
11
|
import { GamepadTrackballControls, GamepadTrackballControlsOptions } from "./gamepad-trackball-controls.js";
|
|
12
12
|
import { GamepadTransformControls, GamepadTransformControlsOptions } from "./gamepad-transform-controls.js";
|
|
13
|
-
export { GAMEPAD_AXIS, GAMEPAD_BUTTON, GamepadArcballControls, GamepadArcballControlsOptions, GamepadAxisKey, GamepadAxisOptions, GamepadAxisValue, GamepadButtonKey, GamepadButtonValue, GamepadControls, GamepadControlsEventMap, GamepadControlsOptions, GamepadDragControls, GamepadDragControlsOptions, GamepadFirstPersonControls, GamepadFirstPersonControlsOptions, GamepadFlyControls, GamepadFlyControlsOptions, GamepadInput, GamepadInputEventMap, GamepadInputOptions, GamepadMapControls, GamepadOrbitControls, GamepadOrbitControlsOptions, GamepadPointerLockControls, GamepadPointerLockControlsOptions, GamepadStick, GamepadTrackballControls, GamepadTrackballControlsOptions, GamepadTransformControls, GamepadTransformControlsOptions };
|
|
13
|
+
export { GAMEPAD_AXIS, GAMEPAD_BUTTON, GamepadArcballControls, GamepadArcballControlsOptions, GamepadAxisKey, GamepadAxisOptions, GamepadAxisValue, GamepadButtonKey, GamepadButtonValue, GamepadControls, GamepadControlsEventMap, GamepadControlsOptions, GamepadDragControls, GamepadDragControlsOptions, GamepadFirstPersonControls, GamepadFirstPersonControlsOptions, GamepadFlyControls, GamepadFlyControlsOptions, GamepadInput, GamepadInputEventMap, GamepadInputOptions, GamepadMapControls, GamepadOrbitControls, GamepadOrbitControlsOptions, GamepadPointerLockControls, GamepadPointerLockControlsOptions, GamepadStick, GamepadStickOptions, GamepadTrackballControls, GamepadTrackballControlsOptions, GamepadTransformControls, GamepadTransformControlsOptions, MAX_GAMEPAD_INDEX, MIN_GAMEPAD_INDEX };
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { GAMEPAD_AXIS, GAMEPAD_BUTTON } from "./core.js";
|
|
1
|
+
import { GAMEPAD_AXIS, GAMEPAD_BUTTON, MAX_GAMEPAD_INDEX, MIN_GAMEPAD_INDEX } from "./core.js";
|
|
2
2
|
import { GamepadInput } from "./gamepad-input.js";
|
|
3
3
|
import { GamepadControls } from "./gamepad-controls.js";
|
|
4
4
|
import { GamepadArcballControls } from "./gamepad-arcball-controls.js";
|
|
@@ -10,4 +10,4 @@ import { GamepadMapControls } from "./gamepad-map-controls.js";
|
|
|
10
10
|
import { GamepadPointerLockControls } from "./gamepad-pointer-lock-controls.js";
|
|
11
11
|
import { GamepadTrackballControls } from "./gamepad-trackball-controls.js";
|
|
12
12
|
import { GamepadTransformControls } from "./gamepad-transform-controls.js";
|
|
13
|
-
export { GAMEPAD_AXIS, GAMEPAD_BUTTON, GamepadArcballControls, GamepadControls, GamepadDragControls, GamepadFirstPersonControls, GamepadFlyControls, GamepadInput, GamepadMapControls, GamepadOrbitControls, GamepadPointerLockControls, GamepadTrackballControls, GamepadTransformControls };
|
|
13
|
+
export { GAMEPAD_AXIS, GAMEPAD_BUTTON, GamepadArcballControls, GamepadControls, GamepadDragControls, GamepadFirstPersonControls, GamepadFlyControls, GamepadInput, GamepadMapControls, GamepadOrbitControls, GamepadPointerLockControls, GamepadTrackballControls, GamepadTransformControls, MAX_GAMEPAD_INDEX, MIN_GAMEPAD_INDEX };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "three-gamepad-controls",
|
|
3
3
|
"description": "Gamepad support for Three.js controls.",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.16.0",
|
|
5
5
|
"homepage": "https://github.com/luckasnix/three-gamepad-controls#readme",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Kasnix",
|
|
@@ -46,16 +46,16 @@
|
|
|
46
46
|
}
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@biomejs/biome": "2.5.
|
|
50
|
-
"@commitlint/cli": "21.2.
|
|
49
|
+
"@biomejs/biome": "2.5.4",
|
|
50
|
+
"@commitlint/cli": "21.2.1",
|
|
51
51
|
"@commitlint/config-conventional": "21.2.0",
|
|
52
52
|
"@commitlint/types": "21.2.0",
|
|
53
|
-
"@types/node": "24.13.
|
|
53
|
+
"@types/node": "24.13.3",
|
|
54
54
|
"@types/three": "0.184.0",
|
|
55
55
|
"husky": "9.1.7",
|
|
56
56
|
"three": "0.184.0",
|
|
57
|
-
"tsdown": "0.22.
|
|
58
|
-
"typescript": "
|
|
57
|
+
"tsdown": "0.22.8",
|
|
58
|
+
"typescript": "7.0.2"
|
|
59
59
|
},
|
|
60
60
|
"peerDependencies": {
|
|
61
61
|
"@types/three": ">=0.184.0",
|