@punks/backend-entity-manager 0.0.88 → 0.0.90

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 (50) hide show
  1. package/dist/cjs/index.js +31 -10
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/cjs/types/abstractions/export.d.ts +2 -1
  4. package/dist/cjs/types/commands/sampleDownload.d.ts +6 -2
  5. package/dist/cjs/types/platforms/nest/__test__/server/app/foos/foo.actions.d.ts +8 -0
  6. package/dist/{esm/types/platforms/nest/__test__/server/entities/foo/controller.d.ts → cjs/types/platforms/nest/__test__/server/app/foos/foo.controller.d.ts} +4 -7
  7. package/dist/{esm/types/platforms/nest/__test__/server/entities/foo/converter.d.ts → cjs/types/platforms/nest/__test__/server/app/foos/foo.converter.d.ts} +1 -1
  8. package/dist/{esm/types/platforms/nest/__test__/server/entities/foo/dto.d.ts → cjs/types/platforms/nest/__test__/server/app/foos/foo.dto.d.ts} +4 -4
  9. package/dist/cjs/types/platforms/nest/__test__/server/app/foos/foo.module.d.ts +2 -0
  10. package/dist/cjs/types/platforms/nest/__test__/server/database/core/entities/foo.entity.d.ts +2 -1
  11. package/dist/cjs/types/platforms/nest/__test__/server/database/core/entities.d.ts +1 -1
  12. package/dist/cjs/types/platforms/nest/__test__/server/database/core/repositories/foo.repository.d.ts +1 -1
  13. package/dist/cjs/types/platforms/nest/__test__/server/database/core/repositories.d.ts +2 -1
  14. package/dist/cjs/types/platforms/nest/__test__/server/entities/foos/foo.adapter.d.ts +7 -0
  15. package/dist/{esm/types/platforms/nest/__test__/server/entities/foo/manager.d.ts → cjs/types/platforms/nest/__test__/server/entities/foos/foo.manager.d.ts} +3 -3
  16. package/dist/cjs/types/platforms/nest/__test__/server/entities/foos/foo.module.d.ts +2 -0
  17. package/dist/{esm/types/platforms/nest/__test__/server/entities/foo/query.d.ts → cjs/types/platforms/nest/__test__/server/entities/foos/foo.query.d.ts} +1 -1
  18. package/dist/{esm/types/platforms/nest/__test__/server/entities/foo/serializer.d.ts → cjs/types/platforms/nest/__test__/server/entities/foos/foo.serializer.d.ts} +1 -3
  19. package/dist/cjs/types/platforms/nest/__test__/server/entities/foos/foo.types.d.ts +42 -0
  20. package/dist/esm/index.js +31 -10
  21. package/dist/esm/index.js.map +1 -1
  22. package/dist/esm/types/abstractions/export.d.ts +2 -1
  23. package/dist/esm/types/commands/sampleDownload.d.ts +6 -2
  24. package/dist/esm/types/platforms/nest/__test__/server/app/foos/foo.actions.d.ts +8 -0
  25. package/dist/{cjs/types/platforms/nest/__test__/server/entities/foo/controller.d.ts → esm/types/platforms/nest/__test__/server/app/foos/foo.controller.d.ts} +4 -7
  26. package/dist/{cjs/types/platforms/nest/__test__/server/entities/foo/converter.d.ts → esm/types/platforms/nest/__test__/server/app/foos/foo.converter.d.ts} +1 -1
  27. package/dist/{cjs/types/platforms/nest/__test__/server/entities/foo/dto.d.ts → esm/types/platforms/nest/__test__/server/app/foos/foo.dto.d.ts} +4 -4
  28. package/dist/esm/types/platforms/nest/__test__/server/app/foos/foo.module.d.ts +2 -0
  29. package/dist/esm/types/platforms/nest/__test__/server/database/core/entities/foo.entity.d.ts +2 -1
  30. package/dist/esm/types/platforms/nest/__test__/server/database/core/entities.d.ts +1 -1
  31. package/dist/esm/types/platforms/nest/__test__/server/database/core/repositories/foo.repository.d.ts +1 -1
  32. package/dist/esm/types/platforms/nest/__test__/server/database/core/repositories.d.ts +2 -1
  33. package/dist/esm/types/platforms/nest/__test__/server/entities/foos/foo.adapter.d.ts +7 -0
  34. package/dist/{cjs/types/platforms/nest/__test__/server/entities/foo/manager.d.ts → esm/types/platforms/nest/__test__/server/entities/foos/foo.manager.d.ts} +3 -3
  35. package/dist/esm/types/platforms/nest/__test__/server/entities/foos/foo.module.d.ts +2 -0
  36. package/dist/{cjs/types/platforms/nest/__test__/server/entities/foo/query.d.ts → esm/types/platforms/nest/__test__/server/entities/foos/foo.query.d.ts} +1 -1
  37. package/dist/{cjs/types/platforms/nest/__test__/server/entities/foo/serializer.d.ts → esm/types/platforms/nest/__test__/server/entities/foos/foo.serializer.d.ts} +1 -3
  38. package/dist/esm/types/platforms/nest/__test__/server/entities/foos/foo.types.d.ts +42 -0
  39. package/dist/index.d.ts +2 -1
  40. package/package.json +1 -1
  41. package/dist/cjs/types/platforms/nest/__test__/server/entities/foo/actions.d.ts +0 -8
  42. package/dist/cjs/types/platforms/nest/__test__/server/entities/foo/index.d.ts +0 -9
  43. package/dist/esm/types/platforms/nest/__test__/server/entities/foo/actions.d.ts +0 -8
  44. package/dist/esm/types/platforms/nest/__test__/server/entities/foo/index.d.ts +0 -9
  45. /package/dist/cjs/types/platforms/nest/__test__/server/entities/{foo/authentication.d.ts → foos/foo.authentication.d.ts} +0 -0
  46. /package/dist/cjs/types/platforms/nest/__test__/server/entities/{foo/models.d.ts → foos/foo.models.d.ts} +0 -0
  47. /package/dist/cjs/types/platforms/nest/__test__/server/entities/{foo/seeder.d.ts → foos/foo.seeder.d.ts} +0 -0
  48. /package/dist/esm/types/platforms/nest/__test__/server/entities/{foo/authentication.d.ts → foos/foo.authentication.d.ts} +0 -0
  49. /package/dist/esm/types/platforms/nest/__test__/server/entities/{foo/models.d.ts → foos/foo.models.d.ts} +0 -0
  50. /package/dist/esm/types/platforms/nest/__test__/server/entities/{foo/seeder.d.ts → foos/foo.seeder.d.ts} +0 -0
