react-native-paper-dates 0.4.5 → 0.6.0

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 (249) hide show
  1. package/README.md +80 -16
  2. package/lib/commonjs/Date/AnimatedCrossView.js +9 -8
  3. package/lib/commonjs/Date/AnimatedCrossView.js.map +1 -1
  4. package/lib/commonjs/Date/AutoSizer.js +6 -5
  5. package/lib/commonjs/Date/AutoSizer.js.map +1 -1
  6. package/lib/commonjs/Date/Calendar.js +46 -39
  7. package/lib/commonjs/Date/Calendar.js.map +1 -1
  8. package/lib/commonjs/Date/CalendarEdit.js +35 -110
  9. package/lib/commonjs/Date/CalendarEdit.js.map +1 -1
  10. package/lib/commonjs/Date/CalendarHeader.js +19 -12
  11. package/lib/commonjs/Date/CalendarHeader.js.map +1 -1
  12. package/lib/commonjs/Date/DatePickerInput.js +93 -20
  13. package/lib/commonjs/Date/DatePickerInput.js.map +1 -1
  14. package/lib/commonjs/Date/DatePickerModal.js +4 -6
  15. package/lib/commonjs/Date/DatePickerModal.js.map +1 -1
  16. package/lib/commonjs/Date/DatePickerModalContent.js +9 -5
  17. package/lib/commonjs/Date/DatePickerModalContent.js.map +1 -1
  18. package/lib/commonjs/Date/DatePickerModalContentHeader.js +42 -34
  19. package/lib/commonjs/Date/DatePickerModalContentHeader.js.map +1 -1
  20. package/lib/commonjs/Date/DatePickerModalHeader.js +14 -6
  21. package/lib/commonjs/Date/DatePickerModalHeader.js.map +1 -1
  22. package/lib/commonjs/Date/DatePickerModalHeaderBackground.js +6 -5
  23. package/lib/commonjs/Date/DatePickerModalHeaderBackground.js.map +1 -1
  24. package/lib/commonjs/Date/DateRangeInput.js +23 -24
  25. package/lib/commonjs/Date/DateRangeInput.js.map +1 -1
  26. package/lib/commonjs/Date/Day.js +7 -3
  27. package/lib/commonjs/Date/Day.js.map +1 -1
  28. package/lib/commonjs/Date/DayName.js +6 -5
  29. package/lib/commonjs/Date/DayName.js.map +1 -1
  30. package/lib/commonjs/Date/DayNames.js +7 -6
  31. package/lib/commonjs/Date/DayNames.js.map +1 -1
  32. package/lib/commonjs/Date/DayRange.js +9 -8
  33. package/lib/commonjs/Date/DayRange.js.map +1 -1
  34. package/lib/commonjs/Date/Month.js +57 -49
  35. package/lib/commonjs/Date/Month.js.map +1 -1
  36. package/lib/commonjs/Date/Swiper.js +35 -29
  37. package/lib/commonjs/Date/Swiper.js.map +1 -1
  38. package/lib/commonjs/Date/Swiper.native.js +29 -23
  39. package/lib/commonjs/Date/Swiper.native.js.map +1 -1
  40. package/lib/commonjs/Date/SwiperUtils.js +7 -6
  41. package/lib/commonjs/Date/SwiperUtils.js.map +1 -1
  42. package/lib/commonjs/Date/YearPicker.js +28 -20
  43. package/lib/commonjs/Date/YearPicker.js.map +1 -1
  44. package/lib/commonjs/Date/dateUtils.js +107 -38
  45. package/lib/commonjs/Date/dateUtils.js.map +1 -1
  46. package/lib/commonjs/Date/inputUtils.js +84 -0
  47. package/lib/commonjs/Date/inputUtils.js.map +1 -0
  48. package/lib/commonjs/TextInputMask.js +11 -10
  49. package/lib/commonjs/TextInputMask.js.map +1 -1
  50. package/lib/commonjs/Time/AmPmSwitcher.js +37 -19
  51. package/lib/commonjs/Time/AmPmSwitcher.js.map +1 -1
  52. package/lib/commonjs/Time/AnalogClock.js +28 -26
  53. package/lib/commonjs/Time/AnalogClock.js.map +1 -1
  54. package/lib/commonjs/Time/AnalogClockHours.js +18 -12
  55. package/lib/commonjs/Time/AnalogClockHours.js.map +1 -1
  56. package/lib/commonjs/Time/AnalogClockMinutes.js +9 -8
  57. package/lib/commonjs/Time/AnalogClockMinutes.js.map +1 -1
  58. package/lib/commonjs/Time/AnimatedClockSwitcher.js +8 -7
  59. package/lib/commonjs/Time/AnimatedClockSwitcher.js.map +1 -1
  60. package/lib/commonjs/Time/TimeInput.js +16 -12
  61. package/lib/commonjs/Time/TimeInput.js.map +1 -1
  62. package/lib/commonjs/Time/TimeInputs.js +12 -11
  63. package/lib/commonjs/Time/TimeInputs.js.map +1 -1
  64. package/lib/commonjs/Time/TimePicker.js +39 -17
  65. package/lib/commonjs/Time/TimePicker.js.map +1 -1
  66. package/lib/commonjs/Time/TimePickerModal.js +19 -15
  67. package/lib/commonjs/Time/TimePickerModal.js.map +1 -1
  68. package/lib/commonjs/Time/timeUtils.js +17 -9
  69. package/lib/commonjs/Time/timeUtils.js.map +1 -1
  70. package/lib/commonjs/index.js +66 -5
  71. package/lib/commonjs/index.js.map +1 -1
  72. package/lib/commonjs/translations/en.js +20 -0
  73. package/lib/commonjs/translations/en.js.map +1 -0
  74. package/lib/commonjs/translations/enGB.js +20 -0
  75. package/lib/commonjs/translations/enGB.js.map +1 -0
  76. package/lib/commonjs/translations/nl.js +20 -0
  77. package/lib/commonjs/translations/nl.js.map +1 -0
  78. package/lib/commonjs/translations/pl.js +20 -0
  79. package/lib/commonjs/translations/pl.js.map +1 -0
  80. package/lib/commonjs/translations/utils.js +31 -0
  81. package/lib/commonjs/translations/utils.js.map +1 -0
  82. package/lib/commonjs/utils.js +19 -9
  83. package/lib/commonjs/utils.js.map +1 -1
  84. package/lib/module/Date/AnimatedCrossView.js +7 -6
  85. package/lib/module/Date/AnimatedCrossView.js.map +1 -1
  86. package/lib/module/Date/AutoSizer.js +4 -3
  87. package/lib/module/Date/AutoSizer.js.map +1 -1
  88. package/lib/module/Date/Calendar.js +46 -39
  89. package/lib/module/Date/Calendar.js.map +1 -1
  90. package/lib/module/Date/CalendarEdit.js +31 -103
  91. package/lib/module/Date/CalendarEdit.js.map +1 -1
  92. package/lib/module/Date/CalendarHeader.js +16 -9
  93. package/lib/module/Date/CalendarHeader.js.map +1 -1
  94. package/lib/module/Date/DatePickerInput.js +88 -18
  95. package/lib/module/Date/DatePickerInput.js.map +1 -1
  96. package/lib/module/Date/DatePickerModal.js +3 -5
  97. package/lib/module/Date/DatePickerModal.js.map +1 -1
  98. package/lib/module/Date/DatePickerModalContent.js +7 -3
  99. package/lib/module/Date/DatePickerModalContent.js.map +1 -1
  100. package/lib/module/Date/DatePickerModalContentHeader.js +37 -30
  101. package/lib/module/Date/DatePickerModalContentHeader.js.map +1 -1
  102. package/lib/module/Date/DatePickerModalHeader.js +11 -4
  103. package/lib/module/Date/DatePickerModalHeader.js.map +1 -1
  104. package/lib/module/Date/DatePickerModalHeaderBackground.js +4 -3
  105. package/lib/module/Date/DatePickerModalHeaderBackground.js.map +1 -1
  106. package/lib/module/Date/DateRangeInput.js +22 -22
  107. package/lib/module/Date/DateRangeInput.js.map +1 -1
  108. package/lib/module/Date/Day.js +5 -1
  109. package/lib/module/Date/Day.js.map +1 -1
  110. package/lib/module/Date/DayName.js +4 -3
  111. package/lib/module/Date/DayName.js.map +1 -1
  112. package/lib/module/Date/DayNames.js +5 -4
  113. package/lib/module/Date/DayNames.js.map +1 -1
  114. package/lib/module/Date/DayRange.js +7 -6
  115. package/lib/module/Date/DayRange.js.map +1 -1
  116. package/lib/module/Date/Month.js +52 -45
  117. package/lib/module/Date/Month.js.map +1 -1
  118. package/lib/module/Date/Swiper.js +32 -26
  119. package/lib/module/Date/Swiper.js.map +1 -1
  120. package/lib/module/Date/Swiper.native.js +27 -21
  121. package/lib/module/Date/Swiper.native.js.map +1 -1
  122. package/lib/module/Date/SwiperUtils.js +5 -4
  123. package/lib/module/Date/SwiperUtils.js.map +1 -1
  124. package/lib/module/Date/YearPicker.js +26 -18
  125. package/lib/module/Date/YearPicker.js.map +1 -1
  126. package/lib/module/Date/dateUtils.js +79 -30
  127. package/lib/module/Date/dateUtils.js.map +1 -1
  128. package/lib/module/Date/inputUtils.js +70 -0
  129. package/lib/module/Date/inputUtils.js.map +1 -0
  130. package/lib/module/TextInputMask.js +9 -8
  131. package/lib/module/TextInputMask.js.map +1 -1
  132. package/lib/module/Time/AmPmSwitcher.js +35 -18
  133. package/lib/module/Time/AmPmSwitcher.js.map +1 -1
  134. package/lib/module/Time/AnalogClock.js +20 -17
  135. package/lib/module/Time/AnalogClock.js.map +1 -1
  136. package/lib/module/Time/AnalogClockHours.js +15 -10
  137. package/lib/module/Time/AnalogClockHours.js.map +1 -1
  138. package/lib/module/Time/AnalogClockMinutes.js +6 -5
  139. package/lib/module/Time/AnalogClockMinutes.js.map +1 -1
  140. package/lib/module/Time/AnimatedClockSwitcher.js +6 -5
  141. package/lib/module/Time/AnimatedClockSwitcher.js.map +1 -1
  142. package/lib/module/Time/TimeInput.js +14 -10
  143. package/lib/module/Time/TimeInput.js.map +1 -1
  144. package/lib/module/Time/TimeInputs.js +10 -9
  145. package/lib/module/Time/TimeInputs.js.map +1 -1
  146. package/lib/module/Time/TimePicker.js +34 -13
  147. package/lib/module/Time/TimePicker.js.map +1 -1
  148. package/lib/module/Time/TimePickerModal.js +17 -13
  149. package/lib/module/Time/TimePickerModal.js.map +1 -1
  150. package/lib/module/Time/timeUtils.js +8 -2
  151. package/lib/module/Time/timeUtils.js.map +1 -1
  152. package/lib/module/index.js +6 -0
  153. package/lib/module/index.js.map +1 -1
  154. package/lib/module/translations/en.js +13 -0
  155. package/lib/module/translations/en.js.map +1 -0
  156. package/lib/module/translations/enGB.js +13 -0
  157. package/lib/module/translations/enGB.js.map +1 -0
  158. package/lib/module/translations/nl.js +13 -0
  159. package/lib/module/translations/nl.js.map +1 -0
  160. package/lib/module/translations/pl.js +13 -0
  161. package/lib/module/translations/pl.js.map +1 -0
  162. package/lib/module/translations/utils.js +22 -0
  163. package/lib/module/translations/utils.js.map +1 -0
  164. package/lib/module/utils.js +11 -5
  165. package/lib/module/utils.js.map +1 -1
  166. package/lib/typescript/{src/Date → Date}/AnimatedCrossView.d.ts +0 -0
  167. package/lib/typescript/{src/Date → Date}/AutoSizer.d.ts +0 -0
  168. package/lib/typescript/{src/Date → Date}/Calendar.d.ts +5 -3
  169. package/lib/typescript/{src/Date → Date}/CalendarEdit.d.ts +4 -3
  170. package/lib/typescript/{src/Date → Date}/CalendarHeader.d.ts +1 -1
  171. package/lib/typescript/Date/DatePickerInput.d.ts +18 -0
  172. package/lib/typescript/{src/Date → Date}/DatePickerModal.d.ts +0 -0
  173. package/lib/typescript/{src/Date → Date}/DatePickerModalContent.d.ts +2 -0
  174. package/lib/typescript/{src/Date → Date}/DatePickerModalContentHeader.d.ts +4 -4
  175. package/lib/typescript/{src/Date → Date}/DatePickerModalHeader.d.ts +1 -0
  176. package/lib/typescript/{src/Date → Date}/DatePickerModalHeaderBackground.d.ts +0 -0
  177. package/lib/typescript/Date/DateRangeInput.d.ts +3 -0
  178. package/lib/typescript/{src/Date → Date}/Day.d.ts +0 -0
  179. package/lib/typescript/{src/Date → Date}/DayName.d.ts +0 -0
  180. package/lib/typescript/{src/Date → Date}/DayNames.d.ts +0 -0
  181. package/lib/typescript/{src/Date → Date}/DayRange.d.ts +0 -0
  182. package/lib/typescript/{src/Date → Date}/Month.d.ts +0 -0
  183. package/lib/typescript/{src/Date → Date}/Swiper.d.ts +0 -0
  184. package/lib/typescript/{src/Date → Date}/Swiper.native.d.ts +0 -0
  185. package/lib/typescript/{src/Date → Date}/SwiperUtils.d.ts +1 -1
  186. package/lib/typescript/{src/Date → Date}/Week.d.ts +0 -0
  187. package/lib/typescript/{src/Date → Date}/YearPicker.d.ts +0 -0
  188. package/lib/typescript/{src/Date → Date}/dateUtils.d.ts +15 -0
  189. package/lib/typescript/{src/Date → Date}/dateUtils.test.d.ts +0 -0
  190. package/lib/typescript/Date/inputUtils.d.ts +14 -0
  191. package/lib/typescript/TextInputMask.d.ts +11 -0
  192. package/lib/typescript/Time/AmPmSwitcher.d.ts +4 -0
  193. package/lib/typescript/{src/Time → Time}/AnalogClock.d.ts +1 -2
  194. package/lib/typescript/{src/Time → Time}/AnalogClockHours.d.ts +0 -0
  195. package/lib/typescript/{src/Time → Time}/AnalogClockMinutes.d.ts +0 -0
  196. package/lib/typescript/{src/Time → Time}/AnimatedClockSwitcher.d.ts +0 -0
  197. package/lib/typescript/{src/Time → Time}/TimeInput.d.ts +0 -0
  198. package/lib/typescript/{src/Time → Time}/TimeInputs.d.ts +1 -1
  199. package/lib/typescript/{src/Time → Time}/TimePicker.d.ts +4 -0
  200. package/lib/typescript/{src/Time → Time}/TimePickerModal.d.ts +1 -1
  201. package/lib/typescript/{src/Time → Time}/timeUtils.d.ts +1 -0
  202. package/lib/typescript/index.d.ts +13 -0
  203. package/lib/typescript/translations/en.d.ts +3 -0
  204. package/lib/typescript/translations/enGB.d.ts +3 -0
  205. package/lib/typescript/translations/nl.d.ts +3 -0
  206. package/lib/typescript/translations/pl.d.ts +3 -0
  207. package/lib/typescript/translations/utils.d.ts +13 -0
  208. package/lib/typescript/utils.d.ts +58 -0
  209. package/package.json +39 -31
  210. package/src/.DS_Store +0 -0
  211. package/src/Date/Calendar.tsx +14 -13
  212. package/src/Date/CalendarEdit.tsx +21 -120
  213. package/src/Date/CalendarHeader.tsx +15 -3
  214. package/src/Date/DatePickerInput.tsx +103 -25
  215. package/src/Date/DatePickerModal.tsx +3 -8
  216. package/src/Date/DatePickerModalContent.tsx +6 -0
  217. package/src/Date/DatePickerModalContentHeader.tsx +21 -12
  218. package/src/Date/DatePickerModalHeader.tsx +13 -2
  219. package/src/Date/DateRangeInput.tsx +26 -17
  220. package/src/Date/Day.tsx +4 -0
  221. package/src/Date/Month.tsx +18 -44
  222. package/src/Date/Swiper.tsx +1 -0
  223. package/src/Date/SwiperUtils.ts +1 -1
  224. package/src/Date/YearPicker.tsx +4 -1
  225. package/src/Date/dateUtils.tsx +71 -10
  226. package/src/Date/inputUtils.ts +94 -0
  227. package/src/TextInputMask.tsx +10 -3
  228. package/src/Time/AmPmSwitcher.tsx +20 -11
  229. package/src/Time/AnalogClock.tsx +10 -18
  230. package/src/Time/AnalogClockHours.tsx +15 -6
  231. package/src/Time/AnalogClockMinutes.tsx +5 -2
  232. package/src/Time/TimeInput.tsx +3 -0
  233. package/src/Time/TimeInputs.tsx +1 -5
  234. package/src/Time/TimePicker.tsx +46 -23
  235. package/src/Time/TimePickerModal.tsx +4 -1
  236. package/src/Time/timeUtils.ts +7 -1
  237. package/src/index.tsx +7 -0
  238. package/src/translations/en.ts +15 -0
  239. package/src/translations/enGB.ts +15 -0
  240. package/src/translations/nl.ts +15 -0
  241. package/src/translations/pl.ts +15 -0
  242. package/src/translations/utils.ts +42 -0
  243. package/src/utils.ts +13 -5
  244. package/lib/typescript/src/Date/DatePickerInput.d.ts +0 -1
  245. package/lib/typescript/src/Date/DateRangeInput.d.ts +0 -1
  246. package/lib/typescript/src/TextInputMask.d.ts +0 -3
  247. package/lib/typescript/src/Time/AmPmSwitcher.d.ts +0 -4
  248. package/lib/typescript/src/index.d.ts +0 -6
  249. package/lib/typescript/src/utils.d.ts +0 -7
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["inputUtils.ts"],"names":["useDateInput","locale","value","validRange","inputMode","onChange","isDisabled","isWithinValidRange","validStart","validEnd","error","setError","React","useState","formatter","inputFormat","formattedValue","format","onChangeText","date","dayIndex","indexOf","monthIndex","yearIndex","day","Number","slice","year","month","isNaN","finalDate","Date","errors","filter","n","join"],"mappings":"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","sourcesContent":["import { useInputFormat, useInputFormatter, useRangeChecker } from './dateUtils'\nimport * as React from 'react'\nimport type { ValidRangeType } from './Calendar'\nimport { getTranslation } from 'react-native-paper-dates'\n\nexport default function useDateInput({\n locale,\n value,\n validRange,\n inputMode,\n onChange,\n}: {\n onChange: (d: Date) => void\n locale: undefined | string\n value: Date | undefined\n validRange: ValidRangeType | undefined\n inputMode: 'start' | 'end'\n}) {\n const { isDisabled, isWithinValidRange, validStart, validEnd } =\n useRangeChecker(validRange)\n const [error, setError] = React.useState<null | string>(null)\n const formatter = useInputFormatter({ locale })\n const inputFormat = useInputFormat({ formatter })\n const formattedValue = formatter.format(value)\n const onChangeText = (date: string) => {\n const dayIndex = inputFormat.indexOf('DD')\n const monthIndex = inputFormat.indexOf('MM')\n const yearIndex = inputFormat.indexOf('YYYY')\n\n const day = Number(date.slice(dayIndex, dayIndex + 2))\n const year = Number(date.slice(yearIndex, yearIndex + 4))\n const month = Number(date.slice(monthIndex, monthIndex + 2))\n\n if (Number.isNaN(day) || Number.isNaN(year) || Number.isNaN(month)) {\n setError(\n getTranslation(\n locale,\n 'notAccordingToDateFormat',\n () => 'notAccordingToDateFormat'\n )(inputFormat)\n )\n return\n }\n\n const finalDate =\n inputMode === 'end'\n ? new Date(year, month - 1, day, 23, 59, 59)\n : new Date(year, month - 1, day)\n\n if (isDisabled(finalDate)) {\n setError(getTranslation(locale, 'dateIsDisabled'))\n return\n }\n if (!isWithinValidRange(finalDate)) {\n let errors =\n validStart && validEnd\n ? [\n `${getTranslation(locale, 'mustBeBetween')} ${formatter.format(\n validStart\n )} - ${formatter.format(validEnd)}`,\n ]\n : [\n validStart\n ? `${getTranslation(\n locale,\n 'mustBeHigherThan'\n )} ${formatter.format(validStart)}`\n : '',\n validEnd\n ? `${getTranslation(\n locale,\n 'mustBeLowerThan'\n )} ${formatter.format(validEnd)}`\n : '',\n ]\n setError(errors.filter((n) => n).join(' '))\n return\n }\n\n setError(null)\n if (inputMode === 'end') {\n onChange(finalDate)\n } else {\n onChange(finalDate)\n }\n }\n return {\n onChange,\n error,\n formattedValue,\n onChangeText,\n inputFormat,\n }\n}\n"]}
@@ -9,9 +9,9 @@ var React = _interopRequireWildcard(require("react"));
9
9
 
