@unchainedshop/api 3.0.8 → 3.1.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 (89) hide show
  1. package/lib/express/createApolloMiddleware.d.ts +4 -0
  2. package/lib/express/createApolloMiddleware.d.ts.map +1 -0
  3. package/lib/express/createApolloMiddleware.js +36 -0
  4. package/lib/express/createApolloMiddleware.js.map +1 -0
  5. package/lib/express/createSingleSignOnMiddleware.d.ts +5 -0
  6. package/lib/express/createSingleSignOnMiddleware.d.ts.map +1 -0
  7. package/lib/express/createSingleSignOnMiddleware.js +71 -0
  8. package/lib/express/createSingleSignOnMiddleware.js.map +1 -0
  9. package/lib/fastify/index.d.ts.map +1 -1
  10. package/lib/fastify/index.js +1 -0
  11. package/lib/fastify/index.js.map +1 -1
  12. package/lib/hashPassword.d.ts +2 -0
  13. package/lib/hashPassword.d.ts.map +1 -0
  14. package/lib/hashPassword.js +5 -0
  15. package/lib/hashPassword.js.map +1 -0
  16. package/lib/resolvers/mutations/accounts/buildSecretTOTPAuthURL.d.ts +3 -0
  17. package/lib/resolvers/mutations/accounts/buildSecretTOTPAuthURL.d.ts.map +1 -0
  18. package/lib/resolvers/mutations/accounts/buildSecretTOTPAuthURL.js +6 -0
  19. package/lib/resolvers/mutations/accounts/buildSecretTOTPAuthURL.js.map +1 -0
  20. package/lib/resolvers/mutations/accounts/disableTOTP.d.ts +6 -0
  21. package/lib/resolvers/mutations/accounts/disableTOTP.d.ts.map +1 -0
  22. package/lib/resolvers/mutations/accounts/disableTOTP.js +27 -0
  23. package/lib/resolvers/mutations/accounts/disableTOTP.js.map +1 -0
  24. package/lib/resolvers/mutations/accounts/enableTOTP.d.ts +6 -0
  25. package/lib/resolvers/mutations/accounts/enableTOTP.d.ts.map +1 -0
  26. package/lib/resolvers/mutations/accounts/enableTOTP.js +20 -0
  27. package/lib/resolvers/mutations/accounts/enableTOTP.js.map +1 -0
  28. package/lib/resolvers/mutations/accounts/linkOAuthAccount.d.ts +7 -0
  29. package/lib/resolvers/mutations/accounts/linkOAuthAccount.d.ts.map +1 -0
  30. package/lib/resolvers/mutations/accounts/linkOAuthAccount.js +30 -0
  31. package/lib/resolvers/mutations/accounts/linkOAuthAccount.js.map +1 -0
  32. package/lib/resolvers/mutations/accounts/loginWithOAuth.d.ts +8 -0
  33. package/lib/resolvers/mutations/accounts/loginWithOAuth.d.ts.map +1 -0
  34. package/lib/resolvers/mutations/accounts/loginWithOAuth.js +25 -0
  35. package/lib/resolvers/mutations/accounts/loginWithOAuth.js.map +1 -0
  36. package/lib/resolvers/mutations/accounts/logoutAllSessions.d.ts +5 -0
  37. package/lib/resolvers/mutations/accounts/logoutAllSessions.d.ts.map +1 -0
  38. package/lib/resolvers/mutations/accounts/logoutAllSessions.js +20 -0
  39. package/lib/resolvers/mutations/accounts/logoutAllSessions.js.map +1 -0
  40. package/lib/resolvers/mutations/accounts/unlinkOAuthAccount.d.ts +6 -0
  41. package/lib/resolvers/mutations/accounts/unlinkOAuthAccount.d.ts.map +1 -0
  42. package/lib/resolvers/mutations/accounts/unlinkOAuthAccount.js +13 -0
  43. package/lib/resolvers/mutations/accounts/unlinkOAuthAccount.js.map +1 -0
  44. package/lib/resolvers/mutations/assortments/addAssortmentMedia.d.ts +6 -0
  45. package/lib/resolvers/mutations/assortments/addAssortmentMedia.d.ts.map +1 -0
  46. package/lib/resolvers/mutations/assortments/addAssortmentMedia.js +18 -0
  47. package/lib/resolvers/mutations/assortments/addAssortmentMedia.js.map +1 -0
  48. package/lib/resolvers/mutations/products/addProductMedia.d.ts +6 -0
  49. package/lib/resolvers/mutations/products/addProductMedia.d.ts.map +1 -0
  50. package/lib/resolvers/mutations/products/addProductMedia.js +18 -0
  51. package/lib/resolvers/mutations/products/addProductMedia.js.map +1 -0
  52. package/lib/resolvers/mutations/users/updateUserAvatar.d.ts +6 -0
  53. package/lib/resolvers/mutations/users/updateUserAvatar.d.ts.map +1 -0
  54. package/lib/resolvers/mutations/users/updateUserAvatar.js +22 -0
  55. package/lib/resolvers/mutations/users/updateUserAvatar.js.map +1 -0
  56. package/lib/resolvers/mutations/utils/getOrderCart.d.ts +7 -0
  57. package/lib/resolvers/mutations/utils/getOrderCart.d.ts.map +1 -0
  58. package/lib/resolvers/mutations/utils/getOrderCart.js +13 -0
  59. package/lib/resolvers/mutations/utils/getOrderCart.js.map +1 -0
  60. package/lib/resolvers/type/dispatch-types.d.ts +15 -0
  61. package/lib/resolvers/type/dispatch-types.d.ts.map +1 -0
  62. package/lib/resolvers/type/dispatch-types.js +16 -0
  63. package/lib/resolvers/type/dispatch-types.js.map +1 -0
  64. package/lib/resolvers/type/oauth-account.d.ts +6 -0
  65. package/lib/resolvers/type/oauth-account.d.ts.map +1 -0
  66. package/lib/resolvers/type/oauth-account.js +7 -0
  67. package/lib/resolvers/type/oauth-account.js.map +1 -0
  68. package/lib/resolvers/type/oauth-provider.d.ts +6 -0
  69. package/lib/resolvers/type/oauth-provider.d.ts.map +1 -0
  70. package/lib/resolvers/type/oauth-provider.js +6 -0
  71. package/lib/resolvers/type/oauth-provider.js.map +1 -0
  72. package/lib/resolvers/type/stock-types.d.ts +14 -0
  73. package/lib/resolvers/type/stock-types.d.ts.map +1 -0
  74. package/lib/resolvers/type/stock-types.js +15 -0
  75. package/lib/resolvers/type/stock-types.js.map +1 -0
  76. package/lib/roles/all.d.ts.map +1 -1
  77. package/lib/roles/all.js +2 -1
  78. package/lib/roles/all.js.map +1 -1
  79. package/lib/schema/types/product/product.d.ts.map +1 -1
  80. package/lib/schema/types/product/product.js +0 -1
  81. package/lib/schema/types/product/product.js.map +1 -1
  82. package/lib/user-context.d.ts +7 -0
  83. package/lib/user-context.d.ts.map +1 -0
  84. package/lib/user-context.js +76 -0
  85. package/lib/user-context.js.map +1 -0
  86. package/package.json +9 -9
  87. package/src/fastify/index.ts +1 -0
  88. package/src/roles/all.ts +3 -1
  89. package/src/schema/types/product/product.ts +0 -1
