@xyo-network/diviner-evm-call-result-to-token-uri 3.0.3 → 3.0.5
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/neutral/Config.d.ts +7 -0
- package/dist/neutral/Config.d.ts.map +1 -0
- package/dist/neutral/Diviner.d.ts +10 -0
- package/dist/neutral/Diviner.d.ts.map +1 -0
- package/dist/neutral/Params.d.ts +5 -0
- package/dist/neutral/Params.d.ts.map +1 -0
- package/dist/neutral/Payload.d.ts +10 -0
- package/dist/neutral/Payload.d.ts.map +1 -0
- package/dist/neutral/Schema.d.ts +3 -0
- package/dist/neutral/Schema.d.ts.map +1 -0
- package/dist/neutral/index.d.ts +6 -34
- package/dist/neutral/index.d.ts.map +1 -0
- package/dist/neutral/index.mjs +12 -2
- package/dist/neutral/index.mjs.map +1 -1
- package/package.json +34 -34
- package/src/Diviner.ts +6 -2
- package/xy.config.ts +1 -3
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { DivinerConfig } from '@xyo-network/diviner-model';
|
|
2
|
+
export declare const EvmCallResultToNftTokenUriDivinerConfigSchema = "network.xyo.evm.call.results.metadata.uri.diviner.config";
|
|
3
|
+
export type EvmCallResultToNftTokenUriDivinerConfigSchema = typeof EvmCallResultToNftTokenUriDivinerConfigSchema;
|
|
4
|
+
export type EvmCallResultToNftTokenUriDivinerConfig = DivinerConfig<{
|
|
5
|
+
schema: EvmCallResultToNftTokenUriDivinerConfigSchema;
|
|
6
|
+
}>;
|
|
7
|
+
//# sourceMappingURL=Config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAO/D,eAAO,MAAM,6CAA6C,6DAAsD,CAAA;AAIhH,MAAM,MAAM,6CAA6C,GAAG,OAAO,6CAA6C,CAAA;AAKhH,MAAM,MAAM,uCAAuC,GAAG,aAAa,CAAC;IAAE,MAAM,EAAE,6CAA6C,CAAA;CAAE,CAAC,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AbstractDiviner } from '@xyo-network/diviner-abstract';
|
|
2
|
+
import type { NftMetadataUri } from '@xyo-network/evm-nft-id-payload-plugin';
|
|
3
|
+
import type { Payload, Schema } from '@xyo-network/payload-model';
|
|
4
|
+
import type { EvmCallResultToNftTokenUriDivinerParams } from './Params.ts';
|
|
5
|
+
export declare class EvmCallResultToNftTokenUriDiviner<TParams extends EvmCallResultToNftTokenUriDivinerParams = EvmCallResultToNftTokenUriDivinerParams> extends AbstractDiviner<TParams, Payload, NftMetadataUri> {
|
|
6
|
+
static readonly configSchemas: Schema[];
|
|
7
|
+
static readonly defaultConfigSchema: Schema;
|
|
8
|
+
protected divineHandler(payloads?: Payload[]): NftMetadataUri[];
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=Diviner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../src/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAG/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAA;AAE5E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAIjE,OAAO,KAAK,EAAE,uCAAuC,EAAE,MAAM,aAAa,CAAA;AAG1E,qBAAa,iCAAiC,CAC5C,OAAO,SAAS,uCAAuC,GAAG,uCAAuC,CACjG,SAAQ,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,cAAc,CAAC;IACzD,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAA0E;IAC1H,gBAAyB,mBAAmB,EAAE,MAAM,CAAgD;cAGjF,aAAa,CAAC,QAAQ,GAAE,OAAO,EAAO,GAAG,cAAc,EAAE;CAqB7E"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { DivinerParams } from '@xyo-network/diviner-model';
|
|
2
|
+
import type { AnyConfigSchema } from '@xyo-network/module-model';
|
|
3
|
+
import type { EvmCallResultToNftTokenUriDivinerConfig } from './Config.ts';
|
|
4
|
+
export type EvmCallResultToNftTokenUriDivinerParams = DivinerParams<AnyConfigSchema<EvmCallResultToNftTokenUriDivinerConfig>>;
|
|
5
|
+
//# sourceMappingURL=Params.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Params.d.ts","sourceRoot":"","sources":["../../src/Params.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAEhE,OAAO,KAAK,EAAE,uCAAuC,EAAE,MAAM,aAAa,CAAA;AAK1E,MAAM,MAAM,uCAAuC,GAAG,aAAa,CAAC,eAAe,CAAC,uCAAuC,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Payload.d.ts","sourceRoot":"","sources":["../../src/Payload.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAEnE,MAAM,MAAM,sBAAsB,GAAG,cAAc,GAAG;IAAE,OAAO,EAAE;QAAE,QAAQ,EAAE;YAAE,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAA;CAAE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Schema.d.ts","sourceRoot":"","sources":["../../src/Schema.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,uCAAuC,sDAAsD,CAAA;AAI1G,MAAM,MAAM,uCAAuC,GAAG,OAAO,uCAAuC,CAAA"}
|
package/dist/neutral/index.d.ts
CHANGED
|
@@ -1,34 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
declare const EvmCallResultToNftTokenUriDivinerConfigSchema = "network.xyo.evm.call.results.metadata.uri.diviner.config";
|
|
9
|
-
type EvmCallResultToNftTokenUriDivinerConfigSchema = typeof EvmCallResultToNftTokenUriDivinerConfigSchema;
|
|
10
|
-
type EvmCallResultToNftTokenUriDivinerConfig = DivinerConfig<{
|
|
11
|
-
schema: EvmCallResultToNftTokenUriDivinerConfigSchema;
|
|
12
|
-
}>;
|
|
13
|
-
|
|
14
|
-
type EvmCallResultToNftTokenUriDivinerParams = DivinerParams<AnyConfigSchema<EvmCallResultToNftTokenUriDivinerConfig>>;
|
|
15
|
-
|
|
16
|
-
declare class EvmCallResultToNftTokenUriDiviner<TParams extends EvmCallResultToNftTokenUriDivinerParams = EvmCallResultToNftTokenUriDivinerParams> extends AbstractDiviner<TParams, Payload, NftMetadataUri> {
|
|
17
|
-
static readonly configSchemas: Schema[];
|
|
18
|
-
static readonly defaultConfigSchema: Schema;
|
|
19
|
-
protected divineHandler(payloads?: Payload[]): NftMetadataUri[];
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
type EvmTokenUriCallResults = EvmCallResults & {
|
|
23
|
-
results: {
|
|
24
|
-
tokenURI: {
|
|
25
|
-
args: [string];
|
|
26
|
-
result?: string;
|
|
27
|
-
};
|
|
28
|
-
};
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
declare const EvmCallResultToNftTokenUriDivinerSchema = "network.xyo.evm.call.results.metadata.uri.diviner";
|
|
32
|
-
type EvmCallResultToNftTokenUriDivinerSchema = typeof EvmCallResultToNftTokenUriDivinerSchema;
|
|
33
|
-
|
|
34
|
-
export { EvmCallResultToNftTokenUriDiviner, type EvmCallResultToNftTokenUriDivinerConfig, EvmCallResultToNftTokenUriDivinerConfigSchema, type EvmCallResultToNftTokenUriDivinerParams, EvmCallResultToNftTokenUriDivinerSchema, type EvmTokenUriCallResults };
|
|
1
|
+
export * from './Config.ts';
|
|
2
|
+
export * from './Diviner.ts';
|
|
3
|
+
export * from './Params.ts';
|
|
4
|
+
export * from './Payload.ts';
|
|
5
|
+
export * from './Schema.ts';
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA"}
|
package/dist/neutral/index.mjs
CHANGED
|
@@ -19,12 +19,22 @@ var EvmCallResultToNftTokenUriDiviner = class extends AbstractDiviner {
|
|
|
19
19
|
const casted = p;
|
|
20
20
|
return casted.results?.tokenURI?.result !== void 0 && (p.results?.tokenURI?.args?.length ?? 0) > 0;
|
|
21
21
|
}).map((p) => {
|
|
22
|
-
const {
|
|
22
|
+
const {
|
|
23
|
+
address,
|
|
24
|
+
chainId,
|
|
25
|
+
results
|
|
26
|
+
} = p;
|
|
23
27
|
const { args, result } = results.tokenURI;
|
|
24
28
|
const tokenId = args[0];
|
|
25
29
|
const num = Number(BigInt(tokenId)).toString();
|
|
26
30
|
const metadataUri = result?.includes("{id}") ? result.replace("{id}", num) : result;
|
|
27
|
-
return {
|
|
31
|
+
return {
|
|
32
|
+
address,
|
|
33
|
+
chainId,
|
|
34
|
+
metadataUri,
|
|
35
|
+
schema: NftMetadataUriSchema,
|
|
36
|
+
tokenId
|
|
37
|
+
};
|
|
28
38
|
});
|
|
29
39
|
return erc721CallResults;
|
|
30
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/Schema.ts","../../src/Config.ts","../../src/Diviner.ts"],"sourcesContent":["/**\n * The schema for the EVM call result to NFT token URI diviner.\n */\nexport const EvmCallResultToNftTokenUriDivinerSchema = 'network.xyo.evm.call.results.metadata.uri.diviner'\n/**\n * The schema for the EVM call result to NFT token URI diviner.\n */\nexport type EvmCallResultToNftTokenUriDivinerSchema = typeof EvmCallResultToNftTokenUriDivinerSchema\n","import type { DivinerConfig } from '@xyo-network/diviner-model'\n\nimport { EvmCallResultToNftTokenUriDivinerSchema } from './Schema.ts'\n\n/**\n * The config schema for the EVM call result to NFT token URI diviner\n */\nexport const EvmCallResultToNftTokenUriDivinerConfigSchema = `${EvmCallResultToNftTokenUriDivinerSchema}.config`\n/**\n * The config schema for the EVM call result to NFT token URI diviner\n */\nexport type EvmCallResultToNftTokenUriDivinerConfigSchema = typeof EvmCallResultToNftTokenUriDivinerConfigSchema\n\n/**\n * The config for the EVM call result to NFT token URI diviner\n */\nexport type EvmCallResultToNftTokenUriDivinerConfig = DivinerConfig<{ schema: EvmCallResultToNftTokenUriDivinerConfigSchema }>\n","import { AbstractDiviner } from '@xyo-network/diviner-abstract'\n// eslint-disable-next-line workspaces/no-absolute-imports\nimport { type EvmCallResults, EvmCallResultsSchema } from '@xyo-network/evm-call-witness'\nimport type { NftMetadataUri } from '@xyo-network/evm-nft-id-payload-plugin'\nimport { NftMetadataUriSchema } from '@xyo-network/evm-nft-id-payload-plugin'\nimport type { Payload, Schema } from '@xyo-network/payload-model'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { EvmCallResultToNftTokenUriDivinerConfigSchema } from './Config.ts'\nimport type { EvmCallResultToNftTokenUriDivinerParams } from './Params.ts'\nimport type { EvmTokenUriCallResults } from './Payload.ts'\n\nexport class EvmCallResultToNftTokenUriDiviner<\n TParams extends EvmCallResultToNftTokenUriDivinerParams = EvmCallResultToNftTokenUriDivinerParams,\n> extends AbstractDiviner<TParams, Payload, NftMetadataUri> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, EvmCallResultToNftTokenUriDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = EvmCallResultToNftTokenUriDivinerConfigSchema\n\n // TODO: Add support for ERC1155 with `uri` function in addition to current ERC721 `tokenURI` support\n protected override divineHandler(payloads: Payload[] = []): NftMetadataUri[] {\n const evmCallResults = payloads.filter(isPayloadOfSchemaType(EvmCallResultsSchema)) as EvmCallResults[]\n const erc721CallResults = evmCallResults\n .filter((p): p is EvmTokenUriCallResults => {\n const casted = p as EvmTokenUriCallResults\n return casted.results?.tokenURI?.result !== undefined && (p.results?.tokenURI?.args?.length ?? 0) > 0\n })\n .map<NftMetadataUri>((p) => {\n const {
|
|
1
|
+
{"version":3,"sources":["../../src/Schema.ts","../../src/Config.ts","../../src/Diviner.ts"],"sourcesContent":["/**\n * The schema for the EVM call result to NFT token URI diviner.\n */\nexport const EvmCallResultToNftTokenUriDivinerSchema = 'network.xyo.evm.call.results.metadata.uri.diviner'\n/**\n * The schema for the EVM call result to NFT token URI diviner.\n */\nexport type EvmCallResultToNftTokenUriDivinerSchema = typeof EvmCallResultToNftTokenUriDivinerSchema\n","import type { DivinerConfig } from '@xyo-network/diviner-model'\n\nimport { EvmCallResultToNftTokenUriDivinerSchema } from './Schema.ts'\n\n/**\n * The config schema for the EVM call result to NFT token URI diviner\n */\nexport const EvmCallResultToNftTokenUriDivinerConfigSchema = `${EvmCallResultToNftTokenUriDivinerSchema}.config`\n/**\n * The config schema for the EVM call result to NFT token URI diviner\n */\nexport type EvmCallResultToNftTokenUriDivinerConfigSchema = typeof EvmCallResultToNftTokenUriDivinerConfigSchema\n\n/**\n * The config for the EVM call result to NFT token URI diviner\n */\nexport type EvmCallResultToNftTokenUriDivinerConfig = DivinerConfig<{ schema: EvmCallResultToNftTokenUriDivinerConfigSchema }>\n","import { AbstractDiviner } from '@xyo-network/diviner-abstract'\n// eslint-disable-next-line workspaces/no-absolute-imports\nimport { type EvmCallResults, EvmCallResultsSchema } from '@xyo-network/evm-call-witness'\nimport type { NftMetadataUri } from '@xyo-network/evm-nft-id-payload-plugin'\nimport { NftMetadataUriSchema } from '@xyo-network/evm-nft-id-payload-plugin'\nimport type { Payload, Schema } from '@xyo-network/payload-model'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { EvmCallResultToNftTokenUriDivinerConfigSchema } from './Config.ts'\nimport type { EvmCallResultToNftTokenUriDivinerParams } from './Params.ts'\nimport type { EvmTokenUriCallResults } from './Payload.ts'\n\nexport class EvmCallResultToNftTokenUriDiviner<\n TParams extends EvmCallResultToNftTokenUriDivinerParams = EvmCallResultToNftTokenUriDivinerParams,\n> extends AbstractDiviner<TParams, Payload, NftMetadataUri> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, EvmCallResultToNftTokenUriDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = EvmCallResultToNftTokenUriDivinerConfigSchema\n\n // TODO: Add support for ERC1155 with `uri` function in addition to current ERC721 `tokenURI` support\n protected override divineHandler(payloads: Payload[] = []): NftMetadataUri[] {\n const evmCallResults = payloads.filter(isPayloadOfSchemaType(EvmCallResultsSchema)) as EvmCallResults[]\n const erc721CallResults = evmCallResults\n .filter((p): p is EvmTokenUriCallResults => {\n const casted = p as EvmTokenUriCallResults\n return casted.results?.tokenURI?.result !== undefined && (p.results?.tokenURI?.args?.length ?? 0) > 0\n })\n .map<NftMetadataUri>((p) => {\n const {\n address, chainId, results,\n } = p\n const { args, result } = results.tokenURI\n const tokenId = args[0]\n const num = Number(BigInt(tokenId)).toString()\n const metadataUri = result?.includes('{id}') ? result.replace('{id}', num) : result\n return {\n address, chainId, metadataUri, schema: NftMetadataUriSchema, tokenId,\n }\n })\n return erc721CallResults\n }\n}\n"],"mappings":";AAGO,IAAM,0CAA0C;;;ACIhD,IAAM,gDAAgD,GAAG,uCAAuC;;;ACPvG,SAAS,uBAAuB;AAEhC,SAA8B,4BAA4B;AAE1D,SAAS,4BAA4B;AAErC,SAAS,6BAA6B;AAM/B,IAAM,oCAAN,cAEG,gBAAkD;AAAA,EAC1D,OAAyB,gBAA0B,CAAC,GAAG,MAAM,eAAe,6CAA6C;AAAA,EACzH,OAAyB,sBAA8B;AAAA;AAAA,EAGpC,cAAc,WAAsB,CAAC,GAAqB;AAC3E,UAAM,iBAAiB,SAAS,OAAO,sBAAsB,oBAAoB,CAAC;AAClF,UAAM,oBAAoB,eACvB,OAAO,CAAC,MAAmC;AAC1C,YAAM,SAAS;AACf,aAAO,OAAO,SAAS,UAAU,WAAW,WAAc,EAAE,SAAS,UAAU,MAAM,UAAU,KAAK;AAAA,IACtG,CAAC,EACA,IAAoB,CAAC,MAAM;AAC1B,YAAM;AAAA,QACJ;AAAA,QAAS;AAAA,QAAS;AAAA,MACpB,IAAI;AACJ,YAAM,EAAE,MAAM,OAAO,IAAI,QAAQ;AACjC,YAAM,UAAU,KAAK,CAAC;AACtB,YAAM,MAAM,OAAO,OAAO,OAAO,CAAC,EAAE,SAAS;AAC7C,YAAM,cAAc,QAAQ,SAAS,MAAM,IAAI,OAAO,QAAQ,QAAQ,GAAG,IAAI;AAC7E,aAAO;AAAA,QACL;AAAA,QAAS;AAAA,QAAS;AAAA,QAAa,QAAQ;AAAA,QAAsB;AAAA,MAC/D;AAAA,IACF,CAAC;AACH,WAAO;AAAA,EACT;AACF;","names":[]}
|
package/package.json
CHANGED
|
@@ -1,33 +1,24 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/diviner-evm-call-result-to-token-uri",
|
|
3
|
-
"
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
"url": "https://xyo.network"
|
|
7
|
-
},
|
|
3
|
+
"version": "3.0.5",
|
|
4
|
+
"description": "Typescript/Javascript Plugins for XYO Platform",
|
|
5
|
+
"homepage": "https://xyo.network",
|
|
8
6
|
"bugs": {
|
|
9
|
-
"
|
|
10
|
-
"
|
|
7
|
+
"url": "git+https://github.com/XYOracleNetwork/plugins/issues",
|
|
8
|
+
"email": "support@xyo.network"
|
|
11
9
|
},
|
|
12
|
-
"
|
|
13
|
-
"
|
|
14
|
-
"
|
|
15
|
-
"@xyo-network/evm-call-witness": "^3.0.3",
|
|
16
|
-
"@xyo-network/evm-nft-id-payload-plugin": "^3.0.3",
|
|
17
|
-
"@xyo-network/module-model": "^3.0.3",
|
|
18
|
-
"@xyo-network/payload-model": "^3.0.3",
|
|
19
|
-
"ethers": "^6.13.2"
|
|
10
|
+
"repository": {
|
|
11
|
+
"type": "git",
|
|
12
|
+
"url": "git+https://github.com/XYOracleNetwork/plugins.git"
|
|
20
13
|
},
|
|
21
|
-
"
|
|
22
|
-
|
|
23
|
-
"
|
|
24
|
-
"
|
|
25
|
-
"
|
|
26
|
-
"jest": "^29.7.0",
|
|
27
|
-
"typescript": "^5.5.4"
|
|
14
|
+
"license": "LGPL-3.0-only",
|
|
15
|
+
"author": {
|
|
16
|
+
"name": "XYO Development Team",
|
|
17
|
+
"email": "support@xyo.network",
|
|
18
|
+
"url": "https://xyo.network"
|
|
28
19
|
},
|
|
29
|
-
"
|
|
30
|
-
"
|
|
20
|
+
"sideEffects": false,
|
|
21
|
+
"type": "module",
|
|
31
22
|
"exports": {
|
|
32
23
|
".": {
|
|
33
24
|
"types": "./dist/neutral/index.d.ts",
|
|
@@ -36,16 +27,25 @@
|
|
|
36
27
|
"./package.json": "./package.json"
|
|
37
28
|
},
|
|
38
29
|
"module": "dist/neutral/index.mjs",
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
|
|
42
|
-
"
|
|
30
|
+
"types": "dist/neutral/index.d.ts",
|
|
31
|
+
"dependencies": {
|
|
32
|
+
"@xyo-network/diviner-abstract": "^3.0.11",
|
|
33
|
+
"@xyo-network/diviner-model": "^3.0.11",
|
|
34
|
+
"@xyo-network/evm-call-witness": "^3.0.5",
|
|
35
|
+
"@xyo-network/evm-nft-id-payload-plugin": "^3.0.5",
|
|
36
|
+
"@xyo-network/module-model": "^3.0.11",
|
|
37
|
+
"@xyo-network/payload-model": "^3.0.11",
|
|
38
|
+
"ethers": "^6.13.2"
|
|
43
39
|
},
|
|
44
|
-
"
|
|
45
|
-
"
|
|
46
|
-
"
|
|
40
|
+
"devDependencies": {
|
|
41
|
+
"@xylabs/jest-helpers": "^4.0.5",
|
|
42
|
+
"@xylabs/ts-scripts-yarn3": "^4.0.7",
|
|
43
|
+
"@xylabs/tsconfig": "^4.0.7",
|
|
44
|
+
"@xyo-network/evm-nft-id-payload-plugin": "^3.0.5",
|
|
45
|
+
"jest": "^29.7.0",
|
|
46
|
+
"typescript": "^5.5.4"
|
|
47
47
|
},
|
|
48
|
-
"
|
|
49
|
-
|
|
50
|
-
|
|
48
|
+
"publishConfig": {
|
|
49
|
+
"access": "public"
|
|
50
|
+
}
|
|
51
51
|
}
|
package/src/Diviner.ts
CHANGED
|
@@ -25,12 +25,16 @@ export class EvmCallResultToNftTokenUriDiviner<
|
|
|
25
25
|
return casted.results?.tokenURI?.result !== undefined && (p.results?.tokenURI?.args?.length ?? 0) > 0
|
|
26
26
|
})
|
|
27
27
|
.map<NftMetadataUri>((p) => {
|
|
28
|
-
const {
|
|
28
|
+
const {
|
|
29
|
+
address, chainId, results,
|
|
30
|
+
} = p
|
|
29
31
|
const { args, result } = results.tokenURI
|
|
30
32
|
const tokenId = args[0]
|
|
31
33
|
const num = Number(BigInt(tokenId)).toString()
|
|
32
34
|
const metadataUri = result?.includes('{id}') ? result.replace('{id}', num) : result
|
|
33
|
-
return {
|
|
35
|
+
return {
|
|
36
|
+
address, chainId, metadataUri, schema: NftMetadataUriSchema, tokenId,
|
|
37
|
+
}
|
|
34
38
|
})
|
|
35
39
|
return erc721CallResults
|
|
36
40
|
}
|