@agnostack/next-shopify 1.7.0-alpha.51 → 1.7.0-alpha.52

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.
@@ -1,2 +1 @@
1
- export * from "./api";
2
1
  export * from "./ssr";
@@ -10,6 +10,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- __exportStar(require("./api"), exports);
13
+ __exportStar(require("./auth"), exports);
14
+ __exportStar(require("./callback"), exports);
15
+ __exportStar(require("./graph"), exports);
16
+ __exportStar(require("./rest"), exports);
14
17
  __exportStar(require("./ssr"), exports);
18
+ __exportStar(require("./uninstall"), exports);
15
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/handlers/index.js"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wCAAqB;AACrB,wCAAqB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/handlers/index.js"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAAsB;AACtB,6CAA0B;AAC1B,0CAAuB;AACvB,yCAAsB;AACtB,wCAAqB;AACrB,8CAA2B"}
@@ -29,12 +29,6 @@ const protectRoute = (props) => async ({ req, res, query, locale } = {}, data) =
29
29
  const { shopify, findSession } = await utils_1.getShopifyHelpers(props, { shop });
30
30
  const existingSessions = await findSession(shop);
31
31
  if (utils_1.arrayEmpty(existingSessions)) {
32
- // return getRedirectUrl(props, { req, res, query, id: 'SSR' })
33
- // const emptySessionUrl = await getRedirectUrl(props, {
34
- // req,
35
- // res,
36
- // query,
37
- // })
38
32
  // TODO: explore objectToQuerystring
39
33
  const queryParams = new URLSearchParams(Object.assign(Object.assign({}, query), { shop })).toString();
40
34
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"ssr.js","sourceRoot":"","sources":["../../src/handlers/ssr.js"],"names":[],"mappings":";;;AAAA,oCASiB;AAEjB,MAAM,iBAAiB,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAClC,sBAAc,CAAC,IAAI,CAAC;IAClB,CAAC,CAAC,0DAA0D,IAAI,GAAG;IACnE,CAAC,CAAC,yBAAyB,CAC9B,CAAA;AAEM,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE;IACnE,GAAG,CAAC,SAAS,CAAC,yBAAyB,EAAE,iBAAiB,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,CAAC,CAAA;IAExE,OAAO;QACL,KAAK,EAAE,mBAAW,iBAChB,MAAM,IACH,IAAI,EACP;KACH,CAAA;AACH,CAAC,CAAA;AATY,QAAA,SAAS,aASrB;AAEM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE;;IACtF,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,KAAK,CAAA;IACvC,MAAM,IAAI,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,mCAAI,MAAA,GAAG,CAAC,KAAK,0CAAE,IAAI,CAAA;IAC3C,MAAM,QAAQ,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,mCAAI,MAAA,GAAG,CAAC,KAAK,0CAAE,QAAQ,CAAA;IAEvD,GAAG,CAAC,SAAS,CAAC,yBAAyB,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAA;IAEjE,IAAI,mBAAW,CAAC,IAAI,CAAC,EAAE;QACrB,OAAO;YACL,QAAQ,EAAE;gBACR,WAAW,EAAE,GAAG,UAAU,CAAC,wBAAgB,CAAC,KAAK,CAAC,0CAA0C;gBAC5F,SAAS,EAAE,KAAK;aACjB;SACF,CAAA;KACF;IAED,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,yBAAiB,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;IACzE,MAAM,gBAAgB,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,CAAA;IAEhD,IAAI,kBAAU,CAAC,gBAAgB,CAAC,EAAE;QAChC,+DAA+D;QAC/D,wDAAwD;QACxD,SAAS;QACT,SAAS;QACT,WAAW;QACX,KAAK;QAEL,oCAAoC;QACpC,MAAM,WAAW,GAAG,IAAI,eAAe,iCAAM,KAAK,KAAE,IAAI,IAAG,CAAC,QAAQ,EAAE,CAAA;QAEtE,OAAO;YACL,QAAQ,EAAE;gBACR,WAAW,EAAE,GAAG,SAAS,CAAC,uBAAe,CAAC,IAAI,CAAC,IAAI,WAAW,EAAE;gBAChE,SAAS,EAAE,KAAK;aACjB;SACF,CAAA;KACF;IAED,IAAI,QAAQ,KAAK,GAAG,EAAE;QACpB,OAAO;YACL,QAAQ,EAAE;gBACR,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC;gBACxF,SAAS,EAAE,KAAK;aACjB;SACF,CAAA;KACF;IAED,OAAO;QACL,KAAK,EAAE,mBAAW,iBAChB,MAAM,IACH,IAAI,EACP;KACH,CAAA;AACH,CAAC,CAAA;AArDY,QAAA,YAAY,gBAqDxB"}
1
+ {"version":3,"file":"ssr.js","sourceRoot":"","sources":["../../src/handlers/ssr.js"],"names":[],"mappings":";;;AAAA,oCAQiB;AAEjB,MAAM,iBAAiB,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAClC,sBAAc,CAAC,IAAI,CAAC;IAClB,CAAC,CAAC,0DAA0D,IAAI,GAAG;IACnE,CAAC,CAAC,yBAAyB,CAC9B,CAAA;AAEM,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE;IACnE,GAAG,CAAC,SAAS,CAAC,yBAAyB,EAAE,iBAAiB,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,CAAC,CAAA;IAExE,OAAO;QACL,KAAK,EAAE,mBAAW,iBAChB,MAAM,IACH,IAAI,EACP;KACH,CAAA;AACH,CAAC,CAAA;AATY,QAAA,SAAS,aASrB;AAEM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE;;IACtF,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,KAAK,CAAA;IACvC,MAAM,IAAI,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,mCAAI,MAAA,GAAG,CAAC,KAAK,0CAAE,IAAI,CAAA;IAC3C,MAAM,QAAQ,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,mCAAI,MAAA,GAAG,CAAC,KAAK,0CAAE,QAAQ,CAAA;IAEvD,GAAG,CAAC,SAAS,CAAC,yBAAyB,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAA;IAEjE,IAAI,mBAAW,CAAC,IAAI,CAAC,EAAE;QACrB,OAAO;YACL,QAAQ,EAAE;gBACR,WAAW,EAAE,GAAG,UAAU,CAAC,wBAAgB,CAAC,KAAK,CAAC,0CAA0C;gBAC5F,SAAS,EAAE,KAAK;aACjB;SACF,CAAA;KACF;IAED,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,yBAAiB,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;IACzE,MAAM,gBAAgB,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,CAAA;IAEhD,IAAI,kBAAU,CAAC,gBAAgB,CAAC,EAAE;QAChC,oCAAoC;QACpC,MAAM,WAAW,GAAG,IAAI,eAAe,iCAAM,KAAK,KAAE,IAAI,IAAG,CAAC,QAAQ,EAAE,CAAA;QAEtE,OAAO;YACL,QAAQ,EAAE;gBACR,WAAW,EAAE,GAAG,SAAS,CAAC,uBAAe,CAAC,IAAI,CAAC,IAAI,WAAW,EAAE;gBAChE,SAAS,EAAE,KAAK;aACjB;SACF,CAAA;KACF;IAED,IAAI,QAAQ,KAAK,GAAG,EAAE;QACpB,OAAO;YACL,QAAQ,EAAE;gBACR,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC;gBACxF,SAAS,EAAE,KAAK;aACjB;SACF,CAAA;KACF;IAED,OAAO;QACL,KAAK,EAAE,mBAAW,iBAChB,MAAM,IACH,IAAI,EACP;KACH,CAAA;AACH,CAAC,CAAA;AA9CY,QAAA,YAAY,gBA8CxB"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,2 @@
1
1
  export * from './handlers';
2
- export * from './helpers';
3
2
  export * from './withShopify';
package/dist/index.js CHANGED
@@ -11,6 +11,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./handlers"), exports);
14
- __exportStar(require("./helpers"), exports);
15
14
  __exportStar(require("./withShopify"), exports);
16
15
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA0B;AAC1B,4CAAyB;AACzB,gDAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA0B;AAC1B,gDAA6B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agnostack/next-shopify",
3
- "version": "1.7.0-alpha.51",
3
+ "version": "1.7.0-alpha.52",
4
4
  "author": "agnoStack Dev <developers@agnostack.com> (https://agnostack.com)",
5
5
  "owner": "agnoStack",
6
6
  "description": "Please contact agnoStack via info@agnostack.com for any questions",
@@ -1,10 +0,0 @@
1
- export function handleRest(serverRuntimeConfig: any): (req: any, res: any, params: any) => Promise<any>;
2
- export function handleGraph(serverRuntimeConfig: any): (req: any, res: any, params: any) => Promise<any>;
3
- export function handleAuth(serverRuntimeConfig: any): (req: any, res: any) => Promise<any>;
4
- export function handleCallback(serverRuntimeConfig: any): (req: any, res: any) => Promise<any>;
5
- export function handleAppUninstalled(serverRuntimeConfig: any): (req: any, res: any) => Promise<any>;
6
- export namespace rawBodyConfig {
7
- namespace api {
8
- const bodyParser: boolean;
9
- }
10
- }
@@ -1,93 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.rawBodyConfig = exports.handleAppUninstalled = exports.handleCallback = exports.handleAuth = exports.handleGraph = exports.handleRest = void 0;
7
- const raw_body_1 = __importDefault(require("raw-body"));
8
- // NOTE: api routes do NOT work in `next export`
9
- const shopify_api_1 = require("@shopify/shopify-api");
10
- const helpers_1 = require("../helpers");
11
- const utils_1 = require("../utils");
12
- const handleRest = (serverRuntimeConfig) => async (req, res, params) => {
13
- const { PAGE_PATHS } = serverRuntimeConfig;
14
- const { message, response, headers, statusCode = 302, redirectUrl = `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?invalid_rest_response`, } = await helpers_1.restHelper({
15
- req,
16
- res,
17
- params,
18
- serverRuntimeConfig,
19
- });
20
- Object.entries(utils_1.ensureObject(headers)).forEach(([key, value]) => {
21
- res.setHeader(key, value);
22
- });
23
- // TODO: move these to helper
24
- if (statusCode >= 300 && statusCode < 400) {
25
- return res.redirect(statusCode, redirectUrl);
26
- }
27
- if (!response) {
28
- return res.status(statusCode).json({ message });
29
- }
30
- if ((params === null || params === void 0 ? void 0 : params.type) && ![shopify_api_1.DataType.GraphQL, shopify_api_1.DataType.JSON].includes(params.type)) {
31
- return res.status(statusCode).send(response);
32
- }
33
- if (!(response === null || response === void 0 ? void 0 : response.body)) {
34
- return res.status(statusCode).json({ message });
35
- }
36
- return res.status(statusCode).json(response.body);
37
- };
38
- exports.handleRest = handleRest;
39
- const handleGraph = (serverRuntimeConfig) => async (req, res, params) => {
40
- var _a, _b;
41
- const { PAGE_PATHS } = serverRuntimeConfig;
42
- const { message, response, headers, statusCode = 302, redirectUrl = `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?invalid_query_response`, } = await helpers_1.graphHelper({
43
- req,
44
- res,
45
- params,
46
- serverRuntimeConfig,
47
- });
48
- Object.entries(utils_1.ensureObject(headers)).forEach(([key, value]) => {
49
- res.setHeader(key, value);
50
- });
51
- if (statusCode >= 300 && statusCode < 400) {
52
- return res.redirect(statusCode, redirectUrl);
53
- }
54
- if (!(response === null || response === void 0 ? void 0 : response.body)) {
55
- return res.status(statusCode).json({ message });
56
- }
57
- return res.status(statusCode).json((_b = (_a = response.body) === null || _a === void 0 ? void 0 : _a.data) !== null && _b !== void 0 ? _b : response.body);
58
- };
59
- exports.handleGraph = handleGraph;
60
- // NOTE: typically handling: "/api/auth"
61
- const handleAuth = (serverRuntimeConfig) => async (req, res) => (utils_1.getRedirectUrl(serverRuntimeConfig, { req, res })
62
- // authHelper({ req, res, serverRuntimeConfig })
63
- );
64
- exports.handleAuth = handleAuth;
65
- // NOTE: typically handling: "/api/auth/callback"
66
- const handleCallback = (serverRuntimeConfig) => async (req, res) => {
67
- const { PAGE_PATHS } = serverRuntimeConfig;
68
- const { message, statusCode = 302, redirectUrl = `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?invalid_callback_response`, } = await helpers_1.callbackHelper({ req, res, serverRuntimeConfig });
69
- if (statusCode >= 300 && statusCode < 400) {
70
- return res.redirect(statusCode, redirectUrl);
71
- }
72
- return res.status(statusCode).send(message);
73
- };
74
- exports.handleCallback = handleCallback;
75
- // NOTE: typically handling: "/api/webhooks/app/uninstalled"
76
- const handleAppUninstalled = (serverRuntimeConfig) => async (req, res) => {
77
- // NOTE raw request body is required for Shopify webhook validation
78
- const rawBody = await raw_body_1.default(req).catch((error) => {
79
- console.error('Error extracting raw body for app uninstall', error);
80
- // HMMMM: dont think we can return a 500 here (vs a 200 w/ an error object)
81
- return res.status(500).send('Unable to get request body');
82
- });
83
- // NOTE: Shopify webhook processers will automatically return the response
84
- return helpers_1.uninstallHelper({ rawBody, req, res, serverRuntimeConfig });
85
- };
86
- exports.handleAppUninstalled = handleAppUninstalled;
87
- // NOTE raw request body is required for Shopify webhook validation
88
- exports.rawBodyConfig = {
89
- api: {
90
- bodyParser: false,
91
- },
92
- };
93
- //# sourceMappingURL=api.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/handlers/api.js"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- export default authHelper;
2
- declare function authHelper({ req, res, serverRuntimeConfig }: {
3
- req: any;
4
- res: any;
5
- serverRuntimeConfig: any;
6
- }): Promise<any>;
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const utils_1 = require("../utils");
4
- const authHelper = async ({ req, res, serverRuntimeConfig }) => {
5
- let response;
6
- try {
7
- response = await utils_1.getRedirectUrl(serverRuntimeConfig, { req, res });
8
- }
9
- catch (error) {
10
- response = error.response;
11
- }
12
- return response;
13
- };
14
- exports.default = authHelper;
15
- //# sourceMappingURL=auth.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/helpers/auth.js"],"names":[],"mappings":";;AAAA,oCAAyC;AAEzC,MAAM,UAAU,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,mBAAmB,EAAE,EAAE,EAAE;IAC7D,IAAI,QAAQ,CAAA;IACZ,IAAI;QACF,QAAQ,GAAG,MAAM,sBAAc,CAAC,mBAAmB,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;KACnE;IAAC,OAAO,KAAK,EAAE;QACd,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAA;KAC1B;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AAED,kBAAe,UAAU,CAAA"}
@@ -1,9 +0,0 @@
1
- export default callbackHelper;
2
- declare function callbackHelper({ req, res, serverRuntimeConfig }: {
3
- req: any;
4
- res: any;
5
- serverRuntimeConfig: any;
6
- }): Promise<{
7
- statusCode: number;
8
- redirectUrl: any;
9
- }>;
@@ -1,77 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const shopify_api_1 = require("@shopify/shopify-api");
4
- const utils_1 = require("../utils");
5
- const callbackHelper = async ({ req, res, serverRuntimeConfig }) => {
6
- var _a;
7
- const { PAGE_PATHS, PAYMENT_CONFIG, API_PATHS } = serverRuntimeConfig;
8
- const { shop, host } = req.query;
9
- if (utils_1.stringEmpty(shop) || utils_1.stringEmpty(host)) {
10
- return {
11
- statusCode: 303,
12
- redirectUrl: `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?code=${utils_1.ERROR_CODES.INVALID_CALLBACK}`,
13
- };
14
- }
15
- let redirectUrl;
16
- try {
17
- const { shopify, storeSession } = await utils_1.getShopifyHelpers(serverRuntimeConfig, { shop });
18
- const authPayload = { rawRequest: req, rawResponse: res };
19
- // TODO investigate Error handling callback route. Cookie Error CookieNotFound [Error]: Cannot complete OAuth process. Could not find an OAuth cookie for shop url:
20
- const { session } = await shopify.auth.callback(authPayload);
21
- await storeSession(session.toObject());
22
- await shopify.webhooks.register({ session });
23
- // TODO: explore objectToQuerystring
24
- const embeddedURL = await shopify.auth.getEmbeddedAppUrl(authPayload);
25
- redirectUrl = `${embeddedURL}?${new URLSearchParams(req.query).toString()}`;
26
- if (PAYMENT_CONFIG === null || PAYMENT_CONFIG === void 0 ? void 0 : PAYMENT_CONFIG.required) {
27
- // HMMM: order of params/method sig??
28
- const confirmationUrl = await utils_1.ensureBilling(shopify, session, PAYMENT_CONFIG);
29
- if (utils_1.stringNotEmpty(confirmationUrl)) {
30
- redirectUrl = confirmationUrl;
31
- }
32
- }
33
- return {
34
- statusCode: 302,
35
- redirectUrl,
36
- };
37
- }
38
- catch (error) {
39
- const errorMessage = 'Error handling callback route';
40
- switch (true) {
41
- // TODO implement a custom SessionNotFound error
42
- case error instanceof shopify_api_1.CookieNotFound: {
43
- console.error(`${errorMessage}. Cookie Error`, error);
44
- // TODO: explore objectToQuerystring
45
- const queryParams = new URLSearchParams({ host, shop }).toString();
46
- redirectUrl = `${API_PATHS[utils_1.API_ROUTE_NAMES.AUTH]}?${queryParams}`;
47
- break;
48
- }
49
- case error instanceof shopify_api_1.BillingError: {
50
- console.error(`${errorMessage}. Billing Error ${error.message}`, error.errorData);
51
- redirectUrl = `/error?code=${utils_1.ERROR_CODES.BILLING}`;
52
- break;
53
- }
54
- case error instanceof shopify_api_1.GraphqlQueryError: {
55
- const errorMessages = utils_1.ensureArray((_a = error.response) === null || _a === void 0 ? void 0 : _a.errors).map(({ message }) => utils_1.ensureString(message));
56
- console.error(`${errorMessage}. GraphqlQuery Error ${errorMessages.join('. ')}`);
57
- redirectUrl = `/error?code=${utils_1.ERROR_CODES.QUERY}`;
58
- break;
59
- }
60
- case error instanceof shopify_api_1.InvalidOAuthError: {
61
- console.error(`${errorMessage}. InvalidOAuth Error`, error);
62
- redirectUrl = `/error?code=${utils_1.ERROR_CODES.OAUTH}`;
63
- break;
64
- }
65
- default: {
66
- console.error(errorMessage, error);
67
- redirectUrl = `/error?code=${utils_1.ERROR_CODES.CALLBACK}`;
68
- }
69
- }
70
- }
71
- return {
72
- statusCode: 302,
73
- redirectUrl,
74
- };
75
- };
76
- exports.default = callbackHelper;
77
- //# sourceMappingURL=callback.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"callback.js","sourceRoot":"","sources":["../../src/helpers/callback.js"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- export default graphHelper;
2
- declare function graphHelper({ req, res, params, serverRuntimeConfig }: {
3
- req: any;
4
- res: any;
5
- params: any;
6
- serverRuntimeConfig: any;
7
- }): Promise<{
8
- statusCode: number;
9
- message: any;
10
- headers: {
11
- 'X-Shopify-API-Request-Failure-Reauthorize': string;
12
- 'X-Shopify-API-Request-Failure-Reauthorize-Url': any;
13
- };
14
- } | {
15
- statusCode: number;
16
- message: string;
17
- response?: undefined;
18
- } | {
19
- statusCode: number;
20
- response: any;
21
- message?: undefined;
22
- }>;
@@ -1,74 +0,0 @@
1
- "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
12
- };
13
- Object.defineProperty(exports, "__esModule", { value: true });
14
- const shopify_api_1 = require("@shopify/shopify-api");
15
- const utils_1 = require("../utils");
16
- const graphHelper = async ({ req, res, params, serverRuntimeConfig }) => {
17
- var _a;
18
- const { body = '{}' } = req, _b = req.query, _c = _b === void 0 ? {} : _b, { shop, apiVersion } = _c, _query = __rest(_c, ["shop", "apiVersion"]);
19
- const _d = params !== null && params !== void 0 ? params : JSON.parse(body), { query: graphQuery, variables: graphVariables } = _d, graphParams = __rest(_d, ["query", "variables"]);
20
- let query = _query;
21
- if (utils_1.isType(query, 'string')) {
22
- query = utils_1.querystringToObject(query);
23
- }
24
- if (utils_1.stringEmpty(shop) || utils_1.stringEmpty(graphQuery)) {
25
- return {
26
- statusCode: 400,
27
- message: 'Invalid arguments',
28
- };
29
- }
30
- try {
31
- const { Graphql } = await utils_1.getVerifiedClients(serverRuntimeConfig, { req, res, shop, apiVersion });
32
- const response = await Graphql.query(Object.assign(Object.assign({ data: graphVariables ? {
33
- query: graphQuery,
34
- variables: graphVariables,
35
- } : graphQuery }, utils_1.objectNotEmpty(query) && { query }), graphParams));
36
- return {
37
- statusCode: 200,
38
- response,
39
- };
40
- }
41
- catch (error) {
42
- const errorMessage = 'Error handling query call';
43
- switch (true) {
44
- case error instanceof utils_1.ShopifyAuthenticationError: {
45
- console.error(`${errorMessage}. Authentication Error`, error);
46
- return utils_1.getAuthErrorResponse({ error, shop, serverRuntimeConfig });
47
- }
48
- case error instanceof shopify_api_1.BillingError: {
49
- console.error(`${errorMessage}. Billing Error - ${error.message}`, error.errorData);
50
- return {
51
- statusCode: 500,
52
- message: errorMessage,
53
- };
54
- }
55
- case error instanceof shopify_api_1.GraphqlQueryError: {
56
- const errorMessages = utils_1.ensureArray((_a = error.response) === null || _a === void 0 ? void 0 : _a.errors).map(({ message }) => utils_1.ensureString(message));
57
- console.error(`${errorMessage}. ${errorMessages.join('. ')}`);
58
- return {
59
- statusCode: 500,
60
- message: errorMessage,
61
- };
62
- }
63
- default: {
64
- console.error(errorMessage, error);
65
- return {
66
- statusCode: 500,
67
- message: errorMessage,
68
- };
69
- }
70
- }
71
- }
72
- };
73
- exports.default = graphHelper;
74
- //# sourceMappingURL=graph.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/helpers/graph.js"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- export { default as authHelper } from "./auth";
2
- export { default as callbackHelper } from "./callback";
3
- export { default as graphHelper } from "./graph";
4
- export { default as restHelper } from "./rest";
5
- export { default as uninstallHelper } from "./uninstall";
@@ -1,17 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.uninstallHelper = exports.restHelper = exports.graphHelper = exports.callbackHelper = exports.authHelper = void 0;
7
- var auth_1 = require("./auth");
8
- Object.defineProperty(exports, "authHelper", { enumerable: true, get: function () { return __importDefault(auth_1).default; } });
9
- var callback_1 = require("./callback");
10
- Object.defineProperty(exports, "callbackHelper", { enumerable: true, get: function () { return __importDefault(callback_1).default; } });
11
- var graph_1 = require("./graph");
12
- Object.defineProperty(exports, "graphHelper", { enumerable: true, get: function () { return __importDefault(graph_1).default; } });
13
- var rest_1 = require("./rest");
14
- Object.defineProperty(exports, "restHelper", { enumerable: true, get: function () { return __importDefault(rest_1).default; } });
15
- var uninstall_1 = require("./uninstall");
16
- Object.defineProperty(exports, "uninstallHelper", { enumerable: true, get: function () { return __importDefault(uninstall_1).default; } });
17
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.js"],"names":[],"mappings":";;;;;;AAAA,+BAA8C;AAArC,mHAAA,OAAO,OAAc;AAC9B,uCAAsD;AAA7C,2HAAA,OAAO,OAAkB;AAClC,iCAAgD;AAAvC,qHAAA,OAAO,OAAe;AAC/B,+BAA8C;AAArC,mHAAA,OAAO,OAAc;AAC9B,yCAAwD;AAA/C,6HAAA,OAAO,OAAmB"}
@@ -1,22 +0,0 @@
1
- export default restHelper;
2
- declare function restHelper({ req, res, params: _params, serverRuntimeConfig }: {
3
- req: any;
4
- res: any;
5
- params: any;
6
- serverRuntimeConfig: any;
7
- }): Promise<{
8
- statusCode: number;
9
- message: any;
10
- headers: {
11
- 'X-Shopify-API-Request-Failure-Reauthorize': string;
12
- 'X-Shopify-API-Request-Failure-Reauthorize-Url': any;
13
- };
14
- } | {
15
- statusCode: number;
16
- message: string;
17
- response?: undefined;
18
- } | {
19
- statusCode: number;
20
- response: any;
21
- message?: undefined;
22
- }>;
@@ -1,68 +0,0 @@
1
- "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
12
- };
13
- Object.defineProperty(exports, "__esModule", { value: true });
14
- const shopify_api_1 = require("@shopify/shopify-api");
15
- const utils_1 = require("../utils");
16
- const restHelper = async ({ req, res, params: _params, serverRuntimeConfig }) => {
17
- const { query: _query, method: _method, body: _body } = req;
18
- const { shop } = _query !== null && _query !== void 0 ? _query : {};
19
- const _a = _params !== null && _params !== void 0 ? _params : {}, { method: methodParam, query: queryParam, body: bodyParam, path } = _a, params = __rest(_a, ["method", "query", "body", "path"]);
20
- let queryData = queryParam !== null && queryParam !== void 0 ? queryParam : _query;
21
- const body = bodyParam !== null && bodyParam !== void 0 ? bodyParam : _body;
22
- const method = utils_1.ensureString(methodParam !== null && methodParam !== void 0 ? methodParam : _method).toLowerCase();
23
- if (utils_1.isType(queryData, 'string')) {
24
- queryData = utils_1.querystringToObject(queryData);
25
- }
26
- const _b = utils_1.ensureObject(queryData), { apiVersion } = _b, query = __rest(_b, ["apiVersion"]);
27
- if (utils_1.stringEmpty(shop) || utils_1.stringEmpty(path)) {
28
- return {
29
- statusCode: 400,
30
- message: 'Invalid arguments',
31
- };
32
- }
33
- try {
34
- const { Rest } = await utils_1.getVerifiedClients(serverRuntimeConfig, { req, res, shop, apiVersion });
35
- const response = await Rest[method](Object.assign({ path,
36
- query,
37
- body, type: shopify_api_1.DataType.JSON }, params));
38
- return {
39
- statusCode: 200,
40
- response,
41
- };
42
- }
43
- catch (error) {
44
- const errorMessage = 'Error handling rest call';
45
- switch (true) {
46
- case error instanceof utils_1.ShopifyAuthenticationError: {
47
- console.error(`${errorMessage}. Authentication Error`, error);
48
- return utils_1.getAuthErrorResponse({ error, shop, serverRuntimeConfig });
49
- }
50
- case error instanceof shopify_api_1.BillingError: {
51
- console.error(`${errorMessage}. Billing Error - ${error.message}`, error.errorData);
52
- return {
53
- statusCode: 500,
54
- message: errorMessage,
55
- };
56
- }
57
- default: {
58
- console.error(errorMessage, error);
59
- return {
60
- statusCode: 500,
61
- message: errorMessage,
62
- };
63
- }
64
- }
65
- }
66
- };
67
- exports.default = restHelper;
68
- //# sourceMappingURL=rest.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rest.js","sourceRoot":"","sources":["../../src/helpers/rest.js"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,sDAA6D;AAE7D,oCASiB;AAEjB,MAAM,UAAU,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,EAAE,EAAE,EAAE;IAC9E,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,GAAG,CAAA;IAC3D,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAA;IAC7B,MAAM,KAMF,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,EANX,EACJ,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,SAAS,EACf,IAAI,OAEW,EADZ,MAAM,cALL,mCAML,CAAgB,CAAA;IACjB,IAAI,SAAS,GAAG,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,MAAM,CAAA;IACpC,MAAM,IAAI,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,KAAK,CAAA;IAC/B,MAAM,MAAM,GAAG,oBAAY,CAAC,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;IAEjE,IAAI,cAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE;QAC/B,SAAS,GAAG,2BAAmB,CAAC,SAAS,CAAC,CAAA;KAC3C;IACD,MAAM,KAA2B,oBAAY,CAAC,SAAS,CAAC,EAAlD,EAAE,UAAU,OAAsC,EAAjC,KAAK,cAAtB,cAAwB,CAA0B,CAAA;IAExD,IAAI,mBAAW,CAAC,IAAI,CAAC,IAAI,mBAAW,CAAC,IAAI,CAAC,EAAE;QAC1C,OAAO;YACL,UAAU,EAAE,GAAG;YACf,OAAO,EAAE,mBAAmB;SAC7B,CAAA;KACF;IAED,IAAI;QACF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,0BAAkB,CAAC,mBAAmB,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAA;QAE9F,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,iBACjC,IAAI;YACJ,KAAK;YACL,IAAI,EACJ,IAAI,EAAE,sBAAQ,CAAC,IAAI,IAChB,MAAM,EACT,CAAA;QAEF,OAAO;YACL,UAAU,EAAE,GAAG;YACf,QAAQ;SACT,CAAA;KACF;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,YAAY,GAAG,0BAA0B,CAAA;QAE/C,QAAQ,IAAI,EAAE;YACZ,KAAK,KAAK,YAAY,kCAA0B,CAAC,CAAC;gBAChD,OAAO,CAAC,KAAK,CAAC,GAAG,YAAY,wBAAwB,EAAE,KAAK,CAAC,CAAA;gBAC7D,OAAO,4BAAoB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAA;aAClE;YAED,KAAK,KAAK,YAAY,0BAAY,CAAC,CAAC;gBAClC,OAAO,CAAC,KAAK,CAAC,GAAG,YAAY,qBAAqB,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;gBACnF,OAAO;oBACL,UAAU,EAAE,GAAG;oBACf,OAAO,EAAE,YAAY;iBACtB,CAAA;aACF;YAED,OAAO,CAAC,CAAC;gBACP,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAA;gBAClC,OAAO;oBACL,UAAU,EAAE,GAAG;oBACf,OAAO,EAAE,YAAY;iBACtB,CAAA;aACF;SACF;KACF;AACH,CAAC,CAAA;AAED,kBAAe,UAAU,CAAA"}
@@ -1,7 +0,0 @@
1
- export default uninstallHelper;
2
- declare function uninstallHelper({ rawBody, req, res, serverRuntimeConfig }: {
3
- rawBody: any;
4
- req: any;
5
- res: any;
6
- serverRuntimeConfig: any;
7
- }): Promise<any>;
@@ -1,40 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const runtime_1 = require("@shopify/shopify-api/runtime");
4
- const utils_1 = require("../utils");
5
- const uninstallHelper = async ({ rawBody, req, res, serverRuntimeConfig }) => {
6
- try {
7
- const shop = req.headers['x-shopify-shop-domain'];
8
- if (utils_1.stringEmpty(shop)) {
9
- return res.status(400).send('Invalid shop');
10
- }
11
- const { shopify, findSession, deleteSessions } = await utils_1.getShopifyHelpers(serverRuntimeConfig, { shop });
12
- // NOTE setAbstractConvertIncomingResponseFunc is required if using setAbstractConvertResponseFunc
13
- runtime_1.setAbstractConvertIncomingResponseFunc(async (args) => args);
14
- runtime_1.setAbstractConvertResponseFunc(async (response, adapterArgs) => {
15
- const { statusCode, statusText } = utils_1.ensureObject(response);
16
- const { type, rawResponse } = utils_1.ensureObject(adapterArgs);
17
- if (type === utils_1.API_WEBHOOK_TOPICS.APP_UNINSTALLED && statusCode === 200) {
18
- const sessionsIds = await findSession(shop);
19
- if (utils_1.arrayNotEmpty(sessionsIds)) {
20
- await deleteSessions(sessionsIds.map(({ id }) => id));
21
- }
22
- }
23
- return rawResponse.status(statusCode).send(statusText);
24
- });
25
- await shopify.webhooks.process({
26
- rawBody: rawBody.toString(),
27
- rawRequest: req,
28
- rawResponse: res,
29
- type: utils_1.API_WEBHOOK_TOPICS.APP_UNINSTALLED,
30
- });
31
- return res.status(200).send('ok');
32
- }
33
- catch (error) {
34
- console.error('Error handling uninstall', error);
35
- // HMMM: not sure this should/can send back a 500 here (vs 200 w error object in body)
36
- return res.status(500).send('Error handling uninstall');
37
- }
38
- };
39
- exports.default = uninstallHelper;
40
- //# sourceMappingURL=uninstall.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../src/helpers/uninstall.js"],"names":[],"mappings":";;AAAA,0DAGqC;AAErC,oCAMiB;AAEjB,MAAM,eAAe,GAAG,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,mBAAmB,EAAE,EAAE,EAAE;IAC3E,IAAI;QACF,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAA;QAEjD,IAAI,mBAAW,CAAC,IAAI,CAAC,EAAE;YACrB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;SAC5C;QAED,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,MAAM,yBAAiB,CAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;QAEvG,kGAAkG;QAClG,gDAAsC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAA;QAC5D,wCAA8B,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE;YAC7D,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,oBAAY,CAAC,QAAQ,CAAC,CAAA;YACzD,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,oBAAY,CAAC,WAAW,CAAC,CAAA;YAEvD,IAAI,IAAI,KAAK,0BAAkB,CAAC,eAAe,IAAI,UAAU,KAAK,GAAG,EAAE;gBACrE,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,CAAA;gBAC3C,IAAI,qBAAa,CAAC,WAAW,CAAC,EAAE;oBAC9B,MAAM,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;iBACtD;aACF;YAED,OAAO,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACxD,CAAC,CAAC,CAAA;QAEF,MAAM,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC7B,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE;YAC3B,UAAU,EAAE,GAAG;YACf,WAAW,EAAE,GAAG;YAChB,IAAI,EAAE,0BAAkB,CAAC,eAAe;SACzC,CAAC,CAAA;QAEF,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KAClC;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAA;QAChD,sFAAsF;QACtF,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;KACxD;AACH,CAAC,CAAA;AAED,kBAAe,eAAe,CAAA"}