@memberstack/dom 1.0.0-beta.17 → 1.0.0-beta.20

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 (49) hide show
  1. package/{dist → lib}/auth/persistence/index.d.ts +1 -1
  2. package/lib/auth/persistence/index.js +13 -0
  3. package/{dist → lib}/auth/persistence/local.d.ts +5 -5
  4. package/lib/auth/persistence/local.js +20 -0
  5. package/{dist → lib}/auth/persistence/methods.d.ts +13 -13
  6. package/lib/auth/persistence/methods.js +87 -0
  7. package/{dist → lib}/auth/persistence/session.d.ts +5 -5
  8. package/lib/auth/persistence/session.js +20 -0
  9. package/{dist → lib}/constants/cookies.d.ts +3 -3
  10. package/lib/constants/cookies.js +7 -0
  11. package/{dist → lib}/constants/endpoint.d.ts +4 -4
  12. package/lib/constants/endpoint.js +7 -0
  13. package/{dist → lib}/constants/storage.d.ts +1 -1
  14. package/lib/constants/storage.js +4 -0
  15. package/lib/constants/window.d.ts +3 -0
  16. package/lib/constants/window.js +6 -0
  17. package/lib/index.d.ts +5 -0
  18. package/lib/index.js +7 -0
  19. package/lib/methods/client.d.ts +36 -0
  20. package/lib/methods/client.js +23 -0
  21. package/{dist → lib}/methods/dom/index.d.ts +2 -2
  22. package/lib/methods/dom/index.js +9 -0
  23. package/lib/methods/dom/methods.d.ts +31 -0
  24. package/lib/methods/dom/methods.js +45 -0
  25. package/lib/methods/dom/script.d.ts +3 -0
  26. package/lib/methods/dom/script.js +40 -0
  27. package/lib/methods/index.d.ts +12 -0
  28. package/lib/methods/index.js +35 -0
  29. package/{dist → lib}/utils/cookies.d.ts +2 -2
  30. package/lib/utils/cookies.js +19 -0
  31. package/lib/utils/interceptor.d.ts +4 -0
  32. package/lib/utils/interceptor.js +18 -0
  33. package/{dist → lib}/utils/proxy.d.ts +2 -2
  34. package/lib/utils/proxy.js +62 -0
  35. package/package.json +6 -18
  36. package/dist/constants/window.d.ts +0 -4
  37. package/dist/dom.cjs.development.js +0 -1262
  38. package/dist/dom.cjs.development.js.map +0 -1
  39. package/dist/dom.cjs.production.min.js +0 -2
  40. package/dist/dom.cjs.production.min.js.map +0 -1
  41. package/dist/dom.esm.js +0 -1259
  42. package/dist/dom.esm.js.map +0 -1
  43. package/dist/index.d.ts +0 -3
  44. package/dist/index.js +0 -8
  45. package/dist/methods/client.d.ts +0 -644
  46. package/dist/methods/dom/methods.d.ts +0 -17
  47. package/dist/methods/dom/script.d.ts +0 -3
  48. package/dist/methods/index.d.ts +0 -25
  49. package/dist/utils/interceptor.d.ts +0 -3
