@isoftdata/svelte-ecommerce 1.0.0-beta.0
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/README.md +58 -0
- package/dist/EcommerceCategoryMapConfiguration.svelte +266 -0
- package/dist/EcommerceCategoryMapConfiguration.svelte.d.ts +14 -0
- package/dist/EcommerceConditionMapConfiguration.svelte +214 -0
- package/dist/EcommerceConditionMapConfiguration.svelte.d.ts +10 -0
- package/dist/EcommerceConfiguration.svelte +195 -0
- package/dist/EcommerceConfiguration.svelte.d.ts +22 -0
- package/dist/EcommerceDefaults.svelte +357 -0
- package/dist/EcommerceDefaults.svelte.d.ts +12 -0
- package/dist/EcommerceListingDetails.svelte +986 -0
- package/dist/EcommerceListingDetails.svelte.d.ts +18 -0
- package/dist/EcommercePartTypeConfig.svelte +305 -0
- package/dist/EcommercePartTypeConfig.svelte.d.ts +15 -0
- package/dist/EcommerceStoreConfiguration.svelte +263 -0
- package/dist/EcommerceStoreConfiguration.svelte.d.ts +13 -0
- package/dist/PolicyList.svelte +66 -0
- package/dist/PolicyList.svelte.d.ts +10 -0
- package/dist/data/ebay.d.ts +11 -0
- package/dist/data/ebay.js +31 -0
- package/dist/data/htp.d.ts +9 -0
- package/dist/data/htp.js +22 -0
- package/dist/data/index.d.ts +4 -0
- package/dist/data/index.js +6 -0
- package/dist/data/types.d.ts +4 -0
- package/dist/data/types.js +1 -0
- package/dist/helpers/index.d.ts +3 -0
- package/dist/helpers/index.js +3 -0
- package/dist/helpers/listing.d.ts +22 -0
- package/dist/helpers/listing.js +324 -0
- package/dist/helpers/template.d.ts +31 -0
- package/dist/helpers/template.js +131 -0
- package/dist/helpers/validation.d.ts +2 -0
- package/dist/helpers/validation.js +91 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.js +11 -0
- package/dist/utils.d.ts +321 -0
- package/dist/utils.js +1 -0
- package/package.json +66 -0
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
// Pretty basic method to verify all required fields, the ebay-utility is more thorough on certain types
|
|
2
|
+
// We could've just done required fields (and we may still), but this is a way to get a full list and to know when to set the active flag
|
|
3
|
+
export function validateInventoryListingDetails(listingDetails) {
|
|
4
|
+
const validationErrors = [];
|
|
5
|
+
// Helper function for required integer fields
|
|
6
|
+
const validateRequiredIntegers = (fields) => {
|
|
7
|
+
fields.forEach(({ key, name }) => {
|
|
8
|
+
const value = listingDetails[key];
|
|
9
|
+
if (value == null || value === undefined) {
|
|
10
|
+
validationErrors.push(`${name} is required`);
|
|
11
|
+
}
|
|
12
|
+
else if (!Number.isInteger(value)) {
|
|
13
|
+
validationErrors.push(`${name} must be a positive integer`);
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
// Helper function for required string fields
|
|
18
|
+
const validateRequiredStrings = (fields) => {
|
|
19
|
+
fields.forEach(({ key, name }) => {
|
|
20
|
+
const value = listingDetails[key];
|
|
21
|
+
if (value == null || value === undefined || value === '') {
|
|
22
|
+
validationErrors.push(`${name} is required`);
|
|
23
|
+
}
|
|
24
|
+
else if (typeof value !== 'string') {
|
|
25
|
+
validationErrors.push(`${name} must be a string`);
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
};
|
|
29
|
+
// Helper function for required number fields (decimals/floats)
|
|
30
|
+
const validateRequiredNumbers = (fields) => {
|
|
31
|
+
fields.forEach(({ key, name, allowZero = false }) => {
|
|
32
|
+
const value = listingDetails[key];
|
|
33
|
+
if (value == null || value === undefined) {
|
|
34
|
+
validationErrors.push(`${name} is required`);
|
|
35
|
+
}
|
|
36
|
+
else if (typeof value !== 'number' || isNaN(value)) {
|
|
37
|
+
validationErrors.push(`${name} must be a valid number`);
|
|
38
|
+
}
|
|
39
|
+
else if (!allowZero && value <= 0) {
|
|
40
|
+
validationErrors.push(`${name} must be greater than zero`);
|
|
41
|
+
}
|
|
42
|
+
else if (allowZero && value < 0) {
|
|
43
|
+
validationErrors.push(`${name} must be zero or greater`);
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
};
|
|
47
|
+
// Required integer fields
|
|
48
|
+
validateRequiredIntegers([
|
|
49
|
+
{ key: 'inventoryId', name: 'Tag #' },
|
|
50
|
+
{ key: 'ecommercePartnerId', name: 'Ecommerce Partner' },
|
|
51
|
+
{ key: 'storeId', name: 'Store' },
|
|
52
|
+
{ key: 'ecommerceCategoryId', name: 'Ebay Category Id' },
|
|
53
|
+
{ key: 'ecommerceConditionId', name: 'Ebay Condition Id' },
|
|
54
|
+
{ key: 'fulfillmentTime', name: 'Fulfillment Time' },
|
|
55
|
+
{ key: 'shippingLength', name: 'Shipping Length' },
|
|
56
|
+
{ key: 'shippingWidth', name: 'Shipping Width' },
|
|
57
|
+
{ key: 'shippingHeight', name: 'Shipping Height' },
|
|
58
|
+
]);
|
|
59
|
+
validateRequiredStrings([
|
|
60
|
+
{ key: 'duration', name: 'Listing Duration' },
|
|
61
|
+
{ key: 'ecommerceConditionDescription', name: 'Condition Description' },
|
|
62
|
+
{ key: 'fulfillmentTimeUnit', name: 'Fulfillment Time Unit' },
|
|
63
|
+
{ key: 'listingDescription', name: 'Listing Description' },
|
|
64
|
+
{ key: 'listingTitle', name: 'Listing Title' },
|
|
65
|
+
{ key: 'inventoryDescription', name: 'Inventory Description' },
|
|
66
|
+
{ key: 'weightUnit', name: 'Weight Unit' },
|
|
67
|
+
{ key: 'shippingLengthUnit', name: 'Length Unit' },
|
|
68
|
+
{ key: 'shippingPackage', name: 'Shipping Package' },
|
|
69
|
+
]);
|
|
70
|
+
validateRequiredNumbers([
|
|
71
|
+
{ key: 'price', name: 'Price' },
|
|
72
|
+
{ key: 'weight', name: 'Weight', allowZero: true }
|
|
73
|
+
]);
|
|
74
|
+
// TODO: add public check and quantity check to ebay listing helper
|
|
75
|
+
// price
|
|
76
|
+
// quantity
|
|
77
|
+
// weight
|
|
78
|
+
if (!listingDetails.imageUrls?.length) {
|
|
79
|
+
validationErrors.push('Image Required');
|
|
80
|
+
}
|
|
81
|
+
if (!listingDetails.partnerSpecificDetails?.fulfillmentPolicy?.length) {
|
|
82
|
+
validationErrors.push('Fulfillment Policy Required');
|
|
83
|
+
}
|
|
84
|
+
if (!listingDetails.partnerSpecificDetails?.paymentPolicy?.length) {
|
|
85
|
+
validationErrors.push('Payment Policy Required');
|
|
86
|
+
}
|
|
87
|
+
if (!listingDetails.partnerSpecificDetails?.returnPolicy?.length) {
|
|
88
|
+
validationErrors.push('Return Policy Required');
|
|
89
|
+
}
|
|
90
|
+
return validationErrors;
|
|
91
|
+
}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export { default as EcommerceDefaults } from './EcommerceDefaults.svelte';
|
|
2
|
+
export { default as EcommerceConfiguration } from './EcommerceConfiguration.svelte';
|
|
3
|
+
export { default as EcommerceConditionMapConfiguration } from './EcommerceConditionMapConfiguration.svelte';
|
|
4
|
+
export { default as EcommerceCategorymapConfiguration } from './EcommerceCategoryMapConfiguration.svelte';
|
|
5
|
+
export { default as EcommerceListingDetails } from './EcommerceListingDetails.svelte';
|
|
6
|
+
export { default as EcommerceStoreConfiguration } from './EcommerceStoreConfiguration.svelte';
|
|
7
|
+
export { default as EcommercePartTypeConfiguration } from './EcommercePartTypeConfig.svelte';
|
|
8
|
+
export { buildEbayListing } from './helpers/index.js';
|
|
9
|
+
export { ecommercePartnerStaticData } from './data/index.js';
|
|
10
|
+
export type { PackageType } from './data/types.js';
|
|
11
|
+
export type { BuildEbayListingInput, EbayCategory, EbayCategoryMap, EbayLocation, EbayPolicy, EcommerceCondition, EcommerceConditionMap, EcommercePartnerConfiguration, EcommercePartnerDefaults, EcommerceStoreConfig, EcommerceSharedDefaults, ExtendedEbayCategoryMap, ExtendedEcommerceConditionMap, ExtendedInventoryTypeListingDefaults, FileItem, ImageUrl, InventoryDetailsForTemplate, InventoryListingDetail, InventoryType, InventoryTypeCategory, InventoryTypeListingDefaults, InventoryRow, NewInventoryListingDetail, NewInventoryTypeListingDefaults, Store } from './utils.js';
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// Export Svelte components
|
|
2
|
+
export { default as EcommerceDefaults } from './EcommerceDefaults.svelte';
|
|
3
|
+
export { default as EcommerceConfiguration } from './EcommerceConfiguration.svelte';
|
|
4
|
+
export { default as EcommerceConditionMapConfiguration } from './EcommerceConditionMapConfiguration.svelte';
|
|
5
|
+
export { default as EcommerceCategorymapConfiguration } from './EcommerceCategoryMapConfiguration.svelte';
|
|
6
|
+
export { default as EcommerceListingDetails } from './EcommerceListingDetails.svelte';
|
|
7
|
+
export { default as EcommerceStoreConfiguration } from './EcommerceStoreConfiguration.svelte';
|
|
8
|
+
export { default as EcommercePartTypeConfiguration } from './EcommercePartTypeConfig.svelte';
|
|
9
|
+
export { buildEbayListing } from './helpers/index.js';
|
|
10
|
+
// Export ecommerce data
|
|
11
|
+
export { ecommercePartnerStaticData } from './data/index.js';
|
package/dist/utils.d.ts
ADDED
|
@@ -0,0 +1,321 @@
|
|
|
1
|
+
export interface BuildEbayListingInput {
|
|
2
|
+
categoryMapping?: EbayCategoryMap;
|
|
3
|
+
conditionMapping?: EcommerceConditionMap;
|
|
4
|
+
ecommercePartnerConfiguration: EcommercePartnerConfiguration;
|
|
5
|
+
existingListing?: InventoryListingDetail | NewInventoryListingDetail;
|
|
6
|
+
inventoryRow: InventoryRow;
|
|
7
|
+
inventoryTypeListingDefaults?: ExtendedInventoryTypeListingDefaults[];
|
|
8
|
+
inventoryType?: InventoryType;
|
|
9
|
+
partFileList?: FileItem[];
|
|
10
|
+
}
|
|
11
|
+
export interface ConvertedEbayListingDetails {
|
|
12
|
+
imageUrls: ImageUrlsWithName[];
|
|
13
|
+
sku: string;
|
|
14
|
+
ebayInventoryItem: string;
|
|
15
|
+
listingDetails: string;
|
|
16
|
+
listingId: number;
|
|
17
|
+
}
|
|
18
|
+
export type EbayCategory = {
|
|
19
|
+
ebayCategoryId: number;
|
|
20
|
+
name: string;
|
|
21
|
+
};
|
|
22
|
+
export interface EbaySpecificListingDetails {
|
|
23
|
+
brand: string | null;
|
|
24
|
+
oemNumber: string | null;
|
|
25
|
+
listingFormat: string | null;
|
|
26
|
+
fulfillmentPolicy: string[] | null;
|
|
27
|
+
marketplaceId: string | null;
|
|
28
|
+
merchantLocationKey: string | null;
|
|
29
|
+
paymentPolicy: string[] | null;
|
|
30
|
+
returnPolicy: string[] | null;
|
|
31
|
+
}
|
|
32
|
+
export type EbayLocation = {
|
|
33
|
+
storeId: number;
|
|
34
|
+
details: string;
|
|
35
|
+
ebayName: string;
|
|
36
|
+
production: boolean;
|
|
37
|
+
};
|
|
38
|
+
export type EbayPolicy = {
|
|
39
|
+
details: string;
|
|
40
|
+
name: string;
|
|
41
|
+
policyId: string;
|
|
42
|
+
production: boolean;
|
|
43
|
+
policyType: string;
|
|
44
|
+
};
|
|
45
|
+
export interface PolicyRowWithChecked extends EbayPolicy {
|
|
46
|
+
checked: boolean;
|
|
47
|
+
}
|
|
48
|
+
export type EbayCategoryMap = {
|
|
49
|
+
ebayCategoryId: number;
|
|
50
|
+
typeNum: number;
|
|
51
|
+
vehicleType: string;
|
|
52
|
+
};
|
|
53
|
+
export type EcommerceCondition = {
|
|
54
|
+
ecommerceConditionId: number;
|
|
55
|
+
ecommercePartnerId: number;
|
|
56
|
+
conditionId: number;
|
|
57
|
+
name: string;
|
|
58
|
+
description: string;
|
|
59
|
+
};
|
|
60
|
+
export type EcommerceConditionMap = {
|
|
61
|
+
ecommerceConditionMapId: number;
|
|
62
|
+
ecommercePartnerId: number;
|
|
63
|
+
itrackCondition: string;
|
|
64
|
+
ecommerceConditionId: number;
|
|
65
|
+
description: string;
|
|
66
|
+
};
|
|
67
|
+
export type EcommercePartnerConfiguration = {
|
|
68
|
+
ecommercePartnerId: number;
|
|
69
|
+
name: string;
|
|
70
|
+
externalId: number | null;
|
|
71
|
+
active: boolean;
|
|
72
|
+
defaults?: EcommercePartnerDefaults;
|
|
73
|
+
};
|
|
74
|
+
export type EcommercePartnerDefaults = {
|
|
75
|
+
global: EcommerceSharedDefaults;
|
|
76
|
+
store: EcommerceStoreConfig[];
|
|
77
|
+
};
|
|
78
|
+
export type EcommerceSharedDefaults = {
|
|
79
|
+
brandMapping?: string;
|
|
80
|
+
conditionDescription?: string;
|
|
81
|
+
conditionId?: number;
|
|
82
|
+
fulfillmentPolicies?: string[];
|
|
83
|
+
fulfillmentTimeUnit?: string;
|
|
84
|
+
fulfillmentTimeValue?: number;
|
|
85
|
+
listingDescriptionTemplate?: string;
|
|
86
|
+
listingDuration?: string;
|
|
87
|
+
listingFormat?: string;
|
|
88
|
+
listingTitleTemplate?: string;
|
|
89
|
+
manufacturerPartNumberMapping?: string;
|
|
90
|
+
oemNumberMapping?: string;
|
|
91
|
+
packageType?: string;
|
|
92
|
+
paymentPolicies?: string[];
|
|
93
|
+
pricingModifier?: number;
|
|
94
|
+
returnPolicies?: string[];
|
|
95
|
+
shippingLengthUnit?: string;
|
|
96
|
+
shippingWeightUnit?: string;
|
|
97
|
+
storePickupAllowed?: boolean;
|
|
98
|
+
};
|
|
99
|
+
export type EcommerceStoreConfig = {
|
|
100
|
+
active: boolean;
|
|
101
|
+
defaults: EcommerceSharedDefaults;
|
|
102
|
+
merchantLocationKey?: string;
|
|
103
|
+
name: string;
|
|
104
|
+
storeId: number;
|
|
105
|
+
};
|
|
106
|
+
export interface ExtendedEbayCategoryMap extends EbayCategoryMap {
|
|
107
|
+
ebayCategoryName: string;
|
|
108
|
+
inventoryTypeName: string;
|
|
109
|
+
}
|
|
110
|
+
export interface ExtendedEcommerceConditionMap extends EcommerceConditionMap {
|
|
111
|
+
conditionId: number;
|
|
112
|
+
name: string;
|
|
113
|
+
}
|
|
114
|
+
export interface ExtendedInventoryTypeListingDefaults extends InventoryTypeListingDefaults {
|
|
115
|
+
categoryName: string;
|
|
116
|
+
inventoryType: number;
|
|
117
|
+
inventoryTypeName: string;
|
|
118
|
+
}
|
|
119
|
+
export type FileItem = {
|
|
120
|
+
createdDate: string;
|
|
121
|
+
fileId: number;
|
|
122
|
+
md5sum: string;
|
|
123
|
+
mimeType: string;
|
|
124
|
+
path: string;
|
|
125
|
+
public: boolean;
|
|
126
|
+
name: string;
|
|
127
|
+
rank: number;
|
|
128
|
+
size: number;
|
|
129
|
+
type: string;
|
|
130
|
+
updatedDate: string;
|
|
131
|
+
};
|
|
132
|
+
export type ImageUrl = {
|
|
133
|
+
fileId: number;
|
|
134
|
+
fileName: string;
|
|
135
|
+
rank: number;
|
|
136
|
+
mimeType: string;
|
|
137
|
+
};
|
|
138
|
+
export interface ImageUrlsWithName {
|
|
139
|
+
fileId: number;
|
|
140
|
+
name: string;
|
|
141
|
+
url: string;
|
|
142
|
+
}
|
|
143
|
+
export type InventoryDetailsForTemplate = {
|
|
144
|
+
inventoryId?: number;
|
|
145
|
+
vehicleMake?: string;
|
|
146
|
+
vehicleModel?: string;
|
|
147
|
+
year?: number;
|
|
148
|
+
description?: string;
|
|
149
|
+
price?: number;
|
|
150
|
+
manufacturer?: string;
|
|
151
|
+
model?: string;
|
|
152
|
+
partType?: string;
|
|
153
|
+
category?: string;
|
|
154
|
+
store?: string;
|
|
155
|
+
productCode?: number;
|
|
156
|
+
tagNumber?: string;
|
|
157
|
+
condition?: string;
|
|
158
|
+
flexLabel1?: string;
|
|
159
|
+
flexLabel2?: string;
|
|
160
|
+
flexLabel3?: string;
|
|
161
|
+
flexLabel4?: string;
|
|
162
|
+
flexValue1?: string;
|
|
163
|
+
flexValue2?: string;
|
|
164
|
+
flexValue3?: string;
|
|
165
|
+
flexValue4?: string;
|
|
166
|
+
oemNumber?: string;
|
|
167
|
+
side?: string;
|
|
168
|
+
make?: string;
|
|
169
|
+
serialNumber?: string;
|
|
170
|
+
weight?: number;
|
|
171
|
+
upc?: string;
|
|
172
|
+
notes?: string;
|
|
173
|
+
quantity?: number;
|
|
174
|
+
partManufacturer?: string;
|
|
175
|
+
partModel?: string;
|
|
176
|
+
};
|
|
177
|
+
export interface InventoryListingDetail {
|
|
178
|
+
inventoryListingDetailId: number;
|
|
179
|
+
active: boolean;
|
|
180
|
+
convertedListingDetails: ConvertedEbayListingDetails | null;
|
|
181
|
+
duration: string | null;
|
|
182
|
+
ecommercePartnerId: number;
|
|
183
|
+
ecommerceCategoryId: number | null;
|
|
184
|
+
ecommerceConditionId: number | null;
|
|
185
|
+
ecommerceConditionDescription: string | null;
|
|
186
|
+
fulfillmentTime: number | null;
|
|
187
|
+
fulfillmentTimeUnit: string | null;
|
|
188
|
+
imageUrls: ImageUrl[];
|
|
189
|
+
inventoryId: number;
|
|
190
|
+
inventoryDescription: string | null;
|
|
191
|
+
lastUpdate: string;
|
|
192
|
+
listingDescription: string | null;
|
|
193
|
+
listingStatus: 'error' | 'listed' | 'pending' | 'cancelled';
|
|
194
|
+
listingTitle: string | null;
|
|
195
|
+
manufacturerPartNumber: string | null;
|
|
196
|
+
message: MessageObj[];
|
|
197
|
+
price: number | null;
|
|
198
|
+
quantity: number | null;
|
|
199
|
+
sku: string | null;
|
|
200
|
+
storeId: number;
|
|
201
|
+
upc: string;
|
|
202
|
+
partnerSpecificDetails: EbaySpecificListingDetails;
|
|
203
|
+
shippingLength: number | null;
|
|
204
|
+
shippingWidth: number | null;
|
|
205
|
+
shippingHeight: number | null;
|
|
206
|
+
shippingLengthUnit: string | null;
|
|
207
|
+
shippingPackage: string | null;
|
|
208
|
+
weight: number | null;
|
|
209
|
+
weightUnit: string | null;
|
|
210
|
+
}
|
|
211
|
+
export type InventoryType = {
|
|
212
|
+
inventoryTypeId: number;
|
|
213
|
+
name: string;
|
|
214
|
+
partListAuthorityId: number | null;
|
|
215
|
+
vehicleUnit: boolean;
|
|
216
|
+
willShowOnline: boolean;
|
|
217
|
+
};
|
|
218
|
+
export type InventoryTypeCategory = {
|
|
219
|
+
categoryId: number;
|
|
220
|
+
description: string | null;
|
|
221
|
+
isoftCategoryId: number | null;
|
|
222
|
+
name: string;
|
|
223
|
+
partListAuthorityId: number | null;
|
|
224
|
+
typeSetId: number;
|
|
225
|
+
userEditable: boolean;
|
|
226
|
+
};
|
|
227
|
+
export type InventoryTypeListingDefaults = {
|
|
228
|
+
active: boolean;
|
|
229
|
+
categoryId?: number;
|
|
230
|
+
defaults: EcommerceSharedDefaults;
|
|
231
|
+
ecommercePartnerId: number;
|
|
232
|
+
inventoryTypeId: number;
|
|
233
|
+
inventoryTypeListingConfigurationId: number;
|
|
234
|
+
};
|
|
235
|
+
export interface InventoryRow {
|
|
236
|
+
inventoryId: number;
|
|
237
|
+
storeId: number;
|
|
238
|
+
tagNumber: string | null;
|
|
239
|
+
inventoryTypeId: number | null;
|
|
240
|
+
partManufacturer: string | null;
|
|
241
|
+
partModel: string | null;
|
|
242
|
+
category: string | null;
|
|
243
|
+
parentInventoryId: number;
|
|
244
|
+
vehicleId: number | null;
|
|
245
|
+
vin: string;
|
|
246
|
+
make: string;
|
|
247
|
+
model: string;
|
|
248
|
+
year: number | null;
|
|
249
|
+
bodyStyle: string | null;
|
|
250
|
+
core: number | null;
|
|
251
|
+
cost: number | null;
|
|
252
|
+
retailPrice: number | null;
|
|
253
|
+
wholesalePrice: number | null;
|
|
254
|
+
listPrice: number | null;
|
|
255
|
+
status: string;
|
|
256
|
+
side: 'Left' | 'Right' | '';
|
|
257
|
+
location: string | null;
|
|
258
|
+
condition: string | null;
|
|
259
|
+
serialNumber: string | null;
|
|
260
|
+
oemNumber: string | null;
|
|
261
|
+
upc: string;
|
|
262
|
+
replenish: boolean;
|
|
263
|
+
deplete: boolean;
|
|
264
|
+
isTaxable: boolean;
|
|
265
|
+
isWorldViewable: boolean;
|
|
266
|
+
tag: string;
|
|
267
|
+
isTagPerQuantity: string;
|
|
268
|
+
quantity: number | null;
|
|
269
|
+
minimumQuantity: number | null;
|
|
270
|
+
maximumQuantity: number | null;
|
|
271
|
+
description: string | null;
|
|
272
|
+
notes: string | null;
|
|
273
|
+
weight: number;
|
|
274
|
+
shippingLength: number | null;
|
|
275
|
+
shippingWidth: number | null;
|
|
276
|
+
shippingHeight: number | null;
|
|
277
|
+
label1: string;
|
|
278
|
+
data1: string;
|
|
279
|
+
label2: string;
|
|
280
|
+
data2: string;
|
|
281
|
+
label3: string;
|
|
282
|
+
data3: string;
|
|
283
|
+
label4: string;
|
|
284
|
+
data4: string;
|
|
285
|
+
interchangeNumber: string;
|
|
286
|
+
interchangeOptionNotes: string | null;
|
|
287
|
+
enteredDate: Date | string;
|
|
288
|
+
lastModifiedDate: Date | string;
|
|
289
|
+
lastModifiedByUser: string | null;
|
|
290
|
+
enteredByUser: string;
|
|
291
|
+
partFirstYear: string | null;
|
|
292
|
+
partLastYear: string | null;
|
|
293
|
+
destination: string;
|
|
294
|
+
buildId: number | null;
|
|
295
|
+
vendorId: number | null;
|
|
296
|
+
saleClassCode: string | null;
|
|
297
|
+
searchKeywords: string | null;
|
|
298
|
+
}
|
|
299
|
+
export interface MessageObj {
|
|
300
|
+
type: string;
|
|
301
|
+
messages: unknown[];
|
|
302
|
+
}
|
|
303
|
+
export type NewEcommerceConditionMap = Omit<EcommerceConditionMap, 'ecommerceConditionMapId'>;
|
|
304
|
+
export type NewInventoryTypeListingDefaults = Omit<InventoryTypeListingDefaults, 'inventoryTypeListingConfigurationId'>;
|
|
305
|
+
export type NewInventoryListingDetail = Omit<InventoryListingDetail, 'inventoryListingDetailId'>;
|
|
306
|
+
export type NewConditionMappingState = {
|
|
307
|
+
ecommerceConditionMapId?: number;
|
|
308
|
+
ecommercePartnerId?: number;
|
|
309
|
+
itrackCondition: string | null;
|
|
310
|
+
ecommerceConditionId: number | null;
|
|
311
|
+
description: string | null;
|
|
312
|
+
};
|
|
313
|
+
export interface SelectedEbayCategoryMapRow extends ExtendedEbayCategoryMap {
|
|
314
|
+
originalIndex: number;
|
|
315
|
+
uuid: string;
|
|
316
|
+
}
|
|
317
|
+
export type Store = {
|
|
318
|
+
companyCode?: number;
|
|
319
|
+
storeId: number;
|
|
320
|
+
name: string;
|
|
321
|
+
};
|
package/dist/utils.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/package.json
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@isoftdata/svelte-ecommerce",
|
|
3
|
+
"version": "1.0.0-beta.0",
|
|
4
|
+
"files": [
|
|
5
|
+
"dist",
|
|
6
|
+
"!dist/**/*.test.*",
|
|
7
|
+
"!dist/**/*.spec.*"
|
|
8
|
+
],
|
|
9
|
+
"sideEffects": [
|
|
10
|
+
"**/*.css"
|
|
11
|
+
],
|
|
12
|
+
"svelte": "./dist/index.js",
|
|
13
|
+
"types": "./dist/index.d.ts",
|
|
14
|
+
"type": "module",
|
|
15
|
+
"exports": {
|
|
16
|
+
".": {
|
|
17
|
+
"types": "./dist/index.d.ts",
|
|
18
|
+
"svelte": "./dist/index.js"
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"peerDependencies": {
|
|
22
|
+
"svelte": "^5.23.2"
|
|
23
|
+
},
|
|
24
|
+
"devDependencies": {
|
|
25
|
+
"@isoftdata/prettier-config": "^2.0.4",
|
|
26
|
+
"@sveltejs/adapter-auto": "^4.0.0",
|
|
27
|
+
"@sveltejs/kit": "^2.16.0",
|
|
28
|
+
"@sveltejs/package": "^2.0.0",
|
|
29
|
+
"@sveltejs/vite-plugin-svelte": "^5.0.0",
|
|
30
|
+
"prettier": "^3.6.2",
|
|
31
|
+
"prettier-plugin-svelte": "^3.4.0",
|
|
32
|
+
"publint": "^0.3.2",
|
|
33
|
+
"svelte": "^5.0.0",
|
|
34
|
+
"svelte-check": "^4.0.0",
|
|
35
|
+
"typescript": "^5.0.0",
|
|
36
|
+
"vite": "^6.0.0"
|
|
37
|
+
},
|
|
38
|
+
"keywords": [
|
|
39
|
+
"svelte"
|
|
40
|
+
],
|
|
41
|
+
"prettier": "@isoftdata/prettier-config",
|
|
42
|
+
"dependencies": {
|
|
43
|
+
"@isoftdata/svelte-attachments": "2.2.1",
|
|
44
|
+
"@isoftdata/svelte-button": "^2.1.1",
|
|
45
|
+
"@isoftdata/svelte-checkbox": "^2.5.0",
|
|
46
|
+
"@isoftdata/svelte-currency-input": "^2.0.1",
|
|
47
|
+
"@isoftdata/svelte-input": "^2.1.1",
|
|
48
|
+
"@isoftdata/svelte-modal": "^2.0.11",
|
|
49
|
+
"@isoftdata/svelte-select": "^2.0.4",
|
|
50
|
+
"@isoftdata/svelte-table": "^2.6.6",
|
|
51
|
+
"@isoftdata/svelte-textarea": "^2.1.0",
|
|
52
|
+
"@isoftdata/svelte-user-prompt": "^1.1.0",
|
|
53
|
+
"@isoftdata/utility-string": "^2.1.1",
|
|
54
|
+
"@lukeed/uuid": "2.0.1",
|
|
55
|
+
"i18next": "^25.5.3",
|
|
56
|
+
"klona": "^1.1.2",
|
|
57
|
+
"svelte": "^5.23.2"
|
|
58
|
+
},
|
|
59
|
+
"scripts": {
|
|
60
|
+
"dev": "vite dev",
|
|
61
|
+
"build": "vite build && npm run prepack",
|
|
62
|
+
"preview": "vite preview",
|
|
63
|
+
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
|
|
64
|
+
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch"
|
|
65
|
+
}
|
|
66
|
+
}
|