@ledgerhq/device-management-kit 0.0.0-develop-20241004001112 → 0.0.0-develop-20241005001104

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.
Files changed (51) hide show
  1. package/lib/cjs/src/api/index.d.ts +1 -0
  2. package/lib/cjs/src/api/index.d.ts.map +1 -1
  3. package/lib/cjs/src/api/index.js +4 -1
  4. package/lib/cjs/src/api/index.js.map +1 -1
  5. package/lib/cjs/src/api/utils/Base64String.d.ts +3 -0
  6. package/lib/cjs/src/api/utils/Base64String.d.ts.map +1 -0
  7. package/lib/cjs/src/api/utils/Base64String.js +33 -0
  8. package/lib/cjs/src/api/utils/Base64String.js.map +1 -0
  9. package/lib/cjs/src/internal/usb/model/Errors.d.ts +0 -5
  10. package/lib/cjs/src/internal/usb/model/Errors.d.ts.map +1 -1
  11. package/lib/cjs/src/internal/usb/model/Errors.js +1 -10
  12. package/lib/cjs/src/internal/usb/model/Errors.js.map +1 -1
  13. package/lib/cjs/src/internal/usb/service/UsbHidDeviceConnectionFactory.d.ts +1 -3
  14. package/lib/cjs/src/internal/usb/service/UsbHidDeviceConnectionFactory.d.ts.map +1 -1
  15. package/lib/cjs/src/internal/usb/service/UsbHidDeviceConnectionFactory.js +1 -2
  16. package/lib/cjs/src/internal/usb/service/UsbHidDeviceConnectionFactory.js.map +1 -1
  17. package/lib/cjs/src/internal/usb/transport/UsbHidDeviceConnection.d.ts +2 -7
  18. package/lib/cjs/src/internal/usb/transport/UsbHidDeviceConnection.d.ts.map +1 -1
  19. package/lib/cjs/src/internal/usb/transport/UsbHidDeviceConnection.js +3 -33
  20. package/lib/cjs/src/internal/usb/transport/UsbHidDeviceConnection.js.map +1 -1
  21. package/lib/cjs/src/internal/usb/transport/WebUsbHidTransport.d.ts +4 -2
  22. package/lib/cjs/src/internal/usb/transport/WebUsbHidTransport.d.ts.map +1 -1
  23. package/lib/cjs/src/internal/usb/transport/WebUsbHidTransport.js +53 -46
  24. package/lib/cjs/src/internal/usb/transport/WebUsbHidTransport.js.map +1 -1
  25. package/lib/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  26. package/lib/esm/src/api/index.d.ts +1 -0
  27. package/lib/esm/src/api/index.d.ts.map +1 -1
  28. package/lib/esm/src/api/index.js +1 -0
  29. package/lib/esm/src/api/index.js.map +1 -1
  30. package/lib/esm/src/api/utils/Base64String.d.ts +3 -0
  31. package/lib/esm/src/api/utils/Base64String.d.ts.map +1 -0
  32. package/lib/esm/src/api/utils/Base64String.js +29 -0
  33. package/lib/esm/src/api/utils/Base64String.js.map +1 -0
  34. package/lib/esm/src/internal/usb/model/Errors.d.ts +0 -5
  35. package/lib/esm/src/internal/usb/model/Errors.d.ts.map +1 -1
  36. package/lib/esm/src/internal/usb/model/Errors.js +0 -8
  37. package/lib/esm/src/internal/usb/model/Errors.js.map +1 -1
  38. package/lib/esm/src/internal/usb/service/UsbHidDeviceConnectionFactory.d.ts +1 -3
  39. package/lib/esm/src/internal/usb/service/UsbHidDeviceConnectionFactory.d.ts.map +1 -1
  40. package/lib/esm/src/internal/usb/service/UsbHidDeviceConnectionFactory.js +1 -2
  41. package/lib/esm/src/internal/usb/service/UsbHidDeviceConnectionFactory.js.map +1 -1
  42. package/lib/esm/src/internal/usb/transport/UsbHidDeviceConnection.d.ts +2 -7
  43. package/lib/esm/src/internal/usb/transport/UsbHidDeviceConnection.d.ts.map +1 -1
  44. package/lib/esm/src/internal/usb/transport/UsbHidDeviceConnection.js +4 -34
  45. package/lib/esm/src/internal/usb/transport/UsbHidDeviceConnection.js.map +1 -1
  46. package/lib/esm/src/internal/usb/transport/WebUsbHidTransport.d.ts +4 -2
  47. package/lib/esm/src/internal/usb/transport/WebUsbHidTransport.d.ts.map +1 -1
  48. package/lib/esm/src/internal/usb/transport/WebUsbHidTransport.js +56 -49
  49. package/lib/esm/src/internal/usb/transport/WebUsbHidTransport.js.map +1 -1
  50. package/lib/esm/tsconfig.esm.tsbuildinfo +1 -1
  51. package/package.json +1 -1
@@ -45,5 +45,6 @@ export { type StateMachineTypes } from "./device-action/xstate-utils/StateMachin
45
45
  export { type DeviceActionStateMachine, XStateDeviceAction, } from "./device-action/xstate-utils/XStateDeviceAction";
46
46
  export { type DeviceSessionState, DeviceSessionStateType, } from "./device-session/DeviceSessionState";
47
47
  export { type SdkError } from "./Error";
48
+ export { base64StringToBuffer, isBase64String } from "./utils/Base64String";
48
49
  export { bufferToHexaString, hexaStringToBuffer, isHexaString, } from "./utils/HexaString";
49
50
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/index.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.isHexaString = exports.hexaStringToBuffer = exports.bufferToHexaString = exports.DeviceSessionStateType = exports.XStateDeviceAction = exports.SendCommandInAppDeviceAction = exports.OpenAppDeviceAction = exports.ListAppsWithMetadataDeviceAction = exports.ListAppsDeviceAction = exports.GoToDashboardDeviceAction = exports.GetDeviceStatusDeviceAction = exports.UnknownDAError = exports.UserInteractionRequired = exports.DeviceActionStatus = exports.InvalidStatusWordError = exports.ConnectedDevice = exports.ConsoleLogger = exports.LogLevel = exports.UnknownDeviceExchangeError = exports.DeviceExchangeError = exports.DeviceSdkBuilder = exports.DeviceSdk = exports.ApduResponse = exports.DeviceStatus = exports.DeviceModelId = exports.DeviceModel = exports.GlobalCommandErrorHandler = exports.GlobalCommandError = exports.CommandUtils = exports.isCommandErrorCode = exports.OpenAppCommand = exports.ListAppsCommand = exports.GetOsVersionCommand = exports.GetBatteryStatusCommand = exports.GetAppAndVersionCommand = exports.CloseAppCommand = exports.isSuccessCommandResult = exports.CommandResultStatus = exports.CommandResultFactory = exports.ByteArrayParser = exports.ByteArrayBuilder = exports.ApduParser = exports.ApduBuilder = exports.APDU_MAX_PAYLOAD = exports.Apdu = void 0;
17
+ exports.isHexaString = exports.hexaStringToBuffer = exports.bufferToHexaString = exports.isBase64String = exports.base64StringToBuffer = exports.DeviceSessionStateType = exports.XStateDeviceAction = exports.SendCommandInAppDeviceAction = exports.OpenAppDeviceAction = exports.ListAppsWithMetadataDeviceAction = exports.ListAppsDeviceAction = exports.GoToDashboardDeviceAction = exports.GetDeviceStatusDeviceAction = exports.UnknownDAError = exports.UserInteractionRequired = exports.DeviceActionStatus = exports.InvalidStatusWordError = exports.ConnectedDevice = exports.ConsoleLogger = exports.LogLevel = exports.UnknownDeviceExchangeError = exports.DeviceExchangeError = exports.DeviceSdkBuilder = exports.DeviceSdk = exports.ApduResponse = exports.DeviceStatus = exports.DeviceModelId = exports.DeviceModel = exports.GlobalCommandErrorHandler = exports.GlobalCommandError = exports.CommandUtils = exports.isCommandErrorCode = exports.OpenAppCommand = exports.ListAppsCommand = exports.GetOsVersionCommand = exports.GetBatteryStatusCommand = exports.GetAppAndVersionCommand = exports.CloseAppCommand = exports.isSuccessCommandResult = exports.CommandResultStatus = exports.CommandResultFactory = exports.ByteArrayParser = exports.ByteArrayBuilder = exports.ApduParser = exports.ApduBuilder = exports.APDU_MAX_PAYLOAD = exports.Apdu = void 0;
18
18
  var Apdu_1 = require("./apdu/model/Apdu");
19
19
  Object.defineProperty(exports, "Apdu", { enumerable: true, get: function () { return Apdu_1.Apdu; } });
20
20
  var ApduBuilder_1 = require("./apdu/utils/ApduBuilder");
