@ludo.ninja/api 1.0.4 → 1.0.6
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/build/config/index.d.ts +2 -0
- package/build/config/index.js +123 -0
- package/build/config/typePolicies.d.ts +2 -0
- package/build/config/typePolicies.js +41 -0
- package/build/cookies/index.d.ts +17 -0
- package/build/cookies/index.js +76 -0
- package/build/graphql_tools/__generated__/schema.d.ts +1301 -1301
- package/build/graphql_tools/__generated__/schema.js +1413 -1443
- package/build/hosts/index.js +21 -21
- package/build/index.d.ts +3 -1
- package/build/index.js +5 -1
- package/package.json +8 -3
- package/src/config/index.ts +143 -0
- package/src/config/typePolicies.ts +40 -0
- package/src/cookies/index.ts +82 -0
- package/src/documents/server-assets/queries/useFetchAsset/FetchAsset.graphql +8 -8
- package/src/documents/server-assets/queries/useFetchAssetByBlockchain/FetchAssetByBlockchain.graphql +2 -12
- package/src/documents/server-assets/queries/useFetchAssets/FetchAssets.graphql +8 -8
- package/src/documents/server-assets/queries/useFetchDynamicAssetLikes/FetchDynamicAssetLikes.graphql +2 -2
- package/src/documents/server-assets/queries/useFetchDynamicAssetsLikes/FetchDynamicAssetsLikes.graphql +3 -3
- package/src/documents/server-collection/queries/useFetchCollections/FetchCollectionAssets.graphql +22 -22
- package/src/documents/server-collection/queries/useFetchDynamicCollectionData/FetchDynamicCollectionData.graphql +30 -30
- package/src/documents/server-collection/queries/useFetchDynamicCollectionsData/FetchDynamicCollectionsData.graphql +30 -30
- package/src/documents/server-galleries/mutations/useAddChangeGalleryBanner/UploadGalleryBanner.graphql +2 -2
- package/src/documents/server-galleries/mutations/useCreateFavorites/CreateFavoriteListV2.graphql +13 -13
- package/src/documents/server-galleries/mutations/useCreateFavorites/CreateFavorites.graphql +8 -13
- package/src/documents/server-galleries/mutations/useCreateGallery/CreateGallery.graphql +3 -13
- package/src/documents/server-galleries/mutations/useCreateGallery/CreateGalleryV2.graphql +8 -13
- package/src/documents/server-galleries/mutations/useDeleteGalleryBanner/DeleteGalleryBanner.graphql +3 -3
- package/src/documents/server-galleries/queries/useFetchGallery/FetchGallery.graphql +16 -16
- package/src/documents/server-galleries/queries/useFetchGallery/FetchGalleryCreations.graphql +2 -10
- package/src/documents/server-galleries/queries/useFetchGallery/FetchGalleryV2.graphql +17 -17
- package/src/documents/server-galleries/queries/useFetchUserFavorites/FetchUserFavorites.graphql +5 -9
- package/src/documents/server-galleries/queries/useFetchUserFavorites/FetchUserFavoritesV2.graphql +2 -6
- package/src/documents/server-galleries/queries/useFetchUserGalleries/FetchUserGalleries.graphql +5 -9
- package/src/documents/server-galleries/queries/useFetchUserGalleries/FetchUserGalleriesV2.graphql +2 -6
- package/src/documents/server-identities/mutations/SignInMetamask.graphql +8 -16
- package/src/documents/server-identities/mutations/useAddWalletElrond/AddWalletElrond.graphql +3 -3
- package/src/documents/server-identities/mutations/useAddWalletFlow/AddWalletFlow.graphql +3 -3
- package/src/documents/server-identities/mutations/useAddWalletMetamask/AddWalletMetamask.graphql +3 -11
- package/src/documents/server-identities/mutations/useAddWalletSolana/AddWalletSolana.graphql +3 -3
- package/src/documents/server-identities/mutations/useAddWalletTezos/AddWalletTezos.graphql +3 -3
- package/src/documents/server-identities/mutations/useCreateNonce/CreateNonce.graphql +3 -7
- package/src/documents/server-identities/mutations/useRefrechToken/RefreshToken.graphql +8 -8
- package/src/documents/server-identities/mutations/useRevokeToken/RevokeToken.graphql +3 -3
- package/src/documents/server-identities/mutations/useSignInElrond/SignInElrond.graphql +9 -9
- package/src/documents/server-identities/mutations/useSignInFlow/SignInFlow.graphql +9 -9
- package/src/documents/server-identities/mutations/useSignInMetamask/SignInMetamask.graphql +1 -5
- package/src/documents/server-identities/mutations/useSignInSolana/SignInSolana.graphql +9 -9
- package/src/documents/server-identities/mutations/useSignInTezos/SignInTezos.graphql +9 -9
- package/src/documents/server-identities/mutations/useUpdateProfile/UpdateProfile.graphql +15 -20
- package/src/documents/server-identities/queries/useFetchProfile/FetchProfile.graphql +5 -5
- package/src/documents/server-identities/queries/useFetchWallets/FetchUserWallets.graphql +1 -1
- package/src/documents/server-medias/queries/useFetchUserPic/FetchUserpic.graphql +3 -3
- package/src/documents/server-preferences/queries/useFetchExpectations/FetchExpectations.graphql +6 -6
- package/src/documents/server-preferences/queries/useFetchInterests/FetchUserInterests.graphql +6 -6
- package/src/documents/server-preferences/queries/useFetchSearchResultTimeSelection/FetchSearchResultTimeSelections.graphql +6 -6
- package/src/documents/server-preferences/queries/useFetchUserExpectations/FetchUserExpectations.graphql +7 -7
- package/src/documents/server-preferences/queries/useFetchUserInterests/FetchUserInterests.graphql +8 -8
- package/src/documents/server-preferences/queries/useSearchResultBlockchainSelections/FetchSearchResultBlockchainSelections.graphql +6 -6
- package/src/documents/server-preferences/queries/useSearchResultCategorySelections/FetchSearchResultCategorySelections.graphql +6 -6
- package/src/documents/server-preferences/queries/useSearchResultStatusSelections/FetchSearchResultStatusSelection.graphql +6 -6
- package/src/documents/server-preferences/queries/useSearchResultTypeSelections/FetchSetsSearchResultTypeSelections.graphql +6 -6
- package/src/documents/server-search/queries/useFetchAssetsCount/FetchAssetsCount.graphql +1 -1
- package/src/documents/server-search/queries/useFetchCollections/FindCollections.graphql +15 -25
- package/src/documents/server-search/queries/useFetchCreationsByItemType/FetchCreationsByItemType.graphql +2 -10
- package/src/documents/server-search/queries/useFetchNetWorth/FetchProfile.graphql +5 -5
- package/src/documents/server-search/queries/useFindCreations/FindCreations.graphql +2 -12
- package/src/documents/server-search/queries/useFindSets/FindSets.graphql +2 -12
- package/src/documents/server-search/queries/useFindShowcaseItems/FetchShowcaseItems.graphql +2 -12
- package/src/documents/server-search/queries/useFindUserCreations/FindUserCreations.graphql +3 -12
- package/src/documents/server-search/queries/useFindUserShowcaseItems/FetchFindUserShowcaseItems.graphql +2 -12
- package/src/graphql_tools/__generated__/schema.graphql +76 -22
- package/src/graphql_tools/__generated__/schema.ts +5115 -3499
- package/src/graphql_tools/schemas/asset/type/media.graphqls +1 -1
- package/src/graphql_tools/schemas/assets/asset/type/assetMarket.graphqls +1 -1
- package/src/graphql_tools/schemas/assets/asset/type/assetPrice.graphqls +1 -1
- package/src/graphql_tools/schemas/assets/asset/type/attribute.graphqls +1 -1
- package/src/graphql_tools/schemas/assets/asset/type/media.graphqls +0 -1
- package/src/graphql_tools/schemas/collection/type/attribute.graphqls +1 -1
- package/src/graphql_tools/schemas/collection/type/collection.graphqls +1 -1
- package/src/graphql_tools/schemas/collection/type/collectionAsset.graphqls +27 -28
- package/src/graphql_tools/schemas/collection/type/dynamicCollectionData.graphqls +1 -1
- package/src/graphql_tools/schemas/creation/query.graphqls +1 -5
- package/src/graphql_tools/schemas/galleries/gallery/input/galleryCreation.graphqls +1 -2
- package/src/graphql_tools/schemas/galleries/gallery/mutation.graphqls +6 -30
- package/src/graphql_tools/schemas/galleries/gallery/query.graphqls +7 -29
- package/src/graphql_tools/schemas/gallery/query.graphqls +3 -15
- package/src/graphql_tools/schemas/identities/identity/mutation.graphqls +6 -31
- package/src/graphql_tools/schemas/identities/profile/input/inputProfile.graphqls +2 -6
- package/src/graphql_tools/schemas/identities/profile/input/inputSocial.graphqls +3 -11
- package/src/graphql_tools/schemas/images/mutation.graphqls +4 -4
- package/src/graphql_tools/schemas/moderations/asset/mutation.graphqls +1 -3
- package/src/graphql_tools/schemas/moderations/asset/query.graphqls +2 -8
- package/src/graphql_tools/schemas/moderations/user/query.graphqls +1 -5
- package/src/graphql_tools/schemas/reports/asset/mutation.graphqls +1 -4
- package/src/graphql_tools/schemas/reports/asset/query.graphqls +1 -5
- package/src/graphql_tools/schemas/reports/gallery/mutation.graphqls +1 -4
- package/src/graphql_tools/schemas/reports/gallery/query.graphqls +1 -5
- package/src/graphql_tools/schemas/reports/schema.graphqls +1 -4
- package/src/graphql_tools/schemas/reports/user/query.graphqls +1 -5
- package/src/graphql_tools/schemas/schema.graphqls +1 -4
- package/src/graphql_tools/schemas/search/collection/query.graphqls +2 -11
- package/src/graphql_tools/schemas/search/creation/query.graphqls +8 -6
- package/src/graphql_tools/schemas/search/creation/type/profile.graphqls +1 -1
- package/src/graphql_tools/schemas/search/schema.graphqls +1 -4
- package/src/hosts/index.ts +21 -30
- package/src/index.ts +3 -1
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.initializeApollo = void 0;
|
|
7
|
+
const client_1 = require("@apollo/client");
|
|
8
|
+
const hosts_1 = require("../hosts");
|
|
9
|
+
const schema_1 = require("../graphql_tools/__generated__/schema");
|
|
10
|
+
const error_1 = require("@apollo/client/link/error");
|
|
11
|
+
const context_1 = require("@apollo/client/link/context");
|
|
12
|
+
const apollo_upload_client_1 = require("apollo-upload-client");
|
|
13
|
+
const deepmerge_1 = __importDefault(require("deepmerge"));
|
|
14
|
+
const lodash_isequal_1 = __importDefault(require("lodash.isequal"));
|
|
15
|
+
const cookies_1 = require("../cookies");
|
|
16
|
+
const typePolicies_1 = require("./typePolicies");
|
|
17
|
+
let isRefreshing = false;
|
|
18
|
+
let pendingRequests = [];
|
|
19
|
+
const resolvePendingRequests = () => {
|
|
20
|
+
pendingRequests.map((callback) => callback());
|
|
21
|
+
pendingRequests = [];
|
|
22
|
+
};
|
|
23
|
+
let apolloClient;
|
|
24
|
+
const errorLink = (0, error_1.onError)(({ graphQLErrors, networkError, operation, forward }) => {
|
|
25
|
+
const { authToken, refreshToken } = (0, cookies_1.getCookies)();
|
|
26
|
+
if (graphQLErrors) {
|
|
27
|
+
graphQLErrors.forEach(({ message, locations, path }) => console.warn(`[GraphQL error]: Message: ${message}, Location: ${locations}, Path: ${path}`));
|
|
28
|
+
}
|
|
29
|
+
if (networkError) {
|
|
30
|
+
console.warn(`[Network error]: ${networkError}`);
|
|
31
|
+
if (networkError.message.includes("401") && authToken) {
|
|
32
|
+
let forward$;
|
|
33
|
+
const client = apolloClient ?? createApolloClient();
|
|
34
|
+
if (!isRefreshing) {
|
|
35
|
+
isRefreshing = true;
|
|
36
|
+
forward$ = (0, client_1.fromPromise)(client
|
|
37
|
+
.mutate({
|
|
38
|
+
context: { uri: hosts_1.authHost },
|
|
39
|
+
variables: { refreshToken },
|
|
40
|
+
mutation: schema_1.RefreshTokenDocument,
|
|
41
|
+
})
|
|
42
|
+
.then(({ data: { refreshToken: { tokenAuth, tokenRefresh }, }, }) => {
|
|
43
|
+
(0, cookies_1.refreshCookies)(tokenAuth, tokenRefresh);
|
|
44
|
+
resolvePendingRequests();
|
|
45
|
+
return true;
|
|
46
|
+
})
|
|
47
|
+
.catch(async () => {
|
|
48
|
+
await apolloClient?.mutate({
|
|
49
|
+
context: { uri: hosts_1.authHost },
|
|
50
|
+
mutation: schema_1.RevokeTokenDocument,
|
|
51
|
+
});
|
|
52
|
+
(0, cookies_1.destroyCookies)();
|
|
53
|
+
pendingRequests = [];
|
|
54
|
+
window.location.reload();
|
|
55
|
+
return false;
|
|
56
|
+
})
|
|
57
|
+
.finally(() => {
|
|
58
|
+
isRefreshing = false;
|
|
59
|
+
})).filter((value) => Boolean(value));
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
forward$ = (0, client_1.fromPromise)(new Promise((resolve) => {
|
|
63
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
64
|
+
// @ts-ignore
|
|
65
|
+
pendingRequests.push(() => resolve());
|
|
66
|
+
}));
|
|
67
|
+
}
|
|
68
|
+
return forward$.flatMap(() => forward(operation));
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
const authLink = (0, context_1.setContext)(async (operation, { headers }) => {
|
|
73
|
+
const { authToken } = (0, cookies_1.getCookies)();
|
|
74
|
+
const header = authToken
|
|
75
|
+
? {
|
|
76
|
+
headers: { ...headers, "x-client-authorization": `${authToken}` },
|
|
77
|
+
}
|
|
78
|
+
: { headers: { ...headers } };
|
|
79
|
+
return {
|
|
80
|
+
headers: header.headers,
|
|
81
|
+
};
|
|
82
|
+
});
|
|
83
|
+
const httpLink = (0, apollo_upload_client_1.createUploadLink)({
|
|
84
|
+
uri: hosts_1.authHost,
|
|
85
|
+
});
|
|
86
|
+
function createApolloClient() {
|
|
87
|
+
return new client_1.ApolloClient({
|
|
88
|
+
ssrMode: typeof window === "undefined",
|
|
89
|
+
link: (0, client_1.from)([errorLink, authLink, httpLink]),
|
|
90
|
+
cache: new client_1.InMemoryCache({
|
|
91
|
+
typePolicies: typePolicies_1.typePoliciesPortal,
|
|
92
|
+
addTypename: true,
|
|
93
|
+
resultCaching: true,
|
|
94
|
+
}),
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
function initializeApollo(initialState = null) {
|
|
98
|
+
const _apolloClient = apolloClient ?? createApolloClient();
|
|
99
|
+
// If your page has Next.js data fetching methods that use Apollo Client, the initial state
|
|
100
|
+
// gets hydrated here
|
|
101
|
+
if (initialState) {
|
|
102
|
+
// Get existing cache, loaded during client side data fetching
|
|
103
|
+
const existingCache = _apolloClient.extract();
|
|
104
|
+
// Merge the initialState from getStaticProps/getServerSideProps in the existing cache
|
|
105
|
+
const data = (0, deepmerge_1.default)(existingCache, initialState, {
|
|
106
|
+
// combine arrays using object equality (like in sets)
|
|
107
|
+
arrayMerge: (destinationArray, sourceArray) => [
|
|
108
|
+
...sourceArray,
|
|
109
|
+
...destinationArray.filter((d) => sourceArray.every((s) => !(0, lodash_isequal_1.default)(d, s))),
|
|
110
|
+
],
|
|
111
|
+
});
|
|
112
|
+
// Restore the cache with the merged data
|
|
113
|
+
_apolloClient.cache.restore(data);
|
|
114
|
+
}
|
|
115
|
+
// For SSG and SSR always create a new Apollo Client
|
|
116
|
+
if (typeof window === "undefined")
|
|
117
|
+
return _apolloClient;
|
|
118
|
+
// Create the Apollo Client once in the client
|
|
119
|
+
if (!apolloClient)
|
|
120
|
+
apolloClient = _apolloClient;
|
|
121
|
+
return _apolloClient;
|
|
122
|
+
}
|
|
123
|
+
exports.initializeApollo = initializeApollo;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.typePoliciesPortal = void 0;
|
|
4
|
+
exports.typePoliciesPortal = {
|
|
5
|
+
Query: {
|
|
6
|
+
fields: {
|
|
7
|
+
fetchAsset: {
|
|
8
|
+
keyArgs: ["rank", "likes", "assetId"],
|
|
9
|
+
merge: true,
|
|
10
|
+
},
|
|
11
|
+
findUserCreations: {
|
|
12
|
+
keyArgs: ["itemId"],
|
|
13
|
+
merge: true,
|
|
14
|
+
},
|
|
15
|
+
fetchUserGalleries: {
|
|
16
|
+
keyArgs: ["galleryId"],
|
|
17
|
+
merge: true,
|
|
18
|
+
},
|
|
19
|
+
fetchUserFavorites: {
|
|
20
|
+
keyArgs: ["galleryId"],
|
|
21
|
+
merge: true,
|
|
22
|
+
},
|
|
23
|
+
fetchCreations: {
|
|
24
|
+
keyArgs: ["itemId"],
|
|
25
|
+
merge: true,
|
|
26
|
+
},
|
|
27
|
+
CollectionPage: {
|
|
28
|
+
keyArgs: ["collectionId"],
|
|
29
|
+
merge: true,
|
|
30
|
+
},
|
|
31
|
+
CreationsPage: {
|
|
32
|
+
keyArgs: ["itemId"],
|
|
33
|
+
merge: true,
|
|
34
|
+
},
|
|
35
|
+
fetchCreationsByItemType: {
|
|
36
|
+
keyArgs: ["nextPageToken"],
|
|
37
|
+
merge: true,
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
declare const assignCookies: (userId: string, wallets: Array<string>, authToken: string, refreshToken: string, newUser: string) => void;
|
|
2
|
+
declare const refreshCookies: (authToken: string, refreshToken: string) => void;
|
|
3
|
+
declare const getCookies: () => {
|
|
4
|
+
authToken: string;
|
|
5
|
+
refreshToken: string;
|
|
6
|
+
userId: string;
|
|
7
|
+
wallets: string;
|
|
8
|
+
newUser: string;
|
|
9
|
+
} | {
|
|
10
|
+
authToken: null;
|
|
11
|
+
refreshToken: null;
|
|
12
|
+
userId: null;
|
|
13
|
+
wallets: null;
|
|
14
|
+
newUser: null;
|
|
15
|
+
};
|
|
16
|
+
declare const destroyCookies: () => void;
|
|
17
|
+
export { assignCookies, refreshCookies, destroyCookies, getCookies };
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getCookies = exports.destroyCookies = exports.refreshCookies = exports.assignCookies = void 0;
|
|
4
|
+
const nookies_1 = require("nookies");
|
|
5
|
+
const assignCookies = (userId, wallets, authToken, refreshToken, newUser) => {
|
|
6
|
+
if (userId)
|
|
7
|
+
(0, nookies_1.setCookie)(null, "userId", userId, { maxAge: 24 * 60 * 60, path: "/", domain: "ludo.ninja" });
|
|
8
|
+
if (wallets)
|
|
9
|
+
(0, nookies_1.setCookie)(null, "wallets", wallets.join(), {
|
|
10
|
+
maxAge: 24 * 60 * 60,
|
|
11
|
+
path: "/",
|
|
12
|
+
domain: "ludo.ninja",
|
|
13
|
+
});
|
|
14
|
+
if (authToken)
|
|
15
|
+
(0, nookies_1.setCookie)(null, "authToken", authToken, {
|
|
16
|
+
maxAge: 24 * 60 * 60,
|
|
17
|
+
path: "/",
|
|
18
|
+
domain: "ludo.ninja",
|
|
19
|
+
});
|
|
20
|
+
if (refreshToken)
|
|
21
|
+
(0, nookies_1.setCookie)(null, "refreshToken", refreshToken, {
|
|
22
|
+
maxAge: 24 * 60 * 60,
|
|
23
|
+
path: "/",
|
|
24
|
+
domain: "ludo.ninja",
|
|
25
|
+
});
|
|
26
|
+
if (newUser)
|
|
27
|
+
(0, nookies_1.setCookie)(null, "newUser", newUser, {
|
|
28
|
+
maxAge: 24 * 60 * 60,
|
|
29
|
+
path: "/",
|
|
30
|
+
domain: "ludo.ninja",
|
|
31
|
+
});
|
|
32
|
+
};
|
|
33
|
+
exports.assignCookies = assignCookies;
|
|
34
|
+
const refreshCookies = (authToken, refreshToken) => {
|
|
35
|
+
if (authToken)
|
|
36
|
+
(0, nookies_1.setCookie)(null, "authToken", authToken, {
|
|
37
|
+
maxAge: 24 * 60 * 60,
|
|
38
|
+
path: "/",
|
|
39
|
+
domain: "ludo.ninja",
|
|
40
|
+
});
|
|
41
|
+
if (refreshToken)
|
|
42
|
+
(0, nookies_1.setCookie)(null, "refreshToken", refreshToken, {
|
|
43
|
+
maxAge: 24 * 60 * 60,
|
|
44
|
+
path: "/",
|
|
45
|
+
domain: "ludo.ninja",
|
|
46
|
+
});
|
|
47
|
+
};
|
|
48
|
+
exports.refreshCookies = refreshCookies;
|
|
49
|
+
const getCookies = () => {
|
|
50
|
+
const { authToken, refreshToken, userId, wallets, newUser } = (0, nookies_1.parseCookies)();
|
|
51
|
+
if (authToken && refreshToken && userId && wallets && newUser) {
|
|
52
|
+
return {
|
|
53
|
+
authToken,
|
|
54
|
+
refreshToken,
|
|
55
|
+
userId,
|
|
56
|
+
wallets,
|
|
57
|
+
newUser,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
return {
|
|
61
|
+
authToken: null,
|
|
62
|
+
refreshToken: null,
|
|
63
|
+
userId: null,
|
|
64
|
+
wallets: null,
|
|
65
|
+
newUser: null,
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
exports.getCookies = getCookies;
|
|
69
|
+
const destroyCookies = () => {
|
|
70
|
+
(0, nookies_1.destroyCookie)(null, "userId", { path: "/" });
|
|
71
|
+
(0, nookies_1.destroyCookie)(null, "wallets", { path: "/" });
|
|
72
|
+
(0, nookies_1.destroyCookie)(null, "authToken", { path: "/" });
|
|
73
|
+
(0, nookies_1.destroyCookie)(null, "refreshToken", { path: "/" });
|
|
74
|
+
(0, nookies_1.destroyCookie)(null, "newUser", { path: "/" });
|
|
75
|
+
};
|
|
76
|
+
exports.destroyCookies = destroyCookies;
|