react-native-paper-dates 0.6.0 → 0.7.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 (60) hide show
  1. package/lib/commonjs/Date/CalendarHeader.js +4 -0
  2. package/lib/commonjs/Date/CalendarHeader.js.map +1 -1
  3. package/lib/commonjs/Date/DatePickerModalContentHeader.js +1 -0
  4. package/lib/commonjs/Date/DatePickerModalContentHeader.js.map +1 -1
  5. package/lib/commonjs/Date/DatePickerModalHeader.js +1 -0
  6. package/lib/commonjs/Date/DatePickerModalHeader.js.map +1 -1
  7. package/lib/commonjs/Date/Day.js +2 -1
  8. package/lib/commonjs/Date/Day.js.map +1 -1
  9. package/lib/commonjs/Date/Month.js +2 -0
  10. package/lib/commonjs/Date/Month.js.map +1 -1
  11. package/lib/commonjs/Date/YearPicker.js +2 -0
  12. package/lib/commonjs/Date/YearPicker.js.map +1 -1
  13. package/lib/commonjs/Time/AnalogClock.js +4 -0
  14. package/lib/commonjs/Time/AnalogClock.js.map +1 -1
  15. package/lib/commonjs/translations/en.js +6 -1
  16. package/lib/commonjs/translations/en.js.map +1 -1
  17. package/lib/commonjs/translations/enGB.js +6 -1
  18. package/lib/commonjs/translations/enGB.js.map +1 -1
  19. package/lib/commonjs/translations/nl.js +6 -1
  20. package/lib/commonjs/translations/nl.js.map +1 -1
  21. package/lib/commonjs/translations/pl.js +6 -1
  22. package/lib/commonjs/translations/pl.js.map +1 -1
  23. package/lib/commonjs/translations/utils.js.map +1 -1
  24. package/lib/module/Date/CalendarHeader.js +3 -0
  25. package/lib/module/Date/CalendarHeader.js.map +1 -1
  26. package/lib/module/Date/DatePickerModalContentHeader.js +1 -0
  27. package/lib/module/Date/DatePickerModalContentHeader.js.map +1 -1
  28. package/lib/module/Date/DatePickerModalHeader.js +1 -0
  29. package/lib/module/Date/DatePickerModalHeader.js.map +1 -1
  30. package/lib/module/Date/Day.js +2 -1
  31. package/lib/module/Date/Day.js.map +1 -1
  32. package/lib/module/Date/Month.js +2 -0
  33. package/lib/module/Date/Month.js.map +1 -1
  34. package/lib/module/Date/YearPicker.js +2 -0
  35. package/lib/module/Date/YearPicker.js.map +1 -1
  36. package/lib/module/Time/AnalogClock.js +4 -0
  37. package/lib/module/Time/AnalogClock.js.map +1 -1
  38. package/lib/module/translations/en.js +6 -1
  39. package/lib/module/translations/en.js.map +1 -1
  40. package/lib/module/translations/enGB.js +6 -1
  41. package/lib/module/translations/enGB.js.map +1 -1
  42. package/lib/module/translations/nl.js +6 -1
  43. package/lib/module/translations/nl.js.map +1 -1
  44. package/lib/module/translations/pl.js +6 -1
  45. package/lib/module/translations/pl.js.map +1 -1
  46. package/lib/module/translations/utils.js.map +1 -1
  47. package/lib/typescript/translations/utils.d.ts +5 -0
  48. package/package.json +1 -8
  49. package/src/Date/CalendarHeader.tsx +3 -0
  50. package/src/Date/DatePickerModalContentHeader.tsx +5 -0
  51. package/src/Date/DatePickerModalHeader.tsx +1 -0
  52. package/src/Date/Day.tsx +1 -0
  53. package/src/Date/Month.tsx +2 -0
  54. package/src/Date/YearPicker.tsx +2 -0
  55. package/src/Time/AnalogClock.tsx +4 -0
  56. package/src/translations/en.ts +5 -0
  57. package/src/translations/enGB.ts +5 -0
  58. package/src/translations/nl.ts +5 -0
  59. package/src/translations/pl.ts +6 -0
  60. package/src/translations/utils.ts +5 -0
@@ -14,6 +14,8 @@ var _reactNativePaper = require("react-native-paper");
14
14
 
15
15
  var _DayNames = _interopRequireWildcard(require("./DayNames"));
16
16
 
17
+ var _utils = require("../translations/utils");
18
+
17
19
  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); }
18
20
 
19
21
  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; }
@@ -55,6 +57,7 @@ function CalendarHeader(_ref) {
55
57
  }]
