@punks/backend-entity-manager 0.0.405 → 0.0.407
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/cjs/index.js +22 -9
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/platforms/nest/services/export/service.d.ts +8 -2
- package/dist/cjs/types/platforms/nest/services/export/types.d.ts +2 -1
- package/dist/esm/index.js +22 -9
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/platforms/nest/services/export/service.d.ts +8 -2
- package/dist/esm/types/platforms/nest/services/export/types.d.ts +2 -1
- package/dist/index.d.ts +9 -3
- package/package.json +1 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
1
2
|
import { DataExportFile, DataExportInput } from "./types";
|
|
2
3
|
import { EntityManagerRegistry } from "../../ioc/registry";
|
|
3
4
|
export declare class DataExportService {
|
|
@@ -5,10 +6,15 @@ export declare class DataExportService {
|
|
|
5
6
|
constructor(registry: EntityManagerRegistry);
|
|
6
7
|
exportData<TSheetItem>(data: TSheetItem[], input: DataExportInput<TSheetItem>): Promise<{
|
|
7
8
|
downloadUrl: import("../../../../abstractions/files").FileProviderDownloadUrl;
|
|
8
|
-
file:
|
|
9
|
+
file: {
|
|
10
|
+
fileName: string;
|
|
11
|
+
content: Buffer;
|
|
12
|
+
contentType: string;
|
|
13
|
+
};
|
|
9
14
|
}>;
|
|
10
|
-
extractData<TSheetItem>(data: TSheetItem[], input: DataExportInput<TSheetItem>): Promise<DataExportFile>;
|
|
15
|
+
extractData<TSheetItem>(data: TSheetItem[], input: Omit<DataExportInput<TSheetItem>, "fileName">): Promise<DataExportFile>;
|
|
11
16
|
private uploadExportFile;
|
|
17
|
+
private buildExportFileName;
|
|
12
18
|
private buildExportFilePath;
|
|
13
19
|
private get defaultFileProvider();
|
|
14
20
|
private get defaultBucketProvider();
|
package/dist/esm/index.js
CHANGED
|
@@ -22850,40 +22850,53 @@ let DataExportService = class DataExportService {
|
|
|
22850
22850
|
}
|
|
22851
22851
|
async exportData(data, input) {
|
|
22852
22852
|
const file = await this.extractData(data, input);
|
|
22853
|
-
const downloadUrl = await this.uploadExportFile(file, {
|
|
22854
|
-
dataName: input.
|
|
22853
|
+
const { downloadUrl, fileName } = await this.uploadExportFile(file, {
|
|
22854
|
+
dataName: input.dataName,
|
|
22855
|
+
fileName: input.fileName,
|
|
22855
22856
|
format: input.format,
|
|
22856
22857
|
});
|
|
22857
22858
|
return {
|
|
22858
22859
|
downloadUrl,
|
|
22859
|
-
file
|
|
22860
|
+
file: {
|
|
22861
|
+
fileName,
|
|
22862
|
+
content: file.content,
|
|
22863
|
+
contentType: file.contentType,
|
|
22864
|
+
},
|
|
22860
22865
|
};
|
|
22861
22866
|
}
|
|
22862
22867
|
async extractData(data, input) {
|
|
22863
22868
|
const content = new DataExportSerializer().serialize(data, {
|
|
22864
22869
|
columns: input.columns,
|
|
22865
22870
|
format: input.format,
|
|
22866
|
-
name: input.
|
|
22871
|
+
name: input.dataName,
|
|
22867
22872
|
});
|
|
22868
22873
|
return {
|
|
22869
22874
|
content: content.content,
|
|
22870
22875
|
contentType: content.contentType,
|
|
22871
22876
|
};
|
|
22872
22877
|
}
|
|
22873
|
-
async uploadExportFile(file, { dataName, format, }) {
|
|
22874
|
-
const
|
|
22878
|
+
async uploadExportFile(file, { dataName, fileName, format, }) {
|
|
22879
|
+
const fileNameWithExtension = this.buildExportFileName(fileName, format);
|
|
22880
|
+
const filePath = this.buildExportFilePath(dataName, fileNameWithExtension);
|
|
22875
22881
|
await this.defaultBucketProvider.fileUpload({
|
|
22876
22882
|
bucket: this.defaultFileProvider.defaultBucket,
|
|
22877
22883
|
filePath,
|
|
22878
22884
|
content: file.content,
|
|
22879
22885
|
contentType: file.contentType,
|
|
22880
22886
|
});
|
|
22881
|
-
|
|
22887
|
+
const downloadUrl = await this.defaultFileProvider.getFileProviderDownloadUrl({
|
|
22882
22888
|
reference: filePath,
|
|
22883
22889
|
});
|
|
22890
|
+
return {
|
|
22891
|
+
downloadUrl,
|
|
22892
|
+
fileName: fileNameWithExtension,
|
|
22893
|
+
};
|
|
22894
|
+
}
|
|
22895
|
+
buildExportFileName(fileName, format) {
|
|
22896
|
+
return `${fileName}.${format}`;
|
|
22884
22897
|
}
|
|
22885
|
-
buildExportFilePath(dataName,
|
|
22886
|
-
return `/data-export/${dataName}/${createDayPath$2(new Date())}/${newUuid$1()}_${
|
|
22898
|
+
buildExportFilePath(dataName, fileName) {
|
|
22899
|
+
return `/data-export/${dataName}/${createDayPath$2(new Date())}/${newUuid$1()}_${fileName}`;
|
|
22887
22900
|
}
|
|
22888
22901
|
get defaultFileProvider() {
|
|
22889
22902
|
return this.registry
|