@lookiero/checkout 9.9.0-beta.2 → 9.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/dist/fake-dependencies/@lookiero/payments-front/index.d.ts +6 -8
  2. package/dist/fake-dependencies/@lookiero/payments-front/index.js +4 -7
  3. package/dist/index.js +2 -2
  4. package/dist/src/ExpoRoot.js +13 -17
  5. package/dist/src/infrastructure/ui/Root.d.ts +2 -0
  6. package/dist/src/infrastructure/ui/Root.js +4 -2
  7. package/dist/src/infrastructure/ui/components/atoms/fiveItemsDiscountBanner/FiveItemsDiscountBanner.style.js +3 -2
  8. package/dist/src/infrastructure/ui/components/organisms/checkoutQuestions/components/textareaCheckoutQuestionItem/TextareaCheckoutQuestionItem.js +1 -1
  9. package/dist/src/infrastructure/ui/components/organisms/checkoutQuestions/components/textareaCheckoutQuestionItem/TextareaCheckoutQuestionItem.style.d.ts +0 -1
  10. package/dist/src/infrastructure/ui/components/organisms/checkoutQuestions/components/textareaCheckoutQuestionItem/TextareaCheckoutQuestionItem.style.js +0 -1
  11. package/dist/src/infrastructure/ui/components/organisms/returnQuestions/components/textareaReturnQuestionItem/TextareaReturnQuestionItem.js +1 -1
  12. package/dist/src/infrastructure/ui/components/organisms/returnQuestions/components/textareaReturnQuestionItem/TextareaReturnQuestionItem.style.d.ts +0 -1
  13. package/dist/src/infrastructure/ui/components/organisms/returnQuestions/components/textareaReturnQuestionItem/TextareaReturnQuestionItem.style.js +0 -1
  14. package/dist/src/infrastructure/ui/hooks/usePaymentInstrumentEvents.d.ts +2 -3
  15. package/dist/src/infrastructure/ui/hooks/usePaymentInstrumentEvents.js +26 -17
  16. package/dist/src/infrastructure/ui/hooks/useQueryBus.d.ts +9 -0
  17. package/dist/src/infrastructure/ui/hooks/useQueryBus.js +10 -0
  18. package/dist/src/infrastructure/ui/hooks/useSubmitCheckout.d.ts +1 -1
  19. package/dist/src/infrastructure/ui/hooks/useSubmitCheckout.js +55 -22
  20. package/dist/src/infrastructure/ui/i18n/i18n.d.ts +0 -1
  21. package/dist/src/infrastructure/ui/i18n/i18n.js +0 -1
  22. package/dist/src/infrastructure/ui/views/App.js +6 -5
  23. package/dist/src/infrastructure/ui/views/checkout/Checkout.js +2 -5
  24. package/dist/src/infrastructure/ui/views/checkout/Checkout.style.d.ts +0 -3
  25. package/dist/src/infrastructure/ui/views/checkout/Checkout.style.js +0 -3
  26. package/dist/src/infrastructure/ui/views/checkout/components/checkoutPaymentModal/CheckoutPaymentModal.js +2 -2
  27. package/dist/src/infrastructure/ui/views/checkout/components/paymentInstrument/PaymentInstrument.js +7 -7
  28. package/dist/src/infrastructure/ui/views/item/components/productVariantDescription/ProductVariantDescription.style.d.ts +1 -0
  29. package/dist/src/infrastructure/ui/views/item/components/productVariantDescription/ProductVariantDescription.style.js +2 -1
  30. package/dist/src/infrastructure/ui/views/return/components/returnQuestionsForm/ReturnQuestionsForm.style.d.ts +1 -0
  31. package/dist/src/infrastructure/ui/views/return/components/returnQuestionsForm/ReturnQuestionsForm.style.js +2 -1
  32. package/dist/src/projection/customer/customer.d.ts +0 -2
  33. package/dist/src/version.d.ts +1 -1
  34. package/dist/src/version.js +1 -1
  35. package/fake-dependencies/@lookiero/payments-front/index.tsx +9 -32
  36. package/index.ts +2 -2
  37. package/jest.config.js +2 -2
  38. package/package.json +7 -7
  39. package/src/ExpoRoot.tsx +32 -37
  40. package/src/infrastructure/ui/Root.tsx +30 -17
  41. package/src/infrastructure/ui/components/atoms/fiveItemsDiscountBanner/FiveItemsDiscountBanner.style.ts +3 -2
  42. package/src/infrastructure/ui/components/atoms/fiveItemsDiscountBanner/__snapshots__/FiveItemsDiscountBanner.test.tsx.snap +1 -1
  43. package/src/infrastructure/ui/components/atoms/price/__snapshots__/Price.test.tsx.snap +3 -3
  44. package/src/infrastructure/ui/components/organisms/checkoutQuestions/components/textareaCheckoutQuestionItem/TextareaCheckoutQuestionItem.style.ts +0 -1
  45. package/src/infrastructure/ui/components/organisms/checkoutQuestions/components/textareaCheckoutQuestionItem/TextareaCheckoutQuestionItem.tsx +1 -0
  46. package/src/infrastructure/ui/components/organisms/returnQuestions/components/textareaReturnQuestionItem/TextareaReturnQuestionItem.style.ts +0 -1
  47. package/src/infrastructure/ui/components/organisms/returnQuestions/components/textareaReturnQuestionItem/TextareaReturnQuestionItem.tsx +1 -0
  48. package/src/infrastructure/ui/components/templates/header/checkoutHeader/__snapshots__/CheckoutHeader.test.tsx.snap +1 -1
  49. package/src/infrastructure/ui/components/templates/header/itemDetailHeader/__snapshots__/ItemDetailHeader.test.tsx.snap +1 -1
  50. package/src/infrastructure/ui/components/templates/header/itemHeader/__snapshots__/ItemHeader.test.tsx.snap +1 -1
  51. package/src/infrastructure/ui/hooks/usePaymentInstrumentEvents.ts +60 -18
  52. package/src/infrastructure/ui/hooks/useQueryBus.test.tsx +23 -0
  53. package/src/infrastructure/ui/hooks/useQueryBus.tsx +27 -0
  54. package/src/infrastructure/ui/hooks/useSubmitCheckout.test.ts +58 -0
  55. package/src/infrastructure/ui/hooks/useSubmitCheckout.ts +77 -33
  56. package/src/infrastructure/ui/i18n/i18n.ts +0 -1
  57. package/src/infrastructure/ui/views/App.tsx +13 -5
  58. package/src/infrastructure/ui/views/checkout/Checkout.style.ts +0 -3
  59. package/src/infrastructure/ui/views/checkout/Checkout.tsx +3 -12
  60. package/src/infrastructure/ui/views/checkout/components/checkoutPaymentModal/CheckoutPaymentModal.tsx +2 -2
  61. package/src/infrastructure/ui/views/checkout/components/deliveryBanner/__snapshots__/DeliveryBanner.test.tsx.snap +1 -1
  62. package/src/infrastructure/ui/views/checkout/components/paymentInstrument/PaymentInstrument.tsx +8 -8
  63. package/src/infrastructure/ui/views/item/components/banner/__snapshots__/CustomerDecissionBanner.test.tsx.snap +3 -3
  64. package/src/infrastructure/ui/views/item/components/getOutOfCheckoutModal/__snapshots__/GetOutOfCheckoutModal.test.tsx.snap +3 -3
  65. package/src/infrastructure/ui/views/item/components/itemActions/__snapshots__/ItemActions.test.tsx.snap +5 -5
  66. package/src/infrastructure/ui/views/item/components/productVariantDescription/ProductVariantDescription.style.ts +2 -1
  67. package/src/infrastructure/ui/views/item/components/productVariantDescription/__snapshots__/ProductVariantDescription.test.tsx.snap +10 -8
  68. package/src/infrastructure/ui/views/item/components/productVariantSlider/__snapshots__/ProductVariantSlider.test.tsx.snap +30 -30
  69. package/src/infrastructure/ui/views/item/components/selectModal/__snapshots__/SelecModal.test.tsx.snap +1 -1
  70. package/src/infrastructure/ui/views/item/components/sizeWithoutStockModal/__snapshots__/SizeWithoutStockModal.test.tsx.snap +2 -2
  71. package/src/infrastructure/ui/views/item/views/productVariant/__snapshots__/ProductVariant.test.tsx.snap +105 -102
  72. package/src/infrastructure/ui/views/return/components/price/__snapshots__/Price.test.tsx.snap +3 -3
  73. package/src/infrastructure/ui/views/return/components/productVariantPreview/__snapshots__/ProductVariantPreview.test.tsx.snap +1 -1
  74. package/src/infrastructure/ui/views/return/components/returnQuestionsForm/ReturnQuestionsForm.style.ts +2 -1
  75. package/src/infrastructure/ui/views/shared/components/productVariant/__snapshots__/ProductVariant.test.tsx.snap +30 -30
  76. package/src/infrastructure/ui/views/summary/components/collapsiblePricing/__snapshots__/CollapsiblePricing.test.tsx.snap +4 -4
  77. package/src/infrastructure/ui/views/summaryTabs/components/checkoutItemsTabs/__snapshots__/CheckoutItemsTabs.test.tsx.snap +62 -62
  78. package/src/projection/customer/customer.ts +0 -2
  79. package/dist/pact.config.d.ts +0 -21
  80. package/dist/pact.config.js +0 -16
  81. package/dist/public/public/assets/adaptive-icon.png +0 -0
  82. package/dist/public/public/assets/favicon.png +0 -0
  83. package/dist/public/public/assets/icon.png +0 -0
  84. package/dist/public/public/assets/splash.png +0 -0
  85. package/dist/public/public/images/not-found.png +0 -0
  86. package/dist/src/infrastructure/projection/bookedProductsVariants/httpBookedProductsVariantsForCheckoutItemView.pact.d.ts +0 -1
  87. package/dist/src/infrastructure/projection/bookedProductsVariants/httpBookedProductsVariantsForCheckoutItemView.pact.js +0 -55
  88. package/dist/src/infrastructure/projection/checkout/httpCheckoutByIdView.pact.d.ts +0 -1
  89. package/dist/src/infrastructure/projection/checkout/httpCheckoutByIdView.pact.js +0 -116
  90. package/dist/src/infrastructure/projection/checkout/httpFirstAvailableCheckoutByCustomerIdView.pact.d.ts +0 -1
  91. package/dist/src/infrastructure/projection/checkout/httpFirstAvailableCheckoutByCustomerIdView.pact.js +0 -56
  92. package/dist/src/infrastructure/projection/checkout/httpFiveItemsDiscountByCustomerIdView.pact.d.ts +0 -1
  93. package/dist/src/infrastructure/projection/checkout/httpFiveItemsDiscountByCustomerIdView.pact.js +0 -51
  94. package/dist/src/infrastructure/projection/checkout/httpIsCheckoutEnabledByCustomerIdView.pact.d.ts +0 -1
  95. package/dist/src/infrastructure/projection/checkout/httpIsCheckoutEnabledByCustomerIdView.pact.js +0 -51
  96. package/dist/src/infrastructure/projection/checkout/httpIsSizeChangeEnabledByCheckoutIdView.pact.d.ts +0 -1
  97. package/dist/src/infrastructure/projection/checkout/httpIsSizeChangeEnabledByCheckoutIdView.pact.js +0 -51
  98. package/dist/src/infrastructure/projection/checkout/react/useViewIsCheckoutAccessibleByCustomerId.d.ts +0 -13
  99. package/dist/src/infrastructure/projection/checkout/react/useViewIsCheckoutAccessibleByCustomerId.js +0 -19
  100. package/dist/src/infrastructure/projection/checkoutBooking/httpCheckoutBookingByIdView.pact.d.ts +0 -1
  101. package/dist/src/infrastructure/projection/checkoutBooking/httpCheckoutBookingByIdView.pact.js +0 -56
  102. package/dist/src/infrastructure/projection/checkoutItem/httpCheckoutItemByIdView.pact.d.ts +0 -1
  103. package/dist/src/infrastructure/projection/checkoutItem/httpCheckoutItemByIdView.pact.js +0 -57
  104. package/dist/src/infrastructure/projection/checkoutQuestion/httpCheckoutQuestionsByCheckoutIdView.pact.d.ts +0 -1
  105. package/dist/src/infrastructure/projection/checkoutQuestion/httpCheckoutQuestionsByCheckoutIdView.pact.js +0 -55
  106. package/dist/src/infrastructure/projection/payment/httpPaymentFlowPayloadByCheckoutIdView.pact.d.ts +0 -1
  107. package/dist/src/infrastructure/projection/payment/httpPaymentFlowPayloadByCheckoutIdView.pact.js +0 -120
  108. package/dist/src/infrastructure/projection/pricing/httpPricingByCheckoutIdView.pact.d.ts +0 -1
  109. package/dist/src/infrastructure/projection/pricing/httpPricingByCheckoutIdView.pact.js +0 -55
  110. package/dist/src/infrastructure/projection/returnQuestion/httpReturnQuestionsByCheckoutItemIdView.pact.d.ts +0 -1
  111. package/dist/src/infrastructure/projection/returnQuestion/httpReturnQuestionsByCheckoutItemIdView.pact.js +0 -55
  112. package/dist/src/infrastructure/ui/components/layouts/layout/Layout.d.ts +0 -22
  113. package/dist/src/infrastructure/ui/components/layouts/layout/Layout.js +0 -1
  114. package/dist/src/infrastructure/ui/components/layouts/layout/components/footer/Footer.d.ts +0 -7
  115. package/dist/src/infrastructure/ui/components/layouts/layout/components/footer/Footer.js +0 -5
  116. package/dist/src/infrastructure/ui/components/layouts/layout/components/header/Header.d.ts +0 -7
  117. package/dist/src/infrastructure/ui/components/layouts/layout/components/header/Header.js +0 -6
  118. package/dist/src/infrastructure/ui/components/layouts/layout/components/header/Header.style.d.ts +0 -4
  119. package/dist/src/infrastructure/ui/components/layouts/layout/components/header/Header.style.js +0 -20
  120. package/dist/src/infrastructure/ui/components/layouts/layout/dummyLayout/DummyLayout.d.ts +0 -4
  121. package/dist/src/infrastructure/ui/components/layouts/layout/dummyLayout/DummyLayout.js +0 -43
  122. package/dist/src/infrastructure/ui/components/layouts/layout/dummyLayout/DummyLayout.style.d.ts +0 -12
  123. package/dist/src/infrastructure/ui/components/layouts/layout/dummyLayout/DummyLayout.style.js +0 -14
  124. package/dist/src/infrastructure/ui/components/templates/header/defaultHeader/DefaultHeader.d.ts +0 -7
  125. package/dist/src/infrastructure/ui/components/templates/header/defaultHeader/DefaultHeader.js +0 -21
  126. package/dist/src/infrastructure/ui/components/templates/header/defaultHeader/DefaultHeader.style.d.ts +0 -8
  127. package/dist/src/infrastructure/ui/components/templates/header/defaultHeader/DefaultHeader.style.js +0 -12
  128. package/dist/src/infrastructure/ui/hooks/useNewFeedbackExperiment.d.ts +0 -12
  129. package/dist/src/infrastructure/ui/hooks/useNewFeedbackExperiment.js +0 -64
  130. package/dist/src/infrastructure/ui/i18n/fetchTranslations.d.ts +0 -10
  131. package/dist/src/infrastructure/ui/i18n/fetchTranslations.js +0 -17
  132. package/dist/src/infrastructure/ui/i18n/translationEndpoint.d.ts +0 -20
  133. package/dist/src/infrastructure/ui/i18n/translationEndpoint.js +0 -27
  134. package/dist/src/infrastructure/ui/routing/CheckoutAccessibilityMiddleware.d.ts +0 -10
  135. package/dist/src/infrastructure/ui/routing/CheckoutAccessibilityMiddleware.js +0 -27
  136. package/dist/src/infrastructure/ui/views/App.style.d.ts +0 -6
  137. package/dist/src/infrastructure/ui/views/App.style.js +0 -8
  138. package/dist/src/infrastructure/ui/views/feedback/components/checkoutQuestionsForm/CheckoutQuestionsForm.style.d.ts +0 -7
  139. package/dist/src/infrastructure/ui/views/feedback/components/checkoutQuestionsForm/CheckoutQuestionsForm.style.js +0 -11
  140. package/dist/src/infrastructure/ui/views/item/components/returnQuestionsForm/ReturnQuestionsForm.d.ts +0 -12
  141. package/dist/src/infrastructure/ui/views/item/components/returnQuestionsForm/ReturnQuestionsForm.js +0 -64
  142. package/dist/src/infrastructure/ui/views/item/components/returnQuestionsForm/ReturnQuestionsForm.style.d.ts +0 -12
  143. package/dist/src/infrastructure/ui/views/item/components/returnQuestionsForm/ReturnQuestionsForm.style.js +0 -16
  144. package/dist/src/infrastructure/ui/views/return/Return.style.d.ts +0 -40
  145. package/dist/src/infrastructure/ui/views/return/Return.style.js +0 -44
  146. package/dist/src/infrastructure/ui/views/summary/components/stickyPricing/StickyPricing.d.ts +0 -14
  147. package/dist/src/infrastructure/ui/views/summary/components/stickyPricing/StickyPricing.js +0 -28
  148. package/dist/src/infrastructure/ui/views/summary/components/stickyPricing/StickyPricing.style.d.ts +0 -7
  149. package/dist/src/infrastructure/ui/views/summary/components/stickyPricing/StickyPricing.style.js +0 -11
  150. package/dist/src/projection/checkout/viewIsCheckoutAccessibleByCustomerId.d.ts +0 -26
  151. package/dist/src/projection/checkout/viewIsCheckoutAccessibleByCustomerId.js +0 -21
  152. package/dist/src/projection/shared/country.d.ts +0 -14
  153. package/dist/src/projection/shared/country.js +0 -15
  154. package/dist/src/projection/shared/customer.d.ts +0 -9
  155. package/dist/src/projection/shared/customer.js +0 -1
  156. package/dist/src/projection/shared/locale.d.ts +0 -12
  157. package/dist/src/projection/shared/locale.js +0 -13
  158. package/dist/src/projection/shared/order.d.ts +0 -6
  159. package/dist/src/projection/shared/order.js +0 -1
  160. package/dist/src/projection/shared/price.d.ts +0 -11
  161. package/dist/src/projection/shared/price.js +0 -1
  162. package/dist/src/projection/shared/size.d.ts +0 -21
  163. package/dist/src/projection/shared/size.js +0 -4
  164. package/dist/src/projection/shared/subscription.d.ts +0 -2
  165. package/dist/src/projection/shared/subscription.js +0 -1
  166. package/dist/src/shared/ui/components/atoms/aspectRatioView/AspectRatioView.d.ts +0 -15
  167. package/dist/src/shared/ui/components/atoms/aspectRatioView/AspectRatioView.js +0 -16
  168. package/dist/src/shared/ui/components/atoms/error/Error.d.ts +0 -11
  169. package/dist/src/shared/ui/components/atoms/error/Error.js +0 -6
  170. package/dist/src/shared/ui/components/atoms/field/Field.d.ts +0 -14
  171. package/dist/src/shared/ui/components/atoms/field/Field.js +0 -29
  172. package/dist/src/shared/ui/components/atoms/field/Field.style.d.ts +0 -16
  173. package/dist/src/shared/ui/components/atoms/field/Field.style.js +0 -19
  174. package/dist/src/shared/ui/components/molecules/inputField/InputField.d.ts +0 -24
  175. package/dist/src/shared/ui/components/molecules/inputField/InputField.js +0 -28
  176. package/dist/src/shared/ui/components/molecules/inputField/InputField.style.d.ts +0 -29
  177. package/dist/src/shared/ui/components/molecules/inputField/InputField.style.js +0 -37
