소스 검색

refactor(core): Move cli dir to top level

Formerly it was accessible at `@vendure/core/dist/cli`, now `@vendure/core/cli`. This makes it clearer that it is available for consumption as part of the supported API surface.
Michael Bromley 5 년 전
부모
커밋
ac1006489c

+ 1 - 0
packages/core/.gitignore

@@ -1,3 +1,4 @@
+/cli
 dist
 e2e/__data__/*.sqlite
 !e2e/__data__/.gitkeep

+ 3 - 2
packages/core/build/tsconfig.cli.json

@@ -1,10 +1,11 @@
 {
   "extends": "../tsconfig.json",
   "compilerOptions": {
-    "outDir": "../dist/cli"
+    "outDir": "../cli"
   },
   "files": [
-    "../cli/vendure-cli.ts",
+    "../src/cli/vendure-cli.ts",
+    "../src/cli/index.ts",
     "../typings.d.ts"
   ]
 }

+ 3 - 2
packages/core/package.json

@@ -31,10 +31,11 @@
   "main": "dist/index.js",
   "types": "dist/index.d.ts",
   "bin": {
-    "vendure": "dist/cli/vendure-cli.js"
+    "vendure": "cli/vendure-cli.js"
   },
   "files": [
-    "dist/**/*"
+    "dist/**/*",
+    "cli/**/*"
   ],
   "dependencies": {
     "@nestjs/common": "6.8.5",

+ 0 - 0
packages/core/cli/cli-utils.ts → packages/core/src/cli/cli-utils.ts


+ 1 - 0
packages/core/src/cli/index.ts

@@ -0,0 +1 @@
+export * from './populate';

+ 5 - 5
packages/core/cli/populate.ts → packages/core/src/cli/populate.ts

@@ -10,8 +10,8 @@ try {
     Populator = require('@vendure/core').Populator;
     Importer = require('@vendure/core').Importer;
 } catch (e) {
-    Populator = require('../src/data-import/providers/populator/populator').Populator;
-    Importer = require('../src/data-import/providers/importer/importer').Importer;
+    Populator = require('../data-import/providers/populator/populator').Populator;
+    Importer = require('../data-import/providers/importer/importer').Importer;
 }
 
 // tslint:disable:no-console
@@ -128,13 +128,13 @@ export async function populateCollections(app: INestApplication, initialData: {
     }
 }
 
-async function importProductsFromFile(app: INestApplication, csvPath: string, languageCode: string) {
+async function importProductsFromFile(app: INestApplication, productsCsvPath: string, languageCode: string) {
     // import the csv of same product data
     const importer = app.get(Importer);
-    const productData = await fs.readFile(csvPath, 'utf-8');
+    const productData = await fs.readFile(productsCsvPath, 'utf-8');
 
     const importResult = await importer.parseAndImport(productData, languageCode, true).toPromise();
-    if (importResult.errors.length) {
+    if (importResult.errors && importResult.errors.length) {
         const errorFile = path.join(process.cwd(), 'vendure-import-error.log');
         console.log(
             `${importResult.errors.length} errors encountered when importing product data. See: ${errorFile}`,

+ 0 - 0
packages/core/cli/vendure-cli.ts → packages/core/src/cli/vendure-cli.ts


+ 1 - 1
packages/create/src/create-vendure-app.ts

@@ -187,7 +187,7 @@ async function createApp(
                         require(path.join(root, 'node_modules/ts-node')).register();
                     }
                     const { populate } = await import(
-                        path.join(root, 'node_modules/@vendure/core/dist/cli/populate')
+                        path.join(root, 'node_modules/@vendure/core/cli/populate')
                     );
                     const { bootstrap, DefaultLogger, LogLevel } = await import(
                         path.join(root, 'node_modules/@vendure/core/dist/index')

+ 1 - 1
packages/dev-server/populate-dev-server.ts

@@ -1,7 +1,7 @@
 // tslint:disable-next-line:no-reference
 /// <reference path="../core/typings.d.ts" />
 import { bootstrap, defaultConfig, mergeConfig } from '@vendure/core';
-import { populate } from '@vendure/core/cli/populate';
+import { populate } from '@vendure/core/cli';
 import { clearAllTables, populateCustomers } from '@vendure/testing';
 import path from 'path';