@planningcenter/tapestry-react 2.9.0-rc.1 → 2.9.0-rc.2
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/dist/cjs/TimeField/TimeField.js +262 -222
- package/dist/cjs/TimeField/TimeField.test.js +31 -31
- package/dist/cjs/TimeField/legacy_TimeField.js +274 -0
- package/dist/cjs/TimeField/utils.js +6 -12
- package/dist/cjs/utils.js +9 -0
- package/dist/esm/TimeField/TimeField.js +252 -225
- package/dist/esm/TimeField/TimeField.test.js +31 -31
- package/dist/esm/TimeField/legacy_TimeField.js +271 -0
- package/dist/esm/TimeField/utils.js +6 -12
- package/dist/esm/utils.js +9 -1
- package/dist/types/TimeField/TimeField.d.ts +35 -0
- package/package.json +2 -2
- package/src/TimeField/TimeField.mdx +1 -1
- package/src/TimeField/TimeField.test.tsx +68 -52
- package/src/TimeField/TimeField.tsx +326 -0
- package/src/TimeField/{TimeField.js → legacy_TimeField.js} +2 -6
- package/src/TimeField/utils.js +13 -11
- package/src/utils.js +8 -0
|
@@ -1,277 +1,304 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
import
|
|
4
|
-
import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
|
|
5
|
-
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
6
|
-
import React, { Component } from 'react';
|
|
3
|
+
import React, { useEffect, useRef, useState } from 'react';
|
|
7
4
|
import Box from '../Box';
|
|
8
5
|
import Input from '../Input/Input';
|
|
9
6
|
import InputBox from '../Input/InputBox';
|
|
10
7
|
import InputField from '../Input/InputField';
|
|
11
8
|
import NumberField from '../NumberField';
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
var MIN_MINUTE = 0;
|
|
15
|
-
var MAX_MINUTE = 59;
|
|
9
|
+
import { noop, padNumber } from '../utils';
|
|
10
|
+
import { addHoursToTime, addMinutesToTime, addTimeToDate, getTimeFromDate } from './utils';
|
|
16
11
|
|
|
17
|
-
var
|
|
12
|
+
var _ref2 = /*#__PURE__*/React.createElement(Box, {
|
|
18
13
|
as: "span",
|
|
19
14
|
width: 0.5,
|
|
20
15
|
textAlign: "center",
|
|
21
16
|
userSelect: "none"
|
|
22
17
|
}, ":");
|
|
23
18
|
|
|
24
|
-
var TimeField =
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
19
|
+
var TimeField = function TimeField(_ref) {
|
|
20
|
+
var ignoredKeys = _ref.ignoredKeys,
|
|
21
|
+
interval = _ref.interval,
|
|
22
|
+
isIOS = _ref.isIOS,
|
|
23
|
+
max = _ref.max,
|
|
24
|
+
min = _ref.min,
|
|
25
|
+
onChange = _ref.onChange,
|
|
26
|
+
_ref$twelveHourClock = _ref.twelveHourClock,
|
|
27
|
+
twelveHourClock = _ref$twelveHourClock === void 0 ? true : _ref$twelveHourClock,
|
|
28
|
+
value = _ref.value,
|
|
29
|
+
restProps = _objectWithoutPropertiesLoose(_ref, ["ignoredKeys", "interval", "isIOS", "max", "min", "onChange", "twelveHourClock", "value"]);
|
|
30
|
+
|
|
31
|
+
var ref = useRef(null);
|
|
32
|
+
|
|
33
|
+
var _useState = useState(value[0]),
|
|
34
|
+
hours = _useState[0],
|
|
35
|
+
setHours = _useState[1];
|
|
36
|
+
|
|
37
|
+
var _useState2 = useState(value[1]),
|
|
38
|
+
minutes = _useState2[0],
|
|
39
|
+
setMinutes = _useState2[1];
|
|
40
|
+
|
|
41
|
+
var _useState3 = useState(hours < 12 ? 'AM' : 'PM'),
|
|
42
|
+
meridiem = _useState3[0],
|
|
43
|
+
setMeridiem = _useState3[1];
|
|
44
|
+
|
|
45
|
+
var _useState4 = useState(twelveHourClock && hours > 12 ? hours - 12 : hours),
|
|
46
|
+
hoursDisplay = _useState4[0],
|
|
47
|
+
setHoursDisplay = _useState4[1];
|
|
48
|
+
|
|
49
|
+
var decrementHoursBy = function decrementHoursBy(amount) {
|
|
50
|
+
var updatedHours = hours - amount;
|
|
51
|
+
|
|
52
|
+
if (twelveHourClock) {
|
|
53
|
+
if (updatedHours > 12) {
|
|
54
|
+
setHours(updatedHours);
|
|
55
|
+
setHoursDisplay(updatedHours - 12);
|
|
56
|
+
} else if (updatedHours <= 12 && updatedHours > 0) {
|
|
57
|
+
setHours(updatedHours);
|
|
58
|
+
setHoursDisplay(updatedHours);
|
|
59
|
+
} else if (updatedHours === 0) {
|
|
60
|
+
setHours(updatedHours);
|
|
61
|
+
setHoursDisplay(12);
|
|
62
|
+
} else {
|
|
63
|
+
setHours(23);
|
|
64
|
+
setHoursDisplay(11);
|
|
39
65
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
66
|
+
} else {
|
|
67
|
+
if (updatedHours < 0) {
|
|
68
|
+
setHours(23);
|
|
69
|
+
setHoursDisplay(23);
|
|
70
|
+
} else {
|
|
71
|
+
setHours(updatedHours);
|
|
72
|
+
setHoursDisplay(updatedHours);
|
|
47
73
|
}
|
|
74
|
+
}
|
|
75
|
+
};
|
|
48
76
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
}
|
|
77
|
+
var incrementHoursBy = function incrementHoursBy(amount) {
|
|
78
|
+
var updatedHours = hours + amount;
|
|
52
79
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
80
|
+
if (twelveHourClock) {
|
|
81
|
+
if (updatedHours > 0 && updatedHours <= 12) {
|
|
82
|
+
setHours(updatedHours);
|
|
83
|
+
setHoursDisplay(updatedHours);
|
|
84
|
+
} else if (updatedHours > 12 && updatedHours < 24) {
|
|
85
|
+
setHours(updatedHours);
|
|
86
|
+
setHoursDisplay(updatedHours - 12);
|
|
87
|
+
} else {
|
|
88
|
+
setHours(0);
|
|
89
|
+
setHoursDisplay(12);
|
|
59
90
|
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
_defineProperty(_assertThisInitialized(_this), "updateHours", function (amount) {
|
|
65
|
-
_this.props.onChange(addHoursToTime(_this.props.value, amount));
|
|
66
|
-
});
|
|
67
|
-
|
|
68
|
-
_defineProperty(_assertThisInitialized(_this), "updateMinutes", function (amount) {
|
|
69
|
-
_this.props.onChange(addMinutesToTime(_this.props.value, amount));
|
|
70
|
-
});
|
|
71
|
-
|
|
72
|
-
_defineProperty(_assertThisInitialized(_this), "toggleMeridiem", function () {
|
|
73
|
-
_this.setState(function (state) {
|
|
74
|
-
return {
|
|
75
|
-
meridiem: state.meridiem === 'AM' ? 'PM' : 'AM'
|
|
76
|
-
};
|
|
77
|
-
}, _this.updateTime);
|
|
78
|
-
});
|
|
79
|
-
|
|
80
|
-
_defineProperty(_assertThisInitialized(_this), "handleHoursChange", function (hours) {
|
|
81
|
-
if (_this.twelveHourClock && hours === 0) {
|
|
82
|
-
_this.updateTime({
|
|
83
|
-
hours: 12
|
|
84
|
-
});
|
|
91
|
+
} else {
|
|
92
|
+
if (updatedHours < 24) {
|
|
93
|
+
setHours(updatedHours);
|
|
94
|
+
setHoursDisplay(updatedHours);
|
|
85
95
|
} else {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
});
|
|
96
|
+
setHours(0);
|
|
97
|
+
setHoursDisplay(0);
|
|
89
98
|
}
|
|
90
|
-
}
|
|
99
|
+
}
|
|
100
|
+
};
|
|
91
101
|
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
var isTwelveHourClock = _this.props.twelveHourClock;
|
|
95
|
-
var isHourEleven = HOURS_TO_NOON - 1;
|
|
96
|
-
var maxHour = isTwelveHourClock ? HOURS_TO_NOON : HOURS_IN_DAY - 1;
|
|
97
|
-
var minHour = isTwelveHourClock ? 1 : 0;
|
|
102
|
+
var decrementMinutesBy = function decrementMinutesBy(amount) {
|
|
103
|
+
var updatedMinutes = minutes - amount;
|
|
98
104
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
105
|
+
if (updatedMinutes >= 0) {
|
|
106
|
+
setMinutes(updatedMinutes);
|
|
107
|
+
} else {
|
|
108
|
+
setMinutes(59);
|
|
109
|
+
decrementHoursBy(1);
|
|
110
|
+
}
|
|
111
|
+
};
|
|
102
112
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
}
|
|
113
|
+
var incrementMinutesBy = function incrementMinutesBy(amount) {
|
|
114
|
+
var updatedMinutes = minutes + amount;
|
|
106
115
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
116
|
+
if (updatedMinutes <= 59) {
|
|
117
|
+
setMinutes(updatedMinutes);
|
|
118
|
+
} else {
|
|
119
|
+
setMinutes(0);
|
|
120
|
+
incrementHoursBy(1);
|
|
121
|
+
}
|
|
122
|
+
};
|
|
110
123
|
|
|
111
|
-
|
|
112
|
-
|
|
124
|
+
var toggleMeridiem = function toggleMeridiem() {
|
|
125
|
+
if (meridiem === 'AM') {
|
|
126
|
+
setMeridiem('PM');
|
|
127
|
+
|
|
128
|
+
if (hours >= 0 && hours <= 12) {
|
|
129
|
+
setHours(hours + 12);
|
|
113
130
|
}
|
|
131
|
+
} else {
|
|
132
|
+
setMeridiem('AM');
|
|
114
133
|
|
|
115
|
-
if (
|
|
116
|
-
|
|
134
|
+
if (hours >= 12 && hours < 24) {
|
|
135
|
+
setHours(hours - 12);
|
|
117
136
|
}
|
|
118
|
-
}
|
|
137
|
+
}
|
|
138
|
+
};
|
|
119
139
|
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
});
|
|
140
|
+
var handleHoursKeyDown = function handleHoursKeyDown(event) {
|
|
141
|
+
if (ignoredKeys && ignoredKeys.includes(event.key)) {
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
125
144
|
|
|
126
|
-
|
|
127
|
-
|
|
145
|
+
if (event.key === 'Backspace') {
|
|
146
|
+
event.preventDefault();
|
|
147
|
+
}
|
|
128
148
|
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
149
|
+
if (event.key === 'ArrowRight') {
|
|
150
|
+
ref.current.node.children[2].focus();
|
|
151
|
+
}
|
|
132
152
|
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
153
|
+
if (event.key === 'ArrowUp') {
|
|
154
|
+
incrementHoursBy(1);
|
|
155
|
+
}
|
|
136
156
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
157
|
+
if (event.key === 'ArrowDown') {
|
|
158
|
+
decrementHoursBy(1);
|
|
159
|
+
}
|
|
160
|
+
};
|
|
140
161
|
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
162
|
+
var handleHoursChange = function handleHoursChange(e) {
|
|
163
|
+
setHoursDisplay(e);
|
|
164
|
+
!twelveHourClock && setHours(e);
|
|
165
|
+
};
|
|
144
166
|
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
}
|
|
148
|
-
});
|
|
167
|
+
var handleHoursBlur = function handleHoursBlur(e) {
|
|
168
|
+
var updatedHoursValue = parseInt(e.target.value);
|
|
149
169
|
|
|
150
|
-
|
|
151
|
-
if (
|
|
152
|
-
|
|
170
|
+
if (twelveHourClock) {
|
|
171
|
+
if (updatedHoursValue === 0) {
|
|
172
|
+
setHours(0);
|
|
173
|
+
setHoursDisplay(12);
|
|
174
|
+
} else if (hours <= 12) {
|
|
175
|
+
setHours(updatedHoursValue);
|
|
176
|
+
setHoursDisplay(updatedHoursValue);
|
|
177
|
+
} else {
|
|
178
|
+
setHours(updatedHoursValue + 12);
|
|
179
|
+
setHoursDisplay(updatedHoursValue);
|
|
153
180
|
}
|
|
181
|
+
} else {
|
|
182
|
+
setHours(updatedHoursValue);
|
|
183
|
+
setHoursDisplay(updatedHoursValue);
|
|
184
|
+
}
|
|
185
|
+
};
|
|
154
186
|
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
187
|
+
var handleMinutesKeyDown = function handleMinutesKeyDown(event) {
|
|
188
|
+
if (event.key === 'ArrowLeft') {
|
|
189
|
+
ref.current.node.children[0].focus();
|
|
190
|
+
}
|
|
158
191
|
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
192
|
+
if (event.key === 'ArrowRight') {
|
|
193
|
+
ref.current.node.children[3].focus();
|
|
194
|
+
}
|
|
162
195
|
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
}
|
|
166
|
-
});
|
|
167
|
-
|
|
168
|
-
_defineProperty(_assertThisInitialized(_this), "handleIOSChange", function (event) {
|
|
169
|
-
var _event$target$value$s = event.target.value.split(':'),
|
|
170
|
-
hours = _event$target$value$s[0],
|
|
171
|
-
minutes = _event$target$value$s[1];
|
|
172
|
-
|
|
173
|
-
_this.updateTime({
|
|
174
|
-
hours: +hours,
|
|
175
|
-
minutes: +minutes
|
|
176
|
-
});
|
|
177
|
-
});
|
|
178
|
-
|
|
179
|
-
_this.state = {
|
|
180
|
-
meridiem: getMeridiem(props.value)
|
|
181
|
-
};
|
|
182
|
-
return _this;
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
var _proto = TimeField.prototype;
|
|
186
|
-
|
|
187
|
-
_proto.componentDidUpdate = function componentDidUpdate(lastProps) {
|
|
188
|
-
if (lastProps.value[0] !== this.props.value[0]) {
|
|
189
|
-
this.setState({
|
|
190
|
-
meridiem: getMeridiem(this.props.value)
|
|
191
|
-
});
|
|
196
|
+
if (event.key === 'ArrowUp') {
|
|
197
|
+
incrementMinutesBy(1);
|
|
192
198
|
}
|
|
193
|
-
};
|
|
194
199
|
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
value = _this$props.value,
|
|
199
|
-
min = _this$props.min,
|
|
200
|
-
max = _this$props.max,
|
|
201
|
-
interval = _this$props.interval,
|
|
202
|
-
onChange = _this$props.onChange,
|
|
203
|
-
twelveHourClock = _this$props.twelveHourClock,
|
|
204
|
-
isIOS = _this$props.isIOS,
|
|
205
|
-
restProps = _objectWithoutPropertiesLoose(_this$props, ["ignoredKeys", "value", "min", "max", "interval", "onChange", "twelveHourClock", "isIOS"]);
|
|
206
|
-
|
|
207
|
-
var hours = value[0],
|
|
208
|
-
minutes = value[1];
|
|
209
|
-
return isIOS ? /*#__PURE__*/React.createElement(Input, _extends({}, restProps, {
|
|
210
|
-
type: "time",
|
|
211
|
-
autoWidth: hours + ":" + padNumber(minutes, 2) + " " + this.state.meridiem,
|
|
212
|
-
value: padNumber(hours, 2) + ":" + padNumber(minutes, 2),
|
|
213
|
-
onChange: this.handleIOSChange
|
|
214
|
-
})) : /*#__PURE__*/React.createElement(InputBox, _extends({
|
|
215
|
-
ref: this.setInputBoxRef,
|
|
216
|
-
inline: true
|
|
217
|
-
}, restProps), /*#__PURE__*/React.createElement(NumberField, {
|
|
218
|
-
autoWidth: false,
|
|
219
|
-
fontVariantNumeric: "tabular-nums",
|
|
220
|
-
moveFocusOnMax: true,
|
|
221
|
-
value: twelveHourClock ? hours % HOURS_TO_NOON || HOURS_TO_NOON : hours,
|
|
222
|
-
min: 0,
|
|
223
|
-
max: twelveHourClock ? HOURS_TO_NOON : HOURS_IN_DAY - 1,
|
|
224
|
-
pad: 2,
|
|
225
|
-
grow: 0,
|
|
226
|
-
width: "2ch",
|
|
227
|
-
textAlign: "center",
|
|
228
|
-
"aria-label": "Hours",
|
|
229
|
-
onChange: this.handleHoursChange,
|
|
230
|
-
onKeyDown: this.handleHoursKeyDown,
|
|
231
|
-
ignoredKeys: ignoredKeys
|
|
232
|
-
}), _ref, /*#__PURE__*/React.createElement(NumberField, {
|
|
233
|
-
autoWidth: false,
|
|
234
|
-
fontVariantNumeric: "tabular-nums",
|
|
235
|
-
moveFocusOnMax: true,
|
|
236
|
-
value: minutes,
|
|
237
|
-
min: MIN_MINUTE,
|
|
238
|
-
max: MAX_MINUTE,
|
|
239
|
-
pad: 2,
|
|
240
|
-
grow: 0,
|
|
241
|
-
width: "2ch",
|
|
242
|
-
textAlign: "center",
|
|
243
|
-
"aria-label": "Minutes",
|
|
244
|
-
onChange: this.handleMinutesChange,
|
|
245
|
-
onKeyDown: this.handleMinutesKeyDown,
|
|
246
|
-
ignoredKeys: ignoredKeys
|
|
247
|
-
}), twelveHourClock && /*#__PURE__*/React.createElement(InputField, {
|
|
248
|
-
highlightOnInteraction: true,
|
|
249
|
-
value: this.state.meridiem,
|
|
250
|
-
grow: 0,
|
|
251
|
-
width: "2em",
|
|
252
|
-
textAlign: "center",
|
|
253
|
-
"aria-label": "AM/PM",
|
|
254
|
-
onChange: noop // prevent React warnings
|
|
255
|
-
,
|
|
256
|
-
onKeyDown: this.handleAMPMKeyDown
|
|
257
|
-
}));
|
|
200
|
+
if (event.key === 'ArrowDown') {
|
|
201
|
+
decrementMinutesBy(1);
|
|
202
|
+
}
|
|
258
203
|
};
|
|
259
204
|
|
|
260
|
-
|
|
261
|
-
|
|
205
|
+
var handleAMPMKeyDown = function handleAMPMKeyDown(event) {
|
|
206
|
+
if (ignoredKeys && ignoredKeys.includes(event.key)) {
|
|
207
|
+
return;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
if (event.key !== 'Tab' && !(event.metaKey && event.key === 'r')) {
|
|
211
|
+
event.preventDefault();
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
if (event.key === 'ArrowLeft') {
|
|
215
|
+
ref.current.node.children[2].focus();
|
|
216
|
+
}
|
|
262
217
|
|
|
263
|
-
|
|
218
|
+
if (event.key.toLowerCase() === 'a' && meridiem === 'PM' || event.key.toLowerCase() === 'p' && meridiem === 'AM' || event.key === 'ArrowUp' || event.key === 'ArrowDown') {
|
|
219
|
+
toggleMeridiem();
|
|
220
|
+
}
|
|
221
|
+
};
|
|
264
222
|
|
|
265
|
-
|
|
223
|
+
var updateTime = function updateTime(time) {
|
|
224
|
+
var hours = time[0],
|
|
225
|
+
minutes = time[1];
|
|
226
|
+
return onChange([hours, minutes]);
|
|
227
|
+
};
|
|
266
228
|
|
|
267
|
-
|
|
229
|
+
var handleIOSChange = function handleIOSChange(event) {
|
|
230
|
+
var _event$target$value$s = event.target.value.split(':'),
|
|
231
|
+
hours = _event$target$value$s[0],
|
|
232
|
+
minutes = _event$target$value$s[1];
|
|
268
233
|
|
|
269
|
-
|
|
234
|
+
setHours(hours);
|
|
235
|
+
setMinutes(minutes);
|
|
236
|
+
};
|
|
270
237
|
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
238
|
+
useEffect(function () {
|
|
239
|
+
if (hours < 12) {
|
|
240
|
+
setMeridiem('AM');
|
|
241
|
+
} else {
|
|
242
|
+
setMeridiem('PM');
|
|
243
|
+
}
|
|
276
244
|
|
|
245
|
+
updateTime([hours, minutes]);
|
|
246
|
+
}, [hours, minutes]);
|
|
247
|
+
return isIOS ? /*#__PURE__*/React.createElement(Input, _extends({}, restProps, {
|
|
248
|
+
type: "time",
|
|
249
|
+
autoWidth: hours + ":" + padNumber(minutes, 2) + " " + meridiem,
|
|
250
|
+
value: padNumber(hours, 2) + ":" + padNumber(minutes, 2),
|
|
251
|
+
onChange: handleIOSChange
|
|
252
|
+
})) : /*#__PURE__*/React.createElement(InputBox, _extends({
|
|
253
|
+
ref: ref,
|
|
254
|
+
inline: true
|
|
255
|
+
}, restProps), /*#__PURE__*/React.createElement(NumberField, {
|
|
256
|
+
autoWidth: false,
|
|
257
|
+
fontVariantNumeric: "tabular-nums",
|
|
258
|
+
moveFocusOnMax: true,
|
|
259
|
+
value: hoursDisplay,
|
|
260
|
+
min: 0,
|
|
261
|
+
max: twelveHourClock ? 12 : 23,
|
|
262
|
+
pad: 2,
|
|
263
|
+
grow: 0,
|
|
264
|
+
width: "2ch",
|
|
265
|
+
textAlign: "center",
|
|
266
|
+
"aria-label": "Hours",
|
|
267
|
+
onChange: handleHoursChange,
|
|
268
|
+
onKeyDown: handleHoursKeyDown,
|
|
269
|
+
onBlur: handleHoursBlur,
|
|
270
|
+
ignoredKeys: ignoredKeys
|
|
271
|
+
}), _ref2, /*#__PURE__*/React.createElement(NumberField, {
|
|
272
|
+
autoWidth: false,
|
|
273
|
+
fontVariantNumeric: "tabular-nums",
|
|
274
|
+
moveFocusOnMax: true,
|
|
275
|
+
value: minutes,
|
|
276
|
+
min: 0,
|
|
277
|
+
max: 59,
|
|
278
|
+
pad: 2,
|
|
279
|
+
grow: 0,
|
|
280
|
+
width: "2ch",
|
|
281
|
+
textAlign: "center",
|
|
282
|
+
"aria-label": "Minutes",
|
|
283
|
+
onChange: function onChange(e) {
|
|
284
|
+
return setMinutes(e);
|
|
285
|
+
},
|
|
286
|
+
onKeyDown: handleMinutesKeyDown,
|
|
287
|
+
ignoredKeys: ignoredKeys
|
|
288
|
+
}), twelveHourClock && /*#__PURE__*/React.createElement(InputField, {
|
|
289
|
+
highlightOnInteraction: true,
|
|
290
|
+
value: meridiem,
|
|
291
|
+
grow: 0,
|
|
292
|
+
width: "2em",
|
|
293
|
+
textAlign: "center",
|
|
294
|
+
"aria-label": "AM/PM",
|
|
295
|
+
onChange: noop,
|
|
296
|
+
onKeyDown: handleAMPMKeyDown
|
|
297
|
+
}));
|
|
298
|
+
};
|
|
299
|
+
|
|
300
|
+
TimeField.addHoursToTime = addHoursToTime;
|
|
301
|
+
TimeField.addMinutesToTime = addMinutesToTime;
|
|
302
|
+
TimeField.addTimeToDate = addTimeToDate;
|
|
303
|
+
TimeField.getTimeFromDate = getTimeFromDate;
|
|
277
304
|
export default TimeField;
|