dualsense-ts 2.2.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/README.md +9 -2
- package/dist/comparators.d.ts +13 -0
- package/dist/comparators.d.ts.map +1 -0
- package/dist/comparators.js +27 -0
- package/dist/comparators.js.map +1 -0
- package/dist/dualsense.d.ts +10 -1
- package/dist/dualsense.d.ts.map +1 -1
- package/dist/dualsense.js +46 -45
- package/dist/dualsense.js.map +1 -1
- package/dist/elements/analog.d.ts +1 -1
- package/dist/elements/analog.d.ts.map +1 -1
- package/dist/elements/analog.js +13 -3
- package/dist/elements/analog.js.map +1 -1
- package/dist/elements/dpad.d.ts +1 -1
- package/dist/elements/dpad.d.ts.map +1 -1
- package/dist/elements/dpad.js +6 -5
- package/dist/elements/dpad.js.map +1 -1
- package/dist/elements/touch.d.ts +1 -1
- package/dist/elements/touch.d.ts.map +1 -1
- package/dist/elements/touch.js.map +1 -1
- package/dist/elements/touchpad.d.ts +1 -1
- package/dist/elements/touchpad.d.ts.map +1 -1
- package/dist/elements/touchpad.js.map +1 -1
- package/dist/elements/trigger.d.ts.map +1 -1
- package/dist/elements/trigger.js +1 -1
- package/dist/elements/trigger.js.map +1 -1
- package/dist/elements/unisense.d.ts +1 -1
- package/dist/elements/unisense.d.ts.map +1 -1
- package/dist/elements/unisense.js +12 -5
- package/dist/elements/unisense.js.map +1 -1
- package/dist/hid/dualsense_hid.d.ts +16 -58
- package/dist/hid/dualsense_hid.d.ts.map +1 -1
- package/dist/hid/dualsense_hid.js +25 -101
- package/dist/hid/dualsense_hid.js.map +1 -1
- package/dist/hid/hid_provider.d.ts +86 -0
- package/dist/hid/hid_provider.d.ts.map +1 -0
- package/dist/hid/hid_provider.js +45 -0
- package/dist/hid/hid_provider.js.map +1 -0
- package/dist/hid/index.d.ts +4 -1
- package/dist/hid/index.d.ts.map +1 -1
- package/dist/hid/index.js +4 -1
- package/dist/hid/index.js.map +1 -1
- package/dist/hid/node_hid_provider.d.ts +11 -0
- package/dist/hid/node_hid_provider.d.ts.map +1 -0
- package/dist/hid/node_hid_provider.js +97 -0
- package/dist/hid/node_hid_provider.js.map +1 -0
- package/dist/hid/platform_hid_provider.d.ts +4 -0
- package/dist/hid/platform_hid_provider.d.ts.map +1 -0
- package/dist/hid/platform_hid_provider.js +7 -0
- package/dist/hid/platform_hid_provider.js.map +1 -0
- package/dist/hid/web_hid_provider.d.ts +10 -0
- package/dist/hid/web_hid_provider.d.ts.map +1 -0
- package/dist/hid/web_hid_provider.js +102 -0
- package/dist/hid/web_hid_provider.js.map +1 -0
- package/dist/{hid/ids.d.ts → id.d.ts} +6 -2
- package/dist/id.d.ts.map +1 -0
- package/dist/{hid/ids.js → id.js} +1 -1
- package/dist/id.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/input.d.ts +81 -36
- package/dist/input.d.ts.map +1 -1
- package/dist/input.js +128 -89
- package/dist/input.js.map +1 -1
- package/docs/Analog.md +81 -131
- package/docs/AnalogParams.md +7 -9
- package/docs/Axis.md +72 -79
- package/docs/Brightness.md +8 -8
- package/docs/CommandScopeA.md +16 -16
- package/docs/CommandScopeB.md +14 -14
- package/docs/Dpad.md +74 -81
- package/docs/DpadParams.md +8 -8
- package/docs/DualSenseCommand.md +45 -45
- package/docs/Dualsense.md +83 -90
- package/docs/DualsenseHID.md +47 -42
- package/docs/DualsenseHIDState.md +41 -41
- package/docs/DualsenseParams.md +17 -17
- package/docs/Exports.md +18 -21
- package/docs/Haptic.md +1 -1
- package/docs/Home.md +29 -31
- package/docs/Indicator.md +2 -2
- package/docs/Input.md +70 -79
- package/docs/InputId.md +84 -84
- package/docs/InputParams.md +4 -4
- package/docs/LedOptions.md +10 -10
- package/docs/Momentary.md +70 -77
- package/docs/Motion.md +2 -2
- package/docs/Mute.md +71 -89
- package/docs/PlayerID.md +12 -12
- package/docs/PulseOptions.md +8 -8
- package/docs/Touchpad.md +120 -94
- package/docs/Trigger.md +75 -82
- package/docs/TriggerMode.md +22 -22
- package/docs/Unisense.md +74 -81
- package/docs/UnisenseParams.md +7 -7
- package/package.json +16 -10
- package/src/comparators.ts +26 -0
- package/src/dualsense.ts +61 -58
- package/src/elements/analog.spec.ts +17 -0
- package/src/elements/analog.ts +14 -8
- package/src/elements/axis.spec.ts +31 -0
- package/src/elements/dpad.ts +7 -6
- package/src/elements/touch.ts +1 -1
- package/src/elements/touchpad.ts +1 -1
- package/src/elements/trigger.ts +1 -1
- package/src/elements/unisense.ts +16 -15
- package/src/hid/dualsense_hid.ts +25 -156
- package/src/hid/{dualsense_hid.spec.ts → hid_provider.spec.ts} +1 -1
- package/src/hid/hid_provider.ts +100 -0
- package/src/hid/index.ts +4 -1
- package/src/hid/node_hid_provider.ts +108 -0
- package/src/hid/platform_hid_provider.ts +4 -0
- package/src/hid/web_hid_provider.ts +116 -0
- package/src/{hid/ids.ts → id.ts} +6 -1
- package/src/index.ts +2 -0
- package/src/input.ts +178 -142
- package/src/readme.spec.ts +6 -8
- package/webpack.config.js +42 -0
- package/dist/hid/ids.d.ts.map +0 -1
- package/dist/hid/ids.js.map +0 -1
- package/docs/Increment.md +0 -1554
- package/docs/Touch.md +0 -1824
package/README.md
CHANGED
|
@@ -13,6 +13,13 @@ Install it using your preferred package manager:
|
|
|
13
13
|
- `yarn add dualsense-ts`
|
|
14
14
|
- `npm add dualsense-ts`
|
|
15
15
|
|
|
16
|
+
### Platforms
|
|
17
|
+
|
|
18
|
+
`dualsense-ts` is a cross-platform, low dependency library that works in Node.js or natively in your browser.
|
|
19
|
+
|
|
20
|
+
- In Node.js, the only dependency is `node-hid`
|
|
21
|
+
- In the browser, tree-shaking reduces this to a zero-dependency package relying on WebHID
|
|
22
|
+
|
|
16
23
|
### Connecting
|
|
17
24
|
|
|
18
25
|
`dualsense-ts` will try to connect to the first Dualsense controller it finds.
|
|
@@ -50,7 +57,7 @@ controller.touchpad.right.contact.state; // false
|
|
|
50
57
|
+controller.touchpad.right.x; // -0.44, -1 to 1
|
|
51
58
|
```
|
|
52
59
|
|
|
53
|
-
- _Callbacks_: Each input is an EventEmitter that provides `input`, `press`, `release`, and `change` events
|
|
60
|
+
- _Callbacks_: Each input is an EventEmitter, or EventTarget that provides `input`, `press`, `release`, and `change` events
|
|
54
61
|
|
|
55
62
|
```typescript
|
|
56
63
|
// Change events are triggered only when an input's value changes
|
|
@@ -61,7 +68,7 @@ controller.triangle.on("change", (input) =>
|
|
|
61
68
|
// ▲ changed: false
|
|
62
69
|
|
|
63
70
|
// The callback provides two arguments, so you can monitor nested inputs
|
|
64
|
-
// You'll get a reference to your original input, and
|
|
71
|
+
// You'll get a reference to your original input, and the one that changed
|
|
65
72
|
controller.dpad.on("press", (dpad, input) =>
|
|
66
73
|
assert(dpad === controller.dpad)
|
|
67
74
|
console.log(`${input} pressed`)
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Input state change checker that always returns true.
|
|
3
|
+
*/
|
|
4
|
+
export declare function VirtualComparator(): boolean;
|
|
5
|
+
/**
|
|
6
|
+
* Input state change checker that considers a numeric threshold.
|
|
7
|
+
*/
|
|
8
|
+
export declare function ThresholdComparator(threshold: number, state: unknown, newState: unknown): boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Input state change checker for most values.
|
|
11
|
+
*/
|
|
12
|
+
export declare function BasicComparator(state: unknown, newState: unknown): boolean;
|
|
13
|
+
//# sourceMappingURL=comparators.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comparators.d.ts","sourceRoot":"","sources":["../src/comparators.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,OAAO,GAChB,OAAO,CAIT;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAE1E"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BasicComparator = exports.ThresholdComparator = exports.VirtualComparator = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Input state change checker that always returns true.
|
|
6
|
+
*/
|
|
7
|
+
function VirtualComparator() {
|
|
8
|
+
return true;
|
|
9
|
+
}
|
|
10
|
+
exports.VirtualComparator = VirtualComparator;
|
|
11
|
+
/**
|
|
12
|
+
* Input state change checker that considers a numeric threshold.
|
|
13
|
+
*/
|
|
14
|
+
function ThresholdComparator(threshold, state, newState) {
|
|
15
|
+
if (typeof state !== "number" || typeof newState !== "number")
|
|
16
|
+
throw new Error("Bad threshold comparison");
|
|
17
|
+
return Math.abs(state - newState) > threshold;
|
|
18
|
+
}
|
|
19
|
+
exports.ThresholdComparator = ThresholdComparator;
|
|
20
|
+
/**
|
|
21
|
+
* Input state change checker for most values.
|
|
22
|
+
*/
|
|
23
|
+
function BasicComparator(state, newState) {
|
|
24
|
+
return state !== newState;
|
|
25
|
+
}
|
|
26
|
+
exports.BasicComparator = BasicComparator;
|
|
27
|
+
//# sourceMappingURL=comparators.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comparators.js","sourceRoot":"","sources":["../src/comparators.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,OAAO,IAAI,CAAC;AACd,CAAC;AAFD,8CAEC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CACjC,SAAiB,EACjB,KAAc,EACd,QAAiB;IAEjB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAC3D,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC,GAAG,SAAS,CAAC;AAChD,CAAC;AARD,kDAQC;AAED;;GAEG;AACH,SAAgB,eAAe,CAAC,KAAc,EAAE,QAAiB;IAC/D,OAAO,KAAK,KAAK,QAAQ,CAAC;AAC5B,CAAC;AAFD,0CAEC"}
|
package/dist/dualsense.d.ts
CHANGED
|
@@ -2,6 +2,9 @@ import { Momentary, Dpad, DpadParams, Mute, Unisense, UnisenseParams, Touchpad }
|
|
|
2
2
|
import { Input, InputParams } from "./input";
|
|
3
3
|
import { DualsenseHID } from "./hid";
|
|
4
4
|
export interface DualsenseParams extends InputParams {
|
|
5
|
+
/**
|
|
6
|
+
* Sets the source of HID events for the controller interface.
|
|
7
|
+
*/
|
|
5
8
|
hid?: DualsenseHID | null;
|
|
6
9
|
ps?: InputParams;
|
|
7
10
|
mute?: InputParams;
|
|
@@ -16,6 +19,9 @@ export interface DualsenseParams extends InputParams {
|
|
|
16
19
|
right?: UnisenseParams;
|
|
17
20
|
touchpad?: InputParams;
|
|
18
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* Represents a Dualsense controller.
|
|
24
|
+
*/
|
|
19
25
|
export declare class Dualsense extends Input<Dualsense> {
|
|
20
26
|
readonly state: Dualsense;
|
|
21
27
|
readonly ps: Momentary;
|
|
@@ -30,9 +36,12 @@ export declare class Dualsense extends Input<Dualsense> {
|
|
|
30
36
|
readonly left: Unisense;
|
|
31
37
|
readonly right: Unisense;
|
|
32
38
|
readonly touchpad: Touchpad;
|
|
33
|
-
readonly hid: DualsenseHID
|
|
39
|
+
readonly hid: DualsenseHID;
|
|
34
40
|
get active(): boolean;
|
|
35
41
|
constructor(params?: DualsenseParams);
|
|
42
|
+
/**
|
|
43
|
+
* Distributes input values to various elements.
|
|
44
|
+
*/
|
|
36
45
|
private processHID;
|
|
37
46
|
}
|
|
38
47
|
//# sourceMappingURL=dualsense.d.ts.map
|
package/dist/dualsense.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dualsense.d.ts","sourceRoot":"","sources":["../src/dualsense.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,IAAI,EACJ,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,cAAc,EACd,QAAQ,EACT,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,KAAK,EAAY,WAAW,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,
|
|
1
|
+
{"version":3,"file":"dualsense.d.ts","sourceRoot":"","sources":["../src/dualsense.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,IAAI,EACJ,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,cAAc,EACd,QAAQ,EACT,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,KAAK,EAAY,WAAW,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,EAEL,YAAY,EAGb,MAAM,OAAO,CAAC;AAEf,MAAM,WAAW,eAAgB,SAAQ,WAAW;IAClD;;OAEG;IACH,GAAG,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAE1B,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,QAAQ,CAAC,EAAE,WAAW,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC;IAC7C,SAAgB,KAAK,EAAE,SAAS,CAAQ;IAExC,SAAgB,EAAE,EAAE,SAAS,CAAC;IAC9B,SAAgB,IAAI,EAAE,IAAI,CAAC;IAE3B,SAAgB,OAAO,EAAE,SAAS,CAAC;IACnC,SAAgB,MAAM,EAAE,SAAS,CAAC;IAElC,SAAgB,QAAQ,EAAE,SAAS,CAAC;IACpC,SAAgB,MAAM,EAAE,SAAS,CAAC;IAClC,SAAgB,KAAK,EAAE,SAAS,CAAC;IACjC,SAAgB,MAAM,EAAE,SAAS,CAAC;IAElC,SAAgB,IAAI,EAAE,IAAI,CAAC;IAE3B,SAAgB,IAAI,EAAE,QAAQ,CAAC;IAC/B,SAAgB,KAAK,EAAE,QAAQ,CAAC;IAEhC,SAAgB,QAAQ,EAAE,QAAQ,CAAC;IAEnC,SAAgB,GAAG,EAAE,YAAY,CAAC;IAElC,IAAW,MAAM,IAAI,OAAO,CAI3B;gBAEW,MAAM,GAAE,eAAoB;IAwExC;;OAEG;IACH,OAAO,CAAC,UAAU;CAwCnB"}
|
package/dist/dualsense.js
CHANGED
|
@@ -4,11 +4,13 @@ exports.Dualsense = void 0;
|
|
|
4
4
|
const elements_1 = require("./elements");
|
|
5
5
|
const input_1 = require("./input");
|
|
6
6
|
const hid_1 = require("./hid");
|
|
7
|
+
/**
|
|
8
|
+
* Represents a Dualsense controller.
|
|
9
|
+
*/
|
|
7
10
|
class Dualsense extends input_1.Input {
|
|
8
11
|
constructor(params = {}) {
|
|
9
12
|
super(params);
|
|
10
13
|
this.state = this;
|
|
11
|
-
this.hid = null;
|
|
12
14
|
this.ps = new elements_1.Momentary({
|
|
13
15
|
icon: "㎰",
|
|
14
16
|
name: "Home",
|
|
@@ -69,53 +71,52 @@ class Dualsense extends input_1.Input {
|
|
|
69
71
|
name: "Touchpad",
|
|
70
72
|
...(params.touchpad || {}),
|
|
71
73
|
});
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
this.
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
});
|
|
79
|
-
}
|
|
74
|
+
this.hid = params.hid || new hid_1.DualsenseHID(new hid_1.PlatformHIDProvider());
|
|
75
|
+
this.hid.register((state) => {
|
|
76
|
+
this.processHID(state);
|
|
77
|
+
});
|
|
78
|
+
if (params.hid !== null)
|
|
79
|
+
this.hid.provider.connect();
|
|
80
80
|
}
|
|
81
81
|
get active() {
|
|
82
|
-
return Object.values(this).some((input) => input
|
|
82
|
+
return Object.values(this).some((input) => input !== this && input instanceof input_1.Input && input.active);
|
|
83
83
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
this.
|
|
89
|
-
this.
|
|
90
|
-
this.
|
|
91
|
-
this.mute
|
|
92
|
-
this.
|
|
93
|
-
this.
|
|
94
|
-
this.
|
|
95
|
-
this.
|
|
96
|
-
this.
|
|
97
|
-
this.dpad.
|
|
98
|
-
this.dpad.
|
|
99
|
-
this.dpad.
|
|
100
|
-
this.
|
|
101
|
-
this.touchpad.
|
|
102
|
-
this.touchpad.left.
|
|
103
|
-
this.touchpad.left.
|
|
104
|
-
this.touchpad.left.
|
|
105
|
-
this.touchpad.
|
|
106
|
-
this.touchpad.right.
|
|
107
|
-
this.touchpad.right.
|
|
108
|
-
this.touchpad.right.
|
|
109
|
-
this.
|
|
110
|
-
this.left.analog.
|
|
111
|
-
this.left.
|
|
112
|
-
this.left.
|
|
113
|
-
this.left.trigger
|
|
114
|
-
this.
|
|
115
|
-
this.right.analog.
|
|
116
|
-
this.right.
|
|
117
|
-
this.right.
|
|
118
|
-
this.right.trigger
|
|
84
|
+
/**
|
|
85
|
+
* Distributes input values to various elements.
|
|
86
|
+
*/
|
|
87
|
+
processHID(state) {
|
|
88
|
+
this.ps[input_1.InputSet](state["Playstation" /* InputId.Playstation */]);
|
|
89
|
+
this.options[input_1.InputSet](state["Options" /* InputId.Options */]);
|
|
90
|
+
this.create[input_1.InputSet](state["Create" /* InputId.Create */]);
|
|
91
|
+
this.mute[input_1.InputSet](state["Mute" /* InputId.Mute */]);
|
|
92
|
+
this.mute.status[input_1.InputSet](state["Status" /* InputId.Status */]);
|
|
93
|
+
this.triangle[input_1.InputSet](state["Triangle" /* InputId.Triangle */]);
|
|
94
|
+
this.circle[input_1.InputSet](state["Circle" /* InputId.Circle */]);
|
|
95
|
+
this.cross[input_1.InputSet](state["Cross" /* InputId.Cross */]);
|
|
96
|
+
this.square[input_1.InputSet](state["Square" /* InputId.Square */]);
|
|
97
|
+
this.dpad.up[input_1.InputSet](state["Up" /* InputId.Up */]);
|
|
98
|
+
this.dpad.down[input_1.InputSet](state["Down" /* InputId.Down */]);
|
|
99
|
+
this.dpad.right[input_1.InputSet](state["Right" /* InputId.Right */]);
|
|
100
|
+
this.dpad.left[input_1.InputSet](state["Left" /* InputId.Left */]);
|
|
101
|
+
this.touchpad.button[input_1.InputSet](state["TouchButton" /* InputId.TouchButton */]);
|
|
102
|
+
this.touchpad.left.x[input_1.InputSet](state["TouchX0" /* InputId.TouchX0 */]);
|
|
103
|
+
this.touchpad.left.y[input_1.InputSet](state["TouchY0" /* InputId.TouchY0 */]);
|
|
104
|
+
this.touchpad.left.contact[input_1.InputSet](state["TouchContact0" /* InputId.TouchContact0 */]);
|
|
105
|
+
this.touchpad.left.tracker[input_1.InputSet](state["TouchId0" /* InputId.TouchId0 */]);
|
|
106
|
+
this.touchpad.right.x[input_1.InputSet](state["TouchX1" /* InputId.TouchX1 */]);
|
|
107
|
+
this.touchpad.right.y[input_1.InputSet](state["TouchY1" /* InputId.TouchY1 */]);
|
|
108
|
+
this.touchpad.right.contact[input_1.InputSet](state["TouchContact1" /* InputId.TouchContact1 */]);
|
|
109
|
+
this.touchpad.right.tracker[input_1.InputSet](state["TouchId1" /* InputId.TouchId1 */]);
|
|
110
|
+
this.left.analog.x[input_1.InputSet](state["LX" /* InputId.LeftAnalogX */]);
|
|
111
|
+
this.left.analog.y[input_1.InputSet](state["LY" /* InputId.LeftAnalogY */]);
|
|
112
|
+
this.left.bumper[input_1.InputSet](state["L1" /* InputId.LeftBumper */]);
|
|
113
|
+
this.left.trigger[input_1.InputSet](state["L2" /* InputId.LeftTrigger */]);
|
|
114
|
+
this.left.trigger.button[input_1.InputSet](state["L2Button" /* InputId.LeftTriggerButton */]);
|
|
115
|
+
this.right.analog.x[input_1.InputSet](state["RX" /* InputId.RightAnalogX */]);
|
|
116
|
+
this.right.analog.y[input_1.InputSet](state["RY" /* InputId.RightAnalogY */]);
|
|
117
|
+
this.right.bumper[input_1.InputSet](state["R1" /* InputId.RightBumper */]);
|
|
118
|
+
this.right.trigger[input_1.InputSet](state["R2" /* InputId.RightTrigger */]);
|
|
119
|
+
this.right.trigger.button[input_1.InputSet](state["R2Button" /* InputId.RightTriggerButton */]);
|
|
119
120
|
}
|
|
120
121
|
}
|
|
121
122
|
exports.Dualsense = Dualsense;
|
package/dist/dualsense.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dualsense.js","sourceRoot":"","sources":["../src/dualsense.ts"],"names":[],"mappings":";;;AAAA,yCAQoB;AACpB,mCAAuD;AACvD,+
|
|
1
|
+
{"version":3,"file":"dualsense.js","sourceRoot":"","sources":["../src/dualsense.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@ export interface AnalogParams extends InputParams {
|
|
|
20
20
|
* - Pushed all the way down and to the left, the stick's coordinates are [-1, -1]
|
|
21
21
|
*/
|
|
22
22
|
export declare class Analog extends Input<Analog> {
|
|
23
|
-
readonly state:
|
|
23
|
+
readonly state: this;
|
|
24
24
|
/**
|
|
25
25
|
* The left/right position of the input.
|
|
26
26
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analog.d.ts","sourceRoot":"","sources":["../../src/elements/analog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,WAAW;IAC/C,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,CAAC,CAAC,EAAE,WAAW,CAAC;IAChB,CAAC,CAAC,EAAE,WAAW,CAAC;IAChB,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,qBAAa,MAAO,SAAQ,KAAK,CAAC,MAAM,CAAC;IACvC,SAAgB,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"analog.d.ts","sourceRoot":"","sources":["../../src/elements/analog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,WAAW;IAC/C,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,CAAC,CAAC,EAAE,WAAW,CAAC;IAChB,CAAC,CAAC,EAAE,WAAW,CAAC;IAChB,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,qBAAa,MAAO,SAAQ,KAAK,CAAC,MAAM,CAAC;IACvC,SAAgB,KAAK,EAAE,IAAI,CAAQ;IAEnC;;OAEG;IACH,SAAgB,CAAC,EAAE,IAAI,CAAC;IACxB;;OAEG;IACH,SAAgB,CAAC,EAAE,IAAI,CAAC;IACxB;;OAEG;IACH,SAAgB,MAAM,EAAE,SAAS,CAAC;gBAEtB,MAAM,CAAC,EAAE,YAAY;IAmBjC;;OAEG;IACH,IAAW,MAAM,IAAI,OAAO,CAE3B;IAED;;OAEG;IACH,IAAW,MAAM,IAAI;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,SAAS,CAAA;KAAE,CAEhE;IAED;;OAEG;IACH,IAAW,KAAK,IAAI,KAAK,CAIxB;IAED;;OAEG;IACH,IAAW,SAAS,IAAI,SAAS,CAEhC;IAED;;OAEG;IACH,IAAW,SAAS,IAAI,OAAO,CAE9B;IAED;;OAEG;IACH,IAAW,OAAO,IAAI,OAAO,CAE5B;IAED;;OAEG;IACH,IAAW,KAAK,IAAI,OAAO,CAE1B;IAED;;OAEG;IACH,IAAW,gBAAgB,IAAI,OAAO,CAErC;IAED;;OAEG;IACH,IAAW,OAAO,IAAI,OAAO,CAE5B;IAED;;OAEG;IACH,IAAW,YAAY,IAAI,OAAO,CAEjC;CACF"}
|
package/dist/elements/analog.js
CHANGED
|
@@ -17,9 +17,19 @@ class Analog extends input_1.Input {
|
|
|
17
17
|
super(params);
|
|
18
18
|
this.state = this;
|
|
19
19
|
const { button, x, y, threshold } = params || {};
|
|
20
|
-
this.button = new momentary_1.Momentary(
|
|
21
|
-
this.x = new axis_1.Axis(
|
|
22
|
-
|
|
20
|
+
this.button = new momentary_1.Momentary({ icon: "3", name: "Button", ...button });
|
|
21
|
+
this.x = new axis_1.Axis({
|
|
22
|
+
icon: "↔",
|
|
23
|
+
name: "X",
|
|
24
|
+
threshold: threshold || 0.01,
|
|
25
|
+
...x,
|
|
26
|
+
});
|
|
27
|
+
this.y = new axis_1.Axis({
|
|
28
|
+
icon: "↕",
|
|
29
|
+
name: "Y",
|
|
30
|
+
threshold: threshold || 0.01,
|
|
31
|
+
...y,
|
|
32
|
+
});
|
|
23
33
|
}
|
|
24
34
|
/**
|
|
25
35
|
* Returns true if the stick is away from the idle position, or the button is pressed.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analog.js","sourceRoot":"","sources":["../../src/elements/analog.ts"],"names":[],"mappings":";;;AAAA,iCAA8B;AAC9B,2CAAwC;AACxC,oCAA8C;AAa9C;;;;;;;GAOG;AACH,MAAa,MAAO,SAAQ,aAAa;IAgBvC,YAAY,MAAqB;QAC/B,KAAK,CAAC,MAAM,CAAC,CAAC;QAhBA,UAAK,
|
|
1
|
+
{"version":3,"file":"analog.js","sourceRoot":"","sources":["../../src/elements/analog.ts"],"names":[],"mappings":";;;AAAA,iCAA8B;AAC9B,2CAAwC;AACxC,oCAA8C;AAa9C;;;;;;;GAOG;AACH,MAAa,MAAO,SAAQ,aAAa;IAgBvC,YAAY,MAAqB;QAC/B,KAAK,CAAC,MAAM,CAAC,CAAC;QAhBA,UAAK,GAAS,IAAI,CAAC;QAiBjC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QAEjD,IAAI,CAAC,MAAM,GAAG,IAAI,qBAAS,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,CAAC,GAAG,IAAI,WAAI,CAAC;YAChB,IAAI,EAAE,GAAG;YACT,IAAI,EAAE,GAAG;YACT,SAAS,EAAE,SAAS,IAAI,IAAI;YAC5B,GAAG,CAAC;SACL,CAAC,CAAC;QACH,IAAI,CAAC,CAAC,GAAG,IAAI,WAAI,CAAC;YAChB,IAAI,EAAE,GAAG;YACT,IAAI,EAAE,GAAG;YACT,SAAS,EAAE,SAAS,IAAI,IAAI;YAC5B,GAAG,CAAC;SACL,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACf,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM;YAChB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACnE,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,IAAW,gBAAgB;QACzB,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,IAAW,YAAY;QACrB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;CACF;AA1GD,wBA0GC"}
|
package/dist/elements/dpad.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dpad.d.ts","sourceRoot":"","sources":["../../src/elements/dpad.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,UAAW,SAAQ,WAAW;IAC7C,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,qBAAa,IAAK,SAAQ,KAAK,CAAC,IAAI,CAAC;IACnC,SAAgB,KAAK,EAAE,IAAI,CAAQ;IAEnC,SAAgB,EAAE,EAAE,SAAS,CAAC;IAC9B,SAAgB,IAAI,EAAE,SAAS,CAAC;IAChC,SAAgB,IAAI,EAAE,SAAS,CAAC;IAChC,SAAgB,KAAK,EAAE,SAAS,CAAC;gBAErB,MAAM,
|
|
1
|
+
{"version":3,"file":"dpad.d.ts","sourceRoot":"","sources":["../../src/elements/dpad.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,UAAW,SAAQ,WAAW;IAC7C,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,qBAAa,IAAK,SAAQ,KAAK,CAAC,IAAI,CAAC;IACnC,SAAgB,KAAK,EAAE,IAAI,CAAQ;IAEnC,SAAgB,EAAE,EAAE,SAAS,CAAC;IAC9B,SAAgB,IAAI,EAAE,SAAS,CAAC;IAChC,SAAgB,IAAI,EAAE,SAAS,CAAC;IAChC,SAAgB,KAAK,EAAE,SAAS,CAAC;gBAErB,MAAM,GAAE,UAAe;IAUnC,IAAW,MAAM,IAAI,OAAO,CAO3B;CACF"}
|
package/dist/elements/dpad.js
CHANGED
|
@@ -4,13 +4,14 @@ exports.Dpad = void 0;
|
|
|
4
4
|
const momentary_1 = require("./momentary");
|
|
5
5
|
const input_1 = require("../input");
|
|
6
6
|
class Dpad extends input_1.Input {
|
|
7
|
-
constructor(params) {
|
|
7
|
+
constructor(params = {}) {
|
|
8
8
|
super(params);
|
|
9
9
|
this.state = this;
|
|
10
|
-
|
|
11
|
-
this.
|
|
12
|
-
this.
|
|
13
|
-
this.
|
|
10
|
+
const { up, down, left, right } = params;
|
|
11
|
+
this.up = new momentary_1.Momentary(params?.up || { icon: "⮉", name: "Up", ...up });
|
|
12
|
+
this.down = new momentary_1.Momentary(params?.down || { icon: "⮋", name: "Down", ...down });
|
|
13
|
+
this.left = new momentary_1.Momentary(params?.left || { icon: "⮈", name: "Left", ...left });
|
|
14
|
+
this.right = new momentary_1.Momentary(params?.right || { icon: "⮊", name: "Right", ...right });
|
|
14
15
|
}
|
|
15
16
|
get active() {
|
|
16
17
|
return (this.up.active ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dpad.js","sourceRoot":"","sources":["../../src/elements/dpad.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AACxC,oCAA8C;AAS9C,MAAa,IAAK,SAAQ,aAAW;IAQnC,YAAY,
|
|
1
|
+
{"version":3,"file":"dpad.js","sourceRoot":"","sources":["../../src/elements/dpad.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AACxC,oCAA8C;AAS9C,MAAa,IAAK,SAAQ,aAAW;IAQnC,YAAY,SAAqB,EAAE;QACjC,KAAK,CAAC,MAAM,CAAC,CAAC;QARA,UAAK,GAAS,IAAI,CAAC;QASjC,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;QAExC,IAAI,CAAC,EAAE,GAAG,IAAI,qBAAS,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAC,CAAC,CAAC;QACvE,IAAI,CAAC,IAAI,GAAG,IAAI,qBAAS,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAC,CAAC,CAAC;QAC/E,IAAI,CAAC,IAAI,GAAG,IAAI,qBAAS,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;QAChF,IAAI,CAAC,KAAK,GAAG,IAAI,qBAAS,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,IAAW,MAAM;QACf,OAAO,CACL,IAAI,CAAC,EAAE,CAAC,MAAM;YACd,IAAI,CAAC,IAAI,CAAC,MAAM;YAChB,IAAI,CAAC,IAAI,CAAC,MAAM;YAChB,IAAI,CAAC,KAAK,CAAC,MAAM,CAClB,CAAC;IACJ,CAAC;CACF;AA1BD,oBA0BC"}
|
package/dist/elements/touch.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { Increment } from "./increment";
|
|
|
5
5
|
* with [0,0] representing the center of the touchpad.
|
|
6
6
|
*/
|
|
7
7
|
export declare class Touch extends Analog {
|
|
8
|
-
readonly state:
|
|
8
|
+
readonly state: this;
|
|
9
9
|
readonly contact: import("./momentary").Momentary;
|
|
10
10
|
readonly tracker: Increment;
|
|
11
11
|
get active(): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"touch.d.ts","sourceRoot":"","sources":["../../src/elements/touch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;GAGG;AACH,qBAAa,KAAM,SAAQ,MAAM;IAC/B,SAAgB,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"touch.d.ts","sourceRoot":"","sources":["../../src/elements/touch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;GAGG;AACH,qBAAa,KAAM,SAAQ,MAAM;IAC/B,SAAgB,KAAK,EAAE,IAAI,CAAQ;IACnC,SAAgB,OAAO,kCAAe;IACtC,SAAgB,OAAO,EAAE,SAAS,CAAmB;IAErD,IAAW,MAAM,IAAI,OAAO,CAE3B;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"touch.js","sourceRoot":"","sources":["../../src/elements/touch.ts"],"names":[],"mappings":";;;AAAA,qCAAkC;AAClC,2CAAwC;AAExC;;;GAGG;AACH,MAAa,KAAM,SAAQ,eAAM;IAAjC;;QACkB,UAAK,
|
|
1
|
+
{"version":3,"file":"touch.js","sourceRoot":"","sources":["../../src/elements/touch.ts"],"names":[],"mappings":";;;AAAA,qCAAkC;AAClC,2CAAwC;AAExC;;;GAGG;AACH,MAAa,KAAM,SAAQ,eAAM;IAAjC;;QACkB,UAAK,GAAS,IAAI,CAAC;QACnB,YAAO,GAAG,IAAI,CAAC,MAAM,CAAC;QACtB,YAAO,GAAc,IAAI,qBAAS,EAAE,CAAC;IAKvD,CAAC;IAHC,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IAC7B,CAAC;CACF;AARD,sBAQC"}
|
|
@@ -2,7 +2,7 @@ import { Momentary } from "./momentary";
|
|
|
2
2
|
import { Touch } from "./touch";
|
|
3
3
|
import { Input, InputParams } from "../input";
|
|
4
4
|
export declare class Touchpad extends Input<Touchpad> {
|
|
5
|
-
readonly state:
|
|
5
|
+
readonly state: this;
|
|
6
6
|
get active(): boolean;
|
|
7
7
|
readonly button: Momentary;
|
|
8
8
|
readonly left: Touch;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"touchpad.d.ts","sourceRoot":"","sources":["../../src/elements/touchpad.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE9C,qBAAa,QAAS,SAAQ,KAAK,CAAC,QAAQ,CAAC;IAC3C,SAAgB,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"touchpad.d.ts","sourceRoot":"","sources":["../../src/elements/touchpad.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE9C,qBAAa,QAAS,SAAQ,KAAK,CAAC,QAAQ,CAAC;IAC3C,SAAgB,KAAK,EAAE,IAAI,CAAQ;IAEnC,IAAW,MAAM,IAAI,OAAO,CAE3B;IAED,SAAgB,MAAM,EAAE,SAAS,CAAC;IAGlC,SAAgB,IAAI,EAAE,KAAK,CAAC;IAC5B,SAAgB,KAAK,EAAE,KAAK,CAAC;gBAEjB,MAAM,EAAE,WAAW;CAOhC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"touchpad.js","sourceRoot":"","sources":["../../src/elements/touchpad.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AACxC,mCAAgC;AAChC,oCAA8C;AAE9C,MAAa,QAAS,SAAQ,aAAe;IAa3C,YAAY,MAAmB;QAC7B,KAAK,CAAC,MAAM,CAAC,CAAC;QAbA,UAAK,
|
|
1
|
+
{"version":3,"file":"touchpad.js","sourceRoot":"","sources":["../../src/elements/touchpad.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AACxC,mCAAgC;AAChC,oCAA8C;AAE9C,MAAa,QAAS,SAAQ,aAAe;IAa3C,YAAY,MAAmB;QAC7B,KAAK,CAAC,MAAM,CAAC,CAAC;QAbA,UAAK,GAAS,IAAI,CAAC;QAejC,IAAI,CAAC,MAAM,GAAG,IAAI,qBAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,IAAI,GAAG,IAAI,aAAK,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;IAC3B,CAAC;IAhBD,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IAClC,CAAC;CAeF;AApBD,4BAoBC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trigger.d.ts","sourceRoot":"","sources":["../../src/elements/trigger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,qBAAa,OAAQ,SAAQ,KAAK,CAAC,SAAS,CAAC;IACpC,KAAK,EAAE,SAAS,CAAK;IAErB,MAAM,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"trigger.d.ts","sourceRoot":"","sources":["../../src/elements/trigger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,qBAAa,OAAQ,SAAQ,KAAK,CAAC,SAAS,CAAC;IACpC,KAAK,EAAE,SAAS,CAAK;IAErB,MAAM,EAAE,SAAS,CAAmB;IAE3C,IAAW,MAAM,IAAI,OAAO,CAE3B;IAED,IAAW,QAAQ,IAAI,SAAS,CAE/B;IAED,IAAW,SAAS,IAAI,SAAS,CAEhC;IAEM,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO;IAIzC,SAAgB,MAAM,SAAgB;CACvC"}
|
package/dist/elements/trigger.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trigger.js","sourceRoot":"","sources":["../../src/elements/trigger.ts"],"names":[],"mappings":";;;AAAA,wCAAoC;AACpC,oCAAiC;AAEjC,2CAAwC;AAExC,MAAa,OAAQ,SAAQ,aAAgB;IAA7C;;QACS,UAAK,GAAc,CAAC,CAAC;QAErB,WAAM,GAAc,IAAI,qBAAS,
|
|
1
|
+
{"version":3,"file":"trigger.js","sourceRoot":"","sources":["../../src/elements/trigger.ts"],"names":[],"mappings":";;;AAAA,wCAAoC;AACpC,oCAAiC;AAEjC,2CAAwC;AAExC,MAAa,OAAQ,SAAQ,aAAgB;IAA7C;;QACS,UAAK,GAAc,CAAC,CAAC;QAErB,WAAM,GAAc,IAAI,qBAAS,EAAE,CAAC;QAkB3B,WAAM,GAAG,IAAI,gBAAM,EAAE,CAAC;IACxC,CAAC;IAjBC,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAEM,OAAO,CAAC,KAAgB;QAC7B,OAAO,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC;IAC9B,CAAC;CAGF;AAtBD,0BAsBC"}
|
|
@@ -9,7 +9,7 @@ export interface UnisenseParams extends InputParams {
|
|
|
9
9
|
analog?: InputParams;
|
|
10
10
|
}
|
|
11
11
|
export declare class Unisense extends Input<Unisense> {
|
|
12
|
-
readonly state:
|
|
12
|
+
readonly state: this;
|
|
13
13
|
readonly trigger: Trigger;
|
|
14
14
|
readonly bumper: Momentary;
|
|
15
15
|
readonly analog: Analog;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unisense.d.ts","sourceRoot":"","sources":["../../src/elements/unisense.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAGD,qBAAa,QAAS,SAAQ,KAAK,CAAC,QAAQ,CAAC;IAC3C,SAAgB,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"unisense.d.ts","sourceRoot":"","sources":["../../src/elements/unisense.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAGD,qBAAa,QAAS,SAAQ,KAAK,CAAC,QAAQ,CAAC;IAC3C,SAAgB,KAAK,EAAE,IAAI,CAAQ;IAEnC,SAAgB,OAAO,EAAE,OAAO,CAAC;IACjC,SAAgB,MAAM,EAAE,SAAS,CAAC;IAClC,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,MAAM,EAAE,MAAM,CAAC;gBAEnB,MAAM,GAAE,cAAmB;IAoBvC,IAAW,MAAM,IAAI,OAAO,CAE3B;CACF"}
|
|
@@ -8,16 +8,23 @@ const haptics_1 = require("../haptics");
|
|
|
8
8
|
const input_1 = require("../input");
|
|
9
9
|
// The name "Dualsense" clearly implies a composition of two Unisense elements 🤔
|
|
10
10
|
class Unisense extends input_1.Input {
|
|
11
|
-
constructor(params) {
|
|
11
|
+
constructor(params = {}) {
|
|
12
12
|
super(params);
|
|
13
13
|
this.state = this;
|
|
14
|
-
|
|
14
|
+
const { trigger, bumper, analog } = params;
|
|
15
|
+
this.trigger = new trigger_1.Trigger({
|
|
15
16
|
icon: "2",
|
|
16
17
|
name: "Trigger",
|
|
17
|
-
threshold:
|
|
18
|
+
threshold: 1 / 255,
|
|
19
|
+
...trigger,
|
|
20
|
+
});
|
|
21
|
+
this.bumper = new momentary_1.Momentary({ icon: "1", name: "Bumper", ...bumper });
|
|
22
|
+
this.analog = new analog_1.Analog({
|
|
23
|
+
icon: "⨁",
|
|
24
|
+
name: "Analog",
|
|
25
|
+
threshold: 1 / 128,
|
|
26
|
+
...analog,
|
|
18
27
|
});
|
|
19
|
-
this.bumper = new momentary_1.Momentary(params?.bumper || { icon: "1", name: "Bumper" });
|
|
20
|
-
this.analog = new analog_1.Analog(params?.analog || { icon: "⨁", name: "Analog", threshold: (1 / 128) * 3 });
|
|
21
28
|
this.haptic = new haptics_1.Haptic();
|
|
22
29
|
}
|
|
23
30
|
get active() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unisense.js","sourceRoot":"","sources":["../../src/elements/unisense.ts"],"names":[],"mappings":";;;AAAA,uCAAoC;AACpC,2CAAwC;AACxC,qCAAkC;AAClC,wCAAoC;AACpC,oCAA8C;AAQ9C,iFAAiF;AACjF,MAAa,QAAS,SAAQ,aAAe;IAQ3C,YAAY,
|
|
1
|
+
{"version":3,"file":"unisense.js","sourceRoot":"","sources":["../../src/elements/unisense.ts"],"names":[],"mappings":";;;AAAA,uCAAoC;AACpC,2CAAwC;AACxC,qCAAkC;AAClC,wCAAoC;AACpC,oCAA8C;AAQ9C,iFAAiF;AACjF,MAAa,QAAS,SAAQ,aAAe;IAQ3C,YAAY,SAAyB,EAAE;QACrC,KAAK,CAAC,MAAM,CAAC,CAAC;QARA,UAAK,GAAS,IAAI,CAAC;QASjC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAE3C,IAAI,CAAC,OAAO,GAAG,IAAI,iBAAO,CAAC;YACzB,IAAI,EAAE,GAAG;YACT,IAAI,EAAE,SAAS;YACf,SAAS,EAAE,CAAC,GAAG,GAAG;YAClB,GAAG,OAAO;SACX,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,GAAG,IAAI,qBAAS,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC;YACvB,IAAI,EAAE,GAAG;YACT,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,CAAC,GAAG,GAAG;YAClB,GAAG,MAAM;SACV,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAM,EAAE,CAAC;IAC7B,CAAC;IAED,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IACzE,CAAC;CACF;AA/BD,4BA+BC"}
|
|
@@ -1,64 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
[InputId.LeftTrigger]: number;
|
|
10
|
-
[InputId.RightTrigger]: number;
|
|
11
|
-
[InputId.Triangle]: boolean;
|
|
12
|
-
[InputId.Circle]: boolean;
|
|
13
|
-
[InputId.Cross]: boolean;
|
|
14
|
-
[InputId.Square]: boolean;
|
|
15
|
-
[InputId.Dpad]: number;
|
|
16
|
-
[InputId.Up]: boolean;
|
|
17
|
-
[InputId.Down]: boolean;
|
|
18
|
-
[InputId.Left]: boolean;
|
|
19
|
-
[InputId.Right]: boolean;
|
|
20
|
-
[InputId.RightAnalogButton]: boolean;
|
|
21
|
-
[InputId.LeftAnalogButton]: boolean;
|
|
22
|
-
[InputId.Options]: boolean;
|
|
23
|
-
[InputId.Create]: boolean;
|
|
24
|
-
[InputId.RightTriggerButton]: boolean;
|
|
25
|
-
[InputId.LeftTriggerButton]: boolean;
|
|
26
|
-
[InputId.RightBumper]: boolean;
|
|
27
|
-
[InputId.LeftBumper]: boolean;
|
|
28
|
-
[InputId.Playstation]: boolean;
|
|
29
|
-
[InputId.TouchButton]: boolean;
|
|
30
|
-
[InputId.Mute]: boolean;
|
|
31
|
-
[InputId.Status]: boolean;
|
|
32
|
-
[InputId.TouchX0]: number;
|
|
33
|
-
[InputId.TouchY0]: number;
|
|
34
|
-
[InputId.TouchContact0]: boolean;
|
|
35
|
-
[InputId.TouchId0]: number;
|
|
36
|
-
[InputId.TouchX1]: number;
|
|
37
|
-
[InputId.TouchY1]: number;
|
|
38
|
-
[InputId.TouchContact1]: boolean;
|
|
39
|
-
[InputId.TouchId1]: number;
|
|
40
|
-
[InputId.GyroX]: number;
|
|
41
|
-
[InputId.GyroY]: number;
|
|
42
|
-
[InputId.GyroZ]: number;
|
|
43
|
-
[InputId.AccelX]: number;
|
|
44
|
-
[InputId.AccelY]: number;
|
|
45
|
-
[InputId.AccelZ]: number;
|
|
46
|
-
}
|
|
47
|
-
export declare function mapAxis(value: number, max?: number): number;
|
|
48
|
-
export declare function mapTrigger(value: number): number;
|
|
49
|
-
export declare class DualsenseHID extends EventEmitter {
|
|
1
|
+
import { HIDProvider, DualsenseHIDState } from "./hid_provider";
|
|
2
|
+
export declare type HIDCallback = (state: DualsenseHIDState) => void;
|
|
3
|
+
/**
|
|
4
|
+
* Coordinates a HIDProvider and tracks the latest HID state.
|
|
5
|
+
*/
|
|
6
|
+
export declare class DualsenseHID {
|
|
7
|
+
readonly provider: HIDProvider;
|
|
8
|
+
private readonly subscribers;
|
|
50
9
|
state: DualsenseHIDState;
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
10
|
+
constructor(provider: HIDProvider);
|
|
11
|
+
/**
|
|
12
|
+
* Register a handler for HID state updates.
|
|
13
|
+
*/
|
|
14
|
+
register(callback: (state: DualsenseHIDState) => void): void;
|
|
56
15
|
/**
|
|
57
|
-
*
|
|
16
|
+
* Cancel a previously registered handler.
|
|
58
17
|
*/
|
|
59
|
-
|
|
18
|
+
unregister(callback: (state: DualsenseHIDState) => void): void;
|
|
19
|
+
private set;
|
|
60
20
|
private handleError;
|
|
61
|
-
private disconnect;
|
|
62
|
-
private connect;
|
|
63
21
|
}
|
|
64
22
|
//# sourceMappingURL=dualsense_hid.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dualsense_hid.d.ts","sourceRoot":"","sources":["../../src/hid/dualsense_hid.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dualsense_hid.d.ts","sourceRoot":"","sources":["../../src/hid/dualsense_hid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAW,MAAM,gBAAgB,CAAC;AAEzE,oBAAY,WAAW,GAAG,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;AAE7D;;GAEG;AACH,qBAAa,YAAY;IA+CX,QAAQ,CAAC,QAAQ,EAAE,WAAW;IA9C1C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA0B;IAE/C,KAAK,EAAE,iBAAiB,CA0C7B;gBAEmB,QAAQ,EAAE,WAAW;IAK1C;;OAEG;IACI,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI;IAInE;;OAEG;IACI,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI;IAIrE,OAAO,CAAC,GAAG;IAKX,OAAO,CAAC,WAAW;CAOpB"}
|