rn-grid-date-time-picker 1.0.0 → 1.2.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 (384) hide show
  1. package/CHANGELOG.md +86 -0
  2. package/README.md +100 -638
  3. package/lib/commonjs/adapters/utcMidnight.js +15 -6
  4. package/lib/commonjs/adapters/utcMidnight.js.map +1 -1
  5. package/lib/commonjs/components/DateTimePicker.js +484 -85
  6. package/lib/commonjs/components/DateTimePicker.js.map +1 -1
  7. package/lib/commonjs/components/calendar/Calendar.js +21 -7
  8. package/lib/commonjs/components/calendar/Calendar.js.map +1 -1
  9. package/lib/commonjs/components/calendar/CalendarHeader.js +46 -6
  10. package/lib/commonjs/components/calendar/CalendarHeader.js.map +1 -1
  11. package/lib/commonjs/components/calendar/CalendarSwitch.js +150 -0
  12. package/lib/commonjs/components/calendar/CalendarSwitch.js.map +1 -0
  13. package/lib/commonjs/components/calendar/DayCell.js +8 -3
  14. package/lib/commonjs/components/calendar/DayCell.js.map +1 -1
  15. package/lib/commonjs/components/calendar/DayGrid.js +13 -2
  16. package/lib/commonjs/components/calendar/DayGrid.js.map +1 -1
  17. package/lib/commonjs/components/calendar/PeriodGrid.js +3 -1
  18. package/lib/commonjs/components/calendar/PeriodGrid.js.map +1 -1
  19. package/lib/commonjs/components/calendar/calendarStyles.js +3 -2
  20. package/lib/commonjs/components/calendar/calendarStyles.js.map +1 -1
  21. package/lib/commonjs/components/calendar/localeNames.js +46 -24
  22. package/lib/commonjs/components/calendar/localeNames.js.map +1 -1
  23. package/lib/commonjs/components/calendar/selection.js +9 -1
  24. package/lib/commonjs/components/calendar/selection.js.map +1 -1
  25. package/lib/commonjs/components/container/DefaultSheet.js +42 -11
  26. package/lib/commonjs/components/container/DefaultSheet.js.map +1 -1
  27. package/lib/commonjs/components/container/PickerContainer.js +4 -0
  28. package/lib/commonjs/components/container/PickerContainer.js.map +1 -1
  29. package/lib/commonjs/components/container/PickerLayout.js +1 -1
  30. package/lib/commonjs/components/container/PickerLayout.js.map +1 -1
  31. package/lib/commonjs/components/container/containerStyles.js +12 -4
  32. package/lib/commonjs/components/container/containerStyles.js.map +1 -1
  33. package/lib/commonjs/components/field/RangeFields.js +5 -1
  34. package/lib/commonjs/components/field/RangeFields.js.map +1 -1
  35. package/lib/commonjs/components/field/SegmentedInput.js +8 -3
  36. package/lib/commonjs/components/field/SegmentedInput.js.map +1 -1
  37. package/lib/commonjs/components/field/ValueField.js +64 -8
  38. package/lib/commonjs/components/field/ValueField.js.map +1 -1
  39. package/lib/commonjs/components/field/fieldStyles.js +17 -0
  40. package/lib/commonjs/components/field/fieldStyles.js.map +1 -1
  41. package/lib/commonjs/components/field/fieldText.js +29 -13
  42. package/lib/commonjs/components/field/fieldText.js.map +1 -1
  43. package/lib/commonjs/components/hooks/useBottomInset.js +32 -0
  44. package/lib/commonjs/components/hooks/useBottomInset.js.map +1 -0
  45. package/lib/commonjs/components/hooks/useKeyboardFold.js +36 -13
  46. package/lib/commonjs/components/hooks/useKeyboardFold.js.map +1 -1
  47. package/lib/commonjs/components/hooks/useOpenPicker.js +39 -17
  48. package/lib/commonjs/components/hooks/useOpenPicker.js.map +1 -1
  49. package/lib/commonjs/components/hooks/useTypedSegments.js +6 -2
  50. package/lib/commonjs/components/hooks/useTypedSegments.js.map +1 -1
  51. package/lib/commonjs/components/theme/defaultStrings.js +13 -3
  52. package/lib/commonjs/components/theme/defaultStrings.js.map +1 -1
  53. package/lib/commonjs/components/theme/direction.js +17 -0
  54. package/lib/commonjs/components/theme/direction.js.map +1 -0
  55. package/lib/commonjs/components/theme/numerals.js +16 -0
  56. package/lib/commonjs/components/theme/numerals.js.map +1 -0
  57. package/lib/commonjs/components/theme/styleKeys.js +10 -2
  58. package/lib/commonjs/components/theme/styleKeys.js.map +1 -1
  59. package/lib/commonjs/components/theme/tokens.js +4 -0
  60. package/lib/commonjs/components/theme/tokens.js.map +1 -1
  61. package/lib/commonjs/components/time/TimeRow.js +10 -2
  62. package/lib/commonjs/components/time/TimeRow.js.map +1 -1
  63. package/lib/commonjs/components/time/TypedTime.js +3 -1
  64. package/lib/commonjs/components/time/TypedTime.js.map +1 -1
  65. package/lib/commonjs/components/time/Wheel.js +20 -3
  66. package/lib/commonjs/components/time/Wheel.js.map +1 -1
  67. package/lib/commonjs/components/time/timeStyles.js +4 -5
  68. package/lib/commonjs/components/time/timeStyles.js.map +1 -1
  69. package/lib/commonjs/components/types.js +10 -0
  70. package/lib/commonjs/components/types.js.map +1 -1
  71. package/lib/commonjs/core/calendarSystem.js +123 -22
  72. package/lib/commonjs/core/calendarSystem.js.map +1 -1
  73. package/lib/commonjs/core/digits.js +25 -0
  74. package/lib/commonjs/core/digits.js.map +1 -0
  75. package/lib/commonjs/core/draft.js +31 -10
  76. package/lib/commonjs/core/draft.js.map +1 -1
  77. package/lib/commonjs/core/locale.js +20 -4
  78. package/lib/commonjs/core/locale.js.map +1 -1
  79. package/lib/commonjs/core/numerals.js +46 -0
  80. package/lib/commonjs/core/numerals.js.map +1 -0
  81. package/lib/commonjs/core/segmentEditor.js +9 -0
  82. package/lib/commonjs/core/segmentEditor.js.map +1 -1
  83. package/lib/commonjs/core/segments.js +2 -11
  84. package/lib/commonjs/core/segments.js.map +1 -1
  85. package/lib/commonjs/core/selectionRules.js +2 -1
  86. package/lib/commonjs/core/selectionRules.js.map +1 -1
  87. package/lib/commonjs/core/timeEntry.js +7 -91
  88. package/lib/commonjs/core/timeEntry.js.map +1 -1
  89. package/lib/commonjs/icons/index.js +5 -1
  90. package/lib/commonjs/icons/index.js.map +1 -1
  91. package/lib/commonjs/index.js +20 -0
  92. package/lib/commonjs/index.js.map +1 -1
  93. package/lib/module/adapters/utcMidnight.js +14 -5
  94. package/lib/module/adapters/utcMidnight.js.map +1 -1
  95. package/lib/module/components/DateTimePicker.js +490 -91
  96. package/lib/module/components/DateTimePicker.js.map +1 -1
  97. package/lib/module/components/calendar/Calendar.js +25 -11
  98. package/lib/module/components/calendar/Calendar.js.map +1 -1
  99. package/lib/module/components/calendar/CalendarHeader.js +47 -7
  100. package/lib/module/components/calendar/CalendarHeader.js.map +1 -1
  101. package/lib/module/components/calendar/CalendarSwitch.js +145 -0
  102. package/lib/module/components/calendar/CalendarSwitch.js.map +1 -0
  103. package/lib/module/components/calendar/DayCell.js +8 -3
  104. package/lib/module/components/calendar/DayCell.js.map +1 -1
  105. package/lib/module/components/calendar/DayGrid.js +14 -3
  106. package/lib/module/components/calendar/DayGrid.js.map +1 -1
  107. package/lib/module/components/calendar/PeriodGrid.js +3 -1
  108. package/lib/module/components/calendar/PeriodGrid.js.map +1 -1
  109. package/lib/module/components/calendar/calendarStyles.js +3 -2
  110. package/lib/module/components/calendar/calendarStyles.js.map +1 -1
  111. package/lib/module/components/calendar/localeNames.js +46 -24
  112. package/lib/module/components/calendar/localeNames.js.map +1 -1
  113. package/lib/module/components/calendar/selection.js +7 -0
  114. package/lib/module/components/calendar/selection.js.map +1 -1
  115. package/lib/module/components/container/DefaultSheet.js +42 -12
  116. package/lib/module/components/container/DefaultSheet.js.map +1 -1
  117. package/lib/module/components/container/PickerContainer.js +4 -0
  118. package/lib/module/components/container/PickerContainer.js.map +1 -1
  119. package/lib/module/components/container/PickerLayout.js +1 -1
  120. package/lib/module/components/container/PickerLayout.js.map +1 -1
  121. package/lib/module/components/container/containerStyles.js +11 -3
  122. package/lib/module/components/container/containerStyles.js.map +1 -1
  123. package/lib/module/components/field/RangeFields.js +5 -1
  124. package/lib/module/components/field/RangeFields.js.map +1 -1
  125. package/lib/module/components/field/SegmentedInput.js +8 -3
  126. package/lib/module/components/field/SegmentedInput.js.map +1 -1
  127. package/lib/module/components/field/ValueField.js +66 -10
  128. package/lib/module/components/field/ValueField.js.map +1 -1
  129. package/lib/module/components/field/fieldStyles.js +17 -0
  130. package/lib/module/components/field/fieldStyles.js.map +1 -1
  131. package/lib/module/components/field/fieldText.js +28 -11
  132. package/lib/module/components/field/fieldText.js.map +1 -1
  133. package/lib/module/components/hooks/useBottomInset.js +27 -0
  134. package/lib/module/components/hooks/useBottomInset.js.map +1 -0
  135. package/lib/module/components/hooks/useKeyboardFold.js +33 -12
  136. package/lib/module/components/hooks/useKeyboardFold.js.map +1 -1
  137. package/lib/module/components/hooks/useOpenPicker.js +39 -17
  138. package/lib/module/components/hooks/useOpenPicker.js.map +1 -1
  139. package/lib/module/components/hooks/useTypedSegments.js +6 -2
  140. package/lib/module/components/hooks/useTypedSegments.js.map +1 -1
  141. package/lib/module/components/theme/defaultStrings.js +11 -2
  142. package/lib/module/components/theme/defaultStrings.js.map +1 -1
  143. package/lib/module/components/theme/direction.js +13 -0
  144. package/lib/module/components/theme/direction.js.map +1 -0
  145. package/lib/module/components/theme/numerals.js +12 -0
  146. package/lib/module/components/theme/numerals.js.map +1 -0
  147. package/lib/module/components/theme/styleKeys.js +10 -2
  148. package/lib/module/components/theme/styleKeys.js.map +1 -1
  149. package/lib/module/components/theme/tokens.js +4 -0
  150. package/lib/module/components/theme/tokens.js.map +1 -1
  151. package/lib/module/components/time/TimeRow.js +11 -3
  152. package/lib/module/components/time/TimeRow.js.map +1 -1
  153. package/lib/module/components/time/TypedTime.js +3 -1
  154. package/lib/module/components/time/TypedTime.js.map +1 -1
  155. package/lib/module/components/time/Wheel.js +18 -2
  156. package/lib/module/components/time/Wheel.js.map +1 -1
  157. package/lib/module/components/time/timeStyles.js +4 -5
  158. package/lib/module/components/time/timeStyles.js.map +1 -1
  159. package/lib/module/components/types.js +10 -0
  160. package/lib/module/components/types.js.map +1 -1
  161. package/lib/module/core/calendarSystem.js +118 -19
  162. package/lib/module/core/calendarSystem.js.map +1 -1
  163. package/lib/module/core/digits.js +20 -0
  164. package/lib/module/core/digits.js.map +1 -0
  165. package/lib/module/core/draft.js +29 -9
  166. package/lib/module/core/draft.js.map +1 -1
  167. package/lib/module/core/locale.js +18 -3
  168. package/lib/module/core/locale.js.map +1 -1
  169. package/lib/module/core/numerals.js +39 -0
  170. package/lib/module/core/numerals.js.map +1 -0
  171. package/lib/module/core/segmentEditor.js +9 -0
  172. package/lib/module/core/segmentEditor.js.map +1 -1
  173. package/lib/module/core/segments.js +0 -8
  174. package/lib/module/core/segments.js.map +1 -1
  175. package/lib/module/core/selectionRules.js +2 -1
  176. package/lib/module/core/selectionRules.js.map +1 -1
  177. package/lib/module/core/timeEntry.js +7 -89
  178. package/lib/module/core/timeEntry.js.map +1 -1
  179. package/lib/module/icons/index.js +5 -1
  180. package/lib/module/icons/index.js.map +1 -1
  181. package/lib/module/index.js +2 -0
  182. package/lib/module/index.js.map +1 -1
  183. package/lib/typescript/commonjs/src/adapters/utcMidnight.d.ts.map +1 -1
  184. package/lib/typescript/commonjs/src/components/DateTimePicker.d.ts.map +1 -1
  185. package/lib/typescript/commonjs/src/components/calendar/Calendar.d.ts +8 -4
  186. package/lib/typescript/commonjs/src/components/calendar/Calendar.d.ts.map +1 -1
  187. package/lib/typescript/commonjs/src/components/calendar/CalendarHeader.d.ts.map +1 -1
  188. package/lib/typescript/commonjs/src/components/calendar/CalendarSwitch.d.ts +26 -0
  189. package/lib/typescript/commonjs/src/components/calendar/CalendarSwitch.d.ts.map +1 -0
  190. package/lib/typescript/commonjs/src/components/calendar/DayCell.d.ts +1 -1
  191. package/lib/typescript/commonjs/src/components/calendar/DayCell.d.ts.map +1 -1
  192. package/lib/typescript/commonjs/src/components/calendar/DayGrid.d.ts +2 -0
  193. package/lib/typescript/commonjs/src/components/calendar/DayGrid.d.ts.map +1 -1
  194. package/lib/typescript/commonjs/src/components/calendar/PeriodGrid.d.ts.map +1 -1
  195. package/lib/typescript/commonjs/src/components/calendar/calendarStyles.d.ts +1 -1
  196. package/lib/typescript/commonjs/src/components/calendar/calendarStyles.d.ts.map +1 -1
  197. package/lib/typescript/commonjs/src/components/calendar/localeNames.d.ts +8 -3
  198. package/lib/typescript/commonjs/src/components/calendar/localeNames.d.ts.map +1 -1
  199. package/lib/typescript/commonjs/src/components/calendar/selection.d.ts +2 -0
  200. package/lib/typescript/commonjs/src/components/calendar/selection.d.ts.map +1 -1
  201. package/lib/typescript/commonjs/src/components/container/DefaultSheet.d.ts +10 -2
  202. package/lib/typescript/commonjs/src/components/container/DefaultSheet.d.ts.map +1 -1
  203. package/lib/typescript/commonjs/src/components/container/PickerContainer.d.ts.map +1 -1
  204. package/lib/typescript/commonjs/src/components/container/containerStyles.d.ts +6 -0
  205. package/lib/typescript/commonjs/src/components/container/containerStyles.d.ts.map +1 -1
  206. package/lib/typescript/commonjs/src/components/field/RangeFields.d.ts +5 -0
  207. package/lib/typescript/commonjs/src/components/field/RangeFields.d.ts.map +1 -1
  208. package/lib/typescript/commonjs/src/components/field/SegmentedInput.d.ts.map +1 -1
  209. package/lib/typescript/commonjs/src/components/field/ValueField.d.ts +7 -0
  210. package/lib/typescript/commonjs/src/components/field/ValueField.d.ts.map +1 -1
  211. package/lib/typescript/commonjs/src/components/field/fieldStyles.d.ts +15 -0
  212. package/lib/typescript/commonjs/src/components/field/fieldStyles.d.ts.map +1 -1
  213. package/lib/typescript/commonjs/src/components/field/fieldText.d.ts +14 -5
  214. package/lib/typescript/commonjs/src/components/field/fieldText.d.ts.map +1 -1
  215. package/lib/typescript/commonjs/src/components/hooks/useBottomInset.d.ts +8 -0
  216. package/lib/typescript/commonjs/src/components/hooks/useBottomInset.d.ts.map +1 -0
  217. package/lib/typescript/commonjs/src/components/hooks/useKeyboardFold.d.ts +10 -2
  218. package/lib/typescript/commonjs/src/components/hooks/useKeyboardFold.d.ts.map +1 -1
  219. package/lib/typescript/commonjs/src/components/hooks/useOpenPicker.d.ts +2 -1
  220. package/lib/typescript/commonjs/src/components/hooks/useOpenPicker.d.ts.map +1 -1
  221. package/lib/typescript/commonjs/src/components/hooks/useTypedSegments.d.ts +3 -2
  222. package/lib/typescript/commonjs/src/components/hooks/useTypedSegments.d.ts.map +1 -1
  223. package/lib/typescript/commonjs/src/components/theme/defaultStrings.d.ts +13 -2
  224. package/lib/typescript/commonjs/src/components/theme/defaultStrings.d.ts.map +1 -1
  225. package/lib/typescript/commonjs/src/components/theme/direction.d.ts +8 -0
  226. package/lib/typescript/commonjs/src/components/theme/direction.d.ts.map +1 -0
  227. package/lib/typescript/commonjs/src/components/theme/numerals.d.ts +7 -0
  228. package/lib/typescript/commonjs/src/components/theme/numerals.d.ts.map +1 -0
  229. package/lib/typescript/commonjs/src/components/theme/styleKeys.d.ts +1 -1
  230. package/lib/typescript/commonjs/src/components/theme/styleKeys.d.ts.map +1 -1
  231. package/lib/typescript/commonjs/src/components/theme/tokens.d.ts +3 -1
  232. package/lib/typescript/commonjs/src/components/theme/tokens.d.ts.map +1 -1
  233. package/lib/typescript/commonjs/src/components/time/TimeRow.d.ts.map +1 -1
  234. package/lib/typescript/commonjs/src/components/time/TypedTime.d.ts.map +1 -1
  235. package/lib/typescript/commonjs/src/components/time/Wheel.d.ts +5 -0
  236. package/lib/typescript/commonjs/src/components/time/Wheel.d.ts.map +1 -1
  237. package/lib/typescript/commonjs/src/components/time/timeStyles.d.ts +0 -2
  238. package/lib/typescript/commonjs/src/components/time/timeStyles.d.ts.map +1 -1
  239. package/lib/typescript/commonjs/src/components/types.d.ts +84 -4
  240. package/lib/typescript/commonjs/src/components/types.d.ts.map +1 -1
  241. package/lib/typescript/commonjs/src/core/calendarSystem.d.ts +20 -5
  242. package/lib/typescript/commonjs/src/core/calendarSystem.d.ts.map +1 -1
  243. package/lib/typescript/commonjs/src/core/digits.d.ts +3 -0
  244. package/lib/typescript/commonjs/src/core/digits.d.ts.map +1 -0
  245. package/lib/typescript/commonjs/src/core/draft.d.ts +12 -1
  246. package/lib/typescript/commonjs/src/core/draft.d.ts.map +1 -1
  247. package/lib/typescript/commonjs/src/core/locale.d.ts +6 -0
  248. package/lib/typescript/commonjs/src/core/locale.d.ts.map +1 -1
  249. package/lib/typescript/commonjs/src/core/numerals.d.ts +15 -0
  250. package/lib/typescript/commonjs/src/core/numerals.d.ts.map +1 -0
  251. package/lib/typescript/commonjs/src/core/segmentEditor.d.ts.map +1 -1
  252. package/lib/typescript/commonjs/src/core/segments.d.ts +0 -2
  253. package/lib/typescript/commonjs/src/core/segments.d.ts.map +1 -1
  254. package/lib/typescript/commonjs/src/core/selectionRules.d.ts +3 -2
  255. package/lib/typescript/commonjs/src/core/selectionRules.d.ts.map +1 -1
  256. package/lib/typescript/commonjs/src/core/timeEntry.d.ts +4 -24
  257. package/lib/typescript/commonjs/src/core/timeEntry.d.ts.map +1 -1
  258. package/lib/typescript/commonjs/src/icons/index.d.ts.map +1 -1
  259. package/lib/typescript/commonjs/src/index.d.ts +7 -3
  260. package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
  261. package/lib/typescript/module/src/adapters/utcMidnight.d.ts.map +1 -1
  262. package/lib/typescript/module/src/components/DateTimePicker.d.ts.map +1 -1
  263. package/lib/typescript/module/src/components/calendar/Calendar.d.ts +8 -4
  264. package/lib/typescript/module/src/components/calendar/Calendar.d.ts.map +1 -1
  265. package/lib/typescript/module/src/components/calendar/CalendarHeader.d.ts.map +1 -1
  266. package/lib/typescript/module/src/components/calendar/CalendarSwitch.d.ts +26 -0
  267. package/lib/typescript/module/src/components/calendar/CalendarSwitch.d.ts.map +1 -0
  268. package/lib/typescript/module/src/components/calendar/DayCell.d.ts +1 -1
  269. package/lib/typescript/module/src/components/calendar/DayCell.d.ts.map +1 -1
  270. package/lib/typescript/module/src/components/calendar/DayGrid.d.ts +2 -0
  271. package/lib/typescript/module/src/components/calendar/DayGrid.d.ts.map +1 -1
  272. package/lib/typescript/module/src/components/calendar/PeriodGrid.d.ts.map +1 -1
  273. package/lib/typescript/module/src/components/calendar/calendarStyles.d.ts +1 -1
  274. package/lib/typescript/module/src/components/calendar/calendarStyles.d.ts.map +1 -1
  275. package/lib/typescript/module/src/components/calendar/localeNames.d.ts +8 -3
  276. package/lib/typescript/module/src/components/calendar/localeNames.d.ts.map +1 -1
  277. package/lib/typescript/module/src/components/calendar/selection.d.ts +2 -0
  278. package/lib/typescript/module/src/components/calendar/selection.d.ts.map +1 -1
  279. package/lib/typescript/module/src/components/container/DefaultSheet.d.ts +10 -2
  280. package/lib/typescript/module/src/components/container/DefaultSheet.d.ts.map +1 -1
  281. package/lib/typescript/module/src/components/container/PickerContainer.d.ts.map +1 -1
  282. package/lib/typescript/module/src/components/container/containerStyles.d.ts +6 -0
  283. package/lib/typescript/module/src/components/container/containerStyles.d.ts.map +1 -1
  284. package/lib/typescript/module/src/components/field/RangeFields.d.ts +5 -0
  285. package/lib/typescript/module/src/components/field/RangeFields.d.ts.map +1 -1
  286. package/lib/typescript/module/src/components/field/SegmentedInput.d.ts.map +1 -1
  287. package/lib/typescript/module/src/components/field/ValueField.d.ts +7 -0
  288. package/lib/typescript/module/src/components/field/ValueField.d.ts.map +1 -1
  289. package/lib/typescript/module/src/components/field/fieldStyles.d.ts +15 -0
  290. package/lib/typescript/module/src/components/field/fieldStyles.d.ts.map +1 -1
  291. package/lib/typescript/module/src/components/field/fieldText.d.ts +14 -5
  292. package/lib/typescript/module/src/components/field/fieldText.d.ts.map +1 -1
  293. package/lib/typescript/module/src/components/hooks/useBottomInset.d.ts +8 -0
  294. package/lib/typescript/module/src/components/hooks/useBottomInset.d.ts.map +1 -0
  295. package/lib/typescript/module/src/components/hooks/useKeyboardFold.d.ts +10 -2
  296. package/lib/typescript/module/src/components/hooks/useKeyboardFold.d.ts.map +1 -1
  297. package/lib/typescript/module/src/components/hooks/useOpenPicker.d.ts +2 -1
  298. package/lib/typescript/module/src/components/hooks/useOpenPicker.d.ts.map +1 -1
  299. package/lib/typescript/module/src/components/hooks/useTypedSegments.d.ts +3 -2
  300. package/lib/typescript/module/src/components/hooks/useTypedSegments.d.ts.map +1 -1
  301. package/lib/typescript/module/src/components/theme/defaultStrings.d.ts +13 -2
  302. package/lib/typescript/module/src/components/theme/defaultStrings.d.ts.map +1 -1
  303. package/lib/typescript/module/src/components/theme/direction.d.ts +8 -0
  304. package/lib/typescript/module/src/components/theme/direction.d.ts.map +1 -0
  305. package/lib/typescript/module/src/components/theme/numerals.d.ts +7 -0
  306. package/lib/typescript/module/src/components/theme/numerals.d.ts.map +1 -0
  307. package/lib/typescript/module/src/components/theme/styleKeys.d.ts +1 -1
  308. package/lib/typescript/module/src/components/theme/styleKeys.d.ts.map +1 -1
  309. package/lib/typescript/module/src/components/theme/tokens.d.ts +3 -1
  310. package/lib/typescript/module/src/components/theme/tokens.d.ts.map +1 -1
  311. package/lib/typescript/module/src/components/time/TimeRow.d.ts.map +1 -1
  312. package/lib/typescript/module/src/components/time/TypedTime.d.ts.map +1 -1
  313. package/lib/typescript/module/src/components/time/Wheel.d.ts +5 -0
  314. package/lib/typescript/module/src/components/time/Wheel.d.ts.map +1 -1
  315. package/lib/typescript/module/src/components/time/timeStyles.d.ts +0 -2
  316. package/lib/typescript/module/src/components/time/timeStyles.d.ts.map +1 -1
  317. package/lib/typescript/module/src/components/types.d.ts +84 -4
  318. package/lib/typescript/module/src/components/types.d.ts.map +1 -1
  319. package/lib/typescript/module/src/core/calendarSystem.d.ts +20 -5
  320. package/lib/typescript/module/src/core/calendarSystem.d.ts.map +1 -1
  321. package/lib/typescript/module/src/core/digits.d.ts +3 -0
  322. package/lib/typescript/module/src/core/digits.d.ts.map +1 -0
  323. package/lib/typescript/module/src/core/draft.d.ts +12 -1
  324. package/lib/typescript/module/src/core/draft.d.ts.map +1 -1
  325. package/lib/typescript/module/src/core/locale.d.ts +6 -0
  326. package/lib/typescript/module/src/core/locale.d.ts.map +1 -1
  327. package/lib/typescript/module/src/core/numerals.d.ts +15 -0
  328. package/lib/typescript/module/src/core/numerals.d.ts.map +1 -0
  329. package/lib/typescript/module/src/core/segmentEditor.d.ts.map +1 -1
  330. package/lib/typescript/module/src/core/segments.d.ts +0 -2
  331. package/lib/typescript/module/src/core/segments.d.ts.map +1 -1
  332. package/lib/typescript/module/src/core/selectionRules.d.ts +3 -2
  333. package/lib/typescript/module/src/core/selectionRules.d.ts.map +1 -1
  334. package/lib/typescript/module/src/core/timeEntry.d.ts +4 -24
  335. package/lib/typescript/module/src/core/timeEntry.d.ts.map +1 -1
  336. package/lib/typescript/module/src/icons/index.d.ts.map +1 -1
  337. package/lib/typescript/module/src/index.d.ts +7 -3
  338. package/lib/typescript/module/src/index.d.ts.map +1 -1
  339. package/package.json +22 -7
  340. package/src/adapters/utcMidnight.ts +14 -5
  341. package/src/components/DateTimePicker.tsx +607 -108
  342. package/src/components/calendar/Calendar.tsx +54 -16
  343. package/src/components/calendar/CalendarHeader.tsx +41 -9
  344. package/src/components/calendar/CalendarSwitch.tsx +170 -0
  345. package/src/components/calendar/DayCell.tsx +16 -4
  346. package/src/components/calendar/DayGrid.tsx +18 -3
  347. package/src/components/calendar/PeriodGrid.tsx +3 -1
  348. package/src/components/calendar/calendarStyles.ts +3 -2
  349. package/src/components/calendar/localeNames.ts +52 -22
  350. package/src/components/calendar/selection.ts +8 -0
  351. package/src/components/container/DefaultSheet.tsx +60 -14
  352. package/src/components/container/PickerContainer.tsx +4 -0
  353. package/src/components/container/PickerLayout.tsx +1 -1
  354. package/src/components/container/containerStyles.ts +12 -3
  355. package/src/components/field/RangeFields.tsx +12 -2
  356. package/src/components/field/SegmentedInput.tsx +8 -3
  357. package/src/components/field/ValueField.tsx +94 -18
  358. package/src/components/field/fieldStyles.ts +6 -0
  359. package/src/components/field/fieldText.ts +68 -15
  360. package/src/components/hooks/useBottomInset.ts +33 -0
  361. package/src/components/hooks/useKeyboardFold.ts +41 -13
  362. package/src/components/hooks/useOpenPicker.ts +41 -18
  363. package/src/components/hooks/useTypedSegments.ts +7 -3
  364. package/src/components/theme/defaultStrings.ts +29 -4
  365. package/src/components/theme/direction.ts +12 -0
  366. package/src/components/theme/numerals.ts +11 -0
  367. package/src/components/theme/styleKeys.ts +18 -1
  368. package/src/components/theme/tokens.ts +5 -1
  369. package/src/components/time/TimeRow.tsx +23 -3
  370. package/src/components/time/TypedTime.tsx +3 -1
  371. package/src/components/time/Wheel.tsx +19 -5
  372. package/src/components/time/timeStyles.ts +2 -3
  373. package/src/components/types.ts +86 -4
  374. package/src/core/calendarSystem.ts +145 -21
  375. package/src/core/digits.ts +21 -0
  376. package/src/core/draft.ts +41 -13
  377. package/src/core/locale.ts +20 -3
  378. package/src/core/numerals.ts +35 -0
  379. package/src/core/segmentEditor.ts +13 -0
  380. package/src/core/segments.ts +0 -8
  381. package/src/core/selectionRules.ts +3 -2
  382. package/src/core/timeEntry.ts +6 -96
  383. package/src/icons/index.tsx +3 -1
  384. package/src/index.tsx +12 -2
