namirasoft-account-react 1.4.356 → 1.4.358

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.
@@ -1,14 +1,14 @@
1
+ import { IStorage, ParsedNameValue } from "namirasoft-core";
1
2
  import { ParsedQuery } from 'query-string';
2
3
  import rrd from 'react-router-dom';
3
- import { IStorage, ParsedNameValue } from "namirasoft-core";
4
- import { NSARouterMakerComponent } from "./NSARouterMakerComponent";
4
+ import { NSARouterMakerConfig } from "./NSARouterMakerConfig";
5
5
  export declare class NSARouterMaker {
6
6
  private product_id;
7
7
  private storage;
8
8
  private setState;
9
- private component;
9
+ private config;
10
10
  private navigate;
11
- constructor(product_id: string, storage: IStorage, setState: () => void, component: NSARouterMakerComponent, navigate: rrd.NavigateFunction);
11
+ constructor(product_id: string, storage: IStorage, setState: () => void, config: NSARouterMakerConfig, navigate: rrd.NavigateFunction);
12
12
  private getProps;
13
13
  getQueryStrings(): ParsedQuery;
14
14
  getQuery(name: string, base64?: boolean, remove?: boolean): string;
@@ -1,16 +1,17 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import queryString from 'query-string';
3
- import { EncodingOperation, EnvService, IStorageCookie, ObjectService, URLOperation } from "namirasoft-core";
4
2
  import { NamirasoftAccountServer, TokenManager } from "namirasoft-account";
3
+ import { EncodingOperation, EnvService, IStorageCookie, ObjectService, URLOperation } from "namirasoft-core";
5
4
  import { NSRouterMaker } from 'namirasoft-site-react';
5
+ import queryString from 'query-string';
6
6
  import { NSAConsentPage } from './pages/NSAConsentPage';
7
7
  import { NSAEmailVerificationPage } from './pages/NSAEmailVerificationPage';
8
+ import { NSAPhoneVerificationPage } from './pages/NSAPhoneVerificationPage';
8
9
  export class NSARouterMaker {
9
- constructor(product_id, storage, setState, component, navigate) {
10
+ constructor(product_id, storage, setState, config, navigate) {
10
11
  this.product_id = product_id;
11
12
  this.storage = storage;
12
13
  this.setState = setState;
13
- this.component = component;
14
+ this.config = config;
14
15
  this.navigate = navigate;
15
16
  this.getProps = this.getProps.bind(this);
16
17
  this.getQueryStrings = this.getQueryStrings.bind(this);
@@ -34,7 +35,7 @@ export class NSARouterMaker {
34
35
  getQueryStrings: this.getQueryStrings,
35
36
  getQuery: this.getQuery,
36
37
  }, renderer: {
37
- renderOnNSALayout: this.component.renderOnNSALayout
38
+ renderOnNSALayout: this.config.renderOnNSALayout
38
39
  } }, ns_router_maker_props);
39
40
  }
40
41
  getQueryStrings() {
@@ -76,18 +77,25 @@ export class NSARouterMaker {
76
77
  if (props.account.token_manager.exists()) {
77
78
  banned = props.account.token_manager.getUserData(user => user.banned, false);
78
79
  if (!banned) {
79
- let result = (_b = (_a = this.component).getCustomRender) === null || _b === void 0 ? void 0 : _b.call(_a, props);
80
+ let result = (_b = (_a = this.config).getCustomRender) === null || _b === void 0 ? void 0 : _b.call(_a, props);
80
81
  if (result)
81
82
  return result;
82
83
  return _jsx(NSAConsentPage, Object.assign({}, props, { product_id: this.product_id, onAccepted: () => {
83
- let e_verified = props.account.token_manager.getUserData(u => u.e_verified, false);
84
- if (!e_verified)
85
- return this.component.renderOnNSALayout(props, _jsx(NSAEmailVerificationPage, Object.assign({}, props, { callback: '' })));
86
- return this.component.onRenderOnLogin(props);
84
+ if (this.config.requirement.verification.email) {
85
+ let e_verified = props.account.token_manager.getUserData(u => u.e_verified, false);
86
+ if (!e_verified)
87
+ return this.config.renderOnNSALayout(props, _jsx(NSAEmailVerificationPage, Object.assign({}, props, { callback: '' })));
88
+ }
89
+ if (this.config.requirement.verification.phone) {
90
+ let p_verified = props.account.token_manager.getUserData(u => u.p_verified, false);
91
+ if (!p_verified)
92
+ return this.config.renderOnNSALayout(props, _jsx(NSAPhoneVerificationPage, Object.assign({}, props, { callback: '' })));
93
+ }
94
+ return this.config.onRenderOnLogin(props);
87
95
  } }));
88
96
  }
89
97
  }
90
- return this.component.onRenderOnLogout(props, banned);
98
+ return this.config.onRenderOnLogout(props, banned);
91
99
  }
92
100
  });
