feed-common 1.77.6 → 1.77.8

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.
@@ -1,9 +1,9 @@
1
1
  import { z } from 'zod';
2
2
  import { makeMacroString } from './common.js';
3
3
  import { validateIfNoMacro } from './common-schemas.js';
4
- import { ACTION_ARRAY_FIRST_ITEMS, SOURCE_EBAY_GALLERY_TYPE, SOURCE_EBAY_INTERNATIONAL_REFUND_OPTIONS, SOURCE_EBAY_INTERNATIONAL_RETURNS_ACCEPTED, SOURCE_EBAY_INVENTORY_TRACKING, SOURCE_EBAY_LISTING_TYPE, SOURCE_EBAY_MEASUREMENT_UNITS, SOURCE_EBAY_PAID_BY_COST, SOURCE_EBAY_YES_NO, SOURCE_SHOPIFY_DESCRIPTION_HTML, SOURCE_SHOPIFY_IMAGE, SOURCE_SHOPIFY_IMAGES, SOURCE_SHOPIFY_SHOP_COUNTRY, SOURCE_SHOPIFY_SHOP_CURRENCY, SOURCE_SHOPIFY_SHOP_POSTAL_CODE, SOURCE_SHOPIFY_VENDOR, } from '../../constants/profile.constants.js';
4
+ import { ACTION_ARRAY_FIRST_ITEMS, SOURCE_EBAY_CATEGORY_SUGGESTION, SOURCE_EBAY_GALLERY_TYPE, SOURCE_EBAY_INTERNATIONAL_REFUND_OPTIONS, SOURCE_EBAY_INTERNATIONAL_RETURNS_ACCEPTED, SOURCE_EBAY_MEASUREMENT_UNITS, SOURCE_EBAY_PAID_BY_COST, SOURCE_EBAY_SITE, SOURCE_EBAY_YES_NO, SOURCE_SHOPIFY_COMPARE_AT_PRICE, SOURCE_SHOPIFY_DESCRIPTION_HTML, SOURCE_SHOPIFY_ID, SOURCE_SHOPIFY_IMAGE, SOURCE_SHOPIFY_IMAGES, SOURCE_SHOPIFY_INVENTORY_QUANTITY, SOURCE_SHOPIFY_PRICE, SOURCE_SHOPIFY_SHOP_COUNTRY, SOURCE_SHOPIFY_SHOP_CURRENCY, SOURCE_SHOPIFY_SHOP_POSTAL_CODE, SOURCE_SHOPIFY_TITLE, SOURCE_SHOPIFY_VARIANT_ID, SOURCE_SHOPIFY_VENDOR, } from '../../constants/profile.constants.js';
5
5
  import { resolveSourceValue } from '../profile.js';
6
- import { countrySchema, currencySchema, oneOfOptionalSchema } from './common-schemas.js';
6
+ import { countrySchema, currencySchema } from './common-schemas.js';
7
7
  const yesNoSchema = z.coerce.string().refine(v => resolveSourceValue(SOURCE_EBAY_YES_NO)
8
8
  ?.map(r => r.value)
9
9
  .includes(v), { message: 'Value must be 0 or 1' });
