@dcl/content-validator 4.3.0 → 4.3.1-4304792003.commit-3da518e

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.
Files changed (141) hide show
  1. package/dist/index.d.ts +1 -2
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +4 -5
  4. package/dist/index.js.map +1 -1
  5. package/dist/types.d.ts +9 -3
  6. package/dist/types.d.ts.map +1 -1
  7. package/dist/types.js.map +1 -1
  8. package/dist/validations/ADR45.d.ts +2 -2
  9. package/dist/validations/ADR45.d.ts.map +1 -1
  10. package/dist/validations/ADR45.js +3 -3
  11. package/dist/validations/ADR45.js.map +1 -1
  12. package/dist/validations/content.d.ts +6 -10
  13. package/dist/validations/content.d.ts.map +1 -1
  14. package/dist/validations/content.js +29 -24
  15. package/dist/validations/content.js.map +1 -1
  16. package/dist/validations/entity-structure.d.ts +2 -2
  17. package/dist/validations/entity-structure.d.ts.map +1 -1
  18. package/dist/validations/entity-structure.js +3 -3
  19. package/dist/validations/entity-structure.js.map +1 -1
  20. package/dist/validations/index.d.ts +2 -21
  21. package/dist/validations/index.d.ts.map +1 -1
  22. package/dist/validations/index.js +20 -18
  23. package/dist/validations/index.js.map +1 -1
  24. package/dist/validations/ipfs-hashing.d.ts +1 -2
  25. package/dist/validations/ipfs-hashing.d.ts.map +1 -1
  26. package/dist/validations/ipfs-hashing.js +2 -2
  27. package/dist/validations/ipfs-hashing.js.map +1 -1
  28. package/dist/validations/items/emotes.d.ts +4 -4
  29. package/dist/validations/items/emotes.d.ts.map +1 -1
  30. package/dist/validations/items/emotes.js +6 -6
  31. package/dist/validations/items/emotes.js.map +1 -1
  32. package/dist/validations/items/items.d.ts +4 -4
  33. package/dist/validations/items/items.d.ts.map +1 -1
  34. package/dist/validations/items/items.js +67 -52
  35. package/dist/validations/items/items.js.map +1 -1
  36. package/dist/validations/items/wearables.d.ts +3 -3
  37. package/dist/validations/items/wearables.d.ts.map +1 -1
  38. package/dist/validations/items/wearables.js +4 -4
  39. package/dist/validations/items/wearables.js.map +1 -1
  40. package/dist/validations/metadata-schema.d.ts +10 -1
  41. package/dist/validations/metadata-schema.d.ts.map +1 -1
  42. package/dist/validations/metadata-schema.js +9 -6
  43. package/dist/validations/metadata-schema.js.map +1 -1
  44. package/dist/validations/profile.d.ts +7 -10
  45. package/dist/validations/profile.d.ts.map +1 -1
  46. package/dist/validations/profile.js +57 -37
  47. package/dist/validations/profile.js.map +1 -1
  48. package/dist/validations/scene.d.ts +2 -2
  49. package/dist/validations/scene.d.ts.map +1 -1
  50. package/dist/validations/scene.js +8 -7
  51. package/dist/validations/scene.js.map +1 -1
  52. package/dist/validations/signature.d.ts +2 -2
  53. package/dist/validations/signature.d.ts.map +1 -1
  54. package/dist/validations/signature.js +8 -6
  55. package/dist/validations/signature.js.map +1 -1
  56. package/dist/validations/size.d.ts +2 -2
  57. package/dist/validations/size.d.ts.map +1 -1
  58. package/dist/validations/size.js +31 -29
  59. package/dist/validations/size.js.map +1 -1
  60. package/dist/validations/subgraph-access-checker/access.d.ts +7 -0
  61. package/dist/validations/subgraph-access-checker/access.d.ts.map +1 -0
  62. package/dist/validations/subgraph-access-checker/access.js +48 -0
  63. package/dist/validations/subgraph-access-checker/access.js.map +1 -0
  64. package/dist/validations/subgraph-access-checker/emotes.d.ts +3 -0
  65. package/dist/validations/subgraph-access-checker/emotes.d.ts.map +1 -0
  66. package/dist/validations/subgraph-access-checker/emotes.js +9 -0
  67. package/dist/validations/subgraph-access-checker/emotes.js.map +1 -0
  68. package/dist/validations/subgraph-access-checker/items/collection-asset.d.ts.map +1 -0
  69. package/dist/validations/subgraph-access-checker/items/collection-asset.js.map +1 -0
  70. package/dist/validations/{access-checker → subgraph-access-checker}/items/items.d.ts +2 -2
  71. package/dist/validations/subgraph-access-checker/items/items.d.ts.map +1 -0
  72. package/dist/validations/{access-checker → subgraph-access-checker}/items/items.js +26 -24
  73. package/dist/validations/subgraph-access-checker/items/items.js.map +1 -0
  74. package/dist/validations/subgraph-access-checker/items/off-chain-asset.d.ts.map +1 -0
  75. package/dist/validations/subgraph-access-checker/items/off-chain-asset.js.map +1 -0
  76. package/dist/validations/subgraph-access-checker/items/third-party-asset.d.ts.map +1 -0
  77. package/dist/validations/subgraph-access-checker/items/third-party-asset.js.map +1 -0
  78. package/dist/validations/subgraph-access-checker/profiles.d.ts +6 -0
  79. package/dist/validations/subgraph-access-checker/profiles.d.ts.map +1 -0
  80. package/dist/validations/subgraph-access-checker/profiles.js +105 -0
  81. package/dist/validations/subgraph-access-checker/profiles.js.map +1 -0
  82. package/dist/validations/subgraph-access-checker/scenes.d.ts +7 -0
  83. package/dist/validations/subgraph-access-checker/scenes.d.ts.map +1 -0
  84. package/dist/validations/subgraph-access-checker/scenes.js +262 -0
  85. package/dist/validations/subgraph-access-checker/scenes.js.map +1 -0
  86. package/dist/validations/subgraph-access-checker/stores.d.ts +7 -0
  87. package/dist/validations/subgraph-access-checker/stores.d.ts.map +1 -0
  88. package/dist/validations/subgraph-access-checker/stores.js +35 -0
  89. package/dist/validations/subgraph-access-checker/stores.js.map +1 -0
  90. package/dist/validations/subgraph-access-checker/the-graph-client.d.ts +10 -0
  91. package/dist/validations/subgraph-access-checker/the-graph-client.d.ts.map +1 -0
  92. package/dist/validations/subgraph-access-checker/the-graph-client.js.map +1 -0
  93. package/dist/validations/subgraph-access-checker/wearables.d.ts +3 -0
  94. package/dist/validations/subgraph-access-checker/wearables.d.ts.map +1 -0
  95. package/dist/validations/{access-checker → subgraph-access-checker}/wearables.js +4 -4
  96. package/dist/validations/subgraph-access-checker/wearables.js.map +1 -0
  97. package/dist/validations/validations.d.ts.map +1 -1
  98. package/dist/validations/validations.js +4 -4
  99. package/dist/validations/validations.js.map +1 -1
  100. package/package.json +5 -3
  101. package/dist/the-graph-client/the-graph-client.d.ts +0 -10
  102. package/dist/the-graph-client/the-graph-client.d.ts.map +0 -1
  103. package/dist/the-graph-client/the-graph-client.js.map +0 -1
  104. package/dist/validations/access-checker/access.d.ts +0 -7
  105. package/dist/validations/access-checker/access.d.ts.map +0 -1
  106. package/dist/validations/access-checker/access.js +0 -42
  107. package/dist/validations/access-checker/access.js.map +0 -1
  108. package/dist/validations/access-checker/emotes.d.ts +0 -3
  109. package/dist/validations/access-checker/emotes.d.ts.map +0 -1
  110. package/dist/validations/access-checker/emotes.js +0 -12
  111. package/dist/validations/access-checker/emotes.js.map +0 -1
  112. package/dist/validations/access-checker/items/collection-asset.d.ts.map +0 -1
  113. package/dist/validations/access-checker/items/collection-asset.js.map +0 -1
  114. package/dist/validations/access-checker/items/items.d.ts.map +0 -1
  115. package/dist/validations/access-checker/items/items.js.map +0 -1
  116. package/dist/validations/access-checker/items/off-chain-asset.d.ts.map +0 -1
  117. package/dist/validations/access-checker/items/off-chain-asset.js.map +0 -1
  118. package/dist/validations/access-checker/items/third-party-asset.d.ts.map +0 -1
  119. package/dist/validations/access-checker/items/third-party-asset.js.map +0 -1
  120. package/dist/validations/access-checker/profiles.d.ts +0 -7
  121. package/dist/validations/access-checker/profiles.d.ts.map +0 -1
  122. package/dist/validations/access-checker/profiles.js +0 -114
  123. package/dist/validations/access-checker/profiles.js.map +0 -1
  124. package/dist/validations/access-checker/scenes.d.ts +0 -7
  125. package/dist/validations/access-checker/scenes.d.ts.map +0 -1
  126. package/dist/validations/access-checker/scenes.js +0 -261
  127. package/dist/validations/access-checker/scenes.js.map +0 -1
  128. package/dist/validations/access-checker/stores.d.ts +0 -7
  129. package/dist/validations/access-checker/stores.d.ts.map +0 -1
  130. package/dist/validations/access-checker/stores.js +0 -33
  131. package/dist/validations/access-checker/stores.js.map +0 -1
  132. package/dist/validations/access-checker/wearables.d.ts +0 -3
  133. package/dist/validations/access-checker/wearables.d.ts.map +0 -1
  134. package/dist/validations/access-checker/wearables.js.map +0 -1
  135. /package/dist/validations/{access-checker → subgraph-access-checker}/items/collection-asset.d.ts +0 -0
  136. /package/dist/validations/{access-checker → subgraph-access-checker}/items/collection-asset.js +0 -0
  137. /package/dist/validations/{access-checker → subgraph-access-checker}/items/off-chain-asset.d.ts +0 -0
  138. /package/dist/validations/{access-checker → subgraph-access-checker}/items/off-chain-asset.js +0 -0
  139. /package/dist/validations/{access-checker → subgraph-access-checker}/items/third-party-asset.d.ts +0 -0
  140. /package/dist/validations/{access-checker → subgraph-access-checker}/items/third-party-asset.js +0 -0
  141. /package/dist/{the-graph-client → validations/subgraph-access-checker}/the-graph-client.js +0 -0
