@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,173 +0,0 @@
1
- import { getListingFromProduct } from './GetListingFromProduct.js';
2
- import { getFulfillmentPoliciesFromEbay } from '../FulfillmentPolicy/GetFulfillmentPoliciesFromEbay.js';
3
- import { getPaymentPoliciesFromEbay } from '../PaymentPolicy/GetPaymentPoliciesFromEbay.js';
4
- import { getReturnPoliciesFromEbay } from '../ReturnPolicy/GetReturnPoliciesFromEbay.js';
5
- import { FormatTypeEnum } from '../../entities/ebay/Offer.js';
6
- import { pushListingToEbay } from './PushListingToEbay.js';
7
- // // call the necessary functions from the services and repositories but not include the
8
- // // details of that logic here...it just coordinates the sequence of operations
9
- export const syncListing = async (params) => {
10
- // Step 1: Fetch the record from the ITrack database
11
- const mysql = { table: "inventory", id: params.id };
12
- const listingFromProduct = await getListingFromProduct({
13
- id: params.id,
14
- itrackAdapter: params.itrackAdapter,
15
- });
16
- // Step 2: Check if the record has a destination store, skip if not
17
- if (!params.tokenManager.validStores.includes(listingFromProduct.ebay.merchant_location_key)) {
18
- console.log("No destination store, skipping.");
19
- return;
20
- }
21
- // Step 3: Get fulfillment policies from eBay for the IDs
22
- const fulfillmentPolicyResponse = await params.ebayAdapter.getFulfillmentPolicyByName(listingFromProduct.ebay.fulfillment_policy, listingFromProduct.ebay.marketplace_id);
23
- if (fulfillmentPolicyResponse.success === false) {
24
- if (fulfillmentPolicyResponse.error.status === 404) {
25
- const fulfillmentPoliciesResponse = await getFulfillmentPoliciesFromEbay({
26
- ebayAdapter: params.ebayAdapter,
27
- });
28
- if (fulfillmentPoliciesResponse.success) {
29
- const fulfillmentPolicies = fulfillmentPoliciesResponse.data.fulfillmentPolicies.map(p => p.name);
30
- console.error({
31
- message: `Fulfillment Policy "${listingFromProduct.ebay.fulfillment_policy}" doesn't exist!`,
32
- data: { fulfillmentPolicies, fulfillmentPolicyResponse },
33
- context: "Ebay Adapter",
34
- mysql,
35
- });
36
- }
37
- else {
38
- console.error({
39
- message: `Fulfillment Policy "${listingFromProduct.ebay.fulfillment_policy}" doesn't exist!`,
40
- data: { fulfillmentPolicies: "could not retreive", fulfillmentPolicyResponse },
41
- context: "Ebay Adapter",
42
- mysql,
43
- });
44
- }
45
- }
46
- else {
47
- console.error({
48
- message: "Unknown Error when fetching Fulfillment Policy!",
49
- data: fulfillmentPolicyResponse,
50
- context: "Ebay Adapter",
51
- mysql,
52
- });
53
- }
54
- // If we can't use the assigned fulfillment policy, this is currently a fatal error as all items use the same policy.
55
- process.exit(1);
56
- }
57
- // Step 4: Get payment policies from eBay
58
- const paymentPolicyResponse = await params.ebayAdapter.getPaymentPolicyByName(listingFromProduct.ebay.payment_policy, listingFromProduct.ebay.marketplace_id);
59
- if (paymentPolicyResponse.success === false) {
60
- if (paymentPolicyResponse.error.status === 404) {
61
- const paymentPoliciesResponse = await getPaymentPoliciesFromEbay({
62
- ebayAdapter: params.ebayAdapter,
63
- });
64
- if (paymentPoliciesResponse.success) {
65
- const paymentPolicies = paymentPoliciesResponse.data.paymentPolicies.map(p => p.name);
66
- console.error({
67
- message: `Payment Policy "${listingFromProduct.ebay.payment_policy}" doesn't exist!`,
68
- data: { paymentPolicies, paymentPolicyResponse },
69
- context: "Ebay Adapter",
70
- mysql,
71
- });
72
- }
73
- else {
74
- console.error({
75
- message: `Payment Policy "${listingFromProduct.ebay.payment_policy}" doesn't exist!`,
76
- data: { paymentPolicies: "could not retrieve", paymentPolicyResponse },
77
- context: "Ebay Adapter",
78
- mysql,
79
- });
80
- }
81
- }
82
- else {
83
- console.error({
84
- message: "Unknown Error when fetching Payment Policy!",
85
- data: paymentPolicyResponse,
86
- context: "Ebay Adapter",
87
- mysql,
88
- });
89
- }
90
- // If we can't use the assigned payment policy, this is currently a fatal error as all items use the same policy.
91
- process.exit(1);
92
- }
93
- // Step 5: Get return policies from eBay
94
- const returnPolicyResponse = await params.ebayAdapter.getReturnPolicyByName(listingFromProduct.ebay.return_policy, listingFromProduct.ebay.marketplace_id);
95
- if (returnPolicyResponse.success === false) {
96
- if (returnPolicyResponse.error.status === 404) {
97
- const returnPoliciesFull = await getReturnPoliciesFromEbay({
98
- ebayAdapter: params.ebayAdapter,
99
- });
100
- if (returnPoliciesFull.success) {
101
- const returnPolicies = returnPoliciesFull.data.returnPolicies.map(p => p.name);
102
- console.error({
103
- message: `Return Policy "${listingFromProduct.ebay.return_policy}" doesn't exist!`,
104
- data: { returnPolicies, returnPolicyResponse },
105
- context: "Ebay Adapter",
106
- mysql,
107
- });
108
- }
109
- else {
110
- console.error({
111
- message: `Return Policy "${listingFromProduct.ebay.return_policy}" doesn't exist!`,
112
- data: { returnPolices: "could not retreive", returnPolicyResponse },
113
- context: "Ebay Adapter",
114
- mysql,
115
- });
116
- }
117
- }
118
- else {
119
- console.error({
120
- message: "Unknown Error when fetching Return Policy!",
121
- data: returnPolicyResponse,
122
- context: "Ebay Adapter",
123
- mysql,
124
- });
125
- }
126
- // If we can't use the assigned payment policy, this is currently a fatal error as all items use the same policy.
127
- process.exit(1);
128
- }
129
- // Step 6: Gather required documents?
130
- const fulfillmentPolicy = fulfillmentPolicyResponse.data;
131
- const paymentPolicy = paymentPolicyResponse.data;
132
- const returnPolicy = returnPolicyResponse.data;
133
- // Step 7: Convert the ITrack record to an eBay product
134
- const inventoryItem = {
135
- condition: listingFromProduct.ebay.condition,
136
- conditionDescription: listingFromProduct.ebay.conditionDescription,
137
- product: {
138
- description: listingFromProduct.ebay.description,
139
- title: listingFromProduct.ebay.title,
140
- }
141
- };
142
- // Step 8: Conver to Offer
143
- const offer = {
144
- categoryId: listingFromProduct.ebay.category_id,
145
- format: FormatTypeEnum.FixedPrice,
146
- sku: listingFromProduct.ebay.sku,
147
- marketplaceId: listingFromProduct.ebay.marketplace,
148
- listingPolicies: {
149
- fulfillmentPolicyId: fulfillmentPolicy.fulfillmentPolicyId,
150
- paymentPolicyId: paymentPolicy.paymentPolicyId,
151
- returnPolicyId: returnPolicy.returnPolicyId,
152
- },
153
- merchantLocationKey: listingFromProduct.ebay.merchant_location_key,
154
- pricingSummary: {
155
- price: {
156
- currency: listingFromProduct.ebay.price_currency,
157
- value: listingFromProduct.ebay.price_value,
158
- }
159
- }
160
- };
161
- // Step 9: Push the listing to eBay
162
- pushListingToEbay({
163
- ebayAdapter: params.ebayAdapter,
164
- listing: {
165
- inventoryItem,
166
- offer,
167
- shouldBeOnEbay: listingFromProduct.shouldBeOnEbay,
168
- sku: listingFromProduct.ebay.sku,
169
- },
170
- inventoryId: params.id
171
- });
172
- };
173
- //# sourceMappingURL=SyncListing.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SyncListing.js","sourceRoot":"","sources":["../../../src/usecases/Listing_old/SyncListing.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- import { InventoryItem } from "../../entities/ebay/InventoryItem.js";
2
- import { EbayOfferDetails, FormatTypeEnum } from "../../entities/ebay/Offer.js";
3
- import { MarketplaceEnum } from "../../entities/ebay/MarketplaceEnum.js";
4
- import { InventoryListingDetail } from "../../entities/itrack/InventoryListingDetail.js";
5
- import { ItrackEbayDefaults, ItrackAdapter } from "../../adapters/itrack/ItrackAdapter.js";
6
- export interface ItrackListingToEbayOfferInput {
7
- ebayDefaults: ItrackEbayDefaults;
8
- inventoryListingDetail: InventoryListingDetail;
9
- itrackAdapter: ItrackAdapter;
10
- }
11
- export interface OfferWithInventoryAndSku {
12
- sku: string;
13
- ebayInventoryItem: InventoryItem;
14
- listingDetails: Partial<EbayOfferDetails> & {
15
- categoryId: string;
16
- format: FormatTypeEnum;
17
- marketplaceId: MarketplaceEnum;
18
- merchantLocationKey: string;
19
- };
20
- }
21
- export declare const convertItrackListingToEbayOffer: (params: ItrackListingToEbayOfferInput) => Promise<OfferWithInventoryAndSku>;
22
- //# sourceMappingURL=ConvertItrackInventoryListingDetailToEbayOffer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ConvertItrackInventoryListingDetailToEbayOffer.d.ts","sourceRoot":"","sources":["../../../src/usecases/Offer/ConvertItrackInventoryListingDetailToEbayOffer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAA;AAIpE,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAA;AAExE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iDAAiD,CAAA;AACxF,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AAG1F,MAAM,WAAW,6BAA6B;IAC1C,YAAY,EAAE,kBAAkB,CAAC;IACjC,sBAAsB,EAAE,sBAAsB,CAAA;IAC9C,aAAa,EAAE,aAAa,CAAA;CAC/B;AAED,MAAM,WAAW,wBAAwB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,iBAAiB,EAAE,aAAa,CAAC;IACjC,cAAc,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG;QACxC,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,cAAc,CAAC;QACvB,aAAa,EAAE,eAAe,CAAC;QAC/B,mBAAmB,EAAE,MAAM,CAAC;KAC/B,CAAA;CACJ;AAYD,eAAO,MAAM,+BAA+B,GAAU,QAAQ,6BAA6B,KAAG,OAAO,CAAC,wBAAwB,CA0D7H,CAAA"}
@@ -1,67 +0,0 @@
1
- import { mapShippingLengthUnitToEbayEnum, mapShippingWeightUnitToEbayEnum, mapPackageTypeToEbayEnum } from "../../utils/utils.js";
2
- import { FormatTypeEnum } from "../../entities/ebay/Offer.js";
3
- import { ListingDurationEnum } from "../../entities/ebay/ListingDurationEnum.js";
4
- // TODO: I struggled a bit on how to handle condition and I expect it might change. Inventorylistingdetail row just has the ecommerceConditionId even though we have the
5
- // eBay enum value saved. So I can get and cache the e-commerce_condition values early on then try to match,
6
- // have a method that simply queries it, tries to match and validate all at once, or I can just save the correct value in inventorylistingdetail.
7
- // I went with method two which seemed a tad bit easier, though method 3 I think is best but will require some changes
8
- // to the component and saver functions that I would need to dig through.
9
- // Takes the inventoryListingDetail row from the binlog change event and converts to an ebay inventory item, listing details and sku
10
- // TODO: decide who/what/when is responsible for parsing the stringified json from the binlog event and the repo once it's redone
11
- // TODO: when should validation happen..
12
- export const convertItrackListingToEbayOffer = async (params) => {
13
- const { inventoryListingDetail, ebayDefaults, itrackAdapter } = params;
14
- const ecommercePartnerId = inventoryListingDetail.ecommercePartnerId;
15
- const ecommerceConditionId = inventoryListingDetail.ecommerceConditionId;
16
- // I don't know how to feel about this solution yet
17
- let condition;
18
- condition = await itrackAdapter.convertToEbayCondition(ecommercePartnerId, ecommerceConditionId);
19
- // Convert to inventory item
20
- // TODO: this currently assumes the imageUrls already have the urls from being pushed to eBay, a problem we haven't solved yet
21
- return {
22
- sku: inventoryListingDetail.sku,
23
- // TODO: this has to come from somewhere and availability depends on pickup vs shipping and store vs warehouse
24
- ebayInventoryItem: {
25
- availability: {
26
- shipToLocationAvailability: {
27
- quantity: inventoryListingDetail.quantity
28
- }
29
- },
30
- condition,
31
- conditionDescription: inventoryListingDetail.ecommerceConditionDescription,
32
- // TODO: this is only required if using calculated shipping, not sure yet how we'd know
33
- // if that's the auction type
34
- packageWeightAndSize: {
35
- dimensions: {
36
- height: inventoryListingDetail.shippingHeight,
37
- length: inventoryListingDetail.shippingLength,
38
- unit: mapShippingLengthUnitToEbayEnum(inventoryListingDetail.shippingLengthUnit),
39
- width: inventoryListingDetail.shippingWidth
40
- },
41
- packageType: mapPackageTypeToEbayEnum(inventoryListingDetail.packageType),
42
- weight: {
43
- unit: mapShippingWeightUnitToEbayEnum(inventoryListingDetail.weightUnit),
44
- value: inventoryListingDetail.weight,
45
- }
46
- },
47
- product: {
48
- //aspects: ,
49
- // TODO: no idea what to use as a title here
50
- title: inventoryListingDetail.sku,
51
- // TODO: need a default here
52
- description: inventoryListingDetail.inventoryDescription,
53
- //imageUrls: inventoryListingDetail.imageUrls
54
- imageUrls: ['http://junk.jpg']
55
- }
56
- },
57
- listingDetails: {
58
- categoryId: inventoryListingDetail.ecommerceCategoryId?.toString(),
59
- format: FormatTypeEnum.FixedPrice,
60
- listingDescription: inventoryListingDetail.listingDescription,
61
- listingDuration: ListingDurationEnum.GTC,
62
- marketplaceId: inventoryListingDetail.partnerSpecificDetails.marketplaceId,
63
- merchantLocationKey: inventoryListingDetail.storeId.toString(),
64
- }
65
- };
66
- };
67
- //# sourceMappingURL=ConvertItrackInventoryListingDetailToEbayOffer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ConvertItrackInventoryListingDetailToEbayOffer.js","sourceRoot":"","sources":["../../../src/usecases/Offer/ConvertItrackInventoryListingDetailToEbayOffer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,+BAA+B,EAAE,+BAA+B,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAEjI,OAAO,EAAoB,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAE/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAA;AAsBhF,0KAA0K;AAC1K,8GAA8G;AAC9G,iJAAiJ;AACjJ,sHAAsH;AACtH,yEAAyE;AAGzE,oIAAoI;AACpI,iIAAiI;AACjI,wCAAwC;AACxC,MAAM,CAAC,MAAM,+BAA+B,GAAG,KAAK,EAAE,MAAqC,EAAqC,EAAE;IAC9H,MAAM,EAAE,sBAAsB,EAAE,YAAY,EAAE,aAAa,EAAC,GAAI,MAAM,CAAA;IACtE,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,kBAAkB,CAAA;IACpE,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,oBAAoB,CAAA;IAExE,mDAAmD;IACnD,IAAI,SAA4B,CAAA;IAChC,SAAS,GAAG,MAAM,aAAa,CAAC,sBAAsB,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,CAAA;IAChG,4BAA4B;IAE5B,8HAA8H;IAE9H,OAAO;QACH,GAAG,EAAE,sBAAsB,CAAC,GAAG;QAC/B,8GAA8G;QAC9G,iBAAiB,EAAE;YACf,YAAY,EAAE;gBACV,0BAA0B,EAAE;oBACxB,QAAQ,EAAE,sBAAsB,CAAC,QAAQ;iBAC5C;aACJ;YACD,SAAS;YACT,oBAAoB,EAAE,sBAAsB,CAAC,6BAA6B;YAC1E,uFAAuF;YACvF,6BAA6B;YAC7B,oBAAoB,EAAE;gBAClB,UAAU,EAAE;oBACR,MAAM,EAAE,sBAAsB,CAAC,cAAc;oBAC7C,MAAM,EAAE,sBAAsB,CAAC,cAAc;oBAC7C,IAAI,EAAE,+BAA+B,CAAC,sBAAsB,CAAC,kBAAkB,CAAC;oBAChF,KAAK,EAAE,sBAAsB,CAAC,aAAa;iBAC9C;gBACD,WAAW,EAAE,wBAAwB,CAAC,sBAAsB,CAAC,WAAW,CAAC;gBACzE,MAAM,EAAE;oBACJ,IAAI,EAAE,+BAA+B,CAAC,sBAAsB,CAAC,UAAU,CAAC;oBACxE,KAAK,EAAE,sBAAsB,CAAC,MAAM;iBACvC;aACJ;YACD,OAAO,EAAE;gBACL,YAAY;gBACZ,4CAA4C;gBAC5C,KAAK,EAAE,sBAAsB,CAAC,GAAG;gBACjC,4BAA4B;gBAC5B,WAAW,EAAE,sBAAsB,CAAC,oBAAoB;gBACxD,6CAA6C;gBAC7C,SAAS,EAAE,CAAC,iBAAiB,CAAC;aACjC;SACJ;QACD,cAAc,EAAE;YACZ,UAAU,EAAE,sBAAsB,CAAC,mBAAmB,EAAE,QAAQ,EAAE;YAClE,MAAM,EAAE,cAAc,CAAC,UAAU;YACjC,kBAAkB,EAAE,sBAAsB,CAAC,kBAAkB;YAC7D,eAAe,EAAE,mBAAmB,CAAC,GAAG;YACxC,aAAa,EAAE,sBAAsB,CAAC,sBAAsB,CAAC,aAAgC;YAC7F,mBAAmB,EAAE,sBAAsB,CAAC,OAAO,CAAC,QAAQ,EAAE;SACjE;KAEJ,CAAA;AACL,CAAC,CAAA"}
@@ -1,17 +0,0 @@
1
- import { InventoryItem } from "../../entities/ebay/InventoryItem.js";
2
- import { ItrackEbayListingResponse } from "../../adapters/itrack/ItrackAdapter.js";
3
- import { ItrackEbayDefaults } from "../../ports/ItrackInterface.js";
4
- import { EbayOfferDetails, FormatTypeEnum } from "../../entities/ebay/Offer.js";
5
- import { MarketplaceEnum } from "../../entities/ebay/MarketplaceEnum.js";
6
- export interface OfferWithInventoryAndSku {
7
- sku: string;
8
- ebayInventoryItem: InventoryItem;
9
- listingDetails: Partial<EbayOfferDetails> & {
10
- categoryId: string;
11
- format: FormatTypeEnum;
12
- marketplaceId: MarketplaceEnum;
13
- merchantLocationKey: string;
14
- };
15
- }
16
- export declare const convertItrackListingToEbayOffer: (inventoryItemDetailsWithSku: ItrackEbayListingResponse, itrackEbayDefaults: ItrackEbayDefaults) => OfferWithInventoryAndSku;
17
- //# sourceMappingURL=ConvertItrackListingToEbayOffer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ConvertItrackListingToEbayOffer.d.ts","sourceRoot":"","sources":["../../../src/usecases/Offer/ConvertItrackListingToEbayOffer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAA;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AAGlF,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AACnE,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAA;AAExE,MAAM,WAAW,wBAAwB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,iBAAiB,EAAE,aAAa,CAAC;IACjC,cAAc,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG;QACxC,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,cAAc,CAAC;QACvB,aAAa,EAAE,eAAe,CAAC;QAC/B,mBAAmB,EAAE,MAAM,CAAC;KAC/B,CAAA;CACJ;AAKD,eAAO,MAAM,+BAA+B,GAAI,6BAA6B,yBAAyB,EAAE,oBAAoB,kBAAkB,KAAG,wBA+DhJ,CAAA"}
@@ -1,66 +0,0 @@
1
- import { convertMeasurementUnit, convertWeightUnit, convertCondition } from "../../utils/utils.js";
2
- import { EbayPackageTypeEnum } from "../../entities/ebay/PackageWeightAndSize.js";
3
- import { FormatTypeEnum } from "../../entities/ebay/Offer.js";
4
- import { ListingDurationEnum } from "../../entities/ebay/ListingDurationEnum.js";
5
- // TODO: ugh, don't much like the wording but this is responsible for converting to an ebay offer with inventory item and sku
6
- // Takes the product inventory record, ebay defaults and returns a full ebay inventory item with additional listing info
7
- export const convertItrackListingToEbayOffer = (inventoryItemDetailsWithSku, itrackEbayDefaults) => {
8
- // Convert to inventory item
9
- // Check if there's at least one image
10
- inventoryItemDetailsWithSku.imageUrls.push("https://imagehost.heavytruckparts.net/image/Other_Other_Transmission-Assembly_4602468_1_83600931_1.jpg?w=2000");
11
- if (!inventoryItemDetailsWithSku.imageUrls.length) {
12
- console.error({
13
- context: 'Validation Error',
14
- message: 'Record has no valid image urls',
15
- data: JSON.stringify(inventoryItemDetailsWithSku)
16
- });
17
- }
18
- // TODO: Do we throw an error here if required fields are missing or do we let
19
- // the method used to add the part handle it since it has context for other
20
- // offer fields that change what's required?
21
- return {
22
- sku: inventoryItemDetailsWithSku.id.toString(),
23
- // TODO: this has to come from somewhere and availability depends on pickup vs shipping and store vs warehouse
24
- ebayInventoryItem: {
25
- availability: {
26
- shipToLocationAvailability: {
27
- quantity: inventoryItemDetailsWithSku.quantity_available
28
- }
29
- },
30
- condition: convertCondition(inventoryItemDetailsWithSku.ebay_condition),
31
- conditionDescription: inventoryItemDetailsWithSku.condition_description,
32
- // TODO: this is only required if using calculated shipping, not sure yet how we'd know
33
- // if that's the auction type
34
- packageWeightAndSize: {
35
- dimensions: {
36
- height: inventoryItemDetailsWithSku.shippingheight,
37
- length: inventoryItemDetailsWithSku.shippinglength,
38
- unit: convertMeasurementUnit(inventoryItemDetailsWithSku.shippingmeasurementunit), // TODO: map/convert here?
39
- width: inventoryItemDetailsWithSku.shippingwidth
40
- },
41
- packageType: EbayPackageTypeEnum.Letter, // TODO: will need to figure out how to get this or depend on a default?
42
- weight: {
43
- unit: convertWeightUnit(inventoryItemDetailsWithSku.weightunit),
44
- value: inventoryItemDetailsWithSku.weight,
45
- }
46
- },
47
- product: {
48
- //aspects: ,
49
- // TODO: no idea what to use as a title here
50
- title: inventoryItemDetailsWithSku.tagnumber,
51
- // TODO: need a default here
52
- description: inventoryItemDetailsWithSku.ebay_description ? inventoryItemDetailsWithSku.ebay_description : 'description empty, using test condition description ',
53
- imageUrls: inventoryItemDetailsWithSku.imageUrls
54
- }
55
- },
56
- listingDetails: {
57
- categoryId: (inventoryItemDetailsWithSku.ebay_category_id ? inventoryItemDetailsWithSku.ebay_category_id : itrackEbayDefaults.defaultCategoryId).toString(),
58
- format: FormatTypeEnum.FixedPrice,
59
- listingDescription: inventoryItemDetailsWithSku.ebay_description,
60
- listingDuration: ListingDurationEnum.GTC,
61
- marketplaceId: inventoryItemDetailsWithSku.ebay_marketplace,
62
- merchantLocationKey: inventoryItemDetailsWithSku.storeid.toString(),
63
- }
64
- };
65
- };
66
- //# sourceMappingURL=ConvertItrackListingToEbayOffer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ConvertItrackListingToEbayOffer.js","sourceRoot":"","sources":["../../../src/usecases/Offer/ConvertItrackListingToEbayOffer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAClG,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAA;AAEjF,OAAO,EAAoB,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAE/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAA;AAahF,8HAA8H;AAC9H,wHAAwH;AACxH,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,2BAAsD,EAAE,kBAAsC,EAA4B,EAAE;IACxK,4BAA4B;IAG5B,sCAAsC;IAEtC,2BAA2B,CAAC,SAAS,CAAC,IAAI,CAAC,+GAA+G,CAAC,CAAA;IAC3J,IAAI,CAAC,2BAA2B,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QAChD,OAAO,CAAC,KAAK,CAAC;YACV,OAAO,EAAE,kBAAkB;YAC3B,OAAO,EAAE,gCAAgC;YACzC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,2BAA2B,CAAC;SACpD,CAAC,CAAA;IACN,CAAC;IACD,8EAA8E;IAC9E,4EAA4E;IAC5E,4CAA4C;IAE5C,OAAO;QACH,GAAG,EAAE,2BAA2B,CAAC,EAAE,CAAC,QAAQ,EAAE;QAC9C,8GAA8G;QAC9G,iBAAiB,EAAE;YACf,YAAY,EAAE;gBACV,0BAA0B,EAAE;oBACxB,QAAQ,EAAE,2BAA2B,CAAC,kBAAkB;iBAC3D;aACJ;YACD,SAAS,EAAE,gBAAgB,CAAC,2BAA2B,CAAC,cAAc,CAAC;YACvE,oBAAoB,EAAE,2BAA2B,CAAC,qBAAqB;YACvE,uFAAuF;YACvF,6BAA6B;YAC7B,oBAAoB,EAAE;gBAClB,UAAU,EAAE;oBACR,MAAM,EAAE,2BAA2B,CAAC,cAAc;oBAClD,MAAM,EAAE,2BAA2B,CAAC,cAAc;oBAClD,IAAI,EAAE,sBAAsB,CAAC,2BAA2B,CAAC,uBAAuB,CAAC,EAAE,0BAA0B;oBAC7G,KAAK,EAAE,2BAA2B,CAAC,aAAa;iBACnD;gBACD,WAAW,EAAE,mBAAmB,CAAC,MAAM,EAAE,wEAAwE;gBACjH,MAAM,EAAE;oBACJ,IAAI,EAAE,iBAAiB,CAAC,2BAA2B,CAAC,UAAU,CAAC;oBAC/D,KAAK,EAAE,2BAA2B,CAAC,MAAM;iBAC5C;aACJ;YACD,OAAO,EAAE;gBACL,YAAY;gBACZ,4CAA4C;gBAC5C,KAAK,EAAE,2BAA2B,CAAC,SAAS;gBAC5C,4BAA4B;gBAC5B,WAAW,EAAE,2BAA2B,CAAC,gBAAgB,CAAC,CAAC,CAAC,2BAA2B,CAAC,gBAAgB,CAAC,CAAC,CAAC,sDAAsD;gBACjK,SAAS,EAAE,2BAA2B,CAAC,SAAS;aACnD;SACJ;QACD,cAAc,EAAE;YACZ,UAAU,EAAE,CAAC,2BAA2B,CAAC,gBAAgB,CAAC,CAAC,CAAC,2BAA2B,CAAC,gBAAgB,CAAC,CAAC,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;YAC3J,MAAM,EAAE,cAAc,CAAC,UAAU;YACjC,kBAAkB,EAAE,2BAA2B,CAAC,gBAAgB;YAChE,eAAe,EAAE,mBAAmB,CAAC,GAAG;YACxC,aAAa,EAAE,2BAA2B,CAAC,gBAAmC;YAC9E,mBAAmB,EAAE,2BAA2B,CAAC,OAAO,CAAC,QAAQ,EAAE;SACtE;KAEJ,CAAA;AACL,CAAC,CAAA"}
@@ -1,11 +0,0 @@
1
- import { EbayAdapter } from "../../adapters/ebay/EbayAdapter.js";
2
- import { Sku } from "../../entities/ebay/Sku.js";
3
- import { EbayOfferDetails } from "../../entities/ebay/Offer.js";
4
- import { UseCaseResult } from "../../types/UseCaseResult.js";
5
- export interface PushOfferInput {
6
- ebayAdapter: EbayAdapter;
7
- listingDetails: EbayOfferDetails;
8
- sku: Sku;
9
- }
10
- export declare const createEbayOffer: (params: PushOfferInput) => Promise<UseCaseResult<any>>;
11
- //# sourceMappingURL=CreateEbayOffer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CreateEbayOffer.d.ts","sourceRoot":"","sources":["../../../src/usecases/Offer/CreateEbayOffer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAA;AAChE,OAAO,EAAC,GAAG,EAAC,MAAM,4BAA4B,CAAA;AAC9C,OAAO,EAAC,gBAAgB,EAAC,MAAM,8BAA8B,CAAA;AAE7D,OAAO,EACH,aAAa,EAGhB,MAAM,8BAA8B,CAAA;AAcrC,MAAM,WAAW,cAAc;IAC3B,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,gBAAgB,CAAC;IACjC,GAAG,EAAE,GAAG,CAAA;CACX;AAeD,eAAO,MAAM,eAAe,GAAS,QAAQ,cAAc,KAAG,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAMvF,CAAA"}
@@ -1,31 +0,0 @@
1
- //OfferWithInventoryAndSku
2
- // sku: string,
3
- // ebayInventoryItem: InventoryItem,
4
- // listingDetails: {
5
- // categoryId: number | null,
6
- // format: string,
7
- // listingDescription: string,
8
- // listingDuration: number,
9
- // marketplaceId: string,
10
- // merchantLocationKey: string,
11
- // }
12
- export const createEbayOffer = async (params) => {
13
- // Validate
14
- // Send to ebay
15
- const createOfferResponse = await params.ebayAdapter.pushOffer({ offer: params.listingDetails, sku: params.sku });
16
- return createOfferResponse;
17
- };
18
- //availableQuantity...conditional
19
- //categoryId
20
- //format
21
- //listingDescription
22
- //listingDuration
23
- //marketplaceId
24
- //merchantLocationKey
25
- //InventoryItem
26
- //availability
27
- //condition
28
- //conditionDescription
29
- //packageWeightAndSize
30
- //product
31
- //# sourceMappingURL=CreateEbayOffer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CreateEbayOffer.js","sourceRoot":"","sources":["../../../src/usecases/Offer/CreateEbayOffer.ts"],"names":[],"mappings":"AA4BA,2BAA2B;AAC3B,eAAe;AACf,wCAAwC;AACxC,oBAAoB;AACpB,iCAAiC;AACjC,sBAAsB;AACtB,kCAAkC;AAClC,+BAA+B;AAC/B,6BAA6B;AAC7B,mCAAmC;AACnC,IAAI;AAGJ,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAC,MAAsB,EAA+B,EAAE;IACxF,WAAW;IAEX,eAAe;IACf,MAAM,mBAAmB,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,EAAC,KAAK,EAAE,MAAM,CAAC,cAAc,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAC,CAAC,CAAA;IAC/G,OAAO,mBAAmB,CAAA;AAC9B,CAAC,CAAA;AACD,iCAAiC;AACjC,YAAY;AACZ,QAAQ;AACR,oBAAoB;AACpB,iBAAiB;AACjB,eAAe;AACf,qBAAqB;AAErB,eAAe;AACX,cAAc;AACd,WAAW;AACX,sBAAsB;AACtB,sBAAsB;AACtB,UAAU"}
@@ -1,20 +0,0 @@
1
- import { EbayAdapter } from "../../adapters/ebay/EbayAdapter.js";
2
- import { TokenManager } from "../../infrastructure/TokenManager.js";
3
- import { ItrackAdapter } from "../../adapters/itrack/ItrackAdapter.js";
4
- export interface SyncOfferToEbayInput {
5
- ebayAdapter: EbayAdapter;
6
- itrackAdapter: ItrackAdapter;
7
- tokenManager: TokenManager;
8
- id: number;
9
- }
10
- /**
11
- * Full use case for creating/update inventory, offer and publishing it.
12
- * Should be used whenever an inventory item is created or changed.
13
- *
14
- * Get defaults and settings
15
- * Calls sync inventory
16
- * Calls create offer
17
- * Calls publish offer
18
- */
19
- export declare const syncAndPublishEbayOffer: (params: SyncOfferToEbayInput) => Promise<void>;
20
- //# sourceMappingURL=SyncEbayOffer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SyncEbayOffer.d.ts","sourceRoot":"","sources":["../../../src/usecases/Offer/SyncEbayOffer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AAMtE,MAAM,WAAW,oBAAoB;IACjC,WAAW,EAAE,WAAW,CAAC;IACzB,aAAa,EAAE,aAAa,CAAC;IAC7B,YAAY,EAAE,YAAY,CAAC;IAC3B,EAAE,EAAE,MAAM,CAAA;CACb;AAED;;;;;;;;GAQG;AAGH,eAAO,MAAM,uBAAuB,WAAiB,oBAAoB,kBAqBxE,CAAA"}
@@ -1,49 +0,0 @@
1
- import { getEbayDefaultsFromProduct } from "./GetEbayDefaultsFromProduct.js";
2
- import { syncInventoryToEbay } from "../Inventory/SyncInventoryToEbay.js";
3
- import { convertItrackListingToEbayOffer } from "./ConvertItrackListingToEbayOffer.js";
4
- import { createEbayOffer } from "../Offer/CreateEbayOffer.js";
5
- /**
6
- * Full use case for creating/update inventory, offer and publishing it.
7
- * Should be used whenever an inventory item is created or changed.
8
- *
9
- * Get defaults and settings
10
- * Calls sync inventory
11
- * Calls create offer
12
- * Calls publish offer
13
- */
14
- // TODO: this only works on initial creation, will need to separate this to better handle updates vs new
15
- // TODO: lost track of what use case belongs where, will throw it all here and separate later
16
- export const syncAndPublishEbayOffer = async (params) => {
17
- // Get defaults and settings from product
18
- // TODO: this should probably be cached and updated on certain mysql row events
19
- const ebayDefaults = await getEbayDefaultsFromProduct({ itrackAdapter: params.itrackAdapter });
20
- // Get listing info from Itrack
21
- const getListingResponse = await params.itrackAdapter.getItrackEbayListingInfo(params.id);
22
- // Convert Itrack listing info and defaults to eBay inventory item, sku and offer
23
- const offerWithInventoryAndSku = convertItrackListingToEbayOffer(getListingResponse, ebayDefaults);
24
- // sku, ebayInvenotryItem and listingDetails
25
- const { sku, ebayInventoryItem, listingDetails } = offerWithInventoryAndSku;
26
- // Call usecase: sync inventory to ebay
27
- // TODO: figure out what needs to be returned to make the create offer call
28
- const ebayInventorySyncResponse = await syncInventoryToEbay({
29
- ebayAdapter: params.ebayAdapter,
30
- tokenManager: params.tokenManager,
31
- sku,
32
- inventoryItem: ebayInventoryItem
33
- });
34
- // Call create offer to ebay
35
- const stuff = await createEbayOffer({ ebayAdapter: params.ebayAdapter, listingDetails, sku });
36
- // Call publish offer
37
- };
38
- //OfferWithInventoryAndSku
39
- // sku: string,
40
- // ebayInventoryItem: InventoryItem,
41
- // listingDetails: {
42
- // categoryId: number | null,
43
- // format: string,
44
- // listingDescription: string,
45
- // listingDuration: number,
46
- // marketplaceId: string,
47
- // merchantLocationKey: string,
48
- // }
49
- //# sourceMappingURL=SyncEbayOffer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SyncEbayOffer.js","sourceRoot":"","sources":["../../../src/usecases/Offer/SyncEbayOffer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAA;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAA;AACtF,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAS7D;;;;;;;;GAQG;AACH,wGAAwG;AACxG,6FAA6F;AAC7F,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,EAAC,MAA4B,EAAE,EAAE;IACzE,yCAAyC;IACzC,+EAA+E;IAC/E,MAAM,YAAY,GAAG,MAAM,0BAA0B,CAAC,EAAC,aAAa,EAAE,MAAM,CAAC,aAAa,EAAC,CAAC,CAAA;IAC5F,gCAAgC;IAChC,MAAM,kBAAkB,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,wBAAwB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IACzF,iFAAiF;IACjF,MAAM,wBAAwB,GAAG,+BAA+B,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAAA;IAClG,4CAA4C;IAC5C,MAAM,EAAC,GAAG,EAAE,iBAAiB,EAAE,cAAc,EAAC,GAAG,wBAAwB,CAAA;IACzE,uCAAuC;IACvC,2EAA2E;IAC3E,MAAM,yBAAyB,GAAG,MAAM,mBAAmB,CAAC;QACxD,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,GAAG;QACH,aAAa,EAAE,iBAAiB;KACnC,CAAC,CAAA;IACF,6BAA6B;IAC7B,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,EAAC,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,cAAc,EAAE,GAAG,EAAC,CAAC,CAAA;IAC3F,qBAAqB;AACzB,CAAC,CAAA;AAED,2BAA2B;AAC3B,eAAe;AACf,wCAAwC;AACxC,oBAAoB;AACpB,iCAAiC;AACjC,sBAAsB;AACtB,kCAAkC;AAClC,+BAA+B;AAC/B,6BAA6B;AAC7B,mCAAmC;AACnC,IAAI"}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=createOfferSample.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createOfferSample.d.ts","sourceRoot":"","sources":["../../../src/usecases/Offer/createOfferSample.ts"],"names":[],"mappings":""}