package/dist/cjs/index.js CHANGED
@@ -13,11 +13,11 @@ var constants$1 = require('@nestjs/core/injector/constants');
13
13
  var metadataScanner = require('@nestjs/core/metadata-scanner');
14
14
  var jwt = require('@nestjs/jwt');
15
15
  var eventEmitter = require('@nestjs/event-emitter');
16
- var require$$2 = require('fs');
17
16
  var typeorm = require('typeorm');
18
17
  var clientS3 = require('@aws-sdk/client-s3');
19
18
  var s3RequestPresigner = require('@aws-sdk/s3-request-presigner');
20
19
  var clientSes = require('@aws-sdk/client-ses');
20
+ var require$$2 = require('fs');
21
21
  var mail = require('@sendgrid/mail');
22
22
 
23
23
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -718,11 +718,11 @@ class EntitiesSampleDownloadAction {
718
718
  this.logger = backendCore.Log.getLogger(`${services.getEntityName()} -> Import`);
719
719
  }
720
720
  async execute(input) {
721
- this.logger.debug("Import action started", { input });
721
+ this.logger.debug("Sample download action started", { input });
722
722
  const result = await this.services
723
723
  .resolveSampleDownloadCommand()
724
724
  .execute(input);
725
- this.logger.debug("Import action completed", { input });
725
+ this.logger.debug("Sample download action completed", { input });
726
726
  return result;
727
727
  }
728
728
  }
@@ -895,7 +895,7 @@ class EntitiesExportCommand {
895
895
  this.settings = settings;
896
896
  }
897
897
  async execute(input) {
898
- const exportEntities = await this.getExportEntities(input.filters);
898
+ const exportEntities = await this.getExportEntities(input.filter);
899
899
  const outputFile = await this.buildExportFile(exportEntities.items, input.options.format);
900
900
  const downloadUrl = await this.uploadExportFile(outputFile);
901
901
  return {
@@ -924,7 +924,7 @@ class EntitiesExportCommand {
924
924
  });
925
925
  }
