@memberstack/dom 1.9.1 → 1.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.d.ts CHANGED
@@ -53,7 +53,7 @@ declare const _default: {
53
53
  }, options?: {
54
54
  onCompleted?: (x: any) => any;
55
55
  onError?: (x: any) => any;
56
- }) => Promise<HTMLIFrameElement>;
56
+ }) => Promise<unknown>;
57
57
  };
58
58
  };
59
59
  export default _default;
File without changes
File without changes
@@ -16,5 +16,6 @@ export declare const load: (props: {
16
16
  export declare const showMessage: (msg: any, isError: any) => void;
17
17
  export declare const showLoader: (element?: any) => void;
18
18
  export declare const hideLoader: (element?: any) => void;
19
- export declare const openModal: (props: OpenModalParams & DOMConfig) => Promise<HTMLIFrameElement>;
19
+ export declare const handleRedirect: (redirect: any, redirectOverride: any) => any;
20
+ export declare const openModal: (props: OpenModalParams & DOMConfig) => Promise<unknown>;
20
21
  export declare const hideModal: () => void;
@@ -1,15 +1,4 @@
1
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
2
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
3
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
4
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -46,30 +35,16 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
46
35
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
36
  }
48
37
  };
49
- var __read = (this && this.__read) || function (o, n) {
50
- var m = typeof Symbol === "function" && o[Symbol.iterator];
51
- if (!m) return o;
52
- var i = m.call(o), r, ar = [], e;
53
- try {
54
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
55
- }
56
- catch (error) { e = { error: error }; }
57
- finally {
58
- try {
59
- if (r && !r.done && (m = i["return"])) m.call(i);
60
- }
61
- finally { if (e) throw e.error; }
62
- }
63
- return ar;
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
64
40
  };
65
41
  Object.defineProperty(exports, "__esModule", { value: true });
66
- exports.hideModal = exports.openModal = exports.hideLoader = exports.showLoader = exports.showMessage = exports.load = void 0;
42
+ exports.hideModal = exports.openModal = exports.handleRedirect = exports.hideLoader = exports.showLoader = exports.showMessage = exports.load = void 0;
67
43
  var window_1 = require("../../constants/window");
68
44
  var endpoint_1 = require("../../constants/endpoint");
69
- var cookies_1 = require("../../utils/cookies");
70
- var persistence_1 = require("../../auth/persistence");
71
45
  var logger_1 = require("../../utils/logger");
72
- var cookies_2 = require("../../utils/cookies");
46
+ //const Modal = () => import("../../../../prebuilt-uis/public/build/main-dom.js")
47
+ var main_dom_js_1 = __importDefault(require("./main-dom.js"));
73
48
  var isBrowser = typeof window !== "undefined";