10
10
  var _reactNativePaper = require("react-native-paper");
11
11
 
12
- function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
12
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
13
 
14
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
15
15
 
16
16
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
17
17
 
@@ -67,13 +67,14 @@ function enhanceTextWithMask(text, mask, previousValue) {
67
67
  return finalString.join(splitCharacter);
68
68
  }
69
69
 
70
- function TextInputWithMask({
71
- onChangeText,
72
- value,
73
- mask,
74
- ...rest
75
- }, ref) {
76
- const [controlledValue, setControlledValue] = React.useState(value);
70
+ function TextInputWithMask(_ref, ref) {
71
+ let {
72
+ onChangeText,
73
+ value,
74
+ mask,
75
+ ...rest
76
+ } = _ref;
77
+ const [controlledValue, setControlledValue] = React.useState(value || '');
77
78
 
78
79
  const onInnerChange = text => {
79
80
  const enhancedText = enhanceTextWithMask(text, mask, controlledValue);
@@ -85,7 +86,7 @@ function TextInputWithMask({
85
86
  };
86
87
 
87
88
  React.useEffect(() => {
88
- setControlledValue(value);
89
+ setControlledValue(value || '');
89
90
  }, [value]);
90
91
  return /*#__PURE__*/React.createElement(_reactNativePaper.TextInput, _extends({
91
92
  ref: ref
@@ -1 +1 @@
1
- {"version":3,"sources":["TextInputMask.tsx"],"names":["splitCharacters","detectCharacter","mask","c","find","ch","includes","enhanceTextWithMask","text","previousValue","isBackSpace","length","splitCharacter","maskParts","split","textParts","finalString","maskPartIndex","partString","maskPart","textPart","maskDigitIndex","currentCharacter","undefined","character","push","join","lastPart","lastMaskPart","TextInputWithMask","onChangeText","value","rest","ref","controlledValue","setControlledValue","React","useState","onInnerChange","enhancedText","useEffect","forwardRef"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { TextInput } from 'react-native-paper'\n\nconst splitCharacters = ['-', '/', '.', '年', ' ']\nfunction detectCharacter(mask: string): string {\n const c = splitCharacters.find((ch) => mask.includes(ch))\n return c || ''\n}\n\nfunction enhanceTextWithMask(\n text: string,\n mask: string,\n previousValue: string\n): string {\n const isBackSpace = previousValue.length > text.length\n const splitCharacter = detectCharacter(mask)\n\n const maskParts = mask.split(splitCharacter)\n const textParts = text.split(splitCharacter)\n\n let finalString: string[] = []\n for (let maskPartIndex = 0; maskPartIndex < mask.length; maskPartIndex++) {\n let partString: string[] = []\n\n const maskPart = maskParts[maskPartIndex]\n const textPart = textParts[maskPartIndex]\n if (!textPart) {\n continue\n }\n\n for (\n let maskDigitIndex = 0;\n maskDigitIndex < maskPart.length;\n maskDigitIndex++\n ) {\n const currentCharacter = textPart[maskDigitIndex]\n\n if (isBackSpace && currentCharacter === undefined) {\n continue\n }\n\n const character = textPart[maskDigitIndex]\n\n if (character !== undefined) {\n partString.push(character)\n }\n }\n\n finalString.push(partString.join(''))\n }\n\n const lastPart = finalString[finalString.length - 1]\n const lastMaskPart = maskParts[finalString.length - 1]\n if (\n // if mask is completed\n finalString.length !== maskParts.length &&\n // or ...\n lastPart &&\n lastMaskPart &&\n lastPart.length === lastMaskPart.length\n ) {\n return (\n finalString.join(splitCharacter) + (isBackSpace ? '' : splitCharacter)\n )\n }\n return finalString.join(splitCharacter)\n}\n\nfunction TextInputWithMask(\n { onChangeText, value, mask, ...rest }: any,\n ref: any\n) {\n const [controlledValue, setControlledValue] = React.useState<string>(value)\n\n const onInnerChange = (text: string) => {\n const enhancedText = enhanceTextWithMask(text, mask, controlledValue)\n setControlledValue(enhancedText)\n\n if (text.length === mask.length) {\n onChangeText && onChangeText(text)\n }\n }\n\n React.useEffect(() => {\n setControlledValue(value)\n }, [value])\n\n return (\n <TextInput\n ref={ref}\n {...rest}\n value={controlledValue}\n onChangeText={onInnerChange}\n />\n )\n}\n\nexport default React.forwardRef(TextInputWithMask)\n"]}
1
+ {"version":3,"sources":["TextInputMask.tsx"],"names":["splitCharacters","detectCharacter","mask","c","find","ch","includes","enhanceTextWithMask","text","previousValue","isBackSpace","length","splitCharacter","maskParts","split","textParts","finalString","maskPartIndex","partString","maskPart","textPart","maskDigitIndex","currentCharacter","undefined","character","push","join","lastPart","lastMaskPart","TextInputWithMask","ref","onChangeText","value","rest","controlledValue","setControlledValue","React","useState","onInnerChange","enhancedText","useEffect","forwardRef"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { TextInput } from 'react-native-paper'\n\nconst splitCharacters = ['-', '/', '.', '年', ' ']\nfunction detectCharacter(mask: string): string {\n const c = splitCharacters.find((ch) => mask.includes(ch))\n return c || ''\n}\n\nfunction enhanceTextWithMask(\n text: string,\n mask: string,\n previousValue: string\n): string {\n const isBackSpace = previousValue.length > text.length\n const splitCharacter = detectCharacter(mask)\n\n const maskParts = mask.split(splitCharacter)\n const textParts = text.split(splitCharacter)\n\n let finalString: string[] = []\n for (let maskPartIndex = 0; maskPartIndex < mask.length; maskPartIndex++) {\n let partString: string[] = []\n\n const maskPart = maskParts[maskPartIndex]\n const textPart = textParts[maskPartIndex]\n if (!textPart) {\n continue\n }\n\n for (\n let maskDigitIndex = 0;\n maskDigitIndex < maskPart.length;\n maskDigitIndex++\n ) {\n const currentCharacter = textPart[maskDigitIndex]\n\n if (isBackSpace && currentCharacter === undefined) {\n continue\n }\n\n const character = textPart[maskDigitIndex]\n\n if (character !== undefined) {\n partString.push(character)\n }\n }\n\n finalString.push(partString.join(''))\n }\n\n const lastPart = finalString[finalString.length - 1]\n const lastMaskPart = maskParts[finalString.length - 1]\n if (\n // if mask is completed\n finalString.length !== maskParts.length &&\n // or ...\n lastPart &&\n lastMaskPart &&\n lastPart.length === lastMaskPart.length\n ) {\n return (\n finalString.join(splitCharacter) + (isBackSpace ? '' : splitCharacter)\n )\n }\n return finalString.join(splitCharacter)\n}\n\nfunction TextInputWithMask(\n {\n onChangeText,\n value,\n mask,\n ...rest\n }: React.ComponentProps<typeof TextInput> & { mask: string },\n ref: any\n) {\n const [controlledValue, setControlledValue] = React.useState<string>(\n value || ''\n )\n\n const onInnerChange = (text: string) => {\n const enhancedText = enhanceTextWithMask(text, mask, controlledValue)\n setControlledValue(enhancedText)\n\n if (text.length === mask.length) {\n onChangeText && onChangeText(text)\n }\n }\n\n React.useEffect(() => {\n setControlledValue(value || '')\n }, [value])\n\n return (\n <TextInput\n ref={ref}\n {...rest}\n value={controlledValue}\n onChangeText={onInnerChange}\n />\n )\n}\n\nexport default React.forwardRef(TextInputWithMask)\n"]}
@@ -15,16 +15,23 @@ var _color = _interopRequireDefault(require("color"));
15
15
 
16
16
  var _timeUtils = require("./timeUtils");
17
17
 
18
+ var _TimePicker = require("./TimePicker");
19
+
18
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
21
 
20
- function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
22
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
23
 
22
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
24
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
25
 
24
- function AmPmSwitcher({
25
- hours,
26
- onChange
27
- }) {
26
+ function AmPmSwitcher(_ref) {
27
+ let {
28
+ onChange,
29
+ hours
30
+ } = _ref;
31
+ const {
32
+ setMode,
33
+ mode
34
+ } = React.useContext(_TimePicker.DisplayModeContext);
28
35
  const theme = (0, _reactNativePaper.useTheme)();
29
36
  const backgroundColor = (0, React.useMemo)(() => {
30
37
  if (theme.dark) {
@@ -33,9 +40,7 @@ function AmPmSwitcher({
33
40
 
34
41
  return (0, _color.default)(theme.colors.surface).darken(0.1).hex();
35
42
  }, [theme]);
36
- const hourType = (0, _timeUtils.getHourType)(hours);
37
- const isAM = hourType === _timeUtils.hourTypes.am;
38
- const isPM = hourType === _timeUtils.hourTypes.pm;
43
+ const isAM = mode === 'AM';
39
44
  return /*#__PURE__*/React.createElement(_reactNative.View, {
40
45
  style: [styles.root, {
41
46
  borderColor: backgroundColor,
@@ -43,7 +48,13 @@ function AmPmSwitcher({
43
48
  }]
44
49
  }, /*#__PURE__*/React.createElement(SwitchButton, {
45
50
  label: "AM",
46
- onPress: isAM ? undefined : () => onChange(hours - 12),
51
+ onPress: () => {
52
+ setMode('AM');
53
+
54
+ if (hours - 12 >= 0) {
55
+ onChange(hours - 12);
56
+ }
57
+ },
47
58
  selected: isAM,
48
59
  disabled: isAM
49
60
  }), /*#__PURE__*/React.createElement(_reactNative.View, {
@@ -52,18 +63,25 @@ function AmPmSwitcher({
52
63
  }]
53
64
  }), /*#__PURE__*/React.createElement(SwitchButton, {
54
65
  label: "PM",
55
- onPress: isPM ? undefined : () => onChange(hours + 12),
56
- selected: isPM,
57
- disabled: isPM
66
+ onPress: () => {
67
+ setMode('PM');
68
+
69
+ if (hours + 12 <= 24) {
70
+ onChange(hours + 12);
71
+ }
72
+ },
73
+ selected: !isAM,
74
+ disabled: !isAM
58
75
  }));
59
76
  }
60
77
 
61
- function SwitchButton({
62
- label,
63
- onPress,
64
- selected,
65
- disabled
66
- }) {
78
+ function SwitchButton(_ref2) {
79
+ let {
80
+ label,
81
+ onPress,
82
+ selected,
83
+ disabled
84
+ } = _ref2;
67
85
  const theme = (0, _reactNativePaper.useTheme)();
68
86
  const {
69
87
  backgroundColor,
@@ -1 +1 @@
1
- {"version":3,"sources":["AmPmSwitcher.tsx"],"names":["AmPmSwitcher","hours","onChange","theme","backgroundColor","dark","colors","surface","lighten","hex","darken","hourType","isAM","hourTypes","am","isPM","pm","styles","root","borderColor","borderRadius","roundness","undefined","switchSeparator","SwitchButton","label","onPress","selected","disabled","color","switchButton","switchButtonInner","fonts","medium","StyleSheet","create","width","height","borderWidth","overflow","flex","alignItems","justifyContent"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { View, StyleSheet } from 'react-native'\nimport { Text, TouchableRipple, useTheme } from 'react-native-paper'\nimport { useMemo } from 'react'\nimport Color from 'color'\nimport { getHourType, hourTypes, useSwitchColors } from './timeUtils'\n\nexport default function AmPmSwitcher({\n hours,\n onChange,\n}: {\n hours: number\n onChange: (hours: number) => any\n}) {\n const theme = useTheme()\n const backgroundColor = useMemo<string>(() => {\n if (theme.dark) {\n return Color(theme.colors.surface).lighten(1.2).hex()\n }\n return Color(theme.colors.surface).darken(0.1).hex()\n }, [theme])\n\n const hourType = getHourType(hours)\n const isAM = hourType === hourTypes.am\n const isPM = hourType === hourTypes.pm\n\n return (\n <View\n style={[\n styles.root,\n {\n borderColor: backgroundColor,\n borderRadius: theme.roundness,\n },\n ]}\n >\n <SwitchButton\n label=\"AM\"\n onPress={isAM ? undefined : () => onChange(hours - 12)}\n selected={isAM}\n disabled={isAM}\n />\n <View style={[styles.switchSeparator, { backgroundColor }]} />\n <SwitchButton\n label=\"PM\"\n onPress={isPM ? undefined : () => onChange(hours + 12)}\n selected={isPM}\n disabled={isPM}\n />\n </View>\n )\n}\n\nfunction SwitchButton({\n label,\n onPress,\n selected,\n disabled,\n}: {\n label: string\n onPress: (() => any) | undefined\n selected: boolean\n disabled: boolean\n}) {\n const theme = useTheme()\n const { backgroundColor, color } = useSwitchColors(selected)\n\n return (\n <TouchableRipple\n onPress={onPress}\n style={styles.switchButton}\n accessibilityLabel={label}\n // @ts-ignore old React Native versions\n accessibilityTraits={disabled ? ['button', 'disabled'] : 'button'}\n // @ts-ignore old React Native versions\n accessibilityComponentType=\"button\"\n accessibilityRole=\"button\"\n accessibilityState={{ disabled }}\n disabled={disabled}\n >\n <View style={[styles.switchButtonInner, { backgroundColor }]}>\n <Text\n selectable={false}\n style={[\n {\n ...theme.fonts.medium,\n color: color,\n },\n ]}\n >\n {label}\n </Text>\n </View>\n </TouchableRipple>\n )\n}\n\nconst styles = StyleSheet.create({\n root: {\n width: 50,\n height: 80,\n borderWidth: 1,\n overflow: 'hidden',\n },\n switchSeparator: {\n height: 1,\n width: 48,\n },\n switchButton: {\n flex: 1,\n },\n switchButtonInner: {\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n },\n})\n"]}
1
+ {"version":3,"sources":["AmPmSwitcher.tsx"],"names":["AmPmSwitcher","onChange","hours","setMode","mode","React","useContext","DisplayModeContext","theme","backgroundColor","dark","colors","surface","lighten","hex","darken","isAM","styles","root","borderColor","borderRadius","roundness","switchSeparator","SwitchButton","label","onPress","selected","disabled","color","switchButton","switchButtonInner","fonts","medium","StyleSheet","create","width","height","borderWidth","overflow","flex","alignItems","justifyContent"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { View, StyleSheet } from 'react-native'\nimport { Text, TouchableRipple, useTheme } from 'react-native-paper'\nimport { useMemo } from 'react'\nimport Color from 'color'\nimport { useSwitchColors } from './timeUtils'\nimport { DisplayModeContext } from './TimePicker'\n\nexport default function AmPmSwitcher({\n onChange,\n hours,\n}: {\n hours: number\n onChange: (newHours: number) => any\n}) {\n const { setMode, mode } = React.useContext(DisplayModeContext)\n const theme = useTheme()\n const backgroundColor = useMemo<string>(() => {\n if (theme.dark) {\n return Color(theme.colors.surface).lighten(1.2).hex()\n }\n return Color(theme.colors.surface).darken(0.1).hex()\n }, [theme])\n\n const isAM = mode === 'AM'\n return (\n <View\n style={[\n styles.root,\n {\n borderColor: backgroundColor,\n borderRadius: theme.roundness,\n },\n ]}\n >\n <SwitchButton\n label=\"AM\"\n onPress={() => {\n setMode('AM')\n if (hours - 12 >= 0) {\n onChange(hours - 12)\n }\n }}\n selected={isAM}\n disabled={isAM}\n />\n <View style={[styles.switchSeparator, { backgroundColor }]} />\n <SwitchButton\n label=\"PM\"\n onPress={() => {\n setMode('PM')\n if (hours + 12 <= 24) {\n onChange(hours + 12)\n }\n }}\n selected={!isAM}\n disabled={!isAM}\n />\n </View>\n )\n}\n\nfunction SwitchButton({\n label,\n onPress,\n selected,\n disabled,\n}: {\n label: string\n onPress: (() => any) | undefined\n selected: boolean\n disabled: boolean\n}) {\n const theme = useTheme()\n const { backgroundColor, color } = useSwitchColors(selected)\n\n return (\n <TouchableRipple\n onPress={onPress}\n style={styles.switchButton}\n accessibilityLabel={label}\n // @ts-ignore old React Native versions\n accessibilityTraits={disabled ? ['button', 'disabled'] : 'button'}\n // @ts-ignore old React Native versions\n accessibilityComponentType=\"button\"\n accessibilityRole=\"button\"\n accessibilityState={{ disabled }}\n disabled={disabled}\n >\n <View style={[styles.switchButtonInner, { backgroundColor }]}>\n <Text\n selectable={false}\n style={[\n {\n ...theme.fonts.medium,\n color: color,\n },\n ]}\n >\n {label}\n </Text>\n </View>\n </TouchableRipple>\n )\n}\n\nconst styles = StyleSheet.create({\n root: {\n width: 50,\n height: 80,\n borderWidth: 1,\n overflow: 'hidden',\n },\n switchSeparator: {\n height: 1,\n width: 48,\n },\n switchButton: {\n flex: 1,\n },\n switchButtonInner: {\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n },\n})\n"]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = exports.circleSize = void 0;
6
+ exports.default = void 0;
7
7
 
8
8
  var _color = _interopRequireDefault(require("color"));
9
9
 
@@ -23,26 +23,28 @@ var _AnimatedClockSwitcher = _interopRequireDefault(require("./AnimatedClockSwit
23
23
 
24
24
  var _AnalogClockMinutes = _interopRequireDefault(require("./AnalogClockMinutes"));
25
25
 
26
- function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
26
+ var _TimePicker = require("./TimePicker");
27
27
 
28
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
28
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
29
+
30
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
31
 
30
32
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
31
33
 
32
34
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
33
35
 
34
- // 250? when bigger?
35
- const circleSize = 215;
36
- exports.circleSize = circleSize;
37
-
38
- function AnalogClock({
39
- hours,
40
- minutes,
41
- focused,
42
- is24Hour,
43
- onChange
44
- }) {
45
- const theme = (0, _reactNativePaper.useTheme)(); // used to make pointer shorter if hours are selected and above 12
36
+ function AnalogClock(_ref) {
37
+ let {
38
+ hours,
39
+ minutes,
40
+ focused,
41
+ is24Hour,
42
+ onChange
43
+ } = _ref;
44
+ const theme = (0, _reactNativePaper.useTheme)();
45
+ const {
46
+ mode
47
+ } = React.useContext(_TimePicker.DisplayModeContext); // used to make pointer shorter if hours are selected and above 12
46
48
 
47
49
  const shortPointer = (hours === 0 || hours > 12) && is24Hour;
48
50
  const clockRef = React.useRef(null); // Hooks are nice, sometimes... :-)..
@@ -53,20 +55,20 @@ function AnalogClock({
53
55
  const minutesRef = (0, _utils.useLatest)(minutes);
54
56
  const focusedRef = (0, _utils.useLatest)(focused);
55
57
  const is24HourRef = (0, _utils.useLatest)(is24Hour);
58
+ const modeRef = (0, _utils.useLatest)(mode);
56
59
  const onPointerMove = React.useCallback((e, final) => {
57
60
  let x = e.nativeEvent.locationX;
58
61
  let y = e.nativeEvent.locationY;
59
- let angle = (0, _timeUtils.getAngle)(x, y, circleSize);
62
+ let angle = (0, _timeUtils.getAngle)(x, y, _timeUtils.circleSize);
60
63
 
61
64
  if (focusedRef.current === _timeUtils.clockTypes.hours) {
62
65
  let hours24 = is24HourRef.current;
63
66
  let previousHourType = (0, _timeUtils.getHourType)(hoursRef.current);
64
67
  let pickedHours = (0, _timeUtils.getHours)(angle, previousHourType);
65
- let hourTypeFromOffset = (0, _timeUtils.getHourTypeFromOffset)(x, y, circleSize);
66
- let hours24AndPM = hours24 && hourTypeFromOffset === _timeUtils.hourTypes.pm;
67
- let hours12AndPm = !hours24 && previousHourType === _timeUtils.hourTypes.pm; // TODO: check which mode is switched on am/pm
68
+ let hours12AndPm = !hours24 && modeRef.current === 'PM'; // Avoiding the "24h"
69
+ // Should be 12h for 12 hours and PM mode
68
70
 
69
- if (hours12AndPm || hours24AndPM) {
71
+ if ((hours12AndPm || hours24) && pickedHours + 12 < 24) {
70
72
  pickedHours += 12;
71
73
  }
72
74
 
@@ -91,7 +93,7 @@ function AnalogClock({
91
93
  });
92
94
  }
93
95
  }
94
- }, [focusedRef, is24HourRef, hoursRef, onChangeRef, minutesRef]);
96
+ }, [focusedRef, is24HourRef, hoursRef, onChangeRef, minutesRef, modeRef]);
95
97
  const panResponder = React.useRef(_reactNative.PanResponder.create({
96
98
  onPanResponderGrant: e => onPointerMove(e, false),
97
99
  onPanResponderMove: e => onPointerMove(e, false),
@@ -120,9 +122,9 @@ function AnalogClock({
120
122
  transform: [{
121
123
  rotate: -90 + pointerNumber * degreesPerNumber + 'deg'
122
124
  }, {
123
- translateX: circleSize / 4 - 4 - dynamicSize / 2
125
+ translateX: _timeUtils.circleSize / 4 - 4 - dynamicSize / 2
124
126
  }],
125
- width: circleSize / 2 - 4 - dynamicSize
127
+ width: _timeUtils.circleSize / 2 - 4 - dynamicSize
126
128
  }],
127
129
  pointerEvents: "none"
128
130
  }, /*#__PURE__*/React.createElement(_reactNative.View, {
@@ -150,12 +152,12 @@ function AnalogClock({
150
152
 
151
153
  const styles = _reactNative.StyleSheet.create({
152
154
  clock: {
153
- height: circleSize,
154
- width: circleSize,
155
+ height: _timeUtils.circleSize,
156
+ width: _timeUtils.circleSize,
155
157
  position: 'relative',
156
158
  justifyContent: 'center',
157
159
  alignItems: 'center',
158
- borderRadius: circleSize / 2
160
+ borderRadius: _timeUtils.circleSize / 2
159
161
  },
160
162
  middlePoint: {
161
163
  borderRadius: 4,
@@ -1 +1 @@
1
- {"version":3,"sources":["AnalogClock.tsx"],"names":["circleSize","AnalogClock","hours","minutes","focused","is24Hour","onChange","theme","shortPointer","clockRef","React","useRef","hoursRef","onChangeRef","minutesRef","focusedRef","is24HourRef","onPointerMove","useCallback","e","final","x","nativeEvent","locationX","y","locationY","angle","current","clockTypes","hours24","previousHourType","pickedHours","hourTypeFromOffset","hours24AndPM","hourTypes","pm","hours12AndPm","undefined","pickedMinutes","panResponder","PanResponder","create","onPanResponderGrant","onPanResponderMove","onPanResponderRelease","onStartShouldSetPanResponder","returnTrue","onStartShouldSetPanResponderCapture","onMoveShouldSetPanResponder","onMoveShouldSetPanResponderCapture","onPanResponderTerminationRequest","onShouldBlockNativeResponder","dynamicSize","pointerNumber","degreesPerNumber","panHandlers","styles","clock","backgroundColor","dark","colors","surface","lighten","hex","darken","line","primary","transform","rotate","translateX","width","endPoint","StyleSheet","absoluteFill","center","middlePoint","height","position","justifyContent","alignItems","borderRadius","right","bottom","marginBottom","memo"],"mappings":"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","sourcesContent":["import Color from 'color'\nimport {\n GestureResponderEvent,\n PanResponder,\n StyleSheet,\n View,\n} from 'react-native'\nimport { useTheme } from 'react-native-paper'\nimport {\n clockTypes,\n getAngle,\n getHours,\n getHourType,\n getHourTypeFromOffset,\n getMinutes,\n hourTypes,\n PossibleClockTypes,\n} from './timeUtils'\nimport * as React from 'react'\n\nimport { useLatest } from '../utils'\nimport AnalogClockHours from './AnalogClockHours'\n\nimport AnimatedClockSwitcher from './AnimatedClockSwitcher'\nimport AnalogClockMinutes from './AnalogClockMinutes'\n\n// 250? when bigger?\nexport const circleSize = 215\n\nfunction AnalogClock({\n hours,\n minutes,\n focused,\n is24Hour,\n onChange,\n}: {\n hours: number\n minutes: number\n focused: PossibleClockTypes\n is24Hour: boolean\n onChange: ({\n hours,\n minutes,\n focused,\n }: {\n hours: number\n minutes: number\n focused?: undefined | PossibleClockTypes\n }) => any\n}) {\n const theme = useTheme()\n\n // used to make pointer shorter if hours are selected and above 12\n const shortPointer = (hours === 0 || hours > 12) && is24Hour\n\n const clockRef = React.useRef<View | null>(null)\n\n // Hooks are nice, sometimes... :-)..\n // We need the latest values, since the onPointerMove uses a closure to the function\n const hoursRef = useLatest(hours)\n const onChangeRef = useLatest(onChange)\n const minutesRef = useLatest(minutes)\n const focusedRef = useLatest(focused)\n const is24HourRef = useLatest(is24Hour)\n\n const onPointerMove = React.useCallback(\n (e: GestureResponderEvent, final: boolean) => {\n let x = e.nativeEvent.locationX\n let y = e.nativeEvent.locationY\n\n let angle = getAngle(x, y, circleSize)\n\n if (focusedRef.current === clockTypes.hours) {\n let hours24 = is24HourRef.current\n let previousHourType = getHourType(hoursRef.current)\n let pickedHours = getHours(angle, previousHourType)\n\n let hourTypeFromOffset = getHourTypeFromOffset(x, y, circleSize)\n let hours24AndPM = hours24 && hourTypeFromOffset === hourTypes.pm\n let hours12AndPm = !hours24 && previousHourType === hourTypes.pm\n\n // TODO: check which mode is switched on am/pm\n if (hours12AndPm || hours24AndPM) {\n pickedHours += 12\n }\n\n if (pickedHours === 24) {\n pickedHours = 0\n }\n\n if (hoursRef.current !== pickedHours || final) {\n onChangeRef.current({\n hours: pickedHours,\n minutes: minutesRef.current,\n focused: final ? clockTypes.minutes : undefined,\n })\n }\n } else if (focusedRef.current === clockTypes.minutes) {\n let pickedMinutes = getMinutes(angle)\n if (minutesRef.current !== pickedMinutes) {\n onChangeRef.current({\n hours: hoursRef.current,\n minutes: pickedMinutes,\n })\n }\n }\n },\n [focusedRef, is24HourRef, hoursRef, onChangeRef, minutesRef]\n )\n\n const panResponder = React.useRef(\n PanResponder.create({\n onPanResponderGrant: (e) => onPointerMove(e, false),\n onPanResponderMove: (e) => onPointerMove(e, false),\n onPanResponderRelease: (e) => onPointerMove(e, true),\n\n onStartShouldSetPanResponder: returnTrue,\n onStartShouldSetPanResponderCapture: () => false,\n onMoveShouldSetPanResponder: returnTrue,\n onMoveShouldSetPanResponderCapture: returnTrue,\n onPanResponderTerminationRequest: returnTrue,\n onShouldBlockNativeResponder: returnTrue,\n })\n ).current\n\n const dynamicSize = focused === clockTypes.hours && shortPointer ? 33 : 0\n const pointerNumber = focused === clockTypes.hours ? hours : minutes\n const degreesPerNumber = focused === clockTypes.hours ? 30 : 6\n return (\n <View\n ref={clockRef}\n {...panResponder.panHandlers}\n style={[\n styles.clock,\n {\n backgroundColor: theme.dark\n ? Color(theme.colors.surface).lighten(1.2).hex()\n : Color(theme.colors.surface).darken(0.1).hex(),\n },\n ]}\n // @ts-ignore -> https://github.com/necolas/react-native-web/issues/506\n cursor={'pointer'}\n >\n <View\n style={[\n styles.line,\n {\n backgroundColor: theme.colors.primary,\n transform: [\n { rotate: -90 + pointerNumber * degreesPerNumber + 'deg' },\n {\n translateX: circleSize / 4 - 4 - dynamicSize / 2,\n },\n ],\n width: circleSize / 2 - 4 - dynamicSize,\n },\n ]}\n pointerEvents=\"none\"\n >\n <View\n style={[styles.endPoint, { backgroundColor: theme.colors.primary }]}\n />\n </View>\n <View\n style={[StyleSheet.absoluteFill, styles.center]}\n pointerEvents=\"none\"\n >\n <View\n style={[\n styles.middlePoint,\n {\n backgroundColor: theme.colors.primary,\n },\n ]}\n />\n </View>\n <AnimatedClockSwitcher\n focused={focused}\n hours={<AnalogClockHours is24Hour={is24Hour} hours={hours} />}\n minutes={<AnalogClockMinutes minutes={minutes} />}\n />\n </View>\n )\n}\n\nconst styles = StyleSheet.create({\n clock: {\n height: circleSize,\n width: circleSize,\n position: 'relative',\n justifyContent: 'center',\n alignItems: 'center',\n borderRadius: circleSize / 2,\n },\n middlePoint: {\n borderRadius: 4,\n height: 8,\n width: 8,\n },\n center: { justifyContent: 'center', alignItems: 'center' },\n endPoint: {\n borderRadius: 15,\n height: 30,\n width: 30,\n position: 'absolute',\n right: 0,\n bottom: -14,\n },\n line: {\n position: 'absolute',\n\n marginBottom: -1,\n height: 2,\n borderRadius: 4,\n },\n})\n\nfunction returnTrue() {\n return true\n}\n\nexport default React.memo(AnalogClock)\n"]}
1
+ {"version":3,"sources":["AnalogClock.tsx"],"names":["AnalogClock","hours","minutes","focused","is24Hour","onChange","theme","mode","React","useContext","DisplayModeContext","shortPointer","clockRef","useRef","hoursRef","onChangeRef","minutesRef","focusedRef","is24HourRef","modeRef","onPointerMove","useCallback","e","final","x","nativeEvent","locationX","y","locationY","angle","circleSize","current","clockTypes","hours24","previousHourType","pickedHours","hours12AndPm","undefined","pickedMinutes","panResponder","PanResponder","create","onPanResponderGrant","onPanResponderMove","onPanResponderRelease","onStartShouldSetPanResponder","returnTrue","onStartShouldSetPanResponderCapture","onMoveShouldSetPanResponder","onMoveShouldSetPanResponderCapture","onPanResponderTerminationRequest","onShouldBlockNativeResponder","dynamicSize","pointerNumber","degreesPerNumber","panHandlers","styles","clock","backgroundColor","dark","colors","surface","lighten","hex","darken","line","primary","transform","rotate","translateX","width","endPoint","StyleSheet","absoluteFill","center","middlePoint","height","position","justifyContent","alignItems","borderRadius","right","bottom","marginBottom","memo"],"mappings":"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","sourcesContent":["import Color from 'color'\nimport {\n GestureResponderEvent,\n PanResponder,\n StyleSheet,\n View,\n} from 'react-native'\nimport { useTheme } from 'react-native-paper'\nimport {\n circleSize,\n clockTypes,\n getAngle,\n getHours,\n getHourType,\n getMinutes,\n PossibleClockTypes,\n} from './timeUtils'\nimport * as React from 'react'\n\nimport { useLatest } from '../utils'\nimport AnalogClockHours from './AnalogClockHours'\n\nimport AnimatedClockSwitcher from './AnimatedClockSwitcher'\nimport AnalogClockMinutes from './AnalogClockMinutes'\nimport { DisplayModeContext } from './TimePicker'\n\nfunction AnalogClock({\n hours,\n minutes,\n focused,\n is24Hour,\n onChange,\n}: {\n hours: number\n minutes: number\n focused: PossibleClockTypes\n is24Hour: boolean\n onChange: (hoursMinutesAndFocused: {\n hours: number\n minutes: number\n focused?: undefined | PossibleClockTypes\n }) => any\n}) {\n const theme = useTheme()\n const { mode } = React.useContext(DisplayModeContext)\n // used to make pointer shorter if hours are selected and above 12\n const shortPointer = (hours === 0 || hours > 12) && is24Hour\n\n const clockRef = React.useRef<View | null>(null)\n\n // Hooks are nice, sometimes... :-)..\n // We need the latest values, since the onPointerMove uses a closure to the function\n const hoursRef = useLatest(hours)\n const onChangeRef = useLatest(onChange)\n const minutesRef = useLatest(minutes)\n const focusedRef = useLatest(focused)\n const is24HourRef = useLatest(is24Hour)\n const modeRef = useLatest(mode)\n\n const onPointerMove = React.useCallback(\n (e: GestureResponderEvent, final: boolean) => {\n let x = e.nativeEvent.locationX\n let y = e.nativeEvent.locationY\n\n let angle = getAngle(x, y, circleSize)\n\n if (focusedRef.current === clockTypes.hours) {\n let hours24 = is24HourRef.current\n let previousHourType = getHourType(hoursRef.current)\n let pickedHours = getHours(angle, previousHourType)\n\n let hours12AndPm = !hours24 && modeRef.current === 'PM'\n // Avoiding the \"24h\"\n // Should be 12h for 12 hours and PM mode\n if ((hours12AndPm || hours24) && pickedHours + 12 < 24) {\n pickedHours += 12\n }\n\n if (pickedHours === 24) {\n pickedHours = 0\n }\n\n if (hoursRef.current !== pickedHours || final) {\n onChangeRef.current({\n hours: pickedHours,\n minutes: minutesRef.current,\n focused: final ? clockTypes.minutes : undefined,\n })\n }\n } else if (focusedRef.current === clockTypes.minutes) {\n let pickedMinutes = getMinutes(angle)\n if (minutesRef.current !== pickedMinutes) {\n onChangeRef.current({\n hours: hoursRef.current,\n minutes: pickedMinutes,\n })\n }\n }\n },\n [focusedRef, is24HourRef, hoursRef, onChangeRef, minutesRef, modeRef]\n )\n\n const panResponder = React.useRef(\n PanResponder.create({\n onPanResponderGrant: (e) => onPointerMove(e, false),\n onPanResponderMove: (e) => onPointerMove(e, false),\n onPanResponderRelease: (e) => onPointerMove(e, true),\n\n onStartShouldSetPanResponder: returnTrue,\n onStartShouldSetPanResponderCapture: () => false,\n onMoveShouldSetPanResponder: returnTrue,\n onMoveShouldSetPanResponderCapture: returnTrue,\n onPanResponderTerminationRequest: returnTrue,\n onShouldBlockNativeResponder: returnTrue,\n })\n ).current\n\n const dynamicSize = focused === clockTypes.hours && shortPointer ? 33 : 0\n const pointerNumber = focused === clockTypes.hours ? hours : minutes\n const degreesPerNumber = focused === clockTypes.hours ? 30 : 6\n return (\n <View\n ref={clockRef}\n {...panResponder.panHandlers}\n style={[\n styles.clock,\n {\n backgroundColor: theme.dark\n ? Color(theme.colors.surface).lighten(1.2).hex()\n : Color(theme.colors.surface).darken(0.1).hex(),\n },\n ]}\n // @ts-ignore -> https://github.com/necolas/react-native-web/issues/506\n cursor={'pointer'}\n >\n <View\n style={[\n styles.line,\n {\n backgroundColor: theme.colors.primary,\n transform: [\n { rotate: -90 + pointerNumber * degreesPerNumber + 'deg' },\n {\n translateX: circleSize / 4 - 4 - dynamicSize / 2,\n },\n ],\n width: circleSize / 2 - 4 - dynamicSize,\n },\n ]}\n pointerEvents=\"none\"\n >\n <View\n style={[styles.endPoint, { backgroundColor: theme.colors.primary }]}\n />\n </View>\n <View\n style={[StyleSheet.absoluteFill, styles.center]}\n pointerEvents=\"none\"\n >\n <View\n style={[\n styles.middlePoint,\n {\n backgroundColor: theme.colors.primary,\n },\n ]}\n />\n </View>\n <AnimatedClockSwitcher\n focused={focused}\n hours={<AnalogClockHours is24Hour={is24Hour} hours={hours} />}\n minutes={<AnalogClockMinutes minutes={minutes} />}\n />\n </View>\n )\n}\n\nconst styles = StyleSheet.create({\n clock: {\n height: circleSize,\n width: circleSize,\n position: 'relative',\n justifyContent: 'center',\n alignItems: 'center',\n borderRadius: circleSize / 2,\n },\n middlePoint: {\n borderRadius: 4,\n height: 8,\n width: 8,\n },\n center: { justifyContent: 'center', alignItems: 'center' },\n endPoint: {\n borderRadius: 15,\n height: 30,\n width: 30,\n position: 'absolute',\n right: 0,\n bottom: -14,\n },\n line: {\n position: 'absolute',\n\n marginBottom: -1,\n height: 2,\n borderRadius: 4,\n },\n})\n\nfunction returnTrue() {\n return true\n}\n\nexport default React.memo(AnalogClock)\n"]}
@@ -11,20 +11,26 @@ var _reactNative = require("react-native");
11
11
 
12
12
  var _reactNativePaper = require("react-native-paper");
13
13
 
14
- var _AnalogClock = require("./AnalogClock");
14
+ var _timeUtils = require("./timeUtils");
15
15
 
16
16
  var _utils = require("../utils");
17
17
 
18
- function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
18
+ var _TimePicker = require("./TimePicker");
19
19
 
20
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
20
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
21
 
22
- function AnalogClockHours({
23
- is24Hour,
24
- hours
25
- }) {
26
- const outerRange = getHourNumbers(false, _AnalogClock.circleSize, 12);
27
- const innerRange = getHourNumbers(true, _AnalogClock.circleSize, 12);
22
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
+
24
+ function AnalogClockHours(_ref) {
25
+ let {
26
+ is24Hour,
27
+ hours
28
+ } = _ref;
29
+ const {
30
+ mode
31
+ } = React.useContext(_TimePicker.DisplayModeContext);
32
+ const outerRange = getHourNumbers(false, _timeUtils.circleSize, 12, 12);
33
+ const innerRange = getHourNumbers(true, _timeUtils.circleSize, 12, 12);
28
34
  const color = (0, _utils.useTextColorOnPrimary)();
29
35
  return /*#__PURE__*/React.createElement(React.Fragment, null, outerRange.map((a, i) => /*#__PURE__*/React.createElement(_reactNative.View, {
30
36
  key: i,
@@ -40,7 +46,7 @@ function AnalogClockHours({
40
46
  color
41
47
  } : null,
42
48
  selectable: false
43
- }, i + 1)))), is24Hour ? innerRange.map((a, i) => /*#__PURE__*/React.createElement(_reactNative.View, {
49
+ }, mode === 'AM' && i + 1 === 12 ? '00' : i + 1)))), is24Hour ? innerRange.map((a, i) => /*#__PURE__*/React.createElement(_reactNative.View, {
44
50
  key: i,
45
51
  pointerEvents: "none",
46
52
  style: [styles.innerHourRoot, {
@@ -91,12 +97,12 @@ const styles = _reactNative.StyleSheet.create({
91
97
  }
92
98
  });
93
99
 
94
- function getHourNumbers(is24Hour, size, count) {
100
+ function getHourNumbers(is24Hour, size, count, arrayLength) {
95
101
  let angle = 0;
96
102
  let step = 2 * Math.PI / count;
97
103
  let radius = size / (is24Hour ? 4 : 2.5);
98
104
  angle = -90 * Math.PI / 180 + Math.PI / 6;
99
- return Array(12).fill(true).map(() => {
105
+ return Array(arrayLength).fill(true).map(() => {
100
106
  let x = Math.round(size / 2 + radius * Math.cos(angle));
101
107
  let y = Math.round(size / 2 + radius * Math.sin(angle));
102
108
  angle += step;
@@ -1 +1 @@
1
- {"version":3,"sources":["AnalogClockHours.tsx"],"names":["AnalogClockHours","is24Hour","hours","outerRange","getHourNumbers","circleSize","innerRange","color","map","a","i","styles","outerHourRoot","top","left","outerHourInner","innerHourRoot","innerHourInner","innerHourText","StyleSheet","create","position","justifyContent","alignItems","zIndex","width","height","marginLeft","marginTop","borderRadius","fontSize","size","count","angle","step","Math","PI","radius","Array","fill","x","round","cos","y","sin","React","memo"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { View, StyleSheet } from 'react-native'\nimport { Text } from 'react-native-paper'\nimport { circleSize } from './AnalogClock'\nimport { useTextColorOnPrimary } from '../utils'\n\nfunction AnalogClockHours({\n is24Hour,\n hours,\n}: {\n is24Hour: boolean\n hours: number\n}) {\n const outerRange = getHourNumbers(false, circleSize, 12)\n const innerRange = getHourNumbers(true, circleSize, 12)\n const color = useTextColorOnPrimary()\n return (\n <>\n {outerRange.map((a, i) => (\n <View\n key={i}\n pointerEvents=\"none\"\n style={[\n styles.outerHourRoot,\n {\n top: a[1] || 0,\n left: a[0] || 0,\n },\n ]}\n >\n <View style={styles.outerHourInner}>\n <Text style={hours === i + 1 ? { color } : null} selectable={false}>\n {i + 1}\n </Text>\n </View>\n </View>\n ))}\n {is24Hour\n ? innerRange.map((a, i) => (\n <View\n key={i}\n pointerEvents=\"none\"\n style={[\n styles.innerHourRoot,\n {\n top: a[1] || 0,\n left: a[0] || 0,\n },\n ]}\n >\n <View style={styles.innerHourInner}>\n <Text\n selectable={false}\n style={[\n styles.innerHourText,\n i + 13 === hours || (i + 13 === 24 && hours === 0)\n ? { color }\n : null,\n ]}\n >\n {i + 13 === 24 ? '00' : i + 13}\n </Text>\n </View>\n </View>\n ))\n : null}\n </>\n )\n}\n\nconst styles = StyleSheet.create({\n outerHourRoot: {\n position: 'absolute',\n justifyContent: 'center',\n alignItems: 'center',\n zIndex: 20,\n width: 50,\n height: 50,\n marginLeft: -25,\n marginTop: -25,\n\n borderRadius: 25,\n },\n outerHourInner: { borderRadius: 25 },\n innerHourRoot: {\n position: 'absolute',\n zIndex: 20,\n justifyContent: 'center',\n alignItems: 'center',\n width: 40,\n height: 40,\n marginLeft: -20,\n marginTop: -20,\n borderRadius: 20,\n },\n innerHourInner: { borderRadius: 20 },\n innerHourText: { fontSize: 13 },\n})\n\nfunction getHourNumbers(is24Hour: boolean, size: number, count: number) {\n let angle = 0\n let step = (2 * Math.PI) / count\n let radius = size / (is24Hour ? 4 : 2.5)\n\n angle = (-90 * Math.PI) / 180 + Math.PI / 6\n\n return Array(12)\n .fill(true)\n .map(() => {\n let x = Math.round(size / 2 + radius * Math.cos(angle))\n let y = Math.round(size / 2 + radius * Math.sin(angle))\n angle += step\n return [x, y]\n })\n}\n\nexport default React.memo(AnalogClockHours)\n"]}
1
+ {"version":3,"sources":["AnalogClockHours.tsx"],"names":["AnalogClockHours","is24Hour","hours","mode","React","useContext","DisplayModeContext","outerRange","getHourNumbers","circleSize","innerRange","color","map","a","i","styles","outerHourRoot","top","left","outerHourInner","innerHourRoot","innerHourInner","innerHourText","StyleSheet","create","position","justifyContent","alignItems","zIndex","width","height","marginLeft","marginTop","borderRadius","fontSize","size","count","arrayLength","angle","step","Math","PI","radius","Array","fill","x","round","cos","y","sin","memo"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { View, StyleSheet } from 'react-native'\nimport { Text } from 'react-native-paper'\nimport { circleSize } from './timeUtils'\nimport { useTextColorOnPrimary } from '../utils'\nimport { DisplayModeContext } from './TimePicker'\n\nfunction AnalogClockHours({\n is24Hour,\n hours,\n}: {\n is24Hour: boolean\n hours: number\n}) {\n const { mode } = React.useContext(DisplayModeContext)\n const outerRange = getHourNumbers(false, circleSize, 12, 12)\n const innerRange = getHourNumbers(true, circleSize, 12, 12)\n const color = useTextColorOnPrimary()\n\n return (\n <>\n {outerRange.map((a, i) => (\n <View\n key={i}\n pointerEvents=\"none\"\n style={[\n styles.outerHourRoot,\n {\n top: a[1] || 0,\n left: a[0] || 0,\n },\n ]}\n >\n <View style={styles.outerHourInner}>\n {/* Display 00 instead of 12 for AM hours */}\n <Text style={hours === i + 1 ? { color } : null} selectable={false}>\n {mode === 'AM' && i + 1 === 12 ? '00' : i + 1}\n </Text>\n </View>\n </View>\n ))}\n {is24Hour\n ? innerRange.map((a, i) => (\n <View\n key={i}\n pointerEvents=\"none\"\n style={[\n styles.innerHourRoot,\n {\n top: a[1] || 0,\n left: a[0] || 0,\n },\n ]}\n >\n <View style={styles.innerHourInner}>\n <Text\n selectable={false}\n style={[\n styles.innerHourText,\n i + 13 === hours || (i + 13 === 24 && hours === 0)\n ? { color }\n : null,\n ]}\n >\n {i + 13 === 24 ? '00' : i + 13}\n </Text>\n </View>\n </View>\n ))\n : null}\n </>\n )\n}\n\nconst styles = StyleSheet.create({\n outerHourRoot: {\n position: 'absolute',\n justifyContent: 'center',\n alignItems: 'center',\n zIndex: 20,\n width: 50,\n height: 50,\n marginLeft: -25,\n marginTop: -25,\n\n borderRadius: 25,\n },\n outerHourInner: { borderRadius: 25 },\n innerHourRoot: {\n position: 'absolute',\n zIndex: 20,\n justifyContent: 'center',\n alignItems: 'center',\n width: 40,\n height: 40,\n marginLeft: -20,\n marginTop: -20,\n borderRadius: 20,\n },\n innerHourInner: { borderRadius: 20 },\n innerHourText: { fontSize: 13 },\n})\n\nfunction getHourNumbers(\n is24Hour: boolean,\n size: number,\n count: number,\n arrayLength: number\n) {\n let angle = 0\n let step = (2 * Math.PI) / count\n let radius = size / (is24Hour ? 4 : 2.5)\n\n angle = (-90 * Math.PI) / 180 + Math.PI / 6\n\n return Array(arrayLength)\n .fill(true)\n .map(() => {\n let x = Math.round(size / 2 + radius * Math.cos(angle))\n let y = Math.round(size / 2 + radius * Math.sin(angle))\n angle += step\n return [x, y]\n })\n}\n\nexport default React.memo(AnalogClockHours)\n"]}
@@ -11,18 +11,19 @@ var _reactNative = require("react-native");
11
11
 
12
12
  var _reactNativePaper = require("react-native-paper");
13
13
 
14
- var _AnalogClock = require("./AnalogClock");
14
+ var _timeUtils = require("./timeUtils");
15
15
 
16
16
  var _utils = require("../utils");
17
17
 
18
- function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
18
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
19
 
20
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
20
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
21
 
22
- function AnalogClockMinutes({
23
- minutes
24
- }) {
25
- const range = getMinuteNumbers(_AnalogClock.circleSize, 12);
22
+ function AnalogClockMinutes(_ref) {
23
+ let {
24
+ minutes
25
+ } = _ref;
26
+ const range = getMinuteNumbers(_timeUtils.circleSize, 12);
26
27
  const color = (0, _utils.useTextColorOnPrimary)();
27
28
  return /*#__PURE__*/React.createElement(React.Fragment, null, range.map((a, i) => {
28
29
  const currentMinutes = i * 5;
@@ -45,7 +46,7 @@ function AnalogClockMinutes({
45
46
  }, /*#__PURE__*/React.createElement(_reactNativePaper.Text, {
46
47
  style: isCurrent ? {
47
48
  color
48
- } : null,
49
+ } : undefined,
49
50
  selectable: false
50
51
  }, isZero ? '00' : currentMinutes)));
51
52
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["AnalogClockMinutes.tsx"],"names":["AnalogClockMinutes","minutes","range","getMinuteNumbers","circleSize","color","map","a","i","currentMinutes","isZero","isCurrent","styles","outerHourRoot","top","left","outerHourInner","StyleSheet","create","position","justifyContent","alignItems","zIndex","width","height","marginLeft","marginTop","borderRadius","innerHourRoot","innerHourInner","innerHourText","fontSize","textWhite","size","count","angle","step","Math","PI","radius","Array","fill","x","round","cos","y","sin","React","memo"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { View, StyleSheet } from 'react-native'\nimport { Text } from 'react-native-paper'\nimport { circleSize } from './AnalogClock'\nimport { useTextColorOnPrimary } from '../utils'\n\nfunction AnalogClockMinutes({ minutes }: { minutes: number }) {\n const range = getMinuteNumbers(circleSize, 12)\n const color = useTextColorOnPrimary()\n return (\n <>\n {range.map((a, i) => {\n const currentMinutes = i * 5\n const isZero = currentMinutes === 0\n let isCurrent =\n currentMinutes - 1 <= minutes && currentMinutes + 1 >= minutes\n if (isZero) {\n isCurrent = minutes >= 59 || currentMinutes + 1 >= minutes\n }\n return (\n <View\n key={i}\n pointerEvents=\"none\"\n style={[\n styles.outerHourRoot,\n {\n top: a[1] || 0,\n left: a[0] || 0,\n },\n ]}\n >\n <View style={styles.outerHourInner}>\n <Text style={isCurrent ? { color } : null} selectable={false}>\n {isZero ? '00' : currentMinutes}\n </Text>\n </View>\n </View>\n )\n })}\n </>\n )\n}\n\nconst styles = StyleSheet.create({\n outerHourRoot: {\n position: 'absolute',\n justifyContent: 'center',\n alignItems: 'center',\n zIndex: 20,\n width: 50,\n height: 50,\n marginLeft: -25,\n marginTop: -25,\n\n borderRadius: 25,\n },\n outerHourInner: { borderRadius: 25 },\n innerHourRoot: {\n position: 'absolute',\n zIndex: 20,\n justifyContent: 'center',\n alignItems: 'center',\n width: 40,\n height: 40,\n marginLeft: -20,\n marginTop: -20,\n borderRadius: 20,\n },\n innerHourInner: { borderRadius: 20 },\n innerHourText: { fontSize: 13 },\n textWhite: { color: '#fff' },\n})\n\nfunction getMinuteNumbers(size: number, count: number) {\n let angle = 0\n let step = (2 * Math.PI) / count\n let radius = size / 2.5\n\n angle = angle = (-90 * Math.PI) / 180\n\n return Array(12)\n .fill(true)\n .map(() => {\n let x = Math.round(size / 2 + radius * Math.cos(angle))\n let y = Math.round(size / 2 + radius * Math.sin(angle))\n angle += step\n return [x, y]\n })\n}\n\nexport default React.memo(AnalogClockMinutes)\n"]}
1
+ {"version":3,"sources":["AnalogClockMinutes.tsx"],"names":["AnalogClockMinutes","minutes","range","getMinuteNumbers","circleSize","color","map","a","i","currentMinutes","isZero","isCurrent","styles","outerHourRoot","top","left","outerHourInner","undefined","StyleSheet","create","position","justifyContent","alignItems","zIndex","width","height","marginLeft","marginTop","borderRadius","innerHourRoot","innerHourInner","innerHourText","fontSize","textWhite","size","count","angle","step","Math","PI","radius","Array","fill","x","round","cos","y","sin","React","memo"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { View, StyleSheet } from 'react-native'\nimport { Text } from 'react-native-paper'\nimport { circleSize } from './timeUtils'\nimport { useTextColorOnPrimary } from '../utils'\n\nfunction AnalogClockMinutes({ minutes }: { minutes: number }) {\n const range = getMinuteNumbers(circleSize, 12)\n const color = useTextColorOnPrimary()\n return (\n <>\n {range.map((a, i) => {\n const currentMinutes = i * 5\n const isZero = currentMinutes === 0\n let isCurrent =\n currentMinutes - 1 <= minutes && currentMinutes + 1 >= minutes\n if (isZero) {\n isCurrent = minutes >= 59 || currentMinutes + 1 >= minutes\n }\n return (\n <View\n key={i}\n pointerEvents=\"none\"\n style={[\n styles.outerHourRoot,\n {\n top: a[1] || 0,\n left: a[0] || 0,\n },\n ]}\n >\n <View style={styles.outerHourInner}>\n <Text\n style={isCurrent ? { color } : undefined}\n selectable={false}\n >\n {isZero ? '00' : currentMinutes}\n </Text>\n </View>\n </View>\n )\n })}\n </>\n )\n}\n\nconst styles = StyleSheet.create({\n outerHourRoot: {\n position: 'absolute',\n justifyContent: 'center',\n alignItems: 'center',\n zIndex: 20,\n width: 50,\n height: 50,\n marginLeft: -25,\n marginTop: -25,\n\n borderRadius: 25,\n },\n outerHourInner: { borderRadius: 25 },\n innerHourRoot: {\n position: 'absolute',\n zIndex: 20,\n justifyContent: 'center',\n alignItems: 'center',\n width: 40,\n height: 40,\n marginLeft: -20,\n marginTop: -20,\n borderRadius: 20,\n },\n innerHourInner: { borderRadius: 20 },\n innerHourText: { fontSize: 13 },\n textWhite: { color: '#fff' },\n})\n\nfunction getMinuteNumbers(size: number, count: number) {\n let angle = 0\n let step = (2 * Math.PI) / count\n let radius = size / 2.5\n\n angle = angle = (-90 * Math.PI) / 180\n\n return Array(12)\n .fill(true)\n .map(() => {\n let x = Math.round(size / 2 + radius * Math.cos(angle))\n let y = Math.round(size / 2 + radius * Math.sin(angle))\n angle += step\n return [x, y]\n })\n}\n\nexport default React.memo(AnalogClockMinutes)\n"]}
@@ -11,15 +11,16 @@ var _reactNative = require("react-native");
11
11
 
12
12
  var _timeUtils = require("./timeUtils");
13
13
 
14
- function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
14
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
15
 
16
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
16
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
17
 
18
- function AnimatedClockSwitcher({
19
- focused,
20
- hours,
21
- minutes
22
- }) {
18
+ function AnimatedClockSwitcher(_ref) {
19
+ let {
20
+ focused,
21
+ hours,
22
+ minutes
23
+ } = _ref;
23
24
  const collapsed = focused === _timeUtils.clockTypes.hours;
24
25
  const animatedCollapsed = React.useRef(new _reactNative.Animated.Value(collapsed ? 1 : 0));
25
26
  React.useEffect(() => {