@@ -0,0 +1,262 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createSceneValidateFn = void 0;
7
+ const ms_1 = __importDefault(require("ms"));
8
+ const types_1 = require("../../types");
9
+ /**
10
+ * Checks if the given address has access to the given parcel at the given timestamp.
11
+ * @public
12
+ */
13
+ function createSceneValidateFn({ externalCalls, subGraphs, logs }) {
14
+ const logger = logs.getLogger('scenes access validator');
15
+ const SCENE_LOOKBACK_TIME = (0, ms_1.default)('5m');
16
+ return async function validateFn(deployment) {
17
+ const getAuthorizations = async (owner, operator, timestamp) => {
18
+ const query = `
19
+ query GetAuthorizations($owner: String!, $operator: String!, $timestamp: Int!) {
20
+ authorizations(
21
+ where: {
22
+ owner: $owner,
23
+ operator: $operator,
24
+ createdAt_lte: $timestamp
25
+ },
26
+ orderBy: timestamp,
27
+ orderDirection: desc
28
+ ) {
29
+ type
30
+ isApproved
31
+ }
32
+ }`;
33
+ const variables = {
34
+ owner,
35
+ operator,
36
+ timestamp: Math.floor(timestamp / 1000) // js(ms) -> UNIX(s)
37
+ };
38
+ try {
39
+ return (await subGraphs.L1.landManager.query(query, variables)).authorizations;
40
+ }
41
+ catch (error) {
42
+ logger.error(`Error fetching authorizations for ${owner}`);
43
+ throw error;
44
+ }
45
+ };
46
+ const getEstate = async (estateId, timestamp) => {
47
+ /**
48
+ * You can use `owner`, `operator` and `updateOperator` to check the current value for that estate.
49
+ * Keep in mind that each association (owners, operators, etc) is capped to a thousand (1000) results.
50
+ * For more information, you can use the query explorer at https://thegraph.com/explorer/subgraph/decentraland/land-manager
51
+ */
52
+ const query = `
53
+ query GetEstate($estateId: String!, $timestamp: Int!) {
54
+ estates(where:{ id: $estateId }) {
55
+ id
56
+ owners(
57
+ where: { createdAt_lte: $timestamp },
58
+ orderBy: timestamp,
59
+ orderDirection: desc,
60
+ first: 1
61
+ ) {
62
+ address
63
+ }
64
+ operators(
65
+ where: { createdAt_lte: $timestamp },
66
+ orderBy: timestamp,
67
+ orderDirection: desc,
68
+ first: 1
69
+ ) {
70
+ address
71
+ }
72
+ updateOperators(
73
+ where: { createdAt_lte: $timestamp },
74
+ orderBy: timestamp,
75
+ orderDirection: desc,
76
+ first: 1
77
+ ) {
78
+ address
79
+ }
80
+ }
81
+ }`;
82
+ const variables = {
83
+ estateId,
84
+ timestamp: Math.floor(timestamp / 1000) // UNIX
85
+ };
86
+ try {
87
+ return (await subGraphs.L1.landManager.query(query, variables)).estates[0];
88
+ }
89
+ catch (error) {
90
+ logger.error(`Error fetching estate (${estateId})`);
91
+ throw error;
92
+ }
93
+ };
94
+ const getParcel = async (x, y, timestamp) => {
95
+ /**
96
+ * You can use `owner`, `operator` and `updateOperator` to check the current value for that parcel.
97
+ * Keep in mind that each association (owners, operators, etc) is capped to a thousand (1000) results.
98
+ * For more information, you can use the query explorer at https://thegraph.com/explorer/subgraph/decentraland/land-manager
99
+ */
100
+ const query = `
101
+ query GetParcel($x: Int!, $y: Int!, $timestamp: Int!) {
102
+ parcels(where:{ x: $x, y: $y }) {
103
+ estates(
104
+ where: { createdAt_lte: $timestamp },
105
+ orderBy: createdAt,
106
+ orderDirection: desc,
107
+ first: 1
108
+ ) {
109
+ estateId
110
+ }
111
+ owners(
112
+ where: { createdAt_lte: $timestamp },
113
+ orderBy: timestamp,
114
+ orderDirection: desc,
115
+ first: 1
116
+ ) {
117
+ address
118
+ }
119
+ operators(
120
+ where: { createdAt_lte: $timestamp },
121
+ orderBy: timestamp,
122
+ orderDirection: desc,
123
+ first: 1
124
+ ) {
125
+ address
126
+ }
127
+ updateOperators(
128
+ where: { createdAt_lte: $timestamp },
129
+ orderBy: timestamp,
130
+ orderDirection: desc,
131
+ first: 1
132
+ ) {
133
+ address
134
+ }
135
+ }
136
+ }`;
137
+ const variables = {
138
+ x,
139
+ y,
140
+ timestamp: Math.floor(timestamp / 1000) // UNIX
141
+ };
142
+ try {
143
+ const r = await subGraphs.L1.landManager.query(query, variables);
144
+ if (r.parcels && r.parcels.length)
145
+ return r.parcels[0];
146
+ logger.error(`Error fetching parcel (${x}, ${y}, ${timestamp}): ${JSON.stringify(r)}`);
147
+ throw new Error(`Error fetching parcel (${x}, ${y}), ${timestamp}`);
148
+ }
149
+ catch (error) {
150
+ logger.error(`Error fetching parcel (${x}, ${y}, ${timestamp})`);
151
+ throw error;
152
+ }
153
+ };
154
+ const hasAccessThroughAuthorizations = async (owner, ethAddress, timestamp) => {
155
+ /* You also get access if you received:
156
+ * - an authorization with isApproved and type Operator, ApprovalForAll or UpdateManager
157
+ * at that time
158
+ */
159
+ const authorizations = await getAuthorizations(owner.toLowerCase(), ethAddress.toLowerCase(), timestamp);
160
+ const firstOperatorAuthorization = authorizations.find((authorization) => authorization.type === 'Operator');
161
+ const firstApprovalForAllAuthorization = authorizations.find((authorization) => authorization.type === 'ApprovalForAll');
162
+ const firstUpdateManagerAuthorization = authorizations.find((authorization) => authorization.type === 'UpdateManager');
163
+ if (firstOperatorAuthorization?.isApproved ||
164
+ firstApprovalForAllAuthorization?.isApproved ||
165
+ firstUpdateManagerAuthorization?.isApproved) {
166
+ return true;
167
+ }
168
+ return false;
169
+ };
170
+ const hasAccessThroughFirstLevelAuthorities = async (target, ethAddress) => {
171
+ const firstLevelAuthorities = [...target.owners, ...target.operators, ...target.updateOperators]
172
+ .filter((addressSnapshot) => addressSnapshot.address)
173
+ .map((addressSnapshot) => addressSnapshot.address.toLowerCase());
174
+ return firstLevelAuthorities.includes(ethAddress.toLowerCase());
175
+ };
176
+ const isEstateUpdateAuthorized = async (estateId, timestamp, ethAddress) => {
177
+ const estate = await getEstate(estateId.toString(), timestamp);
178
+ if (estate) {
179
+ return ((await hasAccessThroughFirstLevelAuthorities(estate, ethAddress)) ||
180
+ (await hasAccessThroughAuthorizations(estate.owners[0].address, ethAddress, timestamp)));
181
+ }
182
+ throw new Error(`Couldn\'t find the state ${estateId}`);
183
+ };
184
+ const isParcelUpdateAuthorized = async (x, y, timestamp, ethAddress, _externalCalls) => {
185
+ /* You get direct access if you were the:
186
+ * - owner
187
+ * - operator
188
+ * - update operator
189
+ * at that time
190
+ */
191
+ const parcel = await getParcel(x, y, timestamp);
192
+ if (parcel) {
193
+ const belongsToEstate = parcel.estates != undefined && parcel.estates.length > 0 && parcel.estates[0].estateId != undefined;
194
+ return ((await hasAccessThroughFirstLevelAuthorities(parcel, ethAddress)) ||
195
+ (await hasAccessThroughAuthorizations(parcel.owners[0].address, ethAddress, timestamp)) ||
196
+ (belongsToEstate && (await isEstateUpdateAuthorized(parcel.estates[0].estateId, timestamp, ethAddress))));
197
+ }
198
+ throw new Error(`Parcel(${x},${y},${timestamp}) not found`);
199
+ };
200
+ const checkParcelAccess = async (x, y, timestamp, ethAddress, externalCalls) => {
201
+ try {
202
+ return await retry(() => isParcelUpdateAuthorized(x, y, timestamp, ethAddress, externalCalls), 5, '0.1s');
203
+ }
204
+ catch (error) {
205
+ logger.error(`Error checking parcel access (${x}, ${y}, ${timestamp}, ${ethAddress}).`);
206
+ throw error;
207
+ }
208
+ };
209
+ const { entity } = deployment;
210
+ const { pointers, timestamp } = entity;
211
+ const ethAddress = externalCalls.ownerAddress(deployment.auditInfo);
212
+ const errors = [];
213
+ const lowerCasePointers = pointers.map((pointer) => pointer.toLowerCase());
214
+ for (const pointer of lowerCasePointers) {
215
+ const pointerParts = pointer.split(',');
216
+ if (pointerParts.length === 2) {
217
+ const x = parseInt(pointerParts[0], 10);
218
+ const y = parseInt(pointerParts[1], 10);
219
+ try {
220
+ // Check that the address has access (we check both the present and the 5 min into the past to avoid synchronization issues in the blockchain)
221
+ const hasAccess = (await checkParcelAccess(x, y, timestamp, ethAddress, externalCalls)) ||
222
+ (await checkParcelAccess(x, y, timestamp - SCENE_LOOKBACK_TIME, ethAddress, externalCalls));
223
+ if (!hasAccess) {
224
+ errors.push(`The provided Eth Address does not have access to the following parcel: (${x},${y})`);
225
+ }
226
+ }
227
+ catch (e) {
228
+ errors.push(`The provided Eth Address does not have access to the following parcel: (${x},${y}). ${e}`);
229
+ }
230
+ }
231
+ else {
232
+ errors.push(`Scene pointers should only contain two integers separated by a comma, for example (10,10) or (120,-45). Invalid pointer: ${pointer}`);
233
+ }
234
+ }
235
+ return (0, types_1.fromErrors)(...errors);
236
+ };
237
+ }
238
+ exports.createSceneValidateFn = createSceneValidateFn;
239
+ /** @internal */
240
+ async function retry(execution, attempts, waitTime = '1s', failedAttemptCallback) {
241
+ while (attempts > 0) {
242
+ try {
243
+ return await execution();
244
+ // ^^^^^ never remove this "await" keyword, otherwise this function won't
245
+ // catch the exception and perform the retries
246
+ }
247
+ catch (error) {
248
+ attempts--;
249
+ if (attempts > 0) {
250
+ if (failedAttemptCallback) {
251
+ failedAttemptCallback(attempts);
252
+ }
253
+ await new Promise((res) => setTimeout(res, (0, ms_1.default)(waitTime)));
254
+ }
255
+ else {
256
+ throw error;
257
+ }
258
+ }
259
+ }
260
+ throw new Error('Please specify more than one attempt for the retry function');
261
+ }
262
+ //# sourceMappingURL=scenes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scenes.js","sourceRoot":"","sources":["../../../src/validations/subgraph-access-checker/scenes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { SubgraphAccessCheckerComponents, ValidateFn } 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 createStoreValidateFn(components: Pick<SubgraphAccessCheckerComponents, 'externalCalls' | 'logs' | 'theGraphClient'>): ValidateFn;
7
+ //# sourceMappingURL=stores.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stores.d.ts","sourceRoot":"","sources":["../../../src/validations/subgraph-access-checker/stores.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,+BAA+B,EAC/B,UAAU,EAGX,MAAM,aAAa,CAAA;AAUpB;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,IAAI,CAAC,+BAA+B,EAAE,eAAe,GAAG,MAAM,GAAG,gBAAgB,CAAC,GAC7F,UAAU,CAuBZ"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createStoreValidateFn = void 0;
4
+ const urn_resolver_1 = require("@dcl/urn-resolver");
5
+ const types_1 = require("../../types");
6
+ async function parseUrnNoFail(pointer) {
7
+ try {
8
+ const parsed = await (0, urn_resolver_1.parseUrn)(pointer);
9
+ if (!parsed || parsed?.type !== 'off-chain')
10
+ return undefined;
11
+ return parsed;
12
+ }
13
+ catch { }
14
+ }
15
+ /**
16
+ * Validate that the pointers are valid, and that the Ethereum address has write access to them
17
+ * @public
18
+ */
19
+ function createStoreValidateFn(components) {
20
+ return async function validateFn(deployment) {
21
+ const pointers = deployment.entity.pointers;
22
+ const ethAddress = components.externalCalls.ownerAddress(deployment.auditInfo);
23
+ if (pointers.length !== 1)
24
+ return (0, types_1.validationFailed)(`Only one pointer is allowed when you create a Store. Received: ${pointers}`);
25
+ const pointer = pointers[0].toLowerCase();
26
+ const offchainAsset = await parseUrnNoFail(pointer);
27
+ if (!offchainAsset)
28
+ return (0, types_1.validationFailed)(`Store pointers should be a urn, for example (urn:decentraland:off-chain:marketplace-stores:{address}). Invalid pointer: ${pointer}`);
29
+ if (offchainAsset.id !== ethAddress)
30
+ return (0, types_1.validationFailed)(`You can only alter your own store. The pointer address and the signer address are different (address:${offchainAsset.id.toLowerCase()} signer: ${ethAddress.toLowerCase()}).`);
31
+ return types_1.OK;
32
+ };
33
+ }
34
+ exports.createStoreValidateFn = createStoreValidateFn;
35
+ //# sourceMappingURL=stores.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stores.js","sourceRoot":"","sources":["../../../src/validations/subgraph-access-checker/stores.ts"],"names":[],"mappings":";;;AAAA,oDAA2D;AAC3D,uCAOoB;AAEpB,KAAK,UAAU,cAAc,CAAC,OAAe;IAC3C,IAAI;QACF,MAAM,MAAM,GAAG,MAAM,IAAA,uBAAQ,EAAC,OAAO,CAAC,CAAA;QACtC,IAAI,CAAC,MAAM,IAAI,MAAM,EAAE,IAAI,KAAK,WAAW;YAAE,OAAO,SAAS,CAAA;QAC7D,OAAO,MAAM,CAAA;KACd;IAAC,MAAM,GAAE;AACZ,CAAC;AAED;;;GAGG;AACH,SAAgB,qBAAqB,CACnC,UAA8F;IAE9F,OAAO,KAAK,UAAU,UAAU,CAAC,UAAgC;QAC/D,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAA;QAC3C,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;QAE9E,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YACvB,OAAO,IAAA,wBAAgB,EAAC,kEAAkE,QAAQ,EAAE,CAAC,CAAA;QAEvG,MAAM,OAAO,GAAW,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QACjD,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,CAAA;QAEnD,IAAI,CAAC,aAAa;YAChB,OAAO,IAAA,wBAAgB,EACrB,2HAA2H,OAAO,EAAE,CACrI,CAAA;QAEH,IAAI,aAAa,CAAC,EAAE,KAAK,UAAU;YACjC,OAAO,IAAA,wBAAgB,EACrB,wGAAwG,aAAa,CAAC,EAAE,CAAC,WAAW,EAAE,YAAY,UAAU,CAAC,WAAW,EAAE,IAAI,CAC/K,CAAA;QAEH,OAAO,UAAE,CAAA;IACX,CAAC,CAAA;AACH,CAAC;AAzBD,sDAyBC"}
@@ -0,0 +1,10 @@
1
+ import { SubgraphAccessCheckerComponents, TheGraphClient } from '../../types';
2
+ export declare type PermissionResult = {
3
+ result: boolean;
4
+ failing?: string[];
5
+ };
6
+ /**
7
+ * @public
8
+ */
9
+ export declare const createTheGraphClient: (components: Pick<SubgraphAccessCheckerComponents, 'logs' | 'subGraphs'>) => TheGraphClient;
10
+ //# sourceMappingURL=the-graph-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"the-graph-client.d.ts","sourceRoot":"","sources":["../../../src/validations/subgraph-access-checker/the-graph-client.ts"],"names":[],"mappings":"AAGA,OAAO,EAAoB,+BAA+B,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAE/F,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,+BAA+B,EAAE,MAAM,GAAG,WAAW,CAAC,KACtE,cAoOF,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"the-graph-client.js","sourceRoot":"","sources":["../../../src/validations/subgraph-access-checker/the-graph-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { SubgraphAccessCheckerComponents, ValidateFn } from '../../types';
2
+ export declare function createWearableValidateFn(components: Pick<SubgraphAccessCheckerComponents, 'externalCalls' | 'logs' | 'theGraphClient'>): ValidateFn;
3
+ //# sourceMappingURL=wearables.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wearables.d.ts","sourceRoot":"","sources":["../../../src/validations/subgraph-access-checker/wearables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAGzE,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,IAAI,CAAC,+BAA+B,EAAE,eAAe,GAAG,MAAM,GAAG,gBAAgB,CAAC,GAC7F,UAAU,CAOZ"}
@@ -1,14 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.wearables = void 0;
3
+ exports.createWearableValidateFn = void 0;
4
4
  const items_1 = require("./items/items");
