@memberstack/dom 1.9.7 → 1.9.9

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.
@@ -16,9 +16,13 @@ export interface ClientConfig {
16
16
  }
17
17
  declare type BearerToken = string;
18
18
  export declare const initRequest: ({ publicKey, appId, token, customEndpoint, sessionDurationDays }: ClientConfig) => {
19
+ signupWithProvider(params?: Params.SignupWithProviderParams): Promise<unknown>;
20
+ loginWithProvider(params?: Params.LoginWithProviderParams): Promise<unknown>;
21
+ connectProvider(params?: Params.LoginWithProviderParams): Promise<Payloads.ConnectProviderPayload>;
22
+ disconnectProvider(params: Params.LoginWithProviderParams): Promise<Payloads.ConnectProviderPayload>;
23
+ getAppAndMember(params?: any): Promise<Payloads.GetAppAndMemberPayload>;
19
24
  getApp(): Promise<Payloads.AppPayload>;
20
- getAuthProviders(): Promise<Payloads.AppPayload>;
21
- loginMemberEmailPassword(params: Params.LoginMemberEmailPasswordParams): Promise<Payloads.LoginMemberEmailPasswordPayload>;
25
+ loginMemberEmailPassword(params: Params.LoginMemberEmailPasswordParams, options?: any): Promise<Payloads.LoginMemberEmailPasswordPayload>;
22
26
  loginMemberAuthProvider(params: Params.LoginMemberAuthProviderParams): Promise<Payloads.LoginMemberAuthProviderPayload>;
23
27
  getPlan(params: Params.GetPlanParams): Promise<Payloads.GetPlanPayload>;
24
28
  getPlans(): Promise<Payloads.GetPlansPayload>;
@@ -26,28 +30,18 @@ export declare const initRequest: ({ publicKey, appId, token, customEndpoint, se
26
30
  getCurrentMember(options?: GetCurrentMemberParams): Promise<Payloads.GetCurrentMemberPayload>;
27
31
  getMemberJSON(options?: MemberstackOptions): Promise<Payloads.GetMemberJSONPayload>;
28
32
  updateMemberJSON(params: Params.UpdateMemberJSONParams, options?: MemberstackOptions): Promise<Payloads.GetMemberJSONPayload>;
29
- getMemberCards(options?: MemberstackOptions): Promise<Payloads.GetMemberCardsPayload>;
30
- getMemberInvoices(params?: Params.GetMemberInvoicesParams, options?: MemberstackOptions): Promise<Payloads.GetMemberInvoicesPayload>;
31
- getMemberReceipts(params?: Params.GetMemberReceiptsParams, options?: MemberstackOptions): Promise<Payloads.GetMemberReceiptsPayload>;
32
- getAuthenticationClientSecret(params: Params.GetAuthenticationClientSecretParams, options?: MemberstackOptions): Promise<Payloads.GetAuthenticationClientSecretPayload>;
33
- getTotalCheckoutAmount(params: Params.GetTotalCheckoutAmountParams, options?: MemberstackOptions): Promise<Payloads.GetTotalCheckoutAmountPayload>;
34
- purchasePlans(params: Params.PurchasePlansParams, options?: MemberstackOptions): Promise<Payloads.PurchasePlansPayload>;
35
33
  addPlan(params: Params.AddPlanParams, options?: MemberstackOptions): Promise<Payloads.AddPlanPayload>;
36
34
  purchasePlansWithCheckout(params: Params.PurchasePlansWithCheckoutParams, options?: MemberstackOptions): Promise<Payloads.PurchasePlansWithCheckoutPayload>;
37
35
  launchStripeCustomerPortal(params: Params.LaunchStripeCustomerPortalParams, options?: MemberstackOptions): Promise<Payloads.LaunchStripeCustomerPortalPayload>;
38
36
  removePlan(params: Params.RemovePlanParams, options?: MemberstackOptions): Promise<null>;
39
- cancelPlan(params: Params.CancelPlanParams, options?: MemberstackOptions): Promise<Payloads.CancelPlanPayload>;
40
37
  updateMember(params: Params.UpdateMemberParams, options?: MemberstackOptions): Promise<Payloads.UpdateMemberPayload>;
41
38
  updateMemberAuth(params: Params.UpdateMemberAuthParams, options?: MemberstackOptions): Promise<Payloads.UpdateMemberAuthPayload>;
42
- addCard(params: Params.AddMemberCardParams, options?: MemberstackOptions): Promise<Payloads.AddMemberCardPayload>;
43
- updateDefaultCard(params: Params.UpdateDefaultCardParams, options?: MemberstackOptions): Promise<Payloads.UpdateDefaultCardPayload>;
44
- updatePlanPayment(params: Params.UpdatePlanPaymentParams, options?: MemberstackOptions): Promise<Payloads.UpdatePlanPaymentPayload>;
45
- signupMemberEmailPassword(params: Params.SignupMemberEmailPasswordParams): Promise<Payloads.SignupMemberEmailPasswordPayload>;
46
- signupMemberAuthProvider(params: Params.SignupMemberAuthProviderParams): Promise<Payloads.SignupMemberAuthProviderPayload>;
39
+ setPassword(params: Params.SetPasswordParams, options?: MemberstackOptions): Promise<Payloads.SetPasswordPayload>;
40
+ signupMemberEmailPassword(params: Params.SignupMemberEmailPasswordParams, options?: any): Promise<Payloads.SignupMemberEmailPasswordPayload>;
41
+ sendMemberVerificationEmail(): Promise<void>;
47
42
  sendMemberResetPasswordEmail(params: Params.SendMemberResetPasswordEmailParams): Promise<Payloads.SendMemberResetPasswordEmailPayload>;
48
- resetMemberPassword(params: Params.ResetMemberPasswordParams): Promise<Payloads.ResetMemberPasswordPayload>;
43
+ resetMemberPassword(params: Params.ResetMemberPasswordParams): Promise<void>;
49
44
  logout(options?: MemberstackOptions): Promise<Payloads.LogoutMemberPayload>;
50
- replacePlan(params: Params.ReplacePlanParams, options?: MemberstackOptions): Promise<Payloads.ReplacePlanPayload>;
51
45
  decodeToken({ token }: {
52
46
  token: string;
53
47
  }): Promise<Pick<JWTPayload, "iat" | "exp"> & {
@@ -53,9 +53,70 @@ var requests_2 = require("./requests");
53
53
  var jose_1 = require("jose");
54
54
  var auth_1 = require("../../auth");
55
55
  var cookies_1 = require("../../utils/cookies");
56
+ var endpoints_1 = require("../../constants/endpoints");
57
+ var globalSessionDurationDays;
56
58
  var addHeaders = function (options) { return (__assign({}, ((options === null || options === void 0 ? void 0 : options.token) && {
57
59
  Authorization: "Bearer " + options.token,
58
60
  }))); };
61
+ var promiseResolve, promiseReject;
62
+ var receiveMessage = function (event) {
63
+ var _a;
64
+ var data = event.data, origin = event.origin;
65
+ console.log({ origin: origin });
66
+ console.log({ data: data });
67
+ var acceptedOrigins = [
68
+ "https://client-testing.ngrok.io",
69
+ "https://client.memberstack.com",
70
+ "https://dev-client.memberstack.com",
71
+ ];
72
+ if (!acceptedOrigins.includes(origin))
73
+ return;
74
+ if ((_a = data === null || data === void 0 ? void 0 : data.data) === null || _a === void 0 ? void 0 : _a.member) {
75
+ auth_1.setPersistedMember(data.data.member);
76
+ cookies_1.setMemberCookie(data.data.tokens.accessToken, globalSessionDurationDays);
77
+ }
78
+ if (data === null || data === void 0 ? void 0 : data.error) {
79
+ promiseReject(data.error);
80
+ }
81
+ promiseResolve(data);
82
+ };
83
+ var windowObjectReference = null;
84
+ var previousUrl = null;
85
+ var openSignInWindow = function (url, name) { return __awaiter(void 0, void 0, void 0, function () {
86
+ var dualScreenLeft, dualScreenTop, width, height, systemZoom, left, top, strWindowFeatures;
87
+ return __generator(this, function (_a) {
88
+ // remove any existing event listeners
89
+ window.removeEventListener('message', receiveMessage);
90
+ dualScreenLeft = window.screenLeft !== undefined ? window.screenLeft : window.screenX;
91
+ dualScreenTop = window.screenTop !== undefined ? window.screenTop : window.screenY;
92
+ width = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth ? document.documentElement.clientWidth : screen.width;
93
+ height = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight ? document.documentElement.clientHeight : screen.height;
94
+ systemZoom = width / window.screen.availWidth;
95
+ left = (width - 600) / 2 / systemZoom + dualScreenLeft;
96
+ top = (height - 700) / 2 / systemZoom + dualScreenTop;
97
+ strWindowFeatures = "toolbar=no, menubar=no, width=" + 600 / systemZoom + ", height=" + 700 / systemZoom + ", top=" + top + ", left=" + left;
98
+ if (windowObjectReference === null || windowObjectReference.closed) {
99
+ windowObjectReference = window.open(url, name, strWindowFeatures);
100
+ }
101
+ else if (previousUrl !== url) {
102
+ windowObjectReference = window.open(url, name, strWindowFeatures);
103
+ windowObjectReference.focus();
104
+ }
105
+ else {
106
+ windowObjectReference.focus();
107
+ }
108
+ window.addEventListener('message', function (event) { return receiveMessage(event); }, false);
109
+ previousUrl = url;
110
+ // close window if user navigates away
111
+ window.addEventListener('beforeunload', function () {
112
+ windowObjectReference === null || windowObjectReference === void 0 ? void 0 : windowObjectReference.close();
113
+ });
114
+ return [2 /*return*/, new Promise(function (resolve, reject) {
115
+ promiseResolve = resolve;
116
+ promiseReject = reject;
117
+ })];
118
+ });
119
+ }); };
59
120
  exports.initRequest = function (_a) {
60
121
  var publicKey = _a.publicKey, appId = _a.appId, token = _a.token, customEndpoint = _a.customEndpoint, sessionDurationDays = _a.sessionDurationDays;
61
122
  var sendRequest = requests_1.createRequestHandler({
@@ -64,28 +125,97 @@ exports.initRequest = function (_a) {
64
125
  customEndpoint: customEndpoint,
65
126
  appId: appId,
66
127
  }).sendRequest;
128
+ globalSessionDurationDays = sessionDurationDays;
67
129
  return {
68
- getApp: function () {
130
+ signupWithProvider: function (params) {
131
+ return __awaiter(this, void 0, void 0, function () {
132
+ var customFields, plans, queryParams;
133
+ return __generator(this, function (_a) {
134
+ customFields = encodeURIComponent(params.customFields ? JSON.stringify(params.customFields) : "{}");
135
+ plans = encodeURIComponent(params.plans ? JSON.stringify(params.plans) : "[]");
136
+ queryParams = new URLSearchParams({
137
+ provider: params.provider,
138
+ customFields: customFields,
139
+ plans: plans,
140
+ appId: appId,
141
+ origin: window.location.hostname,
142
+ });
143
+ return [2 /*return*/, openSignInWindow(endpoints_1.endpoints.API + "/auth-provider/signup?" + queryParams, "signup")];
144
+ });
145
+ });
146
+ },
147
+ loginWithProvider: function (params) {
148
+ return __awaiter(this, void 0, void 0, function () {
149
+ var queryParams;
150
+ return __generator(this, function (_a) {
151
+ queryParams = new URLSearchParams({
152
+ provider: params.provider,
153
+ appId: appId,
154
+ origin: window.location.hostname,
155
+ });
156
+ return [2 /*return*/, openSignInWindow(endpoints_1.endpoints.API + "/auth-provider/login?" + queryParams, "login")];
157
+ });
158
+ });
159
+ },
160
+ connectProvider: function (params) {
161
+ return __awaiter(this, void 0, void 0, function () {
162
+ var queryParams;
163
+ return __generator(this, function (_a) {
164
+ queryParams = new URLSearchParams({
165
+ provider: params.provider,
166
+ appId: appId,
167
+ member: cookies_1.getMemberCookie(),
168
+ origin: window.location.hostname,
169
+ });
170
+ //@ts-ignore
171
+ return [2 /*return*/, openSignInWindow(endpoints_1.endpoints.API + "/auth-provider/connect?" + queryParams, "connect")];
172
+ });
173
+ });
174
+ },
175
+ disconnectProvider: function (params) {
69
176
  return __awaiter(this, void 0, void 0, function () {
70
177
  return __generator(this, function (_a) {
178
+ return [2 /*return*/, sendRequest({
179
+ method: requests_2.HttpMethod.POST,
180
+ url: "/member/disconnect-provider",
181
+ data: {
182
+ provider: params.provider,
183
+ }
184
+ })];
185
+ });
186
+ });
187
+ },
188
+ getAppAndMember: function (params) {
189
+ return __awaiter(this, void 0, void 0, function () {
190
+ var queryParams;
191
+ return __generator(this, function (_a) {
192
+ queryParams = new URLSearchParams({
193
+ // @ts-ignore
194
+ includeSSOText: window === null || window === void 0 ? void 0 : window.ssoUI,
195
+ });
71
196
  return [2 /*return*/, sendRequest({
72
197
  method: requests_2.HttpMethod.GET,
73
- url: "/app",
198
+ url: "/app-member?" + queryParams,
74
199
  })];
75
200
  });
76
201
  });
77
202
  },
78
- getAuthProviders: function () {
203
+ getApp: function () {
79
204
  return __awaiter(this, void 0, void 0, function () {
205
+ var queryParams;
80
206
  return __generator(this, function (_a) {
207
+ queryParams = new URLSearchParams({
208
+ // @ts-ignore
209
+ includeSSOText: window === null || window === void 0 ? void 0 : window.ssoUI,
210
+ });
81
211
  return [2 /*return*/, sendRequest({
82
212
  method: requests_2.HttpMethod.GET,
83
- url: "/auth/providers",
213
+ url: "/app?" + queryParams,
84
214
  })];
85
215
  });
86
216
  });
87
217
  },
88
- loginMemberEmailPassword: function (params) {
218
+ loginMemberEmailPassword: function (params, options) {
89
219
  return __awaiter(this, void 0, void 0, function () {
90
220
  var data;
91
221
  return __generator(this, function (_a) {
@@ -96,6 +226,7 @@ exports.initRequest = function (_a) {
96
226
  data: {
97
227
  email: params.email,
98
228
  password: params.password,
229
+ options: options
99
230
  },
100
231
  })];
101
232
  case 1:
@@ -187,7 +318,7 @@ exports.initRequest = function (_a) {
187
318
  return __generator(this, function (_a) {
188
319
  getMemberRequest = sendRequest({
189
320
  method: requests_2.HttpMethod.GET,
190
- url: "/member",
321
+ url: "/member?" + Math.floor(1000 + Math.random() * 9000),
191
322
  headers: addHeaders(options),
192
323
  });
193
324
  // temp hacky solution
@@ -228,92 +359,6 @@ exports.initRequest = function (_a) {
228
359
  });
229
360
  });
230
361
  },
231
- getMemberCards: function (options) {
232
- return __awaiter(this, void 0, void 0, function () {
233
- return __generator(this, function (_a) {
234
- return [2 /*return*/, sendRequest({
235
- method: requests_2.HttpMethod.GET,
236
- url: "/member/cards",
237
- headers: addHeaders(options),
238
- })];
239
- });
240
- });
241
- },
242
- getMemberInvoices: function (params, options) {
243
- return __awaiter(this, void 0, void 0, function () {
244
- var queryParams;
245
- return __generator(this, function (_a) {
246
- queryParams = params &&
247
- new URLSearchParams(__assign(__assign(__assign({}, (params.first && { first: "" + params.first })), (params.after && { after: params.after })), (params.order && { order: params.order })));
248
- return [2 /*return*/, sendRequest({
249
- method: requests_2.HttpMethod.GET,
250
- url: "/member/invoices" + ((queryParams === null || queryParams === void 0 ? void 0 : queryParams.toString().length) ? "?" + queryParams : ""),
251
- headers: addHeaders(options),
252
- })];
253
- });
254
- });
255
- },
256
- getMemberReceipts: function (params, options) {
257
- return __awaiter(this, void 0, void 0, function () {
258
- var queryParams;
259
- return __generator(this, function (_a) {
260
- queryParams = params &&
261
- new URLSearchParams(__assign(__assign(__assign({}, (params.first && { first: "" + params.first })), (params.after && { after: params.after })), (params.order && { order: params.order })));
262
- return [2 /*return*/, sendRequest({
263
- method: requests_2.HttpMethod.GET,
264
- url: "/member/receipts" + ((queryParams === null || queryParams === void 0 ? void 0 : queryParams.toString().length) ? "?" + queryParams : ""),
265
- headers: addHeaders(options),
266
- })];
267
- });
268
- });
269
- },
270
- getAuthenticationClientSecret: function (params, options) {
271
- return __awaiter(this, void 0, void 0, function () {
272
- return __generator(this, function (_a) {
273
- return [2 /*return*/, sendRequest({
274
- method: requests_2.HttpMethod.GET,
275
- url: "/member/planConnections/" + params.planConnectionId + "/authentication-client-secret",
276
- headers: addHeaders(options),
277
- })];
278
- });
279
- });
280
- },
281
- getTotalCheckoutAmount: function (params, options) {
282
- return __awaiter(this, void 0, void 0, function () {
283
- return __generator(this, function (_a) {
284
- return [2 /*return*/, sendRequest({
285
- method: requests_2.HttpMethod.POST,
286
- url: "/payment/get-total-amount",
287
- data: {
288
- priceIds: params.priceIds,
289
- },
290
- headers: addHeaders(options),
291
- })];
292
- });
293
- });
294
- },
295
- purchasePlans: function (params, options) {
296
- var _a, _b, _c;
297
- return __awaiter(this, void 0, void 0, function () {
298
- return __generator(this, function (_d) {
299
- return [2 /*return*/, sendRequest({
300
- method: requests_2.HttpMethod.POST,
301
- url: "/member/plans/purchase",
302
- data: {
303
- plans: params.plans,
304
- payment: __assign(__assign({}, (((_a = params.payment) === null || _a === void 0 ? void 0 : _a.stripe) && {
305
- stripe: {
306
- paymentMethodId: (_b = params.payment.stripe) === null || _b === void 0 ? void 0 : _b.paymentMethodId,
307
- },
308
- })), (((_c = params.payment) === null || _c === void 0 ? void 0 : _c.cardId) && {
309
- cardId: params.payment.cardId,
310
- })),
311
- },
312
- headers: addHeaders(options),
313
- })];
314
- });
315
- });
316
- },
317
362
  addPlan: function (params, options) {
318
363
  return __awaiter(this, void 0, void 0, function () {
319
364
  return __generator(this, function (_a) {
@@ -434,20 +479,6 @@ exports.initRequest = function (_a) {
434
479
  });
435
480
  });
436
481
  },
437
- cancelPlan: function (params, options) {
438
- return __awaiter(this, void 0, void 0, function () {
439
- return __generator(this, function (_a) {
440
- return [2 /*return*/, sendRequest({
441
- method: requests_2.HttpMethod.POST,
442
- url: "/member/plans/cancel",
443
- data: {
444
- planConnectionId: params.planConnectionId,
445
- },
446
- headers: addHeaders(options),
447
- })];
448
- });
449
- });
450
- },
451
482
  updateMember: function (params, options) {
452
483
  return __awaiter(this, void 0, void 0, function () {
453
484
  return __generator(this, function (_a) {
@@ -472,53 +503,21 @@ exports.initRequest = function (_a) {
472
503
  });
473
504
  });
474
505
  },
475
- addCard: function (params, options) {
476
- return __awaiter(this, void 0, void 0, function () {
477
- return __generator(this, function (_a) {
478
- return [2 /*return*/, sendRequest({
479
- method: requests_2.HttpMethod.POST,
480
- url: "/member/cards",
481
- data: {
482
- stripe: {
483
- paymentMethodId: params.stripePaymentMethodId,
484
- },
485
- default: !!params.default,
486
- },
487
- headers: addHeaders(options),
488
- })];
489
- });
490
- });
491
- },
492
- updateDefaultCard: function (params, options) {
506
+ setPassword: function (params, options) {
493
507
  return __awaiter(this, void 0, void 0, function () {
494
508
  return __generator(this, function (_a) {
495
509
  return [2 /*return*/, sendRequest({
496
510
  method: requests_2.HttpMethod.POST,
497
- url: "/member/cards/update-default",
511
+ url: "/member/set-password",
498
512
  data: {
499
- cardId: params.cardId,
513
+ password: params.password,
500
514
  },
501
515
  headers: addHeaders(options),
502
516
  })];
503
517
  });
504
518
  });
505
519
  },
506
- updatePlanPayment: function (params, options) {
507
- return __awaiter(this, void 0, void 0, function () {
508
- return __generator(this, function (_a) {
509
- return [2 /*return*/, sendRequest({
510
- method: requests_2.HttpMethod.POST,
511
- url: "/member/update-payment",
512
- data: {
513
- planConnectionId: params.planConnectionId,
514
- cardId: params.cardId,
515
- },
516
- headers: addHeaders(options),
517
- })];
518
- });
519
- });
520
- },
521
- signupMemberEmailPassword: function (params) {
520
+ signupMemberEmailPassword: function (params, options) {
522
521
  return __awaiter(this, void 0, void 0, function () {
523
522
  var data;
524
523
  return __generator(this, function (_a) {
@@ -526,13 +525,15 @@ exports.initRequest = function (_a) {
526
525
  case 0: return [4 /*yield*/, sendRequest({
527
526
  method: requests_2.HttpMethod.POST,
528
527
  url: "/auth/signup",
529
- data: __assign({ email: params.email, password: params.password, customFields: params.customFields, metaData: params.metaData, plans: params.plans }, (params.payment && {
528
+ data: __assign(__assign({ email: params.email, password: params.password, customFields: params.customFields, metaData: params.metaData, plans: params.plans }, (params.payment && {
530
529
  payment: {
531
530
  stripe: {
532
531
  paymentMethodId: params.payment.stripe.paymentMethodId,
533
532
  },
534
533
  },
535
- })),
534
+ })), {
535
+ //internal use only
536
+ origin_domain: window.location.origin, options: options }),
536
537
  })];
537
538
  case 1:
538
539
  data = _a.sent();
@@ -543,36 +544,20 @@ exports.initRequest = function (_a) {
543
544
  });
544
545
  });
545
546
  },
546
- signupMemberAuthProvider: function (params) {
547
+ sendMemberVerificationEmail: function () {
547
548
  return __awaiter(this, void 0, void 0, function () {
548
549
  return __generator(this, function (_a) {
549
550
  return [2 /*return*/, sendRequest({
550
551
  method: requests_2.HttpMethod.POST,
551
- url: "/auth/signup-provider",
552
- data: __assign({ code: params.code, provider: params.provider, customFields: params.customFields, metaData: params.metaData, plans: params.plans }, (params.payment && {
553
- payment: {
554
- stripe: {
555
- paymentMethodId: params.payment.stripe.paymentMethodId,
556
- },
557
- },
558
- })),
552
+ url: "/auth/send-email-verification",
553
+ data: {
554
+ //internal use only
555
+ origin_domain: window.location.origin,
556
+ },
559
557
  })];
560
558
  });
561
559
  });
562
560
  },
563
- // async refreshMemberTokens(
564
- // params: Params.RefreshMemberTokensParams,
565
- // options?: MemberstackOptions
566
- // ): Promise<Payloads.RefreshMemberTokensPayload> {
567
- // return sendRequest({
568
- // method: HttpMethod.POST,
569
- // url: `/member/refresh-tokens`,
570
- // data: {
571
- // refreshToken: params.refreshToken,
572
- // },
573
- // headers: addHeaders(options),
574
- // });
575
- // },
576
561
  sendMemberResetPasswordEmail: function (params) {
577
562
  return __awaiter(this, void 0, void 0, function () {
578
563
  return __generator(this, function (_a) {
@@ -602,32 +587,19 @@ exports.initRequest = function (_a) {
602
587
  },
603
588
  logout: function (options) {
604
589
  return __awaiter(this, void 0, void 0, function () {
590
+ var data;
605
591
  return __generator(this, function (_a) {
606
- auth_1.unsetPersistedMember();
607
- return [2 /*return*/, sendRequest({
608
- method: requests_2.HttpMethod.POST,
609
- url: "/member/logout",
610
- headers: addHeaders(options),
611
- })];
612
- });
613
- });
614
- },
615
- replacePlan: function (params, options) {
616
- var _a;
617
- return __awaiter(this, void 0, void 0, function () {
618
- return __generator(this, function (_b) {
619
- return [2 /*return*/, sendRequest({
620
- method: requests_2.HttpMethod.POST,
621
- url: "/member/plans/replace",
622
- data: __assign({ newPlanId: params.newPlanId, priceId: params.priceId, planConnectionId: params.planConnectionId }, (params.payment && {
623
- payment: __assign(__assign({}, (params.payment.cardId && { cardId: params.payment.cardId })), (params.payment.stripe && {
624
- stripe: {
625
- paymentMethodId: (_a = params.payment.stripe) === null || _a === void 0 ? void 0 : _a.paymentMethodId,
626
- },
627
- })),
628
- })),
629
- headers: addHeaders(options),
630
- })];
592
+ switch (_a.label) {
593
+ case 0: return [4 /*yield*/, sendRequest({
594
+ method: requests_2.HttpMethod.POST,
595
+ url: "/member/logout",
596
+ headers: addHeaders(options),
597
+ })];
598
+ case 1:
599
+ data = _a.sent();
600
+ auth_1.unsetPersistedMember();
601
+ return [2 /*return*/, data];
602
+ }
631
603
  });
632
604
  });
633
605
  },
@@ -53,6 +53,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.createRequestHandler = exports.HttpHeaders = exports.HttpMethod = void 0;
54
54
  var axios_1 = __importDefault(require("axios"));
55
55
  var endpoints_1 = require("../../constants/endpoints");
56
+ var cookies_1 = require("../../utils/cookies");
56
57
  var HttpMethod;
57
58
  (function (HttpMethod) {
58
59
  HttpMethod["POST"] = "POST";
@@ -70,7 +71,7 @@ exports.createRequestHandler = function (_a) {
70
71
  var publicKey = _a.publicKey, appId = _a.appId, token = _a.token, customEndpoint = _a.customEndpoint;
71
72
  return {
72
73
  sendRequest: function (data, options) { return __awaiter(void 0, void 0, void 0, function () {
73
- var url, authHeader, formattedUrl, res, e_1;
74
+ var url, memberCookie, authHeader, formattedUrl, res, e_1;
74
75
  var _a, _b, _c;
75
76
  var _d, _e, _f, _g, _h, _j, _k, _l;
76
77
  return __generator(this, function (_m) {
@@ -78,9 +79,10 @@ exports.createRequestHandler = function (_a) {
78
79
  case 0:
79
80
  _m.trys.push([0, 2, , 3]);
80
81
  url = data.url;
82
+ memberCookie = cookies_1.getMemberCookie();
81
83
  authHeader = [
82
84
  (_e = (_d = data.headers) === null || _d === void 0 ? void 0 : _d["Authorization"]) === null || _e === void 0 ? void 0 : _e.replace("Bearer ", ""),
83
- token,
85
+ memberCookie,
84
86
  options === null || options === void 0 ? void 0 : options.token,
85
87
  ].find(function (x) { return x; });
86
88
  formattedUrl = "" + (customEndpoint || endpoints_1.endpoints.API) + url;
@@ -13,6 +13,19 @@ export declare type SignupMemberEmailPasswordParams = {
13
13
  };
14
14
  };
15
15
  };
16
+ export declare type SetPasswordParams = {
17
+ password: string;
18
+ };
19
+ export declare type SignupWithProviderParams = {
20
+ provider: string;
21
+ customFields?: Record<string, any>;
22
+ plans?: {
23
+ planId: string;
24
+ }[];
25
+ };
26
+ export declare type LoginWithProviderParams = {
27
+ provider: string;
28
+ };
16
29
  export declare type SignupMemberAuthProviderParams = {
17
30
  code: string;
18
31
  provider: "GOOGLE" | "FACEBOOK";
@@ -1,13 +1,16 @@
1
1
  import { Payload } from "./utils/payloads";
2
2
  export declare type AppPayload = Response<Payload.Transforms["App"]>;
3
+ export declare type GetAppAndMemberPayload = Response<Payload.Transforms["GetAppAndMember"]>;
3
4
  export declare type AddMemberCardPayload = Response<Payload.Transforms["Member"]>;
4
5
  export declare type CancelPlanPayload = Response<Payload.Transforms["Member"]>;
5
6
  export declare type RemovePlanPayload = Response<Payload.Transforms["Member"]>;
6
7
  export declare type GetCurrentMemberPayload = Response<Payload.Transforms["Member"]>;
7
8
  export declare type GetMemberJSONPayload = Response<Payload.Transforms["MemberJSON"]>;
8
9
  export declare type GetMemberCardsPayload = Response<Payload.Transforms["MemberCard"][]>;
10
+ export declare type ConnectProviderPayload = Response<Payload.Transforms["AuthProviders"]>;
9
11
  export declare type GetMemberInvoicesPayload = PaginatedResponse<Payload.Transforms["MemberInvoice"]>;
10
12
  export declare type GetMemberReceiptsPayload = PaginatedResponse<Payload.Transforms["MemberReceipt"]>;
13
+ export declare type SetPasswordPayload = Response<Payload.Transforms["Member"]>;
11
14
  export declare type GetRestrictedUrlGroupsPayload = Response<Payload.Transforms["RestrictedUrlGroup"][]>;
12
15
  export declare type GetPlansPayload = Response<Payload.Transforms["Plan"][]>;
13
16
  export declare type GetPlanPayload = Response<Payload.Transforms["Plan"]>;
@@ -29,7 +32,6 @@ export declare type UpdateMemberPayload = Response<Payload.Transforms["Member"]>
29
32
  export declare type UpdatePlanPaymentPayload = Response<Payload.Transforms["Member"]>;
30
33
  export declare type RefreshMemberTokensPayload = Response<Payload.Transforms["MemberAuth"]["tokens"]>;
31
34
  export declare type SendMemberResetPasswordEmailPayload = Response<string>;
32
- export declare type ResetMemberPasswordPayload = Response<Payload.Transforms["Member"]>;
33
35
  export declare type ReplacePlanPayload = Response<Payload.Transforms["Purchase"]>;
34
36
  export declare type GetAuthProvidersPayload = Response<Payload.Transforms["AuthProvider"][]>;
35
37
  export declare type GetTotalCheckoutAmountPayload = Response<Payload.Transforms["TotalCheckoutAmount"]>;
@@ -11,14 +11,21 @@ export declare namespace Payload {
11
11
  endCursor: string | null;
12
12
  totalCount: number;
13
13
  };
14
+ GetAppAndMember: {
15
+ app: Transforms["App"];
16
+ member: Transforms["Member"] | null;
17
+ };
14
18
  App: {
15
19
  id: string;
16
20
  name: string;
17
21
  mode: "live" | "sandbox";
18
22
  plans: Transforms["Plan"][];
19
23
  contentGroups: Transforms["RestrictedUrlGroup"][];
24
+ emailVerificationEnabled: boolean;
25
+ requireEmailVerification: boolean;
20
26
  customField: Transforms["CustomField"][];
21
27
  branding: Transforms["Branding"];
28
+ authProviders: Transforms["AuthProvider"][];
22
29
  };
23
30
  Branding: {
24
31
  logo: string;
@@ -33,6 +40,7 @@ export declare namespace Payload {
33
40
  name: string;
34
41
  key: string;
35
42
  allowAllMembers: boolean;
43
+ activeMemberHasAccess?: boolean;
36
44
  redirect: string;
37
45
  urls: {
38
46
  url: string;
@@ -50,18 +58,25 @@ export declare namespace Payload {
50
58
  };
51
59
  member: Transforms["Member"];
52
60
  redirect: string;
53
- payment: {
54
- requirePayment: string[];
55
- requireAuthentication: string[];
56
- };
61
+ contentGroups?: Transforms["RestrictedUrlGroup"][];
57
62
  };
58
63
  MemberJSON: {
59
64
  json: object;
60
65
  };
66
+ AuthProviders: {
67
+ providers: {
68
+ provider: string;
69
+ }[];
70
+ };
61
71
  Member: {
62
72
  id: string;
73
+ verified: boolean;
63
74
  auth: {
64
75
  email: string;
76
+ hasPassword: boolean;
77
+ providers: {
78
+ provider: string;
79
+ }[];
65
80
  };
66
81
  loginRedirect: string;
67
82
  stripeCustomerId: string;
@@ -201,9 +216,9 @@ export declare namespace Payload {
201
216
  AuthenticationClientSecret: string;
202
217
  AuthProvider: {
203
218
  clientId: string;
204
- redirectUri: string;
205
- authorizationEndpoint: string;
206
219
  provider: string;
220
+ providerType: string;
221
+ icon: string;
207
222
  };
208
223
  TotalCheckoutAmount: {
209
224
  total: number;