@shopify/shopify-api 7.5.0 → 7.5.2
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/lib/auth/get-embedded-app-url.js +1 -1
- package/lib/auth/get-embedded-app-url.js.map +1 -1
- package/lib/clients/graphql/storefront_client.d.ts.map +1 -1
- package/lib/clients/graphql/storefront_client.js +10 -9
- package/lib/clients/graphql/storefront_client.js.map +1 -1
- package/lib/session/decode-session-token.d.ts +4 -1
- package/lib/session/decode-session-token.d.ts.map +1 -1
- package/lib/session/decode-session-token.js +2 -2
- package/lib/session/decode-session-token.js.map +1 -1
- package/lib/session/index.d.ts +1 -1
- package/lib/types.d.ts +1 -0
- package/lib/types.d.ts.map +1 -1
- package/lib/types.js +1 -0
- package/lib/types.js.map +1 -1
- package/lib/utils/index.js +1 -1
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/shop-validator.d.ts +1 -1
- package/lib/utils/shop-validator.d.ts.map +1 -1
- package/lib/utils/shop-validator.js +10 -3
- package/lib/utils/shop-validator.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +1 -1
|
@@ -27,7 +27,7 @@ function getEmbeddedAppUrl(config) {
|
|
|
27
27
|
exports.getEmbeddedAppUrl = getEmbeddedAppUrl;
|
|
28
28
|
function buildEmbeddedAppUrl(config) {
|
|
29
29
|
return (host) => {
|
|
30
|
-
(0, shop_validator_1.sanitizeHost)(
|
|
30
|
+
(0, shop_validator_1.sanitizeHost)()(host, true);
|
|
31
31
|
const decodedHost = (0, decode_host_1.decodeHost)(host);
|
|
32
32
|
return `https://${decodedHost}/apps/${config.apiKey}`;
|
|
33
33
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-embedded-app-url.js","sourceRoot":"","sources":["get-embedded-app-url.ts"],"names":[],"mappings":";;;;AAAA,gEAA0C;AAE1C,6CAA0D;AAC1D,4DAAqD;AAErD,+CAAyC;AAGzC,SAAgB,iBAAiB,CAAC,MAAuB;IACvD,OAAO,CAAO,EAAyC,EAAmB,EAAE;YAA1D,WAAW,sBAAf,EAAgB,CAAD;QAC3B,MAAM,OAAO,GAAG,MAAM,IAAA,6BAAsB,EAAC,WAAW,CAAC,CAAC;QAE1D,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,aAAa,CAAC,uBAAuB,CAC7C,sDAAsD,CACvD,CAAC;SACH;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;YAChB,MAAM,IAAI,aAAa,CAAC,mBAAmB,CACzC,gCAAgC,CACjC,CAAC;SACH;QAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,WAAW,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACpE,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAE1C,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YAC5B,MAAM,IAAI,aAAa,CAAC,mBAAmB,CACzC,iDAAiD,CAClD,CAAC;SACH;QAED,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC,CAAA,CAAC;AACJ,CAAC;AA3BD,8CA2BC;AAED,SAAgB,mBAAmB,CAAC,MAAuB;IACzD,OAAO,CAAC,IAAY,EAAU,EAAE;QAC9B,IAAA,6BAAY,
|
|
1
|
+
{"version":3,"file":"get-embedded-app-url.js","sourceRoot":"","sources":["get-embedded-app-url.ts"],"names":[],"mappings":";;;;AAAA,gEAA0C;AAE1C,6CAA0D;AAC1D,4DAAqD;AAErD,+CAAyC;AAGzC,SAAgB,iBAAiB,CAAC,MAAuB;IACvD,OAAO,CAAO,EAAyC,EAAmB,EAAE;YAA1D,WAAW,sBAAf,EAAgB,CAAD;QAC3B,MAAM,OAAO,GAAG,MAAM,IAAA,6BAAsB,EAAC,WAAW,CAAC,CAAC;QAE1D,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,aAAa,CAAC,uBAAuB,CAC7C,sDAAsD,CACvD,CAAC;SACH;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;YAChB,MAAM,IAAI,aAAa,CAAC,mBAAmB,CACzC,gCAAgC,CACjC,CAAC;SACH;QAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,WAAW,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACpE,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAE1C,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YAC5B,MAAM,IAAI,aAAa,CAAC,mBAAmB,CACzC,iDAAiD,CAClD,CAAC;SACH;QAED,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC,CAAA,CAAC;AACJ,CAAC;AA3BD,8CA2BC;AAED,SAAgB,mBAAmB,CAAC,MAAuB;IACzD,OAAO,CAAC,IAAY,EAAU,EAAE;QAC9B,IAAA,6BAAY,GAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3B,MAAM,WAAW,GAAG,IAAA,wBAAU,EAAC,IAAI,CAAC,CAAC;QAErC,OAAO,WAAW,WAAW,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC;IACxD,CAAC,CAAC;AACJ,CAAC;AAPD,kDAOC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storefront_client.d.ts","sourceRoot":"","sources":["storefront_client.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAGlD,OAAO,EAAC,aAAa,EAAE,wBAAwB,EAAC,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAC,sBAAsB,EAAC,MAAM,SAAS,CAAC;AAE/C,qBAAa,gBAAiB,SAAQ,aAAa;IACjD,WAAW,SAAU;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;gBAE3B,MAAM,EAAE,sBAAsB;IA0B1C,SAAS,CAAC,aAAa,IAAI,YAAY;
|
|
1
|
+
{"version":3,"file":"storefront_client.d.ts","sourceRoot":"","sources":["storefront_client.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAGlD,OAAO,EAAC,aAAa,EAAE,wBAAwB,EAAC,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAC,sBAAsB,EAAC,MAAM,SAAS,CAAC;AAE/C,qBAAa,gBAAiB,SAAQ,aAAa;IACjD,WAAW,SAAU;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;gBAE3B,MAAM,EAAE,sBAAsB;IA0B1C,SAAS,CAAC,aAAa,IAAI,YAAY;IAyBvC,OAAO,CAAC,eAAe;CAGxB;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,wBAAwB,2BAgBrE"}
|
|
@@ -30,15 +30,16 @@ class StorefrontClient extends graphql_client_1.GraphqlClient {
|
|
|
30
30
|
}
|
|
31
31
|
getApiHeaders() {
|
|
32
32
|
const sdkVariant = types_1.LIBRARY_NAME.toLowerCase().split(' ').join('-');
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
33
|
+
const privateToken = this.storefrontClass().config.privateAppStorefrontAccessToken;
|
|
34
|
+
if (this.storefrontAccessToken && privateToken) {
|
|
35
|
+
(0, logger_1.logger)(this.storefrontClass().config).warning('You have both private and public storefront access tokens. The private token will be used.');
|
|
36
|
+
}
|
|
37
|
+
const tokenHeaderParam = privateToken === undefined
|
|
38
|
+
? { [types_1.ShopifyHeader.StorefrontAccessToken]: this.storefrontAccessToken }
|
|
39
|
+
: {
|
|
40
|
+
[types_1.ShopifyHeader.StorefrontPrivateToken]: privateToken,
|
|
41
|
+
};
|
|
42
|
+
return Object.assign(Object.assign({}, tokenHeaderParam), { [types_1.ShopifyHeader.StorefrontSDKVariant]: sdkVariant, [types_1.ShopifyHeader.StorefrontSDKVersion]: version_1.SHOPIFY_API_LIBRARY_VERSION });
|
|
42
43
|
}
|
|
43
44
|
storefrontClass() {
|
|
44
45
|
return this.constructor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storefront_client.js","sourceRoot":"","sources":["storefront_client.ts"],"names":[],"mappings":";;;AAAA,2CAA0D;AAC1D,uCAAwD;AACxD,4DAA2D;AAC3D,mDAA8C;AAE9C,yCAAoC;AAEpC,qDAAyE;AAGzE,MAAa,gBAAiB,SAAQ,8BAAa;IAKjD,YAAY,MAA8B;QACxC,MAAM,OAAO,GAAG,IAAI,iBAAO,CAAC;YAC1B,IAAI,EAAE,MAAM,CAAC,MAAM;YACnB,EAAE,EAAE,EAAE;YACN,KAAK,EAAE,EAAE;YACT,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,MAAM,CAAC,qBAAqB;SAC1C,CAAC,CAAC;QAEH,KAAK,CAAC,EAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAC,CAAC,CAAC;QAblD,gBAAW,GAAG,MAAM,CAAC;QAenB,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC;QAE7C,IAAI,MAAM,CAAC,UAAU,EAAE;YACrB,MAAM,OAAO,GACX,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,UAAU;gBACrC,CAAC,CAAC,yEAAyE,MAAM,CAAC,UAAU,EAAE;gBAC9F,CAAC,CAAC,oDAAoD,MAAM,CAAC,UAAU,SAAS,MAAM,CAAC,UAAU,EAAE,CAAC;YAExG,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;SAC/B;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAC;IAC5D,CAAC;IAES,aAAa;QACrB,MAAM,UAAU,GAAG,oBAAY,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"storefront_client.js","sourceRoot":"","sources":["storefront_client.ts"],"names":[],"mappings":";;;AAAA,2CAA0D;AAC1D,uCAAwD;AACxD,4DAA2D;AAC3D,mDAA8C;AAE9C,yCAAoC;AAEpC,qDAAyE;AAGzE,MAAa,gBAAiB,SAAQ,8BAAa;IAKjD,YAAY,MAA8B;QACxC,MAAM,OAAO,GAAG,IAAI,iBAAO,CAAC;YAC1B,IAAI,EAAE,MAAM,CAAC,MAAM;YACnB,EAAE,EAAE,EAAE;YACN,KAAK,EAAE,EAAE;YACT,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,MAAM,CAAC,qBAAqB;SAC1C,CAAC,CAAC;QAEH,KAAK,CAAC,EAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAC,CAAC,CAAC;QAblD,gBAAW,GAAG,MAAM,CAAC;QAenB,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC;QAE7C,IAAI,MAAM,CAAC,UAAU,EAAE;YACrB,MAAM,OAAO,GACX,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,UAAU;gBACrC,CAAC,CAAC,yEAAyE,MAAM,CAAC,UAAU,EAAE;gBAC9F,CAAC,CAAC,oDAAoD,MAAM,CAAC,UAAU,SAAS,MAAM,CAAC,UAAU,EAAE,CAAC;YAExG,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;SAC/B;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAC;IAC5D,CAAC;IAES,aAAa;QACrB,MAAM,UAAU,GAAG,oBAAY,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACnE,MAAM,YAAY,GAChB,IAAI,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,+BAA+B,CAAC;QAEhE,IAAI,IAAI,CAAC,qBAAqB,IAAI,YAAY,EAAE;YAC9C,IAAA,eAAM,EAAC,IAAI,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,CAAC,OAAO,CAC3C,4FAA4F,CAC7F,CAAC;SACH;QAED,MAAM,gBAAgB,GACpB,YAAY,KAAK,SAAS;YACxB,CAAC,CAAC,EAAC,CAAC,qBAAa,CAAC,qBAAqB,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAC;YACrE,CAAC,CAAE;gBACC,CAAC,qBAAa,CAAC,sBAAsB,CAAC,EAAE,YAAY;aACpC,CAAC;QAEzB,uCACK,gBAAgB,KACnB,CAAC,qBAAa,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAChD,CAAC,qBAAa,CAAC,oBAAoB,CAAC,EAAE,qCAA2B,IACjE;IACJ,CAAC;IAEO,eAAe;QACrB,OAAO,IAAI,CAAC,WAAsC,CAAC;IACrD,CAAC;CACF;AA3DD,4CA2DC;AAED,SAAgB,qBAAqB,CAAC,MAAgC;IACpE,MAAM,EAAC,MAAM,EAAC,GAAG,MAAM,CAAC;IACxB,IAAI,EAAC,UAAU,EAAC,GAAG,MAAM,CAAC;IAC1B,IAAI,CAAC,UAAU,EAAE;QACf,UAAU,GAAG,IAAA,6BAAe,EAAC,MAAM,CAAC,CAAC;KACtC;IACD,MAAM,mBAAoB,SAAQ,gBAAgB;;IAClC,0BAAM,GAAG,MAAM,CAAC;IAChB,8BAAU,GAAG,UAAW,CAAC;IAGzC,OAAO,CAAC,cAAc,CAAC,mBAAmB,EAAE,MAAM,EAAE;QAClD,KAAK,EAAE,kBAAkB;KAC1B,CAAC,CAAC;IAEH,OAAO,mBAA8C,CAAC;AACxD,CAAC;AAhBD,sDAgBC"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { ConfigInterface } from '../base-types';
|
|
2
2
|
import { JwtPayload } from './types';
|
|
3
|
-
export
|
|
3
|
+
export interface DecodeSessionTokenOptions {
|
|
4
|
+
checkAudience?: boolean;
|
|
5
|
+
}
|
|
6
|
+
export declare function decodeSessionToken(config: ConfigInterface): (token: string, { checkAudience }?: DecodeSessionTokenOptions) => Promise<JwtPayload>;
|
|
4
7
|
//# sourceMappingURL=decode-session-token.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decode-session-token.d.ts","sourceRoot":"","sources":["decode-session-token.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAI9C,OAAO,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;AAInC,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"decode-session-token.d.ts","sourceRoot":"","sources":["decode-session-token.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAI9C,OAAO,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;AAInC,MAAM,WAAW,yBAAyB;IACxC,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,eAAe,WAE/C,MAAM,sBACW,yBAAyB,KAChD,QAAQ,UAAU,CAAC,CAyBvB"}
|
|
@@ -7,7 +7,7 @@ const ShopifyErrors = tslib_1.__importStar(require("../error"));
|
|
|
7
7
|
const get_hmac_key_1 = require("../utils/get-hmac-key");
|
|
8
8
|
const JWT_PERMITTED_CLOCK_TOLERANCE = 10;
|
|
9
9
|
function decodeSessionToken(config) {
|
|
10
|
-
return (token) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
10
|
+
return (token, { checkAudience = true } = {}) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
11
11
|
let payload;
|
|
12
12
|
try {
|
|
13
13
|
payload = (yield jose.jwtVerify(token, (0, get_hmac_key_1.getHMACKey)(config.apiSecretKey), {
|
|
@@ -19,7 +19,7 @@ function decodeSessionToken(config) {
|
|
|
19
19
|
throw new ShopifyErrors.InvalidJwtError(`Failed to parse session token '${token}': ${error.message}`);
|
|
20
20
|
}
|
|
21
21
|
// The exp and nbf fields are validated by the JWT library
|
|
22
|
-
if (payload.aud !== config.apiKey) {
|
|
22
|
+
if (checkAudience && payload.aud !== config.apiKey) {
|
|
23
23
|
throw new ShopifyErrors.InvalidJwtError('Session token had invalid API key');
|
|
24
24
|
}
|
|
25
25
|
return payload;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decode-session-token.js","sourceRoot":"","sources":["decode-session-token.ts"],"names":[],"mappings":";;;;AAAA,mDAA6B;AAG7B,gEAA0C;AAC1C,wDAAiD;AAIjD,MAAM,6BAA6B,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"decode-session-token.js","sourceRoot":"","sources":["decode-session-token.ts"],"names":[],"mappings":";;;;AAAA,mDAA6B;AAG7B,gEAA0C;AAC1C,wDAAiD;AAIjD,MAAM,6BAA6B,GAAG,EAAE,CAAC;AAMzC,SAAgB,kBAAkB,CAAC,MAAuB;IACxD,OAAO,CACL,KAAa,EACb,EAAC,aAAa,GAAG,IAAI,KAA+B,EAAE,EACjC,EAAE;QACvB,IAAI,OAAmB,CAAC;QACxB,IAAI;YACF,OAAO,GAAG,CACR,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAA,yBAAU,EAAC,MAAM,CAAC,YAAY,CAAC,EAAE;gBAC3D,UAAU,EAAE,CAAC,OAAO,CAAC;gBACrB,cAAc,EAAE,6BAA6B;aAC9C,CAAC,CACH,CAAC,OAAgC,CAAC;SACpC;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,aAAa,CAAC,eAAe,CACrC,kCAAkC,KAAK,MAAM,KAAK,CAAC,OAAO,EAAE,CAC7D,CAAC;SACH;QAED,0DAA0D;QAE1D,IAAI,aAAa,IAAI,OAAO,CAAC,GAAG,KAAK,MAAM,CAAC,MAAM,EAAE;YAClD,MAAM,IAAI,aAAa,CAAC,eAAe,CACrC,mCAAmC,CACpC,CAAC;SACH;QAED,OAAO,OAAO,CAAC;IACjB,CAAC,CAAA,CAAC;AACJ,CAAC;AA7BD,gDA6BC"}
|
package/lib/session/index.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ export declare function shopifySession(config: ConfigInterface): {
|
|
|
4
4
|
getCurrentId: ({ isOnline, ...adapterArgs }: import("./types").GetCurrentSessionIdParams) => Promise<string | undefined>;
|
|
5
5
|
getOfflineId: (shop: string) => string;
|
|
6
6
|
getJwtSessionId: (shop: string, userId: string) => string;
|
|
7
|
-
decodeSessionToken: (token: string) => Promise<import("./types").JwtPayload>;
|
|
7
|
+
decodeSessionToken: (token: string, { checkAudience }?: import("./decode-session-token").DecodeSessionTokenOptions) => Promise<import("./types").JwtPayload>;
|
|
8
8
|
};
|
|
9
9
|
export declare type ShopifySession = ReturnType<typeof shopifySession>;
|
|
10
10
|
//# sourceMappingURL=index.d.ts.map
|
package/lib/types.d.ts
CHANGED
|
@@ -23,6 +23,7 @@ export declare enum ShopifyHeader {
|
|
|
23
23
|
Topic = "X-Shopify-Topic",
|
|
24
24
|
WebhookId = "X-Shopify-Webhook-Id",
|
|
25
25
|
StorefrontAccessToken = "X-Shopify-Storefront-Access-Token",
|
|
26
|
+
StorefrontPrivateToken = "Shopify-Storefront-Private-Token",
|
|
26
27
|
StorefrontSDKVariant = "X-SDK-Variant",
|
|
27
28
|
StorefrontSDKVersion = "X-SDK-Version"
|
|
28
29
|
}
|
package/lib/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW;IACrB,KAAK,IAAA;IACL,OAAO,IAAA;IACP,IAAI,IAAA;IACJ,KAAK,IAAA;CACN;AAED,oBAAY,UAAU;IACpB,OAAO,YAAY;IACnB,MAAM,YAAY;IAClB,SAAS,YAAY;IACrB,SAAS,YAAY;IACrB,OAAO,YAAY;IACnB,MAAM,YAAY;IAClB,QAAQ,aAAa;CACtB;AAED,eAAO,MAAM,YAAY,wBAAwB,CAAC;AAClD,eAAO,MAAM,kBAAkB,oBAAoB,CAAC;AAGpD,oBAAY,aAAa;IACvB,WAAW,2BAA2B;IACtC,UAAU,0BAA0B;IACpC,MAAM,0BAA0B;IAChC,IAAI,0BAA0B;IAC9B,KAAK,oBAAoB;IACzB,SAAS,yBAAyB;IAClC,qBAAqB,sCAAsC;IAC3D,oBAAoB,kBAAkB;IACtC,oBAAoB,kBAAkB;CACvC;AAGD,oBAAY,UAAU;IACpB,IAAI,SAAS;IACb,OAAO,YAAY;CACpB;AAED,eAAO,MAAM,UAAU,EAAE,MAAM,EAI9B,CAAC;AAEF,oBAAY,eAAe;IACzB,OAAO,aAAa;IACpB,WAAW,kBAAkB;IAC7B,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB;AAED,oBAAY,yBAAyB,GAAG,OAAO,CAC7C,eAAe,EACf,eAAe,CAAC,OAAO,CACxB,CAAC;AAEF,oBAAY,0BAA0B;IACpC,gBAAgB,sBAAsB;IACtC,uBAAuB,gCAAgC;IACvD,QAAQ,aAAa;CACtB"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW;IACrB,KAAK,IAAA;IACL,OAAO,IAAA;IACP,IAAI,IAAA;IACJ,KAAK,IAAA;CACN;AAED,oBAAY,UAAU;IACpB,OAAO,YAAY;IACnB,MAAM,YAAY;IAClB,SAAS,YAAY;IACrB,SAAS,YAAY;IACrB,OAAO,YAAY;IACnB,MAAM,YAAY;IAClB,QAAQ,aAAa;CACtB;AAED,eAAO,MAAM,YAAY,wBAAwB,CAAC;AAClD,eAAO,MAAM,kBAAkB,oBAAoB,CAAC;AAGpD,oBAAY,aAAa;IACvB,WAAW,2BAA2B;IACtC,UAAU,0BAA0B;IACpC,MAAM,0BAA0B;IAChC,IAAI,0BAA0B;IAC9B,KAAK,oBAAoB;IACzB,SAAS,yBAAyB;IAClC,qBAAqB,sCAAsC;IAC3D,sBAAsB,qCAAqC;IAC3D,oBAAoB,kBAAkB;IACtC,oBAAoB,kBAAkB;CACvC;AAGD,oBAAY,UAAU;IACpB,IAAI,SAAS;IACb,OAAO,YAAY;CACpB;AAED,eAAO,MAAM,UAAU,EAAE,MAAM,EAI9B,CAAC;AAEF,oBAAY,eAAe;IACzB,OAAO,aAAa;IACpB,WAAW,kBAAkB;IAC7B,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB;AAED,oBAAY,yBAAyB,GAAG,OAAO,CAC7C,eAAe,EACf,eAAe,CAAC,OAAO,CACxB,CAAC;AAEF,oBAAY,0BAA0B;IACpC,gBAAgB,sBAAsB;IACtC,uBAAuB,gCAAgC;IACvD,QAAQ,aAAa;CACtB"}
|
package/lib/types.js
CHANGED
|
@@ -30,6 +30,7 @@ var ShopifyHeader;
|
|
|
30
30
|
ShopifyHeader["Topic"] = "X-Shopify-Topic";
|
|
31
31
|
ShopifyHeader["WebhookId"] = "X-Shopify-Webhook-Id";
|
|
32
32
|
ShopifyHeader["StorefrontAccessToken"] = "X-Shopify-Storefront-Access-Token";
|
|
33
|
+
ShopifyHeader["StorefrontPrivateToken"] = "Shopify-Storefront-Private-Token";
|
|
33
34
|
ShopifyHeader["StorefrontSDKVariant"] = "X-SDK-Variant";
|
|
34
35
|
ShopifyHeader["StorefrontSDKVersion"] = "X-SDK-Version";
|
|
35
36
|
})(ShopifyHeader = exports.ShopifyHeader || (exports.ShopifyHeader = {}));
|
package/lib/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":";;;AAAA,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,+CAAK,CAAA;IACL,mDAAO,CAAA;IACP,6CAAI,CAAA;IACJ,+CAAK,CAAA;AACP,CAAC,EALW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAKtB;AAED,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,iCAAmB,CAAA;IACnB,gCAAkB,CAAA;IAClB,mCAAqB,CAAA;IACrB,mCAAqB,CAAA;IACrB,iCAAmB,CAAA;IACnB,gCAAkB,CAAA;IAClB,mCAAqB,CAAA;AACvB,CAAC,EARW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAQrB;AAEY,QAAA,YAAY,GAAG,qBAAqB,CAAC;AACrC,QAAA,kBAAkB,GAAG,UAAU,CAAC,MAAM,CAAC;AAEpD,iEAAiE;AACjE,IAAY,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":";;;AAAA,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,+CAAK,CAAA;IACL,mDAAO,CAAA;IACP,6CAAI,CAAA;IACJ,+CAAK,CAAA;AACP,CAAC,EALW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAKtB;AAED,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,iCAAmB,CAAA;IACnB,gCAAkB,CAAA;IAClB,mCAAqB,CAAA;IACrB,mCAAqB,CAAA;IACrB,iCAAmB,CAAA;IACnB,gCAAkB,CAAA;IAClB,mCAAqB,CAAA;AACvB,CAAC,EARW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAQrB;AAEY,QAAA,YAAY,GAAG,qBAAqB,CAAC;AACrC,QAAA,kBAAkB,GAAG,UAAU,CAAC,MAAM,CAAC;AAEpD,iEAAiE;AACjE,IAAY,aAWX;AAXD,WAAY,aAAa;IACvB,uDAAsC,CAAA;IACtC,qDAAoC,CAAA;IACpC,iDAAgC,CAAA;IAChC,+CAA8B,CAAA;IAC9B,0CAAyB,CAAA;IACzB,mDAAkC,CAAA;IAClC,4EAA2D,CAAA;IAC3D,4EAA2D,CAAA;IAC3D,uDAAsC,CAAA;IACtC,uDAAsC,CAAA;AACxC,CAAC,EAXW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAWxB;AACD,gEAAgE;AAEhE,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,iCAAmB,CAAA;AACrB,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB;AAEY,QAAA,UAAU,GAAa;IAClC,wBAAwB;IACxB,kBAAkB;IAClB,aAAa;CACd,CAAC;AAEF,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,uCAAoB,CAAA;IACpB,gDAA6B,CAAA;IAC7B,oCAAiB,CAAA;IACjB,kCAAe,CAAA;AACjB,CAAC,EALW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAK1B;AAOD,IAAY,0BAIX;AAJD,WAAY,0BAA0B;IACpC,oEAAsC,CAAA;IACtC,qFAAuD,CAAA;IACvD,mDAAqB,CAAA;AACvB,CAAC,EAJW,0BAA0B,GAA1B,kCAA0B,KAA1B,kCAA0B,QAIrC"}
|
package/lib/utils/index.js
CHANGED
|
@@ -7,7 +7,7 @@ const version_compatible_1 = require("./version-compatible");
|
|
|
7
7
|
function shopifyUtils(config) {
|
|
8
8
|
return {
|
|
9
9
|
sanitizeShop: (0, shop_validator_1.sanitizeShop)(config),
|
|
10
|
-
sanitizeHost: (0, shop_validator_1.sanitizeHost)(
|
|
10
|
+
sanitizeHost: (0, shop_validator_1.sanitizeHost)(),
|
|
11
11
|
validateHmac: (0, hmac_validator_1.validateHmac)(config),
|
|
12
12
|
versionCompatible: (0, version_compatible_1.versionCompatible)(config),
|
|
13
13
|
versionPriorTo: (0, version_compatible_1.versionPriorTo)(config),
|
package/lib/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAEA,qDAA4D;AAC5D,qDAA8C;AAC9C,6DAAuE;AAEvE,SAAgB,YAAY,CAAC,MAAuB;IAClD,OAAO;QACL,YAAY,EAAE,IAAA,6BAAY,EAAC,MAAM,CAAC;QAClC,YAAY,EAAE,IAAA,6BAAY,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAEA,qDAA4D;AAC5D,qDAA8C;AAC9C,6DAAuE;AAEvE,SAAgB,YAAY,CAAC,MAAuB;IAClD,OAAO;QACL,YAAY,EAAE,IAAA,6BAAY,EAAC,MAAM,CAAC;QAClC,YAAY,EAAE,IAAA,6BAAY,GAAE;QAC5B,YAAY,EAAE,IAAA,6BAAY,EAAC,MAAM,CAAC;QAClC,iBAAiB,EAAE,IAAA,sCAAiB,EAAC,MAAM,CAAC;QAC5C,cAAc,EAAE,IAAA,mCAAc,EAAC,MAAM,CAAC;KACvC,CAAC;AACJ,CAAC;AARD,oCAQC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { ConfigInterface } from '../base-types';
|
|
2
2
|
export declare function sanitizeShop(config: ConfigInterface): (shop: string, throwOnInvalid?: boolean) => string | null;
|
|
3
|
-
export declare function sanitizeHost(
|
|
3
|
+
export declare function sanitizeHost(): (host: string, throwOnInvalid?: boolean) => string | null;
|
|
4
4
|
//# sourceMappingURL=shop-validator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shop-validator.d.ts","sourceRoot":"","sources":["shop-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAI9C,wBAAgB,YAAY,CAAC,MAAM,EAAE,eAAe,UACpC,MAAM,+BAA2B,MAAM,GAAG,IAAI,CAqB7D;AAED,wBAAgB,YAAY,
|
|
1
|
+
{"version":3,"file":"shop-validator.d.ts","sourceRoot":"","sources":["shop-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAI9C,wBAAgB,YAAY,CAAC,MAAM,EAAE,eAAe,UACpC,MAAM,+BAA2B,MAAM,GAAG,IAAI,CAqB7D;AAED,wBAAgB,YAAY,WACZ,MAAM,+BAA2B,MAAM,GAAG,IAAI,CAyB7D"}
|
|
@@ -18,13 +18,20 @@ function sanitizeShop(config) {
|
|
|
18
18
|
};
|
|
19
19
|
}
|
|
20
20
|
exports.sanitizeShop = sanitizeShop;
|
|
21
|
-
function sanitizeHost(
|
|
21
|
+
function sanitizeHost() {
|
|
22
22
|
return (host, throwOnInvalid = false) => {
|
|
23
23
|
const base64regex = /^[0-9a-zA-Z+/]+={0,2}$/;
|
|
24
24
|
let sanitizedHost = base64regex.test(host) ? host : null;
|
|
25
25
|
if (sanitizedHost) {
|
|
26
|
-
const
|
|
27
|
-
|
|
26
|
+
const { hostname } = new URL(`https://${(0, decode_host_1.decodeHost)(sanitizedHost)}`);
|
|
27
|
+
const originsRegex = [
|
|
28
|
+
'myshopify\\.com',
|
|
29
|
+
'shopify\\.com',
|
|
30
|
+
'myshopify\\.io',
|
|
31
|
+
'spin\\.dev',
|
|
32
|
+
];
|
|
33
|
+
const hostRegex = new RegExp(`\\.(${originsRegex.join('|')})$`);
|
|
34
|
+
if (!hostRegex.test(hostname)) {
|
|
28
35
|
sanitizedHost = null;
|
|
29
36
|
}
|
|
30
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shop-validator.js","sourceRoot":"","sources":["shop-validator.ts"],"names":[],"mappings":";;;AACA,oCAA4D;AAC5D,qDAA+C;AAE/C,SAAgB,YAAY,CAAC,MAAuB;IAClD,OAAO,CAAC,IAAY,EAAE,cAAc,GAAG,KAAK,EAAiB,EAAE;QAC7D,MAAM,YAAY,GAAG,CAAC,iBAAiB,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC;QAC5E,IAAI,MAAM,CAAC,iBAAiB,EAAE;YAC5B,YAAY,CAAC,IAAI,CACf,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACxC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CACjD,CACF,CAAC;SACH;QAED,MAAM,YAAY,GAAG,IAAI,MAAM,CAC7B,iCAAiC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAChE,CAAC;QAEF,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5D,IAAI,CAAC,aAAa,IAAI,cAAc,EAAE;YACpC,MAAM,IAAI,wBAAgB,CAAC,gCAAgC,CAAC,CAAC;SAC9D;QAED,OAAO,aAAa,CAAC;IACvB,CAAC,CAAC;AACJ,CAAC;AAtBD,oCAsBC;AAED,SAAgB,YAAY
|
|
1
|
+
{"version":3,"file":"shop-validator.js","sourceRoot":"","sources":["shop-validator.ts"],"names":[],"mappings":";;;AACA,oCAA4D;AAC5D,qDAA+C;AAE/C,SAAgB,YAAY,CAAC,MAAuB;IAClD,OAAO,CAAC,IAAY,EAAE,cAAc,GAAG,KAAK,EAAiB,EAAE;QAC7D,MAAM,YAAY,GAAG,CAAC,iBAAiB,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC;QAC5E,IAAI,MAAM,CAAC,iBAAiB,EAAE;YAC5B,YAAY,CAAC,IAAI,CACf,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACxC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CACjD,CACF,CAAC;SACH;QAED,MAAM,YAAY,GAAG,IAAI,MAAM,CAC7B,iCAAiC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAChE,CAAC;QAEF,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5D,IAAI,CAAC,aAAa,IAAI,cAAc,EAAE;YACpC,MAAM,IAAI,wBAAgB,CAAC,gCAAgC,CAAC,CAAC;SAC9D;QAED,OAAO,aAAa,CAAC;IACvB,CAAC,CAAC;AACJ,CAAC;AAtBD,oCAsBC;AAED,SAAgB,YAAY;IAC1B,OAAO,CAAC,IAAY,EAAE,cAAc,GAAG,KAAK,EAAiB,EAAE;QAC7D,MAAM,WAAW,GAAG,wBAAwB,CAAC;QAE7C,IAAI,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QACzD,IAAI,aAAa,EAAE;YACjB,MAAM,EAAC,QAAQ,EAAC,GAAG,IAAI,GAAG,CAAC,WAAW,IAAA,wBAAU,EAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAEnE,MAAM,YAAY,GAAG;gBACnB,iBAAiB;gBACjB,eAAe;gBACf,gBAAgB;gBAChB,YAAY;aACb,CAAC;YAEF,MAAM,SAAS,GAAG,IAAI,MAAM,CAAC,OAAO,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAChE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAC7B,aAAa,GAAG,IAAI,CAAC;aACtB;SACF;QACD,IAAI,CAAC,aAAa,IAAI,cAAc,EAAE;YACpC,MAAM,IAAI,wBAAgB,CAAC,gCAAgC,CAAC,CAAC;SAC9D;QAED,OAAO,aAAa,CAAC;IACvB,CAAC,CAAC;AACJ,CAAC;AA1BD,oCA0BC"}
|
package/lib/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const SHOPIFY_API_LIBRARY_VERSION = "7.5.
|
|
1
|
+
export declare const SHOPIFY_API_LIBRARY_VERSION = "7.5.2";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/lib/version.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shopify/shopify-api",
|
|
3
|
-
"version": "7.5.
|
|
3
|
+
"version": "7.5.2",
|
|
4
4
|
"description": "Shopify API Library for Node - accelerate development with support for authentication, graphql proxy, webhooks",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"types": "./lib/index.d.ts",
|