xs-dev 0.32.6 → 0.32.7

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 (156) hide show
  1. package/build/package.json +128 -0
  2. package/build/src/cli.js +71 -0
  3. package/build/src/commands/build.js +135 -0
  4. package/build/src/commands/clean.js +123 -0
  5. package/build/src/commands/debug.js +112 -0
  6. package/build/src/commands/doctor.js +100 -0
  7. package/build/src/commands/include.js +93 -0
  8. package/build/src/commands/init.js +132 -0
  9. package/build/src/commands/remove.js +82 -0
  10. package/build/src/commands/run.js +135 -0
  11. package/build/src/commands/scan.js +74 -0
  12. package/build/src/commands/setup.js +128 -0
  13. package/build/src/commands/teardown.js +41 -0
  14. package/build/src/commands/update.js +57 -0
  15. package/build/{commands → src/commands}/xs-dev.js +1 -1
  16. package/build/{extensions → src/extensions}/build-extension.js +1 -1
  17. package/build/{extensions → src/extensions}/setup-extension.js +1 -1
  18. package/build/{extensions → src/extensions}/update-extension.js +1 -1
  19. package/build/src/toolbox/build/index.js +245 -0
  20. package/build/{toolbox → src/toolbox}/patching/upsert.js +1 -1
  21. package/build/src/toolbox/prompt/choices.js +14 -0
  22. package/build/{toolbox → src/toolbox}/prompt/devices.js +1 -1
  23. package/build/src/toolbox/scan/parse.js +85 -0
  24. package/build/src/toolbox/setup/constants.js +35 -0
  25. package/build/src/toolbox/setup/ejectfix.js +61 -0
  26. package/build/{toolbox → src/toolbox}/setup/esp32/linux.js +1 -1
  27. package/build/src/toolbox/setup/esp32/mac.js +60 -0
  28. package/build/{toolbox → src/toolbox}/setup/esp32/windows.js +2 -3
  29. package/build/{toolbox → src/toolbox}/setup/esp32.js +3 -4
  30. package/build/{toolbox → src/toolbox}/setup/esp8266/linux.js +1 -1
  31. package/build/src/toolbox/setup/esp8266/mac.js +41 -0
  32. package/build/{toolbox → src/toolbox}/setup/esp8266/windows.js +1 -1
  33. package/build/{toolbox → src/toolbox}/setup/esp8266.js +1 -1
  34. package/build/{toolbox → src/toolbox}/setup/homebrew.js +1 -1
  35. package/build/{toolbox → src/toolbox}/setup/linux.js +2 -3
  36. package/build/{toolbox → src/toolbox}/setup/mac.js +2 -3
  37. package/build/src/toolbox/setup/moddable.js +84 -0
  38. package/build/{toolbox → src/toolbox}/setup/nrf52/windows.js +1 -1
  39. package/build/{toolbox → src/toolbox}/setup/nrf52.js +1 -1
  40. package/build/{toolbox → src/toolbox}/setup/pico/linux.js +1 -1
  41. package/build/{toolbox → src/toolbox}/setup/pico/mac.js +1 -1
  42. package/build/src/toolbox/setup/pico.js +165 -0
  43. package/build/{toolbox → src/toolbox}/setup/types.js +1 -1
  44. package/build/src/toolbox/setup/wasm.js +124 -0
  45. package/build/{toolbox → src/toolbox}/setup/windows.js +4 -6
  46. package/build/src/toolbox/system/exec.js +79 -0
  47. package/build/src/toolbox/system/python.js +20 -0
  48. package/build/src/toolbox/update/esp32.js +101 -0
  49. package/build/{toolbox → src/toolbox}/update/esp8266.js +1 -1
  50. package/build/src/toolbox/update/linux.js +110 -0
  51. package/build/src/toolbox/update/mac.js +118 -0
  52. package/build/{toolbox → src/toolbox}/update/nrf52.js +1 -1
  53. package/build/src/toolbox/update/pico.js +132 -0
  54. package/build/{toolbox → src/toolbox}/update/wasm.js +1 -1
  55. package/build/{toolbox → src/toolbox}/update/windows.js +1 -1
  56. package/build/{types.js → src/types.js} +1 -1
  57. package/build/types/src/cli.d.ts +6 -0
  58. package/build/types/src/commands/build.d.ts +3 -0
  59. package/build/types/src/commands/clean.d.ts +3 -0
  60. package/build/types/src/commands/debug.d.ts +3 -0
  61. package/build/types/src/commands/doctor.d.ts +3 -0
  62. package/build/types/src/commands/include.d.ts +3 -0
  63. package/build/types/src/commands/init.d.ts +3 -0
  64. package/build/types/src/commands/remove.d.ts +3 -0
  65. package/build/types/src/commands/run.d.ts +3 -0
  66. package/build/types/src/commands/scan.d.ts +3 -0
  67. package/build/types/src/commands/setup.d.ts +3 -0
  68. package/build/types/src/commands/teardown.d.ts +3 -0
  69. package/build/types/src/commands/update.d.ts +3 -0
  70. package/package.json +10 -10
  71. package/tsconfig.json +2 -1
  72. package/bin/xs-dev +0 -21
  73. package/build/cli.js +0 -23
  74. package/build/commands/build.js +0 -30
  75. package/build/commands/clean.js +0 -29
  76. package/build/commands/debug.js +0 -30
  77. package/build/commands/doctor.js +0 -97
  78. package/build/commands/include.js +0 -69
  79. package/build/commands/init.js +0 -87
  80. package/build/commands/remove.js +0 -58
  81. package/build/commands/run.js +0 -31
  82. package/build/commands/scan.js +0 -80
  83. package/build/commands/setup.js +0 -69
  84. package/build/commands/teardown.js +0 -37
  85. package/build/commands/update.js +0 -15
  86. package/build/toolbox/build/index.js +0 -245
  87. package/build/toolbox/prompt/choices.js +0 -14
  88. package/build/toolbox/scan/parse.js +0 -85
  89. package/build/toolbox/setup/constants.js +0 -37
  90. package/build/toolbox/setup/ejectfix.js +0 -62
  91. package/build/toolbox/setup/esp32/mac.js +0 -61
  92. package/build/toolbox/setup/esp8266/mac.js +0 -41
  93. package/build/toolbox/setup/moddable.js +0 -85
  94. package/build/toolbox/setup/pico.js +0 -166
  95. package/build/toolbox/setup/wasm.js +0 -125
  96. package/build/toolbox/system/exec.js +0 -80
  97. package/build/toolbox/system/python.js +0 -21
  98. package/build/toolbox/update/esp32.js +0 -102
  99. package/build/toolbox/update/linux.js +0 -111
  100. package/build/toolbox/update/mac.js +0 -119
  101. package/build/toolbox/update/pico.js +0 -133
  102. package/build/types/cli.d.ts +0 -1
  103. package/build/types/commands/build.d.ts +0 -4
  104. package/build/types/commands/clean.d.ts +0 -4
  105. package/build/types/commands/debug.d.ts +0 -4
  106. package/build/types/commands/doctor.d.ts +0 -3
  107. package/build/types/commands/include.d.ts +0 -3
  108. package/build/types/commands/init.d.ts +0 -3
  109. package/build/types/commands/remove.d.ts +0 -3
  110. package/build/types/commands/run.d.ts +0 -4
  111. package/build/types/commands/scan.d.ts +0 -4
  112. package/build/types/commands/setup.d.ts +0 -4
  113. package/build/types/commands/teardown.d.ts +0 -3
  114. package/build/types/commands/update.d.ts +0 -4
  115. /package/build/types/{commands → src/commands}/xs-dev.d.ts +0 -0
  116. /package/build/types/{extensions → src/extensions}/build-extension.d.ts +0 -0
  117. /package/build/types/{extensions → src/extensions}/setup-extension.d.ts +0 -0
  118. /package/build/types/{extensions → src/extensions}/update-extension.d.ts +0 -0
  119. /package/build/types/{toolbox → src/toolbox}/build/index.d.ts +0 -0
  120. /package/build/types/{toolbox → src/toolbox}/patching/upsert.d.ts +0 -0
  121. /package/build/types/{toolbox → src/toolbox}/prompt/choices.d.ts +0 -0
  122. /package/build/types/{toolbox → src/toolbox}/prompt/devices.d.ts +0 -0
  123. /package/build/types/{toolbox → src/toolbox}/scan/parse.d.ts +0 -0
  124. /package/build/types/{toolbox → src/toolbox}/setup/constants.d.ts +0 -0
  125. /package/build/types/{toolbox → src/toolbox}/setup/ejectfix.d.ts +0 -0
  126. /package/build/types/{toolbox → src/toolbox}/setup/esp32/linux.d.ts +0 -0
  127. /package/build/types/{toolbox → src/toolbox}/setup/esp32/mac.d.ts +0 -0
  128. /package/build/types/{toolbox → src/toolbox}/setup/esp32/windows.d.ts +0 -0
  129. /package/build/types/{toolbox → src/toolbox}/setup/esp32.d.ts +0 -0
  130. /package/build/types/{toolbox → src/toolbox}/setup/esp8266/linux.d.ts +0 -0
  131. /package/build/types/{toolbox → src/toolbox}/setup/esp8266/mac.d.ts +0 -0
  132. /package/build/types/{toolbox → src/toolbox}/setup/esp8266/windows.d.ts +0 -0
  133. /package/build/types/{toolbox → src/toolbox}/setup/esp8266.d.ts +0 -0
  134. /package/build/types/{toolbox → src/toolbox}/setup/homebrew.d.ts +0 -0
  135. /package/build/types/{toolbox → src/toolbox}/setup/linux.d.ts +0 -0
  136. /package/build/types/{toolbox → src/toolbox}/setup/mac.d.ts +0 -0
  137. /package/build/types/{toolbox → src/toolbox}/setup/moddable.d.ts +0 -0
  138. /package/build/types/{toolbox → src/toolbox}/setup/nrf52/windows.d.ts +0 -0
  139. /package/build/types/{toolbox → src/toolbox}/setup/nrf52.d.ts +0 -0
  140. /package/build/types/{toolbox → src/toolbox}/setup/pico/linux.d.ts +0 -0
  141. /package/build/types/{toolbox → src/toolbox}/setup/pico/mac.d.ts +0 -0
  142. /package/build/types/{toolbox → src/toolbox}/setup/pico.d.ts +0 -0
  143. /package/build/types/{toolbox → src/toolbox}/setup/types.d.ts +0 -0
  144. /package/build/types/{toolbox → src/toolbox}/setup/wasm.d.ts +0 -0
  145. /package/build/types/{toolbox → src/toolbox}/setup/windows.d.ts +0 -0
  146. /package/build/types/{toolbox → src/toolbox}/system/exec.d.ts +0 -0
  147. /package/build/types/{toolbox → src/toolbox}/system/python.d.ts +0 -0
  148. /package/build/types/{toolbox → src/toolbox}/update/esp32.d.ts +0 -0
  149. /package/build/types/{toolbox → src/toolbox}/update/esp8266.d.ts +0 -0
  150. /package/build/types/{toolbox → src/toolbox}/update/linux.d.ts +0 -0
  151. /package/build/types/{toolbox → src/toolbox}/update/mac.d.ts +0 -0
  152. /package/build/types/{toolbox → src/toolbox}/update/nrf52.d.ts +0 -0
  153. /package/build/types/{toolbox → src/toolbox}/update/pico.d.ts +0 -0
  154. /package/build/types/{toolbox → src/toolbox}/update/wasm.d.ts +0 -0
  155. /package/build/types/{toolbox → src/toolbox}/update/windows.d.ts +0 -0
  156. /package/build/types/{types.d.ts → src/types.d.ts} +0 -0
