@ledgerhq/devices 6.2.0 → 6.10.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 +56 -54
- package/lib/ble/receiveAPDU.js +1 -1
- package/lib/ble/receiveAPDU.js.map +1 -1
- package/lib/ble/sendAPDU.js +2 -2
- package/lib/ble/sendAPDU.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +14 -0
- package/lib/index.js.map +1 -1
- package/lib-es/index.d.ts +1 -0
- package/lib-es/index.d.ts.map +1 -1
- package/lib-es/index.js +14 -0
- package/lib-es/index.js.map +1 -1
- package/package.json +5 -5
- package/src/index.ts +15 -1
package/README.md
CHANGED
|
@@ -10,44 +10,46 @@ Logic for all Ledger devices.
|
|
|
10
10
|
|
|
11
11
|
#### Table of Contents
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
13
|
+
* [createHIDframing](#createhidframing)
|
|
14
|
+
* [Parameters](#parameters)
|
|
15
|
+
* [IIGenericHID](#iigenerichid)
|
|
16
|
+
* [ledgerUSBVendorId](#ledgerusbvendorid)
|
|
17
|
+
* [getDeviceModel](#getdevicemodel)
|
|
18
|
+
* [Parameters](#parameters-1)
|
|
19
|
+
* [identifyTargetId](#identifytargetid)
|
|
20
|
+
* [Parameters](#parameters-2)
|
|
21
|
+
* [identifyUSBProductId](#identifyusbproductid)
|
|
22
|
+
* [Parameters](#parameters-3)
|
|
23
|
+
* [getBluetoothServiceUuids](#getbluetoothserviceuuids)
|
|
24
|
+
* [getInfosForServiceUuid](#getinfosforserviceuuid)
|
|
25
|
+
* [Parameters](#parameters-4)
|
|
26
|
+
* [DeviceModel](#devicemodel)
|
|
27
|
+
* [BluetoothInfos](#bluetoothinfos)
|
|
28
28
|
|
|
29
29
|
### createHIDframing
|
|
30
30
|
|
|
31
31
|
#### Parameters
|
|
32
32
|
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
* `channel` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)**
|
|
34
|
+
* `packetSize` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)**
|
|
35
35
|
|
|
36
36
|
### IIGenericHID
|
|
37
37
|
|
|
38
38
|
The USB product IDs will be defined as MMII, encoding a model (MM) and an interface bitfield (II)
|
|
39
39
|
|
|
40
|
-
|
|
41
|
-
Ledger Nano S : 0x10
|
|
42
|
-
Ledger Blue : 0x00
|
|
43
|
-
Ledger Nano X : 0x40
|
|
40
|
+
* Model
|
|
44
41
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
42
|
+
Ledger Nano S : 0x10
|
|
43
|
+
Ledger Blue : 0x00
|
|
44
|
+
Ledger Nano X : 0x40
|
|
45
|
+
|
|
46
|
+
* Interface support bitfield
|
|
47
|
+
|
|
48
|
+
Generic HID : 0x01
|
|
49
|
+
Keyboard HID : 0x02
|
|
50
|
+
U2F : 0x04
|
|
51
|
+
CCID : 0x08
|
|
52
|
+
WebUSB : 0x10
|
|
51
53
|
|
|
52
54
|
Type: [number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)
|
|
53
55
|
|
|
@@ -59,7 +61,7 @@ Type: [number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Globa
|
|
|
59
61
|
|
|
60
62
|
#### Parameters
|
|
61
63
|
|
|
62
|
-
|
|
64
|
+
* `id` **DeviceModelId**
|
|
63
65
|
|
|
64
66
|
Returns **[DeviceModel](#devicemodel)**
|
|
65
67
|
|
|
@@ -70,7 +72,7 @@ based on the first two bytes.
|
|
|
70
72
|
|
|
71
73
|
#### Parameters
|
|
72
74
|
|
|
73
|
-
|
|
75
|
+
* `targetId` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)**
|
|
74
76
|
|
|
75
77
|
Returns **([DeviceModel](#devicemodel) | null | [undefined](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/undefined))**
|
|
76
78
|
|
|
@@ -78,57 +80,57 @@ Returns **([DeviceModel](#devicemodel) | null | [undefined](https://developer.mo
|
|
|
78
80
|
|
|
79
81
|
#### Parameters
|
|
80
82
|
|
|
81
|
-
|
|
83
|
+
* `usbProductId` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)**
|
|
82
84
|
|
|
83
85
|
Returns **([DeviceModel](#devicemodel) | null | [undefined](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/undefined))**
|
|
84
86
|
|
|
85
87
|
### getBluetoothServiceUuids
|
|
86
88
|
|
|
87
|
-
Returns **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)
|
|
89
|
+
Returns **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)>**
|
|
88
90
|
|
|
89
91
|
### getInfosForServiceUuid
|
|
90
92
|
|
|
91
93
|
#### Parameters
|
|
92
94
|
|
|
93
|
-
|
|
95
|
+
* `uuid` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
|
|
94
96
|
|
|
95
|
-
Returns **([BluetoothInfos](#bluetoothinfos)
|
|
97
|
+
Returns **([BluetoothInfos](#bluetoothinfos) | [undefined](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/undefined))**
|
|
96
98
|
|
|
97
99
|
### DeviceModel
|
|
98
100
|
|
|
99
101
|
### BluetoothInfos
|
|
100
102
|
|
|
101
|
-
#
|
|
103
|
+
# <<<<<<< HEAD
|
|
102
104
|
|
|
103
105
|
#### Properties
|
|
104
106
|
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
107
|
+
* `id` **[DeviceModelId](#devicemodelid)**
|
|
108
|
+
* `productName` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
|
|
109
|
+
* `productIdMM` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)**
|
|
110
|
+
* `legacyUsbProductId` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)**
|
|
111
|
+
* `usbOnly` **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)**
|
|
112
|
+
* `memorySize` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)**
|
|
113
|
+
* `masks` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)>**
|
|
114
|
+
* `getBlockSize` **function (firmwareVersion: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)): [number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)**
|
|
115
|
+
* `bluetoothSpec` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<{serviceUuid: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), writeUuid: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), notifyUuid: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)}>?**
|
|
114
116
|
|
|
115
117
|
> > > > > > > 7184a62c3469949743efa3c4fc2b93293add5e04
|
|
116
118
|
> > > > > > >
|
|
117
119
|
> > > > > > > ### BluetoothInfos
|
|
118
120
|
|
|
119
|
-
# Type: {id: [DeviceModelId](#devicemodelid), productName: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), usbProductId: [number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number), bluetoothSpec: [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)
|
|
121
|
+
# Type: {id: [DeviceModelId](#devicemodelid), productName: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), usbProductId: [number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number), bluetoothSpec: [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<{serviceUuid: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), writeUuid: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), notifyUuid: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)}>?}
|
|
120
122
|
|
|
121
|
-
Type: {id: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), productName: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), usbProductId: [number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number), usbOnly: [boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean), bluetoothSpec: [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)
|
|
123
|
+
Type: {id: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), productName: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), usbProductId: [number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number), usbOnly: [boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean), bluetoothSpec: [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<{serviceUuid: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), writeUuid: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), notifyUuid: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)}>?}
|
|
122
124
|
|
|
123
125
|
> > > > > > > master
|
|
124
126
|
|
|
125
127
|
#### Properties
|
|
126
128
|
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
129
|
+
* `id` **[DeviceModelId](#devicemodelid)**
|
|
130
|
+
* `productName` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
|
|
131
|
+
* `usbProductId` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)**
|
|
132
|
+
* `usbOnly` **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)**
|
|
133
|
+
* `bluetoothSpec` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<{serviceUuid: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), writeUuid: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), notifyUuid: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)}>?**
|
|
132
134
|
|
|
133
135
|
### BluetoothInfos
|
|
134
136
|
|
|
@@ -136,7 +138,7 @@ Type: {deviceModel: [DeviceModel](#devicemodel), serviceUuid: [string](https://d
|
|
|
136
138
|
|
|
137
139
|
#### Properties
|
|
138
140
|
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
141
|
+
* `deviceModel` **[DeviceModel](#devicemodel)**
|
|
142
|
+
* `serviceUuid` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
|
|
143
|
+
* `writeUuid` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
|
|
144
|
+
* `notifyUuid` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
|
package/lib/ble/receiveAPDU.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"receiveAPDU.js","sourceRoot":"","sources":["../../src/ble/receiveAPDU.ts"],"names":[],"mappings":";;;AAAA,2CAAsE;AACtE,6BAAkC;AAClC,uCAAqC;AACrC,IAAM,KAAK,GAAG,IAAI,CAAC;AACnB,mFAAmF;AAC5E,IAAM,WAAW,GAAG,UACzB,SAA6B;IAE7B,OAAA,iBAAU,CAAC,MAAM,CAAC,UAAC,CAAC;QAClB,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,IAAI,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnC,IAAM,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC;YAC9B,QAAQ,EAAE;gBACR,CAAC,CAAC,KAAK,CAAC,IAAI,2BAAkB,EAAE,CAAC,CAAC;gBAClC,GAAG,CAAC,WAAW,EAAE,CAAC;YACpB,CAAC;YACD,KAAK,EAAE,UAAC,CAAC;gBACP,UAAG,
|
|
1
|
+
{"version":3,"file":"receiveAPDU.js","sourceRoot":"","sources":["../../src/ble/receiveAPDU.ts"],"names":[],"mappings":";;;AAAA,2CAAsE;AACtE,6BAAkC;AAClC,uCAAqC;AACrC,IAAM,KAAK,GAAG,IAAI,CAAC;AACnB,mFAAmF;AAC5E,IAAM,WAAW,GAAG,UACzB,SAA6B;IAE7B,OAAA,iBAAU,CAAC,MAAM,CAAC,UAAC,CAAC;QAClB,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,IAAI,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnC,IAAM,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC;YAC9B,QAAQ,EAAE;gBACR,CAAC,CAAC,KAAK,CAAC,IAAI,2BAAkB,EAAE,CAAC,CAAC;gBAClC,GAAG,CAAC,WAAW,EAAE,CAAC;YACpB,CAAC;YACD,KAAK,EAAE,UAAC,CAAC;gBACP,IAAA,UAAG,EAAC,WAAW,EAAE,iBAAiB,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChD,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACX,GAAG,CAAC,WAAW,EAAE,CAAC;YACpB,CAAC;YACD,IAAI,EAAE,UAAC,KAAK;gBACV,IAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC/B,IAAM,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBACpC,IAAI,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAE1B,IAAI,GAAG,KAAK,KAAK,EAAE;oBACjB,CAAC,CAAC,KAAK,CACL,IAAI,uBAAc,CAAC,cAAc,GAAG,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CACpE,CAAC;oBACF,OAAO;iBACR;gBAED,IAAI,aAAa,KAAK,KAAK,EAAE;oBAC3B,CAAC,CAAC,KAAK,CACL,IAAI,uBAAc,CAChB,6DAA6D;wBAC3D,KAAK;wBACL,gBAAgB;wBAChB,aAAa,EACf,iBAAiB,CAClB,CACF,CAAC;oBACF,OAAO;iBACR;gBAED,IAAI,KAAK,KAAK,CAAC,EAAE;oBACf,kBAAkB,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;oBAC1C,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;iBACtB;gBAED,aAAa,EAAE,CAAC;gBAChB,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;gBAEnD,IAAI,YAAY,CAAC,MAAM,GAAG,kBAAkB,EAAE;oBAC5C,CAAC,CAAC,KAAK,CACL,IAAI,uBAAc,CAChB,4DAA4D;wBAC1D,YAAY,CAAC,MAAM;wBACnB,gBAAgB;wBAChB,kBAAkB,EACpB,gBAAgB,CACjB,CACF,CAAC;oBACF,OAAO;iBACR;gBAED,IAAI,YAAY,CAAC,MAAM,KAAK,kBAAkB,EAAE;oBAC9C,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBACrB,CAAC,CAAC,QAAQ,EAAE,CAAC;oBACb,GAAG,CAAC,WAAW,EAAE,CAAC;iBACnB;YACH,CAAC;SACF,CAAC,CAAC;QACH,OAAO;YACL,GAAG,CAAC,WAAW,EAAE,CAAC;QACpB,CAAC,CAAC;IACJ,CAAC,CAAC;AAtEF,CAsEE,CAAC;AAzEQ,QAAA,WAAW,eAyEnB"}
|
package/lib/ble/sendAPDU.js
CHANGED
|
@@ -113,12 +113,12 @@ var sendAPDU = function (write, apdu, mtuSize) {
|
|
|
113
113
|
o.complete();
|
|
114
114
|
}, function (e) {
|
|
115
115
|
terminated = true;
|
|
116
|
-
logs_1.log("ble-error", "sendAPDU failure " + String(e));
|
|
116
|
+
(0, logs_1.log)("ble-error", "sendAPDU failure " + String(e));
|
|
117
117
|
o.error(e);
|
|
118
118
|
});
|
|
119
119
|
var unsubscribe = function () {
|
|
120
120
|
if (!terminated) {
|
|
121
|
-
logs_1.log("ble-verbose", "sendAPDU interruption");
|
|
121
|
+
(0, logs_1.log)("ble-verbose", "sendAPDU interruption");
|
|
122
122
|
terminated = true;
|
|
123
123
|
}
|
|
124
124
|
};
|
package/lib/ble/sendAPDU.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sendAPDU.js","sourceRoot":"","sources":["../../src/ble/sendAPDU.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAAkC;AAClC,uCAAqC;AACrC,IAAM,KAAK,GAAG,IAAI,CAAC;AAEnB,SAAS,WAAW,CAClB,MAAc,EACd,YAAsC;IAEtC,IAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,KACE,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,EACjC,CAAC,GAAG,MAAM,CAAC,MAAM,EACjB,CAAC,IAAI,IAAI,EAAE,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,EACjC;QACA,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;KACxC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAEM,IAAM,QAAQ,GAAG,UACtB,KAAsC,EACtC,IAAY,EACZ,OAAe;IAEf,IAAM,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,UAAC,CAAC,IAAK,OAAA,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAA3B,CAA2B,CAAC,CAAC,GAAG,CACtE,UAAC,MAAM,EAAE,CAAC;QACR,IAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC1B,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEzB,IAAI,CAAC,KAAK,CAAC,EAAE;YACX,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;SACpC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IACvC,CAAC,CACF,CAAC;IACF,OAAO,IAAI,iBAAU,CAAC,UAAC,CAAC;QACtB,IAAI,UAAU,GAAG,KAAK,CAAC;QAEvB,SAAe,IAAI;;;;;;;;4BACG,WAAA,SAAA,MAAM,CAAA;;;;4BAAf,KAAK;4BACd,IAAI,UAAU;gCAAE,sBAAO;4BACvB,qBAAM,KAAK,CAAC,KAAK,CAAC,EAAA;;4BAAlB,SAAkB,CAAC;;;;;;;;;;;;;;;;;;;;SAEtB;QAED,IAAI,EAAE,CAAC,IAAI,CACT;YACE,UAAU,GAAG,IAAI,CAAC;YAClB,CAAC,CAAC,QAAQ,EAAE,CAAC;QACf,CAAC,EACD,UAAC,CAAC;YACA,UAAU,GAAG,IAAI,CAAC;YAClB,UAAG,
|
|
1
|
+
{"version":3,"file":"sendAPDU.js","sourceRoot":"","sources":["../../src/ble/sendAPDU.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAAkC;AAClC,uCAAqC;AACrC,IAAM,KAAK,GAAG,IAAI,CAAC;AAEnB,SAAS,WAAW,CAClB,MAAc,EACd,YAAsC;IAEtC,IAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,KACE,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,EACjC,CAAC,GAAG,MAAM,CAAC,MAAM,EACjB,CAAC,IAAI,IAAI,EAAE,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,EACjC;QACA,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;KACxC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAEM,IAAM,QAAQ,GAAG,UACtB,KAAsC,EACtC,IAAY,EACZ,OAAe;IAEf,IAAM,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,UAAC,CAAC,IAAK,OAAA,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAA3B,CAA2B,CAAC,CAAC,GAAG,CACtE,UAAC,MAAM,EAAE,CAAC;QACR,IAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC1B,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEzB,IAAI,CAAC,KAAK,CAAC,EAAE;YACX,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;SACpC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IACvC,CAAC,CACF,CAAC;IACF,OAAO,IAAI,iBAAU,CAAC,UAAC,CAAC;QACtB,IAAI,UAAU,GAAG,KAAK,CAAC;QAEvB,SAAe,IAAI;;;;;;;;4BACG,WAAA,SAAA,MAAM,CAAA;;;;4BAAf,KAAK;4BACd,IAAI,UAAU;gCAAE,sBAAO;4BACvB,qBAAM,KAAK,CAAC,KAAK,CAAC,EAAA;;4BAAlB,SAAkB,CAAC;;;;;;;;;;;;;;;;;;;;SAEtB;QAED,IAAI,EAAE,CAAC,IAAI,CACT;YACE,UAAU,GAAG,IAAI,CAAC;YAClB,CAAC,CAAC,QAAQ,EAAE,CAAC;QACf,CAAC,EACD,UAAC,CAAC;YACA,UAAU,GAAG,IAAI,CAAC;YAClB,IAAA,UAAG,EAAC,WAAW,EAAE,mBAAmB,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAClD,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACb,CAAC,CACF,CAAC;QAEF,IAAM,WAAW,GAAG;YAClB,IAAI,CAAC,UAAU,EAAE;gBACf,IAAA,UAAG,EAAC,aAAa,EAAE,uBAAuB,CAAC,CAAC;gBAC5C,UAAU,GAAG,IAAI,CAAC;aACnB;QACH,CAAC,CAAC;QAEF,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAjDW,QAAA,QAAQ,YAiDnB"}
|
package/lib/index.d.ts
CHANGED
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,YAAY,IAAO,CAAC;AACjC,eAAO,MAAM,aAAa,IAAO,CAAC;AAClC,eAAO,MAAM,KAAK,IAAO,CAAC;AAC1B,eAAO,MAAM,MAAM,IAAO,CAAC;AAC3B,eAAO,MAAM,QAAQ,KAAO,CAAC;AAE7B,oBAAY,aAAa;IACvB,IAAI,SAAS;IACb,KAAK,UAAU;IACf,KAAK,UAAU;CAChB;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,YAAY,IAAO,CAAC;AACjC,eAAO,MAAM,aAAa,IAAO,CAAC;AAClC,eAAO,MAAM,KAAK,IAAO,CAAC;AAC1B,eAAO,MAAM,MAAM,IAAO,CAAC;AAC3B,eAAO,MAAM,QAAQ,KAAO,CAAC;AAE7B,oBAAY,aAAa;IACvB,IAAI,SAAS;IACb,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB;AAqED;;GAEG;AACH,eAAO,MAAM,iBAAiB,QAAS,CAAC;AAExC;;GAEG;AACH,eAAO,MAAM,cAAc,OAAQ,aAAa,KAAG,WAIlD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,aACjB,MAAM,KACf,WAAW,GAAG,IAAI,GAAG,SAMvB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,iBACjB,MAAM,KACnB,WAAW,GAAG,IAAI,GAAG,SAMvB,CAAC;AAEF,eAAO,MAAM,mBAAmB,gBACjB,MAAM,KAClB,WAAW,GAAG,IAAI,GAAG,SAOvB,CAAC;AAuBF;;GAEG;AACH,eAAO,MAAM,wBAAwB,QAAO,MAAM,EAAuB,CAAC;AAE1E;;GAEG;AACH,eAAO,MAAM,sBAAsB,SAC3B,MAAM,KACX,cAAc,GAAG,SAAmD,CAAC;AAExE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,aAAa,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;IAEhB,YAAY,EAAE,CAAC,eAAe,EAAE,MAAM,KAAK,MAAM,CAAC;IAClD,aAAa,CAAC,EAAE;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;KACpB,EAAE,CAAC;CACL;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB"}
|
package/lib/index.js
CHANGED
|
@@ -41,6 +41,7 @@ var DeviceModelId;
|
|
|
41
41
|
(function (DeviceModelId) {
|
|
42
42
|
DeviceModelId["blue"] = "blue";
|
|
43
43
|
DeviceModelId["nanoS"] = "nanoS";
|
|
44
|
+
DeviceModelId["nanoSP"] = "nanoSP";
|
|
44
45
|
DeviceModelId["nanoX"] = "nanoX";
|
|
45
46
|
})(DeviceModelId = exports.DeviceModelId || (exports.DeviceModelId = {}));
|
|
46
47
|
var devices = (_a = {},
|
|
@@ -69,6 +70,16 @@ var devices = (_a = {},
|
|
|
69
70
|
: 2 * 1024;
|
|
70
71
|
}
|
|
71
72
|
},
|
|
73
|
+
_a[DeviceModelId.nanoSP] = {
|
|
74
|
+
id: DeviceModelId.nanoSP,
|
|
75
|
+
productName: "Ledger Nano SP",
|
|
76
|
+
productIdMM: 0x50,
|
|
77
|
+
legacyUsbProductId: 0x0005,
|
|
78
|
+
usbOnly: true,
|
|
79
|
+
memorySize: 1533 * 1024,
|
|
80
|
+
masks: [0x33100000],
|
|
81
|
+
getBlockSize: function (_firmwareVersion) { return 512; }
|
|
82
|
+
},
|
|
72
83
|
_a[DeviceModelId.nanoX] = {
|
|
73
84
|
id: DeviceModelId.nanoX,
|
|
74
85
|
productName: "Ledger Nano X",
|
|
@@ -139,6 +150,9 @@ var identifyUSBProductId = function (usbProductId) {
|
|
|
139
150
|
exports.identifyUSBProductId = identifyUSBProductId;
|
|
140
151
|
var identifyProductName = function (productName) {
|
|
141
152
|
var productId = productMap[productName];
|
|
153
|
+
if (!productId && productName.startsWith("Nano S")) {
|
|
154
|
+
productId = DeviceModelId.nanoSP;
|
|
155
|
+
}
|
|
142
156
|
var deviceModel = devicesList.find(function (d) { return d.id === productId; });
|
|
143
157
|
return deviceModel;
|
|
144
158
|
};
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,kDAA4B;AAE5B;;;;;;;;;;;;;;GAcG;AACU,QAAA,YAAY,GAAG,IAAI,CAAC;AACpB,QAAA,aAAa,GAAG,IAAI,CAAC;AACrB,QAAA,KAAK,GAAG,IAAI,CAAC;AACb,QAAA,MAAM,GAAG,IAAI,CAAC;AACd,QAAA,QAAQ,GAAG,IAAI,CAAC;AAE7B,IAAY,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib-es/index.d.ts
CHANGED
package/lib-es/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,YAAY,IAAO,CAAC;AACjC,eAAO,MAAM,aAAa,IAAO,CAAC;AAClC,eAAO,MAAM,KAAK,IAAO,CAAC;AAC1B,eAAO,MAAM,MAAM,IAAO,CAAC;AAC3B,eAAO,MAAM,QAAQ,KAAO,CAAC;AAE7B,oBAAY,aAAa;IACvB,IAAI,SAAS;IACb,KAAK,UAAU;IACf,KAAK,UAAU;CAChB;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,YAAY,IAAO,CAAC;AACjC,eAAO,MAAM,aAAa,IAAO,CAAC;AAClC,eAAO,MAAM,KAAK,IAAO,CAAC;AAC1B,eAAO,MAAM,MAAM,IAAO,CAAC;AAC3B,eAAO,MAAM,QAAQ,KAAO,CAAC;AAE7B,oBAAY,aAAa;IACvB,IAAI,SAAS;IACb,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB;AAqED;;GAEG;AACH,eAAO,MAAM,iBAAiB,QAAS,CAAC;AAExC;;GAEG;AACH,eAAO,MAAM,cAAc,OAAQ,aAAa,KAAG,WAIlD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,aACjB,MAAM,KACf,WAAW,GAAG,IAAI,GAAG,SAMvB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,iBACjB,MAAM,KACnB,WAAW,GAAG,IAAI,GAAG,SAMvB,CAAC;AAEF,eAAO,MAAM,mBAAmB,gBACjB,MAAM,KAClB,WAAW,GAAG,IAAI,GAAG,SAOvB,CAAC;AAuBF;;GAEG;AACH,eAAO,MAAM,wBAAwB,QAAO,MAAM,EAAuB,CAAC;AAE1E;;GAEG;AACH,eAAO,MAAM,sBAAsB,SAC3B,MAAM,KACX,cAAc,GAAG,SAAmD,CAAC;AAExE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,aAAa,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;IAEhB,YAAY,EAAE,CAAC,eAAe,EAAE,MAAM,KAAK,MAAM,CAAC;IAClD,aAAa,CAAC,EAAE;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;KACpB,EAAE,CAAC;CACL;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB"}
|
package/lib-es/index.js
CHANGED
|
@@ -35,6 +35,7 @@ export var DeviceModelId;
|
|
|
35
35
|
(function (DeviceModelId) {
|
|
36
36
|
DeviceModelId["blue"] = "blue";
|
|
37
37
|
DeviceModelId["nanoS"] = "nanoS";
|
|
38
|
+
DeviceModelId["nanoSP"] = "nanoSP";
|
|
38
39
|
DeviceModelId["nanoX"] = "nanoX";
|
|
39
40
|
})(DeviceModelId || (DeviceModelId = {}));
|
|
40
41
|
var devices = (_a = {},
|
|
@@ -63,6 +64,16 @@ var devices = (_a = {},
|
|
|
63
64
|
: 2 * 1024;
|
|
64
65
|
}
|
|
65
66
|
},
|
|
67
|
+
_a[DeviceModelId.nanoSP] = {
|
|
68
|
+
id: DeviceModelId.nanoSP,
|
|
69
|
+
productName: "Ledger Nano SP",
|
|
70
|
+
productIdMM: 0x50,
|
|
71
|
+
legacyUsbProductId: 0x0005,
|
|
72
|
+
usbOnly: true,
|
|
73
|
+
memorySize: 1533 * 1024,
|
|
74
|
+
masks: [0x33100000],
|
|
75
|
+
getBlockSize: function (_firmwareVersion) { return 512; }
|
|
76
|
+
},
|
|
66
77
|
_a[DeviceModelId.nanoX] = {
|
|
67
78
|
id: DeviceModelId.nanoX,
|
|
68
79
|
productName: "Ledger Nano X",
|
|
@@ -130,6 +141,9 @@ export var identifyUSBProductId = function (usbProductId) {
|
|
|
130
141
|
};
|
|
131
142
|
export var identifyProductName = function (productName) {
|
|
132
143
|
var productId = productMap[productName];
|
|
144
|
+
if (!productId && productName.startsWith("Nano S")) {
|
|
145
|
+
productId = DeviceModelId.nanoSP;
|
|
146
|
+
}
|
|
133
147
|
var deviceModel = devicesList.find(function (d) { return d.id === productId; });
|
|
134
148
|
return deviceModel;
|
|
135
149
|
};
|
package/lib-es/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,IAAM,YAAY,GAAG,IAAI,CAAC;AACjC,MAAM,CAAC,IAAM,aAAa,GAAG,IAAI,CAAC;AAClC,MAAM,CAAC,IAAM,KAAK,GAAG,IAAI,CAAC;AAC1B,MAAM,CAAC,IAAM,MAAM,GAAG,IAAI,CAAC;AAC3B,MAAM,CAAC,IAAM,QAAQ,GAAG,IAAI,CAAC;AAE7B,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ledgerhq/devices",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.10.0",
|
|
4
4
|
"description": "Ledger devices",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Ledger"
|
|
@@ -21,11 +21,11 @@
|
|
|
21
21
|
"types": "lib/index.d.ts",
|
|
22
22
|
"license": "Apache-2.0",
|
|
23
23
|
"devDependencies": {
|
|
24
|
-
"@types/semver": "^7.3.
|
|
24
|
+
"@types/semver": "^7.3.8"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@ledgerhq/errors": "^6.
|
|
28
|
-
"@ledgerhq/logs": "^6.
|
|
27
|
+
"@ledgerhq/errors": "^6.10.0",
|
|
28
|
+
"@ledgerhq/logs": "^6.10.0",
|
|
29
29
|
"rxjs": "6",
|
|
30
30
|
"semver": "^7.3.5"
|
|
31
31
|
},
|
|
@@ -35,5 +35,5 @@
|
|
|
35
35
|
"watch": "bash ../../script/watch.sh",
|
|
36
36
|
"doc": "bash ../../script/doc.sh"
|
|
37
37
|
},
|
|
38
|
-
"gitHead": "
|
|
38
|
+
"gitHead": "03b06be36f668077572feb4d5ccd7486f546f7b4"
|
|
39
39
|
}
|
package/src/index.ts
CHANGED
|
@@ -24,6 +24,7 @@ export const IIWebUSB = 0x10;
|
|
|
24
24
|
export enum DeviceModelId {
|
|
25
25
|
blue = "blue",
|
|
26
26
|
nanoS = "nanoS",
|
|
27
|
+
nanoSP = "nanoSP",
|
|
27
28
|
nanoX = "nanoX",
|
|
28
29
|
}
|
|
29
30
|
|
|
@@ -51,6 +52,16 @@ const devices: { [key in DeviceModelId]: DeviceModel } = {
|
|
|
51
52
|
? 4 * 1024
|
|
52
53
|
: 2 * 1024,
|
|
53
54
|
},
|
|
55
|
+
[DeviceModelId.nanoSP]: {
|
|
56
|
+
id: DeviceModelId.nanoSP,
|
|
57
|
+
productName: "Ledger Nano SP",
|
|
58
|
+
productIdMM: 0x50,
|
|
59
|
+
legacyUsbProductId: 0x0005,
|
|
60
|
+
usbOnly: true,
|
|
61
|
+
memorySize: 1533 * 1024,
|
|
62
|
+
masks: [0x33100000],
|
|
63
|
+
getBlockSize: (_firmwareVersion: string): number => 512,
|
|
64
|
+
},
|
|
54
65
|
[DeviceModelId.nanoX]: {
|
|
55
66
|
id: DeviceModelId.nanoX,
|
|
56
67
|
productName: "Ledger Nano X",
|
|
@@ -128,7 +139,10 @@ export const identifyUSBProductId = (
|
|
|
128
139
|
export const identifyProductName = (
|
|
129
140
|
productName: string
|
|
130
141
|
): DeviceModel | null | undefined => {
|
|
131
|
-
|
|
142
|
+
let productId = productMap[productName];
|
|
143
|
+
if (!productId && productName.startsWith("Nano S")) {
|
|
144
|
+
productId = DeviceModelId.nanoSP;
|
|
145
|
+
}
|
|
132
146
|
const deviceModel = devicesList.find((d) => d.id === productId);
|
|
133
147
|
return deviceModel;
|
|
134
148
|
};
|