addio-admin-sdk 1.7.144 → 1.7.146
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/.babelrc +17 -17
- package/.env +15 -0
- package/.env.dev +14 -14
- package/.github/workflows/run_unit_test.yaml +48 -48
- package/addio-sdk-doc.md +1473 -1473
- package/changelog.md +564 -564
- package/dist/Interfaces/Address/index.d.ts +21 -21
- package/dist/Interfaces/Address/index.js +16 -16
- package/dist/Interfaces/Algolia/index.d.ts +177 -177
- package/dist/Interfaces/Algolia/index.js +2 -2
- package/dist/Interfaces/Attachement/index.d.ts +5 -5
- package/dist/Interfaces/Attachement/index.js +2 -2
- package/dist/Interfaces/Attribute/index.d.ts +53 -53
- package/dist/Interfaces/Attribute/index.js +10 -10
- package/dist/Interfaces/BGJob/index.d.ts +56 -56
- package/dist/Interfaces/BGJob/index.js +25 -25
- package/dist/Interfaces/BaseClass/index.d.ts +8 -8
- package/dist/Interfaces/BaseClass/index.js +2 -2
- package/dist/Interfaces/Blog/IBlogArticle.d.ts +18 -18
- package/dist/Interfaces/Blog/IBlogArticle.js +2 -2
- package/dist/Interfaces/Blog/IBlogAuthor.d.ts +7 -7
- package/dist/Interfaces/Blog/IBlogAuthor.js +2 -2
- package/dist/Interfaces/Blog/IBlogCategory.d.ts +9 -9
- package/dist/Interfaces/Blog/IBlogCategory.js +2 -2
- package/dist/Interfaces/Blog/IBlogComment.d.ts +13 -13
- package/dist/Interfaces/Blog/IBlogComment.js +2 -2
- package/dist/Interfaces/Blog/IBlogKeywords.d.ts +9 -9
- package/dist/Interfaces/Blog/IBlogKeywords.js +2 -2
- package/dist/Interfaces/Booking/index.d.ts +74 -74
- package/dist/Interfaces/Booking/index.js +17 -17
- package/dist/Interfaces/Brand/index.d.ts +15 -15
- package/dist/Interfaces/Brand/index.js +2 -2
- package/dist/Interfaces/CMS/index.d.ts +28 -28
- package/dist/Interfaces/CMS/index.js +5 -5
- package/dist/Interfaces/Cart/IElavonPayload.d.ts +93 -93
- package/dist/Interfaces/Cart/IElavonPayload.js +17 -17
- package/dist/Interfaces/Cart/IPandaPayload.d.ts +64 -64
- package/dist/Interfaces/Cart/IPandaPayload.js +18 -18
- package/dist/Interfaces/Cart/IPaymentCard.d.ts +22 -22
- package/dist/Interfaces/Cart/IPaymentCard.js +44 -44
- package/dist/Interfaces/Cart/IPaypalPayload.d.ts +9 -9
- package/dist/Interfaces/Cart/IPaypalPayload.js +2 -2
- package/dist/Interfaces/Cart/IPaysafePayload.d.ts +72 -72
- package/dist/Interfaces/Cart/IPaysafePayload.js +2 -2
- package/dist/Interfaces/Cart/IStripePayload.d.ts +66 -66
- package/dist/Interfaces/Cart/IStripePayload.js +2 -2
- package/dist/Interfaces/Cart/index.d.ts +444 -444
- package/dist/Interfaces/Cart/index.js +197 -197
- package/dist/Interfaces/CartReservedQuantities/index.d.ts +10 -10
- package/dist/Interfaces/CartReservedQuantities/index.js +2 -2
- package/dist/Interfaces/CashDrawers/index.d.ts +37 -37
- package/dist/Interfaces/CashDrawers/index.js +19 -19
- package/dist/Interfaces/Catalogue/index.d.ts +68 -68
- package/dist/Interfaces/Catalogue/index.js +37 -37
- package/dist/Interfaces/Category/index.d.ts +33 -33
- package/dist/Interfaces/Category/index.js +2 -2
- package/dist/Interfaces/Chart/index.d.ts +11 -11
- package/dist/Interfaces/Chart/index.js +2 -2
- package/dist/Interfaces/Class/index.d.ts +8 -8
- package/dist/Interfaces/Class/index.js +2 -2
- package/dist/Interfaces/Consent/index.d.ts +6 -6
- package/dist/Interfaces/Consent/index.js +2 -2
- package/dist/Interfaces/Context/IContextProps.d.ts +4 -4
- package/dist/Interfaces/Context/IContextProps.js +2 -2
- package/dist/Interfaces/Context/IContextState.d.ts +15 -15
- package/dist/Interfaces/Context/IContextState.js +2 -2
- package/dist/Interfaces/Customer/ICustomerBadge.d.ts +2 -2
- package/dist/Interfaces/Customer/ICustomerBadge.js +2 -2
- package/dist/Interfaces/Customer/ICustomerRating.d.ts +10 -10
- package/dist/Interfaces/Customer/ICustomerRating.js +2 -2
- package/dist/Interfaces/Customer/IStoreCredit.d.ts +13 -13
- package/dist/Interfaces/Customer/IStoreCredit.js +2 -2
- package/dist/Interfaces/Customer/index.d.ts +104 -104
- package/dist/Interfaces/Customer/index.js +148 -148
- package/dist/Interfaces/Declination/index.d.ts +117 -117
- package/dist/Interfaces/Declination/index.js +66 -66
- package/dist/Interfaces/Document/index.d.ts +8 -8
- package/dist/Interfaces/Document/index.js +2 -2
- package/dist/Interfaces/Elastic/index.d.ts +89 -89
- package/dist/Interfaces/Elastic/index.js +2 -2
- package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.d.ts +11 -11
- package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.js +2 -2
- package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.d.ts +15 -15
- package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.js +2 -2
- package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.d.ts +12 -12
- package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.js +2 -2
- package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.d.ts +36 -36
- package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.js +2 -2
- package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.d.ts +12 -12
- package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.js +2 -2
- package/dist/Interfaces/Email/CustomGR/ITransportEmail.d.ts +12 -12
- package/dist/Interfaces/Email/CustomGR/ITransportEmail.js +2 -2
- package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.d.ts +12 -12
- package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.js +2 -2
- package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.d.ts +16 -16
- package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.js +2 -2
- package/dist/Interfaces/Email/CustomGR/IWishlistEmail.d.ts +15 -15
- package/dist/Interfaces/Email/CustomGR/IWishlistEmail.js +2 -2
- package/dist/Interfaces/Email/IAbandonnedCartEmail.d.ts +29 -29
- package/dist/Interfaces/Email/IAbandonnedCartEmail.js +2 -2
- package/dist/Interfaces/Email/IAccountConfirmationEmail.d.ts +22 -22
- package/dist/Interfaces/Email/IAccountConfirmationEmail.js +2 -2
- package/dist/Interfaces/Email/IApplicationEmail.d.ts +19 -19
- package/dist/Interfaces/Email/IApplicationEmail.js +2 -2
- package/dist/Interfaces/Email/IBackInStockEmail.d.ts +21 -21
- package/dist/Interfaces/Email/IBackInStockEmail.js +2 -2
- package/dist/Interfaces/Email/IContactEmail.d.ts +20 -20
- package/dist/Interfaces/Email/IContactEmail.js +2 -2
- package/dist/Interfaces/Email/ICustomerBookingAdminEmail.d.ts +15 -15
- package/dist/Interfaces/Email/ICustomerBookingAdminEmail.js +2 -2
- package/dist/Interfaces/Email/ICustomerBookingEmail.d.ts +14 -14
- package/dist/Interfaces/Email/ICustomerBookingEmail.js +2 -2
- package/dist/Interfaces/Email/IEmail.d.ts +20 -20
- package/dist/Interfaces/Email/IEmail.js +60 -60
- package/dist/Interfaces/Email/IOrderConfirmationEmail.d.ts +47 -47
- package/dist/Interfaces/Email/IOrderConfirmationEmail.js +2 -2
- package/dist/Interfaces/Email/IPasswordResetEmail.d.ts +17 -17
- package/dist/Interfaces/Email/IPasswordResetEmail.js +2 -2
- package/dist/Interfaces/Email/IPhotoShootEmail.d.ts +14 -14
- package/dist/Interfaces/Email/IPhotoShootEmail.js +2 -2
- package/dist/Interfaces/Email/IPickupConfirmation.d.ts +23 -23
- package/dist/Interfaces/Email/IPickupConfirmation.js +2 -2
- package/dist/Interfaces/Email/IShippingConfirmation.d.ts +23 -23
- package/dist/Interfaces/Email/IShippingConfirmation.js +2 -2
- package/dist/Interfaces/Email/IWelcomeEmail.d.ts +19 -19
- package/dist/Interfaces/Email/IWelcomeEmail.js +2 -2
- package/dist/Interfaces/ExportSchema/index.d.ts +7 -7
- package/dist/Interfaces/ExportSchema/index.js +2 -2
- package/dist/Interfaces/ExternalService/BaseExternalService.d.ts +12 -12
- package/dist/Interfaces/ExternalService/BaseExternalService.js +2 -2
- package/dist/Interfaces/ExternalService/ExternalProductsService.d.ts +4 -4
- package/dist/Interfaces/ExternalService/ExternalProductsService.js +2 -2
- package/dist/Interfaces/ExternalService/index.d.ts +9 -9
- package/dist/Interfaces/ExternalService/index.js +2 -2
- package/dist/Interfaces/FirstOrderTracking/index.d.ts +5 -5
- package/dist/Interfaces/FirstOrderTracking/index.js +2 -2
- package/dist/Interfaces/G2/index.d.ts +556 -556
- package/dist/Interfaces/G2/index.js +38 -38
- package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.d.ts +20 -20
- package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.js +2 -2
- package/dist/Interfaces/Indexed/Product/index.d.ts +105 -105
- package/dist/Interfaces/Indexed/Product/index.js +253 -253
- package/dist/Interfaces/Inventory/index.d.ts +19 -19
- package/dist/Interfaces/Inventory/index.js +8 -8
- package/dist/Interfaces/Invoice/index.d.ts +4 -4
- package/dist/Interfaces/Invoice/index.js +2 -2
- package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.d.ts +3 -3
- package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.js +2 -2
- package/dist/Interfaces/MarketplacePublication/index.d.ts +23 -23
- package/dist/Interfaces/MarketplacePublication/index.js +22 -22
- package/dist/Interfaces/Menu/index.d.ts +40 -40
- package/dist/Interfaces/Menu/index.js +16 -16
- package/dist/Interfaces/Note/index.d.ts +10 -10
- package/dist/Interfaces/Note/index.js +7 -7
- package/dist/Interfaces/Operations/ICreatedBy.d.ts +6 -6
- package/dist/Interfaces/Operations/ICreatedBy.js +2 -2
- package/dist/Interfaces/Operations/IUpdate.d.ts +5 -5
- package/dist/Interfaces/Operations/IUpdate.js +2 -2
- package/dist/Interfaces/Order/index.d.ts +4 -4
- package/dist/Interfaces/Order/index.js +2 -2
- package/dist/Interfaces/Org/IRelUser.d.ts +9 -9
- package/dist/Interfaces/Org/IRelUser.js +2 -2
- package/dist/Interfaces/Org/index.d.ts +29 -29
- package/dist/Interfaces/Org/index.js +12 -12
- package/dist/Interfaces/Payment/index.d.ts +26 -26
- package/dist/Interfaces/Payment/index.js +14 -14
- package/dist/Interfaces/Product/IAttributeFamily.d.ts +6 -6
- package/dist/Interfaces/Product/IAttributeFamily.js +2 -2
- package/dist/Interfaces/Product/IImportProduct.d.ts +42 -42
- package/dist/Interfaces/Product/IImportProduct.js +882 -882
- package/dist/Interfaces/Product/IInventoryItem.d.ts +74 -74
- package/dist/Interfaces/Product/IInventoryItem.js +38 -38
- package/dist/Interfaces/Product/IPricing.d.ts +177 -177
- package/dist/Interfaces/Product/IPricing.js +180 -180
- package/dist/Interfaces/Product/index.d.ts +138 -138
- package/dist/Interfaces/Product/index.js +64 -64
- package/dist/Interfaces/ProductAttribute/index.d.ts +11 -11
- package/dist/Interfaces/ProductAttribute/index.js +2 -2
- package/dist/Interfaces/PromiseToPurchase/BankType.d.ts +41 -41
- package/dist/Interfaces/PromiseToPurchase/BankType.js +41 -41
- package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.d.ts +33 -33
- package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.js +15 -15
- package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.d.ts +19 -19
- package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.js +2 -2
- package/dist/Interfaces/PromiseToPurchase/index.d.ts +50 -50
- package/dist/Interfaces/PromiseToPurchase/index.js +13 -13
- package/dist/Interfaces/PurchaseOrder/index.d.ts +17 -17
- package/dist/Interfaces/PurchaseOrder/index.js +2 -2
- package/dist/Interfaces/Query/IBrandQueryOptions.d.ts +11 -11
- package/dist/Interfaces/Query/IBrandQueryOptions.js +2 -2
- package/dist/Interfaces/Query/ICategoryQueryOptions.d.ts +11 -11
- package/dist/Interfaces/Query/ICategoryQueryOptions.js +2 -2
- package/dist/Interfaces/Query/IProductQueryOptions.d.ts +16 -16
- package/dist/Interfaces/Query/IProductQueryOptions.js +2 -2
- package/dist/Interfaces/Quote/index.d.ts +5 -5
- package/dist/Interfaces/Quote/index.js +2 -2
- package/dist/Interfaces/Refunds/index.d.ts +106 -106
- package/dist/Interfaces/Refunds/index.js +2 -2
- package/dist/Interfaces/Rules/IDiscountRule.d.ts +155 -155
- package/dist/Interfaces/Rules/IDiscountRule.js +114 -114
- package/dist/Interfaces/Schedule/index.d.ts +48 -48
- package/dist/Interfaces/Schedule/index.js +2 -2
- package/dist/Interfaces/Services/IAddServiceResponse.d.ts +4 -4
- package/dist/Interfaces/Services/IAddServiceResponse.js +2 -2
- package/dist/Interfaces/Services/IService.d.ts +16 -16
- package/dist/Interfaces/Services/IService.js +2 -2
- package/dist/Interfaces/Services/IServiceSecret.d.ts +8 -8
- package/dist/Interfaces/Services/IServiceSecret.js +2 -2
- package/dist/Interfaces/Shipping/Shipstation/carriers.d.ts +10 -10
- package/dist/Interfaces/Shipping/Shipstation/carriers.js +2 -2
- package/dist/Interfaces/Shipping/Shipstation/order.d.ts +227 -227
- package/dist/Interfaces/Shipping/Shipstation/order.js +2 -2
- package/dist/Interfaces/Shipping/Shipstation/quote.d.ts +31 -31
- package/dist/Interfaces/Shipping/Shipstation/quote.js +2 -2
- package/dist/Interfaces/Shipping/Shiptime/order.d.ts +54 -54
- package/dist/Interfaces/Shipping/Shiptime/order.js +71 -71
- package/dist/Interfaces/Shipping/Shiptime/quote.d.ts +111 -111
- package/dist/Interfaces/Shipping/Shiptime/quote.js +2 -2
- package/dist/Interfaces/Slider/GR.d.ts +114 -114
- package/dist/Interfaces/Slider/GR.js +271 -271
- package/dist/Interfaces/Slider/index.d.ts +30 -30
- package/dist/Interfaces/Slider/index.js +2 -2
- package/dist/Interfaces/Space/IExternalService.d.ts +53 -53
- package/dist/Interfaces/Space/IExternalService.js +44 -44
- package/dist/Interfaces/Space/IMember.d.ts +16 -16
- package/dist/Interfaces/Space/IMember.js +9 -9
- package/dist/Interfaces/Space/index.d.ts +407 -405
- package/dist/Interfaces/Space/index.js +174 -174
- package/dist/Interfaces/Space/index.js.map +1 -1
- package/dist/Interfaces/Specials/gr.d.ts +61 -61
- package/dist/Interfaces/Specials/gr.js +2 -2
- package/dist/Interfaces/StockNotification/index.d.ts +7 -7
- package/dist/Interfaces/StockNotification/index.js +2 -2
- package/dist/Interfaces/Store/index.d.ts +63 -63
- package/dist/Interfaces/Store/index.js +27 -27
- package/dist/Interfaces/Supplier/ICommand.d.ts +11 -11
- package/dist/Interfaces/Supplier/ICommand.js +2 -2
- package/dist/Interfaces/Supplier/index.d.ts +36 -36
- package/dist/Interfaces/Supplier/index.js +24 -24
- package/dist/Interfaces/TCG/index.d.ts +161 -161
- package/dist/Interfaces/TCG/index.js +54 -54
- package/dist/Interfaces/Tag/index.d.ts +18 -18
- package/dist/Interfaces/Tag/index.js +2 -2
- package/dist/Interfaces/Tax/index.d.ts +13 -13
- package/dist/Interfaces/Tax/index.js +2 -2
- package/dist/Interfaces/TransferRequest/index.d.ts +103 -103
- package/dist/Interfaces/TransferRequest/index.js +46 -46
- package/dist/Interfaces/Translation/index.d.ts +8 -8
- package/dist/Interfaces/Translation/index.js +5 -5
- package/dist/Interfaces/Update/index.d.ts +10 -10
- package/dist/Interfaces/Update/index.js +2 -2
- package/dist/Interfaces/User/IUser.d.ts +65 -65
- package/dist/Interfaces/User/IUser.js +8 -8
- package/dist/Interfaces/Version/index.d.ts +11 -11
- package/dist/Interfaces/Version/index.js +2 -2
- package/dist/Interfaces/Wishlist/index.d.ts +7 -7
- package/dist/Interfaces/Wishlist/index.js +2 -2
- package/dist/constants/Interfaces/IBaseApi.d.ts +15 -15
- package/dist/constants/Interfaces/IBaseApi.js +2 -2
- package/dist/constants/Interfaces/IEndpointResult.d.ts +9 -9
- package/dist/constants/Interfaces/IEndpointResult.js +2 -2
- package/dist/constants/enums.d.ts +6 -6
- package/dist/constants/enums.js +10 -10
- package/dist/constants/services.d.ts +2 -2
- package/dist/constants/services.js +117 -117
- package/dist/constants/version.d.ts +2 -2
- package/dist/constants/version.js +5 -5
- package/dist/index.d.ts +50 -50
- package/dist/index.js +266 -266
- package/dist/lib/Attribute/index.d.ts +14 -14
- package/dist/lib/Attribute/index.js +186 -186
- package/dist/lib/BGJob/index.d.ts +9 -9
- package/dist/lib/BGJob/index.js +216 -216
- package/dist/lib/BackgroundWorker/index.d.ts +34 -34
- package/dist/lib/BackgroundWorker/index.js +59 -59
- package/dist/lib/Blog/BlogArticle.d.ts +5 -5
- package/dist/lib/Blog/BlogArticle.js +10 -10
- package/dist/lib/Blog/BlogAuthor.d.ts +5 -5
- package/dist/lib/Blog/BlogAuthor.js +10 -10
- package/dist/lib/Blog/BlogCategory.d.ts +5 -5
- package/dist/lib/Blog/BlogCategory.js +10 -10
- package/dist/lib/Blog/BlogKeyword.d.ts +5 -5
- package/dist/lib/Blog/BlogKeyword.js +10 -10
- package/dist/lib/Booking/index.d.ts +85 -85
- package/dist/lib/Booking/index.js +596 -596
- package/dist/lib/Brand/index.d.ts +26 -26
- package/dist/lib/Brand/index.js +131 -131
- package/dist/lib/Cart/index.d.ts +335 -335
- package/dist/lib/Cart/index.js +3981 -3977
- package/dist/lib/Cart/index.js.map +1 -1
- package/dist/lib/CartReservedQuantities/index.d.ts +49 -49
- package/dist/lib/CartReservedQuantities/index.js +159 -159
- package/dist/lib/CashDrawerShift/index.d.ts +83 -83
- package/dist/lib/CashDrawerShift/index.js +205 -205
- package/dist/lib/Catalogue/index.d.ts +15 -15
- package/dist/lib/Catalogue/index.js +78 -78
- package/dist/lib/Category/index.d.ts +34 -34
- package/dist/lib/Category/index.js +230 -230
- package/dist/lib/Class/index.d.ts +16 -16
- package/dist/lib/Class/index.js +66 -66
- package/dist/lib/Consent/index.d.ts +4 -4
- package/dist/lib/Consent/index.js +29 -29
- package/dist/lib/Customer/index.d.ts +30 -30
- package/dist/lib/Customer/index.js +92 -92
- package/dist/lib/Declination/index.d.ts +9 -9
- package/dist/lib/Declination/index.js +26 -26
- package/dist/lib/Discount/index.d.ts +27 -27
- package/dist/lib/Discount/index.js +493 -493
- package/dist/lib/ElasticSearch/index.d.ts +13 -13
- package/dist/lib/ElasticSearch/index.js +50 -50
- package/dist/lib/Elavon/index.d.ts +18 -18
- package/dist/lib/Elavon/index.js +135 -135
- package/dist/lib/Email/AbandonedCartEmail.d.ts +16 -16
- package/dist/lib/Email/AbandonedCartEmail.js +24 -24
- package/dist/lib/Email/AccountConfirmationEmail.d.ts +19 -19
- package/dist/lib/Email/AccountConfirmationEmail.js +30 -30
- package/dist/lib/Email/AdminOrderConfirmationEmail.d.ts +16 -16
- package/dist/lib/Email/AdminOrderConfirmationEmail.js +24 -24
- package/dist/lib/Email/ApplicationEmail.d.ts +16 -16
- package/dist/lib/Email/ApplicationEmail.js +24 -24
- package/dist/lib/Email/BackInStockEmail.d.ts +16 -16
- package/dist/lib/Email/BackInStockEmail.js +24 -24
- package/dist/lib/Email/ContactEmail.d.ts +16 -16
- package/dist/lib/Email/ContactEmail.js +24 -24
- package/dist/lib/Email/CustomerBookingAdminEmail.d.ts +16 -16
- package/dist/lib/Email/CustomerBookingAdminEmail.js +24 -24
- package/dist/lib/Email/CustomerBookingEmail.d.ts +16 -16
- package/dist/lib/Email/CustomerBookingEmail.js +24 -24
- package/dist/lib/Email/OrderConfirmationEmail.d.ts +16 -16
- package/dist/lib/Email/OrderConfirmationEmail.js +24 -24
- package/dist/lib/Email/OrderDenounciationEmail.d.ts +16 -16
- package/dist/lib/Email/OrderDenounciationEmail.js +24 -24
- package/dist/lib/Email/OrderSampleEmail.d.ts +16 -16
- package/dist/lib/Email/OrderSampleEmail.js +24 -24
- package/dist/lib/Email/OtherTypeEmails.d.ts +16 -16
- package/dist/lib/Email/OtherTypeEmails.js +27 -27
- package/dist/lib/Email/PasswordResetEmail.d.ts +16 -16
- package/dist/lib/Email/PasswordResetEmail.js +24 -24
- package/dist/lib/Email/PhotoShootEmail.d.ts +16 -16
- package/dist/lib/Email/PhotoShootEmail.js +24 -24
- package/dist/lib/Email/PickUpConfirmation.d.ts +16 -16
- package/dist/lib/Email/PickUpConfirmation.js +24 -24
- package/dist/lib/Email/ShippingConfirmation.d.ts +16 -16
- package/dist/lib/Email/ShippingConfirmation.js +24 -24
- package/dist/lib/Email/WelcomeEmail.d.ts +16 -16
- package/dist/lib/Email/WelcomeEmail.js +24 -24
- package/dist/lib/Email/index.d.ts +16 -16
- package/dist/lib/Email/index.js +31 -31
- package/dist/lib/ExternalService/Ebay.d.ts +74 -74
- package/dist/lib/ExternalService/Ebay.js +124 -124
- package/dist/lib/ExternalService/index.d.ts +5 -5
- package/dist/lib/ExternalService/index.js +10 -10
- package/dist/lib/FirstOrderTracking/index.d.ts +5 -5
- package/dist/lib/FirstOrderTracking/index.js +10 -10
- package/dist/lib/Indexed/IndexedCart.d.ts +13 -13
- package/dist/lib/Indexed/IndexedCart.js +91 -91
- package/dist/lib/Indexed/Product.d.ts +17 -17
- package/dist/lib/Indexed/Product.js +98 -98
- package/dist/lib/Inventory/index.d.ts +112 -112
- package/dist/lib/Inventory/index.js +492 -492
- package/dist/lib/Invoice/index.d.ts +16 -16
- package/dist/lib/Invoice/index.js +21 -21
- package/dist/lib/MarketplacePublication/index.d.ts +9 -9
- package/dist/lib/MarketplacePublication/index.js +426 -426
- package/dist/lib/Menu/index.d.ts +11 -11
- package/dist/lib/Menu/index.js +107 -107
- package/dist/lib/MongoDB/BaseAPI.d.ts +18 -18
- package/dist/lib/MongoDB/BaseAPI.js +200 -200
- package/dist/lib/Note/index.d.ts +4 -4
- package/dist/lib/Note/index.js +6 -6
- package/dist/lib/Order/index.d.ts +27 -27
- package/dist/lib/Order/index.js +56 -56
- package/dist/lib/Org/index.d.ts +68 -68
- package/dist/lib/Org/index.js +216 -216
- package/dist/lib/PandaPay/index.d.ts +16 -16
- package/dist/lib/PandaPay/index.js +176 -176
- package/dist/lib/Paysafe/index.d.ts +11 -11
- package/dist/lib/Paysafe/index.js +41 -41
- package/dist/lib/Product/index.d.ts +182 -182
- package/dist/lib/Product/index.js +847 -847
- package/dist/lib/ProductAttribute/index.d.ts +15 -15
- package/dist/lib/ProductAttribute/index.js +45 -45
- package/dist/lib/PromiseToPurchase/index.d.ts +109 -109
- package/dist/lib/PromiseToPurchase/index.js +343 -343
- package/dist/lib/PurchaseOrder/index.d.ts +20 -20
- package/dist/lib/PurchaseOrder/index.js +28 -28
- package/dist/lib/Queue/index.d.ts +40 -40
- package/dist/lib/Queue/index.js +254 -254
- package/dist/lib/Schedule/index.d.ts +5 -5
- package/dist/lib/Schedule/index.js +12 -12
- package/dist/lib/Service/Enum/ServiceEnum.d.ts +3 -3
- package/dist/lib/Service/Enum/ServiceEnum.js +7 -7
- package/dist/lib/Service/index.d.ts +13 -13
- package/dist/lib/Service/index.js +21 -21
- package/dist/lib/Shipment/index.d.ts +28 -28
- package/dist/lib/Shipment/index.js +370 -370
- package/dist/lib/Slider/index.d.ts +22 -22
- package/dist/lib/Slider/index.js +119 -119
- package/dist/lib/Space/index.d.ts +1150 -1150
- package/dist/lib/Space/index.js +5792 -5792
- package/dist/lib/StockNotification/index.d.ts +4 -4
- package/dist/lib/StockNotification/index.js +6 -6
- package/dist/lib/Store/index.d.ts +5 -5
- package/dist/lib/Store/index.js +12 -12
- package/dist/lib/Supplier/Command.d.ts +5 -5
- package/dist/lib/Supplier/Command.js +10 -10
- package/dist/lib/Supplier/index.d.ts +25 -25
- package/dist/lib/Supplier/index.js +27 -27
- package/dist/lib/Tags/index.d.ts +6 -6
- package/dist/lib/Tags/index.js +26 -26
- package/dist/lib/Tax/index.d.ts +8 -8
- package/dist/lib/Tax/index.js +54 -54
- package/dist/lib/TransferRequest/index.d.ts +290 -290
- package/dist/lib/TransferRequest/index.js +1026 -1026
- package/dist/lib/Update/index.d.ts +10 -10
- package/dist/lib/Update/index.js +22 -22
- package/dist/lib/User/index.d.ts +89 -89
- package/dist/lib/User/index.js +328 -328
- package/dist/lib/Wishlist/index.d.ts +5 -5
- package/dist/lib/Wishlist/index.js +10 -10
- package/dist/lib/base.d.ts +14 -14
- package/dist/lib/base.js +62 -62
- package/dist/lib/baseService.d.ts +17 -17
- package/dist/lib/baseService.js +69 -69
- package/dist/rules/GR/constants/data.d.ts +26 -26
- package/dist/rules/GR/constants/data.js +81 -81
- package/dist/rules/GR/constants/expedition.d.ts +4 -4
- package/dist/rules/GR/constants/expedition.js +9 -9
- package/dist/rules/GR/constants/products.d.ts +22 -22
- package/dist/rules/GR/constants/products.js +263 -263
- package/dist/rules/GR/interfaces/cart.d.ts +84 -84
- package/dist/rules/GR/interfaces/cart.js +41 -41
- package/dist/rules/GR/interfaces/data.d.ts +101 -101
- package/dist/rules/GR/interfaces/data.js +114 -114
- package/dist/rules/GR/interfaces/products.d.ts +61 -61
- package/dist/rules/GR/interfaces/products.js +10 -10
- package/dist/rules/GR/utils/cart.d.ts +95 -95
- package/dist/rules/GR/utils/cart.js +839 -836
- package/dist/rules/GR/utils/cart.js.map +1 -1
- package/dist/rules/GR/utils/data.d.ts +3 -3
- package/dist/rules/GR/utils/data.js +28 -28
- package/dist/rules/GR/utils/expedition.d.ts +140 -140
- package/dist/rules/GR/utils/expedition.js +2016 -2016
- package/dist/rules/GR/utils/g2.d.ts +209 -209
- package/dist/rules/GR/utils/g2.js +999 -999
- package/dist/rules/GR/utils/invoices.d.ts +51 -51
- package/dist/rules/GR/utils/invoices.js +215 -215
- package/dist/rules/GR/utils/products.d.ts +277 -277
- package/dist/rules/GR/utils/products.js +1350 -1350
- package/dist/rules/GR/utils/upsells.d.ts +111 -111
- package/dist/rules/GR/utils/upsells.js +215 -215
- package/dist/services/database/BaseProvider.d.ts +29 -29
- package/dist/services/database/BaseProvider.js +28 -28
- package/dist/services/database/BatchUtils.d.ts +14 -14
- package/dist/services/database/BatchUtils.js +43 -43
- package/dist/services/database/Config.d.ts +2 -2
- package/dist/services/database/Config.js +5 -5
- package/dist/services/database/DatabaseService.d.ts +125 -125
- package/dist/services/database/DatabaseService.js +237 -237
- package/dist/services/database/FirebaseProvider.d.ts +17 -17
- package/dist/services/database/FirebaseProvider.js +235 -235
- package/dist/services/database/NotFirebaseProvider.d.ts +49 -49
- package/dist/services/database/NotFirebaseProvider.js +262 -262
- package/dist/services/g2/G2OrderSlip.d.ts +49 -49
- package/dist/services/g2/G2OrderSlip.js +228 -228
- package/dist/services/g2/utils.d.ts +19 -19
- package/dist/services/g2/utils.js +953 -953
- package/dist/services/logs/index.d.ts +23 -23
- package/dist/services/logs/index.js +66 -66
- package/dist/services/marketplace/BaseMarketServiceClass.d.ts +52 -52
- package/dist/services/marketplace/BaseMarketServiceClass.js +111 -111
- package/dist/services/marketplace/CardtraderServiceClass.d.ts +17 -17
- package/dist/services/marketplace/CardtraderServiceClass.js +139 -139
- package/dist/services/marketplace/utils.d.ts +14 -14
- package/dist/services/marketplace/utils.js +29 -29
- package/dist/services/products/BaseClass.d.ts +50 -50
- package/dist/services/products/BaseClass.js +66 -66
- package/dist/services/products/TCGService.d.ts +32 -32
- package/dist/services/products/TCGService.js +555 -555
- package/dist/services/products/utils.d.ts +31 -31
- package/dist/services/products/utils.js +144 -144
- package/dist/utils/algolia.d.ts +46 -46
- package/dist/utils/algolia.js +21 -21
- package/dist/utils/anonymisation.d.ts +54 -54
- package/dist/utils/anonymisation.js +280 -280
- package/dist/utils/array.d.ts +5 -5
- package/dist/utils/array.js +14 -14
- package/dist/utils/aws.d.ts +36 -36
- package/dist/utils/aws.js +154 -154
- package/dist/utils/booking.d.ts +30 -30
- package/dist/utils/booking.js +127 -127
- package/dist/utils/cart.d.ts +259 -259
- package/dist/utils/cart.js +1145 -1145
- package/dist/utils/categories.d.ts +2 -2
- package/dist/utils/categories.js +54 -54
- package/dist/utils/cmv.d.ts +10 -10
- package/dist/utils/cmv.js +107 -107
- package/dist/utils/console.d.ts +6 -6
- package/dist/utils/console.js +59 -59
- package/dist/utils/context.d.ts +20 -20
- package/dist/utils/context.js +61 -61
- package/dist/utils/currency.d.ts +6 -6
- package/dist/utils/currency.js +91 -91
- package/dist/utils/data.d.ts +31 -31
- package/dist/utils/data.js +296 -296
- package/dist/utils/date.d.ts +1 -1
- package/dist/utils/date.js +16 -16
- package/dist/utils/dimensions.d.ts +3 -3
- package/dist/utils/dimensions.js +16 -16
- package/dist/utils/discount.d.ts +164 -164
- package/dist/utils/discount.js +1111 -1111
- package/dist/utils/errors.d.ts +113 -113
- package/dist/utils/errors.js +113 -113
- package/dist/utils/file-admin.d.ts +8 -8
- package/dist/utils/file-admin.js +39 -39
- package/dist/utils/file.d.ts +39 -39
- package/dist/utils/file.js +208 -208
- package/dist/utils/firebase-admin.d.ts +11 -11
- package/dist/utils/firebase-admin.js +73 -73
- package/dist/utils/firebase.d.ts +58 -58
- package/dist/utils/firebase.js +148 -148
- package/dist/utils/import.d.ts +1 -1
- package/dist/utils/import.js +21 -21
- package/dist/utils/inventories.d.ts +101 -101
- package/dist/utils/inventories.js +467 -467
- package/dist/utils/locale.d.ts +24 -24
- package/dist/utils/locale.js +89 -89
- package/dist/utils/mailchimp.d.ts +58 -58
- package/dist/utils/mailchimp.js +531 -531
- package/dist/utils/mathUtils.d.ts +17 -17
- package/dist/utils/mathUtils.js +324 -324
- package/dist/utils/mongodb.d.ts +1 -1
- package/dist/utils/mongodb.js +22 -22
- package/dist/utils/object.d.ts +32 -32
- package/dist/utils/object.js +133 -133
- package/dist/utils/payment.d.ts +10 -10
- package/dist/utils/payment.js +23 -23
- package/dist/utils/products.d.ts +39 -39
- package/dist/utils/products.js +195 -195
- package/dist/utils/promiseToPurchase.d.ts +88 -88
- package/dist/utils/promiseToPurchase.js +229 -229
- package/dist/utils/prosprsearch.d.ts +42 -42
- package/dist/utils/prosprsearch.js +216 -216
- package/dist/utils/refunds.d.ts +2 -2
- package/dist/utils/refunds.js +21 -21
- package/dist/utils/sdc.d.ts +10 -10
- package/dist/utils/sdc.js +1309 -1309
- package/dist/utils/searchIndexes.d.ts +58 -58
- package/dist/utils/searchIndexes.js +247 -247
- package/dist/utils/services.d.ts +42 -42
- package/dist/utils/services.js +409 -409
- package/dist/utils/shipment.d.ts +110 -110
- package/dist/utils/shipment.js +345 -345
- package/dist/utils/simpletexting.d.ts +2 -2
- package/dist/utils/simpletexting.js +45 -45
- package/dist/utils/sliders.d.ts +4 -4
- package/dist/utils/sliders.js +24 -24
- package/dist/utils/string.d.ts +16 -16
- package/dist/utils/string.js +192 -192
- package/dist/utils/tcgService.d.ts +74 -74
- package/dist/utils/tcgService.js +308 -308
- package/dist/utils/tools.d.ts +5 -5
- package/dist/utils/tools.js +13 -13
- package/dist/utils/transferRequests.d.ts +43 -43
- package/dist/utils/transferRequests.js +67 -67
- package/dist/utils/update.d.ts +7 -7
- package/dist/utils/update.js +137 -137
- package/dist/utils/weight.d.ts +3 -3
- package/dist/utils/weight.js +16 -16
- package/dist/utils/zones.d.ts +11 -11
- package/dist/utils/zones.js +218 -218
- package/package.json +107 -107
- package/publish.sh +143 -143
- package/readme.md +182 -182
|
@@ -1,216 +1,216 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getCartItemsFromProdUpsells = exports.checkIfCartContainsException = exports.removeExceptionAutoAddUpsells = exports.getUpsellsFromCartItems = exports.checkIfIsUpsellOfCartItem = exports.getSpecificUpsellQteText = exports.getGeneralUpsellQteText = exports.getUpsellsToQuantify = exports.calculateUpsellQte = void 0;
|
|
7
|
-
const round_1 = __importDefault(require("lodash/round"));
|
|
8
|
-
const ceil_1 = __importDefault(require("lodash/ceil"));
|
|
9
|
-
const sumBy_1 = __importDefault(require("lodash/sumBy"));
|
|
10
|
-
const inventories_1 = require("../../../utils/inventories");
|
|
11
|
-
const locale_1 = require("../../../utils/locale");
|
|
12
|
-
const string_1 = require("../../../utils/string");
|
|
13
|
-
const products_1 = require("./products");
|
|
14
|
-
const calculateUpsellQte = (upsell, qte, defaultToOne, roundTotal) => {
|
|
15
|
-
const matchingQty = !!upsell.matching_qte;
|
|
16
|
-
const recommendedQty = upsell.recommended_qte || 0;
|
|
17
|
-
const actualQty = upsell.actual_qte || 0;
|
|
18
|
-
let ratio = !!defaultToOne
|
|
19
|
-
? 1
|
|
20
|
-
: !!!matchingQty
|
|
21
|
-
? recommendedQty === actualQty
|
|
22
|
-
? recommendedQty
|
|
23
|
-
: (0, ceil_1.default)(qte * recommendedQty)
|
|
24
|
-
: qte;
|
|
25
|
-
if (!!upsell.other_units) {
|
|
26
|
-
const pi2 = upsell.other_units.find((other_unit) => !!['p2', 'pl'].includes(other_unit.unit_slug));
|
|
27
|
-
if (!!pi2 && !!pi2.fitting_unit) {
|
|
28
|
-
ratio = (0, ceil_1.default)((!!matchingQty ? qte : !!recommendedQty ? qte / recommendedQty : 0) * pi2.fitting_unit);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
if (!!!roundTotal)
|
|
32
|
-
return (0, round_1.default)(ratio, 2);
|
|
33
|
-
const result = (0, products_1.getRoundedSellUnitProductQuantities)(ratio, upsell.other_units, undefined);
|
|
34
|
-
const roundedQty = !!result.qte1 ? (0, round_1.default)(result.qte1, 2) : (0, round_1.default)(ratio, 2);
|
|
35
|
-
return roundedQty;
|
|
36
|
-
};
|
|
37
|
-
exports.calculateUpsellQte = calculateUpsellQte;
|
|
38
|
-
/**
|
|
39
|
-
* Function getUpsellsToQuantify
|
|
40
|
-
* @description - checks all upsells in product and returns those where associated quantities are found.
|
|
41
|
-
* @param upsellProducts - All upsells in product
|
|
42
|
-
* @param cartItems - All current cart items
|
|
43
|
-
* @param checkQte - If all upsells should be checked for quantity
|
|
44
|
-
* @param alwaysShow - If upsell should be considered even if it already exists in cart as item
|
|
45
|
-
*/
|
|
46
|
-
const getUpsellsToQuantify = (upsellProducts, cartItems = [], checkQte, alwaysShow) => {
|
|
47
|
-
let upsellsToQuantify = [];
|
|
48
|
-
if (!!checkQte) {
|
|
49
|
-
upsellsToQuantify = [...upsellProducts];
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
upsellsToQuantify = upsellProducts.filter((upsell) => {
|
|
53
|
-
if (!!cartItems.find((item) => !!item.parent_slug && !!item.parent_slug.includes('installation')) &&
|
|
54
|
-
upsell.parent_slug === 'engrais-a-gazon-enracineur-naturel') {
|
|
55
|
-
return false;
|
|
56
|
-
}
|
|
57
|
-
return ((!!alwaysShow ||
|
|
58
|
-
!!!cartItems.some((item) => {
|
|
59
|
-
if (!!!upsell.sku) {
|
|
60
|
-
return item.parent_slug === upsell.slug;
|
|
61
|
-
}
|
|
62
|
-
return item.sku === upsell.sku;
|
|
63
|
-
})) &&
|
|
64
|
-
!!upsell.other_units &&
|
|
65
|
-
!!upsell.show_recommendation_msg &&
|
|
66
|
-
!!upsell.recommended_qte);
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
return upsellsToQuantify;
|
|
70
|
-
};
|
|
71
|
-
exports.getUpsellsToQuantify = getUpsellsToQuantify;
|
|
72
|
-
/**
|
|
73
|
-
* Function getUpsellQteText
|
|
74
|
-
* @description - Returns upsell equivalence text
|
|
75
|
-
* @param upsellsToQuantify - All upsells to show in text
|
|
76
|
-
* @param qte - Associated product quantity
|
|
77
|
-
* @param specificProduct - If upsell shown is a specific products
|
|
78
|
-
* @param isMulti - If upsell if shared by more than one item in cart
|
|
79
|
-
* @param locale - locale of string to return
|
|
80
|
-
*/
|
|
81
|
-
const getGeneralUpsellQteText = (upsellsToQuantify, qte = 1, specificProduct = false, isMulti = false, locale = 'fr') => {
|
|
82
|
-
return (0, locale_1.translateILang)({
|
|
83
|
-
fr: `${!!specificProduct
|
|
84
|
-
? `Pour ${String(qte)} pi2, `
|
|
85
|
-
: `Pour ${!!isMulti ? 'des articles ajoutés' : 'un article ajouté'} à votre panier, `} nous vous recommandons${upsellsToQuantify.length > 1 ? ' : ' : ' '}`,
|
|
86
|
-
en: `${!!specificProduct
|
|
87
|
-
? `For ${String(qte)} pi2, `
|
|
88
|
-
: `For ${!!isMulti ? 'articles' : 'an article'} found in your cart, `} we recommend${upsellsToQuantify.length > 1 ? ' : ' : ' '}`
|
|
89
|
-
}, locale);
|
|
90
|
-
};
|
|
91
|
-
exports.getGeneralUpsellQteText = getGeneralUpsellQteText;
|
|
92
|
-
/**
|
|
93
|
-
* Function getSpecificUpsellQteText
|
|
94
|
-
* @description - Returns quantity stinrg and upsell name to show in Upsell Quantity indicator
|
|
95
|
-
* @param upsell - Upsell to show qyantity for
|
|
96
|
-
* @param productQte - Quantity of associated product for ratio calculation
|
|
97
|
-
* @param locale - locale of string to return
|
|
98
|
-
*/
|
|
99
|
-
const getSpecificUpsellQteText = (upsell, productQte, locale, roundTotal) => {
|
|
100
|
-
let ratio = (0, exports.calculateUpsellQte)(upsell, productQte, false, roundTotal);
|
|
101
|
-
const name = (0, locale_1.getLocaleOfDictionnary)(!!upsell.use_parent && !!upsell.parent_name ? upsell.parent_name : upsell.name, locale);
|
|
102
|
-
if (!!!ratio)
|
|
103
|
-
return { quantityStr: '', upsellName: name };
|
|
104
|
-
const sellUnit = (0, products_1.getProductSellUnitLabel)(upsell.other_units, locale);
|
|
105
|
-
const isBagUnit = !!sellUnit && ['bag', 'sac'].includes(sellUnit);
|
|
106
|
-
const sellUnitDict = (0, inventories_1.getUnitShortDict)(sellUnit);
|
|
107
|
-
const weightString = !!!upsell.use_parent && !!upsell.shipping_info && !!upsell.shipping_info.weight
|
|
108
|
-
? `${upsell.shipping_info.weight} ${upsell.shipping_info.unit_weight === 'kilograms' ? 'kg' : 'lbs'}`
|
|
109
|
-
: '';
|
|
110
|
-
return {
|
|
111
|
-
quantityStr: (0, locale_1.translateILang)({
|
|
112
|
-
fr: `${String(ratio)} ${!!sellUnitDict ? sellUnitDict['fr'] : 'unité'}${!!isBagUnit ? ` de ${weightString}` : ''} ${!!(0, string_1.startsWithVowel)(name) ? "d'" : 'de '}`,
|
|
113
|
-
en: `${String(ratio)} ${!!sellUnitDict ? sellUnitDict['en'] : 'units'}${!!isBagUnit ? ` de ${weightString}` : ''} of `
|
|
114
|
-
}, locale),
|
|
115
|
-
upsellName: name
|
|
116
|
-
};
|
|
117
|
-
};
|
|
118
|
-
exports.getSpecificUpsellQteText = getSpecificUpsellQteText;
|
|
119
|
-
const checkIfIsUpsellOfCartItem = (decli, cartData, parent_slug = '') => {
|
|
120
|
-
if (!!!cartData)
|
|
121
|
-
return;
|
|
122
|
-
const cartItems = cartData.items;
|
|
123
|
-
if (!!!cartItems.length || !!cartItems.find((cartItem) => cartItem.sku === decli.sku))
|
|
124
|
-
return;
|
|
125
|
-
const upsellCartItems = (0, exports.getUpsellsFromCartItems)(cartData.items, decli, parent_slug);
|
|
126
|
-
if (!!!upsellCartItems || !!!upsellCartItems.length)
|
|
127
|
-
return;
|
|
128
|
-
let upsellRecommendations = upsellCartItems.map((upsellCartItem) => {
|
|
129
|
-
if (!!upsellCartItem.product_upsells) {
|
|
130
|
-
return upsellCartItem.product_upsells.find((upsell) => !!parent_slug && upsell.use_parent
|
|
131
|
-
? upsell.recommendation_parent_slug === parent_slug
|
|
132
|
-
: upsell.recommendation_sku === decli.sku);
|
|
133
|
-
}
|
|
134
|
-
return undefined;
|
|
135
|
-
});
|
|
136
|
-
upsellRecommendations = upsellRecommendations.filter((u) => !!u);
|
|
137
|
-
if (!!!upsellRecommendations || !!!upsellRecommendations.length)
|
|
138
|
-
return;
|
|
139
|
-
const upsellRecommendation = upsellRecommendations[0];
|
|
140
|
-
if (!!!upsellRecommendation || !!!upsellRecommendation.recommendation_qty)
|
|
141
|
-
return;
|
|
142
|
-
const qte = (0, sumBy_1.default)(upsellCartItems, (cartItem) => cartItem.qte);
|
|
143
|
-
const productUpsell = Object.assign(Object.assign(Object.assign(Object.assign({}, decli), { recommended_qte: upsellRecommendation.recommendation_qty, recommended_sku: upsellRecommendation.recommendation_sku, matching_qte: upsellRecommendation.matching_qty, actual_qte: upsellRecommendation.actual_qty, use_parent: upsellRecommendation.use_parent }), (!!upsellRecommendation.is_recommendation ? { is_recommendation: true } : {})), (!!upsellRecommendation.show_recommendation_msg ? { show_recommendation_msg: true } : {}));
|
|
144
|
-
return [productUpsell, qte];
|
|
145
|
-
};
|
|
146
|
-
exports.checkIfIsUpsellOfCartItem = checkIfIsUpsellOfCartItem;
|
|
147
|
-
const getUpsellsFromCartItems = (cartItems, decliToCompare, parent_slug) => {
|
|
148
|
-
return cartItems.filter((cartItem) => {
|
|
149
|
-
return (!!cartItem.product_upsells &&
|
|
150
|
-
!!cartItem.product_upsells.find((upsell) => {
|
|
151
|
-
return (!!upsell.show_recommendation_msg &&
|
|
152
|
-
(upsell.recommendation_sku === decliToCompare.sku ||
|
|
153
|
-
(!!upsell.use_parent && upsell.recommendation_parent_slug === parent_slug)));
|
|
154
|
-
}));
|
|
155
|
-
});
|
|
156
|
-
};
|
|
157
|
-
exports.getUpsellsFromCartItems = getUpsellsFromCartItems;
|
|
158
|
-
const removeExceptionAutoAddUpsells = (items) => {
|
|
159
|
-
return items.filter((i) => {
|
|
160
|
-
if (!!!i.is_upsell_of_sku)
|
|
161
|
-
return true;
|
|
162
|
-
const upsellProd = items.find((item) => item.sku === i.is_upsell_of_sku);
|
|
163
|
-
if (!!!upsellProd || !!!upsellProd.product_upsells)
|
|
164
|
-
return true;
|
|
165
|
-
const sameUpsell = upsellProd.product_upsells.find((upsell) => upsell.recommendation_sku === i.sku);
|
|
166
|
-
if (!!!sameUpsell)
|
|
167
|
-
return true;
|
|
168
|
-
return !(0, exports.checkIfCartContainsException)(sameUpsell, items.map((i) => i.sku));
|
|
169
|
-
});
|
|
170
|
-
};
|
|
171
|
-
exports.removeExceptionAutoAddUpsells = removeExceptionAutoAddUpsells;
|
|
172
|
-
const checkIfCartContainsException = (upsellToCheck, skus) => {
|
|
173
|
-
if (!!!upsellToCheck.auto_add || !!!upsellToCheck.auto_add_exceptions || !!!skus.length)
|
|
174
|
-
return false;
|
|
175
|
-
const itemsContainException = skus.some((sku) => {
|
|
176
|
-
return sku !== upsellToCheck.recommendation_sku && (upsellToCheck.auto_add_exceptions || []).includes(sku);
|
|
177
|
-
});
|
|
178
|
-
return itemsContainException;
|
|
179
|
-
};
|
|
180
|
-
exports.checkIfCartContainsException = checkIfCartContainsException;
|
|
181
|
-
/**
|
|
182
|
-
* Function getCartItemsFromProdUpsells
|
|
183
|
-
* @param qte {number} - Quantity of product to which upsell is associated
|
|
184
|
-
* @param currentSku {string} - Sku of the declination selected by user for the product to which upsell is associated
|
|
185
|
-
* @param prodUpsell {IProductRecommendation[]} - Array of upsells found in product
|
|
186
|
-
* @param getProduct Callback function to fetch product from DB
|
|
187
|
-
* @param locale {string} - locale for product fetch (defaults to 'fr')
|
|
188
|
-
*/
|
|
189
|
-
const getCartItemsFromProdUpsells = async (qte, currentSku, prodUpsell, getProduct, locale) => {
|
|
190
|
-
const upsellItems = [];
|
|
191
|
-
for (let anUpsell of prodUpsell) {
|
|
192
|
-
if (!!!anUpsell.auto_add)
|
|
193
|
-
continue;
|
|
194
|
-
let sameProduct = undefined;
|
|
195
|
-
try {
|
|
196
|
-
sameProduct = await getProduct(anUpsell.recommendation_parent_slug, locale, undefined, true);
|
|
197
|
-
}
|
|
198
|
-
catch (e) {
|
|
199
|
-
if (!!process.env.IS_TEST_ENV)
|
|
200
|
-
console.log('Error on fetching product: ', e.toString());
|
|
201
|
-
}
|
|
202
|
-
if (!!!sameProduct || !!!sameProduct.declinations)
|
|
203
|
-
continue;
|
|
204
|
-
const sameDecli = (sameProduct.declinations || []).find((decli) => decli.sku === anUpsell.recommendation_sku);
|
|
205
|
-
if (!!!sameDecli)
|
|
206
|
-
continue;
|
|
207
|
-
const anUpsellProduct = Object.assign(Object.assign(Object.assign(Object.assign({}, sameDecli), { parent_slug: anUpsell.recommendation_parent_slug, recommended_qte: anUpsell.recommendation_qty, recommended_sku: anUpsell.recommendation_sku, matching_qte: !!anUpsell.matching_qty, auto_add: anUpsell.auto_add, actual_qte: anUpsell.actual_qty }), (!!anUpsell.is_recommendation ? { is_recommendation: true } : {})), (!!anUpsell.show_recommendation_msg ? { show_recommendation_msg: true } : {}));
|
|
208
|
-
const ratio = (0, exports.calculateUpsellQte)(anUpsellProduct, qte);
|
|
209
|
-
if (!!ratio) {
|
|
210
|
-
upsellItems.push(Object.assign(Object.assign({}, sameDecli), { qte: ratio, is_upsell_of_sku: currentSku, parent_slug: sameProduct.slug, product_upsells: sameProduct.product_upsells, categories: sameProduct.categories }));
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
return upsellItems;
|
|
214
|
-
};
|
|
215
|
-
exports.getCartItemsFromProdUpsells = getCartItemsFromProdUpsells;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getCartItemsFromProdUpsells = exports.checkIfCartContainsException = exports.removeExceptionAutoAddUpsells = exports.getUpsellsFromCartItems = exports.checkIfIsUpsellOfCartItem = exports.getSpecificUpsellQteText = exports.getGeneralUpsellQteText = exports.getUpsellsToQuantify = exports.calculateUpsellQte = void 0;
|
|
7
|
+
const round_1 = __importDefault(require("lodash/round"));
|
|
8
|
+
const ceil_1 = __importDefault(require("lodash/ceil"));
|
|
9
|
+
const sumBy_1 = __importDefault(require("lodash/sumBy"));
|
|
10
|
+
const inventories_1 = require("../../../utils/inventories");
|
|
11
|
+
const locale_1 = require("../../../utils/locale");
|
|
12
|
+
const string_1 = require("../../../utils/string");
|
|
13
|
+
const products_1 = require("./products");
|
|
14
|
+
const calculateUpsellQte = (upsell, qte, defaultToOne, roundTotal) => {
|
|
15
|
+
const matchingQty = !!upsell.matching_qte;
|
|
16
|
+
const recommendedQty = upsell.recommended_qte || 0;
|
|
17
|
+
const actualQty = upsell.actual_qte || 0;
|
|
18
|
+
let ratio = !!defaultToOne
|
|
19
|
+
? 1
|
|
20
|
+
: !!!matchingQty
|
|
21
|
+
? recommendedQty === actualQty
|
|
22
|
+
? recommendedQty
|
|
23
|
+
: (0, ceil_1.default)(qte * recommendedQty)
|
|
24
|
+
: qte;
|
|
25
|
+
if (!!upsell.other_units) {
|
|
26
|
+
const pi2 = upsell.other_units.find((other_unit) => !!['p2', 'pl'].includes(other_unit.unit_slug));
|
|
27
|
+
if (!!pi2 && !!pi2.fitting_unit) {
|
|
28
|
+
ratio = (0, ceil_1.default)((!!matchingQty ? qte : !!recommendedQty ? qte / recommendedQty : 0) * pi2.fitting_unit);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
if (!!!roundTotal)
|
|
32
|
+
return (0, round_1.default)(ratio, 2);
|
|
33
|
+
const result = (0, products_1.getRoundedSellUnitProductQuantities)(ratio, upsell.other_units, undefined);
|
|
34
|
+
const roundedQty = !!result.qte1 ? (0, round_1.default)(result.qte1, 2) : (0, round_1.default)(ratio, 2);
|
|
35
|
+
return roundedQty;
|
|
36
|
+
};
|
|
37
|
+
exports.calculateUpsellQte = calculateUpsellQte;
|
|
38
|
+
/**
|
|
39
|
+
* Function getUpsellsToQuantify
|
|
40
|
+
* @description - checks all upsells in product and returns those where associated quantities are found.
|
|
41
|
+
* @param upsellProducts - All upsells in product
|
|
42
|
+
* @param cartItems - All current cart items
|
|
43
|
+
* @param checkQte - If all upsells should be checked for quantity
|
|
44
|
+
* @param alwaysShow - If upsell should be considered even if it already exists in cart as item
|
|
45
|
+
*/
|
|
46
|
+
const getUpsellsToQuantify = (upsellProducts, cartItems = [], checkQte, alwaysShow) => {
|
|
47
|
+
let upsellsToQuantify = [];
|
|
48
|
+
if (!!checkQte) {
|
|
49
|
+
upsellsToQuantify = [...upsellProducts];
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
upsellsToQuantify = upsellProducts.filter((upsell) => {
|
|
53
|
+
if (!!cartItems.find((item) => !!item.parent_slug && !!item.parent_slug.includes('installation')) &&
|
|
54
|
+
upsell.parent_slug === 'engrais-a-gazon-enracineur-naturel') {
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
return ((!!alwaysShow ||
|
|
58
|
+
!!!cartItems.some((item) => {
|
|
59
|
+
if (!!!upsell.sku) {
|
|
60
|
+
return item.parent_slug === upsell.slug;
|
|
61
|
+
}
|
|
62
|
+
return item.sku === upsell.sku;
|
|
63
|
+
})) &&
|
|
64
|
+
!!upsell.other_units &&
|
|
65
|
+
!!upsell.show_recommendation_msg &&
|
|
66
|
+
!!upsell.recommended_qte);
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
return upsellsToQuantify;
|
|
70
|
+
};
|
|
71
|
+
exports.getUpsellsToQuantify = getUpsellsToQuantify;
|
|
72
|
+
/**
|
|
73
|
+
* Function getUpsellQteText
|
|
74
|
+
* @description - Returns upsell equivalence text
|
|
75
|
+
* @param upsellsToQuantify - All upsells to show in text
|
|
76
|
+
* @param qte - Associated product quantity
|
|
77
|
+
* @param specificProduct - If upsell shown is a specific products
|
|
78
|
+
* @param isMulti - If upsell if shared by more than one item in cart
|
|
79
|
+
* @param locale - locale of string to return
|
|
80
|
+
*/
|
|
81
|
+
const getGeneralUpsellQteText = (upsellsToQuantify, qte = 1, specificProduct = false, isMulti = false, locale = 'fr') => {
|
|
82
|
+
return (0, locale_1.translateILang)({
|
|
83
|
+
fr: `${!!specificProduct
|
|
84
|
+
? `Pour ${String(qte)} pi2, `
|
|
85
|
+
: `Pour ${!!isMulti ? 'des articles ajoutés' : 'un article ajouté'} à votre panier, `} nous vous recommandons${upsellsToQuantify.length > 1 ? ' : ' : ' '}`,
|
|
86
|
+
en: `${!!specificProduct
|
|
87
|
+
? `For ${String(qte)} pi2, `
|
|
88
|
+
: `For ${!!isMulti ? 'articles' : 'an article'} found in your cart, `} we recommend${upsellsToQuantify.length > 1 ? ' : ' : ' '}`
|
|
89
|
+
}, locale);
|
|
90
|
+
};
|
|
91
|
+
exports.getGeneralUpsellQteText = getGeneralUpsellQteText;
|
|
92
|
+
/**
|
|
93
|
+
* Function getSpecificUpsellQteText
|
|
94
|
+
* @description - Returns quantity stinrg and upsell name to show in Upsell Quantity indicator
|
|
95
|
+
* @param upsell - Upsell to show qyantity for
|
|
96
|
+
* @param productQte - Quantity of associated product for ratio calculation
|
|
97
|
+
* @param locale - locale of string to return
|
|
98
|
+
*/
|
|
99
|
+
const getSpecificUpsellQteText = (upsell, productQte, locale, roundTotal) => {
|
|
100
|
+
let ratio = (0, exports.calculateUpsellQte)(upsell, productQte, false, roundTotal);
|
|
101
|
+
const name = (0, locale_1.getLocaleOfDictionnary)(!!upsell.use_parent && !!upsell.parent_name ? upsell.parent_name : upsell.name, locale);
|
|
102
|
+
if (!!!ratio)
|
|
103
|
+
return { quantityStr: '', upsellName: name };
|
|
104
|
+
const sellUnit = (0, products_1.getProductSellUnitLabel)(upsell.other_units, locale);
|
|
105
|
+
const isBagUnit = !!sellUnit && ['bag', 'sac'].includes(sellUnit);
|
|
106
|
+
const sellUnitDict = (0, inventories_1.getUnitShortDict)(sellUnit);
|
|
107
|
+
const weightString = !!!upsell.use_parent && !!upsell.shipping_info && !!upsell.shipping_info.weight
|
|
108
|
+
? `${upsell.shipping_info.weight} ${upsell.shipping_info.unit_weight === 'kilograms' ? 'kg' : 'lbs'}`
|
|
109
|
+
: '';
|
|
110
|
+
return {
|
|
111
|
+
quantityStr: (0, locale_1.translateILang)({
|
|
112
|
+
fr: `${String(ratio)} ${!!sellUnitDict ? sellUnitDict['fr'] : 'unité'}${!!isBagUnit ? ` de ${weightString}` : ''} ${!!(0, string_1.startsWithVowel)(name) ? "d'" : 'de '}`,
|
|
113
|
+
en: `${String(ratio)} ${!!sellUnitDict ? sellUnitDict['en'] : 'units'}${!!isBagUnit ? ` de ${weightString}` : ''} of `
|
|
114
|
+
}, locale),
|
|
115
|
+
upsellName: name
|
|
116
|
+
};
|
|
117
|
+
};
|
|
118
|
+
exports.getSpecificUpsellQteText = getSpecificUpsellQteText;
|
|
119
|
+
const checkIfIsUpsellOfCartItem = (decli, cartData, parent_slug = '') => {
|
|
120
|
+
if (!!!cartData)
|
|
121
|
+
return;
|
|
122
|
+
const cartItems = cartData.items;
|
|
123
|
+
if (!!!cartItems.length || !!cartItems.find((cartItem) => cartItem.sku === decli.sku))
|
|
124
|
+
return;
|
|
125
|
+
const upsellCartItems = (0, exports.getUpsellsFromCartItems)(cartData.items, decli, parent_slug);
|
|
126
|
+
if (!!!upsellCartItems || !!!upsellCartItems.length)
|
|
127
|
+
return;
|
|
128
|
+
let upsellRecommendations = upsellCartItems.map((upsellCartItem) => {
|
|
129
|
+
if (!!upsellCartItem.product_upsells) {
|
|
130
|
+
return upsellCartItem.product_upsells.find((upsell) => !!parent_slug && upsell.use_parent
|
|
131
|
+
? upsell.recommendation_parent_slug === parent_slug
|
|
132
|
+
: upsell.recommendation_sku === decli.sku);
|
|
133
|
+
}
|
|
134
|
+
return undefined;
|
|
135
|
+
});
|
|
136
|
+
upsellRecommendations = upsellRecommendations.filter((u) => !!u);
|
|
137
|
+
if (!!!upsellRecommendations || !!!upsellRecommendations.length)
|
|
138
|
+
return;
|
|
139
|
+
const upsellRecommendation = upsellRecommendations[0];
|
|
140
|
+
if (!!!upsellRecommendation || !!!upsellRecommendation.recommendation_qty)
|
|
141
|
+
return;
|
|
142
|
+
const qte = (0, sumBy_1.default)(upsellCartItems, (cartItem) => cartItem.qte);
|
|
143
|
+
const productUpsell = Object.assign(Object.assign(Object.assign(Object.assign({}, decli), { recommended_qte: upsellRecommendation.recommendation_qty, recommended_sku: upsellRecommendation.recommendation_sku, matching_qte: upsellRecommendation.matching_qty, actual_qte: upsellRecommendation.actual_qty, use_parent: upsellRecommendation.use_parent }), (!!upsellRecommendation.is_recommendation ? { is_recommendation: true } : {})), (!!upsellRecommendation.show_recommendation_msg ? { show_recommendation_msg: true } : {}));
|
|
144
|
+
return [productUpsell, qte];
|
|
145
|
+
};
|
|
146
|
+
exports.checkIfIsUpsellOfCartItem = checkIfIsUpsellOfCartItem;
|
|
147
|
+
const getUpsellsFromCartItems = (cartItems, decliToCompare, parent_slug) => {
|
|
148
|
+
return cartItems.filter((cartItem) => {
|
|
149
|
+
return (!!cartItem.product_upsells &&
|
|
150
|
+
!!cartItem.product_upsells.find((upsell) => {
|
|
151
|
+
return (!!upsell.show_recommendation_msg &&
|
|
152
|
+
(upsell.recommendation_sku === decliToCompare.sku ||
|
|
153
|
+
(!!upsell.use_parent && upsell.recommendation_parent_slug === parent_slug)));
|
|
154
|
+
}));
|
|
155
|
+
});
|
|
156
|
+
};
|
|
157
|
+
exports.getUpsellsFromCartItems = getUpsellsFromCartItems;
|
|
158
|
+
const removeExceptionAutoAddUpsells = (items) => {
|
|
159
|
+
return items.filter((i) => {
|
|
160
|
+
if (!!!i.is_upsell_of_sku)
|
|
161
|
+
return true;
|
|
162
|
+
const upsellProd = items.find((item) => item.sku === i.is_upsell_of_sku);
|
|
163
|
+
if (!!!upsellProd || !!!upsellProd.product_upsells)
|
|
164
|
+
return true;
|
|
165
|
+
const sameUpsell = upsellProd.product_upsells.find((upsell) => upsell.recommendation_sku === i.sku);
|
|
166
|
+
if (!!!sameUpsell)
|
|
167
|
+
return true;
|
|
168
|
+
return !(0, exports.checkIfCartContainsException)(sameUpsell, items.map((i) => i.sku));
|
|
169
|
+
});
|
|
170
|
+
};
|
|
171
|
+
exports.removeExceptionAutoAddUpsells = removeExceptionAutoAddUpsells;
|
|
172
|
+
const checkIfCartContainsException = (upsellToCheck, skus) => {
|
|
173
|
+
if (!!!upsellToCheck.auto_add || !!!upsellToCheck.auto_add_exceptions || !!!skus.length)
|
|
174
|
+
return false;
|
|
175
|
+
const itemsContainException = skus.some((sku) => {
|
|
176
|
+
return sku !== upsellToCheck.recommendation_sku && (upsellToCheck.auto_add_exceptions || []).includes(sku);
|
|
177
|
+
});
|
|
178
|
+
return itemsContainException;
|
|
179
|
+
};
|
|
180
|
+
exports.checkIfCartContainsException = checkIfCartContainsException;
|
|
181
|
+
/**
|
|
182
|
+
* Function getCartItemsFromProdUpsells
|
|
183
|
+
* @param qte {number} - Quantity of product to which upsell is associated
|
|
184
|
+
* @param currentSku {string} - Sku of the declination selected by user for the product to which upsell is associated
|
|
185
|
+
* @param prodUpsell {IProductRecommendation[]} - Array of upsells found in product
|
|
186
|
+
* @param getProduct Callback function to fetch product from DB
|
|
187
|
+
* @param locale {string} - locale for product fetch (defaults to 'fr')
|
|
188
|
+
*/
|
|
189
|
+
const getCartItemsFromProdUpsells = async (qte, currentSku, prodUpsell, getProduct, locale) => {
|
|
190
|
+
const upsellItems = [];
|
|
191
|
+
for (let anUpsell of prodUpsell) {
|
|
192
|
+
if (!!!anUpsell.auto_add)
|
|
193
|
+
continue;
|
|
194
|
+
let sameProduct = undefined;
|
|
195
|
+
try {
|
|
196
|
+
sameProduct = await getProduct(anUpsell.recommendation_parent_slug, locale, undefined, true);
|
|
197
|
+
}
|
|
198
|
+
catch (e) {
|
|
199
|
+
if (!!process.env.IS_TEST_ENV)
|
|
200
|
+
console.log('Error on fetching product: ', e.toString());
|
|
201
|
+
}
|
|
202
|
+
if (!!!sameProduct || !!!sameProduct.declinations)
|
|
203
|
+
continue;
|
|
204
|
+
const sameDecli = (sameProduct.declinations || []).find((decli) => decli.sku === anUpsell.recommendation_sku);
|
|
205
|
+
if (!!!sameDecli)
|
|
206
|
+
continue;
|
|
207
|
+
const anUpsellProduct = Object.assign(Object.assign(Object.assign(Object.assign({}, sameDecli), { parent_slug: anUpsell.recommendation_parent_slug, recommended_qte: anUpsell.recommendation_qty, recommended_sku: anUpsell.recommendation_sku, matching_qte: !!anUpsell.matching_qty, auto_add: anUpsell.auto_add, actual_qte: anUpsell.actual_qty }), (!!anUpsell.is_recommendation ? { is_recommendation: true } : {})), (!!anUpsell.show_recommendation_msg ? { show_recommendation_msg: true } : {}));
|
|
208
|
+
const ratio = (0, exports.calculateUpsellQte)(anUpsellProduct, qte);
|
|
209
|
+
if (!!ratio) {
|
|
210
|
+
upsellItems.push(Object.assign(Object.assign({}, sameDecli), { qte: ratio, is_upsell_of_sku: currentSku, parent_slug: sameProduct.slug, product_upsells: sameProduct.product_upsells, categories: sameProduct.categories }));
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
return upsellItems;
|
|
214
|
+
};
|
|
215
|
+
exports.getCartItemsFromProdUpsells = getCartItemsFromProdUpsells;
|
|
216
216
|
//# sourceMappingURL=upsells.js.map
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
import IQueryOptions from '../../Interfaces/Query/IProductQueryOptions';
|
|
2
|
-
import { IBatchAction } from './BatchUtils';
|
|
3
|
-
import { IDatabaseRef, ISaveOption } from './DatabaseService';
|
|
4
|
-
export interface IQuery {
|
|
5
|
-
readonly id?: string;
|
|
6
|
-
readonly limit?: number;
|
|
7
|
-
readonly orderBy?: IQueryOrder;
|
|
8
|
-
readonly startAfter?: string;
|
|
9
|
-
readonly where?: IQueryWhere[];
|
|
10
|
-
}
|
|
11
|
-
export interface IQueryOrder {
|
|
12
|
-
readonly field: string;
|
|
13
|
-
readonly direction: string;
|
|
14
|
-
readonly cast?: 'string' | 'number' | 'boolean';
|
|
15
|
-
}
|
|
16
|
-
export interface IQueryWhere {
|
|
17
|
-
readonly field: string;
|
|
18
|
-
readonly operator: '<' | '<=' | '==' | '>' | '>=' | '!=' | 'array-contains' | 'array-contains-any' | 'in';
|
|
19
|
-
readonly value: any;
|
|
20
|
-
}
|
|
21
|
-
export default class BaseProvider {
|
|
22
|
-
static getDocs: (_path: string, _query: IQueryOptions) => Promise<IDatabaseRef[]>;
|
|
23
|
-
static saveDoc: (_path: string, _id: string, _timestamp: number, _obj: any, _options?: ISaveOption) => Promise<boolean>;
|
|
24
|
-
static addDoc: (__path: string, __obj: any, __noEvent?: boolean) => Promise<string | boolean>;
|
|
25
|
-
static deleteDoc: (__path: string, __id: string, __noEvent?: boolean) => Promise<boolean>;
|
|
26
|
-
static processBatch: (_batch: IBatchAction[], _noEvent?: boolean) => Promise<boolean>;
|
|
27
|
-
static registerListener: (_callback: (_: IDatabaseRef[]) => void, _path: string, _query?: IQueryOptions) => string;
|
|
28
|
-
static unregisterListener: (_id: string) => void;
|
|
29
|
-
}
|
|
1
|
+
import IQueryOptions from '../../Interfaces/Query/IProductQueryOptions';
|
|
2
|
+
import { IBatchAction } from './BatchUtils';
|
|
3
|
+
import { IDatabaseRef, ISaveOption } from './DatabaseService';
|
|
4
|
+
export interface IQuery {
|
|
5
|
+
readonly id?: string;
|
|
6
|
+
readonly limit?: number;
|
|
7
|
+
readonly orderBy?: IQueryOrder;
|
|
8
|
+
readonly startAfter?: string;
|
|
9
|
+
readonly where?: IQueryWhere[];
|
|
10
|
+
}
|
|
11
|
+
export interface IQueryOrder {
|
|
12
|
+
readonly field: string;
|
|
13
|
+
readonly direction: string;
|
|
14
|
+
readonly cast?: 'string' | 'number' | 'boolean';
|
|
15
|
+
}
|
|
16
|
+
export interface IQueryWhere {
|
|
17
|
+
readonly field: string;
|
|
18
|
+
readonly operator: '<' | '<=' | '==' | '>' | '>=' | '!=' | 'array-contains' | 'array-contains-any' | 'in';
|
|
19
|
+
readonly value: any;
|
|
20
|
+
}
|
|
21
|
+
export default class BaseProvider {
|
|
22
|
+
static getDocs: (_path: string, _query: IQueryOptions) => Promise<IDatabaseRef[]>;
|
|
23
|
+
static saveDoc: (_path: string, _id: string, _timestamp: number, _obj: any, _options?: ISaveOption) => Promise<boolean>;
|
|
24
|
+
static addDoc: (__path: string, __obj: any, __noEvent?: boolean) => Promise<string | boolean>;
|
|
25
|
+
static deleteDoc: (__path: string, __id: string, __noEvent?: boolean) => Promise<boolean>;
|
|
26
|
+
static processBatch: (_batch: IBatchAction[], _noEvent?: boolean) => Promise<boolean>;
|
|
27
|
+
static registerListener: (_callback: (_: IDatabaseRef[]) => void, _path: string, _query?: IQueryOptions) => string;
|
|
28
|
+
static unregisterListener: (_id: string) => void;
|
|
29
|
+
}
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var _a;
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
class BaseProvider {
|
|
5
|
-
}
|
|
6
|
-
exports.default = BaseProvider;
|
|
7
|
-
_a = BaseProvider;
|
|
8
|
-
BaseProvider.getDocs = async (_path, _query) => {
|
|
9
|
-
throw 'unsupported';
|
|
10
|
-
};
|
|
11
|
-
BaseProvider.saveDoc = async (_path, _id, _timestamp, _obj, _options) => {
|
|
12
|
-
throw 'unsupported';
|
|
13
|
-
};
|
|
14
|
-
BaseProvider.addDoc = async (__path, __obj, __noEvent) => {
|
|
15
|
-
throw 'unsupported';
|
|
16
|
-
};
|
|
17
|
-
BaseProvider.deleteDoc = async (__path, __id, __noEvent) => {
|
|
18
|
-
throw 'unsupported';
|
|
19
|
-
};
|
|
20
|
-
BaseProvider.processBatch = async (_batch, _noEvent) => {
|
|
21
|
-
throw 'unsupported';
|
|
22
|
-
};
|
|
23
|
-
BaseProvider.registerListener = (_callback, _path, _query) => {
|
|
24
|
-
throw 'unsupported';
|
|
25
|
-
};
|
|
26
|
-
BaseProvider.unregisterListener = (_id) => {
|
|
27
|
-
throw 'unsupported';
|
|
28
|
-
};
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
class BaseProvider {
|
|
5
|
+
}
|
|
6
|
+
exports.default = BaseProvider;
|
|
7
|
+
_a = BaseProvider;
|
|
8
|
+
BaseProvider.getDocs = async (_path, _query) => {
|
|
9
|
+
throw 'unsupported';
|
|
10
|
+
};
|
|
11
|
+
BaseProvider.saveDoc = async (_path, _id, _timestamp, _obj, _options) => {
|
|
12
|
+
throw 'unsupported';
|
|
13
|
+
};
|
|
14
|
+
BaseProvider.addDoc = async (__path, __obj, __noEvent) => {
|
|
15
|
+
throw 'unsupported';
|
|
16
|
+
};
|
|
17
|
+
BaseProvider.deleteDoc = async (__path, __id, __noEvent) => {
|
|
18
|
+
throw 'unsupported';
|
|
19
|
+
};
|
|
20
|
+
BaseProvider.processBatch = async (_batch, _noEvent) => {
|
|
21
|
+
throw 'unsupported';
|
|
22
|
+
};
|
|
23
|
+
BaseProvider.registerListener = (_callback, _path, _query) => {
|
|
24
|
+
throw 'unsupported';
|
|
25
|
+
};
|
|
26
|
+
BaseProvider.unregisterListener = (_id) => {
|
|
27
|
+
throw 'unsupported';
|
|
28
|
+
};
|
|
29
29
|
//# sourceMappingURL=BaseProvider.js.map
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { IDatabaseRef, ISaveOption } from './DatabaseService';
|
|
2
|
-
export interface IBatchAction {
|
|
3
|
-
action: 'set' | 'delete';
|
|
4
|
-
options: ISaveOption;
|
|
5
|
-
doc: IDatabaseRef;
|
|
6
|
-
}
|
|
7
|
-
export default class DBBatch {
|
|
8
|
-
batch: IBatchAction[];
|
|
9
|
-
provider: string | undefined;
|
|
10
|
-
constructor(provider?: string);
|
|
11
|
-
set: (path: string, id: string, data: any, options: ISaveOption) => void;
|
|
12
|
-
delete: (path: string, id: string) => void;
|
|
13
|
-
commit: (noEvent?: boolean) => Promise<void>;
|
|
14
|
-
}
|
|
1
|
+
import { IDatabaseRef, ISaveOption } from './DatabaseService';
|
|
2
|
+
export interface IBatchAction {
|
|
3
|
+
action: 'set' | 'delete';
|
|
4
|
+
options: ISaveOption;
|
|
5
|
+
doc: IDatabaseRef;
|
|
6
|
+
}
|
|
7
|
+
export default class DBBatch {
|
|
8
|
+
batch: IBatchAction[];
|
|
9
|
+
provider: string | undefined;
|
|
10
|
+
constructor(provider?: string);
|
|
11
|
+
set: (path: string, id: string, data: any, options: ISaveOption) => void;
|
|
12
|
+
delete: (path: string, id: string) => void;
|
|
13
|
+
commit: (noEvent?: boolean) => Promise<void>;
|
|
14
|
+
}
|