@agnostack/next-shopify 1.1.1-alpha.2 → 1.1.1-alpha.20

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,129 @@
1
+ ## [1.1.1-alpha.20](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.19...v1.1.1-alpha.20) (2022-11-10)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * modify rest payload ([8ce8810](https://github.com/agnostack/next-shopify/commit/8ce8810fc2f04834237cc874ad92c9fecbf13e93))
7
+
8
+ ## [1.1.1-alpha.19](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.18...v1.1.1-alpha.19) (2022-11-10)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * modify rest payload ([eabae19](https://github.com/agnostack/next-shopify/commit/eabae194ad5f9864b84872ee65f0213134123d87))
14
+
15
+ ## [1.1.1-alpha.18](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.17...v1.1.1-alpha.18) (2022-11-10)
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * optimization ([12636d0](https://github.com/agnostack/next-shopify/commit/12636d0e3e007c80ec2e6c10ebcf368ea7fd408f))
21
+
22
+ ## [1.1.1-alpha.17](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.16...v1.1.1-alpha.17) (2022-11-10)
23
+
24
+
25
+ ### Bug Fixes
26
+
27
+ * add billing manager ([65bbfc7](https://github.com/agnostack/next-shopify/commit/65bbfc75fc1ca1814640da0e9fe28f57bb9cdf4c))
28
+
29
+ ## [1.1.1-alpha.16](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.15...v1.1.1-alpha.16) (2022-11-10)
30
+
31
+
32
+ ### Bug Fixes
33
+
34
+ * add payment config method ([8fda8c2](https://github.com/agnostack/next-shopify/commit/8fda8c2c569d780336cd487d02a3e6cc5bd73784))
35
+
36
+ ## [1.1.1-alpha.15](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.14...v1.1.1-alpha.15) (2022-11-10)
37
+
38
+
39
+ ### Bug Fixes
40
+
41
+ * removed logs, destructured data ([ac84948](https://github.com/agnostack/next-shopify/commit/ac84948abb894629647a9671d21ce94cb71af42a))
42
+
43
+ ## [1.1.1-alpha.14](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.13...v1.1.1-alpha.14) (2022-11-10)
44
+
45
+
46
+ ### Bug Fixes
47
+
48
+ * added logs and JSON.parse ([eb1e59e](https://github.com/agnostack/next-shopify/commit/eb1e59ee465b972db51fdde097d84ebee3c339bc))
49
+
50
+ ## [1.1.1-alpha.13](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.12...v1.1.1-alpha.13) (2022-11-10)
51
+
52
+
53
+ ### Bug Fixes
54
+
55
+ * added logs, change to use body direct ([67c7d5d](https://github.com/agnostack/next-shopify/commit/67c7d5d7261a623c693ee1f4846f6395f492346e))
56
+
57
+ ## [1.1.1-alpha.12](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.11...v1.1.1-alpha.12) (2022-11-10)
58
+
59
+
60
+ ### Bug Fixes
61
+
62
+ * removed logs, return only body ([2f706c9](https://github.com/agnostack/next-shopify/commit/2f706c911e23e23555bf67ecc6c5f5bc37b26d02))
63
+
64
+ ## [1.1.1-alpha.11](https://github.com/agnostack/next-shopify/compare/v1.1.1-alpha.10...v1.1.1-alpha.11) (2022-11-10)
65
+
66
+
67
+ ### Bug Fixes
68
+
69
+ * updated invalid import ([2cdbf41](https://github.com/agnostack/next-shopify/commit/2cdbf41a7b17c447587f876231830c707e9ebc90))
70
+
71
+ ## [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)
72
+
73
+
74
+ ### Bug Fixes
75
+
76
+ * removed old export ([4cc445d](https://github.com/agnostack/next-shopify/commit/4cc445dbffcc25c3ab77bf04091ba3db3676a0b9))
77
+
78
+ ## [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)
79
+
80
+
81
+ ### Bug Fixes
82
+
83
+ * updated method signatures ([26316c8](https://github.com/agnostack/next-shopify/commit/26316c80d1a9a9b8663dd864a2270b2617c0492b))
84
+
85
+ ## [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)
86
+
87
+
88
+ ### Bug Fixes
89
+
90
+ * renamed query to graph ([af40892](https://github.com/agnostack/next-shopify/commit/af40892835e72c1c39e0f4983e0758a12ada4245))
91
+
92
+ ## [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)
93
+
94
+
95
+ ### Bug Fixes
96
+
97
+ * refactored to export helpers ([35eafde](https://github.com/agnostack/next-shopify/commit/35eafdef0acdcc2f882729088918a40dc47607c3))
98
+
99
+ ## [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)
100
+
101
+
102
+ ### Bug Fixes
103
+
104
+ * added debug logs ([934b436](https://github.com/agnostack/next-shopify/commit/934b43655b6c78b1d1c2aef83bfe2443f5cb6534))
105
+
106
+ ## [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)
107
+
108
+
109
+ ### Bug Fixes
110
+
111
+ * added message in response (and debug logs) ([d713bb5](https://github.com/agnostack/next-shopify/commit/d713bb597780efa96c7781763bd4f57bd14ea61c))
112
+
113
+ ## [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)
114
+
115
+
116
+ ### Bug Fixes
117
+
118
+ * added querystringToObject ([2e5e9dc](https://github.com/agnostack/next-shopify/commit/2e5e9dc219de4bf61514a55909b36368b340c47d))
119
+
120
+ ## [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)
121
+
122
+
123
+ ### Bug Fixes
124
+
125
+ * added handleRest, updated handleQuery ([3228ce8](https://github.com/agnostack/next-shopify/commit/3228ce8bb41854aef44ecc3fb78a971401461ea8))
126
+
1
127
  ## [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)
2
128
 
3
129
 
@@ -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");
6
+ const apiHelpers_1 = require("./apiHelpers");
5
7
  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,
8
+ const handleRest = (serverRuntimeConfig) => async (req, res, 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 apiHelpers_1.restHelper({
11
+ req,
9
12
  res,
10
- params }, props));
13
+ params,
14
+ serverRuntimeConfig,
15
+ });
16
+ // TODO: move these to helper
11
17
  if (statusCode >= 300 && statusCode < 400) {
12
18
  return res.redirect(statusCode, redirectUrl);
13
19
  }
14
- return res.status(statusCode).json(data);
20
+ if (!response) {
21
+ return res.status(statusCode).send(message);
22
+ }
23
+ if ((params === null || params === void 0 ? void 0 : params.type) && ![shopify_api_1.DataType.GraphQL, shopify_api_1.DataType.JSON].includes(params.type)) {
24
+ return res.status(statusCode).send(response);
25
+ }
26
+ if (!(response === null || response === void 0 ? void 0 : response.body)) {
27
+ return res.status(statusCode).send(message);
28
+ }
29
+ return res.status(statusCode).json(response.body);
30
+ };
31
+ exports.handleRest = handleRest;
32
+ const handleGraph = (serverRuntimeConfig) => async (req, res, params) => {
33
+ var _a, _b;
34
+ const { PAGE_PATHS } = serverRuntimeConfig;
35
+ const { message, response, statusCode = 302, redirectUrl = `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?invalid_query_response`, } = await apiHelpers_1.graphHelper({
36
+ req,
37
+ res,
38
+ params,
39
+ serverRuntimeConfig,
40
+ });
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((_b = (_a = response.body) === null || _a === void 0 ? void 0 : _a.data) !== null && _b !== void 0 ? _b : 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 apiHelpers_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 apiHelpers_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 apiHelpers_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":"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"}
@@ -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,258 @@
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
+ if (utils_1.isType(query, 'string')) {
25
+ query = utils_1.querystringToObject(query);
26
+ }
27
+ if (!shop || !path) {
28
+ return {
29
+ statusCode: 400,
30
+ message: 'Invalid arguments',
31
+ };
32
+ }
33
+ const shopify = utils_1.getInitializedShopify(serverRuntimeConfig, shop);
34
+ try {
35
+ const session = await shopify.Utils.loadCurrentSession(req, res);
36
+ // TODO: ensure valid session (at least check from session?.accessToken)?
37
+ // TODO refactor
38
+ // await verifyRequest(shopify, shop, session)
39
+ const client = new shopify.Clients.Rest(shop, session === null || session === void 0 ? void 0 : session.accessToken);
40
+ const response = await client[method](Object.assign({ path,
41
+ query,
42
+ body, type: shopify_api_1.DataType.JSON }, params));
43
+ return {
44
+ statusCode: 200,
45
+ response,
46
+ };
47
+ }
48
+ catch (error) {
49
+ // TODO determine proper catch checks
50
+ const errorMessage = 'Error handling rest call';
51
+ console.error(errorMessage, error);
52
+ switch (true) {
53
+ case error instanceof shopify.Errors.InvalidOAuthError: {
54
+ return {
55
+ statusCode: 400,
56
+ message: errorMessage,
57
+ };
58
+ }
59
+ case error instanceof shopify.Errors.CookieNotFound:
60
+ case error instanceof shopify.Errors.SessionNotFound: {
61
+ return {
62
+ statusCode: 302,
63
+ redirectUrl: utils_1.getRedirectUrl(serverRuntimeConfig, {
64
+ req,
65
+ res,
66
+ shop,
67
+ query: req.query,
68
+ }),
69
+ };
70
+ }
71
+ default: {
72
+ return {
73
+ statusCode: 500,
74
+ message: errorMessage,
75
+ };
76
+ }
77
+ }
78
+ }
79
+ };
80
+ exports.restHelper = restHelper;
81
+ const graphHelper = async ({ req, res, params: _params, serverRuntimeConfig }) => {
82
+ const { body, query: _query } = req;
83
+ const { shop } = _query !== null && _query !== void 0 ? _query : {};
84
+ const _a = _params !== null && _params !== void 0 ? _params : {}, { data: dataParam, query: queryParam } = _a, params = __rest(_a, ["data", "query"]);
85
+ let query = queryParam !== null && queryParam !== void 0 ? queryParam : _query;
86
+ const data = dataParam !== null && dataParam !== void 0 ? dataParam : JSON.parse(body !== null && body !== void 0 ? body : {});
87
+ if (utils_1.isType(query, 'string')) {
88
+ query = utils_1.querystringToObject(query);
89
+ }
90
+ if (!shop || !data) {
91
+ return {
92
+ statusCode: 400,
93
+ message: 'Invalid arguments',
94
+ };
95
+ }
96
+ const shopify = utils_1.getInitializedShopify(serverRuntimeConfig, shop);
97
+ try {
98
+ const session = await shopify.Utils.loadCurrentSession(req, res);
99
+ // TODO: ensure valid session (at least check from session?.accessToken)?
100
+ // TODO refactor
101
+ // await verifyRequest(shopify, shop, session)
102
+ const client = new shopify.Clients.Graphql(shop, session === null || session === void 0 ? void 0 : session.accessToken);
103
+ const response = await client.query(Object.assign({ data,
104
+ query }, params));
105
+ // TODO: check for repsonse.errors/response.body?.errors and throw??
106
+ return {
107
+ statusCode: 200,
108
+ response,
109
+ };
110
+ }
111
+ catch (error) {
112
+ // TODO determine proper catch checks
113
+ const errorMessage = 'Error handling query call';
114
+ console.error(errorMessage, error);
115
+ switch (true) {
116
+ case error instanceof shopify.Errors.InvalidOAuthError: {
117
+ return {
118
+ statusCode: 400,
119
+ message: errorMessage,
120
+ };
121
+ }
122
+ case error instanceof shopify.Errors.CookieNotFound:
123
+ case error instanceof shopify.Errors.SessionNotFound: {
124
+ return {
125
+ statusCode: 302,
126
+ redirectUrl: utils_1.getRedirectUrl(serverRuntimeConfig, {
127
+ req,
128
+ res,
129
+ shop,
130
+ query: req.query,
131
+ }),
132
+ };
133
+ }
134
+ default: {
135
+ return {
136
+ statusCode: 500,
137
+ message: errorMessage,
138
+ };
139
+ }
140
+ }
141
+ }
142
+ };
143
+ exports.graphHelper = graphHelper;
144
+ const authHelper = async ({ req, res, serverRuntimeConfig }) => {
145
+ const { query } = req;
146
+ const { shop } = query !== null && query !== void 0 ? query : {};
147
+ try {
148
+ return {
149
+ statusCode: 302,
150
+ redirectUrl: utils_1.getRedirectUrl(serverRuntimeConfig, {
151
+ req,
152
+ res,
153
+ query,
154
+ shop, // HMMM: why is this not grabbing from query and/or internally doing a req.query.shop?
155
+ }),
156
+ };
157
+ }
158
+ catch (error) {
159
+ const errorMessage = 'Error handling auth route';
160
+ console.error(errorMessage, error);
161
+ return {
162
+ statusCode: 500,
163
+ message: errorMessage,
164
+ };
165
+ }
166
+ };
167
+ exports.authHelper = authHelper;
168
+ const callbackHelper = async ({ req, res, serverRuntimeConfig }) => {
169
+ const { PAGE_PATHS, APP_WEBHOOKS, PAYMENT_CONFIG } = serverRuntimeConfig;
170
+ const { shop, host } = req.query;
171
+ if (!shop || !host) {
172
+ return {
173
+ statusCode: 303,
174
+ redirectUrl: `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?code=invalid_callback`,
175
+ };
176
+ }
177
+ const shopify = utils_1.getInitializedShopify(serverRuntimeConfig, shop);
178
+ try {
179
+ const session = await shopify.Auth.validateAuthCallback(req, res, req.query);
180
+ await utils_1.registerWebhooks(serverRuntimeConfig, APP_WEBHOOKS, session);
181
+ // TODO: explore objectToQuerystring
182
+ let redirectUrl = `${shopify.Utils.getEmbeddedAppUrl(req)}?${new URLSearchParams(req.query).toString()}`;
183
+ // TODO check for billing redirect
184
+ console.log(`>>> ~ PAYMENT_CONFIG`, PAYMENT_CONFIG);
185
+ if (PAYMENT_CONFIG === null || PAYMENT_CONFIG === void 0 ? void 0 : PAYMENT_CONFIG.required) {
186
+ const billingManager = new utils_1.BillingManager(shopify, {
187
+ session,
188
+ payment: PAYMENT_CONFIG,
189
+ });
190
+ const { hasPayment, confirmationUrl } = await billingManager.ensureBilling();
191
+ console.log(`>>> ~ confirmationUrl`, confirmationUrl);
192
+ console.log(`>>> ~ hasPayment`, hasPayment);
193
+ if (!hasPayment && utils_1.stringNotEmpty(confirmationUrl)) {
194
+ redirectUrl = confirmationUrl;
195
+ }
196
+ }
197
+ return {
198
+ statusCode: 302,
199
+ redirectUrl,
200
+ };
201
+ }
202
+ catch (error) {
203
+ const errorMessage = 'Error handling callback route';
204
+ console.error(errorMessage, error);
205
+ switch (true) {
206
+ case error instanceof shopify.Errors.InvalidOAuthError: {
207
+ return {
208
+ statusCode: 400,
209
+ message: errorMessage,
210
+ };
211
+ }
212
+ case error instanceof shopify.Errors.CookieNotFound:
213
+ case error instanceof shopify.Errors.SessionNotFound: {
214
+ return {
215
+ statusCode: 302,
216
+ redirectUrl: utils_1.getRedirectUrl(serverRuntimeConfig, {
217
+ req,
218
+ res,
219
+ shop,
220
+ query: req.query,
221
+ }),
222
+ };
223
+ }
224
+ default: {
225
+ return {
226
+ statusCode: 500,
227
+ message: errorMessage,
228
+ };
229
+ }
230
+ }
231
+ }
232
+ };
233
+ exports.callbackHelper = callbackHelper;
234
+ const uninstallHelper = async ({ req, serverRuntimeConfig }) => {
235
+ var _a, _b, _c, _d;
236
+ try {
237
+ const { domain } = req.body;
238
+ const shopify = utils_1.getInitializedShopify(serverRuntimeConfig, domain);
239
+ 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));
240
+ if (utils_1.arrayNotEmpty(existingSessions)) {
241
+ 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)));
242
+ }
243
+ return {
244
+ statusCode: 200,
245
+ message: 'success',
246
+ };
247
+ }
248
+ catch (error) {
249
+ const errorMessage = 'Error handling uninstall route';
250
+ console.error(errorMessage, error);
251
+ return {
252
+ statusCode: 500,
253
+ message: errorMessage,
254
+ };
255
+ }
256
+ };
257
+ exports.uninstallHelper = uninstallHelper;
258
+ //# 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"}
@@ -0,0 +1,35 @@
1
+ export function ShopifyBillingError(message: any, errorData: any): void;
2
+ export class ShopifyBillingError {
3
+ constructor(message: any, errorData: any);
4
+ name: string;
5
+ stack: string;
6
+ message: any;
7
+ errorData: any;
8
+ }
9
+ export namespace BILLING_INTERVALS {
10
+ const ONE_TIME: string;
11
+ const EVERY_30_DAYS: string;
12
+ const ANNUAL: string;
13
+ }
14
+ export class BillingManager {
15
+ constructor(shopify: any, { session, payment }: {
16
+ session: any;
17
+ payment: any;
18
+ });
19
+ shopify: any;
20
+ shop: any;
21
+ accessToken: any;
22
+ appName: any;
23
+ price: any;
24
+ testMode: any;
25
+ billingType: any;
26
+ isRecurring: boolean;
27
+ ensureBilling(): Promise<{
28
+ hasPayment: boolean;
29
+ confirmationUrl: any;
30
+ }>;
31
+ hasActivePayment(): Promise<boolean>;
32
+ requestPayment(): Promise<any>;
33
+ requestSinglePayment(client: any, returnUrl: any): Promise<any>;
34
+ requestRecurringPayment(client: any, returnUrl: any): Promise<any>;
35
+ }