@pezkuwi/typegen 16.5.18 → 16.5.31
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/{build-tsc-cjs → cjs}/generate/lookup.js +39 -10
- package/{build/cjs → cjs}/packageInfo.js +1 -1
- package/{build-tsc-cjs → cjs}/util/derived.js +15 -0
- package/{build-tsc-cjs → cjs}/util/formatting.js +5 -0
- package/generate/lookup.js +39 -10
- package/package.json +27 -27
- package/{build-tsc-esm/packageInfo.js → packageInfo.js} +1 -1
- package/{build/util → util}/derived.js +16 -1
- package/{build-tsc-esm/util → util}/formatting.js +5 -0
- package/build/LICENSE +0 -201
- package/build/README.md +0 -3
- package/build/augment.js +0 -2
- package/build/bundle.js +0 -2
- package/build/cjs/augment.d.ts +0 -2
- package/build/cjs/augment.js +0 -4
- package/build/cjs/bundle.d.ts +0 -2
- package/build/cjs/bundle.js +0 -7
- package/build/cjs/extractChain.js +0 -44
- package/build/cjs/fromChain.js +0 -95
- package/build/cjs/fromDefs.js +0 -82
- package/build/cjs/generate/consts.d.ts +0 -5
- package/build/cjs/generate/consts.js +0 -91
- package/build/cjs/generate/errors.d.ts +0 -4
- package/build/cjs/generate/errors.js +0 -59
- package/build/cjs/generate/events.d.ts +0 -5
- package/build/cjs/generate/events.js +0 -139
- package/build/cjs/generate/index.js +0 -23
- package/build/cjs/generate/interfaceRegistry.d.ts +0 -4
- package/build/cjs/generate/interfaceRegistry.js +0 -64
- package/build/cjs/generate/lookup.d.ts +0 -4
- package/build/cjs/generate/lookup.js +0 -240
- package/build/cjs/generate/query.d.ts +0 -5
- package/build/cjs/generate/query.js +0 -140
- package/build/cjs/generate/rpc.d.ts +0 -6
- package/build/cjs/generate/rpc.js +0 -115
- package/build/cjs/generate/runtime.d.ts +0 -7
- package/build/cjs/generate/runtime.js +0 -233
- package/build/cjs/generate/tsDef.d.ts +0 -16
- package/build/cjs/generate/tsDef.js +0 -254
- package/build/cjs/generate/tx.d.ts +0 -5
- package/build/cjs/generate/tx.js +0 -121
- package/build/cjs/generate/types.d.ts +0 -12
- package/build/cjs/generate/types.js +0 -16
- package/build/cjs/index.js +0 -5
- package/build/cjs/interfacesTs.js +0 -28
- package/build/cjs/metadataMd.js +0 -652
- package/build/cjs/util/assert.js +0 -15
- package/build/cjs/util/derived.js +0 -128
- package/build/cjs/util/docs.js +0 -10
- package/build/cjs/util/file.js +0 -33
- package/build/cjs/util/formatting.js +0 -237
- package/build/cjs/util/imports.js +0 -126
- package/build/cjs/util/index.js +0 -39
- package/build/cjs/util/initMeta.js +0 -22
- package/build/cjs/util/register.js +0 -10
- package/build/cjs/util/wsMeta.js +0 -60
- package/build/extractChain.d.ts +0 -1
- package/build/extractChain.js +0 -40
- package/build/fromChain.d.ts +0 -1
- package/build/fromChain.js +0 -91
- package/build/fromDefs.d.ts +0 -1
- package/build/fromDefs.js +0 -78
- package/build/generate/consts.d.ts +0 -5
- package/build/generate/consts.js +0 -87
- package/build/generate/errors.d.ts +0 -4
- package/build/generate/errors.js +0 -55
- package/build/generate/events.d.ts +0 -5
- package/build/generate/events.js +0 -135
- package/build/generate/index.d.ts +0 -10
- package/build/generate/index.js +0 -10
- package/build/generate/interfaceRegistry.d.ts +0 -4
- package/build/generate/interfaceRegistry.js +0 -59
- package/build/generate/lookup.d.ts +0 -4
- package/build/generate/lookup.js +0 -235
- package/build/generate/query.d.ts +0 -5
- package/build/generate/query.js +0 -136
- package/build/generate/rpc.d.ts +0 -6
- package/build/generate/rpc.js +0 -110
- package/build/generate/runtime.d.ts +0 -7
- package/build/generate/runtime.js +0 -228
- package/build/generate/tsDef.d.ts +0 -16
- package/build/generate/tsDef.js +0 -246
- package/build/generate/tx.d.ts +0 -5
- package/build/generate/tx.js +0 -117
- package/build/generate/types.d.ts +0 -12
- package/build/generate/types.js +0 -13
- package/build/index.d.ts +0 -2
- package/build/index.js +0 -2
- package/build/interfacesTs.d.ts +0 -1
- package/build/interfacesTs.js +0 -24
- package/build/metadataMd.d.ts +0 -1
- package/build/metadataMd.js +0 -648
- package/build/package.json +0 -548
- package/build/packageDetect.d.ts +0 -1
- package/build/packageDetect.js +0 -6
- package/build/packageInfo.d.ts +0 -6
- package/build/packageInfo.js +0 -1
- package/build/scripts/pezkuwi-types-chain-info.mjs +0 -7
- package/build/scripts/pezkuwi-types-from-chain.mjs +0 -7
- package/build/scripts/pezkuwi-types-from-defs.mjs +0 -7
- package/build/scripts/pezkuwi-types-internal-interfaces.mjs +0 -7
- package/build/scripts/pezkuwi-types-internal-metadata.mjs +0 -7
- package/build/templates/calls.hbs +0 -30
- package/build/templates/consts.hbs +0 -28
- package/build/templates/docs.hbs +0 -7
- package/build/templates/errors.hbs +0 -28
- package/build/templates/events.hbs +0 -28
- package/build/templates/header.hbs +0 -2
- package/build/templates/interfaceRegistry.hbs +0 -15
- package/build/templates/lookup/defs-named.hbs +0 -12
- package/build/templates/lookup/defs.hbs +0 -15
- package/build/templates/lookup/index.hbs +0 -3
- package/build/templates/lookup/types.hbs +0 -14
- package/build/templates/query.hbs +0 -29
- package/build/templates/rpc.hbs +0 -22
- package/build/templates/tsDef/index.hbs +0 -3
- package/build/templates/tsDef/moduleTypes.hbs +0 -10
- package/build/templates/tsDef/types.hbs +0 -7
- package/build/templates/tx.hbs +0 -30
- package/build/util/assert.d.ts +0 -2
- package/build/util/assert.js +0 -10
- package/build/util/derived.d.ts +0 -4
- package/build/util/docs.d.ts +0 -1
- package/build/util/docs.js +0 -6
- package/build/util/file.d.ts +0 -2
- package/build/util/file.js +0 -28
- package/build/util/formatting.d.ts +0 -11
- package/build/util/formatting.js +0 -230
- package/build/util/imports.d.ts +0 -23
- package/build/util/imports.js +0 -121
- package/build/util/index.d.ts +0 -16
- package/build/util/index.js +0 -34
- package/build/util/initMeta.d.ts +0 -12
- package/build/util/initMeta.js +0 -19
- package/build/util/register.d.ts +0 -4
- package/build/util/register.js +0 -7
- package/build/util/wsMeta.d.ts +0 -4
- package/build/util/wsMeta.js +0 -55
- package/build-tsc-cjs/packageDetect.js +0 -8
- package/build-tsc-cjs/packageInfo.js +0 -4
- package/build-tsc-esm/generate/consts.js +0 -87
- package/build-tsc-esm/generate/errors.js +0 -55
- package/build-tsc-esm/generate/events.js +0 -135
- package/build-tsc-esm/generate/interfaceRegistry.js +0 -59
- package/build-tsc-esm/generate/lookup.js +0 -235
- package/build-tsc-esm/generate/query.js +0 -136
- package/build-tsc-esm/generate/rpc.js +0 -110
- package/build-tsc-esm/generate/runtime.js +0 -228
- package/build-tsc-esm/generate/tsDef.js +0 -246
- package/build-tsc-esm/generate/tx.js +0 -117
- package/build-tsc-esm/generate/types.js +0 -13
- package/build-tsc-esm/util/derived.js +0 -125
- package/src/augment.ts +0 -5
- package/src/bundle.ts +0 -5
- package/src/extractChain.ts +0 -54
- package/src/fromChain.ts +0 -123
- package/src/fromDefs.ts +0 -106
- package/src/generate/consts.ts +0 -112
- package/src/generate/errors.ts +0 -75
- package/src/generate/events.ts +0 -165
- package/src/generate/index.ts +0 -13
- package/src/generate/interfaceRegistry.ts +0 -85
- package/src/generate/lookup.ts +0 -322
- package/src/generate/query.ts +0 -169
- package/src/generate/rpc.ts +0 -158
- package/src/generate/runtime.ts +0 -293
- package/src/generate/tsDef.ts +0 -321
- package/src/generate/tx.ts +0 -152
- package/src/generate/types.ts +0 -26
- package/src/index.ts +0 -6
- package/src/interfacesTs.ts +0 -35
- package/src/metadataMd.ts +0 -844
- package/src/packageDetect.ts +0 -14
- package/src/packageInfo.ts +0 -6
- package/src/templates/calls.hbs +0 -30
- package/src/templates/consts.hbs +0 -28
- package/src/templates/docs.hbs +0 -7
- package/src/templates/errors.hbs +0 -28
- package/src/templates/events.hbs +0 -28
- package/src/templates/header.hbs +0 -2
- package/src/templates/interfaceRegistry.hbs +0 -15
- package/src/templates/lookup/defs-named.hbs +0 -12
- package/src/templates/lookup/defs.hbs +0 -15
- package/src/templates/lookup/index.hbs +0 -3
- package/src/templates/lookup/types.hbs +0 -14
- package/src/templates/query.hbs +0 -29
- package/src/templates/rpc.hbs +0 -22
- package/src/templates/tsDef/index.hbs +0 -3
- package/src/templates/tsDef/moduleTypes.hbs +0 -10
- package/src/templates/tsDef/types.hbs +0 -7
- package/src/templates/tx.hbs +0 -30
- package/src/util/assert.ts +0 -18
- package/src/util/derived.spec.ts +0 -58
- package/src/util/derived.ts +0 -133
- package/src/util/docs.ts +0 -13
- package/src/util/file.ts +0 -42
- package/src/util/formatting.spec.ts +0 -30
- package/src/util/formatting.ts +0 -322
- package/src/util/imports.ts +0 -164
- package/src/util/index.ts +0 -42
- package/src/util/initMeta.ts +0 -37
- package/src/util/register.ts +0 -12
- package/src/util/wsMeta.ts +0 -70
- package/tsconfig.build.json +0 -28
- package/tsconfig.build.tsbuildinfo +0 -1
- package/tsconfig.scripts.json +0 -19
- package/tsconfig.spec.json +0 -17
- package/tsconfig.spec.tsbuildinfo +0 -1
- /package/{build-tsc/augment.d.ts → augment.d.ts} +0 -0
- /package/{build-tsc-esm/augment.js → augment.js} +0 -0
- /package/{build-tsc/bundle.d.ts → bundle.d.ts} +0 -0
- /package/{build-tsc-esm/bundle.js → bundle.js} +0 -0
- /package/{build → cjs}/augment.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/augment.js +0 -0
- /package/{build → cjs}/bundle.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/bundle.js +0 -0
- /package/{build-tsc → cjs}/extractChain.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/extractChain.js +0 -0
- /package/{build-tsc → cjs}/fromChain.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/fromChain.js +0 -0
- /package/{build-tsc → cjs}/fromDefs.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/fromDefs.js +0 -0
- /package/{build-tsc → cjs}/generate/consts.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/generate/consts.js +0 -0
- /package/{build-tsc → cjs}/generate/errors.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/generate/errors.js +0 -0
- /package/{build-tsc → cjs}/generate/events.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/generate/events.js +0 -0
- /package/{build-tsc → cjs}/generate/index.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/generate/index.js +0 -0
- /package/{build-tsc → cjs}/generate/interfaceRegistry.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/generate/interfaceRegistry.js +0 -0
- /package/{build-tsc → cjs}/generate/lookup.d.ts +0 -0
- /package/{build-tsc → cjs}/generate/query.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/generate/query.js +0 -0
- /package/{build-tsc → cjs}/generate/rpc.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/generate/rpc.js +0 -0
- /package/{build-tsc → cjs}/generate/runtime.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/generate/runtime.js +0 -0
- /package/{build-tsc → cjs}/generate/tsDef.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/generate/tsDef.js +0 -0
- /package/{build-tsc → cjs}/generate/tx.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/generate/tx.js +0 -0
- /package/{build-tsc → cjs}/generate/types.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/generate/types.js +0 -0
- /package/{build-tsc → cjs}/index.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/index.js +0 -0
- /package/{build-tsc → cjs}/interfacesTs.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/interfacesTs.js +0 -0
- /package/{build-tsc → cjs}/metadataMd.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/metadataMd.js +0 -0
- /package/{build/cjs → cjs}/package.json +0 -0
- /package/{build-tsc → cjs}/packageDetect.d.ts +0 -0
- /package/{build/cjs → cjs}/packageDetect.js +0 -0
- /package/{build-tsc → cjs}/packageInfo.d.ts +0 -0
- /package/{build-tsc → cjs}/util/assert.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/util/assert.js +0 -0
- /package/{build-tsc → cjs}/util/derived.d.ts +0 -0
- /package/{build-tsc → cjs}/util/docs.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/util/docs.js +0 -0
- /package/{build-tsc → cjs}/util/file.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/util/file.js +0 -0
- /package/{build-tsc → cjs}/util/formatting.d.ts +0 -0
- /package/{build-tsc → cjs}/util/imports.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/util/imports.js +0 -0
- /package/{build-tsc → cjs}/util/index.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/util/index.js +0 -0
- /package/{build-tsc → cjs}/util/initMeta.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/util/initMeta.js +0 -0
- /package/{build-tsc → cjs}/util/register.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/util/register.js +0 -0
- /package/{build-tsc → cjs}/util/wsMeta.d.ts +0 -0
- /package/{build-tsc-cjs → cjs}/util/wsMeta.js +0 -0
- /package/{build/cjs/extractChain.d.ts → extractChain.d.ts} +0 -0
- /package/{build-tsc-esm/extractChain.js → extractChain.js} +0 -0
- /package/{build/cjs/fromChain.d.ts → fromChain.d.ts} +0 -0
- /package/{build-tsc-esm/fromChain.js → fromChain.js} +0 -0
- /package/{build/cjs/fromDefs.d.ts → fromDefs.d.ts} +0 -0
- /package/{build-tsc-esm/fromDefs.js → fromDefs.js} +0 -0
- /package/{build/cjs/generate → generate}/index.d.ts +0 -0
- /package/{build-tsc-esm/generate → generate}/index.js +0 -0
- /package/{build/cjs/index.d.ts → index.d.ts} +0 -0
- /package/{build-tsc-esm/index.js → index.js} +0 -0
- /package/{build/cjs/interfacesTs.d.ts → interfacesTs.d.ts} +0 -0
- /package/{build-tsc-esm/interfacesTs.js → interfacesTs.js} +0 -0
- /package/{build/cjs/metadataMd.d.ts → metadataMd.d.ts} +0 -0
- /package/{build-tsc-esm/metadataMd.js → metadataMd.js} +0 -0
- /package/{build/cjs/packageDetect.d.ts → packageDetect.d.ts} +0 -0
- /package/{build-tsc-esm/packageDetect.js → packageDetect.js} +0 -0
- /package/{build/cjs/packageInfo.d.ts → packageInfo.d.ts} +0 -0
- /package/{build/cjs/util → util}/assert.d.ts +0 -0
- /package/{build-tsc-esm/util → util}/assert.js +0 -0
- /package/{build/cjs/util → util}/derived.d.ts +0 -0
- /package/{build/cjs/util → util}/docs.d.ts +0 -0
- /package/{build-tsc-esm/util → util}/docs.js +0 -0
- /package/{build/cjs/util → util}/file.d.ts +0 -0
- /package/{build-tsc-esm/util → util}/file.js +0 -0
- /package/{build/cjs/util → util}/formatting.d.ts +0 -0
- /package/{build/cjs/util → util}/imports.d.ts +0 -0
- /package/{build-tsc-esm/util → util}/imports.js +0 -0
- /package/{build/cjs/util → util}/index.d.ts +0 -0
- /package/{build-tsc-esm/util → util}/index.js +0 -0
- /package/{build/cjs/util → util}/initMeta.d.ts +0 -0
- /package/{build-tsc-esm/util → util}/initMeta.js +0 -0
- /package/{build/cjs/util → util}/register.d.ts +0 -0
- /package/{build-tsc-esm/util → util}/register.js +0 -0
- /package/{build/cjs/util → util}/wsMeta.d.ts +0 -0
- /package/{build-tsc-esm/util → util}/wsMeta.js +0 -0
package/build/util/imports.js
DELETED
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
import * as codecClasses from '@pezkuwi/types/codec';
|
|
2
|
-
import * as extrinsicClasses from '@pezkuwi/types/extrinsic';
|
|
3
|
-
import * as genericClasses from '@pezkuwi/types/generic';
|
|
4
|
-
import * as primitiveClasses from '@pezkuwi/types/primitive';
|
|
5
|
-
import { getTypeDef, TypeDefInfo } from '@pezkuwi/types-create';
|
|
6
|
-
function splitAlternatives(type) {
|
|
7
|
-
const alternatives = [];
|
|
8
|
-
let beginOfAlternative = 1;
|
|
9
|
-
let level = 0;
|
|
10
|
-
// we assume that the string starts with '['
|
|
11
|
-
for (let i = 1, count = type.length; i < count; i++) {
|
|
12
|
-
if (level === 0) {
|
|
13
|
-
switch (type[i]) {
|
|
14
|
-
case ']':
|
|
15
|
-
case ',':
|
|
16
|
-
case '|':
|
|
17
|
-
alternatives.push(type.substring(beginOfAlternative, i).trim());
|
|
18
|
-
beginOfAlternative = i + 1;
|
|
19
|
-
break;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
switch (type[i]) {
|
|
23
|
-
case '[':
|
|
24
|
-
case '(':
|
|
25
|
-
case '<':
|
|
26
|
-
level++;
|
|
27
|
-
break;
|
|
28
|
-
case ']':
|
|
29
|
-
case ')':
|
|
30
|
-
case '>':
|
|
31
|
-
level--;
|
|
32
|
-
break;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
return alternatives;
|
|
36
|
-
}
|
|
37
|
-
/** @internal */
|
|
38
|
-
export function setImports(allDefs, imports, types) {
|
|
39
|
-
const { codecTypes, extrinsicTypes, genericTypes, ignoredTypes, localTypes, metadataTypes, primitiveTypes, typesTypes } = imports;
|
|
40
|
-
types.filter((t) => !!t).forEach((type) => {
|
|
41
|
-
if (ignoredTypes.includes(type)) {
|
|
42
|
-
// do nothing
|
|
43
|
-
}
|
|
44
|
-
else if (['AnyNumber', 'CallFunction', 'Codec', 'IExtrinsic', 'IMethod', 'ITuple'].includes(type)) {
|
|
45
|
-
typesTypes[type] = true;
|
|
46
|
-
}
|
|
47
|
-
else if (['Metadata', 'PortableRegistry'].includes(type)) {
|
|
48
|
-
metadataTypes[type] = true;
|
|
49
|
-
}
|
|
50
|
-
else if (codecClasses[type]) {
|
|
51
|
-
codecTypes[type] = true;
|
|
52
|
-
}
|
|
53
|
-
else if (extrinsicClasses[type]) {
|
|
54
|
-
extrinsicTypes[type] = true;
|
|
55
|
-
}
|
|
56
|
-
else if (genericClasses[type]) {
|
|
57
|
-
genericTypes[type] = true;
|
|
58
|
-
}
|
|
59
|
-
else if (primitiveClasses[type]) {
|
|
60
|
-
primitiveTypes[type] = true;
|
|
61
|
-
}
|
|
62
|
-
else if (type.startsWith('[') && type.includes('|')) {
|
|
63
|
-
const splitTypes = splitAlternatives(type);
|
|
64
|
-
setImports(allDefs, imports, splitTypes);
|
|
65
|
-
}
|
|
66
|
-
else if (type.includes('<') || type.includes('(') || type.includes('[')) {
|
|
67
|
-
// If the type is a bit special (tuple, fixed u8, nested type...), then we
|
|
68
|
-
// need to parse it with `getTypeDef`.
|
|
69
|
-
const typeDef = getTypeDef(type);
|
|
70
|
-
setImports(allDefs, imports, [TypeDefInfo[typeDef.info]]);
|
|
71
|
-
// TypeDef.sub is a `TypeDef | TypeDef[]`
|
|
72
|
-
if (Array.isArray(typeDef.sub)) {
|
|
73
|
-
typeDef.sub.forEach((subType) => setImports(allDefs, imports, [subType.lookupName || subType.type]));
|
|
74
|
-
}
|
|
75
|
-
else if (typeDef.sub && (typeDef.info !== TypeDefInfo.VecFixed || typeDef.sub.type !== 'u8')) {
|
|
76
|
-
// typeDef.sub is a TypeDef in this case
|
|
77
|
-
setImports(allDefs, imports, [typeDef.sub.lookupName || typeDef.sub.type]);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
// find this module inside the exports from the rest
|
|
82
|
-
const [moduleName] = Object.entries(allDefs).find(([, { types }]) => Object.keys(types).includes(type)) || [null];
|
|
83
|
-
if (moduleName) {
|
|
84
|
-
localTypes[moduleName][type] = true;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
/** @internal */
|
|
90
|
-
export function createImports(importDefinitions, { types } = { types: {} }) {
|
|
91
|
-
const definitions = {};
|
|
92
|
-
const typeToModule = {};
|
|
93
|
-
Object.entries(importDefinitions).forEach(([packagePath, packageDef]) => {
|
|
94
|
-
Object.entries(packageDef).forEach(([name, moduleDef]) => {
|
|
95
|
-
const fullName = `${packagePath}/${name}`;
|
|
96
|
-
definitions[fullName] = moduleDef;
|
|
97
|
-
Object.keys(moduleDef.types).forEach((type) => {
|
|
98
|
-
if (typeToModule[type]) {
|
|
99
|
-
console.warn(`\t\tWARN: Overwriting duplicated type '${type}' ${typeToModule[type]} -> ${fullName}`);
|
|
100
|
-
}
|
|
101
|
-
typeToModule[type] = fullName;
|
|
102
|
-
});
|
|
103
|
-
});
|
|
104
|
-
});
|
|
105
|
-
return {
|
|
106
|
-
codecTypes: {},
|
|
107
|
-
definitions,
|
|
108
|
-
extrinsicTypes: {},
|
|
109
|
-
genericTypes: {},
|
|
110
|
-
ignoredTypes: Object.keys(types),
|
|
111
|
-
localTypes: Object.keys(definitions).reduce((local, mod) => {
|
|
112
|
-
local[mod] = {};
|
|
113
|
-
return local;
|
|
114
|
-
}, {}),
|
|
115
|
-
lookupTypes: {},
|
|
116
|
-
metadataTypes: {},
|
|
117
|
-
primitiveTypes: {},
|
|
118
|
-
typeToModule,
|
|
119
|
-
typesTypes: {}
|
|
120
|
-
};
|
|
121
|
-
}
|
package/build/util/index.d.ts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export * from './assert.js';
|
|
2
|
-
export * from './derived.js';
|
|
3
|
-
export * from './docs.js';
|
|
4
|
-
export * from './file.js';
|
|
5
|
-
export * from './formatting.js';
|
|
6
|
-
export * from './imports.js';
|
|
7
|
-
export * from './initMeta.js';
|
|
8
|
-
export * from './register.js';
|
|
9
|
-
export * from './wsMeta.js';
|
|
10
|
-
interface Cmp {
|
|
11
|
-
name: {
|
|
12
|
-
toString(): string;
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
export declare function compareName(a: Cmp, b: Cmp): number;
|
|
16
|
-
export declare function rebrandTypeName(typeName: string): string;
|
package/build/util/index.js
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
export * from './assert.js';
|
|
2
|
-
export * from './derived.js';
|
|
3
|
-
export * from './docs.js';
|
|
4
|
-
export * from './file.js';
|
|
5
|
-
export * from './formatting.js';
|
|
6
|
-
export * from './imports.js';
|
|
7
|
-
export * from './initMeta.js';
|
|
8
|
-
export * from './register.js';
|
|
9
|
-
export * from './wsMeta.js';
|
|
10
|
-
export function compareName(a, b) {
|
|
11
|
-
return a.name.toString().localeCompare(b.name.toString());
|
|
12
|
-
}
|
|
13
|
-
export function rebrandTypeName(typeName) {
|
|
14
|
-
return typeName
|
|
15
|
-
// Main projects
|
|
16
|
-
.replace(/Polkadot/g, 'Pezkuwi')
|
|
17
|
-
.replace(/Substrate/g, 'Bizinikiwi')
|
|
18
|
-
.replace(/Cumulus/g, 'Pezcumulus')
|
|
19
|
-
// Networks
|
|
20
|
-
.replace(/Kusama/g, 'Dicle')
|
|
21
|
-
.replace(/Westend/g, 'Zagros')
|
|
22
|
-
.replace(/Rococo/g, 'Pezkuwichain')
|
|
23
|
-
// Chain types
|
|
24
|
-
.replace(/Parachain/g, 'Teyrchain')
|
|
25
|
-
// Module prefixes (in PascalCase type names)
|
|
26
|
-
.replace(/Frame(?=[A-Z])/g, 'Pezframe')
|
|
27
|
-
.replace(/Pallet(?=[A-Z])/g, 'Pezpallet')
|
|
28
|
-
// Primitives prefixes (sp_ becomes Sp in type names)
|
|
29
|
-
.replace(/^Sp(?=[A-Z])/g, 'Pezsp')
|
|
30
|
-
.replace(/([^a-zA-Z])Sp(?=[A-Z])/g, '$1Pezsp')
|
|
31
|
-
// Client prefixes (sc_ becomes Sc in type names)
|
|
32
|
-
.replace(/^Sc(?=[A-Z])/g, 'Pezsc')
|
|
33
|
-
.replace(/([^a-zA-Z])Sc(?=[A-Z])/g, '$1Pezsc');
|
|
34
|
-
}
|
package/build/util/initMeta.d.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { HexString } from '@pezkuwi/util/types';
|
|
2
|
-
import type { ExtraTypes } from '../generate/types.js';
|
|
3
|
-
import { Metadata, TypeRegistry } from '@pezkuwi/types';
|
|
4
|
-
interface Result {
|
|
5
|
-
metadata: Metadata;
|
|
6
|
-
registry: TypeRegistry;
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* This helper method has been transitioned to work with V14, V15 and up.
|
|
10
|
-
*/
|
|
11
|
-
export declare function initMeta(staticMeta: HexString, extraTypes?: ExtraTypes): Result;
|
|
12
|
-
export {};
|
package/build/util/initMeta.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Metadata, TypeRegistry } from '@pezkuwi/types';
|
|
2
|
-
import { registerDefinitions } from './register.js';
|
|
3
|
-
/**
|
|
4
|
-
* This helper method has been transitioned to work with V14, V15 and up.
|
|
5
|
-
*/
|
|
6
|
-
export function initMeta(staticMeta, extraTypes = {}) {
|
|
7
|
-
const registry = new TypeRegistry();
|
|
8
|
-
registerDefinitions(registry, extraTypes);
|
|
9
|
-
let metadata;
|
|
10
|
-
try {
|
|
11
|
-
const opaqueMetadata = registry.createType('Option<OpaqueMetadata>', registry.createType('Raw', staticMeta).toU8a()).unwrap();
|
|
12
|
-
metadata = new Metadata(registry, opaqueMetadata.toHex());
|
|
13
|
-
}
|
|
14
|
-
catch {
|
|
15
|
-
metadata = new Metadata(registry, staticMeta);
|
|
16
|
-
}
|
|
17
|
-
registry.setMetadata(metadata);
|
|
18
|
-
return { metadata, registry };
|
|
19
|
-
}
|
package/build/util/register.d.ts
DELETED
package/build/util/register.js
DELETED
package/build/util/wsMeta.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { HexString } from '@pezkuwi/util/types';
|
|
2
|
-
export declare function getMetadataViaWs(endpoint: string, metadataVer?: number): Promise<HexString>;
|
|
3
|
-
export declare function getRpcMethodsViaWs(endpoint: string): Promise<string[]>;
|
|
4
|
-
export declare function getRuntimeVersionViaWs(endpoint: string): Promise<[apiHash: string, apiVersion: number][]>;
|
package/build/util/wsMeta.js
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { promiseTracker } from '@pezkuwi/api/promise/decorateMethod';
|
|
2
|
-
import { TypeRegistry } from '@pezkuwi/types';
|
|
3
|
-
import { stringify, u8aToHex } from '@pezkuwi/util';
|
|
4
|
-
import { WebSocket } from '@pezkuwi/x-ws';
|
|
5
|
-
async function getWsData(endpoint, method, params) {
|
|
6
|
-
return new Promise((resolve, reject) => {
|
|
7
|
-
const tracker = promiseTracker(resolve, reject);
|
|
8
|
-
try {
|
|
9
|
-
const websocket = new WebSocket(endpoint);
|
|
10
|
-
websocket.onclose = (event) => {
|
|
11
|
-
if (event.code !== 1000) {
|
|
12
|
-
tracker.reject(new Error(`disconnected, code: '${event.code}' reason: '${event.reason}'`));
|
|
13
|
-
}
|
|
14
|
-
};
|
|
15
|
-
websocket.onerror = (event) => {
|
|
16
|
-
tracker.reject(new Error(`WebSocket error:: ${stringify(event)}`));
|
|
17
|
-
};
|
|
18
|
-
websocket.onopen = () => {
|
|
19
|
-
console.log('connected');
|
|
20
|
-
params
|
|
21
|
-
? websocket.send(`{"id":"1","jsonrpc":"2.0","method":"${method}","params":[${params.map((param) => `"${param}"`).join(',')}]}`)
|
|
22
|
-
: websocket.send(`{"id":"1","jsonrpc":"2.0","method":"${method}","params":[]}`);
|
|
23
|
-
};
|
|
24
|
-
websocket.onmessage = (message) => {
|
|
25
|
-
try {
|
|
26
|
-
tracker.resolve(JSON.parse(message.data).result);
|
|
27
|
-
}
|
|
28
|
-
catch (error) {
|
|
29
|
-
tracker.reject(error);
|
|
30
|
-
}
|
|
31
|
-
websocket.close();
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
catch (error) {
|
|
35
|
-
tracker.reject(error);
|
|
36
|
-
}
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
export async function getMetadataViaWs(endpoint, metadataVer) {
|
|
40
|
-
const registry = new TypeRegistry();
|
|
41
|
-
if (metadataVer) {
|
|
42
|
-
return await getWsData(endpoint, 'state_call', ['Metadata_metadata_at_version', u8aToHex(registry.createType('u32', metadataVer).toU8a())]);
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
return await getWsData(endpoint, 'state_getMetadata');
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
export async function getRpcMethodsViaWs(endpoint) {
|
|
49
|
-
const result = await getWsData(endpoint, 'rpc_methods');
|
|
50
|
-
return result.methods;
|
|
51
|
-
}
|
|
52
|
-
export async function getRuntimeVersionViaWs(endpoint) {
|
|
53
|
-
const result = await getWsData(endpoint, 'state_getRuntimeVersion');
|
|
54
|
-
return result.apis;
|
|
55
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const packageInfo_1 = require("@pezkuwi/api/packageInfo");
|
|
4
|
-
const packageInfo_2 = require("@pezkuwi/rpc-provider/packageInfo");
|
|
5
|
-
const packageInfo_3 = require("@pezkuwi/types/packageInfo");
|
|
6
|
-
const util_1 = require("@pezkuwi/util");
|
|
7
|
-
const packageInfo_js_1 = require("./packageInfo.js");
|
|
8
|
-
(0, util_1.detectPackage)(packageInfo_js_1.packageInfo, null, [packageInfo_1.packageInfo, packageInfo_2.packageInfo, packageInfo_3.packageInfo]);
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import Handlebars from 'handlebars';
|
|
2
|
-
import * as defaultDefs from '@pezkuwi/types/interfaces/definitions';
|
|
3
|
-
import lookupDefinitions from '@pezkuwi/types-augment/lookup/definitions';
|
|
4
|
-
import { stringCamelCase } from '@pezkuwi/util';
|
|
5
|
-
import { compareName, createImports, formatType, initMeta, readTemplate, rebrandTypeName, setImports, writeFile } from '../util/index.js';
|
|
6
|
-
import { ignoreUnusedLookups } from './lookup.js';
|
|
7
|
-
import { getDeprecationNotice } from './types.js';
|
|
8
|
-
const generateForMetaTemplate = Handlebars.compile(readTemplate('consts'));
|
|
9
|
-
/** @internal */
|
|
10
|
-
function generateForMeta(meta, dest, extraTypes, isStrict, customLookupDefinitions) {
|
|
11
|
-
writeFile(dest, () => {
|
|
12
|
-
const allTypes = {
|
|
13
|
-
'@pezkuwi/types-augment': {
|
|
14
|
-
lookup: {
|
|
15
|
-
...lookupDefinitions,
|
|
16
|
-
...customLookupDefinitions
|
|
17
|
-
}
|
|
18
|
-
},
|
|
19
|
-
'@pezkuwi/types/interfaces': defaultDefs,
|
|
20
|
-
...extraTypes
|
|
21
|
-
};
|
|
22
|
-
const imports = createImports(allTypes);
|
|
23
|
-
const allDefs = Object.entries(allTypes).reduce((defs, [path, obj]) => {
|
|
24
|
-
return Object.entries(obj).reduce((defs, [key, value]) => ({ ...defs, [`${path}/${key}`]: value }), defs);
|
|
25
|
-
}, {});
|
|
26
|
-
const { lookup, pallets, registry } = meta.asLatest;
|
|
27
|
-
const usedTypes = new Set([]);
|
|
28
|
-
const modules = pallets
|
|
29
|
-
.filter(({ constants }) => constants.length > 0)
|
|
30
|
-
.map(({ constants, name }) => {
|
|
31
|
-
if (!isStrict) {
|
|
32
|
-
setImports(allDefs, imports, ['Codec']);
|
|
33
|
-
}
|
|
34
|
-
const items = constants
|
|
35
|
-
.map(({ deprecationInfo, docs, name, type }) => {
|
|
36
|
-
const typeDef = lookup.getTypeDef(type);
|
|
37
|
-
const returnType = rebrandTypeName(typeDef.lookupName || '') || formatType(registry, allDefs, typeDef, imports);
|
|
38
|
-
if (!deprecationInfo.isNotDeprecated) {
|
|
39
|
-
const deprecationNotice = getDeprecationNotice(deprecationInfo, stringCamelCase(name), 'Constant');
|
|
40
|
-
const items = docs.length
|
|
41
|
-
? ['', deprecationNotice]
|
|
42
|
-
: [deprecationNotice];
|
|
43
|
-
docs.push(...items.map((text) => registry.createType('Text', text)));
|
|
44
|
-
}
|
|
45
|
-
// Add the type to the list of used types
|
|
46
|
-
if (!(imports.primitiveTypes[returnType])) {
|
|
47
|
-
usedTypes.add(returnType);
|
|
48
|
-
}
|
|
49
|
-
setImports(allDefs, imports, [returnType]);
|
|
50
|
-
return {
|
|
51
|
-
docs,
|
|
52
|
-
name: stringCamelCase(name),
|
|
53
|
-
type: returnType
|
|
54
|
-
};
|
|
55
|
-
})
|
|
56
|
-
.sort(compareName);
|
|
57
|
-
return {
|
|
58
|
-
items,
|
|
59
|
-
name: stringCamelCase(name)
|
|
60
|
-
};
|
|
61
|
-
})
|
|
62
|
-
.sort(compareName);
|
|
63
|
-
// filter out the unused lookup types from imports
|
|
64
|
-
ignoreUnusedLookups([...usedTypes], imports);
|
|
65
|
-
return generateForMetaTemplate({
|
|
66
|
-
headerType: 'chain',
|
|
67
|
-
imports,
|
|
68
|
-
isStrict,
|
|
69
|
-
modules,
|
|
70
|
-
types: [
|
|
71
|
-
...Object.keys(imports.localTypes).sort().map((packagePath) => ({
|
|
72
|
-
file: packagePath.replace('@pezkuwi/types-augment', '@pezkuwi/types'),
|
|
73
|
-
types: Object.keys(imports.localTypes[packagePath])
|
|
74
|
-
})),
|
|
75
|
-
{
|
|
76
|
-
file: '@pezkuwi/api-base/types',
|
|
77
|
-
types: ['ApiTypes', 'AugmentedConst']
|
|
78
|
-
}
|
|
79
|
-
]
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
/** @internal */
|
|
84
|
-
export function generateDefaultConsts(dest, data, extraTypes = {}, isStrict = false, customLookupDefinitions) {
|
|
85
|
-
const { metadata } = initMeta(data, extraTypes);
|
|
86
|
-
return generateForMeta(metadata, dest, extraTypes, isStrict, customLookupDefinitions);
|
|
87
|
-
}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import Handlebars from 'handlebars';
|
|
2
|
-
import { stringCamelCase } from '@pezkuwi/util';
|
|
3
|
-
import { compareName, createImports, initMeta, readTemplate, writeFile } from '../util/index.js';
|
|
4
|
-
import { getDeprecationNotice } from './types.js';
|
|
5
|
-
const generateForMetaTemplate = Handlebars.compile(readTemplate('errors'));
|
|
6
|
-
/** @internal */
|
|
7
|
-
function generateForMeta(meta, dest, isStrict) {
|
|
8
|
-
writeFile(dest, () => {
|
|
9
|
-
const imports = createImports({});
|
|
10
|
-
const { lookup, pallets } = meta.asLatest;
|
|
11
|
-
const modules = pallets
|
|
12
|
-
.filter(({ errors }) => errors.isSome)
|
|
13
|
-
.map((data) => {
|
|
14
|
-
const name = data.name;
|
|
15
|
-
const errors = data.errors.unwrap();
|
|
16
|
-
const deprecationInfo = errors.deprecationInfo.toJSON();
|
|
17
|
-
return {
|
|
18
|
-
items: lookup.getSiType(errors.type).def.asVariant.variants
|
|
19
|
-
.map(({ docs, index, name }) => {
|
|
20
|
-
const rawStatus = deprecationInfo?.[index.toNumber()];
|
|
21
|
-
if (rawStatus) {
|
|
22
|
-
const deprecationVariantInfo = meta.registry.createTypeUnsafe('VariantDeprecationInfoV16', [rawStatus]);
|
|
23
|
-
const deprecationNotice = getDeprecationNotice(deprecationVariantInfo, name.toString());
|
|
24
|
-
const notice = docs.length ? ['', deprecationNotice] : [deprecationNotice];
|
|
25
|
-
docs.push(...notice.map((text) => meta.registry.createType('Text', text)));
|
|
26
|
-
}
|
|
27
|
-
return {
|
|
28
|
-
docs,
|
|
29
|
-
name: name.toString()
|
|
30
|
-
};
|
|
31
|
-
})
|
|
32
|
-
.sort(compareName),
|
|
33
|
-
name: stringCamelCase(name)
|
|
34
|
-
};
|
|
35
|
-
})
|
|
36
|
-
.sort(compareName);
|
|
37
|
-
return generateForMetaTemplate({
|
|
38
|
-
headerType: 'chain',
|
|
39
|
-
imports,
|
|
40
|
-
isStrict,
|
|
41
|
-
modules,
|
|
42
|
-
types: [
|
|
43
|
-
{
|
|
44
|
-
file: '@pezkuwi/api-base/types',
|
|
45
|
-
types: ['ApiTypes', 'AugmentedError']
|
|
46
|
-
}
|
|
47
|
-
]
|
|
48
|
-
});
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
/** @internal */
|
|
52
|
-
export function generateDefaultErrors(dest, data, extraTypes = {}, isStrict = false) {
|
|
53
|
-
const { metadata } = initMeta(data, extraTypes);
|
|
54
|
-
return generateForMeta(metadata, dest, isStrict);
|
|
55
|
-
}
|
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
import Handlebars from 'handlebars';
|
|
2
|
-
import * as defaultDefs from '@pezkuwi/types/interfaces/definitions';
|
|
3
|
-
import lookupDefinitions from '@pezkuwi/types-augment/lookup/definitions';
|
|
4
|
-
import { stringCamelCase } from '@pezkuwi/util';
|
|
5
|
-
import { compareName, createImports, formatType, initMeta, readTemplate, rebrandTypeName, setImports, writeFile } from '../util/index.js';
|
|
6
|
-
import { ignoreUnusedLookups } from './lookup.js';
|
|
7
|
-
import { getDeprecationNotice } from './types.js';
|
|
8
|
-
const generateForMetaTemplate = Handlebars.compile(readTemplate('events'));
|
|
9
|
-
const ALIAS = [
|
|
10
|
-
'symbol',
|
|
11
|
-
'break',
|
|
12
|
-
'case',
|
|
13
|
-
'catch',
|
|
14
|
-
'class',
|
|
15
|
-
'const',
|
|
16
|
-
'continue',
|
|
17
|
-
'debugger',
|
|
18
|
-
'default',
|
|
19
|
-
'delete',
|
|
20
|
-
'do',
|
|
21
|
-
'else',
|
|
22
|
-
'export',
|
|
23
|
-
'extends',
|
|
24
|
-
'false',
|
|
25
|
-
'finally',
|
|
26
|
-
'for',
|
|
27
|
-
'function',
|
|
28
|
-
'if',
|
|
29
|
-
'import',
|
|
30
|
-
'in',
|
|
31
|
-
'instanceof',
|
|
32
|
-
'new',
|
|
33
|
-
'null',
|
|
34
|
-
'return',
|
|
35
|
-
'static',
|
|
36
|
-
'super',
|
|
37
|
-
'switch',
|
|
38
|
-
'this',
|
|
39
|
-
'throw',
|
|
40
|
-
'true',
|
|
41
|
-
'try',
|
|
42
|
-
'typeof',
|
|
43
|
-
'var',
|
|
44
|
-
'void',
|
|
45
|
-
'while',
|
|
46
|
-
'with',
|
|
47
|
-
'yield'
|
|
48
|
-
];
|
|
49
|
-
/** @internal */
|
|
50
|
-
function generateForMeta(meta, dest, extraTypes, isStrict, customLookupDefinitions) {
|
|
51
|
-
writeFile(dest, () => {
|
|
52
|
-
const allTypes = {
|
|
53
|
-
'@pezkuwi/types-augment': {
|
|
54
|
-
lookup: {
|
|
55
|
-
...lookupDefinitions,
|
|
56
|
-
...customLookupDefinitions
|
|
57
|
-
}
|
|
58
|
-
},
|
|
59
|
-
'@pezkuwi/types/interfaces': defaultDefs,
|
|
60
|
-
...extraTypes
|
|
61
|
-
};
|
|
62
|
-
const imports = createImports(allTypes);
|
|
63
|
-
const allDefs = Object.entries(allTypes).reduce((defs, [path, obj]) => {
|
|
64
|
-
return Object.entries(obj).reduce((defs, [key, value]) => ({ ...defs, [`${path}/${key}`]: value }), defs);
|
|
65
|
-
}, {});
|
|
66
|
-
const { lookup, pallets, registry } = meta.asLatest;
|
|
67
|
-
const usedTypes = new Set([]);
|
|
68
|
-
const modules = pallets
|
|
69
|
-
.filter(({ events }) => events.isSome)
|
|
70
|
-
.map((data) => {
|
|
71
|
-
const name = data.name;
|
|
72
|
-
const events = data.events.unwrap();
|
|
73
|
-
const deprecationInfo = events.deprecationInfo.toJSON();
|
|
74
|
-
return {
|
|
75
|
-
items: lookup.getSiType(events.type).def.asVariant.variants
|
|
76
|
-
.map(({ docs, fields, index, name }) => {
|
|
77
|
-
const rawStatus = deprecationInfo?.[index.toNumber()];
|
|
78
|
-
if (rawStatus) {
|
|
79
|
-
const deprecationVariantInfo = meta.registry.createTypeUnsafe('VariantDeprecationInfoV16', [rawStatus]);
|
|
80
|
-
const deprecationNotice = getDeprecationNotice(deprecationVariantInfo, name.toString());
|
|
81
|
-
const notice = docs.length ? ['', deprecationNotice] : [deprecationNotice];
|
|
82
|
-
docs.push(...notice.map((text) => meta.registry.createType('Text', text)));
|
|
83
|
-
}
|
|
84
|
-
const args = fields
|
|
85
|
-
.map(({ type }) => lookup.getTypeDef(type))
|
|
86
|
-
.map((typeDef) => {
|
|
87
|
-
const arg = rebrandTypeName(typeDef.lookupName || '') || formatType(registry, allDefs, typeDef, imports);
|
|
88
|
-
// Add the type to the list of used types
|
|
89
|
-
if (!(imports.primitiveTypes[arg])) {
|
|
90
|
-
usedTypes.add(arg);
|
|
91
|
-
}
|
|
92
|
-
return arg;
|
|
93
|
-
});
|
|
94
|
-
const names = fields
|
|
95
|
-
.map(({ name }) => registry.lookup.sanitizeField(name)[0])
|
|
96
|
-
.filter((n) => !!n);
|
|
97
|
-
setImports(allDefs, imports, args);
|
|
98
|
-
return {
|
|
99
|
-
docs,
|
|
100
|
-
name: name.toString(),
|
|
101
|
-
type: names.length !== 0 && names.length === args.length
|
|
102
|
-
? `[${names.map((n, i) => `${ALIAS.includes(n) ? `${n}_` : n}: ${args[i]}`).join(', ')}], { ${names.map((n, i) => `${n}: ${args[i]}`).join(', ')} }`
|
|
103
|
-
: `[${args.join(', ')}]`
|
|
104
|
-
};
|
|
105
|
-
})
|
|
106
|
-
.sort(compareName),
|
|
107
|
-
name: stringCamelCase(name)
|
|
108
|
-
};
|
|
109
|
-
})
|
|
110
|
-
.sort(compareName);
|
|
111
|
-
// filter out the unused lookup types from imports
|
|
112
|
-
ignoreUnusedLookups([...usedTypes], imports);
|
|
113
|
-
return generateForMetaTemplate({
|
|
114
|
-
headerType: 'chain',
|
|
115
|
-
imports,
|
|
116
|
-
isStrict,
|
|
117
|
-
modules,
|
|
118
|
-
types: [
|
|
119
|
-
...Object.keys(imports.localTypes).sort().map((packagePath) => ({
|
|
120
|
-
file: packagePath.replace('@pezkuwi/types-augment', '@pezkuwi/types'),
|
|
121
|
-
types: Object.keys(imports.localTypes[packagePath])
|
|
122
|
-
})),
|
|
123
|
-
{
|
|
124
|
-
file: '@pezkuwi/api-base/types',
|
|
125
|
-
types: ['ApiTypes', 'AugmentedEvent']
|
|
126
|
-
}
|
|
127
|
-
]
|
|
128
|
-
});
|
|
129
|
-
});
|
|
130
|
-
}
|
|
131
|
-
/** @internal */
|
|
132
|
-
export function generateDefaultEvents(dest, data, extraTypes = {}, isStrict = false, customLookupDefinitions) {
|
|
133
|
-
const { metadata } = initMeta(data, extraTypes);
|
|
134
|
-
return generateForMeta(metadata, dest, extraTypes, isStrict, customLookupDefinitions);
|
|
135
|
-
}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import Handlebars from 'handlebars';
|
|
2
|
-
import { Json, Raw } from '@pezkuwi/types/codec';
|
|
3
|
-
import { TypeRegistry } from '@pezkuwi/types/create';
|
|
4
|
-
import * as defaultDefinitions from '@pezkuwi/types/interfaces/definitions';
|
|
5
|
-
import * as defaultPrimitives from '@pezkuwi/types/primitive';
|
|
6
|
-
import { createImports, readTemplate, setImports, writeFile } from '../util/index.js';
|
|
7
|
-
const primitiveClasses = {
|
|
8
|
-
...defaultPrimitives,
|
|
9
|
-
Json,
|
|
10
|
-
Raw
|
|
11
|
-
};
|
|
12
|
-
const generateInterfaceTypesTemplate = Handlebars.compile(readTemplate('interfaceRegistry'));
|
|
13
|
-
/** @internal */
|
|
14
|
-
export function generateInterfaceTypes(importDefinitions, dest) {
|
|
15
|
-
const registry = new TypeRegistry();
|
|
16
|
-
writeFile(dest, () => {
|
|
17
|
-
Object.entries(importDefinitions).reduce((acc, def) => Object.assign(acc, def), {});
|
|
18
|
-
const imports = createImports(importDefinitions);
|
|
19
|
-
const definitions = imports.definitions;
|
|
20
|
-
const items = [];
|
|
21
|
-
// first we create imports for our known classes from the API
|
|
22
|
-
Object
|
|
23
|
-
.keys(primitiveClasses)
|
|
24
|
-
.filter((name) => !name.includes('Generic'))
|
|
25
|
-
.forEach((primitiveName) => {
|
|
26
|
-
setImports(definitions, imports, [primitiveName]);
|
|
27
|
-
items.push(primitiveName);
|
|
28
|
-
});
|
|
29
|
-
const existingTypes = {};
|
|
30
|
-
// ensure we have everything registered since we will get the definition
|
|
31
|
-
// form the available types (so any unknown should show after this)
|
|
32
|
-
Object.values(definitions).forEach(({ types }) => {
|
|
33
|
-
registry.register(types);
|
|
34
|
-
});
|
|
35
|
-
// create imports for everything that we have available
|
|
36
|
-
Object.values(definitions).forEach(({ types }) => {
|
|
37
|
-
setImports(definitions, imports, Object.keys(types));
|
|
38
|
-
const uniqueTypes = Object.keys(types).filter((type) => !existingTypes[type]);
|
|
39
|
-
uniqueTypes.forEach((type) => {
|
|
40
|
-
existingTypes[type] = true;
|
|
41
|
-
items.push(type);
|
|
42
|
-
});
|
|
43
|
-
});
|
|
44
|
-
return generateInterfaceTypesTemplate({
|
|
45
|
-
headerType: 'defs',
|
|
46
|
-
imports,
|
|
47
|
-
items: items.sort((a, b) => a.localeCompare(b)),
|
|
48
|
-
types: [
|
|
49
|
-
...Object.keys(imports.localTypes).sort().map((packagePath) => ({
|
|
50
|
-
file: packagePath,
|
|
51
|
-
types: Object.keys(imports.localTypes[packagePath])
|
|
52
|
-
}))
|
|
53
|
-
]
|
|
54
|
-
});
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
export function generateDefaultInterface() {
|
|
58
|
-
generateInterfaceTypes({ '@pezkuwi/types/interfaces': defaultDefinitions }, 'packages/types-augment/src/registry/interfaces.ts');
|
|
59
|
-
}
|