@agnostack/next-shopify 1.3.2-alpha.8 → 1.4.0-alpha.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 (63) hide show
  1. package/CHANGELOG.md +234 -0
  2. package/dist/{apiHandlers.d.ts → handlers/api.d.ts} +0 -0
  3. package/dist/{apiHandlers.js → handlers/api.js} +8 -8
  4. package/dist/handlers/api.js.map +1 -0
  5. package/dist/handlers/index.d.ts +2 -0
  6. package/dist/handlers/index.js +15 -0
  7. package/dist/handlers/index.js.map +1 -0
  8. package/dist/{protectRoute.d.ts → handlers/ssr.d.ts} +7 -0
  9. package/dist/{protectRoute.js → handlers/ssr.js} +24 -10
  10. package/dist/handlers/ssr.js.map +1 -0
  11. package/dist/helpers/auth.d.ts +14 -0
  12. package/dist/helpers/auth.js +25 -0
  13. package/dist/helpers/auth.js.map +1 -0
  14. package/dist/helpers/callback.d.ts +9 -0
  15. package/dist/helpers/callback.js +71 -0
  16. package/dist/helpers/callback.js.map +1 -0
  17. package/dist/helpers/error.d.ts +13 -0
  18. package/dist/helpers/error.js +18 -0
  19. package/dist/helpers/error.js.map +1 -0
  20. package/dist/helpers/graph.d.ts +7 -0
  21. package/dist/helpers/graph.js +76 -0
  22. package/dist/helpers/graph.js.map +1 -0
  23. package/dist/helpers/index.d.ts +6 -0
  24. package/dist/helpers/index.js +19 -0
  25. package/dist/helpers/index.js.map +1 -0
  26. package/dist/helpers/rest.d.ts +7 -0
  27. package/dist/helpers/rest.js +70 -0
  28. package/dist/helpers/rest.js.map +1 -0
  29. package/dist/helpers/uninstall.d.ts +8 -0
  30. package/dist/helpers/uninstall.js +28 -0
  31. package/dist/helpers/uninstall.js.map +1 -0
  32. package/dist/index.d.ts +2 -3
  33. package/dist/index.js +2 -3
  34. package/dist/index.js.map +1 -1
  35. package/dist/utils/billing.d.ts +0 -5
  36. package/dist/utils/billing.js +21 -150
  37. package/dist/utils/billing.js.map +1 -1
  38. package/dist/utils/constants.d.ts +21 -0
  39. package/dist/utils/constants.js +97 -0
  40. package/dist/utils/constants.js.map +1 -0
  41. package/dist/utils/firebase.d.ts +6 -12
  42. package/dist/utils/firebase.js +27 -29
  43. package/dist/utils/firebase.js.map +1 -1
  44. package/dist/utils/index.d.ts +1 -0
  45. package/dist/utils/index.js +1 -0
  46. package/dist/utils/index.js.map +1 -1
  47. package/dist/utils/shopify-api-node/beginAuth.d.ts +9 -0
  48. package/dist/utils/shopify-api-node/beginAuth.js +37 -0
  49. package/dist/utils/shopify-api-node/beginAuth.js.map +1 -0
  50. package/dist/utils/shopify-api-node/index.d.ts +1 -0
  51. package/dist/utils/shopify-api-node/index.js +15 -0
  52. package/dist/utils/shopify-api-node/index.js.map +1 -0
  53. package/dist/utils/shopify.d.ts +1 -10
  54. package/dist/utils/shopify.js +16 -61
  55. package/dist/utils/shopify.js.map +1 -1
  56. package/dist/withShopify.js +3 -36
  57. package/dist/withShopify.js.map +1 -1
  58. package/package.json +1 -1
  59. package/dist/apiHandlers.js.map +0 -1
  60. package/dist/apiHelpers.d.ts +0 -70
  61. package/dist/apiHelpers.js +0 -251
  62. package/dist/apiHelpers.js.map +0 -1
  63. package/dist/protectRoute.js.map +0 -1
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ const shopify_api_1 = require("@shopify/shopify-api");
15
+ const utils_1 = require("../utils");
16
+ const error_1 = require("./error");
17
+ const graphHelper = async ({ req, res, params: _params, serverRuntimeConfig }) => {
18
+ var _a;
19
+ const { body, query: _query } = req;
20
+ const { shop } = _query !== null && _query !== void 0 ? _query : {};
21
+ const _b = _params !== null && _params !== void 0 ? _params : {}, { data: dataParam, query: queryParam } = _b, params = __rest(_b, ["data", "query"]);
22
+ let query = queryParam !== null && queryParam !== void 0 ? queryParam : _query;
23
+ const data = dataParam !== null && dataParam !== void 0 ? dataParam : JSON.parse(body !== null && body !== void 0 ? body : {});
24
+ if (utils_1.isType(query, 'string')) {
25
+ query = utils_1.querystringToObject(query);
26
+ }
27
+ if (!shop || !data) {
28
+ return {
29
+ statusCode: 400,
30
+ message: 'Invalid arguments',
31
+ };
32
+ }
33
+ try {
34
+ const session = await utils_1.getVerifiedSession({ req, res, shop, serverRuntimeConfig });
35
+ const client = new shopify_api_1.Shopify.Clients.Graphql(shop, session === null || session === void 0 ? void 0 : session.accessToken);
36
+ const payload = Object.assign(Object.assign({ data }, query && { query }), params);
37
+ const response = await client.query(payload);
38
+ return {
39
+ statusCode: 200,
40
+ response,
41
+ };
42
+ }
43
+ catch (error) {
44
+ const errorMessage = 'Error handling query call';
45
+ switch (true) {
46
+ case error instanceof utils_1.ShopifyAuthenticationError: {
47
+ console.error(`${errorMessage}. Authentication Error`, error);
48
+ return error_1.authenticationErrorHelper({ error, shop, serverRuntimeConfig });
49
+ }
50
+ case error instanceof shopify_api_1.Shopify.Errors.BillingError: {
51
+ console.error(`${errorMessage}. Billing Error - ${error.message}`, error.errorData);
52
+ return {
53
+ statusCode: 500,
54
+ message: errorMessage,
55
+ };
56
+ }
57
+ case error instanceof shopify_api_1.Shopify.Errors.GraphqlQueryError: {
58
+ const errorMessages = utils_1.ensureArray((_a = error.response) === null || _a === void 0 ? void 0 : _a.errors).map(({ message }) => utils_1.ensureString(message));
59
+ console.error(`${errorMessage}. ${errorMessages.join('. ')}`);
60
+ return {
61
+ statusCode: 500,
62
+ message: errorMessage,
63
+ };
64
+ }
65
+ default: {
66
+ console.error(errorMessage, error);
67
+ return {
68
+ statusCode: 500,
69
+ message: errorMessage,
70
+ };
71
+ }
72
+ }
73
+ }
74
+ };
75
+ exports.default = graphHelper;
76
+ //# sourceMappingURL=graph.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/helpers/graph.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export { default as authHelper } from "./auth";
2
+ export { default as authenticationErrorHelper } from "./error";
3
+ export { default as callbackHelper } from "./callback";
4
+ export { default as graphHelper } from "./graph";
5
+ export { default as restHelper } from "./rest";
6
+ export { default as uninstallHelper } from "./uninstall";
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.uninstallHelper = exports.restHelper = exports.graphHelper = exports.callbackHelper = exports.authenticationErrorHelper = exports.authHelper = void 0;
7
+ var auth_1 = require("./auth");
8
+ Object.defineProperty(exports, "authHelper", { enumerable: true, get: function () { return __importDefault(auth_1).default; } });
9
+ var error_1 = require("./error");
10
+ Object.defineProperty(exports, "authenticationErrorHelper", { enumerable: true, get: function () { return __importDefault(error_1).default; } });
11
+ var callback_1 = require("./callback");
12
+ Object.defineProperty(exports, "callbackHelper", { enumerable: true, get: function () { return __importDefault(callback_1).default; } });
13
+ var graph_1 = require("./graph");
14
+ Object.defineProperty(exports, "graphHelper", { enumerable: true, get: function () { return __importDefault(graph_1).default; } });
15
+ var rest_1 = require("./rest");
16
+ Object.defineProperty(exports, "restHelper", { enumerable: true, get: function () { return __importDefault(rest_1).default; } });
17
+ var uninstall_1 = require("./uninstall");
18
+ Object.defineProperty(exports, "uninstallHelper", { enumerable: true, get: function () { return __importDefault(uninstall_1).default; } });
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.js"],"names":[],"mappings":";;;;;;AAAA,+BAA8C;AAArC,mHAAA,OAAO,OAAc;AAC9B,iCAA8D;AAArD,mIAAA,OAAO,OAA6B;AAC7C,uCAAsD;AAA7C,2HAAA,OAAO,OAAkB;AAClC,iCAAgD;AAAvC,qHAAA,OAAO,OAAe;AAC/B,+BAA8C;AAArC,mHAAA,OAAO,OAAc;AAC9B,yCAAwD;AAA/C,6HAAA,OAAO,OAAmB"}
@@ -0,0 +1,7 @@
1
+ export default restHelper;
2
+ declare function restHelper({ req, res, params: _params, serverRuntimeConfig }: {
3
+ req: any;
4
+ res: any;
5
+ params: any;
6
+ serverRuntimeConfig: any;
7
+ }): Promise<any>;
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ const shopify_api_1 = require("@shopify/shopify-api");
15
+ const utils_1 = require("../utils");
16
+ const error_1 = require("./error");
17
+ const restHelper = async ({ req, res, params: _params, serverRuntimeConfig }) => {
18
+ const { query: _query, method: _method, body: _body } = req;
19
+ const { shop } = _query !== null && _query !== void 0 ? _query : {};
20
+ const _a = _params !== null && _params !== void 0 ? _params : {}, { method: methodParam, query: queryParam, body: bodyParam, path } = _a, params = __rest(_a, ["method", "query", "body", "path"]);
21
+ let query = queryParam !== null && queryParam !== void 0 ? queryParam : _query;
22
+ const body = bodyParam !== null && bodyParam !== void 0 ? bodyParam : _body;
23
+ const method = utils_1.ensureString(methodParam !== null && methodParam !== void 0 ? methodParam : _method).toLowerCase();
24
+ if (utils_1.isType(query, 'string')) {
25
+ query = utils_1.querystringToObject(query);
26
+ }
27
+ if (!shop || !path) {
28
+ return {
29
+ statusCode: 400,
30
+ message: 'Invalid arguments',
31
+ };
32
+ }
33
+ try {
34
+ const session = await utils_1.getVerifiedSession({ req, res, shop, serverRuntimeConfig });
35
+ const shopify = utils_1.getInitializedShopify(serverRuntimeConfig, shop, '2021-04');
36
+ const client = new shopify.Clients.Rest(shop, session === null || session === void 0 ? void 0 : session.accessToken);
37
+ const response = await client[method](Object.assign({ path,
38
+ query,
39
+ body, type: shopify_api_1.DataType.JSON }, params));
40
+ return {
41
+ statusCode: 200,
42
+ response,
43
+ };
44
+ }
45
+ catch (error) {
46
+ const errorMessage = 'Error handling rest call';
47
+ switch (true) {
48
+ case error instanceof utils_1.ShopifyAuthenticationError: {
49
+ console.error(`${errorMessage}. Authentication Error`, error);
50
+ return error_1.authenticationErrorHelper({ error, shop, serverRuntimeConfig });
51
+ }
52
+ case error instanceof shopify_api_1.Shopify.Errors.BillingError: {
53
+ console.error(`${errorMessage}. Billing Error - ${error.message}`, error.errorData);
54
+ return {
55
+ statusCode: 500,
56
+ message: errorMessage,
57
+ };
58
+ }
59
+ default: {
60
+ console.error(errorMessage, error);
61
+ return {
62
+ statusCode: 500,
63
+ message: errorMessage,
64
+ };
65
+ }
66
+ }
67
+ }
68
+ };
69
+ exports.default = restHelper;
70
+ //# sourceMappingURL=rest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rest.js","sourceRoot":"","sources":["../../src/helpers/rest.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export default uninstallHelper;
2
+ declare function uninstallHelper({ req, serverRuntimeConfig }: {
3
+ req: any;
4
+ serverRuntimeConfig: any;
5
+ }): Promise<{
6
+ statusCode: number;
7
+ message: string;
8
+ }>;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const utils_1 = require("../utils");
4
+ const uninstallHelper = async ({ req, serverRuntimeConfig }) => {
5
+ var _a, _b, _c, _d;
6
+ try {
7
+ const { domain } = req.body;
8
+ const shopify = utils_1.getInitializedShopify(serverRuntimeConfig, domain);
9
+ const existingSessions = await ((_b = (_a = shopify.Context.SESSION_STORAGE) === null || _a === void 0 ? void 0 : _a.findSessionsByShop) === null || _b === void 0 ? void 0 : _b.call(_a, domain));
10
+ if (utils_1.arrayNotEmpty(existingSessions)) {
11
+ await ((_d = (_c = shopify.Context.SESSION_STORAGE) === null || _c === void 0 ? void 0 : _c.deleteSessions) === null || _d === void 0 ? void 0 : _d.call(_c, existingSessions.map((session) => session.id)));
12
+ }
13
+ return {
14
+ statusCode: 200,
15
+ message: 'success',
16
+ };
17
+ }
18
+ catch (error) {
19
+ const errorMessage = 'Error handling uninstall route';
20
+ console.error(errorMessage, error);
21
+ return {
22
+ statusCode: 500,
23
+ message: errorMessage,
24
+ };
25
+ }
26
+ };
27
+ exports.default = uninstallHelper;
28
+ //# sourceMappingURL=uninstall.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../src/helpers/uninstall.js"],"names":[],"mappings":";;AAAA,oCAA+D;AAE/D,MAAM,eAAe,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,mBAAmB,EAAE,EAAE,EAAE;;IAC7D,IAAI;QACF,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI,CAAA;QAC3B,MAAM,OAAO,GAAG,6BAAqB,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAA;QAElE,MAAM,gBAAgB,GAAG,MAAM,CAAA,MAAA,MAAA,OAAO,CAAC,OAAO,CAAC,eAAe,0CAAE,kBAAkB,mDAAG,MAAM,CAAC,CAAA,CAAA;QAC5F,IAAI,qBAAa,CAAC,gBAAgB,CAAC,EAAE;YACnC,MAAM,CAAA,MAAA,MAAA,OAAO,CAAC,OAAO,CAAC,eAAe,0CAAE,cAAc,mDAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA,CAAA;SACvG;QAED,OAAO;YACL,UAAU,EAAE,GAAG;YACf,OAAO,EAAE,SAAS;SACnB,CAAA;KACF;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,YAAY,GAAG,gCAAgC,CAAA;QACrD,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAA;QAElC,OAAO;YACL,UAAU,EAAE,GAAG;YACf,OAAO,EAAE,YAAY;SACtB,CAAA;KACF;AACH,CAAC,CAAA;AAED,kBAAe,eAAe,CAAA"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- export * from './apiHelpers';
2
- export * from './apiHandlers';
3
- export * from './protectRoute';
1
+ export * from './handlers';
2
+ export * from './helpers';
4
3
  export * from './withShopify';