@@ -1,6 +0,0 @@
1
- import React from "react";
2
- import { View } from "react-native";
3
- import { style } from "./Header.style";
4
-
5
- const Header = ({ children }) => React.createElement(View, { style: style.header }, children);
6
- export { Header };
@@ -1,4 +0,0 @@
1
- declare const style: {
2
- header: {};
3
- };
4
- export { style };
@@ -1,20 +0,0 @@
1
- import { Platform, StyleSheet } from "react-native";
2
- import { HEADER_HEIGHT } from "../../../../templates/header/Header.style";
3
-
4
- const style = StyleSheet.create({
5
- header: {
6
- ...Platform.select({
7
- web: {
8
- position: "sticky",
9
- top: 0,
10
- zIndex: 10,
11
- height: HEADER_HEIGHT,
12
- },
13
- native: {
14
- position: "relative",
15
- height: HEADER_HEIGHT,
16
- },
17
- }),
18
- },
19
- });
20
- export { style };
@@ -1,4 +0,0 @@
1
- import { Layout } from "../Layout";
2
-
3
- declare const DummyLayout: Layout;
4
- export { DummyLayout };
@@ -1,43 +0,0 @@
1
- /* eslint-disable react/prop-types */
2
- import React from "react";
3
- import { View } from "react-native";
4
- import { GestureHandlerRootView, ScrollView as RNGHScrollView } from "react-native-gesture-handler";
5
- import { SafeAreaView } from "react-native-safe-area-context";
6
- import { Footer as DefaultFooter } from "../../../templates/footer/Footer";
7
- import { DefaultHeader } from "../../../templates/header/defaultHeader/DefaultHeader";
8
- import { Footer } from "../components/footer/Footer";
9
- import { Header } from "../components/header/Header";
10
- import { style } from "./DummyLayout.style";
11
-
12
- const DummyLayout = ({
13
- children,
14
- header = React.createElement(DefaultHeader, null),
15
- footer = React.createElement(DefaultFooter, null),
16
- panel,
17
- style: customStyle,
18
- scrollEnabled,
19
- onLayout,
20
- }) =>
21
- React.createElement(
22
- SafeAreaView,
23
- { style: [style.safeAreaView, customStyle?.safeAreaView] },
24
- React.createElement(
25
- GestureHandlerRootView,
26
- { style: { flex: 1 } },
27
- React.createElement(
28
- RNGHScrollView,
29
- {
30
- contentContainerStyle: [style.scrollView, customStyle?.scrollView],
31
- scrollEnabled: scrollEnabled,
32
- scrollEventThrottle: 16,
33
- showsVerticalScrollIndicator: false,
34
- stickyHeaderIndices: [0],
35
- },
36
- React.createElement(Header, null, header),
37
- panel,
38
- React.createElement(View, { style: style.children, onLayout: onLayout }, children),
39
- ),
40
- ),
41
- React.createElement(Footer, null, footer),
42
- );
43
- export { DummyLayout };
@@ -1,12 +0,0 @@
1
- declare const style: {
2
- children: {
3
- flex: number;
4
- };
5
- safeAreaView: {
6
- flex: number;
7
- };
8
- scrollView: {
9
- flexGrow: number;
10
- };
11
- };
12
- export { style };
@@ -1,14 +0,0 @@
1
- import { StyleSheet } from "react-native";
2
-
3
- const style = StyleSheet.create({
4
- children: {
5
- flex: 1,
6
- },
7
- safeAreaView: {
8
- flex: 1,
9
- },
10
- scrollView: {
11
- flexGrow: 1,
12
- },
13
- });
14
- export { style };
@@ -1,7 +0,0 @@
1
- import { FC } from "react";
2
-
3
- interface DefaultHeaderProps {
4
- readonly onPressMenu?: () => void;
5
- }
6
- declare const DefaultHeader: FC<DefaultHeaderProps>;
7
- export { DefaultHeader };
@@ -1,21 +0,0 @@
1
- import React from "react";
2
- import { ButtonIcon } from "@lookiero/aurora";
3
- import { Header } from "../Header";
4
- import { ButtonIconPlaceholder } from "../buttonIconPlaceholder/ButtonIconPlaceholder";
5
- import { Logo } from "../logo/Logo";
6
- import { style } from "./DefaultHeader.style";
7
-
8
- const DefaultHeader = ({ onPressMenu }) =>
9
- React.createElement(
10
- Header,
11
- { testID: "default-header" },
12
- React.createElement(Logo, null),
13
- React.createElement(ButtonIconPlaceholder, null),
14
- React.createElement(ButtonIcon, {
15
- name: "menu",
16
- style: style.button,
17
- testID: "menu-button-icon",
18
- onPress: onPressMenu,
19
- }),
20
- );
21
- export { DefaultHeader };
@@ -1,8 +0,0 @@
1
- declare const style: {
2
- button: {
3
- alignSelf: "auto";
4
- height: number;
5
- width: number;
6
- };
7
- };
8
- export { style };
@@ -1,12 +0,0 @@
1
- import { StyleSheet } from "react-native";
2
- import { theme } from "@lookiero/sty-psp-ui";
3
-
4
- const { space10 } = theme();
5
- const style = StyleSheet.create({
6
- button: {
7
- alignSelf: "auto",
8
- height: space10,
9
- width: space10,
10
- },
11
- });
12
- export { style };
@@ -1,12 +0,0 @@
1
- import { FC, ReactNode } from "react";
2
-
3
- declare enum NewFeedbackExperimentVariation {
4
- CONTROL = "control",
5
- RETURN_PAGE = "return_page",
6
- }
7
- interface NewFeedbackExperimentProviderProps {
8
- readonly children: ReactNode;
9
- }
10
- declare const NewFeedbackExperimentProvider: FC<NewFeedbackExperimentProviderProps>;
11
- declare const useNewFeedbackExperiment: () => NewFeedbackExperimentVariation;
12
- export { useNewFeedbackExperiment, NewFeedbackExperimentProvider, NewFeedbackExperimentVariation };
@@ -1,64 +0,0 @@
1
- import React, { createContext, useContext, useEffect, useMemo, useRef } from "react";
2
- import invariant from "tiny-invariant";
3
- import { Spinner } from "@lookiero/aurora";
4
- import { useAssignedVariationByExperimentId } from "@lookiero/sty-psp-ab-testing";
5
- import { useViewFirstAvailableCheckoutByCustomerId } from "../../projection/checkout/react/useViewFirstAvailableCheckoutByCustomerId";
6
- import { useTrackAssignedVariationByExperiment } from "../../tracking/useTrackAssignedVariationByExperiment";
7
- import { useStaticInfo } from "./useStaticInfo";
8
-
9
- var NewFeedbackExperimentVariation;
10
- (function (NewFeedbackExperimentVariation) {
11
- NewFeedbackExperimentVariation["CONTROL"] = "control";
12
- NewFeedbackExperimentVariation["RETURN_PAGE"] = "return_page";
13
- })(NewFeedbackExperimentVariation || (NewFeedbackExperimentVariation = {}));
14
- const NewFeedbackExperimentContext = createContext(null);
15
- const NewFeedbackExperimentProvider = ({ children }) => {
16
- const {
17
- kameleoon: {
18
- experiments: {
19
- newFeedback: { id: newFeedbackId, variations },
20
- },
21
- },
22
- customer: { customerId, country, segment },
23
- } = useStaticInfo();
24
- const [checkout] = useViewFirstAvailableCheckoutByCustomerId({ customerId });
25
- const { assignedVariation: newFeedbackVariation } = useAssignedVariationByExperimentId({
26
- experimentId: newFeedbackId,
27
- });
28
- const trackAssignedVariation = useTrackAssignedVariationByExperiment({
29
- checkoutId: checkout?.id,
30
- country,
31
- segment,
32
- experimentId: newFeedbackId,
33
- });
34
- const value = useMemo(
35
- () => ({
36
- variation:
37
- newFeedbackVariation?.id === Number(variations.v1)
38
- ? NewFeedbackExperimentVariation.RETURN_PAGE
39
- : NewFeedbackExperimentVariation.CONTROL,
40
- }),
41
- [newFeedbackVariation?.id, variations.v1],
42
- );
43
- const assignedVariantTracked = useRef(false);
44
- useEffect(() => {
45
- if (assignedVariantTracked.current || !newFeedbackVariation || !checkout?.id) {
46
- return;
47
- }
48
- trackAssignedVariation({ assignedVariation: newFeedbackVariation });
49
- assignedVariantTracked.current = true;
50
- }, [checkout?.id, newFeedbackVariation, trackAssignedVariation]);
51
- if (!checkout) {
52
- return React.createElement(Spinner, null);
53
- }
54
- return React.createElement(NewFeedbackExperimentContext.Provider, { value: value }, children);
55
- };
56
- const useNewFeedbackExperiment = () => {
57
- const newFeedbackExperiment = useContext(NewFeedbackExperimentContext);
58
- invariant(
59
- newFeedbackExperiment,
60
- "Your are trying to use the useNewFeedbackExperiment hook without wrapping your app with the <NewFeedbackExperimentProvider>.",
61
- );
62
- return newFeedbackExperiment.variation;
63
- };
64
- export { useNewFeedbackExperiment, NewFeedbackExperimentProvider, NewFeedbackExperimentVariation };
@@ -1,10 +0,0 @@
1
- import { EndpointFunction, FetchTranslationFuction } from "@lookiero/i18n";
2
-
3
- interface FetchTranslationsFuntionArgs {
4
- readonly translations: EndpointFunction[];
5
- }
6
- interface FetchTranslationsFuntion {
7
- (args: FetchTranslationsFuntionArgs): FetchTranslationFuction;
8
- }
9
- declare const fetchTranslations: FetchTranslationsFuntion;
10
- export { fetchTranslations };
@@ -1,17 +0,0 @@
1
- import { fetchFetchTranslation } from "@lookiero/i18n";
2
-
3
- const fetchTranslations =
4
- ({ translations }) =>
5
- async ({ locale }) => {
6
- const translationsMessages = await Promise.all(
7
- translations.map((endpoint) => fetchFetchTranslation({ endpoint })({ locale })),
8
- );
9
- return translationsMessages.reduce(
10
- (acc, translationMessages) => ({
11
- ...acc,
12
- ...translationMessages,
13
- }),
14
- {},
15
- );
16
- };
17
- export { fetchTranslations };
@@ -1,20 +0,0 @@
1
- import { EndpointFunction } from "@lookiero/i18n";
2
-
3
- interface TranslationEndpointFunctionArgs {
4
- readonly translationsUrl: string;
5
- readonly translationsApiKey: string;
6
- }
7
- interface TranslationEndpointFunction {
8
- (args: TranslationEndpointFunctionArgs): EndpointFunction;
9
- }
10
- declare const translationEndpoint: TranslationEndpointFunction;
11
- type Project = "user-area-front" | "inventory-catalog" | "checkout";
12
- interface TranslationExternalEndpointFunctionArgs {
13
- readonly translationsUrl: string;
14
- readonly projects: [project: Project, filter?: string][];
15
- }
16
- interface TranslationExternalEndpointFunction {
17
- (args: TranslationExternalEndpointFunctionArgs): EndpointFunction;
18
- }
19
- declare const translationExternalEndpoint: TranslationExternalEndpointFunction;
20
- export { translationEndpoint, translationExternalEndpoint };
@@ -1,27 +0,0 @@
1
- import { Country } from "../../../projection/shared/country";
2
- import { Locale } from "../../../projection/shared/locale";
3
-
4
- const translationEndpoint =
5
- ({ translationsUrl, translationsApiKey }) =>
6
- (locale) =>
7
- `${translationsUrl}/${locale}?key=${translationsApiKey}&no-folding=true`;
8
- const COUNTRY = {
9
- [Locale.ES]: Country.ES,
10
- [Locale.FR]: Country.FR,
11
- [Locale.EN]: Country.GB,
12
- [Locale.IT]: Country.IT,
13
- [Locale.PT]: Country.PT,
14
- [Locale.DE]: Country.DE,
15
- [Locale.AT]: Country.AT,
16
- [Locale.NL]: Country.NL,
17
- [Locale.SE]: Country.SE,
18
- };
19
- const translationExternalEndpoint =
20
- ({ translationsUrl, projects }) =>
21
- (locale) => {
22
- const projectsQueryParam = projects
23
- .map(([project, filter]) => `projectFilter=${project}${filter ? `:${filter}` : ""}`)
24
- .join("&");
25
- return `${translationsUrl}/${locale}/${COUNTRY[locale]}?${projectsQueryParam}`;
26
- };
27
- export { translationEndpoint, translationExternalEndpoint };
@@ -1,10 +0,0 @@
1
- import { FC } from "react";
2
-
3
- interface CheckoutAccessibilityMiddlewareProps {
4
- readonly customerId: string | undefined;
5
- readonly onNotAccessible: () => void;
6
- readonly loader?: JSX.Element;
7
- readonly children: JSX.Element;
8
- }
9
- declare const CheckoutAccessibilityMiddleware: FC<CheckoutAccessibilityMiddlewareProps>;
10
- export { CheckoutAccessibilityMiddleware };
@@ -1,27 +0,0 @@
1
- import React, { useEffect, useRef } from "react";
2
- import { Spinner } from "@lookiero/aurora";
3
- import { QueryStatus } from "@lookiero/messaging-react";
4
- import { useViewIsCheckoutAccessibleByCustomerId } from "../../projection/checkout/react/useViewIsCheckoutAccessibleByCustomerId";
5
-
6
- const CheckoutAccessibilityMiddleware = ({
7
- customerId,
8
- onNotAccessible,
9
- loader = React.createElement(Spinner, null),
10
- children,
11
- }) => {
12
- const [accessible, status] = useViewIsCheckoutAccessibleByCustomerId({ customerId });
13
- const onNotAccessibleRef = useRef(onNotAccessible);
14
- onNotAccessibleRef.current = onNotAccessible;
15
- const notAccessible = accessible === false || status === QueryStatus.ERROR;
16
- useEffect(() => {
17
- if (notAccessible) {
18
- onNotAccessibleRef.current();
19
- }
20
- }, [notAccessible]);
21
- return accessible === undefined && [QueryStatus.IDLE, QueryStatus.LOADING].includes(status)
22
- ? loader
23
- : accessible
24
- ? children
25
- : null;
26
- };
27
- export { CheckoutAccessibilityMiddleware };
@@ -1,6 +0,0 @@
1
- declare const style: {
2
- container: {
3
- flex: number;
4
- };
5
- };
6
- export { style };
@@ -1,8 +0,0 @@
1
- import { StyleSheet } from "react-native";
2
-
3
- const style = StyleSheet.create({
4
- container: {
5
- flex: 1,
6
- },
7
- });
8
- export { style };
@@ -1,7 +0,0 @@
1
- declare const style: {
2
- buttonContainer: {
3
- paddingHorizontal: number;
4
- paddingVertical: number;
5
- };
6
- };
7
- export { style };
@@ -1,11 +0,0 @@
1
- import { StyleSheet } from "react-native";
2
- import { theme } from "@lookiero/sty-psp-ui";
3
-
4
- const { space6, space8 } = theme();
5
- const style = StyleSheet.create({
6
- buttonContainer: {
7
- paddingHorizontal: space6,
8
- paddingVertical: space8,
9
- },
10
- });
11
- export { style };
@@ -1,12 +0,0 @@
1
- import { FC } from "react";
2
- import { FeedbackProjection } from "../../../../../../projection/feedback/feedback";
3
- import { ReturnQuestionProjection } from "../../../../../../projection/returnQuestion/returnQuestion";
4
-
5
- interface ReturnQuestionsFormProps {
6
- readonly visible: boolean;
7
- readonly returnQuestions: ReturnQuestionProjection[];
8
- readonly onSubmit: (feedback: FeedbackProjection) => void;
9
- readonly onClose: () => void;
10
- }
11
- declare const ReturnQuestionsForm: FC<ReturnQuestionsFormProps>;
12
- export { ReturnQuestionsForm };
@@ -1,64 +0,0 @@
1
- import { PortalHost } from "@gorhom/portal";
2
- import React, { useCallback } from "react";
3
- import { View } from "react-native";
4
- import { Button, Text } from "@lookiero/aurora";
5
- import { useI18nMessage } from "@lookiero/i18n-react";
6
- import { Modal } from "@lookiero/sty-psp-ui";
7
- import { ReturnQuestionType } from "../../../../../../projection/returnQuestion/returnQuestion";
8
- import { ReturnQuestions } from "../../../../components/organisms/returnQuestions/ReturnQuestions";
9
- import { useReturnQuestionFeedback } from "../../../../components/organisms/returnQuestions/behaviors/useReturnQuestionFeedback";
10
- import { ReturnQuestionItemProvider } from "../../../../components/organisms/returnQuestions/behaviors/useReturnQuestionItem";
11
- import { HostDefaultReturnQuestionItem } from "../../../../components/organisms/returnQuestions/components/hostDefaultReturnQuestionItem/HostDefaultReturnQuestionItem";
12
- import { HostSelectReturnQuestionItem } from "../../../../components/organisms/returnQuestions/components/hostSelectReturnQuestionItem/HostSelectReturnQuestionItem";
13
- import { HostStackReturnQuestionItem } from "../../../../components/organisms/returnQuestions/components/hostStackReturnQuestionItem/modal/HostStackReturnQuestionItem";
14
- import { OptionReturnQuestionItem } from "../../../../components/organisms/returnQuestions/components/optionReturnQuestionItem/OptionReturnQuestionItem";
15
- import { TextareaReturnQuestionItem } from "../../../../components/organisms/returnQuestions/components/textareaReturnQuestionItem/TextareaReturnQuestionItem";
16
- import { I18nMessages } from "../../../../i18n/i18n";
17
- import { style } from "./ReturnQuestionsForm.style";
18
-
19
- const RETURN_QUESTION_FORM_PORTAL_HOST_NAME = "return-question-form-portal";
20
- const returnQuestionItems = {
21
- [ReturnQuestionType.HOST_DEFAULT]: HostDefaultReturnQuestionItem,
22
- [ReturnQuestionType.HOST_TEXTAREA]: HostDefaultReturnQuestionItem,
23
- [ReturnQuestionType.HOST_SELECT]: HostSelectReturnQuestionItem,
24
- [ReturnQuestionType.HOST_STACK]: HostStackReturnQuestionItem,
25
- [ReturnQuestionType.TEXTAREA]: TextareaReturnQuestionItem,
26
- [ReturnQuestionType.OPTION]: OptionReturnQuestionItem,
27
- };
28
- const ReturnQuestionsForm = ({ returnQuestions, visible, onSubmit, onClose }) => {
29
- const titleText = useI18nMessage({ id: I18nMessages.RETURN_QUESTIONS_TITLE });
30
- const submitButtonText = useI18nMessage({ id: I18nMessages.RETURN_QUESTIONS_SUBMIT_BUTTON });
31
- const feedback = useReturnQuestionFeedback();
32
- const handleOnSubmit = useCallback(() => onSubmit(feedback), [feedback, onSubmit]);
33
- return React.createElement(
34
- ReturnQuestionItemProvider,
35
- { returnQuestionItems: returnQuestionItems },
36
- React.createElement(PortalHost, { name: RETURN_QUESTION_FORM_PORTAL_HOST_NAME }),
37
- React.createElement(
38
- Modal,
39
- {
40
- portalHostName: RETURN_QUESTION_FORM_PORTAL_HOST_NAME,
41
- testID: "return-questions-form-modal",
42
- visible: visible,
43
- scroll: true,
44
- showCloseButton: true,
45
- onClose: onClose,
46
- },
47
- React.createElement(
48
- View,
49
- { style: style.modalContent },
50
- React.createElement(Text, { level: 3, style: style.title, heading: true }, titleText),
51
- React.createElement(ReturnQuestions, {
52
- portalHostName: RETURN_QUESTION_FORM_PORTAL_HOST_NAME,
53
- returnQuestions: returnQuestions,
54
- }),
55
- React.createElement(
56
- Button,
57
- { style: style.submit, testID: "return-questions-button", onPress: handleOnSubmit },
58
- submitButtonText,
59
- ),
60
- ),
61
- ),
62
- );
63
- };
64
- export { ReturnQuestionsForm };
@@ -1,12 +0,0 @@
1
- declare const style: {
2
- modalContent: {
3
- paddingHorizontal: number;
4
- };
5
- submit: {
6
- marginTop: number;
7
- };
8
- title: {
9
- marginBottom: number;
10
- };
11
- };
12
- export { style };
@@ -1,16 +0,0 @@
1
- import { StyleSheet } from "react-native";
2
- import { theme } from "@lookiero/sty-psp-ui";
3
-
4
- const { space6, space8 } = theme();
5
- const style = StyleSheet.create({
6
- modalContent: {
7
- paddingHorizontal: space6,
8
- },
9
- submit: {
10
- marginTop: space8,
11
- },
12
- title: {
13
- marginBottom: space6,
14
- },
15
- });
16
- export { style };
@@ -1,40 +0,0 @@
1
- declare const style: {
2
- description: {
3
- color: string;
4
- };
5
- desktopInfo: {
6
- borderTopLeftRadius: number;
7
- borderTopRightRadius: number;
8
- };
9
- desktopLayoutSpacing: {
10
- paddingVertical: number;
11
- };
12
- headerWrapper: {
13
- display: "flex";
14
- flexDirection: "column";
15
- };
16
- info: {
17
- backgroundColor: string;
18
- paddingBottom: number;
19
- paddingHorizontal: number;
20
- paddingTop: number;
21
- };
22
- layout: {
23
- flex: number;
24
- justifyContent: "center";
25
- };
26
- safeAreaView: {
27
- backgroundColor: string;
28
- flex: number;
29
- };
30
- scrollView: {
31
- flex: number;
32
- };
33
- submit: {
34
- backgroundColor: string;
35
- borderBottomLeftRadius: number;
36
- borderBottomRightRadius: number;
37
- padding: number;
38
- };
39
- };
40
- export { style };
@@ -1,44 +0,0 @@
1
- import { StyleSheet } from "react-native";
2
- import { theme } from "@lookiero/sty-psp-ui";
3
-
4
- const { borderRadius5, colorBgPrimaryLight, colorBgBase, colorTextMedium, space4, space6, space8 } = theme();
5
- const style = StyleSheet.create({
6
- description: {
7
- color: colorTextMedium,
8
- },
9
- desktopInfo: {
10
- borderTopLeftRadius: borderRadius5,
11
- borderTopRightRadius: borderRadius5,
12
- },
13
- desktopLayoutSpacing: {
14
- paddingVertical: space8,
15
- },
16
- headerWrapper: {
17
- display: "flex",
18
- flexDirection: "column",
19
- },
20
- info: {
21
- backgroundColor: colorBgBase,
22
- paddingBottom: space4,
23
- paddingHorizontal: space6,
24
- paddingTop: space8,
25
- },
26
- layout: {
27
- flex: 1,
28
- justifyContent: "center",
29
- },
30
- safeAreaView: {
31
- backgroundColor: colorBgPrimaryLight,
32
- flex: 1,
33
- },
34
- scrollView: {
35
- flex: 1,
36
- },
37
- submit: {
38
- backgroundColor: colorBgBase,
39
- borderBottomLeftRadius: borderRadius5,
40
- borderBottomRightRadius: borderRadius5,
41
- padding: space6,
42
- },
43
- });
44
- export { style };
@@ -1,14 +0,0 @@
1
- import { FC } from "react";
2
- import { LayoutRectangle } from "react-native";
3
- import { PricingProjection } from "../../../../../../projection/pricing/pricing";
4
-
5
- interface StickyPricingProps {
6
- readonly pricing: PricingProjection;
7
- readonly totalCheckoutItemsKept: number;
8
- readonly collapsed: boolean;
9
- readonly onPress: () => void;
10
- readonly onSubmit: () => void;
11
- readonly onLayout?: ({ width, height }: LayoutRectangle) => void;
12
- }
13
- declare const StickyPricing: FC<StickyPricingProps>;
14
- export { StickyPricing };
@@ -1,28 +0,0 @@
1
- import React from "react";
2
- import { Sticky } from "@lookiero/sty-psp-ui";
3
- import { Body } from "../../../../components/layouts/body/Body";
4
- import { Pricing } from "../pricing/Pricing";
5
- import { style } from "./StickyPricing.style";
6
-
7
- const StickyPricing = ({ pricing, totalCheckoutItemsKept, collapsed, onPress, onSubmit, onLayout }) =>
8
- React.createElement(
9
- Sticky,
10
- { style: style.sticky, onLayout: onLayout },
11
- React.createElement(
12
- Body,
13
- null,
14
- React.createElement(Pricing, {
15
- balanceDiscount: pricing.balanceDiscount,
16
- collapsed: collapsed,
17
- discount: pricing.discount,
18
- discountPercentage: pricing.discountPercentage,
19
- pendingToPay: pricing.pendingToPay,
20
- service: pricing.service,
21
- subtotal: pricing.subtotal,
22
- totalCheckoutItemsKept: totalCheckoutItemsKept,
23
- onPress: onPress,
24
- onSubmit: onSubmit,
25
- }),
26
- ),
27
- );
28
- export { StickyPricing };
@@ -1,7 +0,0 @@
1
- declare const style: {
2
- sticky: {
3
- paddingBottom: number;
4
- paddingTop: number;
5
- };
6
- };
7
- export { style };