@agnostack/next-shopify 1.15.0-beta.13 → 1.15.0-beta.14

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 (102) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/lib/handlers/api/auth.js +15 -11
  3. package/dist/lib/handlers/api/auth.js.map +1 -1
  4. package/dist/lib/handlers/api/billing.js +13 -9
  5. package/dist/lib/handlers/api/billing.js.map +1 -1
  6. package/dist/lib/handlers/api/callback.js +37 -33
  7. package/dist/lib/handlers/api/callback.js.map +1 -1
  8. package/dist/lib/handlers/api/index.js +25 -7
  9. package/dist/lib/handlers/api/index.js.map +1 -1
  10. package/dist/lib/handlers/api/uninstall.js +12 -8
  11. package/dist/lib/handlers/api/uninstall.js.map +1 -1
  12. package/dist/lib/handlers/api/verifiable/appInstallation.js +11 -7
  13. package/dist/lib/handlers/api/verifiable/appInstallation.js.map +1 -1
  14. package/dist/lib/handlers/api/verifiable/graph.js +26 -22
  15. package/dist/lib/handlers/api/verifiable/graph.js.map +1 -1
  16. package/dist/lib/handlers/api/verifiable/index.js +21 -5
  17. package/dist/lib/handlers/api/verifiable/index.js.map +1 -1
  18. package/dist/lib/handlers/api/verifiable/proxy.js +39 -32
  19. package/dist/lib/handlers/api/verifiable/proxy.js.map +1 -1
  20. package/dist/lib/handlers/api/verifiable/rest.js +23 -19
  21. package/dist/lib/handlers/api/verifiable/rest.js.map +1 -1
  22. package/dist/lib/handlers/api/verifiable/token.js +27 -23
  23. package/dist/lib/handlers/api/verifiable/token.js.map +1 -1
  24. package/dist/lib/handlers/api/webhook.js +13 -9
  25. package/dist/lib/handlers/api/webhook.js.map +1 -1
  26. package/dist/lib/handlers/index.js +18 -2
  27. package/dist/lib/handlers/index.js.map +1 -1
  28. package/dist/lib/handlers/ssr/index.js +18 -2
  29. package/dist/lib/handlers/ssr/index.js.map +1 -1
  30. package/dist/lib/handlers/ssr/protect.js +24 -17
  31. package/dist/lib/handlers/ssr/protect.js.map +1 -1
  32. package/dist/lib/handlers/ssr/wrap.js +10 -6
  33. package/dist/lib/handlers/ssr/wrap.js.map +1 -1
  34. package/dist/lib/index.js +23 -4
  35. package/dist/lib/index.js.map +1 -1
  36. package/dist/lib/utils/billing.js +23 -18
  37. package/dist/lib/utils/billing.js.map +1 -1
  38. package/dist/lib/utils/crypto.js +25 -15
  39. package/dist/lib/utils/crypto.js.map +1 -1
  40. package/dist/lib/utils/firebase.js +29 -17
  41. package/dist/lib/utils/firebase.js.map +1 -1
  42. package/dist/lib/utils/headers.js +13 -6
  43. package/dist/lib/utils/headers.js.map +1 -1
  44. package/dist/lib/utils/index.js +24 -8
  45. package/dist/lib/utils/index.js.map +1 -1
  46. package/dist/lib/utils/session.js +64 -59
  47. package/dist/lib/utils/session.js.map +1 -1
  48. package/dist/lib/utils/shopify-api-js/oauth.js +23 -16
  49. package/dist/lib/utils/shopify-api-js/oauth.js.map +1 -1
  50. package/dist/lib/utils/shopify.js +37 -25
  51. package/dist/lib/utils/shopify.js.map +1 -1
  52. package/dist/lib/utils/token.js +15 -11
  53. package/dist/lib/utils/token.js.map +1 -1
  54. package/dist/plugins/index.js +18 -2
  55. package/dist/plugins/index.js.map +1 -1
  56. package/dist/plugins/withShopify.js +83 -79
  57. package/dist/plugins/withShopify.js.map +1 -1
  58. package/dist/react/hooks/index.js +17 -1
  59. package/dist/react/hooks/index.js.map +1 -1
  60. package/dist/react/hooks/useVerification.js +11 -7
  61. package/dist/react/hooks/useVerification.js.map +1 -1
  62. package/dist/react/index.js +18 -2
  63. package/dist/react/index.js.map +1 -1
  64. package/dist/runtime/index.js +17 -1
  65. package/dist/runtime/index.js.map +1 -1
  66. package/dist/shared/constants.js +15 -11
  67. package/dist/shared/constants.js.map +1 -1
  68. package/dist/shared/datetime.js +110 -83
  69. package/dist/shared/datetime.js.map +1 -1
  70. package/dist/shared/display.js +231 -151
  71. package/dist/shared/display.js.map +1 -1
  72. package/dist/shared/errors.js +12 -5
  73. package/dist/shared/errors.js.map +1 -1
  74. package/dist/shared/graph.js +14 -11
  75. package/dist/shared/graph.js.map +1 -1
  76. package/dist/shared/index.js +27 -11
  77. package/dist/shared/index.js.map +1 -1
  78. package/dist/shared/match.js +25 -17
  79. package/dist/shared/match.js.map +1 -1
  80. package/dist/shared/request.js +19 -13
  81. package/dist/shared/request.js.map +1 -1
  82. package/dist/shared/shopify.js +31 -21
  83. package/dist/shared/shopify.js.map +1 -1
  84. package/dist/shared/subtlecrypto.js +39 -13
  85. package/dist/shared/subtlecrypto.js.map +1 -1
  86. package/dist/shared/uuid.js +8 -3
  87. package/dist/shared/uuid.js.map +1 -1
  88. package/dist/shared/verification.js +28 -22
  89. package/dist/shared/verification.js.map +1 -1
  90. package/dist/umd/plugins.js +807 -0
  91. package/dist/umd/plugins.js.map +1 -0
  92. package/dist/verification/index.js +19 -3
  93. package/dist/verification/index.js.map +1 -1
  94. package/dist/verification/utils/errors.js +5 -1
  95. package/dist/verification/utils/errors.js.map +1 -1
  96. package/dist/verification/utils/index.js +18 -2
  97. package/dist/verification/utils/index.js.map +1 -1
  98. package/dist/verification/utils/rawbody.js +5 -1
  99. package/dist/verification/utils/rawbody.js.map +1 -1
  100. package/dist/verification/verification.js +23 -19
  101. package/dist/verification/verification.js.map +1 -1
  102. package/package.json +6 -1
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
3
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
4
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -18,34 +19,39 @@ var __rest = (this && this.__rest) || function (s, e) {
18
19
  }
