@altronix/cli 0.6.11 → 0.7.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.
Files changed (78) hide show
  1. package/build/build.d.ts +2 -0
  2. package/build/build.js +240 -0
  3. package/build/build.js.map +1 -0
  4. package/build/index.d.ts +1 -1
  5. package/build/index.js +39 -86
  6. package/build/index.js.map +1 -1
  7. package/build/seedle.d.ts +2 -0
  8. package/build/seedle.js +41 -0
  9. package/build/seedle.js.map +1 -0
  10. package/package.json +21 -21
  11. package/src/build.ts +354 -0
  12. package/src/index.ts +25 -86
  13. package/src/seedle.ts +39 -0
  14. package/tsconfig.json +1 -1
  15. package/tsconfig.lib.tsbuildinfo +1 -1
  16. package/build/about.d.ts +0 -3
  17. package/build/about.js +0 -38
  18. package/build/about.js.map +0 -1
  19. package/build/cloud.d.ts +0 -2
  20. package/build/cloud.js +0 -42
  21. package/build/cloud.js.map +0 -1
  22. package/build/common.d.ts +0 -5
  23. package/build/common.js +0 -49
  24. package/build/common.js.map +0 -1
  25. package/build/confirmDevice.d.ts +0 -5
  26. package/build/confirmDevice.js +0 -36
  27. package/build/confirmDevice.js.map +0 -1
  28. package/build/context.d.ts +0 -8
  29. package/build/context.js +0 -23
  30. package/build/context.js.map +0 -1
  31. package/build/dhcp.d.ts +0 -1
  32. package/build/dhcp.js +0 -10
  33. package/build/dhcp.js.map +0 -1
  34. package/build/exe.d.ts +0 -4
  35. package/build/exe.js +0 -43
  36. package/build/exe.js.map +0 -1
  37. package/build/ip.d.ts +0 -2
  38. package/build/ip.js +0 -18
  39. package/build/ip.js.map +0 -1
  40. package/build/linq.d.ts +0 -1
  41. package/build/linq.js +0 -3
  42. package/build/linq.js.map +0 -1
  43. package/build/listen.d.ts +0 -1
  44. package/build/listen.js +0 -24
  45. package/build/listen.js.map +0 -1
  46. package/build/net.d.ts +0 -3
  47. package/build/net.js +0 -47
  48. package/build/net.js.map +0 -1
  49. package/build/poe.d.ts +0 -1
  50. package/build/poe.js +0 -3
  51. package/build/poe.js.map +0 -1
  52. package/build/reboot.d.ts +0 -1
  53. package/build/reboot.js +0 -16
  54. package/build/reboot.js.map +0 -1
  55. package/build/site.d.ts +0 -2
  56. package/build/site.js +0 -19
  57. package/build/site.js.map +0 -1
  58. package/build/stress.d.ts +0 -1
  59. package/build/stress.js +0 -30
  60. package/build/stress.js.map +0 -1
  61. package/build/unix.d.ts +0 -1
  62. package/build/unix.js +0 -14
  63. package/build/unix.js.map +0 -1
  64. package/build/update.d.ts +0 -1
  65. package/build/update.js +0 -61
  66. package/build/update.js.map +0 -1
  67. package/build/west.d.ts +0 -1
  68. package/build/west.js +0 -3
  69. package/build/west.js.map +0 -1
  70. package/src/about.ts +0 -47
  71. package/src/cloud.ts +0 -55
  72. package/src/exe.ts +0 -54
  73. package/src/listen.ts +0 -23
  74. package/src/net.ts +0 -68
  75. package/src/poe.ts +0 -1
  76. package/src/stress.ts +0 -37
  77. package/src/update.ts +0 -85
  78. package/src/update.ts.bak +0 -98
