@ledgerhq/device-contacts-kit 0.0.0-develop-20260827155839 → 0.0.0-develop-20260828024102
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 +30 -2
- package/lib/cjs/api/ContactsManager.js +1 -1
- package/lib/cjs/api/ContactsManager.js.map +1 -1
- package/lib/cjs/api/app-binder/RegisterExternalAddressDeviceActionTypes.js +2 -0
- package/lib/cjs/api/app-binder/RegisterExternalAddressDeviceActionTypes.js.map +7 -0
- package/lib/cjs/api/index.js +1 -1
- package/lib/cjs/api/index.js.map +2 -2
- package/lib/cjs/api/model/RegisterExternalAddress.js +2 -0
- package/lib/cjs/api/model/RegisterExternalAddress.js.map +7 -0
- package/lib/cjs/internal/DefaultContactsManager.js +1 -1
- package/lib/cjs/internal/DefaultContactsManager.js.map +3 -3
- package/lib/cjs/internal/DefaultContactsManager.test.js +2 -0
- package/lib/cjs/internal/DefaultContactsManager.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/ContactsAppBinder.js +1 -1
- package/lib/cjs/internal/app-binder/ContactsAppBinder.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/RegisterIdentityCommand.js +2 -0
- package/lib/cjs/internal/app-binder/command/RegisterIdentityCommand.js.map +7 -0
- package/lib/cjs/internal/app-binder/command/RegisterIdentityCommand.test.js +2 -0
- package/lib/cjs/internal/app-binder/command/RegisterIdentityCommand.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/device-action/RegisterExternalAddress/RegisterExternalAddressDeviceAction.js +2 -0
- package/lib/cjs/internal/app-binder/device-action/RegisterExternalAddress/RegisterExternalAddressDeviceAction.js.map +7 -0
- package/lib/cjs/internal/app-binder/device-action/RegisterExternalAddress/RegisterExternalAddressDeviceAction.test.js +2 -0
- package/lib/cjs/internal/app-binder/device-action/RegisterExternalAddress/RegisterExternalAddressDeviceAction.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/device-action/RegisterExternalAddress/validateRegisterExternalAddressInput.js +2 -0
- package/lib/cjs/internal/app-binder/device-action/RegisterExternalAddress/validateRegisterExternalAddressInput.js.map +7 -0
- package/lib/cjs/internal/app-binder/device-action/RegisterExternalAddress/validateRegisterExternalAddressInput.test.js +2 -0
- package/lib/cjs/internal/app-binder/device-action/RegisterExternalAddress/validateRegisterExternalAddressInput.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js +2 -0
- package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js.map +7 -0
- package/lib/cjs/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js +2 -0
- package/lib/cjs/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js.map +7 -0
- package/lib/cjs/internal/app-binder/device-action/__test-utils__/setupWaitForAppAndVersionDAMock.js +2 -0
- package/lib/cjs/internal/app-binder/device-action/__test-utils__/setupWaitForAppAndVersionDAMock.js.map +7 -0
- package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js +2 -0
- package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js.map +7 -0
- package/lib/cjs/internal/app-binder/isContactsSupportedForSession.js +1 -1
- package/lib/cjs/internal/app-binder/isContactsSupportedForSession.js.map +3 -3
- package/lib/cjs/internal/app-binder/isContactsSupportedForSession.test.js +1 -1
- package/lib/cjs/internal/app-binder/isContactsSupportedForSession.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/model/contactsConstants.js +2 -0
- package/lib/cjs/internal/app-binder/model/contactsConstants.js.map +7 -0
- package/lib/cjs/internal/app-binder/model/contactsErrors.js +2 -0
- package/lib/cjs/internal/app-binder/model/contactsErrors.js.map +7 -0
- package/lib/cjs/internal/app-binder/model/contactsValidation.js +2 -0
- package/lib/cjs/internal/app-binder/model/contactsValidation.js.map +7 -0
- package/lib/cjs/internal/app-binder/model/contactsValidation.test.js +2 -0
- package/lib/cjs/internal/app-binder/model/contactsValidation.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/services/contactsTlvSerializer.js +2 -0
- package/lib/cjs/internal/app-binder/services/contactsTlvSerializer.js.map +7 -0
- package/lib/cjs/internal/app-binder/services/contactsTlvSerializer.test.js +2 -0
- package/lib/cjs/internal/app-binder/services/contactsTlvSerializer.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/services/sendFramedContactsPayload.js +2 -0
- package/lib/cjs/internal/app-binder/services/sendFramedContactsPayload.js.map +7 -0
- package/lib/cjs/internal/app-binder/services/sendFramedContactsPayload.test.js +2 -0
- package/lib/cjs/internal/app-binder/services/sendFramedContactsPayload.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/SendRegisterIdentityTask.js +2 -0
- package/lib/cjs/internal/app-binder/task/SendRegisterIdentityTask.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/SendRegisterIdentityTask.test.js +2 -0
- package/lib/cjs/internal/app-binder/task/SendRegisterIdentityTask.test.js.map +7 -0
- package/lib/cjs/internal/di.js +1 -1
- package/lib/cjs/internal/di.js.map +3 -3
- package/lib/cjs/internal/di.test.js +1 -1
- package/lib/cjs/internal/di.test.js.map +3 -3
- package/lib/cjs/internal/use-cases/RegisterExternalAddressUseCase.js +2 -0
- package/lib/cjs/internal/use-cases/RegisterExternalAddressUseCase.js.map +7 -0
- package/lib/cjs/internal/use-cases/RegisterExternalAddressUseCase.test.js +2 -0
- package/lib/cjs/internal/use-cases/RegisterExternalAddressUseCase.test.js.map +7 -0
- package/lib/cjs/internal/use-cases/di/useCaseModule.js +2 -0
- package/lib/cjs/internal/use-cases/di/useCaseModule.js.map +7 -0
- package/lib/cjs/internal/use-cases/di/useCaseTypes.js +2 -0
- package/lib/cjs/internal/use-cases/di/useCaseTypes.js.map +7 -0
- package/lib/cjs/package.json +2 -1
- package/lib/esm/api/app-binder/RegisterExternalAddressDeviceActionTypes.js +1 -0
- package/lib/esm/api/app-binder/RegisterExternalAddressDeviceActionTypes.js.map +7 -0
- package/lib/esm/api/index.js +1 -1
- package/lib/esm/api/index.js.map +2 -2
- package/lib/esm/api/model/RegisterExternalAddress.js +1 -0
- package/lib/esm/api/model/RegisterExternalAddress.js.map +7 -0
- package/lib/esm/internal/DefaultContactsManager.js +1 -1
- package/lib/esm/internal/DefaultContactsManager.js.map +3 -3
- package/lib/esm/internal/DefaultContactsManager.test.js +2 -0
- package/lib/esm/internal/DefaultContactsManager.test.js.map +7 -0
- package/lib/esm/internal/app-binder/ContactsAppBinder.js +1 -1
- package/lib/esm/internal/app-binder/ContactsAppBinder.js.map +3 -3
- package/lib/esm/internal/app-binder/command/RegisterIdentityCommand.js +2 -0
- package/lib/esm/internal/app-binder/command/RegisterIdentityCommand.js.map +7 -0
- package/lib/esm/internal/app-binder/command/RegisterIdentityCommand.test.js +2 -0
- package/lib/esm/internal/app-binder/command/RegisterIdentityCommand.test.js.map +7 -0
- package/lib/esm/internal/app-binder/device-action/RegisterExternalAddress/RegisterExternalAddressDeviceAction.js +2 -0
- package/lib/esm/internal/app-binder/device-action/RegisterExternalAddress/RegisterExternalAddressDeviceAction.js.map +7 -0
- package/lib/esm/internal/app-binder/device-action/RegisterExternalAddress/RegisterExternalAddressDeviceAction.test.js +2 -0
- package/lib/esm/internal/app-binder/device-action/RegisterExternalAddress/RegisterExternalAddressDeviceAction.test.js.map +7 -0
- package/lib/esm/internal/app-binder/device-action/RegisterExternalAddress/validateRegisterExternalAddressInput.js +2 -0
- package/lib/esm/internal/app-binder/device-action/RegisterExternalAddress/validateRegisterExternalAddressInput.js.map +7 -0
- package/lib/esm/internal/app-binder/device-action/RegisterExternalAddress/validateRegisterExternalAddressInput.test.js +2 -0
- package/lib/esm/internal/app-binder/device-action/RegisterExternalAddress/validateRegisterExternalAddressInput.test.js.map +7 -0
- package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.js +2 -0
- package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.js.map +7 -0
- package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js +2 -0
- package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js.map +7 -0
- package/lib/esm/internal/app-binder/device-action/__test-utils__/setupWaitForAppAndVersionDAMock.js +2 -0
- package/lib/esm/internal/app-binder/device-action/__test-utils__/setupWaitForAppAndVersionDAMock.js.map +7 -0
- package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js +2 -0
- package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js.map +7 -0
- package/lib/esm/internal/app-binder/isContactsSupportedForSession.js +1 -1
- package/lib/esm/internal/app-binder/isContactsSupportedForSession.js.map +3 -3
- package/lib/esm/internal/app-binder/isContactsSupportedForSession.test.js +1 -1
- package/lib/esm/internal/app-binder/isContactsSupportedForSession.test.js.map +3 -3
- package/lib/esm/internal/app-binder/model/contactsConstants.js +2 -0
- package/lib/esm/internal/app-binder/model/contactsConstants.js.map +7 -0
- package/lib/esm/internal/app-binder/model/contactsErrors.js +2 -0
- package/lib/esm/internal/app-binder/model/contactsErrors.js.map +7 -0
- package/lib/esm/internal/app-binder/model/contactsValidation.js +2 -0
- package/lib/esm/internal/app-binder/model/contactsValidation.js.map +7 -0
- package/lib/esm/internal/app-binder/model/contactsValidation.test.js +2 -0
- package/lib/esm/internal/app-binder/model/contactsValidation.test.js.map +7 -0
- package/lib/esm/internal/app-binder/services/contactsTlvSerializer.js +2 -0
- package/lib/esm/internal/app-binder/services/contactsTlvSerializer.js.map +7 -0
- package/lib/esm/internal/app-binder/services/contactsTlvSerializer.test.js +2 -0
- package/lib/esm/internal/app-binder/services/contactsTlvSerializer.test.js.map +7 -0
- package/lib/esm/internal/app-binder/services/sendFramedContactsPayload.js +2 -0
- package/lib/esm/internal/app-binder/services/sendFramedContactsPayload.js.map +7 -0
- package/lib/esm/internal/app-binder/services/sendFramedContactsPayload.test.js +2 -0
- package/lib/esm/internal/app-binder/services/sendFramedContactsPayload.test.js.map +7 -0
- package/lib/esm/internal/app-binder/task/SendRegisterIdentityTask.js +2 -0
- package/lib/esm/internal/app-binder/task/SendRegisterIdentityTask.js.map +7 -0
- package/lib/esm/internal/app-binder/task/SendRegisterIdentityTask.test.js +2 -0
- package/lib/esm/internal/app-binder/task/SendRegisterIdentityTask.test.js.map +7 -0
- package/lib/esm/internal/di.js +1 -1
- package/lib/esm/internal/di.js.map +3 -3
- package/lib/esm/internal/di.test.js +1 -1
- package/lib/esm/internal/di.test.js.map +3 -3
- package/lib/esm/internal/use-cases/RegisterExternalAddressUseCase.js +2 -0
- package/lib/esm/internal/use-cases/RegisterExternalAddressUseCase.js.map +7 -0
- package/lib/esm/internal/use-cases/RegisterExternalAddressUseCase.test.js +2 -0
- package/lib/esm/internal/use-cases/RegisterExternalAddressUseCase.test.js.map +7 -0
- package/lib/esm/internal/use-cases/di/useCaseModule.js +2 -0
- package/lib/esm/internal/use-cases/di/useCaseModule.js.map +7 -0
- package/lib/esm/internal/use-cases/di/useCaseTypes.js +2 -0
- package/lib/esm/internal/use-cases/di/useCaseTypes.js.map +7 -0
- package/lib/esm/package.json +2 -1
- package/lib/types/api/ContactsManager.d.ts +11 -5
- package/lib/types/api/ContactsManager.d.ts.map +1 -1
- package/lib/types/api/app-binder/RegisterExternalAddressDeviceActionTypes.d.ts +30 -0
- package/lib/types/api/app-binder/RegisterExternalAddressDeviceActionTypes.d.ts.map +1 -0
- package/lib/types/api/index.d.ts +2 -0
- package/lib/types/api/index.d.ts.map +1 -1
- package/lib/types/api/model/RegisterExternalAddress.d.ts +50 -0
- package/lib/types/api/model/RegisterExternalAddress.d.ts.map +1 -0
- package/lib/types/internal/DefaultContactsManager.d.ts +5 -2
- package/lib/types/internal/DefaultContactsManager.d.ts.map +1 -1
- package/lib/types/internal/DefaultContactsManager.test.d.ts +2 -0
- package/lib/types/internal/DefaultContactsManager.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/ContactsAppBinder.d.ts +4 -3
- package/lib/types/internal/app-binder/ContactsAppBinder.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/RegisterIdentityCommand.d.ts +30 -0
- package/lib/types/internal/app-binder/command/RegisterIdentityCommand.d.ts.map +1 -0
- package/lib/types/internal/app-binder/command/RegisterIdentityCommand.test.d.ts +2 -0
- package/lib/types/internal/app-binder/command/RegisterIdentityCommand.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/device-action/RegisterExternalAddress/RegisterExternalAddressDeviceAction.d.ts +14 -0
- package/lib/types/internal/app-binder/device-action/RegisterExternalAddress/RegisterExternalAddressDeviceAction.d.ts.map +1 -0
- package/lib/types/internal/app-binder/device-action/RegisterExternalAddress/RegisterExternalAddressDeviceAction.test.d.ts +2 -0
- package/lib/types/internal/app-binder/device-action/RegisterExternalAddress/RegisterExternalAddressDeviceAction.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/device-action/RegisterExternalAddress/validateRegisterExternalAddressInput.d.ts +12 -0
- package/lib/types/internal/app-binder/device-action/RegisterExternalAddress/validateRegisterExternalAddressInput.d.ts.map +1 -0
- package/lib/types/internal/app-binder/device-action/RegisterExternalAddress/validateRegisterExternalAddressInput.test.d.ts +2 -0
- package/lib/types/internal/app-binder/device-action/RegisterExternalAddress/validateRegisterExternalAddressInput.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts +4 -0
- package/lib/types/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts.map +1 -0
- package/lib/types/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts +2 -0
- package/lib/types/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts.map +1 -0
- package/lib/types/internal/app-binder/device-action/__test-utils__/setupWaitForAppAndVersionDAMock.d.ts +17 -0
- package/lib/types/internal/app-binder/device-action/__test-utils__/setupWaitForAppAndVersionDAMock.d.ts.map +1 -0
- package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts +15 -0
- package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts.map +1 -0
- package/lib/types/internal/app-binder/isContactsSupportedForSession.d.ts +16 -8
- package/lib/types/internal/app-binder/isContactsSupportedForSession.d.ts.map +1 -1
- package/lib/types/internal/app-binder/model/contactsConstants.d.ts +24 -0
- package/lib/types/internal/app-binder/model/contactsConstants.d.ts.map +1 -0
- package/lib/types/internal/app-binder/model/contactsErrors.d.ts +30 -0
- package/lib/types/internal/app-binder/model/contactsErrors.d.ts.map +1 -0
- package/lib/types/internal/app-binder/model/contactsValidation.d.ts +53 -0
- package/lib/types/internal/app-binder/model/contactsValidation.d.ts.map +1 -0
- package/lib/types/internal/app-binder/model/contactsValidation.test.d.ts +2 -0
- package/lib/types/internal/app-binder/model/contactsValidation.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/services/contactsTlvSerializer.d.ts +33 -0
- package/lib/types/internal/app-binder/services/contactsTlvSerializer.d.ts.map +1 -0
- package/lib/types/internal/app-binder/services/contactsTlvSerializer.test.d.ts +2 -0
- package/lib/types/internal/app-binder/services/contactsTlvSerializer.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/services/sendFramedContactsPayload.d.ts +14 -0
- package/lib/types/internal/app-binder/services/sendFramedContactsPayload.d.ts.map +1 -0
- package/lib/types/internal/app-binder/services/sendFramedContactsPayload.test.d.ts +2 -0
- package/lib/types/internal/app-binder/services/sendFramedContactsPayload.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/SendRegisterIdentityTask.d.ts +25 -0
- package/lib/types/internal/app-binder/task/SendRegisterIdentityTask.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/SendRegisterIdentityTask.test.d.ts +2 -0
- package/lib/types/internal/app-binder/task/SendRegisterIdentityTask.test.d.ts.map +1 -0
- package/lib/types/internal/di.d.ts.map +1 -1
- package/lib/types/internal/use-cases/RegisterExternalAddressUseCase.d.ts +17 -0
- package/lib/types/internal/use-cases/RegisterExternalAddressUseCase.d.ts.map +1 -0
- package/lib/types/internal/use-cases/RegisterExternalAddressUseCase.test.d.ts +2 -0
- package/lib/types/internal/use-cases/RegisterExternalAddressUseCase.test.d.ts.map +1 -0
- package/lib/types/internal/use-cases/di/useCaseModule.d.ts +3 -0
- package/lib/types/internal/use-cases/di/useCaseModule.d.ts.map +1 -0
- package/lib/types/internal/use-cases/di/useCaseTypes.d.ts +4 -0
- package/lib/types/internal/use-cases/di/useCaseTypes.d.ts.map +1 -0
- package/lib/types/tsconfig.prod.tsbuildinfo +1 -1
- package/package.json +8 -7
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { type DeviceManagementKit, type DeviceSessionId } from "@ledgerhq/device-management-kit";
|
|
2
2
|
import { type Container } from "inversify";
|
|
3
|
+
import { type RegisterExternalAddressDAReturnType } from "../api/app-binder/RegisterExternalAddressDeviceActionTypes";
|
|
3
4
|
import { type ContactsManager } from "../api/ContactsManager";
|
|
5
|
+
import { type RegisterExternalAddressInput } from "../api/model/RegisterExternalAddress";
|
|
4
6
|
type DefaultContactsManagerConstructorArgs = {
|
|
5
7
|
dmk: DeviceManagementKit;
|
|
6
8
|
sessionId: DeviceSessionId;
|
|
@@ -9,9 +11,10 @@ type DefaultContactsManagerConstructorArgs = {
|
|
|
9
11
|
export declare class DefaultContactsManager implements ContactsManager {
|
|
10
12
|
private readonly _container;
|
|
11
13
|
constructor({ dmk, sessionId, appName, }: DefaultContactsManagerConstructorArgs);
|
|
14
|
+
registerExternalAddress(input: RegisterExternalAddressInput): RegisterExternalAddressDAReturnType;
|
|
12
15
|
/**
|
|
13
|
-
* Exposes the DI container so operation methods
|
|
14
|
-
*
|
|
16
|
+
* Exposes the DI container so future operation methods can resolve their
|
|
17
|
+
* `UseCase`. Not part of the public API.
|
|
15
18
|
*/
|
|
16
19
|
protected get container(): Container;
|
|
17
20
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultContactsManager.d.ts","sourceRoot":"","sources":["../../../src/internal/DefaultContactsManager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"DefaultContactsManager.d.ts","sourceRoot":"","sources":["../../../src/internal/DefaultContactsManager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,KAAK,mCAAmC,EAAE,MAAM,0DAA0D,CAAC;AACpH,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAKvF,KAAK,qCAAqC,GAAG;IAC3C,GAAG,EAAE,mBAAmB,CAAC;IACzB,SAAS,EAAE,eAAe,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,qBAAa,sBAAuB,YAAW,eAAe;IAC5D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;gBAE3B,EACV,GAAG,EACH,SAAS,EACT,OAAO,GACR,EAAE,qCAAqC;IAIxC,uBAAuB,CACrB,KAAK,EAAE,4BAA4B,GAClC,mCAAmC;IAQtC;;;OAGG;IACH,SAAS,KAAK,SAAS,IAAI,SAAS,CAEnC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultContactsManager.test.d.ts","sourceRoot":"","sources":["../../../src/internal/DefaultContactsManager.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { type DeviceManagementKit, type DeviceSessionId } from "@ledgerhq/device-management-kit";
|
|
2
|
+
import { type RegisterExternalAddressDAReturnType } from "../../api/app-binder/RegisterExternalAddressDeviceActionTypes";
|
|
3
|
+
import { type RegisterExternalAddressInput } from "../../api/model/RegisterExternalAddress";
|
|
2
4
|
/**
|
|
3
5
|
* Constructs and executes Contacts `DeviceAction`s using the injected `dmk`,
|
|
4
|
-
* `sessionId`, and `appName`.
|
|
5
|
-
* management command) are added by their dedicated implementation tickets and
|
|
6
|
-
* consume these members.
|
|
6
|
+
* `sessionId`, and `appName`. Each Address Book operation gets one method here.
|
|
7
7
|
*/
|
|
8
8
|
export declare class ContactsAppBinder {
|
|
9
9
|
protected readonly dmk: DeviceManagementKit;
|
|
10
10
|
protected readonly sessionId: DeviceSessionId;
|
|
11
11
|
protected readonly appName: string;
|
|
12
12
|
constructor(dmk: DeviceManagementKit, sessionId: DeviceSessionId, appName: string);
|
|
13
|
+
registerExternalAddress(input: RegisterExternalAddressInput): RegisterExternalAddressDAReturnType;
|
|
13
14
|
}
|
|
14
15
|
//# sourceMappingURL=ContactsAppBinder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContactsAppBinder.d.ts","sourceRoot":"","sources":["../../../../src/internal/app-binder/ContactsAppBinder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"ContactsAppBinder.d.ts","sourceRoot":"","sources":["../../../../src/internal/app-binder/ContactsAppBinder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAAE,KAAK,mCAAmC,EAAE,MAAM,0DAA0D,CAAC;AACpH,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAIvF;;;GAGG;AACH,qBACa,iBAAiB;IAG1B,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,mBAAmB;IAE3C,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,eAAe;IAE7C,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM;gBAJf,GAAG,EAAE,mBAAmB,EAExB,SAAS,EAAE,eAAe,EAE1B,OAAO,EAAE,MAAM;IAGpC,uBAAuB,CACrB,KAAK,EAAE,4BAA4B,GAClC,mCAAmC;CAQvC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { type Apdu, type ApduResponse, type Command, type CommandResult } from "@ledgerhq/device-management-kit";
|
|
2
|
+
import { type ContactsErrorCodes } from "../../app-binder/model/contactsErrors";
|
|
3
|
+
export type RegisterIdentityCommandArgs = {
|
|
4
|
+
/** One framed chunk built by sendFramedContactsPayload. */
|
|
5
|
+
readonly data: Uint8Array;
|
|
6
|
+
/** 0x00 for the first/only chunk, 0x80 for continuation chunks. */
|
|
7
|
+
readonly p2: number;
|
|
8
|
+
};
|
|
9
|
+
export type RegisterIdentityCommandResponse = {
|
|
10
|
+
/**
|
|
11
|
+
* Present only on the final chunk — the device returns struct_type(0x2d) +
|
|
12
|
+
* group_handle(64) + hmac_proof(32) + hmac_rest(32) there. Intermediate
|
|
13
|
+
* chunks return SW=0x9000 with no data.
|
|
14
|
+
*
|
|
15
|
+
* `hmacProof` is the device's HMAC_PROOF (binds the contact name);
|
|
16
|
+
* `hmacRest` is the HMAC_REST (binds scope + identifier + family).
|
|
17
|
+
*/
|
|
18
|
+
readonly groupHandle?: Uint8Array;
|
|
19
|
+
readonly hmacProof?: Uint8Array;
|
|
20
|
+
readonly hmacRest?: Uint8Array;
|
|
21
|
+
};
|
|
22
|
+
export declare class RegisterIdentityCommand implements Command<RegisterIdentityCommandResponse, RegisterIdentityCommandArgs, ContactsErrorCodes> {
|
|
23
|
+
readonly name = "registerIdentity";
|
|
24
|
+
readonly args: RegisterIdentityCommandArgs;
|
|
25
|
+
private readonly errorHelper;
|
|
26
|
+
constructor(args: RegisterIdentityCommandArgs);
|
|
27
|
+
getApdu(): Apdu;
|
|
28
|
+
parseResponse(response: ApduResponse): CommandResult<RegisterIdentityCommandResponse, ContactsErrorCodes>;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=RegisterIdentityCommand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RegisterIdentityCommand.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/command/RegisterIdentityCommand.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,KAAK,IAAI,EAGT,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,aAAa,EAGnB,MAAM,iCAAiC,CAAC;AAYzC,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,2CAA2C,CAAC;AAEnD,MAAM,MAAM,2BAA2B,GAAG;IACxC,2DAA2D;IAC3D,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,mEAAmE;IACnE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG;IAC5C;;;;;;;OAOG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC;CAChC,CAAC;AAkBF,qBAAa,uBACX,YACE,OAAO,CACL,+BAA+B,EAC/B,2BAA2B,EAC3B,kBAAkB,CACnB;IAEH,QAAQ,CAAC,IAAI,sBAAsB;IACnC,QAAQ,CAAC,IAAI,EAAE,2BAA2B,CAAC;IAC3C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAGwB;gBAExC,IAAI,EAAE,2BAA2B;IAI7C,OAAO,IAAI,IAAI;IAWf,aAAa,CACX,QAAQ,EAAE,YAAY,GACrB,aAAa,CAAC,+BAA+B,EAAE,kBAAkB,CAAC;CAoDtE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RegisterIdentityCommand.test.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/command/RegisterIdentityCommand.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type DeviceActionStateMachine, type InternalApi, XStateDeviceAction } from "@ledgerhq/device-management-kit";
|
|
2
|
+
import { type RegisterExternalAddressDAError, type RegisterExternalAddressDAInput, type RegisterExternalAddressDAIntermediateValue, type RegisterExternalAddressDAInternalState, type RegisterExternalAddressDAOutput } from "../../../../api/app-binder/RegisterExternalAddressDeviceActionTypes";
|
|
3
|
+
import { type RunningApp } from "../../../app-binder/isContactsSupportedForSession";
|
|
4
|
+
import { type RegisterIdentityProofs, SendRegisterIdentityTask } from "../../../app-binder/task/SendRegisterIdentityTask";
|
|
5
|
+
export type RegisterExternalAddressMachineDependencies = {
|
|
6
|
+
readonly isSupported: (app: RunningApp) => boolean;
|
|
7
|
+
readonly registerIdentity: (input: RegisterExternalAddressDAInput) => Promise<Awaited<ReturnType<SendRegisterIdentityTask["run"]>>>;
|
|
8
|
+
};
|
|
9
|
+
export declare class RegisterExternalAddressDeviceAction extends XStateDeviceAction<RegisterExternalAddressDAOutput, RegisterExternalAddressDAInput, RegisterExternalAddressDAError, RegisterExternalAddressDAIntermediateValue, RegisterExternalAddressDAInternalState> {
|
|
10
|
+
makeStateMachine(internalApi: InternalApi): DeviceActionStateMachine<RegisterExternalAddressDAOutput, RegisterExternalAddressDAInput, RegisterExternalAddressDAError, RegisterExternalAddressDAIntermediateValue, RegisterExternalAddressDAInternalState>;
|
|
11
|
+
extractDependencies(internalApi: InternalApi): RegisterExternalAddressMachineDependencies;
|
|
12
|
+
}
|
|
13
|
+
export type { RegisterIdentityProofs };
|
|
14
|
+
//# sourceMappingURL=RegisterExternalAddressDeviceAction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RegisterExternalAddressDeviceAction.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/app-binder/device-action/RegisterExternalAddress/RegisterExternalAddressDeviceAction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,WAAW,EAOhB,kBAAkB,EACnB,MAAM,iCAAiC,CAAC;AAIzC,OAAO,EACL,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EACnC,KAAK,0CAA0C,EAC/C,KAAK,sCAAsC,EAC3C,KAAK,+BAA+B,EACrC,MAAM,0DAA0D,CAAC;AAClE,OAAO,EAEL,KAAK,UAAU,EAChB,MAAM,oDAAoD,CAAC;AAE5D,OAAO,EACL,KAAK,sBAAsB,EAC3B,wBAAwB,EACzB,MAAM,oDAAoD,CAAC;AAI5D,MAAM,MAAM,0CAA0C,GAAG;IACvD,QAAQ,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,OAAO,CAAC;IACnD,QAAQ,CAAC,gBAAgB,EAAE,CACzB,KAAK,EAAE,8BAA8B,KAClC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;CACpE,CAAC;AAEF,qBAAa,mCAAoC,SAAQ,kBAAkB,CACzE,+BAA+B,EAC/B,8BAA8B,EAC9B,8BAA8B,EAC9B,0CAA0C,EAC1C,sCAAsC,CACvC;IACC,gBAAgB,CACd,WAAW,EAAE,WAAW,GACvB,wBAAwB,CACzB,+BAA+B,EAC/B,8BAA8B,EAC9B,8BAA8B,EAC9B,0CAA0C,EAC1C,sCAAsC,CACvC;IAwPD,mBAAmB,CACjB,WAAW,EAAE,WAAW,GACvB,0CAA0C;CAkB9C;AAED,YAAY,EAAE,sBAAsB,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RegisterExternalAddressDeviceAction.test.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/app-binder/device-action/RegisterExternalAddress/RegisterExternalAddressDeviceAction.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type RegisterExternalAddressInput } from "../../../../api/model/RegisterExternalAddress";
|
|
2
|
+
import { ContactsValidationError } from "../../../app-binder/model/contactsValidation";
|
|
3
|
+
/**
|
|
4
|
+
* Validate the caller input for Register External Address. Returns the first
|
|
5
|
+
* `ContactsValidationError` found, or `null` when the input is valid.
|
|
6
|
+
*
|
|
7
|
+
* Non-throwing by design: the device action calls this so an invalid input is
|
|
8
|
+
* surfaced as a typed terminal error state on the observable, keeping the
|
|
9
|
+
* public `ContactsManager.registerExternalAddress` free of synchronous throws.
|
|
10
|
+
*/
|
|
11
|
+
export declare function validateRegisterExternalAddressInput(input: RegisterExternalAddressInput): ContactsValidationError | null;
|
|
12
|
+
//# sourceMappingURL=validateRegisterExternalAddressInput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateRegisterExternalAddressInput.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/app-binder/device-action/RegisterExternalAddress/validateRegisterExternalAddressInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAEvF,OAAO,EAEL,uBAAuB,EAQxB,MAAM,+CAA+C,CAAC;AAEvD;;;;;;;GAOG;AACH,wBAAgB,oCAAoC,CAClD,KAAK,EAAE,4BAA4B,GAClC,uBAAuB,GAAG,IAAI,CAuDhC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateRegisterExternalAddressInput.test.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/app-binder/device-action/RegisterExternalAddress/validateRegisterExternalAddressInput.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"makeInternalApi.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/app-binder/device-action/__test-utils__/makeInternalApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,wBAAgB,+BAA+B,IAAI,MAAM,CAAC,WAAW,CAAC,CAkBrE"}
|
package/lib/types/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setupOpenAppDAMock.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,kBAAkB,GAAI,QAAQ,OAAO,SAwBjD,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { UserInteractionRequired } from "@ledgerhq/device-management-kit";
|
|
2
|
+
/**
|
|
3
|
+
* Mock WaitForAppAndVersionDeviceAction to resolve immediately with either a
|
|
4
|
+
* fresh `{ name, version }` (default) or an error.
|
|
5
|
+
*
|
|
6
|
+
* The mock machine carries an `intermediateValue` in its context (matching the
|
|
7
|
+
* real DA) so the parent's onSnapshot propagation has a defined value to read.
|
|
8
|
+
* Pass `requiredUserInteraction` to have the child emit an interaction (e.g.
|
|
9
|
+
* UnlockDevice for a locked device) before completing.
|
|
10
|
+
*/
|
|
11
|
+
export declare const setupWaitForAppAndVersionDAMock: (result?: {
|
|
12
|
+
name: string;
|
|
13
|
+
version: string;
|
|
14
|
+
} | {
|
|
15
|
+
error: unknown;
|
|
16
|
+
}, requiredUserInteraction?: UserInteractionRequired) => void;
|
|
17
|
+
//# sourceMappingURL=setupWaitForAppAndVersionDAMock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setupWaitForAppAndVersionDAMock.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/app-binder/device-action/__test-utils__/setupWaitForAppAndVersionDAMock.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EAExB,MAAM,iCAAiC,CAAC;AAKzC;;;;;;;;GAQG;AACH,eAAO,MAAM,+BAA+B,GAC1C,SAAQ;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,OAAO,CAAA;CAG3D,EACD,0BAAyB,uBAAsD,SAuBhF,CAAC"}
|
package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type DeviceAction, type DeviceActionIntermediateValue, type DeviceActionState, type DmkError, type InternalApi } from "@ledgerhq/device-management-kit";
|
|
2
|
+
/**
|
|
3
|
+
* Test that the states emitted by a device action match the expected states.
|
|
4
|
+
* @param deviceAction The device action to test.
|
|
5
|
+
* @param expectedStates The expected states.
|
|
6
|
+
* @param callbacks { onDone, onError } The callbacks to call when the test is done or an error occurs.
|
|
7
|
+
*/
|
|
8
|
+
export declare function testDeviceActionStates<Output, Input, Error extends DmkError, IntermediateValue extends DeviceActionIntermediateValue>(deviceAction: DeviceAction<Output, Input, Error, IntermediateValue>, expectedStates: Array<DeviceActionState<Output, Error, IntermediateValue>>, internalApi: InternalApi, { onDone, onError, }: {
|
|
9
|
+
onDone: () => void;
|
|
10
|
+
onError: (error: Error) => void;
|
|
11
|
+
}): {
|
|
12
|
+
observable: import("rxjs").Observable<DeviceActionState<Output, Error, IntermediateValue>>;
|
|
13
|
+
cancel: () => void;
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=testDeviceActionStates.d.ts.map
|
package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testDeviceActionStates.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,6BAA6B,EAClC,KAAK,iBAAiB,EACtB,KAAK,QAAQ,EACb,KAAK,WAAW,EACjB,MAAM,iCAAiC,CAAC;AAEzC;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EACN,KAAK,EACL,KAAK,SAAS,QAAQ,EACtB,iBAAiB,SAAS,6BAA6B,EAEvD,YAAY,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,CAAC,EACnE,cAAc,EAAE,KAAK,CAAC,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC,EAC1E,WAAW,EAAE,WAAW,EACxB,EACE,MAAM,EACN,OAAO,GACR,EAAE;IACD,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACjC;;;EAwBF"}
|
|
@@ -1,17 +1,25 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type InternalApi } from "@ledgerhq/device-management-kit";
|
|
2
|
+
/** The running app's identity, read freshly from the device. */
|
|
3
|
+
export type RunningApp = {
|
|
4
|
+
readonly name: string;
|
|
5
|
+
readonly version: string;
|
|
6
|
+
};
|
|
2
7
|
/**
|
|
3
8
|
* Session-aware Contacts support check, for internal consumption by Contacts
|
|
4
|
-
* `DeviceAction`s.
|
|
5
|
-
*
|
|
9
|
+
* `DeviceAction`s. Resolves the given running app against the static
|
|
10
|
+
* requirements table:
|
|
6
11
|
* - the device model must be supported;
|
|
7
|
-
* - the running app must be known to Contacts and meet its minimum version
|
|
8
|
-
* validated with DMK's {@link ApplicationChecker} so the version comes from
|
|
9
|
-
* the authoritative `GetAppConfiguration` result;
|
|
12
|
+
* - the running app must be known to Contacts and meet its minimum version;
|
|
10
13
|
* - the device OS must meet its minimum version (a dimension `ApplicationChecker`
|
|
11
14
|
* does not cover, so it is checked separately here).
|
|
12
15
|
*
|
|
16
|
+
* The app `name` and `version` are supplied by the caller so they can come from
|
|
17
|
+
* a fresh `WaitForAppAndVersion` result rather than the (potentially stale)
|
|
18
|
+
* device session state; the model and OS come from the session state, which
|
|
19
|
+
* does not change under the caller's feet the way the running app can.
|
|
20
|
+
*
|
|
13
21
|
* @param internalApi - the DeviceAction's internal API for the current session.
|
|
14
|
-
* @param
|
|
22
|
+
* @param app - the running app's fresh name and version.
|
|
15
23
|
*/
|
|
16
|
-
export declare function isContactsSupportedForSession(internalApi: InternalApi,
|
|
24
|
+
export declare function isContactsSupportedForSession(internalApi: InternalApi, app: RunningApp): boolean;
|
|
17
25
|
//# sourceMappingURL=isContactsSupportedForSession.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isContactsSupportedForSession.d.ts","sourceRoot":"","sources":["../../../../src/internal/app-binder/isContactsSupportedForSession.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"isContactsSupportedForSession.d.ts","sourceRoot":"","sources":["../../../../src/internal/app-binder/isContactsSupportedForSession.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,WAAW,EACjB,MAAM,iCAAiC,CAAC;AASzC,gEAAgE;AAChE,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,WAAW,EACxB,GAAG,EAAE,UAAU,GACd,OAAO,CA0BT"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Protocol constants shared by the Contacts (Address Book) operations.
|
|
3
|
+
*
|
|
4
|
+
* Wire format and values follow the BOLOS SDK Address Book specification
|
|
5
|
+
* (ledger-secure-sdk/app_features/address_book). Op-specific sub-command bytes
|
|
6
|
+
* and response field sizes live here; TLV tags and struct-type bytes live in
|
|
7
|
+
* {@link ./../services/contactsTlvSerializer}.
|
|
8
|
+
*/
|
|
9
|
+
/** APDU class/instruction shared by every Address Book sub-command. */
|
|
10
|
+
export declare const CONTACTS_APDU_CLA = 176;
|
|
11
|
+
export declare const CONTACTS_APDU_INS = 16;
|
|
12
|
+
/** P1 sub-command selector for REGISTER IDENTITY (register external address). */
|
|
13
|
+
export declare const SUB_CMD_REGISTER_IDENTITY = 1;
|
|
14
|
+
/** Sizes (bytes) of the fields in the REGISTER IDENTITY final-chunk response. */
|
|
15
|
+
export declare const GROUP_HANDLE_BYTES = 64;
|
|
16
|
+
export declare const HMAC_PROOF_BYTES = 32;
|
|
17
|
+
export declare const HMAC_REST_BYTES = 32;
|
|
18
|
+
/**
|
|
19
|
+
* Blockchain-family byte encoded in the `BLOCKCHAIN_FAMILY` TLV, keyed by a
|
|
20
|
+
* lowercase family name. v1 ships Ethereum only; the remaining families are
|
|
21
|
+
* listed for completeness and will be enabled as their chains are supported.
|
|
22
|
+
*/
|
|
23
|
+
export declare const BLOCKCHAIN_FAMILY_BY_NAME: Readonly<Record<string, number>>;
|
|
24
|
+
//# sourceMappingURL=contactsConstants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contactsConstants.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/model/contactsConstants.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,uEAAuE;AACvE,eAAO,MAAM,iBAAiB,MAAO,CAAC;AACtC,eAAO,MAAM,iBAAiB,KAAO,CAAC;AAEtC,iFAAiF;AACjF,eAAO,MAAM,yBAAyB,IAAO,CAAC;AAE9C,iFAAiF;AACjF,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOtE,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { type CommandErrorArgs, type CommandErrors, DeviceExchangeError, type DmkError } from "@ledgerhq/device-management-kit";
|
|
2
|
+
/**
|
|
3
|
+
* Status word returned by the app's Address Book *edit* operations when the
|
|
4
|
+
* seed-bound HMAC / group-handle verification fails — i.e. the entry was
|
|
5
|
+
* registered with a different seed than the one currently on the device.
|
|
6
|
+
*
|
|
7
|
+
* The device runs this check *before* showing any UI and returns 0x6982 *only*
|
|
8
|
+
* for seed-binding failures (user rejection and TLV errors return 0x6a80,
|
|
9
|
+
* address validation returns 0x6af0), so 0x6982 is an unambiguous "wrong seed"
|
|
10
|
+
* signal that consumers (e.g. Ledger Wallet) can catch to guide the user.
|
|
11
|
+
*/
|
|
12
|
+
export declare const CONTACT_SEED_MISMATCH_ERROR_CODE: "6982";
|
|
13
|
+
export type ContactsErrorCodes = "6982" | "6800" | "6983" | "6984" | "6985" | "6a80" | "6a84" | "6a88" | "6af0" | "6b00" | "6f00";
|
|
14
|
+
export declare const CONTACTS_APP_ERRORS: CommandErrors<ContactsErrorCodes>;
|
|
15
|
+
export declare class ContactsCommandError extends DeviceExchangeError<ContactsErrorCodes> {
|
|
16
|
+
constructor(args: CommandErrorArgs<ContactsErrorCodes>);
|
|
17
|
+
}
|
|
18
|
+
export declare const contactsCommandErrorFactory: (args: CommandErrorArgs<ContactsErrorCodes>) => ContactsCommandError;
|
|
19
|
+
/**
|
|
20
|
+
* Raised by a Contacts `DeviceAction` when the connected device model, app
|
|
21
|
+
* version, or OS version does not meet the Contacts requirements — i.e. the
|
|
22
|
+
* DSDK-1376 support check fails before any APDU is sent.
|
|
23
|
+
*/
|
|
24
|
+
export declare class ContactsVersionRequirementError implements DmkError {
|
|
25
|
+
readonly message: string;
|
|
26
|
+
readonly _tag = "ContactsVersionRequirementError";
|
|
27
|
+
readonly originalError?: unknown;
|
|
28
|
+
constructor(message?: string);
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=contactsErrors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contactsErrors.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/model/contactsErrors.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,mBAAmB,EACnB,KAAK,QAAQ,EACd,MAAM,iCAAiC,CAAC;AAEzC;;;;;;;;;GASG;AACH,eAAO,MAAM,gCAAgC,EAAG,MAAe,CAAC;AAEhE,MAAM,MAAM,kBAAkB,GAC1B,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,CAAC;AAEX,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAAC,kBAAkB,CAkBjE,CAAC;AAEF,qBAAa,oBAAqB,SAAQ,mBAAmB,CAAC,kBAAkB,CAAC;gBACnE,IAAI,EAAE,gBAAgB,CAAC,kBAAkB,CAAC;CAGvD;AAED,eAAO,MAAM,2BAA2B,GACtC,MAAM,gBAAgB,CAAC,kBAAkB,CAAC,yBACT,CAAC;AAEpC;;;;GAIG;AACH,qBAAa,+BAAgC,YAAW,QAAQ;IAI5D,QAAQ,CAAC,OAAO;IAHlB,QAAQ,CAAC,IAAI,qCAAqC;IAClD,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;gBAEtB,OAAO,SAAiF;CAEpG"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pre-APDU input validators for the Contacts operations.
|
|
3
|
+
*
|
|
4
|
+
* Buffer-length constants mirror the Ledger secure SDK `#define` values
|
|
5
|
+
* *including* the trailing NUL terminator (so a 32-printable-char name lives in
|
|
6
|
+
* a 33-byte buffer). Validators subtract 1 internally so the constants remain
|
|
7
|
+
* pure equality checks against the upstream `#define`s. The byte-level
|
|
8
|
+
* `0x20..0x7E` printable check exactly matches firmware `is_printable_string`.
|
|
9
|
+
*/
|
|
10
|
+
import { type DmkError } from "@ledgerhq/device-management-kit";
|
|
11
|
+
export declare const CONTACT_NAME_BUFFER_LENGTH = 33;
|
|
12
|
+
export declare const SCOPE_BUFFER_LENGTH = 33;
|
|
13
|
+
export declare const GROUP_HANDLE_SIZE = 64;
|
|
14
|
+
export declare const HMAC_PROOF_LENGTH = 32;
|
|
15
|
+
export declare const MAX_BIP32_DEPTH = 10;
|
|
16
|
+
export declare const ETH_ADDRESS_BYTES = 20;
|
|
17
|
+
/**
|
|
18
|
+
* Raised when caller input fails a pre-APDU check. Implements `DmkError` (and
|
|
19
|
+
* stays an `Error` subclass) so a Contacts device action can surface it as a
|
|
20
|
+
* typed terminal error state on the observable rather than throwing out of the
|
|
21
|
+
* public, device-action-returning API.
|
|
22
|
+
*/
|
|
23
|
+
export declare class ContactsValidationError extends Error implements DmkError {
|
|
24
|
+
readonly _tag = "ContactsValidationError";
|
|
25
|
+
readonly originalError?: unknown;
|
|
26
|
+
constructor(message: string);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Mirror of firmware `is_printable_string` + length cap. `bufferLength` is the
|
|
30
|
+
* firmware's fixed buffer size *including* the trailing NUL, so the maximum
|
|
31
|
+
* payload byte length is `bufferLength - 1`.
|
|
32
|
+
*/
|
|
33
|
+
export declare function validatePrintableLabel(value: string, options: {
|
|
34
|
+
field: string;
|
|
35
|
+
bufferLength: number;
|
|
36
|
+
}): void;
|
|
37
|
+
/** Assert a byte buffer is exactly `expectedBytes` long and non-empty. */
|
|
38
|
+
export declare function validateByteLength(value: Uint8Array, options: {
|
|
39
|
+
field: string;
|
|
40
|
+
expectedBytes: number;
|
|
41
|
+
}): void;
|
|
42
|
+
/**
|
|
43
|
+
* Sanity-check a BIP32 path before serialization. Firmware enforces depth <=
|
|
44
|
+
* MAX_BIP32_DEPTH and rejects malformed segments. Accepts `m/44'/60'/0'/0/0`
|
|
45
|
+
* style; segments may end in `'` (hardened).
|
|
46
|
+
*/
|
|
47
|
+
export declare function validateDerivationPath(path: string): void;
|
|
48
|
+
/**
|
|
49
|
+
* Firmware encodes chain_id as uint64. JS `number` is fine up to 2^53; accept
|
|
50
|
+
* `bigint` for the high range so callers don't silently truncate.
|
|
51
|
+
*/
|
|
52
|
+
export declare function validateChainId(value: number | bigint): void;
|
|
53
|
+
//# sourceMappingURL=contactsValidation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contactsValidation.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/model/contactsValidation.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAKhE,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,eAAO,MAAM,mBAAmB,KAAK,CAAC;AACtC,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAIpC;;;;;GAKG;AACH,qBAAa,uBAAwB,SAAQ,KAAM,YAAW,QAAQ;IACpE,QAAQ,CAAC,IAAI,6BAA6B;IAC1C,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;gBACrB,OAAO,EAAE,MAAM;CAI5B;AASD;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAC/C,IAAI,CAqCN;AAID,0EAA0E;AAC1E,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,GAChD,IAAI,CAON;AAID;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAoCzD;AAID;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAyB5D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contactsValidation.test.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/model/contactsValidation.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { ByteArrayBuilder } from "@ledgerhq/device-management-kit";
|
|
2
|
+
export declare const CONTACTS_TLV_TAG: {
|
|
3
|
+
readonly STRUCT_TYPE: 1;
|
|
4
|
+
readonly STRUCT_VERSION: 2;
|
|
5
|
+
readonly DERIVATION_PATH: 105;
|
|
6
|
+
readonly CHAIN_ID: 35;
|
|
7
|
+
readonly HMAC_PROOF: 41;
|
|
8
|
+
readonly BLOCKCHAIN_FAMILY: 81;
|
|
9
|
+
readonly CONTACT_NAME: 240;
|
|
10
|
+
readonly SCOPE: 241;
|
|
11
|
+
readonly ACCOUNT_IDENTIFIER: 242;
|
|
12
|
+
readonly PREVIOUS_CONTACT_NAME: 243;
|
|
13
|
+
readonly PREVIOUS_IDENTIFIER: 244;
|
|
14
|
+
readonly PREVIOUS_SCOPE: 245;
|
|
15
|
+
readonly GROUP_HANDLE: 246;
|
|
16
|
+
readonly HMAC_REST: 247;
|
|
17
|
+
};
|
|
18
|
+
export declare const STRUCT_TYPE_REGISTER_IDENTITY = 45;
|
|
19
|
+
export declare const STRUCT_TYPE_EDIT_CONTACT_NAME = 46;
|
|
20
|
+
export declare const STRUCT_TYPE_REGISTER_LEDGER_ACCOUNT = 47;
|
|
21
|
+
export declare const STRUCT_TYPE_EDIT_LEDGER_ACCOUNT = 48;
|
|
22
|
+
export declare const STRUCT_TYPE_EDIT_IDENTIFIER = 49;
|
|
23
|
+
export declare const STRUCT_TYPE_EDIT_SCOPE = 50;
|
|
24
|
+
export declare const STRUCT_TYPE_PROVIDE_CONTACT = 51;
|
|
25
|
+
export declare const STRUCT_TYPE_PROVIDE_LEDGER_ACCOUNT_CONTACT = 52;
|
|
26
|
+
export declare const STRUCT_VERSION_VALUE = 1;
|
|
27
|
+
export declare function encodeTlvUInt8(builder: ByteArrayBuilder, tag: number, value: number): void;
|
|
28
|
+
export declare function encodeTlvAscii(builder: ByteArrayBuilder, tag: number, value: string): void;
|
|
29
|
+
export declare function encodeTlvBuffer(builder: ByteArrayBuilder, tag: number, value: Uint8Array): void;
|
|
30
|
+
export declare function encodeTlvChainId(builder: ByteArrayBuilder, tag: number, chainId: number | bigint): void;
|
|
31
|
+
/** Pack BIP32 segments as `count(1) || segment(4 BE)*count`. */
|
|
32
|
+
export declare function packDerivationPath(segments: number[]): Uint8Array;
|
|
33
|
+
//# sourceMappingURL=contactsTlvSerializer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contactsTlvSerializer.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/services/contactsTlvSerializer.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAInE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;CAkBnB,CAAC;AAEX,eAAO,MAAM,6BAA6B,KAAO,CAAC;AAClD,eAAO,MAAM,6BAA6B,KAAO,CAAC;AAClD,eAAO,MAAM,mCAAmC,KAAO,CAAC;AACxD,eAAO,MAAM,+BAA+B,KAAO,CAAC;AACpD,eAAO,MAAM,2BAA2B,KAAO,CAAC;AAChD,eAAO,MAAM,sBAAsB,KAAO,CAAC;AAC3C,eAAO,MAAM,2BAA2B,KAAO,CAAC;AAChD,eAAO,MAAM,0CAA0C,KAAO,CAAC;AAC/D,eAAO,MAAM,oBAAoB,IAAO,CAAC;AA4CzC,wBAAgB,cAAc,CAC5B,OAAO,EAAE,gBAAgB,EACzB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GACZ,IAAI,CAIN;AAED,wBAAgB,cAAc,CAC5B,OAAO,EAAE,gBAAgB,EACzB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GACZ,IAAI,CAKN;AAED,wBAAgB,eAAe,CAC7B,OAAO,EAAE,gBAAgB,EACzB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,UAAU,GAChB,IAAI,CAIN;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,gBAAgB,EACzB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,GAAG,MAAM,GACvB,IAAI,CAEN;AAED,gEAAgE;AAChE,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,UAAU,CAKjE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contactsTlvSerializer.test.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/services/contactsTlvSerializer.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type Command, type CommandResult, type InternalApi, type LoggerPublisherService } from "@ledgerhq/device-management-kit";
|
|
2
|
+
export type SendFramedContactsPayloadArgs<Response> = {
|
|
3
|
+
/** TLV payload bytes (without any header or length framing). */
|
|
4
|
+
readonly payload: Uint8Array;
|
|
5
|
+
/** Sub-command byte (e.g. 0x01 for REGISTER IDENTITY). */
|
|
6
|
+
readonly p1: number;
|
|
7
|
+
/** Per-chunk Command factory. The helper passes the chunk bytes and the P2 byte. */
|
|
8
|
+
readonly makeCommand: (chunk: Uint8Array, p2: number) => Command<Response, unknown, unknown>;
|
|
9
|
+
/** Optional per-chunk diagnostic logging (one `debug` entry per outgoing chunk). */
|
|
10
|
+
readonly logger?: LoggerPublisherService;
|
|
11
|
+
readonly commandTag?: string;
|
|
12
|
+
};
|
|
13
|
+
export declare function sendFramedContactsPayload<Response>(api: InternalApi, { payload, makeCommand, logger, commandTag, }: SendFramedContactsPayloadArgs<Response>): Promise<CommandResult<Response>>;
|
|
14
|
+
//# sourceMappingURL=sendFramedContactsPayload.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sendFramedContactsPayload.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/services/sendFramedContactsPayload.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,aAAa,EAClB,KAAK,WAAW,EAEhB,KAAK,sBAAsB,EAC5B,MAAM,iCAAiC,CAAC;AAMzC,MAAM,MAAM,6BAA6B,CAAC,QAAQ,IAAI;IACpD,gEAAgE;IAChE,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,oFAAoF;IACpF,QAAQ,CAAC,WAAW,EAAE,CACpB,KAAK,EAAE,UAAU,EACjB,EAAE,EAAE,MAAM,KACP,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACzC,oFAAoF;IACpF,QAAQ,CAAC,MAAM,CAAC,EAAE,sBAAsB,CAAC;IACzC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,wBAAsB,yBAAyB,CAAC,QAAQ,EACtD,GAAG,EAAE,WAAW,EAChB,EACE,OAAO,EACP,WAAW,EACX,MAAM,EACN,UAAU,GACX,EAAE,6BAA6B,CAAC,QAAQ,CAAC,GACzC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAiClC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sendFramedContactsPayload.test.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/services/sendFramedContactsPayload.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type CommandResult, type InternalApi, type LoggerPublisherService } from "@ledgerhq/device-management-kit";
|
|
2
|
+
import { type ExistingContactGroup } from "../../../api/model/RegisterExternalAddress";
|
|
3
|
+
import { type ContactsErrorCodes } from "../../app-binder/model/contactsErrors";
|
|
4
|
+
export type RegisterIdentityProofs = {
|
|
5
|
+
readonly groupHandle: Uint8Array;
|
|
6
|
+
readonly hmacProof: Uint8Array;
|
|
7
|
+
readonly hmacRest: Uint8Array;
|
|
8
|
+
};
|
|
9
|
+
export type SendRegisterIdentityTaskArgs = {
|
|
10
|
+
readonly contactName: string;
|
|
11
|
+
readonly scope: string;
|
|
12
|
+
readonly identifier: Uint8Array;
|
|
13
|
+
readonly blockchainFamily: string;
|
|
14
|
+
readonly chainId?: bigint;
|
|
15
|
+
readonly existingContactGroup?: ExistingContactGroup;
|
|
16
|
+
readonly logger?: LoggerPublisherService;
|
|
17
|
+
};
|
|
18
|
+
export declare class SendRegisterIdentityTask {
|
|
19
|
+
private readonly api;
|
|
20
|
+
private readonly args;
|
|
21
|
+
constructor(api: InternalApi, args: SendRegisterIdentityTaskArgs);
|
|
22
|
+
run(): Promise<CommandResult<RegisterIdentityProofs, ContactsErrorCodes>>;
|
|
23
|
+
private buildPayload;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=SendRegisterIdentityTask.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SendRegisterIdentityTask.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/task/SendRegisterIdentityTask.ts"],"names":[],"mappings":"AAaA,OAAO,EAEL,KAAK,aAAa,EAElB,KAAK,WAAW,EAGhB,KAAK,sBAAsB,EAC5B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAM/E,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAapF,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IACrD,QAAQ,CAAC,MAAM,CAAC,EAAE,sBAAsB,CAAC;CAC1C,CAAC;AAEF,qBAAa,wBAAwB;IAEjC,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBADJ,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,4BAA4B;IAG/C,GAAG,IAAI,OAAO,CAClB,aAAa,CAAC,sBAAsB,EAAE,kBAAkB,CAAC,CAC1D;IAkCD,OAAO,CAAC,YAAY;CAsDrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SendRegisterIdentityTask.test.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app-binder/task/SendRegisterIdentityTask.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"di.d.ts","sourceRoot":"","sources":["../../../src/internal/di.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"di.d.ts","sourceRoot":"","sources":["../../../src/internal/di.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAMtC,KAAK,kBAAkB,GAAG;IACxB,GAAG,EAAE,mBAAmB,CAAC;IACzB,SAAS,EAAE,eAAe,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,8BAI3B,kBAAkB,cAapB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type RegisterExternalAddressDAReturnType } from "../../api/app-binder/RegisterExternalAddressDeviceActionTypes";
|
|
2
|
+
import { type RegisterExternalAddressInput } from "../../api/model/RegisterExternalAddress";
|
|
3
|
+
import { ContactsAppBinder } from "../app-binder/ContactsAppBinder";
|
|
4
|
+
/**
|
|
5
|
+
* Delegates to `ContactsAppBinder`, which uses its injected `dmk`, `sessionId`,
|
|
6
|
+
* and `appName` to construct and execute the `RegisterExternalAddressDeviceAction`.
|
|
7
|
+
*
|
|
8
|
+
* Caller-input validation is intentionally NOT done here: the public API returns
|
|
9
|
+
* a device action, so validation lives inside the device action and surfaces as
|
|
10
|
+
* a typed terminal error state on the observable rather than a synchronous throw.
|
|
11
|
+
*/
|
|
12
|
+
export declare class RegisterExternalAddressUseCase {
|
|
13
|
+
private readonly appBinder;
|
|
14
|
+
constructor(appBinder: ContactsAppBinder);
|
|
15
|
+
execute(input: RegisterExternalAddressInput): RegisterExternalAddressDAReturnType;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=RegisterExternalAddressUseCase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RegisterExternalAddressUseCase.d.ts","sourceRoot":"","sources":["../../../../src/internal/use-cases/RegisterExternalAddressUseCase.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,mCAAmC,EAAE,MAAM,0DAA0D,CAAC;AACpH,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAG3E;;;;;;;GAOG;AACH,qBACa,8BAA8B;IAGvC,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,iBAAiB;IAG/C,OAAO,CACL,KAAK,EAAE,4BAA4B,GAClC,mCAAmC;CAGvC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RegisterExternalAddressUseCase.test.d.ts","sourceRoot":"","sources":["../../../../src/internal/use-cases/RegisterExternalAddressUseCase.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCaseModule.d.ts","sourceRoot":"","sources":["../../../../../src/internal/use-cases/di/useCaseModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAM5C,eAAO,MAAM,oBAAoB,uBAK7B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCaseTypes.d.ts","sourceRoot":"","sources":["../../../../../src/internal/use-cases/di/useCaseTypes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY;;CAEf,CAAC"}
|