@metaplex-foundation/kinobi 0.17.4 → 0.17.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/renderers/js-experimental/ImportMap.js +1 -0
- package/dist/cjs/renderers/js-experimental/ImportMap.js.map +1 -1
- package/dist/cjs/renderers/js-experimental/fragments/programInstructions.js +16 -0
- package/dist/cjs/renderers/js-experimental/fragments/programInstructions.js.map +1 -1
- package/dist/cjs/renderers/js-experimental/nameTransformers.js +1 -0
- package/dist/cjs/renderers/js-experimental/nameTransformers.js.map +1 -1
- package/dist/types/renderers/js-experimental/nameTransformers.d.ts +1 -1
- package/package.json +1 -1
- package/src/renderers/js-experimental/ImportMap.ts +1 -0
- package/src/renderers/js-experimental/fragments/programInstructions.ts +45 -1
- package/src/renderers/js-experimental/nameTransformers.ts +3 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImportMap.js","sourceRoot":"","sources":["../../../../src/renderers/js-experimental/ImportMap.ts"],"names":[],"mappings":";;;AAIA,MAAM,kBAAkB,GAA2B;IACjD,YAAY;IACZ,cAAc,EAAE,kBAAkB;IAClC,eAAe,EAAE,mBAAmB;IACpC,gBAAgB,EAAE,qBAAqB;IACvC,mBAAmB,EAAE,wBAAwB;IAC7C,mBAAmB,EAAE,wBAAwB;IAC7C,0BAA0B,EAAE,gCAAgC;IAC5D,kBAAkB,EAAE,sBAAsB;IAC1C,cAAc,EAAE,kBAAkB;IAClC,aAAa,EAAE,iBAAiB;IAChC,aAAa,EAAE,iBAAiB;IAChC,kBAAkB,EAAE,sBAAsB;IAE1C,YAAY;IACZ,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,WAAW;IACnB,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,cAAc;IACtB,iBAAiB,EAAE,aAAa;IAChC,aAAa,EAAE,SAAS;IACxB,iBAAiB,EAAE,aAAa;IAChC,eAAe,EAAE,WAAW;IAC5B,cAAc,EAAE,UAAU;
|
|
1
|
+
{"version":3,"file":"ImportMap.js","sourceRoot":"","sources":["../../../../src/renderers/js-experimental/ImportMap.ts"],"names":[],"mappings":";;;AAIA,MAAM,kBAAkB,GAA2B;IACjD,YAAY;IACZ,cAAc,EAAE,kBAAkB;IAClC,eAAe,EAAE,mBAAmB;IACpC,gBAAgB,EAAE,qBAAqB;IACvC,mBAAmB,EAAE,wBAAwB;IAC7C,mBAAmB,EAAE,wBAAwB;IAC7C,0BAA0B,EAAE,gCAAgC;IAC5D,kBAAkB,EAAE,sBAAsB;IAC1C,cAAc,EAAE,kBAAkB;IAClC,aAAa,EAAE,iBAAiB;IAChC,aAAa,EAAE,iBAAiB;IAChC,kBAAkB,EAAE,sBAAsB;IAE1C,YAAY;IACZ,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,WAAW;IACnB,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,cAAc;IACtB,iBAAiB,EAAE,aAAa;IAChC,aAAa,EAAE,SAAS;IACxB,iBAAiB,EAAE,aAAa;IAChC,eAAe,EAAE,WAAW;IAC5B,cAAc,EAAE,UAAU;IAC1B,qBAAqB,EAAE,iBAAiB;CACzC,CAAC;AAEF,MAAa,SAAS;IAAtB;QACqB,aAAQ,GAAiC,IAAI,GAAG,EAAE,CAAC;QAEnD,aAAQ,GACzB,IAAI,GAAG,EAAE,CAAC;IA0Fd,CAAC;IAxFC,GAAG,CAAC,MAAkB,EAAE,OAAwC;;QAC9D,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAClD,CAAC;QACF,IAAI,UAAU,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACvC,MAAM,cAAc,GAAG,MAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,mCAAI,IAAI,GAAG,EAAE,CAAC;QAC9D,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACjD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CACJ,MAAkB,EAClB,OAAwC;;QAExC,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAClD,CAAC;QACF,IAAI,eAAe,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC5C,MAAM,cAAc,GAAG,MAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,mCAAI,IAAI,GAAG,EAAE,CAAC;QAC9D,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,IAAI,cAAc,CAAC,IAAI,KAAK,CAAC,EAAE;YAC7B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SAC9B;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;SAC3C;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,CAAC,GAAG,MAAgC;QAC3C,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC1B,MAAM,KAAK,GAAG,SAAS,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;YAClE,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACzC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACzC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;oBAChD,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;gBACrC,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,iBAAiB,CAAC,QAAsB;QACtC,OAAO,IAAI,CAAC,SAAS,CACnB,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,OAAO,CACjB,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,MAAkB,EAAE,IAAY,EAAE,KAAa;;QACtD,MAAM,cAAc,GAAG,MAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,mCAAI,EAAE,CAAC;QACvD,cAAc,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,CAAC;IAClC,CAAC;IAED,QAAQ,CAAC,eAA2C,EAAE;QACpD,MAAM,aAAa,GAAG,EAAE,GAAG,kBAAkB,EAAE,GAAG,YAAY,EAAE,CAAC;QACjE,MAAM,gBAAgB,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;aAClD,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE;;YACzB,MAAM,YAAY,GAAW,MAAA,aAAa,CAAC,MAAM,CAAC,mCAAI,MAAM,CAAC;YAC7D,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAU,CAAC;QAClD,CAAC,CAAC;aACD,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;YACjB,MAAM,WAAW,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACtC,MAAM,WAAW,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACtC,IAAI,WAAW,IAAI,CAAC,WAAW;gBAAE,OAAO,CAAC,CAAC;YAC1C,IAAI,CAAC,WAAW,IAAI,WAAW;gBAAE,OAAO,CAAC,CAAC,CAAC;YAC3C,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC,CAAC;aACD,GAAG,CAAC,CAAC,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE;;YACvC,MAAM,QAAQ,GAAG,MAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,mCAAI,EAAE,CAAC;YACjD,MAAM,aAAa,GAAG,CAAC,GAAG,OAAO,CAAC;iBAC/B,IAAI,EAAE;iBACN,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBACxD,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,OAAO,YAAY,aAAa,YAAY,YAAY,IAAI,CAAC;QAC/D,CAAC,CAAC,CAAC;QACL,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;CACF;AA9FD,8BA8FC"}
|
|
@@ -15,6 +15,7 @@ function getProgramInstructionsFragment(scope) {
|
|
|
15
15
|
return (0, common_1.mergeFragments)([
|
|
16
16
|
getProgramInstructionsEnumFragment(scopeWithInstructions),
|
|
17
17
|
getProgramInstructionsIdentifierFunctionFragment(scopeWithInstructions),
|
|
18
|
+
getProgramInstructionsParsedUnionTypeFragment(scopeWithInstructions),
|
|
18
19
|
], (r) => `${r.join('\n\n')}\n`);
|
|
19
20
|
}
|
|
20
21
|
exports.getProgramInstructionsFragment = getProgramInstructionsFragment;
|
|
@@ -53,4 +54,19 @@ function getProgramInstructionsIdentifierFunctionFragment(scope) {
|
|
|
53
54
|
`throw new Error("The provided instruction could not be identified as a ${programNode.name} instruction.")\n` +
|
|
54
55
|
`}`);
|
|
55
56
|
}
|
|
57
|
+
function getProgramInstructionsParsedUnionTypeFragment(scope) {
|
|
58
|
+
const { programNode, allInstructions, nameApi } = scope;
|
|
59
|
+
const programAddress = programNode.publicKey;
|
|
60
|
+
const programInstructionsType = nameApi.programInstructionsParsedUnionType(programNode.name);
|
|
61
|
+
const programInstructionsEnum = nameApi.programInstructionsEnum(programNode.name);
|
|
62
|
+
const typeVariants = allInstructions.map((instruction) => {
|
|
63
|
+
const instructionEnumVariant = nameApi.programInstructionsEnumVariant(instruction.name);
|
|
64
|
+
const parsedInstructionType = nameApi.instructionParsedType(instruction.name);
|
|
65
|
+
return (0, common_1.fragment)(`| { instructionType: ${programInstructionsEnum}.${instructionEnumVariant} } & ${parsedInstructionType}<TProgram>`).addImports('generatedInstructions', parsedInstructionType);
|
|
66
|
+
});
|
|
67
|
+
return (0, common_1.mergeFragments)([
|
|
68
|
+
(0, common_1.fragment)(`export type ${programInstructionsType}<TProgram extends string = '${programAddress}'> =`),
|
|
69
|
+
...typeVariants,
|
|
70
|
+
], (r) => r.join('\n'));
|
|
71
|
+
}
|
|
56
72
|
//# sourceMappingURL=programInstructions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"programInstructions.js","sourceRoot":"","sources":["../../../../../src/renderers/js-experimental/fragments/programInstructions.ts"],"names":[],"mappings":";;;AAAA,0CAKwB;AAExB,qCAA8D;AAC9D,qEAA6E;AAE7E,SAAgB,8BAA8B,CAC5C,KAQC;IAED,IAAI,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAA,iBAAQ,EAAC,EAAE,CAAC,CAAC;IACrE,MAAM,eAAe,GAAG,IAAA,kCAA0B,EAAC,KAAK,CAAC,WAAW,EAAE;QACpE,UAAU,EAAE,CAAC,KAAK,CAAC,wBAAwB;QAC3C,oBAAoB,EAAE,IAAI;KAC3B,CAAC,CAAC;IACH,MAAM,qBAAqB,GAAG,EAAE,GAAG,KAAK,EAAE,eAAe,EAAE,CAAC;IAC5D,OAAO,IAAA,uBAAc,EACnB;QACE,kCAAkC,CAAC,qBAAqB,CAAC;QACzD,gDAAgD,CAAC,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"programInstructions.js","sourceRoot":"","sources":["../../../../../src/renderers/js-experimental/fragments/programInstructions.ts"],"names":[],"mappings":"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"}
|
|
@@ -63,6 +63,7 @@ exports.DEFAULT_NAME_TRANSFORMERS = {
|
|
|
63
63
|
programInstructionsEnum: (name) => `${(0, shared_1.pascalCase)(name)}Instruction`,
|
|
64
64
|
programInstructionsEnumVariant: (name) => `${(0, shared_1.pascalCase)(name)}`,
|
|
65
65
|
programInstructionsIdentifierFunction: (name) => `identify${(0, shared_1.pascalCase)(name)}Instruction`,
|
|
66
|
+
programInstructionsParsedUnionType: (name) => `Parsed${(0, shared_1.pascalCase)(name)}Instruction`,
|
|
66
67
|
programErrorClass: (name) => `${(0, shared_1.pascalCase)(name)}ProgramError`,
|
|
67
68
|
programErrorCodeEnum: (name) => `${(0, shared_1.pascalCase)(name)}ProgramErrorCode`,
|
|
68
69
|
programErrorCodeMap: (name) => `${(0, shared_1.camelCase)(name)}ProgramErrorCodeMap`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nameTransformers.js","sourceRoot":"","sources":["../../../../src/renderers/js-experimental/nameTransformers.ts"],"names":[],"mappings":";;;AAAA,yCAOsB;
|
|
1
|
+
{"version":3,"file":"nameTransformers.js","sourceRoot":"","sources":["../../../../src/renderers/js-experimental/nameTransformers.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ export type NameTransformerHelpers = {
|
|
|
7
7
|
snakeCase: (name: string) => string;
|
|
8
8
|
};
|
|
9
9
|
export type NameTransformer = (name: string, helpers: NameTransformerHelpers) => string;
|
|
10
|
-
export type NameTransformerKey = 'dataType' | 'dataArgsType' | 'encoderFunction' | 'decoderFunction' | 'codecFunction' | 'pdaSeedsType' | 'pdaFindFunction' | 'accountType' | 'accountMaybeType' | 'accountDataType' | 'accountDecodeFunction' | 'accountFetchFunction' | 'accountFetchAllFunction' | 'accountFetchMaybeFunction' | 'accountFetchAllMaybeFunction' | 'accountFetchFromSeedsFunction' | 'accountFetchMaybeFromSeedsFunction' | 'accountGetSizeFunction' | 'scalarEnumVariant' | 'dataEnumDiscriminator' | 'dataEnumVariant' | 'dataEnumFunction' | 'isDataEnumFunction' | 'instructionAsyncInputType' | 'instructionAsyncInputWithSignersType' | 'instructionSyncInputType' | 'instructionSyncInputWithSignersType' | 'instructionType' | 'instructionWithSignersType' | 'instructionDataType' | 'instructionExtraType' | 'instructionAsyncFunction' | 'instructionSyncFunction' | 'instructionRawFunction' | 'instructionParsedType' | 'instructionParseFunction' | 'programType' | 'programAddressConstant' | 'programCreateFunction' | 'programAccountsEnum' | 'programAccountsEnumVariant' | 'programAccountsIdentifierFunction' | 'programInstructionsEnum' | 'programInstructionsEnumVariant' | 'programInstructionsIdentifierFunction' | 'programErrorClass' | 'programErrorCodeEnum' | 'programErrorCodeMap' | 'programGetErrorFromCodeFunction' | 'resolverFunction';
|
|
10
|
+
export type NameTransformerKey = 'dataType' | 'dataArgsType' | 'encoderFunction' | 'decoderFunction' | 'codecFunction' | 'pdaSeedsType' | 'pdaFindFunction' | 'accountType' | 'accountMaybeType' | 'accountDataType' | 'accountDecodeFunction' | 'accountFetchFunction' | 'accountFetchAllFunction' | 'accountFetchMaybeFunction' | 'accountFetchAllMaybeFunction' | 'accountFetchFromSeedsFunction' | 'accountFetchMaybeFromSeedsFunction' | 'accountGetSizeFunction' | 'scalarEnumVariant' | 'dataEnumDiscriminator' | 'dataEnumVariant' | 'dataEnumFunction' | 'isDataEnumFunction' | 'instructionAsyncInputType' | 'instructionAsyncInputWithSignersType' | 'instructionSyncInputType' | 'instructionSyncInputWithSignersType' | 'instructionType' | 'instructionWithSignersType' | 'instructionDataType' | 'instructionExtraType' | 'instructionAsyncFunction' | 'instructionSyncFunction' | 'instructionRawFunction' | 'instructionParsedType' | 'instructionParseFunction' | 'programType' | 'programAddressConstant' | 'programCreateFunction' | 'programAccountsEnum' | 'programAccountsEnumVariant' | 'programAccountsIdentifierFunction' | 'programInstructionsEnum' | 'programInstructionsEnumVariant' | 'programInstructionsIdentifierFunction' | 'programInstructionsParsedUnionType' | 'programErrorClass' | 'programErrorCodeEnum' | 'programErrorCodeMap' | 'programGetErrorFromCodeFunction' | 'resolverFunction';
|
|
11
11
|
export type NameTransformers = Record<NameTransformerKey, NameTransformer>;
|
|
12
12
|
export type NameApi = Record<NameTransformerKey, (name: string) => string>;
|
|
13
13
|
export declare function getNameApi(transformers: NameTransformers): NameApi;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
|
+
getAllInstructionsWithSubs,
|
|
2
3
|
InstructionNode,
|
|
3
4
|
ProgramNode,
|
|
4
|
-
getAllInstructionsWithSubs,
|
|
5
5
|
structTypeNodeFromInstructionArgumentNodes,
|
|
6
6
|
} from '../../../nodes';
|
|
7
7
|
import type { GlobalFragmentScope } from '../getRenderMapVisitor';
|
|
@@ -29,6 +29,7 @@ export function getProgramInstructionsFragment(
|
|
|
29
29
|
[
|
|
30
30
|
getProgramInstructionsEnumFragment(scopeWithInstructions),
|
|
31
31
|
getProgramInstructionsIdentifierFunctionFragment(scopeWithInstructions),
|
|
32
|
+
getProgramInstructionsParsedUnionTypeFragment(scopeWithInstructions),
|
|
32
33
|
],
|
|
33
34
|
(r) => `${r.join('\n\n')}\n`
|
|
34
35
|
);
|
|
@@ -103,3 +104,46 @@ function getProgramInstructionsIdentifierFunctionFragment(
|
|
|
103
104
|
`}`
|
|
104
105
|
);
|
|
105
106
|
}
|
|
107
|
+
|
|
108
|
+
function getProgramInstructionsParsedUnionTypeFragment(
|
|
109
|
+
scope: Pick<GlobalFragmentScope, 'nameApi'> & {
|
|
110
|
+
programNode: ProgramNode;
|
|
111
|
+
allInstructions: InstructionNode[];
|
|
112
|
+
}
|
|
113
|
+
): Fragment {
|
|
114
|
+
const { programNode, allInstructions, nameApi } = scope;
|
|
115
|
+
|
|
116
|
+
const programAddress = programNode.publicKey;
|
|
117
|
+
|
|
118
|
+
const programInstructionsType = nameApi.programInstructionsParsedUnionType(
|
|
119
|
+
programNode.name
|
|
120
|
+
);
|
|
121
|
+
|
|
122
|
+
const programInstructionsEnum = nameApi.programInstructionsEnum(
|
|
123
|
+
programNode.name
|
|
124
|
+
);
|
|
125
|
+
|
|
126
|
+
const typeVariants = allInstructions.map((instruction): Fragment => {
|
|
127
|
+
const instructionEnumVariant = nameApi.programInstructionsEnumVariant(
|
|
128
|
+
instruction.name
|
|
129
|
+
);
|
|
130
|
+
|
|
131
|
+
const parsedInstructionType = nameApi.instructionParsedType(
|
|
132
|
+
instruction.name
|
|
133
|
+
);
|
|
134
|
+
|
|
135
|
+
return fragment(
|
|
136
|
+
`| { instructionType: ${programInstructionsEnum}.${instructionEnumVariant} } & ${parsedInstructionType}<TProgram>`
|
|
137
|
+
).addImports('generatedInstructions', parsedInstructionType);
|
|
138
|
+
});
|
|
139
|
+
|
|
140
|
+
return mergeFragments(
|
|
141
|
+
[
|
|
142
|
+
fragment(
|
|
143
|
+
`export type ${programInstructionsType}<TProgram extends string = '${programAddress}'> =`
|
|
144
|
+
),
|
|
145
|
+
...typeVariants,
|
|
146
|
+
],
|
|
147
|
+
(r) => r.join('\n')
|
|
148
|
+
);
|
|
149
|
+
}
|
|
@@ -67,6 +67,7 @@ export type NameTransformerKey =
|
|
|
67
67
|
| 'programInstructionsEnum'
|
|
68
68
|
| 'programInstructionsEnumVariant'
|
|
69
69
|
| 'programInstructionsIdentifierFunction'
|
|
70
|
+
| 'programInstructionsParsedUnionType'
|
|
70
71
|
| 'programErrorClass'
|
|
71
72
|
| 'programErrorCodeEnum'
|
|
72
73
|
| 'programErrorCodeMap'
|
|
@@ -147,6 +148,8 @@ export const DEFAULT_NAME_TRANSFORMERS: NameTransformers = {
|
|
|
147
148
|
programInstructionsEnumVariant: (name) => `${pascalCase(name)}`,
|
|
148
149
|
programInstructionsIdentifierFunction: (name) =>
|
|
149
150
|
`identify${pascalCase(name)}Instruction`,
|
|
151
|
+
programInstructionsParsedUnionType: (name) =>
|
|
152
|
+
`Parsed${pascalCase(name)}Instruction`,
|
|
150
153
|
programErrorClass: (name) => `${pascalCase(name)}ProgramError`,
|
|
151
154
|
programErrorCodeEnum: (name) => `${pascalCase(name)}ProgramErrorCode`,
|
|
152
155
|
programErrorCodeMap: (name) => `${camelCase(name)}ProgramErrorCodeMap`,
|