namirasoft-site-react 1.3.251 → 1.3.254
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 +1 -1
- package/dist/App.js.map +1 -1
- package/dist/components/NSBoxBoolean.d.ts +6 -7
- package/dist/components/NSBoxBoolean.js +8 -12
- package/dist/components/NSBoxBoolean.js.map +1 -1
- package/dist/components/NSBoxDate.d.ts +3 -2
- package/dist/components/NSBoxDate.js +5 -7
- package/dist/components/NSBoxDate.js.map +1 -1
- package/dist/components/NSBoxDateTime.d.ts +3 -2
- package/dist/components/NSBoxDateTime.js +5 -7
- package/dist/components/NSBoxDateTime.js.map +1 -1
- package/dist/components/NSBoxDouble.d.ts +3 -2
- package/dist/components/NSBoxDouble.js +5 -7
- package/dist/components/NSBoxDouble.js.map +1 -1
- package/dist/components/NSBoxDuration.d.ts +3 -2
- package/dist/components/NSBoxDuration.js +5 -7
- package/dist/components/NSBoxDuration.js.map +1 -1
- package/dist/components/NSBoxEmail.d.ts +3 -2
- package/dist/components/NSBoxEmail.js +6 -8
- package/dist/components/NSBoxEmail.js.map +1 -1
- package/dist/components/NSBoxEntity.d.ts +6 -3
- package/dist/components/NSBoxEntity.js +13 -10
- package/dist/components/NSBoxEntity.js.map +1 -1
- package/dist/components/NSBoxEnum.d.ts +3 -2
- package/dist/components/NSBoxEnum.js +5 -8
- package/dist/components/NSBoxEnum.js.map +1 -1
- package/dist/components/NSBoxErrorNotifier.d.ts +1 -0
- package/dist/components/NSBoxErrorNotifier.js +5 -1
- package/dist/components/NSBoxErrorNotifier.js.map +1 -1
- package/dist/components/NSBoxIPV4.d.ts +3 -2
- package/dist/components/NSBoxIPV4.js +5 -7
- package/dist/components/NSBoxIPV4.js.map +1 -1
- package/dist/components/NSBoxIPV6.d.ts +3 -2
- package/dist/components/NSBoxIPV6.js +5 -7
- package/dist/components/NSBoxIPV6.js.map +1 -1
- package/dist/components/NSBoxInteger.d.ts +3 -2
- package/dist/components/NSBoxInteger.js +5 -7
- package/dist/components/NSBoxInteger.js.map +1 -1
- package/dist/components/NSBoxLabel.d.ts +2 -1
- package/dist/components/NSBoxLabel.js +2 -1
- package/dist/components/NSBoxLabel.js.map +1 -1
- package/dist/components/NSBoxOTP.d.ts +2 -0
- package/dist/components/NSBoxOTP.js +2 -1
- package/dist/components/NSBoxOTP.js.map +1 -1
- package/dist/components/NSBoxPassword.d.ts +3 -2
- package/dist/components/NSBoxPassword.js +5 -7
- package/dist/components/NSBoxPassword.js.map +1 -1
- package/dist/components/NSBoxPhone.d.ts +3 -2
- package/dist/components/NSBoxPhone.js +1 -4
- package/dist/components/NSBoxPhone.js.map +1 -1
- package/dist/components/NSBoxPrice.d.ts +3 -2
- package/dist/components/NSBoxPrice.js +6 -8
- package/dist/components/NSBoxPrice.js.map +1 -1
- package/dist/components/NSBoxString.d.ts +3 -2
- package/dist/components/NSBoxString.js +6 -8
- package/dist/components/NSBoxString.js.map +1 -1
- package/dist/components/NSBoxTextArea.d.ts +3 -2
- package/dist/components/NSBoxTextArea.js +7 -9
- package/dist/components/NSBoxTextArea.js.map +1 -1
- package/dist/components/NSBoxTime.d.ts +3 -2
- package/dist/components/NSBoxTime.js +5 -7
- package/dist/components/NSBoxTime.js.map +1 -1
- package/dist/components/NSFilterBoxDialog.js +1 -1
- package/dist/components/NSGroupedList.module.css +1 -0
- package/dist/components/NSPagination.d.ts +15 -2
- package/dist/components/NSPagination.js +73 -44
- package/dist/components/NSPagination.js.map +1 -1
- package/dist/components/NSTable.d.ts +4 -3
- package/dist/components/NSTable.js +8 -6
- package/dist/components/NSTable.js.map +1 -1
- package/dist/props/IBaseComponentProps.d.ts +1 -0
- package/package.json +2 -2
- package/src/App.tsx +2 -2
- package/src/components/NSBoxBoolean.tsx +18 -27
- package/src/components/NSBoxDate.tsx +14 -15
- package/src/components/NSBoxDateTime.tsx +14 -15
- package/src/components/NSBoxDouble.tsx +15 -17
- package/src/components/NSBoxDuration.tsx +14 -14
- package/src/components/NSBoxEmail.tsx +19 -18
- package/src/components/NSBoxEntity.tsx +23 -14
- package/src/components/NSBoxEnum.tsx +10 -13
- package/src/components/NSBoxErrorNotifier.tsx +7 -1
- package/src/components/NSBoxIPV4.tsx +14 -14
- package/src/components/NSBoxIPV6.tsx +14 -14
- package/src/components/NSBoxInteger.tsx +14 -14
- package/src/components/NSBoxLabel.tsx +3 -2
- package/src/components/NSBoxOTP.tsx +19 -15
- package/src/components/NSBoxPassword.tsx +14 -14
- package/src/components/NSBoxPhone.tsx +4 -9
- package/src/components/NSBoxPrice.tsx +15 -15
- package/src/components/NSBoxString.tsx +16 -16
- package/src/components/NSBoxTextArea.tsx +13 -17
- package/src/components/NSBoxTime.tsx +14 -14
- package/src/components/NSFilterBoxDialog.tsx +2 -2
- package/src/components/NSGroupedList.module.css +1 -0
- package/src/components/NSPagination.tsx +154 -117
- package/src/components/NSTable.tsx +8 -8
- package/src/props/IBaseComponentProps.ts +1 -0
|
@@ -23,8 +23,6 @@ export class NSBoxTextArea extends React.Component {
|
|
|
23
23
|
super(props);
|
|
24
24
|
this.onChanged = (e) => __awaiter(this, void 0, void 0, function* () {
|
|
25
25
|
yield this.setValue(e.target.value);
|
|
26
|
-
if (this.props.onChanged)
|
|
27
|
-
this.props.onChanged();
|
|
28
26
|
});
|
|
29
27
|
this.state = { value: (_a = props.defaultValue) !== null && _a !== void 0 ? _a : "", isFullScreen: false };
|
|
30
28
|
this.getValue = this.getValue.bind(this);
|
|
@@ -40,26 +38,26 @@ export class NSBoxTextArea extends React.Component {
|
|
|
40
38
|
let error = this.getError();
|
|
41
39
|
if (error) {
|
|
42
40
|
this.setState({ error });
|
|
43
|
-
|
|
44
|
-
this.setState({ error: "" });
|
|
45
|
-
}, 7000);
|
|
46
|
-
return '';
|
|
41
|
+
throw new Error(error);
|
|
47
42
|
}
|
|
48
43
|
return this.state.value;
|
|
49
44
|
}
|
|
50
45
|
setValue(value) {
|
|
51
|
-
this.setState({ value })
|
|
46
|
+
this.setState({ value }, () => {
|
|
47
|
+
if (this.props.onChanged)
|
|
48
|
+
this.props.onChanged(this);
|
|
49
|
+
});
|
|
52
50
|
}
|
|
53
51
|
toggleFullScreen() {
|
|
54
52
|
this.setState(prevState => ({ isFullScreen: !prevState.isFullScreen }));
|
|
55
53
|
}
|
|
56
54
|
render() {
|
|
57
55
|
var _a;
|
|
58
|
-
return (_jsxs(_Fragment, { children: [_jsxs("div", { className: `${Styles.ns_text_area_parent} ${(_a = this.props.classList) === null || _a === void 0 ? void 0 : _a.join(" ")} ${this.state.isFullScreen ? Styles.ns_full_screen : ""}`, style: this.props.style, onClick: this.state.isFullScreen ? () => { } : () => { }, children: [_jsxs("div", { className: "d-flex justify-content-between align-items-center", children: [_jsxs("span", { className: Styles.ns_input_title, children: [this.props.required && _jsx("span", { style: { color: "red" }, children: "*" }), " ", this.props.title] }), _jsxs("div", { className: "d-flex gap-1", children: [_jsx("button", { className: Styles.ns_btn_box, onClick: () => CopyToClipboard.copyToClipboard(this.getValue()), children: _jsx("img", { src: IconCopy, alt: "Copy", width: 14, height: 14 }) }), _jsx("button", { className: Styles.ns_btn_box, onClick: this.toggleFullScreen, children: _jsx("img", { src: IconFullScreen, alt: "FullScreen", width: 14, height: 14 }) })] })] }), _jsx("div", { className: Styles.ns_text_area_container, children: _jsx("textarea", { style: {
|
|
56
|
+
return (_jsxs(_Fragment, { children: [_jsxs("div", { id: this.props.id, className: `${Styles.ns_text_area_parent} ${(_a = this.props.classList) === null || _a === void 0 ? void 0 : _a.join(" ")} ${this.state.isFullScreen ? Styles.ns_full_screen : ""}`, style: this.props.style, onClick: this.state.isFullScreen ? () => { } : () => { }, children: [_jsxs("div", { className: "d-flex justify-content-between align-items-center", children: [_jsxs("span", { className: Styles.ns_input_title, children: [this.props.required && _jsx("span", { style: { color: "red" }, children: "*" }), " ", this.props.title] }), _jsxs("div", { className: "d-flex gap-1", children: [_jsx("button", { className: Styles.ns_btn_box, onClick: () => CopyToClipboard.copyToClipboard(this.getValue()), children: _jsx("img", { src: IconCopy, alt: "Copy", width: 14, height: 14 }) }), _jsx("button", { className: Styles.ns_btn_box, onClick: this.toggleFullScreen, children: _jsx("img", { src: IconFullScreen, alt: "FullScreen", width: 14, height: 14 }) })] })] }), _jsx("div", { className: Styles.ns_text_area_container, children: _jsx("textarea", { style: {
|
|
59
57
|
height: !this.props.rows ? "96px" : "",
|
|
60
58
|
background: `url(${IconInputString}) white no-repeat scroll top right 16px `,
|
|
61
59
|
backgroundPositionY: "12px"
|
|
62
|
-
}, cols: this.props.cols, rows: this.props.rows,
|
|
60
|
+
}, cols: this.props.cols, rows: this.props.rows, value: this.state.value, className: Styles.ns_text_area, placeholder: this.props.placeholder, onChange: this.onChanged, onClick: () => this.props.onClicked }) })] }), _jsx(NSBoxErrorNotifier, { error: this.state.error, clearError: () => this.setState({ error: "" }) })] }));
|
|
63
61
|
}
|
|
64
62
|
}
|
|
65
63
|
//# sourceMappingURL=NSBoxTextArea.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSBoxTextArea.js","sourceRoot":"","sources":["../../src/components/NSBoxTextArea.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;AAEb,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAIhD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,eAAe,MAAM,wCAAwC,CAAC;AACrE,OAAO,cAAc,MAAM,sCAAsC,CAAC;AAClE,OAAO,QAAQ,MAAM,gCAAgC,CAAC;AACtD,OAAO,eAAe,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"NSBoxTextArea.js","sourceRoot":"","sources":["../../src/components/NSBoxTextArea.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,9 +4,10 @@ import { IValidationProps } from "../props/IValidationProps";
|
|
|
4
4
|
import { IValidationStringProps } from "../props/IValidationStringProps";
|
|
5
5
|
export interface INSBoxTimeProps extends IBaseComponentProps, IValidationProps, IValidationStringProps {
|
|
6
6
|
title: string;
|
|
7
|
-
defaultValue?: string;
|
|
8
|
-
onChanged?: (e: React.ChangeEvent<HTMLInputElement>) => void;
|
|
9
7
|
placeholder?: string;
|
|
8
|
+
defaultValue?: string;
|
|
9
|
+
onChanged?: (e: NSBoxTime) => void;
|
|
10
|
+
onClicked?: (e: NSBoxTime) => void;
|
|
10
11
|
}
|
|
11
12
|
export interface INSBoxTimeState {
|
|
12
13
|
value: string;
|
|
@@ -23,24 +23,22 @@ export class NSBoxTime extends React.Component {
|
|
|
23
23
|
let error = this.getError();
|
|
24
24
|
if (error) {
|
|
25
25
|
this.setState({ error });
|
|
26
|
-
setTimeout(() => {
|
|
27
|
-
this.setState({ error: "" });
|
|
28
|
-
}, 7000);
|
|
29
26
|
throw new Error(error);
|
|
30
27
|
}
|
|
31
28
|
return this.state.value;
|
|
32
29
|
}
|
|
33
30
|
setValue(value) {
|
|
34
|
-
this.setState({ value })
|
|
31
|
+
this.setState({ value }, () => {
|
|
32
|
+
if (this.props.onChanged)
|
|
33
|
+
this.props.onChanged(this);
|
|
34
|
+
});
|
|
35
35
|
}
|
|
36
36
|
onChanged(e) {
|
|
37
37
|
this.setValue(e.target.value);
|
|
38
|
-
if (this.props.onChanged)
|
|
39
|
-
this.props.onChanged(e);
|
|
40
38
|
}
|
|
41
39
|
render() {
|
|
42
40
|
var _a;
|
|
43
|
-
return (_jsxs(_Fragment, { children: [_jsxs("div", { className: `${Styles.ns_input_parent} ${(_a = this.props.classList) === null || _a === void 0 ? void 0 : _a.join(" ")}`, style: this.props.style, children: [_jsxs("span", { className: Styles.ns_input_title, children: [" ", this.props.required && _jsx("span", { style: { color: "red" }, children: "*" }), " ", this.props.title, " "] }), _jsx("input", {
|
|
41
|
+
return (_jsxs(_Fragment, { children: [_jsxs("div", { id: this.props.id, className: `${Styles.ns_input_parent} ${(_a = this.props.classList) === null || _a === void 0 ? void 0 : _a.join(" ")}`, style: this.props.style, children: [_jsxs("span", { className: Styles.ns_input_title, children: [" ", this.props.required && _jsx("span", { style: { color: "red" }, children: "*" }), " ", this.props.title, " "] }), _jsx("input", { type: "time", name: this.props.name, className: Styles.ns_input, placeholder: this.props.placeholder, value: this.state.value, onChange: this.onChanged, onClick: () => this.props.onClicked, step: "2", style: { background: `url(${IconInputTime}) white no-repeat scroll center right 16px` } })] }), _jsx(NSBoxErrorNotifier, { error: this.state.error, clearError: () => this.setState({ error: "" }) })] }));
|
|
44
42
|
}
|
|
45
43
|
}
|
|
46
44
|
//# sourceMappingURL=NSBoxTime.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSBoxTime.js","sourceRoot":"","sources":["../../src/components/NSBoxTime.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,aAAa,MAAM,sCAAsC,CAAC;AAIjE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"NSBoxTime.js","sourceRoot":"","sources":["../../src/components/NSBoxTime.tsx"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ import { NSButtonBlue } from './NSButtonBlue';
|
|
|
7
7
|
import { NSButtonRed } from './NSButtonRed';
|
|
8
8
|
export class NSFilterBoxDialog extends Component {
|
|
9
9
|
render() {
|
|
10
|
-
return (_jsxs("div", { className: Styles.ns_dialog_holder, children: [_jsx("button", { className: Styles.ns_dialog_close, onClick: this.props.onCloseDialog, children: _jsx("img", { src: "https://static.namirasoft.com/image/concept/close/blue.svg", alt: "close-dialog", width: 24, height: 24 }) }), _jsx("h3", { className: Styles.ns_dialog_title, children: "Edit Dialog" }), _jsx(NSBoxEnum, { title: "this.props.title",
|
|
10
|
+
return (_jsxs("div", { className: Styles.ns_dialog_holder, children: [_jsx("button", { className: Styles.ns_dialog_close, onClick: this.props.onCloseDialog, children: _jsx("img", { src: "https://static.namirasoft.com/image/concept/close/blue.svg", alt: "close-dialog", width: 24, height: 24 }) }), _jsx("h3", { className: Styles.ns_dialog_title, children: "Edit Dialog" }), _jsx(NSBoxEnum, { title: "this.props.title", placeholder: "", options: [], multiple: false, required: false }), _jsx(NSBoxEnum, { title: "this.props.title", placeholder: "", options: [], multiple: false, required: false }), _jsx(NSBoxString, { title: '', required: false }), _jsxs("div", { className: Styles.ns_dialog_btn_container, children: [_jsx(NSButtonRed, { title: 'Apply', onClick: () => { }, style: {
|
|
11
11
|
border: "solid 1px red",
|
|
12
12
|
color: "red",
|
|
13
13
|
backgroundColor: "#fff"
|
|
@@ -1,7 +1,20 @@
|
|
|
1
|
+
import { Component } from 'react';
|
|
1
2
|
import { IBaseComponentProps } from '../props/IBaseComponentProps';
|
|
3
|
+
import { NSBoxEnum } from './NSBoxEnum';
|
|
4
|
+
import React from "react";
|
|
2
5
|
export interface INSPaginationProps extends IBaseComponentProps {
|
|
3
6
|
totalItems: number;
|
|
4
|
-
currentPage: number;
|
|
5
7
|
onPageChange: (page: number, size: number) => void;
|
|
6
8
|
}
|
|
7
|
-
|
|
9
|
+
interface INSPaginationState {
|
|
10
|
+
currentPage: number;
|
|
11
|
+
pageSize: number;
|
|
12
|
+
}
|
|
13
|
+
export declare class NSPagination extends Component<INSPaginationProps, INSPaginationState> {
|
|
14
|
+
PageSize: React.RefObject<NSBoxEnum>;
|
|
15
|
+
constructor(props: INSPaginationProps);
|
|
16
|
+
getCurrentPage(): number;
|
|
17
|
+
getPageSize(): number;
|
|
18
|
+
render(): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
@@ -1,53 +1,82 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
2
|
+
import { Component } from 'react';
|
|
3
3
|
import { NSBoxEnum } from './NSBoxEnum';
|
|
4
4
|
import Styles from './NSPagination.module.css';
|
|
5
|
+
import React from "react";
|
|
5
6
|
let pageSizes = [25, 50, 100, 200, 500];
|
|
6
|
-
export
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const minPage = Math.max(2, currentPage - windowSize);
|
|
15
|
-
const maxPage = Math.min(currentPage + windowSize, totalPages - 1);
|
|
16
|
-
const current_min = Math.min(totalItems, (currentPage - 1) * pageSize + 1);
|
|
17
|
-
const current_max = Math.min(totalItems, currentPage * pageSize);
|
|
18
|
-
const pages = [];
|
|
19
|
-
const pushPage = (page) => {
|
|
20
|
-
pages.push(_jsx("div", { className: `${Styles.ns_select_number_parent}`, children: _jsx("a", { href: "#", className: `${Styles.ns_paginate_link} ${page === currentPage ? Styles.ns_select_number : ''}`, onClick: (e) => {
|
|
21
|
-
e.preventDefault();
|
|
22
|
-
onPageChange(page, state.pageSize);
|
|
23
|
-
}, children: page }) }, page));
|
|
24
|
-
};
|
|
25
|
-
pages.push(_jsx("div", { children: _jsx("a", { href: "#", onClick: (e) => {
|
|
26
|
-
e.preventDefault();
|
|
27
|
-
if (currentPage > 1)
|
|
28
|
-
onPageChange(currentPage - 1, state.pageSize);
|
|
29
|
-
}, children: _jsx("img", { style: { margin: "0 8px 0 0" }, src: "https://static.namirasoft.com/image/concept/arrow/left/white-blue.svg", alt: "left_vector", width: 32, height: 32 }) }) }, "prev"));
|
|
30
|
-
pushPage(1);
|
|
31
|
-
if (currentPage > windowSize + 2) {
|
|
32
|
-
pages.push(_jsx("div", { className: Styles.ns_pagination_left_ellipses, children: _jsx("a", { href: "#", className: `${Styles.ns_paginate_link}`, onClick: (e) => e.preventDefault(), children: "..." }) }, "ellipsis1"));
|
|
7
|
+
export class NSPagination extends Component {
|
|
8
|
+
constructor(props) {
|
|
9
|
+
super(props);
|
|
10
|
+
this.PageSize = React.createRef();
|
|
11
|
+
this.state = { currentPage: 1, pageSize: pageSizes[0] };
|
|
12
|
+
}
|
|
13
|
+
getCurrentPage() {
|
|
14
|
+
return this.state.currentPage;
|
|
33
15
|
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
if (currentPage < totalPages - windowSize - 1) {
|
|
37
|
-
pages.push(_jsx("div", { className: Styles.ns_pagination_right_ellipses, children: _jsx("a", { href: "#", className: `${Styles.ns_paginate_link}`, onClick: (e) => e.preventDefault(), children: "..." }) }, "ellipsis2"));
|
|
16
|
+
getPageSize() {
|
|
17
|
+
return this.state.pageSize;
|
|
38
18
|
}
|
|
39
|
-
|
|
40
|
-
|
|
19
|
+
render() {
|
|
20
|
+
var _a;
|
|
21
|
+
let pageSize = this.state.pageSize;
|
|
22
|
+
const { totalItems, onPageChange } = this.props;
|
|
23
|
+
const totalPages = Math.ceil(totalItems / pageSize);
|
|
24
|
+
const windowSize = 2;
|
|
25
|
+
const minPage = Math.max(2, this.state.currentPage - windowSize);
|
|
26
|
+
const maxPage = Math.min(this.state.currentPage + windowSize, totalPages - 1);
|
|
27
|
+
const current_min = Math.min(totalItems, (this.state.currentPage - 1) * pageSize + 1);
|
|
28
|
+
const current_max = Math.min(totalItems, this.state.currentPage * pageSize);
|
|
29
|
+
const pages = [];
|
|
30
|
+
const pushPage = (page) => {
|
|
31
|
+
pages.push(_jsx("div", { className: `${Styles.ns_select_number_parent}`, children: _jsx("a", { href: "#", className: `${Styles.ns_paginate_link} ${page === this.state.currentPage ? Styles.ns_select_number : ''}`, onClick: (e) => {
|
|
32
|
+
e.preventDefault();
|
|
33
|
+
let currentPage = page;
|
|
34
|
+
let pageSize = this.state.pageSize;
|
|
35
|
+
this.setState({ currentPage, pageSize }, () => {
|
|
36
|
+
onPageChange(currentPage, pageSize);
|
|
37
|
+
});
|
|
38
|
+
}, children: page }) }, page));
|
|
39
|
+
};
|
|
40
|
+
pages.push(_jsx("div", { children: _jsx("a", { href: "#", onClick: (e) => {
|
|
41
|
+
e.preventDefault();
|
|
42
|
+
if (this.state.currentPage > 1) {
|
|
43
|
+
let currentPage = this.state.currentPage - 1;
|
|
44
|
+
let pageSize = this.state.pageSize;
|
|
45
|
+
this.setState({ currentPage, pageSize }, () => {
|
|
46
|
+
onPageChange(currentPage, pageSize);
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
}, children: _jsx("img", { style: { margin: "0 8px 0 0" }, src: "https://static.namirasoft.com/image/concept/arrow/left/white-blue.svg", alt: "left_vector", width: 32, height: 32 }) }) }, "prev"));
|
|
50
|
+
pushPage(1);
|
|
51
|
+
if (this.state.currentPage > windowSize + 2) {
|
|
52
|
+
pages.push(_jsx("div", { className: Styles.ns_pagination_left_ellipses, children: _jsx("a", { href: "#", className: `${Styles.ns_paginate_link}`, onClick: (e) => e.preventDefault(), children: "..." }) }, "ellipsis1"));
|
|
53
|
+
}
|
|
54
|
+
for (let i = minPage; i <= maxPage; i++)
|
|
55
|
+
pushPage(i);
|
|
56
|
+
if (this.state.currentPage < totalPages - windowSize - 1) {
|
|
57
|
+
pages.push(_jsx("div", { className: Styles.ns_pagination_right_ellipses, children: _jsx("a", { href: "#", className: `${Styles.ns_paginate_link}`, onClick: (e) => e.preventDefault(), children: "..." }) }, "ellipsis2"));
|
|
58
|
+
}
|
|
59
|
+
if (totalPages > 1) {
|
|
60
|
+
pushPage(totalPages);
|
|
61
|
+
}
|
|
62
|
+
pages.push(_jsx("div", { children: _jsx("a", { href: "#", onClick: (e) => {
|
|
63
|
+
e.preventDefault();
|
|
64
|
+
if (this.state.currentPage < totalPages) {
|
|
65
|
+
let currentPage = this.state.currentPage + 1;
|
|
66
|
+
let pageSize = this.state.pageSize;
|
|
67
|
+
this.setState({ currentPage, pageSize }, () => {
|
|
68
|
+
onPageChange(currentPage, pageSize);
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
}, children: _jsx("img", { style: { margin: "0 0 0 8px" }, src: "https://static.namirasoft.com/image/concept/arrow/right/white-blue.svg", width: 32, height: 32, alt: "right_vector" }) }) }, "next"));
|
|
72
|
+
return (_jsx(_Fragment, { children: _jsxs("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: [pages, _jsxs("div", { className: Styles.ns_pagination_info, children: [_jsx("div", { style: { width: 70 }, children: _jsx(NSBoxEnum, { ref: this.PageSize, title: '', multiple: false, required: false, options: pageSizes.map(pagesize => { return { desc: pagesize.toString(), value: pagesize.toString() }; }), onChanged: () => {
|
|
73
|
+
var _a, _b;
|
|
74
|
+
let currentPage = this.state.currentPage;
|
|
75
|
+
let pageSize = parseInt((_b = (_a = this.PageSize.current) === null || _a === void 0 ? void 0 : _a.getValue()) !== null && _b !== void 0 ? _b : pageSizes[0].toString());
|
|
76
|
+
this.setState({ currentPage, pageSize }, () => {
|
|
77
|
+
onPageChange(currentPage, pageSize);
|
|
78
|
+
});
|
|
79
|
+
} }) }), _jsx("h6", { children: `(${current_min} - ${current_max}) of ${totalItems}` })] })] }) }));
|
|
41
80
|
}
|
|
42
|
-
pages.push(_jsx("div", { children: _jsx("a", { href: "#", onClick: (e) => {
|
|
43
|
-
e.preventDefault();
|
|
44
|
-
if (currentPage < totalPages)
|
|
45
|
-
onPageChange(currentPage + 1, state.pageSize);
|
|
46
|
-
}, children: _jsx("img", { style: { margin: "0 0 0 8px" }, src: "https://static.namirasoft.com/image/concept/arrow/right/white-blue.svg", width: 32, height: 32, alt: "right_vector" }) }) }, "next"));
|
|
47
|
-
return (_jsx(_Fragment, { children: _jsxs("div", { id: props.id, className: `${Styles.ns_pagination_container} ${(_a = props.classList) === null || _a === void 0 ? void 0 : _a.join(' ')}`, style: props.style, children: [pages, _jsxs("div", { className: Styles.ns_pagination_info, children: [_jsx("div", { style: { width: 70 }, children: _jsx(NSBoxEnum, { ref: PageSize, title: '', multiple: false, required: false, options: pageSizes.map(pagesize => { return { desc: pagesize.toString(), value: pagesize.toString() }; }), onChange: () => {
|
|
48
|
-
var _a, _b;
|
|
49
|
-
setState({ pageSize: parseInt((_b = (_a = PageSize.current) === null || _a === void 0 ? void 0 : _a.getValue()) !== null && _b !== void 0 ? _b : pageSizes[0].toString()) });
|
|
50
|
-
onPageChange(currentPage + 1, state.pageSize);
|
|
51
|
-
} }) }), _jsx("h6", { children: `(${current_min} - ${current_max}) of ${totalItems}` })] })] }) }));
|
|
52
81
|
}
|
|
53
82
|
//# sourceMappingURL=NSPagination.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSPagination.js","sourceRoot":"","sources":["../../src/components/NSPagination.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"NSPagination.js","sourceRoot":"","sources":["../../src/components/NSPagination.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { NSPagination } from './NSPagination';
|
|
1
2
|
import { Component } from 'react';
|
|
2
3
|
import { IBaseComponentProps } from "../props/IBaseComponentProps";
|
|
3
4
|
import React from "react";
|
|
@@ -6,7 +7,7 @@ export interface INSTableProps<RowType> extends IBaseComponentProps {
|
|
|
6
7
|
[key: string]: string;
|
|
7
8
|
};
|
|
8
9
|
totalItems: number;
|
|
9
|
-
reload: (page: number) => void;
|
|
10
|
+
reload: (page: number, size: number) => void;
|
|
10
11
|
getRowKey: (row: RowType, rowIndex: number) => string;
|
|
11
12
|
getColumnAttributes?: (column: string, columnIndex: number) => {
|
|
12
13
|
[key: string]: string;
|
|
@@ -22,13 +23,13 @@ export interface NSTableState<RowType> {
|
|
|
22
23
|
};
|
|
23
24
|
rows: RowType[] | null;
|
|
24
25
|
title?: string;
|
|
25
|
-
currentPage: number;
|
|
26
26
|
model: {
|
|
27
27
|
show: boolean;
|
|
28
28
|
description?: string;
|
|
29
29
|
};
|
|
30
30
|
}
|
|
31
31
|
export declare class NSTable<RowType> extends Component<INSTableProps<RowType>, NSTableState<RowType>> {
|
|
32
|
+
NSPagination: React.RefObject<NSPagination>;
|
|
32
33
|
constructor(props: INSTableProps<RowType>);
|
|
33
34
|
setColumns(columns: {
|
|
34
35
|
[key: string]: string;
|
|
@@ -36,6 +37,6 @@ export declare class NSTable<RowType> extends Component<INSTableProps<RowType>,
|
|
|
36
37
|
setRows(rows: RowType[] | null): void;
|
|
37
38
|
showModal(description: string, title?: string): void;
|
|
38
39
|
hideModal(): void;
|
|
39
|
-
onPageChange: (page: number) => void;
|
|
40
|
+
onPageChange: (page: number, size: number) => void;
|
|
40
41
|
render(): import("react/jsx-runtime").JSX.Element;
|
|
41
42
|
}
|
|
@@ -6,16 +6,17 @@ import { NSPagination } from './NSPagination';
|
|
|
6
6
|
import { NSSpace, NSSpaceSizeType } from './NSSpace';
|
|
7
7
|
import Styles from './NSTable.module.css';
|
|
8
8
|
import { Component } from 'react';
|
|
9
|
+
import React from "react";
|
|
9
10
|
import { NSModal } from './NSModal';
|
|
10
11
|
import { NSLoading } from './NSLoading';
|
|
11
12
|
export class NSTable extends Component {
|
|
12
13
|
constructor(props) {
|
|
13
14
|
super(props);
|
|
14
|
-
this.
|
|
15
|
-
|
|
16
|
-
this.props.reload(page);
|
|
15
|
+
this.NSPagination = React.createRef();
|
|
16
|
+
this.onPageChange = (page, size) => {
|
|
17
|
+
this.props.reload(page, size);
|
|
17
18
|
};
|
|
18
|
-
this.state = { columns: props.columns, rows: null,
|
|
19
|
+
this.state = { columns: props.columns, rows: null, model: { show: false } };
|
|
19
20
|
this.setColumns = this.setColumns.bind(this);
|
|
20
21
|
this.setRows = this.setRows.bind(this);
|
|
21
22
|
this.showModal = this.showModal.bind(this);
|
|
@@ -79,8 +80,9 @@ export class NSTable extends Component {
|
|
|
79
80
|
else {
|
|
80
81
|
content = this.state.rows.map((row, rowIndex) => _jsx("tr", { onClick: (e) => { onRowClick(e, row, rowIndex); }, children: column_keys.map((column, columnIndex) => (_createElement("td", Object.assign({}, getColumnAttributes(column, columnIndex), { key: this.props.getRowKey(row, rowIndex), "data-label": `${this.state.columns[column]} : `, onClick: (e) => { onCellClick(e, row, column, rowIndex, columnIndex); } }), getCell(row, column, rowIndex, columnIndex)))) }, this.props.getRowKey(row, rowIndex)));
|
|
81
82
|
}
|
|
82
|
-
return (_jsxs("div", { id: this.props.id, className: `${Styles.ns_project_list_container} ${(_a = this.props.classList) === null || _a === void 0 ? void 0 : _a.join(" ")}`, style: this.props.style, children: [_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: content })] }), _jsx(NSSpace, { size: NSSpaceSizeType.MICRO }), _jsxs("section", { className: Styles.ns_pagination_button, children: [_jsx(NSPagination, {
|
|
83
|
-
|
|
83
|
+
return (_jsxs("div", { id: this.props.id, className: `${Styles.ns_project_list_container} ${(_a = this.props.classList) === null || _a === void 0 ? void 0 : _a.join(" ")}`, style: this.props.style, children: [_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: content })] }), _jsx(NSSpace, { size: NSSpaceSizeType.MICRO }), _jsxs("section", { className: Styles.ns_pagination_button, children: [_jsx(NSPagination, { ref: this.NSPagination, totalItems: this.props.totalItems, onPageChange: this.onPageChange }), _jsx(NSSpace, { size: NSSpaceSizeType.SMALL }), _jsxs("div", { className: Styles.ns_button, children: [_jsx(NSButton, { title: 'Print', icon: { src: "https://static.namirasoft.com/image/concept/export/blue.svg" }, onClick: () => { }, style: { border: '1px solid rgba(255, 148, 50, 1)', width: "128px" } }), _jsx(NSButton, { title: 'Export', icon: { src: "https://static.namirasoft.com/image/concept/export/blue.svg" }, onClick: () => { }, style: { border: '1px solid rgba(255, 148, 50, 1)', width: "128px" } }), _jsx(NSButton, { title: 'Refresh', icon: { src: "https://static.namirasoft.com/image/concept/export/blue.svg" }, onClick: () => {
|
|
84
|
+
if (this.NSPagination.current)
|
|
85
|
+
this.props.reload(this.NSPagination.current.getCurrentPage(), this.NSPagination.current.getPageSize());
|
|
84
86
|
}, style: { border: '1px solid rgba(3, 119, 255, 1)', width: "128px" } })] })] }), _jsx(NSSpace, { size: NSSpaceSizeType.SMALL }), _jsx(NSModal, { show: this.state.model.show, description: this.state.model.description, onClose: () => { this.hideModal(); }, title: this.state.title })] }));
|
|
85
87
|
}
|
|
86
88
|
}
|
|
@@ -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,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;
|
|
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,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;AAElC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AA0BxC,MAAM,OAAO,OAAiB,SAAQ,SAAwD;IAG7F,YAAY,KAA6B;QAExC,KAAK,CAAC,KAAK,CAAC,CAAC;QAHd,iBAAY,GAAG,KAAK,CAAC,SAAS,EAAgB,CAAC;QA2B/C,iBAAY,GAAG,CAAC,IAAY,EAAE,IAAY,EAAE,EAAE;YAE7C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/B,CAAC,CAAA;QA1BA,IAAI,CAAC,KAAK,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC5E,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IACD,UAAU,CAAC,OAAkC;QAE5C,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,CAAC,IAAsB;QAE7B,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IACzB,CAAC;IACD,SAAS,CAAC,WAAmB,EAAE,KAAc;QAE5C,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9D,CAAC;IACD,SAAS;QAER,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3C,CAAC;IAKQ,MAAM;;QAEd,IAAI,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,mBAAmB,GAAG,CAAC,MAAc,EAAE,WAAmB,EAAE,EAAE;YAEjE,IAAI,IAAI,CAAC,KAAK,CAAC,mBAAmB;gBACjC,OAAO,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAC5D,OAAO,EAAE,CAAC;QACX,CAAC,CAAA;QACD,IAAI,OAAO,GAAG,CAAC,GAAY,EAAE,MAAc,EAAE,QAAgB,EAAE,WAAmB,EAAE,EAAE;YAErF,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO;gBACrB,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;YAC/D,OAAQ,GAAW,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC,CAAA;QACD,IAAI,UAAU,GAAG,CAAC,CAAoD,EAAE,GAAY,EAAE,QAAgB,EAAE,EAAE;YAEzG,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU;gBACxB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC1C,CAAC,CAAC;QACF,IAAI,WAAW,GAAG,CAAC,CAAyD,EAAE,GAAY,EAAE,MAAc,EAAE,QAAgB,EAAE,WAAmB,EAAE,EAAE;YAEpJ,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,IAAI,MAAM,KAAK,OAAO,EACtB;gBACC,QAAQ,GAAG,IAAI,CAAC;aAChB;iBAAM,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EACjC;gBACC,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;gBACxE,IAAI,GAAG,KAAK,SAAS,EACrB;oBACC,QAAQ,GAAG,IAAI,CAAC;iBAChB;qBACD;oBACC,QAAQ,GAAG,GAAG,CAAC;iBACf;aACD;YACD,IAAI,CAAC,QAAQ,EACb;gBACC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;aACxF;QACF,CAAC,CAAC;QACF,IAAI,OAAO,CAAC;QACZ,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,EAC5B;YACC,OAAO,GAAG,CACT,cAAK,SAAS,EAAE,MAAM,CAAC,gBAAgB,YACtC,KAAC,SAAS,KAAG,GACR,CACN,CAAC;SACF;aACI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EACrC;YACC,OAAO,GAAG,CACT,cAAK,SAAS,EAAE,MAAM,CAAC,gBAAgB,YACtC,cAAK,GAAG,EAAC,+DAA+D,EAAC,GAAG,EAAC,SAAS,GAAG,GACpF,CACN,CAAC;SACF;aAED;YACC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAC/C,aAA8C,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,YAE7F,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CAAC,CACxC,uCAAQ,mBAAmB,CAAC,MAAM,EAAE,WAAW,CAAC,IAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC,gBAAc,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,KACjN,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CACxC,CACL,CAAC,IANK,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC,CAQvC,CAAC,CAAC;SACR;QACD,OAAO,CACN,eAAK,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EACrB,SAAS,EAAE,GAAG,MAAM,CAAC,yBAAyB,IAAI,MAAA,IAAI,CAAC,KAAK,CAAC,SAAS,0CAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EACnF,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,aACvB,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,KAAK,GAAI,EACxC,iBAAO,SAAS,EAAE,MAAM,CAAC,QAAQ,aAChC,gBAAO,SAAS,EAAE,MAAM,CAAC,QAAQ,YAChC,uBACE,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,aAAqB,KAAK,EAAC,KAAK,YAC7D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IADQ,UAAU,CAE7C,CAAC,GACF,GACE,EACR,gBAAO,SAAS,EAAE,MAAM,CAAC,QAAQ,YAC/B,OAAO,GACA,IACF,EACR,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,KAAK,GAAI,EACxC,mBAAS,SAAS,EAAE,MAAM,CAAC,oBAAoB,aAC9C,KAAC,YAAY,IAAC,GAAG,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,GAAI,EAC5G,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,KAAK,GAAI,EACxC,eAAK,SAAS,EAAE,MAAM,CAAC,SAAS,aAC/B,KAAC,QAAQ,IAAC,KAAK,EAAC,OAAO,EAAC,IAAI,EAAE,EAAE,GAAG,EAAE,6DAA6D,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,iCAAiC,EAAE,KAAK,EAAE,OAAO,EAAE,GAAI,EAClM,KAAC,QAAQ,IAAC,KAAK,EAAC,QAAQ,EAAC,IAAI,EAAE,EAAE,GAAG,EAAE,6DAA6D,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,iCAAiC,EAAE,KAAK,EAAE,OAAO,EAAE,GAAI,EACnM,KAAC,QAAQ,IAAC,KAAK,EAAC,SAAS,EAAC,IAAI,EAAE,EAAE,GAAG,EAAE,6DAA6D,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE;wCAErH,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO;4CAC5B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;oCACzG,CAAC,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,gCAAgC,EAAE,KAAK,EAAE,OAAO,EAAE,GAAI,IACrE,IACG,EACV,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,KAAK,GAAI,EACxC,KAAC,OAAO,IACP,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAC3B,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EACzC,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EACpC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GACtB,IACI,CACP,CAAC;IACH,CAAC;CACD"}
|
package/package.json
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"framework": "npm",
|
|
9
9
|
"application": "package",
|
|
10
10
|
"private": false,
|
|
11
|
-
"version": "1.3.
|
|
11
|
+
"version": "1.3.254",
|
|
12
12
|
"author": "Amir Abolhasani, Alireza Esmaeeli, Sepideh Mazloumi, Hooman Shashaeh",
|
|
13
13
|
"license": "MIT",
|
|
14
14
|
"main": "./dist/main.js",
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"copy": "copyfiles -u 1 src/**/*.html src/**/*.css src/**/*.svg src/**/*.png src/**/*.jpg dist/"
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@types/node": "^20.14.
|
|
24
|
+
"@types/node": "^20.14.7",
|
|
25
25
|
"@types/react": "^18.3.3",
|
|
26
26
|
"@types/react-dom": "^18.3.0",
|
|
27
27
|
"antd": "^5.18.3",
|
package/src/App.tsx
CHANGED
|
@@ -96,7 +96,7 @@ export function App()
|
|
|
96
96
|
<>
|
|
97
97
|
<NSTabPage tabs={tabs} />
|
|
98
98
|
<NSSpace size={NSSpaceSizeType.SMALL} />
|
|
99
|
-
<NSPagination totalItems={100}
|
|
99
|
+
<NSPagination totalItems={100} onPageChange={() => { }} />
|
|
100
100
|
</>
|
|
101
101
|
<NSTable
|
|
102
102
|
columns={getColumns()}
|
|
@@ -110,7 +110,7 @@ export function App()
|
|
|
110
110
|
<NSBoxString title='String' required />
|
|
111
111
|
<NSRadioButton title={"Radio Button"} />
|
|
112
112
|
<NSSpace size={NSSpaceSizeType.LARGE} />
|
|
113
|
-
<NSBoxBoolean
|
|
113
|
+
<NSBoxBoolean defaultValue={true} title='' required />
|
|
114
114
|
<NSButton title='Clear Filters' onClick={() => window.location.reload()} style={{ width: "136px", border: "2px solid #001664" }} />
|
|
115
115
|
<NSTag />
|
|
116
116
|
</NSLayout>
|
|
@@ -5,22 +5,20 @@ import Styles from "./NSBoxBoolean.module.css";
|
|
|
5
5
|
import { IBaseComponentProps } from "../props/IBaseComponentProps";
|
|
6
6
|
import { IValidationProps } from "../props/IValidationProps";
|
|
7
7
|
import { IValidationStringProps } from "../props/IValidationStringProps";
|
|
8
|
-
import { Validator } from "../Validator";
|
|
9
8
|
import { NSBoxErrorNotifier } from "./NSBoxErrorNotifier";
|
|
10
9
|
|
|
11
10
|
export interface INSBoxBooleanProps extends IBaseComponentProps, IValidationProps, IValidationStringProps
|
|
12
11
|
{
|
|
13
12
|
title: string;
|
|
14
|
-
defaultValue?: string;
|
|
15
|
-
onChanged?: (e: React.ChangeEvent<HTMLInputElement>) => void;
|
|
16
13
|
placeholder?: string;
|
|
17
|
-
|
|
18
|
-
|
|
14
|
+
defaultValue?: boolean;
|
|
15
|
+
onChanged?: (e: NSBoxBoolean) => void;
|
|
16
|
+
onClicked?: (e: NSBoxBoolean) => void;
|
|
19
17
|
}
|
|
20
18
|
|
|
21
19
|
export interface INSBoxBooelanState
|
|
22
20
|
{
|
|
23
|
-
value:
|
|
21
|
+
value: boolean;
|
|
24
22
|
error?: string;
|
|
25
23
|
}
|
|
26
24
|
|
|
@@ -29,65 +27,58 @@ export class NSBoxBoolean extends React.Component<INSBoxBooleanProps, INSBoxBooe
|
|
|
29
27
|
constructor(props: INSBoxBooleanProps)
|
|
30
28
|
{
|
|
31
29
|
super(props);
|
|
32
|
-
this.state = { value: props.defaultValue ??
|
|
30
|
+
this.state = { value: props.defaultValue ?? false };
|
|
33
31
|
this.getValue = this.getValue.bind(this);
|
|
34
32
|
this.setValue = this.setValue.bind(this);
|
|
35
33
|
this.onChanged = this.onChanged.bind(this);
|
|
36
34
|
}
|
|
37
35
|
getError(): string | null
|
|
38
36
|
{
|
|
39
|
-
return
|
|
40
|
-
Validator.getError(this.props.title, this.state.value, this.props) ||
|
|
41
|
-
Validator.getErrorString(this.props.title, this.state.value, this.props)
|
|
42
|
-
);
|
|
37
|
+
return null;
|
|
43
38
|
}
|
|
44
|
-
getValue():
|
|
39
|
+
getValue(): boolean
|
|
45
40
|
{
|
|
46
41
|
let error = this.getError();
|
|
47
42
|
if (error)
|
|
48
43
|
{
|
|
49
44
|
this.setState({ error });
|
|
50
|
-
setTimeout(() =>
|
|
51
|
-
{
|
|
52
|
-
this.setState({ error: "" });
|
|
53
|
-
}, 7000);
|
|
54
45
|
throw new Error(error);
|
|
55
46
|
}
|
|
56
47
|
return this.state.value;
|
|
57
48
|
}
|
|
58
|
-
setValue(value:
|
|
49
|
+
setValue(value: boolean): void
|
|
59
50
|
{
|
|
60
|
-
this.setState({ value })
|
|
51
|
+
this.setState({ value }, () =>
|
|
52
|
+
{
|
|
53
|
+
if (this.props.onChanged)
|
|
54
|
+
this.props.onChanged(this);
|
|
55
|
+
});
|
|
61
56
|
}
|
|
62
57
|
private onChanged(e: React.ChangeEvent<HTMLInputElement>): void
|
|
63
58
|
{
|
|
64
|
-
this.setValue(e.target.
|
|
65
|
-
if (this.props.onChanged)
|
|
66
|
-
this.props.onChanged(e);
|
|
59
|
+
this.setValue(e.target.checked);
|
|
67
60
|
}
|
|
68
61
|
override render()
|
|
69
62
|
{
|
|
70
63
|
return (
|
|
71
64
|
<>
|
|
72
|
-
<div className={`${Styles.ns_input_parent} ${this.props.classList?.join(" ")}`} style={this.props.style}>
|
|
65
|
+
<div id={this.props.id} className={`${Styles.ns_input_parent} ${this.props.classList?.join(" ")}`} style={this.props.style}>
|
|
73
66
|
<span className={Styles.ns_input_title}> {this.props.required && <span style={{ color: "red" }} >*</span>} {this.props.title} </span>
|
|
74
67
|
<div className={Styles.ns_checkbox_parent} >
|
|
75
68
|
<input
|
|
76
|
-
id={this.props.id}
|
|
77
69
|
type="checkbox"
|
|
78
70
|
name={this.props.name}
|
|
79
71
|
className={Styles.ns_input}
|
|
80
|
-
|
|
72
|
+
checked={this.state.value}
|
|
81
73
|
onChange={this.onChanged}
|
|
82
|
-
|
|
74
|
+
onClick={() => this.props.onClicked}
|
|
83
75
|
/>
|
|
84
76
|
<label className="ns-font-16-normal" htmlFor={this.props.id}>
|
|
85
77
|
{this.props.name}
|
|
86
78
|
</label>
|
|
87
79
|
</div>
|
|
88
|
-
|
|
89
80
|
</div>
|
|
90
|
-
<NSBoxErrorNotifier error={this.state.error} />
|
|
81
|
+
<NSBoxErrorNotifier error={this.state.error} clearError={() => this.setState({ error: "" })} />
|
|
91
82
|
</>
|
|
92
83
|
);
|
|
93
84
|
}
|