@semcore/time-picker 16.2.0-prerelease.1 → 16.2.0
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/lib/cjs/component/PickerFormat/PickerFormat.js +93 -0
- package/lib/cjs/component/PickerFormat/PickerFormat.js.map +1 -0
- package/lib/cjs/component/PickerFormat/PickerFormat.type.js +2 -0
- package/lib/cjs/component/PickerFormat/PickerFormat.type.js.map +1 -0
- package/lib/cjs/{style/time-picker.shadow.css → component/PickerFormat/picker-format.shadow.css} +1 -56
- package/lib/cjs/{PickerInput.js → component/PickerInput/PickerInput.js} +72 -82
- package/lib/cjs/component/PickerInput/PickerInput.js.map +1 -0
- package/lib/cjs/component/PickerInput/PickerInput.type.js +2 -0
- package/lib/cjs/component/PickerInput/PickerInput.type.js.map +1 -0
- package/lib/cjs/component/PickerInput/picker-input.shadow.css +11 -0
- package/lib/cjs/component/TimePicker/TimePicker.js +254 -0
- package/lib/cjs/component/TimePicker/TimePicker.js.map +1 -0
- package/lib/cjs/component/TimePicker/TimePicker.type.js +2 -0
- package/lib/cjs/component/TimePicker/TimePicker.type.js.map +1 -0
- package/lib/cjs/component/TimePicker/time-picker.shadow.css +34 -0
- package/lib/cjs/entity/TimePickerEntity.js +101 -0
- package/lib/cjs/entity/TimePickerEntity.js.map +1 -0
- package/lib/cjs/index.js +6 -5
- package/lib/cjs/index.js.map +1 -1
- package/lib/es6/component/PickerFormat/PickerFormat.js +88 -0
- package/lib/es6/component/PickerFormat/PickerFormat.js.map +1 -0
- package/lib/es6/component/PickerFormat/PickerFormat.type.js +2 -0
- package/lib/es6/component/PickerFormat/PickerFormat.type.js.map +1 -0
- package/lib/{esm/style/time-picker.shadow.css → es6/component/PickerFormat/picker-format.shadow.css} +1 -56
- package/lib/es6/{PickerInput.js → component/PickerInput/PickerInput.js} +73 -82
- package/lib/es6/component/PickerInput/PickerInput.js.map +1 -0
- package/lib/es6/component/PickerInput/PickerInput.type.js +2 -0
- package/lib/es6/component/PickerInput/PickerInput.type.js.map +1 -0
- package/lib/es6/component/PickerInput/picker-input.shadow.css +11 -0
- package/lib/es6/component/TimePicker/TimePicker.js +250 -0
- package/lib/es6/component/TimePicker/TimePicker.js.map +1 -0
- package/lib/es6/component/TimePicker/TimePicker.type.js +2 -0
- package/lib/es6/component/TimePicker/TimePicker.type.js.map +1 -0
- package/lib/es6/component/TimePicker/time-picker.shadow.css +34 -0
- package/lib/es6/entity/TimePickerEntity.js +94 -0
- package/lib/es6/entity/TimePickerEntity.js.map +1 -0
- package/lib/es6/index.js +2 -2
- package/lib/es6/index.js.map +1 -1
- package/lib/esm/component/PickerFormat/PickerFormat.mjs +86 -0
- package/lib/{es6/style/time-picker.shadow.css → esm/component/PickerFormat/picker-format.shadow.css} +1 -56
- package/lib/esm/{PickerInput.mjs → component/PickerInput/PickerInput.mjs} +75 -76
- package/lib/esm/component/PickerInput/picker-input.shadow.css +11 -0
- package/lib/esm/component/TimePicker/TimePicker.mjs +233 -0
- package/lib/esm/component/TimePicker/TimePicker.type.mjs +1 -0
- package/lib/esm/component/TimePicker/time-picker.shadow.css +34 -0
- package/lib/esm/entity/TimePickerEntity.mjs +90 -0
- package/lib/esm/index.mjs +3 -7
- package/lib/types/component/PickerFormat/PickerFormat.d.ts +17 -0
- package/lib/types/component/PickerFormat/PickerFormat.type.d.ts +16 -0
- package/lib/types/component/PickerInput/PickerInput.d.ts +54 -0
- package/lib/types/component/PickerInput/PickerInput.type.d.ts +13 -0
- package/lib/types/component/TimePicker/TimePicker.d.ts +3 -0
- package/lib/types/component/TimePicker/TimePicker.type.d.ts +50 -0
- package/lib/types/entity/TimePickerEntity.d.ts +22 -0
- package/lib/types/index.d.ts +2 -63
- package/lib/types/translations/__intergalactic-dynamic-locales.d.ts +114 -0
- package/package.json +7 -7
- package/lib/cjs/PickerFormat.js +0 -81
- package/lib/cjs/PickerFormat.js.map +0 -1
- package/lib/cjs/PickerInput.js.map +0 -1
- package/lib/cjs/TimePicker.js +0 -348
- package/lib/cjs/TimePicker.js.map +0 -1
- package/lib/cjs/index.d.js +0 -2
- package/lib/cjs/index.d.js.map +0 -1
- package/lib/es6/PickerFormat.js +0 -75
- package/lib/es6/PickerFormat.js.map +0 -1
- package/lib/es6/PickerInput.js.map +0 -1
- package/lib/es6/TimePicker.js +0 -339
- package/lib/es6/TimePicker.js.map +0 -1
- package/lib/es6/index.d.js +0 -2
- package/lib/es6/index.d.js.map +0 -1
- package/lib/esm/PickerFormat.mjs +0 -67
- package/lib/esm/TimePicker.mjs +0 -297
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
2
|
+
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
3
|
+
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
4
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
5
|
+
var TimePickerEntity = /* @__PURE__ */ (function() {
|
|
6
|
+
function TimePickerEntity2() {
|
|
7
|
+
var value = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : ":";
|
|
8
|
+
var is12Hour = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
|
|
9
|
+
_classCallCheck(this, TimePickerEntity2);
|
|
10
|
+
_defineProperty(this, "_hours", "");
|
|
11
|
+
_defineProperty(this, "_minutes", "");
|
|
12
|
+
_defineProperty(this, "_is12Hour", void 0);
|
|
13
|
+
_defineProperty(this, "_meridiem", "AM");
|
|
14
|
+
var _value$split = value.split(":"), _value$split2 = _slicedToArray(_value$split, 2), _value$split2$ = _value$split2[0], hours = _value$split2$ === void 0 ? "" : _value$split2$, _value$split2$2 = _value$split2[1], minutes = _value$split2$2 === void 0 ? "" : _value$split2$2;
|
|
15
|
+
this._is12Hour = is12Hour;
|
|
16
|
+
this._hours = hours;
|
|
17
|
+
this._minutes = minutes;
|
|
18
|
+
}
|
|
19
|
+
return _createClass(TimePickerEntity2, [{
|
|
20
|
+
key: "meridiem",
|
|
21
|
+
get: function get() {
|
|
22
|
+
return this._meridiem;
|
|
23
|
+
},
|
|
24
|
+
set: function set(newMeridiem) {
|
|
25
|
+
this._meridiem = newMeridiem;
|
|
26
|
+
}
|
|
27
|
+
}, {
|
|
28
|
+
key: "hours",
|
|
29
|
+
get: function get() {
|
|
30
|
+
return this._is12Hour ? this.formatHoursTo12(this._hours) : this.formatHoursTo24(this._hours);
|
|
31
|
+
},
|
|
32
|
+
set: function set(newHours) {
|
|
33
|
+
this._hours = newHours;
|
|
34
|
+
}
|
|
35
|
+
}, {
|
|
36
|
+
key: "minutes",
|
|
37
|
+
get: function get() {
|
|
38
|
+
return this._minutes && this.withLeadingZero(this._minutes);
|
|
39
|
+
},
|
|
40
|
+
set: function set(newMinutes) {
|
|
41
|
+
this._minutes = newMinutes;
|
|
42
|
+
}
|
|
43
|
+
}, {
|
|
44
|
+
key: "is12Hour",
|
|
45
|
+
set: function set(newIs12Hour) {
|
|
46
|
+
this._is12Hour = newIs12Hour;
|
|
47
|
+
}
|
|
48
|
+
}, {
|
|
49
|
+
key: "withLeadingZero",
|
|
50
|
+
value: function withLeadingZero(value) {
|
|
51
|
+
return String(value).padStart(2, "0");
|
|
52
|
+
}
|
|
53
|
+
}, {
|
|
54
|
+
key: "formatHoursTo12",
|
|
55
|
+
value: function formatHoursTo12(hours) {
|
|
56
|
+
var numberHours = Number.parseInt(hours, 10);
|
|
57
|
+
if (Number.isNaN(numberHours)) return hours;
|
|
58
|
+
if (numberHours === 0) {
|
|
59
|
+
return "12";
|
|
60
|
+
} else if (numberHours > 12) {
|
|
61
|
+
return this.withLeadingZero(numberHours - 12);
|
|
62
|
+
}
|
|
63
|
+
return this.withLeadingZero(numberHours);
|
|
64
|
+
}
|
|
65
|
+
}, {
|
|
66
|
+
key: "formatHoursTo24",
|
|
67
|
+
value: function formatHoursTo24(hours) {
|
|
68
|
+
var numberHours = Number.parseInt(hours, 10);
|
|
69
|
+
if (Number.isNaN(numberHours)) return hours;
|
|
70
|
+
if (this.meridiem === "AM") {
|
|
71
|
+
return this.withLeadingZero(numberHours === 12 ? 0 : numberHours);
|
|
72
|
+
}
|
|
73
|
+
return this.withLeadingZero(numberHours < 12 ? numberHours + 12 : numberHours);
|
|
74
|
+
}
|
|
75
|
+
}, {
|
|
76
|
+
key: "toggleMeridiem",
|
|
77
|
+
value: function toggleMeridiem() {
|
|
78
|
+
this.meridiem = this._meridiem === "AM" ? "PM" : "AM";
|
|
79
|
+
}
|
|
80
|
+
}, {
|
|
81
|
+
key: "toString",
|
|
82
|
+
value: function toString() {
|
|
83
|
+
var hours = this._is12Hour ? this.formatHoursTo24(this.hours) : this.hours;
|
|
84
|
+
return "".concat(hours, ":").concat(this.minutes);
|
|
85
|
+
}
|
|
86
|
+
}]);
|
|
87
|
+
})();
|
|
88
|
+
export {
|
|
89
|
+
TimePickerEntity as default
|
|
90
|
+
};
|
package/lib/esm/index.mjs
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
import { default as default2
|
|
1
|
+
import { default as default2 } from "./component/TimePicker/TimePicker.mjs";
|
|
2
|
+
import "./component/TimePicker/TimePicker.type.mjs";
|
|
2
3
|
export {
|
|
3
|
-
default2 as default
|
|
4
|
-
formatHoursTo12,
|
|
5
|
-
formatHoursTo24,
|
|
6
|
-
intOrDefault,
|
|
7
|
-
meridiemByHours,
|
|
8
|
-
withLeadingZero
|
|
4
|
+
default2 as default
|
|
9
5
|
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Component } from '@semcore/core';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import type { TimePickerFormatProps, TimePickerFormatPropsInternal } from './PickerFormat.type';
|
|
4
|
+
declare class TimePickerFormat extends Component<TimePickerFormatProps, typeof TimePickerFormat.enhance, {}, TimePickerFormatPropsInternal> {
|
|
5
|
+
static style: {
|
|
6
|
+
[key: string]: string;
|
|
7
|
+
};
|
|
8
|
+
static enhance: readonly [(props: any) => {
|
|
9
|
+
uid: ReturnType<typeof import("@semcore/core/lib/utils/uniqueID").useUID>;
|
|
10
|
+
}];
|
|
11
|
+
state: {
|
|
12
|
+
changedFormatNotice: string;
|
|
13
|
+
};
|
|
14
|
+
handleClick: () => void;
|
|
15
|
+
render(): React.ReactNode;
|
|
16
|
+
}
|
|
17
|
+
export default TimePickerFormat;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { BoxProps } from '@semcore/base-components';
|
|
2
|
+
import type { useI18n } from '@semcore/core/lib/utils/enhances/WithI18n';
|
|
3
|
+
import type { TimePickerMeridiem } from '../TimePicker/TimePicker.type';
|
|
4
|
+
export type TimePickerFormatProps = BoxProps & {};
|
|
5
|
+
export type TimePickerFormatPropsInternal = {
|
|
6
|
+
/** @Internal */
|
|
7
|
+
getI18nText: ReturnType<typeof useI18n>;
|
|
8
|
+
/** @Internal */
|
|
9
|
+
size: 'm' | 'l';
|
|
10
|
+
/** @Internal */
|
|
11
|
+
disabled: boolean;
|
|
12
|
+
/** @Internal */
|
|
13
|
+
meridiem: TimePickerMeridiem;
|
|
14
|
+
/** @Internal */
|
|
15
|
+
onClick: (event: React.SyntheticEvent) => void;
|
|
16
|
+
};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Component } from '@semcore/core';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import type { PickerInputMinMax, PickerInputProps } from './PickerInput.type';
|
|
4
|
+
import type { TimePickerField } from '../TimePicker/TimePicker.type';
|
|
5
|
+
type State = {
|
|
6
|
+
dirtyValue?: string;
|
|
7
|
+
visible: boolean;
|
|
8
|
+
};
|
|
9
|
+
declare abstract class AbstractPickerInput extends Component<PickerInputProps, [], {}, {}, State> {
|
|
10
|
+
static style: {
|
|
11
|
+
[key: string]: string;
|
|
12
|
+
};
|
|
13
|
+
static defaultProps: (_: PickerInputProps) => {
|
|
14
|
+
placeholder: string;
|
|
15
|
+
offset: number[];
|
|
16
|
+
};
|
|
17
|
+
state: State;
|
|
18
|
+
inputRef: React.RefObject<unknown>;
|
|
19
|
+
abstract get field(): TimePickerField;
|
|
20
|
+
abstract get minMax(): PickerInputMinMax;
|
|
21
|
+
abstract handleKeyDown(event: React.KeyboardEvent<HTMLInputElement>): void;
|
|
22
|
+
parseValueWithMinMax: (value: string) => string;
|
|
23
|
+
dispatchOnChange(value: string, event: React.SyntheticEvent): void;
|
|
24
|
+
submitChanges(event: React.SyntheticEvent): void;
|
|
25
|
+
handleChange: (value: string, event: React.SyntheticEvent) => void;
|
|
26
|
+
handleBlur: (event: React.SyntheticEvent) => void;
|
|
27
|
+
handleSelect: (value: string, event: React.SyntheticEvent) => void;
|
|
28
|
+
handleVisibleChange: (visible: boolean) => void;
|
|
29
|
+
render(): React.ReactNode;
|
|
30
|
+
}
|
|
31
|
+
declare class Hours extends AbstractPickerInput {
|
|
32
|
+
static defaultProps: (props: PickerInputProps) => {
|
|
33
|
+
ml: number | undefined;
|
|
34
|
+
placeholder: string;
|
|
35
|
+
offset: number[];
|
|
36
|
+
};
|
|
37
|
+
get field(): TimePickerField;
|
|
38
|
+
get minMax(): PickerInputMinMax;
|
|
39
|
+
focusNext(): void;
|
|
40
|
+
handleKeyDown: (event: React.KeyboardEvent<HTMLInputElement>) => void;
|
|
41
|
+
componentDidUpdate(_: PickerInputProps, prevState: State): void;
|
|
42
|
+
}
|
|
43
|
+
declare class Minutes extends AbstractPickerInput {
|
|
44
|
+
static defaultProps: (props: PickerInputProps) => {
|
|
45
|
+
mr: number | undefined;
|
|
46
|
+
placeholder: string;
|
|
47
|
+
offset: number[];
|
|
48
|
+
};
|
|
49
|
+
get field(): TimePickerField;
|
|
50
|
+
get minMax(): PickerInputMinMax;
|
|
51
|
+
focusPrev(): void;
|
|
52
|
+
handleKeyDown: (event: React.KeyboardEvent<HTMLInputElement>) => void;
|
|
53
|
+
}
|
|
54
|
+
export { Hours, Minutes };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { SelectProps } from '@semcore/select';
|
|
2
|
+
import type { TimePickerField, TimePickerItemProps } from '../TimePicker/TimePicker.type';
|
|
3
|
+
export type PickerInputProps = SelectProps & TimePickerItemProps & {
|
|
4
|
+
time: string;
|
|
5
|
+
size?: 'm' | 'l';
|
|
6
|
+
is12Hour?: boolean;
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
$onValueChange: (value: string, field: TimePickerField, event: React.SyntheticEvent) => void;
|
|
9
|
+
minutesInputRef: React.RefObject<HTMLElement>;
|
|
10
|
+
hoursInputRef: React.RefObject<HTMLElement>;
|
|
11
|
+
ariaLabel: string;
|
|
12
|
+
};
|
|
13
|
+
export type PickerInputMinMax = [number, number];
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { Box } from '@semcore/base-components';
|
|
2
|
+
import type { PropGetterFn, Intergalactic } from '@semcore/core';
|
|
3
|
+
import type { InputProps, InputValueProps } from '@semcore/input';
|
|
4
|
+
import type { TimePickerFormatProps } from '../PickerFormat/PickerFormat.type';
|
|
5
|
+
export type TimePickerProps = Omit<InputProps, 'size'> & {
|
|
6
|
+
/** Time in the hh:mm format */
|
|
7
|
+
value?: string;
|
|
8
|
+
/** Default value if `value` property is not provided */
|
|
9
|
+
defaultValue?: string;
|
|
10
|
+
/** The event responses upon time changing */
|
|
11
|
+
onChange?: (time: string, event?: React.SyntheticEvent) => void;
|
|
12
|
+
/** In charge of the component blocking */
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
/** Control size
|
|
15
|
+
* @default m */
|
|
16
|
+
size?: 'm' | 'l';
|
|
17
|
+
/** 12-hour time format */
|
|
18
|
+
is12Hour?: boolean;
|
|
19
|
+
/** Specifies the locale for i18n support */
|
|
20
|
+
locale?: string;
|
|
21
|
+
};
|
|
22
|
+
export type TimePickerSeparatorProps = {
|
|
23
|
+
/** @Internal */
|
|
24
|
+
hoursInputRef: React.RefObject<HTMLElement>;
|
|
25
|
+
/** @Internal */
|
|
26
|
+
disabled?: boolean;
|
|
27
|
+
};
|
|
28
|
+
export type TimePickerItemProps = InputValueProps & {
|
|
29
|
+
/** Step for changing of the values in the dropdown list */
|
|
30
|
+
step?: number;
|
|
31
|
+
};
|
|
32
|
+
export type TimePickerContext = {
|
|
33
|
+
getHoursProps: PropGetterFn;
|
|
34
|
+
getFormatProps: PropGetterFn;
|
|
35
|
+
getMinutesProps: PropGetterFn;
|
|
36
|
+
getSeparatorProps: PropGetterFn;
|
|
37
|
+
};
|
|
38
|
+
export type TimePickerHandlers = {
|
|
39
|
+
value: (value: string) => void;
|
|
40
|
+
};
|
|
41
|
+
export type TimePickerMeridiem = 'AM' | 'PM';
|
|
42
|
+
export type TimePickerField = 'hours' | 'minutes';
|
|
43
|
+
export type TimePickerComponent = Intergalactic.Component<'div', TimePickerProps, TimePickerContext, [
|
|
44
|
+
handlers: TimePickerHandlers
|
|
45
|
+
]> & {
|
|
46
|
+
Hours: Intergalactic.Component<'div', TimePickerItemProps>;
|
|
47
|
+
Minutes: Intergalactic.Component<'div', TimePickerItemProps>;
|
|
48
|
+
Separator: typeof Box;
|
|
49
|
+
Format: Intergalactic.Component<'div', TimePickerFormatProps>;
|
|
50
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { TimePickerMeridiem } from '../component/TimePicker/TimePicker.type';
|
|
2
|
+
declare class TimePickerEntity {
|
|
3
|
+
private _hours;
|
|
4
|
+
private _minutes;
|
|
5
|
+
private _is12Hour;
|
|
6
|
+
private _meridiem;
|
|
7
|
+
constructor(value?: string, // should be in the format 'HH:mm'
|
|
8
|
+
is12Hour?: boolean);
|
|
9
|
+
get meridiem(): TimePickerMeridiem;
|
|
10
|
+
get hours(): string;
|
|
11
|
+
get minutes(): string;
|
|
12
|
+
set is12Hour(newIs12Hour: boolean);
|
|
13
|
+
set hours(newHours: string);
|
|
14
|
+
set minutes(newMinutes: string);
|
|
15
|
+
private set meridiem(value);
|
|
16
|
+
private withLeadingZero;
|
|
17
|
+
private formatHoursTo12;
|
|
18
|
+
private formatHoursTo24;
|
|
19
|
+
toggleMeridiem(): void;
|
|
20
|
+
toString(): string;
|
|
21
|
+
}
|
|
22
|
+
export default TimePickerEntity;
|
package/lib/types/index.d.ts
CHANGED
|
@@ -1,63 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import type { InputProps, InputValueProps } from '@semcore/input';
|
|
4
|
-
import type React from 'react';
|
|
5
|
-
|
|
6
|
-
/** @deprecated */
|
|
7
|
-
export interface ITimePickerProps extends TimePickerProps, UnknownProperties {}
|
|
8
|
-
export type TimePickerProps = Omit<InputProps, 'size'> & {
|
|
9
|
-
/** Time in the hh:mm format */
|
|
10
|
-
value?: string;
|
|
11
|
-
/** Default value if `value` property is not provided */
|
|
12
|
-
defaultValue?: string;
|
|
13
|
-
/** The event responses upon time changing */
|
|
14
|
-
onChange?: (time: string, event?: React.SyntheticEvent) => void;
|
|
15
|
-
/** In charge of the component blocking */
|
|
16
|
-
disabled?: boolean;
|
|
17
|
-
/** Control size
|
|
18
|
-
* @default m */
|
|
19
|
-
size?: 'm' | 'l';
|
|
20
|
-
/** 12-hour time format */
|
|
21
|
-
is12Hour?: boolean;
|
|
22
|
-
/** Specifies the locale for i18n support */
|
|
23
|
-
locale?: string;
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
/** @deprecated */
|
|
27
|
-
export interface ITimePickerItemProps extends TimePickerItemProps, UnknownProperties {}
|
|
28
|
-
export type TimePickerItemProps = InputValueProps & {
|
|
29
|
-
/** Step for changing of the values in the dropdown list */
|
|
30
|
-
step?: number;
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
/** @deprecated */
|
|
34
|
-
export interface ITimePickerFormatProps extends TimePickerFormatProps, UnknownProperties {}
|
|
35
|
-
export type TimePickerFormatProps = BoxProps & {};
|
|
36
|
-
|
|
37
|
-
/** @deprecated */
|
|
38
|
-
export interface ITimePickerContext extends TimePickerContext, UnknownProperties {}
|
|
39
|
-
export type TimePickerContext = {
|
|
40
|
-
getHoursProps: PropGetterFn;
|
|
41
|
-
getFormatProps: PropGetterFn;
|
|
42
|
-
getMinutesProps: PropGetterFn;
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
/** @deprecated */
|
|
46
|
-
export interface ITimePickerHandlers extends TimePickerHandlers, UnknownProperties {}
|
|
47
|
-
export type TimePickerHandlers = {
|
|
48
|
-
value: (value: string) => void;
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
declare const TimePicker: Intergalactic.Component<
|
|
52
|
-
'div',
|
|
53
|
-
TimePickerProps,
|
|
54
|
-
TimePickerContext,
|
|
55
|
-
[handlers: TimePickerHandlers]
|
|
56
|
-
> & {
|
|
57
|
-
Hours: Intergalactic.Component<'div', TimePickerItemProps>;
|
|
58
|
-
Minutes: Intergalactic.Component<'div', TimePickerItemProps>;
|
|
59
|
-
Separator: typeof Box;
|
|
60
|
-
Format: Intergalactic.Component<'div', TimePickerFormatProps>;
|
|
61
|
-
};
|
|
62
|
-
|
|
63
|
-
export default TimePicker;
|
|
1
|
+
export { default } from './component/TimePicker/TimePicker';
|
|
2
|
+
export * from './component/TimePicker/TimePicker.type';
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
export declare const localizedMessages: {
|
|
2
|
+
de: {
|
|
3
|
+
title: string;
|
|
4
|
+
titleEmpty: string;
|
|
5
|
+
hours: string;
|
|
6
|
+
minutes: string;
|
|
7
|
+
formatToggler: string;
|
|
8
|
+
changedFormatNotice: string;
|
|
9
|
+
};
|
|
10
|
+
en: {
|
|
11
|
+
title: string;
|
|
12
|
+
titleEmpty: string;
|
|
13
|
+
hours: string;
|
|
14
|
+
minutes: string;
|
|
15
|
+
formatToggler: string;
|
|
16
|
+
changedFormatNotice: string;
|
|
17
|
+
};
|
|
18
|
+
es: {
|
|
19
|
+
title: string;
|
|
20
|
+
titleEmpty: string;
|
|
21
|
+
hours: string;
|
|
22
|
+
minutes: string;
|
|
23
|
+
formatToggler: string;
|
|
24
|
+
changedFormatNotice: string;
|
|
25
|
+
};
|
|
26
|
+
fr: {
|
|
27
|
+
title: string;
|
|
28
|
+
titleEmpty: string;
|
|
29
|
+
hours: string;
|
|
30
|
+
minutes: string;
|
|
31
|
+
formatToggler: string;
|
|
32
|
+
changedFormatNotice: string;
|
|
33
|
+
};
|
|
34
|
+
it: {
|
|
35
|
+
title: string;
|
|
36
|
+
titleEmpty: string;
|
|
37
|
+
hours: string;
|
|
38
|
+
minutes: string;
|
|
39
|
+
formatToggler: string;
|
|
40
|
+
changedFormatNotice: string;
|
|
41
|
+
};
|
|
42
|
+
ja: {
|
|
43
|
+
title: string;
|
|
44
|
+
titleEmpty: string;
|
|
45
|
+
hours: string;
|
|
46
|
+
minutes: string;
|
|
47
|
+
formatToggler: string;
|
|
48
|
+
changedFormatNotice: string;
|
|
49
|
+
};
|
|
50
|
+
ko: {
|
|
51
|
+
title: string;
|
|
52
|
+
titleEmpty: string;
|
|
53
|
+
hours: string;
|
|
54
|
+
minutes: string;
|
|
55
|
+
formatToggler: string;
|
|
56
|
+
changedFormatNotice: string;
|
|
57
|
+
};
|
|
58
|
+
nl: {
|
|
59
|
+
title: string;
|
|
60
|
+
titleEmpty: string;
|
|
61
|
+
hours: string;
|
|
62
|
+
minutes: string;
|
|
63
|
+
formatToggler: string;
|
|
64
|
+
changedFormatNotice: string;
|
|
65
|
+
};
|
|
66
|
+
pt: {
|
|
67
|
+
title: string;
|
|
68
|
+
titleEmpty: string;
|
|
69
|
+
hours: string;
|
|
70
|
+
minutes: string;
|
|
71
|
+
formatToggler: string;
|
|
72
|
+
changedFormatNotice: string;
|
|
73
|
+
};
|
|
74
|
+
tr: {
|
|
75
|
+
title: string;
|
|
76
|
+
titleEmpty: string;
|
|
77
|
+
hours: string;
|
|
78
|
+
minutes: string;
|
|
79
|
+
formatToggler: string;
|
|
80
|
+
changedFormatNotice: string;
|
|
81
|
+
};
|
|
82
|
+
vi: {
|
|
83
|
+
title: string;
|
|
84
|
+
titleEmpty: string;
|
|
85
|
+
hours: string;
|
|
86
|
+
minutes: string;
|
|
87
|
+
formatToggler: string;
|
|
88
|
+
changedFormatNotice: string;
|
|
89
|
+
};
|
|
90
|
+
zh: {
|
|
91
|
+
title: string;
|
|
92
|
+
titleEmpty: string;
|
|
93
|
+
hours: string;
|
|
94
|
+
minutes: string;
|
|
95
|
+
formatToggler: string;
|
|
96
|
+
changedFormatNotice: string;
|
|
97
|
+
};
|
|
98
|
+
pl: {
|
|
99
|
+
title: string;
|
|
100
|
+
titleEmpty: string;
|
|
101
|
+
hours: string;
|
|
102
|
+
minutes: string;
|
|
103
|
+
formatToggler: string;
|
|
104
|
+
changedFormatNotice: string;
|
|
105
|
+
};
|
|
106
|
+
sv: {
|
|
107
|
+
title: string;
|
|
108
|
+
titleEmpty: string;
|
|
109
|
+
hours: string;
|
|
110
|
+
minutes: string;
|
|
111
|
+
formatToggler: string;
|
|
112
|
+
changedFormatNotice: string;
|
|
113
|
+
};
|
|
114
|
+
};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@semcore/time-picker",
|
|
3
3
|
"description": "Semrush TimePicker Component",
|
|
4
|
-
"version": "16.2.0
|
|
4
|
+
"version": "16.2.0",
|
|
5
5
|
"main": "lib/cjs/index.js",
|
|
6
6
|
"module": "lib/es6/index.js",
|
|
7
7
|
"typings": "lib/types/index.d.ts",
|
|
@@ -14,13 +14,13 @@
|
|
|
14
14
|
"types": "./lib/types/index.d.ts"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@semcore/flex-box": "16.1.0
|
|
18
|
-
"@semcore/button": "16.1.0
|
|
19
|
-
"@semcore/input": "16.2.0
|
|
20
|
-
"@semcore/select": "16.2.0
|
|
17
|
+
"@semcore/flex-box": "16.1.0",
|
|
18
|
+
"@semcore/button": "16.1.0",
|
|
19
|
+
"@semcore/input": "16.2.0",
|
|
20
|
+
"@semcore/select": "16.2.0"
|
|
21
21
|
},
|
|
22
22
|
"peerDependencies": {
|
|
23
|
-
"@semcore/base-components": "^16.6.0
|
|
23
|
+
"@semcore/base-components": "^16.6.0"
|
|
24
24
|
},
|
|
25
25
|
"repository": {
|
|
26
26
|
"type": "git",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"directory": "semcore/time-picker"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
|
-
"@semcore/core": "16.6.0
|
|
31
|
+
"@semcore/core": "16.6.0",
|
|
32
32
|
"@semcore/testing-utils": "1.0.0"
|
|
33
33
|
},
|
|
34
34
|
"scripts": {
|
package/lib/cjs/PickerFormat.js
DELETED
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports["default"] = void 0;
|
|
8
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
9
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
10
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
11
|
-
var _callSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/callSuper"));
|
|
12
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
13
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
14
|
-
var _core = require("@semcore/core");
|
|
15
|
-
var _uniqueID = _interopRequireDefault(require("@semcore/core/lib/utils/uniqueID"));
|
|
16
|
-
var _flexBox = require("@semcore/flex-box");
|
|
17
|
-
var _react = _interopRequireDefault(require("react"));
|
|
18
|
-
var TimePickerFormat = /*#__PURE__*/function (_Component) {
|
|
19
|
-
function TimePickerFormat() {
|
|
20
|
-
var _this;
|
|
21
|
-
(0, _classCallCheck2["default"])(this, TimePickerFormat);
|
|
22
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
23
|
-
args[_key] = arguments[_key];
|
|
24
|
-
}
|
|
25
|
-
_this = (0, _callSuper2["default"])(this, TimePickerFormat, [].concat(args));
|
|
26
|
-
(0, _defineProperty2["default"])(_this, "state", {
|
|
27
|
-
changedFormatNotice: ''
|
|
28
|
-
});
|
|
29
|
-
(0, _defineProperty2["default"])(_this, "handleClick", function () {
|
|
30
|
-
setTimeout(function () {
|
|
31
|
-
var _this$asProps = _this.asProps,
|
|
32
|
-
meridiem = _this$asProps.meridiem,
|
|
33
|
-
getI18nText = _this$asProps.getI18nText;
|
|
34
|
-
_this.setState({
|
|
35
|
-
changedFormatNotice: getI18nText('changedFormatNotice', {
|
|
36
|
-
meridiem: meridiem
|
|
37
|
-
})
|
|
38
|
-
});
|
|
39
|
-
}, 0);
|
|
40
|
-
setTimeout(function () {
|
|
41
|
-
_this.setState({
|
|
42
|
-
changedFormatNotice: ''
|
|
43
|
-
});
|
|
44
|
-
}, 2000);
|
|
45
|
-
});
|
|
46
|
-
return _this;
|
|
47
|
-
}
|
|
48
|
-
(0, _inherits2["default"])(TimePickerFormat, _Component);
|
|
49
|
-
return (0, _createClass2["default"])(TimePickerFormat, [{
|
|
50
|
-
key: "render",
|
|
51
|
-
value: function render() {
|
|
52
|
-
var _ref = this.asProps,
|
|
53
|
-
_ref2;
|
|
54
|
-
var SPickerFormat = _flexBox.Box;
|
|
55
|
-
var _this$asProps2 = this.asProps,
|
|
56
|
-
Children = _this$asProps2.Children,
|
|
57
|
-
meridiem = _this$asProps2.meridiem,
|
|
58
|
-
styles = _this$asProps2.styles,
|
|
59
|
-
getI18nText = _this$asProps2.getI18nText,
|
|
60
|
-
uid = _this$asProps2.uid;
|
|
61
|
-
var changedFormatNotice = this.state.changedFormatNotice;
|
|
62
|
-
var SPickerFormatText = 'span';
|
|
63
|
-
return _ref2 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(SPickerFormat, _ref2.cn("SPickerFormat", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
|
|
64
|
-
"type": 'button',
|
|
65
|
-
"tag": 'button',
|
|
66
|
-
"tabIndex": 0,
|
|
67
|
-
"onClick": this.handleClick,
|
|
68
|
-
"aria-describedby": "".concat(uid, "_describe")
|
|
69
|
-
}, _ref))), Children.origin ? /*#__PURE__*/_react["default"].createElement(Children, _ref2.cn("Children", {})) : /*#__PURE__*/_react["default"].createElement(SPickerFormatText, _ref2.cn("SPickerFormatText", {}), meridiem)), /*#__PURE__*/_react["default"].createElement(_flexBox.ScreenReaderOnly, _ref2.cn("ScreenReaderOnly", {
|
|
70
|
-
"role": 'status',
|
|
71
|
-
"aria-live": 'polite'
|
|
72
|
-
}), changedFormatNotice), /*#__PURE__*/_react["default"].createElement(_flexBox.ScreenReaderOnly, _ref2.cn("ScreenReaderOnly", {
|
|
73
|
-
"aria-hidden": 'true',
|
|
74
|
-
"id": "".concat(uid, "_describe")
|
|
75
|
-
}), getI18nText('formatToggler')));
|
|
76
|
-
}
|
|
77
|
-
}]);
|
|
78
|
-
}(_core.Component);
|
|
79
|
-
(0, _defineProperty2["default"])(TimePickerFormat, "enhance", [(0, _uniqueID["default"])()]);
|
|
80
|
-
var _default = exports["default"] = TimePickerFormat;
|
|
81
|
-
//# sourceMappingURL=PickerFormat.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PickerFormat.js","names":["_core","require","_uniqueID","_interopRequireDefault","_flexBox","_react","TimePickerFormat","_Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","changedFormatNotice","setTimeout","_this$asProps","asProps","meridiem","getI18nText","setState","_inherits2","_createClass2","key","value","render","_ref","_ref2","SPickerFormat","Box","_this$asProps2","Children","styles","uid","state","SPickerFormatText","sstyled","createElement","Fragment","cn","_objectSpread2","assignProps","handleClick","origin","ScreenReaderOnly","Component","uniqueIDEnhancement","_default","exports"],"sources":["../../src/PickerFormat.jsx"],"sourcesContent":["import { Component, sstyled, Root } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { Box, ScreenReaderOnly } from '@semcore/flex-box';\nimport React from 'react';\n\nclass TimePickerFormat extends Component {\n static enhance = [uniqueIDEnhancement()];\n\n state = {\n changedFormatNotice: '',\n };\n\n handleClick = () => {\n setTimeout(() => {\n const { meridiem, getI18nText } = this.asProps;\n this.setState({ changedFormatNotice: getI18nText('changedFormatNotice', { meridiem }) });\n }, 0);\n\n setTimeout(() => {\n this.setState({ changedFormatNotice: '' });\n }, 2000);\n };\n\n render() {\n const SPickerFormat = Root;\n const { Children, meridiem, styles, getI18nText, uid } = this.asProps;\n const { changedFormatNotice } = this.state;\n const SPickerFormatText = 'span';\n\n return sstyled(styles)(\n <>\n <SPickerFormat\n render={Box}\n type='button'\n tag='button'\n tabIndex={0}\n onClick={this.handleClick}\n aria-describedby={`${uid}_describe`}\n >\n {Children.origin ? <Children /> : <SPickerFormatText>{meridiem}</SPickerFormatText>}\n </SPickerFormat>\n <ScreenReaderOnly role='status' aria-live='polite'>\n {changedFormatNotice}\n </ScreenReaderOnly>\n <ScreenReaderOnly aria-hidden='true' id={`${uid}_describe`}>\n {getI18nText('formatToggler')}\n </ScreenReaderOnly>\n </>,\n );\n }\n}\n\nexport default TimePickerFormat;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PickerInput.js","names":["_core","require","_assignProps2","_input","_interopRequireDefault","_select","_react","_TimePicker","_excluded","MAP_FIELD_TO_TIME","hours","minutes","MAP_SIZE_SELECT","m","l","getOptions","min","max","step","arguments","length","undefined","Number","toFixed","options","Array","fill","numValue","map","_i","index","value","withLeadingZero","String","createElement","Option","key","defaultPopperOffset","ItemPicker","_Component","_this","_classCallCheck2","_len","args","_key","_callSuper2","concat","_defineProperty2","React","createRef","dirtyValue","visible","_this$minMax","minMax","_this$minMax2","_slicedToArray2","Math","event","stopPropagation","numberValue","intOrDefault","NaN","isNaN","setState","slice","submitChanges","dispatchOnChange","getI18nText","asProps","_getI18nText","field","_inherits2","_createClass2","$onValueChange","state","parseValueWithMinMax","render","_ref","_ref2","SPickerInput","Select","Trigger","_this$asProps","styles","onSelect","time","size","disabled","onVisibleChange","other","_objectWithoutProperties2","_this$state","timeValue","_this$minMax3","_this$minMax4","sstyled","cn","_objectSpread2","callAllEventHandlers","handleSelect","handleVisibleChange","assignProps","Input","Value","inputRef","getAriaLabel","handleChange","handleBlur","handleKeyDown","Menu","hMax","Component","placeholder","offset","Hours","exports","_ItemPicker2","_this2","_len2","_key2","currentTarget","selectionStart","selectionEnd","preventDefault","focusNext","is12Hour","minutesInputRef","current","focus","componentDidUpdate","_prevProps","prevState","_ref3","defaultProps","ml","Minutes","_ItemPicker3","_this3","_len3","_key3","focusPrev","hoursInputRef","_ref4","mr"],"sources":["../../src/PickerInput.jsx"],"sourcesContent":["import { Component, sstyled, Root } from '@semcore/core';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport Input from '@semcore/input';\nimport Select from '@semcore/select';\nimport React from 'react';\n\nimport { intOrDefault, withLeadingZero } from './TimePicker';\n\nconst MAP_FIELD_TO_TIME = {\n hours: 0,\n minutes: 1,\n};\n\nconst MAP_SIZE_SELECT = {\n m: 'm',\n l: 'l',\n};\n\nfunction getOptions(min, max, step = 1) {\n const length = Number(((max + 1 - min) / step).toFixed(0));\n const options = Array(length).fill('');\n let numValue = min;\n return options.map((_i, index) => {\n numValue = index === 0 ? numValue : numValue + step;\n const value = withLeadingZero(String(numValue));\n return (\n <Select.Option value={value} key={value}>\n {value}\n </Select.Option>\n );\n });\n}\n\nconst defaultPopperOffset = [-8, 4];\n\nclass ItemPicker extends Component {\n static defaultProps = {\n placeholder: '00',\n offset: defaultPopperOffset,\n };\n\n inputRef = React.createRef();\n\n minMax() {\n return [];\n }\n\n state = {\n dirtyValue: undefined,\n visible: false,\n };\n\n parseValueWithMinMax = (value) => {\n const [min, max] = this.minMax();\n return String(Math.max(min, Math.min(max, value)));\n };\n\n dispatchOnChange(value, event) {\n this.setState({ dirtyValue: undefined });\n this.asProps.$onValueChange(value, this.field, event);\n }\n\n submitChanges(event) {\n let { dirtyValue } = this.state;\n if (dirtyValue !== undefined) {\n // if changes value\n if (dirtyValue) dirtyValue = this.parseValueWithMinMax(dirtyValue); // if not \"\"\n this.dispatchOnChange(dirtyValue, event);\n }\n }\n\n handleChange = (value, event) => {\n /* hide props for bubbling events */\n event.stopPropagation();\n const numberValue = intOrDefault(Number(value), Number.NaN);\n\n if (!Number.isNaN(numberValue)) {\n this.setState({ dirtyValue: value.slice(-2) });\n }\n };\n\n handleBlur = (event) => this.submitChanges(event);\n\n /* rewrite method */\n handleKeyDown = () => {};\n\n handleSelect = (value, event) => {\n this.dispatchOnChange(value, event);\n };\n\n handleVisibleChange = (visible) => this.setState({ visible });\n\n getAriaLabel = () => {\n const { _getI18nText: getI18nText } = this.asProps;\n if (this.field === 'hours') return getI18nText('hours');\n if (this.field === 'minutes') return getI18nText('minutes');\n return undefined;\n };\n\n render() {\n const SPickerInput = Root;\n const { styles, step, onSelect, time, size, disabled, onVisibleChange, ...other } =\n this.asProps;\n const { dirtyValue, visible } = this.state;\n const timeValue = time[MAP_FIELD_TO_TIME[this.field]];\n const value = dirtyValue === undefined ? timeValue : dirtyValue;\n const [min, max] = this.minMax();\n\n return sstyled(styles)(\n <Select\n {...other}\n interaction='focus'\n size={size ? MAP_SIZE_SELECT[size] : false}\n onChange={callAllEventHandlers(onSelect, this.handleSelect)}\n onVisibleChange={callAllEventHandlers(onVisibleChange, this.handleVisibleChange)}\n visible={visible}\n value={timeValue}\n >\n <SPickerInput\n render={Select.Trigger}\n tag={Input.Value}\n ref={this.inputRef}\n inputMode='numeric'\n size={size}\n disabled={disabled}\n neighborLocation={false}\n value={value}\n aria-label={this.getAriaLabel()}\n onChange={this.handleChange}\n onBlur={this.handleBlur}\n onKeyDown={this.handleKeyDown}\n />\n <Select.Menu hMax={180}>{getOptions(min, max, step)}</Select.Menu>\n </Select>,\n );\n }\n}\n\nclass Hours extends ItemPicker {\n field = 'hours';\n static defaultProps = ({ size }) => ({\n ...ItemPicker.defaultProps,\n ml: size === 'l' ? 3 : undefined,\n });\n\n minMax() {\n const { is12Hour } = this.asProps;\n if (is12Hour) {\n return [1, 12];\n } else {\n return [0, 23];\n }\n }\n\n focusNext() {\n if (this.asProps.minutesInputRef.current) {\n this.setState({ visible: false });\n this.asProps.minutesInputRef.current.focus();\n }\n }\n\n handleKeyDown = (event) => {\n const { currentTarget } = event;\n if (event.key === 'Enter') {\n this.submitChanges(event);\n }\n if (event.key === 'ArrowRight') {\n if (\n currentTarget.selectionStart >= currentTarget.value.length &&\n currentTarget.selectionStart === currentTarget.selectionEnd\n ) {\n event.preventDefault();\n this.focusNext();\n }\n }\n };\n\n componentDidUpdate(_prevProps, prevState) {\n const { dirtyValue } = this.state;\n if (prevState.dirtyValue === undefined || dirtyValue === undefined) return;\n\n if (prevState.dirtyValue.length === 1 && dirtyValue.length === 2) {\n this.focusNext();\n }\n }\n}\n\nclass Minutes extends ItemPicker {\n field = 'minutes';\n static defaultProps = ({ size }) => ({\n ...ItemPicker.defaultProps,\n mr: size === 'l' ? 3 : undefined,\n });\n\n minMax() {\n return [0, 59];\n }\n\n focusPrev() {\n if (this.asProps.hoursInputRef.current) {\n this.setState({ visible: false });\n this.asProps.hoursInputRef.current.focus();\n }\n }\n\n handleKeyDown = (event) => {\n const { currentTarget } = event;\n if (event.key === 'ArrowLeft') {\n if (\n currentTarget.selectionStart <= 0 &&\n currentTarget.selectionStart === currentTarget.selectionEnd\n ) {\n event.preventDefault();\n this.focusPrev();\n }\n }\n if (event.key === 'Backspace') {\n if (currentTarget.value.length === 0) {\n event.preventDefault();\n this.focusPrev();\n }\n }\n if (event.key === 'Enter') this.submitChanges(event);\n };\n}\n\nexport { Hours, Minutes };\n"],"mappings":"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","ignoreList":[]}
|