74
49
  var isInitialized = function () {
75
50
  if (!isBrowser)
@@ -130,16 +105,6 @@ var TYPE_PARAMS = {
130
105
  FORGOT_PASSWORD: "sendResetEmail",
131
106
  PROFILE: "profile",
132
107
  };
133
- var createLink = function (query) {
134
- var _a = query.planId, planId = _a === void 0 ? "" : _a, _b = query.appId, appId = _b === void 0 ? "" : _b, _c = query.page, page = _c === void 0 ? "" : _c, _d = query.priceId, priceId = _d === void 0 ? "" : _d, _e = query.pk, pk = _e === void 0 ? "" : _e, _f = query.hideNav, hideNav = _f === void 0 ? "" : _f, _g = query.token, token = _g === void 0 ? "" : _g;
135
- var queryParams = Object.keys({ priceId: priceId, pk: pk, hideNav: hideNav, token: token })
136
- .map(function (key) { return query[key] && encodeURIComponent(key) + "=" + encodeURIComponent(query[key]); })
137
- .filter(function (x) { return x; })
138
- .join("&");
139
- console.log("CREATE LINK", token);
140
- var baseUrl = endpoint_1.endpoints.hostedUI + "/" + (appId || "") + (page ? "/" + page : "") + (planId ? (page === "signup" ? "/" + planId : "?planId=" + planId) : "");
141
- return "" + baseUrl + (baseUrl.includes("?planId") ? "&" : "?") + queryParams;
142
- };
143
108
  var showMessage = function (msg, isError) {
144
109
  var cssEl = document.createElement("style");
145
110
  var css = ".ms-error-message { position: fixed; left: 5%; right: 5%; bottom: 3%; z-index: 10000000; display: block; margin-right: auto; margin-left: auto; padding-top: 1em; padding-right: 10px; padding-bottom: 1em; border-radius: 3px; background-color: #fd3a57; box-shadow: 0 0 0 2px #fff; color: #fff; font-size: 1.1em; line-height: 1.8em; font-weight: 700; text-align: center; }";
@@ -184,73 +149,38 @@ var hideLoader = function (element) {
184
149
  (_a = document.querySelector("[data-ms-loader]")) === null || _a === void 0 ? void 0 : _a.remove();
185
150
  };
186
151
  exports.hideLoader = hideLoader;
152
+ var handleRedirect = function (redirect, redirectOverride) {
153
+ if (redirectOverride)
154
+ return window.location.href = redirectOverride;
155
+ if (redirect && (window.location.pathname !== redirect))
156
+ return window.location.href = redirect;
157
+ };
158
+ exports.handleRedirect = handleRedirect;
187
159
  var openModal = function (props) { return __awaiter(void 0, void 0, void 0, function () {
188
- var appId, page, token, link, div, iframe, iframestyles;
189
- var _a, _b;
190
- return __generator(this, function (_c) {
191
- switch (_c.label) {
192
- case 0:
193
- (0, logger_1.log)("call openModal()");
194
- (0, exports.showLoader)();
195
- return [4 /*yield*/, getAppId(props.publicKey)];
196
- case 1:
197
- appId = _c.sent();
198
- page = TYPE_PARAMS[props.type];
199
- if (props.type === "PROFILE") {
200
- token = (0, cookies_2.getMemberCookie)();
201
- }
202
- link = createLink(__assign({ pk: props.publicKey, planId: (_a = props.params) === null || _a === void 0 ? void 0 : _a.planId, priceId: (_b = props.params) === null || _b === void 0 ? void 0 : _b.priceId, appId: appId, page: page }, (token ? { token: token } : {})));
203
- div = document.createElement("div");
204
- div.setAttribute("data-ms-iframe", "true");
205
- div.style["position"] = "fixed";
206
- div.style["top"] = "0";
207
- div.style["left"] = "0";
208
- div.style["zIndex"] = "10000000";
209
- iframe = document.createElement("iframe");
210
- iframestyles = {
211
- height: "100vh",
212
- width: "100vw",
213
- position: "absolute",
214
- top: 0,
215
- bottom: 0,
216
- border: "none",
217
- zIndex: "2000000",
218
- };
219
- Object.entries(iframestyles).map(function (_a) {
220
- var _b = __read(_a, 2), attr = _b[0], value = _b[1];
221
- iframe.style[attr] = value;
222
- });
223
- iframe.setAttribute("src", link);
224
- iframe.addEventListener("load", function () {
225
- (0, exports.hideLoader)();
226
- });
227
- div.append(iframe);
228
- document.body.appendChild(div);
229
- window.addEventListener("message", function (e) {
230
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
231
- if (e.data.type === "CLOSE") {
232
- return (0, exports.hideModal)();
233
- }
234
- if ((_b = (_a = e.data) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.member) {
235
- (0, persistence_1.setPersistedMember)((_c = e.data) === null || _c === void 0 ? void 0 : _c.data.member, props.persistence);
236
- }
237
- 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)) {
238
- (0, cookies_1.setMemberCookie)(e.data.data.tokens.accessToken);
239
- }
240
- // added to prevent non memberstack messages being sent from window
241
- if (e.origin === endpoint_1.endpoints.hostedUI && ((_g = e.data) === null || _g === void 0 ? void 0 : _g.data)) {
242
- (_j = (_h = props.options) === null || _h === void 0 ? void 0 : _h.onCompleted) === null || _j === void 0 ? void 0 : _j.call(_h, (_k = e.data) === null || _k === void 0 ? void 0 : _k.data);
243
- }
244
- });
245
- return [2 /*return*/, iframe];
246
- }
160
+ var params, resolveModal, modalPromise;
161
+ return __generator(this, function (_a) {
162
+ (0, logger_1.log)("call openModal()");
163
+ params = props.params || {};
164
+ modalPromise = new Promise(function (resolve) {
165
+ resolveModal = resolve;
166
+ });
167
+ //const { default: component } = await Modal()
168
+ new main_dom_js_1.default({
169
+ target: document.body,
170
+ props: {
171
+ display: props.type.toLowerCase(),
172
+ params: params,
173
+ onSuccess: resolveModal,
174
+ }
175
+ });
176
+ return [2 /*return*/, modalPromise];
247
177
  });
248
178
  }); };
249
179
  exports.openModal = openModal;
250
180
  var hideModal = function () {
251
181
  var _a;
252
182
  (0, logger_1.log)("call hideModal()");
253
- (_a = document.querySelector("[data-ms-iframe]")) === null || _a === void 0 ? void 0 : _a.remove();
183
+ (_a = document.querySelector("#msOverlay")) === null || _a === void 0 ? void 0 : _a.remove();
254
184
  (0, exports.hideLoader)();
255
185
  };
256
186
  exports.hideModal = hideModal;
@@ -68,7 +68,7 @@ declare const _default: {
68
68
  }, options?: {
69
69
  onCompleted?: (x: any) => any;
70
70
  onError?: (x: any) => any;
71
- }) => Promise<HTMLIFrameElement>;
71
+ }) => Promise<unknown>;
72
72
  };
