@appsemble/cli 0.18.27 → 0.18.31

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 (130) hide show
  1. package/dist/commands/app/create.d.ts +2 -1
  2. package/dist/commands/app/create.js +9 -3
  3. package/dist/commands/app/create.js.map +1 -1
  4. package/dist/commands/app/update.js +4 -2
  5. package/dist/commands/app/update.js.map +1 -1
  6. package/dist/commands/asset/create.d.ts +15 -0
  7. package/dist/commands/asset/create.js +66 -0
  8. package/dist/commands/asset/create.js.map +1 -0
  9. package/dist/commands/asset.d.ts +4 -0
  10. package/dist/commands/asset.js +11 -0
  11. package/dist/commands/asset.js.map +1 -0
  12. package/dist/commands/block/build.js +3 -4
  13. package/dist/commands/block/build.js.map +1 -1
  14. package/dist/commands/block/extract-messages.js +3 -4
  15. package/dist/commands/block/extract-messages.js.map +1 -1
  16. package/dist/commands/block/publish.js +4 -6
  17. package/dist/commands/block/publish.js.map +1 -1
  18. package/dist/commands/config/get.js +2 -1
  19. package/dist/commands/config/get.js.map +1 -1
  20. package/dist/commands/config/set.js +2 -1
  21. package/dist/commands/config/set.js.map +1 -1
  22. package/dist/commands/organization/create.js +9 -31
  23. package/dist/commands/organization/create.js.map +1 -1
  24. package/dist/commands/organization/update.js +9 -30
  25. package/dist/commands/organization/update.js.map +1 -1
  26. package/dist/commands/resource/create.d.ts +3 -1
  27. package/dist/commands/resource/create.js +17 -7
  28. package/dist/commands/resource/create.js.map +1 -1
  29. package/dist/commands/resource/update.d.ts +3 -1
  30. package/dist/commands/resource/update.js +18 -8
  31. package/dist/commands/resource/update.js.map +1 -1
  32. package/dist/commands/start.js +2 -2
  33. package/dist/commands/start.js.map +1 -1
  34. package/dist/commands/{app/team → team}/create.d.ts +5 -2
  35. package/dist/commands/team/create.js +44 -0
  36. package/dist/commands/team/create.js.map +1 -0
  37. package/dist/commands/{app/team → team}/delete.d.ts +4 -2
  38. package/dist/commands/team/delete.js +39 -0
  39. package/dist/commands/team/delete.js.map +1 -0
  40. package/dist/commands/{app/team → team}/member/delete.d.ts +4 -2
  41. package/dist/commands/{app/team → team}/member/delete.js +16 -6
  42. package/dist/commands/team/member/delete.js.map +1 -0
  43. package/dist/commands/{app/team → team}/member/invite.d.ts +4 -2
  44. package/dist/commands/{app/team → team}/member/invite.js +16 -6
  45. package/dist/commands/team/member/invite.js.map +1 -0
  46. package/dist/commands/{app/team → team}/member/update.d.ts +4 -2
  47. package/dist/commands/{app/team → team}/member/update.js +16 -6
  48. package/dist/commands/team/member/update.js.map +1 -0
  49. package/dist/commands/{app/team → team}/member.d.ts +0 -0
  50. package/dist/commands/{app/team → team}/member.js +0 -0
  51. package/dist/commands/team/member.js.map +1 -0
  52. package/dist/commands/{app/team → team}/update.d.ts +4 -2
  53. package/dist/commands/{app/team → team}/update.js +7 -10
  54. package/dist/commands/team/update.js.map +1 -0
  55. package/dist/commands/{app/team.d.ts → team.d.ts} +0 -0
  56. package/dist/commands/{app/team.js → team.js} +0 -0
  57. package/dist/commands/team.js.map +1 -0
  58. package/dist/lib/app.d.ts +146 -0
  59. package/dist/lib/app.js +332 -9
  60. package/dist/lib/app.js.map +1 -1
  61. package/dist/lib/{createResource.d.ts → asset.d.ts} +5 -4
  62. package/dist/lib/asset.js +23 -0
  63. package/dist/lib/asset.js.map +1 -0
  64. package/dist/lib/block.d.ts +61 -0
  65. package/dist/lib/block.js +297 -0
  66. package/dist/lib/block.js.map +1 -0
  67. package/dist/lib/getBlockConfigFromTypeScript.js +4 -3
  68. package/dist/lib/getBlockConfigFromTypeScript.js.map +1 -1
  69. package/dist/lib/organization.d.ts +21 -0
  70. package/dist/lib/organization.js +65 -0
  71. package/dist/lib/organization.js.map +1 -0
  72. package/dist/lib/{updateResource.d.ts → resource.d.ts} +19 -0
  73. package/dist/lib/{updateResource.js → resource.js} +17 -2
  74. package/dist/lib/resource.js.map +1 -0
  75. package/dist/lib/serverImport.js +4 -3
  76. package/dist/lib/serverImport.js.map +1 -1
  77. package/dist/lib/team.d.ts +6 -1
  78. package/dist/lib/team.js +17 -8
  79. package/dist/lib/team.js.map +1 -1
  80. package/dist/types.d.ts +2 -2
  81. package/package.json +5 -5
  82. package/dist/commands/app/team/create.js +0 -29
  83. package/dist/commands/app/team/create.js.map +0 -1
  84. package/dist/commands/app/team/delete.js +0 -29
  85. package/dist/commands/app/team/delete.js.map +0 -1
  86. package/dist/commands/app/team/member/delete.js.map +0 -1
  87. package/dist/commands/app/team/member/invite.js.map +0 -1
  88. package/dist/commands/app/team/member/update.js.map +0 -1
  89. package/dist/commands/app/team/member.js.map +0 -1
  90. package/dist/commands/app/team/update.js.map +0 -1
  91. package/dist/commands/app/team.js.map +0 -1
  92. package/dist/lib/buildBlock.d.ts +0 -9
  93. package/dist/lib/buildBlock.js +0 -39
  94. package/dist/lib/buildBlock.js.map +0 -1
  95. package/dist/lib/createApp.d.ts +0 -59
  96. package/dist/lib/createApp.js +0 -120
  97. package/dist/lib/createApp.js.map +0 -1
  98. package/dist/lib/createResource.js +0 -25
  99. package/dist/lib/createResource.js.map +0 -1
  100. package/dist/lib/discoverBlocks.d.ts +0 -10
  101. package/dist/lib/discoverBlocks.js +0 -24
  102. package/dist/lib/discoverBlocks.js.map +0 -1
  103. package/dist/lib/getBlockConfig.d.ts +0 -8
  104. package/dist/lib/getBlockConfig.js +0 -45
  105. package/dist/lib/getBlockConfig.js.map +0 -1
  106. package/dist/lib/makePayload.d.ts +0 -9
  107. package/dist/lib/makePayload.js +0 -94
  108. package/dist/lib/makePayload.js.map +0 -1
  109. package/dist/lib/processBlockMessages.d.ts +0 -2
  110. package/dist/lib/processBlockMessages.js +0 -43
  111. package/dist/lib/processBlockMessages.js.map +0 -1
  112. package/dist/lib/publishBlock.d.ts +0 -8
  113. package/dist/lib/publishBlock.js +0 -32
  114. package/dist/lib/publishBlock.js.map +0 -1
  115. package/dist/lib/traverseAppDirectory.d.ts +0 -11
  116. package/dist/lib/traverseAppDirectory.js +0 -94
  117. package/dist/lib/traverseAppDirectory.js.map +0 -1
  118. package/dist/lib/traverseBlockThemes.d.ts +0 -9
  119. package/dist/lib/traverseBlockThemes.js +0 -40
  120. package/dist/lib/traverseBlockThemes.js.map +0 -1
  121. package/dist/lib/updateApp.d.ts +0 -55
  122. package/dist/lib/updateApp.js +0 -78
  123. package/dist/lib/updateApp.js.map +0 -1
  124. package/dist/lib/updateResource.js.map +0 -1
  125. package/dist/lib/uploadAppBlockTheme.d.ts +0 -11
  126. package/dist/lib/uploadAppBlockTheme.js +0 -33
  127. package/dist/lib/uploadAppBlockTheme.js.map +0 -1
  128. package/dist/lib/uploadMessages.d.ts +0 -9
  129. package/dist/lib/uploadMessages.js +0 -39
  130. package/dist/lib/uploadMessages.js.map +0 -1
