@dcl/sdk 7.1.4-4601317654.commit-d2ae6e4 → 7.1.4-4608901735.commit-37cc11b
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/composite-provider.js +9 -7
- package/package.json +6 -6
- package/src/composite-provider.ts +12 -7
- package/src/with-composite.ts +1 -1
- package/with-composite.js +2 -2
package/composite-provider.js
CHANGED
@@ -6,31 +6,33 @@ export async function createContentFetchCompositeProvider() {
|
|
6
6
|
const path = item.file.toLowerCase();
|
7
7
|
return path.endsWith('.composite') || path.endsWith('.composite.json');
|
8
8
|
});
|
9
|
-
|
9
|
+
async function fetchComposite(item) {
|
10
|
+
const src = item.file.toLowerCase();
|
10
11
|
const compositeUrl = `${scene.baseUrl}${item.hash}`;
|
11
12
|
try {
|
12
13
|
const response = await fetch(compositeUrl);
|
13
14
|
if (item.file.endsWith('.json')) {
|
14
15
|
const compositeJson = await response.json();
|
15
16
|
const composite = Composite.fromJson(compositeJson);
|
16
|
-
return composite;
|
17
|
+
return { src, composite };
|
17
18
|
}
|
18
19
|
else {
|
19
20
|
const compositeBinaryData = await response.arrayBuffer();
|
20
21
|
const composite = Composite.fromBinary(compositeBinaryData);
|
21
|
-
return composite;
|
22
|
+
return { src, composite };
|
22
23
|
}
|
23
24
|
}
|
24
25
|
catch (err) {
|
25
26
|
console.error(`Error loading composite ${compositeUrl}: ${err.toString()}`);
|
26
27
|
return null;
|
27
28
|
}
|
28
|
-
}
|
29
|
+
}
|
30
|
+
const compositePromises = compositesContent.map(fetchComposite);
|
29
31
|
const composites = (await Promise.all(compositePromises)).filter((item) => !!item);
|
30
32
|
return {
|
31
|
-
getCompositeOrNull(
|
32
|
-
return composites.find((item) => item.
|
33
|
+
getCompositeOrNull(src, currentPath) {
|
34
|
+
return composites.find((item) => item.src === src) || null;
|
33
35
|
}
|
34
36
|
};
|
35
37
|
}
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zaXRlLXByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic3JjL2NvbXBvc2l0ZS1wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ3BDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFHNUMsTUFBTSxDQUFDLEtBQUssVUFBVSxtQ0FBbUM7SUFDdkQsTUFBTSxLQUFLLEdBQUcsTUFBTSxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDcEMsTUFBTSxpQkFBaUIsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1FBQ3ZELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUE7UUFDcEMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUN4RSxDQUFDLENBQUMsQ0FBQTtJQUVGLEtBQUssVUFBVSxjQUFjLENBQUMsSUFBb0M7UUFDaEUsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQTtRQUNuQyxNQUFNLFlBQVksR0FBRyxHQUFHLEtBQUssQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFBO1FBQ25ELElBQUk7WUFDRixNQUFNLFFBQVEsR0FBRyxNQUFNLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQTtZQUMxQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUMvQixNQUFNLGFBQWEsR0FBRyxNQUFNLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtnQkFDM0MsTUFBTSxTQUFTLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQTtnQkFDbkQsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsQ0FBQTthQUMxQjtpQkFBTTtnQkFDTCxNQUFNLG1CQUFtQixHQUFlLE1BQU8sUUFBZ0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQTtnQkFDN0UsTUFBTSxTQUFTLEdBQUcsU0FBUyxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFBO2dCQUMzRCxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxDQUFBO2FBQzFCO1NBQ0Y7UUFBQyxPQUFPLEdBQUcsRUFBRTtZQUNaLE9BQU8sQ0FBQyxLQUFLLENBQUMsMkJBQTJCLFlBQVksS0FBTSxHQUFXLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFBO1lBQ3BGLE9BQU8sSUFBSSxDQUFBO1NBQ1o7SUFDSCxDQUFDO0lBRUQsTUFBTSxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUE7SUFFL0QsTUFBTSxVQUFVLEdBQUcsQ0FBQyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBeUIsQ0FBQTtJQUUxRyxPQUFPO1FBQ0wsa0JBQWtCLENBQUMsR0FBVyxFQUFFLFdBQW9CO1lBR2xELE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUE7UUFDNUQsQ0FBQztLQUNGLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9zaXRlIH0gZnJvbSAnQGRjbC9lY3MnXG5pbXBvcnQgeyBnZXRTY2VuZUluZm8gfSBmcm9tICd+c3lzdGVtL1NjZW5lJ1xuXG4vLyBAcHVibGljXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlQ29udGVudEZldGNoQ29tcG9zaXRlUHJvdmlkZXIoKTogUHJvbWlzZTxDb21wb3NpdGUuUHJvdmlkZXI+IHtcbiAgY29uc3Qgc2NlbmUgPSBhd2FpdCBnZXRTY2VuZUluZm8oe30pXG4gIGNvbnN0IGNvbXBvc2l0ZXNDb250ZW50ID0gc2NlbmUuY29udGVudHMuZmlsdGVyKChpdGVtKSA9PiB7XG4gICAgY29uc3QgcGF0aCA9IGl0ZW0uZmlsZS50b0xvd2VyQ2FzZSgpXG4gICAgcmV0dXJuIHBhdGguZW5kc1dpdGgoJy5jb21wb3NpdGUnKSB8fCBwYXRoLmVuZHNXaXRoKCcuY29tcG9zaXRlLmpzb24nKVxuICB9KVxuXG4gIGFzeW5jIGZ1bmN0aW9uIGZldGNoQ29tcG9zaXRlKGl0ZW06IHsgaGFzaDogc3RyaW5nOyBmaWxlOiBzdHJpbmcgfSk6IFByb21pc2U8Q29tcG9zaXRlLlJlc291cmNlIHwgbnVsbD4ge1xuICAgIGNvbnN0IHNyYyA9IGl0ZW0uZmlsZS50b0xvd2VyQ2FzZSgpXG4gICAgY29uc3QgY29tcG9zaXRlVXJsID0gYCR7c2NlbmUuYmFzZVVybH0ke2l0ZW0uaGFzaH1gXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goY29tcG9zaXRlVXJsKVxuICAgICAgaWYgKGl0ZW0uZmlsZS5lbmRzV2l0aCgnLmpzb24nKSkge1xuICAgICAgICBjb25zdCBjb21wb3NpdGVKc29uID0gYXdhaXQgcmVzcG9uc2UuanNvbigpXG4gICAgICAgIGNvbnN0IGNvbXBvc2l0ZSA9IENvbXBvc2l0ZS5mcm9tSnNvbihjb21wb3NpdGVKc29uKVxuICAgICAgICByZXR1cm4geyBzcmMsIGNvbXBvc2l0ZSB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBjb21wb3NpdGVCaW5hcnlEYXRhOiBVaW50OEFycmF5ID0gYXdhaXQgKHJlc3BvbnNlIGFzIGFueSkuYXJyYXlCdWZmZXIoKVxuICAgICAgICBjb25zdCBjb21wb3NpdGUgPSBDb21wb3NpdGUuZnJvbUJpbmFyeShjb21wb3NpdGVCaW5hcnlEYXRhKVxuICAgICAgICByZXR1cm4geyBzcmMsIGNvbXBvc2l0ZSB9XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBFcnJvciBsb2FkaW5nIGNvbXBvc2l0ZSAke2NvbXBvc2l0ZVVybH06ICR7KGVyciBhcyBhbnkpLnRvU3RyaW5nKCl9YClcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICB9XG5cbiAgY29uc3QgY29tcG9zaXRlUHJvbWlzZXMgPSBjb21wb3NpdGVzQ29udGVudC5tYXAoZmV0Y2hDb21wb3NpdGUpXG5cbiAgY29uc3QgY29tcG9zaXRlcyA9IChhd2FpdCBQcm9taXNlLmFsbChjb21wb3NpdGVQcm9taXNlcykpLmZpbHRlcigoaXRlbSkgPT4gISFpdGVtKSBhcyBDb21wb3NpdGUuUmVzb3VyY2VbXVxuXG4gIHJldHVybiB7XG4gICAgZ2V0Q29tcG9zaXRlT3JOdWxsKHNyYzogc3RyaW5nLCBjdXJyZW50UGF0aD86IHN0cmluZykge1xuICAgICAgLy8gVE9ETzogcmVzb2x2ZSBwYXRoIGZyb20gc3JjIGFuZCBjdXJyZW50UGF0aFxuXG4gICAgICByZXR1cm4gY29tcG9zaXRlcy5maW5kKChpdGVtKSA9PiBpdGVtLnNyYyA9PT0gc3JjKSB8fCBudWxsXG4gICAgfVxuICB9XG59XG4iXX0=
|
package/package.json
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
{
|
2
2
|
"name": "@dcl/sdk",
|
3
3
|
"description": "",
|
4
|
-
"version": "7.1.4-
|
4
|
+
"version": "7.1.4-4608901735.commit-37cc11b",
|
5
5
|
"author": "Decentraland",
|
6
6
|
"dependencies": {
|
7
|
-
"@dcl/ecs": "7.1.4-
|
7
|
+
"@dcl/ecs": "7.1.4-4608901735.commit-37cc11b",
|
8
8
|
"@dcl/ecs-math": "2.0.1-20221129185242.commit-40495c1",
|
9
9
|
"@dcl/explorer": "1.0.92953-20230320185045.commit-aed694a",
|
10
|
-
"@dcl/js-runtime": "7.1.4-
|
11
|
-
"@dcl/react-ecs": "7.1.4-
|
12
|
-
"@dcl/sdk-commands": "7.1.4-
|
10
|
+
"@dcl/js-runtime": "7.1.4-4608901735.commit-37cc11b",
|
11
|
+
"@dcl/react-ecs": "7.1.4-4608901735.commit-37cc11b",
|
12
|
+
"@dcl/sdk-commands": "7.1.4-4608901735.commit-37cc11b"
|
13
13
|
},
|
14
14
|
"keywords": [],
|
15
15
|
"license": "Apache-2.0",
|
@@ -30,5 +30,5 @@
|
|
30
30
|
},
|
31
31
|
"types": "./index.d.ts",
|
32
32
|
"typings": "./index.d.ts",
|
33
|
-
"commit": "
|
33
|
+
"commit": "37cc11b3938c4420eaeb2fb38af3625e3dec7951"
|
34
34
|
}
|
@@ -9,30 +9,35 @@ export async function createContentFetchCompositeProvider(): Promise<Composite.P
|
|
9
9
|
return path.endsWith('.composite') || path.endsWith('.composite.json')
|
10
10
|
})
|
11
11
|
|
12
|
-
|
12
|
+
async function fetchComposite(item: { hash: string; file: string }): Promise<Composite.Resource | null> {
|
13
|
+
const src = item.file.toLowerCase()
|
13
14
|
const compositeUrl = `${scene.baseUrl}${item.hash}`
|
14
15
|
try {
|
15
16
|
const response = await fetch(compositeUrl)
|
16
17
|
if (item.file.endsWith('.json')) {
|
17
18
|
const compositeJson = await response.json()
|
18
19
|
const composite = Composite.fromJson(compositeJson)
|
19
|
-
return composite
|
20
|
+
return { src, composite }
|
20
21
|
} else {
|
21
22
|
const compositeBinaryData: Uint8Array = await (response as any).arrayBuffer()
|
22
23
|
const composite = Composite.fromBinary(compositeBinaryData)
|
23
|
-
return composite
|
24
|
+
return { src, composite }
|
24
25
|
}
|
25
26
|
} catch (err) {
|
26
27
|
console.error(`Error loading composite ${compositeUrl}: ${(err as any).toString()}`)
|
27
28
|
return null
|
28
29
|
}
|
29
|
-
}
|
30
|
+
}
|
30
31
|
|
31
|
-
const
|
32
|
+
const compositePromises = compositesContent.map(fetchComposite)
|
33
|
+
|
34
|
+
const composites = (await Promise.all(compositePromises)).filter((item) => !!item) as Composite.Resource[]
|
32
35
|
|
33
36
|
return {
|
34
|
-
getCompositeOrNull(
|
35
|
-
|
37
|
+
getCompositeOrNull(src: string, currentPath?: string) {
|
38
|
+
// TODO: resolve path from src and currentPath
|
39
|
+
|
40
|
+
return composites.find((item) => item.src === src) || null
|
36
41
|
}
|
37
42
|
}
|
38
43
|
}
|
package/src/with-composite.ts
CHANGED
@@ -10,7 +10,7 @@ export const onUpdate = basicOnUpdate
|
|
10
10
|
*/
|
11
11
|
/* @__PURE__ */ export async function onStart() {
|
12
12
|
const compositeProvider = await createContentFetchCompositeProvider()
|
13
|
-
const mainComposite = compositeProvider.getCompositeOrNull('main')
|
13
|
+
const mainComposite = compositeProvider.getCompositeOrNull('main.composite.json')
|
14
14
|
if (mainComposite) {
|
15
15
|
Composite.instance(engine, mainComposite, compositeProvider)
|
16
16
|
}
|
package/with-composite.js
CHANGED
@@ -4,10 +4,10 @@ import { onStart as basicOnStart, onUpdate as basicOnUpdate } from './index';
|
|
4
4
|
export const onUpdate = basicOnUpdate;
|
5
5
|
export async function onStart() {
|
6
6
|
const compositeProvider = await createContentFetchCompositeProvider();
|
7
|
-
const mainComposite = compositeProvider.getCompositeOrNull('main');
|
7
|
+
const mainComposite = compositeProvider.getCompositeOrNull('main.composite.json');
|
8
8
|
if (mainComposite) {
|
9
9
|
Composite.instance(engine, mainComposite, compositeProvider);
|
10
10
|
}
|
11
11
|
await basicOnStart();
|
12
12
|
}
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1jb21wb3NpdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzcmMvd2l0aC1jb21wb3NpdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFDNUMsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDMUUsT0FBTyxFQUFFLE9BQU8sSUFBSSxZQUFZLEVBQUUsUUFBUSxJQUFJLGFBQWEsRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUU1RSxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFBO0FBTXJCLE1BQU0sQ0FBQyxLQUFLLFVBQVUsT0FBTztJQUMzQyxNQUFNLGlCQUFpQixHQUFHLE1BQU0sbUNBQW1DLEVBQUUsQ0FBQTtJQUNyRSxNQUFNLGFBQWEsR0FBRyxpQkFBaUIsQ0FBQyxrQkFBa0IsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO0lBQ2pGLElBQUksYUFBYSxFQUFFO1FBQ2pCLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxDQUFBO0tBQzdEO0lBRUQsTUFBTSxZQUFZLEVBQUUsQ0FBQTtBQUN0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZW5naW5lLCBDb21wb3NpdGUgfSBmcm9tICdAZGNsL2VjcydcbmltcG9ydCB7IGNyZWF0ZUNvbnRlbnRGZXRjaENvbXBvc2l0ZVByb3ZpZGVyIH0gZnJvbSAnLi9jb21wb3NpdGUtcHJvdmlkZXInXG5pbXBvcnQgeyBvblN0YXJ0IGFzIGJhc2ljT25TdGFydCwgb25VcGRhdGUgYXMgYmFzaWNPblVwZGF0ZSB9IGZyb20gJy4vaW5kZXgnXG5cbmV4cG9ydCBjb25zdCBvblVwZGF0ZSA9IGJhc2ljT25VcGRhdGVcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqIEZ1bmN0aW9uIHRoYXQgaXMgY2FsbGVkIGJlZm9yZSB0aGUgZmlyc3QgdXBkYXRlIGFuZCBhZnRlciB0aGUgZXZhbHVhdGlvbiBvZiB0aGUgY29kZS5cbiAqL1xuLyogQF9fUFVSRV9fICovIGV4cG9ydCBhc3luYyBmdW5jdGlvbiBvblN0YXJ0KCkge1xuICBjb25zdCBjb21wb3NpdGVQcm92aWRlciA9IGF3YWl0IGNyZWF0ZUNvbnRlbnRGZXRjaENvbXBvc2l0ZVByb3ZpZGVyKClcbiAgY29uc3QgbWFpbkNvbXBvc2l0ZSA9IGNvbXBvc2l0ZVByb3ZpZGVyLmdldENvbXBvc2l0ZU9yTnVsbCgnbWFpbi5jb21wb3NpdGUuanNvbicpXG4gIGlmIChtYWluQ29tcG9zaXRlKSB7XG4gICAgQ29tcG9zaXRlLmluc3RhbmNlKGVuZ2luZSwgbWFpbkNvbXBvc2l0ZSwgY29tcG9zaXRlUHJvdmlkZXIpXG4gIH1cblxuICBhd2FpdCBiYXNpY09uU3RhcnQoKVxufVxuIl19
|