@ledgerhq/device-transport-kit-web-hid 1.2.0 → 1.2.2
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.
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{FramerUtils as c,OpeningConnectionError as a,SendApduTimeoutError as u}from"@ledgerhq/device-management-kit";import*as v from"@sentry/minimal";import{Left as
|
|
1
|
+
import{FramerUtils as c,OpeningConnectionError as a,SendApduTimeoutError as u}from"@ledgerhq/device-management-kit";import*as v from"@sentry/minimal";import{Left as p,Maybe as s,Nothing as m,Right as h}from"purify-ts";import{FRAME_SIZE as l}from"../data/WebHidConfig";import{WebHidSendReportError as A}from"../model/Errors";class b{dependencies;apduSender;apduReceiver;sendApduPromiseResolver;logger;constructor({dependencies:e,apduSenderFactory:t,apduReceiverFactory:d},r){const i=s.of(c.numberToByteArray(Math.floor(Math.random()*65535),2));this.logger=r("WebHidApduSender"),this.apduSender=t({frameSize:l,channel:i,padding:!0}),this.apduReceiver=d({channel:i}),this.sendApduPromiseResolver=m,this.dependencies=e,this.logger.info("\u{1F50C} Connected to device")}async sendApdu(e,t,d){let r;const i=new Promise(n=>{this.sendApduPromiseResolver=s.of((...o)=>(r&&clearTimeout(r),n(...o)))});for(const n of this.apduSender.getFrames(e))try{await this.dependencies.device.sendReport(0,new Uint8Array(n.getRawData()))}catch(o){return this.logger.info("Error sending frame",{data:{error:o}}),Promise.resolve(p(new A(o)))}return d&&(r=setTimeout(()=>{this.logger.debug("[sendApdu] Abort timeout",{data:{abortTimeout:d}}),this.sendApduPromiseResolver.map(n=>n(p(new u("Abort timeout"))))},d)),i}receiveHidInputReport(e){const t=new Uint8Array(e.data.buffer);this.apduReceiver.handleFrame(t).map(r=>{r.map(i=>{this.sendApduPromiseResolver.map(n=>n(h(i)))})}).mapLeft(r=>{this.sendApduPromiseResolver.map(i=>i(p(r)))})}getDependencies(){return this.dependencies}setDependencies(e){this.dependencies=e}async setupConnection(){try{this.dependencies.device.oninputreport=e=>this.receiveHidInputReport(e),await this.dependencies.device.open()}catch(e){if(e instanceof DOMException&&e.name==="InvalidStateError")this.logger.info("Device is already opened");else{const t=new a(e);throw this.logger.error("Error while opening device",{data:{error:e}}),v.captureException(t),e}}}closeConnection(){this.logger.info("\u{1F51A} Disconnect");try{this.dependencies.device.close()}catch(e){this.logger.error("Error while closing device",{data:{device:this.dependencies.device,error:e}})}}}export{b as WebHidApduSender};
|
|
2
2
|
//# sourceMappingURL=WebHidApduSender.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/api/transport/WebHidApduSender.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n type ApduReceiverService,\n type ApduReceiverServiceFactory,\n type ApduResponse,\n type ApduSenderService,\n type ApduSenderServiceFactory,\n type DeviceApduSender,\n type DmkError,\n FramerUtils,\n type LoggerPublisherService,\n OpeningConnectionError,\n SendApduTimeoutError,\n} from \"@ledgerhq/device-management-kit\";\nimport * as Sentry from \"@sentry/minimal\";\nimport { type Either, Left, Maybe, Nothing, Right } from \"purify-ts\";\n\nimport { FRAME_SIZE } from \"@api/data/WebHidConfig\";\nimport { WebHidSendReportError } from \"@api/model/Errors\";\n\nexport type WebHidApduSenderConstructorArgs = {\n dependencies: WebHidApduSenderDependencies;\n apduSenderFactory: ApduSenderServiceFactory;\n apduReceiverFactory: ApduReceiverServiceFactory;\n};\n\nexport type WebHidApduSenderDependencies = {\n device: HIDDevice;\n};\n\nexport class WebHidApduSender\n implements DeviceApduSender<WebHidApduSenderDependencies>\n{\n private dependencies: WebHidApduSenderDependencies;\n private readonly apduSender: ApduSenderService;\n private readonly apduReceiver: ApduReceiverService;\n private sendApduPromiseResolver: Maybe<\n (value: Either<DmkError, ApduResponse>) => void\n >;\n private readonly logger: LoggerPublisherService;\n\n constructor(\n {\n dependencies,\n apduSenderFactory,\n apduReceiverFactory,\n }: WebHidApduSenderConstructorArgs,\n loggerServiceFactory: (tag: string) => LoggerPublisherService,\n ) {\n const channel = Maybe.of(\n FramerUtils.numberToByteArray(Math.floor(Math.random() * 0xffff), 2),\n );\n this.logger = loggerServiceFactory(\"WebHidApduSender\");\n this.apduSender = apduSenderFactory({\n frameSize: FRAME_SIZE,\n channel,\n padding: true,\n });\n this.apduReceiver = apduReceiverFactory({ channel });\n this.sendApduPromiseResolver = Nothing;\n this.dependencies = dependencies;\n this.logger.info(\"\uD83D\uDD0C Connected to device\");\n }\n\n async sendApdu(\n apdu: Uint8Array,\n _triggersDisconnection?: boolean,\n abortTimeout?: number,\n ): Promise<Either<DmkError, ApduResponse>> {\n
|
|
5
|
-
"mappings": "AAAA,OAQE,eAAAA,EAEA,0BAAAC,EACA,wBAAAC,MACK,kCACP,UAAYC,MAAY,kBACxB,OAAsB,QAAAC,EAAM,SAAAC,EAAO,WAAAC,EAAS,SAAAC,MAAa,YAEzD,OAAS,cAAAC,MAAkB,yBAC3B,OAAS,yBAAAC,MAA6B,oBAY/B,MAAMC,CAEb,CACU,aACS,WACA,aACT,wBAGS,OAEjB,YACE,CACE,aAAAC,EACA,kBAAAC,EACA,oBAAAC,CACF,EACAC,EACA,CACA,MAAMC,EAAUV,EAAM,GACpBL,EAAY,kBAAkB,KAAK,MAAM,KAAK,OAAO,EAAI,KAAM,EAAG,CAAC,CACrE,EACA,KAAK,OAASc,EAAqB,kBAAkB,EACrD,KAAK,WAAaF,EAAkB,CAClC,UAAWJ,EACX,QAAAO,EACA,QAAS,EACX,CAAC,EACD,KAAK,aAAeF,EAAoB,CAAE,QAAAE,CAAQ,CAAC,EACnD,KAAK,wBAA0BT,EAC/B,KAAK,aAAeK,EACpB,KAAK,OAAO,KAAK,+BAAwB,CAC3C,CAEA,MAAM,SACJK,EACAC,EACAC,EACyC,CACzC,
|
|
4
|
+
"sourcesContent": ["import {\n type ApduReceiverService,\n type ApduReceiverServiceFactory,\n type ApduResponse,\n type ApduSenderService,\n type ApduSenderServiceFactory,\n type DeviceApduSender,\n type DmkError,\n FramerUtils,\n type LoggerPublisherService,\n OpeningConnectionError,\n SendApduTimeoutError,\n} from \"@ledgerhq/device-management-kit\";\nimport * as Sentry from \"@sentry/minimal\";\nimport { type Either, Left, Maybe, Nothing, Right } from \"purify-ts\";\n\nimport { FRAME_SIZE } from \"@api/data/WebHidConfig\";\nimport { WebHidSendReportError } from \"@api/model/Errors\";\n\nexport type WebHidApduSenderConstructorArgs = {\n dependencies: WebHidApduSenderDependencies;\n apduSenderFactory: ApduSenderServiceFactory;\n apduReceiverFactory: ApduReceiverServiceFactory;\n};\n\nexport type WebHidApduSenderDependencies = {\n device: HIDDevice;\n};\n\nexport class WebHidApduSender\n implements DeviceApduSender<WebHidApduSenderDependencies>\n{\n private dependencies: WebHidApduSenderDependencies;\n private readonly apduSender: ApduSenderService;\n private readonly apduReceiver: ApduReceiverService;\n private sendApduPromiseResolver: Maybe<\n (value: Either<DmkError, ApduResponse>) => void\n >;\n private readonly logger: LoggerPublisherService;\n\n constructor(\n {\n dependencies,\n apduSenderFactory,\n apduReceiverFactory,\n }: WebHidApduSenderConstructorArgs,\n loggerServiceFactory: (tag: string) => LoggerPublisherService,\n ) {\n const channel = Maybe.of(\n FramerUtils.numberToByteArray(Math.floor(Math.random() * 0xffff), 2),\n );\n this.logger = loggerServiceFactory(\"WebHidApduSender\");\n this.apduSender = apduSenderFactory({\n frameSize: FRAME_SIZE,\n channel,\n padding: true,\n });\n this.apduReceiver = apduReceiverFactory({ channel });\n this.sendApduPromiseResolver = Nothing;\n this.dependencies = dependencies;\n this.logger.info(\"\uD83D\uDD0C Connected to device\");\n }\n\n async sendApdu(\n apdu: Uint8Array,\n _triggersDisconnection?: boolean,\n abortTimeout?: number,\n ): Promise<Either<DmkError, ApduResponse>> {\n let timeout: ReturnType<typeof setTimeout> | undefined;\n\n const resultPromise = new Promise<Either<DmkError, ApduResponse>>(\n (resolve) => {\n this.sendApduPromiseResolver = Maybe.of((...args) => {\n if (timeout) {\n clearTimeout(timeout);\n }\n return resolve(...args);\n });\n },\n );\n\n for (const frame of this.apduSender.getFrames(apdu)) {\n try {\n await this.dependencies.device.sendReport(\n 0,\n new Uint8Array(frame.getRawData()),\n );\n } catch (error) {\n this.logger.info(\"Error sending frame\", { data: { error } });\n return Promise.resolve(Left(new WebHidSendReportError(error)));\n }\n }\n\n if (abortTimeout) {\n timeout = setTimeout(() => {\n this.logger.debug(\"[sendApdu] Abort timeout\", {\n data: { abortTimeout },\n });\n this.sendApduPromiseResolver.map((resolve) =>\n resolve(Left(new SendApduTimeoutError(\"Abort timeout\"))),\n );\n }, abortTimeout);\n }\n\n return resultPromise;\n }\n\n private receiveHidInputReport(event: HIDInputReportEvent) {\n const data = new Uint8Array(event.data.buffer);\n const maybeApduResponse = this.apduReceiver.handleFrame(data);\n\n maybeApduResponse\n .map((response) => {\n response.map((apduResponse) => {\n this.sendApduPromiseResolver.map((resolve) =>\n resolve(Right(apduResponse)),\n );\n });\n })\n .mapLeft((error) => {\n this.sendApduPromiseResolver.map((resolve) => resolve(Left(error)));\n });\n }\n\n public getDependencies() {\n return this.dependencies;\n }\n\n public setDependencies(dependencies: WebHidApduSenderDependencies) {\n this.dependencies = dependencies;\n }\n\n public async setupConnection() {\n try {\n this.dependencies.device.oninputreport = (event) =>\n this.receiveHidInputReport(event);\n await this.dependencies.device.open();\n } catch (error) {\n if (error instanceof DOMException && error.name === \"InvalidStateError\") {\n this.logger.info(`Device is already opened`);\n } else {\n const connectionError = new OpeningConnectionError(error);\n this.logger.error(`Error while opening device`, {\n data: { error },\n });\n Sentry.captureException(connectionError);\n throw error;\n }\n }\n }\n\n public closeConnection() {\n this.logger.info(\"\uD83D\uDD1A Disconnect\");\n try {\n this.dependencies.device.close();\n } catch (error) {\n this.logger.error(\"Error while closing device\", {\n data: { device: this.dependencies.device, error },\n });\n }\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["FramerUtils", "OpeningConnectionError", "SendApduTimeoutError", "Sentry", "Left", "Maybe", "Nothing", "Right", "FRAME_SIZE", "WebHidSendReportError", "WebHidApduSender", "dependencies", "apduSenderFactory", "apduReceiverFactory", "loggerServiceFactory", "channel", "apdu", "_triggersDisconnection", "abortTimeout", "timeout", "resultPromise", "resolve", "args", "frame", "error", "event", "data", "response", "apduResponse", "connectionError"]
|
|
7
7
|
}
|
package/lib/esm/package.json
CHANGED
|
@@ -1,53 +1,57 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
"dependencies": {
|
|
3
|
+
"@sentry/minimal": "catalog:",
|
|
4
|
+
"purify-ts": "catalog:",
|
|
5
|
+
"uuid": "catalog:"
|
|
6
|
+
},
|
|
7
|
+
"devDependencies": {
|
|
8
|
+
"@ledgerhq/device-management-kit": "workspace:^",
|
|
9
|
+
"@ledgerhq/eslint-config-dsdk": "workspace:^",
|
|
10
|
+
"@ledgerhq/ldmk-tool": "workspace:^",
|
|
11
|
+
"@ledgerhq/prettier-config-dsdk": "workspace:^",
|
|
12
|
+
"@ledgerhq/tsconfig-dsdk": "workspace:^",
|
|
13
|
+
"@ledgerhq/vitest-config-dmk": "workspace:^",
|
|
14
|
+
"@types/uuid": "catalog:",
|
|
15
|
+
"@types/w3c-web-hid": "catalog:",
|
|
16
|
+
"rxjs": "catalog:",
|
|
17
|
+
"ts-node": "catalog:"
|
|
18
|
+
},
|
|
6
19
|
"exports": {
|
|
7
20
|
".": {
|
|
8
|
-
"
|
|
9
|
-
"
|
|
21
|
+
"import": "./lib/esm/index.js",
|
|
22
|
+
"types": "./lib/types/index.d.ts"
|
|
10
23
|
}
|
|
11
24
|
},
|
|
12
25
|
"files": [
|
|
13
26
|
"./lib",
|
|
14
27
|
"package.json"
|
|
15
28
|
],
|
|
29
|
+
"license": "Apache-2.0",
|
|
30
|
+
"name": "@ledgerhq/device-transport-kit-web-hid",
|
|
31
|
+
"peerDependencies": {
|
|
32
|
+
"@ledgerhq/device-management-kit": "workspace:^",
|
|
33
|
+
"rxjs": "catalog:"
|
|
34
|
+
},
|
|
35
|
+
"private": false,
|
|
36
|
+
"repository": {
|
|
37
|
+
"type": "git",
|
|
38
|
+
"url": "https://github.com/LedgerHQ/device-sdk-ts.git"
|
|
39
|
+
},
|
|
16
40
|
"scripts": {
|
|
17
|
-
"prebuild": "rimraf lib",
|
|
18
41
|
"build": "pnpm ldmk-tool build --entryPoints src/index.ts,src/**/*.ts --tsconfig tsconfig.prod.json --platform web",
|
|
19
42
|
"dev": "concurrently \"pnpm watch:builds\" \"pnpm watch:types\"",
|
|
20
|
-
"watch:builds": "pnpm ldmk-tool watch --entryPoints src/index.ts,src/**/*.ts --tsconfig tsconfig.prod.json --platform web",
|
|
21
|
-
"watch:types": "concurrently \"tsc --watch -p tsconfig.prod.json\" \"tsc-alias --watch -p tsconfig.prod.json\"",
|
|
22
43
|
"lint": "eslint",
|
|
23
44
|
"lint:fix": "pnpm lint --fix",
|
|
24
45
|
"postpack": "find . -name '*.tgz' -exec cp {} ../../../dist/ \\; ",
|
|
46
|
+
"prebuild": "rimraf lib",
|
|
25
47
|
"prettier": "prettier . --check",
|
|
26
48
|
"prettier:fix": "prettier . --write",
|
|
27
|
-
"typecheck": "tsc --noEmit",
|
|
28
49
|
"test": "vitest run",
|
|
50
|
+
"test:coverage": "vitest run --coverage",
|
|
29
51
|
"test:watch": "vitest",
|
|
30
|
-
"
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
"@sentry/minimal": "catalog:",
|
|
34
|
-
"purify-ts": "catalog:",
|
|
35
|
-
"uuid": "catalog:"
|
|
36
|
-
},
|
|
37
|
-
"devDependencies": {
|
|
38
|
-
"@ledgerhq/device-management-kit": "workspace:*",
|
|
39
|
-
"@ledgerhq/ldmk-tool": "workspace:*",
|
|
40
|
-
"@ledgerhq/eslint-config-dsdk": "workspace:*",
|
|
41
|
-
"@ledgerhq/prettier-config-dsdk": "workspace:*",
|
|
42
|
-
"@ledgerhq/tsconfig-dsdk": "workspace:*",
|
|
43
|
-
"@ledgerhq/vitest-config-dmk": "workspace:*",
|
|
44
|
-
"@types/uuid": "catalog:",
|
|
45
|
-
"@types/w3c-web-hid": "catalog:",
|
|
46
|
-
"rxjs": "catalog:",
|
|
47
|
-
"ts-node": "catalog:"
|
|
52
|
+
"typecheck": "tsc --noEmit",
|
|
53
|
+
"watch:builds": "pnpm ldmk-tool watch --entryPoints src/index.ts,src/**/*.ts --tsconfig tsconfig.prod.json --platform web",
|
|
54
|
+
"watch:types": "concurrently \"tsc --watch -p tsconfig.prod.json\" \"tsc-alias --watch -p tsconfig.prod.json\""
|
|
48
55
|
},
|
|
49
|
-
"
|
|
50
|
-
"@ledgerhq/device-management-kit": "workspace:*",
|
|
51
|
-
"rxjs": "catalog:"
|
|
52
|
-
}
|
|
56
|
+
"version": "1.2.2"
|
|
53
57
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebHidApduSender.d.ts","sourceRoot":"","sources":["../../../../src/api/transport/WebHidApduSender.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,0BAA0B,EAC/B,KAAK,YAAY,EAEjB,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACrB,KAAK,QAAQ,EAEb,KAAK,sBAAsB,EAG5B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,KAAK,MAAM,EAA+B,MAAM,WAAW,CAAC;AAKrE,MAAM,MAAM,+BAA+B,GAAG;IAC5C,YAAY,EAAE,4BAA4B,CAAC;IAC3C,iBAAiB,EAAE,wBAAwB,CAAC;IAC5C,mBAAmB,EAAE,0BAA0B,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,MAAM,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,qBAAa,gBACX,YAAW,gBAAgB,CAAC,4BAA4B,CAAC;IAEzD,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,OAAO,CAAC,uBAAuB,CAE7B;IACF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;gBAG9C,EACE,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,GACpB,EAAE,+BAA+B,EAClC,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,sBAAsB;IAiBzD,QAAQ,CACZ,IAAI,EAAE,UAAU,EAChB,sBAAsB,CAAC,EAAE,OAAO,EAChC,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"WebHidApduSender.d.ts","sourceRoot":"","sources":["../../../../src/api/transport/WebHidApduSender.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,0BAA0B,EAC/B,KAAK,YAAY,EAEjB,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACrB,KAAK,QAAQ,EAEb,KAAK,sBAAsB,EAG5B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,KAAK,MAAM,EAA+B,MAAM,WAAW,CAAC;AAKrE,MAAM,MAAM,+BAA+B,GAAG;IAC5C,YAAY,EAAE,4BAA4B,CAAC;IAC3C,iBAAiB,EAAE,wBAAwB,CAAC;IAC5C,mBAAmB,EAAE,0BAA0B,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,MAAM,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,qBAAa,gBACX,YAAW,gBAAgB,CAAC,4BAA4B,CAAC;IAEzD,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,OAAO,CAAC,uBAAuB,CAE7B;IACF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;gBAG9C,EACE,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,GACpB,EAAE,+BAA+B,EAClC,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,sBAAsB;IAiBzD,QAAQ,CACZ,IAAI,EAAE,UAAU,EAChB,sBAAsB,CAAC,EAAE,OAAO,EAChC,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAwC1C,OAAO,CAAC,qBAAqB;IAiBtB,eAAe;IAIf,eAAe,CAAC,YAAY,EAAE,4BAA4B;IAIpD,eAAe;IAmBrB,eAAe;CAUvB"}
|