namirasoft-account-react 1.5.16 → 1.5.18
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/dist/NSARouterMaker.js +9 -6
- package/dist/NSARouterMaker.js.map +1 -1
- package/dist/NSARouterMakerProps.d.ts +4 -1
- package/dist/NSARouterMakerResult.d.ts +5 -2
- package/dist/NSFRouterMaker.d.ts +2 -3
- package/dist/NSFRouterMaker.js.map +1 -1
- package/dist/pages/NSFCategoryEditPage.d.ts +4 -4
- package/dist/pages/NSFCategoryEditPage.js +2 -3
- package/dist/pages/NSFCategoryEditPage.js.map +1 -1
- package/dist/pages/NSFCategoryListPage.d.ts +4 -4
- package/dist/pages/NSFCategoryListPage.js +2 -3
- package/dist/pages/NSFCategoryListPage.js.map +1 -1
- package/dist/pages/NSFCategoryViewPage.d.ts +4 -4
- package/dist/pages/NSFCategoryViewPage.js +2 -3
- package/dist/pages/NSFCategoryViewPage.js.map +1 -1
- package/dist/pages/PaymentRequired.d.ts +6 -4
- package/dist/pages/PaymentRequired.js +5 -7
- package/dist/pages/PaymentRequired.js.map +1 -1
- package/package.json +1 -1
- package/src/NSARouterMaker.tsx +10 -5
- package/src/NSARouterMakerProps.ts +2 -1
- package/src/NSARouterMakerResult.ts +3 -3
- package/src/NSFRouterMaker.tsx +2 -3
- package/src/pages/NSFCategoryEditPage.tsx +52 -55
- package/src/pages/NSFCategoryListPage.tsx +13 -19
- package/src/pages/NSFCategoryViewPage.tsx +13 -18
- package/src/pages/PaymentRequired.tsx +10 -8
package/dist/NSARouterMaker.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { NamirasoftAccountServer, TokenManager } from "namirasoft-account";
|
|
3
3
|
import { EncodingOperation, EnvService, IStorageCookie, ObjectService, URLOperation } from "namirasoft-core";
|
|
4
4
|
import { KeyOperation, LinkOperation, NSRouterMaker } from 'namirasoft-site-react';
|
|
5
5
|
import queryString from 'query-string';
|
|
6
|
-
import React from 'react';
|
|
6
|
+
import React, { cloneElement } from 'react';
|
|
7
7
|
import { NSAConsentPage } from './pages/NSAConsentPage';
|
|
8
8
|
import { NSAEmailVerificationPage } from './pages/NSAEmailVerificationPage';
|
|
9
9
|
import { NSAPhoneVerificationPage } from './pages/NSAPhoneVerificationPage';
|
|
@@ -34,8 +34,11 @@ export class NSARouterMaker extends React.Component {
|
|
|
34
34
|
getQueryStrings: this.getQueryStrings,
|
|
35
35
|
getQuery: this.getQuery,
|
|
36
36
|
navigate: this.props.navigate,
|
|
37
|
-
},
|
|
38
|
-
|
|
37
|
+
}, layout: {
|
|
38
|
+
getNSALayout: (key, props, children) => {
|
|
39
|
+
let layout = this.props.getNSALayout(props, children);
|
|
40
|
+
return cloneElement(layout, { key });
|
|
41
|
+
}
|
|
39
42
|
} }, ns_router_maker_props);
|
|
40
43
|
}
|
|
41
44
|
getQueryStrings() {
|
|
@@ -83,12 +86,12 @@ export class NSARouterMaker extends React.Component {
|
|
|
83
86
|
if (this.props.requirement.verification.email) {
|
|
84
87
|
let e_verified = nsa_result.account.token_manager.getUserData(u => u.e_verified, false);
|
|
85
88
|
if (!e_verified)
|
|
86
|
-
return
|
|
89
|
+
return nsa_result.layout.getNSALayout("nsa-page-email-verification", Object.assign(Object.assign({}, nsa_result), { children: _jsx(NSAEmailVerificationPage, Object.assign({}, nsa_result, { callback: '' })) }), _jsx(_Fragment, {}));
|
|
87
90
|
}
|
|
88
91
|
if (this.props.requirement.verification.phone) {
|
|
89
92
|
let p_verified = nsa_result.account.token_manager.getUserData(u => u.p_verified, false);
|
|
90
93
|
if (!p_verified)
|
|
91
|
-
return
|
|
94
|
+
return nsa_result.layout.getNSALayout("nsa-page-phone-verification", Object.assign(Object.assign({}, nsa_result), { children: _jsx(NSAPhoneVerificationPage, Object.assign({}, nsa_result, { callback: '' })) }), _jsx(_Fragment, {}));
|
|
92
95
|
}
|
|
93
96
|
return this.props.renderOnLogin(nsa_result);
|
|
94
97
|
} }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSARouterMaker.js","sourceRoot":"","sources":["../src/NSARouterMaker.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,uBAAuB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAmB,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC9H,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAuB,MAAM,uBAAuB,CAAC;AACxG,OAAO,WAA4B,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"NSARouterMaker.js","sourceRoot":"","sources":["../src/NSARouterMaker.tsx"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import { IStorage } from "namirasoft-core";
|
|
|
2
2
|
import React from "react";
|
|
3
3
|
import type { NavigateFunction } from "react-router-dom";
|
|
4
4
|
import { NSARouterMakerResult } from "./NSARouterMakerResult";
|
|
5
|
+
import { NSALayoutCustomProps } from "./layouts/NSALayout";
|
|
5
6
|
export interface NSARouterMakerProps {
|
|
6
7
|
notifier_storage: IStorage;
|
|
7
8
|
page_force_update: () => void;
|
|
@@ -9,7 +10,9 @@ export interface NSARouterMakerProps {
|
|
|
9
10
|
navigate: NavigateFunction;
|
|
10
11
|
renderOnLogin(result: NSARouterMakerResult): React.JSX.Element;
|
|
11
12
|
renderOnLogout(result: NSARouterMakerResult, banned: boolean): React.JSX.Element;
|
|
12
|
-
getNSALayout
|
|
13
|
+
getNSALayout<RowType extends {
|
|
14
|
+
id: string;
|
|
15
|
+
}, RowTypeInput = RowType>(props: NSALayoutCustomProps<RowType, RowTypeInput>, children: React.JSX.Element): React.JSX.Element;
|
|
13
16
|
requirement: {
|
|
14
17
|
verification: {
|
|
15
18
|
email: boolean;
|
|
@@ -3,6 +3,7 @@ import { ParsedNameValue } from "namirasoft-core";
|
|
|
3
3
|
import { NSRouterMakerResult } from "namirasoft-site-react";
|
|
4
4
|
import { ParsedQuery } from "query-string";
|
|
5
5
|
import { NavigateFunction } from "react-router-dom";
|
|
6
|
+
import { NSALayoutCustomProps } from "./layouts/NSALayout";
|
|
6
7
|
export interface NSARouterMakerResult extends NSRouterMakerResult {
|
|
7
8
|
product_id: string;
|
|
8
9
|
account: {
|
|
@@ -20,7 +21,9 @@ export interface NSARouterMakerResult extends NSRouterMakerResult {
|
|
|
20
21
|
}): void;
|
|
21
22
|
navigate: NavigateFunction;
|
|
22
23
|
};
|
|
23
|
-
|
|
24
|
-
|
|
24
|
+
layout: {
|
|
25
|
+
getNSALayout<RowType extends {
|
|
26
|
+
id: string;
|
|
27
|
+
}, RowTypeInput = RowType>(key: string, props: NSALayoutCustomProps<RowType, RowTypeInput>, children: React.JSX.Element): React.JSX.Element;
|
|
25
28
|
};
|
|
26
29
|
}
|
package/dist/NSFRouterMaker.d.ts
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { EntityResolveResponseRow } from 'namirasoft-field';
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
|
-
import {
|
|
4
|
-
export interface NSFRouterMakerProps extends
|
|
5
|
-
children: ReactNode;
|
|
3
|
+
import { NSALayoutCustomProps } from './main';
|
|
4
|
+
export interface NSFRouterMakerProps extends NSALayoutCustomProps<any, any> {
|
|
6
5
|
rows: EntityResolveResponseRow;
|
|
7
6
|
}
|
|
8
7
|
export declare class NSFRouterMaker {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSFRouterMaker.js","sourceRoot":"","sources":["../src/NSFRouterMaker.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAA8C,qBAAqB,EAAE,cAAc,EAAW,MAAM,kBAAkB,CAAC;AAE9H,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"NSFRouterMaker.js","sourceRoot":"","sources":["../src/NSFRouterMaker.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { CategoryScopeRow, SlotRow } from "namirasoft-field";
|
|
1
|
+
import { CategoryRow, CategoryScopeRow, SlotRow } from "namirasoft-field";
|
|
2
2
|
import { NSBoxString, NSBoxTextArea } from "namirasoft-site-react";
|
|
3
3
|
import { Component } from "react";
|
|
4
|
-
import {
|
|
4
|
+
import { NSALayoutCustomProps } from "../layouts/NSALayout";
|
|
5
5
|
import { NSFRouterProps } from "../NSFRouterProps";
|
|
6
|
-
export interface NSFCategoryEditPageProps extends
|
|
6
|
+
export interface NSFCategoryEditPageProps extends NSALayoutCustomProps<CategoryRow>, NSFRouterProps {
|
|
7
7
|
slot: SlotRow;
|
|
8
8
|
category_scope: CategoryScopeRow;
|
|
9
9
|
isEdit: boolean;
|
|
@@ -14,6 +14,6 @@ export declare class NSFCategoryEditPage extends Component<NSFCategoryEditPagePr
|
|
|
14
14
|
NSBoxString_Name: import("react").RefObject<NSBoxString>;
|
|
15
15
|
NSBoxTexArea_Description: import("react").RefObject<NSBoxTextArea>;
|
|
16
16
|
constructor(props: NSFCategoryEditPageProps);
|
|
17
|
-
render(): import("react
|
|
17
|
+
render(): import("react").JSX.Element;
|
|
18
18
|
}
|
|
19
19
|
export {};
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { NSBox, NSBoxString, NSBoxTextArea, NSColumn, NSRow } from "namirasoft-site-react";
|
|
3
3
|
import { Component, createRef } from "react";
|
|
4
|
-
import { NSALayout } from "../layouts/NSALayout";
|
|
5
4
|
import { NSFEntities } from "./NSFEntities";
|
|
6
5
|
export class NSFCategoryEditPage extends Component {
|
|
7
6
|
constructor(props) {
|
|
@@ -11,7 +10,7 @@ export class NSFCategoryEditPage extends Component {
|
|
|
11
10
|
this.state = {};
|
|
12
11
|
}
|
|
13
12
|
render() {
|
|
14
|
-
return (
|
|
13
|
+
return this.props.layout.getNSALayout("nsf-page-category-view", Object.assign(Object.assign({}, this.props), { action: {
|
|
15
14
|
description: this.props.isEdit ? "This section allows you to update the details of an existing category." : "This section allows you to add a new category by entering its details."
|
|
16
15
|
}, pages: {
|
|
17
16
|
entity: NSFEntities.category(this.props, this.props.slot, this.props.category_scope),
|
|
@@ -41,7 +40,7 @@ export class NSFCategoryEditPage extends Component {
|
|
|
41
40
|
}
|
|
42
41
|
}
|
|
43
42
|
} })
|
|
44
|
-
},
|
|
43
|
+
} }), _jsxs(NSColumn, { children: [_jsx(NSRow, { children: _jsx(NSBoxString, { ref: this.NSBoxString_Name, title: "Name", required: true, style: { width: NSBox.width.double }, info: { link: "https://namirasoft.com/field/console-guide/category/#field-name" } }) }), _jsx(NSBoxTextArea, { ref: this.NSBoxTexArea_Description, title: "Description", required: false, style: { width: NSBox.width.double }, info: { link: "https://namirasoft.com/field/console-guide/category/#field-description" } })] }));
|
|
45
44
|
}
|
|
46
45
|
}
|
|
47
46
|
//# sourceMappingURL=NSFCategoryEditPage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSFCategoryEditPage.js","sourceRoot":"","sources":["../../src/pages/NSFCategoryEditPage.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"NSFCategoryEditPage.js","sourceRoot":"","sources":["../../src/pages/NSFCategoryEditPage.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAG7C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAW5C,MAAM,OAAO,mBAAoB,SAAQ,SAA6D;IAKrG,YAAY,KAA+B;QAE1C,KAAK,CAAC,KAAK,CAAC,CAAC;QALd,qBAAgB,GAAG,SAAS,EAAe,CAAC;QAC5C,6BAAwB,GAAG,SAAS,EAAiB,CAAC;QAKrD,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IACjB,CAAC;IAEQ,MAAM;QAEd,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAgC,wBAAwB,kCACzF,IAAI,CAAC,KAAK,KACb,MAAM,EAAE;gBACP,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,wEAAwE,CAAC,CAAC,CAAC,wEAAwE;aACpL,EACD,KAAK,EAAE;gBACN,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;gBACpF,IAAI,kCACA,IAAI,CAAC,KAAK,KACb,EAAE,EAAE;wBACH,aAAa,EAAE;4BACd,MAAM,EAAE;gCACP,WAAW,EAAE,GAAG,EAAE;;oCAEjB,IAAI,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC;oCACrD,IAAI,IAAI,GAAG,MAAA,MAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,0CAAE,QAAQ,EAAE,mCAAI,EAAE,CAAC;oCAC3D,IAAI,WAAW,GAAG,MAAA,MAAA,IAAI,CAAC,wBAAwB,CAAC,OAAO,0CAAE,QAAQ,EAAE,mCAAI,EAAE,CAAC;oCAE1E,OAAO;wCACN,YAAY,EAAE,EAAE;wCAChB,iBAAiB;wCACjB,IAAI;wCACJ,WAAW;wCACX,iBAAiB,EAAE,EAAE;wCACrB,cAAc,EAAE,EAAE;wCAClB,YAAY,EAAE,EAAE;qCAChB,CAAC;gCACH,CAAC;gCACD,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE;;oCAEf,MAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,0CAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oCAClD,MAAA,IAAI,CAAC,wBAAwB,CAAC,OAAO,0CAAE,QAAQ,CAAC,MAAA,GAAG,CAAC,WAAW,mCAAI,EAAE,CAAC,CAAC;gCACxE,CAAC;6BACD;yBACD;qBACD,GACD;aACD,KAED,MAAC,QAAQ,eACR,KAAC,KAAK,cACL,KAAC,WAAW,IACX,GAAG,EAAE,IAAI,CAAC,gBAAgB,EAC1B,KAAK,EAAC,MAAM,EACZ,QAAQ,QACR,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,EACpC,IAAI,EAAE,EAAE,IAAI,EAAE,iEAAiE,EAAE,GAChF,GACK,EACR,KAAC,aAAa,IACb,GAAG,EAAE,IAAI,CAAC,wBAAwB,EAClC,KAAK,EAAC,aAAa,EACnB,QAAQ,EAAE,KAAK,EACf,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,EACpC,IAAI,EAAE,EAAE,IAAI,EAAE,wEAAwE,EAAE,GACvF,IACQ,CACX,CAAC;IACH,CAAC;CACD"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { CategoryScopeRow, SlotRow } from "namirasoft-field";
|
|
2
|
-
import {
|
|
1
|
+
import { CategoryRow, CategoryScopeRow, SlotRow } from "namirasoft-field";
|
|
2
|
+
import { NSALayoutCustomProps } from "../layouts/NSALayout";
|
|
3
3
|
import { NSFRouterProps } from "../NSFRouterProps";
|
|
4
|
-
export interface NSFCategoryListPageProps extends
|
|
4
|
+
export interface NSFCategoryListPageProps extends NSALayoutCustomProps<CategoryRow>, NSFRouterProps {
|
|
5
5
|
slot: SlotRow;
|
|
6
6
|
category_scope: CategoryScopeRow;
|
|
7
7
|
}
|
|
8
|
-
export declare function NSFCategoryListPage(props: NSFCategoryListPageProps): import("react
|
|
8
|
+
export declare function NSFCategoryListPage(props: NSFCategoryListPageProps): import("react").JSX.Element;
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { NSALayout } from "../layouts/NSALayout";
|
|
3
2
|
import { NSFEntities } from "./NSFEntities";
|
|
4
3
|
export function NSFCategoryListPage(props) {
|
|
5
|
-
return (
|
|
4
|
+
return props.layout.getNSALayout("nsf-page-category-view", Object.assign(Object.assign({}, props), { action: {
|
|
6
5
|
description: "This section displays all categories you have created with their basic information."
|
|
7
6
|
}, pages: {
|
|
8
7
|
entity: NSFEntities.category(props, props.slot, props.category_scope),
|
|
9
8
|
list: {}
|
|
10
|
-
},
|
|
9
|
+
} }), _jsx(_Fragment, {}));
|
|
11
10
|
}
|
|
12
11
|
//# sourceMappingURL=NSFCategoryListPage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSFCategoryListPage.js","sourceRoot":"","sources":["../../src/pages/NSFCategoryListPage.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"NSFCategoryListPage.js","sourceRoot":"","sources":["../../src/pages/NSFCategoryListPage.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAQ5C,MAAM,UAAU,mBAAmB,CAAC,KAA+B;IAElE,OAAO,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,wBAAwB,kCACrD,KAAK,KACR,MAAM,EAAE;YACP,WAAW,EAAE,qFAAqF;SAClG,EACD,KAAK,EAAE;YACN,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,cAAc,CAAC;YACrE,IAAI,EAAE,EAAE;SACR,KACC,mBAAK,CAAC,CAAC;AACX,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { CategoryScopeRow, SlotRow } from "namirasoft-field";
|
|
2
|
-
import {
|
|
1
|
+
import { CategoryRow, CategoryScopeRow, SlotRow } from "namirasoft-field";
|
|
2
|
+
import { NSALayoutCustomProps } from "../layouts/NSALayout";
|
|
3
3
|
import { NSFRouterProps } from "../NSFRouterProps";
|
|
4
|
-
export interface NSFCategoryViewPageProps extends
|
|
4
|
+
export interface NSFCategoryViewPageProps extends NSALayoutCustomProps<CategoryRow>, NSFRouterProps {
|
|
5
5
|
slot: SlotRow;
|
|
6
6
|
category_scope: CategoryScopeRow;
|
|
7
7
|
}
|
|
8
|
-
export declare function NSFCategoryViewPage(props: NSFCategoryViewPageProps): import("react
|
|
8
|
+
export declare function NSFCategoryViewPage(props: NSFCategoryViewPageProps): import("react").JSX.Element;
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { NSALayout } from "../layouts/NSALayout";
|
|
3
2
|
import { NSFEntities } from "./NSFEntities";
|
|
4
3
|
export function NSFCategoryViewPage(props) {
|
|
5
|
-
return (
|
|
4
|
+
return props.layout.getNSALayout("nsf-page-category-view", Object.assign(Object.assign({}, props), { action: {
|
|
6
5
|
description: "This section displays detailed information about a selected category."
|
|
7
6
|
}, pages: {
|
|
8
7
|
entity: NSFEntities.category(props, props.slot, props.category_scope),
|
|
9
8
|
view: {}
|
|
10
|
-
},
|
|
9
|
+
} }), _jsx(_Fragment, {}));
|
|
11
10
|
}
|
|
12
11
|
//# sourceMappingURL=NSFCategoryViewPage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSFCategoryViewPage.js","sourceRoot":"","sources":["../../src/pages/NSFCategoryViewPage.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"NSFCategoryViewPage.js","sourceRoot":"","sources":["../../src/pages/NSFCategoryViewPage.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAQ5C,MAAM,UAAU,mBAAmB,CAAC,KAA+B;IAElE,OAAO,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,wBAAwB,kCACrD,KAAK,KACR,MAAM,EAAE;YACP,WAAW,EAAE,uEAAuE;SACpF,EACD,KAAK,EAAE;YACN,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,cAAc,CAAC;YACrE,IAAI,EAAE,EAAE;SACR,KACC,mBAAK,CAAC,CAAC;AACX,CAAC"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
import { Component } from "react";
|
|
2
|
-
import { IBaseComponentProps } from "namirasoft-site-react";
|
|
3
1
|
import { SubscriptionValidation } from "namirasoft-payment";
|
|
2
|
+
import { IBaseComponentProps } from "namirasoft-site-react";
|
|
3
|
+
import { Component } from "react";
|
|
4
4
|
import { NSARouterMakerResult } from "../NSARouterMakerResult";
|
|
5
5
|
export interface PaymentRequiredProps extends IBaseComponentProps, NSARouterMakerResult {
|
|
6
6
|
tilte: string;
|
|
7
7
|
description: string;
|
|
8
|
-
|
|
8
|
+
button: {
|
|
9
|
+
action: string;
|
|
10
|
+
};
|
|
9
11
|
payment_offer_url: string;
|
|
10
12
|
Validation: () => Promise<SubscriptionValidation>;
|
|
11
13
|
children: JSX.Element;
|
|
@@ -16,6 +18,6 @@ interface PaymentRequiredState {
|
|
|
16
18
|
export declare class PaymentRequired extends Component<PaymentRequiredProps, PaymentRequiredState> {
|
|
17
19
|
constructor(props: PaymentRequiredProps);
|
|
18
20
|
componentDidMount(): void;
|
|
19
|
-
render(): JSX.Element;
|
|
21
|
+
render(): import("react").JSX.Element;
|
|
20
22
|
}
|
|
21
23
|
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Component, cloneElement } from "react";
|
|
3
|
-
import { LinkOperation, NSBox, NSButtonGreen, NSLabel, NSLoading, NSPanel, NSRow, NSSection } from "namirasoft-site-react";
|
|
4
2
|
import { EncodingOperation } from "namirasoft-core";
|
|
3
|
+
import { LinkOperation, NSBox, NSButtonGreen, NSLabel, NSLoading, NSPanel, NSRow, NSSection } from "namirasoft-site-react";
|
|
4
|
+
import { Component } from "react";
|
|
5
5
|
export class PaymentRequired extends Component {
|
|
6
6
|
constructor(props) {
|
|
7
7
|
super(props);
|
|
@@ -14,13 +14,12 @@ export class PaymentRequired extends Component {
|
|
|
14
14
|
}
|
|
15
15
|
render() {
|
|
16
16
|
if (this.state.subscribed == null) {
|
|
17
|
-
|
|
18
|
-
return cloneElement(layout, { key: "loading" });
|
|
17
|
+
return this.props.layout.getNSALayout("loading", this.props, _jsx(NSLoading, { title: "Loading Namirasoft Payment Information" }));
|
|
19
18
|
}
|
|
20
19
|
if (!this.state.subscribed) {
|
|
21
20
|
let section = _jsx(NSSection, { children: _jsx(NSPanel, { children: _jsxs(NSRow, { style: {
|
|
22
21
|
width: NSBox.width.double
|
|
23
|
-
}, children: [_jsx(NSLabel, { title: this.props.tilte, description: this.props.description }), _jsx(NSButtonGreen, { title: this.props.action, onClick: {
|
|
22
|
+
}, children: [_jsx(NSLabel, { title: this.props.tilte, description: this.props.description }), _jsx(NSButtonGreen, { title: this.props.button.action, onClick: {
|
|
24
23
|
action: () => {
|
|
25
24
|
let callback = EncodingOperation.Base64Encode(window.location.href);
|
|
26
25
|
let link = this.props.payment_offer_url + "?callback=" + callback;
|
|
@@ -28,8 +27,7 @@ export class PaymentRequired extends Component {
|
|
|
28
27
|
},
|
|
29
28
|
showLoading: false
|
|
30
29
|
} })] }) }) });
|
|
31
|
-
|
|
32
|
-
return cloneElement(layout, { key: "payment-required" });
|
|
30
|
+
return this.props.layout.getNSALayout("payment-required", this.props, section);
|
|
33
31
|
}
|
|
34
32
|
return this.props.children;
|
|
35
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaymentRequired.js","sourceRoot":"","sources":["../../src/pages/PaymentRequired.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"PaymentRequired.js","sourceRoot":"","sources":["../../src/pages/PaymentRequired.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAuB,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAChJ,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAoBlC,MAAM,OAAO,eAAgB,SAAQ,SAAqD;IAEzF,YAAY,KAA2B;QAEtC,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,KAAK,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IACnC,CAAC;IACQ,iBAAiB;QAEzB,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YAElC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IACrB,CAAC;IACQ,MAAM;QAEd,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,IAAI,EACjC,CAAC;YACA,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,KAAC,SAAS,IACtE,KAAK,EAAC,wCAAwC,GAC7C,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAC1B,CAAC;YACA,IAAI,OAAO,GAAG,KAAC,SAAS,cACvB,KAAC,OAAO,cACP,MAAC,KAAK,IACL,KAAK,EAAE;4BACN,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM;yBACzB,aAED,KAAC,OAAO,IACP,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EACvB,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,GAE1B,EACV,KAAC,aAAa,IACb,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAC/B,OAAO,EAAE;oCACR,MAAM,EAAE,GAAG,EAAE;wCAEZ,IAAI,QAAQ,GAAG,iBAAiB,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;wCACpE,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,YAAY,GAAG,QAAQ,CAAC;wCAClE,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oCAC1B,CAAC;oCACD,WAAW,EAAE,KAAK;iCAClB,GACe,IACV,GACC,GACC,CAAC;YACb,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,kBAAkB,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QAC/E,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC5B,CAAC;CACD"}
|
package/package.json
CHANGED
package/src/NSARouterMaker.tsx
CHANGED
|
@@ -2,7 +2,8 @@ import { NamirasoftAccountServer, TokenManager } from "namirasoft-account";
|
|
|
2
2
|
import { EncodingOperation, EnvService, IStorageCookie, ObjectService, ParsedNameValue, URLOperation } from "namirasoft-core";
|
|
3
3
|
import { KeyOperation, LinkOperation, NSRouterMaker, NSRouterMakerResult } from 'namirasoft-site-react';
|
|
4
4
|
import queryString, { ParsedQuery } from 'query-string';
|
|
5
|
-
import React from 'react';
|
|
5
|
+
import React, { cloneElement } from 'react';
|
|
6
|
+
import { NSALayoutCustomProps } from "./main";
|
|
6
7
|
import { NSARouterMakerProps } from "./NSARouterMakerProps";
|
|
7
8
|
import { NSARouterMakerResult } from "./NSARouterMakerResult";
|
|
8
9
|
import { NSAConsentPage } from './pages/NSAConsentPage';
|
|
@@ -45,8 +46,12 @@ export class NSARouterMaker extends React.Component<NSARouterMakerProps>
|
|
|
45
46
|
getQuery: this.getQuery,
|
|
46
47
|
navigate: this.props.navigate,
|
|
47
48
|
},
|
|
48
|
-
|
|
49
|
-
|
|
49
|
+
layout: {
|
|
50
|
+
getNSALayout: (key: string, props: NSALayoutCustomProps<any, any>, children: React.JSX.Element) =>
|
|
51
|
+
{
|
|
52
|
+
let layout = this.props.getNSALayout(props, children);
|
|
53
|
+
return cloneElement(layout, { key });
|
|
54
|
+
}
|
|
50
55
|
},
|
|
51
56
|
...ns_router_maker_props
|
|
52
57
|
};
|
|
@@ -115,13 +120,13 @@ export class NSARouterMaker extends React.Component<NSARouterMakerProps>
|
|
|
115
120
|
{
|
|
116
121
|
let e_verified = nsa_result.account.token_manager.getUserData(u => u.e_verified, false);
|
|
117
122
|
if (!e_verified)
|
|
118
|
-
return
|
|
123
|
+
return nsa_result.layout.getNSALayout("nsa-page-email-verification", { ...nsa_result, children: <NSAEmailVerificationPage {...nsa_result} callback='' /> }, <></>);
|
|
119
124
|
}
|
|
120
125
|
if (this.props.requirement.verification.phone)
|
|
121
126
|
{
|
|
122
127
|
let p_verified = nsa_result.account.token_manager.getUserData(u => u.p_verified, false);
|
|
123
128
|
if (!p_verified)
|
|
124
|
-
return
|
|
129
|
+
return nsa_result.layout.getNSALayout("nsa-page-phone-verification", { ...nsa_result, children: <NSAPhoneVerificationPage {...nsa_result} callback='' /> }, <></>);
|
|
125
130
|
}
|
|
126
131
|
return this.props.renderOnLogin(nsa_result);
|
|
127
132
|
}}
|
|
@@ -2,6 +2,7 @@ import { IStorage } from "namirasoft-core";
|
|
|
2
2
|
import React from "react";
|
|
3
3
|
import type { NavigateFunction } from "react-router-dom";
|
|
4
4
|
import { NSARouterMakerResult } from "./NSARouterMakerResult";
|
|
5
|
+
import { NSALayoutCustomProps } from "./layouts/NSALayout";
|
|
5
6
|
|
|
6
7
|
export interface NSARouterMakerProps
|
|
7
8
|
{
|
|
@@ -12,7 +13,7 @@ export interface NSARouterMakerProps
|
|
|
12
13
|
navigate: NavigateFunction;
|
|
13
14
|
renderOnLogin(result: NSARouterMakerResult): React.JSX.Element;
|
|
14
15
|
renderOnLogout(result: NSARouterMakerResult, banned: boolean): React.JSX.Element;
|
|
15
|
-
getNSALayout(
|
|
16
|
+
getNSALayout<RowType extends { id: string }, RowTypeInput = RowType>(props: NSALayoutCustomProps<RowType, RowTypeInput>, children: React.JSX.Element): React.JSX.Element;
|
|
16
17
|
requirement: {
|
|
17
18
|
verification: {
|
|
18
19
|
email: boolean;
|
|
@@ -3,6 +3,7 @@ import { ParsedNameValue } from "namirasoft-core";
|
|
|
3
3
|
import { NSRouterMakerResult } from "namirasoft-site-react";
|
|
4
4
|
import { ParsedQuery } from "query-string";
|
|
5
5
|
import { NavigateFunction } from "react-router-dom";
|
|
6
|
+
import { NSALayoutCustomProps } from "./layouts/NSALayout";
|
|
6
7
|
|
|
7
8
|
export interface NSARouterMakerResult extends NSRouterMakerResult
|
|
8
9
|
{
|
|
@@ -18,8 +19,7 @@ export interface NSARouterMakerResult extends NSRouterMakerResult
|
|
|
18
19
|
redirect(sub: string, customQuery: { [name: string]: ParsedNameValue }): void;
|
|
19
20
|
navigate: NavigateFunction;
|
|
20
21
|
},
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
renderOnNSALayout(props: NSARouterMakerResult, children: React.JSX.Element): React.JSX.Element;
|
|
22
|
+
layout: {
|
|
23
|
+
getNSALayout<RowType extends { id: string }, RowTypeInput = RowType>(key: string, props: NSALayoutCustomProps<RowType, RowTypeInput>, children: React.JSX.Element): React.JSX.Element;
|
|
24
24
|
}
|
|
25
25
|
}
|
package/src/NSFRouterMaker.tsx
CHANGED
|
@@ -2,15 +2,14 @@ import { EnvService } from 'namirasoft-core';
|
|
|
2
2
|
import { CategoryScopeRow, EntityResolveResponseRow, NamirasoftFieldServer, SlotEntityType, SlotRow } from 'namirasoft-field';
|
|
3
3
|
import { ReactNode } from 'react';
|
|
4
4
|
import { Route } from 'react-router-dom';
|
|
5
|
-
import {
|
|
5
|
+
import { NSALayoutCustomProps } from './main';
|
|
6
6
|
import { NSFRoutes } from './NSFRoutes';
|
|
7
7
|
import { NSFCategoryEditPage } from './pages/NSFCategoryEditPage';
|
|
8
8
|
import { NSFCategoryListPage } from './pages/NSFCategoryListPage';
|
|
9
9
|
import { NSFCategoryViewPage } from './pages/NSFCategoryViewPage';
|
|
10
10
|
|
|
11
|
-
export interface NSFRouterMakerProps extends
|
|
11
|
+
export interface NSFRouterMakerProps extends NSALayoutCustomProps<any, any>
|
|
12
12
|
{
|
|
13
|
-
children: ReactNode;
|
|
14
13
|
rows: EntityResolveResponseRow;
|
|
15
14
|
}
|
|
16
15
|
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { CategoryInputRow, CategoryRow, CategoryScopeRow, SlotRow } from "namirasoft-field";
|
|
2
2
|
import { NSBox, NSBoxString, NSBoxTextArea, NSColumn, NSRow } from "namirasoft-site-react";
|
|
3
3
|
import { Component, createRef } from "react";
|
|
4
|
-
import {
|
|
5
|
-
import { NSARouterMakerResult } from "../NSARouterMakerResult";
|
|
4
|
+
import { NSALayoutCustomProps } from "../layouts/NSALayout";
|
|
6
5
|
import { NSFRouterProps } from "../NSFRouterProps";
|
|
7
6
|
import { NSFEntities } from "./NSFEntities";
|
|
8
7
|
|
|
9
|
-
export interface NSFCategoryEditPageProps extends
|
|
8
|
+
export interface NSFCategoryEditPageProps extends NSALayoutCustomProps<CategoryRow>, NSFRouterProps
|
|
10
9
|
{
|
|
11
10
|
slot: SlotRow;
|
|
12
11
|
category_scope: CategoryScopeRow;
|
|
@@ -28,65 +27,63 @@ export class NSFCategoryEditPage extends Component<NSFCategoryEditPageProps, NSF
|
|
|
28
27
|
|
|
29
28
|
override render()
|
|
30
29
|
{
|
|
31
|
-
return (
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
let description = this.NSBoxTexArea_Description.current?.getValue() ?? "";
|
|
30
|
+
return this.props.layout.getNSALayout<CategoryRow, CategoryInputRow>("nsf-page-category-view", {
|
|
31
|
+
...this.props,
|
|
32
|
+
action: {
|
|
33
|
+
description: this.props.isEdit ? "This section allows you to update the details of an existing category." : "This section allows you to add a new category by entering its details."
|
|
34
|
+
},
|
|
35
|
+
pages: {
|
|
36
|
+
entity: NSFEntities.category(this.props, this.props.slot, this.props.category_scope),
|
|
37
|
+
edit: {
|
|
38
|
+
...this.props,
|
|
39
|
+
ui: {
|
|
40
|
+
tab_page_edit: {
|
|
41
|
+
editor: {
|
|
42
|
+
getInputRow: () =>
|
|
43
|
+
{
|
|
44
|
+
let category_scope_id = this.props.category_scope.id;
|
|
45
|
+
let name = this.NSBoxString_Name.current?.getValue() ?? "";
|
|
46
|
+
let description = this.NSBoxTexArea_Description.current?.getValue() ?? "";
|
|
49
47
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
}
|
|
48
|
+
return {
|
|
49
|
+
workspace_id: "",
|
|
50
|
+
category_scope_id,
|
|
51
|
+
name,
|
|
52
|
+
description,
|
|
53
|
+
category_category: [],
|
|
54
|
+
category_field: [],
|
|
55
|
+
category_tag: [],
|
|
56
|
+
};
|
|
57
|
+
},
|
|
58
|
+
setRow: (row) =>
|
|
59
|
+
{
|
|
60
|
+
this.NSBoxString_Name.current?.setValue(row.name);
|
|
61
|
+
this.NSBoxTexArea_Description.current?.setValue(row.description ?? "");
|
|
65
62
|
}
|
|
66
63
|
}
|
|
67
64
|
}
|
|
68
65
|
}
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
info={{ link: "https://namirasoft.com/field/console-guide/category/#field-name" }}
|
|
79
|
-
/>
|
|
80
|
-
</NSRow>
|
|
81
|
-
<NSBoxTextArea
|
|
82
|
-
ref={this.NSBoxTexArea_Description}
|
|
83
|
-
title="Description"
|
|
84
|
-
required={false}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
<NSColumn>
|
|
70
|
+
<NSRow>
|
|
71
|
+
<NSBoxString
|
|
72
|
+
ref={this.NSBoxString_Name}
|
|
73
|
+
title="Name"
|
|
74
|
+
required
|
|
85
75
|
style={{ width: NSBox.width.double }}
|
|
86
|
-
info={{ link: "https://namirasoft.com/field/console-guide/category/#field-
|
|
76
|
+
info={{ link: "https://namirasoft.com/field/console-guide/category/#field-name" }}
|
|
87
77
|
/>
|
|
88
|
-
</
|
|
89
|
-
|
|
78
|
+
</NSRow>
|
|
79
|
+
<NSBoxTextArea
|
|
80
|
+
ref={this.NSBoxTexArea_Description}
|
|
81
|
+
title="Description"
|
|
82
|
+
required={false}
|
|
83
|
+
style={{ width: NSBox.width.double }}
|
|
84
|
+
info={{ link: "https://namirasoft.com/field/console-guide/category/#field-description" }}
|
|
85
|
+
/>
|
|
86
|
+
</NSColumn>
|
|
90
87
|
);
|
|
91
88
|
}
|
|
92
89
|
}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { CategoryScopeRow, SlotRow } from "namirasoft-field";
|
|
2
|
-
import {
|
|
3
|
-
import { NSARouterMakerResult } from "../NSARouterMakerResult";
|
|
1
|
+
import { CategoryRow, CategoryScopeRow, SlotRow } from "namirasoft-field";
|
|
2
|
+
import { NSALayoutCustomProps } from "../layouts/NSALayout";
|
|
4
3
|
import { NSFRouterProps } from "../NSFRouterProps";
|
|
5
4
|
import { NSFEntities } from "./NSFEntities";
|
|
6
5
|
|
|
7
|
-
export interface NSFCategoryListPageProps extends
|
|
6
|
+
export interface NSFCategoryListPageProps extends NSALayoutCustomProps<CategoryRow>, NSFRouterProps
|
|
8
7
|
{
|
|
9
8
|
slot: SlotRow;
|
|
10
9
|
category_scope: CategoryScopeRow;
|
|
@@ -12,19 +11,14 @@ export interface NSFCategoryListPageProps extends NSARouterMakerResult, NSFRoute
|
|
|
12
11
|
|
|
13
12
|
export function NSFCategoryListPage(props: NSFCategoryListPageProps)
|
|
14
13
|
{
|
|
15
|
-
return (
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
>
|
|
26
|
-
<>
|
|
27
|
-
</>
|
|
28
|
-
</NSALayout>
|
|
29
|
-
);
|
|
14
|
+
return props.layout.getNSALayout("nsf-page-category-view", {
|
|
15
|
+
...props,
|
|
16
|
+
action: {
|
|
17
|
+
description: "This section displays all categories you have created with their basic information."
|
|
18
|
+
},
|
|
19
|
+
pages: {
|
|
20
|
+
entity: NSFEntities.category(props, props.slot, props.category_scope),
|
|
21
|
+
list: {}
|
|
22
|
+
}
|
|
23
|
+
}, <></>);
|
|
30
24
|
}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { CategoryScopeRow, SlotRow } from "namirasoft-field";
|
|
2
|
-
import {
|
|
3
|
-
import { NSARouterMakerResult } from "../NSARouterMakerResult";
|
|
1
|
+
import { CategoryRow, CategoryScopeRow, SlotRow } from "namirasoft-field";
|
|
2
|
+
import { NSALayoutCustomProps } from "../layouts/NSALayout";
|
|
4
3
|
import { NSFRouterProps } from "../NSFRouterProps";
|
|
5
4
|
import { NSFEntities } from "./NSFEntities";
|
|
6
5
|
|
|
7
|
-
export interface NSFCategoryViewPageProps extends
|
|
6
|
+
export interface NSFCategoryViewPageProps extends NSALayoutCustomProps<CategoryRow>, NSFRouterProps
|
|
8
7
|
{
|
|
9
8
|
slot: SlotRow;
|
|
10
9
|
category_scope: CategoryScopeRow;
|
|
@@ -12,18 +11,14 @@ export interface NSFCategoryViewPageProps extends NSARouterMakerResult, NSFRoute
|
|
|
12
11
|
|
|
13
12
|
export function NSFCategoryViewPage(props: NSFCategoryViewPageProps)
|
|
14
13
|
{
|
|
15
|
-
return (
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
>
|
|
26
|
-
<> </>
|
|
27
|
-
</NSALayout>
|
|
28
|
-
);
|
|
14
|
+
return props.layout.getNSALayout("nsf-page-category-view", {
|
|
15
|
+
...props,
|
|
16
|
+
action: {
|
|
17
|
+
description: "This section displays detailed information about a selected category."
|
|
18
|
+
},
|
|
19
|
+
pages: {
|
|
20
|
+
entity: NSFEntities.category(props, props.slot, props.category_scope),
|
|
21
|
+
view: {}
|
|
22
|
+
}
|
|
23
|
+
}, <></>);
|
|
29
24
|
}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
|
-
import { Component, cloneElement } from "react";
|
|
2
|
-
import { IBaseComponentProps, LinkOperation, NSBox, NSButtonGreen, NSLabel, NSLoading, NSPanel, NSRow, NSSection } from "namirasoft-site-react";
|
|
3
1
|
import { EncodingOperation } from "namirasoft-core";
|
|
4
2
|
import { SubscriptionValidation } from "namirasoft-payment";
|
|
3
|
+
import { IBaseComponentProps, LinkOperation, NSBox, NSButtonGreen, NSLabel, NSLoading, NSPanel, NSRow, NSSection } from "namirasoft-site-react";
|
|
4
|
+
import { Component } from "react";
|
|
5
5
|
import { NSARouterMakerResult } from "../NSARouterMakerResult";
|
|
6
6
|
|
|
7
7
|
export interface PaymentRequiredProps extends IBaseComponentProps, NSARouterMakerResult
|
|
8
8
|
{
|
|
9
9
|
tilte: string;
|
|
10
10
|
description: string;
|
|
11
|
-
|
|
11
|
+
button: {
|
|
12
|
+
action: string;
|
|
13
|
+
}
|
|
12
14
|
payment_offer_url: string;
|
|
13
15
|
Validation: () => Promise<SubscriptionValidation>;
|
|
14
16
|
children: JSX.Element;
|
|
@@ -37,8 +39,9 @@ export class PaymentRequired extends Component<PaymentRequiredProps, PaymentRequ
|
|
|
37
39
|
{
|
|
38
40
|
if (this.state.subscribed == null)
|
|
39
41
|
{
|
|
40
|
-
|
|
41
|
-
|
|
42
|
+
return this.props.layout.getNSALayout("loading", this.props, <NSLoading
|
|
43
|
+
title="Loading Namirasoft Payment Information"
|
|
44
|
+
/>);
|
|
42
45
|
}
|
|
43
46
|
if (!this.state.subscribed)
|
|
44
47
|
{
|
|
@@ -55,7 +58,7 @@ export class PaymentRequired extends Component<PaymentRequiredProps, PaymentRequ
|
|
|
55
58
|
>
|
|
56
59
|
</NSLabel>
|
|
57
60
|
<NSButtonGreen
|
|
58
|
-
title={this.props.action}
|
|
61
|
+
title={this.props.button.action}
|
|
59
62
|
onClick={{
|
|
60
63
|
action: () =>
|
|
61
64
|
{
|
|
@@ -69,8 +72,7 @@ export class PaymentRequired extends Component<PaymentRequiredProps, PaymentRequ
|
|
|
69
72
|
</NSRow>
|
|
70
73
|
</NSPanel>
|
|
71
74
|
</NSSection>;
|
|
72
|
-
|
|
73
|
-
return cloneElement(layout, { key: "payment-required" });
|
|
75
|
+
return this.props.layout.getNSALayout("payment-required", this.props, section)
|
|
74
76
|
}
|
|
75
77
|
return this.props.children;
|
|
76
78
|
}
|