@metamask-previews/token-search-discovery-controller 3.1.0-preview-e91a391a → 3.1.0-preview-e96d94ef

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 CHANGED
@@ -10,7 +10,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
10
10
  ### Changed
11
11
 
12
12
  - Bump `@metamask/base-controller` from ^8.0.0 to ^8.0.1 ([#5722](https://github.com/MetaMask/core/pull/5722))
13
- - Add `swappable` param to token discovery controller and API service ([#5819](https://github.com/MetaMask/core/pull/5819))
14
13
 
15
14
  ## [3.1.0]
16
15
 
@@ -10,14 +10,13 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
10
10
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
11
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
12
  };
13
- var _TokenDiscoveryApiService_instances, _TokenDiscoveryApiService_baseUrl, _TokenDiscoveryApiService_fetch;
13
+ var _TokenDiscoveryApiService_baseUrl;
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.TokenDiscoveryApiService = void 0;
16
16
  const abstract_token_discovery_api_service_1 = require("./abstract-token-discovery-api-service.cjs");
17
17
  class TokenDiscoveryApiService extends abstract_token_discovery_api_service_1.AbstractTokenDiscoveryApiService {
18
18
  constructor(baseUrl) {
19
19
  super();
20
- _TokenDiscoveryApiService_instances.add(this);
21
20
  _TokenDiscoveryApiService_baseUrl.set(this, void 0);
22
21
  if (!baseUrl) {
23
22
  throw new Error('Portfolio API URL is not set');
@@ -25,39 +24,83 @@ class TokenDiscoveryApiService extends abstract_token_discovery_api_service_1.Ab
25
24
  __classPrivateFieldSet(this, _TokenDiscoveryApiService_baseUrl, baseUrl, "f");
26
25
  }
27
26
  async getTrendingTokensByChains(trendingTokensParams) {
28
- return __classPrivateFieldGet(this, _TokenDiscoveryApiService_instances, "m", _TokenDiscoveryApiService_fetch).call(this, 'trending', trendingTokensParams);
27
+ const url = new URL('/tokens-search/trending', __classPrivateFieldGet(this, _TokenDiscoveryApiService_baseUrl, "f"));
28
+ if (trendingTokensParams?.chains &&
29
+ trendingTokensParams.chains.length > 0) {
30
+ url.searchParams.append('chains', trendingTokensParams.chains.join());
31
+ }
32
+ if (trendingTokensParams?.limit) {
33
+ url.searchParams.append('limit', trendingTokensParams.limit);
34
+ }
35
+ const response = await fetch(url, {
36
+ method: 'GET',
37
+ headers: {
38
+ 'Content-Type': 'application/json',
39
+ },
40
+ });
41
+ if (!response.ok) {
42
+ throw new Error(`Portfolio API request failed with status: ${response.status}`);
43
+ }
44
+ return response.json();
29
45
  }
30
46
  async getTopLosersByChains(topLosersParams) {
31
- return __classPrivateFieldGet(this, _TokenDiscoveryApiService_instances, "m", _TokenDiscoveryApiService_fetch).call(this, 'top-losers', topLosersParams);
47
+ const url = new URL('/tokens-search/top-losers', __classPrivateFieldGet(this, _TokenDiscoveryApiService_baseUrl, "f"));
48
+ if (topLosersParams?.chains && topLosersParams.chains.length > 0) {
49
+ url.searchParams.append('chains', topLosersParams.chains.join());
50
+ }
51
+ if (topLosersParams?.limit) {
52
+ url.searchParams.append('limit', topLosersParams.limit);
53
+ }
54
+ const response = await fetch(url, {
55
+ method: 'GET',
56
+ headers: {
57
+ 'Content-Type': 'application/json',
58
+ },
59
+ });
60
+ if (!response.ok) {
61
+ throw new Error(`Portfolio API request failed with status: ${response.status}`);
62
+ }
63
+ return response.json();
32
64
  }
33
65
  async getTopGainersByChains(topGainersParams) {
34
- return __classPrivateFieldGet(this, _TokenDiscoveryApiService_instances, "m", _TokenDiscoveryApiService_fetch).call(this, 'top-gainers', topGainersParams);
66
+ const url = new URL('/tokens-search/top-gainers', __classPrivateFieldGet(this, _TokenDiscoveryApiService_baseUrl, "f"));
67
+ if (topGainersParams?.chains && topGainersParams.chains.length > 0) {
68
+ url.searchParams.append('chains', topGainersParams.chains.join());
69
+ }
70
+ if (topGainersParams?.limit) {
71
+ url.searchParams.append('limit', topGainersParams.limit);
72
+ }
73
+ const response = await fetch(url, {
74
+ method: 'GET',
75
+ headers: {
76
+ 'Content-Type': 'application/json',
77
+ },
78
+ });
79
+ if (!response.ok) {
80
+ throw new Error(`Portfolio API request failed with status: ${response.status}`);
81
+ }
82
+ return response.json();
35
83
  }
36
84
  async getBlueChipTokensByChains(blueChipParams) {
37
- return __classPrivateFieldGet(this, _TokenDiscoveryApiService_instances, "m", _TokenDiscoveryApiService_fetch).call(this, 'blue-chip', blueChipParams);
85
+ const url = new URL('/tokens-search/blue-chip', __classPrivateFieldGet(this, _TokenDiscoveryApiService_baseUrl, "f"));
86
+ if (blueChipParams?.chains && blueChipParams.chains.length > 0) {
87
+ url.searchParams.append('chains', blueChipParams.chains.join());
88
+ }
89
+ if (blueChipParams?.limit) {
90
+ url.searchParams.append('limit', blueChipParams.limit);
91
+ }
92
+ const response = await fetch(url, {
93
+ method: 'GET',
94
+ headers: {
95
+ 'Content-Type': 'application/json',
96
+ },
97
+ });
98
+ if (!response.ok) {
99
+ throw new Error(`Portfolio API request failed with status: ${response.status}`);
100
+ }
101
+ return response.json();
38
102
  }
39
103
  }
40
104
  exports.TokenDiscoveryApiService = TokenDiscoveryApiService;
41
- _TokenDiscoveryApiService_baseUrl = new WeakMap(), _TokenDiscoveryApiService_instances = new WeakSet(), _TokenDiscoveryApiService_fetch = async function _TokenDiscoveryApiService_fetch(subPath, params) {
42
- const url = new URL(`/tokens-search/${subPath}`, __classPrivateFieldGet(this, _TokenDiscoveryApiService_baseUrl, "f"));
43
- if (params?.chains && params.chains.length > 0) {
44
- url.searchParams.append('chains', params.chains.join());
45
- }
46
- if (params?.limit) {
47
- url.searchParams.append('limit', params.limit);
48
- }
49
- if (params?.swappable) {
50
- url.searchParams.append('swappable', 'true');
51
- }
52
- const response = await fetch(url, {
53
- method: 'GET',
54
- headers: {
55
- 'Content-Type': 'application/json',
56
- },
57
- });
58
- if (!response.ok) {
59
- throw new Error(`Portfolio API request failed with status: ${response.status}`);
60
- }
61
- return response.json();
62
- };
105
+ _TokenDiscoveryApiService_baseUrl = new WeakMap();
63
106
  //# sourceMappingURL=token-discovery-api-service.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"token-discovery-api-service.cjs","sourceRoot":"","sources":["../../src/token-discovery-api-service/token-discovery-api-service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,qGAA0F;AAU1F,MAAa,wBAAyB,SAAQ,uEAAgC;IAG5E,YAAY,OAAe;QACzB,KAAK,EAAE,CAAC;;QAHD,oDAAiB;QAIxB,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;SACjD;QACD,uBAAA,IAAI,qCAAY,OAAO,MAAA,CAAC;IAC1B,CAAC;IAiCD,KAAK,CAAC,yBAAyB,CAC7B,oBAA2C;QAE3C,OAAO,uBAAA,IAAI,4EAAO,MAAX,IAAI,EAAQ,UAAU,EAAE,oBAAoB,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,eAAiC;QAEjC,OAAO,uBAAA,IAAI,4EAAO,MAAX,IAAI,EAAQ,YAAY,EAAE,eAAe,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,gBAAmC;QAEnC,OAAO,uBAAA,IAAI,4EAAO,MAAX,IAAI,EAAQ,aAAa,EAAE,gBAAgB,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC7B,cAA+B;QAE/B,OAAO,uBAAA,IAAI,4EAAO,MAAX,IAAI,EAAQ,WAAW,EAAE,cAAc,CAAC,CAAC;IAClD,CAAC;CACF;AAjED,4DAiEC;0IAtDC,KAAK,0CAAQ,OAAe,EAAE,MAAmB;IAC/C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,kBAAkB,OAAO,EAAE,EAAE,uBAAA,IAAI,yCAAS,CAAC,CAAC;IAEhE,IAAI,MAAM,EAAE,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;QAC9C,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;KACzD;IAED,IAAI,MAAM,EAAE,KAAK,EAAE;QACjB,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;KAChD;IAED,IAAI,MAAM,EAAE,SAAS,EAAE;QACrB,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;KAC9C;IAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAChC,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;QAChB,MAAM,IAAI,KAAK,CACb,6CAA6C,QAAQ,CAAC,MAAM,EAAE,CAC/D,CAAC;KACH;IAED,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC","sourcesContent":["import { AbstractTokenDiscoveryApiService } from './abstract-token-discovery-api-service';\nimport type {\n MoralisTokenResponseItem,\n TopGainersParams,\n TopLosersParams,\n TrendingTokensParams,\n BlueChipParams,\n ParamsBase,\n} from '../types';\n\nexport class TokenDiscoveryApiService extends AbstractTokenDiscoveryApiService {\n readonly #baseUrl: string;\n\n constructor(baseUrl: string) {\n super();\n if (!baseUrl) {\n throw new Error('Portfolio API URL is not set');\n }\n this.#baseUrl = baseUrl;\n }\n\n async #fetch(subPath: string, params?: ParamsBase) {\n const url = new URL(`/tokens-search/${subPath}`, this.#baseUrl);\n\n if (params?.chains && params.chains.length > 0) {\n url.searchParams.append('chains', params.chains.join());\n }\n\n if (params?.limit) {\n url.searchParams.append('limit', params.limit);\n }\n\n if (params?.swappable) {\n url.searchParams.append('swappable', 'true');\n }\n\n const response = await fetch(url, {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n\n if (!response.ok) {\n throw new Error(\n `Portfolio API request failed with status: ${response.status}`,\n );\n }\n\n return response.json();\n }\n\n async getTrendingTokensByChains(\n trendingTokensParams?: TrendingTokensParams,\n ): Promise<MoralisTokenResponseItem[]> {\n return this.#fetch('trending', trendingTokensParams);\n }\n\n async getTopLosersByChains(\n topLosersParams?: TopLosersParams,\n ): Promise<MoralisTokenResponseItem[]> {\n return this.#fetch('top-losers', topLosersParams);\n }\n\n async getTopGainersByChains(\n topGainersParams?: TopGainersParams,\n ): Promise<MoralisTokenResponseItem[]> {\n return this.#fetch('top-gainers', topGainersParams);\n }\n\n async getBlueChipTokensByChains(\n blueChipParams?: BlueChipParams,\n ): Promise<MoralisTokenResponseItem[]> {\n return this.#fetch('blue-chip', blueChipParams);\n }\n}\n"]}
1
+ {"version":3,"file":"token-discovery-api-service.cjs","sourceRoot":"","sources":["../../src/token-discovery-api-service/token-discovery-api-service.ts"],"names":[],"mappings":"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","sourcesContent":["import { AbstractTokenDiscoveryApiService } from './abstract-token-discovery-api-service';\nimport type {\n MoralisTokenResponseItem,\n TopGainersParams,\n TopLosersParams,\n TrendingTokensParams,\n BlueChipParams,\n} from '../types';\n\nexport class TokenDiscoveryApiService extends AbstractTokenDiscoveryApiService {\n readonly #baseUrl: string;\n\n constructor(baseUrl: string) {\n super();\n if (!baseUrl) {\n throw new Error('Portfolio API URL is not set');\n }\n this.#baseUrl = baseUrl;\n }\n\n async getTrendingTokensByChains(\n trendingTokensParams?: TrendingTokensParams,\n ): Promise<MoralisTokenResponseItem[]> {\n const url = new URL('/tokens-search/trending', this.#baseUrl);\n\n if (\n trendingTokensParams?.chains &&\n trendingTokensParams.chains.length > 0\n ) {\n url.searchParams.append('chains', trendingTokensParams.chains.join());\n }\n if (trendingTokensParams?.limit) {\n url.searchParams.append('limit', trendingTokensParams.limit);\n }\n\n const response = await fetch(url, {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n\n if (!response.ok) {\n throw new Error(\n `Portfolio API request failed with status: ${response.status}`,\n );\n }\n\n return response.json();\n }\n\n async getTopLosersByChains(\n topLosersParams?: TopLosersParams,\n ): Promise<MoralisTokenResponseItem[]> {\n const url = new URL('/tokens-search/top-losers', this.#baseUrl);\n\n if (topLosersParams?.chains && topLosersParams.chains.length > 0) {\n url.searchParams.append('chains', topLosersParams.chains.join());\n }\n if (topLosersParams?.limit) {\n url.searchParams.append('limit', topLosersParams.limit);\n }\n\n const response = await fetch(url, {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n\n if (!response.ok) {\n throw new Error(\n `Portfolio API request failed with status: ${response.status}`,\n );\n }\n\n return response.json();\n }\n\n async getTopGainersByChains(\n topGainersParams?: TopGainersParams,\n ): Promise<MoralisTokenResponseItem[]> {\n const url = new URL('/tokens-search/top-gainers', this.#baseUrl);\n\n if (topGainersParams?.chains && topGainersParams.chains.length > 0) {\n url.searchParams.append('chains', topGainersParams.chains.join());\n }\n if (topGainersParams?.limit) {\n url.searchParams.append('limit', topGainersParams.limit);\n }\n\n const response = await fetch(url, {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n\n if (!response.ok) {\n throw new Error(\n `Portfolio API request failed with status: ${response.status}`,\n );\n }\n\n return response.json();\n }\n\n async getBlueChipTokensByChains(\n blueChipParams?: BlueChipParams,\n ): Promise<MoralisTokenResponseItem[]> {\n const url = new URL('/tokens-search/blue-chip', this.#baseUrl);\n\n if (blueChipParams?.chains && blueChipParams.chains.length > 0) {\n url.searchParams.append('chains', blueChipParams.chains.join());\n }\n if (blueChipParams?.limit) {\n url.searchParams.append('limit', blueChipParams.limit);\n }\n\n const response = await fetch(url, {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n\n if (!response.ok) {\n throw new Error(\n `Portfolio API request failed with status: ${response.status}`,\n );\n }\n\n return response.json();\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"token-discovery-api-service.d.cts","sourceRoot":"","sources":["../../src/token-discovery-api-service/token-discovery-api-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,mDAA+C;AAC1F,OAAO,KAAK,EACV,wBAAwB,EACxB,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,cAAc,EAEf,qBAAiB;AAElB,qBAAa,wBAAyB,SAAQ,gCAAgC;;gBAGhE,OAAO,EAAE,MAAM;IAuCrB,yBAAyB,CAC7B,oBAAoB,CAAC,EAAE,oBAAoB,GAC1C,OAAO,CAAC,wBAAwB,EAAE,CAAC;IAIhC,oBAAoB,CACxB,eAAe,CAAC,EAAE,eAAe,GAChC,OAAO,CAAC,wBAAwB,EAAE,CAAC;IAIhC,qBAAqB,CACzB,gBAAgB,CAAC,EAAE,gBAAgB,GAClC,OAAO,CAAC,wBAAwB,EAAE,CAAC;IAIhC,yBAAyB,CAC7B,cAAc,CAAC,EAAE,cAAc,GAC9B,OAAO,CAAC,wBAAwB,EAAE,CAAC;CAGvC"}
1
+ {"version":3,"file":"token-discovery-api-service.d.cts","sourceRoot":"","sources":["../../src/token-discovery-api-service/token-discovery-api-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,mDAA+C;AAC1F,OAAO,KAAK,EACV,wBAAwB,EACxB,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,cAAc,EACf,qBAAiB;AAElB,qBAAa,wBAAyB,SAAQ,gCAAgC;;gBAGhE,OAAO,EAAE,MAAM;IAQrB,yBAAyB,CAC7B,oBAAoB,CAAC,EAAE,oBAAoB,GAC1C,OAAO,CAAC,wBAAwB,EAAE,CAAC;IA6BhC,oBAAoB,CACxB,eAAe,CAAC,EAAE,eAAe,GAChC,OAAO,CAAC,wBAAwB,EAAE,CAAC;IA0BhC,qBAAqB,CACzB,gBAAgB,CAAC,EAAE,gBAAgB,GAClC,OAAO,CAAC,wBAAwB,EAAE,CAAC;IA0BhC,yBAAyB,CAC7B,cAAc,CAAC,EAAE,cAAc,GAC9B,OAAO,CAAC,wBAAwB,EAAE,CAAC;CAyBvC"}
@@ -1 +1 @@
1
- {"version":3,"file":"token-discovery-api-service.d.mts","sourceRoot":"","sources":["../../src/token-discovery-api-service/token-discovery-api-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,mDAA+C;AAC1F,OAAO,KAAK,EACV,wBAAwB,EACxB,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,cAAc,EAEf,qBAAiB;AAElB,qBAAa,wBAAyB,SAAQ,gCAAgC;;gBAGhE,OAAO,EAAE,MAAM;IAuCrB,yBAAyB,CAC7B,oBAAoB,CAAC,EAAE,oBAAoB,GAC1C,OAAO,CAAC,wBAAwB,EAAE,CAAC;IAIhC,oBAAoB,CACxB,eAAe,CAAC,EAAE,eAAe,GAChC,OAAO,CAAC,wBAAwB,EAAE,CAAC;IAIhC,qBAAqB,CACzB,gBAAgB,CAAC,EAAE,gBAAgB,GAClC,OAAO,CAAC,wBAAwB,EAAE,CAAC;IAIhC,yBAAyB,CAC7B,cAAc,CAAC,EAAE,cAAc,GAC9B,OAAO,CAAC,wBAAwB,EAAE,CAAC;CAGvC"}
1
+ {"version":3,"file":"token-discovery-api-service.d.mts","sourceRoot":"","sources":["../../src/token-discovery-api-service/token-discovery-api-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,mDAA+C;AAC1F,OAAO,KAAK,EACV,wBAAwB,EACxB,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,cAAc,EACf,qBAAiB;AAElB,qBAAa,wBAAyB,SAAQ,gCAAgC;;gBAGhE,OAAO,EAAE,MAAM;IAQrB,yBAAyB,CAC7B,oBAAoB,CAAC,EAAE,oBAAoB,GAC1C,OAAO,CAAC,wBAAwB,EAAE,CAAC;IA6BhC,oBAAoB,CACxB,eAAe,CAAC,EAAE,eAAe,GAChC,OAAO,CAAC,wBAAwB,EAAE,CAAC;IA0BhC,qBAAqB,CACzB,gBAAgB,CAAC,EAAE,gBAAgB,GAClC,OAAO,CAAC,wBAAwB,EAAE,CAAC;IA0BhC,yBAAyB,CAC7B,cAAc,CAAC,EAAE,cAAc,GAC9B,OAAO,CAAC,wBAAwB,EAAE,CAAC;CAyBvC"}
@@ -9,12 +9,11 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
9
9
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
10
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
11
  };
12
- var _TokenDiscoveryApiService_instances, _TokenDiscoveryApiService_baseUrl, _TokenDiscoveryApiService_fetch;
12
+ var _TokenDiscoveryApiService_baseUrl;
13
13
  import { AbstractTokenDiscoveryApiService } from "./abstract-token-discovery-api-service.mjs";
14
14
  export class TokenDiscoveryApiService extends AbstractTokenDiscoveryApiService {
15
15
  constructor(baseUrl) {
16
16
  super();
17
- _TokenDiscoveryApiService_instances.add(this);
18
17
  _TokenDiscoveryApiService_baseUrl.set(this, void 0);
19
18
  if (!baseUrl) {
20
19
  throw new Error('Portfolio API URL is not set');
@@ -22,38 +21,82 @@ export class TokenDiscoveryApiService extends AbstractTokenDiscoveryApiService {
22
21
  __classPrivateFieldSet(this, _TokenDiscoveryApiService_baseUrl, baseUrl, "f");
23
22
  }
24
23
  async getTrendingTokensByChains(trendingTokensParams) {
25
- return __classPrivateFieldGet(this, _TokenDiscoveryApiService_instances, "m", _TokenDiscoveryApiService_fetch).call(this, 'trending', trendingTokensParams);
24
+ const url = new URL('/tokens-search/trending', __classPrivateFieldGet(this, _TokenDiscoveryApiService_baseUrl, "f"));
25
+ if (trendingTokensParams?.chains &&
26
+ trendingTokensParams.chains.length > 0) {
27
+ url.searchParams.append('chains', trendingTokensParams.chains.join());
28
+ }
29
+ if (trendingTokensParams?.limit) {
30
+ url.searchParams.append('limit', trendingTokensParams.limit);
31
+ }
32
+ const response = await fetch(url, {
33
+ method: 'GET',
34
+ headers: {
35
+ 'Content-Type': 'application/json',
36
+ },
37
+ });
38
+ if (!response.ok) {
39
+ throw new Error(`Portfolio API request failed with status: ${response.status}`);
40
+ }
41
+ return response.json();
26
42
  }
27
43
  async getTopLosersByChains(topLosersParams) {
28
- return __classPrivateFieldGet(this, _TokenDiscoveryApiService_instances, "m", _TokenDiscoveryApiService_fetch).call(this, 'top-losers', topLosersParams);
44
+ const url = new URL('/tokens-search/top-losers', __classPrivateFieldGet(this, _TokenDiscoveryApiService_baseUrl, "f"));
45
+ if (topLosersParams?.chains && topLosersParams.chains.length > 0) {
46
+ url.searchParams.append('chains', topLosersParams.chains.join());
47
+ }
48
+ if (topLosersParams?.limit) {
49
+ url.searchParams.append('limit', topLosersParams.limit);
50
+ }
51
+ const response = await fetch(url, {
52
+ method: 'GET',
53
+ headers: {
54
+ 'Content-Type': 'application/json',
55
+ },
56
+ });
57
+ if (!response.ok) {
58
+ throw new Error(`Portfolio API request failed with status: ${response.status}`);
59
+ }
60
+ return response.json();
29
61
  }
30
62
  async getTopGainersByChains(topGainersParams) {
31
- return __classPrivateFieldGet(this, _TokenDiscoveryApiService_instances, "m", _TokenDiscoveryApiService_fetch).call(this, 'top-gainers', topGainersParams);
63
+ const url = new URL('/tokens-search/top-gainers', __classPrivateFieldGet(this, _TokenDiscoveryApiService_baseUrl, "f"));
64
+ if (topGainersParams?.chains && topGainersParams.chains.length > 0) {
65
+ url.searchParams.append('chains', topGainersParams.chains.join());
66
+ }
67
+ if (topGainersParams?.limit) {
68
+ url.searchParams.append('limit', topGainersParams.limit);
69
+ }
70
+ const response = await fetch(url, {
71
+ method: 'GET',
72
+ headers: {
73
+ 'Content-Type': 'application/json',
74
+ },
75
+ });
76
+ if (!response.ok) {
77
+ throw new Error(`Portfolio API request failed with status: ${response.status}`);
78
+ }
79
+ return response.json();
32
80
  }
33
81
  async getBlueChipTokensByChains(blueChipParams) {
34
- return __classPrivateFieldGet(this, _TokenDiscoveryApiService_instances, "m", _TokenDiscoveryApiService_fetch).call(this, 'blue-chip', blueChipParams);
82
+ const url = new URL('/tokens-search/blue-chip', __classPrivateFieldGet(this, _TokenDiscoveryApiService_baseUrl, "f"));
83
+ if (blueChipParams?.chains && blueChipParams.chains.length > 0) {
84
+ url.searchParams.append('chains', blueChipParams.chains.join());
85
+ }
86
+ if (blueChipParams?.limit) {
87
+ url.searchParams.append('limit', blueChipParams.limit);
88
+ }
89
+ const response = await fetch(url, {
90
+ method: 'GET',
91
+ headers: {
92
+ 'Content-Type': 'application/json',
93
+ },
94
+ });
95
+ if (!response.ok) {
96
+ throw new Error(`Portfolio API request failed with status: ${response.status}`);
97
+ }
98
+ return response.json();
35
99
  }
36
100
  }
37
- _TokenDiscoveryApiService_baseUrl = new WeakMap(), _TokenDiscoveryApiService_instances = new WeakSet(), _TokenDiscoveryApiService_fetch = async function _TokenDiscoveryApiService_fetch(subPath, params) {
38
- const url = new URL(`/tokens-search/${subPath}`, __classPrivateFieldGet(this, _TokenDiscoveryApiService_baseUrl, "f"));
39
- if (params?.chains && params.chains.length > 0) {
40
- url.searchParams.append('chains', params.chains.join());
41
- }
42
- if (params?.limit) {
43
- url.searchParams.append('limit', params.limit);
44
- }
45
- if (params?.swappable) {
46
- url.searchParams.append('swappable', 'true');
47
- }
48
- const response = await fetch(url, {
49
- method: 'GET',
50
- headers: {
51
- 'Content-Type': 'application/json',
52
- },
53
- });
54
- if (!response.ok) {
55
- throw new Error(`Portfolio API request failed with status: ${response.status}`);
56
- }
57
- return response.json();
58
- };
101
+ _TokenDiscoveryApiService_baseUrl = new WeakMap();
59
102
  //# sourceMappingURL=token-discovery-api-service.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"token-discovery-api-service.mjs","sourceRoot":"","sources":["../../src/token-discovery-api-service/token-discovery-api-service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,gCAAgC,EAAE,mDAA+C;AAU1F,MAAM,OAAO,wBAAyB,SAAQ,gCAAgC;IAG5E,YAAY,OAAe;QACzB,KAAK,EAAE,CAAC;;QAHD,oDAAiB;QAIxB,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;SACjD;QACD,uBAAA,IAAI,qCAAY,OAAO,MAAA,CAAC;IAC1B,CAAC;IAiCD,KAAK,CAAC,yBAAyB,CAC7B,oBAA2C;QAE3C,OAAO,uBAAA,IAAI,4EAAO,MAAX,IAAI,EAAQ,UAAU,EAAE,oBAAoB,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,eAAiC;QAEjC,OAAO,uBAAA,IAAI,4EAAO,MAAX,IAAI,EAAQ,YAAY,EAAE,eAAe,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,gBAAmC;QAEnC,OAAO,uBAAA,IAAI,4EAAO,MAAX,IAAI,EAAQ,aAAa,EAAE,gBAAgB,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC7B,cAA+B;QAE/B,OAAO,uBAAA,IAAI,4EAAO,MAAX,IAAI,EAAQ,WAAW,EAAE,cAAc,CAAC,CAAC;IAClD,CAAC;CACF;0IAtDC,KAAK,0CAAQ,OAAe,EAAE,MAAmB;IAC/C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,kBAAkB,OAAO,EAAE,EAAE,uBAAA,IAAI,yCAAS,CAAC,CAAC;IAEhE,IAAI,MAAM,EAAE,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;QAC9C,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;KACzD;IAED,IAAI,MAAM,EAAE,KAAK,EAAE;QACjB,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;KAChD;IAED,IAAI,MAAM,EAAE,SAAS,EAAE;QACrB,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;KAC9C;IAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAChC,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;QAChB,MAAM,IAAI,KAAK,CACb,6CAA6C,QAAQ,CAAC,MAAM,EAAE,CAC/D,CAAC;KACH;IAED,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC","sourcesContent":["import { AbstractTokenDiscoveryApiService } from './abstract-token-discovery-api-service';\nimport type {\n MoralisTokenResponseItem,\n TopGainersParams,\n TopLosersParams,\n TrendingTokensParams,\n BlueChipParams,\n ParamsBase,\n} from '../types';\n\nexport class TokenDiscoveryApiService extends AbstractTokenDiscoveryApiService {\n readonly #baseUrl: string;\n\n constructor(baseUrl: string) {\n super();\n if (!baseUrl) {\n throw new Error('Portfolio API URL is not set');\n }\n this.#baseUrl = baseUrl;\n }\n\n async #fetch(subPath: string, params?: ParamsBase) {\n const url = new URL(`/tokens-search/${subPath}`, this.#baseUrl);\n\n if (params?.chains && params.chains.length > 0) {\n url.searchParams.append('chains', params.chains.join());\n }\n\n if (params?.limit) {\n url.searchParams.append('limit', params.limit);\n }\n\n if (params?.swappable) {\n url.searchParams.append('swappable', 'true');\n }\n\n const response = await fetch(url, {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n\n if (!response.ok) {\n throw new Error(\n `Portfolio API request failed with status: ${response.status}`,\n );\n }\n\n return response.json();\n }\n\n async getTrendingTokensByChains(\n trendingTokensParams?: TrendingTokensParams,\n ): Promise<MoralisTokenResponseItem[]> {\n return this.#fetch('trending', trendingTokensParams);\n }\n\n async getTopLosersByChains(\n topLosersParams?: TopLosersParams,\n ): Promise<MoralisTokenResponseItem[]> {\n return this.#fetch('top-losers', topLosersParams);\n }\n\n async getTopGainersByChains(\n topGainersParams?: TopGainersParams,\n ): Promise<MoralisTokenResponseItem[]> {\n return this.#fetch('top-gainers', topGainersParams);\n }\n\n async getBlueChipTokensByChains(\n blueChipParams?: BlueChipParams,\n ): Promise<MoralisTokenResponseItem[]> {\n return this.#fetch('blue-chip', blueChipParams);\n }\n}\n"]}
1
+ {"version":3,"file":"token-discovery-api-service.mjs","sourceRoot":"","sources":["../../src/token-discovery-api-service/token-discovery-api-service.ts"],"names":[],"mappings":"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","sourcesContent":["import { AbstractTokenDiscoveryApiService } from './abstract-token-discovery-api-service';\nimport type {\n MoralisTokenResponseItem,\n TopGainersParams,\n TopLosersParams,\n TrendingTokensParams,\n BlueChipParams,\n} from '../types';\n\nexport class TokenDiscoveryApiService extends AbstractTokenDiscoveryApiService {\n readonly #baseUrl: string;\n\n constructor(baseUrl: string) {\n super();\n if (!baseUrl) {\n throw new Error('Portfolio API URL is not set');\n }\n this.#baseUrl = baseUrl;\n }\n\n async getTrendingTokensByChains(\n trendingTokensParams?: TrendingTokensParams,\n ): Promise<MoralisTokenResponseItem[]> {\n const url = new URL('/tokens-search/trending', this.#baseUrl);\n\n if (\n trendingTokensParams?.chains &&\n trendingTokensParams.chains.length > 0\n ) {\n url.searchParams.append('chains', trendingTokensParams.chains.join());\n }\n if (trendingTokensParams?.limit) {\n url.searchParams.append('limit', trendingTokensParams.limit);\n }\n\n const response = await fetch(url, {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n\n if (!response.ok) {\n throw new Error(\n `Portfolio API request failed with status: ${response.status}`,\n );\n }\n\n return response.json();\n }\n\n async getTopLosersByChains(\n topLosersParams?: TopLosersParams,\n ): Promise<MoralisTokenResponseItem[]> {\n const url = new URL('/tokens-search/top-losers', this.#baseUrl);\n\n if (topLosersParams?.chains && topLosersParams.chains.length > 0) {\n url.searchParams.append('chains', topLosersParams.chains.join());\n }\n if (topLosersParams?.limit) {\n url.searchParams.append('limit', topLosersParams.limit);\n }\n\n const response = await fetch(url, {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n\n if (!response.ok) {\n throw new Error(\n `Portfolio API request failed with status: ${response.status}`,\n );\n }\n\n return response.json();\n }\n\n async getTopGainersByChains(\n topGainersParams?: TopGainersParams,\n ): Promise<MoralisTokenResponseItem[]> {\n const url = new URL('/tokens-search/top-gainers', this.#baseUrl);\n\n if (topGainersParams?.chains && topGainersParams.chains.length > 0) {\n url.searchParams.append('chains', topGainersParams.chains.join());\n }\n if (topGainersParams?.limit) {\n url.searchParams.append('limit', topGainersParams.limit);\n }\n\n const response = await fetch(url, {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n\n if (!response.ok) {\n throw new Error(\n `Portfolio API request failed with status: ${response.status}`,\n );\n }\n\n return response.json();\n }\n\n async getBlueChipTokensByChains(\n blueChipParams?: BlueChipParams,\n ): Promise<MoralisTokenResponseItem[]> {\n const url = new URL('/tokens-search/blue-chip', this.#baseUrl);\n\n if (blueChipParams?.chains && blueChipParams.chains.length > 0) {\n url.searchParams.append('chains', blueChipParams.chains.join());\n }\n if (blueChipParams?.limit) {\n url.searchParams.append('limit', blueChipParams.limit);\n }\n\n const response = await fetch(url, {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n\n if (!response.ok) {\n throw new Error(\n `Portfolio API request failed with status: ${response.status}`,\n );\n }\n\n return response.json();\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"types.cjs","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA,kBAAkB","sourcesContent":["// Function params\n\nexport type ParamsBase = {\n chains?: string[];\n limit?: string;\n swappable?: boolean;\n};\n\nexport type TokenSearchParams = Omit<ParamsBase, 'swappable'> & {\n query?: string;\n};\n\nexport type SwappableTokenSearchParams = {\n limit?: string;\n query: string;\n};\n\nexport type TrendingTokensParams = ParamsBase;\n\nexport type TopLosersParams = ParamsBase;\n\nexport type TopGainersParams = ParamsBase;\n\nexport type BlueChipParams = ParamsBase;\n\n// API response types\n\nexport type TokenSearchResponseItem = {\n tokenAddress: string;\n chainId: string;\n name: string;\n symbol: string;\n usdPrice: number;\n usdPricePercentChange: {\n oneDay: number;\n };\n logoUrl?: string;\n};\n\nexport type MoralisTokenResponseItem = {\n chain_id: string;\n token_address: string;\n token_logo: string;\n token_name: string;\n token_symbol: string;\n price_usd: number;\n token_age_in_days: number;\n on_chain_strength_index: number;\n security_score: number;\n market_cap: number;\n fully_diluted_valuation: number;\n twitter_followers: number;\n holders_change: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n liquidity_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n experienced_net_buyers_change: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n volume_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n net_volume_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n price_percent_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n};\n"]}
1
+ {"version":3,"file":"types.cjs","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA,kBAAkB","sourcesContent":["// Function params\n\ntype ParamsBase = {\n chains?: string[];\n limit?: string;\n};\n\nexport type TokenSearchParams = ParamsBase & {\n query?: string;\n};\n\nexport type SwappableTokenSearchParams = {\n limit?: string;\n query: string;\n};\n\nexport type TrendingTokensParams = ParamsBase;\n\nexport type TopLosersParams = ParamsBase;\n\nexport type TopGainersParams = ParamsBase;\n\nexport type BlueChipParams = ParamsBase;\n\n// API response types\n\nexport type TokenSearchResponseItem = {\n tokenAddress: string;\n chainId: string;\n name: string;\n symbol: string;\n usdPrice: number;\n usdPricePercentChange: {\n oneDay: number;\n };\n logoUrl?: string;\n};\n\nexport type MoralisTokenResponseItem = {\n chain_id: string;\n token_address: string;\n token_logo: string;\n token_name: string;\n token_symbol: string;\n price_usd: number;\n token_age_in_days: number;\n on_chain_strength_index: number;\n security_score: number;\n market_cap: number;\n fully_diluted_valuation: number;\n twitter_followers: number;\n holders_change: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n liquidity_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n experienced_net_buyers_change: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n volume_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n net_volume_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n price_percent_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n};\n"]}
package/dist/types.d.cts CHANGED
@@ -1,9 +1,8 @@
1
- export type ParamsBase = {
1
+ type ParamsBase = {
2
2
  chains?: string[];
3
3
  limit?: string;
4
- swappable?: boolean;
5
4
  };
6
- export type TokenSearchParams = Omit<ParamsBase, 'swappable'> & {
5
+ export type TokenSearchParams = ParamsBase & {
7
6
  query?: string;
8
7
  };
9
8
  export type SwappableTokenSearchParams = {
@@ -75,4 +74,5 @@ export type MoralisTokenResponseItem = {
75
74
  '1M': number | null;
76
75
  };
77
76
  };
77
+ export {};
78
78
  //# sourceMappingURL=types.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.cts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.cts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.d.mts CHANGED
@@ -1,9 +1,8 @@
1
- export type ParamsBase = {
1
+ type ParamsBase = {
2
2
  chains?: string[];
3
3
  limit?: string;
4
- swappable?: boolean;
5
4
  };
6
- export type TokenSearchParams = Omit<ParamsBase, 'swappable'> & {
5
+ export type TokenSearchParams = ParamsBase & {
7
6
  query?: string;
8
7
  };
9
8
  export type SwappableTokenSearchParams = {
@@ -75,4 +74,5 @@ export type MoralisTokenResponseItem = {
75
74
  '1M': number | null;
76
75
  };
77
76
  };
77
+ export {};
78
78
  //# sourceMappingURL=types.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.mts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.mts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.mjs","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,kBAAkB","sourcesContent":["// Function params\n\nexport type ParamsBase = {\n chains?: string[];\n limit?: string;\n swappable?: boolean;\n};\n\nexport type TokenSearchParams = Omit<ParamsBase, 'swappable'> & {\n query?: string;\n};\n\nexport type SwappableTokenSearchParams = {\n limit?: string;\n query: string;\n};\n\nexport type TrendingTokensParams = ParamsBase;\n\nexport type TopLosersParams = ParamsBase;\n\nexport type TopGainersParams = ParamsBase;\n\nexport type BlueChipParams = ParamsBase;\n\n// API response types\n\nexport type TokenSearchResponseItem = {\n tokenAddress: string;\n chainId: string;\n name: string;\n symbol: string;\n usdPrice: number;\n usdPricePercentChange: {\n oneDay: number;\n };\n logoUrl?: string;\n};\n\nexport type MoralisTokenResponseItem = {\n chain_id: string;\n token_address: string;\n token_logo: string;\n token_name: string;\n token_symbol: string;\n price_usd: number;\n token_age_in_days: number;\n on_chain_strength_index: number;\n security_score: number;\n market_cap: number;\n fully_diluted_valuation: number;\n twitter_followers: number;\n holders_change: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n liquidity_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n experienced_net_buyers_change: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n volume_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n net_volume_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n price_percent_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n};\n"]}
1
+ {"version":3,"file":"types.mjs","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,kBAAkB","sourcesContent":["// Function params\n\ntype ParamsBase = {\n chains?: string[];\n limit?: string;\n};\n\nexport type TokenSearchParams = ParamsBase & {\n query?: string;\n};\n\nexport type SwappableTokenSearchParams = {\n limit?: string;\n query: string;\n};\n\nexport type TrendingTokensParams = ParamsBase;\n\nexport type TopLosersParams = ParamsBase;\n\nexport type TopGainersParams = ParamsBase;\n\nexport type BlueChipParams = ParamsBase;\n\n// API response types\n\nexport type TokenSearchResponseItem = {\n tokenAddress: string;\n chainId: string;\n name: string;\n symbol: string;\n usdPrice: number;\n usdPricePercentChange: {\n oneDay: number;\n };\n logoUrl?: string;\n};\n\nexport type MoralisTokenResponseItem = {\n chain_id: string;\n token_address: string;\n token_logo: string;\n token_name: string;\n token_symbol: string;\n price_usd: number;\n token_age_in_days: number;\n on_chain_strength_index: number;\n security_score: number;\n market_cap: number;\n fully_diluted_valuation: number;\n twitter_followers: number;\n holders_change: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n liquidity_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n experienced_net_buyers_change: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n volume_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n net_volume_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n price_percent_change_usd: {\n '1h': number | null;\n '1d': number | null;\n '1w': number | null;\n '1M': number | null;\n };\n};\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metamask-previews/token-search-discovery-controller",
3
- "version": "3.1.0-preview-e91a391a",
3
+ "version": "3.1.0-preview-e96d94ef",
4
4
  "description": "Manages token search and discovery through the Portfolio API",
5
5
  "keywords": [
6
6
  "MetaMask",