@sonarwatch/portfolio-core 0.11.183 → 0.11.185
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/CHANGELOG.md +1503 -1495
- package/README.md +3 -3
- package/package.json +1 -1
- package/src/Portfolio.d.ts +27 -0
- package/src/TokenList.d.ts +8 -2
- package/src/getContractId.d.ts +2 -0
- package/src/getContractId.js +8 -0
- package/src/getContractId.js.map +1 -0
- package/src/getNetworkIdFromContractId.d.ts +3 -0
- package/src/getNetworkIdFromContractId.js +11 -0
- package/src/getNetworkIdFromContractId.js.map +1 -0
- package/src/utils/formatAddress.js +3 -3
- package/src/utils/formatAddress.js.map +1 -1
- package/src/utils/formatTokenAddress.js +1 -1
- package/src/utils/formatTokenAddress.js.map +1 -1
- package/src/utils/validAddress.js +1 -3
- package/src/utils/validAddress.js.map +1 -1
package/README.md
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
# @sonarwatch/portfolio-core
|
|
2
|
-
|
|
3
|
-
This library is @sonarwatch/portfolio-core
|
|
1
|
+
# @sonarwatch/portfolio-core
|
|
2
|
+
|
|
3
|
+
This library is @sonarwatch/portfolio-core
|
package/package.json
CHANGED
package/src/Portfolio.d.ts
CHANGED
|
@@ -126,6 +126,32 @@ export type ProxyInfo = {
|
|
|
126
126
|
id: string;
|
|
127
127
|
address: string;
|
|
128
128
|
};
|
|
129
|
+
/**
|
|
130
|
+
* Represents a smart contract
|
|
131
|
+
*/
|
|
132
|
+
export type Contract = {
|
|
133
|
+
id: ContractId;
|
|
134
|
+
name: string;
|
|
135
|
+
};
|
|
136
|
+
export type ContractId = string;
|
|
137
|
+
/**
|
|
138
|
+
* Represents the different configurations of a service
|
|
139
|
+
*/
|
|
140
|
+
export type ServiceConfig = {
|
|
141
|
+
networkId: NetworkIdType;
|
|
142
|
+
integratedOn: number;
|
|
143
|
+
contracts?: Contract[];
|
|
144
|
+
link?: string;
|
|
145
|
+
};
|
|
146
|
+
/**
|
|
147
|
+
* Represents a service from a platform
|
|
148
|
+
*/
|
|
149
|
+
export type Service = {
|
|
150
|
+
id: string;
|
|
151
|
+
name: string;
|
|
152
|
+
platformId: string;
|
|
153
|
+
config: ServiceConfig[];
|
|
154
|
+
};
|
|
129
155
|
/**
|
|
130
156
|
* Represents the common properties of a portfolio element.
|
|
131
157
|
*/
|
|
@@ -138,6 +164,7 @@ export type PortfolioElementCommon = {
|
|
|
138
164
|
name?: string;
|
|
139
165
|
tags?: string[];
|
|
140
166
|
proxyInfo?: ProxyInfo;
|
|
167
|
+
service?: Service;
|
|
141
168
|
};
|
|
142
169
|
/**
|
|
143
170
|
* @deprecated
|
package/src/TokenList.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { NetworkIdType } from './Network';
|
|
2
|
-
export type UniTokenInfoExtensionValue = string | number | boolean | null | undefined;
|
|
2
|
+
export type UniTokenInfoExtensionValue = string | Array<string> | number | boolean | null | undefined;
|
|
3
3
|
export interface UniTokenInfo {
|
|
4
4
|
readonly chainId: number;
|
|
5
5
|
readonly address: string;
|
|
@@ -8,7 +8,13 @@ export interface UniTokenInfo {
|
|
|
8
8
|
readonly symbol: string;
|
|
9
9
|
readonly logoURI?: string;
|
|
10
10
|
readonly tags?: string[];
|
|
11
|
-
readonly extensions?:
|
|
11
|
+
readonly extensions?: {
|
|
12
|
+
readonly [key: string]: {
|
|
13
|
+
[key: string]: {
|
|
14
|
+
[key: string]: UniTokenInfoExtensionValue;
|
|
15
|
+
} | UniTokenInfoExtensionValue;
|
|
16
|
+
} | UniTokenInfoExtensionValue;
|
|
17
|
+
};
|
|
12
18
|
}
|
|
13
19
|
export type UniTokenListVersion = {
|
|
14
20
|
major: number;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getContractId = void 0;
|
|
4
|
+
function getContractId(networkId, address) {
|
|
5
|
+
return `${networkId}_${address}`;
|
|
6
|
+
}
|
|
7
|
+
exports.getContractId = getContractId;
|
|
8
|
+
//# sourceMappingURL=getContractId.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getContractId.js","sourceRoot":"","sources":["../../../../packages/core/src/getContractId.ts"],"names":[],"mappings":";;;AAEA,SAAgB,aAAa,CAAC,SAAwB,EAAE,OAAe;IACrE,OAAO,GAAG,SAAS,IAAI,OAAO,EAAE,CAAC;AACnC,CAAC;AAFD,sCAEC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getNetworkIdFromContractId = void 0;
|
|
4
|
+
const utils_1 = require("./utils");
|
|
5
|
+
function getNetworkIdFromContractId(contractId) {
|
|
6
|
+
if (!contractId.includes('_'))
|
|
7
|
+
throw new Error('Invalid Contract Id');
|
|
8
|
+
return (0, utils_1.assertNetworkId)(contractId.slice(0, contractId.indexOf('_')));
|
|
9
|
+
}
|
|
10
|
+
exports.getNetworkIdFromContractId = getNetworkIdFromContractId;
|
|
11
|
+
//# sourceMappingURL=getNetworkIdFromContractId.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getNetworkIdFromContractId.js","sourceRoot":"","sources":["../../../../packages/core/src/getNetworkIdFromContractId.ts"],"names":[],"mappings":";;;AAEA,mCAA0C;AAE1C,SAAgB,0BAA0B,CACxC,UAAsB;IAEtB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAEtE,OAAO,IAAA,uBAAe,EAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACvE,CAAC;AAND,gEAMC"}
|
|
@@ -12,7 +12,7 @@ function formatBitcoinAddress(address) {
|
|
|
12
12
|
exports.formatBitcoinAddress = formatBitcoinAddress;
|
|
13
13
|
function formatMoveAddress(address) {
|
|
14
14
|
(0, validAddress_1.assertMoveAddress)(address);
|
|
15
|
-
let fAddress = address.
|
|
15
|
+
let fAddress = address.toLowerCase();
|
|
16
16
|
if (!fAddress.startsWith('0x'))
|
|
17
17
|
fAddress = `0x${fAddress}`;
|
|
18
18
|
return fAddress;
|
|
@@ -20,7 +20,7 @@ function formatMoveAddress(address) {
|
|
|
20
20
|
exports.formatMoveAddress = formatMoveAddress;
|
|
21
21
|
function formatEvmAddress(address) {
|
|
22
22
|
(0, validAddress_1.assertEvmAddress)(address);
|
|
23
|
-
return (0, address_1.getAddress)(address.
|
|
23
|
+
return (0, address_1.getAddress)(address.toLowerCase());
|
|
24
24
|
}
|
|
25
25
|
exports.formatEvmAddress = formatEvmAddress;
|
|
26
26
|
function formatSolanaAddress(address) {
|
|
@@ -30,7 +30,7 @@ function formatSolanaAddress(address) {
|
|
|
30
30
|
exports.formatSolanaAddress = formatSolanaAddress;
|
|
31
31
|
function formatSeiAddress(address) {
|
|
32
32
|
(0, validAddress_1.assertSeiAddress)(address);
|
|
33
|
-
return address.
|
|
33
|
+
return address.toLowerCase();
|
|
34
34
|
}
|
|
35
35
|
exports.formatSeiAddress = formatSeiAddress;
|
|
36
36
|
const formatters = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatAddress.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/formatAddress.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,iDAMwB;AAExB,wCAA8D;AAC9D,4CAAwC;AAExC,SAAgB,oBAAoB,CAAC,OAAe;IAClD,IAAA,mCAAoB,EAAC,OAAO,CAAC,CAAC;IAC9B,OAAO,OAAO,CAAC;AACjB,CAAC;AAHD,oDAGC;AAED,SAAgB,iBAAiB,CAAC,OAAe;IAC/C,IAAA,gCAAiB,EAAC,OAAO,CAAC,CAAC;IAC3B,IAAI,QAAQ,GAAG,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"formatAddress.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/formatAddress.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,iDAMwB;AAExB,wCAA8D;AAC9D,4CAAwC;AAExC,SAAgB,oBAAoB,CAAC,OAAe;IAClD,IAAA,mCAAoB,EAAC,OAAO,CAAC,CAAC;IAC9B,OAAO,OAAO,CAAC;AACjB,CAAC;AAHD,oDAGC;AAED,SAAgB,iBAAiB,CAAC,OAAe;IAC/C,IAAA,gCAAiB,EAAC,OAAO,CAAC,CAAC;IAC3B,IAAI,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACrC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,QAAQ,GAAG,KAAK,QAAQ,EAAE,CAAC;IAC3D,OAAO,QAAQ,CAAC;AAClB,CAAC;AALD,8CAKC;AAED,SAAgB,gBAAgB,CAAC,OAAe;IAC9C,IAAA,+BAAgB,EAAC,OAAO,CAAC,CAAC;IAC1B,OAAO,IAAA,oBAAU,EAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;AAC3C,CAAC;AAHD,4CAGC;AAED,SAAgB,mBAAmB,CAAC,OAAe;IACjD,IAAA,kCAAmB,EAAC,OAAO,CAAC,CAAC;IAC7B,OAAO,OAAO,CAAC;AACjB,CAAC;AAHD,kDAGC;AAED,SAAgB,gBAAgB,CAAC,OAAe;IAC9C,IAAA,+BAAgB,EAAC,OAAO,CAAC,CAAC;IAC1B,OAAO,OAAO,CAAC,WAAW,EAAE,CAAC;AAC/B,CAAC;AAHD,4CAGC;AAED,MAAM,UAAU,GAA2D;IACzE,CAAC,uBAAa,CAAC,MAAM,CAAC,EAAE,mBAAmB;IAC3C,CAAC,uBAAa,CAAC,OAAO,CAAC,EAAE,oBAAoB;IAC7C,CAAC,uBAAa,CAAC,GAAG,CAAC,EAAE,gBAAgB;IACrC,CAAC,uBAAa,CAAC,IAAI,CAAC,EAAE,iBAAiB;IACvC,CAAC,uBAAa,CAAC,GAAG,CAAC,EAAE,gBAAgB;CACtC,CAAC;AAEF,SAAgB,aAAa,CAC3B,OAAe,EACf,aAAgC;IAEhC,MAAM,SAAS,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;IAC5C,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC;AAC5B,CAAC;AAND,sCAMC;AAED,SAAgB,wBAAwB,CACtC,OAAe,EACf,SAAwB;IAExB,MAAM,OAAO,GAAG,oBAAQ,CAAC,SAAS,CAAC,CAAC;IACpC,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,SAAS,EAAE,CAAC,CAAC;IACvE,OAAO,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;AACvD,CAAC;AAPD,4DAOC"}
|
|
@@ -28,7 +28,7 @@ function formatMoveTokenAddress(address) {
|
|
|
28
28
|
exports.formatMoveTokenAddress = formatMoveTokenAddress;
|
|
29
29
|
function formatEvmTokenAddress(address) {
|
|
30
30
|
(0, validTokenAddress_1.assertEvmTokenAddress)(address);
|
|
31
|
-
return (0, address_1.getAddress)(address.
|
|
31
|
+
return (0, address_1.getAddress)(address.toLowerCase());
|
|
32
32
|
}
|
|
33
33
|
exports.formatEvmTokenAddress = formatEvmTokenAddress;
|
|
34
34
|
function formatSolanaTokenAddress(address) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatTokenAddress.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/formatTokenAddress.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AAEpD,wCAA8D;AAC9D,4CAAoD;AACpD,2DAM6B;AAC7B,iEAAiE;AAEjE,SAAgB,yBAAyB,CAAC,OAAe;IACvD,IAAA,6CAAyB,EAAC,OAAO,CAAC,CAAC;IACnC,OAAO,OAAO,CAAC;AACjB,CAAC;AAHD,8DAGC;AAED,SAAgB,sBAAsB,CAAC,OAAe;IACpD,IAAA,0CAAsB,EAAC,OAAO,CAAC,CAAC;IAChC,IAAI,QAAQ,GAAG,IAAA,8CAAuB,EAAC,OAAO,CAAC;QAC7C,CAAC,CAAC,sBAAU,CAAC,MAAM,CAAC,OAAO;QAC3B,CAAC,CAAC,OAAO,CAAC;IACZ,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,QAAQ,GAAG,KAAK,QAAQ,EAAE,CAAC;IAC1D,OAAO,QAAQ;SACZ,IAAI,EAAE;SACN,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC;SACtB,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC;SACpB,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC;SAC3B,UAAU,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;AACjC,CAAC;AAZD,wDAYC;AAED,SAAgB,qBAAqB,CAAC,OAAe;IACnD,IAAA,yCAAqB,EAAC,OAAO,CAAC,CAAC;IAC/B,OAAO,IAAA,oBAAU,EAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"formatTokenAddress.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/formatTokenAddress.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AAEpD,wCAA8D;AAC9D,4CAAoD;AACpD,2DAM6B;AAC7B,iEAAiE;AAEjE,SAAgB,yBAAyB,CAAC,OAAe;IACvD,IAAA,6CAAyB,EAAC,OAAO,CAAC,CAAC;IACnC,OAAO,OAAO,CAAC;AACjB,CAAC;AAHD,8DAGC;AAED,SAAgB,sBAAsB,CAAC,OAAe;IACpD,IAAA,0CAAsB,EAAC,OAAO,CAAC,CAAC;IAChC,IAAI,QAAQ,GAAG,IAAA,8CAAuB,EAAC,OAAO,CAAC;QAC7C,CAAC,CAAC,sBAAU,CAAC,MAAM,CAAC,OAAO;QAC3B,CAAC,CAAC,OAAO,CAAC;IACZ,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,QAAQ,GAAG,KAAK,QAAQ,EAAE,CAAC;IAC1D,OAAO,QAAQ;SACZ,IAAI,EAAE;SACN,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC;SACtB,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC;SACpB,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC;SAC3B,UAAU,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;AACjC,CAAC;AAZD,wDAYC;AAED,SAAgB,qBAAqB,CAAC,OAAe;IACnD,IAAA,yCAAqB,EAAC,OAAO,CAAC,CAAC;IAC/B,OAAO,IAAA,oBAAU,EAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;AAC3C,CAAC;AAHD,sDAGC;AAED,SAAgB,wBAAwB,CAAC,OAAe;IACtD,IAAA,4CAAwB,EAAC,OAAO,CAAC,CAAC;IAClC,OAAO,OAAO,CAAC;AACjB,CAAC;AAHD,4DAGC;AAED,SAAgB,qBAAqB,CAAC,OAAe;IACnD,IAAA,yCAAqB,EAAC,OAAO,CAAC,CAAC;IAC/B,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACrC,CAAC;AAHD,sDAGC;AAED,MAAM,UAAU,GAA2D;IACzE,CAAC,uBAAa,CAAC,MAAM,CAAC,EAAE,wBAAwB;IAChD,CAAC,uBAAa,CAAC,OAAO,CAAC,EAAE,yBAAyB;IAClD,CAAC,uBAAa,CAAC,GAAG,CAAC,EAAE,qBAAqB;IAC1C,CAAC,uBAAa,CAAC,IAAI,CAAC,EAAE,sBAAsB;IAC5C,CAAC,uBAAa,CAAC,GAAG,CAAC,EAAE,qBAAqB;CAC3C,CAAC;AAEF,SAAgB,kBAAkB,CAAC,OAAe,EAAE,SAAwB;IAC1E,MAAM,OAAO,GAAG,oBAAQ,CAAC,SAAS,CAAC,CAAC;IACpC,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,SAAS,EAAE,CAAC,CAAC;IAEvE,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACpD,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC;AAC5B,CAAC;AAND,gDAMC"}
|
|
@@ -17,9 +17,7 @@ function assertBitcoinAddress(address) {
|
|
|
17
17
|
}
|
|
18
18
|
exports.assertBitcoinAddress = assertBitcoinAddress;
|
|
19
19
|
function isEvmAddress(address) {
|
|
20
|
-
|
|
21
|
-
return false;
|
|
22
|
-
return (0, address_1.isAddress)(address.toLocaleLowerCase());
|
|
20
|
+
return (0, address_1.isAddress)(address.toLowerCase());
|
|
23
21
|
}
|
|
24
22
|
exports.isEvmAddress = isEvmAddress;
|
|
25
23
|
function assertEvmAddress(address) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validAddress.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/validAddress.ts"],"names":[],"mappings":";;;AAAA,2EAA+D;AAC/D,oDAAsE;AACtE,gDAAmD;AACnD,8FAAwE;AACxE,wCAA8D;AAC9D,6EAA0E;AAE1E,SAAgB,gBAAgB,CAAC,OAAe;IAC9C,OAAO,IAAA,qCAAQ,EAAC,OAAO,EAAE,oCAAO,CAAC,OAAO,CAAC,CAAC;AAC5C,CAAC;AAFD,4CAEC;AACD,SAAgB,oBAAoB,CAAC,OAAe;IAClD,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;QAC5B,MAAM,IAAI,+CAAsB,CAAC,OAAO,EAAE,uBAAa,CAAC,OAAO,CAAC,CAAC;AACrE,CAAC;AAHD,oDAGC;AAED,SAAgB,YAAY,CAAC,OAAe;IAC1C,
|
|
1
|
+
{"version":3,"file":"validAddress.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/validAddress.ts"],"names":[],"mappings":"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"}
|