@agnostack/next-shopify 1.1.1-alpha.1 → 1.1.1-alpha.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,66 @@
1
+ ## [1.1.1-alpha.10](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.9...v1.1.1-alpha.10) (2022-11-10)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * removed old export ([4cc445d](https://github.com/agnostack/next-shopify/commit/4cc445dbffcc25c3ab77bf04091ba3db3676a0b9))
7
+
8
+ ## [1.1.1-alpha.9](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.8...v1.1.1-alpha.9) (2022-11-10)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * updated method signatures ([26316c8](https://github.com/agnostack/next-shopify/commit/26316c80d1a9a9b8663dd864a2270b2617c0492b))
14
+
15
+ ## [1.1.1-alpha.8](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.7...v1.1.1-alpha.8) (2022-11-10)
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * renamed query to graph ([af40892](https://github.com/agnostack/next-shopify/commit/af40892835e72c1c39e0f4983e0758a12ada4245))
21
+
22
+ ## [1.1.1-alpha.7](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.6...v1.1.1-alpha.7) (2022-11-10)
23
+
24
+
25
+ ### Bug Fixes
26
+
27
+ * refactored to export helpers ([35eafde](https://github.com/agnostack/next-shopify/commit/35eafdef0acdcc2f882729088918a40dc47607c3))
28
+
29
+ ## [1.1.1-alpha.6](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.5...v1.1.1-alpha.6) (2022-11-10)
30
+
31
+
32
+ ### Bug Fixes
33
+
34
+ * added debug logs ([934b436](https://github.com/agnostack/next-shopify/commit/934b43655b6c78b1d1c2aef83bfe2443f5cb6534))
35
+
36
+ ## [1.1.1-alpha.5](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.4...v1.1.1-alpha.5) (2022-11-10)
37
+
38
+
39
+ ### Bug Fixes
40
+
41
+ * added message in response (and debug logs) ([d713bb5](https://github.com/agnostack/next-shopify/commit/d713bb597780efa96c7781763bd4f57bd14ea61c))
42
+
43
+ ## [1.1.1-alpha.4](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.3...v1.1.1-alpha.4) (2022-11-10)
44
+
45
+
46
+ ### Bug Fixes
47
+
48
+ * added querystringToObject ([2e5e9dc](https://github.com/agnostack/next-shopify/commit/2e5e9dc219de4bf61514a55909b36368b340c47d))
49
+
50
+ ## [1.1.1-alpha.3](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.2...v1.1.1-alpha.3) (2022-11-10)
51
+
52
+
53
+ ### Bug Fixes
54
+
55
+ * added handleRest, updated handleQuery ([3228ce8](https://github.com/agnostack/next-shopify/commit/3228ce8bb41854aef44ecc3fb78a971401461ea8))
56
+
57
+ ## [1.1.1-alpha.2](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.1...v1.1.1-alpha.2) (2022-11-09)
58
+
59
+
60
+ ### Bug Fixes
61
+
62
+ * add initial handleQuery ([ae74450](https://github.com/agnostack/next-shopify/commit/ae74450e632573ccebb4b48bb958a363e83d8024))
63
+
1
64
  ## [1.1.1-alpha.1](https://github.com/agnostack/next-shopify/compare/v1.1.0...v1.1.1-alpha.1) (2022-11-09)
2
65
 
3
66
 
@@ -1,4 +1,5 @@
1
- export function handleQuery(props: any): (req: any, res: any, params: any) => Promise<any>;
2
- export function handleAuth(props: any): (req: any, res: any) => Promise<any>;
3
- export function handleCallback(props: any): (req: any, res: any) => Promise<any>;
4
- export function handleAppUninstalled(props: any): (req: any, res: any) => Promise<any>;
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>;
@@ -1,23 +1,56 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.handleAppUninstalled = exports.handleCallback = exports.handleAuth = exports.handleQuery = void 0;
3
+ exports.handleAppUninstalled = exports.handleCallback = exports.handleAuth = exports.handleGraph = exports.handleRest = void 0;
4
4
  // NOTE: api routes do NOT work in `next export`
5
+ const shopify_api_1 = require("@shopify/shopify-api");
5
6
  const utils_1 = require("./utils");
6
- const handleQuery = (props) => async (req, res, params) => {
7
- const { PAGE_PATHS } = props;
8
- const { data, statusCode = 302, redirectUrl = `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?invalid_query_response`, } = await utils_1.queryHelper(Object.assign({ req,
7
+ const handleRest = (serverRuntimeConfig) => async (req, res, params) => {
8
+ console.warn(`>>> > handleRest > params`, params);
9
+ const { PAGE_PATHS } = serverRuntimeConfig;
10
+ const { message, response, statusCode = 302, redirectUrl = `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?invalid_rest_response`, } = await utils_1.restHelper({
11
+ req,
9
12
  res,
10
- params }, props));
13
+ params,
14
+ serverRuntimeConfig,
15
+ });
16
+ console.warn(`>>> > handleRest > response`, response);
17
+ // TODO: move these to helper
11
18
  if (statusCode >= 300 && statusCode < 400) {
12
19
  return res.redirect(statusCode, redirectUrl);
13
20
  }
14
- return res.status(statusCode).json(data);
21
+ if (!response) {
22
+ return res.status(statusCode).send(message);
23
+ }
24
+ if ((params === null || params === void 0 ? void 0 : params.type) && ![shopify_api_1.DataType.GraphQL, shopify_api_1.DataType.JSON].includes(params.type)) {
25
+ return res.status(statusCode).send(response);
26
+ }
27
+ return res.status(statusCode).json(response);
28
+ };
29
+ exports.handleRest = handleRest;
30
+ const handleGraph = (serverRuntimeConfig) => async (req, res, params) => {
31
+ console.warn(`>>> > handleGraph > res`, res);
32
+ console.warn(`>>> > handleGraph > params`, params);
33
+ const { PAGE_PATHS } = serverRuntimeConfig;
34
+ const { message, response, statusCode = 302, redirectUrl = `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?invalid_query_response`, } = await utils_1.graphHelper({
35
+ req,
36
+ res,
37
+ params,
38
+ serverRuntimeConfig,
39
+ });
40
+ console.warn(`>>> > handleGraph > response`, response);
41
+ if (statusCode >= 300 && statusCode < 400) {
42
+ return res.redirect(statusCode, redirectUrl);
43
+ }
44
+ if (!(response === null || response === void 0 ? void 0 : response.body)) {
45
+ return res.status(statusCode).send(message);
46
+ }
47
+ return res.status(statusCode).json(response.body);
15
48
  };
16
- exports.handleQuery = handleQuery;
49
+ exports.handleGraph = handleGraph;
17
50
  // NOTE: typically handling: "/api/auth"
18
- const handleAuth = (props) => async (req, res) => {
19
- const { PAGE_PATHS } = props;
20
- const { message, statusCode = 302, redirectUrl = `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?invalid_auth_response`, } = await utils_1.authHelper(Object.assign({ req, res }, props));
51
+ const handleAuth = (serverRuntimeConfig) => async (req, res) => {
52
+ const { PAGE_PATHS } = serverRuntimeConfig;
53
+ const { message, statusCode = 302, redirectUrl = `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?invalid_auth_response`, } = await utils_1.authHelper({ req, res, serverRuntimeConfig });
21
54
  if (statusCode >= 300 && statusCode < 400) {
22
55
  return res.redirect(statusCode, redirectUrl);
23
56
  }
@@ -25,9 +58,9 @@ const handleAuth = (props) => async (req, res) => {
25
58
  };
26
59
  exports.handleAuth = handleAuth;
27
60
  // NOTE: typically handling: "/api/auth/callback"
28
- const handleCallback = (props) => async (req, res) => {
29
- const { PAGE_PATHS } = props;
30
- const { message, statusCode = 302, redirectUrl = `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?invalid_callback_response`, } = await utils_1.callbackHelper(Object.assign({ req, res }, props));
61
+ const handleCallback = (serverRuntimeConfig) => async (req, res) => {
62
+ const { PAGE_PATHS } = serverRuntimeConfig;
63
+ const { message, statusCode = 302, redirectUrl = `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?invalid_callback_response`, } = await utils_1.callbackHelper({ req, res, serverRuntimeConfig });
31
64
  if (statusCode >= 300 && statusCode < 400) {
32
65
  return res.redirect(statusCode, redirectUrl);
33
66
  }
@@ -35,9 +68,9 @@ const handleCallback = (props) => async (req, res) => {
35
68
  };
36
69
  exports.handleCallback = handleCallback;
37
70
  // NOTE: typically handling: "/api/webhooks/app/uninstalled"
38
- const handleAppUninstalled = (props) => async (req, res) => {
39
- const { PAGE_PATHS } = props;
40
- const { message, statusCode = 302, redirectUrl = `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?invalid_uninstall_response`, } = await utils_1.uninstallHelper(Object.assign({ req }, props));
71
+ const handleAppUninstalled = (serverRuntimeConfig) => async (req, res) => {
72
+ const { PAGE_PATHS } = serverRuntimeConfig;
73
+ const { message, statusCode = 302, redirectUrl = `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?invalid_uninstall_response`, } = await utils_1.uninstallHelper({ req, serverRuntimeConfig });
41
74
  if (statusCode >= 300 && statusCode < 400) {
42
75
  return res.redirect(statusCode, redirectUrl);
43
76
  }
@@ -1 +1 @@
1
- {"version":3,"file":"apiHandlers.js","sourceRoot":"","sources":["../src/apiHandlers.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apiHandlers.js","sourceRoot":"","sources":["../src/apiHandlers.js"],"names":[],"mappings":";;;AAAA,gDAAgD;AAChD,sDAA+C;AAE/C,mCAOgB;AAET,MAAM,UAAU,GAAG,CAAC,mBAAmB,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;IAC5E,OAAO,CAAC,IAAI,CAAC,2BAA2B,EAAE,MAAM,CAAC,CAAA;IACjD,MAAM,EAAE,UAAU,EAAE,GAAG,mBAAmB,CAAA;IAC1C,MAAM,EACJ,OAAO,EACP,QAAQ,EACR,UAAU,GAAG,GAAG,EAChB,WAAW,GAAG,GAAG,UAAU,CAAC,wBAAgB,CAAC,KAAK,CAAC,wBAAwB,GAC5E,GAAG,MAAM,kBAAU,CAAC;QACnB,GAAG;QACH,GAAG;QACH,MAAM;QACN,mBAAmB;KACpB,CAAC,CAAA;IACF,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE,QAAQ,CAAC,CAAA;IAErD,6BAA6B;IAC7B,IAAI,UAAU,IAAI,GAAG,IAAI,UAAU,GAAG,GAAG,EAAE;QACzC,OAAO,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;KAC7C;IAED,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;KAC5C;IAED,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,KAAI,CAAC,CAAC,sBAAQ,CAAC,OAAO,EAAE,sBAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QAC5E,OAAO,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;KAC7C;IAED,OAAO,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AAC9C,CAAC,CAAA;AA9BY,QAAA,UAAU,cA8BtB;AAEM,MAAM,WAAW,GAAG,CAAC,mBAAmB,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;IAC7E,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAA;IAC5C,OAAO,CAAC,IAAI,CAAC,4BAA4B,EAAE,MAAM,CAAC,CAAA;IAClD,MAAM,EAAE,UAAU,EAAE,GAAG,mBAAmB,CAAA;IAC1C,MAAM,EACJ,OAAO,EACP,QAAQ,EACR,UAAU,GAAG,GAAG,EAChB,WAAW,GAAG,GAAG,UAAU,CAAC,wBAAgB,CAAC,KAAK,CAAC,yBAAyB,GAC7E,GAAG,MAAM,mBAAW,CAAC;QACpB,GAAG;QACH,GAAG;QACH,MAAM;QACN,mBAAmB;KACpB,CAAC,CAAA;IACF,OAAO,CAAC,IAAI,CAAC,8BAA8B,EAAE,QAAQ,CAAC,CAAA;IAEtD,IAAI,UAAU,IAAI,GAAG,IAAI,UAAU,GAAG,GAAG,EAAE;QACzC,OAAO,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;KAC7C;IAED,IAAI,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,CAAA,EAAE;QACnB,OAAO,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;KAC5C;IAED,OAAO,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;AACnD,CAAC,CAAA;AA1BY,QAAA,WAAW,eA0BvB;AAED,wCAAwC;AACjC,MAAM,UAAU,GAAG,CAAC,mBAAmB,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACpE,MAAM,EAAE,UAAU,EAAE,GAAG,mBAAmB,CAAA;IAC1C,MAAM,EACJ,OAAO,EACP,UAAU,GAAG,GAAG,EAChB,WAAW,GAAG,GAAG,UAAU,CAAC,wBAAgB,CAAC,KAAK,CAAC,wBAAwB,GAC5E,GAAG,MAAM,kBAAU,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAA;IAEvD,IAAI,UAAU,IAAI,GAAG,IAAI,UAAU,GAAG,GAAG,EAAE;QACzC,OAAO,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;KAC7C;IAED,OAAO,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AAC7C,CAAC,CAAA;AAbY,QAAA,UAAU,cAatB;AAED,iDAAiD;AAC1C,MAAM,cAAc,GAAG,CAAC,mBAAmB,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACxE,MAAM,EAAE,UAAU,EAAE,GAAG,mBAAmB,CAAA;IAC1C,MAAM,EACJ,OAAO,EACP,UAAU,GAAG,GAAG,EAChB,WAAW,GAAG,GAAG,UAAU,CAAC,wBAAgB,CAAC,KAAK,CAAC,4BAA4B,GAChF,GAAG,MAAM,sBAAc,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAA;IAE3D,IAAI,UAAU,IAAI,GAAG,IAAI,UAAU,GAAG,GAAG,EAAE;QACzC,OAAO,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;KAC7C;IAED,OAAO,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AAC7C,CAAC,CAAA;AAbY,QAAA,cAAc,kBAa1B;AAED,4DAA4D;AACrD,MAAM,oBAAoB,GAAG,CAAC,mBAAmB,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IAC9E,MAAM,EAAE,UAAU,EAAE,GAAG,mBAAmB,CAAA;IAC1C,MAAM,EACJ,OAAO,EACP,UAAU,GAAG,GAAG,EAChB,WAAW,GAAG,GAAG,UAAU,CAAC,wBAAgB,CAAC,KAAK,CAAC,6BAA6B,GACjF,GAAG,MAAM,uBAAe,CAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAA;IAEvD,IAAI,UAAU,IAAI,GAAG,IAAI,UAAU,GAAG,GAAG,EAAE;QACzC,OAAO,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;KAC7C;IAED,OAAO,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AAC7C,CAAC,CAAA;AAbY,QAAA,oBAAoB,wBAahC"}
@@ -0,0 +1,75 @@
1
+ export function restHelper({ req, res, params: _params, serverRuntimeConfig }: {
2
+ req: any;
3
+ res: any;
4
+ params: any;
5
+ serverRuntimeConfig: any;
6
+ }): Promise<{
7
+ statusCode: number;
8
+ message: string;
9
+ response?: undefined;
10
+ redirectUrl?: undefined;
11
+ } | {
12
+ statusCode: number;
13
+ response: any;
14
+ message?: undefined;
15
+ redirectUrl?: undefined;
16
+ } | {
17
+ statusCode: number;
18
+ redirectUrl: string;
19
+ message?: undefined;
20
+ response?: undefined;
21
+ }>;
22
+ export function graphHelper({ req, res, params: _params, serverRuntimeConfig }: {
23
+ req: any;
24
+ res: any;
25
+ params: any;
26
+ serverRuntimeConfig: any;
27
+ }): Promise<{
28
+ statusCode: number;
29
+ message: string;
30
+ response?: undefined;
31
+ redirectUrl?: undefined;
32
+ } | {
33
+ statusCode: number;
34
+ response: import("@shopify/shopify-api").RequestReturn<unknown>;
35
+ message?: undefined;
36
+ redirectUrl?: undefined;
37
+ } | {
38
+ statusCode: number;
39
+ redirectUrl: string;
40
+ message?: undefined;
41
+ response?: undefined;
42
+ }>;
43
+ export function authHelper({ req, res, serverRuntimeConfig }: {
44
+ req: any;
45
+ res: any;
46
+ serverRuntimeConfig: any;
47
+ }): Promise<{
48
+ statusCode: number;
49
+ redirectUrl: string;
50
+ message?: undefined;
51
+ } | {
52
+ statusCode: number;
53
+ message: string;
54
+ redirectUrl?: undefined;
55
+ }>;
56
+ export function callbackHelper({ req, res, serverRuntimeConfig }: {
57
+ req: any;
58
+ res: any;
59
+ serverRuntimeConfig: any;
60
+ }): Promise<{
61
+ statusCode: number;
62
+ redirectUrl: string;
63
+ message?: undefined;
64
+ } | {
65
+ statusCode: number;
66
+ message: string;
67
+ redirectUrl?: undefined;
68
+ }>;
69
+ export function uninstallHelper({ req, serverRuntimeConfig }: {
70
+ req: any;
71
+ serverRuntimeConfig: any;
72
+ }): Promise<{
73
+ statusCode: number;
74
+ message: string;
75
+ }>;
@@ -0,0 +1,252 @@
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
+ exports.uninstallHelper = exports.callbackHelper = exports.authHelper = exports.graphHelper = exports.restHelper = void 0;
15
+ const shopify_api_1 = require("@shopify/shopify-api");
16
+ const utils_1 = require("./utils");
17
+ const restHelper = async ({ req, res, params: _params, serverRuntimeConfig }) => {
18
+ const { query: _query, method: _method, body: _body } = req;
19
+ const { shop } = _query !== null && _query !== void 0 ? _query : {};
20
+ const _a = _params !== null && _params !== void 0 ? _params : {}, { method: methodParam, query: queryParam, body: bodyParam, path } = _a, params = __rest(_a, ["method", "query", "body", "path"]);
21
+ let query = queryParam !== null && queryParam !== void 0 ? queryParam : _query;
22
+ const body = bodyParam !== null && bodyParam !== void 0 ? bodyParam : _body;
23
+ const method = utils_1.ensureString(methodParam !== null && methodParam !== void 0 ? methodParam : _method).toLowerCase();
24
+ console.warn(`>>> > restHelper > params`, params);
25
+ console.warn(`>>> > restHelper > method`, method);
26
+ console.warn(`>>> > restHelper > body`, body);
27
+ if (utils_1.isType(query, 'string')) {
28
+ query = utils_1.querystringToObject(query);
29
+ }
30
+ console.warn(`>>> > restHelper > query`, query);
31
+ if (!shop || !path) {
32
+ return {
33
+ statusCode: 400,
34
+ message: 'Invalid arguments',
35
+ };
36
+ }
37
+ const shopify = utils_1.getInitializedShopify(serverRuntimeConfig, shop);
38
+ console.warn(`>>> > restHelper > shopify`, shopify);
39
+ try {
40
+ const session = await shopify.Utils.loadCurrentSession(req, res);
41
+ console.warn(`>>> > restHelper > session`, session);
42
+ // TODO refactor
43
+ // await verifyRequest(shopify, shop, session)
44
+ const client = new shopify.Clients.Rest(shop, session === null || session === void 0 ? void 0 : session.accessToken);
45
+ const response = await client[method](Object.assign({ path,
46
+ query,
47
+ body, type: shopify_api_1.DataType.JSON }, params));
48
+ return {
49
+ statusCode: 200,
50
+ response,
51
+ };
52
+ }
53
+ catch (error) {
54
+ // TODO determine proper catch checks
55
+ const errorMessage = 'Error handling rest call';
56
+ console.error(errorMessage, error);
57
+ switch (true) {
58
+ case error instanceof shopify.Errors.InvalidOAuthError: {
59
+ return {
60
+ statusCode: 400,
61
+ message: errorMessage,
62
+ };
63
+ }
64
+ case error instanceof shopify.Errors.CookieNotFound:
65
+ case error instanceof shopify.Errors.SessionNotFound: {
66
+ return {
67
+ statusCode: 302,
68
+ redirectUrl: utils_1.getRedirectUrl(serverRuntimeConfig, {
69
+ req,
70
+ res,
71
+ shop,
72
+ query: req.query,
73
+ }),
74
+ };
75
+ }
76
+ default: {
77
+ return {
78
+ statusCode: 500,
79
+ message: errorMessage,
80
+ };
81
+ }
82
+ }
83
+ }
84
+ };
85
+ exports.restHelper = restHelper;
86
+ const graphHelper = async ({ req, res, params: _params, serverRuntimeConfig }) => {
87
+ const { body, query: _query } = req;
88
+ const { shop } = _query !== null && _query !== void 0 ? _query : {};
89
+ const { data: _data } = body !== null && body !== void 0 ? body : {};
90
+ const _a = _params !== null && _params !== void 0 ? _params : {}, { data: dataParam, query: queryParam } = _a, params = __rest(_a, ["data", "query"]);
91
+ const data = dataParam !== null && dataParam !== void 0 ? dataParam : _data;
92
+ let query = queryParam !== null && queryParam !== void 0 ? queryParam : _query;
93
+ console.warn(`>>> > graphHelper > params`, params);
94
+ console.warn(`>>> > graphHelper > data`, data);
95
+ if (utils_1.isType(query, 'string')) {
96
+ query = utils_1.querystringToObject(query);
97
+ }
98
+ console.warn(`>>> > graphHelper > query`, query);
99
+ if (!shop || !data) {
100
+ return {
101
+ statusCode: 400,
102
+ message: 'Invalid arguments',
103
+ };
104
+ }
105
+ const shopify = utils_1.getInitializedShopify(serverRuntimeConfig, shop);
106
+ try {
107
+ const session = await shopify.Utils.loadCurrentSession(req, res);
108
+ // TODO refactor
109
+ // await verifyRequest(shopify, shop, session)
110
+ const client = new shopify.Clients.Graphql(shop, session === null || session === void 0 ? void 0 : session.accessToken);
111
+ const response = await client.query(Object.assign({ data,
112
+ query }, params));
113
+ return {
114
+ statusCode: 200,
115
+ response,
116
+ };
117
+ }
118
+ catch (error) {
119
+ // TODO determine proper catch checks
120
+ const errorMessage = 'Error handling query call';
121
+ console.error(errorMessage, error);
122
+ switch (true) {
123
+ case error instanceof shopify.Errors.InvalidOAuthError: {
124
+ return {
125
+ statusCode: 400,
126
+ message: errorMessage,
127
+ };
128
+ }
129
+ case error instanceof shopify.Errors.CookieNotFound:
130
+ case error instanceof shopify.Errors.SessionNotFound: {
131
+ return {
132
+ statusCode: 302,
133
+ redirectUrl: utils_1.getRedirectUrl(serverRuntimeConfig, {
134
+ req,
135
+ res,
136
+ shop,
137
+ query: req.query,
138
+ }),
139
+ };
140
+ }
141
+ default: {
142
+ return {
143
+ statusCode: 500,
144
+ message: errorMessage,
145
+ };
146
+ }
147
+ }
148
+ }
149
+ };
150
+ exports.graphHelper = graphHelper;
151
+ const authHelper = async ({ req, res, serverRuntimeConfig }) => {
152
+ const { query } = req;
153
+ const { shop } = query !== null && query !== void 0 ? query : {};
154
+ try {
155
+ return {
156
+ statusCode: 302,
157
+ redirectUrl: utils_1.getRedirectUrl(serverRuntimeConfig, {
158
+ req,
159
+ res,
160
+ query,
161
+ shop, // HMMM: why is this not grabbing from query and/or internally doing a req.query.shop?
162
+ }),
163
+ };
164
+ }
165
+ catch (error) {
166
+ const errorMessage = 'Error handling auth route';
167
+ console.error(errorMessage, error);
168
+ return {
169
+ statusCode: 500,
170
+ message: errorMessage,
171
+ };
172
+ }
173
+ };
174
+ exports.authHelper = authHelper;
175
+ const callbackHelper = async ({ req, res, serverRuntimeConfig }) => {
176
+ const { PAGE_PATHS, APP_WEBHOOKS } = serverRuntimeConfig;
177
+ const { shop, host } = req.query;
178
+ if (!shop || !host) {
179
+ return {
180
+ statusCode: 303,
181
+ redirectUrl: `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?code=invalid_callback`,
182
+ };
183
+ }
184
+ const shopify = utils_1.getInitializedShopify(serverRuntimeConfig, shop);
185
+ try {
186
+ const session = await shopify.Auth.validateAuthCallback(req, res, req.query);
187
+ await utils_1.registerWebhooks(serverRuntimeConfig, APP_WEBHOOKS, session);
188
+ // TODO check for billing redirect
189
+ const redirectUrl = shopify.Utils.getEmbeddedAppUrl(req);
190
+ return {
191
+ statusCode: 302,
192
+ // TODO: explore objectToQuerystring
193
+ redirectUrl: `${redirectUrl}?${new URLSearchParams(req.query).toString()}`,
194
+ };
195
+ }
196
+ catch (error) {
197
+ const errorMessage = 'Error handling callback route';
198
+ console.error(errorMessage, error);
199
+ switch (true) {
200
+ case error instanceof shopify.Errors.InvalidOAuthError: {
201
+ return {
202
+ statusCode: 400,
203
+ message: errorMessage,
204
+ };
205
+ }
206
+ case error instanceof shopify.Errors.CookieNotFound:
207
+ case error instanceof shopify.Errors.SessionNotFound: {
208
+ return {
209
+ statusCode: 302,
210
+ redirectUrl: utils_1.getRedirectUrl(serverRuntimeConfig, {
211
+ req,
212
+ res,
213
+ shop,
214
+ query: req.query,
215
+ }),
216
+ };
217
+ }
218
+ default: {
219
+ return {
220
+ statusCode: 500,
221
+ message: errorMessage,
222
+ };
223
+ }
224
+ }
225
+ }
226
+ };
227
+ exports.callbackHelper = callbackHelper;
228
+ const uninstallHelper = async ({ req, serverRuntimeConfig }) => {
229
+ var _a, _b, _c, _d;
230
+ try {
231
+ const { domain } = req.body;
232
+ const shopify = utils_1.getInitializedShopify(serverRuntimeConfig, domain);
233
+ const existingSessions = await ((_b = (_a = shopify.Context.SESSION_STORAGE) === null || _a === void 0 ? void 0 : _a.findSessionsByShop) === null || _b === void 0 ? void 0 : _b.call(_a, domain));
234
+ if (utils_1.arrayNotEmpty(existingSessions)) {
235
+ await ((_d = (_c = shopify.Context.SESSION_STORAGE) === null || _c === void 0 ? void 0 : _c.deleteSessions) === null || _d === void 0 ? void 0 : _d.call(_c, existingSessions.map((session) => session.id)));
236
+ }
237
+ return {
238
+ statusCode: 200,
239
+ message: 'success',
240
+ };
241
+ }
242
+ catch (error) {
243
+ const errorMessage = 'Error handling uninstall route';
244
+ console.error(errorMessage, error);
245
+ return {
246
+ statusCode: 500,
247
+ message: errorMessage,
248
+ };
249
+ }
250
+ };
251
+ exports.uninstallHelper = uninstallHelper;
252
+ //# sourceMappingURL=apiHelpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apiHelpers.js","sourceRoot":"","sources":["../src/apiHelpers.js"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export * from './apiHelpers';
1
2
  export * from './apiHandlers';
2
3
  export * from './protectRoute';
3
4
  export * from './withShopify';
package/dist/index.js CHANGED
@@ -10,6 +10,7 @@ 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("./apiHelpers"), exports);
13
14
  __exportStar(require("./apiHandlers"), exports);
14
15
  __exportStar(require("./protectRoute"), exports);
15
16
  __exportStar(require("./withShopify"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gDAA6B;AAC7B,iDAA8B;AAC9B,gDAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAA4B;AAC5B,gDAA6B;AAC7B,iDAA8B;AAC9B,gDAA6B"}
@@ -1,5 +1,7 @@
1
1
  export function getGUID(): any;
2
2
  export function getInteger(): any;
3
+ export function querystringToObject(queryString: any): any;
4
+ export function isType(value: any, type: any): boolean;
3
5
  export function ensureString(string: any): string;
4
6
  export function ensureArray(array?: any[]): any[];
5
7
  export function stringNotEmpty(stringable: any): boolean;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isTrue = exports.arrayNotEmpty = exports.arrayEmpty = exports.stringEmpty = exports.stringNotEmpty = exports.ensureArray = exports.ensureString = exports.getInteger = exports.getGUID = void 0;
3
+ exports.isTrue = exports.arrayNotEmpty = exports.arrayEmpty = exports.stringEmpty = exports.stringNotEmpty = exports.ensureArray = exports.ensureString = exports.isType = exports.querystringToObject = exports.getInteger = exports.getGUID = void 0;
4
4
  /* eslint-disable no-use-before-define */
5
5
  const uuid_1 = require("uuid");
6
6
  const getGUID = () => (uuid_1.v4());
@@ -8,6 +8,18 @@ exports.getGUID = getGUID;
8
8
  const getInteger = () => (exports.getGUID().replace(/\D/g, ''));
9
9
  exports.getInteger = getInteger;
10
10
  // TODO: keep in sync w/ lib-core
11
+ const querystringToObject = (queryString) => {
12
+ if (exports.stringEmpty(queryString)) {
13
+ return queryString;
14
+ }
15
+ const urlParams = new URLSearchParams(queryString);
16
+ return Object.fromEntries(urlParams);
17
+ };
18
+ exports.querystringToObject = querystringToObject;
19
+ const isType = (value, type) => (
20
+ // eslint-disable-next-line eqeqeq, valid-typeof
21
+ value != undefined && typeof value === type);
22
+ exports.isType = isType;
11
23
  const ensureString = (string) => (string ? `${string}` : '');
12
24
  exports.ensureString = ensureString;
13
25
  const ensureArray = (array = []) => (
@@ -1 +1 @@
1
- {"version":3,"file":"display.js","sourceRoot":"","sources":["../../src/utils/display.js"],"names":[],"mappings":";;;AAAA,yCAAyC;AACzC,+BAAmC;AAE5B,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,CAC3B,SAAM,EAAE,CACT,CAAA;AAFY,QAAA,OAAO,WAEnB;AAEM,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,CAC9B,eAAO,EAAE,CAAC,OAAO,CAAC,KAAK,EAAC,EAAE,CAAC,CAC5B,CAAA;AAFY,QAAA,UAAU,cAEtB;AAED,iCAAiC;AAC1B,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CACtC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAC1B,CAAA;AAFY,QAAA,YAAY,gBAExB;AAEM,MAAM,WAAW,GAAG,CAAC,KAAK,GAAG,EAAE,EAAE,EAAE,CAAC;AACzC,6CAA6C;AAC7C,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CACrD,CAAA;AAHY,QAAA,WAAW,eAGvB;AAGM,MAAM,cAAc,GAAG,CAAC,UAAU,EAAE,EAAE;IAC3C,MAAM,MAAM,GAAG,oBAAY,CAAC,UAAU,CAAC,CAAA;IACvC,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;AACzE,CAAC,CAAA;AAHY,QAAA,cAAc,kBAG1B;AAEM,MAAM,WAAW,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,CACzC,CAAC,sBAAc,CAAC,UAAU,CAAC,CAC5B,CAAA;AAFY,QAAA,WAAW,eAEvB;AAEM,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,kBAAkB,GAAG,KAAK,EAAE,EAAE,CAAC;AAC/D,kCAAkC;AAClC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,SAAS,IAAI,CAAC,kBAAkB,IAAI,mBAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC5H,CAAA;AAHY,QAAA,UAAU,cAGtB;AAEM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,kBAAkB,GAAG,KAAK,EAAE,EAAE,CAAC;AAClE,kCAAkC;AAClC,CAAC,kBAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,SAAS,IAAI,CAAC,CAAC,kBAAkB,IAAI,sBAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CACjG,CAAA;AAHY,QAAA,aAAa,iBAGzB;AAEM,MAAM,MAAM,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;IACrC,MAAM,MAAM,GAAG,oBAAY,CAAC,KAAK,CAAC,CAAA;IAClC,OAAO,CAAC,CAAC,GAAG,mBAAW,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;AAC/D,CAAC,CAAA;AAHY,QAAA,MAAM,UAGlB"}
1
+ {"version":3,"file":"display.js","sourceRoot":"","sources":["../../src/utils/display.js"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- export * from "./helpers";
2
1
  export * from "./display";
3
2
  export * from "./firebase";
4
3
  export * from "./shopify";
@@ -10,7 +10,6 @@ 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("./helpers"), exports);
14
13
  __exportStar(require("./display"), exports);
15
14
  __exportStar(require("./firebase"), exports);
16
15
  __exportStar(require("./shopify"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.js"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAAyB;AACzB,4CAAyB;AACzB,6CAA0B;AAC1B,4CAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.js"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAAyB;AACzB,6CAA0B;AAC1B,4CAAyB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agnostack/next-shopify",
3
- "version": "1.1.1-alpha.1",
3
+ "version": "1.1.1-alpha.10",
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,54 +0,0 @@
1
- export function queryHelper({ req, res, params, ...props }: {
2
- [x: string]: any;
3
- req: any;
4
- res: any;
5
- params: any;
6
- }): Promise<{
7
- statusCode: number;
8
- redirectUrl: string;
9
- data?: undefined;
10
- message?: undefined;
11
- } | {
12
- statusCode: number;
13
- data: import("@shopify/shopify-api").RequestReturn<unknown>;
14
- redirectUrl?: undefined;
15
- message?: undefined;
16
- } | {
17
- statusCode: number;
18
- message: string;
19
- redirectUrl?: undefined;
20
- data?: undefined;
21
- }>;
22
- export function authHelper({ req, res, ...props }: {
23
- [x: string]: any;
24
- req: any;
25
- res: any;
26
- }): Promise<{
27
- statusCode: number;
28
- redirectUrl: string;
29
- message?: undefined;
30
- } | {
31
- statusCode: number;
32
- message: string;
33
- redirectUrl?: undefined;
34
- }>;
35
- export function callbackHelper({ req, res, ...props }: {
36
- [x: string]: any;
37
- req: any;
38
- res: any;
39
- }): Promise<{
40
- statusCode: number;
41
- redirectUrl: string;
42
- message?: undefined;
43
- } | {
44
- statusCode: number;
45
- message: string;
46
- redirectUrl?: undefined;
47
- }>;
48
- export function uninstallHelper({ req, ...props }: {
49
- [x: string]: any;
50
- req: any;
51
- }): Promise<{
52
- statusCode: number;
53
- message: string;
54
- }>;
@@ -1,176 +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
- exports.uninstallHelper = exports.callbackHelper = exports.authHelper = exports.queryHelper = void 0;
15
- const display_1 = require("./display");
16
- const shopify_1 = require("./shopify");
17
- const queryHelper = async (_a) => {
18
- var { req, res, params } = _a, props = __rest(_a, ["req", "res", "params"]);
19
- const { query } = req;
20
- const { shop } = query !== null && query !== void 0 ? query : {};
21
- const { query: graphQuery } = params !== null && params !== void 0 ? params : {};
22
- if (!shop || !graphQuery) {
23
- return {
24
- statusCode: 400,
25
- redirectUrl: 'Invalid arguments',
26
- };
27
- }
28
- const shopify = shopify_1.getInitializedShopify(props, shop);
29
- try {
30
- const session = await shopify.Utils.loadCurrentSession(req, res);
31
- // TODO refactor
32
- // await verifyRequest(shopify, shop, session)
33
- const client = new shopify.Clients.Graphql(session.shop, session.accessToken);
34
- const data = await client.query({ data: graphQuery });
35
- return {
36
- statusCode: 200,
37
- data,
38
- };
39
- }
40
- catch (error) {
41
- // TODO determine proper catch checks
42
- const errorMessage = 'Error handling query';
43
- console.error(errorMessage, error);
44
- switch (true) {
45
- case error instanceof shopify.Errors.InvalidOAuthError: {
46
- return {
47
- statusCode: 400,
48
- message: errorMessage,
49
- };
50
- }
51
- case error instanceof shopify.Errors.CookieNotFound:
52
- case error instanceof shopify.Errors.SessionNotFound: {
53
- return {
54
- statusCode: 302,
55
- redirectUrl: shopify_1.getRedirectUrl(props, {
56
- req,
57
- res,
58
- shop,
59
- query: req.query,
60
- }),
61
- };
62
- }
63
- default: {
64
- return {
65
- statusCode: 500,
66
- message: errorMessage,
67
- };
68
- }
69
- }
70
- }
71
- };
72
- exports.queryHelper = queryHelper;
73
- const authHelper = async (_a) => {
74
- var { req, res } = _a, props = __rest(_a, ["req", "res"]);
75
- const { query } = req;
76
- const { shop } = query !== null && query !== void 0 ? query : {};
77
- try {
78
- return {
79
- statusCode: 302,
80
- redirectUrl: shopify_1.getRedirectUrl(props, {
81
- req,
82
- res,
83
- query,
84
- shop,
85
- }),
86
- };
87
- }
88
- catch (error) {
89
- const errorMessage = 'Error handling auth route';
90
- console.error(errorMessage, error);
91
- return {
92
- statusCode: 500,
93
- message: errorMessage,
94
- };
95
- }
96
- };
97
- exports.authHelper = authHelper;
98
- const callbackHelper = async (_a) => {
99
- var { req, res } = _a, props = __rest(_a, ["req", "res"]);
100
- const { PAGE_PATHS, APP_WEBHOOKS } = props;
101
- const { shop, host } = req.query;
102
- if (!shop || !host) {
103
- return {
104
- statusCode: 303,
105
- redirectUrl: `${PAGE_PATHS[shopify_1.PAGE_ROUTE_NAMES.ERROR]}?code=invalid_callback`,
106
- };
107
- }
108
- const shopify = shopify_1.getInitializedShopify(props, shop);
109
- try {
110
- const session = await shopify.Auth.validateAuthCallback(req, res, req.query);
111
- await shopify_1.registerWebhooks(props, APP_WEBHOOKS, session);
112
- // TODO check for billing redirect
113
- const redirectUrl = shopify.Utils.getEmbeddedAppUrl(req);
114
- return {
115
- statusCode: 302,
116
- redirectUrl: `${redirectUrl}?${new URLSearchParams(req.query).toString()}`,
117
- };
118
- }
119
- catch (error) {
120
- const errorMessage = 'Error handling callback route';
121
- console.error(errorMessage, error);
122
- switch (true) {
123
- case error instanceof shopify.Errors.InvalidOAuthError: {
124
- return {
125
- statusCode: 400,
126
- message: errorMessage,
127
- };
128
- }
129
- case error instanceof shopify.Errors.CookieNotFound:
130
- case error instanceof shopify.Errors.SessionNotFound: {
131
- return {
132
- statusCode: 302,
133
- redirectUrl: shopify_1.getRedirectUrl(props, {
134
- req,
135
- res,
136
- shop,
137
- query: req.query,
138
- }),
139
- };
140
- }
141
- default: {
142
- return {
143
- statusCode: 500,
144
- message: errorMessage,
145
- };
146
- }
147
- }
148
- }
149
- };
150
- exports.callbackHelper = callbackHelper;
151
- const uninstallHelper = async (_a) => {
152
- var _b, _c, _d, _e;
153
- var { req } = _a, props = __rest(_a, ["req"]);
154
- try {
155
- const { domain } = req.body;
156
- const shopify = shopify_1.getInitializedShopify(props, domain);
157
- const existingSessions = await ((_c = (_b = shopify.Context.SESSION_STORAGE) === null || _b === void 0 ? void 0 : _b.findSessionsByShop) === null || _c === void 0 ? void 0 : _c.call(_b, domain));
158
- if (display_1.arrayNotEmpty(existingSessions)) {
159
- await ((_e = (_d = shopify.Context.SESSION_STORAGE) === null || _d === void 0 ? void 0 : _d.deleteSessions) === null || _e === void 0 ? void 0 : _e.call(_d, existingSessions.map((session) => session.id)));
160
- }
161
- return {
162
- statusCode: 200,
163
- message: 'success',
164
- };
165
- }
166
- catch (error) {
167
- const errorMessage = 'Error handling uninstall route';
168
- console.error(errorMessage, error);
169
- return {
170
- statusCode: 500,
171
- message: errorMessage,
172
- };
173
- }
174
- };
175
- exports.uninstallHelper = uninstallHelper;
176
- //# sourceMappingURL=helpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/utils/helpers.js"],"names":[],"mappings":"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"}