package/dist/index.js CHANGED
@@ -10,8 +10,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- __exportStar(require("./apiHelpers"), exports);
14
- __exportStar(require("./apiHandlers"), exports);
15
- __exportStar(require("./protectRoute"), exports);
13
+ __exportStar(require("./handlers"), exports);
14
+ __exportStar(require("./helpers"), exports);
16
15
  __exportStar(require("./withShopify"), exports);
17
16
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAA4B;AAC5B,gDAA6B;AAC7B,iDAA8B;AAC9B,gDAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA0B;AAC1B,4CAAyB;AACzB,gDAA6B"}
@@ -1,8 +1,3 @@
1
- export namespace BILLING_INTERVALS {
2
- const ONE_TIME: string;
3
- const EVERY_30_DAYS: string;
4
- const ANNUAL: string;
5
- }
6
1
  export class BillingManager {
7
2
  constructor(session: any, serverRuntimeConfig: any);
8
3
  shop: any;
@@ -1,90 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BillingManager = exports.BILLING_INTERVALS = void 0;
4
- const shopify_api_1 = require("@shopify/shopify-api"); // DataType
3
+ exports.BillingManager = void 0;
4
+ const shopify_api_1 = require("@shopify/shopify-api");
5
5
  const display_1 = require("./display");
6
- exports.BILLING_INTERVALS = {
7
- ONE_TIME: 'ONE_TIME',
8
- EVERY_30_DAYS: 'EVERY_30_DAYS',
9
- ANNUAL: 'ANNUAL',
10
- };
11
- const RECURRING_INTERVALS = [
12
- exports.BILLING_INTERVALS.EVERY_30_DAYS,
13
- exports.BILLING_INTERVALS.ANNUAL
14
- ];
15
- const RECURRING_PURCHASES_QUERY = `
16
- query appSubscription {
17
- currentAppInstallation {
18
- activeSubscriptions {
19
- name, test
20
- }
21
- }
22
- }
23
- `;
24
- const ONE_TIME_PURCHASES_QUERY = `
25
- query appPurchases($endCursor: String) {
26
- currentAppInstallation {
27
- oneTimePurchases(first: 250, sortKey: CREATED_AT, after: $endCursor) {
28
- edges {
29
- node {
30
- name, test, status
31
- }
32
- }
33
- pageInfo {
34
- hasNextPage, endCursor
35
- }
36
- }
37
- }
38
- }
39
- `;
40
- const RECURRING_PURCHASE_MUTATION = `
41
- mutation test(
42
- $name: String!
43
- $lineItems: [AppSubscriptionLineItemInput!]!
44
- $returnUrl: URL!
45
- $test: Boolean
46
- ) {
47
- appSubscriptionCreate(
48
- name: $name
49
- lineItems: $lineItems
50
- returnUrl: $returnUrl
51
- test: $test
52
- ) {
53
- confirmationUrl
54
- userErrors {
55
- field
56
- message
57
- }
58
- }
59
- }
60
- `;
61
- const ONE_TIME_PURCHASE_MUTATION = `
62
- mutation test(
63
- $name: String!
64
- $price: MoneyInput!
65
- $returnUrl: URL!
66
- $test: Boolean
67
- ) {
68
- appPurchaseOneTimeCreate(
69
- name: $name
70
- price: $price
71
- returnUrl: $returnUrl
72
- test: $test
73
- ) {
74
- confirmationUrl
75
- userErrors {
76
- field
77
- message
78
- }
79
- }
80
- }
81
- `;
6
+ const constants_1 = require("./constants");
82
7
  class BillingManager {
83
8
  constructor(session, serverRuntimeConfig) {
84
9
  const { APP_ID, APP_BASE_URL, PAYMENT_CONFIG } = serverRuntimeConfig;
85
10
  if (display_1.stringEmpty(session === null || session === void 0 ? void 0 : session.shop) ||
86
11
  display_1.stringEmpty(session === null || session === void 0 ? void 0 : session.accessToken) ||
87
- !Object.values(exports.BILLING_INTERVALS).includes(PAYMENT_CONFIG === null || PAYMENT_CONFIG === void 0 ? void 0 : PAYMENT_CONFIG.type)) {
12
+ !Object.values(constants_1.BILLING_INTERVALS).includes(PAYMENT_CONFIG === null || PAYMENT_CONFIG === void 0 ? void 0 : PAYMENT_CONFIG.type)) {
88
13
  throw new shopify_api_1.Shopify.Errors.BillingError({
89
14
  message: 'Invalid billing configuration',
90
15
  });
@@ -94,7 +19,7 @@ class BillingManager {
94
19
  this.appId = APP_ID;
95
20
  this.appBaseUrl = APP_BASE_URL;
96
21
  this.paymentConfig = display_1.ensureObject(PAYMENT_CONFIG);
97
- this.isRecurring = RECURRING_INTERVALS.includes(this.paymentConfig.type);
22
+ this.isRecurring = constants_1.RECURRING_INTERVALS.includes(this.paymentConfig.type);
98
23
  }
99
24
  async ensureBilling() {
100
25
  var _a;
@@ -117,92 +42,40 @@ class BillingManager {
117
42
  async hasActiveRecurringPayment(client) {
118
43
  var _a, _b, _c;
119
44
  const currentInstallations = await client.query({
120
- data: RECURRING_PURCHASES_QUERY,
45
+ data: constants_1.RECURRING_PURCHASES_QUERY,
121
46
  });
122
47
  const subscriptions = (_c = (_b = (_a = currentInstallations === null || currentInstallations === void 0 ? void 0 : currentInstallations.body) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.currentAppInstallation) === null || _c === void 0 ? void 0 : _c.activeSubscriptions;
123
- const matchingSubscription = display_1.ensureArray(subscriptions).find((sub) => {
124
- console.log(`>>> ~ hasActiveRecurringPayment sub`, sub);
125
- const { name: chargeName, test: chargeTest } = sub;
126
- return ((chargeName === this.paymentConfig.name)
127
- && (display_1.isTrue(chargeTest) === this.paymentConfig.test));
128
- });
129
- const foo = display_1.objectNotEmpty(matchingSubscription);
130
- console.log(`>>> ~ hasActiveRecurringPayment hasActiveRecurringPayment`, foo);
131
- return foo;
48
+ const matchingSubscription = display_1.ensureArray(subscriptions).find(({ name: chargeName, test: chargeTest } = {}) => ((chargeName === this.paymentConfig.name)
49
+ && (display_1.isTrue(chargeTest) === this.paymentConfig.test)));
50
+ return display_1.objectNotEmpty(matchingSubscription);
132
51
  }
133
52
  async hasActiveOneTimePayment(client, endCursor = null) {
134
53
  var _a, _b, _c, _d, _e;
135
- console.log(`>>> ~ hasActiveOneTimePayment client`, client);
136
- const payload = {
54
+ const currentInstallations = await client.query({
137
55
  data: {
138
- query: ONE_TIME_PURCHASES_QUERY,
56
+ query: constants_1.ONE_TIME_PURCHASES_QUERY,
139
57
  variables: { endCursor },
140
58
  },
141
- };
142
- console.log(`>>> ~ hasActiveOneTimePayment payload`, payload);
143
- const currentInstallations = await client.query(payload);
144
- console.log(`>>> ~ hasActiveOneTimePayment currentInstallations`, currentInstallations);
145
- const purchases = (_c = (_b = (_a = currentInstallations === null || currentInstallations === void 0 ? void 0 : currentInstallations.body) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.currentAppInstallation) === null || _c === void 0 ? void 0 : _c.oneTimePurchases;
146
- console.log(`>>> ~ hasActiveOneTimePayment purchases`, JSON.stringify(purchases, null, 2));
147
- const matchingPurchase = display_1.ensureArray(purchases === null || purchases === void 0 ? void 0 : purchases.edges).find((pur) => {
148
- const { node } = pur;
149
- console.log(`>>> ~ hasActiveOneTimePayment node`, node);
150
- return (((node === null || node === void 0 ? void 0 : node.name) === this.paymentConfig.name)
151
- && ((node === null || node === void 0 ? void 0 : node.status) === 'ACTIVE')
152
- && (display_1.isTrue(node === null || node === void 0 ? void 0 : node.test) === this.paymentConfig.test));
153
59
  });
154
- console.log(`>>> ~ hasActiveOneTimePayment matchingPurchases`, matchingPurchase);
60
+ const purchases = (_c = (_b = (_a = currentInstallations === null || currentInstallations === void 0 ? void 0 : currentInstallations.body) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.currentAppInstallation) === null || _c === void 0 ? void 0 : _c.oneTimePurchases;
61
+ const matchingPurchase = display_1.ensureArray(purchases === null || purchases === void 0 ? void 0 : purchases.edges).find(({ node } = {}) => (((node === null || node === void 0 ? void 0 : node.name) === this.paymentConfig.name)
62
+ && ((node === null || node === void 0 ? void 0 : node.status) === 'ACTIVE')
63
+ && (display_1.isTrue(node === null || node === void 0 ? void 0 : node.test) === this.paymentConfig.test)));
155
64
  if (display_1.objectNotEmpty(matchingPurchase)) {
156
65
  return true;
157
66
  }
158
67
  if ((_d = purchases === null || purchases === void 0 ? void 0 : purchases.pageInfo) === null || _d === void 0 ? void 0 : _d.hasNextPage) {
159
68
  return this.hasActiveOneTimePayment(client, (_e = purchases === null || purchases === void 0 ? void 0 : purchases.pageInfo) === null || _e === void 0 ? void 0 : _e.endCursor);
160
69
  }
161
- console.log(`>>> ~ hasActiveOneTimePayment NO matchingPurchases`);
162
70
  return false;
163
71
  }
164
72
  async hasActivePayment() {
165
73
  const client = new shopify_api_1.Shopify.Clients.Graphql(this.shop, this.accessToken);
166
- console.log(`>>> ~ this.isRecurring`, this.isRecurring);
167
74
  if (this.isRecurring) {
168
75
  return this.hasActiveRecurringPayment(client);
169
76
  }
170
77
  return this.hasActiveOneTimePayment(client);
171
78
  }
172
- /*
173
- // TODO ensure this logic works for recurring payments
174
- async hasActivePayment () {
175
- const client = new Shopify.Clients.Rest(this.shop, this.accessToken)
176
-
177
- // TODO: move this to match scaffold (/ensure we check !test)
178
- const { body: { application_charges } = {} } = ensureObject(await client.get({
179
- path: 'application_charges',
180
- type: DataType.JSON,
181
- }))
182
-
183
- console.log(`>>> > BillingManager > existingCharge > this.appId`, this.appId)
184
- console.log(`>>> > BillingManager > hasActivePayment > ensureArray(application_charges).length`, ensureArray(application_charges).length)
185
-
186
- const existingCharge = ensureArray(application_charges).reduce((_existingCharge, charge) => {
187
- const { api_client_id, status: chargeStatus } = ensureObject(charge)
188
- const isMatching = (stringNotEmpty(api_client_id) && (ensureString(api_client_id) === this.appId))
189
- console.log(`>>> > BillingManager > existingCharge > ${api_client_id}`, chargeStatus)
190
-
191
- if (_existingCharge.status === 'active') {
192
- return _existingCharge
193
- }
194
-
195
- if (isMatching && ['active', 'pending'].includes(chargeStatus)) {
196
- return charge
197
- }
198
-
199
- return _existingCharge
200
- }, {})
201
- console.log(`>>> > BillingManager > hasActivePayment > existingCharge`, existingCharge)
202
-
203
- return objectNotEmpty(existingCharge)
204
- }
205
- */
206
79
  async requestPayment() {
207
80
  const client = new shopify_api_1.Shopify.Clients.Graphql(this.shop, this.accessToken);
208
81
  // TODO: explore objectToQuerystring
@@ -224,9 +97,9 @@ class BillingManager {
224
97
  async requestSinglePayment(client, returnUrl) {
225
98
  var _a, _b, _c, _d;
226
99
  const { price, name, test, } = this.paymentConfig;
227
- const payload = {
100
+ const mutationResponse = await client.query({
228
101
  data: {
229
- query: ONE_TIME_PURCHASE_MUTATION,
102
+ query: constants_1.ONE_TIME_PURCHASE_MUTATION,
230
103
  variables: {
231
104
  test,
232
105
  name,
@@ -234,8 +107,7 @@ class BillingManager {
234
107
  returnUrl,
235
108
  },
236
109
  },
237
- };
238
- const mutationResponse = await client.query(payload);
110
+ });
239
111
  if (((_a = mutationResponse === null || mutationResponse === void 0 ? void 0 : mutationResponse.body) === null || _a === void 0 ? void 0 : _a.errors) && display_1.arrayNotEmpty((_b = mutationResponse === null || mutationResponse === void 0 ? void 0 : mutationResponse.body) === null || _b === void 0 ? void 0 : _b.errors)) {
240
112
  throw new shopify_api_1.Shopify.Errors.BillingError({
241
113
  message: 'Error executing one-time purchase',
@@ -247,9 +119,9 @@ class BillingManager {
247
119
  async requestRecurringPayment(client, returnUrl) {
248
120
  var _a, _b, _c, _d;
249
121
  const { price, name, test, type: interval, } = this.paymentConfig;
250
- const payload = {
122
+ const mutationResponse = await client.query({
251
123
  data: {
252
- query: RECURRING_PURCHASE_MUTATION,
124
+ query: constants_1.RECURRING_PURCHASE_MUTATION,
253
125
  variables: {
254
126
  test,
255
127
  name,
@@ -264,8 +136,7 @@ class BillingManager {
264
136
  }],
265
137
  },
266
138
  },
267
- };
268
- const mutationResponse = await client.query(payload);
139
+ });
269
140
  if (((_a = mutationResponse === null || mutationResponse === void 0 ? void 0 : mutationResponse.body) === null || _a === void 0 ? void 0 : _a.errors) && display_1.arrayNotEmpty((_b = mutationResponse === null || mutationResponse === void 0 ? void 0 : mutationResponse.body) === null || _b === void 0 ? void 0 : _b.errors)) {
270
141
  throw new shopify_api_1.Shopify.Errors.BillingError({
271
142
  message: 'Error executing recurring purchase',
@@ -1 +1 @@
1
- {"version":3,"file":"billing.js","sourceRoot":"","sources":["../../src/utils/billing.js"],"names":[],"mappings":";;;AAAA,sDAA8C,CAAC,WAAW;AAE1D,uCAUkB;AAGL,QAAA,iBAAiB,GAAG;IAC/B,QAAQ,EAAE,UAAU;IACpB,aAAa,EAAE,eAAe;IAC9B,MAAM,EAAE,QAAQ;CACjB,CAAA;AAED,MAAM,mBAAmB,GAAG;IAC1B,yBAAiB,CAAC,aAAa;IAC/B,yBAAiB,CAAC,MAAM;CACzB,CAAA;AAED,MAAM,yBAAyB,GAAG;;;;;;;;CAQjC,CAAA;AAED,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;;;CAehC,CAAA;AAED,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;CAoBnC,CAAA;AAED,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;CAoBlC,CAAA;AAED,MAAa,cAAc;IACzB,YAAY,OAAO,EAAE,mBAAmB;QACtC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,mBAAmB,CAAA;QAEpE,IACE,qBAAW,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAC;YAC1B,qBAAW,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,CAAC;YACjC,CAAC,MAAM,CAAC,MAAM,CAAC,yBAAiB,CAAC,CAAC,QAAQ,CAAC,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI,CAAC,EAChE;YACA,MAAM,IAAI,qBAAO,CAAC,MAAM,CAAC,YAAY,CAAC;gBACpC,OAAO,EAAE,+BAA+B;aACzC,CAAC,CAAA;SACH;QAED,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QACxB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;QACtC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAA;QACnB,IAAI,CAAC,UAAU,GAAG,YAAY,CAAA;QAC9B,IAAI,CAAC,aAAa,GAAG,sBAAY,CAAC,cAAc,CAAC,CAAA;QACjD,IAAI,CAAC,WAAW,GAAG,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;IAC1E,CAAC;IAED,KAAK,CAAC,aAAa;;QACjB,IAAI;YACF,IAAI,MAAM,IAAI,CAAC,gBAAgB,EAAE,EAAE;gBACjC,OAAO,SAAS,CAAA;aACjB;YAED,OAAO,IAAI,CAAC,cAAc,EAAE,CAAA;SAC7B;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,qBAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE;gBACrD,MAAM,IAAI,qBAAO,CAAC,MAAM,CAAC,YAAY,CAAC;oBACpC,OAAO,EAAE,wCAAwC;oBACjD,SAAS,EAAE,qBAAW,CAAC,MAAA,KAAK,CAAC,QAAQ,0CAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,sBAAY,CAAC,OAAO,CAAC,CAAC;iBAC3F,CAAC,CAAA;aACH;YAED,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,MAAM;;QACpC,MAAM,oBAAoB,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;YAC9C,IAAI,EAAE,yBAAyB;SAChC,CAAC,CAAA;QAEF,MAAM,aAAa,GAAG,MAAA,MAAA,MAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,IAAI,0CAAE,IAAI,0CAAE,sBAAsB,0CAAE,mBAAmB,CAAA;QAEnG,MAAM,oBAAoB,GAAG,qBAAW,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YACnE,OAAO,CAAC,GAAG,CAAC,qCAAqC,EAAE,GAAG,CAAC,CAAA;YACvD,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,GAAG,CAAA;YAClD,OAAO,CACL,CAAC,UAAU,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;mBACrC,CAAC,gBAAM,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CACpD,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,MAAM,GAAG,GAAG,wBAAc,CAAC,oBAAoB,CAAC,CAAA;QAChD,OAAO,CAAC,GAAG,CAAC,2DAA2D,EAAE,GAAG,CAAC,CAAA;QAC7E,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;;QACpD,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,MAAM,CAAC,CAAA;QAC3D,MAAM,OAAO,GAAG;YACd,IAAI,EAAE;gBACJ,KAAK,EAAE,wBAAwB;gBAC/B,SAAS,EAAE,EAAE,SAAS,EAAE;aACzB;SACF,CAAA;QACD,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,OAAO,CAAC,CAAA;QAC7D,MAAM,oBAAoB,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACxD,OAAO,CAAC,GAAG,CAAC,oDAAoD,EAAE,oBAAoB,CAAC,CAAA;QAEvF,MAAM,SAAS,GAAG,MAAA,MAAA,MAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,IAAI,0CAAE,IAAI,0CAAE,sBAAsB,0CAAE,gBAAgB,CAAA;QAC5F,OAAO,CAAC,GAAG,CAAC,yCAAyC,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;QAE1F,MAAM,gBAAgB,GAAG,qBAAW,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YAClE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAA;YACpB,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,IAAI,CAAC,CAAA;YACvD,OAAO,CACL,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,MAAK,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;mBACrC,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,MAAK,QAAQ,CAAC;mBAC3B,CAAC,gBAAM,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CACpD,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,CAAC,GAAG,CAAC,iDAAiD,EAAE,gBAAgB,CAAC,CAAA;QAChF,IAAI,wBAAc,CAAC,gBAAgB,CAAC,EAAE;YACpC,OAAO,IAAI,CAAA;SACZ;QAED,IAAI,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,0CAAE,WAAW,EAAE;YACpC,OAAO,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,0CAAE,SAAS,CAAC,CAAA;SAC5E;QAED,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAA;QACjE,OAAO,KAAK,CAAA;IACd,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,MAAM,MAAM,GAAG,IAAI,qBAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QAEvE,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QAEvD,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,OAAO,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAA;SAC9C;QAED,OAAO,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAA;IAC7C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAiCE;IAEF,KAAK,CAAC,cAAc;QAClB,MAAM,MAAM,GAAG,IAAI,qBAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QACvE,oCAAoC;QACpC,MAAM,WAAW,GAAG;YAClB,QAAQ,IAAI,CAAC,IAAI,EAAE;YACnB,QAAQ,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;SAC/D,CAAA;QACD,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,UAAU,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAA;QAE/D,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW;YAC3B,CAAC,CAAC,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,SAAS,CAAC;YACvD,CAAC,CAAC,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;QAEtD,IAAI,uBAAa,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CAAC,EAAE;YACnC,MAAM,IAAI,qBAAO,CAAC,MAAM,CAAC,YAAY,CAAC;gBACpC,OAAO,EAAE,+BAA+B;aACzC,CAAC,CAAA;SACH;QAED,OAAO,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,eAAe,CAAA;IAC9B,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAE,MAAM,EAAE,SAAS;;QAC3C,MAAM,EACJ,KAAK,EACL,IAAI,EACJ,IAAI,GACL,GAAG,IAAI,CAAC,aAAa,CAAA;QAEtB,MAAM,OAAO,GAAG;YACd,IAAI,EAAE;gBACJ,KAAK,EAAE,0BAA0B;gBACjC,SAAS,EAAE;oBACT,IAAI;oBACJ,IAAI;oBACJ,KAAK;oBACL,SAAS;iBACV;aACF;SACF,CAAA;QAED,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAEpD,IAAI,CAAA,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,0CAAE,MAAM,KAAI,uBAAa,CAAC,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,0CAAE,MAAM,CAAC,EAAE;YACnF,MAAM,IAAI,qBAAO,CAAC,MAAM,CAAC,YAAY,CAAC;gBACpC,OAAO,EAAE,mCAAmC;gBAC5C,SAAS,EAAE,qBAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,sBAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;aAC5G,CAAC,CAAA;SACH;QAED,OAAO,MAAA,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,0CAAE,IAAI,0CAAE,wBAAwB,CAAA;IAC/D,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAE,MAAM,EAAE,SAAS;;QAC9C,MAAM,EACJ,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,IAAI,EAAE,QAAQ,GACf,GAAG,IAAI,CAAC,aAAa,CAAA;QAEtB,MAAM,OAAO,GAAG;YACd,IAAI,EAAE;gBACJ,KAAK,EAAE,2BAA2B;gBAClC,SAAS,EAAE;oBACT,IAAI;oBACJ,IAAI;oBACJ,SAAS;oBACT,SAAS,EAAE,CAAC;4BACV,IAAI,EAAE;gCACJ,0BAA0B,EAAE;oCAC1B,QAAQ;oCACR,KAAK;iCACN;6BACF;yBACF,CAAC;iBACH;aACF;SACF,CAAA;QAED,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAEpD,IAAI,CAAA,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,0CAAE,MAAM,KAAI,uBAAa,CAAC,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,0CAAE,MAAM,CAAC,EAAE;YACnF,MAAM,IAAI,qBAAO,CAAC,MAAM,CAAC,YAAY,CAAC;gBACpC,OAAO,EAAE,oCAAoC;gBAC7C,SAAS,EAAE,qBAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,sBAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;aAC5G,CAAC,CAAA;SACH;QAED,OAAO,MAAA,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,0CAAE,IAAI,0CAAE,qBAAqB,CAAA;IAC5D,CAAC;CACF;AA9OD,wCA8OC"}
1
+ {"version":3,"file":"billing.js","sourceRoot":"","sources":["../../src/utils/billing.js"],"names":[],"mappings":";;;AAAA,sDAA8C;AAE9C,uCAQkB;AAClB,2CAOoB;AAEpB,MAAa,cAAc;IACzB,YAAY,OAAO,EAAE,mBAAmB;QACtC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,mBAAmB,CAAA;QAEpE,IACE,qBAAW,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAC;YAC1B,qBAAW,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,CAAC;YACjC,CAAC,MAAM,CAAC,MAAM,CAAC,6BAAiB,CAAC,CAAC,QAAQ,CAAC,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI,CAAC,EAChE;YACA,MAAM,IAAI,qBAAO,CAAC,MAAM,CAAC,YAAY,CAAC;gBACpC,OAAO,EAAE,+BAA+B;aACzC,CAAC,CAAA;SACH;QAED,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QACxB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;QACtC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAA;QACnB,IAAI,CAAC,UAAU,GAAG,YAAY,CAAA;QAC9B,IAAI,CAAC,aAAa,GAAG,sBAAY,CAAC,cAAc,CAAC,CAAA;QACjD,IAAI,CAAC,WAAW,GAAG,+BAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;IAC1E,CAAC;IAED,KAAK,CAAC,aAAa;;QACjB,IAAI;YACF,IAAI,MAAM,IAAI,CAAC,gBAAgB,EAAE,EAAE;gBACjC,OAAO,SAAS,CAAA;aACjB;YAED,OAAO,IAAI,CAAC,cAAc,EAAE,CAAA;SAC7B;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,qBAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE;gBACrD,MAAM,IAAI,qBAAO,CAAC,MAAM,CAAC,YAAY,CAAC;oBACpC,OAAO,EAAE,wCAAwC;oBACjD,SAAS,EAAE,qBAAW,CAAC,MAAA,KAAK,CAAC,QAAQ,0CAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,sBAAY,CAAC,OAAO,CAAC,CAAC;iBAC3F,CAAC,CAAA;aACH;YAED,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,MAAM;;QACpC,MAAM,oBAAoB,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;YAC9C,IAAI,EAAE,qCAAyB;SAChC,CAAC,CAAA;QAEF,MAAM,aAAa,GAAG,MAAA,MAAA,MAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,IAAI,0CAAE,IAAI,0CAAE,sBAAsB,0CAAE,mBAAmB,CAAA;QAEnG,MAAM,oBAAoB,GAAG,qBAAW,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAC5G,CAAC,UAAU,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;eACrC,CAAC,gBAAM,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CACpD,CAAC,CAAA;QAEF,OAAO,wBAAc,CAAC,oBAAoB,CAAC,CAAA;IAC7C,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;;QACpD,MAAM,oBAAoB,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;YAC9C,IAAI,EAAE;gBACJ,KAAK,EAAE,oCAAwB;gBAC/B,SAAS,EAAE,EAAE,SAAS,EAAE;aACzB;SACF,CAAC,CAAA;QAEF,MAAM,SAAS,GAAG,MAAA,MAAA,MAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,IAAI,0CAAE,IAAI,0CAAE,sBAAsB,0CAAE,gBAAgB,CAAA;QAE5F,MAAM,gBAAgB,GAAG,qBAAW,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAC7E,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,MAAK,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;eACrC,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,MAAK,QAAQ,CAAC;eAC3B,CAAC,gBAAM,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CACpD,CAAC,CAAA;QAEF,IAAI,wBAAc,CAAC,gBAAgB,CAAC,EAAE;YACpC,OAAO,IAAI,CAAA;SACZ;QAED,IAAI,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,0CAAE,WAAW,EAAE;YACpC,OAAO,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,0CAAE,SAAS,CAAC,CAAA;SAC5E;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,MAAM,MAAM,GAAG,IAAI,qBAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QAEvE,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,OAAO,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAA;SAC9C;QAED,OAAO,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAA;IAC7C,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,MAAM,GAAG,IAAI,qBAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QACvE,oCAAoC;QACpC,MAAM,WAAW,GAAG;YAClB,QAAQ,IAAI,CAAC,IAAI,EAAE;YACnB,QAAQ,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;SAC/D,CAAA;QACD,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,UAAU,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAA;QAE/D,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW;YAC3B,CAAC,CAAC,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,SAAS,CAAC;YACvD,CAAC,CAAC,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;QAEtD,IAAI,uBAAa,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CAAC,EAAE;YACnC,MAAM,IAAI,qBAAO,CAAC,MAAM,CAAC,YAAY,CAAC;gBACpC,OAAO,EAAE,+BAA+B;aACzC,CAAC,CAAA;SACH;QAED,OAAO,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,eAAe,CAAA;IAC9B,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAE,MAAM,EAAE,SAAS;;QAC3C,MAAM,EACJ,KAAK,EACL,IAAI,EACJ,IAAI,GACL,GAAG,IAAI,CAAC,aAAa,CAAA;QAEtB,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;YAC1C,IAAI,EAAE;gBACJ,KAAK,EAAE,sCAA0B;gBACjC,SAAS,EAAE;oBACT,IAAI;oBACJ,IAAI;oBACJ,KAAK;oBACL,SAAS;iBACV;aACF;SACF,CAAC,CAAA;QAEF,IAAI,CAAA,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,0CAAE,MAAM,KAAI,uBAAa,CAAC,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,0CAAE,MAAM,CAAC,EAAE;YACnF,MAAM,IAAI,qBAAO,CAAC,MAAM,CAAC,YAAY,CAAC;gBACpC,OAAO,EAAE,mCAAmC;gBAC5C,SAAS,EAAE,qBAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,sBAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;aAC5G,CAAC,CAAA;SACH;QAED,OAAO,MAAA,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,0CAAE,IAAI,0CAAE,wBAAwB,CAAA;IAC/D,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAE,MAAM,EAAE,SAAS;;QAC9C,MAAM,EACJ,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,IAAI,EAAE,QAAQ,GACf,GAAG,IAAI,CAAC,aAAa,CAAA;QAEtB,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;YAC1C,IAAI,EAAE;gBACJ,KAAK,EAAE,uCAA2B;gBAClC,SAAS,EAAE;oBACT,IAAI;oBACJ,IAAI;oBACJ,SAAS;oBACT,SAAS,EAAE,CAAC;4BACV,IAAI,EAAE;gCACJ,0BAA0B,EAAE;oCAC1B,QAAQ;oCACR,KAAK;iCACN;6BACF;yBACF,CAAC;iBACH;aACF;SACF,CAAC,CAAA;QAEF,IAAI,CAAA,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,0CAAE,MAAM,KAAI,uBAAa,CAAC,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,0CAAE,MAAM,CAAC,EAAE;YACnF,MAAM,IAAI,qBAAO,CAAC,MAAM,CAAC,YAAY,CAAC;gBACpC,OAAO,EAAE,oCAAoC;gBAC7C,SAAS,EAAE,qBAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,sBAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;aAC5G,CAAC,CAAA;SACH;QAED,OAAO,MAAA,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,0CAAE,IAAI,0CAAE,qBAAqB,CAAA;IAC5D,CAAC;CACF;AApLD,wCAoLC"}
@@ -0,0 +1,21 @@
1
+ export const COLLECTION_ROOT: "oauth-data";
2
+ export namespace PAGE_ROUTE_NAMES {
3
+ const EXIT: string;
4
+ const ERROR: string;
5
+ }
6
+ export namespace API_ROUTE_NAMES {
7
+ const AUTH: string;
8
+ const AUTH_CALLBACK: string;
9
+ const APP_UNINSTALLED: string;
10
+ }
11
+ export namespace BILLING_INTERVALS {
12
+ const ONE_TIME: string;
13
+ const EVERY_30_DAYS: string;
14
+ const ANNUAL: string;
15
+ }
16
+ export const RECURRING_INTERVALS: string[];
17
+ export const SHOP_QUERY: "\n {\n shop {\n name\n }\n }\n";
18
+ export const RECURRING_PURCHASES_QUERY: "\n query appSubscription {\n currentAppInstallation {\n activeSubscriptions {\n name, test\n }\n }\n }\n";
19
+ export const ONE_TIME_PURCHASES_QUERY: "\n query appPurchases($endCursor: String) {\n currentAppInstallation {\n oneTimePurchases(first: 250, sortKey: CREATED_AT, after: $endCursor) {\n edges {\n node {\n name, test, status\n }\n }\n pageInfo {\n hasNextPage, endCursor\n }\n }\n }\n }\n";
20
+ export const RECURRING_PURCHASE_MUTATION: "\n mutation test(\n $name: String!\n $lineItems: [AppSubscriptionLineItemInput!]!\n $returnUrl: URL!\n $test: Boolean\n ) {\n appSubscriptionCreate(\n name: $name\n lineItems: $lineItems\n returnUrl: $returnUrl\n test: $test\n ) {\n confirmationUrl\n userErrors {\n field\n message\n }\n }\n }\n";
21
+ export const ONE_TIME_PURCHASE_MUTATION: "\n mutation test(\n $name: String!\n $price: MoneyInput!\n $returnUrl: URL!\n $test: Boolean\n ) {\n appPurchaseOneTimeCreate(\n name: $name\n price: $price\n returnUrl: $returnUrl\n test: $test\n ) {\n confirmationUrl\n userErrors {\n field\n message\n }\n }\n }\n";