@shopify/shopify-api 8.0.2 → 8.1.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.
Files changed (57) hide show
  1. package/future/flags.d.ts +2 -0
  2. package/future/flags.d.ts.map +1 -1
  3. package/lib/auth/get-embedded-app-url.d.ts +4 -2
  4. package/lib/auth/get-embedded-app-url.d.ts.map +1 -1
  5. package/lib/auth/get-embedded-app-url.js.map +1 -1
  6. package/lib/auth/index.d.ts +19 -11
  7. package/lib/auth/index.d.ts.map +1 -1
  8. package/lib/auth/index.js +7 -1
  9. package/lib/auth/index.js.map +1 -1
  10. package/lib/auth/oauth/create-session.d.ts +12 -0
  11. package/lib/auth/oauth/create-session.d.ts.map +1 -0
  12. package/lib/auth/oauth/create-session.js +58 -0
  13. package/lib/auth/oauth/create-session.js.map +1 -0
  14. package/lib/auth/oauth/nonce.d.ts +1 -0
  15. package/lib/auth/oauth/nonce.d.ts.map +1 -1
  16. package/lib/auth/oauth/nonce.js.map +1 -1
  17. package/lib/auth/oauth/oauth.d.ts +4 -2
  18. package/lib/auth/oauth/oauth.d.ts.map +1 -1
  19. package/lib/auth/oauth/oauth.js +4 -45
  20. package/lib/auth/oauth/oauth.js.map +1 -1
  21. package/lib/auth/oauth/safe-compare.d.ts +3 -2
  22. package/lib/auth/oauth/safe-compare.d.ts.map +1 -1
  23. package/lib/auth/oauth/safe-compare.js +2 -2
  24. package/lib/auth/oauth/safe-compare.js.map +1 -1
  25. package/lib/auth/oauth/token-exchange.d.ts +16 -0
  26. package/lib/auth/oauth/token-exchange.d.ts.map +1 -0
  27. package/lib/auth/oauth/token-exchange.js +52 -0
  28. package/lib/auth/oauth/token-exchange.js.map +1 -0
  29. package/lib/auth/types.d.ts +1 -0
  30. package/lib/auth/types.d.ts.map +1 -1
  31. package/lib/auth/types.js +3 -0
  32. package/lib/auth/types.js.map +1 -1
  33. package/lib/base-types.d.ts +4 -3
  34. package/lib/base-types.d.ts.map +1 -1
  35. package/lib/billing/request.d.ts +3 -2
  36. package/lib/billing/request.d.ts.map +1 -1
  37. package/lib/billing/request.js +142 -32
  38. package/lib/billing/request.js.map +1 -1
  39. package/lib/billing/types.d.ts +23 -3
  40. package/lib/billing/types.d.ts.map +1 -1
  41. package/lib/index.d.ts +5 -2
  42. package/lib/index.d.ts.map +1 -1
  43. package/lib/index.js +4 -2
  44. package/lib/index.js.map +1 -1
  45. package/lib/session/session.d.ts +2 -0
  46. package/lib/session/session.d.ts.map +1 -1
  47. package/lib/session/session.js +9 -7
  48. package/lib/session/session.js.map +1 -1
  49. package/lib/version.d.ts +1 -1
  50. package/lib/version.js +1 -1
  51. package/lib/webhooks/validate.d.ts.map +1 -1
  52. package/lib/webhooks/validate.js +1 -1
  53. package/lib/webhooks/validate.js.map +1 -1
  54. package/package.json +1 -1
  55. package/rest/load-rest-resources.d.ts +1 -1
  56. package/rest/load-rest-resources.d.ts.map +1 -1
  57. package/rest/load-rest-resources.js.map +1 -1
package/future/flags.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  export interface FutureFlags {
2
+ unstable_tokenExchange?: boolean;
3
+ unstable_lineItemBilling?: boolean;
2
4
  }
3
5
  export type FutureFlagOptions = FutureFlags | undefined;
4
6
  export type FeatureEnabled<Future extends FutureFlagOptions, Flag extends keyof FutureFlags> = Future extends FutureFlags ? Future[Flag] extends true ? true : false : false;
