namirasoft-site-react 1.4.153 → 1.4.154
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/Validator.d.ts +3 -2
- package/dist/Validator.js +20 -2
- package/dist/Validator.js.map +1 -1
- package/dist/components/NSBoxDate.d.ts +3 -4
- package/dist/components/NSBoxDate.js +6 -9
- package/dist/components/NSBoxDate.js.map +1 -1
- package/dist/components/NSBoxDateTime.d.ts +4 -4
- package/dist/components/NSBoxDateTime.js +6 -5
- package/dist/components/NSBoxDateTime.js.map +1 -1
- package/dist/components/NSBoxTime.d.ts +4 -4
- package/dist/components/NSBoxTime.js +6 -5
- package/dist/components/NSBoxTime.js.map +1 -1
- package/package.json +1 -1
- package/src/Validator.ts +26 -4
- package/src/components/NSBoxDate.tsx +11 -15
- package/src/components/NSBoxDateTime.tsx +11 -10
- package/src/components/NSBoxTime.tsx +11 -10
package/dist/Validator.d.ts
CHANGED
|
@@ -6,8 +6,9 @@ export declare class Validator {
|
|
|
6
6
|
static getErrorString(name: string, value: string | null | undefined, validator: IValidationStringProps): string | null;
|
|
7
7
|
static getErrorNumber(name: string, value: number | null | undefined, validator: IValidationNumberProps): string | null;
|
|
8
8
|
static getErrorEmail(name: string, value: string | null | undefined, validator: IValidationProps): string | null;
|
|
9
|
-
static getErrorDate(name: string, value:
|
|
10
|
-
static getErrorTime(name: string, value:
|
|
9
|
+
static getErrorDate(name: string, value: Date | null | undefined): string | null;
|
|
10
|
+
static getErrorTime(name: string, value: Date | null | undefined): string | null;
|
|
11
|
+
static getErrorDateTime(name: string, value: Date | null | undefined): string | null;
|
|
11
12
|
static getErrorDuration(name: string, value: string | null | undefined): string | null;
|
|
12
13
|
static getErrorIPV4(name: string, value: string | null | undefined): string | null;
|
|
13
14
|
static getErrorIPV6(name: string, value: string | null | undefined): string | null;
|
package/dist/Validator.js
CHANGED
|
@@ -54,7 +54,12 @@ export class Validator {
|
|
|
54
54
|
});
|
|
55
55
|
}
|
|
56
56
|
static getErrorDate(name, value) {
|
|
57
|
-
|
|
57
|
+
if (value != null) {
|
|
58
|
+
const dateTime = new Date(value);
|
|
59
|
+
if (isNaN(dateTime.getTime()))
|
|
60
|
+
return `${value} is not a valid Date for ${name}.`;
|
|
61
|
+
}
|
|
62
|
+
return Validator.getError(name, value === null || value === void 0 ? void 0 : value.toLocaleDateString(), {
|
|
58
63
|
required: true, regex: {
|
|
59
64
|
name: "Date",
|
|
60
65
|
regex: DateSchema.REGEX
|
|
@@ -62,13 +67,26 @@ export class Validator {
|
|
|
62
67
|
});
|
|
63
68
|
}
|
|
64
69
|
static getErrorTime(name, value) {
|
|
65
|
-
|
|
70
|
+
if (value != null) {
|
|
71
|
+
const dateTime = new Date(value);
|
|
72
|
+
if (isNaN(dateTime.getTime()))
|
|
73
|
+
return `${value} is not a valid Time for ${name}.`;
|
|
74
|
+
}
|
|
75
|
+
return Validator.getError(name, value === null || value === void 0 ? void 0 : value.toLocaleTimeString(), {
|
|
66
76
|
required: true, regex: {
|
|
67
77
|
name: "Time",
|
|
68
78
|
regex: TimeSchema.REGEX
|
|
69
79
|
}
|
|
70
80
|
});
|
|
71
81
|
}
|
|
82
|
+
static getErrorDateTime(name, value) {
|
|
83
|
+
if (value != null) {
|
|
84
|
+
const dateTime = new Date(value);
|
|
85
|
+
if (isNaN(dateTime.getTime()))
|
|
86
|
+
return `${value} is not a valid DateTime for ${name}.`;
|
|
87
|
+
}
|
|
88
|
+
return null;
|
|
89
|
+
}
|
|
72
90
|
static getErrorDuration(name, value) {
|
|
73
91
|
return Validator.getError(name, value, {
|
|
74
92
|
required: true, regex: {
|
package/dist/Validator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Validator.js","sourceRoot":"","sources":["../src/Validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAIjD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEhH,MAAM,OAAO,SAAS;IAElB,MAAM,CAAC,QAAQ,CAAC,IAAY,EAAE,KAAyC,EAAE,SAA2B;QAEhG,IAAI,SAAS,CAAC,QAAQ;YAClB,IAAI,CAAC,KAAK;gBACN,OAAO,GAAG,IAAI,eAAe,CAAC;QACtC,IAAI,KAAK,IAAI,IAAI;YACb,IAAI,SAAS,CAAC,KAAK,EACnB,CAAC;gBACG,IAAI,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;oBACnD,OAAO,GAAG,IAAI,mBAAmB,SAAS,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC;YACjE,CAAC;QACL,IAAI,KAAK,IAAI,IAAI;YACb,IAAI,SAAS,CAAC,SAAS,EACvB,CAAC;gBACG,IAAI,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC7C,IAAI,KAAK;oBACL,OAAO,KAAK,CAAC;YACrB,CAAC;QACL,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,CAAC,cAAc,CAAC,IAAY,EAAE,KAAgC,EAAE,SAAiC;QAEnG,IAAI,KAAK,IAAI,IAAI,EACjB,CAAC;YACG,IAAI,SAAS,CAAC,UAAU,IAAI,IAAI;gBAC5B,IAAI,SAAS,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM;oBACnC,OAAO,iBAAiB,IAAI,cAAc,SAAS,CAAC,UAAU,cAAc,CAAC;YACrF,IAAI,SAAS,CAAC,UAAU,IAAI,IAAI;gBAC5B,IAAI,SAAS,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM;oBACnC,OAAO,gBAAgB,IAAI,cAAc,SAAS,CAAC,UAAU,cAAc,CAAC;QACxF,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,CAAC,cAAc,CAAC,IAAY,EAAE,KAAgC,EAAE,SAAiC;QAEnG,IAAI,KAAK,IAAI,IAAI,EACjB,CAAC;YACG,IAAI,KAAK,CAAC,KAAK,CAAC;gBACZ,OAAO,GAAG,IAAI,mBAAmB,CAAC;YACtC,IAAI,SAAS,CAAC,GAAG,IAAI,IAAI;gBACrB,IAAI,SAAS,CAAC,GAAG,GAAG,KAAK;oBACrB,OAAO,gBAAgB,IAAI,cAAc,SAAS,CAAC,GAAG,cAAc,CAAC;YAC7E,IAAI,SAAS,CAAC,GAAG,IAAI,IAAI;gBACrB,IAAI,SAAS,CAAC,GAAG,GAAG,KAAK;oBACrB,OAAO,gBAAgB,IAAI,cAAc,SAAS,CAAC,GAAG,cAAc,CAAC;QACjF,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,CAAC,aAAa,CAAC,IAAY,EAAE,KAAgC,EAAE,SAA2B;QAE5F,IAAI,CAAC,SAAS,CAAC,QAAQ;YACnB,IAAI,CAAC,KAAK;gBACN,OAAO,IAAI,CAAC;QACpB,OAAO,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE;YACnC,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE;gBACnB,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,WAAW,CAAC,KAAK;aAC3B;SACJ,CAAC,CAAC;IACP,CAAC;IACD,MAAM,CAAC,YAAY,CAAC,IAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"Validator.js","sourceRoot":"","sources":["../src/Validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,17 +3,16 @@ import "./NSBoxDate.module.css";
|
|
|
3
3
|
import { IBaseComponentProps } from "../props/IBaseComponentProps";
|
|
4
4
|
import { IValidationProps } from "../props/IValidationProps";
|
|
5
5
|
import { INSBoxBaseLayoutProps, NSBoxBaseLayout } from "./NSBoxBaseLayout";
|
|
6
|
-
export interface NSBoxDateProps extends IBaseComponentProps, IValidationProps, INSBoxBaseLayoutProps<
|
|
6
|
+
export interface NSBoxDateProps extends IBaseComponentProps, IValidationProps, INSBoxBaseLayoutProps<Date, NSBoxDate> {
|
|
7
7
|
}
|
|
8
8
|
export interface NSBoxDateState {
|
|
9
|
-
value:
|
|
9
|
+
value: Date;
|
|
10
10
|
}
|
|
11
11
|
export declare class NSBoxDate extends React.Component<NSBoxDateProps, NSBoxDateState> {
|
|
12
12
|
NSBoxBaseLayout_Main: React.RefObject<NSBoxBaseLayout>;
|
|
13
13
|
constructor(props: NSBoxDateProps);
|
|
14
14
|
getError(): string | null;
|
|
15
15
|
getValue(checkError?: boolean): Date;
|
|
16
|
-
setValue(value: string, callback?: () => void): void;
|
|
17
|
-
private onChanged;
|
|
16
|
+
setValue(value: string | Date, callback?: () => void): void;
|
|
18
17
|
render(): import("react/jsx-runtime").JSX.Element;
|
|
19
18
|
}
|
|
@@ -11,34 +11,31 @@ export class NSBoxDate extends React.Component {
|
|
|
11
11
|
var _a;
|
|
12
12
|
super(props);
|
|
13
13
|
this.NSBoxBaseLayout_Main = createRef();
|
|
14
|
-
this.state = { value: (_a = props.defaultValue) !== null && _a !== void 0 ? _a :
|
|
14
|
+
this.state = { value: (_a = props.defaultValue) !== null && _a !== void 0 ? _a : new Date() };
|
|
15
15
|
this.getError = this.getError.bind(this);
|
|
16
16
|
this.getValue = this.getValue.bind(this);
|
|
17
17
|
this.setValue = this.setValue.bind(this);
|
|
18
|
-
this.onChanged = this.onChanged.bind(this);
|
|
19
18
|
}
|
|
20
19
|
getError() {
|
|
21
|
-
return (Validator.getError(this.props.title, this.state.value, this.props) ||
|
|
20
|
+
return (Validator.getError(this.props.title, this.state.value.toLocaleDateString(), this.props) ||
|
|
22
21
|
Validator.getErrorDate(this.props.title, this.state.value));
|
|
23
22
|
}
|
|
24
23
|
getValue(checkError = true) {
|
|
25
|
-
return NSBoxBaseLayout.checkGetValue(this, checkError, () =>
|
|
24
|
+
return NSBoxBaseLayout.checkGetValue(this, checkError, () => this.state.value);
|
|
26
25
|
}
|
|
27
26
|
setValue(value, callback) {
|
|
28
|
-
|
|
27
|
+
let date_value = new Date(value);
|
|
28
|
+
this.setState({ value: date_value }, () => {
|
|
29
29
|
if (this.props.onChanged)
|
|
30
30
|
this.props.onChanged(this, callback);
|
|
31
31
|
else if (callback)
|
|
32
32
|
callback();
|
|
33
33
|
});
|
|
34
34
|
}
|
|
35
|
-
onChanged(e) {
|
|
36
|
-
this.setValue(e.target.value);
|
|
37
|
-
}
|
|
38
35
|
render() {
|
|
39
36
|
let menu = safeMenuMenuItem(this.props, () => { });
|
|
40
37
|
menu.builtin.fullscreen = false;
|
|
41
|
-
return (_jsx(NSBoxBaseLayout, Object.assign({ ref: this.NSBoxBaseLayout_Main }, this.props, { getValue: () => this.state.value, setValue: this.setValue, menu: menu, children: _jsx("input", { id: this.props.id, name: this.props.name, type: "date", className: StylesNSBox.ns_box_input, placeholder: this.props.placeholder, value: this.state.value, onChange: this.
|
|
38
|
+
return (_jsx(NSBoxBaseLayout, Object.assign({ ref: this.NSBoxBaseLayout_Main }, this.props, { getValue: () => this.state.value.toLocaleDateString(), setValue: this.setValue, menu: menu, children: _jsx("input", { id: this.props.id, name: this.props.name, type: "date", className: StylesNSBox.ns_box_input, placeholder: this.props.placeholder, value: this.state.value.toLocaleDateString(), onChange: e => this.setValue(e.target.value), onClick: () => { if (this.props.onClicked)
|
|
42
39
|
this.props.onClicked(this); }, style: {
|
|
43
40
|
background: `url("https://static.namirasoft.com/image/concept/type/date.png") white no-repeat scroll center right 4px`,
|
|
44
41
|
backgroundSize: "24px",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSBoxDate.js","sourceRoot":"","sources":["../../src/components/NSBoxDate.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,wBAAwB,CAAC;AAChC,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAG7C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAyB,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAU3E,MAAM,OAAO,SAAU,SAAQ,KAAK,CAAC,SAAyC;IAG7E,YAAY,KAAqB;;QAEhC,KAAK,CAAC,KAAK,CAAC,CAAC;QAHd,yBAAoB,GAAG,SAAS,EAAmB,CAAC;QAInD,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,MAAA,KAAK,CAAC,YAAY,mCAAI,EAAE,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"NSBoxDate.js","sourceRoot":"","sources":["../../src/components/NSBoxDate.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,17 +3,17 @@ import "./NSBoxDateTime.module.css";
|
|
|
3
3
|
import { IBaseComponentProps } from "../props/IBaseComponentProps";
|
|
4
4
|
import { IValidationProps } from "../props/IValidationProps";
|
|
5
5
|
import { INSBoxBaseLayoutProps, NSBoxBaseLayout } from "./NSBoxBaseLayout";
|
|
6
|
-
export interface NSBoxDateTimeProps extends IBaseComponentProps, IValidationProps, INSBoxBaseLayoutProps<
|
|
6
|
+
export interface NSBoxDateTimeProps extends IBaseComponentProps, IValidationProps, INSBoxBaseLayoutProps<Date, NSBoxDateTime> {
|
|
7
7
|
}
|
|
8
8
|
export interface NSBoxDateTimeState {
|
|
9
|
-
value:
|
|
9
|
+
value: Date;
|
|
10
10
|
}
|
|
11
11
|
export declare class NSBoxDateTime extends React.Component<NSBoxDateTimeProps, NSBoxDateTimeState> {
|
|
12
12
|
NSBoxBaseLayout_Main: React.RefObject<NSBoxBaseLayout>;
|
|
13
13
|
constructor(props: NSBoxDateTimeProps);
|
|
14
14
|
getError(): string | null;
|
|
15
|
-
getValue(checkError?: boolean):
|
|
16
|
-
setValue(value: string, callback?: () => void): void;
|
|
15
|
+
getValue(checkError?: boolean): Date;
|
|
16
|
+
setValue(value: string | Date, callback?: () => void): void;
|
|
17
17
|
private onChanged;
|
|
18
18
|
render(): import("react/jsx-runtime").JSX.Element;
|
|
19
19
|
}
|
|
@@ -11,21 +11,22 @@ export class NSBoxDateTime extends React.Component {
|
|
|
11
11
|
var _a;
|
|
12
12
|
super(props);
|
|
13
13
|
this.NSBoxBaseLayout_Main = createRef();
|
|
14
|
-
this.state = { value: (_a = props.defaultValue) !== null && _a !== void 0 ? _a :
|
|
14
|
+
this.state = { value: (_a = props.defaultValue) !== null && _a !== void 0 ? _a : new Date() };
|
|
15
15
|
this.getError = this.getError.bind(this);
|
|
16
16
|
this.getValue = this.getValue.bind(this);
|
|
17
17
|
this.setValue = this.setValue.bind(this);
|
|
18
18
|
this.onChanged = this.onChanged.bind(this);
|
|
19
19
|
}
|
|
20
20
|
getError() {
|
|
21
|
-
return (Validator.getError(this.props.title, this.state.value, this.props) ||
|
|
22
|
-
Validator.
|
|
21
|
+
return (Validator.getError(this.props.title, this.state.value.toLocaleString(), this.props) ||
|
|
22
|
+
Validator.getErrorDateTime(this.props.title, this.state.value));
|
|
23
23
|
}
|
|
24
24
|
getValue(checkError = true) {
|
|
25
25
|
return NSBoxBaseLayout.checkGetValue(this, checkError, () => this.state.value);
|
|
26
26
|
}
|
|
27
27
|
setValue(value, callback) {
|
|
28
|
-
|
|
28
|
+
let value_date = new Date(value);
|
|
29
|
+
this.setState({ value: value_date }, () => {
|
|
29
30
|
if (this.props.onChanged)
|
|
30
31
|
this.props.onChanged(this, callback);
|
|
31
32
|
else if (callback)
|
|
@@ -38,7 +39,7 @@ export class NSBoxDateTime extends React.Component {
|
|
|
38
39
|
render() {
|
|
39
40
|
let menu = safeMenuMenuItem(this.props, () => { });
|
|
40
41
|
menu.builtin.fullscreen = false;
|
|
41
|
-
return (_jsx(NSBoxBaseLayout, Object.assign({ ref: this.NSBoxBaseLayout_Main }, this.props, { getValue: () => this.state.value, setValue: this.setValue, menu: menu, children: _jsx("input", { id: this.props.id, name: this.props.name, type: "datetime-local", className: StylesNSBox.ns_box_input, placeholder: this.props.placeholder, value: this.state.value, onChange: this.onChanged, onClick: () => { if (this.props.onClicked)
|
|
42
|
+
return (_jsx(NSBoxBaseLayout, Object.assign({ ref: this.NSBoxBaseLayout_Main }, this.props, { getValue: () => this.state.value.toLocaleString(), setValue: this.setValue, menu: menu, children: _jsx("input", { id: this.props.id, name: this.props.name, type: "datetime-local", className: StylesNSBox.ns_box_input, placeholder: this.props.placeholder, value: this.state.value.toLocaleString(), onChange: this.onChanged, onClick: () => { if (this.props.onClicked)
|
|
42
43
|
this.props.onClicked(this); }, style: {
|
|
43
44
|
background: `url("https://static.namirasoft.com/image/concept/type/date-time.png") white no-repeat scroll center right 4px`,
|
|
44
45
|
backgroundSize: "24px",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSBoxDateTime.js","sourceRoot":"","sources":["../../src/components/NSBoxDateTime.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,4BAA4B,CAAC;AACpC,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAG7C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAyB,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAU3E,MAAM,OAAO,aAAc,SAAQ,KAAK,CAAC,SAAiD;IAGzF,YAAY,KAAyB;;QAEpC,KAAK,CAAC,KAAK,CAAC,CAAC;QAHd,yBAAoB,GAAG,SAAS,EAAmB,CAAC;QAInD,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,MAAA,KAAK,CAAC,YAAY,mCAAI,EAAE,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"NSBoxDateTime.js","sourceRoot":"","sources":["../../src/components/NSBoxDateTime.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,16 +4,16 @@ import { IBaseComponentProps } from "../props/IBaseComponentProps";
|
|
|
4
4
|
import { IValidationProps } from "../props/IValidationProps";
|
|
5
5
|
import { IValidationStringProps } from "../props/IValidationStringProps";
|
|
6
6
|
import { INSBoxBaseLayoutProps, NSBoxBaseLayout } from "./NSBoxBaseLayout";
|
|
7
|
-
export interface NSBoxTimeProps extends IBaseComponentProps, IValidationProps, IValidationStringProps, INSBoxBaseLayoutProps<
|
|
7
|
+
export interface NSBoxTimeProps extends IBaseComponentProps, IValidationProps, IValidationStringProps, INSBoxBaseLayoutProps<Date, NSBoxTime> {
|
|
8
8
|
}
|
|
9
9
|
export interface NSBoxTimeState {
|
|
10
|
-
value:
|
|
10
|
+
value: Date;
|
|
11
11
|
}
|
|
12
12
|
export declare class NSBoxTime extends React.Component<NSBoxTimeProps, NSBoxTimeState> {
|
|
13
13
|
NSBoxBaseLayout_Main: React.RefObject<NSBoxBaseLayout>;
|
|
14
14
|
constructor(props: NSBoxTimeProps);
|
|
15
15
|
getError(): string | null;
|
|
16
|
-
getValue(checkError?: boolean):
|
|
17
|
-
setValue(value: string, callback?: () => void): void;
|
|
16
|
+
getValue(checkError?: boolean): Date;
|
|
17
|
+
setValue(value: string | Date, callback?: () => void): void;
|
|
18
18
|
render(): import("react/jsx-runtime").JSX.Element;
|
|
19
19
|
}
|
|
@@ -11,21 +11,22 @@ export class NSBoxTime extends React.Component {
|
|
|
11
11
|
var _a;
|
|
12
12
|
super(props);
|
|
13
13
|
this.NSBoxBaseLayout_Main = createRef();
|
|
14
|
-
this.state = { value: (_a = props.defaultValue) !== null && _a !== void 0 ? _a :
|
|
14
|
+
this.state = { value: (_a = props.defaultValue) !== null && _a !== void 0 ? _a : new Date() };
|
|
15
15
|
this.getError = this.getError.bind(this);
|
|
16
16
|
this.getValue = this.getValue.bind(this);
|
|
17
17
|
this.setValue = this.setValue.bind(this);
|
|
18
18
|
}
|
|
19
19
|
getError() {
|
|
20
|
-
return (Validator.getError(this.props.title, this.state.value, this.props) ||
|
|
21
|
-
Validator.getErrorString(this.props.title, this.state.value, this.props) ||
|
|
20
|
+
return (Validator.getError(this.props.title, this.state.value.toLocaleTimeString(), this.props) ||
|
|
21
|
+
Validator.getErrorString(this.props.title, this.state.value.toLocaleTimeString(), this.props) ||
|
|
22
22
|
Validator.getErrorTime(this.props.title, this.state.value));
|
|
23
23
|
}
|
|
24
24
|
getValue(checkError = true) {
|
|
25
25
|
return NSBoxBaseLayout.checkGetValue(this, checkError, () => this.state.value);
|
|
26
26
|
}
|
|
27
27
|
setValue(value, callback) {
|
|
28
|
-
|
|
28
|
+
let value_date = new Date(value);
|
|
29
|
+
this.setState({ value: value_date }, () => {
|
|
29
30
|
if (this.props.onChanged)
|
|
30
31
|
this.props.onChanged(this, callback);
|
|
31
32
|
else if (callback)
|
|
@@ -35,7 +36,7 @@ export class NSBoxTime extends React.Component {
|
|
|
35
36
|
render() {
|
|
36
37
|
let menu = safeMenuMenuItem(this.props, () => { });
|
|
37
38
|
menu.builtin.fullscreen = false;
|
|
38
|
-
return (_jsx(NSBoxBaseLayout, Object.assign({ ref: this.NSBoxBaseLayout_Main }, this.props, { getValue: () =>
|
|
39
|
+
return (_jsx(NSBoxBaseLayout, Object.assign({ ref: this.NSBoxBaseLayout_Main }, this.props, { getValue: () => this.state.value.toLocaleTimeString(), setValue: () => { }, children: _jsx("input", { id: this.props.id, name: this.props.name, type: "time", className: StylesNSBox.ns_box_input, placeholder: this.props.placeholder, value: this.state.value.toLocaleTimeString(), onChange: e => this.setValue(e.target.value), onClick: () => { if (this.props.onClicked)
|
|
39
40
|
this.props.onClicked(this); }, step: "5", style: {
|
|
40
41
|
background: `url("https://static.namirasoft.com/image/concept/type/time.png") white no-repeat scroll center right 4px`,
|
|
41
42
|
backgroundSize: "24px",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSBoxTime.js","sourceRoot":"","sources":["../../src/components/NSBoxTime.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,wBAAwB,CAAA;AAC/B,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAI7C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAyB,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAUlD,MAAM,OAAO,SAAU,SAAQ,KAAK,CAAC,SAAyC;IAG7E,YAAY,KAAqB;;QAEhC,KAAK,CAAC,KAAK,CAAC,CAAC;QAHd,yBAAoB,GAAG,SAAS,EAAmB,CAAC;QAInD,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,MAAA,KAAK,CAAC,YAAY,mCAAI,EAAE,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"NSBoxTime.js","sourceRoot":"","sources":["../../src/components/NSBoxTime.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/Validator.ts
CHANGED
|
@@ -66,24 +66,46 @@ export class Validator
|
|
|
66
66
|
}
|
|
67
67
|
});
|
|
68
68
|
}
|
|
69
|
-
static getErrorDate(name: string, value:
|
|
69
|
+
static getErrorDate(name: string, value: Date | null | undefined): string | null
|
|
70
70
|
{
|
|
71
|
-
|
|
71
|
+
if (value != null)
|
|
72
|
+
{
|
|
73
|
+
const dateTime = new Date(value);
|
|
74
|
+
if (isNaN(dateTime.getTime()))
|
|
75
|
+
return `${value} is not a valid Date for ${name}.`;
|
|
76
|
+
}
|
|
77
|
+
return Validator.getError(name, value?.toLocaleDateString(), {
|
|
72
78
|
required: true, regex: {
|
|
73
79
|
name: "Date",
|
|
74
80
|
regex: DateSchema.REGEX
|
|
75
81
|
}
|
|
76
82
|
});
|
|
77
83
|
}
|
|
78
|
-
static getErrorTime(name: string, value:
|
|
84
|
+
static getErrorTime(name: string, value: Date | null | undefined): string | null
|
|
79
85
|
{
|
|
80
|
-
|
|
86
|
+
if (value != null)
|
|
87
|
+
{
|
|
88
|
+
const dateTime = new Date(value);
|
|
89
|
+
if (isNaN(dateTime.getTime()))
|
|
90
|
+
return `${value} is not a valid Time for ${name}.`;
|
|
91
|
+
}
|
|
92
|
+
return Validator.getError(name, value?.toLocaleTimeString(), {
|
|
81
93
|
required: true, regex: {
|
|
82
94
|
name: "Time",
|
|
83
95
|
regex: TimeSchema.REGEX
|
|
84
96
|
}
|
|
85
97
|
});
|
|
86
98
|
}
|
|
99
|
+
static getErrorDateTime(name: string, value: Date | null | undefined): string | null
|
|
100
|
+
{
|
|
101
|
+
if (value != null)
|
|
102
|
+
{
|
|
103
|
+
const dateTime = new Date(value);
|
|
104
|
+
if (isNaN(dateTime.getTime()))
|
|
105
|
+
return `${value} is not a valid DateTime for ${name}.`;
|
|
106
|
+
}
|
|
107
|
+
return null;
|
|
108
|
+
}
|
|
87
109
|
static getErrorDuration(name: string, value: string | null | undefined): string | null
|
|
88
110
|
{
|
|
89
111
|
return Validator.getError(name, value, {
|
|
@@ -9,12 +9,12 @@ import { Validator } from "../Validator";
|
|
|
9
9
|
import { safeMenuMenuItem } from "./NSMenuButton";
|
|
10
10
|
import { INSBoxBaseLayoutProps, NSBoxBaseLayout } from "./NSBoxBaseLayout";
|
|
11
11
|
|
|
12
|
-
export interface NSBoxDateProps extends IBaseComponentProps, IValidationProps, INSBoxBaseLayoutProps<
|
|
12
|
+
export interface NSBoxDateProps extends IBaseComponentProps, IValidationProps, INSBoxBaseLayoutProps<Date, NSBoxDate>
|
|
13
13
|
{ }
|
|
14
14
|
|
|
15
15
|
export interface NSBoxDateState
|
|
16
16
|
{
|
|
17
|
-
value:
|
|
17
|
+
value: Date;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
export class NSBoxDate extends React.Component<NSBoxDateProps, NSBoxDateState>
|
|
@@ -23,26 +23,26 @@ export class NSBoxDate extends React.Component<NSBoxDateProps, NSBoxDateState>
|
|
|
23
23
|
constructor(props: NSBoxDateProps)
|
|
24
24
|
{
|
|
25
25
|
super(props);
|
|
26
|
-
this.state = { value: props.defaultValue ??
|
|
26
|
+
this.state = { value: props.defaultValue ?? new Date() };
|
|
27
27
|
this.getError = this.getError.bind(this);
|
|
28
28
|
this.getValue = this.getValue.bind(this);
|
|
29
29
|
this.setValue = this.setValue.bind(this);
|
|
30
|
-
this.onChanged = this.onChanged.bind(this);
|
|
31
30
|
}
|
|
32
31
|
getError(): string | null
|
|
33
32
|
{
|
|
34
33
|
return (
|
|
35
|
-
Validator.getError(this.props.title, this.state.value, this.props) ||
|
|
34
|
+
Validator.getError(this.props.title, this.state.value.toLocaleDateString(), this.props) ||
|
|
36
35
|
Validator.getErrorDate(this.props.title, this.state.value)
|
|
37
36
|
);
|
|
38
37
|
}
|
|
39
38
|
getValue(checkError: boolean = true): Date
|
|
40
39
|
{
|
|
41
|
-
return NSBoxBaseLayout.checkGetValue(this, checkError, () =>
|
|
40
|
+
return NSBoxBaseLayout.checkGetValue(this, checkError, () => this.state.value);
|
|
42
41
|
}
|
|
43
|
-
setValue(value: string, callback?: () => void): void
|
|
42
|
+
setValue(value: string | Date, callback?: () => void): void
|
|
44
43
|
{
|
|
45
|
-
|
|
44
|
+
let date_value = new Date(value);
|
|
45
|
+
this.setState({ value: date_value }, () =>
|
|
46
46
|
{
|
|
47
47
|
if (this.props.onChanged)
|
|
48
48
|
this.props.onChanged(this, callback);
|
|
@@ -50,10 +50,6 @@ export class NSBoxDate extends React.Component<NSBoxDateProps, NSBoxDateState>
|
|
|
50
50
|
callback();
|
|
51
51
|
});
|
|
52
52
|
}
|
|
53
|
-
private onChanged(e: React.ChangeEvent<HTMLInputElement>): void
|
|
54
|
-
{
|
|
55
|
-
this.setValue(e.target.value);
|
|
56
|
-
}
|
|
57
53
|
override render()
|
|
58
54
|
{
|
|
59
55
|
let menu = safeMenuMenuItem(this.props, () => { });
|
|
@@ -63,7 +59,7 @@ export class NSBoxDate extends React.Component<NSBoxDateProps, NSBoxDateState>
|
|
|
63
59
|
<NSBoxBaseLayout
|
|
64
60
|
ref={this.NSBoxBaseLayout_Main}
|
|
65
61
|
{...this.props}
|
|
66
|
-
getValue={() => this.state.value}
|
|
62
|
+
getValue={() => this.state.value.toLocaleDateString()}
|
|
67
63
|
setValue={this.setValue}
|
|
68
64
|
menu={menu}
|
|
69
65
|
>
|
|
@@ -73,8 +69,8 @@ export class NSBoxDate extends React.Component<NSBoxDateProps, NSBoxDateState>
|
|
|
73
69
|
type="date"
|
|
74
70
|
className={StylesNSBox.ns_box_input}
|
|
75
71
|
placeholder={this.props.placeholder}
|
|
76
|
-
value={this.state.value}
|
|
77
|
-
onChange={this.
|
|
72
|
+
value={this.state.value.toLocaleDateString()}
|
|
73
|
+
onChange={e => this.setValue(e.target.value)}
|
|
78
74
|
onClick={() => { if (this.props.onClicked) this.props.onClicked(this); }}
|
|
79
75
|
style={{
|
|
80
76
|
background: `url("https://static.namirasoft.com/image/concept/type/date.png") white no-repeat scroll center right 4px`,
|
|
@@ -9,12 +9,12 @@ import { Validator } from "../Validator";
|
|
|
9
9
|
import { safeMenuMenuItem } from "./NSMenuButton";
|
|
10
10
|
import { INSBoxBaseLayoutProps, NSBoxBaseLayout } from "./NSBoxBaseLayout";
|
|
11
11
|
|
|
12
|
-
export interface NSBoxDateTimeProps extends IBaseComponentProps, IValidationProps, INSBoxBaseLayoutProps<
|
|
12
|
+
export interface NSBoxDateTimeProps extends IBaseComponentProps, IValidationProps, INSBoxBaseLayoutProps<Date, NSBoxDateTime>
|
|
13
13
|
{ }
|
|
14
14
|
|
|
15
15
|
export interface NSBoxDateTimeState
|
|
16
16
|
{
|
|
17
|
-
value:
|
|
17
|
+
value: Date;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
export class NSBoxDateTime extends React.Component<NSBoxDateTimeProps, NSBoxDateTimeState>
|
|
@@ -23,7 +23,7 @@ export class NSBoxDateTime extends React.Component<NSBoxDateTimeProps, NSBoxDate
|
|
|
23
23
|
constructor(props: NSBoxDateTimeProps)
|
|
24
24
|
{
|
|
25
25
|
super(props);
|
|
26
|
-
this.state = { value: props.defaultValue ??
|
|
26
|
+
this.state = { value: props.defaultValue ?? new Date() };
|
|
27
27
|
this.getError = this.getError.bind(this);
|
|
28
28
|
this.getValue = this.getValue.bind(this);
|
|
29
29
|
this.setValue = this.setValue.bind(this);
|
|
@@ -32,17 +32,18 @@ export class NSBoxDateTime extends React.Component<NSBoxDateTimeProps, NSBoxDate
|
|
|
32
32
|
getError(): string | null
|
|
33
33
|
{
|
|
34
34
|
return (
|
|
35
|
-
Validator.getError(this.props.title, this.state.value, this.props) ||
|
|
36
|
-
Validator.
|
|
35
|
+
Validator.getError(this.props.title, this.state.value.toLocaleString(), this.props) ||
|
|
36
|
+
Validator.getErrorDateTime(this.props.title, this.state.value)
|
|
37
37
|
);
|
|
38
38
|
}
|
|
39
|
-
getValue(checkError: boolean = true):
|
|
39
|
+
getValue(checkError: boolean = true): Date
|
|
40
40
|
{
|
|
41
41
|
return NSBoxBaseLayout.checkGetValue(this, checkError, () => this.state.value);
|
|
42
42
|
}
|
|
43
|
-
setValue(value: string, callback?: () => void): void
|
|
43
|
+
setValue(value: string | Date, callback?: () => void): void
|
|
44
44
|
{
|
|
45
|
-
|
|
45
|
+
let value_date = new Date(value);
|
|
46
|
+
this.setState({ value: value_date }, () =>
|
|
46
47
|
{
|
|
47
48
|
if (this.props.onChanged)
|
|
48
49
|
this.props.onChanged(this, callback);
|
|
@@ -63,7 +64,7 @@ export class NSBoxDateTime extends React.Component<NSBoxDateTimeProps, NSBoxDate
|
|
|
63
64
|
<NSBoxBaseLayout
|
|
64
65
|
ref={this.NSBoxBaseLayout_Main}
|
|
65
66
|
{...this.props}
|
|
66
|
-
getValue={() => this.state.value}
|
|
67
|
+
getValue={() => this.state.value.toLocaleString()}
|
|
67
68
|
setValue={this.setValue}
|
|
68
69
|
menu={menu}
|
|
69
70
|
>
|
|
@@ -73,7 +74,7 @@ export class NSBoxDateTime extends React.Component<NSBoxDateTimeProps, NSBoxDate
|
|
|
73
74
|
type="datetime-local"
|
|
74
75
|
className={StylesNSBox.ns_box_input}
|
|
75
76
|
placeholder={this.props.placeholder}
|
|
76
|
-
value={this.state.value}
|
|
77
|
+
value={this.state.value.toLocaleString()}
|
|
77
78
|
onChange={this.onChanged}
|
|
78
79
|
onClick={() => { if (this.props.onClicked) this.props.onClicked(this); }}
|
|
79
80
|
style={{
|
|
@@ -10,12 +10,12 @@ import { Validator } from "../Validator";
|
|
|
10
10
|
import { INSBoxBaseLayoutProps, NSBoxBaseLayout } from "./NSBoxBaseLayout";
|
|
11
11
|
import { safeMenuMenuItem } from "./NSMenuButton";
|
|
12
12
|
|
|
13
|
-
export interface NSBoxTimeProps extends IBaseComponentProps, IValidationProps, IValidationStringProps, INSBoxBaseLayoutProps<
|
|
13
|
+
export interface NSBoxTimeProps extends IBaseComponentProps, IValidationProps, IValidationStringProps, INSBoxBaseLayoutProps<Date, NSBoxTime>
|
|
14
14
|
{ }
|
|
15
15
|
|
|
16
16
|
export interface NSBoxTimeState
|
|
17
17
|
{
|
|
18
|
-
value:
|
|
18
|
+
value: Date;
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
export class NSBoxTime extends React.Component<NSBoxTimeProps, NSBoxTimeState>
|
|
@@ -24,7 +24,7 @@ export class NSBoxTime extends React.Component<NSBoxTimeProps, NSBoxTimeState>
|
|
|
24
24
|
constructor(props: NSBoxTimeProps)
|
|
25
25
|
{
|
|
26
26
|
super(props);
|
|
27
|
-
this.state = { value: props.defaultValue ??
|
|
27
|
+
this.state = { value: props.defaultValue ?? new Date() };
|
|
28
28
|
this.getError = this.getError.bind(this);
|
|
29
29
|
this.getValue = this.getValue.bind(this);
|
|
30
30
|
this.setValue = this.setValue.bind(this);
|
|
@@ -32,18 +32,19 @@ export class NSBoxTime extends React.Component<NSBoxTimeProps, NSBoxTimeState>
|
|
|
32
32
|
getError(): string | null
|
|
33
33
|
{
|
|
34
34
|
return (
|
|
35
|
-
Validator.getError(this.props.title, this.state.value, this.props) ||
|
|
36
|
-
Validator.getErrorString(this.props.title, this.state.value, this.props) ||
|
|
35
|
+
Validator.getError(this.props.title, this.state.value.toLocaleTimeString(), this.props) ||
|
|
36
|
+
Validator.getErrorString(this.props.title, this.state.value.toLocaleTimeString(), this.props) ||
|
|
37
37
|
Validator.getErrorTime(this.props.title, this.state.value)
|
|
38
38
|
);
|
|
39
39
|
}
|
|
40
|
-
getValue(checkError: boolean = true):
|
|
40
|
+
getValue(checkError: boolean = true): Date
|
|
41
41
|
{
|
|
42
42
|
return NSBoxBaseLayout.checkGetValue(this, checkError, () => this.state.value);
|
|
43
43
|
}
|
|
44
|
-
setValue(value: string, callback?: () => void): void
|
|
44
|
+
setValue(value: string | Date, callback?: () => void): void
|
|
45
45
|
{
|
|
46
|
-
|
|
46
|
+
let value_date = new Date(value);
|
|
47
|
+
this.setState({ value: value_date }, () =>
|
|
47
48
|
{
|
|
48
49
|
if (this.props.onChanged)
|
|
49
50
|
this.props.onChanged(this, callback);
|
|
@@ -60,7 +61,7 @@ export class NSBoxTime extends React.Component<NSBoxTimeProps, NSBoxTimeState>
|
|
|
60
61
|
<NSBoxBaseLayout
|
|
61
62
|
ref={this.NSBoxBaseLayout_Main}
|
|
62
63
|
{...this.props}
|
|
63
|
-
getValue={() => this.state.value
|
|
64
|
+
getValue={() => this.state.value.toLocaleTimeString()}
|
|
64
65
|
setValue={() => { }}
|
|
65
66
|
>
|
|
66
67
|
<input
|
|
@@ -69,7 +70,7 @@ export class NSBoxTime extends React.Component<NSBoxTimeProps, NSBoxTimeState>
|
|
|
69
70
|
type="time"
|
|
70
71
|
className={StylesNSBox.ns_box_input}
|
|
71
72
|
placeholder={this.props.placeholder}
|
|
72
|
-
value={this.state.value}
|
|
73
|
+
value={this.state.value.toLocaleTimeString()}
|
|
73
74
|
onChange={e => this.setValue(e.target.value)}
|
|
74
75
|
onClick={() => { if (this.props.onClicked) this.props.onClicked(this); }}
|
|
75
76
|
step="5"
|