@@ -1 +1 @@
1
- export * from "./methods";
1
+ export * from "./methods";
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./methods"), exports);
@@ -1,5 +1,5 @@
1
- export declare const localStoragePersistence: {
2
- setMember: (member: any) => any;
3
- getMember: () => any;
4
- unsetMember: () => void;
5
- };
1
+ export declare const localStoragePersistence: {
2
+ setMember: (member: any) => any;
3
+ getMember: () => any;
4
+ unsetMember: () => void;
5
+ };
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.localStoragePersistence = void 0;
4
+ var storage_1 = require("../../constants/storage");
5
+ exports.localStoragePersistence = {
6
+ setMember: function (member) {
7
+ localStorage === null || localStorage === void 0 ? void 0 : localStorage.setItem(storage_1.PERSISTED_MEMBER_KEY, JSON.stringify(member));
8
+ return JSON.parse(localStorage === null || localStorage === void 0 ? void 0 : localStorage.getItem(storage_1.PERSISTED_MEMBER_KEY));
9
+ },
10
+ getMember: function () {
11
+ var persistedMember = localStorage === null || localStorage === void 0 ? void 0 : localStorage.getItem(storage_1.PERSISTED_MEMBER_KEY);
12
+ if (!persistedMember || !Object.keys(persistedMember).length) {
13
+ return null;
14
+ }
15
+ return JSON.parse(localStorage === null || localStorage === void 0 ? void 0 : localStorage.getItem(storage_1.PERSISTED_MEMBER_KEY));
16
+ },
17
+ unsetMember: function () {
18
+ localStorage === null || localStorage === void 0 ? void 0 : localStorage.removeItem(storage_1.PERSISTED_MEMBER_KEY);
19
+ },
20
+ };
@@ -1,13 +1,13 @@
1
- import memberstack from "@memberstack/client";
2
- declare type Await<T> = T extends PromiseLike<infer U> ? U : T;
3
- export declare enum Persistence {
4
- SESSION = "SESSION",
5
- LOCAL = "LOCAL"
6
- }
7
- export declare const setPersistedMember: (member: Await<ReturnType<ReturnType<typeof memberstack.init>["loginMemberEmailPassword"]>>["data"]["member"], persistence: Persistence) => void;
8
- export declare const getPersistedMember: (persistence: any) => any;
9
- export declare const unsetPersistedMember: (persistence: any) => void;
10
- export declare const onAuthChange: (cb: any) => {
11
- unsubscribe: () => boolean;
12
- };
13
- export {};
1
+ import memberstack from "@memberstack/client";
2
+ declare type Await<T> = T extends PromiseLike<infer U> ? U : T;
3
+ export declare enum Persistence {
4
+ SESSION = "SESSION",
5
+ LOCAL = "LOCAL"
6
+ }
7
+ export declare const setPersistedMember: (member: Await<ReturnType<ReturnType<typeof memberstack.init>["loginMemberEmailPassword"]>>["data"]["member"], persistence: Persistence) => void;
8
+ export declare const getPersistedMember: (persistence: any) => any;
9
+ export declare const unsetPersistedMember: (persistence: any) => void;
10
+ export declare const onAuthChange: (cb: any) => {
11
+ unsubscribe: () => boolean;
12
+ };
13
+ export {};
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ var __read = (this && this.__read) || function (o, n) {
3
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
4
+ if (!m) return o;
5
+ var i = m.call(o), r, ar = [], e;
6
+ try {
7
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
+ }
9
+ catch (error) { e = { error: error }; }
10
+ finally {
11
+ try {
12
+ if (r && !r.done && (m = i["return"])) m.call(i);
13
+ }
14
+ finally { if (e) throw e.error; }
15
+ }
16
+ return ar;
17
+ };
18
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
19
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
20
+ if (ar || !(i in from)) {
21
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
22
+ ar[i] = from[i];
23
+ }
24
+ }
25
+ return to.concat(ar || Array.prototype.slice.call(from));
26
+ };
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ exports.onAuthChange = exports.unsetPersistedMember = exports.getPersistedMember = exports.setPersistedMember = exports.Persistence = void 0;
29
+ var local_1 = require("./local");
30
+ var session_1 = require("./session");
31
+ var Persistence;
32
+ (function (Persistence) {
33
+ Persistence["SESSION"] = "SESSION";
34
+ Persistence["LOCAL"] = "LOCAL";
35
+ })(Persistence = exports.Persistence || (exports.Persistence = {}));
36
+ var createObservable = function () {
37
+ var observer = new Map();
38
+ return {
39
+ subscribe: function (key, fn) {
40
+ if (typeof fn !== "function")
41
+ return;
42
+ return observer.set(key, fn);
43
+ },
44
+ unsubscribe: function (key) {
45
+ return observer.delete(key);
46
+ },
47
+ notify: function (data) {
48
+ return __spreadArray([], __read(observer.values()), false).forEach(function (fn) { return fn(data); });
49
+ },
50
+ };
51
+ };
52
+ var observable = createObservable();
53
+ var getPersistence = function (persistence) {
54
+ if (persistence === Persistence.LOCAL) {
55
+ return local_1.localStoragePersistence;
56
+ }
57
+ if (persistence === Persistence.SESSION) {
58
+ return session_1.sessionStoragePersistence;
59
+ }
60
+ };
61
+ var setPersistedMember = function (member, persistence) {
62
+ var _a;
63
+ if (member) {
64
+ (_a = getPersistence(persistence)) === null || _a === void 0 ? void 0 : _a.setMember(member);
65
+ observable.notify(member);
66
+ }
67
+ };
68
+ exports.setPersistedMember = setPersistedMember;
69
+ var getPersistedMember = function (persistence) {
70
+ var _a;
71
+ return (_a = getPersistence(persistence)) === null || _a === void 0 ? void 0 : _a.getMember();
72
+ };
73
+ exports.getPersistedMember = getPersistedMember;
74
+ var unsetPersistedMember = function (persistence) {
75
+ var _a;
76
+ (_a = getPersistence(persistence)) === null || _a === void 0 ? void 0 : _a.unsetMember();
77
+ observable.notify(null);
78
+ };
79
+ exports.unsetPersistedMember = unsetPersistedMember;
80
+ var onAuthChange = function (cb) {
81
+ var id = Math.floor(Math.random() * 1000);
82
+ observable.subscribe(id, cb);
83
+ return {
84
+ unsubscribe: function () { return observable.unsubscribe(id); },
85
+ };
86
+ };
87
+ exports.onAuthChange = onAuthChange;
@@ -1,5 +1,5 @@
1
- export declare const sessionStoragePersistence: {
2
- setMember: (member: any) => any;
3
- getMember: () => any;
4
- unsetMember: () => void;
5
- };
1
+ export declare const sessionStoragePersistence: {
2
+ setMember: (member: any) => any;
3
+ getMember: () => any;
4
+ unsetMember: () => void;
5
+ };
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sessionStoragePersistence = void 0;
4
+ var storage_1 = require("../../constants/storage");
5
+ exports.sessionStoragePersistence = {
6
+ setMember: function (member) {
7
+ sessionStorage === null || sessionStorage === void 0 ? void 0 : sessionStorage.setItem(storage_1.PERSISTED_MEMBER_KEY, JSON.stringify(member));
8
+ return JSON.parse(sessionStorage === null || sessionStorage === void 0 ? void 0 : sessionStorage.getItem(storage_1.PERSISTED_MEMBER_KEY));
9
+ },
10
+ getMember: function () {
11
+ var persistedMember = sessionStorage === null || sessionStorage === void 0 ? void 0 : sessionStorage.getItem(storage_1.PERSISTED_MEMBER_KEY);
12
+ if (!persistedMember || !Object.keys(persistedMember).length) {
13
+ return null;
14
+ }
15
+ return JSON.parse(sessionStorage === null || sessionStorage === void 0 ? void 0 : sessionStorage.getItem(storage_1.PERSISTED_MEMBER_KEY));
16
+ },
17
+ unsetMember: function () {
18
+ sessionStorage === null || sessionStorage === void 0 ? void 0 : sessionStorage.removeItem(storage_1.PERSISTED_MEMBER_KEY);
19
+ },
20
+ };
@@ -1,3 +1,3 @@
1
- export declare enum MemberCookies {
2
- AUTH = "_ms-mid"
3
- }
1
+ export declare enum MemberCookies {
2
+ AUTH = "_ms-mid"
3
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MemberCookies = void 0;
4
+ var MemberCookies;
5
+ (function (MemberCookies) {
6
+ MemberCookies["AUTH"] = "_ms-mid";
7
+ })(MemberCookies = exports.MemberCookies || (exports.MemberCookies = {}));
@@ -1,4 +1,4 @@
1
- export declare const endpoints: {
2
- parentOrigin: string;
3
- loaderScript: string;
4
- };
1
+ export declare const endpoints: {
2
+ parentOrigin: string;
3
+ loaderScript: string;
4
+ };
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.endpoints = void 0;
4
+ exports.endpoints = {
5
+ parentOrigin: "https://dev-ui.memberstack.com",
6
+ loaderScript: "https://dev-ui.memberstack.com/loader.cjs.production.min.js",
7
+ };
@@ -1 +1 @@
1
- export declare const PERSISTED_MEMBER_KEY = "_ms-mem";
1
+ export declare const PERSISTED_MEMBER_KEY = "_ms-mem";
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PERSISTED_MEMBER_KEY = void 0;
4
+ exports.PERSISTED_MEMBER_KEY = "_ms-mem";
@@ -0,0 +1,3 @@
1
+ export declare const Window: {
2
+ MEMBERSTACK: string;
3
+ };
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Window = void 0;
4
+ exports.Window = {
5
+ MEMBERSTACK: "memberstack",
6
+ };
package/lib/index.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ export { Persistence } from "./auth/persistence";
2
+ declare const _default: {
3
+ init: any;
4
+ };
5
+ export default _default;
package/lib/index.js ADDED
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Persistence = void 0;
4
+ var persistence_1 = require("./auth/persistence");
5
+ Object.defineProperty(exports, "Persistence", { enumerable: true, get: function () { return persistence_1.Persistence; } });
6
+ var methods_1 = require("./methods");
7
+ exports.default = { init: methods_1.init };
@@ -0,0 +1,36 @@
1
+ import msClient from "@memberstack/client";
2
+ export declare type ClientConfig = Parameters<typeof msClient["init"]>[0];
3
+ export declare const initClient: (props: ClientConfig) => {
4
+ getApp(): Promise<import("@memberstack/client/lib/types/payloads").AppPayload>;
5
+ getAuthProviders(): Promise<import("@memberstack/client/lib/types/payloads").AppPayload>;
6
+ loginMemberEmailPassword(params: import("@memberstack/client/lib/types/params").LoginMemberEmailPasswordParams): Promise<import("@memberstack/client/lib/types/payloads").LoginMemberEmailPasswordPayload>;
7
+ loginMemberAuthProvider(params: import("@memberstack/client/lib/types/params").LoginMemberAuthProviderParams): Promise<import("@memberstack/client/lib/types/payloads").LoginMemberAuthProviderPayload>;
8
+ getPlan(params: import("@memberstack/client/lib/types/params").GetPlanParams): Promise<import("@memberstack/client/lib/types/payloads").GetPlanPayload>;
9
+ getPlans(params?: import("@memberstack/client/lib/types/params").GetPlansParams): Promise<import("@memberstack/client/lib/types/payloads").GetPlansPayload>;
10
+ getCurrentMember(options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").GetCurrentMemberPayload>;
11
+ getMemberCards(options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").GetMemberCardsPayload>;
12
+ getMemberInvoices(params?: import("@memberstack/client/lib/types/params").GetMemberInvoicesParams, options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").GetMemberInvoicesPayload>;
13
+ getMemberReceipts(params?: import("@memberstack/client/lib/types/params").GetMemberReceiptsParams, options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").GetMemberReceiptsPayload>;
14
+ getAuthenticationClientSecret(params: import("@memberstack/client/lib/types/params").GetAuthenticationClientSecretParams, options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").GetAuthenticationClientSecretPayload>;
15
+ getTotalCheckoutAmount(params: import("@memberstack/client/lib/types/params").GetTotalCheckoutAmountParams, options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").GetTotalCheckoutAmountPayload>;
16
+ purchasePlan(params: import("@memberstack/client/lib/types/params").PurchasePlanParams, options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").PurchasePlanPayload>;
17
+ cancelPlan(params: import("@memberstack/client/lib/types/params").CancelPlanParams, options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").CancelPlanPayload>;
18
+ updateMember(params: import("@memberstack/client/lib/types/params").UpdateMemberParams, options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").UpdateMemberPayload>;
19
+ updateMemberAuth(params: import("@memberstack/client/lib/types/params").UpdateMemberAuthParams, options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").UpdateMemberAuthPayload>;
20
+ addCard(params: import("@memberstack/client/lib/types/params").AddMemberCardParams, options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").AddMemberCardPayload>;
21
+ updateDefaultCard(params: import("@memberstack/client/lib/types/params").UpdateDefaultCardParams, options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").UpdateDefaultCardPayload>;
22
+ updatePlanPayment(params: import("@memberstack/client/lib/types/params").UpdatePlanPaymentParams, options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").UpdatePlanPaymentPayload>;
23
+ signupMemberEmailPassword(params: import("@memberstack/client/lib/types/params").SignupMemberEmailPasswordParams): Promise<import("@memberstack/client/lib/types/payloads").SignupMemberEmailPasswordPayload>;
24
+ signupMemberAuthProvider(params: import("@memberstack/client/lib/types/params").SignupMemberAuthProviderParams): Promise<import("@memberstack/client/lib/types/payloads").SignupMemberAuthProviderPayload>;
25
+ refreshMemberTokens(params: import("@memberstack/client/lib/types/params").RefreshMemberTokensParams, options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").RefreshMemberTokensPayload>;
26
+ sendMemberResetPasswordEmail(params: import("@memberstack/client/lib/types/params").SendMemberResetPasswordEmailParams): Promise<import("@memberstack/client/lib/types/payloads").SendMemberResetPasswordEmailPayload>;
27
+ resetMemberPassword(params: import("@memberstack/client/lib/types/params").ResetMemberPasswordParams): Promise<import("@memberstack/client/lib/types/payloads").ResetMemberPasswordPayload>;
28
+ logout(options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").LogoutMemberPayload>;
29
+ replacePlan(params: import("@memberstack/client/lib/types/params").ReplacePlanParams, options?: import("@memberstack/client/lib/methods").MemberstackOptions): Promise<import("@memberstack/client/lib/types/payloads").ReplacePlanPayload>;
30
+ verifyToken({ token }: {
31
+ token: string;
32
+ }): Promise<Pick<import("jose/types").JWTPayload, "iat" | "exp"> & {
33
+ id: string;
34
+ type: "member";
35
+ }>;
36
+ };
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.initClient = void 0;
18
+ var client_1 = __importDefault(require("@memberstack/client"));
19
+ var cookies_1 = require("../utils/cookies");
20
+ var initClient = function (props) {
21
+ return client_1.default.init(__assign({ token: (0, cookies_1.getMemberCookie)() }, props));
22
+ };
23
+ exports.initClient = initClient;
@@ -1,2 +1,2 @@
1
- export { hideModal, load, openModal, OpenModalParams } from "./methods";
2
- export { initialize } from "./script";
1
+ export { hideModal, load, openModal, OpenModalParams } from "./methods";
2
+ export { initialize } from "./script";
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.initialize = exports.openModal = exports.load = exports.hideModal = void 0;
4
+ var methods_1 = require("./methods");
5
+ Object.defineProperty(exports, "hideModal", { enumerable: true, get: function () { return methods_1.hideModal; } });
6
+ Object.defineProperty(exports, "load", { enumerable: true, get: function () { return methods_1.load; } });
7
+ Object.defineProperty(exports, "openModal", { enumerable: true, get: function () { return methods_1.openModal; } });
8
+ var script_1 = require("./script");
9
+ Object.defineProperty(exports, "initialize", { enumerable: true, get: function () { return script_1.initialize; } });
@@ -0,0 +1,31 @@
1
+ import type { DOMConfig } from "..";
2
+ declare type ActionParams = {
3
+ onCompleted?: (x: any) => any;
4
+ onError?: (x: any) => any;
5
+ };
6
+ export declare type OpenModalParams = ActionParams & ({
7
+ type: "LOGIN";
8
+ params?: {
9
+ planId?: string;
10
+ priceId?: string;
11
+ };
12
+ } | {
13
+ type: "SIGNUP";
14
+ params: {
15
+ planId: string;
16
+ priceId?: string;
17
+ };
18
+ } | {
19
+ type: "FORGOT_PASSWORD";
20
+ params: {};
21
+ });
22
+ export declare const initDOM: (props: {
23
+ publicKey: string;
24
+ } & DOMConfig) => {
25
+ openModal: (openModalProps: OpenModalParams) => void;
26
+ hideModal: any;
27
+ onAuthChange: (cb: any) => {
28
+ unsubscribe: () => boolean;
29
+ };
30
+ };
31
+ export {};
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.initDOM = void 0;
15
+ var window_1 = require("../../constants/window");
16
+ var endpoint_1 = require("../../constants/endpoint");
17
+ var cookies_1 = require("../../utils/cookies");
18
+ var persistence_1 = require("../../auth/persistence");
19
+ var initDOM = function (props) {
20
+ var methods = window[window_1.Window.MEMBERSTACK].init({ publicKey: props.publicKey });
21
+ return {
22
+ openModal: function (openModalProps) { return openModal(methods, __assign(__assign({}, props), openModalProps)); },
23
+ hideModal: methods.hide,
24
+ onAuthChange: persistence_1.onAuthChange
25
+ };
26
+ };
27
+ exports.initDOM = initDOM;
28
+ var openModal = function (methods, props) {
29
+ methods.show(props.type, props.params);
30
+ window.addEventListener("message", function (e) {
31
+ var _a, _b, _c, _d, _e, _f, _g, _h;
32
+ if (e.origin === endpoint_1.endpoints.parentOrigin) {
33
+ if (e.data.type === "CLOSE") {
34
+ return methods.hide();
35
+ }
36
+ if ((_b = (_a = e.data) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.member) {
37
+ (0, persistence_1.setPersistedMember)((_c = e.data) === null || _c === void 0 ? void 0 : _c.data.member, props.persistence);
38
+ }
39
+ if (props.useCookie && ((_f = (_e = (_d = e.data) === null || _d === void 0 ? void 0 : _d.data) === null || _e === void 0 ? void 0 : _e.tokens) === null || _f === void 0 ? void 0 : _f.accessToken)) {
40
+ (0, cookies_1.setMemberCookie)(e.data.data.tokens.accessToken);
41
+ }
42
+ (_g = props.onCompleted) === null || _g === void 0 ? void 0 : _g.call(props, (_h = e.data) === null || _h === void 0 ? void 0 : _h.data);
43
+ }
44
+ });
45
+ };
@@ -0,0 +1,3 @@
1
+ export declare function appendScript(props: {
2
+ publicKey: string;
3
+ }): HTMLScriptElement;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.appendScript = void 0;
4
+ var endpoint_1 = require("../../constants/endpoint");
5
+ var window_1 = require("../../constants/window");
6
+ var isBrowser = typeof window !== "undefined";
7
+ var SCRIPT_URL = endpoint_1.endpoints.loaderScript;
8
+ var SCRIPT_URL_REGEX = new RegExp(SCRIPT_URL);
9
+ var getScript = function (_a) {
10
+ var publicKey = _a.publicKey;
11
+ var existingScript = document.querySelector("script[src^=\"" + SCRIPT_URL + "\"]");
12
+ if (existingScript && SCRIPT_URL_REGEX.test(existingScript.src)) {
13
+ return existingScript;
14
+ }
15
+ var script = document.createElement("script");
16
+ script.src = SCRIPT_URL;
17
+ script.defer = true;
18
+ script.crossOrigin = "true";
19
+ if (!document.body) {
20
+ throw new Error("Memberstack requires a <body> element.");
21
+ }
22
+ script.addEventListener("load", function () {
23
+ if (window[window_1.Window.MEMBERSTACK]) {
24
+ window[window_1.Window.MEMBERSTACK].init({ publicKey: publicKey });
25
+ console.info("\x1b[36m%s\x1b[0m", "Memberstack has been initialized.");
26
+ }
27
+ else {
28
+ console.warn("Could not initialize Memberstack.");
29
+ }
30
+ });
31
+ document.body.appendChild(script);
32
+ return script;
33
+ };
34
+ function appendScript(props) {
35
+ if (!isBrowser) {
36
+ throw new Error("Memberstack requires a <body> element.");
37
+ }
38
+ return getScript({ publicKey: props.publicKey });
39
+ }
40
+ exports.appendScript = appendScript;
@@ -0,0 +1,12 @@
1
+ import { Persistence } from "../auth/persistence";
2
+ import { ClientConfig } from "./client";
3
+ declare global {
4
+ interface Window {
5
+ memberstack: any;
6
+ }
7
+ }
8
+ export declare type DOMConfig = ClientConfig & {
9
+ persistence?: Persistence;
10
+ useCookie?: boolean;
11
+ };
12
+ export declare const init: any;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.init = void 0;
18
+ var persistence_1 = require("../auth/persistence");
19
+ var proxy_1 = __importDefault(require("../utils/proxy"));
20
+ var methods_1 = require("./dom/methods");
21
+ var script_1 = require("./dom/script");
22
+ var client_1 = require("./client");
23
+ var interceptor_1 = require("../utils/interceptor");
24
+ var withScript = function (fn) {
25
+ return function (props) {
26
+ var config = __assign({ persistence: persistence_1.Persistence.LOCAL, useCookie: true }, props);
27
+ (0, script_1.appendScript)({ publicKey: props.publicKey });
28
+ return fn(config);
29
+ };
30
+ };
31
+ exports.init = withScript(function (props) {
32
+ var client = (0, proxy_1.default)((0, client_1.initClient)(__assign(__assign({}, props), { onMemberToken: function (token) { return (0, interceptor_1.handleMemberToken)({ persistence: props.persistence, token: token }); } })), props);
33
+ var methods = (0, methods_1.initDOM)({ publicKey: props.publicKey });
34
+ return Object.assign(client, methods);
35
+ });
@@ -1,2 +1,2 @@
1
- export declare const setMemberCookie: (token: any, expires?: number) => void;
2
- export declare const getMemberCookie: () => any;
1
+ export declare const setMemberCookie: (token: any, expires?: number) => void;
2
+ export declare const getMemberCookie: () => any;
@@ -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.getMemberCookie = exports.setMemberCookie = void 0;
7
+ var js_cookie_1 = __importDefault(require("js-cookie"));
8
+ var cookies_1 = require("../constants/cookies");
9
+ var setMemberCookie = function (token, expires) {
10
+ js_cookie_1.default.set(cookies_1.MemberCookies.AUTH, token, {
11
+ expires: expires || new Date(Date.now() + 604800000),
12
+ sameSite: "strict",
13
+ });
14
+ };
15
+ exports.setMemberCookie = setMemberCookie;
16
+ var getMemberCookie = function () {
17
+ return js_cookie_1.default.get(cookies_1.MemberCookies.AUTH);
18
+ };
19
+ exports.getMemberCookie = getMemberCookie;
@@ -0,0 +1,4 @@
1
+ export declare const handleMemberToken: ({ persistence, token }: {
2
+ persistence: any;
3
+ token: any;
4
+ }) => void;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleMemberToken = void 0;
4
+ var cookies_1 = require("./cookies");
5
+ var persistence_1 = require("../auth/persistence");
6
+ var handleMemberToken = function (_a) {
7
+ var persistence = _a.persistence, token = _a.token;
8
+ if (token === "null") {
9
+ (0, cookies_1.setMemberCookie)("", -1);
10
+ if ((0, persistence_1.getPersistedMember)(persistence)) {
11
+ (0, persistence_1.unsetPersistedMember)(persistence);
12
+ }
13
+ }
14
+ else {
15
+ (0, cookies_1.setMemberCookie)(token);
16
+ }
17
+ };
18
+ exports.handleMemberToken = handleMemberToken;
@@ -1,2 +1,2 @@
1
- declare const _default: (target: any, props: any) => any;
2
- export default _default;
1
+ declare const _default: (target: any, props: any) => any;
2
+ export default _default;