@metamask-previews/wallet 17.0.0-preview-6ccf7a055 → 17.0.0-preview-b59bc5b6f

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 (28) hide show
  1. package/dist/initialization/instances/index.d.ts +3 -0
  2. package/dist/initialization/instances/index.d.ts.map +1 -1
  3. package/dist/initialization/instances/index.js +3 -0
  4. package/dist/initialization/instances/index.js.map +1 -1
  5. package/dist/initialization/instances/permission-controller/permission-controller.d.ts +5 -0
  6. package/dist/initialization/instances/permission-controller/permission-controller.d.ts.map +1 -0
  7. package/dist/initialization/instances/permission-controller/permission-controller.js +36 -0
  8. package/dist/initialization/instances/permission-controller/permission-controller.js.map +1 -0
  9. package/dist/initialization/instances/permission-controller/types.d.ts +15 -0
  10. package/dist/initialization/instances/permission-controller/types.d.ts.map +1 -0
  11. package/dist/initialization/instances/permission-controller/types.js +2 -0
  12. package/dist/initialization/instances/permission-controller/types.js.map +1 -0
  13. package/dist/initialization/instances/selected-network-controller/selected-network-controller.d.ts +4 -0
  14. package/dist/initialization/instances/selected-network-controller/selected-network-controller.d.ts.map +1 -0
  15. package/dist/initialization/instances/selected-network-controller/selected-network-controller.js +32 -0
  16. package/dist/initialization/instances/selected-network-controller/selected-network-controller.js.map +1 -0
  17. package/dist/initialization/instances/selected-network-controller/types.d.ts +13 -0
  18. package/dist/initialization/instances/selected-network-controller/types.d.ts.map +1 -0
  19. package/dist/initialization/instances/selected-network-controller/types.js +2 -0
  20. package/dist/initialization/instances/selected-network-controller/types.js.map +1 -0
  21. package/dist/initialization/instances/subject-metadata-controller/subject-metadata-controller.d.ts +4 -0
  22. package/dist/initialization/instances/subject-metadata-controller/subject-metadata-controller.d.ts.map +1 -0
  23. package/dist/initialization/instances/subject-metadata-controller/subject-metadata-controller.js +22 -0
  24. package/dist/initialization/instances/subject-metadata-controller/subject-metadata-controller.js.map +1 -0
  25. package/dist/types.d.ts +4 -0
  26. package/dist/types.d.ts.map +1 -1
  27. package/dist/types.js.map +1 -1
  28. package/package.json +3 -1
@@ -10,11 +10,14 @@ export { gasFeeController } from './gas-fee-controller/gas-fee-controller.js';
10
10
  export { keyringController } from './keyring-controller/keyring-controller.js';
11
11
  export { networkController } from './network-controller/network-controller.js';
12
12
  export { passkeyController } from './passkey-controller/passkey-controller.js';
13
+ export { permissionController } from './permission-controller/permission-controller.js';
13
14
  export { remoteFeatureFlagController } from './remote-feature-flag-controller/remote-feature-flag-controller.js';
14
15
  export { seedlessOnboardingController } from './seedless-onboarding-controller/seedless-onboarding-controller.js';
16
+ export { selectedNetworkController } from './selected-network-controller/selected-network-controller.js';
15
17
  export { shieldApiService } from './shield-api-service/shield-api-service.js';
16
18
  export { shieldController } from './shield-controller/shield-controller.js';
17
19
  export { storageService } from './storage-service/storage-service.js';
20
+ export { subjectMetadataController } from './subject-metadata-controller/subject-metadata-controller.js';
18
21
  export { subscriptionController } from './subscription-controller/subscription-controller.js';
19
22
  export { subscriptionDelegationService } from './subscription-delegation-service/subscription-delegation-service.js';
20
23
  export { subscriptionService } from './subscription-service/subscription-service.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/initialization/instances/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAC7F,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8DAA8D,CAAC;AACxG,OAAO,EAAE,wBAAwB,EAAE,MAAM,4DAA4D,CAAC;AACtG,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,2BAA2B,EAAE,MAAM,oEAAoE,CAAC;AACjH,OAAO,EAAE,4BAA4B,EAAE,MAAM,oEAAoE,CAAC;AAClH,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAC9F,OAAO,EAAE,6BAA6B,EAAE,MAAM,sEAAsE,CAAC;AACrH,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/initialization/instances/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAC7F,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8DAA8D,CAAC;AACxG,OAAO,EAAE,wBAAwB,EAAE,MAAM,4DAA4D,CAAC;AACtG,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,2BAA2B,EAAE,MAAM,oEAAoE,CAAC;AACjH,OAAO,EAAE,4BAA4B,EAAE,MAAM,oEAAoE,CAAC;AAClH,OAAO,EAAE,yBAAyB,EAAE,MAAM,8DAA8D,CAAC;AACzG,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,8DAA8D,CAAC;AACzG,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAC9F,OAAO,EAAE,6BAA6B,EAAE,MAAM,sEAAsE,CAAC;AACrH,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC"}
@@ -10,11 +10,14 @@ export { gasFeeController } from './gas-fee-controller/gas-fee-controller.js';
10
10
  export { keyringController } from './keyring-controller/keyring-controller.js';
11
11
  export { networkController } from './network-controller/network-controller.js';
