react-native-paper-dates 0.5.1 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/README.md +8 -3
  2. package/lib/commonjs/Date/AnimatedCrossView.js +7 -6
  3. package/lib/commonjs/Date/AnimatedCrossView.js.map +1 -1
  4. package/lib/commonjs/Date/AutoSizer.js +4 -3
  5. package/lib/commonjs/Date/AutoSizer.js.map +1 -1
  6. package/lib/commonjs/Date/Calendar.js +37 -31
  7. package/lib/commonjs/Date/Calendar.js.map +1 -1
  8. package/lib/commonjs/Date/CalendarEdit.js +18 -14
  9. package/lib/commonjs/Date/CalendarEdit.js.map +1 -1
  10. package/lib/commonjs/Date/CalendarHeader.js +17 -10
  11. package/lib/commonjs/Date/CalendarHeader.js.map +1 -1
  12. package/lib/commonjs/Date/DatePickerInput.js +28 -21
  13. package/lib/commonjs/Date/DatePickerInput.js.map +1 -1
  14. package/lib/commonjs/Date/DatePickerModalContentHeader.js +30 -24
  15. package/lib/commonjs/Date/DatePickerModalContentHeader.js.map +1 -1
  16. package/lib/commonjs/Date/DatePickerModalHeader.js +4 -1
  17. package/lib/commonjs/Date/DatePickerModalHeader.js.map +1 -1
  18. package/lib/commonjs/Date/DatePickerModalHeaderBackground.js +4 -3
  19. package/lib/commonjs/Date/DatePickerModalHeaderBackground.js.map +1 -1
  20. package/lib/commonjs/Date/DateRangeInput.js +13 -8
  21. package/lib/commonjs/Date/DateRangeInput.js.map +1 -1
  22. package/lib/commonjs/Date/Day.js +4 -1
  23. package/lib/commonjs/Date/Day.js.map +1 -1
  24. package/lib/commonjs/Date/DayName.js +4 -3
  25. package/lib/commonjs/Date/DayName.js.map +1 -1
  26. package/lib/commonjs/Date/DayNames.js +5 -4
  27. package/lib/commonjs/Date/DayNames.js.map +1 -1
  28. package/lib/commonjs/Date/DayRange.js +7 -6
  29. package/lib/commonjs/Date/DayRange.js.map +1 -1
  30. package/lib/commonjs/Date/Month.js +45 -34
  31. package/lib/commonjs/Date/Month.js.map +1 -1
  32. package/lib/commonjs/Date/Swiper.js +33 -27
  33. package/lib/commonjs/Date/Swiper.js.map +1 -1
  34. package/lib/commonjs/Date/Swiper.native.js +27 -21
  35. package/lib/commonjs/Date/Swiper.native.js.map +1 -1
  36. package/lib/commonjs/Date/SwiperUtils.js +5 -4
  37. package/lib/commonjs/Date/SwiperUtils.js.map +1 -1
  38. package/lib/commonjs/Date/YearPicker.js +26 -18
  39. package/lib/commonjs/Date/YearPicker.js.map +1 -1
  40. package/lib/commonjs/Date/dateUtils.js +49 -37
  41. package/lib/commonjs/Date/dateUtils.js.map +1 -1
  42. package/lib/commonjs/Date/inputUtils.js +8 -7
  43. package/lib/commonjs/Date/inputUtils.js.map +1 -1
  44. package/lib/commonjs/TextInputMask.js +7 -6
  45. package/lib/commonjs/TextInputMask.js.map +1 -1
  46. package/lib/commonjs/Time/AmPmSwitcher.js +12 -10
  47. package/lib/commonjs/Time/AmPmSwitcher.js.map +1 -1
  48. package/lib/commonjs/Time/AnalogClock.js +8 -7
  49. package/lib/commonjs/Time/AnalogClock.js.map +1 -1
  50. package/lib/commonjs/Time/AnalogClockHours.js +5 -4
  51. package/lib/commonjs/Time/AnalogClockHours.js.map +1 -1
  52. package/lib/commonjs/Time/AnalogClockMinutes.js +5 -4
  53. package/lib/commonjs/Time/AnalogClockMinutes.js.map +1 -1
  54. package/lib/commonjs/Time/AnimatedClockSwitcher.js +6 -5
  55. package/lib/commonjs/Time/AnimatedClockSwitcher.js.map +1 -1
  56. package/lib/commonjs/Time/TimeInput.js +14 -10
  57. package/lib/commonjs/Time/TimeInput.js.map +1 -1
  58. package/lib/commonjs/Time/TimeInputs.js +10 -9
  59. package/lib/commonjs/Time/TimeInputs.js.map +1 -1
  60. package/lib/commonjs/Time/TimePicker.js +10 -9
  61. package/lib/commonjs/Time/TimePicker.js.map +1 -1
  62. package/lib/commonjs/Time/TimePickerModal.js +17 -13
  63. package/lib/commonjs/Time/TimePickerModal.js.map +1 -1
  64. package/lib/commonjs/Time/timeUtils.js +7 -6
  65. package/lib/commonjs/Time/timeUtils.js.map +1 -1
  66. package/lib/commonjs/index.js +29 -11
  67. package/lib/commonjs/index.js.map +1 -1
  68. package/lib/commonjs/translations/enGB.js +20 -0
  69. package/lib/commonjs/translations/enGB.js.map +1 -0
  70. package/lib/commonjs/translations/pl.js +20 -0
  71. package/lib/commonjs/translations/pl.js.map +1 -0
  72. package/lib/commonjs/utils.js +4 -4
  73. package/lib/module/Date/AnimatedCrossView.js +7 -6
  74. package/lib/module/Date/AnimatedCrossView.js.map +1 -1
  75. package/lib/module/Date/AutoSizer.js +4 -3
  76. package/lib/module/Date/AutoSizer.js.map +1 -1
  77. package/lib/module/Date/Calendar.js +37 -31
  78. package/lib/module/Date/Calendar.js.map +1 -1
  79. package/lib/module/Date/CalendarEdit.js +18 -14
  80. package/lib/module/Date/CalendarEdit.js.map +1 -1
  81. package/lib/module/Date/CalendarHeader.js +16 -9
  82. package/lib/module/Date/CalendarHeader.js.map +1 -1
  83. package/lib/module/Date/DatePickerInput.js +28 -21
  84. package/lib/module/Date/DatePickerInput.js.map +1 -1
  85. package/lib/module/Date/DatePickerModalContentHeader.js +28 -22
  86. package/lib/module/Date/DatePickerModalContentHeader.js.map +1 -1
  87. package/lib/module/Date/DatePickerModalHeader.js +4 -1
  88. package/lib/module/Date/DatePickerModalHeader.js.map +1 -1
  89. package/lib/module/Date/DatePickerModalHeaderBackground.js +4 -3
  90. package/lib/module/Date/DatePickerModalHeaderBackground.js.map +1 -1
  91. package/lib/module/Date/DateRangeInput.js +13 -8
  92. package/lib/module/Date/DateRangeInput.js.map +1 -1
  93. package/lib/module/Date/Day.js +4 -1
  94. package/lib/module/Date/Day.js.map +1 -1
  95. package/lib/module/Date/DayName.js +4 -3
  96. package/lib/module/Date/DayName.js.map +1 -1
  97. package/lib/module/Date/DayNames.js +5 -4
  98. package/lib/module/Date/DayNames.js.map +1 -1
  99. package/lib/module/Date/DayRange.js +7 -6
  100. package/lib/module/Date/DayRange.js.map +1 -1
  101. package/lib/module/Date/Month.js +41 -31
  102. package/lib/module/Date/Month.js.map +1 -1
  103. package/lib/module/Date/Swiper.js +32 -26
  104. package/lib/module/Date/Swiper.js.map +1 -1
  105. package/lib/module/Date/Swiper.native.js +27 -21
  106. package/lib/module/Date/Swiper.native.js.map +1 -1
  107. package/lib/module/Date/SwiperUtils.js +5 -4
  108. package/lib/module/Date/SwiperUtils.js.map +1 -1
  109. package/lib/module/Date/YearPicker.js +26 -18
  110. package/lib/module/Date/YearPicker.js.map +1 -1
  111. package/lib/module/Date/dateUtils.js +33 -25
  112. package/lib/module/Date/dateUtils.js.map +1 -1
  113. package/lib/module/Date/inputUtils.js +8 -7
  114. package/lib/module/Date/inputUtils.js.map +1 -1
  115. package/lib/module/TextInputMask.js +7 -6
  116. package/lib/module/TextInputMask.js.map +1 -1
  117. package/lib/module/Time/AmPmSwitcher.js +12 -10
  118. package/lib/module/Time/AmPmSwitcher.js.map +1 -1
  119. package/lib/module/Time/AnalogClock.js +8 -7
  120. package/lib/module/Time/AnalogClock.js.map +1 -1
  121. package/lib/module/Time/AnalogClockHours.js +5 -4
  122. package/lib/module/Time/AnalogClockHours.js.map +1 -1
  123. package/lib/module/Time/AnalogClockMinutes.js +5 -4
  124. package/lib/module/Time/AnalogClockMinutes.js.map +1 -1
  125. package/lib/module/Time/AnimatedClockSwitcher.js +6 -5
  126. package/lib/module/Time/AnimatedClockSwitcher.js.map +1 -1
  127. package/lib/module/Time/TimeInput.js +14 -10
  128. package/lib/module/Time/TimeInput.js.map +1 -1
  129. package/lib/module/Time/TimeInputs.js +10 -9
  130. package/lib/module/Time/TimeInputs.js.map +1 -1
  131. package/lib/module/Time/TimePicker.js +10 -9
  132. package/lib/module/Time/TimePicker.js.map +1 -1
  133. package/lib/module/Time/TimePickerModal.js +17 -13
  134. package/lib/module/Time/TimePickerModal.js.map +1 -1
  135. package/lib/module/index.js +2 -0
  136. package/lib/module/index.js.map +1 -1
  137. package/lib/module/translations/enGB.js +13 -0
  138. package/lib/module/translations/enGB.js.map +1 -0
  139. package/lib/module/translations/pl.js +13 -0
  140. package/lib/module/translations/pl.js.map +1 -0
  141. package/lib/typescript/Date/DatePickerInput.d.ts +4 -4
  142. package/lib/typescript/TextInputMask.d.ts +3 -3
  143. package/lib/typescript/Time/AmPmSwitcher.d.ts +1 -1
  144. package/lib/typescript/Time/AnalogClock.d.ts +1 -1
  145. package/lib/typescript/Time/TimeInputs.d.ts +1 -1
  146. package/lib/typescript/Time/TimePickerModal.d.ts +1 -1
  147. package/lib/typescript/index.d.ts +2 -0
  148. package/lib/typescript/translations/enGB.d.ts +3 -0
  149. package/lib/typescript/translations/pl.d.ts +3 -0
  150. package/package.json +19 -17
  151. package/src/Date/CalendarEdit.tsx +3 -0
  152. package/src/Date/CalendarHeader.tsx +14 -2
  153. package/src/Date/DatePickerInput.tsx +3 -0
  154. package/src/Date/DatePickerModalContentHeader.tsx +3 -0
  155. package/src/Date/DatePickerModalHeader.tsx +3 -0
  156. package/src/Date/DateRangeInput.tsx +7 -1
  157. package/src/Date/Day.tsx +3 -0
  158. package/src/Date/Month.tsx +6 -0
  159. package/src/Date/Swiper.tsx +1 -0
  160. package/src/Date/YearPicker.tsx +4 -1
  161. package/src/Time/AmPmSwitcher.tsx +1 -1
  162. package/src/Time/AnalogClock.tsx +1 -5
  163. package/src/Time/AnalogClockMinutes.tsx +4 -1
  164. package/src/Time/TimeInput.tsx +3 -0
  165. package/src/Time/TimeInputs.tsx +1 -5
  166. package/src/Time/TimePickerModal.tsx +4 -1
  167. package/src/index.tsx +2 -0
  168. package/src/translations/enGB.ts +15 -0
  169. package/src/translations/pl.ts +15 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["DatePickerModalContentHeader.tsx"],"names":["React","View","StyleSheet","IconButton","Text","useHeaderTextColor","Color","getTranslation","getLabel","locale","mode","configuredLabel","DatePickerModalContentHeader","props","onToggle","collapsed","moreLabel","label","color","allowEditing","styles","header","toUpperCase","headerContentContainer","fill","HeaderContentSingle","state","emptyLabel","lighterColor","fade","rgb","toString","dateColor","date","formatter","useMemo","Intl","DateTimeFormat","month","day","singleHeaderText","format","HeaderContentMulti","dateCount","dates","length","map","join","HeaderContentRange","headerSeparator","startLabel","endLabel","startColor","startDate","endColor","endDate","rangeHeaderText","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 />\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":["React","View","StyleSheet","IconButton","Text","useHeaderTextColor","Color","getTranslation","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","useMemo","Intl","DateTimeFormat","month","day","singleHeaderText","format","HeaderContentMulti","dateCount","dates","length","map","join","HeaderContentRange","headerSeparator","startLabel","endLabel","startColor","startDate","endColor","endDate","rangeHeaderText","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"]}
