namirasoft-site-react 1.3.61 → 1.3.63
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/App.js +2 -2
- package/dist/App.js.map +1 -1
- package/dist/Validator.d.ts +7 -2
- package/dist/Validator.js +57 -15
- package/dist/Validator.js.map +1 -1
- package/dist/components/NSButton.module.css +1 -1
- package/dist/components/NSButtonBlue.js +5 -4
- package/dist/components/NSButtonBlue.js.map +1 -1
- package/dist/components/NSButtonGreen.js +5 -4
- package/dist/components/NSButtonGreen.js.map +1 -1
- package/dist/components/NSButtonRed.js +5 -4
- package/dist/components/NSButtonRed.js.map +1 -1
- package/dist/components/NSCard.module.css +2 -3
- package/dist/components/NSCopyToClipboard.js +1 -1
- package/dist/components/NSCopyToClipboard.js.map +1 -1
- package/dist/components/NSCopyToClipboard.module.css +1 -1
- package/dist/components/NSEntityBar.module.css +2 -2
- package/dist/components/NSEntityCardBackground.module.css +2 -2
- package/dist/components/NSFooter.js.map +1 -1
- package/dist/components/NSHeader.js +1 -1
- package/dist/components/NSHeader.js.map +1 -1
- package/dist/components/NSInput.module.css +29 -0
- package/dist/components/NSInputDate.d.ts +3 -1
- package/dist/components/NSInputDate.js +14 -4
- package/dist/components/NSInputDate.js.map +1 -1
- package/dist/components/NSInputDate.module.css +5 -2
- package/dist/components/NSInputDuration.d.ts +6 -1
- package/dist/components/NSInputDuration.js +15 -6
- package/dist/components/NSInputDuration.js.map +1 -1
- package/dist/components/NSInputEmail.d.ts +1 -1
- package/dist/components/NSInputEmail.js +5 -3
- package/dist/components/NSInputEmail.js.map +1 -1
- package/dist/components/NSInputFloat.d.ts +4 -4
- package/dist/components/NSInputFloat.js +8 -9
- package/dist/components/NSInputFloat.js.map +1 -1
- package/dist/components/NSInputIP.d.ts +5 -1
- package/dist/components/NSInputIP.js +17 -7
- package/dist/components/NSInputIP.js.map +1 -1
- package/dist/components/NSInputInteger.d.ts +9 -5
- package/dist/components/NSInputInteger.js +16 -8
- package/dist/components/NSInputInteger.js.map +1 -1
- package/dist/components/NSInputPassword.d.ts +5 -1
- package/dist/components/NSInputPassword.js +15 -6
- package/dist/components/NSInputPassword.js.map +1 -1
- package/dist/components/NSInputPhone.d.ts +8 -3
- package/dist/components/NSInputPhone.js +18 -12
- package/dist/components/NSInputPhone.js.map +1 -1
- package/dist/components/NSInputPrice.d.ts +7 -2
- package/dist/components/NSInputPrice.js +15 -7
- package/dist/components/NSInputPrice.js.map +1 -1
- package/dist/components/NSInputSearch.d.ts +6 -1
- package/dist/components/NSInputSearch.js +15 -6
- package/dist/components/NSInputSearch.js.map +1 -1
- package/dist/components/NSInputString.d.ts +5 -1
- package/dist/components/NSInputString.js +15 -6
- package/dist/components/NSInputString.js.map +1 -1
- package/dist/components/NSInputText.d.ts +5 -1
- package/dist/components/NSInputText.js +15 -6
- package/dist/components/NSInputText.js.map +1 -1
- package/dist/components/NSInputTime.d.ts +5 -1
- package/dist/components/NSInputTime.js +16 -6
- package/dist/components/NSInputTime.js.map +1 -1
- package/dist/components/NSLayoutTitle.d.ts +1 -4
- package/dist/components/NSLayoutTitle.js +7 -11
- package/dist/components/NSLayoutTitle.js.map +1 -1
- package/dist/components/NSLink.d.ts +5 -0
- package/dist/components/NSLink.js +7 -0
- package/dist/components/NSLink.js.map +1 -0
- package/dist/components/{NSLinkBlue.module.css → NSLink.module.css} +3 -3
- package/dist/components/NSLinkBlue.d.ts +2 -5
- package/dist/components/NSLinkBlue.js +2 -3
- package/dist/components/NSLinkBlue.js.map +1 -1
- package/dist/components/NSLinkGreen.d.ts +2 -16
- package/dist/components/NSLinkGreen.js +3 -18
- package/dist/components/NSLinkGreen.js.map +1 -1
- package/dist/components/NSLinkRed.d.ts +2 -16
- package/dist/components/NSLinkRed.js +3 -18
- package/dist/components/NSLinkRed.js.map +1 -1
- package/dist/components/NSNotification.d.ts +2 -10
- package/dist/components/NSNotification.js +4 -20
- package/dist/components/NSNotification.js.map +1 -1
- package/dist/components/NSPagination.d.ts +1 -9
- package/dist/components/NSPagination.js +25 -33
- package/dist/components/NSPagination.js.map +1 -1
- package/dist/components/NSSectionBars.d.ts +1 -0
- package/dist/components/NSSectionBars.js.map +1 -1
- package/dist/components/NSSectionCards.d.ts +1 -2
- package/dist/components/NSSectionCards.js +1 -1
- package/dist/components/NSSectionCards.js.map +1 -1
- package/dist/components/NSSectionTitle.d.ts +1 -2
- package/dist/components/NSSectionTitle.js +1 -1
- package/dist/components/NSSectionTitle.js.map +1 -1
- package/dist/components/NSSelectBox.d.ts +6 -3
- package/dist/components/NSSelectBox.js +21 -6
- package/dist/components/NSSelectBox.js.map +1 -1
- package/dist/components/NSSelectBox.module.css +3 -3
- package/dist/components/NSTable.js +1 -1
- package/dist/components/NSTable.js.map +1 -1
- package/dist/pages/NSLoginPage.d.ts +1 -4
- package/dist/pages/NSLoginPage.js +8 -11
- package/dist/pages/NSLoginPage.js.map +1 -1
- package/dist/pages/NSNotFoundPage.d.ts +1 -4
- package/dist/pages/NSNotFoundPage.js +2 -6
- package/dist/pages/NSNotFoundPage.js.map +1 -1
- package/dist/props/ValidationNumberProps.d.ts +1 -2
- package/dist/props/ValidationProps.d.ts +1 -0
- package/dist/props/ValidationStringProps.d.ts +1 -2
- package/package.json +4 -4
- package/src/App.tsx +13 -3
- package/src/Validator.ts +67 -18
- package/src/components/NSButton.module.css +1 -1
- package/src/components/NSButtonBlue.tsx +6 -4
- package/src/components/NSButtonGreen.tsx +5 -4
- package/src/components/NSButtonRed.tsx +5 -4
- package/src/components/NSCard.module.css +2 -3
- package/src/components/NSCopyToClipboard.module.css +1 -1
- package/src/components/NSCopyToClipboard.tsx +3 -3
- package/src/components/NSEntityBar.module.css +2 -2
- package/src/components/NSEntityCardBackground.module.css +2 -2
- package/src/components/NSHeader.tsx +3 -3
- package/src/components/NSInput.module.css +29 -0
- package/src/components/NSInputDate.module.css +5 -2
- package/src/components/NSInputDate.tsx +29 -12
- package/src/components/NSInputDuration.tsx +44 -23
- package/src/components/NSInputEmail.tsx +10 -5
- package/src/components/NSInputFloat.tsx +33 -32
- package/src/components/NSInputIP.tsx +44 -24
- package/src/components/NSInputInteger.tsx +48 -31
- package/src/components/NSInputPassword.tsx +42 -23
- package/src/components/NSInputPhone.tsx +45 -29
- package/src/components/NSInputPrice.tsx +45 -23
- package/src/components/NSInputSearch.tsx +43 -21
- package/src/components/NSInputString.tsx +42 -23
- package/src/components/NSInputText.tsx +42 -23
- package/src/components/NSInputTime.tsx +44 -23
- package/src/components/NSLayoutTitle.tsx +24 -30
- package/src/components/{NSLinkBlue.module.css → NSLink.module.css} +3 -3
- package/src/components/NSLink.tsx +22 -0
- package/src/components/NSLinkBlue.tsx +3 -19
- package/src/components/NSLinkGreen.tsx +3 -42
- package/src/components/NSLinkRed.tsx +3 -42
- package/src/components/NSNotification.tsx +19 -51
- package/src/components/NSPagination.tsx +56 -72
- package/src/components/NSSectionBars.tsx +1 -0
- package/src/components/NSSectionCards.tsx +3 -3
- package/src/components/NSSectionTitle.tsx +3 -3
- package/src/components/NSSelectBox.module.css +3 -3
- package/src/components/NSSelectBox.tsx +48 -23
- package/src/components/NSTable.tsx +1 -1
- package/src/pages/NSLoginPage.tsx +20 -24
- package/src/pages/NSNotFoundPage.tsx +7 -13
- package/src/props/ValidationNumberProps.ts +1 -3
- package/src/props/ValidationProps.ts +1 -0
- package/src/props/ValidationStringProps.ts +1 -3
- package/dist/components/NSInputDuration.module.css +0 -26
- package/dist/components/NSInputEmail.module.css +0 -38
- package/dist/components/NSInputFloat.module.css +0 -26
- package/dist/components/NSInputIP.module.css +0 -26
- package/dist/components/NSInputInteger.module.css +0 -26
- package/dist/components/NSInputPassword.module.css +0 -27
- package/dist/components/NSInputPhone.module.css +0 -33
- package/dist/components/NSInputPrice.module.css +0 -27
- package/dist/components/NSInputSearch.module.css +0 -27
- package/dist/components/NSInputString.module.css +0 -27
- package/dist/components/NSInputText.module.css +0 -28
- package/dist/components/NSInputTime.module.css +0 -27
- package/dist/components/NSLinkGreen.module.css +0 -16
- package/dist/components/NSLinkRed.module.css +0 -16
- package/src/components/NSInputDuration.module.css +0 -26
- package/src/components/NSInputEmail.module.css +0 -38
- package/src/components/NSInputFloat.module.css +0 -26
- package/src/components/NSInputIP.module.css +0 -26
- package/src/components/NSInputInteger.module.css +0 -26
- package/src/components/NSInputPassword.module.css +0 -27
- package/src/components/NSInputPhone.module.css +0 -33
- package/src/components/NSInputPrice.module.css +0 -27
- package/src/components/NSInputSearch.module.css +0 -27
- package/src/components/NSInputString.module.css +0 -27
- package/src/components/NSInputText.module.css +0 -28
- package/src/components/NSInputTime.module.css +0 -27
- package/src/components/NSLinkGreen.module.css +0 -16
- package/src/components/NSLinkRed.module.css +0 -16
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
import { BaseComponentProps } from '../props/BaseComponentProps';
|
|
2
|
-
import { Component } from 'react';
|
|
3
2
|
export interface NSPaginationProps extends BaseComponentProps {
|
|
4
3
|
size: number;
|
|
5
4
|
page: number;
|
|
6
5
|
}
|
|
7
|
-
export
|
|
8
|
-
size: number;
|
|
9
|
-
page: number;
|
|
10
|
-
}
|
|
11
|
-
export declare class NSPagination extends Component<NSPaginationProps, NSPaginationState> {
|
|
12
|
-
constructor(props: NSPaginationProps);
|
|
13
|
-
render(): import("react/jsx-runtime").JSX.Element;
|
|
14
|
-
}
|
|
6
|
+
export declare function NSPagination(props: NSPaginationProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,37 +1,29 @@
|
|
|
1
|
-
"use client";
|
|
2
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
2
|
import Styles from './NSPagination.module.css';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
pushPage(i);
|
|
30
|
-
if (page <= size - window * 2)
|
|
31
|
-
arr.push(_jsx("div", { children: _jsx("a", { href: '#', className: `${Styles.ns_paginate_link}`, children: "..." }) }));
|
|
32
|
-
pushPage(size);
|
|
33
|
-
arr.push(_jsx("div", { children: _jsx("a", { href: '#', children: _jsx("img", { src: 'https://static.namirasoft.com/icons/base/circle-chevron-right.png', width: 32, height: 32, alt: 'right_vector' }) }) }));
|
|
34
|
-
return (_jsx("div", { id: this.props.id, className: `${Styles.ns_pagination_container} ${(_a = this.props.classList) === null || _a === void 0 ? void 0 : _a.join(" ")}`, style: this.props.style, children: arr.map(x => (x)) }));
|
|
35
|
-
}
|
|
3
|
+
export function NSPagination(props) {
|
|
4
|
+
var _a;
|
|
5
|
+
let page = props.page;
|
|
6
|
+
let size = props.size;
|
|
7
|
+
let window = 2;
|
|
8
|
+
let min = Math.max(2, page - window);
|
|
9
|
+
let max = Math.min(page + window, size - 1);
|
|
10
|
+
let arr = [];
|
|
11
|
+
let pushPage = (index) => {
|
|
12
|
+
if (index == page)
|
|
13
|
+
arr.push(_jsx("div", { className: `${Styles.ns_select_number_parent}`, children: _jsx("a", { href: '#', className: `${Styles.ns_paginate_link} ${Styles.ns_select_number}`, children: index }) }));
|
|
14
|
+
else
|
|
15
|
+
arr.push(_jsx("div", { children: _jsx("a", { href: '#', className: `${Styles.ns_paginate_link}`, children: index }) }));
|
|
16
|
+
};
|
|
17
|
+
arr.push(_jsx("div", { children: _jsx("a", { href: '#', children: _jsx("img", { src: 'https://static.namirasoft.com/icons/base/circle-chevron-left.png', alt: 'left_vector', width: 32, height: 32 }) }) }));
|
|
18
|
+
pushPage(1);
|
|
19
|
+
if (page > window * 2)
|
|
20
|
+
arr.push(_jsx("div", { children: _jsx("a", { href: '#', className: `${Styles.ns_paginate_link}`, children: "..." }) }));
|
|
21
|
+
for (let i = min; i <= max; i++)
|
|
22
|
+
pushPage(i);
|
|
23
|
+
if (page <= size - window * 2)
|
|
24
|
+
arr.push(_jsx("div", { children: _jsx("a", { href: '#', className: `${Styles.ns_paginate_link}`, children: "..." }) }));
|
|
25
|
+
pushPage(size);
|
|
26
|
+
arr.push(_jsx("div", { children: _jsx("a", { href: '#', children: _jsx("img", { src: 'https://static.namirasoft.com/icons/base/circle-chevron-right.png', width: 32, height: 32, alt: 'right_vector' }) }) }));
|
|
27
|
+
return (_jsx("div", { id: props.id, className: `${Styles.ns_pagination_container} ${(_a = props.classList) === null || _a === void 0 ? void 0 : _a.join(" ")}`, style: props.style, children: arr.map(x => (x)) }));
|
|
36
28
|
}
|
|
37
29
|
//# sourceMappingURL=NSPagination.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSPagination.js","sourceRoot":"","sources":["../../src/components/NSPagination.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"NSPagination.js","sourceRoot":"","sources":["../../src/components/NSPagination.tsx"],"names":[],"mappings":";AACA,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAQ/C,MAAM,UAAU,YAAY,CAAC,KAAwB;;IAEjD,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IACtB,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IACtB,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC,CAAC;IACrC,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,MAAM,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;IAC5C,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;QAE7B,IAAI,KAAK,IAAI,IAAI;YACb,GAAG,CAAC,IAAI,CACJ,cAAK,SAAS,EAAE,GAAG,MAAM,CAAC,uBAAuB,EAAE,YAC/C,YAAG,IAAI,EAAC,GAAG,EAAC,SAAS,EAAE,GAAG,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,gBAAgB,EAAE,YAAG,KAAK,GAAK,GACzF,CACT,CAAC;;YAEF,GAAG,CAAC,IAAI,CACJ,wBACI,YAAG,IAAI,EAAC,GAAG,EAAC,SAAS,EAAE,GAAG,MAAM,CAAC,gBAAgB,EAAE,YAAG,KAAK,GAAK,GAC9D,CACT,CAAC;IACV,CAAC,CAAC;IACF,GAAG,CAAC,IAAI,CACJ,wBACI,YAAG,IAAI,EAAC,GAAG,YACP,cACI,GAAG,EAAC,kEAAkE,EACtE,GAAG,EAAC,aAAa,EACjB,KAAK,EAAE,EAAE,EACT,MAAM,EAAE,EAAE,GACZ,GACF,GACF,CACT,CAAC;IACF,QAAQ,CAAC,CAAC,CAAC,CAAC;IACZ,IAAI,IAAI,GAAG,MAAM,GAAG,CAAC;QACjB,GAAG,CAAC,IAAI,CACJ,wBACI,YAAG,IAAI,EAAC,GAAG,EAAC,SAAS,EAAE,GAAG,MAAM,CAAC,gBAAgB,EAAE,oBAAS,GAC1D,CACT,CAAC;IACN,KAAK,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE;QAC3B,QAAQ,CAAC,CAAC,CAAC,CAAC;IAChB,IAAI,IAAI,IAAI,IAAI,GAAG,MAAM,GAAG,CAAC;QACzB,GAAG,CAAC,IAAI,CACJ,wBACI,YAAG,IAAI,EAAC,GAAG,EAAC,SAAS,EAAE,GAAG,MAAM,CAAC,gBAAgB,EAAE,oBAAS,GAC1D,CACT,CAAC;IACN,QAAQ,CAAC,IAAI,CAAC,CAAC;IACf,GAAG,CAAC,IAAI,CACJ,wBACI,YAAG,IAAI,EAAC,GAAG,YACP,cACI,GAAG,EAAC,mEAAmE,EACvE,KAAK,EAAE,EAAE,EACT,MAAM,EAAE,EAAE,EACV,GAAG,EAAC,cAAc,GACpB,GACF,GACF,CACT,CAAC;IAEF,OAAO,CACH,cAAK,EAAE,EAAE,KAAK,CAAC,EAAE,EACb,SAAS,EAAE,GAAG,MAAM,CAAC,uBAAuB,IAAI,MAAA,KAAK,CAAC,SAAS,0CAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAC5E,KAAK,EAAE,KAAK,CAAC,KAAK,YACjB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAChB,CACT,CAAC;AACN,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { NSEntityBarProps } from './NSEntityBar';
|
|
2
2
|
import { BaseComponentProps } from "../props/BaseComponentProps";
|
|
3
3
|
export interface NSSectionBarsProps extends BaseComponentProps {
|
|
4
|
+
title?: string;
|
|
4
5
|
bars: NSEntityBarProps[];
|
|
5
6
|
}
|
|
6
7
|
export declare function NSSectionBars(props: NSSectionBarsProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSSectionBars.js","sourceRoot":"","sources":["../../src/components/NSSectionBars.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAChD,OAAO,EAAE,WAAW,EAAoB,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"NSSectionBars.js","sourceRoot":"","sources":["../../src/components/NSSectionBars.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAChD,OAAO,EAAE,WAAW,EAAoB,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AASrD,MAAM,UAAU,aAAa,CAAC,KAAyB;;IAEtD,OAAO,CACN,MAAC,SAAS,oBAAK,KAAK,eACnB,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,MAAM,GAAI,EACzC,cAAK,SAAS,EAAE,mCAAmC,MAAM,CAAC,uBAAuB,EAAE,YAEjF,MAAA,KAAK,CAAC,IAAI,0CAAE,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAC,WAAW,oBAAkB,GAAG,GAAf,GAAG,CAAC,EAAE,CAAa,CAAC,GAE3D,EACN,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,MAAM,GAAI,KAC9B,CACZ,CAAC;AACH,CAAC"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { NSTitleProps } from './NSTitle';
|
|
2
1
|
import { NSCardProps } from './NSCard';
|
|
3
2
|
import { BaseComponentProps } from "../props/BaseComponentProps";
|
|
4
3
|
import { LinkProps } from '../props/LinkProps';
|
|
5
4
|
export interface NSSectionCardsProps extends BaseComponentProps {
|
|
6
|
-
title?:
|
|
5
|
+
title?: string;
|
|
7
6
|
description?: {
|
|
8
7
|
text: string;
|
|
9
8
|
color?: string;
|
|
@@ -8,7 +8,7 @@ import { NSSpace, NSSpaceSizeType } from './NSSpace';
|
|
|
8
8
|
export function NSSectionCards(props) {
|
|
9
9
|
var _a, _b;
|
|
10
10
|
return (_jsxs(NSSection, Object.assign({}, props, { children: [_jsx(NSSpace, { size: NSSpaceSizeType.NORMAL }), _jsxs("div", { className: `container mx-auto px-4 lg:px-12 ${Styles.ns_section_cards_holder}`, children: [props.title &&
|
|
11
|
-
_jsxs("div", { className: Styles.ns_section_cards_title_container, children: [_jsx(NSTitle,
|
|
11
|
+
_jsxs("div", { className: Styles.ns_section_cards_title_container, children: [_jsx(NSTitle, { title: props.title }), props.description &&
|
|
12
12
|
_jsxs("p", { style: { color: (_a = props.description) === null || _a === void 0 ? void 0 : _a.color }, className: Styles.ns_description, children: [" ", props.description.text, " "] })] }), _jsx("div", { className: ` ${Styles.ns_card_container}`, children: (_b = props.cards) === null || _b === void 0 ? void 0 : _b.map((card) => _jsx(NSCard, Object.assign({}, card), card.id)) }), props.button &&
|
|
13
13
|
_jsx("div", { className: `mt-12 w-full- text-center ${Styles.ns_section_cards_link_container}`, children: _jsx(NSLinkBlue, Object.assign({}, props.button)) })] }), _jsx(NSSpace, { size: NSSpaceSizeType.NORMAL })] })));
|
|
14
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSSectionCards.js","sourceRoot":"","sources":["../../src/components/NSSectionCards.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,6BAA6B,CAAC;AACjD,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"NSSectionCards.js","sourceRoot":"","sources":["../../src/components/NSSectionCards.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,6BAA6B,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,EAAe,MAAM,UAAU,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAerD,MAAM,UAAU,cAAc,CAAC,KAA0B;;IAExD,OAAO,CACN,MAAC,SAAS,oBAAK,KAAK,eACnB,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,MAAM,GAAI,EACzC,eAAK,SAAS,EAAE,mCAAmC,MAAM,CAAC,uBAAuB,EAAE,aAEjF,KAAK,CAAC,KAAK;wBACX,eAAK,SAAS,EAAE,MAAM,CAAC,gCAAgC,aACtD,KAAC,OAAO,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,GAAI,EAE9B,KAAK,CAAC,WAAW;oCACjB,aAAG,KAAK,EAAE,EAAE,KAAK,EAAE,MAAA,KAAK,CAAC,WAAW,0CAAE,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,cAAc,kBAAI,KAAK,CAAC,WAAW,CAAC,IAAI,SAAM,IAE3G,EAEP,cAAK,SAAS,EAAE,IAAI,MAAM,CAAC,iBAAiB,EAAE,YAE5C,MAAA,KAAK,CAAC,KAAK,0CAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAC,MAAM,oBAAmB,IAAI,GAAjB,IAAI,CAAC,EAAE,CAAc,CAAC,GAE1D,EAEL,KAAK,CAAC,MAAM;wBACZ,cAAK,SAAS,EAAE,6BAA6B,MAAM,CAAC,+BAA+B,EAAE,YACpF,KAAC,UAAU,oBAAK,KAAK,CAAC,MAAM,EAAI,GAC3B,IAEF,EACN,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,MAAM,GAAI,KAC9B,CACZ,CAAC;AACH,CAAC"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
|
-
import { NSTitleProps } from './NSTitle';
|
|
3
2
|
import { BaseComponentProps } from "../props/BaseComponentProps";
|
|
4
3
|
export interface NSSectionTitleProps extends BaseComponentProps {
|
|
5
|
-
title:
|
|
4
|
+
title: string;
|
|
6
5
|
children: ReactNode;
|
|
7
6
|
}
|
|
8
7
|
export declare function NSSectionTitle(props: NSSectionTitleProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -3,6 +3,6 @@ import { NSSection } from './NSSection';
|
|
|
3
3
|
import { NSTitle } from './NSTitle';
|
|
4
4
|
import { NSSpace, NSSpaceSizeType } from './NSSpace';
|
|
5
5
|
export function NSSectionTitle(props) {
|
|
6
|
-
return (_jsxs(NSSection, Object.assign({}, props, { children: [_jsx(NSSpace, { size: NSSpaceSizeType.NORMAL }), _jsx(NSTitle,
|
|
6
|
+
return (_jsxs(NSSection, Object.assign({}, props, { children: [_jsx(NSSpace, { size: NSSpaceSizeType.NORMAL }), _jsx(NSTitle, { title: props.title }), props.children] })));
|
|
7
7
|
}
|
|
8
8
|
//# sourceMappingURL=NSSectionTitle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSSectionTitle.js","sourceRoot":"","sources":["../../src/components/NSSectionTitle.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"NSSectionTitle.js","sourceRoot":"","sources":["../../src/components/NSSectionTitle.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AASrD,MAAM,UAAU,cAAc,CAAC,KAA0B;IAExD,OAAO,CACN,MAAC,SAAS,oBAAK,KAAK,eACnB,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,MAAM,GAAI,EACzC,KAAC,OAAO,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,GAAI,EAC9B,KAAK,CAAC,QAAQ,KACJ,CACZ,CAAC;AACH,CAAC"}
|
|
@@ -1,19 +1,22 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import type { SelectProps } from 'antd';
|
|
3
3
|
import { BaseComponentProps } from "../props/BaseComponentProps";
|
|
4
|
-
|
|
4
|
+
import { ValidationProps } from "../props/ValidationProps";
|
|
5
|
+
export interface NSSelectBoxProps extends BaseComponentProps, ValidationProps {
|
|
5
6
|
title: string;
|
|
6
7
|
options: SelectProps['options'];
|
|
7
8
|
}
|
|
8
9
|
export interface NSSelectBoxState {
|
|
9
10
|
value: string | null;
|
|
10
11
|
values: string[];
|
|
12
|
+
error?: string;
|
|
11
13
|
}
|
|
12
14
|
export declare class NSSelectBox extends React.Component<NSSelectBoxProps, NSSelectBoxState> {
|
|
13
15
|
constructor(props: NSSelectBoxProps);
|
|
14
|
-
|
|
16
|
+
getError(): string | null;
|
|
15
17
|
getValue(): string | null;
|
|
16
|
-
|
|
18
|
+
setValue(value: string | null): void;
|
|
17
19
|
getValues(): string[];
|
|
20
|
+
setValues(values: string[]): void;
|
|
18
21
|
render(): import("react/jsx-runtime").JSX.Element;
|
|
19
22
|
}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
3
|
import React from "react";
|
|
4
4
|
import Styles from "./NSSelectBox.module.css";
|
|
5
5
|
import { Select, Space } from 'antd';
|
|
6
6
|
import IconSelectBox from '../assets/images/icon-select-box.svg';
|
|
7
|
+
import { Validator } from "../Validator";
|
|
8
|
+
import { NSInputErrorNotifier } from "./NSInputErrorNotifier";
|
|
7
9
|
export class NSSelectBox extends React.Component {
|
|
8
10
|
constructor(props) {
|
|
9
11
|
super(props);
|
|
@@ -14,20 +16,33 @@ export class NSSelectBox extends React.Component {
|
|
|
14
16
|
this.getValues = this.getValues.bind(this);
|
|
15
17
|
this.setValues = this.setValues.bind(this);
|
|
16
18
|
}
|
|
17
|
-
|
|
18
|
-
this.
|
|
19
|
+
getError() {
|
|
20
|
+
return (Validator.getError(this.props.title, this.state.value, this.props));
|
|
19
21
|
}
|
|
20
22
|
getValue() {
|
|
23
|
+
let error = this.getError();
|
|
24
|
+
if (error) {
|
|
25
|
+
this.setState({ error });
|
|
26
|
+
throw new Error(error);
|
|
27
|
+
}
|
|
21
28
|
return this.state.value;
|
|
22
29
|
}
|
|
23
|
-
|
|
24
|
-
this.setState({
|
|
30
|
+
setValue(value) {
|
|
31
|
+
this.setState({ value });
|
|
25
32
|
}
|
|
26
33
|
getValues() {
|
|
34
|
+
let error = this.getError();
|
|
35
|
+
if (error) {
|
|
36
|
+
this.setState({ error });
|
|
37
|
+
throw new Error(error);
|
|
38
|
+
}
|
|
27
39
|
return this.state.values;
|
|
28
40
|
}
|
|
41
|
+
setValues(values) {
|
|
42
|
+
this.setState({ values });
|
|
43
|
+
}
|
|
29
44
|
render() {
|
|
30
|
-
return (_jsxs("div", { className: `${Styles.ns_input_parent} p-2`, children: [
|
|
45
|
+
return (_jsxs(_Fragment, { children: [_jsxs("div", { className: `${Styles.ns_input_parent} p-2`, children: [_jsxs("span", { className: Styles.ns_input_title, children: [" ", this.props.required && _jsx("span", { style: { color: "red" }, children: "*" }), " ", this.props.title, " "] }), _jsx(Select, { mode: "multiple", style: { width: '100%' }, className: Styles.ns_input_select, placeholder: "Combo Box", onChange: this.setValues, optionLabelProp: "label", options: this.props.options, optionRender: (option) => (_jsx(Space, { className: Styles.ns_input_select_option, children: option.data.desc })), suffixIcon: _jsx("img", { src: IconSelectBox, alt: "SelectBox Icon" }) })] }), _jsx(NSInputErrorNotifier, { error: this.state.error })] }));
|
|
31
46
|
}
|
|
32
47
|
}
|
|
33
48
|
//# sourceMappingURL=NSSelectBox.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSSelectBox.js","sourceRoot":"","sources":["../../src/components/NSSelectBox.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,MAAM,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAErC,OAAO,aAAa,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"NSSelectBox.js","sourceRoot":"","sources":["../../src/components/NSSelectBox.tsx"],"names":[],"mappings":"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"}
|
|
@@ -30,7 +30,7 @@ export class NSTable extends Component {
|
|
|
30
30
|
return this.props.getCell(row, column, rowIndex, columnIndex);
|
|
31
31
|
return row[column];
|
|
32
32
|
};
|
|
33
|
-
return (_jsxs("div", { id: this.props.id, className: `container ${Styles.ns_project_list_container} ${(_a = this.props.classList) === null || _a === void 0 ? void 0 : _a.join(" ")}`, style: this.props.style, children: [_jsx("section", { className: Styles.ns_search_input, children: _jsx(NSInputSearch, {}) }), _jsx(NSSpace, { size: NSSpaceSizeType.SMALL }), _jsxs("table", { className: Styles.ns_table, children: [_jsx("thead", { className: Styles.ns_thead, children: _jsx("tr", { children: column_keys.map(column_key => _jsx("th", { scope: "col", children: this.state.columns[column_key] }, column_key)) }) }), _jsx("tbody", { className: Styles.ns_tbody, children: this.state.rows.map((row, rowIndex) => _jsx("tr", { onClick: () => this.setState({ modalState: !this.state.modalState }), children: column_keys.map((column, columnIndex) => (_jsx("td", Object.assign({}, getColumnAttributes(column, columnIndex), { "data-label": `${this.state.columns[column]} : `, children: getCell(row, column, rowIndex, columnIndex) })))) }, this.props.getRowKey(row, rowIndex))) })] }), _jsx(NSSpace, { size: NSSpaceSizeType.MICRO }), _jsxs("section", { className: Styles.ns_pagination_button, children: [_jsx(NSPagination, { size: 50, page: 5 }), _jsx(NSSpace, { size: NSSpaceSizeType.SMALL }), _jsxs("div", { className: Styles.ns_button, children: [_jsx(NSButton, { title: 'Export', icon: { src: "/assets/images/export-vector.png" }, onClick: () => { }, style: { border: '1px solid rgba(255, 148, 50, 1)' } }), _jsx(NSButton, { title: 'Refresh', icon: { src: "/assets/images/export-vector.png" }, onClick: () => { }, style: { border: '1px solid rgba(3, 119, 255, 1)' } })] })] }), _jsx(NSSpace, { size: NSSpaceSizeType.SMALL }), _jsxs("section", { onClick: () => this.setState({ modalState: !this.state.modalState }), className: Styles.ns_modal, style: { display: this.state.modalState ? "block" : "none" }, children: [_jsx("a", { children: _jsx("img", { src: '/assets/images/close-vector.png' }) }), _jsx("p", { children: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Curabitur vitae diam non enim vestibulum interdum. Duis condimentum augue id magna semper rutrum. Nullam sit amet magna in magna gravida vehicula. Vestibulum erat nulla, ullamcorper nec, rutrum non, nonummy ac, erat. In laoreet, magna id viverra tincidunt, sem odio bibendum justo, vel imperdiet sapien wisi sed libero. Phasellus enim erat, vestibulum vel, aliquam a, posuere eu, velit. Morbi imperdiet, mauris ac auctor dictum, nisl ligula egestas nulla, et sollicitudin sem purus in lacus. Mauris dictum facilisis augue. Phasellus faucibus molestie nisl. Aliquam ante. Nulla accumsan, elit sit amet varius semper, nulla mauris mollis quam, tempor suscipit diam nulla vel leo. In convallis. Phasellus rhoncus.." })] })] }));
|
|
33
|
+
return (_jsxs("div", { id: this.props.id, className: `container ${Styles.ns_project_list_container} ${(_a = this.props.classList) === null || _a === void 0 ? void 0 : _a.join(" ")}`, style: this.props.style, children: [_jsx("section", { className: Styles.ns_search_input, children: _jsx(NSInputSearch, { title: '', required: false }) }), _jsx(NSSpace, { size: NSSpaceSizeType.SMALL }), _jsxs("table", { className: Styles.ns_table, children: [_jsx("thead", { className: Styles.ns_thead, children: _jsx("tr", { children: column_keys.map(column_key => _jsx("th", { scope: "col", children: this.state.columns[column_key] }, column_key)) }) }), _jsx("tbody", { className: Styles.ns_tbody, children: this.state.rows.map((row, rowIndex) => _jsx("tr", { onClick: () => this.setState({ modalState: !this.state.modalState }), children: column_keys.map((column, columnIndex) => (_jsx("td", Object.assign({}, getColumnAttributes(column, columnIndex), { "data-label": `${this.state.columns[column]} : `, children: getCell(row, column, rowIndex, columnIndex) })))) }, this.props.getRowKey(row, rowIndex))) })] }), _jsx(NSSpace, { size: NSSpaceSizeType.MICRO }), _jsxs("section", { className: Styles.ns_pagination_button, children: [_jsx(NSPagination, { size: 50, page: 5 }), _jsx(NSSpace, { size: NSSpaceSizeType.SMALL }), _jsxs("div", { className: Styles.ns_button, children: [_jsx(NSButton, { title: 'Export', icon: { src: "/assets/images/export-vector.png" }, onClick: () => { }, style: { border: '1px solid rgba(255, 148, 50, 1)' } }), _jsx(NSButton, { title: 'Refresh', icon: { src: "/assets/images/export-vector.png" }, onClick: () => { }, style: { border: '1px solid rgba(3, 119, 255, 1)' } })] })] }), _jsx(NSSpace, { size: NSSpaceSizeType.SMALL }), _jsxs("section", { onClick: () => this.setState({ modalState: !this.state.modalState }), className: Styles.ns_modal, style: { display: this.state.modalState ? "block" : "none" }, children: [_jsx("a", { children: _jsx("img", { src: '/assets/images/close-vector.png' }) }), _jsx("p", { children: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Curabitur vitae diam non enim vestibulum interdum. Duis condimentum augue id magna semper rutrum. Nullam sit amet magna in magna gravida vehicula. Vestibulum erat nulla, ullamcorper nec, rutrum non, nonummy ac, erat. In laoreet, magna id viverra tincidunt, sem odio bibendum justo, vel imperdiet sapien wisi sed libero. Phasellus enim erat, vestibulum vel, aliquam a, posuere eu, velit. Morbi imperdiet, mauris ac auctor dictum, nisl ligula egestas nulla, et sollicitudin sem purus in lacus. Mauris dictum facilisis augue. Phasellus faucibus molestie nisl. Aliquam ante. Nulla accumsan, elit sit amet varius semper, nulla mauris mollis quam, tempor suscipit diam nulla vel leo. In convallis. Phasellus rhoncus.." })] })] }));
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
//# sourceMappingURL=NSTable.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSTable.js","sourceRoot":"","sources":["../../src/components/NSTable.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAmBlC,MAAM,OAAO,OAAiB,SAAQ,SAAuD;IAEzF,YAAY,KAA4B;QAEpC,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,KAAK,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACjF,CAAC;IACD,UAAU,CAAC,OAAkC;QAEzC,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,CAAC,IAAe;QAEnB,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5B,CAAC;IACQ,MAAM;;QAEX,IAAI,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,mBAAmB,GAAG,CAAC,MAAc,EAAE,WAAmB,EAAE,EAAE;YAE9D,IAAI,IAAI,CAAC,KAAK,CAAC,mBAAmB;gBAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAC/D,OAAO,EAAE,CAAC;QACd,CAAC,CAAA;QACD,IAAI,OAAO,GAAG,CAAC,GAAY,EAAE,MAAc,EAAE,QAAgB,EAAE,WAAmB,EAAE,EAAE;YAElF,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO;gBAClB,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;YAClE,OAAQ,GAAW,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC,CAAA;QACD,OAAO,CACH,eAAK,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAClB,SAAS,EAAE,aAAa,MAAM,CAAC,yBAAyB,IAAI,MAAA,IAAI,CAAC,KAAK,CAAC,SAAS,0CAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAC7F,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,aACvB,kBAAS,SAAS,EAAE,MAAM,CAAC,eAAe,YACtC,KAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"NSTable.js","sourceRoot":"","sources":["../../src/components/NSTable.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { Component } from 'react';
|
|
2
1
|
export interface NSLoginPageProps {
|
|
3
2
|
title: string;
|
|
4
3
|
logo: string;
|
|
@@ -6,6 +5,4 @@ export interface NSLoginPageProps {
|
|
|
6
5
|
href?: string;
|
|
7
6
|
onClick?: () => void;
|
|
8
7
|
}
|
|
9
|
-
export declare
|
|
10
|
-
render(): import("react/jsx-runtime").JSX.Element;
|
|
11
|
-
}
|
|
8
|
+
export declare function NSLoginPage(props: NSLoginPageProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,18 +1,15 @@
|
|
|
1
1
|
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Component } from 'react';
|
|
3
2
|
import Styles from './NSLoginPage.module.css';
|
|
4
3
|
import { NSButtonGreen } from '../components/NSButtonGreen';
|
|
5
4
|
import { NSLinkBlue } from '../components/NSLinkBlue';
|
|
6
5
|
import { NSSpace, NSSpaceSizeType } from '../components/NSSpace';
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
return (_jsx("div", { style: { backgroundImage: this.props.background, width: "100%", backgroundSize: "cover" }, children: _jsxs("div", { className: `${Styles.ns_login_container}`, style: { marginTop: "100px" }, children: [_jsx("div", { className: `${Styles.ns_logo}`, children: _jsx("img", { width: 256, height: 256, src: this.props.logo, alt: `${this.props.title} Logo` }) }), _jsx(NSSpace, { size: NSSpaceSizeType.SMALL }), _jsx("div", { children: _jsx("h1", { className: `${Styles.ns_title}`, children: this.props.title }) }), _jsx(NSSpace, { size: NSSpaceSizeType.SMALL }), _jsx("div", { className: `${Styles.ns_button}`, children: button })] }) }));
|
|
16
|
-
}
|
|
6
|
+
export function NSLoginPage(props) {
|
|
7
|
+
var _a;
|
|
8
|
+
let button = _jsx(_Fragment, {});
|
|
9
|
+
if (props.href)
|
|
10
|
+
button = _jsx(NSLinkBlue, { title: "Login", href: (_a = props.href) !== null && _a !== void 0 ? _a : "" });
|
|
11
|
+
else if (props.onClick)
|
|
12
|
+
button = _jsx(NSButtonGreen, { title: "Login", onClick: props.onClick });
|
|
13
|
+
return (_jsx("div", { style: { backgroundImage: props.background, width: "100%", backgroundSize: "cover" }, children: _jsxs("div", { className: `${Styles.ns_login_container}`, style: { marginTop: "100px" }, children: [_jsx("div", { className: `${Styles.ns_logo}`, children: _jsx("img", { width: 256, height: 256, src: props.logo, alt: `${props.title} Logo` }) }), _jsx(NSSpace, { size: NSSpaceSizeType.SMALL }), _jsx("div", { children: _jsx("h1", { className: `${Styles.ns_title}`, children: props.title }) }), _jsx(NSSpace, { size: NSSpaceSizeType.SMALL }), _jsx("div", { className: `${Styles.ns_button}`, children: button })] }) }));
|
|
17
14
|
}
|
|
18
15
|
//# sourceMappingURL=NSLoginPage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSLoginPage.js","sourceRoot":"","sources":["../../src/pages/NSLoginPage.tsx"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"NSLoginPage.js","sourceRoot":"","sources":["../../src/pages/NSLoginPage.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,0BAA0B,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAWjE,MAAM,UAAU,WAAW,CAAC,KAAuB;;IAE/C,IAAI,MAAM,GAAG,mBAAK,CAAC;IACnB,IAAI,KAAK,CAAC,IAAI;QACV,MAAM,GAAG,KAAC,UAAU,IAAC,KAAK,EAAC,OAAO,EAAC,IAAI,EAAE,MAAA,KAAK,CAAC,IAAI,mCAAI,EAAE,GAAI,CAAC;SAC7D,IAAI,KAAK,CAAC,OAAO;QAClB,MAAM,GAAG,KAAC,aAAa,IAAC,KAAK,EAAC,OAAO,EAAC,OAAO,EAAE,KAAK,CAAC,OAAO,GAAI,CAAC;IACrE,OAAO,CACH,cAAK,KAAK,EAAE,EAAE,eAAe,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,YACrF,eAAK,SAAS,EAAE,GAAG,MAAM,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,aACzE,cAAK,SAAS,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,YAC/B,cAAK,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,KAAK,OAAO,GAAQ,GAC/E,EACN,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,KAAK,GAAI,EACxC,wBAAK,aAAI,SAAS,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,YAAG,KAAK,CAAC,KAAK,GAAM,GAAM,EAClE,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,KAAK,GAAI,EACxC,cAAK,SAAS,EAAE,GAAG,MAAM,CAAC,SAAS,EAAE,YAChC,MAAM,GACL,IACJ,GACH,CACV,CAAC;AACN,CAAC"}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
"use client";
|
|
2
1
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { Component } from 'react';
|
|
4
2
|
import Styles from './NSNotFoundPage.module.css';
|
|
5
3
|
import { NSLinkBlue } from '../main';
|
|
6
|
-
export
|
|
7
|
-
|
|
8
|
-
return (_jsxs(_Fragment, { children: [_jsx("div", { className: Styles.ns_not_found_page }), _jsx(NSLinkBlue, { href: '/', target: '_self', title: 'Back To Home' }), "``"] }));
|
|
9
|
-
}
|
|
4
|
+
export function NSNotFoundPage() {
|
|
5
|
+
return (_jsxs(_Fragment, { children: [_jsx("div", { className: Styles.ns_not_found_page }), _jsx(NSLinkBlue, { href: '/', target: '_self', title: 'Back To Home' }), "``"] }));
|
|
10
6
|
}
|
|
11
7
|
//# sourceMappingURL=NSNotFoundPage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSNotFoundPage.js","sourceRoot":"","sources":["../../src/pages/NSNotFoundPage.tsx"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"NSNotFoundPage.js","sourceRoot":"","sources":["../../src/pages/NSNotFoundPage.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,6BAA6B,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,MAAM,UAAU,cAAc;IAE7B,OAAO,CACN,8BACC,cAAK,SAAS,EAAE,MAAM,CAAC,iBAAiB,GAAQ,EAChD,KAAC,UAAU,IAAC,IAAI,EAAC,GAAG,EAAC,MAAM,EAAC,OAAO,EAAC,KAAK,EAAC,cAAc,GAAG,UACzD,CACH,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -8,14 +8,14 @@
|
|
|
8
8
|
"framework": "npm",
|
|
9
9
|
"application": "package",
|
|
10
10
|
"private": false,
|
|
11
|
-
"version": "1.3.
|
|
12
|
-
"author": "Amir Abolhasani, Alireza Esmaeeli, Hooman Shashaeh",
|
|
11
|
+
"version": "1.3.63",
|
|
12
|
+
"author": "Amir Abolhasani, Alireza Esmaeeli, Sepideh Mazloumi, Hooman Shashaeh",
|
|
13
13
|
"license": "MIT",
|
|
14
14
|
"main": "./dist/main.js",
|
|
15
15
|
"types": "./dist/main.d.ts",
|
|
16
16
|
"scripts": {
|
|
17
17
|
"start": "react-app-rewired start",
|
|
18
|
-
"build": "npm run copy
|
|
18
|
+
"build": "npm run copy",
|
|
19
19
|
"test": "react-app-rewired test",
|
|
20
20
|
"eject": "react-app-rewired eject",
|
|
21
21
|
"copy": "copyfiles -u 1 src/**/*.html src/**/*.css src/**/*.svg src/**/*.png src/**/*.jpg dist/"
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"copyfiles": "^2.4.1",
|
|
30
30
|
"link-react": "^3.0.0",
|
|
31
31
|
"namirasoft-api-link": "^1.3.1",
|
|
32
|
-
"namirasoft-core": "^1.3.
|
|
32
|
+
"namirasoft-core": "^1.3.19",
|
|
33
33
|
"path-browserify": "^1.0.1",
|
|
34
34
|
"react": "^18.2.0",
|
|
35
35
|
"react-app-rewired": "^2.2.1",
|
package/src/App.tsx
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import './App.css';
|
|
2
2
|
import 'bootstrap/dist/css/bootstrap.min.css';
|
|
3
|
-
import { NSFooter, NSHeader, NSTable,
|
|
3
|
+
import { NSFooter, NSHeader, NSTable, NSButtonBlue, NSButtonGreen, NSButtonRed } from './main';
|
|
4
4
|
|
|
5
5
|
export function App()
|
|
6
6
|
{
|
|
@@ -48,8 +48,18 @@ export function App()
|
|
|
48
48
|
style={{ backgroundColor: "transparent !important" }}
|
|
49
49
|
/>
|
|
50
50
|
<div className="container">
|
|
51
|
-
<
|
|
52
|
-
|
|
51
|
+
<NSButtonBlue
|
|
52
|
+
title="Cancel Deletion"
|
|
53
|
+
onClick={()=>{}}
|
|
54
|
+
/>
|
|
55
|
+
<NSButtonGreen
|
|
56
|
+
title="Cancel Deletion"
|
|
57
|
+
onClick={()=>{}}
|
|
58
|
+
/>
|
|
59
|
+
<NSButtonRed
|
|
60
|
+
title="Cancel Deletion"
|
|
61
|
+
onClick={()=>{}}
|
|
62
|
+
/>
|
|
53
63
|
<NSTable<Row> columns={columns} rows={rows} getRowKey={row => row.id.toString()} />
|
|
54
64
|
</div>
|
|
55
65
|
<NSFooter name='Footer' scope='Namira Software Corporation' logo='https://static.namirasoft.com/logo/namirasoft/base.png' />
|
package/src/Validator.ts
CHANGED
|
@@ -1,26 +1,31 @@
|
|
|
1
|
+
import { PhoneOperation, RegexTemplate } from "namirasoft-core";
|
|
1
2
|
import { ValidationNumberProps } from "./props/ValidationNumberProps";
|
|
2
3
|
import { ValidationProps } from "./props/ValidationProps";
|
|
3
4
|
import { ValidationStringProps } from "./props/ValidationStringProps";
|
|
4
5
|
|
|
5
6
|
export class Validator
|
|
6
7
|
{
|
|
7
|
-
static getError(name: string, value: string | null | undefined, validator: ValidationProps): string | null
|
|
8
|
+
static getError(name: string, value: string | number | null | undefined, validator: ValidationProps): string | null
|
|
8
9
|
{
|
|
9
10
|
if (validator.required)
|
|
10
11
|
if (!value)
|
|
11
12
|
return `${name} is required.`;
|
|
12
|
-
if (value)
|
|
13
|
+
if (value != null)
|
|
13
14
|
if (validator.regex)
|
|
14
|
-
if (!validator.regex.regex.test(value))
|
|
15
|
+
if (!validator.regex.regex.test(value + ""))
|
|
15
16
|
return `${name} is not a valid ${validator.regex.name}.`;
|
|
17
|
+
if (value != null)
|
|
18
|
+
if (validator.validator)
|
|
19
|
+
{
|
|
20
|
+
let error = validator.validator(name, value);
|
|
21
|
+
if (error)
|
|
22
|
+
return error;
|
|
23
|
+
}
|
|
16
24
|
return null;
|
|
17
25
|
}
|
|
18
26
|
static getErrorString(name: string, value: string | null | undefined, validator: ValidationStringProps): string | null
|
|
19
27
|
{
|
|
20
|
-
|
|
21
|
-
if (error)
|
|
22
|
-
return error;
|
|
23
|
-
if (value)
|
|
28
|
+
if (value != null)
|
|
24
29
|
{
|
|
25
30
|
if (validator.max_length != null)
|
|
26
31
|
if (validator.max_length < value.length)
|
|
@@ -31,21 +36,17 @@ export class Validator
|
|
|
31
36
|
}
|
|
32
37
|
return null;
|
|
33
38
|
}
|
|
34
|
-
static getErrorNumber(name: string, value:
|
|
39
|
+
static getErrorNumber(name: string, value: number | null | undefined, validator: ValidationNumberProps): string | null
|
|
35
40
|
{
|
|
36
|
-
|
|
37
|
-
if (error)
|
|
38
|
-
return error;
|
|
39
|
-
if (value)
|
|
41
|
+
if (value != null)
|
|
40
42
|
{
|
|
41
|
-
|
|
42
|
-
if (isNaN(numValue))
|
|
43
|
+
if (isNaN(value))
|
|
43
44
|
return `${name} is not a number.`;
|
|
44
45
|
if (validator.max != null)
|
|
45
|
-
if (validator.max <
|
|
46
|
+
if (validator.max < value)
|
|
46
47
|
return `Max value of ${name} should be ${validator.max} characters.`;
|
|
47
48
|
if (validator.min != null)
|
|
48
|
-
if (validator.min >
|
|
49
|
+
if (validator.min > value)
|
|
49
50
|
return `Min value of ${name} should be ${validator.min} characters.`;
|
|
50
51
|
}
|
|
51
52
|
return null;
|
|
@@ -55,8 +56,56 @@ export class Validator
|
|
|
55
56
|
return Validator.getError(name, value, {
|
|
56
57
|
required: true, regex: {
|
|
57
58
|
name: "Email",
|
|
58
|
-
regex:
|
|
59
|
+
regex: RegexTemplate.Email
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
static getErrorDate(name: string, value: string | null | undefined): string | null
|
|
64
|
+
{
|
|
65
|
+
return Validator.getError(name, value, {
|
|
66
|
+
required: true, regex: {
|
|
67
|
+
name: "Date",
|
|
68
|
+
regex: RegexTemplate.Date
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
static getErrorTime(name: string, value: string | null | undefined): string | null
|
|
73
|
+
{
|
|
74
|
+
return Validator.getError(name, value, {
|
|
75
|
+
required: true, regex: {
|
|
76
|
+
name: "Time",
|
|
77
|
+
regex: RegexTemplate.Time
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
static getErrorDuration(name: string, value: string | null | undefined): string | null
|
|
82
|
+
{
|
|
83
|
+
return Validator.getError(name, value, {
|
|
84
|
+
required: true, regex: {
|
|
85
|
+
name: "Duration",
|
|
86
|
+
regex: RegexTemplate.Duration
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
static getErrorIP(name: string, value: string | null | undefined): string | null
|
|
91
|
+
{
|
|
92
|
+
return Validator.getError(name, value, {
|
|
93
|
+
required: true, regex: {
|
|
94
|
+
name: "IP",
|
|
95
|
+
regex: RegexTemplate.IP
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
static getErrorPhone(name: string, value: string | null | undefined): string | null
|
|
100
|
+
{
|
|
101
|
+
return Validator.getError(name, value, {
|
|
102
|
+
required: true, validator: () =>
|
|
103
|
+
{
|
|
104
|
+
if (value)
|
|
105
|
+
if (!PhoneOperation.isValid(value))
|
|
106
|
+
return `${name} is not a valid phone number`;
|
|
107
|
+
return null;
|
|
59
108
|
}
|
|
60
|
-
})
|
|
109
|
+
});
|
|
61
110
|
}
|
|
62
111
|
}
|