56
58
  }, /*#__PURE__*/React.createElement(_reactNativePaper.IconButton, {
57
59
  icon: "chevron-left",
60
+ accessibilityLabel: (0, _utils.getTranslation)(locale, 'previous'),
58
61
  onPress: onPrev // RN types bug
59
62
  ,
60
63
  hasTVPreferredFocus: undefined,
@@ -65,6 +68,7 @@ function CalendarHeader(_ref) {
65
68
  }]
66
69
  }, /*#__PURE__*/React.createElement(_reactNativePaper.IconButton, {
67
70
  icon: "chevron-right",
71
+ accessibilityLabel: (0, _utils.getTranslation)(locale, 'next'),
68
72
  onPress: onNext // RN types bug
69
73
  ,
70
74
  hasTVPreferredFocus: undefined,
@@ -1 +1 @@
1
- {"version":3,"sources":["CalendarHeader.tsx"],"names":["buttonContainerHeight","buttonContainerMarginTop","buttonContainerMarginBottom","getCalendarHeaderHeight","scrollMode","dayNamesHeight","CalendarHeader","onPrev","onNext","disableWeekDays","locale","theme","isHorizontal","styles","datePickerHeader","buttonContainer","spacer","buttonWrapper","backgroundColor","colors","surface","undefined","StyleSheet","create","position","top","right","left","zIndex","height","marginTop","marginBottom","flexDirection","alignItems","flex","React","memo"],"mappings":";;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;AAGA,MAAMA,qBAAqB,GAAG,EAA9B;AACA,MAAMC,wBAAwB,GAAG,CAAjC;AACA,MAAMC,2BAA2B,GAAG,CAApC;;AAEO,SAASC,uBAAT,CAAiCC,UAAjC,EAAwE;AAC7E,MAAIA,UAAU,KAAK,YAAnB,EAAiC;AAC/B,WACEJ,qBAAqB,GACrBC,wBADA,GAEAC,2BAFA,GAGAG,wBAJF;AAMD;;AACD,SAAOA,wBAAP;AACD;;AAED,SAASC,cAAT,OAYG;AAAA,MAZqB;AACtBF,IAAAA,UADsB;AAEtBG,IAAAA,MAFsB;AAGtBC,IAAAA,MAHsB;AAItBC,IAAAA,eAJsB;AAKtBC,IAAAA;AALsB,GAYrB;AACD,QAAMC,KAAK,GAAG,iCAAd;AACA,QAAMC,YAAY,GAAGR,UAAU,KAAK,YAApC;AACA,sBACE,oBAAC,iBAAD;AAAM,IAAA,KAAK,EAAES,MAAM,CAACC,gBAApB;AAAsC,IAAA,aAAa,EAAE;AAArD,KACGF,YAAY,gBACX,oBAAC,iBAAD;AAAM,IAAA,KAAK,EAAEC,MAAM,CAACE,eAApB;AAAqC,IAAA,aAAa,EAAE;AAApD,kBACE,oBAAC,iBAAD;AAAM,IAAA,KAAK,EAAEF,MAAM,CAACG,MAApB;AAA4B,IAAA,aAAa,EAAE;AAA3C,IADF,eAEE,oBAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACLH,MAAM,CAACI,aADF,EAEL;AAAEC,MAAAA,eAAe,EAAEP,KAAK,CAACQ,MAAN,CAAaC;AAAhC,KAFK;AADT,kBAME,oBAAC,4BAAD;AACE,IAAA,IAAI,EAAC,cADP;AAEE,IAAA,OAAO,EAAEb,MAFX,CAGE;AAHF;AAIE,IAAA,mBAAmB,EAAEc,SAJvB;AAKE,IAAA,oBAAoB,EAAEA;AALxB,IANF,CAFF,eAiBE,oBAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACLR,MAAM,CAACI,aADF,EAEL;AAAEC,MAAAA,eAAe,EAAEP,KAAK,CAACQ,MAAN,CAAaC;AAAhC,KAFK;AADT,kBAME,oBAAC,4BAAD;AACE,IAAA,IAAI,EAAC,eADP;AAEE,IAAA,OAAO,EAAEZ,MAFX,CAGE;AAHF;AAIE,IAAA,mBAAmB,EAAEa,SAJvB;AAKE,IAAA,oBAAoB,EAAEA;AALxB,IANF,CAjBF,CADW,GAiCT,IAlCN,eAmCE,oBAAC,iBAAD;AAAU,IAAA,eAAe,EAAEZ,eAA3B;AAA4C,IAAA,MAAM,EAAEC;AAApD,IAnCF,CADF;AAuCD;;AAED,MAAMG,MAAM,GAAGS,wBAAWC,MAAX,CAAkB;AAC/BT,EAAAA,gBAAgB,EAAE;AAChBU,IAAAA,QAAQ,EAAE,UADM;AAEhBC,IAAAA,GAAG,EAAE,CAFW;AAGhBC,IAAAA,KAAK,EAAE,CAHS;AAIhBC,IAAAA,IAAI,EAAE,CAJU;AAKhBC,IAAAA,MAAM,EAAE;AALQ,GADa;AAQ/Bb,EAAAA,eAAe,EAAE;AACfc,IAAAA,MAAM,EAAE7B,qBADO;AAEf8B,IAAAA,SAAS,EAAE7B,wBAFI;AAGf8B,IAAAA,YAAY,EAAE7B,2BAHC;AAIf8B,IAAAA,aAAa,EAAE,KAJA;AAKfC,IAAAA,UAAU,EAAE;AALG,GARc;AAe/BhB,EAAAA,aAAa,EAAE,EAfgB;AAgB/BD,EAAAA,MAAM,EAAE;AAAEkB,IAAAA,IAAI,EAAE;AAAR;AAhBuB,CAAlB,CAAf;;4BAmBeC,KAAK,CAACC,IAAN,CAAW9B,cAAX,C","sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { IconButton, useTheme } from 'react-native-paper'\nimport DayNames, { dayNamesHeight } from './DayNames'\nimport type { DisableWeekDaysType } from './dateUtils'\n\nconst buttonContainerHeight = 56\nconst buttonContainerMarginTop = 4\nconst buttonContainerMarginBottom = 8\n\nexport function getCalendarHeaderHeight(scrollMode: 'horizontal' | 'vertical') {\n if (scrollMode === 'horizontal') {\n return (\n buttonContainerHeight +\n buttonContainerMarginTop +\n buttonContainerMarginBottom +\n dayNamesHeight\n )\n }\n return dayNamesHeight\n}\n\nfunction CalendarHeader({\n scrollMode,\n onPrev,\n onNext,\n disableWeekDays,\n locale,\n}: {\n locale: undefined | string\n scrollMode: 'horizontal' | 'vertical'\n onPrev: () => any\n onNext: () => any\n disableWeekDays?: DisableWeekDaysType\n}) {\n const theme = useTheme()\n const isHorizontal = scrollMode === 'horizontal'\n return (\n <View style={styles.datePickerHeader} pointerEvents={'box-none'}>\n {isHorizontal ? (\n <View style={styles.buttonContainer} pointerEvents={'box-none'}>\n <View style={styles.spacer} pointerEvents={'box-none'} />\n <View\n style={[\n styles.buttonWrapper,\n { backgroundColor: theme.colors.surface },\n ]}\n >\n <IconButton\n icon=\"chevron-left\"\n onPress={onPrev}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n </View>\n\n <View\n style={[\n styles.buttonWrapper,\n { backgroundColor: theme.colors.surface },\n ]}\n >\n <IconButton\n icon=\"chevron-right\"\n onPress={onNext}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n </View>\n </View>\n ) : null}\n <DayNames disableWeekDays={disableWeekDays} locale={locale} />\n </View>\n )\n}\n\nconst styles = StyleSheet.create({\n datePickerHeader: {\n position: 'absolute',\n top: 0,\n right: 0,\n left: 0,\n zIndex: 10,\n },\n buttonContainer: {\n height: buttonContainerHeight,\n marginTop: buttonContainerMarginTop,\n marginBottom: buttonContainerMarginBottom,\n flexDirection: 'row',\n alignItems: 'center',\n },\n buttonWrapper: {},\n spacer: { flex: 1 },\n})\n\nexport default React.memo(CalendarHeader)\n"]}
1
+ {"version":3,"sources":["CalendarHeader.tsx"],"names":["buttonContainerHeight","buttonContainerMarginTop","buttonContainerMarginBottom","getCalendarHeaderHeight","scrollMode","dayNamesHeight","CalendarHeader","onPrev","onNext","disableWeekDays","locale","theme","isHorizontal","styles","datePickerHeader","buttonContainer","spacer","buttonWrapper","backgroundColor","colors","surface","undefined","StyleSheet","create","position","top","right","left","zIndex","height","marginTop","marginBottom","flexDirection","alignItems","flex","React","memo"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { IconButton, useTheme } from 'react-native-paper'\nimport DayNames, { dayNamesHeight } from './DayNames'\nimport type { DisableWeekDaysType } from './dateUtils'\nimport { getTranslation } from '../translations/utils'\n\nconst buttonContainerHeight = 56\nconst buttonContainerMarginTop = 4\nconst buttonContainerMarginBottom = 8\n\nexport function getCalendarHeaderHeight(scrollMode: 'horizontal' | 'vertical') {\n if (scrollMode === 'horizontal') {\n return (\n buttonContainerHeight +\n buttonContainerMarginTop +\n buttonContainerMarginBottom +\n dayNamesHeight\n )\n }\n return dayNamesHeight\n}\n\nfunction CalendarHeader({\n scrollMode,\n onPrev,\n onNext,\n disableWeekDays,\n locale,\n}: {\n locale: undefined | string\n scrollMode: 'horizontal' | 'vertical'\n onPrev: () => any\n onNext: () => any\n disableWeekDays?: DisableWeekDaysType\n}) {\n const theme = useTheme()\n const isHorizontal = scrollMode === 'horizontal'\n return (\n <View style={styles.datePickerHeader} pointerEvents={'box-none'}>\n {isHorizontal ? (\n <View style={styles.buttonContainer} pointerEvents={'box-none'}>\n <View style={styles.spacer} pointerEvents={'box-none'} />\n <View\n style={[\n styles.buttonWrapper,\n { backgroundColor: theme.colors.surface },\n ]}\n >\n <IconButton\n icon=\"chevron-left\"\n accessibilityLabel={getTranslation(locale, 'previous')}\n onPress={onPrev}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n </View>\n\n <View\n style={[\n styles.buttonWrapper,\n { backgroundColor: theme.colors.surface },\n ]}\n >\n <IconButton\n icon=\"chevron-right\"\n accessibilityLabel={getTranslation(locale, 'next')}\n onPress={onNext}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n </View>\n </View>\n ) : null}\n <DayNames disableWeekDays={disableWeekDays} locale={locale} />\n </View>\n )\n}\n\nconst styles = StyleSheet.create({\n datePickerHeader: {\n position: 'absolute',\n top: 0,\n right: 0,\n left: 0,\n zIndex: 10,\n },\n buttonContainer: {\n height: buttonContainerHeight,\n marginTop: buttonContainerMarginTop,\n marginBottom: buttonContainerMarginBottom,\n flexDirection: 'row',\n alignItems: 'center',\n },\n buttonWrapper: {},\n spacer: { flex: 1 },\n})\n\nexport default React.memo(CalendarHeader)\n"]}
@@ -77,6 +77,7 @@ function DatePickerModalContentHeader(props) {
77
77
  style: styles.fill
78
78
  }), allowEditing ? /*#__PURE__*/React.createElement(_reactNativePaper.IconButton, {
79
79
  icon: collapsed ? 'pencil' : 'calendar',
80
+ accessibilityLabel: collapsed ? (0, _utils2.getTranslation)(props.locale, 'typeInDate') : (0, _utils2.getTranslation)(props.locale, 'pickDateFromCalendar'),
80
81
  color: color,
81
82
  onPress: onToggle // RN types bug
82
83
  ,
@@ -1 +1 @@
1
- {"version":3,"sources":["DatePickerModalContentHeader.tsx"],"names":["getLabel","locale","mode","configuredLabel","DatePickerModalContentHeader","props","onToggle","collapsed","moreLabel","label","color","allowEditing","styles","header","toUpperCase","headerContentContainer","fill","undefined","HeaderContentSingle","state","emptyLabel","lighterColor","fade","rgb","toString","dateColor","date","formatter","React","useMemo","Intl","DateTimeFormat","month","day","singleHeaderText","format","HeaderContentMulti","dateCount","dates","length","map","join","HeaderContentRange","headerSeparator","startLabel","endLabel","startColor","startDate","endColor","endDate","rangeHeaderText","StyleSheet","create","flex","animated","paddingBottom","elevation","safeContent","height","alignItems","flexDirection","paddingLeft","paddingRight","marginTop","letterSpacing","fontSize","excludeInRangeHeaderText","excludeInRangeHeaderTextSmall","marginLeft","appbarHeader","column","row"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { View, StyleSheet } from 'react-native'\nimport { IconButton, Text } from 'react-native-paper'\nimport type { ModeType } from './Calendar'\nimport type { LocalState } from './DatePickerModalContent'\nimport { useHeaderTextColor } from '../utils'\nimport Color from 'color'\nimport { getTranslation } from '../translations/utils'\n\nexport interface HeaderPickProps {\n moreLabel?: string\n label?: string\n emptyLabel?: string\n saveLabel?: string\n headerSeparator?: string\n startLabel?: string\n endLabel?: string\n}\n\nexport interface HeaderContentProps extends HeaderPickProps {\n state: LocalState\n mode: ModeType\n collapsed: boolean\n onToggle: () => any\n locale: string | undefined\n}\n\nfunction getLabel(\n locale: string | undefined,\n mode: ModeType,\n configuredLabel?: string\n) {\n if (configuredLabel) {\n return configuredLabel\n }\n if (mode === 'range') {\n return getTranslation(locale, 'selectRange')\n }\n if (mode === 'multiple') {\n return getTranslation(locale, 'selectMultiple')\n }\n if (mode === 'single') {\n return getTranslation(locale, 'selectSingle')\n }\n return '...?'\n}\n\nexport default function DatePickerModalContentHeader(\n props: HeaderContentProps\n) {\n const { onToggle, collapsed, mode, moreLabel } = props\n\n const label = getLabel(props.locale, props.mode, props.label)\n\n const color = useHeaderTextColor()\n const allowEditing = mode !== 'multiple'\n return (\n <View style={[styles.header]}>\n <View>\n <Text style={[styles.label, { color }]}>{label.toUpperCase()}</Text>\n\n <View style={styles.headerContentContainer}>\n {mode === 'range' ? (\n <HeaderContentRange {...props} color={color} />\n ) : null}\n {mode === 'single' ? (\n <HeaderContentSingle {...props} color={color} />\n ) : null}\n {mode === 'multiple' ? (\n <HeaderContentMulti\n {...props}\n color={color}\n moreLabel={moreLabel}\n />\n ) : null}\n </View>\n </View>\n <View style={styles.fill} />\n {allowEditing ? (\n <IconButton\n icon={collapsed ? 'pencil' : 'calendar'}\n color={color}\n onPress={onToggle}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n ) : null}\n </View>\n )\n}\n\nexport function HeaderContentSingle({\n state,\n emptyLabel = ' ',\n color,\n locale,\n}: HeaderContentProps & { color: string }) {\n const lighterColor = Color(color).fade(0.5).rgb().toString()\n const dateColor = state.date ? color : lighterColor\n\n const formatter = React.useMemo(() => {\n return new Intl.DateTimeFormat(locale, {\n month: 'short',\n day: 'numeric',\n })\n }, [locale])\n\n return (\n <Text style={[styles.singleHeaderText, { color: dateColor }]}>\n {state.date ? formatter.format(state.date) : emptyLabel}\n </Text>\n )\n}\n\nexport function HeaderContentMulti({\n state,\n emptyLabel = ' ',\n moreLabel = 'more',\n color,\n locale,\n}: HeaderContentProps & { color: string; moreLabel: string | undefined }) {\n const dateCount = state.dates?.length || 0\n const lighterColor = Color(color).fade(0.5).rgb().toString()\n const dateColor = dateCount ? color : lighterColor\n\n const formatter = React.useMemo(() => {\n return new Intl.DateTimeFormat(locale, {\n month: 'short',\n day: 'numeric',\n })\n }, [locale])\n\n let label = emptyLabel\n if (dateCount) {\n if (dateCount <= 2) {\n label = state.dates!.map((date) => formatter.format(date)).join(', ')\n } else {\n label =\n formatter.format(state.dates![0]) + ` (+ ${dateCount - 1} ${moreLabel})`\n }\n }\n\n return (\n <Text style={[styles.singleHeaderText, { color: dateColor }]}>{label}</Text>\n )\n}\n\nexport function HeaderContentRange({\n locale,\n state,\n headerSeparator = '-',\n startLabel = 'Start',\n endLabel = 'End',\n color,\n}: HeaderContentProps & { color: string }) {\n const formatter = React.useMemo(() => {\n return new Intl.DateTimeFormat(locale, {\n month: 'short',\n day: 'numeric',\n })\n }, [locale])\n\n const lighterColor = Color(color).fade(0.5).rgb().toString()\n const startColor = state.startDate ? color : lighterColor\n const endColor = state.endDate ? color : lighterColor\n\n return (\n <>\n <Text style={[styles.rangeHeaderText, { color: startColor }]}>\n {state.startDate ? formatter.format(state.startDate) : startLabel}\n </Text>\n <Text style={[styles.headerSeparator, { color }]}>{headerSeparator}</Text>\n <Text style={[styles.rangeHeaderText, { color: endColor }]}>\n {state.endDate ? formatter.format(state.endDate) : endLabel}\n </Text>\n </>\n )\n}\n\nconst styles = StyleSheet.create({\n fill: {\n flex: 1,\n },\n animated: {\n paddingBottom: 0,\n elevation: 4,\n },\n safeContent: {\n paddingBottom: 0,\n },\n header: {\n height: 75,\n alignItems: 'center',\n flexDirection: 'row',\n paddingLeft: 24,\n paddingRight: 12,\n },\n headerContentContainer: { marginTop: 5, flexDirection: 'row' },\n label: { color: '#fff', letterSpacing: 1, fontSize: 13 },\n singleHeaderText: { color: '#fff', fontSize: 25 },\n rangeHeaderText: { color: '#fff', fontSize: 25 },\n excludeInRangeHeaderText: { fontSize: 25 },\n excludeInRangeHeaderTextSmall: {\n fontSize: 14,\n marginTop: -3,\n marginLeft: 3,\n },\n\n headerSeparator: {\n color: 'rgba(255,255,255,1)',\n fontSize: 25,\n paddingLeft: 6,\n paddingRight: 6,\n },\n appbarHeader: {\n elevation: 0,\n },\n column: { flexDirection: 'column' },\n row: { flexDirection: 'row' },\n})\n"]}
1
+ {"version":3,"sources":["DatePickerModalContentHeader.tsx"],"names":["getLabel","locale","mode","configuredLabel","DatePickerModalContentHeader","props","onToggle","collapsed","moreLabel","label","color","allowEditing","styles","header","toUpperCase","headerContentContainer","fill","undefined","HeaderContentSingle","state","emptyLabel","lighterColor","fade","rgb","toString","dateColor","date","formatter","React","useMemo","Intl","DateTimeFormat","month","day","singleHeaderText","format","HeaderContentMulti","dateCount","dates","length","map","join","HeaderContentRange","headerSeparator","startLabel","endLabel","startColor","startDate","endColor","endDate","rangeHeaderText","StyleSheet","create","flex","animated","paddingBottom","elevation","safeContent","height","alignItems","flexDirection","paddingLeft","paddingRight","marginTop","letterSpacing","fontSize","excludeInRangeHeaderText","excludeInRangeHeaderTextSmall","marginLeft","appbarHeader","column","row"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { View, StyleSheet } from 'react-native'\nimport { IconButton, Text } from 'react-native-paper'\nimport type { ModeType } from './Calendar'\nimport type { LocalState } from './DatePickerModalContent'\nimport { useHeaderTextColor } from '../utils'\nimport Color from 'color'\nimport { getTranslation } from '../translations/utils'\n\nexport interface HeaderPickProps {\n moreLabel?: string\n label?: string\n emptyLabel?: string\n saveLabel?: string\n headerSeparator?: string\n startLabel?: string\n endLabel?: string\n}\n\nexport interface HeaderContentProps extends HeaderPickProps {\n state: LocalState\n mode: ModeType\n collapsed: boolean\n onToggle: () => any\n locale: string | undefined\n}\n\nfunction getLabel(\n locale: string | undefined,\n mode: ModeType,\n configuredLabel?: string\n) {\n if (configuredLabel) {\n return configuredLabel\n }\n if (mode === 'range') {\n return getTranslation(locale, 'selectRange')\n }\n if (mode === 'multiple') {\n return getTranslation(locale, 'selectMultiple')\n }\n if (mode === 'single') {\n return getTranslation(locale, 'selectSingle')\n }\n return '...?'\n}\n\nexport default function DatePickerModalContentHeader(\n props: HeaderContentProps\n) {\n const { onToggle, collapsed, mode, moreLabel } = props\n\n const label = getLabel(props.locale, props.mode, props.label)\n\n const color = useHeaderTextColor()\n const allowEditing = mode !== 'multiple'\n return (\n <View style={[styles.header]}>\n <View>\n <Text style={[styles.label, { color }]}>{label.toUpperCase()}</Text>\n\n <View style={styles.headerContentContainer}>\n {mode === 'range' ? (\n <HeaderContentRange {...props} color={color} />\n ) : null}\n {mode === 'single' ? (\n <HeaderContentSingle {...props} color={color} />\n ) : null}\n {mode === 'multiple' ? (\n <HeaderContentMulti\n {...props}\n color={color}\n moreLabel={moreLabel}\n />\n ) : null}\n </View>\n </View>\n <View style={styles.fill} />\n {allowEditing ? (\n <IconButton\n icon={collapsed ? 'pencil' : 'calendar'}\n accessibilityLabel={\n collapsed\n ? getTranslation(props.locale, 'typeInDate')\n : getTranslation(props.locale, 'pickDateFromCalendar')\n }\n color={color}\n onPress={onToggle}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n ) : null}\n </View>\n )\n}\n\nexport function HeaderContentSingle({\n state,\n emptyLabel = ' ',\n color,\n locale,\n}: HeaderContentProps & { color: string }) {\n const lighterColor = Color(color).fade(0.5).rgb().toString()\n const dateColor = state.date ? color : lighterColor\n\n const formatter = React.useMemo(() => {\n return new Intl.DateTimeFormat(locale, {\n month: 'short',\n day: 'numeric',\n })\n }, [locale])\n\n return (\n <Text style={[styles.singleHeaderText, { color: dateColor }]}>\n {state.date ? formatter.format(state.date) : emptyLabel}\n </Text>\n )\n}\n\nexport function HeaderContentMulti({\n state,\n emptyLabel = ' ',\n moreLabel = 'more',\n color,\n locale,\n}: HeaderContentProps & { color: string; moreLabel: string | undefined }) {\n const dateCount = state.dates?.length || 0\n const lighterColor = Color(color).fade(0.5).rgb().toString()\n const dateColor = dateCount ? color : lighterColor\n\n const formatter = React.useMemo(() => {\n return new Intl.DateTimeFormat(locale, {\n month: 'short',\n day: 'numeric',\n })\n }, [locale])\n\n let label = emptyLabel\n if (dateCount) {\n if (dateCount <= 2) {\n label = state.dates!.map((date) => formatter.format(date)).join(', ')\n } else {\n label =\n formatter.format(state.dates![0]) + ` (+ ${dateCount - 1} ${moreLabel})`\n }\n }\n\n return (\n <Text style={[styles.singleHeaderText, { color: dateColor }]}>{label}</Text>\n )\n}\n\nexport function HeaderContentRange({\n locale,\n state,\n headerSeparator = '-',\n startLabel = 'Start',\n endLabel = 'End',\n color,\n}: HeaderContentProps & { color: string }) {\n const formatter = React.useMemo(() => {\n return new Intl.DateTimeFormat(locale, {\n month: 'short',\n day: 'numeric',\n })\n }, [locale])\n\n const lighterColor = Color(color).fade(0.5).rgb().toString()\n const startColor = state.startDate ? color : lighterColor\n const endColor = state.endDate ? color : lighterColor\n\n return (\n <>\n <Text style={[styles.rangeHeaderText, { color: startColor }]}>\n {state.startDate ? formatter.format(state.startDate) : startLabel}\n </Text>\n <Text style={[styles.headerSeparator, { color }]}>{headerSeparator}</Text>\n <Text style={[styles.rangeHeaderText, { color: endColor }]}>\n {state.endDate ? formatter.format(state.endDate) : endLabel}\n </Text>\n </>\n )\n}\n\nconst styles = StyleSheet.create({\n fill: {\n flex: 1,\n },\n animated: {\n paddingBottom: 0,\n elevation: 4,\n },\n safeContent: {\n paddingBottom: 0,\n },\n header: {\n height: 75,\n alignItems: 'center',\n flexDirection: 'row',\n paddingLeft: 24,\n paddingRight: 12,\n },\n headerContentContainer: { marginTop: 5, flexDirection: 'row' },\n label: { color: '#fff', letterSpacing: 1, fontSize: 13 },\n singleHeaderText: { color: '#fff', fontSize: 25 },\n rangeHeaderText: { color: '#fff', fontSize: 25 },\n excludeInRangeHeaderText: { fontSize: 25 },\n excludeInRangeHeaderTextSmall: {\n fontSize: 14,\n marginTop: -3,\n marginLeft: 3,\n },\n\n headerSeparator: {\n color: 'rgba(255,255,255,1)',\n fontSize: 25,\n paddingLeft: 6,\n paddingRight: 6,\n },\n appbarHeader: {\n elevation: 0,\n },\n column: { flexDirection: 'column' },\n row: { flexDirection: 'row' },\n})\n"]}
@@ -34,6 +34,7 @@ function DatePickerModalHeader(props) {
34
34
  style: styles.appbarHeader
35
35
  }, /*#__PURE__*/React.createElement(_reactNativePaper.Appbar.Action, {
36
36
  icon: "close",
37
+ accessibilityLabel: (0, _utils2.getTranslation)(locale, 'close'),
37
38
  onPress: props.onDismiss,
38
39
  color: color,
39
40
  testID: "react-native-paper-dates-close" // RN types bug
@@ -1 +1 @@
1
- {"version":3,"sources":["DatePickerModalHeader.tsx"],"names":["DatePickerModalHeader","props","disableSafeTop","locale","saveLabel","color","styles","animated","safeContent","safeContentNoTop","appbarHeader","onDismiss","undefined","onSave","StyleSheet","create","fill","flex","paddingBottom","elevation","paddingTop","header","height","alignItems","flexDirection","paddingLeft","paddingRight","headerContentContainer","marginTop","label","letterSpacing","fontSize","singleHeaderText","rangeHeaderText","headerTextFilled","headerTextEmpty","headerSeparator","backgroundColor"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { Animated, StyleSheet, SafeAreaView } from 'react-native'\nimport { Appbar, Button } from 'react-native-paper'\n\nimport { useHeaderTextColor } from '../utils'\nimport { getTranslation } from '../translations/utils'\n\nexport interface DatePickerModalHeaderProps {\n disableSafeTop?: boolean\n saveLabel?: string\n onDismiss: () => void\n onSave: () => void\n locale: string | undefined\n}\n\nexport default function DatePickerModalHeader(\n props: DatePickerModalHeaderProps\n) {\n const { disableSafeTop, locale } = props\n const saveLabel = props.saveLabel || getTranslation(locale, 'save')\n const color = useHeaderTextColor()\n return (\n <>\n <Animated.View style={styles.animated}>\n <SafeAreaView\n style={[\n styles.safeContent,\n disableSafeTop && styles.safeContentNoTop,\n ]}\n >\n <Appbar style={styles.appbarHeader}>\n <Appbar.Action\n icon=\"close\"\n onPress={props.onDismiss}\n color={color}\n testID=\"react-native-paper-dates-close\"\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n <Appbar.Content title={''} />\n <Button\n color={color}\n onPress={props.onSave}\n testID=\"react-native-paper-dates-save\"\n >\n {saveLabel}\n </Button>\n </Appbar>\n </SafeAreaView>\n </Animated.View>\n </>\n )\n}\n\nconst styles = StyleSheet.create({\n fill: {\n flex: 1,\n },\n animated: {\n paddingBottom: 0,\n elevation: 4,\n },\n safeContent: {\n paddingBottom: 0,\n },\n safeContentNoTop: {\n paddingTop: 0,\n },\n header: {\n height: 75,\n alignItems: 'center',\n flexDirection: 'row',\n paddingLeft: 24,\n paddingRight: 12,\n },\n headerContentContainer: { marginTop: 5, flexDirection: 'row' },\n label: { color: '#fff', letterSpacing: 1, fontSize: 13 },\n singleHeaderText: { color: '#fff', fontSize: 25 },\n rangeHeaderText: { color: '#fff', fontSize: 25 },\n headerTextFilled: { color: 'rgba(255,255,255,1)' },\n headerTextEmpty: { color: 'rgba(255,255,255,0.5)' },\n headerSeparator: {\n color: 'rgba(255,255,255,1)',\n fontSize: 25,\n paddingLeft: 6,\n paddingRight: 6,\n },\n appbarHeader: {\n elevation: 0,\n backgroundColor: 'transparent',\n // alignItems:'center'\n },\n})\n"]}
1
+ {"version":3,"sources":["DatePickerModalHeader.tsx"],"names":["DatePickerModalHeader","props","disableSafeTop","locale","saveLabel","color","styles","animated","safeContent","safeContentNoTop","appbarHeader","onDismiss","undefined","onSave","StyleSheet","create","fill","flex","paddingBottom","elevation","paddingTop","header","height","alignItems","flexDirection","paddingLeft","paddingRight","headerContentContainer","marginTop","label","letterSpacing","fontSize","singleHeaderText","rangeHeaderText","headerTextFilled","headerTextEmpty","headerSeparator","backgroundColor"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { Animated, StyleSheet, SafeAreaView } from 'react-native'\nimport { Appbar, Button } from 'react-native-paper'\n\nimport { useHeaderTextColor } from '../utils'\nimport { getTranslation } from '../translations/utils'\n\nexport interface DatePickerModalHeaderProps {\n disableSafeTop?: boolean\n saveLabel?: string\n onDismiss: () => void\n onSave: () => void\n locale: string | undefined\n}\n\nexport default function DatePickerModalHeader(\n props: DatePickerModalHeaderProps\n) {\n const { disableSafeTop, locale } = props\n const saveLabel = props.saveLabel || getTranslation(locale, 'save')\n const color = useHeaderTextColor()\n return (\n <>\n <Animated.View style={styles.animated}>\n <SafeAreaView\n style={[\n styles.safeContent,\n disableSafeTop && styles.safeContentNoTop,\n ]}\n >\n <Appbar style={styles.appbarHeader}>\n <Appbar.Action\n icon=\"close\"\n accessibilityLabel={getTranslation(locale, 'close')}\n onPress={props.onDismiss}\n color={color}\n testID=\"react-native-paper-dates-close\"\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n <Appbar.Content title={''} />\n <Button\n color={color}\n onPress={props.onSave}\n testID=\"react-native-paper-dates-save\"\n >\n {saveLabel}\n </Button>\n </Appbar>\n </SafeAreaView>\n </Animated.View>\n </>\n )\n}\n\nconst styles = StyleSheet.create({\n fill: {\n flex: 1,\n },\n animated: {\n paddingBottom: 0,\n elevation: 4,\n },\n safeContent: {\n paddingBottom: 0,\n },\n safeContentNoTop: {\n paddingTop: 0,\n },\n header: {\n height: 75,\n alignItems: 'center',\n flexDirection: 'row',\n paddingLeft: 24,\n paddingRight: 12,\n },\n headerContentContainer: { marginTop: 5, flexDirection: 'row' },\n label: { color: '#fff', letterSpacing: 1, fontSize: 13 },\n singleHeaderText: { color: '#fff', fontSize: 25 },\n rangeHeaderText: { color: '#fff', fontSize: 25 },\n headerTextFilled: { color: 'rgba(255,255,255,1)' },\n headerTextEmpty: { color: 'rgba(255,255,255,0.5)' },\n headerSeparator: {\n color: 'rgba(255,255,255,1)',\n fontSize: 25,\n paddingLeft: 6,\n paddingRight: 6,\n },\n appbarHeader: {\n elevation: 0,\n backgroundColor: 'transparent',\n // alignItems:'center'\n },\n})\n"]}
@@ -67,7 +67,8 @@ function Day(props) {
67
67
  onPress: disabled ? undefined : onPress,
68
68
  style: [styles.button, {
69
69
  backgroundColor: inRange ? selectColor : undefined
70
- }] // RN types bug
70
+ }],
71
+ accessibilityRole: "button" // RN types bug
71
72
  ,
72
73
  hasTVPreferredFocus: undefined,
73
74
  tvParallaxProperties: undefined
@@ -1 +1 @@
1
- {"version":3,"sources":["Day.tsx"],"names":["EmptyDayPure","styles","empty","EmptyDay","React","memo","Day","props","day","month","year","selected","inRange","leftCrop","rightCrop","onPressDate","primaryColor","selectColor","isToday","disabled","textColorOnPrimary","theme","onPress","useCallback","Date","borderColor","dark","textColor","undefined","root","button","backgroundColor","color","StyleSheet","create","flex","flexBasis","opacity","justifyContent","alignItems","position","width","daySize","height","overflow","borderRadius","borderWidth","flex1"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { DarkTheme, Text, TouchableRipple } from 'react-native-paper'\nimport { StyleSheet, View } from 'react-native'\nimport DayRange from './DayRange'\nimport { daySize } from './dateUtils'\n\nfunction EmptyDayPure() {\n return <View style={styles.empty} />\n}\nexport const EmptyDay = React.memo(EmptyDayPure)\n\nfunction Day(props: {\n theme: typeof DarkTheme\n textColorOnPrimary: string\n day: number\n month: number\n year: number\n selected: boolean\n inRange: boolean\n leftCrop: boolean\n rightCrop: boolean\n primaryColor: string\n selectColor: string\n isToday: boolean\n disabled: boolean\n onPressDate: (date: Date) => any\n}) {\n const {\n day,\n month,\n year,\n selected,\n inRange,\n leftCrop,\n rightCrop,\n onPressDate,\n primaryColor,\n selectColor,\n isToday,\n disabled,\n textColorOnPrimary,\n theme,\n } = props\n // console.log(month, { day })\n const onPress = React.useCallback(() => {\n onPressDate(new Date(year, month, day))\n }, [onPressDate, year, month, day])\n\n const borderColor =\n selected || (inRange && theme.dark)\n ? textColorOnPrimary\n : theme.dark\n ? '#fff'\n : '#000'\n const textColor =\n selected || (inRange && theme.dark) ? textColorOnPrimary : undefined\n\n return (\n <View style={[styles.root, disabled && styles.disabled]}>\n <DayRange\n inRange={inRange}\n leftCrop={leftCrop}\n rightCrop={rightCrop}\n selectColor={selectColor}\n />\n\n <TouchableRipple\n testID={`react-native-paper-dates-day-${year}-${month}-${day}`}\n disabled={disabled}\n borderless={true}\n onPress={disabled ? undefined : onPress}\n style={[\n styles.button,\n { backgroundColor: inRange ? selectColor : undefined },\n ]}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n >\n <View\n style={[\n styles.day,\n isToday ? { borderColor: borderColor } : null,\n selected ? { backgroundColor: primaryColor } : null,\n ]}\n >\n <Text\n style={textColor ? { color: textColor } : undefined}\n selectable={false}\n >\n {day}\n </Text>\n </View>\n </TouchableRipple>\n </View>\n )\n}\n\nconst styles = StyleSheet.create({\n empty: {\n flex: 1,\n flexBasis: 0,\n },\n disabled: {\n opacity: 0.3,\n },\n root: {\n flexBasis: 0,\n flex: 1,\n justifyContent: 'center',\n alignItems: 'center',\n position: 'relative',\n },\n button: {\n width: daySize,\n height: daySize,\n overflow: 'hidden',\n borderRadius: daySize / 2,\n },\n day: {\n flexBasis: 0,\n flex: 1,\n borderRadius: daySize / 2,\n width: daySize,\n height: daySize,\n justifyContent: 'center',\n alignItems: 'center',\n borderWidth: 1,\n borderColor: 'transparent',\n },\n flex1: {\n flex: 1,\n },\n})\n\nexport default React.memo(Day)\n"]}
1
+ {"version":3,"sources":["Day.tsx"],"names":["EmptyDayPure","styles","empty","EmptyDay","React","memo","Day","props","day","month","year","selected","inRange","leftCrop","rightCrop","onPressDate","primaryColor","selectColor","isToday","disabled","textColorOnPrimary","theme","onPress","useCallback","Date","borderColor","dark","textColor","undefined","root","button","backgroundColor","color","StyleSheet","create","flex","flexBasis","opacity","justifyContent","alignItems","position","width","daySize","height","overflow","borderRadius","borderWidth","flex1"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { DarkTheme, Text, TouchableRipple } from 'react-native-paper'\nimport { StyleSheet, View } from 'react-native'\nimport DayRange from './DayRange'\nimport { daySize } from './dateUtils'\n\nfunction EmptyDayPure() {\n return <View style={styles.empty} />\n}\nexport const EmptyDay = React.memo(EmptyDayPure)\n\nfunction Day(props: {\n theme: typeof DarkTheme\n textColorOnPrimary: string\n day: number\n month: number\n year: number\n selected: boolean\n inRange: boolean\n leftCrop: boolean\n rightCrop: boolean\n primaryColor: string\n selectColor: string\n isToday: boolean\n disabled: boolean\n onPressDate: (date: Date) => any\n}) {\n const {\n day,\n month,\n year,\n selected,\n inRange,\n leftCrop,\n rightCrop,\n onPressDate,\n primaryColor,\n selectColor,\n isToday,\n disabled,\n textColorOnPrimary,\n theme,\n } = props\n // console.log(month, { day })\n const onPress = React.useCallback(() => {\n onPressDate(new Date(year, month, day))\n }, [onPressDate, year, month, day])\n\n const borderColor =\n selected || (inRange && theme.dark)\n ? textColorOnPrimary\n : theme.dark\n ? '#fff'\n : '#000'\n const textColor =\n selected || (inRange && theme.dark) ? textColorOnPrimary : undefined\n\n return (\n <View style={[styles.root, disabled && styles.disabled]}>\n <DayRange\n inRange={inRange}\n leftCrop={leftCrop}\n rightCrop={rightCrop}\n selectColor={selectColor}\n />\n\n <TouchableRipple\n testID={`react-native-paper-dates-day-${year}-${month}-${day}`}\n disabled={disabled}\n borderless={true}\n onPress={disabled ? undefined : onPress}\n style={[\n styles.button,\n { backgroundColor: inRange ? selectColor : undefined },\n ]}\n accessibilityRole=\"button\"\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n >\n <View\n style={[\n styles.day,\n isToday ? { borderColor: borderColor } : null,\n selected ? { backgroundColor: primaryColor } : null,\n ]}\n >\n <Text\n style={textColor ? { color: textColor } : undefined}\n selectable={false}\n >\n {day}\n </Text>\n </View>\n </TouchableRipple>\n </View>\n )\n}\n\nconst styles = StyleSheet.create({\n empty: {\n flex: 1,\n flexBasis: 0,\n },\n disabled: {\n opacity: 0.3,\n },\n root: {\n flexBasis: 0,\n flex: 1,\n justifyContent: 'center',\n alignItems: 'center',\n position: 'relative',\n },\n button: {\n width: daySize,\n height: daySize,\n overflow: 'hidden',\n borderRadius: daySize / 2,\n },\n day: {\n flexBasis: 0,\n flex: 1,\n borderRadius: daySize / 2,\n width: daySize,\n height: daySize,\n justifyContent: 'center',\n alignItems: 'center',\n borderWidth: 1,\n borderColor: 'transparent',\n },\n flex1: {\n flex: 1,\n },\n})\n\nexport default React.memo(Day)\n"]}
@@ -217,6 +217,8 @@ function Month(props) {
217
217
  }, /*#__PURE__*/React.createElement(_reactNativePaper.TouchableRipple, {
218
218
  disabled: !isHorizontal,
219
219
  onPress: isHorizontal ? () => onPressYear(year) : undefined,
220
+ accessibilityRole: "button",
221
+ accessibilityLabel: `${monthName} ${year}`,
220
222
  style: [styles.yearButton, {
221
223
  borderRadius: roundness
222
224
  }] // RN types bug
@@ -1 +1 @@
1
- {"version":3,"sources":["Month.tsx"],"names":["Month","props","index","mode","date","dates","startDate","endDate","onPressYear","selectingYear","onPressDate","scrollMode","primaryColor","selectColor","roundness","disableWeekDays","locale","validRange","theme","textColorOnPrimary","realIndex","isHorizontal","isDisabled","isWithinValidRange","monthName","month","year","React","useMemo","md","Date","y","getFullYear","m","getMonth","formatter","Intl","DateTimeFormat","format","grid","today","daysInMonth","dayOfWeek","emptyDays","monthGrid","map","days","weekGrid","weekIndex","generatedDays","_","dayIndex","isFirstWeek","realDayIndex","beforeWeekDay","dayOfMonth","afterWeekDay","day","isToday","inRange","disabled","selected","leftCrop","rightCrop","isFirstDayOfMonth","isLastDayOfMonth","selectedStartDay","selectedEndDay","safeDates","some","d","yesterday","tomorrow","yesterdaySelected","tomorrowSelected","isWithinOptionalValidRange","styles","height","getMonthHeight","monthHeader","marginTop","monthHeaderSingleMarginTop","marginBottom","monthHeaderSingleMarginBottom","undefined","yearButton","borderRadius","yearButtonInner","monthLabel","fonts","medium","opacity1","opacity0","week","filter","gd","weekMargin","weekSize","daySize","montHeaderHeight","monthHeaderSingleHeight","StyleSheet","create","flexDirection","justifyContent","overflow","fontSize","opacity","alignSelf","marginLeft","paddingLeft","alignItems","Array","fill","getIndexCount","startAtIndex","weeksOffset","off","i","cIndex","gridCounts","getIndexFromHorizontalOffset","offset","width","Math","floor","getIndexFromVerticalOffset","estimatedIndex","ceil","estimatedMonthHeight","realOffset","getVerticalMonthsOffset","difference","beginOffset","getHorizontalMonthOffset","count","ob","monthsHeight","c","dayNamesHeight","calendarHeight","gc","currentMonthHeight","extraHeight","memo"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AAiBA;;AAOA;;AACA;;;;;;AAuCA,SAASA,KAAT,CAAeC,KAAf,EAA4E;AAC1E,QAAM;AACJC,IAAAA,KADI;AAEJC,IAAAA,IAFI;AAGJC,IAAAA,IAHI;AAIJC,IAAAA,KAJI;AAKJC,IAAAA,SALI;AAMJC,IAAAA,OANI;AAOJC,IAAAA,WAPI;AAQJC,IAAAA,aARI;AASJC,IAAAA,WATI;AAUJC,IAAAA,UAVI;AAWJC,IAAAA,YAXI;AAYJC,IAAAA,WAZI;AAaJC,IAAAA,SAbI;AAcJC,IAAAA,eAdI;AAeJC,IAAAA,MAfI;AAgBJC,IAAAA;AAhBI,MAiBFhB,KAjBJ;AAkBA,QAAMiB,KAAK,GAAG,iCAAd;AACA,QAAMC,kBAAkB,GAAG,mCAA3B;AACA,QAAMC,SAAS,GAAG,6BAAalB,KAAb,CAAlB;AACA,QAAMmB,YAAY,GAAGV,UAAU,KAAK,YAApC;AACA,QAAM;AAAEW,IAAAA,UAAF;AAAcC,IAAAA;AAAd,MAAqC,gCAAgBN,UAAhB,CAA3C;AACA,QAAM;AAAEO,IAAAA,SAAF;AAAaC,IAAAA,KAAb;AAAoBC,IAAAA;AAApB,MAA6BC,KAAK,CAACC,OAAN,CAAc,MAAM;AACrD,UAAMC,EAAE,GAAG,0BAAU,IAAIC,IAAJ,EAAV,EAAsBV,SAAtB,CAAX;AACA,UAAMW,CAAC,GAAGF,EAAE,CAACG,WAAH,EAAV;AACA,UAAMC,CAAC,GAAGJ,EAAE,CAACK,QAAH,EAAV;AACA,UAAMC,SAAS,GAAG,IAAIC,IAAI,CAACC,cAAT,CAAwBrB,MAAxB,EAAgC;AAChDS,MAAAA,KAAK,EAAE;AADyC,KAAhC,CAAlB;AAGA,WAAO;AAAED,MAAAA,SAAS,EAAEW,SAAS,CAACG,MAAV,CAAiBT,EAAjB,CAAb;AAAmCJ,MAAAA,KAAK,EAAEQ,CAA1C;AAA6CP,MAAAA,IAAI,EAAEK;AAAnD,KAAP;AACD,GARkC,EAQhC,CAACX,SAAD,EAAYJ,MAAZ,CARgC,CAAnC;AAUA,QAAMuB,IAAI,GAAGZ,KAAK,CAACC,OAAN,CAAc,MAAM;AAC/B,UAAMY,KAAK,GAAG,IAAIV,IAAJ,EAAd;AAEA,UAAMW,WAAW,GAAG,+BAAe;AAAEf,MAAAA,IAAF;AAAQD,MAAAA;AAAR,KAAf,CAApB;AACA,UAAMiB,SAAS,GAAG,mCAAmB;AAAEhB,MAAAA,IAAF;AAAQD,MAAAA;AAAR,KAAnB,CAAlB;AACA,UAAMkB,SAAS,GAAGD,SAAlB;AAEA,WAAOE,SAAS,CAAC1C,KAAD,CAAT,CAAiB2C,GAAjB,CAAqB,QAAwB;AAAA,UAAvB;AAAEC,QAAAA,IAAF;AAAQC,QAAAA;AAAR,OAAuB;AAClD,aAAO;AACLC,QAAAA,SAAS,EAAED,QADN;AAELE,QAAAA,aAAa,EAAEH,IAAI,CAACD,GAAL,CAAS,CAACK,CAAD,EAAIC,QAAJ,KAAiB;AACvC,gBAAMC,WAAW,GAAGL,QAAQ,KAAK,CAAjC;AACA,gBAAMM,YAAY,GAAGV,SAAS,GAAGQ,QAAjC;AACA,gBAAMG,aAAa,GAAGF,WAAW,IAAIC,YAAY,GAAG,CAApD;AACA,gBAAME,UAAU,GAAGR,QAAQ,GAAG,CAAX,GAAeI,QAAf,GAA0BR,SAA1B,GAAsC,CAAzD;AACA,gBAAMa,YAAY,GAAGD,UAAU,GAAGd,WAAlC;AAEA,gBAAMgB,GAAG,GAAG,IAAI3B,IAAJ,CAASJ,IAAT,EAAeD,KAAf,EAAsB8B,UAAtB,CAAZ;AACA,gBAAMG,OAAO,GAAG,kCAAkBD,GAAlB,EAAuBjB,KAAvB,CAAhB;AAEA,cAAImB,OAAO,GAAG,KAAd;AACA,cAAIC,QAAQ,GAAGtC,UAAU,CAACmC,GAAD,CAAzB;AACA,cAAII,QAAQ,GAAG,KAAf;AAEA,cAAIC,QAAQ,GAAGP,UAAU,KAAK,CAA9B;AACA,cAAIQ,SAAS,GAAGR,UAAU,KAAKd,WAA/B;AAEA,gBAAMuB,iBAAiB,GAAGT,UAAU,KAAK,CAAzC;AACA,gBAAMU,gBAAgB,GAAGV,UAAU,KAAKd,WAAxC;;AAEA,cAAItC,IAAI,KAAK,OAAb,EAAsB;AACpB,kBAAM+D,gBAAgB,GAAG,kCAAkBT,GAAlB,EAAuBnD,SAAvB,CAAzB;AACA,kBAAM6D,cAAc,GAAG,kCAAkBV,GAAlB,EAAuBlD,OAAvB,CAAvB;AACAsD,YAAAA,QAAQ,GAAGK,gBAAgB,IAAIC,cAA/B;AACAR,YAAAA,OAAO,GAAG,8BAAcF,GAAd,EAAmB;AAC3BnD,cAAAA,SAD2B;AAE3BC,cAAAA;AAF2B,aAAnB,CAAV;;AAIA,gBAAI2D,gBAAJ,EAAsB;AACpBJ,cAAAA,QAAQ,GAAG,IAAX;AACD;;AACD,gBAAIK,cAAJ,EAAoB;AAClBJ,cAAAA,SAAS,GAAG,IAAZ;AACD;;AACD,gBAAIZ,QAAQ,KAAK,CAAb,IAAkB,CAACe,gBAAvB,EAAyC;AACvCJ,cAAAA,QAAQ,GAAG,KAAX;AACD;;AAED,gBAAIX,QAAQ,KAAK,CAAb,IAAkB,CAACgB,cAAvB,EAAuC;AACrCJ,cAAAA,SAAS,GAAG,KAAZ;AACD;;AAED,gBACGC,iBAAiB,IAAIG,cAAtB,IACCF,gBAAgB,IAAIC,gBAFvB,EAGE;AACAP,cAAAA,OAAO,GAAG,KAAV;AACD;AACF,WA5BD,MA4BO,IAAIxD,IAAI,KAAK,UAAb,EAAyB;AAC9B,kBAAMiE,SAAS,GAAG/D,KAAK,IAAI,EAA3B;AACAwD,YAAAA,QAAQ,GAAGO,SAAS,CAACC,IAAV,CAAgBC,CAAD,IAAO,kCAAkBb,GAAlB,EAAuBa,CAAvB,CAAtB,CAAX;AAEA,kBAAMC,SAAS,GAAG,IAAIzC,IAAJ,CAASJ,IAAT,EAAeD,KAAf,EAAsB8B,UAAU,GAAG,CAAnC,CAAlB;AACA,kBAAMiB,QAAQ,GAAG,IAAI1C,IAAJ,CAASJ,IAAT,EAAeD,KAAf,EAAsB8B,UAAU,GAAG,CAAnC,CAAjB;AAEA,kBAAMkB,iBAAiB,GAAGL,SAAS,CAACC,IAAV,CAAgBC,CAAD,IACvC,kCAAkBA,CAAlB,EAAqBC,SAArB,CADwB,CAA1B;AAGA,kBAAMG,gBAAgB,GAAGN,SAAS,CAACC,IAAV,CAAgBC,CAAD,IACtC,kCAAkBA,CAAlB,EAAqBE,QAArB,CADuB,CAAzB;;AAIA,gBAAIX,QAAJ,EAAc;AACZ,kBAAIa,gBAAgB,IAAID,iBAAxB,EAA2C;AACzCd,gBAAAA,OAAO,GAAG,IAAV;AACD;;AACD,kBAAIe,gBAAgB,IAAI,CAACD,iBAAzB,EAA4C;AAC1Cd,gBAAAA,OAAO,GAAG,IAAV;AACAG,gBAAAA,QAAQ,GAAG,IAAX;AACD;;AAED,kBAAIW,iBAAiB,IAAI,CAACC,gBAA1B,EAA4C;AAC1Cf,gBAAAA,OAAO,GAAG,IAAV;AACAI,gBAAAA,SAAS,GAAG,IAAZ;AACD;;AAED,kBAAIC,iBAAiB,IAAI,CAACU,gBAA1B,EAA4C;AAC1Cf,gBAAAA,OAAO,GAAG,KAAV;AACD;;AAED,kBAAIM,gBAAgB,IAAI,CAACQ,iBAAzB,EAA4C;AAC1Cd,gBAAAA,OAAO,GAAG,KAAV;AACD;;AAED,kBAAIA,OAAO,IAAI,CAACG,QAAZ,IAAwB,CAACC,SAA7B,EAAwC;AACtCF,gBAAAA,QAAQ,GAAG,KAAX;AACD;AACF;AACF,WAxCM,MAwCA,IAAI1D,IAAI,KAAK,QAAb,EAAuB;AAC5B0D,YAAAA,QAAQ,GAAG,kCAAkBJ,GAAlB,EAAuBrD,IAAvB,CAAX;AACD;;AAED,gBAAMuE,0BAA0B,GAAGpD,kBAAkB,CAACkC,GAAD,CAArD;;AAEA,cAAIE,OAAO,IAAI,CAACC,QAAhB,EAA0B;AACxBA,YAAAA,QAAQ,GAAG,KAAX;AACD;;AAED,cAAI,CAACe,0BAAL,EAAiC;AAC/Bf,YAAAA,QAAQ,GAAG,IAAX;AACD;;AAED,iBAAO;AACLN,YAAAA,aADK;AAELE,YAAAA,YAFK;AAGL9B,YAAAA,IAHK;AAILD,YAAAA,KAJK;AAKL8B,YAAAA,UALK;AAMLJ,YAAAA,QANK;AAOLhD,YAAAA,IAPK;AAQL0D,YAAAA,QARK;AASLF,YAAAA,OATK;AAULG,YAAAA,QAVK;AAWLC,YAAAA,SAXK;AAYLL,YAAAA,OAZK;AAaLE,YAAAA;AAbK,WAAP;AAeD,SArHc;AAFV,OAAP;AAyHD,KA1HM,CAAP;AA2HD,GAlIY,EAkIV,CACDlC,IADC,EAEDD,KAFC,EAGDvB,KAHC,EAIDoB,UAJC,EAKDnB,IALC,EAMDoB,kBANC,EAODjB,SAPC,EAQDC,OARC,EASDF,KATC,EAUDD,IAVC,CAlIU,CAAb;AA+IA,sBACE,oBAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAACwE,MAAM,CAACnD,KAAR,EAAe;AAAEoD,MAAAA,MAAM,EAAEC,cAAc,CAACnE,UAAD,EAAaT,KAAb;AAAxB,KAAf;AAAb,kBACE,oBAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACL0E,MAAM,CAACG,WADF,EAEL1D,YAAY,GACR;AACE2D,MAAAA,SAAS,EAAEC,0BADb;AAEEC,MAAAA,YAAY,EAAEC;AAFhB,KADQ,GAKR,IAPC;AADT,kBAWE,oBAAC,iCAAD;AACE,IAAA,QAAQ,EAAE,CAAC9D,YADb;AAEE,IAAA,OAAO,EAAEA,YAAY,GAAG,MAAMb,WAAW,CAACkB,IAAD,CAApB,GAA6B0D,SAFpD;AAGE,IAAA,KAAK,EAAE,CACLR,MAAM,CAACS,UADF,EAEL;AACEC,MAAAA,YAAY,EAAExE;AADhB,KAFK,CAHT,CASE;AATF;AAUE,IAAA,mBAAmB,EAAEsE,SAVvB;AAWE,IAAA,oBAAoB,EAAEA;AAXxB,kBAaE,oBAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACLR,MAAM,CAACW,eADF,EAEL;AACED,MAAAA,YAAY,EAAExE;AADhB,KAFK;AADT,kBAQE,oBAAC,sBAAD;AACE,IAAA,KAAK,EAAE,CAAC8D,MAAM,CAACY,UAAR,EAAoBtE,KAAK,CAACuE,KAAN,CAAYC,MAAhC,CADT;AAEE,IAAA,UAAU,EAAE;AAFd,KAIGlE,SAJH,OAIeE,IAJf,CARF,eAcE,oBAAC,iBAAD;AAAM,IAAA,KAAK,EAAEL,YAAY,GAAGuD,MAAM,CAACe,QAAV,GAAqBf,MAAM,CAACgB;AAArD,kBACE,oBAAC,4BAAD;AACE,IAAA,OAAO,EAAEvE,YAAY,GAAG,MAAMb,WAAW,CAACkB,IAAD,CAApB,GAA6B0D,SADpD;AAEE,IAAA,IAAI,EAAE3E,aAAa,GAAG,YAAH,GAAkB,cAFvC,CAGE;AAHF;AAIE,IAAA,mBAAmB,EAAE2E,SAJvB;AAKE,IAAA,oBAAoB,EAAEA;AALxB,IADF,CAdF,CAbF,CAXF,CADF,EAoDG7C,IAAI,CAACM,GAAL,CAAS;AAAA,QAAC;AAAEG,MAAAA,SAAF;AAAaC,MAAAA;AAAb,KAAD;AAAA,wBACR,oBAAC,iBAAD;AAAM,MAAA,KAAK,EAAE2B,MAAM,CAACiB,IAApB;AAA0B,MAAA,GAAG,EAAE7C;AAA/B,OACGC,aAAa,CACX6C,MADF,CACUC,EAAD,IAAQ,4BAAYA,EAAE,CAAC5C,QAAf,EAAyBpC,eAAzB,CADjB,EAEE8B,GAFF,CAEOkD,EAAD,IACHA,EAAE,CAACzC,aAAH,IAAoByC,EAAE,CAACvC,YAAvB,gBACE,oBAAC,aAAD;AAAU,MAAA,GAAG,EAAEuC,EAAE,CAAC5C;AAAlB,MADF,gBAGE,oBAAC,YAAD;AACE,MAAA,GAAG,EAAE4C,EAAE,CAAC5C,QADV;AAEE,MAAA,KAAK,EAAEjC,KAFT;AAGE,MAAA,GAAG,EAAE6E,EAAE,CAACxC,UAHV;AAIE,MAAA,KAAK,EAAEwC,EAAE,CAACtE,KAJZ;AAKE,MAAA,IAAI,EAAEsE,EAAE,CAACrE,IALX;AAME,MAAA,QAAQ,EAAEqE,EAAE,CAAClC,QANf;AAOE,MAAA,OAAO,EAAEkC,EAAE,CAACpC,OAPd;AAQE,MAAA,QAAQ,EAAEoC,EAAE,CAACjC,QARf;AASE,MAAA,SAAS,EAAEiC,EAAE,CAAChC,SAThB;AAUE,MAAA,WAAW,EAAErD,WAVf;AAWE,MAAA,OAAO,EAAEqF,EAAE,CAACrC,OAXd;AAYE,MAAA,WAAW,EAAE7C,WAZf;AAaE,MAAA,YAAY,EAAED,YAbhB;AAcE,MAAA,QAAQ,EAAEmF,EAAE,CAACnC,QAdf;AAeE,MAAA,kBAAkB,EAAEzC;AAftB,MANL,CADH,CADQ;AAAA,GAAT,CApDH,CADF;AAoFD;;AAEM,MAAM6E,UAAU,GAAG,CAAnB;;AACA,MAAMC,QAAQ,GAAGC,qBAAUF,UAA3B;;AACA,MAAMG,gBAAgB,GAAG,EAAzB;;AACA,MAAMlB,0BAA0B,GAAG,CAAnC;;AACA,MAAME,6BAA6B,GAAG,IAAI,EAAJ,GAAS,EAA/C;;AACA,MAAMiB,uBAAuB,GAClCnB,0BAA0B,GAAGE,6BADxB;;;AAGP,MAAMP,MAAM,GAAGyB,wBAAWC,MAAX,CAAkB;AAC/BT,EAAAA,IAAI,EAAE;AACJU,IAAAA,aAAa,EAAE,KADX;AAEJrB,IAAAA,YAAY,EAAEc,UAFV;AAGJnB,IAAAA,MAAM,EAAEqB;AAHJ,GADyB;AAO/BzE,EAAAA,KAAK,EAAE,EAPwB;AAS/BsD,EAAAA,WAAW,EAAE;AACXF,IAAAA,MAAM,EAAEsB,gBADG;AAEXK,IAAAA,cAAc,EAAE,QAFL;AAGXC,IAAAA,QAAQ,EAAE;AAHC,GATkB;AAc/BjB,EAAAA,UAAU,EAAE;AAAEkB,IAAAA,QAAQ,EAAE,EAAZ;AAAgBC,IAAAA,OAAO,EAAE;AAAzB,GAdmB;AAe/BtB,EAAAA,UAAU,EAAE;AAAEuB,IAAAA,SAAS,EAAE,YAAb;AAA2BC,IAAAA,UAAU,EAAE;AAAvC,GAfmB;AAgB/BtB,EAAAA,eAAe,EAAE;AACfuB,IAAAA,WAAW,EAAE,EADE;AAEfP,IAAAA,aAAa,EAAE,KAFA;AAGfQ,IAAAA,UAAU,EAAE;AAHG,GAhBc;AAqB/BnB,EAAAA,QAAQ,EAAE;AAAEe,IAAAA,OAAO,EAAE;AAAX,GArBqB;AAsB/BhB,EAAAA,QAAQ,EAAE;AAAEgB,IAAAA,OAAO,EAAE;AAAX;AAtBqB,CAAlB,CAAf;;AAyBA,MAAM/D,SAAS,GAAI1C,KAAD,IAAmB;AACnC,SAAO8G,KAAK,CAAC,6BAAa9G,KAAb,CAAD,CAAL,CACJ+G,IADI,CACC,IADD,EAEJpE,GAFI,CAEA,CAACK,CAAD,EAAIH,QAAJ,KAAiB;AACpB,UAAMD,IAAI,GAAGkE,KAAK,CAAC,CAAD,CAAL,CAASC,IAAT,CAAc,IAAd,CAAb;AACA,WAAO;AAAElE,MAAAA,QAAF;AAAYD,MAAAA;AAAZ,KAAP;AACD,GALI,CAAP;AAMD,CAPD;;AASA,SAASoE,aAAT,CAAuBhH,KAAvB,EAA8C;AAC5C,MAAIA,KAAK,GAAGiH,uBAAZ,EAA0B;AACxB,WAAOjH,KAAK,GAAGiH,uBAAf;AACD;;AAED,SAAO,EAAEA,0BAAejH,KAAjB,CAAP;AACD;;AAED,SAASkH,WAAT,CAAqBlH,KAArB,EAA4C;AAC1C,MAAIA,KAAK,KAAKiH,uBAAd,EAA4B;AAC1B,WAAO,CAAP;AACD;;AACD,MAAIE,GAAG,GAAG,CAAV;;AACA,MAAInH,KAAK,GAAGiH,uBAAZ,EAA0B;AACxB,SAAK,IAAIG,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGpH,KAAK,GAAGiH,uBAA5B,EAA0CG,CAAC,EAA3C,EAA+C;AAC7C,YAAMC,MAAM,GAAGJ,0BAAeG,CAA9B;AACAD,MAAAA,GAAG,IAAIG,sBAAWD,MAAX,KAAsB,6BAAaA,MAAb,CAA7B;AACD;AACF,GALD,MAKO;AACL,SAAK,IAAID,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGH,0BAAejH,KAAnC,EAA0CoH,CAAC,EAA3C,EAA+C;AAC7C,YAAMC,MAAM,GAAGJ,0BAAeG,CAAf,GAAmB,CAAlC;AACAD,MAAAA,GAAG,IAAIG,sBAAWD,MAAX,KAAsB,6BAAaA,MAAb,CAA7B;AACD;AACF;;AACD,SAAOF,GAAP;AACD;;AAEM,SAASI,4BAAT,CACLC,MADK,EAELC,KAFK,EAGG;AACR,SAAOR,0BAAeS,IAAI,CAACC,KAAL,CAAWH,MAAM,GAAGC,KAApB,CAAtB;AACD;;AAEM,SAASG,0BAAT,CAAoCJ,MAApC,EAA4D;AACjE,MAAIK,cAAc,GAAGZ,0BAAeS,IAAI,CAACI,IAAL,CAAUN,MAAM,GAAGO,+BAAnB,CAApC;AAEA,QAAMC,UAAU,GAAGC,uBAAuB,CAACJ,cAAD,CAA1C;AACA,QAAMK,UAAU,GAAG,CAACF,UAAU,GAAGG,sBAAb,GAA2BX,MAA5B,IAAsCO,+BAAzD;;AACA,MAAIG,UAAU,IAAI,CAAd,IAAmBA,UAAU,IAAI,CAAC,CAAtC,EAAyC;AACvCL,IAAAA,cAAc,IAAIH,IAAI,CAACC,KAAL,CAAWO,UAAX,CAAlB;AACD;;AACD,SAAOL,cAAP;AACD;;AAEM,SAASO,wBAAT,CAAkCpI,KAAlC,EAAiDyH,KAAjD,EAAgE;AACrE,MAAIzH,KAAK,GAAG,CAAZ,EAAe;AACb,WAAO,CAAP;AACD;;AACD,SAAOyH,KAAK,GAAGzH,KAAf;AACD;;AAEM,SAASiI,uBAAT,CAAiCjI,KAAjC,EAAgD;AACrD,QAAMqI,KAAK,GAAGrB,aAAa,CAAChH,KAAD,CAA3B;AACA,QAAMsI,EAAE,GAAGpB,WAAW,CAAClH,KAAD,CAAtB;AACA,QAAMuI,YAAY,GAAGxC,QAAQ,GAAGuC,EAAhC;AACA,QAAME,CAAC,GAAGD,YAAY,GAAGF,KAAK,IAAII,2BAAiBxC,gBAArB,CAA9B;AAEA,SAAO,CAACuC,CAAC,IAAI,CAAN,IAAWL,sBAAlB;AACD;;AAEM,SAASvD,cAAT,CACLnE,UADK,EAELT,KAFK,EAGG;AACR,QAAM0I,cAAc,GAAG,6CAAwBjI,UAAxB,CAAvB;AACA,QAAMkI,EAAE,GAAG,6BAAa3I,KAAb,CAAX;AAEA,QAAM4I,kBAAkB,GAAG7C,QAAQ,GAAG4C,EAAtC;AACA,QAAME,WAAW,GACfpI,UAAU,KAAK,YAAf,GAA8ByF,uBAA9B,GAAwDD,gBAD1D;AAEA,QAAMuC,CAAC,GAAGE,cAAc,GAAGE,kBAAjB,GAAsCC,WAAhD;AACA,SAAOL,CAAC,IAAI,CAAZ;AACD;;4BAEc/G,KAAK,CAACqH,IAAN,CAAWhJ,KAAX,C","sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { IconButton, Text, useTheme, TouchableRipple } from 'react-native-paper'\nimport Day, { EmptyDay } from './Day'\n\nimport {\n addMonths,\n areDatesOnSameDay,\n daySize,\n DisableWeekDaysType,\n getDaysInMonth,\n getFirstDayOfMonth,\n getRealIndex,\n getGridCount,\n isDateBetween,\n gridCounts,\n showWeekDay,\n startAtIndex,\n beginOffset,\n estimatedMonthHeight,\n useRangeChecker,\n} from './dateUtils'\nimport { getCalendarHeaderHeight } from './CalendarHeader'\nimport type {\n CalendarDate,\n CalendarDates,\n ModeType,\n ValidRangeType,\n} from './Calendar'\nimport { dayNamesHeight } from './DayNames'\nimport { useTextColorOnPrimary } from '../utils'\n\ninterface BaseMonthProps {\n locale: undefined | string\n scrollMode: 'horizontal' | 'vertical'\n disableWeekDays?: DisableWeekDaysType\n mode: ModeType\n index: number\n onPressYear: (year: number) => any\n selectingYear: boolean\n onPressDate: (date: Date) => any\n primaryColor: string\n selectColor: string\n roundness: number\n validRange?: ValidRangeType\n\n // some of these should be required in final implementation\n startDate?: CalendarDate\n endDate?: CalendarDate\n date?: CalendarDate\n dates?: CalendarDates\n}\n\ninterface MonthRangeProps extends BaseMonthProps {\n mode: 'range'\n startDate: CalendarDate\n endDate: CalendarDate\n}\n\ninterface MonthSingleProps extends BaseMonthProps {\n mode: 'single'\n date: CalendarDate\n}\n\ninterface MonthMultiProps extends BaseMonthProps {\n mode: 'multiple'\n dates: CalendarDates\n}\n\nfunction Month(props: MonthSingleProps | MonthRangeProps | MonthMultiProps) {\n const {\n index,\n mode,\n date,\n dates,\n startDate,\n endDate,\n onPressYear,\n selectingYear,\n onPressDate,\n scrollMode,\n primaryColor,\n selectColor,\n roundness,\n disableWeekDays,\n locale,\n validRange,\n } = props\n const theme = useTheme()\n const textColorOnPrimary = useTextColorOnPrimary()\n const realIndex = getRealIndex(index)\n const isHorizontal = scrollMode === 'horizontal'\n const { isDisabled, isWithinValidRange } = useRangeChecker(validRange)\n const { monthName, month, year } = React.useMemo(() => {\n const md = addMonths(new Date(), realIndex)\n const y = md.getFullYear()\n const m = md.getMonth()\n const formatter = new Intl.DateTimeFormat(locale, {\n month: 'long',\n })\n return { monthName: formatter.format(md), month: m, year: y }\n }, [realIndex, locale])\n\n const grid = React.useMemo(() => {\n const today = new Date()\n\n const daysInMonth = getDaysInMonth({ year, month })\n const dayOfWeek = getFirstDayOfMonth({ year, month })\n const emptyDays = dayOfWeek\n\n return monthGrid(index).map(({ days, weekGrid }) => {\n return {\n weekIndex: weekGrid,\n generatedDays: days.map((_, dayIndex) => {\n const isFirstWeek = weekGrid === 0\n const realDayIndex = emptyDays - dayIndex\n const beforeWeekDay = isFirstWeek && realDayIndex > 0\n const dayOfMonth = weekGrid * 7 + dayIndex - emptyDays + 1\n const afterWeekDay = dayOfMonth > daysInMonth\n\n const day = new Date(year, month, dayOfMonth)\n const isToday = areDatesOnSameDay(day, today)\n\n let inRange = false\n let disabled = isDisabled(day)\n let selected = false\n\n let leftCrop = dayOfMonth === 1\n let rightCrop = dayOfMonth === daysInMonth\n\n const isFirstDayOfMonth = dayOfMonth === 1\n const isLastDayOfMonth = dayOfMonth === daysInMonth\n\n if (mode === 'range') {\n const selectedStartDay = areDatesOnSameDay(day, startDate)\n const selectedEndDay = areDatesOnSameDay(day, endDate)\n selected = selectedStartDay || selectedEndDay\n inRange = isDateBetween(day, {\n startDate,\n endDate,\n })\n if (selectedStartDay) {\n leftCrop = true\n }\n if (selectedEndDay) {\n rightCrop = true\n }\n if (dayIndex === 0 && !selectedStartDay) {\n leftCrop = false\n }\n\n if (dayIndex === 6 && !selectedEndDay) {\n rightCrop = false\n }\n\n if (\n (isFirstDayOfMonth && selectedEndDay) ||\n (isLastDayOfMonth && selectedStartDay)\n ) {\n inRange = false\n }\n } else if (mode === 'multiple') {\n const safeDates = dates || []\n selected = safeDates.some((d) => areDatesOnSameDay(day, d))\n\n const yesterday = new Date(year, month, dayOfMonth - 1)\n const tomorrow = new Date(year, month, dayOfMonth + 1)\n\n const yesterdaySelected = safeDates.some((d) =>\n areDatesOnSameDay(d, yesterday)\n )\n const tomorrowSelected = safeDates.some((d) =>\n areDatesOnSameDay(d, tomorrow)\n )\n\n if (selected) {\n if (tomorrowSelected && yesterdaySelected) {\n inRange = true\n }\n if (tomorrowSelected && !yesterdaySelected) {\n inRange = true\n leftCrop = true\n }\n\n if (yesterdaySelected && !tomorrowSelected) {\n inRange = true\n rightCrop = true\n }\n\n if (isFirstDayOfMonth && !tomorrowSelected) {\n inRange = false\n }\n\n if (isLastDayOfMonth && !yesterdaySelected) {\n inRange = false\n }\n\n if (inRange && !leftCrop && !rightCrop) {\n selected = false\n }\n }\n } else if (mode === 'single') {\n selected = areDatesOnSameDay(day, date)\n }\n\n const isWithinOptionalValidRange = isWithinValidRange(day)\n\n if (inRange && !disabled) {\n disabled = false\n }\n\n if (!isWithinOptionalValidRange) {\n disabled = true\n }\n\n return {\n beforeWeekDay,\n afterWeekDay,\n year,\n month,\n dayOfMonth,\n dayIndex,\n mode,\n selected,\n inRange,\n leftCrop,\n rightCrop,\n isToday,\n disabled,\n }\n }),\n }\n })\n }, [\n year,\n month,\n index,\n isDisabled,\n mode,\n isWithinValidRange,\n startDate,\n endDate,\n dates,\n date,\n ])\n\n return (\n <View style={[styles.month, { height: getMonthHeight(scrollMode, index) }]}>\n <View\n style={[\n styles.monthHeader,\n isHorizontal\n ? {\n marginTop: monthHeaderSingleMarginTop,\n marginBottom: monthHeaderSingleMarginBottom,\n }\n : null,\n ]}\n >\n <TouchableRipple\n disabled={!isHorizontal}\n onPress={isHorizontal ? () => onPressYear(year) : undefined}\n style={[\n styles.yearButton,\n {\n borderRadius: roundness,\n },\n ]}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n >\n <View\n style={[\n styles.yearButtonInner,\n {\n borderRadius: roundness,\n },\n ]}\n >\n <Text\n style={[styles.monthLabel, theme.fonts.medium]}\n selectable={false}\n >\n {monthName} {year}\n </Text>\n <View style={isHorizontal ? styles.opacity1 : styles.opacity0}>\n <IconButton\n onPress={isHorizontal ? () => onPressYear(year) : undefined}\n icon={selectingYear ? 'chevron-up' : 'chevron-down'}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n </View>\n </View>\n </TouchableRipple>\n </View>\n\n {grid.map(({ weekIndex, generatedDays }) => (\n <View style={styles.week} key={weekIndex}>\n {generatedDays\n .filter((gd) => showWeekDay(gd.dayIndex, disableWeekDays))\n .map((gd) =>\n gd.beforeWeekDay || gd.afterWeekDay ? (\n <EmptyDay key={gd.dayIndex} />\n ) : (\n <Day\n key={gd.dayIndex}\n theme={theme}\n day={gd.dayOfMonth}\n month={gd.month}\n year={gd.year}\n selected={gd.selected}\n inRange={gd.inRange}\n leftCrop={gd.leftCrop}\n rightCrop={gd.rightCrop}\n onPressDate={onPressDate}\n isToday={gd.isToday}\n selectColor={selectColor}\n primaryColor={primaryColor}\n disabled={gd.disabled}\n textColorOnPrimary={textColorOnPrimary}\n />\n )\n )}\n </View>\n ))}\n </View>\n )\n}\n\nexport const weekMargin = 6\nexport const weekSize = daySize + weekMargin\nexport const montHeaderHeight = 56\nexport const monthHeaderSingleMarginTop = 4\nexport const monthHeaderSingleMarginBottom = 8 + 44 + 12\nexport const monthHeaderSingleHeight =\n monthHeaderSingleMarginTop + monthHeaderSingleMarginBottom\n\nconst styles = StyleSheet.create({\n week: {\n flexDirection: 'row',\n marginBottom: weekMargin,\n height: daySize,\n },\n\n month: {},\n\n monthHeader: {\n height: montHeaderHeight,\n justifyContent: 'center',\n overflow: 'hidden',\n },\n monthLabel: { fontSize: 14, opacity: 0.7 },\n yearButton: { alignSelf: 'flex-start', marginLeft: 6 },\n yearButtonInner: {\n paddingLeft: 16,\n flexDirection: 'row',\n alignItems: 'center',\n },\n opacity0: { opacity: 0 },\n opacity1: { opacity: 1 },\n})\n\nconst monthGrid = (index: number) => {\n return Array(getGridCount(index))\n .fill(null)\n .map((_, weekGrid) => {\n const days = Array(7).fill(null)\n return { weekGrid, days }\n })\n}\n\nfunction getIndexCount(index: number): number {\n if (index > startAtIndex) {\n return index - startAtIndex\n }\n\n return -(startAtIndex - index)\n}\n\nfunction weeksOffset(index: number): number {\n if (index === startAtIndex) {\n return 0\n }\n let off = 0\n if (index > startAtIndex) {\n for (let i = 0; i < index - startAtIndex; i++) {\n const cIndex = startAtIndex + i\n off += gridCounts[cIndex] || getGridCount(cIndex)\n }\n } else {\n for (let i = 0; i < startAtIndex - index; i++) {\n const cIndex = startAtIndex - i - 1\n off -= gridCounts[cIndex] || getGridCount(cIndex)\n }\n }\n return off\n}\n\nexport function getIndexFromHorizontalOffset(\n offset: number,\n width: number\n): number {\n return startAtIndex + Math.floor(offset / width)\n}\n\nexport function getIndexFromVerticalOffset(offset: number): number {\n let estimatedIndex = startAtIndex + Math.ceil(offset / estimatedMonthHeight)\n\n const realOffset = getVerticalMonthsOffset(estimatedIndex)\n const difference = (realOffset - beginOffset - offset) / estimatedMonthHeight\n if (difference >= 1 || difference <= -1) {\n estimatedIndex -= Math.floor(difference)\n }\n return estimatedIndex\n}\n\nexport function getHorizontalMonthOffset(index: number, width: number) {\n if (index < 0) {\n return 0\n }\n return width * index\n}\n\nexport function getVerticalMonthsOffset(index: number) {\n const count = getIndexCount(index)\n const ob = weeksOffset(index)\n const monthsHeight = weekSize * ob\n const c = monthsHeight + count * (dayNamesHeight + montHeaderHeight)\n\n return (c || 0) + beginOffset\n}\n\nexport function getMonthHeight(\n scrollMode: 'horizontal' | 'vertical',\n index: number\n): number {\n const calendarHeight = getCalendarHeaderHeight(scrollMode)\n const gc = getGridCount(index)\n\n const currentMonthHeight = weekSize * gc\n const extraHeight =\n scrollMode === 'horizontal' ? monthHeaderSingleHeight : montHeaderHeight\n const c = calendarHeight + currentMonthHeight + extraHeight\n return c || 0\n}\n\nexport default React.memo(Month)\n"]}
1
+ {"version":3,"sources":["Month.tsx"],"names":["Month","props","index","mode","date","dates","startDate","endDate","onPressYear","selectingYear","onPressDate","scrollMode","primaryColor","selectColor","roundness","disableWeekDays","locale","validRange","theme","textColorOnPrimary","realIndex","isHorizontal","isDisabled","isWithinValidRange","monthName","month","year","React","useMemo","md","Date","y","getFullYear","m","getMonth","formatter","Intl","DateTimeFormat","format","grid","today","daysInMonth","dayOfWeek","emptyDays","monthGrid","map","days","weekGrid","weekIndex","generatedDays","_","dayIndex","isFirstWeek","realDayIndex","beforeWeekDay","dayOfMonth","afterWeekDay","day","isToday","inRange","disabled","selected","leftCrop","rightCrop","isFirstDayOfMonth","isLastDayOfMonth","selectedStartDay","selectedEndDay","safeDates","some","d","yesterday","tomorrow","yesterdaySelected","tomorrowSelected","isWithinOptionalValidRange","styles","height","getMonthHeight","monthHeader","marginTop","monthHeaderSingleMarginTop","marginBottom","monthHeaderSingleMarginBottom","undefined","yearButton","borderRadius","yearButtonInner","monthLabel","fonts","medium","opacity1","opacity0","week","filter","gd","weekMargin","weekSize","daySize","montHeaderHeight","monthHeaderSingleHeight","StyleSheet","create","flexDirection","justifyContent","overflow","fontSize","opacity","alignSelf","marginLeft","paddingLeft","alignItems","Array","fill","getIndexCount","startAtIndex","weeksOffset","off","i","cIndex","gridCounts","getIndexFromHorizontalOffset","offset","width","Math","floor","getIndexFromVerticalOffset","estimatedIndex","ceil","estimatedMonthHeight","realOffset","getVerticalMonthsOffset","difference","beginOffset","getHorizontalMonthOffset","count","ob","monthsHeight","c","dayNamesHeight","calendarHeight","gc","currentMonthHeight","extraHeight","memo"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { IconButton, Text, useTheme, TouchableRipple } from 'react-native-paper'\nimport Day, { EmptyDay } from './Day'\n\nimport {\n addMonths,\n areDatesOnSameDay,\n daySize,\n DisableWeekDaysType,\n getDaysInMonth,\n getFirstDayOfMonth,\n getRealIndex,\n getGridCount,\n isDateBetween,\n gridCounts,\n showWeekDay,\n startAtIndex,\n beginOffset,\n estimatedMonthHeight,\n useRangeChecker,\n} from './dateUtils'\nimport { getCalendarHeaderHeight } from './CalendarHeader'\nimport type {\n CalendarDate,\n CalendarDates,\n ModeType,\n ValidRangeType,\n} from './Calendar'\nimport { dayNamesHeight } from './DayNames'\nimport { useTextColorOnPrimary } from '../utils'\n\ninterface BaseMonthProps {\n locale: undefined | string\n scrollMode: 'horizontal' | 'vertical'\n disableWeekDays?: DisableWeekDaysType\n mode: ModeType\n index: number\n onPressYear: (year: number) => any\n selectingYear: boolean\n onPressDate: (date: Date) => any\n primaryColor: string\n selectColor: string\n roundness: number\n validRange?: ValidRangeType\n\n // some of these should be required in final implementation\n startDate?: CalendarDate\n endDate?: CalendarDate\n date?: CalendarDate\n dates?: CalendarDates\n}\n\ninterface MonthRangeProps extends BaseMonthProps {\n mode: 'range'\n startDate: CalendarDate\n endDate: CalendarDate\n}\n\ninterface MonthSingleProps extends BaseMonthProps {\n mode: 'single'\n date: CalendarDate\n}\n\ninterface MonthMultiProps extends BaseMonthProps {\n mode: 'multiple'\n dates: CalendarDates\n}\n\nfunction Month(props: MonthSingleProps | MonthRangeProps | MonthMultiProps) {\n const {\n index,\n mode,\n date,\n dates,\n startDate,\n endDate,\n onPressYear,\n selectingYear,\n onPressDate,\n scrollMode,\n primaryColor,\n selectColor,\n roundness,\n disableWeekDays,\n locale,\n validRange,\n } = props\n const theme = useTheme()\n const textColorOnPrimary = useTextColorOnPrimary()\n const realIndex = getRealIndex(index)\n const isHorizontal = scrollMode === 'horizontal'\n const { isDisabled, isWithinValidRange } = useRangeChecker(validRange)\n const { monthName, month, year } = React.useMemo(() => {\n const md = addMonths(new Date(), realIndex)\n const y = md.getFullYear()\n const m = md.getMonth()\n const formatter = new Intl.DateTimeFormat(locale, {\n month: 'long',\n })\n return { monthName: formatter.format(md), month: m, year: y }\n }, [realIndex, locale])\n\n const grid = React.useMemo(() => {\n const today = new Date()\n\n const daysInMonth = getDaysInMonth({ year, month })\n const dayOfWeek = getFirstDayOfMonth({ year, month })\n const emptyDays = dayOfWeek\n\n return monthGrid(index).map(({ days, weekGrid }) => {\n return {\n weekIndex: weekGrid,\n generatedDays: days.map((_, dayIndex) => {\n const isFirstWeek = weekGrid === 0\n const realDayIndex = emptyDays - dayIndex\n const beforeWeekDay = isFirstWeek && realDayIndex > 0\n const dayOfMonth = weekGrid * 7 + dayIndex - emptyDays + 1\n const afterWeekDay = dayOfMonth > daysInMonth\n\n const day = new Date(year, month, dayOfMonth)\n const isToday = areDatesOnSameDay(day, today)\n\n let inRange = false\n let disabled = isDisabled(day)\n let selected = false\n\n let leftCrop = dayOfMonth === 1\n let rightCrop = dayOfMonth === daysInMonth\n\n const isFirstDayOfMonth = dayOfMonth === 1\n const isLastDayOfMonth = dayOfMonth === daysInMonth\n\n if (mode === 'range') {\n const selectedStartDay = areDatesOnSameDay(day, startDate)\n const selectedEndDay = areDatesOnSameDay(day, endDate)\n selected = selectedStartDay || selectedEndDay\n inRange = isDateBetween(day, {\n startDate,\n endDate,\n })\n if (selectedStartDay) {\n leftCrop = true\n }\n if (selectedEndDay) {\n rightCrop = true\n }\n if (dayIndex === 0 && !selectedStartDay) {\n leftCrop = false\n }\n\n if (dayIndex === 6 && !selectedEndDay) {\n rightCrop = false\n }\n\n if (\n (isFirstDayOfMonth && selectedEndDay) ||\n (isLastDayOfMonth && selectedStartDay)\n ) {\n inRange = false\n }\n } else if (mode === 'multiple') {\n const safeDates = dates || []\n selected = safeDates.some((d) => areDatesOnSameDay(day, d))\n\n const yesterday = new Date(year, month, dayOfMonth - 1)\n const tomorrow = new Date(year, month, dayOfMonth + 1)\n\n const yesterdaySelected = safeDates.some((d) =>\n areDatesOnSameDay(d, yesterday)\n )\n const tomorrowSelected = safeDates.some((d) =>\n areDatesOnSameDay(d, tomorrow)\n )\n\n if (selected) {\n if (tomorrowSelected && yesterdaySelected) {\n inRange = true\n }\n if (tomorrowSelected && !yesterdaySelected) {\n inRange = true\n leftCrop = true\n }\n\n if (yesterdaySelected && !tomorrowSelected) {\n inRange = true\n rightCrop = true\n }\n\n if (isFirstDayOfMonth && !tomorrowSelected) {\n inRange = false\n }\n\n if (isLastDayOfMonth && !yesterdaySelected) {\n inRange = false\n }\n\n if (inRange && !leftCrop && !rightCrop) {\n selected = false\n }\n }\n } else if (mode === 'single') {\n selected = areDatesOnSameDay(day, date)\n }\n\n const isWithinOptionalValidRange = isWithinValidRange(day)\n\n if (inRange && !disabled) {\n disabled = false\n }\n\n if (!isWithinOptionalValidRange) {\n disabled = true\n }\n\n return {\n beforeWeekDay,\n afterWeekDay,\n year,\n month,\n dayOfMonth,\n dayIndex,\n mode,\n selected,\n inRange,\n leftCrop,\n rightCrop,\n isToday,\n disabled,\n }\n }),\n }\n })\n }, [\n year,\n month,\n index,\n isDisabled,\n mode,\n isWithinValidRange,\n startDate,\n endDate,\n dates,\n date,\n ])\n\n return (\n <View style={[styles.month, { height: getMonthHeight(scrollMode, index) }]}>\n <View\n style={[\n styles.monthHeader,\n isHorizontal\n ? {\n marginTop: monthHeaderSingleMarginTop,\n marginBottom: monthHeaderSingleMarginBottom,\n }\n : null,\n ]}\n >\n <TouchableRipple\n disabled={!isHorizontal}\n onPress={isHorizontal ? () => onPressYear(year) : undefined}\n accessibilityRole=\"button\"\n accessibilityLabel={`${monthName} ${year}`}\n style={[\n styles.yearButton,\n {\n borderRadius: roundness,\n },\n ]}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n >\n <View\n style={[\n styles.yearButtonInner,\n {\n borderRadius: roundness,\n },\n ]}\n >\n <Text\n style={[styles.monthLabel, theme.fonts.medium]}\n selectable={false}\n >\n {monthName} {year}\n </Text>\n <View style={isHorizontal ? styles.opacity1 : styles.opacity0}>\n <IconButton\n onPress={isHorizontal ? () => onPressYear(year) : undefined}\n icon={selectingYear ? 'chevron-up' : 'chevron-down'}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n </View>\n </View>\n </TouchableRipple>\n </View>\n\n {grid.map(({ weekIndex, generatedDays }) => (\n <View style={styles.week} key={weekIndex}>\n {generatedDays\n .filter((gd) => showWeekDay(gd.dayIndex, disableWeekDays))\n .map((gd) =>\n gd.beforeWeekDay || gd.afterWeekDay ? (\n <EmptyDay key={gd.dayIndex} />\n ) : (\n <Day\n key={gd.dayIndex}\n theme={theme}\n day={gd.dayOfMonth}\n month={gd.month}\n year={gd.year}\n selected={gd.selected}\n inRange={gd.inRange}\n leftCrop={gd.leftCrop}\n rightCrop={gd.rightCrop}\n onPressDate={onPressDate}\n isToday={gd.isToday}\n selectColor={selectColor}\n primaryColor={primaryColor}\n disabled={gd.disabled}\n textColorOnPrimary={textColorOnPrimary}\n />\n )\n )}\n </View>\n ))}\n </View>\n )\n}\n\nexport const weekMargin = 6\nexport const weekSize = daySize + weekMargin\nexport const montHeaderHeight = 56\nexport const monthHeaderSingleMarginTop = 4\nexport const monthHeaderSingleMarginBottom = 8 + 44 + 12\nexport const monthHeaderSingleHeight =\n monthHeaderSingleMarginTop + monthHeaderSingleMarginBottom\n\nconst styles = StyleSheet.create({\n week: {\n flexDirection: 'row',\n marginBottom: weekMargin,\n height: daySize,\n },\n\n month: {},\n\n monthHeader: {\n height: montHeaderHeight,\n justifyContent: 'center',\n overflow: 'hidden',\n },\n monthLabel: { fontSize: 14, opacity: 0.7 },\n yearButton: { alignSelf: 'flex-start', marginLeft: 6 },\n yearButtonInner: {\n paddingLeft: 16,\n flexDirection: 'row',\n alignItems: 'center',\n },\n opacity0: { opacity: 0 },\n opacity1: { opacity: 1 },\n})\n\nconst monthGrid = (index: number) => {\n return Array(getGridCount(index))\n .fill(null)\n .map((_, weekGrid) => {\n const days = Array(7).fill(null)\n return { weekGrid, days }\n })\n}\n\nfunction getIndexCount(index: number): number {\n if (index > startAtIndex) {\n return index - startAtIndex\n }\n\n return -(startAtIndex - index)\n}\n\nfunction weeksOffset(index: number): number {\n if (index === startAtIndex) {\n return 0\n }\n let off = 0\n if (index > startAtIndex) {\n for (let i = 0; i < index - startAtIndex; i++) {\n const cIndex = startAtIndex + i\n off += gridCounts[cIndex] || getGridCount(cIndex)\n }\n } else {\n for (let i = 0; i < startAtIndex - index; i++) {\n const cIndex = startAtIndex - i - 1\n off -= gridCounts[cIndex] || getGridCount(cIndex)\n }\n }\n return off\n}\n\nexport function getIndexFromHorizontalOffset(\n offset: number,\n width: number\n): number {\n return startAtIndex + Math.floor(offset / width)\n}\n\nexport function getIndexFromVerticalOffset(offset: number): number {\n let estimatedIndex = startAtIndex + Math.ceil(offset / estimatedMonthHeight)\n\n const realOffset = getVerticalMonthsOffset(estimatedIndex)\n const difference = (realOffset - beginOffset - offset) / estimatedMonthHeight\n if (difference >= 1 || difference <= -1) {\n estimatedIndex -= Math.floor(difference)\n }\n return estimatedIndex\n}\n\nexport function getHorizontalMonthOffset(index: number, width: number) {\n if (index < 0) {\n return 0\n }\n return width * index\n}\n\nexport function getVerticalMonthsOffset(index: number) {\n const count = getIndexCount(index)\n const ob = weeksOffset(index)\n const monthsHeight = weekSize * ob\n const c = monthsHeight + count * (dayNamesHeight + montHeaderHeight)\n\n return (c || 0) + beginOffset\n}\n\nexport function getMonthHeight(\n scrollMode: 'horizontal' | 'vertical',\n index: number\n): number {\n const calendarHeight = getCalendarHeaderHeight(scrollMode)\n const gc = getGridCount(index)\n\n const currentMonthHeight = weekSize * gc\n const extraHeight =\n scrollMode === 'horizontal' ? monthHeaderSingleHeight : montHeaderHeight\n const c = calendarHeight + currentMonthHeight + extraHeight\n return c || 0\n}\n\nexport default React.memo(Month)\n"]}
@@ -75,6 +75,8 @@ function YearPure(_ref3) {
75
75
  style: styles.year
76
76
  }, /*#__PURE__*/React.createElement(_reactNativePaper.TouchableRipple, {
77
77
  onPress: () => onPressYear(year),
78
+ accessibilityRole: "button",
79
+ accessibilityLabel: String(year),
78
80
  style: styles.yearButton // RN types bug
79
81
  ,
80
82
  hasTVPreferredFocus: undefined,
@@ -1 +1 @@
1
- {"version":3,"sources":["YearPicker.tsx"],"names":["ITEM_HEIGHT","startYear","endYear","years","YearPicker","selectedYear","selectingYear","onPressYear","theme","flatList","React","useRef","useEffect","current","indexToGo","scrollToOffset","offset","animated","StyleSheet","absoluteFill","styles","root","backgroundColor","colors","surface","opacity1","opacity0","list","item","YearPure","year","selected","yearButton","undefined","yearInner","primary","yearLabel","Year","memo","create","flex","top","zIndex","marginLeft","marginRight","height","justifyContent","color","borderRadius","overflow","alignItems","fontSize","opacity"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { FlatList, StyleSheet, View } from 'react-native'\nimport { Text, TouchableRipple, useTheme } from 'react-native-paper'\nimport { range } from '../utils'\n\nconst ITEM_HEIGHT = 62\n\nconst startYear = 1800\nconst endYear = 2200\nconst years = range(startYear, endYear)\n\nexport default function YearPicker({\n selectedYear,\n selectingYear,\n onPressYear,\n}: {\n selectedYear: number | undefined\n selectingYear: boolean\n onPressYear: (year: number) => any\n}) {\n const theme = useTheme()\n const flatList = React.useRef<FlatList<number> | null>(null)\n\n // scroll to selected year\n React.useEffect(() => {\n if (flatList.current && selectedYear) {\n const indexToGo = selectedYear - startYear\n flatList.current.scrollToOffset({\n offset: (indexToGo / 3) * ITEM_HEIGHT - ITEM_HEIGHT,\n animated: false,\n })\n }\n }, [flatList, selectedYear])\n\n return (\n <View\n style={[\n StyleSheet.absoluteFill,\n styles.root,\n { backgroundColor: theme.colors.surface },\n selectingYear ? styles.opacity1 : styles.opacity0,\n ]}\n pointerEvents={selectingYear ? 'auto' : 'none'}\n >\n <FlatList<number>\n ref={flatList}\n style={styles.list}\n data={years}\n renderItem={({ item }) => (\n <Year\n year={item}\n selected={selectedYear === item}\n onPressYear={onPressYear}\n />\n )}\n keyExtractor={(item) => `${item}`}\n numColumns={3}\n />\n </View>\n )\n}\n\nfunction YearPure({\n year,\n selected,\n onPressYear,\n}: {\n year: number\n selected: boolean\n onPressYear: (newYear: number) => any\n}) {\n const theme = useTheme()\n return (\n <View style={styles.year}>\n <TouchableRipple\n onPress={() => onPressYear(year)}\n style={styles.yearButton}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n >\n <View\n style={[\n styles.yearInner,\n selected ? { backgroundColor: theme.colors.primary } : null,\n ]}\n >\n <Text\n style={[styles.yearLabel, selected ? styles.selectedYear : null]}\n selectable={false}\n >\n {year}\n </Text>\n </View>\n </TouchableRipple>\n </View>\n )\n}\nconst Year = React.memo(YearPure)\n\nconst styles = StyleSheet.create({\n root: {\n flex: 1,\n top: 56,\n zIndex: 100,\n },\n\n list: {\n flex: 1,\n },\n year: {\n flex: 1,\n marginLeft: 16,\n marginRight: 16,\n height: ITEM_HEIGHT,\n justifyContent: 'center',\n },\n selectedYear: { color: '#fff' },\n yearButton: {\n borderRadius: 46 / 2,\n overflow: 'hidden',\n },\n yearInner: {\n borderRadius: 46 / 2,\n height: 46,\n alignItems: 'center',\n justifyContent: 'center',\n },\n yearLabel: {\n fontSize: 16,\n },\n opacity0: {\n opacity: 0,\n },\n opacity1: {\n opacity: 1,\n },\n})\n"]}
1
+ {"version":3,"sources":["YearPicker.tsx"],"names":["ITEM_HEIGHT","startYear","endYear","years","YearPicker","selectedYear","selectingYear","onPressYear","theme","flatList","React","useRef","useEffect","current","indexToGo","scrollToOffset","offset","animated","StyleSheet","absoluteFill","styles","root","backgroundColor","colors","surface","opacity1","opacity0","list","item","YearPure","year","selected","String","yearButton","undefined","yearInner","primary","yearLabel","Year","memo","create","flex","top","zIndex","marginLeft","marginRight","height","justifyContent","color","borderRadius","overflow","alignItems","fontSize","opacity"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { FlatList, StyleSheet, View } from 'react-native'\nimport { Text, TouchableRipple, useTheme } from 'react-native-paper'\nimport { range } from '../utils'\n\nconst ITEM_HEIGHT = 62\n\nconst startYear = 1800\nconst endYear = 2200\nconst years = range(startYear, endYear)\n\nexport default function YearPicker({\n selectedYear,\n selectingYear,\n onPressYear,\n}: {\n selectedYear: number | undefined\n selectingYear: boolean\n onPressYear: (year: number) => any\n}) {\n const theme = useTheme()\n const flatList = React.useRef<FlatList<number> | null>(null)\n\n // scroll to selected year\n React.useEffect(() => {\n if (flatList.current && selectedYear) {\n const indexToGo = selectedYear - startYear\n flatList.current.scrollToOffset({\n offset: (indexToGo / 3) * ITEM_HEIGHT - ITEM_HEIGHT,\n animated: false,\n })\n }\n }, [flatList, selectedYear])\n\n return (\n <View\n style={[\n StyleSheet.absoluteFill,\n styles.root,\n { backgroundColor: theme.colors.surface },\n selectingYear ? styles.opacity1 : styles.opacity0,\n ]}\n pointerEvents={selectingYear ? 'auto' : 'none'}\n >\n <FlatList<number>\n ref={flatList}\n style={styles.list}\n data={years}\n renderItem={({ item }) => (\n <Year\n year={item}\n selected={selectedYear === item}\n onPressYear={onPressYear}\n />\n )}\n keyExtractor={(item) => `${item}`}\n numColumns={3}\n />\n </View>\n )\n}\n\nfunction YearPure({\n year,\n selected,\n onPressYear,\n}: {\n year: number\n selected: boolean\n onPressYear: (newYear: number) => any\n}) {\n const theme = useTheme()\n return (\n <View style={styles.year}>\n <TouchableRipple\n onPress={() => onPressYear(year)}\n accessibilityRole=\"button\"\n accessibilityLabel={String(year)}\n style={styles.yearButton}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n >\n <View\n style={[\n styles.yearInner,\n selected ? { backgroundColor: theme.colors.primary } : null,\n ]}\n >\n <Text\n style={[styles.yearLabel, selected ? styles.selectedYear : null]}\n selectable={false}\n >\n {year}\n </Text>\n </View>\n </TouchableRipple>\n </View>\n )\n}\nconst Year = React.memo(YearPure)\n\nconst styles = StyleSheet.create({\n root: {\n flex: 1,\n top: 56,\n zIndex: 100,\n },\n\n list: {\n flex: 1,\n },\n year: {\n flex: 1,\n marginLeft: 16,\n marginRight: 16,\n height: ITEM_HEIGHT,\n justifyContent: 'center',\n },\n selectedYear: { color: '#fff' },\n yearButton: {\n borderRadius: 46 / 2,\n overflow: 'hidden',\n },\n yearInner: {\n borderRadius: 46 / 2,\n height: 46,\n alignItems: 'center',\n justifyContent: 'center',\n },\n yearLabel: {\n fontSize: 16,\n },\n opacity0: {\n opacity: 0,\n },\n opacity1: {\n opacity: 1,\n },\n})\n"]}
@@ -72,6 +72,10 @@ function AnalogClock(_ref) {
72
72
  pickedHours += 12;
73
73
  }
74
74
 
75
+ if (modeRef.current === 'AM' && pickedHours === 12) {
76
+ pickedHours = 0;
77
+ }
78
+
75
79
  if (pickedHours === 24) {
76
80
  pickedHours = 0;
77
81
  }
@@ -1 +1 @@
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"]}
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\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 if (modeRef.current === 'AM' && pickedHours === 12) {\n pickedHours = 0\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"]}
@@ -13,7 +13,12 @@ const en = {
13
13
  mustBeHigherThan: 'Must be later then',
14
14
  mustBeLowerThan: 'Must be earlier then',
15
15
  mustBeBetween: 'Must be between',
16
- dateIsDisabled: 'Day is not allowed'
16
+ dateIsDisabled: 'Day is not allowed',
17
+ previous: 'Previous',
18
+ next: 'Next',
19
+ typeInDate: 'Type in date',
20
+ pickDateFromCalendar: 'Pick date from calendar',
21
+ close: 'Close'
17
22
  };
18
23
  var _default = en;
19
24
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"sources":["en.ts"],"names":["en","save","selectSingle","selectMultiple","selectRange","notAccordingToDateFormat","inputFormat","mustBeHigherThan","mustBeLowerThan","mustBeBetween","dateIsDisabled"],"mappings":";;;;;;AAEA,MAAMA,EAAoB,GAAG;AAC3BC,EAAAA,IAAI,EAAE,MADqB;AAE3BC,EAAAA,YAAY,EAAE,aAFa;AAG3BC,EAAAA,cAAc,EAAE,cAHW;AAI3BC,EAAAA,WAAW,EAAE,eAJc;AAK3BC,EAAAA,wBAAwB,EAAGC,WAAD,IACvB,uBAAsBA,WAAY,EANV;AAO3BC,EAAAA,gBAAgB,EAAE,oBAPS;AAQ3BC,EAAAA,eAAe,EAAE,sBARU;AAS3BC,EAAAA,aAAa,EAAE,iBATY;AAU3BC,EAAAA,cAAc,EAAE;AAVW,CAA7B;eAYeV,E","sourcesContent":["import type { TranslationsType } from './utils'\n\nconst en: TranslationsType = {\n save: 'Save',\n selectSingle: 'Select date',\n selectMultiple: 'Select dates',\n selectRange: 'Select period',\n notAccordingToDateFormat: (inputFormat: string) =>\n `Date format must be ${inputFormat}`,\n mustBeHigherThan: 'Must be later then',\n mustBeLowerThan: 'Must be earlier then',\n mustBeBetween: 'Must be between',\n dateIsDisabled: 'Day is not allowed',\n}\nexport default en\n"]}
1
+ {"version":3,"sources":["en.ts"],"names":["en","save","selectSingle","selectMultiple","selectRange","notAccordingToDateFormat","inputFormat","mustBeHigherThan","mustBeLowerThan","mustBeBetween","dateIsDisabled","previous","next","typeInDate","pickDateFromCalendar","close"],"mappings":";;;;;;AAEA,MAAMA,EAAoB,GAAG;AAC3BC,EAAAA,IAAI,EAAE,MADqB;AAE3BC,EAAAA,YAAY,EAAE,aAFa;AAG3BC,EAAAA,cAAc,EAAE,cAHW;AAI3BC,EAAAA,WAAW,EAAE,eAJc;AAK3BC,EAAAA,wBAAwB,EAAGC,WAAD,IACvB,uBAAsBA,WAAY,EANV;AAO3BC,EAAAA,gBAAgB,EAAE,oBAPS;AAQ3BC,EAAAA,eAAe,EAAE,sBARU;AAS3BC,EAAAA,aAAa,EAAE,iBATY;AAU3BC,EAAAA,cAAc,EAAE,oBAVW;AAW3BC,EAAAA,QAAQ,EAAE,UAXiB;AAY3BC,EAAAA,IAAI,EAAE,MAZqB;AAa3BC,EAAAA,UAAU,EAAE,cAbe;AAc3BC,EAAAA,oBAAoB,EAAE,yBAdK;AAe3BC,EAAAA,KAAK,EAAE;AAfoB,CAA7B;eAiBef,E","sourcesContent":["import type { TranslationsType } from './utils'\n\nconst en: TranslationsType = {\n save: 'Save',\n selectSingle: 'Select date',\n selectMultiple: 'Select dates',\n selectRange: 'Select period',\n notAccordingToDateFormat: (inputFormat: string) =>\n `Date format must be ${inputFormat}`,\n mustBeHigherThan: 'Must be later then',\n mustBeLowerThan: 'Must be earlier then',\n mustBeBetween: 'Must be between',\n dateIsDisabled: 'Day is not allowed',\n previous: 'Previous',\n next: 'Next',\n typeInDate: 'Type in date',\n pickDateFromCalendar: 'Pick date from calendar',\n close: 'Close',\n}\nexport default en\n"]}
@@ -13,7 +13,12 @@ const enGB = {
13
13
  mustBeHigherThan: 'Must be later then',
14
14
  mustBeLowerThan: 'Must be earlier then',
15
15
  mustBeBetween: 'Must be between',
16
- dateIsDisabled: 'Day is not allowed'
16
+ dateIsDisabled: 'Day is not allowed',
17
+ previous: 'Previous',
18
+ next: 'Next',
19
+ typeInDate: 'Type in date',
20
+ pickDateFromCalendar: 'Pick date from calendar',
21
+ close: 'Close'
17
22
  };
18
23
  var _default = enGB;
19
24
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"sources":["enGB.ts"],"names":["enGB","save","selectSingle","selectMultiple","selectRange","notAccordingToDateFormat","inputFormat","mustBeHigherThan","mustBeLowerThan","mustBeBetween","dateIsDisabled"],"mappings":";;;;;;AAEA,MAAMA,IAAsB,GAAG;AAC7BC,EAAAA,IAAI,EAAE,MADuB;AAE7BC,EAAAA,YAAY,EAAE,aAFe;AAG7BC,EAAAA,cAAc,EAAE,cAHa;AAI7BC,EAAAA,WAAW,EAAE,eAJgB;AAK7BC,EAAAA,wBAAwB,EAAGC,WAAD,IACvB,uBAAsBA,WAAY,EANR;AAO7BC,EAAAA,gBAAgB,EAAE,oBAPW;AAQ7BC,EAAAA,eAAe,EAAE,sBARY;AAS7BC,EAAAA,aAAa,EAAE,iBATc;AAU7BC,EAAAA,cAAc,EAAE;AAVa,CAA/B;eAYeV,I","sourcesContent":["import type { TranslationsType } from './utils'\n\nconst enGB: TranslationsType = {\n save: 'Save',\n selectSingle: 'Select date',\n selectMultiple: 'Select dates',\n selectRange: 'Select period',\n notAccordingToDateFormat: (inputFormat: string) =>\n `Date format must be ${inputFormat}`,\n mustBeHigherThan: 'Must be later then',\n mustBeLowerThan: 'Must be earlier then',\n mustBeBetween: 'Must be between',\n dateIsDisabled: 'Day is not allowed',\n}\nexport default enGB\n"]}
1
+ {"version":3,"sources":["enGB.ts"],"names":["enGB","save","selectSingle","selectMultiple","selectRange","notAccordingToDateFormat","inputFormat","mustBeHigherThan","mustBeLowerThan","mustBeBetween","dateIsDisabled","previous","next","typeInDate","pickDateFromCalendar","close"],"mappings":";;;;;;AAEA,MAAMA,IAAsB,GAAG;AAC7BC,EAAAA,IAAI,EAAE,MADuB;AAE7BC,EAAAA,YAAY,EAAE,aAFe;AAG7BC,EAAAA,cAAc,EAAE,cAHa;AAI7BC,EAAAA,WAAW,EAAE,eAJgB;AAK7BC,EAAAA,wBAAwB,EAAGC,WAAD,IACvB,uBAAsBA,WAAY,EANR;AAO7BC,EAAAA,gBAAgB,EAAE,oBAPW;AAQ7BC,EAAAA,eAAe,EAAE,sBARY;AAS7BC,EAAAA,aAAa,EAAE,iBATc;AAU7BC,EAAAA,cAAc,EAAE,oBAVa;AAW7BC,EAAAA,QAAQ,EAAE,UAXmB;AAY7BC,EAAAA,IAAI,EAAE,MAZuB;AAa7BC,EAAAA,UAAU,EAAE,cAbiB;AAc7BC,EAAAA,oBAAoB,EAAE,yBAdO;AAe7BC,EAAAA,KAAK,EAAE;AAfsB,CAA/B;eAiBef,I","sourcesContent":["import type { TranslationsType } from './utils'\n\nconst enGB: TranslationsType = {\n save: 'Save',\n selectSingle: 'Select date',\n selectMultiple: 'Select dates',\n selectRange: 'Select period',\n notAccordingToDateFormat: (inputFormat: string) =>\n `Date format must be ${inputFormat}`,\n mustBeHigherThan: 'Must be later then',\n mustBeLowerThan: 'Must be earlier then',\n mustBeBetween: 'Must be between',\n dateIsDisabled: 'Day is not allowed',\n previous: 'Previous',\n next: 'Next',\n typeInDate: 'Type in date',\n pickDateFromCalendar: 'Pick date from calendar',\n close: 'Close',\n}\nexport default enGB\n"]}
@@ -13,7 +13,12 @@ const nl = {
13
13
  mustBeHigherThan: 'Moet later dan',
14
14
  mustBeLowerThan: 'Moet eerder dan',
15
15
  mustBeBetween: 'Moet tussen',
16
- dateIsDisabled: 'Deze dag mag niet'
16
+ dateIsDisabled: 'Deze dag mag niet',
17
+ previous: 'Vorige',
18
+ next: 'Volgende',
19
+ typeInDate: 'Typ datum',
20
+ pickDateFromCalendar: 'Kies datum van kalender',
21
+ close: 'Sluit'
17
22
  };
18
23
  var _default = nl;
19
24
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"sources":["nl.ts"],"names":["nl","save","selectSingle","selectMultiple","selectRange","notAccordingToDateFormat","inputFormat","mustBeHigherThan","mustBeLowerThan","mustBeBetween","dateIsDisabled"],"mappings":";;;;;;AAEA,MAAMA,EAAoB,GAAG;AAC3BC,EAAAA,IAAI,EAAE,SADqB;AAE3BC,EAAAA,YAAY,EAAE,iBAFa;AAG3BC,EAAAA,cAAc,EAAE,kBAHW;AAI3BC,EAAAA,WAAW,EAAE,mBAJc;AAK3BC,EAAAA,wBAAwB,EAAGC,WAAD,IACvB,qBAAoBA,WAAY,OANR;AAO3BC,EAAAA,gBAAgB,EAAE,gBAPS;AAQ3BC,EAAAA,eAAe,EAAE,iBARU;AAS3BC,EAAAA,aAAa,EAAE,aATY;AAU3BC,EAAAA,cAAc,EAAE;AAVW,CAA7B;eAYeV,E","sourcesContent":["import type { TranslationsType } from './utils'\n\nconst nl: TranslationsType = {\n save: 'Opslaan',\n selectSingle: 'Selecteer datum',\n selectMultiple: 'Selecteer datums',\n selectRange: 'Selecteer periode',\n notAccordingToDateFormat: (inputFormat: string) =>\n `Datumformaat moet ${inputFormat} zijn`,\n mustBeHigherThan: 'Moet later dan',\n mustBeLowerThan: 'Moet eerder dan',\n mustBeBetween: 'Moet tussen',\n dateIsDisabled: 'Deze dag mag niet',\n}\nexport default nl\n"]}
1
+ {"version":3,"sources":["nl.ts"],"names":["nl","save","selectSingle","selectMultiple","selectRange","notAccordingToDateFormat","inputFormat","mustBeHigherThan","mustBeLowerThan","mustBeBetween","dateIsDisabled","previous","next","typeInDate","pickDateFromCalendar","close"],"mappings":";;;;;;AAEA,MAAMA,EAAoB,GAAG;AAC3BC,EAAAA,IAAI,EAAE,SADqB;AAE3BC,EAAAA,YAAY,EAAE,iBAFa;AAG3BC,EAAAA,cAAc,EAAE,kBAHW;AAI3BC,EAAAA,WAAW,EAAE,mBAJc;AAK3BC,EAAAA,wBAAwB,EAAGC,WAAD,IACvB,qBAAoBA,WAAY,OANR;AAO3BC,EAAAA,gBAAgB,EAAE,gBAPS;AAQ3BC,EAAAA,eAAe,EAAE,iBARU;AAS3BC,EAAAA,aAAa,EAAE,aATY;AAU3BC,EAAAA,cAAc,EAAE,mBAVW;AAW3BC,EAAAA,QAAQ,EAAE,QAXiB;AAY3BC,EAAAA,IAAI,EAAE,UAZqB;AAa3BC,EAAAA,UAAU,EAAE,WAbe;AAc3BC,EAAAA,oBAAoB,EAAE,yBAdK;AAe3BC,EAAAA,KAAK,EAAE;AAfoB,CAA7B;eAiBef,E","sourcesContent":["import type { TranslationsType } from './utils'\n\nconst nl: TranslationsType = {\n save: 'Opslaan',\n selectSingle: 'Selecteer datum',\n selectMultiple: 'Selecteer datums',\n selectRange: 'Selecteer periode',\n notAccordingToDateFormat: (inputFormat: string) =>\n `Datumformaat moet ${inputFormat} zijn`,\n mustBeHigherThan: 'Moet later dan',\n mustBeLowerThan: 'Moet eerder dan',\n mustBeBetween: 'Moet tussen',\n dateIsDisabled: 'Deze dag mag niet',\n previous: 'Vorige',\n next: 'Volgende',\n typeInDate: 'Typ datum',\n pickDateFromCalendar: 'Kies datum van kalender',\n close: 'Sluit',\n}\nexport default nl\n"]}
@@ -13,7 +13,12 @@ const pl = {
13
13
  mustBeHigherThan: 'Nie wcześniej niż',
14
14
  mustBeLowerThan: 'Nie później niż',
15
15
  mustBeBetween: 'Pomiędzy',
16
- dateIsDisabled: 'Niedozwolona data'
16
+ dateIsDisabled: 'Niedozwolona data',
17
+ previous: 'Poprzedni',
18
+ next: 'Dalej',
19
+ typeInDate: 'Wpisz datę',
20
+ pickDateFromCalendar: 'Wybierz datę z kalendarza',
21
+ close: 'Zamknij'
17
22
  };
18
23
  var _default = pl;
19
24
  exports.default = _default;