@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
@@ -1,281 +0,0 @@
1
- import _objectSpread from "@babel/runtime/helpers/objectSpread2";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
5
- import _createClass from "@babel/runtime/helpers/createClass";
6
- import _callSuper from "@babel/runtime/helpers/callSuper";
7
- import _inherits from "@babel/runtime/helpers/inherits";
8
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
- import { assignProps as _assignProps } from "@semcore/core";
10
- var _excluded = ["styles", "step", "onSelect", "time", "size", "disabled", "onVisibleChange"];
11
- import { Component, sstyled, Root } from '@semcore/core';
12
- import { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';
13
- import Input from '@semcore/input';
14
- import Select from '@semcore/select';
15
- import React from 'react';
16
- import { intOrDefault, withLeadingZero } from './TimePicker';
17
- var MAP_FIELD_TO_TIME = {
18
- hours: 0,
19
- minutes: 1
20
- };
21
- var MAP_SIZE_SELECT = {
22
- m: 'm',
23
- l: 'l'
24
- };
25
- function getOptions(min, max) {
26
- var step = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
27
- var length = Number(((max + 1 - min) / step).toFixed(0));
28
- var options = Array(length).fill('');
29
- var numValue = min;
30
- return options.map(function (_i, index) {
31
- numValue = index === 0 ? numValue : numValue + step;
32
- var value = withLeadingZero(String(numValue));
33
- return /*#__PURE__*/React.createElement(Select.Option, {
34
- value: value,
35
- key: value
36
- }, value);
37
- });
38
- }
39
- var defaultPopperOffset = [-8, 4];
40
- var ItemPicker = /*#__PURE__*/function (_Component) {
41
- function ItemPicker() {
42
- var _this;
43
- _classCallCheck(this, ItemPicker);
44
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
45
- args[_key] = arguments[_key];
46
- }
47
- _this = _callSuper(this, ItemPicker, [].concat(args));
48
- _defineProperty(_this, "inputRef", /*#__PURE__*/React.createRef());
49
- _defineProperty(_this, "state", {
50
- dirtyValue: undefined,
51
- visible: false
52
- });
53
- _defineProperty(_this, "parseValueWithMinMax", function (value) {
54
- var _this$minMax = _this.minMax(),
55
- _this$minMax2 = _slicedToArray(_this$minMax, 2),
56
- min = _this$minMax2[0],
57
- max = _this$minMax2[1];
58
- return String(Math.max(min, Math.min(max, value)));
59
- });
60
- _defineProperty(_this, "handleChange", function (value, event) {
61
- /* hide props for bubbling events */
62
- event.stopPropagation();
63
- var numberValue = intOrDefault(Number(value), Number.NaN);
64
- if (!Number.isNaN(numberValue)) {
65
- _this.setState({
66
- dirtyValue: value.slice(-2)
67
- });
68
- }
69
- });
70
- _defineProperty(_this, "handleBlur", function (event) {
71
- return _this.submitChanges(event);
72
- });
73
- /* rewrite method */
74
- _defineProperty(_this, "handleKeyDown", function () {});
75
- _defineProperty(_this, "handleSelect", function (value, event) {
76
- _this.dispatchOnChange(value, event);
77
- });
78
- _defineProperty(_this, "handleVisibleChange", function (visible) {
79
- return _this.setState({
80
- visible: visible
81
- });
82
- });
83
- _defineProperty(_this, "getAriaLabel", function () {
84
- var getI18nText = _this.asProps._getI18nText;
85
- if (_this.field === 'hours') return getI18nText('hours');
86
- if (_this.field === 'minutes') return getI18nText('minutes');
87
- return undefined;
88
- });
89
- return _this;
90
- }
91
- _inherits(ItemPicker, _Component);
92
- return _createClass(ItemPicker, [{
93
- key: "minMax",
94
- value: function minMax() {
95
- return [];
96
- }
97
- }, {
98
- key: "dispatchOnChange",
99
- value: function dispatchOnChange(value, event) {
100
- this.setState({
101
- dirtyValue: undefined
102
- });
103
- this.asProps.$onValueChange(value, this.field, event);
104
- }
105
- }, {
106
- key: "submitChanges",
107
- value: function submitChanges(event) {
108
- var dirtyValue = this.state.dirtyValue;
109
- if (dirtyValue !== undefined) {
110
- // if changes value
111
- if (dirtyValue) dirtyValue = this.parseValueWithMinMax(dirtyValue); // if not ""
112
- this.dispatchOnChange(dirtyValue, event);
113
- }
114
- }
115
- }, {
116
- key: "render",
117
- value: function render() {
118
- var _ref = this.asProps,
119
- _ref2;
120
- var SPickerInput = Select.Trigger;
121
- var _this$asProps = this.asProps,
122
- styles = _this$asProps.styles,
123
- step = _this$asProps.step,
124
- onSelect = _this$asProps.onSelect,
125
- time = _this$asProps.time,
126
- size = _this$asProps.size,
127
- disabled = _this$asProps.disabled,
128
- onVisibleChange = _this$asProps.onVisibleChange,
129
- other = _objectWithoutProperties(_this$asProps, _excluded);
130
- var _this$state = this.state,
131
- dirtyValue = _this$state.dirtyValue,
132
- visible = _this$state.visible;
133
- var timeValue = time[MAP_FIELD_TO_TIME[this.field]];
134
- var value = dirtyValue === undefined ? timeValue : dirtyValue;
135
- var _this$minMax3 = this.minMax(),
136
- _this$minMax4 = _slicedToArray(_this$minMax3, 2),
137
- min = _this$minMax4[0],
138
- max = _this$minMax4[1];
139
- return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(Select, _ref2.cn("Select", _objectSpread(_objectSpread({}, other), {}, {
140
- "interaction": 'focus',
141
- "size": size ? MAP_SIZE_SELECT[size] : false,
142
- "onChange": callAllEventHandlers(onSelect, this.handleSelect),
143
- "onVisibleChange": callAllEventHandlers(onVisibleChange, this.handleVisibleChange),
144
- "visible": visible,
145
- "value": timeValue
146
- })), /*#__PURE__*/React.createElement(SPickerInput, _ref2.cn("SPickerInput", _objectSpread({}, _assignProps({
147
- "tag": Input.Value,
148
- "ref": this.inputRef,
149
- "inputMode": 'numeric',
150
- "size": size,
151
- "disabled": disabled,
152
- "neighborLocation": false,
153
- "value": value,
154
- "aria-label": this.getAriaLabel(),
155
- "onChange": this.handleChange,
156
- "onBlur": this.handleBlur,
157
- "onKeyDown": this.handleKeyDown
158
- }, _ref)))), /*#__PURE__*/React.createElement(Select.Menu, {
159
- hMax: 180
160
- }, getOptions(min, max, step)));
161
- }
162
- }]);
163
- }(Component);
164
- _defineProperty(ItemPicker, "defaultProps", {
165
- placeholder: '00',
166
- offset: defaultPopperOffset
167
- });
168
- var Hours = /*#__PURE__*/function (_ItemPicker2) {
169
- function Hours() {
170
- var _this2;
171
- _classCallCheck(this, Hours);
172
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
173
- args[_key2] = arguments[_key2];
174
- }
175
- _this2 = _callSuper(this, Hours, [].concat(args));
176
- _defineProperty(_this2, "field", 'hours');
177
- _defineProperty(_this2, "handleKeyDown", function (event) {
178
- var currentTarget = event.currentTarget;
179
- if (event.key === 'Enter') {
180
- _this2.submitChanges(event);
181
- }
182
- if (event.key === 'ArrowRight') {
183
- if (currentTarget.selectionStart >= currentTarget.value.length && currentTarget.selectionStart === currentTarget.selectionEnd) {
184
- event.preventDefault();
185
- _this2.focusNext();
186
- }
187
- }
188
- });
189
- return _this2;
190
- }
191
- _inherits(Hours, _ItemPicker2);
192
- return _createClass(Hours, [{
193
- key: "minMax",
194
- value: function minMax() {
195
- var is12Hour = this.asProps.is12Hour;
196
- if (is12Hour) {
197
- return [1, 12];
198
- } else {
199
- return [0, 23];
200
- }
201
- }
202
- }, {
203
- key: "focusNext",
204
- value: function focusNext() {
205
- if (this.asProps.minutesInputRef.current) {
206
- this.setState({
207
- visible: false
208
- });
209
- this.asProps.minutesInputRef.current.focus();
210
- }
211
- }
212
- }, {
213
- key: "componentDidUpdate",
214
- value: function componentDidUpdate(_prevProps, prevState) {
215
- var dirtyValue = this.state.dirtyValue;
216
- if (prevState.dirtyValue === undefined || dirtyValue === undefined) return;
217
- if (prevState.dirtyValue.length === 1 && dirtyValue.length === 2) {
218
- this.focusNext();
219
- }
220
- }
221
- }]);
222
- }(ItemPicker);
223
- _defineProperty(Hours, "defaultProps", function (_ref3) {
224
- var size = _ref3.size;
225
- return _objectSpread(_objectSpread({}, ItemPicker.defaultProps), {}, {
226
- ml: size === 'l' ? 3 : undefined
227
- });
228
- });
229
- var Minutes = /*#__PURE__*/function (_ItemPicker3) {
230
- function Minutes() {
231
- var _this3;
232
- _classCallCheck(this, Minutes);
233
- for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
234
- args[_key3] = arguments[_key3];
235
- }
236
- _this3 = _callSuper(this, Minutes, [].concat(args));
237
- _defineProperty(_this3, "field", 'minutes');
238
- _defineProperty(_this3, "handleKeyDown", function (event) {
239
- var currentTarget = event.currentTarget;
240
- if (event.key === 'ArrowLeft') {
241
- if (currentTarget.selectionStart <= 0 && currentTarget.selectionStart === currentTarget.selectionEnd) {
242
- event.preventDefault();
243
- _this3.focusPrev();
244
- }
245
- }
246
- if (event.key === 'Backspace') {
247
- if (currentTarget.value.length === 0) {
248
- event.preventDefault();
249
- _this3.focusPrev();
250
- }
251
- }
252
- if (event.key === 'Enter') _this3.submitChanges(event);
253
- });
254
- return _this3;
255
- }
256
- _inherits(Minutes, _ItemPicker3);
257
- return _createClass(Minutes, [{
258
- key: "minMax",
259
- value: function minMax() {
260
- return [0, 59];
261
- }
262
- }, {
263
- key: "focusPrev",
264
- value: function focusPrev() {
265
- if (this.asProps.hoursInputRef.current) {
266
- this.setState({
267
- visible: false
268
- });
269
- this.asProps.hoursInputRef.current.focus();
270
- }
271
- }
272
- }]);
273
- }(ItemPicker);
274
- _defineProperty(Minutes, "defaultProps", function (_ref4) {
275
- var size = _ref4.size;
276
- return _objectSpread(_objectSpread({}, ItemPicker.defaultProps), {}, {
277
- mr: size === 'l' ? 3 : undefined
278
- });
279
- });
280
- export { Hours, Minutes };
281
- //# sourceMappingURL=PickerInput.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PickerInput.js","names":["Component","sstyled","Root","callAllEventHandlers","Input","Select","React","intOrDefault","withLeadingZero","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","String","createElement","Option","key","defaultPopperOffset","ItemPicker","_Component","_this","_classCallCheck","_len","args","_key","_callSuper","concat","_defineProperty","createRef","dirtyValue","visible","_this$minMax","minMax","_this$minMax2","_slicedToArray","Math","event","stopPropagation","numberValue","NaN","isNaN","setState","slice","submitChanges","dispatchOnChange","getI18nText","asProps","_getI18nText","field","_inherits","_createClass","$onValueChange","state","parseValueWithMinMax","render","_ref","_ref2","SPickerInput","Trigger","_this$asProps","styles","onSelect","time","size","disabled","onVisibleChange","other","_objectWithoutProperties","_excluded","_this$state","timeValue","_this$minMax3","_this$minMax4","cn","_objectSpread","handleSelect","handleVisibleChange","_assignProps","Value","inputRef","getAriaLabel","handleChange","handleBlur","handleKeyDown","Menu","hMax","placeholder","offset","Hours","_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":[]}
@@ -1,339 +0,0 @@
1
- import _objectSpread from "@babel/runtime/helpers/objectSpread2";
2
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
4
- import _createClass from "@babel/runtime/helpers/createClass";
5
- import _callSuper from "@babel/runtime/helpers/callSuper";
6
- import _inherits from "@babel/runtime/helpers/inherits";
7
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
8
- import { sstyled as _sstyled } from "@semcore/core";
9
- import { assignProps as _assignProps2 } from "@semcore/core";
10
- import { assignProps as _assignProps } from "@semcore/core";
11
- import { createComponent, Component, sstyled, Root } from '@semcore/core';
12
- import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';
13
- import { Box } from '@semcore/flex-box';
14
- import Input from '@semcore/input';
15
- import React from 'react';
16
- import Format from './PickerFormat';
17
- import { Hours, Minutes } from './PickerInput';
18
- /*!__reshadow-styles__:"./style/time-picker.shadow.css"*/
19
- var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___STimePicker_1g12b_gg_{position:relative;width:auto;outline:0}.___STimePicker_1g12b_gg_ .___SPickerInput_1g12b_gg_{box-sizing:content-box;text-align:center;z-index:1;height:1.5em}.___STimePicker_1g12b_gg_ .___SPickerInput_1g12b_gg_.__placeholder_1g12b_gg_{text-overflow:initial}.___STimePicker_1g12b_gg_ .___SPickerInput_1g12b_gg_:focus{outline:0;background-color:var(--intergalactic-bg-highlight-focus, rgba(0, 143, 248, 0.2))}.___SPickerFormat_1g12b_gg_,.___STimePicker_1g12b_gg_.__disabled_1g12b_gg_{color:var(--intergalactic-text-secondary, #6c6e79);cursor:default}.___SPickerInput_1g12b_gg_._size_l_1g12b_gg_,.___SPickerInput_1g12b_gg_._size_m_1g12b_gg_{width:19px;margin:0 var(--intergalactic-spacing-2x, 8px);padding:0}.___SPickerInput_1g12b_gg_._size_l_1g12b_gg_{width:21px}.___SPickerFormat_1g12b_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;background-color:var(--intergalactic-bg-secondary-neutral, #f4f5f9)}@media (hover:hover){.___SPickerFormat_1g12b_gg_:hover{color:var(--intergalactic-text-secondary, #6c6e79);background-color:var(--intergalactic-bg-secondary-neutral-hover, #e0e1e9)}}.___SPickerFormat_1g12b_gg_.__active_1g12b_gg_,.___SPickerFormat_1g12b_gg_:active{color:var(--intergalactic-text-secondary, #6c6e79);background-color:var(--intergalactic-bg-secondary-neutral-active, #c4c7cf)}.___SPickerFormat_1g12b_gg_._size_m_1g12b_gg_{height:var(--intergalactic-form-control-m, 28px);font-size:var(--intergalactic-fs-200, 14px);margin:0-1px 0 0}.___SPickerFormat_1g12b_gg_._size_m_1g12b_gg_ .___SPickerFormatText_1g12b_gg_{margin:0 var(--intergalactic-spacing-2x, 8px)}.___SPickerFormat_1g12b_gg_._size_l_1g12b_gg_{height:var(--intergalactic-form-control-l, 40px);font-size:var(--intergalactic-fs-300, 16px);margin:0-1px 0 0}.___SPickerFormat_1g12b_gg_._size_l_1g12b_gg_ .___SPickerFormatText_1g12b_gg_{margin:0 var(--intergalactic-spacing-3x, 12px)}.___SPickerFormat_1g12b_gg_.__disabled_1g12b_gg_{cursor:default;border-color:transparent transparent transparent var(--intergalactic-border-primary, #c4c7cf)}.___STimePickerSeparator_1g12b_gg_{color:var(--intergalactic-text-primary, #191b23)}.___SPickerFormat_1g12b_gg_.__disabled_1g12b_gg_,.___STimePickerSeparator_1g12b_gg_.__disabled_1g12b_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);pointer-events:none}", /*__inner_css_end__*/"1g12b_gg_"),
20
- /*__reshadow_css_end__*/
21
- {
22
- "__STimePicker": "___STimePicker_1g12b_gg_",
23
- "_disabled": "__disabled_1g12b_gg_",
24
- "__SPickerInput": "___SPickerInput_1g12b_gg_",
25
- "_size_m": "_size_m_1g12b_gg_",
26
- "_size_l": "_size_l_1g12b_gg_",
27
- "__SPickerFormat": "___SPickerFormat_1g12b_gg_",
28
- "__STimePickerSeparator": "___STimePickerSeparator_1g12b_gg_",
29
- "_placeholder": "__placeholder_1g12b_gg_",
30
- "_active": "__active_1g12b_gg_",
31
- "__SPickerFormatText": "___SPickerFormatText_1g12b_gg_"
32
- });
33
- import { localizedMessages } from './translations/__intergalactic-dynamic-locales';
34
- var MAP_MERIDIEM = {
35
- AM: 'PM',
36
- PM: 'AM'
37
- };
38
- var MAP_FIELD_TO_TIME = {
39
- hours: 0,
40
- minutes: 1
41
- };
42
- export function intOrDefault(value) {
43
- var def = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
44
- var number = Number.parseInt(value);
45
- return Number.isNaN(number) ? def : number;
46
- }
47
- export function withLeadingZero(value) {
48
- value = String(value);
49
- if (value.length === 1) return "0".concat(value);
50
- return String(value);
51
- }
52
- export function meridiemByHours(hours) {
53
- return hours >= 12 ? 'PM' : 'AM';
54
- }
55
- export function formatHoursTo12(hours /* hours by 24 */) {
56
- var nHours = intOrDefault(hours, Number.NaN); // if not (:00)
57
- if (Number.isNaN(nHours)) return hours;
58
-
59
- // if not (HH:00)
60
- if (nHours === 0) return 12; // 0 => 12 PM
61
- if (nHours > 12) return nHours - 12; // 22 => 10 PM
62
-
63
- return hours;
64
- }
65
- export function formatHoursTo24(hours /* hours by 12 */, meridiem) {
66
- var nHours = intOrDefault(hours, Number.NaN); // if not (:00)
67
-
68
- if (Number.isNaN(nHours)) return hours;
69
- if (meridiem === 'AM') {
70
- if (nHours === 12) return 0; // 12 AM => 0
71
- }
72
- if (meridiem === 'PM') {
73
- if (nHours < 12) return nHours + 12; // 10 PM => 22
74
- }
75
- return hours;
76
- }
77
- var TimePickerRoot = /*#__PURE__*/function (_Component) {
78
- function TimePickerRoot() {
79
- var _this;
80
- _classCallCheck(this, TimePickerRoot);
81
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
82
- args[_key] = arguments[_key];
83
- }
84
- _this = _callSuper(this, TimePickerRoot, [].concat(args));
85
- _defineProperty(_this, "hoursInputRef", /*#__PURE__*/React.createRef());
86
- _defineProperty(_this, "minutesInputRef", /*#__PURE__*/React.createRef());
87
- _defineProperty(_this, "_lastMeridiem", 'AM');
88
- _defineProperty(_this, "handleValueChange", function (value, field, event) {
89
- var is12Hour = _this.asProps.is12Hour;
90
- var _this2 = _this,
91
- meridiem = _this2.meridiem;
92
- var time;
93
- if (field) {
94
- time = _this.value.split(':');
95
- time[MAP_FIELD_TO_TIME[field]] = value;
96
- } else {
97
- time = value.split(':');
98
- }
99
- var _time = time,
100
- _time2 = _slicedToArray(_time, 2),
101
- _time2$ = _time2[0],
102
- hours = _time2$ === void 0 ? '' : _time2$,
103
- _time2$2 = _time2[1],
104
- minutes = _time2$2 === void 0 ? '' : _time2$2;
105
- if (is12Hour) hours = String(formatHoursTo12(hours));
106
- value = _this.timeToValue([hours, minutes], meridiem);
107
- _this.handlers.value(value, event);
108
- });
109
- _defineProperty(_this, "handleMeridiemClick", function (event) {
110
- var is12Hour = _this.asProps.is12Hour;
111
- var _this3 = _this,
112
- value = _this3.value,
113
- meridiem = _this3.meridiem;
114
- var _value$split = value.split(':'),
115
- _value$split2 = _slicedToArray(_value$split, 2),
116
- _value$split2$ = _value$split2[0],
117
- hours = _value$split2$ === void 0 ? '' : _value$split2$,
118
- _value$split2$2 = _value$split2[1],
119
- minutes = _value$split2$2 === void 0 ? '' : _value$split2$2;
120
- if (is12Hour) hours = String(formatHoursTo12(hours));
121
- value = _this.timeToValue([hours, minutes], MAP_MERIDIEM[meridiem]);
122
- _this.handlers.value(value, event);
123
- });
124
- _defineProperty(_this, "_getHoursAndMinutesProps", function () {
125
- var _this$asProps = _this.asProps,
126
- is12Hour = _this$asProps.is12Hour,
127
- size = _this$asProps.size,
128
- disabled = _this$asProps.disabled,
129
- getI18nText = _this$asProps.getI18nText;
130
- var time = _this.valueToTime(_this.value);
131
- return {
132
- time: time,
133
- size: size,
134
- is12Hour: is12Hour,
135
- disabled: disabled,
136
- $onValueChange: _this.handleValueChange,
137
- minutesInputRef: _this.minutesInputRef,
138
- hoursInputRef: _this.hoursInputRef,
139
- _getI18nText: getI18nText
140
- };
141
- });
142
- _defineProperty(_this, "getHoursProps", function () {
143
- return _objectSpread(_objectSpread({}, _this._getHoursAndMinutesProps()), {}, {
144
- ref: _this.hoursInputRef
145
- });
146
- });
147
- _defineProperty(_this, "getMinutesProps", function () {
148
- return _objectSpread(_objectSpread({}, _this._getHoursAndMinutesProps()), {}, {
149
- ref: _this.minutesInputRef
150
- });
151
- });
152
- return _this;
153
- }
154
- _inherits(TimePickerRoot, _Component);
155
- return _createClass(TimePickerRoot, [{
156
- key: "uncontrolledProps",
157
- value:
158
- // default AM
159
-
160
- function uncontrolledProps() {
161
- return {
162
- value: null,
163
- title: null
164
- };
165
- }
166
- }, {
167
- key: "componentDidMount",
168
- value: function componentDidMount() {
169
- var _document$querySelect;
170
- var _this$asProps2 = this.asProps,
171
- id = _this$asProps2.id,
172
- ariaDescribedBy = _this$asProps2['aria-describedby'];
173
- var selector = "[for=".concat(id, "]");
174
- var titleElement = (_document$querySelect = document.querySelector(selector)) !== null && _document$querySelect !== void 0 ? _document$querySelect : document.querySelector("#".concat(ariaDescribedBy));
175
- if (titleElement) {
176
- this.handlers.title(titleElement.textContent);
177
- }
178
- }
179
- }, {
180
- key: "value",
181
- get: function get() {
182
- var value = this.asProps.value;
183
- return value === null || value === undefined ? ':' : value;
184
- }
185
- }, {
186
- key: "meridiem",
187
- get: function get() {
188
- var value = this.asProps.value;
189
- var _value$split3 = value.split(':'),
190
- _value$split4 = _slicedToArray(_value$split3, 1),
191
- _value$split4$ = _value$split4[0],
192
- hours = _value$split4$ === void 0 ? '' : _value$split4$;
193
- var nHours = intOrDefault(hours, Number.NaN);
194
- if (!Number.isNaN(nHours)) {
195
- this._lastMeridiem = meridiemByHours(nHours);
196
- }
197
- return this._lastMeridiem;
198
- }
199
- }, {
200
- key: "valueToTime",
201
- value: function valueToTime(value) {
202
- var is12Hour = this.asProps.is12Hour;
203
- var _value$split5 = value.split(':'),
204
- _value$split6 = _slicedToArray(_value$split5, 2),
205
- _value$split6$ = _value$split6[0],
206
- hours = _value$split6$ === void 0 ? '' : _value$split6$,
207
- _value$split6$2 = _value$split6[1],
208
- minutes = _value$split6$2 === void 0 ? '' : _value$split6$2;
209
- if (is12Hour) hours = formatHoursTo12(hours);
210
- hours = withLeadingZero(hours);
211
- minutes = withLeadingZero(minutes);
212
- return [hours, minutes];
213
- }
214
- }, {
215
- key: "timeToValue",
216
- value: function timeToValue(time, meridiem) {
217
- var is12Hour = this.asProps.is12Hour;
218
- var _time3 = _slicedToArray(time, 2),
219
- _time3$ = _time3[0],
220
- hours = _time3$ === void 0 ? '' : _time3$,
221
- _time3$2 = _time3[1],
222
- minutes = _time3$2 === void 0 ? '' : _time3$2;
223
- hours = intOrDefault(hours, hours); // 03 => 3
224
- minutes = intOrDefault(minutes, minutes); // MM => MM
225
-
226
- if (is12Hour) hours = formatHoursTo24(hours, meridiem); // 12 PM -> 0
227
-
228
- return "".concat(hours, ":").concat(minutes);
229
- }
230
- }, {
231
- key: "getSeparatorProps",
232
- value: function getSeparatorProps() {
233
- return {
234
- disabled: this.asProps.disabled,
235
- hoursInputRef: this.hoursInputRef
236
- };
237
- }
238
- }, {
239
- key: "getFormatProps",
240
- value: function getFormatProps() {
241
- var _this$asProps3 = this.asProps,
242
- size = _this$asProps3.size,
243
- disabled = _this$asProps3.disabled,
244
- disablePortal = _this$asProps3.disablePortal,
245
- getI18nText = _this$asProps3.getI18nText;
246
- return {
247
- size: size,
248
- disabled: disabled,
249
- disablePortal: disablePortal,
250
- meridiem: this.meridiem,
251
- onClick: this.handleMeridiemClick,
252
- getI18nText: getI18nText
253
- };
254
- }
255
- }, {
256
- key: "render",
257
- value: function render() {
258
- var _ref = this.asProps,
259
- _ref3;
260
- var STimePicker = Input;
261
- var _this$asProps4 = this.asProps,
262
- styles = _this$asProps4.styles,
263
- Children = _this$asProps4.Children,
264
- value = _this$asProps4.value,
265
- is12Hour = _this$asProps4.is12Hour,
266
- getI18nText = _this$asProps4.getI18nText,
267
- title = _this$asProps4.title;
268
- var _this$valueToTime = this.valueToTime(this.value),
269
- _this$valueToTime2 = _slicedToArray(_this$valueToTime, 2),
270
- hours = _this$valueToTime2[0],
271
- minutes = _this$valueToTime2[1];
272
- var label = value ? "".concat(title, " ").concat(getI18nText('title', {
273
- time: "".concat(hours, ":").concat(withLeadingZero(minutes)),
274
- meridiem: is12Hour ? this.meridiem : ''
275
- })) : "".concat(title, " ").concat(getI18nText('titleEmpty'));
276
- return _ref3 = sstyled(styles), /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(STimePicker, _ref3.cn("STimePicker", _objectSpread({}, _assignProps({
277
- "role": 'group',
278
- "aria-label": label,
279
- "__excludeProps": ['value', 'title']
280
- }, _ref))), /*#__PURE__*/React.createElement(Children, _ref3.cn("Children", {}))));
281
- }
282
- }]);
283
- }(Component);
284
- _defineProperty(TimePickerRoot, "displayName", 'TimePicker');
285
- _defineProperty(TimePickerRoot, "style", style);
286
- _defineProperty(TimePickerRoot, "enhance", [i18nEnhance(localizedMessages)]);
287
- _defineProperty(TimePickerRoot, "defaultProps", function (_ref5) {
288
- var is12Hour = _ref5.is12Hour;
289
- return {
290
- defaultValue: '',
291
- size: 'm',
292
- children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(TimePicker.Hours, null), /*#__PURE__*/React.createElement(TimePicker.Separator, null), /*#__PURE__*/React.createElement(TimePicker.Minutes, null), is12Hour && /*#__PURE__*/React.createElement(TimePicker.Format, null)),
293
- i18n: localizedMessages,
294
- locale: 'en',
295
- defaultTitle: ''
296
- };
297
- });
298
- var Separator = /*#__PURE__*/function (_Component2) {
299
- function Separator() {
300
- var _this4;
301
- _classCallCheck(this, Separator);
302
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
303
- args[_key2] = arguments[_key2];
304
- }
305
- _this4 = _callSuper(this, Separator, [].concat(args));
306
- _defineProperty(_this4, "handlerClick", function () {
307
- if (_this4.asProps.hoursInputRef.current) {
308
- var _this4$asProps$hoursI;
309
- (_this4$asProps$hoursI = _this4.asProps.hoursInputRef.current) === null || _this4$asProps$hoursI === void 0 || _this4$asProps$hoursI.focus();
310
- }
311
- });
312
- return _this4;
313
- }
314
- _inherits(Separator, _Component2);
315
- return _createClass(Separator, [{
316
- key: "render",
317
- value: function render() {
318
- var _ref2 = this.asProps,
319
- _ref4;
320
- var STimePickerSeparator = Box;
321
- var styles = this.asProps.styles;
322
- return _ref4 = sstyled(styles), /*#__PURE__*/React.createElement(STimePickerSeparator, _ref4.cn("STimePickerSeparator", _objectSpread({}, _assignProps2({
323
- "onClick": this.handlerClick,
324
- "aria-hidden": 'true'
325
- }, _ref2))));
326
- }
327
- }]);
328
- }(Component);
329
- _defineProperty(Separator, "defaultProps", {
330
- children: ':'
331
- });
332
- var TimePicker = createComponent(TimePickerRoot, {
333
- Hours: Hours,
334
- Minutes: Minutes,
335
- Separator: Separator,
336
- Format: Format
337
- });
338
- export default TimePicker;
339
- //# sourceMappingURL=TimePicker.js.map