@haus-tech/product-import-export-plugin 3.6.9 → 3.6.11
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 +13 -0
- package/README.md +1 -0
- package/package.json +1 -1
- package/src/helpers/import-csv-lines.d.ts +11 -0
- package/src/helpers/import-csv-lines.js +32 -0
- package/src/helpers/import-csv-lines.js.map +1 -0
- package/src/providers/import-providers/import-parser.d.ts +7 -0
- package/src/providers/import-providers/import-parser.js +21 -11
- package/src/providers/import-providers/import-parser.js.map +1 -1
- package/src/providers/import-providers/product-importer.d.ts +10 -5
- package/src/providers/import-providers/product-importer.js +52 -61
- package/src/providers/import-providers/product-importer.js.map +1 -1
- package/src/services/product-import.service.js +8 -2
- package/src/services/product-import.service.js.map +1 -1
- package/src/services/sku-relation-resolver.d.ts +8 -2
- package/src/services/sku-relation-resolver.js +43 -38
- package/src/services/sku-relation-resolver.js.map +1 -1
- package/src/ui/components/product-import.component.html +12 -0
- package/src/ui/components/product-import.component.ts +11 -1
- package/src/ui/translations/en.json +1 -0
- package/src/ui/translations/sv.json +1 -0
- package/src/ui/upload-errors.spec.ts +17 -0
- package/src/ui/upload-errors.ts +14 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,16 @@
|
|
|
1
|
+
## 3.6.11
|
|
2
|
+
|
|
3
|
+
### 🩹 Fixes
|
|
4
|
+
|
|
5
|
+
- **product-import-export-plugin:** reject an upload with an unknown column before it is queued ([#54](https://github.com/WeAreHausTech/haus-tech-vendure-plugins-public/pull/54))
|
|
6
|
+
|
|
7
|
+
## 3.6.10
|
|
8
|
+
|
|
9
|
+
### 🩹 Fixes
|
|
10
|
+
|
|
11
|
+
- **product-import-export-plugin:** read SKU relation columns once per import ([#53](https://github.com/WeAreHausTech/haus-tech-vendure-plugins-public/pull/53))
|
|
12
|
+
- **product-import-export-plugin:** list rejected upload rows in the Admin UI ([#52](https://github.com/WeAreHausTech/haus-tech-vendure-plugins-public/pull/52))
|
|
13
|
+
|
|
1
14
|
## 3.6.9
|
|
2
15
|
|
|
3
16
|
### 🩹 Fixes
|
package/README.md
CHANGED
|
@@ -161,6 +161,7 @@ export const config = {
|
|
|
161
161
|
- If a column is omitted from the CSV header, that field is left unchanged on existing products/variants.
|
|
162
162
|
- If a column exists in the header but the cell is empty, that field is explicitly cleared.
|
|
163
163
|
- For products with more than one variant, `optionGroups` and `optionValues` are required.
|
|
164
|
+
- The header is checked before the upload is queued. A custom field column the shop does not have, a missing required column or mixed translated and untranslated columns make the upload answer `400` with `{ "errors": ["Invalid custom field: product:clubName"] }`, the Dashboard lists the errors, and nothing is imported.
|
|
164
165
|
- Product data (`slug`, `description`, `assets`, `facets`, `optionGroups` and `product:` custom fields) is read from a product's first row, the row with a `name`. If a later variant row of the product fills one of these columns, that product is not imported and the import reports the column and line. Other products in the file still import. `id` may repeat on every row.
|
|
165
166
|
|
|
166
167
|
#### Relations to variants by SKU
|
package/package.json
CHANGED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The lines of an import CSV that the importer reads: blank and comma-only lines are dropped, so
|
|
3
|
+
* the header is line 1 and data row N is line N + 1 for everything that reports a row.
|
|
4
|
+
*/
|
|
5
|
+
export declare function importCsvLines(csv: string): string[];
|
|
6
|
+
/** Splits one CSV line on commas that are not inside double quotes. */
|
|
7
|
+
export declare function splitCsvLine(line: string): string[];
|
|
8
|
+
/** A header cell as the CSV parser reads it: no byte order mark, no surrounding quotes or space. */
|
|
9
|
+
export declare function normalizeHeader(header: string): string;
|
|
10
|
+
/** The header cells of the import CSV, read the same way by every step of an import. */
|
|
11
|
+
export declare function importCsvHeaders(lines: string[]): string[];
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.importCsvLines = importCsvLines;
|
|
4
|
+
exports.splitCsvLine = splitCsvLine;
|
|
5
|
+
exports.normalizeHeader = normalizeHeader;
|
|
6
|
+
exports.importCsvHeaders = importCsvHeaders;
|
|
7
|
+
/**
|
|
8
|
+
* The lines of an import CSV that the importer reads: blank and comma-only lines are dropped, so
|
|
9
|
+
* the header is line 1 and data row N is line N + 1 for everything that reports a row.
|
|
10
|
+
*/
|
|
11
|
+
function importCsvLines(csv) {
|
|
12
|
+
return csv.split('\n').filter((line) => {
|
|
13
|
+
const trimmed = line.trim();
|
|
14
|
+
return trimmed !== '' && !/^,+$/.test(trimmed);
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
/** Splits one CSV line on commas that are not inside double quotes. */
|
|
18
|
+
function splitCsvLine(line) {
|
|
19
|
+
return line.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);
|
|
20
|
+
}
|
|
21
|
+
/** A header cell as the CSV parser reads it: no byte order mark, no surrounding quotes or space. */
|
|
22
|
+
function normalizeHeader(header) {
|
|
23
|
+
return header
|
|
24
|
+
.replace(/^\uFEFF/, '')
|
|
25
|
+
.trim()
|
|
26
|
+
.replace(/^"(.*)"$/, '$1');
|
|
27
|
+
}
|
|
28
|
+
/** The header cells of the import CSV, read the same way by every step of an import. */
|
|
29
|
+
function importCsvHeaders(lines) {
|
|
30
|
+
return lines.length === 0 ? [] : splitCsvLine(lines[0]).map(normalizeHeader);
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=import-csv-lines.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"import-csv-lines.js","sourceRoot":"","sources":["../../../../../packages/product-import-export-plugin/src/helpers/import-csv-lines.ts"],"names":[],"mappings":";;AAIA,wCAKC;AAGD,oCAEC;AAGD,0CAKC;AAGD,4CAEC;AA3BD;;;GAGG;AACH,SAAgB,cAAc,CAAC,GAAW;IACxC,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;QAC3B,OAAO,OAAO,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAChD,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,uEAAuE;AACvE,SAAgB,YAAY,CAAC,IAAY;IACvC,OAAO,IAAI,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAA;AACpD,CAAC;AAED,oGAAoG;AACpG,SAAgB,eAAe,CAAC,MAAc;IAC5C,OAAO,MAAM;SACV,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;SACtB,IAAI,EAAE;SACN,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;AAC9B,CAAC;AAED,wFAAwF;AACxF,SAAgB,gBAAgB,CAAC,KAAe;IAC9C,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;AAC9E,CAAC"}
|
|
@@ -132,6 +132,13 @@ export declare class ImportParser {
|
|
|
132
132
|
* returns a data structure which can then be used to populate Vendure using the {@link FastImporterService}.
|
|
133
133
|
*/
|
|
134
134
|
parseProducts(input: string | Stream, mainLanguage?: LanguageCode): Promise<ParseResult<ParsedProductWithVariants>>;
|
|
135
|
+
/**
|
|
136
|
+
* @description
|
|
137
|
+
* Checks the header row alone: unknown custom field columns, mixed or missing translations and
|
|
138
|
+
* missing required columns. An empty result means the import can read every column. The upload
|
|
139
|
+
* runs this before queueing, so a wrong header is rejected at once instead of in the job.
|
|
140
|
+
*/
|
|
141
|
+
validateHeader(headerRow: string[]): string[];
|
|
135
142
|
private processRawRecords;
|
|
136
143
|
/**
|
|
137
144
|
* Maps a CSV column key (e.g. `product:relatedProducts:product`) to the Vendure custom field `name`.
|
|
@@ -105,24 +105,34 @@ let ImportParser = class ImportParser {
|
|
|
105
105
|
}
|
|
106
106
|
});
|
|
107
107
|
}
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
108
|
+
/**
|
|
109
|
+
* @description
|
|
110
|
+
* Checks the header row alone: unknown custom field columns, mixed or missing translations and
|
|
111
|
+
* missing required columns. An empty result means the import can read every column. The upload
|
|
112
|
+
* runs this before queueing, so a wrong header is rejected at once instead of in the job.
|
|
113
|
+
*/
|
|
114
|
+
validateHeader(headerRow) {
|
|
115
115
|
const customFieldErrors = this.validateCustomFields(headerRow);
|
|
116
116
|
if (customFieldErrors.length > 0) {
|
|
117
|
-
return
|
|
117
|
+
return customFieldErrors;
|
|
118
118
|
}
|
|
119
119
|
const translationError = this.validateHeaderTranslations(headerRow);
|
|
120
120
|
if (translationError) {
|
|
121
|
-
return
|
|
121
|
+
return [translationError];
|
|
122
122
|
}
|
|
123
123
|
const columnError = validateRequiredColumns(headerRow);
|
|
124
|
-
|
|
125
|
-
|
|
124
|
+
return columnError ? [columnError] : [];
|
|
125
|
+
}
|
|
126
|
+
async processRawRecords(records, mainLanguage) {
|
|
127
|
+
const results = [];
|
|
128
|
+
const errors = [];
|
|
129
|
+
let currentRow;
|
|
130
|
+
const headerRow = records[0];
|
|
131
|
+
const rest = records.slice(1);
|
|
132
|
+
const totalProducts = rest.map((row) => row[0]).filter((name) => name.trim() !== '').length;
|
|
133
|
+
const headerErrors = this.validateHeader(headerRow);
|
|
134
|
+
if (headerErrors.length > 0) {
|
|
135
|
+
return { results: [], errors: headerErrors, processed: 0 };
|
|
126
136
|
}
|
|
127
137
|
const usedLanguages = usedLanguageCodes(headerRow);
|
|
128
138
|
let line = 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"import-parser.js","sourceRoot":"","sources":["../../../../../../packages/product-import-export-plugin/src/providers/import-providers/import-parser.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"import-parser.js","sourceRoot":"","sources":["../../../../../../packages/product-import-export-plugin/src/providers/import-providers/import-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,9 @@ import { ParsedProductWithId, UpdatingStrategy } from '../../types';
|
|
|
7
7
|
import { PluginInitOptions } from '../../types';
|
|
8
8
|
import { ImportParser } from './import-parser';
|
|
9
9
|
import { ExtendedAssetImporter } from './asset-importer';
|
|
10
|
-
import { SkuRelationResolver } from '../../services/sku-relation-resolver';
|
|
10
|
+
import { SkuRelationResolver, SkuRelationResult } from '../../services/sku-relation-resolver';
|
|
11
|
+
/** The relation columns of one import whose values are SKUs, and the variant id behind each SKU. */
|
|
12
|
+
type SkuLookup = Pick<SkuRelationResult, 'fields' | 'variantIdsBySku'>;
|
|
11
13
|
export declare class ProductImporter {
|
|
12
14
|
private connection;
|
|
13
15
|
private configService;
|
|
@@ -28,9 +30,6 @@ export declare class ProductImporter {
|
|
|
28
30
|
private facetMap;
|
|
29
31
|
private facetValueMap;
|
|
30
32
|
private customFieldTypes;
|
|
31
|
-
/** `<owner>:<field>` keys of relation columns whose values are SKUs (header `...:sku`). */
|
|
32
|
-
private skuLookupFields;
|
|
33
|
-
private variantIdsBySku;
|
|
34
33
|
private allAssets;
|
|
35
34
|
private allAssetsById;
|
|
36
35
|
private facetIdCache;
|
|
@@ -39,13 +38,18 @@ export declare class ProductImporter {
|
|
|
39
38
|
constructor(connection: TransactionalConnection, configService: ConfigService, importParser: ImportParser, assetImporter: ExtendedAssetImporter, fastImporter: ExtendedFastImporterService, translatableSaver: TranslatableSaver, productService: ProductService, channelService: ChannelService, facetService: FacetService, facetValueService: FacetValueService, taxCategoryService: TaxCategoryService, assetService: AssetService, optionGroupService: ProductOptionGroupService, pluginOptions: PluginInitOptions, skuRelationResolver: SkuRelationResolver);
|
|
40
39
|
parseAndImport(input: string | Stream, ctx: RequestContext, updateProductSlug: boolean | undefined, mainLanguage: LanguageCode, updatingStrategy: UpdatingStrategy): Observable<ImportProgress>;
|
|
41
40
|
private extractProductIdsFromCSV;
|
|
41
|
+
/**
|
|
42
|
+
* The problems in the file's header row, checked the way the import job checks it. Empty when
|
|
43
|
+
* the job can read every column; the upload runs this so a wrong header never gets queued.
|
|
44
|
+
*/
|
|
45
|
+
validateHeader(csv: string): string[];
|
|
42
46
|
private preprocessCsv;
|
|
43
47
|
private streamToString;
|
|
44
48
|
getAllAssets(ctx: RequestContext): Promise<Asset[]>;
|
|
45
49
|
setMissingAssetHashes(ctx: RequestContext): Promise<void>;
|
|
46
50
|
private doParseAndImport;
|
|
47
51
|
private getRequestContext;
|
|
48
|
-
importProducts(ctx: RequestContext, rows: ParsedProductWithId[], updatingStrategy: UpdatingStrategy, onProgress: OnProgressFn): Promise<string[]>;
|
|
52
|
+
importProducts(ctx: RequestContext, rows: ParsedProductWithId[], updatingStrategy: UpdatingStrategy, onProgress: OnProgressFn, skuLookup?: SkuLookup): Promise<string[]>;
|
|
49
53
|
/**
|
|
50
54
|
* Normalizes CSV-style JSON (single quotes, spacing) before JSON.parse, consistent with other custom-field parsing in this importer.
|
|
51
55
|
*/
|
|
@@ -78,3 +82,4 @@ export declare class ProductImporter {
|
|
|
78
82
|
private resolveFeaturedAssetId;
|
|
79
83
|
getProductByIdWithRelations(ctx: RequestContext, id?: ID, withDeleted?: boolean): Promise<Product | undefined>;
|
|
80
84
|
}
|
|
85
|
+
export {};
|
|
@@ -31,6 +31,23 @@ const generate_asset_hash_1 = require("../../helpers/generate-asset-hash");
|
|
|
31
31
|
const crypto_1 = require("crypto");
|
|
32
32
|
const remove_update_at_fields_1 = require("../../helpers/remove-update-at-fields");
|
|
33
33
|
const sku_relation_resolver_1 = require("../../services/sku-relation-resolver");
|
|
34
|
+
const import_csv_lines_1 = require("../../helpers/import-csv-lines");
|
|
35
|
+
const NO_SKU_LOOKUP = { fields: new Set(), variantIdsBySku: new Map() };
|
|
36
|
+
/**
|
|
37
|
+
* Splits a typed custom field header (`product:field:type`, or with a fourth `:sku` segment that
|
|
38
|
+
* SkuRelationResolver reads) into the `<owner>:<field>` key the parser checks and the type.
|
|
39
|
+
*/
|
|
40
|
+
function splitTypedCustomFieldHeader(header) {
|
|
41
|
+
if (!header.startsWith('product:') && !header.startsWith('variant:')) {
|
|
42
|
+
return undefined;
|
|
43
|
+
}
|
|
44
|
+
const parts = header.split(':');
|
|
45
|
+
if (parts.length !== 3 && parts.length !== 4) {
|
|
46
|
+
return undefined;
|
|
47
|
+
}
|
|
48
|
+
const [prefix, fieldName, type] = parts;
|
|
49
|
+
return { fullFieldName: `${prefix}:${fieldName}`, type: type.trim() };
|
|
50
|
+
}
|
|
34
51
|
let ProductImporter = class ProductImporter {
|
|
35
52
|
connection;
|
|
36
53
|
configService;
|
|
@@ -51,9 +68,6 @@ let ProductImporter = class ProductImporter {
|
|
|
51
68
|
facetMap = new Map();
|
|
52
69
|
facetValueMap = new Map();
|
|
53
70
|
customFieldTypes = {};
|
|
54
|
-
/** `<owner>:<field>` keys of relation columns whose values are SKUs (header `...:sku`). */
|
|
55
|
-
skuLookupFields = new Set();
|
|
56
|
-
variantIdsBySku = new Map();
|
|
57
71
|
allAssets = [];
|
|
58
72
|
allAssetsById = new Map();
|
|
59
73
|
facetIdCache = new Map();
|
|
@@ -107,36 +121,26 @@ let ProductImporter = class ProductImporter {
|
|
|
107
121
|
});
|
|
108
122
|
return productIds;
|
|
109
123
|
}
|
|
124
|
+
/**
|
|
125
|
+
* The problems in the file's header row, checked the way the import job checks it. Empty when
|
|
126
|
+
* the job can read every column; the upload runs this so a wrong header never gets queued.
|
|
127
|
+
*/
|
|
128
|
+
validateHeader(csv) {
|
|
129
|
+
const headers = (0, import_csv_lines_1.importCsvHeaders)((0, import_csv_lines_1.importCsvLines)(csv)).map((header) => splitTypedCustomFieldHeader(header)?.fullFieldName ?? header);
|
|
130
|
+
return this.importParser.validateHeader(headers);
|
|
131
|
+
}
|
|
110
132
|
preprocessCsv(input, updateProductSlug) {
|
|
111
133
|
const customFieldTypes = {};
|
|
112
|
-
|
|
113
|
-
const
|
|
114
|
-
|
|
115
|
-
const filteredLines = lines.filter((line) => {
|
|
116
|
-
const trimmed = line.trim();
|
|
117
|
-
return trimmed !== '' && !/^,+$/.test(trimmed); // Keep lines that are not empty or comma-only
|
|
118
|
-
});
|
|
119
|
-
const splitLines = (text) => {
|
|
120
|
-
// Split text by commas, but not if comma is inside double quotes
|
|
121
|
-
const splittedText = text.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);
|
|
122
|
-
return splittedText;
|
|
123
|
-
};
|
|
124
|
-
const headers = splitLines(filteredLines[0]); // Use splitCsvLine to split headers correctly
|
|
134
|
+
// Without blank and comma-only lines, as SkuRelationResolver reads the file
|
|
135
|
+
const filteredLines = (0, import_csv_lines_1.importCsvLines)(input);
|
|
136
|
+
const headers = (0, import_csv_lines_1.splitCsvLine)(filteredLines[0]);
|
|
125
137
|
const cleanedHeaders = headers.map((rawHeader) => {
|
|
126
|
-
const
|
|
127
|
-
if (
|
|
128
|
-
|
|
129
|
-
if (parts.length === 3 || parts.length === 4) {
|
|
130
|
-
const [prefix, fieldName, type, lookup] = parts;
|
|
131
|
-
const fullFieldName = `${prefix}:${fieldName}`;
|
|
132
|
-
customFieldTypes[fullFieldName] = type.trim();
|
|
133
|
-
if (lookup?.trim() === sku_relation_resolver_1.SKU_LOOKUP) {
|
|
134
|
-
skuLookupFields.add(fullFieldName);
|
|
135
|
-
}
|
|
136
|
-
return fullFieldName;
|
|
137
|
-
}
|
|
138
|
+
const typed = splitTypedCustomFieldHeader((0, import_csv_lines_1.normalizeHeader)(rawHeader));
|
|
139
|
+
if (!typed) {
|
|
140
|
+
return rawHeader;
|
|
138
141
|
}
|
|
139
|
-
|
|
142
|
+
customFieldTypes[typed.fullFieldName] = typed.type;
|
|
143
|
+
return typed.fullFieldName;
|
|
140
144
|
});
|
|
141
145
|
// Recreate the CSV with cleaned headers
|
|
142
146
|
filteredLines[0] = cleanedHeaders.join(',');
|
|
@@ -149,7 +153,7 @@ let ProductImporter = class ProductImporter {
|
|
|
149
153
|
filteredLines.forEach((line, index) => {
|
|
150
154
|
if (index === 0)
|
|
151
155
|
return; // Skip header row
|
|
152
|
-
const columns =
|
|
156
|
+
const columns = (0, import_csv_lines_1.splitCsvLine)(line);
|
|
153
157
|
slugIndices.forEach((slugIndex) => {
|
|
154
158
|
columns[slugIndex] = ''; // Clear each slug column
|
|
155
159
|
});
|
|
@@ -160,7 +164,6 @@ let ProductImporter = class ProductImporter {
|
|
|
160
164
|
return {
|
|
161
165
|
cleanedCsv: filteredLines.join('\n'), // Join the filtered lines
|
|
162
166
|
customFieldTypes,
|
|
163
|
-
skuLookupFields,
|
|
164
167
|
};
|
|
165
168
|
}
|
|
166
169
|
async streamToString(stream) {
|
|
@@ -211,16 +214,15 @@ let ProductImporter = class ProductImporter {
|
|
|
211
214
|
// If input is a Stream, you need to read it fully into memory
|
|
212
215
|
csvContent = await this.streamToString(input);
|
|
213
216
|
}
|
|
214
|
-
// Checked again here, not only on upload: variants can change while the job waits.
|
|
217
|
+
// Checked again here, not only on upload: variants can change while the job waits. SKUs are
|
|
218
|
+
// resolved once, here: a variant deleted while the import runs is still linked to.
|
|
215
219
|
const skuRelations = await this.skuRelationResolver.resolve(ctx, csvContent);
|
|
216
220
|
if (skuRelations.errors.length > 0) {
|
|
217
221
|
return { errors: skuRelations.errors, imported: 0, processed: 0 };
|
|
218
222
|
}
|
|
219
|
-
this.variantIdsBySku = skuRelations.variantIdsBySku;
|
|
220
223
|
// Preprocess the CSV to extract types and clean headers
|
|
221
|
-
const { cleanedCsv, customFieldTypes
|
|
224
|
+
const { cleanedCsv, customFieldTypes } = this.preprocessCsv(csvContent, updateProductSlug);
|
|
222
225
|
this.customFieldTypes = customFieldTypes;
|
|
223
|
-
this.skuLookupFields = skuLookupFields;
|
|
224
226
|
const parsed = (await this.importParser.parseProducts(cleanedCsv, ctx.languageCode));
|
|
225
227
|
const productIds = this.extractProductIdsFromCSV(cleanedCsv);
|
|
226
228
|
parsed.results.forEach((result, index) => {
|
|
@@ -237,7 +239,7 @@ let ProductImporter = class ProductImporter {
|
|
|
237
239
|
...progess,
|
|
238
240
|
processed: parsed.processed,
|
|
239
241
|
});
|
|
240
|
-
});
|
|
242
|
+
}, skuRelations);
|
|
241
243
|
return {
|
|
242
244
|
errors: parsed.errors.concat(importErrors),
|
|
243
245
|
imported: parsed.results.length,
|
|
@@ -275,7 +277,7 @@ let ProductImporter = class ProductImporter {
|
|
|
275
277
|
throw new core_2.InternalServerError('No RequestContext provided');
|
|
276
278
|
}
|
|
277
279
|
}
|
|
278
|
-
async importProducts(ctx, rows, updatingStrategy, onProgress) {
|
|
280
|
+
async importProducts(ctx, rows, updatingStrategy, onProgress, skuLookup = NO_SKU_LOOKUP) {
|
|
279
281
|
let errors = [];
|
|
280
282
|
let imported = 0;
|
|
281
283
|
const languageCode = ctx.languageCode;
|
|
@@ -309,7 +311,7 @@ let ProductImporter = class ProductImporter {
|
|
|
309
311
|
if (createProductAssets.errors.length) {
|
|
310
312
|
errors = errors.concat(createProductAssets.errors);
|
|
311
313
|
}
|
|
312
|
-
const customFields = await this.processCustomFieldValues(product.translations[0].customFields, this.configService.customFields.Product, ctx);
|
|
314
|
+
const customFields = await this.processCustomFieldValues(product.translations[0].customFields, this.configService.customFields.Product, ctx, 'product', skuLookup);
|
|
313
315
|
let checkExistingProduct;
|
|
314
316
|
if (product.productId) {
|
|
315
317
|
checkExistingProduct = await this.productService.findOne(ctx, product.productId);
|
|
@@ -385,7 +387,7 @@ let ProductImporter = class ProductImporter {
|
|
|
385
387
|
? { description: translation.description }
|
|
386
388
|
: {}),
|
|
387
389
|
slug: existingTranslation?.slug || translation.slug,
|
|
388
|
-
customFields: await this.processCustomFieldValues(translation.customFields, this.configService.customFields.Product, ctx),
|
|
390
|
+
customFields: await this.processCustomFieldValues(translation.customFields, this.configService.customFields.Product, ctx, 'product', skuLookup),
|
|
389
391
|
};
|
|
390
392
|
})),
|
|
391
393
|
customFields,
|
|
@@ -514,7 +516,7 @@ let ProductImporter = class ProductImporter {
|
|
|
514
516
|
// if (0 < variant.facets.length) {
|
|
515
517
|
// facetValueIds = await this.getFacetValueIds(ctx, variant.facets, languageCode)
|
|
516
518
|
// }
|
|
517
|
-
const variantCustomFields = await this.processCustomFieldValues(variantMainTranslation.customFields, this.configService.customFields.ProductVariant, ctx);
|
|
519
|
+
const variantCustomFields = await this.processCustomFieldValues(variantMainTranslation.customFields, this.configService.customFields.ProductVariant, ctx, 'variant', skuLookup);
|
|
518
520
|
const optionIds = shouldUpdateOptions
|
|
519
521
|
? variantMainTranslation.optionValues.map((v, index) => optionsMap[`${index}_${v}`])
|
|
520
522
|
: undefined;
|
|
@@ -575,7 +577,7 @@ let ProductImporter = class ProductImporter {
|
|
|
575
577
|
return {
|
|
576
578
|
languageCode: translation.languageCode,
|
|
577
579
|
name: [productTranslation.name, ...translation.optionValues].join(' '),
|
|
578
|
-
customFields: await this.processCustomFieldValues(translation.customFields, this.configService.customFields.ProductVariant, ctx),
|
|
580
|
+
customFields: await this.processCustomFieldValues(translation.customFields, this.configService.customFields.ProductVariant, ctx, 'variant', skuLookup),
|
|
579
581
|
};
|
|
580
582
|
})),
|
|
581
583
|
price: (0, lodash_1.isUndefined)(variant.price) ? undefined : Math.round(variant.price * 100),
|
|
@@ -747,9 +749,9 @@ let ProductImporter = class ProductImporter {
|
|
|
747
749
|
return out;
|
|
748
750
|
}
|
|
749
751
|
/** Swaps SKUs for variant ids; `SkuRelationResolver` has already checked each SKU. */
|
|
750
|
-
variantIdsForSkus(value, list) {
|
|
752
|
+
variantIdsForSkus(variantIdsBySku, value, list) {
|
|
751
753
|
const idFor = (sku) => {
|
|
752
|
-
const id =
|
|
754
|
+
const id = variantIdsBySku.get(sku);
|
|
753
755
|
if (id === undefined) {
|
|
754
756
|
throw new core_2.InternalServerError(`No variant with SKU ${sku}`);
|
|
755
757
|
}
|
|
@@ -758,16 +760,12 @@ let ProductImporter = class ProductImporter {
|
|
|
758
760
|
if (!list) {
|
|
759
761
|
return idFor(value.trim());
|
|
760
762
|
}
|
|
761
|
-
return value
|
|
762
|
-
.split('|')
|
|
763
|
-
.map((sku) => sku.trim())
|
|
764
|
-
.filter((sku) => sku !== '')
|
|
765
|
-
.map(idFor);
|
|
763
|
+
return (0, sku_relation_resolver_1.splitSkuList)(value).map(idFor);
|
|
766
764
|
}
|
|
767
765
|
isValidRelationIdentifier(value) {
|
|
768
766
|
return /^[A-Za-z0-9_-]+$/.test(value);
|
|
769
767
|
}
|
|
770
|
-
async processCustomFieldValues(customFields, config, ctx) {
|
|
768
|
+
async processCustomFieldValues(customFields, config, ctx, owner, skuLookup = NO_SKU_LOOKUP) {
|
|
771
769
|
function parseBoolean(input) {
|
|
772
770
|
if (input == null) {
|
|
773
771
|
return false;
|
|
@@ -782,7 +780,6 @@ let ProductImporter = class ProductImporter {
|
|
|
782
780
|
}
|
|
783
781
|
}
|
|
784
782
|
const processed = {};
|
|
785
|
-
const owner = config === this.configService.customFields.Product ? 'product' : 'variant';
|
|
786
783
|
for (const fieldDef of config) {
|
|
787
784
|
let foundCustomFieldType = (0, lodash_1.find)(this.customFieldTypes, (_type, key) => key.split(':')[1] === fieldDef.name);
|
|
788
785
|
if (!foundCustomFieldType) {
|
|
@@ -904,8 +901,8 @@ let ProductImporter = class ProductImporter {
|
|
|
904
901
|
}
|
|
905
902
|
continue;
|
|
906
903
|
}
|
|
907
|
-
if (
|
|
908
|
-
const variantIds = this.variantIdsForSkus(value, fieldDef.list === true);
|
|
904
|
+
if (skuLookup.fields.has(`${owner}:${fieldDef.name}`)) {
|
|
905
|
+
const variantIds = this.variantIdsForSkus(skuLookup.variantIdsBySku, value, fieldDef.list === true);
|
|
909
906
|
if (relDef.nullable === false && Array.isArray(variantIds) && variantIds.length === 0) {
|
|
910
907
|
throw new core_2.InternalServerError(`Required relation custom field "${fieldDef.name}" is missing or empty`);
|
|
911
908
|
}
|
|
@@ -1053,16 +1050,17 @@ let ProductImporter = class ProductImporter {
|
|
|
1053
1050
|
},
|
|
1054
1051
|
},
|
|
1055
1052
|
});
|
|
1053
|
+
// The fast importer ignores `options` here; the loop below upserts each option.
|
|
1056
1054
|
const groupId = existingGroup
|
|
1057
1055
|
? await this.fastImporter.updateProductOptionGroup({
|
|
1058
1056
|
id: existingGroup.id,
|
|
1059
1057
|
code,
|
|
1060
|
-
options: [
|
|
1058
|
+
options: [],
|
|
1061
1059
|
translations: groupTranslations,
|
|
1062
1060
|
})
|
|
1063
1061
|
: await this.fastImporter.createProductOptionGroup({
|
|
1064
1062
|
code,
|
|
1065
|
-
options: [
|
|
1063
|
+
options: [],
|
|
1066
1064
|
translations: groupTranslations,
|
|
1067
1065
|
});
|
|
1068
1066
|
const optionIds = new Map();
|
|
@@ -1185,11 +1183,4 @@ exports.ProductImporter = ProductImporter = __decorate([
|
|
|
1185
1183
|
core_1.AssetService,
|
|
1186
1184
|
core_1.ProductOptionGroupService, Object, sku_relation_resolver_1.SkuRelationResolver])
|
|
1187
1185
|
], ProductImporter);
|
|
1188
|
-
/** A header cell as the CSV parser reads it: no byte order mark, no surrounding quotes or space. */
|
|
1189
|
-
function normalizeHeader(header) {
|
|
1190
|
-
return header
|
|
1191
|
-
.replace(/^\uFEFF/, '')
|
|
1192
|
-
.trim()
|
|
1193
|
-
.replace(/^"(.*)"$/, '$1');
|
|
1194
|
-
}
|
|
1195
1186
|
//# sourceMappingURL=product-importer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product-importer.js","sourceRoot":"","sources":["../../../../../../packages/product-import-export-plugin/src/providers/import-providers/product-importer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"product-importer.js","sourceRoot":"","sources":["../../../../../../packages/product-import-export-plugin/src/providers/import-providers/product-importer.ts"],"names":[],"mappings":"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"}
|
|
@@ -84,8 +84,14 @@ let ProductImportService = class ProductImportService {
|
|
|
84
84
|
});
|
|
85
85
|
}
|
|
86
86
|
async processFile(ctx, file, updateProductSlug, mainLanguage, updatingStrategy) {
|
|
87
|
-
// Checked before queueing so the uploader sees a wrong SKU at once, not
|
|
88
|
-
|
|
87
|
+
// Checked before queueing so the uploader sees a wrong header or SKU at once, not as a
|
|
88
|
+
// finished job that imported nothing.
|
|
89
|
+
const csv = file.buffer.toString('utf8');
|
|
90
|
+
const headerErrors = this.productImporter.validateHeader(csv);
|
|
91
|
+
if (headerErrors.length > 0) {
|
|
92
|
+
throw new ImportFileInvalidError(headerErrors);
|
|
93
|
+
}
|
|
94
|
+
const { errors } = await this.skuRelationResolver.resolve(ctx, csv);
|
|
89
95
|
if (errors.length > 0) {
|
|
90
96
|
throw new ImportFileInvalidError(errors);
|
|
91
97
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product-import.service.js","sourceRoot":"","sources":["../../../../../packages/product-import-export-plugin/src/services/product-import.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"product-import.service.js","sourceRoot":"","sources":["../../../../../packages/product-import-export-plugin/src/services/product-import.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,8 @@ export interface SkuRelationResult {
|
|
|
6
6
|
errors: string[];
|
|
7
7
|
/** The id of the single live variant behind each SKU the file references. */
|
|
8
8
|
variantIdsBySku: Map<string, ID>;
|
|
9
|
+
/** `<owner>:<field>` keys of the relation columns whose values are SKUs. */
|
|
10
|
+
fields: Set<string>;
|
|
9
11
|
}
|
|
10
12
|
/**
|
|
11
13
|
* Resolves relation custom field columns written as `<owner>:<field>:<type>:sku`, where each
|
|
@@ -17,11 +19,15 @@ export declare class SkuRelationResolver {
|
|
|
17
19
|
private configService;
|
|
18
20
|
constructor(connection: TransactionalConnection, configService: ConfigService);
|
|
19
21
|
resolve(ctx: RequestContext, csv: string): Promise<SkuRelationResult>;
|
|
20
|
-
private readHeaders;
|
|
21
22
|
private splitHeader;
|
|
22
23
|
private checkHeader;
|
|
23
24
|
private findFieldConfig;
|
|
24
|
-
/**
|
|
25
|
+
/**
|
|
26
|
+
* The SKUs each data row references, with the row's line as the importer numbers it: the
|
|
27
|
+
* header is line 1 and blank and comma-only lines are not counted.
|
|
28
|
+
*/
|
|
25
29
|
private readSkus;
|
|
26
30
|
private findLiveVariants;
|
|
27
31
|
}
|
|
32
|
+
/** The SKUs in a list relation cell, written `SKU|SKU`. */
|
|
33
|
+
export declare function splitSkuList(value: string): string[];
|
|
@@ -10,10 +10,12 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.SkuRelationResolver = exports.SKU_LOOKUP = void 0;
|
|
13
|
+
exports.splitSkuList = splitSkuList;
|
|
13
14
|
const common_1 = require("@nestjs/common");
|
|
14
15
|
const core_1 = require("@vendure/core");
|
|
15
16
|
const sync_1 = require("csv-parse/sync");
|
|
16
17
|
const typeorm_1 = require("typeorm");
|
|
18
|
+
const import_csv_lines_1 = require("../helpers/import-csv-lines");
|
|
17
19
|
/** The fourth header segment that makes a relation column hold SKUs instead of ids. */
|
|
18
20
|
exports.SKU_LOOKUP = 'sku';
|
|
19
21
|
/** SKUs per database query, well below every driver's bind parameter limit. */
|
|
@@ -32,33 +34,34 @@ let SkuRelationResolver = class SkuRelationResolver {
|
|
|
32
34
|
}
|
|
33
35
|
async resolve(ctx, csv) {
|
|
34
36
|
const variantIdsBySku = new Map();
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
// Not ours to report: without readable headers there are no SKU columns, and the
|
|
41
|
-
// importer's own parser tells the uploader what is wrong with the file.
|
|
42
|
-
return { errors: [], variantIdsBySku };
|
|
43
|
-
}
|
|
37
|
+
const fields = new Set();
|
|
38
|
+
// The importer reads the same lines and headers, so both agree on which columns hold SKUs
|
|
39
|
+
// and on row numbers.
|
|
40
|
+
const lines = (0, import_csv_lines_1.importCsvLines)(csv);
|
|
41
|
+
const headers = (0, import_csv_lines_1.importCsvHeaders)(lines);
|
|
44
42
|
const lookupHeaders = headers.filter((header) => this.splitHeader(header).length === 4);
|
|
45
43
|
if (lookupHeaders.length === 0) {
|
|
46
|
-
return { errors: [], variantIdsBySku };
|
|
44
|
+
return { errors: [], variantIdsBySku, fields };
|
|
47
45
|
}
|
|
48
46
|
const headerErrors = lookupHeaders.flatMap((header) => this.checkHeader(header));
|
|
49
47
|
if (headerErrors.length > 0) {
|
|
50
|
-
return { errors: headerErrors, variantIdsBySku };
|
|
48
|
+
return { errors: headerErrors, variantIdsBySku, fields };
|
|
51
49
|
}
|
|
52
|
-
const columns = lookupHeaders.map((header) =>
|
|
53
|
-
header
|
|
54
|
-
|
|
55
|
-
|
|
50
|
+
const columns = lookupHeaders.map((header) => {
|
|
51
|
+
const [owner, fieldName] = this.splitHeader(header);
|
|
52
|
+
fields.add(`${owner}:${fieldName}`);
|
|
53
|
+
return { index: headers.indexOf(header), list: this.findFieldConfig(header)?.list === true };
|
|
54
|
+
});
|
|
56
55
|
let rows;
|
|
57
56
|
try {
|
|
58
|
-
rows = this.readSkus(
|
|
57
|
+
rows = this.readSkus(lines, columns);
|
|
59
58
|
}
|
|
60
59
|
catch (error) {
|
|
61
|
-
return {
|
|
60
|
+
return {
|
|
61
|
+
errors: [`Could not read the file: ${error.message}`],
|
|
62
|
+
variantIdsBySku,
|
|
63
|
+
fields,
|
|
64
|
+
};
|
|
62
65
|
}
|
|
63
66
|
const matches = await this.findLiveVariants(ctx, uniqueSkus(rows));
|
|
64
67
|
const errors = [];
|
|
@@ -76,11 +79,7 @@ let SkuRelationResolver = class SkuRelationResolver {
|
|
|
76
79
|
}
|
|
77
80
|
}
|
|
78
81
|
}
|
|
79
|
-
return { errors, variantIdsBySku };
|
|
80
|
-
}
|
|
81
|
-
readHeaders(csv) {
|
|
82
|
-
const [headers] = (0, sync_1.parse)(csv, { bom: true, to_line: 1, relax_column_count: true });
|
|
83
|
-
return (headers ?? []).map((header) => header.trim());
|
|
82
|
+
return { errors, variantIdsBySku, fields };
|
|
84
83
|
}
|
|
85
84
|
splitHeader(header) {
|
|
86
85
|
if (!header.startsWith('product:') && !header.startsWith('variant:')) {
|
|
@@ -94,6 +93,11 @@ let SkuRelationResolver = class SkuRelationResolver {
|
|
|
94
93
|
return [`Column '${header}': only ':${exports.SKU_LOOKUP}' is supported as a lookup`];
|
|
95
94
|
}
|
|
96
95
|
const config = this.findFieldConfig(header);
|
|
96
|
+
if (!config) {
|
|
97
|
+
const [owner, fieldName] = this.splitHeader(header);
|
|
98
|
+
const entity = owner === 'product' ? 'Product' : 'ProductVariant';
|
|
99
|
+
return [`Column '${header}': ${entity} has no custom field named '${fieldName}'`];
|
|
100
|
+
}
|
|
97
101
|
const isVariantRelation = config?.type === 'relation' && config.entity === core_1.ProductVariant;
|
|
98
102
|
if (!isVariantRelation) {
|
|
99
103
|
return [
|
|
@@ -109,21 +113,21 @@ let SkuRelationResolver = class SkuRelationResolver {
|
|
|
109
113
|
: this.configService.customFields.ProductVariant;
|
|
110
114
|
return configs.find((config) => config.name === fieldName);
|
|
111
115
|
}
|
|
112
|
-
/**
|
|
113
|
-
|
|
114
|
-
|
|
116
|
+
/**
|
|
117
|
+
* The SKUs each data row references, with the row's line as the importer numbers it: the
|
|
118
|
+
* header is line 1 and blank and comma-only lines are not counted.
|
|
119
|
+
*/
|
|
120
|
+
readSkus(lines, columns) {
|
|
121
|
+
const [, ...records] = (0, sync_1.parse)(lines.join('\n'), {
|
|
115
122
|
bom: true,
|
|
116
|
-
columns: (headers) => headers.map((header) => header.trim()),
|
|
117
|
-
skip_empty_lines: true,
|
|
118
123
|
// As lenient as the importer's parser, so a file it imports is never rejected here.
|
|
119
124
|
relax_column_count: true,
|
|
120
125
|
relax_quotes: true,
|
|
121
|
-
info: true,
|
|
122
126
|
});
|
|
123
127
|
return records
|
|
124
|
-
.map((
|
|
125
|
-
line:
|
|
126
|
-
skus: columns.flatMap(({
|
|
128
|
+
.map((record, index) => ({
|
|
129
|
+
line: index + 2,
|
|
130
|
+
skus: columns.flatMap(({ index: column, list }) => splitSkus(record[column], list)),
|
|
127
131
|
}))
|
|
128
132
|
.filter((row) => row.skus.length > 0);
|
|
129
133
|
}
|
|
@@ -153,18 +157,19 @@ exports.SkuRelationResolver = SkuRelationResolver = __decorate([
|
|
|
153
157
|
__metadata("design:paramtypes", [core_1.TransactionalConnection,
|
|
154
158
|
core_1.ConfigService])
|
|
155
159
|
], SkuRelationResolver);
|
|
160
|
+
/** The SKUs in a list relation cell, written `SKU|SKU`. */
|
|
161
|
+
function splitSkuList(value) {
|
|
162
|
+
return value
|
|
163
|
+
.split('|')
|
|
164
|
+
.map((sku) => sku.trim())
|
|
165
|
+
.filter((sku) => sku !== '');
|
|
166
|
+
}
|
|
156
167
|
function splitSkus(value, list) {
|
|
157
168
|
const trimmed = value?.trim() ?? '';
|
|
158
169
|
if (trimmed === '') {
|
|
159
170
|
return [];
|
|
160
171
|
}
|
|
161
|
-
|
|
162
|
-
return [trimmed];
|
|
163
|
-
}
|
|
164
|
-
return trimmed
|
|
165
|
-
.split('|')
|
|
166
|
-
.map((sku) => sku.trim())
|
|
167
|
-
.filter((sku) => sku !== '');
|
|
172
|
+
return list ? splitSkuList(trimmed) : [trimmed];
|
|
168
173
|
}
|
|
169
174
|
function uniqueSkus(rows) {
|
|
170
175
|
return [...new Set(rows.flatMap((row) => row.skus))];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sku-relation-resolver.js","sourceRoot":"","sources":["../../../../../packages/product-import-export-plugin/src/services/sku-relation-resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"sku-relation-resolver.js","sourceRoot":"","sources":["../../../../../packages/product-import-export-plugin/src/services/sku-relation-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -104,6 +104,18 @@
|
|
|
104
104
|
{{ 'product-import.card.button-upload' | translate }}
|
|
105
105
|
</button>
|
|
106
106
|
</div>
|
|
107
|
+
|
|
108
|
+
<div
|
|
109
|
+
*ngIf="uploadErrors.length"
|
|
110
|
+
class="upload-errors"
|
|
111
|
+
role="alert"
|
|
112
|
+
style="margin-top: 16px; color: red"
|
|
113
|
+
>
|
|
114
|
+
<p>{{ 'product-import.notifications.upload-rejected-rows' | translate }}</p>
|
|
115
|
+
<ul>
|
|
116
|
+
<li *ngFor="let error of uploadErrors">{{ error }}</li>
|
|
117
|
+
</ul>
|
|
118
|
+
</div>
|
|
107
119
|
</div>
|
|
108
120
|
</vdr-card>
|
|
109
121
|
</vdr-page-block>
|
|
@@ -6,6 +6,7 @@ import { TranslateService } from '@ngx-translate/core'
|
|
|
6
6
|
import { endsWith, startsWith, size, uniq } from 'lodash'
|
|
7
7
|
import { AdminUiConfig } from '@vendure/common/lib/shared-types'
|
|
8
8
|
import { Channel, LanguageCode } from '@vendure/core'
|
|
9
|
+
import { readUploadErrors } from '../upload-errors'
|
|
9
10
|
|
|
10
11
|
type UpdatingStrategy = 'replace' | 'merge'
|
|
11
12
|
|
|
@@ -37,6 +38,7 @@ export class ProductImportComponent implements OnInit {
|
|
|
37
38
|
selectedMainLanguage: LanguageCode | undefined
|
|
38
39
|
availableLanguages: LanguageCode[] = []
|
|
39
40
|
updatingStrategy: UpdatingStrategy = 'merge'
|
|
41
|
+
uploadErrors: string[] = []
|
|
40
42
|
|
|
41
43
|
@ViewChild('fileUpload', { static: false }) fileUploadElement: ElementRef<HTMLInputElement>
|
|
42
44
|
|
|
@@ -99,6 +101,7 @@ export class ProductImportComponent implements OnInit {
|
|
|
99
101
|
const input = event.target as HTMLInputElement
|
|
100
102
|
if (input.files && input.files.length > 0) {
|
|
101
103
|
const file = input.files[0]
|
|
104
|
+
this.uploadErrors = []
|
|
102
105
|
if (file.type !== 'text/csv') {
|
|
103
106
|
this.notificationService.error(
|
|
104
107
|
this.translate.instant('product-import.notifications.invalid-file-type'),
|
|
@@ -435,15 +438,22 @@ export class ProductImportComponent implements OnInit {
|
|
|
435
438
|
})
|
|
436
439
|
|
|
437
440
|
if (res.ok) {
|
|
441
|
+
this.uploadErrors = []
|
|
438
442
|
this.clearFile()
|
|
439
443
|
this.notificationService.success(
|
|
440
444
|
this.translate.instant('product-import.notifications.upload-success'),
|
|
441
445
|
)
|
|
442
446
|
this.cd.detectChanges()
|
|
443
447
|
} else {
|
|
448
|
+
this.uploadErrors = await readUploadErrors(res)
|
|
444
449
|
this.notificationService.error(
|
|
445
|
-
this.translate.instant(
|
|
450
|
+
this.translate.instant(
|
|
451
|
+
this.uploadErrors.length
|
|
452
|
+
? 'product-import.notifications.upload-rejected-rows'
|
|
453
|
+
: 'product-import.notifications.upload-error',
|
|
454
|
+
),
|
|
446
455
|
)
|
|
456
|
+
this.cd.detectChanges()
|
|
447
457
|
}
|
|
448
458
|
} catch (error) {
|
|
449
459
|
this.notificationService.error(
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
"invalid-file-structure": "Invalid file structure. Please upload a correct CSV file.",
|
|
20
20
|
"upload-success": "The file was uploaded and has been added to the import queue.",
|
|
21
21
|
"upload-error": "An error occurred while uploading the file.",
|
|
22
|
+
"upload-rejected-rows": "The file was not imported. Fix these rows and upload it again:",
|
|
22
23
|
"no-file-selected": "No file selected.",
|
|
23
24
|
"mismatched-values": "Some fields are missing language specifications. Please fill in all languages: ",
|
|
24
25
|
"missing-base-columns": "Some columns are missing: ",
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
"invalid-file-structure": "Felaktig filstruktur. Vänligen ladda upp en korrekt CSV-fil.",
|
|
20
20
|
"upload-success": "Filen laddades upp och har lagts till i kön för import.",
|
|
21
21
|
"upload-error": "Ett fel uppstod vid uppladdning av filen.",
|
|
22
|
+
"upload-rejected-rows": "Filen importerades inte. Rätta de här raderna och ladda upp den igen:",
|
|
22
23
|
"no-file-selected": "Ingen fil vald.",
|
|
23
24
|
"mismatched-values": "Det saknas språkspecifikationer för vissa fält. Vänligen fyll i alla språk: ",
|
|
24
25
|
"missing-base-columns": "Vissa kolumner saknas: ",
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest'
|
|
2
|
+
import { readUploadErrors } from './upload-errors'
|
|
3
|
+
|
|
4
|
+
describe('readUploadErrors (Admin UI)', () => {
|
|
5
|
+
it('returns the errors of a 400 answer', async () => {
|
|
6
|
+
const res = new Response(JSON.stringify({ errors: ['Row 2: no variant with SKU X'] }), {
|
|
7
|
+
status: 400,
|
|
8
|
+
})
|
|
9
|
+
expect(await readUploadErrors(res)).toEqual(['Row 2: no variant with SKU X'])
|
|
10
|
+
})
|
|
11
|
+
|
|
12
|
+
it('returns none for other statuses or a body that is not the error shape', async () => {
|
|
13
|
+
expect(await readUploadErrors(new Response('boom', { status: 500 }))).toEqual([])
|
|
14
|
+
expect(await readUploadErrors(new Response('not json', { status: 400 }))).toEqual([])
|
|
15
|
+
expect(await readUploadErrors(new Response('{}', { status: 400 }))).toEqual([])
|
|
16
|
+
})
|
|
17
|
+
})
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// Mirrors src/dashboard/upload-errors.ts: the Angular extension compiles only the ui folder, so it cannot import from dashboard.
|
|
2
|
+
|
|
3
|
+
/** The `errors` a rejected upload answers with (HTTP 400, `{ errors: string[] }`), else none. */
|
|
4
|
+
export async function readUploadErrors(res: Response): Promise<string[]> {
|
|
5
|
+
if (res.status !== 400) {
|
|
6
|
+
return []
|
|
7
|
+
}
|
|
8
|
+
try {
|
|
9
|
+
const body = (await res.json()) as { errors?: unknown }
|
|
10
|
+
return Array.isArray(body.errors) ? body.errors.map(String) : []
|
|
11
|
+
} catch {
|
|
12
|
+
return []
|
|
13
|
+
}
|
|
14
|
+
}
|