@agnostack/next-shopify 1.7.4-alpha.8 → 1.7.4
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/dist/handlers/api/uninstall.js +5 -7
- package/dist/handlers/api/uninstall.js.map +1 -1
- package/dist/handlers/ssr/protect.js +4 -5
- package/dist/handlers/ssr/protect.js.map +1 -1
- package/dist/utils/crypto.d.ts +8 -0
- package/dist/utils/crypto.js +33 -2
- package/dist/utils/crypto.js.map +1 -1
- package/dist/utils/firebase.d.ts +1 -1
- package/dist/utils/firebase.js +9 -8
- package/dist/utils/firebase.js.map +1 -1
- package/dist/utils/session.d.ts +6 -3
- package/dist/utils/session.js +22 -11
- package/dist/utils/session.js.map +1 -1
- package/dist/withShopify.js +7 -1
- package/dist/withShopify.js.map +1 -1
- package/package.json +1 -1
|
@@ -19,8 +19,7 @@ const handleAppUninstalled = (serverRuntimeConfig) => async (req, res) => {
|
|
|
19
19
|
if (utils_1.stringEmpty(shop)) {
|
|
20
20
|
return res.status(400).send('Invalid shop');
|
|
21
21
|
}
|
|
22
|
-
|
|
23
|
-
const { shopify, findSession } = await utils_1.getShopifyHelpers(serverRuntimeConfig, { shop });
|
|
22
|
+
const { shopify, findSessionIds, deleteSessions } = await utils_1.getShopifyHelpers(serverRuntimeConfig, { shop });
|
|
24
23
|
const { valid } = await shopify.webhooks.validate({
|
|
25
24
|
rawBody: rawBody.toString(),
|
|
26
25
|
rawRequest: req,
|
|
@@ -28,11 +27,10 @@ const handleAppUninstalled = (serverRuntimeConfig) => async (req, res) => {
|
|
|
28
27
|
});
|
|
29
28
|
if (valid) {
|
|
30
29
|
try {
|
|
31
|
-
const sessionsIds = await
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
// }
|
|
30
|
+
const sessionsIds = await findSessionIds(shop);
|
|
31
|
+
if (utils_1.arrayNotEmpty(sessionsIds)) {
|
|
32
|
+
await deleteSessions(sessionsIds);
|
|
33
|
+
}
|
|
36
34
|
return res.status(200).send('success');
|
|
37
35
|
}
|
|
38
36
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../src/handlers/api/uninstall.js"],"names":[],"mappings":";;;;;;AAAA,wDAAiC;AAEjC,uCAIoB;AAEpB,4DAA4D;AACrD,MAAM,oBAAoB,GAAG,CAAC,mBAAmB,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IAC9E,mEAAmE;IACnE,MAAM,OAAO,GAAG,MAAM,kBAAU,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACpD,OAAO,CAAC,KAAK,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAA;QAEnE,2EAA2E;QAC3E,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAA;IAC3D,CAAC,CAAC,CAAA;IAEF,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,
|
|
1
|
+
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../src/handlers/api/uninstall.js"],"names":[],"mappings":";;;;;;AAAA,wDAAiC;AAEjC,uCAIoB;AAEpB,4DAA4D;AACrD,MAAM,oBAAoB,GAAG,CAAC,mBAAmB,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IAC9E,mEAAmE;IACnE,MAAM,OAAO,GAAG,MAAM,kBAAU,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACpD,OAAO,CAAC,KAAK,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAA;QAEnE,2EAA2E;QAC3E,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAA;IAC3D,CAAC,CAAC,CAAA;IAEF,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,cAAc,EAAE,cAAc,EAAE,GAAG,MAAM,yBAAiB,CAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;QAE1G,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAChD,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE;YAC3B,UAAU,EAAE,GAAG;YACf,WAAW,EAAE,GAAG;SACjB,CAAC,CAAA;QAEF,IAAI,KAAK,EAAE;YACT,IAAI;gBACF,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAA;gBAC9C,IAAI,qBAAa,CAAC,WAAW,CAAC,EAAE;oBAC9B,MAAM,cAAc,CAAC,WAAW,CAAC,CAAA;iBAClC;gBACD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;aACvC;YAAC,OAAO,KAAK,EAAE;gBACd,sFAAsF;gBACtF,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,CAAC,CAAA;aAC5C;SACF;QAED,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAA;QAC1C,sFAAsF;QACtF,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;KACvC;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;AA7CY,QAAA,oBAAoB,wBA6ChC"}
|
|
@@ -16,9 +16,9 @@ const protectRoute = (props) => async ({ req, res, query, locale } = {}, data) =
|
|
|
16
16
|
},
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
|
-
const { shopify,
|
|
20
|
-
const
|
|
21
|
-
if (utils_1.arrayEmpty(
|
|
19
|
+
const { shopify, findSessionIds, loadSession } = await utils_1.getShopifyHelpers(props, { shop });
|
|
20
|
+
const existingSessionIds = await findSessionIds(shop);
|
|
21
|
+
if (utils_1.arrayEmpty(existingSessionIds)) {
|
|
22
22
|
// TODO: explore objectToQuerystring
|
|
23
23
|
const queryParams = new URLSearchParams(Object.assign(Object.assign({}, query), { shop })).toString();
|
|
24
24
|
return {
|
|
@@ -30,7 +30,7 @@ const protectRoute = (props) => async ({ req, res, query, locale } = {}, data) =
|
|
|
30
30
|
}
|
|
31
31
|
if (embedded !== '1') {
|
|
32
32
|
try {
|
|
33
|
-
await
|
|
33
|
+
await loadSession({ req, res });
|
|
34
34
|
const destination = await shopify.auth.getEmbeddedAppUrl({
|
|
35
35
|
rawRequest: req,
|
|
36
36
|
rawResponse: res,
|
|
@@ -43,7 +43,6 @@ const protectRoute = (props) => async ({ req, res, query, locale } = {}, data) =
|
|
|
43
43
|
};
|
|
44
44
|
}
|
|
45
45
|
catch (error) {
|
|
46
|
-
console.log(`>>> ~ error`, error);
|
|
47
46
|
if (error instanceof utils_1.ShopifyAuthenticationError) {
|
|
48
47
|
// TODO clear sessions???
|
|
49
48
|
const queryParams = new URLSearchParams(Object.assign(Object.assign({}, query), { shop })).toString();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protect.js","sourceRoot":"","sources":["../../../src/handlers/ssr/protect.js"],"names":[],"mappings":";;;AAAA,uCASoB;AAEb,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,yBAAiB,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,
|
|
1
|
+
{"version":3,"file":"protect.js","sourceRoot":"","sources":["../../../src/handlers/ssr/protect.js"],"names":[],"mappings":";;;AAAA,uCASoB;AAEb,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,yBAAiB,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,cAAc,EAAE,WAAW,EAAE,GAAG,MAAM,yBAAiB,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;IAEzF,MAAM,kBAAkB,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAA;IAErD,IAAI,kBAAU,CAAC,kBAAkB,CAAC,EAAE;QAClC,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,IAAI;YACF,MAAM,WAAW,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;YAE/B,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC;gBACvD,UAAU,EAAE,GAAG;gBACf,WAAW,EAAE,GAAG;aACjB,CAAC,CAAA;YAEF,OAAO;gBACL,QAAQ,EAAE;oBACR,WAAW;oBACX,SAAS,EAAE,KAAK;iBACjB;aACF,CAAA;SACF;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,kCAA0B,EAAE;gBAC/C,yBAAyB;gBACzB,MAAM,WAAW,GAAG,IAAI,eAAe,iCAAM,KAAK,KAAE,IAAI,IAAG,CAAC,QAAQ,EAAE,CAAA;gBAEtE,OAAO;oBACL,QAAQ,EAAE;wBACR,WAAW,EAAE,GAAG,SAAS,CAAC,uBAAe,CAAC,IAAI,CAAC,IAAI,WAAW,EAAE;wBAChE,SAAS,EAAE,KAAK;qBACjB;iBACF,CAAA;aACF;YAED,MAAM,KAAK,CAAA;SACZ;KACF;IAED,OAAO;QACL,KAAK,EAAE,mBAAW,iBAChB,MAAM,IACH,IAAI,EACP;KACH,CAAA;AACH,CAAC,CAAA;AAtEY,QAAA,YAAY,gBAsExB"}
|
package/dist/utils/crypto.d.ts
CHANGED
|
@@ -1,2 +1,10 @@
|
|
|
1
1
|
export function generateHMAC(message: any, apiSecret: any, digest?: string): Buffer & string;
|
|
2
2
|
export function compareHashes(digestable: any, checkSumable: any, encoding?: string): boolean;
|
|
3
|
+
export function wrapKeyData(keyData: any, keyType?: string): string;
|
|
4
|
+
export function getRecrypted(encrypted: any): {
|
|
5
|
+
initialVector: any;
|
|
6
|
+
encrypted: string;
|
|
7
|
+
};
|
|
8
|
+
export function decryptAES(toDecrypt: any, sharedSecret: any, initialVector: any): string;
|
|
9
|
+
export function decryptRSAPublic(toDecrypt: any, publicKey: any, encoding?: string): string;
|
|
10
|
+
export function encryptRSAPrivate(toEncrypt: any, privateKey: any, encoding?: string): string;
|
package/dist/utils/crypto.js
CHANGED
|
@@ -3,13 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.compareHashes = exports.generateHMAC = void 0;
|
|
6
|
+
exports.encryptRSAPrivate = exports.decryptRSAPublic = exports.decryptAES = exports.getRecrypted = exports.wrapKeyData = exports.compareHashes = exports.generateHMAC = void 0;
|
|
7
7
|
const crypto_1 = __importDefault(require("crypto"));
|
|
8
|
+
const display_1 = require("./display");
|
|
8
9
|
const generateHMAC = (message, apiSecret, digest = 'hex') => (crypto_1.default.createHmac('sha256', apiSecret)
|
|
9
10
|
.update(message)
|
|
10
11
|
.digest(digest));
|
|
11
12
|
exports.generateHMAC = generateHMAC;
|
|
12
|
-
const compareHashes = (digestable, checkSumable, encoding = '
|
|
13
|
+
const compareHashes = (digestable, checkSumable, encoding = 'utf8') => {
|
|
13
14
|
const digest = (digestable instanceof ArrayBuffer)
|
|
14
15
|
? digestable
|
|
15
16
|
: Buffer.from(digestable, encoding);
|
|
@@ -20,4 +21,34 @@ const compareHashes = (digestable, checkSumable, encoding = 'utf-8') => {
|
|
|
20
21
|
crypto_1.default.timingSafeEqual(digest, checkSum));
|
|
21
22
|
};
|
|
22
23
|
exports.compareHashes = compareHashes;
|
|
24
|
+
const wrapKeyData = (keyData, keyType = 'RSA PRIVATE') => (`-----BEGIN ${keyType} KEY-----${display_1.ensureString(keyData).replace(/"/g, '')}-----END ${keyType} KEY-----\n`.replace(/\\n/g, '\n'));
|
|
25
|
+
exports.wrapKeyData = wrapKeyData;
|
|
26
|
+
const getRecrypted = (encrypted) => {
|
|
27
|
+
const [beginning, hiddenInitialVector, end = ''] = encrypted.split(/_(.*==)=/g);
|
|
28
|
+
return { initialVector: hiddenInitialVector, encrypted: `${beginning}${end}` };
|
|
29
|
+
};
|
|
30
|
+
exports.getRecrypted = getRecrypted;
|
|
31
|
+
const decryptAES = (toDecrypt, sharedSecret, initialVector) => {
|
|
32
|
+
if (!toDecrypt || !sharedSecret || !initialVector)
|
|
33
|
+
return '';
|
|
34
|
+
const decipher = crypto_1.default.createDecipheriv('aes-256-cbc', Buffer.from(sharedSecret, 'base64'), Buffer.from(initialVector, 'base64'));
|
|
35
|
+
const decrypted = Buffer.concat([
|
|
36
|
+
decipher.update(Buffer.from(toDecrypt, 'base64')),
|
|
37
|
+
decipher.final()
|
|
38
|
+
]);
|
|
39
|
+
return decrypted.toString('utf8');
|
|
40
|
+
};
|
|
41
|
+
exports.decryptAES = decryptAES;
|
|
42
|
+
const decryptRSAPublic = (toDecrypt, publicKey, encoding = 'utf8') => (!toDecrypt || !publicKey
|
|
43
|
+
? ''
|
|
44
|
+
: crypto_1.default
|
|
45
|
+
.publicDecrypt(publicKey, Buffer.from(toDecrypt, 'base64'))
|
|
46
|
+
.toString(encoding));
|
|
47
|
+
exports.decryptRSAPublic = decryptRSAPublic;
|
|
48
|
+
const encryptRSAPrivate = (toEncrypt, privateKey, encoding = 'utf8') => (!toEncrypt || !privateKey
|
|
49
|
+
? ''
|
|
50
|
+
: crypto_1.default
|
|
51
|
+
.privateEncrypt(privateKey, Buffer.from(JSON.stringify(toEncrypt), encoding))
|
|
52
|
+
.toString('base64'));
|
|
53
|
+
exports.encryptRSAPrivate = encryptRSAPrivate;
|
|
23
54
|
//# sourceMappingURL=crypto.js.map
|
package/dist/utils/crypto.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../src/utils/crypto.js"],"names":[],"mappings":";;;;;;AAAA,oDAA2B;
|
|
1
|
+
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../src/utils/crypto.js"],"names":[],"mappings":"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"}
|
package/dist/utils/firebase.d.ts
CHANGED
|
@@ -18,6 +18,6 @@ export class FirebaseSessionHandler {
|
|
|
18
18
|
export function storeCallback(instance: any, session: any): Promise<boolean>;
|
|
19
19
|
export function loadCallback(instance: any, sessionId: any): Promise<any>;
|
|
20
20
|
export function deleteSessionsCallback(instance: any, sessionIds: any): Promise<any[]>;
|
|
21
|
-
export function
|
|
21
|
+
export function findSessionIdsByShop(instance: any, shop: any): Promise<any[]>;
|
|
22
22
|
declare const singleton: unique symbol;
|
|
23
23
|
export {};
|
package/dist/utils/firebase.js
CHANGED
|
@@ -14,7 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
14
14
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.
|
|
17
|
+
exports.findSessionIdsByShop = exports.deleteSessionsCallback = exports.loadCallback = exports.storeCallback = exports.FirebaseSessionHandler = void 0;
|
|
18
18
|
const firebase_admin_1 = __importDefault(require("firebase-admin"));
|
|
19
19
|
const display_1 = require("./display");
|
|
20
20
|
const constants_1 = require("./constants");
|
|
@@ -60,6 +60,7 @@ const storeCallback = async (instance, session) => {
|
|
|
60
60
|
.doc(instance.config.shop)
|
|
61
61
|
.collection(instance.config.configurationId)
|
|
62
62
|
.doc(session.id);
|
|
63
|
+
// TODO: do we need to remove/can we remove session.id here??
|
|
63
64
|
const _a = JSON.parse(JSON.stringify(session)), { onlineAccessInfo: _onlineAccessInfo } = _a, docData = __rest(_a, ["onlineAccessInfo"]);
|
|
64
65
|
// NOTE: destructuring out associated_user for DPA compliance
|
|
65
66
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
@@ -119,9 +120,9 @@ const deleteSessionsCallback = async (instance, sessionIds) => {
|
|
|
119
120
|
}
|
|
120
121
|
};
|
|
121
122
|
exports.deleteSessionsCallback = deleteSessionsCallback;
|
|
122
|
-
const
|
|
123
|
+
const findSessionIdsByShop = async (instance, shop) => {
|
|
123
124
|
if (display_1.stringEmpty(shop) || (shop !== instance.config.shop)) {
|
|
124
|
-
console.error('FirebaseSessionHandler.
|
|
125
|
+
console.error('FirebaseSessionHandler.findSessionIdsByShop warn', shop);
|
|
125
126
|
return [];
|
|
126
127
|
}
|
|
127
128
|
try {
|
|
@@ -130,16 +131,16 @@ const findSessionsByShop = async (instance, shop) => {
|
|
|
130
131
|
.doc(shop)
|
|
131
132
|
.collection(instance.config.configurationId)
|
|
132
133
|
.get();
|
|
133
|
-
const
|
|
134
|
+
const sessionIds = [];
|
|
134
135
|
collection.forEach((_doc) => {
|
|
135
|
-
|
|
136
|
+
sessionIds.push(_doc.id);
|
|
136
137
|
});
|
|
137
|
-
return
|
|
138
|
+
return sessionIds;
|
|
138
139
|
}
|
|
139
140
|
catch (error) {
|
|
140
|
-
console.error('FirebaseSessionHandler.
|
|
141
|
+
console.error('FirebaseSessionHandler.findSessionIdsByShop error', error);
|
|
141
142
|
throw error;
|
|
142
143
|
}
|
|
143
144
|
};
|
|
144
|
-
exports.
|
|
145
|
+
exports.findSessionIdsByShop = findSessionIdsByShop;
|
|
145
146
|
//# sourceMappingURL=firebase.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firebase.js","sourceRoot":"","sources":["../../src/utils/firebase.js"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"firebase.js","sourceRoot":"","sources":["../../src/utils/firebase.js"],"names":[],"mappings":"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"}
|
package/dist/utils/session.d.ts
CHANGED
|
@@ -3,10 +3,13 @@ export function getShopifyHelpers(serverRuntimeConfig: any, { shop, ...overrides
|
|
|
3
3
|
shop: any;
|
|
4
4
|
}): Promise<{
|
|
5
5
|
shopify: any;
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
loadSession: ({ req, res }: {
|
|
7
|
+
req: any;
|
|
8
|
+
res: any;
|
|
9
|
+
}) => Promise<any>;
|
|
10
|
+
storeSession: (_session: any) => Promise<boolean>;
|
|
8
11
|
deleteSessions: (sessionIds: any) => Promise<any[]>;
|
|
9
|
-
|
|
12
|
+
findSessionIds: (_shop: any) => Promise<any[]>;
|
|
10
13
|
}>;
|
|
11
14
|
export function getVerifiedClients(serverRuntimeConfig: any, { req, res, shop, apiVersion }: {
|
|
12
15
|
req: any;
|
package/dist/utils/session.js
CHANGED
|
@@ -20,24 +20,30 @@ const shopify_1 = require("./shopify");
|
|
|
20
20
|
const firebase_1 = require("./firebase");
|
|
21
21
|
const errors_1 = require("./errors");
|
|
22
22
|
const constants_1 = require("./constants");
|
|
23
|
+
const crypto_1 = require("./crypto");
|
|
24
|
+
const crypto_2 = require("./crypto");
|
|
23
25
|
const getShopifyHelpers = async (serverRuntimeConfig, _a) => {
|
|
24
26
|
var { shop } = _a, overrides = __rest(_a, ["shop"]);
|
|
25
27
|
const shopify = await shopify_1.getInitializedShopify(serverRuntimeConfig, overrides);
|
|
26
|
-
const { FB_CONFIG, FB_ROOT_COLLECTION, APP_ID } = serverRuntimeConfig;
|
|
28
|
+
const { FB_CONFIG, FB_ROOT_COLLECTION, SESSION_CONFIG, APP_ID } = serverRuntimeConfig;
|
|
27
29
|
const sessionHandler = firebase_1.FirebaseSessionHandler.getInstance(FB_CONFIG, {
|
|
28
30
|
collection: FB_ROOT_COLLECTION,
|
|
29
31
|
config: { configurationId: APP_ID, shop: shopify.utils.sanitizeShop(shop) },
|
|
30
32
|
});
|
|
31
|
-
|
|
33
|
+
// #region CRYPTO
|
|
34
|
+
const { initialVector: hiddenPublicIv, encrypted: recryptedPublicKey, } = crypto_1.getRecrypted(SESSION_CONFIG.encryptedPublicKey);
|
|
35
|
+
const publicKey = crypto_1.wrapKeyData(crypto_1.decryptAES(recryptedPublicKey, SESSION_CONFIG.sharedSecret, hiddenPublicIv), 'RSA PUBLIC');
|
|
36
|
+
const { initialVector: hiddenPrivateIv, encrypted: recryptedPrivateKey, } = crypto_1.getRecrypted(SESSION_CONFIG.encryptedPrivateKey);
|
|
37
|
+
const privateKey = crypto_1.wrapKeyData(crypto_1.decryptAES(recryptedPrivateKey, SESSION_CONFIG.sharedSecret, hiddenPrivateIv));
|
|
38
|
+
// #endregion CRYPTO
|
|
39
|
+
const decryptVerifySession = async ({ req, res }) => {
|
|
32
40
|
var _a;
|
|
33
41
|
const sessionId = await shopify.session.getCurrentId({
|
|
34
42
|
isOnline: true,
|
|
35
43
|
rawRequest: req,
|
|
36
44
|
rawResponse: res,
|
|
37
45
|
});
|
|
38
|
-
|
|
39
|
-
const session = await firebase_1.loadCallback(sessionHandler, sessionId);
|
|
40
|
-
console.log(`>>> ~ session`, session);
|
|
46
|
+
const _b = await firebase_1.loadCallback(sessionHandler, sessionId), { accessToken: encryptedAccessToken } = _b, session = __rest(_b, ["accessToken"]);
|
|
41
47
|
// TODO clear sessions if undefined???
|
|
42
48
|
if (shop && (session === null || session === void 0 ? void 0 : session.shop) !== shop) {
|
|
43
49
|
throw new errors_1.ShopifyAuthenticationError('Invalid shop');
|
|
@@ -48,22 +54,27 @@ const getShopifyHelpers = async (serverRuntimeConfig, _a) => {
|
|
|
48
54
|
if (!sessionActive) {
|
|
49
55
|
throw new errors_1.ShopifyAuthenticationError('Inactive session');
|
|
50
56
|
}
|
|
51
|
-
return session;
|
|
57
|
+
return Object.assign(Object.assign({}, session), { accessToken: JSON.parse(crypto_2.decryptRSAPublic(encryptedAccessToken, publicKey)) });
|
|
58
|
+
};
|
|
59
|
+
const encryptStoreSession = async (_session) => {
|
|
60
|
+
const { accessToken } = _session, session = __rest(_session, ["accessToken"]);
|
|
61
|
+
const encryptedAccessToken = crypto_1.encryptRSAPrivate(accessToken, privateKey);
|
|
62
|
+
return firebase_1.storeCallback(sessionHandler, Object.assign(Object.assign({}, session), { accessToken: encryptedAccessToken }));
|
|
52
63
|
};
|
|
53
64
|
return {
|
|
54
65
|
shopify,
|
|
55
|
-
|
|
56
|
-
storeSession:
|
|
66
|
+
loadSession: decryptVerifySession,
|
|
67
|
+
storeSession: encryptStoreSession,
|
|
57
68
|
deleteSessions: async (sessionIds) => firebase_1.deleteSessionsCallback(sessionHandler, sessionIds),
|
|
58
|
-
|
|
69
|
+
findSessionIds: async (_shop) => firebase_1.findSessionIdsByShop(sessionHandler, shopify.utils.sanitizeShop(_shop)),
|
|
59
70
|
};
|
|
60
71
|
};
|
|
61
72
|
exports.getShopifyHelpers = getShopifyHelpers;
|
|
62
73
|
const getVerifiedClients = async (serverRuntimeConfig, { req, res, shop, apiVersion }) => {
|
|
63
74
|
try {
|
|
64
75
|
const { PAYMENT_CONFIG } = serverRuntimeConfig !== null && serverRuntimeConfig !== void 0 ? serverRuntimeConfig : {};
|
|
65
|
-
const { shopify,
|
|
66
|
-
const session = await
|
|
76
|
+
const { shopify, loadSession } = await exports.getShopifyHelpers(serverRuntimeConfig, { shop });
|
|
77
|
+
const session = await loadSession({ req, res });
|
|
67
78
|
const Graphql = new shopify.clients.Graphql(Object.assign({ session }, apiVersion && { apiVersion }));
|
|
68
79
|
if (PAYMENT_CONFIG === null || PAYMENT_CONFIG === void 0 ? void 0 : PAYMENT_CONFIG.required) {
|
|
69
80
|
const confirmationUrl = await billing_1.ensureBilling({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/utils/session.js"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,sDAAwD;AACxD,iCAAgC;AAEhC,uCAAyC;AACzC,uCAAoE;AACpE,uCAAiD;AACjD,yCAMmB;AACnB,qCAAqD;AACrD,2CAAwC;
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/utils/session.js"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,sDAAwD;AACxD,iCAAgC;AAEhC,uCAAyC;AACzC,uCAAoE;AACpE,uCAAiD;AACjD,yCAMmB;AACnB,qCAAqD;AACrD,2CAAwC;AACxC,qCAAmF;AACnF,qCAA2C;AAEpC,MAAM,iBAAiB,GAAG,KAAK,EAAE,mBAAmB,EAAE,EAAsB,EAAE,EAAE;QAA1B,EAAE,IAAI,OAAgB,EAAX,SAAS,cAApB,QAAsB,CAAF;IAC/E,MAAM,OAAO,GAAG,MAAM,+BAAqB,CAAC,mBAAmB,EAAE,SAAS,CAAC,CAAA;IAC3E,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAAA;IAErF,MAAM,cAAc,GAAG,iCAAsB,CAAC,WAAW,CACvD,SAAS,EACT;QACE,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;KAC5E,CACF,CAAA;IAED,iBAAiB;IACjB,MAAM,EACJ,aAAa,EAAE,cAAc,EAC7B,SAAS,EAAE,kBAAkB,GAC9B,GAAG,qBAAY,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAA;IACnD,MAAM,SAAS,GAAG,oBAAW,CAAC,mBAAU,CACtC,kBAAkB,EAClB,cAAc,CAAC,YAAY,EAC3B,cAAc,CACf,EAAE,YAAY,CAAC,CAAA;IAEhB,MAAM,EACJ,aAAa,EAAE,eAAe,EAC9B,SAAS,EAAE,mBAAmB,GAC/B,GAAG,qBAAY,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAA;IACpD,MAAM,UAAU,GAAG,oBAAW,CAAC,mBAAU,CACvC,mBAAmB,EACnB,cAAc,CAAC,YAAY,EAC3B,eAAe,CAChB,CAAC,CAAA;IACF,oBAAoB;IAEpB,MAAM,oBAAoB,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE;;QAClD,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC;YACnD,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,GAAG;YACf,WAAW,EAAE,GAAG;SACjB,CAAC,CAAA;QAEF,MAAM,KAAoD,MAAM,uBAAY,CAAC,cAAc,EAAE,SAAS,CAAC,EAAjG,EAAE,WAAW,EAAE,oBAAoB,OAA8D,EAAzD,OAAO,cAA/C,eAAiD,CAAgD,CAAA;QAEvG,sCAAsC;QACtC,IAAI,IAAI,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,MAAK,IAAI,EAAE;YAClC,MAAM,IAAI,mCAA0B,CAAC,cAAc,CAAC,CAAA;SACrD;QAED,MAAM,eAAe,GAAG,qBAAW,CACjC,qBAAW,CAAC,MAAA,OAAO,CAAC,MAAM,0CAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,EAC9C,qBAAW,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,CAAC,CAC5B,CAAA;QACD,MAAM,cAAc,GAAG,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAA,IAAI,CAAC,gBAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,gBAAQ,CAAC,GAAG,EAAE,CAAC,CAAA;QAChG,MAAM,aAAa,GAAG,CAAC,eAAe,IAAI,CAAC,cAAc,CAAC,CAAA;QAE1D,IAAG,CAAC,aAAa,EAAE;YACjB,MAAM,IAAI,mCAA0B,CAAC,kBAAkB,CAAC,CAAA;SACzD;QAGD,uCACK,OAAO,KACV,WAAW,EAAE,IAAI,CAAC,KAAK,CACrB,yBAAgB,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAClD,IACF;IACH,CAAC,CAAA;IAED,MAAM,mBAAmB,GAAG,KAAK,EAAE,QAAQ,EAAE,EAAE;QAC7C,MAAM,EAAE,WAAW,KAAiB,QAAQ,EAApB,OAAO,UAAK,QAAQ,EAAtC,eAA2B,CAAW,CAAA;QAC5C,MAAM,oBAAoB,GAAG,0BAAiB,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;QAEvE,OAAO,wBAAa,CAAC,cAAc,kCAC9B,OAAO,KACV,WAAW,EAAE,oBAAoB,IACjC,CAAA;IACJ,CAAC,CAAA;IAED,OAAO;QACL,OAAO;QACP,WAAW,EAAE,oBAAoB;QACjC,YAAY,EAAE,mBAAmB;QACjC,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,iCAAsB,CAAC,cAAc,EAAE,UAAU,CAAC;QACxF,cAAc,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,+BAAoB,CAAC,cAAc,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;KACzG,CAAA;AACH,CAAC,CAAA;AArFY,QAAA,iBAAiB,qBAqF7B;AAEM,MAAM,kBAAkB,GAAG,KAAK,EAAE,mBAAmB,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE;IAC9F,IAAI;QACF,MAAM,EAAE,cAAc,EAAE,GAAG,mBAAmB,aAAnB,mBAAmB,cAAnB,mBAAmB,GAAI,EAAE,CAAA;QAEpD,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,yBAAiB,CAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;QACvF,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;QAE/C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,iBAAG,OAAO,IAAK,UAAU,IAAI,EAAE,UAAU,EAAE,EAAG,CAAA;QAEzF,IAAI,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,QAAQ,EAAE;YAC5B,MAAM,eAAe,GAAG,MAAM,uBAAa,CAAC;gBAC1C,OAAO;gBACP,OAAO;gBACP,aAAa,EAAE,cAAc;aAC9B,CAAC,CAAA;YAEF,IAAI,wBAAc,CAAC,eAAe,CAAC,EAAE;gBACnC,6CAA6C;gBAC7C,oDAAoD;gBACpD,MAAM,IAAI,mCAA0B,CAClC,wBAAwB,EACxB,EAAE,WAAW,EAAE,eAAe,EAAE,CACjC,CAAA;aACF;SACF;aAAM;YACL,kEAAkE;YAClE,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,sBAAU,EAAE,CAAC,CAAA;SAC1C;QAED,OAAO;YACL,OAAO;YACP,IAAI,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,iBAAG,OAAO,IAAK,UAAU,IAAI,EAAE,UAAU,EAAE,EAAG;YAC5E,mEAAmE;YACnE,+EAA+E;SAChF,CAAA;KACF;IAAC,OAAO,KAAK,EAAE;QACd,IACE,KAAK,YAAY,+BAAiB;YAClC,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,EAC3B;YACA,MAAM,IAAI,mCAA0B,CAAC,mBAAmB,CAAC,CAAA;SAC1D;QAED,MAAM,KAAK,CAAA;KACZ;AACH,CAAC,CAAA;AA7CY,QAAA,kBAAkB,sBA6C9B"}
|
package/dist/withShopify.js
CHANGED
|
@@ -24,7 +24,7 @@ const withShopify = async (nextPhase, _a) => {
|
|
|
24
24
|
defaultConfig } = _e, // NOTE: This is here in case we need anything from it
|
|
25
25
|
pluginConfig = __rest(_e, ["defaultConfig"]);
|
|
26
26
|
const basePath = utils_1.ensureString(_basePath);
|
|
27
|
-
const { data, interactive, paymentConfig, firebaseConfig, appWebhooks, apiRoutes: { [utils_1.API_ROUTE_NAMES.AUTH]: _apiRouteAuth = '/api/auth', [utils_1.API_ROUTE_NAMES.AUTH_CALLBACK]: _apiRouteAuthCallback = '/api/auth/callback', [utils_1.API_ROUTE_NAMES.APP_UNINSTALLED]: _apiRouteAppUninstalled = '/api/webhooks/app/uninstalled', } = {}, pageRoutes: { [utils_1.PAGE_ROUTE_NAMES.EXIT]: _pageRouteExit = '/exit', [utils_1.PAGE_ROUTE_NAMES.ERROR]: _pageRouteError = '/error', } = {}, params: { APP_ID: _appId, URL: netlifyUrl, HOST: shopifyCLIUrl, NEXT_PUBLIC_APP_BASE_URL, NEXT_PUBLIC_SHOPIFY_API_ID, NEXT_PUBLIC_SHOPIFY_API_KEY, NEXT_PUBLIC_APP_ROUTE_PAGE_EXIT: _pageRouteParamExit, NEXT_PUBLIC_APP_ROUTE_PAGE_ERROR: _pageRouteParamError, NEXT_PUBLIC_APP_ROUTE_API_AUTH: _apiRouteParamAuth, NEXT_PUBLIC_APP_ROUTE_API_AUTH_CALLBACK: _apiRouteParamAuthCallback, NEXT_PUBLIC_APP_ROUTE_API_UNINSTALLED: _apiRouteParamAppUninstalled, NEXT_PUBLIC_FB_ROOT_COLLECTION: FB_ROOT_COLLECTION, SHOPIFY_API_PUBLIC_KEY: _shopifyPublicAPIKey, SHOPIFY_API_VERSION = shopify_api_1.LATEST_API_VERSION, SHOPIFY_API_SCOPES, SHOPIFY_API_KEY, SHOPIFY_RUN_MODE, SETTING_REPLACEMENTS, } = {}, } = pluginConfig !== null && pluginConfig !== void 0 ? pluginConfig : {};
|
|
27
|
+
const { data, interactive, paymentConfig, firebaseConfig, appWebhooks, apiRoutes: { [utils_1.API_ROUTE_NAMES.AUTH]: _apiRouteAuth = '/api/auth', [utils_1.API_ROUTE_NAMES.AUTH_CALLBACK]: _apiRouteAuthCallback = '/api/auth/callback', [utils_1.API_ROUTE_NAMES.APP_UNINSTALLED]: _apiRouteAppUninstalled = '/api/webhooks/app/uninstalled', } = {}, pageRoutes: { [utils_1.PAGE_ROUTE_NAMES.EXIT]: _pageRouteExit = '/exit', [utils_1.PAGE_ROUTE_NAMES.ERROR]: _pageRouteError = '/error', } = {}, params: { APP_ID: _appId, URL: netlifyUrl, HOST: shopifyCLIUrl, FIREBASE_SESSION_SK, FIREBASE_SESSION_PK, NEXT_PUBLIC_APP_BASE_URL, NEXT_PUBLIC_SHOPIFY_API_ID, NEXT_PUBLIC_SHOPIFY_API_KEY, NEXT_PUBLIC_APP_ROUTE_PAGE_EXIT: _pageRouteParamExit, NEXT_PUBLIC_APP_ROUTE_PAGE_ERROR: _pageRouteParamError, NEXT_PUBLIC_APP_ROUTE_API_AUTH: _apiRouteParamAuth, NEXT_PUBLIC_APP_ROUTE_API_AUTH_CALLBACK: _apiRouteParamAuthCallback, NEXT_PUBLIC_APP_ROUTE_API_UNINSTALLED: _apiRouteParamAppUninstalled, NEXT_PUBLIC_FB_ROOT_COLLECTION: FB_ROOT_COLLECTION, SHOPIFY_API_PUBLIC_KEY: _shopifyPublicAPIKey, SHOPIFY_API_VERSION = shopify_api_1.LATEST_API_VERSION, SHOPIFY_API_SCOPES, SHOPIFY_API_KEY, SHOPIFY_RUN_MODE, SETTING_REPLACEMENTS, CONFIG_DATA, } = {}, } = pluginConfig !== null && pluginConfig !== void 0 ? pluginConfig : {};
|
|
28
28
|
const SHOPIFY_API_PUBLIC_KEY = NEXT_PUBLIC_SHOPIFY_API_KEY || _shopifyPublicAPIKey;
|
|
29
29
|
// NOTE APP_ID in shopify cli defaults to client id/SHOPIFY_API_PUBLIC_KEY
|
|
30
30
|
const APP_ID = NEXT_PUBLIC_SHOPIFY_API_ID || _appId || SHOPIFY_API_PUBLIC_KEY;
|
|
@@ -88,6 +88,11 @@ const withShopify = async (nextPhase, _a) => {
|
|
|
88
88
|
const APP_WEBHOOKS = Object.assign({ [utils_1.API_WEBHOOK_TOPICS.APP_UNINSTALLED]: [{
|
|
89
89
|
url: API_URLS[utils_1.API_ROUTE_NAMES.APP_UNINSTALLED],
|
|
90
90
|
}] }, appWebhooks);
|
|
91
|
+
const SESSION_CONFIG = {
|
|
92
|
+
sharedSecret: FIREBASE_SESSION_SK,
|
|
93
|
+
encryptedPublicKey: FIREBASE_SESSION_PK,
|
|
94
|
+
encryptedPrivateKey: CONFIG_DATA.encryptedConfig.session_4096,
|
|
95
|
+
};
|
|
91
96
|
const publicRuntimeConfig = Object.assign(Object.assign({}, _publicRuntimeConfig), { SHOPIFY_API_PUBLIC_KEY,
|
|
92
97
|
SHOPIFY_RUN_MODE,
|
|
93
98
|
APP_BASE_URL,
|
|
@@ -99,6 +104,7 @@ const withShopify = async (nextPhase, _a) => {
|
|
|
99
104
|
SHOPIFY_API_PUBLIC_KEY,
|
|
100
105
|
SHOPIFY_RUN_MODE,
|
|
101
106
|
PAYMENT_CONFIG,
|
|
107
|
+
SESSION_CONFIG,
|
|
102
108
|
APP_CONFIG,
|
|
103
109
|
APP_WEBHOOKS,
|
|
104
110
|
PAGE_ROUTES,
|
package/dist/withShopify.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withShopify.js","sourceRoot":"","sources":["../src/withShopify.js"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,sDAAyD;AAEzD,0DAAoD;AAEpD,mCAWgB;AAET,MAAM,WAAW,GAAG,KAAK,EAAE,SAAS,EAAE,EAAyB,EAAE,EAAE;;QAA7B,EAAE,UAAU,OAAa,EAAR,MAAM,cAAvB,cAAyB,CAAF;IAClE,MAAM,KAKF,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,EAAE,EALd,EACJ,QAAQ,EAAE,SAAS,EACnB,mBAAmB,EAAE,oBAAoB,GAAG,EAAE,EAC9C,mBAAmB,EAAE,qBAAqB,GAAG,EAAE,OAE7B,EADf,WAAW,cAJV,0DAKL,CAAmB,CAAA;IAEpB,MAAM,KAIF,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,EAJV;IACJ,6DAA6D;IAC7D,aAAa,OAEC,EAFC,sDAAsD;IAClE,YAAY,cAHX,iBAIL,CAAe,CAAA;IAEhB,MAAM,QAAQ,GAAG,oBAAY,CAAC,SAAS,CAAC,CAAA;IAExC,MAAM,EACJ,IAAI,EACJ,WAAW,EACX,aAAa,EACb,cAAc,EACd,WAAW,EACX,SAAS,EAAE,EACT,CAAC,uBAAe,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,WAAW,EACnD,CAAC,uBAAe,CAAC,aAAa,CAAC,EAAE,qBAAqB,GAAG,oBAAoB,EAC7E,CAAC,uBAAe,CAAC,eAAe,CAAC,EAAE,uBAAuB,GAAG,+BAA+B,GAC7F,GAAG,EAAE,EACN,UAAU,EAAE,EACV,CAAC,wBAAgB,CAAC,IAAI,CAAC,EAAE,cAAc,GAAG,OAAO,EACjD,CAAC,wBAAgB,CAAC,KAAK,CAAC,EAAE,eAAe,GAAG,QAAQ,GACrD,GAAG,EAAE,EACN,MAAM,EAAE,EACN,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,UAAU,EACf,IAAI,EAAE,aAAa,EACnB,wBAAwB,EACxB,0BAA0B,EAC1B,2BAA2B,EAC3B,+BAA+B,EAAE,mBAAmB,EACpD,gCAAgC,EAAE,oBAAoB,EACtD,8BAA8B,EAAE,kBAAkB,EAClD,uCAAuC,EAAE,0BAA0B,EACnE,qCAAqC,EAAE,4BAA4B,EACnE,8BAA8B,EAAE,kBAAkB,EAClD,sBAAsB,EAAE,oBAAoB,EAC5C,mBAAmB,GAAG,gCAAkB,EACxC,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"withShopify.js","sourceRoot":"","sources":["../src/withShopify.js"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agnostack/next-shopify",
|
|
3
|
-
"version": "1.7.4
|
|
3
|
+
"version": "1.7.4",
|
|
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",
|