@@ -0,0 +1,128 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ const node_os_1 = require("node:os");
30
+ const core_1 = require("@stricli/core");
31
+ const ejectfix_1 = __importDefault(require("../toolbox/setup/ejectfix"));
32
+ const devices_1 = require("../toolbox/prompt/devices");
33
+ const constants_1 = require("../toolbox/setup/constants");
34
+ const command = (0, core_1.buildCommand)({
35
+ docs: {
36
+ brief: 'Download and build Moddable tooling for various platform targets',
37
+ },
38
+ async func(flags) {
39
+ const { prompt, print } = this;
40
+ const currentPlatform = (0, node_os_1.type)().toLowerCase();
41
+ const { device, listDevices = false, tool, targetBranch = 'latest-release', sourceRepo = constants_1.MODDABLE_REPO, } = flags;
42
+ let target = device ?? currentPlatform;
43
+ if (device === undefined && listDevices) {
44
+ const choices = [
45
+ 'esp8266',
46
+ 'esp32',
47
+ 'pico',
48
+ 'wasm',
49
+ 'nrf52',
50
+ devices_1.DEVICE_ALIAS[currentPlatform],
51
+ ];
52
+ const { device: selectedDevice } = await 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
+ target = selectedDevice;
62
+ }
63
+ else {
64
+ print.warning('Please select a target device to run');
65
+ process.exit(0);
66
+ }
67
+ }
68
+ if (tool !== undefined) {
69
+ if (!['ejectfix'].includes(tool)) {
70
+ print.warning(`Unknown tool ${tool}`);
71
+ process.exit(1);
72
+ }
73
+ if (tool === 'ejectfix')
74
+ await (0, ejectfix_1.default)();
75
+ return;
76
+ }
77
+ const platformDevices = [
78
+ 'mac',
79
+ 'darwin',
80
+ 'windows_nt',
81
+ 'win',
82
+ 'lin',
83
+ 'linux',
84
+ ];
85
+ const setup = await Promise.resolve(`${`../commands/setup.ts/${target}`}`).then(s => __importStar(require(s)));
86
+ if (platformDevices.includes(target)) {
87
+ await setup({ targetBranch, sourceRepo });
88
+ }
89
+ else {
90
+ await setup({ targetBranch });
91
+ }
92
+ },
93
+ parameters: {
94
+ flags: {
95
+ device: {
96
+ kind: 'enum',
97
+ values: Object.keys(devices_1.DEVICE_ALIAS),
98
+ brief: 'Target device or platform SDK to set up; defaults to Moddable SDK for current OS; use --list-devices for interactive selection',
99
+ optional: true,
100
+ },
101
+ listDevices: {
102
+ kind: 'boolean',
103
+ brief: 'Select target device or platform SDK to set up from a list; defaults to false',
104
+ optional: true,
105
+ },
106
+ tool: {
107
+ kind: 'enum',
108
+ values: ['ejectfix'],
109
+ brief: 'Install additional tooling to support common development tasks',
110
+ optional: true,
111
+ },
112
+ targetBranch: {
113
+ kind: 'parsed',
114
+ parse: String,
115
+ brief: 'The remote branch or release to use as source for Moddable SDK set up; defaults to `latest-release`',
116
+ optional: true,
117
+ },
118
+ sourceRepo: {
119
+ kind: 'parsed',
120
+ parse: String,
121
+ brief: 'URL for remote repository to use as source for Moddable SDK set up; defaults to upstream project',
122
+ optional: true,
123
+ },
124
+ },
125
+ },
126
+ });
127
+ exports.default = command;
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbWFuZHMvc2V0dXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHFDQUE4QztBQUM5Qyx3Q0FBNEM7QUFHNUMseUVBQXFEO0FBQ3JELHVEQUF3RDtBQUN4RCwwREFBMEQ7QUFVMUQsTUFBTSxPQUFPLEdBQUcsSUFBQSxtQkFBWSxFQUFDO0lBQzNCLElBQUksRUFBRTtRQUNKLEtBQUssRUFBRSxrRUFBa0U7S0FDMUU7SUFDRCxLQUFLLENBQUMsSUFBSSxDQUFxQixLQUFtQjtRQUNoRCxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQTtRQUM5QixNQUFNLGVBQWUsR0FBVyxJQUFBLGNBQVksR0FBRSxDQUFDLFdBQVcsRUFBWSxDQUFBO1FBQ3RFLE1BQU0sRUFDSixNQUFNLEVBQ04sV0FBVyxHQUFHLEtBQUssRUFDbkIsSUFBSSxFQUNKLFlBQVksR0FBRyxnQkFBZ0IsRUFDL0IsVUFBVSxHQUFHLHlCQUFhLEdBQzNCLEdBQUcsS0FBSyxDQUFBO1FBQ1QsSUFBSSxNQUFNLEdBQVcsTUFBTSxJQUFJLGVBQWUsQ0FBQTtRQUU5QyxJQUFJLE1BQU0sS0FBSyxTQUFTLElBQUksV0FBVyxFQUFFLENBQUM7WUFDeEMsTUFBTSxPQUFPLEdBQUc7Z0JBQ2QsU0FBUztnQkFDVCxPQUFPO2dCQUNQLE1BQU07Z0JBQ04sTUFBTTtnQkFDTixPQUFPO2dCQUNQLHNCQUFZLENBQUMsZUFBZSxDQUFDO2FBQzlCLENBQUE7WUFDRCxNQUFNLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQztnQkFDbEQ7b0JBQ0UsSUFBSSxFQUFFLGNBQWM7b0JBQ3BCLElBQUksRUFBRSxRQUFRO29CQUNkLE9BQU8sRUFBRSx3Q0FBd0M7b0JBQ2pELE9BQU87aUJBQ1I7YUFDRixDQUFDLENBQUE7WUFFRixJQUFJLGNBQWMsS0FBSyxFQUFFLElBQUksY0FBYyxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUMxRCxNQUFNLEdBQUcsY0FBd0IsQ0FBQTtZQUNuQyxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sS0FBSyxDQUFDLE9BQU8sQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFBO2dCQUNyRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQ2pCLENBQUM7UUFDSCxDQUFDO1FBRUQsSUFBSSxJQUFJLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQ2pDLEtBQUssQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLElBQUksRUFBRSxDQUFDLENBQUE7Z0JBQ3JDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDakIsQ0FBQztZQUNELElBQUksSUFBSSxLQUFLLFVBQVU7Z0JBQUUsTUFBTSxJQUFBLGtCQUFhLEdBQUUsQ0FBQTtZQUM5QyxPQUFNO1FBQ1IsQ0FBQztRQUNELE1BQU0sZUFBZSxHQUFhO1lBQ2hDLEtBQUs7WUFDTCxRQUFRO1lBQ1IsWUFBWTtZQUNaLEtBQUs7WUFDTCxLQUFLO1lBQ0wsT0FBTztTQUNSLENBQUE7UUFDRCxNQUFNLEtBQUssR0FDVCx5QkFBYSx3QkFBd0IsTUFBTSxFQUFFLHVDQUFDLENBQUE7UUFDaEQsSUFBSSxlQUFlLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDckMsTUFBTSxLQUFLLENBQUMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQTtRQUMzQyxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sS0FBSyxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQTtRQUMvQixDQUFDO0lBQ0gsQ0FBQztJQUNELFVBQVUsRUFBRTtRQUNWLEtBQUssRUFBRTtZQUNMLE1BQU0sRUFBRTtnQkFDTixJQUFJLEVBQUUsTUFBTTtnQkFDWixNQUFNLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxzQkFBWSxDQUEwQjtnQkFDMUQsS0FBSyxFQUNILGdJQUFnSTtnQkFDbEksUUFBUSxFQUFFLElBQUk7YUFDZjtZQUNELFdBQVcsRUFBRTtnQkFDWCxJQUFJLEVBQUUsU0FBUztnQkFDZixLQUFLLEVBQ0gsK0VBQStFO2dCQUNqRixRQUFRLEVBQUUsSUFBSTthQUNmO1lBQ0QsSUFBSSxFQUFFO2dCQUNKLElBQUksRUFBRSxNQUFNO2dCQUNaLE1BQU0sRUFBRSxDQUFDLFVBQVUsQ0FBQztnQkFDcEIsS0FBSyxFQUFFLGdFQUFnRTtnQkFDdkUsUUFBUSxFQUFFLElBQUk7YUFDZjtZQUNELFlBQVksRUFBRTtnQkFDWixJQUFJLEVBQUUsUUFBUTtnQkFDZCxLQUFLLEVBQUUsTUFBTTtnQkFDYixLQUFLLEVBQ0gscUdBQXFHO2dCQUN2RyxRQUFRLEVBQUUsSUFBSTthQUNmO1lBQ0QsVUFBVSxFQUFFO2dCQUNWLElBQUksRUFBRSxRQUFRO2dCQUNkLEtBQUssRUFBRSxNQUFNO2dCQUNiLEtBQUssRUFDSCxrR0FBa0c7Z0JBQ3BHLFFBQVEsRUFBRSxJQUFJO2FBQ2Y7U0FDRjtLQUNGO0NBQ0YsQ0FBQyxDQUFBO0FBRUYsa0JBQWUsT0FBTyxDQUFBIn0=
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const node_os_1 = require("node:os");
4
+ const core_1 = require("@stricli/core");
5
+ const constants_1 = require("../toolbox/setup/constants");
6
+ const command = (0, core_1.buildCommand)({
7
+ docs: {
8
+ brief: 'Remove all installed git repos and toolchains, unset environment changes',
9
+ },
10
+ async func() {
11
+ const { filesystem, patching, print } = this;
12
+ const PROFILE_PATH = (0, constants_1.getProfilePath)();
13
+ const spinner = print.spin();
14
+ spinner.start('Tearing down Moddable tools and platform dependencies');
15
+ filesystem.remove(constants_1.EXPORTS_FILE_PATH);
16
+ filesystem.remove(filesystem.resolve(constants_1.INSTALL_DIR, 'moddable'));
17
+ filesystem.remove(filesystem.resolve(constants_1.INSTALL_DIR, 'wasm'));
18
+ filesystem.remove(filesystem.resolve(constants_1.INSTALL_DIR, 'esp32'));
19
+ filesystem.remove(filesystem.resolve(constants_1.INSTALL_DIR, 'esp'));
20
+ filesystem.remove(filesystem.resolve(constants_1.INSTALL_DIR, 'pico'));
21
+ filesystem.remove(filesystem.resolve(constants_1.INSTALL_DIR, 'fontbm'));
22
+ filesystem.remove(filesystem.resolve(constants_1.INSTALL_DIR, 'nrf52'));
23
+ if ((0, node_os_1.type)() === 'Darwin') {
24
+ const NC_PREFS_BACKUP = filesystem.resolve(constants_1.INSTALL_DIR, 'ejectfix', 'com.apple.ncprefs.plist');
25
+ if (filesystem.exists(NC_PREFS_BACKUP) === 'file') {
26
+ filesystem.copy(NC_PREFS_BACKUP, filesystem.resolve(process.env.HOME ?? '~', 'Library', 'Preferences', 'com.apple.ncprefs.plist'), { overwrite: true });
27
+ }
28
+ filesystem.remove(filesystem.resolve(constants_1.INSTALL_DIR, 'ejectfix'));
29
+ filesystem.remove('/Applications/xsbug.app');
30
+ }
31
+ await patching.patch(PROFILE_PATH, {
32
+ delete: `source ${constants_1.EXPORTS_FILE_PATH}`,
33
+ });
34
+ spinner.succeed(`Clean up complete!`);
35
+ },
36
+ parameters: {
37
+ flags: {},
38
+ },
39
+ });
40
+ exports.default = command;
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVhcmRvd24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbWFuZHMvdGVhcmRvd24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxxQ0FBOEM7QUFDOUMsd0NBQTRDO0FBRTVDLDBEQUltQztBQUVuQyxNQUFNLE9BQU8sR0FBRyxJQUFBLG1CQUFZLEVBQUM7SUFDM0IsSUFBSSxFQUFFO1FBQ0osS0FBSyxFQUNILDBFQUEwRTtLQUM3RTtJQUNELEtBQUssQ0FBQyxJQUFJO1FBQ1IsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFBO1FBQzVDLE1BQU0sWUFBWSxHQUFHLElBQUEsMEJBQWMsR0FBRSxDQUFBO1FBQ3JDLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQTtRQUM1QixPQUFPLENBQUMsS0FBSyxDQUFDLHVEQUF1RCxDQUFDLENBQUE7UUFFdEUsVUFBVSxDQUFDLE1BQU0sQ0FBQyw2QkFBaUIsQ0FBQyxDQUFBO1FBQ3BDLFVBQVUsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyx1QkFBVyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUE7UUFDOUQsVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLHVCQUFXLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQTtRQUMxRCxVQUFVLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsdUJBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFBO1FBQzNELFVBQVUsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyx1QkFBVyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUE7UUFDekQsVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLHVCQUFXLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQTtRQUMxRCxVQUFVLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsdUJBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFBO1FBQzVELFVBQVUsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyx1QkFBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUE7UUFFM0QsSUFBSSxJQUFBLGNBQVksR0FBRSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ2hDLE1BQU0sZUFBZSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQ3hDLHVCQUFXLEVBQ1gsVUFBVSxFQUNWLHlCQUF5QixDQUMxQixDQUFBO1lBQ0QsSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxLQUFLLE1BQU0sRUFBRSxDQUFDO2dCQUNsRCxVQUFVLENBQUMsSUFBSSxDQUNiLGVBQWUsRUFDZixVQUFVLENBQUMsT0FBTyxDQUNoQixPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxHQUFHLEVBQ3ZCLFNBQVMsRUFDVCxhQUFhLEVBQ2IseUJBQXlCLENBQzFCLEVBQ0QsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQ3BCLENBQUE7WUFDSCxDQUFDO1lBQ0QsVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLHVCQUFXLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQTtZQUM5RCxVQUFVLENBQUMsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUE7UUFDOUMsQ0FBQztRQUVELE1BQU0sUUFBUSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUU7WUFDakMsTUFBTSxFQUFFLFVBQVUsNkJBQWlCLEVBQUU7U0FDdEMsQ0FBQyxDQUFBO1FBRUYsT0FBTyxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO0lBQ3ZDLENBQUM7SUFDRCxVQUFVLEVBQUU7UUFDVixLQUFLLEVBQUUsRUFBRTtLQUNWO0NBQ0YsQ0FBQyxDQUFBO0FBRUYsa0JBQWUsT0FBTyxDQUFBIn0=
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ const node_os_1 = require("node:os");
27
+ const core_1 = require("@stricli/core");
28
+ const devices_1 = require("../toolbox/prompt/devices");
29
+ const command = (0, core_1.buildCommand)({
30
+ docs: {
31
+ brief: 'Check and update Moddable tooling for various platform targets',
32
+ },
33
+ async func(flags) {
34
+ const currentPlatform = (0, node_os_1.type)().toLowerCase();
35
+ const { device = currentPlatform, targetBranch = 'latest-release' } = flags;
36
+ const update = await Promise.resolve(`${`../toolbox/update/${device}`}`).then(s => __importStar(require(s)));
37
+ await update({ targetBranch });
38
+ },
39
+ parameters: {
40
+ flags: {
41
+ device: {
42
+ kind: 'enum',
43
+ values: Object.keys(devices_1.DEVICE_ALIAS),
44
+ brief: 'Target device or platform SDK to set up; defaults to Moddable SDK for current OS',
45
+ optional: true,
46
+ },
47
+ targetBranch: {
48
+ kind: 'enum',
49
+ values: ['public', 'latest-release'],
50
+ brief: 'The remote branch or release to use as source for Moddable SDK update; defaults to `latest-release`',
51
+ optional: true,
52
+ },
53
+ },
54
+ },
55
+ });
56
+ exports.default = command;
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL3VwZGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEscUNBQThDO0FBQzlDLHdDQUE0QztBQUc1Qyx1REFBd0Q7QUFPeEQsTUFBTSxPQUFPLEdBQUcsSUFBQSxtQkFBWSxFQUFDO0lBQzNCLElBQUksRUFBRTtRQUNKLEtBQUssRUFBRSxnRUFBZ0U7S0FDeEU7SUFDRCxLQUFLLENBQUMsSUFBSSxDQUFxQixLQUFvQjtRQUNqRCxNQUFNLGVBQWUsR0FBVyxJQUFBLGNBQVksR0FBRSxDQUFDLFdBQVcsRUFBWSxDQUFBO1FBQ3RFLE1BQU0sRUFBRSxNQUFNLEdBQUcsZUFBZSxFQUFFLFlBQVksR0FBRyxnQkFBZ0IsRUFBRSxHQUFHLEtBQUssQ0FBQTtRQUMzRSxNQUFNLE1BQU0sR0FBRyx5QkFBYSxxQkFBcUIsTUFBTSxFQUFFLHVDQUFDLENBQUE7UUFDMUQsTUFBTSxNQUFNLENBQUMsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFBO0lBQ2hDLENBQUM7SUFDRCxVQUFVLEVBQUU7UUFDVixLQUFLLEVBQUU7WUFDTCxNQUFNLEVBQUU7Z0JBQ04sSUFBSSxFQUFFLE1BQU07Z0JBQ1osTUFBTSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsc0JBQVksQ0FBMEI7Z0JBQzFELEtBQUssRUFDSCxrRkFBa0Y7Z0JBQ3BGLFFBQVEsRUFBRSxJQUFJO2FBQ2Y7WUFDRCxZQUFZLEVBQUU7Z0JBQ1osSUFBSSxFQUFFLE1BQU07Z0JBQ1osTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLGdCQUFnQixDQUFDO2dCQUNwQyxLQUFLLEVBQ0gscUdBQXFHO2dCQUN2RyxRQUFRLEVBQUUsSUFBSTthQUNmO1NBQ0Y7S0FDRjtDQUNGLENBQUMsQ0FBQTtBQUVGLGtCQUFlLE9BQU8sQ0FBQSJ9
@@ -11,4 +11,4 @@ const command = {
11
11
  },
