@semcore/time-picker 16.1.13 → 16.1.14-prerelease.8
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/CHANGELOG.md +7 -0
- package/README.md +4 -4
- package/lib/cjs/component/PickerFormat/PickerFormat.js +84 -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/component/PickerInput/PickerInput.js +228 -0
- 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 +220 -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 +73 -0
- package/lib/cjs/entity/TimePickerEntity.js.map +1 -0
- package/lib/cjs/index.js +9 -8
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js +16 -16
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/es6/component/PickerFormat/PickerFormat.js +79 -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/component/PickerInput/PickerInput.js +222 -0
- 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 +216 -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 +66 -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/es6/translations/__intergalactic-dynamic-locales.js +15 -15
- package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/esm/component/PickerFormat/PickerFormat.mjs +84 -0
- package/lib/{es6/style/time-picker.shadow.css → esm/component/PickerFormat/picker-format.shadow.css} +1 -56
- package/lib/esm/component/PickerInput/PickerInput.mjs +227 -0
- package/lib/esm/component/PickerInput/picker-input.shadow.css +11 -0
- package/lib/esm/component/TimePicker/TimePicker.mjs +220 -0
- package/lib/esm/component/TimePicker/time-picker.shadow.css +34 -0
- package/lib/esm/entity/TimePickerEntity.mjs +65 -0
- package/lib/esm/index.mjs +2 -7
- package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +1 -1
- 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 +6 -6
- package/vite.config.ts +1 -4
- package/lib/cjs/PickerFormat.js +0 -81
- package/lib/cjs/PickerFormat.js.map +0 -1
- package/lib/cjs/PickerInput.js +0 -286
- 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 +0 -281
- 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/PickerInput.mjs +0 -263
- package/lib/esm/TimePicker.mjs +0 -297
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
|
|
4
4
|
|
|
5
|
+
## [16.1.14] - 2026-02-16
|
|
6
|
+
|
|
7
|
+
### Changed
|
|
8
|
+
|
|
9
|
+
- Rewrite component to TS
|
|
10
|
+
- `onChange` format to `HH:mm`
|
|
11
|
+
|
|
5
12
|
## [16.1.13] - 2025-12-01
|
|
6
13
|
|
|
7
14
|
### Fixed
|
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/@semcore/time-picker)
|
|
4
4
|
[](https://www.npmjs.com/package/@semcore/time-picker)
|
|
5
|
-
[](https://github.com/semrush/intergalactic/blob/
|
|
5
|
+
[](https://github.com/semrush/intergalactic/blob/HEAD/LICENSE)
|
|
6
6
|
|
|
7
7
|
> This component is part of the Intergalactic Design System
|
|
8
8
|
|
|
@@ -20,13 +20,13 @@ npm install @semcore/time-picker
|
|
|
20
20
|
|
|
21
21
|
## 👤 Author
|
|
22
22
|
|
|
23
|
-
[UI-kit team](https://github.com/semrush/intergalactic/blob/
|
|
23
|
+
[UI-kit team](https://github.com/semrush/intergalactic/blob/HEAD/MAINTAINERS) and [others ❤️](https://github.com/semrush/intergalactic/graphs/contributors)
|
|
24
24
|
|
|
25
25
|
## 🤝 Contributing
|
|
26
26
|
|
|
27
27
|
Contributions, issues and feature requests are welcome!
|
|
28
28
|
|
|
29
|
-
Feel free to check [issues page](https://github.com/semrush/intergalactic/issues). You can also take a look at the [contributing guide](https://github.com/semrush/intergalactic/blob/
|
|
29
|
+
Feel free to check [issues page](https://github.com/semrush/intergalactic/issues). You can also take a look at the [contributing guide](https://github.com/semrush/intergalactic/blob/HEAD/CONTRIBUTING.md).
|
|
30
30
|
|
|
31
31
|
## Show your support
|
|
32
32
|
|
|
@@ -34,4 +34,4 @@ Give a ⭐️ if this project helped you!
|
|
|
34
34
|
|
|
35
35
|
## 📝 License
|
|
36
36
|
|
|
37
|
-
This project is [MIT](https://github.com/semrush/intergalactic/blob/
|
|
37
|
+
This project is [MIT](https://github.com/semrush/intergalactic/blob/HEAD/LICENSE) licensed.
|
|
@@ -0,0 +1,84 @@
|
|
|
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 _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
+
var _core = require("@semcore/core");
|
|
10
|
+
var _baseComponents = require("@semcore/base-components");
|
|
11
|
+
var _uniqueID = _interopRequireDefault(require("@semcore/core/lib/utils/uniqueID"));
|
|
12
|
+
var _react = _interopRequireDefault(require("react"));
|
|
13
|
+
/*!__reshadow-styles__:"./picker-format.shadow.css"*/
|
|
14
|
+
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SPickerFormat_11qxx_gg_{flex-shrink:0;position:relative;display:inline-flex;padding:0;white-space:nowrap;font-family:inherit;font-weight:var(--intergalactic-medium, 500);line-height:normal;-webkit-text-decoration:none;text-decoration:none;align-items:center;border:1px solid var(--intergalactic-border-primary, #c4c7cf);border-radius:0 var(--intergalactic-control-rounded, 6px) var(--intergalactic-control-rounded, 6px)0;box-shadow:none;cursor:pointer;box-sizing:border-box;overflow:visible;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;color:var(--intergalactic-text-secondary, #6c6e79);background-color:var(--intergalactic-bg-secondary-neutral, #f4f5f9)}@media (hover:hover){.___SPickerFormat_11qxx_gg_:hover{color:var(--intergalactic-text-secondary, #6c6e79);background-color:var(--intergalactic-bg-secondary-neutral-hover, #e0e1e9)}}.___SPickerFormat_11qxx_gg_.__active_11qxx_gg_,.___SPickerFormat_11qxx_gg_:active{color:var(--intergalactic-text-secondary, #6c6e79);background-color:var(--intergalactic-bg-secondary-neutral-active, #c4c7cf)}.___SPickerFormat_11qxx_gg_._size_m_11qxx_gg_{height:var(--intergalactic-form-control-m, 28px);font-size:var(--intergalactic-fs-200, 14px);margin:0-1px 0 0}.___SPickerFormat_11qxx_gg_._size_m_11qxx_gg_ .___SPickerFormatText_11qxx_gg_{margin:0 var(--intergalactic-spacing-2x, 8px)}.___SPickerFormat_11qxx_gg_._size_l_11qxx_gg_{height:var(--intergalactic-form-control-l, 40px);font-size:var(--intergalactic-fs-300, 16px);margin:0-1px 0 0}.___SPickerFormat_11qxx_gg_._size_l_11qxx_gg_ .___SPickerFormatText_11qxx_gg_{margin:0 var(--intergalactic-spacing-3x, 12px)}.___SPickerFormat_11qxx_gg_.__disabled_11qxx_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none;border-color:transparent transparent transparent var(--intergalactic-border-primary, #c4c7cf)}", /*__inner_css_end__*/"11qxx_gg_"),
|
|
15
|
+
/*__reshadow_css_end__*/
|
|
16
|
+
{
|
|
17
|
+
"__SPickerFormat": "___SPickerFormat_11qxx_gg_",
|
|
18
|
+
"_disabled": "__disabled_11qxx_gg_",
|
|
19
|
+
"_active": "__active_11qxx_gg_",
|
|
20
|
+
"_size_m": "_size_m_11qxx_gg_",
|
|
21
|
+
"__SPickerFormatText": "___SPickerFormatText_11qxx_gg_",
|
|
22
|
+
"_size_l": "_size_l_11qxx_gg_"
|
|
23
|
+
});
|
|
24
|
+
class TimePickerFormat extends _core.Component {
|
|
25
|
+
constructor(...args) {
|
|
26
|
+
super(...args);
|
|
27
|
+
(0, _defineProperty2.default)(this, "state", {
|
|
28
|
+
changedFormatNotice: ''
|
|
29
|
+
});
|
|
30
|
+
(0, _defineProperty2.default)(this, "handleClick", () => {
|
|
31
|
+
setTimeout(() => {
|
|
32
|
+
const {
|
|
33
|
+
meridiem,
|
|
34
|
+
getI18nText
|
|
35
|
+
} = this.asProps;
|
|
36
|
+
this.setState({
|
|
37
|
+
changedFormatNotice: getI18nText('changedFormatNotice', {
|
|
38
|
+
meridiem
|
|
39
|
+
})
|
|
40
|
+
});
|
|
41
|
+
}, 0);
|
|
42
|
+
setTimeout(() => {
|
|
43
|
+
this.setState({
|
|
44
|
+
changedFormatNotice: ''
|
|
45
|
+
});
|
|
46
|
+
}, 2000);
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
render() {
|
|
50
|
+
var _ref = this.asProps,
|
|
51
|
+
_ref2;
|
|
52
|
+
const SPickerFormat = _baseComponents.Box;
|
|
53
|
+
const {
|
|
54
|
+
Children,
|
|
55
|
+
meridiem,
|
|
56
|
+
styles,
|
|
57
|
+
getI18nText,
|
|
58
|
+
uid
|
|
59
|
+
} = this.asProps;
|
|
60
|
+
const {
|
|
61
|
+
changedFormatNotice
|
|
62
|
+
} = this.state;
|
|
63
|
+
const SPickerFormatText = 'span';
|
|
64
|
+
return _ref2 = (0, _core.sstyled)(styles), /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(SPickerFormat, _ref2.cn("SPickerFormat", {
|
|
65
|
+
...(0, _core.assignProps)({
|
|
66
|
+
"type": 'button',
|
|
67
|
+
"tag": 'button',
|
|
68
|
+
"tabIndex": 0,
|
|
69
|
+
"onClick": this.handleClick,
|
|
70
|
+
"aria-describedby": `${uid}_describe`
|
|
71
|
+
}, _ref)
|
|
72
|
+
}), Children.origin ? /*#__PURE__*/_react.default.createElement(Children, _ref2.cn("Children", {})) : /*#__PURE__*/_react.default.createElement(SPickerFormatText, _ref2.cn("SPickerFormatText", {}), meridiem)), /*#__PURE__*/_react.default.createElement(_baseComponents.ScreenReaderOnly, _ref2.cn("ScreenReaderOnly", {
|
|
73
|
+
"role": 'status',
|
|
74
|
+
"aria-live": 'polite'
|
|
75
|
+
}), changedFormatNotice), /*#__PURE__*/_react.default.createElement(_baseComponents.ScreenReaderOnly, _ref2.cn("ScreenReaderOnly", {
|
|
76
|
+
"aria-hidden": 'true',
|
|
77
|
+
"id": `${uid}_describe`
|
|
78
|
+
}), getI18nText('formatToggler')));
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
(0, _defineProperty2.default)(TimePickerFormat, "style", style);
|
|
82
|
+
(0, _defineProperty2.default)(TimePickerFormat, "enhance", [(0, _uniqueID.default)()]);
|
|
83
|
+
var _default = exports.default = TimePickerFormat;
|
|
84
|
+
//# sourceMappingURL=PickerFormat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PickerFormat.js","names":["_core","require","_baseComponents","_uniqueID","_interopRequireDefault","_react","style","sstyled","insert","TimePickerFormat","Component","constructor","args","_defineProperty2","default","changedFormatNotice","setTimeout","meridiem","getI18nText","asProps","setState","render","_ref","_ref2","SPickerFormat","Box","Children","styles","uid","state","SPickerFormatText","createElement","Fragment","cn","assignProps","handleClick","origin","ScreenReaderOnly","uniqueIDEnhancement","_default","exports"],"sources":["../../../../src/component/PickerFormat/PickerFormat.tsx"],"sourcesContent":["import { Box, ScreenReaderOnly } from '@semcore/base-components';\nimport { Component, sstyled, Root } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport React from 'react';\n\nimport style from './picker-format.shadow.css';\nimport type { TimePickerFormatProps, TimePickerFormatPropsInternal } from './PickerFormat.type';\n\nclass TimePickerFormat extends Component<TimePickerFormatProps, typeof TimePickerFormat.enhance, {}, TimePickerFormatPropsInternal> {\n static style = style;\n static enhance = [uniqueIDEnhancement()] as const;\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":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PickerFormat.type.js","names":[],"sources":["../../../../src/component/PickerFormat/PickerFormat.type.ts"],"sourcesContent":["import type { BoxProps } from '@semcore/base-components';\nimport type { useI18n } from '@semcore/core/lib/utils/enhances/WithI18n';\n\nimport type { TimePickerMeridiem } from '../TimePicker/TimePicker.type';\n\nexport type TimePickerFormatProps = BoxProps & {};\n\nexport type TimePickerFormatPropsInternal = {\n /** @Internal */\n getI18nText: ReturnType<typeof useI18n>;\n /** @Internal */\n size: 'm' | 'l';\n /** @Internal */\n disabled: boolean;\n /** @Internal */\n meridiem: TimePickerMeridiem;\n /** @Internal */\n onClick: (event: React.SyntheticEvent) => void;\n};\n"],"mappings":"","ignoreList":[]}
|
package/lib/cjs/{style/time-picker.shadow.css → component/PickerFormat/picker-format.shadow.css}
RENAMED
|
@@ -1,45 +1,3 @@
|
|
|
1
|
-
STimePicker {
|
|
2
|
-
position: relative;
|
|
3
|
-
width: auto;
|
|
4
|
-
outline: none;
|
|
5
|
-
|
|
6
|
-
SPickerInput {
|
|
7
|
-
box-sizing: content-box;
|
|
8
|
-
text-align: center;
|
|
9
|
-
z-index: 1;
|
|
10
|
-
height: 1.5em;
|
|
11
|
-
|
|
12
|
-
&[placeholder] {
|
|
13
|
-
text-overflow: initial;
|
|
14
|
-
}
|
|
15
|
-
&:focus {
|
|
16
|
-
outline: none;
|
|
17
|
-
background-color: var(--intergalactic-bg-highlight-focus, rgba(0, 143, 248, 0.2));
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
/*STimePicker[keyboardFocused]:focus {*/
|
|
23
|
-
/* box-shadow: var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));*/
|
|
24
|
-
/*}*/
|
|
25
|
-
|
|
26
|
-
STimePicker[disabled] {
|
|
27
|
-
color: var(--intergalactic-text-secondary, #6c6e79);
|
|
28
|
-
cursor: default;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
SPickerInput[size='m'] {
|
|
32
|
-
width: 19px;
|
|
33
|
-
margin: 0 var(--intergalactic-spacing-2x, 8px);
|
|
34
|
-
padding: 0;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
SPickerInput[size='l'] {
|
|
38
|
-
width: 21px;
|
|
39
|
-
margin: 0 var(--intergalactic-spacing-2x, 8px);
|
|
40
|
-
padding: 0;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
1
|
SPickerFormat {
|
|
44
2
|
flex-shrink: 0;
|
|
45
3
|
position: relative;
|
|
@@ -100,17 +58,4 @@ SPickerFormat[disabled] {
|
|
|
100
58
|
cursor: default;
|
|
101
59
|
pointer-events: none;
|
|
102
60
|
border-color: transparent transparent transparent var(--intergalactic-border-primary, #c4c7cf);
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
/*SPickerFormat[keyboardFocused] {*/
|
|
106
|
-
/* box-shadow: var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));*/
|
|
107
|
-
/*}*/
|
|
108
|
-
|
|
109
|
-
STimePickerSeparator {
|
|
110
|
-
color: var(--intergalactic-text-primary, #191b23);
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
STimePickerSeparator[disabled] {
|
|
114
|
-
opacity: var(--intergalactic-disabled-opacity, 0.3);
|
|
115
|
-
pointer-events: none;
|
|
116
|
-
}
|
|
61
|
+
}
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.Minutes = exports.Hours = void 0;
|
|
8
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
+
var _core = require("@semcore/core");
|
|
10
|
+
var _assignProps2 = require("@semcore/core/lib/utils/assignProps");
|
|
11
|
+
var _input = _interopRequireDefault(require("@semcore/input"));
|
|
12
|
+
var _select = _interopRequireDefault(require("@semcore/select"));
|
|
13
|
+
var _react = _interopRequireDefault(require("react"));
|
|
14
|
+
/*!__reshadow-styles__:"./picker-input.shadow.css"*/
|
|
15
|
+
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SPickerInput_1bwib_gg_._size_l_1bwib_gg_,.___SPickerInput_1bwib_gg_._size_m_1bwib_gg_{width:19px;margin:0 var(--intergalactic-spacing-2x, 8px);padding:0}.___SPickerInput_1bwib_gg_._size_l_1bwib_gg_{width:21px}", /*__inner_css_end__*/"1bwib_gg_"),
|
|
16
|
+
/*__reshadow_css_end__*/
|
|
17
|
+
{
|
|
18
|
+
"__SPickerInput": "___SPickerInput_1bwib_gg_",
|
|
19
|
+
"_size_m": "_size_m_1bwib_gg_",
|
|
20
|
+
"_size_l": "_size_l_1bwib_gg_"
|
|
21
|
+
});
|
|
22
|
+
function getOptions(minMax, step = 1) {
|
|
23
|
+
const [min, max] = minMax;
|
|
24
|
+
const length = Number(((max + 1 - min) / step).toFixed(0));
|
|
25
|
+
const options = Array(length).fill('');
|
|
26
|
+
let numValue = min;
|
|
27
|
+
return options.map((_i, index) => {
|
|
28
|
+
numValue = index === 0 ? numValue : numValue + step;
|
|
29
|
+
const value = String(numValue).padStart(2, '0');
|
|
30
|
+
return /*#__PURE__*/_react.default.createElement(_select.default.Option, {
|
|
31
|
+
value: value,
|
|
32
|
+
key: value
|
|
33
|
+
}, value);
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
class AbstractPickerInput extends _core.Component {
|
|
37
|
+
constructor(...args) {
|
|
38
|
+
super(...args);
|
|
39
|
+
(0, _defineProperty2.default)(this, "state", {
|
|
40
|
+
dirtyValue: undefined,
|
|
41
|
+
visible: false
|
|
42
|
+
});
|
|
43
|
+
(0, _defineProperty2.default)(this, "inputRef", /*#__PURE__*/_react.default.createRef());
|
|
44
|
+
(0, _defineProperty2.default)(this, "parseValueWithMinMax", value => {
|
|
45
|
+
const [min, max] = this.minMax;
|
|
46
|
+
const numberValue = isNaN(Number(value)) ? min : Number(value);
|
|
47
|
+
return String(Math.max(min, Math.min(max, numberValue)));
|
|
48
|
+
});
|
|
49
|
+
(0, _defineProperty2.default)(this, "handleChange", (value, event) => {
|
|
50
|
+
event.stopPropagation();
|
|
51
|
+
const inputValue = value.replace(/[^0-9]/g, '');
|
|
52
|
+
const numberValue = Number(inputValue);
|
|
53
|
+
if (!Number.isNaN(numberValue)) {
|
|
54
|
+
this.setState({
|
|
55
|
+
dirtyValue: inputValue.slice(-2)
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
(0, _defineProperty2.default)(this, "handleBlur", event => this.submitChanges(event));
|
|
60
|
+
(0, _defineProperty2.default)(this, "handleSelect", (value, event) => {
|
|
61
|
+
this.dispatchOnChange(value, event);
|
|
62
|
+
});
|
|
63
|
+
(0, _defineProperty2.default)(this, "handleVisibleChange", visible => this.setState({
|
|
64
|
+
visible
|
|
65
|
+
}));
|
|
66
|
+
}
|
|
67
|
+
dispatchOnChange(value, event) {
|
|
68
|
+
this.setState({
|
|
69
|
+
dirtyValue: undefined
|
|
70
|
+
});
|
|
71
|
+
this.asProps.$onValueChange(value, this.field, event);
|
|
72
|
+
}
|
|
73
|
+
submitChanges(event) {
|
|
74
|
+
let {
|
|
75
|
+
dirtyValue
|
|
76
|
+
} = this.state;
|
|
77
|
+
if (dirtyValue !== undefined) {
|
|
78
|
+
// if changes value
|
|
79
|
+
if (dirtyValue) dirtyValue = this.parseValueWithMinMax(dirtyValue); // if not ""
|
|
80
|
+
this.dispatchOnChange(dirtyValue, event);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
render() {
|
|
84
|
+
var _ref = this.asProps,
|
|
85
|
+
_ref2;
|
|
86
|
+
const SPickerInput = _select.default.Trigger;
|
|
87
|
+
const {
|
|
88
|
+
styles,
|
|
89
|
+
step,
|
|
90
|
+
onSelect,
|
|
91
|
+
time,
|
|
92
|
+
size,
|
|
93
|
+
disabled,
|
|
94
|
+
onVisibleChange,
|
|
95
|
+
ariaLabel,
|
|
96
|
+
...other
|
|
97
|
+
} = this.asProps;
|
|
98
|
+
const {
|
|
99
|
+
dirtyValue,
|
|
100
|
+
visible
|
|
101
|
+
} = this.state;
|
|
102
|
+
const value = dirtyValue === undefined ? time : dirtyValue;
|
|
103
|
+
return _ref2 = (0, _core.sstyled)(styles), /*#__PURE__*/_react.default.createElement(_select.default, _ref2.cn("Select", {
|
|
104
|
+
...other,
|
|
105
|
+
"interaction": 'focus',
|
|
106
|
+
"size": size,
|
|
107
|
+
"onChange": (0, _assignProps2.callAllEventHandlers)(onSelect, this.handleSelect),
|
|
108
|
+
"onVisibleChange": (0, _assignProps2.callAllEventHandlers)(onVisibleChange, this.handleVisibleChange),
|
|
109
|
+
"visible": visible,
|
|
110
|
+
"value": time,
|
|
111
|
+
"defaultHighlightedIndex": time ? null : 0
|
|
112
|
+
}), /*#__PURE__*/_react.default.createElement(SPickerInput, _ref2.cn("SPickerInput", {
|
|
113
|
+
...(0, _core.assignProps)({
|
|
114
|
+
"tag": _input.default.Value,
|
|
115
|
+
"ref": this.inputRef,
|
|
116
|
+
"inputMode": 'numeric',
|
|
117
|
+
"size": size,
|
|
118
|
+
"disabled": disabled,
|
|
119
|
+
"neighborLocation": false,
|
|
120
|
+
"value": value,
|
|
121
|
+
"aria-label": ariaLabel,
|
|
122
|
+
"onChange": this.handleChange,
|
|
123
|
+
"onBlur": this.handleBlur,
|
|
124
|
+
"onKeyDown": this.handleKeyDown
|
|
125
|
+
}, _ref)
|
|
126
|
+
})), /*#__PURE__*/_react.default.createElement(_select.default.Menu, {
|
|
127
|
+
hMax: 180
|
|
128
|
+
}, getOptions(this.minMax, step)));
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
(0, _defineProperty2.default)(AbstractPickerInput, "style", style);
|
|
132
|
+
(0, _defineProperty2.default)(AbstractPickerInput, "defaultProps", _ => ({
|
|
133
|
+
placeholder: '00',
|
|
134
|
+
offset: [-8, 4]
|
|
135
|
+
}));
|
|
136
|
+
class Hours extends AbstractPickerInput {
|
|
137
|
+
constructor(...args) {
|
|
138
|
+
super(...args);
|
|
139
|
+
(0, _defineProperty2.default)(this, "handleKeyDown", event => {
|
|
140
|
+
const {
|
|
141
|
+
currentTarget
|
|
142
|
+
} = event;
|
|
143
|
+
if (event.key === 'Enter') {
|
|
144
|
+
this.submitChanges(event);
|
|
145
|
+
}
|
|
146
|
+
if (event.key === 'ArrowRight') {
|
|
147
|
+
if (currentTarget.selectionStart && currentTarget.selectionStart >= currentTarget.value.length && currentTarget.selectionStart === currentTarget.selectionEnd) {
|
|
148
|
+
event.preventDefault();
|
|
149
|
+
this.focusNext();
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
get field() {
|
|
155
|
+
return 'hours';
|
|
156
|
+
}
|
|
157
|
+
get minMax() {
|
|
158
|
+
const {
|
|
159
|
+
is12Hour
|
|
160
|
+
} = this.asProps;
|
|
161
|
+
return is12Hour ? [1, 12] : [0, 23];
|
|
162
|
+
}
|
|
163
|
+
focusNext() {
|
|
164
|
+
if (this.asProps.minutesInputRef.current) {
|
|
165
|
+
this.setState({
|
|
166
|
+
visible: false
|
|
167
|
+
});
|
|
168
|
+
this.asProps.minutesInputRef.current.focus();
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
componentDidUpdate(_, prevState) {
|
|
172
|
+
const {
|
|
173
|
+
dirtyValue
|
|
174
|
+
} = this.state;
|
|
175
|
+
if (prevState.dirtyValue === undefined || dirtyValue === undefined) return;
|
|
176
|
+
if (prevState.dirtyValue.length === 1 && dirtyValue.length === 2) {
|
|
177
|
+
this.focusNext();
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
exports.Hours = Hours;
|
|
182
|
+
(0, _defineProperty2.default)(Hours, "defaultProps", props => ({
|
|
183
|
+
...AbstractPickerInput.defaultProps(props),
|
|
184
|
+
ml: props.size === 'l' ? 3 : undefined
|
|
185
|
+
}));
|
|
186
|
+
class Minutes extends AbstractPickerInput {
|
|
187
|
+
constructor(...args) {
|
|
188
|
+
super(...args);
|
|
189
|
+
(0, _defineProperty2.default)(this, "handleKeyDown", event => {
|
|
190
|
+
const {
|
|
191
|
+
currentTarget
|
|
192
|
+
} = event;
|
|
193
|
+
if (event.key === 'ArrowLeft') {
|
|
194
|
+
if (currentTarget.selectionStart && currentTarget.selectionStart <= 0 && currentTarget.selectionStart === currentTarget.selectionEnd) {
|
|
195
|
+
event.preventDefault();
|
|
196
|
+
this.focusPrev();
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
if (event.key === 'Backspace') {
|
|
200
|
+
if (currentTarget.value.length === 0) {
|
|
201
|
+
event.preventDefault();
|
|
202
|
+
this.focusPrev();
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
if (event.key === 'Enter') this.submitChanges(event);
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
get field() {
|
|
209
|
+
return 'minutes';
|
|
210
|
+
}
|
|
211
|
+
get minMax() {
|
|
212
|
+
return [0, 59];
|
|
213
|
+
}
|
|
214
|
+
focusPrev() {
|
|
215
|
+
if (this.asProps.hoursInputRef.current) {
|
|
216
|
+
this.setState({
|
|
217
|
+
visible: false
|
|
218
|
+
});
|
|
219
|
+
this.asProps.hoursInputRef.current.focus();
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
exports.Minutes = Minutes;
|
|
224
|
+
(0, _defineProperty2.default)(Minutes, "defaultProps", props => ({
|
|
225
|
+
...AbstractPickerInput.defaultProps(props),
|
|
226
|
+
mr: props.size === 'l' ? 3 : undefined
|
|
227
|
+
}));
|
|
228
|
+
//# sourceMappingURL=PickerInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PickerInput.js","names":["_core","require","_assignProps2","_input","_interopRequireDefault","_select","_react","style","sstyled","insert","getOptions","minMax","step","min","max","length","Number","toFixed","options","Array","fill","numValue","map","_i","index","value","String","padStart","default","createElement","Option","key","AbstractPickerInput","Component","constructor","args","_defineProperty2","dirtyValue","undefined","visible","React","createRef","numberValue","isNaN","Math","event","stopPropagation","inputValue","replace","setState","slice","submitChanges","dispatchOnChange","asProps","$onValueChange","field","state","parseValueWithMinMax","render","_ref","_ref2","SPickerInput","Select","Trigger","styles","onSelect","time","size","disabled","onVisibleChange","ariaLabel","other","cn","callAllEventHandlers","handleSelect","handleVisibleChange","assignProps","Input","Value","inputRef","handleChange","handleBlur","handleKeyDown","Menu","hMax","_","placeholder","offset","Hours","currentTarget","selectionStart","selectionEnd","preventDefault","focusNext","is12Hour","minutesInputRef","current","focus","componentDidUpdate","prevState","exports","props","defaultProps","ml","Minutes","focusPrev","hoursInputRef","mr"],"sources":["../../../../src/component/PickerInput/PickerInput.tsx"],"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 style from './picker-input.shadow.css';\nimport type { PickerInputMinMax, PickerInputProps } from './PickerInput.type';\nimport type { TimePickerField } from '../TimePicker/TimePicker.type';\n\nfunction getOptions(minMax: PickerInputMinMax, step = 1) {\n const [min, max] = minMax;\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 = String(numValue).padStart(2, '0');\n\n return (\n <Select.Option value={value} key={value}>\n {value}\n </Select.Option>\n );\n });\n}\n\ntype State = {\n dirtyValue?: string;\n visible: boolean;\n};\n\nabstract class AbstractPickerInput extends Component<PickerInputProps, [], {}, {}, State> {\n static style = style;\n static defaultProps = (_: PickerInputProps) => ({\n placeholder: '00',\n offset: [-8, 4],\n });\n\n state: State = {\n dirtyValue: undefined,\n visible: false,\n };\n\n inputRef = React.createRef();\n\n abstract get field(): TimePickerField;\n abstract get minMax(): PickerInputMinMax;\n abstract handleKeyDown(event: React.KeyboardEvent<HTMLInputElement>): void;\n\n parseValueWithMinMax = (value: string) => {\n const [min, max] = this.minMax;\n\n const numberValue = isNaN(Number(value)) ? min : Number(value);\n\n return String(Math.max(min, Math.min(max, numberValue)));\n };\n\n dispatchOnChange(value: string, event: React.SyntheticEvent) {\n this.setState({ dirtyValue: undefined });\n this.asProps.$onValueChange(value, this.field, event);\n }\n\n submitChanges(event: React.SyntheticEvent) {\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: string, event: React.SyntheticEvent) => {\n event.stopPropagation();\n\n const inputValue = value.replace(/[^0-9]/g, '');\n const numberValue = Number(inputValue);\n\n if (!Number.isNaN(numberValue)) {\n this.setState({ dirtyValue: inputValue.slice(-2) });\n }\n };\n\n handleBlur = (event: React.SyntheticEvent) => this.submitChanges(event);\n\n handleSelect = (value: string, event: React.SyntheticEvent) => {\n this.dispatchOnChange(value, event);\n };\n\n handleVisibleChange = (visible: boolean) => this.setState({ visible });\n\n render() {\n const SPickerInput = Root;\n const { styles, step, onSelect, time, size, disabled, onVisibleChange, ariaLabel, ...other } = this.asProps;\n const { dirtyValue, visible } = this.state;\n const value = dirtyValue === undefined ? time : dirtyValue;\n\n return sstyled(styles)(\n <Select\n {...other}\n interaction='focus'\n size={size}\n onChange={callAllEventHandlers(onSelect, this.handleSelect)}\n onVisibleChange={callAllEventHandlers(onVisibleChange, this.handleVisibleChange)}\n visible={visible}\n value={time}\n defaultHighlightedIndex={time ? null : 0}\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={ariaLabel}\n onChange={this.handleChange}\n onBlur={this.handleBlur}\n onKeyDown={this.handleKeyDown}\n />\n <Select.Menu hMax={180}>{getOptions(this.minMax, step)}</Select.Menu>\n </Select>,\n );\n }\n}\n\nclass Hours extends AbstractPickerInput {\n static defaultProps = (props: PickerInputProps) => ({\n ...AbstractPickerInput.defaultProps(props),\n ml: props.size === 'l' ? 3 : undefined,\n });\n\n get field(): TimePickerField {\n return 'hours';\n }\n\n get minMax(): PickerInputMinMax {\n const { is12Hour } = this.asProps;\n\n return is12Hour ? [1, 12] : [0, 23];\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: React.KeyboardEvent<HTMLInputElement>) => {\n const { currentTarget } = event;\n if (event.key === 'Enter') {\n this.submitChanges(event);\n }\n if (event.key === 'ArrowRight') {\n if (\n currentTarget.selectionStart &&\n currentTarget.selectionStart >= currentTarget.value.length &&\n currentTarget.selectionStart === currentTarget.selectionEnd\n ) {\n event.preventDefault();\n this.focusNext();\n }\n }\n };\n\n componentDidUpdate(_: PickerInputProps, prevState: State) {\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 AbstractPickerInput {\n static defaultProps = (props: PickerInputProps) => ({\n ...AbstractPickerInput.defaultProps(props),\n mr: props.size === 'l' ? 3 : undefined,\n });\n\n get field(): TimePickerField {\n return 'minutes';\n }\n\n get minMax(): PickerInputMinMax {\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: React.KeyboardEvent<HTMLInputElement>) => {\n const { currentTarget } = event;\n if (event.key === 'ArrowLeft') {\n if (\n currentTarget.selectionStart &&\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":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PickerInput.type.js","names":[],"sources":["../../../../src/component/PickerInput/PickerInput.type.ts"],"sourcesContent":["import type { SelectProps } from '@semcore/select';\n\nimport type { TimePickerField, TimePickerItemProps } from '../TimePicker/TimePicker.type';\n\nexport type PickerInputProps = SelectProps & TimePickerItemProps & {\n time: string;\n size?: 'm' | 'l';\n is12Hour?: boolean;\n disabled?: boolean;\n $onValueChange: (value: string, field: TimePickerField, event: React.SyntheticEvent) => void;\n minutesInputRef: React.RefObject<HTMLElement>;\n hoursInputRef: React.RefObject<HTMLElement>;\n ariaLabel: string;\n};\n\nexport type PickerInputMinMax = [number, number];\n"],"mappings":"","ignoreList":[]}
|