@agnostack/next-shopify 1.14.0-beta.13 → 1.14.0-beta.15
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/lib/handlers/api/proxy.d.ts.map +1 -1
- package/dist/lib/handlers/api/proxy.js +8 -3
- package/dist/lib/handlers/api/proxy.js.map +1 -1
- package/dist/lib/utils/verification.d.ts +1 -1
- package/dist/lib/utils/verification.d.ts.map +1 -1
- package/dist/lib/utils/verification.js +13 -9
- package/dist/lib/utils/verification.js.map +1 -1
- package/dist/react/hooks/useVerification.d.ts +2 -2
- package/dist/react/hooks/useVerification.js +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
# [1.14.0-beta.15](https://github.com/agnostack/next-shopify/compare/v1.14.0-beta.14...v1.14.0-beta.15) (2023-12-05)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* wip ([b936bb3](https://github.com/agnostack/next-shopify/commit/b936bb3131d45b451a8f359bc9bed7c64dcd714e))
|
|
7
|
+
|
|
8
|
+
# [1.14.0-beta.14](https://github.com/agnostack/next-shopify/compare/v1.14.0-beta.13...v1.14.0-beta.14) (2023-12-04)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
* wip ([58a91e2](https://github.com/agnostack/next-shopify/commit/58a91e228d0bed2ca726cbff2296e3a3500b02a7))
|
|
14
|
+
|
|
1
15
|
# [1.14.0-beta.13](https://github.com/agnostack/next-shopify/compare/v1.14.0-beta.12...v1.14.0-beta.13) (2023-12-04)
|
|
2
16
|
|
|
3
17
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../../../src/lib/handlers/api/proxy.js"],"names":[],"mappings":"AAmCO,
|
|
1
|
+
{"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../../../src/lib/handlers/api/proxy.js"],"names":[],"mappings":"AAmCO,sHA6LN"}
|
|
@@ -53,6 +53,7 @@ const handleProxy = (serverRuntimeConfig, config) => {
|
|
|
53
53
|
const _targetUrl = ((0, shared_1.stringEmpty)(targetParam) || targetParam.startsWith('http')) ? targetParam : `${APP_BASE_URL}/${(0, shared_1.removeLeadingSlash)(targetParam)}`;
|
|
54
54
|
const { origin: target, hostname, pathname, search } = (0, shared_1.stringNotEmpty)(_targetUrl) ? new URL(_targetUrl) : {};
|
|
55
55
|
targetPath = [pathname, search].filter(shared_1.stringNotEmpty).join('');
|
|
56
|
+
console.log(`>>> > return > targetPath:`, targetPath);
|
|
56
57
|
const safelistedTarget = (0, shared_1.matchHostname)(hostname, Object.assign({ [new URL(APP_BASE_URL).hostname]: {
|
|
57
58
|
// HMMM: can we generate our own session token (or use the current one) so as to not have to tell handleGraph/Rest to behave as offline?
|
|
58
59
|
// headers: {
|
|
@@ -92,8 +93,9 @@ const handleProxy = (serverRuntimeConfig, config) => {
|
|
|
92
93
|
if ((0, shared_1.objectNotEmpty)(targetParams)) {
|
|
93
94
|
targetPath = (0, shared_1.appendQuery)(targetPath, new URLSearchParams(targetParams).toString());
|
|
94
95
|
}
|
|
95
|
-
const
|
|
96
|
-
|
|
96
|
+
const disableRecryption = targetPath === null || targetPath === void 0 ? void 0 : targetPath.startsWith('/api/');
|
|
97
|
+
const [requestBody, recryptResponse] = yield _getVerifiedBody(req, res, { uri: targetPath, disableRecryption });
|
|
98
|
+
console.log(`>>> > handleProxy > requestBody: '${targetPath}'`, { requestBody, disableRecryption });
|
|
97
99
|
const _prepareHeaders = (0, utils_1.prepareHeaders)(serverRuntimeConfig);
|
|
98
100
|
const headers = yield _prepareHeaders({
|
|
99
101
|
generateReplacements,
|
|
@@ -110,13 +112,16 @@ const handleProxy = (serverRuntimeConfig, config) => {
|
|
|
110
112
|
proxy.on('proxyReq', (proxyReq, proxyReqRequest, proxyReqResponse, options) => {
|
|
111
113
|
if ((0, shared_1.objectNotEmpty)(requestBody)) {
|
|
112
114
|
const bodyData = JSON.stringify(requestBody);
|
|
115
|
+
console.log(`>>> > proxy.on > bodyData1`, bodyData);
|
|
113
116
|
proxyReq.setHeader('Content-Length', Buffer.byteLength(bodyData));
|
|
117
|
+
console.log(`>>> > proxy.on > bodyData2:`);
|
|
114
118
|
proxyReq.write(bodyData);
|
|
115
119
|
}
|
|
116
120
|
});
|
|
117
121
|
proxy.on('proxyRes', function (proxyRes, proxyResRequest, proxyResResponse) {
|
|
118
122
|
(0, node_http_proxy_json_1.default)(proxyResResponse, proxyRes, function (proxyResBody) {
|
|
119
|
-
|
|
123
|
+
console.log(`>>> > proxyResBody:`, proxyResBody);
|
|
124
|
+
return recryptResponse(proxyResBody);
|
|
120
125
|
});
|
|
121
126
|
});
|
|
122
127
|
proxy.once('error', (error) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../../../src/lib/handlers/api/proxy.js"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../../../src/lib/handlers/api/proxy.js"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export function ensureRawBody(req: any): Promise<any>;
|
|
2
|
-
export function getVerifiedBody(serverRuntimeConfig: any): (req: any, res: any,
|
|
2
|
+
export function getVerifiedBody(serverRuntimeConfig: any): (req: any, res: any, params: any) => Promise<any>;
|
|
3
3
|
//# sourceMappingURL=verification.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/verification.js"],"names":[],"mappings":"AAWO,sDAYN;AAEM,
|
|
1
|
+
{"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/verification.js"],"names":[],"mappings":"AAWO,sDAYN;AAEM,6GA6FN"}
|
|
@@ -19,9 +19,12 @@ const ensureRawBody = (req) => tslib_1.__awaiter(void 0, void 0, void 0, functio
|
|
|
19
19
|
exports.ensureRawBody = ensureRawBody;
|
|
20
20
|
const getVerifiedBody = (serverRuntimeConfig) => {
|
|
21
21
|
const { keyPairs } = serverRuntimeConfig;
|
|
22
|
-
return (req, res,
|
|
22
|
+
return (req, res, params) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
23
23
|
var _a;
|
|
24
24
|
const { 'x-public-key': apiKey, 'x-ephemeral-key': ephemeralPublicKey, 'x-authorization-timestamp': customAuthTimestamp, 'x-authorization': customAuth, } = (_a = req.headers) !== null && _a !== void 0 ? _a : {};
|
|
25
|
+
const { uri: _uri, disableRecryption } = params !== null && params !== void 0 ? params : {};
|
|
26
|
+
const uri = _uri !== null && _uri !== void 0 ? _uri : req.url;
|
|
27
|
+
console.log(`>>> > getVerifiedBody > req.headers: '${uri}'`, { headers: req.headers, disableRecryption });
|
|
25
28
|
try {
|
|
26
29
|
const [authProtocol, authSignature] = (0, shared_1.ensureString)(customAuth).split(' ');
|
|
27
30
|
const isVerifiable = (apiKey &&
|
|
@@ -32,8 +35,9 @@ const getVerifiedBody = (serverRuntimeConfig) => {
|
|
|
32
35
|
(authProtocol === 'HMAC-SHA256'));
|
|
33
36
|
let verificationKeys;
|
|
34
37
|
const rawBody = yield (0, exports.ensureRawBody)(req);
|
|
35
|
-
const parsedBody = (0, shared_1.safeParse)(rawBody || '{}');
|
|
36
|
-
|
|
38
|
+
const parsedBody = (0, shared_1.safeParse)(rawBody || '{}');
|
|
39
|
+
// NOTE: requestBody should be wind up decrypted when isVerifiable (unless disableRecryption, then will pass through)
|
|
40
|
+
let requestBody = parsedBody;
|
|
37
41
|
// TEMP!!! remove isVerifiable check once webwidget moved to react
|
|
38
42
|
if (isVerifiable) {
|
|
39
43
|
if (!apiKey ||
|
|
@@ -52,23 +56,23 @@ const getVerifiedBody = (serverRuntimeConfig) => {
|
|
|
52
56
|
if (!verificationKeys) {
|
|
53
57
|
return res.status(412).json({ message: 'Invalid or missing verification' });
|
|
54
58
|
}
|
|
55
|
-
const verificationPayload = (0, shared_1.objectToSortedString)(Object.assign({ method: (0, shared_1.getRequestMethod)(rawBody, req.method), timestamp: customAuthTimestamp, body: parsedBody }, (0, shared_1.normalizeURIParts)(uri
|
|
59
|
+
const verificationPayload = (0, shared_1.objectToSortedString)(Object.assign({ method: (0, shared_1.getRequestMethod)(rawBody, req.method), timestamp: customAuthTimestamp, body: parsedBody }, (0, shared_1.normalizeURIParts)(uri)));
|
|
56
60
|
const isValid = yield shared_1.subtle.verifyHMAC(verificationPayload, verificationKeys.derivedHMACKey, authSignature);
|
|
57
61
|
if (!isValid) {
|
|
58
62
|
return res.status(412).json({ message: 'Invalid or missing verification' });
|
|
59
63
|
}
|
|
60
|
-
if (rawBody) {
|
|
64
|
+
if (!disableRecryption && rawBody) {
|
|
61
65
|
const decryptedMessage = yield shared_1.subtle.decryptMessage(parsedBody, verificationKeys.derivedSecretKey);
|
|
62
|
-
|
|
66
|
+
requestBody = (0, shared_1.safeParse)(decryptedMessage || '{}');
|
|
63
67
|
}
|
|
64
68
|
}
|
|
65
69
|
const postProcess = (response) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
66
|
-
if (!response || !isVerifiable || !(verificationKeys === null || verificationKeys === void 0 ? void 0 : verificationKeys.derivedSecretKey)) {
|
|
70
|
+
if (!response || !isVerifiable || !disableRecryption || !(verificationKeys === null || verificationKeys === void 0 ? void 0 : verificationKeys.derivedSecretKey)) {
|
|
67
71
|
return response;
|
|
68
72
|
}
|
|
69
|
-
return shared_1.subtle.encryptMessage(JSON.stringify(response), verificationKeys
|
|
73
|
+
return shared_1.subtle.encryptMessage(JSON.stringify(response), verificationKeys.derivedSecretKey);
|
|
70
74
|
});
|
|
71
|
-
return [
|
|
75
|
+
return [requestBody, postProcess];
|
|
72
76
|
}
|
|
73
77
|
catch (error) {
|
|
74
78
|
console.error(`Error handling request verification for '${req === null || req === void 0 ? void 0 : req.url}'`, error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verification.js","sourceRoot":"","sources":["../../../src/lib/utils/verification.js"],"names":[],"mappings":";;;;AAAA,gEAAiC;AAEjC,yCAOqB;AAEd,MAAM,aAAa,GAAG,CAAO,GAAG,EAAE,EAAE;IAAC,OAAA,CAC1C,IAAA,kBAAU,EAAC,GAAG,CAAC;SACZ,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;SACvC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACf,qHAAqH;QACrH,IAAI,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,MAAK,qBAAqB,CAAC,EAAE;YAC3C,OAAO,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,CAAA;SACjB;QAED,OAAO,CAAC,KAAK,CAAC,+BAA+B,GAAG,CAAC,GAAG,GAAG,EAAE,KAAK,CAAC,CAAA;QAC/D,MAAM,KAAK,CAAA;IACb,CAAC,CAAC,CACL,CAAA;EAAA,CAAA;AAZY,QAAA,aAAa,iBAYzB;AAEM,MAAM,eAAe,GAAG,CAAC,mBAAmB,EAAE,EAAE;IACrD,MAAM,EAAE,QAAQ,EAAE,GAAG,mBAAmB,CAAA;IAExC,OAAO,CAAO,GAAG,EAAE,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"verification.js","sourceRoot":"","sources":["../../../src/lib/utils/verification.js"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export function useVerification({ publicKey,
|
|
1
|
+
export function useVerification({ publicKey, disableRecryption }?: {
|
|
2
2
|
publicKey: any;
|
|
3
|
-
|
|
3
|
+
disableRecryption: any;
|
|
4
4
|
}): {
|
|
5
5
|
prepareVerification: (requestPath: any, { body: rawBody, headers: rawHeaders, method: rawMethod }?: {
|
|
6
6
|
body: any;
|
|
@@ -4,7 +4,7 @@ exports.useVerification = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const react_1 = require("react");
|
|
6
6
|
const shared_1 = require("../../shared");
|
|
7
|
-
const useVerification = ({ publicKey,
|
|
7
|
+
const useVerification = ({ publicKey, disableRecryption } = {}) => {
|
|
8
8
|
const [keysData, setKeysData] = (0, react_1.useState)();
|
|
9
9
|
const getKeysData = () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
10
10
|
const _ephemeralStoreableKeyPair = yield shared_1.subtle.getStorableKeyPair(yield shared_1.subtle.generateKeyPair());
|
|
@@ -18,7 +18,7 @@ const useVerification = ({ publicKey, disableEncryption } = {}) => {
|
|
|
18
18
|
};
|
|
19
19
|
});
|
|
20
20
|
const prepareVerification = (requestPath, { body: rawBody, headers: rawHeaders, method: rawMethod } = {}) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
21
|
-
if (
|
|
21
|
+
if (disableRecryption) {
|
|
22
22
|
const method = (0, shared_1.getRequestMethod)(rawBody, rawMethod);
|
|
23
23
|
return [
|
|
24
24
|
requestPath,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agnostack/next-shopify",
|
|
3
|
-
"version": "1.14.0-beta.
|
|
3
|
+
"version": "1.14.0-beta.15",
|
|
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",
|