@@ -94,6 +94,9 @@ var XStateDeviceAction_1 = require("./device-action/xstate-utils/XStateDeviceAct
94
94
  Object.defineProperty(exports, "XStateDeviceAction", { enumerable: true, get: function () { return XStateDeviceAction_1.XStateDeviceAction; } });
95
95
  var DeviceSessionState_1 = require("./device-session/DeviceSessionState");
96
96
  Object.defineProperty(exports, "DeviceSessionStateType", { enumerable: true, get: function () { return DeviceSessionState_1.DeviceSessionStateType; } });
97
+ var Base64String_1 = require("./utils/Base64String");
98
+ Object.defineProperty(exports, "base64StringToBuffer", { enumerable: true, get: function () { return Base64String_1.base64StringToBuffer; } });
99
+ Object.defineProperty(exports, "isBase64String", { enumerable: true, get: function () { return Base64String_1.isBase64String; } });
97
100
  var HexaString_1 = require("./utils/HexaString");
98
101
  Object.defineProperty(exports, "bufferToHexaString", { enumerable: true, get: function () { return HexaString_1.bufferToHexaString; } });
99
102
  Object.defineProperty(exports, "hexaStringToBuffer", { enumerable: true, get: function () { return HexaString_1.hexaStringToBuffer; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;AAEb,0CAAyC;AAAhC,4FAAA,IAAI,OAAA;AACb,wDAAyE;AAAhE,+GAAA,gBAAgB,OAAA;AAAE,0GAAA,WAAW,OAAA;AACtC,sDAAqD;AAA5C,wGAAA,UAAU,OAAA;AACnB,kEAAiE;AAAxD,oHAAA,gBAAgB,OAAA;AACzB,gEAA+D;AAAtD,kHAAA,eAAe,OAAA;AACxB,+DAIuC;AAHrC,qHAAA,oBAAoB,OAAA;AACpB,oHAAA,mBAAmB,OAAA;AACnB,uHAAA,sBAAsB,OAAA;AAExB,gEAA+D;AAAtD,kHAAA,eAAe,OAAA;AACxB,gFAG8C;AAF5C,kIAAA,uBAAuB,OAAA;AAGzB,gFAI8C;AAF5C,kIAAA,uBAAuB,OAAA;AAGzB,wEAG0C;AAFxC,0HAAA,mBAAmB,OAAA;AAGrB,gEAKsC;AAHpC,kHAAA,eAAe,OAAA;AAIjB,8DAA+E;AAApD,gHAAA,cAAc,OAAA;AACzC,+DAAmE;AAA1D,mHAAA,kBAAkB,OAAA;AAC3B,6DAA4D;AAAnD,4GAAA,YAAY,OAAA;AACrB,yEAG4C;AAF1C,wHAAA,kBAAkB,OAAA;AAClB,+HAAA,yBAAyB,OAAA;AAE3B,oDAAkE;AAAzD,0GAAA,WAAW,OAAA;AAAE,4GAAA,aAAa,OAAA;AACnC,sDAAqD;AAA5C,4GAAA,YAAY,OAAA;AACrB,8DAA6D;AAApD,4GAAA,YAAY,OAAA;AACrB,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAClB,uDAAgF;AAAvE,oHAAA,sBAAsB,OAAoB;AACnD,iCAA0E;AAAjE,4GAAA,mBAAmB,OAAA;AAAE,mHAAA,0BAA0B,OAAA;AACxD,+DAA8D;AAArD,oGAAA,QAAQ,OAAA;AACjB,2EAA0E;AAAjE,8GAAA,aAAa,OAAA;AACtB,0CAAwB;AACxB,+DAA8D;AAArD,kHAAA,eAAe,OAAA;AACxB,8CAA6D;AAApD,gHAAA,sBAAsB,OAAA;AAO/B,gFAGoD;AADlD,uHAAA,kBAAkB,OAAA;AAEpB,4FAA2F;AAAlF,kIAAA,uBAAuB,OAAA;AAChC,uDAA8D;AAArD,wGAAA,cAAc,OAAA;AACvB,iHAAgH;AAAvG,0IAAA,2BAA2B,OAAA;AAQpC,2GAA0G;AAAjG,sIAAA,yBAAyB,OAAA;AAQlC,4FAA2F;AAAlF,4HAAA,oBAAoB,OAAA;AAQ7B,gIAA+H;AAAtH,oJAAA,gCAAgC,OAAA;AAQzC,qGAAoG;AAA3F,0HAAA,mBAAmB,OAAA;AAS5B,gIAA+H;AAAtH,4IAAA,4BAA4B,OAAA;AAQrC,yFAG4D;AAD1D,wHAAA,kBAAkB,OAAA;AAEpB,6EAGgD;AAD9C,4HAAA,sBAAsB,OAAA;AAGxB,oDAI+B;AAH7B,gHAAA,kBAAkB,OAAA;AAClB,gHAAA,kBAAkB,OAAA;AAClB,0GAAA,YAAY,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;AAEb,0CAAyC;AAAhC,4FAAA,IAAI,OAAA;AACb,wDAAyE;AAAhE,+GAAA,gBAAgB,OAAA;AAAE,0GAAA,WAAW,OAAA;AACtC,sDAAqD;AAA5C,wGAAA,UAAU,OAAA;AACnB,kEAAiE;AAAxD,oHAAA,gBAAgB,OAAA;AACzB,gEAA+D;AAAtD,kHAAA,eAAe,OAAA;AACxB,+DAIuC;AAHrC,qHAAA,oBAAoB,OAAA;AACpB,oHAAA,mBAAmB,OAAA;AACnB,uHAAA,sBAAsB,OAAA;AAExB,gEAA+D;AAAtD,kHAAA,eAAe,OAAA;AACxB,gFAG8C;AAF5C,kIAAA,uBAAuB,OAAA;AAGzB,gFAI8C;AAF5C,kIAAA,uBAAuB,OAAA;AAGzB,wEAG0C;AAFxC,0HAAA,mBAAmB,OAAA;AAGrB,gEAKsC;AAHpC,kHAAA,eAAe,OAAA;AAIjB,8DAA+E;AAApD,gHAAA,cAAc,OAAA;AACzC,+DAAmE;AAA1D,mHAAA,kBAAkB,OAAA;AAC3B,6DAA4D;AAAnD,4GAAA,YAAY,OAAA;AACrB,yEAG4C;AAF1C,wHAAA,kBAAkB,OAAA;AAClB,+HAAA,yBAAyB,OAAA;AAE3B,oDAAkE;AAAzD,0GAAA,WAAW,OAAA;AAAE,4GAAA,aAAa,OAAA;AACnC,sDAAqD;AAA5C,4GAAA,YAAY,OAAA;AACrB,8DAA6D;AAApD,4GAAA,YAAY,OAAA;AACrB,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAClB,uDAAgF;AAAvE,oHAAA,sBAAsB,OAAoB;AACnD,iCAA0E;AAAjE,4GAAA,mBAAmB,OAAA;AAAE,mHAAA,0BAA0B,OAAA;AACxD,+DAA8D;AAArD,oGAAA,QAAQ,OAAA;AACjB,2EAA0E;AAAjE,8GAAA,aAAa,OAAA;AACtB,0CAAwB;AACxB,+DAA8D;AAArD,kHAAA,eAAe,OAAA;AACxB,8CAA6D;AAApD,gHAAA,sBAAsB,OAAA;AAO/B,gFAGoD;AADlD,uHAAA,kBAAkB,OAAA;AAEpB,4FAA2F;AAAlF,kIAAA,uBAAuB,OAAA;AAChC,uDAA8D;AAArD,wGAAA,cAAc,OAAA;AACvB,iHAAgH;AAAvG,0IAAA,2BAA2B,OAAA;AAQpC,2GAA0G;AAAjG,sIAAA,yBAAyB,OAAA;AAQlC,4FAA2F;AAAlF,4HAAA,oBAAoB,OAAA;AAQ7B,gIAA+H;AAAtH,oJAAA,gCAAgC,OAAA;AAQzC,qGAAoG;AAA3F,0HAAA,mBAAmB,OAAA;AAS5B,gIAA+H;AAAtH,4IAAA,4BAA4B,OAAA;AAQrC,yFAG4D;AAD1D,wHAAA,kBAAkB,OAAA;AAEpB,6EAGgD;AAD9C,4HAAA,sBAAsB,OAAA;AAGxB,wDAA+E;AAAtE,oHAAA,oBAAoB,OAAA;AAAE,8GAAA,cAAc,OAAA;AAC7C,oDAI+B;AAH7B,gHAAA,kBAAkB,OAAA;AAClB,gHAAA,kBAAkB,OAAA;AAClB,0GAAA,YAAY,OAAA"}
@@ -0,0 +1,3 @@
1
+ export declare function isBase64String(value: string): boolean;
2
+ export declare function base64StringToBuffer(value: string): Uint8Array | null;
3
+ //# sourceMappingURL=Base64String.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Base64String.d.ts","sourceRoot":"","sources":["../../../../../src/api/utils/Base64String.ts"],"names":[],"mappings":"AAAA,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAQrD;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAmBrE"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isBase64String = isBase64String;
4
+ exports.base64StringToBuffer = base64StringToBuffer;
5
+ function isBase64String(value) {
6
+ // Valid base64 characters are [A-Za-z0-9+/]
7
+ // They are always grouped by 4 characters.
8
+ // Optional padding at the end with one or two '='.
9
+ // see section 4 of: https://www.rfc-editor.org/rfc/rfc4648.txt
10
+ return /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(value);
11
+ }
12
+ function base64StringToBuffer(value) {
13
+ if (value.length === 0) {
14
+ return new Uint8Array();
15
+ }
16
+ if (!isBase64String(value)) {
17
+ return null;
18
+ }
19
+ try {
20
+ // Use the browser implementation of atob
21
+ const base64Decoded = atob(value);
22
+ const buffer = new Uint8Array(base64Decoded.length);
23
+ for (let i = 0; i < base64Decoded.length; i++) {
24
+ buffer[i] = base64Decoded.charCodeAt(i);
25
+ }
26
+ return buffer;
27
+ }
28
+ catch (_error) {
29
+ // Use the implementation of Buffer for environments such as node
30
+ return Uint8Array.from(Buffer.from(value, "base64"));
31
+ }
32
+ }
33
+ //# sourceMappingURL=Base64String.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Base64String.js","sourceRoot":"","sources":["../../../../../src/api/utils/Base64String.ts"],"names":[],"mappings":";;AAAA,wCAQC;AAED,oDAmBC;AA7BD,SAAgB,cAAc,CAAC,KAAa;IAC1C,4CAA4C;IAC5C,2CAA2C;IAC3C,mDAAmD;IACnD,+DAA+D;IAC/D,OAAO,kEAAkE,CAAC,IAAI,CAC5E,KAAK,CACN,CAAC;AACJ,CAAC;AAED,SAAgB,oBAAoB,CAAC,KAAa;IAChD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,UAAU,EAAE,CAAC;IAC1B,CAAC;IACD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC;QACH,yCAAyC;QACzC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9C,MAAM,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,MAAe,EAAE,CAAC;QACzB,iEAAiE;QACjE,OAAO,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IACvD,CAAC;AACH,CAAC"}
@@ -46,10 +46,5 @@ export declare class ReconnectionFailedError extends GeneralSdkError {
46
46
  readonly _tag = "ReconnectionFailedError";
47
47
  constructor(err?: unknown);
48
48
  }
49
- export declare class HidSendReportError extends GeneralSdkError {
50
- readonly err?: unknown;
51
- readonly _tag = "HidSendReportError";
52
- constructor(err?: unknown);
53
- }
54
49
  export {};
55
50
  //# sourceMappingURL=Errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Errors.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/usb/model/Errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,MAAM,uBAAuB,GAC/B,gCAAgC,GAChC,uBAAuB,CAAC;AAE5B,MAAM,MAAM,YAAY,GAAG,kBAAkB,GAAG,sBAAsB,CAAC;AAEvE,cAAM,eAAgB,YAAW,QAAQ;IACvC,IAAI,SAAqB;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;gBACZ,GAAG,CAAC,EAAE,OAAO;CAO1B;AAED,qBAAa,wBAAyB,SAAQ,eAAe;IAE/C,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,8BAA8B;gBAC/B,GAAG,CAAC,EAAE,OAAO;CAGnC;AAED,qBAAa,uBAAwB,SAAQ,eAAe;IAE9C,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,6BAA6B;gBAC9B,GAAG,CAAC,EAAE,OAAO;CAGnC;AAED,qBAAa,sBAAuB,SAAQ,eAAe;IAE7C,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,4BAA4B;gBAC7B,GAAG,CAAC,EAAE,OAAO;CAGnC;AAED,qBAAa,kBAAmB,SAAQ,eAAe;IAEzC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,wBAAwB;gBACzB,GAAG,CAAC,EAAE,OAAO;CAGnC;AAED,qBAAa,gCAAiC,SAAQ,eAAe;IAEvD,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,sCAAsC;gBACvC,GAAG,CAAC,EAAE,OAAO;CAGnC;AAED,qBAAa,wBAAyB,SAAQ,eAAe;IAE/C,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,8BAA8B;gBAC/B,GAAG,CAAC,EAAE,OAAO;CAGnC;AAED,qBAAa,eAAgB,SAAQ,eAAe;IAEtC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,qBAAqB;gBACtB,GAAG,CAAC,EAAE,OAAO;CAGnC;AAED,qBAAa,uBAAwB,SAAQ,eAAe;IAE9C,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,6BAA6B;gBAC9B,GAAG,CAAC,EAAE,OAAO;CAGnC;AAED,qBAAa,kBAAmB,SAAQ,eAAe;IAEzC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,wBAAwB;gBACzB,GAAG,CAAC,EAAE,OAAO;CAGnC"}
1
+ {"version":3,"file":"Errors.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/usb/model/Errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,MAAM,uBAAuB,GAC/B,gCAAgC,GAChC,uBAAuB,CAAC;AAE5B,MAAM,MAAM,YAAY,GAAG,kBAAkB,GAAG,sBAAsB,CAAC;AAEvE,cAAM,eAAgB,YAAW,QAAQ;IACvC,IAAI,SAAqB;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;gBACZ,GAAG,CAAC,EAAE,OAAO;CAO1B;AAED,qBAAa,wBAAyB,SAAQ,eAAe;IAE/C,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,8BAA8B;gBAC/B,GAAG,CAAC,EAAE,OAAO;CAGnC;AAED,qBAAa,uBAAwB,SAAQ,eAAe;IAE9C,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,6BAA6B;gBAC9B,GAAG,CAAC,EAAE,OAAO;CAGnC;AAED,qBAAa,sBAAuB,SAAQ,eAAe;IAE7C,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,4BAA4B;gBAC7B,GAAG,CAAC,EAAE,OAAO;CAGnC;AAED,qBAAa,kBAAmB,SAAQ,eAAe;IAEzC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,wBAAwB;gBACzB,GAAG,CAAC,EAAE,OAAO;CAGnC;AAED,qBAAa,gCAAiC,SAAQ,eAAe;IAEvD,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,sCAAsC;gBACvC,GAAG,CAAC,EAAE,OAAO;CAGnC;AAED,qBAAa,wBAAyB,SAAQ,eAAe;IAE/C,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,8BAA8B;gBAC/B,GAAG,CAAC,EAAE,OAAO;CAGnC;AAED,qBAAa,eAAgB,SAAQ,eAAe;IAEtC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,qBAAqB;gBACtB,GAAG,CAAC,EAAE,OAAO;CAGnC;AAED,qBAAa,uBAAwB,SAAQ,eAAe;IAE9C,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO;IADlC,SAAkB,IAAI,6BAA6B;gBAC9B,GAAG,CAAC,EAAE,OAAO;CAGnC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HidSendReportError = exports.ReconnectionFailedError = exports.DisconnectError = exports.SendApduConcurrencyError = exports.UsbHidTransportNotSupportedError = exports.UnknownDeviceError = exports.OpeningConnectionError = exports.NoAccessibleDeviceError = exports.DeviceNotRecognizedError = void 0;
3
+ exports.ReconnectionFailedError = exports.DisconnectError = exports.SendApduConcurrencyError = exports.UsbHidTransportNotSupportedError = exports.UnknownDeviceError = exports.OpeningConnectionError = exports.NoAccessibleDeviceError = exports.DeviceNotRecognizedError = void 0;
4
4
  class GeneralSdkError {
5
5
  _tag = "GeneralSdkError";
6
6
  originalError;
@@ -85,13 +85,4 @@ class ReconnectionFailedError extends GeneralSdkError {
85
85
  }
86
86
  }
87
87
  exports.ReconnectionFailedError = ReconnectionFailedError;
88
- class HidSendReportError extends GeneralSdkError {
89
- err;
90
- _tag = "HidSendReportError";
91
- constructor(err) {
92
- super(err);
93
- this.err = err;
94
- }
95
- }
96
- exports.HidSendReportError = HidSendReportError;
97
88
  //# sourceMappingURL=Errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Errors.js","sourceRoot":"","sources":["../../../../../../src/internal/usb/model/Errors.ts"],"names":[],"mappings":";;;AAQA,MAAM,eAAe;IACnB,IAAI,GAAG,iBAAiB,CAAC;IACzB,aAAa,CAAW;IACxB,YAAY,GAAa;QACvB,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;CACF;AAED,MAAa,wBAAyB,SAAQ,eAAe;IAEtC;IADH,IAAI,GAAG,0BAA0B,CAAC;IACpD,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,4DAKC;AAED,MAAa,uBAAwB,SAAQ,eAAe;IAErC;IADH,IAAI,GAAG,yBAAyB,CAAC;IACnD,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,0DAKC;AAED,MAAa,sBAAuB,SAAQ,eAAe;IAEpC;IADH,IAAI,GAAG,wBAAwB,CAAC;IAClD,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,wDAKC;AAED,MAAa,kBAAmB,SAAQ,eAAe;IAEhC;IADH,IAAI,GAAG,oBAAoB,CAAC;IAC9C,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,gDAKC;AAED,MAAa,gCAAiC,SAAQ,eAAe;IAE9C;IADH,IAAI,GAAG,kCAAkC,CAAC;IAC5D,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,4EAKC;AAED,MAAa,wBAAyB,SAAQ,eAAe;IAEtC;IADH,IAAI,GAAG,0BAA0B,CAAC;IACpD,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,4DAKC;AAED,MAAa,eAAgB,SAAQ,eAAe;IAE7B;IADH,IAAI,GAAG,iBAAiB,CAAC;IAC3C,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,0CAKC;AAED,MAAa,uBAAwB,SAAQ,eAAe;IAErC;IADH,IAAI,GAAG,yBAAyB,CAAC;IACnD,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,0DAKC;AAED,MAAa,kBAAmB,SAAQ,eAAe;IAEhC;IADH,IAAI,GAAG,oBAAoB,CAAC;IAC9C,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,gDAKC"}
1
+ {"version":3,"file":"Errors.js","sourceRoot":"","sources":["../../../../../../src/internal/usb/model/Errors.ts"],"names":[],"mappings":";;;AAQA,MAAM,eAAe;IACnB,IAAI,GAAG,iBAAiB,CAAC;IACzB,aAAa,CAAW;IACxB,YAAY,GAAa;QACvB,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;CACF;AAED,MAAa,wBAAyB,SAAQ,eAAe;IAEtC;IADH,IAAI,GAAG,0BAA0B,CAAC;IACpD,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,4DAKC;AAED,MAAa,uBAAwB,SAAQ,eAAe;IAErC;IADH,IAAI,GAAG,yBAAyB,CAAC;IACnD,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,0DAKC;AAED,MAAa,sBAAuB,SAAQ,eAAe;IAEpC;IADH,IAAI,GAAG,wBAAwB,CAAC;IAClD,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,wDAKC;AAED,MAAa,kBAAmB,SAAQ,eAAe;IAEhC;IADH,IAAI,GAAG,oBAAoB,CAAC;IAC9C,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,gDAKC;AAED,MAAa,gCAAiC,SAAQ,eAAe;IAE9C;IADH,IAAI,GAAG,kCAAkC,CAAC;IAC5D,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,4EAKC;AAED,MAAa,wBAAyB,SAAQ,eAAe;IAEtC;IADH,IAAI,GAAG,0BAA0B,CAAC;IACpD,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,4DAKC;AAED,MAAa,eAAgB,SAAQ,eAAe;IAE7B;IADH,IAAI,GAAG,iBAAiB,CAAC;IAC3C,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,0CAKC;AAED,MAAa,uBAAwB,SAAQ,eAAe;IAErC;IADH,IAAI,GAAG,yBAAyB,CAAC;IACnD,YAAqB,GAAa;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;QADQ,QAAG,GAAH,GAAG,CAAU;IAElC,CAAC;CACF;AALD,0DAKC"}
@@ -11,8 +11,6 @@ export declare class UsbHidDeviceConnectionFactory {
11
11
  private readonly loggerFactory;
12
12
  randomChannel: number;
13
13
  constructor(apduSenderFactory: (args: DefaultApduSenderServiceConstructorArgs) => ApduSenderService, apduReceiverFactory: (args: DefaultApduReceiverConstructorArgs) => ApduReceiverService, loggerFactory: (name: string) => LoggerPublisherService);
14
- create(device: HIDDevice, params: {
15
- onConnectionTerminated: () => void;
16
- }, channel?: Maybe<Uint8Array>): UsbHidDeviceConnection;
14
+ create(device: HIDDevice, channel?: Maybe<Uint8Array>): UsbHidDeviceConnection;
17
15
  }
18
16
  //# sourceMappingURL=UsbHidDeviceConnectionFactory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UsbHidDeviceConnectionFactory.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/usb/service/UsbHidDeviceConnectionFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAIlC,OAAO,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,oDAAoD,CAAC;AACvF,OAAO,EAAE,kCAAkC,EAAE,MAAM,6DAA6D,CAAC;AACjH,OAAO,EAAE,uCAAuC,EAAE,MAAM,2DAA2D,CAAC;AAGpH,OAAO,EAAE,sBAAsB,EAAE,MAAM,2DAA2D,CAAC;AAEnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AAExF,qBACa,6BAA6B;IAKtC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAIlC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IAIpC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAZhC,aAAa,SAAsC;gBAIhC,iBAAiB,EAAE,CAClC,IAAI,EAAE,uCAAuC,KAC1C,iBAAiB,EAEL,mBAAmB,EAAE,CACpC,IAAI,EAAE,kCAAkC,KACrC,mBAAmB,EAEP,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,sBAAsB;IAGnE,MAAM,CACX,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE;QAAE,sBAAsB,EAAE,MAAM,IAAI,CAAA;KAAE,EAC9C,OAAO,oBAEN,GACA,sBAAsB;CAe1B"}
1
+ {"version":3,"file":"UsbHidDeviceConnectionFactory.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/usb/service/UsbHidDeviceConnectionFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAIlC,OAAO,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,oDAAoD,CAAC;AACvF,OAAO,EAAE,kCAAkC,EAAE,MAAM,6DAA6D,CAAC;AACjH,OAAO,EAAE,uCAAuC,EAAE,MAAM,2DAA2D,CAAC;AAGpH,OAAO,EAAE,sBAAsB,EAAE,MAAM,2DAA2D,CAAC;AAEnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AAExF,qBACa,6BAA6B;IAKtC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAIlC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IAIpC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAZhC,aAAa,SAAsC;gBAIhC,iBAAiB,EAAE,CAClC,IAAI,EAAE,uCAAuC,KAC1C,iBAAiB,EAEL,mBAAmB,EAAE,CACpC,IAAI,EAAE,kCAAkC,KACrC,mBAAmB,EAEP,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,sBAAsB;IAGnE,MAAM,CACX,MAAM,EAAE,SAAS,EACjB,OAAO,oBAEN,GACA,sBAAsB;CAc1B"}
@@ -31,7 +31,7 @@ let UsbHidDeviceConnectionFactory = class UsbHidDeviceConnectionFactory {
31
31
  this.apduReceiverFactory = apduReceiverFactory;
32
32
  this.loggerFactory = loggerFactory;
33
33
  }
34
- create(device, params, channel = purify_ts_1.Maybe.of(FramerUtils_1.FramerUtils.numberToByteArray(this.randomChannel, FramerConst_1.CHANNEL_LENGTH))) {
34
+ create(device, channel = purify_ts_1.Maybe.of(FramerUtils_1.FramerUtils.numberToByteArray(this.randomChannel, FramerConst_1.CHANNEL_LENGTH))) {
35
35
  return new UsbHidDeviceConnection_1.UsbHidDeviceConnection({
36
36
  device,
37
37
  apduSender: this.apduSenderFactory({
@@ -40,7 +40,6 @@ let UsbHidDeviceConnectionFactory = class UsbHidDeviceConnectionFactory {
40
40
  padding: true,
41
41
  }),
42
42
  apduReceiver: this.apduReceiverFactory({ channel }),
43
- onConnectionTerminated: params.onConnectionTerminated,
44
43
  }, this.loggerFactory);
45
44
  }
46
45
  };
@@ -1 +1 @@
1
- {"version":3,"file":"UsbHidDeviceConnectionFactory.js","sourceRoot":"","sources":["../../../../../../src/internal/usb/service/UsbHidDeviceConnectionFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yCAA+C;AAC/C,yCAAkC;AAElC,2EAA2E;AAC3E,uFAAoF;AAKpF,4EAAyE;AACzE,2EAAwE;AAExE,kEAA6D;AAC7D,2FAAwF;AAGjF,IAAM,6BAA6B,GAAnC,MAAM,6BAA6B;IAKrB;IAIA;IAIA;IAZnB,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC;IAEnD,YAEmB,iBAEK,EAEL,mBAEO,EAEP,aAAuD;QARvD,sBAAiB,GAAjB,iBAAiB,CAEZ;QAEL,wBAAmB,GAAnB,mBAAmB,CAEZ;QAEP,kBAAa,GAAb,aAAa,CAA0C;IACvE,CAAC;IAEG,MAAM,CACX,MAAiB,EACjB,MAA8C,EAC9C,OAAO,GAAG,iBAAK,CAAC,EAAE,CAChB,yBAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,EAAE,4BAAc,CAAC,CAClE;QAED,OAAO,IAAI,+CAAsB,CAC/B;YACE,MAAM;YACN,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC;gBACjC,SAAS,EAAE,yBAAU;gBACrB,OAAO;gBACP,OAAO,EAAE,IAAI;aACd,CAAC;YACF,YAAY,EAAE,IAAI,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,CAAC;YACnD,sBAAsB,EAAE,MAAM,CAAC,sBAAsB;SACtD,EACD,IAAI,CAAC,aAAa,CACnB,CAAC;IACJ,CAAC;CACF,CAAA;AArCY,sEAA6B;wCAA7B,6BAA6B;IADzC,IAAA,sBAAU,GAAE;IAKR,WAAA,IAAA,kBAAM,EAAC,uCAAkB,CAAC,wBAAwB,CAAC,CAAA;IAInD,WAAA,IAAA,kBAAM,EAAC,uCAAkB,CAAC,0BAA0B,CAAC,CAAA;IAIrD,WAAA,IAAA,kBAAM,EAAC,yBAAW,CAAC,6BAA6B,CAAC,CAAA;;GAZzC,6BAA6B,CAqCzC"}
1
+ {"version":3,"file":"UsbHidDeviceConnectionFactory.js","sourceRoot":"","sources":["../../../../../../src/internal/usb/service/UsbHidDeviceConnectionFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yCAA+C;AAC/C,yCAAkC;AAElC,2EAA2E;AAC3E,uFAAoF;AAKpF,4EAAyE;AACzE,2EAAwE;AAExE,kEAA6D;AAC7D,2FAAwF;AAGjF,IAAM,6BAA6B,GAAnC,MAAM,6BAA6B;IAKrB;IAIA;IAIA;IAZnB,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC;IAEnD,YAEmB,iBAEK,EAEL,mBAEO,EAEP,aAAuD;QARvD,sBAAiB,GAAjB,iBAAiB,CAEZ;QAEL,wBAAmB,GAAnB,mBAAmB,CAEZ;QAEP,kBAAa,GAAb,aAAa,CAA0C;IACvE,CAAC;IAEG,MAAM,CACX,MAAiB,EACjB,OAAO,GAAG,iBAAK,CAAC,EAAE,CAChB,yBAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,EAAE,4BAAc,CAAC,CAClE;QAED,OAAO,IAAI,+CAAsB,CAC/B;YACE,MAAM;YACN,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC;gBACjC,SAAS,EAAE,yBAAU;gBACrB,OAAO;gBACP,OAAO,EAAE,IAAI;aACd,CAAC;YACF,YAAY,EAAE,IAAI,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,CAAC;SACpD,EACD,IAAI,CAAC,aAAa,CACnB,CAAC;IACJ,CAAC;CACF,CAAA;AAnCY,sEAA6B;wCAA7B,6BAA6B;IADzC,IAAA,sBAAU,GAAE;IAKR,WAAA,IAAA,kBAAM,EAAC,uCAAkB,CAAC,wBAAwB,CAAC,CAAA;IAInD,WAAA,IAAA,kBAAM,EAAC,uCAAkB,CAAC,0BAA0B,CAAC,CAAA;IAIrD,WAAA,IAAA,kBAAM,EAAC,yBAAW,CAAC,6BAA6B,CAAC,CAAA;;GAZzC,6BAA6B,CAmCzC"}
@@ -9,7 +9,6 @@ type UsbHidDeviceConnectionConstructorArgs = {
9
9
  device: HIDDevice;
10
10
  apduSender: ApduSenderService;
11
11
  apduReceiver: ApduReceiverService;
12
- onConnectionTerminated: () => void;
13
12
  };
14
13
  export declare class UsbHidDeviceConnection implements DeviceConnection {
15
14
  private _device;
@@ -18,16 +17,12 @@ export declare class UsbHidDeviceConnection implements DeviceConnection {
18
17
  private _sendApduSubject;
19
18
  private readonly _logger;
20
19
  private _settleReconnectionPromise;
21
- private _onConnectionTerminated;
22
- private _terminated;
23
- constructor({ device, apduSender, apduReceiver, onConnectionTerminated, }: UsbHidDeviceConnectionConstructorArgs, loggerServiceFactory: (tag: string) => LoggerPublisherService);
20
+ constructor({ device, apduSender, apduReceiver }: UsbHidDeviceConnectionConstructorArgs, loggerServiceFactory: (tag: string) => LoggerPublisherService);
24
21
  get device(): HIDDevice;
25
22
  set device(device: HIDDevice);
26
23
  sendApdu(apdu: Uint8Array, triggersDisconnection?: boolean): Promise<Either<SdkError, ApduResponse>>;
27
24
  private receiveHidInputReport;
28
- private waitForReconnection;
29
- private lostConnectionTimeout;
30
- lostConnection(): void;
25
+ private setupWaitForReconnection;
31
26
  private reconnected;
32
27
  disconnect(): void;
33
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"UsbHidDeviceConnection.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/usb/transport/UsbHidDeviceConnection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAsB,MAAM,WAAW,CAAC;AAIvD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,oDAAoD,CAAC;AAEvF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2DAA2D,CAAC;AAOxG,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,KAAK,qCAAqC,GAAG;IAC3C,MAAM,EAAE,SAAS,CAAC;IAClB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,YAAY,EAAE,mBAAmB,CAAC;IAClC,sBAAsB,EAAE,MAAM,IAAI,CAAC;CACpC,CAAC;AAEF,qBAAa,sBAAuB,YAAW,gBAAgB;IAC7D,OAAO,CAAC,OAAO,CAAY;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IACpD,OAAO,CAAC,gBAAgB,CAAwB;IAChD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;IACjD,OAAO,CAAC,0BAA0B,CAGhB;IAClB,OAAO,CAAC,uBAAuB,CAAa;IAC5C,OAAO,CAAC,WAAW,CAAS;gBAG1B,EACE,MAAM,EACN,UAAU,EACV,YAAY,EACZ,sBAAsB,GACvB,EAAE,qCAAqC,EAExC,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,sBAAsB;IAW/D,IAAW,MAAM,IAIS,SAAS,CAFlC;IAED,IAAW,MAAM,CAAC,MAAM,EAAE,SAAS,EAalC;IAEK,QAAQ,CACZ,IAAI,EAAE,UAAU,EAChB,qBAAqB,CAAC,EAAE,OAAO,GAC9B,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAsD1C,OAAO,CAAC,qBAAqB;IAuB7B,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,qBAAqB,CAA+B;IACrD,cAAc;IAQrB,OAAO,CAAC,WAAW;IAOZ,UAAU;CAUlB"}
1
+ {"version":3,"file":"UsbHidDeviceConnection.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/usb/transport/UsbHidDeviceConnection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAsB,MAAM,WAAW,CAAC;AAIvD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,oDAAoD,CAAC;AAEvF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2DAA2D,CAAC;AAGxG,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,KAAK,qCAAqC,GAAG;IAC3C,MAAM,EAAE,SAAS,CAAC;IAClB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,YAAY,EAAE,mBAAmB,CAAC;CACnC,CAAC;AAEF,qBAAa,sBAAuB,YAAW,gBAAgB;IAC7D,OAAO,CAAC,OAAO,CAAY;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IACpD,OAAO,CAAC,gBAAgB,CAAwB;IAChD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;IACjD,OAAO,CAAC,0BAA0B,CAGhB;gBAGhB,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,qCAAqC,EAE3E,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,sBAAsB;IAU/D,IAAW,MAAM,IAIS,SAAS,CAFlC;IAED,IAAW,MAAM,CAAC,MAAM,EAAE,SAAS,EAOlC;IAEK,QAAQ,CACZ,IAAI,EAAE,UAAU,EAChB,qBAAqB,CAAC,EAAE,OAAO,GAC9B,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IA4C1C,OAAO,CAAC,qBAAqB;IAuB7B,OAAO,CAAC,wBAAwB;IAShC,OAAO,CAAC,WAAW;IAOZ,UAAU;CAMlB"}
@@ -18,7 +18,6 @@ const purify_ts_1 = require("purify-ts");
18
18
  const rxjs_1 = require("rxjs");
19
19
  const CommandUtils_1 = require("../../../api/command/utils/CommandUtils");
20
20
  const loggerTypes_1 = require("../../logger-publisher/di/loggerTypes");
21
- const UsbHidConfig_1 = require("../../usb/data/UsbHidConfig");
22
21
  const Errors_1 = require("../../usb/model/Errors");
23
22
  let UsbHidDeviceConnection = class UsbHidDeviceConnection {
24
23
  _device;
@@ -27,12 +26,9 @@ let UsbHidDeviceConnection = class UsbHidDeviceConnection {
27
26
  _sendApduSubject;
28
27
  _logger;
29
28
  _settleReconnectionPromise = purify_ts_1.Maybe.zero();
30
- _onConnectionTerminated;
31
- _terminated = false;
32
- constructor({ device, apduSender, apduReceiver, onConnectionTerminated, }, loggerServiceFactory) {
29
+ constructor({ device, apduSender, apduReceiver }, loggerServiceFactory) {
33
30
  this._apduSender = apduSender;
34
31
  this._apduReceiver = apduReceiver;
35
- this._onConnectionTerminated = onConnectionTerminated;
36
32
  this._sendApduSubject = new rxjs_1.Subject();
37
33
  this._logger = loggerServiceFactory("UsbHidDeviceConnection");
38
34
  this._device = device;
@@ -44,10 +40,6 @@ let UsbHidDeviceConnection = class UsbHidDeviceConnection {
44
40
  set device(device) {
45
41
  this._device = device;
46
42
  this._device.oninputreport = (event) => this.receiveHidInputReport(event);
47
- if (this.lostConnectionTimeout) {
48
- this._logger.debug("Device reconnected, clearing lost connection timeout");
49
- clearTimeout(this.lostConnectionTimeout);
50
- }
51
43
  this._settleReconnectionPromise.ifJust(() => {
52
44
  this.reconnected();
53
45
  });
@@ -62,7 +54,7 @@ let UsbHidDeviceConnection = class UsbHidDeviceConnection {
62
54
  this._sendApduSubject.subscribe({
63
55
  next: async (r) => {
64
56
  if (triggersDisconnection && CommandUtils_1.CommandUtils.isSuccessResponse(r)) {
65
- const reconnectionRes = await this.waitForReconnection();
57
+ const reconnectionRes = await this.setupWaitForReconnection();
66
58
  reconnectionRes.caseOf({
67
59
  Left: (err) => resolve((0, purify_ts_1.Left)(err)),
68
60
  Right: () => resolve((0, purify_ts_1.Right)(r)),
@@ -77,14 +69,6 @@ let UsbHidDeviceConnection = class UsbHidDeviceConnection {
77
69
  },
78
70
  });
79
71
  });
80
- while (!this.device.opened && !this._terminated) {
81
- this._logger.debug("Waiting for device to be opened");
82
- await new Promise((resolve) => setTimeout(resolve, 100));
83
- }
84
- if (this._terminated) {
85
- this._logger.debug("Connection terminated, failing sendApdu");
86
- return Promise.resolve((0, purify_ts_1.Left)(new Errors_1.ReconnectionFailedError()));
87
- }
88
72
  const frames = this._apduSender.getFrames(apdu);
89
73
  for (const frame of frames) {
90
74
  this._logger.debug("Sending Frame", {
@@ -95,7 +79,6 @@ let UsbHidDeviceConnection = class UsbHidDeviceConnection {
95
79
  }
96
80
  catch (error) {
97
81
  this._logger.error("Error sending frame", { data: { error } });
98
- return Promise.resolve((0, purify_ts_1.Left)(new Errors_1.HidSendReportError(error)));
99
82
  }
100
83
  }
101
84
  return resultPromise;
@@ -122,7 +105,7 @@ let UsbHidDeviceConnection = class UsbHidDeviceConnection {
122
105
  },
123
106
  });
124
107
  }
125
- waitForReconnection() {
108
+ setupWaitForReconnection() {
126
109
  return new Promise((resolve) => {
127
110
  this._settleReconnectionPromise = purify_ts_1.Maybe.of({
128
111
  resolve: () => resolve((0, purify_ts_1.Right)(undefined)),
@@ -130,14 +113,6 @@ let UsbHidDeviceConnection = class UsbHidDeviceConnection {
130
113
  });
131
114
  });
132
115
  }
133
- lostConnectionTimeout = null;
134
- lostConnection() {
135
- this._logger.debug("Lost connection");
136
- this.lostConnectionTimeout = setTimeout(() => {
137
- this._logger.debug("Lost connection timeout");
138
- this.disconnect();
139
- }, UsbHidConfig_1.RECONNECT_DEVICE_TIMEOUT);
140
- }
141
116
  reconnected() {
142
117
  this._settleReconnectionPromise.ifJust((promise) => {
143
118
  promise.resolve();
@@ -145,11 +120,6 @@ let UsbHidDeviceConnection = class UsbHidDeviceConnection {
145
120
  });
146
121
  }
147
122
  disconnect() {
148
- this._logger.debug("Disconnect");
149
- this._terminated = true;
150
- if (this.lostConnectionTimeout)
151
- clearTimeout(this.lostConnectionTimeout);
152
- this._onConnectionTerminated();
153
123
  this._settleReconnectionPromise.ifJust((promise) => {
154
124
  promise.reject(new Errors_1.ReconnectionFailedError());
155
125
  this._settleReconnectionPromise = purify_ts_1.Maybe.zero();
@@ -1 +1 @@
1
- {"version":3,"file":"UsbHidDeviceConnection.js","sourceRoot":"","sources":["../../../../../../src/internal/usb/transport/UsbHidDeviceConnection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yCAAmC;AACnC,yCAAuD;AACvD,+BAA+B;AAE/B,kEAA+D;AAK/D,2EAAwE;AAExE,kEAA2E;AAC3E,uDAGoC;AAWpC,IAAa,sBAAsB,GAAnC,MAAa,sBAAsB;IACzB,OAAO,CAAY;IACV,WAAW,CAAoB;IAC/B,aAAa,CAAsB;IAC5C,gBAAgB,CAAwB;IAC/B,OAAO,CAAyB;IACzC,0BAA0B,GAG7B,iBAAK,CAAC,IAAI,EAAE,CAAC;IACV,uBAAuB,CAAa;IACpC,WAAW,GAAG,KAAK,CAAC;IAE5B,YACE,EACE,MAAM,EACN,UAAU,EACV,YAAY,EACZ,sBAAsB,GACgB,EAExC,oBAA6D;QAE7D,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,uBAAuB,GAAG,sBAAsB,CAAC;QACtD,IAAI,CAAC,gBAAgB,GAAG,IAAI,cAAO,EAAE,CAAC;QACtC,IAAI,CAAC,OAAO,GAAG,oBAAoB,CAAC,wBAAwB,CAAC,CAAC;QAC9D,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,CAAC,aAAa,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAC5E,CAAC;IAED,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAW,MAAM,CAAC,MAAiB;QACjC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,CAAC,aAAa,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAE1E,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,sDAAsD,CACvD,CAAC;YACF,YAAY,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,GAAG,EAAE;YAC1C,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,IAAgB,EAChB,qBAA+B;QAE/B,IAAI,CAAC,gBAAgB,GAAG,IAAI,cAAO,EAAE,CAAC;QAEtC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE;YACjC,IAAI,EAAE,EAAE,IAAI,EAAE;YACd,GAAG,EAAE,aAAa;SACnB,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,IAAI,OAAO,CAC/B,CAAC,OAAO,EAAE,EAAE;YACV,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC;gBAC9B,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;oBAChB,IAAI,qBAAqB,IAAI,2BAAY,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC/D,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;wBACzD,eAAe,CAAC,MAAM,CAAC;4BACrB,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,IAAA,gBAAI,EAAC,GAAG,CAAC,CAAC;4BACjC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAA,iBAAK,EAAC,CAAC,CAAC,CAAC;yBAC/B,CAAC,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,IAAA,iBAAK,EAAC,CAAC,CAAC,CAAC,CAAC;oBACpB,CAAC;gBACH,CAAC;gBACD,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;oBACb,OAAO,CAAC,IAAA,gBAAI,EAAC,GAAG,CAAC,CAAC,CAAC;gBACrB,CAAC;aACF,CAAC,CAAC;QACL,CAAC,CACF,CAAC;QAEF,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAChD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;YACtD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAC3D,CAAC;QACD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;YAC9D,OAAO,OAAO,CAAC,OAAO,CAAC,IAAA,gBAAI,EAAC,IAAI,gCAAuB,EAAE,CAAC,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAChD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE;gBAClC,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,EAAE;aACpC,CAAC,CAAC;YACH,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;YACvD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC/D,OAAO,OAAO,CAAC,OAAO,CAAC,IAAA,gBAAI,EAAC,IAAI,2BAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAEO,qBAAqB,CAAC,KAA0B;QACtD,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE;YACnC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;YACrB,GAAG,EAAE,eAAe;SACrB,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACtD,QAAQ,CAAC,MAAM,CAAC;YACd,KAAK,EAAE,CAAC,iBAAiB,EAAE,EAAE;gBAC3B,iBAAiB,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE;oBACrC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE;wBAC3C,IAAI,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE;qBACjC,CAAC,CAAC;oBACH,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBACzC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;gBACnC,CAAC,CAAC,CAAC;YACL,CAAC;YACD,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE;gBACZ,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnC,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAEO,mBAAmB;QACzB,OAAO,IAAI,OAAO,CAAyB,CAAC,OAAO,EAAE,EAAE;YACrD,IAAI,CAAC,0BAA0B,GAAG,iBAAK,CAAC,EAAE,CAAC;gBACzC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAA,iBAAK,EAAC,SAAS,CAAC,CAAC;gBACxC,MAAM,EAAE,CAAC,KAAe,EAAE,EAAE,CAAC,OAAO,CAAC,IAAA,gBAAI,EAAC,KAAK,CAAC,CAAC;aAClD,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,qBAAqB,GAA0B,IAAI,CAAC;IACrD,cAAc;QACnB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACtC,IAAI,CAAC,qBAAqB,GAAG,UAAU,CAAC,GAAG,EAAE;YAC3C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC,EAAE,uCAAwB,CAAC,CAAC;IAC/B,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;YACjD,OAAO,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,0BAA0B,GAAG,iBAAK,CAAC,IAAI,EAAE,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,UAAU;QACf,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,IAAI,CAAC,qBAAqB;YAAE,YAAY,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACzE,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;YACjD,OAAO,CAAC,MAAM,CAAC,IAAI,gCAAuB,EAAE,CAAC,CAAC;YAC9C,IAAI,CAAC,0BAA0B,GAAG,iBAAK,CAAC,IAAI,EAAE,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAtKY,wDAAsB;iCAAtB,sBAAsB;IAoB9B,WAAA,IAAA,kBAAM,EAAC,yBAAW,CAAC,6BAA6B,CAAC,CAAA;;GApBzC,sBAAsB,CAsKlC"}
1
+ {"version":3,"file":"UsbHidDeviceConnection.js","sourceRoot":"","sources":["../../../../../../src/internal/usb/transport/UsbHidDeviceConnection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yCAAmC;AACnC,yCAAuD;AACvD,+BAA+B;AAE/B,kEAA+D;AAK/D,2EAAwE;AAExE,uDAAqE;AAUrE,IAAa,sBAAsB,GAAnC,MAAa,sBAAsB;IACzB,OAAO,CAAY;IACV,WAAW,CAAoB;IAC/B,aAAa,CAAsB;IAC5C,gBAAgB,CAAwB;IAC/B,OAAO,CAAyB;IACzC,0BAA0B,GAG7B,iBAAK,CAAC,IAAI,EAAE,CAAC;IAElB,YACE,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAyC,EAE3E,oBAA6D;QAE7D,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,gBAAgB,GAAG,IAAI,cAAO,EAAE,CAAC;QACtC,IAAI,CAAC,OAAO,GAAG,oBAAoB,CAAC,wBAAwB,CAAC,CAAC;QAC9D,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,CAAC,aAAa,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAC5E,CAAC;IAED,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAW,MAAM,CAAC,MAAiB;QACjC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,CAAC,aAAa,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAE1E,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,GAAG,EAAE;YAC1C,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,IAAgB,EAChB,qBAA+B;QAE/B,IAAI,CAAC,gBAAgB,GAAG,IAAI,cAAO,EAAE,CAAC;QAEtC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE;YACjC,IAAI,EAAE,EAAE,IAAI,EAAE;YACd,GAAG,EAAE,aAAa;SACnB,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,IAAI,OAAO,CAC/B,CAAC,OAAO,EAAE,EAAE;YACV,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC;gBAC9B,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;oBAChB,IAAI,qBAAqB,IAAI,2BAAY,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC/D,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;wBAC9D,eAAe,CAAC,MAAM,CAAC;4BACrB,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,IAAA,gBAAI,EAAC,GAAG,CAAC,CAAC;4BACjC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAA,iBAAK,EAAC,CAAC,CAAC,CAAC;yBAC/B,CAAC,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,IAAA,iBAAK,EAAC,CAAC,CAAC,CAAC,CAAC;oBACpB,CAAC;gBACH,CAAC;gBACD,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;oBACb,OAAO,CAAC,IAAA,gBAAI,EAAC,GAAG,CAAC,CAAC,CAAC;gBACrB,CAAC;aACF,CAAC,CAAC;QACL,CAAC,CACF,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAChD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE;gBAClC,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,EAAE;aACpC,CAAC,CAAC;YACH,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;YACvD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAEO,qBAAqB,CAAC,KAA0B;QACtD,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE;YACnC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;YACrB,GAAG,EAAE,eAAe;SACrB,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACtD,QAAQ,CAAC,MAAM,CAAC;YACd,KAAK,EAAE,CAAC,iBAAiB,EAAE,EAAE;gBAC3B,iBAAiB,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE;oBACrC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE;wBAC3C,IAAI,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE;qBACjC,CAAC,CAAC;oBACH,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBACzC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;gBACnC,CAAC,CAAC,CAAC;YACL,CAAC;YACD,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE;gBACZ,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnC,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAEO,wBAAwB;QAC9B,OAAO,IAAI,OAAO,CAAyB,CAAC,OAAO,EAAE,EAAE;YACrD,IAAI,CAAC,0BAA0B,GAAG,iBAAK,CAAC,EAAE,CAAC;gBACzC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAA,iBAAK,EAAC,SAAS,CAAC,CAAC;gBACxC,MAAM,EAAE,CAAC,KAAe,EAAE,EAAE,CAAC,OAAO,CAAC,IAAA,gBAAI,EAAC,KAAK,CAAC,CAAC;aAClD,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;YACjD,OAAO,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,0BAA0B,GAAG,iBAAK,CAAC,IAAI,EAAE,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,UAAU;QACf,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;YACjD,OAAO,CAAC,MAAM,CAAC,IAAI,gCAAuB,EAAE,CAAC,CAAC;YAC9C,IAAI,CAAC,0BAA0B,GAAG,iBAAK,CAAC,IAAI,EAAE,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAjIY,wDAAsB;iCAAtB,sBAAsB;IAa9B,WAAA,IAAA,kBAAM,EAAC,yBAAW,CAAC,6BAA6B,CAAC,CAAA;;GAbzC,sBAAsB,CAiIlC"}
@@ -12,10 +12,12 @@ import { DisconnectHandler, UsbHidTransport } from "./UsbHidTransport";
12
12
  export declare class WebUsbHidTransport implements UsbHidTransport {
13
13
  private deviceModelDataSource;
14
14
  private _internalDevicesById;
15
+ private _disconnectionHandlersByHidId;
15
16
  private _deviceConnectionByHidId;
16
17
  private _connectionListenersAbortController;
17
18
  private _logger;
18
19
  private _usbHidDeviceConnectionFactory;
20
+ private _deviceDisconnectionTimerSubscription;
19
21
  constructor(deviceModelDataSource: DeviceModelDataSource, loggerServiceFactory: (tag: string) => LoggerPublisherService, usbHidDeviceConnectionFactory: UsbHidDeviceConnectionFactory);
20
22
  /**
21
23
  * Get the WebHID API if supported or error
@@ -68,9 +70,8 @@ export declare class WebUsbHidTransport implements UsbHidTransport {
68
70
  * The USB/HID product id is represented by only the 2nd byte
69
71
  */
70
72
  private getHidUsbProductId;
71
- private deleteInternalDevice;
72
73
  /**
73
- * Disconnect from a HID USB device
74
+ * Disconnect from a HID USB device and delete its handlers
74
75
  */
75
76
  disconnect(params: {
76
77
  connectedDevice: InternalConnectedDevice;
@@ -81,6 +82,7 @@ export declare class WebUsbHidTransport implements UsbHidTransport {
81
82
  * @private
82
83
  */
83
84
  private isHIDConnectionEvent;
85
+ private _handleDisconnection;
84
86
  /**
85
87
  * Handle the disconnection event of a HID device
86
88
  * @param event
@@ -1 +1 @@
1
- {"version":3,"file":"WebUsbHidTransport.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/usb/transport/WebUsbHidTransport.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAA4B,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAQ,UAAU,EAAa,MAAM,MAAM,CAAC;AAGnD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAG/F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2DAA2D,CAAC;AAGxG,OAAO,EACL,YAAY,EAQb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,EAAE,6BAA6B,EAAE,MAAM,qDAAqD,CAAC;AAGpG,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AASvE,qBACa,kBAAmB,YAAW,eAAe;IAUtD,OAAO,CAAC,qBAAqB;IAR/B,OAAO,CAAC,oBAAoB,CAAsC;IAClE,OAAO,CAAC,wBAAwB,CAAsC;IACtE,OAAO,CAAC,mCAAmC,CAAkB;IAC7D,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,8BAA8B,CAAgC;gBAI5D,qBAAqB,EAAE,qBAAqB,EAEpD,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,sBAAsB,EAE7D,6BAA6B,EAAE,6BAA6B;IAkB9D;;;OAGG;IACH,OAAO,KAAK,MAAM,GAMjB;IAED,WAAW;IAWX;;;;;;OAMG;YAEW,kBAAkB;IA8ChC;;;;;;;;;;;;;;;;;;OAkBG;IACH,gBAAgB,IAAI,UAAU,CAAC,wBAAwB,CAAC;IAiExD,eAAe,IAAI,IAAI;IAMvB;;OAEG;IACH,OAAO,CAAC,gCAAgC;IAsBxC,OAAO,CAAC,+BAA+B;IAKvC;;OAEG;IACG,OAAO,CAAC,EACZ,QAAQ,EACR,YAAY,GACb,EAAE;QACD,QAAQ,EAAE,QAAQ,CAAC;QACnB,YAAY,EAAE,iBAAiB,CAAC;KACjC,GAAG,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAAC;IAoD1D;;OAEG;IACH,OAAO,CAAC,kBAAkB;YAIZ,oBAAoB;IAqBlC;;OAEG;IACG,UAAU,CAAC,MAAM,EAAE;QACvB,eAAe,EAAE,uBAAuB,CAAC;KAC1C,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAwBnC;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAU5B;;;OAGG;IACH,OAAO,CAAC,8BAA8B;IAetC;;;OAGG;YACW,2BAA2B;CAsB1C"}
1
+ {"version":3,"file":"WebUsbHidTransport.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/usb/transport/WebUsbHidTransport.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAmC,MAAM,WAAW,CAAC;AACpE,OAAO,EAAQ,UAAU,EAAkC,MAAM,MAAM,CAAC;AAGxE,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAG/F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2DAA2D,CAAC;AAMxG,OAAO,EACL,YAAY,EAQb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,EAAE,6BAA6B,EAAE,MAAM,qDAAqD,CAAC;AAGpG,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AASvE,qBACa,kBAAmB,YAAW,eAAe;IAatD,OAAO,CAAC,qBAAqB;IAX/B,OAAO,CAAC,oBAAoB,CAAsC;IAClE,OAAO,CAAC,6BAA6B,CAA0B;IAC/D,OAAO,CAAC,wBAAwB,CAAsC;IACtE,OAAO,CAAC,mCAAmC,CAAkB;IAC7D,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,8BAA8B,CAAgC;IACtE,OAAO,CAAC,qCAAqC,CAC9B;gBAIL,qBAAqB,EAAE,qBAAqB,EAEpD,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,sBAAsB,EAE7D,6BAA6B,EAAE,6BAA6B;IAgB9D;;;OAGG;IACH,OAAO,KAAK,MAAM,GAMjB;IAED,WAAW;IAWX;;;;;;OAMG;YAEW,kBAAkB;IA8ChC;;;;;;;;;;;;;;;;;;OAkBG;IACH,gBAAgB,IAAI,UAAU,CAAC,wBAAwB,CAAC;IAiExD,eAAe,IAAI,IAAI;IAMvB;;OAEG;IACH,OAAO,CAAC,gCAAgC;IAsBxC,OAAO,CAAC,+BAA+B;IAKvC;;OAEG;IACG,OAAO,CAAC,EACZ,QAAQ,EACR,YAAY,GACb,EAAE;QACD,QAAQ,EAAE,QAAQ,CAAC;QACnB,YAAY,EAAE,iBAAiB,CAAC;KACjC,GAAG,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAAC;IAoD1D;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;OAEG;IACG,UAAU,CAAC,MAAM,EAAE;QACvB,eAAe,EAAE,uBAAuB,CAAC;KAC1C,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAiCnC;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,oBAAoB;IAY5B;;;OAGG;IACH,OAAO,CAAC,8BAA8B;IAoBtC;;;OAGG;IACH,OAAO,CAAC,2BAA2B;CAgCpC"}
@@ -52,20 +52,23 @@ let WebUsbHidTransport = class WebUsbHidTransport {
52
52
  deviceModelDataSource;
53
53
  // Maps uncoupled DiscoveredDevice and WebHID's HIDDevice WebHID
54
54
  _internalDevicesById;
55
+ _disconnectionHandlersByHidId;
55
56
  _deviceConnectionByHidId;
56
57
  _connectionListenersAbortController;
57
58
  _logger;
58
59
  _usbHidDeviceConnectionFactory;
60
+ _deviceDisconnectionTimerSubscription = purify_ts_1.Maybe.zero();
59
61
  constructor(deviceModelDataSource, loggerServiceFactory, usbHidDeviceConnectionFactory) {
60
62
  this.deviceModelDataSource = deviceModelDataSource;
61
63
  this._internalDevicesById = new Map();
64
+ this._disconnectionHandlersByHidId = new Map();
62
65
  this._deviceConnectionByHidId = new Map();
63
66
  this._connectionListenersAbortController = new AbortController();
64
67
  this._logger = loggerServiceFactory("WebUsbHidTransport");
65
68
  this._usbHidDeviceConnectionFactory = usbHidDeviceConnectionFactory;
66
69
  this.hidApi.map((hidApi) => {
67
- hidApi.addEventListener("disconnect", (event) => this.handleDeviceDisconnectionEvent(event));
68
- hidApi.addEventListener("connect", (event) => this.handleDeviceConnectionEvent(event));
70
+ hidApi.ondisconnect = (event) => this.handleDeviceDisconnectionEvent(event);
71
+ hidApi.onconnect = (event) => this.handleDeviceConnectionEvent(event);
69
72
  });
70
73
  }
71
74
  /**
@@ -247,12 +250,7 @@ let WebUsbHidTransport = class WebUsbHidTransport {
247
250
  }
248
251
  }
249
252
  const { discoveredDevice: { deviceModel }, } = internalDevice;
250
- const deviceConnection = this._usbHidDeviceConnectionFactory.create(internalDevice.hidDevice, {
251
- onConnectionTerminated: () => {
252
- onDisconnect(deviceId);
253
- this.deleteInternalDevice({ internalDevice });
254
- },
255
- });
253
+ const deviceConnection = this._usbHidDeviceConnectionFactory.create(internalDevice.hidDevice);
256
254
  this._deviceConnectionByHidId.set(this.getHidUsbProductId(internalDevice.hidDevice.productId), deviceConnection);
257
255
  const connectedDevice = new InternalConnectedDevice_1.InternalConnectedDevice({
258
256
  sendApdu: (apdu, triggersDisconnection) => deviceConnection.sendApdu(apdu, triggersDisconnection),
@@ -260,6 +258,9 @@ let WebUsbHidTransport = class WebUsbHidTransport {
260
258
  id: deviceId,
261
259
  type: "USB",
262
260
  });
261
+ this._disconnectionHandlersByHidId.set(this.getHidUsbProductId(internalDevice.hidDevice.productId), () => {
262
+ this.disconnect({ connectedDevice }).then(() => onDisconnect(deviceId));
263
+ });
263
264
  return (0, purify_ts_1.Right)(connectedDevice);
264
265
  }
265
266
  /**
@@ -268,24 +269,8 @@ let WebUsbHidTransport = class WebUsbHidTransport {
268
269
  getHidUsbProductId(productId) {
269
270
  return productId >> 8;
270
271
  }
271
- async deleteInternalDevice(params) {
272
- this._logger.debug("_internalDisconnect", {
273
- data: { connectedDevice: params },
274
- });
275
- const { internalDevice } = params;
276
- try {
277
- const usbProductId = this.getHidUsbProductId(internalDevice.hidDevice.productId);
278
- this._internalDevicesById.delete(internalDevice.id);
279
- this._deviceConnectionByHidId.delete(usbProductId);
280
- await internalDevice.hidDevice.close();
281
- return (0, purify_ts_1.Right)(void 0);
282
- }
283
- catch (error) {
284
- return (0, purify_ts_1.Left)(new Errors_1.DisconnectError(error));
285
- }
286
- }
287
272
  /**
288
- * Disconnect from a HID USB device
273
+ * Disconnect from a HID USB device and delete its handlers
289
274
  */
290
275
  async disconnect(params) {
291
276
  this._logger.debug("disconnect", { data: { connectedDevice: params } });
@@ -296,9 +281,17 @@ let WebUsbHidTransport = class WebUsbHidTransport {
296
281
  }
297
282
  const deviceConnection = this._deviceConnectionByHidId.get(this.getHidUsbProductId(internalDevice.hidDevice.productId));
298
283
  deviceConnection?.disconnect();
299
- return this.deleteInternalDevice({
300
- internalDevice,
301
- });
284
+ try {
285
+ const usbProductId = this.getHidUsbProductId(internalDevice.hidDevice.productId);
286
+ this._internalDevicesById.delete(internalDevice.id);
287
+ this._disconnectionHandlersByHidId.delete(usbProductId);
288
+ this._deviceConnectionByHidId.delete(usbProductId);
289
+ await internalDevice.hidDevice.close();
290
+ return (0, purify_ts_1.Right)(void 0);
291
+ }
292
+ catch (error) {
293
+ return (0, purify_ts_1.Left)(new Errors_1.DisconnectError(error));
294
+ }
302
295
  }
303
296
  /**
304
297
  * Type guard to check if the event is a HID connection event
@@ -312,6 +305,11 @@ let WebUsbHidTransport = class WebUsbHidTransport {
312
305
  "productId" in event.device &&
313
306
  typeof event.device.productId === "number");
314
307
  }
308
+ _handleDisconnection(device, callback) {
309
+ const usbProductId = this.getHidUsbProductId(device.productId);
310
+ const maybeDisconnectHandler = purify_ts_1.Maybe.fromNullable(this._disconnectionHandlersByHidId.get(usbProductId));
311
+ maybeDisconnectHandler.map(callback);
312
+ }
315
313
  /**
316
314
  * Handle the disconnection event of a HID device
317
315
  * @param event
@@ -321,35 +319,44 @@ let WebUsbHidTransport = class WebUsbHidTransport {
321
319
  this._logger.error("Invalid event", { data: { event } });
322
320
  return;
323
321
  }
324
- if (event.device.opened)
325
- event.device.close();
326
- const usbProductId = this.getHidUsbProductId(event.device.productId);
327
- const deviceConnection = this._deviceConnectionByHidId.get(usbProductId);
328
- if (deviceConnection) {
329
- deviceConnection.lostConnection();
330
- }
322
+ this._handleDisconnection(event.device, (handler) => {
323
+ // We start a timer to disconnect the device if the device has a disconnect handler (ie is already connected)
324
+ this._logger.debug(`Start delay of ${UsbHidConfig_1.RECONNECT_DEVICE_TIMEOUT}ms`);
325
+ this._deviceDisconnectionTimerSubscription = purify_ts_1.Maybe.of((0, rxjs_1.timer)(UsbHidConfig_1.RECONNECT_DEVICE_TIMEOUT).subscribe(() => {
326
+ this._logger.debug("Disconnecting device");
327
+ handler();
328
+ this._deviceDisconnectionTimerSubscription = purify_ts_1.Maybe.zero();
329
+ }));
330
+ });
331
331
  }
332
332
  /**
333
333
  * Handle the connection event of a HID device
334
334
  * @param event
335
335
  */
336
- async handleDeviceConnectionEvent(event) {
336
+ handleDeviceConnectionEvent(event) {
337
337
  if (!this.isHIDConnectionEvent(event)) {
338
338
  this._logger.error("Invalid event", { data: { event } });
339
339
  return;
340
340
  }
341
- const deviceConnection = this._deviceConnectionByHidId.get(this.getHidUsbProductId(event.device.productId));
342
- if (deviceConnection) {
343
- try {
344
- deviceConnection.device = event.device;
341
+ // If a disconnection blocking timer is running, we stop it and reconnect
342
+ try {
343
+ this._deviceDisconnectionTimerSubscription.map(async (timerSub) => {
344
+ timerSub.unsubscribe();
345
+ const maybeDeviceConnection = purify_ts_1.Maybe.fromNullable(this._deviceConnectionByHidId.get(this.getHidUsbProductId(event.device.productId)));
345
346
  await event.device.open();
346
- }
347
- catch (error) {
348
- this._logger.error("Error while reconnecting to device", {
349
- data: { event, error },
347
+ maybeDeviceConnection.map((dConnection) => (dConnection.device = event.device));
348
+ });
349
+ }
350
+ catch (error) {
351
+ this._logger.error("Error while reconnecting to device", {
352
+ data: { event, error },
353
+ });
354
+ this._handleDisconnection(event.device, (disconnectHandler) => {
355
+ disconnectHandler();
356
+ this._logger.debug("Disconnecting device", {
357
+ data: { device: event.device },
350
358
  });
351
- deviceConnection.disconnect();
352
- }
359
+ });
353
360
  }
354
361
  }
355
362
  };