@isoftdata/ebay-utility 1.0.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.
- package/lib/adapters/AdapterResult.d.ts +3 -0
- package/lib/adapters/AdapterResult.d.ts.map +1 -1
- package/lib/adapters/AdapterResult.js +2 -1
- package/lib/adapters/AdapterResult.js.map +1 -1
- package/lib/adapters/AdapterToUseCaseConverter.js +20 -20
- package/lib/adapters/AdapterToUseCaseConverter.js.map +1 -1
- package/lib/adapters/ebay/EbayAdapter.d.ts +7 -4
- package/lib/adapters/ebay/EbayAdapter.d.ts.map +1 -1
- package/lib/adapters/ebay/EbayAdapter.js +108 -16
- package/lib/adapters/ebay/EbayAdapter.js.map +1 -1
- package/lib/adapters/ebay/WebEbayAdapter.d.ts +64 -0
- package/lib/adapters/ebay/WebEbayAdapter.d.ts.map +1 -0
- package/lib/adapters/ebay/WebEbayAdapter.js +473 -0
- package/lib/adapters/ebay/WebEbayAdapter.js.map +1 -0
- package/lib/adapters/itrack/ItrackAdapter.d.ts +8 -18
- package/lib/adapters/itrack/ItrackAdapter.d.ts.map +1 -1
- package/lib/adapters/itrack/ItrackAdapter.js +104 -41
- package/lib/adapters/itrack/ItrackAdapter.js.map +1 -1
- package/lib/entities/ebay/FulfillmentPolicy.d.ts +0 -5
- package/lib/entities/ebay/FulfillmentPolicy.d.ts.map +1 -1
- package/lib/entities/ebay/PackageWeightAndSize.d.ts +4 -4
- package/lib/entities/ebay/PaymentPolicy.d.ts +0 -5
- package/lib/entities/ebay/PaymentPolicy.d.ts.map +1 -1
- package/lib/entities/ebay/ReturnPolicy.d.ts +0 -5
- package/lib/entities/ebay/ReturnPolicy.d.ts.map +1 -1
- package/lib/entities/itrack/ItrackEbayPolicy.d.ts +14 -0
- package/lib/entities/itrack/ItrackEbayPolicy.d.ts.map +1 -0
- package/lib/entities/itrack/ItrackEbayPolicy.js +2 -0
- package/lib/entities/itrack/ItrackEbayPolicy.js.map +1 -0
- package/lib/index.d.ts +7 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +8 -0
- package/lib/index.js.map +1 -1
- package/lib/infrastructure/EbayOAuthManager.d.ts +99 -0
- package/lib/infrastructure/EbayOAuthManager.d.ts.map +1 -0
- package/lib/infrastructure/EbayOAuthManager.js +337 -0
- package/lib/infrastructure/EbayOAuthManager.js.map +1 -0
- package/lib/infrastructure/HttpToRepoConverter.d.ts +1 -0
- package/lib/infrastructure/HttpToRepoConverter.d.ts.map +1 -1
- package/lib/infrastructure/HttpToRepoConverter.js +4 -1
- package/lib/infrastructure/HttpToRepoConverter.js.map +1 -1
- package/lib/infrastructure/TokenManager.d.ts +0 -2
- package/lib/infrastructure/TokenManager.d.ts.map +1 -1
- package/lib/infrastructure/TokenManager.js +19 -42
- package/lib/infrastructure/TokenManager.js.map +1 -1
- package/lib/infrastructure/http.d.ts +1 -0
- package/lib/infrastructure/http.d.ts.map +1 -1
- package/lib/infrastructure/http.js +10 -2
- package/lib/infrastructure/http.js.map +1 -1
- package/lib/infrastructure/httpMultipart.d.ts.map +1 -1
- package/lib/infrastructure/httpMultipart.js +2 -1
- package/lib/infrastructure/httpMultipart.js.map +1 -1
- package/lib/ports/EbayInterface.d.ts +12 -11
- package/lib/ports/EbayInterface.d.ts.map +1 -1
- package/lib/repositories/EbayProductionRefreshTokenRepo.d.ts +5 -0
- package/lib/repositories/EbayProductionRefreshTokenRepo.d.ts.map +1 -0
- package/lib/repositories/EbayProductionRefreshTokenRepo.js +8 -0
- package/lib/repositories/EbayProductionRefreshTokenRepo.js.map +1 -0
- package/lib/repositories/ebay/BaseRepo.d.ts +2 -2
- package/lib/repositories/ebay/BaseRepo.d.ts.map +1 -1
- package/lib/repositories/ebay/FulfillmentPolicyRepo.d.ts +7 -2
- package/lib/repositories/ebay/FulfillmentPolicyRepo.d.ts.map +1 -1
- package/lib/repositories/ebay/FulfillmentPolicyRepo.js.map +1 -1
- package/lib/repositories/ebay/PaymentPolicyRepo.d.ts +7 -2
- package/lib/repositories/ebay/PaymentPolicyRepo.d.ts.map +1 -1
- package/lib/repositories/ebay/PaymentPolicyRepo.js.map +1 -1
- package/lib/repositories/ebay/ReturnPolicyRepo.d.ts +7 -2
- package/lib/repositories/ebay/ReturnPolicyRepo.d.ts.map +1 -1
- package/lib/repositories/ebay/ReturnPolicyRepo.js.map +1 -1
- package/lib/repositories/itrack/ItrackEbayPolicyRepo.d.ts +10 -0
- package/lib/repositories/itrack/ItrackEbayPolicyRepo.d.ts.map +1 -0
- package/lib/repositories/itrack/ItrackEbayPolicyRepo.js +30 -0
- package/lib/repositories/itrack/ItrackEbayPolicyRepo.js.map +1 -0
- package/lib/types/UseCaseResult.d.ts +12 -12
- package/lib/types/UseCaseResult.d.ts.map +1 -1
- package/lib/types/UseCaseResult.js +13 -13
- package/lib/types/UseCaseResult.js.map +1 -1
- package/lib/usecases/FulfillmentPolicy/GetFulfillmentPoliciesFromEbay.d.ts +1 -1
- package/lib/usecases/FulfillmentPolicy/GetFulfillmentPoliciesFromEbay.d.ts.map +1 -1
- package/lib/usecases/FulfillmentPolicy/GetFulfillmentPoliciesFromEbay.js +8 -2
- package/lib/usecases/FulfillmentPolicy/GetFulfillmentPoliciesFromEbay.js.map +1 -1
- package/lib/usecases/FulfillmentPolicy/{SyncFulfillmentPolicy.d.ts → SyncFulfillmentPolicies.d.ts} +3 -2
- package/lib/usecases/FulfillmentPolicy/SyncFulfillmentPolicies.d.ts.map +1 -0
- package/lib/usecases/FulfillmentPolicy/SyncFulfillmentPolicies.js +60 -0
- package/lib/usecases/FulfillmentPolicy/SyncFulfillmentPolicies.js.map +1 -0
- package/lib/usecases/FulfillmentPolicy/integration.test.d.ts +1 -1
- package/lib/usecases/FulfillmentPolicy/integration.test.d.ts.map +1 -1
- package/lib/usecases/FulfillmentPolicy/integration.test.js +13 -34
- package/lib/usecases/FulfillmentPolicy/integration.test.js.map +1 -1
- package/lib/usecases/Images/GetImageFromProduct.js +3 -3
- package/lib/usecases/Images/GetImageFromProduct.js.map +1 -1
- package/lib/usecases/Images/PushImageToEbay.js +4 -4
- package/lib/usecases/Images/PushImageToEbay.js.map +1 -1
- package/lib/usecases/Images/SyncImageToEbay.js +5 -5
- package/lib/usecases/Images/SyncImageToEbay.js.map +1 -1
- package/lib/usecases/Images/SyncMultipleImagesToEbay.js +3 -3
- package/lib/usecases/Images/SyncMultipleImagesToEbay.js.map +1 -1
- package/lib/usecases/Inventory/PushInventorySkuToEbay.js +4 -4
- package/lib/usecases/Inventory/PushInventorySkuToEbay.js.map +1 -1
- package/lib/usecases/Inventory/SyncInventoryToEbay.js +2 -2
- package/lib/usecases/Inventory/SyncInventoryToEbay.js.map +1 -1
- package/lib/usecases/Location/GetInventoryLocationsFromEbay.d.ts +1 -1
- package/lib/usecases/Location/WebGetInventoryLocations.d.ts +98 -0
- package/lib/usecases/Location/WebGetInventoryLocations.d.ts.map +1 -0
- package/lib/usecases/Location/WebGetInventoryLocations.js +116 -0
- package/lib/usecases/Location/WebGetInventoryLocations.js.map +1 -0
- package/lib/usecases/Offer/{convertItrackListingToEbayInventoryAndOffer.js → ConvertItrackListingToEbayInventoryAndOffer.js} +3 -3
- package/lib/usecases/Offer/{convertItrackListingToEbayInventoryAndOffer.js.map → ConvertItrackListingToEbayInventoryAndOffer.js.map} +1 -1
- package/lib/usecases/Offer/GetEbayDefaultsFromProduct.d.ts.map +1 -1
- package/lib/usecases/Offer/GetEbayDefaultsFromProduct.js +3 -3
- package/lib/usecases/Offer/GetEbayDefaultsFromProduct.js.map +1 -1
- package/lib/usecases/Offer/PublishEbayOffer.js +4 -4
- package/lib/usecases/Offer/PublishEbayOffer.js.map +1 -1
- package/lib/usecases/Offer/PushEbayOffer.js +6 -6
- package/lib/usecases/Offer/PushEbayOffer.js.map +1 -1
- package/lib/usecases/Offer/SyncEbayInventoryAndOffer.js +5 -5
- package/lib/usecases/Offer/SyncEbayInventoryAndOffer.js.map +1 -1
- package/lib/usecases/PaymentPolicy/GetPaymentPoliciesFromEbay.d.ts +1 -1
- package/lib/usecases/PaymentPolicy/GetPaymentPoliciesFromEbay.d.ts.map +1 -1
- package/lib/usecases/PaymentPolicy/SyncPaymentPoliciesFromEbay.d.ts +2 -1
- package/lib/usecases/PaymentPolicy/SyncPaymentPoliciesFromEbay.d.ts.map +1 -1
- package/lib/usecases/PaymentPolicy/SyncPaymentPoliciesFromEbay.js +39 -22
- package/lib/usecases/PaymentPolicy/SyncPaymentPoliciesFromEbay.js.map +1 -1
- package/lib/usecases/PaymentPolicy/integration.test.d.ts +2 -0
- package/lib/usecases/PaymentPolicy/integration.test.d.ts.map +1 -0
- package/lib/usecases/PaymentPolicy/integration.test.js +31 -0
- package/lib/usecases/PaymentPolicy/integration.test.js.map +1 -0
- package/lib/usecases/Policy/WebGetEbayPolicies.d.ts +236 -0
- package/lib/usecases/Policy/WebGetEbayPolicies.d.ts.map +1 -0
- package/lib/usecases/Policy/WebGetEbayPolicies.js +374 -0
- package/lib/usecases/Policy/WebGetEbayPolicies.js.map +1 -0
- package/lib/usecases/ReturnPolicy/GetReturnPoliciesFromEbay.d.ts +1 -1
- package/lib/usecases/ReturnPolicy/GetReturnPoliciesFromEbay.d.ts.map +1 -1
- package/lib/usecases/ReturnPolicy/GetReturnPoliciesFromEbay.js +13 -3
- package/lib/usecases/ReturnPolicy/GetReturnPoliciesFromEbay.js.map +1 -1
- package/lib/usecases/ReturnPolicy/SyncReturnPoliciesFromEbay.d.ts +2 -1
- package/lib/usecases/ReturnPolicy/SyncReturnPoliciesFromEbay.d.ts.map +1 -1
- package/lib/usecases/ReturnPolicy/SyncReturnPoliciesFromEbay.js +44 -24
- package/lib/usecases/ReturnPolicy/SyncReturnPoliciesFromEbay.js.map +1 -1
- package/lib/usecases/ReturnPolicy/integration.test.d.ts +1 -1
- package/lib/usecases/ReturnPolicy/integration.test.d.ts.map +1 -1
- package/lib/usecases/ReturnPolicy/integration.test.js +13 -38
- package/lib/usecases/ReturnPolicy/integration.test.js.map +1 -1
- package/package.json +59 -56
- package/lib/entities/itrack/FulfillmentPolicy.d.ts +0 -10
- package/lib/entities/itrack/FulfillmentPolicy.d.ts.map +0 -1
- package/lib/entities/itrack/FulfillmentPolicy.js +0 -2
- package/lib/entities/itrack/FulfillmentPolicy.js.map +0 -1
- package/lib/entities/itrack/ItrackEbayInventoryItem.js +0 -25
- package/lib/entities/itrack/ItrackEbayInventoryItem.js.map +0 -1
- package/lib/entities/itrack/ItrackEbayListing.d.ts +0 -45
- package/lib/entities/itrack/ItrackEbayListing.d.ts.map +0 -1
- package/lib/entities/itrack/ItrackEbayListing.js +0 -25
- package/lib/entities/itrack/ItrackEbayListing.js.map +0 -1
- package/lib/entities/itrack/PaymentPolicy.d.ts +0 -10
- package/lib/entities/itrack/PaymentPolicy.d.ts.map +0 -1
- package/lib/entities/itrack/PaymentPolicy.js +0 -2
- package/lib/entities/itrack/PaymentPolicy.js.map +0 -1
- package/lib/entities/itrack/ReturnPolicy.d.ts +0 -10
- package/lib/entities/itrack/ReturnPolicy.d.ts.map +0 -1
- package/lib/entities/itrack/ReturnPolicy.js +0 -2
- package/lib/entities/itrack/ReturnPolicy.js.map +0 -1
- package/lib/repositories/itrack/EbayInventoryItemRowRepo.d.ts +0 -27
- package/lib/repositories/itrack/EbayInventoryItemRowRepo.d.ts.map +0 -1
- package/lib/repositories/itrack/EbayInventoryItemRowRepo.js +0 -2
- package/lib/repositories/itrack/EbayInventoryItemRowRepo.js.map +0 -1
- package/lib/repositories/itrack/ItrackEbayFulfillmentPolicyRepo.d.ts +0 -11
- package/lib/repositories/itrack/ItrackEbayFulfillmentPolicyRepo.d.ts.map +0 -1
- package/lib/repositories/itrack/ItrackEbayFulfillmentPolicyRepo.js +0 -35
- package/lib/repositories/itrack/ItrackEbayFulfillmentPolicyRepo.js.map +0 -1
- package/lib/repositories/itrack/ItrackEbayInventoryItemRepo.js +0 -75
- package/lib/repositories/itrack/ItrackEbayInventoryItemRepo.js.map +0 -1
- package/lib/repositories/itrack/ItrackEbayListingRepo.d.ts +0 -8
- package/lib/repositories/itrack/ItrackEbayListingRepo.d.ts.map +0 -1
- package/lib/repositories/itrack/ItrackEbayListingRepo.js +0 -66
- package/lib/repositories/itrack/ItrackEbayListingRepo.js.map +0 -1
- package/lib/repositories/itrack/ItrackEbayPaymentPolicyRepo.d.ts +0 -11
- package/lib/repositories/itrack/ItrackEbayPaymentPolicyRepo.d.ts.map +0 -1
- package/lib/repositories/itrack/ItrackEbayPaymentPolicyRepo.js +0 -35
- package/lib/repositories/itrack/ItrackEbayPaymentPolicyRepo.js.map +0 -1
- package/lib/repositories/itrack/ItrackEbayReturnPolicyRepo.d.ts +0 -11
- package/lib/repositories/itrack/ItrackEbayReturnPolicyRepo.d.ts.map +0 -1
- package/lib/repositories/itrack/ItrackEbayReturnPolicyRepo.js +0 -34
- package/lib/repositories/itrack/ItrackEbayReturnPolicyRepo.js.map +0 -1
- package/lib/repositories/itrack/ItrackFulfillmentPolicyRepo.d.ts +0 -11
- package/lib/repositories/itrack/ItrackFulfillmentPolicyRepo.d.ts.map +0 -1
- package/lib/repositories/itrack/ItrackFulfillmentPolicyRepo.js +0 -35
- package/lib/repositories/itrack/ItrackFulfillmentPolicyRepo.js.map +0 -1
- package/lib/repositories/itrack/ItrackPaymentPolicyRepo.d.ts +0 -11
- package/lib/repositories/itrack/ItrackPaymentPolicyRepo.d.ts.map +0 -1
- package/lib/repositories/itrack/ItrackPaymentPolicyRepo.js +0 -35
- package/lib/repositories/itrack/ItrackPaymentPolicyRepo.js.map +0 -1
- package/lib/repositories/itrack/ItrackReturnPolicyRepo.d.ts +0 -11
- package/lib/repositories/itrack/ItrackReturnPolicyRepo.d.ts.map +0 -1
- package/lib/repositories/itrack/ItrackReturnPolicyRepo.js +0 -34
- package/lib/repositories/itrack/ItrackReturnPolicyRepo.js.map +0 -1
- package/lib/tests/processImageUrlTest.d.ts +0 -29
- package/lib/tests/processImageUrlTest.d.ts.map +0 -1
- package/lib/tests/processImageUrlTest.js +0 -402
- package/lib/tests/processImageUrlTest.js.map +0 -1
- package/lib/tests/test.d.ts +0 -2
- package/lib/tests/test.d.ts.map +0 -1
- package/lib/tests/test.js +0 -130
- package/lib/tests/test.js.map +0 -1
- package/lib/tests/tests.js +0 -130
- package/lib/tests/tests.js.map +0 -1
- package/lib/types/UseCaseResult.examples.d.ts +0 -42
- package/lib/types/UseCaseResult.examples.d.ts.map +0 -1
- package/lib/types/UseCaseResult.examples.js +0 -168
- package/lib/types/UseCaseResult.examples.js.map +0 -1
- package/lib/usecases/FulfillmentPolicy/AddFulfillmentPolicyToItrack.d.ts +0 -7
- package/lib/usecases/FulfillmentPolicy/AddFulfillmentPolicyToItrack.d.ts.map +0 -1
- package/lib/usecases/FulfillmentPolicy/AddFulfillmentPolicyToItrack.js +0 -5
- package/lib/usecases/FulfillmentPolicy/AddFulfillmentPolicyToItrack.js.map +0 -1
- package/lib/usecases/FulfillmentPolicy/GetFulfillmentPoliciesFromItrack.d.ts +0 -6
- package/lib/usecases/FulfillmentPolicy/GetFulfillmentPoliciesFromItrack.d.ts.map +0 -1
- package/lib/usecases/FulfillmentPolicy/GetFulfillmentPoliciesFromItrack.js +0 -5
- package/lib/usecases/FulfillmentPolicy/GetFulfillmentPoliciesFromItrack.js.map +0 -1
- package/lib/usecases/FulfillmentPolicy/RemoveFulfillmentPolicyFromItrack.d.ts +0 -7
- package/lib/usecases/FulfillmentPolicy/RemoveFulfillmentPolicyFromItrack.d.ts.map +0 -1
- package/lib/usecases/FulfillmentPolicy/RemoveFulfillmentPolicyFromItrack.js +0 -5
- package/lib/usecases/FulfillmentPolicy/RemoveFulfillmentPolicyFromItrack.js.map +0 -1
- package/lib/usecases/FulfillmentPolicy/SyncFulfillmentPolicy.d.ts.map +0 -1
- package/lib/usecases/FulfillmentPolicy/SyncFulfillmentPolicy.js +0 -35
- package/lib/usecases/FulfillmentPolicy/SyncFulfillmentPolicy.js.map +0 -1
- package/lib/usecases/FulfillmentPolicy/UpdateFulfillmentPolicyFromItrack.d.ts +0 -7
- package/lib/usecases/FulfillmentPolicy/UpdateFulfillmentPolicyFromItrack.d.ts.map +0 -1
- package/lib/usecases/FulfillmentPolicy/UpdateFulfillmentPolicyFromItrack.js +0 -5
- package/lib/usecases/FulfillmentPolicy/UpdateFulfillmentPolicyFromItrack.js.map +0 -1
- package/lib/usecases/Inventory/ConvertInventoryItemToSku.js +0 -54
- package/lib/usecases/Inventory/ConvertInventoryItemToSku.js.map +0 -1
- package/lib/usecases/Listing/GetListingFromProduct.js +0 -15
- package/lib/usecases/Listing/GetListingFromProduct.js.map +0 -1
- package/lib/usecases/Listing/PushListingToEbay.js +0 -31
- package/lib/usecases/Listing/PushListingToEbay.js.map +0 -1
- package/lib/usecases/Listing/SyncListing.js +0 -182
- package/lib/usecases/Listing/SyncListing.js.map +0 -1
- package/lib/usecases/Listing_old/GetListingFromProduct.d.ts +0 -8
- package/lib/usecases/Listing_old/GetListingFromProduct.d.ts.map +0 -1
- package/lib/usecases/Listing_old/GetListingFromProduct.js +0 -6
- package/lib/usecases/Listing_old/GetListingFromProduct.js.map +0 -1
- package/lib/usecases/Listing_old/PushListingToEbay.d.ts +0 -16
- package/lib/usecases/Listing_old/PushListingToEbay.d.ts.map +0 -1
- package/lib/usecases/Listing_old/PushListingToEbay.js +0 -22
- package/lib/usecases/Listing_old/PushListingToEbay.js.map +0 -1
- package/lib/usecases/Listing_old/SyncListing.d.ts +0 -11
- package/lib/usecases/Listing_old/SyncListing.d.ts.map +0 -1
- package/lib/usecases/Listing_old/SyncListing.js +0 -173
- package/lib/usecases/Listing_old/SyncListing.js.map +0 -1
- package/lib/usecases/Offer/ConvertItrackInventoryListingDetailToEbayOffer.d.ts +0 -22
- package/lib/usecases/Offer/ConvertItrackInventoryListingDetailToEbayOffer.d.ts.map +0 -1
- package/lib/usecases/Offer/ConvertItrackInventoryListingDetailToEbayOffer.js +0 -67
- package/lib/usecases/Offer/ConvertItrackInventoryListingDetailToEbayOffer.js.map +0 -1
- package/lib/usecases/Offer/ConvertItrackListingToEbayOffer.d.ts +0 -17
- package/lib/usecases/Offer/ConvertItrackListingToEbayOffer.d.ts.map +0 -1
- package/lib/usecases/Offer/ConvertItrackListingToEbayOffer.js +0 -66
- package/lib/usecases/Offer/ConvertItrackListingToEbayOffer.js.map +0 -1
- package/lib/usecases/Offer/CreateEbayOffer.d.ts +0 -11
- package/lib/usecases/Offer/CreateEbayOffer.d.ts.map +0 -1
- package/lib/usecases/Offer/CreateEbayOffer.js +0 -31
- package/lib/usecases/Offer/CreateEbayOffer.js.map +0 -1
- package/lib/usecases/Offer/SyncEbayOffer.d.ts +0 -20
- package/lib/usecases/Offer/SyncEbayOffer.d.ts.map +0 -1
- package/lib/usecases/Offer/SyncEbayOffer.js +0 -49
- package/lib/usecases/Offer/SyncEbayOffer.js.map +0 -1
- package/lib/usecases/Offer/createOfferSample.d.ts +0 -1
- package/lib/usecases/Offer/createOfferSample.d.ts.map +0 -1
- package/lib/usecases/Offer/createOfferSample.js +0 -230
- package/lib/usecases/Offer/createOfferSample.js.map +0 -1
- package/lib/usecases/PaymentPolicy/AddPaymentPolicyToItrack.d.ts +0 -7
- package/lib/usecases/PaymentPolicy/AddPaymentPolicyToItrack.d.ts.map +0 -1
- package/lib/usecases/PaymentPolicy/AddPaymentPolicyToItrack.js +0 -5
- package/lib/usecases/PaymentPolicy/AddPaymentPolicyToItrack.js.map +0 -1
- package/lib/usecases/PaymentPolicy/GetPaymentPoliciesFromItrack.d.ts +0 -6
- package/lib/usecases/PaymentPolicy/GetPaymentPoliciesFromItrack.d.ts.map +0 -1
- package/lib/usecases/PaymentPolicy/GetPaymentPoliciesFromItrack.js +0 -5
- package/lib/usecases/PaymentPolicy/GetPaymentPoliciesFromItrack.js.map +0 -1
- package/lib/usecases/PaymentPolicy/RemovePaymentPolicyFromItrack.d.ts +0 -7
- package/lib/usecases/PaymentPolicy/RemovePaymentPolicyFromItrack.d.ts.map +0 -1
- package/lib/usecases/PaymentPolicy/RemovePaymentPolicyFromItrack.js +0 -5
- package/lib/usecases/PaymentPolicy/RemovePaymentPolicyFromItrack.js.map +0 -1
- package/lib/usecases/PaymentPolicy/UpdatePaymentPolicyFromItrack.d.ts +0 -7
- package/lib/usecases/PaymentPolicy/UpdatePaymentPolicyFromItrack.d.ts.map +0 -1
- package/lib/usecases/PaymentPolicy/UpdatePaymentPolicyFromItrack.js +0 -5
- package/lib/usecases/PaymentPolicy/UpdatePaymentPolicyFromItrack.js.map +0 -1
- package/lib/usecases/ReturnPolicy/AddReturnPolicyToItrack.d.ts +0 -7
- package/lib/usecases/ReturnPolicy/AddReturnPolicyToItrack.d.ts.map +0 -1
- package/lib/usecases/ReturnPolicy/AddReturnPolicyToItrack.js +0 -5
- package/lib/usecases/ReturnPolicy/AddReturnPolicyToItrack.js.map +0 -1
- package/lib/usecases/ReturnPolicy/GetReturnPoliciesFromItrack.d.ts +0 -6
- package/lib/usecases/ReturnPolicy/GetReturnPoliciesFromItrack.d.ts.map +0 -1
- package/lib/usecases/ReturnPolicy/GetReturnPoliciesFromItrack.js +0 -5
- package/lib/usecases/ReturnPolicy/GetReturnPoliciesFromItrack.js.map +0 -1
- package/lib/usecases/ReturnPolicy/RemoveReturnPolicyFromItrack.d.ts +0 -7
- package/lib/usecases/ReturnPolicy/RemoveReturnPolicyFromItrack.d.ts.map +0 -1
- package/lib/usecases/ReturnPolicy/RemoveReturnPolicyFromItrack.js +0 -5
- package/lib/usecases/ReturnPolicy/RemoveReturnPolicyFromItrack.js.map +0 -1
- package/lib/usecases/ReturnPolicy/UpdateReturnPolicyInItrack.d.ts +0 -7
- package/lib/usecases/ReturnPolicy/UpdateReturnPolicyInItrack.d.ts.map +0 -1
- package/lib/usecases/ReturnPolicy/UpdateReturnPolicyInItrack.js +0 -5
- package/lib/usecases/ReturnPolicy/UpdateReturnPolicyInItrack.js.map +0 -1
- package/lib/usecases/integration.test.d.ts +0 -33
- package/lib/usecases/integration.test.d.ts.map +0 -1
- package/lib/usecases/integration.test.js +0 -499
- package/lib/usecases/integration.test.js.map +0 -1
- /package/lib/usecases/Offer/{convertItrackListingToEbayInventoryAndOffer.d.ts → ConvertItrackListingToEbayInventoryAndOffer.d.ts} +0 -0
- /package/lib/usecases/Offer/{convertItrackListingToEbayInventoryAndOffer.d.ts.map → ConvertItrackListingToEbayInventoryAndOffer.d.ts.map} +0 -0
|
@@ -2,9 +2,10 @@ import { MysqlDatastore } from "../../infrastructure/mysql/MysqlDatastore.js";
|
|
|
2
2
|
import { getMysqlConfigFromEnv } from "../../infrastructure/mysql/getPool.js";
|
|
3
3
|
import { TokenManager } from "../../infrastructure/TokenManager.js";
|
|
4
4
|
import { EbayAdapter } from "../../adapters/ebay/EbayAdapter.js";
|
|
5
|
-
import { getFulfillmentPoliciesFromEbay } from "./GetFulfillmentPoliciesFromEbay.js";
|
|
6
5
|
import { EbayScopes } from "../../entities/ebay/Scopes.js";
|
|
7
6
|
import { MarketplaceEnum } from "../../entities/ebay/MarketplaceEnum.js";
|
|
7
|
+
import { syncFulfillmentPolicies } from "./SyncFulfillmentPolicies.js";
|
|
8
|
+
import { ItrackAdapter } from "../../adapters/itrack/ItrackAdapter.js";
|
|
8
9
|
const PRODUCTION = false;
|
|
9
10
|
// Create mysql connection
|
|
10
11
|
const pool = getMysqlConfigFromEnv();
|
|
@@ -13,40 +14,18 @@ const db = new MysqlDatastore(pool);
|
|
|
13
14
|
// Ebay token business
|
|
14
15
|
const tokenManager = new TokenManager(db, PRODUCTION, Object.values(EbayScopes), MarketplaceEnum.Motors);
|
|
15
16
|
const ebayAdapter = new EbayAdapter(tokenManager);
|
|
16
|
-
|
|
17
|
+
const itrackAdapter = new ItrackAdapter(db);
|
|
18
|
+
const production = false;
|
|
19
|
+
export const testSyncFulfillmentPolicies = async () => {
|
|
17
20
|
await tokenManager.initialize();
|
|
18
21
|
// Attempt to retrieve fullfiment policy(s) from ebay
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
const response = await syncFulfillmentPolicies({
|
|
23
|
+
ebayAdapter,
|
|
24
|
+
itrackAdapter,
|
|
25
|
+
tokenManager,
|
|
26
|
+
production
|
|
27
|
+
});
|
|
28
|
+
console.log(response);
|
|
26
29
|
};
|
|
27
|
-
|
|
28
|
-
// {
|
|
29
|
-
// "success":false,
|
|
30
|
-
// "data":{
|
|
31
|
-
// "errors":[
|
|
32
|
-
// {
|
|
33
|
-
// "errorId":20401,
|
|
34
|
-
// "domain":"API_ACCOUNT",
|
|
35
|
-
// "category":"REQUEST",
|
|
36
|
-
// "message":"Missing field marketplaceId.",
|
|
37
|
-
// "parameters":[
|
|
38
|
-
// {
|
|
39
|
-
// "name":"fieldName",
|
|
40
|
-
// "value":"marketplaceId"
|
|
41
|
-
// },
|
|
42
|
-
// {
|
|
43
|
-
// "name":"additionalInfo",
|
|
44
|
-
// "value":""
|
|
45
|
-
// }
|
|
46
|
-
// ]
|
|
47
|
-
// }
|
|
48
|
-
// ]},
|
|
49
|
-
// "status":400,"statusText":"Bad Request"
|
|
50
|
-
// }
|
|
51
|
-
doTheThing();
|
|
30
|
+
testSyncFulfillmentPolicies();
|
|
52
31
|
//# sourceMappingURL=integration.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"integration.test.js","sourceRoot":"","sources":["../../../src/usecases/FulfillmentPolicy/integration.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"integration.test.js","sourceRoot":"","sources":["../../../src/usecases/FulfillmentPolicy/integration.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,8CAA8C,CAAA;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAA;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAA;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAA;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAA;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AAEtE,MAAM,UAAU,GAAG,KAAK,CAAA;AAExB,0BAA0B;AAC1B,MAAM,IAAI,GAAG,qBAAqB,EAAE,CAAA;AACpC,MAAM,EAAE,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAA;AACnC,6CAA6C;AAE7C,sBAAsB;AACtB,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAA;AACxG,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,YAAY,CAAC,CAAA;AACjD,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAA;AAC3C,MAAM,UAAU,GAAG,KAAK,CAAA;AAExB,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAK,IAAG,EAAE;IACjD,MAAM,YAAY,CAAC,UAAU,EAAE,CAAA;IAC/B,qDAAqD;IACrD,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC;QAC3C,WAAW;QACX,aAAa;QACb,YAAY;QACZ,UAAU;KACb,CAAC,CAAA;IAEF,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;AACzB,CAAC,CAAA;AAED,2BAA2B,EAAE,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createUseCaseSuccessResult, createUseCaseSystemErrorResult } from "../../types/UseCaseResult.js";
|
|
2
2
|
/**
|
|
3
3
|
* Retrieves image data from itrack for a given file ID
|
|
4
4
|
* Returns Buffer data that can be used for eBay image uploads
|
|
@@ -7,10 +7,10 @@ export const getImageFromProduct = async (opts) => {
|
|
|
7
7
|
// TODO: should I check here or elsewhere if we're getting actual image type
|
|
8
8
|
try {
|
|
9
9
|
const response = await opts.itrackAdapter.getImageData(opts.fileId);
|
|
10
|
-
return
|
|
10
|
+
return createUseCaseSuccessResult(response || null);
|
|
11
11
|
}
|
|
12
12
|
catch (error) {
|
|
13
|
-
return
|
|
13
|
+
return createUseCaseSystemErrorResult(`Error retrieving file data for fileId: ${opts.fileId}`, error);
|
|
14
14
|
}
|
|
15
15
|
};
|
|
16
16
|
//# sourceMappingURL=GetImageFromProduct.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GetImageFromProduct.js","sourceRoot":"","sources":["../../../src/usecases/Images/GetImageFromProduct.ts"],"names":[],"mappings":"AACA,OAAO,EAEH,
|
|
1
|
+
{"version":3,"file":"GetImageFromProduct.js","sourceRoot":"","sources":["../../../src/usecases/Images/GetImageFromProduct.ts"],"names":[],"mappings":"AACA,OAAO,EAEH,0BAA0B,EAC1B,8BAA8B,EACjC,MAAM,8BAA8B,CAAA;AAOrC;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAC,IAA8B,EAAyC,EAAE;IAC9G,4EAA4E;IAC5E,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACnE,OAAO,0BAA0B,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAA;IACvD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,8BAA8B,CACjC,0CAA0C,IAAI,CAAC,MAAM,EAAE,EACvD,KAAK,CACR,CAAA;IACL,CAAC;AACL,CAAC,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createUseCaseSuccessResult, createUseCaseApiErrorResult } from '../../types/UseCaseResult.js';
|
|
2
2
|
/**
|
|
3
3
|
* Uploads image data to eBay and returns the upload result
|
|
4
4
|
* TODO: since pictures can expire, we may need to check if image is already uploaded
|
|
@@ -12,14 +12,14 @@ export const pushImageToEbay = async (params) => {
|
|
|
12
12
|
});
|
|
13
13
|
// Handle adapter result
|
|
14
14
|
if (!pushImageResponse.success) {
|
|
15
|
-
return
|
|
15
|
+
return createUseCaseApiErrorResult(pushImageResponse.error, 'pushImageToEbay');
|
|
16
16
|
}
|
|
17
17
|
const { data } = pushImageResponse;
|
|
18
18
|
console.log('push image success?: ', pushImageResponse);
|
|
19
|
-
return
|
|
19
|
+
return createUseCaseSuccessResult(data, pushImageResponse.request);
|
|
20
20
|
}
|
|
21
21
|
catch (error) {
|
|
22
|
-
return
|
|
22
|
+
return createUseCaseApiErrorResult(error, 'pushImageToEbay');
|
|
23
23
|
}
|
|
24
24
|
};
|
|
25
25
|
//# sourceMappingURL=PushImageToEbay.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PushImageToEbay.js","sourceRoot":"","sources":["../../../src/usecases/Images/PushImageToEbay.ts"],"names":[],"mappings":"AAEA,OAAO,EAEH,
|
|
1
|
+
{"version":3,"file":"PushImageToEbay.js","sourceRoot":"","sources":["../../../src/usecases/Images/PushImageToEbay.ts"],"names":[],"mappings":"AAEA,OAAO,EAEH,0BAA0B,EAC1B,2BAA2B,EAC9B,MAAM,8BAA8B,CAAA;AASrC;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAC,MAA4B,EAA2C,EAAE;IAC1G,IAAI,CAAC;QACD,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC;YAC3D,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,UAAU;SAC9C,CAAC,CAAA;QAEF,wBAAwB;QACxB,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAO,2BAA2B,CAAC,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAA;QAClF,CAAC;QAED,MAAM,EAAC,IAAI,EAAC,GAAG,iBAAiB,CAAA;QAChC,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,iBAAiB,CAAC,CAAA;QACvD,OAAO,0BAA0B,CAAC,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAA;IACtE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,2BAA2B,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAA;IAChE,CAAC;AACL,CAAC,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { pushImageToEbay } from "./PushImageToEbay.js";
|
|
2
2
|
import { getImageFromProduct } from "./GetImageFromProduct.js";
|
|
3
|
-
import {
|
|
3
|
+
import { createUseCaseSuccessResult, createUseCaseSystemErrorResult } from "../../types/UseCaseResult.js";
|
|
4
4
|
/**
|
|
5
5
|
* Convert and send image from Itrack to eBay
|
|
6
6
|
* This is a master use case that orchestrates getting image data and uploading to eBay
|
|
@@ -12,10 +12,10 @@ export const syncImageToEbay = async (params) => {
|
|
|
12
12
|
fileId: params.fileId,
|
|
13
13
|
});
|
|
14
14
|
if (!getImageDataResponse.success) {
|
|
15
|
-
return
|
|
15
|
+
return createUseCaseSystemErrorResult('Failed to retrieve image data from itrack', getImageDataResponse.errors);
|
|
16
16
|
}
|
|
17
17
|
if (!getImageDataResponse.data) {
|
|
18
|
-
return
|
|
18
|
+
return createUseCaseSystemErrorResult(`No image data found for fileId: ${params.fileId}`);
|
|
19
19
|
}
|
|
20
20
|
// Send image to eBay
|
|
21
21
|
const ebayResponse = await pushImageToEbay({
|
|
@@ -25,10 +25,10 @@ export const syncImageToEbay = async (params) => {
|
|
|
25
25
|
pictureSet: 'Standard'
|
|
26
26
|
});
|
|
27
27
|
if (!ebayResponse.success) {
|
|
28
|
-
return
|
|
28
|
+
return createUseCaseSystemErrorResult('Failed to upload image to eBay', ebayResponse.errors);
|
|
29
29
|
}
|
|
30
30
|
console.log('eBay image upload successful:', ebayResponse.data);
|
|
31
|
-
return
|
|
31
|
+
return createUseCaseSuccessResult({
|
|
32
32
|
fileId: params.fileId,
|
|
33
33
|
imageUploadResult: ebayResponse.data
|
|
34
34
|
}, ebayResponse.request);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncImageToEbay.js","sourceRoot":"","sources":["../../../src/usecases/Images/SyncImageToEbay.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAEH,
|
|
1
|
+
{"version":3,"file":"SyncImageToEbay.js","sourceRoot":"","sources":["../../../src/usecases/Images/SyncImageToEbay.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAEH,0BAA0B,EAC1B,8BAA8B,EACjC,MAAM,8BAA8B,CAAA;AAerC;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAC,MAA4B,EAAyC,EAAE;IACxG,8BAA8B;IAC9B,MAAM,oBAAoB,GAAG,MAAM,mBAAmB,CAAC;QACnD,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,MAAM,EAAE,MAAM,CAAC,MAAM;KACxB,CAAC,CAAA;IAEF,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,CAAC;QAChC,OAAO,8BAA8B,CACjC,2CAA2C,EAC3C,oBAAoB,CAAC,MAAM,CAC9B,CAAA;IACL,CAAC;IAED,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC;QAC7B,OAAO,8BAA8B,CACjC,mCAAmC,MAAM,CAAC,MAAM,EAAE,CACrD,CAAA;IACL,CAAC;IAED,qBAAqB;IACrB,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC;QACvC,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,WAAW,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE;QACrC,QAAQ,EAAE,oBAAoB,CAAC,IAAI;QACnC,UAAU,EAAE,UAAU;KACzB,CAAC,CAAA;IAEF,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QACxB,OAAO,8BAA8B,CACjC,gCAAgC,EAChC,YAAY,CAAC,MAAM,CACtB,CAAA;IACL,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,YAAY,CAAC,IAAI,CAAC,CAAA;IAE/D,OAAO,0BAA0B,CAC7B;QACI,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,iBAAiB,EAAE,YAAY,CAAC,IAAK;KACxC,EACD,YAAY,CAAC,OAAO,CACvB,CAAA;AACL,CAAC,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { syncImageToEbay } from "./SyncImageToEbay.js";
|
|
2
|
-
import {
|
|
2
|
+
import { createUseCaseSuccessResult, createUseCaseSystemErrorResult } from "../../types/UseCaseResult.js";
|
|
3
3
|
/**
|
|
4
4
|
* Convert and send multiple images from Itrack to eBay sequentially
|
|
5
5
|
* This is a use case that orchestrates uploading multiple images to eBay
|
|
@@ -39,7 +39,7 @@ export const syncMultipleImagesToEbay = async (params) => {
|
|
|
39
39
|
}
|
|
40
40
|
// If no images were successfully processed, return an error
|
|
41
41
|
if (results.length === 0) {
|
|
42
|
-
return
|
|
42
|
+
return createUseCaseSystemErrorResult('Failed to sync any images to eBay', errors);
|
|
43
43
|
}
|
|
44
44
|
// If some images failed but at least one succeeded, return success with partial results
|
|
45
45
|
// The errors will be included in the response for the caller to handle
|
|
@@ -48,6 +48,6 @@ export const syncMultipleImagesToEbay = async (params) => {
|
|
|
48
48
|
}
|
|
49
49
|
// Return success result - errors are already logged and handled above
|
|
50
50
|
// For partial failures, the caller can check the results array length vs input array length
|
|
51
|
-
return
|
|
51
|
+
return createUseCaseSuccessResult(results);
|
|
52
52
|
};
|
|
53
53
|
//# sourceMappingURL=SyncMultipleImagesToEbay.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncMultipleImagesToEbay.js","sourceRoot":"","sources":["../../../src/usecases/Images/SyncMultipleImagesToEbay.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAiB,MAAM,sBAAsB,CAAA;AACrE,OAAO,EAEH,
|
|
1
|
+
{"version":3,"file":"SyncMultipleImagesToEbay.js","sourceRoot":"","sources":["../../../src/usecases/Images/SyncMultipleImagesToEbay.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAiB,MAAM,sBAAsB,CAAA;AACrE,OAAO,EAEH,0BAA0B,EAC1B,8BAA8B,EACjC,MAAM,8BAA8B,CAAA;AAUrC;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,EAAC,MAAqC,EAA2C,EAAE;IAC5H,MAAM,OAAO,GAAoB,EAAE,CAAA;IACnC,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;IAClC,qDAAqD;IACrD,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC3B,IAAI,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC;gBACrC,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,MAAM,EAAE,IAAI,CAAC,MAAM;aACtB,CAAC,CAAA;YAEF,IAAI,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;gBACxC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;gBAC7B,OAAO,CAAC,GAAG,CAAC,0CAA0C,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;YACxE,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAA;gBAC/D,MAAM,YAAY,GAAG,qCAAqC,IAAI,CAAC,MAAM,EAAE,CAAA;gBACvE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;gBACzB,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;gBAE9C,yDAAyD;gBACzD,oCAAoC;YACxC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,YAAY,GAAG,uDAAuD,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,CAAA;YACnG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACzB,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;QAC/B,CAAC;IACL,CAAC;IAED,4DAA4D;IAC5D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,8BAA8B,CACjC,mCAAmC,EACnC,MAAM,CACT,CAAA;IACL,CAAC;IAED,wFAAwF;IACxF,uEAAuE;IACvE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,oBAAoB,OAAO,CAAC,MAAM,mBAAmB,MAAM,CAAC,MAAM,SAAS,CAAC,CAAA;IAC7F,CAAC;IAED,sEAAsE;IACtE,4FAA4F;IAC5F,OAAO,0BAA0B,CAAC,OAAO,CAAC,CAAA;AAC9C,CAAC,CAAA"}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import { validateInventoryItem } from "../../entities/ebay/InventoryItem.js";
|
|
2
|
-
import {
|
|
2
|
+
import { createUseCaseSuccessResult, createUseCaseValidationErrorResult, createUseCaseApiErrorResult } from "../../types/UseCaseResult.js";
|
|
3
3
|
// TODO: Do I need to check if location (store) exists or assume the plugin is up to date
|
|
4
4
|
export const pushInventoryToEbay = async (params) => {
|
|
5
5
|
// Validate the inventory item using the new validation system
|
|
6
6
|
const validationResult = validateInventoryItem(params.inventoryItem);
|
|
7
7
|
if (!validationResult.success) {
|
|
8
|
-
return
|
|
8
|
+
return createUseCaseValidationErrorResult(validationResult.errors || []);
|
|
9
9
|
}
|
|
10
10
|
try {
|
|
11
11
|
// Send request to eBay
|
|
12
12
|
const pushInventoryResponse = await params.ebayAdapter.pushInventory(params.inventoryItem, params.sku);
|
|
13
|
-
return
|
|
13
|
+
return createUseCaseSuccessResult({
|
|
14
14
|
sku: params.sku
|
|
15
15
|
}, pushInventoryResponse.request);
|
|
16
16
|
}
|
|
17
17
|
catch (error) {
|
|
18
|
-
return
|
|
18
|
+
return createUseCaseApiErrorResult(error, 'eBay inventory push failed');
|
|
19
19
|
}
|
|
20
20
|
};
|
|
21
21
|
//# sourceMappingURL=PushInventorySkuToEbay.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PushInventorySkuToEbay.js","sourceRoot":"","sources":["../../../src/usecases/Inventory/PushInventorySkuToEbay.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAA;AAE5E,OAAO,EAEH,
|
|
1
|
+
{"version":3,"file":"PushInventorySkuToEbay.js","sourceRoot":"","sources":["../../../src/usecases/Inventory/PushInventorySkuToEbay.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAA;AAE5E,OAAO,EAEH,0BAA0B,EAC1B,kCAAkC,EAClC,2BAA2B,EAC9B,MAAM,8BAA8B,CAAA;AAgBrC,0FAA0F;AAC1F,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAC,MAA0B,EAA6C,EAAE;IAC9G,8DAA8D;IAC9D,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;IAEpE,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC5B,OAAO,kCAAkC,CAAC,gBAAgB,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;IAC5E,CAAC;IAED,IAAI,CAAC;QACD,uBAAuB;QACvB,MAAM,qBAAqB,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,CAAA;QACtG,OAAO,0BAA0B,CAAC;YAC9B,GAAG,EAAE,MAAM,CAAC,GAAG;SAClB,EACD,qBAAqB,CAAC,OAAO,CAChC,CAAA;IACD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,2BAA2B,CAAC,KAAK,EAAE,4BAA4B,CAAC,CAAA;IAC3E,CAAC;AACL,CAAC,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { pushInventoryToEbay } from "./PushInventorySkuToEbay.js";
|
|
2
|
-
import {
|
|
2
|
+
import { createUseCaseSuccessResult, formatErrorsForLogging } from "../../types/UseCaseResult.js";
|
|
3
3
|
/**
|
|
4
4
|
* Convert and send ITrack inventory item to eBay
|
|
5
5
|
* Referenced using unique sku
|
|
@@ -30,7 +30,7 @@ export const syncInventoryToEbay = async (params) => {
|
|
|
30
30
|
// TODO: Write returned item + response to listing table
|
|
31
31
|
// Not sure if it makes sense to do that here and then update later if/when offer gets created
|
|
32
32
|
// or if we let the higher level offer use case handle updating/writing the row with inventory, offer id, date and success
|
|
33
|
-
return
|
|
33
|
+
return createUseCaseSuccessResult({
|
|
34
34
|
sku: params.sku
|
|
35
35
|
}, pushInventoryResponse.request);
|
|
36
36
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncInventoryToEbay.js","sourceRoot":"","sources":["../../../src/usecases/Inventory/SyncInventoryToEbay.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAEjE,OAAO,EAEH,
|
|
1
|
+
{"version":3,"file":"SyncInventoryToEbay.js","sourceRoot":"","sources":["../../../src/usecases/Inventory/SyncInventoryToEbay.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAEjE,OAAO,EAEH,0BAA0B,EAC1B,sBAAsB,EAEzB,MAAM,8BAA8B,CAAA;AAarC;;;GAGG;AAEH,yDAAyD;AACzD,0FAA0F;AAC1F,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAC,MAAgC,EAAmD,EAAE;IAE1H,uBAAuB;IACvB,MAAM,qBAAqB,GAAG,MAAM,mBAAmB,CAAC,EAAC,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAC,CAAC,CAAA;IAEhJ,kEAAkE;IAClE,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC;QACjC,iCAAiC;QACjC,OAAO,CAAC,GAAG,CAAC,kCAAkC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAA;QAC3D,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,sBAAsB,CAAC,qBAAqB,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAA;QAElF,yEAAyE;QACzE,0BAA0B;QAC1B,6BAA6B;QAC7B,0CAA0C;QAC1C,IAAI;QACJ,6DAA6D;QAC7D,OAAO,qBAAqB,CAAA;IAChC,CAAC;IAED,0DAA0D;IAC1D,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,qBAAqB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IACpF,IAAI,qBAAqB,CAAC,OAAO,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IACzF,CAAC;IAED,wDAAwD;IACxD,8FAA8F;IAC9F,0HAA0H;IAE1H,OAAO,0BAA0B,CAC7B;QACI,GAAG,EAAE,MAAM,CAAC,GAAG;KAClB,EACD,qBAAqB,CAAC,OAAO,CAChC,CAAA;AACL,CAAC,CAAA;AAED,MAAM;AACN,uDAAuD;AACvD,sFAAsF;AACtF,wFAAwF;AACxF,MAAM"}
|
|
@@ -4,7 +4,7 @@ export interface Input {
|
|
|
4
4
|
}
|
|
5
5
|
export declare const getInventoryLocationsFromEbay: (params: Input) => Promise<import("../../repositories/ebay/BaseRepo.js").RepoError | import("../../repositories/ebay/BaseRepo.js").RepoSuccess<import("../../entities/ebay/LocationDetails.js").LocationResponse> | {
|
|
6
6
|
data: import("../../index.js").InventoryLocationResponse[];
|
|
7
|
-
uuid
|
|
7
|
+
uuid?: string;
|
|
8
8
|
success: true;
|
|
9
9
|
request?: import("../../index.js").HttpRequest;
|
|
10
10
|
}>;
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { InventoryLocationFull } from "../../entities/ebay/InventoryLocationFull.js";
|
|
2
|
+
import { WebEbayAdapter } from "../../adapters/ebay/WebEbayAdapter.js";
|
|
3
|
+
/**
|
|
4
|
+
* Web-friendly use case for getting inventory locations from eBay
|
|
5
|
+
*
|
|
6
|
+
* This use case is designed for web applications where:
|
|
7
|
+
* - No MySQL database connection is available
|
|
8
|
+
* - OAuth is handled via EbayOAuthManager
|
|
9
|
+
* - The web app handles data persistence
|
|
10
|
+
*
|
|
11
|
+
* Unlike SyncInventoryLocations.ts which:
|
|
12
|
+
* - Requires TokenManager and ItrackAdapter
|
|
13
|
+
* - Pulls data from product system (itrack)
|
|
14
|
+
* - Compares and syncs automatically
|
|
15
|
+
* - Stores keys in TokenManager
|
|
16
|
+
*
|
|
17
|
+
* This use case simply:
|
|
18
|
+
* - Fetches locations from eBay
|
|
19
|
+
* - Returns them to the web app
|
|
20
|
+
* - Lets the web app handle storage/comparison
|
|
21
|
+
*/
|
|
22
|
+
export interface WebGetInventoryLocationsInput {
|
|
23
|
+
/** WebEbayAdapter instance (uses EbayOAuthManager) */
|
|
24
|
+
ebayAdapter: WebEbayAdapter;
|
|
25
|
+
/** Optional pagination offset */
|
|
26
|
+
offset?: number;
|
|
27
|
+
/** Optional pagination limit */
|
|
28
|
+
limit?: number;
|
|
29
|
+
}
|
|
30
|
+
export interface WebGetInventoryLocationsResult {
|
|
31
|
+
success: boolean;
|
|
32
|
+
locations: InventoryLocationFull[];
|
|
33
|
+
error?: {
|
|
34
|
+
message: string;
|
|
35
|
+
details?: any;
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Fetches inventory locations from eBay for use in a web application
|
|
40
|
+
*
|
|
41
|
+
* @param params - Input parameters including the WebEbayAdapter
|
|
42
|
+
* @returns Array of inventory locations from eBay
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```typescript
|
|
46
|
+
* // In your Express route handler
|
|
47
|
+
* app.get('/api/ebay/locations', async (req, res) => {
|
|
48
|
+
* const oauthManager = new EbayOAuthManager({...config})
|
|
49
|
+
* const webAdapter = new WebEbayAdapter(oauthManager)
|
|
50
|
+
*
|
|
51
|
+
* const result = await webGetInventoryLocations({
|
|
52
|
+
* ebayAdapter: webAdapter
|
|
53
|
+
* })
|
|
54
|
+
*
|
|
55
|
+
* if (result.success) {
|
|
56
|
+
* // Web app can now save these to its database
|
|
57
|
+
* await saveLocationsToDatabase(result.locations)
|
|
58
|
+
* res.json({ locations: result.locations })
|
|
59
|
+
* } else {
|
|
60
|
+
* res.status(500).json({ error: result.error })
|
|
61
|
+
* }
|
|
62
|
+
* })
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
export declare const webGetInventoryLocations: (params: WebGetInventoryLocationsInput) => Promise<WebGetInventoryLocationsResult>;
|
|
66
|
+
/**
|
|
67
|
+
* Creates a new inventory location on eBay from a web application
|
|
68
|
+
*
|
|
69
|
+
* @param ebayAdapter - WebEbayAdapter instance
|
|
70
|
+
* @param location - The location data to create
|
|
71
|
+
* @param key - The merchant location key (unique identifier)
|
|
72
|
+
* @returns Success status and any error details
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* ```typescript
|
|
76
|
+
* // In your Express route handler
|
|
77
|
+
* app.post('/api/ebay/locations', async (req, res) => {
|
|
78
|
+
* const { location, key } = req.body
|
|
79
|
+
* const oauthManager = new EbayOAuthManager({...config})
|
|
80
|
+
* const webAdapter = new WebEbayAdapter(oauthManager)
|
|
81
|
+
*
|
|
82
|
+
* const result = await webCreateInventoryLocation(webAdapter, location, key)
|
|
83
|
+
*
|
|
84
|
+
* if (result.success) {
|
|
85
|
+
* // Save to your database
|
|
86
|
+
* await saveLocationToDatabase({ location, key })
|
|
87
|
+
* res.json({ message: 'Location created successfully' })
|
|
88
|
+
* } else {
|
|
89
|
+
* res.status(500).json({ error: result.error })
|
|
90
|
+
* }
|
|
91
|
+
* })
|
|
92
|
+
* ```
|
|
93
|
+
*/
|
|
94
|
+
export declare const webCreateInventoryLocation: (ebayAdapter: WebEbayAdapter, location: InventoryLocationFull, key: string) => Promise<{
|
|
95
|
+
success: boolean;
|
|
96
|
+
error?: any;
|
|
97
|
+
}>;
|
|
98
|
+
//# sourceMappingURL=WebGetInventoryLocations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebGetInventoryLocations.d.ts","sourceRoot":"","sources":["../../../src/usecases/Location/WebGetInventoryLocations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAA;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AAEtE;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,WAAW,6BAA6B;IAC7C,sDAAsD;IACtD,WAAW,EAAE,cAAc,CAAA;IAC3B,iCAAiC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,8BAA8B;IAC9C,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,qBAAqB,EAAE,CAAA;IAClC,KAAK,CAAC,EAAE;QACP,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,CAAC,EAAE,GAAG,CAAA;KACb,CAAA;CACD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,eAAO,MAAM,wBAAwB,GACpC,QAAQ,6BAA6B,KACnC,OAAO,CAAC,8BAA8B,CAgCxC,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,0BAA0B,GACtC,aAAa,cAAc,EAC3B,UAAU,qBAAqB,EAC/B,KAAK,MAAM,KACT,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,GAAG,CAAA;CAAE,CA2B3C,CAAA"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Fetches inventory locations from eBay for use in a web application
|
|
3
|
+
*
|
|
4
|
+
* @param params - Input parameters including the WebEbayAdapter
|
|
5
|
+
* @returns Array of inventory locations from eBay
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* // In your Express route handler
|
|
10
|
+
* app.get('/api/ebay/locations', async (req, res) => {
|
|
11
|
+
* const oauthManager = new EbayOAuthManager({...config})
|
|
12
|
+
* const webAdapter = new WebEbayAdapter(oauthManager)
|
|
13
|
+
*
|
|
14
|
+
* const result = await webGetInventoryLocations({
|
|
15
|
+
* ebayAdapter: webAdapter
|
|
16
|
+
* })
|
|
17
|
+
*
|
|
18
|
+
* if (result.success) {
|
|
19
|
+
* // Web app can now save these to its database
|
|
20
|
+
* await saveLocationsToDatabase(result.locations)
|
|
21
|
+
* res.json({ locations: result.locations })
|
|
22
|
+
* } else {
|
|
23
|
+
* res.status(500).json({ error: result.error })
|
|
24
|
+
* }
|
|
25
|
+
* })
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
export const webGetInventoryLocations = async (params) => {
|
|
29
|
+
try {
|
|
30
|
+
const response = await params.ebayAdapter.getInventoryLocations(params.offset, params.limit);
|
|
31
|
+
if (response.success && response.data) {
|
|
32
|
+
return {
|
|
33
|
+
success: true,
|
|
34
|
+
locations: response.data
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
return {
|
|
39
|
+
success: false,
|
|
40
|
+
locations: [],
|
|
41
|
+
error: {
|
|
42
|
+
message: 'Failed to retrieve locations from eBay',
|
|
43
|
+
details: response
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
catch (error) {
|
|
49
|
+
return {
|
|
50
|
+
success: false,
|
|
51
|
+
locations: [],
|
|
52
|
+
error: {
|
|
53
|
+
message: error instanceof Error ? error.message : 'Unknown error',
|
|
54
|
+
details: error
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Creates a new inventory location on eBay from a web application
|
|
61
|
+
*
|
|
62
|
+
* @param ebayAdapter - WebEbayAdapter instance
|
|
63
|
+
* @param location - The location data to create
|
|
64
|
+
* @param key - The merchant location key (unique identifier)
|
|
65
|
+
* @returns Success status and any error details
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* ```typescript
|
|
69
|
+
* // In your Express route handler
|
|
70
|
+
* app.post('/api/ebay/locations', async (req, res) => {
|
|
71
|
+
* const { location, key } = req.body
|
|
72
|
+
* const oauthManager = new EbayOAuthManager({...config})
|
|
73
|
+
* const webAdapter = new WebEbayAdapter(oauthManager)
|
|
74
|
+
*
|
|
75
|
+
* const result = await webCreateInventoryLocation(webAdapter, location, key)
|
|
76
|
+
*
|
|
77
|
+
* if (result.success) {
|
|
78
|
+
* // Save to your database
|
|
79
|
+
* await saveLocationToDatabase({ location, key })
|
|
80
|
+
* res.json({ message: 'Location created successfully' })
|
|
81
|
+
* } else {
|
|
82
|
+
* res.status(500).json({ error: result.error })
|
|
83
|
+
* }
|
|
84
|
+
* })
|
|
85
|
+
* ```
|
|
86
|
+
*/
|
|
87
|
+
export const webCreateInventoryLocation = async (ebayAdapter, location, key) => {
|
|
88
|
+
try {
|
|
89
|
+
const response = await ebayAdapter.createInventoryLocation({
|
|
90
|
+
location,
|
|
91
|
+
key
|
|
92
|
+
});
|
|
93
|
+
if (response.success) {
|
|
94
|
+
return { success: true };
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
return {
|
|
98
|
+
success: false,
|
|
99
|
+
error: {
|
|
100
|
+
message: 'Failed to create location on eBay',
|
|
101
|
+
details: response
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
catch (error) {
|
|
107
|
+
return {
|
|
108
|
+
success: false,
|
|
109
|
+
error: {
|
|
110
|
+
message: error instanceof Error ? error.message : 'Unknown error',
|
|
111
|
+
details: error
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
//# sourceMappingURL=WebGetInventoryLocations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebGetInventoryLocations.js","sourceRoot":"","sources":["../../../src/usecases/Location/WebGetInventoryLocations.ts"],"names":[],"mappings":"AAyCA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,EAC5C,MAAqC,EACK,EAAE;IAC5C,IAAI,CAAC;QACJ,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,qBAAqB,CAC9D,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,KAAK,CACZ,CAAA;QAED,IAAI,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YACvC,OAAO;gBACN,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,QAAQ,CAAC,IAAmC;aACvD,CAAA;QACF,CAAC;aAAM,CAAC;YACP,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,SAAS,EAAE,EAAE;gBACb,KAAK,EAAE;oBACN,OAAO,EAAE,wCAAwC;oBACjD,OAAO,EAAE,QAAQ;iBACjB;aACD,CAAA;QACF,CAAC;IACF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO;YACN,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,EAAE;YACb,KAAK,EAAE;gBACN,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;gBACjE,OAAO,EAAE,KAAK;aACd;SACD,CAAA;IACF,CAAC;AACF,CAAC,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,EAC9C,WAA2B,EAC3B,QAA+B,EAC/B,GAAW,EACkC,EAAE;IAC/C,IAAI,CAAC;QACJ,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,uBAAuB,CAAC;YAC1D,QAAQ;YACR,GAAG;SACH,CAAC,CAAA;QAEF,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;QACzB,CAAC;aAAM,CAAC;YACP,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACN,OAAO,EAAE,mCAAmC;oBAC5C,OAAO,EAAE,QAAQ;iBACjB;aACD,CAAA;QACF,CAAC;IACF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO;YACN,OAAO,EAAE,KAAK;YACd,KAAK,EAAE;gBACN,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;gBACjE,OAAO,EAAE,KAAK;aACd;SACD,CAAA;IACF,CAAC;AACF,CAAC,CAAA"}
|
|
@@ -3,7 +3,7 @@ import { FormatTypeEnum } from "../../entities/ebay/Offer.js";
|
|
|
3
3
|
import { ListingDurationEnum } from "../../entities/ebay/ListingDurationEnum.js";
|
|
4
4
|
import { ListingPolicies } from "../../entities/ebay/ListingPolicies.js";
|
|
5
5
|
import { CurrencyCodeEnum } from "../../entities/ebay/Amount.js";
|
|
6
|
-
import {
|
|
6
|
+
import { createUseCaseSuccessResult, createUseCaseSystemErrorResult } from "../../types/UseCaseResult.js";
|
|
7
7
|
import { isAdapterSuccess } from "../../adapters/AdapterResult.js";
|
|
8
8
|
// 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
|
|
9
9
|
// eBay enum value saved. So I can get and cache the e-commerce_condition values early on then try to match,
|
|
@@ -21,7 +21,7 @@ export const convertItrackListingToEbayInventoryAndOffer = async (params) => {
|
|
|
21
21
|
// I don't know how to feel about this solution yet
|
|
22
22
|
const conditionResult = await itrackAdapter.convertToEbayCondition(ecommercePartnerId, ecommerceConditionId);
|
|
23
23
|
if (!isAdapterSuccess(conditionResult)) {
|
|
24
|
-
return
|
|
24
|
+
return createUseCaseSystemErrorResult(`Failed to convert condition: ${conditionResult.error?.message}`, conditionResult.error);
|
|
25
25
|
}
|
|
26
26
|
const condition = conditionResult.data;
|
|
27
27
|
// Convert to inventory item
|
|
@@ -97,6 +97,6 @@ export const convertItrackListingToEbayInventoryAndOffer = async (params) => {
|
|
|
97
97
|
if (inventoryListingDetail.partnerSpecificDetails.oemNumber) {
|
|
98
98
|
result.ebayInventoryItem.product.aspects['OE/OEM Part Number'] = [inventoryListingDetail.partnerSpecificDetails.oemNumber];
|
|
99
99
|
}
|
|
100
|
-
return
|
|
100
|
+
return createUseCaseSuccessResult(result);
|
|
101
101
|
};
|
|
102
102
|
//# sourceMappingURL=ConvertItrackListingToEbayInventoryAndOffer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConvertItrackListingToEbayInventoryAndOffer.js","sourceRoot":"","sources":["../../../src/usecases/Offer/ConvertItrackListingToEbayInventoryAndOffer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,+BAA+B,EAAE,+BAA+B,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AACjI,OAAO,EAAoB,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAE/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAA;AAIhF,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAA;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,EAEH,
|
|
1
|
+
{"version":3,"file":"ConvertItrackListingToEbayInventoryAndOffer.js","sourceRoot":"","sources":["../../../src/usecases/Offer/ConvertItrackListingToEbayInventoryAndOffer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,+BAA+B,EAAE,+BAA+B,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AACjI,OAAO,EAAoB,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAE/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAA;AAIhF,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAA;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,EAEH,0BAA0B,EAC1B,8BAA8B,EACjC,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AA+BlE,0KAA0K;AAC1K,8GAA8G;AAC9G,iJAAiJ;AACjJ,sHAAsH;AACtH,yEAAyE;AAGzE,oIAAoI;AACpI,iIAAiI;AACjI,wCAAwC;AACxC,gEAAgE;AAChE,MAAM,CAAC,MAAM,2CAA2C,GAAG,KAAK,EAAE,MAAqC,EAAoD,EAAE;IACzJ,MAAM,EAAE,sBAAsB,EAAE,aAAa,EAAE,SAAS,EAAC,GAAI,MAAM,CAAA;IACnE,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,kBAAkB,CAAA;IACpE,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,oBAAoB,CAAA;IAExE,mDAAmD;IACnD,MAAM,eAAe,GAAG,MAAM,aAAa,CAAC,sBAAsB,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,CAAA;IAC5G,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,EAAE,CAAC;QACrC,OAAO,8BAA8B,CACjC,gCAAgC,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,EAChE,eAAe,CAAC,KAAK,CACxB,CAAA;IACL,CAAC;IAED,MAAM,SAAS,GAAG,eAAe,CAAC,IAAyB,CAAA;IAC3D,4BAA4B;IAE5B,MAAM,MAAM,GAA6B;QACrC,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,eAAe,CAAC;gBAC7E,MAAM,EAAE;oBACJ,IAAI,EAAE,+BAA+B,CAAC,sBAAsB,CAAC,UAAU,CAAC;oBACxE,KAAK,EAAE,sBAAsB,CAAC,MAAM;iBACvC;aACJ;YACD,OAAO,EAAE;gBACL,OAAO,EAAE;oBACL,KAAK,EAAE,CAAC,sBAAsB,CAAC,sBAAsB,EAAE,KAAK,IAAI,WAAW,CAAC;iBAC/E;gBACD,4CAA4C;gBAC5C,KAAK,EAAE,sBAAsB,CAAC,GAAG;gBACjC,4BAA4B;gBAC5B,WAAW,EAAE,sBAAsB,CAAC,oBAAoB;gBACxD,6CAA6C;gBAC7C,SAAS,EAAE,SAAS;aACvB;SACJ;QACD,cAAc,EAAE;YACZ,iBAAiB,EAAE,sBAAsB,CAAC,QAAQ;YAClD,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,eAAe,EAAE,IAAI,eAAe,CAAC;gBACjC,mBAAmB,EAAE,sBAAsB,CAAC,sBAAsB,CAAC,mBAAmB,EAAE,QAAQ,EAAE;gBAClG,eAAe,EAAE,sBAAsB,CAAC,sBAAsB,CAAC,eAAe,EAAE,QAAQ,EAAE;gBAC1F,cAAc,EAAE,sBAAsB,CAAC,sBAAsB,CAAC,cAAc,EAAE,QAAQ,EAAE;aAC3F,CAAC;YACF,aAAa,EAAE,sBAAsB,CAAC,sBAAsB,CAAC,aAAgC;YAC7F,mBAAmB,EAAE,sBAAsB,CAAC,sBAAsB,CAAC,mBAAmB;YACtF,cAAc,EAAE;gBACZ,KAAK,EAAE;oBACH,QAAQ,EAAE,gBAAgB,CAAC,GAAG;oBAC9B,KAAK,EAAE,sBAAsB,CAAC,KAAK,CAAC,QAAQ,EAAE;iBACjD;aACJ;YACD,GAAG,EAAE,sBAAsB,CAAC,GAAG;SAClC;KAEJ,CAAA;IACD,4BAA4B;IAC5B,IAAI,sBAAsB,CAAC,sBAAsB,CAAC,KAAK,EAAE,CAAC;QACtD,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,GAAG,sBAAsB,CAAC,sBAAsB,CAAC,KAAK,CAAA;IAChG,CAAC;IACD,IAAI,sBAAsB,CAAC,sBAAsB,EAAE,CAAC;QAChD,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,GAAG,GAAG,sBAAsB,CAAC,sBAAsB,CAAA;QACpF,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,sBAAsB,CAAC,sBAAsB,CAAC,CAAA;IAE1H,CAAC;IACD,yBAAyB;IACzB,IAAI,sBAAsB,CAAC,sBAAsB,CAAC,SAAS,EAAE,CAAC;QAC1D,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,sBAAsB,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAA;IAC9H,CAAC;IACD,OAAO,0BAA0B,CAAC,MAAM,CAAC,CAAA;AAC7C,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GetEbayDefaultsFromProduct.d.ts","sourceRoot":"","sources":["../../../src/usecases/Offer/GetEbayDefaultsFromProduct.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AACvF,OAAO,EACH,aAAa,
|
|
1
|
+
{"version":3,"file":"GetEbayDefaultsFromProduct.d.ts","sourceRoot":"","sources":["../../../src/usecases/Offer/GetEbayDefaultsFromProduct.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AACvF,OAAO,EACH,aAAa,EAIhB,MAAM,8BAA8B,CAAA;AAErC,MAAM,WAAW,aAAa;IAC1B,aAAa,EAAE,aAAa,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAA;CAC7B;AAGD,eAAO,MAAM,0BAA0B,GAAU,MAAM,aAAa,KAAG,OAAO,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAgB/G,CAAA"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createUseCaseSuccessResult, createUseCaseSystemErrorResult } from "../../types/UseCaseResult.js";
|
|
2
2
|
export const getEbayDefaultsFromProduct = async (opts) => {
|
|
3
3
|
const ebayDefaults = await opts.itrackAdapter.getItrackEbayDefaults(opts.ecommercePartnerId);
|
|
4
4
|
if (!ebayDefaults.success) {
|
|
5
|
-
return
|
|
5
|
+
return createUseCaseSystemErrorResult(`Failed to convert condition: ${ebayDefaults.error?.message}`, ebayDefaults.error);
|
|
6
6
|
}
|
|
7
7
|
const { data } = ebayDefaults;
|
|
8
|
-
return
|
|
8
|
+
return createUseCaseSuccessResult(data);
|
|
9
9
|
};
|
|
10
10
|
//# sourceMappingURL=GetEbayDefaultsFromProduct.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GetEbayDefaultsFromProduct.js","sourceRoot":"","sources":["../../../src/usecases/Offer/GetEbayDefaultsFromProduct.ts"],"names":[],"mappings":"AACA,OAAO,EAEH,
|
|
1
|
+
{"version":3,"file":"GetEbayDefaultsFromProduct.js","sourceRoot":"","sources":["../../../src/usecases/Offer/GetEbayDefaultsFromProduct.ts"],"names":[],"mappings":"AACA,OAAO,EAEH,0BAA0B,EACxB,8BAA8B,EAEnC,MAAM,8BAA8B,CAAA;AAQrC,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,EAAE,IAAmB,EAA8C,EAAE;IAEhH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IAE5F,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QACxB,OAAS,8BAA8B,CAEnC,gCAAgC,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,EAC7D,YAAY,CAAC,KAAK,CACrB,CAAA;IACL,CAAC;IAED,MAAM,EAAC,IAAI,EAAC,GAAG,YAAY,CAAA;IAC3B,OAAO,0BAA0B,CAAC,IAAI,CAAC,CAAA;AAG3C,CAAC,CAAA"}
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createUseCaseSuccessResult, createUseCaseSystemErrorResult, createUseCaseApiErrorResult, } from "../../types/UseCaseResult.js";
|
|
2
2
|
export const publishEbayOffer = async (params) => {
|
|
3
3
|
try {
|
|
4
4
|
// Send publish request to eBay
|
|
5
5
|
const publishOfferResponse = await params.ebayAdapter.publishOffer({ offerId: params.offerId });
|
|
6
6
|
console.log('publish offer response: ', publishOfferResponse);
|
|
7
7
|
if (publishOfferResponse.success && publishOfferResponse.data.id) {
|
|
8
|
-
return
|
|
8
|
+
return createUseCaseSuccessResult({
|
|
9
9
|
id: publishOfferResponse.data.id
|
|
10
10
|
}, publishOfferResponse.request);
|
|
11
11
|
}
|
|
12
12
|
else if (!publishOfferResponse.success) {
|
|
13
|
-
return
|
|
13
|
+
return createUseCaseApiErrorResult(publishOfferResponse.error, 'publishEbayOffer', publishOfferResponse.request);
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
catch (error) {
|
|
17
|
-
return
|
|
17
|
+
return createUseCaseSystemErrorResult(error, 'ebay publish offer failed');
|
|
18
18
|
}
|
|
19
19
|
};
|
|
20
20
|
//# sourceMappingURL=PublishEbayOffer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublishEbayOffer.js","sourceRoot":"","sources":["../../../src/usecases/Offer/PublishEbayOffer.ts"],"names":[],"mappings":"AAGA,OAAO,EAEH,
|
|
1
|
+
{"version":3,"file":"PublishEbayOffer.js","sourceRoot":"","sources":["../../../src/usecases/Offer/PublishEbayOffer.ts"],"names":[],"mappings":"AAGA,OAAO,EAEH,0BAA0B,EAC1B,8BAA8B,EAC9B,2BAA2B,GAG9B,MAAM,8BAA8B,CAAA;AAUrC,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAC,MAAyB,EAAgD,EAAE;IAC7G,IAAI,CAAC;QACD,gCAAgC;QAChC,MAAM,oBAAoB,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,EAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAC,CAAC,CAAA;QAC7F,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,oBAAoB,CAAC,CAAA;QAC7D,IAAI,oBAAoB,CAAC,OAAO,IAAI,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YAC/D,OAAO,0BAA0B,CAC7B;gBACI,EAAE,EAAE,oBAAoB,CAAC,IAAI,CAAC,EAAE;aACnC,EACD,oBAAoB,CAAC,OAAO,CAC/B,CAAA;QACL,CAAC;aAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,CAAC;YACvC,OAAO,2BAA2B,CAC9B,oBAAoB,CAAC,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,CAAC,OAAO,CAC/E,CAAA;QACL,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,8BAA8B,CAAC,KAAK,EAAE,2BAA2B,CAAC,CAAA;IAC7E,CAAC;AACL,CAAC,CAAA"}
|