@haus-tech/product-import-export-plugin 3.6.11 → 3.6.13
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.md +65 -8
- package/package.json +1 -1
- package/src/constants.d.ts +1 -0
- package/src/constants.js +2 -1
- package/src/constants.js.map +1 -1
- package/src/index.d.ts +1 -0
- package/src/index.js +1 -0
- package/src/index.js.map +1 -1
- package/src/product-import-export.plugin.d.ts +11 -1
- package/src/product-import-export.plugin.js +32 -2
- package/src/product-import-export.plugin.js.map +1 -1
- package/src/providers/import-providers/import-parser.d.ts +4 -0
- package/src/providers/import-providers/import-parser.js +16 -7
- package/src/providers/import-providers/import-parser.js.map +1 -1
- package/src/providers/import-providers/product-importer.d.ts +43 -10
- package/src/providers/import-providers/product-importer.js +109 -66
- package/src/providers/import-providers/product-importer.js.map +1 -1
- package/src/services/extended-fast-importer.service.d.ts +7 -0
- package/src/services/extended-fast-importer.service.js +40 -36
- package/src/services/extended-fast-importer.service.js.map +1 -1
- package/src/services/import-row-groups.d.ts +17 -0
- package/src/services/import-row-groups.js +69 -0
- package/src/services/import-row-groups.js.map +1 -0
- package/src/services/product-import.service.d.ts +1 -3
- package/src/services/product-import.service.js +10 -9
- package/src/services/product-import.service.js.map +1 -1
- package/src/services/relation-lookup-resolver.d.ts +57 -0
- package/src/services/relation-lookup-resolver.js +272 -0
- package/src/services/relation-lookup-resolver.js.map +1 -0
- package/src/strategies/import-row-validation-strategy.d.ts +71 -0
- package/src/strategies/import-row-validation-strategy.js +16 -0
- package/src/strategies/import-row-validation-strategy.js.map +1 -0
- package/src/types.d.ts +8 -0
- package/src/services/sku-relation-resolver.d.ts +0 -33
- package/src/services/sku-relation-resolver.js +0 -177
- package/src/services/sku-relation-resolver.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
## 3.6.13
|
|
2
|
+
|
|
3
|
+
### 🚀 Features
|
|
4
|
+
|
|
5
|
+
- **product-import-export-plugin:** link relations by any column and validate import rows ([#59](https://github.com/WeAreHausTech/haus-tech-vendure-plugins-public/pull/59))
|
|
6
|
+
|
|
7
|
+
## 3.6.12
|
|
8
|
+
|
|
9
|
+
### 🩹 Fixes
|
|
10
|
+
|
|
11
|
+
- **product-import-export-plugin:** write an imported variant and its prices in one transaction ([#55](https://github.com/WeAreHausTech/haus-tech-vendure-plugins-public/pull/55))
|
|
12
|
+
|
|
1
13
|
## 3.6.11
|
|
2
14
|
|
|
3
15
|
### 🩹 Fixes
|
package/README.md
CHANGED
|
@@ -72,6 +72,7 @@ export const config = {
|
|
|
72
72
|
| `storageStrategy` | `ImportJobStorageStrategy` | local disk | Strategy instance for queued import file storage and retrieval. |
|
|
73
73
|
| `storageStrategyFactory` | `(injector: Injector) => ImportJobStorageStrategy` | `undefined` | Factory for DI-aware strategy creation (recommended for S3/remote storage). |
|
|
74
74
|
| `importJobStorage` | `'local' \| 's3'` | `'local'` | Deprecated compatibility flag. Prefer `storageStrategy` / `storageStrategyFactory`. |
|
|
75
|
+
| `rowValidationStrategy` | `ImportRowValidationStrategy` | accepts all | Checks the rows of a file before anything is written. See [Row validation](#row-validation). |
|
|
75
76
|
|
|
76
77
|
Available import storage strategies:
|
|
77
78
|
|
|
@@ -98,6 +99,60 @@ The plugin supports configurable storage for exported files:
|
|
|
98
99
|
- **S3** – Stores export files in an S3-compatible bucket
|
|
99
100
|
- **Disk (default)** – Saves files locally on the server
|
|
100
101
|
|
|
102
|
+
### Row validation
|
|
103
|
+
|
|
104
|
+
`importOptions.rowValidationStrategy` lets you reject rows by your own rules. It runs on the parsed file twice:
|
|
105
|
+
|
|
106
|
+
1. At upload, before the file is stored. If it returns errors, the upload answers `400` with `{ "errors": [...] }` and nothing is queued.
|
|
107
|
+
2. When the import job starts, before anything is written, since data can change while the job waits. If it returns errors, the job fails with the same list and nothing is imported.
|
|
108
|
+
|
|
109
|
+
Each error is shown as `Row <line>: <message>`, in one list with the [relation lookup](#relations-by-sku-or-another-column) errors, ordered by row. Line 1 is the header; blank and comma-only lines are not counted. Numbers count CSV records, so a quoted cell that spans several lines is still one row.
|
|
110
|
+
|
|
111
|
+
A job that fails this way ends in the `FAILED` state with the list as its error, instead of `COMPLETED` with the errors in its result. The same holds when a relation lookup no longer matches when the job runs.
|
|
112
|
+
|
|
113
|
+
```typescript
|
|
114
|
+
import {
|
|
115
|
+
ImportRowError,
|
|
116
|
+
ImportRowGroup,
|
|
117
|
+
ImportRowValidationStrategy,
|
|
118
|
+
} from '@haus-tech/product-import-export-plugin'
|
|
119
|
+
import { Injector, RequestContext, TransactionalConnection } from '@vendure/core'
|
|
120
|
+
|
|
121
|
+
class NoLabelOnSampleStrategy implements ImportRowValidationStrategy {
|
|
122
|
+
private connection!: TransactionalConnection
|
|
123
|
+
|
|
124
|
+
init(injector: Injector) {
|
|
125
|
+
this.connection = injector.get(TransactionalConnection)
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
async validate(ctx: RequestContext, rows: ImportRowGroup[]): Promise<ImportRowError[]> {
|
|
129
|
+
return rows
|
|
130
|
+
.filter((row) => row.product.customFields.labelId !== undefined)
|
|
131
|
+
.filter((row) => row.variants.some(({ variant }) => variant.sku.startsWith('SAMPLE-')))
|
|
132
|
+
.map((row) => ({ line: row.line, message: 'a sample product cannot have a label' }))
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
ProductImportExportPlugin.init({
|
|
137
|
+
importOptions: { rowValidationStrategy: new NoLabelOnSampleStrategy() },
|
|
138
|
+
exportOptions: {},
|
|
139
|
+
})
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
Each `ImportRowGroup` is one product: its first row (`line`, `product`) and every variant row under it (`variants[].line`, `variants[].variant`).
|
|
143
|
+
|
|
144
|
+
- Relation custom fields are keyed by their Admin API input name (`labelId`, `labelsIds`) and hold id strings, also when the file names the related rows by a lookup column such as `:sku` or `:code`. An empty cell, and a value a lookup could not resolve, is left out.
|
|
145
|
+
- An `Asset` relation keeps its cell text under the field name, since assets are created only when the row is written. Other custom fields keep their cell text under the field name.
|
|
146
|
+
- `product.productId` is set when the product's first row has a product id in the first column, that is when the row updates an existing product by id. Without it, the importer matches existing products by variant SKU.
|
|
147
|
+
- `product.customFields` holds the custom fields of the product's first translation, which include every non-localised field; each entry of `product.translations` has its own.
|
|
148
|
+
- The groups are copies: changing them does not change what is imported.
|
|
149
|
+
|
|
150
|
+
`init(injector)` and `destroy()` are called when the application starts and stops. The default strategy accepts every row.
|
|
151
|
+
|
|
152
|
+
If `validate` throws, the upload answers `500` and nothing is queued, and a running job fails with the thrown error. Return errors instead to show them by row.
|
|
153
|
+
|
|
154
|
+
Lookup columns must be plain text columns of the related entity, so a translated field (for example a collection's `name`, which lives on its translation entity) cannot be one. The strategy does not run when a lookup header is wrong, since no row is read then.
|
|
155
|
+
|
|
101
156
|
### Custom export columns
|
|
102
157
|
|
|
103
158
|
Add columns to the exported CSV whose value is computed per variant row, for example a permalink built from the product slug and variant SKU.
|
|
@@ -164,19 +219,21 @@ export const config = {
|
|
|
164
219
|
- 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.
|
|
165
220
|
- 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.
|
|
166
221
|
|
|
167
|
-
#### Relations
|
|
222
|
+
#### Relations by SKU or another column
|
|
168
223
|
|
|
169
|
-
A relation custom field
|
|
224
|
+
A relation custom field can name the related row by one of its columns instead of by id. Add the column as a fourth segment to the header, after the type (the related entity's class name in lower case):
|
|
170
225
|
|
|
171
226
|
```csv
|
|
172
|
-
name,sku,price,variant:baseVariant:productvariant:sku
|
|
173
|
-
Club Tee,CLUB-TEE-M,299,BASE-TEE-M
|
|
227
|
+
name,sku,price,variant:baseVariant:productvariant:sku,product:label:productlabel:code
|
|
228
|
+
Club Tee,CLUB-TEE-M,299,BASE-TEE-M,ECO
|
|
174
229
|
```
|
|
175
230
|
|
|
176
|
-
-
|
|
177
|
-
-
|
|
178
|
-
- The
|
|
179
|
-
-
|
|
231
|
+
- The column must be a text column of the related entity (not a relation or custom field). Otherwise the upload answers `400` with `{ "errors": ["Invalid lookup column \"title\" on ProductLabel"] }`.
|
|
232
|
+
- Each value must match exactly one row of the related entity, in any channel. Rows with a `deletedAt` are skipped. Matching is exact, so case and spacing count. A list field takes `VALUE|VALUE`.
|
|
233
|
+
- The upload is checked before it is queued. If a value matches no row or more than one, the upload answers `400` with the rows, for example `Row 2: no ProductLabel with code ECO` or `Row 3: code ECO matches 2 ProductLabel rows`. `:sku` on a relation to `ProductVariant` keeps its own wording: `Row 2: no variant with SKU BASE-TEE-M` and `Row 3: SKU BASE-TEE-M matches 2 variants`. The Dashboard lists the rows and nothing is imported. The import job checks again when it runs; if a value no longer matches exactly one row, the job fails with the same list and nothing is imported.
|
|
234
|
+
- The related rows must exist before the upload, so import them in an earlier file.
|
|
235
|
+
- The third segment must be the related entity's class name (`productvariant`, `productlabel`; case does not matter), and a field takes one lookup column. Otherwise the upload answers `400` and names the column. `:sku` on a relation to `ProductVariant` accepts any third segment, as it always has.
|
|
236
|
+
- A lookup works only on relation custom fields. Columns without a fourth segment still take ids.
|
|
180
237
|
|
|
181
238
|
#### Sharing option groups
|
|
182
239
|
|
package/package.json
CHANGED
package/src/constants.d.ts
CHANGED
|
@@ -2,3 +2,4 @@ export declare const PRODUCT_IMPORT_EXPORT_PLUGIN_OPTIONS: unique symbol;
|
|
|
2
2
|
export declare const EXPORT_STORAGE_STRATEGY: unique symbol;
|
|
3
3
|
export declare const IMPORT_JOB_STORAGE_STRATEGY: unique symbol;
|
|
4
4
|
export declare const loggerCtx = "ProductImportExportPlugin";
|
|
5
|
+
export declare const IMPORT_ROW_VALIDATION_STRATEGY: unique symbol;
|
package/src/constants.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.loggerCtx = exports.IMPORT_JOB_STORAGE_STRATEGY = exports.EXPORT_STORAGE_STRATEGY = exports.PRODUCT_IMPORT_EXPORT_PLUGIN_OPTIONS = void 0;
|
|
3
|
+
exports.IMPORT_ROW_VALIDATION_STRATEGY = exports.loggerCtx = exports.IMPORT_JOB_STORAGE_STRATEGY = exports.EXPORT_STORAGE_STRATEGY = exports.PRODUCT_IMPORT_EXPORT_PLUGIN_OPTIONS = void 0;
|
|
4
4
|
exports.PRODUCT_IMPORT_EXPORT_PLUGIN_OPTIONS = Symbol('PRODUCT_IMPORT_EXPORT_PLUGIN_OPTIONS');
|
|
5
5
|
exports.EXPORT_STORAGE_STRATEGY = Symbol('EXPORT_STORAGE_STRATEGY');
|
|
6
6
|
exports.IMPORT_JOB_STORAGE_STRATEGY = Symbol('IMPORT_JOB_STORAGE_STRATEGY');
|
|
7
7
|
exports.loggerCtx = 'ProductImportExportPlugin';
|
|
8
|
+
exports.IMPORT_ROW_VALIDATION_STRATEGY = Symbol('IMPORT_ROW_VALIDATION_STRATEGY');
|
|
8
9
|
//# sourceMappingURL=constants.js.map
|
package/src/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../packages/product-import-export-plugin/src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,oCAAoC,GAAG,MAAM,CAAC,sCAAsC,CAAC,CAAA;AACrF,QAAA,uBAAuB,GAAG,MAAM,CAAC,yBAAyB,CAAC,CAAA;AAC3D,QAAA,2BAA2B,GAAG,MAAM,CAAC,6BAA6B,CAAC,CAAA;AACnE,QAAA,SAAS,GAAG,2BAA2B,CAAA"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../packages/product-import-export-plugin/src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,oCAAoC,GAAG,MAAM,CAAC,sCAAsC,CAAC,CAAA;AACrF,QAAA,uBAAuB,GAAG,MAAM,CAAC,yBAAyB,CAAC,CAAA;AAC3D,QAAA,2BAA2B,GAAG,MAAM,CAAC,6BAA6B,CAAC,CAAA;AACnE,QAAA,SAAS,GAAG,2BAA2B,CAAA;AACvC,QAAA,8BAA8B,GAAG,MAAM,CAAC,gCAAgC,CAAC,CAAA"}
|
package/src/index.d.ts
CHANGED
|
@@ -6,4 +6,5 @@ export * from './services/export-storage/s3-export-storage-strategy';
|
|
|
6
6
|
export * from './services/import-storage/import-job-storage-strategy';
|
|
7
7
|
export * from './services/import-storage/local-import-job-storage-strategy';
|
|
8
8
|
export * from './services/import-storage/s3-import-job-storage-strategy';
|
|
9
|
+
export * from './strategies/import-row-validation-strategy';
|
|
9
10
|
export type { S3ExportStorageConfig } from './services/export-storage.util';
|
package/src/index.js
CHANGED
|
@@ -21,4 +21,5 @@ __exportStar(require("./services/export-storage/s3-export-storage-strategy"), ex
|
|
|
21
21
|
__exportStar(require("./services/import-storage/import-job-storage-strategy"), exports);
|
|
22
22
|
__exportStar(require("./services/import-storage/local-import-job-storage-strategy"), exports);
|
|
23
23
|
__exportStar(require("./services/import-storage/s3-import-job-storage-strategy"), exports);
|
|
24
|
+
__exportStar(require("./strategies/import-row-validation-strategy"), exports);
|
|
24
25
|
//# sourceMappingURL=index.js.map
|
package/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/product-import-export-plugin/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iEAA8C;AAG9C,oFAAiE;AACjE,0FAAuE;AACvE,uFAAoE;AACpE,wFAAqE;AACrE,8FAA2E;AAC3E,2FAAwE"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/product-import-export-plugin/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iEAA8C;AAG9C,oFAAiE;AACjE,0FAAuE;AACvE,uFAAoE;AACpE,wFAAqE;AACrE,8FAA2E;AAC3E,2FAAwE;AACxE,8EAA2D"}
|
|
@@ -1,8 +1,18 @@
|
|
|
1
|
+
import { OnApplicationBootstrap, OnApplicationShutdown } from '@nestjs/common';
|
|
1
2
|
import { Type } from '@vendure/core';
|
|
2
3
|
import { AdminUiExtension } from '@vendure/ui-devkit/compiler';
|
|
4
|
+
import { ModuleRef } from '@nestjs/core';
|
|
3
5
|
import { PluginInitOptions } from './types';
|
|
4
|
-
|
|
6
|
+
import { ImportRowValidationStrategy } from './strategies/import-row-validation-strategy';
|
|
7
|
+
export declare class ProductImportExportPlugin implements OnApplicationBootstrap, OnApplicationShutdown {
|
|
8
|
+
private moduleRef;
|
|
9
|
+
private rowValidationStrategy;
|
|
5
10
|
static options: PluginInitOptions;
|
|
11
|
+
constructor(moduleRef: ModuleRef, rowValidationStrategy: ImportRowValidationStrategy);
|
|
12
|
+
/** @internal */
|
|
13
|
+
onApplicationBootstrap(): Promise<void>;
|
|
14
|
+
/** @internal */
|
|
15
|
+
onApplicationShutdown(): Promise<void>;
|
|
6
16
|
/**
|
|
7
17
|
* @description
|
|
8
18
|
* Initialise the plugin with the given import/export options, applying sensible
|
|
@@ -38,9 +38,16 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
38
38
|
return result;
|
|
39
39
|
};
|
|
40
40
|
})();
|
|
41
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
42
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
43
|
+
};
|
|
44
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
45
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
46
|
+
};
|
|
41
47
|
var ProductImportExportPlugin_1;
|
|
42
48
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
49
|
exports.ProductImportExportPlugin = void 0;
|
|
50
|
+
const common_1 = require("@nestjs/common");
|
|
44
51
|
const core_1 = require("@vendure/core");
|
|
45
52
|
const core_2 = require("@nestjs/core");
|
|
46
53
|
const path = __importStar(require("path"));
|
|
@@ -59,9 +66,10 @@ const product_import_service_1 = require("./services/product-import.service");
|
|
|
59
66
|
const extended_fast_importer_service_1 = require("./services/extended-fast-importer.service");
|
|
60
67
|
const product_export_service_1 = require("./services/product-export.service");
|
|
61
68
|
const product_export_queue_service_1 = require("./services/product-export-queue.service");
|
|
62
|
-
const
|
|
69
|
+
const relation_lookup_resolver_1 = require("./services/relation-lookup-resolver");
|
|
63
70
|
const local_export_storage_strategy_1 = require("./services/export-storage/local-export-storage-strategy");
|
|
64
71
|
const local_import_job_storage_strategy_1 = require("./services/import-storage/local-import-job-storage-strategy");
|
|
72
|
+
const import_row_validation_strategy_1 = require("./strategies/import-row-validation-strategy");
|
|
65
73
|
const RESERVED_EXPORT_COLUMN_NAMES = new Set([
|
|
66
74
|
'id', 'name', 'slug', 'description', 'assets', 'facets', 'optionGroups', 'optionValues',
|
|
67
75
|
'sku', 'price', 'taxCategory', 'stockOnHand', 'trackInventory', 'variantAssets',
|
|
@@ -87,7 +95,21 @@ function validateCustomExportColumns(columns) {
|
|
|
87
95
|
}
|
|
88
96
|
let ProductImportExportPlugin = class ProductImportExportPlugin {
|
|
89
97
|
static { ProductImportExportPlugin_1 = this; }
|
|
98
|
+
moduleRef;
|
|
99
|
+
rowValidationStrategy;
|
|
90
100
|
static options;
|
|
101
|
+
constructor(moduleRef, rowValidationStrategy) {
|
|
102
|
+
this.moduleRef = moduleRef;
|
|
103
|
+
this.rowValidationStrategy = rowValidationStrategy;
|
|
104
|
+
}
|
|
105
|
+
/** @internal */
|
|
106
|
+
async onApplicationBootstrap() {
|
|
107
|
+
await this.rowValidationStrategy.init?.(new core_1.Injector(this.moduleRef));
|
|
108
|
+
}
|
|
109
|
+
/** @internal */
|
|
110
|
+
async onApplicationShutdown() {
|
|
111
|
+
await this.rowValidationStrategy.destroy?.();
|
|
112
|
+
}
|
|
91
113
|
/**
|
|
92
114
|
* @description
|
|
93
115
|
* Initialise the plugin with the given import/export options, applying sensible
|
|
@@ -216,6 +238,11 @@ exports.ProductImportExportPlugin = ProductImportExportPlugin = ProductImportExp
|
|
|
216
238
|
},
|
|
217
239
|
inject: [core_2.ModuleRef],
|
|
218
240
|
},
|
|
241
|
+
{
|
|
242
|
+
provide: constants_1.IMPORT_ROW_VALIDATION_STRATEGY,
|
|
243
|
+
useFactory: () => ProductImportExportPlugin.options?.importOptions?.rowValidationStrategy ??
|
|
244
|
+
new import_row_validation_strategy_1.DefaultImportRowValidationStrategy(),
|
|
245
|
+
},
|
|
219
246
|
product_import_service_1.ProductImportService,
|
|
220
247
|
product_importer_1.ProductImporter,
|
|
221
248
|
extended_fast_importer_service_1.ExtendedFastImporterService,
|
|
@@ -223,7 +250,7 @@ exports.ProductImportExportPlugin = ProductImportExportPlugin = ProductImportExp
|
|
|
223
250
|
asset_importer_1.ExtendedAssetImporter,
|
|
224
251
|
product_export_service_1.ProductExportService,
|
|
225
252
|
product_export_queue_service_1.ProductExportQueueService,
|
|
226
|
-
|
|
253
|
+
relation_lookup_resolver_1.RelationLookupResolver,
|
|
227
254
|
],
|
|
228
255
|
controllers: [
|
|
229
256
|
product_import_controller_1.ProductImportController,
|
|
@@ -267,5 +294,8 @@ exports.ProductImportExportPlugin = ProductImportExportPlugin = ProductImportExp
|
|
|
267
294
|
*
|
|
268
295
|
* @category Plugin
|
|
269
296
|
*/
|
|
297
|
+
,
|
|
298
|
+
__param(1, (0, common_1.Inject)(constants_1.IMPORT_ROW_VALIDATION_STRATEGY)),
|
|
299
|
+
__metadata("design:paramtypes", [core_2.ModuleRef, Object])
|
|
270
300
|
], ProductImportExportPlugin);
|
|
271
301
|
//# sourceMappingURL=product-import-export.plugin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product-import-export.plugin.js","sourceRoot":"","sources":["../../../../packages/product-import-export-plugin/src/product-import-export.plugin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"product-import-export.plugin.js","sourceRoot":"","sources":["../../../../packages/product-import-export-plugin/src/product-import-export.plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,6 +46,8 @@ export interface ParsedAsset {
|
|
|
46
46
|
* @docsPage ImportParser
|
|
47
47
|
*/
|
|
48
48
|
export interface ParsedProductVariant {
|
|
49
|
+
/** The file line of the variant's row (the header is line 1, blank lines are not counted). */
|
|
50
|
+
line?: number;
|
|
49
51
|
sku: string;
|
|
50
52
|
price: number | undefined;
|
|
51
53
|
taxCategory?: string;
|
|
@@ -73,6 +75,8 @@ export interface ParsedProductVariant {
|
|
|
73
75
|
* @docsPage ImportParser
|
|
74
76
|
*/
|
|
75
77
|
export interface ParsedProduct {
|
|
78
|
+
/** The file line of the product's first row (the header is line 1, blank lines are not counted). */
|
|
79
|
+
line?: number;
|
|
76
80
|
assetPaths: string[];
|
|
77
81
|
assetsJson?: ParsedAsset[];
|
|
78
82
|
optionGroups: ParsedOptionGroup[];
|
|
@@ -71,14 +71,18 @@ let ImportParser = class ImportParser {
|
|
|
71
71
|
return new Promise((resolve, reject) => {
|
|
72
72
|
let errors = [];
|
|
73
73
|
if (typeof input === 'string') {
|
|
74
|
-
(0, csv_parse_1.parse)(input, options,
|
|
74
|
+
(0, csv_parse_1.parse)(input, options, (err, records) => {
|
|
75
75
|
if (err) {
|
|
76
76
|
errors = errors.concat(err);
|
|
77
77
|
}
|
|
78
78
|
if (records) {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
79
|
+
// A throw here must reject, or the caller (an upload request) waits forever.
|
|
80
|
+
this.processRawRecords(records, mainLanguage)
|
|
81
|
+
.then((parseResult) => {
|
|
82
|
+
errors = errors.concat(parseResult.errors);
|
|
83
|
+
resolve({ results: parseResult.results, errors, processed: parseResult.processed });
|
|
84
|
+
})
|
|
85
|
+
.catch(reject);
|
|
82
86
|
}
|
|
83
87
|
else {
|
|
84
88
|
resolve({ results: [], errors, processed: 0 });
|
|
@@ -159,8 +163,10 @@ let ImportParser = class ImportParser {
|
|
|
159
163
|
}
|
|
160
164
|
}
|
|
161
165
|
currentRow = {
|
|
162
|
-
product: await this.parseProductFromRecord(r, usedLanguages, mainLanguage),
|
|
163
|
-
variants: [
|
|
166
|
+
product: { line, ...(await this.parseProductFromRecord(r, usedLanguages, mainLanguage)) },
|
|
167
|
+
variants: [
|
|
168
|
+
{ line, ...(await this.parseVariantFromRecord(r, usedLanguages, mainLanguage)) },
|
|
169
|
+
],
|
|
164
170
|
};
|
|
165
171
|
currentRowRejected = false;
|
|
166
172
|
}
|
|
@@ -172,7 +178,10 @@ let ImportParser = class ImportParser {
|
|
|
172
178
|
`enter it on the product's first row (the row with a name) on line ${line}`);
|
|
173
179
|
currentRowRejected = true;
|
|
174
180
|
}
|
|
175
|
-
currentRow.variants.push(
|
|
181
|
+
currentRow.variants.push({
|
|
182
|
+
line,
|
|
183
|
+
...(await this.parseVariantFromRecord(r, usedLanguages, mainLanguage)),
|
|
184
|
+
});
|
|
176
185
|
}
|
|
177
186
|
}
|
|
178
187
|
const optionError = validateOptionValueCount(r, currentRow, mainLanguage);
|
|
@@ -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":";;;;;;;;;;;;AAAA,0CAA0C;AAC1C,2CAA2C;AAC3C,yEAA8E;AAC9E,uDAAmD;AACnD,wCAMsB;AACtB,wCAAmE;AAEnE,yCAAiC;AAEjC,mCAAmC;AAEnC,MAAM,uBAAuB,GAAG;IAC9B,MAAM;IACN,MAAM;IACN,aAAa;IACb,QAAQ;IACR,cAAc;IACd,cAAc;IACd,eAAe;CAChB,CAAA;AAED,MAAM,eAAe,GAAa;IAChC,MAAM;IACN,UAAU;IACV,iBAAiB;IACjB,YAAY;IACZ,YAAY;IACZ,kBAAkB;IAClB,kBAAkB;IAClB,KAAK;IACL,WAAW;IACX,iBAAiB;IACjB,mBAAmB;IACnB,mBAAmB;CACpB,CAAA;AAwHD;;;;;;;;GAQG;AAEI,IAAM,YAAY,GAAlB,MAAM,YAAY;IAGH;IAFpB,gBAAgB;IACR,YAAY,CAAc;IAClC,YAAoB,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;QAC9C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY,CAAA;IACnE,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa,CACjB,KAAsB,EACtB,eAA6B,IAAI,CAAC,aAAa,CAAC,mBAAmB;QAEnE,MAAM,OAAO,GAAY;YACvB,IAAI,EAAE,IAAI;YACV,kBAAkB,EAAE,IAAI;SACzB,CAAA;QACD,OAAO,IAAI,OAAO,CAAyC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC7E,IAAI,MAAM,GAAa,EAAE,CAAA;YAEzB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,IAAA,iBAAK,EAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAQ,EAAE,OAAmB,EAAE,EAAE;oBAC5D,IAAI,GAAG,EAAE,CAAC;wBACR,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;oBAC7B,CAAC;oBACD,IAAI,OAAO,EAAE,CAAC;wBACZ,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;wBACvE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;wBAC1C,OAAO,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,CAAA;oBACrF,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAA;oBAChD,CAAC;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,IAAA,iBAAK,EAAC,OAAO,CAAC,CAAA;gBAC7B,MAAM,OAAO,GAAe,EAAE,CAAA;gBAC9B,8CAA8C;gBAC9C,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAClB,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;oBACzB,IAAI,MAAM,CAAA;oBAEV,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;wBAChC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;oBACtB,CAAC;gBACH,CAAC,CAAC,CAAA;gBACF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;gBAC1B,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;oBAC1B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;oBACvE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;oBAC1C,OAAO,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,CAAA;gBACrF,CAAC,CAAC,CAAA;YACJ,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;;;OAKG;IACH,cAAc,CAAC,SAAmB;QAChC,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;QAC9D,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO,iBAAiB,CAAA;QAC1B,CAAC;QACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAA;QACnE,IAAI,gBAAgB,EAAE,CAAC;YACrB,OAAO,CAAC,gBAAgB,CAAC,CAAA;QAC3B,CAAC;QACD,MAAM,WAAW,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAA;QACtD,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACzC,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,OAAmB,EACnB,YAA0B;QAE1B,MAAM,OAAO,GAAgC,EAAE,CAAA;QAC/C,MAAM,MAAM,GAAa,EAAE,CAAA;QAC3B,IAAI,UAAiD,CAAA;QACrD,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;QAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC7B,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAA;QAC3F,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAA;QACnD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,EAAE,CAAA;QAC5D,CAAC;QACD,MAAM,aAAa,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAA;QAClD,IAAI,IAAI,GAAG,CAAC,CAAA;QACZ,4FAA4F;QAC5F,oFAAoF;QACpF,IAAI,kBAAkB,GAAG,KAAK,CAAA;QAC9B,KAAK,MAAM,MAAM,IAAI,IAAI,EAAE,CAAC;YAC1B,IAAI,EAAE,CAAA;YACN,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;YAC/D,IAAI,gBAAgB,EAAE,CAAC;gBACrB,MAAM,CAAC,IAAI,CAAC,gBAAgB,GAAG,YAAY,IAAI,EAAE,CAAC,CAAA;gBAClD,SAAQ;YACV,CAAC;YACD,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;YAC3C,IAAI,qBAAqB,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC;gBACnD,IAAI,UAAU,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACtC,MAAM,wBAAwB,GAAG,sCAAsC,CAAC,UAAU,CAAC,CAAA;oBACnF,IAAI,wBAAwB,EAAE,CAAC;wBAC7B,MAAM,CAAC,IAAI,CAAC,wBAAwB,GAAG,YAAY,IAAI,GAAG,CAAC,EAAE,CAAC,CAAA;oBAChE,CAAC;yBAAM,CAAC;wBACN,yBAAyB,CAAC,UAAU,CAAC,CAAA;wBACrC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;oBAC1B,CAAC;gBACH,CAAC;gBACD,UAAU,GAAG;oBACX,OAAO,EAAE,MAAM,IAAI,CAAC,sBAAsB,CAAC,CAAC,EAAE,aAAa,EAAE,YAAY,CAAC;oBAC1E,QAAQ,EAAE,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC,CAAC,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;iBAC9E,CAAA;gBACD,kBAAkB,GAAG,KAAK,CAAA;YAC5B,CAAC;iBAAM,CAAC;gBACN,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,aAAa,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAA;oBAChD,IAAI,aAAa,EAAE,CAAC;wBAClB,MAAM,CAAC,IAAI,CACT,WAAW,aAAa,0DAA0D;4BAChF,qEAAqE,IAAI,EAAE,CAC9E,CAAA;wBACD,kBAAkB,GAAG,IAAI,CAAA;oBAC3B,CAAC;oBACD,UAAU,CAAC,QAAQ,CAAC,IAAI,CACtB,MAAM,IAAI,CAAC,sBAAsB,CAAC,CAAC,EAAE,aAAa,EAAE,YAAY,CAAC,CAClE,CAAA;gBACH,CAAC;YACH,CAAC;YACD,MAAM,WAAW,GAAG,wBAAwB,CAAC,CAAC,EAAE,UAAU,EAAE,YAAY,CAAC,CAAA;YACzE,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,CAAC,IAAI,CAAC,WAAW,GAAG,YAAY,IAAI,EAAE,CAAC,CAAA;YAC/C,CAAC;QACH,CAAC;QACD,IAAI,UAAU,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACtC,MAAM,wBAAwB,GAAG,sCAAsC,CAAC,UAAU,CAAC,CAAA;YACnF,IAAI,wBAAwB,EAAE,CAAC;gBAC7B,MAAM,CAAC,IAAI,CAAC,wBAAwB,GAAG,YAAY,IAAI,EAAE,CAAC,CAAA;YAC5D,CAAC;iBAAM,CAAC;gBACN,yBAAyB,CAAC,UAAU,CAAC,CAAA;gBACrC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAC1B,CAAC;QACH,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,CAAA;IACtD,CAAC;IAED;;OAEG;IACK,iCAAiC,CACvC,MAA6B,EAC7B,aAAqB;QAErB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5C,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACnD,MAAM,OAAO,GACX,MAAM,KAAK,SAAS;YAClB,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO;YACzC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,cAAc,CAAA;QAEpD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;QAClD,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,KAAK,CAAC,IAAI,CAAA;QACnB,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAClC,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;YACpB,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAA;QACvC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;QAClD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC9B,MAAM,aAAa,GAAG,KAAkC,CAAA;YACxD,IAAI,MAAM,KAAK,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;gBACvD,OAAO,KAAK,CAAC,IAAI,CAAA;YACnB,CAAC;YACD,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,IAAI,MAAM,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;YAC1B,OAAO,KAAK,CAAC,IAAI,CAAA;QACnB,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IAEO,oBAAoB,CAAC,OAAiB;QAC5C,MAAM,MAAM,GAAa,EAAE,CAAA;QAC3B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAA;YAClC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAChC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,SAAQ;YACV,CAAC;YACD,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;gBACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,iCAAiC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;gBAC1E,IAAI,QAAQ,EAAE,CAAC;oBACb,SAAQ;gBACV,CAAC;YACH,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,yBAAyB,MAAM,EAAE,CAAC,CAAA;QAChD,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAEO,wBAAwB,CAC9B,MAA6B,EAC7B,CAA4B;QAE5B,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;aACrB,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE;YAChB,OAAO,GAAG,CAAC,OAAO,CAAC,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,CAAA;QACxC,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,iCAAiC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;YACrE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,MAAM,CAAA;YACf,CAAC;YACD,OAAO;gBACL,GAAG,MAAM;gBACT,CAAC,SAAS,CAAC,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK;aACjE,CAAA;QACH,CAAC,EAAE,EAAE,CAAC,CAAA;IACV,CAAC;IAEO,cAAc,CAAC,OAAe;QACpC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAChC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,uBAAuB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAClD,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,IAAI,kBAAuC,CAAA;YAC3C,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC3B,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,CAAA;YAC9D,CAAC;iBAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;gBAClC,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,cAAc,CAAA;YACrE,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,0BAAmB,CAAC,0BAA0B,OAAO,GAAG,CAAC,CAAA;YACrE,CAAC;YACD,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YACvF,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACvB,MAAM,IAAI,0BAAmB,CAC3B,yDAAyD,OAAO,GAAG,CACpE,CAAA;YACH,CAAC;YACD,OAAO,iBAAiB,CAAC,IAAI,KAAK,cAAc,CAAA;QAClD,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,EAAE,CAAC;YAC7E,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAA0B,CAAA;YAC/C,IAAI,IAAI,CAAC,iCAAiC,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;gBAC3D,OAAO,KAAK,CAAA;YACd,CAAC;QACH,CAAC;QACD,MAAM,IAAI,0BAAmB,CAAC,0BAA0B,OAAO,GAAG,CAAC,CAAA;IACrE,CAAC;IAEO,0BAA0B,CAAC,OAAiB;QAClD,MAAM,OAAO,GAAa,EAAE,CAAA;QAC5B,MAAM,aAAa,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAA;QAChD,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;QACtC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,cAAc,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;YAC7E,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC9B,2EAA2E;gBAC3E,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;oBACxD,OAAO,wFAAwF,OAAO,GAAG,CAAA;gBAC3G,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;oBACzF,OAAO,QAAQ,OAAO,8BAA8B,CAAA;gBACtD,CAAC;gBACD,qDAAqD;gBACrD,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;oBAC3C,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;wBACrC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;oBAC7B,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,OAAO,0DAA0D,OAAO;iBACrE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;iBACpB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAA;QACjB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAClC,CAA4B,EAC5B,aAA6B,EAC7B,YAA0B;QAE1B,MAAM,gBAAgB,GAAG,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,aAAa,CAAA;QAEpF,MAAM,YAAY,GAAwB,EAAE,CAAA;QAC5C,IAAI,oBAAoB,GAAG,KAAK,CAAA;QAChC,KAAK,MAAM,YAAY,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,qBAAqB,GAAG,CAAC,CAAC,cAAc,CAAC,gBAAgB,YAAY,EAAE,CAAC;gBAC5E,CAAC,CAAC,CAAC,CAAC,gBAAgB,YAAY,EAAE,CAAC;gBACnC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAA;YAElB,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC3B,SAAQ;YACV,CAAC;YACD,oBAAoB,GAAG,IAAI,CAAA;YAC3B,MAAM,sBAAsB,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,CAAA;YACtE,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,KAAK,MAAM,qBAAqB,IAAI,sBAAsB,EAAE,CAAC;oBAC3D,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;oBACnD,MAAM,IAAI,GACR,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;oBAClF,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAA;gBAC/C,CAAC;YACH,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChE,MAAM,IAAI,GAAG,sBAAsB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;gBAC3D,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC;oBAChC,YAAY;oBACZ,IAAI;oBACJ,MAAM,EAAE,EAAE;iBACX,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAkB,EAAE,CAAA;QAChC,KAAK,MAAM,YAAY,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,mBAAmB,GAAG,CAAC,CAAC,cAAc,CAAC,UAAU,YAAY,EAAE,CAAC;gBACpE,CAAC,CAAC,CAAC,CAAC,UAAU,YAAY,EAAE,CAAC;gBAC7B,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;YAEZ,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBACzB,SAAQ;YACV,CAAC;YAED,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,CAAA;YAC9D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,KAAK,MAAM,eAAe,IAAI,gBAAgB,EAAE,CAAC;oBAC/C,MAAM,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAA;gBACnC,CAAC;YACH,CAAC;YAED,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpD,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBACrD,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC;oBAC1B,YAAY;oBACZ,KAAK;oBACL,KAAK;iBACN,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE;YAC/D,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,CAAC,EAAE,YAAY,CAAC,CAAA;YAChE,MAAM,4BAA4B,GAAG,IAAI,CAAC,wBAAwB,CAChE,SAAS,EACT,gBAAgB,CACjB,CAAA;YACD,MAAM,8BAA8B,GAAG,IAAI,CAAC,wBAAwB,CAClE,SAAS,EACT,wBAAwB,CAAC,CAAC,CAAC,CAC5B,CAAA;YACD,MAAM,kBAAkB,GAAG;gBACzB,GAAG,8BAA8B;gBACjC,GAAG,4BAA4B;aAChC,CAAA;YACD,MAAM,IAAI,GAAG,gBAAgB,CAAC,cAAc,CAAC,MAAM,CAAC;gBAClD,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC;gBACpC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YACV,IAAI,IAAY,CAAA;YAChB,IAAI,gBAAgB,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5C,IAAI,GAAG,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;YAC3C,CAAC;iBAAM,CAAC;gBACN,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YAC5B,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtB,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CACrC,IAAI,qBAAc,CAAC;oBACjB,OAAO,EAAE,OAAO;oBAChB,YAAY,EAAE,IAAI;oBAClB,qBAAqB,EAAE,KAAK;oBAC5B,OAAO,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAa;oBAC7C,YAAY,EAAE,YAAY;iBAC3B,CAAC,EACF,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,CAC1D,CAAA;YACH,CAAC;YACD,MAAM,oBAAoB,GACxB,gBAAgB,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAA;YAEnF,OAAO;gBACL,YAAY;gBACZ,IAAI;gBACJ,IAAI;gBACJ,WAAW,EAAE,oBAAoB;oBAC/B,CAAC,CAAC,gBAAgB,CAAC,cAAc,CAAC,aAAa,CAAC;wBAC9C,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC,WAAW,CAAC;wBAC3C,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;oBAC9B,CAAC,CAAC,SAAS;gBACb,YAAY,EAAE,kBAAkB;aACjC,CAAA;QACH,CAAC,CAAC,CAAA;QACF,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;QAE9C,MAAM,aAAa,GAAkB;YACnC,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC;YAC7F,UAAU,EAAE,UAAU;YACtB,YAAY;YACZ,oBAAoB;YACpB,MAAM;YACN,YAAY,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;SAC9C,CAAA;QACD,OAAO,aAAa,CAAA;IACtB,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAClC,CAA4B,EAC5B,aAA6B,EAC7B,YAA0B;QAE1B,MAAM,gBAAgB,GAAG,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,aAAa,CAAA;QACpF,MAAM,oBAAoB,GACxB,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,gBAAgB,YAAY,EAAE,CAAC,CAAA;QAEtF,MAAM,MAAM,GAAkB,EAAE,CAAA;QAChC,KAAK,MAAM,YAAY,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,mBAAmB,GAAG,CAAC,CAAC,cAAc,CAAC,iBAAiB,YAAY,EAAE,CAAC;gBAC3E,CAAC,CAAC,CAAC,CAAC,iBAAiB,YAAY,EAAE,CAAC;gBACpC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAA;YAEnB,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBACzB,SAAQ;YACV,CAAC;YACD,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,CAAA;YAC9D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,KAAK,MAAM,eAAe,IAAI,gBAAgB,EAAE,CAAC;oBAC/C,MAAM,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAA;gBACnC,CAAC;YACH,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpD,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBACrD,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC;oBAC1B,YAAY;oBACZ,KAAK;oBACL,KAAK;iBACN,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE;YACzD,MAAM,qBAAqB,GAAG,CAAC,CAAC,cAAc,CAAC,gBAAgB,YAAY,EAAE,CAAC;gBAC5E,CAAC,CAAC,CAAC,CAAC,gBAAgB,YAAY,EAAE,CAAC;gBACnC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAA;YAClB,MAAM,sBAAsB,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,CAAA;YACtE,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,CAAC,EAAE,YAAY,CAAC,CAAA;YAChE,MAAM,4BAA4B,GAAG,IAAI,CAAC,wBAAwB,CAChE,SAAS,EACT,gBAAgB,CACjB,CAAA;YACD,MAAM,8BAA8B,GAAG,IAAI,CAAC,wBAAwB,CAClE,SAAS,EACT,wBAAwB,CAAC,CAAC,CAAC,CAC5B,CAAA;YACD,MAAM,kBAAkB,GAAG;gBACzB,GAAG,8BAA8B;gBACjC,GAAG,4BAA4B;aAChC,CAAA;YACD,OAAO;gBACL,YAAY;gBACZ,YAAY,EAAE,sBAAsB;gBACpC,YAAY,EAAE,kBAAkB;aACjC,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAA;QACrD,MAAM,gBAAgB,GAAG,CAAC,CAAC,OAAO,IAAI,IAAI,CAAA;QAC1C,MAAM,gBAAgB,GAAG,gBAAgB;YACvC,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE;gBAChB,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC;YAC3B,CAAC,CAAC,SAAS,CAAA;QACb,MAAM,aAAa,GAAyB;YAC1C,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC;YACvB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;YACjD,WAAW,EAAE,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;YACrF,WAAW,EAAE,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;YACrF,OAAO,EAAE,gBAAgB;YACzB,cAAc,EACZ,CAAC,CAAC,cAAc,IAAI,IAAI;gBACtB,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,CAAC,CAAC,cAAc,KAAK,EAAE;oBACvB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC;wBAC9B,CAAC,CAAC,4BAAU,CAAC,IAAI;wBACjB,CAAC,CAAC,4BAAU,CAAC,KAAK;YAC1B,UAAU,EAAE,UAAU,CAAC,MAAM;gBAC3B,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC;gBAClC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa,CAAC;YACrC,UAAU,EAAE,UAAU;YACtB,MAAM;YACN,oBAAoB;YACpB,YAAY;SACb,CAAA;QACD,OAAO,aAAa,CAAA;IACtB,CAAC;CACF,CAAA;AAhgBY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,mBAAU,GAAE;qCAIwB,oBAAa;GAHrC,YAAY,CAggBxB;AAED,SAAS,yBAAyB,CAAC,UAAqC;IACtE,KAAK,MAAM,WAAW,IAAI,UAAU,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAC1D,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACjD,MAAM,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAClD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,WAAW,CAAC,YAAY,CACnD,CAAA;YACD,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACxB,MAAM,IAAI,0BAAmB,CAC3B,mBAAmB,WAAW,CAAC,YAAY,sBAAsB,OAAO,CAAC,GAAG,GAAG,CAChF,CAAA;YACH,CAAC;YACD,OAAO,kBAAkB,CAAC,YAAY,CAAA;QACxC,CAAC,CAAC,CAAA;QACF,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;YAChD,MAAM,aAAa,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,WAAW,CAAC,YAAY,CAAC,CAAA;YAC9F,IAAI,aAAa,EAAE,CAAC;gBAClB,aAAa,CAAC,MAAM,GAAG,IAAA,eAAM,EAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YACxD,CAAC;iBAAM,CAAC;gBACN,iCAAiC;gBACjC,uEAAuE;gBACvE,IAAI;YACN,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,MAAc;IACrC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC/B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,8BAAY,EAAE,CAAC;YAC7B,OAAO,KAAK,CAAC,CAAC,CAAiB,CAAA;QACjC,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,8BAAY,EAAE,CAAC;YACjF,OAAO,KAAK,CAAC,CAAC,CAAiB,CAAA;QACjC,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,MAAc;IAChC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC/B,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,GAAG,EAAE,CAAA;QACX,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACxB,CAAC;SAAM,CAAC;QACN,OAAO,MAAM,CAAA;IACf,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAiB;IAC1C,MAAM,aAAa,GAAmB,EAAE,CAAA;IACxC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAA;QAC5C,IAAI,YAAY,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAC1D,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAClC,CAAC;IACH,CAAC;IACD,OAAO,aAAa,CAAA;AACtB,CAAC;AAED,SAAS,YAAY,CAAC,OAAiB;IACrC,MAAM,QAAQ,GAAa,EAAE,CAAA;IAC7B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAA;QAClC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAChC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACxB,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,uBAAuB,CAAC,CAAW;IAC1C,MAAM,OAAO,GAAG,CAAC,CAAA;IACjB,MAAM,OAAO,GAAa,EAAE,CAAA;IAC5B,MAAM,aAAa,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAA;IAChD,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,GAAG,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC/E,SAAQ,CAAC,mGAAmG;YAC9G,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,qDAAqD,OAAO;aAChE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;aACpB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAA;IACjB,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAiB,EAAE,GAAa;IAC3D,IAAI,OAAO,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC;QAClC,OAAO,2CAA2C,OAAO,CAAC,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,CAAA;IACvF,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,OAAiB,EAAE,GAAa;IACtD,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;QAChC,OAAO,EAAE,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAA;IACtC,CAAC,EAAE,EAAE,CAAC,CAAA;AACR,CAAC;AAED,iGAAiG;AACjG,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAA;AAEpG;;;GAGG;AACH,SAAS,uBAAuB,CAAC,CAA4B;IAC3D,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;QACjC,MAAM,eAAe,GAAG,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5F,OAAO,eAAe,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAA;IAChD,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,CAA4B,EAC5B,UAAsC,EACtC,YAA2B;IAE3B,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAM;IACR,CAAC;IAED,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAA;IACtF,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QAClC,MAAM,YAAY,GAAG,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QAC7C,MAAM,+BAA+B,GACnC,GAAG,KAAK,cAAc,IAAI,GAAG,KAAK,gBAAgB,YAAY,EAAE,CAAA;QAClE,IACE,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM;YAC9D,+BAA+B,EAC/B,CAAC;YACD,OAAO,yCAAyC,GAAG,yCAAyC,CAAA;QAC9F,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,sCAAsC,CAC7C,GAA8B;IAE9B,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QAC7B,OAAM;IACR,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,oBAAoB,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/E,OAAO,2FAA2F,CAAA;IACpG,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAClE,OAAO,2FAA2F,CAAA;IACpG,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAC5B,CAA4B,EAC5B,KAAa,EACb,YAA0B;IAE1B,IAAI,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,CAAC,KAAK,CAAC,CAAA;IACjB,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,CAAC,GAAG,KAAK,IAAI,YAAY,EAAE,CAAC,CAAA;IACtC,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,CAA4B,EAC5B,YAA0B;IAE1B,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;SACrB,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;SAC1D,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAC/B,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,YAAY,EAAE,EAAE,EAAE,CAAC,CAAA;QACrD,OAAO;YACL,GAAG,MAAM;YACT,CAAC,SAAS,CAAC,EAAE,KAAK;SACnB,CAAA;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;AACV,CAAC;AAED,SAAS,wBAAwB,CAAC,CAA4B;IAC5D,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;SACrB,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACvB,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;IAC9B,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAC/B,OAAO;YACL,GAAG,MAAM;YACT,CAAC,GAAG,CAAC,EAAE,KAAK;SACb,CAAA;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;AACV,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa;IACrC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAChC,OAAO,MAAM,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;IAC9C,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;AAC7B,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;AAC9B,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,OAAO,KAAK,CAAA;IACd,CAAC;IACD,QAAQ,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;QAC5B,KAAK,MAAM,CAAC;QACZ,KAAK,GAAG,CAAC;QACT,KAAK,KAAK;YACR,OAAO,IAAI,CAAA;QACb;YACE,OAAO,KAAK,CAAA;IAChB,CAAC;AACH,CAAC;AAED,sFAAsF;AACtF,SAAS,uBAAuB,CAAC,OAAe;IAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IAC9B,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACrC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACvD,OAAO;YACL,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,EAAE;YAC3C,IAAI,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;SACjD,CAAA;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;AAC3C,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc,EAAE,SAAS,GAAG,GAAG;IACvD,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;SACjB,IAAI,EAAE;SACN,KAAK,CAAC,SAAS,CAAC;SAChB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;AAC5B,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa;IACtC,IAAI,CAAC;QACH,IAAI,IAAA,mBAAU,EAAC,KAAK,EAAE,GAAG,CAAC,IAAI,IAAA,mBAAU,EAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;YACrD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CACvB,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CACvE,CAAA;gBACD,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;YAClD,CAAC;iBAAM,CAAC;gBACN,OAAO,KAAK,CAAA;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC"}
|
|
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,15 +1,30 @@
|
|
|
1
|
-
import { ConfigService, ChannelService, FacetService, FacetValueService, TaxCategoryService, ID, ImportProgress, LanguageCode, OnProgressFn, ParsedFacet, ProductService, TransactionalConnection, TranslatableSaver, AssetService, ProductOptionGroupService } from '@vendure/core';
|
|
1
|
+
import { ConfigService, ChannelService, FacetService, FacetValueService, TaxCategoryService, ID, ImportProgress, LanguageCode, OnProgressFn, ParsedFacet, ProductService, TransactionalConnection, TranslatableSaver, ParseResult, AssetService, ProductOptionGroupService } from '@vendure/core';
|
|
2
2
|
import { RequestContext, Product, Asset } from '@vendure/core';
|
|
3
3
|
import { Stream } from 'stream';
|
|
4
4
|
import { Observable } from 'rxjs';
|
|
5
|
+
import { ImportInfo } from '@vendure/common/lib/generated-types';
|
|
5
6
|
import { ExtendedFastImporterService } from '../../services/extended-fast-importer.service';
|
|
6
7
|
import { ParsedProductWithId, UpdatingStrategy } from '../../types';
|
|
7
8
|
import { PluginInitOptions } from '../../types';
|
|
8
9
|
import { ImportParser } from './import-parser';
|
|
9
10
|
import { ExtendedAssetImporter } from './asset-importer';
|
|
10
|
-
import {
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
import { RelationLookupResolver, RelationLookupResult } from '../../services/relation-lookup-resolver';
|
|
12
|
+
import { ImportRowValidationStrategy } from '../../strategies/import-row-validation-strategy';
|
|
13
|
+
/** The relation columns of one import whose values are not ids, and the id behind each value. */
|
|
14
|
+
type RelationLookups = Pick<RelationLookupResult, 'fields' | 'idsByLookup'>;
|
|
15
|
+
/** The outcome of an import. `rejected` is set when the file was checked and nothing was written. */
|
|
16
|
+
export type ImportResult = ImportInfo & {
|
|
17
|
+
rejected?: boolean;
|
|
18
|
+
};
|
|
19
|
+
/** What the checks before any write find in an import file. */
|
|
20
|
+
export interface CheckedImportFile {
|
|
21
|
+
/** Lookup and row validation errors, ordered by row. Any error stops the whole import. */
|
|
22
|
+
errors: string[];
|
|
23
|
+
relationLookups: RelationLookups;
|
|
24
|
+
/** The parsed file; missing when a lookup header was wrong, so no row was read. */
|
|
25
|
+
parsed?: ParseResult<ParsedProductWithId>;
|
|
26
|
+
customFieldTypes: Record<string, string>;
|
|
27
|
+
}
|
|
13
28
|
export declare class ProductImporter {
|
|
14
29
|
private connection;
|
|
15
30
|
private configService;
|
|
@@ -25,7 +40,8 @@ export declare class ProductImporter {
|
|
|
25
40
|
private assetService;
|
|
26
41
|
private optionGroupService;
|
|
27
42
|
private pluginOptions;
|
|
28
|
-
private
|
|
43
|
+
private relationLookupResolver;
|
|
44
|
+
private rowValidationStrategy;
|
|
29
45
|
private taxCategoryMatches;
|
|
30
46
|
private facetMap;
|
|
31
47
|
private facetValueMap;
|
|
@@ -35,21 +51,38 @@ export declare class ProductImporter {
|
|
|
35
51
|
private facetIdCache;
|
|
36
52
|
private facetValueIdCache;
|
|
37
53
|
private slugStrategy;
|
|
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,
|
|
39
|
-
parseAndImport(input: string | Stream, ctx: RequestContext, updateProductSlug: boolean | undefined, mainLanguage: LanguageCode, updatingStrategy: UpdatingStrategy): Observable<ImportProgress
|
|
54
|
+
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, relationLookupResolver: RelationLookupResolver, rowValidationStrategy: ImportRowValidationStrategy);
|
|
55
|
+
parseAndImport(input: string | Stream, ctx: RequestContext, updateProductSlug: boolean | undefined, mainLanguage: LanguageCode, updatingStrategy: UpdatingStrategy): Observable<ImportProgress & {
|
|
56
|
+
rejected?: boolean;
|
|
57
|
+
}>;
|
|
58
|
+
/**
|
|
59
|
+
* Column 0 of every data record as a product id, null when empty or not a number. Index 0 is
|
|
60
|
+
* line 2, counted in records as the parser counts them, so a quoted cell that spans several
|
|
61
|
+
* physical lines does not shift the ids.
|
|
62
|
+
*/
|
|
40
63
|
private extractProductIdsFromCSV;
|
|
41
64
|
/**
|
|
42
65
|
* The problems in the file's header row, checked the way the import job checks it. Empty when
|
|
43
66
|
* the job can read every column; the upload runs this so a wrong header never gets queued.
|
|
44
67
|
*/
|
|
45
68
|
validateHeader(csv: string): string[];
|
|
69
|
+
/**
|
|
70
|
+
* Everything that is checked before an import writes anything: relation lookups, then the parsed
|
|
71
|
+
* rows through the row validation strategy. The upload runs this before the file is stored, and
|
|
72
|
+
* the import job runs it again before its first write, since data can change while the job waits.
|
|
73
|
+
* With the default strategy the file is parsed only when `parse` asks for it (the job does), so
|
|
74
|
+
* an upload without a strategy costs no more than the lookups.
|
|
75
|
+
*/
|
|
76
|
+
checkFile(ctx: RequestContext, csv: string, mainLanguage: LanguageCode, updateProductSlug: boolean, { parse }?: {
|
|
77
|
+
parse?: boolean;
|
|
78
|
+
}): Promise<CheckedImportFile>;
|
|
46
79
|
private preprocessCsv;
|
|
47
80
|
private streamToString;
|
|
48
81
|
getAllAssets(ctx: RequestContext): Promise<Asset[]>;
|
|
49
82
|
setMissingAssetHashes(ctx: RequestContext): Promise<void>;
|
|
50
83
|
private doParseAndImport;
|
|
51
84
|
private getRequestContext;
|
|
52
|
-
importProducts(ctx: RequestContext, rows: ParsedProductWithId[], updatingStrategy: UpdatingStrategy, onProgress: OnProgressFn,
|
|
85
|
+
importProducts(ctx: RequestContext, rows: ParsedProductWithId[], updatingStrategy: UpdatingStrategy, onProgress: OnProgressFn, relationLookups?: RelationLookups): Promise<string[]>;
|
|
53
86
|
/**
|
|
54
87
|
* Normalizes CSV-style JSON (single quotes, spacing) before JSON.parse, consistent with other custom-field parsing in this importer.
|
|
55
88
|
*/
|
|
@@ -58,8 +91,8 @@ export declare class ProductImporter {
|
|
|
58
91
|
* Coerces raw JSON object properties to the scalar types declared on a struct custom field.
|
|
59
92
|
*/
|
|
60
93
|
private coerceStructRow;
|
|
61
|
-
/** Swaps
|
|
62
|
-
private
|
|
94
|
+
/** Swaps lookup values for ids; `RelationLookupResolver` has already checked each value. */
|
|
95
|
+
private idsForLookupValues;
|
|
63
96
|
private isValidRelationIdentifier;
|
|
64
97
|
private processCustomFieldValues;
|
|
65
98
|
/**
|