@dcl/content-validator 4.3.0 → 4.3.1-4346672765.commit-51a4f9f
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/dist/index.d.ts +2 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -12
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +60 -24
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/validations/ADR45.d.ts +2 -2
- package/dist/validations/ADR45.d.ts.map +1 -1
- package/dist/validations/ADR45.js +3 -3
- package/dist/validations/ADR45.js.map +1 -1
- package/dist/validations/access/common/items.d.ts +10 -0
- package/dist/validations/access/common/items.d.ts.map +1 -0
- package/dist/validations/access/common/items.js +94 -0
- package/dist/validations/access/common/items.js.map +1 -0
- package/dist/validations/access/common/profiles.d.ts +3 -0
- package/dist/validations/access/common/profiles.d.ts.map +1 -0
- package/dist/validations/access/common/profiles.js +28 -0
- package/dist/validations/access/common/profiles.js.map +1 -0
- package/dist/validations/access/common/stores.d.ts +7 -0
- package/dist/validations/access/common/stores.d.ts.map +1 -0
- package/dist/validations/access/common/stores.js +35 -0
- package/dist/validations/access/common/stores.js.map +1 -0
- package/dist/validations/access/index.d.ts +8 -0
- package/dist/validations/access/index.d.ts.map +1 -0
- package/dist/validations/access/index.js +30 -0
- package/dist/validations/access/index.js.map +1 -0
- package/dist/validations/access/on-chain/client.d.ts +14 -0
- package/dist/validations/access/on-chain/client.d.ts.map +1 -0
- package/dist/validations/access/on-chain/client.js +177 -0
- package/dist/validations/access/on-chain/client.js.map +1 -0
- package/dist/validations/access/on-chain/collection-asset.d.ts +3 -0
- package/dist/validations/access/on-chain/collection-asset.d.ts.map +1 -0
- package/dist/validations/access/on-chain/collection-asset.js +66 -0
- package/dist/validations/access/on-chain/collection-asset.js.map +1 -0
- package/dist/validations/access/on-chain/index.d.ts +4 -0
- package/dist/validations/access/on-chain/index.d.ts.map +1 -0
- package/dist/validations/access/on-chain/index.js +23 -0
- package/dist/validations/access/on-chain/index.js.map +1 -0
- package/dist/validations/access/on-chain/profiles.d.ts +5 -0
- package/dist/validations/access/on-chain/profiles.d.ts.map +1 -0
- package/dist/validations/access/on-chain/profiles.js +84 -0
- package/dist/validations/access/on-chain/profiles.js.map +1 -0
- package/dist/validations/access/on-chain/scenes.d.ts +7 -0
- package/dist/validations/access/on-chain/scenes.d.ts.map +1 -0
- package/dist/validations/access/on-chain/scenes.js +53 -0
- package/dist/validations/access/on-chain/scenes.js.map +1 -0
- package/dist/validations/access/on-chain/third-party-asset.d.ts +3 -0
- package/dist/validations/access/on-chain/third-party-asset.d.ts.map +1 -0
- package/dist/validations/access/on-chain/third-party-asset.js +53 -0
- package/dist/validations/access/on-chain/third-party-asset.js.map +1 -0
- package/dist/validations/access/subgraph/collection-asset.d.ts +15 -0
- package/dist/validations/access/subgraph/collection-asset.d.ts.map +1 -0
- package/dist/validations/{access-checker/items → access/subgraph}/collection-asset.js +10 -13
- package/dist/validations/access/subgraph/collection-asset.js.map +1 -0
- package/dist/validations/access/subgraph/index.d.ts +4 -0
- package/dist/validations/access/subgraph/index.d.ts.map +1 -0
- package/dist/validations/access/subgraph/index.js +23 -0
- package/dist/validations/access/subgraph/index.js.map +1 -0
- package/dist/validations/access/subgraph/profiles.d.ts +5 -0
- package/dist/validations/access/subgraph/profiles.d.ts.map +1 -0
- package/dist/validations/access/subgraph/profiles.js +84 -0
- package/dist/validations/access/subgraph/profiles.js.map +1 -0
- package/dist/validations/access/subgraph/scenes.d.ts +7 -0
- package/dist/validations/access/subgraph/scenes.d.ts.map +1 -0
- package/dist/validations/access/subgraph/scenes.js +262 -0
- package/dist/validations/access/subgraph/scenes.js.map +1 -0
- package/dist/validations/access/subgraph/the-graph-client.d.ts +10 -0
- package/dist/validations/access/subgraph/the-graph-client.d.ts.map +1 -0
- package/dist/validations/access/subgraph/the-graph-client.js.map +1 -0
- package/dist/validations/access/subgraph/third-party-asset.d.ts +3 -0
- package/dist/validations/access/subgraph/third-party-asset.d.ts.map +1 -0
- package/dist/validations/{access-checker/items → access/subgraph}/third-party-asset.js +6 -8
- package/dist/validations/access/subgraph/third-party-asset.js.map +1 -0
- package/dist/validations/content.d.ts +6 -10
- package/dist/validations/content.d.ts.map +1 -1
- package/dist/validations/content.js +29 -24
- package/dist/validations/content.js.map +1 -1
- package/dist/validations/entity-structure.d.ts +2 -2
- package/dist/validations/entity-structure.d.ts.map +1 -1
- package/dist/validations/entity-structure.js +3 -3
- package/dist/validations/entity-structure.js.map +1 -1
- package/dist/validations/index.d.ts +2 -18
- package/dist/validations/index.d.ts.map +1 -1
- package/dist/validations/index.js +20 -15
- package/dist/validations/index.js.map +1 -1
- package/dist/validations/ipfs-hashing.d.ts +1 -2
- package/dist/validations/ipfs-hashing.d.ts.map +1 -1
- package/dist/validations/ipfs-hashing.js +2 -2
- package/dist/validations/ipfs-hashing.js.map +1 -1
- package/dist/validations/items/emotes.d.ts +4 -4
- package/dist/validations/items/emotes.d.ts.map +1 -1
- package/dist/validations/items/emotes.js +6 -6
- package/dist/validations/items/emotes.js.map +1 -1
- package/dist/validations/items/items.d.ts +4 -4
- package/dist/validations/items/items.d.ts.map +1 -1
- package/dist/validations/items/items.js +67 -52
- package/dist/validations/items/items.js.map +1 -1
- package/dist/validations/items/wearables.d.ts +3 -3
- package/dist/validations/items/wearables.d.ts.map +1 -1
- package/dist/validations/items/wearables.js +4 -4
- package/dist/validations/items/wearables.js.map +1 -1
- package/dist/validations/metadata-schema.d.ts +10 -1
- package/dist/validations/metadata-schema.d.ts.map +1 -1
- package/dist/validations/metadata-schema.js +9 -6
- package/dist/validations/metadata-schema.js.map +1 -1
- package/dist/validations/profile.d.ts +7 -10
- package/dist/validations/profile.d.ts.map +1 -1
- package/dist/validations/profile.js +57 -37
- package/dist/validations/profile.js.map +1 -1
- package/dist/validations/scene.d.ts +2 -2
- package/dist/validations/scene.d.ts.map +1 -1
- package/dist/validations/scene.js +8 -7
- package/dist/validations/scene.js.map +1 -1
- package/dist/validations/signature.d.ts +2 -2
- package/dist/validations/signature.d.ts.map +1 -1
- package/dist/validations/signature.js +8 -6
- package/dist/validations/signature.js.map +1 -1
- package/dist/validations/size.d.ts +2 -2
- package/dist/validations/size.d.ts.map +1 -1
- package/dist/validations/size.js +31 -29
- package/dist/validations/size.js.map +1 -1
- package/dist/validations/validations.d.ts.map +1 -1
- package/dist/validations/validations.js +6 -5
- package/dist/validations/validations.js.map +1 -1
- package/package.json +7 -4
- package/dist/the-graph-client/the-graph-client.d.ts +0 -10
- package/dist/the-graph-client/the-graph-client.d.ts.map +0 -1
- package/dist/the-graph-client/the-graph-client.js.map +0 -1
- package/dist/validations/access-checker/access.d.ts +0 -7
- package/dist/validations/access-checker/access.d.ts.map +0 -1
- package/dist/validations/access-checker/access.js +0 -42
- package/dist/validations/access-checker/access.js.map +0 -1
- package/dist/validations/access-checker/emotes.d.ts +0 -3
- package/dist/validations/access-checker/emotes.d.ts.map +0 -1
- package/dist/validations/access-checker/emotes.js +0 -12
- package/dist/validations/access-checker/emotes.js.map +0 -1
- package/dist/validations/access-checker/items/collection-asset.d.ts +0 -15
- package/dist/validations/access-checker/items/collection-asset.d.ts.map +0 -1
- package/dist/validations/access-checker/items/collection-asset.js.map +0 -1
- package/dist/validations/access-checker/items/items.d.ts +0 -11
- package/dist/validations/access-checker/items/items.d.ts.map +0 -1
- package/dist/validations/access-checker/items/items.js +0 -67
- package/dist/validations/access-checker/items/items.js.map +0 -1
- package/dist/validations/access-checker/items/off-chain-asset.d.ts +0 -3
- package/dist/validations/access-checker/items/off-chain-asset.d.ts.map +0 -1
- package/dist/validations/access-checker/items/off-chain-asset.js +0 -17
- package/dist/validations/access-checker/items/off-chain-asset.js.map +0 -1
- package/dist/validations/access-checker/items/third-party-asset.d.ts +0 -3
- package/dist/validations/access-checker/items/third-party-asset.d.ts.map +0 -1
- package/dist/validations/access-checker/items/third-party-asset.js.map +0 -1
- package/dist/validations/access-checker/profiles.d.ts +0 -7
- package/dist/validations/access-checker/profiles.d.ts.map +0 -1
- package/dist/validations/access-checker/profiles.js +0 -114
- package/dist/validations/access-checker/profiles.js.map +0 -1
- package/dist/validations/access-checker/scenes.d.ts +0 -7
- package/dist/validations/access-checker/scenes.d.ts.map +0 -1
- package/dist/validations/access-checker/scenes.js +0 -261
- package/dist/validations/access-checker/scenes.js.map +0 -1
- package/dist/validations/access-checker/stores.d.ts +0 -7
- package/dist/validations/access-checker/stores.d.ts.map +0 -1
- package/dist/validations/access-checker/stores.js +0 -33
- package/dist/validations/access-checker/stores.js.map +0 -1
- package/dist/validations/access-checker/wearables.d.ts +0 -3
- package/dist/validations/access-checker/wearables.d.ts.map +0 -1
- package/dist/validations/access-checker/wearables.js +0 -14
- package/dist/validations/access-checker/wearables.js.map +0 -1
- /package/dist/{the-graph-client → validations/access/subgraph}/the-graph-client.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"the-graph-client.d.ts","sourceRoot":"","sources":["../../src/the-graph-client/the-graph-client.ts"],"names":[],"mappings":"AAGA,OAAO,EAAoB,0BAA0B,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAEvF,oBAAY,gBAAgB,GAAG;IAC7B,MAAM,EAAE,OAAO,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CACnB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,eACnB,KAAK,0BAA0B,EAAE,MAAM,GAAG,WAAW,CAAC,KACjE,cAoOF,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"the-graph-client.js","sourceRoot":"","sources":["../../src/the-graph-client/the-graph-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { ContentValidatorComponents, DeploymentToValidate } from '../../types';
|
|
2
|
-
/**
|
|
3
|
-
* Validate that the pointers are valid, and that the Ethereum address has write access to them
|
|
4
|
-
* @public
|
|
5
|
-
*/
|
|
6
|
-
export declare function access(components: ContentValidatorComponents, deployment: DeploymentToValidate): Promise<import("../../types").ValidationResponse>;
|
|
7
|
-
//# sourceMappingURL=access.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"access.d.ts","sourceRoot":"","sources":["../../../src/validations/access-checker/access.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAoC,MAAM,aAAa,CAAA;AAgBhH;;;GAGG;AACH,wBAAsB,MAAM,CAAC,UAAU,EAAE,0BAA0B,EAAE,UAAU,EAAE,oBAAoB,qDAkBpG"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.access = void 0;
|
|
4
|
-
const schemas_1 = require("@dcl/schemas");
|
|
5
|
-
const types_1 = require("../../types");
|
|
6
|
-
const timestamps_1 = require("../timestamps");
|
|
7
|
-
const emotes_1 = require("./emotes");
|
|
8
|
-
const profiles_1 = require("./profiles");
|
|
9
|
-
const scenes_1 = require("./scenes");
|
|
10
|
-
const stores_1 = require("./stores");
|
|
11
|
-
const wearables_1 = require("./wearables");
|
|
12
|
-
const accessCheckers = {
|
|
13
|
-
[schemas_1.EntityType.PROFILE]: profiles_1.profiles,
|
|
14
|
-
[schemas_1.EntityType.SCENE]: scenes_1.scenes,
|
|
15
|
-
[schemas_1.EntityType.WEARABLE]: wearables_1.wearables,
|
|
16
|
-
[schemas_1.EntityType.STORE]: stores_1.stores,
|
|
17
|
-
[schemas_1.EntityType.EMOTE]: emotes_1.emotes
|
|
18
|
-
};
|
|
19
|
-
/**
|
|
20
|
-
* Validate that the pointers are valid, and that the Ethereum address has write access to them
|
|
21
|
-
* @public
|
|
22
|
-
*/
|
|
23
|
-
async function access(components, deployment) {
|
|
24
|
-
if ((await components.config.getString('IGNORE_BLOCKCHAIN_ACCESS_CHECKS')) === 'true') {
|
|
25
|
-
return types_1.OK;
|
|
26
|
-
}
|
|
27
|
-
const deployedBeforeDCLLaunch = deployment.entity.timestamp <= timestamps_1.LEGACY_CONTENT_MIGRATION_TIMESTAMP;
|
|
28
|
-
const address = components.externalCalls.ownerAddress(deployment.auditInfo);
|
|
29
|
-
// Default scenes were removed from the Content Servers after https://github.com/decentraland/catalyst/issues/878
|
|
30
|
-
if (isDefaultScene(deployment.entity)) {
|
|
31
|
-
return (0, types_1.validationFailed)(`Scene pointers should only contain two integers separated by a comma, for example (10,10) or (120,-45).`);
|
|
32
|
-
}
|
|
33
|
-
// Legacy entities still need to be synchronized
|
|
34
|
-
if (deployedBeforeDCLLaunch && components.externalCalls.isAddressOwnedByDecentraland(address))
|
|
35
|
-
return types_1.OK;
|
|
36
|
-
return accessCheckers[deployment.entity.type](components, deployment);
|
|
37
|
-
}
|
|
38
|
-
exports.access = access;
|
|
39
|
-
function isDefaultScene(entity) {
|
|
40
|
-
return entity.type === schemas_1.EntityType.SCENE && entity.pointers.some((p) => p.toLowerCase().startsWith('default'));
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=access.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"access.js","sourceRoot":"","sources":["../../../src/validations/access-checker/access.ts"],"names":[],"mappings":";;;AAAA,0CAAiD;AACjD,uCAAgH;AAChH,8CAAkE;AAClE,qCAAiC;AACjC,yCAAqC;AACrC,qCAAiC;AACjC,qCAAiC;AACjC,2CAAuC;AAEvC,MAAM,cAAc,GAAmC;IACrD,CAAC,oBAAU,CAAC,OAAO,CAAC,EAAE,mBAAQ;IAC9B,CAAC,oBAAU,CAAC,KAAK,CAAC,EAAE,eAAM;IAC1B,CAAC,oBAAU,CAAC,QAAQ,CAAC,EAAE,qBAAS;IAChC,CAAC,oBAAU,CAAC,KAAK,CAAC,EAAE,eAAM;IAC1B,CAAC,oBAAU,CAAC,KAAK,CAAC,EAAE,eAAM;CAC3B,CAAA;AAED;;;GAGG;AACI,KAAK,UAAU,MAAM,CAAC,UAAsC,EAAE,UAAgC;IACnG,IAAI,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,iCAAiC,CAAC,CAAC,KAAK,MAAM,EAAE;QACrF,OAAO,UAAE,CAAA;KACV;IAED,MAAM,uBAAuB,GAAG,UAAU,CAAC,MAAM,CAAC,SAAS,IAAI,+CAAkC,CAAA;IACjG,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;IAE3E,iHAAiH;IACjH,IAAI,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QACrC,OAAO,IAAA,wBAAgB,EACrB,yGAAyG,CAC1G,CAAA;KACF;IACD,gDAAgD;IAChD,IAAI,uBAAuB,IAAI,UAAU,CAAC,aAAa,CAAC,4BAA4B,CAAC,OAAO,CAAC;QAAE,OAAO,UAAE,CAAA;IAExG,OAAO,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;AACvE,CAAC;AAlBD,wBAkBC;AAED,SAAS,cAAc,CAAC,MAAc;IACpC,OAAO,MAAM,CAAC,IAAI,KAAK,oBAAU,CAAC,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAA;AAC/G,CAAC"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import { ContentValidatorComponents, DeploymentToValidate } from '../..';
|
|
2
|
-
export declare function emotes(components: Pick<ContentValidatorComponents, 'externalCalls' | 'logs' | 'theGraphClient'>, deployment: DeploymentToValidate): Promise<import("../..").ValidationResponse>;
|
|
3
|
-
//# sourceMappingURL=emotes.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"emotes.d.ts","sourceRoot":"","sources":["../../../src/validations/access-checker/emotes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAA;AAGxE,wBAAsB,MAAM,CAC1B,UAAU,EAAE,IAAI,CAAC,0BAA0B,EAAE,eAAe,GAAG,MAAM,GAAG,gBAAgB,CAAC,EACzF,UAAU,EAAE,oBAAoB,+CAMjC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.emotes = void 0;
|
|
4
|
-
const items_1 = require("./items/items");
|
|
5
|
-
async function emotes(components, deployment) {
|
|
6
|
-
return (0, items_1.itemsValidation)(components, deployment, [
|
|
7
|
-
'blockchain-collection-v2-asset',
|
|
8
|
-
'blockchain-collection-third-party'
|
|
9
|
-
]);
|
|
10
|
-
}
|
|
11
|
-
exports.emotes = emotes;
|
|
12
|
-
//# sourceMappingURL=emotes.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"emotes.js","sourceRoot":"","sources":["../../../src/validations/access-checker/emotes.ts"],"names":[],"mappings":";;;AACA,yCAA+C;AAExC,KAAK,UAAU,MAAM,CAC1B,UAAyF,EACzF,UAAgC;IAEhC,OAAO,IAAA,uBAAe,EAAC,UAAU,EAAE,UAAU,EAAE;QAC7C,gCAAgC;QAChC,mCAAmC;KACpC,CAAC,CAAA;AACJ,CAAC;AARD,wBAQC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { AssetValidation } from './items';
|
|
2
|
-
declare type CollectionItem = {
|
|
3
|
-
managers: string[];
|
|
4
|
-
contentHash: string;
|
|
5
|
-
};
|
|
6
|
-
export declare type ItemCollection = {
|
|
7
|
-
creator: string;
|
|
8
|
-
managers: string[];
|
|
9
|
-
isApproved: boolean;
|
|
10
|
-
isCompleted: boolean;
|
|
11
|
-
items: CollectionItem[];
|
|
12
|
-
};
|
|
13
|
-
export declare const v1andV2collectionAssetValidation: AssetValidation;
|
|
14
|
-
export {};
|
|
15
|
-
//# sourceMappingURL=collection-asset.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"collection-asset.d.ts","sourceRoot":"","sources":["../../../../src/validations/access-checker/items/collection-asset.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAoBzC,aAAK,cAAc,GAAG;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,oBAAY,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,UAAU,EAAE,OAAO,CAAA;IACnB,WAAW,EAAE,OAAO,CAAA;IACpB,KAAK,EAAE,cAAc,EAAE,CAAA;CACxB,CAAA;AAsID,eAAO,MAAM,gCAAgC,EAAE,eAqD9C,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"collection-asset.js","sourceRoot":"","sources":["../../../../src/validations/access-checker/items/collection-asset.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { BlockchainCollectionThirdParty, BlockchainCollectionV1Asset, BlockchainCollectionV2Asset, OffChainAsset } from '@dcl/urn-resolver';
|
|
2
|
-
import { DeploymentToValidate } from '../../..';
|
|
3
|
-
import { ContentValidatorComponents, ValidationResponse } from '../../../types';
|
|
4
|
-
export declare type UrnType = 'off-chain' | 'blockchain-collection-v1-asset' | 'blockchain-collection-v2-asset' | 'blockchain-collection-third-party';
|
|
5
|
-
export declare type SupportedAsset = BlockchainCollectionV1Asset | BlockchainCollectionV2Asset | OffChainAsset | BlockchainCollectionThirdParty;
|
|
6
|
-
export declare type AssetValidation = {
|
|
7
|
-
validateAsset(components: Pick<ContentValidatorComponents, 'externalCalls'>, asset: SupportedAsset, deployment: DeploymentToValidate): ValidationResponse | Promise<ValidationResponse>;
|
|
8
|
-
canValidate(asset: SupportedAsset): boolean;
|
|
9
|
-
};
|
|
10
|
-
export declare function itemsValidation(components: Pick<ContentValidatorComponents, 'externalCalls' | 'logs' | 'theGraphClient'>, deployment: DeploymentToValidate, validUrnTypesForItem: UrnType[]): Promise<ValidationResponse>;
|
|
11
|
-
//# sourceMappingURL=items.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"items.d.ts","sourceRoot":"","sources":["../../../../src/validations/access-checker/items/items.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,8BAA8B,EAC9B,2BAA2B,EAC3B,2BAA2B,EAC3B,aAAa,EAEd,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,EAAE,0BAA0B,EAAoB,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAKjG,oBAAY,OAAO,GACf,WAAW,GACX,gCAAgC,GAChC,gCAAgC,GAChC,mCAAmC,CAAA;AAEvC,oBAAY,cAAc,GACtB,2BAA2B,GAC3B,2BAA2B,GAC3B,aAAa,GACb,8BAA8B,CAAA;AAElC,oBAAY,eAAe,GAAG;IAC5B,aAAa,CACX,UAAU,EAAE,IAAI,CAAC,0BAA0B,EAAE,eAAe,CAAC,EAC7D,KAAK,EAAE,cAAc,EACrB,UAAU,EAAE,oBAAoB,GAC/B,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAA;IACnD,WAAW,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAA;CAC5C,CAAA;AAsCD,wBAAsB,eAAe,CACnC,UAAU,EAAE,IAAI,CAAC,0BAA0B,EAAE,eAAe,GAAG,MAAM,GAAG,gBAAgB,CAAC,EACzF,UAAU,EAAE,oBAAoB,EAChC,oBAAoB,EAAE,OAAO,EAAE,+BAiChC"}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.itemsValidation = void 0;
|
|
4
|
-
const urn_resolver_1 = require("@dcl/urn-resolver");
|
|
5
|
-
const types_1 = require("../../../types");
|
|
6
|
-
const collection_asset_1 = require("./collection-asset");
|
|
7
|
-
const off_chain_asset_1 = require("./off-chain-asset");
|
|
8
|
-
const third_party_asset_1 = require("./third-party-asset");
|
|
9
|
-
const assetValidations = [off_chain_asset_1.offChainAssetValidation, collection_asset_1.v1andV2collectionAssetValidation, third_party_asset_1.thirdPartyAssetValidation];
|
|
10
|
-
function alreadySeen(resolvedPointers, parsed) {
|
|
11
|
-
return resolvedPointers.some((alreadyResolved) => resolveSameUrn(alreadyResolved, parsed));
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* This method returns true if the two assets are the same except for its uri.
|
|
15
|
-
* For example, urns for collection v1 wearables can have a 'contractAddress' OR 'collectionName'
|
|
16
|
-
* in the uri but reference the same asset.
|
|
17
|
-
*/
|
|
18
|
-
function resolveSameUrn(alreadyParsed, parsed) {
|
|
19
|
-
const { ['uri']: uri1, ...alreadyParsedWithoutUri } = alreadyParsed;
|
|
20
|
-
const { ['uri']: uri2, ...parsedWithoutUri } = parsed;
|
|
21
|
-
return JSON.stringify(parsedWithoutUri) == JSON.stringify(alreadyParsedWithoutUri);
|
|
22
|
-
}
|
|
23
|
-
async function parseUrnNoFail(urn) {
|
|
24
|
-
try {
|
|
25
|
-
const parsed = await (0, urn_resolver_1.parseUrn)(urn);
|
|
26
|
-
if (parsed?.type === 'blockchain-collection-v1-asset') {
|
|
27
|
-
return parsed;
|
|
28
|
-
}
|
|
29
|
-
if (parsed?.type === 'blockchain-collection-v2-asset') {
|
|
30
|
-
return parsed;
|
|
31
|
-
}
|
|
32
|
-
if (parsed?.type === 'off-chain') {
|
|
33
|
-
return parsed;
|
|
34
|
-
}
|
|
35
|
-
if (parsed?.type === 'blockchain-collection-third-party') {
|
|
36
|
-
return parsed;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
catch { }
|
|
40
|
-
return null;
|
|
41
|
-
}
|
|
42
|
-
async function itemsValidation(components, deployment, validUrnTypesForItem) {
|
|
43
|
-
const { pointers } = deployment.entity;
|
|
44
|
-
const resolvedPointers = [];
|
|
45
|
-
// deduplicate pointer resolution
|
|
46
|
-
for (const pointer of pointers) {
|
|
47
|
-
const parsed = await parseUrnNoFail(pointer);
|
|
48
|
-
if (!parsed)
|
|
49
|
-
return (0, types_1.validationFailed)(`Item pointers should be a urn, for example (urn:decentraland:{protocol}:collections-v2:{contract(0x[a-fA-F0-9]+)}:{id}). Invalid pointer: (${pointer})`);
|
|
50
|
-
if (!alreadySeen(resolvedPointers, parsed))
|
|
51
|
-
resolvedPointers.push(parsed);
|
|
52
|
-
}
|
|
53
|
-
if (resolvedPointers.length > 1)
|
|
54
|
-
return (0, types_1.validationFailed)(`Only one pointer is allowed when you create an item. Received: ${pointers}`);
|
|
55
|
-
const parsedAsset = resolvedPointers[0];
|
|
56
|
-
if (!validUrnTypesForItem.includes(parsedAsset.type)) {
|
|
57
|
-
return (0, types_1.validationFailed)(`For the entity type: ${deployment.entity.type}, the asset with urn type: ${parsedAsset.type} is invalid. Valid urn types for this entity: ${validUrnTypesForItem}`);
|
|
58
|
-
}
|
|
59
|
-
for (const validation of assetValidations) {
|
|
60
|
-
if (validation.canValidate(parsedAsset)) {
|
|
61
|
-
return validation.validateAsset(components, parsedAsset, deployment);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
throw new Error('This should never happen. There is no validations for the asset.');
|
|
65
|
-
}
|
|
66
|
-
exports.itemsValidation = itemsValidation;
|
|
67
|
-
//# sourceMappingURL=items.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"items.js","sourceRoot":"","sources":["../../../../src/validations/access-checker/items/items.ts"],"names":[],"mappings":";;;AAAA,oDAM0B;AAE1B,0CAAiG;AACjG,yDAAqE;AACrE,uDAA2D;AAC3D,2DAA+D;AAuB/D,MAAM,gBAAgB,GAAG,CAAC,yCAAuB,EAAE,mDAAgC,EAAE,6CAAyB,CAAC,CAAA;AAE/G,SAAS,WAAW,CAAC,gBAAkC,EAAE,MAAsB;IAC7E,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC,cAAc,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAA;AAC5F,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,aAA6B,EAAE,MAAsB;IAC3E,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,uBAAuB,EAAE,GAAG,aAAa,CAAA;IACnE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,gBAAgB,EAAE,GAAG,MAAM,CAAA;IACrD,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAA;AACpF,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,GAAW;IACvC,IAAI;QACF,MAAM,MAAM,GAAG,MAAM,IAAA,uBAAQ,EAAC,GAAG,CAAC,CAAA;QAClC,IAAI,MAAM,EAAE,IAAI,KAAK,gCAAgC,EAAE;YACrD,OAAO,MAAM,CAAA;SACd;QACD,IAAI,MAAM,EAAE,IAAI,KAAK,gCAAgC,EAAE;YACrD,OAAO,MAAM,CAAA;SACd;QACD,IAAI,MAAM,EAAE,IAAI,KAAK,WAAW,EAAE;YAChC,OAAO,MAAM,CAAA;SACd;QACD,IAAI,MAAM,EAAE,IAAI,KAAK,mCAAmC,EAAE;YACxD,OAAO,MAAM,CAAA;SACd;KACF;IAAC,MAAM,GAAE;IACV,OAAO,IAAI,CAAA;AACb,CAAC;AAEM,KAAK,UAAU,eAAe,CACnC,UAAyF,EACzF,UAAgC,EAChC,oBAA+B;IAE/B,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC,MAAM,CAAA;IAEtC,MAAM,gBAAgB,GAAqB,EAAE,CAAA;IAC7C,iCAAiC;IACjC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;QAC9B,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,CAAA;QAC5C,IAAI,CAAC,MAAM;YACT,OAAO,IAAA,wBAAgB,EACrB,8IAA8I,OAAO,GAAG,CACzJ,CAAA;QAEH,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,MAAM,CAAC;YAAE,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;KAC1E;IAED,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC;QAC7B,OAAO,IAAA,wBAAgB,EAAC,kEAAkE,QAAQ,EAAE,CAAC,CAAA;IAEvG,MAAM,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;IAEvC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;QACpD,OAAO,IAAA,wBAAgB,EACrB,wBAAwB,UAAU,CAAC,MAAM,CAAC,IAAI,8BAA8B,WAAW,CAAC,IAAI,iDAAiD,oBAAoB,EAAE,CACpK,CAAA;KACF;IAED,KAAK,MAAM,UAAU,IAAI,gBAAgB,EAAE;QACzC,IAAI,UAAU,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE;YACvC,OAAO,UAAU,CAAC,aAAa,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;SACrE;KACF;IACD,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;AACrF,CAAC;AApCD,0CAoCC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"off-chain-asset.d.ts","sourceRoot":"","sources":["../../../../src/validations/access-checker/items/off-chain-asset.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEzC,eAAO,MAAM,uBAAuB,EAAE,eAgBrC,CAAA"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.offChainAssetValidation = void 0;
|
|
4
|
-
const __1 = require("../../..");
|
|
5
|
-
const types_1 = require("../../../types");
|
|
6
|
-
exports.offChainAssetValidation = {
|
|
7
|
-
validateAsset(components, asset, deployment) {
|
|
8
|
-
const ethAddress = components.externalCalls.ownerAddress(deployment.auditInfo);
|
|
9
|
-
if (!components.externalCalls.isAddressOwnedByDecentraland(ethAddress))
|
|
10
|
-
return (0, types_1.validationFailed)(`The provided Eth Address '${ethAddress}' does not have access to the following item: '${asset.uri}'`);
|
|
11
|
-
return __1.OK;
|
|
12
|
-
},
|
|
13
|
-
canValidate(asset) {
|
|
14
|
-
return asset.type === 'off-chain';
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
//# sourceMappingURL=off-chain-asset.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"off-chain-asset.js","sourceRoot":"","sources":["../../../../src/validations/access-checker/items/off-chain-asset.ts"],"names":[],"mappings":";;;AACA,gCAAmD;AACnD,0CAA6E;AAGhE,QAAA,uBAAuB,GAAoB;IACtD,aAAa,CACX,UAA6D,EAC7D,KAAoB,EACpB,UAAgC;QAEhC,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;QAC9E,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,4BAA4B,CAAC,UAAU,CAAC;YACpE,OAAO,IAAA,wBAAgB,EACrB,6BAA6B,UAAU,kDAAkD,KAAK,CAAC,GAAG,GAAG,CACtG,CAAA;QACH,OAAO,MAAE,CAAA;IACX,CAAC;IACD,WAAW,CAAC,KAAK;QACf,OAAO,KAAK,CAAC,IAAI,KAAK,WAAW,CAAA;IACnC,CAAC;CACF,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"third-party-asset.d.ts","sourceRoot":"","sources":["../../../../src/validations/access-checker/items/third-party-asset.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAiHzC,eAAO,MAAM,yBAAyB,EAAE,eAiBvC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"third-party-asset.js","sourceRoot":"","sources":["../../../../src/validations/access-checker/items/third-party-asset.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { ContentValidatorComponents, DeploymentToValidate, ValidateFn } from '../../types';
|
|
2
|
-
export declare function pointerIsValid(components: Pick<ContentValidatorComponents, 'externalCalls'>, deployment: DeploymentToValidate): Promise<import("../../types").ValidationResponse>;
|
|
3
|
-
export declare const ownsNames: ValidateFn;
|
|
4
|
-
export declare function ownsItems(components: Pick<ContentValidatorComponents, 'externalCalls' | 'theGraphClient'>, deployment: DeploymentToValidate): Promise<import("../../types").ValidationResponse>;
|
|
5
|
-
export declare function profileSlotsAreNotRepeated(components: Pick<ContentValidatorComponents, 'externalCalls' | 'logs' | 'theGraphClient'>, deployment: DeploymentToValidate): Promise<import("../../types").ValidationResponse>;
|
|
6
|
-
export declare const profiles: ValidateFn;
|
|
7
|
-
//# sourceMappingURL=profiles.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../../../src/validations/access-checker/profiles.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAM,UAAU,EAAoB,MAAM,aAAa,CAAA;AAKhH,wBAAsB,cAAc,CAClC,UAAU,EAAE,IAAI,CAAC,0BAA0B,EAAE,eAAe,CAAC,EAC7D,UAAU,EAAE,oBAAoB,qDAqBjC;AASD,eAAO,MAAM,SAAS,EAAE,UAcvB,CAAA;AA0CD,wBAAsB,SAAS,CAC7B,UAAU,EAAE,IAAI,CAAC,0BAA0B,EAAE,eAAe,GAAG,gBAAgB,CAAC,EAChF,UAAU,EAAE,oBAAoB,qDA8BjC;AAED,wBAAsB,0BAA0B,CAC9C,UAAU,EAAE,IAAI,CAAC,0BAA0B,EAAE,eAAe,GAAG,MAAM,GAAG,gBAAgB,CAAC,EACzF,UAAU,EAAE,oBAAoB,qDAYjC;AAED,eAAO,MAAM,QAAQ,EAAE,UAA0F,CAAA"}
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.profiles = exports.profileSlotsAreNotRepeated = exports.ownsItems = exports.ownsNames = exports.pointerIsValid = void 0;
|
|
4
|
-
const schemas_1 = require("@dcl/schemas");
|
|
5
|
-
const urn_resolver_1 = require("@dcl/urn-resolver");
|
|
6
|
-
const types_1 = require("../../types");
|
|
7
|
-
const profile_1 = require("../profile");
|
|
8
|
-
const timestamps_1 = require("../timestamps");
|
|
9
|
-
const validations_1 = require("../validations");
|
|
10
|
-
async function pointerIsValid(components, deployment) {
|
|
11
|
-
const pointers = deployment.entity.pointers;
|
|
12
|
-
const ethAddress = components.externalCalls.ownerAddress(deployment.auditInfo);
|
|
13
|
-
if (pointers.length !== 1)
|
|
14
|
-
return (0, types_1.validationFailed)(`Only one pointer is allowed when you create a Profile. Received: ${pointers}`);
|
|
15
|
-
const pointer = pointers[0].toLowerCase();
|
|
16
|
-
if (pointer.startsWith('default')) {
|
|
17
|
-
if (!components.externalCalls.isAddressOwnedByDecentraland(ethAddress))
|
|
18
|
-
return (0, types_1.validationFailed)(`Only Decentraland can add or modify default profiles`);
|
|
19
|
-
}
|
|
20
|
-
else if (!schemas_1.EthAddress.validate(pointer)) {
|
|
21
|
-
return (0, types_1.validationFailed)(`The given pointer is not a valid ethereum address.`);
|
|
22
|
-
}
|
|
23
|
-
else if (pointer !== ethAddress.toLowerCase()) {
|
|
24
|
-
return (0, types_1.validationFailed)(`You can only alter your own profile. The pointer address and the signer address are different (pointer:${pointer} signer: ${ethAddress.toLowerCase()}).`);
|
|
25
|
-
}
|
|
26
|
-
return types_1.OK;
|
|
27
|
-
}
|
|
28
|
-
exports.pointerIsValid = pointerIsValid;
|
|
29
|
-
function allClaimedNames(entity) {
|
|
30
|
-
return entity.metadata.avatars
|
|
31
|
-
.filter((avatar) => avatar.hasClaimedName)
|
|
32
|
-
.map((avatar) => avatar.name)
|
|
33
|
-
.filter((name) => name && name.trim().length > 0);
|
|
34
|
-
}
|
|
35
|
-
exports.ownsNames = (0, validations_1.validateAfterADR75)(async (components, deployment) => {
|
|
36
|
-
const { externalCalls, theGraphClient } = components;
|
|
37
|
-
const ethAddress = externalCalls.ownerAddress(deployment.auditInfo);
|
|
38
|
-
const names = allClaimedNames(deployment.entity);
|
|
39
|
-
const namesCheckResult = await theGraphClient.ownsNamesAtTimestamp(ethAddress, names, deployment.entity.timestamp);
|
|
40
|
-
if (!namesCheckResult.result)
|
|
41
|
-
return (0, types_1.validationFailed)(`The following names (${namesCheckResult.failing?.join(', ')}) are not owned by the address ${ethAddress.toLowerCase()}).`);
|
|
42
|
-
return types_1.OK;
|
|
43
|
-
});
|
|
44
|
-
function isBaseAvatar(urn) {
|
|
45
|
-
return urn.includes('base-avatars');
|
|
46
|
-
}
|
|
47
|
-
async function sanitizeUrn(urn) {
|
|
48
|
-
if (!urn.startsWith('dcl://')) {
|
|
49
|
-
return urn;
|
|
50
|
-
}
|
|
51
|
-
const parsed = await (0, urn_resolver_1.parseUrn)(urn);
|
|
52
|
-
return parsed?.uri?.toString();
|
|
53
|
-
}
|
|
54
|
-
async function allOnChainWearableUrns(entity) {
|
|
55
|
-
const allWearablesInProfilePromises = [];
|
|
56
|
-
for (const avatar of entity.metadata.avatars) {
|
|
57
|
-
for (const wearableId of avatar.avatar.wearables) {
|
|
58
|
-
if (!isBaseAvatar(wearableId) && !(0, profile_1.isOldEmote)(wearableId)) {
|
|
59
|
-
allWearablesInProfilePromises.push(sanitizeUrn(wearableId));
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
return (await Promise.all(allWearablesInProfilePromises)).filter((wearableId) => !!wearableId);
|
|
64
|
-
}
|
|
65
|
-
async function allEmoteUrns(entity) {
|
|
66
|
-
const allEmotesInProfilePromises = [];
|
|
67
|
-
const allAvatars = entity.metadata?.avatars ?? [];
|
|
68
|
-
for (const avatar of allAvatars) {
|
|
69
|
-
const allEmotes = avatar.avatar.emotes ?? [];
|
|
70
|
-
for (const { urn } of allEmotes) {
|
|
71
|
-
if (!(0, profile_1.isOldEmote)(urn)) {
|
|
72
|
-
allEmotesInProfilePromises.push(sanitizeUrn(urn));
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
return (await Promise.all(allEmotesInProfilePromises)).filter((wearableId) => !!wearableId);
|
|
77
|
-
}
|
|
78
|
-
async function ownsItems(components, deployment) {
|
|
79
|
-
const { externalCalls, theGraphClient } = components;
|
|
80
|
-
const ethAddress = externalCalls.ownerAddress(deployment.auditInfo);
|
|
81
|
-
const depoymentTimestamp = deployment.entity.timestamp;
|
|
82
|
-
const itemUrns = [];
|
|
83
|
-
if (depoymentTimestamp >= timestamps_1.ADR_75_TIMESTAMP) {
|
|
84
|
-
for (const urn of await allOnChainWearableUrns(deployment.entity)) {
|
|
85
|
-
itemUrns.push(urn);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
if (depoymentTimestamp >= timestamps_1.ADR_74_TIMESTAMP) {
|
|
89
|
-
for (const urn of await allEmoteUrns(deployment.entity)) {
|
|
90
|
-
itemUrns.push(urn);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
const itemsOwnershipResult = await theGraphClient.ownsItemsAtTimestamp(ethAddress, itemUrns, deployment.entity.timestamp);
|
|
94
|
-
if (!itemsOwnershipResult.result) {
|
|
95
|
-
return (0, types_1.validationFailed)(`The following items (${itemsOwnershipResult.failing?.join(', ')}) are not owned by the address ${ethAddress.toLowerCase()}).`);
|
|
96
|
-
}
|
|
97
|
-
return types_1.OK;
|
|
98
|
-
}
|
|
99
|
-
exports.ownsItems = ownsItems;
|
|
100
|
-
async function profileSlotsAreNotRepeated(components, deployment) {
|
|
101
|
-
const allAvatars = deployment.entity.metadata?.avatars ?? [];
|
|
102
|
-
const allEmotes = allAvatars.flatMap((avatar) => avatar.avatar.emotes ?? []);
|
|
103
|
-
const usedSlots = new Set();
|
|
104
|
-
for (const { slot } of allEmotes) {
|
|
105
|
-
if (usedSlots.has(slot)) {
|
|
106
|
-
return (0, types_1.validationFailed)('Emote slots should not be repeated.');
|
|
107
|
-
}
|
|
108
|
-
usedSlots.add(slot);
|
|
109
|
-
}
|
|
110
|
-
return types_1.OK;
|
|
111
|
-
}
|
|
112
|
-
exports.profileSlotsAreNotRepeated = profileSlotsAreNotRepeated;
|
|
113
|
-
exports.profiles = (0, validations_1.validateAll)(pointerIsValid, exports.ownsNames, ownsItems, profileSlotsAreNotRepeated);
|
|
114
|
-
//# sourceMappingURL=profiles.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"profiles.js","sourceRoot":"","sources":["../../../src/validations/access-checker/profiles.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { ContentValidatorComponents, DeploymentToValidate } from '../../types';
|
|
2
|
-
/**
|
|
3
|
-
* Checks if the given address has access to the given parcel at the given timestamp.
|
|
4
|
-
* @public
|
|
5
|
-
*/
|
|
6
|
-
export declare function scenes(components: Pick<ContentValidatorComponents, 'externalCalls' | 'logs' | 'subGraphs'>, deployment: DeploymentToValidate): Promise<import("../../types").ValidationResponse>;
|
|
7
|
-
//# sourceMappingURL=scenes.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scenes.d.ts","sourceRoot":"","sources":["../../../src/validations/access-checker/scenes.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAA6B,MAAM,aAAa,CAAA;AAgCzG;;;GAGG;AACH,wBAAsB,MAAM,CAC1B,UAAU,EAAE,IAAI,CAAC,0BAA0B,EAAE,eAAe,GAAG,MAAM,GAAG,WAAW,CAAC,EACpF,UAAU,EAAE,oBAAoB,qDAsSjC"}
|