xs-dev 0.15.0 → 0.17.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 (45) hide show
  1. package/bin/xs-dev +3 -4
  2. package/build/commands/build.js +30 -0
  3. package/build/commands/include.js +9 -7
  4. package/build/commands/remove.js +5 -5
  5. package/build/commands/run.js +15 -124
  6. package/build/commands/setup.js +3 -3
  7. package/build/commands/update.js +3 -3
  8. package/build/extensions/build-extension.js +7 -0
  9. package/build/toolbox/build/index.js +145 -0
  10. package/build/toolbox/setup/fontbm.js +7 -3
  11. package/build/toolbox/setup/linux.js +45 -7
  12. package/build/toolbox/setup/mac.js +51 -12
  13. package/build/toolbox/setup/moddable.js +35 -2
  14. package/build/toolbox/setup/types.js +3 -0
  15. package/build/toolbox/setup/windows.js +2 -2
  16. package/build/toolbox/update/esp32.js +3 -3
  17. package/build/toolbox/update/linux.js +92 -31
  18. package/build/toolbox/update/mac.js +80 -26
  19. package/build/types/commands/build.d.ts +4 -0
  20. package/build/types/extensions/build-extension.d.ts +3 -0
  21. package/build/types/toolbox/build/index.d.ts +13 -0
  22. package/build/types/toolbox/setup/linux.d.ts +2 -1
  23. package/build/types/toolbox/setup/mac.d.ts +2 -1
  24. package/build/types/toolbox/setup/moddable.d.ts +11 -0
  25. package/build/types/toolbox/setup/types.d.ts +3 -0
  26. package/build/types/toolbox/setup/windows.d.ts +2 -1
  27. package/build/types/toolbox/update/linux.d.ts +2 -1
  28. package/build/types/toolbox/update/mac.d.ts +2 -1
  29. package/build/types/types.d.ts +5 -2
  30. package/docs/public/make-scrollable-code-focusable.js +2 -2
  31. package/docs/public/run-hello-world.png +0 -0
  32. package/docs/src/components/HeadCommon.astro +0 -9
  33. package/docs/src/components/HeadSEO.astro +2 -8
  34. package/docs/src/components/Header/Header.astro +1 -1
  35. package/docs/src/components/LeftSidebar/LeftSidebar.astro +1 -1
  36. package/docs/src/config.ts +3 -0
  37. package/docs/src/languages.ts +6 -6
  38. package/docs/src/layouts/MainLayout.astro +1 -1
  39. package/docs/src/pages/en/features/run.md +29 -2
  40. package/docs/src/pages/en/features/setup.md +13 -1
  41. package/docs/src/pages/en/features/update.md +16 -0
  42. package/docs/src/pages/en/guide/00-prepare.md +50 -0
  43. package/docs/src/pages/en/guide/01-hello-console.md +62 -0
  44. package/docs/tsconfig.json +1 -0
  45. package/package.json +13 -9
package/bin/xs-dev CHANGED
@@ -1,6 +1,5 @@
1
1
  #!/usr/bin/env node
2
2
 
3
-
4
3
  /* tslint:disable */
5
4
  // check if we're running in dev mode
6
5
  var devMode = require('fs').existsSync(`${__dirname}/../src`)
@@ -13,9 +12,9 @@ if (wantsCompiled || !devMode) {
13
12
  } else {
14
13
  // this runs from the typescript source (for dev only)
15
14
  // hook into ts-node so we can run typescript on the fly
16
- require('ts-node').register({ project: `${__dirname}/../tsconfig.json` })
15
+ require('ts-node').register({
16
+ project: `${__dirname}/../tsconfig.json`,
17
+ })
17
18
  // run the CLI with the current process arguments
18
19
  require(`${__dirname}/../src/cli`).run(process.argv)
19
20
  }
20
-
21
-
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const os_1 = require("os");
4
+ const devices_1 = require("../toolbox/prompt/devices");
5
+ const command = {
6
+ name: 'build',
7
+ description: 'Build project for release to target device',
8
+ run: async ({ parameters, filesystem, build }) => {
9
+ var _a, _b, _c;
10
+ const currentPlatform = (0, os_1.type)().toLowerCase();
11
+ const { device = currentPlatform, port, example, listExamples = false, listDevices = false, mode = (_a = process.env.NODE_ENV) !== null && _a !== void 0 ? _a : 'development', output = '', deploy = false, } = parameters.options;
12
+ const targetPlatform = (_b = devices_1.DEVICE_ALIAS[device]) !== null && _b !== void 0 ? _b : device;
13
+ const projectPath = filesystem.resolve((_c = parameters.first) !== null && _c !== void 0 ? _c : '.');
14
+ await build({
15
+ port,
16
+ listExamples,
17
+ listDevices,
18
+ example,
19
+ targetPlatform,
20
+ projectPath,
21
+ mode,
22
+ deployStatus: deploy ? 'push' : 'none',
23
+ outputDir: output !== ''
24
+ ? filesystem.resolve(output)
25
+ : filesystem.resolve(String(process.env.MODDABLE), 'build'),
26
+ });
27
+ },
28
+ };
29
+ exports.default = command;
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tbWFuZHMvYnVpbGQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFDQSwyQkFBeUM7QUFFekMsdURBQXdEO0FBZXhELE1BQU0sT0FBTyxHQUFpQztJQUM1QyxJQUFJLEVBQUUsT0FBTztJQUNiLFdBQVcsRUFBRSw0Q0FBNEM7SUFDekQsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTs7UUFDL0MsTUFBTSxlQUFlLEdBQVcsSUFBQSxTQUFZLEdBQUUsQ0FBQyxXQUFXLEVBQVksQ0FBQTtRQUN0RSxNQUFNLEVBQ0osTUFBTSxHQUFHLGVBQWUsRUFDeEIsSUFBSSxFQUNKLE9BQU8sRUFDUCxZQUFZLEdBQUcsS0FBSyxFQUNwQixXQUFXLEdBQUcsS0FBSyxFQUNuQixJQUFJLEdBQUcsTUFBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQWlCLG1DQUFJLGFBQWEsRUFDdEQsTUFBTSxHQUFHLEVBQUUsRUFDWCxNQUFNLEdBQUcsS0FBSyxHQUNmLEdBQWlCLFVBQVUsQ0FBQyxPQUFPLENBQUE7UUFDcEMsTUFBTSxjQUFjLEdBQVcsTUFBQSxzQkFBWSxDQUFDLE1BQU0sQ0FBQyxtQ0FBSSxNQUFNLENBQUE7UUFDN0QsTUFBTSxXQUFXLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxNQUFBLFVBQVUsQ0FBQyxLQUFLLG1DQUFJLEdBQUcsQ0FBQyxDQUFBO1FBRS9ELE1BQU0sS0FBSyxDQUFDO1lBQ1YsSUFBSTtZQUNKLFlBQVk7WUFDWixXQUFXO1lBQ1gsT0FBTztZQUNQLGNBQWM7WUFDZCxXQUFXO1lBQ1gsSUFBSTtZQUNKLFlBQVksRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTTtZQUN0QyxTQUFTLEVBQ1AsTUFBTSxLQUFLLEVBQUU7Z0JBQ1gsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO2dCQUM1QixDQUFDLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxPQUFPLENBQUM7U0FDaEUsQ0FBQyxDQUFBO0lBQ0osQ0FBQztDQUNGLENBQUE7QUFFRCxrQkFBZSxPQUFPLENBQUEifQ==
@@ -13,7 +13,7 @@ const command = {
13
13
  }
14
14
  const modulesPath = filesystem.resolve(String(process.env.MODDABLE), 'modules');
15
15
  let moduleName = parameters.first;
