@appsemble/cli 0.18.26 → 0.18.30

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 (120) 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/team/create.d.ts +14 -0
  35. package/dist/commands/team/create.js +44 -0
  36. package/dist/commands/team/create.js.map +1 -0
  37. package/dist/commands/team/delete.d.ts +13 -0
  38. package/dist/commands/team/delete.js +39 -0
  39. package/dist/commands/team/delete.js.map +1 -0
  40. package/dist/commands/team/member/delete.d.ts +14 -0
  41. package/dist/commands/team/member/delete.js +44 -0
  42. package/dist/commands/team/member/delete.js.map +1 -0
  43. package/dist/commands/team/member/invite.d.ts +14 -0
  44. package/dist/commands/team/member/invite.js +44 -0
  45. package/dist/commands/team/member/invite.js.map +1 -0
  46. package/dist/commands/team/member/update.d.ts +16 -0
  47. package/dist/commands/team/member/update.js +51 -0
  48. package/dist/commands/team/member/update.js.map +1 -0
  49. package/dist/commands/team/member.d.ts +4 -0
  50. package/dist/commands/team/member.js +11 -0
  51. package/dist/commands/team/member.js.map +1 -0
  52. package/dist/commands/team/update.d.ts +15 -0
  53. package/dist/commands/team/update.js +40 -0
  54. package/dist/commands/team/update.js.map +1 -0
  55. package/dist/commands/team.d.ts +4 -0
  56. package/dist/commands/team.js +11 -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 +53 -0
  78. package/dist/lib/team.js +64 -0
  79. package/dist/lib/team.js.map +1 -0
  80. package/dist/types.d.ts +2 -2
  81. package/package.json +5 -5
  82. package/dist/lib/buildBlock.d.ts +0 -9
  83. package/dist/lib/buildBlock.js +0 -39
  84. package/dist/lib/buildBlock.js.map +0 -1
  85. package/dist/lib/createApp.d.ts +0 -59
  86. package/dist/lib/createApp.js +0 -120
  87. package/dist/lib/createApp.js.map +0 -1
  88. package/dist/lib/createResource.js +0 -25
  89. package/dist/lib/createResource.js.map +0 -1
  90. package/dist/lib/discoverBlocks.d.ts +0 -10
  91. package/dist/lib/discoverBlocks.js +0 -24
  92. package/dist/lib/discoverBlocks.js.map +0 -1
  93. package/dist/lib/getBlockConfig.d.ts +0 -8
  94. package/dist/lib/getBlockConfig.js +0 -45
  95. package/dist/lib/getBlockConfig.js.map +0 -1
  96. package/dist/lib/makePayload.d.ts +0 -9
  97. package/dist/lib/makePayload.js +0 -94
  98. package/dist/lib/makePayload.js.map +0 -1
  99. package/dist/lib/processBlockMessages.d.ts +0 -2
  100. package/dist/lib/processBlockMessages.js +0 -43
  101. package/dist/lib/processBlockMessages.js.map +0 -1
  102. package/dist/lib/publishBlock.d.ts +0 -8
  103. package/dist/lib/publishBlock.js +0 -32
  104. package/dist/lib/publishBlock.js.map +0 -1
  105. package/dist/lib/traverseAppDirectory.d.ts +0 -11
  106. package/dist/lib/traverseAppDirectory.js +0 -94
  107. package/dist/lib/traverseAppDirectory.js.map +0 -1
  108. package/dist/lib/traverseBlockThemes.d.ts +0 -9
  109. package/dist/lib/traverseBlockThemes.js +0 -40
  110. package/dist/lib/traverseBlockThemes.js.map +0 -1
  111. package/dist/lib/updateApp.d.ts +0 -55
  112. package/dist/lib/updateApp.js +0 -78
  113. package/dist/lib/updateApp.js.map +0 -1
  114. package/dist/lib/updateResource.js.map +0 -1
  115. package/dist/lib/uploadAppBlockTheme.d.ts +0 -11
  116. package/dist/lib/uploadAppBlockTheme.js +0 -33
  117. package/dist/lib/uploadAppBlockTheme.js.map +0 -1
  118. package/dist/lib/uploadMessages.d.ts +0 -9
  119. package/dist/lib/uploadMessages.js +0 -39
  120. package/dist/lib/uploadMessages.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"traverseAppDirectory.js","sourceRoot":"","sources":["../../src/lib/traverseAppDirectory.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- /**
2
- * Traverses the directory at a given path for app block themes and uploads them.
3
- *
4
- * @param path - The path of the app.
5
- * @param appId - The ID of the app.
6
- * @param remote - The HTTP origin to upload the themes to.
7
- * @param force - Force update the theme if the app is locked.
8
- */
9
- export declare function traverseBlockThemes(path: string, appId: number, remote: string, force: boolean): Promise<void>;
@@ -1,40 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.traverseBlockThemes = void 0;
4
- const path_1 = require("path");
5
- const node_utils_1 = require("@appsemble/node-utils");
6
- const uploadAppBlockTheme_1 = require("./uploadAppBlockTheme");
7
- /**
8
- * Traverses the directory at a given path for app block themes and uploads them.
9
- *
10
- * @param path - The path of the app.
11
- * @param appId - The ID of the app.
12
- * @param remote - The HTTP origin to upload the themes to.
13
- * @param force - Force update the theme if the app is locked.
14
- */
15
- async function traverseBlockThemes(path, appId, remote, force) {
16
- node_utils_1.logger.verbose(`Searching themes in ${path}`);
17
- await node_utils_1.opendirSafe(path_1.join(path, 'theme'), async (orgDir, orgStats) => {
18
- const organizationId = orgStats.name.toLowerCase();
19
- if (organizationId === 'core' || organizationId === 'shared') {
20
- return;
21
- }
22
- if (!organizationId.startsWith('@')) {
23
- node_utils_1.logger.warn('Block theme directories should be named “@organizationId/blockId”');
24
- return;
25
- }
26
- if (!orgStats.isDirectory()) {
27
- node_utils_1.logger.warn(`Expected ${orgDir} to be a directory`);
28
- return;
29
- }
30
- await node_utils_1.opendirSafe(orgDir, async (blockThemeDir, blockThemeStats) => {
31
- if (!blockThemeStats.isDirectory()) {
32
- node_utils_1.logger.warn(`Expected ${orgDir} to be a directory`);
33
- return;
34
- }
35
- await uploadAppBlockTheme_1.uploadAppBlockTheme(path_1.join(blockThemeDir, 'index.css'), organizationId, appId, blockThemeStats.name.toLowerCase(), remote, force);
36
- });
37
- }, { allowMissing: true });
38
- }
39
- exports.traverseBlockThemes = traverseBlockThemes;
40
- //# sourceMappingURL=traverseBlockThemes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"traverseBlockThemes.js","sourceRoot":"","sources":["../../src/lib/traverseBlockThemes.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAE5B,sDAA4D;AAE5D,+DAA4D;AAE5D;;;;;;;GAOG;AACI,KAAK,UAAU,mBAAmB,CACvC,IAAY,EACZ,KAAa,EACb,MAAc,EACd,KAAc;IAEd,mBAAM,CAAC,OAAO,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;IAC9C,MAAM,wBAAW,CACf,WAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EACnB,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;QACzB,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnD,IAAI,cAAc,KAAK,MAAM,IAAI,cAAc,KAAK,QAAQ,EAAE;YAC5D,OAAO;SACR;QACD,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YACnC,mBAAM,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;YACjF,OAAO;SACR;QACD,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE;YAC3B,mBAAM,CAAC,IAAI,CAAC,YAAY,MAAM,oBAAoB,CAAC,CAAC;YACpD,OAAO;SACR;QACD,MAAM,wBAAW,CAAC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,EAAE;YACjE,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,EAAE;gBAClC,mBAAM,CAAC,IAAI,CAAC,YAAY,MAAM,oBAAoB,CAAC,CAAC;gBACpD,OAAO;aACR;YACD,MAAM,yCAAmB,CACvB,WAAI,CAAC,aAAa,EAAE,WAAW,CAAC,EAChC,cAAc,EACd,KAAK,EACL,eAAe,CAAC,IAAI,CAAC,WAAW,EAAE,EAClC,MAAM,EACN,KAAK,CACN,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,EACD,EAAE,YAAY,EAAE,IAAI,EAAE,CACvB,CAAC;AACJ,CAAC;AAvCD,kDAuCC"}
@@ -1,55 +0,0 @@
1
- /// <reference types="node" />
2
- import { ReadStream } from 'fs';
3
- interface UpdateAppParams {
4
- /**
5
- * The OAuth2 client credentials to use.
6
- */
7
- clientCredentials: string;
8
- /**
9
- * If specified, the context matching this name is used, overriding command line flags.
10
- */
11
- context?: string;
12
- /**
13
- * The ID of the app to update.
14
- */
15
- id?: number;
16
- /**
17
- * The path in which the App YAML is located.
18
- */
19
- path: string;
20
- /**
21
- * Whether the App should be marked as private.
22
- */
23
- private: boolean;
24
- /**
25
- * The remote server to create the app on.
26
- */
27
- remote: string;
28
- /**
29
- * Whether the App should be marked as a template.
30
- */
31
- template: boolean;
32
- /**
33
- * Whether the locked property should be ignored.
34
- */
35
- force: boolean;
36
- /**
37
- * The icon to upload.
38
- */
39
- icon: NodeJS.ReadStream | ReadStream;
40
- /**
41
- * The background color to use for the icon in opaque contexts.
42
- */
43
- iconBackground: string;
44
- /**
45
- * The maskable icon to upload.
46
- */
47
- maskableIcon: NodeJS.ReadStream | ReadStream;
48
- }
49
- /**
50
- * Create a new App.
51
- *
52
- * @param argv - The command line options used for updating the app.
53
- */
54
- export declare function updateApp({ clientCredentials, context, force, path, ...options }: UpdateAppParams): Promise<void>;
55
- export {};
@@ -1,78 +0,0 @@
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.updateApp = void 0;
7
- const fs_1 = require("fs");
8
- const url_1 = require("url");
9
- const util_1 = require("util");
10
- const node_utils_1 = require("@appsemble/node-utils");
11
- const axios_1 = __importDefault(require("axios"));
12
- const form_data_1 = __importDefault(require("form-data"));
13
- const authentication_1 = require("./authentication");
14
- const traverseAppDirectory_1 = require("./traverseAppDirectory");
15
- const traverseBlockThemes_1 = require("./traverseBlockThemes");
16
- const uploadMessages_1 = require("./uploadMessages");
17
- /**
18
- * Create a new App.
19
- *
20
- * @param argv - The command line options used for updating the app.
21
- */
22
- async function updateApp({ clientCredentials, context, force, path, ...options }) {
23
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
24
- const file = await fs_1.promises.stat(path);
25
- const formData = new form_data_1.default();
26
- let appsembleContext;
27
- if (file.isFile()) {
28
- const [app, data] = await node_utils_1.readData(path);
29
- formData.append('yaml', data);
30
- formData.append('definition', JSON.stringify(app));
31
- }
32
- else {
33
- appsembleContext = await traverseAppDirectory_1.traverseAppDirectory(path, context, formData);
34
- }
35
- const remote = (_a = appsembleContext.remote) !== null && _a !== void 0 ? _a : options.remote;
36
- const id = (_b = appsembleContext.id) !== null && _b !== void 0 ? _b : options.id;
37
- const template = (_d = (_c = appsembleContext.template) !== null && _c !== void 0 ? _c : options.template) !== null && _d !== void 0 ? _d : false;
38
- const isPrivate = (_e = appsembleContext.private) !== null && _e !== void 0 ? _e : options.private;
39
- const iconBackground = (_f = appsembleContext.iconBackground) !== null && _f !== void 0 ? _f : options.iconBackground;
40
- const icon = (_g = options.icon) !== null && _g !== void 0 ? _g : appsembleContext.icon;
41
- const maskableIcon = (_h = options.maskableIcon) !== null && _h !== void 0 ? _h : appsembleContext.maskableIcon;
42
- node_utils_1.logger.info(`App id: ${id}`);
43
- node_utils_1.logger.verbose(`App remote: ${remote}`);
44
- node_utils_1.logger.verbose(`App is template: ${util_1.inspect(template, { colors: true })}`);
45
- node_utils_1.logger.verbose(`App is private: ${util_1.inspect(isPrivate, { colors: true })}`);
46
- node_utils_1.logger.verbose(`Icon background: ${iconBackground}`);
47
- node_utils_1.logger.verbose(`Force update: ${util_1.inspect(force, { colors: true })}`);
48
- if (!id) {
49
- throw new node_utils_1.AppsembleError('The app id must be passed as a command line flag or in the context');
50
- }
51
- formData.append('force', String(force));
52
- formData.append('template', String(template));
53
- formData.append('private', String(isPrivate));
54
- formData.append('iconBackground', iconBackground);
55
- if (icon) {
56
- const realIcon = typeof icon === 'string' ? fs_1.createReadStream(icon) : icon;
57
- node_utils_1.logger.info(`Using icon from ${(_j = realIcon.path) !== null && _j !== void 0 ? _j : 'stdin'}`);
58
- formData.append('icon', realIcon);
59
- }
60
- if (maskableIcon) {
61
- const realIcon = typeof maskableIcon === 'string' ? fs_1.createReadStream(maskableIcon) : maskableIcon;
62
- node_utils_1.logger.info(`Using icon from ${(_k = realIcon.path) !== null && _k !== void 0 ? _k : 'stdin'}`);
63
- formData.append('icon', realIcon);
64
- }
65
- await authentication_1.authenticate(remote, 'apps:write', clientCredentials);
66
- const { data } = await axios_1.default.patch(`/api/apps/${id}`, formData, { baseURL: remote });
67
- if (file.isDirectory()) {
68
- // After uploading the app, upload block styles and messages if they are available
69
- await traverseBlockThemes_1.traverseBlockThemes(path, data.id, remote, force);
70
- await uploadMessages_1.uploadMessages(path, data.id, remote, force);
71
- }
72
- const { host, protocol } = new url_1.URL(remote);
73
- node_utils_1.logger.info(`Successfully updated app ${data.definition.name}! 🙌`);
74
- node_utils_1.logger.info(`App URL: ${protocol}//${data.path}.${data.OrganizationId}.${host}`);
75
- node_utils_1.logger.info(`App store page: ${new url_1.URL(`/apps/${data.id}`, remote)}`);
76
- }
77
- exports.updateApp = updateApp;
78
- //# sourceMappingURL=updateApp.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"updateApp.js","sourceRoot":"","sources":["../../src/lib/updateApp.ts"],"names":[],"mappings":";;;;;;AAAA,2BAAkE;AAClE,6BAA0B;AAC1B,+BAA+B;AAE/B,sDAAyE;AACzE,kDAA0B;AAC1B,0DAAiC;AAGjC,qDAAgD;AAChD,iEAA8D;AAC9D,+DAA4D;AAC5D,qDAAkD;AA2DlD;;;;GAIG;AACI,KAAK,UAAU,SAAS,CAAC,EAC9B,iBAAiB,EACjB,OAAO,EACP,KAAK,EACL,IAAI,EACJ,GAAG,OAAO,EACM;;IAChB,MAAM,IAAI,GAAG,MAAM,aAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,QAAQ,GAAG,IAAI,mBAAQ,EAAE,CAAC;IAChC,IAAI,gBAAkC,CAAC;IAEvC,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;QACjB,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,MAAM,qBAAQ,CAAC,IAAI,CAAC,CAAC;QACzC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC9B,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;KACpD;SAAM;QACL,gBAAgB,GAAG,MAAM,2CAAoB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;KACxE;IAED,MAAM,MAAM,GAAG,MAAA,gBAAgB,CAAC,MAAM,mCAAI,OAAO,CAAC,MAAM,CAAC;IACzD,MAAM,EAAE,GAAG,MAAA,gBAAgB,CAAC,EAAE,mCAAI,OAAO,CAAC,EAAE,CAAC;IAC7C,MAAM,QAAQ,GAAG,MAAA,MAAA,gBAAgB,CAAC,QAAQ,mCAAI,OAAO,CAAC,QAAQ,mCAAI,KAAK,CAAC;IACxE,MAAM,SAAS,GAAG,MAAA,gBAAgB,CAAC,OAAO,mCAAI,OAAO,CAAC,OAAO,CAAC;IAC9D,MAAM,cAAc,GAAG,MAAA,gBAAgB,CAAC,cAAc,mCAAI,OAAO,CAAC,cAAc,CAAC;IACjF,MAAM,IAAI,GAAG,MAAA,OAAO,CAAC,IAAI,mCAAI,gBAAgB,CAAC,IAAI,CAAC;IACnD,MAAM,YAAY,GAAG,MAAA,OAAO,CAAC,YAAY,mCAAI,gBAAgB,CAAC,YAAY,CAAC;IAC3E,mBAAM,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC7B,mBAAM,CAAC,OAAO,CAAC,eAAe,MAAM,EAAE,CAAC,CAAC;IACxC,mBAAM,CAAC,OAAO,CAAC,oBAAoB,cAAO,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IAC1E,mBAAM,CAAC,OAAO,CAAC,mBAAmB,cAAO,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IAC1E,mBAAM,CAAC,OAAO,CAAC,oBAAoB,cAAc,EAAE,CAAC,CAAC;IACrD,mBAAM,CAAC,OAAO,CAAC,iBAAiB,cAAO,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IACpE,IAAI,CAAC,EAAE,EAAE;QACP,MAAM,IAAI,2BAAc,CAAC,oEAAoE,CAAC,CAAC;KAChG;IACD,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACxC,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9C,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9C,QAAQ,CAAC,MAAM,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;IAClD,IAAI,IAAI,EAAE;QACR,MAAM,QAAQ,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,qBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1E,mBAAM,CAAC,IAAI,CAAC,mBAAmB,MAAC,QAAuB,CAAC,IAAI,mCAAI,OAAO,EAAE,CAAC,CAAC;QAC3E,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;KACnC;IACD,IAAI,YAAY,EAAE;QAChB,MAAM,QAAQ,GACZ,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,qBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QACnF,mBAAM,CAAC,IAAI,CAAC,mBAAmB,MAAC,QAAuB,CAAC,IAAI,mCAAI,OAAO,EAAE,CAAC,CAAC;QAC3E,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;KACnC;IAED,MAAM,6BAAY,CAAC,MAAM,EAAE,YAAY,EAAE,iBAAiB,CAAC,CAAC;IAC5D,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,eAAK,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAErF,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;QACtB,kFAAkF;QAClF,MAAM,yCAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QACxD,MAAM,+BAAc,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;KACpD;IAED,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,SAAG,CAAC,MAAM,CAAC,CAAC;IAC3C,mBAAM,CAAC,IAAI,CAAC,4BAA4B,IAAI,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,CAAC;IACpE,mBAAM,CAAC,IAAI,CAAC,YAAY,QAAQ,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC,CAAC;IACjF,mBAAM,CAAC,IAAI,CAAC,mBAAmB,IAAI,SAAG,CAAC,SAAS,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;AACxE,CAAC;AAhED,8BAgEC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"updateResource.js","sourceRoot":"","sources":["../../src/lib/updateResource.ts"],"names":[],"mappings":";;;;;;AAAA,6BAA0B;AAE1B,sDAAyE;AAEzE,kDAA0B;AAwBnB,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"}
@@ -1,11 +0,0 @@
1
- /**
2
- * Uploads an app block theme
3
- *
4
- * @param filePath - The path of the index.css file
5
- * @param organization - The ID of the organization the block belongs to.
6
- * @param appId - The ID of the app to upload the theme for.
7
- * @param block - The name of the block.
8
- * @param remote - The HTTP origin to upload the theme to.
9
- * @param force - Force update the theme if the app is locked.
10
- */
11
- export declare function uploadAppBlockTheme(filePath: string, organization: string, appId: number, block: string, remote: string, force: boolean): Promise<void>;
@@ -1,33 +0,0 @@
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.uploadAppBlockTheme = 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
- const processCss_1 = require("./processCss");
11
- /**
12
- * Uploads an app block theme
13
- *
14
- * @param filePath - The path of the index.css file
15
- * @param organization - The ID of the organization the block belongs to.
16
- * @param appId - The ID of the app to upload the theme for.
17
- * @param block - The name of the block.
18
- * @param remote - The HTTP origin to upload the theme to.
19
- * @param force - Force update the theme if the app is locked.
20
- */
21
- async function uploadAppBlockTheme(filePath, organization, appId, block, remote, force) {
22
- node_utils_1.logger.info(`Upload ${organization}/${block} stylesheet for app ${appId}`);
23
- const css = await processCss_1.processCss(filePath);
24
- const formData = new form_data_1.default();
25
- formData.append('force', String(force));
26
- formData.append('style', Buffer.from(css), 'style.css');
27
- await axios_1.default.post(`/api/apps/${appId}/style/block/${organization}/${block}`, formData, {
28
- baseURL: remote,
29
- });
30
- node_utils_1.logger.info(`Upload of ${organization}/${block} stylesheet successful! 🎉`);
31
- }
32
- exports.uploadAppBlockTheme = uploadAppBlockTheme;
33
- //# sourceMappingURL=uploadAppBlockTheme.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uploadAppBlockTheme.js","sourceRoot":"","sources":["../../src/lib/uploadAppBlockTheme.ts"],"names":[],"mappings":";;;;;;AAAA,sDAA+C;AAC/C,kDAA0B;AAC1B,0DAAiC;AAEjC,6CAA0C;AAE1C;;;;;;;;;GASG;AACI,KAAK,UAAU,mBAAmB,CACvC,QAAgB,EAChB,YAAoB,EACpB,KAAa,EACb,KAAa,EACb,MAAc,EACd,KAAc;IAEd,mBAAM,CAAC,IAAI,CAAC,UAAU,YAAY,IAAI,KAAK,uBAAuB,KAAK,EAAE,CAAC,CAAC;IAE3E,MAAM,GAAG,GAAG,MAAM,uBAAU,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,IAAI,mBAAQ,EAAE,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACxC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC;IAExD,MAAM,eAAK,CAAC,IAAI,CAAC,aAAa,KAAK,gBAAgB,YAAY,IAAI,KAAK,EAAE,EAAE,QAAQ,EAAE;QACpF,OAAO,EAAE,MAAM;KAChB,CAAC,CAAC;IAEH,mBAAM,CAAC,IAAI,CAAC,aAAa,YAAY,IAAI,KAAK,4BAA4B,CAAC,CAAC;AAC9E,CAAC;AApBD,kDAoBC"}
@@ -1,9 +0,0 @@
1
- /**
2
- * Upload messages for an app.
3
- *
4
- * @param path - The path to the app directory.
5
- * @param appId - The app id to upload the messages for.
6
- * @param remote - The remote to upload the messages to.
7
- * @param force - Whether or not to force the update for locked apps.
8
- */
9
- export declare function uploadMessages(path: string, appId: string, remote: string, force: boolean): Promise<void>;
@@ -1,39 +0,0 @@
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.uploadMessages = void 0;
7
- const path_1 = require("path");
8
- const node_utils_1 = require("@appsemble/node-utils");
9
- const axios_1 = __importDefault(require("axios"));
10
- /**
11
- * Upload messages for an app.
12
- *
13
- * @param path - The path to the app directory.
14
- * @param appId - The app id to upload the messages for.
15
- * @param remote - The remote to upload the messages to.
16
- * @param force - Whether or not to force the update for locked apps.
17
- */
18
- async function uploadMessages(path, appId, remote, force) {
19
- const result = [];
20
- node_utils_1.logger.info('Searching for translations 🕵');
21
- await node_utils_1.opendirSafe(path_1.join(path, 'i18n'), async (messageFile) => {
22
- node_utils_1.logger.verbose(`Processing ${messageFile} ⚙️`);
23
- const { name: language } = path_1.parse(messageFile);
24
- if (result.some((entry) => entry.language === language)) {
25
- throw new node_utils_1.AppsembleError(`Found duplicate language “${language}”. Make sure each language only exists once in the directory.`);
26
- }
27
- const [messages] = await node_utils_1.readData(messageFile);
28
- result.push({ force, language, messages });
29
- }, { allowMissing: true });
30
- if (!result.length) {
31
- node_utils_1.logger.info('No translations found 🤷');
32
- }
33
- for (const language of result) {
34
- await axios_1.default.post(`/api/apps/${appId}/messages`, language, { baseURL: remote });
35
- node_utils_1.logger.info(`Successfully uploaded messages for language “${language.language}” 🎉`);
36
- }
37
- }
38
- exports.uploadMessages = uploadMessages;
39
- //# sourceMappingURL=uploadMessages.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uploadMessages.js","sourceRoot":"","sources":["../../src/lib/uploadMessages.ts"],"names":[],"mappings":";;;;;;AAAA,+BAAmC;AAEnC,sDAAsF;AAEtF,kDAA0B;AAE1B;;;;;;;GAOG;AACI,KAAK,UAAU,cAAc,CAClC,IAAY,EACZ,KAAa,EACb,MAAc,EACd,KAAc;IAEd,MAAM,MAAM,GAAe,EAAE,CAAC;IAE9B,mBAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAC7C,MAAM,wBAAW,CACf,WAAI,CAAC,IAAI,EAAE,MAAM,CAAC,EAClB,KAAK,EAAE,WAAW,EAAE,EAAE;QACpB,mBAAM,CAAC,OAAO,CAAC,cAAc,WAAW,KAAK,CAAC,CAAC;QAC/C,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,YAAK,CAAC,WAAW,CAAC,CAAC;QAE9C,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,EAAE;YACvD,MAAM,IAAI,2BAAc,CACtB,6BAA6B,QAAQ,+DAA+D,CACrG,CAAC;SACH;QAED,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,qBAAQ,CAAoB,WAAW,CAAC,CAAC;QAClE,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC7C,CAAC,EACD,EAAE,YAAY,EAAE,IAAI,EAAE,CACvB,CAAC;IAEF,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;QAClB,mBAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;KACzC;IAED,KAAK,MAAM,QAAQ,IAAI,MAAM,EAAE;QAC7B,MAAM,eAAK,CAAC,IAAI,CAAC,aAAa,KAAK,WAAW,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/E,mBAAM,CAAC,IAAI,CAAC,gDAAgD,QAAQ,CAAC,QAAQ,MAAM,CAAC,CAAC;KACtF;AACH,CAAC;AAnCD,wCAmCC"}