5
- async function wearables(components, deployment) {
6
- return (0, items_1.itemsValidation)(components, deployment, [
5
+ function createWearableValidateFn(components) {
6
+ return (0, items_1.createItemValidateFn)(components, [
7
7
  'off-chain',
8
8
  'blockchain-collection-v1-asset',
9
9
  'blockchain-collection-v2-asset',
10
10
  'blockchain-collection-third-party'
11
11
  ]);
12
12
  }
13
- exports.wearables = wearables;
13
+ exports.createWearableValidateFn = createWearableValidateFn;
14
14
  //# sourceMappingURL=wearables.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wearables.js","sourceRoot":"","sources":["../../../src/validations/subgraph-access-checker/wearables.ts"],"names":[],"mappings":";;;AACA,yCAAoD;AAEpD,SAAgB,wBAAwB,CACtC,UAA8F;IAE9F,OAAO,IAAA,4BAAoB,EAAC,UAAU,EAAE;QACtC,WAAW;QACX,gCAAgC;QAChC,gCAAgC;QAChC,mCAAmC;KACpC,CAAC,CAAA;AACJ,CAAC;AATD,4DASC"}
@@ -1 +1 @@
1
- {"version":3,"file":"validations.d.ts","sourceRoot":"","sources":["../../src/validations/validations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAA8B,oBAAoB,EAAM,UAAU,EAAE,MAAM,UAAU,CAAA;AAS3F,wBAAgB,WAAW,CAAC,GAAG,aAAa,EAAE,UAAU,EAAE,GAAG,UAAU,CAQtE;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,CAAC,UAAU,EAAE,oBAAoB,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,EAC3E,UAAU,EAAE,UAAU,GACrB,UAAU,CAQZ;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU,CAEnE;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU,CAEnE;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU,CAEnE;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU,CAEpE;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU,CAEpE;AAED,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,cAEjF"}
1
+ {"version":3,"file":"validations.d.ts","sourceRoot":"","sources":["../../src/validations/validations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,oBAAoB,EAAM,UAAU,EAAE,MAAM,UAAU,CAAA;AAS/D,wBAAgB,WAAW,CAAC,GAAG,aAAa,EAAE,UAAU,EAAE,GAAG,UAAU,CAQtE;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,CAAC,UAAU,EAAE,oBAAoB,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,EAC3E,UAAU,EAAE,UAAU,GACrB,UAAU,CAQZ;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU,CAEnE;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU,CAEnE;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU,CAEnE;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU,CAEpE;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU,CAEpE;AAED,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,cAEjF"}
@@ -4,9 +4,9 @@ exports.validateIfTypeMatches = exports.validateAfterADR173 = exports.validateAf
4
4
  const types_1 = require("../types");
5
5
  const timestamps_1 = require("./timestamps");
6
6
  function validateAll(...validationFns) {
7
- return async (components, deployment) => {
7
+ return async (deployment) => {
8
8
  for (const validateFn of validationFns) {
9
- const response = await validateFn(components, deployment);
9
+ const response = await validateFn(deployment);
10
10
  if (!response.ok)
11
11
  return response;
12
12
  }
@@ -15,10 +15,10 @@ function validateAll(...validationFns) {
15
15
  }
16
16
  exports.validateAll = validateAll;
17
17
  function validateIfConditionMet(condition, validateFn) {
18
- return async (components, deployment) => {
18
+ return async (deployment) => {
19
19
  const conditionIsMet = await condition(deployment);
20
20
  if (conditionIsMet) {
21
- return validateFn(components, deployment);
21
+ return validateFn(deployment);
22
22
  }
23
23
  return types_1.OK;
24
24
  };
@@ -1 +1 @@
1
- {"version":3,"file":"validations.js","sourceRoot":"","sources":["../../src/validations/validations.ts"],"names":[],"mappings":";;;AACA,oCAA2F;AAC3F,6CAMqB;AAErB,SAAgB,WAAW,CAAC,GAAG,aAA2B;IACxD,OAAO,KAAK,EAAE,UAAsC,EAAE,UAAgC,EAAE,EAAE;QACxF,KAAK,MAAM,UAAU,IAAI,aAAa,EAAE;YACtC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;YACzD,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,OAAO,QAAQ,CAAA;SAClC;QACD,OAAO,UAAE,CAAA;IACX,CAAC,CAAA;AACH,CAAC;AARD,kCAQC;AAED,SAAgB,sBAAsB,CACpC,SAA2E,EAC3E,UAAsB;IAEtB,OAAO,KAAK,EAAE,UAAsC,EAAE,UAAgC,EAAE,EAAE;QACxF,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,CAAA;QAClD,IAAI,cAAc,EAAE;YAClB,OAAO,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;SAC1C;QACD,OAAO,UAAE,CAAA;IACX,CAAC,CAAA;AACH,CAAC;AAXD,wDAWC;AAED,SAAgB,kBAAkB,CAAC,QAAoB;IACrD,OAAO,sBAAsB,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,IAAI,6BAAgB,EAAE,QAAQ,CAAC,CAAA;AAC1G,CAAC;AAFD,gDAEC;AAED,SAAgB,kBAAkB,CAAC,QAAoB;IACrD,OAAO,sBAAsB,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,IAAI,6BAAgB,EAAE,QAAQ,CAAC,CAAA;AAC1G,CAAC;AAFD,gDAEC;AAED,SAAgB,kBAAkB,CAAC,QAAoB;IACrD,OAAO,sBAAsB,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,IAAI,6BAAgB,EAAE,QAAQ,CAAC,CAAA;AAC1G,CAAC;AAFD,gDAEC;AAED,SAAgB,mBAAmB,CAAC,QAAoB;IACtD,OAAO,sBAAsB,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,IAAI,8BAAiB,EAAE,QAAQ,CAAC,CAAA;AAC3G,CAAC;AAFD,kDAEC;AAED,SAAgB,mBAAmB,CAAC,QAAoB;IACtD,OAAO,sBAAsB,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,IAAI,8BAAiB,EAAE,QAAQ,CAAC,CAAA;AAC3G,CAAC;AAFD,kDAEC;AAED,SAAgB,qBAAqB,CAAC,UAAsB,EAAE,QAAoB;IAChF,OAAO,sBAAsB,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,QAAQ,CAAC,CAAA;AAChG,CAAC;AAFD,sDAEC"}
1
+ {"version":3,"file":"validations.js","sourceRoot":"","sources":["../../src/validations/validations.ts"],"names":[],"mappings":";;;AACA,oCAA+D;AAC/D,6CAMqB;AAErB,SAAgB,WAAW,CAAC,GAAG,aAA2B;IACxD,OAAO,KAAK,EAAE,UAAgC,EAAE,EAAE;QAChD,KAAK,MAAM,UAAU,IAAI,aAAa,EAAE;YACtC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,CAAA;YAC7C,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,OAAO,QAAQ,CAAA;SAClC;QACD,OAAO,UAAE,CAAA;IACX,CAAC,CAAA;AACH,CAAC;AARD,kCAQC;AAED,SAAgB,sBAAsB,CACpC,SAA2E,EAC3E,UAAsB;IAEtB,OAAO,KAAK,EAAE,UAAgC,EAAE,EAAE;QAChD,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,CAAA;QAClD,IAAI,cAAc,EAAE;YAClB,OAAO,UAAU,CAAC,UAAU,CAAC,CAAA;SAC9B;QACD,OAAO,UAAE,CAAA;IACX,CAAC,CAAA;AACH,CAAC;AAXD,wDAWC;AAED,SAAgB,kBAAkB,CAAC,QAAoB;IACrD,OAAO,sBAAsB,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,IAAI,6BAAgB,EAAE,QAAQ,CAAC,CAAA;AAC1G,CAAC;AAFD,gDAEC;AAED,SAAgB,kBAAkB,CAAC,QAAoB;IACrD,OAAO,sBAAsB,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,IAAI,6BAAgB,EAAE,QAAQ,CAAC,CAAA;AAC1G,CAAC;AAFD,gDAEC;AAED,SAAgB,kBAAkB,CAAC,QAAoB;IACrD,OAAO,sBAAsB,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,IAAI,6BAAgB,EAAE,QAAQ,CAAC,CAAA;AAC1G,CAAC;AAFD,gDAEC;AAED,SAAgB,mBAAmB,CAAC,QAAoB;IACtD,OAAO,sBAAsB,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,IAAI,8BAAiB,EAAE,QAAQ,CAAC,CAAA;AAC3G,CAAC;AAFD,kDAEC;AAED,SAAgB,mBAAmB,CAAC,QAAoB;IACtD,OAAO,sBAAsB,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,IAAI,8BAAiB,EAAE,QAAQ,CAAC,CAAA;AAC3G,CAAC;AAFD,kDAEC;AAED,SAAgB,qBAAqB,CAAC,UAAsB,EAAE,QAAoB;IAChF,OAAO,sBAAsB,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,QAAQ,CAAC,CAAA;AAChG,CAAC;AAFD,sDAEC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dcl/content-validator",
3
- "version": "4.3.0",
3
+ "version": "4.3.1-4304792003.commit-3da518e",
4
4
  "description": "Catalyst content validations",
5
5
  "main": "dist/index.js",
6
6
  "typings": "dist/index.d.ts",
@@ -27,7 +27,9 @@
27
27
  "prettier": {
28
28
  "printWidth": 120,
29
29
  "semi": false,
30
- "singleQuote": true
30
+ "singleQuote": true,
31
+ "trailingComma": "none",
32
+ "tabWidth": 2
31
33
  },
32
34
  "homepage": "https://github.com/decentraland/content-validator#readme",
33
35
  "devDependencies": {
@@ -61,5 +63,5 @@
61
63
  "files": [
62
64
  "dist"
63
65
  ],
64
- "commit": "d0656754c2df550fefb71e96954948337411b8a3"
66
+ "commit": "3da518e647880103c3017e60013954f4fecef8b6"
65
67
  }
@@ -1,10 +0,0 @@
1
- import { ContentValidatorComponents, TheGraphClient } from '../types';
2
- export declare type PermissionResult = {
3
- result: boolean;
4
- failing?: string[];
5
- };
6
- /**
7
- * @public
8
- */
9
- export declare const createTheGraphClient: (components: Pick<ContentValidatorComponents, 'logs' | 'subGraphs'>) => TheGraphClient;
10
- //# sourceMappingURL=the-graph-client.d.ts.map
@@ -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 +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 +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 +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 +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"}