@lookiero/checkout 12.2.0-beta.0 → 12.3.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 (102) hide show
  1. package/dist/src/domain/checkoutItem/model/price.d.ts +1 -1
  2. package/dist/src/infrastructure/delivery/baseBootstrap.d.ts +2 -11
  3. package/dist/src/infrastructure/delivery/baseBootstrap.js +3 -8
  4. package/dist/src/infrastructure/delivery/bootstrap.js +0 -7
  5. package/dist/src/infrastructure/delivery/bootstrap.mock.js +0 -7
  6. package/dist/src/infrastructure/projection/checkoutItem/checkoutItem.mock.js +1 -1
  7. package/dist/src/infrastructure/projection/pricing/pricing.mock.js +1 -1
  8. package/dist/src/infrastructure/tracking/tracking.d.ts +1 -1
  9. package/dist/src/infrastructure/ui/Root.d.ts +1 -2
  10. package/dist/src/infrastructure/ui/hooks/useCheckoutFlow.d.ts +0 -2
  11. package/dist/src/infrastructure/ui/hooks/useCheckoutFlow.js +5 -5
  12. package/dist/src/infrastructure/ui/routing/Routing.d.ts +1 -2
  13. package/dist/src/infrastructure/ui/views/checkout/Checkout.d.ts +1 -2
  14. package/dist/src/infrastructure/ui/views/checkout/Checkout.js +0 -1
  15. package/dist/src/infrastructure/ui/views/checkout/components/paymentInstrument/PaymentInstrument.d.ts +1 -2
  16. package/dist/src/infrastructure/ui/views/checkout/components/paymentInstrument/PaymentInstrument.js +1 -1
  17. package/dist/src/projection/price/price.d.ts +1 -1
  18. package/dist/src/version.d.ts +1 -1
  19. package/dist/src/version.js +1 -1
  20. package/package.json +5 -5
  21. package/src/ExpoRoot.tsx +1 -2
  22. package/src/domain/checkoutItem/model/price.ts +1 -1
  23. package/src/infrastructure/delivery/baseBootstrap.ts +3 -28
  24. package/src/infrastructure/delivery/bootstrap.mock.ts +0 -7
  25. package/src/infrastructure/delivery/bootstrap.ts +0 -7
  26. package/src/infrastructure/projection/checkoutItem/checkoutItem.mock.ts +1 -1
  27. package/src/infrastructure/projection/pricing/pricing.mock.ts +1 -1
  28. package/src/infrastructure/tracking/tracking.ts +1 -1
  29. package/src/infrastructure/tracking/useTrackCheckout.test.tsx +1 -2
  30. package/src/infrastructure/tracking/useTrackCheckout.ts +1 -2
  31. package/src/infrastructure/ui/Root.tsx +1 -2
  32. package/src/infrastructure/ui/components/atoms/price/Price.test.tsx +1 -1
  33. package/src/infrastructure/ui/hooks/useCheckoutFlow.test.tsx +7 -12
  34. package/src/infrastructure/ui/hooks/useCheckoutFlow.tsx +4 -6
  35. package/src/infrastructure/ui/routing/Routing.tsx +1 -2
  36. package/src/infrastructure/ui/views/checkout/Checkout.tsx +1 -3
  37. package/src/infrastructure/ui/views/checkout/components/paymentInstrument/PaymentInstrument.tsx +2 -3
  38. package/src/infrastructure/ui/views/item/components/productVariantDescription/ProductVariantDescription.test.tsx +1 -2
  39. package/src/infrastructure/ui/views/return/components/price/Price.test.tsx +1 -1
  40. package/src/infrastructure/ui/views/shared/components/productVariant/ProductVariant.test.tsx +1 -2
  41. package/src/projection/price/price.ts +1 -1
  42. package/dist/public/public/assets/adaptive-icon.png +0 -0
  43. package/dist/public/public/assets/favicon.png +0 -0
  44. package/dist/public/public/assets/icon.png +0 -0
  45. package/dist/public/public/assets/splash.png +0 -0
  46. package/dist/public/public/images/not-found.png +0 -0
  47. package/dist/src/domain/checkoutItem/model/currency.d.ts +0 -6
  48. package/dist/src/domain/checkoutItem/model/currency.js +0 -7
  49. package/dist/src/domain/uiSetting/command/updateUiSetting.d.ts +0 -15
  50. package/dist/src/domain/uiSetting/command/updateUiSetting.js +0 -10
  51. package/dist/src/domain/uiSetting/model/uiSetting.d.ts +0 -9
  52. package/dist/src/domain/uiSetting/model/uiSetting.js +0 -11
  53. package/dist/src/domain/uiSetting/model/uiSettingUpdated.d.ts +0 -15
  54. package/dist/src/domain/uiSetting/model/uiSettingUpdated.js +0 -8
  55. package/dist/src/domain/uiSetting/model/uiSettings.d.ts +0 -7
  56. package/dist/src/domain/uiSetting/model/uiSettings.js +0 -1
  57. package/dist/src/infrastructure/domain/uiSetting/model/storageUiSettings.d.ts +0 -17
  58. package/dist/src/infrastructure/domain/uiSetting/model/storageUiSettings.js +0 -20
  59. package/dist/src/infrastructure/domain/uiSetting/react/useUpdateUiSetting.d.ts +0 -18
  60. package/dist/src/infrastructure/domain/uiSetting/react/useUpdateUiSetting.js +0 -22
  61. package/dist/src/infrastructure/integration/useRedirect.d.ts +0 -7
  62. package/dist/src/infrastructure/integration/useRedirect.js +0 -1
  63. package/dist/src/infrastructure/persistence/asyncStorageStorage.d.ts +0 -5
  64. package/dist/src/infrastructure/persistence/asyncStorageStorage.js +0 -7
  65. package/dist/src/infrastructure/persistence/uiSettingData.d.ts +0 -6
  66. package/dist/src/infrastructure/persistence/uiSettingData.js +0 -1
  67. package/dist/src/infrastructure/projection/uiSetting/react/useViewUiSettingByKey.d.ts +0 -10
  68. package/dist/src/infrastructure/projection/uiSetting/react/useViewUiSettingByKey.js +0 -11
  69. package/dist/src/infrastructure/projection/uiSetting/storageUiSettingByKeyView.d.ts +0 -13
  70. package/dist/src/infrastructure/projection/uiSetting/storageUiSettingByKeyView.js +0 -15
  71. package/dist/src/infrastructure/ui/hooks/useSubmitCheckout.d.ts +0 -27
  72. package/dist/src/infrastructure/ui/hooks/useSubmitCheckout.js +0 -97
  73. package/dist/src/infrastructure/ui/routing/useBasePath.d.ts +0 -8
  74. package/dist/src/infrastructure/ui/routing/useBasePath.js +0 -9
  75. package/dist/src/infrastructure/ui/settings/UISettings.d.ts +0 -3
  76. package/dist/src/infrastructure/ui/settings/UISettings.js +0 -4
  77. package/dist/src/infrastructure/ui/views/checkout/components/checkoutPaymentModal/CheckoutPaymentModal.d.ts +0 -12
  78. package/dist/src/infrastructure/ui/views/checkout/components/checkoutPaymentModal/CheckoutPaymentModal.js +0 -90
  79. package/dist/src/projection/uiSetting/viewUiSettingByKey.d.ts +0 -29
  80. package/dist/src/projection/uiSetting/viewUiSettingByKey.js +0 -8
  81. package/src/domain/checkoutItem/model/currency.ts +0 -7
  82. package/src/domain/uiSetting/command/updateUiSetting.test.ts +0 -18
  83. package/src/domain/uiSetting/command/updateUiSetting.ts +0 -26
  84. package/src/domain/uiSetting/model/uiSetting.test.ts +0 -25
  85. package/src/domain/uiSetting/model/uiSetting.ts +0 -24
  86. package/src/domain/uiSetting/model/uiSettingUpdated.test.ts +0 -16
  87. package/src/domain/uiSetting/model/uiSettingUpdated.ts +0 -25
  88. package/src/domain/uiSetting/model/uiSettings.ts +0 -15
  89. package/src/infrastructure/domain/uiSetting/model/storageUiSettings.test.ts +0 -50
  90. package/src/infrastructure/domain/uiSetting/model/storageUiSettings.ts +0 -49
  91. package/src/infrastructure/domain/uiSetting/react/useUpdateUiSetting.test.ts +0 -62
  92. package/src/infrastructure/domain/uiSetting/react/useUpdateUiSetting.ts +0 -50
  93. package/src/infrastructure/integration/useRedirect.ts +0 -9
  94. package/src/infrastructure/persistence/asyncStorageStorage.ts +0 -13
  95. package/src/infrastructure/persistence/uiSettingData.ts +0 -7
  96. package/src/infrastructure/projection/uiSetting/react/useViewUiSettingByKey.test.ts +0 -33
  97. package/src/infrastructure/projection/uiSetting/react/useViewUiSettingByKey.ts +0 -22
  98. package/src/infrastructure/projection/uiSetting/storageUiSettingByKeyView.test.ts +0 -36
  99. package/src/infrastructure/projection/uiSetting/storageUiSettingByKeyView.ts +0 -37
  100. package/src/infrastructure/ui/settings/UISettings.ts +0 -3
  101. package/src/projection/uiSetting/viewUiSettingByKey.test.ts +0 -23
  102. package/src/projection/uiSetting/viewUiSettingByKey.ts +0 -50