93
101
  return maker.onRender();
@@ -1 +1 @@
1
- {"version":3,"file":"NSARouterMaker.js","sourceRoot":"","sources":["../src/NSARouterMaker.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NSARouterMaker.js","sourceRoot":"","sources":["../src/NSARouterMaker.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +1,14 @@
1
1
  import React from "react";
2
2
  import { NSARouterMakerProps } from "./NSARouterMakerProps";
3
- export interface NSARouterMakerComponent {
3
+ export interface NSARouterMakerConfig {
4
4
  onRenderOnLogin(props: NSARouterMakerProps): React.JSX.Element;
5
5
  onRenderOnLogout(props: NSARouterMakerProps, banned: boolean): React.JSX.Element;
6
6
  renderOnNSALayout(props: NSARouterMakerProps, children: React.JSX.Element): React.JSX.Element;
7
7
  getCustomRender?: (props: NSARouterMakerProps) => React.JSX.Element | null;
8
+ requirement: {
9
+ verification: {
10
+ email: boolean;
11
+ phone: boolean;
12
+ };
13
+ };
8
14
  }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=NSARouterMakerConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NSARouterMakerConfig.js","sourceRoot":"","sources":["../src/NSARouterMakerConfig.ts"],"names":[],"mappings":""}
package/dist/Router.js CHANGED
@@ -18,6 +18,12 @@ export default function Router() {
18
18
  },
19
19
  renderOnNSALayout: (_, children) => {
20
20
  return children;
21
+ },
22
+ requirement: {
23
+ verification: {
24
+ email: true,
25
+ phone: true
26
+ }
21
27
  }
22
28
  }, navigate);
23
29
  return maker.onRender();
@@ -1 +1 @@
1
- {"version":3,"file":"Router.js","sourceRoot":"","sources":["../src/Router.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,CAAC,OAAO,UAAU,MAAM;IAE1B,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAS,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAExD,IAAI,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE7B,IAAI,KAAK,GAAG,IAAI,cAAc,CAAC,WAAW,CAAC,iBAAiB,EAAE,IAAI,eAAe,EAAE,EAAE,GAAG,EAAE,GAAG,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;QAC7H,eAAe,EAAE,CAAC,KAA0B,EAAE,EAAE;YAE5C,OAAO,CACH,MAAC,MAAM,eACH,KAAC,KAAK,IAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAE,KAAC,GAAG,oBAAK,KAAK,EAAQ,GAAI,EACtD,KAAC,KAAK,IAAC,IAAI,EAAC,GAAG,EAAC,OAAO,EAAE,KAAC,GAAG,oBAAK,KAAK,EAAQ,GAAI,IAC9C,CACZ,CAAC;QACN,CAAC;QACD,gBAAgB,EAAE,CAAC,CAAsB,EAAE,EAAW,EAAE,EAAE;YAEtD,OAAO,CACH,KAAC,MAAM,cACH,KAAC,KAAK,IAAC,IAAI,EAAC,GAAG,EAAC,OAAO,EAAE,KAAC,cAAc,KAAkB,GAAI,GACzD,CACZ,CAAC;QACN,CAAC;QACD,iBAAiB,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE;YAE/B,OAAO,QAAQ,CAAC;QACpB,CAAC;KACJ,EAAE,QAAQ,CAAC,CAAC;IACb,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;AAC5B,CAAC"}
1
+ {"version":3,"file":"Router.js","sourceRoot":"","sources":["../src/Router.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,CAAC,OAAO,UAAU,MAAM;IAE1B,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAS,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAExD,IAAI,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE7B,IAAI,KAAK,GAAG,IAAI,cAAc,CAAC,WAAW,CAAC,iBAAiB,EAAE,IAAI,eAAe,EAAE,EAAE,GAAG,EAAE,GAAG,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;QAC7H,eAAe,EAAE,CAAC,KAA0B,EAAE,EAAE;YAE5C,OAAO,CACH,MAAC,MAAM,eACH,KAAC,KAAK,IAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAE,KAAC,GAAG,oBAAK,KAAK,EAAQ,GAAI,EACtD,KAAC,KAAK,IAAC,IAAI,EAAC,GAAG,EAAC,OAAO,EAAE,KAAC,GAAG,oBAAK,KAAK,EAAQ,GAAI,IAC9C,CACZ,CAAC;QACN,CAAC;QACD,gBAAgB,EAAE,CAAC,CAAsB,EAAE,EAAW,EAAE,EAAE;YAEtD,OAAO,CACH,KAAC,MAAM,cACH,KAAC,KAAK,IAAC,IAAI,EAAC,GAAG,EAAC,OAAO,EAAE,KAAC,cAAc,KAAkB,GAAI,GACzD,CACZ,CAAC;QACN,CAAC;QACD,iBAAiB,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE;YAE/B,OAAO,QAAQ,CAAC;QACpB,CAAC;QACD,WAAW,EAAE;YACT,YAAY,EAAE;gBACV,KAAK,EAAE,IAAI;gBACX,KAAK,EAAE,IAAI;aACd;SACJ;KACJ,EAAE,QAAQ,CAAC,CAAC;IACb,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;AAC5B,CAAC"}
@@ -18,7 +18,7 @@ export class NSAUserDialog extends Component {
18
18
  ?
19
19
  _jsx("img", { src: user.picture, width: 96, height: 96, alt: "User Avatar", onError: () => this.setState((prev) => (Object.assign(Object.assign({}, prev), { imageError: true }))) })
20
20
  :
21
- _jsx("div", { className: Styles.ns_figure_placeholder, children: _jsx("span", { children: (((_d = (_c = user.first_name) === null || _c === void 0 ? void 0 : _c[0]) !== null && _d !== void 0 ? _d : "") + " " + ((_f = (_e = user.last_name) === null || _e === void 0 ? void 0 : _e[0]) !== null && _f !== void 0 ? _f : "")).trim() }) }), _jsxs("figcaption", { children: [_jsx("span", { className: Styles.ns_figure_title, children: `Hi ${user.first_name}!` }), _jsx("span", { children: user === null || user === void 0 ? void 0 : user.email }), _jsx(NSCopy, { id: user.id, children: _jsx("p", { className: Styles.ns_user_id, children: user.id }) })] })] }), _jsx(NSSpace, { size: NSSpaceSizeType.MINI }), _jsx(NSLine, {}), _jsx(NSSpace, { size: NSSpaceSizeType.MICRO }), _jsxs("div", { className: Styles.ns_actions_wrapper, children: [_jsx(NSLink, { href: "https://account.namirasoft.com/user/profile", target: "_blank", classList: [Styles.ns_link], children: "Profile" }), _jsx(NSLink, { href: "https://payment.namirasoft.com/", target: "_blank", classList: [Styles.ns_link], children: "Payment and Billing" }), _jsx(NSLink, { href: "https://cost.namirasoft.com/", target: "_blank", classList: [Styles.ns_link], children: "Cost and Usage" }), _jsx(NSLink, { href: "https://account.namirasoft.com/setting/notification", target: "_blank", classList: [Styles.ns_link], children: "Notificaton Settings" }), _jsx(NSLink, { href: "https://account.namirasoft.com/password/change", target: "_blank", classList: [Styles.ns_link], children: "Change Password" }), _jsx(NSButton, { onClick: { action: () => this.props.client.logout() }, title: 'Log Out', classList: [Styles.ns_button], icon: {
21
+ _jsx("div", { className: Styles.ns_figure_placeholder, children: _jsx("span", { children: (((_d = (_c = user.first_name) === null || _c === void 0 ? void 0 : _c[0]) !== null && _d !== void 0 ? _d : "") + " " + ((_f = (_e = user.last_name) === null || _e === void 0 ? void 0 : _e[0]) !== null && _f !== void 0 ? _f : "")).trim() }) }), _jsxs("figcaption", { children: [_jsx("span", { className: Styles.ns_figure_title, children: `Hi ${user.first_name}!` }), _jsx("span", { children: user === null || user === void 0 ? void 0 : user.email }), _jsx(NSCopy, { id: user.id, children: _jsx("p", { className: Styles.ns_user_id, children: user.id }) })] })] }), _jsx(NSSpace, { size: NSSpaceSizeType.MINI }), _jsx(NSLine, {}), _jsx(NSSpace, { size: NSSpaceSizeType.MICRO }), _jsxs("div", { className: Styles.ns_actions_wrapper, children: [_jsx(NSLink, { href: "https://account.namirasoft.com/user/profile", target: "_blank", classList: [Styles.ns_link], children: "Profile" }), _jsx(NSLink, { href: "https://payment.namirasoft.com/", target: "_blank", classList: [Styles.ns_link], children: "Payment and Billing" }), _jsx(NSLink, { href: "https://cost.namirasoft.com/", target: "_blank", classList: [Styles.ns_link], children: "Cost and Usage" }), _jsx(NSLink, { href: "https://account.namirasoft.com/setting/notification", target: "_blank", classList: [Styles.ns_link], children: "Notification Settings" }), _jsx(NSLink, { href: "https://account.namirasoft.com/password/change", target: "_blank", classList: [Styles.ns_link], children: "Change Password" }), _jsx(NSButton, { onClick: { action: () => this.props.client.logout() }, title: 'Log Out', classList: [Styles.ns_button], icon: {
22
22
  src: "https://static.namirasoft.com/image/concept/logout/blue.svg",
23
23
  alt: "Logout Icon"
24
24
  } })] })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"NSAUserDialog.js","sourceRoot":"","sources":["../../src/components/NSAUserDialog.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NSAUserDialog.js","sourceRoot":"","sources":["../../src/components/NSAUserDialog.tsx"],"names":[],"mappings":"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"}
package/dist/main.d.ts CHANGED
@@ -11,10 +11,11 @@ export * from "./pages/NSAConsentPage";
11
11
  export * from "./pages/NSAEmailVerificationPage";
12
12
  export * from "./pages/NSAHomePage";
13
13
  export * from "./pages/NSALoginPage";
14
+ export * from "./pages/NSAPhoneVerificationPage";
14
15
  export * from "./pages/NSAVerificationPage";
15
16
  export * from "./pages/PaymentRequired";
16
17
  export * from "./IEntityInfo";
17
18
  export * from "./NSARouterMaker";
18
- export * from "./NSARouterMakerComponent";
19
+ export * from "./NSARouterMakerConfig";
19
20
  export * from "./NSARouterMakerProps";
20
21
  export * from "./NSARouterMaker";
package/dist/main.js CHANGED
@@ -11,11 +11,12 @@ export * from "./pages/NSAConsentPage";
11
11
  export * from "./pages/NSAEmailVerificationPage";
12
12
  export * from "./pages/NSAHomePage";
13
13
  export * from "./pages/NSALoginPage";
14
+ export * from "./pages/NSAPhoneVerificationPage";
14
15
  export * from "./pages/NSAVerificationPage";
15
16
  export * from "./pages/PaymentRequired";
16
17
  export * from "./IEntityInfo";
17
18
  export * from "./NSARouterMaker";
18
- export * from "./NSARouterMakerComponent";
19
+ export * from "./NSARouterMakerConfig";
19
20
  export * from "./NSARouterMakerProps";
20
21
  export * from "./NSARouterMaker";
21
22
  //# sourceMappingURL=main.js.map
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { NSARouterMakerProps } from "../NSARouterMakerProps";
2
+ interface NSAPhoneVerificationPageProps extends NSARouterMakerProps {
3
+ callback: string;
4
+ }
5
+ export declare function NSAPhoneVerificationPage(props: NSAPhoneVerificationPageProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,35 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { jsx as _jsx } from "react/jsx-runtime";
11
+ import { useEffect } from "react";
12
+ import { NSAVerificationPage } from "./NSAVerificationPage";
13
+ import { EnvService } from "namirasoft-core";
14
+ export function NSAPhoneVerificationPage(props) {
15
+ useEffect(() => {
16
+ var _a, _b;
17
+ let phone = (_b = (_a = props.account.token_manager.get()) === null || _a === void 0 ? void 0 : _a.user) === null || _b === void 0 ? void 0 : _b.phone;
18
+ if (!phone) {
19
+ props.notifier.onWarning("Please enter your phone number before verifying.");
20
+ props.notifier.onWarning("Redirecting...", 2000);
21
+ setTimeout(() => {
22
+ let REACT_APP_BASE_URL_ACCOUNT_CONSOLE = new EnvService("REACT_APP_BASE_URL_ACCOUNT_CONSOLE", false).getString();
23
+ let path = `${REACT_APP_BASE_URL_ACCOUNT_CONSOLE}/user/profile`;
24
+ props.url.redirect(path, {});
25
+ }, 2000);
26
+ }
27
+ }, []);
28
+ return (_jsx(NSAVerificationPage, Object.assign({}, props, { contact_type: "SMS", contact_value_name: "Phone Number", getContactValue: () => { var _a, _b; return ((_b = (_a = props.account.token_manager.get()) === null || _a === void 0 ? void 0 : _a.user) === null || _b === void 0 ? void 0 : _b.phone) || ""; }, onRequest: () => __awaiter(this, void 0, void 0, function* () {
29
+ yield props.account.server.phone.Request();
30
+ }), onVerify: (code) => __awaiter(this, void 0, void 0, function* () {
31
+ yield props.account.server.phone.Verify({ code });
32
+ }), onFinished: () => props.url.redirect(props.callback, {}) })));
33
+ }
34
+ ;
35
+ //# sourceMappingURL=NSAPhoneVerificationPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NSAPhoneVerificationPage.js","sourceRoot":"","sources":["../../src/pages/NSAPhoneVerificationPage.tsx"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAO7C,MAAM,UAAU,wBAAwB,CAAC,KAAoC;IAE5E,SAAS,CAAC,GAAG,EAAE;;QAEd,IAAI,KAAK,GAAG,MAAA,MAAA,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,0CAAE,IAAI,0CAAE,KAAK,CAAC;QAC3D,IAAI,CAAC,KAAK,EACV,CAAC;YACA,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,kDAAkD,CAAC,CAAC;YAC7E,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;YACjD,UAAU,CAAC,GAAG,EAAE;gBAEf,IAAI,kCAAkC,GAAG,IAAI,UAAU,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC,SAAS,EAAE,CAAC;gBACjH,IAAI,IAAI,GAAG,GAAG,kCAAkC,eAAe,CAAC;gBAChE,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC9B,CAAC,EAAE,IAAI,CAAC,CAAC;QACV,CAAC;IAEF,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,OAAO,CACN,KAAC,mBAAmB,oBACf,KAAK,IACT,YAAY,EAAC,KAAK,EAClB,kBAAkB,EAAC,cAAc,EACjC,eAAe,EAAE,GAAG,EAAE,eAAC,OAAA,CAAA,MAAA,MAAA,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,0CAAE,IAAI,0CAAE,KAAK,KAAI,EAAE,CAAA,EAAA,EAC3E,SAAS,EAAE,GAAS,EAAE;YAErB,MAAM,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC5C,CAAC,CAAA,EACD,QAAQ,EAAE,CAAO,IAAI,EAAE,EAAE;YAExB,MAAM,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC,CAAA,EACD,UAAU,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,IACvD,CACF,CAAC;AACH,CAAC;AAAA,CAAC"}
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "framework": "npm",
9
9
  "application": "package",
10
10
  "private": false,
11
- "version": "1.4.356",
11
+ "version": "1.4.358",
12
12
  "author": "Amir Abolhasani",
13
13
  "license": "MIT",
14
14
  "main": "./dist/main.js",
@@ -28,22 +28,22 @@
28
28
  "namirasoft-access": "^1.4.70",
29
29
  "namirasoft-account": "^1.4.85",
30
30
  "namirasoft-account-client": "^1.4.6",
31
- "namirasoft-api-product": "^1.4.37",
32
- "namirasoft-core": "^1.4.87",
31
+ "namirasoft-api-product": "^1.4.40",
32
+ "namirasoft-core": "^1.4.89",
33
33
  "namirasoft-field": "^1.4.25",
34
34
  "namirasoft-history": "^1.4.17",
35
35
  "namirasoft-message": "^1.4.20",
36
- "namirasoft-payment": "^1.4.116",
36
+ "namirasoft-payment": "^1.4.126",
37
37
  "namirasoft-schema": "^1.4.25",
38
38
  "namirasoft-secret": "^1.4.39",
39
- "namirasoft-site": "^1.4.39",
40
- "namirasoft-site-map": "^1.4.33",
41
- "namirasoft-site-react": "^1.4.445",
39
+ "namirasoft-site": "^1.4.40",
40
+ "namirasoft-site-map": "^1.4.34",
41
+ "namirasoft-site-react": "^1.4.452",
42
42
  "namirasoft-workspace": "^1.4.23",
43
43
  "os-browserify": "^0.3.0",
44
44
  "path-browserify": "^1.0.1",
45
45
  "process": "^0.11.10",
46
- "query-string": "^9.2.2",
46
+ "query-string": "^9.3.0",
47
47
  "react": "^18.3.1",
48
48
  "react-app-rewired": "^2.2.1",
49
49
  "react-dom": "^18.3.1",
@@ -1,26 +1,27 @@
1
- import queryString, { ParsedQuery } from 'query-string';
2
- import rrd from 'react-router-dom';
3
- import { EncodingOperation, EnvService, IStorage, IStorageCookie, ObjectService, ParsedNameValue, URLOperation } from "namirasoft-core";
4
1
  import { NamirasoftAccountServer, TokenManager } from "namirasoft-account";
2
+ import { EncodingOperation, EnvService, IStorage, IStorageCookie, ObjectService, ParsedNameValue, URLOperation } from "namirasoft-core";
5
3
  import { NSRouterMaker, NSRouterMakerProps } from 'namirasoft-site-react';
6
- import { NSARouterMakerComponent } from "./NSARouterMakerComponent";
4
+ import queryString, { ParsedQuery } from 'query-string';
5
+ import rrd from 'react-router-dom';
6
+ import { NSARouterMakerConfig } from "./NSARouterMakerConfig";
7
7
  import { NSARouterMakerProps } from "./NSARouterMakerProps";
8
8
  import { NSAConsentPage } from './pages/NSAConsentPage';
9
9
  import { NSAEmailVerificationPage } from './pages/NSAEmailVerificationPage';
10
+ import { NSAPhoneVerificationPage } from './pages/NSAPhoneVerificationPage';
10
11
 
11
12
  export class NSARouterMaker
12
13
  {
13
14
  private product_id: string;
14
15
  private storage: IStorage;
15
16
  private setState: () => void;
16
- private component: NSARouterMakerComponent;
17
+ private config: NSARouterMakerConfig;
17
18
  private navigate: rrd.NavigateFunction;
18
- constructor(product_id: string, storage: IStorage, setState: () => void, component: NSARouterMakerComponent, navigate: rrd.NavigateFunction)
19
+ constructor(product_id: string, storage: IStorage, setState: () => void, config: NSARouterMakerConfig, navigate: rrd.NavigateFunction)
19
20
  {
20
21
  this.product_id = product_id;
21
22
  this.storage = storage;
22
23
  this.setState = setState;
23
- this.component = component;
24
+ this.config = config;
24
25
  this.navigate = navigate;
25
26
  this.getProps = this.getProps.bind(this);
26
27
  this.getQueryStrings = this.getQueryStrings.bind(this);
@@ -51,7 +52,7 @@ export class NSARouterMaker
51
52
  getQuery: this.getQuery,
52
53
  },
53
54
  renderer: {
54
- renderOnNSALayout: this.component.renderOnNSALayout
55
+ renderOnNSALayout: this.config.renderOnNSALayout
55
56
  },
56
57
  ...ns_router_maker_props
57
58
  };
@@ -105,7 +106,7 @@ export class NSARouterMaker
105
106
  banned = props.account.token_manager.getUserData(user => user.banned, false);
106
107
  if (!banned)
107
108
  {
108
- let result = this.component.getCustomRender?.(props);
109
+ let result = this.config.getCustomRender?.(props);
109
110
  if (result)
110
111
  return result;
111
112
  return <NSAConsentPage
@@ -113,15 +114,24 @@ export class NSARouterMaker
113
114
  product_id={this.product_id}
114
115
  onAccepted={() =>
115
116
  {
116
- let e_verified = props.account.token_manager.getUserData(u => u.e_verified, false);
117
- if (!e_verified)
118
- return this.component.renderOnNSALayout(props, <NSAEmailVerificationPage {...props} callback='' />);
119
- return this.component.onRenderOnLogin(props);
117
+ if (this.config.requirement.verification.email)
118
+ {
119
+ let e_verified = props.account.token_manager.getUserData(u => u.e_verified, false);
120
+ if (!e_verified)
121
+ return this.config.renderOnNSALayout(props, <NSAEmailVerificationPage {...props} callback='' />);
122
+ }
123
+ if (this.config.requirement.verification.phone)
124
+ {
125
+ let p_verified = props.account.token_manager.getUserData(u => u.p_verified, false);
126
+ if (!p_verified)
127
+ return this.config.renderOnNSALayout(props, <NSAPhoneVerificationPage {...props} callback='' />);
128
+ }
129
+ return this.config.onRenderOnLogin(props);
120
130
  }}
121
131
  />;
122
132
  }
123
133
  }
124
- return this.component.onRenderOnLogout(props, banned);
134
+ return this.config.onRenderOnLogout(props, banned);
125
135
  }
126
136
  });
127
137
 
@@ -1,10 +1,16 @@
1
1
  import React from "react";
2
2
  import { NSARouterMakerProps } from "./NSARouterMakerProps";
3
3
 
4
- export interface NSARouterMakerComponent
4
+ export interface NSARouterMakerConfig
5
5
  {
6
6
  onRenderOnLogin(props: NSARouterMakerProps): React.JSX.Element;
7
7
  onRenderOnLogout(props: NSARouterMakerProps, banned: boolean): React.JSX.Element;
8
8
  renderOnNSALayout(props: NSARouterMakerProps, children: React.JSX.Element): React.JSX.Element;
9
9
  getCustomRender?: (props: NSARouterMakerProps) => React.JSX.Element | null;
10
+ requirement: {
11
+ verification: {
12
+ email: boolean;
13
+ phone: boolean;
14
+ };
15
+ };
10
16
  }
package/src/Router.tsx CHANGED
@@ -34,6 +34,12 @@ export default function Router()
34
34
  renderOnNSALayout: (_, children) =>
35
35
  {
36
36
  return children;
37
+ },
38
+ requirement: {
39
+ verification: {
40
+ email: true,
41
+ phone: true
42
+ }
37
43
  }
38
44
  }, navigate);
