@isoftdata/ebay-utility 1.2.0 → 1.2.1

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.
Files changed (183) hide show
  1. package/package.json +1 -1
  2. package/lib/adapters/test-error-preservation.d.ts +0 -9
  3. package/lib/adapters/test-error-preservation.d.ts.map +0 -1
  4. package/lib/adapters/test-error-preservation.js +0 -203
  5. package/lib/adapters/test-error-preservation.js.map +0 -1
  6. package/lib/entities/itrack/FulfillmentPolicy.d.ts +0 -10
  7. package/lib/entities/itrack/FulfillmentPolicy.d.ts.map +0 -1
  8. package/lib/entities/itrack/FulfillmentPolicy.js +0 -2
  9. package/lib/entities/itrack/FulfillmentPolicy.js.map +0 -1
  10. package/lib/entities/itrack/ItrackEbayInventoryItem.js +0 -25
  11. package/lib/entities/itrack/ItrackEbayInventoryItem.js.map +0 -1
  12. package/lib/entities/itrack/ItrackEbayListing.d.ts +0 -45
  13. package/lib/entities/itrack/ItrackEbayListing.d.ts.map +0 -1
  14. package/lib/entities/itrack/ItrackEbayListing.js +0 -25
  15. package/lib/entities/itrack/ItrackEbayListing.js.map +0 -1
  16. package/lib/entities/itrack/PaymentPolicy.d.ts +0 -10
  17. package/lib/entities/itrack/PaymentPolicy.d.ts.map +0 -1
  18. package/lib/entities/itrack/PaymentPolicy.js +0 -2
  19. package/lib/entities/itrack/PaymentPolicy.js.map +0 -1
  20. package/lib/entities/itrack/ReturnPolicy.d.ts +0 -10
  21. package/lib/entities/itrack/ReturnPolicy.d.ts.map +0 -1
  22. package/lib/entities/itrack/ReturnPolicy.js +0 -2
  23. package/lib/entities/itrack/ReturnPolicy.js.map +0 -1
  24. package/lib/repositories/itrack/EbayInventoryItemRowRepo.d.ts +0 -27
  25. package/lib/repositories/itrack/EbayInventoryItemRowRepo.d.ts.map +0 -1
  26. package/lib/repositories/itrack/EbayInventoryItemRowRepo.js +0 -2
  27. package/lib/repositories/itrack/EbayInventoryItemRowRepo.js.map +0 -1
  28. package/lib/repositories/itrack/ItrackEbayFulfillmentPolicyRepo.d.ts +0 -11
  29. package/lib/repositories/itrack/ItrackEbayFulfillmentPolicyRepo.d.ts.map +0 -1
  30. package/lib/repositories/itrack/ItrackEbayFulfillmentPolicyRepo.js +0 -35
  31. package/lib/repositories/itrack/ItrackEbayFulfillmentPolicyRepo.js.map +0 -1
  32. package/lib/repositories/itrack/ItrackEbayInventoryItemRepo.js +0 -75
  33. package/lib/repositories/itrack/ItrackEbayInventoryItemRepo.js.map +0 -1
  34. package/lib/repositories/itrack/ItrackEbayListingRepo.d.ts +0 -8
  35. package/lib/repositories/itrack/ItrackEbayListingRepo.d.ts.map +0 -1
  36. package/lib/repositories/itrack/ItrackEbayListingRepo.js +0 -66
  37. package/lib/repositories/itrack/ItrackEbayListingRepo.js.map +0 -1
  38. package/lib/repositories/itrack/ItrackEbayPaymentPolicyRepo.d.ts +0 -11
  39. package/lib/repositories/itrack/ItrackEbayPaymentPolicyRepo.d.ts.map +0 -1
  40. package/lib/repositories/itrack/ItrackEbayPaymentPolicyRepo.js +0 -35
  41. package/lib/repositories/itrack/ItrackEbayPaymentPolicyRepo.js.map +0 -1
  42. package/lib/repositories/itrack/ItrackEbayReturnPolicyRepo.d.ts +0 -11
  43. package/lib/repositories/itrack/ItrackEbayReturnPolicyRepo.d.ts.map +0 -1
  44. package/lib/repositories/itrack/ItrackEbayReturnPolicyRepo.js +0 -34
  45. package/lib/repositories/itrack/ItrackEbayReturnPolicyRepo.js.map +0 -1
  46. package/lib/repositories/itrack/ItrackFulfillmentPolicyRepo.d.ts +0 -11
  47. package/lib/repositories/itrack/ItrackFulfillmentPolicyRepo.d.ts.map +0 -1
  48. package/lib/repositories/itrack/ItrackFulfillmentPolicyRepo.js +0 -35
  49. package/lib/repositories/itrack/ItrackFulfillmentPolicyRepo.js.map +0 -1
  50. package/lib/repositories/itrack/ItrackPaymentPolicyRepo.d.ts +0 -11
  51. package/lib/repositories/itrack/ItrackPaymentPolicyRepo.d.ts.map +0 -1
  52. package/lib/repositories/itrack/ItrackPaymentPolicyRepo.js +0 -35
  53. package/lib/repositories/itrack/ItrackPaymentPolicyRepo.js.map +0 -1
  54. package/lib/repositories/itrack/ItrackReturnPolicyRepo.d.ts +0 -11
  55. package/lib/repositories/itrack/ItrackReturnPolicyRepo.d.ts.map +0 -1
  56. package/lib/repositories/itrack/ItrackReturnPolicyRepo.js +0 -34
  57. package/lib/repositories/itrack/ItrackReturnPolicyRepo.js.map +0 -1
  58. package/lib/repositories/test-error-preservation.d.ts +0 -45
  59. package/lib/repositories/test-error-preservation.d.ts.map +0 -1
  60. package/lib/repositories/test-error-preservation.js +0 -125
  61. package/lib/repositories/test-error-preservation.js.map +0 -1
  62. package/lib/tests/processImageUrlTest.d.ts +0 -29
  63. package/lib/tests/processImageUrlTest.d.ts.map +0 -1
  64. package/lib/tests/processImageUrlTest.js +0 -402
  65. package/lib/tests/processImageUrlTest.js.map +0 -1
  66. package/lib/tests/test.d.ts +0 -2
  67. package/lib/tests/test.d.ts.map +0 -1
  68. package/lib/tests/test.js +0 -130
  69. package/lib/tests/test.js.map +0 -1
  70. package/lib/tests/tests.js +0 -130
  71. package/lib/tests/tests.js.map +0 -1
  72. package/lib/types/ErrorPreservation.d.ts +0 -154
  73. package/lib/types/ErrorPreservation.d.ts.map +0 -1
  74. package/lib/types/ErrorPreservation.js +0 -357
  75. package/lib/types/ErrorPreservation.js.map +0 -1
  76. package/lib/types/MysqlResponse.d.ts +0 -123
  77. package/lib/types/MysqlResponse.d.ts.map +0 -1
  78. package/lib/types/MysqlResponse.js +0 -236
  79. package/lib/types/MysqlResponse.js.map +0 -1
  80. package/lib/types/UseCaseResult.examples.d.ts +0 -42
  81. package/lib/types/UseCaseResult.examples.d.ts.map +0 -1
  82. package/lib/types/UseCaseResult.examples.js +0 -168
  83. package/lib/types/UseCaseResult.examples.js.map +0 -1
  84. package/lib/usecases/FulfillmentPolicy/AddFulfillmentPolicyToItrack.d.ts +0 -8
  85. package/lib/usecases/FulfillmentPolicy/AddFulfillmentPolicyToItrack.d.ts.map +0 -1
  86. package/lib/usecases/FulfillmentPolicy/AddFulfillmentPolicyToItrack.js +0 -5
  87. package/lib/usecases/FulfillmentPolicy/AddFulfillmentPolicyToItrack.js.map +0 -1
  88. package/lib/usecases/FulfillmentPolicy/GetFulfillmentPoliciesFromItrack.d.ts +0 -7
  89. package/lib/usecases/FulfillmentPolicy/GetFulfillmentPoliciesFromItrack.d.ts.map +0 -1
  90. package/lib/usecases/FulfillmentPolicy/GetFulfillmentPoliciesFromItrack.js +0 -5
  91. package/lib/usecases/FulfillmentPolicy/GetFulfillmentPoliciesFromItrack.js.map +0 -1
  92. package/lib/usecases/FulfillmentPolicy/RemoveFulfillmentPolicyFromItrack.d.ts +0 -8
  93. package/lib/usecases/FulfillmentPolicy/RemoveFulfillmentPolicyFromItrack.d.ts.map +0 -1
  94. package/lib/usecases/FulfillmentPolicy/RemoveFulfillmentPolicyFromItrack.js +0 -5
  95. package/lib/usecases/FulfillmentPolicy/RemoveFulfillmentPolicyFromItrack.js.map +0 -1
  96. package/lib/usecases/FulfillmentPolicy/SyncFulfillmentPolicy.d.ts +0 -11
  97. package/lib/usecases/FulfillmentPolicy/SyncFulfillmentPolicy.d.ts.map +0 -1
  98. package/lib/usecases/FulfillmentPolicy/SyncFulfillmentPolicy.js +0 -60
  99. package/lib/usecases/FulfillmentPolicy/SyncFulfillmentPolicy.js.map +0 -1
  100. package/lib/usecases/FulfillmentPolicy/UpdateFulfillmentPolicyFromItrack.d.ts +0 -8
  101. package/lib/usecases/FulfillmentPolicy/UpdateFulfillmentPolicyFromItrack.d.ts.map +0 -1
  102. package/lib/usecases/FulfillmentPolicy/UpdateFulfillmentPolicyFromItrack.js +0 -5
  103. package/lib/usecases/FulfillmentPolicy/UpdateFulfillmentPolicyFromItrack.js.map +0 -1
  104. package/lib/usecases/Inventory/ConvertInventoryItemToSku.js +0 -54
  105. package/lib/usecases/Inventory/ConvertInventoryItemToSku.js.map +0 -1
  106. package/lib/usecases/Listing/GetListingFromProduct.js +0 -15
  107. package/lib/usecases/Listing/GetListingFromProduct.js.map +0 -1
  108. package/lib/usecases/Listing/PushListingToEbay.js +0 -31
  109. package/lib/usecases/Listing/PushListingToEbay.js.map +0 -1
  110. package/lib/usecases/Listing/SyncListing.js +0 -182
  111. package/lib/usecases/Listing/SyncListing.js.map +0 -1
  112. package/lib/usecases/Listing_old/GetListingFromProduct.d.ts +0 -8
  113. package/lib/usecases/Listing_old/GetListingFromProduct.d.ts.map +0 -1
  114. package/lib/usecases/Listing_old/GetListingFromProduct.js +0 -6
  115. package/lib/usecases/Listing_old/GetListingFromProduct.js.map +0 -1
  116. package/lib/usecases/Listing_old/PushListingToEbay.d.ts +0 -16
  117. package/lib/usecases/Listing_old/PushListingToEbay.d.ts.map +0 -1
  118. package/lib/usecases/Listing_old/PushListingToEbay.js +0 -22
  119. package/lib/usecases/Listing_old/PushListingToEbay.js.map +0 -1
  120. package/lib/usecases/Listing_old/SyncListing.d.ts +0 -11
  121. package/lib/usecases/Listing_old/SyncListing.d.ts.map +0 -1
  122. package/lib/usecases/Listing_old/SyncListing.js +0 -173
  123. package/lib/usecases/Listing_old/SyncListing.js.map +0 -1
  124. package/lib/usecases/Offer/ConvertItrackInventoryListingDetailToEbayOffer.d.ts +0 -22
  125. package/lib/usecases/Offer/ConvertItrackInventoryListingDetailToEbayOffer.d.ts.map +0 -1
  126. package/lib/usecases/Offer/ConvertItrackInventoryListingDetailToEbayOffer.js +0 -67
  127. package/lib/usecases/Offer/ConvertItrackInventoryListingDetailToEbayOffer.js.map +0 -1
  128. package/lib/usecases/Offer/ConvertItrackListingToEbayOffer.d.ts +0 -17
  129. package/lib/usecases/Offer/ConvertItrackListingToEbayOffer.d.ts.map +0 -1
  130. package/lib/usecases/Offer/ConvertItrackListingToEbayOffer.js +0 -66
  131. package/lib/usecases/Offer/ConvertItrackListingToEbayOffer.js.map +0 -1
  132. package/lib/usecases/Offer/CreateEbayOffer.d.ts +0 -11
  133. package/lib/usecases/Offer/CreateEbayOffer.d.ts.map +0 -1
  134. package/lib/usecases/Offer/CreateEbayOffer.js +0 -31
  135. package/lib/usecases/Offer/CreateEbayOffer.js.map +0 -1
  136. package/lib/usecases/Offer/SyncEbayOffer.d.ts +0 -20
  137. package/lib/usecases/Offer/SyncEbayOffer.d.ts.map +0 -1
  138. package/lib/usecases/Offer/SyncEbayOffer.js +0 -49
  139. package/lib/usecases/Offer/SyncEbayOffer.js.map +0 -1
  140. package/lib/usecases/Offer/createOfferSample.d.ts +0 -1
  141. package/lib/usecases/Offer/createOfferSample.d.ts.map +0 -1
  142. package/lib/usecases/Offer/createOfferSample.js +0 -230
  143. package/lib/usecases/Offer/createOfferSample.js.map +0 -1
  144. package/lib/usecases/PaymentPolicy/AddPaymentPolicyToItrack.d.ts +0 -8
  145. package/lib/usecases/PaymentPolicy/AddPaymentPolicyToItrack.d.ts.map +0 -1
  146. package/lib/usecases/PaymentPolicy/AddPaymentPolicyToItrack.js +0 -5
  147. package/lib/usecases/PaymentPolicy/AddPaymentPolicyToItrack.js.map +0 -1
  148. package/lib/usecases/PaymentPolicy/GetPaymentPoliciesFromItrack.d.ts +0 -7
  149. package/lib/usecases/PaymentPolicy/GetPaymentPoliciesFromItrack.d.ts.map +0 -1
  150. package/lib/usecases/PaymentPolicy/GetPaymentPoliciesFromItrack.js +0 -5
  151. package/lib/usecases/PaymentPolicy/GetPaymentPoliciesFromItrack.js.map +0 -1
  152. package/lib/usecases/PaymentPolicy/RemovePaymentPolicyFromItrack.d.ts +0 -8
  153. package/lib/usecases/PaymentPolicy/RemovePaymentPolicyFromItrack.d.ts.map +0 -1
  154. package/lib/usecases/PaymentPolicy/RemovePaymentPolicyFromItrack.js +0 -5
  155. package/lib/usecases/PaymentPolicy/RemovePaymentPolicyFromItrack.js.map +0 -1
  156. package/lib/usecases/PaymentPolicy/UpdatePaymentPolicyFromItrack.d.ts +0 -8
  157. package/lib/usecases/PaymentPolicy/UpdatePaymentPolicyFromItrack.d.ts.map +0 -1
  158. package/lib/usecases/PaymentPolicy/UpdatePaymentPolicyFromItrack.js +0 -5
  159. package/lib/usecases/PaymentPolicy/UpdatePaymentPolicyFromItrack.js.map +0 -1
  160. package/lib/usecases/ReturnPolicy/AddReturnPolicyToItrack.d.ts +0 -8
  161. package/lib/usecases/ReturnPolicy/AddReturnPolicyToItrack.d.ts.map +0 -1
  162. package/lib/usecases/ReturnPolicy/AddReturnPolicyToItrack.js +0 -5
  163. package/lib/usecases/ReturnPolicy/AddReturnPolicyToItrack.js.map +0 -1
  164. package/lib/usecases/ReturnPolicy/GetReturnPoliciesFromItrack.d.ts +0 -7
  165. package/lib/usecases/ReturnPolicy/GetReturnPoliciesFromItrack.d.ts.map +0 -1
  166. package/lib/usecases/ReturnPolicy/GetReturnPoliciesFromItrack.js +0 -5
  167. package/lib/usecases/ReturnPolicy/GetReturnPoliciesFromItrack.js.map +0 -1
  168. package/lib/usecases/ReturnPolicy/RemoveReturnPolicyFromItrack.d.ts +0 -8
  169. package/lib/usecases/ReturnPolicy/RemoveReturnPolicyFromItrack.d.ts.map +0 -1
  170. package/lib/usecases/ReturnPolicy/RemoveReturnPolicyFromItrack.js +0 -5
  171. package/lib/usecases/ReturnPolicy/RemoveReturnPolicyFromItrack.js.map +0 -1
  172. package/lib/usecases/ReturnPolicy/UpdateReturnPolicyInItrack.d.ts +0 -8
  173. package/lib/usecases/ReturnPolicy/UpdateReturnPolicyInItrack.d.ts.map +0 -1
  174. package/lib/usecases/ReturnPolicy/UpdateReturnPolicyInItrack.js +0 -5
  175. package/lib/usecases/ReturnPolicy/UpdateReturnPolicyInItrack.js.map +0 -1
  176. package/lib/usecases/integration.test.d.ts +0 -33
  177. package/lib/usecases/integration.test.d.ts.map +0 -1
  178. package/lib/usecases/integration.test.js +0 -499
  179. package/lib/usecases/integration.test.js.map +0 -1
  180. /package/lib/usecases/Offer/{convertItrackListingToEbayInventoryAndOffer.d.ts → ConvertItrackListingToEbayInventoryAndOffer.d.ts} +0 -0
  181. /package/lib/usecases/Offer/{convertItrackListingToEbayInventoryAndOffer.d.ts.map → ConvertItrackListingToEbayInventoryAndOffer.d.ts.map} +0 -0
  182. /package/lib/usecases/Offer/{convertItrackListingToEbayInventoryAndOffer.js → ConvertItrackListingToEbayInventoryAndOffer.js} +0 -0
  183. /package/lib/usecases/Offer/{convertItrackListingToEbayInventoryAndOffer.js.map → ConvertItrackListingToEbayInventoryAndOffer.js.map} +0 -0
