@haus-tech/product-import-export-plugin 3.3.1 → 3.3.2-next.1
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/CHANGELOG.md +12 -0
- package/README.mdx +22 -5
- package/package.json +4 -2
- package/src/api/product-export.controller.d.ts +1 -0
- package/src/api/product-export.controller.js +17 -1
- package/src/api/product-export.controller.js.map +1 -1
- package/src/api/product-import.controller.js +2 -2
- package/src/api/product-import.controller.js.map +1 -1
- package/src/constants.d.ts +1 -0
- package/src/constants.js +2 -1
- package/src/constants.js.map +1 -1
- package/src/dashboard/export-dialog.tsx +21 -7
- package/src/dashboard/import.tsx +6 -3
- package/src/dashboard/utils.ts +0 -1
- package/src/index.d.ts +3 -0
- package/src/index.js +3 -0
- package/src/index.js.map +1 -1
- package/src/product-import-export.plugin.js +21 -0
- package/src/product-import-export.plugin.js.map +1 -1
- package/src/providers/import-providers/asset-importer.js +0 -2
- package/src/providers/import-providers/asset-importer.js.map +1 -1
- package/src/providers/import-providers/import-parser.d.ts +7 -5
- package/src/providers/import-providers/import-parser.js +56 -16
- package/src/providers/import-providers/import-parser.js.map +1 -1
- package/src/providers/import-providers/product-importer.d.ts +4 -0
- package/src/providers/import-providers/product-importer.js +151 -88
- package/src/providers/import-providers/product-importer.js.map +1 -1
- package/src/services/extended-fast-importer.service.d.ts +5 -3
- package/src/services/extended-fast-importer.service.js +20 -7
- package/src/services/extended-fast-importer.service.js.map +1 -1
- package/src/services/import-storage/import-job-storage-strategy.d.ts +22 -0
- package/src/services/import-storage/import-job-storage-strategy.js +3 -0
- package/src/services/import-storage/import-job-storage-strategy.js.map +1 -0
- package/src/services/import-storage/local-import-job-storage-strategy.d.ts +18 -0
- package/src/services/import-storage/local-import-job-storage-strategy.js +76 -0
- package/src/services/import-storage/local-import-job-storage-strategy.js.map +1 -0
- package/src/services/import-storage/s3-import-job-storage-strategy.d.ts +13 -0
- package/src/services/import-storage/s3-import-job-storage-strategy.js +109 -0
- package/src/services/import-storage/s3-import-job-storage-strategy.js.map +1 -0
- package/src/services/product-export.service.d.ts +3 -1
- package/src/services/product-export.service.js +66 -26
- package/src/services/product-export.service.js.map +1 -1
- package/src/services/product-import.service.d.ts +10 -6
- package/src/services/product-import.service.js +62 -37
- package/src/services/product-import.service.js.map +1 -1
- package/src/types.d.ts +21 -1
- package/src/ui/components/export-dialog.component.html +1 -1
- package/src/ui/components/export-dialog.component.ts +10 -2
- package/src/ui/components/product-import.component.html +6 -8
- package/src/ui/translations/en.json +1 -1
- package/src/ui/translations/sv.json +1 -1
|
@@ -15,22 +15,25 @@ const core_1 = require("@vendure/core");
|
|
|
15
15
|
const normalize_string_1 = require("../helpers/normalize-string");
|
|
16
16
|
const unique_1 = require("@vendure/common/lib/unique");
|
|
17
17
|
const lodash_1 = require("lodash");
|
|
18
|
+
const constants_1 = require("../constants");
|
|
18
19
|
let ExtendedFastImporterService = class ExtendedFastImporterService {
|
|
19
20
|
connection;
|
|
20
21
|
channelService;
|
|
21
22
|
customFieldRelationService;
|
|
22
|
-
|
|
23
|
+
stockLevelService;
|
|
24
|
+
stockLocationService;
|
|
23
25
|
translatableSaver;
|
|
24
26
|
requestContextService;
|
|
25
27
|
entityHydrator;
|
|
26
28
|
defaultChannel;
|
|
27
29
|
importCtx;
|
|
28
30
|
/** @internal */
|
|
29
|
-
constructor(connection, channelService, customFieldRelationService,
|
|
31
|
+
constructor(connection, channelService, customFieldRelationService, stockLevelService, stockLocationService, translatableSaver, requestContextService, entityHydrator) {
|
|
30
32
|
this.connection = connection;
|
|
31
33
|
this.channelService = channelService;
|
|
32
34
|
this.customFieldRelationService = customFieldRelationService;
|
|
33
|
-
this.
|
|
35
|
+
this.stockLevelService = stockLevelService;
|
|
36
|
+
this.stockLocationService = stockLocationService;
|
|
34
37
|
this.translatableSaver = translatableSaver;
|
|
35
38
|
this.requestContextService = requestContextService;
|
|
36
39
|
this.entityHydrator = entityHydrator;
|
|
@@ -126,7 +129,7 @@ let ExtendedFastImporterService = class ExtendedFastImporterService {
|
|
|
126
129
|
}
|
|
127
130
|
}
|
|
128
131
|
catch (error) {
|
|
129
|
-
|
|
132
|
+
core_1.Logger.error('Failed to prepare product before save', constants_1.loggerCtx, error.stack);
|
|
130
133
|
}
|
|
131
134
|
},
|
|
132
135
|
});
|
|
@@ -397,7 +400,7 @@ let ExtendedFastImporterService = class ExtendedFastImporterService {
|
|
|
397
400
|
.getRepository(this.importCtx, core_1.ProductVariantAsset)
|
|
398
401
|
.save(newAssets, { reload: false });
|
|
399
402
|
}
|
|
400
|
-
await this.
|
|
403
|
+
await this.setProductVariantStockOnHandDirectly(updatedVariant.id, input.stockOnHand ?? 0);
|
|
401
404
|
const assignedChannelIds = (0, unique_1.unique)([this.defaultChannel, this.importCtx.channel], 'id').map((c) => c.id);
|
|
402
405
|
for (const channelId of assignedChannelIds) {
|
|
403
406
|
const allPrices = await this.connection
|
|
@@ -476,7 +479,7 @@ let ExtendedFastImporterService = class ExtendedFastImporterService {
|
|
|
476
479
|
.getRepository(this.importCtx, core_1.ProductVariantAsset)
|
|
477
480
|
.save(variantAssets, { reload: false });
|
|
478
481
|
}
|
|
479
|
-
await this.
|
|
482
|
+
await this.setProductVariantStockOnHandDirectly(createdVariant.id, input.stockOnHand ?? 0);
|
|
480
483
|
const assignedChannelIds = (0, unique_1.unique)([this.defaultChannel, this.importCtx.channel], 'id').map((c) => c.id);
|
|
481
484
|
for (const channelId of assignedChannelIds) {
|
|
482
485
|
const variantPrice = new core_1.ProductVariantPrice({
|
|
@@ -496,6 +499,15 @@ let ExtendedFastImporterService = class ExtendedFastImporterService {
|
|
|
496
499
|
throw new Error("The FastImporterService must be initialized with a call to 'initialize()' before importing data");
|
|
497
500
|
}
|
|
498
501
|
}
|
|
502
|
+
async setProductVariantStockOnHandDirectly(productVariantId, targetStockOnHand) {
|
|
503
|
+
const defaultStockLocation = await this.stockLocationService.defaultStockLocation(this.importCtx);
|
|
504
|
+
const stockLevel = await this.stockLevelService.getStockLevel(this.importCtx, productVariantId, defaultStockLocation.id);
|
|
505
|
+
const delta = targetStockOnHand - stockLevel.stockOnHand;
|
|
506
|
+
if (delta === 0) {
|
|
507
|
+
return;
|
|
508
|
+
}
|
|
509
|
+
await this.stockLevelService.updateStockOnHandForLocation(this.importCtx, productVariantId, defaultStockLocation.id, delta);
|
|
510
|
+
}
|
|
499
511
|
};
|
|
500
512
|
exports.ExtendedFastImporterService = ExtendedFastImporterService;
|
|
501
513
|
exports.ExtendedFastImporterService = ExtendedFastImporterService = __decorate([
|
|
@@ -503,7 +515,8 @@ exports.ExtendedFastImporterService = ExtendedFastImporterService = __decorate([
|
|
|
503
515
|
__metadata("design:paramtypes", [core_1.TransactionalConnection,
|
|
504
516
|
core_1.ChannelService,
|
|
505
517
|
core_1.CustomFieldRelationService,
|
|
506
|
-
core_1.
|
|
518
|
+
core_1.StockLevelService,
|
|
519
|
+
core_1.StockLocationService,
|
|
507
520
|
core_1.TranslatableSaver,
|
|
508
521
|
core_1.RequestContextService,
|
|
509
522
|
core_1.EntityHydrator])
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extended-fast-importer.service.js","sourceRoot":"","sources":["../../../../../packages/product-import-export-plugin/src/services/extended-fast-importer.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"extended-fast-importer.service.js","sourceRoot":"","sources":["../../../../../packages/product-import-export-plugin/src/services/extended-fast-importer.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { RequestContext } from '@vendure/core';
|
|
2
|
+
export type ImportJobInputFile = {
|
|
3
|
+
originalname: string;
|
|
4
|
+
buffer: Buffer;
|
|
5
|
+
};
|
|
6
|
+
export interface ImportJobStorageStrategy {
|
|
7
|
+
/**
|
|
8
|
+
* @description
|
|
9
|
+
* Persist an uploaded import file and return a storage key to reference it in queued jobs.
|
|
10
|
+
*/
|
|
11
|
+
storeImportFile(ctx: RequestContext, file: ImportJobInputFile): Promise<string>;
|
|
12
|
+
/**
|
|
13
|
+
* @description
|
|
14
|
+
* Resolve previously stored import file content from a storage key.
|
|
15
|
+
*/
|
|
16
|
+
getImportFileContent(ctx: RequestContext, storageKey: string): Promise<string>;
|
|
17
|
+
/**
|
|
18
|
+
* @description
|
|
19
|
+
* Delete a stored import file by key. Must be safe to call repeatedly.
|
|
20
|
+
*/
|
|
21
|
+
deleteImportFile(ctx: RequestContext, storageKey: string): Promise<void>;
|
|
22
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"import-job-storage-strategy.js","sourceRoot":"","sources":["../../../../../../packages/product-import-export-plugin/src/services/import-storage/import-job-storage-strategy.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { RequestContext } from '@vendure/core';
|
|
2
|
+
import { ImportJobInputFile, ImportJobStorageStrategy } from './import-job-storage-strategy';
|
|
3
|
+
export type LocalImportJobStorageStrategyOptions = {
|
|
4
|
+
/**
|
|
5
|
+
* @description
|
|
6
|
+
* Base directory in which queued import input files are stored.
|
|
7
|
+
* Files are stored under `<baseDir>/<channelToken>/`.
|
|
8
|
+
*/
|
|
9
|
+
baseDir: string;
|
|
10
|
+
};
|
|
11
|
+
export declare class LocalImportJobStorageStrategy implements ImportJobStorageStrategy {
|
|
12
|
+
private options;
|
|
13
|
+
constructor(options: LocalImportJobStorageStrategyOptions);
|
|
14
|
+
storeImportFile(ctx: RequestContext, file: ImportJobInputFile): Promise<string>;
|
|
15
|
+
getImportFileContent(ctx: RequestContext, storageKey: string): Promise<string>;
|
|
16
|
+
deleteImportFile(ctx: RequestContext, storageKey: string): Promise<void>;
|
|
17
|
+
private getImportsDir;
|
|
18
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.LocalImportJobStorageStrategy = void 0;
|
|
37
|
+
const node_fs_1 = require("node:fs");
|
|
38
|
+
const path = __importStar(require("node:path"));
|
|
39
|
+
const crypto_1 = require("crypto");
|
|
40
|
+
class LocalImportJobStorageStrategy {
|
|
41
|
+
options;
|
|
42
|
+
constructor(options) {
|
|
43
|
+
this.options = options;
|
|
44
|
+
}
|
|
45
|
+
async storeImportFile(ctx, file) {
|
|
46
|
+
const importsDir = this.getImportsDir(ctx);
|
|
47
|
+
await node_fs_1.promises.mkdir(importsDir, { recursive: true });
|
|
48
|
+
const ext = path.extname(file.originalname || '').toLowerCase() || '.csv';
|
|
49
|
+
const fileName = `${Date.now()}-${(0, crypto_1.randomUUID)()}${ext}`;
|
|
50
|
+
const filePath = path.join(importsDir, fileName);
|
|
51
|
+
await node_fs_1.promises.writeFile(filePath, file.buffer);
|
|
52
|
+
return filePath;
|
|
53
|
+
}
|
|
54
|
+
async getImportFileContent(ctx, storageKey) {
|
|
55
|
+
const importsDir = this.getImportsDir(ctx);
|
|
56
|
+
if (!storageKey.startsWith(importsDir)) {
|
|
57
|
+
throw new Error('Invalid import storage key');
|
|
58
|
+
}
|
|
59
|
+
if (!(0, node_fs_1.existsSync)(storageKey)) {
|
|
60
|
+
throw new Error('Import file not found');
|
|
61
|
+
}
|
|
62
|
+
return node_fs_1.promises.readFile(storageKey, 'utf8');
|
|
63
|
+
}
|
|
64
|
+
async deleteImportFile(ctx, storageKey) {
|
|
65
|
+
const importsDir = this.getImportsDir(ctx);
|
|
66
|
+
if (!storageKey.startsWith(importsDir)) {
|
|
67
|
+
throw new Error('Invalid import storage key');
|
|
68
|
+
}
|
|
69
|
+
await node_fs_1.promises.rm(storageKey, { force: true });
|
|
70
|
+
}
|
|
71
|
+
getImportsDir(ctx) {
|
|
72
|
+
return path.join(this.options.baseDir, ctx.channel.token);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
exports.LocalImportJobStorageStrategy = LocalImportJobStorageStrategy;
|
|
76
|
+
//# sourceMappingURL=local-import-job-storage-strategy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-import-job-storage-strategy.js","sourceRoot":"","sources":["../../../../../../packages/product-import-export-plugin/src/services/import-storage/local-import-job-storage-strategy.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAoD;AACpD,gDAAiC;AACjC,mCAAmC;AAanC,MAAa,6BAA6B;IACpB;IAApB,YAAoB,OAA6C;QAA7C,YAAO,GAAP,OAAO,CAAsC;IAAG,CAAC;IAErE,KAAK,CAAC,eAAe,CAAC,GAAmB,EAAE,IAAwB;QACjE,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QAC1C,MAAM,kBAAE,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,IAAI,MAAM,CAAA;QACzE,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,IAAA,mBAAU,GAAE,GAAG,GAAG,EAAE,CAAA;QACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QAChD,MAAM,kBAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QACzC,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,GAAmB,EAAE,UAAkB;QAChE,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QAC1C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;QAC/C,CAAC;QACD,IAAI,CAAC,IAAA,oBAAU,EAAC,UAAU,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAA;QAC1C,CAAC;QACD,OAAO,kBAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;IACxC,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,GAAmB,EAAE,UAAkB;QAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QAC1C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;QAC/C,CAAC;QACD,MAAM,kBAAE,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IAC1C,CAAC;IAEO,aAAa,CAAC,GAAmB;QACvC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC3D,CAAC;CACF;AAnCD,sEAmCC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { RequestContext } from '@vendure/core';
|
|
2
|
+
import { S3ExportStorageConfig } from '../export-storage.util';
|
|
3
|
+
import { ImportJobInputFile, ImportJobStorageStrategy } from './import-job-storage-strategy';
|
|
4
|
+
export type S3ImportJobStorageStrategyOptions = {
|
|
5
|
+
storage: S3ExportStorageConfig;
|
|
6
|
+
};
|
|
7
|
+
export declare class S3ImportJobStorageStrategy implements ImportJobStorageStrategy {
|
|
8
|
+
private storage;
|
|
9
|
+
constructor(options: S3ImportJobStorageStrategyOptions);
|
|
10
|
+
storeImportFile(ctx: RequestContext, file: ImportJobInputFile): Promise<string>;
|
|
11
|
+
getImportFileContent(ctx: RequestContext, storageKey: string): Promise<string>;
|
|
12
|
+
deleteImportFile(ctx: RequestContext, storageKey: string): Promise<void>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.S3ImportJobStorageStrategy = void 0;
|
|
37
|
+
const client_s3_1 = require("@aws-sdk/client-s3");
|
|
38
|
+
const crypto_1 = require("crypto");
|
|
39
|
+
const path = __importStar(require("node:path"));
|
|
40
|
+
const export_storage_util_1 = require("../export-storage.util");
|
|
41
|
+
function normalizeFileNameForObjectKey(fileName) {
|
|
42
|
+
const base = path.posix.basename(fileName || 'import.csv');
|
|
43
|
+
const trimmed = base.trim();
|
|
44
|
+
if (!trimmed || trimmed === '.' || trimmed === '..') {
|
|
45
|
+
return 'import.csv';
|
|
46
|
+
}
|
|
47
|
+
return trimmed.replace(/[^A-Za-z0-9._-]/g, '_');
|
|
48
|
+
}
|
|
49
|
+
function buildImportObjectKey(storage, channelToken, fileName) {
|
|
50
|
+
const prefix = storage.baseKeyPrefix ?? 'imports/';
|
|
51
|
+
const normalizedPrefix = prefix.endsWith('/') ? prefix : `${prefix}/`;
|
|
52
|
+
return `${normalizedPrefix}${channelToken}/${fileName}`;
|
|
53
|
+
}
|
|
54
|
+
async function streamToString(stream) {
|
|
55
|
+
const chunks = [];
|
|
56
|
+
for await (const chunk of stream) {
|
|
57
|
+
chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk));
|
|
58
|
+
}
|
|
59
|
+
return Buffer.concat(chunks).toString('utf8');
|
|
60
|
+
}
|
|
61
|
+
class S3ImportJobStorageStrategy {
|
|
62
|
+
storage;
|
|
63
|
+
constructor(options) {
|
|
64
|
+
this.storage = options.storage;
|
|
65
|
+
}
|
|
66
|
+
async storeImportFile(ctx, file) {
|
|
67
|
+
const client = (0, export_storage_util_1.createS3Client)(this.storage);
|
|
68
|
+
const channelToken = ctx.channel.token;
|
|
69
|
+
const safeName = normalizeFileNameForObjectKey(file.originalname);
|
|
70
|
+
const key = buildImportObjectKey(this.storage, channelToken, `${Date.now()}-${(0, crypto_1.randomUUID)()}-${safeName}`);
|
|
71
|
+
await client.send(new client_s3_1.PutObjectCommand({
|
|
72
|
+
Bucket: this.storage.bucket,
|
|
73
|
+
Key: key,
|
|
74
|
+
Body: file.buffer,
|
|
75
|
+
ContentType: 'text/csv',
|
|
76
|
+
}));
|
|
77
|
+
return key;
|
|
78
|
+
}
|
|
79
|
+
async getImportFileContent(ctx, storageKey) {
|
|
80
|
+
const client = (0, export_storage_util_1.createS3Client)(this.storage);
|
|
81
|
+
const channelToken = ctx.channel.token;
|
|
82
|
+
const expectedPrefix = buildImportObjectKey(this.storage, channelToken, '');
|
|
83
|
+
if (!storageKey.startsWith(expectedPrefix)) {
|
|
84
|
+
throw new Error('Invalid import storage key');
|
|
85
|
+
}
|
|
86
|
+
const result = await client.send(new client_s3_1.GetObjectCommand({
|
|
87
|
+
Bucket: this.storage.bucket,
|
|
88
|
+
Key: storageKey,
|
|
89
|
+
}));
|
|
90
|
+
if (!result.Body) {
|
|
91
|
+
throw new Error('Import file not found');
|
|
92
|
+
}
|
|
93
|
+
return streamToString(result.Body);
|
|
94
|
+
}
|
|
95
|
+
async deleteImportFile(ctx, storageKey) {
|
|
96
|
+
const client = (0, export_storage_util_1.createS3Client)(this.storage);
|
|
97
|
+
const channelToken = ctx.channel.token;
|
|
98
|
+
const expectedPrefix = buildImportObjectKey(this.storage, channelToken, '');
|
|
99
|
+
if (!storageKey.startsWith(expectedPrefix)) {
|
|
100
|
+
throw new Error('Invalid import storage key');
|
|
101
|
+
}
|
|
102
|
+
await client.send(new client_s3_1.DeleteObjectCommand({
|
|
103
|
+
Bucket: this.storage.bucket,
|
|
104
|
+
Key: storageKey,
|
|
105
|
+
}));
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
exports.S3ImportJobStorageStrategy = S3ImportJobStorageStrategy;
|
|
109
|
+
//# sourceMappingURL=s3-import-job-storage-strategy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"s3-import-job-storage-strategy.js","sourceRoot":"","sources":["../../../../../../packages/product-import-export-plugin/src/services/import-storage/s3-import-job-storage-strategy.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ export declare class ProductExportService {
|
|
|
12
12
|
private configService;
|
|
13
13
|
constructor(options: PluginInitOptions, exportStorageStrategy: ExportStorageStrategy, productService: ProductService, stockLevelService: StockLevelService, channelService: ChannelService, configService: ConfigService);
|
|
14
14
|
createExportFile(ctx: RequestContext, selectionIds: ID[], fileName: string, selectedCustomFields: string, exportAssetsAs: 'url' | 'json', selectedExportFields: string, pageSize?: number, concurrency?: number): Promise<string>;
|
|
15
|
-
exportProduct(ctx: RequestContext, product: Product, languages: LanguageCode[], filteredCustomFieldNames: string[], exportAssetsAs: 'url' | 'json', csvWriter: CsvWriter<any
|
|
15
|
+
exportProduct(ctx: RequestContext, product: Product, languages: LanguageCode[], filteredCustomFieldNames: string[], exportAssetsAs: 'url' | 'json', csvWriter: CsvWriter<any>, includeStockOnHand: boolean): Promise<void>;
|
|
16
16
|
private handleAssets;
|
|
17
17
|
/**
|
|
18
18
|
* Collects {@link ID}s from any relation custom field value (single entity, list, or raw id),
|
|
@@ -26,8 +26,10 @@ export declare class ProductExportService {
|
|
|
26
26
|
private getRelationCustomFieldDef;
|
|
27
27
|
private handleCustomFields;
|
|
28
28
|
private getStockOnHand;
|
|
29
|
+
private getStockOnHandMap;
|
|
29
30
|
private mapTranslations;
|
|
30
31
|
private mapFacetTranslations;
|
|
32
|
+
hasMultiVariantProducts(ctx: RequestContext, selectionIds?: ID[]): Promise<boolean>;
|
|
31
33
|
getAllProductIds(ctx: RequestContext): Promise<ID[]>;
|
|
32
34
|
/**
|
|
33
35
|
* Lists exportable custom field columns. For relations, `type` is always the **related entity’s**
|
|
@@ -113,7 +113,6 @@ let ProductExportService = class ProductExportService {
|
|
|
113
113
|
// Use .tmp extension during export, rename to final name when complete to prevent it from being listed in ui without being completed
|
|
114
114
|
const exportFile = `${finalExportFile}.tmp`;
|
|
115
115
|
const headers = [];
|
|
116
|
-
headers.push({ id: 'productId', title: 'productId' });
|
|
117
116
|
// Add headers for translations
|
|
118
117
|
for (const lang of languages) {
|
|
119
118
|
headers.push({ id: `name:${lang}`, title: `name:${lang}` });
|
|
@@ -171,7 +170,7 @@ let ProductExportService = class ProductExportService {
|
|
|
171
170
|
...variantRelationCustomFields,
|
|
172
171
|
]);
|
|
173
172
|
hasMore = currentPage * pageSize < totalItems;
|
|
174
|
-
const exportPromises = items.map((product) => limiter.schedule(async () => this.exportProduct(ctx, product, languages, filteredCustomFieldNames, exportAssetsAs, csvWriter)));
|
|
173
|
+
const exportPromises = items.map((product) => limiter.schedule(async () => this.exportProduct(ctx, product, languages, filteredCustomFieldNames, exportAssetsAs, csvWriter, selectedExportFieldsSet.has('stockOnHand'))));
|
|
175
174
|
await Promise.all(exportPromises);
|
|
176
175
|
currentPage++;
|
|
177
176
|
}
|
|
@@ -204,7 +203,7 @@ let ProductExportService = class ProductExportService {
|
|
|
204
203
|
throw error;
|
|
205
204
|
}
|
|
206
205
|
}
|
|
207
|
-
async exportProduct(ctx, product, languages, filteredCustomFieldNames, exportAssetsAs, csvWriter) {
|
|
206
|
+
async exportProduct(ctx, product, languages, filteredCustomFieldNames, exportAssetsAs, csvWriter, includeStockOnHand) {
|
|
208
207
|
const records = [];
|
|
209
208
|
const { assets = [], facetValues = [], optionGroups = [], variants = [], translations = [], customFields = {}, } = product;
|
|
210
209
|
const nameTranslations = this.mapTranslations(translations, 'name', languages);
|
|
@@ -212,6 +211,9 @@ let ProductExportService = class ProductExportService {
|
|
|
212
211
|
const descriptionTranslations = this.mapTranslations(translations, 'description', languages);
|
|
213
212
|
// Filter out all variants that are soft deleted
|
|
214
213
|
const activeVariants = variants.filter((v) => !v.deletedAt);
|
|
214
|
+
const stockOnHandByVariantId = includeStockOnHand
|
|
215
|
+
? await this.getStockOnHandMap(ctx, activeVariants.map((variant) => variant.id))
|
|
216
|
+
: new Map();
|
|
215
217
|
const productAssets = assets.length === 0
|
|
216
218
|
? ''
|
|
217
219
|
: assets.length > 0
|
|
@@ -231,7 +233,26 @@ let ProductExportService = class ProductExportService {
|
|
|
231
233
|
.join('|');
|
|
232
234
|
return acc;
|
|
233
235
|
}, {});
|
|
234
|
-
|
|
236
|
+
const convertToHTML = (text) => {
|
|
237
|
+
return text.replace(/\n/g, '<br>').replace(/\t/g, ' ').replace(/,\s*'/g, ", '");
|
|
238
|
+
};
|
|
239
|
+
const firstRowProductColumnsByLang = languages.reduce((acc, lang) => {
|
|
240
|
+
const escapedDescription = convertToHTML(descriptionTranslations[lang] || '');
|
|
241
|
+
const escapedName = (nameTranslations[lang] || '')
|
|
242
|
+
.replace(/"/g, "'")
|
|
243
|
+
.replace(/\s+/g, ' ')
|
|
244
|
+
.replace(/,\s*'/g, ", '")
|
|
245
|
+
.replace(/'/g, "''");
|
|
246
|
+
acc[lang] = {
|
|
247
|
+
[`name:${lang}`]: escapedName || '',
|
|
248
|
+
[`slug:${lang}`]: slugTranslations[lang] || '',
|
|
249
|
+
[`description:${lang}`]: escapedDescription || '',
|
|
250
|
+
[`facets:${lang}`]: productFacets[lang],
|
|
251
|
+
[`optionGroups:${lang}`]: optionGroupNames[lang],
|
|
252
|
+
};
|
|
253
|
+
return acc;
|
|
254
|
+
}, {});
|
|
255
|
+
for (const [variantIndex, variant] of activeVariants.entries()) {
|
|
235
256
|
const variantValues = languages.reduce((acc, lang) => {
|
|
236
257
|
acc[lang] = ((0, lodash_1.sortBy)(variant.options, (o) => o.groupId) || [])
|
|
237
258
|
.map((option) => this.mapTranslations(option.translations, 'name', [lang])[lang])
|
|
@@ -247,34 +268,22 @@ let ProductExportService = class ProductExportService {
|
|
|
247
268
|
.join('|');
|
|
248
269
|
return acc;
|
|
249
270
|
}, {});
|
|
250
|
-
const stockOnHand =
|
|
251
|
-
const variantTranslations = variant.translations;
|
|
252
|
-
const variantNameTranslations = this.mapTranslations(variantTranslations, 'name', languages);
|
|
271
|
+
const stockOnHand = includeStockOnHand ? (stockOnHandByVariantId.get(variant.id) ?? 0) : 0;
|
|
253
272
|
const record = {};
|
|
254
|
-
const convertToHTML = (text) => {
|
|
255
|
-
return text
|
|
256
|
-
.replace(/\n/g, '<br>')
|
|
257
|
-
.replace(/\t/g, ' ')
|
|
258
|
-
.replace(/,\s*'/g, ", '");
|
|
259
|
-
};
|
|
260
273
|
for (const lang of languages) {
|
|
261
|
-
const
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
record
|
|
268
|
-
|
|
269
|
-
record[`slug:${lang}`] = records.length === 0 ? slugTranslations[lang] || '' : '';
|
|
270
|
-
record[`description:${lang}`] = records.length === 0 ? escapedDescription || '' : '';
|
|
271
|
-
record[`facets:${lang}`] = records.length === 0 ? productFacets[lang] : '';
|
|
272
|
-
record[`optionGroups:${lang}`] = records.length === 0 ? optionGroupNames[lang] : '';
|
|
274
|
+
const firstRowProductColumns = firstRowProductColumnsByLang[lang];
|
|
275
|
+
record[`name:${lang}`] = variantIndex === 0 ? firstRowProductColumns[`name:${lang}`] : '';
|
|
276
|
+
record[`slug:${lang}`] = variantIndex === 0 ? firstRowProductColumns[`slug:${lang}`] : '';
|
|
277
|
+
record[`description:${lang}`] =
|
|
278
|
+
variantIndex === 0 ? firstRowProductColumns[`description:${lang}`] : '';
|
|
279
|
+
record[`facets:${lang}`] = variantIndex === 0 ? firstRowProductColumns[`facets:${lang}`] : '';
|
|
280
|
+
record[`optionGroups:${lang}`] =
|
|
281
|
+
variantIndex === 0 ? firstRowProductColumns[`optionGroups:${lang}`] : '';
|
|
273
282
|
record[`optionValues:${lang}`] = variantValues[lang];
|
|
274
283
|
record[`variantFacets:${lang}`] = variantFacets[lang];
|
|
275
284
|
}
|
|
276
285
|
const productVariantPrices = variant.productVariantPrices.filter((price) => price.channelId === ctx.channelId);
|
|
277
|
-
record.assets =
|
|
286
|
+
record.assets = variantIndex === 0 ? productAssets : '';
|
|
278
287
|
record.sku = variant.sku;
|
|
279
288
|
record.price = productVariantPrices[0]?.price / 100; // Assuming the price is stored in cents
|
|
280
289
|
record.taxCategory = 'standard'; // Replace with actual tax category if available
|
|
@@ -397,6 +406,13 @@ let ProductExportService = class ProductExportService {
|
|
|
397
406
|
const stockLevel = await this.stockLevelService.getAvailableStock(ctx, variantId);
|
|
398
407
|
return stockLevel.stockOnHand;
|
|
399
408
|
}
|
|
409
|
+
async getStockOnHandMap(ctx, variantIds) {
|
|
410
|
+
const entries = await Promise.all(variantIds.map(async (variantId) => [
|
|
411
|
+
variantId,
|
|
412
|
+
await this.getStockOnHand(ctx, variantId),
|
|
413
|
+
]));
|
|
414
|
+
return new Map(entries);
|
|
415
|
+
}
|
|
400
416
|
// Method to map translations for a specific field
|
|
401
417
|
mapTranslations(translations, field, languages) {
|
|
402
418
|
const translationMap = {};
|
|
@@ -417,6 +433,30 @@ let ProductExportService = class ProductExportService {
|
|
|
417
433
|
}
|
|
418
434
|
return `${facetNameTranslations[lang]}:${facetValueTranslations[lang]}`;
|
|
419
435
|
}
|
|
436
|
+
async hasMultiVariantProducts(ctx, selectionIds) {
|
|
437
|
+
const pageSize = 100;
|
|
438
|
+
let skip = 0;
|
|
439
|
+
let hasMore = true;
|
|
440
|
+
while (hasMore) {
|
|
441
|
+
const { items, totalItems } = await this.productService.findAll(ctx, {
|
|
442
|
+
...(selectionIds && selectionIds.length > 0
|
|
443
|
+
? {
|
|
444
|
+
filter: {
|
|
445
|
+
id: { in: selectionIds },
|
|
446
|
+
},
|
|
447
|
+
}
|
|
448
|
+
: {}),
|
|
449
|
+
skip,
|
|
450
|
+
take: pageSize,
|
|
451
|
+
}, ['variants']);
|
|
452
|
+
if (items.some((product) => product.variants.filter((variant) => !variant.deletedAt).length > 1)) {
|
|
453
|
+
return true;
|
|
454
|
+
}
|
|
455
|
+
skip += pageSize;
|
|
456
|
+
hasMore = skip < totalItems;
|
|
457
|
+
}
|
|
458
|
+
return false;
|
|
459
|
+
}
|
|
420
460
|
async getAllProductIds(ctx) {
|
|
421
461
|
let offset = 0;
|
|
422
462
|
const limit = 100;
|