@@ -1,4 +1,4 @@
1
- import { Currency } from "./currency";
1
+ import { Currency } from "@lookiero/sty-psp-locale";
2
2
  interface Price {
3
3
  readonly amount: number;
4
4
  readonly currency: Currency;
@@ -8,8 +8,6 @@ import { CheckoutFeedback } from "../../domain/checkoutFeedback/model/checkoutFe
8
8
  import { CheckoutFeedbacksGetFunction, CheckoutFeedbacksSaveFunction } from "../../domain/checkoutFeedback/model/checkoutFeedbacks";
9
9
  import { CheckoutItem } from "../../domain/checkoutItem/model/checkoutItem";
10
10
  import { CheckoutItemsGetFunction, CheckoutItemsSaveFunction } from "../../domain/checkoutItem/model/checkoutItems";
11
- import { UiSetting } from "../../domain/uiSetting/model/uiSetting";
12
- import { UiSettingGetFunction, UiSettingSaveFunction } from "../../domain/uiSetting/model/uiSettings";
13
11
  import { BookedProductsVariantsForCheckoutItemView } from "../../projection/bookedProductsVariants/viewBookedProductVariantsForCheckoutItem";
14
12
  import { CheckoutByIdView } from "../../projection/checkout/viewCheckoutById";
15
13
  import { FirstAvailableCheckoutByCustomerIdView } from "../../projection/checkout/viewFirstAvailableCheckoutByCustomerId";
@@ -22,17 +20,15 @@ import { CheckoutQuestionsByCheckoutIdView } from "../../projection/checkoutQues
22
20
  import { PaymentFlowPayloadByCheckoutIdView } from "../../projection/payment/viewPaymentFlowPayloadByCheckoutId";
23
21
  import { PricingByCheckoutIdView } from "../../projection/pricing/viewPricingByCheckoutId";
24
22
  import { ReturnQuestionsByCheckoutItemIdView } from "../../projection/returnQuestion/listReturnQuestionsByCheckoutItemId";
25
- import { UiSettingByKeyView } from "../../projection/uiSetting/viewUiSettingByKey";
26
23
  declare const MESSAGING_CONTEXT_ID = "Checkout";
27
24
  type NeverWhenEmptyRecord<K extends [Record<string, unknown>]> = K extends [Record<string, never>] ? [never?] : K;
28
25
  type RepositoryDependencies<A extends AggregateRoot, GetFunctionArgs extends RepositoryGetFunctionArgs, SaveFunctionArgs extends RepositorySaveFunctionArgs> = Omit<Parameters<RepositoryGetFunction<A, GetFunctionArgs>>[0] & Parameters<RepositorySaveFunction<A, SaveFunctionArgs>>[0], keyof RepositoryGetFunctionArgs>;
29
- interface BaseBootstrapFunctionArgs<UiSettingGetFunctionArgs extends RepositoryGetFunctionArgs, UiSettingSaveFunctionArgs extends RepositorySaveFunctionArgs, CheckoutGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutSaveFunctionArgs extends RepositorySaveFunctionArgs, CheckoutItemGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutItemSaveFunctionArgs extends RepositorySaveFunctionArgs, CheckoutBookingGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutBookingSaveFunctionArgs extends RepositorySaveFunctionArgs, CheckoutFeedbackGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutFeedbackSaveFunctionArgs extends RepositorySaveFunctionArgs> {
26
+ interface BaseBootstrapFunctionArgs<CheckoutGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutSaveFunctionArgs extends RepositorySaveFunctionArgs, CheckoutItemGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutItemSaveFunctionArgs extends RepositorySaveFunctionArgs, CheckoutBookingGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutBookingSaveFunctionArgs extends RepositorySaveFunctionArgs, CheckoutFeedbackGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutFeedbackSaveFunctionArgs extends RepositorySaveFunctionArgs> {
30
27
  readonly checkoutByIdView: CheckoutByIdView;
31
28
  readonly firstAvailableCheckoutByCustomerIdView: FirstAvailableCheckoutByCustomerIdView;
32
29
  readonly isCheckoutEnabledByCustomerIdView: IsCheckoutEnabledByCustomerIdView;
33
30
  readonly isSizeChangeEnabledByCheckoutIdView: IsSizeChangeEnabledByCheckoutIdView;
34
31
  readonly fiveItemsDiscountByCustomerIdView: FiveItemsDiscountByCustomerIdView;
35
- readonly uiSettingByKeyView: UiSettingByKeyView;
36
32
  readonly checkoutItemByIdView: CheckoutItemByIdView;
37
33
  readonly checkoutBookingByIdView: CheckoutBookingByIdView;
38
34
  readonly returnQuestionsByCheckoutItemIdView: ReturnQuestionsByCheckoutItemIdView;
@@ -40,11 +36,6 @@ interface BaseBootstrapFunctionArgs<UiSettingGetFunctionArgs extends RepositoryG
40
36
  readonly pricingByCheckoutIdView: PricingByCheckoutIdView;
41
37
  readonly paymentFlowPayloadByCheckoutIdView: PaymentFlowPayloadByCheckoutIdView;
42
38
  readonly checkoutQuestionsByCheckoutIdView: CheckoutQuestionsByCheckoutIdView;
43
- readonly getUiSetting: UiSettingGetFunction<UiSettingGetFunctionArgs>;
44
- readonly saveUiSetting: UiSettingSaveFunction<UiSettingSaveFunctionArgs>;
45
- readonly uiSettingsDependencies: NeverWhenEmptyRecord<[
46
- RepositoryDependencies<UiSetting, UiSettingGetFunctionArgs, UiSettingSaveFunctionArgs>
47
- ]>;
48
39
  readonly getCheckout: CheckoutsGetFunction<CheckoutGetFunctionArgs>;
49
40
  readonly saveCheckout: CheckoutsSaveFunction<CheckoutSaveFunctionArgs>;
50
41
  readonly checkoutsDependencies: NeverWhenEmptyRecord<[
@@ -67,7 +58,7 @@ interface BaseBootstrapFunctionArgs<UiSettingGetFunctionArgs extends RepositoryG
67
58
  ]>;
68
59
  }
69
60
  interface BaseBootstrapFunction {
70
- <UiSettingGetArgs extends RepositoryGetFunctionArgs, UiSettingSaveArgs extends RepositorySaveFunctionArgs, CheckoutGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutSaveFunctionArgs extends RepositorySaveFunctionArgs, CheckoutItemGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutItemSaveFunctionArgs extends RepositorySaveFunctionArgs, CheckoutBookingGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutBookingSaveFunctionArgs extends RepositorySaveFunctionArgs, CheckoutFeedbackGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutFeedbackSaveFunctionArgs extends RepositorySaveFunctionArgs>(args: BaseBootstrapFunctionArgs<UiSettingGetArgs, UiSettingSaveArgs, CheckoutGetFunctionArgs, CheckoutSaveFunctionArgs, CheckoutItemGetFunctionArgs, CheckoutItemSaveFunctionArgs, CheckoutBookingGetFunctionArgs, CheckoutBookingSaveFunctionArgs, CheckoutFeedbackGetFunctionArgs, CheckoutFeedbackSaveFunctionArgs>): BuildBootstrapFunctionReturn;
61
+ <CheckoutGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutSaveFunctionArgs extends RepositorySaveFunctionArgs, CheckoutItemGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutItemSaveFunctionArgs extends RepositorySaveFunctionArgs, CheckoutBookingGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutBookingSaveFunctionArgs extends RepositorySaveFunctionArgs, CheckoutFeedbackGetFunctionArgs extends RepositoryGetFunctionArgs, CheckoutFeedbackSaveFunctionArgs extends RepositorySaveFunctionArgs>(args: BaseBootstrapFunctionArgs<CheckoutGetFunctionArgs, CheckoutSaveFunctionArgs, CheckoutItemGetFunctionArgs, CheckoutItemSaveFunctionArgs, CheckoutBookingGetFunctionArgs, CheckoutBookingSaveFunctionArgs, CheckoutFeedbackGetFunctionArgs, CheckoutFeedbackSaveFunctionArgs>): BuildBootstrapFunctionReturn;
71
62
  }
72
63
  declare const baseBootstrap: BaseBootstrapFunction;
73
64
  export { baseBootstrap, MESSAGING_CONTEXT_ID };
@@ -1,5 +1,6 @@
1
1
  import { bootstrap as messagingBootstrap } from "@lookiero/messaging-react";
2
2
  import { bootstrapWithBuilder as bootstrapNotifications, inMemoryStorageNotifications, } from "@lookiero/sty-psp-notifications";
3
+ import { bootstrapWithBuilder as bootstrapUiSettings, asyncStorageUiSettings } from "@lookiero/sty-psp-ui-settings";
3
4
  import { START_CHECKOUT } from "../../domain/checkout/command/startCheckout";
4
5
  import { SUBMIT_CHECKOUT } from "../../domain/checkout/command/submitCheckout";
5
6
  import { createModalNotificationWhenCheckoutSubmitted } from "../../domain/checkout/event/createModalNotificationWhenCheckoutSubmitted";
@@ -19,8 +20,6 @@ import { RETURN_CHECKOUT_ITEM } from "../../domain/checkoutItem/command/returnCh
19
20
  import { createModalNotificationWhenCheckoutItemReplaced } from "../../domain/checkoutItem/event/createModalNotificationWhenCheckoutItemReplaced";
20
21
  import { keepCheckoutItemHandler, replaceCheckoutItemHandler, resetCheckoutItemHandler, returnCheckoutItemHandler, } from "../../domain/checkoutItem/model/checkoutItem";
21
22
  import { CHECKOUT_ITEM_REPLACED } from "../../domain/checkoutItem/model/checkoutItemReplaced";
22
- import { UPDATE_UI_SETTING } from "../../domain/uiSetting/command/updateUiSetting";
23
- import { updateUiSettingHandler } from "../../domain/uiSetting/model/uiSetting";
24
23
  import { viewBookedProductsVariantsForCheckoutItemHandler, VIEW_BOOKED_PRODUCT_VARIANTS_FOR_CHECKOUT_ITEM, } from "../../projection/bookedProductsVariants/viewBookedProductVariantsForCheckoutItem";
25
24
  import { viewCheckoutByIdHandler, VIEW_CHECKOUT_BY_ID, } from "../../projection/checkout/viewCheckoutById";
26
25
  import { viewFirstAvailableCheckoutByCustomerIdHandler, VIEW_FIRST_AVAILABLE_CHECKOUT_BY_CUSTOMER_ID, } from "../../projection/checkout/viewFirstAvailableCheckoutByCustomerId";
@@ -33,9 +32,8 @@ import { listCheckoutQuestionsByCheckoutIdHandler, LIST_CHECKOUT_QUESTIONS_BY_CH
33
32
  import { viewPaymentFlowPayloadByCheckoutIdHandler, VIEW_PAYMENT_FLOW_PAYLOAD_BY_CHECKOUT_ID, } from "../../projection/payment/viewPaymentFlowPayloadByCheckoutId";
34
33
  import { viewPricingByCheckoutIdHandler, VIEW_PRICING_BY_CHECKOUT_ID, } from "../../projection/pricing/viewPricingByCheckoutId";
35
34
  import { listReturnQuestionsByCheckoutItemIdHandler, LIST_RETURN_QUESTIONS_BY_CHECKOUT_ITEM_ID, } from "../../projection/returnQuestion/listReturnQuestionsByCheckoutItemId";
36
- import { viewUiSettingByKeyHandler, VIEW_UI_SETTING_BY_KEY, } from "../../projection/uiSetting/viewUiSettingByKey";
37
35
  const MESSAGING_CONTEXT_ID = "Checkout";
38
- const baseBootstrap = ({ checkoutByIdView, firstAvailableCheckoutByCustomerIdView, isCheckoutEnabledByCustomerIdView, isSizeChangeEnabledByCheckoutIdView, fiveItemsDiscountByCustomerIdView, checkoutItemByIdView, returnQuestionsByCheckoutItemIdView, bookedProductsVariantsForCheckoutItemView, checkoutBookingByIdView, pricingByCheckoutIdView, paymentFlowPayloadByCheckoutIdView, checkoutQuestionsByCheckoutIdView, uiSettingByKeyView, getUiSetting, saveUiSetting, uiSettingsDependencies, getCheckout, saveCheckout, checkoutsDependencies, getCheckoutItem, saveCheckoutItem, checkoutItemsDependencies, getCheckoutBooking, saveCheckoutBooking, checkoutBookingsDependencies, getCheckoutFeedback, saveCheckoutFeedback, checkoutFeedbacksDependencies, }) => {
36
+ const baseBootstrap = ({ checkoutByIdView, firstAvailableCheckoutByCustomerIdView, isCheckoutEnabledByCustomerIdView, isSizeChangeEnabledByCheckoutIdView, fiveItemsDiscountByCustomerIdView, checkoutItemByIdView, returnQuestionsByCheckoutItemIdView, bookedProductsVariantsForCheckoutItemView, checkoutBookingByIdView, pricingByCheckoutIdView, paymentFlowPayloadByCheckoutIdView, checkoutQuestionsByCheckoutIdView, getCheckout, saveCheckout, checkoutsDependencies, getCheckoutItem, saveCheckoutItem, checkoutItemsDependencies, getCheckoutBooking, saveCheckoutBooking, checkoutBookingsDependencies, getCheckoutFeedback, saveCheckoutFeedback, checkoutFeedbacksDependencies, }) => {
39
37
  let messaging = messagingBootstrap({ id: MESSAGING_CONTEXT_ID })
40
38
  .query(VIEW_FIVE_ITEMS_DISCOUNT_BY_CUSTOMER_ID, viewFiveItemsDiscountByCustomerIdHandler, {
41
39
  view: fiveItemsDiscountByCustomerIdView,
@@ -82,14 +80,11 @@ const baseBootstrap = ({ checkoutByIdView, firstAvailableCheckoutByCustomerIdVie
82
80
  .command(BOOK_CHECKOUT_BOOKING_FOR_CHECKOUT_ITEM, bookCheckoutBookingForCheckoutItemHandler)(getCheckoutBooking, saveCheckoutBooking, ...checkoutBookingsDependencies)
83
81
  .command(BLOCK_CHECKOUT_BOOKING, blockCheckoutBookingHandler)(getCheckoutBooking, saveCheckoutBooking, ...checkoutBookingsDependencies)
84
82
  .command(GIVE_CHECKOUT_FEEDBACK, giveCheckoutFeedbackHandler)(getCheckoutFeedback, saveCheckoutFeedback, ...checkoutFeedbacksDependencies)
85
- .query(VIEW_UI_SETTING_BY_KEY, viewUiSettingByKeyHandler, {
86
- view: uiSettingByKeyView,
87
- })
88
- .command(UPDATE_UI_SETTING, updateUiSettingHandler)(getUiSetting, saveUiSetting, ...uiSettingsDependencies)
89
83
  .processManager(CHECKOUT_BOOKING_EXPIRED, createToastNotificationWhenCheckoutBookingExpired)
90
84
  .processManager(CHECKOUT_ITEM_REPLACED, createModalNotificationWhenCheckoutItemReplaced)
91
85
  .processManager(CHECKOUT_SUBMITTED, createModalNotificationWhenCheckoutSubmitted);
92
86
  messaging = bootstrapNotifications({ messaging, storage: inMemoryStorageNotifications() });
87
+ messaging = bootstrapUiSettings({ messaging, storage: asyncStorageUiSettings() });
93
88
  return messaging.build();
94
89
  };
95
90
  export { baseBootstrap, MESSAGING_CONTEXT_ID };
@@ -5,8 +5,6 @@ import { getCheckout, saveCheckout } from "../domain/checkout/model/httpCheckout
5
5
  import { getCheckoutBooking, saveCheckoutBooking } from "../domain/checkoutBooking/model/httpCheckoutBookings";
6
6
  import { getCheckoutFeedback, saveCheckoutFeedback } from "../domain/checkoutFeedback/model/httpCheckoutFeedbacks";
7
7
  import { getCheckoutItem, saveCheckoutItem } from "../domain/checkoutItem/model/httpCheckoutItems";
8
- import { getUiSetting, saveUiSetting } from "../domain/uiSetting/model/storageUiSettings";
9
- import { read, write } from "../persistence/asyncStorageStorage";
10
8
  import { httpBookedProductsVariantsForCheckoutItemView } from "../projection/bookedProductsVariants/httpBookedProductsVariantsForCheckoutItemView";
11
9
  import { httpCheckoutByIdView } from "../projection/checkout/httpCheckoutByIdView";
12
10
  import { httpFirstAvailableCheckoutByCustomerIdView } from "../projection/checkout/httpFirstAvailableCheckoutByCustomerIdView";
@@ -19,7 +17,6 @@ import { httpCheckoutQuestionsByCheckoutIdView } from "../projection/checkoutQue
19
17
  import { httpPaymentFlowPayloadByCheckoutIdView } from "../projection/payment/httpPaymentFlowPayloadByCheckoutIdView";
20
18
  import { httpPricingByCheckoutIdView } from "../projection/pricing/httpPricingByCheckoutIdView";
21
19
  import { httpReturnQuestionsByCheckoutItemIdView } from "../projection/returnQuestion/httpReturnQuestionsByCheckoutItemIdView";
22
- import { storageUiSettingByKeyView } from "../projection/uiSetting/storageUiSettingByKeyView";
23
20
  import { baseBootstrap } from "./baseBootstrap";
24
21
  const device = Platform.OS;
25
22
  const bootstrap = ({ apiUrl, getAuthToken }) => {
@@ -31,7 +28,6 @@ const bootstrap = ({ apiUrl, getAuthToken }) => {
31
28
  isCheckoutEnabledByCustomerIdView: httpIsCheckoutEnabledByCustomerIdView({ httpGet }),
32
29
  isSizeChangeEnabledByCheckoutIdView: httpIsSizeChangeEnabledByCheckoutIdView({ httpGet }),
33
30
  fiveItemsDiscountByCustomerIdView: httpFiveItemsDiscountByCustomerIdView({ httpGet }),
34
- uiSettingByKeyView: storageUiSettingByKeyView({ read }),
35
31
  checkoutItemByIdView: httpCheckoutItemByIdView({ httpPost }),
36
32
  returnQuestionsByCheckoutItemIdView: httpReturnQuestionsByCheckoutItemIdView({ httpPost }),
37
33
  checkoutBookingByIdView: httpCheckoutBookingByIdView({ httpPost }),
@@ -47,9 +43,6 @@ const bootstrap = ({ apiUrl, getAuthToken }) => {
47
43
  checkoutQuestionsByCheckoutIdView: httpCheckoutQuestionsByCheckoutIdView({
48
44
  httpPost,
49
45
  }),
50
- getUiSetting,
51
- saveUiSetting,
52
- uiSettingsDependencies: [{ read, write }],
53
46
  getCheckout,
54
47
  saveCheckout,
55
48
  checkoutsDependencies: [{ httpPost }],
@@ -1,6 +1,4 @@
1
1
  import { CheckoutItemStatus } from "../../domain/checkoutItem/model/checkoutItem";
2
- import { getUiSetting, saveUiSetting } from "../domain/uiSetting/model/storageUiSettings";
3
- import { read, write } from "../persistence/asyncStorageStorage";
4
2
  import { bookedProductsVariants } from "../projection/bookedProductsVariants/bookedProductsVariants.mock";
5
3
  import { checkout } from "../projection/checkout/checkout.mock";
6
4
  import { checkoutBooking as checkoutBookingMock } from "../projection/checkoutBooking/checkoutBooking.mock";
@@ -10,7 +8,6 @@ import { feedback as feedbackMock } from "../projection/feedback/feedback.mock";
10
8
  import { paymentFlowPayload as paymentFlowPayloadMock } from "../projection/payment/paymentFlowPayload.mock";
11
9
  import { pricing as pricingMock } from "../projection/pricing/pricing.mock";
12
10
  import { returnQuestions as returnQuestionsMock } from "../projection/returnQuestion/returnQuestions.mock";
13
- import { storageUiSettingByKeyView } from "../projection/uiSetting/storageUiSettingByKeyView";
14
11
  import { baseBootstrap } from "./baseBootstrap";
15
12
  import { checkoutBookingDataSource } from "./mock/checkoutBookingDataSource";
16
13
  import { checkoutDataSource } from "./mock/checkoutDataSource";
@@ -64,7 +61,6 @@ const bootstrap = () => baseBootstrap({
64
61
  isCheckoutEnabledByCustomerIdView,
65
62
  isSizeChangeEnabledByCheckoutIdView,
66
63
  fiveItemsDiscountByCustomerIdView,
67
- uiSettingByKeyView: storageUiSettingByKeyView({ read }),
68
64
  checkoutItemByIdView,
69
65
  returnQuestionsByCheckoutItemIdView,
70
66
  checkoutBookingByIdView,
@@ -72,9 +68,6 @@ const bootstrap = () => baseBootstrap({
72
68
  pricingByCheckoutIdView,
73
69
  paymentFlowPayloadByCheckoutIdView,
74
70
  checkoutQuestionsByCheckoutIdView,
75
- getUiSetting,
76
- saveUiSetting,
77
- uiSettingsDependencies: [{ read, write }],
78
71
  getCheckout,
79
72
  saveCheckout,
80
73
  checkoutsDependencies: [{ dataSource }],
@@ -1,4 +1,4 @@
1
- import { Currency } from "../../../domain/checkoutItem/model/currency";
1
+ import { Currency } from "@lookiero/sty-psp-locale";
2
2
  import { MediaPerspective, } from "../../../projection/checkoutItem/checkoutItem";
3
3
  const checkoutItem = ({ id = "7b389d69-f157-4234-8531-c1a1eb17dccb", status, feedbacks = {}, replacedFor = null, }) => ({
4
4
  id,
@@ -1,4 +1,4 @@
1
- import { Currency } from "../../../domain/checkoutItem/model/currency";
1
+ import { Currency } from "@lookiero/sty-psp-locale";
2
2
  const pricing = ({ paidWithPromocode } = { paidWithPromocode: false }) => ({
3
3
  orderTotal: {
4
4
  amount: 18301,
@@ -1,6 +1,6 @@
1
+ import { Currency } from "@lookiero/sty-psp-locale";
1
2
  import { BaseTrackingEvent, TrackingEventCategory } from "@lookiero/sty-psp-tracking";
2
3
  import { CheckoutItemStatus } from "../../domain/checkoutItem/model/checkoutItem";
3
- import { Currency } from "../../domain/checkoutItem/model/currency";
4
4
  import { MediaPerspective } from "../../projection/checkoutItem/checkoutItem";
5
5
  import { SubscriptionProjection } from "../../projection/subscription/subscription";
6
6
  declare const PROJECT = "checkout";
@@ -11,7 +11,6 @@ import { Customer } from "../../projection/customer/customer";
11
11
  import { OrderProjection } from "../../projection/order/order";
12
12
  import { SubscriptionProjection } from "../../projection/subscription/subscription";
13
13
  import { KameleoonEnvironment } from "../ab-testing/kameleoonEnvironment";
14
- import { UseRedirectFunction } from "../integration/useRedirect";
15
14
  interface RootFunctionArgs {
16
15
  readonly Messaging: MessagingRoot;
17
16
  readonly I18n: I18n;
@@ -34,7 +33,7 @@ interface RootProps {
34
33
  readonly tradename: Tradename;
35
34
  readonly onNotAccessible: () => void;
36
35
  readonly onCheckoutFlowSuccess: () => void;
37
- readonly useRedirect: UseRedirectFunction;
36
+ readonly useRedirect: () => Record<string, string>;
38
37
  readonly useRoutes?: typeof reactRouterUseRoutes;
39
38
  }
40
39
  declare const root: RootFunction;
@@ -2,7 +2,6 @@ import { ReactNode } from "react";
2
2
  import { CheckoutProjection } from "../../../projection/checkout/checkout";
3
3
  import { OrderProjection } from "../../../projection/order/order";
4
4
  import { SubscriptionProjection } from "../../../projection/subscription/subscription";
5
- import { UseRedirectFunction } from "../../integration/useRedirect";
6
5
  type CheckoutFlowStatus = "idle" | "loading" | "success" | "error";
7
6
  interface CheckoutFlowFunction {
8
7
  (): Promise<void>;
@@ -18,7 +17,6 @@ interface UseCheckoutFlowArgs {
18
17
  readonly subscription: SubscriptionProjection;
19
18
  readonly getAuthToken: () => Promise<string>;
20
19
  readonly onSuccess: () => void;
21
- readonly useRedirect: UseRedirectFunction;
22
20
  }
23
21
  interface UseCheckoutFlowFunction {
24
22
  (args: UseCheckoutFlowArgs): CheckoutFlowReturn;
@@ -12,14 +12,14 @@ import { useViewPaymentFlowPayloadByCheckoutId } from "../../projection/payment/
12
12
  import { useViewPricingByCheckoutId } from "../../projection/pricing/react/useViewPricingByCheckoutId";
13
13
  import { useTrackCheckout } from "../../tracking/useTrackCheckout";
14
14
  import { I18nMessages } from "../i18n/i18n";
15
+ import { Routes } from "../routing/routes";
15
16
  import { usePaymentInstrumentEvents } from "./usePaymentInstrumentEvents";
16
17
  import { useQueryBus } from "./useQueryBus";
17
18
  import { useStaticInfo } from "./useStaticInfo";
18
- const useCheckoutFlow = ({ checkout: checkoutProjection, order: orderProjection, subscription: subscriptionProjection, getAuthToken, onSuccess, useRedirect, }) => {
19
+ const useCheckoutFlow = ({ checkout: checkoutProjection, order: orderProjection, subscription: subscriptionProjection, getAuthToken, onSuccess, }) => {
19
20
  const logger = useLogger();
20
21
  const queryBus = useQueryBus();
21
- const { customer: { customerId, country, segment, name, email }, tradename, } = useStaticInfo();
22
- const { returnUrl } = useRedirect();
22
+ const { customer: { customerId, country, segment, name, email }, basePath, tradename, } = useStaticInfo();
23
23
  const paymentFlowRef = useRef(null);
24
24
  const [paymentFlowPayload] = useViewPaymentFlowPayloadByCheckoutId({
25
25
  checkoutId: checkoutProjection?.id,
@@ -73,14 +73,14 @@ const useCheckoutFlow = ({ checkout: checkoutProjection, order: orderProjection,
73
73
  paymentFlowRef.current?.startLegacyBoxCheckout({
74
74
  ...paymentFlowPayload,
75
75
  userInformation: { email, name },
76
- returnUrl,
76
+ returnUrl: `${basePath}/${Routes.CHECKOUT}`,
77
77
  });
78
78
  }, [
79
79
  checkoutProjection?.checkoutBookingId,
80
80
  paymentFlowPayload,
81
81
  email,
82
82
  name,
83
- returnUrl,
83
+ basePath,
84
84
  sizeChangeEnabled,
85
85
  blockCheckoutBooking,
86
86
  queryBus,
@@ -8,7 +8,6 @@ import { Customer } from "../../../projection/customer/customer";
8
8
  import { OrderProjection } from "../../../projection/order/order";
9
9
  import { SubscriptionProjection } from "../../../projection/subscription/subscription";
10
10
  import { KameleoonEnvironment } from "../../ab-testing/kameleoonEnvironment";
11
- import { UseRedirectFunction } from "../../integration/useRedirect";
12
11
  interface RoutingProps {
13
12
  readonly basePath?: string;
14
13
  readonly customer: Customer;
@@ -23,7 +22,7 @@ interface RoutingProps {
23
22
  readonly onNotAccessible: () => void;
24
23
  readonly onCheckoutFlowSuccess: () => void;
25
24
  readonly onI18nError?: (err: Error) => void;
26
- readonly useRedirect: UseRedirectFunction;
25
+ readonly useRedirect: () => Record<string, string>;
27
26
  readonly useRoutes: typeof reactRouterUseRoutes;
28
27
  }
29
28
  /**
@@ -2,14 +2,13 @@ import { FC } from "react";
2
2
  import { Layout as UiLayout } from "@lookiero/sty-psp-ui";
3
3
  import { OrderProjection } from "../../../../projection/order/order";
4
4
  import { SubscriptionProjection } from "../../../../projection/subscription/subscription";
5
- import { UseRedirectFunction } from "../../../integration/useRedirect";
6
5
  interface CheckoutProps {
7
6
  readonly layout: UiLayout;
8
7
  readonly order: OrderProjection;
9
8
  readonly subscription: SubscriptionProjection;
10
9
  readonly getAuthToken: () => Promise<string>;
11
10
  readonly onCheckoutFlowSuccess: () => void;
12
- readonly useRedirect: UseRedirectFunction;
11
+ readonly useRedirect: () => Record<string, string>;
13
12
  }
14
13
  declare const Checkout: FC<CheckoutProps>;
15
14
  export { Checkout };
@@ -41,7 +41,6 @@ const Checkout = ({ layout: Layout, order, subscription, getAuthToken, useRedire
41
41
  subscription,
42
42
  getAuthToken,
43
43
  onSuccess: onCheckoutFlowSuccess,
44
- useRedirect,
45
44
  });
46
45
  useTrackPageView({
47
46
  page: TrackingPage.CHECKOUT,
@@ -1,7 +1,6 @@
1
1
  import { FC } from "react";
2
- import { UseRedirectFunction } from "../../../../../integration/useRedirect";
3
2
  interface PaymentInstrumentProps {
4
- readonly useRedirect: UseRedirectFunction;
3
+ readonly useRedirect: () => Record<string, string>;
5
4
  }
6
5
  declare const PaymentInstrument: FC<PaymentInstrumentProps>;
7
6
  export { PaymentInstrument };
@@ -4,7 +4,7 @@ import { useStaticInfo } from "../../../../hooks/useStaticInfo";
4
4
  const PaymentInstrument = ({ useRedirect }) => {
5
5
  const { returnUrl } = useRedirect();
6
6
  const { customer } = useStaticInfo();
7
- return (React.createElement(PaymentInstrumentSelect, { beforeRedirect: () => Promise.resolve(returnUrl), hasError: false, section: Section.BOX_CHECKOUT, userInformation: {
7
+ return (React.createElement(PaymentInstrumentSelect, { beforeRedirect: returnUrl ? () => Promise.resolve(returnUrl) : undefined, hasError: false, section: Section.BOX_CHECKOUT, userInformation: {
8
8
  email: customer.email,
9
9
  name: customer.name,
10
10
  }, showSingleUsePaymentMethods: true }));
@@ -1,4 +1,4 @@
1
- import { Currency } from "../../domain/checkoutItem/model/currency";
1
+ import { Currency } from "@lookiero/sty-psp-locale";
2
2
  interface PriceProjection {
3
3
  readonly amount: number;
4
4
  readonly currency: Currency;
@@ -1 +1 @@
1
- export declare const VERSION = "12.2.0-beta.0";
1
+ export declare const VERSION = "12.3.0";
@@ -1 +1 @@
1
- export const VERSION = "12.2.0-beta.0";
1
+ export const VERSION = "12.3.0";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lookiero/checkout",
3
- "version": "12.2.0-beta.0",
3
+ "version": "12.3.0",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "sideEffects": "false",
@@ -25,15 +25,15 @@
25
25
  "@lookiero/sty-psp-expo-config": "^1.0",
26
26
  "@lookiero/sty-psp-http": "^2.0",
27
27
  "@lookiero/sty-psp-i18n": "^1.0",
28
- "@lookiero/sty-psp-locale": "^0.4",
28
+ "@lookiero/sty-psp-locale": "^1.0",
29
29
  "@lookiero/sty-psp-logging": "^1.0",
30
- "@lookiero/sty-psp-notifications": "^2.0",
30
+ "@lookiero/sty-psp-notifications": "^2.1",
31
31
  "@lookiero/sty-psp-react-native": "^1.0",
32
32
  "@lookiero/sty-psp-segment": "^0.1",
33
33
  "@lookiero/sty-psp-storage": "^0.2",
34
- "@lookiero/sty-psp-tracking": "^2.0",
34
+ "@lookiero/sty-psp-tracking": "^2.1",
35
35
  "@lookiero/sty-psp-ui-settings": "^1.0",
36
- "@lookiero/sty-psp-ui": "^2.0",
36
+ "@lookiero/sty-psp-ui": "^2.1",
37
37
  "@lookiero/sty-psp-units": "^0.1",
38
38
  "@lookiero/sty-psp-uuid": "^0.2",
39
39
  "@lookiero/sty-sp-tradename": "^1.0",
package/src/ExpoRoot.tsx CHANGED
@@ -17,7 +17,6 @@ import { Tradename } from "@lookiero/sty-sp-tradename";
17
17
  import { KameleoonEnvironment } from "./infrastructure/ab-testing/kameleoonEnvironment";
18
18
  import { bootstrap as checkoutBootstrap } from "./infrastructure/delivery/bootstrap";
19
19
  import { bootstrap as checkoutMockBootstrap } from "./infrastructure/delivery/bootstrap.mock";
20
- import { UseRedirectFunction } from "./infrastructure/integration/useRedirect";
21
20
  import { root } from "./infrastructure/ui/Root";
22
21
  import { DOMAIN } from "./infrastructure/ui/i18n/i18n";
23
22
  import { Router } from "./infrastructure/ui/routing/router/Router";
@@ -80,7 +79,7 @@ const translations: EndpointFunction[] = [
80
79
  })(locale),
81
80
  ];
82
81
 
83
- const useRedirect: UseRedirectFunction = () => ({
82
+ const useRedirect: () => Record<string, string> = () => ({
84
83
  returnUrl: "https://web2.dev.aws.lookiero.es/user/",
85
84
  });
86
85
 
@@ -1,4 +1,4 @@
1
- import { Currency } from "./currency";
1
+ import { Currency } from "@lookiero/sty-psp-locale";
2
2
 
3
3
  interface Price {
4
4
  readonly amount: number;
@@ -10,6 +10,7 @@ import {
10
10
  bootstrapWithBuilder as bootstrapNotifications,
11
11
  inMemoryStorageNotifications,
12
12
  } from "@lookiero/sty-psp-notifications";
13
+ import { bootstrapWithBuilder as bootstrapUiSettings, asyncStorageUiSettings } from "@lookiero/sty-psp-ui-settings";
13
14
  import { START_CHECKOUT } from "../../domain/checkout/command/startCheckout";
14
15
  import { SUBMIT_CHECKOUT } from "../../domain/checkout/command/submitCheckout";
15
16
  import { createModalNotificationWhenCheckoutSubmitted } from "../../domain/checkout/event/createModalNotificationWhenCheckoutSubmitted";
@@ -49,9 +50,6 @@ import {
49
50
  } from "../../domain/checkoutItem/model/checkoutItem";
50
51
  import { CHECKOUT_ITEM_REPLACED } from "../../domain/checkoutItem/model/checkoutItemReplaced";
51
52
  import { CheckoutItemsGetFunction, CheckoutItemsSaveFunction } from "../../domain/checkoutItem/model/checkoutItems";
52
- import { UPDATE_UI_SETTING } from "../../domain/uiSetting/command/updateUiSetting";
53
- import { UiSetting, updateUiSettingHandler } from "../../domain/uiSetting/model/uiSetting";
54
- import { UiSettingGetFunction, UiSettingSaveFunction } from "../../domain/uiSetting/model/uiSettings";
55
53
  import {
56
54
  BookedProductsVariantsForCheckoutItemView,
57
55
  viewBookedProductsVariantsForCheckoutItemHandler,
@@ -112,11 +110,6 @@ import {
112
110
  LIST_RETURN_QUESTIONS_BY_CHECKOUT_ITEM_ID,
113
111
  ReturnQuestionsByCheckoutItemIdView,
114
112
  } from "../../projection/returnQuestion/listReturnQuestionsByCheckoutItemId";
115
- import {
116
- UiSettingByKeyView,
117
- viewUiSettingByKeyHandler,
118
- VIEW_UI_SETTING_BY_KEY,
119
- } from "../../projection/uiSetting/viewUiSettingByKey";
120
113
 
121
114
  const MESSAGING_CONTEXT_ID = "Checkout";
122
115
 
@@ -132,8 +125,6 @@ type RepositoryDependencies<
132
125
  >;
133
126
 
134
127
  interface BaseBootstrapFunctionArgs<
135
- UiSettingGetFunctionArgs extends RepositoryGetFunctionArgs,
136
- UiSettingSaveFunctionArgs extends RepositorySaveFunctionArgs,
137
128
  CheckoutGetFunctionArgs extends RepositoryGetFunctionArgs,
138
129
  CheckoutSaveFunctionArgs extends RepositorySaveFunctionArgs,
139
130
  CheckoutItemGetFunctionArgs extends RepositoryGetFunctionArgs,
@@ -148,7 +139,6 @@ interface BaseBootstrapFunctionArgs<
148
139
  readonly isCheckoutEnabledByCustomerIdView: IsCheckoutEnabledByCustomerIdView;
149
140
  readonly isSizeChangeEnabledByCheckoutIdView: IsSizeChangeEnabledByCheckoutIdView;
150
141
  readonly fiveItemsDiscountByCustomerIdView: FiveItemsDiscountByCustomerIdView;
151
- readonly uiSettingByKeyView: UiSettingByKeyView;
152
142
  readonly checkoutItemByIdView: CheckoutItemByIdView;
153
143
  readonly checkoutBookingByIdView: CheckoutBookingByIdView;
154
144
  readonly returnQuestionsByCheckoutItemIdView: ReturnQuestionsByCheckoutItemIdView;
@@ -156,11 +146,6 @@ interface BaseBootstrapFunctionArgs<
156
146
  readonly pricingByCheckoutIdView: PricingByCheckoutIdView;
157
147
  readonly paymentFlowPayloadByCheckoutIdView: PaymentFlowPayloadByCheckoutIdView;
158
148
  readonly checkoutQuestionsByCheckoutIdView: CheckoutQuestionsByCheckoutIdView;
159
- readonly getUiSetting: UiSettingGetFunction<UiSettingGetFunctionArgs>;
160
- readonly saveUiSetting: UiSettingSaveFunction<UiSettingSaveFunctionArgs>;
161
- readonly uiSettingsDependencies: NeverWhenEmptyRecord<
162
- [RepositoryDependencies<UiSetting, UiSettingGetFunctionArgs, UiSettingSaveFunctionArgs>]
163
- >;
164
149
  readonly getCheckout: CheckoutsGetFunction<CheckoutGetFunctionArgs>;
165
150
  readonly saveCheckout: CheckoutsSaveFunction<CheckoutSaveFunctionArgs>;
166
151
  readonly checkoutsDependencies: NeverWhenEmptyRecord<
@@ -185,8 +170,6 @@ interface BaseBootstrapFunctionArgs<
185
170
 
186
171
  interface BaseBootstrapFunction {
187
172
  <
188
- UiSettingGetArgs extends RepositoryGetFunctionArgs,
189
- UiSettingSaveArgs extends RepositorySaveFunctionArgs,
190
173
  CheckoutGetFunctionArgs extends RepositoryGetFunctionArgs,
191
174
  CheckoutSaveFunctionArgs extends RepositorySaveFunctionArgs,
192
175
  CheckoutItemGetFunctionArgs extends RepositoryGetFunctionArgs,
@@ -197,8 +180,6 @@ interface BaseBootstrapFunction {
197
180
  CheckoutFeedbackSaveFunctionArgs extends RepositorySaveFunctionArgs,
198
181
  >(
199
182
  args: BaseBootstrapFunctionArgs<
200
- UiSettingGetArgs,
201
- UiSettingSaveArgs,
202
183
  CheckoutGetFunctionArgs,
203
184
  CheckoutSaveFunctionArgs,
204
185
  CheckoutItemGetFunctionArgs,
@@ -224,10 +205,6 @@ const baseBootstrap: BaseBootstrapFunction = ({
224
205
  pricingByCheckoutIdView,
225
206
  paymentFlowPayloadByCheckoutIdView,
226
207
  checkoutQuestionsByCheckoutIdView,
227
- uiSettingByKeyView,
228
- getUiSetting,
229
- saveUiSetting,
230
- uiSettingsDependencies,
231
208
  getCheckout,
232
209
  saveCheckout,
233
210
  checkoutsDependencies,
@@ -315,16 +292,14 @@ const baseBootstrap: BaseBootstrapFunction = ({
315
292
  saveCheckoutFeedback,
316
293
  ...checkoutFeedbacksDependencies,
317
294
  )
318
- .query(VIEW_UI_SETTING_BY_KEY, viewUiSettingByKeyHandler, {
319
- view: uiSettingByKeyView,
320
- })
321
- .command(UPDATE_UI_SETTING, updateUiSettingHandler)(getUiSetting, saveUiSetting, ...uiSettingsDependencies)
322
295
  .processManager(CHECKOUT_BOOKING_EXPIRED, createToastNotificationWhenCheckoutBookingExpired)
323
296
  .processManager(CHECKOUT_ITEM_REPLACED, createModalNotificationWhenCheckoutItemReplaced)
324
297
  .processManager(CHECKOUT_SUBMITTED, createModalNotificationWhenCheckoutSubmitted);
325
298
 
326
299
  messaging = bootstrapNotifications({ messaging, storage: inMemoryStorageNotifications() });
327
300
 
301
+ messaging = bootstrapUiSettings({ messaging, storage: asyncStorageUiSettings() });
302
+
328
303
  return messaging.build();
329
304
  };
330
305
 
@@ -12,8 +12,6 @@ import { CheckoutQuestionsByCheckoutIdView } from "../../projection/checkoutQues
12
12
  import { PaymentFlowPayloadByCheckoutIdView } from "../../projection/payment/viewPaymentFlowPayloadByCheckoutId";
13
13
  import { PricingByCheckoutIdView } from "../../projection/pricing/viewPricingByCheckoutId";
14
14
  import { ReturnQuestionsByCheckoutItemIdView } from "../../projection/returnQuestion/listReturnQuestionsByCheckoutItemId";
15
- import { getUiSetting, saveUiSetting } from "../domain/uiSetting/model/storageUiSettings";
16
- import { read, write } from "../persistence/asyncStorageStorage";
17
15
  import { bookedProductsVariants } from "../projection/bookedProductsVariants/bookedProductsVariants.mock";
18
16
  import { checkout } from "../projection/checkout/checkout.mock";
19
17
  import { checkoutBooking as checkoutBookingMock } from "../projection/checkoutBooking/checkoutBooking.mock";
@@ -23,7 +21,6 @@ import { feedback as feedbackMock } from "../projection/feedback/feedback.mock";
23
21
  import { paymentFlowPayload as paymentFlowPayloadMock } from "../projection/payment/paymentFlowPayload.mock";
24
22
  import { pricing as pricingMock } from "../projection/pricing/pricing.mock";
25
23
  import { returnQuestions as returnQuestionsMock } from "../projection/returnQuestion/returnQuestions.mock";
26
- import { storageUiSettingByKeyView } from "../projection/uiSetting/storageUiSettingByKeyView";
27
24
  import { baseBootstrap } from "./baseBootstrap";
28
25
  import { checkoutBookingDataSource } from "./mock/checkoutBookingDataSource";
29
26
  import { checkoutDataSource } from "./mock/checkoutDataSource";
@@ -85,7 +82,6 @@ const bootstrap: () => BuildBootstrapFunctionReturn = () =>
85
82
  isCheckoutEnabledByCustomerIdView,
86
83
  isSizeChangeEnabledByCheckoutIdView,
87
84
  fiveItemsDiscountByCustomerIdView,
88
- uiSettingByKeyView: storageUiSettingByKeyView({ read }),
89
85
  checkoutItemByIdView,
90
86
  returnQuestionsByCheckoutItemIdView,
91
87
  checkoutBookingByIdView,
@@ -93,9 +89,6 @@ const bootstrap: () => BuildBootstrapFunctionReturn = () =>
93
89
  pricingByCheckoutIdView,
94
90
  paymentFlowPayloadByCheckoutIdView,
95
91
  checkoutQuestionsByCheckoutIdView,
96
- getUiSetting,
97
- saveUiSetting,
98
- uiSettingsDependencies: [{ read, write }],
99
92
  getCheckout,
100
93
  saveCheckout,
101
94
  checkoutsDependencies: [{ dataSource }],
@@ -6,8 +6,6 @@ import { getCheckout, saveCheckout } from "../domain/checkout/model/httpCheckout
6
6
  import { getCheckoutBooking, saveCheckoutBooking } from "../domain/checkoutBooking/model/httpCheckoutBookings";
7
7
  import { getCheckoutFeedback, saveCheckoutFeedback } from "../domain/checkoutFeedback/model/httpCheckoutFeedbacks";
8
8
  import { getCheckoutItem, saveCheckoutItem } from "../domain/checkoutItem/model/httpCheckoutItems";
9
- import { getUiSetting, saveUiSetting } from "../domain/uiSetting/model/storageUiSettings";
10
- import { read, write } from "../persistence/asyncStorageStorage";
11
9
  import { httpBookedProductsVariantsForCheckoutItemView } from "../projection/bookedProductsVariants/httpBookedProductsVariantsForCheckoutItemView";
12
10
  import { httpCheckoutByIdView } from "../projection/checkout/httpCheckoutByIdView";
13
11
  import { httpFirstAvailableCheckoutByCustomerIdView } from "../projection/checkout/httpFirstAvailableCheckoutByCustomerIdView";
@@ -20,7 +18,6 @@ import { httpCheckoutQuestionsByCheckoutIdView } from "../projection/checkoutQue
20
18
  import { httpPaymentFlowPayloadByCheckoutIdView } from "../projection/payment/httpPaymentFlowPayloadByCheckoutIdView";
21
19
  import { httpPricingByCheckoutIdView } from "../projection/pricing/httpPricingByCheckoutIdView";
22
20
  import { httpReturnQuestionsByCheckoutItemIdView } from "../projection/returnQuestion/httpReturnQuestionsByCheckoutItemIdView";
23
- import { storageUiSettingByKeyView } from "../projection/uiSetting/storageUiSettingByKeyView";
24
21
  import { baseBootstrap } from "./baseBootstrap";
25
22
 
26
23
  type OS = typeof Platform.OS;
@@ -46,7 +43,6 @@ const bootstrap: BootstrapFunction = ({ apiUrl, getAuthToken }) => {
46
43
  isCheckoutEnabledByCustomerIdView: httpIsCheckoutEnabledByCustomerIdView({ httpGet }),
47
44
  isSizeChangeEnabledByCheckoutIdView: httpIsSizeChangeEnabledByCheckoutIdView({ httpGet }),
48
45
  fiveItemsDiscountByCustomerIdView: httpFiveItemsDiscountByCustomerIdView({ httpGet }),
49
- uiSettingByKeyView: storageUiSettingByKeyView({ read }),
50
46
  checkoutItemByIdView: httpCheckoutItemByIdView({ httpPost }),
51
47
  returnQuestionsByCheckoutItemIdView: httpReturnQuestionsByCheckoutItemIdView({ httpPost }),
52
48
  checkoutBookingByIdView: httpCheckoutBookingByIdView({ httpPost }),
@@ -62,9 +58,6 @@ const bootstrap: BootstrapFunction = ({ apiUrl, getAuthToken }) => {
62
58
  checkoutQuestionsByCheckoutIdView: httpCheckoutQuestionsByCheckoutIdView({
63
59
  httpPost,
64
60
  }),
65
- getUiSetting,
66
- saveUiSetting,
67
- uiSettingsDependencies: [{ read, write }],
68
61
  getCheckout,
69
62
  saveCheckout,
70
63
  checkoutsDependencies: [{ httpPost }],
@@ -1,5 +1,5 @@
1
+ import { Currency } from "@lookiero/sty-psp-locale";
1
2
  import { CheckoutItemStatus } from "../../../domain/checkoutItem/model/checkoutItem";
2
- import { Currency } from "../../../domain/checkoutItem/model/currency";
3
3
  import {
4
4
  CheckoutItemProductVariantProjection,
5
5
  CheckoutItemProjection,
@@ -1,4 +1,4 @@
1
- import { Currency } from "../../../domain/checkoutItem/model/currency";
1
+ import { Currency } from "@lookiero/sty-psp-locale";
2
2
  import { PricingProjection } from "../../../projection/pricing/pricing";
3
3
 
4
4
  interface PricingFunctionArgs {
@@ -1,6 +1,6 @@
1
+ import { Currency } from "@lookiero/sty-psp-locale";
1
2
  import { BaseTrackingEvent, TrackingEventCategory } from "@lookiero/sty-psp-tracking";
2
3
  import { CheckoutItemStatus } from "../../domain/checkoutItem/model/checkoutItem";
3
- import { Currency } from "../../domain/checkoutItem/model/currency";
4
4
  import { MediaPerspective } from "../../projection/checkoutItem/checkoutItem";
5
5
  import { SubscriptionProjection } from "../../projection/subscription/subscription";
6
6
 
@@ -1,11 +1,10 @@
1
1
  import { renderHook } from "@testing-library/react-native";
2
- import { Country } from "@lookiero/sty-psp-locale";
2
+ import { Country, Currency } from "@lookiero/sty-psp-locale";
3
3
  import { Segment } from "@lookiero/sty-psp-segment";
4
4
  import { useEmitUserEvent } from "@lookiero/sty-psp-tracking";
5
5
  import { Tradename } from "@lookiero/sty-sp-tradename";
6
6
  import { CheckoutStatus } from "../../domain/checkout/model/checkout";
7
7
  import { CheckoutItemStatus } from "../../domain/checkoutItem/model/checkoutItem";
8
- import { Currency } from "../../domain/checkoutItem/model/currency";
9
8
  import { CheckoutProjection } from "../../projection/checkout/checkout";
10
9
  import { OrderProjection } from "../../projection/order/order";
11
10
  import { PricingProjection } from "../../projection/pricing/pricing";