@agnostack/next-shopify 1.14.0-beta.8 → 1.14.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 (55) hide show
  1. package/CHANGELOG.md +324 -0
  2. package/dist/lib/handlers/api/billing.d.ts.map +1 -1
  3. package/dist/lib/handlers/api/billing.js +3 -5
  4. package/dist/lib/handlers/api/billing.js.map +1 -1
  5. package/dist/lib/handlers/api/graph.d.ts.map +1 -1
  6. package/dist/lib/handlers/api/graph.js +11 -12
  7. package/dist/lib/handlers/api/graph.js.map +1 -1
  8. package/dist/lib/handlers/api/index.d.ts.map +1 -1
  9. package/dist/lib/handlers/api/index.js +0 -1
  10. package/dist/lib/handlers/api/index.js.map +1 -1
  11. package/dist/lib/handlers/api/proxy.d.ts.map +1 -1
  12. package/dist/lib/handlers/api/proxy.js +17 -11
  13. package/dist/lib/handlers/api/proxy.js.map +1 -1
  14. package/dist/lib/handlers/api/rest.d.ts.map +1 -1
  15. package/dist/lib/handlers/api/rest.js +10 -7
  16. package/dist/lib/handlers/api/rest.js.map +1 -1
  17. package/dist/lib/handlers/api/token.d.ts +1 -1
  18. package/dist/lib/handlers/api/token.d.ts.map +1 -1
  19. package/dist/lib/handlers/api/token.js +8 -12
  20. package/dist/lib/handlers/api/token.js.map +1 -1
  21. package/dist/lib/handlers/api/uninstall.d.ts.map +1 -1
  22. package/dist/lib/handlers/api/uninstall.js +3 -4
  23. package/dist/lib/handlers/api/uninstall.js.map +1 -1
  24. package/dist/lib/handlers/api/webhook.d.ts.map +1 -1
  25. package/dist/lib/handlers/api/webhook.js +2 -4
  26. package/dist/lib/handlers/api/webhook.js.map +1 -1
  27. package/dist/lib/index.d.ts +1 -1
  28. package/dist/lib/index.d.ts.map +1 -1
  29. package/dist/lib/index.js +3 -2
  30. package/dist/lib/index.js.map +1 -1
  31. package/dist/lib/utils/index.d.ts +1 -0
  32. package/dist/lib/utils/index.js +1 -0
  33. package/dist/lib/utils/index.js.map +1 -1
  34. package/dist/lib/utils/request.d.ts +2 -0
  35. package/dist/lib/utils/request.d.ts.map +1 -0
  36. package/dist/lib/utils/request.js +19 -0
  37. package/dist/lib/utils/request.js.map +1 -0
  38. package/dist/lib/utils/token.d.ts +3 -1
  39. package/dist/lib/utils/token.d.ts.map +1 -1
  40. package/dist/lib/utils/token.js +26 -24
  41. package/dist/lib/utils/token.js.map +1 -1
  42. package/dist/lib/utils/verification.d.ts +1 -1
  43. package/dist/lib/utils/verification.d.ts.map +1 -1
  44. package/dist/lib/utils/verification.js +19 -16
  45. package/dist/lib/utils/verification.js.map +1 -1
  46. package/dist/lib/withShopify.d.ts.map +1 -1
  47. package/dist/lib/withShopify.js +5 -3
  48. package/dist/lib/withShopify.js.map +1 -1
  49. package/dist/react/hooks/useVerification.d.ts +2 -2
  50. package/dist/react/hooks/useVerification.d.ts.map +1 -1
  51. package/dist/react/hooks/useVerification.js +8 -7
  52. package/dist/react/hooks/useVerification.js.map +1 -1
  53. package/dist/shared/display.js +1 -1
  54. package/dist/shared/display.js.map +1 -1
  55. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"rest.js","sourceRoot":"","sources":["../../../../src/lib/handlers/api/rest.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rest.js","sourceRoot":"","sources":["../../../../src/lib/handlers/api/rest.js"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export function handleSessionToken(serverRuntimeConfig: any, { signingSecret, ...signingData }?: {
1
+ export function handleSessionToken(serverRuntimeConfig: any, { signingSecret: _signingSecret, ...signingData }?: {
2
2
  signingSecret: any;
3
3
  }): (req: any, res: any) => Promise<any>;
4
4
  //# sourceMappingURL=token.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"token.d.ts","sourceRoot":"","sources":["../../../../src/lib/handlers/api/token.js"],"names":[],"mappings":"AAeO;;yCAuGN"}
1
+ {"version":3,"file":"token.d.ts","sourceRoot":"","sources":["../../../../src/lib/handlers/api/token.js"],"names":[],"mappings":"AAcO;;yCAqGN"}
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.handleSessionToken = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const raw_body_1 = tslib_1.__importDefault(require("raw-body"));
6
5
  const js_base64_1 = require("js-base64");
7
6
  const jsonwebtoken_1 = require("jsonwebtoken");
8
7
  const uuid_1 = require("uuid");
@@ -10,8 +9,9 @@ const utils_1 = require("../../utils");
10
9
  const shared_1 = require("../../../shared");
11
10
  // NOTE: typically handling: "/api/token"
12
11
  const handleSessionToken = (serverRuntimeConfig, _a = {}) => {
13
- var { signingSecret } = _a, signingData = tslib_1.__rest(_a, ["signingSecret"]);
12
+ var { signingSecret: _signingSecret } = _a, signingData = tslib_1.__rest(_a, ["signingSecret"]);
14
13
  const { APP_CONFIG } = serverRuntimeConfig !== null && serverRuntimeConfig !== void 0 ? serverRuntimeConfig : {};
14
+ const _getVerifiedBody = (0, utils_1.getVerifiedBody)(serverRuntimeConfig);
15
15
  return (req, res) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
16
16
  var _b, _c;
17
17
  const { host } = (_b = req.query) !== null && _b !== void 0 ? _b : {};
@@ -23,15 +23,11 @@ const handleSessionToken = (serverRuntimeConfig, _a = {}) => {
23
23
  if ((0, shared_1.stringEmpty)(shop) || (0, shared_1.stringEmpty)(host)) {
24
24
  return res.status(412).json({ message: 'Missing required param' });
25
25
  }
26
- // NOTE raw request body is required for shopify's validation
27
- const _rawBody = yield (0, raw_body_1.default)(req);
28
- const rawBody = _rawBody.toString();
29
- const parsedBody = JSON.parse(rawBody || '{}'); // NOTE: parsedBody should be encrypted when isVerifiable
30
- let decryptedBody = parsedBody;
26
+ const [requestBody, processResponse] = yield _getVerifiedBody(req, res);
31
27
  const appClaims = Object.entries(headers).reduce((_appClaims, [headerKey, headerValue]) => (Object.assign(Object.assign({}, _appClaims), headerKey.startsWith('x-shopify-app-metafield-') && {
32
28
  [(0, shared_1.snakecase)(headerKey.replace('x-shopify-app-metafield-', ''))]: headerValue,
33
29
  })), Object.assign(Object.assign({}, appId && { app_id: (0, shared_1.normalizeShopifyId)(appId).id }), appInstallationId && { installation_id: (0, shared_1.normalizeShopifyId)(appInstallationId).id }));
34
- const _e = decryptedBody !== null && decryptedBody !== void 0 ? decryptedBody : {}, { sub, aud: _aud } = _e, body = tslib_1.__rest(_e, ["sub", "aud"]);
30
+ const _e = requestBody !== null && requestBody !== void 0 ? requestBody : {}, { sub, aud: _aud } = _e, body = tslib_1.__rest(_e, ["sub", "aud"]);
35
31
  const aud = [clientId, _aud, APP_CONFIG.apiKey].find(shared_1.stringNotEmpty);
36
32
  let { dest, iss, sid, jti } = body, tokenBody = tslib_1.__rest(body, ["dest", "iss", "sid", "jti"]);
37
33
  if ((0, shared_1.stringEmpty)(dest)) {
@@ -54,14 +50,14 @@ const handleSessionToken = (serverRuntimeConfig, _a = {}) => {
54
50
  jti,
55
51
  sid,
56
52
  aud }, sub && { sub }), appClaims), tokenBody);
57
- if ((0, shared_1.stringEmpty)(signingSecret)) {
58
- signingSecret = (0, utils_1.generateHMAC)((0, shared_1.objectToSortedString)(payload), APP_CONFIG.apiSecretKey);
59
- }
53
+ // NOTE: signingSecret should only be sent in here from the /api/token/zendesk endpoint
54
+ const signingSecret = _signingSecret || (0, utils_1.generateHMAC)((0, shared_1.objectToSortedString)(payload), APP_CONFIG.apiSecretKey);
60
55
  const token = (0, jsonwebtoken_1.sign)(payload, signingSecret, signingData);
61
56
  if ((0, shared_1.stringEmpty)(token)) {
62
57
  throw new Error('Error signing token');
63
58
  }
64
- return res.status(200).json({ token });
59
+ const response = yield processResponse({ token });
60
+ return res.status(200).json(response);
65
61
  }
66
62
  catch (error) {
67
63
  console.error('Error generating session token', error);
@@ -1 +1 @@
1
- {"version":3,"file":"token.js","sourceRoot":"","sources":["../../../../src/lib/handlers/api/token.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"token.js","sourceRoot":"","sources":["../../../../src/lib/handlers/api/token.js"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../../../src/lib/handlers/api/uninstall.js"],"names":[],"mappings":"AASO,qGAwCN"}
1
+ {"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../../../src/lib/handlers/api/uninstall.js"],"names":[],"mappings":"AAOO,qGAwCN"}
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.handleAppUninstalled = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const raw_body_1 = tslib_1.__importDefault(require("raw-body"));
6
5
  const utils_1 = require("../../utils");
7
6
  const shared_1 = require("../../../shared");
8
7
  // NOTE: typically handling: "/api/webhooks/app/uninstalled"
@@ -14,10 +13,10 @@ const handleAppUninstalled = (serverRuntimeConfig) => (req, res) => tslib_1.__aw
14
13
  return res.status(200).json({ handler: 'uninstall', error: 'Missing shop' });
15
14
  }
16
15
  const { shopify, findSessionIds, deleteSessions } = yield (0, utils_1.getShopifyHelpers)(serverRuntimeConfig, { shop });
17
- // NOTE raw request body is required for Shopify webhook validation
18
- const rawBody = yield (0, raw_body_1.default)(req);
16
+ // TODO: explore getVerifiedBody?
17
+ const rawBody = yield (0, utils_1.ensureRawBody)(req);
19
18
  const _b = yield shopify.webhooks.validate({
20
- rawBody: rawBody.toString(),
19
+ rawBody,
21
20
  rawRequest: req,
22
21
  rawResponse: res,
23
22
  }), { valid } = _b, webhookCheck = tslib_1.__rest(_b, ["valid"]);
@@ -1 +1 @@
1
- {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../../src/lib/handlers/api/uninstall.js"],"names":[],"mappings":";;;;AAAA,gEAAiC;AAEjC,uCAA+C;AAC/C,4CAGwB;AAExB,4DAA4D;AACrD,MAAM,oBAAoB,GAAG,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAO,GAAG,EAAE,GAAG,EAAE,EAAE;;IAC9E,IAAI;QACF,MAAM,EACJ,eAAe,EAAE,UAAU,EAC3B,uBAAuB,EAAE,iBAAiB,EAC1C,gBAAgB,EAAE,IAAI,GAAG,iBAAiB,aAAjB,iBAAiB,cAAjB,iBAAiB,GAAI,UAAU,GACzD,GAAG,MAAA,GAAG,CAAC,OAAO,mCAAI,EAAE,CAAA;QAErB,IAAI,IAAA,oBAAW,EAAC,IAAI,CAAC,EAAE;YACrB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAA;SAC7E;QAED,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,GAAG,MAAM,IAAA,yBAAiB,EAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;QAE1G,mEAAmE;QACnE,MAAM,OAAO,GAAG,MAAM,IAAA,kBAAU,EAAC,GAAG,CAAC,CAAA;QACrC,MAAM,KAA6B,MAAM,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACjE,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE;YAC3B,UAAU,EAAE,GAAG;YACf,WAAW,EAAE,GAAG;SACjB,CAAC,EAJI,EAAE,KAAK,OAIX,EAJgB,YAAY,sBAAxB,SAA0B,CAI9B,CAAA;QAEF,IAAI,KAAK,EAAE;YACT,IAAI;gBACF,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAA;gBAC9C,IAAI,IAAA,sBAAa,EAAC,WAAW,CAAC,EAAE;oBAC9B,MAAM,cAAc,CAAC,WAAW,CAAC,CAAA;iBAClC;gBACD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAA;aAC1E;YAAC,OAAO,KAAK,EAAE;gBACd,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,EAAE,CAAC,CAAA;aAC7E;SACF;QAED,OAAO,CAAC,IAAI,CAAC,sCAAsC,EAAE,YAAY,CAAC,CAAA;QAClE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,sCAAsC,EAAE,CAAC,CAAA;KACrG;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAA;QAChD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,0BAA0B,EAAE,CAAC,CAAA;KACzF;AACH,CAAC,CAAA,CAAA;AAxCY,QAAA,oBAAoB,wBAwChC"}
1
+ {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../../src/lib/handlers/api/uninstall.js"],"names":[],"mappings":";;;;AAAA,uCAA8D;AAC9D,4CAGwB;AAExB,4DAA4D;AACrD,MAAM,oBAAoB,GAAG,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAO,GAAG,EAAE,GAAG,EAAE,EAAE;;IAC9E,IAAI;QACF,MAAM,EACJ,eAAe,EAAE,UAAU,EAC3B,uBAAuB,EAAE,iBAAiB,EAC1C,gBAAgB,EAAE,IAAI,GAAG,iBAAiB,aAAjB,iBAAiB,cAAjB,iBAAiB,GAAI,UAAU,GACzD,GAAG,MAAA,GAAG,CAAC,OAAO,mCAAI,EAAE,CAAA;QAErB,IAAI,IAAA,oBAAW,EAAC,IAAI,CAAC,EAAE;YACrB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAA;SAC7E;QAED,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,GAAG,MAAM,IAAA,yBAAiB,EAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;QAE1G,iCAAiC;QACjC,MAAM,OAAO,GAAG,MAAM,IAAA,qBAAa,EAAC,GAAG,CAAC,CAAA;QACxC,MAAM,KAA6B,MAAM,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACjE,OAAO;YACP,UAAU,EAAE,GAAG;YACf,WAAW,EAAE,GAAG;SACjB,CAAC,EAJI,EAAE,KAAK,OAIX,EAJgB,YAAY,sBAAxB,SAA0B,CAI9B,CAAA;QAEF,IAAI,KAAK,EAAE;YACT,IAAI;gBACF,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAA;gBAC9C,IAAI,IAAA,sBAAa,EAAC,WAAW,CAAC,EAAE;oBAC9B,MAAM,cAAc,CAAC,WAAW,CAAC,CAAA;iBAClC;gBACD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAA;aAC1E;YAAC,OAAO,KAAK,EAAE;gBACd,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,EAAE,CAAC,CAAA;aAC7E;SACF;QAED,OAAO,CAAC,IAAI,CAAC,sCAAsC,EAAE,YAAY,CAAC,CAAA;QAClE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,sCAAsC,EAAE,CAAC,CAAA;KACrG;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAA;QAChD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,0BAA0B,EAAE,CAAC,CAAA;KACzF;AACH,CAAC,CAAA,CAAA;AAxCY,QAAA,oBAAoB,wBAwChC"}
@@ -1 +1 @@
1
- {"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../../../../src/lib/handlers/api/webhook.js"],"names":[],"mappings":"AAWO,2HAyFN"}
1
+ {"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../../../../src/lib/handlers/api/webhook.js"],"names":[],"mappings":"AASO,2HAuFN"}
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.handleWebhookEvent = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const raw_body_1 = tslib_1.__importDefault(require("raw-body"));
6
5
  const utils_1 = require("../../utils");
7
6
  const shared_1 = require("../../../shared");
8
7
  // NOTE: typically handling: "/api/webhooks/event" or "/api/webhooks/event/{appId}" or "/api/webhooks/event?appId={appId}"
@@ -18,9 +17,8 @@ const handleWebhookEvent = (serverRuntimeConfig, config) => (req, res, data) =>
18
17
  return res.status(200).json({ handler: 'webhook', error: 'Shop is not safelisted' });
19
18
  }
20
19
  const { shopify } = yield (0, utils_1.getShopifyHelpers)(serverRuntimeConfig, { shop });
21
- // NOTE raw request body is required for Shopify webhook validation
22
- const _rawBody = yield (0, raw_body_1.default)(req);
23
- const rawBody = _rawBody.toString();
20
+ // TODO: explore getVerifiedBody?
21
+ const rawBody = yield (0, utils_1.ensureRawBody)(req);
24
22
  const _c = (serverRuntimeConfig.SHOPIFY_RUN_MODE === 'cli') ? {
25
23
  valid: true,
26
24
  topic: _headers['x-shopify-topic'],
@@ -1 +1 @@
1
- {"version":3,"file":"webhook.js","sourceRoot":"","sources":["../../../../src/lib/handlers/api/webhook.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webhook.js","sourceRoot":"","sources":["../../../../src/lib/handlers/api/webhook.js"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export * from '../shared';
2
2
  export * from './handlers';
3
3
  export * from './withShopify';
4
- export { getShopifyHelpers, prepareHeaders, getVerifiedBody } from './utils';
4
+ export { getShopifyHelpers, getVerifiedBody, ensureRawBody, prepareHeaders } from './utils';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,cAAc,EACf,MAAM,SAAS,CAAA"}
package/dist/lib/index.js CHANGED
@@ -1,12 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getVerifiedBody = exports.prepareHeaders = exports.getShopifyHelpers = void 0;
3
+ exports.prepareHeaders = exports.ensureRawBody = exports.getVerifiedBody = exports.getShopifyHelpers = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  tslib_1.__exportStar(require("../shared"), exports);
6
6
  tslib_1.__exportStar(require("./handlers"), exports);
7
7
  tslib_1.__exportStar(require("./withShopify"), exports);
8
8
  var utils_1 = require("./utils");
9
9
  Object.defineProperty(exports, "getShopifyHelpers", { enumerable: true, get: function () { return utils_1.getShopifyHelpers; } });
10
- Object.defineProperty(exports, "prepareHeaders", { enumerable: true, get: function () { return utils_1.prepareHeaders; } });
11
10
  Object.defineProperty(exports, "getVerifiedBody", { enumerable: true, get: function () { return utils_1.getVerifiedBody; } });
11
+ Object.defineProperty(exports, "ensureRawBody", { enumerable: true, get: function () { return utils_1.ensureRawBody; } });
12
+ Object.defineProperty(exports, "prepareHeaders", { enumerable: true, get: function () { return utils_1.prepareHeaders; } });
12
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":";;;;AAAA,oDAAyB;AACzB,qDAA0B;AAC1B,wDAA6B;AAC7B,iCAA4E;AAAnE,0GAAA,iBAAiB,OAAA;AAAE,uGAAA,cAAc,OAAA;AAAE,wGAAA,eAAe,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":";;;;AAAA,oDAAyB;AACzB,qDAA0B;AAC1B,wDAA6B;AAC7B,iCAKgB;AAJd,0GAAA,iBAAiB,OAAA;AACjB,wGAAA,eAAe,OAAA;AACf,sGAAA,aAAa,OAAA;AACb,uGAAA,cAAc,OAAA"}
@@ -2,6 +2,7 @@ export * from "./billing";
2
2
  export * from "./crypto";
3
3
  export * from "./firebase";
4
4
  export * from "./headers";
5
+ export * from "./request";
5
6
  export * from "./session";
6
7
  export * from "./shopify";
7
8
  export * from "./shopify-api-js/oauth";
@@ -5,6 +5,7 @@ tslib_1.__exportStar(require("./billing"), exports);
5
5
  tslib_1.__exportStar(require("./crypto"), exports);
6
6
  tslib_1.__exportStar(require("./firebase"), exports);
7
7
  tslib_1.__exportStar(require("./headers"), exports);
8
+ tslib_1.__exportStar(require("./request"), exports);
8
9
  tslib_1.__exportStar(require("./session"), exports);
9
10
  tslib_1.__exportStar(require("./shopify"), exports);
10
11
  tslib_1.__exportStar(require("./shopify-api-js/oauth"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/utils/index.js"],"names":[],"mappings":";;;AAAA,oDAAyB;AACzB,mDAAwB;AACxB,qDAA0B;AAC1B,oDAAyB;AACzB,oDAAyB;AACzB,oDAAyB;AACzB,iEAAsC;AACtC,kDAAuB;AACvB,yDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/utils/index.js"],"names":[],"mappings":";;;AAAA,oDAAyB;AACzB,mDAAwB;AACxB,qDAA0B;AAC1B,oDAAyB;AACzB,oDAAyB;AACzB,oDAAyB;AACzB,oDAAyB;AACzB,iEAAsC;AACtC,kDAAuB;AACvB,yDAA8B"}
@@ -0,0 +1,2 @@
1
+ export function ensureRawBody(req: any): Promise<any>;
2
+ //# sourceMappingURL=request.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/request.js"],"names":[],"mappings":"AAEO,sDAYN"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ensureRawBody = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const raw_body_1 = tslib_1.__importDefault(require("raw-body"));
6
+ const ensureRawBody = (req) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
7
+ return ((0, raw_body_1.default)(req)
8
+ .then((_rawBody) => _rawBody.toString())
9
+ .catch((error) => {
10
+ // NOTE: this is intended to ensure if getRawBody is called 2x w/in a route that it returns the already streamed body
11
+ if (((error === null || error === void 0 ? void 0 : error.type) === 'stream.not.readable')) {
12
+ return req === null || req === void 0 ? void 0 : req.body;
13
+ }
14
+ console.error(`Error getting raw body for '${req.url}'`, error);
15
+ throw error;
16
+ }));
17
+ });
18
+ exports.ensureRawBody = ensureRawBody;
19
+ //# sourceMappingURL=request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/lib/utils/request.js"],"names":[],"mappings":";;;;AAAA,gEAAiC;AAE1B,MAAM,aAAa,GAAG,CAAO,GAAG,EAAE,EAAE;IAAC,OAAA,CAC1C,IAAA,kBAAU,EAAC,GAAG,CAAC;SACZ,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;SACvC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACf,qHAAqH;QACrH,IAAI,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,MAAK,qBAAqB,CAAC,EAAE;YAC3C,OAAO,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,CAAA;SACjB;QAED,OAAO,CAAC,KAAK,CAAC,+BAA+B,GAAG,CAAC,GAAG,GAAG,EAAE,KAAK,CAAC,CAAA;QAC/D,MAAM,KAAK,CAAA;IACb,CAAC,CAAC,CACL,CAAA;EAAA,CAAA;AAZY,QAAA,aAAa,iBAYzB"}
@@ -1,4 +1,6 @@
1
- export function getVerifiedSessionData(serverRuntimeConfig: any): (sessionToken: any, { shop, host }: {
1
+ export function getVerifiedSessionData(serverRuntimeConfig: any, { signingSecret: _signingSecret }?: {
2
+ signingSecret: any;
3
+ }): (sessionToken: any, { shop, host }: {
2
4
  shop: any;
3
5
  host: any;
4
6
  }) => Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"token.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/token.js"],"names":[],"mappings":"AAUO;;;;;;;;;;;;;;;GA6BN"}
1
+ {"version":3,"file":"token.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/token.js"],"names":[],"mappings":"AAUO;;;;;;;;;;;;;;;;;GAiCN"}
@@ -5,32 +5,34 @@ const tslib_1 = require("tslib");
5
5
  const jsonwebtoken_1 = require("jsonwebtoken");
6
6
  const shared_1 = require("../../shared");
7
7
  const crypto_1 = require("./crypto");
8
- // export const getVerifiedSessionData = (serverRuntimeConfig) => async (sessionToken, { secret, shop, host }) => {
9
- const getVerifiedSessionData = (serverRuntimeConfig) => (sessionToken, { shop, host }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
8
+ // NOTE: this signingSecret is not current used, but just in case we ever need it
9
+ const getVerifiedSessionData = (serverRuntimeConfig, { signingSecret: _signingSecret } = {}) => {
10
10
  const { APP_CONFIG } = serverRuntimeConfig;
11
- let data;
12
- try {
13
- // NOTE: this does not always contain sid (depending on if calling from appbridge)
14
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
15
- const _a = (0, shared_1.decodeShopData)(sessionToken), { decoded, token } = _a, _data = tslib_1.__rest(_a, ["decoded", "token"]);
16
- const { shop: sessionShop, host: sessionHost } = _data;
17
- data = _data;
18
- if ((sessionShop !== shop) || (sessionHost !== host)) {
19
- throw new shared_1.ShopifySessionInvalidError('Unauthorized shop or host');
11
+ return (sessionToken, { shop, host }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
12
+ let data;
13
+ try {
14
+ // NOTE: this does not always contain sid (depending on if calling from appbridge)
15
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
16
+ const _a = (0, shared_1.decodeShopData)(sessionToken), { decoded, token } = _a, _data = tslib_1.__rest(_a, ["decoded", "token"]);
17
+ const { shop: sessionShop, host: sessionHost } = _data;
18
+ data = _data;
19
+ if ((sessionShop !== shop) || (sessionHost !== host)) {
20
+ throw new shared_1.ShopifySessionInvalidError('Unauthorized shop or host');
21
+ }
22
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
23
+ const { iat, nbf, exp } = decoded, verifiable = tslib_1.__rest(decoded, ["iat", "nbf", "exp"]);
24
+ const signingSecret = _signingSecret || (0, crypto_1.generateHMAC)((0, shared_1.objectToSortedString)(verifiable), APP_CONFIG.apiSecretKey);
25
+ const verified = (0, jsonwebtoken_1.verify)(sessionToken, signingSecret);
26
+ if (verified == undefined) {
27
+ throw new shared_1.ShopifySessionInvalidError('Verified Undefined');
28
+ }
20
29
  }
21
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
22
- const { iat, nbf, exp } = decoded, verifiable = tslib_1.__rest(decoded, ["iat", "nbf", "exp"]);
23
- const hmac = (0, crypto_1.generateHMAC)((0, shared_1.objectToSortedString)(verifiable), APP_CONFIG.apiSecretKey);
24
- const verified = (0, jsonwebtoken_1.verify)(sessionToken, hmac);
25
- if (verified == undefined) {
26
- throw new shared_1.ShopifySessionInvalidError('Verified Undefined');
30
+ catch (_error) {
31
+ console.error('Error verifying session token', _error);
32
+ throw new shared_1.ShopifySessionInvalidError('Error verifying session token', { message: _error === null || _error === void 0 ? void 0 : _error.message, name: _error === null || _error === void 0 ? void 0 : _error.name });
27
33
  }
28
- }
29
- catch (_error) {
30
- console.error('Error verifying session token', _error);
31
- throw new shared_1.ShopifySessionInvalidError('Error verifying session token');
32
- }
33
- return data;
34
- });
34
+ return data;
35
+ });
36
+ };
35
37
  exports.getVerifiedSessionData = getVerifiedSessionData;
36
38
  //# sourceMappingURL=token.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"token.js","sourceRoot":"","sources":["../../../src/lib/utils/token.js"],"names":[],"mappings":";;;;AAAA,+CAAqC;AAErC,yCAIqB;AACrB,qCAAuC;AAEvC,mHAAmH;AAC5G,MAAM,sBAAsB,GAAG,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAO,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;IACpG,MAAM,EAAC,UAAU,EAAE,GAAG,mBAAmB,CAAA;IAEzC,IAAI,IAAI,CAAA;IACR,IAAI;QACF,kFAAkF;QAClF,6DAA6D;QAC7D,MAAM,KAA+B,IAAA,uBAAc,EAAC,YAAY,CAAC,EAA3D,EAAE,OAAO,EAAE,KAAK,OAA2C,EAAtC,KAAK,sBAA1B,oBAA4B,CAA+B,CAAA;QACjE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,KAAK,CAAA;QACtD,IAAI,GAAG,KAAK,CAAA;QAEZ,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,EAAE;YACpD,MAAM,IAAI,mCAA0B,CAAC,2BAA2B,CAAC,CAAA;SAClE;QAED,6DAA6D;QAC7D,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,KAAoB,OAAO,EAAtB,UAAU,kBAAK,OAAO,EAA1C,qBAAgC,CAAU,CAAA;QAEhD,MAAM,IAAI,GAAG,IAAA,qBAAY,EAAC,IAAA,6BAAoB,EAAC,UAAU,CAAC,EAAE,UAAU,CAAC,YAAY,CAAC,CAAA;QACpF,MAAM,QAAQ,GAAG,IAAA,qBAAM,EAAC,YAAY,EAAE,IAAI,CAAC,CAAA;QAC3C,IAAI,QAAQ,IAAI,SAAS,EAAE;YACzB,MAAM,IAAI,mCAA0B,CAAC,oBAAoB,CAAC,CAAA;SAC3D;KACF;IAAC,OAAO,MAAM,EAAE;QACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,MAAM,CAAC,CAAA;QACtD,MAAM,IAAI,mCAA0B,CAAC,+BAA+B,CAAC,CAAA;KACtE;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA,CAAA;AA7BY,QAAA,sBAAsB,0BA6BlC"}
1
+ {"version":3,"file":"token.js","sourceRoot":"","sources":["../../../src/lib/utils/token.js"],"names":[],"mappings":";;;;AAAA,+CAAqC;AAErC,yCAIqB;AACrB,qCAAuC;AAEvC,iFAAiF;AAC1E,MAAM,sBAAsB,GAAG,CAAC,mBAAmB,EAAE,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,EAAE,EAAE,EAAE;IACpG,MAAM,EAAC,UAAU,EAAE,GAAG,mBAAmB,CAAA;IAEzC,OAAO,CAAO,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;QAC5C,IAAI,IAAI,CAAA;QACR,IAAI;YACF,kFAAkF;YAClF,6DAA6D;YAC7D,MAAM,KAA+B,IAAA,uBAAc,EAAC,YAAY,CAAC,EAA3D,EAAE,OAAO,EAAE,KAAK,OAA2C,EAAtC,KAAK,sBAA1B,oBAA4B,CAA+B,CAAA;YACjE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,KAAK,CAAA;YACtD,IAAI,GAAG,KAAK,CAAA;YAEZ,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,EAAE;gBACpD,MAAM,IAAI,mCAA0B,CAAC,2BAA2B,CAAC,CAAA;aAClE;YAED,6DAA6D;YAC7D,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,KAAoB,OAAO,EAAtB,UAAU,kBAAK,OAAO,EAA1C,qBAAgC,CAAU,CAAA;YAEhD,MAAM,aAAa,GAAG,cAAc,IAAI,IAAA,qBAAY,EAAC,IAAA,6BAAoB,EAAC,UAAU,CAAC,EAAE,UAAU,CAAC,YAAY,CAAC,CAAA;YAE/G,MAAM,QAAQ,GAAG,IAAA,qBAAM,EAAC,YAAY,EAAE,aAAa,CAAC,CAAA;YAEpD,IAAI,QAAQ,IAAI,SAAS,EAAE;gBACzB,MAAM,IAAI,mCAA0B,CAAC,oBAAoB,CAAC,CAAA;aAC3D;SACF;QAAC,OAAO,MAAM,EAAE;YACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,MAAM,CAAC,CAAA;YACtD,MAAM,IAAI,mCAA0B,CAAC,+BAA+B,EAAE,EAAE,OAAO,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,EAAE,CAAC,CAAA;SACxH;QAED,OAAO,IAAI,CAAA;IACb,CAAC,CAAA,CAAA;AACH,CAAC,CAAA;AAjCY,QAAA,sBAAsB,0BAiClC"}
@@ -1,2 +1,2 @@
1
- export function getVerifiedBody(serverRuntimeConfig: any): (req: any, res: any, uri: any) => Promise<any>;
1
+ export function getVerifiedBody(serverRuntimeConfig: any): (req: any, res: any, params: any) => Promise<any>;
2
2
  //# sourceMappingURL=verification.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/verification.js"],"names":[],"mappings":"AAUO,0GA2FN"}
1
+ {"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/verification.js"],"names":[],"mappings":"AAWO,6GA8FN"}
@@ -2,27 +2,29 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getVerifiedBody = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const raw_body_1 = tslib_1.__importDefault(require("raw-body"));
6
5
  const shared_1 = require("../../shared");
6
+ const request_1 = require("./request");
7
7
  const getVerifiedBody = (serverRuntimeConfig) => {
8
8
  const { keyPairs } = serverRuntimeConfig;
9
- return (req, res, uri) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
9
+ return (req, res, params) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
10
10
  var _a;
11
11
  const { 'x-public-key': apiKey, 'x-ephemeral-key': ephemeralPublicKey, 'x-authorization-timestamp': customAuthTimestamp, 'x-authorization': customAuth, } = (_a = req.headers) !== null && _a !== void 0 ? _a : {};
12
+ const { uri: _uri, disableRecryption: _disableRecryption } = params !== null && params !== void 0 ? params : {};
13
+ const disableRecryption = (0, shared_1.isTrue)(_disableRecryption);
14
+ const uri = _uri !== null && _uri !== void 0 ? _uri : req.url;
15
+ let isVerifiable;
12
16
  try {
13
17
  const [authProtocol, authSignature] = (0, shared_1.ensureString)(customAuth).split(' ');
14
- const isVerifiable = (apiKey &&
18
+ isVerifiable = (apiKey &&
15
19
  ephemeralPublicKey &&
16
20
  (keyPairs === null || keyPairs === void 0 ? void 0 : keyPairs.shared) &&
17
21
  customAuthTimestamp &&
18
22
  authSignature &&
19
23
  (authProtocol === 'HMAC-SHA256'));
20
24
  let verificationKeys;
21
- // NOTE raw request body is required for shopify's validation
22
- const _rawBody = yield (0, raw_body_1.default)(req);
23
- const rawBody = _rawBody.toString();
24
- const parsedBody = JSON.parse(rawBody || '{}'); // NOTE: parsedBody should be encrypted when isVerifiable
25
- let decryptedBody = parsedBody;
25
+ const rawBody = yield (0, request_1.ensureRawBody)(req);
26
+ // NOTE: requestBody should be wind up decrypted when isVerifiable (unless disableRecryption, then will pass through)
27
+ let requestBody = (0, shared_1.safeParse)(rawBody);
26
28
  // TEMP!!! remove isVerifiable check once webwidget moved to react
27
29
  if (isVerifiable) {
28
30
  if (!apiKey ||
@@ -41,26 +43,27 @@ const getVerifiedBody = (serverRuntimeConfig) => {
41
43
  if (!verificationKeys) {
42
44
  return res.status(412).json({ message: 'Invalid or missing verification' });
43
45
  }
44
- const verificationPayload = (0, shared_1.objectToSortedString)(Object.assign({ method: (0, shared_1.getRequestMethod)(rawBody, req.method), timestamp: customAuthTimestamp, body: parsedBody }, (0, shared_1.normalizeURIParts)(uri !== null && uri !== void 0 ? uri : req.url)));
46
+ const verificationPayload = (0, shared_1.objectToSortedString)(Object.assign({ method: (0, shared_1.getRequestMethod)(rawBody, req.method), timestamp: customAuthTimestamp, body: requestBody }, (0, shared_1.normalizeURIParts)(uri)));
45
47
  const isValid = yield shared_1.subtle.verifyHMAC(verificationPayload, verificationKeys.derivedHMACKey, authSignature);
46
48
  if (!isValid) {
47
49
  return res.status(412).json({ message: 'Invalid or missing verification' });
48
50
  }
49
- if (rawBody) {
50
- const decryptedMessage = yield shared_1.subtle.decryptMessage(parsedBody, verificationKeys.derivedSecretKey);
51
- decryptedBody = JSON.parse(decryptedMessage !== null && decryptedMessage !== void 0 ? decryptedMessage : '{}');
51
+ if (!disableRecryption && requestBody) {
52
+ const decryptedMessage = yield shared_1.subtle.decryptMessage(requestBody, verificationKeys.derivedSecretKey);
53
+ requestBody = (0, shared_1.safeParse)(decryptedMessage);
52
54
  }
53
55
  }
54
56
  const postProcess = (response) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
55
- if (!response || !isVerifiable || !(verificationKeys === null || verificationKeys === void 0 ? void 0 : verificationKeys.derivedSecretKey)) {
57
+ // eslint-disable-next-line max-len
58
+ if (!response || disableRecryption || !isVerifiable || !(verificationKeys === null || verificationKeys === void 0 ? void 0 : verificationKeys.derivedSecretKey)) {
56
59
  return response;
57
60
  }
58
- return shared_1.subtle.encryptMessage(JSON.stringify(response), verificationKeys === null || verificationKeys === void 0 ? void 0 : verificationKeys.derivedSecretKey);
61
+ return shared_1.subtle.encryptMessage(JSON.stringify(response), verificationKeys.derivedSecretKey);
59
62
  });
60
- return [decryptedBody, postProcess];
63
+ return [requestBody, postProcess];
61
64
  }
62
65
  catch (error) {
63
- console.error(`Error handling request verification for '${req === null || req === void 0 ? void 0 : req.url}'`, error);
66
+ console.error(`Error handling request verification for '${uri}'`, { error, isVerifiable, disableRecryption });
64
67
  return res.status(200).json({ message: (error === null || error === void 0 ? void 0 : error.message) || 'Error handling request verification', targetPath: req === null || req === void 0 ? void 0 : req.url });
65
68
  }
66
69
  });
@@ -1 +1 @@
1
- {"version":3,"file":"verification.js","sourceRoot":"","sources":["../../../src/lib/utils/verification.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verification.js","sourceRoot":"","sources":["../../../src/lib/utils/verification.js"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"withShopify.d.ts","sourceRoot":"","sources":["../../src/lib/withShopify.js"],"names":[],"mappings":"AA0BO;;;;iBAgZN"}
1
+ {"version":3,"file":"withShopify.d.ts","sourceRoot":"","sources":["../../src/lib/withShopify.js"],"names":[],"mappings":"AA0BO;;;;iBAmZN"}
@@ -14,9 +14,9 @@ const withShopify = (nextPhase, _a) => { var _b, _c, _d, _e, _f; return tslib_1.
14
14
  try {
15
15
  const _g = nextConfig !== null && nextConfig !== void 0 ? nextConfig : {}, { basePath: _basePath, publicRuntimeConfig: _publicRuntimeConfig = {}, serverRuntimeConfig: __serverRuntimeConfig = {} } = _g, _nextConfig = tslib_1.__rest(_g, ["basePath", "publicRuntimeConfig", "serverRuntimeConfig"]);
16
16
  const basePath = (0, shared_1.ensureString)(_basePath);
17
- const _h = pluginConfig !== null && pluginConfig !== void 0 ? pluginConfig : {}, { data, interactive, paymentConfig, firebaseConfig, appWebhooks, apiRoutes: { [shared_1.API_ROUTE_NAMES.AUTH_ONLINE]: _apiRouteAuthOnline = '/api/auth/online', [shared_1.API_ROUTE_NAMES.AUTH_OFFLINE]: _apiRouteAuthOffline = '/api/auth/offline', [shared_1.API_ROUTE_NAMES.AUTH_ONLINE_CALLBACK]: _apiRouteAuthOnlineCallback = '/api/auth/online/callback', [shared_1.API_ROUTE_NAMES.AUTH_OFFLINE_CALLBACK]: _apiRouteAuthOfflineCallback, // NOTE: this is usually '/api/auth/offline/callback'
18
- [shared_1.API_ROUTE_NAMES.AUTH_ONLINE_CALLBACK_REAUTH]: _apiRouteAuthOnlineCallbackReauth = '/api/auth/online/callback/reauth', [shared_1.API_ROUTE_NAMES.AUTH_OFFLINE_CALLBACK_REAUTH]: _apiRouteAuthOfflineCallbackReauth, // NOTE: this is usually '/api/auth/offline/callback/reauth'
19
- [shared_1.API_ROUTE_NAMES.APP_INSTALLATION]: _apiRouteAuthAppInstallation = '/api/admin/installation', [shared_1.API_ROUTE_NAMES.APP_UNINSTALLED]: _apiRouteAppUninstalled = '/api/webhooks/app/uninstalled', [shared_1.API_ROUTE_NAMES.APP_PURCHASES_ONE_TIME_UPDATE]: _apiRouteAppOneTimeBilling = '/api/webhooks/app/billing', [shared_1.API_ROUTE_NAMES.APP_SUBSCRIPTIONS_UPDATE]: _apiRouteAppSubscriptionBilling = '/api/webhooks/app/billing', [shared_1.API_ROUTE_NAMES.WEBHOOK_EVENT]: _apiRouteWebhookEvent = '/api/webhooks/event', [shared_1.API_ROUTE_NAMES.SESSION_TOKEN]: _apiRouteSessionToken = '/api/token', } = {}, pageRoutes: { [shared_1.PAGE_ROUTE_NAMES.EXIT]: _pageRouteExit = '/exit', [shared_1.PAGE_ROUTE_NAMES.ERROR]: _pageRouteError = '/error', [shared_1.PAGE_ROUTE_NAMES.SUCCESS]: _pageRouteSuccess = '/', } = {} } = _h, _j = _h.params, _k = _j === void 0 ? {} : _j, { APP_ID: _appId, APP_NAME: _appName, APP_TITLE: _appTitle = _appName, URL: netlifyUrl, HOST: shopifyCLIUrl, FIREBASE_SESSION_SK, FIREBASE_SESSION_PK, NEXT_PUBLIC_APP_BASE_URL, NEXT_PUBLIC_SHOPIFY_API_ID, NEXT_PUBLIC_SHOPIFY_API_KEY, NEXT_PUBLIC_APP_ROUTE_PAGE_EXIT: _pageRouteParamExit, NEXT_PUBLIC_APP_ROUTE_PAGE_ERROR: _pageRouteParamError, NEXT_PUBLIC_APP_ROUTE_PAGE_SUCCESS: _pageRouteParamSuccess, NEXT_PUBLIC_APP_ROUTE_API_AUTH_ONLINE: _apiRouteParamAuthOnline, NEXT_PUBLIC_APP_ROUTE_API_AUTH_OFFLINE: _apiRouteParamAuthOffline, NEXT_PUBLIC_APP_ROUTE_API_AUTH_ONLINE_CALLBACK: _apiRouteParamAuthOnlineCallback, NEXT_PUBLIC_APP_ROUTE_API_AUTH_ONLINE_CALLBACK_REAUTH: _apiRouteParamAuthOnlineCallbackReauth, NEXT_PUBLIC_APP_ROUTE_API_AUTH_OFFLINE_CALLBACK: _apiRouteParamAuthOfflineCallback, NEXT_PUBLIC_APP_ROUTE_API_AUTH_OFFLINE_CALLBACK_REAUTH: _apiRouteParamAuthOfflineCallbackReauth, NEXT_PUBLIC_APP_ROUTE_API_APP_BILLING_SUBSCRIPTION: _apiRouteParamAppSubscriptionBilling, NEXT_PUBLIC_APP_ROUTE_API_APP_BILLING_ONE_TIME: _apiRouteParamAppOneTimeBilling, NEXT_PUBLIC_APP_ROUTE_API_APP_INSTALLATION: _apiRouteParamAppInstallation, NEXT_PUBLIC_APP_ROUTE_API_APP_UNINSTALLED: _apiRouteParamAppUninstalled, NEXT_PUBLIC_APP_ROUTE_API_SESSION_TOKEN: _apiRouteParamSessionToken, NEXT_PUBLIC_APP_ROUTE_WEBHOOK_EVENT: _apiRouteParamWebhookEvent, NEXT_PUBLIC_FB_ROOT_COLLECTION: FB_ROOT_COLLECTION, NEXT_PUBLIC_APP_NAME: _appNameParam = _appTitle, NEXT_PUBLIC_APP_TITLE: _appTitleParam = _appNameParam, PAGE_ROUTES_STANDALONE: _standaloneRoutes, SHOPIFY_API_PUBLIC_KEY: _shopifyPublicAPIKey, SHOPIFY_API_VERSION = shopify_api_1.LATEST_API_VERSION, SHOPIFY_API_SCOPES, SHOPIFY_API_KEY, SHOPIFY_THEME_ID, SHOPIFY_RUN_MODE, CONFIG_DATA, ORIGIN_SAFELIST } = _k, params = tslib_1.__rest(_k, ["APP_ID", "APP_NAME", "APP_TITLE", "URL", "HOST", "FIREBASE_SESSION_SK", "FIREBASE_SESSION_PK", "NEXT_PUBLIC_APP_BASE_URL", "NEXT_PUBLIC_SHOPIFY_API_ID", "NEXT_PUBLIC_SHOPIFY_API_KEY", "NEXT_PUBLIC_APP_ROUTE_PAGE_EXIT", "NEXT_PUBLIC_APP_ROUTE_PAGE_ERROR", "NEXT_PUBLIC_APP_ROUTE_PAGE_SUCCESS", "NEXT_PUBLIC_APP_ROUTE_API_AUTH_ONLINE", "NEXT_PUBLIC_APP_ROUTE_API_AUTH_OFFLINE", "NEXT_PUBLIC_APP_ROUTE_API_AUTH_ONLINE_CALLBACK", "NEXT_PUBLIC_APP_ROUTE_API_AUTH_ONLINE_CALLBACK_REAUTH", "NEXT_PUBLIC_APP_ROUTE_API_AUTH_OFFLINE_CALLBACK", "NEXT_PUBLIC_APP_ROUTE_API_AUTH_OFFLINE_CALLBACK_REAUTH", "NEXT_PUBLIC_APP_ROUTE_API_APP_BILLING_SUBSCRIPTION", "NEXT_PUBLIC_APP_ROUTE_API_APP_BILLING_ONE_TIME", "NEXT_PUBLIC_APP_ROUTE_API_APP_INSTALLATION", "NEXT_PUBLIC_APP_ROUTE_API_APP_UNINSTALLED", "NEXT_PUBLIC_APP_ROUTE_API_SESSION_TOKEN", "NEXT_PUBLIC_APP_ROUTE_WEBHOOK_EVENT", "NEXT_PUBLIC_FB_ROOT_COLLECTION", "NEXT_PUBLIC_APP_NAME", "NEXT_PUBLIC_APP_TITLE", "PAGE_ROUTES_STANDALONE", "SHOPIFY_API_PUBLIC_KEY", "SHOPIFY_API_VERSION", "SHOPIFY_API_SCOPES", "SHOPIFY_API_KEY", "SHOPIFY_THEME_ID", "SHOPIFY_RUN_MODE", "CONFIG_DATA", "ORIGIN_SAFELIST"]);
17
+ const _h = pluginConfig !== null && pluginConfig !== void 0 ? pluginConfig : {}, { data, interactive, paymentConfig, firebaseConfig, appWebhooks } = _h, _j = _h.params, _k = _j === void 0 ? {} : _j, { APP_ID: _appId, APP_NAME: _appName, APP_TITLE: _appTitle = _appName, URL: netlifyUrl, HOST: shopifyCLIUrl, FIREBASE_SESSION_SK, FIREBASE_SESSION_PK, NEXT_PUBLIC_APP_BASE_URL, NEXT_PUBLIC_SHOPIFY_API_ID, NEXT_PUBLIC_SHOPIFY_API_KEY, NEXT_PUBLIC_BASE_PATH_API: API_BASE_PATH = '/api', NEXT_PUBLIC_APP_ROUTE_PAGE_EXIT: _pageRouteParamExit, NEXT_PUBLIC_APP_ROUTE_PAGE_ERROR: _pageRouteParamError, NEXT_PUBLIC_APP_ROUTE_PAGE_SUCCESS: _pageRouteParamSuccess, NEXT_PUBLIC_APP_ROUTE_API_AUTH_ONLINE: _apiRouteParamAuthOnline, NEXT_PUBLIC_APP_ROUTE_API_AUTH_OFFLINE: _apiRouteParamAuthOffline, NEXT_PUBLIC_APP_ROUTE_API_AUTH_ONLINE_CALLBACK: _apiRouteParamAuthOnlineCallback, NEXT_PUBLIC_APP_ROUTE_API_AUTH_ONLINE_CALLBACK_REAUTH: _apiRouteParamAuthOnlineCallbackReauth, NEXT_PUBLIC_APP_ROUTE_API_AUTH_OFFLINE_CALLBACK: _apiRouteParamAuthOfflineCallback, NEXT_PUBLIC_APP_ROUTE_API_AUTH_OFFLINE_CALLBACK_REAUTH: _apiRouteParamAuthOfflineCallbackReauth, NEXT_PUBLIC_APP_ROUTE_API_APP_BILLING_SUBSCRIPTION: _apiRouteParamAppSubscriptionBilling, NEXT_PUBLIC_APP_ROUTE_API_APP_BILLING_ONE_TIME: _apiRouteParamAppOneTimeBilling, NEXT_PUBLIC_APP_ROUTE_API_APP_INSTALLATION: _apiRouteParamAppInstallation, NEXT_PUBLIC_APP_ROUTE_API_APP_UNINSTALLED: _apiRouteParamAppUninstalled, NEXT_PUBLIC_APP_ROUTE_API_SESSION_TOKEN: _apiRouteParamSessionToken, NEXT_PUBLIC_APP_ROUTE_WEBHOOK_EVENT: _apiRouteParamWebhookEvent, NEXT_PUBLIC_FB_ROOT_COLLECTION: FB_ROOT_COLLECTION, NEXT_PUBLIC_APP_NAME: _appNameParam = _appTitle, NEXT_PUBLIC_APP_TITLE: _appTitleParam = _appNameParam, PAGE_ROUTES_STANDALONE: _standaloneRoutes, SHOPIFY_API_PUBLIC_KEY: _shopifyPublicAPIKey, SHOPIFY_API_VERSION = shopify_api_1.LATEST_API_VERSION, SHOPIFY_API_SCOPES, SHOPIFY_API_KEY, SHOPIFY_THEME_ID, SHOPIFY_RUN_MODE, CONFIG_DATA, ORIGIN_SAFELIST } = _k, params = tslib_1.__rest(_k, ["APP_ID", "APP_NAME", "APP_TITLE", "URL", "HOST", "FIREBASE_SESSION_SK", "FIREBASE_SESSION_PK", "NEXT_PUBLIC_APP_BASE_URL", "NEXT_PUBLIC_SHOPIFY_API_ID", "NEXT_PUBLIC_SHOPIFY_API_KEY", "NEXT_PUBLIC_BASE_PATH_API", "NEXT_PUBLIC_APP_ROUTE_PAGE_EXIT", "NEXT_PUBLIC_APP_ROUTE_PAGE_ERROR", "NEXT_PUBLIC_APP_ROUTE_PAGE_SUCCESS", "NEXT_PUBLIC_APP_ROUTE_API_AUTH_ONLINE", "NEXT_PUBLIC_APP_ROUTE_API_AUTH_OFFLINE", "NEXT_PUBLIC_APP_ROUTE_API_AUTH_ONLINE_CALLBACK", "NEXT_PUBLIC_APP_ROUTE_API_AUTH_ONLINE_CALLBACK_REAUTH", "NEXT_PUBLIC_APP_ROUTE_API_AUTH_OFFLINE_CALLBACK", "NEXT_PUBLIC_APP_ROUTE_API_AUTH_OFFLINE_CALLBACK_REAUTH", "NEXT_PUBLIC_APP_ROUTE_API_APP_BILLING_SUBSCRIPTION", "NEXT_PUBLIC_APP_ROUTE_API_APP_BILLING_ONE_TIME", "NEXT_PUBLIC_APP_ROUTE_API_APP_INSTALLATION", "NEXT_PUBLIC_APP_ROUTE_API_APP_UNINSTALLED", "NEXT_PUBLIC_APP_ROUTE_API_SESSION_TOKEN", "NEXT_PUBLIC_APP_ROUTE_WEBHOOK_EVENT", "NEXT_PUBLIC_FB_ROOT_COLLECTION", "NEXT_PUBLIC_APP_NAME", "NEXT_PUBLIC_APP_TITLE", "PAGE_ROUTES_STANDALONE", "SHOPIFY_API_PUBLIC_KEY", "SHOPIFY_API_VERSION", "SHOPIFY_API_SCOPES", "SHOPIFY_API_KEY", "SHOPIFY_THEME_ID", "SHOPIFY_RUN_MODE", "CONFIG_DATA", "ORIGIN_SAFELIST"]), { apiRoutes: { [shared_1.API_ROUTE_NAMES.AUTH_ONLINE]: _apiRouteAuthOnline = `${API_BASE_PATH}/auth/online`, [shared_1.API_ROUTE_NAMES.AUTH_OFFLINE]: _apiRouteAuthOffline = `${API_BASE_PATH}/auth/offline`, [shared_1.API_ROUTE_NAMES.AUTH_ONLINE_CALLBACK]: _apiRouteAuthOnlineCallback = `${API_BASE_PATH}/auth/online/callback`, [shared_1.API_ROUTE_NAMES.AUTH_OFFLINE_CALLBACK]: _apiRouteAuthOfflineCallback, // NOTE: this is usually '/api/auth/offline/callback'
18
+ [shared_1.API_ROUTE_NAMES.AUTH_ONLINE_CALLBACK_REAUTH]: _apiRouteAuthOnlineCallbackReauth = `${API_BASE_PATH}/auth/online/callback/reauth`, [shared_1.API_ROUTE_NAMES.AUTH_OFFLINE_CALLBACK_REAUTH]: _apiRouteAuthOfflineCallbackReauth, // NOTE: this is usually '/api/auth/offline/callback/reauth'
19
+ [shared_1.API_ROUTE_NAMES.APP_INSTALLATION]: _apiRouteAuthAppInstallation = `${API_BASE_PATH}/admin/installation`, [shared_1.API_ROUTE_NAMES.APP_UNINSTALLED]: _apiRouteAppUninstalled = `${API_BASE_PATH}/webhooks/app/uninstalled`, [shared_1.API_ROUTE_NAMES.APP_PURCHASES_ONE_TIME_UPDATE]: _apiRouteAppOneTimeBilling = `${API_BASE_PATH}/webhooks/app/billing`, [shared_1.API_ROUTE_NAMES.APP_SUBSCRIPTIONS_UPDATE]: _apiRouteAppSubscriptionBilling = `${API_BASE_PATH}/webhooks/app/billing`, [shared_1.API_ROUTE_NAMES.WEBHOOK_EVENT]: _apiRouteWebhookEvent = `${API_BASE_PATH}/webhooks/event`, [shared_1.API_ROUTE_NAMES.SESSION_TOKEN]: _apiRouteSessionToken = `${API_BASE_PATH}/token`, } = {}, pageRoutes: { [shared_1.PAGE_ROUTE_NAMES.EXIT]: _pageRouteExit = '/exit', [shared_1.PAGE_ROUTE_NAMES.ERROR]: _pageRouteError = '/error', [shared_1.PAGE_ROUTE_NAMES.SUCCESS]: _pageRouteSuccess = '/', } = {} } = _h;
20
20
  const SHOPIFY_API_PUBLIC_KEY = NEXT_PUBLIC_SHOPIFY_API_KEY || _shopifyPublicAPIKey;
21
21
  // NOTE APP_ID in shopify cli defaults to client id/SHOPIFY_API_PUBLIC_KEY
22
22
  const APP_ID = NEXT_PUBLIC_SHOPIFY_API_ID || _appId || SHOPIFY_API_PUBLIC_KEY;
@@ -200,6 +200,7 @@ const withShopify = (nextPhase, _a) => { var _b, _c, _d, _e, _f; return tslib_1.
200
200
  SHOPIFY_RUN_MODE,
201
201
  SHOPIFY_API_PUBLIC_KEY,
202
202
  APP_WEBHOOK_TOPICS,
203
+ API_BASE_PATH,
203
204
  APP_BASE_URL,
204
205
  API_URLS,
205
206
  API_PATHS,
@@ -223,6 +224,7 @@ const withShopify = (nextPhase, _a) => { var _b, _c, _d, _e, _f; return tslib_1.
223
224
  PAGE_ROUTES_STANDALONE,
224
225
  PAGE_ROUTE_NAMES: shared_1.PAGE_ROUTE_NAMES,
225
226
  PAGE_PATHS,
227
+ API_BASE_PATH,
226
228
  API_PATHS,
227
229
  API_URLS,
228
230
  APP_BASE_URL,