12
12
  export { passkeyController } from './passkey-controller/passkey-controller.js';
13
+ export { permissionController } from './permission-controller/permission-controller.js';
13
14
  export { remoteFeatureFlagController } from './remote-feature-flag-controller/remote-feature-flag-controller.js';
14
15
  export { seedlessOnboardingController } from './seedless-onboarding-controller/seedless-onboarding-controller.js';
16
+ export { selectedNetworkController } from './selected-network-controller/selected-network-controller.js';
15
17
  export { shieldApiService } from './shield-api-service/shield-api-service.js';
16
18
  export { shieldController } from './shield-controller/shield-controller.js';
17
19
  export { storageService } from './storage-service/storage-service.js';
20
+ export { subjectMetadataController } from './subject-metadata-controller/subject-metadata-controller.js';
18
21
  export { subscriptionController } from './subscription-controller/subscription-controller.js';
19
22
  export { subscriptionDelegationService } from './subscription-delegation-service/subscription-delegation-service.js';
20
23
  export { subscriptionService } from './subscription-service/subscription-service.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/initialization/instances/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAC7F,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8DAA8D,CAAC;AACxG,OAAO,EAAE,wBAAwB,EAAE,MAAM,4DAA4D,CAAC;AACtG,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,2BAA2B,EAAE,MAAM,oEAAoE,CAAC;AACjH,OAAO,EAAE,4BAA4B,EAAE,MAAM,oEAAoE,CAAC;AAClH,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAC9F,OAAO,EAAE,6BAA6B,EAAE,MAAM,sEAAsE,CAAC;AACrH,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC","sourcesContent":["export { accountsController } from './accounts-controller/accounts-controller.js';\nexport { addressBookController } from './address-book-controller/address-book-controller.js';\nexport { approvalController } from './approval-controller/approval-controller.js';\nexport { claimsController } from './claims-controller/claims-controller.js';\nexport { claimsService } from './claims-service/claims-service.js';\nexport { configRegistryApiService } from './config-registry-api-service/config-registry-api-service.js';\nexport { configRegistryController } from './config-registry-controller/config-registry-controller.js';\nexport { connectivityController } from './connectivity-controller/connectivity-controller.js';\nexport { gasFeeController } from './gas-fee-controller/gas-fee-controller.js';\nexport { keyringController } from './keyring-controller/keyring-controller.js';\nexport { networkController } from './network-controller/network-controller.js';\nexport { passkeyController } from './passkey-controller/passkey-controller.js';\nexport { remoteFeatureFlagController } from './remote-feature-flag-controller/remote-feature-flag-controller.js';\nexport { seedlessOnboardingController } from './seedless-onboarding-controller/seedless-onboarding-controller.js';\nexport { shieldApiService } from './shield-api-service/shield-api-service.js';\nexport { shieldController } from './shield-controller/shield-controller.js';\nexport { storageService } from './storage-service/storage-service.js';\nexport { subscriptionController } from './subscription-controller/subscription-controller.js';\nexport { subscriptionDelegationService } from './subscription-delegation-service/subscription-delegation-service.js';\nexport { subscriptionService } from './subscription-service/subscription-service.js';\nexport { transactionController } from './transaction-controller/transaction-controller.js';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/initialization/instances/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAC7F,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8DAA8D,CAAC;AACxG,OAAO,EAAE,wBAAwB,EAAE,MAAM,4DAA4D,CAAC;AACtG,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,2BAA2B,EAAE,MAAM,oEAAoE,CAAC;AACjH,OAAO,EAAE,4BAA4B,EAAE,MAAM,oEAAoE,CAAC;AAClH,OAAO,EAAE,yBAAyB,EAAE,MAAM,8DAA8D,CAAC;AACzG,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,8DAA8D,CAAC;AACzG,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAC9F,OAAO,EAAE,6BAA6B,EAAE,MAAM,sEAAsE,CAAC;AACrH,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC","sourcesContent":["export { accountsController } from './accounts-controller/accounts-controller.js';\nexport { addressBookController } from './address-book-controller/address-book-controller.js';\nexport { approvalController } from './approval-controller/approval-controller.js';\nexport { claimsController } from './claims-controller/claims-controller.js';\nexport { claimsService } from './claims-service/claims-service.js';\nexport { configRegistryApiService } from './config-registry-api-service/config-registry-api-service.js';\nexport { configRegistryController } from './config-registry-controller/config-registry-controller.js';\nexport { connectivityController } from './connectivity-controller/connectivity-controller.js';\nexport { gasFeeController } from './gas-fee-controller/gas-fee-controller.js';\nexport { keyringController } from './keyring-controller/keyring-controller.js';\nexport { networkController } from './network-controller/network-controller.js';\nexport { passkeyController } from './passkey-controller/passkey-controller.js';\nexport { permissionController } from './permission-controller/permission-controller.js';\nexport { remoteFeatureFlagController } from './remote-feature-flag-controller/remote-feature-flag-controller.js';\nexport { seedlessOnboardingController } from './seedless-onboarding-controller/seedless-onboarding-controller.js';\nexport { selectedNetworkController } from './selected-network-controller/selected-network-controller.js';\nexport { shieldApiService } from './shield-api-service/shield-api-service.js';\nexport { shieldController } from './shield-controller/shield-controller.js';\nexport { storageService } from './storage-service/storage-service.js';\nexport { subjectMetadataController } from './subject-metadata-controller/subject-metadata-controller.js';\nexport { subscriptionController } from './subscription-controller/subscription-controller.js';\nexport { subscriptionDelegationService } from './subscription-delegation-service/subscription-delegation-service.js';\nexport { subscriptionService } from './subscription-service/subscription-service.js';\nexport { transactionController } from './transaction-controller/transaction-controller.js';\n"]}