16
- const { device = "" } = parameters.options;
16
+ const { device = '' } = parameters.options;
17
17
  if (moduleName === undefined ||
18
18
  filesystem.exists(filesystem.resolve(modulesPath, moduleName, 'manifest.json')) === false) {
19
19
  // prompt with choices from $MODDABLE/modules
@@ -21,13 +21,15 @@ const command = {
21
21
  const choices = modules !== undefined
22
22
  ? modules.map((mod) => (0, choices_1.collectChoicesFromTree)(mod)).flat()
23
23
  : [];
24
- const filtered = (moduleName !== undefined) ? choices.filter((mod) => mod.includes(String(moduleName))) : choices;
24
+ const filtered = moduleName !== undefined
25
+ ? choices.filter((mod) => mod.includes(String(moduleName)))
26
+ : choices;
25
27
  const { mod: selectedModule } = await prompt.ask([
26
28
  {
27
29
  type: 'autocomplete',
28
30
  name: 'mod',
29
31
  message: 'Here are the available modules:',
30
- choices: (filtered.length > 0) ? filtered : choices,
32
+ choices: filtered.length > 0 ? filtered : choices,
31
33
  },
32
34
  ]);
33
35
  moduleName = selectedModule;
@@ -38,14 +40,14 @@ const command = {
38
40
  var _a, _b;
39
41
  var _c;
40
42
  let manifest = manifestIn;
41
- if (device !== "") {
43
+ if (device !== '') {
42
44
  (_a = manifest.platforms) !== null && _a !== void 0 ? _a : (manifest.platforms = {});
43
45
  (_b = (_c = manifest.platforms)[device]) !== null && _b !== void 0 ? _b : (_c[device] = {});
44
46
  manifest = manifest.platforms[device];
45
47
  }
46
- if (!("include" in manifest))
48
+ if (!('include' in manifest))
47
49
  manifest.include = [];
48
- if (typeof manifest.include === "string")
50
+ if (typeof manifest.include === 'string')
49
51
  manifest.include = [manifest.include];
50
52
  if (manifest.include.includes(modulePath) === false) {
51
53
  manifest.include.push(modulePath);
@@ -58,4 +60,4 @@ const command = {
58
60
  },
59
61
  };
60
62
  exports.default = command;
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jbHVkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tYW5kcy9pbmNsdWRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EsdURBQWtFO0FBTWxFLE1BQU0sT0FBTyxHQUFtQjtJQUM5QixJQUFJLEVBQUUsU0FBUztJQUNmLFdBQVcsRUFBRSwyREFBMkQ7SUFDeEUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFOztRQUNqRSxNQUFNLFlBQVksR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxlQUFlLENBQUMsQ0FBQTtRQUN2RSxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssS0FBSyxFQUFFO1lBQzdDLEtBQUssQ0FBQyxLQUFLLENBQ1Qsc0ZBQXNGLENBQ3ZGLENBQUE7WUFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO1NBQ2hCO1FBQ0QsTUFBTSxXQUFXLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FDcEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQzVCLFNBQVMsQ0FDVixDQUFBO1FBQ0QsSUFBSSxVQUFVLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQTtRQUNqQyxNQUFNLEVBQ0osTUFBTSxHQUFHLEVBQUUsRUFDWixHQUFtQixVQUFVLENBQUMsT0FBTyxDQUFBO1FBRXRDLElBQ0UsVUFBVSxLQUFLLFNBQVM7WUFDeEIsVUFBVSxDQUFDLE1BQU0sQ0FDZixVQUFVLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxVQUFVLEVBQUUsZUFBZSxDQUFDLENBQzdELEtBQUssS0FBSyxFQUNYO1lBQ0EsNkNBQTZDO1lBQzdDLE1BQU0sT0FBTyxHQUFHLE1BQUEsVUFBVSxDQUFDLFdBQVcsQ0FBQyxX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
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jbHVkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tYW5kcy9pbmNsdWRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EsdURBQWtFO0FBTWxFLE1BQU0sT0FBTyxHQUFtQjtJQUM5QixJQUFJLEVBQUUsU0FBUztJQUNmLFdBQVcsRUFBRSwyREFBMkQ7SUFDeEUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFOztRQUNqRSxNQUFNLFlBQVksR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxlQUFlLENBQUMsQ0FBQTtRQUN2RSxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssS0FBSyxFQUFFO1lBQzdDLEtBQUssQ0FBQyxLQUFLLENBQ1Qsc0ZBQXNGLENBQ3ZGLENBQUE7WUFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO1NBQ2hCO1FBQ0QsTUFBTSxXQUFXLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FDcEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQzVCLFNBQVMsQ0FDVixDQUFBO1FBQ0QsSUFBSSxVQUFVLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQTtRQUNqQyxNQUFNLEVBQUUsTUFBTSxHQUFHLEVBQUUsRUFBRSxHQUFtQixVQUFVLENBQUMsT0FBTyxDQUFBO1FBRTFELElBQ0UsVUFBVSxLQUFLLFNBQVM7WUFDeEIsVUFBVSxDQUFDLE1BQU0sQ0FDZixVQUFVLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxVQUFVLEVBQUUsZUFBZSxDQUFDLENBQzdELEtBQUssS0FBSyxFQUNYO1lBQ0EsNkNBQTZDO1lBQzdDLE1BQU0sT0FBTyxHQUFHLE1BQUEsVUFBVSxDQUFDLFdBQVcsQ0FBQyxX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
@@ -10,7 +10,7 @@ const command = {
10
10
  process.exit(1);
11
11
  }
12
12
  const moduleName = parameters.first;
13
- const { device = "" } = parameters.options;
13
+ const { device = '' } = parameters.options;
14
14
  if (moduleName === undefined) {
15
15
  print.error('Module name is required');
16
16
  process.exit(1);
@@ -20,14 +20,14 @@ const command = {
20
20
  var _a, _b;
21
21
  var _c;
22
22
  let manifest = manifestIn;
23
- if (device !== "") {
23
+ if (device !== '') {
24
24
  (_a = manifest.platforms) !== null && _a !== void 0 ? _a : (manifest.platforms = {});
25
25
  (_b = (_c = manifest.platforms)[device]) !== null && _b !== void 0 ? _b : (_c[device] = {});
26
26
  manifest = manifest.platforms[device];
27
27
  }
28
- if (!("include" in manifest))
28
+ if (!('include' in manifest))
29
29
  return;
30
- if (typeof manifest.include === "string")
30
+ if (typeof manifest.include === 'string')
31
31
  manifest.include = [manifest.include];
32
32
  const length = manifest.include.length;
33
33
  manifest.include = manifest.include.filter((mod) => {
@@ -48,4 +48,4 @@ const command = {
48
48
  },
49
49
  };
50
50
  exports.default = command;
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1hbmRzL3JlbW92ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQU1BLE1BQU0sT0FBTyxHQUFtQjtJQUM5QixJQUFJLEVBQUUsUUFBUTtJQUNkLFdBQVcsRUFBRSxnRUFBZ0U7SUFDN0UsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUU7UUFDekQsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEVBQUUsZUFBZSxDQUFDLENBQUE7UUFDdkUsSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFLLEtBQUssRUFBRTtZQUM3QyxLQUFLLENBQUMsS0FBSyxDQUNULHNGQUFzRixDQUN2RixDQUFBO1lBQ0QsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtTQUNoQjtRQUNELE1BQU0sVUFBVSxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUE7UUFDbkMsTUFBTSxFQUNKLE1BQU0sR0FBRyxFQUFFLEVBQ1osR0FBa0IsVUFBVSxDQUFDLE9BQU8sQ0FBQTtRQUVyQyxJQUFJLFVBQVUsS0FBSyxTQUFTLEVBQUU7WUFDNUIsS0FBSyxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFBO1lBQ3RDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7U0FDaEI7UUFFRCxLQUFLLENBQUMsSUFBSSxDQUFDLGFBQWEsTUFBTSxDQUFDLFVBQVUsQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO1FBQ3JFLE1BQU0sUUFBUSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxVQUFVLEVBQUUsRUFBRTs7O1lBQ2pELElBQUssUUFBUSxHQUFHLFVBQVUsQ0FBQTtZQUMxQixJQUFJLE1BQU0sS0FBSyxFQUFFLEVBQUU7Z0JBQ2pCLE1BQUEsUUFBUSxDQUFDLFNBQVMsb0NBQWxCLFFBQVEsQ0FBQyxTQUFTLEdBQUssRUFBRSxFQUFBO2dCQUN6QixZQUFBLFFBQVEsQ0FBQyxTQUFTLEVBQUMsTUFBTSx3Q0FBTixNQUFNLElBQU0sRUFBRSxFQUFBO2dCQUNqQyxRQUFRLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQTthQUN0QztZQUVELElBQUksQ0FBQyxDQUFDLFNBQVMsSUFBSSxRQUFRLENBQUM7Z0JBQzFCLE9BQU07WUFFUixJQUFJLE9BQU8sUUFBUSxDQUFDLE9BQU8sS0FBSyxRQUFRO2dCQUN0QyxRQUFRLENBQUMsT0FBTyxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1lBRXZDLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFBO1lBQ3RDLFFBQVEsQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQ3hDLENBQUMsR0FBVyxFQUFFLEVBQUU7Z0JBQ2QsTUFBTSxNQUFNLEdBQUcsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFBO2dCQUN4QyxJQUFJLENBQUMsTUFBTTtvQkFDVCxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxFQUFFLENBQUMsQ0FBQTtnQkFFakMsT0FBTyxNQUFNLENBQUE7WUFDZixDQUFDLENBQ0YsQ0FBQTtZQUNELElBQUksTUFBTSxLQUFLLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTTtnQkFDcEMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLFVBQVUsa0NBQWtDLENBQUMsQ0FBQTtZQUUvRCxJQUFJLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUM7Z0JBQy9CLFFBQVEsQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQTtpQkFDbkMsSUFBSSxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDO2dCQUNwQyxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQUE7WUFFekIsT0FBTyxVQUFVLENBQUE7UUFDbkIsQ0FBQyxDQUFDLENBQUE7UUFDRixLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQ3hCLENBQUM7Q0FDRixDQUFBO0FBRUQsa0JBQWUsT0FBTyxDQUFBIn0=
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1hbmRzL3JlbW92ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQU1BLE1BQU0sT0FBTyxHQUFtQjtJQUM5QixJQUFJLEVBQUUsUUFBUTtJQUNkLFdBQVcsRUFBRSxnRUFBZ0U7SUFDN0UsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUU7UUFDekQsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEVBQUUsZUFBZSxDQUFDLENBQUE7UUFDdkUsSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFLLEtBQUssRUFBRTtZQUM3QyxLQUFLLENBQUMsS0FBSyxDQUNULHNGQUFzRixDQUN2RixDQUFBO1lBQ0QsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtTQUNoQjtRQUNELE1BQU0sVUFBVSxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUE7UUFDbkMsTUFBTSxFQUFFLE1BQU0sR0FBRyxFQUFFLEVBQUUsR0FBa0IsVUFBVSxDQUFDLE9BQU8sQ0FBQTtRQUV6RCxJQUFJLFVBQVUsS0FBSyxTQUFTLEVBQUU7WUFDNUIsS0FBSyxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFBO1lBQ3RDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7U0FDaEI7UUFFRCxLQUFLLENBQUMsSUFBSSxDQUFDLGFBQWEsTUFBTSxDQUFDLFVBQVUsQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO1FBQ3JFLE1BQU0sUUFBUSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxVQUFVLEVBQUUsRUFBRTs7O1lBQ2pELElBQUksUUFBUSxHQUFHLFVBQVUsQ0FBQTtZQUN6QixJQUFJLE1BQU0sS0FBSyxFQUFFLEVBQUU7Z0JBQ2pCLE1BQUEsUUFBUSxDQUFDLFNBQVMsb0NBQWxCLFFBQVEsQ0FBQyxTQUFTLEdBQUssRUFBRSxFQUFBO2dCQUN6QixZQUFBLFFBQVEsQ0FBQyxTQUFTLEVBQUMsTUFBTSx3Q0FBTixNQUFNLElBQU0sRUFBRSxFQUFBO2dCQUNqQyxRQUFRLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQTthQUN0QztZQUVELElBQUksQ0FBQyxDQUFDLFNBQVMsSUFBSSxRQUFRLENBQUM7Z0JBQUUsT0FBTTtZQUVwQyxJQUFJLE9BQU8sUUFBUSxDQUFDLE9BQU8sS0FBSyxRQUFRO2dCQUN0QyxRQUFRLENBQUMsT0FBTyxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1lBRXZDLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFBO1lBQ3RDLFFBQVEsQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFXLEVBQUUsRUFBRTtnQkFDekQsTUFBTSxNQUFNLEdBQUcsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFBO2dCQUN4QyxJQUFJLENBQUMsTUFBTTtvQkFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxFQUFFLENBQUMsQ0FBQTtnQkFFNUMsT0FBTyxNQUFNLENBQUE7WUFDZixDQUFDLENBQUMsQ0FBQTtZQUNGLElBQUksTUFBTSxLQUFLLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTTtnQkFDcEMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLFVBQVUsa0NBQWtDLENBQUMsQ0FBQTtZQUUvRCxJQUFJLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUM7Z0JBQUUsUUFBUSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFBO2lCQUNwRSxJQUFJLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUM7Z0JBQUUsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFBO1lBRS9ELE9BQU8sVUFBVSxDQUFBO1FBQ25CLENBQUMsQ0FBQyxDQUFBO1FBQ0YsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUN4QixDQUFDO0NBQ0YsQ0FBQTtBQUVELGtCQUFlLE9BQU8sQ0FBQSJ9
@@ -1,137 +1,28 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  const os_1 = require("os");
7
- const serve_handler_1 = __importDefault(require("serve-handler"));
8
- const http_1 = require("http");
9
- const choices_1 = require("../toolbox/prompt/choices");
10
4
  const devices_1 = require("../toolbox/prompt/devices");
11
5
  const command = {
12
6
  name: 'run',
13
7
  description: 'Build and launch project on target device or simulator',
14
- run: async ({ parameters, print, system, filesystem, prompt }) => {
8
+ run: async ({ parameters, filesystem, build }) => {
15
9
  var _a, _b, _c;
16
10
  const currentPlatform = (0, os_1.type)().toLowerCase();
17
- const { device = currentPlatform, port, example, listExamples = false, listDevices = false, } = parameters.options;
18
- let targetPlatform = (_a = devices_1.DEVICE_ALIAS[device]) !== null && _a !== void 0 ? _a : device;
19
- let projectPath = filesystem.resolve((_b = parameters.first) !== null && _b !== void 0 ? _b : '.');
20
- if (listDevices) {
21
- const choices = [
22
- 'esp',
23
- 'esp/moddable_zero',
24
- 'esp/moddable_one',
25
- 'esp/moddable_three',
26
- 'esp/nodemcu',
27
- 'esp32',
28
- 'esp32/moddable_two',
29
- 'esp32/nodemcu',
30
- 'esp32/m5stack',
31
- 'esp32/m5stack_core2',
32
- 'esp32/m5stick_fire',
33
- 'esp32/m5atom_echo',
34
- 'esp32/m5atom_lite',
35
- 'esp32/m5atom_matrix',
36
- 'esp32/m5paper',
37
- 'esp32/m5core_ink',
38
- 'esp32/heltec_wifi_kit_32',
39
- 'esp32/esp32_thing',
40
- 'esp32/esp32_thing_plus',
41
- 'esp32/wrover_kit',
42
- 'esp32/kaluga',
43
- 'esp32/saola_wroom',
44
- 'esp32/saola_wrover',
45
- 'wasm',
46
- 'pico',
47
- 'pico/ili9341',
48
- 'pico/pico_display',
49
- 'pico/pico_display_2',
50
- 'simulator/moddable_one',
51
- 'simulator/moddable_two',
52
- 'simulator/moddable_three',
53
- 'simulator/m5stickc',
54
- 'simulator/m5paper',
55
- 'simulator/nodemcu',
56
- 'simulator/pico_display',
57
- 'simulator/pico_display_2',
58
- ];
59
- const { device: selectedDevice } = await prompt.ask([
60
- {
61
- type: 'autocomplete',
62
- name: 'device',
63
- message: 'Here are the available target devices:',
64
- choices,
65
- },
66
- ]);
67
- if (selectedDevice !== '' && selectedDevice !== undefined) {
68
- targetPlatform = selectedDevice;
69
- }
70
- else {
71
- print.warning('Please select a target device to run');
72
- process.exit(0);
73
- }
74
- }
75
- if (listExamples) {
76
- const exampleProjectPath = filesystem.resolve(String(process.env.MODDABLE), 'examples');
77
- const examples = (_c = filesystem.inspectTree(exampleProjectPath)) === null || _c === void 0 ? void 0 : _c.children;
78
- const choices = examples !== undefined
79
- ? examples.map((example) => (0, choices_1.collectChoicesFromTree)(example)).flat()
80
- : [];
81
- const { example: selectedExample } = await prompt.ask([
82
- {
83
- type: 'autocomplete',
84
- name: 'example',
85
- message: 'Here are the available examples:',
86
- choices,
87
- },
88
- ]);
89
- if (selectedExample !== '' && selectedExample !== undefined) {
90
- print.info(`Running the example: xs-dev run --example ${selectedExample}`);
91
- projectPath = filesystem.resolve(exampleProjectPath, selectedExample);
92
- }
93
- else {
94
- print.warning('Please select an example to run.');
95
- process.exit(0);
96
- }
97
- }
98
- if (example !== undefined) {
99
- const exampleProjectPath = filesystem.resolve(String(process.env.MODDABLE), 'examples', example);
100
- if (filesystem.exists(exampleProjectPath) === false) {
101
- print.error('Example project does not exist.');
102
- print.info(`Lookup the available examples: xs-dev run --list-examples`);
103
- process.exit(1);
104
- }
105
- if (filesystem.exists(filesystem.resolve(exampleProjectPath, 'manifest.json')) === false) {
106
- print.error('Example project must contain a manifest.json.');
107
- print.info(`Lookup the available examples: xs-dev run --list-examples`);
108
- process.exit(1);
109
- }
110
- projectPath = exampleProjectPath;
111
- }
112
- if (port !== undefined) {
113
- process.env.UPLOAD_PORT = port;
114
- }
115
- const spinner = print.spin();
116
- spinner.start(`Building and running project ${projectPath} on ${targetPlatform}`);
117
- await system.exec(`mcconfig -d -m -p ${targetPlatform}`, {
118
- cwd: projectPath,
119
- process,
11
+ const { device = currentPlatform, port, example, listExamples = false, listDevices = false, mode = (_a = process.env.NODE_ENV) !== null && _a !== void 0 ? _a : 'development', output = filesystem.resolve(String(process.env.MODDABLE), 'build'), } = parameters.options;
12
+ const targetPlatform = (_b = devices_1.DEVICE_ALIAS[device]) !== null && _b !== void 0 ? _b : device;
13
+ const projectPath = filesystem.resolve((_c = parameters.first) !== null && _c !== void 0 ? _c : '.');
14
+ await build({
15
+ port,
16
+ listExamples,
17
+ listDevices,
18
+ example,
19
+ targetPlatform,
20
+ projectPath,
21
+ mode,
22
+ deployStatus: 'run',
23
+ outputDir: output,
120
24
  });
121
- spinner.stop();
122
- if (targetPlatform === 'wasm') {
123
- const buildName = String(projectPath.split('/').pop());
124
- const debugPath = filesystem.resolve(String(process.env.MODDABLE), 'build', 'bin', 'wasm', 'debug', buildName);
125
- (0, http_1.createServer)((req, res) => {
126
- void (0, serve_handler_1.default)(req, res, { public: debugPath });
127
- }).listen(8080, () => {
128
- print.info('Started server on port 8080, go to http://localhost:8080 in your browser to view the simulator');
129
- });
130
- }
131
- else {
132
- process.exit(0);
133
- }
134
25
  },
135
26
  };
136
27
  exports.default = command;
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1hbmRzL3J1bi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLDJCQUF5QztBQUN6QyxrRUFBbUM7QUFDbkMsK0JBQW1DO0FBRW5DLHVEQUFrRTtBQUNsRSx1REFBd0Q7QUFVeEQsTUFBTSxPQUFPLEdBQWlDO0lBQzVDLElBQUksRUFBRSxLQUFLO0lBQ1gsV0FBVyxFQUFFLHdEQUF3RDtJQUNyRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUU7O1FBQy9ELE1BQU0sZUFBZSxHQUFXLElBQUEsU0FBWSxHQUFFLENBQUMsV0FBVyxFQUFZLENBQUE7UUFDdEUsTUFBTSxFQUNKLE1BQU0sR0FBRyxlQUFlLEVBQ3hCLElBQUksRUFDSixPQUFPLEVBQ1AsWUFBWSxHQUFHLEtBQUssRUFDcEIsV0FBVyxHQUFHLEtBQUssR0FDcEIsR0FBZSxVQUFVLENBQUMsT0FBTyxDQUFBO1FBQ2xDLElBQUksY0FBYyxHQUFXLE1BQUEsc0JBQVksQ0FBQyxNQUFNLENBQUMsbUNBQUksTUFBTSxDQUFBO1FBQzNELElBQUksV0FBVyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBQSxVQUFVLENBQUMsS0FBSyxtQ0FBSSxHQUFHLENBQUMsQ0FBQTtRQUU3RCxJQUFJLFdBQVcsRUFBRTtZQUNmLE1BQU0sT0FBTyxHQUFHO2dCQUNkLEtBQUs7Z0JBQ0wsbUJBQW1CO2dCQUNuQixrQkFBa0I7Z0JBQ2xCLG9CQUFvQjtnQkFDcEIsYUFBYTtnQkFDYixPQUFPO2dCQUNQLG9CQUFvQjtnQkFDcEIsZUFBZTtnQkFDZixlQUFlO2dCQUNmLHFCQUFxQjtnQkFDckIsb0JBQW9CO2dCQUNwQixtQkFBbUI7Z0JBQ25CLG1CQUFtQjtnQkFDbkIscUJBQXFCO2dCQUNyQixlQUFlO2dCQUNmLGtC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
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1hbmRzL3J1bi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLDJCQUF5QztBQUV6Qyx1REFBd0Q7QUFjeEQsTUFBTSxPQUFPLEdBQWlDO0lBQzVDLElBQUksRUFBRSxLQUFLO0lBQ1gsV0FBVyxFQUFFLHdEQUF3RDtJQUNyRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFOztRQUMvQyxNQUFNLGVBQWUsR0FBVyxJQUFBLFNBQVksR0FBRSxDQUFDLFdBQVcsRUFBWSxDQUFBO1FBQ3RFLE1BQU0sRUFDSixNQUFNLEdBQUcsZUFBZSxFQUN4QixJQUFJLEVBQ0osT0FBTyxFQUNQLFlBQVksR0FBRyxLQUFLLEVBQ3BCLFdBQVcsR0FBRyxLQUFLLEVBQ25CLElBQUksR0FBRyxNQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBaUIsbUNBQUksYUFBYSxFQUN0RCxNQUFNLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxPQUFPLENBQUMsR0FDbkUsR0FBZSxVQUFVLENBQUMsT0FBTyxDQUFBO1FBQ2xDLE1BQU0sY0FBYyxHQUFXLE1BQUEsc0JBQVksQ0FBQyxNQUFNLENBQUMsbUNBQUksTUFBTSxDQUFBO1FBQzdELE1BQU0sV0FBVyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBQSxVQUFVLENBQUMsS0FBSyxtQ0FBSSxHQUFHLENBQUMsQ0FBQTtRQUUvRCxNQUFNLEtBQUssQ0FBQztZQUNWLElBQUk7WUFDSixZQUFZO1lBQ1osV0FBVztZQUNYLE9BQU87WUFDUCxjQUFjO1lBQ2QsV0FBVztZQUNYLElBQUk7WUFDSixZQUFZLEVBQUUsS0FBSztZQUNuQixTQUFTLEVBQUUsTUFBTTtTQUNsQixDQUFDLENBQUE7SUFDSixDQUFDO0NBQ0YsQ0FBQTtBQUVELGtCQUFlLE9BQU8sQ0FBQSJ9
@@ -11,7 +11,7 @@ const command = {
11
11
  description: 'Download and build Moddable tooling for various platform targets',
12
12
  run: async ({ parameters, setup, prompt, print }) => {
13
13
  const currentPlatform = (0, os_1.type)().toLowerCase();
14
- const { device, listDevices = false, tool, } = parameters.options;
14
+ const { device, listDevices = false, tool, targetBranch = 'latest-release', } = parameters.options;
15
15
  let target = device !== null && device !== void 0 ? device : currentPlatform;
16
16
  if (device === undefined && listDevices) {
17
17
  const choices = [
@@ -45,8 +45,8 @@ const command = {
45
45
  await (0, fontbm_1.default)();
46
46
  return;
47
47
  }
48
- await setup[target]();
48
+ await setup[target]({ targetBranch });
49
49
  },
50
50
  };
51
51
  exports.default = command;
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tbWFuZHMvc2V0dXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSwyQkFBeUM7QUFFekMscUVBQWlEO0FBQ2pELHVEQUF3RDtBQVF4RCxNQUFNLE9BQU8sR0FBaUM7SUFDNUMsSUFBSSxFQUFFLE9BQU87SUFDYixXQUFXLEVBQ1Qsa0VBQWtFO0lBQ3BFLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO1FBQ2xELE1BQU0sZUFBZSxHQUFXLElBQUEsU0FBWSxHQUFFLENBQUMsV0FBVyxFQUFZLENBQUE7UUFDdEUsTUFBTSxFQUNKLE1BQU0sRUFDTixXQUFXLEdBQUcsS0FBSyxFQUNuQixJQUFJLEdBQ0wsR0FBaUIsVUFBVSxDQUFDLE9BQU8sQ0FBQTtRQUNwQyxJQUFJLE1BQU0sR0FBVyxNQUFNLGFBQU4sTUFBTSxjQUFOLE1BQU0sR0FBSSxlQUFlLENBQUE7UUFFOUMsSUFBSSxNQUFNLEtBQUssU0FBUyxJQUFJLFdBQVcsRUFBRTtZQUN2QyxNQUFNLE9BQU8sR0FBRztnQkFDZCxTQUFTO2dCQUNULE9BQU87Z0JBQ1AsTUFBTTtnQkFDTixNQUFNO2dCQUNOLHNCQUFZLENBQUMsZUFBZSxDQUFDO2FBQzlCLENBQUE7WUFDRCxNQUFNLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQztnQkFDbEQ7b0JBQ0UsSUFBSSxFQUFFLGNBQWM7b0JBQ3BCLElBQUksRUFBRSxRQUFRO29CQUNkLE9BQU8sRUFBRSx3Q0FBd0M7b0JBQ2pELE9BQU87aUJBQ1I7YUFDRixDQUFDLENBQUE7WUFFRixJQUFJLGNBQWMsS0FBSyxFQUFFLElBQUksY0FBYyxLQUFLLFNBQVMsRUFBRTtnQkFDekQsTUFBTSxHQUFHLGNBQXdCLENBQUE7YUFDbEM7aUJBQU07Z0JBQ0wsS0FBSyxDQUFDLE9BQU8sQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFBO2dCQUNyRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO2FBQ2hCO1NBQ0Y7UUFFRCxJQUFJLElBQUksS0FBSyxTQUFTLEVBQUU7WUFDdEIsSUFBSSxJQUFJLEtBQUssUUFBUSxFQUFFO2dCQUNyQixLQUFLLENBQUMsT0FBTyxDQUFDLGdCQUFnQixJQUFJLEVBQUUsQ0FBQyxDQUFBO2dCQUNyQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO2FBQ2hCO1lBQ0QsTUFBTSxJQUFBLGdCQUFXLEdBQUUsQ0FBQTtZQUNuQixPQUFNO1NBQ1A7UUFFRCxNQUFNLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFBO0lBQ3ZCLENBQUM7Q0FDRixDQUFBO0FBRUQsa0JBQWUsT0FBTyxDQUFBIn0=
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tbWFuZHMvc2V0dXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSwyQkFBeUM7QUFFekMscUVBQWlEO0FBQ2pELHVEQUF3RDtBQVN4RCxNQUFNLE9BQU8sR0FBaUM7SUFDNUMsSUFBSSxFQUFFLE9BQU87SUFDYixXQUFXLEVBQ1Qsa0VBQWtFO0lBQ3BFLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO1FBQ2xELE1BQU0sZUFBZSxHQUFXLElBQUEsU0FBWSxHQUFFLENBQUMsV0FBVyxFQUFZLENBQUE7UUFDdEUsTUFBTSxFQUNKLE1BQU0sRUFDTixXQUFXLEdBQUcsS0FBSyxFQUNuQixJQUFJLEVBQ0osWUFBWSxHQUFHLGdCQUFnQixHQUNoQyxHQUFpQixVQUFVLENBQUMsT0FBTyxDQUFBO1FBQ3BDLElBQUksTUFBTSxHQUFXLE1BQU0sYUFBTixNQUFNLGNBQU4sTUFBTSxHQUFJLGVBQWUsQ0FBQTtRQUU5QyxJQUFJLE1BQU0sS0FBSyxTQUFTLElBQUksV0FBVyxFQUFFO1lBQ3ZDLE1BQU0sT0FBTyxHQUFHO2dCQUNkLFNBQVM7Z0JBQ1QsT0FBTztnQkFDUCxNQUFNO2dCQUNOLE1BQU07Z0JBQ04sc0JBQVksQ0FBQyxlQUFlLENBQUM7YUFDOUIsQ0FBQTtZQUNELE1BQU0sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDO2dCQUNsRDtvQkFDRSxJQUFJLEVBQUUsY0FBYztvQkFDcEIsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsT0FBTyxFQUFFLHdDQUF3QztvQkFDakQsT0FBTztpQkFDUjthQUNGLENBQUMsQ0FBQTtZQUVGLElBQUksY0FBYyxLQUFLLEVBQUUsSUFBSSxjQUFjLEtBQUssU0FBUyxFQUFFO2dCQUN6RCxNQUFNLEdBQUcsY0FBd0IsQ0FBQTthQUNsQztpQkFBTTtnQkFDTCxLQUFLLENBQUMsT0FBTyxDQUFDLHNDQUFzQyxDQUFDLENBQUE7Z0JBQ3JELE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7YUFDaEI7U0FDRjtRQUVELElBQUksSUFBSSxLQUFLLFNBQVMsRUFBRTtZQUN0QixJQUFJLElBQUksS0FBSyxRQUFRLEVBQUU7Z0JBQ3JCLEtBQUssQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLElBQUksRUFBRSxDQUFDLENBQUE7Z0JBQ3JDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7YUFDaEI7WUFDRCxNQUFNLElBQUEsZ0JBQVcsR0FBRSxDQUFBO1lBQ25CLE9BQU07U0FDUDtRQUVELE1BQU0sS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQTtJQUN2QyxDQUFDO0NBQ0YsQ0FBQTtBQUVELGtCQUFlLE9BQU8sQ0FBQSJ9
@@ -6,9 +6,9 @@ const command = {
6
6
  description: 'Check and update Moddable tooling for various platform targets',
7
7
  run: async ({ parameters, update }) => {
8
8
  const currentPlatform = (0, os_1.type)().toLowerCase();
9
- const { device = currentPlatform } = parameters.options;
10
- await update[device]();
9
+ const { device = currentPlatform, targetBranch = 'latest-release', } = parameters.options;
10
+ await update[device]({ targetBranch });
11
11
  },
12
12
  };
13
13
  exports.default = command;
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1hbmRzL3VwZGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLDJCQUF5QztBQU96QyxNQUFNLE9BQU8sR0FBaUM7SUFDNUMsSUFBSSxFQUFFLFFBQVE7SUFDZCxXQUFXLEVBQUUsZ0VBQWdFO0lBQzdFLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRTtRQUNwQyxNQUFNLGVBQWUsR0FBVyxJQUFBLFNBQVksR0FBRSxDQUFDLFdBQVcsRUFBWSxDQUFBO1FBQ3RFLE1BQU0sRUFBRSxNQUFNLEdBQUcsZUFBZSxFQUFFLEdBQWtCLFVBQVUsQ0FBQyxPQUFPLENBQUE7UUFDdEUsTUFBTSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQTtJQUN4QixDQUFDO0NBQ0YsQ0FBQTtBQUVELGtCQUFlLE9BQU8sQ0FBQSJ9
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1hbmRzL3VwZGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLDJCQUF5QztBQVF6QyxNQUFNLE9BQU8sR0FBaUM7SUFDNUMsSUFBSSxFQUFFLFFBQVE7SUFDZCxXQUFXLEVBQUUsZ0VBQWdFO0lBQzdFLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRTtRQUNwQyxNQUFNLGVBQWUsR0FBVyxJQUFBLFNBQVksR0FBRSxDQUFDLFdBQVcsRUFBWSxDQUFBO1FBQ3RFLE1BQU0sRUFDSixNQUFNLEdBQUcsZUFBZSxFQUN4QixZQUFZLEdBQUcsZ0JBQWdCLEdBQ2hDLEdBQWtCLFVBQVUsQ0FBQyxPQUFPLENBQUE7UUFDckMsTUFBTSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFBO0lBQ3hDLENBQUM7Q0FDRixDQUFBO0FBRUQsa0JBQWUsT0FBTyxDQUFBIn0=
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const index_1 = require("../toolbox/build/index");
4
+ exports.default = async (toolbox) => {
5
+ toolbox.build = index_1.build;
6
+ };
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtZXh0ZW5zaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V4dGVuc2lvbnMvYnVpbGQtZXh0ZW5zaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0Esa0RBQThDO0FBRTlDLGtCQUFlLEtBQUssRUFBRSxPQUFxQixFQUFpQixFQUFFO0lBQzVELE9BQU8sQ0FBQyxLQUFLLEdBQUcsYUFBSyxDQUFBO0FBQ3ZCLENBQUMsQ0FBQSJ9
@@ -0,0 +1,145 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.build = void 0;
7
+ const serve_handler_1 = __importDefault(require("serve-handler"));
8
+ const http_1 = require("http");
9
+ const gluegun_1 = require("gluegun");
10
+ const choices_1 = require("../prompt/choices");
11
+ async function build({ listDevices, port, example, listExamples, projectPath, targetPlatform, mode, deployStatus, outputDir, }) {
12
+ var _a;
13
+ if (listDevices) {
14
+ const choices = [
15
+ 'esp',
16
+ 'esp/moddable_zero',
17
+ 'esp/moddable_one',
18
+ 'esp/moddable_three',
19
+ 'esp/nodemcu',
20
+ 'esp32',
21
+ 'esp32/moddable_two',
22
+ 'esp32/nodemcu',
23
+ 'esp32/m5stack',
24
+ 'esp32/m5stack_core2',
25
+ 'esp32/m5stick_fire',
26
+ 'esp32/m5atom_echo',
27
+ 'esp32/m5atom_lite',
28
+ 'esp32/m5atom_matrix',
29
+ 'esp32/m5paper',
30
+ 'esp32/m5core_ink',
31
+ 'esp32/heltec_wifi_kit_32',
32
+ 'esp32/esp32_thing',
33
+ 'esp32/esp32_thing_plus',
34
+ 'esp32/wrover_kit',
35
+ 'esp32/kaluga',
36
+ 'esp32/saola_wroom',
37
+ 'esp32/saola_wrover',
38
+ 'wasm',
39
+ 'pico',
40
+ 'pico/ili9341',
41
+ 'pico/pico_display',
42
+ 'pico/pico_display_2',
43
+ 'simulator/moddable_one',
44
+ 'simulator/moddable_two',
45
+ 'simulator/moddable_three',
46
+ 'simulator/m5stickc',
47
+ 'simulator/m5paper',
48
+ 'simulator/nodemcu',
49
+ 'simulator/pico_display',
50
+ 'simulator/pico_display_2',
51
+ ];
52
+ const { device: selectedDevice } = await gluegun_1.prompt.ask([
53
+ {
54
+ type: 'autocomplete',
55
+ name: 'device',
56
+ message: 'Here are the available target devices:',
57
+ choices,
58
+ },
59
+ ]);
60
+ if (selectedDevice !== '' && selectedDevice !== undefined) {
61
+ targetPlatform = selectedDevice;
62
+ }
63
+ else {
64
+ gluegun_1.print.warning('Please select a target device to run');
65
+ process.exit(0);
66
+ }
67
+ }
68
+ if (listExamples) {
69
+ const exampleProjectPath = gluegun_1.filesystem.resolve(String(process.env.MODDABLE), 'examples');
70
+ const examples = (_a = gluegun_1.filesystem.inspectTree(exampleProjectPath)) === null || _a === void 0 ? void 0 : _a.children;
71
+ const choices = examples !== undefined
72
+ ? examples.map((example) => (0, choices_1.collectChoicesFromTree)(example)).flat()
73
+ : [];
74
+ const { example: selectedExample } = await gluegun_1.prompt.ask([
75
+ {
76
+ type: 'autocomplete',
77
+ name: 'example',
78
+ message: 'Here are the available examples:',
79
+ choices,
80
+ },
81
+ ]);
82
+ if (selectedExample !== '' && selectedExample !== undefined) {
83
+ gluegun_1.print.info(`Running the example: xs-dev run --example ${selectedExample}`);
84
+ projectPath = gluegun_1.filesystem.resolve(exampleProjectPath, selectedExample);
85
+ }
86
+ else {
87
+ gluegun_1.print.warning('Please select an example to run.');
88
+ process.exit(0);
89
+ }
90
+ }
91
+ if (example !== undefined) {
92
+ const exampleProjectPath = gluegun_1.filesystem.resolve(String(process.env.MODDABLE), 'examples', example);
93
+ if (gluegun_1.filesystem.exists(exampleProjectPath) === false) {
94
+ gluegun_1.print.error('Example project does not exist.');
95
+ gluegun_1.print.info(`Lookup the available examples: xs-dev run --list-examples`);
96
+ process.exit(1);
97
+ }
98
+ if (gluegun_1.filesystem.exists(gluegun_1.filesystem.resolve(exampleProjectPath, 'manifest.json')) === false) {
99
+ gluegun_1.print.error('Example project must contain a manifest.json.');
100
+ gluegun_1.print.info(`Lookup the available examples: xs-dev run --list-examples`);
101
+ process.exit(1);
102
+ }
103
+ projectPath = exampleProjectPath;
104
+ }
105
+ if (port !== undefined) {
106
+ process.env.UPLOAD_PORT = port;
107
+ }
108
+ const spinner = gluegun_1.print.spin();
109
+ spinner.start(`Building${deployStatus !== 'none' ? ' and deploying project' : ''} ${projectPath} on ${targetPlatform}`);
110
+ const configArgs = [
111
+ '-m',
112
+ `-p ${targetPlatform}`,
113
+ `-t ${deployStatus === 'run' ? 'all' : 'build'}`,
114
+ `-o ${outputDir}`,
115
+ ];
116
+ if (mode === 'development')
117
+ configArgs.push('-d');
118
+ if (mode === 'production')
119
+ configArgs.push('-i');
120
+ await gluegun_1.system.exec(`mcconfig ${configArgs.join(' ')}`, {
121
+ cwd: projectPath,
122
+ process,
123
+ });
124
+ if (deployStatus === 'push') {
125
+ await gluegun_1.system.exec(`mcconfig -t deploy -p ${targetPlatform} -o ${outputDir}`, {
126
+ cwd: projectPath,
127
+ process,
128
+ });
129
+ }
130
+ spinner.stop();
131
+ if (deployStatus !== 'none' && targetPlatform === 'wasm') {
132
+ const buildName = String(projectPath.split('/').pop());
133
+ const debugPath = gluegun_1.filesystem.resolve(String(process.env.MODDABLE), 'build', 'bin', 'wasm', 'debug', buildName);
134
+ (0, http_1.createServer)((req, res) => {
135
+ void (0, serve_handler_1.default)(req, res, { public: debugPath });
136
+ }).listen(8080, () => {
137
+ gluegun_1.print.info('Started server on port 8080, go to http://localhost:8080 in your browser to view the simulator');
138
+ });
139
+ }
140
+ else {
141
+ process.exit(0);
142
+ }
143
+ }
144
+ exports.build = build;
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdG9vbGJveC9idWlsZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxrRUFBbUM7QUFDbkMsK0JBQW1DO0FBQ25DLHFDQUEyRDtBQUMzRCwrQ0FBMEQ7QUFnQm5ELEtBQUssVUFBVSxLQUFLLENBQUMsRUFDMUIsV0FBVyxFQUNYLElBQUksRUFDSixPQUFPLEVBQ1AsWUFBWSxFQUNaLFdBQVcsRUFDWCxjQUFjLEVBQ2QsSUFBSSxFQUNKLFlBQVksRUFDWixTQUFTLEdBQ0M7O0lBQ1YsSUFBSSxXQUFXLEVBQUU7UUFDZixNQUFNLE9BQU8sR0FBRztZQUNkLEtBQUs7WUFDTCxtQkFBbUI7WUFDbkIsa0JBQWtCO1lBQ2xCLG9CQUFvQjtZQUNwQixhQUFhO1lBQ2IsT0FBTztZQUNQLG9CQUFvQjtZQUNwQixlQUFlO1lBQ2YsZUFBZTtZQUNmLHFCQUFxQjtZQUNyQixvQkFBb0I7WUFDcEIsbUJBQW1CO1lBQ25CLG1CQUFtQjtZQUNuQixxQkFBcUI7WUFDckIsZUFBZTtZQUNmLGtCQUFrQjtZQUNsQiwwQkFBMEI7WUFDMUIsbUJBQW1CO1lBQ25CLHdCQUF3QjtZQUN4QixrQkFBa0I7WUFDbEIsY0FBYztZQUNkLG1CQUFtQjtZQUNuQixvQkFBb0I7WUFDcEIsTUFBTTtZQUNOLE1BQU07WUFDTixjQUFjO1lBQ2QsbUJBQW1CO1lBQ25CLHFCQUFxQjtZQUNyQix3QkFBd0I7WUFDeEIsd0JBQXdCO1lBQ3hCLDBCQUEwQjtZQUMxQixvQkFBb0I7WUFDcEIsbUJBQW1CO1lBQ25CLG1CQUFtQjtZQUNuQix3QkFBd0I7WUFDeEIsMEJBQTBCO1NBQzNCLENBQUE7UUFDRCxNQUFNLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxHQUFHLE1BQU0sZ0JBQU0sQ0FBQyxHQUFHLENBQUM7WUFDbEQ7Z0JBQ0UsSUFBSSxFQUFFLGNBQWM7Z0JBQ3BCLElBQUksRUFBRSxR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
@@ -29,7 +29,9 @@ async function default_1() {
29
29
  }
30
30
  if (OS === 'linux') {
31
31
  spinner.start('CMake required, installing with apt');
32
- await (0, exec_1.execWithSudo)('apt-get install --yes build-essential cmake', { stdout: process.stdout });
32
+ await (0, exec_1.execWithSudo)('apt-get install --yes build-essential cmake', {
33
+ stdout: process.stdout,
34
+ });
33
35
  spinner.succeed();
34
36
  }
35
37
  }
@@ -43,7 +45,9 @@ async function default_1() {
43
45
  }
44
46
  if (OS === 'linux') {
45
47
  spinner.start('Installing libfreetype-dev');
46
- await (0, exec_1.execWithSudo)('apt-get install --yes libfreetype-dev', { stdout: process.stdout });
48
+ await (0, exec_1.execWithSudo)('apt-get install --yes libfreetype-dev', {
49
+ stdout: process.stdout,
50
+ });
47
51
  spinner.succeed();
48
52
  }
49
53
  // 3. clone fontbm
@@ -71,4 +75,4 @@ async function default_1() {
71
75
  spinner.succeed('fontbm successfully set up!');
72
76
  }
73
77
  exports.default = default_1;
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udGJtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rvb2xib3gvc2V0dXAvZm9udGJtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEscUNBQW1EO0FBQ25ELDJDQUE0RDtBQUM1RCxnRUFBdUM7QUFDdkMsMkJBQXlDO0FBQ3pDLHFDQUE4QjtBQUM5Qix5Q0FBNkM7QUFFOUIsS0FBSztJQUNsQixNQUFNLE9BQU8sR0FBRyxlQUFLLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDNUIsT0FBTyxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO0lBRW5DLE1BQU0sRUFBRSxHQUFHLElBQUEsU0FBWSxHQUFFLENBQUMsV0FBVyxFQUFFLENBQUE7SUFDdkMsSUFBSSxFQUFFLEtBQUssUUFBUSxJQUFJLEVBQUUsS0FBSyxPQUFPLEVBQUU7UUFDckMsZUFBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLENBQUMsQ0FBQTtRQUN2QyxJQUFBLGNBQUksRUFBQyxDQUFDLENBQUMsQ0FBQTtLQUNSO0lBRUQsTUFBTSxXQUFXLEdBQUcsZ0RBQWdELENBQUE7SUFDcEUsTUFBTSxVQUFVLEdBQUcsb0JBQVUsQ0FBQyxPQUFPLENBQUMsdUJBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQTtJQUM1RCxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUE7SUFFM0IsbUJBQW1CO0lBQ25CLElBQUksZ0JBQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFO1FBQ2xDLElBQUksRUFBRSxLQUFLLFFBQVEsRUFBRTtZQUNuQixPQUFPLENBQUMsS0FBSyxDQUFDLDBDQUEwQyxDQUFDLENBQUE7WUFDekQsTUFBTSxnQkFBTSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO1lBQ3ZDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtTQUNyQjtRQUNELElBQUksRUFBRSxLQUFLLE9BQU8sRUFBRTtZQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMscUNBQXFDLENBQUMsQ0FBQTtZQUNwRCxNQUFNLElBQUEsbUJBQVksRUFDaEIsNkNBQTZDLEVBQzdDLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FDM0IsQ0FBQTtZQUNELE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtTQUNsQjtLQUNGO0lBRUQsc0JBQXNCO0lBQ3RCLElBQUksRUFBRSxLQUFLLFFBQVEsRUFBRTtRQUNuQixJQUFJLGdCQUFNLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLEtBQUssSUFBSSxFQUFFO1lBQzVDLE9BQU8sQ0FBQyxLQUFLLENBQUMsNkNBQTZDLENBQUMsQ0FBQTtZQUM1RCxNQUFNLGdCQUFNLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUE7WUFDMUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFBO1NBQ2xCO0tBQ0Y7SUFDRCxJQUFJLEVBQUUsS0FBSyxPQUFPLEVBQUU7UUFDbEIsT0FBTyxDQUFDLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFBO1FBQzNDLE1BQU0sSUFBQSxtQkFBWSxFQUNoQix1Q0FBdUMsRUFDdkMsRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUMzQixDQUFBO1FBQ0QsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFBO0tBQ2xCO0lBRUQsa0JBQWtCO0lBQ2xCLElBQUksb0JBQVUsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQUssS0FBSyxFQUFFO1FBQzNDLE9BQU8sQ0FBQyxLQUFLLENBQUMsNkJBQTZCLFVBQVUsSUFBSSxDQUFDLENBQUE7UUFDMUQsTUFBTSxnQkFBTSxDQUFDLEtBQUssQ0FDaEIsYUFBYSxXQUFXLGFBQWEsVUFBVSxJQUFJLFVBQVUsRUFBRSxDQUNoRSxDQUFBO1FBQ0QsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFBO0tBQ2xCO0lBRUQsa0JBQWtCO0lBQ2xCLE9BQU8sQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUNoQyxNQUFNLGdCQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtRQUMzQixHQUFHLEVBQUUsVUFBVTtRQUNmLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtLQUN2QixDQUFDLENBQUE7SUFDRixNQUFNLGdCQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtRQUN4QixHQUFHLEVBQUUsVUFBVTtRQUNmLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtLQUN2QixDQUFDLENBQUE7SUFDRixPQUFPLENBQUMsT0FBTyxFQUFFLENBQUE7SUFFakIscUNBQXFDO0lBQ3JDLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFO1FBQ3BDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLEdBQUcsVUFBVSxTQUFTLENBQUE7UUFDM0MsTUFBTSxJQUFBLGdCQUFNLEVBQUMsNkJBQWlCLEVBQUUsaUJBQWlCLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQTtLQUN2RTtJQUVELE9BQU8sQ0FBQyxPQUFPLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtBQUNoRCxDQUFDO0FBNUVELDRCQTRFQyJ9
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udGJtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rvb2xib3gvc2V0dXAvZm9udGJtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEscUNBQW1EO0FBQ25ELDJDQUE0RDtBQUM1RCxnRUFBdUM7QUFDdkMsMkJBQXlDO0FBQ3pDLHFDQUE4QjtBQUM5Qix5Q0FBNkM7QUFFOUIsS0FBSztJQUNsQixNQUFNLE9BQU8sR0FBRyxlQUFLLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDNUIsT0FBTyxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO0lBRW5DLE1BQU0sRUFBRSxHQUFHLElBQUEsU0FBWSxHQUFFLENBQUMsV0FBVyxFQUFFLENBQUE7SUFDdkMsSUFBSSxFQUFFLEtBQUssUUFBUSxJQUFJLEVBQUUsS0FBSyxPQUFPLEVBQUU7UUFDckMsZUFBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLENBQUMsQ0FBQTtRQUN2QyxJQUFBLGNBQUksRUFBQyxDQUFDLENBQUMsQ0FBQTtLQUNSO0lBRUQsTUFBTSxXQUFXLEdBQUcsZ0RBQWdELENBQUE7SUFDcEUsTUFBTSxVQUFVLEdBQUcsb0JBQVUsQ0FBQyxPQUFPLENBQUMsdUJBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQTtJQUM1RCxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUE7SUFFM0IsbUJBQW1CO0lBQ25CLElBQUksZ0JBQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFO1FBQ2xDLElBQUksRUFBRSxLQUFLLFFBQVEsRUFBRTtZQUNuQixPQUFPLENBQUMsS0FBSyxDQUFDLDBDQUEwQyxDQUFDLENBQUE7WUFDekQsTUFBTSxnQkFBTSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO1lBQ3ZDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtTQUNsQjtRQUNELElBQUksRUFBRSxLQUFLLE9BQU8sRUFBRTtZQUNsQixPQUFPLENBQUMsS0FBSyxDQUFDLHFDQUFxQyxDQUFDLENBQUE7WUFDcEQsTUFBTSxJQUFBLG1CQUFZLEVBQUMsNkNBQTZDLEVBQUU7Z0JBQ2hFLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTthQUN2QixDQUFDLENBQUE7WUFDRixPQUFPLENBQUMsT0FBTyxFQUFFLENBQUE7U0FDbEI7S0FDRjtJQUVELHNCQUFzQjtJQUN0QixJQUFJLEVBQUUsS0FBSyxRQUFRLEVBQUU7UUFDbkIsSUFBSSxnQkFBTSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLElBQUksRUFBRTtZQUM1QyxPQUFPLENBQUMsS0FBSyxDQUFDLDZDQUE2QyxDQUFDLENBQUE7WUFDNUQsTUFBTSxnQkFBTSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO1lBQzFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtTQUNsQjtLQUNGO0lBQ0QsSUFBSSxFQUFFLEtBQUssT0FBTyxFQUFFO1FBQ2xCLE9BQU8sQ0FBQyxLQUFLLENBQUMsNEJBQTRCLENBQUMsQ0FBQTtRQUMzQyxNQUFNLElBQUEsbUJBQVksRUFBQyx1Q0FBdUMsRUFBRTtZQUMxRCxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU07U0FDdkIsQ0FBQyxDQUFBO1FBQ0YsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFBO0tBQ2xCO0lBRUQsa0JBQWtCO0lBQ2xCLElBQUksb0JBQVUsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQUssS0FBSyxFQUFFO1FBQzNDLE9BQU8sQ0FBQyxLQUFLLENBQUMsNkJBQTZCLFVBQVUsSUFBSSxDQUFDLENBQUE7UUFDMUQsTUFBTSxnQkFBTSxDQUFDLEtBQUssQ0FDaEIsYUFBYSxXQUFXLGFBQWEsVUFBVSxJQUFJLFVBQVUsRUFBRSxDQUNoRSxDQUFBO1FBQ0QsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFBO0tBQ2xCO0lBRUQsa0JBQWtCO0lBQ2xCLE9BQU8sQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUNoQyxNQUFNLGdCQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtRQUMzQixHQUFHLEVBQUUsVUFBVTtRQUNmLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtLQUN2QixDQUFDLENBQUE7SUFDRixNQUFNLGdCQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtRQUN4QixHQUFHLEVBQUUsVUFBVTtRQUNmLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtLQUN2QixDQUFDLENBQUE7SUFDRixPQUFPLENBQUMsT0FBTyxFQUFFLENBQUE7SUFFakIscUNBQXFDO0lBQ3JDLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFO1FBQ3BDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLEdBQUcsVUFBVSxTQUFTLENBQUE7UUFDM0MsTUFBTSxJQUFBLGdCQUFNLEVBQUMsNkJBQWlCLEVBQUUsaUJBQWlCLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQTtLQUN2RTtJQUVELE9BQU8sQ0FBQyxPQUFPLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtBQUNoRCxDQUFDO0FBMUVELDRCQTBFQyJ9