@@ -3,14 +3,16 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.toHijri = exports.resolveCalendarSystem = exports.resetHijriSupportCache = exports.monthSystemFor = exports.isHijriSupported = exports.hijriMonthStart = exports.hijriMonthNames = exports.hijriMonthLength = exports.daysOfMonth = exports.buildSystemGrid = exports.addHijriMonths = exports.HIJRI_MONTHS_EN = exports.HIJRI = exports.GREGORIAN = void 0;
6
+ exports.toHijri = exports.resolveCalendarSystem = exports.resetHijriSupportCache = exports.monthSystemFor = exports.isHijriSupported = exports.hijriPeriods = exports.hijriMonthStart = exports.hijriMonthNames = exports.hijriMonthLength = exports.hijriDateText = exports.daysOfMonth = exports.buildSystemGrid = exports.addHijriMonths = exports.HIJRI_MONTHS_EN = exports.HIJRI = exports.GREGORIAN = void 0;
7
7
  var _calendarDate = require("./calendarDate.js");
8
+ var _digits = require("./digits.js");
9
+ var _locale = require("./locale.js");
8
10
  /**
9
- * Calendar systems for the picker grid. Saved values are always Gregorian;
10
- * a system only changes how months are laid out and labelled.
11
+ * Calendar systems for the picker. Saved values are always Gregorian; a
12
+ * system only changes how months are laid out and labelled.
11
13
  * - 'gregory': the normal grid;
12
- * - 'dual': the Gregorian grid with the Hijri day under each day;
13
- * - 'hijri': a Hijri (Umm al-Qura) grid showing only the Hijri day.
14
+ * - 'hijri': a Hijri (Umm al-Qura) grid showing the Hijri day;
15
+ * - 'dual': both, as Gregorian and Hijri tabs showing one grid at a time.
14
16
  *
15
17
  * Hijri dates come from the platform's Intl ('islamic-umalqura'). When Intl
16
18
  * can't do it (checked once; some JS engines ship without that calendar) the
@@ -48,16 +50,8 @@ const utcDate = (year, monthIndex, day, hour = 0) => {
48
50
  return d;
49
51
  };
50
52
 
51
- /**
52
- * The locale with the Umm al-Qura calendar, keeping any Unicode extension it
53
- * already has ('ar-SA-u-nu-arab' → 'ar-SA-u-ca-islamic-umalqura-nu-arab').
54
- */
55
- const withHijriCalendar = locale => {
56
- const [base, ext] = locale.split(/-u-/i);
57
- if (ext === undefined) return `${locale}-u-ca-islamic-umalqura`;
58
- const rest = ext.replace(/(^|-)ca(-[a-z0-9]{3,8})+/i, '').replace(/^-/, '');
59
- return `${base}-u-ca-islamic-umalqura${rest ? `-${rest}` : ''}`;
60
- };
53
+ /** The locale with the Umm al-Qura calendar ('ar-SA-u-nu-arab' → 'ar-SA-u-ca-islamic-umalqura-nu-arab'). */
54
+ const withHijriCalendar = locale => (0, _locale.withCalendar)(locale, 'islamic-umalqura');
61
55
  const readParts = (f, d) => {
62
56
  const parts = f.formatToParts(utcDate(d.year, d.month - 1, d.day, 12));
63
57
  const num = type => Number(parts.find(p => p.type === type)?.value);
@@ -69,21 +63,46 @@ const readParts = (f, d) => {
69
63
  return Number.isFinite(out.year) && Number.isFinite(out.month) && Number.isFinite(out.day) ? out : null;
70
64
  };
71
65
 
66
+ /**
67
+ * Remembers results by key. Every tap redraws the grid and its labels, and
68
+ * Intl is slow on some engines (Hermes on Android), so Hijri conversions are
69
+ * worked out once. Cleared when full, to stay small.
70
+ */
71
+ const memoize = (limit = 4000) => {
72
+ const map = new Map();
73
+ return {
74
+ get: (key, make) => {
75
+ if (map.has(key)) return map.get(key);
76
+ const value = make();
77
+ if (map.size >= limit) map.clear();
78
+ map.set(key, value);
79
+ return value;
80
+ },
81
+ clear: () => map.clear()
82
+ };
83
+ };
84
+ const hijriDays = memoize();
85
+ const hijriStarts = memoize(600);
86
+ const hijriTexts = memoize();
87
+
72
88
  /** Whether this device can show Hijri dates. */
73
89
  const isHijriSupported = () => getHijriFormat() !== null;
74
90
 
75
- /** Test hook: forget the cached Intl check. */
91
+ /** Test hook: forget the cached Intl check and what was worked out with it. */
76
92
  exports.isHijriSupported = isHijriSupported;
77
93
  const resetHijriSupportCache = () => {
78
94
  hijriFormat = undefined;
95
+ hijriDays.clear();
96
+ hijriStarts.clear();
97
+ hijriTexts.clear();
79
98
  };
80
99
 
81
100
  /** Gregorian day → Hijri {year, month, day}, or null when unsupported. */
82
101
  exports.resetHijriSupportCache = resetHijriSupportCache;
83
- const toHijri = d => {
102
+ const toHijri = d => hijriDays.get(`${d.year}-${d.month}-${d.day}`, () => {
84
103
  const f = getHijriFormat();
85
104
  return f ? readParts(f, d) : null;
86
- };
105
+ });
87
106
  exports.toHijri = toHijri;
88
107
  const HIJRI_EPOCH = {
89
108
  year: 622,
@@ -95,7 +114,9 @@ const MEAN_MONTH = 29.5306;
95
114
  const cmp = (a, b) => a.year - b.year || a.month - b.month;
96
115
 
97
116
  /** The Gregorian day on which a Hijri month starts. */
98
- const hijriMonthStart = (year, month) => {
117
+ const hijriMonthStart = (year, month) => hijriStarts.get(`${year}-${month}`, () => findMonthStart(year, month));
118
+ exports.hijriMonthStart = hijriMonthStart;
119
+ const findMonthStart = (year, month) => {
99
120
  const estimate = Math.round((year - 1) * MEAN_YEAR + (month - 1) * MEAN_MONTH);
100
121
  let day = (0, _calendarDate.addDays)(HIJRI_EPOCH, estimate);
101
122
  // The estimate is within a few days; walk to the 1st of the right month.
@@ -111,12 +132,12 @@ const hijriMonthStart = (year, month) => {
111
132
  }
112
133
  return day;
113
134
  };
114
- exports.hijriMonthStart = hijriMonthStart;
115
135
  const addHijriMonths = (m, n) => {
116
136
  const index = m.year * 12 + (m.month - 1) + n;
137
+ // % keeps the sign in JS, so a year before 1 AH still gets months 1–12.
117
138
  return {
118
139
  year: Math.floor(index / 12),
119
- month: index % 12 + 1
140
+ month: (index % 12 + 12) % 12 + 1
120
141
  };
121
142
  };
122
143
  exports.addHijriMonths = addHijriMonths;
@@ -131,14 +152,25 @@ const hijriMonthLength = (year, month) => {
131
152
  };
132
153
  exports.hijriMonthLength = hijriMonthLength;
133
154
  const HIJRI_MONTHS_EN = exports.HIJRI_MONTHS_EN = ['Muharram', 'Safar', 'Rabiʻ I', 'Rabiʻ II', 'Jumada I', 'Jumada II', 'Rajab', 'Shaʻban', 'Ramadan', 'Shawwal', 'Dhuʻl-Qiʻdah', 'Dhuʻl-Hijjah'];
155
+ const monthNameCache = new Map();
134
156
 
135
157
  /** Hijri month names in the user's language (Intl), English otherwise. */
136
158
  const hijriMonthNames = locale => {
159
+ const hit = monthNameCache.get(locale);
160
+ if (hit) return hit;
161
+ const names = readHijriMonthNames(locale);
162
+ monthNameCache.set(locale, names);
163
+ return names;
164
+ };
165
+ exports.hijriMonthNames = hijriMonthNames;
166
+ const readHijriMonthNames = locale => {
137
167
  try {
138
168
  const f = new Intl.DateTimeFormat(withHijriCalendar(locale), {
139
169
  timeZone: 'UTC',
140
170
  month: 'long'
141
171
  });
172
+ // A locale Intl doesn't know drops the calendar and would give Gregorian names.
173
+ if (f.resolvedOptions().calendar !== 'islamic-umalqura') return HIJRI_MONTHS_EN;
142
174
  return HIJRI_MONTHS_EN.map((fallback, i) => {
143
175
  const start = hijriMonthStart(1448, i + 1);
144
176
  const name = f.format(utcDate(start.year, start.month - 1, start.day + 10, 12));
@@ -148,12 +180,81 @@ const hijriMonthNames = locale => {
148
180
  return HIJRI_MONTHS_EN;
149
181
  }
150
182
  };
183
+ const dateTextFormats = new Map();
184
+
185
+ /**
186
+ * A Gregorian day written as a Hijri date in the user's language, in 0–9
187
+ * ('16 Jumada I 1448 AH', '16 جمادى الأولى 1448 هـ'), or null when unsupported.
188
+ */
189
+ const hijriDateText = (d, locale) => hijriTexts.get(`${locale}|${d.year}-${d.month}-${d.day}`, () => writeHijriDate(d, locale));
190
+ exports.hijriDateText = hijriDateText;
191
+ const writeHijriDate = (d, locale) => {
192
+ const h = toHijri(d);
193
+ if (!h) return null;
194
+ if (!dateTextFormats.has(locale)) {
195
+ let f = null;
196
+ try {
197
+ f = new Intl.DateTimeFormat(withHijriCalendar(locale), {
198
+ timeZone: 'UTC',
199
+ day: 'numeric',
200
+ month: 'long',
201
+ year: 'numeric'
202
+ });
203
+ } catch {
204
+ f = null;
205
+ }
206
+ // A locale Intl doesn't know drops the calendar: build the text instead.
207
+ dateTextFormats.set(locale, f?.resolvedOptions().calendar === 'islamic-umalqura' ? f : null);
208
+ }
209
+ const f = dateTextFormats.get(locale);
210
+ const text = f ? (0, _digits.toLatinDigits)(f.format(utcDate(d.year, d.month - 1, d.day, 12))) : '';
211
+ // An engine that ignores the calendar writes the Gregorian year: build it instead.
212
+ if (text.includes(String(h.year))) return text;
213
+ return `${h.day} ${hijriMonthNames(locale)[h.month - 1]} ${h.year}`;
214
+ };
215
+ const ARABIC_PERIODS = {
216
+ am: 'ص',
217
+ pm: 'م'
218
+ };
219
+ const periodCache = new Map();
220
+
221
+ /**
222
+ * AM and PM in the Hijri locale's language, as Intl writes them ('ar-SA' →
223
+ * ص / م). An Arabic locale whose engine gives none, or Latin ones, gets ص / م;
224
+ * another locale gets null (the picker keeps strings.am / pm).
225
+ */
226
+ const hijriPeriods = locale => {
227
+ if (!periodCache.has(locale)) periodCache.set(locale, readPeriods(locale));
228
+ return periodCache.get(locale);
229
+ };
230
+ exports.hijriPeriods = hijriPeriods;
231
+ const readPeriods = locale => {
232
+ const arabic = /^ar\b/i.test(locale);
233
+ try {
234
+ const f = new Intl.DateTimeFormat(locale, {
235
+ timeZone: 'UTC',
236
+ hour: 'numeric',
237
+ hour12: true
238
+ });
239
+ const period = hour => f.formatToParts(utcDate(2026, 0, 1, hour))
240
+ // Some engines write the part type in lower case.
241
+ .find(p => p.type.toLowerCase() === 'dayperiod')?.value.trim();
242
+ const am = period(9);
243
+ const pm = period(21);
244
+ if (am && pm && am !== pm && !(arabic && /[A-Za-z]/.test(am + pm))) return {
245
+ am,
246
+ pm
247
+ };
248
+ } catch {
249
+ // An engine without this locale falls through.
250
+ }
251
+ return arabic ? ARABIC_PERIODS : null;
252
+ };
151
253
 
152
254
  /**
153
255
  * The system the picker uses: the requested one, Gregorian by default.
154
256
  * Anything Hijri falls back to Gregorian when unsupported.
155
257
  */
156
- exports.hijriMonthNames = hijriMonthNames;
157
258
  const resolveCalendarSystem = requested => {
158
259
  const wanted = requested ?? 'gregory';
159
260
  return wanted !== 'gregory' && !isHijriSupported() ? 'gregory' : wanted;
@@ -1 +1 @@
1
- {"version":3,"names":["_calendarDate","require","HIJRI_LOCALE","hijriFormat","getHijriFormat","undefined","f","Intl","DateTimeFormat","timeZone","year","month","day","ok","resolvedOptions","calendar","formatToParts","readParts","utcDate","monthIndex","hour","d","Date","UTC","setUTCFullYear","withHijriCalendar","locale","base","ext","split","rest","replace","parts","num","type","Number","find","p","value","out","isFinite","isHijriSupported","exports","resetHijriSupportCache","toHijri","HIJRI_EPOCH","MEAN_YEAR","MEAN_MONTH","cmp","a","b","hijriMonthStart","estimate","Math","round","addDays","i","h","order","addHijriMonths","m","n","index","floor","hijriMonthLength","next","getTime","HIJRI_MONTHS_EN","hijriMonthNames","map","fallback","start","name","format","test","resolveCalendarSystem","requested","wanted","GREGORIAN","kind","monthOf","monthStart","monthLength","daysInMonth","addMonths","dayNumber","HIJRI","monthSystemFor","system","buildSystemGrid","sys","firstDayOfWeek","length","lead","weekdayOf","first","cells","Array","from","_","date","inMonth","weekCount","ceil","daysOfMonth"],"sourceRoot":"../../../src","sources":["core/calendarSystem.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_calendarDate","require","_digits","_locale","HIJRI_LOCALE","hijriFormat","getHijriFormat","undefined","f","Intl","DateTimeFormat","timeZone","year","month","day","ok","resolvedOptions","calendar","formatToParts","readParts","utcDate","monthIndex","hour","d","Date","UTC","setUTCFullYear","withHijriCalendar","locale","withCalendar","parts","num","type","Number","find","p","value","out","isFinite","memoize","limit","map","Map","get","key","make","has","size","clear","set","hijriDays","hijriStarts","hijriTexts","isHijriSupported","exports","resetHijriSupportCache","toHijri","HIJRI_EPOCH","MEAN_YEAR","MEAN_MONTH","cmp","a","b","hijriMonthStart","findMonthStart","estimate","Math","round","addDays","i","h","order","addHijriMonths","m","n","index","floor","hijriMonthLength","next","getTime","HIJRI_MONTHS_EN","monthNameCache","hijriMonthNames","hit","names","readHijriMonthNames","fallback","start","name","format","test","dateTextFormats","hijriDateText","writeHijriDate","text","toLatinDigits","includes","String","ARABIC_PERIODS","am","pm","periodCache","hijriPeriods","readPeriods","arabic","hour12","period","toLowerCase","trim","resolveCalendarSystem","requested","wanted","GREGORIAN","kind","monthOf","monthStart","monthLength","daysInMonth","addMonths","dayNumber","HIJRI","monthSystemFor","system","buildSystemGrid","sys","firstDayOfWeek","length","lead","weekdayOf","first","cells","Array","from","_","date","inMonth","weekCount","ceil","daysOfMonth"],"sourceRoot":"../../../src","sources":["core/calendarSystem.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.toLatinDigits = void 0;
7
+ /**
8
+ * The zero of each decimal digit block a keyboard may type in: Arabic-Indic
9
+ * (٠–٩), Persian (۰–۹), N'Ko, the Indic scripts, Thai, Lao, Tibetan, Myanmar,
10
+ * Khmer, Mongolian and full-width. Each block runs zero to nine in order.
11
+ */
12
+ const DIGIT_ZEROS = [0x0660, 0x06f0, 0x07c0, 0x0966, 0x09e6, 0x0a66, 0x0ae6, 0x0b66, 0x0be6, 0x0c66, 0x0ce6, 0x0d66, 0x0e50, 0x0ed0, 0x0f20, 0x1040, 0x17e0, 0x1810, 0xff10];
13
+
14
+ /** Any decimal digits as 0–9 ('٢٥' → '25'); other characters are kept. */
15
+ const toLatinDigits = text => {
16
+ let out = '';
17
+ for (const ch of text) {
18
+ const code = ch.charCodeAt(0);
19
+ const zero = DIGIT_ZEROS.find(z => code >= z && code <= z + 9);
20
+ out += zero === undefined ? ch : String(code - zero);
21
+ }
22
+ return out;
23
+ };
24
+ exports.toLatinDigits = toLatinDigits;
25
+ //# sourceMappingURL=digits.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DIGIT_ZEROS","toLatinDigits","text","out","ch","code","charCodeAt","zero","find","z","undefined","String","exports"],"sourceRoot":"../../../src","sources":["core/digits.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA,MAAMA,WAAW,GAAG,CAClB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EACtE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EACtE,MAAM,CACP;;AAED;AACO,MAAMC,aAAa,GAAIC,IAAY,IAAa;EACrD,IAAIC,GAAG,GAAG,EAAE;EACZ,KAAK,MAAMC,EAAE,IAAIF,IAAI,EAAE;IACrB,MAAMG,IAAI,GAAGD,EAAE,CAACE,UAAU,CAAC,CAAC,CAAC;IAC7B,MAAMC,IAAI,GAAGP,WAAW,CAACQ,IAAI,CAAEC,CAAC,IAAKJ,IAAI,IAAII,CAAC,IAAIJ,IAAI,IAAII,CAAC,GAAG,CAAC,CAAC;IAChEN,GAAG,IAAII,IAAI,KAAKG,SAAS,GAAGN,EAAE,GAAGO,MAAM,CAACN,IAAI,GAAGE,IAAI,CAAC;EACtD;EACA,OAAOJ,GAAG;AACZ,CAAC;AAACS,OAAA,CAAAX,aAAA,GAAAA,aAAA","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.validateDraft = exports.setTime = exports.setSlotValue = exports.setRangeEnd = exports.selectDay = exports.emptyDraft = exports.draftToWire = exports.createDraft = exports.clearDraft = exports.DEFAULT_TIME = void 0;
6
+ exports.validateDraft = exports.setTime = exports.setSlotValue = exports.setRangeEnd = exports.selectDay = exports.sameDayRangeOk = exports.emptyDraft = exports.draftToWire = exports.createDraft = exports.clearDraft = exports.DEFAULT_TIME = void 0;
7
7
  var _calendarDate = require("./calendarDate.js");
8
8
  var _zoned = require("./zoned.js");
9
9
  /**
@@ -85,8 +85,12 @@ const createDraft = (mode, value, opts) => {
85
85
  };
86
86
  }
87
87
  if (mode === 'multiple') {
88
- const slots = sortSlots(splitMultiple(safe).map(w => slotFrom(w, opts)).filter(s => s.value));
89
- const sharedTime = opts.type === 'datetime' ? slots[0]?.value?.time ?? null : null;
88
+ // One slot per day: a later value on a day already listed is dropped.
89
+ const slots = sortSlots(splitMultiple(safe).map(w => slotFrom(w, opts)).filter((s, i, all) => s.value && all.findIndex(o => (0, _calendarDate.isSameDay)(o.value?.date, s.value?.date)) === i));
90
+ const times = slots.map(s => s.value?.time ?? null);
91
+ const first = times[0] ?? null;
92
+ const sameTime = times.every(t => t?.hour === first?.hour && t?.minute === first?.minute);
93
+ const sharedTime = opts.type === 'datetime' && sameTime ? first : null;
90
94
  return {
91
95
  mode,
92
96
  slots,
@@ -112,11 +116,16 @@ const withDay = (slot, day, opts, newDayTime) => {
112
116
  }
113
117
  };
114
118
  };
119
+
120
+ /**
121
+ * Whether a range may start and end on one day: date-time ranges and
122
+ * `allowSameDay` date ranges, as long as minDays allows a 1-day range.
123
+ */
124
+ const sameDayRangeOk = opts => (opts.type === 'datetime' || !!opts.range?.allowSameDay) && (opts.range?.minDays ?? 1) <= 1;
125
+ exports.sameDayRangeOk = sameDayRangeOk;
115
126
  const pickRangeDay = (draft, day, opts, eq) => {
116
127
  const from = draft.from.value?.date;
117
128
  const to = draft.to.value?.date;
118
- // A same-day range is 1 day long, so it's only an end when minDays allows it.
119
- const allowSameDay = (opts.type === 'datetime' || !!opts.range?.allowSameDay) && (opts.range?.minDays ?? 1) <= 1;
120
129
  if (!from) return {
121
130
  ...draft,
122
131
  from: withDay(draft.from, day, opts, eq)
@@ -127,7 +136,8 @@ const pickRangeDay = (draft, day, opts, eq) => {
127
136
  ...draft,
128
137
  from: withDay(draft.from, day, opts, eq)
129
138
  };
130
- if (order === 0 && !allowSameDay) return {
139
+ // The start tapped again, where it can't also be the end: deselects it.
140
+ if (order === 0 && !sameDayRangeOk(opts)) return {
131
141
  ...draft,
132
142
  from: {
133
143
  ...draft.from,
@@ -189,23 +199,34 @@ const selectDay = (draft, day, opts, newDayTime) => {
189
199
  },
190
200
  initialWire: ''
191
201
  }]),
192
- sharedTime: opts.type === 'datetime' && !perDate ? draft.sharedTime ?? time : draft.sharedTime
202
+ // The first date's time becomes the shared one; dates with their own
203
+ // (different) times keep them.
204
+ sharedTime: opts.type === 'datetime' && !perDate && draft.slots.length === 0 ? draft.sharedTime ?? time : draft.sharedTime
193
205
  };
194
206
  };
195
207
 
196
208
  /**
197
209
  * From/To layout: a tap fills the end being edited. An end that would come
198
- * before the start (or after the end) clears the other one.
210
+ * before the start (or after the end) clears the other one. The start tapped
211
+ * again as the end, where a range can't be one day, deselects the start, as
212
+ * in the single field.
199
213
  */
200
214
  exports.selectDay = selectDay;
201
215
  const setRangeEnd = (draft, day, end, opts, newDayTime) => {
202
216
  if (draft.mode !== 'range') return draft;
203
- const sameDayOk = opts.type === 'datetime' || !!opts.range?.allowSameDay;
217
+ const sameDayOk = sameDayRangeOk(opts);
204
218
  const fits = (from, to) => {
205
219
  if (!from || !to) return true;
206
220
  const order = (0, _calendarDate.compareCalendarDates)(to, from);
207
221
  return order > 0 || order === 0 && sameDayOk;
208
222
  };
223
+ if (end === 'to' && !sameDayOk && (0, _calendarDate.isSameDay)(draft.from.value?.date, day)) return {
224
+ ...draft,
225
+ from: {
226
+ ...draft.from,
227
+ value: null
228
+ }
229
+ };
209
230
  if (end === 'from') {
210
231
  const from = withDay(draft.from, day, opts, newDayTime);
211
232
  const keepTo = fits(day, draft.to.value?.date);
@@ -341,7 +362,7 @@ const effectiveValue = (slot, draft, opts) => {
341
362
  if (draft.mode === 'multiple' && opts.type === 'datetime' && opts.multiple?.timeMode !== 'perDate') {
342
363
  return {
343
364
  ...slot.value,
344
- time: draft.sharedTime
365
+ time: draft.sharedTime ?? slot.value.time
345
366
  };
346
367
  }
347
368
  return slot.value;
@@ -1 +1 @@
1
- {"version":3,"names":["_calendarDate","require","_zoned","DEFAULT_TIME","exports","hour","minute","contextOf","opts","type","timeZone","zone","parseWire","wire","adapter","parse","slotFrom","value","initialWire","emptySlot","splitMultiple","Array","isArray","filter","Boolean","readRange","from","to","sortSlots","slots","sort","a","b","compareCalendarDates","date","createDraft","mode","safe","map","w","s","sharedTime","time","slot","timeForNewDay","existing","newDayTime","defaultTime","withDay","day","pickRangeDay","draft","eq","allowSameDay","range","minDays","order","reselect","Math","abs","daysBetween","selectDay","findIndex","isSameDay","_","i","max","multiple","maxSelections","undefined","length","perDate","timeMode","setRangeEnd","end","sameDayOk","fits","keepTo","keepFrom","setSlotTime","setTime","target","setSlotValue","clearDraft","effectiveValue","isComplete","validateDraft","toZonedDateTime","maxDays","every","sameValue","slotToWire","formatUnchanged","format","draftToWire","emptyDraft"],"sourceRoot":"../../../src","sources":["core/draft.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_calendarDate","require","_zoned","DEFAULT_TIME","exports","hour","minute","contextOf","opts","type","timeZone","zone","parseWire","wire","adapter","parse","slotFrom","value","initialWire","emptySlot","splitMultiple","Array","isArray","filter","Boolean","readRange","from","to","sortSlots","slots","sort","a","b","compareCalendarDates","date","createDraft","mode","safe","map","w","s","i","all","findIndex","o","isSameDay","times","time","first","sameTime","every","t","sharedTime","slot","timeForNewDay","existing","newDayTime","defaultTime","withDay","day","sameDayRangeOk","range","allowSameDay","minDays","pickRangeDay","draft","eq","order","reselect","Math","abs","daysBetween","selectDay","_","max","multiple","maxSelections","undefined","length","perDate","timeMode","setRangeEnd","end","sameDayOk","fits","keepTo","keepFrom","setSlotTime","setTime","target","setSlotValue","clearDraft","effectiveValue","isComplete","validateDraft","toZonedDateTime","maxDays","sameValue","slotToWire","formatUnchanged","format","draftToWire","emptyDraft"],"sourceRoot":"../../../src","sources":["core/draft.ts"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.normalizeDateFormat = exports.deriveTimeFormat = exports.deriveFirstDayOfWeek = exports.deriveDateFormat = exports.defaultLocale = void 0;
6
+ exports.withCalendar = exports.normalizeDateFormat = exports.deriveTimeFormat = exports.deriveFirstDayOfWeek = exports.deriveDateFormat = exports.defaultLocale = void 0;
7
7
  /**
8
8
  * Locale defaults, read from the platform's Intl. Each helper falls back to a
9
9
  * fixed value when Intl is missing or doesn't know the locale.
@@ -15,10 +15,25 @@ const SEPARATORS = ['/', '-', '.'];
15
15
  const DATE_TOKENS = {
16
16
  day: 'dd',
17
17
  month: 'MM',
18
- year: 'yyyy'
18
+ year: 'yyyy',
19
+ // Hermes on Android labels the year of some locales (ar-SA) this way.
20
+ yearName: 'yyyy'
21
+ };
22
+
23
+ /**
24
+ * The locale with a calendar, keeping any Unicode extension it already has
25
+ * ('ar-SA-u-nu-arab' → 'ar-SA-u-ca-gregory-nu-arab'). Some engines write a
26
+ * locale in its own calendar by default (iOS: Hijri for 'ar-SA').
27
+ */
28
+ const withCalendar = (locale, calendar) => {
29
+ const [base, ext] = locale.split(/-u-/i);
30
+ if (ext === undefined) return `${locale}-u-ca-${calendar}`;
31
+ const rest = ext.replace(/(^|-)ca(-[a-z0-9]{3,8})+/i, '').replace(/^-/, '');
32
+ return `${base}-u-ca-${calendar}${rest ? `-${rest}` : ''}`;
19
33
  };
20
34
 
21
35
  /** The device locale (a BCP-47 tag), or 'en-US'. */
36
+ exports.withCalendar = withCalendar;
22
37
  const defaultLocale = () => {
23
38
  try {
24
39
  return Intl.DateTimeFormat().resolvedOptions().locale || FALLBACK_LOCALE;
@@ -36,14 +51,15 @@ const defaultLocale = () => {
36
51
  exports.defaultLocale = defaultLocale;
37
52
  const deriveDateFormat = locale => {
38
53
  try {
39
- const parts = new Intl.DateTimeFormat(locale, {
54
+ const parts = new Intl.DateTimeFormat(withCalendar(locale, 'gregory'), {
40
55
  year: 'numeric',
41
56
  month: '2-digit',
42
57
  day: '2-digit'
43
58
  }).formatToParts(new Date(Date.UTC(2006, 10, 22)));
44
59
  const tokens = parts.flatMap(p => DATE_TOKENS[p.type] ?? []);
45
60
  if (tokens.length !== 3 || !['dd', 'MM', 'yyyy'].every(t => tokens.includes(t))) return FALLBACK_DATE_FORMAT;
46
- const first = parts.find(p => p.type === 'literal')?.value ?? '';
61
+ // RTL locales mark the separator with a direction mark ('\u200F/').
62
+ const first = (parts.find(p => p.type === 'literal')?.value ?? '').replace(/[\u200E\u200F\u061C]/g, '');
47
63
  const separator = SEPARATORS.includes(first) ? first : '/';
48
64
  return tokens.join(separator);
49
65
  } catch {
@@ -1 +1 @@
1
- {"version":3,"names":["FALLBACK_LOCALE","FALLBACK_DATE_FORMAT","SEPARATORS","DATE_TOKENS","day","month","year","defaultLocale","Intl","DateTimeFormat","resolvedOptions","locale","exports","deriveDateFormat","parts","formatToParts","Date","UTC","tokens","flatMap","p","type","length","every","t","includes","first","find","value","separator","join","DATE_FORMAT_PATTERN","normalizeDateFormat","format","m","exec","trim","map","toLowerCase","Set","size","deriveTimeFormat","hour","cycle","hourCycle","some","FRIDAY_REGIONS","SATURDAY_REGIONS","split","SUNDAY_REGIONS","regionOf","part","slice","test","toUpperCase","deriveFirstDayOfWeek","region","has"],"sourceRoot":"../../../src","sources":["core/locale.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["FALLBACK_LOCALE","FALLBACK_DATE_FORMAT","SEPARATORS","DATE_TOKENS","day","month","year","yearName","withCalendar","locale","calendar","base","ext","split","undefined","rest","replace","exports","defaultLocale","Intl","DateTimeFormat","resolvedOptions","deriveDateFormat","parts","formatToParts","Date","UTC","tokens","flatMap","p","type","length","every","t","includes","first","find","value","separator","join","DATE_FORMAT_PATTERN","normalizeDateFormat","format","m","exec","trim","map","toLowerCase","Set","size","deriveTimeFormat","hour","cycle","hourCycle","some","FRIDAY_REGIONS","SATURDAY_REGIONS","SUNDAY_REGIONS","regionOf","part","slice","test","toUpperCase","deriveFirstDayOfWeek","region","has"],"sourceRoot":"../../../src","sources":["core/locale.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.localeDigits = exports.latinDigits = exports.arabicDigits = void 0;
7
+ /**
8
+ * Which digits the picker shows: 0–9, Arabic-Indic (١٢٣) in any language, or
9
+ * the locale's own (١٢٣ for 'ar-SA', ۱۲۳ for 'fa-IR', 123 for 'en-US').
10
+ */
11
+
12
+ const latinDigits = text => text;
13
+
14
+ /** Swaps 0–9 in a text for Arabic-Indic digits (٠–٩). */
15
+ exports.latinDigits = latinDigits;
16
+ const arabicDigits = text => text.replace(/[0-9]/g, d => String.fromCharCode(0x0660 + Number(d)));
17
+ exports.arabicDigits = arabicDigits;
18
+ const cache = new Map();
19
+
20
+ /**
21
+ * Swaps 0–9 in a text for the locale's own digits, as `Intl` writes them
22
+ * ('ar-SA' → ٠–٩, 'fa' → ۰–۹). Latin when the locale uses 0–9 or `Intl` can't
23
+ * tell.
24
+ */
25
+ const localeDigits = locale => {
26
+ const hit = cache.get(locale);
27
+ if (hit) return hit;
28
+ let swap = latinDigits;
29
+ try {
30
+ const f = new Intl.NumberFormat(locale, {
31
+ useGrouping: false
32
+ });
33
+ const digits = Array.from({
34
+ length: 10
35
+ }, (_, i) => f.format(i));
36
+ if (digits[0] !== '0' && digits.every(d => [...d].length === 1)) {
37
+ swap = text => text.replace(/[0-9]/g, d => digits[Number(d)]);
38
+ }
39
+ } catch {
40
+ // An engine without this locale keeps 0–9.
41
+ }
42
+ cache.set(locale, swap);
43
+ return swap;
44
+ };
45
+ exports.localeDigits = localeDigits;
46
+ //# sourceMappingURL=numerals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["latinDigits","text","exports","arabicDigits","replace","d","String","fromCharCode","Number","cache","Map","localeDigits","locale","hit","get","swap","f","Intl","NumberFormat","useGrouping","digits","Array","from","length","_","i","format","every","set"],"sourceRoot":"../../../src","sources":["core/numerals.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;;AAGO,MAAMA,WAAW,GAAIC,IAAY,IAAaA,IAAI;;AAEzD;AAAAC,OAAA,CAAAF,WAAA,GAAAA,WAAA;AACO,MAAMG,YAAY,GAAIF,IAAY,IACvCA,IAAI,CAACG,OAAO,CAAC,QAAQ,EAAGC,CAAC,IAAKC,MAAM,CAACC,YAAY,CAAC,MAAM,GAAGC,MAAM,CAACH,CAAC,CAAC,CAAC,CAAC;AAACH,OAAA,CAAAC,YAAA,GAAAA,YAAA;AAEzE,MAAMM,KAAK,GAAG,IAAIC,GAAG,CAAmC,CAAC;;AAEzD;AACA;AACA;AACA;AACA;AACO,MAAMC,YAAY,GAAIC,MAAc,IAAiC;EAC1E,MAAMC,GAAG,GAAGJ,KAAK,CAACK,GAAG,CAACF,MAAM,CAAC;EAC7B,IAAIC,GAAG,EAAE,OAAOA,GAAG;EACnB,IAAIE,IAAI,GAAGf,WAAW;EACtB,IAAI;IACF,MAAMgB,CAAC,GAAG,IAAIC,IAAI,CAACC,YAAY,CAACN,MAAM,EAAE;MAAEO,WAAW,EAAE;IAAM,CAAC,CAAC;IAC/D,MAAMC,MAAM,GAAGC,KAAK,CAACC,IAAI,CAAC;MAAEC,MAAM,EAAE;IAAG,CAAC,EAAE,CAACC,CAAC,EAAEC,CAAC,KAAKT,CAAC,CAACU,MAAM,CAACD,CAAC,CAAC,CAAC;IAChE,IAAIL,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAIA,MAAM,CAACO,KAAK,CAAEtB,CAAC,IAAK,CAAC,GAAGA,CAAC,CAAC,CAACkB,MAAM,KAAK,CAAC,CAAC,EAAE;MACjER,IAAI,GAAId,IAAI,IAAKA,IAAI,CAACG,OAAO,CAAC,QAAQ,EAAGC,CAAC,IAAKe,MAAM,CAACZ,MAAM,CAACH,CAAC,CAAC,CAAE,CAAC;IACpE;EACF,CAAC,CAAC,MAAM;IACN;EAAA;EAEFI,KAAK,CAACmB,GAAG,CAAChB,MAAM,EAAEG,IAAI,CAAC;EACvB,OAAOA,IAAI;AACb,CAAC;AAACb,OAAA,CAAAS,YAAA,GAAAA,YAAA","ignoreList":[]}