@appsemble/cli 0.20.13 → 0.20.15

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 (190) hide show
  1. package/README.md +4 -4
  2. package/__fixtures__/getBlockConfigFromTypeScript/comments/tsconfig.json +1 -1
  3. package/__fixtures__/getBlockConfigFromTypeScript/duplicateActions/tsconfig.json +1 -1
  4. package/__fixtures__/getBlockConfigFromTypeScript/duplicateEventEmitters/tsconfig.json +1 -1
  5. package/__fixtures__/getBlockConfigFromTypeScript/duplicateEventListeners/tsconfig.json +1 -1
  6. package/__fixtures__/getBlockConfigFromTypeScript/duplicateParameters/tsconfig.json +1 -1
  7. package/__fixtures__/getBlockConfigFromTypeScript/fontawesomeParameters/tsconfig.json +1 -1
  8. package/__fixtures__/getBlockConfigFromTypeScript/tsError/tsconfig.json +1 -1
  9. package/__fixtures__/getBlockConfigFromTypeScript/valid/tsconfig.json +1 -1
  10. package/commands/app/create.d.ts +1 -1
  11. package/commands/app/create.js +16 -24
  12. package/commands/app/create.js.map +1 -1
  13. package/commands/app/create.ts +3 -3
  14. package/commands/app/extract-messages.d.ts +1 -1
  15. package/commands/app/extract-messages.js +12 -20
  16. package/commands/app/extract-messages.js.map +1 -1
  17. package/commands/app/extract-messages.ts +2 -2
  18. package/commands/app/index.js +12 -36
  19. package/commands/app/index.js.map +1 -1
  20. package/commands/app/index.ts +9 -5
  21. package/commands/app/update.d.ts +1 -1
  22. package/commands/app/update.js +18 -26
  23. package/commands/app/update.js.map +1 -1
  24. package/commands/app/update.ts +4 -4
  25. package/commands/asset/create.d.ts +1 -1
  26. package/commands/asset/create.js +20 -28
  27. package/commands/asset/create.js.map +1 -1
  28. package/commands/asset/create.ts +4 -4
  29. package/commands/asset/index.js +5 -33
  30. package/commands/asset/index.js.map +1 -1
  31. package/commands/asset/index.ts +3 -3
  32. package/commands/block/build.d.ts +1 -1
  33. package/commands/block/build.js +14 -22
  34. package/commands/block/build.js.map +1 -1
  35. package/commands/block/build.ts +2 -2
  36. package/commands/block/extract-messages.d.ts +1 -1
  37. package/commands/block/extract-messages.js +15 -23
  38. package/commands/block/extract-messages.js.map +1 -1
  39. package/commands/block/extract-messages.ts +2 -2
  40. package/commands/block/index.js +12 -36
  41. package/commands/block/index.js.map +1 -1
  42. package/commands/block/index.ts +9 -5
  43. package/commands/block/publish.d.ts +1 -1
  44. package/commands/block/publish.js +17 -25
  45. package/commands/block/publish.js.map +1 -1
  46. package/commands/block/publish.ts +3 -3
  47. package/commands/cleanupResources.d.ts +1 -1
  48. package/commands/cleanupResources.js +6 -11
  49. package/commands/cleanupResources.js.map +1 -1
  50. package/commands/cleanupResources.ts +2 -2
  51. package/commands/config/get.d.ts +1 -1
  52. package/commands/config/get.js +10 -17
  53. package/commands/config/get.js.map +1 -1
  54. package/commands/config/get.ts +6 -5
  55. package/commands/config/index.js +10 -35
  56. package/commands/config/index.js.map +1 -1
  57. package/commands/config/index.ts +7 -4
  58. package/commands/config/set.d.ts +1 -1
  59. package/commands/config/set.js +15 -22
  60. package/commands/config/set.js.map +1 -1
  61. package/commands/config/set.ts +7 -6
  62. package/commands/login.d.ts +1 -1
  63. package/commands/login.js +3 -7
  64. package/commands/login.js.map +1 -1
  65. package/commands/login.ts +1 -1
  66. package/commands/logout.d.ts +1 -1
  67. package/commands/logout.js +3 -7
  68. package/commands/logout.js.map +1 -1
  69. package/commands/logout.ts +1 -1
  70. package/commands/migrate.d.ts +1 -1
  71. package/commands/migrate.js +8 -16
  72. package/commands/migrate.js.map +1 -1
  73. package/commands/migrate.ts +3 -3
  74. package/commands/organization/create.d.ts +1 -1
  75. package/commands/organization/create.js +10 -15
  76. package/commands/organization/create.js.map +1 -1
  77. package/commands/organization/create.ts +4 -4
  78. package/commands/organization/index.js +10 -35
  79. package/commands/organization/index.js.map +1 -1
  80. package/commands/organization/index.ts +7 -4
  81. package/commands/organization/update.d.ts +1 -1
  82. package/commands/organization/update.js +10 -15
  83. package/commands/organization/update.js.map +1 -1
  84. package/commands/organization/update.ts +4 -4
  85. package/commands/resource/create.d.ts +1 -1
  86. package/commands/resource/create.js +18 -26
  87. package/commands/resource/create.js.map +1 -1
  88. package/commands/resource/create.ts +4 -4
  89. package/commands/resource/index.js +10 -35
  90. package/commands/resource/index.js.map +1 -1
  91. package/commands/resource/index.ts +7 -4
  92. package/commands/resource/update.d.ts +1 -1
  93. package/commands/resource/update.js +18 -26
  94. package/commands/resource/update.js.map +1 -1
  95. package/commands/resource/update.ts +4 -4
  96. package/commands/runCronJobs.d.ts +1 -1
  97. package/commands/runCronJobs.js +6 -11
  98. package/commands/runCronJobs.js.map +1 -1
  99. package/commands/runCronJobs.ts +2 -2
  100. package/commands/start.d.ts +1 -1
  101. package/commands/start.js +10 -15
  102. package/commands/start.js.map +1 -1
  103. package/commands/start.ts +4 -4
  104. package/commands/team/create.d.ts +1 -1
  105. package/commands/team/create.js +10 -15
  106. package/commands/team/create.js.map +1 -1
  107. package/commands/team/create.ts +4 -4
  108. package/commands/team/delete.d.ts +1 -1
  109. package/commands/team/delete.js +10 -15
  110. package/commands/team/delete.js.map +1 -1
  111. package/commands/team/delete.ts +4 -4
  112. package/commands/team/index.js +14 -37
  113. package/commands/team/index.js.map +1 -1
  114. package/commands/team/index.ts +11 -6
  115. package/commands/team/member/delete.d.ts +1 -1
  116. package/commands/team/member/delete.js +10 -15
  117. package/commands/team/member/delete.js.map +1 -1
  118. package/commands/team/member/delete.ts +4 -4
  119. package/commands/team/member/index.js +12 -36
  120. package/commands/team/member/index.js.map +1 -1
  121. package/commands/team/member/index.ts +9 -5
  122. package/commands/team/member/invite.d.ts +1 -1
  123. package/commands/team/member/invite.js +10 -15
  124. package/commands/team/member/invite.js.map +1 -1
  125. package/commands/team/member/invite.ts +4 -4
  126. package/commands/team/member/update.d.ts +1 -1
  127. package/commands/team/member/update.js +12 -17
  128. package/commands/team/member/update.js.map +1 -1
  129. package/commands/team/member/update.ts +4 -4
  130. package/commands/team/update.d.ts +1 -1
  131. package/commands/team/update.js +10 -15
  132. package/commands/team/update.js.map +1 -1
  133. package/commands/team/update.ts +4 -4
  134. package/index.js +66 -94
  135. package/index.js.map +1 -1
  136. package/index.ts +65 -65
  137. package/jest.config.js +3 -1
  138. package/jest.setup.js +3 -5
  139. package/jest.setup.js.map +1 -1
  140. package/jest.setup.ts +1 -1
  141. package/lib/__snapshots__/getBlockConfigFromTypeScript.test.ts.snap +42 -6
  142. package/lib/app.d.ts +1 -1
  143. package/lib/app.js +151 -163
  144. package/lib/app.js.map +1 -1
  145. package/lib/app.ts +7 -7
  146. package/lib/asset.js +11 -18
  147. package/lib/asset.js.map +1 -1
  148. package/lib/authentication.d.ts +1 -1
  149. package/lib/authentication.js +34 -65
  150. package/lib/authentication.js.map +1 -1
  151. package/lib/authentication.ts +3 -2
  152. package/lib/block.js +99 -113
  153. package/lib/block.js.map +1 -1
  154. package/lib/block.test.js +9 -14
  155. package/lib/block.test.js.map +1 -1
  156. package/lib/block.test.ts +1 -1
  157. package/lib/block.ts +5 -5
  158. package/lib/coercers.js +5 -13
  159. package/lib/coercers.js.map +1 -1
  160. package/lib/coercers.test.js +2 -4
  161. package/lib/coercers.test.js.map +1 -1
  162. package/lib/coercers.test.ts +1 -1
  163. package/lib/getBlockConfigFromTypeScript.js +49 -56
  164. package/lib/getBlockConfigFromTypeScript.js.map +1 -1
  165. package/lib/getBlockConfigFromTypeScript.test.js +42 -46
  166. package/lib/getBlockConfigFromTypeScript.test.js.map +1 -1
  167. package/lib/getBlockConfigFromTypeScript.test.ts +7 -6
  168. package/lib/initAxios.d.ts +1 -1
  169. package/lib/initAxios.js +7 -14
  170. package/lib/initAxios.js.map +1 -1
  171. package/lib/initAxios.ts +2 -2
  172. package/lib/loadWebpackConfig.js +14 -45
  173. package/lib/loadWebpackConfig.js.map +1 -1
  174. package/lib/loadWebpackConfig.ts +10 -17
  175. package/lib/organization.js +23 -31
  176. package/lib/organization.js.map +1 -1
  177. package/lib/output.js +5 -9
  178. package/lib/output.js.map +1 -1
  179. package/lib/processCss.js +11 -18
  180. package/lib/processCss.js.map +1 -1
  181. package/lib/resource.js +17 -25
  182. package/lib/resource.js.map +1 -1
  183. package/lib/serverImport.js +6 -34
  184. package/lib/serverImport.js.map +1 -1
  185. package/lib/serverImport.ts +0 -1
  186. package/lib/team.js +28 -41
  187. package/lib/team.js.map +1 -1
  188. package/package.json +11 -10
  189. package/tsconfig.json +0 -1
  190. package/types.js +1 -2