@@ -0,0 +1,5 @@
1
+ import { PermissionController, PermissionControllerMessenger } from '@metamask/permission-controller';
2
+ import type { InitializationConfiguration } from '../../types.js';
3
+ export type { PermissionControllerInstanceOptions } from './types.js';
4
+ export declare const permissionController: InitializationConfiguration<PermissionController, PermissionControllerMessenger>;
5
+ //# sourceMappingURL=permission-controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission-controller.d.ts","sourceRoot":"","sources":["../../../../src/initialization/instances/permission-controller/permission-controller.ts"],"names":[],"mappings":"AACA,OAAO,EACL,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAC;AAElE,YAAY,EAAE,mCAAmC,EAAE,MAAM,YAAY,CAAC;AAEtE,eAAO,MAAM,oBAAoB,EAAE,2BAA2B,CAC5D,oBAAoB,EACpB,6BAA6B,CAoC9B,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { Messenger } from '@metamask/messenger';
2
+ import { PermissionController, } from '@metamask/permission-controller';
3
+ export const permissionController = {
4
+ name: 'PermissionController',
5
+ init: ({ state, messenger, options }) => new PermissionController({
6
+ state,
7
+ messenger,
8
+ caveatSpecifications: options.caveatSpecifications ?? {},
9
+ permissionSpecifications: options.permissionSpecifications ?? {},
10
+ unrestrictedMethods: options.unrestrictedMethods ?? [],
11
+ }),
12
+ getMessenger: (parent) => {
13
+ const messenger = new Messenger({
14
+ namespace: 'PermissionController',
15
+ parent,
16
+ });
17
+ parent.delegate({
18
+ messenger,
19
+ actions: [
20
+ 'ApprovalController:addRequest',
21
+ 'ApprovalController:hasRequest',
22
+ 'ApprovalController:acceptRequest',
23
+ 'ApprovalController:rejectRequest',
24
+ 'SubjectMetadataController:getSubjectMetadata',
25
+ // These are used by permission side-effects. The wallet does not
26
+ // construct `SnapController` yet, so clients must register them.
27
+ // @ts-expect-error Not part of the `PermissionControllerMessenger` type.
28
+ 'SnapController:getPermittedSnaps',
29
+ // @ts-expect-error Not part of the `PermissionControllerMessenger` type.
30
+ 'SnapController:installSnaps',
31
+ ],
32
+ });
33
+ return messenger;
34
+ },
35
+ };
36
+ //# sourceMappingURL=permission-controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission-controller.js","sourceRoot":"","sources":["../../../../src/initialization/instances/permission-controller/permission-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EACL,oBAAoB,GAErB,MAAM,iCAAiC,CAAC;AAMzC,MAAM,CAAC,MAAM,oBAAoB,GAG7B;IACF,IAAI,EAAE,sBAAsB;IAC5B,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,CACtC,IAAI,oBAAoB,CAAC;QACvB,KAAK;QACL,SAAS;QACT,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,IAAI,EAAE;QACxD,wBAAwB,EAAE,OAAO,CAAC,wBAAwB,IAAI,EAAE;QAChE,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,IAAI,EAAE;KACvD,CAAC;IACJ,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE;QACvB,MAAM,SAAS,GAAkC,IAAI,SAAS,CAAC;YAC7D,SAAS,EAAE,sBAAsB;YACjC,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC;YACd,SAAS;YACT,OAAO,EAAE;gBACP,+BAA+B;gBAC/B,+BAA+B;gBAC/B,kCAAkC;gBAClC,kCAAkC;gBAClC,8CAA8C;gBAC9C,iEAAiE;gBACjE,iEAAiE;gBACjE,yEAAyE;gBACzE,kCAAkC;gBAClC,yEAAyE;gBACzE,6BAA6B;aAC9B;SACF,CAAC,CAAC;QAEH,OAAO,SAAS,CAAC;IACnB,CAAC;CACF,CAAC","sourcesContent":["import { Messenger } from '@metamask/messenger';\nimport {\n PermissionController,\n PermissionControllerMessenger,\n} from '@metamask/permission-controller';\n\nimport type { InitializationConfiguration } from '../../types.js';\n\nexport type { PermissionControllerInstanceOptions } from './types.js';\n\nexport const permissionController: InitializationConfiguration<\n PermissionController,\n PermissionControllerMessenger\n> = {\n name: 'PermissionController',\n init: ({ state, messenger, options }) =>\n new PermissionController({\n state,\n messenger,\n caveatSpecifications: options.caveatSpecifications ?? {},\n permissionSpecifications: options.permissionSpecifications ?? {},\n unrestrictedMethods: options.unrestrictedMethods ?? [],\n }),\n getMessenger: (parent) => {\n const messenger: PermissionControllerMessenger = new Messenger({\n namespace: 'PermissionController',\n parent,\n });\n\n parent.delegate({\n messenger,\n actions: [\n 'ApprovalController:addRequest',\n 'ApprovalController:hasRequest',\n 'ApprovalController:acceptRequest',\n 'ApprovalController:rejectRequest',\n 'SubjectMetadataController:getSubjectMetadata',\n // These are used by permission side-effects. The wallet does not\n // construct `SnapController` yet, so clients must register them.\n // @ts-expect-error Not part of the `PermissionControllerMessenger` type.\n 'SnapController:getPermittedSnaps',\n // @ts-expect-error Not part of the `PermissionControllerMessenger` type.\n 'SnapController:installSnaps',\n ],\n });\n\n return messenger;\n },\n};\n"]}
@@ -0,0 +1,15 @@
1
+ import type { CaveatSpecificationConstraint, PermissionControllerOptions, PermissionSpecificationConstraint } from '@metamask/permission-controller';
2
+ type Options = PermissionControllerOptions<PermissionSpecificationConstraint, CaveatSpecificationConstraint>;
3
+ /**
4
+ * Per-instance options for the wallet's `PermissionController`.
5
+ */
6
+ export type PermissionControllerInstanceOptions = {
7
+ /** Caveat specifications available to the controller. Defaults to none. */
8
+ caveatSpecifications?: Options['caveatSpecifications'];
9
+ /** Permission specifications available to the controller. Defaults to none. */
10
+ permissionSpecifications?: Options['permissionSpecifications'];
11
+ /** JSON-RPC methods ignored by the controller. Defaults to none. */
12
+ unrestrictedMethods?: Options['unrestrictedMethods'];
13
+ };
14
+ export {};
15
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/initialization/instances/permission-controller/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,6BAA6B,EAC7B,2BAA2B,EAC3B,iCAAiC,EAClC,MAAM,iCAAiC,CAAC;AAEzC,KAAK,OAAO,GAAG,2BAA2B,CACxC,iCAAiC,EACjC,6BAA6B,CAC9B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mCAAmC,GAAG;IAChD,2EAA2E;IAC3E,oBAAoB,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACvD,+EAA+E;IAC/E,wBAAwB,CAAC,EAAE,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAC/D,oEAAoE;IACpE,mBAAmB,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACtD,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/initialization/instances/permission-controller/types.ts"],"names":[],"mappings":"","sourcesContent":["import type {\n CaveatSpecificationConstraint,\n PermissionControllerOptions,\n PermissionSpecificationConstraint,\n} from '@metamask/permission-controller';\n\ntype Options = PermissionControllerOptions<\n PermissionSpecificationConstraint,\n CaveatSpecificationConstraint\n>;\n\n/**\n * Per-instance options for the wallet's `PermissionController`.\n */\nexport type PermissionControllerInstanceOptions = {\n /** Caveat specifications available to the controller. Defaults to none. */\n caveatSpecifications?: Options['caveatSpecifications'];\n /** Permission specifications available to the controller. Defaults to none. */\n permissionSpecifications?: Options['permissionSpecifications'];\n /** JSON-RPC methods ignored by the controller. Defaults to none. */\n unrestrictedMethods?: Options['unrestrictedMethods'];\n};\n"]}
@@ -0,0 +1,4 @@
1
+ import { SelectedNetworkController, SelectedNetworkControllerMessenger } from '@metamask/selected-network-controller';
2
+ import type { InitializationConfiguration } from '../../types.js';
3
+ export declare const selectedNetworkController: InitializationConfiguration<SelectedNetworkController, SelectedNetworkControllerMessenger>;
4
+ //# sourceMappingURL=selected-network-controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selected-network-controller.d.ts","sourceRoot":"","sources":["../../../../src/initialization/instances/selected-network-controller/selected-network-controller.ts"],"names":[],"mappings":"AACA,OAAO,EACL,yBAAyB,EACzB,kCAAkC,EACnC,MAAM,uCAAuC,CAAC;AAE/C,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAC;AAElE,eAAO,MAAM,yBAAyB,EAAE,2BAA2B,CACjE,yBAAyB,EACzB,kCAAkC,CAgCnC,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { Messenger } from '@metamask/messenger';
2
+ import { SelectedNetworkController, } from '@metamask/selected-network-controller';
3
+ export const selectedNetworkController = {
4
+ name: 'SelectedNetworkController',
5
+ init: ({ state, messenger, options }) => new SelectedNetworkController({
6
+ state,
7
+ messenger,
8
+ domainProxyMap: options.domainProxyMap,
9
+ }),
10
+ getMessenger: (parent) => {
11
+ const messenger = new Messenger({
12
+ namespace: 'SelectedNetworkController',
13
+ parent,
14
+ });
15
+ parent.delegate({
16
+ messenger,
17
+ actions: [
18
+ 'NetworkController:getNetworkClientById',
19
+ 'NetworkController:getState',
20
+ 'NetworkController:getSelectedNetworkClient',
21
+ 'PermissionController:hasPermissions',
22
+ 'PermissionController:getSubjectNames',
23
+ ],
24
+ events: [
25
+ 'NetworkController:stateChange',
26
+ 'PermissionController:stateChange',
27
+ ],
28
+ });
29
+ return messenger;
30
+ },
31
+ };
32
+ //# sourceMappingURL=selected-network-controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selected-network-controller.js","sourceRoot":"","sources":["../../../../src/initialization/instances/selected-network-controller/selected-network-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EACL,yBAAyB,GAE1B,MAAM,uCAAuC,CAAC;AAI/C,MAAM,CAAC,MAAM,yBAAyB,GAGlC;IACF,IAAI,EAAE,2BAA2B;IACjC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,CACtC,IAAI,yBAAyB,CAAC;QAC5B,KAAK;QACL,SAAS;QACT,cAAc,EAAE,OAAO,CAAC,cAAc;KACvC,CAAC;IACJ,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE;QACvB,MAAM,SAAS,GAAuC,IAAI,SAAS,CAAC;YAClE,SAAS,EAAE,2BAA2B;YACtC,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC;YACd,SAAS;YACT,OAAO,EAAE;gBACP,wCAAwC;gBACxC,4BAA4B;gBAC5B,4CAA4C;gBAC5C,qCAAqC;gBACrC,sCAAsC;aACvC;YACD,MAAM,EAAE;gBACN,+BAA+B;gBAC/B,kCAAkC;aACnC;SACF,CAAC,CAAC;QAEH,OAAO,SAAS,CAAC;IACnB,CAAC;CACF,CAAC","sourcesContent":["import { Messenger } from '@metamask/messenger';\nimport {\n SelectedNetworkController,\n SelectedNetworkControllerMessenger,\n} from '@metamask/selected-network-controller';\n\nimport type { InitializationConfiguration } from '../../types.js';\n\nexport const selectedNetworkController: InitializationConfiguration<\n SelectedNetworkController,\n SelectedNetworkControllerMessenger\n> = {\n name: 'SelectedNetworkController',\n init: ({ state, messenger, options }) =>\n new SelectedNetworkController({\n state,\n messenger,\n domainProxyMap: options.domainProxyMap,\n }),\n getMessenger: (parent) => {\n const messenger: SelectedNetworkControllerMessenger = new Messenger({\n namespace: 'SelectedNetworkController',\n parent,\n });\n\n parent.delegate({\n messenger,\n actions: [\n 'NetworkController:getNetworkClientById',\n 'NetworkController:getState',\n 'NetworkController:getSelectedNetworkClient',\n 'PermissionController:hasPermissions',\n 'PermissionController:getSubjectNames',\n ],\n events: [\n 'NetworkController:stateChange',\n 'PermissionController:stateChange',\n ],\n });\n\n return messenger;\n },\n};\n"]}
@@ -0,0 +1,13 @@
1
+ import type { SelectedNetworkControllerOptions } from '@metamask/selected-network-controller';
2
+ /**
3
+ * Per-instance options for the wallet's `SelectedNetworkController`.
4
+ */
5
+ export type SelectedNetworkControllerInstanceOptions = {
6
+ /**
7
+ * A map for storing domain-specific network proxies that are held in memory
8
+ * only during use. Clients decide how entries are held, e.g., a plain `Map`
9
+ * or a map that references its values weakly.
10
+ */
11
+ domainProxyMap: SelectedNetworkControllerOptions['domainProxyMap'];
12
+ };
13
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/initialization/instances/selected-network-controller/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AAE9F;;GAEG;AACH,MAAM,MAAM,wCAAwC,GAAG;IACrD;;;;OAIG;IACH,cAAc,EAAE,gCAAgC,CAAC,gBAAgB,CAAC,CAAC;CACpE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/initialization/instances/selected-network-controller/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { SelectedNetworkControllerOptions } from '@metamask/selected-network-controller';\n\n/**\n * Per-instance options for the wallet's `SelectedNetworkController`.\n */\nexport type SelectedNetworkControllerInstanceOptions = {\n /**\n * A map for storing domain-specific network proxies that are held in memory\n * only during use. Clients decide how entries are held, e.g., a plain `Map`\n * or a map that references its values weakly.\n */\n domainProxyMap: SelectedNetworkControllerOptions['domainProxyMap'];\n};\n"]}
@@ -0,0 +1,4 @@
1
+ import { SubjectMetadataController, SubjectMetadataControllerMessenger } from '@metamask/permission-controller';
2
+ import type { InitializationConfiguration } from '../../types.js';
3
+ export declare const subjectMetadataController: InitializationConfiguration<SubjectMetadataController, SubjectMetadataControllerMessenger>;
4
+ //# sourceMappingURL=subject-metadata-controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subject-metadata-controller.d.ts","sourceRoot":"","sources":["../../../../src/initialization/instances/subject-metadata-controller/subject-metadata-controller.ts"],"names":[],"mappings":"AACA,OAAO,EACL,yBAAyB,EACzB,kCAAkC,EACnC,MAAM,iCAAiC,CAAC;AAEzC,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAC;AAElE,eAAO,MAAM,yBAAyB,EAAE,2BAA2B,CACjE,yBAAyB,EACzB,kCAAkC,CAsBnC,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { Messenger } from '@metamask/messenger';
2
+ import { SubjectMetadataController, } from '@metamask/permission-controller';
3
+ export const subjectMetadataController = {
4
+ name: 'SubjectMetadataController',
5
+ init: ({ state, messenger }) => new SubjectMetadataController({
6
+ state,
7
+ messenger,
8
+ subjectCacheLimit: 100,
9
+ }),
10
+ getMessenger: (parent) => {
11
+ const messenger = new Messenger({
12
+ namespace: 'SubjectMetadataController',
13
+ parent,
14
+ });
15
+ parent.delegate({
16
+ messenger,
17
+ actions: ['PermissionController:hasPermissions'],
18
+ });
19
+ return messenger;
20
+ },
21
+ };
22
+ //# sourceMappingURL=subject-metadata-controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subject-metadata-controller.js","sourceRoot":"","sources":["../../../../src/initialization/instances/subject-metadata-controller/subject-metadata-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EACL,yBAAyB,GAE1B,MAAM,iCAAiC,CAAC;AAIzC,MAAM,CAAC,MAAM,yBAAyB,GAGlC;IACF,IAAI,EAAE,2BAA2B;IACjC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,CAC7B,IAAI,yBAAyB,CAAC;QAC5B,KAAK;QACL,SAAS;QACT,iBAAiB,EAAE,GAAG;KACvB,CAAC;IACJ,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE;QACvB,MAAM,SAAS,GAAuC,IAAI,SAAS,CAAC;YAClE,SAAS,EAAE,2BAA2B;YACtC,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC;YACd,SAAS;YACT,OAAO,EAAE,CAAC,qCAAqC,CAAC;SACjD,CAAC,CAAC;QAEH,OAAO,SAAS,CAAC;IACnB,CAAC;CACF,CAAC","sourcesContent":["import { Messenger } from '@metamask/messenger';\nimport {\n SubjectMetadataController,\n SubjectMetadataControllerMessenger,\n} from '@metamask/permission-controller';\n\nimport type { InitializationConfiguration } from '../../types.js';\n\nexport const subjectMetadataController: InitializationConfiguration<\n SubjectMetadataController,\n SubjectMetadataControllerMessenger\n> = {\n name: 'SubjectMetadataController',\n init: ({ state, messenger }) =>\n new SubjectMetadataController({\n state,\n messenger,\n subjectCacheLimit: 100,\n }),\n getMessenger: (parent) => {\n const messenger: SubjectMetadataControllerMessenger = new Messenger({\n namespace: 'SubjectMetadataController',\n parent,\n });\n\n parent.delegate({\n messenger,\n actions: ['PermissionController:hasPermissions'],\n });\n\n return messenger;\n },\n};\n"]}
package/dist/types.d.ts CHANGED
@@ -9,8 +9,10 @@ import type { GasFeeControllerInstanceOptions } from './initialization/instances
9
9
  import type { KeyringControllerInstanceOptions } from './initialization/instances/keyring-controller/types.js';
