@semcore/time-picker 16.1.14-prerelease.9 → 16.2.0-prerelease.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.
Files changed (85) hide show
  1. package/CHANGELOG.md +3 -4
  2. package/lib/cjs/PickerFormat.js +81 -0
  3. package/lib/cjs/PickerFormat.js.map +1 -0
  4. package/lib/cjs/PickerInput.js +286 -0
  5. package/lib/cjs/PickerInput.js.map +1 -0
  6. package/lib/cjs/TimePicker.js +348 -0
  7. package/lib/cjs/TimePicker.js.map +1 -0
  8. package/lib/cjs/index.d.js +2 -0
  9. package/lib/cjs/index.d.js.map +1 -0
  10. package/lib/cjs/index.js +8 -9
  11. package/lib/cjs/index.js.map +1 -1
  12. package/lib/cjs/style/time-picker.shadow.css +116 -0
  13. package/lib/cjs/translations/__intergalactic-dynamic-locales.js +16 -16
  14. package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
  15. package/lib/es6/PickerFormat.js +75 -0
  16. package/lib/es6/PickerFormat.js.map +1 -0
  17. package/lib/es6/PickerInput.js +281 -0
  18. package/lib/es6/PickerInput.js.map +1 -0
  19. package/lib/es6/TimePicker.js +339 -0
  20. package/lib/es6/TimePicker.js.map +1 -0
  21. package/lib/es6/index.d.js +2 -0
  22. package/lib/es6/index.d.js.map +1 -0
  23. package/lib/es6/index.js +2 -2
  24. package/lib/es6/index.js.map +1 -1
  25. package/lib/es6/style/time-picker.shadow.css +116 -0
  26. package/lib/es6/translations/__intergalactic-dynamic-locales.js +15 -15
  27. package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
  28. package/lib/esm/PickerFormat.mjs +67 -0
  29. package/lib/esm/PickerInput.mjs +263 -0
  30. package/lib/esm/TimePicker.mjs +297 -0
  31. package/lib/esm/index.mjs +7 -2
  32. package/lib/esm/style/time-picker.shadow.css +116 -0
  33. package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +1 -1
  34. package/lib/types/index.d.ts +63 -2
  35. package/package.json +8 -8
  36. package/vite.config.ts +4 -1
  37. package/lib/cjs/component/PickerFormat/PickerFormat.js +0 -84
  38. package/lib/cjs/component/PickerFormat/PickerFormat.js.map +0 -1
  39. package/lib/cjs/component/PickerFormat/PickerFormat.type.js +0 -2
  40. package/lib/cjs/component/PickerFormat/PickerFormat.type.js.map +0 -1
  41. package/lib/cjs/component/PickerFormat/picker-format.shadow.css +0 -61
  42. package/lib/cjs/component/PickerInput/PickerInput.js +0 -228
  43. package/lib/cjs/component/PickerInput/PickerInput.js.map +0 -1
  44. package/lib/cjs/component/PickerInput/PickerInput.type.js +0 -2
  45. package/lib/cjs/component/PickerInput/PickerInput.type.js.map +0 -1
  46. package/lib/cjs/component/PickerInput/picker-input.shadow.css +0 -11
  47. package/lib/cjs/component/TimePicker/TimePicker.js +0 -220
  48. package/lib/cjs/component/TimePicker/TimePicker.js.map +0 -1
  49. package/lib/cjs/component/TimePicker/TimePicker.type.js +0 -2
  50. package/lib/cjs/component/TimePicker/TimePicker.type.js.map +0 -1
  51. package/lib/cjs/component/TimePicker/time-picker.shadow.css +0 -34
  52. package/lib/cjs/entity/TimePickerEntity.js +0 -73
  53. package/lib/cjs/entity/TimePickerEntity.js.map +0 -1
  54. package/lib/es6/component/PickerFormat/PickerFormat.js +0 -79
  55. package/lib/es6/component/PickerFormat/PickerFormat.js.map +0 -1
  56. package/lib/es6/component/PickerFormat/PickerFormat.type.js +0 -2
  57. package/lib/es6/component/PickerFormat/PickerFormat.type.js.map +0 -1
  58. package/lib/es6/component/PickerFormat/picker-format.shadow.css +0 -61
  59. package/lib/es6/component/PickerInput/PickerInput.js +0 -222
  60. package/lib/es6/component/PickerInput/PickerInput.js.map +0 -1
  61. package/lib/es6/component/PickerInput/PickerInput.type.js +0 -2
  62. package/lib/es6/component/PickerInput/PickerInput.type.js.map +0 -1
  63. package/lib/es6/component/PickerInput/picker-input.shadow.css +0 -11
  64. package/lib/es6/component/TimePicker/TimePicker.js +0 -216
  65. package/lib/es6/component/TimePicker/TimePicker.js.map +0 -1
  66. package/lib/es6/component/TimePicker/TimePicker.type.js +0 -2
  67. package/lib/es6/component/TimePicker/TimePicker.type.js.map +0 -1
  68. package/lib/es6/component/TimePicker/time-picker.shadow.css +0 -34
  69. package/lib/es6/entity/TimePickerEntity.js +0 -66
  70. package/lib/es6/entity/TimePickerEntity.js.map +0 -1
  71. package/lib/esm/component/PickerFormat/PickerFormat.mjs +0 -84
  72. package/lib/esm/component/PickerFormat/picker-format.shadow.css +0 -61
  73. package/lib/esm/component/PickerInput/PickerInput.mjs +0 -227
  74. package/lib/esm/component/PickerInput/picker-input.shadow.css +0 -11
  75. package/lib/esm/component/TimePicker/TimePicker.mjs +0 -220
  76. package/lib/esm/component/TimePicker/time-picker.shadow.css +0 -34
  77. package/lib/esm/entity/TimePickerEntity.mjs +0 -65
  78. package/lib/types/component/PickerFormat/PickerFormat.d.ts +0 -17
  79. package/lib/types/component/PickerFormat/PickerFormat.type.d.ts +0 -16
  80. package/lib/types/component/PickerInput/PickerInput.d.ts +0 -54
  81. package/lib/types/component/PickerInput/PickerInput.type.d.ts +0 -13
  82. package/lib/types/component/TimePicker/TimePicker.d.ts +0 -3
  83. package/lib/types/component/TimePicker/TimePicker.type.d.ts +0 -50
  84. package/lib/types/entity/TimePickerEntity.d.ts +0 -22
  85. package/lib/types/translations/__intergalactic-dynamic-locales.d.ts +0 -114