@@ -0,0 +1,4 @@
1
+ export default function createApolloMiddleware(apolloGraphQLServer: any, { corsOrigins }?: {
2
+ corsOrigins?: any;
3
+ }): any[];
4
+ //# sourceMappingURL=createApolloMiddleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createApolloMiddleware.d.ts","sourceRoot":"","sources":["../../src/express/createApolloMiddleware.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,mBAAmB,KAAA,EAAE,EAAE,WAAuB,EAAE;;CAAK,SAiCnG"}
@@ -0,0 +1,36 @@
1
+ import cors from 'cors';
2
+ import { expressMiddleware } from '@apollo/server/express4';
3
+ import graphqlUploadExpress from 'graphql-upload/graphqlUploadExpress.mjs';
4
+ import e from 'express';
5
+ import { getCurrentContextResolver } from '../context.js';
6
+ export default function createApolloMiddleware(apolloGraphQLServer, { corsOrigins = undefined } = {}) {
7
+ const contextResolver = getCurrentContextResolver();
8
+ const originFn = corsOrigins && Array.isArray(corsOrigins)
9
+ ? (origin, callback) => {
10
+ if (corsOrigins.length === 0 || !origin) {
11
+ callback(null, true);
12
+ return;
13
+ }
14
+ if (corsOrigins.indexOf(origin) !== -1) {
15
+ callback(null, true);
16
+ }
17
+ else {
18
+ callback(new Error('Not allowed by CORS'));
19
+ }
20
+ }
21
+ : corsOrigins;
22
+ return [
23
+ cors(!originFn
24
+ ? undefined
25
+ : {
26
+ origin: originFn,
27
+ credentials: true,
28
+ }),
29
+ e.json(),
30
+ graphqlUploadExpress({ maxFileSize: 10000000, maxFiles: 10 }),
31
+ expressMiddleware(apolloGraphQLServer, {
32
+ context: contextResolver,
33
+ }),
34
+ ];
35
+ }
36
+ //# sourceMappingURL=createApolloMiddleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createApolloMiddleware.js","sourceRoot":"","sources":["../../src/express/createApolloMiddleware.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,oBAAoB,MAAM,yCAAyC,CAAC;AAC3E,OAAO,CAAC,MAAM,SAAS,CAAC;AACxB,OAAO,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAE1D,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,mBAAmB,EAAE,EAAE,WAAW,GAAG,SAAS,EAAE,GAAG,EAAE;IAClG,MAAM,eAAe,GAAG,yBAAyB,EAAE,CAAC;IAEpD,MAAM,QAAQ,GACZ,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;QACvC,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE;YACnB,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACxC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YACD,IAAI,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gBACvC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QACH,CAAC,CAAC,WAAW,CAAC;IAElB,OAAO;QACL,IAAI,CACF,CAAC,QAAQ;YACP,CAAC,CAAC,SAAS;YACX,CAAC,CAAC;gBACE,MAAM,EAAE,QAAQ;gBAChB,WAAW,EAAE,IAAI;aAClB,CACN;QACD,CAAC,CAAC,IAAI,EAAE;QACR,oBAAoB,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAC7D,iBAAiB,CAAC,mBAAmB,EAAE;YACrC,OAAO,EAAE,eAAe;SACzB,CAAC;KACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { IncomingMessage } from 'http';
2
+ export default function singleSignOnMiddleware(req: IncomingMessage & {
3
+ query?: any;
4
+ }, res: any, next: any): Promise<void>;
5
+ //# sourceMappingURL=createSingleSignOnMiddleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createSingleSignOnMiddleware.d.ts","sourceRoot":"","sources":["../../src/express/createSingleSignOnMiddleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAmEvC,wBAA8B,sBAAsB,CAAC,GAAG,EAAE,eAAe,GAAG;IAAE,KAAK,CAAC,EAAE,GAAG,CAAA;CAAE,EAAE,GAAG,KAAA,EAAE,IAAI,KAAA,iBAoBrG"}
@@ -0,0 +1,71 @@
1
+ import { createLogger } from '@unchainedshop/logger';
2
+ import cookie from 'cookie';
3
+ import { getCurrentContextResolver } from '../context.js';
4
+ const { NODE_ENV, UNCHAINED_CLOUD_ENDPOINT, UNCHAINED_COOKIE_NAME = 'unchained_token', UNCHAINED_COOKIE_DOMAIN, } = process.env;
5
+ const logger = createLogger('unchained:unchained-cloud-sso');
6
+ const loginWithSingleSignOn = async (remoteToken, context) => {
7
+ const domain = UNCHAINED_COOKIE_DOMAIN;
8
+ const result = await fetch(UNCHAINED_CLOUD_ENDPOINT, {
9
+ method: 'POST',
10
+ headers: {
11
+ 'content-type': 'application/json',
12
+ },
13
+ duplex: 'half',
14
+ body: JSON.stringify({
15
+ operationName: 'consume',
16
+ variables: {
17
+ token: remoteToken,
18
+ },
19
+ query: 'mutation consume($token: ID!) { controlConsumeSingleSignOnToken(token: $token) { domain } }',
20
+ }),
21
+ });
22
+ const json = await result.json();
23
+ if (json?.errors?.length > 0) {
24
+ throw new Error(json.errors[0].message);
25
+ }
26
+ if (domain === 'localhost' || domain === json?.data?.controlConsumeSingleSignOnToken?.domain) {
27
+ // create sso user if not exist and login
28
+ const ssoUserId = (await context.modules.users.findUser({ username: 'sso' }))?._id ||
29
+ (await context.modules.accounts.createUser({
30
+ username: 'sso',
31
+ roles: ['admin'],
32
+ email: 'sso@unchained.local',
33
+ password: null,
34
+ guest: false,
35
+ }, { skipMessaging: true }));
36
+ const { tokenExpires, token } = await context.modules.accounts.createLoginToken(ssoUserId, context);
37
+ const expires = new Date(tokenExpires || new Date().getTime() + 100000);
38
+ const authCookie = cookie.serialize(UNCHAINED_COOKIE_NAME, token, {
39
+ domain,
40
+ httpOnly: true,
41
+ expires,
42
+ path: '/',
43
+ sameSite: 'strict',
44
+ secure: NODE_ENV === 'production',
45
+ });
46
+ return authCookie;
47
+ }
48
+ throw new Error('Invalid token/domain pair');
49
+ };
50
+ export default async function singleSignOnMiddleware(req, res, next) {
51
+ try {
52
+ if (req.query?.token && UNCHAINED_CLOUD_ENDPOINT) {
53
+ const contextResolver = getCurrentContextResolver();
54
+ const context = await contextResolver({ req, res });
55
+ const authCookie = await loginWithSingleSignOn(req.query.token, context);
56
+ if (authCookie) {
57
+ res.writeHead(303, {
58
+ 'Set-Cookie': authCookie,
59
+ Location: '/',
60
+ });
61
+ res.end();
62
+ return;
63
+ }
64
+ }
65
+ }
66
+ catch (e) {
67
+ logger.error(e.message);
68
+ }
69
+ next();
70
+ }
71
+ //# sourceMappingURL=createSingleSignOnMiddleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createSingleSignOnMiddleware.js","sourceRoot":"","sources":["../../src/express/createSingleSignOnMiddleware.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fastify/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAMpD,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAkB,MAAM,SAAS,CAAC;AAiF7E,eAAO,MAAM,eAAe,WAAY,MAAM,KAAG,iBAehD,CAAC;AAEF,eAAO,MAAM,OAAO,YACT,eAAe,2BAIrB;IAAE,cAAc,EAAE,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC;IAAC,YAAY,EAAE,aAAa,CAAA;CAAE,6CAG7F;IAAE,mCAAmC,CAAC,EAAE,OAAO,CAAA;CAAE,SAuFrD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fastify/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAMpD,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAkB,MAAM,SAAS,CAAC;AAiF7E,eAAO,MAAM,eAAe,WAAY,MAAM,KAAG,iBAehD,CAAC;AAEF,eAAO,MAAM,OAAO,YACT,eAAe,2BAIrB;IAAE,cAAc,EAAE,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC;IAAC,YAAY,EAAE,aAAa,CAAA;CAAE,6CAG7F;IAAE,mCAAmC,CAAC,EAAE,OAAO,CAAA;CAAE,SAwFrD,CAAC"}
@@ -144,6 +144,7 @@ export const connect = (fastify, { graphqlHandler, db, }, { allowRemoteToLocalho
144
144
  handler: ercMetadataHandler,
145
145
  });
