dcl-catalyst-client 21.7.1-12277301217.commit-6c8e5bb → 21.8.0
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.
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { Entity } from '@dcl/schemas';
|
|
4
4
|
import { IFetchComponent, RequestOptions } from '@well-known-components/interfaces';
|
|
5
5
|
import FormData from 'form-data';
|
|
6
|
-
import { ClientOptions, DeploymentData } from './types';
|
|
6
|
+
import { ClientOptions, DeploymentData, ParallelConfig } from './types';
|
|
7
7
|
export type AvailableContentResult = {
|
|
8
8
|
cid: string;
|
|
9
9
|
available: boolean;
|
|
@@ -12,8 +12,12 @@ export type ContentClient = {
|
|
|
12
12
|
buildEntityFormDataForDeployment(deployData: DeploymentData, options?: RequestOptions): Promise<FormData>;
|
|
13
13
|
/** Retrieve / Download */
|
|
14
14
|
fetchEntitiesByPointers(pointers: string[], options?: RequestOptions): Promise<Entity[]>;
|
|
15
|
-
fetchEntitiesByIds(ids: string[], options?: RequestOptions
|
|
16
|
-
|
|
15
|
+
fetchEntitiesByIds(ids: string[], options?: RequestOptions & {
|
|
16
|
+
parallel?: ParallelConfig;
|
|
17
|
+
}): Promise<Entity[]>;
|
|
18
|
+
fetchEntityById(id: string, options?: RequestOptions & {
|
|
19
|
+
parallel?: ParallelConfig;
|
|
20
|
+
}): Promise<Entity>;
|
|
17
21
|
downloadContent(contentHash: string, options?: RequestOptions & {
|
|
18
22
|
avoidChecks?: boolean;
|
|
19
23
|
}): Promise<Buffer>;
|
|
@@ -22,6 +26,16 @@ export type ContentClient = {
|
|
|
22
26
|
* Deploys an entity to the content server.
|
|
23
27
|
*/
|
|
24
28
|
deploy(deployData: DeploymentData, options?: RequestOptions): Promise<unknown>;
|
|
29
|
+
/**
|
|
30
|
+
* Checks if a pointer is consistent across multiple content servers
|
|
31
|
+
*/
|
|
32
|
+
checkPointerConsistency(pointer: string, options?: RequestOptions & {
|
|
33
|
+
parallel?: ParallelConfig;
|
|
34
|
+
}): Promise<{
|
|
35
|
+
isConsistent: boolean;
|
|
36
|
+
upToDateEntities?: Entity[];
|
|
37
|
+
outdatedEntities?: Entity[];
|
|
38
|
+
}>;
|
|
25
39
|
};
|
|
26
40
|
export declare function downloadContent(fetcher: IFetchComponent, baseUrl: string, contentHash: string, options?: Partial<RequestOptions> & {
|
|
27
41
|
avoidChecks?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentClient.d.ts","sourceRoot":"","sources":["../../src/client/ContentClient.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AACnF,OAAO,QAAQ,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"ContentClient.d.ts","sourceRoot":"","sources":["../../src/client/ContentClient.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AACnF,OAAO,QAAQ,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAWvE,MAAM,MAAM,sBAAsB,GAAG;IACnC,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,OAAO,CAAA;CACnB,EAAE,CAAA;AAEH,MAAM,MAAM,aAAa,GAAG;IAC1B,gCAAgC,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IAEzG,0BAA0B;IAC1B,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IACxF,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG;QAAE,QAAQ,CAAC,EAAE,cAAc,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IAC9G,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG;QAAE,QAAQ,CAAC,EAAE,cAAc,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACtG,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG;QAAE,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAE3G,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAA;IAE7F;;OAEG;IACH,MAAM,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAE9E;;OAEG;IACH,uBAAuB,CACrB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,cAAc,GAAG;QAAE,QAAQ,CAAC,EAAE,cAAc,CAAA;KAAE,GACvD,OAAO,CAAC;QACT,YAAY,EAAE,OAAO,CAAA;QACrB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;QAC3B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;KAC5B,CAAC,CAAA;CACH,CAAA;AAED,wBAAsB,eAAe,CACnC,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG;IAAE,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5D,OAAO,CAAC,MAAM,CAAC,CAsBjB;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,aAAa,GAAG,aAAa,CA6PzE"}
|
|
@@ -32,8 +32,74 @@ async function downloadContent(fetcher, baseUrl, contentHash, options) {
|
|
|
32
32
|
}
|
|
33
33
|
exports.downloadContent = downloadContent;
|
|
34
34
|
function createContentClient(options) {
|
|
35
|
-
const { fetcher } = options;
|
|
35
|
+
const { fetcher, logger } = options;
|
|
36
36
|
const contentUrl = (0, Helper_1.sanitizeUrl)(options.url);
|
|
37
|
+
const defaultParallelConfig = options === null || options === void 0 ? void 0 : options.parallelConfig;
|
|
38
|
+
async function fetchFromMultipleServersRace(urls, path, requestOptions) {
|
|
39
|
+
const controller = new AbortController();
|
|
40
|
+
const signal = controller.signal;
|
|
41
|
+
const requestOptionsWithSignal = (0, Helper_1.mergeRequestOptions)(requestOptions, { signal });
|
|
42
|
+
return new Promise(async (resolve) => {
|
|
43
|
+
let pendingRequests = urls.length;
|
|
44
|
+
const markRequestAsComplete = () => {
|
|
45
|
+
pendingRequests--;
|
|
46
|
+
if (pendingRequests === 0) {
|
|
47
|
+
resolve([]);
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
const handleSuccess = (entities) => {
|
|
51
|
+
if (entities && Array.isArray(entities) && entities.length > 0) {
|
|
52
|
+
controller.abort();
|
|
53
|
+
resolve(entities);
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
return false;
|
|
57
|
+
};
|
|
58
|
+
urls.forEach(async (url) => {
|
|
59
|
+
try {
|
|
60
|
+
const serverUrl = (0, Helper_1.sanitizeUrl)(url);
|
|
61
|
+
const response = await fetcher.fetch(`${serverUrl}${path}`, requestOptionsWithSignal);
|
|
62
|
+
if (signal.aborted) {
|
|
63
|
+
markRequestAsComplete();
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
const entities = await response.json();
|
|
67
|
+
if (!handleSuccess(entities)) {
|
|
68
|
+
markRequestAsComplete();
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
catch (error) {
|
|
72
|
+
if (!signal.aborted) {
|
|
73
|
+
logger === null || logger === void 0 ? void 0 : logger.warn(`Failed to fetch from ${url}:`, error);
|
|
74
|
+
}
|
|
75
|
+
markRequestAsComplete();
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
async function fetchFromMultipleServersAll(urls, path, requestOptions) {
|
|
81
|
+
const results = await Promise.allSettled(urls.map(async (url) => {
|
|
82
|
+
try {
|
|
83
|
+
const serverUrl = (0, Helper_1.sanitizeUrl)(url);
|
|
84
|
+
const response = await fetcher.fetch(`${serverUrl}${path}`, requestOptions);
|
|
85
|
+
return await response.json();
|
|
86
|
+
}
|
|
87
|
+
catch (error) {
|
|
88
|
+
logger === null || logger === void 0 ? void 0 : logger.warn(`Failed to fetch from ${url}:`, error);
|
|
89
|
+
return [];
|
|
90
|
+
}
|
|
91
|
+
}));
|
|
92
|
+
const allEntities = results
|
|
93
|
+
.filter((result) => result.status === 'fulfilled')
|
|
94
|
+
.flatMap((result) => result.value);
|
|
95
|
+
const uniqueEntities = new Map();
|
|
96
|
+
allEntities.forEach((entity) => {
|
|
97
|
+
if (!uniqueEntities.has(entity.id) || entity.timestamp > uniqueEntities.get(entity.id).timestamp) {
|
|
98
|
+
uniqueEntities.set(entity.id, entity);
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
return Array.from(uniqueEntities.values());
|
|
102
|
+
}
|
|
37
103
|
async function buildEntityFormDataForDeployment(deployData, options) {
|
|
38
104
|
// Check if we are running in node or browser
|
|
39
105
|
const areWeRunningInNode = (0, Helper_1.isNode)();
|
|
@@ -83,6 +149,10 @@ function createContentClient(options) {
|
|
|
83
149
|
method: 'POST',
|
|
84
150
|
headers: { 'Content-Type': 'application/json' }
|
|
85
151
|
});
|
|
152
|
+
const parallelConfig = (options === null || options === void 0 ? void 0 : options.parallel) || defaultParallelConfig;
|
|
153
|
+
if ((parallelConfig === null || parallelConfig === void 0 ? void 0 : parallelConfig.urls) && (parallelConfig === null || parallelConfig === void 0 ? void 0 : parallelConfig.urls.length) > 0) {
|
|
154
|
+
return fetchFromMultipleServersRace([contentUrl, ...parallelConfig.urls], '/entities/active', requestOptions);
|
|
155
|
+
}
|
|
86
156
|
return (await fetcher.fetch(`${contentUrl}/entities/active`, requestOptions)).json();
|
|
87
157
|
}
|
|
88
158
|
async function fetchEntityById(id, options) {
|
|
@@ -111,6 +181,29 @@ function createContentClient(options) {
|
|
|
111
181
|
const alreadyUploaded = result.filter(($) => $.available).map(({ cid }) => cid);
|
|
112
182
|
return new Set(alreadyUploaded);
|
|
113
183
|
}
|
|
184
|
+
async function checkPointerConsistency(pointer, options) {
|
|
185
|
+
const parallelConfig = (options === null || options === void 0 ? void 0 : options.parallel) || defaultParallelConfig;
|
|
186
|
+
if (!(parallelConfig === null || parallelConfig === void 0 ? void 0 : parallelConfig.urls) || parallelConfig.urls.length === 0) {
|
|
187
|
+
throw new Error('Parallel configuration is required for checking pointer consistency');
|
|
188
|
+
}
|
|
189
|
+
const requestOptions = (0, Helper_1.mergeRequestOptions)(options ? options : {}, {
|
|
190
|
+
body: JSON.stringify({ pointers: [pointer] }),
|
|
191
|
+
method: 'POST',
|
|
192
|
+
headers: { 'Content-Type': 'application/json' }
|
|
193
|
+
});
|
|
194
|
+
const entities = await fetchFromMultipleServersAll([contentUrl, ...parallelConfig.urls], '/entities/active', requestOptions);
|
|
195
|
+
if (entities.length === 0) {
|
|
196
|
+
return { isConsistent: true };
|
|
197
|
+
}
|
|
198
|
+
const newestTimestamp = Math.max(...entities.map((e) => e.timestamp));
|
|
199
|
+
const newerEntities = entities.filter((e) => e.timestamp === newestTimestamp);
|
|
200
|
+
const olderEntities = entities.filter((e) => e.timestamp < newestTimestamp);
|
|
201
|
+
return {
|
|
202
|
+
isConsistent: olderEntities.length === 0,
|
|
203
|
+
upToDateEntities: newerEntities.length > 0 ? newerEntities : undefined,
|
|
204
|
+
outdatedEntities: olderEntities.length > 0 ? olderEntities : undefined
|
|
205
|
+
};
|
|
206
|
+
}
|
|
114
207
|
return {
|
|
115
208
|
buildEntityFormDataForDeployment,
|
|
116
209
|
fetchEntitiesByPointers,
|
|
@@ -120,7 +213,8 @@ function createContentClient(options) {
|
|
|
120
213
|
return downloadContent(fetcher, contentUrl + '/contents', contentHash, options);
|
|
121
214
|
},
|
|
122
215
|
deploy,
|
|
123
|
-
isContentAvailable
|
|
216
|
+
isContentAvailable,
|
|
217
|
+
checkPointerConsistency
|
|
124
218
|
};
|
|
125
219
|
}
|
|
126
220
|
exports.createContentClient = createContentClient;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentClient.js","sourceRoot":"","sources":["../../src/client/ContentClient.ts"],"names":[],"mappings":";;;;;;AAAA,0CAA6C;AAG7C,0DAAgC;AAEhC,2CAA4G;AAC5G,yCAAqC;AAErC,SAAS,eAAe,CAAC,KAA0B;IACjD,IAAI,KAAK,CAAC,MAAM,EAAE;QAChB,OAAO,KAAK,CAAC,MAAM,CAAA;KACpB;IACD,OAAO,KAAK,CAAA;AACd,CAAC;
|
|
1
|
+
{"version":3,"file":"ContentClient.js","sourceRoot":"","sources":["../../src/client/ContentClient.ts"],"names":[],"mappings":"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"}
|
package/dist/client/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AuthChain, EntityType } from '@dcl/schemas';
|
|
2
|
-
import { IFetchComponent } from '@well-known-components/interfaces';
|
|
2
|
+
import { IFetchComponent, ILoggerComponent } from '@well-known-components/interfaces';
|
|
3
3
|
export type DeploymentPreparationData = {
|
|
4
4
|
entityId: string;
|
|
5
5
|
files: Map<string, Uint8Array>;
|
|
@@ -26,8 +26,18 @@ export type ServerMetadata = {
|
|
|
26
26
|
owner: string;
|
|
27
27
|
id: string;
|
|
28
28
|
};
|
|
29
|
+
export type ParallelConfig = {
|
|
30
|
+
urls: string[];
|
|
31
|
+
};
|
|
29
32
|
export type ClientOptions = {
|
|
30
33
|
url: string;
|
|
31
34
|
fetcher: IFetchComponent;
|
|
35
|
+
logger?: ILoggerComponent.ILogger;
|
|
36
|
+
/**
|
|
37
|
+
* When set, the client will fetch entities from the given urls in parallel
|
|
38
|
+
* and return the first successful response.
|
|
39
|
+
* @type {ParallelConfig}
|
|
40
|
+
*/
|
|
41
|
+
parallelConfig?: ParallelConfig;
|
|
32
42
|
};
|
|
33
43
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/client/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/client/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AAErF,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;CAC/B,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,yBAAyB,GAAG;IACvD,SAAS,EAAE,SAAS,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,UAAU,CAAA;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAC/B,QAAQ,CAAC,EAAE,GAAG,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG;IAC3C,IAAI,EAAE,UAAU,CAAA;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACjC,QAAQ,CAAC,EAAE,GAAG,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,MAAM,CAAA;CACX,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,MAAM,EAAE,CAAA;CACf,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,eAAe,CAAA;IACxB,MAAM,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAA;IACjC;;;;OAIG;IACH,cAAc,CAAC,EAAE,cAAc,CAAA;CAChC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dcl-catalyst-client",
|
|
3
|
-
"version": "21.
|
|
4
|
-
"commit": "
|
|
3
|
+
"version": "21.8.0",
|
|
4
|
+
"commit": "656ad580a2a3a0f35895c31de227e56b23216c1b",
|
|
5
5
|
"description": "A client to query and perform changes on Decentraland's catalyst servers",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"typings": "dist/index.d.ts",
|