@agnostack/next-shopify 1.4.7 → 1.4.9
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 +14 -0
- package/dist/handlers/ssr.js +4 -16
- package/dist/handlers/ssr.js.map +1 -1
- package/dist/helpers/callback.js +5 -5
- package/dist/helpers/callback.js.map +1 -1
- package/dist/utils/errors.d.ts +8 -0
- package/dist/utils/errors.js +9 -1
- package/dist/utils/errors.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
## [1.4.9](https://github.com/agnostack/next-shopify/compare/v1.4.8...v1.4.9) (2022-11-29)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* added ERROR_CODES constants ([842495e](https://github.com/agnostack/next-shopify/commit/842495e6b8763b06ba65230c66640b60d24073af))
|
|
7
|
+
|
|
8
|
+
## [1.4.8](https://github.com/agnostack/next-shopify/compare/v1.4.7...v1.4.8) (2022-11-28)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
* testing session fallback ([4dbaf67](https://github.com/agnostack/next-shopify/commit/4dbaf67e5adc1b9bbcaefd04c588b34cab6ab1d6))
|
|
14
|
+
|
|
1
15
|
## [1.4.7](https://github.com/agnostack/next-shopify/compare/v1.4.6...v1.4.7) (2022-11-28)
|
|
2
16
|
|
|
3
17
|
|
package/dist/handlers/ssr.js
CHANGED
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.protectRoute = exports.wrapRoute = void 0;
|
|
7
|
-
const shopify_api_1 = __importDefault(require("@shopify/shopify-api"));
|
|
8
4
|
const utils_1 = require("../utils");
|
|
9
5
|
const getSecurityHeader = (shop) => (utils_1.stringNotEmpty(shop)
|
|
10
6
|
? `frame-ancestors self https://admin.shopify.com https://${shop};`
|
|
@@ -17,18 +13,10 @@ const wrapRoute = () => ({ res, query, locale } = {}, data) => {
|
|
|
17
13
|
};
|
|
18
14
|
exports.wrapRoute = wrapRoute;
|
|
19
15
|
const protectRoute = (props) => async ({ req, res, query, locale } = {}, data) => {
|
|
20
|
-
var _a, _b, _c, _d, _e, _f
|
|
21
|
-
const loadedSess = await shopify_api_1.default.Utils.loadCurrentSession(req, res);
|
|
16
|
+
var _a, _b, _c, _d, _e, _f;
|
|
22
17
|
const { PAGE_PATHS } = props;
|
|
23
|
-
|
|
24
|
-
const
|
|
25
|
-
console.warn(`>>> > protectRoute > shop`, {
|
|
26
|
-
shop,
|
|
27
|
-
queryshop: query === null || query === void 0 ? void 0 : query.shop,
|
|
28
|
-
loadedSess,
|
|
29
|
-
loadedShop: loadedSess === null || loadedSess === void 0 ? void 0 : loadedSess.shop,
|
|
30
|
-
});
|
|
31
|
-
const embedded = (_d = query === null || query === void 0 ? void 0 : query.embedded) !== null && _d !== void 0 ? _d : (_e = req.query) === null || _e === void 0 ? void 0 : _e.embedded;
|
|
18
|
+
const shop = (_a = query === null || query === void 0 ? void 0 : query.shop) !== null && _a !== void 0 ? _a : (_b = req.query) === null || _b === void 0 ? void 0 : _b.shop;
|
|
19
|
+
const embedded = (_c = query === null || query === void 0 ? void 0 : query.embedded) !== null && _c !== void 0 ? _c : (_d = req.query) === null || _d === void 0 ? void 0 : _d.embedded;
|
|
32
20
|
res.setHeader('Content-Security-Policy', getSecurityHeader(shop));
|
|
33
21
|
if (utils_1.stringEmpty(shop)) {
|
|
34
22
|
const noShopUrl = `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?code=no_shop_provided&type=protectRoute`;
|
|
@@ -40,7 +28,7 @@ const protectRoute = (props) => async ({ req, res, query, locale } = {}, data) =
|
|
|
40
28
|
};
|
|
41
29
|
}
|
|
42
30
|
const shopify = utils_1.getInitializedShopify(props, shop);
|
|
43
|
-
const shopSessions = await ((
|
|
31
|
+
const shopSessions = await ((_f = (_e = shopify.Context.SESSION_STORAGE) === null || _e === void 0 ? void 0 : _e.findSessionsByShop) === null || _f === void 0 ? void 0 : _f.call(_e, shop));
|
|
44
32
|
if (utils_1.arrayEmpty(shopSessions)) {
|
|
45
33
|
const emptySessionUrl = utils_1.getRedirectUrl(props, {
|
|
46
34
|
req,
|
package/dist/handlers/ssr.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ssr.js","sourceRoot":"","sources":["../../src/handlers/ssr.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ssr.js","sourceRoot":"","sources":["../../src/handlers/ssr.js"],"names":[],"mappings":";;;AAAA,oCAOiB;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,kBACH,MAAM,IACH,IAAI,CACR;KACF,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,GAAG,KAAK,CAAA;IAC5B,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,MAAM,SAAS,GAAG,GAAG,UAAU,CAAC,wBAAgB,CAAC,KAAK,CAAC,0CAA0C,CAAA;QACjG,OAAO;YACL,QAAQ,EAAE;gBACR,WAAW,EAAE,SAAS;gBACtB,SAAS,EAAE,KAAK;aACjB;SACF,CAAA;KACF;IAED,MAAM,OAAO,GAAG,6BAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IAClD,MAAM,YAAY,GAAG,MAAM,CAAA,MAAA,MAAA,OAAO,CAAC,OAAO,CAAC,eAAe,0CAAE,kBAAkB,mDAAG,IAAI,CAAC,CAAA,CAAA;IAEtF,IAAI,kBAAU,CAAC,YAAY,CAAC,EAAE;QAC5B,MAAM,eAAe,GAAG,sBAAc,CAAC,KAAK,EAAE;YAC5C,GAAG;YACH,GAAG;YACH,KAAK;SACN,CAAC,CAAA;QAEF,OAAO;YACL,QAAQ,EAAE;gBACR,WAAW,EAAE,eAAe;gBAC5B,SAAS,EAAE,KAAK;aACjB;SACF,CAAA;KACF;IAED,IAAI,QAAQ,KAAK,GAAG,EAAE;QACpB,MAAM,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAA;QAE3D,OAAO;YACL,QAAQ,EAAE;gBACR,WAAW,EAAE,cAAc;gBAC3B,SAAS,EAAE,KAAK;aACjB;SACF,CAAA;KACF;IAED,OAAO;QACL,KAAK,kBACH,MAAM,IACH,IAAI,CACR;KACF,CAAA;AACH,CAAC,CAAA;AApDY,QAAA,YAAY,gBAoDxB"}
|
package/dist/helpers/callback.js
CHANGED
|
@@ -9,7 +9,7 @@ const callbackHelper = async ({ req, res, serverRuntimeConfig }) => {
|
|
|
9
9
|
if (utils_1.stringEmpty(shop) || utils_1.stringEmpty(host)) {
|
|
10
10
|
return {
|
|
11
11
|
statusCode: 303,
|
|
12
|
-
redirectUrl: `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?code
|
|
12
|
+
redirectUrl: `${PAGE_PATHS[utils_1.PAGE_ROUTE_NAMES.ERROR]}?code=${utils_1.ERROR_CODES.INVALID_CALLBACK}`,
|
|
13
13
|
};
|
|
14
14
|
}
|
|
15
15
|
let redirectUrl;
|
|
@@ -42,23 +42,23 @@ const callbackHelper = async ({ req, res, serverRuntimeConfig }) => {
|
|
|
42
42
|
}
|
|
43
43
|
case error instanceof shopify_api_1.Shopify.Errors.BillingError: {
|
|
44
44
|
console.error(`${errorMessage}. Billing Error ${error.message}`, error.errorData);
|
|
45
|
-
redirectUrl =
|
|
45
|
+
redirectUrl = `/error?code=${utils_1.ERROR_CODES.BILLING}`;
|
|
46
46
|
break;
|
|
47
47
|
}
|
|
48
48
|
case error instanceof shopify_api_1.Shopify.Errors.GraphqlQueryError: {
|
|
49
49
|
const errorMessages = utils_1.ensureArray((_a = error.response) === null || _a === void 0 ? void 0 : _a.errors).map(({ message }) => utils_1.ensureString(message));
|
|
50
50
|
console.error(`${errorMessage}. GraphqlQuery Error ${errorMessages.join('. ')}`);
|
|
51
|
-
redirectUrl =
|
|
51
|
+
redirectUrl = `/error?code=${utils_1.ERROR_CODES.QUERY}`;
|
|
52
52
|
break;
|
|
53
53
|
}
|
|
54
54
|
case error instanceof shopify_api_1.Shopify.Errors.InvalidOAuthError: {
|
|
55
55
|
console.error(`${errorMessage}. InvalidOAuth Error`, error);
|
|
56
|
-
redirectUrl =
|
|
56
|
+
redirectUrl = `/error?code=${utils_1.ERROR_CODES.OAUTH}`;
|
|
57
57
|
break;
|
|
58
58
|
}
|
|
59
59
|
default: {
|
|
60
60
|
console.error(errorMessage, error);
|
|
61
|
-
redirectUrl =
|
|
61
|
+
redirectUrl = `/error?code=${utils_1.ERROR_CODES.CALLBACK}`;
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"callback.js","sourceRoot":"","sources":["../../src/helpers/callback.js"],"names":[],"mappings":";;AAAA,sDAA8C;AAE9C,
|
|
1
|
+
{"version":3,"file":"callback.js","sourceRoot":"","sources":["../../src/helpers/callback.js"],"names":[],"mappings":"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"}
|
package/dist/utils/errors.d.ts
CHANGED
|
@@ -2,3 +2,11 @@ export class ShopifyAuthenticationError extends Error {
|
|
|
2
2
|
constructor(message: any, data: any);
|
|
3
3
|
data: any;
|
|
4
4
|
}
|
|
5
|
+
export namespace ERROR_CODES {
|
|
6
|
+
const CALLBACK: string;
|
|
7
|
+
const QUERY: string;
|
|
8
|
+
const BILLING: string;
|
|
9
|
+
const OAUTH: string;
|
|
10
|
+
const MISSING_SHOP: string;
|
|
11
|
+
const INVALID_CALLBACK: string;
|
|
12
|
+
}
|
package/dist/utils/errors.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ShopifyAuthenticationError = void 0;
|
|
3
|
+
exports.ERROR_CODES = exports.ShopifyAuthenticationError = void 0;
|
|
4
4
|
class ShopifyAuthenticationError extends Error {
|
|
5
5
|
constructor(message, data) {
|
|
6
6
|
super(message);
|
|
@@ -10,4 +10,12 @@ class ShopifyAuthenticationError extends Error {
|
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
12
|
exports.ShopifyAuthenticationError = ShopifyAuthenticationError;
|
|
13
|
+
exports.ERROR_CODES = {
|
|
14
|
+
CALLBACK: 'callback_error',
|
|
15
|
+
QUERY: 'query_error',
|
|
16
|
+
BILLING: 'billing_error',
|
|
17
|
+
OAUTH: 'oauth_error',
|
|
18
|
+
MISSING_SHOP: 'no_shop_provided',
|
|
19
|
+
INVALID_CALLBACK: 'invalid_callback',
|
|
20
|
+
};
|
|
13
21
|
//# sourceMappingURL=errors.js.map
|
package/dist/utils/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.js"],"names":[],"mappings":";;;AAAA,MAAa,0BAA2B,SAAQ,KAAK;IACnD,YAAY,OAAO,EAAE,IAAI;QACvB,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAA;QACxC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,0BAA0B,CAAC,SAAS,CAAC,CAAA;IACnE,CAAC;CACF;AAPD,gEAOC"}
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.js"],"names":[],"mappings":";;;AAAA,MAAa,0BAA2B,SAAQ,KAAK;IACnD,YAAY,OAAO,EAAE,IAAI;QACvB,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAA;QACxC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,0BAA0B,CAAC,SAAS,CAAC,CAAA;IACnE,CAAC;CACF;AAPD,gEAOC;AAEY,QAAA,WAAW,GAAG;IACzB,QAAQ,EAAE,gBAAgB;IAC1B,KAAK,EAAE,aAAa;IACpB,OAAO,EAAE,eAAe;IACxB,KAAK,EAAE,aAAa;IACpB,YAAY,EAAE,kBAAkB;IAChC,gBAAgB,EAAE,kBAAkB;CACrC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agnostack/next-shopify",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.9",
|
|
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",
|