@@ -1 +1 @@
1
- {"version":3,"file":"flags.d.ts","sourceRoot":"","sources":["flags.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;CAAG;AAE/B,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG,SAAS,CAAC;AAExD,MAAM,MAAM,cAAc,CACxB,MAAM,SAAS,iBAAiB,EAChC,IAAI,SAAS,MAAM,WAAW,IAC5B,MAAM,SAAS,WAAW,GAC1B,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,GACvB,IAAI,GACJ,KAAK,GACP,KAAK,CAAC"}
1
+ {"version":3,"file":"flags.d.ts","sourceRoot":"","sources":["flags.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG,SAAS,CAAC;AAExD,MAAM,MAAM,cAAc,CACxB,MAAM,SAAS,iBAAiB,EAChC,IAAI,SAAS,MAAM,WAAW,IAC5B,MAAM,SAAS,WAAW,GAC1B,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,GACvB,IAAI,GACJ,KAAK,GACP,KAAK,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import { ConfigInterface } from '../base-types';
2
2
  import { GetEmbeddedAppUrlParams } from './types';
3
- export declare function getEmbeddedAppUrl(config: ConfigInterface): ({ ...adapterArgs }: GetEmbeddedAppUrlParams) => Promise<string>;
4
- export declare function buildEmbeddedAppUrl(config: ConfigInterface): (host: string) => string;
3
+ export type GetEmbeddedAppUrl = (params: GetEmbeddedAppUrlParams) => Promise<string>;
4
+ export type BuildEmbeddedAppUrl = (host: string) => string;
5
+ export declare function getEmbeddedAppUrl(config: ConfigInterface): GetEmbeddedAppUrl;
6
+ export declare function buildEmbeddedAppUrl(config: ConfigInterface): BuildEmbeddedAppUrl;
5
7
  //# sourceMappingURL=get-embedded-app-url.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-embedded-app-url.d.ts","sourceRoot":"","sources":["get-embedded-app-url.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAK9C,OAAO,EAAC,uBAAuB,EAAC,MAAM,SAAS,CAAC;AAEhD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,eAAe,wBACvB,uBAAuB,KAAG,QAAQ,MAAM,CAAC,CA0B1E;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,eAAe,UAC3C,MAAM,KAAG,MAAM,CAM9B"}
1
+ {"version":3,"file":"get-embedded-app-url.d.ts","sourceRoot":"","sources":["get-embedded-app-url.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAK9C,OAAO,EAAC,uBAAuB,EAAC,MAAM,SAAS,CAAC;AAEhD,MAAM,MAAM,iBAAiB,GAAG,CAC9B,MAAM,EAAE,uBAAuB,KAC5B,OAAO,CAAC,MAAM,CAAC,CAAC;AAErB,MAAM,MAAM,mBAAmB,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;AAE3D,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,iBAAiB,CA2B5E;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,eAAe,GACtB,mBAAmB,CAOrB"}
@@ -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,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
+ {"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;AASzC,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,CACjC,MAAuB;IAEvB,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;AATD,kDASC"}
@@ -1,13 +1,21 @@
1
1
  import { ConfigInterface } from '../base-types';
2
- import { nonce } from './oauth/nonce';
3
- import { safeCompare } from './oauth/safe-compare';
4
- export declare function shopifyAuth(config: ConfigInterface): {
5
- begin: ({ shop, callbackPath, isOnline, ...adapterArgs }: import("./types").BeginParams) => Promise<any>;
6
- callback: <T = any>({ ...adapterArgs }: import("./types").CallbackParams) => Promise<import("./oauth/oauth").CallbackResponse<T>>;
7
- nonce: typeof nonce;
8
- safeCompare: typeof safeCompare;
9
- getEmbeddedAppUrl: ({ ...adapterArgs }: import("./types").GetEmbeddedAppUrlParams) => Promise<string>;
10
- buildEmbeddedAppUrl: (host: string) => string;
11
- };
12
- export type ShopifyAuth = ReturnType<typeof shopifyAuth>;
2
+ import { FeatureEnabled, FutureFlagOptions } from '../../future/flags';
3
+ import { OAuthBegin, OAuthCallback } from './oauth/oauth';
4
+ import { Nonce } from './oauth/nonce';
5
+ import { SafeCompare } from './oauth/safe-compare';
6
+ import { GetEmbeddedAppUrl, BuildEmbeddedAppUrl } from './get-embedded-app-url';
7
+ import { TokenExchange } from './oauth/token-exchange';
8
+ export declare function shopifyAuth<Config extends ConfigInterface>(config: Config): ShopifyAuth<Config['future']>;
9
+ export type ShopifyAuth<Future extends FutureFlagOptions> = {
10
+ begin: OAuthBegin;
11
+ callback: OAuthCallback;
12
+ nonce: Nonce;
13
+ safeCompare: SafeCompare;
14
+ getEmbeddedAppUrl: GetEmbeddedAppUrl;
15
+ buildEmbeddedAppUrl: BuildEmbeddedAppUrl;
16
+ } & (FeatureEnabled<Future, 'unstable_tokenExchange'> extends true ? {
17
+ tokenExchange: TokenExchange;
18
+ } : {
19
+ [key: string]: never;
20
+ });
13
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAG9C,OAAO,EAAC,KAAK,EAAC,MAAM,eAAe,CAAC;AACpC,OAAO,EAAC,WAAW,EAAC,MAAM,sBAAsB,CAAC;AAGjD,wBAAgB,WAAW,CAAC,MAAM,EAAE,eAAe;;;;;;;EASlD;AAED,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAC,cAAc,EAAE,iBAAiB,EAAC,MAAM,oBAAoB,CAAC;AAErE,OAAO,EAAC,UAAU,EAAE,aAAa,EAAkB,MAAM,eAAe,CAAC;AACzE,OAAO,EAAC,KAAK,EAAQ,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAC,WAAW,EAAc,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAGL,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAC,aAAa,EAAgB,MAAM,wBAAwB,CAAC;AAEpE,wBAAgB,WAAW,CAAC,MAAM,SAAS,eAAe,EACxD,MAAM,EAAE,MAAM,GACb,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAe/B;AAED,MAAM,MAAM,WAAW,CAAC,MAAM,SAAS,iBAAiB,IAAI;IAC1D,KAAK,EAAE,UAAU,CAAC;IAClB,QAAQ,EAAE,aAAa,CAAC;IACxB,KAAK,EAAE,KAAK,CAAC;IACb,WAAW,EAAE,WAAW,CAAC;IACzB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,mBAAmB,EAAE,mBAAmB,CAAC;CAC1C,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,wBAAwB,CAAC,SAAS,IAAI,GAC9D;IAAC,aAAa,EAAE,aAAa,CAAA;CAAC,GAC9B;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAA;CAAC,CAAC,CAAC"}
package/lib/auth/index.js CHANGED
@@ -5,8 +5,10 @@ const oauth_1 = require("./oauth/oauth");
5
5
  const nonce_1 = require("./oauth/nonce");
6
6
  const safe_compare_1 = require("./oauth/safe-compare");
7
7
  const get_embedded_app_url_1 = require("./get-embedded-app-url");
8
+ const token_exchange_1 = require("./oauth/token-exchange");
8
9
  function shopifyAuth(config) {
9
- return {
10
+ var _a;
11
+ const shopify = {
10
12
  begin: (0, oauth_1.begin)(config),
11
13
  callback: (0, oauth_1.callback)(config),
12
14
  nonce: nonce_1.nonce,
@@ -14,6 +16,10 @@ function shopifyAuth(config) {
14
16
  getEmbeddedAppUrl: (0, get_embedded_app_url_1.getEmbeddedAppUrl)(config),
15
17
  buildEmbeddedAppUrl: (0, get_embedded_app_url_1.buildEmbeddedAppUrl)(config),
16
18
  };
19
+ if ((_a = config.future) === null || _a === void 0 ? void 0 : _a.unstable_tokenExchange) {
20
+ shopify.tokenExchange = (0, token_exchange_1.tokenExchange)(config);
21
+ }
22
+ return shopify;
17
23
  }
18
24
  exports.shopifyAuth = shopifyAuth;
19
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAEA,yCAA8C;AAC9C,yCAAoC;AACpC,uDAAiD;AACjD,iEAA8E;AAE9E,SAAgB,WAAW,CAAC,MAAuB;IACjD,OAAO;QACL,KAAK,EAAE,IAAA,aAAK,EAAC,MAAM,CAAC;QACpB,QAAQ,EAAE,IAAA,gBAAQ,EAAC,MAAM,CAAC;QAC1B,KAAK,EAAL,aAAK;QACL,WAAW,EAAX,0BAAW;QACX,iBAAiB,EAAE,IAAA,wCAAiB,EAAC,MAAM,CAAC;QAC5C,mBAAmB,EAAE,IAAA,0CAAmB,EAAC,MAAM,CAAC;KACjD,CAAC;AACJ,CAAC;AATD,kCASC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAGA,yCAAyE;AACzE,yCAA2C;AAC3C,uDAA8D;AAC9D,iEAKgC;AAChC,2DAAoE;AAEpE,SAAgB,WAAW,CACzB,MAAc;;IAEd,MAAM,OAAO,GAAG;QACd,KAAK,EAAE,IAAA,aAAK,EAAC,MAAM,CAAC;QACpB,QAAQ,EAAE,IAAA,gBAAQ,EAAC,MAAM,CAAC;QAC1B,KAAK,EAAL,aAAK;QACL,WAAW,EAAX,0BAAW;QACX,iBAAiB,EAAE,IAAA,wCAAiB,EAAC,MAAM,CAAC;QAC5C,mBAAmB,EAAE,IAAA,0CAAmB,EAAC,MAAM,CAAC;KAChB,CAAC;IAEnC,IAAI,MAAA,MAAM,CAAC,MAAM,0CAAE,sBAAsB,EAAE;QACzC,OAAO,CAAC,aAAa,GAAG,IAAA,8BAAa,EAAC,MAAM,CAAC,CAAC;KAC/C;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAjBD,kCAiBC"}
@@ -0,0 +1,12 @@
1
+ import { Session } from '../../session/session';
2
+ import { ConfigInterface } from '../../base-types';
3
+ import { RequestReturn } from '../../clients/http_client/types';
4
+ import { AccessTokenResponse } from './types';
5
+ export declare function createSession({ config, accessTokenResponse, shop, state, }: {
6
+ config: ConfigInterface;
7
+ accessTokenResponse: AccessTokenResponse;
8
+ shop: string;
9
+ state: string;
10
+ }): Session;
11
+ export declare function accessTokenResponse(postResponse: RequestReturn): AccessTokenResponse;
12
+ //# sourceMappingURL=create-session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-session.d.ts","sourceRoot":"","sources":["create-session.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAC,aAAa,EAAC,MAAM,iCAAiC,CAAC;AAI9D,OAAO,EACL,mBAAmB,EAGpB,MAAM,SAAS,CAAC;AAEjB,wBAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,mBAAmB,EACnB,IAAI,EACJ,KAAK,GACN,EAAE;IACD,MAAM,EAAE,eAAe,CAAC;IACxB,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,OAAO,CA4CV;AAED,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,aAAa,GAC1B,mBAAmB,CAUrB"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.accessTokenResponse = exports.createSession = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const uuid_1 = require("uuid");
6
+ const session_1 = require("../../session/session");
7
+ const logger_1 = require("../../logger");
8
+ const session_utils_1 = require("../../session/session-utils");
9
+ function createSession({ config, accessTokenResponse, shop, state, }) {
10
+ const associatedUser = accessTokenResponse
11
+ .associated_user;
12
+ const isOnline = Boolean(associatedUser);
13
+ (0, logger_1.logger)(config).info('Creating new session', { shop, isOnline });
14
+ if (isOnline) {
15
+ let sessionId;
16
+ const responseBody = accessTokenResponse;
17
+ const { access_token, scope } = responseBody, rest = tslib_1.__rest(responseBody, ["access_token", "scope"]);
18
+ const sessionExpiration = new Date(Date.now() + responseBody.expires_in * 1000);
19
+ if (config.isEmbeddedApp) {
20
+ sessionId = (0, session_utils_1.getJwtSessionId)(config)(shop, `${rest.associated_user.id}`);
21
+ }
22
+ else {
23
+ sessionId = (0, uuid_1.v4)();
24
+ }
25
+ return new session_1.Session({
26
+ id: sessionId,
27
+ shop,
28
+ state,
29
+ isOnline,
30
+ accessToken: access_token,
31
+ scope,
32
+ expires: sessionExpiration,
33
+ onlineAccessInfo: rest,
34
+ });
35
+ }
36
+ else {
37
+ return new session_1.Session({
38
+ id: (0, session_utils_1.getOfflineId)(config)(shop),
39
+ shop,
40
+ state,
41
+ isOnline,
42
+ accessToken: accessTokenResponse.access_token,
43
+ scope: accessTokenResponse.scope,
44
+ });
45
+ }
46
+ }
47
+ exports.createSession = createSession;
48
+ function accessTokenResponse(postResponse) {
49
+ const associatedUser = postResponse.body
50
+ .associated_user;
51
+ const isOnline = Boolean(associatedUser);
52
+ if (isOnline) {
53
+ return postResponse.body;
54
+ }
55
+ return postResponse.body;
56
+ }
57
+ exports.accessTokenResponse = accessTokenResponse;
58
+ //# sourceMappingURL=create-session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-session.js","sourceRoot":"","sources":["create-session.ts"],"names":[],"mappings":";;;;AAAA,+BAAkC;AAElC,mDAA8C;AAG9C,yCAAoC;AACpC,+DAA0E;AAQ1E,SAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,mBAAmB,EACnB,IAAI,EACJ,KAAK,GAMN;IACC,MAAM,cAAc,GAAI,mBAA4C;SACjE,eAAe,CAAC;IACnB,MAAM,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAEzC,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAC,CAAC,CAAC;IAE9D,IAAI,QAAQ,EAAE;QACZ,IAAI,SAAiB,CAAC;QACtB,MAAM,YAAY,GAAG,mBAA2C,CAAC;QACjE,MAAM,EAAC,YAAY,EAAE,KAAK,KAAa,YAAY,EAApB,IAAI,kBAAI,YAAY,EAA7C,yBAA8B,CAAe,CAAC;QACpD,MAAM,iBAAiB,GAAG,IAAI,IAAI,CAChC,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,UAAU,GAAG,IAAI,CAC5C,CAAC;QAEF,IAAI,MAAM,CAAC,aAAa,EAAE;YACxB,SAAS,GAAG,IAAA,+BAAe,EAAC,MAAM,CAAC,CACjC,IAAI,EACJ,GAAI,IAAyB,CAAC,eAAe,CAAC,EAAE,EAAE,CACnD,CAAC;SACH;aAAM;YACL,SAAS,GAAG,IAAA,SAAM,GAAE,CAAC;SACtB;QAED,OAAO,IAAI,iBAAO,CAAC;YACjB,EAAE,EAAE,SAAS;YACb,IAAI;YACJ,KAAK;YACL,QAAQ;YACR,WAAW,EAAE,YAAY;YACzB,KAAK;YACL,OAAO,EAAE,iBAAiB;YAC1B,gBAAgB,EAAE,IAAI;SACvB,CAAC,CAAC;KACJ;SAAM;QACL,OAAO,IAAI,iBAAO,CAAC;YACjB,EAAE,EAAE,IAAA,4BAAY,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC;YAC9B,IAAI;YACJ,KAAK;YACL,QAAQ;YACR,WAAW,EAAE,mBAAmB,CAAC,YAAY;YAC7C,KAAK,EAAE,mBAAmB,CAAC,KAAK;SACjC,CAAC,CAAC;KACJ;AACH,CAAC;AAtDD,sCAsDC;AAED,SAAgB,mBAAmB,CACjC,YAA2B;IAE3B,MAAM,cAAc,GAAI,YAAY,CAAC,IAA6B;SAC/D,eAAe,CAAC;IACnB,MAAM,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAEzC,IAAI,QAAQ,EAAE;QACZ,OAAO,YAAY,CAAC,IAA4B,CAAC;KAClD;IAED,OAAO,YAAY,CAAC,IAA2B,CAAC;AAClD,CAAC;AAZD,kDAYC"}
@@ -1,2 +1,3 @@
1
+ export type Nonce = () => string;
1
2
  export declare function nonce(): string;
2
3
  //# sourceMappingURL=nonce.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"nonce.d.ts","sourceRoot":"","sources":["nonce.ts"],"names":[],"mappings":"AAEA,wBAAgB,KAAK,IAAI,MAAM,CAgB9B"}
1
+ {"version":3,"file":"nonce.d.ts","sourceRoot":"","sources":["nonce.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC;AAEjC,wBAAgB,KAAK,IAAI,MAAM,CAgB9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"nonce.js","sourceRoot":"","sources":["nonce.ts"],"names":[],"mappings":";;;AAAA,oDAA+C;AAE/C,SAAgB,KAAK;IACnB,MAAM,MAAM,GAAG,EAAE,CAAC;IAElB,+CAA+C;IAC/C,iEAAiE;IACjE,MAAM,KAAK,GAAG,eAAM,CAAC,eAAe;QAClC,CAAC,CAAC,eAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;QAChD,CAAC,CAAE,eAAc,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,MAAM,KAAK,GAAG,KAAK;SAChB,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE;QACpB,OAAO,IAAI,GAAG,EAAE,CAAC;IACnB,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;IAEZ,OAAO,KAAK,CAAC;AACf,CAAC;AAhBD,sBAgBC"}
1
+ {"version":3,"file":"nonce.js","sourceRoot":"","sources":["nonce.ts"],"names":[],"mappings":";;;AAAA,oDAA+C;AAI/C,SAAgB,KAAK;IACnB,MAAM,MAAM,GAAG,EAAE,CAAC;IAElB,+CAA+C;IAC/C,iEAAiE;IACjE,MAAM,KAAK,GAAG,eAAM,CAAC,eAAe;QAClC,CAAC,CAAC,eAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;QAChD,CAAC,CAAE,eAAc,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,MAAM,KAAK,GAAG,KAAK;SAChB,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE;QACpB,OAAO,IAAI,GAAG,EAAE,CAAC;IACnB,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;IAEZ,OAAO,KAAK,CAAC;AACf,CAAC;AAhBD,sBAgBC"}
@@ -2,10 +2,12 @@ import { ConfigInterface } from '../../base-types';
2
2
  import { Session } from '../../session/session';
3
3
  import { AdapterResponse, AdapterHeaders } from '../../../runtime/http';
4
4
  import { BeginParams, CallbackParams } from './types';
5
+ export type OAuthBegin = (beginParams: BeginParams) => Promise<AdapterResponse>;
5
6
  export interface CallbackResponse<T = AdapterHeaders> {
6
7
  headers: T;
7
8
  session: Session;
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>({ ...adapterArgs }: CallbackParams) => Promise<CallbackResponse<T>>;
10
+ export type OAuthCallback = <T = AdapterHeaders>(callbackParams: CallbackParams) => Promise<CallbackResponse<T>>;
11
+ export declare function begin(config: ConfigInterface): OAuthBegin;
12
+ export declare function callback(config: ConfigInterface): OAuthCallback;
11
13
  //# sourceMappingURL=oauth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["oauth.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AAIjD,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAC;AAI9C,OAAO,EAKL,eAAe,EACf,cAAc,EAIf,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;AAcD,wBAAgB,KAAK,CAAC,MAAM,EAAE,eAAe,sDAMxC,WAAW,KAAG,QAAQ,eAAe,CAAC,CAwD1C;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,eAAe,iCAG3C,cAAc,kCA2FlB"}
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;AAG9C,OAAO,EAKL,eAAe,EACf,cAAc,EAIf,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAGL,WAAW,EACX,cAAc,EAEf,MAAM,SAAS,CAAC;AAKjB,MAAM,MAAM,UAAU,GAAG,CAAC,WAAW,EAAE,WAAW,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;AAEhF,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,cAAc;IAClD,OAAO,EAAE,CAAC,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,GAAG,cAAc,EAC7C,cAAc,EAAE,cAAc,KAC3B,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;AAclC,wBAAgB,KAAK,CAAC,MAAM,EAAE,eAAe,GAAG,UAAU,CA8DzD;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,aAAa,CA8F/D"}
@@ -2,14 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.callback = exports.begin = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const uuid_1 = require("uuid");
6
5
  const isbot_1 = tslib_1.__importDefault(require("isbot"));
7
6
  const processed_query_1 = tslib_1.__importDefault(require("../../utils/processed-query"));
8
7
  const ShopifyErrors = tslib_1.__importStar(require("../../error"));
9
8
  const hmac_validator_1 = require("../../utils/hmac-validator");
10
9
  const shop_validator_1 = require("../../utils/shop-validator");
11
- const session_1 = require("../../session/session");
12
- const session_utils_1 = require("../../session/session-utils");
13
10
  const http_client_1 = require("../../clients/http_client/http_client");
14
11
  const types_1 = require("../../clients/http_client/types");
15
12
  const http_1 = require("../../../runtime/http");
@@ -17,6 +14,7 @@ const logger_1 = require("../../logger");
17
14
  const types_2 = require("./types");
18
15
  const nonce_1 = require("./nonce");
19
16
  const safe_compare_1 = require("./safe-compare");
17
+ const create_session_1 = require("./create-session");
20
18
  const logForBot = ({ request, log, func }) => {
21
19
  log.debug(`Possible bot request to auth ${func}: `, {
22
20
  userAgent: request.headers['User-Agent'],
@@ -110,10 +108,10 @@ function callback(config) {
110
108
  const HttpClient = (0, http_client_1.httpClientClass)(config);
111
109
  const client = new HttpClient({ domain: cleanShop });
112
110
  const postResponse = yield client.post(postParams);
113
- const session = createSession({
114
- postResponse,
111
+ const session = (0, create_session_1.createSession)({
112
+ accessTokenResponse: (0, create_session_1.accessTokenResponse)(postResponse),
115
113
  shop: cleanShop,
116
- stateFromCookie,
114
+ state: stateFromCookie,
117
115
  config,
118
116
  });
119
117
  if (!config.isEmbeddedApp) {
@@ -138,45 +136,6 @@ function validQuery({ config, query, stateFromCookie, }) {
138
136
  (0, safe_compare_1.safeCompare)(query.state, stateFromCookie));
139
137
  });
140
138
  }
141
- function createSession({ config, postResponse, shop, stateFromCookie, }) {
142
- const associatedUser = postResponse.body
143
- .associated_user;
144
- const isOnline = Boolean(associatedUser);
145
- (0, logger_1.logger)(config).info('Creating new session', { shop, isOnline });
146
- if (isOnline) {
147
- let sessionId;
148
- const responseBody = postResponse.body;
149
- const { access_token, scope } = responseBody, rest = tslib_1.__rest(responseBody, ["access_token", "scope"]);
150
- const sessionExpiration = new Date(Date.now() + responseBody.expires_in * 1000);
151
- if (config.isEmbeddedApp) {
152
- sessionId = (0, session_utils_1.getJwtSessionId)(config)(shop, `${rest.associated_user.id}`);
153
- }
154
- else {
155
- sessionId = (0, uuid_1.v4)();
156
- }
157
- return new session_1.Session({
158
- id: sessionId,
159
- shop,
160
- state: stateFromCookie,
161
- isOnline,
162
- accessToken: access_token,
163
- scope,
164
- expires: sessionExpiration,
165
- onlineAccessInfo: rest,
166
- });
167
- }
168
- else {
169
- const responseBody = postResponse.body;
170
- return new session_1.Session({
171
- id: (0, session_utils_1.getOfflineId)(config)(shop),
172
- shop,
173
- state: stateFromCookie,
174
- isOnline,
175
- accessToken: responseBody.access_token,
176
- scope: responseBody.scope,
177
- });
178
- }
179
- }
180
139
  function throwIfCustomStoreApp(isCustomStoreApp, message) {
181
140
  if (isCustomStoreApp) {
182
141
  throw new ShopifyErrors.PrivateAppError(message);
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.js","sourceRoot":"","sources":["oauth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth.js","sourceRoot":"","sources":["oauth.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
- export declare function safeCompare(strA: string | {
1
+ export type SafeCompare = (strA: string | {
2
2
  [key: string]: string;
3
3
  } | string[] | number[], strB: string | {
4
4
  [key: string]: string;
5
- } | string[] | number[]): boolean;
5
+ } | string[] | number[]) => boolean;
6
+ export declare const safeCompare: SafeCompare;
6
7
  //# sourceMappingURL=safe-compare.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"safe-compare.d.ts","sourceRoot":"","sources":["safe-compare.ts"],"names":[],"mappings":"AAEA,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,GAAG;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAC,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,EAC5D,IAAI,EAAE,MAAM,GAAG;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAC,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,GAC3D,OAAO,CAeT"}
1
+ {"version":3,"file":"safe-compare.d.ts","sourceRoot":"","sources":["safe-compare.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,GAAG,CACxB,IAAI,EAAE,MAAM,GAAG;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAC,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,EAC5D,IAAI,EAAE,MAAM,GAAG;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAC,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,KACzD,OAAO,CAAC;AAEb,eAAO,MAAM,WAAW,EAAE,WAezB,CAAC"}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.safeCompare = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const ShopifyErrors = tslib_1.__importStar(require("../../error"));
6
- function safeCompare(strA, strB) {
6
+ const safeCompare = (strA, strB) => {
7
7
  if (typeof strA === typeof strB) {
8
8
  const enc = new TextEncoder();
9
9
  const buffA = enc.encode(JSON.stringify(strA));
@@ -16,7 +16,7 @@ function safeCompare(strA, strB) {
16
16
  throw new ShopifyErrors.SafeCompareError(`Mismatched data types provided: ${typeof strA} and ${typeof strB}`);
17
17
  }
18
18
  return false;
19
- }
19
+ };
20
20
  exports.safeCompare = safeCompare;
21
21
  // Buffer must be same length for this function to be secure.
22
22
  function timingSafeEqual(bufA, bufB) {
@@ -1 +1 @@
1
- {"version":3,"file":"safe-compare.js","sourceRoot":"","sources":["safe-compare.ts"],"names":[],"mappings":";;;;AAAA,mEAA6C;AAE7C,SAAgB,WAAW,CACzB,IAA4D,EAC5D,IAA4D;IAE5D,IAAI,OAAO,IAAI,KAAK,OAAO,IAAI,EAAE;QAC/B,MAAM,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAE/C,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,EAAE;YACjC,OAAO,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;SACtC;KACF;SAAM;QACL,MAAM,IAAI,aAAa,CAAC,gBAAgB,CACtC,mCAAmC,OAAO,IAAI,QAAQ,OAAO,IAAI,EAAE,CACpE,CAAC;KACH;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAlBD,kCAkBC;AAED,6DAA6D;AAC7D,SAAS,eAAe,CAAC,IAAiB,EAAE,IAAiB;IAC3D,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACrC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;KAC5B;IACD,OAAO,GAAG,KAAK,CAAC,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"safe-compare.js","sourceRoot":"","sources":["safe-compare.ts"],"names":[],"mappings":";;;;AAAA,mEAA6C;AAOtC,MAAM,WAAW,GAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;IACrD,IAAI,OAAO,IAAI,KAAK,OAAO,IAAI,EAAE;QAC/B,MAAM,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAE/C,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,EAAE;YACjC,OAAO,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;SACtC;KACF;SAAM;QACL,MAAM,IAAI,aAAa,CAAC,gBAAgB,CACtC,mCAAmC,OAAO,IAAI,QAAQ,OAAO,IAAI,EAAE,CACpE,CAAC;KACH;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAfW,QAAA,WAAW,eAetB;AAEF,6DAA6D;AAC7D,SAAS,eAAe,CAAC,IAAiB,EAAE,IAAiB;IAC3D,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACrC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;KAC5B;IACD,OAAO,GAAG,KAAK,CAAC,CAAC;AACnB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { ConfigInterface } from '../../base-types';
2
+ import { Session } from '../../session/session';
3
+ export declare enum RequestedTokenType {
4
+ OnlineAccessToken = "urn:shopify:params:oauth:token-type:online-access-token",
5
+ OfflineAccessToken = "urn:shopify:params:oauth:token-type:offline-access-token"
6
+ }
7
+ export interface TokenExchangeParams {
8
+ shop: string;
9
+ sessionToken: string;
10
+ requestedTokenType: RequestedTokenType;
11
+ }
12
+ export type TokenExchange = (params: TokenExchangeParams) => Promise<{
13
+ session: Session;
14
+ }>;
15
+ export declare function tokenExchange(config: ConfigInterface): TokenExchange;
16
+ //# sourceMappingURL=token-exchange.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-exchange.d.ts","sourceRoot":"","sources":["token-exchange.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AAGjD,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAC;AAI9C,oBAAY,kBAAkB;IAC5B,iBAAiB,4DAA4D;IAC7E,kBAAkB,6DAA6D;CAChF;AAMD,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,kBAAkB,CAAC;CACxC;AAED,MAAM,MAAM,aAAa,GAAG,CAC1B,MAAM,EAAE,mBAAmB,KACxB,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAC,CAAC,CAAC;AAEjC,wBAAgB,aAAa,CAAC,MAAM,EAAE,eAAe,GAAG,aAAa,CAyCpE"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.tokenExchange = exports.RequestedTokenType = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const decode_session_token_1 = require("../../session/decode-session-token");
6
+ const shop_validator_1 = require("../../utils/shop-validator");
7
+ const types_1 = require("../../clients/http_client/types");
8
+ const http_client_1 = require("../../clients/http_client/http_client");
9
+ const create_session_1 = require("./create-session");
10
+ var RequestedTokenType;
11
+ (function (RequestedTokenType) {
12
+ RequestedTokenType["OnlineAccessToken"] = "urn:shopify:params:oauth:token-type:online-access-token";
13
+ RequestedTokenType["OfflineAccessToken"] = "urn:shopify:params:oauth:token-type:offline-access-token";
14
+ })(RequestedTokenType = exports.RequestedTokenType || (exports.RequestedTokenType = {}));
15
+ const TokenExchangeGrantType = 'urn:ietf:params:oauth:grant-type:token-exchange';
16
+ const IdTokenType = 'urn:ietf:params:oauth:token-type:id_token';
17
+ function tokenExchange(config) {
18
+ return ({ shop, sessionToken, requestedTokenType, }) => tslib_1.__awaiter(this, void 0, void 0, function* () {
19
+ yield (0, decode_session_token_1.decodeSessionToken)(config)(sessionToken);
20
+ const body = {
21
+ client_id: config.apiKey,
22
+ client_secret: config.apiSecretKey,
23
+ grant_type: TokenExchangeGrantType,
24
+ subject_token: sessionToken,
25
+ subject_token_type: IdTokenType,
26
+ requested_token_type: requestedTokenType,
27
+ };
28
+ const postParams = {
29
+ path: '/admin/oauth/access_token',
30
+ type: types_1.DataType.JSON,
31
+ data: body,
32
+ extraHeaders: {
33
+ Accept: types_1.DataType.JSON,
34
+ },
35
+ };
36
+ const cleanShop = (0, shop_validator_1.sanitizeShop)(config)(shop, true);
37
+ const HttpClient = (0, http_client_1.httpClientClass)(config);
38
+ const client = new HttpClient({ domain: cleanShop });
39
+ const postResponse = yield client.post(postParams);
40
+ return {
41
+ session: (0, create_session_1.createSession)({
42
+ accessTokenResponse: (0, create_session_1.accessTokenResponse)(postResponse),
43
+ shop: cleanShop,
44
+ // We need to keep this as an empty string as our template DB schemas have this required
45
+ state: '',
46
+ config,
47
+ }),
48
+ };
49
+ });
50
+ }
51
+ exports.tokenExchange = tokenExchange;
52
+ //# sourceMappingURL=token-exchange.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-exchange.js","sourceRoot":"","sources":["token-exchange.ts"],"names":[],"mappings":";;;;AAAA,6EAAsE;AACtE,+DAAwD;AAExD,2DAAyD;AACzD,uEAAsE;AAGtE,qDAAoE;AAEpE,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,mGAA6E,CAAA;IAC7E,qGAA+E,CAAA;AACjF,CAAC,EAHW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAG7B;AAED,MAAM,sBAAsB,GAC1B,iDAAiD,CAAC;AACpD,MAAM,WAAW,GAAG,2CAA2C,CAAC;AAYhE,SAAgB,aAAa,CAAC,MAAuB;IACnD,OAAO,CAAO,EACZ,IAAI,EACJ,YAAY,EACZ,kBAAkB,GACE,EAAE,EAAE;QACxB,MAAM,IAAA,yCAAkB,EAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAE/C,MAAM,IAAI,GAAG;YACX,SAAS,EAAE,MAAM,CAAC,MAAM;YACxB,aAAa,EAAE,MAAM,CAAC,YAAY;YAClC,UAAU,EAAE,sBAAsB;YAClC,aAAa,EAAE,YAAY;YAC3B,kBAAkB,EAAE,WAAW;YAC/B,oBAAoB,EAAE,kBAAkB;SACzC,CAAC;QAEF,MAAM,UAAU,GAAG;YACjB,IAAI,EAAE,2BAA2B;YACjC,IAAI,EAAE,gBAAQ,CAAC,IAAI;YACnB,IAAI,EAAE,IAAI;YACV,YAAY,EAAE;gBACZ,MAAM,EAAE,gBAAQ,CAAC,IAAI;aACtB;SACF,CAAC;QAEF,MAAM,SAAS,GAAG,IAAA,6BAAY,EAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,CAAE,CAAC;QACpD,MAAM,UAAU,GAAG,IAAA,6BAAe,EAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,EAAC,MAAM,EAAE,SAAS,EAAC,CAAC,CAAC;QACnD,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEnD,OAAO;YACL,OAAO,EAAE,IAAA,8BAAa,EAAC;gBACrB,mBAAmB,EAAE,IAAA,oCAAmB,EAAC,YAAY,CAAC;gBACtD,IAAI,EAAE,SAAS;gBACf,wFAAwF;gBACxF,KAAK,EAAE,EAAE;gBACT,MAAM;aACP,CAAC;SACH,CAAC;IACJ,CAAC,CAAA,CAAC;AACJ,CAAC;AAzCD,sCAyCC"}
@@ -1,5 +1,6 @@
1
1
  import { AdapterArgs } from '../../runtime/http';
2
2
  export * from './oauth/types';
3
+ export { RequestedTokenType } from './oauth/token-exchange';
3
4
  export interface GetEmbeddedAppUrlParams extends AdapterArgs {
4
5
  }
5
6
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAE/C,cAAc,eAAe,CAAC;AAE9B,MAAM,WAAW,uBAAwB,SAAQ,WAAW;CAAG"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAE/C,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAC,kBAAkB,EAAC,MAAM,wBAAwB,CAAC;AAE1D,MAAM,WAAW,uBAAwB,SAAQ,WAAW;CAAG"}
package/lib/auth/types.js CHANGED
@@ -1,5 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RequestedTokenType = void 0;
3
4
  const tslib_1 = require("tslib");
4
5
  tslib_1.__exportStar(require("./oauth/types"), exports);
6
+ var token_exchange_1 = require("./oauth/token-exchange");
7
+ Object.defineProperty(exports, "RequestedTokenType", { enumerable: true, get: function () { return token_exchange_1.RequestedTokenType; } });
5
8
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":";;;AAEA,wDAA8B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":";;;;AAEA,wDAA8B;AAC9B,yDAA0D;AAAlD,oHAAA,kBAAkB,OAAA"}
@@ -4,7 +4,7 @@ import { AuthScopes } from './auth/scopes';
4
4
  import { BillingConfig } from './billing/types';
5
5
  import { ApiVersion, LogSeverity } from './types';
6
6
  export type LogFunction = (severity: LogSeverity, msg: string) => void;
7
- export interface ConfigParams<Resources extends ShopifyRestResources = ShopifyRestResources> {
7
+ export interface ConfigParams<Resources extends ShopifyRestResources = ShopifyRestResources, Future extends FutureFlagOptions = FutureFlagOptions> {
8
8
  apiKey?: string;
9
9
  apiSecretKey: string;
10
10
  scopes?: string[] | AuthScopes;
@@ -17,7 +17,7 @@ export interface ConfigParams<Resources extends ShopifyRestResources = ShopifyRe
17
17
  userAgentPrefix?: string;
18
18
  privateAppStorefrontAccessToken?: string;
19
19
  customShopDomains?: (RegExp | string)[];
20
- billing?: BillingConfig;
20
+ billing?: BillingConfig<Future>;
21
21
  restResources?: Resources;
22
22
  logger?: {
23
23
  log?: LogFunction;
@@ -25,13 +25,14 @@ export interface ConfigParams<Resources extends ShopifyRestResources = ShopifyRe
25
25
  httpRequests?: boolean;
26
26
  timestamps?: boolean;
27
27
  };
28
- future?: FutureFlagOptions;
28
+ future?: Future;
29
29
  }
30
30
  export type ConfigInterface<Params extends ConfigParams = ConfigParams> = Omit<Params, 'restResources'> & {
31
31
  apiKey: string;
32
32
  hostScheme: 'http' | 'https';
33
33
  scopes: AuthScopes;
34
34
  isCustomStoreApp: boolean;
35
+ billing?: BillingConfig<Params['future']>;
35
36
  logger: {
36
37
  log: LogFunction;
37
38
  level: LogSeverity;
@@ -1 +1 @@
1
- {"version":3,"file":"base-types.d.ts","sourceRoot":"","sources":["base-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAC,oBAAoB,EAAC,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,UAAU,EAAE,WAAW,EAAC,MAAM,SAAS,CAAC;AAEhD,MAAM,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;AAEvE,MAAM,WAAW,YAAY,CAC3B,SAAS,SAAS,oBAAoB,GAAG,oBAAoB;IAE7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC9B,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,+BAA+B,CAAC,EAAE,MAAM,CAAC;IACzC,iBAAiB,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACxC,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE;QACP,GAAG,CAAC,EAAE,WAAW,CAAC;QAClB,KAAK,CAAC,EAAE,WAAW,CAAC;QACpB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB,CAAC;IACF,MAAM,CAAC,EAAE,iBAAiB,CAAC;CAC5B;AAED,MAAM,MAAM,eAAe,CAAC,MAAM,SAAS,YAAY,GAAG,YAAY,IAAI,IAAI,CAC5E,MAAM,EACN,eAAe,CAChB,GAAG;IACF,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;IAC7B,MAAM,EAAE,UAAU,CAAC;IACnB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,MAAM,EAAE;QACN,GAAG,EAAE,WAAW,CAAC;QACjB,KAAK,EAAE,WAAW,CAAC;QACnB,YAAY,EAAE,OAAO,CAAC;QACtB,UAAU,EAAE,OAAO,CAAC;KACrB,CAAC;IACF,MAAM,EAAE,iBAAiB,CAAC;CAC3B,CAAC"}
1
+ {"version":3,"file":"base-types.d.ts","sourceRoot":"","sources":["base-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAC,oBAAoB,EAAC,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,UAAU,EAAE,WAAW,EAAC,MAAM,SAAS,CAAC;AAEhD,MAAM,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;AAEvE,MAAM,WAAW,YAAY,CAC3B,SAAS,SAAS,oBAAoB,GAAG,oBAAoB,EAC7D,MAAM,SAAS,iBAAiB,GAAG,iBAAiB;IAEpD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC9B,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,+BAA+B,CAAC,EAAE,MAAM,CAAC;IACzC,iBAAiB,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACxC,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAChC,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE;QACP,GAAG,CAAC,EAAE,WAAW,CAAC;QAClB,KAAK,CAAC,EAAE,WAAW,CAAC;QACpB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB,CAAC;IACF,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,eAAe,CAAC,MAAM,SAAS,YAAY,GAAG,YAAY,IAAI,IAAI,CAC5E,MAAM,EACN,eAAe,CAChB,GAAG;IACF,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;IAC7B,MAAM,EAAE,UAAU,CAAC;IACnB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1C,MAAM,EAAE;QACN,GAAG,EAAE,WAAW,CAAC;QACjB,KAAK,EAAE,WAAW,CAAC;QACnB,YAAY,EAAE,OAAO,CAAC;QACtB,UAAU,EAAE,OAAO,CAAC;KACrB,CAAC;IACF,MAAM,EAAE,iBAAiB,CAAC;CAC3B,CAAC"}
@@ -1,4 +1,5 @@
1
- import { ConfigInterface } from '../base-types';
1
+ import { ConfigInterface, ConfigParams } from '../base-types';
2
+ import { FutureFlagOptions } from '../../future/flags';
2
3
  import { BillingRequestParams, BillingRequestResponse } from './types';
3
- export declare function request(config: ConfigInterface): <Params_1 extends BillingRequestParams>({ session, plan, isTest, returnUrl: returnUrlParam, returnObject, ...overrides }: Params_1) => Promise<BillingRequestResponse<Params_1>>;
4
+ export declare function request<Config extends ConfigInterface<Params>, Params extends ConfigParams<any, Future>, Future extends FutureFlagOptions>(config: Config): <Params_1 extends BillingRequestParams>({ session, plan, isTest, returnUrl: returnUrlParam, returnObject, ...overrides }: Params_1) => Promise<BillingRequestResponse<Params_1>>;
4
5
  //# sourceMappingURL=request.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAW9C,OAAO,EAIL,oBAAoB,EACpB,sBAAsB,EAKvB,MAAM,SAAS,CAAC;AAqBjB,wBAAgB,OAAO,CAAC,MAAM,EAAE,eAAe,oLAsF9C"}
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAE,YAAY,EAAC,MAAM,eAAe,CAAC;AAU5D,OAAO,EAAC,iBAAiB,EAAC,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAIL,oBAAoB,EACpB,sBAAsB,EAMvB,MAAM,SAAS,CAAC;AAyBjB,wBAAgB,OAAO,CACrB,MAAM,SAAS,eAAe,CAAC,MAAM,CAAC,EACtC,MAAM,SAAS,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,EACxC,MAAM,SAAS,iBAAiB,EAChC,MAAM,EAAE,MAAM,oLAmHf"}
@@ -28,39 +28,57 @@ function request(config) {
28
28
  const returnUrl = returnUrlParam || (config.isEmbeddedApp ? embeddedAppUrl : appUrl);
29
29
  const GraphqlClient = (0, graphql_client_1.graphqlClientClass)({ config });
30
30
  const client = new GraphqlClient({ session });
31
+ function isLineItemPlan(billingConfig) {
32
+ return 'lineItems' in billingConfig;
33
+ }
34
+ function isOneTimePlan(billingConfig) {
35
+ return billingConfig.interval === types_1.BillingInterval.OneTime;
36
+ }
31
37
  let data;
32
- switch (billingConfig.interval) {
33
- case types_1.BillingInterval.OneTime: {
34
- const mutationOneTimeResponse = yield requestSinglePayment({
35
- billingConfig: Object.assign(Object.assign({}, billingConfig), filteredOverrides),
36
- plan,
37
- client,
38
- returnUrl,
39
- isTest,
40
- });
41
- data = mutationOneTimeResponse.data.appPurchaseOneTimeCreate;
42
- break;
43
- }
44
- case types_1.BillingInterval.Usage: {
45
- const mutationUsageResponse = yield requestUsagePayment({
46
- billingConfig: Object.assign(Object.assign({}, billingConfig), filteredOverrides),
47
- plan,
48
- client,
49
- returnUrl,
50
- isTest,
51
- });
52
- data = mutationUsageResponse.data.appSubscriptionCreate;
53
- break;
54
- }
55
- default: {
56
- const mutationRecurringResponse = yield requestRecurringPayment({
57
- billingConfig: Object.assign(Object.assign({}, billingConfig), filteredOverrides),
58
- plan,
59
- client,
60
- returnUrl,
61
- isTest,
62
- });
63
- data = mutationRecurringResponse.data.appSubscriptionCreate;
38
+ if (isLineItemPlan(billingConfig)) {
39
+ const mergedBillingConfigs = mergeBillingConfigs(billingConfig, filteredOverrides);
40
+ const mutationRecurringResponse = yield requestSubscriptionPayment({
41
+ billingConfig: mergedBillingConfigs,
42
+ plan,
43
+ client,
44
+ returnUrl,
45
+ isTest,
46
+ });
47
+ data = mutationRecurringResponse.data.appSubscriptionCreate;
48
+ }
49
+ else if (isOneTimePlan(billingConfig)) {
50
+ const mutationOneTimeResponse = yield requestSinglePayment({
51
+ billingConfig: Object.assign(Object.assign({}, billingConfig), filteredOverrides),
52
+ plan,
53
+ client,
54
+ returnUrl,
55
+ isTest,
56
+ });
57
+ data = mutationOneTimeResponse.data.appPurchaseOneTimeCreate;
58
+ }
59
+ else {
60
+ switch (billingConfig.interval) {
61
+ case types_1.BillingInterval.Usage: {
62
+ const mutationUsageResponse = yield requestUsagePayment({
63
+ billingConfig: Object.assign(Object.assign({}, billingConfig), filteredOverrides),
64
+ plan,
65
+ client,
66
+ returnUrl,
67
+ isTest,
68
+ });
69
+ data = mutationUsageResponse.data.appSubscriptionCreate;
70
+ break;
71
+ }
72
+ default: {
73
+ const mutationRecurringResponse = yield requestRecurringPayment({
74
+ billingConfig: Object.assign(Object.assign({}, billingConfig), filteredOverrides),
75
+ plan,
76
+ client,
77
+ returnUrl,
78
+ isTest,
79
+ });
80
+ data = mutationRecurringResponse.data.appSubscriptionCreate;
81
+ }
64
82
  }
65
83
  }
66
84
  if ((_b = data.userErrors) === null || _b === void 0 ? void 0 : _b.length) {
@@ -79,6 +97,77 @@ function request(config) {
79
97
  };
80
98
  }
81
99
  exports.request = request;
100
+ function requestSubscriptionPayment({ billingConfig, plan, client, returnUrl, isTest, }) {
101
+ var _a;
102
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
103
+ const lineItems = billingConfig.lineItems.map((item) => {
104
+ if (item.interval === types_1.BillingInterval.Every30Days ||
105
+ item.interval === types_1.BillingInterval.Annual) {
106
+ const appRecurringPricingDetails = {
107
+ interval: item.interval,
108
+ price: {
109
+ amount: item.amount,
110
+ currencyCode: item.currencyCode,
111
+ },
112
+ };
113
+ if (item.discount) {
114
+ appRecurringPricingDetails.discount = {
115
+ durationLimitInIntervals: item.discount.durationLimitInIntervals,
116
+ value: {
117
+ amount: item.discount.value.amount,
118
+ percentage: item.discount.value.percentage,
119
+ },
120
+ };
121
+ }
122
+ return {
123
+ plan: {
124
+ appRecurringPricingDetails,
125
+ },
126
+ };
127
+ }
128
+ else if (item.interval === types_1.BillingInterval.Usage) {
129
+ const appUsagePricingDetails = {
130
+ terms: item.terms,
131
+ cappedAmount: {
132
+ amount: item.amount,
133
+ currencyCode: item.currencyCode,
134
+ },
135
+ };
136
+ return {
137
+ plan: {
138
+ appUsagePricingDetails,
139
+ },
140
+ };
141
+ }
142
+ else {
143
+ throw new error_1.BillingError({
144
+ message: 'Invalid interval provided',
145
+ errorData: [item],
146
+ });
147
+ }
148
+ });
149
+ const mutationResponse = yield client.query({
150
+ data: {
151
+ query: RECURRING_PURCHASE_MUTATION,
152
+ variables: {
153
+ name: plan,
154
+ trialDays: billingConfig.trialDays,
155
+ replacementBehavior: billingConfig.replacementBehavior,
156
+ returnUrl,
157
+ test: isTest,
158
+ lineItems,
159
+ },
160
+ },
161
+ });
162
+ if ((_a = mutationResponse.body.errors) === null || _a === void 0 ? void 0 : _a.length) {
163
+ throw new error_1.BillingError({
164
+ message: 'Error while billing the store',
165
+ errorData: mutationResponse.body.errors,
166
+ });
167
+ }
168
+ return mutationResponse.body;
169
+ });
170
+ }
82
171
  function requestRecurringPayment({ billingConfig, plan, client, returnUrl, isTest, }) {
83
172
  var _a, _b, _c, _d, _e, _f;
84
173
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
@@ -186,6 +275,27 @@ function requestSinglePayment({ billingConfig, plan, client, returnUrl, isTest,
186
275
  return mutationResponse.body;
187
276
  });
188
277
  }
278
+ function mergeBillingConfigs(billingConfig, overrides) {
279
+ const mergedConfig = Object.assign(Object.assign({}, billingConfig), overrides);
280
+ const mergedLineItems = [];
281
+ if (billingConfig.lineItems && overrides.lineItems) {
282
+ for (const i of billingConfig.lineItems) {
283
+ let found = false;
284
+ for (const j of overrides.lineItems) {
285
+ if (i.interval === j.interval) {
286
+ mergedLineItems.push(Object.assign(Object.assign({}, i), j));
287
+ found = true;
288
+ break;
289
+ }
290
+ }
291
+ if (!found) {
292
+ mergedLineItems.push(i);
293
+ }
294
+ }
295
+ mergedConfig.lineItems = mergedLineItems;
296
+ }
297
+ return mergedConfig;
298
+ }
189
299
  const RECURRING_PURCHASE_MUTATION = `
190
300
  mutation test(
191
301
  $name: String!
@@ -1 +1 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["request.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { BillingInterval, BillingReplacementBehavior, RecurringBillingIntervals } from '../types';
2
2
  import { Session } from '../session/session';
3
+ import { FeatureEnabled, FutureFlagOptions } from '../../future/flags';
3
4
  export interface BillingConfigPlan {
4
5
  amount: number;
5
6
  currencyCode: string;
@@ -31,11 +32,30 @@ export interface BillingConfigUsagePlan extends BillingConfigPlan {
31
32
  trialDays?: number;
32
33
  replacementBehavior?: BillingReplacementBehavior;
33
34
  }
34
- export type BillingConfigItem = BillingConfigOneTimePlan | BillingConfigSubscriptionPlan | BillingConfigUsagePlan;
35
- export interface BillingConfig {
36
- [plan: string]: BillingConfigItem;
35
+ export type BillingConfigLegacyItem = BillingConfigOneTimePlan | BillingConfigSubscriptionPlan | BillingConfigUsagePlan;
36
+ export type BillingConfigItem<Future extends FutureFlagOptions = FutureFlagOptions> = FeatureEnabled<Future, 'unstable_lineItemBilling'> extends true ? BillingConfigOneTimePlan | BillingConfigSubscriptionLineItemPlan : BillingConfigLegacyItem;
37
+ export interface BillingConfig<Future extends FutureFlagOptions = FutureFlagOptions> {
38
+ [plan: string]: BillingConfigItem<Future>;
37
39
  }
38
40
  export type RequestConfigOverrides = Partial<BillingConfigOneTimePlan> | Partial<BillingConfigSubscriptionPlan> | Partial<BillingConfigUsagePlan>;
41
+ export interface BillingConfigLineItem {
42
+ amount: number;
43
+ currencyCode: string;
44
+ }
45
+ export interface BillingConfigRecurringLineItem extends BillingConfigLineItem {
46
+ interval: BillingInterval.Every30Days | BillingInterval.Annual;
47
+ discount?: BillingConfigSubscriptionPlanDiscount;
48
+ }
49
+ export interface BillingConfigUsageLineItem extends BillingConfigLineItem {
50
+ interval: BillingInterval.Usage;
51
+ terms: string;
52
+ }
53
+ export interface BillingConfigSubscriptionLineItemPlan {
54
+ replacementBehavior?: BillingReplacementBehavior;
55
+ trialDays?: number;
56
+ lineItems: (BillingConfigRecurringLineItem | BillingConfigUsageLineItem)[];
57
+ }
58
+ export type RequestConfigLineItemOverrides = Partial<BillingConfigSubscriptionLineItemPlan>;
39
59
  export interface BillingCheckParams {
40
60
  session: Session;
41
61
  plans: string[] | string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { ShopifyRestResources } from '../rest/types';
2
+ import { FutureFlagOptions } from '../future/flags';
2
3
  import { ConfigParams, ConfigInterface } from './base-types';
3
4
  import { ShopifyClients } from './clients';
4
5
  import { ShopifyAuth } from './auth';
@@ -21,7 +22,7 @@ type DefaultedResources<Resources extends ShopifyRestResources | undefined> = Re
21
22
  export interface Shopify<Params extends ConfigParams = ConfigParams, Resources extends DefaultedResources<Params['restResources']> = DefaultedResources<Params['restResources']>, Config extends ConfigInterface<Params> = ConfigInterface<Params>> {
22
23
  config: Config;
23
24
  clients: ShopifyClients;
24
- auth: ShopifyAuth;
25
+ auth: ShopifyAuth<Params['future']>;
25
26
  session: ShopifySession;
26
27
  utils: ShopifyUtils;
27
28
  webhooks: ShopifyWebhooks;
@@ -29,5 +30,7 @@ export interface Shopify<Params extends ConfigParams = ConfigParams, Resources e
29
30
  logger: ShopifyLogger;
30
31
  rest: Resources;
31
32
  }
32
- export declare function shopifyApi<Params extends ConfigParams, Resources extends DefaultedResources<Params['restResources']>>(config: Params): Shopify<Params, Resources, ConfigInterface<Params>>;
33
+ export declare function shopifyApi<Params extends ConfigParams<any, Future>, Resources extends DefaultedResources<Params['restResources']>, Future extends FutureFlagOptions>({ future, ...config }: {
34
+ future?: Future;
35
+ } & Params): Shopify<Params, Resources, ConfigInterface<Params>>;
33
36
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,oBAAoB,EAAC,MAAM,eAAe,CAAC;AAGnD,OAAO,EAAC,YAAY,EAAE,eAAe,EAAC,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAgB,cAAc,EAAC,MAAM,WAAW,CAAC;AACxD,OAAO,EAAc,WAAW,EAAC,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAiB,cAAc,EAAC,MAAM,WAAW,CAAC;AACzD,OAAO,EAAe,YAAY,EAAC,MAAM,SAAS,CAAC;AACnD,OAAO,EAAkB,eAAe,EAAC,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAiB,cAAc,EAAC,MAAM,WAAW,CAAC;AACzD,OAAO,EAAS,aAAa,EAAC,MAAM,UAAU,CAAC;AAG/C,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAElC,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AAEjC,KAAK,kBAAkB,CAAC,SAAS,SAAS,oBAAoB,GAAG,SAAS,IACxE,SAAS,SAAS,SAAS,GAAG,oBAAoB,GAAG,SAAS,CAAC;AAEjE,MAAM,WAAW,OAAO,CACtB,MAAM,SAAS,YAAY,GAAG,YAAY,EAC1C,SAAS,SAAS,kBAAkB,CAClC,MAAM,CAAC,eAAe,CAAC,CACxB,GAAG,kBAAkB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EAC/C,MAAM,SAAS,eAAe,CAAC,MAAM,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC;IAEhE,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,cAAc,CAAC;IACxB,KAAK,EAAE,YAAY,CAAC;IACpB,QAAQ,EAAE,eAAe,CAAC;IAC1B,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,EAAE,SAAS,CAAC;CACjB;AAED,wBAAgB,UAAU,CACxB,MAAM,SAAS,YAAY,EAC3B,SAAS,SAAS,kBAAkB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EAC7D,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC,CAiCrE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,oBAAoB,EAAC,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAElD,OAAO,EAAC,YAAY,EAAE,eAAe,EAAC,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAgB,cAAc,EAAC,MAAM,WAAW,CAAC;AACxD,OAAO,EAAc,WAAW,EAAC,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAiB,cAAc,EAAC,MAAM,WAAW,CAAC;AACzD,OAAO,EAAe,YAAY,EAAC,MAAM,SAAS,CAAC;AACnD,OAAO,EAAkB,eAAe,EAAC,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAiB,cAAc,EAAC,MAAM,WAAW,CAAC;AACzD,OAAO,EAAS,aAAa,EAAC,MAAM,UAAU,CAAC;AAG/C,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAElC,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AAEjC,KAAK,kBAAkB,CAAC,SAAS,SAAS,oBAAoB,GAAG,SAAS,IACxE,SAAS,SAAS,SAAS,GAAG,oBAAoB,GAAG,SAAS,CAAC;AAEjE,MAAM,WAAW,OAAO,CACtB,MAAM,SAAS,YAAY,GAAG,YAAY,EAC1C,SAAS,SAAS,kBAAkB,CAClC,MAAM,CAAC,eAAe,CAAC,CACxB,GAAG,kBAAkB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EAC/C,MAAM,SAAS,eAAe,CAAC,MAAM,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC;IAEhE,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IACpC,OAAO,EAAE,cAAc,CAAC;IACxB,KAAK,EAAE,YAAY,CAAC;IACpB,QAAQ,EAAE,eAAe,CAAC;IAC1B,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,EAAE,SAAS,CAAC;CACjB;AAED,wBAAgB,UAAU,CACxB,MAAM,SAAS,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,EACxC,SAAS,SAAS,kBAAkB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EAC7D,MAAM,SAAS,iBAAiB,EAChC,EACA,MAAM,EACN,GAAG,MAAM,EACV,EAAE;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAC,GAAG,MAAM,GAAG,OAAO,CACrC,MAAM,EACN,SAAS,EACT,eAAe,CAAC,MAAM,CAAC,CACxB,CAkCA"}
package/lib/index.js CHANGED
@@ -23,8 +23,10 @@ tslib_1.__exportStar(require("./billing/types"), exports);
23
23
  tslib_1.__exportStar(require("./clients/types"), exports);
24
24
  tslib_1.__exportStar(require("./session/types"), exports);
25
25
  tslib_1.__exportStar(require("./webhooks/types"), exports);
26
- function shopifyApi(config) {
27
- const { restResources } = config, libConfig = tslib_1.__rest(config, ["restResources"]);
26
+ function shopifyApi(_a) {
27
+ var { future } = _a, config = tslib_1.__rest(_a, ["future"]);
28
+ const { restResources } = config, otherConfigs = tslib_1.__rest(config, ["restResources"]);
29
+ const libConfig = Object.assign(Object.assign({}, otherConfigs), { future });
28
30
  const validatedConfig = (0, config_1.validateConfig)(libConfig);
29
31
  const shopify = {
30
32
  config: validatedConfig,
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;;AAAA,qEAA8D;AAE9D,kDAA0D;AAG1D,qCAAwC;AACxC,uCAAwD;AACxD,iCAAgD;AAChD,uCAAyD;AACzD,mCAAmD;AACnD,yCAA4D;AAC5D,uCAAyD;AACzD,qCAA+C;AAC/C,uCAAsD;AAEtD,kDAAwB;AACxB,4DAAkC;AAElC,wDAA8B;AAC9B,kDAAwB;AACxB,uDAA6B;AAC7B,uDAA6B;AAC7B,0DAAgC;AAChC,0DAAgC;AAChC,0DAAgC;AAChC,2DAAiC;AAuBjC,SAAgB,UAAU,CAGxB,MAAc;IACd,MAAM,EAAC,aAAa,KAAkB,MAAM,EAAnB,SAAS,kBAAI,MAAM,EAAtC,iBAA6B,CAAS,CAAC;IAC7C,MAAM,eAAe,GAAG,IAAA,uBAAc,EACpC,SAAS,CACV,CAAC;IAEF,MAAM,OAAO,GAAG;QACd,MAAM,EAAE,eAAe;QACvB,OAAO,EAAE,IAAA,uBAAa,EAAC,eAAe,CAAC;QACvC,IAAI,EAAE,IAAA,kBAAW,EAAC,eAAe,CAAC;QAClC,OAAO,EAAE,IAAA,wBAAc,EAAC,eAAe,CAAC;QACxC,KAAK,EAAE,IAAA,oBAAY,EAAC,eAAe,CAAC;QACpC,QAAQ,EAAE,IAAA,0BAAe,EAAC,eAAe,CAAC;QAC1C,OAAO,EAAE,IAAA,wBAAc,EAAC,eAAe,CAAC;QACxC,MAAM,EAAE,IAAA,eAAM,EAAC,eAAe,CAAC;QAC/B,IAAI,EAAE,EAAe;KACtB,CAAC;IAEF,IAAI,aAAa,EAAE;QACjB,OAAO,CAAC,IAAI,GAAG,IAAA,uCAAiB,EAAY;YAC1C,SAAS,EAAE,aAA0B;YACrC,MAAM,EAAE,eAAe;YACvB,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;SACjC,CAAC,CAAC;KACJ;IAED,OAAO,CAAC,MAAM;SACX,IAAI,CACH,WAAW,qCAA2B,iBAAiB,IAAA,gCAAqB,GAAE,EAAE,CACjF;SACA,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAEpC,OAAO,OAA8D,CAAC;AACxE,CAAC;AApCD,gCAoCC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;;AAAA,qEAA8D;AAE9D,kDAA0D;AAI1D,qCAAwC;AACxC,uCAAwD;AACxD,iCAAgD;AAChD,uCAAyD;AACzD,mCAAmD;AACnD,yCAA4D;AAC5D,uCAAyD;AACzD,qCAA+C;AAC/C,uCAAsD;AAEtD,kDAAwB;AACxB,4DAAkC;AAElC,wDAA8B;AAC9B,kDAAwB;AACxB,uDAA6B;AAC7B,uDAA6B;AAC7B,0DAAgC;AAChC,0DAAgC;AAChC,0DAAgC;AAChC,2DAAiC;AAuBjC,SAAgB,UAAU,CAIxB,EAG2B;QAH3B,EACA,MAAM,OAEqB,EADxB,MAAM,sBAFT,UAGD,CADU;IAMT,MAAM,EAAC,aAAa,KAAqB,MAAM,EAAtB,YAAY,kBAAI,MAAM,EAAzC,iBAAgC,CAAS,CAAC;IAChD,MAAM,SAAS,mCAAO,YAAY,KAAE,MAAM,GAAC,CAAC;IAC5C,MAAM,eAAe,GAAG,IAAA,uBAAc,EACpC,SAAS,CACV,CAAC;IAEF,MAAM,OAAO,GAAG;QACd,MAAM,EAAE,eAAe;QACvB,OAAO,EAAE,IAAA,uBAAa,EAAC,eAAe,CAAC;QACvC,IAAI,EAAE,IAAA,kBAAW,EAAC,eAAe,CAAC;QAClC,OAAO,EAAE,IAAA,wBAAc,EAAC,eAAe,CAAC;QACxC,KAAK,EAAE,IAAA,oBAAY,EAAC,eAAe,CAAC;QACpC,QAAQ,EAAE,IAAA,0BAAe,EAAC,eAAe,CAAC;QAC1C,OAAO,EAAE,IAAA,wBAAc,EAAC,eAAe,CAAC;QACxC,MAAM,EAAE,IAAA,eAAM,EAAC,eAAe,CAAC;QAC/B,IAAI,EAAE,EAAe;KACtB,CAAC;IAEF,IAAI,aAAa,EAAE;QACjB,OAAO,CAAC,IAAI,GAAG,IAAA,uCAAiB,EAAY;YAC1C,SAAS,EAAE,aAA0B;YACrC,MAAM,EAAE,eAAe;YACvB,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;SACjC,CAAC,CAAC;KACJ;IAED,OAAO,CAAC,MAAM;SACX,IAAI,CACH,WAAW,qCAA2B,iBAAiB,IAAA,gCAAqB,GAAE,EAAE,CACjF;SACA,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAEpC,OAAO,OAA8D,CAAC;AACxE,CAAC;AA7CD,gCA6CC"}
@@ -16,6 +16,8 @@ export declare class Session {
16
16
  onlineAccessInfo?: OnlineAccessInfo;
17
17
  constructor(params: SessionParams);
18
18
  isActive(scopes: AuthScopes | string | string[]): boolean;
19
+ isScopeChanged(scopes: AuthScopes | string | string[]): boolean;
20
+ isExpired(): boolean;
19
21
  toObject(): SessionParams;
20
22
  equals(other: Session | undefined): boolean;
21
23
  toPropertyArray(): [string, string | number | boolean][];
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["session.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAC,UAAU,EAAC,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAC,aAAa,EAAC,MAAM,SAAS,CAAC;AAYtC;;GAEG;AACH,qBAAa,OAAO;WACJ,iBAAiB,CAC7B,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,EAAE,GAC7C,OAAO;IAuDV,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;gBAE/B,MAAM,EAAE,aAAa;IAI1B,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO;IAezD,QAAQ,IAAI,aAAa;IAuBzB,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO;IAoB3C,eAAe,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,EAAE;CAsBhE"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["session.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAC,UAAU,EAAC,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAC,aAAa,EAAC,MAAM,SAAS,CAAC;AAYtC;;GAEG;AACH,qBAAa,OAAO;WACJ,iBAAiB,CAC7B,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,EAAE,GAC7C,OAAO;IAuDV,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;gBAE/B,MAAM,EAAE,aAAa;IAI1B,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO;IAQzD,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO;IAO/D,SAAS,IAAI,OAAO;IAIpB,QAAQ,IAAI,aAAa;IAuBzB,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO;IAoB3C,eAAe,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,EAAE;CAsBhE"}
@@ -71,14 +71,16 @@ class Session {
71
71
  Object.assign(this, params);
72
72
  }
73
73
  isActive(scopes) {
74
+ return (!this.isScopeChanged(scopes) &&
75
+ Boolean(this.accessToken) &&
76
+ !this.isExpired());
77
+ }
78
+ isScopeChanged(scopes) {
74
79
  const scopesObject = scopes instanceof scopes_1.AuthScopes ? scopes : new scopes_1.AuthScopes(scopes);
75
- const scopesUnchanged = scopesObject.equals(this.scope);
76
- if (scopesUnchanged &&
77
- this.accessToken &&
78
- (!this.expires || this.expires >= new Date())) {
79
- return true;
80
- }
81
- return false;
80
+ return !scopesObject.equals(this.scope);
81
+ }
82
+ isExpired() {
83
+ return Boolean(this.expires && this.expires < new Date());
82
84
  }
83
85
  toObject() {
84
86
  const object = {
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["session.ts"],"names":[],"mappings":";;;AAAA,oCAAwC;AAExC,2CAA0C;AAI1C,MAAM,gBAAgB,GAAG;IACvB,IAAI;IACJ,MAAM;IACN,OAAO;IACP,UAAU;IACV,OAAO;IACP,aAAa;IACb,SAAS;IACT,kBAAkB;CACnB,CAAC;AACF;;GAEG;AACH,MAAa,OAAO;IACX,MAAM,CAAC,iBAAiB,CAC7B,OAA8C;QAE9C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC3B,MAAM,IAAI,sBAAc,CACtB,8EAA8E,CAC/E,CAAC;SACH;QAED,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAC5B,OAAO;aACJ,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,CAAC;YACjE,gBAAgB;aACf,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACpB,QAAQ,GAAG,CAAC,WAAW,EAAE,EAAE;gBACzB,KAAK,UAAU;oBACb,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBAC7B,KAAK,aAAa;oBAChB,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;gBAChC,KAAK,kBAAkB;oBACrB,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;gBACrC;oBACE,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC;aACrC;QACH,CAAC,CAAC;YACF,kBAAkB;aACjB,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACpB,QAAQ,GAAG,EAAE;gBACX,KAAK,UAAU;oBACb,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;wBAC7B,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC;qBACzD;yBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;wBACpC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;qBAC9B;oBACD,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBACtB,KAAK,OAAO;oBACV,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACjC,KAAK,SAAS;oBACZ,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAC5D,KAAK,kBAAkB;oBACrB,OAAO;wBACL,GAAG;wBACH;4BACE,eAAe,EAAE;gCACf,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC;6BAClB;yBACF;qBACF,CAAC;gBACJ;oBACE,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;aACvB;QACH,CAAC,CAAC,CACE,CAAC;QACT,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QAC9C,OAAO,GAAG,CAAC;IACb,CAAC;IAWD,YAAY,MAAqB;QAC/B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAEM,QAAQ,CAAC,MAAsC;QACpD,MAAM,YAAY,GAChB,MAAM,YAAY,mBAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,mBAAU,CAAC,MAAM,CAAC,CAAC;QAEjE,MAAM,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxD,IACE,eAAe;YACf,IAAI,CAAC,WAAW;YAChB,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,EAAE,CAAC,EAC7C;YACA,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,QAAQ;QACb,MAAM,MAAM,GAAkB;YAC5B,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC;QAEF,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;SAC3B;QACD,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;SAC/B;QACD,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;SACvC;QACD,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;SACjD;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,MAAM,CAAC,KAA0B;QACtC,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAC;QAEzB,MAAM,mBAAmB,GACvB,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE;YACpB,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YACxB,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK;YAC1B,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,CAAC;QAEnC,IAAI,CAAC,mBAAmB;YAAE,OAAO,KAAK,CAAC;QAEvC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/C,MAAM,KAAK,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC;QACtC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/C,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;IAEM,eAAe;QACpB,OAAO,CACL,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;aACjB,MAAM,CACL,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC;YAC9B,KAAK,KAAK,SAAS;YACnB,KAAK,KAAK,IAAI,CACjB;YACD,gCAAgC;aAC/B,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;;YACpB,QAAQ,GAAG,EAAE;gBACX,KAAK,SAAS;oBACZ,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBACpD,KAAK,kBAAkB;oBACrB,OAAO,CAAC,GAAG,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,0CAAE,EAAE,CAAC,CAAC;gBAC3C;oBACE,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;aACvB;QACH,CAAC,CAAC,CACL,CAAC;IACJ,CAAC;CACF;AAvJD,0BAuJC"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["session.ts"],"names":[],"mappings":"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"}
package/lib/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const SHOPIFY_API_LIBRARY_VERSION = "8.0.2";
1
+ export declare const SHOPIFY_API_LIBRARY_VERSION = "8.1.1";
2
2
  //# sourceMappingURL=version.d.ts.map
package/lib/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SHOPIFY_API_LIBRARY_VERSION = void 0;
4
- exports.SHOPIFY_API_LIBRARY_VERSION = '8.0.2';
4
+ exports.SHOPIFY_API_LIBRARY_VERSION = '8.1.1';
5
5
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["validate.ts"],"names":[],"mappings":"AASA,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAI9C,OAAO,EAEL,qBAAqB,EACrB,iBAAiB,EAElB,MAAM,SAAS,CAAC;AAWjB,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,iCAIlD,qBAAqB,KAAG,QAAQ,iBAAiB,CAAC,CA2BtD"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["validate.ts"],"names":[],"mappings":"AASA,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAI9C,OAAO,EAEL,qBAAqB,EACrB,iBAAiB,EAElB,MAAM,SAAS,CAAC;AAWjB,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,iCAIlD,qBAAqB,KAAG,QAAQ,iBAAiB,CAAC,CA6BtD"}
@@ -35,7 +35,7 @@ function validateFactory(config) {
35
35
  return webhookCheck;
36
36
  }
37
37
  else {
38
- yield log.debug('Webhook validation failed', loggingContext);
38
+ yield log.debug("Webhook HMAC validation failed. Please note that events manually triggered from a store's Notifications settings will fail this validation. To test this, please use the CLI or trigger the actual event in a development store.");
39
39
  return {
40
40
  valid: false,
41
41
  reason: types_3.WebhookValidationErrorReason.InvalidHmac,
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["validate.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shopify/shopify-api",
3
- "version": "8.0.2",
3
+ "version": "8.1.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",
@@ -1,4 +1,4 @@
1
- import { ShopifyClients } from 'lib';
1
+ import type { ShopifyClients } from '../lib';
2
2
  import { ConfigInterface } from '../lib/base-types';
3
3
  import { ShopifyRestResources } from './types';
4
4
  export interface LoadRestResourcesParams<Resources extends ShopifyRestResources> {
@@ -1 +1 @@
1
- {"version":3,"file":"load-rest-resources.d.ts","sourceRoot":"","sources":["load-rest-resources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,KAAK,CAAC;AAEnC,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAIlD,OAAO,EAAC,oBAAoB,EAAC,MAAM,SAAS,CAAC;AAE7C,MAAM,WAAW,uBAAuB,CACtC,SAAS,SAAS,oBAAoB;IAEtC,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,eAAe,CAAC;IACxB,UAAU,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;CACpC;AAED,wBAAgB,iBAAiB,CAAC,SAAS,SAAS,oBAAoB,EAAE,EACxE,SAAS,EACT,MAAM,EACN,UAAU,GACX,EAAE,uBAAuB,CAAC,SAAS,CAAC,GAAG,SAAS,CAsChD"}
1
+ {"version":3,"file":"load-rest-resources.d.ts","sourceRoot":"","sources":["load-rest-resources.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAIlD,OAAO,EAAC,oBAAoB,EAAC,MAAM,SAAS,CAAC;AAE7C,MAAM,WAAW,uBAAuB,CACtC,SAAS,SAAS,oBAAoB;IAEtC,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,eAAe,CAAC;IACxB,UAAU,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;CACpC;AAED,wBAAgB,iBAAiB,CAAC,SAAS,SAAS,oBAAoB,EAAE,EACxE,SAAS,EACT,MAAM,EACN,UAAU,GACX,EAAE,uBAAuB,CAAC,SAAS,CAAC,GAAG,SAAS,CAsChD"}
@@ -1 +1 @@
1
- {"version":3,"file":"load-rest-resources.js","sourceRoot":"","sources":["load-rest-resources.ts"],"names":[],"mappings":";;;AAGA,0CAAqC;AAarC,SAAgB,iBAAiB,CAAyC,EACxE,SAAS,EACT,MAAM,EACN,UAAU,GACyB;IACnC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAChD,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,aAAa,CAAC,CAAC,UAAU,EAAE;QAC7D,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CACpB,0CAA0C,SAAS,CAAC,aAAa,CAAC,CAAC,UAAU,qCAAqC,MAAM,CAAC,UAAU,EAAE,CACtI,CAAC;KACH;IAED,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE;QACjD,MAAM,WAAY,SAAQ,QAAQ;SAAG;QAErC,WAAW,CAAC,kBAAkB,CAAC;YAC7B,MAAM,EAAE,UAAU;YAClB,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,EAAE;YAC5D,KAAqB,CAAC,kBAAkB,CAAC;gBACxC,MAAM,EAAE,UAAU;gBAClB,MAAM;aACP,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,EAAE;YAC7D,KAAqB,CAAC,kBAAkB,CAAC;gBACxC,MAAM,EAAE,UAAU;gBAClB,MAAM;aACP,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE;YAC1C,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;QAEH,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC7B,CAAC,CAAC,CACU,CAAC;AACjB,CAAC;AA1CD,8CA0CC"}
1
+ {"version":3,"file":"load-rest-resources.js","sourceRoot":"","sources":["load-rest-resources.ts"],"names":[],"mappings":";;;AAEA,0CAAqC;AAarC,SAAgB,iBAAiB,CAAyC,EACxE,SAAS,EACT,MAAM,EACN,UAAU,GACyB;IACnC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAChD,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,aAAa,CAAC,CAAC,UAAU,EAAE;QAC7D,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CACpB,0CAA0C,SAAS,CAAC,aAAa,CAAC,CAAC,UAAU,qCAAqC,MAAM,CAAC,UAAU,EAAE,CACtI,CAAC;KACH;IAED,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE;QACjD,MAAM,WAAY,SAAQ,QAAQ;SAAG;QAErC,WAAW,CAAC,kBAAkB,CAAC;YAC7B,MAAM,EAAE,UAAU;YAClB,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,EAAE;YAC5D,KAAqB,CAAC,kBAAkB,CAAC;gBACxC,MAAM,EAAE,UAAU;gBAClB,MAAM;aACP,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,EAAE;YAC7D,KAAqB,CAAC,kBAAkB,CAAC;gBACxC,MAAM,EAAE,UAAU;gBAClB,MAAM;aACP,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE;YAC1C,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;QAEH,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC7B,CAAC,CAAC,CACU,CAAC;AACjB,CAAC;AA1CD,8CA0CC"}