package/lib/block.js CHANGED
@@ -1,74 +1,67 @@
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.processBlockMessages = exports.traverseBlockThemes = exports.uploadAppBlockTheme = exports.publishBlock = exports.makePayload = exports.discoverBlocks = exports.getBlockConfig = exports.buildBlock = void 0;
7
- const fs_1 = require("fs");
8
- const promises_1 = require("fs/promises");
9
- const path_1 = require("path");
10
- const util_1 = require("util");
11
- const node_utils_1 = require("@appsemble/node-utils");
12
- const utils_1 = require("@appsemble/utils");
13
- const axios_1 = __importDefault(require("axios"));
14
- const chalk_1 = __importDefault(require("chalk"));
15
- const cosmiconfig_1 = require("cosmiconfig");
16
- const form_data_1 = __importDefault(require("form-data"));
17
- const webpack_1 = require("webpack");
18
- const getBlockConfigFromTypeScript_1 = require("./getBlockConfigFromTypeScript");
19
- const loadWebpackConfig_1 = require("./loadWebpackConfig");
20
- const processCss_1 = require("./processCss");
1
+ import { createReadStream, existsSync } from 'fs';
2
+ import { mkdir, readdir, readFile, rm } from 'fs/promises';
3
+ import { basename, join, relative, resolve as resolvePath } from 'path';
4
+ import { inspect } from 'util';
5
+ import { AppsembleError, getWorkspaces, logger, opendirSafe, readData, writeData, } from '@appsemble/node-utils';
6
+ import { compareStrings } from '@appsemble/utils';
7
+ import axios from 'axios';
8
+ import chalk from 'chalk';
9
+ import { cosmiconfig } from 'cosmiconfig';
10
+ import FormData from 'form-data';
11
+ import webpack from 'webpack';
12
+ import { getBlockConfigFromTypeScript } from './getBlockConfigFromTypeScript.js';
13
+ import { loadWebpackConfig } from './loadWebpackConfig.js';
14
+ import { processCss } from './processCss.js';
21
15
  /**
22
16
  * Builds a block using Webpack.
23
17
  *
24
18
  * @param config The config of the block to build.
25
19
  * @returns The Webpack stats object.
26
20
  */