@@ -0,0 +1,2 @@
1
+ import { Command } from "commander";
2
+ export declare function build(this: Command): Promise<void>;
package/build/build.js ADDED
@@ -0,0 +1,240 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.build = build;
4
+ const tslib_1 = require("tslib");
5
+ const dotenv_1 = tslib_1.__importDefault(require("dotenv"));
6
+ const ajv_1 = require("ajv");
7
+ const node_path_1 = tslib_1.__importDefault(require("node:path"));
8
+ const node_fs_1 = tslib_1.__importDefault(require("node:fs"));
9
+ const node_child_process_1 = tslib_1.__importDefault(require("node:child_process"));
10
+ const rxjs_1 = require("rxjs");
11
+ const ajv = new ajv_1.Ajv({ allErrors: true, verbose: true });
12
+ const schemaBuild = {
13
+ type: "object",
14
+ required: [],
15
+ patternProperties: {
16
+ ".*": {
17
+ type: "object",
18
+ required: ["sourceDir", "binaryDir", "installDir", "boards"],
19
+ properties: {
20
+ sourceDir: { type: "string" },
21
+ binaryDir: { type: "string" },
22
+ installDir: { type: "string" },
23
+ boards: {
24
+ type: "object",
25
+ required: [],
26
+ patternProperties: {
27
+ ".*": {
28
+ type: "object",
29
+ required: [],
30
+ patternProperties: {
31
+ ".*": {
32
+ type: "object",
33
+ properties: {
34
+ configs: {
35
+ type: "array",
36
+ items: { type: "string" },
37
+ nullable: true,
38
+ },
39
+ overlays: {
40
+ type: "array",
41
+ items: { type: "string" },
42
+ nullable: true,
43
+ },
44
+ },
45
+ },
46
+ },
47
+ },
48
+ },
49
+ },
50
+ },
51
+ },
52
+ },
53
+ };
54
+ const schema = {
55
+ type: "object",
56
+ required: ["applications", "bootloaders"],
57
+ additionalProperties: false,
58
+ properties: {
59
+ applications: schemaBuild,
60
+ bootloaders: schemaBuild,
61
+ },
62
+ };
63
+ const validate = ajv.compile(schema);
64
+ async function parseAppVersion(v) {
65
+ const data = await node_fs_1.default.promises.readFile(v, "ascii");
66
+ const reMajor = data.matchAll(/^VERSION_MAJOR = ([0-9]+)/gm).next();
67
+ const reMinor = data.matchAll(/^VERSION_MINOR = ([0-9]+)/gm).next();
68
+ const rePatch = data.matchAll(/^PATCHLEVEL = ([0-9]+)/gm).next();
69
+ const reTweak = data.matchAll(/^VERSION_TWEAK = ([0-9]+)/gm).next();
70
+ const reExtra = data.matchAll(/^EXTRAVERSION = ([.a-zA-Z-]+)/gm).next();
71
+ return {
72
+ major: reMajor.value ? parseInt(reMajor.value[1]) : 0,
73
+ minor: reMinor.value ? parseInt(reMinor.value[1]) : 0,
74
+ patch: rePatch.value ? parseInt(rePatch.value[1]) : 0,
75
+ tweak: reTweak.value ? parseInt(reTweak.value[1]) : 0,
76
+ extra: reExtra.value ? reExtra.value[1] : "",
77
+ };
78
+ }
79
+ function formatVersion(ver) {
80
+ const { major, minor, patch, tweak, extra } = ver;
81
+ return extra.length
82
+ ? `${major}-${minor}-${patch}-${tweak}-${extra}`
83
+ : `${major}-${minor}-${patch}-${tweak}`;
84
+ }
85
+ async function normalizeWestOptions(appName, boardName, configName, app, cwd) {
86
+ const resolve = (dir, from) => node_path_1.default.isAbsolute(dir) ? dir : node_path_1.default.resolve(from || cwd, dir);
87
+ const sourceDir = resolve(app.sourceDir);
88
+ const binaryDir = node_path_1.default.join(resolve(app.binaryDir), boardName, configName);
89
+ const installDir = resolve(app.installDir);
90
+ const confs = app.boards[boardName][configName].configs || [];
91
+ const versionFile = node_path_1.default.join(sourceDir, "VERSION");
92
+ const version = formatVersion(await parseAppVersion(versionFile));
93
+ const overlays = [];
94
+ return {
95
+ name: appName,
96
+ board: boardName,
97
+ config: configName,
98
+ cwd,
99
+ version,
100
+ sourceDir,
101
+ binaryDir,
102
+ installDir,
103
+ outputFile: node_path_1.default.join(binaryDir, "build.log"),
104
+ errorFile: node_path_1.default.join(binaryDir, "build.err"),
105
+ confs,
106
+ overlays,
107
+ };
108
+ }
109
+ function extraApplicationConfs(extraConfs) {
110
+ const key = process.env["ALTRONIX_RELEASE_KEY"];
111
+ if (!key)
112
+ throw new Error("missing ALTRONIX_RELEASE_KEY from environment");
113
+ const extraConfsData = [
114
+ `CONFIG_MCUBOOT_SIGNATURE_KEY_FILE="${key}"`,
115
+ `CONFIG_BOOTLOADER_MCUBOOT=y`,
116
+ `CONFIG_ATX_UPDATE_ENABLE=y`,
117
+ ].join("\r\n");
118
+ return (0, rxjs_1.from)(node_fs_1.default.promises.writeFile(extraConfs, extraConfsData));
119
+ }
120
+ function emulateBytePages(board) {
121
+ return (board.startsWith("atsame54_xpro") ||
122
+ board.startsWith("netway4e1bt") ||
123
+ board.startsWith("netway4eb") ||
124
+ board.startsWith("netway5pq") ||
125
+ board.startsWith("oa2b"));
126
+ }
127
+ function extraBootloaderConfs(board, extraConfs) {
128
+ const key = process.env["ALTRONIX_RELEASE_KEY"];
129
+ if (!key)
130
+ throw new Error("missing ALTRONIX_RELEASE_KEY from environment");
131
+ const extraConfsData = [`CONFIG_BOOT_SIGNATURE_KEY_FILE="${key}"`];
132
+ if (emulateBytePages(board)) {
133
+ extraConfsData.push(`CONFIG_SOC_FLASH_SAM0_EMULATE_BYTE_PAGES=y`);
134
+ }
135
+ return (0, rxjs_1.from)(node_fs_1.default.promises.writeFile(extraConfs, extraConfsData.join("\r\n")));
136
+ }
137
+ function west(args) {
138
+ const { cwd, board, sourceDir, binaryDir, confs, overlays } = args;
139
+ const westArgs = [
140
+ `build`,
141
+ `-b ${board}`,
142
+ `-s ${sourceDir}`,
143
+ `-d ${binaryDir}`,
144
+ `--`,
145
+ `-DEXTRA_CONF_FILE="${[...confs].join(";")}"`,
146
+ `-DEXTRA_DTC_OVERLAY_FILE="${[...overlays].join(";")}"`,
147
+ ];
148
+ return new rxjs_1.Observable((subscriber) => {
149
+ const west = node_child_process_1.default.spawn("west", westArgs, { cwd, shell: true });
150
+ const fout = node_fs_1.default.createWriteStream(args.outputFile);
151
+ const ferr = node_fs_1.default.createWriteStream(args.errorFile);
152
+ west.stdout.pipe(fout);
153
+ west.stderr.pipe(ferr);
154
+ west.on("error", (e) => {
155
+ subscriber.error(e);
156
+ fout.close();
157
+ ferr.close();
158
+ });
159
+ west.on("exit", () => {
160
+ fout.close();
161
+ ferr.close();
162
+ subscriber.next();
163
+ subscriber.complete();
164
+ });
165
+ });
166
+ }
167
+ function installSignedBin(args) {
168
+ const { name, config, version, board, binaryDir, installDir: dir } = args;
169
+ const src = node_path_1.default.join(binaryDir, "zephyr", "zephyr.signed.bin");
170
+ const dst = node_path_1.default.join(dir, `${board}-${name}-${config}-${version}.signed.bin`);
171
+ return new rxjs_1.Observable((subscriber) => {
172
+ node_fs_1.default.promises
173
+ .copyFile(src, dst)
174
+ .then(() => subscriber.next())
175
+ .catch((e) => subscriber.error(e))
176
+ .finally(() => subscriber.complete());
177
+ });
178
+ }
179
+ function installBin(args) {
180
+ const { name, config, version, board, binaryDir, installDir: dir } = args;
181
+ const src = node_path_1.default.join(binaryDir, "zephyr", "zephyr.bin");
182
+ const dst = node_path_1.default.join(dir, `${board}-${name}-${config}-${version}.bin`);
183
+ return new rxjs_1.Observable((subscriber) => {
184
+ node_fs_1.default.promises
185
+ .copyFile(src, dst)
186
+ .then(() => subscriber.next())
187
+ .catch((e) => subscriber.error(e))
188
+ .finally(() => subscriber.complete());
189
+ });
190
+ }
191
+ function mkdir() {
192
+ return (obs$) => obs$.pipe((0, rxjs_1.mergeMap)((dir) => new rxjs_1.Observable((subscriber) => {
193
+ node_fs_1.default.promises
194
+ .mkdir(dir, { recursive: true })
195
+ .then(() => subscriber.next())
196
+ .catch((e) => subscriber.error(e))
197
+ .finally(() => subscriber.complete());
198
+ })));
199
+ }
200
+ function runBuild({ install$, config$, }) {
201
+ return (obs$) => {
202
+ // Create all the directories for our build
203
+ const dirs$ = obs$.pipe((0, rxjs_1.mergeMap)(({ binaryDir, installDir }) => (0, rxjs_1.from)([binaryDir, installDir])), mkdir());
204
+ // Run west commands
205
+ const build$ = obs$.pipe((0, rxjs_1.mergeMap)((opts) => west(opts)));
206
+ return (0, rxjs_1.concat)(dirs$, config$, build$, install$);
207
+ };
208
+ }
209
+ async function build() {
210
+ const config = this.opts().config || node_path_1.default.resolve("./", "atx.json");
211
+ const cwd = node_path_1.default.resolve(node_path_1.default.dirname(config));
212
+ const data = await node_fs_1.default.promises.readFile(config, "ascii");
213
+ const atx = JSON.parse(data);
214
+ const extraAppConfFile = "application.conf";
215
+ const extraBootConfFile = "bootloader.conf";
216
+ if (!validate(atx))
217
+ throw validate.errors;
218
+ const env = node_path_1.default.resolve(cwd, ".env");
219
+ dotenv_1.default.config({ path: env });
220
+ const apps = Object.keys(atx.applications).flatMap((app) => {
221
+ return Object.keys(atx.applications[app].boards).flatMap((board) => {
222
+ return Object.keys(atx.applications[app].boards[board]).map((config) => normalizeWestOptions(app, board, config, atx.applications[app], cwd));
223
+ });
224
+ });
225
+ const bootloaders = Object.keys(atx.bootloaders).flatMap((app) => {
226
+ return Object.keys(atx.bootloaders[app].boards).flatMap((board) => {
227
+ return Object.keys(atx.bootloaders[app].boards[board]).map((config) => normalizeWestOptions(app, board, config, atx.bootloaders[app], cwd));
228
+ });
229
+ });
230
+ const apps$ = (0, rxjs_1.from)(await Promise.all(apps));
231
+ const bootloaders$ = (0, rxjs_1.from)(await Promise.all(bootloaders));
232
+ return (0, rxjs_1.lastValueFrom)((0, rxjs_1.merge)(bootloaders$.pipe(runBuild({
233
+ install$: bootloaders$.pipe((0, rxjs_1.mergeMap)((opts) => installBin(opts))),
234
+ config$: bootloaders$.pipe((0, rxjs_1.mergeMap)(({ board, binaryDir }) => extraBootloaderConfs(board, node_path_1.default.join(binaryDir, extraBootConfFile)))),
235
+ })), apps$.pipe(runBuild({
236
+ install$: apps$.pipe((0, rxjs_1.mergeMap)((opts) => installSignedBin(opts))),
237
+ config$: apps$.pipe((0, rxjs_1.mergeMap)(({ binaryDir }) => extraApplicationConfs(node_path_1.default.join(binaryDir, extraAppConfFile)))),
238
+ }))));
239
+ }
240
+ //# sourceMappingURL=build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"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"}
package/build/index.d.ts CHANGED
@@ -1 +1 @@
1
- export {};
1
+ export {};
package/build/index.js CHANGED
@@ -1,87 +1,40 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const device_1 = require("@altronix/device");
4
- const commander_1 = require("commander");
5
- const about_1 = require("./about");
6
- const cloud_1 = require("./cloud");
7
- const net_1 = require("./net");
8
- const exe_1 = require("./exe");
9
- const update_1 = require("./update");
10
- const stress_1 = require("./stress");
11
- const listen_1 = require("./listen");
12
- (async function main() {
13
- device_1.log.info("running cli");
14
- commander_1.program.name("atx").description("access linq device via cli").version("TODO");
15
- commander_1.program
16
- .command("get-about")
17
- .description("get about data on the device")
18
- .action(about_1.getAbout);
19
- commander_1.program
20
- .command("get-site")
21
- .description("get site id from the device")
22
- .action(about_1.getSite);
23
- commander_1.program
24
- .command("set-site")
25
- .description("set site id from the device")
26
- .argument("<site>", "new site id")
27
- .action(about_1.setSite);
28
- commander_1.program
29
- .command("get-net")
30
- .description("get network configuration from the device")
31
- .action(net_1.getNet);
32
- commander_1.program
33
- .command("set-net")
34
- .description("set network interface into static ip mode")
35
- .argument("<ip>", "the new IP address")
36
- .argument("<sn>", "the new SUBNET mask")
37
- .argument("<gw>", "the new GATEWAY address")
38
- .action(net_1.setNet);
39
- commander_1.program
40
- .command("set-dhcp")
41
- .description("set network interface into DHCP mode")
42
- .action(net_1.setDhcp);
43
- commander_1.program
44
- .command("get-cloud")
45
- .description("get cloud endpoint on the device")
46
- .action(cloud_1.getCloud);
47
- commander_1.program
48
- .command("set-cloud")
49
- .description("set cloud endpoint on the device")
50
- .argument("<endpoint>", "cloud service location")
51
- .action(cloud_1.setCloud);
52
- commander_1.program
53
- .command("save")
54
- .description("save data to persistant storage")
55
- .action(exe_1.save);
56
- commander_1.program
57
- .command("save-reboot")
58
- .description("save data to persistant storage and reboot the device")
59
- .action(exe_1.saveAndReboot);
60
- commander_1.program.command("reboot").description("reboot the device").action(exe_1.reboot);
61
- commander_1.program
62
- .command("erase")
63
- .description("erase customer settings")
64
- .action(exe_1.reboot);
65
- commander_1.program
66
- .command("stress")
67
- .description("run a stress test on a device")
68
- .argument("<count>", "how many requests to make")
69
- .action(stress_1.stress);
70
- commander_1.program
71
- .command("listen")
72
- .description("listen for alerts and heartbeats")
73
- .argument("<duration>", "how long to listen")
74
- .action(listen_1.listen);
75
- commander_1.program
76
- .command("update")
77
- .description("run firmware update from file")
78
- .argument("<file>", "file to update device with")
79
- .action(update_1.update);
80
- try {
81
- await commander_1.program.parseAsync();
82
- }
83
- catch (e) {
84
- device_1.log.error(e.message, { ...e });
85
- }
86
- })();
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const commander_1 = require("commander");
5
+ const path_1 = tslib_1.__importDefault(require("path"));
6
+ const fs_1 = tslib_1.__importDefault(require("fs"));
7
+ const seedle = tslib_1.__importStar(require("./seedle"));
8
+ const build_1 = require("./build");
9
+ (async function main() {
10
+ // Parse package.json to get version
11
+ const pkg = path_1.default.resolve(__dirname, "..", "package.json");
12
+ const ver = JSON.parse(await fs_1.default.promises.readFile(pkg, "ascii")).version;
13
+ const cwd = path_1.default.resolve("./");
14
+ commander_1.program
15
+ .name("atx")
16
+ .description("build atx zdk projects")
17
+ .version(ver);
18
+ // Scan command
19
+ const ignore = "node_modules;target;build;.git";
20
+ commander_1.program
21
+ .command("scan")
22
+ .description("scan for *.cddl files")
23
+ .option("-p, --path <PATH>", "root directory to start scan", cwd)
24
+ .option("-m, --matches <REGEX>", "match expression", ".*cddl$")
25
+ .option("-i, --ignores <REGEX>", "ignore directories", ignore)
26
+ .action(seedle.scan);
27
+ // Build command
28
+ commander_1.program
29
+ .command("build")
30
+ .description("build atx zdk application")
31
+ .option("-c, --config <CONFIG>", "workspace config file")
32
+ .action(build_1.build);
33
+ try {
34
+ await commander_1.program.parseAsync();
35
+ }
36
+ catch (e) {
37
+ console.error(e);
38
+ }
39
+ })();
87
40
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,wDAAwB;AACxB,oDAAoB;AACpB,yDAAmC;AACnC,mCAAgC;AAEhC,CAAC,KAAK,UAAU,IAAI;IAClB,oCAAoC;IACpC,MAAM,GAAG,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;IACzE,MAAM,GAAG,GAAG,cAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/B,mBAAO;SACJ,IAAI,CAAC,KAAK,CAAC;SACX,WAAW,CAAC,wBAAwB,CAAC;SACrC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEhB,eAAe;IACf,MAAM,MAAM,GAAG,gCAAgC,CAAC;IAChD,mBAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,uBAAuB,CAAC;SACpC,MAAM,CAAC,mBAAmB,EAAE,8BAA8B,EAAE,GAAG,CAAC;SAChE,MAAM,CAAC,uBAAuB,EAAE,kBAAkB,EAAE,SAAS,CAAC;SAC9D,MAAM,CAAC,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,CAAC;SAC7D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEvB,gBAAgB;IAChB,mBAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,2BAA2B,CAAC;SACxC,MAAM,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;SACxD,MAAM,CAAC,aAAK,CAAC,CAAC;IAEjB,IAAI,CAAC;QACH,MAAM,mBAAO,CAAC,UAAU,EAAE,CAAC;IAC7B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnB,CAAC;AACH,CAAC,CAAC,EAAE,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Command } from "commander";
2
+ export declare function scan(this: Command): Promise<void>;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.scan = scan;
4
+ const tslib_1 = require("tslib");
5
+ const path_1 = tslib_1.__importDefault(require("path"));
6
+ const fs_1 = tslib_1.__importDefault(require("fs"));
7
+ const dotenv_1 = tslib_1.__importDefault(require("dotenv"));
8
+ async function scan() {
9
+ // parse matches
10
+ const matches = this.opts()
11
+ .matches.split(";")
12
+ .map((s) => new RegExp(s, "g"));
13
+ // parse ignores
14
+ const ignores = this.opts()
15
+ .ignores.split(";")
16
+ .map((s) => new RegExp(s, "g"));
17
+ // parse start directory and load env.
18
+ const start = this.opts().path;
19
+ const env = path_1.default.join(start, ".env");
20
+ dotenv_1.default.config({ path: env });
21
+ // Log out matches
22
+ for await (const f of walk(start, matches, ignores)) {
23
+ console.log(f);
24
+ }
25
+ }
26
+ async function* walk(dir, matches, ignores) {
27
+ for await (const d of await fs_1.default.promises.opendir(dir)) {
28
+ const entry = path_1.default.join(dir, d.name);
29
+ if (d.isDirectory()) {
30
+ const i = ignores.map((i) => entry.match(i)).filter((r) => r);
31
+ if (i.length == 0)
32
+ yield* await walk(entry, matches, ignores);
33
+ }
34
+ else if (d.isFile()) {
35
+ const m = matches.map((m) => entry.match(m)).filter((r) => r);
36
+ if (m.length > 0)
37
+ yield entry;
38
+ }
39
+ }
40
+ }
41
+ //# sourceMappingURL=seedle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seedle.js","sourceRoot":"","sources":["../src/seedle.ts"],"names":[],"mappings":";;AAKA,oBAoBC;;AAxBD,wDAAwB;AACxB,oDAAoB;AACpB,4DAA4B;AAErB,KAAK,UAAU,IAAI;IACxB,gBAAgB;IAChB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE;SACxB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;SAClB,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAE1C,gBAAgB;IAChB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE;SACxB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;SAClB,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAE1C,sCAAsC;IACtC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC;IAC/B,MAAM,GAAG,GAAG,cAAI,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACrC,gBAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;IAE7B,kBAAkB;IAClB,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;AACH,CAAC;AAED,KAAK,SAAS,CAAC,CAAC,IAAI,CAAC,GAAW,EAAE,OAAiB,EAAE,OAAiB;IACpE,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,YAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACrD,MAAM,KAAK,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YACpB,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;YAC9D,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC;gBAAE,KAAK,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAChE,CAAC;aAAM,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;YAC9D,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,KAAK,CAAC;QAChC,CAAC;IACH,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,37 +1,37 @@
1
1
  {
2
2
  "name": "@altronix/cli",
3
- "version": "0.6.11",
3
+ "version": "0.7.1",
4
4
  "description": "",
5
5
  "bin": {
6
6
  "atx": "./bin/atx"
7
7
  },
8
8
  "devDependencies": {
9
- "@types/jest": "~29.2",
10
- "@types/node": "~18",
11
- "@typescript-eslint/eslint-plugin": "~5.44",
12
- "@typescript-eslint/parser": "~5.44",
9
+ "@types/jest": "~29.2.6",
10
+ "@types/node": "~18.19.39",
11
+ "@typescript-eslint/eslint-plugin": "~5.44.0",
12
+ "@typescript-eslint/parser": "~5.44.0",
13
13
  "copyfiles": "^2.4.1",
14
- "eslint": "~8.28",
15
- "eslint-config-prettier": "~8.5",
16
- "eslint-plugin-jest": "~27.1",
17
- "jest": "~29.3",
18
- "prettier": "~2.8",
19
- "rimraf": "~3.0",
20
- "ts-jest": "~29.0",
21
- "tslib": "^2.4.1",
22
- "tsutils": "~3.21",
23
- "typescript": "~4.9"
14
+ "eslint": "~8.28.0",
15
+ "eslint-config-prettier": "~8.5.0",
16
+ "eslint-plugin-jest": "~27.1.7",
17
+ "jest": "~29.3.1",
18
+ "prettier": "~2.8.8",
19
+ "rimraf": "~3.0.2",
20
+ "ts-jest": "^29.2.0",
21
+ "tslib": "^2.6.3",
22
+ "tsutils": "~3.21.0",
23
+ "typescript": "^5.5.3"
24
24
  },
25
25
  "keywords": [],
26
26
  "author": "",
27
27
  "license": "ISC",
28
28
  "dependencies": {
29
- "@altronix/netway": "^0.3.0",
30
- "commander": "^10.0.0",
31
- "rxjs": "^7.6.0",
32
- "serialport": "^10.5.0",
33
- "@altronix/device": "0.6.11",
34
- "@altronix/wasm": "1.1.5"
29
+ "ajv": "^8.16.0",
30
+ "commander": "^10.0.1",
31
+ "dotenv": "^16.4.5",
32
+ "jsonc-parser": "^3.3.1",
33
+ "rxjs": "^7.8.1",
34
+ "serialport": "^10.5.0"
35
35
  },
36
36
  "scripts": {
37
37
  "start": "node ./build/index.js",