@semcore/time-picker 4.53.0-prerelease.4 → 4.53.0-prerelease.5

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 (78) hide show
  1. package/lib/cjs/component/PickerFormat/PickerFormat.js +93 -0
  2. package/lib/cjs/component/PickerFormat/PickerFormat.js.map +1 -0
  3. package/lib/cjs/component/PickerFormat/PickerFormat.type.js +2 -0
  4. package/lib/cjs/component/PickerFormat/PickerFormat.type.js.map +1 -0
  5. package/lib/cjs/{style/time-picker.shadow.css → component/PickerFormat/picker-format.shadow.css} +2 -62
  6. package/lib/cjs/{PickerInput.js → component/PickerInput/PickerInput.js} +89 -108
  7. package/lib/cjs/component/PickerInput/PickerInput.js.map +1 -0
  8. package/lib/cjs/component/PickerInput/PickerInput.type.js +2 -0
  9. package/lib/cjs/component/PickerInput/PickerInput.type.js.map +1 -0
  10. package/lib/cjs/component/PickerInput/picker-input.shadow.css +11 -0
  11. package/lib/cjs/component/TimePicker/TimePicker.js +254 -0
  12. package/lib/cjs/component/TimePicker/TimePicker.js.map +1 -0
  13. package/lib/cjs/component/TimePicker/TimePicker.type.js +2 -0
  14. package/lib/cjs/component/TimePicker/TimePicker.type.js.map +1 -0
  15. package/lib/cjs/component/TimePicker/time-picker.shadow.css +34 -0
  16. package/lib/cjs/entity/TimePickerEntity.js +101 -0
  17. package/lib/cjs/entity/TimePickerEntity.js.map +1 -0
  18. package/lib/cjs/index.js +6 -5
  19. package/lib/cjs/index.js.map +1 -1
  20. package/lib/cjs/translations/__intergalactic-dynamic-locales.js +4 -5
  21. package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
  22. package/lib/es6/component/PickerFormat/PickerFormat.js +88 -0
  23. package/lib/es6/component/PickerFormat/PickerFormat.js.map +1 -0
  24. package/lib/es6/component/PickerFormat/PickerFormat.type.js +2 -0
  25. package/lib/es6/component/PickerFormat/PickerFormat.type.js.map +1 -0
  26. package/lib/{esm/style/time-picker.shadow.css → es6/component/PickerFormat/picker-format.shadow.css} +2 -62
  27. package/lib/es6/{PickerInput.js → component/PickerInput/PickerInput.js} +90 -106
  28. package/lib/es6/component/PickerInput/PickerInput.js.map +1 -0
  29. package/lib/es6/component/PickerInput/PickerInput.type.js +2 -0
  30. package/lib/es6/component/PickerInput/PickerInput.type.js.map +1 -0
  31. package/lib/es6/component/PickerInput/picker-input.shadow.css +11 -0
  32. package/lib/es6/component/TimePicker/TimePicker.js +250 -0
  33. package/lib/es6/component/TimePicker/TimePicker.js.map +1 -0
  34. package/lib/es6/component/TimePicker/TimePicker.type.js +2 -0
  35. package/lib/es6/component/TimePicker/TimePicker.type.js.map +1 -0
  36. package/lib/es6/component/TimePicker/time-picker.shadow.css +34 -0
  37. package/lib/es6/entity/TimePickerEntity.js +94 -0
  38. package/lib/es6/entity/TimePickerEntity.js.map +1 -0
  39. package/lib/es6/index.js +2 -2
  40. package/lib/es6/index.js.map +1 -1
  41. package/lib/es6/translations/__intergalactic-dynamic-locales.js +2 -2
  42. package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
  43. package/lib/esm/component/PickerFormat/PickerFormat.mjs +86 -0
  44. package/lib/{es6/style/time-picker.shadow.css → esm/component/PickerFormat/picker-format.shadow.css} +2 -62
  45. package/lib/esm/{PickerInput.mjs → component/PickerInput/PickerInput.mjs} +92 -100
  46. package/lib/esm/component/PickerInput/picker-input.shadow.css +11 -0
  47. package/lib/esm/component/TimePicker/TimePicker.mjs +233 -0
  48. package/lib/esm/component/TimePicker/TimePicker.type.mjs +1 -0
  49. package/lib/esm/component/TimePicker/time-picker.shadow.css +34 -0
  50. package/lib/esm/entity/TimePickerEntity.mjs +90 -0
  51. package/lib/esm/index.mjs +3 -7
  52. package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +2 -2
  53. package/lib/types/component/PickerFormat/PickerFormat.d.ts +17 -0
  54. package/lib/types/component/PickerFormat/PickerFormat.type.d.ts +16 -0
  55. package/lib/types/component/PickerInput/PickerInput.d.ts +54 -0
  56. package/lib/types/component/PickerInput/PickerInput.type.d.ts +13 -0
  57. package/lib/types/component/TimePicker/TimePicker.d.ts +3 -0
  58. package/lib/types/component/TimePicker/TimePicker.type.d.ts +50 -0
  59. package/lib/types/entity/TimePickerEntity.d.ts +22 -0
  60. package/lib/types/index.d.ts +2 -63
  61. package/lib/types/translations/__intergalactic-dynamic-locales.d.ts +114 -0
  62. package/package.json +7 -7
  63. package/lib/cjs/PickerFormat.js +0 -85
  64. package/lib/cjs/PickerFormat.js.map +0 -1
  65. package/lib/cjs/PickerInput.js.map +0 -1
  66. package/lib/cjs/TimePicker.js +0 -360
  67. package/lib/cjs/TimePicker.js.map +0 -1
  68. package/lib/cjs/index.d.js +0 -2
  69. package/lib/cjs/index.d.js.map +0 -1
  70. package/lib/es6/PickerFormat.js +0 -79
  71. package/lib/es6/PickerFormat.js.map +0 -1
  72. package/lib/es6/PickerInput.js.map +0 -1
  73. package/lib/es6/TimePicker.js +0 -348
  74. package/lib/es6/TimePicker.js.map +0 -1
  75. package/lib/es6/index.d.js +0 -2
  76. package/lib/es6/index.d.js.map +0 -1
  77. package/lib/esm/PickerFormat.mjs +0 -70
  78. package/lib/esm/TimePicker.mjs +0 -305
