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.
- package/CHANGELOG.md +14 -0
- package/dist/constants/profile.constants.d.ts +2 -0
- package/dist/constants/profile.constants.d.ts.map +1 -1
- package/dist/constants/profile.constants.js +14 -0
- package/dist/constants/profile.constants.js.map +1 -1
- package/dist/sources/ebay-site.source.d.ts +5 -0
- package/dist/sources/ebay-site.source.d.ts.map +1 -0
- package/dist/sources/ebay-site.source.js +24 -0
- package/dist/sources/ebay-site.source.js.map +1 -0
- package/dist/utils/feed-templates/ebay.template.d.ts.map +1 -1
- package/dist/utils/feed-templates/ebay.template.js +385 -134
- package/dist/utils/feed-templates/ebay.template.js.map +1 -1
- package/dist/utils/profile.d.ts.map +1 -1
- package/dist/utils/profile.js +4 -1
- package/dist/utils/profile.js.map +1 -1
- package/package.json +1 -1
- package/src/constants/profile.constants.ts +14 -0
- package/src/sources/ebay-site.source.ts +23 -0
- package/src/utils/feed-templates/ebay.template.ts +398 -145
- package/src/utils/profile.ts +4 -0
@@ -3,25 +3,31 @@ import { makeMacroString } from './common.js';
|
|
3
3
|
import { validateIfNoMacro } from './common-schemas.js';
|
4
4
|
import {
|
5
5
|
ACTION_ARRAY_FIRST_ITEMS,
|
6
|
+
SOURCE_EBAY_CATEGORY_SUGGESTION,
|
6
7
|
SOURCE_EBAY_GALLERY_TYPE,
|
7
8
|
SOURCE_EBAY_INTERNATIONAL_REFUND_OPTIONS,
|
8
9
|
SOURCE_EBAY_INTERNATIONAL_RETURNS_ACCEPTED,
|
9
|
-
SOURCE_EBAY_INVENTORY_TRACKING,
|
10
|
-
SOURCE_EBAY_LISTING_TYPE,
|
11
10
|
SOURCE_EBAY_MEASUREMENT_UNITS,
|
12
11
|
SOURCE_EBAY_PAID_BY_COST,
|
12
|
+
SOURCE_EBAY_SITE,
|
13
13
|
SOURCE_EBAY_YES_NO,
|
14
|
+
SOURCE_SHOPIFY_COMPARE_AT_PRICE,
|
14
15
|
SOURCE_SHOPIFY_DESCRIPTION_HTML,
|
16
|
+
SOURCE_SHOPIFY_ID,
|
15
17
|
SOURCE_SHOPIFY_IMAGE,
|
16
18
|
SOURCE_SHOPIFY_IMAGES,
|
19
|
+
SOURCE_SHOPIFY_INVENTORY_QUANTITY,
|
20
|
+
SOURCE_SHOPIFY_PRICE,
|
17
21
|
SOURCE_SHOPIFY_SHOP_COUNTRY,
|
18
22
|
SOURCE_SHOPIFY_SHOP_CURRENCY,
|
19
23
|
SOURCE_SHOPIFY_SHOP_POSTAL_CODE,
|
24
|
+
SOURCE_SHOPIFY_TITLE,
|
25
|
+
SOURCE_SHOPIFY_VARIANT_ID,
|
20
26
|
SOURCE_SHOPIFY_VENDOR,
|
21
27
|
} from '../../constants/profile.constants.js';
|
22
|
-
import {
|
28
|
+
import { XmlFeedTemplateType } from '../../types/profile.types.js';
|
23
29
|
import { resolveSourceValue } from '../profile.js';
|
24
|
-
import { countrySchema, currencySchema
|
30
|
+
import { countrySchema, currencySchema } from './common-schemas.js';
|
25
31
|
|
26
32
|
const yesNoSchema = z.coerce.string().refine(
|
27
33
|
v =>
|
@@ -36,55 +42,17 @@ export const eBayFeedTemplate: XmlFeedTemplateType = {
|
|
36
42
|
documentation: 'https://developer.ebay.com/devzone/xml/docs/reference/ebay/AddFixedPriceItem.html',
|
37
43
|
mapping: [
|
38
44
|
{
|
39
|
-
attribute: '
|
40
|
-
label: '
|
41
|
-
description: '
|
42
|
-
required:
|
43
|
-
type: 'macro-input',
|
44
|
-
defaultValue: makeMacroString(SOURCE_EBAY_YES_NO, ['1']),
|
45
|
-
rules: { sections: [] },
|
46
|
-
baseMode: false,
|
47
|
-
validator: v => validateIfNoMacro(v, yesNoSchema),
|
48
|
-
fixedValue: true,
|
49
|
-
singleChoice: true,
|
50
|
-
},
|
51
|
-
{
|
52
|
-
attribute: 'Item.BestOfferEnabled',
|
53
|
-
label: 'Best Offer Enabled',
|
54
|
-
description: 'Indicates whether the seller is accepting Best Offers for the item',
|
55
|
-
required: false,
|
56
|
-
type: 'macro-input',
|
57
|
-
defaultValue: makeMacroString(SOURCE_EBAY_YES_NO, ['0']),
|
58
|
-
rules: { sections: [] },
|
59
|
-
baseMode: false,
|
60
|
-
validator: v => validateIfNoMacro(v, yesNoSchema),
|
61
|
-
fixedValue: true,
|
62
|
-
singleChoice: true,
|
63
|
-
},
|
64
|
-
{
|
65
|
-
attribute: 'Item.CategoryMappingAllowed',
|
66
|
-
label: 'Category Mapping Allowed',
|
67
|
-
description:
|
68
|
-
'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',
|
69
|
-
required: false,
|
45
|
+
attribute: 'Item.Site',
|
46
|
+
label: 'Site',
|
47
|
+
description: 'The name of the eBay listing site',
|
48
|
+
required: true,
|
70
49
|
type: 'macro-input',
|
71
|
-
defaultValue: makeMacroString(
|
50
|
+
defaultValue: makeMacroString(SOURCE_EBAY_SITE),
|
72
51
|
rules: { sections: [] },
|
73
|
-
baseMode:
|
74
|
-
validator: v => validateIfNoMacro(v, yesNoSchema),
|
52
|
+
baseMode: true,
|
75
53
|
fixedValue: true,
|
76
54
|
singleChoice: true,
|
77
|
-
|
78
|
-
{
|
79
|
-
attribute: 'Item.ConditionID',
|
80
|
-
label: 'Condition',
|
81
|
-
description: 'The condition of the item. For example, New, Used, or Refurbished',
|
82
|
-
required: false,
|
83
|
-
type: 'macro-input',
|
84
|
-
defaultValue: '',
|
85
|
-
rules: { sections: [] },
|
86
|
-
baseMode: false,
|
87
|
-
singleChoice: true,
|
55
|
+
validator: v => validateIfNoMacro(v, z.string()),
|
88
56
|
},
|
89
57
|
{
|
90
58
|
attribute: 'Item.Country',
|
@@ -110,181 +78,240 @@ export const eBayFeedTemplate: XmlFeedTemplateType = {
|
|
110
78
|
baseMode: true,
|
111
79
|
singleChoice: true,
|
112
80
|
},
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
81
|
+
// TODO: set inventory tracking method to SKU
|
82
|
+
// {
|
83
|
+
// attribute: 'Item.InventoryTrackingMethod',
|
84
|
+
// label: 'Inventory Tracking Method',
|
85
|
+
// description: 'The method used to track the inventory level of the item',
|
86
|
+
// required: false,
|
87
|
+
// type: 'macro-input',
|
88
|
+
// defaultValue: makeMacroString(SOURCE_EBAY_INVENTORY_TRACKING),
|
89
|
+
// rules: { sections: [] },
|
90
|
+
// baseMode: false,
|
91
|
+
// singleChoice: true,
|
92
|
+
// fixedValue: true,
|
93
|
+
// },
|
94
|
+
{
|
95
|
+
attribute: 'Item.Variations.Variation.SKU',
|
96
|
+
label: 'SKU',
|
97
|
+
description: 'The SKU of the variant',
|
117
98
|
required: true,
|
118
99
|
type: 'macro-input',
|
119
|
-
defaultValue: makeMacroString(
|
100
|
+
defaultValue: makeMacroString(SOURCE_SHOPIFY_ID) + '-' + makeMacroString(SOURCE_SHOPIFY_VARIANT_ID),
|
120
101
|
rules: { sections: [] },
|
121
102
|
baseMode: true,
|
122
|
-
|
103
|
+
fixedValue: false,
|
123
104
|
singleChoice: true,
|
124
105
|
},
|
125
106
|
{
|
126
|
-
attribute: 'Item.
|
127
|
-
label: '
|
128
|
-
description: 'The
|
107
|
+
attribute: 'Item.Variations.Variation.VariationProductListingDetails.EAN',
|
108
|
+
label: 'EAN',
|
109
|
+
description: 'The European Article Number',
|
129
110
|
required: false,
|
130
111
|
type: 'macro-input',
|
131
|
-
defaultValue:
|
112
|
+
defaultValue: '',
|
132
113
|
rules: { sections: [] },
|
133
114
|
baseMode: false,
|
134
|
-
|
115
|
+
fixedValue: false,
|
135
116
|
singleChoice: true,
|
136
117
|
},
|
137
118
|
{
|
138
|
-
attribute: 'Item.
|
139
|
-
label: '
|
140
|
-
description:
|
141
|
-
'The maximum number of business days the seller commits to for shipping an item to a buyer after receiving a cleared payment',
|
119
|
+
attribute: 'Item.Variations.Variation.VariationProductListingDetails.ISBN',
|
120
|
+
label: 'ISBN',
|
121
|
+
description: 'The International Standard Book Number',
|
142
122
|
required: false,
|
143
123
|
type: 'macro-input',
|
144
124
|
defaultValue: '',
|
145
125
|
rules: { sections: [] },
|
146
126
|
baseMode: false,
|
147
|
-
|
127
|
+
fixedValue: false,
|
148
128
|
singleChoice: true,
|
149
129
|
},
|
150
130
|
{
|
151
|
-
attribute: 'Item.
|
152
|
-
label: '
|
153
|
-
description: 'The
|
131
|
+
attribute: 'Item.Variations.Variation.VariationProductListingDetails.UPC',
|
132
|
+
label: 'UPC',
|
133
|
+
description: 'The Universal Product Code',
|
154
134
|
required: false,
|
155
135
|
type: 'macro-input',
|
156
|
-
defaultValue:
|
136
|
+
defaultValue: '',
|
157
137
|
rules: { sections: [] },
|
158
138
|
baseMode: false,
|
159
|
-
|
160
|
-
validateIfNoMacro(
|
161
|
-
v,
|
162
|
-
oneOfOptionalSchema(resolveSourceValue(SOURCE_EBAY_INVENTORY_TRACKING) as SelectItem[])
|
163
|
-
),
|
139
|
+
fixedValue: false,
|
164
140
|
singleChoice: true,
|
165
|
-
fixedValue: true,
|
166
141
|
},
|
167
|
-
// TODO: add compatibility list items
|
168
|
-
// TODO: add item specifics
|
169
142
|
{
|
170
|
-
attribute: 'Item.
|
171
|
-
label: '
|
172
|
-
description: 'The
|
143
|
+
attribute: 'Item.Title',
|
144
|
+
label: 'Title',
|
145
|
+
description: 'The title of the item',
|
173
146
|
required: false,
|
174
147
|
type: 'macro-input',
|
175
|
-
defaultValue:
|
148
|
+
defaultValue: makeMacroString(SOURCE_SHOPIFY_TITLE),
|
176
149
|
rules: { sections: [] },
|
177
|
-
baseMode:
|
178
|
-
fixedValue:
|
150
|
+
baseMode: true,
|
151
|
+
fixedValue: false,
|
179
152
|
singleChoice: true,
|
180
153
|
},
|
181
154
|
{
|
182
|
-
attribute: 'Item.
|
183
|
-
label: '
|
184
|
-
description: 'The
|
155
|
+
attribute: 'Item.Description', // TODO: CDATA it
|
156
|
+
label: 'Description',
|
157
|
+
description: 'The description of the item',
|
185
158
|
required: true,
|
186
159
|
type: 'macro-input',
|
187
|
-
defaultValue: makeMacroString(
|
160
|
+
defaultValue: makeMacroString(SOURCE_SHOPIFY_DESCRIPTION_HTML),
|
188
161
|
rules: { sections: [] },
|
189
162
|
baseMode: true,
|
190
|
-
|
163
|
+
validator: v => validateIfNoMacro(v, z.string().max(500000)),
|
191
164
|
singleChoice: true,
|
192
165
|
},
|
193
166
|
{
|
194
|
-
attribute: '
|
195
|
-
label: '
|
196
|
-
description: 'The
|
167
|
+
attribute: 'Item.PrimaryCategory.CategoryID',
|
168
|
+
label: 'Primary Category',
|
169
|
+
description: 'The primary category of the item',
|
170
|
+
required: true,
|
171
|
+
type: 'macro-input',
|
172
|
+
defaultValue: makeMacroString(SOURCE_EBAY_CATEGORY_SUGGESTION),
|
173
|
+
rules: { sections: [] },
|
174
|
+
baseMode: true,
|
175
|
+
fixedValue: false,
|
176
|
+
singleChoice: true,
|
177
|
+
},
|
178
|
+
{
|
179
|
+
attribute: 'Item.SecondaryCategory.CategoryID',
|
180
|
+
label: 'Secondary Category',
|
181
|
+
description: 'The secondary category of the item',
|
197
182
|
required: false,
|
198
183
|
type: 'macro-input',
|
199
|
-
defaultValue: makeMacroString(
|
184
|
+
defaultValue: makeMacroString(SOURCE_EBAY_CATEGORY_SUGGESTION),
|
200
185
|
rules: { sections: [] },
|
201
|
-
baseMode:
|
202
|
-
fixedValue:
|
186
|
+
baseMode: true,
|
187
|
+
fixedValue: false,
|
203
188
|
singleChoice: true,
|
204
189
|
},
|
205
|
-
// TODO: set PictureSource to Vendor
|
206
190
|
{
|
207
|
-
attribute: 'Item.
|
208
|
-
label: 'Picture
|
209
|
-
description:
|
210
|
-
'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',
|
191
|
+
attribute: 'Item.Variations.Pictures.VariationSpecificPictureSet.PictureURL', // TODO: split by comma and set in separate fields
|
192
|
+
label: 'Variation Specific Picture Set',
|
193
|
+
description: 'The URL of the pictures of variant. Can consist of up to 12 pictures',
|
211
194
|
required: false,
|
212
195
|
type: 'macro-input',
|
213
196
|
defaultValue:
|
214
197
|
makeMacroString(SOURCE_SHOPIFY_IMAGE) +
|
215
198
|
',' +
|
216
199
|
makeMacroString(SOURCE_SHOPIFY_IMAGES) +
|
217
|
-
makeMacroString(ACTION_ARRAY_FIRST_ITEMS, ['
|
200
|
+
makeMacroString(ACTION_ARRAY_FIRST_ITEMS, ['12']),
|
218
201
|
rules: { sections: [] },
|
219
|
-
baseMode:
|
220
|
-
fixedValue:
|
202
|
+
baseMode: true,
|
203
|
+
fixedValue: false,
|
221
204
|
singleChoice: true,
|
222
205
|
},
|
223
206
|
{
|
224
|
-
attribute: '
|
225
|
-
label: '
|
226
|
-
description: 'The
|
207
|
+
attribute: 'GalleryType',
|
208
|
+
label: 'Gallery Type',
|
209
|
+
description: 'The type of gallery image to use for the listing. Waring: Plus type implies additional fee',
|
227
210
|
required: false,
|
228
211
|
type: 'macro-input',
|
229
|
-
defaultValue: makeMacroString(
|
212
|
+
defaultValue: makeMacroString(SOURCE_EBAY_GALLERY_TYPE, ['Gallery']),
|
230
213
|
rules: { sections: [] },
|
231
214
|
baseMode: false,
|
215
|
+
fixedValue: true,
|
232
216
|
singleChoice: true,
|
233
217
|
},
|
234
218
|
{
|
235
|
-
attribute: 'Item.
|
236
|
-
label: '
|
237
|
-
description: 'The
|
238
|
-
required:
|
219
|
+
attribute: 'Item.Variations.Variation.Quantity',
|
220
|
+
label: 'Quantity',
|
221
|
+
description: 'The number of items available for purchase',
|
222
|
+
required: false,
|
239
223
|
type: 'macro-input',
|
240
|
-
defaultValue:
|
224
|
+
defaultValue: makeMacroString(SOURCE_SHOPIFY_INVENTORY_QUANTITY),
|
241
225
|
rules: { sections: [] },
|
242
226
|
baseMode: true,
|
243
227
|
fixedValue: false,
|
244
228
|
singleChoice: true,
|
245
229
|
},
|
246
230
|
{
|
247
|
-
attribute: 'Item.
|
248
|
-
label: '
|
249
|
-
description: 'The
|
250
|
-
required:
|
231
|
+
attribute: 'Item.Variations.Variation.StartPrice',
|
232
|
+
label: 'Price',
|
233
|
+
description: 'The price of the variant',
|
234
|
+
required: true,
|
251
235
|
type: 'macro-input',
|
252
|
-
defaultValue:
|
236
|
+
defaultValue: makeMacroString(SOURCE_SHOPIFY_PRICE),
|
253
237
|
rules: { sections: [] },
|
254
238
|
baseMode: true,
|
255
239
|
fixedValue: false,
|
256
240
|
singleChoice: true,
|
257
241
|
},
|
258
242
|
{
|
259
|
-
attribute: 'Item.
|
260
|
-
label: '
|
261
|
-
description: 'The
|
243
|
+
attribute: 'Item.Variations.Variation.DiscountPriceInfo.MinimumAdvertisedPrice',
|
244
|
+
label: 'Discount Price',
|
245
|
+
description: 'The discount price of the item',
|
262
246
|
required: false,
|
263
247
|
type: 'macro-input',
|
264
|
-
defaultValue: makeMacroString(
|
248
|
+
defaultValue: makeMacroString(SOURCE_SHOPIFY_COMPARE_AT_PRICE),
|
265
249
|
rules: { sections: [] },
|
266
|
-
validator: v => validateIfNoMacro(v, z.string().max(65).optional()),
|
267
250
|
baseMode: false,
|
268
251
|
fixedValue: false,
|
269
252
|
singleChoice: true,
|
270
253
|
},
|
271
|
-
{
|
272
|
-
|
273
|
-
|
274
|
-
|
254
|
+
// {
|
255
|
+
// attribute: 'Item.PictureDetails.PictureURL',
|
256
|
+
// label: 'Picture URL',
|
257
|
+
// description:
|
258
|
+
// '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',
|
259
|
+
// required: false,
|
260
|
+
// type: 'macro-input',
|
261
|
+
// defaultValue:
|
262
|
+
// makeMacroString(SOURCE_SHOPIFY_IMAGE) +
|
263
|
+
// ',' +
|
264
|
+
// makeMacroString(SOURCE_SHOPIFY_IMAGES) +
|
265
|
+
// makeMacroString(ACTION_ARRAY_FIRST_ITEMS, ['24']),
|
266
|
+
// rules: { sections: [] },
|
267
|
+
// baseMode: false,
|
268
|
+
// fixedValue: true,
|
269
|
+
// singleChoice: true,
|
270
|
+
// },
|
271
|
+
// TODO: if Item.InventoryTrackingMethod is set to SKU, this field is required
|
272
|
+
// if SKU is set on variation level, it should not be set on item level
|
273
|
+
// {
|
274
|
+
// attribute: 'Item.SKU',
|
275
|
+
// label: 'Product SKU',
|
276
|
+
// description: 'The SKU of the product',
|
277
|
+
// required: false,
|
278
|
+
// type: 'macro-input',
|
279
|
+
// defaultValue: '',
|
280
|
+
// rules: { sections: [] },
|
281
|
+
// baseMode: false,
|
282
|
+
// fixedValue: false,
|
283
|
+
// singleChoice: true,
|
284
|
+
// },
|
285
|
+
// {
|
286
|
+
// attribute: 'Item.StartPrice',
|
287
|
+
// label: 'Price',
|
288
|
+
// description: 'The price of the item',
|
289
|
+
// required: true,
|
290
|
+
// type: 'macro-input',
|
291
|
+
// defaultValue: makeMacroString(SOURCE_SHOPIFY_PRICE),
|
292
|
+
// rules: { sections: [] },
|
293
|
+
// baseMode: true,
|
294
|
+
// fixedValue: false,
|
295
|
+
// singleChoice: true,
|
296
|
+
// },
|
297
|
+
{
|
298
|
+
attribute: 'Item.Variations.Pictures.VariationSpecificName',
|
299
|
+
label: 'Variation Specific Name',
|
300
|
+
description:
|
301
|
+
'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',
|
275
302
|
required: false,
|
276
303
|
type: 'macro-input',
|
277
304
|
defaultValue: '',
|
278
305
|
rules: { sections: [] },
|
279
|
-
validator: v => validateIfNoMacro(v, z.string().max(65).optional()),
|
280
306
|
baseMode: false,
|
281
307
|
fixedValue: false,
|
282
308
|
singleChoice: true,
|
283
309
|
},
|
284
310
|
{
|
285
|
-
attribute: 'Item.
|
286
|
-
label: '
|
287
|
-
description:
|
311
|
+
attribute: 'Item.Variations.Pictures.VariationSpecificPictureSet.VariationSpecificValue',
|
312
|
+
label: 'Variation Specific Value',
|
313
|
+
description:
|
314
|
+
'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. ',
|
288
315
|
required: false,
|
289
316
|
type: 'macro-input',
|
290
317
|
defaultValue: '',
|
@@ -293,30 +320,183 @@ export const eBayFeedTemplate: XmlFeedTemplateType = {
|
|
293
320
|
fixedValue: false,
|
294
321
|
singleChoice: true,
|
295
322
|
},
|
323
|
+
///////////////////////////////////////// secondary fields /////////////////////////////////////////
|
296
324
|
{
|
297
|
-
attribute: 'Item.
|
298
|
-
label: '
|
299
|
-
description: '
|
325
|
+
attribute: ' Item.AutoPay',
|
326
|
+
label: 'AutoPay',
|
327
|
+
description: 'Indicates whether the seller requires immediate payment for the item',
|
328
|
+
required: false,
|
329
|
+
type: 'macro-input',
|
330
|
+
defaultValue: makeMacroString(SOURCE_EBAY_YES_NO, ['1']),
|
331
|
+
rules: { sections: [] },
|
332
|
+
baseMode: false,
|
333
|
+
validator: v => validateIfNoMacro(v, yesNoSchema),
|
334
|
+
fixedValue: true,
|
335
|
+
singleChoice: true,
|
336
|
+
},
|
337
|
+
{
|
338
|
+
attribute: 'Item.BestOfferEnabled',
|
339
|
+
label: 'Best Offer Enabled',
|
340
|
+
description: 'Indicates whether the seller is accepting Best Offers for the item',
|
341
|
+
required: false,
|
342
|
+
type: 'macro-input',
|
343
|
+
defaultValue: makeMacroString(SOURCE_EBAY_YES_NO, ['0']),
|
344
|
+
rules: { sections: [] },
|
345
|
+
baseMode: false,
|
346
|
+
validator: v => validateIfNoMacro(v, yesNoSchema),
|
347
|
+
fixedValue: true,
|
348
|
+
singleChoice: true,
|
349
|
+
},
|
350
|
+
{
|
351
|
+
attribute: 'Item.CategoryMappingAllowed',
|
352
|
+
label: 'Category Mapping Allowed',
|
353
|
+
description:
|
354
|
+
'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',
|
355
|
+
required: false,
|
356
|
+
type: 'macro-input',
|
357
|
+
defaultValue: makeMacroString(SOURCE_EBAY_YES_NO, ['1']),
|
358
|
+
rules: { sections: [] },
|
359
|
+
baseMode: false,
|
360
|
+
validator: v => validateIfNoMacro(v, yesNoSchema),
|
361
|
+
fixedValue: true,
|
362
|
+
singleChoice: true,
|
363
|
+
},
|
364
|
+
{
|
365
|
+
attribute: 'Item.ConditionID',
|
366
|
+
label: 'Condition',
|
367
|
+
description: 'The condition of the item. For example, New, Used, or Refurbished',
|
300
368
|
required: false,
|
301
369
|
type: 'macro-input',
|
302
370
|
defaultValue: '',
|
303
371
|
rules: { sections: [] },
|
304
372
|
baseMode: false,
|
305
|
-
fixedValue: false,
|
306
373
|
singleChoice: true,
|
307
374
|
},
|
375
|
+
// {
|
376
|
+
// attribute: 'Item.DiscountPriceInfo.MinimumAdvertisedPrice', // TODO: check if this is correct
|
377
|
+
// label: 'Discount Price',
|
378
|
+
// description: 'The discount price of the item',
|
379
|
+
// required: false,
|
380
|
+
// type: 'macro-input',
|
381
|
+
// defaultValue: makeMacroString(SOURCE_SHOPIFY_DESCRIPTION_HTML),
|
382
|
+
// rules: { sections: [] },
|
383
|
+
// baseMode: false,
|
384
|
+
// validator: v => validateIfNoMacro(v, z.coerce.number().positive()),
|
385
|
+
// singleChoice: true,
|
386
|
+
// },
|
308
387
|
{
|
309
|
-
attribute: 'Item.
|
310
|
-
label: '
|
311
|
-
description:
|
388
|
+
attribute: 'Item.DispatchTimeMax',
|
389
|
+
label: 'Dispatch Time Max',
|
390
|
+
description:
|
391
|
+
'The maximum number of business days the seller commits to for shipping an item to a buyer after receiving a cleared payment',
|
312
392
|
required: false,
|
313
393
|
type: 'macro-input',
|
314
394
|
defaultValue: '',
|
315
395
|
rules: { sections: [] },
|
316
|
-
baseMode:
|
396
|
+
baseMode: false,
|
397
|
+
validator: v => validateIfNoMacro(v, z.coerce.number().gte(0)),
|
398
|
+
singleChoice: true,
|
399
|
+
},
|
400
|
+
// TODO: add compatibility list items
|
401
|
+
// TODO: add item specifics
|
402
|
+
{
|
403
|
+
attribute: 'Item.ListingDuration',
|
404
|
+
label: 'Listing Duration',
|
405
|
+
description: 'The length of time the listing will be active',
|
406
|
+
required: false,
|
407
|
+
type: 'macro-input',
|
408
|
+
defaultValue: '', // TODO: add source
|
409
|
+
rules: { sections: [] },
|
410
|
+
baseMode: false,
|
411
|
+
fixedValue: true,
|
412
|
+
singleChoice: true,
|
413
|
+
},
|
414
|
+
// {
|
415
|
+
// attribute: 'Item.ListingType',
|
416
|
+
// label: 'Listing Type',
|
417
|
+
// description: 'The type of listing',
|
418
|
+
// required: true,
|
419
|
+
// type: 'macro-input',
|
420
|
+
// defaultValue: makeMacroString(SOURCE_EBAY_LISTING_TYPE, ['FixedPriceItem']),
|
421
|
+
// rules: { sections: [] },
|
422
|
+
// baseMode: true,
|
423
|
+
// fixedValue: true,
|
424
|
+
// singleChoice: true,
|
425
|
+
// },
|
426
|
+
// TODO: set PictureSource to Vendor
|
427
|
+
{
|
428
|
+
attribute: 'Item.PostalCode',
|
429
|
+
label: 'Postal Code',
|
430
|
+
description: 'The postal code where the item is located',
|
431
|
+
required: false,
|
432
|
+
type: 'macro-input',
|
433
|
+
defaultValue: makeMacroString(SOURCE_SHOPIFY_SHOP_POSTAL_CODE),
|
434
|
+
rules: { sections: [] },
|
435
|
+
baseMode: false,
|
436
|
+
singleChoice: true,
|
437
|
+
},
|
438
|
+
{
|
439
|
+
attribute: 'Item.ProductListingDetails.BrandMPN.Brand',
|
440
|
+
label: 'Brand',
|
441
|
+
description: 'The brand of the item',
|
442
|
+
required: false,
|
443
|
+
type: 'macro-input',
|
444
|
+
defaultValue: makeMacroString(SOURCE_SHOPIFY_VENDOR),
|
445
|
+
rules: { sections: [] },
|
446
|
+
validator: v => validateIfNoMacro(v, z.string().max(65).optional()),
|
447
|
+
baseMode: false,
|
317
448
|
fixedValue: false,
|
318
449
|
singleChoice: true,
|
319
450
|
},
|
451
|
+
// {
|
452
|
+
// attribute: 'Item.ProductListingDetails.BrandMPN.MPN',
|
453
|
+
// label: 'MPN',
|
454
|
+
// description: 'The Manufacturer Part Number of the item',
|
455
|
+
// required: false,
|
456
|
+
// type: 'macro-input',
|
457
|
+
// defaultValue: '',
|
458
|
+
// rules: { sections: [] },
|
459
|
+
// validator: v => validateIfNoMacro(v, z.string().max(65).optional()),
|
460
|
+
// baseMode: false,
|
461
|
+
// fixedValue: false,
|
462
|
+
// singleChoice: true,
|
463
|
+
// },
|
464
|
+
// {
|
465
|
+
// attribute: 'Item.ProductListingDetails.EAN',
|
466
|
+
// label: 'EAN',
|
467
|
+
// description: 'The European Article Number of the item',
|
468
|
+
// required: false,
|
469
|
+
// type: 'macro-input',
|
470
|
+
// defaultValue: '',
|
471
|
+
// rules: { sections: [] },
|
472
|
+
// baseMode: false,
|
473
|
+
// fixedValue: false,
|
474
|
+
// singleChoice: true,
|
475
|
+
// },
|
476
|
+
// {
|
477
|
+
// attribute: 'Item.ProductListingDetails.UPC',
|
478
|
+
// label: 'UPC',
|
479
|
+
// description: 'The Universal Product Code of the item',
|
480
|
+
// required: false,
|
481
|
+
// type: 'macro-input',
|
482
|
+
// defaultValue: '',
|
483
|
+
// rules: { sections: [] },
|
484
|
+
// baseMode: false,
|
485
|
+
// fixedValue: false,
|
486
|
+
// singleChoice: true,
|
487
|
+
// },
|
488
|
+
// {
|
489
|
+
// attribute: 'Item.Quantity',
|
490
|
+
// label: 'Quantity',
|
491
|
+
// description: 'The number of items available for purchase',
|
492
|
+
// required: false,
|
493
|
+
// type: 'macro-input',
|
494
|
+
// defaultValue: '',
|
495
|
+
// rules: { sections: [] },
|
496
|
+
// baseMode: true,
|
497
|
+
// fixedValue: false,
|
498
|
+
// singleChoice: true,
|
499
|
+
// },
|
320
500
|
{
|
321
501
|
attribute: 'Item.QuantityRestrictionPerBuyer.MaximumQuantity',
|
322
502
|
label: 'Maximum Quantity Per Buyer',
|
@@ -541,11 +721,37 @@ export const eBayFeedTemplate: XmlFeedTemplateType = {
|
|
541
721
|
fixedValue: true,
|
542
722
|
singleChoice: true,
|
543
723
|
},
|
544
|
-
{
|
545
|
-
|
546
|
-
|
724
|
+
// {
|
725
|
+
// attribute: 'Item.ShippingPackageDetails.WeightMajor',
|
726
|
+
// label: 'Weight Major',
|
727
|
+
// description:
|
728
|
+
// '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',
|
729
|
+
// required: false,
|
730
|
+
// type: 'macro-input',
|
731
|
+
// defaultValue: '',
|
732
|
+
// rules: { sections: [] },
|
733
|
+
// baseMode: false,
|
734
|
+
// fixedValue: false,
|
735
|
+
// singleChoice: true,
|
736
|
+
// },
|
737
|
+
// {
|
738
|
+
// attribute: 'Item.ShippingPackageDetails.WeightMinor',
|
739
|
+
// label: 'Weight Minor',
|
740
|
+
// description:
|
741
|
+
// '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',
|
742
|
+
// required: false,
|
743
|
+
// type: 'macro-input',
|
744
|
+
// defaultValue: '',
|
745
|
+
// rules: { sections: [] },
|
746
|
+
// baseMode: false,
|
747
|
+
// fixedValue: false,
|
748
|
+
// singleChoice: true,
|
749
|
+
// },
|
750
|
+
{
|
751
|
+
attribute: 'ShippingWeight',
|
752
|
+
label: 'Shipping Weight',
|
547
753
|
description:
|
548
|
-
'
|
754
|
+
'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',
|
549
755
|
required: false,
|
550
756
|
type: 'macro-input',
|
551
757
|
defaultValue: '',
|
@@ -555,10 +761,45 @@ export const eBayFeedTemplate: XmlFeedTemplateType = {
|
|
555
761
|
singleChoice: true,
|
556
762
|
},
|
557
763
|
{
|
558
|
-
attribute: 'Item.
|
559
|
-
label: '
|
560
|
-
description:
|
561
|
-
|
764
|
+
attribute: 'Item.Storefront.StoreCategoryID',
|
765
|
+
label: 'Store Category ID',
|
766
|
+
description: 'The ID of the store category',
|
767
|
+
required: false,
|
768
|
+
type: 'macro-input',
|
769
|
+
defaultValue: '',
|
770
|
+
rules: { sections: [] },
|
771
|
+
baseMode: false,
|
772
|
+
fixedValue: false,
|
773
|
+
singleChoice: true,
|
774
|
+
},
|
775
|
+
{
|
776
|
+
attribute: 'Item.Storefront.StoreCategoryName',
|
777
|
+
label: 'Store Category Name',
|
778
|
+
description: 'The name of the store category',
|
779
|
+
required: false,
|
780
|
+
type: 'macro-input',
|
781
|
+
defaultValue: '',
|
782
|
+
rules: { sections: [] },
|
783
|
+
baseMode: false,
|
784
|
+
fixedValue: false,
|
785
|
+
singleChoice: true,
|
786
|
+
},
|
787
|
+
{
|
788
|
+
attribute: 'Item.Storefront.StoreCategory2ID',
|
789
|
+
label: 'Store Secondary Category ID',
|
790
|
+
description: 'The ID of the store secondary category',
|
791
|
+
required: false,
|
792
|
+
type: 'macro-input',
|
793
|
+
defaultValue: '',
|
794
|
+
rules: { sections: [] },
|
795
|
+
baseMode: false,
|
796
|
+
fixedValue: false,
|
797
|
+
singleChoice: true,
|
798
|
+
},
|
799
|
+
{
|
800
|
+
attribute: 'Item.Storefront.StoreCategory2Name',
|
801
|
+
label: 'Store Secondary Category Name',
|
802
|
+
description: 'The name of the store secondary category',
|
562
803
|
required: false,
|
563
804
|
type: 'macro-input',
|
564
805
|
defaultValue: '',
|
@@ -567,5 +808,17 @@ export const eBayFeedTemplate: XmlFeedTemplateType = {
|
|
567
808
|
fixedValue: false,
|
568
809
|
singleChoice: true,
|
569
810
|
},
|
811
|
+
// {
|
812
|
+
// attribute: 'Item.VideoDetails.VideoID',
|
813
|
+
// label: 'Video',
|
814
|
+
// description: 'The title of the item',
|
815
|
+
// required: false,
|
816
|
+
// type: 'macro-input',
|
817
|
+
// defaultValue: '',
|
818
|
+
// rules: { sections: [] },
|
819
|
+
// baseMode: false,
|
820
|
+
// fixedValue: false,
|
821
|
+
// singleChoice: true,
|
822
|
+
// },
|
570
823
|
],
|
571
824
|
};
|