gulpfile.ts 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import { exec } from 'child_process';
  2. import { dest, parallel, series, src } from 'gulp';
  3. import path from 'path';
  4. // tslint:disable:no-console
  5. function copySchemas() {
  6. return src(['../src/**/*.graphql']).pipe(dest('../dist/server/src'));
  7. }
  8. function copyEmailTemplates() {
  9. return src(['../src/email/templates/**/*']).pipe(dest('../dist/cli/assets/email-templates'));
  10. }
  11. function copyCliAssets() {
  12. return src(['../cli/assets/**/*']).pipe(dest('../dist/cli/assets'));
  13. }
  14. function copyCliImages() {
  15. return src(['../mock-data/assets/**/*']).pipe(dest('../dist/cli/assets/images'));
  16. }
  17. function buildAdminUi() {
  18. return exec(
  19. 'yarn build --prod=true',
  20. {
  21. cwd: path.join(__dirname, '../../admin-ui'),
  22. },
  23. error => console.log(error),
  24. );
  25. }
  26. function copyAdminUi() {
  27. return src(['../../admin-ui/dist/vendure-admin/**/*']).pipe(dest('../dist/admin-ui'));
  28. }
  29. function buildAndCopyAdminUi() {
  30. return src(['../mock-data/assets/**/*']).pipe(dest('../dist/cli/assets/images'));
  31. }
  32. export const build = parallel(
  33. copySchemas,
  34. copyEmailTemplates,
  35. copyCliAssets,
  36. copyCliImages,
  37. series(buildAdminUi, copyAdminUi),
  38. );