926
926
  buildAbsoluteBucketPath(relativePath) {
927
- return `${this.settings.exportBucket.rootFolderPath ?? ""}/${createDayPath(new Date())}/${relativePath}`;
927
+ return `${this.settings.exportBucket.rootFolderPath ?? ""}/exports/${createDayPath(new Date())}/${relativePath}`;
928
928
  }
929
929
  async getExportEntities(filters) {
930
930
  return this.services.resolveSearchQuery().execute(filters ?? {});
@@ -945,21 +945,43 @@ class EntitiesImportCommand {
945
945
  }
946
946
 
947
947
  class EntitiesSampleDownloadCommand {
948
- constructor(services) {
948
+ constructor(services, settings) {
949
949
  this.services = services;
950
+ this.settings = settings;
950
951
  }
951
952
  async execute(input) {
952
953
  const sample = await this.services
953
954
  .resolveSerializer()
954
955
  .createSample(input.format);
956
+ const downloadUrl = await this.uploadSampleFile(sample);
955
957
  return {
956
958
  file: {
957
959
  content: sample.content,
958
960
  contentType: sample.contentType,
959
961
  name: sample.fileName,
960
962
  },
963
+ downloadUrl,
961
964
  };
962
965
  }
966
+ async uploadSampleFile(file) {
967
+ await this.bucket.fileUpload({
968
+ bucket: this.settings.exportBucket.bucket,
969
+ filePath: this.buildAbsoluteBucketPath(file.fileName),
970
+ content: file.content,
971
+ contentType: file.contentType,
972
+ });
973
+ return await this.bucket.filePublicUrlCreate({
974
+ bucket: this.settings.exportBucket.bucket,
975
+ expirationMinutes: this.settings.exportBucket.publicLinksExpirationMinutes,
976
+ filePath: this.buildAbsoluteBucketPath(file.fileName),
977
+ });
978
+ }
979
+ buildAbsoluteBucketPath(relativePath) {
980
+ return `${this.settings.exportBucket.rootFolderPath ?? ""}/samples/${createDayPath(new Date())}/${relativePath}`;
981
+ }
982
+ get bucket() {
983
+ return this.services.getRootServices().resolveBucketProvider();
984
+ }
963
985
  }
964
986
 
965
987
  class EntityUpdateCommand {
@@ -2106,7 +2128,7 @@ class EntityManagerServiceCollection {
2106
2128
  this.locator.registerExportAction(this.entityName, new EntitiesExportAction(this.resolver));
2107
2129
  this.locator.registerImportCommand(this.entityName, new EntitiesImportCommand(this.resolver, settings));
2108
2130
  this.locator.registerImportAction(this.entityName, new EntitiesImportAction(this.resolver));
2109
- this.locator.registerSampleDownloadCommand(this.entityName, new EntitiesSampleDownloadCommand(this.resolver));
2131
+ this.locator.registerSampleDownloadCommand(this.entityName, new EntitiesSampleDownloadCommand(this.resolver, settings));
2110
2132
  this.locator.registerSampleDownloadAction(this.entityName, new EntitiesSampleDownloadAction(this.resolver));
2111
2133
  return this;
2112
2134
  }
@@ -21277,12 +21299,11 @@ exports.MultiTenancyModule = __decorate([
21277
21299
  ], exports.MultiTenancyModule);
21278
21300
 
21279
21301
  const createExpressFileResponse = (res, file) => {
21280
- const stream = require$$2.createReadStream(file.content);
21281
21302
  res.set({
21282
21303
  "Content-Type": file.contentType,
21283
21304
  "Content-Disposition": `attachment; filename="${file.name}"`,
21284
21305
  });
21285
- return new common.StreamableFile(stream);
21306
+ return new common.StreamableFile(file.content);
21286
21307
  };
21287
21308
 
21288
21309
  class QueryBuilderBase {
@@ -21897,7 +21918,7 @@ exports.InMemoryBucketProvider = class InMemoryBucketProvider {
21897
21918
  // Generate a public URL for the file based on the input parameters
21898
21919
  const fileKey = `${input.bucket}/${input.filePath}`;
21899
21920
  // Mock the public URL creation
21900
- const publicUrl = `fs://${fileKey}`;
21921
+ const publicUrl = `${fileKey}`;
21901
21922
  return publicUrl;
21902
21923
  }
21903
21924
  async fileUpload(input) {