19
20
  return t;
20
21
  };
21
- import isbot from 'isbot';
22
- import { abstractConvertIncomingResponse, abstractConvertRequest, abstractConvertResponse, Cookies, } from '@shopify/shopify-api/runtime';
23
- import { PrivateAppError, STATE_COOKIE_NAME, } from '@shopify/shopify-api';
24
- import { getNonce } from '../crypto';
25
- import { getSanitizedShopData } from '../../../shared';
22
+ var __importDefault = (this && this.__importDefault) || function (mod) {
23
+ return (mod && mod.__esModule) ? mod : { "default": mod };
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.beginAuth = void 0;
27
+ const isbot_1 = __importDefault(require("isbot"));
28
+ const runtime_1 = require("@shopify/shopify-api/runtime");
29
+ const shopify_api_1 = require("@shopify/shopify-api");
30
+ const crypto_1 = require("../crypto");
31
+ const shared_1 = require("../../../shared");
26
32
  // NOTE this is a custom implementation of shopify.auth.begin from @shopify/shopify-api
27
33
  // for leveraging a custom auth state
28
- export const beginAuth = (_a) => __awaiter(void 0, void 0, void 0, function* () {
34
+ const beginAuth = (_a) => __awaiter(void 0, void 0, void 0, function* () {
29
35
  var { config, isOnline, callbackPath, shop: shopProp, state: stateProp } = _a, adapterArgs = __rest(_a, ["config", "isOnline", "callbackPath", "shop", "state"]);
30
36
  if (config.isCustomStoreApp) {
31
- throw new PrivateAppError('Cannot perform OAuth for private apps');
37
+ throw new shopify_api_1.PrivateAppError('Cannot perform OAuth for private apps');
32
38
  }
33
- const request = yield abstractConvertRequest(adapterArgs);
34
- const response = yield abstractConvertIncomingResponse(adapterArgs);
35
- if (isbot(request.headers['User-Agent'])) {
39
+ const request = yield (0, runtime_1.abstractConvertRequest)(adapterArgs);
40
+ const response = yield (0, runtime_1.abstractConvertIncomingResponse)(adapterArgs);
41
+ if ((0, isbot_1.default)(request.headers['User-Agent'])) {
36
42
  console.log(`Possible bot request to beginAuth: `, {
37
43
  userAgent: request.headers['User-Agent'],
38
44
  });
39
45
  response.statusCode = 410;
40
- return abstractConvertResponse(response, adapterArgs);
46
+ return (0, runtime_1.abstractConvertResponse)(response, adapterArgs);
41
47
  }
42
- const cookies = new Cookies(request, response, {
48
+ const cookies = new runtime_1.Cookies(request, response, {
43
49
  keys: [config.apiSecretKey],
44
50
  secure: true,
45
51
  });
46
- const { shop } = getSanitizedShopData(shopProp);
47
- const state = stateProp !== null && stateProp !== void 0 ? stateProp : getNonce();
48
- yield cookies.setAndSign(STATE_COOKIE_NAME, state, {
52
+ const { shop } = (0, shared_1.getSanitizedShopData)(shopProp);
53
+ const state = stateProp !== null && stateProp !== void 0 ? stateProp : (0, crypto_1.getNonce)();
54
+ yield cookies.setAndSign(shopify_api_1.STATE_COOKIE_NAME, state, {
49
55
  expires: new Date(Date.now() + 60000),
50
56
  sameSite: 'lax',
51
57
  secure: true,
@@ -61,6 +67,7 @@ export const beginAuth = (_a) => __awaiter(void 0, void 0, void 0, function* ()
61
67
  response.statusCode = 302;
62
68
  response.statusText = 'Found';
63
69
  response.headers = Object.assign(Object.assign(Object.assign({}, response.headers), cookies.response.headers), { Location: `https://${shop}/admin/oauth/authorize?${queryParams}` });
64
- return abstractConvertResponse(response, adapterArgs);
70
+ return (0, runtime_1.abstractConvertResponse)(response, adapterArgs);
65
71
  });
72
+ exports.beginAuth = beginAuth;
66
73
  //# sourceMappingURL=oauth.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../../../src/lib/utils/shopify-api-js/oauth.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EACL,+BAA+B,EAC/B,sBAAsB,EACtB,uBAAuB,EACvB,OAAO,GACR,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACL,eAAe,EACf,iBAAiB,GAClB,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAEtD,uFAAuF;AACvF,qCAAqC;AACrC,MAAM,CAAC,MAAM,SAAS,GAAG,CAAO,EAO/B,EAAE,EAAE;QAP2B,EAC9B,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,SAAS,OAEjB,EADI,WAAW,cANgB,uDAO/B,CADe;IAEd,IAAI,MAAM,CAAC,gBAAgB,EAAE;QAC3B,MAAM,IAAI,eAAe,CAAC,uCAAuC,CAAC,CAAA;KACnE;IAED,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,WAAW,CAAC,CAAA;IACzD,MAAM,QAAQ,GAAG,MAAM,+BAA+B,CAAC,WAAW,CAAC,CAAA;IAEnE,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE;QACxC,OAAO,CAAC,GAAG,CAAC,qCAAqC,EAAE;YACjD,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC;SACzC,CAAC,CAAA;QACF,QAAQ,CAAC,UAAU,GAAG,GAAG,CAAA;QACzB,OAAO,uBAAuB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;KACtD;IAED,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE;QAC7C,IAAI,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC;QAC3B,MAAM,EAAE,IAAI;KACb,CAAC,CAAA;IAEF,MAAM,EAAE,IAAI,EAAE,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAA;IAC/C,MAAM,KAAK,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,QAAQ,EAAE,CAAA;IAErC,MAAM,OAAO,CAAC,UAAU,CAAC,iBAAiB,EAAE,KAAK,EAAE;QACjD,OAAO,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QACrC,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,IAAI;QACZ,IAAI,EAAE,YAAY;KACnB,CAAC,CAAA;IAEF,MAAM,WAAW,GAAG,IAAI,eAAe,CAAC;QACtC,SAAS,EAAE,MAAM,CAAC,MAAM;QACxB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;QAC/B,YAAY,EAAE,GAAG,MAAM,CAAC,UAAU,MAAM,MAAM,CAAC,QAAQ,GAAG,YAAY,EAAE;QACxE,KAAK;QACL,iBAAiB,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;KAC9C,CAAC,CAAC,QAAQ,EAAE,CAAA;IAEb,QAAQ,CAAC,UAAU,GAAG,GAAG,CAAA;IACzB,QAAQ,CAAC,UAAU,GAAG,OAAO,CAAA;IAC7B,QAAQ,CAAC,OAAO,iDACX,QAAQ,CAAC,OAAO,GAChB,OAAO,CAAC,QAAQ,CAAC,OAAO,KAC3B,QAAQ,EAAE,WAAW,IAAI,0BAA0B,WAAW,EAAE,GACjE,CAAA;IAED,OAAO,uBAAuB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;AACvD,CAAC,CAAA,CAAA"}
1
+ {"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../../../src/lib/utils/shopify-api-js/oauth.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAyB;AACzB,0DAKqC;AACrC,sDAG6B;AAE7B,sCAAoC;AACpC,4CAAsD;AAEtD,uFAAuF;AACvF,qCAAqC;AAC9B,MAAM,SAAS,GAAG,CAAO,EAO/B,EAAE,EAAE;QAP2B,EAC9B,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,SAAS,OAEjB,EADI,WAAW,cANgB,uDAO/B,CADe;IAEd,IAAI,MAAM,CAAC,gBAAgB,EAAE;QAC3B,MAAM,IAAI,6BAAe,CAAC,uCAAuC,CAAC,CAAA;KACnE;IAED,MAAM,OAAO,GAAG,MAAM,IAAA,gCAAsB,EAAC,WAAW,CAAC,CAAA;IACzD,MAAM,QAAQ,GAAG,MAAM,IAAA,yCAA+B,EAAC,WAAW,CAAC,CAAA;IAEnE,IAAI,IAAA,eAAK,EAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE;QACxC,OAAO,CAAC,GAAG,CAAC,qCAAqC,EAAE;YACjD,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC;SACzC,CAAC,CAAA;QACF,QAAQ,CAAC,UAAU,GAAG,GAAG,CAAA;QACzB,OAAO,IAAA,iCAAuB,EAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;KACtD;IAED,MAAM,OAAO,GAAG,IAAI,iBAAO,CAAC,OAAO,EAAE,QAAQ,EAAE;QAC7C,IAAI,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC;QAC3B,MAAM,EAAE,IAAI;KACb,CAAC,CAAA;IAEF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAA,6BAAoB,EAAC,QAAQ,CAAC,CAAA;IAC/C,MAAM,KAAK,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,IAAA,iBAAQ,GAAE,CAAA;IAErC,MAAM,OAAO,CAAC,UAAU,CAAC,+BAAiB,EAAE,KAAK,EAAE;QACjD,OAAO,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QACrC,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,IAAI;QACZ,IAAI,EAAE,YAAY;KACnB,CAAC,CAAA;IAEF,MAAM,WAAW,GAAG,IAAI,eAAe,CAAC;QACtC,SAAS,EAAE,MAAM,CAAC,MAAM;QACxB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;QAC/B,YAAY,EAAE,GAAG,MAAM,CAAC,UAAU,MAAM,MAAM,CAAC,QAAQ,GAAG,YAAY,EAAE;QACxE,KAAK;QACL,iBAAiB,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;KAC9C,CAAC,CAAC,QAAQ,EAAE,CAAA;IAEb,QAAQ,CAAC,UAAU,GAAG,GAAG,CAAA;IACzB,QAAQ,CAAC,UAAU,GAAG,OAAO,CAAA;IAC7B,QAAQ,CAAC,OAAO,iDACX,QAAQ,CAAC,OAAO,GAChB,OAAO,CAAC,QAAQ,CAAC,OAAO,KAC3B,QAAQ,EAAE,WAAW,IAAI,0BAA0B,WAAW,EAAE,GACjE,CAAA;IAED,OAAO,IAAA,iCAAuB,EAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;AACvD,CAAC,CAAA,CAAA;AAvDY,QAAA,SAAS,aAuDrB"}
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
3
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
4
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -18,42 +19,50 @@ var __rest = (this && this.__rest) || function (s, e) {
18
19
  }
19
20
  return t;
20
21
  };
21
- import chalk from 'chalk';
22
- import '@shopify/shopify-api/adapters/node';
23
- import { shopifyApi, DeliveryMethod } from '@shopify/shopify-api';
24
- import { isTrue, appendQuery, ensureArray, ensureObject, stringNotEmpty, ShopifySessionAuthenticationError, API_WEBHOOK_TOPICS, API_ROUTE_NAMES, } from '../../shared';
25
- const VALID_WEBHOOK_TOPICS = Object.keys(API_WEBHOOK_TOPICS);
22
+ var __importDefault = (this && this.__importDefault) || function (mod) {
23
+ return (mod && mod.__esModule) ? mod : { "default": mod };
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.SHOP_QUERY = exports.getAuthErrorResponse = exports.getCallback = exports.prepareWebhookHandlers = exports.getInitializedShopify = exports.allowLocalBypass = exports.getSecurityHeader = void 0;
27
+ const chalk_1 = __importDefault(require("chalk"));
28
+ require("@shopify/shopify-api/adapters/node");
29
+ const shopify_api_1 = require("@shopify/shopify-api");
30
+ const shared_1 = require("../../shared");
31
+ const VALID_WEBHOOK_TOPICS = Object.keys(shared_1.API_WEBHOOK_TOPICS);
26
32
  // NOTE rejection response shows accepted value is "frame-ancestors https://admin.shopify.com https://[shop].myshopify.com"
27
- export const getSecurityHeader = (shop, { isEmbeddedApp } = {}) => ((stringNotEmpty(shop) && isTrue(isEmbeddedApp))
33
+ const getSecurityHeader = (shop, { isEmbeddedApp } = {}) => (((0, shared_1.stringNotEmpty)(shop) && (0, shared_1.isTrue)(isEmbeddedApp))
28
34
  ? `frame-ancestors https://${encodeURIComponent(shop)} https://admin.shopify.com;`
29
35
  : "frame-ancestors 'none';");
36
+ exports.getSecurityHeader = getSecurityHeader;
30
37
  // NOTE: this should handle running in next to test non-shopify functionality
31
- export const allowLocalBypass = ({ SHOPIFY_RUN_MODE, APP_CONFIG } = {}) => ((SHOPIFY_RUN_MODE !== 'cli') &&
38
+ const allowLocalBypass = ({ SHOPIFY_RUN_MODE, APP_CONFIG } = {}) => ((SHOPIFY_RUN_MODE !== 'cli') &&
32
39
  (!APP_CONFIG.apiSecretKey ||
33
40
  !APP_CONFIG.hostName ||
34
41
  !APP_CONFIG.apiKey ||
35
42
  !APP_CONFIG.scopes));
36
- export const getInitializedShopify = (serverRuntimeConfig) => {
43
+ exports.allowLocalBypass = allowLocalBypass;
44
+ const getInitializedShopify = (serverRuntimeConfig) => {
37
45
  // NOTE: this should handle running in next to test non-shopify functionality
38
- const shouldBypassProtect = allowLocalBypass(serverRuntimeConfig);
46
+ const shouldBypassProtect = (0, exports.allowLocalBypass)(serverRuntimeConfig);
39
47
  if (shouldBypassProtect) {
40
- console.info(`${chalk.yellowBright('next-shopify')} - [${chalk.bold('getInitializedShopify')}]: ${`Bypassing local protect - should ONLY happen when running in next to test non-shopify functionality!`}`);
48
+ console.info(`${chalk_1.default.yellowBright('next-shopify')} - [${chalk_1.default.bold('getInitializedShopify')}]: ${`Bypassing local protect - should ONLY happen when running in next to test non-shopify functionality!`}`);
41
49
  return undefined;
42
50
  }
43
- return shopifyApi(serverRuntimeConfig.APP_CONFIG);
51
+ return (0, shopify_api_1.shopifyApi)(serverRuntimeConfig.APP_CONFIG);
44
52
  };
45
- export const prepareWebhookHandlers = (serverRuntimeConfig, params) => (Object.entries(ensureObject(serverRuntimeConfig.APP_WEBHOOKS)).reduce((_webhookHandlers, [webhookTopic, webhooks]) => {
53
+ exports.getInitializedShopify = getInitializedShopify;
54
+ const prepareWebhookHandlers = (serverRuntimeConfig, params) => (Object.entries((0, shared_1.ensureObject)(serverRuntimeConfig.APP_WEBHOOKS)).reduce((_webhookHandlers, [webhookTopic, webhooks]) => {
46
55
  if (!VALID_WEBHOOK_TOPICS.includes(webhookTopic)) {
47
56
  console.warn(`Ignoring unsupported webhook topic: ${webhookTopic}`);
48
57
  return _webhookHandlers;
49
58
  }
50
59
  const queryString = new URLSearchParams(params).toString();
51
- return Object.assign(Object.assign({}, _webhookHandlers), { [webhookTopic]: ensureArray(webhooks).reduce((_topicWebhooks, _a) => {
52
- var { url, path, callback: _callback, callbackUrl: _callbackUrl, deliveryMethod = DeliveryMethod.Http } = _a,
60
+ return Object.assign(Object.assign({}, _webhookHandlers), { [webhookTopic]: (0, shared_1.ensureArray)(webhooks).reduce((_topicWebhooks, _a) => {
61
+ var { url, path, callback: _callback, callbackUrl: _callbackUrl, deliveryMethod = shopify_api_1.DeliveryMethod.Http } = _a,
53
62
  // NOTE: this lets us support more advanced webhook types (EventBridgeWebhookHandler or PubSubWebhookHandler)
54
63
  webhookConfig = __rest(_a, ["url", "path", "callback", "callbackUrl", "deliveryMethod"]);
55
- const callbackUrl = appendQuery(_callbackUrl || url || path, queryString);
56
- console.info(`${chalk.yellowBright('next-shopify')} - [${chalk.bold(webhookTopic)}]: ${`Adding webhook handler [${deliveryMethod}]${callbackUrl ? ` using callbackUrl: ${callbackUrl}` : ''}.`}`);
64
+ const callbackUrl = (0, shared_1.appendQuery)(_callbackUrl || url || path, queryString);
65
+ console.info(`${chalk_1.default.yellowBright('next-shopify')} - [${chalk_1.default.bold(webhookTopic)}]: ${`Adding webhook handler [${deliveryMethod}]${callbackUrl ? ` using callbackUrl: ${callbackUrl}` : ''}.`}`);
57
66
  return [
58
67
  ..._topicWebhooks,
59
68
  Object.assign(Object.assign(Object.assign({ deliveryMethod }, webhookConfig), callbackUrl && { callbackUrl }), (callbackUrl || _callback) && {
@@ -68,26 +77,28 @@ export const prepareWebhookHandlers = (serverRuntimeConfig, params) => (Object.e
68
77
  ];
69
78
  }, []) });
70
79
  }, {}));
71
- export const getCallback = (data, { reAuth, isOnline }) => {
80
+ exports.prepareWebhookHandlers = prepareWebhookHandlers;
81
+ const getCallback = (data, { reAuth, isOnline }) => {
72
82
  const authCallbacks = reAuth ? {
73
- online: data[API_ROUTE_NAMES.AUTH_ONLINE_CALLBACK_REAUTH],
74
- offline: data[API_ROUTE_NAMES.AUTH_OFFLINE_CALLBACK_REAUTH],
83
+ online: data[shared_1.API_ROUTE_NAMES.AUTH_ONLINE_CALLBACK_REAUTH],
84
+ offline: data[shared_1.API_ROUTE_NAMES.AUTH_OFFLINE_CALLBACK_REAUTH],
75
85
  } : {
76
- online: data[API_ROUTE_NAMES.AUTH_ONLINE_CALLBACK],
77
- offline: data[API_ROUTE_NAMES.AUTH_OFFLINE_CALLBACK],
86
+ online: data[shared_1.API_ROUTE_NAMES.AUTH_ONLINE_CALLBACK],
87
+ offline: data[shared_1.API_ROUTE_NAMES.AUTH_OFFLINE_CALLBACK],
78
88
  };
79
89
  return isOnline
80
90
  ? authCallbacks.online
81
91
  : authCallbacks.offline || authCallbacks.online;
82
92
  };
83
- export const getAuthErrorResponse = (serverRuntimeConfig, { error, shop }) => {
93
+ exports.getCallback = getCallback;
94
+ const getAuthErrorResponse = (serverRuntimeConfig, { error, shop }) => {
84
95
  const { message, data } = error;
85
96
  const { API_URLS } = serverRuntimeConfig;
86
97
  const queryParams = new URLSearchParams({
87
98
  shop,
88
- reAuth: (error instanceof ShopifySessionAuthenticationError),
99
+ reAuth: (error instanceof shared_1.ShopifySessionAuthenticationError),
89
100
  }).toString();
90
- const reauthorizationUrl = (data === null || data === void 0 ? void 0 : data.redirectUrl) || `${API_URLS[API_ROUTE_NAMES.AUTH_ONLINE]}?${queryParams}`; // HMMMMM: do we not need host here??
101
+ const reauthorizationUrl = (data === null || data === void 0 ? void 0 : data.redirectUrl) || `${API_URLS[shared_1.API_ROUTE_NAMES.AUTH_ONLINE]}?${queryParams}`; // HMMMMM: do we not need host here??
91
102
  return {
92
103
  statusCode: 403,
93
104
  message,
@@ -97,7 +108,8 @@ export const getAuthErrorResponse = (serverRuntimeConfig, { error, shop }) => {
97
108
  },
98
109
  };
99
110
  };
100
- export const SHOP_QUERY = `
111
+ exports.getAuthErrorResponse = getAuthErrorResponse;
112
+ exports.SHOP_QUERY = `
101
113
  {
102
114
  shop {
103
115
  name
@@ -1 +1 @@
1
- {"version":3,"file":"shopify.js","sourceRoot":"","sources":["../../../src/lib/utils/shopify.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shopify.js","sourceRoot":"","sources":["../../../src/lib/utils/shopify.js"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
3
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
4
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -18,37 +19,40 @@ var __rest = (this && this.__rest) || function (s, e) {
18
19
  }
19
20
  return t;
20
21
  };
21
- import { verify } from 'jsonwebtoken';
22
- import { cleanObject, decodeShopData, objectToSortedString, ShopifySessionInvalidError, } from '../../shared';
23
- import { generateHMAC } from './crypto';
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ exports.getVerifiedSessionData = void 0;
24
+ const jsonwebtoken_1 = require("jsonwebtoken");
25
+ const shared_1 = require("../../shared");
26
+ const crypto_1 = require("./crypto");
24
27
  // NOTE: this signingSecret is not current used, but just in case we ever need it
25
- export const getVerifiedSessionData = (serverRuntimeConfig, { signingSecret: _signingSecret } = {}) => {
28
+ const getVerifiedSessionData = (serverRuntimeConfig, { signingSecret: _signingSecret } = {}) => {
26
29
  const { APP_CONFIG } = serverRuntimeConfig;
27
30
  return (sessionToken, { shop, host } = {}) => __awaiter(void 0, void 0, void 0, function* () {
28
31
  let data;
29
32
  try {
30
33
  // NOTE: this does not always contain sid (depending on if calling from appbridge)
31
34
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
32
- const _a = decodeShopData(sessionToken), { decoded, token } = _a, _data = __rest(_a, ["decoded", "token"]);
35
+ const _a = (0, shared_1.decodeShopData)(sessionToken), { decoded, token } = _a, _data = __rest(_a, ["decoded", "token"]);
33
36
  const { shop: sessionShop, host: sessionHost } = _data;
34
37
  data = _data;
35
38
  if (!shop || !host || (sessionShop !== shop) || (sessionHost !== host)) {
36
- throw new ShopifySessionInvalidError('Unauthorized shop or host', { shop, host, sessionShop, sessionHost });
39
+ throw new shared_1.ShopifySessionInvalidError('Unauthorized shop or host', { shop, host, sessionShop, sessionHost });
37
40
  }
38
41
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
39
42
  const { iat, nbf, exp } = decoded, verifiable = __rest(decoded, ["iat", "nbf", "exp"]);
40
- const signingSecret = _signingSecret || generateHMAC(objectToSortedString(verifiable), APP_CONFIG.apiSecretKey);
41
- const verified = verify(sessionToken, signingSecret);
43
+ const signingSecret = _signingSecret || (0, crypto_1.generateHMAC)((0, shared_1.objectToSortedString)(verifiable), APP_CONFIG.apiSecretKey);
44
+ const verified = (0, jsonwebtoken_1.verify)(sessionToken, signingSecret);
42
45
  if (verified == undefined) {
43
- throw new ShopifySessionInvalidError('Verified Undefined');
46
+ throw new shared_1.ShopifySessionInvalidError('Verified Undefined');
44
47
  }
45
48
  }
46
49
  catch (error) {
47
50
  // eslint-disable-next-line max-len
48
- console.error('Error verifying session token', cleanObject(Object.assign({ type: error === null || error === void 0 ? void 0 : error.type, code: error === null || error === void 0 ? void 0 : error.code, name: error === null || error === void 0 ? void 0 : error.name, message: error === null || error === void 0 ? void 0 : error.message }, error === null || error === void 0 ? void 0 : error.data)));
49
- throw new ShopifySessionInvalidError('Error verifying session token', Object.assign({ message: error === null || error === void 0 ? void 0 : error.message, name: error === null || error === void 0 ? void 0 : error.name }, error === null || error === void 0 ? void 0 : error.data));
51
+ console.error('Error verifying session token', (0, shared_1.cleanObject)(Object.assign({ type: error === null || error === void 0 ? void 0 : error.type, code: error === null || error === void 0 ? void 0 : error.code, name: error === null || error === void 0 ? void 0 : error.name, message: error === null || error === void 0 ? void 0 : error.message }, error === null || error === void 0 ? void 0 : error.data)));
52
+ throw new shared_1.ShopifySessionInvalidError('Error verifying session token', Object.assign({ message: error === null || error === void 0 ? void 0 : error.message, name: error === null || error === void 0 ? void 0 : error.name }, error === null || error === void 0 ? void 0 : error.data));
50
53
  }
51
54
  return data;
52
55
  });
53
56
  };
57
+ exports.getVerifiedSessionData = getVerifiedSessionData;
54
58
  //# sourceMappingURL=token.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"token.js","sourceRoot":"","sources":["../../../src/lib/utils/token.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAErC,OAAO,EACL,WAAW,EACX,cAAc,EACd,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,iFAAiF;AACjF,MAAM,CAAC,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,GAAG,EAAE,EAAE,EAAE;QACjD,IAAI,IAAI,CAAA;QACR,IAAI;YACF,kFAAkF;YAClF,6DAA6D;YAC7D,MAAM,KAA+B,cAAc,CAAC,YAAY,CAAC,EAA3D,EAAE,OAAO,EAAE,KAAK,OAA2C,EAAtC,KAAK,cAA1B,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,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,EAAE;gBACtE,MAAM,IAAI,0BAA0B,CAAC,2BAA2B,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAA;aAC5G;YAED,6DAA6D;YAC7D,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,KAAoB,OAAO,EAAtB,UAAU,UAAK,OAAO,EAA1C,qBAAgC,CAAU,CAAA;YAEhD,MAAM,aAAa,GAAG,cAAc,IAAI,YAAY,CAAC,oBAAoB,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,YAAY,CAAC,CAAA;YAE/G,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,CAAA;YAEpD,IAAI,QAAQ,IAAI,SAAS,EAAE;gBACzB,MAAM,IAAI,0BAA0B,CAAC,oBAAoB,CAAC,CAAA;aAC3D;SACF;QAAC,OAAO,KAAK,EAAE;YACd,mCAAmC;YACnC,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,WAAW,iBAAG,IAAI,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAE,IAAI,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAE,IAAI,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAE,OAAO,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,IAAK,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAG,CAAC,CAAA;YACjK,MAAM,IAAI,0BAA0B,CAAC,+BAA+B,kBAAI,OAAO,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,EAAE,IAAI,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,IAAK,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAG,CAAA;SACtI;QAED,OAAO,IAAI,CAAA;IACb,CAAC,CAAA,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"token.js","sourceRoot":"","sources":["../../../src/lib/utils/token.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAqC;AAErC,yCAKqB;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,GAAG,EAAE,EAAE,EAAE;QACjD,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,cAA1B,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,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,EAAE;gBACtE,MAAM,IAAI,mCAA0B,CAAC,2BAA2B,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAA;aAC5G;YAED,6DAA6D;YAC7D,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,KAAoB,OAAO,EAAtB,UAAU,UAAK,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,KAAK,EAAE;YACd,mCAAmC;YACnC,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,IAAA,oBAAW,kBAAG,IAAI,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAE,IAAI,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAE,IAAI,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAE,OAAO,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,IAAK,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAG,CAAC,CAAA;YACjK,MAAM,IAAI,mCAA0B,CAAC,+BAA+B,kBAAI,OAAO,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,EAAE,IAAI,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,IAAK,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAG,CAAA;SACtI;QAED,OAAO,IAAI,CAAA;IACb,CAAC,CAAA,CAAA;AACH,CAAC,CAAA;AAlCY,QAAA,sBAAsB,0BAkClC"}
@@ -1,3 +1,19 @@
1
- export * from './withShopify';
2
- export * from '../shared/constants';
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./withShopify"), exports);
18
+ __exportStar(require("../shared/constants"), exports);
3
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/plugins/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/plugins/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA6B;AAC7B,sDAAmC"}