@@ -0,0 +1,61 @@
1
+ import { BlockConfig } from '@appsemble/types';
2
+ import FormData from 'form-data';
3
+ import { Stats } from 'webpack';
4
+ /**
5
+ * Builds a block using Webpack.
6
+ *
7
+ * @param config - The config of the block to build.
8
+ * @returns The Webpack stats object.
9
+ */
10
+ export declare function buildBlock(config: BlockConfig): Promise<Stats>;
11
+ /**
12
+ * Get the block configuration from a block directory.
13
+ *
14
+ * @param dir - The directory in which to search for the configuration file.
15
+ * @returns The block configuration.
16
+ */
17
+ export declare function getBlockConfig(dir: string): Promise<BlockConfig>;
18
+ /**
19
+ * Discover Appsemble blocks based on workspaces in a monorepo.
20
+ *
21
+ * Both Lerna and Yarn workspaces are supported.
22
+ *
23
+ * @param root - The project root in which to find workspaces.
24
+ * @returns Discovered Appsemble blocks.
25
+ */
26
+ export declare function discoverBlocks(root: string): Promise<BlockConfig[]>;
27
+ /**
28
+ * Configure the payload for a new block version upload.
29
+ *
30
+ * @param config - The block configuration
31
+ * @returns The payload that should be sent to the version endpoint.
32
+ */
33
+ export declare function makePayload(config: BlockConfig): Promise<FormData>;
34
+ /**
35
+ * Publish a new block version.
36
+ *
37
+ * @param config - The block configuration
38
+ * @param ignoreConflict - Prevent the command from crashing when a conflict has been detected.
39
+ */
40
+ export declare function publishBlock(config: BlockConfig, ignoreConflict: boolean): Promise<void>;
41
+ /**
42
+ * Uploads an app block theme
43
+ *
44
+ * @param filePath - The path of the index.css file
45
+ * @param organization - The ID of the organization the block belongs to.
46
+ * @param appId - The ID of the app to upload the theme for.
47
+ * @param block - The name of the block.
48
+ * @param remote - The HTTP origin to upload the theme to.
49
+ * @param force - Force update the theme if the app is locked.
50
+ */
51
+ export declare function uploadAppBlockTheme(filePath: string, organization: string, appId: number, block: string, remote: string, force: boolean): Promise<void>;
52
+ /**
53
+ * Traverses the directory at a given path for app block themes and uploads them.
54
+ *
55
+ * @param path - The path of the app.
56
+ * @param appId - The ID of the app.
57
+ * @param remote - The HTTP origin to upload the themes to.
58
+ * @param force - Force update the theme if the app is locked.
59
+ */
60
+ export declare function traverseBlockThemes(path: string, appId: number, remote: string, force: boolean): Promise<void>;
61
+ export declare function processBlockMessages(config: BlockConfig, languages: string[]): Promise<void>;
@@ -0,0 +1,297 @@
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 path_1 = require("path");
9
+ const util_1 = require("util");
10
+ const node_utils_1 = require("@appsemble/node-utils");
11
+ const utils_1 = require("@appsemble/utils");
12
+ const axios_1 = __importDefault(require("axios"));
13
+ const chalk_1 = require("chalk");
14
+ const cosmiconfig_1 = require("cosmiconfig");
15
+ const form_data_1 = __importDefault(require("form-data"));
16
+ const fs_extra_1 = require("fs-extra");
17
+ const webpack_1 = require("webpack");
18
+ const getBlockConfigFromTypeScript_1 = require("./getBlockConfigFromTypeScript");
19
+ const loadWebpackConfig_1 = require("./loadWebpackConfig");
20
+ const processCss_1 = require("./processCss");
21
+ /**
22
+ * Builds a block using Webpack.
23
+ *
24
+ * @param config - The config of the block to build.
25
+ * @returns The Webpack stats object.
26
+ */
27
+ async function buildBlock(config) {
28
+ const conf = await loadWebpackConfig_1.loadWebpackConfig(config, 'production', path_1.join(config.dir, config.output));
29
+ if (await fs_extra_1.pathExists(conf.output.path)) {
30
+ node_utils_1.logger.warn(`Removing ${conf.output.path}`);
31
+ await fs_extra_1.remove(conf.output.path);
32
+ }
33
+ node_utils_1.logger.info(`Building ${config.name}@${config.version} 🔨`);
34
+ const compiler = webpack_1.webpack(conf);
35
+ return new Promise((resolve, reject) => {
36
+ compiler.run((err, stats) => {
37
+ if (err) {
38
+ reject(err);
39
+ }
40
+ else if (stats.hasErrors()) {
41
+ reject(new node_utils_1.AppsembleError(stats.toString({ colors: true })));
42
+ }
43
+ else {
44
+ node_utils_1.logger.verbose(stats.toString({ colors: true }));
45
+ resolve(stats);
46
+ }
47
+ });
48
+ });
49
+ }
50
+ exports.buildBlock = buildBlock;
51
+ /**
52
+ * Get the block configuration from a block directory.
53
+ *
54
+ * @param dir - The directory in which to search for the configuration file.
55
+ * @returns The block configuration.
56
+ */
57
+ async function getBlockConfig(dir) {
58
+ const explorer = cosmiconfig_1.cosmiconfig('appsemble', { stopDir: dir });
59
+ const found = await explorer.search(dir);
60
+ if (!found) {
61
+ throw new node_utils_1.AppsembleError('No Appsemble configuration file found.');
62
+ }
63
+ const { config, filepath } = found;
64
+ node_utils_1.logger.info(`Found configuration file: ${filepath}`);
65
+ const [pkg] = await node_utils_1.readData(path_1.join(dir, 'package.json'));
66
+ if (!pkg.private) {
67
+ node_utils_1.logger.warn(`It is ${chalk_1.underline.yellow('highly recommended')} to set “${chalk_1.green('"private"')}: ${chalk_1.cyan('true')}” in package.json`);
68
+ }
69
+ let longDescription;
70
+ if (fs_1.existsSync(path_1.join(dir, 'README.md'))) {
71
+ longDescription = await fs_1.promises.readFile(path_1.join(dir, 'README.md'), 'utf8');
72
+ }
73
+ const result = {
74
+ description: pkg.description,
75
+ longDescription,
76
+ name: pkg.name,
77
+ version: pkg.version,
78
+ webpack: undefined,
79
+ ...config,
80
+ dir,
81
+ };
82
+ node_utils_1.logger.verbose(`Resolved block configuration: ${util_1.inspect(result, { colors: true })}`);
83
+ return result;
84
+ }
85
+ exports.getBlockConfig = getBlockConfig;
86
+ /**
87
+ * Discover Appsemble blocks based on workspaces in a monorepo.
88
+ *
89
+ * Both Lerna and Yarn workspaces are supported.
90
+ *
91
+ * @param root - The project root in which to find workspaces.
92
+ * @returns Discovered Appsemble blocks.
93
+ */
94
+ async function discoverBlocks(root) {
95
+ const dirs = await node_utils_1.getWorkspaces(root);
96
+ const manifests = await Promise.all(dirs
97
+ .concat(root)
98
+ .map((path) => getBlockConfig(path))
99
+ // Ignore non-block workspaces.
100
+ .map((p) => p.catch(() => null)));
101
+ return manifests.filter(Boolean);
102
+ }
103
+ exports.discoverBlocks = discoverBlocks;
104
+ /**
105
+ * Configure the payload for a new block version upload.
106
+ *
107
+ * @param config - The block configuration
108
+ * @returns The payload that should be sent to the version endpoint.
109
+ */
110
+ async function makePayload(config) {
111
+ const { dir, output } = config;
112
+ const distPath = path_1.resolve(dir, output);
113
+ const form = new form_data_1.default();
114
+ const { description, layout, longDescription, name, version } = config;
115
+ const { actions, events, messages, parameters } = getBlockConfigFromTypeScript_1.getBlockConfigFromTypeScript(config);
116
+ const files = await fs_1.promises.readdir(dir);
117
+ const icon = files.find((entry) => entry.match(/^icon\.(png|svg)$/));
118
+ function append(field, value) {
119
+ if (value) {
120
+ const serialized = typeof value === 'string' ? value : JSON.stringify(value);
121
+ node_utils_1.logger.verbose(`Using ${field}: ${util_1.inspect(value, { colors: true, depth: 20 })}`);
122
+ form.append(field, serialized);
123
+ }
124
+ else {
125
+ node_utils_1.logger.silly(`Skipping parameter ${field}`);
126
+ }
127
+ }
128
+ append('actions', actions);
129
+ append('description', description);
130
+ append('longDescription', longDescription);
131
+ append('events', events);
132
+ append('layout', layout);
133
+ append('name', name);
134
+ append('parameters', parameters);
135
+ append('version', version);
136
+ if (icon) {
137
+ const iconPath = path_1.join(dir, icon);
138
+ node_utils_1.logger.info(`Using icon: ${iconPath}`);
139
+ form.append('icon', fs_1.createReadStream(iconPath));
140
+ }
141
+ if (messages) {
142
+ if (!files.includes('i18n')) {
143
+ throw new node_utils_1.AppsembleError('This block has messages defined, but the message files could not be found. Try running extract-messages');
144
+ }
145
+ const messageKeys = Object.keys(messages).sort(utils_1.compareStrings);
146
+ const messagesResult = {};
147
+ const messagesPath = path_1.join(dir, 'i18n');
148
+ const translations = (await fs_1.promises.readdir(messagesPath)).map((language) => language.toLowerCase());
149
+ if (!translations.includes('en.json')) {
150
+ throw new node_utils_1.AppsembleError('Could not find ‘en.json’. Try running extract-messages');
151
+ }
152
+ const duplicates = translations.filter((language, index) => translations.indexOf(language) !== index);
153
+ if (duplicates.length) {
154
+ throw new node_utils_1.AppsembleError(`Found duplicate language codes: ‘${duplicates.join('’, ')}`);
155
+ }
156
+ for (const languageFile of translations.filter((t) => t.endsWith('.json'))) {
157
+ const language = path_1.basename(languageFile, '.json');
158
+ const languagePath = path_1.join(messagesPath, languageFile);
159
+ const [m] = await node_utils_1.readData(languagePath);
160
+ const languageKeys = Object.keys(m).sort(utils_1.compareStrings);
161
+ if (languageKeys.length !== messageKeys.length ||
162
+ languageKeys.some((key) => !messageKeys.includes(key))) {
163
+ throw new node_utils_1.AppsembleError(`‘${languagePath}’ contains mismatching message keys. Try running extract-messages`);
164
+ }
165
+ node_utils_1.logger.info(`Including ${language} translations from ‘${languagePath}’`);
166
+ messagesResult[language] = m;
167
+ }
168
+ form.append('messages', JSON.stringify(messagesResult));
169
+ }
170
+ await node_utils_1.opendirSafe(distPath, (fullpath, stat) => {
171
+ if (!stat.isFile()) {
172
+ return;
173
+ }
174
+ const relativePath = path_1.relative(distPath, fullpath);
175
+ const realPath = path_1.relative(process.cwd(), fullpath);
176
+ node_utils_1.logger.info(`Adding file: “${realPath}” as “${relativePath}”`);
177
+ form.append('files', fs_1.createReadStream(fullpath), {
178
+ filename: encodeURIComponent(relativePath),
179
+ });
180
+ }, { recursive: true });
181
+ return form;
182
+ }
183
+ exports.makePayload = makePayload;
184
+ /**
185
+ * Publish a new block version.
186
+ *
187
+ * @param config - The block configuration
188
+ * @param ignoreConflict - Prevent the command from crashing when a conflict has been detected.
189
+ */
190
+ async function publishBlock(config, ignoreConflict) {
191
+ node_utils_1.logger.info(`Publishing ${config.name}@${config.version}…`);
192
+ const form = await makePayload(config);
193
+ try {
194
+ await axios_1.default.post('/api/blocks', form);
195
+ node_utils_1.logger.info(`Successfully published ${config.name}@${config.version} 🎉`);
196
+ }
197
+ catch (err) {
198
+ if (ignoreConflict && axios_1.default.isAxiosError(err) && err.response.status === 409) {
199
+ node_utils_1.logger.warn(`${config.name}@${config.version} was already published.`);
200
+ return;
201
+ }
202
+ throw err;
203
+ }
204
+ }
205
+ exports.publishBlock = publishBlock;
206
+ /**
207
+ * Uploads an app block theme
208
+ *
209
+ * @param filePath - The path of the index.css file
210
+ * @param organization - The ID of the organization the block belongs to.
211
+ * @param appId - The ID of the app to upload the theme for.
212
+ * @param block - The name of the block.
213
+ * @param remote - The HTTP origin to upload the theme to.
214
+ * @param force - Force update the theme if the app is locked.
215
+ */
216
+ async function uploadAppBlockTheme(filePath, organization, appId, block, remote, force) {
217
+ node_utils_1.logger.info(`Upload ${organization}/${block} stylesheet for app ${appId}`);
218
+ const css = await processCss_1.processCss(filePath);
219
+ const formData = new form_data_1.default();
220
+ formData.append('force', String(force));
221
+ formData.append('style', Buffer.from(css), 'style.css');
222
+ await axios_1.default.post(`/api/apps/${appId}/style/block/${organization}/${block}`, formData, {
223
+ baseURL: remote,
224
+ });
225
+ node_utils_1.logger.info(`Upload of ${organization}/${block} stylesheet successful! 🎉`);
226
+ }
227
+ exports.uploadAppBlockTheme = uploadAppBlockTheme;
228
+ /**
229
+ * Traverses the directory at a given path for app block themes and uploads them.
230
+ *
231
+ * @param path - The path of the app.
232
+ * @param appId - The ID of the app.
233
+ * @param remote - The HTTP origin to upload the themes to.
234
+ * @param force - Force update the theme if the app is locked.
235
+ */
236
+ async function traverseBlockThemes(path, appId, remote, force) {
237
+ node_utils_1.logger.verbose(`Searching themes in ${path}`);
238
+ await node_utils_1.opendirSafe(path_1.join(path, 'theme'), async (orgDir, orgStats) => {
239
+ const organizationId = orgStats.name.toLowerCase();
240
+ if (organizationId === 'core' || organizationId === 'shared') {
241
+ return;
242
+ }
243
+ if (!organizationId.startsWith('@')) {
244
+ node_utils_1.logger.warn('Block theme directories should be named “@organizationId/blockId”');
245
+ return;
246
+ }
247
+ if (!orgStats.isDirectory()) {
248
+ node_utils_1.logger.warn(`Expected ${orgDir} to be a directory`);
249
+ return;
250
+ }
251
+ await node_utils_1.opendirSafe(orgDir, async (blockThemeDir, blockThemeStats) => {
252
+ if (!blockThemeStats.isDirectory()) {
253
+ node_utils_1.logger.warn(`Expected ${orgDir} to be a directory`);
254
+ return;
255
+ }
256
+ await uploadAppBlockTheme(path_1.join(blockThemeDir, 'index.css'), organizationId, appId, blockThemeStats.name.toLowerCase(), remote, force);
257
+ });
258
+ }, { allowMissing: true });
259
+ }
260
+ exports.traverseBlockThemes = traverseBlockThemes;
261
+ async function processBlockMessages(config, languages) {
262
+ const path = path_1.join(config.dir, 'i18n');
263
+ await fs_1.promises.mkdir(path, { recursive: true });
264
+ const dir = await fs_1.promises.readdir(path);
265
+ const { messages } = getBlockConfigFromTypeScript_1.getBlockConfigFromTypeScript(config);
266
+ if (!messages) {
267
+ node_utils_1.logger.warn(`Block ${config.name} has no messages.`);
268
+ return;
269
+ }
270
+ const keys = Object.keys(messages).sort(utils_1.compareStrings);
271
+ const base = Object.fromEntries(keys.map((key) => [key, '']));
272
+ const existingLanguages = dir
273
+ .filter((filename) => filename.endsWith('.json'))
274
+ .map((filename) => path_1.basename(filename, '.json'));
275
+ for (const language of new Set([...languages, ...existingLanguages])) {
276
+ const existingMessages = { ...base };
277
+ const name = `${language}.json`;
278
+ const langPath = path_1.join(path, name);
279
+ if (dir.includes(name)) {
280
+ const [m] = await node_utils_1.readData(langPath);
281
+ Object.assign(existingMessages, m);
282
+ }
283
+ const extraKeys = Object.keys(existingMessages).filter((key) => !keys.includes(key));
284
+ if (extraKeys.length) {
285
+ node_utils_1.logger.info(`Found ${extraKeys.length} keys too many. Removing: ${extraKeys.join(', ')}`);
286
+ for (const key of extraKeys) {
287
+ delete existingMessages[key];
288
+ }
289
+ }
290
+ await node_utils_1.writeData(langPath, existingMessages);
291
+ node_utils_1.logger.info(`Wrote to file ‘${langPath}’`);
292
+ }
293
+ node_utils_1.logger.info(`Finished extracting messages for ${config.name}.`);
294
+ node_utils_1.logger.info('');
295
+ }
296
+ exports.processBlockMessages = processBlockMessages;
297
+ //# sourceMappingURL=block.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"block.js","sourceRoot":"","sources":["../../src/lib/block.ts"],"names":[],"mappings":"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"}
@@ -195,14 +195,15 @@ function getBlockConfigFromTypeScript(blockConfig) {
195
195
  let eventListenerInterface;
196
196
  let messagesInterface;
197
197
  let patametersInterface;
198
- program.getSourceFiles().forEach((sourceFile) => {
198
+ for (const sourceFile of program.getSourceFiles()) {
199
199
  const fileName = path_1.relative(process.cwd(), sourceFile.fileName);
200
200
  // Filter TypeScript default libs
201
201
  if (program.isSourceFileDefaultLibrary(sourceFile)) {
202
202
  node_utils_1.logger.silly(`Skipping metadata extraction from: ${fileName}`);
203
- return;
203
+ continue;
204
204
  }
205
205
  node_utils_1.logger.verbose(`Searching metadata in: ${fileName}`);
206
+ // eslint-disable-next-line @typescript-eslint/no-loop-func
206
207
  typescript_1.forEachChild(sourceFile, (mod) => {
207
208
  // This node doesn’t override SDK types
208
209
  if (!typescript_1.isModuleDeclaration(mod)) {
@@ -258,7 +259,7 @@ function getBlockConfigFromTypeScript(blockConfig) {
258
259
  }
259
260
  });
260
261
  });
261
- });
262
+ }
262
263
  return {
263
264
  actions: 'actions' in blockConfig ? blockConfig.actions : processActions(actionInterface, checker),
264
265
  events: 'events' in blockConfig
@@ -1 +1 @@
1
- {"version":3,"file":"getBlockConfigFromTypeScript.js","sourceRoot":"","sources":["../../src/lib/getBlockConfigFromTypeScript.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getBlockConfigFromTypeScript.js","sourceRoot":"","sources":["../../src/lib/getBlockConfigFromTypeScript.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /// <reference types="node" />
2
+ import { ReadStream } from 'fs-extra';
3
+ interface CreateOrganizationArguments {
4
+ description: string;
5
+ email: string;
6
+ id: string;
7
+ name: string;
8
+ website: string;
9
+ icon: ReadStream;
10
+ }
11
+ interface UpdateOrganizationArguments {
12
+ description: string;
13
+ email: string;
14
+ id: string;
15
+ icon: ReadStream;
16
+ name: string;
17
+ website: string;
18
+ }
19
+ export declare function createOrganization({ description, email, icon, id, name, website, }: CreateOrganizationArguments): Promise<void>;
20
+ export declare function updateOrganization({ description, email, icon, id, name, website, }: UpdateOrganizationArguments): Promise<void>;
21
+ export {};
@@ -0,0 +1,65 @@
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.updateOrganization = exports.createOrganization = void 0;
7
+ const node_utils_1 = require("@appsemble/node-utils");
8
+ const axios_1 = __importDefault(require("axios"));
9
+ const form_data_1 = __importDefault(require("form-data"));
10
+ async function createOrganization({ description, email, icon, id, name, website, }) {
11
+ const formData = new form_data_1.default();
12
+ formData.append('id', id);
13
+ if (description) {
14
+ node_utils_1.logger.info(`Setting description to ${description}`);
15
+ formData.append('description', description);
16
+ }
17
+ if (email) {
18
+ node_utils_1.logger.info(`Setting email to ${email}`);
19
+ formData.append('email', email);
20
+ }
21
+ if (icon) {
22
+ node_utils_1.logger.info(`Including icon ${icon.path || 'from stdin'}`);
23
+ formData.append('icon', icon);
24
+ }
25
+ if (name) {
26
+ node_utils_1.logger.info(`Setting name to ${name}`);
27
+ formData.append('name', name);
28
+ }
29
+ if (website) {
30
+ node_utils_1.logger.info(`Setting website to ${website}`);
31
+ formData.append('website', website);
32
+ }
33
+ node_utils_1.logger.info(`Creating organization ${id}${name ? ` (${name})` : ''}`);
34
+ await axios_1.default.post('/api/organizations', formData);
35
+ node_utils_1.logger.info(`Successfully created organization ${id}${name ? ` (${name})` : ''}`);
36
+ }
37
+ exports.createOrganization = createOrganization;
38
+ async function updateOrganization({ description, email, icon, id, name, website, }) {
39
+ node_utils_1.logger.info(`Updating organization ${id}${name ? ` (${name})` : ''}`);
40
+ const formData = new form_data_1.default();
41
+ if (description) {
42
+ node_utils_1.logger.info(`Setting description to ${description}`);
43
+ formData.append('description', description);
44
+ }
45
+ if (email) {
46
+ node_utils_1.logger.info(`Setting email to ${email}`);
47
+ formData.append('email', email);
48
+ }
49
+ if (icon) {
50
+ node_utils_1.logger.info(`Including icon ${icon.path || 'from stdin'}`);
51
+ formData.append('icon', icon);
52
+ }
53
+ if (name) {
54
+ node_utils_1.logger.info(`Setting name to ${name}`);
55
+ formData.append('name', name);
56
+ }
57
+ if (website) {
58
+ node_utils_1.logger.info(`Setting website to ${website}`);
59
+ formData.append('website', website);
60
+ }
61
+ await axios_1.default.patch(`/api/organizations/${id}`, formData);
62
+ node_utils_1.logger.info(`Successfully updated organization ${id}${name ? ` (${name})` : ''}`);
63
+ }
64
+ exports.updateOrganization = updateOrganization;
65
+ //# sourceMappingURL=organization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"organization.js","sourceRoot":"","sources":["../../src/lib/organization.ts"],"names":[],"mappings":"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"}
@@ -16,5 +16,24 @@ interface UpdateResourceParams {
16
16
  */
17
17
  remote: string;
18
18
  }
19
+ interface CreateResourceParams {
20
+ /**
21
+ * The name of the resource that a new entry is being created of.
22
+ */
23
+ resourceName: string;
24
+ /**
25
+ * The path in which the resource JSON is located.
26
+ */
27
+ path: string;
28
+ /**
29
+ * The ID of the app to create a resource entry for.
30
+ */
31
+ appId: number;
32
+ /**
33
+ * The remote server to create the app on.
34
+ */
35
+ remote: string;
36
+ }
37
+ export declare function createResource({ appId, path, remote, resourceName, }: CreateResourceParams): Promise<void>;
19
38
  export declare function updateResource({ appId, path, remote, resourceName, }: UpdateResourceParams): Promise<void>;
20
39
  export {};
@@ -3,10 +3,25 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.updateResource = void 0;
6
+ exports.updateResource = exports.createResource = void 0;
7
7
  const url_1 = require("url");
8
8
  const node_utils_1 = require("@appsemble/node-utils");
9
9
  const axios_1 = __importDefault(require("axios"));
10
+ async function createResource({ appId, path, remote, resourceName, }) {
11
+ const [file] = await node_utils_1.readData(path);
12
+ if (typeof file !== 'object') {
13
+ throw new node_utils_1.AppsembleError(`File at ${path} does not contain an object or array of objects`);
14
+ }
15
+ const resources = [].concat(file);
16
+ node_utils_1.logger.info(`Creating ${resources.length} resource(s) from ${path}`);
17
+ for (const resource of resources) {
18
+ const { data: { id }, } = await axios_1.default.post(`/api/apps/${appId}/resources/${resourceName}`, resource, {
19
+ baseURL: remote,
20
+ });
21
+ node_utils_1.logger.info(`Successfully created resource ${id} at ${new url_1.URL(`/apps/${appId}/resources/${resourceName}/${id}`, remote)}`);
22
+ }
23
+ }
24
+ exports.createResource = createResource;
10
25
  async function updateResource({ appId, path, remote, resourceName, }) {
11
26
  const [file] = await node_utils_1.readData(path);
12
27
  if (typeof file !== 'object') {
@@ -26,4 +41,4 @@ async function updateResource({ appId, path, remote, resourceName, }) {
26
41
  }
27
42
  }
28
43
  exports.updateResource = updateResource;
29
- //# sourceMappingURL=updateResource.js.map
44
+ //# sourceMappingURL=resource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource.js","sourceRoot":"","sources":["../../src/lib/resource.ts"],"names":[],"mappings":";;;;;;AAAA,6BAA0B;AAE1B,sDAAyE;AAEzE,kDAA0B;AA8CnB,KAAK,UAAU,cAAc,CAAC,EACnC,KAAK,EACL,IAAI,EACJ,MAAM,EACN,YAAY,GACS;IACrB,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,qBAAQ,CAAW,IAAI,CAAC,CAAC;IAE9C,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC5B,MAAM,IAAI,2BAAc,CAAC,WAAW,IAAI,iDAAiD,CAAC,CAAC;KAC5F;IAED,MAAM,SAAS,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClC,mBAAM,CAAC,IAAI,CAAC,YAAY,SAAS,CAAC,MAAM,qBAAqB,IAAI,EAAE,CAAC,CAAC;IAErE,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,MAAM,EACJ,IAAI,EAAE,EAAE,EAAE,EAAE,GACb,GAAG,MAAM,eAAK,CAAC,IAAI,CAAW,aAAa,KAAK,cAAc,YAAY,EAAE,EAAE,QAAQ,EAAE;YACvF,OAAO,EAAE,MAAM;SAChB,CAAC,CAAC;QAEH,mBAAM,CAAC,IAAI,CACT,iCAAiC,EAAE,OAAO,IAAI,SAAG,CAC/C,SAAS,KAAK,cAAc,YAAY,IAAI,EAAE,EAAE,EAChD,MAAM,CACP,EAAE,CACJ,CAAC;KACH;AACH,CAAC;AA7BD,wCA6BC;AAEM,KAAK,UAAU,cAAc,CAAC,EACnC,KAAK,EACL,IAAI,EACJ,MAAM,EACN,YAAY,GACS;IACrB,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,qBAAQ,CAAW,IAAI,CAAC,CAAC;IAE9C,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC5B,MAAM,IAAI,2BAAc,CAAC,WAAW,IAAI,iDAAiD,CAAC,CAAC;KAC5F;IAED,MAAM,SAAS,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClC,mBAAM,CAAC,IAAI,CAAC,YAAY,SAAS,CAAC,MAAM,qBAAqB,IAAI,EAAE,CAAC,CAAC;IAErE,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;YAChB,mBAAM,CAAC,IAAI,CAAC,qBAAqB,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;YACtF,SAAS;SACV;QAED,MAAM,EACJ,IAAI,EAAE,EAAE,EAAE,EAAE,GACb,GAAG,MAAM,eAAK,CAAC,GAAG,CACjB,aAAa,KAAK,cAAc,YAAY,IAAI,QAAQ,CAAC,EAAE,EAAE,EAC7D,QAAQ,EACR;YACE,OAAO,EAAE,MAAM;SAChB,CACF,CAAC;QAEF,mBAAM,CAAC,IAAI,CACT,iCAAiC,EAAE,OAAO,IAAI,SAAG,CAC/C,SAAS,KAAK,cAAc,YAAY,IAAI,EAAE,EAAE,EAChD,MAAM,CACP,EAAE,CACJ,CAAC;KACH;AACH,CAAC;AAtCD,wCAsCC"}
@@ -21,6 +21,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.serverImport = void 0;
23
23
  const node_utils_1 = require("@appsemble/node-utils");
24
+ const utils_1 = require("@appsemble/utils");
24
25
  const PROMPT = process.platform === 'win32' ? '>' : '$';
25
26
  const COMMAND = /yarn/.test(process.env.npm_execpath)
26
27
  ? 'yarn add --dev --ignore-workspace-root-check'
@@ -43,11 +44,11 @@ async function serverImport(...members) {
43
44
  // build time, but while type checking.
44
45
  // eslint-disable-next-line import/no-extraneous-dependencies
45
46
  const mod = await Promise.resolve().then(() => __importStar(require('@appsemble/server')));
46
- members.forEach((member) => {
47
- if (!Object.hasOwnProperty.call(mod, member)) {
47
+ for (const member of members) {
48
+ if (!utils_1.has(mod, member)) {
48
49
  throw new Error(`@appsemble/server does not export ${member}`);
49
50
  }
50
- });
51
+ }
51
52
  return mod;
52
53
  }
53
54
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"serverImport.js","sourceRoot":"","sources":["../../src/lib/serverImport.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,sDAAuD;AAEvD,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AACxD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IACnD,CAAC,CAAC,8CAA8C;IAChD,CAAC,CAAC,wBAAwB,CAAC;AAC7B,MAAM,eAAe,GAAG;;EAEtB,MAAM,IAAI,OAAO;CAClB,CAAC;AAEF;;;;;GAKG;AACI,KAAK,UAAU,YAAY,CAEhC,GAAG,OAAY;;IACf,IAAI;QACF,qEAAqE;QACrE,4FAA4F;QAC5F,uCAAuC;QACvC,6DAA6D;QAC7D,MAAM,GAAG,GAAG,wDAAa,mBAAmB,GAAC,CAAC;QAC9C,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YACzB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE;gBAC5C,MAAM,IAAI,KAAK,CAAC,qCAAqC,MAAM,EAAE,CAAC,CAAC;aAChE;QACH,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;KACZ;IAAC,OAAO,KAAc,EAAE;QACvB,IACG,KAAa,CAAC,IAAI,KAAK,kBAAkB;YAC1C,CAAA,MAAC,KAAa,CAAC,YAAY,0CAAG,CAAC,CAAC,MAAK,UAAU,EAC/C;YACA,MAAM,KAAK,CAAC;SACb;QACD,MAAM,IAAI,2BAAc,CAAC,eAAe,CAAC,CAAC;KAC3C;AACH,CAAC;AAxBD,oCAwBC"}
1
+ {"version":3,"file":"serverImport.js","sourceRoot":"","sources":["../../src/lib/serverImport.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,sDAAuD;AACvD,4CAAuC;AAEvC,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AACxD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IACnD,CAAC,CAAC,8CAA8C;IAChD,CAAC,CAAC,wBAAwB,CAAC;AAC7B,MAAM,eAAe,GAAG;;EAEtB,MAAM,IAAI,OAAO;CAClB,CAAC;AAEF;;;;;GAKG;AACI,KAAK,UAAU,YAAY,CAEhC,GAAG,OAAY;;IACf,IAAI;QACF,qEAAqE;QACrE,4FAA4F;QAC5F,uCAAuC;QACvC,6DAA6D;QAC7D,MAAM,GAAG,GAAG,wDAAa,mBAAmB,GAAC,CAAC;QAC9C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,IAAI,CAAC,WAAG,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE;gBACrB,MAAM,IAAI,KAAK,CAAC,qCAAqC,MAAM,EAAE,CAAC,CAAC;aAChE;SACF;QACD,OAAO,GAAG,CAAC;KACZ;IAAC,OAAO,KAAc,EAAE;QACvB,IACG,KAAa,CAAC,IAAI,KAAK,kBAAkB;YAC1C,CAAA,MAAC,KAAa,CAAC,YAAY,0CAAG,CAAC,CAAC,MAAK,UAAU,EAC/C;YACA,MAAM,KAAK,CAAC;SACb;QACD,MAAM,IAAI,2BAAc,CAAC,eAAe,CAAC,CAAC;KAC3C;AACH,CAAC;AAxBD,oCAwBC"}