@altronix/cli 0.6.11 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/bin/{atx → atx-workspace} +0 -0
  2. package/build/build.d.ts +2 -0
  3. package/build/build.js +240 -0
  4. package/build/build.js.map +1 -0
  5. package/build/index.d.ts +1 -1
  6. package/build/index.js +39 -86
  7. package/build/index.js.map +1 -1
  8. package/build/seedle.d.ts +2 -0
  9. package/build/seedle.js +41 -0
  10. package/build/seedle.js.map +1 -0
  11. package/package.json +21 -21
  12. package/src/build.ts +354 -0
  13. package/src/index.ts +25 -86
  14. package/src/seedle.ts +39 -0
  15. package/tsconfig.json +1 -1
  16. package/tsconfig.lib.tsbuildinfo +1 -1
  17. package/build/about.d.ts +0 -3
  18. package/build/about.js +0 -38
  19. package/build/about.js.map +0 -1
  20. package/build/cloud.d.ts +0 -2
  21. package/build/cloud.js +0 -42
  22. package/build/cloud.js.map +0 -1
  23. package/build/common.d.ts +0 -5
  24. package/build/common.js +0 -49
  25. package/build/common.js.map +0 -1
  26. package/build/confirmDevice.d.ts +0 -5
  27. package/build/confirmDevice.js +0 -36
  28. package/build/confirmDevice.js.map +0 -1
  29. package/build/context.d.ts +0 -8
  30. package/build/context.js +0 -23
  31. package/build/context.js.map +0 -1
  32. package/build/dhcp.d.ts +0 -1
  33. package/build/dhcp.js +0 -10
  34. package/build/dhcp.js.map +0 -1
  35. package/build/exe.d.ts +0 -4
  36. package/build/exe.js +0 -43
  37. package/build/exe.js.map +0 -1
  38. package/build/ip.d.ts +0 -2
  39. package/build/ip.js +0 -18
  40. package/build/ip.js.map +0 -1
  41. package/build/linq.d.ts +0 -1
  42. package/build/linq.js +0 -3
  43. package/build/linq.js.map +0 -1
  44. package/build/listen.d.ts +0 -1
  45. package/build/listen.js +0 -24
  46. package/build/listen.js.map +0 -1
  47. package/build/net.d.ts +0 -3
  48. package/build/net.js +0 -47
  49. package/build/net.js.map +0 -1
  50. package/build/poe.d.ts +0 -1
  51. package/build/poe.js +0 -3
  52. package/build/poe.js.map +0 -1
  53. package/build/reboot.d.ts +0 -1
  54. package/build/reboot.js +0 -16
  55. package/build/reboot.js.map +0 -1
  56. package/build/site.d.ts +0 -2
  57. package/build/site.js +0 -19
  58. package/build/site.js.map +0 -1
  59. package/build/stress.d.ts +0 -1
  60. package/build/stress.js +0 -30
  61. package/build/stress.js.map +0 -1
  62. package/build/unix.d.ts +0 -1
  63. package/build/unix.js +0 -14
  64. package/build/unix.js.map +0 -1
  65. package/build/update.d.ts +0 -1
  66. package/build/update.js +0 -61
  67. package/build/update.js.map +0 -1
  68. package/build/west.d.ts +0 -1
  69. package/build/west.js +0 -3
  70. package/build/west.js.map +0 -1
  71. package/src/about.ts +0 -47
  72. package/src/cloud.ts +0 -55
  73. package/src/exe.ts +0 -54
  74. package/src/listen.ts +0 -23
  75. package/src/net.ts +0 -68
  76. package/src/poe.ts +0 -1
  77. package/src/stress.ts +0 -37
  78. package/src/update.ts +0 -85
  79. package/src/update.ts.bak +0 -98
File without changes
@@ -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.0",
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",