@@ -1,402 +0,0 @@
1
- import { test, describe } from 'node:test';
2
- import assert from 'node:assert/strict';
3
- /**
4
- * Accepts:
5
- * the raw string of imageUrls from the listing, should be stringified json array of imageUrl objects
6
- * file list results from db
7
- * Returns: stringified imageUrl list that can be tacked right onto the listing object for insert/update
8
- *
9
- * This function tries to compare the most recent file list for the inventory record with anything saved on the listing and:
10
- * Filters for acceptable mime types
11
- * Adds new items to the url array
12
- * Updates existing items if rank or name changes
13
- * Re-sorts to keep rank 1 at "top"
14
- *
15
- * TODO: need to make sure a specific type is used for file list so it's sharable
16
- * TODO: move this to the ebay-utility as a helper or just part of a method that creates a listing object
17
- * TODO: I believe there's a max 12 image, probably have to account for that including returning a message if exceeded?
18
- */
19
- function processImageUrls(existingImageUrls, partFileList) {
20
- let imageUrlArray = [];
21
- // Decided to leave this as the raw string from the inventorylisting query result
22
- if (existingImageUrls) {
23
- imageUrlArray = JSON.parse(existingImageUrls);
24
- }
25
- // Accepted image MIME types for eBay picture service
26
- const acceptedMimeTypes = [
27
- 'image/avif',
28
- 'image/bmp',
29
- 'image/gif',
30
- 'image/heic',
31
- 'image/jpeg',
32
- 'image/jpg',
33
- 'image/png',
34
- 'image/tiff',
35
- 'image/tif',
36
- 'image/webp'
37
- ];
38
- // Create a new array that will only contain valid files
39
- const updatedImageUrlArray = [];
40
- // Process each file in the most recent partFileList results for an inventory item
41
- for (const file of partFileList) {
42
- // Check if the file has an accepted mimeType
43
- if (!acceptedMimeTypes.includes(file.mimeType.toLowerCase())) {
44
- continue; // Skip files with unsupported mimeTypes
45
- }
46
- // Check if the file is public (skip if public is false)
47
- if (file.public === false) {
48
- continue; // Skip files that are not public (removes them from existing list)
49
- }
50
- // TODO: confirm that toString is needed (might be due to parse/stringify)
51
- const existingFile = imageUrlArray.find(item => item.fileId.toString() === file.fileId.toString());
52
- if (existingFile) {
53
- // File exists - update rank and name if needed
54
- updatedImageUrlArray.push({
55
- ...existingFile, // Need to retain the eBay-given url
56
- fileName: file.name, // Always update with current name
57
- rank: file.rank, // Always update with current rank
58
- });
59
- }
60
- else {
61
- // New file - add it
62
- updatedImageUrlArray.push({
63
- fileId: file.fileId,
64
- fileName: file.name,
65
- rank: file.rank,
66
- });
67
- }
68
- }
69
- // Sort by rank to maintain order, presumably the "top" image in the list of images given to eBay for a listing is shown first
70
- updatedImageUrlArray.sort((a, b) => a.rank - b.rank);
71
- // Stringify it so we return it in same format it was received
72
- return updatedImageUrlArray.length > 0 ? JSON.stringify(updatedImageUrlArray) : null;
73
- }
74
- const existingImageList = "[{\"fileId\":\"2551\",\"fileName\":\"20250503_162546.jpg\",\"rank\":1}]";
75
- const incomingImageList = [
76
- {
77
- name: '20250503_162546.jpg',
78
- fileId: 2551,
79
- createdDate: '2025-05-08 18:33:59',
80
- updatedDate: '2025-05-08 18:33:59',
81
- type: 'Image',
82
- md5sum: 'c3362b590bd015981108d5495382c8bf',
83
- size: 174763,
84
- public: true,
85
- rank: 1,
86
- mimeType: 'image/jpeg',
87
- path: '/attachments/c3362b590bd015981108d5495382c8bf2551/20250503_162546.jpg'
88
- },
89
- {
90
- name: '20250503_162453.jpg',
91
- fileId: 2550,
92
- createdDate: '2025-05-08 18:33:44',
93
- updatedDate: '2025-05-08 18:33:44',
94
- type: 'Image',
95
- md5sum: '883e2aa44d71d6cbe078d12e48db34d1',
96
- size: 127168,
97
- public: true,
98
- rank: 2,
99
- mimeType: 'image/jpeg',
100
- path: '/attachments/883e2aa44d71d6cbe078d12e48db34d12550/20250503_162453.jpg'
101
- }
102
- ];
103
- describe('processImageUrls', () => {
104
- // Helper function to create test FileItem
105
- const createFileItem = (fileId, name, rank) => ({
106
- fileId,
107
- name,
108
- rank,
109
- public: true,
110
- createdDate: '2025-01-01 00:00:00',
111
- updatedDate: '2025-01-01 00:00:00',
112
- type: 'Image',
113
- md5sum: 'test-hash',
114
- size: 100000,
115
- path: `/test/path/${name}`,
116
- mimeType: 'image/jpeg'
117
- });
118
- test('should add new items when existing list is null', () => {
119
- const fileList = [
120
- createFileItem(1, 'image1.jpg', 1),
121
- createFileItem(2, 'image2.jpg', 2)
122
- ];
123
- const result = processImageUrls(null, fileList);
124
- const parsed = JSON.parse(result);
125
- assert.strictEqual(parsed.length, 2);
126
- assert.strictEqual(parsed[0].fileId, 1);
127
- assert.strictEqual(parsed[0].fileName, 'image1.jpg');
128
- assert.strictEqual(parsed[0].rank, 1);
129
- assert.strictEqual(parsed[1].fileId, 2);
130
- assert.strictEqual(parsed[1].fileName, 'image2.jpg');
131
- assert.strictEqual(parsed[1].rank, 2);
132
- });
133
- test('should add new items when existing list is empty', () => {
134
- const fileList = [
135
- createFileItem(1, 'image1.jpg', 1)
136
- ];
137
- const result = processImageUrls('[]', fileList);
138
- const parsed = JSON.parse(result);
139
- assert.strictEqual(parsed.length, 1);
140
- assert.strictEqual(parsed[0].fileId, 1);
141
- assert.strictEqual(parsed[0].fileName, 'image1.jpg');
142
- assert.strictEqual(parsed[0].rank, 1);
143
- });
144
- test('should update existing items with new name and rank', () => {
145
- const existingList = JSON.stringify([
146
- { fileId: 1, fileName: 'old-name.jpg', rank: 5, imageUrl: 'http://example.com/old.jpg' }
147
- ]);
148
- const fileList = [
149
- createFileItem(1, 'new-name.jpg', 3)
150
- ];
151
- const result = processImageUrls(existingList, fileList);
152
- const parsed = JSON.parse(result);
153
- assert.strictEqual(parsed.length, 1);
154
- assert.strictEqual(parsed[0].fileId, 1);
155
- assert.strictEqual(parsed[0].fileName, 'new-name.jpg'); // Updated name
156
- assert.strictEqual(parsed[0].rank, 3); // Updated rank
157
- assert.strictEqual(parsed[0].imageUrl, 'http://example.com/old.jpg'); // Preserved imageUrl
158
- });
159
- test('should handle mixed operations: update existing and add new items', () => {
160
- const existingList = JSON.stringify([
161
- { fileId: 1, fileName: 'existing1.jpg', rank: 2 },
162
- { fileId: 3, fileName: 'existing3.jpg', rank: 4 }
163
- ]);
164
- const fileList = [
165
- createFileItem(1, 'updated1.jpg', 1), // Update existing
166
- createFileItem(2, 'new2.jpg', 3), // Add new
167
- createFileItem(3, 'updated3.jpg', 5) // Update existing
168
- ];
169
- const result = processImageUrls(existingList, fileList);
170
- const parsed = JSON.parse(result);
171
- assert.strictEqual(parsed.length, 3);
172
- // Should be sorted by rank
173
- assert.strictEqual(parsed[0].fileId, 1);
174
- assert.strictEqual(parsed[0].fileName, 'updated1.jpg');
175
- assert.strictEqual(parsed[0].rank, 1);
176
- assert.strictEqual(parsed[1].fileId, 2);
177
- assert.strictEqual(parsed[1].fileName, 'new2.jpg');
178
- assert.strictEqual(parsed[1].rank, 3);
179
- assert.strictEqual(parsed[2].fileId, 3);
180
- assert.strictEqual(parsed[2].fileName, 'updated3.jpg');
181
- assert.strictEqual(parsed[2].rank, 5);
182
- });
183
- test('should properly sort results by rank', () => {
184
- const fileList = [
185
- createFileItem(1, 'image1.jpg', 5),
186
- createFileItem(2, 'image2.jpg', 1),
187
- createFileItem(3, 'image3.jpg', 3)
188
- ];
189
- const result = processImageUrls(null, fileList);
190
- const parsed = JSON.parse(result);
191
- // Should be sorted by rank: 1, 3, 5
192
- assert.strictEqual(parsed[0].rank, 1);
193
- assert.strictEqual(parsed[0].fileId, 2);
194
- assert.strictEqual(parsed[1].rank, 3);
195
- assert.strictEqual(parsed[1].fileId, 3);
196
- assert.strictEqual(parsed[2].rank, 5);
197
- assert.strictEqual(parsed[2].fileId, 1);
198
- });
199
- test('should handle fileId as string in existing list', () => {
200
- const existingList = JSON.stringify([
201
- { fileId: '123', fileName: 'string-id.jpg', rank: 1 }
202
- ]);
203
- const fileList = [
204
- createFileItem(123, 'updated-string-id.jpg', 2)
205
- ];
206
- const result = processImageUrls(existingList, fileList);
207
- const parsed = JSON.parse(result);
208
- assert.strictEqual(parsed.length, 1);
209
- assert.strictEqual(parsed[0].fileId, '123'); // Should preserve original type
210
- assert.strictEqual(parsed[0].fileName, 'updated-string-id.jpg');
211
- assert.strictEqual(parsed[0].rank, 2);
212
- });
213
- test('should return null when file list is empty', () => {
214
- const existingList = JSON.stringify([
215
- { fileId: 1, fileName: 'existing.jpg', rank: 1 }
216
- ]);
217
- const result = processImageUrls(existingList, []);
218
- assert.strictEqual(result, null);
219
- });
220
- test('should return null when both existing and file list are empty', () => {
221
- const result = processImageUrls(null, []);
222
- assert.strictEqual(result, null);
223
- });
224
- test('should preserve additional properties from existing items', () => {
225
- const existingList = JSON.stringify([
226
- {
227
- fileId: 1,
228
- fileName: 'test.jpg',
229
- rank: 1,
230
- imageUrl: 'http://example.com/test.jpg',
231
- customProperty: 'preserved'
232
- }
233
- ]);
234
- const fileList = [
235
- createFileItem(1, 'updated-test.jpg', 2)
236
- ];
237
- const result = processImageUrls(existingList, fileList);
238
- const parsed = JSON.parse(result);
239
- assert.strictEqual(parsed[0].imageUrl, 'http://example.com/test.jpg');
240
- assert.strictEqual(parsed[0].customProperty, 'preserved');
241
- assert.strictEqual(parsed[0].fileName, 'updated-test.jpg'); // Updated
242
- assert.strictEqual(parsed[0].rank, 2); // Updated
243
- });
244
- test('should filter out files with unsupported mimeTypes', () => {
245
- const fileList = [
246
- createFileItem(1, 'image1.jpg', 1), // Valid - image/jpeg
247
- {
248
- ...createFileItem(2, 'document.pdf', 2),
249
- mimeType: 'application/pdf' // Invalid mimeType
250
- },
251
- {
252
- ...createFileItem(3, 'image3.png', 3),
253
- mimeType: 'image/png' // Valid
254
- },
255
- {
256
- ...createFileItem(4, 'video.mp4', 4),
257
- mimeType: 'video/mp4' // Invalid mimeType
258
- }
259
- ];
260
- const result = processImageUrls(null, fileList);
261
- const parsed = JSON.parse(result);
262
- // Should only include files with valid image mimeTypes
263
- assert.strictEqual(parsed.length, 2);
264
- assert.strictEqual(parsed[0].fileId, 1);
265
- assert.strictEqual(parsed[0].fileName, 'image1.jpg');
266
- assert.strictEqual(parsed[1].fileId, 3);
267
- assert.strictEqual(parsed[1].fileName, 'image3.png');
268
- });
269
- test('should handle case-insensitive mimeType checking', () => {
270
- const fileList = [
271
- {
272
- ...createFileItem(1, 'image1.jpg', 1),
273
- mimeType: 'IMAGE/JPEG' // Uppercase
274
- },
275
- {
276
- ...createFileItem(2, 'image2.png', 2),
277
- mimeType: 'Image/PNG' // Mixed case
278
- }
279
- ];
280
- const result = processImageUrls(null, fileList);
281
- const parsed = JSON.parse(result);
282
- assert.strictEqual(parsed.length, 2);
283
- assert.strictEqual(parsed[0].fileId, 1);
284
- assert.strictEqual(parsed[1].fileId, 2);
285
- });
286
- test('should support all accepted image mimeTypes', () => {
287
- const fileList = [
288
- { ...createFileItem(1, 'image.avif', 1), mimeType: 'image/avif' },
289
- { ...createFileItem(2, 'image.bmp', 2), mimeType: 'image/bmp' },
290
- { ...createFileItem(3, 'image.gif', 3), mimeType: 'image/gif' },
291
- { ...createFileItem(4, 'image.heic', 4), mimeType: 'image/heic' },
292
- { ...createFileItem(5, 'image.jpg', 5), mimeType: 'image/jpeg' },
293
- { ...createFileItem(6, 'image2.jpg', 6), mimeType: 'image/jpg' },
294
- { ...createFileItem(7, 'image.png', 7), mimeType: 'image/png' },
295
- { ...createFileItem(8, 'image.tif', 8), mimeType: 'image/tiff' },
296
- { ...createFileItem(9, 'image2.tif', 9), mimeType: 'image/tif' },
297
- { ...createFileItem(10, 'image.webp', 10), mimeType: 'image/webp' }
298
- ];
299
- const result = processImageUrls(null, fileList);
300
- const parsed = JSON.parse(result);
301
- // All should be included
302
- assert.strictEqual(parsed.length, 10);
303
- });
304
- test('should return null when all files have unsupported mimeTypes', () => {
305
- const fileList = [
306
- {
307
- ...createFileItem(1, 'document.pdf', 1),
308
- mimeType: 'application/pdf'
309
- },
310
- {
311
- ...createFileItem(2, 'video.mp4', 2),
312
- mimeType: 'video/mp4'
313
- }
314
- ];
315
- const result = processImageUrls(null, fileList);
316
- assert.strictEqual(result, null);
317
- });
318
- test('should handle real-world scenario from your example', () => {
319
- const existingImageList = "[{\"fileId\":\"2551\",\"fileName\":\"20250503_162546.jpg\",\"rank\":1}]";
320
- const incomingImageList = [
321
- {
322
- name: '20250503_162546.jpg',
323
- fileId: 2551,
324
- createdDate: '2025-05-08 18:33:59',
325
- updatedDate: '2025-05-08 18:33:59',
326
- type: 'Image',
327
- md5sum: 'c3362b590bd015981108d5495382c8bf',
328
- size: 174763,
329
- public: true,
330
- rank: 1,
331
- mimeType: 'image/jpeg',
332
- path: '/attachments/c3362b590bd015981108d5495382c8bf2551/20250503_162546.jpg'
333
- },
334
- {
335
- name: '20250503_162453.jpg',
336
- fileId: 2550,
337
- createdDate: '2025-05-08 18:33:44',
338
- updatedDate: '2025-05-08 18:33:44',
339
- type: 'Image',
340
- md5sum: '883e2aa44d71d6cbe078d12e48db34d1',
341
- size: 127168,
342
- public: true,
343
- rank: 2,
344
- mimeType: 'image/jpeg',
345
- path: '/attachments/883e2aa44d71d6cbe078d12e48db34d12550/20250503_162453.jpg'
346
- }
347
- ];
348
- const result = processImageUrls(existingImageList, incomingImageList);
349
- const parsed = JSON.parse(result);
350
- assert.strictEqual(parsed.length, 2);
351
- // First item should be updated existing item
352
- assert.strictEqual(parsed[0].fileId, '2551'); // Preserved as string
353
- assert.strictEqual(parsed[0].fileName, '20250503_162546.jpg');
354
- assert.strictEqual(parsed[0].rank, 1);
355
- // Second item should be new item
356
- assert.strictEqual(parsed[1].fileId, 2550);
357
- assert.strictEqual(parsed[1].fileName, '20250503_162453.jpg');
358
- assert.strictEqual(parsed[1].rank, 2);
359
- });
360
- test('should exclude files with public: false', () => {
361
- const fileList = [
362
- createFileItem(1, 'public-image.jpg', 1), // public: true (default from helper)
363
- {
364
- ...createFileItem(2, 'private-image.jpg', 2),
365
- public: false // Override to false
366
- },
367
- createFileItem(3, 'another-public.jpg', 3) // public: true (default from helper)
368
- ];
369
- const result = processImageUrls(null, fileList);
370
- const parsed = JSON.parse(result);
371
- // Should only include files with public: true
372
- assert.strictEqual(parsed.length, 2);
373
- assert.strictEqual(parsed[0].fileId, 1);
374
- assert.strictEqual(parsed[0].fileName, 'public-image.jpg');
375
- assert.strictEqual(parsed[1].fileId, 3);
376
- assert.strictEqual(parsed[1].fileName, 'another-public.jpg');
377
- });
378
- test('should remove existing files when they become private (public: false)', () => {
379
- const existingList = JSON.stringify([
380
- { fileId: 1, fileName: 'image1.jpg', rank: 1 },
381
- { fileId: 2, fileName: 'image2.jpg', rank: 2 },
382
- { fileId: 3, fileName: 'image3.jpg', rank: 3 }
383
- ]);
384
- const fileList = [
385
- createFileItem(1, 'image1.jpg', 1), // Still public
386
- {
387
- ...createFileItem(2, 'image2.jpg', 2),
388
- public: false // Now private - should be removed
389
- },
390
- createFileItem(3, 'image3.jpg', 3) // Still public
391
- ];
392
- const result = processImageUrls(existingList, fileList);
393
- const parsed = JSON.parse(result);
394
- // Should only include files 1 and 3 (file 2 removed because public: false)
395
- assert.strictEqual(parsed.length, 2);
396
- assert.strictEqual(parsed[0].fileId, 1);
397
- assert.strictEqual(parsed[0].fileName, 'image1.jpg');
398
- assert.strictEqual(parsed[1].fileId, 3);
399
- assert.strictEqual(parsed[1].fileName, 'image3.jpg');
400
- });
401
- });
402
- //# sourceMappingURL=processImageUrlTest.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"processImageUrlTest.js","sourceRoot":"","sources":["../../src/tests/processImageUrlTest.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../../src/tests/test.ts"],"names":[],"mappings":""}
package/lib/tests/test.js DELETED
@@ -1,130 +0,0 @@
1
- import { test } from 'uvu';
2
- import * as assert from 'uvu/assert';
3
- //.import { validatePackageWeightAndSize } from '../../../entities/ebay/InventoryItem.js'
4
- import { validatePackageWeightAndSize } from '../entities/ebay/InventoryItem.js';
5
- import { ValidationError } from '../entities/ebay/validation.js';
6
- import { EbayLengthUnitOfMeasureEnum, EbayWeightUnitOfMeasureEnum } from '../entities/ebay/PackageWeightAndSize.js';
7
- const compareArrays = (firstArray, secondArray, key) => {
8
- const newItems = firstArray.filter(item1 => !secondArray.some(item2 => item1[key] === item2[key]));
9
- const existingItems = firstArray.filter(item1 => secondArray.some(item2 => item1[key] === item2[key]));
10
- const unusedItems = secondArray.filter(item2 => !firstArray.some(item1 => item1[key] === item2[key]));
11
- return {
12
- newItems,
13
- existingItems,
14
- unusedItems,
15
- };
16
- };
17
- const policies1 = [
18
- { id: '1', name: 'Policy 1' },
19
- { id: '2', name: 'Policy 2' },
20
- { id: '3', name: 'Policy 3' },
21
- ];
22
- const policies2 = [
23
- { id: '2', name: 'Policy 2' },
24
- { id: '3', name: 'Policy 3' },
25
- { id: '4', name: 'Policy 4' },
26
- ];
27
- test('compareArrays should return correct comparison results', () => {
28
- const result = compareArrays(policies1, policies2, 'id');
29
- assert.equal(result.newItems, [{ id: '1', name: 'Policy 1' }]);
30
- assert.equal(result.existingItems, [
31
- { id: '2', name: 'Policy 2' },
32
- { id: '3', name: 'Policy 3' },
33
- ]);
34
- assert.equal(result.unusedItems, [{ id: '4', name: 'Policy 4' }]);
35
- });
36
- //test.run();
37
- test('validatePackageWeightAndSize should pass validation for valid input', () => {
38
- const packageWeightAndSize = {
39
- dimensions: {
40
- height: 10,
41
- length: 20,
42
- width: 15,
43
- unit: EbayLengthUnitOfMeasureEnum.Inch
44
- },
45
- weight: {
46
- value: 5,
47
- unit: EbayWeightUnitOfMeasureEnum.Pound
48
- }
49
- };
50
- const result = validatePackageWeightAndSize(packageWeightAndSize);
51
- assert.is(result, null);
52
- });
53
- test('validatePackageWeightAndSize should fail validation for height equal to 0', () => {
54
- const packageWeightAndSize = {
55
- dimensions: {
56
- height: 0,
57
- length: 20,
58
- width: 15,
59
- unit: EbayLengthUnitOfMeasureEnum.Inch
60
- },
61
- weight: {
62
- value: 5,
63
- unit: EbayWeightUnitOfMeasureEnum.Pound
64
- }
65
- };
66
- const result = validatePackageWeightAndSize(packageWeightAndSize);
67
- assert.instance(result, ValidationError);
68
- assert.is(result?.message, 'Error validating package weight and size');
69
- assert.is(result?.nestedErrors.length, 1);
70
- assert.is(result?.nestedErrors[0].message, 'Value of Height must be a number that is at least 1');
71
- });
72
- test('validatePackageWeightAndSize should fail validation for length equal to 0', () => {
73
- const packageWeightAndSize = {
74
- dimensions: {
75
- height: 10,
76
- length: 0,
77
- width: 15,
78
- unit: EbayLengthUnitOfMeasureEnum.Inch
79
- },
80
- weight: {
81
- value: 5,
82
- unit: EbayWeightUnitOfMeasureEnum.Pound
83
- }
84
- };
85
- const result = validatePackageWeightAndSize(packageWeightAndSize);
86
- assert.instance(result, ValidationError);
87
- assert.is(result?.message, 'Error validating package weight and size');
88
- assert.is(result?.nestedErrors.length, 1);
89
- assert.is(result?.nestedErrors[0].message, 'Value of Length must be a number that is at least 1');
90
- });
91
- test('validatePackageWeightAndSize should fail validation for width equal to 0', () => {
92
- const packageWeightAndSize = {
93
- dimensions: {
94
- height: 10,
95
- length: 20,
96
- width: 0,
97
- unit: EbayLengthUnitOfMeasureEnum.Inch
98
- },
99
- weight: {
100
- value: 5,
101
- unit: EbayWeightUnitOfMeasureEnum.Pound
102
- }
103
- };
104
- const result = validatePackageWeightAndSize(packageWeightAndSize);
105
- assert.instance(result, ValidationError);
106
- assert.is(result?.message, 'Error validating package weight and size');
107
- assert.is(result?.nestedErrors.length, 1);
108
- assert.is(result?.nestedErrors[0].message, 'Value of Width must be a number that is at least 1');
109
- });
110
- test('validatePackageWeightAndSize should fail validation for weight equal to 0', () => {
111
- const packageWeightAndSize = {
112
- dimensions: {
113
- height: 10,
114
- length: 20,
115
- width: 15,
116
- unit: EbayLengthUnitOfMeasureEnum.Inch
117
- },
118
- weight: {
119
- value: 0,
120
- unit: EbayWeightUnitOfMeasureEnum.Pound
121
- }
122
- };
123
- const result = validatePackageWeightAndSize(packageWeightAndSize);
124
- assert.instance(result, ValidationError);
125
- assert.is(result?.message, 'Error validating package weight and size');
126
- assert.is(result?.nestedErrors.length, 1);
127
- assert.is(result?.nestedErrors[0].message, 'Value of Weight must be a number that is at least 1');
128
- });
129
- test.run();
130
- //# sourceMappingURL=test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test.js","sourceRoot":"","sources":["../../src/tests/test.ts"],"names":[],"mappings":"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"}