146
146
  fastify.register((s, opts, registered) => {
147
+ s.removeAllContentTypeParsers();
147
148
  s.addContentTypeParser('*', function (req, payload, done) {
148
149
  done(null);
149
150
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fastify/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fastify/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const hashPassword: (password: string) => string;
2
+ //# sourceMappingURL=hashPassword.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hashPassword.d.ts","sourceRoot":"","sources":["../src/hashPassword.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,aAAc,MAAM,KAAG,MAE/C,CAAC"}
@@ -0,0 +1,5 @@
1
+ import crypto from 'crypto';
2
+ export const hashPassword = (password) => {
3
+ return crypto.createHash('sha256').update(password).digest('hex');
4
+ };
5
+ //# sourceMappingURL=hashPassword.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hashPassword.js","sourceRoot":"","sources":["../src/hashPassword.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,QAAgB,EAAU,EAAE;IACvD,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACpE,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Context, Root } from '@unchainedshop/types/api.js';
2
+ export default function buildTOTPSecret(root: Root, _: any, { modules, userId }: Context): Promise<string>;
3
+ //# sourceMappingURL=buildSecretTOTPAuthURL.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildSecretTOTPAuthURL.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/mutations/accounts/buildSecretTOTPAuthURL.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAE5D,wBAA8B,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,mBAI7F"}
@@ -0,0 +1,6 @@
1
+ import { log } from '@unchainedshop/logger';
2
+ export default async function buildTOTPSecret(root, _, { modules, userId }) {
3
+ log('mutation buildTOTPSecret', { userId });
4
+ return modules.accounts.buildTOTPSecret();
5
+ }
6
+ //# sourceMappingURL=buildSecretTOTPAuthURL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildSecretTOTPAuthURL.js","sourceRoot":"","sources":["../../../../src/resolvers/mutations/accounts/buildSecretTOTPAuthURL.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAG5C,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,eAAe,CAAC,IAAU,EAAE,CAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAW;IAC5F,GAAG,CAAC,0BAA0B,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAE5C,OAAO,OAAO,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;AAC5C,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Context, Root } from '@unchainedshop/types/api.js';
2
+ export default function disableTOTP(root: Root, params: {
3
+ code: string;
4
+ userId: string;
5
+ }, { modules, userId }: Context): Promise<import("@unchainedshop/types/user.js").User>;
6
+ //# sourceMappingURL=disableTOTP.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"disableTOTP.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/mutations/accounts/disableTOTP.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAO5D,wBAA8B,WAAW,CACvC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EACxC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,wDAwB7B"}
@@ -0,0 +1,27 @@
1
+ import { log } from '@unchainedshop/logger';
2
+ import { TwoFactorCodeDidNotMatchError, TwoFactorNotSetError, UserNotFoundError, } from '../../../errors.js';
3
+ export default async function disableTOTP(root, params, { modules, userId }) {
4
+ const normalizedUserId = params.userId || userId;
5
+ log(`mutation disableTOTP ${params.code} ${normalizedUserId}`, {
6
+ userId,
7
+ });
8
+ const user = await modules.users.findUserById(normalizedUserId);
9
+ if (!user)
10
+ throw new UserNotFoundError({ userId: normalizedUserId });
11
+ try {
12
+ await modules.accounts.disableTOTP(normalizedUserId, params.code);
13
+ }
14
+ catch (e) {
15
+ if (e?.message?.includes("2FA code didn't match"))
16
+ throw new TwoFactorCodeDidNotMatchError({
17
+ submittedCode: params.code,
18
+ userId: params?.userId || userId,
19
+ });
20
+ else if (e?.message?.includes('2FA not set'))
21
+ throw new TwoFactorNotSetError({ userId: params?.userId || userId });
22
+ else
23
+ throw e;
24
+ }
25
+ return user;
26
+ }
27
+ //# sourceMappingURL=disableTOTP.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"disableTOTP.js","sourceRoot":"","sources":["../../../../src/resolvers/mutations/accounts/disableTOTP.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EACL,6BAA6B,EAC7B,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,WAAW,CACvC,IAAU,EACV,MAAwC,EACxC,EAAE,OAAO,EAAE,MAAM,EAAW;IAE5B,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC;IAEjD,GAAG,CAAC,wBAAwB,MAAM,CAAC,IAAI,IAAI,gBAAgB,EAAE,EAAE;QAC7D,MAAM;KACP,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;IAChE,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,iBAAiB,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;IACrE,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,uBAAuB,CAAC;YAC/C,MAAM,IAAI,6BAA6B,CAAC;gBACtC,aAAa,EAAE,MAAM,CAAC,IAAI;gBAC1B,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,MAAM;aACjC,CAAC,CAAC;aACA,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,aAAa,CAAC;YAC1C,MAAM,IAAI,oBAAoB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,MAAM,EAAE,CAAC,CAAC;;YAClE,MAAM,CAAC,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Context, Root } from '@unchainedshop/types/api.js';
2
+ export default function enableTOTP(root: Root, params: {
3
+ code: string;
4
+ secretBase32: string;
5
+ }, { modules, userId }: Context): Promise<import("@unchainedshop/types/user.js").User>;
6
+ //# sourceMappingURL=enableTOTP.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enableTOTP.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/mutations/accounts/enableTOTP.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAG5D,wBAA8B,UAAU,CACtC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAC9C,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,wDAe7B"}
@@ -0,0 +1,20 @@
1
+ import { log } from '@unchainedshop/logger';
2
+ import { TwoFactorAlreadySetError, TwoFactorCodeDidNotMatchError } from '../../../errors.js';
3
+ export default async function enableTOTP(root, params, { modules, userId }) {
4
+ log(`mutation enableTOTP ${params.code}`, {
5
+ userId,
6
+ });
7
+ try {
8
+ await modules.accounts.enableTOTP(userId, params.secretBase32, params.code);
9
+ }
10
+ catch (e) {
11
+ if (e?.message?.includes("2FA code didn't match"))
12
+ throw new TwoFactorCodeDidNotMatchError({ submittedCode: params.code, userId });
13
+ else if (e?.message?.includes('2FA already set'))
14
+ throw new TwoFactorAlreadySetError({ userId });
15
+ else
16
+ throw e;
17
+ }
18
+ return modules.users.findUserById(userId);
19
+ }
20
+ //# sourceMappingURL=enableTOTP.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enableTOTP.js","sourceRoot":"","sources":["../../../../src/resolvers/mutations/accounts/enableTOTP.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,wBAAwB,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AAE7F,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,UAAU,CACtC,IAAU,EACV,MAA8C,EAC9C,EAAE,OAAO,EAAE,MAAM,EAAW;IAE5B,GAAG,CAAC,uBAAuB,MAAM,CAAC,IAAI,EAAE,EAAE;QACxC,MAAM;KACP,CAAC,CAAC;IACH,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAC9E,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,uBAAuB,CAAC;YAC/C,MAAM,IAAI,6BAA6B,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;aAC7E,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,iBAAiB,CAAC;YAAE,MAAM,IAAI,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;;YAC5F,MAAM,CAAC,CAAC;IACf,CAAC;IAED,OAAO,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AAC5C,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { Context, Root } from '@unchainedshop/types/api.js';
2
+ export default function linkOAuthAccount(root: Root, { provider, redirectUrl, authorizationCode, }: {
3
+ provider: string;
4
+ redirectUrl: string;
5
+ authorizationCode: string;
6
+ }, context: Context): Promise<boolean>;
7
+ //# sourceMappingURL=linkOAuthAccount.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linkOAuthAccount.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/mutations/accounts/linkOAuthAccount.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAG5D,wBAA8B,gBAAgB,CAC5C,IAAI,EAAE,IAAI,EACV,EACE,QAAQ,EACR,WAAW,EACX,iBAAiB,GAClB,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAE,EACvE,OAAO,EAAE,OAAO,oBAuCjB"}
@@ -0,0 +1,30 @@
1
+ import { log } from '@unchainedshop/logger';
2
+ import { AuthOperationFailedError } from '../../../errors.js';
3
+ export default async function linkOAuthAccount(root, { provider, redirectUrl, authorizationCode, }, context) {
4
+ const { userId, user } = context;
5
+ log(`mutation linkOAuthAccount ${user.username}`, {
6
+ userId,
7
+ });
8
+ try {
9
+ const { modules } = context;
10
+ const authorizationToken = await modules.accounts.oAuth2.getAuthorizationToken(provider, authorizationCode, redirectUrl);
11
+ if (!authorizationToken)
12
+ throw new Error('Unable to authorize user');
13
+ const { id, ...data } = await modules.accounts.oAuth2.getAccountData(provider, authorizationToken);
14
+ await modules.users.updateUser({ _id: userId }, {
15
+ $push: {
16
+ [`services.oauth.${provider}`]: {
17
+ id,
18
+ authorizationToken,
19
+ authorizationCode,
20
+ data,
21
+ },
22
+ },
23
+ }, { upsert: true });
24
+ return true;
25
+ }
26
+ catch {
27
+ throw new AuthOperationFailedError({});
28
+ }
29
+ }
30
+ //# sourceMappingURL=linkOAuthAccount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linkOAuthAccount.js","sourceRoot":"","sources":["../../../../src/resolvers/mutations/accounts/linkOAuthAccount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,gBAAgB,CAC5C,IAAU,EACV,EACE,QAAQ,EACR,WAAW,EACX,iBAAiB,GACoD,EACvE,OAAgB;IAEhB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAEjC,GAAG,CAAC,6BAA6B,IAAI,CAAC,QAAQ,EAAE,EAAE;QAChD,MAAM;KACP,CAAC,CAAC;IACH,IAAI,CAAC;QACH,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAE5B,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,qBAAqB,CAC5E,QAAQ,EACR,iBAAiB,EACjB,WAAW,CACZ,CAAC;QAEF,IAAI,CAAC,kBAAkB;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAErE,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QAEnG,MAAM,OAAO,CAAC,KAAK,CAAC,UAAU,CAC5B,EAAE,GAAG,EAAE,MAAM,EAAE,EACf;YACE,KAAK,EAAE;gBACL,CAAC,kBAAkB,QAAQ,EAAE,CAAC,EAAE;oBAC9B,EAAE;oBACF,kBAAkB;oBAClB,iBAAiB;oBACjB,IAAI;iBACL;aACF;SACF,EACD,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB,CAAC;QAEF,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,wBAAwB,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC;AACH,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { Context } from '@unchainedshop/types/api.js';
2
+ declare const loginWithOAuth: (_: any, { provider, authorizationCode, redirectUrl, }: {
3
+ provider: string;
4
+ authorizationCode: string;
5
+ redirectUrl: string;
6
+ }, context: Context) => Promise<any | null>;
7
+ export default loginWithOAuth;
8
+ //# sourceMappingURL=loginWithOAuth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loginWithOAuth.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/mutations/accounts/loginWithOAuth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAStD,QAAA,MAAM,cAAc,0DAMf;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,WAC9D,OAAO,KACf,OAAO,CAAC,GAAG,GAAG,IAAI,CAkBpB,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { log } from '@unchainedshop/logger';
2
+ import { AuthOperationFailedError, EmailAlreadyExistsError, UsernameAlreadyExistsError, UsernameOrEmailRequiredError, } from '../../../errors.js';
3
+ const loginWithOAuth = async (_, { provider, authorizationCode, redirectUrl, }, context) => {
4
+ log(`mutation loginWithOAuth ${provider} ${authorizationCode}`);
5
+ try {
6
+ return context.modules.accounts.loginWithService({
7
+ service: 'oauth2',
8
+ authorizationCode,
9
+ provider,
10
+ redirectUrl,
11
+ }, context);
12
+ }
13
+ catch (e) {
14
+ if (e.code === 'EmailAlreadyExists')
15
+ throw new EmailAlreadyExistsError({});
16
+ else if (e.code === 'UsernameAlreadyExists')
17
+ throw new UsernameAlreadyExistsError({});
18
+ else if (e.code === 'UsernameOrEmailRequired')
19
+ throw new UsernameOrEmailRequiredError({});
20
+ else
21
+ throw new AuthOperationFailedError({});
22
+ }
23
+ };
24
+ export default loginWithOAuth;
25
+ //# sourceMappingURL=loginWithOAuth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loginWithOAuth.js","sourceRoot":"","sources":["../../../../src/resolvers/mutations/accounts/loginWithOAuth.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,0BAA0B,EAC1B,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAE5B,MAAM,cAAc,GAAG,KAAK,EAC1B,CAAC,EACD,EACE,QAAQ,EACR,iBAAiB,EACjB,WAAW,GAC0D,EACvE,OAAgB,EACK,EAAE;IACvB,GAAG,CAAC,2BAA2B,QAAQ,IAAI,iBAAiB,EAAE,CAAC,CAAC;IAChE,IAAI,CAAC;QACH,OAAO,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAC9C;YACE,OAAO,EAAE,QAAQ;YACjB,iBAAiB;YACjB,QAAQ;YACR,WAAW;SACZ,EACD,OAAO,CACR,CAAC;IACJ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,CAAC,IAAI,KAAK,oBAAoB;YAAE,MAAM,IAAI,uBAAuB,CAAC,EAAE,CAAC,CAAC;aACtE,IAAI,CAAC,CAAC,IAAI,KAAK,uBAAuB;YAAE,MAAM,IAAI,0BAA0B,CAAC,EAAE,CAAC,CAAC;aACjF,IAAI,CAAC,CAAC,IAAI,KAAK,yBAAyB;YAAE,MAAM,IAAI,4BAA4B,CAAC,EAAE,CAAC,CAAC;;YACrF,MAAM,IAAI,wBAAwB,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { Context, Root } from '@unchainedshop/types/api.js';
2
+ export default function logoutAllSessions(root: Root, _: any, context: Context): Promise<{
3
+ success: boolean;
4
+ }>;
5
+ //# sourceMappingURL=logoutAllSessions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logoutAllSessions.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/mutations/accounts/logoutAllSessions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAG5D,wBAA8B,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO;;GAuBnF"}
@@ -0,0 +1,20 @@
1
+ import { log, LogLevel } from '@unchainedshop/logger';
2
+ export default async function logoutAllSessions(root, _, context) {
3
+ const { modules, userId, setLoginToken } = context;
4
+ log('mutation logoutAllSessions', { userId });
5
+ const loggedOut = await modules.accounts.logout({
6
+ loginToken: context.loginToken,
7
+ userId: context.userId,
8
+ }, context);
9
+ if (loggedOut.error) {
10
+ log('Error while logging out', {
11
+ logLevel: LogLevel.Error,
12
+ ...loggedOut.error,
13
+ });
14
+ }
15
+ else {
16
+ setLoginToken(context.res, null);
17
+ }
18
+ return { success: loggedOut.success };
19
+ }
20
+ //# sourceMappingURL=logoutAllSessions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logoutAllSessions.js","sourceRoot":"","sources":["../../../../src/resolvers/mutations/accounts/logoutAllSessions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtD,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAU,EAAE,CAAM,EAAE,OAAgB;IAClF,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAEnD,GAAG,CAAC,4BAA4B,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAE9C,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,CAC7C;QACE,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,EACD,OAAO,CACR,CAAC;IAEF,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;QACpB,GAAG,CAAC,yBAAyB,EAAE;YAC7B,QAAQ,EAAE,QAAQ,CAAC,KAAK;YACxB,GAAG,SAAS,CAAC,KAAK;SACnB,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC;AACxC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Context, Root } from '@unchainedshop/types/api.js';
2
+ export default function unlinkOAuthAccount(root: Root, { provider, oAuthAccountId }: {
3
+ provider: string;
4
+ oAuthAccountId: string;
5
+ }, context: Context): Promise<import("@unchainedshop/types/user.js").User>;
6
+ //# sourceMappingURL=unlinkOAuthAccount.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unlinkOAuthAccount.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/mutations/accounts/unlinkOAuthAccount.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAE5D,wBAA8B,kBAAkB,CAC9C,IAAI,EAAE,IAAI,EACV,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,EAC1E,OAAO,EAAE,OAAO,wDAiBjB"}
@@ -0,0 +1,13 @@
1
+ import { log } from '@unchainedshop/logger';
2
+ export default async function unlinkOAuthAccount(root, { provider, oAuthAccountId }, context) {
3
+ const { modules, userId } = context;
4
+ log(`mutation unlinkOAuthAccount ${provider} ${oAuthAccountId}`, {
5
+ userId,
6
+ });
7
+ return modules.users.updateUser({ _id: userId }, {
8
+ $pull: {
9
+ [`services.oauth.${provider}`]: { id: oAuthAccountId },
10
+ },
11
+ }, { upsert: true });
12
+ }
13
+ //# sourceMappingURL=unlinkOAuthAccount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unlinkOAuthAccount.js","sourceRoot":"","sources":["../../../../src/resolvers/mutations/accounts/unlinkOAuthAccount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAG5C,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,kBAAkB,CAC9C,IAAU,EACV,EAAE,QAAQ,EAAE,cAAc,EAAgD,EAC1E,OAAgB;IAEhB,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAEpC,GAAG,CAAC,+BAA+B,QAAQ,IAAI,cAAc,EAAE,EAAE;QAC/D,MAAM;KACP,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,KAAK,CAAC,UAAU,CAC7B,EAAE,GAAG,EAAE,MAAM,EAAE,EACf;QACE,KAAK,EAAE;YACL,CAAC,kBAAkB,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE;SACvD;KACF,EACD,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Context, Root } from '@unchainedshop/types/api.js';
2
+ export default function addAssortmentMedia(root: Root, { media, assortmentId }: {
3
+ media: any;
4
+ assortmentId: any;
5
+ }, context: Context): Promise<import("@unchainedshop/types/assortments.media.js").AssortmentMedia>;
6
+ //# sourceMappingURL=addAssortmentMedia.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addAssortmentMedia.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/mutations/assortments/addAssortmentMedia.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAG5D,wBAA8B,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;;;CAAA,EAAE,OAAO,EAAE,OAAO,gFAqBrG"}
@@ -0,0 +1,18 @@
1
+ import { log } from '@unchainedshop/logger';
2
+ import { AssortmentNotFoundError, InvalidIdError } from '../../../errors.js';
3
+ export default async function addAssortmentMedia(root, { media, assortmentId }, context) {
4
+ const { modules, services, userId } = context;
5
+ log(`mutation addAssortmentMedia ${assortmentId}`, { userId });
6
+ if (!assortmentId)
7
+ throw new InvalidIdError({ assortmentId });
8
+ if (!(await modules.assortments.assortmentExists({ assortmentId })))
9
+ throw new AssortmentNotFoundError({ assortmentId });
10
+ const file = await services.files.uploadFileFromStream({
11
+ directoryName: 'assortment-media',
12
+ rawFile: media,
13
+ meta: {},
14
+ }, context);
15
+ const assortmentMedia = await modules.assortments.media.create({ assortmentId, mediaId: file._id });
16
+ return assortmentMedia;
17
+ }
18
+ //# sourceMappingURL=addAssortmentMedia.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addAssortmentMedia.js","sourceRoot":"","sources":["../../../../src/resolvers/mutations/assortments/addAssortmentMedia.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAE7E,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAU,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,OAAgB;IACpG,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC9C,GAAG,CAAC,+BAA+B,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAE/D,IAAI,CAAC,YAAY;QAAE,MAAM,IAAI,cAAc,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;IAE9D,IAAI,CAAC,CAAC,MAAM,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;QACjE,MAAM,IAAI,uBAAuB,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;IAEtD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,oBAAoB,CACpD;QACE,aAAa,EAAE,kBAAkB;QACjC,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,EAAE;KACT,EACD,OAAO,CACR,CAAC;IAEF,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAEpG,OAAO,eAAe,CAAC;AACzB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Context, Root } from '@unchainedshop/types/api.js';
2
+ export default function addProductMedia(root: Root, { media, productId }: {
3
+ media: any;
4
+ productId: any;
5
+ }, context: Context): Promise<import("@unchainedshop/types/products.media.js").ProductMedia>;
6
+ //# sourceMappingURL=addProductMedia.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addProductMedia.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/mutations/products/addProductMedia.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAG5D,wBAA8B,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;;;CAAA,EAAE,OAAO,EAAE,OAAO,0EAmB/F"}
@@ -0,0 +1,18 @@
1
+ import { log } from '@unchainedshop/logger';
2
+ import { ProductNotFoundError, InvalidIdError } from '../../../errors.js';
3
+ export default async function addProductMedia(root, { media, productId }, context) {
4
+ const { modules, services, userId } = context;
5
+ log(`mutation addProductMedia ${productId}`, { userId });
6
+ if (!productId)
7
+ throw new InvalidIdError({ productId });
8
+ const product = await modules.products.findProduct({ productId });
9
+ if (!product)
10
+ throw new ProductNotFoundError({ productId });
11
+ const file = await services.files.uploadFileFromStream({
12
+ directoryName: 'product-media',
13
+ rawFile: media,
14
+ meta: { productId },
15
+ }, context);
16
+ return modules.products.media.create({ productId, mediaId: file._id });
17
+ }
18
+ //# sourceMappingURL=addProductMedia.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addProductMedia.js","sourceRoot":"","sources":["../../../../src/resolvers/mutations/products/addProductMedia.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAE1E,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,eAAe,CAAC,IAAU,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,OAAgB;IAC9F,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC9C,GAAG,CAAC,4BAA4B,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAEzD,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,cAAc,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAExD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAClE,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,oBAAoB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAE5D,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,oBAAoB,CACpD;QACE,aAAa,EAAE,eAAe;QAC9B,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,EAAE,SAAS,EAAE;KACpB,EACD,OAAO,CACR,CAAC;IAEF,OAAO,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;AACzE,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Context, Root } from '@unchainedshop/types/api.js';
2
+ export default function updateUserAvatar(root: Root, params: {
3
+ avatar: any;
4
+ userId: string;
5
+ }, context: Context): Promise<import("@unchainedshop/types/user.js").User>;
6
+ //# sourceMappingURL=updateUserAvatar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateUserAvatar.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/mutations/users/updateUserAvatar.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAG5D,wBAA8B,gBAAgB,CAC5C,IAAI,EAAE,IAAI,EACV,MAAM,EAAE;IAAE,MAAM,EAAE,GAAG,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EACvC,OAAO,EAAE,OAAO,wDA+BjB"}
@@ -0,0 +1,22 @@
1
+ import { log } from '@unchainedshop/logger';
2
+ import { UserNotFoundError } from '../../../errors.js';
3
+ export default async function updateUserAvatar(root, params, context) {
4
+ const { modules, services, userId } = context;
5
+ const normalizedUserId = params.userId || userId;
6
+ log(`mutation updateUserAvatar ${normalizedUserId}`, { userId });
7
+ if (!(await modules.users.userExists({ userId: normalizedUserId })))
8
+ throw new UserNotFoundError({ userId: normalizedUserId });
9
+ const user = await modules.users.findUserById(normalizedUserId);
10
+ const file = await services.files.uploadFileFromStream({
11
+ directoryName: 'user-avatars',
12
+ rawFile: params.avatar,
13
+ meta: { userId: normalizedUserId },
14
+ }, context);
15
+ if (user?.avatarId) {
16
+ await services.files.removeFiles({
17
+ fileIds: [user.avatarId],
18
+ }, context);
19
+ }
20
+ return modules.users.updateAvatar(normalizedUserId, file._id);
21
+ }
22
+ //# sourceMappingURL=updateUserAvatar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateUserAvatar.js","sourceRoot":"","sources":["../../../../src/resolvers/mutations/users/updateUserAvatar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,gBAAgB,CAC5C,IAAU,EACV,MAAuC,EACvC,OAAgB;IAEhB,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC9C,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC;IAEjD,GAAG,CAAC,6BAA6B,gBAAgB,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAEjE,IAAI,CAAC,CAAC,MAAM,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;QACjE,MAAM,IAAI,iBAAiB,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAE5D,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;IAEhE,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,oBAAoB,CACpD;QACE,aAAa,EAAE,cAAc;QAC7B,OAAO,EAAE,MAAM,CAAC,MAAM;QACtB,IAAI,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE;KACnC,EACD,OAAO,CACR,CAAC;IAEF,IAAI,IAAI,EAAE,QAAQ,EAAE,CAAC;QACnB,MAAM,QAAQ,CAAC,KAAK,CAAC,WAAW,CAC9B;YACE,OAAO,EAAE,CAAC,IAAI,CAAC,QAAkB,CAAC;SACnC,EACD,OAAO,CACR,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;AAChE,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { Context } from '@unchainedshop/types/api.js';
2
+ import { User } from '@unchainedshop/types/user.js';
3
+ export declare const getOrderCart: (params: {
4
+ orderId?: string;
5
+ user: User;
6
+ }, context: Context) => Promise<import("@unchainedshop/types/orders.js").Order>;
7
+ //# sourceMappingURL=getOrderCart.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getOrderCart.d.ts","sourceRoot":"","sources":["../../../../src/resolvers/mutations/utils/getOrderCart.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AAGpD,eAAO,MAAM,YAAY,WAAkB;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAAE,WAAW,OAAO,4DAc5F,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { OrderNotFoundError } from '../../../errors.js';
2
+ export const getOrderCart = async (params, context) => {
3
+ const { modules, services } = context;
4
+ const { orderId, user } = params;
5
+ if (orderId) {
6
+ const order = await modules.orders.findOrder({ orderId });
7
+ if (!order)
8
+ throw new OrderNotFoundError({ orderId });
9
+ return order;
10
+ }
11
+ return services.orders.nextUserCart({ user, countryCode: context.countryContext, forceCartCreation: true }, context);
12
+ };
13
+ //# sourceMappingURL=getOrderCart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getOrderCart.js","sourceRoot":"","sources":["../../../../src/resolvers/mutations/utils/getOrderCart.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,MAAwC,EAAE,OAAgB,EAAE,EAAE;IAC/F,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IACtC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAEjC,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,kBAAkB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QACtD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,QAAQ,CAAC,MAAM,CAAC,YAAY,CACjC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,cAAc,EAAE,iBAAiB,EAAE,IAAI,EAAE,EACtE,OAAO,CACR,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { DeliveryProvider } from '@unchainedshop/types/delivery.js';
2
+ import { Product } from '@unchainedshop/types/products.js';
3
+ import { WarehousingProvider } from '@unchainedshop/types/warehousing.js';
4
+ export declare const Dispatch: {
5
+ _id: (params: {
6
+ product: Product;
7
+ deliveryProvider: DeliveryProvider;
8
+ warehousingProvider: WarehousingProvider;
9
+ referenceDate: Date;
10
+ quantity: number;
11
+ country: string;
12
+ userId?: string;
13
+ }) => string;
14
+ };
15
+ //# sourceMappingURL=dispatch-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dispatch-types.d.ts","sourceRoot":"","sources":["../../../src/resolvers/type/dispatch-types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E,eAAO,MAAM,QAAQ;kBACL;QACZ,OAAO,EAAE,OAAO,CAAC;QACjB,gBAAgB,EAAE,gBAAgB,CAAC;QACnC,mBAAmB,EAAE,mBAAmB,CAAC;QACzC,aAAa,EAAE,IAAI,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB;CAeF,CAAC"}
@@ -0,0 +1,16 @@
1
+ import crypto from 'crypto';
2
+ export const Dispatch = {
3
+ _id: (params) => crypto
4
+ .createHash('sha256')
5
+ .update([
6
+ params.product._id,
7
+ params.deliveryProvider._id,
8
+ params.warehousingProvider._id,
9
+ params.referenceDate,
10
+ params.quantity,
11
+ params.country,
12
+ params.userId || 'ANONYMOUS',
13
+ ].join(''))
14
+ .digest('hex'),
15
+ };
16
+ //# sourceMappingURL=dispatch-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dispatch-types.js","sourceRoot":"","sources":["../../../src/resolvers/type/dispatch-types.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAK5B,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,GAAG,EAAE,CAAC,MAQL,EAAE,EAAE,CACH,MAAM;SACH,UAAU,CAAC,QAAQ,CAAC;SACpB,MAAM,CACL;QACE,MAAM,CAAC,OAAO,CAAC,GAAG;QAClB,MAAM,CAAC,gBAAgB,CAAC,GAAG;QAC3B,MAAM,CAAC,mBAAmB,CAAC,GAAG;QAC9B,MAAM,CAAC,aAAa;QACpB,MAAM,CAAC,QAAQ;QACf,MAAM,CAAC,OAAO;QACd,MAAM,CAAC,MAAM,IAAI,WAAW;KAC7B,CAAC,IAAI,CAAC,EAAE,CAAC,CACX;SACA,MAAM,CAAC,KAAK,CAAC;CACnB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Context } from '@unchainedshop/types/api.js';
2
+ export declare const OAuthAccount: {
3
+ _id: (account: any) => any;
4
+ provider: (account: any, _: never, { modules }: Context) => Promise<import("@unchainedshop/types/accounts.js").IOAuth2Adapter>;
5
+ };
6
+ //# sourceMappingURL=oauth-account.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-account.d.ts","sourceRoot":"","sources":["../../../src/resolvers/type/oauth-account.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEtD,eAAO,MAAM,YAAY;;gCAEM,KAAK,eAAe,OAAO;CAGzD,CAAC"}
@@ -0,0 +1,7 @@
1
+ export const OAuthAccount = {
2
+ _id: (account) => account.id,
3
+ provider: async (account, _, { modules }) => {
4
+ return modules.accounts.oAuth2.getProvider(account.provider);
5
+ },
6
+ };
7
+ //# sourceMappingURL=oauth-account.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-account.js","sourceRoot":"","sources":["../../../src/resolvers/type/oauth-account.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE;IAC5B,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,CAAQ,EAAE,EAAE,OAAO,EAAW,EAAE,EAAE;QAC1D,OAAO,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC/D,CAAC;CACF,CAAC"}
@@ -0,0 +1,6 @@
1
+ export declare const OAuthProvider: {
2
+ _id: (adapter: any) => any;
3
+ clientId: (adapter: any) => any;
4
+ scopes: (adapter: any) => any;
5
+ };
6
+ //# sourceMappingURL=oauth-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-provider.d.ts","sourceRoot":"","sources":["../../../src/resolvers/type/oauth-provider.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa;;;;CAIzB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export const OAuthProvider = {
2
+ _id: (adapter) => adapter.provider,
3
+ clientId: (adapter) => adapter.config?.clientId,
4
+ scopes: (adapter) => adapter.config?.scopes || [],
5
+ };
6
+ //# sourceMappingURL=oauth-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-provider.js","sourceRoot":"","sources":["../../../src/resolvers/type/oauth-provider.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ;IAClC,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ;IAC/C,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,IAAI,EAAE;CAClD,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { DeliveryProvider } from '@unchainedshop/types/delivery.js';
2
+ import { Product } from '@unchainedshop/types/products.js';
3
+ import { WarehousingProvider } from '@unchainedshop/types/warehousing.js';
4
+ export declare const Stock: {
5
+ _id: (params: {
6
+ product: Product;
7
+ deliveryProvider: DeliveryProvider;
8
+ warehousingProvider: WarehousingProvider;
9
+ referenceDate: Date;
10
+ country: string;
11
+ userId?: string;
12
+ }) => string;
13
+ };
14
+ //# sourceMappingURL=stock-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stock-types.d.ts","sourceRoot":"","sources":["../../../src/resolvers/type/stock-types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E,eAAO,MAAM,KAAK;kBACF;QACZ,OAAO,EAAE,OAAO,CAAC;QACjB,gBAAgB,EAAE,gBAAgB,CAAC;QACnC,mBAAmB,EAAE,mBAAmB,CAAC;QACzC,aAAa,EAAE,IAAI,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB;CAcF,CAAC"}
@@ -0,0 +1,15 @@
1
+ import crypto from 'crypto';
2
+ export const Stock = {
3
+ _id: (params) => crypto
4
+ .createHash('sha256')
5
+ .update([
6
+ params.product._id,
7
+ params.deliveryProvider._id,
8
+ params.warehousingProvider._id,
9
+ params.referenceDate,
10
+ params.country,
11
+ params.userId || 'ANONYMOUS',
12
+ ].join(''))
13
+ .digest('hex'),
14
+ };
15
+ //# sourceMappingURL=stock-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stock-types.js","sourceRoot":"","sources":["../../../src/resolvers/type/stock-types.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAK5B,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,GAAG,EAAE,CAAC,MAOL,EAAE,EAAE,CACH,MAAM;SACH,UAAU,CAAC,QAAQ,CAAC;SACpB,MAAM,CACL;QACE,MAAM,CAAC,OAAO,CAAC,GAAG;QAClB,MAAM,CAAC,gBAAgB,CAAC,GAAG;QAC3B,MAAM,CAAC,mBAAmB,CAAC,GAAG;QAC9B,MAAM,CAAC,aAAa;QACpB,MAAM,CAAC,OAAO;QACd,MAAM,CAAC,MAAM,IAAI,WAAW;KAC7B,CAAC,IAAI,CAAC,EAAE,CAAC,CACX;SACA,MAAM,CAAC,KAAK,CAAC;CACnB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"all.d.ts","sourceRoot":"","sources":["../../src/roles/all.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,GAAG,mCAwJf,CAAC"}
1
+ {"version":3,"file":"all.d.ts","sourceRoot":"","sources":["../../src/roles/all.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,GAAG,mCA0Jf,CAAC"}
package/lib/roles/all.js CHANGED
@@ -6,8 +6,9 @@ export const all = (role, actions) => {
6
6
  }
7
7
  return false;
8
8
  };
9
- const isOwnedToken = async (_, { tokenId }, context) => {
9
+ const isOwnedToken = async (root, params, context) => {
10
10
  const { modules, userId, user } = context;
11
+ const tokenId = params?.tokenId || (root && 'chainTokenId' in root && root._id) || null;
11
12
  const token = await modules.warehousing.findToken({ tokenId });
12
13
  if (!token)
13
14
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"all.js","sourceRoot":"","sources":["../../src/roles/all.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"all.js","sourceRoot":"","sources":["../../src/roles/all.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"product.d.ts","sourceRoot":"","sources":["../../../../src/schema/types/product/product.ts"],"names":[],"mappings":";AAAA,wBAwIE"}
1
+ {"version":3,"file":"product.d.ts","sourceRoot":"","sources":["../../../../src/schema/types/product/product.ts"],"names":[],"mappings":";AAAA,wBAuIE"}
@@ -125,7 +125,6 @@ export default [
125
125
  }
126
126
 
127
127
  type ProductCatalogPrice @cacheControl(maxAge: 60) {
128
- _id: ID!
129
128
  isTaxable: Boolean!
130
129
  isNetPrice: Boolean!
131
130
  country: Country!
@@ -1 +1 @@
1
- {"version":3,"file":"product.js","sourceRoot":"","sources":["../../../../src/schema/types/product/product.ts"],"names":[],"mappings":"AAAA,eAAe;IACb,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsIb;CACF,CAAC"}
1
+ {"version":3,"file":"product.js","sourceRoot":"","sources":["../../../../src/schema/types/product/product.ts"],"names":[],"mappings":"AAAA,eAAe;IACb,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqIb;CACF,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { IncomingMessage, OutgoingMessage } from 'http';
2
+ import { UnchainedUserContext } from '@unchainedshop/types/api.js';
3
+ import { UnchainedCore } from '@unchainedshop/types/core.js';
4
+ export declare const getUserContext: (req: IncomingMessage & {
5
+ cookies?: any;
6
+ }, res: OutgoingMessage, unchainedAPI: UnchainedCore) => Promise<UnchainedUserContext>;
7
+ //# sourceMappingURL=user-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-context.d.ts","sourceRoot":"","sources":["../src/user-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AA0C7D,eAAO,MAAM,cAAc,QACpB,eAAe,GAAG;IAAE,OAAO,CAAC,EAAE,GAAG,CAAA;CAAE,OACnC,eAAe,gBACN,aAAa,KAC1B,OAAO,CAAC,oBAAoB,CAsD9B,CAAC"}
@@ -0,0 +1,76 @@
1
+ import cookie from 'cookie';
2
+ function isString(input) {
3
+ return typeof input === 'string' && Object.prototype.toString.call(input) === '[object String]';
4
+ }
5
+ const { UNCHAINED_COOKIE_NAME = 'unchained_token', UNCHAINED_COOKIE_PATH = '/', UNCHAINED_COOKIE_DOMAIN, UNCHAINED_COOKIE_SAMESITE, UNCHAINED_COOKIE_INSECURE, } = process.env;
6
+ function setLoginToken(res, token, expires) {
7
+ const cookieName = UNCHAINED_COOKIE_NAME;
8
+ const domain = UNCHAINED_COOKIE_DOMAIN;
9
+ const path = UNCHAINED_COOKIE_PATH;
10
+ const secure = UNCHAINED_COOKIE_INSECURE ? false : true;
11
+ const sameSite = ({
12
+ none: 'none',
13
+ lax: 'lax',
14
+ strict: 'strict',
15
+ '1': true,
16
+ '0': false,
17
+ }[UNCHAINED_COOKIE_SAMESITE?.trim()?.toLowerCase()] || false);
18
+ if (!cookieName)
19
+ return;
20
+ const authCookie = cookie.serialize(cookieName, token || null, {
21
+ domain,
22
+ httpOnly: true,
23
+ path,
24
+ expires: token && expires ? expires : undefined,
25
+ maxAge: token ? undefined : -1,
26
+ sameSite,
27
+ secure,
28
+ });
29
+ res.setHeader('Set-Cookie', authCookie);
30
+ }
31
+ export const getUserContext = async (req, res, unchainedAPI) => {
32
+ // there is a possible current user connected!
33
+ const cookieName = UNCHAINED_COOKIE_NAME;
34
+ let loginToken = req.cookies?.[cookieName];
35
+ if (req.headers.authorization) {
36
+ const [type, token] = req.headers.authorization.split(' ');
37
+ if (type === 'Bearer') {
38
+ loginToken = token;
39
+ }
40
+ }
41
+ if (loginToken) {
42
+ // throw an error if the token is not a string
43
+ if (!isString(loginToken))
44
+ throw new Error('Access Token is not a string');
45
+ // the hashed token is the key to find the possible current user in the db
46
+ const hashedToken = unchainedAPI.modules.accounts.createHashLoginToken(loginToken);
47
+ const currentUser = await unchainedAPI.modules.users.findUserByToken({
48
+ hashedToken,
49
+ });
50
+ // the current user exists
51
+ if (currentUser) {
52
+ // find the right login token corresponding, the current user may have
53
+ // several sessions logged on different browsers / computers
54
+ const tokenInformation = currentUser.services.resume.loginTokens.find((tokenInfo) => tokenInfo.hashedToken === hashedToken); // eslint-disable-line
55
+ // true if the token is expired
56
+ const isExpired = new Date(tokenInformation.when) < new Date();
57
+ // if the token is still valid, give access to the current user
58
+ // information in the resolvers context
59
+ if (!isExpired) {
60
+ // return a new context object with the current user & her id
61
+ return {
62
+ user: currentUser,
63
+ userId: currentUser._id,
64
+ loginToken: loginToken,
65
+ setLoginToken,
66
+ };
67
+ }
68
+ }
69
+ // If there is no user with this token or the token is expires/invalid,
70
+ // we should remove that cookie from the client
71
+ setLoginToken(res, null);
72
+ return { loginToken: loginToken, setLoginToken };
73
+ }
74
+ return { setLoginToken };
75
+ };
76
+ //# sourceMappingURL=user-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-context.js","sourceRoot":"","sources":["../src/user-context.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unchainedshop/api",
3
- "version": "3.0.8",
3
+ "version": "3.1.0",
4
4
  "main": "lib/api-index.js",
5
5
  "types": "lib/api-index.d.ts",
6
6
  "type": "module",
@@ -71,24 +71,24 @@
71
71
  }
72
72
  },
73
73
  "dependencies": {
74
- "@unchainedshop/core": "^3.0.0",
75
- "@unchainedshop/events": "^3.0.0",
76
- "@unchainedshop/logger": "^3.0.0",
77
- "@unchainedshop/roles": "^3.0.0",
78
- "@unchainedshop/utils": "^3.0.0",
74
+ "@unchainedshop/core": "^3.1.0",
75
+ "@unchainedshop/events": "^3.1.0",
76
+ "@unchainedshop/logger": "^3.1.0",
77
+ "@unchainedshop/roles": "^3.1.0",
78
+ "@unchainedshop/utils": "^3.1.0",
79
79
  "accounting": "0.4.1",
80
80
  "dataloader": "^2.2.3",
81
81
  "expiry-map": "^2.0.0",
82
- "graphql-scalars": "^1.24.0",
82
+ "graphql-scalars": "^1.24.1",
83
83
  "moniker": "0.1.2",
84
84
  "p-memoize": "^7.1.1"
85
85
  },
86
86
  "devDependencies": {
87
87
  "@fastify/cookie": "^11.0.2",
88
88
  "@fastify/session": "^11.1.0",
89
- "@metamask/eth-sig-util": "^8.1.2",
89
+ "@metamask/eth-sig-util": "^8.2.0",
90
90
  "@types/express": "^5.0.0",
91
- "@types/node": "^22.10.5",
91
+ "@types/node": "^22.13.1",
92
92
  "express": "^5.0.1",
93
93
  "express-session": "^1.18.1",
94
94
  "fastify": "^5.2.1",
@@ -192,6 +192,7 @@ export const connect = (
192
192
  });
193
193
 
194
194
  fastify.register((s, opts, registered) => {
195
+ s.removeAllContentTypeParsers();
195
196
  s.addContentTypeParser('*', function (req, payload, done) {
196
197
  done(null);
197
198
  });
package/src/roles/all.ts CHANGED
@@ -9,9 +9,11 @@ export const all = (role, actions) => {
9
9
  return false;
10
10
  };
11
11
 
12
- const isOwnedToken = async (_: never, { tokenId }: { tokenId: string }, context: Context) => {
12
+ const isOwnedToken = async (root: any, params: { tokenId: string } | null, context: Context) => {
13
13
  const { modules, userId, user } = context;
14
14
 
15
+ const tokenId = params?.tokenId || (root && 'chainTokenId' in root && root._id) || null;
16
+
15
17
  const token = await modules.warehousing.findToken({ tokenId });
16
18
  if (!token) return true;
17
19
 
@@ -125,7 +125,6 @@ export default [
125
125
  }
126
126
 
127
127
  type ProductCatalogPrice @cacheControl(maxAge: 60) {
128
- _id: ID!
129
128
  isTaxable: Boolean!
130
129
  isNetPrice: Boolean!
131
130
  country: Country!