12
12
  };
13
13
  exports.default = command;
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHMtZGV2LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1hbmRzL3hzLWRldi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUVBLE1BQU0sT0FBTyxHQUFtQjtJQUM5QixJQUFJLEVBQUUsUUFBUTtJQUNkLFdBQVcsRUFBRSw2REFBNkQ7SUFDMUUsa0VBQWtFO0lBQ2xFLEdBQUcsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUU7UUFDckIsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLE9BQU8sQ0FBQTtRQUV6QixLQUFLLENBQUMsSUFBSSxDQUFDLHFEQUFxRCxDQUFDLENBQUE7UUFDakUsS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUMxQixDQUFDO0NBQ0YsQ0FBQTtBQUVELGtCQUFlLE9BQU8sQ0FBQSJ9
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHMtZGV2LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL3hzLWRldi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUVBLE1BQU0sT0FBTyxHQUFtQjtJQUM5QixJQUFJLEVBQUUsUUFBUTtJQUNkLFdBQVcsRUFBRSw2REFBNkQ7SUFDMUUsa0VBQWtFO0lBQ2xFLEdBQUcsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUU7UUFDckIsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLE9BQU8sQ0FBQTtRQUV6QixLQUFLLENBQUMsSUFBSSxDQUFDLHFEQUFxRCxDQUFDLENBQUE7UUFDakUsS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUMxQixDQUFDO0NBQ0YsQ0FBQTtBQUVELGtCQUFlLE9BQU8sQ0FBQSJ9
@@ -4,4 +4,4 @@ const index_1 = require("../toolbox/build/index");
4
4
  exports.default = async (toolbox) => {
5
5
  toolbox.build = index_1.build;
6
6
  };
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtZXh0ZW5zaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V4dGVuc2lvbnMvYnVpbGQtZXh0ZW5zaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0Esa0RBQThDO0FBRTlDLGtCQUFlLEtBQUssRUFBRSxPQUFxQixFQUFpQixFQUFFO0lBQzVELE9BQU8sQ0FBQyxLQUFLLEdBQUcsYUFBSyxDQUFBO0FBQ3ZCLENBQUMsQ0FBQSJ9
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtZXh0ZW5zaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2V4dGVuc2lvbnMvYnVpbGQtZXh0ZW5zaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0Esa0RBQThDO0FBRTlDLGtCQUFlLEtBQUssRUFBRSxPQUFxQixFQUFpQixFQUFFO0lBQzVELE9BQU8sQ0FBQyxLQUFLLEdBQUcsYUFBSyxDQUFBO0FBQ3ZCLENBQUMsQ0FBQSJ9
@@ -27,4 +27,4 @@ exports.default = async (toolbox) => {
27
27
  nrf52: nrf52_1.default,
28
28
  };