27
- async function buildBlock(config) {
28
- const conf = await (0, loadWebpackConfig_1.loadWebpackConfig)(config, 'production', (0, path_1.join)(config.dir, config.output));
29
- if ((0, fs_1.existsSync)(conf.output.path)) {
30
- node_utils_1.logger.warn(`Removing ${conf.output.path}`);
31
- await (0, promises_1.rm)(conf.output.path, { force: true, recursive: true });
21
+ export async function buildBlock(config) {
22
+ const conf = await loadWebpackConfig(config, 'production', join(config.dir, config.output));
23
+ if (existsSync(conf.output.path)) {
24
+ logger.warn(`Removing ${conf.output.path}`);
25
+ await rm(conf.output.path, { force: true, recursive: true });
32
26
  }
33
- node_utils_1.logger.info(`Building ${config.name}@${config.version} 🔨`);
34
- const compiler = (0, webpack_1.webpack)(conf);
27
+ logger.info(`Building ${config.name}@${config.version} 🔨`);
28
+ const compiler = webpack(conf);
35
29
  return new Promise((resolve, reject) => {
36
30
  compiler.run((err, stats) => {
37
31
  if (err) {
38
32
  reject(err);
39
33
  }
40
34
  else if (stats.hasErrors()) {
41
- reject(new node_utils_1.AppsembleError(stats.toString({ colors: true })));
35
+ reject(new AppsembleError(stats.toString({ colors: true })));
42
36
  }
43
37
  else {
44
- node_utils_1.logger.verbose(stats.toString({ colors: true }));
38
+ logger.verbose(stats.toString({ colors: true }));
45
39
  resolve(stats);
46
40
  }
47
41
  });
48
42
  });
49
43
  }
50
- exports.buildBlock = buildBlock;
51
44
  /**
52
45
  * Get the block configuration from a block directory.
53
46
  *
54
47
  * @param dir The directory in which to search for the configuration file.
55
48
  * @returns The block configuration.
56
49
  */
57
- async function getBlockConfig(dir) {
58
- const explorer = (0, cosmiconfig_1.cosmiconfig)('appsemble', { stopDir: dir });
50
+ export async function getBlockConfig(dir) {
51
+ const explorer = cosmiconfig('appsemble', { stopDir: dir });
59
52
  const found = await explorer.search(dir);
60
53
  if (!found) {
61
- throw new node_utils_1.AppsembleError('No Appsemble configuration file found.');
54
+ throw new AppsembleError(`No Appsemble configuration file found searching ${dir}`);
62
55
  }
63
56
  const { config, filepath } = found;
64
- node_utils_1.logger.info(`Found configuration file: ${filepath}`);
65
- const [pkg] = await (0, node_utils_1.readData)((0, path_1.join)(dir, 'package.json'));
57
+ logger.info(`Found configuration file: ${filepath}`);
58
+ const [pkg] = await readData(join(dir, 'package.json'));
66
59
  if (!pkg.private) {
67
- node_utils_1.logger.warn(`It is ${chalk_1.default.underline.yellow('highly recommended')} to set “${chalk_1.default.green('"private"')}: ${chalk_1.default.cyan('true')}” in package.json`);
60
+ logger.warn(`It is ${chalk.underline.yellow('highly recommended')} to set “${chalk.green('"private"')}: ${chalk.cyan('true')}” in package.json`);
68
61
  }
69
62
  let longDescription;
70
- if ((0, fs_1.existsSync)((0, path_1.join)(dir, 'README.md'))) {
71
- longDescription = await (0, promises_1.readFile)((0, path_1.join)(dir, 'README.md'), 'utf8');
63
+ if (existsSync(join(dir, 'README.md'))) {
64
+ longDescription = await readFile(join(dir, 'README.md'), 'utf8');
72
65
  }
73
66
  const result = {
74
67
  description: pkg.description,
@@ -79,10 +72,9 @@ async function getBlockConfig(dir) {
79
72
  ...config,
80
73
  dir,
81
74
  };
82
- node_utils_1.logger.verbose(`Resolved block configuration: ${(0, util_1.inspect)(result, { colors: true })}`);
75
+ logger.verbose(`Resolved block configuration: ${inspect(result, { colors: true })}`);
83
76
  return result;
84
77
  }
85
- exports.getBlockConfig = getBlockConfig;
86
78
  /**
87
79
  * Discover Appsemble blocks based on workspaces in a monorepo.
88
80
  *
@@ -91,8 +83,8 @@ exports.getBlockConfig = getBlockConfig;
91
83
  * @param root The project root in which to find workspaces.
92
84
  * @returns Discovered Appsemble blocks.
93
85
  */
94
- async function discoverBlocks(root) {
95
- const dirs = await (0, node_utils_1.getWorkspaces)(root);
86
+ export async function discoverBlocks(root) {
87
+ const dirs = await getWorkspaces(root);
96
88
  const manifests = await Promise.all(dirs
97
89
  .concat(root)
98
90
  .map((path) => getBlockConfig(path))
@@ -100,29 +92,28 @@ async function discoverBlocks(root) {
100
92
  .map((p) => p.catch(() => null)));
101
93
  return manifests.filter(Boolean);
102
94
  }
103
- exports.discoverBlocks = discoverBlocks;
104
95
  /**
105
96
  * Configure the payload for a new block version upload.
106
97
  *
107
98
  * @param config The block configuration
108
99
  * @returns The payload that should be sent to the version endpoint.
109
100
  */
110
- async function makePayload(config) {
101
+ export async function makePayload(config) {
111
102
  const { dir, output } = config;
112
- const distPath = (0, path_1.resolve)(dir, output);
113
- const form = new form_data_1.default();
103
+ const distPath = resolvePath(dir, output);
104
+ const form = new FormData();
114
105
  const { description, layout, longDescription, name, version, visibility } = config;
115
- const { actions, events, messages, parameters } = (0, getBlockConfigFromTypeScript_1.getBlockConfigFromTypeScript)(config);
116
- const files = await (0, promises_1.readdir)(dir);
106
+ const { actions, events, messages, parameters } = getBlockConfigFromTypeScript(config);
107
+ const files = await readdir(dir);
117
108
  const icon = files.find((entry) => entry.match(/^icon\.(png|svg)$/));
118
109
  function append(field, value) {
119
110
  if (value) {
120
111
  const serialized = typeof value === 'string' ? value : JSON.stringify(value);
121
- node_utils_1.logger.verbose(`Using ${field}: ${(0, util_1.inspect)(value, { colors: true, depth: 20 })}`);
112
+ logger.verbose(`Using ${field}: ${inspect(value, { colors: true, depth: 20 })}`);
122
113
  form.append(field, serialized);
123
114
  }
124
115
  else {
125
- node_utils_1.logger.silly(`Skipping parameter ${field}`);
116
+ logger.silly(`Skipping parameter ${field}`);
126
117
  }
127
118
  }
128
119
  append('actions', actions);
@@ -137,84 +128,82 @@ async function makePayload(config) {
137
128
  append('parameters', parameters);
138
129
  append('version', version);
139
130
  if (icon) {
140
- const iconPath = (0, path_1.join)(dir, icon);
141
- node_utils_1.logger.info(`Using icon: ${iconPath}`);
142
- form.append('icon', (0, fs_1.createReadStream)(iconPath));
131
+ const iconPath = join(dir, icon);
132
+ logger.info(`Using icon: ${iconPath}`);
133
+ form.append('icon', createReadStream(iconPath));
143
134
  }
144
135
  if (messages) {
145
136
  if (!files.includes('i18n')) {
146
- throw new node_utils_1.AppsembleError('This block has messages defined, but the message files could not be found. Try running extract-messages');
137
+ throw new AppsembleError('This block has messages defined, but the message files could not be found. Try running extract-messages');
147
138
  }
148
- const messageKeys = Object.keys(messages).sort(utils_1.compareStrings);
139
+ const messageKeys = Object.keys(messages).sort(compareStrings);
149
140
  const messagesResult = {};
150
- const messagesPath = (0, path_1.join)(dir, 'i18n');
151
- const translations = (await (0, promises_1.readdir)(messagesPath)).map((language) => language.toLowerCase());
141
+ const messagesPath = join(dir, 'i18n');
142
+ const translations = (await readdir(messagesPath)).map((language) => language.toLowerCase());
152
143
  if (!translations.includes('en.json')) {
153
- throw new node_utils_1.AppsembleError('Could not find ‘en.json’. Try running extract-messages');
144
+ throw new AppsembleError('Could not find ‘en.json’. Try running extract-messages');
154
145
  }
155
146
  const duplicates = translations.filter((language, index) => translations.indexOf(language) !== index);
156
147
  if (duplicates.length) {
157
- throw new node_utils_1.AppsembleError(`Found duplicate language codes: ‘${duplicates.join('’, ')}`);
148
+ throw new AppsembleError(`Found duplicate language codes: ‘${duplicates.join('’, ')}`);
158
149
  }
159
150
  for (const languageFile of translations.filter((t) => t.endsWith('.json'))) {
160
- const language = (0, path_1.basename)(languageFile, '.json');
161
- const languagePath = (0, path_1.join)(messagesPath, languageFile);
162
- const [m] = await (0, node_utils_1.readData)(languagePath);
163
- const languageKeys = Object.keys(m).sort(utils_1.compareStrings);
151
+ const language = basename(languageFile, '.json');
152
+ const languagePath = join(messagesPath, languageFile);
153
+ const [m] = await readData(languagePath);
154
+ const languageKeys = Object.keys(m).sort(compareStrings);
164
155
  if (languageKeys.length !== messageKeys.length ||
165
156
  languageKeys.some((key) => !messageKeys.includes(key))) {
166
- throw new node_utils_1.AppsembleError(`‘${languagePath}’ contains mismatching message keys. Try running extract-messages`);
157
+ throw new AppsembleError(`‘${languagePath}’ contains mismatching message keys. Try running extract-messages`);
167
158
  }
168
- node_utils_1.logger.info(`Including ${language} translations from ‘${languagePath}’`);
159
+ logger.info(`Including ${language} translations from ‘${languagePath}’`);
169
160
  messagesResult[language] = m;
170
161
  }
171
162
  form.append('messages', JSON.stringify(messagesResult));
172
163
  }
173
164
  if (files.includes('examples')) {
174
- await (0, node_utils_1.opendirSafe)((0, path_1.join)(dir, 'examples'), async (file, stat) => {
165
+ await opendirSafe(join(dir, 'examples'), async (file, stat) => {
175
166
  if (!stat.isFile() || !file.endsWith('.yaml')) {
176
- throw new node_utils_1.AppsembleError(`Expected ${file} to be a YAML file`);
167
+ throw new AppsembleError(`Expected ${file} to be a YAML file`);
177
168
  }
178
- node_utils_1.logger.info(`Adding example file ${file}`);
179
- form.append('examples', await (0, promises_1.readFile)(file, 'utf8'));
169
+ logger.info(`Adding example file ${file}`);
170
+ form.append('examples', await readFile(file, 'utf8'));
180
171
  }, { allowMissing: true });
181
172
  }
182
- await (0, node_utils_1.opendirSafe)(distPath, (fullpath, stat) => {
173
+ await opendirSafe(distPath, (fullpath, stat) => {
183
174
  if (!stat.isFile()) {
184
175
  return;
185
176
  }
186
- const relativePath = (0, path_1.relative)(distPath, fullpath);
187
- const realPath = (0, path_1.relative)(process.cwd(), fullpath);
188
- node_utils_1.logger.info(`Adding file: “${realPath}” as “${relativePath}”`);
189
- form.append('files', (0, fs_1.createReadStream)(fullpath), {
177
+ const relativePath = relative(distPath, fullpath);
178
+ const realPath = relative(process.cwd(), fullpath);
179
+ logger.info(`Adding file: “${realPath}” as “${relativePath}”`);
180
+ form.append('files', createReadStream(fullpath), {
190
181
  filename: encodeURIComponent(relativePath),
191
182
  });
192
183
  }, { recursive: true });
193
184
  return form;
194
185
  }
195
- exports.makePayload = makePayload;
196
186
  /**
197
187
  * Publish a new block version.
198
188
  *
199
189
  * @param config The block configuration
200
190
  * @param ignoreConflict Prevent the command from crashing when a conflict has been detected.
201
191
  */
202
- async function publishBlock(config, ignoreConflict) {
203
- node_utils_1.logger.info(`Publishing ${config.name}@${config.version}…`);
192
+ export async function publishBlock(config, ignoreConflict) {
193
+ logger.info(`Publishing ${config.name}@${config.version}…`);
204
194
  const form = await makePayload(config);
205
195
  try {
206
- await axios_1.default.post('/api/blocks', form);
207
- node_utils_1.logger.info(`Successfully published ${config.name}@${config.version} 🎉`);
196
+ await axios.post('/api/blocks', form);
197
+ logger.info(`Successfully published ${config.name}@${config.version} 🎉`);
208
198
  }
209
199
  catch (err) {
210
- if (ignoreConflict && axios_1.default.isAxiosError(err) && err.response.status === 409) {
211
- node_utils_1.logger.warn(`${config.name}@${config.version} was already published.`);
200
+ if (ignoreConflict && axios.isAxiosError(err) && err.response.status === 409) {
201
+ logger.warn(`${config.name}@${config.version} was already published.`);
212
202
  return;
213
203
  }
214
204
  throw err;
215
205
  }
216
206
  }
217
- exports.publishBlock = publishBlock;
218
207
  /**
219
208
  * Uploads an app block theme
220
209
  *
@@ -225,13 +214,12 @@ exports.publishBlock = publishBlock;
225
214
  * @param remote The HTTP origin to upload the theme to.
226
215
  * @param force Force update the theme if the app is locked.
227
216
  */
228
- async function uploadAppBlockTheme(filePath, organization, appId, block, remote, force) {
229
- node_utils_1.logger.info(`Upload ${organization}/${block} stylesheet for app ${appId}`);
230
- const style = await (0, processCss_1.processCss)(filePath);
231
- await axios_1.default.post(`/api/apps/${appId}/style/block/${organization}/${block}`, { force, style }, { baseURL: remote });
232
- node_utils_1.logger.info(`Upload of ${organization}/${block} stylesheet successful! 🎉`);
217
+ export async function uploadAppBlockTheme(filePath, organization, appId, block, remote, force) {
218
+ logger.info(`Upload ${organization}/${block} stylesheet for app ${appId}`);
219
+ const style = await processCss(filePath);
220
+ await axios.post(`/api/apps/${appId}/style/block/${organization}/${block}`, { force, style }, { baseURL: remote });
221
+ logger.info(`Upload of ${organization}/${block} stylesheet successful! 🎉`);
233
222
  }
234
- exports.uploadAppBlockTheme = uploadAppBlockTheme;
235
223
  /**
236
224
  * Traverses the directory at a given path for app block themes and uploads them.
237
225
  *
@@ -240,65 +228,63 @@ exports.uploadAppBlockTheme = uploadAppBlockTheme;
240
228
  * @param remote The HTTP origin to upload the themes to.
241
229
  * @param force Force update the theme if the app is locked.
242
230
  */
243
- async function traverseBlockThemes(path, appId, remote, force) {
244
- node_utils_1.logger.verbose(`Searching themes in ${path}`);
245
- await (0, node_utils_1.opendirSafe)((0, path_1.join)(path, 'theme'), async (orgDir, orgStats) => {
231
+ export async function traverseBlockThemes(path, appId, remote, force) {
232
+ logger.verbose(`Searching themes in ${path}`);
233
+ await opendirSafe(join(path, 'theme'), async (orgDir, orgStats) => {
246
234
  const organizationId = orgStats.name.toLowerCase();
247
235
  if (organizationId === 'core' || organizationId === 'shared') {
248
236
  return;
249
237
  }
250
238
  if (!organizationId.startsWith('@')) {
251
- node_utils_1.logger.warn('Block theme directories should be named “@organizationId/blockId”');
239
+ logger.warn('Block theme directories should be named “@organizationId/blockId”');
252
240
  return;
253
241
  }
254
242
  if (!orgStats.isDirectory()) {
255
- node_utils_1.logger.warn(`Expected ${orgDir} to be a directory`);
243
+ logger.warn(`Expected ${orgDir} to be a directory`);
256
244
  return;
257
245
  }
258
- await (0, node_utils_1.opendirSafe)(orgDir, async (blockThemeDir, blockThemeStats) => {
246
+ await opendirSafe(orgDir, async (blockThemeDir, blockThemeStats) => {
259
247
  if (!blockThemeStats.isDirectory()) {
260
- node_utils_1.logger.warn(`Expected ${orgDir} to be a directory`);
248
+ logger.warn(`Expected ${orgDir} to be a directory`);
261
249
  return;
262
250
  }
263
- await uploadAppBlockTheme((0, path_1.join)(blockThemeDir, 'index.css'), organizationId, appId, blockThemeStats.name.toLowerCase(), remote, force);
251
+ await uploadAppBlockTheme(join(blockThemeDir, 'index.css'), organizationId, appId, blockThemeStats.name.toLowerCase(), remote, force);
264
252
  });
265
253
  }, { allowMissing: true });
266
254
  }
267
- exports.traverseBlockThemes = traverseBlockThemes;
268
- async function processBlockMessages(config, languages) {
269
- const path = (0, path_1.join)(config.dir, 'i18n');
270
- await (0, promises_1.mkdir)(path, { recursive: true });
271
- const dir = await (0, promises_1.readdir)(path);
272
- const { messages } = (0, getBlockConfigFromTypeScript_1.getBlockConfigFromTypeScript)(config);
255
+ export async function processBlockMessages(config, languages) {
256
+ const path = join(config.dir, 'i18n');
257
+ await mkdir(path, { recursive: true });
258
+ const dir = await readdir(path);
259
+ const { messages } = getBlockConfigFromTypeScript(config);
273
260
  if (!messages) {
274
- node_utils_1.logger.warn(`Block ${config.name} has no messages.`);
261
+ logger.warn(`Block ${config.name} has no messages.`);
275
262
  return;
276
263
  }
277
- const keys = Object.keys(messages).sort(utils_1.compareStrings);
264
+ const keys = Object.keys(messages).sort(compareStrings);
278
265
  const base = Object.fromEntries(keys.map((key) => [key, '']));
279
266
  const existingLanguages = dir
280
267
  .filter((filename) => filename.endsWith('.json'))
281
- .map((filename) => (0, path_1.basename)(filename, '.json'));
268
+ .map((filename) => basename(filename, '.json'));
282
269
  for (const language of new Set([...languages, ...existingLanguages])) {
283
270
  const existingMessages = { ...base };
284
271
  const name = `${language}.json`;
285
- const langPath = (0, path_1.join)(path, name);
272
+ const langPath = join(path, name);
286
273
  if (dir.includes(name)) {
287
- const [m] = await (0, node_utils_1.readData)(langPath);
274
+ const [m] = await readData(langPath);
288
275
  Object.assign(existingMessages, m);
289
276
  }
290
277
  const extraKeys = Object.keys(existingMessages).filter((key) => !keys.includes(key));
291
278
  if (extraKeys.length) {
292
- node_utils_1.logger.info(`Found ${extraKeys.length} keys too many. Removing: ${extraKeys.join(', ')}`);
279
+ logger.info(`Found ${extraKeys.length} keys too many. Removing: ${extraKeys.join(', ')}`);
293
280
  for (const key of extraKeys) {
294
281
  delete existingMessages[key];
295
282
  }
296
283
  }
297
- await (0, node_utils_1.writeData)(langPath, existingMessages);
298
- node_utils_1.logger.info(`Wrote to file ‘${langPath}’`);
284
+ await writeData(langPath, existingMessages);
285
+ logger.info(`Wrote to file ‘${langPath}’`);
299
286
  }
300
- node_utils_1.logger.info(`Finished extracting messages for ${config.name}.`);
301
- node_utils_1.logger.info('');
287
+ logger.info(`Finished extracting messages for ${config.name}.`);
288
+ logger.info('');
302
289
  }
303
- exports.processBlockMessages = processBlockMessages;
304
290
  //# sourceMappingURL=block.js.map
package/lib/block.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"block.js","sourceRoot":"","sources":["block.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block.js","sourceRoot":"","sources":["block.ts"],"names":[],"mappings":"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"}
package/lib/block.test.js CHANGED
@@ -1,26 +1,21 @@
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
- const node_utils_1 = require("@appsemble/node-utils");
7
- const concat_stream_1 = __importDefault(require("concat-stream"));
8
- const block_1 = require("./block");
1
+ import { resolveFixture } from '@appsemble/node-utils';
2
+ import concat from 'concat-stream';
3
+ import { makePayload } from './block.js';
9
4
  describe('makePayload', () => {
10
5
  it('should create a form-data payload', async () => {
11
- const payload = await (0, block_1.makePayload)({
6
+ const payload = await makePayload({
12
7
  webpack: 'webpack.config',
13
8
  name: '@org/block',
14
9
  output: 'output',
15
10
  version: '1.2.3',
16
- dir: (0, node_utils_1.resolveFixture)('makePayload/no-icon'),
11
+ dir: resolveFixture('makePayload/no-icon'),
17
12
  parameters: { type: 'object' },
18
13
  actions: { onClick: {} },
19
14
  events: { listen: { test: {} } },
20
15
  });
21
16
  const boundary = payload.getBoundary();
22
17
  const buffer = await new Promise((resolve) => {
23
- payload.pipe((0, concat_stream_1.default)(resolve));
18
+ payload.pipe(concat(resolve));
24
19
  });
25
20
  expect(String(buffer)).toBe(`--${boundary}\r
26
21
  Content-Disposition: form-data; name="actions"\r
@@ -52,19 +47,19 @@ export const string = 'no-icon';
52
47
  `);
53
48
  });
54
49
  it('should include an icon if one is present', async () => {
55
- const payload = await (0, block_1.makePayload)({
50
+ const payload = await makePayload({
56
51
  webpack: 'webpack.config',
57
52
  name: '@org/block',
58
53
  output: 'output',
59
54
  version: '1.2.3',
60
- dir: (0, node_utils_1.resolveFixture)('makePayload/with-icon'),
55
+ dir: resolveFixture('makePayload/with-icon'),
61
56
  parameters: {},
62
57
  actions: {},
63
58
  events: {},
64
59
  });
65
60
  const boundary = payload.getBoundary();
66
61
  const buffer = await new Promise((resolve) => {
67
- payload.pipe((0, concat_stream_1.default)(resolve));
62
+ payload.pipe(concat(resolve));
68
63
  });
69
64
  expect(String(buffer)).toBe(`--${boundary}\r
70
65
  Content-Disposition: form-data; name="actions"\r
@@ -1 +1 @@
1
- {"version":3,"file":"block.test.js","sourceRoot":"","sources":["block.test.ts"],"names":[],"mappings":";;;;;AAAA,sDAAuD;AACvD,kEAAmC;AAEnC,mCAAsC;AAEtC,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,OAAO,GAAG,MAAM,IAAA,mBAAW,EAAC;YAChC,OAAO,EAAE,gBAAgB;YACzB,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,OAAO;YAChB,GAAG,EAAE,IAAA,2BAAc,EAAC,qBAAqB,CAAC;YAC1C,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC9B,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;YACxB,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;SACjC,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC3C,OAAO,CAAC,IAAI,CAAC,IAAA,uBAAM,EAAC,OAAO,CAAC,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ;;;;IAIzC,QAAQ;;;;IAIR,QAAQ;;;;IAIR,QAAQ;;;;IAIR,QAAQ;;;;IAIR,QAAQ;;;;;;IAMR,QAAQ;CACX,CAAC,CAAC;IACD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,OAAO,GAAG,MAAM,IAAA,mBAAW,EAAC;YAChC,OAAO,EAAE,gBAAgB;YACzB,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,OAAO;YAChB,GAAG,EAAE,IAAA,2BAAc,EAAC,uBAAuB,CAAC;YAC5C,UAAU,EAAE,EAAE;YACd,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,EAAE;SACX,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC3C,OAAO,CAAC,IAAI,CAAC,IAAA,uBAAM,EAAC,OAAO,CAAC,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ;;;;IAIzC,QAAQ;;;;IAIR,QAAQ;;;;IAIR,QAAQ;;;;IAIR,QAAQ;;;;IAIR,QAAQ;;;;;;;IAOR,QAAQ;;;;;;IAMR,QAAQ;CACX,CAAC,CAAC;IACD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"block.test.js","sourceRoot":"","sources":["block.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,MAAM,MAAM,eAAe,CAAC;AAEnC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC;YAChC,OAAO,EAAE,gBAAgB;YACzB,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,OAAO;YAChB,GAAG,EAAE,cAAc,CAAC,qBAAqB,CAAC;YAC1C,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC9B,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;YACxB,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;SACjC,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC3C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ;;;;IAIzC,QAAQ;;;;IAIR,QAAQ;;;;IAIR,QAAQ;;;;IAIR,QAAQ;;;;IAIR,QAAQ;;;;;;IAMR,QAAQ;CACX,CAAC,CAAC;IACD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC;YAChC,OAAO,EAAE,gBAAgB;YACzB,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,OAAO;YAChB,GAAG,EAAE,cAAc,CAAC,uBAAuB,CAAC;YAC5C,UAAU,EAAE,EAAE;YACd,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,EAAE;SACX,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC3C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ;;;;IAIzC,QAAQ;;;;IAIR,QAAQ;;;;IAIR,QAAQ;;;;IAIR,QAAQ;;;;IAIR,QAAQ;;;;;;;IAOR,QAAQ;;;;;;IAMR,QAAQ;CACX,CAAC,CAAC;IACD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/lib/block.test.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { resolveFixture } from '@appsemble/node-utils';
2
2
  import concat from 'concat-stream';
3
3
 
4
- import { makePayload } from './block';
4
+ import { makePayload } from './block.js';
5
5
 
6
6
  describe('makePayload', () => {
7
7
  it('should create a form-data payload', async () => {
package/lib/block.ts CHANGED
@@ -18,11 +18,11 @@ import chalk from 'chalk';
18
18
  import { cosmiconfig } from 'cosmiconfig';
19
19
  import FormData from 'form-data';
20
20
  import { PackageJson } from 'type-fest';
21
- import { Stats, webpack } from 'webpack';
21
+ import webpack, { Stats } from 'webpack';
22
22
 
23
- import { getBlockConfigFromTypeScript } from './getBlockConfigFromTypeScript';
24
- import { loadWebpackConfig } from './loadWebpackConfig';
25
- import { processCss } from './processCss';
23
+ import { getBlockConfigFromTypeScript } from './getBlockConfigFromTypeScript.js';
24
+ import { loadWebpackConfig } from './loadWebpackConfig.js';
25
+ import { processCss } from './processCss.js';
26
26
 
27
27
  /**
28
28
  * Builds a block using Webpack.
@@ -64,7 +64,7 @@ export async function getBlockConfig(dir: string): Promise<BlockConfig> {
64
64
  const explorer = cosmiconfig('appsemble', { stopDir: dir });
65
65
  const found = await explorer.search(dir);
66
66
  if (!found) {
67
- throw new AppsembleError('No Appsemble configuration file found.');
67
+ throw new AppsembleError(`No Appsemble configuration file found searching ${dir}`);
68
68
  }
69
69
  const { config, filepath } = found;
70
70
  logger.info(`Found configuration file: ${filepath}`);
package/lib/coercers.js CHANGED
@@ -1,11 +1,5 @@
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.coerceFile = exports.coerceRemote = void 0;
7
- const fs_1 = require("fs");
8
- const normalize_path_1 = __importDefault(require("normalize-path"));
1
+ import { createReadStream } from 'fs';
2
+ import normalizePath from 'normalize-path';
9
3
  /**
10
4
  * Convert a remote to a valid URL.
11
5
  *
@@ -15,7 +9,7 @@ const normalize_path_1 = __importDefault(require("normalize-path"));
15
9
  * @param value The raw remote as specified by the CLI user.
16
10
  * @returns The normalized URL.
17
11
  */
18
- function coerceRemote(value) {
12
+ export function coerceRemote(value) {
19
13
  let url = value;
20
14
  if (!/^https?:\/\//.test(url)) {
21
15
  if (/^(\d+\.?){4}(\/|$|:)/.test(url)) {
@@ -37,14 +31,13 @@ function coerceRemote(value) {
37
31
  remote.pathname = '';
38
32
  return String(remote);
39
33
  }
40
- exports.coerceRemote = coerceRemote;
41
34
  /**
42
35
  * Get a stream based on the filepath.
43
36
  *
44
37
  * @param value The filepath of the file to read.
45
38
  * @returns A stream of the file.
46
39
  */
47
- function coerceFile(value) {
40
+ export function coerceFile(value) {
48
41
  if (value == null) {
49
42
  return;
50
43
  }
@@ -56,7 +49,6 @@ function coerceFile(value) {
56
49
  if (value === '-') {
57
50
  return process.stdin;
58
51
  }
59
- return (0, fs_1.createReadStream)((0, normalize_path_1.default)(value));
52
+ return createReadStream(normalizePath(value));
60
53
  }
61
- exports.coerceFile = coerceFile;
62
54
  //# sourceMappingURL=coercers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"coercers.js","sourceRoot":"","sources":["coercers.ts"],"names":[],"mappings":";;;;;;AAAA,2BAAkD;AAElD,oEAA2C;AAE3C;;;;;;;;GAQG;AACH,SAAgB,YAAY,CAAC,KAAa;IACxC,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;QAC7B,IAAI,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACpC,sBAAsB;YACtB,GAAG,GAAG,UAAU,GAAG,EAAE,CAAC;SACvB;aAAM,IAAI,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YAC9C,4BAA4B;YAC5B,GAAG,GAAG,UAAU,GAAG,EAAE,CAAC;SACvB;aAAM;YACL,sBAAsB;YACtB,GAAG,GAAG,WAAW,GAAG,EAAE,CAAC;SACxB;KACF;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;IACjB,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC;IACnB,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;AACxB,CAAC;AAnBD,oCAmBC;AAED;;;;;GAKG;AACH,SAAgB,UAAU,CAAC,KAAa;IACtC,IAAI,KAAK,IAAI,IAAI,EAAE;QACjB,OAAO;KACR;IAED,kDAAkD;IAClD,6CAA6C;IAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,OAAO,KAAK,CAAC;KACd;IAED,IAAI,KAAK,KAAK,GAAG,EAAE;QACjB,OAAO,OAAO,CAAC,KAAK,CAAC;KACtB;IAED,OAAO,IAAA,qBAAgB,EAAC,IAAA,wBAAa,EAAC,KAAK,CAAC,CAAC,CAAC;AAChD,CAAC;AAhBD,gCAgBC"}
1
+ {"version":3,"file":"coercers.js","sourceRoot":"","sources":["coercers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAc,MAAM,IAAI,CAAC;AAElD,OAAO,aAAa,MAAM,gBAAgB,CAAC;AAE3C;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;QAC7B,IAAI,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACpC,sBAAsB;YACtB,GAAG,GAAG,UAAU,GAAG,EAAE,CAAC;SACvB;aAAM,IAAI,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YAC9C,4BAA4B;YAC5B,GAAG,GAAG,UAAU,GAAG,EAAE,CAAC;SACvB;aAAM;YACL,sBAAsB;YACtB,GAAG,GAAG,WAAW,GAAG,EAAE,CAAC;SACxB;KACF;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;IACjB,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC;IACnB,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;AACxB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,IAAI,KAAK,IAAI,IAAI,EAAE;QACjB,OAAO;KACR;IAED,kDAAkD;IAClD,6CAA6C;IAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,OAAO,KAAK,CAAC;KACd;IAED,IAAI,KAAK,KAAK,GAAG,EAAE;QACjB,OAAO,OAAO,CAAC,KAAK,CAAC;KACtB;IAED,OAAO,gBAAgB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;AAChD,CAAC"}
@@ -1,6 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const coercers_1 = require("./coercers");
1
+ import { coerceRemote } from './coercers.js';
4
2
  describe('coerceRemote', () => {
5
3
  const tests = [
6
4
  ['http://appsemble.app', 'http://appsemble.app/'],
@@ -21,7 +19,7 @@ describe('coerceRemote', () => {
21
19
  ['127.0.0.1:1337', 'http://127.0.0.1:1337/'],
22
20
  ];
23
21
  it.each(tests)('should convert %s to %s', (input, expected) => {
24
- const output = (0, coercers_1.coerceRemote)(input);
22
+ const output = coerceRemote(input);
25
23
  expect(output).toBe(expected);
26
24
  });
27
25
  });
@@ -1 +1 @@
1
- {"version":3,"file":"coercers.test.js","sourceRoot":"","sources":["coercers.test.ts"],"names":[],"mappings":";;AAAA,yCAA0C;AAE1C,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,MAAM,KAAK,GAAuB;QAChC,CAAC,sBAAsB,EAAE,uBAAuB,CAAC;QACjD,CAAC,yBAAyB,EAAE,uBAAuB,CAAC;QACpD,CAAC,uBAAuB,EAAE,wBAAwB,CAAC;QACnD,CAAC,2BAA2B,EAAE,wBAAwB,CAAC;QACvD,CAAC,4BAA4B,EAAE,6BAA6B,CAAC;QAC7D,CAAC,gCAAgC,EAAE,wBAAwB,CAAC;QAC5D,CAAC,mCAAmC,EAAE,wBAAwB,CAAC;QAC/D,CAAC,4BAA4B,EAAE,wBAAwB,CAAC;QACxD,CAAC,eAAe,EAAE,wBAAwB,CAAC;QAC3C,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;QAC3C,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;QAC3C,CAAC,eAAe,EAAE,uBAAuB,CAAC;QAC1C,CAAC,WAAW,EAAE,mBAAmB,CAAC;QAClC,CAAC,WAAW,EAAE,mBAAmB,CAAC;QAClC,CAAC,gBAAgB,EAAE,wBAAwB,CAAC;QAC5C,CAAC,gBAAgB,EAAE,wBAAwB,CAAC;KAC7C,CAAC;IAEF,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,yBAAyB,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;QAC5D,MAAM,MAAM,GAAG,IAAA,uBAAY,EAAC,KAAK,CAAC,CAAC;QACnC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"coercers.test.js","sourceRoot":"","sources":["coercers.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,MAAM,KAAK,GAAuB;QAChC,CAAC,sBAAsB,EAAE,uBAAuB,CAAC;QACjD,CAAC,yBAAyB,EAAE,uBAAuB,CAAC;QACpD,CAAC,uBAAuB,EAAE,wBAAwB,CAAC;QACnD,CAAC,2BAA2B,EAAE,wBAAwB,CAAC;QACvD,CAAC,4BAA4B,EAAE,6BAA6B,CAAC;QAC7D,CAAC,gCAAgC,EAAE,wBAAwB,CAAC;QAC5D,CAAC,mCAAmC,EAAE,wBAAwB,CAAC;QAC/D,CAAC,4BAA4B,EAAE,wBAAwB,CAAC;QACxD,CAAC,eAAe,EAAE,wBAAwB,CAAC;QAC3C,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;QAC3C,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;QAC3C,CAAC,eAAe,EAAE,uBAAuB,CAAC;QAC1C,CAAC,WAAW,EAAE,mBAAmB,CAAC;QAClC,CAAC,WAAW,EAAE,mBAAmB,CAAC;QAClC,CAAC,gBAAgB,EAAE,wBAAwB,CAAC;QAC5C,CAAC,gBAAgB,EAAE,wBAAwB,CAAC;KAC7C,CAAC;IAEF,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,yBAAyB,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;QAC5D,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}