@vendure/cli 2.2.0-next.3 → 2.2.0-next.5
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.
- package/dist/cli.js +5 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/add/add.d.ts +2 -0
- package/dist/commands/add/add.js +39 -0
- package/dist/commands/add/add.js.map +1 -0
- package/dist/commands/add/entity/add-entity.d.ts +7 -0
- package/dist/commands/add/entity/add-entity.js +39 -0
- package/dist/commands/add/entity/add-entity.js.map +1 -0
- package/dist/commands/add/entity/codemods/add-entity-to-plugin/add-entity-to-plugin.d.ts +2 -0
- package/dist/commands/add/entity/codemods/add-entity-to-plugin/add-entity-to-plugin.js +41 -0
- package/dist/commands/add/entity/codemods/add-entity-to-plugin/add-entity-to-plugin.js.map +1 -0
- package/dist/commands/add/entity/templates/entity.template.ts +17 -0
- package/dist/commands/add/ui-extensions/add-ui-extensions.d.ts +1 -0
- package/dist/commands/add/ui-extensions/add-ui-extensions.js +88 -0
- package/dist/commands/add/ui-extensions/add-ui-extensions.js.map +1 -0
- package/dist/commands/add/ui-extensions/codemods/add-ui-extension-static-prop/add-ui-extension-static-prop.d.ts +2 -0
- package/dist/commands/add/ui-extensions/codemods/add-ui-extension-static-prop/add-ui-extension-static-prop.js +33 -0
- package/dist/commands/add/ui-extensions/codemods/add-ui-extension-static-prop/add-ui-extension-static-prop.js.map +1 -0
- package/dist/commands/add/ui-extensions/codemods/update-admin-ui-plugin-init/update-admin-ui-plugin-init.d.ts +5 -0
- package/dist/commands/add/ui-extensions/codemods/update-admin-ui-plugin-init/update-admin-ui-plugin-init.js +63 -0
- package/dist/commands/add/ui-extensions/codemods/update-admin-ui-plugin-init/update-admin-ui-plugin-init.js.map +1 -0
- package/dist/commands/add/ui-extensions/scaffold/providers.d.ts +1 -0
- package/dist/commands/add/ui-extensions/scaffold/providers.js +13 -0
- package/dist/commands/add/ui-extensions/scaffold/providers.js.map +1 -0
- package/dist/commands/add/ui-extensions/scaffold/routes.d.ts +1 -0
- package/dist/commands/add/ui-extensions/scaffold/routes.js +13 -0
- package/dist/commands/add/ui-extensions/scaffold/routes.js.map +1 -0
- package/dist/commands/new/plugin/new-plugin.d.ts +1 -1
- package/dist/commands/new/plugin/new-plugin.js +44 -90
- package/dist/commands/new/plugin/new-plugin.js.map +1 -1
- package/dist/commands/new/plugin/scaffold/api/admin.resolver.d.ts +3 -3
- package/dist/commands/new/plugin/scaffold/api/admin.resolver.js.map +1 -1
- package/dist/commands/new/plugin/scaffold/api/api-extensions.d.ts +2 -2
- package/dist/commands/new/plugin/scaffold/api/api-extensions.js.map +1 -1
- package/dist/commands/new/plugin/scaffold/api/shop.resolver.d.ts +3 -3
- package/dist/commands/new/plugin/scaffold/api/shop.resolver.js.map +1 -1
- package/dist/commands/new/plugin/scaffold/constants.d.ts +2 -2
- package/dist/commands/new/plugin/scaffold/constants.js.map +1 -1
- package/dist/commands/new/plugin/scaffold/plugin.d.ts +2 -2
- package/dist/commands/new/plugin/scaffold/plugin.js.map +1 -1
- package/dist/commands/new/plugin/scaffold/services/service.d.ts +3 -3
- package/dist/commands/new/plugin/scaffold/services/service.js.map +1 -1
- package/dist/commands/new/plugin/scaffold/types.d.ts +2 -2
- package/dist/commands/new/plugin/scaffold/types.js.map +1 -1
- package/dist/commands/new/plugin/types.d.ts +2 -1
- package/dist/constants.d.ts +2 -0
- package/dist/constants.js +9 -0
- package/dist/constants.js.map +1 -0
- package/dist/shared/shared-prompts.d.ts +3 -0
- package/dist/shared/shared-prompts.js +45 -0
- package/dist/shared/shared-prompts.js.map +1 -0
- package/dist/shared/shared-scaffold/entity.d.ts +5 -0
- package/dist/shared/shared-scaffold/entity.js +26 -0
- package/dist/shared/shared-scaffold/entity.js.map +1 -0
- package/dist/utilities/ast-utils.d.ts +18 -0
- package/dist/utilities/ast-utils.js +111 -0
- package/dist/utilities/ast-utils.js.map +1 -0
- package/dist/utilities/package-utils.d.ts +8 -0
- package/dist/utilities/package-utils.js +96 -0
- package/dist/utilities/package-utils.js.map +1 -0
- package/dist/utilities/scaffolder.d.ts +8 -0
- package/dist/utilities/scaffolder.js +50 -0
- package/dist/utilities/scaffolder.js.map +1 -0
- package/package.json +9 -7
- package/dist/commands/new/plugin/scaffold/entities/entity.d.ts +0 -2
- package/dist/commands/new/plugin/scaffold/entities/entity.js +0 -21
- package/dist/commands/new/plugin/scaffold/entities/entity.js.map +0 -1
package/dist/cli.js
CHANGED
|
@@ -2,10 +2,14 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
const commander_1 = require("commander");
|
|
5
|
+
const add_1 = require("./commands/add/add");
|
|
5
6
|
const new_1 = require("./commands/new/new");
|
|
6
7
|
const program = new commander_1.Command();
|
|
7
8
|
const version = require('../package.json').version;
|
|
8
|
-
program
|
|
9
|
+
program
|
|
10
|
+
.version(version)
|
|
11
|
+
.description('The Vendure CLI');
|
|
9
12
|
(0, new_1.registerNewCommand)(program);
|
|
13
|
+
(0, add_1.registerAddCommand)(program);
|
|
10
14
|
void program.parseAsync(process.argv);
|
|
11
15
|
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;AAEA,yCAAoC;AAEpC,4CAAwD;AAExD,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAG9B,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC;AAEnD,OAAO,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;AAEA,yCAAoC;AAEpC,4CAAwD;AACxD,4CAAwD;AAExD,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAG9B,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC;AAEnD,OAAO;KACF,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,iBAAiB,CAAC,CAAC;AAEpC,IAAA,wBAAkB,EAAC,OAAO,CAAC,CAAC;AAC5B,IAAA,wBAAkB,EAAC,OAAO,CAAC,CAAC;AAE5B,KAAK,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.registerAddCommand = void 0;
|
|
4
|
+
const prompts_1 = require("@clack/prompts");
|
|
5
|
+
const add_entity_1 = require("./entity/add-entity");
|
|
6
|
+
const add_ui_extensions_1 = require("./ui-extensions/add-ui-extensions");
|
|
7
|
+
const cancelledMessage = 'Add feature cancelled.';
|
|
8
|
+
function registerAddCommand(program) {
|
|
9
|
+
program
|
|
10
|
+
.command('add')
|
|
11
|
+
.description('Add a feature to your Vendure project')
|
|
12
|
+
.action(async () => {
|
|
13
|
+
const featureType = await (0, prompts_1.select)({
|
|
14
|
+
message: 'Which feature would you like to add?',
|
|
15
|
+
options: [
|
|
16
|
+
{ value: 'uiExtensions', label: 'Set up Admin UI extensions' },
|
|
17
|
+
{ value: 'entity', label: 'Add a new entity to a plugin' },
|
|
18
|
+
],
|
|
19
|
+
});
|
|
20
|
+
if ((0, prompts_1.isCancel)(featureType)) {
|
|
21
|
+
(0, prompts_1.cancel)(cancelledMessage);
|
|
22
|
+
process.exit(0);
|
|
23
|
+
}
|
|
24
|
+
try {
|
|
25
|
+
if (featureType === 'uiExtensions') {
|
|
26
|
+
await (0, add_ui_extensions_1.addUiExtensions)();
|
|
27
|
+
}
|
|
28
|
+
if (featureType === 'entity') {
|
|
29
|
+
await (0, add_entity_1.addEntity)();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
catch (e) {
|
|
33
|
+
prompts_1.log.error(e.message);
|
|
34
|
+
}
|
|
35
|
+
process.exit(0);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
exports.registerAddCommand = registerAddCommand;
|
|
39
|
+
//# sourceMappingURL=add.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/commands/add/add.ts"],"names":[],"mappings":";;;AAAA,4CAA+D;AAG/D,oDAAgD;AAChD,yEAAoE;AAEpE,MAAM,gBAAgB,GAAG,wBAAwB,CAAC;AAElD,SAAgB,kBAAkB,CAAC,OAAgB;IAC/C,OAAO;SACF,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,uCAAuC,CAAC;SACpD,MAAM,CAAC,KAAK,IAAI,EAAE;QACf,MAAM,WAAW,GAAG,MAAM,IAAA,gBAAM,EAAC;YAC7B,OAAO,EAAE,sCAAsC;YAC/C,OAAO,EAAE;gBACL,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,4BAA4B,EAAE;gBAC9D,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,8BAA8B,EAAE;aAC7D;SACJ,CAAC,CAAC;QACH,IAAI,IAAA,kBAAQ,EAAC,WAAW,CAAC,EAAE;YACvB,IAAA,gBAAM,EAAC,gBAAgB,CAAC,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACnB;QACD,IAAI;YACA,IAAI,WAAW,KAAK,cAAc,EAAE;gBAChC,MAAM,IAAA,mCAAe,GAAE,CAAC;aAC3B;YACD,IAAI,WAAW,KAAK,QAAQ,EAAE;gBAC1B,MAAM,IAAA,sBAAS,GAAE,CAAC;aACrB;SACJ;QAAC,OAAO,CAAM,EAAE;YACb,aAAG,CAAC,KAAK,CAAC,CAAC,CAAC,OAAiB,CAAC,CAAC;SAClC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;AACX,CAAC;AA5BD,gDA4BC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
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.addEntity = void 0;
|
|
7
|
+
const prompts_1 = require("@clack/prompts");
|
|
8
|
+
const change_case_1 = require("change-case");
|
|
9
|
+
const path_1 = __importDefault(require("path"));
|
|
10
|
+
const shared_prompts_1 = require("../../../shared/shared-prompts");
|
|
11
|
+
const ast_utils_1 = require("../../../utilities/ast-utils");
|
|
12
|
+
const add_entity_to_plugin_1 = require("./codemods/add-entity-to-plugin/add-entity-to-plugin");
|
|
13
|
+
const cancelledMessage = 'Add entity cancelled';
|
|
14
|
+
async function addEntity() {
|
|
15
|
+
const projectSpinner = (0, prompts_1.spinner)();
|
|
16
|
+
projectSpinner.start('Analyzing project...');
|
|
17
|
+
await new Promise(resolve => setTimeout(resolve, 100));
|
|
18
|
+
const project = (0, ast_utils_1.getTsMorphProject)();
|
|
19
|
+
projectSpinner.stop('Project analyzed');
|
|
20
|
+
const pluginClass = await (0, shared_prompts_1.selectPluginClass)(project, cancelledMessage);
|
|
21
|
+
const customEntityName = await (0, shared_prompts_1.getCustomEntityName)(cancelledMessage);
|
|
22
|
+
const context = {
|
|
23
|
+
entity: {
|
|
24
|
+
className: customEntityName,
|
|
25
|
+
fileName: (0, change_case_1.paramCase)(customEntityName) + '.entity',
|
|
26
|
+
},
|
|
27
|
+
};
|
|
28
|
+
const entitiesDir = path_1.default.join(pluginClass.getSourceFile().getDirectory().getPath(), 'entities');
|
|
29
|
+
const entityTemplatePath = path_1.default.join(__dirname, 'templates/entity.template.ts');
|
|
30
|
+
const entityFile = (0, ast_utils_1.createSourceFileFromTemplate)(project, entityTemplatePath);
|
|
31
|
+
entityFile.move(path_1.default.join(entitiesDir, `${context.entity.fileName}.ts`));
|
|
32
|
+
entityFile.getClasses()[0].rename(`${context.entity.className}CustomFields`);
|
|
33
|
+
entityFile.getClasses()[1].rename(context.entity.className);
|
|
34
|
+
(0, add_entity_to_plugin_1.addEntityToPlugin)(pluginClass, entityFile);
|
|
35
|
+
project.saveSync();
|
|
36
|
+
(0, prompts_1.outro)('✅ Done!');
|
|
37
|
+
}
|
|
38
|
+
exports.addEntity = addEntity;
|
|
39
|
+
//# sourceMappingURL=add-entity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-entity.js","sourceRoot":"","sources":["../../../../src/commands/add/entity/add-entity.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAgD;AAChD,6CAAwC;AACxC,gDAAwB;AAExB,mEAAwF;AAExF,4DAA+F;AAG/F,+FAAyF;AAEzF,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;AASzC,KAAK,UAAU,SAAS;IAC3B,MAAM,cAAc,GAAG,IAAA,iBAAO,GAAE,CAAC;IACjC,cAAc,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC7C,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,IAAA,6BAAiB,GAAE,CAAC;IACpC,cAAc,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAExC,MAAM,WAAW,GAAG,MAAM,IAAA,kCAAiB,EAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IACvE,MAAM,gBAAgB,GAAG,MAAM,IAAA,oCAAmB,EAAC,gBAAgB,CAAC,CAAC;IACrE,MAAM,OAAO,GAA6B;QACtC,MAAM,EAAE;YACJ,SAAS,EAAE,gBAAgB;YAC3B,QAAQ,EAAE,IAAA,uBAAS,EAAC,gBAAgB,CAAC,GAAG,SAAS;SACpD;KACJ,CAAC;IAEF,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;IAChG,MAAM,kBAAkB,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,8BAA8B,CAAC,CAAC;IAChF,MAAM,UAAU,GAAG,IAAA,wCAA4B,EAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;IAC7E,UAAU,CAAC,IAAI,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC;IACzE,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,cAAc,CAAC,CAAC;IAC7E,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAE5D,IAAA,wCAAiB,EAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IAE3C,OAAO,CAAC,QAAQ,EAAE,CAAC;IACnB,IAAA,eAAK,EAAC,UAAU,CAAC,CAAC;AACtB,CAAC;AA3BD,8BA2BC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.addEntityToPlugin = void 0;
|
|
4
|
+
const ts_morph_1 = require("ts-morph");
|
|
5
|
+
const ast_utils_1 = require("../../../../../utilities/ast-utils");
|
|
6
|
+
function addEntityToPlugin(pluginClass, entitySourceFile) {
|
|
7
|
+
const pluginDecorator = pluginClass.getDecorator('VendurePlugin');
|
|
8
|
+
if (!pluginDecorator) {
|
|
9
|
+
throw new Error('Could not find VendurePlugin decorator');
|
|
10
|
+
}
|
|
11
|
+
const pluginOptions = pluginDecorator.getArguments()[0];
|
|
12
|
+
if (!pluginOptions) {
|
|
13
|
+
throw new Error('Could not find VendurePlugin options');
|
|
14
|
+
}
|
|
15
|
+
const entityClass = entitySourceFile.getClasses().find(c => { var _a; return !((_a = c.getName()) === null || _a === void 0 ? void 0 : _a.includes('CustomFields')); });
|
|
16
|
+
if (!entityClass) {
|
|
17
|
+
throw new Error('Could not find entity class');
|
|
18
|
+
}
|
|
19
|
+
const entityClassName = entityClass.getName();
|
|
20
|
+
if (ts_morph_1.Node.isObjectLiteralExpression(pluginOptions)) {
|
|
21
|
+
const entityProperty = pluginOptions.getProperty('entities');
|
|
22
|
+
if (entityProperty) {
|
|
23
|
+
const entitiesArray = entityProperty.getFirstChildByKind(ts_morph_1.SyntaxKind.ArrayLiteralExpression);
|
|
24
|
+
if (entitiesArray) {
|
|
25
|
+
entitiesArray.addElement(entityClassName);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
pluginOptions.addPropertyAssignment({
|
|
30
|
+
name: 'entities',
|
|
31
|
+
initializer: `[${entityClassName}]`,
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
(0, ast_utils_1.addImportsToFile)(pluginClass.getSourceFile(), {
|
|
36
|
+
moduleSpecifier: entityClass.getSourceFile(),
|
|
37
|
+
namedImports: [entityClassName],
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
exports.addEntityToPlugin = addEntityToPlugin;
|
|
41
|
+
//# sourceMappingURL=add-entity-to-plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-entity-to-plugin.js","sourceRoot":"","sources":["../../../../../../src/commands/add/entity/codemods/add-entity-to-plugin/add-entity-to-plugin.ts"],"names":[],"mappings":";;;AAAA,uCAA0E;AAE1E,kEAAsE;AAGtE,SAAgB,iBAAiB,CAAC,WAA6B,EAAE,gBAA4B;IACzF,MAAM,eAAe,GAAG,WAAW,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;IAClE,IAAI,CAAC,eAAe,EAAE;QAClB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;KAC7D;IACD,MAAM,aAAa,GAAG,eAAe,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;IACxD,IAAI,CAAC,aAAa,EAAE;QAChB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;KAC3D;IACD,MAAM,WAAW,GAAG,gBAAgB,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,WAAC,OAAA,CAAC,CAAA,MAAA,CAAC,CAAC,OAAO,EAAE,0CAAE,QAAQ,CAAC,cAAc,CAAC,CAAA,CAAA,EAAA,CAAC,CAAC;IACpG,IAAI,CAAC,WAAW,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;KAClD;IACD,MAAM,eAAe,GAAG,WAAW,CAAC,OAAO,EAAY,CAAC;IACxD,IAAI,eAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,EAAE;QAC/C,MAAM,cAAc,GAAG,aAAa,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC7D,IAAI,cAAc,EAAE;YAChB,MAAM,aAAa,GAAG,cAAc,CAAC,mBAAmB,CAAC,qBAAU,CAAC,sBAAsB,CAAC,CAAC;YAC5F,IAAI,aAAa,EAAE;gBACf,aAAa,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;aAC7C;SACJ;aAAM;YACH,aAAa,CAAC,qBAAqB,CAAC;gBAChC,IAAI,EAAE,UAAU;gBAChB,WAAW,EAAE,IAAI,eAAe,GAAG;aACtC,CAAC,CAAC;SACN;KACJ;IAED,IAAA,4BAAgB,EAAC,WAAW,CAAC,aAAa,EAAE,EAAE;QAC1C,eAAe,EAAE,WAAW,CAAC,aAAa,EAAE;QAC5C,YAAY,EAAE,CAAC,eAAe,CAAC;KAClC,CAAC,CAAC;AACP,CAAC;AAjCD,8CAiCC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { VendureEntity, DeepPartial, HasCustomFields } from '@vendure/core';
|
|
2
|
+
import { Entity, Column } from 'typeorm';
|
|
3
|
+
|
|
4
|
+
export class ScaffoldEntityCustomFields {}
|
|
5
|
+
|
|
6
|
+
@Entity()
|
|
7
|
+
export class ScaffoldEntity extends VendureEntity implements HasCustomFields {
|
|
8
|
+
constructor(input?: DeepPartial<ScaffoldEntity>) {
|
|
9
|
+
super(input);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
@Column()
|
|
13
|
+
name: string;
|
|
14
|
+
|
|
15
|
+
@Column(type => ScaffoldEntityCustomFields)
|
|
16
|
+
customFields: ScaffoldEntityCustomFields;
|
|
17
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function addUiExtensions(): Promise<void>;
|
|
@@ -0,0 +1,88 @@
|
|
|
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.addUiExtensions = void 0;
|
|
7
|
+
const prompts_1 = require("@clack/prompts");
|
|
8
|
+
const path_1 = __importDefault(require("path"));
|
|
9
|
+
const shared_prompts_1 = require("../../../shared/shared-prompts");
|
|
10
|
+
const ast_utils_1 = require("../../../utilities/ast-utils");
|
|
11
|
+
const package_utils_1 = require("../../../utilities/package-utils");
|
|
12
|
+
const scaffolder_1 = require("../../../utilities/scaffolder");
|
|
13
|
+
const add_ui_extension_static_prop_1 = require("./codemods/add-ui-extension-static-prop/add-ui-extension-static-prop");
|
|
14
|
+
const update_admin_ui_plugin_init_1 = require("./codemods/update-admin-ui-plugin-init/update-admin-ui-plugin-init");
|
|
15
|
+
const providers_1 = require("./scaffold/providers");
|
|
16
|
+
const routes_1 = require("./scaffold/routes");
|
|
17
|
+
async function addUiExtensions() {
|
|
18
|
+
const projectSpinner = (0, prompts_1.spinner)();
|
|
19
|
+
projectSpinner.start('Analyzing project...');
|
|
20
|
+
await new Promise(resolve => setTimeout(resolve, 100));
|
|
21
|
+
const project = (0, ast_utils_1.getTsMorphProject)();
|
|
22
|
+
projectSpinner.stop('Project analyzed');
|
|
23
|
+
const pluginClass = await (0, shared_prompts_1.selectPluginClass)(project, 'Add UI extensions cancelled');
|
|
24
|
+
if (pluginAlreadyHasUiExtensionProp(pluginClass)) {
|
|
25
|
+
(0, prompts_1.outro)('This plugin already has a UI extension configured');
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
(0, add_ui_extension_static_prop_1.addUiExtensionStaticProp)(pluginClass);
|
|
29
|
+
prompts_1.log.success('Updated the plugin class');
|
|
30
|
+
const installSpinner = (0, prompts_1.spinner)();
|
|
31
|
+
installSpinner.start(`Installing dependencies...`);
|
|
32
|
+
try {
|
|
33
|
+
const version = (0, package_utils_1.determineVendureVersion)();
|
|
34
|
+
await (0, package_utils_1.installRequiredPackages)([
|
|
35
|
+
{
|
|
36
|
+
pkg: '@vendure/ui-devkit',
|
|
37
|
+
isDevDependency: true,
|
|
38
|
+
version,
|
|
39
|
+
},
|
|
40
|
+
]);
|
|
41
|
+
}
|
|
42
|
+
catch (e) {
|
|
43
|
+
prompts_1.log.error(`Failed to install dependencies: ${e.message}.`);
|
|
44
|
+
}
|
|
45
|
+
installSpinner.stop('Dependencies installed');
|
|
46
|
+
const scaffolder = new scaffolder_1.Scaffolder();
|
|
47
|
+
scaffolder.addFile(providers_1.renderProviders, 'providers.ts');
|
|
48
|
+
scaffolder.addFile(routes_1.renderRoutes, 'routes.ts');
|
|
49
|
+
prompts_1.log.success('Created UI extension scaffold');
|
|
50
|
+
const pluginDir = pluginClass.getSourceFile().getDirectory().getPath();
|
|
51
|
+
scaffolder.createScaffold({
|
|
52
|
+
dir: path_1.default.join(pluginDir, 'ui'),
|
|
53
|
+
context: {},
|
|
54
|
+
});
|
|
55
|
+
const vendureConfig = (0, ast_utils_1.getVendureConfig)(project);
|
|
56
|
+
if (!vendureConfig) {
|
|
57
|
+
prompts_1.log.warning(`Could not find the VendureConfig declaration in your project. You will need to manually set up the compileUiExtensions function.`);
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
const pluginClassName = pluginClass.getName();
|
|
61
|
+
const pluginPath = (0, ast_utils_1.getRelativeImportPath)({
|
|
62
|
+
to: vendureConfig.getSourceFile(),
|
|
63
|
+
from: pluginClass.getSourceFile(),
|
|
64
|
+
});
|
|
65
|
+
const updated = (0, update_admin_ui_plugin_init_1.updateAdminUiPluginInit)(vendureConfig, { pluginClassName, pluginPath });
|
|
66
|
+
if (updated) {
|
|
67
|
+
prompts_1.log.success('Updated VendureConfig file');
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
prompts_1.log.warning(`Could not update \`AdminUiPlugin.init()\` options.`);
|
|
71
|
+
(0, prompts_1.note)(`You will need to manually set up the compileUiExtensions function,\nadding ` +
|
|
72
|
+
`the \`${pluginClassName}.ui\` object to the \`extensions\` array.`, 'Info');
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
project.saveSync();
|
|
76
|
+
(0, prompts_1.outro)('✅ Done!');
|
|
77
|
+
}
|
|
78
|
+
exports.addUiExtensions = addUiExtensions;
|
|
79
|
+
function pluginAlreadyHasUiExtensionProp(pluginClass) {
|
|
80
|
+
const uiProperty = pluginClass.getProperty('ui');
|
|
81
|
+
if (!uiProperty) {
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
if (uiProperty.isStatic()) {
|
|
85
|
+
return true;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=add-ui-extensions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-ui-extensions.js","sourceRoot":"","sources":["../../../../src/commands/add/ui-extensions/add-ui-extensions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.addUiExtensionStaticProp = void 0;
|
|
4
|
+
const ast_utils_1 = require("../../../../../utilities/ast-utils");
|
|
5
|
+
function addUiExtensionStaticProp(pluginClass) {
|
|
6
|
+
const adminUiExtensionType = 'AdminUiExtension';
|
|
7
|
+
const extensionId = (0, ast_utils_1.kebabize)(pluginClass.getName()).replace(/-plugin$/, '');
|
|
8
|
+
pluginClass
|
|
9
|
+
.addProperty({
|
|
10
|
+
name: 'ui',
|
|
11
|
+
isStatic: true,
|
|
12
|
+
type: adminUiExtensionType,
|
|
13
|
+
initializer: `{
|
|
14
|
+
id: '${extensionId}-ui',
|
|
15
|
+
extensionPath: path.join(__dirname, 'ui'),
|
|
16
|
+
routes: [{ route: '${extensionId}', filePath: 'routes.ts' }],
|
|
17
|
+
providers: ['providers.ts'],
|
|
18
|
+
}`,
|
|
19
|
+
})
|
|
20
|
+
.formatText();
|
|
21
|
+
(0, ast_utils_1.addImportsToFile)(pluginClass.getSourceFile(), {
|
|
22
|
+
moduleSpecifier: '@vendure/ui-devkit/compiler',
|
|
23
|
+
namedImports: [adminUiExtensionType],
|
|
24
|
+
order: 0,
|
|
25
|
+
});
|
|
26
|
+
(0, ast_utils_1.addImportsToFile)(pluginClass.getSourceFile(), {
|
|
27
|
+
moduleSpecifier: 'path',
|
|
28
|
+
namespaceImport: 'path',
|
|
29
|
+
order: 0,
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
exports.addUiExtensionStaticProp = addUiExtensionStaticProp;
|
|
33
|
+
//# sourceMappingURL=add-ui-extension-static-prop.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-ui-extension-static-prop.js","sourceRoot":"","sources":["../../../../../../src/commands/add/ui-extensions/codemods/add-ui-extension-static-prop/add-ui-extension-static-prop.ts"],"names":[],"mappings":";;;AAEA,kEAAgF;AAMhF,SAAgB,wBAAwB,CAAC,WAA6B;IAClE,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;IAChD,MAAM,WAAW,GAAG,IAAA,oBAAQ,EAAC,WAAW,CAAC,OAAO,EAAY,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IACtF,WAAW;SACN,WAAW,CAAC;QACT,IAAI,EAAE,IAAI;QACV,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE;+BACM,WAAW;;6CAEG,WAAW;;sBAElC;KACb,CAAC;SACD,UAAU,EAAE,CAAC;IAGlB,IAAA,4BAAgB,EAAC,WAAW,CAAC,aAAa,EAAE,EAAE;QAC1C,eAAe,EAAE,6BAA6B;QAC9C,YAAY,EAAE,CAAC,oBAAoB,CAAC;QACpC,KAAK,EAAE,CAAC;KACX,CAAC,CAAC;IAGH,IAAA,4BAAgB,EAAC,WAAW,CAAC,aAAa,EAAE,EAAE;QAC1C,eAAe,EAAE,MAAM;QACvB,eAAe,EAAE,MAAM;QACvB,KAAK,EAAE,CAAC;KACX,CAAC,CAAC;AACP,CAAC;AA9BD,4DA8BC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateAdminUiPluginInit = void 0;
|
|
4
|
+
const ts_morph_1 = require("ts-morph");
|
|
5
|
+
const ast_utils_1 = require("../../../../../utilities/ast-utils");
|
|
6
|
+
function updateAdminUiPluginInit(vendureConfig, options) {
|
|
7
|
+
var _a, _b, _c;
|
|
8
|
+
const plugins = (_b = (_a = vendureConfig
|
|
9
|
+
.getProperty('plugins')) === null || _a === void 0 ? void 0 : _a.getFirstChildByKind(ts_morph_1.SyntaxKind.ArrayLiteralExpression)) === null || _b === void 0 ? void 0 : _b.getFirstChildByKind(ts_morph_1.SyntaxKind.SyntaxList);
|
|
10
|
+
const adminUiPlugin = plugins === null || plugins === void 0 ? void 0 : plugins.getChildrenOfKind(ts_morph_1.SyntaxKind.CallExpression).find(c => {
|
|
11
|
+
return c.getExpression().getText() === 'AdminUiPlugin.init';
|
|
12
|
+
});
|
|
13
|
+
if (adminUiPlugin) {
|
|
14
|
+
const initObject = adminUiPlugin
|
|
15
|
+
.getArguments()
|
|
16
|
+
.find((a) => a.isKind(ts_morph_1.SyntaxKind.ObjectLiteralExpression));
|
|
17
|
+
const appProperty = initObject === null || initObject === void 0 ? void 0 : initObject.getProperty('app');
|
|
18
|
+
if (!appProperty) {
|
|
19
|
+
initObject === null || initObject === void 0 ? void 0 : initObject.addProperty({
|
|
20
|
+
name: 'app',
|
|
21
|
+
kind: ts_morph_1.StructureKind.PropertyAssignment,
|
|
22
|
+
initializer: `compileUiExtensions({
|
|
23
|
+
outputPath: path.join(__dirname, '../admin-ui'),
|
|
24
|
+
extensions: [
|
|
25
|
+
${options.pluginClassName}.ui,
|
|
26
|
+
],
|
|
27
|
+
devMode: true,
|
|
28
|
+
}),`,
|
|
29
|
+
}).formatText();
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
const computeFnCall = appProperty.getFirstChildByKind(ts_morph_1.SyntaxKind.CallExpression);
|
|
33
|
+
if (computeFnCall === null || computeFnCall === void 0 ? void 0 : computeFnCall.getType().getText().includes('AdminUiAppConfig')) {
|
|
34
|
+
const arg = computeFnCall.getArguments()[0];
|
|
35
|
+
if (arg && ts_morph_1.Node.isObjectLiteralExpression(arg)) {
|
|
36
|
+
const extensionsProp = arg.getProperty('extensions');
|
|
37
|
+
if (extensionsProp) {
|
|
38
|
+
(_c = extensionsProp
|
|
39
|
+
.getFirstChildByKind(ts_morph_1.SyntaxKind.ArrayLiteralExpression)) === null || _c === void 0 ? void 0 : _c.addElement(`${options.pluginClassName}.ui`).formatText();
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
(0, ast_utils_1.addImportsToFile)(vendureConfig.getSourceFile(), {
|
|
45
|
+
moduleSpecifier: '@vendure/ui-devkit/compiler',
|
|
46
|
+
namedImports: ['compileUiExtensions'],
|
|
47
|
+
order: 0,
|
|
48
|
+
});
|
|
49
|
+
(0, ast_utils_1.addImportsToFile)(vendureConfig.getSourceFile(), {
|
|
50
|
+
moduleSpecifier: 'path',
|
|
51
|
+
namespaceImport: 'path',
|
|
52
|
+
order: 0,
|
|
53
|
+
});
|
|
54
|
+
(0, ast_utils_1.addImportsToFile)(vendureConfig.getSourceFile(), {
|
|
55
|
+
moduleSpecifier: options.pluginPath,
|
|
56
|
+
namedImports: [options.pluginClassName],
|
|
57
|
+
});
|
|
58
|
+
return true;
|
|
59
|
+
}
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
exports.updateAdminUiPluginInit = updateAdminUiPluginInit;
|
|
63
|
+
//# sourceMappingURL=update-admin-ui-plugin-init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-admin-ui-plugin-init.js","sourceRoot":"","sources":["../../../../../../src/commands/add/ui-extensions/codemods/update-admin-ui-plugin-init/update-admin-ui-plugin-init.ts"],"names":[],"mappings":";;;AAAA,uCAAoF;AAEpF,kEAAsE;AAEtE,SAAgB,uBAAuB,CACnC,aAAsC,EACtC,OAAwD;;IAExD,MAAM,OAAO,GAAG,MAAA,MAAA,aAAa;SACxB,WAAW,CAAC,SAAS,CAAC,0CACrB,mBAAmB,CAAC,qBAAU,CAAC,sBAAsB,CAAC,0CACtD,mBAAmB,CAAC,qBAAU,CAAC,UAAU,CAAC,CAAC;IAEjD,MAAM,aAAa,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,iBAAiB,CAAC,qBAAU,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE;QACjF,OAAO,CAAC,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,KAAK,oBAAoB,CAAC;IAChE,CAAC,CAAC,CAAC;IACH,IAAI,aAAa,EAAE;QACf,MAAM,UAAU,GAAG,aAAa;aAC3B,YAAY,EAAE;aACd,IAAI,CAAC,CAAC,CAAC,EAAgC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,qBAAU,CAAC,uBAAuB,CAAC,CAAC,CAAC;QAC7F,MAAM,WAAW,GAAG,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,WAAW,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,CAAC,WAAW,EAAE;YACd,UAAU,aAAV,UAAU,uBAAV,UAAU,CACJ,WAAW,CAAC;gBACV,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,wBAAa,CAAC,kBAAkB;gBACtC,WAAW,EAAE;;;8BAGH,OAAO,CAAC,eAAe;;;wBAG7B;aACP,EACA,UAAU,EAAE,CAAC;SACrB;aAAM;YACH,MAAM,aAAa,GAAG,WAAW,CAAC,mBAAmB,CAAC,qBAAU,CAAC,cAAc,CAAC,CAAC;YACjF,IAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC,kBAAkB,CAAC,EAAE;gBACjE,MAAM,GAAG,GAAG,aAAa,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC5C,IAAI,GAAG,IAAI,eAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,EAAE;oBAC5C,MAAM,cAAc,GAAG,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;oBACrD,IAAI,cAAc,EAAE;wBAChB,MAAA,cAAc;6BACT,mBAAmB,CAAC,qBAAU,CAAC,sBAAsB,CAAC,0CACrD,UAAU,CAAC,GAAG,OAAO,CAAC,eAAe,KAAK,EAC3C,UAAU,EAAE,CAAC;qBACrB;iBACJ;aACJ;SACJ;QAED,IAAA,4BAAgB,EAAC,aAAa,CAAC,aAAa,EAAE,EAAE;YAC5C,eAAe,EAAE,6BAA6B;YAC9C,YAAY,EAAE,CAAC,qBAAqB,CAAC;YACrC,KAAK,EAAE,CAAC;SACX,CAAC,CAAC;QAEH,IAAA,4BAAgB,EAAC,aAAa,CAAC,aAAa,EAAE,EAAE;YAC5C,eAAe,EAAE,MAAM;YACvB,eAAe,EAAE,MAAM;YACvB,KAAK,EAAE,CAAC;SACX,CAAC,CAAC;QAEH,IAAA,4BAAgB,EAAC,aAAa,CAAC,aAAa,EAAE,EAAE;YAC5C,eAAe,EAAE,OAAO,CAAC,UAAU;YACnC,YAAY,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC;SAC1C,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;KACf;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAlED,0DAkEC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function renderProviders(): string;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.renderProviders = void 0;
|
|
4
|
+
function renderProviders() {
|
|
5
|
+
return `
|
|
6
|
+
|
|
7
|
+
export default [
|
|
8
|
+
// Add your providers here
|
|
9
|
+
];
|
|
10
|
+
`;
|
|
11
|
+
}
|
|
12
|
+
exports.renderProviders = renderProviders;
|
|
13
|
+
//# sourceMappingURL=providers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../../../../../src/commands/add/ui-extensions/scaffold/providers.ts"],"names":[],"mappings":";;;AAAA,SAAgB,eAAe;IAC3B,OAAiC;;;;;KAKhC,CAAC;AACN,CAAC;AAPD,0CAOC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function renderRoutes(): string;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.renderRoutes = void 0;
|
|
4
|
+
function renderRoutes() {
|
|
5
|
+
return `
|
|
6
|
+
|
|
7
|
+
export default [
|
|
8
|
+
// Add your custom routes here
|
|
9
|
+
];
|
|
10
|
+
`;
|
|
11
|
+
}
|
|
12
|
+
exports.renderRoutes = renderRoutes;
|
|
13
|
+
//# sourceMappingURL=routes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../../../../../src/commands/add/ui-extensions/scaffold/routes.ts"],"names":[],"mappings":";;;AAAA,SAAgB,YAAY;IACxB,OAAiC;;;;;CAKpC,CAAC;AACF,CAAC;AAPD,oCAOC"}
|