10
10
  import type { NetworkControllerInstanceOptions } from './initialization/instances/network-controller/types.js';
11
11
  import type { PasskeyControllerInstanceOptions } from './initialization/instances/passkey-controller/types.js';
12
+ import type { PermissionControllerInstanceOptions } from './initialization/instances/permission-controller/types.js';
12
13
  import type { RemoteFeatureFlagControllerInstanceOptions } from './initialization/instances/remote-feature-flag-controller/types.js';
13
14
  import type { SeedlessOnboardingControllerInstanceOptions } from './initialization/instances/seedless-onboarding-controller/types.js';
15
+ import type { SelectedNetworkControllerInstanceOptions } from './initialization/instances/selected-network-controller/types.js';
14
16
  import type { ShieldApiServiceInstanceOptions } from './initialization/instances/shield-api-service/types.js';
15
17
  import type { ShieldControllerInstanceOptions } from './initialization/instances/shield-controller/types.js';
16
18
  import type { StorageServiceInstanceOptions } from './initialization/instances/storage-service/types.js';
@@ -39,7 +41,9 @@ export type InstanceSpecificOptions = {
39
41
  subscriptionController?: SubscriptionControllerInstanceOptions;
40
42
  transactionController?: TransactionControllerInstanceOptions;
41
43
  passkeyController?: PasskeyControllerInstanceOptions;
44
+ permissionController?: PermissionControllerInstanceOptions;
42
45
  seedlessOnboardingController?: SeedlessOnboardingControllerInstanceOptions;
46
+ selectedNetworkController: SelectedNetworkControllerInstanceOptions;
43
47
  shieldApiService?: ShieldApiServiceInstanceOptions;
44
48
  shieldController?: ShieldControllerInstanceOptions;
45
49
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACb,aAAa,EACd,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,yDAAyD,CAAC;AACjH,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,oDAAoD,CAAC;AACvG,OAAO,KAAK,EAAE,uCAAuC,EAAE,MAAM,iEAAiE,CAAC;AAC/H,OAAO,KAAK,EAAE,uCAAuC,EAAE,MAAM,gEAAgE,CAAC;AAC9H,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,6DAA6D,CAAC;AACzH,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,wDAAwD,CAAC;AAC9G,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,wDAAwD,CAAC;AAC/G,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,wDAAwD,CAAC;AAC/G,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,wDAAwD,CAAC;AAC/G,OAAO,KAAK,EAAE,0CAA0C,EAAE,MAAM,oEAAoE,CAAC;AACrI,OAAO,KAAK,EAAE,2CAA2C,EAAE,MAAM,oEAAoE,CAAC;AACtI,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,wDAAwD,CAAC;AAC9G,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,uDAAuD,CAAC;AAC7G,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,qDAAqD,CAAC;AACzG,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,6DAA6D,CAAC;AACzH,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,0DAA0D,CAAC;AACnH,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,4DAA4D,CAAC;AACvH,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AAE7E,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,CAAC,EAAE,aAAa,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;IACzD,4BAA4B,CAAC,EAAE,2BAA2B,CACxD,OAAO,EACP,OAAO,CACR,EAAE,CAAC;IACJ,eAAe,EAAE,uBAAuB,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,kBAAkB,CAAC,EAAE,iCAAiC,CAAC;IACvD,aAAa,CAAC,EAAE,4BAA4B,CAAC;IAC7C,wBAAwB,EAAE,uCAAuC,CAAC;IAClE,wBAAwB,CAAC,EAAE,uCAAuC,CAAC;IACnE,sBAAsB,EAAE,qCAAqC,CAAC;IAC9D,gBAAgB,EAAE,+BAA+B,CAAC;IAClD,iBAAiB,CAAC,EAAE,gCAAgC,CAAC;IACrD,iBAAiB,EAAE,gCAAgC,CAAC;IACpD,2BAA2B,EAAE,0CAA0C,CAAC;IACxE,cAAc,EAAE,6BAA6B,CAAC;IAC9C,mBAAmB,CAAC,EAAE,kCAAkC,CAAC;IACzD,sBAAsB,CAAC,EAAE,qCAAqC,CAAC;IAC/D,qBAAqB,CAAC,EAAE,oCAAoC,CAAC;IAC7D,iBAAiB,CAAC,EAAE,gCAAgC,CAAC;IACrD,4BAA4B,CAAC,EAAE,2CAA2C,CAAC;IAC3E,gBAAgB,CAAC,EAAE,+BAA+B,CAAC;IACnD,gBAAgB,CAAC,EAAE,+BAA+B,CAAC;CACpD,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { Json } from '@metamask/utils';\n\nimport type {\n DefaultActions,\n DefaultEvents,\n RootMessenger,\n} from './initialization/defaults.js';\nimport type { ApprovalControllerInstanceOptions } from './initialization/instances/approval-controller/types.js';\nimport type { ClaimsServiceInstanceOptions } from './initialization/instances/claims-service/types.js';\nimport type { ConfigRegistryApiServiceInstanceOptions } from './initialization/instances/config-registry-api-service/types.js';\nimport type { ConfigRegistryControllerInstanceOptions } from './initialization/instances/config-registry-controller/types.js';\nimport type { ConnectivityControllerInstanceOptions } from './initialization/instances/connectivity-controller/types.js';\nimport type { GasFeeControllerInstanceOptions } from './initialization/instances/gas-fee-controller/types.js';\nimport type { KeyringControllerInstanceOptions } from './initialization/instances/keyring-controller/types.js';\nimport type { NetworkControllerInstanceOptions } from './initialization/instances/network-controller/types.js';\nimport type { PasskeyControllerInstanceOptions } from './initialization/instances/passkey-controller/types.js';\nimport type { RemoteFeatureFlagControllerInstanceOptions } from './initialization/instances/remote-feature-flag-controller/types.js';\nimport type { SeedlessOnboardingControllerInstanceOptions } from './initialization/instances/seedless-onboarding-controller/types.js';\nimport type { ShieldApiServiceInstanceOptions } from './initialization/instances/shield-api-service/types.js';\nimport type { ShieldControllerInstanceOptions } from './initialization/instances/shield-controller/types.js';\nimport type { StorageServiceInstanceOptions } from './initialization/instances/storage-service/types.js';\nimport type { SubscriptionControllerInstanceOptions } from './initialization/instances/subscription-controller/types.js';\nimport type { SubscriptionServiceInstanceOptions } from './initialization/instances/subscription-service/types.js';\nimport type { TransactionControllerInstanceOptions } from './initialization/instances/transaction-controller/types.js';\nimport type { InitializationConfiguration } from './initialization/types.js';\n\nexport type WalletOptions = {\n messenger?: RootMessenger<DefaultActions, DefaultEvents>;\n state?: Record<string, Record<string, Json> | undefined>;\n initializationConfigurations?: InitializationConfiguration<\n unknown,\n unknown\n >[];\n instanceOptions: InstanceSpecificOptions;\n};\n\nexport type InstanceSpecificOptions = {\n approvalController?: ApprovalControllerInstanceOptions;\n claimsService?: ClaimsServiceInstanceOptions;\n configRegistryApiService: ConfigRegistryApiServiceInstanceOptions;\n configRegistryController?: ConfigRegistryControllerInstanceOptions;\n connectivityController: ConnectivityControllerInstanceOptions;\n gasFeeController: GasFeeControllerInstanceOptions;\n keyringController?: KeyringControllerInstanceOptions;\n networkController: NetworkControllerInstanceOptions;\n remoteFeatureFlagController: RemoteFeatureFlagControllerInstanceOptions;\n storageService: StorageServiceInstanceOptions;\n subscriptionService?: SubscriptionServiceInstanceOptions;\n subscriptionController?: SubscriptionControllerInstanceOptions;\n transactionController?: TransactionControllerInstanceOptions;\n passkeyController?: PasskeyControllerInstanceOptions;\n seedlessOnboardingController?: SeedlessOnboardingControllerInstanceOptions;\n shieldApiService?: ShieldApiServiceInstanceOptions;\n shieldController?: ShieldControllerInstanceOptions;\n};\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { Json } from '@metamask/utils';\n\nimport type {\n DefaultActions,\n DefaultEvents,\n RootMessenger,\n} from './initialization/defaults.js';\nimport type { ApprovalControllerInstanceOptions } from './initialization/instances/approval-controller/types.js';\nimport type { ClaimsServiceInstanceOptions } from './initialization/instances/claims-service/types.js';\nimport type { ConfigRegistryApiServiceInstanceOptions } from './initialization/instances/config-registry-api-service/types.js';\nimport type { ConfigRegistryControllerInstanceOptions } from './initialization/instances/config-registry-controller/types.js';\nimport type { ConnectivityControllerInstanceOptions } from './initialization/instances/connectivity-controller/types.js';\nimport type { GasFeeControllerInstanceOptions } from './initialization/instances/gas-fee-controller/types.js';\nimport type { KeyringControllerInstanceOptions } from './initialization/instances/keyring-controller/types.js';\nimport type { NetworkControllerInstanceOptions } from './initialization/instances/network-controller/types.js';\nimport type { PasskeyControllerInstanceOptions } from './initialization/instances/passkey-controller/types.js';\nimport type { PermissionControllerInstanceOptions } from './initialization/instances/permission-controller/types.js';\nimport type { RemoteFeatureFlagControllerInstanceOptions } from './initialization/instances/remote-feature-flag-controller/types.js';\nimport type { SeedlessOnboardingControllerInstanceOptions } from './initialization/instances/seedless-onboarding-controller/types.js';\nimport type { SelectedNetworkControllerInstanceOptions } from './initialization/instances/selected-network-controller/types.js';\nimport type { ShieldApiServiceInstanceOptions } from './initialization/instances/shield-api-service/types.js';\nimport type { ShieldControllerInstanceOptions } from './initialization/instances/shield-controller/types.js';\nimport type { StorageServiceInstanceOptions } from './initialization/instances/storage-service/types.js';\nimport type { SubscriptionControllerInstanceOptions } from './initialization/instances/subscription-controller/types.js';\nimport type { SubscriptionServiceInstanceOptions } from './initialization/instances/subscription-service/types.js';\nimport type { TransactionControllerInstanceOptions } from './initialization/instances/transaction-controller/types.js';\nimport type { InitializationConfiguration } from './initialization/types.js';\n\nexport type WalletOptions = {\n messenger?: RootMessenger<DefaultActions, DefaultEvents>;\n state?: Record<string, Record<string, Json> | undefined>;\n initializationConfigurations?: InitializationConfiguration<\n unknown,\n unknown\n >[];\n instanceOptions: InstanceSpecificOptions;\n};\n\nexport type InstanceSpecificOptions = {\n approvalController?: ApprovalControllerInstanceOptions;\n claimsService?: ClaimsServiceInstanceOptions;\n configRegistryApiService: ConfigRegistryApiServiceInstanceOptions;\n configRegistryController?: ConfigRegistryControllerInstanceOptions;\n connectivityController: ConnectivityControllerInstanceOptions;\n gasFeeController: GasFeeControllerInstanceOptions;\n keyringController?: KeyringControllerInstanceOptions;\n networkController: NetworkControllerInstanceOptions;\n remoteFeatureFlagController: RemoteFeatureFlagControllerInstanceOptions;\n storageService: StorageServiceInstanceOptions;\n subscriptionService?: SubscriptionServiceInstanceOptions;\n subscriptionController?: SubscriptionControllerInstanceOptions;\n transactionController?: TransactionControllerInstanceOptions;\n passkeyController?: PasskeyControllerInstanceOptions;\n permissionController?: PermissionControllerInstanceOptions;\n seedlessOnboardingController?: SeedlessOnboardingControllerInstanceOptions;\n selectedNetworkController: SelectedNetworkControllerInstanceOptions;\n shieldApiService?: ShieldApiServiceInstanceOptions;\n shieldController?: ShieldControllerInstanceOptions;\n};\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metamask-previews/wallet",
3
- "version": "17.0.0-preview-6ccf7a055",
3
+ "version": "17.0.0-preview-b59bc5b6f",
4
4
  "description": "Provides a shared framework for building MetaMask wallets",
5
5
  "keywords": [
6
6
  "Ethereum",
@@ -64,9 +64,11 @@
64
64
  "@metamask/messenger": "^3.0.0",
65
65
  "@metamask/network-controller": "^37.0.1",
66
66
  "@metamask/passkey-controller": "^4.1.0",
67
+ "@metamask/permission-controller": "^14.0.0",
67
68
  "@metamask/remote-feature-flag-controller": "^7.0.0",
68
69
  "@metamask/scure-bip39": "^2.1.1",
69
70
  "@metamask/seedless-onboarding-controller": "^12.0.0",
71
+ "@metamask/selected-network-controller": "^27.0.0",
70
72
  "@metamask/shield-controller": "^7.0.4",
71
73
  "@metamask/storage-service": "^2.0.0",
72
74
  "@metamask/subscription-controller": "^13.0.0",