29
29
  };
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXAtZXh0ZW5zaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V4dGVuc2lvbnMvc2V0dXAtZXh0ZW5zaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsK0RBQTJDO0FBQzNDLG1FQUErQztBQUMvQyx1RUFBbUQ7QUFDbkQsdUVBQW1EO0FBQ25ELG1FQUErQztBQUMvQyxpRUFBNkM7QUFDN0MsaUVBQTZDO0FBQzdDLG1FQUErQztBQUUvQyxrQkFBZSxLQUFLLEVBQUUsT0FBcUIsRUFBaUIsRUFBRTtJQUM1RCxPQUFPLENBQUMsS0FBSyxHQUFHO1FBQ2QsTUFBTSxFQUFFLGFBQVE7UUFDaEIsR0FBRyxFQUFFLGFBQVE7UUFDYixLQUFLLEVBQUUsZUFBVTtRQUNqQixHQUFHLEVBQUUsZUFBVTtRQUNmLFVBQVUsRUFBRSxpQkFBWTtRQUN4QixHQUFHLEVBQUUsaUJBQVk7UUFDakIsR0FBRyxFQUFFLGlCQUFZO1FBQ2pCLE9BQU8sRUFBRSxpQkFBWTtRQUNyQixLQUFLLEVBQUUsZUFBVTtRQUNqQixJQUFJLEVBQUUsY0FBUztRQUNmLElBQUksRUFBRSxjQUFTO1FBQ2YsS0FBSyxFQUFFLGVBQVU7S0FDbEIsQ0FBQTtBQUNILENBQUMsQ0FBQSJ9
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXAtZXh0ZW5zaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2V4dGVuc2lvbnMvc2V0dXAtZXh0ZW5zaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsK0RBQTJDO0FBQzNDLG1FQUErQztBQUMvQyx1RUFBbUQ7QUFDbkQsdUVBQW1EO0FBQ25ELG1FQUErQztBQUMvQyxpRUFBNkM7QUFDN0MsaUVBQTZDO0FBQzdDLG1FQUErQztBQUUvQyxrQkFBZSxLQUFLLEVBQUUsT0FBcUIsRUFBaUIsRUFBRTtJQUM1RCxPQUFPLENBQUMsS0FBSyxHQUFHO1FBQ2QsTUFBTSxFQUFFLGFBQVE7UUFDaEIsR0FBRyxFQUFFLGFBQVE7UUFDYixLQUFLLEVBQUUsZUFBVTtRQUNqQixHQUFHLEVBQUUsZUFBVTtRQUNmLFVBQVUsRUFBRSxpQkFBWTtRQUN4QixHQUFHLEVBQUUsaUJBQVk7UUFDakIsR0FBRyxFQUFFLGlCQUFZO1FBQ2pCLE9BQU8sRUFBRSxpQkFBWTtRQUNyQixLQUFLLEVBQUUsZUFBVTtRQUNqQixJQUFJLEVBQUUsY0FBUztRQUNmLElBQUksRUFBRSxjQUFTO1FBQ2YsS0FBSyxFQUFFLGVBQVU7S0FDbEIsQ0FBQTtBQUNILENBQUMsQ0FBQSJ9
@@ -27,4 +27,4 @@ exports.default = async (toolbox) => {
27
27
  nrf52: nrf52_1.default,
28
28
  };
29
29
  };
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLWV4dGVuc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHRlbnNpb25zL3VwZGF0ZS1leHRlbnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSxnRUFBNkM7QUFDN0Msb0VBQWlEO0FBQ2pELHdFQUFxRDtBQUNyRCx3RUFBcUQ7QUFDckQsb0VBQWlEO0FBQ2pELGtFQUErQztBQUMvQyxrRUFBK0M7QUFDL0Msb0VBQWlEO0FBRWpELGtCQUFlLEtBQUssRUFBRSxPQUFxQixFQUFpQixFQUFFO0lBQzVELE9BQU8sQ0FBQyxNQUFNLEdBQUc7UUFDZixNQUFNLEVBQUUsYUFBUztRQUNqQixHQUFHLEVBQUUsYUFBUztRQUNkLEtBQUssRUFBRSxlQUFXO1FBQ2xCLEdBQUcsRUFBRSxlQUFXO1FBQ2hCLFVBQVUsRUFBRSxpQkFBYTtRQUN6QixHQUFHLEVBQUUsaUJBQWE7UUFDbEIsR0FBRyxFQUFFLGlCQUFhO1FBQ2xCLE9BQU8sRUFBRSxpQkFBYTtRQUN0QixLQUFLLEVBQUUsZUFBVztRQUNsQixJQUFJLEVBQUUsY0FBVTtRQUNoQixJQUFJLEVBQUUsY0FBVTtRQUNoQixLQUFLLEVBQUUsZUFBVztLQUNuQixDQUFBO0FBQ0gsQ0FBQyxDQUFBIn0=
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLWV4dGVuc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9leHRlbnNpb25zL3VwZGF0ZS1leHRlbnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSxnRUFBNkM7QUFDN0Msb0VBQWlEO0FBQ2pELHdFQUFxRDtBQUNyRCx3RUFBcUQ7QUFDckQsb0VBQWlEO0FBQ2pELGtFQUErQztBQUMvQyxrRUFBK0M7QUFDL0Msb0VBQWlEO0FBRWpELGtCQUFlLEtBQUssRUFBRSxPQUFxQixFQUFpQixFQUFFO0lBQzVELE9BQU8sQ0FBQyxNQUFNLEdBQUc7UUFDZixNQUFNLEVBQUUsYUFBUztRQUNqQixHQUFHLEVBQUUsYUFBUztRQUNkLEtBQUssRUFBRSxlQUFXO1FBQ2xCLEdBQUcsRUFBRSxlQUFXO1FBQ2hCLFVBQVUsRUFBRSxpQkFBYTtRQUN6QixHQUFHLEVBQUUsaUJBQWE7UUFDbEIsR0FBRyxFQUFFLGlCQUFhO1FBQ2xCLE9BQU8sRUFBRSxpQkFBYTtRQUN0QixLQUFLLEVBQUUsZUFBVztRQUNsQixJQUFJLEVBQUUsY0FBVTtRQUNoQixJQUFJLEVBQUUsY0FBVTtRQUNoQixLQUFLLEVBQUUsZUFBVztLQUNuQixDQUFBO0FBQ0gsQ0FBQyxDQUFBIn0=
@@ -0,0 +1,245 @@
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 = build;
7
+ const node_child_process_1 = require("node:child_process");
8
+ const node_os_1 = require("node:os");
9
+ const serve_handler_1 = __importDefault(require("serve-handler"));
10
+ const http_1 = require("http");
11
+ const gluegun_1 = require("gluegun");
12
+ const choices_1 = require("../prompt/choices");
13
+ const moddable_1 = require("../setup/moddable");
14
+ const devices_1 = require("../prompt/devices");
15
+ const exec_1 = require("../system/exec");
16
+ const DEPLOY_TARGET = Object.freeze({
17
+ clean: 'clean',
18
+ debug: 'xsbug',
19
+ none: 'build',
20
+ push: 'build',
21
+ run: 'all',
22
+ });
23
+ async function build({ listDevices, port, example, listExamples, log = false, projectPath, targetPlatform, mode, deployStatus, outputDir, config = {}, }) {
24
+ const OS = (0, node_os_1.type)().toLowerCase();
25
+ await (0, exec_1.sourceEnvironment)();
26
+ if (!(0, moddable_1.moddableExists)()) {
27
+ gluegun_1.print.error(`Moddable tooling required. Run 'xs-dev setup --device ${devices_1.DEVICE_ALIAS[OS]}' before trying again.`);
28
+ process.exit(1);
29
+ }
30
+ outputDir ??= gluegun_1.filesystem.resolve(String(process.env.MODDABLE), 'build');
31
+ if (listDevices) {
32
+ const deviceTargetsPath = gluegun_1.filesystem.resolve(String(process.env.MODDABLE), 'build', 'devices');
33
+ const simulatorsPath = gluegun_1.filesystem.resolve(String(process.env.MODDABLE), 'build', 'simulators');
34
+ const devices = gluegun_1.filesystem.inspectTree(deviceTargetsPath)?.children ?? [];
35
+ const deviceTargets = devices.flatMap((dev) => {
36
+ const targets = dev.children
37
+ .filter((c) => c.name === 'targets')
38
+ .flatMap((c) => c.children.flatMap((dir) => (0, choices_1.collectChoicesFromTree)(dir, [], `${dev.name}/`)));
39
+ return [dev.name].concat(targets);
40
+ });
41
+ const simulators = gluegun_1.filesystem
42
+ .inspectTree(simulatorsPath)
43
+ ?.children?.flatMap((sim) => (0, choices_1.collectChoicesFromTree)(sim, [], `simulator/`)) ?? [];
44
+ const choices = deviceTargets.concat(simulators, 'wasm', devices_1.DEVICE_ALIAS[OS]);
45
+ const { device: selectedDevice } = await gluegun_1.prompt.ask([
46
+ {
47
+ type: 'autocomplete',
48
+ name: 'device',
49
+ message: 'Here are the available target devices:',
50
+ choices,
51
+ },
52
+ ]);
53
+ if (selectedDevice !== '' && selectedDevice !== undefined) {
54
+ targetPlatform = selectedDevice;
55
+ }
56
+ else {
57
+ gluegun_1.print.warning('Please select a target device to run');
58
+ process.exit(0);
59
+ }
60
+ }
61
+ if (targetPlatform !== '') {
62
+ const startsWithSimulator = targetPlatform.startsWith('simulator');
63
+ if (targetPlatform.includes('esp32') && !startsWithSimulator) {
64
+ if (typeof process.env.IDF_PATH !== 'string' ||
65
+ gluegun_1.filesystem.exists(process.env.IDF_PATH) !== 'dir') {
66
+ gluegun_1.print.error('The current environment does not appear to be set up for the ESP32 build target. Please run `xs-dev setup --device esp32` before trying again.');
67
+ process.exit(1);
68
+ }
69
+ else {
70
+ await (0, exec_1.sourceIdfPythonEnv)();
71
+ }
72
+ }
73
+ else if (targetPlatform.includes('esp') && !startsWithSimulator) {
74
+ if (typeof process.env.ESP_BASE !== 'string' ||
75
+ gluegun_1.filesystem.exists(process.env.ESP_BASE) !== 'dir') {
76
+ gluegun_1.print.error('The current environment does not appear to be set up for the ESP8266 build target. Please run `xs-dev setup --device esp8266` before trying again.');
77
+ process.exit(1);
78
+ }
79
+ }
80
+ if (targetPlatform.includes('wasm') && !startsWithSimulator) {
81
+ if (!(process.env.PATH ?? '').includes('binaryen') ||
82
+ gluegun_1.filesystem.exists(process.env.EMSDK ?? '') !== 'dir' ||
83
+ gluegun_1.filesystem.exists(process.env.EMSDK_NODE ?? '') !== 'file' ||
84
+ gluegun_1.filesystem.exists(process.env.EMSDK_PYTHON ?? '') !== 'file') {
85
+ gluegun_1.print.error('The current environment does not appear to be set up for the wasm build target. Please run `xs-dev setup --device wasm` before trying again.');
86
+ process.exit(1);
87
+ }
88
+ }
89
+ if (targetPlatform.includes('pico') && !startsWithSimulator) {
90
+ if (typeof process.env.PICO_SDK_PATH !== 'string' ||
91
+ gluegun_1.filesystem.exists(process.env.PICO_SDK_PATH) !== 'dir' ||
92
+ gluegun_1.system.which('picotool') === null ||
93
+ gluegun_1.filesystem.exists(process.env.PIOASM ?? '') !== 'file') {
94
+ gluegun_1.print.error('The current environment does not appear to be set up for the pico build target. Please run `xs-dev setup --device pico` before trying again.');
95
+ process.exit(1);
96
+ }
97
+ }
98
+ if (targetPlatform.includes('nrf52') && !startsWithSimulator) {
99
+ if (typeof process.env.NRF_ROOT !== 'string' ||
100
+ typeof process.env.NRF_SDK_DIR !== 'string' ||
101
+ gluegun_1.filesystem.exists(process.env.NRF_ROOT) !== 'dir' ||
102
+ gluegun_1.filesystem.exists(process.env.NRF_SDK_DIR) !== 'dir') {
103
+ gluegun_1.print.error('The current environment does not appear to be set up for the nrf52 build target. Please run `xs-dev setup --device nrf52` before trying again.');
104
+ process.exit(1);
105
+ }
106
+ }
107
+ }
108
+ if (listExamples) {
109
+ const exampleProjectPath = gluegun_1.filesystem.resolve(String(process.env.MODDABLE), 'examples');
110
+ const contributedProjectPath = gluegun_1.filesystem.resolve(String(process.env.MODDABLE), 'contributed');
111
+ const examples = gluegun_1.filesystem.inspectTree(exampleProjectPath)?.children;
112
+ const contributed = gluegun_1.filesystem.inspectTree(contributedProjectPath)?.children;
113
+ const choices = examples !== undefined
114
+ ? examples.map((example) => (0, choices_1.collectChoicesFromTree)(example)).flat()
115
+ : [];
116
+ if (contributed !== undefined) {
117
+ choices.push(...contributed.flatMap((project) => (0, choices_1.collectChoicesFromTree)(project)));
118
+ }
119
+ const { example: selectedExample } = await gluegun_1.prompt.ask([
120
+ {
121
+ type: 'autocomplete',
122
+ name: 'example',
123
+ message: 'Here are the available examples:',
124
+ choices,
125
+ },
126
+ ]);
127
+ if (selectedExample !== '' && selectedExample !== undefined) {
128
+ gluegun_1.print.info(`Running the example: xs-dev run --example ${selectedExample}`);
129
+ projectPath = gluegun_1.filesystem.resolve(exampleProjectPath, selectedExample);
130
+ }
131
+ else {
132
+ gluegun_1.print.warning('Please select an example to run.');
133
+ process.exit(0);
134
+ }
135
+ }
136
+ if (example !== undefined) {
137
+ const exampleProjectPath = gluegun_1.filesystem.resolve(String(process.env.MODDABLE), 'examples', example);
138
+ const contributedProjectPath = gluegun_1.filesystem.resolve(String(process.env.MODDABLE), 'contributed', example);
139
+ if (gluegun_1.filesystem.exists(exampleProjectPath) === false &&
140
+ gluegun_1.filesystem.exists(contributedProjectPath) === false) {
141
+ gluegun_1.print.error('Example project does not exist.');
142
+ gluegun_1.print.info(`Lookup the available examples: xs-dev run --list-examples`);
143
+ process.exit(1);
144
+ }
145
+ if (gluegun_1.filesystem.exists(gluegun_1.filesystem.resolve(exampleProjectPath, 'manifest.json')) === false &&
146
+ gluegun_1.filesystem.exists(gluegun_1.filesystem.resolve(contributedProjectPath, 'manifest.json')) === false) {
147
+ gluegun_1.print.error('Example project must contain a manifest.json.');
148
+ gluegun_1.print.info(`Lookup the available examples: xs-dev run --list-examples`);
149
+ process.exit(1);
150
+ }
151
+ projectPath =
152
+ gluegun_1.filesystem.exists(exampleProjectPath) === 'dir'
153
+ ? exampleProjectPath
154
+ : contributedProjectPath;
155
+ }
156
+ if (port !== undefined) {
157
+ process.env.UPLOAD_PORT = port;
158
+ }
159
+ const spinner = gluegun_1.print.spin();
160
+ switch (deployStatus) {
161
+ case 'clean':
162
+ spinner.start(`Cleaning up build artifacts for project ${projectPath} on ${targetPlatform}\n`);
163
+ break;
164
+ case 'debug':
165
+ spinner.start(`Connecting to running debug session for ${projectPath} on ${targetPlatform}\n`);
166
+ break;
167
+ default:
168
+ spinner.start(`Building${deployStatus !== 'none' ? ' and deploying project' : ''} ${projectPath} on ${targetPlatform}\n`);
169
+ }
170
+ const configArgs = [
171
+ '-m',
172
+ `-p ${targetPlatform}`,
173
+ `-t ${DEPLOY_TARGET[deployStatus]}`,
174
+ `-o ${outputDir}`,
175
+ ];
176
+ if (mode === 'development') {
177
+ configArgs.push('-d');
178
+ }
179
+ if (mode === 'production') {
180
+ configArgs.push('-i');
181
+ }
182
+ if (log) {
183
+ configArgs.push('-l');
184
+ }
185
+ Object.entries(config).forEach(([element, value]) => {
186
+ configArgs.push(`${element}="${value}"`);
187
+ });
188
+ const canUseMCPack = gluegun_1.system.which('mcpack') !== null &&
189
+ gluegun_1.filesystem.exists(gluegun_1.filesystem.resolve(projectPath, 'package.json')) ===
190
+ 'file';
191
+ let rootCommand = 'mcconfig';
192
+ if (canUseMCPack) {
193
+ rootCommand = 'mcpack';
194
+ configArgs.unshift('mcconfig');
195
+ }
196
+ if (log) {
197
+ const logOutput = (0, node_child_process_1.spawn)(rootCommand, configArgs, {
198
+ cwd: projectPath,
199
+ stdio: 'inherit',
200
+ shell: true,
201
+ });
202
+ logOutput.on('close', (exitCode) => {
203
+ if (exitCode !== null) {
204
+ process.exit(exitCode);
205
+ }
206
+ });
207
+ }
208
+ else {
209
+ process.on('SIGINT', () => {
210
+ void gluegun_1.system.exec(`pkill serial2xsbug`);
211
+ });
212
+ try {
213
+ await gluegun_1.system.exec(`${rootCommand} ${configArgs.join(' ')}`, {
214
+ cwd: projectPath,
215
+ stdio: 'inherit',
216
+ shell: true,
217
+ });
218
+ }
219
+ catch (error) {
220
+ if (error instanceof Error && !error.message.includes('exit code 2')) {
221
+ gluegun_1.print.error(error);
222
+ }
223
+ }
224
+ if (deployStatus === 'push') {
225
+ await gluegun_1.system.exec(`mcconfig -t deploy -p ${targetPlatform} -o ${outputDir}`, {
226
+ cwd: projectPath,
227
+ process,
228
+ });
229
+ }
230
+ }
231
+ spinner.stop();
232
+ if (deployStatus !== 'none' && targetPlatform === 'wasm') {
233
+ const buildName = String(projectPath.split('/').pop());
234
+ const debugPath = gluegun_1.filesystem.resolve(String(process.env.MODDABLE), 'build', 'bin', 'wasm', 'debug', buildName);
235
+ (0, http_1.createServer)((req, res) => {
236
+ void (0, serve_handler_1.default)(req, res, { public: debugPath });
237
+ }).listen(8080, () => {
238
+ gluegun_1.print.info('Started server on port 8080, go to http://localhost:8080 in your browser to view the simulator');
239
+ });
240
+ }
241
+ else if (!log) {
242
+ process.exit(0);
243
+ }
244
+ }
245
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdG9vbGJveC9idWlsZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQW1DQSxzQkE0VUM7QUEvV0QsMkRBQTBDO0FBQzFDLHFDQUE4QztBQUM5QyxrRUFBbUM7QUFDbkMsK0JBQW1DO0FBQ25DLHFDQUEyRDtBQUMzRCwrQ0FBMEQ7QUFDMUQsZ0RBQWtEO0FBQ2xELCtDQUFnRDtBQUVoRCx5Q0FBc0U7QUFrQnRFLE1BQU0sYUFBYSxHQUEyQyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQzFFLEtBQUssRUFBRSxPQUFPO0lBQ2QsS0FBSyxFQUFFLE9BQU87SUFDZCxJQUFJLEVBQUUsT0FBTztJQUNiLElBQUksRUFBRSxPQUFPO0lBQ2IsR0FBRyxFQUFFLEtBQUs7Q0FDWCxDQUFDLENBQUE7QUFFSyxLQUFLLFVBQVUsS0FBSyxDQUFDLEVBQzFCLFdBQVcsRUFDWCxJQUFJLEVBQ0osT0FBTyxFQUNQLFlBQVksRUFDWixHQUFHLEdBQUcsS0FBSyxFQUNYLFdBQVcsRUFDWCxjQUFjLEVBQ2QsSUFBSSxFQUNKLFlBQVksRUFDWixTQUFTLEVBQ1QsTUFBTSxHQUFHLEVBQUUsR0FDRDtJQUNWLE1BQU0sRUFBRSxHQUFHLElBQUEsY0FBWSxHQUFFLENBQUMsV0FBVyxFQUFZLENBQUE7SUFFakQsTUFBTSxJQUFBLHdCQUFpQixHQUFFLENBQUE7SUFFekIsSUFBSSxDQUFDLElBQUEseUJBQWMsR0FBRSxFQUFFLENBQUM7UUFDdEIsZUFBSyxDQUFDLEtBQUssQ0FDVCx5REFBeUQsc0JBQVksQ0FBQyxFQUFFLENBQUMsd0JBQXdCLENBQ2xHLENBQUE7UUFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ2pCLENBQUM7SUFFRCxTQUFTLEtBQUssb0JBQVUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFB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
@@ -11,4 +11,4 @@ async function default_1(filePath, newLine) {
11
11
  return contents;
12
12
  });