@@ -12,54 +12,17 @@ export const eBayFeedTemplate = {
12
12
  documentation: 'https://developer.ebay.com/devzone/xml/docs/reference/ebay/AddFixedPriceItem.html',
13
13
  mapping: [
14
14
  {
15
- attribute: ' Item.AutoPay',
16
- label: 'AutoPay',
17
- description: 'Indicates whether the seller requires immediate payment for the item',
18
- required: false,
19
- type: 'macro-input',
20
- defaultValue: makeMacroString(SOURCE_EBAY_YES_NO, ['1']),
21
- rules: { sections: [] },
22
- baseMode: false,
23
- validator: v => validateIfNoMacro(v, yesNoSchema),
24
- fixedValue: true,
25
- singleChoice: true,
26
- },
27
- {
28
- attribute: 'Item.BestOfferEnabled',
29
- label: 'Best Offer Enabled',
30
- description: 'Indicates whether the seller is accepting Best Offers for the item',
31
- required: false,
32
- type: 'macro-input',
33
- defaultValue: makeMacroString(SOURCE_EBAY_YES_NO, ['0']),
34
- rules: { sections: [] },
35
- baseMode: false,
36
- validator: v => validateIfNoMacro(v, yesNoSchema),
37
- fixedValue: true,
38
- singleChoice: true,
39
- },
40
- {
41
- attribute: 'Item.CategoryMappingAllowed',
42
- label: 'Category Mapping Allowed',
43
- description: 'This boolean field controls whether or not eBay automatically maps outdated Category ID(s) specified in a PrimaryCategory and/or SecondaryCategory container(s) to the updated Category ID(s) no longer exists in the current category structure',
44
- required: false,
15
+ attribute: 'Item.Site',
16
+ label: 'Site',
17
+ description: 'The name of the eBay listing site',
18
+ required: true,
45
19
  type: 'macro-input',
46
- defaultValue: makeMacroString(SOURCE_EBAY_YES_NO, ['1']),
20
+ defaultValue: makeMacroString(SOURCE_EBAY_SITE),
47
21
  rules: { sections: [] },
48
- baseMode: false,
49
- validator: v => validateIfNoMacro(v, yesNoSchema),
22
+ baseMode: true,
50
23
  fixedValue: true,
51
24
  singleChoice: true,
52
- },
53
- {
54
- attribute: 'Item.ConditionID',
55
- label: 'Condition',
56
- description: 'The condition of the item. For example, New, Used, or Refurbished',
57
- required: false,
58
- type: 'macro-input',
59
- defaultValue: '',
60
- rules: { sections: [] },
61
- baseMode: false,
62
- singleChoice: true,
25
+ validator: v => validateIfNoMacro(v, z.string()),
63
26
  },
64
27
  {
65
28
  attribute: 'Item.Country',
@@ -85,174 +48,237 @@ export const eBayFeedTemplate = {
85
48
  baseMode: true,
86
49
  singleChoice: true,
87
50
  },
88
- {
89
- attribute: 'Item.Description',
90
- label: 'Description',
91
- description: 'The description of the item',
51
+ // TODO: set inventory tracking method to SKU
52
+ // {
53
+ // attribute: 'Item.InventoryTrackingMethod',
54
+ // label: 'Inventory Tracking Method',
55
+ // description: 'The method used to track the inventory level of the item',
56
+ // required: false,
57
+ // type: 'macro-input',
58
+ // defaultValue: makeMacroString(SOURCE_EBAY_INVENTORY_TRACKING),
59
+ // rules: { sections: [] },
60
+ // baseMode: false,
61
+ // singleChoice: true,
62
+ // fixedValue: true,
63
+ // },
64
+ {
65
+ attribute: 'Item.Variations.Variation.SKU',
66
+ label: 'SKU',
67
+ description: 'The SKU of the variant',
92
68
  required: true,
93
69
  type: 'macro-input',
94
- defaultValue: makeMacroString(SOURCE_SHOPIFY_DESCRIPTION_HTML),
70
+ defaultValue: makeMacroString(SOURCE_SHOPIFY_ID) + '-' + makeMacroString(SOURCE_SHOPIFY_VARIANT_ID),
95
71
  rules: { sections: [] },
96
72
  baseMode: true,
97
- validator: v => validateIfNoMacro(v, z.string().max(500000)),
73
+ fixedValue: false,
98
74
  singleChoice: true,
99
75
  },
100
76
  {
101
- attribute: 'Item.DiscountPriceInfo.MinimumAdvertisedPrice', // TODO: check if this is correct
102
- label: 'Discount Price',
103
- description: 'The discount price of the item',
77
+ attribute: 'Item.Variations.Variation.VariationProductListingDetails.EAN',
78
+ label: 'EAN',
79
+ description: 'The European Article Number',
104
80
  required: false,
105
81
  type: 'macro-input',
106
- defaultValue: makeMacroString(SOURCE_SHOPIFY_DESCRIPTION_HTML),
82
+ defaultValue: '',
107
83
  rules: { sections: [] },
108
84
  baseMode: false,
109
- validator: v => validateIfNoMacro(v, z.coerce.number().positive()),
85
+ fixedValue: false,
110
86
  singleChoice: true,
111
87
  },
112
88
  {
113
- attribute: 'Item.DispatchTimeMax',
114
- label: 'Dispatch Time Max',
115
- description: 'The maximum number of business days the seller commits to for shipping an item to a buyer after receiving a cleared payment',
89
+ attribute: 'Item.Variations.Variation.VariationProductListingDetails.ISBN',
90
+ label: 'ISBN',
91
+ description: 'The International Standard Book Number',
116
92
  required: false,
117
93
  type: 'macro-input',
118
94
  defaultValue: '',
119
95
  rules: { sections: [] },
120
96
  baseMode: false,
121
- validator: v => validateIfNoMacro(v, z.coerce.number().gte(0)),
97
+ fixedValue: false,
122
98
  singleChoice: true,
123
99
  },
124
100
  {
125
- attribute: 'Item.InventoryTrackingMethod',
126
- label: 'Inventory Tracking Method',
127
- description: 'The method used to track the inventory level of the item',
101
+ attribute: 'Item.Variations.Variation.VariationProductListingDetails.UPC',
102
+ label: 'UPC',
103
+ description: 'The Universal Product Code',
128
104
  required: false,
129
105
  type: 'macro-input',
130
- defaultValue: makeMacroString(SOURCE_EBAY_INVENTORY_TRACKING),
106
+ defaultValue: '',
131
107
  rules: { sections: [] },
132
108
  baseMode: false,
133
- validator: v => validateIfNoMacro(v, oneOfOptionalSchema(resolveSourceValue(SOURCE_EBAY_INVENTORY_TRACKING))),
109
+ fixedValue: false,
134
110
  singleChoice: true,
135
- fixedValue: true,
136
111
  },
137
- // TODO: add compatibility list items
138
- // TODO: add item specifics
139
112
  {
140
- attribute: 'Item.ListingDuration',
141
- label: 'Listing Duration',
142
- description: 'The length of time the listing will be active',
113
+ attribute: 'Item.Title',
114
+ label: 'Title',
115
+ description: 'The title of the item',
143
116
  required: false,
144
117
  type: 'macro-input',
145
- defaultValue: '', // TODO: add source
118
+ defaultValue: makeMacroString(SOURCE_SHOPIFY_TITLE),
146
119
  rules: { sections: [] },
147
- baseMode: false,
148
- fixedValue: true,
120
+ baseMode: true,
121
+ fixedValue: false,
149
122
  singleChoice: true,
150
123
  },
151
124
  {
152
- attribute: 'Item.ListingType',
153
- label: 'Listing Type',
154
- description: 'The type of listing',
125
+ attribute: 'Item.Description', // TODO: CDATA it
126
+ label: 'Description',
127
+ description: 'The description of the item',
155
128
  required: true,
156
129
  type: 'macro-input',
157
- defaultValue: makeMacroString(SOURCE_EBAY_LISTING_TYPE, ['FixedPriceItem']),
130
+ defaultValue: makeMacroString(SOURCE_SHOPIFY_DESCRIPTION_HTML),
158
131
  rules: { sections: [] },
159
132
  baseMode: true,
160
- fixedValue: true,
133
+ validator: v => validateIfNoMacro(v, z.string().max(500000)),
161
134
  singleChoice: true,
162
135
  },
163
136
  {
164
- attribute: 'GalleryType',
165
- label: 'Gallery Type',
166
- description: 'The type of gallery image to use for the listing. Waring: Plus type implies additional fee',
137
+ attribute: 'Item.PrimaryCategory.CategoryID',
138
+ label: 'Primary Category',
139
+ description: 'The primary category of the item',
140
+ required: true,
141
+ type: 'macro-input',
142
+ defaultValue: makeMacroString(SOURCE_EBAY_CATEGORY_SUGGESTION),
143
+ rules: { sections: [] },
144
+ baseMode: true,
145
+ fixedValue: false,
146
+ singleChoice: true,
147
+ },
148
+ {
149
+ attribute: 'Item.SecondaryCategory.CategoryID',
150
+ label: 'Secondary Category',
151
+ description: 'The secondary category of the item',
167
152
  required: false,
168
153
  type: 'macro-input',
169
- defaultValue: makeMacroString(SOURCE_EBAY_GALLERY_TYPE, ['Gallery']),
154
+ defaultValue: makeMacroString(SOURCE_EBAY_CATEGORY_SUGGESTION),
170
155
  rules: { sections: [] },
171
- baseMode: false,
172
- fixedValue: true,
156
+ baseMode: true,
157
+ fixedValue: false,
173
158
  singleChoice: true,
174
159
  },
175
- // TODO: set PictureSource to Vendor
176
160
  {
177
- attribute: 'Item.PictureDetails.PictureURL',
178
- label: 'Picture URL',
179
- description: 'Contains comma separated list of product picture URLs. You can pass in up to 24 picture URLs for each listing. The Gallery image will be the first PictureURL in the list',
161
+ attribute: 'Item.Variations.Pictures.VariationSpecificPictureSet.PictureURL', // TODO: split by comma and set in separate fields
162
+ label: 'Variation Specific Picture Set',
163
+ description: 'The URL of the pictures of variant. Can consist of up to 12 pictures',
180
164
  required: false,
181
165
  type: 'macro-input',
182
166
  defaultValue: makeMacroString(SOURCE_SHOPIFY_IMAGE) +
183
167
  ',' +
184
168
  makeMacroString(SOURCE_SHOPIFY_IMAGES) +
185
- makeMacroString(ACTION_ARRAY_FIRST_ITEMS, ['24']),
169
+ makeMacroString(ACTION_ARRAY_FIRST_ITEMS, ['12']),
186
170
  rules: { sections: [] },
187
- baseMode: false,
188
- fixedValue: true,
171
+ baseMode: true,
172
+ fixedValue: false,
189
173
  singleChoice: true,
190
174
  },
191
175
  {
192
- attribute: 'Item.PostalCode',
193
- label: 'Postal Code',
194
- description: 'The postal code where the item is located',
176
+ attribute: 'GalleryType',
177
+ label: 'Gallery Type',
178
+ description: 'The type of gallery image to use for the listing. Waring: Plus type implies additional fee',
195
179
  required: false,
196
180
  type: 'macro-input',
197
- defaultValue: makeMacroString(SOURCE_SHOPIFY_SHOP_POSTAL_CODE),
181
+ defaultValue: makeMacroString(SOURCE_EBAY_GALLERY_TYPE, ['Gallery']),
198
182
  rules: { sections: [] },
199
183
  baseMode: false,
184
+ fixedValue: true,
200
185
  singleChoice: true,
201
186
  },
202
187
  {
203
- attribute: 'Item.PrimaryCategory.CategoryID',
204
- label: 'Primary Category',
205
- description: 'The primary category of the item',
206
- required: true,
188
+ attribute: 'Item.Variations.Variation.Quantity',
189
+ label: 'Quantity',
190
+ description: 'The number of items available for purchase',
191
+ required: false,
207
192
  type: 'macro-input',
208
- defaultValue: '', // TODO: add source
193
+ defaultValue: makeMacroString(SOURCE_SHOPIFY_INVENTORY_QUANTITY),
209
194
  rules: { sections: [] },
210
195
  baseMode: true,
211
196
  fixedValue: false,
212
197
  singleChoice: true,
213
198
  },
214
199
  {
215
- attribute: 'Item.SecondaryCategory.CategoryID',
216
- label: 'Secondary Category',
217
- description: 'The secondary category of the item',
218
- required: false,
200
+ attribute: 'Item.Variations.Variation.StartPrice',
201
+ label: 'Price',
202
+ description: 'The price of the variant',
203
+ required: true,
219
204
  type: 'macro-input',
220
- defaultValue: '', // TODO: add source
205
+ defaultValue: makeMacroString(SOURCE_SHOPIFY_PRICE),
221
206
  rules: { sections: [] },
222
207
  baseMode: true,
223
208
  fixedValue: false,
224
209
  singleChoice: true,
225
210
  },
226
211
  {
227
- attribute: 'Item.ProductListingDetails.BrandMPN.Brand',
228
- label: 'Brand',
229
- description: 'The brand of the item',
212
+ attribute: 'Item.Variations.Variation.DiscountPriceInfo.MinimumAdvertisedPrice',
213
+ label: 'Discount Price',
214
+ description: 'The discount price of the item',
230
215
  required: false,
231
216
  type: 'macro-input',
232
- defaultValue: makeMacroString(SOURCE_SHOPIFY_VENDOR),
217
+ defaultValue: makeMacroString(SOURCE_SHOPIFY_COMPARE_AT_PRICE),
233
218
  rules: { sections: [] },
234
- validator: v => validateIfNoMacro(v, z.string().max(65).optional()),
235
219
  baseMode: false,
236
220
  fixedValue: false,
237
221
  singleChoice: true,
238
222
  },
239
- {
240
- attribute: 'Item.ProductListingDetails.BrandMPN.MPN',
241
- label: 'MPN',
242
- description: 'The Manufacturer Part Number of the item',
223
+ // {
224
+ // attribute: 'Item.PictureDetails.PictureURL',
225
+ // label: 'Picture URL',
226
+ // description:
227
+ // 'Contains comma separated list of product picture URLs. You can pass in up to 24 picture URLs for each listing. The Gallery image will be the first PictureURL in the list',
228
+ // required: false,
229
+ // type: 'macro-input',
230
+ // defaultValue:
231
+ // makeMacroString(SOURCE_SHOPIFY_IMAGE) +
232
+ // ',' +
233
+ // makeMacroString(SOURCE_SHOPIFY_IMAGES) +
234
+ // makeMacroString(ACTION_ARRAY_FIRST_ITEMS, ['24']),
235
+ // rules: { sections: [] },
236
+ // baseMode: false,
237
+ // fixedValue: true,
238
+ // singleChoice: true,
239
+ // },
240
+ // TODO: if Item.InventoryTrackingMethod is set to SKU, this field is required
241
+ // if SKU is set on variation level, it should not be set on item level
242
+ // {
243
+ // attribute: 'Item.SKU',
244
+ // label: 'Product SKU',
245
+ // description: 'The SKU of the product',
246
+ // required: false,
247
+ // type: 'macro-input',
248
+ // defaultValue: '',
249
+ // rules: { sections: [] },
250
+ // baseMode: false,
251
+ // fixedValue: false,
252
+ // singleChoice: true,
253
+ // },
254
+ // {
255
+ // attribute: 'Item.StartPrice',
256
+ // label: 'Price',
257
+ // description: 'The price of the item',
258
+ // required: true,
259
+ // type: 'macro-input',
260
+ // defaultValue: makeMacroString(SOURCE_SHOPIFY_PRICE),
261
+ // rules: { sections: [] },
262
+ // baseMode: true,
263
+ // fixedValue: false,
264
+ // singleChoice: true,
265
+ // },
266
+ {
267
+ attribute: 'Item.Variations.Pictures.VariationSpecificName',
268
+ label: 'Variation Specific Name',
269
+ description: 'One aspect of the variations that will be illustrated in the pictures for all variations. For example, if each variation is visually distinguished by color and the pictures show the different colors available, then specify "Color" as the name',
243
270
  required: false,
244
271
  type: 'macro-input',
245
272
  defaultValue: '',
246
273
  rules: { sections: [] },
247
- validator: v => validateIfNoMacro(v, z.string().max(65).optional()),
248
274
  baseMode: false,
249
275
  fixedValue: false,
250
276
  singleChoice: true,
251
277
  },
252
278
  {
253
- attribute: 'Item.ProductListingDetails.EAN',
254
- label: 'EAN',
255
- description: 'The European Article Number of the item',
279
+ attribute: 'Item.Variations.Pictures.VariationSpecificPictureSet.VariationSpecificValue',
280
+ label: 'Variation Specific Value',
281
+ description: 'A value that is associated with Variation Specific Name. For example, suppose if Variation Specific Name is Color , then Variation Specific Value would be Blue. ',
256
282
  required: false,
257
283
  type: 'macro-input',
258
284
  defaultValue: '',
@@ -261,30 +287,181 @@ export const eBayFeedTemplate = {
261
287
  fixedValue: false,
262
288
  singleChoice: true,
263
289
  },
290
+ ///////////////////////////////////////// secondary fields /////////////////////////////////////////
264
291
  {
265
- attribute: 'Item.ProductListingDetails.UPC',
266
- label: 'UPC',
267
- description: 'The Universal Product Code of the item',
292
+ attribute: ' Item.AutoPay',
293
+ label: 'AutoPay',
294
+ description: 'Indicates whether the seller requires immediate payment for the item',
295
+ required: false,
296
+ type: 'macro-input',
297
+ defaultValue: makeMacroString(SOURCE_EBAY_YES_NO, ['1']),
298
+ rules: { sections: [] },
299
+ baseMode: false,
300
+ validator: v => validateIfNoMacro(v, yesNoSchema),
301
+ fixedValue: true,
302
+ singleChoice: true,
303
+ },
304
+ {
305
+ attribute: 'Item.BestOfferEnabled',
306
+ label: 'Best Offer Enabled',
307
+ description: 'Indicates whether the seller is accepting Best Offers for the item',
308
+ required: false,
309
+ type: 'macro-input',
310
+ defaultValue: makeMacroString(SOURCE_EBAY_YES_NO, ['0']),
311
+ rules: { sections: [] },
312
+ baseMode: false,
313
+ validator: v => validateIfNoMacro(v, yesNoSchema),
314
+ fixedValue: true,
315
+ singleChoice: true,
316
+ },
317
+ {
318
+ attribute: 'Item.CategoryMappingAllowed',
319
+ label: 'Category Mapping Allowed',
320
+ description: 'This boolean field controls whether or not eBay automatically maps outdated Category ID(s) specified in a PrimaryCategory and/or SecondaryCategory container(s) to the updated Category ID(s) no longer exists in the current category structure',
321
+ required: false,
322
+ type: 'macro-input',
323
+ defaultValue: makeMacroString(SOURCE_EBAY_YES_NO, ['1']),
324
+ rules: { sections: [] },
325
+ baseMode: false,
326
+ validator: v => validateIfNoMacro(v, yesNoSchema),
327
+ fixedValue: true,
328
+ singleChoice: true,
329
+ },
330
+ {
331
+ attribute: 'Item.ConditionID',
332
+ label: 'Condition',
333
+ description: 'The condition of the item. For example, New, Used, or Refurbished',
268
334
  required: false,
269
335
  type: 'macro-input',
270
336
  defaultValue: '',
271
337
  rules: { sections: [] },
272
338
  baseMode: false,
273
- fixedValue: false,
274
339
  singleChoice: true,
275
340
  },
341
+ // {
342
+ // attribute: 'Item.DiscountPriceInfo.MinimumAdvertisedPrice', // TODO: check if this is correct
343
+ // label: 'Discount Price',
344
+ // description: 'The discount price of the item',
345
+ // required: false,
346
+ // type: 'macro-input',
347
+ // defaultValue: makeMacroString(SOURCE_SHOPIFY_DESCRIPTION_HTML),
348
+ // rules: { sections: [] },
349
+ // baseMode: false,
350
+ // validator: v => validateIfNoMacro(v, z.coerce.number().positive()),
351
+ // singleChoice: true,
352
+ // },
276
353
  {
277
- attribute: 'Item.Quantity',
278
- label: 'Quantity',
279
- description: 'The number of items available for purchase',
354
+ attribute: 'Item.DispatchTimeMax',
355
+ label: 'Dispatch Time Max',
356
+ description: 'The maximum number of business days the seller commits to for shipping an item to a buyer after receiving a cleared payment',
280
357
  required: false,
281
358
  type: 'macro-input',
282
359
  defaultValue: '',
283
360
  rules: { sections: [] },
284
- baseMode: true,
361
+ baseMode: false,
362
+ validator: v => validateIfNoMacro(v, z.coerce.number().gte(0)),
363
+ singleChoice: true,
364
+ },
365
+ // TODO: add compatibility list items
366
+ // TODO: add item specifics
367
+ {
368
+ attribute: 'Item.ListingDuration',
369
+ label: 'Listing Duration',
370
+ description: 'The length of time the listing will be active',
371
+ required: false,
372
+ type: 'macro-input',
373
+ defaultValue: '', // TODO: add source
374
+ rules: { sections: [] },
375
+ baseMode: false,
376
+ fixedValue: true,
377
+ singleChoice: true,
378
+ },
379
+ // {
380
+ // attribute: 'Item.ListingType',
381
+ // label: 'Listing Type',
382
+ // description: 'The type of listing',
383
+ // required: true,
384
+ // type: 'macro-input',
385
+ // defaultValue: makeMacroString(SOURCE_EBAY_LISTING_TYPE, ['FixedPriceItem']),
386
+ // rules: { sections: [] },
387
+ // baseMode: true,
388
+ // fixedValue: true,
389
+ // singleChoice: true,
390
+ // },
391
+ // TODO: set PictureSource to Vendor
392
+ {
393
+ attribute: 'Item.PostalCode',
394
+ label: 'Postal Code',
395
+ description: 'The postal code where the item is located',
396
+ required: false,
397
+ type: 'macro-input',
398
+ defaultValue: makeMacroString(SOURCE_SHOPIFY_SHOP_POSTAL_CODE),
399
+ rules: { sections: [] },
400
+ baseMode: false,
401
+ singleChoice: true,
402
+ },
403
+ {
404
+ attribute: 'Item.ProductListingDetails.BrandMPN.Brand',
405
+ label: 'Brand',
406
+ description: 'The brand of the item',
407
+ required: false,
408
+ type: 'macro-input',
409
+ defaultValue: makeMacroString(SOURCE_SHOPIFY_VENDOR),
410
+ rules: { sections: [] },
411
+ validator: v => validateIfNoMacro(v, z.string().max(65).optional()),
412
+ baseMode: false,
285
413
  fixedValue: false,
286
414
  singleChoice: true,
287
415
  },
416
+ // {
417
+ // attribute: 'Item.ProductListingDetails.BrandMPN.MPN',
418
+ // label: 'MPN',
419
+ // description: 'The Manufacturer Part Number of the item',
420
+ // required: false,
421
+ // type: 'macro-input',
422
+ // defaultValue: '',
423
+ // rules: { sections: [] },
424
+ // validator: v => validateIfNoMacro(v, z.string().max(65).optional()),
425
+ // baseMode: false,
426
+ // fixedValue: false,
427
+ // singleChoice: true,
428
+ // },
429
+ // {
430
+ // attribute: 'Item.ProductListingDetails.EAN',
431
+ // label: 'EAN',
432
+ // description: 'The European Article Number of the item',
433
+ // required: false,
434
+ // type: 'macro-input',
435
+ // defaultValue: '',
436
+ // rules: { sections: [] },
437
+ // baseMode: false,
438
+ // fixedValue: false,
439
+ // singleChoice: true,
440
+ // },
441
+ // {
442
+ // attribute: 'Item.ProductListingDetails.UPC',
443
+ // label: 'UPC',
444
+ // description: 'The Universal Product Code of the item',
445
+ // required: false,
446
+ // type: 'macro-input',
447
+ // defaultValue: '',
448
+ // rules: { sections: [] },
449
+ // baseMode: false,
450
+ // fixedValue: false,
451
+ // singleChoice: true,
452
+ // },
453
+ // {
454
+ // attribute: 'Item.Quantity',
455
+ // label: 'Quantity',
456
+ // description: 'The number of items available for purchase',
457
+ // required: false,
458
+ // type: 'macro-input',
459
+ // defaultValue: '',
460
+ // rules: { sections: [] },
461
+ // baseMode: true,
462
+ // fixedValue: false,
463
+ // singleChoice: true,
464
+ // },
288
465
  {
289
466
  attribute: 'Item.QuantityRestrictionPerBuyer.MaximumQuantity',
290
467
  label: 'Maximum Quantity Per Buyer',
@@ -503,10 +680,72 @@ export const eBayFeedTemplate = {
503
680
  fixedValue: true,
504
681
  singleChoice: true,
505
682
  },
683
+ // {
684
+ // attribute: 'Item.ShippingPackageDetails.WeightMajor',
685
+ // label: 'Weight Major',
686
+ // description:
687
+ // 'WeightMajor is used to specify the weight of the package in pounds (in US) or kilograms (all countries that use metric system). The value needs to by rounded up to the nearest whole number',
688
+ // required: false,
689
+ // type: 'macro-input',
690
+ // defaultValue: '',
691
+ // rules: { sections: [] },
692
+ // baseMode: false,
693
+ // fixedValue: false,
694
+ // singleChoice: true,
695
+ // },
696
+ // {
697
+ // attribute: 'Item.ShippingPackageDetails.WeightMinor',
698
+ // label: 'Weight Minor',
699
+ // description:
700
+ // 'WeightMinor is used to specify the weight of the package in ounces (in US) or grams (all countries that use metric system). The value needs to by rounded up to the nearest whole number',
701
+ // required: false,
702
+ // type: 'macro-input',
703
+ // defaultValue: '',
704
+ // rules: { sections: [] },
705
+ // baseMode: false,
706
+ // fixedValue: false,
707
+ // singleChoice: true,
708
+ // },
709
+ {
710
+ attribute: 'ShippingWeight',
711
+ label: 'Shipping Weight',
712
+ description: 'Specifies the weight of the package in ounces and pounds (in US) or grams and kilograms (all countries that use metric system). The value will by rounded up to the nearest whole number. Example: 2lbs 13oz or 1kg 500g or 1kg',
713
+ required: false,
714
+ type: 'macro-input',
715
+ defaultValue: '',
716
+ rules: { sections: [] },
717
+ baseMode: false,
718
+ fixedValue: false,
719
+ singleChoice: true,
720
+ },
721
+ {
722
+ attribute: 'Item.Storefront.StoreCategoryID',
723
+ label: 'Store Category ID',
724
+ description: 'The ID of the store category',
725
+ required: false,
726
+ type: 'macro-input',
727
+ defaultValue: '',
728
+ rules: { sections: [] },
729
+ baseMode: false,
730
+ fixedValue: false,
731
+ singleChoice: true,
732
+ },
733
+ {
734
+ attribute: 'Item.Storefront.StoreCategoryName',
735
+ label: 'Store Category Name',
736
+ description: 'The name of the store category',
737
+ required: false,
738
+ type: 'macro-input',
739
+ defaultValue: '',
740
+ rules: { sections: [] },
741
+ baseMode: false,
742
+ fixedValue: false,
743
+ singleChoice: true,
744
+ },
506
745
  {
507
- attribute: 'Item.ShippingPackageDetails.WeightMajor',
508
- label: 'Weight Major',
509
- description: 'WeightMajor is used to specify the weight of the package in pounds (in US) or kilograms (all countries that use metric system). The value needs to by rounded up to the nearest whole number',
746
+ attribute: 'Item.Storefront.StoreCategory2ID',
747
+ label: 'Store Secondary Category ID',
748
+ description: 'The ID of the store secondary category',
510
749
  required: false,
511
750
  type: 'macro-input',
512
751
  defaultValue: '',
@@ -516,9 +755,9 @@ export const eBayFeedTemplate = {
516
755
  singleChoice: true,
517
756
  },
518
757
  {
519
- attribute: 'Item.ShippingPackageDetails.WeightMinor',
520
- label: 'Weight Minor',
521
- description: 'WeightMinor is used to specify the weight of the package in ounces (in US) or grams (all countries that use metric system). The value needs to by rounded up to the nearest whole number',
758
+ attribute: 'Item.Storefront.StoreCategory2Name',
759
+ label: 'Store Secondary Category Name',
760
+ description: 'The name of the store secondary category',
522
761
  required: false,
523
762
  type: 'macro-input',
524
763
  defaultValue: '',
@@ -527,6 +766,18 @@ export const eBayFeedTemplate = {
527
766
  fixedValue: false,
528
767
  singleChoice: true,
529
768
  },
769
+ // {
770
+ // attribute: 'Item.VideoDetails.VideoID',
771
+ // label: 'Video',
772
+ // description: 'The title of the item',
773
+ // required: false,
774
+ // type: 'macro-input',
775
+ // defaultValue: '',
776
+ // rules: { sections: [] },
777
+ // baseMode: false,
778
+ // fixedValue: false,
779
+ // singleChoice: true,
780
+ // },
530
781
  ],
531
782
  };
532
783
  //# sourceMappingURL=ebay.template.js.map