@aws-amplify/amplify-util-uibuilder 1.1.4 → 1.2.0-geo.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/lib/commands/cloneComponentsFromEnv.d.ts +3 -0
  3. package/lib/commands/cloneComponentsFromEnv.d.ts.map +1 -0
  4. package/lib/commands/cloneComponentsFromEnv.js +68 -0
  5. package/lib/commands/cloneComponentsFromEnv.js.map +1 -0
  6. package/lib/commands/generateComponents.d.ts +3 -0
  7. package/lib/commands/generateComponents.d.ts.map +1 -0
  8. package/lib/commands/generateComponents.js +50 -0
  9. package/lib/commands/generateComponents.js.map +1 -0
  10. package/lib/commands/help.d.ts +2 -0
  11. package/lib/commands/help.d.ts.map +1 -0
  12. package/lib/commands/help.js +9 -0
  13. package/lib/commands/help.js.map +1 -0
  14. package/lib/commands/utils/createUiBuilderComponent.d.ts +5 -0
  15. package/lib/commands/utils/createUiBuilderComponent.d.ts.map +1 -0
  16. package/lib/commands/utils/createUiBuilderComponent.js +64 -0
  17. package/lib/commands/utils/createUiBuilderComponent.js.map +1 -0
  18. package/lib/commands/utils/extractArgs.d.ts +11 -0
  19. package/lib/commands/utils/extractArgs.d.ts.map +1 -0
  20. package/lib/commands/utils/extractArgs.js +26 -0
  21. package/lib/commands/utils/extractArgs.js.map +1 -0
  22. package/lib/commands/utils/getUiBuilderComponentsPath.d.ts +3 -0
  23. package/lib/commands/utils/getUiBuilderComponentsPath.d.ts.map +1 -0
  24. package/lib/commands/utils/getUiBuilderComponentsPath.js +20 -0
  25. package/lib/commands/utils/getUiBuilderComponentsPath.js.map +1 -0
  26. package/lib/commands/utils/notifyMissingPackages.d.ts +3 -0
  27. package/lib/commands/utils/notifyMissingPackages.d.ts.map +1 -0
  28. package/lib/commands/utils/notifyMissingPackages.js +45 -0
  29. package/lib/commands/utils/notifyMissingPackages.js.map +1 -0
  30. package/lib/commands/utils/shouldRenderComponents.d.ts +3 -0
  31. package/lib/commands/utils/shouldRenderComponents.d.ts.map +1 -0
  32. package/lib/commands/utils/shouldRenderComponents.js +34 -0
  33. package/lib/commands/utils/shouldRenderComponents.js.map +1 -0
  34. package/lib/commands/utils/syncAmplifyUiBuilderComponents.d.ts +31 -0
  35. package/lib/commands/utils/syncAmplifyUiBuilderComponents.d.ts.map +1 -0
  36. package/lib/commands/utils/syncAmplifyUiBuilderComponents.js +116 -0
  37. package/lib/commands/utils/syncAmplifyUiBuilderComponents.js.map +1 -0
  38. package/lib/commands/version.d.ts +2 -0
  39. package/lib/commands/version.d.ts.map +1 -0
  40. package/lib/commands/version.js +32 -0
  41. package/lib/commands/version.js.map +1 -0
  42. package/lib/event-handlers/handle-PostEnvAdd.d.ts +3 -0
  43. package/lib/event-handlers/handle-PostEnvAdd.d.ts.map +1 -0
  44. package/lib/event-handlers/handle-PostEnvAdd.js +17 -0
  45. package/lib/event-handlers/handle-PostEnvAdd.js.map +1 -0
  46. package/lib/event-handlers/handle-PostPull.d.ts +3 -0
  47. package/lib/event-handlers/handle-PostPull.d.ts.map +1 -0
  48. package/lib/event-handlers/handle-PostPull.js +14 -0
  49. package/lib/event-handlers/handle-PostPull.js.map +1 -0
  50. package/lib/index.d.ts +6 -0
  51. package/lib/index.d.ts.map +1 -0
  52. package/lib/index.js +22 -0
  53. package/lib/index.js.map +1 -0
  54. package/package.json +37 -7
  55. package/src/__tests__/cloneComponentsFromEnv.test.ts +49 -0
  56. package/src/__tests__/createUiBuilderComponent.test.ts +60 -0
  57. package/src/__tests__/generateComponents.test.ts +50 -0
  58. package/src/__tests__/handleEvents.test.ts +21 -0
  59. package/src/__tests__/help.test.ts +10 -0
  60. package/src/__tests__/mock.json +1 -0
  61. package/src/__tests__/notifyMissingPackages.test.ts +89 -0
  62. package/src/__tests__/package.json +3 -0
  63. package/{commands/utils/__tests__/shouldRenderComponents.test.js → src/__tests__/shouldRenderComponents.test.ts} +3 -2
  64. package/src/__tests__/syncAmplifyUiComponents.test.ts +150 -0
  65. package/src/__tests__/version.test.ts +10 -0
  66. package/src/commands/cloneComponentsFromEnv.ts +72 -0
  67. package/{commands/generateComponents.js → src/commands/generateComponents.ts} +13 -15
  68. package/src/commands/help.ts +5 -0
  69. package/src/commands/utils/createUiBuilderComponent.ts +75 -0
  70. package/{commands/utils/extractArgs.js → src/commands/utils/extractArgs.ts} +3 -5
  71. package/{commands/utils/getUiBuilderComponentsPath.js → src/commands/utils/getUiBuilderComponentsPath.ts} +5 -8
  72. package/src/commands/utils/notifyMissingPackages.ts +40 -0
  73. package/src/commands/utils/shouldRenderComponents.ts +34 -0
  74. package/{commands/utils/syncAmplifyUiBuilderComponents.js → src/commands/utils/syncAmplifyUiBuilderComponents.ts} +37 -43
  75. package/src/commands/version.ts +6 -0
  76. package/{event-handlers/handle-PostEnvAdd.js → src/event-handlers/handle-PostEnvAdd.ts} +4 -7
  77. package/{event-handlers/handle-PostPull.js → src/event-handlers/handle-PostPull.ts} +4 -7
  78. package/{index.js → src/index.ts} +6 -10
  79. package/tsconfig.json +9 -0
  80. package/tsconfig.tsbuildinfo +1 -0
  81. package/commands/cloneComponentsFromEnv.js +0 -79
  82. package/commands/help.js +0 -7
  83. package/commands/utils/__tests__/createUiComponents.test.js +0 -46
  84. package/commands/utils/__tests__/syncAmplifyUiComponents.test.js +0 -67
  85. package/commands/utils/createUiBuilderComponent.js +0 -85
  86. package/commands/utils/logger.js +0 -24
  87. package/commands/utils/mockUiBuilderData.js +0 -149
  88. package/commands/utils/notifyMissingPackages.js +0 -27
  89. package/commands/utils/shouldRenderComponents.js +0 -38
  90. package/commands/version.js +0 -10
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syncAmplifyUiBuilderComponents.js","sourceRoot":"","sources":["../../../src/commands/utils/syncAmplifyUiBuilderComponents.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function run(): Promise<void>;
2
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/commands/version.ts"],"names":[],"mappings":"AAGA,wBAAsB,GAAG,kBAExB"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ exports.run = void 0;
26
+ const amplify_prompts_1 = require("amplify-prompts");
27
+ const path_1 = __importDefault(require("path"));
28
+ async function run() {
29
+ amplify_prompts_1.printer.info((await Promise.resolve().then(() => __importStar(require(path_1.default.join(__dirname, '..', '..', 'package.json'))))).version);
30
+ }
31
+ exports.run = run;
32
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/commands/version.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAA0C;AAC1C,gDAAwB;AAEjB,KAAK,UAAU,GAAG;IACvB,yBAAO,CAAC,IAAI,CAAC,CAAC,wDAAa,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,GAAC,CAAC,CAAC,OAAO,CAAC,CAAC;AACzF,CAAC;AAFD,kBAEC"}
@@ -0,0 +1,3 @@
1
+ import { $TSContext } from 'amplify-cli-core';
2
+ export declare function run(context: $TSContext): Promise<void>;
3
+ //# sourceMappingURL=handle-PostEnvAdd.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handle-PostEnvAdd.d.ts","sourceRoot":"","sources":["../../src/event-handlers/handle-PostEnvAdd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,wBAAsB,GAAG,CAAC,OAAO,EAAE,UAAU,iBAU5C"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.run = void 0;
4
+ const amplify_prompts_1 = require("amplify-prompts");
5
+ async function run(context) {
6
+ try {
7
+ await context.amplify.invokePluginMethod(context, 'ui-builder', undefined, 'executeAmplifyCommand', [
8
+ context,
9
+ 'cloneComponentsFromEnv',
10
+ ]);
11
+ }
12
+ catch (e) {
13
+ amplify_prompts_1.printer.debug(e);
14
+ }
15
+ }
16
+ exports.run = run;
17
+ //# sourceMappingURL=handle-PostEnvAdd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handle-PostEnvAdd.js","sourceRoot":"","sources":["../../src/event-handlers/handle-PostEnvAdd.ts"],"names":[],"mappings":";;;AACA,qDAA0C;AAEnC,KAAK,UAAU,GAAG,CAAC,OAAmB;IAC3C,IAAI;QACF,MAAM,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,uBAAuB,EAAE;YAClG,OAAO;YACP,wBAAwB;SACzB,CAAC,CAAC;KACJ;IAAC,OAAO,CAAC,EAAE;QAEV,yBAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAClB;AACH,CAAC;AAVD,kBAUC"}
@@ -0,0 +1,3 @@
1
+ import { $TSContext } from 'amplify-cli-core';
2
+ export declare function run(context: $TSContext): Promise<void>;
3
+ //# sourceMappingURL=handle-PostPull.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handle-PostPull.d.ts","sourceRoot":"","sources":["../../src/event-handlers/handle-PostPull.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,wBAAsB,GAAG,CAAC,OAAO,EAAE,UAAU,iBAO5C"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.run = void 0;
4
+ const amplify_prompts_1 = require("amplify-prompts");
5
+ async function run(context) {
6
+ try {
7
+ await context.amplify.invokePluginMethod(context, 'ui-builder', undefined, 'executeAmplifyCommand', [context, 'generateComponents']);
8
+ }
9
+ catch (e) {
10
+ amplify_prompts_1.printer.debug(e);
11
+ }
12
+ }
13
+ exports.run = run;
14
+ //# sourceMappingURL=handle-PostPull.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handle-PostPull.js","sourceRoot":"","sources":["../../src/event-handlers/handle-PostPull.ts"],"names":[],"mappings":";;;AACA,qDAA0C;AAEnC,KAAK,UAAU,GAAG,CAAC,OAAmB;IAC3C,IAAI;QACF,MAAM,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,uBAAuB,EAAE,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC,CAAC;KACtI;IAAC,OAAO,CAAC,EAAE;QAEV,yBAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAClB;AACH,CAAC;AAPD,kBAOC"}
package/lib/index.d.ts ADDED
@@ -0,0 +1,6 @@
1
+ import { $TSContext } from 'amplify-cli-core';
2
+ export declare function executeAmplifyCommand(context: $TSContext, cmd: string): Promise<void>;
3
+ export declare function handleAmplifyEvent(context: $TSContext, { event }: {
4
+ event: string;
5
+ }): Promise<void>;
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,iBAK3E;AAED,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,iBAKzF"}
package/lib/index.js ADDED
@@ -0,0 +1,22 @@
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.handleAmplifyEvent = exports.executeAmplifyCommand = void 0;
7
+ const path_1 = __importDefault(require("path"));
8
+ async function executeAmplifyCommand(context, cmd) {
9
+ const commandsDirPath = path_1.default.normalize(path_1.default.join(__dirname, 'commands'));
10
+ const commandPath = path_1.default.join(commandsDirPath, cmd ? cmd : context.input.command);
11
+ const commandModule = require(commandPath);
12
+ await commandModule.run(context);
13
+ }
14
+ exports.executeAmplifyCommand = executeAmplifyCommand;
15
+ async function handleAmplifyEvent(context, { event }) {
16
+ const eventHandlersDirPath = path_1.default.normalize(path_1.default.join(__dirname, 'event-handlers'));
17
+ const eventHandlerPath = path_1.default.join(eventHandlersDirPath, `handle-${event}`);
18
+ const eventHandlerModule = require(eventHandlerPath);
19
+ await eventHandlerModule.run(context);
20
+ }
21
+ exports.handleAmplifyEvent = handleAmplifyEvent;
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AACA,gDAAwB;AAEjB,KAAK,UAAU,qBAAqB,CAAC,OAAmB,EAAE,GAAW;IAC1E,MAAM,eAAe,GAAG,cAAI,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;IACzE,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClF,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC3C,MAAM,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACnC,CAAC;AALD,sDAKC;AAEM,KAAK,UAAU,kBAAkB,CAAC,OAAmB,EAAE,EAAE,KAAK,EAAqB;IACxF,MAAM,oBAAoB,GAAG,cAAI,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAC;IACpF,MAAM,gBAAgB,GAAG,cAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,UAAU,KAAK,EAAE,CAAC,CAAC;IAC5E,MAAM,kBAAkB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACrD,MAAM,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACxC,CAAC;AALD,gDAKC"}
package/package.json CHANGED
@@ -1,9 +1,10 @@
1
1
  {
2
2
  "name": "@aws-amplify/amplify-util-uibuilder",
3
- "version": "1.1.4",
3
+ "version": "1.2.0-geo.0",
4
4
  "description": "",
5
- "main": "index.js",
5
+ "main": "lib/index.js",
6
6
  "scripts": {
7
+ "build": "tsc",
7
8
  "test": "jest"
8
9
  },
9
10
  "author": "Amazon Web Services",
@@ -12,12 +13,41 @@
12
13
  "access": "public"
13
14
  },
