@xyo-network/crypto-contract-function-read-plugin 2.77.16
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/LICENSE +165 -0
- package/README.md +13 -0
- package/dist/browser/CryptoContractDiviner.d.cts +27 -0
- package/dist/browser/CryptoContractDiviner.d.cts.map +1 -0
- package/dist/browser/CryptoContractDiviner.d.mts +27 -0
- package/dist/browser/CryptoContractDiviner.d.mts.map +1 -0
- package/dist/browser/CryptoContractDiviner.d.ts +27 -0
- package/dist/browser/CryptoContractDiviner.d.ts.map +1 -0
- package/dist/browser/Erc1155Diviner.d.cts +17 -0
- package/dist/browser/Erc1155Diviner.d.cts.map +1 -0
- package/dist/browser/Erc1155Diviner.d.mts +17 -0
- package/dist/browser/Erc1155Diviner.d.mts.map +1 -0
- package/dist/browser/Erc1155Diviner.d.ts +17 -0
- package/dist/browser/Erc1155Diviner.d.ts.map +1 -0
- package/dist/browser/Erc721Diviner.d.cts +19 -0
- package/dist/browser/Erc721Diviner.d.cts.map +1 -0
- package/dist/browser/Erc721Diviner.d.mts +19 -0
- package/dist/browser/Erc721Diviner.d.mts.map +1 -0
- package/dist/browser/Erc721Diviner.d.ts +19 -0
- package/dist/browser/Erc721Diviner.d.ts.map +1 -0
- package/dist/browser/Plugin.d.cts +30 -0
- package/dist/browser/Plugin.d.cts.map +1 -0
- package/dist/browser/Plugin.d.mts +30 -0
- package/dist/browser/Plugin.d.mts.map +1 -0
- package/dist/browser/Plugin.d.ts +30 -0
- package/dist/browser/Plugin.d.ts.map +1 -0
- package/dist/browser/Witness.d.cts +13 -0
- package/dist/browser/Witness.d.cts.map +1 -0
- package/dist/browser/Witness.d.mts +13 -0
- package/dist/browser/Witness.d.mts.map +1 -0
- package/dist/browser/Witness.d.ts +13 -0
- package/dist/browser/Witness.d.ts.map +1 -0
- package/dist/browser/index.cjs +81 -0
- package/dist/browser/index.cjs.map +1 -0
- package/dist/browser/index.d.cts +5 -0
- package/dist/browser/index.d.cts.map +1 -0
- package/dist/browser/index.d.mts +5 -0
- package/dist/browser/index.d.mts.map +1 -0
- package/dist/browser/index.d.ts +5 -0
- package/dist/browser/index.d.ts.map +1 -0
- package/dist/browser/index.js +62 -0
- package/dist/browser/index.js.map +1 -0
- package/dist/node/CryptoContractDiviner.d.cts +27 -0
- package/dist/node/CryptoContractDiviner.d.cts.map +1 -0
- package/dist/node/CryptoContractDiviner.d.mts +27 -0
- package/dist/node/CryptoContractDiviner.d.mts.map +1 -0
- package/dist/node/CryptoContractDiviner.d.ts +27 -0
- package/dist/node/CryptoContractDiviner.d.ts.map +1 -0
- package/dist/node/Erc1155Diviner.d.cts +17 -0
- package/dist/node/Erc1155Diviner.d.cts.map +1 -0
- package/dist/node/Erc1155Diviner.d.mts +17 -0
- package/dist/node/Erc1155Diviner.d.mts.map +1 -0
- package/dist/node/Erc1155Diviner.d.ts +17 -0
- package/dist/node/Erc1155Diviner.d.ts.map +1 -0
- package/dist/node/Erc721Diviner.d.cts +19 -0
- package/dist/node/Erc721Diviner.d.cts.map +1 -0
- package/dist/node/Erc721Diviner.d.mts +19 -0
- package/dist/node/Erc721Diviner.d.mts.map +1 -0
- package/dist/node/Erc721Diviner.d.ts +19 -0
- package/dist/node/Erc721Diviner.d.ts.map +1 -0
- package/dist/node/Plugin.d.cts +30 -0
- package/dist/node/Plugin.d.cts.map +1 -0
- package/dist/node/Plugin.d.mts +30 -0
- package/dist/node/Plugin.d.mts.map +1 -0
- package/dist/node/Plugin.d.ts +30 -0
- package/dist/node/Plugin.d.ts.map +1 -0
- package/dist/node/Witness.d.cts +13 -0
- package/dist/node/Witness.d.cts.map +1 -0
- package/dist/node/Witness.d.mts +13 -0
- package/dist/node/Witness.d.mts.map +1 -0
- package/dist/node/Witness.d.ts +13 -0
- package/dist/node/Witness.d.ts.map +1 -0
- package/dist/node/index.d.cts +5 -0
- package/dist/node/index.d.cts.map +1 -0
- package/dist/node/index.d.mts +5 -0
- package/dist/node/index.d.mts.map +1 -0
- package/dist/node/index.d.ts +5 -0
- package/dist/node/index.d.ts.map +1 -0
- package/dist/node/index.js +86 -0
- package/dist/node/index.js.map +1 -0
- package/dist/node/index.mjs +62 -0
- package/dist/node/index.mjs.map +1 -0
- package/package.json +80 -0
- package/src/CryptoContractDiviner.ts +109 -0
- package/src/Erc1155Diviner.ts +37 -0
- package/src/Erc721Diviner.ts +41 -0
- package/src/Erc721Sentinel.json +134 -0
- package/src/Plugin.ts +16 -0
- package/src/Witness.ts +58 -0
- package/src/index.ts +8 -0
- package/typedoc.json +5 -0
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/index.ts
|
|
21
|
+
var src_exports = {};
|
|
22
|
+
__export(src_exports, {
|
|
23
|
+
CryptoContractFunctionReadWitness: () => CryptoContractFunctionReadWitness,
|
|
24
|
+
CryptoContractFunctionReadWitnessPlugin: () => CryptoContractFunctionReadWitnessPlugin,
|
|
25
|
+
default: () => src_default
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(src_exports);
|
|
28
|
+
|
|
29
|
+
// src/Plugin.ts
|
|
30
|
+
var import_crypto_nft_payload_plugin = require("@xyo-network/crypto-nft-payload-plugin");
|
|
31
|
+
var import_payload_model2 = require("@xyo-network/payload-model");
|
|
32
|
+
var import_payloadset_plugin = require("@xyo-network/payloadset-plugin");
|
|
33
|
+
|
|
34
|
+
// src/Witness.ts
|
|
35
|
+
var import_assert = require("@xylabs/assert");
|
|
36
|
+
var import_abstract_witness = require("@xyo-network/abstract-witness");
|
|
37
|
+
var import_crypto_contract_function_read_payload_plugin = require("@xyo-network/crypto-contract-function-read-payload-plugin");
|
|
38
|
+
var import_hash = require("@xyo-network/hash");
|
|
39
|
+
var import_payload_model = require("@xyo-network/payload-model");
|
|
40
|
+
var import_ethers = require("ethers");
|
|
41
|
+
var CryptoContractFunctionReadWitness = class extends import_abstract_witness.AbstractWitness {
|
|
42
|
+
static configSchemas = [import_crypto_contract_function_read_payload_plugin.CryptoContractFunctionReadWitnessConfigSchema];
|
|
43
|
+
async observeHandler(inPayloads = []) {
|
|
44
|
+
await this.started("throw");
|
|
45
|
+
const observations = await Promise.all(
|
|
46
|
+
inPayloads.filter((0, import_payload_model.isPayloadOfSchemaType)(import_crypto_contract_function_read_payload_plugin.CryptoContractFunctionCallSchema)).map(async (callPayload) => {
|
|
47
|
+
const fullCallPayload = { ...{ params: [] }, ...this.config.call, ...callPayload };
|
|
48
|
+
const { address, functionName, params } = fullCallPayload;
|
|
49
|
+
const validatedAddress = (0, import_assert.assertEx)(address, "Missing address");
|
|
50
|
+
const contract = this.params.factory(validatedAddress);
|
|
51
|
+
const func = (0, import_assert.assertEx)(contract.callStatic[(0, import_assert.assertEx)(functionName, "missing functionName")], `functionName [${functionName}] not found`);
|
|
52
|
+
const rawResult = await func(...params ?? []);
|
|
53
|
+
const result = import_ethers.BigNumber.isBigNumber(rawResult) ? { type: "BigNumber", value: rawResult.toHexString() } : { value: rawResult };
|
|
54
|
+
const observation = {
|
|
55
|
+
address: validatedAddress,
|
|
56
|
+
call: await import_hash.PayloadHasher.hashAsync(fullCallPayload),
|
|
57
|
+
chainId: (await contract.provider.getNetwork()).chainId,
|
|
58
|
+
result,
|
|
59
|
+
schema: import_crypto_contract_function_read_payload_plugin.CryptoContractFunctionCallResultSchema
|
|
60
|
+
};
|
|
61
|
+
return observation;
|
|
62
|
+
})
|
|
63
|
+
);
|
|
64
|
+
return observations.flat();
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
// src/Plugin.ts
|
|
69
|
+
var CryptoContractFunctionReadWitnessPlugin = () => (0, import_payloadset_plugin.createPayloadSetWitnessPlugin)(
|
|
70
|
+
{ required: { [import_crypto_nft_payload_plugin.NftSchema]: 1 }, schema: import_payload_model2.PayloadSetSchema },
|
|
71
|
+
{
|
|
72
|
+
witness: async (params) => {
|
|
73
|
+
const result = await CryptoContractFunctionReadWitness.create(params);
|
|
74
|
+
return result;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
);
|
|
78
|
+
|
|
79
|
+
// src/index.ts
|
|
80
|
+
var src_default = CryptoContractFunctionReadWitnessPlugin;
|
|
81
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/index.ts","../../src/Plugin.ts","../../src/Witness.ts"],"sourcesContent":["import { CryptoContractFunctionReadWitnessPlugin } from './Plugin'\n\nexport * from './Witness'\n\nexport { CryptoContractFunctionReadWitnessPlugin }\n\n// eslint-disable-next-line import/no-default-export\nexport default CryptoContractFunctionReadWitnessPlugin\n","import { NftSchema } from '@xyo-network/crypto-nft-payload-plugin'\nimport { PayloadSetSchema } from '@xyo-network/payload-model'\nimport { createPayloadSetWitnessPlugin } from '@xyo-network/payloadset-plugin'\n\nimport { CryptoContractFunctionReadWitness } from './Witness'\n\nexport const CryptoContractFunctionReadWitnessPlugin = () =>\n createPayloadSetWitnessPlugin<CryptoContractFunctionReadWitness>(\n { required: { [NftSchema]: 1 }, schema: PayloadSetSchema },\n {\n witness: async (params) => {\n const result = await CryptoContractFunctionReadWitness.create(params)\n return result\n },\n },\n )\n","import { assertEx } from '@xylabs/assert'\nimport { AbstractWitness } from '@xyo-network/abstract-witness'\nimport {\n CryptoContractFunctionCall,\n CryptoContractFunctionCallResult,\n CryptoContractFunctionCallResultSchema,\n CryptoContractFunctionCallSchema,\n CryptoContractFunctionReadWitnessConfig,\n CryptoContractFunctionReadWitnessConfigSchema,\n} from '@xyo-network/crypto-contract-function-read-payload-plugin'\nimport { PayloadHasher } from '@xyo-network/hash'\nimport { AnyConfigSchema } from '@xyo-network/module-model'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-model'\nimport { WitnessParams } from '@xyo-network/witness-model'\nimport { BigNumber, Contract } from 'ethers'\n\nexport type CryptoContractFunctionReadWitnessParams<TContract extends Contract> = WitnessParams<\n AnyConfigSchema<CryptoContractFunctionReadWitnessConfig>,\n {\n factory: (address: string) => TContract\n }\n>\n\nexport class CryptoContractFunctionReadWitness<\n TContract extends Contract = Contract,\n TParams extends CryptoContractFunctionReadWitnessParams<TContract> = CryptoContractFunctionReadWitnessParams<TContract>,\n> extends AbstractWitness<TParams, CryptoContractFunctionCall<keyof TContract['callStatic']>, CryptoContractFunctionCallResult> {\n static override configSchemas = [CryptoContractFunctionReadWitnessConfigSchema]\n\n protected override async observeHandler(\n inPayloads: CryptoContractFunctionCall<keyof TContract['callStatic']>[] = [],\n ): Promise<CryptoContractFunctionCallResult[]> {\n await this.started('throw')\n const observations = await Promise.all(\n inPayloads.filter(isPayloadOfSchemaType(CryptoContractFunctionCallSchema)).map(async (callPayload) => {\n const fullCallPayload = { ...{ params: [] }, ...this.config.call, ...callPayload }\n const { address, functionName, params } = fullCallPayload\n const validatedAddress = assertEx(address, 'Missing address')\n const contract = this.params.factory(validatedAddress)\n const func = assertEx(contract.callStatic[assertEx(functionName, 'missing functionName')], `functionName [${functionName}] not found`)\n const rawResult = await func(...(params ?? []))\n const result: CryptoContractFunctionCallResult['result'] = BigNumber.isBigNumber(rawResult)\n ? { type: 'BigNumber', value: rawResult.toHexString() }\n : { value: rawResult }\n const observation: CryptoContractFunctionCallResult = {\n address: validatedAddress,\n call: await PayloadHasher.hashAsync(fullCallPayload),\n chainId: (await contract.provider.getNetwork()).chainId,\n result,\n schema: CryptoContractFunctionCallResultSchema,\n }\n return observation\n }),\n )\n\n return observations.flat()\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,uCAA0B;AAC1B,IAAAA,wBAAiC;AACjC,+BAA8C;;;ACF9C,oBAAyB;AACzB,8BAAgC;AAChC,0DAOO;AACP,kBAA8B;AAE9B,2BAAsC;AAEtC,oBAAoC;AAS7B,IAAM,oCAAN,cAGG,wCAAsH;AAAA,EAC9H,OAAgB,gBAAgB,CAAC,iGAA6C;AAAA,EAE9E,MAAyB,eACvB,aAA0E,CAAC,GAC9B;AAC7C,UAAM,KAAK,QAAQ,OAAO;AAC1B,UAAM,eAAe,MAAM,QAAQ;AAAA,MACjC,WAAW,WAAO,4CAAsB,oFAAgC,CAAC,EAAE,IAAI,OAAO,gBAAgB;AACpG,cAAM,kBAAkB,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,GAAG,GAAG,KAAK,OAAO,MAAM,GAAG,YAAY;AACjF,cAAM,EAAE,SAAS,cAAc,OAAO,IAAI;AAC1C,cAAM,uBAAmB,wBAAS,SAAS,iBAAiB;AAC5D,cAAM,WAAW,KAAK,OAAO,QAAQ,gBAAgB;AACrD,cAAM,WAAO,wBAAS,SAAS,eAAW,wBAAS,cAAc,sBAAsB,CAAC,GAAG,iBAAiB,YAAY,aAAa;AACrI,cAAM,YAAY,MAAM,KAAK,GAAI,UAAU,CAAC,CAAE;AAC9C,cAAM,SAAqD,wBAAU,YAAY,SAAS,IACtF,EAAE,MAAM,aAAa,OAAO,UAAU,YAAY,EAAE,IACpD,EAAE,OAAO,UAAU;AACvB,cAAM,cAAgD;AAAA,UACpD,SAAS;AAAA,UACT,MAAM,MAAM,0BAAc,UAAU,eAAe;AAAA,UACnD,UAAU,MAAM,SAAS,SAAS,WAAW,GAAG;AAAA,UAChD;AAAA,UACA,QAAQ;AAAA,QACV;AACA,eAAO;AAAA,MACT,CAAC;AAAA,IACH;AAEA,WAAO,aAAa,KAAK;AAAA,EAC3B;AACF;;;ADnDO,IAAM,0CAA0C,UACrD;AAAA,EACE,EAAE,UAAU,EAAE,CAAC,0CAAS,GAAG,EAAE,GAAG,QAAQ,uCAAiB;AAAA,EACzD;AAAA,IACE,SAAS,OAAO,WAAW;AACzB,YAAM,SAAS,MAAM,kCAAkC,OAAO,MAAM;AACpE,aAAO;AAAA,IACT;AAAA,EACF;AACF;;;ADRF,IAAO,cAAQ;","names":["import_payload_model"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uCAAuC,EAAE,MAAM,UAAU,CAAA;AAElE,cAAc,WAAW,CAAA;AAEzB,OAAO,EAAE,uCAAuC,EAAE,CAAA;AAGlD,eAAe,uCAAuC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uCAAuC,EAAE,MAAM,UAAU,CAAA;AAElE,cAAc,WAAW,CAAA;AAEzB,OAAO,EAAE,uCAAuC,EAAE,CAAA;AAGlD,eAAe,uCAAuC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uCAAuC,EAAE,MAAM,UAAU,CAAA;AAElE,cAAc,WAAW,CAAA;AAEzB,OAAO,EAAE,uCAAuC,EAAE,CAAA;AAGlD,eAAe,uCAAuC,CAAA"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
// src/Plugin.ts
|
|
2
|
+
import { NftSchema } from "@xyo-network/crypto-nft-payload-plugin";
|
|
3
|
+
import { PayloadSetSchema } from "@xyo-network/payload-model";
|
|
4
|
+
import { createPayloadSetWitnessPlugin } from "@xyo-network/payloadset-plugin";
|
|
5
|
+
|
|
6
|
+
// src/Witness.ts
|
|
7
|
+
import { assertEx } from "@xylabs/assert";
|
|
8
|
+
import { AbstractWitness } from "@xyo-network/abstract-witness";
|
|
9
|
+
import {
|
|
10
|
+
CryptoContractFunctionCallResultSchema,
|
|
11
|
+
CryptoContractFunctionCallSchema,
|
|
12
|
+
CryptoContractFunctionReadWitnessConfigSchema
|
|
13
|
+
} from "@xyo-network/crypto-contract-function-read-payload-plugin";
|
|
14
|
+
import { PayloadHasher } from "@xyo-network/hash";
|
|
15
|
+
import { isPayloadOfSchemaType } from "@xyo-network/payload-model";
|
|
16
|
+
import { BigNumber } from "ethers";
|
|
17
|
+
var CryptoContractFunctionReadWitness = class extends AbstractWitness {
|
|
18
|
+
static configSchemas = [CryptoContractFunctionReadWitnessConfigSchema];
|
|
19
|
+
async observeHandler(inPayloads = []) {
|
|
20
|
+
await this.started("throw");
|
|
21
|
+
const observations = await Promise.all(
|
|
22
|
+
inPayloads.filter(isPayloadOfSchemaType(CryptoContractFunctionCallSchema)).map(async (callPayload) => {
|
|
23
|
+
const fullCallPayload = { ...{ params: [] }, ...this.config.call, ...callPayload };
|
|
24
|
+
const { address, functionName, params } = fullCallPayload;
|
|
25
|
+
const validatedAddress = assertEx(address, "Missing address");
|
|
26
|
+
const contract = this.params.factory(validatedAddress);
|
|
27
|
+
const func = assertEx(contract.callStatic[assertEx(functionName, "missing functionName")], `functionName [${functionName}] not found`);
|
|
28
|
+
const rawResult = await func(...params ?? []);
|
|
29
|
+
const result = BigNumber.isBigNumber(rawResult) ? { type: "BigNumber", value: rawResult.toHexString() } : { value: rawResult };
|
|
30
|
+
const observation = {
|
|
31
|
+
address: validatedAddress,
|
|
32
|
+
call: await PayloadHasher.hashAsync(fullCallPayload),
|
|
33
|
+
chainId: (await contract.provider.getNetwork()).chainId,
|
|
34
|
+
result,
|
|
35
|
+
schema: CryptoContractFunctionCallResultSchema
|
|
36
|
+
};
|
|
37
|
+
return observation;
|
|
38
|
+
})
|
|
39
|
+
);
|
|
40
|
+
return observations.flat();
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
// src/Plugin.ts
|
|
45
|
+
var CryptoContractFunctionReadWitnessPlugin = () => createPayloadSetWitnessPlugin(
|
|
46
|
+
{ required: { [NftSchema]: 1 }, schema: PayloadSetSchema },
|
|
47
|
+
{
|
|
48
|
+
witness: async (params) => {
|
|
49
|
+
const result = await CryptoContractFunctionReadWitness.create(params);
|
|
50
|
+
return result;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
);
|
|
54
|
+
|
|
55
|
+
// src/index.ts
|
|
56
|
+
var src_default = CryptoContractFunctionReadWitnessPlugin;
|
|
57
|
+
export {
|
|
58
|
+
CryptoContractFunctionReadWitness,
|
|
59
|
+
CryptoContractFunctionReadWitnessPlugin,
|
|
60
|
+
src_default as default
|
|
61
|
+
};
|
|
62
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/Plugin.ts","../../src/Witness.ts","../../src/index.ts"],"sourcesContent":["import { NftSchema } from '@xyo-network/crypto-nft-payload-plugin'\nimport { PayloadSetSchema } from '@xyo-network/payload-model'\nimport { createPayloadSetWitnessPlugin } from '@xyo-network/payloadset-plugin'\n\nimport { CryptoContractFunctionReadWitness } from './Witness'\n\nexport const CryptoContractFunctionReadWitnessPlugin = () =>\n createPayloadSetWitnessPlugin<CryptoContractFunctionReadWitness>(\n { required: { [NftSchema]: 1 }, schema: PayloadSetSchema },\n {\n witness: async (params) => {\n const result = await CryptoContractFunctionReadWitness.create(params)\n return result\n },\n },\n )\n","import { assertEx } from '@xylabs/assert'\nimport { AbstractWitness } from '@xyo-network/abstract-witness'\nimport {\n CryptoContractFunctionCall,\n CryptoContractFunctionCallResult,\n CryptoContractFunctionCallResultSchema,\n CryptoContractFunctionCallSchema,\n CryptoContractFunctionReadWitnessConfig,\n CryptoContractFunctionReadWitnessConfigSchema,\n} from '@xyo-network/crypto-contract-function-read-payload-plugin'\nimport { PayloadHasher } from '@xyo-network/hash'\nimport { AnyConfigSchema } from '@xyo-network/module-model'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-model'\nimport { WitnessParams } from '@xyo-network/witness-model'\nimport { BigNumber, Contract } from 'ethers'\n\nexport type CryptoContractFunctionReadWitnessParams<TContract extends Contract> = WitnessParams<\n AnyConfigSchema<CryptoContractFunctionReadWitnessConfig>,\n {\n factory: (address: string) => TContract\n }\n>\n\nexport class CryptoContractFunctionReadWitness<\n TContract extends Contract = Contract,\n TParams extends CryptoContractFunctionReadWitnessParams<TContract> = CryptoContractFunctionReadWitnessParams<TContract>,\n> extends AbstractWitness<TParams, CryptoContractFunctionCall<keyof TContract['callStatic']>, CryptoContractFunctionCallResult> {\n static override configSchemas = [CryptoContractFunctionReadWitnessConfigSchema]\n\n protected override async observeHandler(\n inPayloads: CryptoContractFunctionCall<keyof TContract['callStatic']>[] = [],\n ): Promise<CryptoContractFunctionCallResult[]> {\n await this.started('throw')\n const observations = await Promise.all(\n inPayloads.filter(isPayloadOfSchemaType(CryptoContractFunctionCallSchema)).map(async (callPayload) => {\n const fullCallPayload = { ...{ params: [] }, ...this.config.call, ...callPayload }\n const { address, functionName, params } = fullCallPayload\n const validatedAddress = assertEx(address, 'Missing address')\n const contract = this.params.factory(validatedAddress)\n const func = assertEx(contract.callStatic[assertEx(functionName, 'missing functionName')], `functionName [${functionName}] not found`)\n const rawResult = await func(...(params ?? []))\n const result: CryptoContractFunctionCallResult['result'] = BigNumber.isBigNumber(rawResult)\n ? { type: 'BigNumber', value: rawResult.toHexString() }\n : { value: rawResult }\n const observation: CryptoContractFunctionCallResult = {\n address: validatedAddress,\n call: await PayloadHasher.hashAsync(fullCallPayload),\n chainId: (await contract.provider.getNetwork()).chainId,\n result,\n schema: CryptoContractFunctionCallResultSchema,\n }\n return observation\n }),\n )\n\n return observations.flat()\n }\n}\n","import { CryptoContractFunctionReadWitnessPlugin } from './Plugin'\n\nexport * from './Witness'\n\nexport { CryptoContractFunctionReadWitnessPlugin }\n\n// eslint-disable-next-line import/no-default-export\nexport default CryptoContractFunctionReadWitnessPlugin\n"],"mappings":";AAAA,SAAS,iBAAiB;AAC1B,SAAS,wBAAwB;AACjC,SAAS,qCAAqC;;;ACF9C,SAAS,gBAAgB;AACzB,SAAS,uBAAuB;AAChC;AAAA,EAGE;AAAA,EACA;AAAA,EAEA;AAAA,OACK;AACP,SAAS,qBAAqB;AAE9B,SAAS,6BAA6B;AAEtC,SAAS,iBAA2B;AAS7B,IAAM,oCAAN,cAGG,gBAAsH;AAAA,EAC9H,OAAgB,gBAAgB,CAAC,6CAA6C;AAAA,EAE9E,MAAyB,eACvB,aAA0E,CAAC,GAC9B;AAC7C,UAAM,KAAK,QAAQ,OAAO;AAC1B,UAAM,eAAe,MAAM,QAAQ;AAAA,MACjC,WAAW,OAAO,sBAAsB,gCAAgC,CAAC,EAAE,IAAI,OAAO,gBAAgB;AACpG,cAAM,kBAAkB,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,GAAG,GAAG,KAAK,OAAO,MAAM,GAAG,YAAY;AACjF,cAAM,EAAE,SAAS,cAAc,OAAO,IAAI;AAC1C,cAAM,mBAAmB,SAAS,SAAS,iBAAiB;AAC5D,cAAM,WAAW,KAAK,OAAO,QAAQ,gBAAgB;AACrD,cAAM,OAAO,SAAS,SAAS,WAAW,SAAS,cAAc,sBAAsB,CAAC,GAAG,iBAAiB,YAAY,aAAa;AACrI,cAAM,YAAY,MAAM,KAAK,GAAI,UAAU,CAAC,CAAE;AAC9C,cAAM,SAAqD,UAAU,YAAY,SAAS,IACtF,EAAE,MAAM,aAAa,OAAO,UAAU,YAAY,EAAE,IACpD,EAAE,OAAO,UAAU;AACvB,cAAM,cAAgD;AAAA,UACpD,SAAS;AAAA,UACT,MAAM,MAAM,cAAc,UAAU,eAAe;AAAA,UACnD,UAAU,MAAM,SAAS,SAAS,WAAW,GAAG;AAAA,UAChD;AAAA,UACA,QAAQ;AAAA,QACV;AACA,eAAO;AAAA,MACT,CAAC;AAAA,IACH;AAEA,WAAO,aAAa,KAAK;AAAA,EAC3B;AACF;;;ADnDO,IAAM,0CAA0C,MACrD;AAAA,EACE,EAAE,UAAU,EAAE,CAAC,SAAS,GAAG,EAAE,GAAG,QAAQ,iBAAiB;AAAA,EACzD;AAAA,IACE,SAAS,OAAO,WAAW;AACzB,YAAM,SAAS,MAAM,kCAAkC,OAAO,MAAM;AACpE,aAAO;AAAA,IACT;AAAA,EACF;AACF;;;AERF,IAAO,cAAQ;","names":[]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Promisable } from '@xylabs/promise';
|
|
2
|
+
import { AbstractDiviner } from '@xyo-network/abstract-diviner';
|
|
3
|
+
import { CryptoContractFunctionCallResult } from '@xyo-network/crypto-contract-function-read-payload-plugin';
|
|
4
|
+
import { DivinerConfig, DivinerParams } from '@xyo-network/diviner-model';
|
|
5
|
+
import { Payload } from '@xyo-network/payload-model';
|
|
6
|
+
export type FindCallResult<TResult = string, TPayload = Payload> = [TResult, TPayload] | [undefined, TPayload] | [undefined, undefined];
|
|
7
|
+
export declare const CryptoContractDivinerConfigSchema = "network.xyo.crypto.contract.diviner.config";
|
|
8
|
+
export type CryptoContractDivinerConfigSchema = typeof CryptoContractDivinerConfigSchema;
|
|
9
|
+
export type CryptoContractDivinerConfig = DivinerConfig;
|
|
10
|
+
export type CryptoContractDivinerParams = DivinerParams<CryptoContractDivinerConfig>;
|
|
11
|
+
export declare const ContractInfoSchema = "network.xyo.crypto.contract.info";
|
|
12
|
+
export type ContractInfoSchema = typeof ContractInfoSchema;
|
|
13
|
+
export type OmittedContractInfo<TFields extends object | Payload | null = null, TSchema extends string | null = null> = Omit<ContractInfo<TFields, TSchema extends null ? (TFields extends Payload ? TFields['schema'] : never) : TSchema>, 'address' | 'chainId'>;
|
|
14
|
+
export type ContractInfo<TFields extends object | null = null, TSchema extends string = ContractInfoSchema> = Payload<TFields extends null ? object : TFields & {
|
|
15
|
+
address: string;
|
|
16
|
+
chainId: string;
|
|
17
|
+
}, TSchema>;
|
|
18
|
+
export declare abstract class CryptoContractDiviner<TContractInfo extends Payload<Omit<ContractInfo, 'schema'>> = ContractInfo, TParams extends CryptoContractDivinerParams = CryptoContractDivinerParams> extends AbstractDiviner<TParams> {
|
|
19
|
+
static configSchemas: string[];
|
|
20
|
+
protected static findCallResult<TResult = string>(address: string, functionName: string, params: unknown[], payloads: CryptoContractFunctionCallResult[]): Promise<TResult | undefined>;
|
|
21
|
+
protected static generateCallHash(address: string, functionName: string, params: unknown[]): Promise<string>;
|
|
22
|
+
protected static matchingExistingField<R = string, T extends Payload = Payload>(objs: T[], field: keyof T): R | undefined;
|
|
23
|
+
protected contractInfoRequiredFields(callResults: CryptoContractFunctionCallResult[]): Promisable<Omit<ContractInfo, 'schema'>>;
|
|
24
|
+
protected divineHandler(inPayloads?: CryptoContractFunctionCallResult[]): Promise<TContractInfo[]>;
|
|
25
|
+
protected abstract reduceResults(address: string, callResults: CryptoContractFunctionCallResult[]): Promisable<Omit<TContractInfo, 'address' | 'chainId'>>;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=CryptoContractDiviner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CryptoContractDiviner.d.ts","sourceRoot":"","sources":["../../src/CryptoContractDiviner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Promisable } from '@xylabs/promise';
|
|
2
|
+
import { AbstractDiviner } from '@xyo-network/abstract-diviner';
|
|
3
|
+
import { CryptoContractFunctionCallResult } from '@xyo-network/crypto-contract-function-read-payload-plugin';
|
|
4
|
+
import { DivinerConfig, DivinerParams } from '@xyo-network/diviner-model';
|
|
5
|
+
import { Payload } from '@xyo-network/payload-model';
|
|
6
|
+
export type FindCallResult<TResult = string, TPayload = Payload> = [TResult, TPayload] | [undefined, TPayload] | [undefined, undefined];
|
|
7
|
+
export declare const CryptoContractDivinerConfigSchema = "network.xyo.crypto.contract.diviner.config";
|
|
8
|
+
export type CryptoContractDivinerConfigSchema = typeof CryptoContractDivinerConfigSchema;
|
|
9
|
+
export type CryptoContractDivinerConfig = DivinerConfig;
|
|
10
|
+
export type CryptoContractDivinerParams = DivinerParams<CryptoContractDivinerConfig>;
|
|
11
|
+
export declare const ContractInfoSchema = "network.xyo.crypto.contract.info";
|
|
12
|
+
export type ContractInfoSchema = typeof ContractInfoSchema;
|
|
13
|
+
export type OmittedContractInfo<TFields extends object | Payload | null = null, TSchema extends string | null = null> = Omit<ContractInfo<TFields, TSchema extends null ? (TFields extends Payload ? TFields['schema'] : never) : TSchema>, 'address' | 'chainId'>;
|
|
14
|
+
export type ContractInfo<TFields extends object | null = null, TSchema extends string = ContractInfoSchema> = Payload<TFields extends null ? object : TFields & {
|
|
15
|
+
address: string;
|
|
16
|
+
chainId: string;
|
|
17
|
+
}, TSchema>;
|
|
18
|
+
export declare abstract class CryptoContractDiviner<TContractInfo extends Payload<Omit<ContractInfo, 'schema'>> = ContractInfo, TParams extends CryptoContractDivinerParams = CryptoContractDivinerParams> extends AbstractDiviner<TParams> {
|
|
19
|
+
static configSchemas: string[];
|
|
20
|
+
protected static findCallResult<TResult = string>(address: string, functionName: string, params: unknown[], payloads: CryptoContractFunctionCallResult[]): Promise<TResult | undefined>;
|
|
21
|
+
protected static generateCallHash(address: string, functionName: string, params: unknown[]): Promise<string>;
|
|
22
|
+
protected static matchingExistingField<R = string, T extends Payload = Payload>(objs: T[], field: keyof T): R | undefined;
|
|
23
|
+
protected contractInfoRequiredFields(callResults: CryptoContractFunctionCallResult[]): Promisable<Omit<ContractInfo, 'schema'>>;
|
|
24
|
+
protected divineHandler(inPayloads?: CryptoContractFunctionCallResult[]): Promise<TContractInfo[]>;
|
|
25
|
+
protected abstract reduceResults(address: string, callResults: CryptoContractFunctionCallResult[]): Promisable<Omit<TContractInfo, 'address' | 'chainId'>>;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=CryptoContractDiviner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CryptoContractDiviner.d.ts","sourceRoot":"","sources":["../../src/CryptoContractDiviner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAEL,gCAAgC,EAGjC,MAAM,2DAA2D,CAAA;AAClE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAEzE,OAAO,EAAyB,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAE3E,MAAM,MAAM,cAAc,CAAC,OAAO,GAAG,MAAM,EAAE,QAAQ,GAAG,OAAO,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;AAEvI,eAAO,MAAM,iCAAiC,+CAA+C,CAAA;AAC7F,MAAM,MAAM,iCAAiC,GAAG,OAAO,iCAAiC,CAAA;AAExF,MAAM,MAAM,2BAA2B,GAAG,aAAa,CAAA;AACvD,MAAM,MAAM,2BAA2B,GAAG,aAAa,CAAC,2BAA2B,CAAC,CAAA;AAEpF,eAAO,MAAM,kBAAkB,qCAAqC,CAAA;AACpE,MAAM,MAAM,kBAAkB,GAAG,OAAO,kBAAkB,CAAA;AAE1D,MAAM,MAAM,mBAAmB,CAAC,OAAO,SAAS,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,EAAE,OAAO,SAAS,MAAM,GAAG,IAAI,GAAG,IAAI,IAAI,IAAI,CAC1H,YAAY,CAAC,OAAO,EAAE,OAAO,SAAS,IAAI,GAAG,CAAC,OAAO,SAAS,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,EAC7G,SAAS,GAAG,SAAS,CACtB,CAAA;AAED,MAAM,MAAM,YAAY,CAAC,OAAO,SAAS,MAAM,GAAG,IAAI,GAAG,IAAI,EAAE,OAAO,SAAS,MAAM,GAAG,kBAAkB,IAAI,OAAO,CACnH,OAAO,SAAS,IAAI,GAChB,MAAM,GACN,OAAO,GAAG;IACR,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;CAChB,EACL,OAAO,CACR,CAAA;AAED,8BAAsB,qBAAqB,CACzC,aAAa,SAAS,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,GAAG,YAAY,EAC1E,OAAO,SAAS,2BAA2B,GAAG,2BAA2B,CACzE,SAAQ,eAAe,CAAC,OAAO,CAAC;IAChC,OAAgB,aAAa,WAAsC;qBAE5C,cAAc,CAAC,OAAO,GAAG,MAAM,EACpD,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,OAAO,EAAE,EACjB,QAAQ,EAAE,gCAAgC,EAAE,GAC3C,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;qBAMR,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;IAUhG,SAAS,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,SAAS,OAAO,GAAG,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC;IAQzG,SAAS,CAAC,0BAA0B,CAAC,WAAW,EAAE,gCAAgC,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;cAOtG,aAAa,CAAC,UAAU,GAAE,gCAAgC,EAAO,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAuBrH,SAAS,CAAC,QAAQ,CAAC,aAAa,CAC9B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,gCAAgC,EAAE,GAC9C,UAAU,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,GAAG,SAAS,CAAC,CAAC;CAC1D"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Promisable } from '@xylabs/promise';
|
|
2
|
+
import { AbstractDiviner } from '@xyo-network/abstract-diviner';
|
|
3
|
+
import { CryptoContractFunctionCallResult } from '@xyo-network/crypto-contract-function-read-payload-plugin';
|
|
4
|
+
import { DivinerConfig, DivinerParams } from '@xyo-network/diviner-model';
|
|
5
|
+
import { Payload } from '@xyo-network/payload-model';
|
|
6
|
+
export type FindCallResult<TResult = string, TPayload = Payload> = [TResult, TPayload] | [undefined, TPayload] | [undefined, undefined];
|
|
7
|
+
export declare const CryptoContractDivinerConfigSchema = "network.xyo.crypto.contract.diviner.config";
|
|
8
|
+
export type CryptoContractDivinerConfigSchema = typeof CryptoContractDivinerConfigSchema;
|
|
9
|
+
export type CryptoContractDivinerConfig = DivinerConfig;
|
|
10
|
+
export type CryptoContractDivinerParams = DivinerParams<CryptoContractDivinerConfig>;
|
|
11
|
+
export declare const ContractInfoSchema = "network.xyo.crypto.contract.info";
|
|
12
|
+
export type ContractInfoSchema = typeof ContractInfoSchema;
|
|
13
|
+
export type OmittedContractInfo<TFields extends object | Payload | null = null, TSchema extends string | null = null> = Omit<ContractInfo<TFields, TSchema extends null ? (TFields extends Payload ? TFields['schema'] : never) : TSchema>, 'address' | 'chainId'>;
|
|
14
|
+
export type ContractInfo<TFields extends object | null = null, TSchema extends string = ContractInfoSchema> = Payload<TFields extends null ? object : TFields & {
|
|
15
|
+
address: string;
|
|
16
|
+
chainId: string;
|
|
17
|
+
}, TSchema>;
|
|
18
|
+
export declare abstract class CryptoContractDiviner<TContractInfo extends Payload<Omit<ContractInfo, 'schema'>> = ContractInfo, TParams extends CryptoContractDivinerParams = CryptoContractDivinerParams> extends AbstractDiviner<TParams> {
|
|
19
|
+
static configSchemas: string[];
|
|
20
|
+
protected static findCallResult<TResult = string>(address: string, functionName: string, params: unknown[], payloads: CryptoContractFunctionCallResult[]): Promise<TResult | undefined>;
|
|
21
|
+
protected static generateCallHash(address: string, functionName: string, params: unknown[]): Promise<string>;
|
|
22
|
+
protected static matchingExistingField<R = string, T extends Payload = Payload>(objs: T[], field: keyof T): R | undefined;
|
|
23
|
+
protected contractInfoRequiredFields(callResults: CryptoContractFunctionCallResult[]): Promisable<Omit<ContractInfo, 'schema'>>;
|
|
24
|
+
protected divineHandler(inPayloads?: CryptoContractFunctionCallResult[]): Promise<TContractInfo[]>;
|
|
25
|
+
protected abstract reduceResults(address: string, callResults: CryptoContractFunctionCallResult[]): Promisable<Omit<TContractInfo, 'address' | 'chainId'>>;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=CryptoContractDiviner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CryptoContractDiviner.d.ts","sourceRoot":"","sources":["../../src/CryptoContractDiviner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { CryptoContractFunctionCallResult } from '@xyo-network/crypto-contract-function-read-payload-plugin';
|
|
2
|
+
import { DivinerConfig, DivinerParams } from '@xyo-network/diviner-model';
|
|
3
|
+
import { ContractInfo, CryptoContractDiviner, OmittedContractInfo } from './CryptoContractDiviner';
|
|
4
|
+
export declare const CryptoContractErc1155DivinerConfigSchema = "network.xyo.crypto.contract.erc1155.info.diviner.config";
|
|
5
|
+
export type CryptoContractErc1155DivinerConfigSchema = typeof CryptoContractErc1155DivinerConfigSchema;
|
|
6
|
+
export type CryptoContractErc1155DivinerConfig = DivinerConfig;
|
|
7
|
+
export type CryptoContractErc1155DivinerParams = DivinerParams<CryptoContractErc1155DivinerConfig>;
|
|
8
|
+
export declare const Erc1155ContractInfoSchema = "network.xyo.crypto.contract.erc1155.info";
|
|
9
|
+
export type Erc1155ContractInfoSchema = typeof Erc1155ContractInfoSchema;
|
|
10
|
+
export type Erc1155ContractInfo = ContractInfo<{
|
|
11
|
+
uri?: string;
|
|
12
|
+
}, Erc1155ContractInfoSchema>;
|
|
13
|
+
export declare class CryptoContractErc1155Diviner<TParams extends CryptoContractErc1155DivinerParams = CryptoContractErc1155DivinerParams> extends CryptoContractDiviner<Erc1155ContractInfo, TParams> {
|
|
14
|
+
static configSchemas: string[];
|
|
15
|
+
protected reduceResults(address: string, callResults: CryptoContractFunctionCallResult[]): Promise<OmittedContractInfo<Erc1155ContractInfo>>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=Erc1155Diviner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Erc1155Diviner.d.ts","sourceRoot":"","sources":["../../src/Erc1155Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,2DAA2D,CAAA;AAC5G,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAEzE,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAElG,eAAO,MAAM,wCAAwC,4DAA4D,CAAA;AACjH,MAAM,MAAM,wCAAwC,GAAG,OAAO,wCAAwC,CAAA;AAEtG,MAAM,MAAM,kCAAkC,GAAG,aAAa,CAAA;AAC9D,MAAM,MAAM,kCAAkC,GAAG,aAAa,CAAC,kCAAkC,CAAC,CAAA;AAElG,eAAO,MAAM,yBAAyB,6CAA6C,CAAA;AACnF,MAAM,MAAM,yBAAyB,GAAG,OAAO,yBAAyB,CAAA;AAExE,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAC5C;IACE,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,EACD,yBAAyB,CAC1B,CAAA;AAED,qBAAa,4BAA4B,CACvC,OAAO,SAAS,kCAAkC,GAAG,kCAAkC,CACvF,SAAQ,qBAAqB,CAAC,mBAAmB,EAAE,OAAO,CAAC;IAC3D,OAAgB,aAAa,WAA6C;cAEjD,aAAa,CACpC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,gCAAgC,EAAE,GAC9C,OAAO,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;CAOrD"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { CryptoContractFunctionCallResult } from '@xyo-network/crypto-contract-function-read-payload-plugin';
|
|
2
|
+
import { DivinerConfig, DivinerParams } from '@xyo-network/diviner-model';
|
|
3
|
+
import { ContractInfo, CryptoContractDiviner, OmittedContractInfo } from './CryptoContractDiviner';
|
|
4
|
+
export declare const CryptoContractErc1155DivinerConfigSchema = "network.xyo.crypto.contract.erc1155.info.diviner.config";
|
|
5
|
+
export type CryptoContractErc1155DivinerConfigSchema = typeof CryptoContractErc1155DivinerConfigSchema;
|
|
6
|
+
export type CryptoContractErc1155DivinerConfig = DivinerConfig;
|
|
7
|
+
export type CryptoContractErc1155DivinerParams = DivinerParams<CryptoContractErc1155DivinerConfig>;
|
|
8
|
+
export declare const Erc1155ContractInfoSchema = "network.xyo.crypto.contract.erc1155.info";
|
|
9
|
+
export type Erc1155ContractInfoSchema = typeof Erc1155ContractInfoSchema;
|
|
10
|
+
export type Erc1155ContractInfo = ContractInfo<{
|
|
11
|
+
uri?: string;
|
|
12
|
+
}, Erc1155ContractInfoSchema>;
|
|
13
|
+
export declare class CryptoContractErc1155Diviner<TParams extends CryptoContractErc1155DivinerParams = CryptoContractErc1155DivinerParams> extends CryptoContractDiviner<Erc1155ContractInfo, TParams> {
|
|
14
|
+
static configSchemas: string[];
|
|
15
|
+
protected reduceResults(address: string, callResults: CryptoContractFunctionCallResult[]): Promise<OmittedContractInfo<Erc1155ContractInfo>>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=Erc1155Diviner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Erc1155Diviner.d.ts","sourceRoot":"","sources":["../../src/Erc1155Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,2DAA2D,CAAA;AAC5G,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAEzE,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAElG,eAAO,MAAM,wCAAwC,4DAA4D,CAAA;AACjH,MAAM,MAAM,wCAAwC,GAAG,OAAO,wCAAwC,CAAA;AAEtG,MAAM,MAAM,kCAAkC,GAAG,aAAa,CAAA;AAC9D,MAAM,MAAM,kCAAkC,GAAG,aAAa,CAAC,kCAAkC,CAAC,CAAA;AAElG,eAAO,MAAM,yBAAyB,6CAA6C,CAAA;AACnF,MAAM,MAAM,yBAAyB,GAAG,OAAO,yBAAyB,CAAA;AAExE,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAC5C;IACE,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,EACD,yBAAyB,CAC1B,CAAA;AAED,qBAAa,4BAA4B,CACvC,OAAO,SAAS,kCAAkC,GAAG,kCAAkC,CACvF,SAAQ,qBAAqB,CAAC,mBAAmB,EAAE,OAAO,CAAC;IAC3D,OAAgB,aAAa,WAA6C;cAEjD,aAAa,CACpC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,gCAAgC,EAAE,GAC9C,OAAO,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;CAOrD"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { CryptoContractFunctionCallResult } from '@xyo-network/crypto-contract-function-read-payload-plugin';
|
|
2
|
+
import { DivinerConfig, DivinerParams } from '@xyo-network/diviner-model';
|
|
3
|
+
import { ContractInfo, CryptoContractDiviner, OmittedContractInfo } from './CryptoContractDiviner';
|
|
4
|
+
export declare const CryptoContractErc1155DivinerConfigSchema = "network.xyo.crypto.contract.erc1155.info.diviner.config";
|
|
5
|
+
export type CryptoContractErc1155DivinerConfigSchema = typeof CryptoContractErc1155DivinerConfigSchema;
|
|
6
|
+
export type CryptoContractErc1155DivinerConfig = DivinerConfig;
|
|
7
|
+
export type CryptoContractErc1155DivinerParams = DivinerParams<CryptoContractErc1155DivinerConfig>;
|
|
8
|
+
export declare const Erc1155ContractInfoSchema = "network.xyo.crypto.contract.erc1155.info";
|
|
9
|
+
export type Erc1155ContractInfoSchema = typeof Erc1155ContractInfoSchema;
|
|
10
|
+
export type Erc1155ContractInfo = ContractInfo<{
|
|
11
|
+
uri?: string;
|
|
12
|
+
}, Erc1155ContractInfoSchema>;
|
|
13
|
+
export declare class CryptoContractErc1155Diviner<TParams extends CryptoContractErc1155DivinerParams = CryptoContractErc1155DivinerParams> extends CryptoContractDiviner<Erc1155ContractInfo, TParams> {
|
|
14
|
+
static configSchemas: string[];
|
|
15
|
+
protected reduceResults(address: string, callResults: CryptoContractFunctionCallResult[]): Promise<OmittedContractInfo<Erc1155ContractInfo>>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=Erc1155Diviner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Erc1155Diviner.d.ts","sourceRoot":"","sources":["../../src/Erc1155Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,2DAA2D,CAAA;AAC5G,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAEzE,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAElG,eAAO,MAAM,wCAAwC,4DAA4D,CAAA;AACjH,MAAM,MAAM,wCAAwC,GAAG,OAAO,wCAAwC,CAAA;AAEtG,MAAM,MAAM,kCAAkC,GAAG,aAAa,CAAA;AAC9D,MAAM,MAAM,kCAAkC,GAAG,aAAa,CAAC,kCAAkC,CAAC,CAAA;AAElG,eAAO,MAAM,yBAAyB,6CAA6C,CAAA;AACnF,MAAM,MAAM,yBAAyB,GAAG,OAAO,yBAAyB,CAAA;AAExE,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAC5C;IACE,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,EACD,yBAAyB,CAC1B,CAAA;AAED,qBAAa,4BAA4B,CACvC,OAAO,SAAS,kCAAkC,GAAG,kCAAkC,CACvF,SAAQ,qBAAqB,CAAC,mBAAmB,EAAE,OAAO,CAAC;IAC3D,OAAgB,aAAa,WAA6C;cAEjD,aAAa,CACpC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,gCAAgC,EAAE,GAC9C,OAAO,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;CAOrD"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CryptoContractFunctionCallResult } from '@xyo-network/crypto-contract-function-read-payload-plugin';
|
|
2
|
+
import { DivinerConfig, DivinerParams } from '@xyo-network/diviner-model';
|
|
3
|
+
import { ContractInfo, CryptoContractDiviner, OmittedContractInfo } from './CryptoContractDiviner';
|
|
4
|
+
export declare const CryptoContractErc721DivinerConfigSchema = "network.xyo.crypto.contract.erc721.info.diviner.config";
|
|
5
|
+
export type CryptoContractErc721DivinerConfigSchema = typeof CryptoContractErc721DivinerConfigSchema;
|
|
6
|
+
export type CryptoContractErc721DivinerConfig = DivinerConfig;
|
|
7
|
+
export type CryptoContractErc721DivinerParams = DivinerParams<CryptoContractErc721DivinerConfig>;
|
|
8
|
+
export declare const Erc721ContractInfoSchema = "network.xyo.crypto.contract.erc721.info";
|
|
9
|
+
export type Erc721ContractInfoSchema = typeof Erc721ContractInfoSchema;
|
|
10
|
+
export type Erc721ContractInfo = ContractInfo<{
|
|
11
|
+
name?: string;
|
|
12
|
+
symbol?: string;
|
|
13
|
+
totalSupply?: string;
|
|
14
|
+
}, Erc721ContractInfoSchema>;
|
|
15
|
+
export declare class CryptoContractErc721Diviner<TParams extends CryptoContractErc721DivinerParams = CryptoContractErc721DivinerParams> extends CryptoContractDiviner<Erc721ContractInfo, TParams> {
|
|
16
|
+
static configSchemas: string[];
|
|
17
|
+
protected reduceResults(address: string, callResults: CryptoContractFunctionCallResult[]): Promise<OmittedContractInfo<Erc721ContractInfo>>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=Erc721Diviner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Erc721Diviner.d.ts","sourceRoot":"","sources":["../../src/Erc721Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,2DAA2D,CAAA;AAC5G,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAEzE,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAElG,eAAO,MAAM,uCAAuC,2DAA2D,CAAA;AAC/G,MAAM,MAAM,uCAAuC,GAAG,OAAO,uCAAuC,CAAA;AAEpG,MAAM,MAAM,iCAAiC,GAAG,aAAa,CAAA;AAC7D,MAAM,MAAM,iCAAiC,GAAG,aAAa,CAAC,iCAAiC,CAAC,CAAA;AAEhG,eAAO,MAAM,wBAAwB,4CAA4C,CAAA;AACjF,MAAM,MAAM,wBAAwB,GAAG,OAAO,wBAAwB,CAAA;AAEtE,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAC3C;IACE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,EACD,wBAAwB,CACzB,CAAA;AAED,qBAAa,2BAA2B,CACtC,OAAO,SAAS,iCAAiC,GAAG,iCAAiC,CACrF,SAAQ,qBAAqB,CAAC,kBAAkB,EAAE,OAAO,CAAC;IAC1D,OAAgB,aAAa,WAA4C;cAEhD,aAAa,CACpC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,gCAAgC,EAAE,GAC9C,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;CASpD"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CryptoContractFunctionCallResult } from '@xyo-network/crypto-contract-function-read-payload-plugin';
|
|
2
|
+
import { DivinerConfig, DivinerParams } from '@xyo-network/diviner-model';
|
|
3
|
+
import { ContractInfo, CryptoContractDiviner, OmittedContractInfo } from './CryptoContractDiviner';
|
|
4
|
+
export declare const CryptoContractErc721DivinerConfigSchema = "network.xyo.crypto.contract.erc721.info.diviner.config";
|
|
5
|
+
export type CryptoContractErc721DivinerConfigSchema = typeof CryptoContractErc721DivinerConfigSchema;
|
|
6
|
+
export type CryptoContractErc721DivinerConfig = DivinerConfig;
|
|
7
|
+
export type CryptoContractErc721DivinerParams = DivinerParams<CryptoContractErc721DivinerConfig>;
|
|
8
|
+
export declare const Erc721ContractInfoSchema = "network.xyo.crypto.contract.erc721.info";
|
|
9
|
+
export type Erc721ContractInfoSchema = typeof Erc721ContractInfoSchema;
|
|
10
|
+
export type Erc721ContractInfo = ContractInfo<{
|
|
11
|
+
name?: string;
|
|
12
|
+
symbol?: string;
|
|
13
|
+
totalSupply?: string;
|
|
14
|
+
}, Erc721ContractInfoSchema>;
|
|
15
|
+
export declare class CryptoContractErc721Diviner<TParams extends CryptoContractErc721DivinerParams = CryptoContractErc721DivinerParams> extends CryptoContractDiviner<Erc721ContractInfo, TParams> {
|
|
16
|
+
static configSchemas: string[];
|
|
17
|
+
protected reduceResults(address: string, callResults: CryptoContractFunctionCallResult[]): Promise<OmittedContractInfo<Erc721ContractInfo>>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=Erc721Diviner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Erc721Diviner.d.ts","sourceRoot":"","sources":["../../src/Erc721Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,2DAA2D,CAAA;AAC5G,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAEzE,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAElG,eAAO,MAAM,uCAAuC,2DAA2D,CAAA;AAC/G,MAAM,MAAM,uCAAuC,GAAG,OAAO,uCAAuC,CAAA;AAEpG,MAAM,MAAM,iCAAiC,GAAG,aAAa,CAAA;AAC7D,MAAM,MAAM,iCAAiC,GAAG,aAAa,CAAC,iCAAiC,CAAC,CAAA;AAEhG,eAAO,MAAM,wBAAwB,4CAA4C,CAAA;AACjF,MAAM,MAAM,wBAAwB,GAAG,OAAO,wBAAwB,CAAA;AAEtE,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAC3C;IACE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,EACD,wBAAwB,CACzB,CAAA;AAED,qBAAa,2BAA2B,CACtC,OAAO,SAAS,iCAAiC,GAAG,iCAAiC,CACrF,SAAQ,qBAAqB,CAAC,kBAAkB,EAAE,OAAO,CAAC;IAC1D,OAAgB,aAAa,WAA4C;cAEhD,aAAa,CACpC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,gCAAgC,EAAE,GAC9C,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;CASpD"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CryptoContractFunctionCallResult } from '@xyo-network/crypto-contract-function-read-payload-plugin';
|
|
2
|
+
import { DivinerConfig, DivinerParams } from '@xyo-network/diviner-model';
|
|
3
|
+
import { ContractInfo, CryptoContractDiviner, OmittedContractInfo } from './CryptoContractDiviner';
|
|
4
|
+
export declare const CryptoContractErc721DivinerConfigSchema = "network.xyo.crypto.contract.erc721.info.diviner.config";
|
|
5
|
+
export type CryptoContractErc721DivinerConfigSchema = typeof CryptoContractErc721DivinerConfigSchema;
|
|
6
|
+
export type CryptoContractErc721DivinerConfig = DivinerConfig;
|
|
7
|
+
export type CryptoContractErc721DivinerParams = DivinerParams<CryptoContractErc721DivinerConfig>;
|
|
8
|
+
export declare const Erc721ContractInfoSchema = "network.xyo.crypto.contract.erc721.info";
|
|
9
|
+
export type Erc721ContractInfoSchema = typeof Erc721ContractInfoSchema;
|
|
10
|
+
export type Erc721ContractInfo = ContractInfo<{
|
|
11
|
+
name?: string;
|
|
12
|
+
symbol?: string;
|
|
13
|
+
totalSupply?: string;
|
|
14
|
+
}, Erc721ContractInfoSchema>;
|
|
15
|
+
export declare class CryptoContractErc721Diviner<TParams extends CryptoContractErc721DivinerParams = CryptoContractErc721DivinerParams> extends CryptoContractDiviner<Erc721ContractInfo, TParams> {
|
|
16
|
+
static configSchemas: string[];
|
|
17
|
+
protected reduceResults(address: string, callResults: CryptoContractFunctionCallResult[]): Promise<OmittedContractInfo<Erc721ContractInfo>>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=Erc721Diviner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Erc721Diviner.d.ts","sourceRoot":"","sources":["../../src/Erc721Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,2DAA2D,CAAA;AAC5G,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAEzE,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAElG,eAAO,MAAM,uCAAuC,2DAA2D,CAAA;AAC/G,MAAM,MAAM,uCAAuC,GAAG,OAAO,uCAAuC,CAAA;AAEpG,MAAM,MAAM,iCAAiC,GAAG,aAAa,CAAA;AAC7D,MAAM,MAAM,iCAAiC,GAAG,aAAa,CAAC,iCAAiC,CAAC,CAAA;AAEhG,eAAO,MAAM,wBAAwB,4CAA4C,CAAA;AACjF,MAAM,MAAM,wBAAwB,GAAG,OAAO,wBAAwB,CAAA;AAEtE,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAC3C;IACE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,EACD,wBAAwB,CACzB,CAAA;AAED,qBAAa,2BAA2B,CACtC,OAAO,SAAS,iCAAiC,GAAG,iCAAiC,CACrF,SAAQ,qBAAqB,CAAC,kBAAkB,EAAE,OAAO,CAAC;IAC1D,OAAgB,aAAa,WAA4C;cAEhD,aAAa,CACpC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,gCAAgC,EAAE,GAC9C,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;CASpD"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { CryptoContractFunctionReadWitness } from './Witness';
|
|
2
|
+
export declare const CryptoContractFunctionReadWitnessPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<CryptoContractFunctionReadWitness<import("ethers").Contract, import("@xyo-network/core").BaseParamsFields & {
|
|
3
|
+
account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
|
|
4
|
+
config: import("@xyo-network/payload-model").SchemaFields & Omit<{
|
|
5
|
+
accountDerivationPath?: string | undefined;
|
|
6
|
+
readonly archivist?: import("@xyo-network/module-model").ArchivistModuleConfig | undefined;
|
|
7
|
+
readonly labels?: import("@xyo-network/module-model").Labels | undefined;
|
|
8
|
+
readonly name?: string | undefined;
|
|
9
|
+
readonly paging?: Record<string, {
|
|
10
|
+
size?: number | undefined;
|
|
11
|
+
}> | undefined;
|
|
12
|
+
readonly security?: {
|
|
13
|
+
readonly allowAnonymous?: boolean | undefined;
|
|
14
|
+
readonly allowed?: Record<string, (string | import("@xyo-network/module-model").CosigningAddressSet)[]> | undefined;
|
|
15
|
+
readonly disallowed?: Record<string, string[]> | undefined;
|
|
16
|
+
} | undefined;
|
|
17
|
+
readonly sign?: boolean | undefined;
|
|
18
|
+
readonly storeQueries?: boolean | undefined;
|
|
19
|
+
readonly timestamp?: boolean | undefined;
|
|
20
|
+
} & import("@xyo-network/module-model").ArchivingModuleConfig & Omit<import("@xyo-network/crypto-contract-function-read-payload-plugin").CryptoContractFunctionReadWitnessConfig, "schema"> & {
|
|
21
|
+
schema: string;
|
|
22
|
+
}, "schema"> & {
|
|
23
|
+
schema: string;
|
|
24
|
+
};
|
|
25
|
+
ephemeralQueryAccountEnabled?: boolean | undefined;
|
|
26
|
+
wallet?: import("@xyo-network/wallet-model").WalletInstance | undefined;
|
|
27
|
+
} & {
|
|
28
|
+
factory: (address: string) => import("ethers").Contract;
|
|
29
|
+
}>>;
|
|
30
|
+
//# sourceMappingURL=Plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../src/Plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iCAAiC,EAAE,MAAM,WAAW,CAAA;AAE7D,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;;GASjD,CAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { CryptoContractFunctionReadWitness } from './Witness';
|
|
2
|
+
export declare const CryptoContractFunctionReadWitnessPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<CryptoContractFunctionReadWitness<import("ethers").Contract, import("@xyo-network/core").BaseParamsFields & {
|
|
3
|
+
account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
|
|
4
|
+
config: import("@xyo-network/payload-model").SchemaFields & Omit<{
|
|
5
|
+
accountDerivationPath?: string | undefined;
|
|
6
|
+
readonly archivist?: import("@xyo-network/module-model").ArchivistModuleConfig | undefined;
|
|
7
|
+
readonly labels?: import("@xyo-network/module-model").Labels | undefined;
|
|
8
|
+
readonly name?: string | undefined;
|
|
9
|
+
readonly paging?: Record<string, {
|
|
10
|
+
size?: number | undefined;
|
|
11
|
+
}> | undefined;
|
|
12
|
+
readonly security?: {
|
|
13
|
+
readonly allowAnonymous?: boolean | undefined;
|
|
14
|
+
readonly allowed?: Record<string, (string | import("@xyo-network/module-model").CosigningAddressSet)[]> | undefined;
|
|
15
|
+
readonly disallowed?: Record<string, string[]> | undefined;
|
|
16
|
+
} | undefined;
|
|
17
|
+
readonly sign?: boolean | undefined;
|
|
18
|
+
readonly storeQueries?: boolean | undefined;
|
|
19
|
+
readonly timestamp?: boolean | undefined;
|
|
20
|
+
} & import("@xyo-network/module-model").ArchivingModuleConfig & Omit<import("@xyo-network/crypto-contract-function-read-payload-plugin").CryptoContractFunctionReadWitnessConfig, "schema"> & {
|
|
21
|
+
schema: string;
|
|
22
|
+
}, "schema"> & {
|
|
23
|
+
schema: string;
|
|
24
|
+
};
|
|
25
|
+
ephemeralQueryAccountEnabled?: boolean | undefined;
|
|
26
|
+
wallet?: import("@xyo-network/wallet-model").WalletInstance | undefined;
|
|
27
|
+
} & {
|
|
28
|
+
factory: (address: string) => import("ethers").Contract;
|
|
29
|
+
}>>;
|
|
30
|
+
//# sourceMappingURL=Plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../src/Plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iCAAiC,EAAE,MAAM,WAAW,CAAA;AAE7D,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;;GASjD,CAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { CryptoContractFunctionReadWitness } from './Witness';
|
|
2
|
+
export declare const CryptoContractFunctionReadWitnessPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<CryptoContractFunctionReadWitness<import("ethers").Contract, import("@xyo-network/core").BaseParamsFields & {
|
|
3
|
+
account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
|
|
4
|
+
config: import("@xyo-network/payload-model").SchemaFields & Omit<{
|
|
5
|
+
accountDerivationPath?: string | undefined;
|
|
6
|
+
readonly archivist?: import("@xyo-network/module-model").ArchivistModuleConfig | undefined;
|
|
7
|
+
readonly labels?: import("@xyo-network/module-model").Labels | undefined;
|
|
8
|
+
readonly name?: string | undefined;
|
|
9
|
+
readonly paging?: Record<string, {
|
|
10
|
+
size?: number | undefined;
|
|
11
|
+
}> | undefined;
|
|
12
|
+
readonly security?: {
|
|
13
|
+
readonly allowAnonymous?: boolean | undefined;
|
|
14
|
+
readonly allowed?: Record<string, (string | import("@xyo-network/module-model").CosigningAddressSet)[]> | undefined;
|
|
15
|
+
readonly disallowed?: Record<string, string[]> | undefined;
|
|
16
|
+
} | undefined;
|
|
17
|
+
readonly sign?: boolean | undefined;
|
|
18
|
+
readonly storeQueries?: boolean | undefined;
|
|
19
|
+
readonly timestamp?: boolean | undefined;
|
|
20
|
+
} & import("@xyo-network/module-model").ArchivingModuleConfig & Omit<import("@xyo-network/crypto-contract-function-read-payload-plugin").CryptoContractFunctionReadWitnessConfig, "schema"> & {
|
|
21
|
+
schema: string;
|
|
22
|
+
}, "schema"> & {
|
|
23
|
+
schema: string;
|
|
24
|
+
};
|
|
25
|
+
ephemeralQueryAccountEnabled?: boolean | undefined;
|
|
26
|
+
wallet?: import("@xyo-network/wallet-model").WalletInstance | undefined;
|
|
27
|
+
} & {
|
|
28
|
+
factory: (address: string) => import("ethers").Contract;
|
|
29
|
+
}>>;
|
|
30
|
+
//# sourceMappingURL=Plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../src/Plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iCAAiC,EAAE,MAAM,WAAW,CAAA;AAE7D,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;;GASjD,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { AbstractWitness } from '@xyo-network/abstract-witness';
|
|
2
|
+
import { CryptoContractFunctionCall, CryptoContractFunctionCallResult, CryptoContractFunctionReadWitnessConfig } from '@xyo-network/crypto-contract-function-read-payload-plugin';
|
|
3
|
+
import { AnyConfigSchema } from '@xyo-network/module-model';
|
|
4
|
+
import { WitnessParams } from '@xyo-network/witness-model';
|
|
5
|
+
import { Contract } from 'ethers';
|
|
6
|
+
export type CryptoContractFunctionReadWitnessParams<TContract extends Contract> = WitnessParams<AnyConfigSchema<CryptoContractFunctionReadWitnessConfig>, {
|
|
7
|
+
factory: (address: string) => TContract;
|
|
8
|
+
}>;
|
|
9
|
+
export declare class CryptoContractFunctionReadWitness<TContract extends Contract = Contract, TParams extends CryptoContractFunctionReadWitnessParams<TContract> = CryptoContractFunctionReadWitnessParams<TContract>> extends AbstractWitness<TParams, CryptoContractFunctionCall<keyof TContract['callStatic']>, CryptoContractFunctionCallResult> {
|
|
10
|
+
static configSchemas: string[];
|
|
11
|
+
protected observeHandler(inPayloads?: CryptoContractFunctionCall<keyof TContract['callStatic']>[]): Promise<CryptoContractFunctionCallResult[]>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=Witness.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Witness.d.ts","sourceRoot":"","sources":["../../src/Witness.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EACL,0BAA0B,EAC1B,gCAAgC,EAGhC,uCAAuC,EAExC,MAAM,2DAA2D,CAAA;AAElE,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAE3D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAa,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAE5C,MAAM,MAAM,uCAAuC,CAAC,SAAS,SAAS,QAAQ,IAAI,aAAa,CAC7F,eAAe,CAAC,uCAAuC,CAAC,EACxD;IACE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,SAAS,CAAA;CACxC,CACF,CAAA;AAED,qBAAa,iCAAiC,CAC5C,SAAS,SAAS,QAAQ,GAAG,QAAQ,EACrC,OAAO,SAAS,uCAAuC,CAAC,SAAS,CAAC,GAAG,uCAAuC,CAAC,SAAS,CAAC,CACvH,SAAQ,eAAe,CAAC,OAAO,EAAE,0BAA0B,CAAC,MAAM,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,gCAAgC,CAAC;IAC7H,OAAgB,aAAa,WAAkD;cAEtD,cAAc,CACrC,UAAU,GAAE,0BAA0B,CAAC,MAAM,SAAS,CAAC,YAAY,CAAC,CAAC,EAAO,GAC3E,OAAO,CAAC,gCAAgC,EAAE,CAAC;CA0B/C"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { AbstractWitness } from '@xyo-network/abstract-witness';
|
|
2
|
+
import { CryptoContractFunctionCall, CryptoContractFunctionCallResult, CryptoContractFunctionReadWitnessConfig } from '@xyo-network/crypto-contract-function-read-payload-plugin';
|
|
3
|
+
import { AnyConfigSchema } from '@xyo-network/module-model';
|
|
4
|
+
import { WitnessParams } from '@xyo-network/witness-model';
|
|
5
|
+
import { Contract } from 'ethers';
|
|
6
|
+
export type CryptoContractFunctionReadWitnessParams<TContract extends Contract> = WitnessParams<AnyConfigSchema<CryptoContractFunctionReadWitnessConfig>, {
|
|
7
|
+
factory: (address: string) => TContract;
|
|
8
|
+
}>;
|
|
9
|
+
export declare class CryptoContractFunctionReadWitness<TContract extends Contract = Contract, TParams extends CryptoContractFunctionReadWitnessParams<TContract> = CryptoContractFunctionReadWitnessParams<TContract>> extends AbstractWitness<TParams, CryptoContractFunctionCall<keyof TContract['callStatic']>, CryptoContractFunctionCallResult> {
|
|
10
|
+
static configSchemas: string[];
|
|
11
|
+
protected observeHandler(inPayloads?: CryptoContractFunctionCall<keyof TContract['callStatic']>[]): Promise<CryptoContractFunctionCallResult[]>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=Witness.d.ts.map
|