New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@metamask-institutional/custody-keyring

Package Overview
Dependencies
Maintainers
7
Versions
42
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@metamask-institutional/custody-keyring - npm Package Compare versions

Comparing version 2.0.3 to 2.1.0

26

CHANGELOG.md

@@ -62,2 +62,28 @@ # Change Log

## [2.1.0](https://github.com/consensys-vertical-apps/metamask-institutional/compare/custody-keyring-v2.0.3...custody-keyring-v2.1.0) (2024-10-11)
### Features
* added export state log feature ([#841](https://github.com/consensys-vertical-apps/metamask-institutional/issues/841)) ([28e6083](https://github.com/consensys-vertical-apps/metamask-institutional/commit/28e6083b842eafaaa3d65979fa6380b4b0abd9d6))
### Bug Fixes
* mmi xxx bitgo api url ([#790](https://github.com/consensys-vertical-apps/metamask-institutional/issues/790)) ([2e869d1](https://github.com/consensys-vertical-apps/metamask-institutional/commit/2e869d11e8a0796d7fb5e3a0cea99358c68545e7))
* **version bump:** manual version bump and clean up ([#762](https://github.com/consensys-vertical-apps/metamask-institutional/issues/762)) ([5135d9c](https://github.com/consensys-vertical-apps/metamask-institutional/commit/5135d9c1def750422e4a8f7718ba1926242695dd))
### Performance Improvements
* **custody-keyring:** remove migrations from index ([#774](https://github.com/consensys-vertical-apps/metamask-institutional/issues/774)) ([deafdd5](https://github.com/consensys-vertical-apps/metamask-institutional/commit/deafdd51c357d18ad7b58a03dccae77fd2d74bbe))
### Dependencies
* The following workspace dependencies were updated
* dependencies
* @metamask-institutional/sdk bumped from ^0.1.30 to ^0.2.0
* @metamask-institutional/types bumped from ^1.1.0 to ^1.2.0
## [2.0.1](https://github.com/consensys-vertical-apps/metamask-institutional/compare/custody-keyring-v2.0.0...custody-keyring-v2.0.1) (2024-05-29)

@@ -64,0 +90,0 @@

1

dist/constants/index.d.ts
export declare const DEFAULT_MAX_CACHE_AGE = 60;
export declare const REFRESH_TOKEN_CHANGE_EVENT = "refresh_token_change";
export declare const INTERACTIVE_REPLACEMENT_TOKEN_CHANGE_EVENT = "interactive_replacement_token_change";
export declare const API_REQUEST_LOG_EVENT = "API_REQUEST_LOG_EVENT";
//# sourceMappingURL=index.d.ts.map

3

dist/constants/index.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.INTERACTIVE_REPLACEMENT_TOKEN_CHANGE_EVENT = exports.REFRESH_TOKEN_CHANGE_EVENT = exports.DEFAULT_MAX_CACHE_AGE = void 0;
exports.API_REQUEST_LOG_EVENT = exports.INTERACTIVE_REPLACEMENT_TOKEN_CHANGE_EVENT = exports.REFRESH_TOKEN_CHANGE_EVENT = exports.DEFAULT_MAX_CACHE_AGE = void 0;
exports.DEFAULT_MAX_CACHE_AGE = 60;
exports.REFRESH_TOKEN_CHANGE_EVENT = "refresh_token_change";
exports.INTERACTIVE_REPLACEMENT_TOKEN_CHANGE_EVENT = "interactive_replacement_token_change";
exports.API_REQUEST_LOG_EVENT = "API_REQUEST_LOG_EVENT";
//# sourceMappingURL=index.js.map

@@ -14,3 +14,3 @@ import { MMISDK } from "@metamask-institutional/sdk";

imgSrc: string;
icon: string;
iconUrl: string;
website: string;

@@ -17,0 +17,0 @@ onboardingUrl: string;

@@ -18,3 +18,3 @@ "use strict";

imgSrc: "https://dashboard.metamask-institutional.io/custodian-icons/bitgo-icon.svg",
icon: "https://dashboard.metamask-institutional.io/custodian-icons/bitgo-icon.svg",
iconUrl: "https://dashboard.metamask-institutional.io/custodian-icons/bitgo-icon.svg",
website: "https://www.bitgo.com",

@@ -43,3 +43,4 @@ onboardingUrl: "https://www.bitgo.com",

this.sdkFactory = (authDetails, envName) => {
return (0, sdk_1.mmiSDKFactory)(sdk_1.BitgoCustodianApi, authDetails, this.authType, this.custodianType.apiUrl);
const custodian = this.getCustodianFromEnvName("bitgo");
return (0, sdk_1.mmiSDKFactory)(sdk_1.BitgoCustodianApi, authDetails, this.authType, custodian.apiUrl);
};

@@ -46,0 +47,0 @@ this.txDeepLink = async (_custodianDetails, _txId) => {

@@ -13,3 +13,3 @@ import { MMISDK } from "@metamask-institutional/sdk";

imgSrc: string;
icon: string;
iconUrl: string;
website: string;

@@ -16,0 +16,0 @@ onboardingUrl: string;

@@ -17,3 +17,3 @@ "use strict";

imgSrc: "https://dashboard.metamask-institutional.io/custodian-icons/cactus-icon.svg",
icon: "https://dashboard.metamask-institutional.io/custodian-icons/cactus-icon.svg",
iconUrl: "https://dashboard.metamask-institutional.io/custodian-icons/cactus-icon.svg",
website: "https://www.mycactus.com",

@@ -20,0 +20,0 @@ onboardingUrl: "https://www.mycactus.com",

@@ -15,3 +15,3 @@ import { MMISDK } from "@metamask-institutional/sdk";

imgSrc: string;
icon: string;
iconUrl: string;
website: string;

@@ -18,0 +18,0 @@ onboardingUrl: string;

@@ -18,3 +18,3 @@ "use strict";

imgSrc: "https://backend.vistan-brillen.de/storage/files/images/marken/changeme/header/changeme-logo-header.jpg",
icon: "https://backend.vistan-brillen.de/storage/files/images/marken/changeme/header/changeme-logo-header.jpg",
iconUrl: "https://backend.vistan-brillen.de/storage/files/images/marken/changeme/header/changeme-logo-header.jpg",
website: "https://neptune-custody-ui.metamask-institutional.io/",

@@ -21,0 +21,0 @@ onboardingUrl: "https://neptune-custody-ui.metamask-institutional.io/",

@@ -6,3 +6,2 @@ "use strict";

const CactusCustodyKeyring_1 = require("./cactus/CactusCustodyKeyring");
const CurvCustodyKeyring_1 = require("./curv/CurvCustodyKeyring");
const ECA3CustodyKeyring_1 = require("./eca3/ECA3CustodyKeyring");

@@ -16,3 +15,3 @@ const JsonRpcCustodyKeyring_1 = require("./json-rpc/JsonRpcCustodyKeyring");

imgSrc: "https://dashboard.metamask-institutional.io/custodian-icons/cactus-icon.svg",
icon: "https://dashboard.metamask-institutional.io/custodian-icons/cactus-icon.svg",
iconUrl: "https://dashboard.metamask-institutional.io/custodian-icons/cactus-icon.svg",
website: "https://www.mycactus.com",

@@ -41,3 +40,3 @@ onboardingUrl: "https://www.mycactus.com",

imgSrc: "https://dashboard.metamask-institutional.io/custodian-icons/bitgo-icon.svg",
icon: "https://dashboard.metamask-institutional.io/custodian-icons/bitgo-icon.svg",
iconUrl: "https://dashboard.metamask-institutional.io/custodian-icons/bitgo-icon.svg",
website: "https://www.bitgo.com",

@@ -70,3 +69,3 @@ onboardingUrl: "https://www.bitgo.com",

imgSrc: "https://saturn-custody-ui.metamask-institutional.io/saturn.svg",
icon: "https://saturn-custody-ui.metamask-institutional.io/saturn.svg",
iconUrl: "https://saturn-custody-ui.metamask-institutional.io/saturn.svg",
website: "https://saturn-custody-ui.metamask-institutional.io/",

@@ -86,3 +85,3 @@ onboardingUrl: "https://saturn-custody-ui.metamask-institutional.io/",

imgSrc: "https://backend.vistan-brillen.de/storage/files/images/marken/changeme/header/changeme-logo-header.jpg",
icon: "https://backend.vistan-brillen.de/storage/files/images/marken/changeme/header/changeme-logo-header.jpg",
iconUrl: "https://backend.vistan-brillen.de/storage/files/images/marken/changeme/header/changeme-logo-header.jpg",
website: "https://neptune-custody-ui.metamask-institutional.io/",

@@ -97,18 +96,3 @@ onboardingUrl: "https://neptune-custody-ui.metamask-institutional.io/",

},
CURV: {
name: "Curv",
displayName: "Curv",
apiUrl: "https://app.curv.co",
imgSrc: "images/curv-logo-horizontal-black.svg",
icon: "images/curv-logo.svg",
website: "",
onboardingUrl: "",
envName: "",
keyringClass: CurvCustodyKeyring_1.CurvCustodyKeyring,
production: false,
hidden: true,
origins: [],
environmentMapping: [],
},
};
//# sourceMappingURL=index.js.map

@@ -15,3 +15,3 @@ import { MMISDK } from "@metamask-institutional/sdk";

imgSrc: string;
icon: string;
iconUrl: string;
website: string;

@@ -18,0 +18,0 @@ onboardingUrl: string;

@@ -18,3 +18,3 @@ "use strict";

imgSrc: "https://saturn-custody-ui.metamask-institutional.io/saturn.svg",
icon: "https://saturn-custody-ui.metamask-institutional.io/saturn.svg",
iconUrl: "https://saturn-custody-ui.metamask-institutional.io/saturn.svg",
website: "https://saturn-custody-ui.metamask-institutional.io/",

@@ -21,0 +21,0 @@ onboardingUrl: "https://saturn-custody-ui.metamask-institutional.io/",

/// <reference types="node" />
import { FeeMarketEIP1559Transaction, Transaction } from "@ethereumjs/tx";
import { MMISDK } from "@metamask-institutional/sdk";
import { AddressType, AuthDetails, AuthTypes, ICustodianAccount, ICustodianTransactionLink, ICustodianType, IExtensionCustodianAccount, IInteractiveRefreshTokenChangeEvent, IMetamaskContractMetadata, IRefreshTokenChangeEvent, ISignatureDetails, ITransactionDetails, ITransactionStatusMap, MetamaskTransaction } from "@metamask-institutional/types";
import { AddressType, AuthDetails, AuthTypes, IApiCallLogEntry, ICustodianAccount, ICustodianTransactionLink, ICustodianType, IExtensionCustodianAccount, IInteractiveRefreshTokenChangeEvent, IMetamaskContractMetadata, IRefreshTokenChangeEvent, ISignatureDetails, ITransactionDetails, ITransactionStatusMap, MetamaskTransaction } from "@metamask-institutional/types";
import { EventEmitter } from "events";

@@ -57,2 +57,3 @@ import { ICustodianEnvironment } from "./interfaces/ICustodianEnvironment";

handleInteractiveRefreshTokenChangeEvent(event: IInteractiveRefreshTokenChangeEvent): void;
emitApiRequestLogEvent(event: IApiCallLogEntry): void;
createAuthDetails(token: string): AuthDetails;

@@ -59,0 +60,0 @@ getSDK(authDetails: AuthDetails, envName: string): MMISDK;

@@ -157,2 +157,5 @@ "use strict";

}
emitApiRequestLogEvent(event) {
this.emit(constants_1.API_REQUEST_LOG_EVENT, event);
}
createAuthDetails(token) {

@@ -181,2 +184,3 @@ let authDetails;

sdk.on(constants_1.INTERACTIVE_REPLACEMENT_TOKEN_CHANGE_EVENT, (event) => this.handleInteractiveRefreshTokenChangeEvent(event));
sdk.on(constants_1.API_REQUEST_LOG_EVENT, (event) => this.emitApiRequestLogEvent(event));
this.sdkList.push({

@@ -183,0 +187,0 @@ sdk,

@@ -8,4 +8,2 @@ export { CUSTODIAN_TYPES } from "./custodianTypes";

export { JsonRpcCustodyKeyring } from "./custodianTypes/json-rpc/JsonRpcCustodyKeyring";
export { Migrator } from "./migrations/migrator";
export { migrations } from "./migrations";
//# sourceMappingURL=index.d.ts.map
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.migrations = exports.Migrator = exports.JsonRpcCustodyKeyring = exports.IMmiConfigurationControllerOptions = exports.MmiConfigurationController = exports.CustodyKeyring = exports.CUSTODIAN_TYPES = void 0;
exports.JsonRpcCustodyKeyring = exports.IMmiConfigurationControllerOptions = exports.MmiConfigurationController = exports.CustodyKeyring = exports.CUSTODIAN_TYPES = void 0;
var custodianTypes_1 = require("./custodianTypes");

@@ -14,6 +14,2 @@ Object.defineProperty(exports, "CUSTODIAN_TYPES", { enumerable: true, get: function () { return custodianTypes_1.CUSTODIAN_TYPES; } });

Object.defineProperty(exports, "JsonRpcCustodyKeyring", { enumerable: true, get: function () { return JsonRpcCustodyKeyring_1.JsonRpcCustodyKeyring; } });
var migrator_1 = require("./migrations/migrator");
Object.defineProperty(exports, "Migrator", { enumerable: true, get: function () { return migrator_1.Migrator; } });
var migrations_1 = require("./migrations");
Object.defineProperty(exports, "migrations", { enumerable: true, get: function () { return migrations_1.migrations; } });
//# sourceMappingURL=index.js.map

@@ -7,2 +7,3 @@ "use strict";

const custodianTypes_1 = require("./custodianTypes");
const legacyCustodianNames = ["curv", "qredo", "bitgo", "cactus"];
class MmiConfigurationController {

@@ -70,3 +71,3 @@ constructor(opts = {}) {

custodian.environments.forEach(environment => {
if (!environment.apiBaseUrl) {
if (legacyCustodianNames.includes(environment.name)) {
const legacyCustodian = custodians.find(legacyCustodian => legacyCustodian.name.toLowerCase() === environment.name);

@@ -77,3 +78,5 @@ if (!legacyCustodian) {

else {
legacyCustodian.isNoteToTraderSupported = environment.isNoteToTraderSupported;
if (environment.apiBaseUrl) {
legacyCustodian.apiUrl = environment.apiBaseUrl;
}
}

@@ -80,0 +83,0 @@ return;

{
"name": "@metamask-institutional/custody-keyring",
"version": "2.0.3",
"version": "2.1.0",
"description": "The Custody Keyring Class is the initial point of contact with a custodian, it gets access to the sdk and all methods of interaction with a custodian, like custodian accounts, sign a tx, account details, tx details.",

@@ -30,3 +30,3 @@ "author": "Albert Olive <albertolivecorbella@gmail.com>",

},
"gitHead": "bfae0ed0597cdcb79b14638b9c5fa3ee08808f57",
"gitHead": "29e33c4e850ad16c0a5be45936bbaa589f3736e7",
"dependencies": {

@@ -36,4 +36,4 @@ "@ethereumjs/tx": "^4.1.1",

"@metamask-institutional/configuration-client": "^2.0.1",
"@metamask-institutional/sdk": "^0.1.30",
"@metamask-institutional/types": "^1.1.0",
"@metamask-institutional/sdk": "^0.2.0",
"@metamask-institutional/types": "^1.2.0",
"@metamask/obs-store": "^9.0.0",

@@ -40,0 +40,0 @@ "crypto": "^1.0.1",

{
"name": "@metamask-institutional/custody-keyring",
"version": "2.0.3",
"version": "2.1.0",
"description": "The Custody Keyring Class is the initial point of contact with a custodian, it gets access to the sdk and all methods of interaction with a custodian, like custodian accounts, sign a tx, account details, tx details.",

@@ -30,3 +30,3 @@ "author": "Albert Olive <albertolivecorbella@gmail.com>",

},
"gitHead": "bfae0ed0597cdcb79b14638b9c5fa3ee08808f57",
"gitHead": "29e33c4e850ad16c0a5be45936bbaa589f3736e7",
"dependencies": {

@@ -36,4 +36,4 @@ "@ethereumjs/tx": "^4.1.1",

"@metamask-institutional/configuration-client": "^2.0.1",
"@metamask-institutional/sdk": "^0.1.30",
"@metamask-institutional/types": "^1.1.0",
"@metamask-institutional/sdk": "^0.2.0",
"@metamask-institutional/types": "^1.2.0",
"@metamask/obs-store": "^9.0.0",

@@ -40,0 +40,0 @@ "crypto": "^1.0.1",

export const DEFAULT_MAX_CACHE_AGE = 60;
export const REFRESH_TOKEN_CHANGE_EVENT = "refresh_token_change";
export const INTERACTIVE_REPLACEMENT_TOKEN_CHANGE_EVENT = "interactive_replacement_token_change";
export const API_REQUEST_LOG_EVENT = "API_REQUEST_LOG_EVENT";

@@ -24,3 +24,3 @@ import { BitgoCustodianApi, MMISDK, mmiSDKFactory } from "@metamask-institutional/sdk";

imgSrc: "https://dashboard.metamask-institutional.io/custodian-icons/bitgo-icon.svg",
icon: "https://dashboard.metamask-institutional.io/custodian-icons/bitgo-icon.svg",
iconUrl: "https://dashboard.metamask-institutional.io/custodian-icons/bitgo-icon.svg",
website: "https://www.bitgo.com",

@@ -50,3 +50,5 @@ onboardingUrl: "https://www.bitgo.com",

sdkFactory = (authDetails: AuthDetails, envName: string): MMISDK => {
return mmiSDKFactory(BitgoCustodianApi, authDetails, this.authType, this.custodianType.apiUrl);
const custodian = this.getCustodianFromEnvName("bitgo");
return mmiSDKFactory(BitgoCustodianApi, authDetails, this.authType, custodian.apiUrl);
};

@@ -53,0 +55,0 @@

@@ -23,3 +23,3 @@ import { CactusCustodianApi, MMISDK, mmiSDKFactory } from "@metamask-institutional/sdk";

imgSrc: "https://dashboard.metamask-institutional.io/custodian-icons/cactus-icon.svg",
icon: "https://dashboard.metamask-institutional.io/custodian-icons/cactus-icon.svg",
iconUrl: "https://dashboard.metamask-institutional.io/custodian-icons/cactus-icon.svg",
website: "https://www.mycactus.com",

@@ -26,0 +26,0 @@ onboardingUrl: "https://www.mycactus.com",

@@ -27,3 +27,3 @@ import { ECA3CustodianApi, MMISDK, mmiSDKFactory } from "@metamask-institutional/sdk";

imgSrc: "https://backend.vistan-brillen.de/storage/files/images/marken/changeme/header/changeme-logo-header.jpg",
icon: "https://backend.vistan-brillen.de/storage/files/images/marken/changeme/header/changeme-logo-header.jpg",
iconUrl: "https://backend.vistan-brillen.de/storage/files/images/marken/changeme/header/changeme-logo-header.jpg",
website: "https://neptune-custody-ui.metamask-institutional.io/",

@@ -30,0 +30,0 @@ onboardingUrl: "https://neptune-custody-ui.metamask-institutional.io/",

@@ -5,3 +5,2 @@ import { ICustodianType } from "@metamask-institutional/types";

import { CactusCustodyKeyring } from "./cactus/CactusCustodyKeyring";
import { CurvCustodyKeyring } from "./curv/CurvCustodyKeyring";
import { ECA3CustodyKeyring } from "./eca3/ECA3CustodyKeyring";

@@ -16,3 +15,3 @@ import { JsonRpcCustodyKeyring } from "./json-rpc/JsonRpcCustodyKeyring";

imgSrc: "https://dashboard.metamask-institutional.io/custodian-icons/cactus-icon.svg",
icon: "https://dashboard.metamask-institutional.io/custodian-icons/cactus-icon.svg",
iconUrl: "https://dashboard.metamask-institutional.io/custodian-icons/cactus-icon.svg",
website: "https://www.mycactus.com",

@@ -41,3 +40,3 @@ onboardingUrl: "https://www.mycactus.com",

imgSrc: "https://dashboard.metamask-institutional.io/custodian-icons/bitgo-icon.svg",
icon: "https://dashboard.metamask-institutional.io/custodian-icons/bitgo-icon.svg",
iconUrl: "https://dashboard.metamask-institutional.io/custodian-icons/bitgo-icon.svg",
website: "https://www.bitgo.com",

@@ -72,3 +71,3 @@ onboardingUrl: "https://www.bitgo.com",

imgSrc: "https://saturn-custody-ui.metamask-institutional.io/saturn.svg",
icon: "https://saturn-custody-ui.metamask-institutional.io/saturn.svg",
iconUrl: "https://saturn-custody-ui.metamask-institutional.io/saturn.svg",
website: "https://saturn-custody-ui.metamask-institutional.io/",

@@ -90,3 +89,3 @@ onboardingUrl: "https://saturn-custody-ui.metamask-institutional.io/",

imgSrc: "https://backend.vistan-brillen.de/storage/files/images/marken/changeme/header/changeme-logo-header.jpg",
icon: "https://backend.vistan-brillen.de/storage/files/images/marken/changeme/header/changeme-logo-header.jpg",
iconUrl: "https://backend.vistan-brillen.de/storage/files/images/marken/changeme/header/changeme-logo-header.jpg",
website: "https://neptune-custody-ui.metamask-institutional.io/",

@@ -101,19 +100,2 @@ onboardingUrl: "https://neptune-custody-ui.metamask-institutional.io/",

},
// Legacy Custodian
CURV: {
name: "Curv",
displayName: "Curv",
apiUrl: "https://app.curv.co",
imgSrc: "images/curv-logo-horizontal-black.svg",
icon: "images/curv-logo.svg",
website: "",
onboardingUrl: "",
envName: "",
keyringClass: CurvCustodyKeyring,
production: false,
hidden: true,
origins: [],
environmentMapping: [],
},
};

@@ -27,3 +27,3 @@ import { JsonRpcCustodianApi, MMISDK, mmiSDKFactory } from "@metamask-institutional/sdk";

imgSrc: "https://saturn-custody-ui.metamask-institutional.io/saturn.svg",
icon: "https://saturn-custody-ui.metamask-institutional.io/saturn.svg",
iconUrl: "https://saturn-custody-ui.metamask-institutional.io/saturn.svg",
website: "https://saturn-custody-ui.metamask-institutional.io/",

@@ -30,0 +30,0 @@ onboardingUrl: "https://saturn-custody-ui.metamask-institutional.io/",

@@ -8,2 +8,3 @@ import { FeeMarketEIP1559Transaction, Transaction } from "@ethereumjs/tx";

AuthTypes,
IApiCallLogEntry,
ICustodianAccount,

@@ -29,2 +30,3 @@ ICustodianTransactionLink,

import {
API_REQUEST_LOG_EVENT,
DEFAULT_MAX_CACHE_AGE,

@@ -254,2 +256,6 @@ INTERACTIVE_REPLACEMENT_TOKEN_CHANGE_EVENT,

emitApiRequestLogEvent(event: IApiCallLogEntry): void {
this.emit(API_REQUEST_LOG_EVENT, event);
}
createAuthDetails(token: string): AuthDetails {

@@ -293,2 +299,4 @@ let authDetails: AuthDetails;

sdk.on(API_REQUEST_LOG_EVENT, (event: IApiCallLogEntry) => this.emitApiRequestLogEvent(event));
this.sdkList.push({

@@ -462,4 +470,2 @@ sdk,

// TODO: This methods should be rename 'get signed message'
async getSignature(address: string, signatureId: string): Promise<ISignatureDetails> {

@@ -466,0 +472,0 @@ if (signatureId === undefined) {

@@ -9,5 +9,1 @@ export { CUSTODIAN_TYPES } from "./custodianTypes";

export { JsonRpcCustodyKeyring } from "./custodianTypes/json-rpc/JsonRpcCustodyKeyring";
// @TODO Check if we need to export here the Migrator or it will live in it's own package
export { Migrator } from "./migrations/migrator";
export { migrations } from "./migrations";

@@ -14,2 +14,5 @@ /**

// If a custodian is `curv`, `qredo` `bitgo` or `cactus` it is legacy custodian
const legacyCustodianNames = ["curv", "qredo", "bitgo", "cactus"];
/**

@@ -33,14 +36,14 @@ * Background controller responsible for maintaining

: {
mmiConfiguration: {
portfolio: {
enabled: false,
url: "",
cookieSetUrls: [],
},
features: {
websocketApi: false,
},
custodians: [], // NB: Custodians will always be empty when we start
mmiConfiguration: {
portfolio: {
enabled: false,
url: "",
cookieSetUrls: [],
},
};
features: {
websocketApi: false,
},
custodians: [], // NB: Custodians will always be empty when we start
},
};

@@ -69,2 +72,3 @@ this.configurationClient = new ConfigurationClient(opts.mmiConfigurationServiceUrl);

// Steo 1: populate the custodian array with the LEGACY custodians
// Mutate custodians by adding information from the hardcoded types

@@ -95,7 +99,12 @@ const custodians: ICustodianEnvironment[] = [

// Step 2: populate the custodians array with the configured custodians, which already INCLUDES the legacy custodians
// We also mutate the legacy custodian, adding the API url when it exists on the configured custodians side (Bitgo dev/test env)
// Loop through the custodians from the API
configuredCustodians.forEach(custodian => {
custodian.environments.forEach(environment => {
if (!environment.apiBaseUrl) {
// Version 1 custodians should still support note to trader
// This used to check if there is no apiUrl, but now it checks by name
if (legacyCustodianNames.includes(environment.name)) {
// This logic checks if something is a legacy custodian
// Find the legacy custodians in the list of custodians we are building

@@ -108,5 +117,9 @@ const legacyCustodian = custodians.find(

} else {
legacyCustodian.isNoteToTraderSupported = environment.isNoteToTraderSupported;
if(environment.apiBaseUrl) {
// Updates a legacy custodian with an API url from the configured custodian,
// it's useful for bitgo that has a different API url from dev to prod
legacyCustodian.apiUrl = environment.apiBaseUrl;
}
}
return; // Use return instead of continue
return; // Exit this routine to avoid double adding the legacy custodian
}

@@ -113,0 +126,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc