xs-dev 0.18.0 → 0.19.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.
@@ -9,7 +9,7 @@ const command = {
9
9
  var _a;
10
10
  const { parameters, filesystem, template: { generate }, print: { warning, info, success }, prompt, } = toolbox;
11
11
  const name = parameters.first;
12
- const { typescript = false, io = false, example = false, overwrite = false, } = parameters.options;
12
+ const { typescript = false, io = false, example = false, overwrite = false, asyncMain = false, } = parameters.options;
13
13
  if (name !== undefined) {
14
14
  if (!overwrite && filesystem.isDirectory(name)) {
15
15
  warning(`Directory called ${name} already exists. Please pass the --overwrite flag to replace an existing project.`);
@@ -56,10 +56,13 @@ const command = {
56
56
  ]
57
57
  .filter(Boolean)
58
58
  .join(',\n\t');
59
+ const defines = asyncMain
60
+ ? ',\n defines: {\n async_main: 1\n }'
61
+ : '';
59
62
  await generate({
60
63
  template: 'manifest.json.ejs',
61
64
  target: `${name}/manifest.json`,
62
- props: { includes },
65
+ props: { includes, defines },
63
66
  });
64
67
  await generate({
65
68
  template: 'main.js.ejs',
@@ -74,4 +77,4 @@ const command = {
74
77
  },
75
78
  };
76
79
  exports.default = command;
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tYW5kcy9pbml0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EsdURBQWtFO0FBU2xFLE1BQU0sT0FBTyxHQUFtQjtJQUM5QixJQUFJLEVBQUUsTUFBTTtJQUNaLEtBQUssRUFBRSxDQUFDLEdBQUcsQ0FBQztJQUNaLFdBQVcsRUFBRSxvQ0FBb0M7SUFDakQsR0FBRyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRTs7UUFDckIsTUFBTSxFQUNKLFVBQVUsRUFDVixVQUFVLEVBQ1YsUUFBUSxFQUFFLEVBQUUsUUFBUSxFQUFFLEVBQ3RCLEtBQUssRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQ2pDLE1BQU0sR0FDUCxHQUFHLE9BQU8sQ0FBQTtRQUVYLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUE7UUFDN0IsTUFBTSxFQUNKLFVBQVUsR0FBRyxLQUFLLEVBQ2xCLEVBQUUsR0FBRyxLQUFLLEVBQ1YsT0FBTyxHQUFHLEtBQUssRUFDZixTQUFTLEdBQUcsS0FBSyxHQUNsQixHQUFnQixVQUFVLENBQUMsT0FBTyxDQUFBO1FBRW5DLElBQUksSUFBSSxLQUFLLFNBQVMsRUFBRTtZQUN0QixJQUFJLENBQUMsU0FBUyxJQUFJLFVBQVUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQzlDLE9BQU8sQ0FDTCxvQkFBb0IsSUFBSSxtRkFBbUYsQ0FDNUcsQ0FBQTtnQkFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO2FBQ2hCO1lBQ0QsSUFBSSxPQUFPLEtBQUssS0FBSyxFQUFFO2dCQUNyQix1QkFBdUI7Z0JBQ3ZCLE1BQU0sa0JBQWtCLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FDM0MsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQzVCLFVBQVUsQ0FDWCxD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
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tYW5kcy9pbml0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EsdURBQWtFO0FBVWxFLE1BQU0sT0FBTyxHQUFtQjtJQUM5QixJQUFJLEVBQUUsTUFBTTtJQUNaLEtBQUssRUFBRSxDQUFDLEdBQUcsQ0FBQztJQUNaLFdBQVcsRUFBRSxvQ0FBb0M7SUFDakQsR0FBRyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRTs7UUFDckIsTUFBTSxFQUNKLFVBQVUsRUFDVixVQUFVLEVBQ1YsUUFBUSxFQUFFLEVBQUUsUUFBUSxFQUFFLEVBQ3RCLEtBQUssRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQ2pDLE1BQU0sR0FDUCxHQUFHLE9BQU8sQ0FBQTtRQUVYLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUE7UUFDN0IsTUFBTSxFQUNKLFVBQVUsR0FBRyxLQUFLLEVBQ2xCLEVBQUUsR0FBRyxLQUFLLEVBQ1YsT0FBTyxHQUFHLEtBQUssRUFDZixTQUFTLEdBQUcsS0FBSyxFQUNqQixTQUFTLEdBQUcsS0FBSyxHQUNsQixHQUFnQixVQUFVLENBQUMsT0FBTyxDQUFBO1FBRW5DLElBQUksSUFBSSxLQUFLLFNBQVMsRUFBRTtZQUN0QixJQUFJLENBQUMsU0FBUyxJQUFJLFVBQVUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQzlDLE9BQU8sQ0FDTCxvQkFBb0IsSUFBSSxtRkFBbUYsQ0FDNUcsQ0FBQTtnQkFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO2FBQ2hCO1lBQ0QsSUFBSSxPQUFPLEtBQUssS0FBSyxFQUFFO2dCQUNyQix1QkFBdUI7Z0JBQ3ZCLE1BQU0sa0JBQWtCLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FDM0MsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxD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
@@ -4,5 +4,5 @@
4
4
  ],
5
5
  "modules": {
6
6
  "*": "./main"
7
- }
7
+ }<%- props.defines %>
8
8
  }
@@ -28,6 +28,14 @@ The `--io` flag sets up the project to use the [TC53 IO manifest](https://github
28
28
  xs-dev init my-io-project --io
29
29
  ```
30
30
 
31
+ ## asyncMain
32
+
33
+ The `--asyncMain` flag will enable top level await in your project's entry file. In XS, TLA is only be available in imported modules by default.
34
+
35
+ ```
36
+ xs-dev init my-io-project --asyncMain
37
+ ```
38
+
31
39
  ## Moddable example
32
40
 
33
41
  For the `--example` flag, it can be used as a boolean to select a project from the list of available [Moddable examples](https://github.com/Moddable-OpenSource/moddable/tree/public/examples):
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "xs-dev",
3
- "version": "0.18.0",
3
+ "version": "0.19.0",
4
4
  "description": "CLI for automating the setup and usage of Moddable XS tools",
5
5
  "types": "build/types/types.d.ts",
6
6
  "bin": {