@@ -20,7 +20,10 @@ export default function DatePickerModalHeader(props) {
20
20
  icon: "close",
21
21
  onPress: props.onDismiss,
22
22
  color: color,
23
- testID: "react-native-paper-dates-close"
23
+ testID: "react-native-paper-dates-close" // RN types bug
24
+ ,
25
+ hasTVPreferredFocus: undefined,
26
+ tvParallaxProperties: undefined
24
27
  }), /*#__PURE__*/React.createElement(Appbar.Content, {
25
28
  title: ''
26
29
  }), /*#__PURE__*/React.createElement(Button, {
@@ -1 +1 @@
1
- {"version":3,"sources":["DatePickerModalHeader.tsx"],"names":["React","Animated","StyleSheet","SafeAreaView","Appbar","Button","useHeaderTextColor","getTranslation","DatePickerModalHeader","props","disableSafeTop","locale","saveLabel","color","styles","animated","safeContent","safeContentNoTop","appbarHeader","onDismiss","onSave","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 />\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":["React","Animated","StyleSheet","SafeAreaView","Appbar","Button","useHeaderTextColor","getTranslation","DatePickerModalHeader","props","disableSafeTop","locale","saveLabel","color","styles","animated","safeContent","safeContentNoTop","appbarHeader","onDismiss","undefined","onSave","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,9 +1,10 @@
1
1
  import { Animated, SafeAreaView, StyleSheet } from 'react-native';
2
2
  import * as React from 'react';
3
3
  import { useHeaderBackgroundColor } from '../utils';
4
- export default function DatePickerModalHeaderBackground({
5
- children
6
- }) {
4
+ export default function DatePickerModalHeaderBackground(_ref) {
5
+ let {
6
+ children
7
+ } = _ref;
7
8
  const backgroundColor = useHeaderBackgroundColor();
8
9
  return /*#__PURE__*/React.createElement(Animated.View, {
9
10
  style: [styles.animated, {
@@ -1 +1 @@
1
- {"version":3,"sources":["DatePickerModalHeaderBackground.tsx"],"names":["Animated","SafeAreaView","StyleSheet","React","useHeaderBackgroundColor","DatePickerModalHeaderBackground","children","backgroundColor","styles","animated","safeContent","create","paddingBottom","elevation"],"mappings":"AAAA,SAASA,QAAT,EAAmBC,YAAnB,EAAiCC,UAAjC,QAAmD,cAAnD;AACA,OAAO,KAAKC,KAAZ,MAAuB,OAAvB;AACA,SAASC,wBAAT,QAAyC,UAAzC;AAEA,eAAe,SAASC,+BAAT,CAAyC;AACtDC,EAAAA;AADsD,CAAzC,EAIZ;AACD,QAAMC,eAAe,GAAGH,wBAAwB,EAAhD;AAEA,sBACE,oBAAC,QAAD,CAAU,IAAV;AACE,IAAA,KAAK,EAAE,CACLI,MAAM,CAACC,QADF,EAEL;AACEF,MAAAA;AADF,KAFK;AADT,kBAQE,oBAAC,YAAD;AAAc,IAAA,KAAK,EAAEC,MAAM,CAACE;AAA5B,KAA0CJ,QAA1C,CARF,CADF;AAYD;AAED,MAAME,MAAM,GAAGN,UAAU,CAACS,MAAX,CAAkB;AAC/BF,EAAAA,QAAQ,EAAE;AACRG,IAAAA,aAAa,EAAE,CADP;AAERC,IAAAA,SAAS,EAAE;AAFH,GADqB;AAK/BH,EAAAA,WAAW,EAAE;AACXE,IAAAA,aAAa,EAAE;AADJ;AALkB,CAAlB,CAAf","sourcesContent":["import { Animated, SafeAreaView, StyleSheet } from 'react-native'\nimport * as React from 'react'\nimport { useHeaderBackgroundColor } from '../utils'\n\nexport default function DatePickerModalHeaderBackground({\n children,\n}: {\n children: any\n}) {\n const backgroundColor = useHeaderBackgroundColor()\n\n return (\n <Animated.View\n style={[\n styles.animated,\n {\n backgroundColor,\n },\n ]}\n >\n <SafeAreaView style={styles.safeContent}>{children}</SafeAreaView>\n </Animated.View>\n )\n}\n\nconst styles = StyleSheet.create({\n animated: {\n paddingBottom: 0,\n elevation: 4,\n },\n safeContent: {\n paddingBottom: 0,\n },\n})\n"]}
1
+ {"version":3,"sources":["DatePickerModalHeaderBackground.tsx"],"names":["Animated","SafeAreaView","StyleSheet","React","useHeaderBackgroundColor","DatePickerModalHeaderBackground","children","backgroundColor","styles","animated","safeContent","create","paddingBottom","elevation"],"mappings":"AAAA,SAASA,QAAT,EAAmBC,YAAnB,EAAiCC,UAAjC,QAAmD,cAAnD;AACA,OAAO,KAAKC,KAAZ,MAAuB,OAAvB;AACA,SAASC,wBAAT,QAAyC,UAAzC;AAEA,eAAe,SAASC,+BAAT,OAIZ;AAAA,MAJqD;AACtDC,IAAAA;AADsD,GAIrD;AACD,QAAMC,eAAe,GAAGH,wBAAwB,EAAhD;AAEA,sBACE,oBAAC,QAAD,CAAU,IAAV;AACE,IAAA,KAAK,EAAE,CACLI,MAAM,CAACC,QADF,EAEL;AACEF,MAAAA;AADF,KAFK;AADT,kBAQE,oBAAC,YAAD;AAAc,IAAA,KAAK,EAAEC,MAAM,CAACE;AAA5B,KAA0CJ,QAA1C,CARF,CADF;AAYD;AAED,MAAME,MAAM,GAAGN,UAAU,CAACS,MAAX,CAAkB;AAC/BF,EAAAA,QAAQ,EAAE;AACRG,IAAAA,aAAa,EAAE,CADP;AAERC,IAAAA,SAAS,EAAE;AAFH,GADqB;AAK/BH,EAAAA,WAAW,EAAE;AACXE,IAAAA,aAAa,EAAE;AADJ;AALkB,CAAlB,CAAf","sourcesContent":["import { Animated, SafeAreaView, StyleSheet } from 'react-native'\nimport * as React from 'react'\nimport { useHeaderBackgroundColor } from '../utils'\n\nexport default function DatePickerModalHeaderBackground({\n children,\n}: {\n children: any\n}) {\n const backgroundColor = useHeaderBackgroundColor()\n\n return (\n <Animated.View\n style={[\n styles.animated,\n {\n backgroundColor,\n },\n ]}\n >\n <SafeAreaView style={styles.safeContent}>{children}</SafeAreaView>\n </Animated.View>\n )\n}\n\nconst styles = StyleSheet.create({\n animated: {\n paddingBottom: 0,\n elevation: 4,\n },\n safeContent: {\n paddingBottom: 0,\n },\n})\n"]}
@@ -3,18 +3,20 @@ import { View } from 'react-native';
3
3
  import { Text, IconButton } from 'react-native-paper';
4
4
  import DatePickerModal from './DatePickerModal'; // WORK IN PROGRESS
5
5
 
6
- export default function DateRangeInput({
7
- locale
8
- }) {
6
+ export default function DateRangeInput(_ref) {
7
+ let {
8
+ locale
9
+ } = _ref;
9
10
  const [visible, setVisible] = React.useState(false);
10
11
  const onDismiss = React.useCallback(() => {
11
12
  setVisible(false);
12
13
  }, [setVisible]);
13
14
  const onConfirm = React.useCallback( // eslint-disable-next-line @typescript-eslint/no-unused-vars
14
- ({
15
- startDate,
16
- endDate
17
- }) => {
15
+ _ref2 => {
16
+ let {
17
+ startDate,
18
+ endDate
19
+ } = _ref2;
18
20
  setVisible(false);
19
21
  console.log({
20
22
  startDate,
@@ -47,7 +49,10 @@ export default function DateRangeInput({
47
49
  }
48
50
  }, /*#__PURE__*/React.createElement(Text, null, "Tot")), /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(IconButton, {
49
51
  icon: "calendar",
50
- onPress: () => setVisible(true)
52
+ onPress: () => setVisible(true) // RN types bug
53
+ ,
54
+ hasTVPreferredFocus: undefined,
55
+ tvParallaxProperties: undefined
51
56
  }), /*#__PURE__*/React.createElement(Text, {
52
57
  style: {
53
58
  opacity: 0
@@ -1 +1 @@
1
- {"version":3,"sources":["DateRangeInput.tsx"],"names":["React","View","Text","IconButton","DatePickerModal","DateRangeInput","locale","visible","setVisible","useState","onDismiss","useCallback","onConfirm","startDate","endDate","console","log","flexDirection","alignItems","flex","fontSize","marginLeft","marginRight","opacity","undefined"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,IAAT,QAAqB,cAArB;AACA,SAASC,IAAT,EAAeC,UAAf,QAAiC,oBAAjC;AAEA,OAAOC,eAAP,MAA4B,mBAA5B,C,CAEA;;AACA,eAAe,SAASC,cAAT,CAAwB;AAAEC,EAAAA;AAAF,CAAxB,EAAwD;AACrE,QAAM,CAACC,OAAD,EAAUC,UAAV,IAAwBR,KAAK,CAACS,QAAN,CAAwB,KAAxB,CAA9B;AACA,QAAMC,SAAS,GAAGV,KAAK,CAACW,WAAN,CAAkB,MAAM;AACxCH,IAAAA,UAAU,CAAC,KAAD,CAAV;AACD,GAFiB,EAEf,CAACA,UAAD,CAFe,CAAlB;AAGA,QAAMI,SAAS,GAAGZ,KAAK,CAACW,WAAN,EAChB;AACA,GAAC;AAAEE,IAAAA,SAAF;AAAaC,IAAAA;AAAb,GAAD,KAA8D;AAC5DN,IAAAA,UAAU,CAAC,KAAD,CAAV;AACAO,IAAAA,OAAO,CAACC,GAAR,CAAY;AAAEH,MAAAA,SAAF;AAAaC,MAAAA;AAAb,KAAZ;AACD,GALe,EAMhB,CAACN,UAAD,CANgB,CAAlB;AASA,sBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAES,MAAAA,aAAa,EAAE,KAAjB;AAAwBC,MAAAA,UAAU,EAAE;AAApC;AAAb,kBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAEC,MAAAA,IAAI,EAAE;AAAR;AAAb,kBAQE,oBAAC,IAAD,cARF,CADF,eAWE,oBAAC,IAAD,qBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAEC,MAAAA,QAAQ,EAAE,EAAZ;AAAgBC,MAAAA,UAAU,EAAE,EAA5B;AAAgCC,MAAAA,WAAW,EAAE;AAA7C;AAAb,UADF,eAIE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE;AAAX,KAAb;AAA6B,IAAA,UAAU,EAAE;AAAzC,WAJF,CAXF,eAmBE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAEJ,MAAAA,IAAI,EAAE;AAAR;AAAb,kBAQE,oBAAC,IAAD,cARF,CAnBF,eA6BE,oBAAC,IAAD,qBACE,oBAAC,UAAD;AAAY,IAAA,IAAI,EAAC,UAAjB;AAA4B,IAAA,OAAO,EAAE,MAAMX,UAAU,CAAC,IAAD;AAArD,IADF,eAEE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAEe,MAAAA,OAAO,EAAE;AAAX,KAAb;AAA6B,IAAA,UAAU,EAAE;AAAzC,WAFF,CA7BF,eAmCE,oBAAC,eAAD;AACE,IAAA,MAAM,EAAEjB,MADV;AAEE,IAAA,IAAI,EAAC,OAFP;AAGE,IAAA,OAAO,EAAEC,OAHX;AAIE,IAAA,SAAS,EAAEG,SAJb;AAKE,IAAA,SAAS,EAAEE,SALb;AAME,IAAA,SAAS,EAAEY,SANb;AAOE,IAAA,OAAO,EAAEA;AAPX,IAnCF,CADF;AA+CD","sourcesContent":["import * as React from 'react'\nimport { View } from 'react-native'\nimport { Text, IconButton } from 'react-native-paper'\n\nimport DatePickerModal from './DatePickerModal'\n\n// WORK IN PROGRESS\nexport default function DateRangeInput({ locale }: { locale: string }) {\n const [visible, setVisible] = React.useState<boolean>(false)\n const onDismiss = React.useCallback(() => {\n setVisible(false)\n }, [setVisible])\n const onConfirm = React.useCallback(\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n ({ startDate, endDate }: { startDate: any; endDate: any }) => {\n setVisible(false)\n console.log({ startDate, endDate })\n },\n [setVisible]\n )\n\n return (\n <View style={{ flexDirection: 'row', alignItems: 'center' }}>\n <View style={{ flex: 1 }}>\n {/*<DatePickerInput*/}\n {/* value={''}*/}\n {/* keyboardType={'numeric'}*/}\n {/* placeholder={'DD-MM-YYY'}*/}\n {/* mask={'DD-MM-YYY'}*/}\n {/* onChangeText={() => {}}*/}\n {/*/>*/}\n <Text>Van</Text>\n </View>\n <View>\n <Text style={{ fontSize: 16, marginLeft: 12, marginRight: 12 }}>\n to\n </Text>\n <Text style={{ opacity: 0 }} accessible={false}>\n tot\n </Text>\n </View>\n <View style={{ flex: 1 }}>\n {/*<DatePickerInput*/}\n {/* // value={''}*/}\n {/* // keyboardType={'numeric'}*/}\n {/* // placeholder={'DD-MM-YYY'}*/}\n {/* // mask={'DD-MM-YYY'}*/}\n {/* // onChangeText={() => {}}*/}\n {/*/>*/}\n <Text>Tot</Text>\n </View>\n <View>\n <IconButton icon=\"calendar\" onPress={() => setVisible(true)} />\n <Text style={{ opacity: 0 }} accessible={false}>\n tot\n </Text>\n </View>\n <DatePickerModal\n locale={locale}\n mode=\"range\"\n visible={visible}\n onDismiss={onDismiss}\n onConfirm={onConfirm}\n startDate={undefined}\n endDate={undefined}\n />\n </View>\n )\n}\n"]}
1
+ {"version":3,"sources":["DateRangeInput.tsx"],"names":["React","View","Text","IconButton","DatePickerModal","DateRangeInput","locale","visible","setVisible","useState","onDismiss","useCallback","onConfirm","startDate","endDate","console","log","flexDirection","alignItems","flex","fontSize","marginLeft","marginRight","opacity","undefined"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,IAAT,QAAqB,cAArB;AACA,SAASC,IAAT,EAAeC,UAAf,QAAiC,oBAAjC;AAEA,OAAOC,eAAP,MAA4B,mBAA5B,C,CAEA;;AACA,eAAe,SAASC,cAAT,OAAwD;AAAA,MAAhC;AAAEC,IAAAA;AAAF,GAAgC;AACrE,QAAM,CAACC,OAAD,EAAUC,UAAV,IAAwBR,KAAK,CAACS,QAAN,CAAwB,KAAxB,CAA9B;AACA,QAAMC,SAAS,GAAGV,KAAK,CAACW,WAAN,CAAkB,MAAM;AACxCH,IAAAA,UAAU,CAAC,KAAD,CAAV;AACD,GAFiB,EAEf,CAACA,UAAD,CAFe,CAAlB;AAGA,QAAMI,SAAS,GAAGZ,KAAK,CAACW,WAAN,EAChB;AACA,WAA8D;AAAA,QAA7D;AAAEE,MAAAA,SAAF;AAAaC,MAAAA;AAAb,KAA6D;AAC5DN,IAAAA,UAAU,CAAC,KAAD,CAAV;AACAO,IAAAA,OAAO,CAACC,GAAR,CAAY;AAAEH,MAAAA,SAAF;AAAaC,MAAAA;AAAb,KAAZ;AACD,GALe,EAMhB,CAACN,UAAD,CANgB,CAAlB;AASA,sBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAES,MAAAA,aAAa,EAAE,KAAjB;AAAwBC,MAAAA,UAAU,EAAE;AAApC;AAAb,kBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAEC,MAAAA,IAAI,EAAE;AAAR;AAAb,kBAQE,oBAAC,IAAD,cARF,CADF,eAWE,oBAAC,IAAD,qBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAEC,MAAAA,QAAQ,EAAE,EAAZ;AAAgBC,MAAAA,UAAU,EAAE,EAA5B;AAAgCC,MAAAA,WAAW,EAAE;AAA7C;AAAb,UADF,eAIE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE;AAAX,KAAb;AAA6B,IAAA,UAAU,EAAE;AAAzC,WAJF,CAXF,eAmBE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAEJ,MAAAA,IAAI,EAAE;AAAR;AAAb,kBAQE,oBAAC,IAAD,cARF,CAnBF,eA6BE,oBAAC,IAAD,qBACE,oBAAC,UAAD;AACE,IAAA,IAAI,EAAC,UADP;AAEE,IAAA,OAAO,EAAE,MAAMX,UAAU,CAAC,IAAD,CAF3B,CAGE;AAHF;AAIE,IAAA,mBAAmB,EAAEgB,SAJvB;AAKE,IAAA,oBAAoB,EAAEA;AALxB,IADF,eAQE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAED,MAAAA,OAAO,EAAE;AAAX,KAAb;AAA6B,IAAA,UAAU,EAAE;AAAzC,WARF,CA7BF,eAyCE,oBAAC,eAAD;AACE,IAAA,MAAM,EAAEjB,MADV;AAEE,IAAA,IAAI,EAAC,OAFP;AAGE,IAAA,OAAO,EAAEC,OAHX;AAIE,IAAA,SAAS,EAAEG,SAJb;AAKE,IAAA,SAAS,EAAEE,SALb;AAME,IAAA,SAAS,EAAEY,SANb;AAOE,IAAA,OAAO,EAAEA;AAPX,IAzCF,CADF;AAqDD","sourcesContent":["import * as React from 'react'\nimport { View } from 'react-native'\nimport { Text, IconButton } from 'react-native-paper'\n\nimport DatePickerModal from './DatePickerModal'\n\n// WORK IN PROGRESS\nexport default function DateRangeInput({ locale }: { locale: string }) {\n const [visible, setVisible] = React.useState<boolean>(false)\n const onDismiss = React.useCallback(() => {\n setVisible(false)\n }, [setVisible])\n const onConfirm = React.useCallback(\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n ({ startDate, endDate }: { startDate: any; endDate: any }) => {\n setVisible(false)\n console.log({ startDate, endDate })\n },\n [setVisible]\n )\n\n return (\n <View style={{ flexDirection: 'row', alignItems: 'center' }}>\n <View style={{ flex: 1 }}>\n {/*<DatePickerInput*/}\n {/* value={''}*/}\n {/* keyboardType={'numeric'}*/}\n {/* placeholder={'DD-MM-YYY'}*/}\n {/* mask={'DD-MM-YYY'}*/}\n {/* onChangeText={() => {}}*/}\n {/*/>*/}\n <Text>Van</Text>\n </View>\n <View>\n <Text style={{ fontSize: 16, marginLeft: 12, marginRight: 12 }}>\n to\n </Text>\n <Text style={{ opacity: 0 }} accessible={false}>\n tot\n </Text>\n </View>\n <View style={{ flex: 1 }}>\n {/*<DatePickerInput*/}\n {/* // value={''}*/}\n {/* // keyboardType={'numeric'}*/}\n {/* // placeholder={'DD-MM-YYY'}*/}\n {/* // mask={'DD-MM-YYY'}*/}\n {/* // onChangeText={() => {}}*/}\n {/*/>*/}\n <Text>Tot</Text>\n </View>\n <View>\n <IconButton\n icon=\"calendar\"\n onPress={() => setVisible(true)}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n <Text style={{ opacity: 0 }} accessible={false}>\n tot\n </Text>\n </View>\n <DatePickerModal\n locale={locale}\n mode=\"range\"\n visible={visible}\n onDismiss={onDismiss}\n onConfirm={onConfirm}\n startDate={undefined}\n endDate={undefined}\n />\n </View>\n )\n}\n"]}
@@ -49,7 +49,10 @@ function Day(props) {
49
49
  onPress: disabled ? undefined : onPress,
50
50
  style: [styles.button, {
51
51
  backgroundColor: inRange ? selectColor : undefined
52
- }]
52
+ }] // RN types bug
53
+ ,
54
+ hasTVPreferredFocus: undefined,
55
+ tvParallaxProperties: undefined
53
56
  }, /*#__PURE__*/React.createElement(View, {
54
57
  style: [styles.day, isToday ? {
55
58
  borderColor: borderColor
@@ -1 +1 @@
1
- {"version":3,"sources":["Day.tsx"],"names":["React","Text","TouchableRipple","StyleSheet","View","DayRange","daySize","EmptyDayPure","styles","empty","EmptyDay","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","create","flex","flexBasis","opacity","justifyContent","alignItems","position","width","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 >\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":["React","Text","TouchableRipple","StyleSheet","View","DayRange","daySize","EmptyDayPure","styles","empty","EmptyDay","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","create","flex","flexBasis","opacity","justifyContent","alignItems","position","width","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"]}
@@ -2,9 +2,10 @@ import * as React from 'react';
2
2
  import { StyleSheet, View } from 'react-native';
3
3
  import { Text, useTheme } from 'react-native-paper';
4
4
 
5
- function DayName({
6
- label
7
- }) {
5
+ function DayName(_ref) {
6
+ let {
7
+ label
8
+ } = _ref;
8
9
  const theme = useTheme();
9
10
  return /*#__PURE__*/React.createElement(View, {
10
11
  style: styles.dayName
@@ -1 +1 @@
1
- {"version":3,"sources":["DayName.tsx"],"names":["React","StyleSheet","View","Text","useTheme","DayName","label","theme","styles","dayName","dayNameLabel","fonts","medium","create","flex","alignItems","fontSize","opacity","memo"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AACA,SAASC,IAAT,EAAeC,QAAf,QAA+B,oBAA/B;;AAEA,SAASC,OAAT,CAAiB;AAAEC,EAAAA;AAAF,CAAjB,EAA+C;AAC7C,QAAMC,KAAK,GAAGH,QAAQ,EAAtB;AACA,sBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAEI,MAAM,CAACC;AAApB,kBACE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAE,CAACD,MAAM,CAACE,YAAR,EAAsBH,KAAK,CAACI,KAAN,CAAYC,MAAlC,CADT;AAEE,IAAA,UAAU,EAAE;AAFd,KAIGN,KAJH,CADF,CADF;AAUD;;AACD,MAAME,MAAM,GAAGP,UAAU,CAACY,MAAX,CAAkB;AAC/BJ,EAAAA,OAAO,EAAE;AAAEK,IAAAA,IAAI,EAAE,CAAR;AAAWC,IAAAA,UAAU,EAAE;AAAvB,GADsB;AAE/BL,EAAAA,YAAY,EAAE;AAAEM,IAAAA,QAAQ,EAAE,EAAZ;AAAgBC,IAAAA,OAAO,EAAE;AAAzB;AAFiB,CAAlB,CAAf;AAIA,4BAAejB,KAAK,CAACkB,IAAN,CAAWb,OAAX,CAAf","sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { Text, useTheme } from 'react-native-paper'\n\nfunction DayName({ label }: { label: string }) {\n const theme = useTheme()\n return (\n <View style={styles.dayName}>\n <Text\n style={[styles.dayNameLabel, theme.fonts.medium]}\n selectable={false}\n >\n {label}\n </Text>\n </View>\n )\n}\nconst styles = StyleSheet.create({\n dayName: { flex: 1, alignItems: 'center' },\n dayNameLabel: { fontSize: 14, opacity: 0.7 },\n})\nexport default React.memo(DayName)\n"]}
1
+ {"version":3,"sources":["DayName.tsx"],"names":["React","StyleSheet","View","Text","useTheme","DayName","label","theme","styles","dayName","dayNameLabel","fonts","medium","create","flex","alignItems","fontSize","opacity","memo"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AACA,SAASC,IAAT,EAAeC,QAAf,QAA+B,oBAA/B;;AAEA,SAASC,OAAT,OAA+C;AAAA,MAA9B;AAAEC,IAAAA;AAAF,GAA8B;AAC7C,QAAMC,KAAK,GAAGH,QAAQ,EAAtB;AACA,sBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAEI,MAAM,CAACC;AAApB,kBACE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAE,CAACD,MAAM,CAACE,YAAR,EAAsBH,KAAK,CAACI,KAAN,CAAYC,MAAlC,CADT;AAEE,IAAA,UAAU,EAAE;AAFd,KAIGN,KAJH,CADF,CADF;AAUD;;AACD,MAAME,MAAM,GAAGP,UAAU,CAACY,MAAX,CAAkB;AAC/BJ,EAAAA,OAAO,EAAE;AAAEK,IAAAA,IAAI,EAAE,CAAR;AAAWC,IAAAA,UAAU,EAAE;AAAvB,GADsB;AAE/BL,EAAAA,YAAY,EAAE;AAAEM,IAAAA,QAAQ,EAAE,EAAZ;AAAgBC,IAAAA,OAAO,EAAE;AAAzB;AAFiB,CAAlB,CAAf;AAIA,4BAAejB,KAAK,CAACkB,IAAN,CAAWb,OAAX,CAAf","sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { Text, useTheme } from 'react-native-paper'\n\nfunction DayName({ label }: { label: string }) {\n const theme = useTheme()\n return (\n <View style={styles.dayName}>\n <Text\n style={[styles.dayNameLabel, theme.fonts.medium]}\n selectable={false}\n >\n {label}\n </Text>\n </View>\n )\n}\nconst styles = StyleSheet.create({\n dayName: { flex: 1, alignItems: 'center' },\n dayNameLabel: { fontSize: 14, opacity: 0.7 },\n})\nexport default React.memo(DayName)\n"]}
@@ -7,10 +7,11 @@ export const dayNamesHeight = 44; // TODO: wait for a better Intl api ;-)
7
7
 
8
8
  const weekdays = [new Date(2020, 7, 2), new Date(2020, 7, 3), new Date(2020, 7, 4), new Date(2020, 7, 5), new Date(2020, 7, 6), new Date(2020, 7, 7), new Date(2020, 7, 8)];
9
9
 
10
- function DayNames({
11
- disableWeekDays,
12
- locale
13
- }) {
10
+ function DayNames(_ref) {
11
+ let {
12
+ disableWeekDays,
13
+ locale
14
+ } = _ref;
14
15
  const theme = useTheme();
15
16
  const shortDayNames = React.useMemo(() => {
16
17
  const formatter = new Intl.DateTimeFormat(locale, {
@@ -1 +1 @@
1
- {"version":3,"sources":["DayNames.tsx"],"names":["React","StyleSheet","View","DayName","useTheme","showWeekDay","dayNamesHeight","weekdays","Date","DayNames","disableWeekDays","locale","theme","shortDayNames","useMemo","formatter","Intl","DateTimeFormat","weekday","map","date","format","styles","dayNames","backgroundColor","colors","surface","filter","_","dayIndex","dayName","i","create","height","flexDirection","alignItems","memo"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AACA,OAAOC,OAAP,MAAoB,WAApB;AACA,SAASC,QAAT,QAAyB,oBAAzB;AACA,SAA8BC,WAA9B,QAAiD,aAAjD;AAEA,OAAO,MAAMC,cAAc,GAAG,EAAvB,C,CAEP;;AACA,MAAMC,QAAQ,GAAG,CACf,IAAIC,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CADe,EAEf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAFe,EAGf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAHe,EAIf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAJe,EAKf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CALe,EAMf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CANe,EAOf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAPe,CAAjB;;AAUA,SAASC,QAAT,CAAkB;AAChBC,EAAAA,eADgB;AAEhBC,EAAAA;AAFgB,CAAlB,EAMG;AACD,QAAMC,KAAK,GAAGR,QAAQ,EAAtB;AACA,QAAMS,aAAa,GAAGb,KAAK,CAACc,OAAN,CAAwB,MAAM;AAClD,UAAMC,SAAS,GAAG,IAAIC,IAAI,CAACC,cAAT,CAAwBN,MAAxB,EAAgC;AAChDO,MAAAA,OAAO,EAAE;AADuC,KAAhC,CAAlB;AAGA,WAAOX,QAAQ,CAACY,GAAT,CAAcC,IAAD,IAAUL,SAAS,CAACM,MAAV,CAAiBD,IAAjB,CAAvB,CAAP;AACD,GALqB,EAKnB,CAACT,MAAD,CALmB,CAAtB;AAOA,sBACE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAE,CAACW,MAAM,CAACC,QAAR,EAAkB;AAAEC,MAAAA,eAAe,EAAEZ,KAAK,CAACa,MAAN,CAAaC;AAAhC,KAAlB,CADT;AAEE,IAAA,aAAa,EAAE;AAFjB,KAIGb,aAAa,CACXc,MADF,CACS,CAACC,CAAD,EAAIC,QAAJ,KAAiBxB,WAAW,CAACwB,QAAD,EAAWnB,eAAX,CADrC,EAEES,GAFF,CAEM,CAACW,OAAD,EAAUC,CAAV,kBACH,oBAAC,OAAD;AAAS,IAAA,GAAG,EAAG,GAAED,OAAQ,IAAGC,CAAE,EAA9B;AAAiC,IAAA,KAAK,EAAED;AAAxC,IAHH,CAJH,CADF;AAYD;;AACD,MAAMR,MAAM,GAAGrB,UAAU,CAAC+B,MAAX,CAAkB;AAC/BT,EAAAA,QAAQ,EAAE;AACRU,IAAAA,MAAM,EAAE3B,cADA;AAER4B,IAAAA,aAAa,EAAE,KAFP;AAGRC,IAAAA,UAAU,EAAE,QAHJ;AAIRX,IAAAA,eAAe,EAAE;AAJT;AADqB,CAAlB,CAAf;AAQA,4BAAexB,KAAK,CAACoC,IAAN,CAAW3B,QAAX,CAAf","sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport DayName from './DayName'\nimport { useTheme } from 'react-native-paper'\nimport { DisableWeekDaysType, showWeekDay } from './dateUtils'\n\nexport const dayNamesHeight = 44\n\n// TODO: wait for a better Intl api ;-)\nconst weekdays = [\n new Date(2020, 7, 2),\n new Date(2020, 7, 3),\n new Date(2020, 7, 4),\n new Date(2020, 7, 5),\n new Date(2020, 7, 6),\n new Date(2020, 7, 7),\n new Date(2020, 7, 8),\n]\n\nfunction DayNames({\n disableWeekDays,\n locale,\n}: {\n locale: undefined | string\n disableWeekDays?: DisableWeekDaysType\n}) {\n const theme = useTheme()\n const shortDayNames = React.useMemo<string[]>(() => {\n const formatter = new Intl.DateTimeFormat(locale, {\n weekday: 'narrow',\n })\n return weekdays.map((date) => formatter.format(date))\n }, [locale])\n\n return (\n <View\n style={[styles.dayNames, { backgroundColor: theme.colors.surface }]}\n pointerEvents={'none'}\n >\n {shortDayNames\n .filter((_, dayIndex) => showWeekDay(dayIndex, disableWeekDays))\n .map((dayName, i) => (\n <DayName key={`${dayName}_${i}`} label={dayName} />\n ))}\n </View>\n )\n}\nconst styles = StyleSheet.create({\n dayNames: {\n height: dayNamesHeight,\n flexDirection: 'row',\n alignItems: 'center',\n backgroundColor: '#fff',\n },\n})\nexport default React.memo(DayNames)\n"]}
1
+ {"version":3,"sources":["DayNames.tsx"],"names":["React","StyleSheet","View","DayName","useTheme","showWeekDay","dayNamesHeight","weekdays","Date","DayNames","disableWeekDays","locale","theme","shortDayNames","useMemo","formatter","Intl","DateTimeFormat","weekday","map","date","format","styles","dayNames","backgroundColor","colors","surface","filter","_","dayIndex","dayName","i","create","height","flexDirection","alignItems","memo"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AACA,OAAOC,OAAP,MAAoB,WAApB;AACA,SAASC,QAAT,QAAyB,oBAAzB;AACA,SAA8BC,WAA9B,QAAiD,aAAjD;AAEA,OAAO,MAAMC,cAAc,GAAG,EAAvB,C,CAEP;;AACA,MAAMC,QAAQ,GAAG,CACf,IAAIC,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CADe,EAEf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAFe,EAGf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAHe,EAIf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAJe,EAKf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CALe,EAMf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CANe,EAOf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAPe,CAAjB;;AAUA,SAASC,QAAT,OAMG;AAAA,MANe;AAChBC,IAAAA,eADgB;AAEhBC,IAAAA;AAFgB,GAMf;AACD,QAAMC,KAAK,GAAGR,QAAQ,EAAtB;AACA,QAAMS,aAAa,GAAGb,KAAK,CAACc,OAAN,CAAwB,MAAM;AAClD,UAAMC,SAAS,GAAG,IAAIC,IAAI,CAACC,cAAT,CAAwBN,MAAxB,EAAgC;AAChDO,MAAAA,OAAO,EAAE;AADuC,KAAhC,CAAlB;AAGA,WAAOX,QAAQ,CAACY,GAAT,CAAcC,IAAD,IAAUL,SAAS,CAACM,MAAV,CAAiBD,IAAjB,CAAvB,CAAP;AACD,GALqB,EAKnB,CAACT,MAAD,CALmB,CAAtB;AAOA,sBACE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAE,CAACW,MAAM,CAACC,QAAR,EAAkB;AAAEC,MAAAA,eAAe,EAAEZ,KAAK,CAACa,MAAN,CAAaC;AAAhC,KAAlB,CADT;AAEE,IAAA,aAAa,EAAE;AAFjB,KAIGb,aAAa,CACXc,MADF,CACS,CAACC,CAAD,EAAIC,QAAJ,KAAiBxB,WAAW,CAACwB,QAAD,EAAWnB,eAAX,CADrC,EAEES,GAFF,CAEM,CAACW,OAAD,EAAUC,CAAV,kBACH,oBAAC,OAAD;AAAS,IAAA,GAAG,EAAG,GAAED,OAAQ,IAAGC,CAAE,EAA9B;AAAiC,IAAA,KAAK,EAAED;AAAxC,IAHH,CAJH,CADF;AAYD;;AACD,MAAMR,MAAM,GAAGrB,UAAU,CAAC+B,MAAX,CAAkB;AAC/BT,EAAAA,QAAQ,EAAE;AACRU,IAAAA,MAAM,EAAE3B,cADA;AAER4B,IAAAA,aAAa,EAAE,KAFP;AAGRC,IAAAA,UAAU,EAAE,QAHJ;AAIRX,IAAAA,eAAe,EAAE;AAJT;AADqB,CAAlB,CAAf;AAQA,4BAAexB,KAAK,CAACoC,IAAN,CAAW3B,QAAX,CAAf","sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport DayName from './DayName'\nimport { useTheme } from 'react-native-paper'\nimport { DisableWeekDaysType, showWeekDay } from './dateUtils'\n\nexport const dayNamesHeight = 44\n\n// TODO: wait for a better Intl api ;-)\nconst weekdays = [\n new Date(2020, 7, 2),\n new Date(2020, 7, 3),\n new Date(2020, 7, 4),\n new Date(2020, 7, 5),\n new Date(2020, 7, 6),\n new Date(2020, 7, 7),\n new Date(2020, 7, 8),\n]\n\nfunction DayNames({\n disableWeekDays,\n locale,\n}: {\n locale: undefined | string\n disableWeekDays?: DisableWeekDaysType\n}) {\n const theme = useTheme()\n const shortDayNames = React.useMemo<string[]>(() => {\n const formatter = new Intl.DateTimeFormat(locale, {\n weekday: 'narrow',\n })\n return weekdays.map((date) => formatter.format(date))\n }, [locale])\n\n return (\n <View\n style={[styles.dayNames, { backgroundColor: theme.colors.surface }]}\n pointerEvents={'none'}\n >\n {shortDayNames\n .filter((_, dayIndex) => showWeekDay(dayIndex, disableWeekDays))\n .map((dayName, i) => (\n <DayName key={`${dayName}_${i}`} label={dayName} />\n ))}\n </View>\n )\n}\nconst styles = StyleSheet.create({\n dayNames: {\n height: dayNamesHeight,\n flexDirection: 'row',\n alignItems: 'center',\n backgroundColor: '#fff',\n },\n})\nexport default React.memo(DayNames)\n"]}
@@ -2,12 +2,13 @@ import * as React from 'react';
2
2
  import { StyleSheet, View } from 'react-native';
3
3
  import { daySize } from './dateUtils';
4
4
 
5
- function DayRange({
6
- leftCrop,
7
- rightCrop,
8
- inRange,
9
- selectColor
10
- }) {
5
+ function DayRange(_ref) {
6
+ let {
7
+ leftCrop,
8
+ rightCrop,
9
+ inRange,
10
+ selectColor
11
+ } = _ref;
11
12
  const bothWays = inRange && leftCrop && rightCrop;
12
13
  const isCrop = inRange && (leftCrop || rightCrop) && !(leftCrop && rightCrop);
13
14
 
@@ -1 +1 @@
1
- {"version":3,"sources":["DayRange.tsx"],"names":["React","StyleSheet","View","daySize","DayRange","leftCrop","rightCrop","inRange","selectColor","bothWays","isCrop","absoluteFill","styles","rangeRoot","rangeRootBoth","backgroundColor","flex1","minWidth","minHeight","leftRadius","rightRadius","create","borderBottomLeftRadius","borderTopLeftRadius","borderBottomRightRadius","borderTopRightRadius","borderRadius","flex","flexDirection","memo"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AACA,SAASC,OAAT,QAAwB,aAAxB;;AAEA,SAASC,QAAT,CAAkB;AAChBC,EAAAA,QADgB;AAEhBC,EAAAA,SAFgB;AAGhBC,EAAAA,OAHgB;AAIhBC,EAAAA;AAJgB,CAAlB,EAUG;AACD,QAAMC,QAAQ,GAAGF,OAAO,IAAIF,QAAX,IAAuBC,SAAxC;AACA,QAAMI,MAAM,GAAGH,OAAO,KAAKF,QAAQ,IAAIC,SAAjB,CAAP,IAAsC,EAAED,QAAQ,IAAIC,SAAd,CAArD;;AAEA,MAAIC,OAAO,IAAIG,MAAf,EAAuB;AACrB,wBACE,oBAAC,IAAD;AACE,MAAA,aAAa,EAAC,MADhB;AAEE,MAAA,KAAK,EAAE,CACLT,UAAU,CAACU,YADN,EAELC,MAAM,CAACC,SAFF,EAGLJ,QAAQ,IAAIG,MAAM,CAACE,aAHd,EAILP,OAAO,IAAI,CAACG,MAAZ,GACI;AACEK,QAAAA,eAAe,EAAEP;AADnB,OADJ,GAII,IARC;AAFT,OAaGE,MAAM,iBACL,uDACE,oBAAC,IAAD;AACE,MAAA,KAAK,EAAE,CACLE,MAAM,CAACI,KADF,EAELV,SAAS,GACL;AACES,QAAAA,eAAe,EAAEP;AADnB,OADK,GAIL,IANC;AADT,MADF,eAWE,oBAAC,IAAD;AACE,MAAA,KAAK,EAAE,CACL;AACEO,QAAAA,eAAe,EAAEP,WADnB;AAEES,QAAAA,QAAQ,EAAEd,OAFZ;AAGEe,QAAAA,SAAS,EAAEf;AAHb,OADK,EAMLE,QAAQ,GAAGO,MAAM,CAACO,UAAV,GAAuB,IAN1B,EAOLb,SAAS,GAAGM,MAAM,CAACQ,WAAV,GAAwB,IAP5B;AADT,MAXF,eAsBE,oBAAC,IAAD;AACE,MAAA,KAAK,EAAE,CACLR,MAAM,CAACI,KADF,EAELX,QAAQ,GACJ;AACEU,QAAAA,eAAe,EAAEP;AADnB,OADI,GAIJ,IANC;AADT,MAtBF,CAdJ,CADF;AAmDD;;AACD,SAAO,IAAP;AACD;;AAED,MAAMI,MAAM,GAAGX,UAAU,CAACoB,MAAX,CAAkB;AAC/BF,EAAAA,UAAU,EAAE;AACVG,IAAAA,sBAAsB,EAAEnB,OAAO,GAAG,CADxB;AAEVoB,IAAAA,mBAAmB,EAAEpB,OAAO,GAAG;AAFrB,GADmB;AAK/BiB,EAAAA,WAAW,EAAE;AACXI,IAAAA,uBAAuB,EAAErB,OAAO,GAAG,CADxB;AAEXsB,IAAAA,oBAAoB,EAAEtB,OAAO,GAAG;AAFrB,GALkB;AAS/BW,EAAAA,aAAa,EAAE;AACbY,IAAAA,YAAY,EAAEvB,OAAO,GAAG;AADX,GATgB;AAY/Ba,EAAAA,KAAK,EAAE;AACLW,IAAAA,IAAI,EAAE;AADD,GAZwB;AAe/Bd,EAAAA,SAAS,EAAE;AACTe,IAAAA,aAAa,EAAE;AADN;AAfoB,CAAlB,CAAf;AAoBA,4BAAe5B,KAAK,CAAC6B,IAAN,CAAWzB,QAAX,CAAf","sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { daySize } from './dateUtils'\n\nfunction DayRange({\n leftCrop,\n rightCrop,\n inRange,\n selectColor,\n}: {\n leftCrop: boolean\n rightCrop: boolean\n inRange: boolean\n selectColor: string\n}) {\n const bothWays = inRange && leftCrop && rightCrop\n const isCrop = inRange && (leftCrop || rightCrop) && !(leftCrop && rightCrop)\n\n if (inRange || isCrop) {\n return (\n <View\n pointerEvents=\"none\"\n style={[\n StyleSheet.absoluteFill,\n styles.rangeRoot,\n bothWays && styles.rangeRootBoth,\n inRange && !isCrop\n ? {\n backgroundColor: selectColor,\n }\n : null,\n ]}\n >\n {isCrop && (\n <>\n <View\n style={[\n styles.flex1,\n rightCrop\n ? {\n backgroundColor: selectColor,\n }\n : null,\n ]}\n />\n <View\n style={[\n {\n backgroundColor: selectColor,\n minWidth: daySize,\n minHeight: daySize,\n },\n leftCrop ? styles.leftRadius : null,\n rightCrop ? styles.rightRadius : null,\n ]}\n />\n <View\n style={[\n styles.flex1,\n leftCrop\n ? {\n backgroundColor: selectColor,\n }\n : null,\n ]}\n />\n </>\n )}\n </View>\n )\n }\n return null\n}\n\nconst styles = StyleSheet.create({\n leftRadius: {\n borderBottomLeftRadius: daySize / 2,\n borderTopLeftRadius: daySize / 2,\n },\n rightRadius: {\n borderBottomRightRadius: daySize / 2,\n borderTopRightRadius: daySize / 2,\n },\n rangeRootBoth: {\n borderRadius: daySize / 2,\n },\n flex1: {\n flex: 1,\n },\n rangeRoot: {\n flexDirection: 'row',\n },\n})\n\nexport default React.memo(DayRange)\n"]}
1
+ {"version":3,"sources":["DayRange.tsx"],"names":["React","StyleSheet","View","daySize","DayRange","leftCrop","rightCrop","inRange","selectColor","bothWays","isCrop","absoluteFill","styles","rangeRoot","rangeRootBoth","backgroundColor","flex1","minWidth","minHeight","leftRadius","rightRadius","create","borderBottomLeftRadius","borderTopLeftRadius","borderBottomRightRadius","borderTopRightRadius","borderRadius","flex","flexDirection","memo"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AACA,SAASC,OAAT,QAAwB,aAAxB;;AAEA,SAASC,QAAT,OAUG;AAAA,MAVe;AAChBC,IAAAA,QADgB;AAEhBC,IAAAA,SAFgB;AAGhBC,IAAAA,OAHgB;AAIhBC,IAAAA;AAJgB,GAUf;AACD,QAAMC,QAAQ,GAAGF,OAAO,IAAIF,QAAX,IAAuBC,SAAxC;AACA,QAAMI,MAAM,GAAGH,OAAO,KAAKF,QAAQ,IAAIC,SAAjB,CAAP,IAAsC,EAAED,QAAQ,IAAIC,SAAd,CAArD;;AAEA,MAAIC,OAAO,IAAIG,MAAf,EAAuB;AACrB,wBACE,oBAAC,IAAD;AACE,MAAA,aAAa,EAAC,MADhB;AAEE,MAAA,KAAK,EAAE,CACLT,UAAU,CAACU,YADN,EAELC,MAAM,CAACC,SAFF,EAGLJ,QAAQ,IAAIG,MAAM,CAACE,aAHd,EAILP,OAAO,IAAI,CAACG,MAAZ,GACI;AACEK,QAAAA,eAAe,EAAEP;AADnB,OADJ,GAII,IARC;AAFT,OAaGE,MAAM,iBACL,uDACE,oBAAC,IAAD;AACE,MAAA,KAAK,EAAE,CACLE,MAAM,CAACI,KADF,EAELV,SAAS,GACL;AACES,QAAAA,eAAe,EAAEP;AADnB,OADK,GAIL,IANC;AADT,MADF,eAWE,oBAAC,IAAD;AACE,MAAA,KAAK,EAAE,CACL;AACEO,QAAAA,eAAe,EAAEP,WADnB;AAEES,QAAAA,QAAQ,EAAEd,OAFZ;AAGEe,QAAAA,SAAS,EAAEf;AAHb,OADK,EAMLE,QAAQ,GAAGO,MAAM,CAACO,UAAV,GAAuB,IAN1B,EAOLb,SAAS,GAAGM,MAAM,CAACQ,WAAV,GAAwB,IAP5B;AADT,MAXF,eAsBE,oBAAC,IAAD;AACE,MAAA,KAAK,EAAE,CACLR,MAAM,CAACI,KADF,EAELX,QAAQ,GACJ;AACEU,QAAAA,eAAe,EAAEP;AADnB,OADI,GAIJ,IANC;AADT,MAtBF,CAdJ,CADF;AAmDD;;AACD,SAAO,IAAP;AACD;;AAED,MAAMI,MAAM,GAAGX,UAAU,CAACoB,MAAX,CAAkB;AAC/BF,EAAAA,UAAU,EAAE;AACVG,IAAAA,sBAAsB,EAAEnB,OAAO,GAAG,CADxB;AAEVoB,IAAAA,mBAAmB,EAAEpB,OAAO,GAAG;AAFrB,GADmB;AAK/BiB,EAAAA,WAAW,EAAE;AACXI,IAAAA,uBAAuB,EAAErB,OAAO,GAAG,CADxB;AAEXsB,IAAAA,oBAAoB,EAAEtB,OAAO,GAAG;AAFrB,GALkB;AAS/BW,EAAAA,aAAa,EAAE;AACbY,IAAAA,YAAY,EAAEvB,OAAO,GAAG;AADX,GATgB;AAY/Ba,EAAAA,KAAK,EAAE;AACLW,IAAAA,IAAI,EAAE;AADD,GAZwB;AAe/Bd,EAAAA,SAAS,EAAE;AACTe,IAAAA,aAAa,EAAE;AADN;AAfoB,CAAlB,CAAf;AAoBA,4BAAe5B,KAAK,CAAC6B,IAAN,CAAWzB,QAAX,CAAf","sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { daySize } from './dateUtils'\n\nfunction DayRange({\n leftCrop,\n rightCrop,\n inRange,\n selectColor,\n}: {\n leftCrop: boolean\n rightCrop: boolean\n inRange: boolean\n selectColor: string\n}) {\n const bothWays = inRange && leftCrop && rightCrop\n const isCrop = inRange && (leftCrop || rightCrop) && !(leftCrop && rightCrop)\n\n if (inRange || isCrop) {\n return (\n <View\n pointerEvents=\"none\"\n style={[\n StyleSheet.absoluteFill,\n styles.rangeRoot,\n bothWays && styles.rangeRootBoth,\n inRange && !isCrop\n ? {\n backgroundColor: selectColor,\n }\n : null,\n ]}\n >\n {isCrop && (\n <>\n <View\n style={[\n styles.flex1,\n rightCrop\n ? {\n backgroundColor: selectColor,\n }\n : null,\n ]}\n />\n <View\n style={[\n {\n backgroundColor: selectColor,\n minWidth: daySize,\n minHeight: daySize,\n },\n leftCrop ? styles.leftRadius : null,\n rightCrop ? styles.rightRadius : null,\n ]}\n />\n <View\n style={[\n styles.flex1,\n leftCrop\n ? {\n backgroundColor: selectColor,\n }\n : null,\n ]}\n />\n </>\n )}\n </View>\n )\n }\n return null\n}\n\nconst styles = StyleSheet.create({\n leftRadius: {\n borderBottomLeftRadius: daySize / 2,\n borderTopLeftRadius: daySize / 2,\n },\n rightRadius: {\n borderBottomRightRadius: daySize / 2,\n borderTopRightRadius: daySize / 2,\n },\n rangeRootBoth: {\n borderRadius: daySize / 2,\n },\n flex1: {\n flex: 1,\n },\n rangeRoot: {\n flexDirection: 'row',\n },\n})\n\nexport default React.memo(DayRange)\n"]}
@@ -62,10 +62,11 @@ function Month(props) {
62
62
  month
63
63
  });
64
64
  const emptyDays = dayOfWeek;
65
- return monthGrid(index).map(({
66
- days,
67
- weekGrid
68
- }) => {
65
+ return monthGrid(index).map(_ref => {
66
+ let {
67
+ days,
68
+ weekGrid
69
+ } = _ref;
69
70
  return {
70
71
  weekIndex: weekGrid,
71
72
  generatedDays: days.map((_, dayIndex) => {
@@ -194,7 +195,10 @@ function Month(props) {
194
195
  onPress: isHorizontal ? () => onPressYear(year) : undefined,
195
196
  style: [styles.yearButton, {
196
197
  borderRadius: roundness
197
- }]
198
+ }] // RN types bug
199
+ ,
200
+ hasTVPreferredFocus: undefined,
201
+ tvParallaxProperties: undefined
198
202
  }, /*#__PURE__*/React.createElement(View, {
199
203
  style: [styles.yearButtonInner, {
200
204
  borderRadius: roundness
@@ -206,32 +210,38 @@ function Month(props) {
206
210
  style: isHorizontal ? styles.opacity1 : styles.opacity0
207
211
  }, /*#__PURE__*/React.createElement(IconButton, {
208
212
  onPress: isHorizontal ? () => onPressYear(year) : undefined,
209
- icon: selectingYear ? 'chevron-up' : 'chevron-down'
210
- }))))), grid.map(({
211
- weekIndex,
212
- generatedDays
213
- }) => /*#__PURE__*/React.createElement(View, {
214
- style: styles.week,
215
- key: weekIndex
216
- }, generatedDays.filter(gd => showWeekDay(gd.dayIndex, disableWeekDays)).map(gd => gd.beforeWeekDay || gd.afterWeekDay ? /*#__PURE__*/React.createElement(EmptyDay, {
217
- key: gd.dayIndex
218
- }) : /*#__PURE__*/React.createElement(Day, {
219
- key: gd.dayIndex,
220
- theme: theme,
221
- day: gd.dayOfMonth,
222
- month: gd.month,
223
- year: gd.year,
224
- selected: gd.selected,
225
- inRange: gd.inRange,
226
- leftCrop: gd.leftCrop,
227
- rightCrop: gd.rightCrop,
228
- onPressDate: onPressDate,
229
- isToday: gd.isToday,
230
- selectColor: selectColor,
231
- primaryColor: primaryColor,
232
- disabled: gd.disabled,
233
- textColorOnPrimary: textColorOnPrimary
234
- })))));
213
+ icon: selectingYear ? 'chevron-up' : 'chevron-down' // RN types bug
214
+ ,
215
+ hasTVPreferredFocus: undefined,
216
+ tvParallaxProperties: undefined
217
+ }))))), grid.map(_ref2 => {
218
+ let {
219
+ weekIndex,
220
+ generatedDays
221
+ } = _ref2;
222
+ return /*#__PURE__*/React.createElement(View, {
223
+ style: styles.week,
224
+ key: weekIndex
225
+ }, generatedDays.filter(gd => showWeekDay(gd.dayIndex, disableWeekDays)).map(gd => gd.beforeWeekDay || gd.afterWeekDay ? /*#__PURE__*/React.createElement(EmptyDay, {
226
+ key: gd.dayIndex
227
+ }) : /*#__PURE__*/React.createElement(Day, {
228
+ key: gd.dayIndex,
229
+ theme: theme,
230
+ day: gd.dayOfMonth,
231
+ month: gd.month,
232
+ year: gd.year,
233
+ selected: gd.selected,
234
+ inRange: gd.inRange,
235
+ leftCrop: gd.leftCrop,
236
+ rightCrop: gd.rightCrop,
237
+ onPressDate: onPressDate,
238
+ isToday: gd.isToday,
239
+ selectColor: selectColor,
240
+ primaryColor: primaryColor,
241
+ disabled: gd.disabled,
242
+ textColorOnPrimary: textColorOnPrimary
243
+ })));
244
+ }));
235
245
  }
236
246
 
237
247
  export const weekMargin = 6;
@@ -1 +1 @@
1
- {"version":3,"sources":["Month.tsx"],"names":["React","StyleSheet","View","IconButton","Text","useTheme","TouchableRipple","Day","EmptyDay","addMonths","areDatesOnSameDay","daySize","getDaysInMonth","getFirstDayOfMonth","getRealIndex","getGridCount","isDateBetween","gridCounts","showWeekDay","startAtIndex","beginOffset","estimatedMonthHeight","useRangeChecker","getCalendarHeaderHeight","dayNamesHeight","useTextColorOnPrimary","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","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","montHeaderHeight","monthHeaderSingleHeight","create","flexDirection","justifyContent","overflow","fontSize","opacity","alignSelf","marginLeft","paddingLeft","alignItems","Array","fill","getIndexCount","weeksOffset","off","i","cIndex","getIndexFromHorizontalOffset","offset","width","Math","floor","getIndexFromVerticalOffset","estimatedIndex","ceil","realOffset","getVerticalMonthsOffset","difference","getHorizontalMonthOffset","count","ob","monthsHeight","c","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 style={[\n styles.yearButton,\n {\n borderRadius: roundness,\n },\n ]}\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 />\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":["React","StyleSheet","View","IconButton","Text","useTheme","TouchableRipple","Day","EmptyDay","addMonths","areDatesOnSameDay","daySize","getDaysInMonth","getFirstDayOfMonth","getRealIndex","getGridCount","isDateBetween","gridCounts","showWeekDay","startAtIndex","beginOffset","estimatedMonthHeight","useRangeChecker","getCalendarHeaderHeight","dayNamesHeight","useTextColorOnPrimary","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","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","montHeaderHeight","monthHeaderSingleHeight","create","flexDirection","justifyContent","overflow","fontSize","opacity","alignSelf","marginLeft","paddingLeft","alignItems","Array","fill","getIndexCount","weeksOffset","off","i","cIndex","getIndexFromHorizontalOffset","offset","width","Math","floor","getIndexFromVerticalOffset","estimatedIndex","ceil","realOffset","getVerticalMonthsOffset","difference","getHorizontalMonthOffset","count","ob","monthsHeight","c","calendarHeight","gc","currentMonthHeight","extraHeight","memo"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AACA,SAASC,UAAT,EAAqBC,IAArB,EAA2BC,QAA3B,EAAqCC,eAArC,QAA4D,oBAA5D;AACA,OAAOC,GAAP,IAAcC,QAAd,QAA8B,OAA9B;AAEA,SACEC,SADF,EAEEC,iBAFF,EAGEC,OAHF,EAKEC,cALF,EAMEC,kBANF,EAOEC,YAPF,EAQEC,YARF,EASEC,aATF,EAUEC,UAVF,EAWEC,WAXF,EAYEC,YAZF,EAaEC,WAbF,EAcEC,oBAdF,EAeEC,eAfF,QAgBO,aAhBP;AAiBA,SAASC,uBAAT,QAAwC,kBAAxC;AAOA,SAASC,cAAT,QAA+B,YAA/B;AACA,SAASC,qBAAT,QAAsC,UAAtC;;AAuCA,SAASC,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,GAAGvC,QAAQ,EAAtB;AACA,QAAMwC,kBAAkB,GAAGpB,qBAAqB,EAAhD;AACA,QAAMqB,SAAS,GAAGhC,YAAY,CAACc,KAAD,CAA9B;AACA,QAAMmB,YAAY,GAAGV,UAAU,KAAK,YAApC;AACA,QAAM;AAAEW,IAAAA,UAAF;AAAcC,IAAAA;AAAd,MAAqC3B,eAAe,CAACqB,UAAD,CAA1D;AACA,QAAM;AAAEO,IAAAA,SAAF;AAAaC,IAAAA,KAAb;AAAoBC,IAAAA;AAApB,MAA6BpD,KAAK,CAACqD,OAAN,CAAc,MAAM;AACrD,UAAMC,EAAE,GAAG7C,SAAS,CAAC,IAAI8C,IAAJ,EAAD,EAAaT,SAAb,CAApB;AACA,UAAMU,CAAC,GAAGF,EAAE,CAACG,WAAH,EAAV;AACA,UAAMC,CAAC,GAAGJ,EAAE,CAACK,QAAH,EAAV;AACA,UAAMC,SAAS,GAAG,IAAIC,IAAI,CAACC,cAAT,CAAwBpB,MAAxB,EAAgC;AAChDS,MAAAA,KAAK,EAAE;AADyC,KAAhC,CAAlB;AAGA,WAAO;AAAED,MAAAA,SAAS,EAAEU,SAAS,CAACG,MAAV,CAAiBT,EAAjB,CAAb;AAAmCH,MAAAA,KAAK,EAAEO,CAA1C;AAA6CN,MAAAA,IAAI,EAAEI;AAAnD,KAAP;AACD,GARkC,EAQhC,CAACV,SAAD,EAAYJ,MAAZ,CARgC,CAAnC;AAUA,QAAMsB,IAAI,GAAGhE,KAAK,CAACqD,OAAN,CAAc,MAAM;AAC/B,UAAMY,KAAK,GAAG,IAAIV,IAAJ,EAAd;AAEA,UAAMW,WAAW,GAAGtD,cAAc,CAAC;AAAEwC,MAAAA,IAAF;AAAQD,MAAAA;AAAR,KAAD,CAAlC;AACA,UAAMgB,SAAS,GAAGtD,kBAAkB,CAAC;AAAEuC,MAAAA,IAAF;AAAQD,MAAAA;AAAR,KAAD,CAApC;AACA,UAAMiB,SAAS,GAAGD,SAAlB;AAEA,WAAOE,SAAS,CAACzC,KAAD,CAAT,CAAiB0C,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,CAASH,IAAT,EAAeD,KAAf,EAAsB6B,UAAtB,CAAZ;AACA,gBAAMG,OAAO,GAAGzE,iBAAiB,CAACwE,GAAD,EAAMjB,KAAN,CAAjC;AAEA,cAAImB,OAAO,GAAG,KAAd;AACA,cAAIC,QAAQ,GAAGrC,UAAU,CAACkC,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,cAAIrC,IAAI,KAAK,OAAb,EAAsB;AACpB,kBAAM8D,gBAAgB,GAAGjF,iBAAiB,CAACwE,GAAD,EAAMlD,SAAN,CAA1C;AACA,kBAAM4D,cAAc,GAAGlF,iBAAiB,CAACwE,GAAD,EAAMjD,OAAN,CAAxC;AACAqD,YAAAA,QAAQ,GAAGK,gBAAgB,IAAIC,cAA/B;AACAR,YAAAA,OAAO,GAAGpE,aAAa,CAACkE,GAAD,EAAM;AAC3BlD,cAAAA,SAD2B;AAE3BC,cAAAA;AAF2B,aAAN,CAAvB;;AAIA,gBAAI0D,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,IAAIvD,IAAI,KAAK,UAAb,EAAyB;AAC9B,kBAAMgE,SAAS,GAAG9D,KAAK,IAAI,EAA3B;AACAuD,YAAAA,QAAQ,GAAGO,SAAS,CAACC,IAAV,CAAgBC,CAAD,IAAOrF,iBAAiB,CAACwE,GAAD,EAAMa,CAAN,CAAvC,CAAX;AAEA,kBAAMC,SAAS,GAAG,IAAIzC,IAAJ,CAASH,IAAT,EAAeD,KAAf,EAAsB6B,UAAU,GAAG,CAAnC,CAAlB;AACA,kBAAMiB,QAAQ,GAAG,IAAI1C,IAAJ,CAASH,IAAT,EAAeD,KAAf,EAAsB6B,UAAU,GAAG,CAAnC,CAAjB;AAEA,kBAAMkB,iBAAiB,GAAGL,SAAS,CAACC,IAAV,CAAgBC,CAAD,IACvCrF,iBAAiB,CAACqF,CAAD,EAAIC,SAAJ,CADO,CAA1B;AAGA,kBAAMG,gBAAgB,GAAGN,SAAS,CAACC,IAAV,CAAgBC,CAAD,IACtCrF,iBAAiB,CAACqF,CAAD,EAAIE,QAAJ,CADM,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,IAAIzD,IAAI,KAAK,QAAb,EAAuB;AAC5ByD,YAAAA,QAAQ,GAAG5E,iBAAiB,CAACwE,GAAD,EAAMpD,IAAN,CAA5B;AACD;;AAED,gBAAMsE,0BAA0B,GAAGnD,kBAAkB,CAACiC,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;AAGL7B,YAAAA,IAHK;AAILD,YAAAA,KAJK;AAKL6B,YAAAA,UALK;AAMLJ,YAAAA,QANK;AAOL/C,YAAAA,IAPK;AAQLyD,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,CACDjC,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,IAAD;AAAM,IAAA,KAAK,EAAE,CAACuE,MAAM,CAAClD,KAAR,EAAe;AAAEmD,MAAAA,MAAM,EAAEC,cAAc,CAAClE,UAAD,EAAaT,KAAb;AAAxB,KAAf;AAAb,kBACE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAE,CACLyE,MAAM,CAACG,WADF,EAELzD,YAAY,GACR;AACE0D,MAAAA,SAAS,EAAEC,0BADb;AAEEC,MAAAA,YAAY,EAAEC;AAFhB,KADQ,GAKR,IAPC;AADT,kBAWE,oBAAC,eAAD;AACE,IAAA,QAAQ,EAAE,CAAC7D,YADb;AAEE,IAAA,OAAO,EAAEA,YAAY,GAAG,MAAMb,WAAW,CAACkB,IAAD,CAApB,GAA6ByD,SAFpD;AAGE,IAAA,KAAK,EAAE,CACLR,MAAM,CAACS,UADF,EAEL;AACEC,MAAAA,YAAY,EAAEvE;AADhB,KAFK,CAHT,CASE;AATF;AAUE,IAAA,mBAAmB,EAAEqE,SAVvB;AAWE,IAAA,oBAAoB,EAAEA;AAXxB,kBAaE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAE,CACLR,MAAM,CAACW,eADF,EAEL;AACED,MAAAA,YAAY,EAAEvE;AADhB,KAFK;AADT,kBAQE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAE,CAAC6D,MAAM,CAACY,UAAR,EAAoBrE,KAAK,CAACsE,KAAN,CAAYC,MAAhC,CADT;AAEE,IAAA,UAAU,EAAE;AAFd,KAIGjE,SAJH,OAIeE,IAJf,CARF,eAcE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAEL,YAAY,GAAGsD,MAAM,CAACe,QAAV,GAAqBf,MAAM,CAACgB;AAArD,kBACE,oBAAC,UAAD;AACE,IAAA,OAAO,EAAEtE,YAAY,GAAG,MAAMb,WAAW,CAACkB,IAAD,CAApB,GAA6ByD,SADpD;AAEE,IAAA,IAAI,EAAE1E,aAAa,GAAG,YAAH,GAAkB,cAFvC,CAGE;AAHF;AAIE,IAAA,mBAAmB,EAAE0E,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,IAAD;AAAM,MAAA,KAAK,EAAE2B,MAAM,CAACiB,IAApB;AAA0B,MAAA,GAAG,EAAE7C;AAA/B,OACGC,aAAa,CACX6C,MADF,CACUC,EAAD,IAAQtG,WAAW,CAACsG,EAAE,CAAC5C,QAAJ,EAAcnC,eAAd,CAD5B,EAEE6B,GAFF,CAEOkD,EAAD,IACHA,EAAE,CAACzC,aAAH,IAAoByC,EAAE,CAACvC,YAAvB,gBACE,oBAAC,QAAD;AAAU,MAAA,GAAG,EAAEuC,EAAE,CAAC5C;AAAlB,MADF,gBAGE,oBAAC,GAAD;AACE,MAAA,GAAG,EAAE4C,EAAE,CAAC5C,QADV;AAEE,MAAA,KAAK,EAAEhC,KAFT;AAGE,MAAA,GAAG,EAAE4E,EAAE,CAACxC,UAHV;AAIE,MAAA,KAAK,EAAEwC,EAAE,CAACrE,KAJZ;AAKE,MAAA,IAAI,EAAEqE,EAAE,CAACpE,IALX;AAME,MAAA,QAAQ,EAAEoE,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,EAAEpD,WAVf;AAWE,MAAA,OAAO,EAAEoF,EAAE,CAACrC,OAXd;AAYE,MAAA,WAAW,EAAE5C,WAZf;AAaE,MAAA,YAAY,EAAED,YAbhB;AAcE,MAAA,QAAQ,EAAEkF,EAAE,CAACnC,QAdf;AAeE,MAAA,kBAAkB,EAAExC;AAftB,MANL,CADH,CADQ;AAAA,GAAT,CApDH,CADF;AAoFD;;AAED,OAAO,MAAM4E,UAAU,GAAG,CAAnB;AACP,OAAO,MAAMC,QAAQ,GAAG/G,OAAO,GAAG8G,UAA3B;AACP,OAAO,MAAME,gBAAgB,GAAG,EAAzB;AACP,OAAO,MAAMjB,0BAA0B,GAAG,CAAnC;AACP,OAAO,MAAME,6BAA6B,GAAG,IAAI,EAAJ,GAAS,EAA/C;AACP,OAAO,MAAMgB,uBAAuB,GAClClB,0BAA0B,GAAGE,6BADxB;AAGP,MAAMP,MAAM,GAAGpG,UAAU,CAAC4H,MAAX,CAAkB;AAC/BP,EAAAA,IAAI,EAAE;AACJQ,IAAAA,aAAa,EAAE,KADX;AAEJnB,IAAAA,YAAY,EAAEc,UAFV;AAGJnB,IAAAA,MAAM,EAAE3F;AAHJ,GADyB;AAO/BwC,EAAAA,KAAK,EAAE,EAPwB;AAS/BqD,EAAAA,WAAW,EAAE;AACXF,IAAAA,MAAM,EAAEqB,gBADG;AAEXI,IAAAA,cAAc,EAAE,QAFL;AAGXC,IAAAA,QAAQ,EAAE;AAHC,GATkB;AAc/Bf,EAAAA,UAAU,EAAE;AAAEgB,IAAAA,QAAQ,EAAE,EAAZ;AAAgBC,IAAAA,OAAO,EAAE;AAAzB,GAdmB;AAe/BpB,EAAAA,UAAU,EAAE;AAAEqB,IAAAA,SAAS,EAAE,YAAb;AAA2BC,IAAAA,UAAU,EAAE;AAAvC,GAfmB;AAgB/BpB,EAAAA,eAAe,EAAE;AACfqB,IAAAA,WAAW,EAAE,EADE;AAEfP,IAAAA,aAAa,EAAE,KAFA;AAGfQ,IAAAA,UAAU,EAAE;AAHG,GAhBc;AAqB/BjB,EAAAA,QAAQ,EAAE;AAAEa,IAAAA,OAAO,EAAE;AAAX,GArBqB;AAsB/Bd,EAAAA,QAAQ,EAAE;AAAEc,IAAAA,OAAO,EAAE;AAAX;AAtBqB,CAAlB,CAAf;;AAyBA,MAAM7D,SAAS,GAAIzC,KAAD,IAAmB;AACnC,SAAO2G,KAAK,CAACxH,YAAY,CAACa,KAAD,CAAb,CAAL,CACJ4G,IADI,CACC,IADD,EAEJlE,GAFI,CAEA,CAACK,CAAD,EAAIH,QAAJ,KAAiB;AACpB,UAAMD,IAAI,GAAGgE,KAAK,CAAC,CAAD,CAAL,CAASC,IAAT,CAAc,IAAd,CAAb;AACA,WAAO;AAAEhE,MAAAA,QAAF;AAAYD,MAAAA;AAAZ,KAAP;AACD,GALI,CAAP;AAMD,CAPD;;AASA,SAASkE,aAAT,CAAuB7G,KAAvB,EAA8C;AAC5C,MAAIA,KAAK,GAAGT,YAAZ,EAA0B;AACxB,WAAOS,KAAK,GAAGT,YAAf;AACD;;AAED,SAAO,EAAEA,YAAY,GAAGS,KAAjB,CAAP;AACD;;AAED,SAAS8G,WAAT,CAAqB9G,KAArB,EAA4C;AAC1C,MAAIA,KAAK,KAAKT,YAAd,EAA4B;AAC1B,WAAO,CAAP;AACD;;AACD,MAAIwH,GAAG,GAAG,CAAV;;AACA,MAAI/G,KAAK,GAAGT,YAAZ,EAA0B;AACxB,SAAK,IAAIyH,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGhH,KAAK,GAAGT,YAA5B,EAA0CyH,CAAC,EAA3C,EAA+C;AAC7C,YAAMC,MAAM,GAAG1H,YAAY,GAAGyH,CAA9B;AACAD,MAAAA,GAAG,IAAI1H,UAAU,CAAC4H,MAAD,CAAV,IAAsB9H,YAAY,CAAC8H,MAAD,CAAzC;AACD;AACF,GALD,MAKO;AACL,SAAK,IAAID,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGzH,YAAY,GAAGS,KAAnC,EAA0CgH,CAAC,EAA3C,EAA+C;AAC7C,YAAMC,MAAM,GAAG1H,YAAY,GAAGyH,CAAf,GAAmB,CAAlC;AACAD,MAAAA,GAAG,IAAI1H,UAAU,CAAC4H,MAAD,CAAV,IAAsB9H,YAAY,CAAC8H,MAAD,CAAzC;AACD;AACF;;AACD,SAAOF,GAAP;AACD;;AAED,OAAO,SAASG,4BAAT,CACLC,MADK,EAELC,KAFK,EAGG;AACR,SAAO7H,YAAY,GAAG8H,IAAI,CAACC,KAAL,CAAWH,MAAM,GAAGC,KAApB,CAAtB;AACD;AAED,OAAO,SAASG,0BAAT,CAAoCJ,MAApC,EAA4D;AACjE,MAAIK,cAAc,GAAGjI,YAAY,GAAG8H,IAAI,CAACI,IAAL,CAAUN,MAAM,GAAG1H,oBAAnB,CAApC;AAEA,QAAMiI,UAAU,GAAGC,uBAAuB,CAACH,cAAD,CAA1C;AACA,QAAMI,UAAU,GAAG,CAACF,UAAU,GAAGlI,WAAb,GAA2B2H,MAA5B,IAAsC1H,oBAAzD;;AACA,MAAImI,UAAU,IAAI,CAAd,IAAmBA,UAAU,IAAI,CAAC,CAAtC,EAAyC;AACvCJ,IAAAA,cAAc,IAAIH,IAAI,CAACC,KAAL,CAAWM,UAAX,CAAlB;AACD;;AACD,SAAOJ,cAAP;AACD;AAED,OAAO,SAASK,wBAAT,CAAkC7H,KAAlC,EAAiDoH,KAAjD,EAAgE;AACrE,MAAIpH,KAAK,GAAG,CAAZ,EAAe;AACb,WAAO,CAAP;AACD;;AACD,SAAOoH,KAAK,GAAGpH,KAAf;AACD;AAED,OAAO,SAAS2H,uBAAT,CAAiC3H,KAAjC,EAAgD;AACrD,QAAM8H,KAAK,GAAGjB,aAAa,CAAC7G,KAAD,CAA3B;AACA,QAAM+H,EAAE,GAAGjB,WAAW,CAAC9G,KAAD,CAAtB;AACA,QAAMgI,YAAY,GAAGlC,QAAQ,GAAGiC,EAAhC;AACA,QAAME,CAAC,GAAGD,YAAY,GAAGF,KAAK,IAAIlI,cAAc,GAAGmG,gBAArB,CAA9B;AAEA,SAAO,CAACkC,CAAC,IAAI,CAAN,IAAWzI,WAAlB;AACD;AAED,OAAO,SAASmF,cAAT,CACLlE,UADK,EAELT,KAFK,EAGG;AACR,QAAMkI,cAAc,GAAGvI,uBAAuB,CAACc,UAAD,CAA9C;AACA,QAAM0H,EAAE,GAAGhJ,YAAY,CAACa,KAAD,CAAvB;AAEA,QAAMoI,kBAAkB,GAAGtC,QAAQ,GAAGqC,EAAtC;AACA,QAAME,WAAW,GACf5H,UAAU,KAAK,YAAf,GAA8BuF,uBAA9B,GAAwDD,gBAD1D;AAEA,QAAMkC,CAAC,GAAGC,cAAc,GAAGE,kBAAjB,GAAsCC,WAAhD;AACA,SAAOJ,CAAC,IAAI,CAAZ;AACD;AAED,4BAAe7J,KAAK,CAACkK,IAAN,CAAWxI,KAAX,CAAf","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"]}