13
13
  }
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBzZXJ0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rvb2xib3gvcGF0Y2hpbmcvdXBzZXJ0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUEsNEJBWUM7QUFkRCxxQ0FBOEM7QUFFL0IsS0FBSyxvQkFDbEIsUUFBZ0IsRUFDaEIsT0FBZTtJQUVmLG9CQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBRXpCLE1BQU0sa0JBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBZ0IsRUFBRSxFQUFFO1FBQ25ELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDaEMsT0FBTyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDdkMsQ0FBQztRQUNELE9BQU8sUUFBUSxDQUFBO0lBQ2pCLENBQUMsQ0FBQyxDQUFBO0FBQ0osQ0FBQyJ9
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBzZXJ0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3Rvb2xib3gvcGF0Y2hpbmcvdXBzZXJ0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUEsNEJBWUM7QUFkRCxxQ0FBOEM7QUFFL0IsS0FBSyxvQkFDbEIsUUFBZ0IsRUFDaEIsT0FBZTtJQUVmLG9CQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBRXpCLE1BQU0sa0JBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBZ0IsRUFBRSxFQUFFO1FBQ25ELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDaEMsT0FBTyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDdkMsQ0FBQztRQUNELE9BQU8sUUFBUSxDQUFBO0lBQ2pCLENBQUMsQ0FBQyxDQUFBO0FBQ0osQ0FBQyJ9
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.collectChoicesFromTree = collectChoicesFromTree;
4
+ function collectChoicesFromTree(fd, results = [], root = '') {
5
+ if (fd.type === 'dir' &&
6
+ fd.children.find((file) => file.name === 'manifest.json') !== undefined) {
7
+ results.push(root + fd.name);
8
+ }
9
+ else if (fd.type === 'dir') {
10
+ results.concat(fd.children.flatMap((child) => collectChoicesFromTree(child, results, `${root}${fd.name}/`)));
11
+ }
12
+ return results.flat();
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvaWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90b29sYm94L3Byb21wdC9jaG9pY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBTUEsd0RBa0JDO0FBbEJELFNBQWdCLHNCQUFzQixDQUNwQyxFQUFxQixFQUNyQixVQUFvQixFQUFFLEVBQ3RCLElBQUksR0FBRyxFQUFFO0lBRVQsSUFDRSxFQUFFLENBQUMsSUFBSSxLQUFLLEtBQUs7UUFDakIsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLEtBQUssU0FBUyxFQUN2RSxDQUFDO1FBQ0QsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQzlCLENBQUM7U0FBTSxJQUFJLEVBQUUsQ0FBQyxJQUFJLEtBQUssS0FBSyxFQUFFLENBQUM7UUFDN0IsT0FBTyxDQUFDLE1BQU0sQ0FDWixFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQzVCLHNCQUFzQixDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDLElBQUksR0FBRyxDQUFDLENBQzdELENBQ0YsQ0FBQTtJQUNILENBQUM7SUFDRCxPQUFPLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQTtBQUN2QixDQUFDIn0=
@@ -15,4 +15,4 @@ exports.DEVICE_ALIAS = Object.freeze({
15
15
  pico: 'pico',
16
16
  nrf52: 'nrf52',
17
17
  });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29sYm94L3Byb21wdC9kZXZpY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVhLFFBQUEsWUFBWSxHQUF1QyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQzVFLE9BQU8sRUFBRSxLQUFLO0lBQ2QsTUFBTSxFQUFFLEtBQUs7SUFDYixHQUFHLEVBQUUsS0FBSztJQUNWLFVBQVUsRUFBRSxLQUFLO0lBQ2pCLEdBQUcsRUFBRSxLQUFLO0lBQ1YsS0FBSyxFQUFFLEtBQUs7SUFDWixHQUFHLEVBQUUsS0FBSztJQUNWLEdBQUcsRUFBRSxLQUFLO0lBQ1YsS0FBSyxFQUFFLE9BQU87SUFDZCxJQUFJLEVBQUUsTUFBTTtJQUNaLElBQUksRUFBRSxNQUFNO0lBQ1osS0FBSyxFQUFFLE9BQU87Q0FDZixDQUFDLENBQUEifQ==
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90b29sYm94L3Byb21wdC9kZXZpY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVhLFFBQUEsWUFBWSxHQUF1QyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQzVFLE9BQU8sRUFBRSxLQUFLO0lBQ2QsTUFBTSxFQUFFLEtBQUs7SUFDYixHQUFHLEVBQUUsS0FBSztJQUNWLFVBQVUsRUFBRSxLQUFLO0lBQ2pCLEdBQUcsRUFBRSxLQUFLO0lBQ1YsS0FBSyxFQUFFLEtBQUs7SUFDWixHQUFHLEVBQUUsS0FBSztJQUNWLEdBQUcsRUFBRSxLQUFLO0lBQ1YsS0FBSyxFQUFFLE9BQU87SUFDZCxJQUFJLEVBQUUsTUFBTTtJQUNaLElBQUksRUFBRSxNQUFNO0lBQ1osS0FBSyxFQUFFLE9BQU87Q0FDZixDQUFDLENBQUEifQ==