package/CHANGELOG.md CHANGED
@@ -2,12 +2,11 @@
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
5
+ ## [16.2.0] - 2026-05-07
6
6
 
7
- ### Changed
7
+ ### Added
8
8
 
9
- - Rewrite component to TS
10
- - `onChange` format to `HH:mm`
9
+ - New brand theme.
11
10
 
12
11
  ## [16.1.13] - 2025-12-01
13
12
 
@@ -0,0 +1,81 @@
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
@@ -0,0 +1 @@
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":[]}
@@ -0,0 +1,286 @@
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 _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+ var _callSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/callSuper"));
14
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
+ var _core = require("@semcore/core");
17
+ var _assignProps2 = require("@semcore/core/lib/utils/assignProps");
18
+ var _input = _interopRequireDefault(require("@semcore/input"));
19
+ var _select = _interopRequireDefault(require("@semcore/select"));
20
+ var _react = _interopRequireDefault(require("react"));
21
+ var _TimePicker = require("./TimePicker");
22
+ var _excluded = ["styles", "step", "onSelect", "time", "size", "disabled", "onVisibleChange"];
23
+ var MAP_FIELD_TO_TIME = {
24
+ hours: 0,
25
+ minutes: 1
26
+ };
27
+ var MAP_SIZE_SELECT = {
28
+ m: 'm',
29
+ l: 'l'
30
+ };
31
+ function getOptions(min, max) {
32
+ var step = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
33
+ var length = Number(((max + 1 - min) / step).toFixed(0));
34
+ var options = Array(length).fill('');
35
+ var numValue = min;
36
+ return options.map(function (_i, index) {
37
+ numValue = index === 0 ? numValue : numValue + step;
38
+ var value = (0, _TimePicker.withLeadingZero)(String(numValue));
39
+ return /*#__PURE__*/_react["default"].createElement(_select["default"].Option, {
40
+ value: value,
41
+ key: value
42
+ }, value);
43
+ });
44
+ }
45
+ var defaultPopperOffset = [-8, 4];
46
+ var ItemPicker = /*#__PURE__*/function (_Component) {
47
+ function ItemPicker() {
48
+ var _this;
49
+ (0, _classCallCheck2["default"])(this, ItemPicker);
50
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
51
+ args[_key] = arguments[_key];
52
+ }
53
+ _this = (0, _callSuper2["default"])(this, ItemPicker, [].concat(args));
54
+ (0, _defineProperty2["default"])(_this, "inputRef", /*#__PURE__*/_react["default"].createRef());
55
+ (0, _defineProperty2["default"])(_this, "state", {
56
+ dirtyValue: undefined,
57
+ visible: false
58
+ });
59
+ (0, _defineProperty2["default"])(_this, "parseValueWithMinMax", function (value) {
60
+ var _this$minMax = _this.minMax(),
61
+ _this$minMax2 = (0, _slicedToArray2["default"])(_this$minMax, 2),
62
+ min = _this$minMax2[0],
63
+ max = _this$minMax2[1];
64
+ return String(Math.max(min, Math.min(max, value)));
65
+ });
66
+ (0, _defineProperty2["default"])(_this, "handleChange", function (value, event) {
67
+ /* hide props for bubbling events */
68
+ event.stopPropagation();
69
+ var numberValue = (0, _TimePicker.intOrDefault)(Number(value), Number.NaN);
70
+ if (!Number.isNaN(numberValue)) {
71
+ _this.setState({
72
+ dirtyValue: value.slice(-2)
73
+ });
74
+ }
75
+ });
76
+ (0, _defineProperty2["default"])(_this, "handleBlur", function (event) {
77
+ return _this.submitChanges(event);
78
+ });
79
+ /* rewrite method */
80
+ (0, _defineProperty2["default"])(_this, "handleKeyDown", function () {});
81
+ (0, _defineProperty2["default"])(_this, "handleSelect", function (value, event) {
82
+ _this.dispatchOnChange(value, event);
83
+ });
84
+ (0, _defineProperty2["default"])(_this, "handleVisibleChange", function (visible) {
85
+ return _this.setState({
86
+ visible: visible
87
+ });
88
+ });
89
+ (0, _defineProperty2["default"])(_this, "getAriaLabel", function () {
90
+ var getI18nText = _this.asProps._getI18nText;
91
+ if (_this.field === 'hours') return getI18nText('hours');
92
+ if (_this.field === 'minutes') return getI18nText('minutes');
93
+ return undefined;
94
+ });
95
+ return _this;
96
+ }
97
+ (0, _inherits2["default"])(ItemPicker, _Component);
98
+ return (0, _createClass2["default"])(ItemPicker, [{
99
+ key: "minMax",
100
+ value: function minMax() {
101
+ return [];
102
+ }
103
+ }, {
104
+ key: "dispatchOnChange",
105
+ value: function dispatchOnChange(value, event) {
106
+ this.setState({
107
+ dirtyValue: undefined
108
+ });
109
+ this.asProps.$onValueChange(value, this.field, event);
110
+ }
111
+ }, {
112
+ key: "submitChanges",
113
+ value: function submitChanges(event) {
114
+ var dirtyValue = this.state.dirtyValue;
115
+ if (dirtyValue !== undefined) {
116
+ // if changes value
117
+ if (dirtyValue) dirtyValue = this.parseValueWithMinMax(dirtyValue); // if not ""
118
+ this.dispatchOnChange(dirtyValue, event);
119
+ }
120
+ }
121
+ }, {
122
+ key: "render",
123
+ value: function render() {
124
+ var _ref = this.asProps,
125
+ _ref2;
126
+ var SPickerInput = _select["default"].Trigger;
127
+ var _this$asProps = this.asProps,
128
+ styles = _this$asProps.styles,
129
+ step = _this$asProps.step,
130
+ onSelect = _this$asProps.onSelect,
131
+ time = _this$asProps.time,
132
+ size = _this$asProps.size,
133
+ disabled = _this$asProps.disabled,
134
+ onVisibleChange = _this$asProps.onVisibleChange,
135
+ other = (0, _objectWithoutProperties2["default"])(_this$asProps, _excluded);
136
+ var _this$state = this.state,
137
+ dirtyValue = _this$state.dirtyValue,
138
+ visible = _this$state.visible;
139
+ var timeValue = time[MAP_FIELD_TO_TIME[this.field]];
140
+ var value = dirtyValue === undefined ? timeValue : dirtyValue;
141
+ var _this$minMax3 = this.minMax(),
142
+ _this$minMax4 = (0, _slicedToArray2["default"])(_this$minMax3, 2),
143
+ min = _this$minMax4[0],
144
+ max = _this$minMax4[1];
145
+ return _ref2 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(_select["default"], _ref2.cn("Select", (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, other), {}, {
146
+ "interaction": 'focus',
147
+ "size": size ? MAP_SIZE_SELECT[size] : false,
148
+ "onChange": (0, _assignProps2.callAllEventHandlers)(onSelect, this.handleSelect),
149
+ "onVisibleChange": (0, _assignProps2.callAllEventHandlers)(onVisibleChange, this.handleVisibleChange),
150
+ "visible": visible,
151
+ "value": timeValue
152
+ })), /*#__PURE__*/_react["default"].createElement(SPickerInput, _ref2.cn("SPickerInput", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
153
+ "tag": _input["default"].Value,
154
+ "ref": this.inputRef,
155
+ "inputMode": 'numeric',
156
+ "size": size,
157
+ "disabled": disabled,
158
+ "neighborLocation": false,
159
+ "value": value,
160
+ "aria-label": this.getAriaLabel(),
161
+ "onChange": this.handleChange,
162
+ "onBlur": this.handleBlur,
163
+ "onKeyDown": this.handleKeyDown
164
+ }, _ref)))), /*#__PURE__*/_react["default"].createElement(_select["default"].Menu, {
165
+ hMax: 180
166
+ }, getOptions(min, max, step)));
167
+ }
168
+ }]);
169
+ }(_core.Component);
170
+ (0, _defineProperty2["default"])(ItemPicker, "defaultProps", {
171
+ placeholder: '00',
172
+ offset: defaultPopperOffset
173
+ });
174
+ var Hours = exports.Hours = /*#__PURE__*/function (_ItemPicker2) {
175
+ function Hours() {
176
+ var _this2;
177
+ (0, _classCallCheck2["default"])(this, Hours);
178
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
179
+ args[_key2] = arguments[_key2];
180
+ }
181
+ _this2 = (0, _callSuper2["default"])(this, Hours, [].concat(args));
182
+ (0, _defineProperty2["default"])(_this2, "field", 'hours');
183
+ (0, _defineProperty2["default"])(_this2, "handleKeyDown", function (event) {
184
+ var currentTarget = event.currentTarget;
185
+ if (event.key === 'Enter') {
186
+ _this2.submitChanges(event);
187
+ }
188
+ if (event.key === 'ArrowRight') {
189
+ if (currentTarget.selectionStart >= currentTarget.value.length && currentTarget.selectionStart === currentTarget.selectionEnd) {
190
+ event.preventDefault();
191
+ _this2.focusNext();
192
+ }
193
+ }
194
+ });
195
+ return _this2;
196
+ }
197
+ (0, _inherits2["default"])(Hours, _ItemPicker2);
198
+ return (0, _createClass2["default"])(Hours, [{
199
+ key: "minMax",
200
+ value: function minMax() {
201
+ var is12Hour = this.asProps.is12Hour;
202
+ if (is12Hour) {
203
+ return [1, 12];
204
+ } else {
205
+ return [0, 23];
206
+ }
207
+ }
208
+ }, {
209
+ key: "focusNext",
210
+ value: function focusNext() {
211
+ if (this.asProps.minutesInputRef.current) {
212
+ this.setState({
213
+ visible: false
214
+ });
215
+ this.asProps.minutesInputRef.current.focus();
216
+ }
217
+ }
218
+ }, {
219
+ key: "componentDidUpdate",
220
+ value: function componentDidUpdate(_prevProps, prevState) {
221
+ var dirtyValue = this.state.dirtyValue;
222
+ if (prevState.dirtyValue === undefined || dirtyValue === undefined) return;
223
+ if (prevState.dirtyValue.length === 1 && dirtyValue.length === 2) {
224
+ this.focusNext();
225
+ }
226
+ }
227
+ }]);
228
+ }(ItemPicker);
229
+ (0, _defineProperty2["default"])(Hours, "defaultProps", function (_ref3) {
230
+ var size = _ref3.size;
231
+ return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, ItemPicker.defaultProps), {}, {
232
+ ml: size === 'l' ? 3 : undefined
233
+ });
234
+ });
235
+ var Minutes = exports.Minutes = /*#__PURE__*/function (_ItemPicker3) {
236
+ function Minutes() {
237
+ var _this3;
238
+ (0, _classCallCheck2["default"])(this, Minutes);
239
+ for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
240
+ args[_key3] = arguments[_key3];
241
+ }
242
+ _this3 = (0, _callSuper2["default"])(this, Minutes, [].concat(args));
243
+ (0, _defineProperty2["default"])(_this3, "field", 'minutes');
244
+ (0, _defineProperty2["default"])(_this3, "handleKeyDown", function (event) {
245
+ var currentTarget = event.currentTarget;
246
+ if (event.key === 'ArrowLeft') {
247
+ if (currentTarget.selectionStart <= 0 && currentTarget.selectionStart === currentTarget.selectionEnd) {
248
+ event.preventDefault();
249
+ _this3.focusPrev();
250
+ }
251
+ }
252
+ if (event.key === 'Backspace') {
253
+ if (currentTarget.value.length === 0) {
254
+ event.preventDefault();
255
+ _this3.focusPrev();
256
+ }
257
+ }
258
+ if (event.key === 'Enter') _this3.submitChanges(event);
259
+ });
260
+ return _this3;
261
+ }
262
+ (0, _inherits2["default"])(Minutes, _ItemPicker3);
263
+ return (0, _createClass2["default"])(Minutes, [{
264
+ key: "minMax",
265
+ value: function minMax() {
266
+ return [0, 59];
267
+ }
268
+ }, {
269
+ key: "focusPrev",
270
+ value: function focusPrev() {
271
+ if (this.asProps.hoursInputRef.current) {
272
+ this.setState({
273
+ visible: false
274
+ });
275
+ this.asProps.hoursInputRef.current.focus();
276
+ }
277
+ }
278
+ }]);
279
+ }(ItemPicker);
280
+ (0, _defineProperty2["default"])(Minutes, "defaultProps", function (_ref4) {
281
+ var size = _ref4.size;
282
+ return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, ItemPicker.defaultProps), {}, {
283
+ mr: size === 'l' ? 3 : undefined
284
+ });
285
+ });
286
+ //# sourceMappingURL=PickerInput.js.map
@@ -0,0 +1 @@
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":[]}