14
15
  "dependencies": {
15
- "@aws-amplify/codegen-ui": "^1.0.0",
16
- "@aws-amplify/codegen-ui-react": "^1.0.0",
16
+ "@aws-amplify/codegen-ui": "1.2.0",
17
+ "@aws-amplify/codegen-ui-react": "1.2.0",
18
+ "amplify-cli-core": "2.4.3",
19
+ "amplify-prompts": "1.6.0",
20
+ "amplify-provider-awscloudformation": "5.8.1",
17
21
  "aws-sdk": "^2.1042.0"
18
22
  },
19
- "devDependencies": {
20
- "amplify-cli-core": "2.4.1"
23
+ "jest": {
24
+ "testRunner": "jest-circus/runner",
25
+ "preset": "ts-jest",
26
+ "transform": {
27
+ "^.+\\.tsx?$": "ts-jest"
28
+ },
29
+ "collectCoverage": true,
30
+ "collectCoverageFrom": [
31
+ "src/**/*.ts",
32
+ "!**/node_modules/**",
33
+ "!src/__tests__/**",
34
+ "!lib/**"
35
+ ],
36
+ "reporters": [
37
+ "default",
38
+ "jest-junit"
39
+ ],
40
+ "testEnvironment": "node",
41
+ "testURL": "http://localhost/",
42
+ "testRegex": "(src/(__tests__|__e2e__|__e2e_v2__)/.*.test.ts)$",
43
+ "moduleFileExtensions": [
44
+ "ts",
45
+ "tsx",
46
+ "js",
47
+ "jsx",
48
+ "json",
49
+ "node"
50
+ ]
21
51
  },
22
- "gitHead": "3a812c9a3177a9ffc708a0426ad3fc36e0149afb"
52
+ "gitHead": "e57f636717f1fd36514aec6e02e6521aa42a7b74"
23
53
  }
