@dedot/codegen 1.0.0-next.a0f8d41e.25 → 1.0.0
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/cjs/sol/generator/ConstructorQueryGen.js +1 -1
- package/cjs/sol/generator/ConstructorTxGen.js +1 -1
- package/cjs/sol/generator/QueryGen.js +1 -1
- package/cjs/sol/generator/TxGen.js +1 -1
- package/cjs/sol/templates/constructor-query.hbs +1 -1
- package/cjs/sol/templates/constructor-tx.hbs +1 -2
- package/cjs/sol/templates/events.hbs +1 -1
- package/cjs/sol/templates/index.hbs +6 -6
- package/cjs/sol/templates/query.hbs +1 -1
- package/cjs/sol/templates/tx.hbs +1 -1
- package/cjs/typink/generator/ConstructorQueryGen.js +1 -1
- package/cjs/typink/generator/ConstructorTxGen.js +1 -1
- package/cjs/typink/generator/QueryGen.js +1 -1
- package/cjs/typink/generator/TxGen.js +1 -1
- package/cjs/typink/templates/constructor-query.hbs +1 -1
- package/cjs/typink/templates/constructor-tx.hbs +1 -2
- package/cjs/typink/templates/events.hbs +1 -1
- package/cjs/typink/templates/index.hbs +6 -6
- package/cjs/typink/templates/query.hbs +1 -1
- package/cjs/typink/templates/tx.hbs +1 -1
- package/package.json +10 -10
- package/sol/generator/ConstructorQueryGen.js +1 -1
- package/sol/generator/ConstructorTxGen.js +1 -1
- package/sol/generator/QueryGen.js +1 -1
- package/sol/generator/TxGen.js +1 -1
- package/sol/templates/constructor-query.hbs +1 -1
- package/sol/templates/constructor-tx.hbs +1 -2
- package/sol/templates/events.hbs +1 -1
- package/sol/templates/index.hbs +6 -6
- package/sol/templates/query.hbs +1 -1
- package/sol/templates/tx.hbs +1 -1
- package/typink/generator/ConstructorQueryGen.js +1 -1
- package/typink/generator/ConstructorTxGen.js +1 -1
- package/typink/generator/QueryGen.js +1 -1
- package/typink/generator/TxGen.js +1 -1
- package/typink/templates/constructor-query.hbs +1 -1
- package/typink/templates/constructor-tx.hbs +1 -2
- package/typink/templates/events.hbs +1 -1
- package/typink/templates/index.hbs +6 -6
- package/typink/templates/query.hbs +1 -1
- package/typink/templates/tx.hbs +1 -1
|
@@ -32,7 +32,7 @@ class ConstructorQueryGen {
|
|
|
32
32
|
}
|
|
33
33
|
generateMethodDef(abiItem, optionsParamName = 'options') {
|
|
34
34
|
const paramsOut = this.generateParamsOut(abiItem);
|
|
35
|
-
return `GenericConstructorQueryCall<
|
|
35
|
+
return `GenericConstructorQueryCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ConstructorCallOptions) => Promise<GenericConstructorCallResult<[], ContractInstantiateResult>>, Type>`;
|
|
36
36
|
}
|
|
37
37
|
generateParamsOut(abiItem) {
|
|
38
38
|
return abiItem.inputs
|
|
@@ -16,7 +16,7 @@ class ConstructorTxGen extends ConstructorQueryGen_js_1.ConstructorQueryGen {
|
|
|
16
16
|
}
|
|
17
17
|
generateMethodDef(abiItem, optionsParamName = 'options') {
|
|
18
18
|
const paramsOut = this.generateParamsOut(abiItem);
|
|
19
|
-
return `GenericConstructorTxCall<
|
|
19
|
+
return `GenericConstructorTxCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ConstructorTxOptions) => GenericInstantiateSubmittableExtrinsic<ContractApi>, Type>`;
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
22
|
exports.ConstructorTxGen = ConstructorTxGen;
|
|
@@ -39,7 +39,7 @@ class QueryGen {
|
|
|
39
39
|
const typeOutInner = `${outputs.map((o) => this.typesGen.generateType(o, abiItem, 1, true)).join(',')}`;
|
|
40
40
|
// If there is only one output, we don't need to wrap it in a tuple, for user-friendly
|
|
41
41
|
const typeOut = outputs.length === 1 ? typeOutInner : `[${typeOutInner}]`;
|
|
42
|
-
return `GenericContractQueryCall<
|
|
42
|
+
return `GenericContractQueryCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ContractCallOptions) => Promise<GenericContractCallResult<${typeOut}, ContractCallResult>>, Type>`;
|
|
43
43
|
}
|
|
44
44
|
generateParamsOut(abiItem) {
|
|
45
45
|
return abiItem.inputs
|
|
@@ -16,7 +16,7 @@ class TxGen extends QueryGen_js_1.QueryGen {
|
|
|
16
16
|
}
|
|
17
17
|
generateMethodDef(abiItem, optionsParamName = 'options') {
|
|
18
18
|
const paramsOut = this.generateParamsOut(abiItem);
|
|
19
|
-
return `GenericContractTxCall<
|
|
19
|
+
return `GenericContractTxCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ContractTxOptions) => ContractSubmittableExtrinsic, Type>`;
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
22
|
exports.TxGen = TxGen;
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ConstructorQuery
|
|
5
|
+
export interface ConstructorQuery<Type extends MetadataType> extends GenericConstructorQuery<Type> {
|
|
6
6
|
{{{ constructorsOut }}}
|
|
7
7
|
}
|
|
@@ -3,9 +3,8 @@
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
5
|
export interface ConstructorTx<
|
|
6
|
-
ChainApi extends GenericSubstrateApi,
|
|
7
6
|
ContractApi extends SolGenericContractApi,
|
|
8
7
|
Type extends MetadataType
|
|
9
|
-
> extends GenericConstructorTx
|
|
8
|
+
> extends GenericConstructorTx<Type> {
|
|
10
9
|
{{{ constructorsOut }}}
|
|
11
10
|
}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ContractEvents
|
|
5
|
+
export interface ContractEvents<Type extends MetadataType> extends GenericContractEvents<Type> {
|
|
6
6
|
{{{ eventsOut }}}
|
|
7
7
|
}
|
|
@@ -9,13 +9,13 @@ import { ContractEvents } from './events.js';
|
|
|
9
9
|
|
|
10
10
|
export * from './types.js';
|
|
11
11
|
|
|
12
|
-
{{{interfaceDocs}}}export interface {{{interfaceName}}}<
|
|
12
|
+
{{{interfaceDocs}}}export interface {{{interfaceName}}}<ChainApi extends GenericSubstrateApi = SubstrateApi> extends SolGenericContractApi<ChainApi> {
|
|
13
13
|
metadataType: 'sol';
|
|
14
|
-
query: ContractQuery<
|
|
15
|
-
tx: ContractTx<
|
|
16
|
-
constructorQuery: ConstructorQuery<
|
|
17
|
-
events: ContractEvents<
|
|
18
|
-
constructorTx: ConstructorTx<
|
|
14
|
+
query: ContractQuery<'sol'>;
|
|
15
|
+
tx: ContractTx<'sol'>;
|
|
16
|
+
constructorQuery: ConstructorQuery<'sol'>;
|
|
17
|
+
events: ContractEvents<'sol'>;
|
|
18
|
+
constructorTx: ConstructorTx<{{{interfaceName}}}, 'sol'>;
|
|
19
19
|
|
|
20
20
|
types: {
|
|
21
21
|
ChainApi: ChainApi;
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ContractQuery<
|
|
5
|
+
export interface ContractQuery<Type extends MetadataType> extends GenericContractQuery<Type> {
|
|
6
6
|
{{{ queryCallsOut }}}
|
|
7
7
|
}
|
package/cjs/sol/templates/tx.hbs
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ContractTx<
|
|
5
|
+
export interface ContractTx<Type extends MetadataType> extends GenericContractTx<Type> {
|
|
6
6
|
{{{ txCallsOut }}}
|
|
7
7
|
}
|
|
@@ -20,7 +20,7 @@ class ConstructorQueryGen extends QueryGen_js_1.QueryGen {
|
|
|
20
20
|
const typeOutRaw = this.typesGen.generateType(returnType.type, 0, true);
|
|
21
21
|
// Unwrap langError result
|
|
22
22
|
const typeOut = typeOutRaw.match(/^(\w+)<(.*), (.*)>$/).at(2);
|
|
23
|
-
return `GenericConstructorQueryCall<
|
|
23
|
+
return `GenericConstructorQueryCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ConstructorCallOptions) => Promise<GenericConstructorCallResult<${typeOut}, ContractInstantiateResult>>, Type>`;
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
exports.ConstructorQueryGen = ConstructorQueryGen;
|
|
@@ -16,7 +16,7 @@ class ConstructorTxGen extends QueryGen_js_1.QueryGen {
|
|
|
16
16
|
}
|
|
17
17
|
generateMethodDef(def, optionsParamName = 'options') {
|
|
18
18
|
const paramsOut = this.generateParamsOut(def.args);
|
|
19
|
-
return `GenericConstructorTxCall<
|
|
19
|
+
return `GenericConstructorTxCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ConstructorTxOptions) => GenericInstantiateSubmittableExtrinsic<ContractApi>, Type>`;
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
22
|
exports.ConstructorTxGen = ConstructorTxGen;
|
|
@@ -40,7 +40,7 @@ class QueryGen {
|
|
|
40
40
|
const typeOutRaw = this.typesGen.generateType(returnType.type, 0, true);
|
|
41
41
|
// Unwrap langError result
|
|
42
42
|
const typeOut = typeOutRaw.match(/^(\w+)<(.*), (.*)>$/).at(2);
|
|
43
|
-
return `GenericContractQueryCall<
|
|
43
|
+
return `GenericContractQueryCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ContractCallOptions) => Promise<GenericContractCallResult<${typeOut}, ContractCallResult>>, Type>`;
|
|
44
44
|
}
|
|
45
45
|
generateParamsOut(args) {
|
|
46
46
|
return args
|
|
@@ -17,7 +17,7 @@ class TxGen extends QueryGen_js_1.QueryGen {
|
|
|
17
17
|
}
|
|
18
18
|
generateMethodDef(def, optionsParamName = 'options') {
|
|
19
19
|
const paramsOut = this.generateParamsOut(def.args);
|
|
20
|
-
return `GenericContractTxCall<
|
|
20
|
+
return `GenericContractTxCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ContractTxOptions) => ContractSubmittableExtrinsic, Type>`;
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
23
|
exports.TxGen = TxGen;
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ConstructorQuery<
|
|
5
|
+
export interface ConstructorQuery<Type extends MetadataType> extends GenericConstructorQuery<Type> {
|
|
6
6
|
{{{ constructorsOut }}}
|
|
7
7
|
}
|
|
@@ -3,9 +3,8 @@
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
5
|
export interface ConstructorTx<
|
|
6
|
-
ChainApi extends GenericSubstrateApi,
|
|
7
6
|
ContractApi extends InkGenericContractApi,
|
|
8
7
|
Type extends MetadataType
|
|
9
|
-
> extends GenericConstructorTx<
|
|
8
|
+
> extends GenericConstructorTx<Type> {
|
|
10
9
|
{{{ constructorsOut }}}
|
|
11
10
|
}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ContractEvents
|
|
5
|
+
export interface ContractEvents<Type extends MetadataType> extends GenericContractEvents <Type> {
|
|
6
6
|
{{{ eventsOut }}}
|
|
7
7
|
}
|
|
@@ -9,13 +9,13 @@ import { ContractEvents } from './events.js';
|
|
|
9
9
|
|
|
10
10
|
export * from './types.js';
|
|
11
11
|
|
|
12
|
-
{{{interfaceDocs}}}export interface {{{interfaceName}}}<
|
|
12
|
+
{{{interfaceDocs}}}export interface {{{interfaceName}}}<ChainApi extends GenericSubstrateApi = SubstrateApi> extends InkGenericContractApi<ChainApi> {
|
|
13
13
|
metadataType: 'ink';
|
|
14
|
-
query: ContractQuery<
|
|
15
|
-
tx: ContractTx<
|
|
16
|
-
constructorQuery: ConstructorQuery<
|
|
17
|
-
constructorTx: ConstructorTx<
|
|
18
|
-
events: ContractEvents<
|
|
14
|
+
query: ContractQuery<'ink'>;
|
|
15
|
+
tx: ContractTx<'ink'>;
|
|
16
|
+
constructorQuery: ConstructorQuery<'ink'>;
|
|
17
|
+
constructorTx: ConstructorTx<{{{interfaceName}}}, 'ink'>;
|
|
18
|
+
events: ContractEvents<'ink'>;
|
|
19
19
|
storage: {
|
|
20
20
|
root(): Promise<{{{rootStorageName}}}>;
|
|
21
21
|
lazy(): {{{lazyStorageName}}};
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ContractQuery<
|
|
5
|
+
export interface ContractQuery<Type extends MetadataType> extends GenericContractQuery<Type> {
|
|
6
6
|
{{{ queryCallsOut }}}
|
|
7
7
|
}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ContractTx<
|
|
5
|
+
export interface ContractTx<Type extends MetadataType> extends GenericContractTx<Type> {
|
|
6
6
|
{{{ txCallsOut }}}
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dedot/codegen",
|
|
3
|
-
"version": "1.0.0
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"description": "Generate types",
|
|
5
5
|
"author": "Thang X. Vu <thang@dedot.dev>",
|
|
6
6
|
"homepage": "https://dedot.dev",
|
|
@@ -19,14 +19,14 @@
|
|
|
19
19
|
"copy": "cp -R ./src/chaintypes/templates ./dist/chaintypes && cp -R ./src/chaintypes/templates ./dist/cjs/chaintypes && cp -R ./src/typink/templates ./dist/typink && cp -R ./src/typink/templates ./dist/cjs/typink && cp -R ./src/sol/templates ./dist/sol && cp -R ./src/sol/templates ./dist/cjs/sol"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@dedot/api": "1.0.0
|
|
23
|
-
"@dedot/codecs": "1.0.0
|
|
24
|
-
"@dedot/contracts": "1.0.0
|
|
25
|
-
"@dedot/providers": "1.0.0
|
|
26
|
-
"@dedot/runtime-specs": "1.0.0
|
|
27
|
-
"@dedot/shape": "1.0.0
|
|
28
|
-
"@dedot/types": "1.0.0
|
|
29
|
-
"@dedot/utils": "1.0.0
|
|
22
|
+
"@dedot/api": "1.0.0",
|
|
23
|
+
"@dedot/codecs": "1.0.0",
|
|
24
|
+
"@dedot/contracts": "1.0.0",
|
|
25
|
+
"@dedot/providers": "1.0.0",
|
|
26
|
+
"@dedot/runtime-specs": "1.0.0",
|
|
27
|
+
"@dedot/shape": "1.0.0",
|
|
28
|
+
"@dedot/types": "1.0.0",
|
|
29
|
+
"@dedot/utils": "1.0.0",
|
|
30
30
|
"handlebars": "^4.7.8",
|
|
31
31
|
"prettier": "^3.7.3"
|
|
32
32
|
},
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"node": ">=18"
|
|
39
39
|
},
|
|
40
40
|
"license": "Apache-2.0",
|
|
41
|
-
"gitHead": "
|
|
41
|
+
"gitHead": "7767062a2188b4ac90561c5ad3cc3f06ac608a24",
|
|
42
42
|
"module": "./index.js",
|
|
43
43
|
"types": "./index.d.ts",
|
|
44
44
|
"exports": {
|
|
@@ -29,7 +29,7 @@ export class ConstructorQueryGen {
|
|
|
29
29
|
}
|
|
30
30
|
generateMethodDef(abiItem, optionsParamName = 'options') {
|
|
31
31
|
const paramsOut = this.generateParamsOut(abiItem);
|
|
32
|
-
return `GenericConstructorQueryCall<
|
|
32
|
+
return `GenericConstructorQueryCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ConstructorCallOptions) => Promise<GenericConstructorCallResult<[], ContractInstantiateResult>>, Type>`;
|
|
33
33
|
}
|
|
34
34
|
generateParamsOut(abiItem) {
|
|
35
35
|
return abiItem.inputs
|
|
@@ -13,6 +13,6 @@ export class ConstructorTxGen extends ConstructorQueryGen {
|
|
|
13
13
|
}
|
|
14
14
|
generateMethodDef(abiItem, optionsParamName = 'options') {
|
|
15
15
|
const paramsOut = this.generateParamsOut(abiItem);
|
|
16
|
-
return `GenericConstructorTxCall<
|
|
16
|
+
return `GenericConstructorTxCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ConstructorTxOptions) => GenericInstantiateSubmittableExtrinsic<ContractApi>, Type>`;
|
|
17
17
|
}
|
|
18
18
|
}
|
|
@@ -36,7 +36,7 @@ export class QueryGen {
|
|
|
36
36
|
const typeOutInner = `${outputs.map((o) => this.typesGen.generateType(o, abiItem, 1, true)).join(',')}`;
|
|
37
37
|
// If there is only one output, we don't need to wrap it in a tuple, for user-friendly
|
|
38
38
|
const typeOut = outputs.length === 1 ? typeOutInner : `[${typeOutInner}]`;
|
|
39
|
-
return `GenericContractQueryCall<
|
|
39
|
+
return `GenericContractQueryCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ContractCallOptions) => Promise<GenericContractCallResult<${typeOut}, ContractCallResult>>, Type>`;
|
|
40
40
|
}
|
|
41
41
|
generateParamsOut(abiItem) {
|
|
42
42
|
return abiItem.inputs
|
package/sol/generator/TxGen.js
CHANGED
|
@@ -13,6 +13,6 @@ export class TxGen extends QueryGen {
|
|
|
13
13
|
}
|
|
14
14
|
generateMethodDef(abiItem, optionsParamName = 'options') {
|
|
15
15
|
const paramsOut = this.generateParamsOut(abiItem);
|
|
16
|
-
return `GenericContractTxCall<
|
|
16
|
+
return `GenericContractTxCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ContractTxOptions) => ContractSubmittableExtrinsic, Type>`;
|
|
17
17
|
}
|
|
18
18
|
}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ConstructorQuery
|
|
5
|
+
export interface ConstructorQuery<Type extends MetadataType> extends GenericConstructorQuery<Type> {
|
|
6
6
|
{{{ constructorsOut }}}
|
|
7
7
|
}
|
|
@@ -3,9 +3,8 @@
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
5
|
export interface ConstructorTx<
|
|
6
|
-
ChainApi extends GenericSubstrateApi,
|
|
7
6
|
ContractApi extends SolGenericContractApi,
|
|
8
7
|
Type extends MetadataType
|
|
9
|
-
> extends GenericConstructorTx
|
|
8
|
+
> extends GenericConstructorTx<Type> {
|
|
10
9
|
{{{ constructorsOut }}}
|
|
11
10
|
}
|
package/sol/templates/events.hbs
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ContractEvents
|
|
5
|
+
export interface ContractEvents<Type extends MetadataType> extends GenericContractEvents<Type> {
|
|
6
6
|
{{{ eventsOut }}}
|
|
7
7
|
}
|
package/sol/templates/index.hbs
CHANGED
|
@@ -9,13 +9,13 @@ import { ContractEvents } from './events.js';
|
|
|
9
9
|
|
|
10
10
|
export * from './types.js';
|
|
11
11
|
|
|
12
|
-
{{{interfaceDocs}}}export interface {{{interfaceName}}}<
|
|
12
|
+
{{{interfaceDocs}}}export interface {{{interfaceName}}}<ChainApi extends GenericSubstrateApi = SubstrateApi> extends SolGenericContractApi<ChainApi> {
|
|
13
13
|
metadataType: 'sol';
|
|
14
|
-
query: ContractQuery<
|
|
15
|
-
tx: ContractTx<
|
|
16
|
-
constructorQuery: ConstructorQuery<
|
|
17
|
-
events: ContractEvents<
|
|
18
|
-
constructorTx: ConstructorTx<
|
|
14
|
+
query: ContractQuery<'sol'>;
|
|
15
|
+
tx: ContractTx<'sol'>;
|
|
16
|
+
constructorQuery: ConstructorQuery<'sol'>;
|
|
17
|
+
events: ContractEvents<'sol'>;
|
|
18
|
+
constructorTx: ConstructorTx<{{{interfaceName}}}, 'sol'>;
|
|
19
19
|
|
|
20
20
|
types: {
|
|
21
21
|
ChainApi: ChainApi;
|
package/sol/templates/query.hbs
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ContractQuery<
|
|
5
|
+
export interface ContractQuery<Type extends MetadataType> extends GenericContractQuery<Type> {
|
|
6
6
|
{{{ queryCallsOut }}}
|
|
7
7
|
}
|
package/sol/templates/tx.hbs
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ContractTx<
|
|
5
|
+
export interface ContractTx<Type extends MetadataType> extends GenericContractTx<Type> {
|
|
6
6
|
{{{ txCallsOut }}}
|
|
7
7
|
}
|
|
@@ -17,6 +17,6 @@ export class ConstructorQueryGen extends QueryGen {
|
|
|
17
17
|
const typeOutRaw = this.typesGen.generateType(returnType.type, 0, true);
|
|
18
18
|
// Unwrap langError result
|
|
19
19
|
const typeOut = typeOutRaw.match(/^(\w+)<(.*), (.*)>$/).at(2);
|
|
20
|
-
return `GenericConstructorQueryCall<
|
|
20
|
+
return `GenericConstructorQueryCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ConstructorCallOptions) => Promise<GenericConstructorCallResult<${typeOut}, ContractInstantiateResult>>, Type>`;
|
|
21
21
|
}
|
|
22
22
|
}
|
|
@@ -13,6 +13,6 @@ export class ConstructorTxGen extends QueryGen {
|
|
|
13
13
|
}
|
|
14
14
|
generateMethodDef(def, optionsParamName = 'options') {
|
|
15
15
|
const paramsOut = this.generateParamsOut(def.args);
|
|
16
|
-
return `GenericConstructorTxCall<
|
|
16
|
+
return `GenericConstructorTxCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ConstructorTxOptions) => GenericInstantiateSubmittableExtrinsic<ContractApi>, Type>`;
|
|
17
17
|
}
|
|
18
18
|
}
|
|
@@ -37,7 +37,7 @@ export class QueryGen {
|
|
|
37
37
|
const typeOutRaw = this.typesGen.generateType(returnType.type, 0, true);
|
|
38
38
|
// Unwrap langError result
|
|
39
39
|
const typeOut = typeOutRaw.match(/^(\w+)<(.*), (.*)>$/).at(2);
|
|
40
|
-
return `GenericContractQueryCall<
|
|
40
|
+
return `GenericContractQueryCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ContractCallOptions) => Promise<GenericContractCallResult<${typeOut}, ContractCallResult>>, Type>`;
|
|
41
41
|
}
|
|
42
42
|
generateParamsOut(args) {
|
|
43
43
|
return args
|
|
@@ -14,6 +14,6 @@ export class TxGen extends QueryGen {
|
|
|
14
14
|
}
|
|
15
15
|
generateMethodDef(def, optionsParamName = 'options') {
|
|
16
16
|
const paramsOut = this.generateParamsOut(def.args);
|
|
17
|
-
return `GenericContractTxCall<
|
|
17
|
+
return `GenericContractTxCall<(${paramsOut && `${paramsOut},`} ${optionsParamName}?: ContractTxOptions) => ContractSubmittableExtrinsic, Type>`;
|
|
18
18
|
}
|
|
19
19
|
}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ConstructorQuery<
|
|
5
|
+
export interface ConstructorQuery<Type extends MetadataType> extends GenericConstructorQuery<Type> {
|
|
6
6
|
{{{ constructorsOut }}}
|
|
7
7
|
}
|
|
@@ -3,9 +3,8 @@
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
5
|
export interface ConstructorTx<
|
|
6
|
-
ChainApi extends GenericSubstrateApi,
|
|
7
6
|
ContractApi extends InkGenericContractApi,
|
|
8
7
|
Type extends MetadataType
|
|
9
|
-
> extends GenericConstructorTx<
|
|
8
|
+
> extends GenericConstructorTx<Type> {
|
|
10
9
|
{{{ constructorsOut }}}
|
|
11
10
|
}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ContractEvents
|
|
5
|
+
export interface ContractEvents<Type extends MetadataType> extends GenericContractEvents <Type> {
|
|
6
6
|
{{{ eventsOut }}}
|
|
7
7
|
}
|
|
@@ -9,13 +9,13 @@ import { ContractEvents } from './events.js';
|
|
|
9
9
|
|
|
10
10
|
export * from './types.js';
|
|
11
11
|
|
|
12
|
-
{{{interfaceDocs}}}export interface {{{interfaceName}}}<
|
|
12
|
+
{{{interfaceDocs}}}export interface {{{interfaceName}}}<ChainApi extends GenericSubstrateApi = SubstrateApi> extends InkGenericContractApi<ChainApi> {
|
|
13
13
|
metadataType: 'ink';
|
|
14
|
-
query: ContractQuery<
|
|
15
|
-
tx: ContractTx<
|
|
16
|
-
constructorQuery: ConstructorQuery<
|
|
17
|
-
constructorTx: ConstructorTx<
|
|
18
|
-
events: ContractEvents<
|
|
14
|
+
query: ContractQuery<'ink'>;
|
|
15
|
+
tx: ContractTx<'ink'>;
|
|
16
|
+
constructorQuery: ConstructorQuery<'ink'>;
|
|
17
|
+
constructorTx: ConstructorTx<{{{interfaceName}}}, 'ink'>;
|
|
18
|
+
events: ContractEvents<'ink'>;
|
|
19
19
|
storage: {
|
|
20
20
|
root(): Promise<{{{rootStorageName}}}>;
|
|
21
21
|
lazy(): {{{lazyStorageName}}};
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ContractQuery<
|
|
5
|
+
export interface ContractQuery<Type extends MetadataType> extends GenericContractQuery<Type> {
|
|
6
6
|
{{{ queryCallsOut }}}
|
|
7
7
|
}
|
package/typink/templates/tx.hbs
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
{{{ importTypes }}}
|
|
4
4
|
|
|
5
|
-
export interface ContractTx<
|
|
5
|
+
export interface ContractTx<Type extends MetadataType> extends GenericContractTx<Type> {
|
|
6
6
|
{{{ txCallsOut }}}
|
|
7
7
|
}
|