@semcore/time-picker 3.4.37 → 3.4.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/lib/cjs/PickerFormat.js +5 -22
- package/lib/cjs/PickerFormat.js.map +1 -1
- package/lib/cjs/PickerInput.js +18 -74
- package/lib/cjs/PickerInput.js.map +1 -1
- package/lib/cjs/TimePicker.js +60 -137
- package/lib/cjs/TimePicker.js.map +1 -1
- package/lib/cjs/index.js +0 -3
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js +0 -13
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/es6/PickerFormat.js +5 -14
- package/lib/es6/PickerFormat.js.map +1 -1
- package/lib/es6/PickerInput.js +18 -77
- package/lib/es6/PickerInput.js.map +1 -1
- package/lib/es6/TimePicker.js +60 -131
- package/lib/es6/TimePicker.js.map +1 -1
- package/lib/es6/index.js.map +1 -1
- package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
- package/package.json +1 -1
package/lib/es6/PickerInput.js
CHANGED
|
@@ -23,7 +23,6 @@ var MAP_SIZE_SELECT = {
|
|
|
23
23
|
m: 'm',
|
|
24
24
|
l: 'l'
|
|
25
25
|
};
|
|
26
|
-
|
|
27
26
|
function getOptions(min, max) {
|
|
28
27
|
var step = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
|
|
29
28
|
var length = Number(((max + 1 - min) / step).toFixed(0));
|
|
@@ -38,77 +37,59 @@ function getOptions(min, max) {
|
|
|
38
37
|
}, value);
|
|
39
38
|
});
|
|
40
39
|
}
|
|
41
|
-
|
|
42
40
|
var ItemPicker = /*#__PURE__*/function (_Component) {
|
|
43
41
|
_inherits(ItemPicker, _Component);
|
|
44
|
-
|
|
45
42
|
var _super = _createSuper(ItemPicker);
|
|
46
|
-
|
|
47
43
|
function ItemPicker() {
|
|
48
44
|
var _this;
|
|
49
|
-
|
|
50
45
|
_classCallCheck(this, ItemPicker);
|
|
51
|
-
|
|
52
46
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
53
47
|
args[_key] = arguments[_key];
|
|
54
48
|
}
|
|
55
|
-
|
|
56
49
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
57
|
-
|
|
58
50
|
_defineProperty(_assertThisInitialized(_this), "inputRef", /*#__PURE__*/React.createRef());
|
|
59
|
-
|
|
60
51
|
_defineProperty(_assertThisInitialized(_this), "state", {
|
|
61
52
|
dirtyValue: undefined,
|
|
62
53
|
visible: false
|
|
63
54
|
});
|
|
64
|
-
|
|
65
55
|
_defineProperty(_assertThisInitialized(_this), "parseValueWithMinMax", function (value) {
|
|
66
56
|
var _this$minMax = _this.minMax(),
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
57
|
+
_this$minMax2 = _slicedToArray(_this$minMax, 2),
|
|
58
|
+
min = _this$minMax2[0],
|
|
59
|
+
max = _this$minMax2[1];
|
|
71
60
|
return String(Math.max(min, Math.min(max, value)));
|
|
72
61
|
});
|
|
73
|
-
|
|
74
62
|
_defineProperty(_assertThisInitialized(_this), "handleChange", function (value, e) {
|
|
75
63
|
/* hide props for bubbling events */
|
|
76
64
|
e.stopPropagation();
|
|
77
65
|
var numberValue = intOrDefault(Number(value), NaN);
|
|
78
|
-
|
|
79
66
|
if (!Number.isNaN(numberValue)) {
|
|
80
67
|
_this.setState({
|
|
81
68
|
dirtyValue: value.slice(-2)
|
|
82
69
|
});
|
|
83
70
|
}
|
|
84
71
|
});
|
|
85
|
-
|
|
86
72
|
_defineProperty(_assertThisInitialized(_this), "handleBlur", function (e) {
|
|
87
73
|
return _this.submitChanges(e);
|
|
88
74
|
});
|
|
89
|
-
|
|
75
|
+
/* rewrite method */
|
|
90
76
|
_defineProperty(_assertThisInitialized(_this), "handleKeyDown", function () {});
|
|
91
|
-
|
|
92
77
|
_defineProperty(_assertThisInitialized(_this), "handleSelect", function (value, e) {
|
|
93
78
|
_this.dispatchOnChange(value, e);
|
|
94
79
|
});
|
|
95
|
-
|
|
96
80
|
_defineProperty(_assertThisInitialized(_this), "handleVisibleChange", function (visible) {
|
|
97
81
|
return _this.setState({
|
|
98
82
|
visible: visible
|
|
99
83
|
});
|
|
100
84
|
});
|
|
101
|
-
|
|
102
85
|
_defineProperty(_assertThisInitialized(_this), "getAriaLabel", function () {
|
|
103
86
|
var getI18nText = _this.asProps._getI18nText;
|
|
104
87
|
if (_this.field === 'hours') return getI18nText('hours');
|
|
105
88
|
if (_this.field === 'minutes') return getI18nText('minutes');
|
|
106
89
|
return undefined;
|
|
107
90
|
});
|
|
108
|
-
|
|
109
91
|
return _this;
|
|
110
92
|
}
|
|
111
|
-
|
|
112
93
|
_createClass(ItemPicker, [{
|
|
113
94
|
key: "minMax",
|
|
114
95
|
value: function minMax() {
|
|
@@ -126,11 +107,9 @@ var ItemPicker = /*#__PURE__*/function (_Component) {
|
|
|
126
107
|
key: "submitChanges",
|
|
127
108
|
value: function submitChanges(event) {
|
|
128
109
|
var dirtyValue = this.state.dirtyValue;
|
|
129
|
-
|
|
130
110
|
if (dirtyValue !== undefined) {
|
|
131
111
|
// if changes value
|
|
132
112
|
if (dirtyValue) dirtyValue = this.parseValueWithMinMax(dirtyValue); // if not ""
|
|
133
|
-
|
|
134
113
|
this.dispatchOnChange(dirtyValue, event);
|
|
135
114
|
}
|
|
136
115
|
}
|
|
@@ -138,31 +117,26 @@ var ItemPicker = /*#__PURE__*/function (_Component) {
|
|
|
138
117
|
key: "render",
|
|
139
118
|
value: function render() {
|
|
140
119
|
var _ref = this.asProps,
|
|
141
|
-
|
|
142
|
-
|
|
120
|
+
_ref2;
|
|
143
121
|
var SPickerInput = Select.Trigger;
|
|
144
|
-
|
|
145
122
|
var _this$asProps = this.asProps,
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
123
|
+
styles = _this$asProps.styles,
|
|
124
|
+
step = _this$asProps.step,
|
|
125
|
+
onSelect = _this$asProps.onSelect,
|
|
126
|
+
time = _this$asProps.time,
|
|
127
|
+
size = _this$asProps.size,
|
|
128
|
+
disabled = _this$asProps.disabled,
|
|
129
|
+
onVisibleChange = _this$asProps.onVisibleChange,
|
|
130
|
+
other = _objectWithoutProperties(_this$asProps, _excluded);
|
|
155
131
|
var _this$state = this.state,
|
|
156
|
-
|
|
157
|
-
|
|
132
|
+
dirtyValue = _this$state.dirtyValue,
|
|
133
|
+
visible = _this$state.visible;
|
|
158
134
|
var timeValue = time[MAP_FIELD_TO_TIME[this.field]];
|
|
159
135
|
var value = dirtyValue === undefined ? timeValue : dirtyValue;
|
|
160
|
-
|
|
161
136
|
var _this$minMax3 = this.minMax(),
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
137
|
+
_this$minMax4 = _slicedToArray(_this$minMax3, 2),
|
|
138
|
+
min = _this$minMax4[0],
|
|
139
|
+
max = _this$minMax4[1];
|
|
166
140
|
return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(Select, _ref2.cn("Select", _objectSpread(_objectSpread({}, other), {}, {
|
|
167
141
|
"interaction": "focus",
|
|
168
142
|
"size": size ? MAP_SIZE_SELECT[size] : false,
|
|
@@ -188,53 +162,38 @@ var ItemPicker = /*#__PURE__*/function (_Component) {
|
|
|
188
162
|
}, getOptions(min, max, step)));
|
|
189
163
|
}
|
|
190
164
|
}]);
|
|
191
|
-
|
|
192
165
|
return ItemPicker;
|
|
193
166
|
}(Component);
|
|
194
|
-
|
|
195
167
|
_defineProperty(ItemPicker, "defaultProps", {
|
|
196
168
|
placeholder: '00'
|
|
197
169
|
});
|
|
198
|
-
|
|
199
170
|
var Hours = /*#__PURE__*/function (_ItemPicker) {
|
|
200
171
|
_inherits(Hours, _ItemPicker);
|
|
201
|
-
|
|
202
172
|
var _super2 = _createSuper(Hours);
|
|
203
|
-
|
|
204
173
|
function Hours() {
|
|
205
174
|
var _this2;
|
|
206
|
-
|
|
207
175
|
_classCallCheck(this, Hours);
|
|
208
|
-
|
|
209
176
|
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
|
210
177
|
args[_key2] = arguments[_key2];
|
|
211
178
|
}
|
|
212
|
-
|
|
213
179
|
_this2 = _super2.call.apply(_super2, [this].concat(args));
|
|
214
|
-
|
|
215
180
|
_defineProperty(_assertThisInitialized(_this2), "field", 'hours');
|
|
216
|
-
|
|
217
181
|
_defineProperty(_assertThisInitialized(_this2), "handleKeyDown", function (e) {
|
|
218
182
|
var currentTarget = e.currentTarget;
|
|
219
183
|
if (e.keyCode === 13) _this2.submitChanges(e);
|
|
220
|
-
|
|
221
184
|
if (e.keyCode === 39) {
|
|
222
185
|
if (currentTarget.selectionStart >= currentTarget.value.length && currentTarget.selectionStart === currentTarget.selectionEnd) {
|
|
223
186
|
e.preventDefault();
|
|
224
|
-
|
|
225
187
|
_this2.nextInput();
|
|
226
188
|
}
|
|
227
189
|
}
|
|
228
190
|
});
|
|
229
|
-
|
|
230
191
|
return _this2;
|
|
231
192
|
}
|
|
232
|
-
|
|
233
193
|
_createClass(Hours, [{
|
|
234
194
|
key: "minMax",
|
|
235
195
|
value: function minMax() {
|
|
236
196
|
var is12Hour = this.asProps.is12Hour;
|
|
237
|
-
|
|
238
197
|
if (is12Hour) {
|
|
239
198
|
return [1, 12];
|
|
240
199
|
} else {
|
|
@@ -256,58 +215,42 @@ var Hours = /*#__PURE__*/function (_ItemPicker) {
|
|
|
256
215
|
value: function componentDidUpdate(prevProps, prevState) {
|
|
257
216
|
var dirtyValue = this.state.dirtyValue;
|
|
258
217
|
if (prevState.dirtyValue === undefined || dirtyValue === undefined) return;
|
|
259
|
-
|
|
260
218
|
if (prevState.dirtyValue.length === 1 && dirtyValue.length === 2) {
|
|
261
219
|
this.nextInput();
|
|
262
220
|
}
|
|
263
221
|
}
|
|
264
222
|
}]);
|
|
265
|
-
|
|
266
223
|
return Hours;
|
|
267
224
|
}(ItemPicker);
|
|
268
|
-
|
|
269
225
|
var Minutes = /*#__PURE__*/function (_ItemPicker2) {
|
|
270
226
|
_inherits(Minutes, _ItemPicker2);
|
|
271
|
-
|
|
272
227
|
var _super3 = _createSuper(Minutes);
|
|
273
|
-
|
|
274
228
|
function Minutes() {
|
|
275
229
|
var _this3;
|
|
276
|
-
|
|
277
230
|
_classCallCheck(this, Minutes);
|
|
278
|
-
|
|
279
231
|
for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
|
|
280
232
|
args[_key3] = arguments[_key3];
|
|
281
233
|
}
|
|
282
|
-
|
|
283
234
|
_this3 = _super3.call.apply(_super3, [this].concat(args));
|
|
284
|
-
|
|
285
235
|
_defineProperty(_assertThisInitialized(_this3), "field", 'minutes');
|
|
286
|
-
|
|
287
236
|
_defineProperty(_assertThisInitialized(_this3), "handleKeyDown", function (e) {
|
|
288
237
|
var currentTarget = e.currentTarget;
|
|
289
238
|
if (e.keyCode === 13) _this3.submitChanges(e);
|
|
290
|
-
|
|
291
239
|
if (e.keyCode === 37) {
|
|
292
240
|
if (currentTarget.selectionStart <= 0 && currentTarget.selectionStart === currentTarget.selectionEnd) {
|
|
293
241
|
e.preventDefault();
|
|
294
|
-
|
|
295
242
|
_this3.prevFocus();
|
|
296
243
|
}
|
|
297
244
|
}
|
|
298
|
-
|
|
299
245
|
if (e.keyCode === 8) {
|
|
300
246
|
if (currentTarget.value.length === 0) {
|
|
301
247
|
e.preventDefault();
|
|
302
|
-
|
|
303
248
|
_this3.prevFocus();
|
|
304
249
|
}
|
|
305
250
|
}
|
|
306
251
|
});
|
|
307
|
-
|
|
308
252
|
return _this3;
|
|
309
253
|
}
|
|
310
|
-
|
|
311
254
|
_createClass(Minutes, [{
|
|
312
255
|
key: "minMax",
|
|
313
256
|
value: function minMax() {
|
|
@@ -324,9 +267,7 @@ var Minutes = /*#__PURE__*/function (_ItemPicker2) {
|
|
|
324
267
|
}
|
|
325
268
|
}
|
|
326
269
|
}]);
|
|
327
|
-
|
|
328
270
|
return Minutes;
|
|
329
271
|
}(ItemPicker);
|
|
330
|
-
|
|
331
272
|
export { Hours, Minutes };
|
|
332
273
|
//# sourceMappingURL=PickerInput.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PickerInput.js","names":["React","Input","Select","intOrDefault","withLeadingZero","Component","sstyled","Root","callAllEventHandlers","MAP_FIELD_TO_TIME","hours","minutes","MAP_SIZE_SELECT","m","l","getOptions","min","max","step","length","Number","toFixed","options","Array","fill","numValue","map","i","index","value","String","ItemPicker","createRef","dirtyValue","undefined","visible","minMax","Math","e","stopPropagation","numberValue","NaN","isNaN","setState","slice","submitChanges","dispatchOnChange","getI18nText","asProps","_getI18nText","field","event","$onValueChange","state","parseValueWithMinMax","SPickerInput","Trigger","styles","onSelect","time","size","disabled","onVisibleChange","other","timeValue","handleSelect","handleVisibleChange","Value","inputRef","getAriaLabel","handleChange","handleBlur","handleKeyDown","placeholder","Hours","currentTarget","keyCode","selectionStart","selectionEnd","preventDefault","nextInput","is12Hour","minutesInputRef","current","focus","prevProps","prevState","Minutes","prevFocus","hoursInputRef"],"sources":["../../src/PickerInput.jsx"],"sourcesContent":["import React from 'react';\nimport Input from '@semcore/input';\nimport Select from '@semcore/select';\nimport { intOrDefault, withLeadingZero } from './TimePicker';\nimport { Component, sstyled, Root } from '@semcore/core';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\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\nclass ItemPicker extends Component {\n static defaultProps = {\n placeholder: '00',\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, e) => {\n /* hide props for bubbling events */\n e.stopPropagation();\n const numberValue = intOrDefault(Number(value), NaN);\n\n if (!Number.isNaN(numberValue)) {\n this.setState({ dirtyValue: value.slice(-2) });\n }\n };\n\n handleBlur = (e) => this.submitChanges(e);\n\n /* rewrite method */\n handleKeyDown = () => {};\n\n handleSelect = (value, e) => {\n this.dispatchOnChange(value, e);\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 size={size}\n disabled={disabled}\n neighborLocation={false}\n value={value}\n aria-label={this.getAriaLabel()}\n __excludeProps={[\n 'aria-haspopup',\n 'aria-controls',\n 'aria-flowto',\n 'aria-expanded',\n 'aria-autocomplete',\n 'role',\n ]}\n onChange={this.handleChange}\n onBlur={this.handleBlur}\n onKeyDown={this.handleKeyDown}\n />\n <Select.Menu aria-hidden=\"true\" hMax={180}>\n {getOptions(min, max, step)}\n </Select.Menu>\n </Select>,\n );\n }\n}\n\nclass Hours extends ItemPicker {\n field = 'hours';\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 nextInput() {\n if (this.asProps.minutesInputRef.current) {\n this.setState({ visible: false });\n this.asProps.minutesInputRef.current.focus();\n }\n }\n\n handleKeyDown = (e) => {\n const { currentTarget } = e;\n if (e.keyCode === 13) this.submitChanges(e);\n if (e.keyCode === 39) {\n if (\n currentTarget.selectionStart >= currentTarget.value.length &&\n currentTarget.selectionStart === currentTarget.selectionEnd\n ) {\n e.preventDefault();\n this.nextInput();\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.nextInput();\n }\n }\n}\n\nclass Minutes extends ItemPicker {\n field = 'minutes';\n\n minMax() {\n return [0, 59];\n }\n\n prevFocus() {\n if (this.asProps.hoursInputRef.current) {\n this.setState({ visible: false });\n this.asProps.hoursInputRef.current.focus();\n }\n }\n\n handleKeyDown = (e) => {\n const { currentTarget } = e;\n if (e.keyCode === 13) this.submitChanges(e);\n if (e.keyCode === 37) {\n if (\n currentTarget.selectionStart <= 0 &&\n currentTarget.selectionStart === currentTarget.selectionEnd\n ) {\n e.preventDefault();\n this.prevFocus();\n }\n }\n if (e.keyCode === 8) {\n if (currentTarget.value.length === 0) {\n e.preventDefault();\n this.prevFocus();\n }\n }\n };\n}\n\nexport { Hours, Minutes };\n"],"mappings":";;;;;;;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,KAAP,MAAkB,gBAAlB;AACA,OAAOC,MAAP,MAAmB,iBAAnB;AACA,SAASC,YAAT,EAAuBC,eAAvB,QAA8C,cAA9C;AACA,SAASC,SAAT,EAAoBC,OAApB,EAA6BC,IAA7B,QAAyC,eAAzC;AACA,SAASC,oBAAT,QAAqC,gCAArC;AAEA,IAAMC,iBAAiB,GAAG;EACxBC,KAAK,EAAE,CADiB;EAExBC,OAAO,EAAE;AAFe,CAA1B;AAKA,IAAMC,eAAe,GAAG;EACtBC,CAAC,EAAE,GADmB;EAEtBC,CAAC,EAAE;AAFmB,CAAxB;;AAKA,SAASC,UAAT,CAAoBC,GAApB,EAAyBC,GAAzB,EAAwC;EAAA,IAAVC,IAAU,uEAAH,CAAG;EACtC,IAAMC,MAAM,GAAGC,MAAM,CAAC,CAAC,CAACH,GAAG,GAAG,CAAN,GAAUD,GAAX,IAAkBE,IAAnB,EAAyBG,OAAzB,CAAiC,CAAjC,CAAD,CAArB;EACA,IAAMC,OAAO,GAAGC,KAAK,CAACJ,MAAD,CAAL,CAAcK,IAAd,CAAmB,EAAnB,CAAhB;EACA,IAAIC,QAAQ,GAAGT,GAAf;EACA,OAAOM,OAAO,CAACI,GAAR,CAAY,UAACC,CAAD,EAAIC,KAAJ,EAAc;IAC/BH,QAAQ,GAAGG,KAAK,KAAK,CAAV,GAAcH,QAAd,GAAyBA,QAAQ,GAAGP,IAA/C;IACA,IAAMW,KAAK,GAAGzB,eAAe,CAAC0B,MAAM,CAACL,QAAD,CAAP,CAA7B;IACA,oBACE,oBAAC,MAAD,CAAQ,MAAR;MAAe,KAAK,EAAEI,KAAtB;MAA6B,GAAG,EAAEA;IAAlC,GACGA,KADH,CADF;EAKD,CARM,CAAP;AASD;;IAEKE,U;;;;;;;;;;;;;;;;4EAKO/B,KAAK,CAACgC,SAAN,E;;4DAMH;MACNC,UAAU,EAAEC,SADN;MAENC,OAAO,EAAE;IAFH,C;;2EAKe,UAACN,KAAD,EAAW;MAChC,mBAAmB,MAAKO,MAAL,EAAnB;MAAA;MAAA,IAAOpB,GAAP;MAAA,IAAYC,GAAZ;;MACA,OAAOa,MAAM,CAACO,IAAI,CAACpB,GAAL,CAASD,GAAT,EAAcqB,IAAI,CAACrB,GAAL,CAASC,GAAT,EAAcY,KAAd,CAAd,CAAD,CAAb;IACD,C;;mEAgBc,UAACA,KAAD,EAAQS,CAAR,EAAc;MAC3B;MACAA,CAAC,CAACC,eAAF;MACA,IAAMC,WAAW,GAAGrC,YAAY,CAACiB,MAAM,CAACS,KAAD,CAAP,EAAgBY,GAAhB,CAAhC;;MAEA,IAAI,CAACrB,MAAM,CAACsB,KAAP,CAAaF,WAAb,CAAL,EAAgC;QAC9B,MAAKG,QAAL,CAAc;UAAEV,UAAU,EAAEJ,KAAK,CAACe,KAAN,CAAY,CAAC,CAAb;QAAd,CAAd;MACD;IACF,C;;iEAEY,UAACN,CAAD;MAAA,OAAO,MAAKO,aAAL,CAAmBP,CAAnB,CAAP;IAAA,C;;oEAGG,YAAM,CAAE,C;;mEAET,UAACT,KAAD,EAAQS,CAAR,EAAc;MAC3B,MAAKQ,gBAAL,CAAsBjB,KAAtB,EAA6BS,CAA7B;IACD,C;;0EAEqB,UAACH,OAAD;MAAA,OAAa,MAAKQ,QAAL,CAAc;QAAER,OAAO,EAAPA;MAAF,CAAd,CAAb;IAAA,C;;mEAEP,YAAM;MACnB,IAAsBY,WAAtB,GAAsC,MAAKC,OAA3C,CAAQC,YAAR;MACA,IAAI,MAAKC,KAAL,KAAe,OAAnB,EAA4B,OAAOH,WAAW,CAAC,OAAD,CAAlB;MAC5B,IAAI,MAAKG,KAAL,KAAe,SAAnB,EAA8B,OAAOH,WAAW,CAAC,SAAD,CAAlB;MAC9B,OAAOb,SAAP;IACD,C;;;;;;;WAtDD,kBAAS;MACP,OAAO,EAAP;IACD;;;WAYD,0BAAiBL,KAAjB,EAAwBsB,KAAxB,EAA+B;MAC7B,KAAKR,QAAL,CAAc;QAAEV,UAAU,EAAEC;MAAd,CAAd;MACA,KAAKc,OAAL,CAAaI,cAAb,CAA4BvB,KAA5B,EAAmC,KAAKqB,KAAxC,EAA+CC,KAA/C;IACD;;;WAED,uBAAcA,KAAd,EAAqB;MACnB,IAAMlB,UAAN,GAAqB,KAAKoB,KAA1B,CAAMpB,UAAN;;MACA,IAAIA,UAAU,KAAKC,SAAnB,EAA8B;QAC5B;QACA,IAAID,UAAJ,EAAgBA,UAAU,GAAG,KAAKqB,oBAAL,CAA0BrB,UAA1B,CAAb,CAFY,CAEwC;;QACpE,KAAKa,gBAAL,CAAsBb,UAAtB,EAAkCkB,KAAlC;MACD;IACF;;;WA8BD,kBAAS;MAAA;MAAA;;MACP,IAAMI,YAAY,GAmBJrD,MAAM,CAACsD,OAnBrB;;MACA,oBACE,KAAKR,OADP;MAAA,IAAQS,MAAR,iBAAQA,MAAR;MAAA,IAAgBvC,IAAhB,iBAAgBA,IAAhB;MAAA,IAAsBwC,QAAtB,iBAAsBA,QAAtB;MAAA,IAAgCC,IAAhC,iBAAgCA,IAAhC;MAAA,IAAsCC,IAAtC,iBAAsCA,IAAtC;MAAA,IAA4CC,QAA5C,iBAA4CA,QAA5C;MAAA,IAAsDC,eAAtD,iBAAsDA,eAAtD;MAAA,IAA0EC,KAA1E;;MAEA,kBAAgC,KAAKV,KAArC;MAAA,IAAQpB,UAAR,eAAQA,UAAR;MAAA,IAAoBE,OAApB,eAAoBA,OAApB;MACA,IAAM6B,SAAS,GAAGL,IAAI,CAAClD,iBAAiB,CAAC,KAAKyC,KAAN,CAAlB,CAAtB;MACA,IAAMrB,KAAK,GAAGI,UAAU,KAAKC,SAAf,GAA2B8B,SAA3B,GAAuC/B,UAArD;;MACA,oBAAmB,KAAKG,MAAL,EAAnB;MAAA;MAAA,IAAOpB,GAAP;MAAA,IAAYC,GAAZ;;MAEA,eAAOX,OAAO,CAACmD,MAAD,CAAd,eACE,oBAAC,MAAD,qDACMM,KADN;QAAA,eAEc,OAFd;QAAA,QAGQH,IAAI,GAAGhD,eAAe,CAACgD,IAAD,CAAlB,GAA2B,KAHvC;QAAA,YAIYpD,oBAAoB,CAACkD,QAAD,EAAW,KAAKO,YAAhB,CAJhC;QAAA,mBAKmBzD,oBAAoB,CAACsD,eAAD,EAAkB,KAAKI,mBAAvB,CALvC;QAAA,WAMW/B,OANX;QAAA,SAOS6B;MAPT,kBASE,oBAAC,YAAD;QAAA,OAEO/D,KAAK,CAACkE,KAFb;QAAA,OAGO,KAAKC,QAHZ;QAAA,QAIQR,IAJR;QAAA,YAKYC,QALZ;QAAA,oBAMoB,KANpB;QAAA,SAOShC,KAPT;QAAA,cAQc,KAAKwC,YAAL,EARd;QAAA,kBASkB,CACd,eADc,EAEd,eAFc,EAGd,aAHc,EAId,eAJc,EAKd,mBALc,EAMd,MANc,CATlB;QAAA,YAiBY,KAAKC,YAjBjB;QAAA,UAkBU,KAAKC,UAlBf;QAAA,aAmBa,KAAKC;MAnBlB,WATF,eA8BE,oBAAC,MAAD,CAAQ,IAAR;QAAa,eAAY,MAAzB;QAAgC,IAAI,EAAE;MAAtC,GACGzD,UAAU,CAACC,GAAD,EAAMC,GAAN,EAAWC,IAAX,CADb,CA9BF,CADF;IAoCD;;;;EA5GsBb,S;;gBAAnB0B,U,kBACkB;EACpB0C,WAAW,EAAE;AADO,C;;IA8GlBC,K;;;;;;;;;;;;;;;;6DACI,O;;qEAkBQ,UAACpC,CAAD,EAAO;MACrB,IAAQqC,aAAR,GAA0BrC,CAA1B,CAAQqC,aAAR;MACA,IAAIrC,CAAC,CAACsC,OAAF,KAAc,EAAlB,EAAsB,OAAK/B,aAAL,CAAmBP,CAAnB;;MACtB,IAAIA,CAAC,CAACsC,OAAF,KAAc,EAAlB,EAAsB;QACpB,IACED,aAAa,CAACE,cAAd,IAAgCF,aAAa,CAAC9C,KAAd,CAAoBV,MAApD,IACAwD,aAAa,CAACE,cAAd,KAAiCF,aAAa,CAACG,YAFjD,EAGE;UACAxC,CAAC,CAACyC,cAAF;;UACA,OAAKC,SAAL;QACD;MACF;IACF,C;;;;;;;WA5BD,kBAAS;MACP,IAAQC,QAAR,GAAqB,KAAKjC,OAA1B,CAAQiC,QAAR;;MACA,IAAIA,QAAJ,EAAc;QACZ,OAAO,CAAC,CAAD,EAAI,EAAJ,CAAP;MACD,CAFD,MAEO;QACL,OAAO,CAAC,CAAD,EAAI,EAAJ,CAAP;MACD;IACF;;;WAED,qBAAY;MACV,IAAI,KAAKjC,OAAL,CAAakC,eAAb,CAA6BC,OAAjC,EAA0C;QACxC,KAAKxC,QAAL,CAAc;UAAER,OAAO,EAAE;QAAX,CAAd;QACA,KAAKa,OAAL,CAAakC,eAAb,CAA6BC,OAA7B,CAAqCC,KAArC;MACD;IACF;;;WAgBD,4BAAmBC,SAAnB,EAA8BC,SAA9B,EAAyC;MACvC,IAAQrD,UAAR,GAAuB,KAAKoB,KAA5B,CAAQpB,UAAR;MACA,IAAIqD,SAAS,CAACrD,UAAV,KAAyBC,SAAzB,IAAsCD,UAAU,KAAKC,SAAzD,EAAoE;;MAEpE,IAAIoD,SAAS,CAACrD,UAAV,CAAqBd,MAArB,KAAgC,CAAhC,IAAqCc,UAAU,CAACd,MAAX,KAAsB,CAA/D,EAAkE;QAChE,KAAK6D,SAAL;MACD;IACF;;;;EAxCiBjD,U;;IA2CdwD,O;;;;;;;;;;;;;;;;6DACI,S;;qEAaQ,UAACjD,CAAD,EAAO;MACrB,IAAQqC,aAAR,GAA0BrC,CAA1B,CAAQqC,aAAR;MACA,IAAIrC,CAAC,CAACsC,OAAF,KAAc,EAAlB,EAAsB,OAAK/B,aAAL,CAAmBP,CAAnB;;MACtB,IAAIA,CAAC,CAACsC,OAAF,KAAc,EAAlB,EAAsB;QACpB,IACED,aAAa,CAACE,cAAd,IAAgC,CAAhC,IACAF,aAAa,CAACE,cAAd,KAAiCF,aAAa,CAACG,YAFjD,EAGE;UACAxC,CAAC,CAACyC,cAAF;;UACA,OAAKS,SAAL;QACD;MACF;;MACD,IAAIlD,CAAC,CAACsC,OAAF,KAAc,CAAlB,EAAqB;QACnB,IAAID,aAAa,CAAC9C,KAAd,CAAoBV,MAApB,KAA+B,CAAnC,EAAsC;UACpCmB,CAAC,CAACyC,cAAF;;UACA,OAAKS,SAAL;QACD;MACF;IACF,C;;;;;;;WA7BD,kBAAS;MACP,OAAO,CAAC,CAAD,EAAI,EAAJ,CAAP;IACD;;;WAED,qBAAY;MACV,IAAI,KAAKxC,OAAL,CAAayC,aAAb,CAA2BN,OAA/B,EAAwC;QACtC,KAAKxC,QAAL,CAAc;UAAER,OAAO,EAAE;QAAX,CAAd;QACA,KAAKa,OAAL,CAAayC,aAAb,CAA2BN,OAA3B,CAAmCC,KAAnC;MACD;IACF;;;;EAZmBrD,U;;AAmCtB,SAAS2C,KAAT,EAAgBa,OAAhB"}
|
|
1
|
+
{"version":3,"file":"PickerInput.js","names":["React","Input","Select","intOrDefault","withLeadingZero","Component","sstyled","Root","callAllEventHandlers","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","ItemPicker","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","args","_key","call","apply","concat","_defineProperty","_assertThisInitialized","createRef","dirtyValue","visible","_this$minMax","minMax","_this$minMax2","_slicedToArray","Math","e","stopPropagation","numberValue","NaN","isNaN","setState","slice","submitChanges","dispatchOnChange","getI18nText","asProps","_getI18nText","field","_createClass","event","$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","Hours","_ItemPicker","_super2","_this2","_len2","_key2","currentTarget","keyCode","selectionStart","selectionEnd","preventDefault","nextInput","is12Hour","minutesInputRef","current","focus","componentDidUpdate","prevProps","prevState","Minutes","_ItemPicker2","_super3","_this3","_len3","_key3","prevFocus","hoursInputRef"],"sources":["../../src/PickerInput.jsx"],"sourcesContent":["import React from 'react';\nimport Input from '@semcore/input';\nimport Select from '@semcore/select';\nimport { intOrDefault, withLeadingZero } from './TimePicker';\nimport { Component, sstyled, Root } from '@semcore/core';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\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\nclass ItemPicker extends Component {\n static defaultProps = {\n placeholder: '00',\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, e) => {\n /* hide props for bubbling events */\n e.stopPropagation();\n const numberValue = intOrDefault(Number(value), NaN);\n\n if (!Number.isNaN(numberValue)) {\n this.setState({ dirtyValue: value.slice(-2) });\n }\n };\n\n handleBlur = (e) => this.submitChanges(e);\n\n /* rewrite method */\n handleKeyDown = () => {};\n\n handleSelect = (value, e) => {\n this.dispatchOnChange(value, e);\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 size={size}\n disabled={disabled}\n neighborLocation={false}\n value={value}\n aria-label={this.getAriaLabel()}\n __excludeProps={[\n 'aria-haspopup',\n 'aria-controls',\n 'aria-flowto',\n 'aria-expanded',\n 'aria-autocomplete',\n 'role',\n ]}\n onChange={this.handleChange}\n onBlur={this.handleBlur}\n onKeyDown={this.handleKeyDown}\n />\n <Select.Menu aria-hidden=\"true\" hMax={180}>\n {getOptions(min, max, step)}\n </Select.Menu>\n </Select>,\n );\n }\n}\n\nclass Hours extends ItemPicker {\n field = 'hours';\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 nextInput() {\n if (this.asProps.minutesInputRef.current) {\n this.setState({ visible: false });\n this.asProps.minutesInputRef.current.focus();\n }\n }\n\n handleKeyDown = (e) => {\n const { currentTarget } = e;\n if (e.keyCode === 13) this.submitChanges(e);\n if (e.keyCode === 39) {\n if (\n currentTarget.selectionStart >= currentTarget.value.length &&\n currentTarget.selectionStart === currentTarget.selectionEnd\n ) {\n e.preventDefault();\n this.nextInput();\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.nextInput();\n }\n }\n}\n\nclass Minutes extends ItemPicker {\n field = 'minutes';\n\n minMax() {\n return [0, 59];\n }\n\n prevFocus() {\n if (this.asProps.hoursInputRef.current) {\n this.setState({ visible: false });\n this.asProps.hoursInputRef.current.focus();\n }\n }\n\n handleKeyDown = (e) => {\n const { currentTarget } = e;\n if (e.keyCode === 13) this.submitChanges(e);\n if (e.keyCode === 37) {\n if (\n currentTarget.selectionStart <= 0 &&\n currentTarget.selectionStart === currentTarget.selectionEnd\n ) {\n e.preventDefault();\n this.prevFocus();\n }\n }\n if (e.keyCode === 8) {\n if (currentTarget.value.length === 0) {\n e.preventDefault();\n this.prevFocus();\n }\n }\n };\n}\n\nexport { Hours, Minutes };\n"],"mappings":"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"}
|