@algorandfoundation/algokit-client-generator 2.3.1-beta.1 → 2.4.0-beta.1
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/bin/cli.js +2 -1
- package/cli.d.ts.map +1 -1
- package/cli.js +6 -9
- package/cli.js.map +1 -1
- package/dev.d.ts +2 -0
- package/dev.d.ts.map +1 -0
- package/dev.js +5 -0
- package/dev.js.map +1 -0
- package/index.d.ts +3 -1
- package/index.d.ts.map +1 -1
- package/index.js +9 -2
- package/index.js.map +1 -1
- package/package.json +1 -1
- package/schema/load.d.ts +2 -1
- package/schema/load.d.ts.map +1 -1
- package/schema/load.js +11 -7
- package/schema/load.js.map +1 -1
- package/tests/approval-tests.spec.js +2 -2
- package/tests/approval-tests.spec.js.map +1 -1
package/bin/cli.js
CHANGED
package/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAOA,wBAAgB,GAAG,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QA0C3D"}
|
package/cli.js
CHANGED
|
@@ -22,9 +22,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
22
22
|
__setModuleDefault(result, mod);
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
26
|
exports.cli = void 0;
|
|
30
27
|
const commander_1 = require("commander");
|
|
@@ -32,7 +29,6 @@ const load_1 = require("./schema/load");
|
|
|
32
29
|
const path = __importStar(require("path"));
|
|
33
30
|
const generate_1 = require("./client/generate");
|
|
34
31
|
const writer_1 = require("./output/writer");
|
|
35
|
-
const fs_1 = __importDefault(require("fs"));
|
|
36
32
|
const color_console_1 = require("./util/color-console");
|
|
37
33
|
function cli(workingDirectory, args) {
|
|
38
34
|
const program = new commander_1.Command();
|
|
@@ -41,20 +37,21 @@ function cli(workingDirectory, args) {
|
|
|
41
37
|
.description('Generates a TypeScript client for the given application.json file')
|
|
42
38
|
.requiredOption('-a --application <path>', 'Specifies the application.json file')
|
|
43
39
|
.requiredOption('-o --output <path>', 'Specifies the output file path')
|
|
44
|
-
.action(({ application, output }) => {
|
|
40
|
+
.action(async ({ application, output }) => {
|
|
41
|
+
const fs = await Promise.resolve().then(() => __importStar(require('fs')));
|
|
45
42
|
const resolvedAppJsonPath = path.resolve(workingDirectory, application);
|
|
46
43
|
const resolvedOutPath = path.resolve(workingDirectory, output);
|
|
47
44
|
const resolvedOutDir = path.dirname(resolvedOutPath);
|
|
48
45
|
color_console_1.colorConsole.info `Reading application.json file from path ${resolvedAppJsonPath}`;
|
|
49
|
-
const spec = (0, load_1.
|
|
46
|
+
const spec = await (0, load_1.loadApplicationJson)(resolvedAppJsonPath);
|
|
50
47
|
color_console_1.colorConsole.info `Generating TS client for ${spec.contract.name}`;
|
|
51
48
|
const parts = (0, generate_1.generate)(spec);
|
|
52
|
-
if (!
|
|
49
|
+
if (!fs.existsSync(resolvedOutDir)) {
|
|
53
50
|
color_console_1.colorConsole.warn `Output directory ${resolvedOutDir} does not exist and will be created.`;
|
|
54
|
-
|
|
51
|
+
fs.mkdirSync(resolvedOutDir, { recursive: true });
|
|
55
52
|
}
|
|
56
53
|
color_console_1.colorConsole.info `Writing TS client to ${resolvedOutPath}`;
|
|
57
|
-
const file =
|
|
54
|
+
const file = fs.createWriteStream(resolvedOutPath, {
|
|
58
55
|
flags: 'w',
|
|
59
56
|
});
|
|
60
57
|
(0, writer_1.writeDocumentPartsToStream)(parts, file);
|
package/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAmC;AACnC,wCAAmD;AACnD,2CAA4B;AAC5B,gDAA4C;AAC5C,4CAA4D;AAC5D,wDAAmD;AAEnD,SAAgB,GAAG,CAAC,gBAAwB,EAAE,IAAc;IAC1D,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAA;IAC7B,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,mEAAmE,CAAC;SAChF,cAAc,CAAC,yBAAyB,EAAE,qCAAqC,CAAC;SAChF,cAAc,CAAC,oBAAoB,EAAE,gCAAgC,CAAC;SACtE,MAAM,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAA2C,EAAiB,EAAE;QAChG,MAAM,EAAE,GAAG,wDAAa,IAAI,GAAC,CAAA;QAC7B,MAAM,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAA;QACvE,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAA;QAC9D,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;QACpD,4BAAY,CAAC,IAAI,CAAA,2CAA2C,mBAAmB,EAAE,CAAA;QACjF,MAAM,IAAI,GAAG,MAAM,IAAA,0BAAmB,EAAC,mBAAmB,CAAC,CAAA;QAC3D,4BAAY,CAAC,IAAI,CAAA,4BAA4B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAA;QACjE,MAAM,KAAK,GAAG,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAA;QAC5B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE;YAClC,4BAAY,CAAC,IAAI,CAAA,oBAAoB,cAAc,sCAAsC,CAAA;YACzF,EAAE,CAAC,SAAS,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;SAClD;QACD,4BAAY,CAAC,IAAI,CAAA,wBAAwB,eAAe,EAAE,CAAA;QAC1D,MAAM,IAAI,GAAG,EAAE,CAAC,iBAAiB,CAAC,eAAe,EAAE;YACjD,KAAK,EAAE,GAAG;SACX,CAAC,CAAA;QACF,IAAA,mCAA0B,EAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QACvC,4BAAY,CAAC,OAAO,CAAA,kCAAkC,CAAA;IACxD,CAAC,CAAC;SACD,eAAe,CAAC;QACf,QAAQ,CAAC,GAAW;YAClB,4BAAY,CAAC,KAAK,CAAA,GAAG,GAAG,EAAE,CAAA;QAC5B,CAAC;KACF,CAAC,CAAA;IACJ,IAAI;QACF,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;KACpB;IAAC,OAAO,GAAG,EAAE;QACZ,IAAI,GAAG,YAAY,KAAK,EAAE;YACxB,4BAAY,CAAC,KAAK,CAAA,wBAAwB,GAAG,CAAC,KAAK,EAAE,CAAA;SACtD;aAAM;YACL,4BAAY,CAAC,KAAK,CAAA,wBAAwB,GAAG,EAAE,CAAA;SAChD;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;KACjB;AACH,CAAC;AA1CD,kBA0CC"}
|
package/dev.d.ts
ADDED
package/dev.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":""}
|
package/dev.js
ADDED
package/dev.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":";;AAAA,+BAA2B;AAC3B,IAAA,SAAG,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA"}
|
package/index.d.ts
CHANGED
package/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAA"}
|
package/index.js
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
exports.writeDocumentPartsToString = exports.writeDocumentPartsToStream = exports.generate = exports.validateApplicationJson = exports.loadApplicationJson = void 0;
|
|
4
|
+
var load_1 = require("./schema/load");
|
|
5
|
+
Object.defineProperty(exports, "loadApplicationJson", { enumerable: true, get: function () { return load_1.loadApplicationJson; } });
|
|
6
|
+
Object.defineProperty(exports, "validateApplicationJson", { enumerable: true, get: function () { return load_1.validateApplicationJson; } });
|
|
7
|
+
var generate_1 = require("./client/generate");
|
|
8
|
+
Object.defineProperty(exports, "generate", { enumerable: true, get: function () { return generate_1.generate; } });
|
|
9
|
+
var writer_1 = require("./output/writer");
|
|
10
|
+
Object.defineProperty(exports, "writeDocumentPartsToStream", { enumerable: true, get: function () { return writer_1.writeDocumentPartsToStream; } });
|
|
11
|
+
Object.defineProperty(exports, "writeDocumentPartsToString", { enumerable: true, get: function () { return writer_1.writeDocumentPartsToString; } });
|
|
5
12
|
//# sourceMappingURL=index.js.map
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,sCAA4E;AAAnE,2GAAA,mBAAmB,OAAA;AAAE,+GAAA,uBAAuB,OAAA;AACrD,8CAA4C;AAAnC,oGAAA,QAAQ,OAAA;AACjB,0CAAwF;AAA/E,oHAAA,0BAA0B,OAAA;AAAE,oHAAA,0BAA0B,OAAA"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"main": "index.js",
|
|
3
3
|
"types": "index.d.ts",
|
|
4
4
|
"name": "@algorandfoundation/algokit-client-generator",
|
|
5
|
-
"version": "2.
|
|
5
|
+
"version": "2.4.0-beta.1",
|
|
6
6
|
"description": "Generates a TypeScript client for interacting with, and deploying ARC-0032 smart contracts on the Algorand Blockchain.",
|
|
7
7
|
"private": false,
|
|
8
8
|
"bin": {
|
package/schema/load.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { AlgoAppSpec } from './application';
|
|
2
|
-
export declare function
|
|
2
|
+
export declare function loadApplicationJson(appJsonPath: string): Promise<AlgoAppSpec>;
|
|
3
|
+
export declare function validateApplicationJson(json: unknown): AlgoAppSpec;
|
|
3
4
|
//# sourceMappingURL=load.d.ts.map
|
package/schema/load.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load.d.ts","sourceRoot":"","sources":["../../src/schema/load.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"load.d.ts","sourceRoot":"","sources":["../../src/schema/load.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAI3C,wBAAsB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAMnF;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,GAAG,WAAW,CASlE"}
|
package/schema/load.js
CHANGED
|
@@ -26,22 +26,26 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.
|
|
30
|
-
const fs = __importStar(require("fs"));
|
|
29
|
+
exports.validateApplicationJson = exports.loadApplicationJson = void 0;
|
|
31
30
|
const jsonschema_1 = require("jsonschema");
|
|
32
31
|
const boom_1 = require("../util/boom");
|
|
33
32
|
const application_schema_json_1 = __importDefault(require("./application.schema.json"));
|
|
34
33
|
const contract_schema_json_1 = __importDefault(require("./contract.schema.json"));
|
|
35
|
-
function
|
|
34
|
+
async function loadApplicationJson(appJsonPath) {
|
|
35
|
+
const fs = await Promise.resolve().then(() => __importStar(require('fs')));
|
|
36
36
|
if (!fs.existsSync(appJsonPath))
|
|
37
37
|
(0, boom_1.boom)(`Could not find application.json file at ${appJsonPath}`);
|
|
38
|
+
const file = JSON.parse(fs.readFileSync(appJsonPath, 'utf-8'));
|
|
39
|
+
return validateApplicationJson(file);
|
|
40
|
+
}
|
|
41
|
+
exports.loadApplicationJson = loadApplicationJson;
|
|
42
|
+
function validateApplicationJson(json) {
|
|
38
43
|
const validator = new jsonschema_1.Validator();
|
|
39
44
|
validator.addSchema(contract_schema_json_1.default, '/contract.schema.json');
|
|
40
|
-
const
|
|
41
|
-
const result = validator.validate(file, application_schema_json_1.default);
|
|
45
|
+
const result = validator.validate(json, application_schema_json_1.default);
|
|
42
46
|
if (!result.valid)
|
|
43
47
|
(0, boom_1.boom)(result.toString());
|
|
44
|
-
return
|
|
48
|
+
return json;
|
|
45
49
|
}
|
|
46
|
-
exports.
|
|
50
|
+
exports.validateApplicationJson = validateApplicationJson;
|
|
47
51
|
//# sourceMappingURL=load.js.map
|
package/schema/load.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load.js","sourceRoot":"","sources":["../../src/schema/load.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"load.js","sourceRoot":"","sources":["../../src/schema/load.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA8C;AAC9C,uCAAmC;AAEnC,wFAAqD;AACrD,kFAAmD;AAE5C,KAAK,UAAU,mBAAmB,CAAC,WAAmB;IAC3D,MAAM,EAAE,GAAG,wDAAa,IAAI,GAAC,CAAA;IAC7B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,IAAA,WAAI,EAAC,2CAA2C,WAAW,EAAE,CAAC,CAAA;IAE/F,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAA;IAC9D,OAAO,uBAAuB,CAAC,IAAI,CAAC,CAAA;AACtC,CAAC;AAND,kDAMC;AAED,SAAgB,uBAAuB,CAAC,IAAa;IACnD,MAAM,SAAS,GAAG,IAAI,sBAAS,EAAE,CAAA;IACjC,SAAS,CAAC,SAAS,CAAC,8BAAc,EAAE,uBAAuB,CAAC,CAAA;IAE5D,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,iCAAkC,CAAC,CAAA;IAE3E,IAAI,CAAC,MAAM,CAAC,KAAK;QAAE,IAAA,WAAI,EAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;IAE1C,OAAO,IAAmB,CAAA;AAC5B,CAAC;AATD,0DASC"}
|
|
@@ -11,9 +11,9 @@ const load_1 = require("../schema/load");
|
|
|
11
11
|
const writeActual = process.env.TEST_ENV !== 'ci';
|
|
12
12
|
const testContracts = ['helloworld', 'lifecycle', 'state', 'voting'];
|
|
13
13
|
describe('When generating a ts client for a the contract', () => {
|
|
14
|
-
test.each(testContracts)('%s approval', (contractName) => {
|
|
14
|
+
test.each(testContracts)('%s approval', async (contractName) => {
|
|
15
15
|
const dir = path_1.default.join(__dirname, `../../examples/${contractName}/`);
|
|
16
|
-
const spec = (0, load_1.
|
|
16
|
+
const spec = await (0, load_1.loadApplicationJson)(path_1.default.join(dir, `application.json`));
|
|
17
17
|
const result = (0, writer_1.writeDocumentPartsToString)((0, generate_1.generate)(spec));
|
|
18
18
|
if (writeActual)
|
|
19
19
|
fs_1.default.writeFileSync(path_1.default.join(dir, `client.generated.ts`), result);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"approval-tests.spec.js","sourceRoot":"","sources":["../../src/tests/approval-tests.spec.ts"],"names":[],"mappings":";;;;;AAAA,4CAAmB;AACnB,gDAAuB;AACvB,iDAA6C;AAC7C,6CAA6D;AAC7D,
|
|
1
|
+
{"version":3,"file":"approval-tests.spec.js","sourceRoot":"","sources":["../../src/tests/approval-tests.spec.ts"],"names":[],"mappings":";;;;;AAAA,4CAAmB;AACnB,gDAAuB;AACvB,iDAA6C;AAC7C,6CAA6D;AAC7D,yCAAoD;AAEpD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAA;AAEjD,MAAM,aAAa,GAAG,CAAC,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAA;AAE7E,QAAQ,CAAC,gDAAgD,EAAE,GAAG,EAAE;IAC9D,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE;QAC7D,MAAM,GAAG,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,kBAAkB,YAAY,GAAG,CAAC,CAAA;QACnE,MAAM,IAAI,GAAG,MAAM,IAAA,0BAAmB,EAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC,CAAA;QAE1E,MAAM,MAAM,GAAG,IAAA,mCAA0B,EAAC,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC,CAAA;QACzD,IAAI,WAAW;YAAE,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,CAAC,EAAE,MAAM,CAAC,CAAA;QAEhF,MAAM,cAAc,GAAG,YAAE,CAAC,YAAY,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,CAAA;QAE5E,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|