@@ -0,0 +1,49 @@
1
+ import * as extractArgsDependency from '../commands/utils/extractArgs';
2
+ import * as listUiBuilderComponentsDependency from '../commands/utils/syncAmplifyUiBuilderComponents';
3
+ import { run } from '../commands/cloneComponentsFromEnv';
4
+ const extractArgsDependency_mock = extractArgsDependency as any;
5
+ const listUiBuilderComponentsDependency_mock = listUiBuilderComponentsDependency as any;
6
+ jest.mock('aws-sdk', () => {
7
+ return {
8
+ AmplifyUIBuilder: jest.fn(() => {
9
+ return {
10
+ createComponent: () => ({
11
+ promise: () => true,
12
+ }),
13
+ };
14
+ }),
15
+ };
16
+ });
17
+ jest.mock('../commands/utils/extractArgs');
18
+ jest.mock('../commands/utils/syncAmplifyUiBuilderComponents');
19
+
20
+ describe('can clone components to new environment', () => {
21
+ let context: any;
22
+ beforeEach(() => {
23
+ context = {
24
+ amplify: {
25
+ invokePluginMethod: () => true,
26
+ },
27
+ };
28
+ extractArgsDependency_mock.extractArgs = jest.fn().mockImplementation(() => ({
29
+ sourceEnvName: 'sourceEnvName',
30
+ newEnvName: 'newEnvName',
31
+ appId: 'appId',
32
+ environmentName: 'environmentName',
33
+ }));
34
+ listUiBuilderComponentsDependency_mock.listUiBuilderComponents = jest.fn().mockImplementation((context: any, envName: any) => {
35
+ if (envName === 'newEnvName') {
36
+ return {
37
+ entities: [],
38
+ };
39
+ }
40
+ return {
41
+ entities: [{}],
42
+ };
43
+ });
44
+ });
45
+ it('clones components to a new env', async () => {
46
+ await run(context);
47
+ expect(listUiBuilderComponentsDependency.listUiBuilderComponents).toBeCalledTimes(2);
48
+ });
49
+ });
@@ -0,0 +1,60 @@
1
+ import * as codegen from '@aws-amplify/codegen-ui';
2
+ import {
3
+ generateAmplifyUiBuilderIndexFile,
4
+ createUiBuilderTheme,
5
+ createUiBuilderComponent,
6
+ } from '../commands/utils/createUiBuilderComponent';
7
+ jest.mock('@aws-amplify/codegen-ui');
8
+ const codegen_mock = codegen as any;
9
+ const renderSchemaToTemplateMock = jest.fn();
10
+
11
+ describe('can create a ui builder component', () => {
12
+ let context: any;
13
+ let schema: any;
14
+ beforeEach(() => {
15
+ context = {
16
+ exeInfo: {
17
+ projectConfig: {
18
+ providers: ['awscloudformation'],
19
+ frontend: 'javascript',
20
+ javascript: {
21
+ framework: 'react',
22
+ config: {
23
+ SourceDir: 'src',
24
+ },
25
+ },
26
+ },
27
+ },
28
+ parameters: {
29
+ argv: [],
30
+ },
31
+ input: {},
32
+ };
33
+ schema = {
34
+ appId: 'd37nrm8rzt3oek',
35
+ bindingProperties: {},
36
+ componentType: 'Box',
37
+ environmentName: 'staging',
38
+ id: 's-s4mU579Ycf6JGHwhqT',
39
+ name: 'aawwdd',
40
+ overrides: {},
41
+ properties: {},
42
+ variants: [],
43
+ };
44
+ codegen_mock.StudioTemplateRendererManager = jest.fn().mockImplementation(() => ({
45
+ renderSchemaToTemplate: renderSchemaToTemplateMock,
46
+ }));
47
+ });
48
+ it('calls the renderManager', async () => {
49
+ await createUiBuilderComponent(context, schema);
50
+ expect(new codegen_mock.StudioTemplateRendererManager().renderSchemaToTemplate).toBeCalled();
51
+ });
52
+ it('calls the renderManager for themes', async () => {
53
+ await createUiBuilderTheme(context, schema);
54
+ expect(new codegen_mock.StudioTemplateRendererManager().renderSchemaToTemplate).toBeCalled();
55
+ });
56
+ it('calls the renderManager for index file', async () => {
57
+ await generateAmplifyUiBuilderIndexFile(context, [schema]);
58
+ expect(new codegen_mock.StudioTemplateRendererManager().renderSchemaToTemplate).toBeCalled();
59
+ });
60
+ });
@@ -0,0 +1,50 @@
1
+ import * as shouldRenderComponentsDependency from '../commands/utils/shouldRenderComponents';
2
+ import * as notifyMissingPackagesDependency from '../commands/utils/notifyMissingPackages';
3
+ import * as listUiBuilderComponentsDependency from '../commands/utils/syncAmplifyUiBuilderComponents';
4
+ import * as generateUiBuilderComponentsDependency from '../commands/utils/syncAmplifyUiBuilderComponents';
5
+ import * as generateUiBuilderThemesDependency from '../commands/utils/syncAmplifyUiBuilderComponents';
6
+ import * as listUiBuilderThemesDependency from '../commands/utils/syncAmplifyUiBuilderComponents';
7
+ import * as generateAmplifyUiBuilderIndexFileDependency from '../commands/utils/createUiBuilderComponent';
8
+ import { run } from '../commands/generateComponents';
9
+ jest.mock('../commands/utils/syncAmplifyUiBuilderComponents');
10
+ jest.mock('../commands/utils/createUiBuilderComponent');
11
+ jest.mock('../commands/utils/shouldRenderComponents');
12
+ jest.mock('../commands/utils/notifyMissingPackages');
13
+ const shouldRenderComponentsDependency_mock = shouldRenderComponentsDependency as any;
14
+ const notifyMissingPackagesDependency_mock = notifyMissingPackagesDependency as any;
15
+ const listUiBuilderComponentsDependency_mock = listUiBuilderComponentsDependency as any;
16
+ const generateUiBuilderComponentsDependency_mock = generateUiBuilderComponentsDependency as any;
17
+ const generateUiBuilderThemesDependency_mock = generateUiBuilderThemesDependency as any;
18
+ const listUiBuilderThemesDependency_mock = listUiBuilderThemesDependency as any;
19
+ const generateAmplifyUiBuilderIndexFileDependency_mock = generateAmplifyUiBuilderIndexFileDependency as any;
20
+
21
+ shouldRenderComponentsDependency_mock.shouldRenderComponents = jest.fn().mockImplementation(() => true);
22
+ notifyMissingPackagesDependency_mock.notifyMissingPackages = jest.fn().mockImplementation(() => true);
23
+
24
+ describe('can generate components', () => {
25
+ let context: any;
26
+ let schemas: any;
27
+ let generateUiBuilderComponents: any;
28
+ let generateUiBuilderThemes: any;
29
+ beforeEach(() => {
30
+ context = {};
31
+ schemas = {
32
+ entities: [
33
+ {
34
+ resultType: 'SUCCESS',
35
+ schemaName: 'testSchema',
36
+ },
37
+ ],
38
+ };
39
+ listUiBuilderComponentsDependency_mock.listUiBuilderComponents = jest.fn().mockImplementation(() => schemas);
40
+ listUiBuilderThemesDependency_mock.listUiBuilderThemes = jest.fn().mockImplementation(() => schemas);
41
+ generateUiBuilderComponentsDependency_mock.generateUiBuilderComponents = jest.fn().mockImplementation(() => schemas.entities);
42
+ generateUiBuilderThemesDependency_mock.generateUiBuilderThemes = jest.fn().mockImplementation(() => schemas.entities);
43
+ generateAmplifyUiBuilderIndexFileDependency_mock.generateAmplifyUiBuilderIndexFile = jest.fn().mockImplementation(() => true);
44
+ });
45
+ it('runs generateComponents', async () => {
46
+ await run(context);
47
+ expect(generateUiBuilderComponentsDependency_mock.generateUiBuilderComponents).toBeCalledTimes(1);
48
+ expect(generateUiBuilderThemesDependency_mock.generateUiBuilderThemes).toBeCalledTimes(1);
49
+ });
50
+ });
@@ -0,0 +1,21 @@
1
+ import { run as runPostEnvAdd } from '../event-handlers/handle-PostEnvAdd';
2
+ import { run as runPostPull } from '../event-handlers/handle-PostPull';
3
+
4
+ describe('can handle events', () => {
5
+ let context: any;
6
+ beforeEach(() => {
7
+ context = {
8
+ amplify: {
9
+ invokePluginMethod: jest.fn(),
10
+ },
11
+ };
12
+ });
13
+ it('handles postEnvAdd', async () => {
14
+ await runPostEnvAdd(context);
15
+ expect(context.amplify.invokePluginMethod).toBeCalledTimes(1);
16
+ });
17
+ it('handles postPull', async () => {
18
+ await runPostPull(context);
19
+ expect(context.amplify.invokePluginMethod).toBeCalledTimes(1);
20
+ });
21
+ });
@@ -0,0 +1,10 @@
1
+ jest.mock('amplify-prompts');
2
+ import { printer } from 'amplify-prompts';
3
+ import { run } from '../commands/help';
4
+ printer.info = jest.fn();
5
+ describe('can run help script', () => {
6
+ it('runs help script', async () => {
7
+ await run();
8
+ expect(printer.info).toBeCalledTimes(1);
9
+ });
10
+ });
@@ -0,0 +1 @@
1
+ {}
@@ -0,0 +1,89 @@
1
+ import * as printerDependency from 'amplify-prompts';
2
+ import * as JSONUtilitiesDependency from 'amplify-cli-core';
3
+ import { notifyMissingPackages } from '../commands/utils/notifyMissingPackages';
4
+ jest.mock('amplify-prompts');
5
+ jest.mock('amplify-cli-core');
6
+ printerDependency.printer.info = jest.fn();
7
+ printerDependency.printer.debug = jest.fn();
8
+ printerDependency.printer.warn = jest.fn();
9
+
10
+ describe('should notify when packages are missing', () => {
11
+ beforeEach(() => {
12
+ jest.resetAllMocks();
13
+ JSONUtilitiesDependency.JSONUtilities.readJson = jest.fn().mockImplementation(() => ({
14
+ projectPath: __dirname,
15
+ dependencies: [],
16
+ }));
17
+ });
18
+ it('skips notification if localEnv path cannot be determined', async () => {
19
+ const context = {
20
+ input: {
21
+ options: {
22
+ localEnvFilePath: 'fake',
23
+ },
24
+ },
25
+ };
26
+ notifyMissingPackages(context as any);
27
+ expect(printerDependency.printer.debug).toBeCalledTimes(1);
28
+ });
29
+
30
+ it('skips notification if package.json cannot be determined', async () => {
31
+ JSONUtilitiesDependency.JSONUtilities.readJson = jest.fn().mockImplementation(() => ({
32
+ projectPath: 'asdf',
33
+ dependencies: [],
34
+ }));
35
+ const context = {
36
+ input: {
37
+ options: {
38
+ localEnvFilePath: __dirname + '/mock.json',
39
+ },
40
+ },
41
+ };
42
+ notifyMissingPackages(context as any);
43
+ expect(printerDependency.printer.debug).toBeCalledTimes(1);
44
+ });
45
+
46
+ it('notifies for all missing dependencies', async () => {
47
+ const context = {
48
+ input: {
49
+ options: {
50
+ localEnvFilePath: __dirname + '/mock.json',
51
+ },
52
+ },
53
+ };
54
+ notifyMissingPackages(context as any);
55
+ expect(printerDependency.printer.warn).toBeCalledTimes(2);
56
+ });
57
+
58
+ it('notifies for incorrect dependency version', async () => {
59
+ JSONUtilitiesDependency.JSONUtilities.readJson = jest.fn().mockImplementation(() => ({
60
+ projectPath: __dirname,
61
+ dependencies: { '@aws-amplify/ui-react': '1.0.0', 'aws-amplify': '1.0.0' },
62
+ }));
63
+ const context = {
64
+ input: {
65
+ options: {
66
+ localEnvFilePath: __dirname + '/mock.json',
67
+ },
68
+ },
69
+ };
70
+ notifyMissingPackages(context as any);
71
+ expect(printerDependency.printer.warn).toBeCalledTimes(1);
72
+ });
73
+
74
+ it('notifies for partial missing dependencies', async () => {
75
+ JSONUtilitiesDependency.JSONUtilities.readJson = jest.fn().mockImplementation(() => ({
76
+ projectPath: __dirname,
77
+ dependencies: { '@aws-amplify/ui-react': '1.2.0' },
78
+ }));
79
+ const context = {
80
+ input: {
81
+ options: {
82
+ localEnvFilePath: __dirname + '/mock.json',
83
+ },
84
+ },
85
+ };
86
+ notifyMissingPackages(context as any);
87
+ expect(printerDependency.printer.warn).toBeCalledTimes(1);
88
+ });
89
+ });
@@ -0,0 +1,3 @@
1
+ {
2
+ "version": "1.0.0"
3
+ }
@@ -1,7 +1,8 @@
1
- const { shouldRenderComponents } = require('../shouldRenderComponents');
1
+ import { $TSContext } from 'amplify-cli-core';
2
+ import { shouldRenderComponents } from '../commands/utils/shouldRenderComponents';
2
3
 
3
4
  describe('should render components', () => {
4
- let context;
5
+ let context: $TSContext | any;
5
6
  beforeEach(() => {
6
7
  context = {
7
8
  input: {