@@ -1 +0,0 @@
1
- {"version":3,"file":"PickerInput.js","names":["_core","require","_react","_interopRequireDefault","_input","_select","_TimePicker","_assignProps2","_excluded","MAP_FIELD_TO_TIME","hours","minutes","MAP_SIZE_SELECT","m","l","getOptions","min","max","step","arguments","length","undefined","Number","toFixed","options","Array","fill","numValue","map","i","index","value","withLeadingZero","String","createElement","Option","key","defaultPopperOffset","ItemPicker","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","args","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","React","createRef","dirtyValue","visible","_this$minMax","minMax","_this$minMax2","_slicedToArray2","Math","event","stopPropagation","numberValue","intOrDefault","NaN","isNaN","setState","slice","submitChanges","dispatchOnChange","getI18nText","asProps","_getI18nText","field","_createClass2","$onValueChange","state","parseValueWithMinMax","render","_ref","_ref2","SPickerInput","Select","Trigger","_this$asProps","styles","onSelect","time","size","disabled","onVisibleChange","other","_objectWithoutProperties2","_this$state","timeValue","_this$minMax3","_this$minMax4","sstyled","cn","_objectSpread2","callAllEventHandlers","handleSelect","handleVisibleChange","assignProps","Input","Value","inputRef","getAriaLabel","handleChange","handleBlur","handleKeyDown","Menu","hMax","Component","placeholder","offset","Hours","_ItemPicker","_super2","_this2","_len2","_key2","currentTarget","selectionStart","selectionEnd","preventDefault","focusNext","is12Hour","minutesInputRef","current","focus","componentDidUpdate","_prevProps","prevState","exports","_ref3","defaultProps","ml","Minutes","_ItemPicker2","_super3","_this3","_len3","_key3","focusPrev","hoursInputRef","_ref4","mr"],"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\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), 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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"}
@@ -1,360 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = void 0;
9
- exports.formatHoursTo12 = formatHoursTo12;
10
- exports.formatHoursTo24 = formatHoursTo24;
11
- exports.intOrDefault = intOrDefault;
12
- exports.meridiemByHours = meridiemByHours;
13
- exports.withLeadingZero = withLeadingZero;
14
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
15
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
16
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
17
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
18
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
19
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
20
- var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
21
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
22
- var _index = require("@semcore/utils/lib/core/index");
23
- var _core = _interopRequireWildcard(require("@semcore/core"));
24
- var _react = _interopRequireDefault(require("react"));
25
- var _input = _interopRequireDefault(require("@semcore/input"));
26
- var _flexBox = require("@semcore/flex-box");
27
- var _PickerInput = require("./PickerInput");
28
- var _PickerFormat = _interopRequireDefault(require("./PickerFormat"));
29
- var _intergalacticDynamicLocales = require("./translations/__intergalactic-dynamic-locales");
30
- var _i18nEnhance = _interopRequireDefault(require("@semcore/utils/lib/enhances/i18nEnhance"));
31
- var _keyboardFocusEnhance = _interopRequireDefault(require("@semcore/utils/lib/enhances/keyboardFocusEnhance"));
32
- /*!__reshadow-styles__:"./style/time-picker.shadow.css"*/
33
- var style = ( /*__reshadow_css_start__*/_index.sstyled.insert( /*__inner_css_start__*/".___STimePicker_aiius_gg_{position:relative;width:auto;outline:0}.___STimePicker_aiius_gg_.__keyboardFocused_aiius_gg_:focus{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 33, 220, 0.469))}@supports (color:color(display-p3 0 0 0)){.___STimePicker_aiius_gg_.__keyboardFocused_aiius_gg_:focus{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 33, 220, 0.469))}@media (color-gamut:p3){.___STimePicker_aiius_gg_.__keyboardFocused_aiius_gg_:focus{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px color(display-p3 0.03256 0.12227 0.83249 / 0.469))}}}.___STimePicker_aiius_gg_.__disabled_aiius_gg_{color:var(--intergalactic-text-secondary, rgba(0, 3, 0, 0.583));cursor:default}@supports (color:color(display-p3 0 0 0)){.___STimePicker_aiius_gg_.__disabled_aiius_gg_{color:var(--intergalactic-text-secondary, rgba(0, 3, 0, 0.583))}@media (color-gamut:p3){.___STimePicker_aiius_gg_.__disabled_aiius_gg_{color:var(--intergalactic-text-secondary, color(display-p3 0.00228 0.01289 0.00252 / 0.583))}}}.___SPickerInput_aiius_gg_{box-sizing:content-box;text-align:center;z-index:1;height:1.5em}.___SPickerInput_aiius_gg_.__placeholder_aiius_gg_{text-overflow:initial}.___SPickerInput_aiius_gg_:focus{background-color:var(--intergalactic-bg-highlight-focus, rgb(226, 235, 255))}@supports (color:color(display-p3 0 0 0)){.___SPickerInput_aiius_gg_:focus{background-color:var(--intergalactic-bg-highlight-focus, rgb(226, 235, 255))}@media (color-gamut:p3){.___SPickerInput_aiius_gg_:focus{background-color:var(--intergalactic-bg-highlight-focus, color(display-p3 0.89101 0.91919 1))}}}.___SPickerInput_aiius_gg_._size_l_aiius_gg_,.___SPickerInput_aiius_gg_._size_m_aiius_gg_{width:19px;margin:0 var(--intergalactic-spacing-2x, 8px);padding:0}.___SPickerInput_aiius_gg_._size_l_aiius_gg_{width:21px}.___SPickerFormat_aiius_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, rgba(0, 12, 8, 0.161));border-radius:0 var(--intergalactic-control-rounded, 6px) var(--intergalactic-control-rounded, 6px)0;outline: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;color:var(--intergalactic-text-secondary, rgba(0, 3, 0, 0.583));background-color:var(--intergalactic-bg-secondary-neutral, rgb(248, 249, 248))}@supports (color:color(display-p3 0 0 0)){.___SPickerFormat_aiius_gg_{border:1px solid var(--intergalactic-border-primary, rgba(0, 12, 8, 0.161));color:var(--intergalactic-text-secondary, rgba(0, 3, 0, 0.583))}@media (color-gamut:p3){.___SPickerFormat_aiius_gg_{border:1px solid var(--intergalactic-border-primary, color(display-p3 0.00798 0.04498 0.03219 / 0.161));color:var(--intergalactic-text-secondary, color(display-p3 0.00228 0.01289 0.00252 / 0.583))}}}@media (hover:hover){.___SPickerFormat_aiius_gg_:hover{color:var(--intergalactic-text-secondary, rgba(0, 3, 0, 0.583));background-color:var(--intergalactic-bg-secondary-neutral-hover, rgb(241, 242, 242))}@supports (color:color(display-p3 0 0 0)){.___SPickerFormat_aiius_gg_:hover{color:var(--intergalactic-text-secondary, rgba(0, 3, 0, 0.583))}@media (color-gamut:p3){.___SPickerFormat_aiius_gg_:hover{color:var(--intergalactic-text-secondary, color(display-p3 0.00228 0.01289 0.00252 / 0.583))}}}}.___SPickerFormat_aiius_gg_.__active_aiius_gg_,.___SPickerFormat_aiius_gg_:active{color:var(--intergalactic-text-secondary, rgba(0, 3, 0, 0.583));background-color:var(--intergalactic-bg-secondary-neutral-active, rgb(234, 235, 235))}@supports (color:color(display-p3 0 0 0)){.___SPickerFormat_aiius_gg_.__active_aiius_gg_,.___SPickerFormat_aiius_gg_:active{color:var(--intergalactic-text-secondary, rgba(0, 3, 0, 0.583))}@media (color-gamut:p3){.___SPickerFormat_aiius_gg_.__active_aiius_gg_,.___SPickerFormat_aiius_gg_:active{color:var(--intergalactic-text-secondary, color(display-p3 0.00228 0.01289 0.00252 / 0.583))}}}.___SPickerFormat_aiius_gg_:focus,.___SPickerFormat_aiius_gg_:focus-visible{outline:0}.___SPickerFormat_aiius_gg_._size_m_aiius_gg_{height:var(--intergalactic-form-control-m, 28px);font-size:var(--intergalactic-fs-200, 14px);margin:0-1px 0 0}.___SPickerFormat_aiius_gg_._size_m_aiius_gg_ .___SPickerFormatText_aiius_gg_{margin:0 var(--intergalactic-spacing-2x, 8px)}.___SPickerFormat_aiius_gg_._size_l_aiius_gg_{height:var(--intergalactic-form-control-l, 40px);font-size:var(--intergalactic-fs-300, 16px);margin:0 calc(-1*var(--intergalactic-spacing-1x, 4px))0 0}.___SPickerFormat_aiius_gg_._size_l_aiius_gg_ .___SPickerFormatText_aiius_gg_{margin:0 var(--intergalactic-spacing-3x, 12px)}.___SPickerFormat_aiius_gg_.__disabled_aiius_gg_{opacity:var(--intergalactic-disabled-opacity, 0.4);cursor:default;pointer-events:none;border-color:transparent transparent transparent var(--intergalactic-border-primary, rgba(0, 12, 8, 0.161))}@supports (color:color(display-p3 0 0 0)){.___SPickerFormat_aiius_gg_.__disabled_aiius_gg_{border-color:transparent transparent transparent var(--intergalactic-border-primary, rgba(0, 12, 8, 0.161))}@media (color-gamut:p3){.___SPickerFormat_aiius_gg_.__disabled_aiius_gg_{border-color:transparent transparent transparent var(--intergalactic-border-primary, color(display-p3 0.00798 0.04498 0.03219 / 0.161))}}}.___SPickerFormat_aiius_gg_.__keyboardFocused_aiius_gg_{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 33, 220, 0.469))}@supports (color:color(display-p3 0 0 0)){.___SPickerFormat_aiius_gg_.__keyboardFocused_aiius_gg_{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 33, 220, 0.469))}@media (color-gamut:p3){.___SPickerFormat_aiius_gg_.__keyboardFocused_aiius_gg_{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px color(display-p3 0.03256 0.12227 0.83249 / 0.469))}}}.___STimePickerSeparator_aiius_gg_{color:var(--intergalactic-text-primary, rgba(1, 5, 0, 0.899))}.___STimePickerSeparator_aiius_gg_.__disabled_aiius_gg_{opacity:var(--intergalactic-disabled-opacity, 0.4);pointer-events:none}", /*__inner_css_end__*/"aiius_gg_"),
34
- /*__reshadow_css_end__*/
35
- {
36
- "__STimePicker": "___STimePicker_aiius_gg_",
37
- "_keyboardFocused": "__keyboardFocused_aiius_gg_",
38
- "_disabled": "__disabled_aiius_gg_",
39
- "__SPickerInput": "___SPickerInput_aiius_gg_",
40
- "_size_m": "_size_m_aiius_gg_",
41
- "_size_l": "_size_l_aiius_gg_",
42
- "__SPickerFormat": "___SPickerFormat_aiius_gg_",
43
- "__STimePickerSeparator": "___STimePickerSeparator_aiius_gg_",
44
- "_placeholder": "__placeholder_aiius_gg_",
45
- "_active": "__active_aiius_gg_",
46
- "__SPickerFormatText": "___SPickerFormatText_aiius_gg_"
47
- });
48
- var MAP_MERIDIEM = {
49
- AM: 'PM',
50
- PM: 'AM'
51
- };
52
- var MAP_FIELD_TO_TIME = {
53
- hours: 0,
54
- minutes: 1
55
- };
56
- function intOrDefault(value) {
57
- var def = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
58
- var number = Number.parseInt(value);
59
- return Number.isNaN(number) ? def : number;
60
- }
61
- function withLeadingZero(value) {
62
- value = String(value);
63
- if (value.length === 1) return "0".concat(value);
64
- return String(value);
65
- }
66
- function meridiemByHours(hours) {
67
- return hours >= 12 ? 'PM' : 'AM';
68
- }
69
- function formatHoursTo12(hours /* hours by 24 */) {
70
- var nHours = intOrDefault(hours, NaN); // if not (:00)
71
- if (Number.isNaN(nHours)) return hours;
72
-
73
- // if not (HH:00)
74
- if (nHours === 0) return 12; // 0 => 12 PM
75
- if (nHours > 12) return nHours - 12; // 22 => 10 PM
76
-
77
- return hours;
78
- }
79
- function formatHoursTo24(hours /* hours by 12 */, meridiem) {
80
- var nHours = intOrDefault(hours, NaN); // if not (:00)
81
-
82
- if (Number.isNaN(nHours)) return hours;
83
- if (meridiem === 'AM') {
84
- if (nHours === 12) return 0; // 12 AM => 0
85
- }
86
-
87
- if (meridiem === 'PM') {
88
- if (nHours < 12) return nHours + 12; // 10 PM => 22
89
- }
90
-
91
- return hours;
92
- }
93
- var TimePickerRoot = /*#__PURE__*/function (_Component) {
94
- (0, _inherits2["default"])(TimePickerRoot, _Component);
95
- var _super = (0, _createSuper2["default"])(TimePickerRoot);
96
- function TimePickerRoot() {
97
- var _this;
98
- (0, _classCallCheck2["default"])(this, TimePickerRoot);
99
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
100
- args[_key] = arguments[_key];
101
- }
102
- _this = _super.call.apply(_super, [this].concat(args));
103
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "hoursInputRef", /*#__PURE__*/_react["default"].createRef());
104
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "minutesInputRef", /*#__PURE__*/_react["default"].createRef());
105
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "_lastMeridiem", 'AM');
106
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleValueChange", function (value, field, event) {
107
- var is12Hour = _this.asProps.is12Hour;
108
- var _assertThisInitialize = (0, _assertThisInitialized2["default"])(_this),
109
- meridiem = _assertThisInitialize.meridiem;
110
- var time;
111
- if (field) {
112
- time = _this.value.split(':');
113
- time[MAP_FIELD_TO_TIME[field]] = value;
114
- } else {
115
- time = value.split(':');
116
- }
117
- var _time = time,
118
- _time2 = (0, _slicedToArray2["default"])(_time, 2),
119
- _time2$ = _time2[0],
120
- hours = _time2$ === void 0 ? '' : _time2$,
121
- _time2$2 = _time2[1],
122
- minutes = _time2$2 === void 0 ? '' : _time2$2;
123
- if (is12Hour) hours = String(formatHoursTo12(hours));
124
- value = _this.timeToValue([hours, minutes], meridiem);
125
- _this.handlers.value(value, event);
126
- });
127
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleMeridiemClick", function (event) {
128
- var is12Hour = _this.asProps.is12Hour;
129
- var _assertThisInitialize2 = (0, _assertThisInitialized2["default"])(_this),
130
- value = _assertThisInitialize2.value,
131
- meridiem = _assertThisInitialize2.meridiem;
132
- var _value$split = value.split(':'),
133
- _value$split2 = (0, _slicedToArray2["default"])(_value$split, 2),
134
- _value$split2$ = _value$split2[0],
135
- hours = _value$split2$ === void 0 ? '' : _value$split2$,
136
- _value$split2$2 = _value$split2[1],
137
- minutes = _value$split2$2 === void 0 ? '' : _value$split2$2;
138
- if (is12Hour) hours = String(formatHoursTo12(hours));
139
- value = _this.timeToValue([hours, minutes], MAP_MERIDIEM[meridiem]);
140
- _this.handlers.value(value, event);
141
- });
142
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "_getHoursAndMinutesProps", function () {
143
- var _this$asProps = _this.asProps,
144
- is12Hour = _this$asProps.is12Hour,
145
- size = _this$asProps.size,
146
- disabled = _this$asProps.disabled,
147
- getI18nText = _this$asProps.getI18nText;
148
- var time = _this.valueToTime(_this.value);
149
- return {
150
- time: time,
151
- size: size,
152
- is12Hour: is12Hour,
153
- disabled: disabled,
154
- $onValueChange: _this.handleValueChange,
155
- minutesInputRef: _this.minutesInputRef,
156
- hoursInputRef: _this.hoursInputRef,
157
- _getI18nText: getI18nText
158
- };
159
- });
160
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "getHoursProps", function () {
161
- return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _this._getHoursAndMinutesProps()), {}, {
162
- ref: _this.hoursInputRef
163
- });
164
- });
165
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "getMinutesProps", function () {
166
- return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _this._getHoursAndMinutesProps()), {}, {
167
- ref: _this.minutesInputRef
168
- });
169
- });
170
- return _this;
171
- }
172
- (0, _createClass2["default"])(TimePickerRoot, [{
173
- key: "uncontrolledProps",
174
- value:
175
- // default AM
176
-
177
- function uncontrolledProps() {
178
- return {
179
- value: null,
180
- title: null
181
- };
182
- }
183
- }, {
184
- key: "componentDidMount",
185
- value: function componentDidMount() {
186
- var _document$querySelect;
187
- var _this$asProps2 = this.asProps,
188
- id = _this$asProps2.id,
189
- ariaDescribedBy = _this$asProps2['aria-describedby'];
190
- var selector = "[for=".concat(id, "]");
191
- var titleElement = (_document$querySelect = document.querySelector(selector)) !== null && _document$querySelect !== void 0 ? _document$querySelect : document.querySelector("#".concat(ariaDescribedBy));
192
- if (titleElement) {
193
- this.handlers.title(titleElement.textContent);
194
- }
195
- }
196
- }, {
197
- key: "value",
198
- get: function get() {
199
- var value = this.asProps.value;
200
- return value === null || value === undefined ? ':' : value;
201
- }
202
- }, {
203
- key: "meridiem",
204
- get: function get() {
205
- var value = this.asProps.value;
206
- var _value$split3 = value.split(':'),
207
- _value$split4 = (0, _slicedToArray2["default"])(_value$split3, 1),
208
- _value$split4$ = _value$split4[0],
209
- hours = _value$split4$ === void 0 ? '' : _value$split4$;
210
- var nHours = intOrDefault(hours, NaN);
211
- if (!Number.isNaN(nHours)) {
212
- this._lastMeridiem = meridiemByHours(nHours);
213
- }
214
- return this._lastMeridiem;
215
- }
216
- }, {
217
- key: "valueToTime",
218
- value: function valueToTime(value) {
219
- var is12Hour = this.asProps.is12Hour;
220
- var _value$split5 = value.split(':'),
221
- _value$split6 = (0, _slicedToArray2["default"])(_value$split5, 2),
222
- _value$split6$ = _value$split6[0],
223
- hours = _value$split6$ === void 0 ? '' : _value$split6$,
224
- _value$split6$2 = _value$split6[1],
225
- minutes = _value$split6$2 === void 0 ? '' : _value$split6$2;
226
- if (is12Hour) hours = formatHoursTo12(hours);
227
- hours = withLeadingZero(hours);
228
- minutes = withLeadingZero(minutes);
229
- return [hours, minutes];
230
- }
231
- }, {
232
- key: "timeToValue",
233
- value: function timeToValue(time, meridiem) {
234
- var is12Hour = this.asProps.is12Hour;
235
- var _time3 = (0, _slicedToArray2["default"])(time, 2),
236
- _time3$ = _time3[0],
237
- hours = _time3$ === void 0 ? '' : _time3$,
238
- _time3$2 = _time3[1],
239
- minutes = _time3$2 === void 0 ? '' : _time3$2;
240
- hours = intOrDefault(hours, hours); // 03 => 3
241
- minutes = intOrDefault(minutes, minutes); // MM => MM
242
-
243
- if (is12Hour) hours = formatHoursTo24(hours, meridiem); // 12 PM -> 0
244
-
245
- return "".concat(hours, ":").concat(minutes);
246
- }
247
- }, {
248
- key: "getSeparatorProps",
249
- value: function getSeparatorProps() {
250
- return {
251
- disabled: this.asProps.disabled,
252
- hoursInputRef: this.hoursInputRef
253
- };
254
- }
255
- }, {
256
- key: "getFormatProps",
257
- value: function getFormatProps() {
258
- var _this$asProps3 = this.asProps,
259
- size = _this$asProps3.size,
260
- disabled = _this$asProps3.disabled,
261
- disablePortal = _this$asProps3.disablePortal,
262
- getI18nText = _this$asProps3.getI18nText;
263
- return {
264
- size: size,
265
- disabled: disabled,
266
- disablePortal: disablePortal,
267
- meridiem: this.meridiem,
268
- onClick: this.handleMeridiemClick,
269
- getI18nText: getI18nText
270
- };
271
- }
272
- }, {
273
- key: "render",
274
- value: function render() {
275
- var _ref = this.asProps,
276
- _ref3;
277
- var STimePicker = _input["default"];
278
- var _this$asProps4 = this.asProps,
279
- styles = _this$asProps4.styles,
280
- Children = _this$asProps4.Children,
281
- value = _this$asProps4.value,
282
- is12Hour = _this$asProps4.is12Hour,
283
- getI18nText = _this$asProps4.getI18nText,
284
- title = _this$asProps4.title;
285
- var _this$valueToTime = this.valueToTime(this.value),
286
- _this$valueToTime2 = (0, _slicedToArray2["default"])(_this$valueToTime, 2),
287
- hours = _this$valueToTime2[0],
288
- minutes = _this$valueToTime2[1];
289
- var label = value ? "".concat(title, " ").concat(getI18nText('title', {
290
- time: "".concat(hours, ":").concat(withLeadingZero(minutes)),
291
- meridiem: is12Hour ? this.meridiem : ''
292
- })) : "".concat(title, " ").concat(getI18nText('titleEmpty'));
293
- return _ref3 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(STimePicker, _ref3.cn("STimePicker", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
294
- "role": 'group',
295
- "aria-label": label,
296
- "__excludeProps": ['value', 'title']
297
- }, _ref))), /*#__PURE__*/_react["default"].createElement(Children, _ref3.cn("Children", {}))));
298
- }
299
- }]);
300
- return TimePickerRoot;
301
- }(_core.Component);
302
- (0, _defineProperty2["default"])(TimePickerRoot, "displayName", 'TimePicker');
303
- (0, _defineProperty2["default"])(TimePickerRoot, "style", style);
304
- (0, _defineProperty2["default"])(TimePickerRoot, "enhance", [(0, _i18nEnhance["default"])(_intergalacticDynamicLocales.localizedMessages), (0, _keyboardFocusEnhance["default"])()]);
305
- (0, _defineProperty2["default"])(TimePickerRoot, "defaultProps", function (_ref5) {
306
- var is12Hour = _ref5.is12Hour;
307
- return {
308
- defaultValue: '',
309
- size: 'm',
310
- children: /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(TimePicker.Hours, null), /*#__PURE__*/_react["default"].createElement(TimePicker.Separator, null), /*#__PURE__*/_react["default"].createElement(TimePicker.Minutes, null), is12Hour && /*#__PURE__*/_react["default"].createElement(TimePicker.Format, null)),
311
- i18n: _intergalacticDynamicLocales.localizedMessages,
312
- locale: 'en',
313
- defaultTitle: ''
314
- };
315
- });
316
- var Separator = /*#__PURE__*/function (_Component2) {
317
- (0, _inherits2["default"])(Separator, _Component2);
318
- var _super2 = (0, _createSuper2["default"])(Separator);
319
- function Separator() {
320
- var _this2;
321
- (0, _classCallCheck2["default"])(this, Separator);
322
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
323
- args[_key2] = arguments[_key2];
324
- }
325
- _this2 = _super2.call.apply(_super2, [this].concat(args));
326
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this2), "handlerClick", function () {
327
- if (_this2.asProps.hoursInputRef.current) {
328
- var _this2$asProps$hoursI;
329
- (_this2$asProps$hoursI = _this2.asProps.hoursInputRef.current) === null || _this2$asProps$hoursI === void 0 ? void 0 : _this2$asProps$hoursI.focus();
330
- }
331
- });
332
- return _this2;
333
- }
334
- (0, _createClass2["default"])(Separator, [{
335
- key: "render",
336
- value: function render() {
337
- var _ref2 = this.asProps,
338
- _ref4;
339
- var STimePickerSeparator = _flexBox.Box;
340
- var styles = this.asProps.styles;
341
- return _ref4 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(STimePickerSeparator, _ref4.cn("STimePickerSeparator", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
342
- "onClick": this.handlerClick,
343
- "aria-hidden": 'true'
344
- }, _ref2))));
345
- }
346
- }]);
347
- return Separator;
348
- }(_core.Component);
349
- (0, _defineProperty2["default"])(Separator, "defaultProps", {
350
- children: ':'
351
- });
352
- var TimePicker = (0, _core["default"])(TimePickerRoot, {
353
- Hours: _PickerInput.Hours,
354
- Minutes: _PickerInput.Minutes,
355
- Separator: Separator,
356
- Format: _PickerFormat["default"]
357
- });
358
- var _default = TimePicker;
359
- exports["default"] = _default;
360
- //# sourceMappingURL=TimePicker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TimePicker.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_input","_flexBox","_PickerInput","_PickerFormat","_intergalacticDynamicLocales","_i18nEnhance","_keyboardFocusEnhance","style","_index","sstyled","insert","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","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","args","Array","_key","call","apply","_defineProperty2","_assertThisInitialized2","React","createRef","field","event","is12Hour","asProps","_assertThisInitialize","time","split","_time","_time2","_slicedToArray2","_time2$","_time2$2","timeToValue","handlers","_assertThisInitialize2","_value$split","_value$split2","_value$split2$","_value$split2$2","_this$asProps","size","disabled","getI18nText","valueToTime","$onValueChange","handleValueChange","minutesInputRef","hoursInputRef","_getI18nText","_objectSpread2","_getHoursAndMinutesProps","ref","_createClass2","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","Input","_this$asProps4","styles","Children","_this$valueToTime","_this$valueToTime2","label","createElement","Fragment","cn","assignProps","Component","i18nEnhance","localizedMessages","keyboardFocusEnhance","_ref5","defaultValue","children","TimePicker","Hours","Separator","Minutes","Format","i18n","locale","defaultTitle","_Component2","_super2","_this2","_len2","_key2","current","_this2$asProps$hoursI","focus","_ref2","_ref4","STimePickerSeparator","Box","handlerClick","createComponent","_default","exports"],"sources":["../../src/TimePicker.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport Input from '@semcore/input';\nimport { Box } from '@semcore/flex-box';\nimport { Hours, Minutes } from './PickerInput';\nimport Format from './PickerFormat';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\n\nimport style from './style/time-picker.shadow.css';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\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, 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, 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), keyboardFocusEnhance()];\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, 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 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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"}
@@ -1,2 +0,0 @@
1
- "use strict";
2
- //# sourceMappingURL=index.d.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import React from 'react';\nimport { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport { InputProps, InputValueProps } from '@semcore/input';\nimport { Box, BoxProps } from '@semcore/flex-box';\nimport { KeyboardFocusProps } from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\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 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 & KeyboardFocusProps & {};\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":""}
@@ -1,79 +0,0 @@
1
- import _objectSpread from "@babel/runtime/helpers/objectSpread2";
2
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
- import _createClass from "@babel/runtime/helpers/createClass";
4
- import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
5
- import _inherits from "@babel/runtime/helpers/inherits";
6
- import _createSuper from "@babel/runtime/helpers/createSuper";
7
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
8
- import { assignProps as _assignProps } from "@semcore/core";
9
- import React from 'react';
10
- import { Component, sstyled, Root } from '@semcore/core';
11
- import { Box } from '@semcore/flex-box';
12
- import keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';
13
- import { ScreenReaderOnly } from '@semcore/flex-box';
14
- import uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';
15
- var TimePickerFormat = /*#__PURE__*/function (_Component) {
16
- _inherits(TimePickerFormat, _Component);
17
- var _super = _createSuper(TimePickerFormat);
18
- function TimePickerFormat() {
19
- var _this;
20
- _classCallCheck(this, TimePickerFormat);
21
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
22
- args[_key] = arguments[_key];
23
- }
24
- _this = _super.call.apply(_super, [this].concat(args));
25
- _defineProperty(_assertThisInitialized(_this), "state", {
26
- changedFormatNotice: ''
27
- });
28
- _defineProperty(_assertThisInitialized(_this), "handleClick", function () {
29
- setTimeout(function () {
30
- var _this$asProps = _this.asProps,
31
- meridiem = _this$asProps.meridiem,
32
- getI18nText = _this$asProps.getI18nText;
33
- _this.setState({
34
- changedFormatNotice: getI18nText('changedFormatNotice', {
35
- meridiem: meridiem
36
- })
37
- });
38
- }, 0);
39
- setTimeout(function () {
40
- _this.setState({
41
- changedFormatNotice: ''
42
- });
43
- }, 2000);
44
- });
45
- return _this;
46
- }
47
- _createClass(TimePickerFormat, [{
48
- key: "render",
49
- value: function render() {
50
- var _ref = this.asProps,
51
- _ref2;
52
- var SPickerFormat = Box;
53
- var _this$asProps2 = this.asProps,
54
- Children = _this$asProps2.Children,
55
- meridiem = _this$asProps2.meridiem,
56
- styles = _this$asProps2.styles,
57
- getI18nText = _this$asProps2.getI18nText,
58
- uid = _this$asProps2.uid;
59
- var changedFormatNotice = this.state.changedFormatNotice;
60
- var SPickerFormatText = 'span';
61
- return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(SPickerFormat, _ref2.cn("SPickerFormat", _objectSpread({}, _assignProps({
62
- "type": 'button',
63
- "tag": 'button',
64
- "onClick": this.handleClick,
65
- "aria-describedby": "".concat(uid, "_describe")
66
- }, _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", {
67
- "role": 'status',
68
- "aria-live": 'polite'
69
- }), changedFormatNotice), /*#__PURE__*/React.createElement(ScreenReaderOnly, _ref2.cn("ScreenReaderOnly", {
70
- "aria-hidden": 'true',
71
- "id": "".concat(uid, "_describe")
72
- }), getI18nText('formatToggler')));
73
- }
74
- }]);
75
- return TimePickerFormat;
76
- }(Component);
77
- _defineProperty(TimePickerFormat, "enhance", [keyboardFocusEnhance(), uniqueIDEnhancement()]);
78
- export default TimePickerFormat;
79
- //# sourceMappingURL=PickerFormat.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PickerFormat.js","names":["React","Component","sstyled","Root","Box","keyboardFocusEnhance","ScreenReaderOnly","uniqueIDEnhancement","TimePickerFormat","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","changedFormatNotice","setTimeout","_this$asProps","asProps","meridiem","getI18nText","setState","_createClass","key","value","render","_ref","_ref2","SPickerFormat","_this$asProps2","Children","styles","uid","state","SPickerFormatText","createElement","Fragment","cn","_objectSpread","_assignProps","handleClick","origin"],"sources":["../../src/PickerFormat.jsx"],"sourcesContent":["import React from 'react';\nimport { Component, sstyled, Root } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { ScreenReaderOnly } from '@semcore/flex-box';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\n\nclass TimePickerFormat extends Component {\n static enhance = [keyboardFocusEnhance(), uniqueIDEnhancement()];\n\n state = {\n changedFormatNotice: '',\n };\n\n handleClick = () => {\n setTimeout(() => {\n const { meridiem, getI18nText } = this.asProps;\n this.setState({ changedFormatNotice: getI18nText('changedFormatNotice', { meridiem }) });\n }, 0);\n\n setTimeout(() => {\n this.setState({ changedFormatNotice: '' });\n }, 2000);\n };\n\n render() {\n const SPickerFormat = Root;\n const { Children, meridiem, styles, getI18nText, uid } = this.asProps;\n const { changedFormatNotice } = this.state;\n const SPickerFormatText = 'span';\n\n return sstyled(styles)(\n <>\n <SPickerFormat\n render={Box}\n type='button'\n tag='button'\n onClick={this.handleClick}\n aria-describedby={`${uid}_describe`}\n >\n {Children.origin ? <Children /> : <SPickerFormatText>{meridiem}</SPickerFormatText>}\n </SPickerFormat>\n <ScreenReaderOnly role={'status'} aria-live={'polite'}>\n {changedFormatNotice}\n </ScreenReaderOnly>\n <ScreenReaderOnly aria-hidden={'true'} id={`${uid}_describe`}>\n {getI18nText('formatToggler')}\n </ScreenReaderOnly>\n </>,\n );\n }\n}\n\nexport default TimePickerFormat;\n"],"mappings":"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"}
@@ -1 +0,0 @@
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","defaultPopperOffset","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","event","stopPropagation","numberValue","NaN","isNaN","setState","slice","submitChanges","dispatchOnChange","getI18nText","asProps","_getI18nText","field","_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","_ItemPicker","_super2","_this2","_len2","_key2","currentTarget","selectionStart","selectionEnd","preventDefault","focusNext","is12Hour","minutesInputRef","current","focus","componentDidUpdate","_prevProps","prevState","_ref3","defaultProps","ml","Minutes","_ItemPicker2","_super3","_this3","_len3","_key3","focusPrev","hoursInputRef","_ref4","mr"],"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\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), 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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"}