@enadhq/enad-react-sdk 0.0.6 → 1.0.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/package.json +70 -18
- package/dist/client/cart/components/cart-drawer.d.mts +0 -19
- package/dist/client/cart/components/cart-drawer.mjs +0 -180
- package/dist/client/cart/components/cart-drawer.mjs.map +0 -1
- package/dist/client/cart/components/cart-trigger.d.mts +0 -5
- package/dist/client/cart/components/cart-trigger.mjs +0 -18
- package/dist/client/cart/components/cart-trigger.mjs.map +0 -1
- package/dist/client/cart/constants/session.d.mts +0 -3
- package/dist/client/cart/constants/session.mjs +0 -5
- package/dist/client/cart/constants/session.mjs.map +0 -1
- package/dist/client/cart/contexts/cart.d.mts +0 -27
- package/dist/client/cart/contexts/cart.mjs +0 -22
- package/dist/client/cart/contexts/cart.mjs.map +0 -1
- package/dist/client/cart/hooks/useCart.d.mts +0 -29
- package/dist/client/cart/hooks/useCart.mjs +0 -26
- package/dist/client/cart/hooks/useCart.mjs.map +0 -1
- package/dist/client/cart/hooks/useCartActions.d.mts +0 -26
- package/dist/client/cart/hooks/useCartActions.mjs +0 -58
- package/dist/client/cart/hooks/useCartActions.mjs.map +0 -1
- package/dist/client/cart/queries/addToCartQueryFn.d.mts +0 -10
- package/dist/client/cart/queries/addToCartQueryFn.mjs +0 -27
- package/dist/client/cart/queries/addToCartQueryFn.mjs.map +0 -1
- package/dist/client/cart/queries/getCartQueryFn.d.mts +0 -7
- package/dist/client/cart/queries/getCartQueryFn.mjs +0 -34
- package/dist/client/cart/queries/getCartQueryFn.mjs.map +0 -1
- package/dist/client/cart/queries/removeCartItemQueryFn.d.mts +0 -9
- package/dist/client/cart/queries/removeCartItemQueryFn.mjs +0 -24
- package/dist/client/cart/queries/removeCartItemQueryFn.mjs.map +0 -1
- package/dist/client/cart/queries/updateCartItemQueryFn.d.mts +0 -10
- package/dist/client/cart/queries/updateCartItemQueryFn.mjs +0 -27
- package/dist/client/cart/queries/updateCartItemQueryFn.mjs.map +0 -1
- package/dist/client/cart/types/cart.d.mts +0 -36
- package/dist/client/cart/types/cart.mjs +0 -1
- package/dist/client/cart/types/cart.mjs.map +0 -1
- package/dist/client/cart/utils/session.d.mts +0 -6
- package/dist/client/cart/utils/session.mjs +0 -21
- package/dist/client/cart/utils/session.mjs.map +0 -1
- package/dist/client/cms/storyblok/preview/registerStoryblokBridge.d.mts +0 -6
- package/dist/client/cms/storyblok/preview/registerStoryblokBridge.mjs +0 -24
- package/dist/client/cms/storyblok/preview/registerStoryblokBridge.mjs.map +0 -1
- package/dist/client/cms/storyblok/preview/storyblok-preview-syncer.d.mts +0 -22
- package/dist/client/cms/storyblok/preview/storyblok-preview-syncer.mjs +0 -79
- package/dist/client/cms/storyblok/preview/storyblok-preview-syncer.mjs.map +0 -1
- package/dist/client/global/auth/withAuth.d.mts +0 -6
- package/dist/client/global/auth/withAuth.mjs +0 -25
- package/dist/client/global/auth/withAuth.mjs.map +0 -1
- package/dist/client/global/config/index.d.mts +0 -17
- package/dist/client/global/config/index.mjs +0 -34
- package/dist/client/global/config/index.mjs.map +0 -1
- package/dist/client/global/constants/tags.d.mts +0 -16
- package/dist/client/global/constants/tags.mjs +0 -18
- package/dist/client/global/constants/tags.mjs.map +0 -1
- package/dist/client/global/providers/enad-provider.d.mts +0 -23
- package/dist/client/global/providers/enad-provider.mjs +0 -11
- package/dist/client/global/providers/enad-provider.mjs.map +0 -1
- package/dist/client/search/actions/searchAction.d.mts +0 -5
- package/dist/client/search/actions/searchAction.mjs +0 -18
- package/dist/client/search/actions/searchAction.mjs.map +0 -1
- package/dist/client/search/components/search-bar.d.mts +0 -2
- package/dist/client/search/components/search-bar.mjs +0 -1
- package/dist/client/search/components/search-bar.mjs.map +0 -1
- package/dist/client/search/hooks/useSearch.d.mts +0 -18
- package/dist/client/search/hooks/useSearch.mjs +0 -37
- package/dist/client/search/hooks/useSearch.mjs.map +0 -1
- package/dist/client/user/actions/createResetPasswordLinkAction.d.mts +0 -14
- package/dist/client/user/actions/createResetPasswordLinkAction.mjs +0 -30
- package/dist/client/user/actions/createResetPasswordLinkAction.mjs.map +0 -1
- package/dist/client/user/actions/getUserAction.d.mts +0 -5
- package/dist/client/user/actions/getUserAction.mjs +0 -19
- package/dist/client/user/actions/getUserAction.mjs.map +0 -1
- package/dist/client/user/actions/logInUserAction.d.mts +0 -15
- package/dist/client/user/actions/logInUserAction.mjs +0 -34
- package/dist/client/user/actions/logInUserAction.mjs.map +0 -1
- package/dist/client/user/actions/logoutUserAction.d.mts +0 -3
- package/dist/client/user/actions/logoutUserAction.mjs +0 -10
- package/dist/client/user/actions/logoutUserAction.mjs.map +0 -1
- package/dist/client/user/actions/registerOrganisationAction.d.mts +0 -12
- package/dist/client/user/actions/registerOrganisationAction.mjs +0 -18
- package/dist/client/user/actions/registerOrganisationAction.mjs.map +0 -1
- package/dist/client/user/actions/registerUserAction.d.mts +0 -18
- package/dist/client/user/actions/registerUserAction.mjs +0 -42
- package/dist/client/user/actions/registerUserAction.mjs.map +0 -1
- package/dist/client/user/actions/registerUserWithoutRedirectAction.d.mts +0 -44
- package/dist/client/user/actions/registerUserWithoutRedirectAction.mjs +0 -58
- package/dist/client/user/actions/registerUserWithoutRedirectAction.mjs.map +0 -1
- package/dist/client/user/actions/updatePasswordAction.d.mts +0 -21
- package/dist/client/user/actions/updatePasswordAction.mjs +0 -37
- package/dist/client/user/actions/updatePasswordAction.mjs.map +0 -1
- package/dist/client/user/api/userRoute.d.mts +0 -9
- package/dist/client/user/api/userRoute.mjs +0 -65
- package/dist/client/user/api/userRoute.mjs.map +0 -1
- package/dist/client/user/clients/enad.d.mts +0 -6
- package/dist/client/user/clients/enad.mjs +0 -19
- package/dist/client/user/clients/enad.mjs.map +0 -1
- package/dist/client/user/components/login-form.d.mts +0 -20
- package/dist/client/user/components/login-form.mjs +0 -113
- package/dist/client/user/components/login-form.mjs.map +0 -1
- package/dist/client/user/components/reset-password-form.d.mts +0 -15
- package/dist/client/user/components/reset-password-form.mjs +0 -86
- package/dist/client/user/components/reset-password-form.mjs.map +0 -1
- package/dist/client/user/components/sign-out.d.mts +0 -5
- package/dist/client/user/components/sign-out.mjs +0 -23
- package/dist/client/user/components/sign-out.mjs.map +0 -1
- package/dist/client/user/components/signup-form.d.mts +0 -15
- package/dist/client/user/components/signup-form.mjs +0 -155
- package/dist/client/user/components/signup-form.mjs.map +0 -1
- package/dist/client/user/components/signup-organisation-form.d.mts +0 -20
- package/dist/client/user/components/signup-organisation-form.mjs +0 -813
- package/dist/client/user/components/signup-organisation-form.mjs.map +0 -1
- package/dist/client/user/components/update-password-form.d.mts +0 -11
- package/dist/client/user/components/update-password-form.mjs +0 -69
- package/dist/client/user/components/update-password-form.mjs.map +0 -1
- package/dist/client/user/hooks/index.d.mts +0 -3
- package/dist/client/user/hooks/index.mjs +0 -2
- package/dist/client/user/hooks/index.mjs.map +0 -1
- package/dist/client/user/hooks/useUser.d.mts +0 -16
- package/dist/client/user/hooks/useUser.mjs +0 -32
- package/dist/client/user/hooks/useUser.mjs.map +0 -1
- package/dist/client/user/types/user.d.mts +0 -202
- package/dist/client/user/types/user.mjs +0 -1
- package/dist/client/user/types/user.mjs.map +0 -1
- package/dist/client/user/utils/userCookieService.d.mts +0 -20
- package/dist/client/user/utils/userCookieService.mjs +0 -51
- package/dist/client/user/utils/userCookieService.mjs.map +0 -1
- package/dist/client/wishlist/actions/addItemsToWishlistAction.d.mts +0 -7
- package/dist/client/wishlist/actions/addItemsToWishlistAction.mjs +0 -20
- package/dist/client/wishlist/actions/addItemsToWishlistAction.mjs.map +0 -1
- package/dist/client/wishlist/actions/createOrGetShareTokenAction.d.mts +0 -6
- package/dist/client/wishlist/actions/createOrGetShareTokenAction.mjs +0 -20
- package/dist/client/wishlist/actions/createOrGetShareTokenAction.mjs.map +0 -1
- package/dist/client/wishlist/actions/createWishlistAction.d.mts +0 -6
- package/dist/client/wishlist/actions/createWishlistAction.mjs +0 -16
- package/dist/client/wishlist/actions/createWishlistAction.mjs.map +0 -1
- package/dist/client/wishlist/actions/deleteItemsFromWishlistAction.d.mts +0 -7
- package/dist/client/wishlist/actions/deleteItemsFromWishlistAction.mjs +0 -20
- package/dist/client/wishlist/actions/deleteItemsFromWishlistAction.mjs.map +0 -1
- package/dist/client/wishlist/actions/deleteWishlistAction.d.mts +0 -5
- package/dist/client/wishlist/actions/deleteWishlistAction.mjs +0 -16
- package/dist/client/wishlist/actions/deleteWishlistAction.mjs.map +0 -1
- package/dist/client/wishlist/actions/getSharedWishlistAction.d.mts +0 -6
- package/dist/client/wishlist/actions/getSharedWishlistAction.mjs +0 -20
- package/dist/client/wishlist/actions/getSharedWishlistAction.mjs.map +0 -1
- package/dist/client/wishlist/actions/getSpecificWishlistAction.d.mts +0 -6
- package/dist/client/wishlist/actions/getSpecificWishlistAction.mjs +0 -20
- package/dist/client/wishlist/actions/getSpecificWishlistAction.mjs.map +0 -1
- package/dist/client/wishlist/actions/getUserWishlists.d.mts +0 -7
- package/dist/client/wishlist/actions/getUserWishlists.mjs +0 -25
- package/dist/client/wishlist/actions/getUserWishlists.mjs.map +0 -1
- package/dist/client/wishlist/actions/revokeShareTokenAction.d.mts +0 -5
- package/dist/client/wishlist/actions/revokeShareTokenAction.mjs +0 -20
- package/dist/client/wishlist/actions/revokeShareTokenAction.mjs.map +0 -1
- package/dist/client/wishlist/actions/updateWishlistAction.d.mts +0 -6
- package/dist/client/wishlist/actions/updateWishlistAction.mjs +0 -20
- package/dist/client/wishlist/actions/updateWishlistAction.mjs.map +0 -1
- package/dist/client/wishlist/hooks/index.d.mts +0 -3
- package/dist/client/wishlist/hooks/index.mjs +0 -2
- package/dist/client/wishlist/hooks/index.mjs.map +0 -1
- package/dist/client/wishlist/hooks/useWishlist.d.mts +0 -98
- package/dist/client/wishlist/hooks/useWishlist.mjs +0 -66
- package/dist/client/wishlist/hooks/useWishlist.mjs.map +0 -1
- package/dist/client/wishlist/hooks/useWishlistActions.d.mts +0 -48
- package/dist/client/wishlist/hooks/useWishlistActions.mjs +0 -101
- package/dist/client/wishlist/hooks/useWishlistActions.mjs.map +0 -1
- package/dist/client/wishlist/wishlist-drawer.d.mts +0 -19
- package/dist/client/wishlist/wishlist-drawer.mjs +0 -180
- package/dist/client/wishlist/wishlist-drawer.mjs.map +0 -1
- package/dist/styles.css +0 -959
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import * as _enadhq_enad_ts_sdk from '@enadhq/enad-ts-sdk';
|
|
2
|
-
import * as React from 'react';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Search
|
|
6
|
-
*/
|
|
7
|
-
declare const useSearch: () => {
|
|
8
|
-
query: string;
|
|
9
|
-
setQuery: React.Dispatch<React.SetStateAction<string>>;
|
|
10
|
-
filters: Record<string, any>;
|
|
11
|
-
setFilters: React.Dispatch<React.SetStateAction<Record<string, any>>>;
|
|
12
|
-
result: _enadhq_enad_ts_sdk.SearchResponse<_enadhq_enad_ts_sdk.EnadSearchProduct> | undefined;
|
|
13
|
-
loading: boolean;
|
|
14
|
-
error: Error | null;
|
|
15
|
-
performSearch: () => void;
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
export { useSearch };
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { useState } from "react";
|
|
3
|
-
import { useQuery } from "@tanstack/react-query";
|
|
4
|
-
import { searchAction } from "../actions/searchAction";
|
|
5
|
-
const useSearch = () => {
|
|
6
|
-
const [query, setQuery] = useState("");
|
|
7
|
-
const [filters, setFilters] = useState({});
|
|
8
|
-
const [activeQuery, setActiveQuery] = useState("");
|
|
9
|
-
const { data, isLoading, isError, error, refetch } = useQuery({
|
|
10
|
-
queryKey: ["products-search", activeQuery, filters],
|
|
11
|
-
queryFn: async () => {
|
|
12
|
-
return searchAction(activeQuery, filters);
|
|
13
|
-
},
|
|
14
|
-
enabled: !!activeQuery,
|
|
15
|
-
// run only when performSearch is called
|
|
16
|
-
staleTime: 1e3 * 30
|
|
17
|
-
});
|
|
18
|
-
const performSearch = () => {
|
|
19
|
-
if (query.trim() === "") return;
|
|
20
|
-
setActiveQuery(query);
|
|
21
|
-
refetch();
|
|
22
|
-
};
|
|
23
|
-
return {
|
|
24
|
-
query,
|
|
25
|
-
setQuery,
|
|
26
|
-
filters,
|
|
27
|
-
setFilters,
|
|
28
|
-
result: Array.isArray(data) ? void 0 : data,
|
|
29
|
-
loading: isLoading,
|
|
30
|
-
error: isError ? error : null,
|
|
31
|
-
performSearch
|
|
32
|
-
};
|
|
33
|
-
};
|
|
34
|
-
export {
|
|
35
|
-
useSearch
|
|
36
|
-
};
|
|
37
|
-
//# sourceMappingURL=useSearch.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/client/search/hooks/useSearch.ts"],"sourcesContent":["\"use client\"\n\nimport { useState } from \"react\"\nimport { useQuery } from \"@tanstack/react-query\"\nimport { searchAction } from \"../actions/searchAction\"\n\n/**\n * Search\n */\nexport const useSearch = () => {\n const [query, setQuery] = useState(\"\")\n const [filters, setFilters] = useState<Record<string, any>>({})\n const [activeQuery, setActiveQuery] = useState<string>(\"\") // query actually used for search\n\n const { data, isLoading, isError, error, refetch } = useQuery({\n queryKey: [\"products-search\", activeQuery, filters],\n queryFn: async () => {\n return searchAction(activeQuery, filters)\n },\n enabled: !!activeQuery, // run only when performSearch is called\n staleTime: 1000 * 30,\n })\n\n /**\n * Manually trigger a search using the current `query` and `filters`.\n */\n const performSearch = () => {\n // Only trigger if query has content\n if (query.trim() === \"\") return\n setActiveQuery(query)\n refetch()\n }\n\n return {\n query,\n setQuery,\n filters,\n setFilters,\n result: Array.isArray(data) ? undefined : data,\n loading: isLoading,\n error: isError ? error : null,\n performSearch,\n }\n}\n"],"mappings":";AAEA,SAAS,gBAAgB;AACzB,SAAS,gBAAgB;AACzB,SAAS,oBAAoB;AAKtB,MAAM,YAAY,MAAM;AAC7B,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAS,EAAE;AACrC,QAAM,CAAC,SAAS,UAAU,IAAI,SAA8B,CAAC,CAAC;AAC9D,QAAM,CAAC,aAAa,cAAc,IAAI,SAAiB,EAAE;AAEzD,QAAM,EAAE,MAAM,WAAW,SAAS,OAAO,QAAQ,IAAI,SAAS;AAAA,IAC5D,UAAU,CAAC,mBAAmB,aAAa,OAAO;AAAA,IAClD,SAAS,YAAY;AACnB,aAAO,aAAa,aAAa,OAAO;AAAA,IAC1C;AAAA,IACA,SAAS,CAAC,CAAC;AAAA;AAAA,IACX,WAAW,MAAO;AAAA,EACpB,CAAC;AAKD,QAAM,gBAAgB,MAAM;AAE1B,QAAI,MAAM,KAAK,MAAM,GAAI;AACzB,mBAAe,KAAK;AACpB,YAAQ;AAAA,EACV;AAEA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQ,MAAM,QAAQ,IAAI,IAAI,SAAY;AAAA,IAC1C,SAAS;AAAA,IACT,OAAO,UAAU,QAAQ;AAAA,IACzB;AAAA,EACF;AACF;","names":[]}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
interface Options {
|
|
2
|
-
redirectPath?: string;
|
|
3
|
-
}
|
|
4
|
-
declare const createPasswordResetLinkAction: (formData: FormData, options: Options) => Promise<{
|
|
5
|
-
errors: {
|
|
6
|
-
email?: string[] | undefined;
|
|
7
|
-
};
|
|
8
|
-
} | {
|
|
9
|
-
errors: {
|
|
10
|
-
general: string[];
|
|
11
|
-
};
|
|
12
|
-
}>;
|
|
13
|
-
|
|
14
|
-
export { createPasswordResetLinkAction };
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use server";
|
|
2
|
-
import { customerClient } from "../clients/enad";
|
|
3
|
-
import { redirect } from "next/navigation";
|
|
4
|
-
import * as z from "zod";
|
|
5
|
-
const credentialsSchema = z.object({
|
|
6
|
-
email: z.string().email({ message: "Invalid email address" })
|
|
7
|
-
});
|
|
8
|
-
const createPasswordResetLinkAction = async (formData, options) => {
|
|
9
|
-
const email = formData.get("email")?.toString() ?? "";
|
|
10
|
-
const result = credentialsSchema.safeParse({ email });
|
|
11
|
-
if (!result.success) {
|
|
12
|
-
console.error("Validation errors:", result.error.flatten().fieldErrors);
|
|
13
|
-
return {
|
|
14
|
-
errors: result.error.flatten().fieldErrors
|
|
15
|
-
// per-field errors
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
const [_, error] = await customerClient.user.createPasswordResetLink(email);
|
|
19
|
-
if (error) {
|
|
20
|
-
console.error("create password reset link error:", error);
|
|
21
|
-
return {
|
|
22
|
-
errors: { general: ["Failed to reset password. Please try again later."] }
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
redirect(options.redirectPath ?? "/");
|
|
26
|
-
};
|
|
27
|
-
export {
|
|
28
|
-
createPasswordResetLinkAction
|
|
29
|
-
};
|
|
30
|
-
//# sourceMappingURL=createResetPasswordLinkAction.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/client/user/actions/createResetPasswordLinkAction.ts"],"sourcesContent":["\"use server\"\n\nimport { customerClient } from \"../clients/enad\"\nimport { redirect } from \"next/navigation\"\n\nimport * as z from \"zod\"\n\n// Define validation schema\nconst credentialsSchema = z.object({\n email: z.string().email({ message: \"Invalid email address\" }),\n})\n\ninterface Options {\n redirectPath?: string\n}\n\nexport const createPasswordResetLinkAction = async (formData: FormData, options: Options) => {\n // Extract fields\n const email = formData.get(\"email\")?.toString() ?? \"\"\n\n // Validate\n const result = credentialsSchema.safeParse({ email })\n\n if (!result.success) {\n console.error(\"Validation errors:\", result.error.flatten().fieldErrors)\n return {\n errors: result.error.flatten().fieldErrors, // per-field errors\n }\n }\n\n // Call API\n const [_, error] = await customerClient.user.createPasswordResetLink(email)\n\n if (error) {\n console.error(\"create password reset link error:\", error)\n return {\n errors: { general: [\"Failed to reset password. Please try again later.\"] },\n }\n }\n\n // Successful login → redirect to home\n redirect(options.redirectPath ?? \"/\")\n}\n"],"mappings":";AAEA,SAAS,sBAAsB;AAC/B,SAAS,gBAAgB;AAEzB,YAAY,OAAO;AAGnB,MAAM,oBAAoB,EAAE,OAAO;AAAA,EACjC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,wBAAwB,CAAC;AAC9D,CAAC;AAMM,MAAM,gCAAgC,OAAO,UAAoB,YAAqB;AAE3F,QAAM,QAAQ,SAAS,IAAI,OAAO,GAAG,SAAS,KAAK;AAGnD,QAAM,SAAS,kBAAkB,UAAU,EAAE,MAAM,CAAC;AAEpD,MAAI,CAAC,OAAO,SAAS;AACnB,YAAQ,MAAM,sBAAsB,OAAO,MAAM,QAAQ,EAAE,WAAW;AACtE,WAAO;AAAA,MACL,QAAQ,OAAO,MAAM,QAAQ,EAAE;AAAA;AAAA,IACjC;AAAA,EACF;AAGA,QAAM,CAAC,GAAG,KAAK,IAAI,MAAM,eAAe,KAAK,wBAAwB,KAAK;AAE1E,MAAI,OAAO;AACT,YAAQ,MAAM,qCAAqC,KAAK;AACxD,WAAO;AAAA,MACL,QAAQ,EAAE,SAAS,CAAC,mDAAmD,EAAE;AAAA,IAC3E;AAAA,EACF;AAGA,WAAS,QAAQ,gBAAgB,GAAG;AACtC;","names":[]}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use server";
|
|
2
|
-
import { cookies } from "next/headers";
|
|
3
|
-
import { customerClient } from "../clients/enad";
|
|
4
|
-
import { withAuth } from "../../global/auth/withAuth";
|
|
5
|
-
async function getUser() {
|
|
6
|
-
const cookieStore = await cookies();
|
|
7
|
-
const token = cookieStore.get("access_token");
|
|
8
|
-
const [user, error] = await customerClient.user.getUserFromToken(token?.value || "");
|
|
9
|
-
if (error) {
|
|
10
|
-
console.error("Get user error:", error);
|
|
11
|
-
throw new Error("Failed to fetch user");
|
|
12
|
-
}
|
|
13
|
-
return user;
|
|
14
|
-
}
|
|
15
|
-
const getUserAction = () => withAuth(getUser);
|
|
16
|
-
export {
|
|
17
|
-
getUserAction
|
|
18
|
-
};
|
|
19
|
-
//# sourceMappingURL=getUserAction.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/client/user/actions/getUserAction.ts"],"sourcesContent":["\"use server\"\n\nimport { cookies } from \"next/headers\"\nimport { EnadUser } from \"../../../client/user/types/user\"\nimport { customerClient } from \"../clients/enad\"\n\nimport { withAuth } from \"../../global/auth/withAuth\"\n\n/**\n * Helper to fetch user using an access token\n */\nasync function getUser(): Promise<EnadUser> {\n const cookieStore = await cookies()\n const token = cookieStore.get(\"access_token\")\n\n const [user, error] = await customerClient.user.getUserFromToken(token?.value || \"\")\n\n if (error) {\n console.error(\"Get user error:\", error)\n throw new Error(\"Failed to fetch user\")\n }\n return user\n}\n\n// Wrap getUserAction with auth\nexport const getUserAction = () => withAuth(getUser)\n"],"mappings":";AAEA,SAAS,eAAe;AAExB,SAAS,sBAAsB;AAE/B,SAAS,gBAAgB;AAKzB,eAAe,UAA6B;AAC1C,QAAM,cAAc,MAAM,QAAQ;AAClC,QAAM,QAAQ,YAAY,IAAI,cAAc;AAE5C,QAAM,CAAC,MAAM,KAAK,IAAI,MAAM,eAAe,KAAK,iBAAiB,OAAO,SAAS,EAAE;AAEnF,MAAI,OAAO;AACT,YAAQ,MAAM,mBAAmB,KAAK;AACtC,UAAM,IAAI,MAAM,sBAAsB;AAAA,EACxC;AACA,SAAO;AACT;AAGO,MAAM,gBAAgB,MAAM,SAAS,OAAO;","names":[]}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
interface Options {
|
|
2
|
-
redirectPath?: string;
|
|
3
|
-
}
|
|
4
|
-
declare const logInUserAction: (formData: FormData, options: Options) => Promise<{
|
|
5
|
-
errors: {
|
|
6
|
-
email?: string[] | undefined;
|
|
7
|
-
password?: string[] | undefined;
|
|
8
|
-
};
|
|
9
|
-
} | {
|
|
10
|
-
errors: {
|
|
11
|
-
general: string[];
|
|
12
|
-
};
|
|
13
|
-
}>;
|
|
14
|
-
|
|
15
|
-
export { logInUserAction };
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
"use server";
|
|
2
|
-
import { customerClient } from "../clients/enad";
|
|
3
|
-
import { redirect } from "next/navigation";
|
|
4
|
-
import { userCookieService } from "../utils/userCookieService";
|
|
5
|
-
import * as z from "zod";
|
|
6
|
-
const credentialsSchema = z.object({
|
|
7
|
-
email: z.string().email({ message: "Invalid email address" }),
|
|
8
|
-
password: z.string().min(10, { message: "Password must be at least 10 characters" })
|
|
9
|
-
});
|
|
10
|
-
const logInUserAction = async (formData, options) => {
|
|
11
|
-
const email = formData.get("email")?.toString() ?? "";
|
|
12
|
-
const password = formData.get("password")?.toString() ?? "";
|
|
13
|
-
const result = credentialsSchema.safeParse({ email, password });
|
|
14
|
-
if (!result.success) {
|
|
15
|
-
console.error("Validation errors:", result.error.flatten().fieldErrors);
|
|
16
|
-
return {
|
|
17
|
-
errors: result.error.flatten().fieldErrors
|
|
18
|
-
// per-field errors
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
const [res, error] = await customerClient.user.loginUser(email, password);
|
|
22
|
-
if (error) {
|
|
23
|
-
console.error("Sign in error:", error);
|
|
24
|
-
return {
|
|
25
|
-
errors: { general: ["Failed to sign in. Please try again later."] }
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
await userCookieService.setTokens(res.access_token, res.refresh_token);
|
|
29
|
-
redirect(options.redirectPath ?? "/");
|
|
30
|
-
};
|
|
31
|
-
export {
|
|
32
|
-
logInUserAction
|
|
33
|
-
};
|
|
34
|
-
//# sourceMappingURL=logInUserAction.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/client/user/actions/logInUserAction.ts"],"sourcesContent":["\"use server\"\n\nimport { customerClient } from \"../clients/enad\"\nimport { redirect } from \"next/navigation\"\nimport { userCookieService } from \"../utils/userCookieService\"\nimport * as z from \"zod\"\n\n// Define validation schema\nconst credentialsSchema = z.object({\n email: z.string().email({ message: \"Invalid email address\" }),\n password: z.string().min(10, { message: \"Password must be at least 10 characters\" }),\n})\n\ninterface Options {\n redirectPath?: string\n}\n\nexport const logInUserAction = async (formData: FormData, options: Options) => {\n // Extract fields\n const email = formData.get(\"email\")?.toString() ?? \"\"\n const password = formData.get(\"password\")?.toString() ?? \"\"\n\n // Validate\n const result = credentialsSchema.safeParse({ email, password })\n\n if (!result.success) {\n console.error(\"Validation errors:\", result.error.flatten().fieldErrors)\n return {\n errors: result.error.flatten().fieldErrors, // per-field errors\n }\n }\n\n // Call API\n const [res, error] = await customerClient.user.loginUser(email, password)\n\n if (error) {\n console.error(\"Sign in error:\", error)\n return {\n errors: { general: [\"Failed to sign in. Please try again later.\"] },\n }\n }\n\n // Set cookies\n await userCookieService.setTokens(res.access_token, res.refresh_token)\n\n // Successful login → redirect to home\n redirect(options.redirectPath ?? \"/\")\n}\n"],"mappings":";AAEA,SAAS,sBAAsB;AAC/B,SAAS,gBAAgB;AACzB,SAAS,yBAAyB;AAClC,YAAY,OAAO;AAGnB,MAAM,oBAAoB,EAAE,OAAO;AAAA,EACjC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,wBAAwB,CAAC;AAAA,EAC5D,UAAU,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,SAAS,0CAA0C,CAAC;AACrF,CAAC;AAMM,MAAM,kBAAkB,OAAO,UAAoB,YAAqB;AAE7E,QAAM,QAAQ,SAAS,IAAI,OAAO,GAAG,SAAS,KAAK;AACnD,QAAM,WAAW,SAAS,IAAI,UAAU,GAAG,SAAS,KAAK;AAGzD,QAAM,SAAS,kBAAkB,UAAU,EAAE,OAAO,SAAS,CAAC;AAE9D,MAAI,CAAC,OAAO,SAAS;AACnB,YAAQ,MAAM,sBAAsB,OAAO,MAAM,QAAQ,EAAE,WAAW;AACtE,WAAO;AAAA,MACL,QAAQ,OAAO,MAAM,QAAQ,EAAE;AAAA;AAAA,IACjC;AAAA,EACF;AAGA,QAAM,CAAC,KAAK,KAAK,IAAI,MAAM,eAAe,KAAK,UAAU,OAAO,QAAQ;AAExE,MAAI,OAAO;AACT,YAAQ,MAAM,kBAAkB,KAAK;AACrC,WAAO;AAAA,MACL,QAAQ,EAAE,SAAS,CAAC,4CAA4C,EAAE;AAAA,IACpE;AAAA,EACF;AAGA,QAAM,kBAAkB,UAAU,IAAI,cAAc,IAAI,aAAa;AAGrE,WAAS,QAAQ,gBAAgB,GAAG;AACtC;","names":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/client/user/actions/logoutUserAction.ts"],"sourcesContent":["\"use server\"\n\nimport { userCookieService } from \"../utils/userCookieService\"\n\nexport const logOutUserAction = async () => {\n await userCookieService.clear()\n\n return true\n}\n"],"mappings":";AAEA,SAAS,yBAAyB;AAE3B,MAAM,mBAAmB,YAAY;AAC1C,QAAM,kBAAkB,MAAM;AAE9B,SAAO;AACT;","names":[]}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import * as _enadhq_enad_ts_sdk from '@enadhq/enad-ts-sdk';
|
|
2
|
-
import { RegisterOrganisationRequest } from '@enadhq/enad-ts-sdk';
|
|
3
|
-
|
|
4
|
-
declare const registerOrganisationAction: (organisationDetails: RegisterOrganisationRequest) => Promise<{
|
|
5
|
-
error: string;
|
|
6
|
-
data?: undefined;
|
|
7
|
-
} | {
|
|
8
|
-
data: _enadhq_enad_ts_sdk.EnadOrganisationResponse;
|
|
9
|
-
error?: undefined;
|
|
10
|
-
}>;
|
|
11
|
-
|
|
12
|
-
export { registerOrganisationAction };
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use server";
|
|
2
|
-
import { customerClient } from "../clients/enad";
|
|
3
|
-
const registerOrganisationAction = async (organisationDetails) => {
|
|
4
|
-
const [data, error] = await customerClient.organisation.registerOrganisation(
|
|
5
|
-
organisationDetails
|
|
6
|
-
);
|
|
7
|
-
if (error) {
|
|
8
|
-
console.error("Organisation registration error:", error);
|
|
9
|
-
return {
|
|
10
|
-
error: error.message || "Failed to register organisation. Please try again."
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
return { data };
|
|
14
|
-
};
|
|
15
|
-
export {
|
|
16
|
-
registerOrganisationAction
|
|
17
|
-
};
|
|
18
|
-
//# sourceMappingURL=registerOrganisationAction.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/client/user/actions/registerOrganisationAction.ts"],"sourcesContent":["\"use server\"\n\nimport { customerClient } from \"../clients/enad\"\nimport { RegisterOrganisationRequest } from \"@enadhq/enad-ts-sdk\"\n\nexport const registerOrganisationAction = async (\n organisationDetails: RegisterOrganisationRequest\n) => {\n const [data, error] = await customerClient.organisation.registerOrganisation(\n organisationDetails\n )\n\n if (error) {\n console.error(\"Organisation registration error:\", error)\n return {\n error: error.message || \"Failed to register organisation. Please try again.\",\n }\n }\n\n return { data }\n}\n"],"mappings":";AAEA,SAAS,sBAAsB;AAGxB,MAAM,6BAA6B,OACxC,wBACG;AACH,QAAM,CAAC,MAAM,KAAK,IAAI,MAAM,eAAe,aAAa;AAAA,IACtD;AAAA,EACF;AAEA,MAAI,OAAO;AACT,YAAQ,MAAM,oCAAoC,KAAK;AACvD,WAAO;AAAA,MACL,OAAO,MAAM,WAAW;AAAA,IAC1B;AAAA,EACF;AAEA,SAAO,EAAE,KAAK;AAChB;","names":[]}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
interface Options {
|
|
2
|
-
redirectPath?: string;
|
|
3
|
-
}
|
|
4
|
-
declare const registerUserAction: (formData: FormData, options: Options) => Promise<{
|
|
5
|
-
errors: {
|
|
6
|
-
firstName?: string[] | undefined;
|
|
7
|
-
lastName?: string[] | undefined;
|
|
8
|
-
email?: string[] | undefined;
|
|
9
|
-
password?: string[] | undefined;
|
|
10
|
-
acceptTerms?: string[] | undefined;
|
|
11
|
-
};
|
|
12
|
-
} | {
|
|
13
|
-
errors: {
|
|
14
|
-
general: string[];
|
|
15
|
-
};
|
|
16
|
-
}>;
|
|
17
|
-
|
|
18
|
-
export { registerUserAction };
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use server";
|
|
2
|
-
import { customerClient } from "../clients/enad";
|
|
3
|
-
import { redirect } from "next/navigation";
|
|
4
|
-
import * as z from "zod";
|
|
5
|
-
const signupSchema = z.object({
|
|
6
|
-
firstName: z.string().min(1, { message: "First name is required" }),
|
|
7
|
-
lastName: z.string().min(1, { message: "Last name is required" }),
|
|
8
|
-
email: z.string().email({ message: "Invalid email address" }),
|
|
9
|
-
password: z.string().min(10, { message: "Password must be at least 10 characters" }),
|
|
10
|
-
acceptTerms: z.string().refine((val) => val === "on", { message: "You must accept the terms" })
|
|
11
|
-
});
|
|
12
|
-
const registerUserAction = async (formData, options) => {
|
|
13
|
-
const firstName = formData.get("firstName")?.toString() ?? "";
|
|
14
|
-
const lastName = formData.get("lastName")?.toString() ?? "";
|
|
15
|
-
const email = formData.get("email")?.toString() ?? "";
|
|
16
|
-
const password = formData.get("password")?.toString() ?? "";
|
|
17
|
-
const acceptTerms = formData.get("acceptTerms")?.toString() ?? "";
|
|
18
|
-
const result = signupSchema.safeParse({ firstName, lastName, email, password, acceptTerms });
|
|
19
|
-
if (!result.success) {
|
|
20
|
-
console.error("Validation errors:", result.error.flatten().fieldErrors);
|
|
21
|
-
return {
|
|
22
|
-
errors: result.error.flatten().fieldErrors
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
const [_, error] = await customerClient.user.registerUser({
|
|
26
|
-
first_name: firstName,
|
|
27
|
-
last_name: lastName,
|
|
28
|
-
email,
|
|
29
|
-
password
|
|
30
|
-
});
|
|
31
|
-
if (error) {
|
|
32
|
-
console.error("Registration error:", error);
|
|
33
|
-
return {
|
|
34
|
-
errors: { general: ["Failed to register. Please try again."] }
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
redirect(options.redirectPath ?? `/`);
|
|
38
|
-
};
|
|
39
|
-
export {
|
|
40
|
-
registerUserAction
|
|
41
|
-
};
|
|
42
|
-
//# sourceMappingURL=registerUserAction.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/client/user/actions/registerUserAction.ts"],"sourcesContent":["\"use server\"\n\nimport { customerClient } from \"../clients/enad\"\nimport { redirect } from \"next/navigation\"\nimport { userCookieService } from \"../utils/userCookieService\"\nimport * as z from \"zod\"\n\n// Validation schema for signup\nconst signupSchema = z.object({\n firstName: z.string().min(1, { message: \"First name is required\" }),\n lastName: z.string().min(1, { message: \"Last name is required\" }),\n email: z.string().email({ message: \"Invalid email address\" }),\n password: z.string().min(10, { message: \"Password must be at least 10 characters\" }),\n acceptTerms: z.string().refine((val) => val === \"on\", { message: \"You must accept the terms\" }),\n})\n\ninterface Options {\n redirectPath?: string\n}\n\nexport const registerUserAction = async (formData: FormData, options: Options) => {\n // Extract form data\n const firstName = formData.get(\"firstName\")?.toString() ?? \"\"\n const lastName = formData.get(\"lastName\")?.toString() ?? \"\"\n const email = formData.get(\"email\")?.toString() ?? \"\"\n const password = formData.get(\"password\")?.toString() ?? \"\"\n const acceptTerms = formData.get(\"acceptTerms\")?.toString() ?? \"\"\n\n // Validate\n const result = signupSchema.safeParse({ firstName, lastName, email, password, acceptTerms })\n\n if (!result.success) {\n console.error(\"Validation errors:\", result.error.flatten().fieldErrors)\n return {\n errors: result.error.flatten().fieldErrors,\n }\n }\n\n // Call registration API\n const [_, error] = await customerClient.user.registerUser({\n first_name: firstName,\n last_name: lastName,\n email,\n password,\n })\n\n if (error) {\n console.error(\"Registration error:\", error)\n return {\n errors: { general: [\"Failed to register. Please try again.\"] },\n }\n }\n\n // Redirect to home page\n redirect(options.redirectPath ?? `/`)\n}\n"],"mappings":";AAEA,SAAS,sBAAsB;AAC/B,SAAS,gBAAgB;AAEzB,YAAY,OAAO;AAGnB,MAAM,eAAe,EAAE,OAAO;AAAA,EAC5B,WAAW,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,SAAS,yBAAyB,CAAC;AAAA,EAClE,UAAU,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,SAAS,wBAAwB,CAAC;AAAA,EAChE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,wBAAwB,CAAC;AAAA,EAC5D,UAAU,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,SAAS,0CAA0C,CAAC;AAAA,EACnF,aAAa,EAAE,OAAO,EAAE,OAAO,CAAC,QAAQ,QAAQ,MAAM,EAAE,SAAS,4BAA4B,CAAC;AAChG,CAAC;AAMM,MAAM,qBAAqB,OAAO,UAAoB,YAAqB;AAEhF,QAAM,YAAY,SAAS,IAAI,WAAW,GAAG,SAAS,KAAK;AAC3D,QAAM,WAAW,SAAS,IAAI,UAAU,GAAG,SAAS,KAAK;AACzD,QAAM,QAAQ,SAAS,IAAI,OAAO,GAAG,SAAS,KAAK;AACnD,QAAM,WAAW,SAAS,IAAI,UAAU,GAAG,SAAS,KAAK;AACzD,QAAM,cAAc,SAAS,IAAI,aAAa,GAAG,SAAS,KAAK;AAG/D,QAAM,SAAS,aAAa,UAAU,EAAE,WAAW,UAAU,OAAO,UAAU,YAAY,CAAC;AAE3F,MAAI,CAAC,OAAO,SAAS;AACnB,YAAQ,MAAM,sBAAsB,OAAO,MAAM,QAAQ,EAAE,WAAW;AACtE,WAAO;AAAA,MACL,QAAQ,OAAO,MAAM,QAAQ,EAAE;AAAA,IACjC;AAAA,EACF;AAGA,QAAM,CAAC,GAAG,KAAK,IAAI,MAAM,eAAe,KAAK,aAAa;AAAA,IACxD,YAAY;AAAA,IACZ,WAAW;AAAA,IACX;AAAA,IACA;AAAA,EACF,CAAC;AAED,MAAI,OAAO;AACT,YAAQ,MAAM,uBAAuB,KAAK;AAC1C,WAAO;AAAA,MACL,QAAQ,EAAE,SAAS,CAAC,uCAAuC,EAAE;AAAA,IAC/D;AAAA,EACF;AAGA,WAAS,QAAQ,gBAAgB,GAAG;AACtC;","names":[]}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import * as _enadhq_enad_ts_sdk from '@enadhq/enad-ts-sdk';
|
|
2
|
-
|
|
3
|
-
declare const registerUserWithoutRedirectAction: (userData: {
|
|
4
|
-
firstName: string;
|
|
5
|
-
lastName: string;
|
|
6
|
-
email: string;
|
|
7
|
-
password: string;
|
|
8
|
-
phone_number?: string;
|
|
9
|
-
language?: string;
|
|
10
|
-
country_code?: string;
|
|
11
|
-
market?: string;
|
|
12
|
-
store_group?: string;
|
|
13
|
-
allow_email_notifications?: boolean;
|
|
14
|
-
allow_phone_notifications?: boolean;
|
|
15
|
-
allow_postal_notifications?: boolean;
|
|
16
|
-
status?: "active" | "pending" | "inactive" | undefined;
|
|
17
|
-
}) => Promise<{
|
|
18
|
-
errors: {
|
|
19
|
-
firstName?: string[] | undefined;
|
|
20
|
-
lastName?: string[] | undefined;
|
|
21
|
-
email?: string[] | undefined;
|
|
22
|
-
password?: string[] | undefined;
|
|
23
|
-
phone_number?: string[] | undefined;
|
|
24
|
-
language?: string[] | undefined;
|
|
25
|
-
country_code?: string[] | undefined;
|
|
26
|
-
market?: string[] | undefined;
|
|
27
|
-
store_group?: string[] | undefined;
|
|
28
|
-
allow_email_notifications?: string[] | undefined;
|
|
29
|
-
allow_phone_notifications?: string[] | undefined;
|
|
30
|
-
allow_postal_notifications?: string[] | undefined;
|
|
31
|
-
status?: string[] | undefined;
|
|
32
|
-
};
|
|
33
|
-
data: null;
|
|
34
|
-
} | {
|
|
35
|
-
errors: {
|
|
36
|
-
general: string[];
|
|
37
|
-
};
|
|
38
|
-
data: null;
|
|
39
|
-
} | {
|
|
40
|
-
data: _enadhq_enad_ts_sdk.EnadUser;
|
|
41
|
-
errors: null;
|
|
42
|
-
}>;
|
|
43
|
-
|
|
44
|
-
export { registerUserWithoutRedirectAction };
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
"use server";
|
|
2
|
-
import { customerClient } from "../clients/enad";
|
|
3
|
-
import * as z from "zod";
|
|
4
|
-
const signupSchema = z.object({
|
|
5
|
-
firstName: z.string().min(1, { message: "First name is required" }),
|
|
6
|
-
lastName: z.string().min(1, { message: "Last name is required" }),
|
|
7
|
-
email: z.string().email({ message: "Invalid email address" }),
|
|
8
|
-
password: z.string().min(10, { message: "Password must be at least 10 characters" }),
|
|
9
|
-
phone_number: z.string().optional(),
|
|
10
|
-
language: z.string().optional(),
|
|
11
|
-
country_code: z.string().optional(),
|
|
12
|
-
market: z.string().optional(),
|
|
13
|
-
store_group: z.string().optional(),
|
|
14
|
-
allow_email_notifications: z.boolean().optional(),
|
|
15
|
-
allow_phone_notifications: z.boolean().optional(),
|
|
16
|
-
allow_postal_notifications: z.boolean().optional(),
|
|
17
|
-
status: z.enum(["active", "pending", "inactive"]).optional()
|
|
18
|
-
});
|
|
19
|
-
const registerUserWithoutRedirectAction = async (userData) => {
|
|
20
|
-
const result = signupSchema.safeParse(userData);
|
|
21
|
-
if (!result.success) {
|
|
22
|
-
console.error("Validation errors:", result.error.flatten().fieldErrors);
|
|
23
|
-
return {
|
|
24
|
-
errors: result.error.flatten().fieldErrors,
|
|
25
|
-
data: null
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
const [data, error] = await customerClient.user.registerUser({
|
|
29
|
-
first_name: userData.firstName,
|
|
30
|
-
last_name: userData.lastName,
|
|
31
|
-
email: userData.email.toLowerCase(),
|
|
32
|
-
password: userData.password,
|
|
33
|
-
phone_number: userData.phone_number,
|
|
34
|
-
language: userData.language,
|
|
35
|
-
country_code: userData.country_code,
|
|
36
|
-
market: userData.market,
|
|
37
|
-
store_group: userData.store_group,
|
|
38
|
-
allow_email_notifications: userData.allow_email_notifications,
|
|
39
|
-
allow_phone_notifications: userData.allow_phone_notifications,
|
|
40
|
-
allow_postal_notifications: userData.allow_postal_notifications,
|
|
41
|
-
status: userData.status
|
|
42
|
-
});
|
|
43
|
-
if (error) {
|
|
44
|
-
console.error("Registration error:", error);
|
|
45
|
-
return {
|
|
46
|
-
errors: { general: [error.message || "Failed to register. Please try again."] },
|
|
47
|
-
data: null
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
return {
|
|
51
|
-
data,
|
|
52
|
-
errors: null
|
|
53
|
-
};
|
|
54
|
-
};
|
|
55
|
-
export {
|
|
56
|
-
registerUserWithoutRedirectAction
|
|
57
|
-
};
|
|
58
|
-
//# sourceMappingURL=registerUserWithoutRedirectAction.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/client/user/actions/registerUserWithoutRedirectAction.ts"],"sourcesContent":["\"use server\"\n\nimport { customerClient } from \"../clients/enad\"\nimport * as z from \"zod\"\n\n// Validation schema for signup\nconst signupSchema = z.object({\n firstName: z.string().min(1, { message: \"First name is required\" }),\n lastName: z.string().min(1, { message: \"Last name is required\" }),\n email: z.string().email({ message: \"Invalid email address\" }),\n password: z.string().min(10, { message: \"Password must be at least 10 characters\" }),\n phone_number: z.string().optional(),\n language: z.string().optional(),\n country_code: z.string().optional(),\n market: z.string().optional(),\n store_group: z.string().optional(),\n allow_email_notifications: z.boolean().optional(),\n allow_phone_notifications: z.boolean().optional(),\n allow_postal_notifications: z.boolean().optional(),\n status: z.enum([\"active\", \"pending\", \"inactive\"]).optional(),\n})\n\nexport const registerUserWithoutRedirectAction = async (userData: {\n firstName: string\n lastName: string\n email: string\n password: string\n phone_number?: string\n language?: string\n country_code?: string\n market?: string\n store_group?: string\n allow_email_notifications?: boolean\n allow_phone_notifications?: boolean\n allow_postal_notifications?: boolean\n status?: \"active\" | \"pending\" | \"inactive\" | undefined\n}) => {\n // Validate\n const result = signupSchema.safeParse(userData)\n\n if (!result.success) {\n console.error(\"Validation errors:\", result.error.flatten().fieldErrors)\n return {\n errors: result.error.flatten().fieldErrors,\n data: null,\n }\n }\n\n // Call registration API\n const [data, error] = await customerClient.user.registerUser({\n first_name: userData.firstName,\n last_name: userData.lastName,\n email: userData.email.toLowerCase(),\n password: userData.password,\n phone_number: userData.phone_number,\n language: userData.language,\n country_code: userData.country_code,\n market: userData.market,\n store_group: userData.store_group,\n allow_email_notifications: userData.allow_email_notifications,\n allow_phone_notifications: userData.allow_phone_notifications,\n allow_postal_notifications: userData.allow_postal_notifications,\n status: userData.status,\n })\n\n if (error) {\n console.error(\"Registration error:\", error)\n return {\n errors: { general: [error.message || \"Failed to register. Please try again.\"] },\n data: null,\n }\n }\n\n return {\n data,\n errors: null,\n }\n}\n"],"mappings":";AAEA,SAAS,sBAAsB;AAC/B,YAAY,OAAO;AAGnB,MAAM,eAAe,EAAE,OAAO;AAAA,EAC5B,WAAW,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,SAAS,yBAAyB,CAAC;AAAA,EAClE,UAAU,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,SAAS,wBAAwB,CAAC;AAAA,EAChE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,wBAAwB,CAAC;AAAA,EAC5D,UAAU,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,SAAS,0CAA0C,CAAC;AAAA,EACnF,cAAc,EAAE,OAAO,EAAE,SAAS;AAAA,EAClC,UAAU,EAAE,OAAO,EAAE,SAAS;AAAA,EAC9B,cAAc,EAAE,OAAO,EAAE,SAAS;AAAA,EAClC,QAAQ,EAAE,OAAO,EAAE,SAAS;AAAA,EAC5B,aAAa,EAAE,OAAO,EAAE,SAAS;AAAA,EACjC,2BAA2B,EAAE,QAAQ,EAAE,SAAS;AAAA,EAChD,2BAA2B,EAAE,QAAQ,EAAE,SAAS;AAAA,EAChD,4BAA4B,EAAE,QAAQ,EAAE,SAAS;AAAA,EACjD,QAAQ,EAAE,KAAK,CAAC,UAAU,WAAW,UAAU,CAAC,EAAE,SAAS;AAC7D,CAAC;AAEM,MAAM,oCAAoC,OAAO,aAclD;AAEJ,QAAM,SAAS,aAAa,UAAU,QAAQ;AAE9C,MAAI,CAAC,OAAO,SAAS;AACnB,YAAQ,MAAM,sBAAsB,OAAO,MAAM,QAAQ,EAAE,WAAW;AACtE,WAAO;AAAA,MACL,QAAQ,OAAO,MAAM,QAAQ,EAAE;AAAA,MAC/B,MAAM;AAAA,IACR;AAAA,EACF;AAGA,QAAM,CAAC,MAAM,KAAK,IAAI,MAAM,eAAe,KAAK,aAAa;AAAA,IAC3D,YAAY,SAAS;AAAA,IACrB,WAAW,SAAS;AAAA,IACpB,OAAO,SAAS,MAAM,YAAY;AAAA,IAClC,UAAU,SAAS;AAAA,IACnB,cAAc,SAAS;AAAA,IACvB,UAAU,SAAS;AAAA,IACnB,cAAc,SAAS;AAAA,IACvB,QAAQ,SAAS;AAAA,IACjB,aAAa,SAAS;AAAA,IACtB,2BAA2B,SAAS;AAAA,IACpC,2BAA2B,SAAS;AAAA,IACpC,4BAA4B,SAAS;AAAA,IACrC,QAAQ,SAAS;AAAA,EACnB,CAAC;AAED,MAAI,OAAO;AACT,YAAQ,MAAM,uBAAuB,KAAK;AAC1C,WAAO;AAAA,MACL,QAAQ,EAAE,SAAS,CAAC,MAAM,WAAW,uCAAuC,EAAE;AAAA,MAC9E,MAAM;AAAA,IACR;AAAA,EACF;AAEA,SAAO;AAAA,IACL;AAAA,IACA,QAAQ;AAAA,EACV;AACF;","names":[]}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
interface Options {
|
|
2
|
-
redirectPath?: string;
|
|
3
|
-
}
|
|
4
|
-
declare const updatePasswordAction: (formData: FormData, options?: Options) => Promise<{
|
|
5
|
-
errors: {
|
|
6
|
-
password?: string[] | undefined;
|
|
7
|
-
token?: string[] | undefined;
|
|
8
|
-
};
|
|
9
|
-
} | {
|
|
10
|
-
errors: {
|
|
11
|
-
confirmPassword: string[];
|
|
12
|
-
general?: undefined;
|
|
13
|
-
};
|
|
14
|
-
} | {
|
|
15
|
-
errors: {
|
|
16
|
-
general: string[];
|
|
17
|
-
confirmPassword?: undefined;
|
|
18
|
-
};
|
|
19
|
-
}>;
|
|
20
|
-
|
|
21
|
-
export { updatePasswordAction };
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
"use server";
|
|
2
|
-
import { customerClient } from "../clients/enad";
|
|
3
|
-
import { redirect } from "next/navigation";
|
|
4
|
-
import * as z from "zod";
|
|
5
|
-
const passwordSchema = z.object({
|
|
6
|
-
password: z.string().min(10, { message: "Password must be at least 10 characters" }),
|
|
7
|
-
token: z.string().min(1, { message: "Reset token is required" })
|
|
8
|
-
});
|
|
9
|
-
const updatePasswordAction = async (formData, options = {}) => {
|
|
10
|
-
const password = formData.get("password")?.toString() ?? "";
|
|
11
|
-
const confirmPassword = formData.get("confirmPassword")?.toString() ?? "";
|
|
12
|
-
const token = formData.get("token")?.toString() ?? "";
|
|
13
|
-
const result = passwordSchema.safeParse({ password, confirmPassword, token });
|
|
14
|
-
if (!result.success) {
|
|
15
|
-
console.error("Validation errors:", result.error.flatten().fieldErrors);
|
|
16
|
-
return {
|
|
17
|
-
errors: result.error.flatten().fieldErrors
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
if (password !== confirmPassword) {
|
|
21
|
-
return {
|
|
22
|
-
errors: { confirmPassword: ["Passwords do not match"] }
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
const [res, error] = await customerClient.user.changePassword(password, token);
|
|
26
|
-
if (error) {
|
|
27
|
-
console.error("Change password error:", error);
|
|
28
|
-
return {
|
|
29
|
-
errors: { general: ["Failed to update password. Please try again later."] }
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
redirect(options.redirectPath ?? "/login");
|
|
33
|
-
};
|
|
34
|
-
export {
|
|
35
|
-
updatePasswordAction
|
|
36
|
-
};
|
|
37
|
-
//# sourceMappingURL=updatePasswordAction.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/client/user/actions/updatePasswordAction.ts"],"sourcesContent":["\"use server\"\n\nimport { customerClient } from \"../clients/enad\"\nimport { redirect } from \"next/navigation\"\nimport * as z from \"zod\"\n\n// Validation schema for password\nconst passwordSchema = z.object({\n password: z.string().min(10, { message: \"Password must be at least 10 characters\" }),\n token: z.string().min(1, { message: \"Reset token is required\" }),\n})\n\ninterface Options {\n redirectPath?: string\n}\n\nexport const updatePasswordAction = async (formData: FormData, options: Options = {}) => {\n const password = formData.get(\"password\")?.toString() ?? \"\"\n const confirmPassword = formData.get(\"confirmPassword\")?.toString() ?? \"\"\n const token = formData.get(\"token\")?.toString() ?? \"\"\n\n // Validate\n const result = passwordSchema.safeParse({ password, confirmPassword, token })\n\n if (!result.success) {\n console.error(\"Validation errors:\", result.error.flatten().fieldErrors)\n return {\n errors: result.error.flatten().fieldErrors,\n }\n }\n\n if (password !== confirmPassword) {\n return {\n errors: { confirmPassword: [\"Passwords do not match\"] },\n }\n }\n\n // Call the SDK to change password\n const [res, error] = await customerClient.user.changePassword(password, token)\n\n if (error) {\n console.error(\"Change password error:\", error)\n return {\n errors: { general: [\"Failed to update password. Please try again later.\"] },\n }\n }\n\n // Success → redirect\n redirect(options.redirectPath ?? \"/login\")\n}\n"],"mappings":";AAEA,SAAS,sBAAsB;AAC/B,SAAS,gBAAgB;AACzB,YAAY,OAAO;AAGnB,MAAM,iBAAiB,EAAE,OAAO;AAAA,EAC9B,UAAU,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,SAAS,0CAA0C,CAAC;AAAA,EACnF,OAAO,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,SAAS,0BAA0B,CAAC;AACjE,CAAC;AAMM,MAAM,uBAAuB,OAAO,UAAoB,UAAmB,CAAC,MAAM;AACvF,QAAM,WAAW,SAAS,IAAI,UAAU,GAAG,SAAS,KAAK;AACzD,QAAM,kBAAkB,SAAS,IAAI,iBAAiB,GAAG,SAAS,KAAK;AACvE,QAAM,QAAQ,SAAS,IAAI,OAAO,GAAG,SAAS,KAAK;AAGnD,QAAM,SAAS,eAAe,UAAU,EAAE,UAAU,iBAAiB,MAAM,CAAC;AAE5E,MAAI,CAAC,OAAO,SAAS;AACnB,YAAQ,MAAM,sBAAsB,OAAO,MAAM,QAAQ,EAAE,WAAW;AACtE,WAAO;AAAA,MACL,QAAQ,OAAO,MAAM,QAAQ,EAAE;AAAA,IACjC;AAAA,EACF;AAEA,MAAI,aAAa,iBAAiB;AAChC,WAAO;AAAA,MACL,QAAQ,EAAE,iBAAiB,CAAC,wBAAwB,EAAE;AAAA,IACxD;AAAA,EACF;AAGA,QAAM,CAAC,KAAK,KAAK,IAAI,MAAM,eAAe,KAAK,eAAe,UAAU,KAAK;AAE7E,MAAI,OAAO;AACT,YAAQ,MAAM,0BAA0B,KAAK;AAC7C,WAAO;AAAA,MACL,QAAQ,EAAE,SAAS,CAAC,oDAAoD,EAAE;AAAA,IAC5E;AAAA,EACF;AAGA,WAAS,QAAQ,gBAAgB,QAAQ;AAC3C;","names":[]}
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { NextResponse } from "next/server";
|
|
2
|
-
const APP_ID = "8bd950c5-551b-4603-bfe6-f33cdcae1a69";
|
|
3
|
-
async function refreshAccessToken(refreshToken) {
|
|
4
|
-
const response = await fetch(`https://customers.enad.io/api/v1/${APP_ID}/auth/refresh`, {
|
|
5
|
-
method: "POST",
|
|
6
|
-
headers: {
|
|
7
|
-
"Content-Type": "application/json",
|
|
8
|
-
"api-key": "MaCtW4PYVqDl8n4fpplMBqJ3-0De4DP1cPLT76oJuHE8lyR61oHne_iK-yX5"
|
|
9
|
-
},
|
|
10
|
-
body: JSON.stringify({ refresh_token: refreshToken })
|
|
11
|
-
});
|
|
12
|
-
if (!response.ok) throw new Error("Failed to refresh token");
|
|
13
|
-
return response.json();
|
|
14
|
-
}
|
|
15
|
-
async function getUser(accessToken) {
|
|
16
|
-
const response = await fetch(`https://customers.enad.io/api/v1/${APP_ID}/user`, {
|
|
17
|
-
headers: { Authorization: `Bearer ${accessToken}` }
|
|
18
|
-
});
|
|
19
|
-
if (!response.ok) throw new Error("Failed to fetch user");
|
|
20
|
-
return response.json();
|
|
21
|
-
}
|
|
22
|
-
async function userRouteGETHandler(req) {
|
|
23
|
-
try {
|
|
24
|
-
const cookies = req.headers.get("cookie") || "";
|
|
25
|
-
let accessToken = cookies.split("; ").find((c) => c.startsWith("access_token="))?.split("=")[1];
|
|
26
|
-
const refreshToken = cookies.split("; ").find((c) => c.startsWith("refresh_token="))?.split("=")[1];
|
|
27
|
-
console.log("Access Token:", accessToken);
|
|
28
|
-
console.log("Refresh Token:", refreshToken);
|
|
29
|
-
if (!accessToken && !refreshToken) {
|
|
30
|
-
return NextResponse.json({ error: "Not authenticated" }, { status: 401 });
|
|
31
|
-
}
|
|
32
|
-
try {
|
|
33
|
-
const user = await getUser(accessToken);
|
|
34
|
-
return NextResponse.json({ user });
|
|
35
|
-
} catch (err) {
|
|
36
|
-
if (!refreshToken) throw err;
|
|
37
|
-
const refreshData = await refreshAccessToken(refreshToken);
|
|
38
|
-
accessToken = refreshData.access_token;
|
|
39
|
-
const res = NextResponse.json({ user: await getUser(accessToken) });
|
|
40
|
-
res.cookies.set("access_token", refreshData.access_token, {
|
|
41
|
-
httpOnly: true,
|
|
42
|
-
secure: process.env.NODE_ENV === "production",
|
|
43
|
-
path: "/",
|
|
44
|
-
maxAge: refreshData.expires_in
|
|
45
|
-
});
|
|
46
|
-
if (refreshData.refresh_token) {
|
|
47
|
-
res.cookies.set("refresh_token", refreshData.refresh_token, {
|
|
48
|
-
httpOnly: true,
|
|
49
|
-
secure: process.env.NODE_ENV === "production",
|
|
50
|
-
path: "/",
|
|
51
|
-
maxAge: 7 * 24 * 60 * 60
|
|
52
|
-
// 7 days
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
return res;
|
|
56
|
-
}
|
|
57
|
-
} catch (error) {
|
|
58
|
-
console.error(error);
|
|
59
|
-
return NextResponse.json({ error: "Unable to fetch user" }, { status: 500 });
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
export {
|
|
63
|
-
userRouteGETHandler
|
|
64
|
-
};
|
|
65
|
-
//# sourceMappingURL=userRoute.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/client/user/api/userRoute.ts"],"sourcesContent":["import { NextResponse } from \"next/server\"\n\nconst APP_ID = \"8bd950c5-551b-4603-bfe6-f33cdcae1a69\"\n\nasync function refreshAccessToken(refreshToken: string) {\n const response = await fetch(`https://customers.enad.io/api/v1/${APP_ID}/auth/refresh`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n \"api-key\": \"MaCtW4PYVqDl8n4fpplMBqJ3-0De4DP1cPLT76oJuHE8lyR61oHne_iK-yX5\",\n },\n body: JSON.stringify({ refresh_token: refreshToken }),\n })\n\n if (!response.ok) throw new Error(\"Failed to refresh token\")\n\n return response.json() // { access_token, refresh_token? }\n}\n\nasync function getUser(accessToken: string) {\n const response = await fetch(`https://customers.enad.io/api/v1/${APP_ID}/user`, {\n headers: { Authorization: `Bearer ${accessToken}` },\n })\n\n if (!response.ok) throw new Error(\"Failed to fetch user\")\n\n return response.json()\n}\n\nexport async function userRouteGETHandler(req: Request) {\n try {\n // Read access token from cookie\n const cookies = req.headers.get(\"cookie\") || \"\"\n let accessToken = cookies\n .split(\"; \")\n .find((c) => c.startsWith(\"access_token=\"))\n ?.split(\"=\")[1]\n const refreshToken = cookies\n .split(\"; \")\n .find((c) => c.startsWith(\"refresh_token=\"))\n ?.split(\"=\")[1]\n\n console.log(\"Access Token:\", accessToken)\n console.log(\"Refresh Token:\", refreshToken)\n\n if (!accessToken && !refreshToken) {\n return NextResponse.json({ error: \"Not authenticated\" }, { status: 401 })\n }\n\n try {\n // Try fetching user with current access token\n const user = await getUser(accessToken!)\n return NextResponse.json({ user })\n } catch (err) {\n // If token expired, refresh it\n if (!refreshToken) throw err\n\n const refreshData = await refreshAccessToken(refreshToken)\n accessToken = refreshData.access_token\n\n // Update cookies with new access token and refresh token if returned\n const res = NextResponse.json({ user: await getUser(accessToken!) })\n\n res.cookies.set(\"access_token\", refreshData.access_token, {\n httpOnly: true,\n secure: process.env.NODE_ENV === \"production\",\n path: \"/\",\n maxAge: refreshData.expires_in,\n })\n\n if (refreshData.refresh_token) {\n res.cookies.set(\"refresh_token\", refreshData.refresh_token, {\n httpOnly: true,\n secure: process.env.NODE_ENV === \"production\",\n path: \"/\",\n maxAge: 7 * 24 * 60 * 60, // 7 days\n })\n }\n\n return res\n }\n } catch (error) {\n console.error(error)\n return NextResponse.json({ error: \"Unable to fetch user\" }, { status: 500 })\n }\n}\n"],"mappings":"AAAA,SAAS,oBAAoB;AAE7B,MAAM,SAAS;AAEf,eAAe,mBAAmB,cAAsB;AACtD,QAAM,WAAW,MAAM,MAAM,oCAAoC,MAAM,iBAAiB;AAAA,IACtF,QAAQ;AAAA,IACR,SAAS;AAAA,MACP,gBAAgB;AAAA,MAChB,WAAW;AAAA,IACb;AAAA,IACA,MAAM,KAAK,UAAU,EAAE,eAAe,aAAa,CAAC;AAAA,EACtD,CAAC;AAED,MAAI,CAAC,SAAS,GAAI,OAAM,IAAI,MAAM,yBAAyB;AAE3D,SAAO,SAAS,KAAK;AACvB;AAEA,eAAe,QAAQ,aAAqB;AAC1C,QAAM,WAAW,MAAM,MAAM,oCAAoC,MAAM,SAAS;AAAA,IAC9E,SAAS,EAAE,eAAe,UAAU,WAAW,GAAG;AAAA,EACpD,CAAC;AAED,MAAI,CAAC,SAAS,GAAI,OAAM,IAAI,MAAM,sBAAsB;AAExD,SAAO,SAAS,KAAK;AACvB;AAEA,eAAsB,oBAAoB,KAAc;AACtD,MAAI;AAEF,UAAM,UAAU,IAAI,QAAQ,IAAI,QAAQ,KAAK;AAC7C,QAAI,cAAc,QACf,MAAM,IAAI,EACV,KAAK,CAAC,MAAM,EAAE,WAAW,eAAe,CAAC,GACxC,MAAM,GAAG,EAAE,CAAC;AAChB,UAAM,eAAe,QAClB,MAAM,IAAI,EACV,KAAK,CAAC,MAAM,EAAE,WAAW,gBAAgB,CAAC,GACzC,MAAM,GAAG,EAAE,CAAC;AAEhB,YAAQ,IAAI,iBAAiB,WAAW;AACxC,YAAQ,IAAI,kBAAkB,YAAY;AAE1C,QAAI,CAAC,eAAe,CAAC,cAAc;AACjC,aAAO,aAAa,KAAK,EAAE,OAAO,oBAAoB,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,IAC1E;AAEA,QAAI;AAEF,YAAM,OAAO,MAAM,QAAQ,WAAY;AACvC,aAAO,aAAa,KAAK,EAAE,KAAK,CAAC;AAAA,IACnC,SAAS,KAAK;AAEZ,UAAI,CAAC,aAAc,OAAM;AAEzB,YAAM,cAAc,MAAM,mBAAmB,YAAY;AACzD,oBAAc,YAAY;AAG1B,YAAM,MAAM,aAAa,KAAK,EAAE,MAAM,MAAM,QAAQ,WAAY,EAAE,CAAC;AAEnE,UAAI,QAAQ,IAAI,gBAAgB,YAAY,cAAc;AAAA,QACxD,UAAU;AAAA,QACV,QAAQ,QAAQ,IAAI,aAAa;AAAA,QACjC,MAAM;AAAA,QACN,QAAQ,YAAY;AAAA,MACtB,CAAC;AAED,UAAI,YAAY,eAAe;AAC7B,YAAI,QAAQ,IAAI,iBAAiB,YAAY,eAAe;AAAA,UAC1D,UAAU;AAAA,UACV,QAAQ,QAAQ,IAAI,aAAa;AAAA,UACjC,MAAM;AAAA,UACN,QAAQ,IAAI,KAAK,KAAK;AAAA;AAAA,QACxB,CAAC;AAAA,MACH;AAEA,aAAO;AAAA,IACT;AAAA,EACF,SAAS,OAAO;AACd,YAAQ,MAAM,KAAK;AACnB,WAAO,aAAa,KAAK,EAAE,OAAO,uBAAuB,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EAC7E;AACF;","names":[]}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { CustomerClient, ShopperClient } from "@enadhq/enad-ts-sdk";
|
|
2
|
-
import { enadConfig } from "../../../client/global/config";
|
|
3
|
-
const customerClient = new CustomerClient({
|
|
4
|
-
apiKey: enadConfig.server.userApiKey,
|
|
5
|
-
appId: enadConfig.client.appId,
|
|
6
|
-
groupId: enadConfig.client.groupId
|
|
7
|
-
});
|
|
8
|
-
const shopperClient = new ShopperClient({
|
|
9
|
-
apiKey: enadConfig.client.apiKey,
|
|
10
|
-
appId: enadConfig.client.appId,
|
|
11
|
-
groupId: enadConfig.client.groupId,
|
|
12
|
-
defaultLocale: enadConfig.client.defaultLocale,
|
|
13
|
-
defaultMarket: enadConfig.client.defaultMarket
|
|
14
|
-
});
|
|
15
|
-
export {
|
|
16
|
-
customerClient,
|
|
17
|
-
shopperClient
|
|
18
|
-
};
|
|
19
|
-
//# sourceMappingURL=enad.mjs.map
|