73
73
  };
74
74
  export default _default;
@@ -72,6 +72,9 @@ function init(props) {
72
72
  }
73
73
  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);
74
74
  var methods = DOMMethods(props);
75
- return Object.assign(client, methods);
75
+ var dom = Object.assign(client, methods);
76
+ //@ts-ignore
77
+ window.$memberstackDom = dom;
78
+ return dom;
76
79
  }
77
80
  exports.default = { init: function (props) { return init(props); } };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberstack/dom",
3
- "version": "1.9.1",
3
+ "version": "1.9.2",
4
4
  "main": "./lib/index.js",
5
5
  "files": [
6
6
  "lib/**/*"
@@ -8,11 +8,11 @@
8
8
  "author": "Lydia Hallie",
9
9
  "license": "MIT",
10
10
  "dependencies": {
11
- "@memberstack/client": "^1.8.0",
11
+ "@memberstack/client": "^1.9.2",
12
12
  "js-cookie": "^3.0.1"
13
13
  },
14
14
  "scripts": {
15
- "prepublishOnly": "npx tsc",
15
+ "prepublishOnly": "yarn workspace prebuilt-uis build && npx tsc",
16
16
  "watch": "tsc-watch",
17
17
  "watch:dev": "tsc-watch --onSuccess 'yarn replace:vars:local'",
18
18
  "clean": "rm -rf node_modules",
@@ -21,4 +21,4 @@
21
21
  "deploy:next": "npx np --tag next --no-tests --any-branch",
22
22
  "build:local": "npx tsc"
23
23
  }
24
- }
24
+ }
@@ -1,10 +0,0 @@
1
- export declare enum HttpMethod {
2
- POST = "POST",
3
- GET = "GET"
4
- }
5
- export declare enum HttpHeaders {
6
- AUTHORIZATION = "Authorization",
7
- API_KEY = "X-API-Key",
8
- API_VERSION = "X-API-Version",
9
- USER_AGENT = "X-User-Agent"
10
- }
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HttpHeaders = exports.HttpMethod = void 0;
4
- var HttpMethod;
5
- (function (HttpMethod) {
6
- HttpMethod["POST"] = "POST";
7
- HttpMethod["GET"] = "GET";
8
- })(HttpMethod = exports.HttpMethod || (exports.HttpMethod = {}));
9
- var HttpHeaders;
10
- (function (HttpHeaders) {
11
- HttpHeaders["AUTHORIZATION"] = "Authorization";
12
- HttpHeaders["API_KEY"] = "X-API-Key";
13
- HttpHeaders["API_VERSION"] = "X-API-Version";
14
- HttpHeaders["USER_AGENT"] = "X-User-Agent";
15
- })(HttpHeaders = exports.HttpHeaders || (exports.HttpHeaders = {}));
@@ -1,85 +0,0 @@
1
- import * as Params from "../../types/params";
2
- import * as Payloads from "../../types/payloads";
3
- export interface MemberstackOptions {
4
- token?: BearerToken;
5
- }
6
- export interface ClientConfig {
7
- publicKey: string;
8
- token?: string;
9
- apiVersion?: "2021-01-07" | "2022-01-01";
10
- onMemberToken?: (x?: string) => any;
11
- debug?: boolean;
12
- customEndpoint?: string;
13
- }
14
- declare type BearerToken = string;
15
- export declare const init: ({ publicKey, token, apiVersion, onMemberToken, debug, customEndpoint, }: ClientConfig) => {
16
- getApp(): Promise<Payloads.AppPayload>;
17
- getAuthProviders(): Promise<Payloads.AppPayload>;
18
- loginMemberEmailPassword(params: Params.LoginMemberEmailPasswordParams): Promise<Payloads.LoginMemberEmailPasswordPayload>;
19
- loginMemberAuthProvider(params: Params.LoginMemberAuthProviderParams): Promise<Payloads.LoginMemberAuthProviderPayload>;
20
- getPlan(params: Params.GetPlanParams): Promise<Payloads.GetPlanPayload>;
21
- getPlans(params?: Params.GetPlansParams): Promise<Payloads.GetPlansPayload>;
22
- getRestrictedUrlGroups(): Promise<Payloads.GetRestrictedUrlGroupsPayload>;
23
- getCurrentMember(options?: MemberstackOptions): Promise<Payloads.GetCurrentMemberPayload>;
24
- getMemberCards(options?: MemberstackOptions): Promise<Payloads.GetMemberCardsPayload>;
25
- getMemberInvoices(params?: Params.GetMemberInvoicesParams, options?: MemberstackOptions): Promise<Payloads.GetMemberInvoicesPayload>;
26
- getMemberReceipts(params?: Params.GetMemberReceiptsParams, options?: MemberstackOptions): Promise<Payloads.GetMemberReceiptsPayload>;
27
- getAuthenticationClientSecret(params: Params.GetAuthenticationClientSecretParams, options?: MemberstackOptions): Promise<Payloads.GetAuthenticationClientSecretPayload>;
28
- getTotalCheckoutAmount(params: Params.GetTotalCheckoutAmountParams, options?: MemberstackOptions): Promise<Payloads.GetTotalCheckoutAmountPayload>;
29
- purchasePlans(params: Params.PurchasePlansParams, options?: MemberstackOptions): Promise<Payloads.PurchasePlansPayload>;
30
- cancelPlan(params: Params.CancelPlanParams, options?: MemberstackOptions): Promise<Payloads.CancelPlanPayload>;
31
- updateMember(params: Params.UpdateMemberParams, options?: MemberstackOptions): Promise<Payloads.UpdateMemberPayload>;
32
- updateMemberAuth(params: Params.UpdateMemberAuthParams, options?: MemberstackOptions): Promise<Payloads.UpdateMemberAuthPayload>;
33
- addCard(params: Params.AddMemberCardParams, options?: MemberstackOptions): Promise<Payloads.AddMemberCardPayload>;
34
- updateDefaultCard(params: Params.UpdateDefaultCardParams, options?: MemberstackOptions): Promise<Payloads.UpdateDefaultCardPayload>;
35
- updatePlanPayment(params: Params.UpdatePlanPaymentParams, options?: MemberstackOptions): Promise<Payloads.UpdatePlanPaymentPayload>;
36
- signupMemberEmailPassword(params: Params.SignupMemberEmailPasswordParams): Promise<Payloads.SignupMemberEmailPasswordPayload>;
37
- signupMemberAuthProvider(params: Params.SignupMemberAuthProviderParams): Promise<Payloads.SignupMemberAuthProviderPayload>;
38
- sendMemberResetPasswordEmail(params: Params.SendMemberResetPasswordEmailParams): Promise<Payloads.SendMemberResetPasswordEmailPayload>;
39
- resetMemberPassword(params: Params.ResetMemberPasswordParams): Promise<Payloads.ResetMemberPasswordPayload>;
40
- logout(options?: MemberstackOptions): Promise<Payloads.LogoutMemberPayload>;
41
- replacePlan(params: Params.ReplacePlanParams, options?: MemberstackOptions): Promise<Payloads.ReplacePlanPayload>;
42
- verifyToken({ token }: {
43
- token: string;
44
- }): Promise<Pick<import("jose").JWTPayload, "iat" | "exp"> & {
45
- id: string;
46
- type: "member";
47
- }>;
48
- };
49
- export declare const Methods: {
50
- init: ({ publicKey, token, apiVersion, onMemberToken, debug, customEndpoint, }: ClientConfig) => {
51
- getApp(): Promise<Payloads.AppPayload>;
52
- getAuthProviders(): Promise<Payloads.AppPayload>;
53
- loginMemberEmailPassword(params: Params.LoginMemberEmailPasswordParams): Promise<Payloads.LoginMemberEmailPasswordPayload>;
54
- loginMemberAuthProvider(params: Params.LoginMemberAuthProviderParams): Promise<Payloads.LoginMemberAuthProviderPayload>;
55
- getPlan(params: Params.GetPlanParams): Promise<Payloads.GetPlanPayload>;
56
- getPlans(params?: Params.GetPlansParams): Promise<Payloads.GetPlansPayload>;
57
- getRestrictedUrlGroups(): Promise<Payloads.GetRestrictedUrlGroupsPayload>;
58
- getCurrentMember(options?: MemberstackOptions): Promise<Payloads.GetCurrentMemberPayload>;
59
- getMemberCards(options?: MemberstackOptions): Promise<Payloads.GetMemberCardsPayload>;
60
- getMemberInvoices(params?: Params.GetMemberInvoicesParams, options?: MemberstackOptions): Promise<Payloads.GetMemberInvoicesPayload>;
61
- getMemberReceipts(params?: Params.GetMemberReceiptsParams, options?: MemberstackOptions): Promise<Payloads.GetMemberReceiptsPayload>;
62
- getAuthenticationClientSecret(params: Params.GetAuthenticationClientSecretParams, options?: MemberstackOptions): Promise<Payloads.GetAuthenticationClientSecretPayload>;
63
- getTotalCheckoutAmount(params: Params.GetTotalCheckoutAmountParams, options?: MemberstackOptions): Promise<Payloads.GetTotalCheckoutAmountPayload>;
64
- purchasePlans(params: Params.PurchasePlansParams, options?: MemberstackOptions): Promise<Payloads.PurchasePlansPayload>;
65
- cancelPlan(params: Params.CancelPlanParams, options?: MemberstackOptions): Promise<Payloads.CancelPlanPayload>;
66
- updateMember(params: Params.UpdateMemberParams, options?: MemberstackOptions): Promise<Payloads.UpdateMemberPayload>;
67
- updateMemberAuth(params: Params.UpdateMemberAuthParams, options?: MemberstackOptions): Promise<Payloads.UpdateMemberAuthPayload>;
68
- addCard(params: Params.AddMemberCardParams, options?: MemberstackOptions): Promise<Payloads.AddMemberCardPayload>;
69
- updateDefaultCard(params: Params.UpdateDefaultCardParams, options?: MemberstackOptions): Promise<Payloads.UpdateDefaultCardPayload>;
70
- updatePlanPayment(params: Params.UpdatePlanPaymentParams, options?: MemberstackOptions): Promise<Payloads.UpdatePlanPaymentPayload>;
71
- signupMemberEmailPassword(params: Params.SignupMemberEmailPasswordParams): Promise<Payloads.SignupMemberEmailPasswordPayload>;
72
- signupMemberAuthProvider(params: Params.SignupMemberAuthProviderParams): Promise<Payloads.SignupMemberAuthProviderPayload>;
73
- sendMemberResetPasswordEmail(params: Params.SendMemberResetPasswordEmailParams): Promise<Payloads.SendMemberResetPasswordEmailPayload>;
74
- resetMemberPassword(params: Params.ResetMemberPasswordParams): Promise<Payloads.ResetMemberPasswordPayload>;
75
- logout(options?: MemberstackOptions): Promise<Payloads.LogoutMemberPayload>;
76
- replacePlan(params: Params.ReplacePlanParams, options?: MemberstackOptions): Promise<Payloads.ReplacePlanPayload>;
77
- verifyToken({ token }: {
78
- token: string;
79
- }): Promise<Pick<import("jose").JWTPayload, "iat" | "exp"> & {
80
- id: string;
81
- type: "member";
82
- }>;
83
- };
84
- };
85
- export {};