@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.
- package/dist/src/domain/checkoutItem/model/price.d.ts +1 -1
- package/dist/src/infrastructure/delivery/baseBootstrap.d.ts +2 -11
- package/dist/src/infrastructure/delivery/baseBootstrap.js +3 -8
- package/dist/src/infrastructure/delivery/bootstrap.js +0 -7
- package/dist/src/infrastructure/delivery/bootstrap.mock.js +0 -7
- package/dist/src/infrastructure/projection/checkoutItem/checkoutItem.mock.js +1 -1
- package/dist/src/infrastructure/projection/pricing/pricing.mock.js +1 -1
- package/dist/src/infrastructure/tracking/tracking.d.ts +1 -1
- package/dist/src/infrastructure/ui/Root.d.ts +1 -2
- package/dist/src/infrastructure/ui/hooks/useCheckoutFlow.d.ts +0 -2
- package/dist/src/infrastructure/ui/hooks/useCheckoutFlow.js +5 -5
- package/dist/src/infrastructure/ui/routing/Routing.d.ts +1 -2
- package/dist/src/infrastructure/ui/views/checkout/Checkout.d.ts +1 -2
- package/dist/src/infrastructure/ui/views/checkout/Checkout.js +0 -1
- package/dist/src/infrastructure/ui/views/checkout/components/paymentInstrument/PaymentInstrument.d.ts +1 -2
- package/dist/src/infrastructure/ui/views/checkout/components/paymentInstrument/PaymentInstrument.js +1 -1
- package/dist/src/projection/price/price.d.ts +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.js +1 -1
- package/package.json +5 -5
- package/src/ExpoRoot.tsx +1 -2
- package/src/domain/checkoutItem/model/price.ts +1 -1
- package/src/infrastructure/delivery/baseBootstrap.ts +3 -28
- package/src/infrastructure/delivery/bootstrap.mock.ts +0 -7
- package/src/infrastructure/delivery/bootstrap.ts +0 -7
- package/src/infrastructure/projection/checkoutItem/checkoutItem.mock.ts +1 -1
- package/src/infrastructure/projection/pricing/pricing.mock.ts +1 -1
- package/src/infrastructure/tracking/tracking.ts +1 -1
- package/src/infrastructure/tracking/useTrackCheckout.test.tsx +1 -2
- package/src/infrastructure/tracking/useTrackCheckout.ts +1 -2
- package/src/infrastructure/ui/Root.tsx +1 -2
- package/src/infrastructure/ui/components/atoms/price/Price.test.tsx +1 -1
- package/src/infrastructure/ui/hooks/useCheckoutFlow.test.tsx +7 -12
- package/src/infrastructure/ui/hooks/useCheckoutFlow.tsx +4 -6
- package/src/infrastructure/ui/routing/Routing.tsx +1 -2
- package/src/infrastructure/ui/views/checkout/Checkout.tsx +1 -3
- package/src/infrastructure/ui/views/checkout/components/paymentInstrument/PaymentInstrument.tsx +2 -3
- package/src/infrastructure/ui/views/item/components/productVariantDescription/ProductVariantDescription.test.tsx +1 -2
- package/src/infrastructure/ui/views/return/components/price/Price.test.tsx +1 -1
- package/src/infrastructure/ui/views/shared/components/productVariant/ProductVariant.test.tsx +1 -2
- package/src/projection/price/price.ts +1 -1
- package/dist/public/public/assets/adaptive-icon.png +0 -0
- package/dist/public/public/assets/favicon.png +0 -0
- package/dist/public/public/assets/icon.png +0 -0
- package/dist/public/public/assets/splash.png +0 -0
- package/dist/public/public/images/not-found.png +0 -0
- package/dist/src/domain/checkoutItem/model/currency.d.ts +0 -6
- package/dist/src/domain/checkoutItem/model/currency.js +0 -7
- package/dist/src/domain/uiSetting/command/updateUiSetting.d.ts +0 -15
- package/dist/src/domain/uiSetting/command/updateUiSetting.js +0 -10
- package/dist/src/domain/uiSetting/model/uiSetting.d.ts +0 -9
- package/dist/src/domain/uiSetting/model/uiSetting.js +0 -11
- package/dist/src/domain/uiSetting/model/uiSettingUpdated.d.ts +0 -15
- package/dist/src/domain/uiSetting/model/uiSettingUpdated.js +0 -8
- package/dist/src/domain/uiSetting/model/uiSettings.d.ts +0 -7
- package/dist/src/domain/uiSetting/model/uiSettings.js +0 -1
- package/dist/src/infrastructure/domain/uiSetting/model/storageUiSettings.d.ts +0 -17
- package/dist/src/infrastructure/domain/uiSetting/model/storageUiSettings.js +0 -20
- package/dist/src/infrastructure/domain/uiSetting/react/useUpdateUiSetting.d.ts +0 -18
- package/dist/src/infrastructure/domain/uiSetting/react/useUpdateUiSetting.js +0 -22
- package/dist/src/infrastructure/integration/useRedirect.d.ts +0 -7
- package/dist/src/infrastructure/integration/useRedirect.js +0 -1
- package/dist/src/infrastructure/persistence/asyncStorageStorage.d.ts +0 -5
- package/dist/src/infrastructure/persistence/asyncStorageStorage.js +0 -7
- package/dist/src/infrastructure/persistence/uiSettingData.d.ts +0 -6
- package/dist/src/infrastructure/persistence/uiSettingData.js +0 -1
- package/dist/src/infrastructure/projection/uiSetting/react/useViewUiSettingByKey.d.ts +0 -10
- package/dist/src/infrastructure/projection/uiSetting/react/useViewUiSettingByKey.js +0 -11
- package/dist/src/infrastructure/projection/uiSetting/storageUiSettingByKeyView.d.ts +0 -13
- package/dist/src/infrastructure/projection/uiSetting/storageUiSettingByKeyView.js +0 -15
- package/dist/src/infrastructure/ui/hooks/useSubmitCheckout.d.ts +0 -27
- package/dist/src/infrastructure/ui/hooks/useSubmitCheckout.js +0 -97
- package/dist/src/infrastructure/ui/routing/useBasePath.d.ts +0 -8
- package/dist/src/infrastructure/ui/routing/useBasePath.js +0 -9
- package/dist/src/infrastructure/ui/settings/UISettings.d.ts +0 -3
- package/dist/src/infrastructure/ui/settings/UISettings.js +0 -4
- package/dist/src/infrastructure/ui/views/checkout/components/checkoutPaymentModal/CheckoutPaymentModal.d.ts +0 -12
- package/dist/src/infrastructure/ui/views/checkout/components/checkoutPaymentModal/CheckoutPaymentModal.js +0 -90
- package/dist/src/projection/uiSetting/viewUiSettingByKey.d.ts +0 -29
- package/dist/src/projection/uiSetting/viewUiSettingByKey.js +0 -8
- package/src/domain/checkoutItem/model/currency.ts +0 -7
- package/src/domain/uiSetting/command/updateUiSetting.test.ts +0 -18
- package/src/domain/uiSetting/command/updateUiSetting.ts +0 -26
- package/src/domain/uiSetting/model/uiSetting.test.ts +0 -25
- package/src/domain/uiSetting/model/uiSetting.ts +0 -24
- package/src/domain/uiSetting/model/uiSettingUpdated.test.ts +0 -16
- package/src/domain/uiSetting/model/uiSettingUpdated.ts +0 -25
- package/src/domain/uiSetting/model/uiSettings.ts +0 -15
- package/src/infrastructure/domain/uiSetting/model/storageUiSettings.test.ts +0 -50
- package/src/infrastructure/domain/uiSetting/model/storageUiSettings.ts +0 -49
- package/src/infrastructure/domain/uiSetting/react/useUpdateUiSetting.test.ts +0 -62
- package/src/infrastructure/domain/uiSetting/react/useUpdateUiSetting.ts +0 -50
- package/src/infrastructure/integration/useRedirect.ts +0 -9
- package/src/infrastructure/persistence/asyncStorageStorage.ts +0 -13
- package/src/infrastructure/persistence/uiSettingData.ts +0 -7
- package/src/infrastructure/projection/uiSetting/react/useViewUiSettingByKey.test.ts +0 -33
- package/src/infrastructure/projection/uiSetting/react/useViewUiSettingByKey.ts +0 -22
- package/src/infrastructure/projection/uiSetting/storageUiSettingByKeyView.test.ts +0 -36
- package/src/infrastructure/projection/uiSetting/storageUiSettingByKeyView.ts +0 -37
- package/src/infrastructure/ui/settings/UISettings.ts +0 -3
- package/src/projection/uiSetting/viewUiSettingByKey.test.ts +0 -23
- package/src/projection/uiSetting/viewUiSettingByKey.ts +0 -50
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import AsyncStorage from "@react-native-async-storage/async-storage";
|
|
2
|
-
import { ReadFunction, WriteFunction } from "./storage";
|
|
3
|
-
import { UiSettingDto } from "./uiSettingData";
|
|
4
|
-
|
|
5
|
-
const read: ReadFunction<UiSettingDto> = async (key) => {
|
|
6
|
-
const value = await AsyncStorage.getItem(key);
|
|
7
|
-
|
|
8
|
-
return value ? JSON.parse(value) : null;
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
const write: WriteFunction<UiSettingDto> = async (key, value) => AsyncStorage.setItem(key, JSON.stringify(value));
|
|
12
|
-
|
|
13
|
-
export { read, write };
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { renderHook, waitFor } from "@testing-library/react-native";
|
|
2
|
-
import { bootstrap, QueryStatus } from "@lookiero/messaging-react";
|
|
3
|
-
import {
|
|
4
|
-
UiSettingProjection,
|
|
5
|
-
viewUiSettingByKeyHandler,
|
|
6
|
-
VIEW_UI_SETTING_BY_KEY,
|
|
7
|
-
} from "../../../../projection/uiSetting/viewUiSettingByKey";
|
|
8
|
-
import { MESSAGING_CONTEXT_ID } from "../../../delivery/baseBootstrap";
|
|
9
|
-
import { useViewUiSettingByKey as sut } from "./useViewUiSettingByKey";
|
|
10
|
-
|
|
11
|
-
const uiSettingKey = "ui_setting_key";
|
|
12
|
-
const uiSettingProjection: UiSettingProjection = {
|
|
13
|
-
id: "3a1a95f5-724c-4924-a9e4-fb474dd74d80",
|
|
14
|
-
key: uiSettingKey,
|
|
15
|
-
value: "ui_setting_value",
|
|
16
|
-
};
|
|
17
|
-
const view = jest.fn().mockReturnValue(uiSettingProjection);
|
|
18
|
-
const { Component: Messaging } = bootstrap({ id: MESSAGING_CONTEXT_ID })
|
|
19
|
-
.query(VIEW_UI_SETTING_BY_KEY, viewUiSettingByKeyHandler, { view })
|
|
20
|
-
.build();
|
|
21
|
-
|
|
22
|
-
describe("useViewUiSettingByKey integration hook", () => {
|
|
23
|
-
it("returns success as the query status and the result itself after rendering the hook", async () => {
|
|
24
|
-
const { result } = renderHook(() => sut({ key: uiSettingKey }), { wrapper: Messaging });
|
|
25
|
-
|
|
26
|
-
await waitFor(() => {
|
|
27
|
-
const [projection, status] = result.current;
|
|
28
|
-
|
|
29
|
-
expect(projection).toStrictEqual(uiSettingProjection);
|
|
30
|
-
expect(status).toBe(QueryStatus.SUCCESS);
|
|
31
|
-
});
|
|
32
|
-
});
|
|
33
|
-
});
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { useQuery, UseQueryFunctionResult } from "@lookiero/messaging-react";
|
|
2
|
-
import { isUiSettingUpdated } from "../../../../domain/uiSetting/model/uiSettingUpdated";
|
|
3
|
-
import { UiSettingProjection, viewUiSettingByKey } from "../../../../projection/uiSetting/viewUiSettingByKey";
|
|
4
|
-
import { MESSAGING_CONTEXT_ID } from "../../../delivery/baseBootstrap";
|
|
5
|
-
|
|
6
|
-
interface UseViewUiSettingByKeyFunctionArgs {
|
|
7
|
-
readonly key: string;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
interface UseViewUiSettingByKeyFunction {
|
|
11
|
-
(args: UseViewUiSettingByKeyFunctionArgs): UseQueryFunctionResult<UiSettingProjection>;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
const useViewUiSettingByKey: UseViewUiSettingByKeyFunction = ({ key }) =>
|
|
15
|
-
useQuery({
|
|
16
|
-
query: viewUiSettingByKey({ key }),
|
|
17
|
-
contextId: MESSAGING_CONTEXT_ID,
|
|
18
|
-
invalidation: isUiSettingUpdated,
|
|
19
|
-
options: { refetchOnMount: "always", staleTime: Infinity, retry: false, refetchOnWindowFocus: false },
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
export { useViewUiSettingByKey };
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { UiSettingDto } from "../../persistence/uiSettingData";
|
|
2
|
-
import { storageUiSettingByKeyView as sut } from "./storageUiSettingByKeyView";
|
|
3
|
-
|
|
4
|
-
const uiSettingKey = "ui_setting_key";
|
|
5
|
-
const uiSetting: UiSettingDto = {
|
|
6
|
-
id: "ba1fecef-0154-42ea-bbf9-b9c65c621a58",
|
|
7
|
-
key: uiSettingKey,
|
|
8
|
-
value: "ui_setting_value",
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
const readMock = jest.fn();
|
|
12
|
-
const view = sut({ read: readMock });
|
|
13
|
-
|
|
14
|
-
describe("storageUiSettingByKeyView", () => {
|
|
15
|
-
it("returns a UiSetting projection", async () => {
|
|
16
|
-
readMock.mockReturnValue(Promise.resolve(uiSetting));
|
|
17
|
-
|
|
18
|
-
const returnedUiSetting = await view({ key: uiSettingKey });
|
|
19
|
-
|
|
20
|
-
expect(returnedUiSetting).toStrictEqual(uiSetting);
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
it("returns null when ui setting key does not exist", async () => {
|
|
24
|
-
readMock.mockReturnValue(Promise.resolve(null));
|
|
25
|
-
|
|
26
|
-
const returnedUiSetting = await view({ key: uiSettingKey });
|
|
27
|
-
|
|
28
|
-
expect(returnedUiSetting).toBeNull();
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
it("throws for an unsuccessfull response", async () => {
|
|
32
|
-
readMock.mockRejectedValue("error");
|
|
33
|
-
|
|
34
|
-
await expect(view({ key: uiSettingKey })).rejects.toThrow();
|
|
35
|
-
});
|
|
36
|
-
});
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { UiSettingByKeyView, UiSettingProjection } from "../../../projection/uiSetting/viewUiSettingByKey";
|
|
2
|
-
import { ReadFunction } from "../../persistence/storage";
|
|
3
|
-
import { UiSettingDto } from "../../persistence/uiSettingData";
|
|
4
|
-
|
|
5
|
-
interface ToUiSettingProjectionFunction {
|
|
6
|
-
(uiSettingDto: UiSettingDto): UiSettingProjection;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
const toUiSettingProjection: ToUiSettingProjectionFunction = (uiSettingDto) => ({
|
|
10
|
-
id: uiSettingDto.id,
|
|
11
|
-
key: uiSettingDto.key,
|
|
12
|
-
value: uiSettingDto.value,
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
interface StorageUiSettingByKeyView extends UiSettingByKeyView {}
|
|
16
|
-
|
|
17
|
-
interface StorageUiSettingByKeyViewFunctionArgs {
|
|
18
|
-
readonly read: ReadFunction<UiSettingDto>;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
interface StorageUiSettingByKeyViewFunction {
|
|
22
|
-
(args: StorageUiSettingByKeyViewFunctionArgs): StorageUiSettingByKeyView;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
const storageUiSettingByKeyView: StorageUiSettingByKeyViewFunction =
|
|
26
|
-
({ read }) =>
|
|
27
|
-
async ({ key }) => {
|
|
28
|
-
try {
|
|
29
|
-
const uiSettingDto = await read(key);
|
|
30
|
-
|
|
31
|
-
return uiSettingDto ? toUiSettingProjection(uiSettingDto) : null;
|
|
32
|
-
} catch (ignored) {
|
|
33
|
-
throw new Error("Could not fetch the uiSetting");
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
export { storageUiSettingByKeyView };
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { mock } from "jest-mock-extended";
|
|
2
|
-
import { QueryBus } from "@lookiero/messaging";
|
|
3
|
-
import { viewUiSettingByKey, viewUiSettingByKeyHandler as sut, UiSettingProjection } from "./viewUiSettingByKey";
|
|
4
|
-
|
|
5
|
-
const uiSettingKey = "ui_setting_key";
|
|
6
|
-
const uiSettingProjection: UiSettingProjection = {
|
|
7
|
-
id: "3e12edfe-67a7-41ac-a9c4-60d7de7c1556",
|
|
8
|
-
key: uiSettingKey,
|
|
9
|
-
value: "ui_setting_value",
|
|
10
|
-
};
|
|
11
|
-
const queryBus = mock<QueryBus>();
|
|
12
|
-
const signal = mock<AbortSignal>();
|
|
13
|
-
|
|
14
|
-
describe("viewUiSettingByKey", () => {
|
|
15
|
-
it("returns ui setting by key", async () => {
|
|
16
|
-
const query = viewUiSettingByKey({ key: uiSettingKey });
|
|
17
|
-
const view = jest.fn(() => Promise.resolve(uiSettingProjection));
|
|
18
|
-
|
|
19
|
-
const uiSettingProjectionResult = await sut({ view, queryBus, signal })(query);
|
|
20
|
-
|
|
21
|
-
expect(uiSettingProjectionResult).toBe(uiSettingProjection);
|
|
22
|
-
});
|
|
23
|
-
});
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { query, Query, QueryHandlerFunction, QueryHandlerFunctionArgs } from "@lookiero/messaging";
|
|
2
|
-
|
|
3
|
-
interface UiSettingProjection {
|
|
4
|
-
readonly id: string;
|
|
5
|
-
readonly key: string;
|
|
6
|
-
readonly value: unknown;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
const VIEW_UI_SETTING_BY_KEY = "view_ui_setting_by_key";
|
|
10
|
-
|
|
11
|
-
interface ViewUiSettingByKeyPayload {
|
|
12
|
-
readonly key: string;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
interface ViewUiSettingByKey extends Query<typeof VIEW_UI_SETTING_BY_KEY>, ViewUiSettingByKeyPayload {}
|
|
16
|
-
|
|
17
|
-
interface ViewUiSettingByKeyFunction {
|
|
18
|
-
(payload: ViewUiSettingByKeyPayload): ViewUiSettingByKey;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
const viewUiSettingByKey: ViewUiSettingByKeyFunction = (payload) => ({
|
|
22
|
-
...query({ name: VIEW_UI_SETTING_BY_KEY }),
|
|
23
|
-
...payload,
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
type ViewUiSettingByKeyResult = UiSettingProjection | null;
|
|
27
|
-
|
|
28
|
-
interface UiSettingByKeyViewArgs {
|
|
29
|
-
readonly key: string;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
interface UiSettingByKeyView {
|
|
33
|
-
(args: UiSettingByKeyViewArgs): Promise<ViewUiSettingByKeyResult>;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
interface ViewUiSettingByKeyHandlerFunctionArgs extends QueryHandlerFunctionArgs {
|
|
37
|
-
readonly view: UiSettingByKeyView;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
const viewUiSettingByKeyHandler: QueryHandlerFunction<
|
|
41
|
-
ViewUiSettingByKey,
|
|
42
|
-
ViewUiSettingByKeyResult,
|
|
43
|
-
ViewUiSettingByKeyHandlerFunctionArgs
|
|
44
|
-
> =
|
|
45
|
-
({ view }) =>
|
|
46
|
-
async ({ key }) =>
|
|
47
|
-
view({ key });
|
|
48
|
-
|
|
49
|
-
export type { UiSettingProjection, UiSettingByKeyView };
|
|
50
|
-
export { VIEW_UI_SETTING_BY_KEY, viewUiSettingByKey, viewUiSettingByKeyHandler };
|