39
45
  return maker.onRender();
@@ -92,7 +92,7 @@ export class NSAUserDialog extends Component<NSAUserDialogProps, NSAUserDialogSt
92
92
  target="_blank"
93
93
  classList={[Styles.ns_link]}
94
94
  >
95
- Notificaton Settings
95
+ Notification Settings
96
96
  </NSLink>
97
97
  <NSLink
98
98
  href="https://account.namirasoft.com/password/change"
package/src/main.ts CHANGED
@@ -11,10 +11,11 @@ export * from "./pages/NSAConsentPage";
11
11
  export * from "./pages/NSAEmailVerificationPage";
12
12
  export * from "./pages/NSAHomePage";
13
13
  export * from "./pages/NSALoginPage";
14
+ export * from "./pages/NSAPhoneVerificationPage";
14
15
  export * from "./pages/NSAVerificationPage";
15
16
  export * from "./pages/PaymentRequired";
16
17
  export * from "./IEntityInfo";
17
18
  export * from "./NSARouterMaker";
18
- export * from "./NSARouterMakerComponent";
19
+ export * from "./NSARouterMakerConfig";
19
20
  export * from "./NSARouterMakerProps";
20
21
  export * from "./NSARouterMaker";
@@ -0,0 +1,46 @@
1
+ import { useEffect } from "react";
2
+ import { NSARouterMakerProps } from "../NSARouterMakerProps";
3
+ import { NSAVerificationPage } from "./NSAVerificationPage";
4
+ import { EnvService } from "namirasoft-core";
5
+
6
+ interface NSAPhoneVerificationPageProps extends NSARouterMakerProps
7
+ {
8
+ callback: string;
9
+ }
10
+
11
+ export function NSAPhoneVerificationPage(props: NSAPhoneVerificationPageProps)
12
+ {
13
+ useEffect(() =>
14
+ {
15
+ let phone = props.account.token_manager.get()?.user?.phone;
16
+ if (!phone)
17
+ {
18
+ props.notifier.onWarning("Please enter your phone number before verifying.");
19
+ props.notifier.onWarning("Redirecting...", 2000);
20
+ setTimeout(() =>
21
+ {
22
+ let REACT_APP_BASE_URL_ACCOUNT_CONSOLE = new EnvService("REACT_APP_BASE_URL_ACCOUNT_CONSOLE", false).getString();
23
+ let path = `${REACT_APP_BASE_URL_ACCOUNT_CONSOLE}/user/profile`;
24
+ props.url.redirect(path, {});
25
+ }, 2000);
26
+ }
27
+ // eslint-disable-next-line
28
+ }, []);
29
+ return (
30
+ <NSAVerificationPage
31
+ {...props}
32
+ contact_type="SMS"
33
+ contact_value_name="Phone Number"
34
+ getContactValue={() => props.account.token_manager.get()?.user?.phone || ""}
35
+ onRequest={async () =>
36
+ {
37
+ await props.account.server.phone.Request();
38
+ }}
39
+ onVerify={async (code) =>
40
+ {
41
+ await props.account.server.phone.Verify({ code });
42
+ }}
43
+ onFinished={() => props.url.redirect(props.callback, {})}
44
+ />
45
+ );
46
+ };
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=NSARouterMakerComponent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NSARouterMakerComponent.js","sourceRoot":"","sources":["../src/NSARouterMakerComponent.ts"],"names":[],"mappings":""}