@shopify/shopify-api 6.0.0 → 6.0.1
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 +6 -0
- package/lib/auth/index.d.ts +1 -1
- package/lib/auth/oauth/oauth.d.ts +1 -1
- package/lib/auth/oauth/oauth.d.ts.map +1 -1
- package/lib/auth/oauth/oauth.js +26 -36
- package/lib/auth/oauth/oauth.js.map +1 -1
- package/lib/auth/oauth/types.d.ts +1 -1
- package/lib/auth/oauth/types.d.ts.map +1 -1
- package/lib/types.d.ts +3 -2
- package/lib/types.d.ts.map +1 -1
- package/lib/types.js +3 -2
- package/lib/types.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/webhooks/process.d.ts.map +1 -1
- package/lib/webhooks/process.js +44 -30
- package/lib/webhooks/process.js.map +1 -1
- package/lib/webhooks/types.d.ts +1 -1
- package/lib/webhooks/types.d.ts.map +1 -1
- package/lib/webhooks/types.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,12 @@ and adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
|
|
7
7
|
|
|
8
8
|
## Unreleased
|
|
9
9
|
|
|
10
|
+
## [6.0.1] - 2022-12-08
|
|
11
|
+
|
|
12
|
+
- [Patch] Auto-detect session type in auth callback, deprecate `isOnline` argument [#628](https://github.com/Shopify/shopify-api-js/pull/628)
|
|
13
|
+
- [Patch] Removed callback URL path check from webhook processing [#629](https://github.com/Shopify/shopify-api-js/pull/629)
|
|
14
|
+
- [Patch] Pass api version to webhook handlers [#630](https://github.com/Shopify/shopify-api-js/pull/630)
|
|
15
|
+
|
|
10
16
|
## [6.0.0] - 2022-12-06
|
|
11
17
|
|
|
12
18
|
- ⚠️ [Breaking] Major overhaul of `Shopify/shopify-api-node`, which is a complete breaking change across all surfaces of the library. See the [migration guide](./docs/migrating-to-v6.md) for instructions on how to update your app.
|
package/lib/auth/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { nonce } from './oauth/nonce';
|
|
|
3
3
|
import { safeCompare } from './oauth/safe-compare';
|
|
4
4
|
export declare function shopifyAuth(config: ConfigInterface): {
|
|
5
5
|
begin: ({ shop, callbackPath, isOnline, ...adapterArgs }: import("./types").BeginParams) => Promise<any>;
|
|
6
|
-
callback: <T = any>({ isOnline, ...adapterArgs }: import("./types").CallbackParams) => Promise<import("./oauth/oauth").CallbackResponse<T>>;
|
|
6
|
+
callback: <T = any>({ isOnline: isOnlineParam, ...adapterArgs }: import("./types").CallbackParams) => Promise<import("./oauth/oauth").CallbackResponse<T>>;
|
|
7
7
|
nonce: typeof nonce;
|
|
8
8
|
safeCompare: typeof safeCompare;
|
|
9
9
|
getEmbeddedAppUrl: ({ ...adapterArgs }: import("./types").GetEmbeddedAppUrlParams) => Promise<string>;
|
|
@@ -7,5 +7,5 @@ export interface CallbackResponse<T = AdapterHeaders> {
|
|
|
7
7
|
session: Session;
|
|
8
8
|
}
|
|
9
9
|
export declare function begin(config: ConfigInterface): ({ shop, callbackPath, isOnline, ...adapterArgs }: BeginParams) => Promise<AdapterResponse>;
|
|
10
|
-
export declare function callback(config: ConfigInterface): <T = any>({ isOnline, ...adapterArgs }: CallbackParams) => Promise<CallbackResponse<T>>;
|
|
10
|
+
export declare function callback(config: ConfigInterface): <T = any>({ isOnline: isOnlineParam, ...adapterArgs }: CallbackParams) => Promise<CallbackResponse<T>>;
|
|
11
11
|
//# sourceMappingURL=oauth.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["oauth.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AAIjD,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAC;AAI9C,OAAO,EAIL,eAAe,EACf,cAAc,EAGf,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAGL,WAAW,EACX,cAAc,EAKf,MAAM,SAAS,CAAC;AAIjB,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,cAAc;IAClD,OAAO,EAAE,CAAC,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,KAAK,CAAC,MAAM,EAAE,eAAe,sDAMxC,WAAW,KAAG,QAAQ,eAAe,CAAC,CAkD1C;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["oauth.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AAIjD,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAC;AAI9C,OAAO,EAIL,eAAe,EACf,cAAc,EAGf,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAGL,WAAW,EACX,cAAc,EAKf,MAAM,SAAS,CAAC;AAIjB,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,cAAc;IAClD,OAAO,EAAE,CAAC,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,KAAK,CAAC,MAAM,EAAE,eAAe,sDAMxC,WAAW,KAAG,QAAQ,eAAe,CAAC,CAkD1C;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,eAAe,0DAI3C,cAAc,kCAyFlB"}
|
package/lib/auth/oauth/oauth.js
CHANGED
|
@@ -68,48 +68,46 @@ function begin(config) {
|
|
|
68
68
|
exports.begin = begin;
|
|
69
69
|
function callback(config) {
|
|
70
70
|
return function callback(_a) {
|
|
71
|
-
var
|
|
71
|
+
var isOnlineParam = _a.isOnline, adapterArgs = tslib_1.__rest(_a, ["isOnline"]);
|
|
72
72
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
73
|
-
var request, query, shop,
|
|
73
|
+
var log, request, query, shop, cookies, stateFromCookie, authQuery, body, postParams, cleanShop, HttpClient, client, postResponse, session;
|
|
74
74
|
var _b;
|
|
75
75
|
return tslib_1.__generator(this, function (_c) {
|
|
76
76
|
switch (_c.label) {
|
|
77
77
|
case 0:
|
|
78
78
|
throwIfPrivateApp(config.isPrivateApp, 'Cannot perform OAuth for private apps');
|
|
79
|
-
|
|
79
|
+
log = (0, logger_1.logger)(config);
|
|
80
|
+
if (!(isOnlineParam !== undefined)) return [3 /*break*/, 2];
|
|
81
|
+
return [4 /*yield*/, log.deprecated('7.0.0', 'The isOnline param is no longer required for auth callback')];
|
|
80
82
|
case 1:
|
|
83
|
+
_c.sent();
|
|
84
|
+
_c.label = 2;
|
|
85
|
+
case 2: return [4 /*yield*/, (0, http_1.abstractConvertRequest)(adapterArgs)];
|
|
86
|
+
case 3:
|
|
81
87
|
request = _c.sent();
|
|
82
88
|
query = new URL(request.url, "".concat(config.hostScheme, "://").concat(config.hostName)).searchParams;
|
|
83
89
|
shop = query.get('shop');
|
|
84
|
-
log
|
|
85
|
-
log.info('Completing OAuth', { shop: shop, isOnline: isOnline });
|
|
90
|
+
log.info('Completing OAuth', { shop: shop });
|
|
86
91
|
cookies = new http_1.Cookies(request, {}, {
|
|
87
92
|
keys: [config.apiSecretKey],
|
|
88
93
|
secure: true,
|
|
89
94
|
});
|
|
90
95
|
return [4 /*yield*/, cookies.getAndVerify(types_2.STATE_COOKIE_NAME)];
|
|
91
|
-
case
|
|
96
|
+
case 4:
|
|
92
97
|
stateFromCookie = _c.sent();
|
|
93
98
|
cookies.deleteCookie(types_2.STATE_COOKIE_NAME);
|
|
94
99
|
if (!stateFromCookie) {
|
|
95
|
-
log.error('Could not find OAuth cookie', { shop: shop
|
|
100
|
+
log.error('Could not find OAuth cookie', { shop: shop });
|
|
96
101
|
throw new ShopifyErrors.CookieNotFound("Cannot complete OAuth process. Could not find an OAuth cookie for shop url: ".concat(shop));
|
|
97
102
|
}
|
|
98
103
|
authQuery = Object.fromEntries(query.entries());
|
|
99
104
|
return [4 /*yield*/, validQuery({ config: config, query: authQuery, stateFromCookie: stateFromCookie })];
|
|
100
|
-
case
|
|
105
|
+
case 5:
|
|
101
106
|
if (!(_c.sent())) {
|
|
102
|
-
log.error('Invalid OAuth callback', {
|
|
103
|
-
shop: shop,
|
|
104
|
-
isOnline: isOnline,
|
|
105
|
-
stateFromCookie: stateFromCookie,
|
|
106
|
-
});
|
|
107
|
+
log.error('Invalid OAuth callback', { shop: shop, stateFromCookie: stateFromCookie });
|
|
107
108
|
throw new ShopifyErrors.InvalidOAuthError('Invalid OAuth callback.');
|
|
108
109
|
}
|
|
109
|
-
log.debug('OAuth request is valid, requesting access token', {
|
|
110
|
-
shop: shop,
|
|
111
|
-
isOnline: isOnline,
|
|
112
|
-
});
|
|
110
|
+
log.debug('OAuth request is valid, requesting access token', { shop: shop });
|
|
113
111
|
body = {
|
|
114
112
|
client_id: config.apiKey,
|
|
115
113
|
client_secret: config.apiSecretKey,
|
|
@@ -124,29 +122,27 @@ function callback(config) {
|
|
|
124
122
|
HttpClient = (0, http_client_1.httpClientClass)(config);
|
|
125
123
|
client = new HttpClient({ domain: cleanShop });
|
|
126
124
|
return [4 /*yield*/, client.post(postParams)];
|
|
127
|
-
case
|
|
125
|
+
case 6:
|
|
128
126
|
postResponse = _c.sent();
|
|
129
|
-
log.info('Received access token, creating session', { shop: shop, isOnline: isOnline });
|
|
130
127
|
session = createSession({
|
|
131
128
|
postResponse: postResponse,
|
|
132
129
|
shop: cleanShop,
|
|
133
130
|
stateFromCookie: stateFromCookie,
|
|
134
|
-
isOnline: isOnline,
|
|
135
131
|
config: config,
|
|
136
132
|
});
|
|
137
|
-
if (!!config.isEmbeddedApp) return [3 /*break*/,
|
|
133
|
+
if (!!config.isEmbeddedApp) return [3 /*break*/, 8];
|
|
138
134
|
return [4 /*yield*/, cookies.setAndSign(types_2.SESSION_COOKIE_NAME, session.id, {
|
|
139
135
|
expires: session.expires,
|
|
140
136
|
sameSite: 'lax',
|
|
141
137
|
secure: true,
|
|
142
138
|
})];
|
|
143
|
-
case
|
|
139
|
+
case 7:
|
|
144
140
|
_c.sent();
|
|
145
|
-
_c.label =
|
|
146
|
-
case
|
|
141
|
+
_c.label = 8;
|
|
142
|
+
case 8:
|
|
147
143
|
_b = {};
|
|
148
144
|
return [4 /*yield*/, (0, http_1.abstractConvertHeaders)(cookies.response.headers, adapterArgs)];
|
|
149
|
-
case
|
|
145
|
+
case 9: return [2 /*return*/, (_b.headers = (_c.sent()),
|
|
150
146
|
_b.session = session,
|
|
151
147
|
_b)];
|
|
152
148
|
}
|
|
@@ -168,17 +164,11 @@ function validQuery(_a) {
|
|
|
168
164
|
});
|
|
169
165
|
}
|
|
170
166
|
function createSession(_a) {
|
|
171
|
-
var config = _a.config, postResponse = _a.postResponse, shop = _a.shop, stateFromCookie = _a.stateFromCookie
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
}
|
|
177
|
-
if (isOnline &&
|
|
178
|
-
!postResponse.body.associated_user) {
|
|
179
|
-
throw new ShopifyErrors.InvalidOAuthError('Attempted to complete online OAuth flow, but received an offline token response. This is likely because ' +
|
|
180
|
-
"you're not setting the isOnline parameter consistently between begin() and callback()");
|
|
181
|
-
}
|
|
167
|
+
var config = _a.config, postResponse = _a.postResponse, shop = _a.shop, stateFromCookie = _a.stateFromCookie;
|
|
168
|
+
var associatedUser = postResponse.body
|
|
169
|
+
.associated_user;
|
|
170
|
+
var isOnline = Boolean(associatedUser);
|
|
171
|
+
(0, logger_1.logger)(config).info('Creating new session', { shop: shop, isOnline: isOnline });
|
|
182
172
|
if (isOnline) {
|
|
183
173
|
var sessionId = void 0;
|
|
184
174
|
var responseBody = postResponse.body;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth.js","sourceRoot":"","sources":["oauth.ts"],"names":[],"mappings":";;;;AAAA,6BAAkC;AAElC,wFAAyD;AAEzD,iEAA6C;AAC7C,6DAAwD;AACxD,6DAAwD;AACxD,iDAA8C;AAC9C,6DAA0E;AAC1E,qEAAsE;AACtE,yDAAwE;AACxE,8CAQ+B;AAC/B,uCAAoC;AAEpC,iCASiB;AACjB,iCAA8B;AAC9B,+CAA2C;AAO3C,SAAgB,KAAK,CAAC,MAAuB;IAA7C,iBAwDC;IAvDC,OAAO,UAAO,EAKA;;QAJZ,IAAA,IAAI,UAAA,EACJ,YAAY,kBAAA,EACZ,QAAQ,cAAA,EACL,WAAW,sBAJF,oCAKb,CADe;;;;oBAEd,iBAAiB,CACf,MAAM,CAAC,YAAY,EACnB,uCAAuC,CACxC,CAAC;oBAEI,GAAG,GAAG,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC;oBAC3B,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAC,IAAI,MAAA,EAAE,QAAQ,UAAA,EAAE,YAAY,cAAA,EAAC,CAAC,CAAC;oBAEtD,SAAS,GAAG,IAAA,6BAAY,EAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,CAAE,CAAC;oBACpC,qBAAM,IAAA,6BAAsB,EAAC,WAAW,CAAC,EAAA;;oBAAnD,OAAO,GAAG,SAAyC;oBAEnD,OAAO,GAAG,IAAI,cAAO,CAAC,OAAO,EAAE,EAAwB,EAAE;wBAC7D,IAAI,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC;wBAC3B,MAAM,EAAE,IAAI;qBACb,CAAC,CAAC;oBAEG,KAAK,GAAG,IAAA,aAAK,GAAE,CAAC;oBAEtB,qBAAM,OAAO,CAAC,UAAU,CAAC,yBAAiB,EAAE,KAAK,EAAE;4BACjD,OAAO,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;4BACrC,QAAQ,EAAE,KAAK;4BACf,MAAM,EAAE,IAAI;4BACZ,IAAI,EAAE,YAAY;yBACnB,CAAC,EAAA;;oBALF,SAKE,CAAC;oBAEG,KAAK,GAAG;wBACZ,SAAS,EAAE,MAAM,CAAC,MAAM;wBACxB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;wBAC/B,YAAY,EAAE,UAAG,MAAM,CAAC,UAAU,gBAAM,MAAM,CAAC,QAAQ,SAAG,YAAY,CAAE;wBACxE,KAAK,OAAA;wBACL,iBAAiB,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;qBAC9C,CAAC;oBACI,cAAc,GAAG,IAAI,yBAAc,EAAE,CAAC;oBAC5C,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAEvB,WAAW,GAAG,kBAAW,SAAS,mCAAyB,cAAc,CAAC,SAAS,EAAE,CAAE,CAAC;oBACxF,QAAQ,GAAuB;wBACnC,UAAU,EAAE,GAAG;wBACf,UAAU,EAAE,OAAO;wBACnB,OAAO,wCACF,OAAO,CAAC,QAAQ,CAAC,OAAQ,KAC5B,QAAQ,EAAE,WAAW,GACtB;qBACF,CAAC;oBAEF,GAAG,CAAC,KAAK,CAAC,wCAAiC,WAAW,CAAE,EAAE,EAAC,IAAI,MAAA,EAAE,QAAQ,UAAA,EAAC,CAAC,CAAC;oBAE5E,sBAAO,IAAA,8BAAuB,EAAC,QAAQ,EAAE,WAAW,CAAC,EAAC;;;SACvD,CAAC;AACJ,CAAC;AAxDD,sBAwDC;AAED,SAAgB,QAAQ,CAAC,MAAuB;IAC9C,OAAO,SAAe,QAAQ,CAAqB,EAGlC;QAFf,
|
|
1
|
+
{"version":3,"file":"oauth.js","sourceRoot":"","sources":["oauth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,6BAA6B,CAAC;AAExD,eAAO,MAAM,mBAAmB,wBAAwB,CAAC;AACzD,eAAO,MAAM,iBAAiB,sBAAsB,CAAC;AAErD,MAAM,WAAW,SAAS;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAY,SAAQ,WAAW;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,QAAQ,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,6BAA6B,CAAC;AAExD,eAAO,MAAM,mBAAmB,wBAAwB,CAAC;AACzD,eAAO,MAAM,iBAAiB,sBAAsB,CAAC;AAErD,MAAM,WAAW,SAAS;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAY,SAAQ,WAAW;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,eAAe,EAAE;QACf,EAAE,EAAE,MAAM,CAAC;QACX,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,cAAc,EAAE,OAAO,CAAC;QACxB,aAAa,EAAE,OAAO,CAAC;QACvB,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,OAAO,CAAC;KACvB,CAAC;CACH;AAED,MAAM,WAAW,oBACf,SAAQ,mBAAmB,EACzB,gBAAgB;CAAG"}
|
package/lib/types.d.ts
CHANGED
|
@@ -14,10 +14,11 @@ export declare enum ApiVersion {
|
|
|
14
14
|
export declare const LATEST_API_VERSION = ApiVersion.October22;
|
|
15
15
|
export declare enum ShopifyHeader {
|
|
16
16
|
AccessToken = "X-Shopify-Access-Token",
|
|
17
|
-
|
|
17
|
+
ApiVersion = "X-Shopify-API-Version",
|
|
18
|
+
Domain = "X-Shopify-Shop-Domain",
|
|
18
19
|
Hmac = "X-Shopify-Hmac-Sha256",
|
|
20
|
+
StorefrontAccessToken = "X-Shopify-Storefront-Access-Token",
|
|
19
21
|
Topic = "X-Shopify-Topic",
|
|
20
|
-
Domain = "X-Shopify-Shop-Domain",
|
|
21
22
|
WebhookId = "X-Shopify-Webhook-Id"
|
|
22
23
|
}
|
|
23
24
|
export declare enum ClientType {
|
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,SAAS,YAAY;IACrB,OAAO,YAAY;IACnB,MAAM,YAAY;IAClB,SAAS,YAAY;IACrB,QAAQ,aAAa;CACtB;AAED,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AAEvD,oBAAY,aAAa;IACvB,WAAW,2BAA2B;IACtC,
|
|
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,SAAS,YAAY;IACrB,OAAO,YAAY;IACnB,MAAM,YAAY;IAClB,SAAS,YAAY;IACrB,QAAQ,aAAa;CACtB;AAED,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AAEvD,oBAAY,aAAa;IACvB,WAAW,2BAA2B;IACtC,UAAU,0BAA0B;IACpC,MAAM,0BAA0B;IAChC,IAAI,0BAA0B;IAC9B,qBAAqB,sCAAsC;IAC3D,KAAK,oBAAoB;IACzB,SAAS,yBAAyB;CACnC;AAED,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
|
@@ -20,10 +20,11 @@ exports.LATEST_API_VERSION = ApiVersion.October22;
|
|
|
20
20
|
var ShopifyHeader;
|
|
21
21
|
(function (ShopifyHeader) {
|
|
22
22
|
ShopifyHeader["AccessToken"] = "X-Shopify-Access-Token";
|
|
23
|
-
ShopifyHeader["
|
|
23
|
+
ShopifyHeader["ApiVersion"] = "X-Shopify-API-Version";
|
|
24
|
+
ShopifyHeader["Domain"] = "X-Shopify-Shop-Domain";
|
|
24
25
|
ShopifyHeader["Hmac"] = "X-Shopify-Hmac-Sha256";
|
|
26
|
+
ShopifyHeader["StorefrontAccessToken"] = "X-Shopify-Storefront-Access-Token";
|
|
25
27
|
ShopifyHeader["Topic"] = "X-Shopify-Topic";
|
|
26
|
-
ShopifyHeader["Domain"] = "X-Shopify-Shop-Domain";
|
|
27
28
|
ShopifyHeader["WebhookId"] = "X-Shopify-Webhook-Id";
|
|
28
29
|
})(ShopifyHeader = exports.ShopifyHeader || (exports.ShopifyHeader = {}));
|
|
29
30
|
var ClientType;
|
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,UAMX;AAND,WAAY,UAAU;IACpB,mCAAqB,CAAA;IACrB,iCAAmB,CAAA;IACnB,gCAAkB,CAAA;IAClB,mCAAqB,CAAA;IACrB,mCAAqB,CAAA;AACvB,CAAC,EANW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAMrB;AAEY,QAAA,kBAAkB,GAAG,UAAU,CAAC,SAAS,CAAC;AAEvD,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,UAMX;AAND,WAAY,UAAU;IACpB,mCAAqB,CAAA;IACrB,iCAAmB,CAAA;IACnB,gCAAkB,CAAA;IAClB,mCAAqB,CAAA;IACrB,mCAAqB,CAAA;AACvB,CAAC,EANW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAMrB;AAEY,QAAA,kBAAkB,GAAG,UAAU,CAAC,SAAS,CAAC;AAEvD,IAAY,aAQX;AARD,WAAY,aAAa;IACvB,uDAAsC,CAAA;IACtC,qDAAoC,CAAA;IACpC,iDAAgC,CAAA;IAChC,+CAA8B,CAAA;IAC9B,4EAA2D,CAAA;IAC3D,0CAAyB,CAAA;IACzB,mDAAkC,CAAA;AACpC,CAAC,EARW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAQxB;AAED,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/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const SHOPIFY_API_LIBRARY_VERSION = "6.0.
|
|
1
|
+
export declare const SHOPIFY_API_LIBRARY_VERSION = "6.0.1";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/lib/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process.d.ts","sourceRoot":"","sources":["process.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,eAAe,EAMhB,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAK9C,OAAO,EAAC,eAAe,EAAE,oBAAoB,EAAiB,MAAM,SAAS,CAAC;AAG9E,wBAAgB,OAAO,CACrB,MAAM,EAAE,eAAe,EACvB,eAAe,EAAE,eAAe,iCAK7B,oBAAoB,KAAG,QAAQ,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"process.d.ts","sourceRoot":"","sources":["process.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,eAAe,EAMhB,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAK9C,OAAO,EAAC,eAAe,EAAE,oBAAoB,EAAiB,MAAM,SAAS,CAAC;AAG9E,wBAAgB,OAAO,CACrB,MAAM,EAAE,eAAe,EACvB,eAAe,EAAE,eAAe,iCAK7B,oBAAoB,KAAG,QAAQ,eAAe,CAAC,CAiFnD"}
|
package/lib/webhooks/process.js
CHANGED
|
@@ -17,7 +17,7 @@ function process(config, webhookRegistry) {
|
|
|
17
17
|
return function process(_a) {
|
|
18
18
|
var rawBody = _a.rawBody, adapterArgs = tslib_1.__rest(_a, ["rawBody"]);
|
|
19
19
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
20
|
-
var request, response, webhookCheck, webhookOk, hmac, topic,
|
|
20
|
+
var request, response, webhookCheck, webhookOk, apiVersion, domain, hmac, topic, webhookId, errorMessage, loggingContext, log, graphqlTopic, handlers, found, handlers_1, handlers_1_1, handler, error_1, e_1_1, returnResponse;
|
|
21
21
|
var e_1, _b;
|
|
22
22
|
return tslib_1.__generator(this, function (_c) {
|
|
23
23
|
switch (_c.label) {
|
|
@@ -30,9 +30,9 @@ function process(config, webhookRegistry) {
|
|
|
30
30
|
headers: {},
|
|
31
31
|
};
|
|
32
32
|
webhookCheck = checkWebhookRequest(rawBody, request.headers);
|
|
33
|
-
webhookOk = webhookCheck.webhookOk,
|
|
33
|
+
webhookOk = webhookCheck.webhookOk, apiVersion = webhookCheck.apiVersion, domain = webhookCheck.domain, hmac = webhookCheck.hmac, topic = webhookCheck.topic, webhookId = webhookCheck.webhookId;
|
|
34
34
|
errorMessage = webhookCheck.errorMessage;
|
|
35
|
-
loggingContext = {
|
|
35
|
+
loggingContext = { apiVersion: apiVersion, domain: domain, topic: topic, webhookId: webhookId };
|
|
36
36
|
log = (0, logger_1.logger)(config);
|
|
37
37
|
log.info('Processing webhook request', loggingContext);
|
|
38
38
|
if (!webhookOk) return [3 /*break*/, 15];
|
|
@@ -52,8 +52,7 @@ function process(config, webhookRegistry) {
|
|
|
52
52
|
case 4:
|
|
53
53
|
if (!!handlers_1_1.done) return [3 /*break*/, 9];
|
|
54
54
|
handler = handlers_1_1.value;
|
|
55
|
-
if (handler.deliveryMethod !== types_3.DeliveryMethod.Http
|
|
56
|
-
handler.callbackUrl !== request.url) {
|
|
55
|
+
if (handler.deliveryMethod !== types_3.DeliveryMethod.Http) {
|
|
57
56
|
return [3 /*break*/, 8];
|
|
58
57
|
}
|
|
59
58
|
found = true;
|
|
@@ -61,7 +60,7 @@ function process(config, webhookRegistry) {
|
|
|
61
60
|
_c.label = 5;
|
|
62
61
|
case 5:
|
|
63
62
|
_c.trys.push([5, 7, , 8]);
|
|
64
|
-
return [4 /*yield*/, handler.callback(graphqlTopic, domain, rawBody, webhookId)];
|
|
63
|
+
return [4 /*yield*/, handler.callback(graphqlTopic, domain, rawBody, webhookId, apiVersion)];
|
|
65
64
|
case 6:
|
|
66
65
|
_c.sent();
|
|
67
66
|
response.statusCode = network_1.StatusCode.Ok;
|
|
@@ -127,42 +126,57 @@ var statusTextLookup = (_a = {},
|
|
|
127
126
|
_a[network_1.StatusCode.NotFound] = 'Not Found',
|
|
128
127
|
_a[network_1.StatusCode.InternalServerError] = 'Internal Server Error',
|
|
129
128
|
_a);
|
|
129
|
+
var headerProperties = [
|
|
130
|
+
{
|
|
131
|
+
property: 'apiVersion',
|
|
132
|
+
headerName: types_2.ShopifyHeader.ApiVersion,
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
property: 'domain',
|
|
136
|
+
headerName: types_2.ShopifyHeader.Domain,
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
property: 'hmac',
|
|
140
|
+
headerName: types_2.ShopifyHeader.Hmac,
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
property: 'topic',
|
|
144
|
+
headerName: types_2.ShopifyHeader.Topic,
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
property: 'webhookId',
|
|
148
|
+
headerName: types_2.ShopifyHeader.WebhookId,
|
|
149
|
+
},
|
|
150
|
+
];
|
|
130
151
|
function checkWebhookRequest(rawBody, headers) {
|
|
131
152
|
var retVal = {
|
|
132
153
|
webhookOk: true,
|
|
133
154
|
errorMessage: '',
|
|
155
|
+
apiVersion: '',
|
|
156
|
+
domain: '',
|
|
134
157
|
hmac: '',
|
|
135
158
|
topic: '',
|
|
136
|
-
domain: '',
|
|
137
159
|
webhookId: '',
|
|
138
160
|
};
|
|
139
161
|
if (rawBody.length) {
|
|
140
|
-
var
|
|
141
|
-
var
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
}
|
|
154
|
-
if (!webhookId) {
|
|
155
|
-
missingHeaders.push(types_2.ShopifyHeader.WebhookId);
|
|
156
|
-
}
|
|
157
|
-
if (missingHeaders.length) {
|
|
162
|
+
var missingHeaders_1 = [];
|
|
163
|
+
var headerValues_1 = {};
|
|
164
|
+
headerProperties.forEach(function (_a) {
|
|
165
|
+
var property = _a.property, headerName = _a.headerName;
|
|
166
|
+
var headerValue = (0, http_1.getHeader)(headers, headerName);
|
|
167
|
+
if (headerValue) {
|
|
168
|
+
headerValues_1[property] = headerValue;
|
|
169
|
+
}
|
|
170
|
+
else {
|
|
171
|
+
missingHeaders_1.push(headerName);
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
if (missingHeaders_1.length) {
|
|
158
175
|
retVal.webhookOk = false;
|
|
159
|
-
retVal.errorMessage = "Missing one or more of the required HTTP headers to process
|
|
176
|
+
retVal.errorMessage = "Missing one or more of the required HTTP headers to process webhooks: [".concat(missingHeaders_1.join(', '), "]");
|
|
160
177
|
}
|
|
161
178
|
else {
|
|
162
|
-
retVal
|
|
163
|
-
retVal.topic = topic;
|
|
164
|
-
retVal.domain = domain;
|
|
165
|
-
retVal.webhookId = webhookId;
|
|
179
|
+
retVal = tslib_1.__assign(tslib_1.__assign({}, retVal), headerValues_1);
|
|
166
180
|
}
|
|
167
181
|
}
|
|
168
182
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process.js","sourceRoot":"","sources":["process.ts"],"names":[],"mappings":";;;;;AAAA,4CAA4C;AAE5C,2CAS4B;AAC5B,+CAAsD;AACtD,oDAAsD;AACtD,kCAAuC;AAEvC,2DAAuD;AACvD,8DAA0C;AAC1C,oCAAiC;AAEjC,iCAA8E;AAC9E,uCAA2C;AAE3C,SAAgB,OAAO,CACrB,MAAuB,EACvB,eAAgC;IAEhC,OAAO,SAAe,OAAO,CAAC,EAGP;QAFrB,IAAA,OAAO,aAAA,EACJ,WAAW,sBAFc,WAG7B,CADe;;;;;;4BAEqB,qBAAM,IAAA,6BAAsB,EAC7D,WAAW,CACZ,EAAA;;wBAFK,OAAO,GAAsB,SAElC;wBACK,QAAQ,GAAuB;4BACnC,UAAU,EAAE,oBAAU,CAAC,EAAE;4BACzB,UAAU,EAAE,gBAAgB,CAAC,oBAAU,CAAC,EAAE,CAAC;4BAC3C,OAAO,EAAE,EAAE;yBACZ,CAAC;wBAEI,YAAY,GAAG,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;wBAC5D,SAAS,
|
|
1
|
+
{"version":3,"file":"process.js","sourceRoot":"","sources":["process.ts"],"names":[],"mappings":"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"}
|
package/lib/webhooks/types.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ export declare enum DeliveryMethod {
|
|
|
5
5
|
EventBridge = "eventbridge",
|
|
6
6
|
PubSub = "pubsub"
|
|
7
7
|
}
|
|
8
|
-
export declare type WebhookHandlerFunction = (topic: string, shop_domain: string, body: string, webhookId: string) => Promise<void>;
|
|
8
|
+
export declare type WebhookHandlerFunction = (topic: string, shop_domain: string, body: string, webhookId: string, apiVersion?: string) => Promise<void>;
|
|
9
9
|
interface BaseWebhookHandler {
|
|
10
10
|
id?: string;
|
|
11
11
|
includeFields?: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAC,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAE3C,oBAAY,cAAc;IACxB,IAAI,SAAS;IACb,WAAW,gBAAgB;IAC3B,MAAM,WAAW;CAClB;AAED,oBAAY,sBAAsB,GAAG,CACnC,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":";;;AAGA,IAAY,cAIX;AAJD,WAAY,cAAc;IACxB,+BAAa,CAAA;IACb,6CAA2B,CAAA;IAC3B,mCAAiB,CAAA;AACnB,CAAC,EAJW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAIzB;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":";;;AAGA,IAAY,cAIX;AAJD,WAAY,cAAc;IACxB,+BAAa,CAAA;IACb,6CAA2B,CAAA;IAC3B,mCAAiB,CAAA;AACnB,CAAC,EAJW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAIzB;AA4CD,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,qCAAiB,CAAA;IACjB,qCAAiB,CAAA;AACnB,CAAC,EAJW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAI3B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shopify/shopify-api",
|
|
3
|
-
"version": "6.0.
|
|
3
|
+
"version": "6.0.1",
|
|
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",
|