@semcore/time-picker 16.1.13 → 16.1.14-prerelease.9

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.
Files changed (83) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/README.md +4 -4
  3. package/lib/cjs/component/PickerFormat/PickerFormat.js +84 -0
  4. package/lib/cjs/component/PickerFormat/PickerFormat.js.map +1 -0
  5. package/lib/cjs/component/PickerFormat/PickerFormat.type.js +2 -0
  6. package/lib/cjs/component/PickerFormat/PickerFormat.type.js.map +1 -0
  7. package/lib/cjs/{style/time-picker.shadow.css → component/PickerFormat/picker-format.shadow.css} +1 -56
  8. package/lib/cjs/component/PickerInput/PickerInput.js +228 -0
  9. package/lib/cjs/component/PickerInput/PickerInput.js.map +1 -0
  10. package/lib/cjs/component/PickerInput/PickerInput.type.js +2 -0
  11. package/lib/cjs/component/PickerInput/PickerInput.type.js.map +1 -0
  12. package/lib/cjs/component/PickerInput/picker-input.shadow.css +11 -0
  13. package/lib/cjs/component/TimePicker/TimePicker.js +220 -0
  14. package/lib/cjs/component/TimePicker/TimePicker.js.map +1 -0
  15. package/lib/cjs/component/TimePicker/TimePicker.type.js +2 -0
  16. package/lib/cjs/component/TimePicker/TimePicker.type.js.map +1 -0
  17. package/lib/cjs/component/TimePicker/time-picker.shadow.css +34 -0
  18. package/lib/cjs/entity/TimePickerEntity.js +73 -0
  19. package/lib/cjs/entity/TimePickerEntity.js.map +1 -0
  20. package/lib/cjs/index.js +9 -8
  21. package/lib/cjs/index.js.map +1 -1
  22. package/lib/cjs/translations/__intergalactic-dynamic-locales.js +16 -16
  23. package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
  24. package/lib/es6/component/PickerFormat/PickerFormat.js +79 -0
  25. package/lib/es6/component/PickerFormat/PickerFormat.js.map +1 -0
  26. package/lib/es6/component/PickerFormat/PickerFormat.type.js +2 -0
  27. package/lib/es6/component/PickerFormat/PickerFormat.type.js.map +1 -0
  28. package/lib/{esm/style/time-picker.shadow.css → es6/component/PickerFormat/picker-format.shadow.css} +1 -56
  29. package/lib/es6/component/PickerInput/PickerInput.js +222 -0
  30. package/lib/es6/component/PickerInput/PickerInput.js.map +1 -0
  31. package/lib/es6/component/PickerInput/PickerInput.type.js +2 -0
  32. package/lib/es6/component/PickerInput/PickerInput.type.js.map +1 -0
  33. package/lib/es6/component/PickerInput/picker-input.shadow.css +11 -0
  34. package/lib/es6/component/TimePicker/TimePicker.js +216 -0
  35. package/lib/es6/component/TimePicker/TimePicker.js.map +1 -0
  36. package/lib/es6/component/TimePicker/TimePicker.type.js +2 -0
  37. package/lib/es6/component/TimePicker/TimePicker.type.js.map +1 -0
  38. package/lib/es6/component/TimePicker/time-picker.shadow.css +34 -0
  39. package/lib/es6/entity/TimePickerEntity.js +66 -0
  40. package/lib/es6/entity/TimePickerEntity.js.map +1 -0
  41. package/lib/es6/index.js +2 -2
  42. package/lib/es6/index.js.map +1 -1
  43. package/lib/es6/translations/__intergalactic-dynamic-locales.js +15 -15
  44. package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
  45. package/lib/esm/component/PickerFormat/PickerFormat.mjs +84 -0
  46. package/lib/{es6/style/time-picker.shadow.css → esm/component/PickerFormat/picker-format.shadow.css} +1 -56
  47. package/lib/esm/component/PickerInput/PickerInput.mjs +227 -0
  48. package/lib/esm/component/PickerInput/picker-input.shadow.css +11 -0
  49. package/lib/esm/component/TimePicker/TimePicker.mjs +220 -0
  50. package/lib/esm/component/TimePicker/time-picker.shadow.css +34 -0
  51. package/lib/esm/entity/TimePickerEntity.mjs +65 -0
  52. package/lib/esm/index.mjs +2 -7
  53. package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +1 -1
  54. package/lib/types/component/PickerFormat/PickerFormat.d.ts +17 -0
  55. package/lib/types/component/PickerFormat/PickerFormat.type.d.ts +16 -0
  56. package/lib/types/component/PickerInput/PickerInput.d.ts +54 -0
  57. package/lib/types/component/PickerInput/PickerInput.type.d.ts +13 -0
  58. package/lib/types/component/TimePicker/TimePicker.d.ts +3 -0
  59. package/lib/types/component/TimePicker/TimePicker.type.d.ts +50 -0
  60. package/lib/types/entity/TimePickerEntity.d.ts +22 -0
  61. package/lib/types/index.d.ts +2 -63
  62. package/lib/types/translations/__intergalactic-dynamic-locales.d.ts +114 -0
  63. package/package.json +6 -6
  64. package/vite.config.ts +1 -4
  65. package/lib/cjs/PickerFormat.js +0 -81
  66. package/lib/cjs/PickerFormat.js.map +0 -1
  67. package/lib/cjs/PickerInput.js +0 -286
  68. package/lib/cjs/PickerInput.js.map +0 -1
  69. package/lib/cjs/TimePicker.js +0 -348
  70. package/lib/cjs/TimePicker.js.map +0 -1
  71. package/lib/cjs/index.d.js +0 -2
  72. package/lib/cjs/index.d.js.map +0 -1
  73. package/lib/es6/PickerFormat.js +0 -75
  74. package/lib/es6/PickerFormat.js.map +0 -1
  75. package/lib/es6/PickerInput.js +0 -281
  76. package/lib/es6/PickerInput.js.map +0 -1
  77. package/lib/es6/TimePicker.js +0 -339
  78. package/lib/es6/TimePicker.js.map +0 -1
  79. package/lib/es6/index.d.js +0 -2
  80. package/lib/es6/index.d.js.map +0 -1
  81. package/lib/esm/PickerFormat.mjs +0 -67
  82. package/lib/esm/PickerInput.mjs +0 -263
  83. 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
  [![version](https://img.shields.io/npm/v/@semcore/time-picker.svg)](https://www.npmjs.com/@semcore/time-picker)
4
4
  [![downloads](https://img.shields.io/npm/dt/@semcore/time-picker.svg)](https://www.npmjs.com/package/@semcore/time-picker)
5
- [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://github.com/semrush/intergalactic/blob/master/LICENSE)
5
+ [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](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/master/MAINTAINERS) and [others ❤️](https://github.com/semrush/intergalactic/graphs/contributors)
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/master/CONTRIBUTING.md).
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/master/LICENSE) licensed.
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,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=PickerFormat.type.js.map
@@ -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":[]}
@@ -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,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=PickerInput.type.js.map
@@ -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":[]}
@@ -0,0 +1,11 @@
1
+ SPickerInput[size='m'] {
2
+ width: 19px;
3
+ margin: 0 var(--intergalactic-spacing-2x, 8px);
4
+ padding: 0;
5
+ }
6
+
7
+ SPickerInput[size='l'] {
8
+ width: 21px;
9
+ margin: 0 var(--intergalactic-spacing-2x, 8px);
10
+ padding: 0;
11
+ }