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

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 +0,0 @@
1
- {"version":3,"file":"TimePicker.js","names":["createComponent","Component","sstyled","Root","i18nEnhance","Box","Input","React","Format","Hours","Minutes","style","_sstyled","insert","localizedMessages","MAP_MERIDIEM","AM","PM","MAP_FIELD_TO_TIME","hours","minutes","intOrDefault","value","def","arguments","length","undefined","number","Number","parseInt","isNaN","withLeadingZero","String","concat","meridiemByHours","formatHoursTo12","nHours","NaN","formatHoursTo24","meridiem","TimePickerRoot","_Component","_this","_classCallCheck","_len","args","Array","_key","_callSuper","_defineProperty","createRef","field","event","is12Hour","asProps","_this2","time","split","_time","_time2","_slicedToArray","_time2$","_time2$2","timeToValue","handlers","_this3","_value$split","_value$split2","_value$split2$","_value$split2$2","_this$asProps","size","disabled","getI18nText","valueToTime","$onValueChange","handleValueChange","minutesInputRef","hoursInputRef","_getI18nText","_objectSpread","_getHoursAndMinutesProps","ref","_inherits","_createClass","key","uncontrolledProps","title","componentDidMount","_document$querySelect","_this$asProps2","id","ariaDescribedBy","selector","titleElement","document","querySelector","textContent","get","_value$split3","_value$split4","_value$split4$","_lastMeridiem","_value$split5","_value$split6","_value$split6$","_value$split6$2","_time3","_time3$","_time3$2","getSeparatorProps","getFormatProps","_this$asProps3","disablePortal","onClick","handleMeridiemClick","render","_ref","_ref3","STimePicker","_this$asProps4","styles","Children","_this$valueToTime","_this$valueToTime2","label","createElement","Fragment","cn","_assignProps","_ref5","defaultValue","children","TimePicker","Separator","i18n","locale","defaultTitle","_Component2","_this4","_len2","_key2","current","_this4$asProps$hoursI","focus","_ref2","_ref4","STimePickerSeparator","_assignProps2","handlerClick"],"sources":["../../src/TimePicker.jsx"],"sourcesContent":["import { createComponent, Component, sstyled, Root } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Box } from '@semcore/flex-box';\nimport Input from '@semcore/input';\nimport React from 'react';\n\nimport Format from './PickerFormat';\nimport { Hours, Minutes } from './PickerInput';\nimport style from './style/time-picker.shadow.css';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\n\nconst MAP_MERIDIEM = {\n AM: 'PM',\n PM: 'AM',\n};\nconst MAP_FIELD_TO_TIME = {\n hours: 0,\n minutes: 1,\n};\n\nexport function intOrDefault(value, def = 0) {\n const number = Number.parseInt(value);\n return Number.isNaN(number) ? def : number;\n}\n\nexport function withLeadingZero(value) {\n value = String(value);\n if (value.length === 1) return `0${value}`;\n return String(value);\n}\n\nexport function meridiemByHours(hours) {\n return hours >= 12 ? 'PM' : 'AM';\n}\n\nexport function formatHoursTo12(hours /* hours by 24 */) {\n const nHours = intOrDefault(hours, Number.NaN); // if not (:00)\n if (Number.isNaN(nHours)) return hours;\n\n // if not (HH:00)\n if (nHours === 0) return 12; // 0 => 12 PM\n if (nHours > 12) return nHours - 12; // 22 => 10 PM\n\n return hours;\n}\n\nexport function formatHoursTo24(hours /* hours by 12 */, meridiem) {\n const nHours = intOrDefault(hours, Number.NaN); // if not (:00)\n\n if (Number.isNaN(nHours)) return hours;\n\n if (meridiem === 'AM') {\n if (nHours === 12) return 0; // 12 AM => 0\n }\n\n if (meridiem === 'PM') {\n if (nHours < 12) return nHours + 12; // 10 PM => 22\n }\n\n return hours;\n}\n\nclass TimePickerRoot extends Component {\n static displayName = 'TimePicker';\n static style = style;\n static enhance = [i18nEnhance(localizedMessages)];\n static defaultProps = ({ is12Hour }) => ({\n defaultValue: '',\n size: 'm',\n children: (\n <>\n <TimePicker.Hours />\n <TimePicker.Separator />\n <TimePicker.Minutes />\n {is12Hour && <TimePicker.Format />}\n </>\n ),\n i18n: localizedMessages,\n locale: 'en',\n defaultTitle: '',\n });\n\n hoursInputRef = React.createRef();\n minutesInputRef = React.createRef();\n\n _lastMeridiem = 'AM'; // default AM\n\n uncontrolledProps() {\n return {\n value: null,\n title: null,\n };\n }\n\n componentDidMount() {\n const { id, 'aria-describedby': ariaDescribedBy } = this.asProps;\n const selector = `[for=${id}]`;\n const titleElement =\n document.querySelector(selector) ?? document.querySelector(`#${ariaDescribedBy}`);\n\n if (titleElement) {\n this.handlers.title(titleElement.textContent);\n }\n }\n\n get value() {\n const { value } = this.asProps;\n return value === null || value === undefined ? ':' : value;\n }\n\n get meridiem() {\n const { value } = this.asProps;\n const [hours = ''] = value.split(':');\n\n const nHours = intOrDefault(hours, Number.NaN);\n\n if (!Number.isNaN(nHours)) {\n this._lastMeridiem = meridiemByHours(nHours);\n }\n\n return this._lastMeridiem;\n }\n\n valueToTime(value) {\n const { is12Hour } = this.asProps;\n let [hours = '', minutes = ''] = value.split(':');\n\n if (is12Hour) hours = formatHoursTo12(hours);\n\n hours = withLeadingZero(hours);\n minutes = withLeadingZero(minutes);\n\n return [hours, minutes];\n }\n\n timeToValue(time, meridiem) {\n const { is12Hour } = this.asProps;\n let [hours = '', minutes = ''] = time;\n\n hours = intOrDefault(hours, hours); // 03 => 3\n minutes = intOrDefault(minutes, minutes); // MM => MM\n\n if (is12Hour) hours = formatHoursTo24(hours, meridiem); // 12 PM -> 0\n\n return `${hours}:${minutes}`;\n }\n\n handleValueChange = (value, field, event) => {\n const { is12Hour } = this.asProps;\n const { meridiem } = this;\n\n let time;\n if (field) {\n time = this.value.split(':');\n time[MAP_FIELD_TO_TIME[field]] = value;\n } else {\n time = value.split(':');\n }\n\n let [hours = '', minutes = ''] = time;\n\n if (is12Hour) hours = String(formatHoursTo12(hours));\n\n value = this.timeToValue([hours, minutes], meridiem);\n this.handlers.value(value, event);\n };\n\n handleMeridiemClick = (event) => {\n const { is12Hour } = this.asProps;\n let { value, meridiem } = this;\n let [hours = '', minutes = ''] = value.split(':');\n\n if (is12Hour) hours = String(formatHoursTo12(hours));\n\n value = this.timeToValue([hours, minutes], MAP_MERIDIEM[meridiem]);\n this.handlers.value(value, event);\n };\n\n _getHoursAndMinutesProps = () => {\n const { is12Hour, size, disabled, getI18nText } = this.asProps;\n const time = this.valueToTime(this.value);\n\n return {\n time,\n size,\n is12Hour,\n disabled,\n $onValueChange: this.handleValueChange,\n minutesInputRef: this.minutesInputRef,\n hoursInputRef: this.hoursInputRef,\n _getI18nText: getI18nText,\n };\n };\n\n getHoursProps = () => {\n return { ...this._getHoursAndMinutesProps(), ref: this.hoursInputRef };\n };\n\n getMinutesProps = () => {\n return { ...this._getHoursAndMinutesProps(), ref: this.minutesInputRef };\n };\n\n getSeparatorProps() {\n return {\n disabled: this.asProps.disabled,\n hoursInputRef: this.hoursInputRef,\n };\n }\n\n getFormatProps() {\n const { size, disabled, disablePortal, getI18nText } = this.asProps;\n\n return {\n size,\n disabled,\n disablePortal,\n meridiem: this.meridiem,\n onClick: this.handleMeridiemClick,\n getI18nText,\n };\n }\n\n render() {\n const STimePicker = Root;\n const { styles, Children, value, is12Hour, getI18nText, title } = this.asProps;\n const [hours, minutes] = this.valueToTime(this.value);\n\n const label = value\n ? `${title} ${getI18nText('title', {\n time: `${hours}:${withLeadingZero(minutes)}`,\n meridiem: is12Hour ? this.meridiem : '',\n })}`\n : `${title} ${getI18nText('titleEmpty')}`;\n\n return sstyled(styles)(\n <>\n <STimePicker\n render={Input}\n role='group'\n aria-label={label}\n __excludeProps={['value', 'title']}\n >\n <Children />\n </STimePicker>\n </>,\n );\n }\n}\n\nclass Separator extends Component {\n static defaultProps = {\n children: ':',\n };\n\n handlerClick = () => {\n if (this.asProps.hoursInputRef.current) {\n this.asProps.hoursInputRef.current?.focus();\n }\n };\n\n render() {\n const STimePickerSeparator = Root;\n const { styles } = this.asProps;\n\n return sstyled(styles)(\n <STimePickerSeparator render={Box} onClick={this.handlerClick} aria-hidden='true' />,\n );\n }\n}\n\nconst TimePicker = createComponent(TimePickerRoot, {\n Hours,\n Minutes,\n Separator,\n Format,\n});\n\nexport default TimePicker;\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=index.d.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import type { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport type { Box, BoxProps } from '@semcore/flex-box';\nimport type { InputProps, InputValueProps } from '@semcore/input';\nimport type React from 'react';\n\n/** @deprecated */\nexport interface ITimePickerProps extends TimePickerProps, UnknownProperties {}\nexport type TimePickerProps = Omit<InputProps, 'size'> & {\n /** Time in the hh:mm format */\n value?: string;\n /** Default value if `value` property is not provided */\n defaultValue?: string;\n /** The event responses upon time changing */\n onChange?: (time: string, event?: React.SyntheticEvent) => void;\n /** In charge of the component blocking */\n disabled?: boolean;\n /** Control size\n * @default m */\n size?: 'm' | 'l';\n /** 12-hour time format */\n is12Hour?: boolean;\n /** Specifies the locale for i18n support */\n locale?: string;\n};\n\n/** @deprecated */\nexport interface ITimePickerItemProps extends TimePickerItemProps, UnknownProperties {}\nexport type TimePickerItemProps = InputValueProps & {\n /** Step for changing of the values in the dropdown list */\n step?: number;\n};\n\n/** @deprecated */\nexport interface ITimePickerFormatProps extends TimePickerFormatProps, UnknownProperties {}\nexport type TimePickerFormatProps = BoxProps & {};\n\n/** @deprecated */\nexport interface ITimePickerContext extends TimePickerContext, UnknownProperties {}\nexport type TimePickerContext = {\n getHoursProps: PropGetterFn;\n getFormatProps: PropGetterFn;\n getMinutesProps: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface ITimePickerHandlers extends TimePickerHandlers, UnknownProperties {}\nexport type TimePickerHandlers = {\n value: (value: string) => void;\n};\n\ndeclare const TimePicker: Intergalactic.Component<\n 'div',\n TimePickerProps,\n TimePickerContext,\n [handlers: TimePickerHandlers]\n> & {\n Hours: Intergalactic.Component<'div', TimePickerItemProps>;\n Minutes: Intergalactic.Component<'div', TimePickerItemProps>;\n Separator: typeof Box;\n Format: Intergalactic.Component<'div', TimePickerFormatProps>;\n};\n\nexport default TimePicker;\n"],"mappings":"","ignoreList":[]}
@@ -1,67 +0,0 @@
1
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
- import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
3
- import _createClass from "@babel/runtime/helpers/esm/createClass";
4
- import _callSuper from "@babel/runtime/helpers/esm/callSuper";
5
- import _inherits from "@babel/runtime/helpers/esm/inherits";
6
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
7
- import { sstyled, assignProps, Component } from "@semcore/core";
8
- import uniqueIDEnhancement from "@semcore/core/lib/utils/uniqueID";
9
- import { Box, ScreenReaderOnly } from "@semcore/flex-box";
10
- import React from "react";
11
- var TimePickerFormat = /* @__PURE__ */ (function(_Component) {
12
- function TimePickerFormat2() {
13
- var _this;
14
- _classCallCheck(this, TimePickerFormat2);
15
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
16
- args[_key] = arguments[_key];
17
- }
18
- _this = _callSuper(this, TimePickerFormat2, [].concat(args));
19
- _defineProperty(_this, "state", {
20
- changedFormatNotice: ""
21
- });
22
- _defineProperty(_this, "handleClick", function() {
23
- setTimeout(function() {
24
- var _this$asProps = _this.asProps, meridiem = _this$asProps.meridiem, getI18nText = _this$asProps.getI18nText;
25
- _this.setState({
26
- changedFormatNotice: getI18nText("changedFormatNotice", {
27
- meridiem
28
- })
29
- });
30
- }, 0);
31
- setTimeout(function() {
32
- _this.setState({
33
- changedFormatNotice: ""
34
- });
35
- }, 2e3);
36
- });
37
- return _this;
38
- }
39
- _inherits(TimePickerFormat2, _Component);
40
- return _createClass(TimePickerFormat2, [{
41
- key: "render",
42
- value: function render() {
43
- var _ref = this.asProps, _ref2;
44
- var SPickerFormat = Box;
45
- var _this$asProps2 = this.asProps, Children = _this$asProps2.Children, meridiem = _this$asProps2.meridiem, styles = _this$asProps2.styles, getI18nText = _this$asProps2.getI18nText, uid = _this$asProps2.uid;
46
- var changedFormatNotice = this.state.changedFormatNotice;
47
- var SPickerFormatText = "span";
48
- return _ref2 = sstyled(styles), /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(SPickerFormat, _ref2.cn("SPickerFormat", _objectSpread({}, assignProps({
49
- "type": "button",
50
- "tag": "button",
51
- "tabIndex": 0,
52
- "onClick": this.handleClick,
53
- "aria-describedby": "".concat(uid, "_describe")
54
- }, _ref))), Children.origin ? /* @__PURE__ */ React.createElement(Children, _ref2.cn("Children", {})) : /* @__PURE__ */ React.createElement(SPickerFormatText, _ref2.cn("SPickerFormatText", {}), meridiem)), /* @__PURE__ */ React.createElement(ScreenReaderOnly, _ref2.cn("ScreenReaderOnly", {
55
- "role": "status",
56
- "aria-live": "polite"
57
- }), changedFormatNotice), /* @__PURE__ */ React.createElement(ScreenReaderOnly, _ref2.cn("ScreenReaderOnly", {
58
- "aria-hidden": "true",
59
- "id": "".concat(uid, "_describe")
60
- }), getI18nText("formatToggler")));
61
- }
62
- }]);
63
- })(Component);
64
- _defineProperty(TimePickerFormat, "enhance", [uniqueIDEnhancement()]);
65
- export {
66
- TimePickerFormat as default
67
- };
@@ -1,263 +0,0 @@
1
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
4
- import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
5
- import _createClass from "@babel/runtime/helpers/esm/createClass";
6
- import _callSuper from "@babel/runtime/helpers/esm/callSuper";
7
- import _inherits from "@babel/runtime/helpers/esm/inherits";
8
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
9
- import { sstyled, assignProps, Component } from "@semcore/core";
10
- import { callAllEventHandlers } from "@semcore/core/lib/utils/assignProps";
11
- import Input from "@semcore/input";
12
- import Select from "@semcore/select";
13
- import React from "react";
14
- import { intOrDefault, withLeadingZero } from "./TimePicker.mjs";
15
- var _excluded = ["styles", "step", "onSelect", "time", "size", "disabled", "onVisibleChange"];
16
- var MAP_FIELD_TO_TIME = {
17
- hours: 0,
18
- minutes: 1
19
- };
20
- var MAP_SIZE_SELECT = {
21
- m: "m",
22
- l: "l"
23
- };
24
- function getOptions(min, max) {
25
- var step = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 1;
26
- var length = Number(((max + 1 - min) / step).toFixed(0));
27
- var options = Array(length).fill("");
28
- var numValue = min;
29
- return options.map(function(_i, index) {
30
- numValue = index === 0 ? numValue : numValue + step;
31
- var value = withLeadingZero(String(numValue));
32
- return /* @__PURE__ */ React.createElement(Select.Option, {
33
- value,
34
- key: value
35
- }, value);
36
- });
37
- }
38
- var defaultPopperOffset = [-8, 4];
39
- var ItemPicker = /* @__PURE__ */ (function(_Component) {
40
- function ItemPicker2() {
41
- var _this;
42
- _classCallCheck(this, ItemPicker2);
43
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
44
- args[_key] = arguments[_key];
45
- }
46
- _this = _callSuper(this, ItemPicker2, [].concat(args));
47
- _defineProperty(_this, "inputRef", /* @__PURE__ */ React.createRef());
48
- _defineProperty(_this, "state", {
49
- dirtyValue: void 0,
50
- visible: false
51
- });
52
- _defineProperty(_this, "parseValueWithMinMax", function(value) {
53
- var _this$minMax = _this.minMax(), _this$minMax2 = _slicedToArray(_this$minMax, 2), min = _this$minMax2[0], max = _this$minMax2[1];
54
- return String(Math.max(min, Math.min(max, value)));
55
- });
56
- _defineProperty(_this, "handleChange", function(value, event) {
57
- event.stopPropagation();
58
- var numberValue = intOrDefault(Number(value), Number.NaN);
59
- if (!Number.isNaN(numberValue)) {
60
- _this.setState({
61
- dirtyValue: value.slice(-2)
62
- });
63
- }
64
- });
65
- _defineProperty(_this, "handleBlur", function(event) {
66
- return _this.submitChanges(event);
67
- });
68
- _defineProperty(_this, "handleKeyDown", function() {
69
- });
70
- _defineProperty(_this, "handleSelect", function(value, event) {
71
- _this.dispatchOnChange(value, event);
72
- });
73
- _defineProperty(_this, "handleVisibleChange", function(visible) {
74
- return _this.setState({
75
- visible
76
- });
77
- });
78
- _defineProperty(_this, "getAriaLabel", function() {
79
- var getI18nText = _this.asProps._getI18nText;
80
- if (_this.field === "hours") return getI18nText("hours");
81
- if (_this.field === "minutes") return getI18nText("minutes");
82
- return void 0;
83
- });
84
- return _this;
85
- }
86
- _inherits(ItemPicker2, _Component);
87
- return _createClass(ItemPicker2, [{
88
- key: "minMax",
89
- value: function minMax() {
90
- return [];
91
- }
92
- }, {
93
- key: "dispatchOnChange",
94
- value: function dispatchOnChange(value, event) {
95
- this.setState({
96
- dirtyValue: void 0
97
- });
98
- this.asProps.$onValueChange(value, this.field, event);
99
- }
100
- }, {
101
- key: "submitChanges",
102
- value: function submitChanges(event) {
103
- var dirtyValue = this.state.dirtyValue;
104
- if (dirtyValue !== void 0) {
105
- if (dirtyValue) dirtyValue = this.parseValueWithMinMax(dirtyValue);
106
- this.dispatchOnChange(dirtyValue, event);
107
- }
108
- }
109
- }, {
110
- key: "render",
111
- value: function render() {
112
- var _ref = this.asProps, _ref2;
113
- var SPickerInput = Select.Trigger;
114
- var _this$asProps = this.asProps, styles = _this$asProps.styles, step = _this$asProps.step, onSelect = _this$asProps.onSelect, time = _this$asProps.time, size = _this$asProps.size, disabled = _this$asProps.disabled, onVisibleChange = _this$asProps.onVisibleChange, other = _objectWithoutProperties(_this$asProps, _excluded);
115
- var _this$state = this.state, dirtyValue = _this$state.dirtyValue, visible = _this$state.visible;
116
- var timeValue = time[MAP_FIELD_TO_TIME[this.field]];
117
- var value = dirtyValue === void 0 ? timeValue : dirtyValue;
118
- var _this$minMax3 = this.minMax(), _this$minMax4 = _slicedToArray(_this$minMax3, 2), min = _this$minMax4[0], max = _this$minMax4[1];
119
- return _ref2 = sstyled(styles), /* @__PURE__ */ React.createElement(Select, _ref2.cn("Select", _objectSpread(_objectSpread({}, other), {}, {
120
- "interaction": "focus",
121
- "size": size ? MAP_SIZE_SELECT[size] : false,
122
- "onChange": callAllEventHandlers(onSelect, this.handleSelect),
123
- "onVisibleChange": callAllEventHandlers(onVisibleChange, this.handleVisibleChange),
124
- "visible": visible,
125
- "value": timeValue
126
- })), /* @__PURE__ */ React.createElement(SPickerInput, _ref2.cn("SPickerInput", _objectSpread({}, assignProps({
127
- "tag": Input.Value,
128
- "ref": this.inputRef,
129
- "inputMode": "numeric",
130
- "size": size,
131
- "disabled": disabled,
132
- "neighborLocation": false,
133
- "value": value,
134
- "aria-label": this.getAriaLabel(),
135
- "onChange": this.handleChange,
136
- "onBlur": this.handleBlur,
137
- "onKeyDown": this.handleKeyDown
138
- }, _ref)))), /* @__PURE__ */ React.createElement(Select.Menu, {
139
- hMax: 180
140
- }, getOptions(min, max, step)));
141
- }
142
- }]);
143
- })(Component);
144
- _defineProperty(ItemPicker, "defaultProps", {
145
- placeholder: "00",
146
- offset: defaultPopperOffset
147
- });
148
- var Hours = /* @__PURE__ */ (function(_ItemPicker2) {
149
- function Hours2() {
150
- var _this2;
151
- _classCallCheck(this, Hours2);
152
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
153
- args[_key2] = arguments[_key2];
154
- }
155
- _this2 = _callSuper(this, Hours2, [].concat(args));
156
- _defineProperty(_this2, "field", "hours");
157
- _defineProperty(_this2, "handleKeyDown", function(event) {
158
- var currentTarget = event.currentTarget;
159
- if (event.key === "Enter") {
160
- _this2.submitChanges(event);
161
- }
162
- if (event.key === "ArrowRight") {
163
- if (currentTarget.selectionStart >= currentTarget.value.length && currentTarget.selectionStart === currentTarget.selectionEnd) {
164
- event.preventDefault();
165
- _this2.focusNext();
166
- }
167
- }
168
- });
169
- return _this2;
170
- }
171
- _inherits(Hours2, _ItemPicker2);
172
- return _createClass(Hours2, [{
173
- key: "minMax",
174
- value: function minMax() {
175
- var is12Hour = this.asProps.is12Hour;
176
- if (is12Hour) {
177
- return [1, 12];
178
- } else {
179
- return [0, 23];
180
- }
181
- }
182
- }, {
183
- key: "focusNext",
184
- value: function focusNext() {
185
- if (this.asProps.minutesInputRef.current) {
186
- this.setState({
187
- visible: false
188
- });
189
- this.asProps.minutesInputRef.current.focus();
190
- }
191
- }
192
- }, {
193
- key: "componentDidUpdate",
194
- value: function componentDidUpdate(_prevProps, prevState) {
195
- var dirtyValue = this.state.dirtyValue;
196
- if (prevState.dirtyValue === void 0 || dirtyValue === void 0) return;
197
- if (prevState.dirtyValue.length === 1 && dirtyValue.length === 2) {
198
- this.focusNext();
199
- }
200
- }
201
- }]);
202
- })(ItemPicker);
203
- _defineProperty(Hours, "defaultProps", function(_ref3) {
204
- var size = _ref3.size;
205
- return _objectSpread(_objectSpread({}, ItemPicker.defaultProps), {}, {
206
- ml: size === "l" ? 3 : void 0
207
- });
208
- });
209
- var Minutes = /* @__PURE__ */ (function(_ItemPicker3) {
210
- function Minutes2() {
211
- var _this3;
212
- _classCallCheck(this, Minutes2);
213
- for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
214
- args[_key3] = arguments[_key3];
215
- }
216
- _this3 = _callSuper(this, Minutes2, [].concat(args));
217
- _defineProperty(_this3, "field", "minutes");
218
- _defineProperty(_this3, "handleKeyDown", function(event) {
219
- var currentTarget = event.currentTarget;
220
- if (event.key === "ArrowLeft") {
221
- if (currentTarget.selectionStart <= 0 && currentTarget.selectionStart === currentTarget.selectionEnd) {
222
- event.preventDefault();
223
- _this3.focusPrev();
224
- }
225
- }
226
- if (event.key === "Backspace") {
227
- if (currentTarget.value.length === 0) {
228
- event.preventDefault();
229
- _this3.focusPrev();
230
- }
231
- }
232
- if (event.key === "Enter") _this3.submitChanges(event);
233
- });
234
- return _this3;
235
- }
236
- _inherits(Minutes2, _ItemPicker3);
237
- return _createClass(Minutes2, [{
238
- key: "minMax",
239
- value: function minMax() {
240
- return [0, 59];
241
- }
242
- }, {
243
- key: "focusPrev",
244
- value: function focusPrev() {
245
- if (this.asProps.hoursInputRef.current) {
246
- this.setState({
247
- visible: false
248
- });
249
- this.asProps.hoursInputRef.current.focus();
250
- }
251
- }
252
- }]);
253
- })(ItemPicker);
254
- _defineProperty(Minutes, "defaultProps", function(_ref4) {
255
- var size = _ref4.size;
256
- return _objectSpread(_objectSpread({}, ItemPicker.defaultProps), {}, {
257
- mr: size === "l" ? 3 : void 0
258
- });
259
- });
260
- export {
261
- Hours,
262
- Minutes
263
- };