react-native-paper-dates 0.9.2 → 0.10.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 (128) hide show
  1. package/README.md +1 -1
  2. package/lib/commonjs/Date/AnimatedCrossView.js +1 -4
  3. package/lib/commonjs/Date/AnimatedCrossView.js.map +1 -1
  4. package/lib/commonjs/Date/Calendar.js +1 -1
  5. package/lib/commonjs/Date/Calendar.js.map +1 -1
  6. package/lib/commonjs/Date/DatePickerInput.js +4 -2
  7. package/lib/commonjs/Date/DatePickerInput.js.map +1 -1
  8. package/lib/commonjs/Date/DatePickerInput.shared.js.map +1 -1
  9. package/lib/commonjs/Date/DatePickerInputWithoutModal.js +17 -12
  10. package/lib/commonjs/Date/DatePickerInputWithoutModal.js.map +1 -1
  11. package/lib/commonjs/Date/DatePickerModalContentHeader.js +5 -2
  12. package/lib/commonjs/Date/DatePickerModalContentHeader.js.map +1 -1
  13. package/lib/commonjs/Date/DatePickerModalHeader.js +11 -12
  14. package/lib/commonjs/Date/DatePickerModalHeader.js.map +1 -1
  15. package/lib/commonjs/Date/DatePickerModalHeaderBackground.js +7 -8
  16. package/lib/commonjs/Date/DatePickerModalHeaderBackground.js.map +1 -1
  17. package/lib/commonjs/Date/Day.js +5 -4
  18. package/lib/commonjs/Date/Day.js.map +1 -1
  19. package/lib/commonjs/Date/DayName.js +3 -1
  20. package/lib/commonjs/Date/DayName.js.map +1 -1
  21. package/lib/commonjs/Date/Month.js +3 -1
  22. package/lib/commonjs/Date/Month.js.map +1 -1
  23. package/lib/commonjs/Date/Swiper.js +1 -2
  24. package/lib/commonjs/Date/Swiper.js.map +1 -1
  25. package/lib/commonjs/Date/YearPicker.js +4 -2
  26. package/lib/commonjs/Date/YearPicker.js.map +1 -1
  27. package/lib/commonjs/TextInputMask.js +9 -4
  28. package/lib/commonjs/TextInputMask.js.map +1 -1
  29. package/lib/commonjs/Time/AmPmSwitcher.js +3 -2
  30. package/lib/commonjs/Time/AmPmSwitcher.js.map +1 -1
  31. package/lib/commonjs/Time/AnalogClock.js +1 -1
  32. package/lib/commonjs/Time/AnalogClock.js.map +1 -1
  33. package/lib/commonjs/Time/TimeInputs.js +7 -4
  34. package/lib/commonjs/Time/TimeInputs.js.map +1 -1
  35. package/lib/commonjs/Time/TimePicker.js +4 -1
  36. package/lib/commonjs/Time/TimePicker.js.map +1 -1
  37. package/lib/commonjs/Time/TimePickerModal.js +15 -4
  38. package/lib/commonjs/Time/TimePickerModal.js.map +1 -1
  39. package/lib/commonjs/Time/timeUtils.js +35 -3
  40. package/lib/commonjs/Time/timeUtils.js.map +1 -1
  41. package/lib/commonjs/translations/utils.js +2 -2
  42. package/lib/commonjs/translations/utils.js.map +1 -1
  43. package/lib/commonjs/utils.js.map +1 -1
  44. package/lib/module/Date/AnimatedCrossView.js +1 -3
  45. package/lib/module/Date/AnimatedCrossView.js.map +1 -1
  46. package/lib/module/Date/Calendar.js +1 -1
  47. package/lib/module/Date/Calendar.js.map +1 -1
  48. package/lib/module/Date/DatePickerInput.js +4 -2
  49. package/lib/module/Date/DatePickerInput.js.map +1 -1
  50. package/lib/module/Date/DatePickerInput.shared.js.map +1 -1
  51. package/lib/module/Date/DatePickerInputWithoutModal.js +17 -12
  52. package/lib/module/Date/DatePickerInputWithoutModal.js.map +1 -1
  53. package/lib/module/Date/DatePickerModalContentHeader.js +6 -3
  54. package/lib/module/Date/DatePickerModalContentHeader.js.map +1 -1
  55. package/lib/module/Date/DatePickerModalHeader.js +11 -13
  56. package/lib/module/Date/DatePickerModalHeader.js.map +1 -1
  57. package/lib/module/Date/DatePickerModalHeaderBackground.js +7 -9
  58. package/lib/module/Date/DatePickerModalHeaderBackground.js.map +1 -1
  59. package/lib/module/Date/Day.js +5 -4
  60. package/lib/module/Date/Day.js.map +1 -1
  61. package/lib/module/Date/DayName.js +3 -1
  62. package/lib/module/Date/DayName.js.map +1 -1
  63. package/lib/module/Date/Month.js +3 -1
  64. package/lib/module/Date/Month.js.map +1 -1
  65. package/lib/module/Date/Swiper.js +1 -2
  66. package/lib/module/Date/Swiper.js.map +1 -1
  67. package/lib/module/Date/YearPicker.js +4 -2
  68. package/lib/module/Date/YearPicker.js.map +1 -1
  69. package/lib/module/TextInputMask.js +9 -4
  70. package/lib/module/TextInputMask.js.map +1 -1
  71. package/lib/module/Time/AmPmSwitcher.js +3 -2
  72. package/lib/module/Time/AmPmSwitcher.js.map +1 -1
  73. package/lib/module/Time/AnalogClock.js +1 -1
  74. package/lib/module/Time/AnalogClock.js.map +1 -1
  75. package/lib/module/Time/TimeInputs.js +6 -4
  76. package/lib/module/Time/TimeInputs.js.map +1 -1
  77. package/lib/module/Time/TimePicker.js +4 -1
  78. package/lib/module/Time/TimePicker.js.map +1 -1
  79. package/lib/module/Time/TimePickerModal.js +15 -4
  80. package/lib/module/Time/TimePickerModal.js.map +1 -1
  81. package/lib/module/Time/timeUtils.js +35 -3
  82. package/lib/module/Time/timeUtils.js.map +1 -1
  83. package/lib/module/translations/utils.js +2 -2
  84. package/lib/module/translations/utils.js.map +1 -1
  85. package/lib/module/utils.js.map +1 -1
  86. package/lib/typescript/Date/AutoSizer.d.ts +1 -1
  87. package/lib/typescript/Date/Calendar.d.ts +10 -10
  88. package/lib/typescript/Date/DatePickerInput.d.ts +1 -1
  89. package/lib/typescript/Date/DatePickerInput.shared.d.ts +2 -1
  90. package/lib/typescript/Date/DatePickerInputWithoutModal.d.ts +10 -4
  91. package/lib/typescript/Date/DatePickerModalContent.d.ts +1 -1
  92. package/lib/typescript/Date/Day.d.ts +2 -2
  93. package/lib/typescript/Date/SwiperUtils.d.ts +2 -2
  94. package/lib/typescript/Date/dateUtils.d.ts +1 -1
  95. package/lib/typescript/TextInputMask.d.ts +9 -4
  96. package/lib/typescript/Time/TimePicker.d.ts +1 -1
  97. package/lib/typescript/Time/timeUtils.d.ts +7 -7
  98. package/lib/typescript/translations/utils.d.ts +1 -1
  99. package/lib/typescript/utils.d.ts +2 -0
  100. package/package.json +9 -8
  101. package/src/Date/AnimatedCrossView.tsx +0 -4
  102. package/src/Date/Calendar.tsx +2 -2
  103. package/src/Date/DatePickerInput.shared.tsx +1 -0
  104. package/src/Date/DatePickerInput.tsx +2 -1
  105. package/src/Date/DatePickerInputWithoutModal.tsx +37 -35
  106. package/src/Date/DatePickerModalContentHeader.tsx +9 -4
  107. package/src/Date/DatePickerModalHeader.tsx +35 -37
  108. package/src/Date/DatePickerModalHeaderBackground.tsx +6 -7
  109. package/src/Date/Day.tsx +12 -4
  110. package/src/Date/DayName.tsx +7 -5
  111. package/src/Date/Month.tsx +12 -2
  112. package/src/Date/Swiper.tsx +0 -1
  113. package/src/Date/YearPicker.tsx +16 -4
  114. package/src/TextInputMask.tsx +8 -4
  115. package/src/Time/AmPmSwitcher.tsx +11 -3
  116. package/src/Time/AnalogClock.tsx +3 -1
  117. package/src/Time/TimeInputs.tsx +32 -4
  118. package/src/Time/TimePicker.tsx +4 -1
  119. package/src/Time/TimePickerModal.tsx +29 -3
  120. package/src/Time/timeUtils.ts +31 -4
  121. package/src/translations/utils.ts +2 -2
  122. package/src/utils.ts +8 -1
  123. package/lib/commonjs/Date/DateRangeInput.js +0 -86
  124. package/lib/commonjs/Date/DateRangeInput.js.map +0 -1
  125. package/lib/module/Date/DateRangeInput.js +0 -69
  126. package/lib/module/Date/DateRangeInput.js.map +0 -1
  127. package/lib/typescript/Date/DateRangeInput.d.ts +0 -4
  128. package/src/Date/DateRangeInput.tsx +0 -75
@@ -18,6 +18,7 @@ function DatePickerInputWithoutModal(_ref, ref) {
18
18
  withDateFormatInLabel = true,
19
19
  modal,
20
20
  inputButtons,
21
+ saveLabel,
21
22
  ...rest
22
23
  } = _ref;
23
24
  const theme = useTheme();
@@ -35,6 +36,8 @@ function DatePickerInputWithoutModal(_ref, ref) {
35
36
  });
36
37
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(View, {
37
38
  style: styles.root
39
+ }, /*#__PURE__*/React.createElement(View, {
40
+ style: styles.inputContainer
38
41
  }, /*#__PURE__*/React.createElement(TextInputWithMask, _extends({}, rest, {
39
42
  ref: ref,
40
43
  label: getLabel({
@@ -51,17 +54,16 @@ function DatePickerInputWithoutModal(_ref, ref) {
51
54
  keyboardAppearance: theme.dark ? 'dark' : 'default',
52
55
  error: !!error,
53
56
  style: [styles.input, style]
54
- })), inputButtons, !!error ? /*#__PURE__*/React.createElement(View, {
55
- style: styles.helperText
56
- }, /*#__PURE__*/React.createElement(HelperText, {
57
+ })), inputButtons), error ? /*#__PURE__*/React.createElement(HelperText, {
57
58
  style: styles.helperText,
58
59
  type: "error",
59
60
  visible: !!error
60
- }, error)) : null), modal === null || modal === void 0 ? void 0 : modal({
61
+ }, error) : null), modal === null || modal === void 0 ? void 0 : modal({
61
62
  value,
62
63
  locale,
63
64
  inputMode,
64
- validRange
65
+ validRange,
66
+ saveLabel
65
67
  }));
66
68
  }
67
69
 
@@ -81,17 +83,20 @@ function getLabel(_ref2) {
81
83
 
82
84
  const styles = StyleSheet.create({
83
85
  root: {
84
- minWidth: 150,
85
86
  flexGrow: 1,
86
- justifyContent: 'center'
87
+ backgroundColor: 'pink'
87
88
  },
88
- helperTextContainer: {
89
- flexDirection: 'row'
89
+ inputContainer: {
90
+ flexGrow: 1,
91
+ flexDirection: 'row',
92
+ alignItems: 'center',
93
+ justifyContent: 'flex-start'
90
94
  },
91
- helperText: {
92
- flex: 1
95
+ input: {
96
+ flexGrow: 1
93
97
  },
94
- input: {}
98
+ helperText: {// flex: 1,
99
+ }
95
100
  });
96
101
  export default /*#__PURE__*/React.forwardRef(DatePickerInputWithoutModal);
97
102
  //# sourceMappingURL=DatePickerInputWithoutModal.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","TextInputWithMask","HelperText","useTheme","View","StyleSheet","useDateInput","DatePickerInputWithoutModal","ref","label","value","onChange","style","locale","validRange","inputMode","withDateFormatInLabel","modal","inputButtons","rest","theme","formattedValue","inputFormat","onChangeText","error","styles","root","getLabel","dark","input","helperText","create","minWidth","flexGrow","justifyContent","helperTextContainer","flexDirection","flex","forwardRef"],"sources":["DatePickerInputWithoutModal.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport TextInputWithMask from '../TextInputMask'\nimport { HelperText, useTheme } from 'react-native-paper'\nimport { View, StyleSheet } from 'react-native'\nimport useDateInput from './inputUtils'\nimport type { DatePickerInputProps } from './DatePickerInput.shared'\n\nfunction DatePickerInputWithoutModal(\n {\n label,\n value,\n onChange,\n style,\n locale,\n validRange,\n inputMode,\n withDateFormatInLabel = true,\n modal,\n inputButtons,\n ...rest\n }: DatePickerInputProps & {\n modal?: (params: {\n value: DatePickerInputProps['value']\n locale: DatePickerInputProps['locale']\n inputMode: DatePickerInputProps['inputMode']\n validRange: DatePickerInputProps['validRange']\n }) => any\n inputButtons?: any\n },\n ref: any\n) {\n const theme = useTheme()\n const { formattedValue, inputFormat, onChangeText, error } = useDateInput({\n locale,\n value,\n validRange,\n inputMode,\n onChange,\n })\n\n return (\n <>\n <View style={styles.root}>\n <TextInputWithMask\n {...rest}\n ref={ref}\n label={getLabel({\n // TODO: support label components?\n label: label as any,\n inputFormat,\n withDateFormatInLabel,\n })}\n value={formattedValue}\n keyboardType={'number-pad'}\n placeholder={inputFormat}\n mask={inputFormat}\n onChangeText={onChangeText}\n keyboardAppearance={theme.dark ? 'dark' : 'default'}\n error={!!error}\n style={[styles.input, style]}\n />\n {inputButtons}\n {!!error ? (\n <View style={styles.helperText}>\n <HelperText\n style={styles.helperText}\n type=\"error\"\n visible={!!error}\n >\n {error}\n </HelperText>\n </View>\n ) : null}\n </View>\n {modal?.({ value, locale, inputMode, validRange })}\n </>\n )\n}\n\nfunction getLabel({\n withDateFormatInLabel,\n inputFormat,\n label,\n}: {\n withDateFormatInLabel: boolean\n inputFormat: string\n label: string | undefined\n}) {\n if (withDateFormatInLabel) {\n return label ? `${label} (${inputFormat})` : inputFormat\n }\n return label || ''\n}\n\nconst styles = StyleSheet.create({\n root: {\n minWidth: 150,\n flexGrow: 1,\n justifyContent: 'center',\n },\n helperTextContainer: {\n flexDirection: 'row',\n },\n helperText: {\n flex: 1,\n },\n input: {},\n})\nexport default React.forwardRef(DatePickerInputWithoutModal)\n"],"mappings":";;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AAEA,OAAOC,iBAAP,MAA8B,kBAA9B;AACA,SAASC,UAAT,EAAqBC,QAArB,QAAqC,oBAArC;AACA,SAASC,IAAT,EAAeC,UAAf,QAAiC,cAAjC;AACA,OAAOC,YAAP,MAAyB,cAAzB;;AAGA,SAASC,2BAAT,OAsBEC,GAtBF,EAuBE;EAAA,IAtBA;IACEC,KADF;IAEEC,KAFF;IAGEC,QAHF;IAIEC,KAJF;IAKEC,MALF;IAMEC,UANF;IAOEC,SAPF;IAQEC,qBAAqB,GAAG,IAR1B;IASEC,KATF;IAUEC,YAVF;IAWE,GAAGC;EAXL,CAsBA;EACA,MAAMC,KAAK,GAAGjB,QAAQ,EAAtB;EACA,MAAM;IAAEkB,cAAF;IAAkBC,WAAlB;IAA+BC,YAA/B;IAA6CC;EAA7C,IAAuDlB,YAAY,CAAC;IACxEO,MADwE;IAExEH,KAFwE;IAGxEI,UAHwE;IAIxEC,SAJwE;IAKxEJ;EALwE,CAAD,CAAzE;EAQA,oBACE,uDACE,oBAAC,IAAD;IAAM,KAAK,EAAEc,MAAM,CAACC;EAApB,gBACE,oBAAC,iBAAD,eACMP,IADN;IAEE,GAAG,EAAEX,GAFP;IAGE,KAAK,EAAEmB,QAAQ,CAAC;MACd;MACAlB,KAAK,EAAEA,KAFO;MAGda,WAHc;MAIdN;IAJc,CAAD,CAHjB;IASE,KAAK,EAAEK,cATT;IAUE,YAAY,EAAE,YAVhB;IAWE,WAAW,EAAEC,WAXf;IAYE,IAAI,EAAEA,WAZR;IAaE,YAAY,EAAEC,YAbhB;IAcE,kBAAkB,EAAEH,KAAK,CAACQ,IAAN,GAAa,MAAb,GAAsB,SAd5C;IAeE,KAAK,EAAE,CAAC,CAACJ,KAfX;IAgBE,KAAK,EAAE,CAACC,MAAM,CAACI,KAAR,EAAejB,KAAf;EAhBT,GADF,EAmBGM,YAnBH,EAoBG,CAAC,CAACM,KAAF,gBACC,oBAAC,IAAD;IAAM,KAAK,EAAEC,MAAM,CAACK;EAApB,gBACE,oBAAC,UAAD;IACE,KAAK,EAAEL,MAAM,CAACK,UADhB;IAEE,IAAI,EAAC,OAFP;IAGE,OAAO,EAAE,CAAC,CAACN;EAHb,GAKGA,KALH,CADF,CADD,GAUG,IA9BN,CADF,EAiCGP,KAjCH,aAiCGA,KAjCH,uBAiCGA,KAAK,CAAG;IAAEP,KAAF;IAASG,MAAT;IAAiBE,SAAjB;IAA4BD;EAA5B,CAAH,CAjCR,CADF;AAqCD;;AAED,SAASa,QAAT,QAQG;EAAA,IARe;IAChBX,qBADgB;IAEhBM,WAFgB;IAGhBb;EAHgB,CAQf;;EACD,IAAIO,qBAAJ,EAA2B;IACzB,OAAOP,KAAK,GAAI,GAAEA,KAAM,KAAIa,WAAY,GAA5B,GAAiCA,WAA7C;EACD;;EACD,OAAOb,KAAK,IAAI,EAAhB;AACD;;AAED,MAAMgB,MAAM,GAAGpB,UAAU,CAAC0B,MAAX,CAAkB;EAC/BL,IAAI,EAAE;IACJM,QAAQ,EAAE,GADN;IAEJC,QAAQ,EAAE,CAFN;IAGJC,cAAc,EAAE;EAHZ,CADyB;EAM/BC,mBAAmB,EAAE;IACnBC,aAAa,EAAE;EADI,CANU;EAS/BN,UAAU,EAAE;IACVO,IAAI,EAAE;EADI,CATmB;EAY/BR,KAAK,EAAE;AAZwB,CAAlB,CAAf;AAcA,4BAAe7B,KAAK,CAACsC,UAAN,CAAiB/B,2BAAjB,CAAf"}
1
+ {"version":3,"names":["React","TextInputWithMask","HelperText","useTheme","View","StyleSheet","useDateInput","DatePickerInputWithoutModal","ref","label","value","onChange","style","locale","validRange","inputMode","withDateFormatInLabel","modal","inputButtons","saveLabel","rest","theme","formattedValue","inputFormat","onChangeText","error","styles","root","inputContainer","getLabel","dark","input","helperText","create","flexGrow","backgroundColor","flexDirection","alignItems","justifyContent","forwardRef"],"sources":["DatePickerInputWithoutModal.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport TextInputWithMask from '../TextInputMask'\nimport { HelperText, useTheme } from 'react-native-paper'\nimport { View, StyleSheet } from 'react-native'\nimport useDateInput from './inputUtils'\nimport type { DatePickerInputProps } from './DatePickerInput.shared'\n\nfunction DatePickerInputWithoutModal(\n {\n label,\n value,\n onChange,\n style,\n locale,\n validRange,\n inputMode,\n withDateFormatInLabel = true,\n modal,\n inputButtons,\n saveLabel,\n ...rest\n }: DatePickerInputProps & {\n modal?: (params: {\n value: DatePickerInputProps['value']\n locale: DatePickerInputProps['locale']\n inputMode: DatePickerInputProps['inputMode']\n validRange: DatePickerInputProps['validRange']\n saveLabel: DatePickerInputProps['saveLabel']\n }) => any\n inputButtons?: any\n },\n ref: any\n) {\n const theme = useTheme()\n const { formattedValue, inputFormat, onChangeText, error } = useDateInput({\n locale,\n value,\n validRange,\n inputMode,\n onChange,\n })\n\n return (\n <>\n <View style={styles.root}>\n <View style={styles.inputContainer}>\n <TextInputWithMask\n {...rest}\n ref={ref}\n label={getLabel({\n // TODO: support label components?\n label: label as any,\n inputFormat,\n withDateFormatInLabel,\n })}\n value={formattedValue}\n keyboardType={'number-pad'}\n placeholder={inputFormat}\n mask={inputFormat}\n onChangeText={onChangeText}\n keyboardAppearance={theme.dark ? 'dark' : 'default'}\n error={!!error}\n style={[styles.input, style]}\n />\n {inputButtons}\n </View>\n {error ? (\n <HelperText style={styles.helperText} type=\"error\" visible={!!error}>\n {error}\n </HelperText>\n ) : null}\n </View>\n {modal?.({ value, locale, inputMode, validRange, saveLabel })}\n </>\n )\n}\n\nfunction getLabel({\n withDateFormatInLabel,\n inputFormat,\n label,\n}: {\n withDateFormatInLabel: boolean\n inputFormat: string\n label: string | undefined\n}) {\n if (withDateFormatInLabel) {\n return label ? `${label} (${inputFormat})` : inputFormat\n }\n return label || ''\n}\n\nconst styles = StyleSheet.create({\n root: {\n flexGrow: 1,\n backgroundColor: 'pink',\n },\n inputContainer: {\n flexGrow: 1,\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'flex-start',\n },\n input: {\n flexGrow: 1,\n },\n helperText: {\n // flex: 1,\n },\n})\nexport default React.forwardRef(DatePickerInputWithoutModal)\n"],"mappings":";;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AAEA,OAAOC,iBAAP,MAA8B,kBAA9B;AACA,SAASC,UAAT,EAAqBC,QAArB,QAAqC,oBAArC;AACA,SAASC,IAAT,EAAeC,UAAf,QAAiC,cAAjC;AACA,OAAOC,YAAP,MAAyB,cAAzB;;AAGA,SAASC,2BAAT,OAwBEC,GAxBF,EAyBE;EAAA,IAxBA;IACEC,KADF;IAEEC,KAFF;IAGEC,QAHF;IAIEC,KAJF;IAKEC,MALF;IAMEC,UANF;IAOEC,SAPF;IAQEC,qBAAqB,GAAG,IAR1B;IASEC,KATF;IAUEC,YAVF;IAWEC,SAXF;IAYE,GAAGC;EAZL,CAwBA;EACA,MAAMC,KAAK,GAAGlB,QAAQ,EAAtB;EACA,MAAM;IAAEmB,cAAF;IAAkBC,WAAlB;IAA+BC,YAA/B;IAA6CC;EAA7C,IAAuDnB,YAAY,CAAC;IACxEO,MADwE;IAExEH,KAFwE;IAGxEI,UAHwE;IAIxEC,SAJwE;IAKxEJ;EALwE,CAAD,CAAzE;EAQA,oBACE,uDACE,oBAAC,IAAD;IAAM,KAAK,EAAEe,MAAM,CAACC;EAApB,gBACE,oBAAC,IAAD;IAAM,KAAK,EAAED,MAAM,CAACE;EAApB,gBACE,oBAAC,iBAAD,eACMR,IADN;IAEE,GAAG,EAAEZ,GAFP;IAGE,KAAK,EAAEqB,QAAQ,CAAC;MACd;MACApB,KAAK,EAAEA,KAFO;MAGdc,WAHc;MAIdP;IAJc,CAAD,CAHjB;IASE,KAAK,EAAEM,cATT;IAUE,YAAY,EAAE,YAVhB;IAWE,WAAW,EAAEC,WAXf;IAYE,IAAI,EAAEA,WAZR;IAaE,YAAY,EAAEC,YAbhB;IAcE,kBAAkB,EAAEH,KAAK,CAACS,IAAN,GAAa,MAAb,GAAsB,SAd5C;IAeE,KAAK,EAAE,CAAC,CAACL,KAfX;IAgBE,KAAK,EAAE,CAACC,MAAM,CAACK,KAAR,EAAenB,KAAf;EAhBT,GADF,EAmBGM,YAnBH,CADF,EAsBGO,KAAK,gBACJ,oBAAC,UAAD;IAAY,KAAK,EAAEC,MAAM,CAACM,UAA1B;IAAsC,IAAI,EAAC,OAA3C;IAAmD,OAAO,EAAE,CAAC,CAACP;EAA9D,GACGA,KADH,CADI,GAIF,IA1BN,CADF,EA6BGR,KA7BH,aA6BGA,KA7BH,uBA6BGA,KAAK,CAAG;IAAEP,KAAF;IAASG,MAAT;IAAiBE,SAAjB;IAA4BD,UAA5B;IAAwCK;EAAxC,CAAH,CA7BR,CADF;AAiCD;;AAED,SAASU,QAAT,QAQG;EAAA,IARe;IAChBb,qBADgB;IAEhBO,WAFgB;IAGhBd;EAHgB,CAQf;;EACD,IAAIO,qBAAJ,EAA2B;IACzB,OAAOP,KAAK,GAAI,GAAEA,KAAM,KAAIc,WAAY,GAA5B,GAAiCA,WAA7C;EACD;;EACD,OAAOd,KAAK,IAAI,EAAhB;AACD;;AAED,MAAMiB,MAAM,GAAGrB,UAAU,CAAC4B,MAAX,CAAkB;EAC/BN,IAAI,EAAE;IACJO,QAAQ,EAAE,CADN;IAEJC,eAAe,EAAE;EAFb,CADyB;EAK/BP,cAAc,EAAE;IACdM,QAAQ,EAAE,CADI;IAEdE,aAAa,EAAE,KAFD;IAGdC,UAAU,EAAE,QAHE;IAIdC,cAAc,EAAE;EAJF,CALe;EAW/BP,KAAK,EAAE;IACLG,QAAQ,EAAE;EADL,CAXwB;EAc/BF,UAAU,EAAE,CACV;EADU;AAdmB,CAAlB,CAAf;AAkBA,4BAAehC,KAAK,CAACuC,UAAN,CAAiBhC,2BAAjB,CAAf"}
@@ -2,7 +2,7 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
2
2
 
3
3
  import * as React from 'react';
4
4
  import { View, StyleSheet } from 'react-native';
5
- import { IconButton, Text } from 'react-native-paper';
5
+ import { IconButton, Text, useTheme } from 'react-native-paper';
6
6
  import { useHeaderTextColor } from '../utils';
7
7
  import Color from 'color';
8
8
  import { getTranslation } from '../translations/utils';
@@ -37,14 +37,17 @@ export default function DatePickerModalContentHeader(props) {
37
37
  editIcon = 'pencil',
38
38
  calendarIcon = 'calendar'
39
39
  } = props;
40
+ const theme = useTheme();
40
41
  const label = getLabel(props.locale, props.mode, props.label);
41
42
  const color = useHeaderTextColor();
42
43
  const allowEditing = mode !== 'multiple';
44
+ let textFont = theme !== null && theme !== void 0 && theme.isV3 ? theme.fonts.bodyLarge : theme.fonts.medium;
43
45
  return /*#__PURE__*/React.createElement(View, {
44
46
  style: [styles.header]
45
47
  }, /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(Text, {
46
48
  style: [styles.label, {
47
- color
49
+ color,
50
+ ...textFont
48
51
  }]
49
52
  }, uppercase ? label.toUpperCase() : label), /*#__PURE__*/React.createElement(View, {
50
53
  style: styles.headerContentContainer
@@ -60,7 +63,7 @@ export default function DatePickerModalContentHeader(props) {
60
63
  }), allowEditing ? /*#__PURE__*/React.createElement(IconButton, {
61
64
  icon: collapsed ? editIcon : calendarIcon,
62
65
  accessibilityLabel: collapsed ? getTranslation(props.locale, 'typeInDate') : getTranslation(props.locale, 'pickDateFromCalendar'),
63
- color: color,
66
+ iconColor: color,
64
67
  onPress: onToggle
65
68
  }) : null);
66
69
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","StyleSheet","IconButton","Text","useHeaderTextColor","Color","getTranslation","getLabel","locale","mode","configuredLabel","DatePickerModalContentHeader","props","onToggle","collapsed","moreLabel","uppercase","editIcon","calendarIcon","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"],"sources":["DatePickerModalContentHeader.tsx"],"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 uppercase?: boolean\n headerSeparator?: string\n startLabel?: string\n endLabel?: string\n editIcon?: string\n calendarIcon?: string\n closeIcon?: 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 {\n onToggle,\n collapsed,\n mode,\n moreLabel,\n uppercase,\n editIcon = 'pencil',\n calendarIcon = 'calendar',\n } = 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 }]}>\n {uppercase ? label.toUpperCase() : label}\n </Text>\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 ? editIcon : calendarIcon}\n accessibilityLabel={\n collapsed\n ? getTranslation(props.locale, 'typeInDate')\n : getTranslation(props.locale, 'pickDateFromCalendar')\n }\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"],"mappings":"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"}
1
+ {"version":3,"names":["React","View","StyleSheet","IconButton","Text","useTheme","useHeaderTextColor","Color","getTranslation","getLabel","locale","mode","configuredLabel","DatePickerModalContentHeader","props","onToggle","collapsed","moreLabel","uppercase","editIcon","calendarIcon","theme","label","color","allowEditing","textFont","isV3","fonts","bodyLarge","medium","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"],"sources":["DatePickerModalContentHeader.tsx"],"sourcesContent":["import * as React from 'react'\nimport { View, StyleSheet } from 'react-native'\nimport { IconButton, MD2Theme, Text, useTheme } 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 uppercase?: boolean\n headerSeparator?: string\n startLabel?: string\n endLabel?: string\n editIcon?: string\n calendarIcon?: string\n closeIcon?: 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 {\n onToggle,\n collapsed,\n mode,\n moreLabel,\n uppercase,\n editIcon = 'pencil',\n calendarIcon = 'calendar',\n } = props\n const theme = useTheme()\n const label = getLabel(props.locale, props.mode, props.label)\n\n const color = useHeaderTextColor()\n const allowEditing = mode !== 'multiple'\n\n let textFont = theme?.isV3\n ? theme.fonts.bodyLarge\n : (theme as any as MD2Theme).fonts.medium\n\n return (\n <View style={[styles.header]}>\n <View>\n <Text style={[styles.label, { color, ...textFont }]}>\n {uppercase ? label.toUpperCase() : label}\n </Text>\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 ? editIcon : calendarIcon}\n accessibilityLabel={\n collapsed\n ? getTranslation(props.locale, 'typeInDate')\n : getTranslation(props.locale, 'pickDateFromCalendar')\n }\n iconColor={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"],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  import * as React from 'react';
2
- import { Animated, StyleSheet, SafeAreaView } from 'react-native';
2
+ import { Animated, StyleSheet } from 'react-native';
3
3
  import { Appbar, Button } from 'react-native-paper';
4
4
  import { useHeaderTextColor } from '../utils';
5
5
  import { getTranslation } from '../translations/utils';
6
+ import { useSafeAreaInsets } from 'react-native-safe-area-context';
6
7
  export default function DatePickerModalHeader(props) {
7
8
  const {
8
9
  disableSafeTop,
@@ -11,10 +12,13 @@ export default function DatePickerModalHeader(props) {
11
12
  } = props;
12
13
  const saveLabel = props.saveLabel || getTranslation(locale, 'save');
13
14
  const color = useHeaderTextColor();
14
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Animated.View, {
15
- style: styles.animated
16
- }, /*#__PURE__*/React.createElement(SafeAreaView, {
17
- style: [styles.safeContent, disableSafeTop && styles.safeContentNoTop]
15
+ const insets = useSafeAreaInsets();
16
+ return /*#__PURE__*/React.createElement(Animated.View, {
17
+ style: [styles.animated, {
18
+ paddingTop: disableSafeTop ? 0 : insets.top,
19
+ paddingLeft: insets.left,
20
+ paddingRight: insets.right
21
+ }]
18
22
  }, /*#__PURE__*/React.createElement(Appbar, {
19
23
  style: styles.appbarHeader
20
24
  }, /*#__PURE__*/React.createElement(Appbar.Action, {
@@ -27,26 +31,20 @@ export default function DatePickerModalHeader(props) {
27
31
  title: ''
28
32
  }), /*#__PURE__*/React.createElement(Button, {
29
33
  color: color,
34
+ textColor: color,
30
35
  onPress: props.onSave,
31
36
  disabled: props.saveLabelDisabled || false,
32
37
  uppercase: props.uppercase || true,
33
38
  testID: "react-native-paper-dates-save"
34
- }, saveLabel)))));
39
+ }, saveLabel)));
35
40
  }
36
41
  const styles = StyleSheet.create({
37
42
  fill: {
38
43
  flex: 1
39
44
  },
40
45
  animated: {
41
- paddingBottom: 0,
42
46
  elevation: 4
43
47
  },
44
- safeContent: {
45
- paddingBottom: 0
46
- },
47
- safeContentNoTop: {
48
- paddingTop: 0
49
- },
50
48
  header: {
51
49
  height: 75,
52
50
  alignItems: 'center',
@@ -1 +1 @@
1
- {"version":3,"names":["React","Animated","StyleSheet","SafeAreaView","Appbar","Button","useHeaderTextColor","getTranslation","DatePickerModalHeader","props","disableSafeTop","locale","closeIcon","saveLabel","color","styles","animated","safeContent","safeContentNoTop","appbarHeader","onDismiss","onSave","saveLabelDisabled","uppercase","create","fill","flex","paddingBottom","elevation","paddingTop","header","height","alignItems","flexDirection","paddingLeft","paddingRight","headerContentContainer","marginTop","label","letterSpacing","fontSize","singleHeaderText","rangeHeaderText","headerTextFilled","headerTextEmpty","headerSeparator","backgroundColor"],"sources":["DatePickerModalHeader.tsx"],"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 saveLabelDisabled?: boolean\n uppercase?: boolean\n onDismiss: () => void\n onSave: () => void\n locale: string | undefined\n closeIcon?: string\n}\n\nexport default function DatePickerModalHeader(\n props: DatePickerModalHeaderProps\n) {\n const { disableSafeTop, locale, closeIcon = 'close' } = 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={closeIcon}\n accessibilityLabel={getTranslation(locale, '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 disabled={props.saveLabelDisabled || false}\n uppercase={props.uppercase || true}\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"],"mappings":"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"}
1
+ {"version":3,"names":["React","Animated","StyleSheet","Appbar","Button","useHeaderTextColor","getTranslation","useSafeAreaInsets","DatePickerModalHeader","props","disableSafeTop","locale","closeIcon","saveLabel","color","insets","styles","animated","paddingTop","top","paddingLeft","left","paddingRight","right","appbarHeader","onDismiss","onSave","saveLabelDisabled","uppercase","create","fill","flex","elevation","header","height","alignItems","flexDirection","headerContentContainer","marginTop","label","letterSpacing","fontSize","singleHeaderText","rangeHeaderText","headerTextFilled","headerTextEmpty","headerSeparator","backgroundColor"],"sources":["DatePickerModalHeader.tsx"],"sourcesContent":["import * as React from 'react'\nimport { Animated, StyleSheet } from 'react-native'\nimport { Appbar, Button } from 'react-native-paper'\n\nimport { useHeaderTextColor } from '../utils'\nimport { getTranslation } from '../translations/utils'\nimport { useSafeAreaInsets } from 'react-native-safe-area-context'\n\nexport interface DatePickerModalHeaderProps {\n disableSafeTop?: boolean\n saveLabel?: string\n saveLabelDisabled?: boolean\n uppercase?: boolean\n onDismiss: () => void\n onSave: () => void\n locale: string | undefined\n closeIcon?: string\n}\n\nexport default function DatePickerModalHeader(\n props: DatePickerModalHeaderProps\n) {\n const { disableSafeTop, locale, closeIcon = 'close' } = props\n const saveLabel = props.saveLabel || getTranslation(locale, 'save')\n const color = useHeaderTextColor()\n const insets = useSafeAreaInsets()\n\n return (\n <Animated.View\n style={[\n styles.animated,\n {\n paddingTop: disableSafeTop ? 0 : insets.top,\n paddingLeft: insets.left,\n paddingRight: insets.right,\n },\n ]}\n >\n <Appbar style={styles.appbarHeader}>\n <Appbar.Action\n icon={closeIcon}\n accessibilityLabel={getTranslation(locale, '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 textColor={color}\n onPress={props.onSave}\n disabled={props.saveLabelDisabled || false}\n uppercase={props.uppercase || true}\n testID=\"react-native-paper-dates-save\"\n >\n {saveLabel}\n </Button>\n </Appbar>\n </Animated.View>\n )\n}\n\nconst styles = StyleSheet.create({\n fill: {\n flex: 1,\n },\n animated: {\n elevation: 4,\n },\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"],"mappings":"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"}
@@ -1,26 +1,24 @@
1
- import { Animated, SafeAreaView, StyleSheet } from 'react-native';
1
+ import { Animated, StyleSheet } from 'react-native';
2
2
  import * as React from 'react';
3
3
  import { useHeaderBackgroundColor } from '../utils';
4
+ import { useSafeAreaInsets } from 'react-native-safe-area-context';
4
5
  export default function DatePickerModalHeaderBackground(_ref) {
5
6
  let {
6
7
  children
7
8
  } = _ref;
8
9
  const backgroundColor = useHeaderBackgroundColor();
10
+ const insets = useSafeAreaInsets();
9
11
  return /*#__PURE__*/React.createElement(Animated.View, {
10
12
  style: [styles.animated, {
11
- backgroundColor
13
+ backgroundColor,
14
+ paddingLeft: insets.left,
15
+ paddingRight: insets.right
12
16
  }]
13
- }, /*#__PURE__*/React.createElement(SafeAreaView, {
14
- style: styles.safeContent
15
- }, children));
17
+ }, children);
16
18
  }
17
19
  const styles = StyleSheet.create({
18
20
  animated: {
19
- paddingBottom: 0,
20
21
  elevation: 4
21
- },
22
- safeContent: {
23
- paddingBottom: 0
24
22
  }
25
23
  });
26
24
  //# sourceMappingURL=DatePickerModalHeaderBackground.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Animated","SafeAreaView","StyleSheet","React","useHeaderBackgroundColor","DatePickerModalHeaderBackground","children","backgroundColor","styles","animated","safeContent","create","paddingBottom","elevation"],"sources":["DatePickerModalHeaderBackground.tsx"],"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"],"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;EAAA,IAJqD;IACtDC;EADsD,CAIrD;EACD,MAAMC,eAAe,GAAGH,wBAAwB,EAAhD;EAEA,oBACE,oBAAC,QAAD,CAAU,IAAV;IACE,KAAK,EAAE,CACLI,MAAM,CAACC,QADF,EAEL;MACEF;IADF,CAFK;EADT,gBAQE,oBAAC,YAAD;IAAc,KAAK,EAAEC,MAAM,CAACE;EAA5B,GAA0CJ,QAA1C,CARF,CADF;AAYD;AAED,MAAME,MAAM,GAAGN,UAAU,CAACS,MAAX,CAAkB;EAC/BF,QAAQ,EAAE;IACRG,aAAa,EAAE,CADP;IAERC,SAAS,EAAE;EAFH,CADqB;EAK/BH,WAAW,EAAE;IACXE,aAAa,EAAE;EADJ;AALkB,CAAlB,CAAf"}
1
+ {"version":3,"names":["Animated","StyleSheet","React","useHeaderBackgroundColor","useSafeAreaInsets","DatePickerModalHeaderBackground","children","backgroundColor","insets","styles","animated","paddingLeft","left","paddingRight","right","create","elevation"],"sources":["DatePickerModalHeaderBackground.tsx"],"sourcesContent":["import { Animated, StyleSheet } from 'react-native'\nimport * as React from 'react'\nimport { useHeaderBackgroundColor } from '../utils'\nimport { useSafeAreaInsets } from 'react-native-safe-area-context'\n\nexport default function DatePickerModalHeaderBackground({\n children,\n}: {\n children: any\n}) {\n const backgroundColor = useHeaderBackgroundColor()\n const insets = useSafeAreaInsets()\n return (\n <Animated.View\n style={[\n styles.animated,\n {\n backgroundColor,\n paddingLeft: insets.left,\n paddingRight: insets.right,\n },\n ]}\n >\n {children}\n </Animated.View>\n )\n}\n\nconst styles = StyleSheet.create({\n animated: {\n elevation: 4,\n },\n})\n"],"mappings":"AAAA,SAASA,QAAT,EAAmBC,UAAnB,QAAqC,cAArC;AACA,OAAO,KAAKC,KAAZ,MAAuB,OAAvB;AACA,SAASC,wBAAT,QAAyC,UAAzC;AACA,SAASC,iBAAT,QAAkC,gCAAlC;AAEA,eAAe,SAASC,+BAAT,OAIZ;EAAA,IAJqD;IACtDC;EADsD,CAIrD;EACD,MAAMC,eAAe,GAAGJ,wBAAwB,EAAhD;EACA,MAAMK,MAAM,GAAGJ,iBAAiB,EAAhC;EACA,oBACE,oBAAC,QAAD,CAAU,IAAV;IACE,KAAK,EAAE,CACLK,MAAM,CAACC,QADF,EAEL;MACEH,eADF;MAEEI,WAAW,EAAEH,MAAM,CAACI,IAFtB;MAGEC,YAAY,EAAEL,MAAM,CAACM;IAHvB,CAFK;EADT,GAUGR,QAVH,CADF;AAcD;AAED,MAAMG,MAAM,GAAGR,UAAU,CAACc,MAAX,CAAkB;EAC/BL,QAAQ,EAAE;IACRM,SAAS,EAAE;EADH;AADqB,CAAlB,CAAf"}
@@ -28,13 +28,13 @@ function Day(props) {
28
28
  disabled,
29
29
  textColorOnPrimary,
30
30
  theme
31
- } = props; // console.log(month, { day })
32
-
31
+ } = props;
33
32
  const onPress = React.useCallback(() => {
34
33
  onPressDate(new Date(year, month, day));
35
34
  }, [onPressDate, year, month, day]);
36
35
  const borderColor = selected || inRange && theme.dark ? textColorOnPrimary : theme.dark ? '#fff' : '#000';
37
36
  const textColor = selected || inRange && theme.dark ? textColorOnPrimary : undefined;
37
+ let textFont = theme !== null && theme !== void 0 && theme.isV3 ? theme.fonts.bodyMedium : theme.fonts.medium;
38
38
  return /*#__PURE__*/React.createElement(View, {
39
39
  style: [styles.root, disabled && styles.disabled]
40
40
  }, /*#__PURE__*/React.createElement(DayRange, {
@@ -58,9 +58,10 @@ function Day(props) {
58
58
  backgroundColor: primaryColor
59
59
  } : null]
60
60
  }, /*#__PURE__*/React.createElement(Text, {
61
- style: textColor ? {
61
+ style: [textColor ? {
62
62
  color: textColor
63
- } : undefined,
63
+ } : undefined, { ...textFont
64
+ }],
64
65
  selectable: false
65
66
  }, day))));
66
67
  }
@@ -1 +1 @@
1
- {"version":3,"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"],"sources":["Day.tsx"],"sourcesContent":["import * as React from 'react'\nimport { DarkTheme, Text, TouchableRipple } from 'react-native-paper'\nimport { StyleSheet, View } from 'react-native'\nimport DayRange from './DayRange'\nimport { daySize } from './dateUtils'\n\nfunction EmptyDayPure() {\n return <View style={styles.empty} />\n}\nexport const EmptyDay = React.memo(EmptyDayPure)\n\nfunction Day(props: {\n theme: typeof DarkTheme\n textColorOnPrimary: string\n day: number\n month: number\n year: number\n selected: boolean\n inRange: boolean\n leftCrop: boolean\n rightCrop: boolean\n primaryColor: string\n selectColor: string\n isToday: boolean\n disabled: boolean\n onPressDate: (date: Date) => any\n}) {\n const {\n day,\n month,\n year,\n selected,\n inRange,\n leftCrop,\n rightCrop,\n onPressDate,\n primaryColor,\n selectColor,\n isToday,\n disabled,\n textColorOnPrimary,\n theme,\n } = props\n // console.log(month, { day })\n const onPress = React.useCallback(() => {\n onPressDate(new Date(year, month, day))\n }, [onPressDate, year, month, day])\n\n const borderColor =\n selected || (inRange && theme.dark)\n ? textColorOnPrimary\n : theme.dark\n ? '#fff'\n : '#000'\n const textColor =\n selected || (inRange && theme.dark) ? textColorOnPrimary : undefined\n\n return (\n <View style={[styles.root, disabled && styles.disabled]}>\n <DayRange\n inRange={inRange}\n leftCrop={leftCrop}\n rightCrop={rightCrop}\n selectColor={selectColor}\n />\n\n <TouchableRipple\n testID={`react-native-paper-dates-day-${year}-${month}-${day}`}\n disabled={disabled}\n borderless={true}\n onPress={disabled ? undefined : onPress}\n style={[\n styles.button,\n { backgroundColor: inRange ? selectColor : undefined },\n ]}\n accessibilityRole=\"button\"\n >\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"],"mappings":"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"}
1
+ {"version":3,"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","textFont","isV3","fonts","bodyMedium","medium","root","button","backgroundColor","color","create","flex","flexBasis","opacity","justifyContent","alignItems","position","width","height","overflow","borderRadius","borderWidth","flex1"],"sources":["Day.tsx"],"sourcesContent":["import * as React from 'react'\nimport { MD2Theme, Text, TouchableRipple } from 'react-native-paper'\nimport { StyleSheet, View } from 'react-native'\nimport DayRange from './DayRange'\nimport { daySize } from './dateUtils'\n\nimport type { PaperTheme } from '../utils'\n\nfunction EmptyDayPure() {\n return <View style={styles.empty} />\n}\nexport const EmptyDay = React.memo(EmptyDayPure)\n\nfunction Day(props: {\n theme: PaperTheme\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 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 let textFont = theme?.isV3\n ? theme.fonts.bodyMedium\n : (theme as any as MD2Theme).fonts.medium\n\n return (\n <View style={[styles.root, disabled && styles.disabled]}>\n <DayRange\n inRange={inRange}\n leftCrop={leftCrop}\n rightCrop={rightCrop}\n selectColor={selectColor}\n />\n\n <TouchableRipple\n testID={`react-native-paper-dates-day-${year}-${month}-${day}`}\n disabled={disabled}\n borderless={true}\n onPress={disabled ? undefined : onPress}\n style={[\n styles.button,\n { backgroundColor: inRange ? selectColor : undefined },\n ]}\n accessibilityRole=\"button\"\n >\n <View\n style={[\n styles.day,\n isToday ? { borderColor: borderColor } : null,\n selected ? { backgroundColor: primaryColor } : null,\n ]}\n >\n <Text\n style={[\n textColor ? { color: textColor } : undefined,\n { ...textFont },\n ]}\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"],"mappings":"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"}
@@ -7,10 +7,12 @@ function DayName(_ref) {
7
7
  label
8
8
  } = _ref;
9
9
  const theme = useTheme();
10
+ let textFont = theme !== null && theme !== void 0 && theme.isV3 ? theme.fonts.bodyMedium : theme.fonts.medium;
10
11
  return /*#__PURE__*/React.createElement(View, {
11
12
  style: styles.dayName
12
13
  }, /*#__PURE__*/React.createElement(Text, {
13
- style: [styles.dayNameLabel, theme.fonts.medium],
14
+ style: [styles.dayNameLabel, { ...textFont
15
+ }],
14
16
  selectable: false
15
17
  }, label));
16
18
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","StyleSheet","View","Text","useTheme","DayName","label","theme","styles","dayName","dayNameLabel","fonts","medium","create","flex","alignItems","fontSize","opacity","memo"],"sources":["DayName.tsx"],"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"],"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;EAAA,IAA9B;IAAEC;EAAF,CAA8B;EAC7C,MAAMC,KAAK,GAAGH,QAAQ,EAAtB;EACA,oBACE,oBAAC,IAAD;IAAM,KAAK,EAAEI,MAAM,CAACC;EAApB,gBACE,oBAAC,IAAD;IACE,KAAK,EAAE,CAACD,MAAM,CAACE,YAAR,EAAsBH,KAAK,CAACI,KAAN,CAAYC,MAAlC,CADT;IAEE,UAAU,EAAE;EAFd,GAIGN,KAJH,CADF,CADF;AAUD;;AACD,MAAME,MAAM,GAAGP,UAAU,CAACY,MAAX,CAAkB;EAC/BJ,OAAO,EAAE;IAAEK,IAAI,EAAE,CAAR;IAAWC,UAAU,EAAE;EAAvB,CADsB;EAE/BL,YAAY,EAAE;IAAEM,QAAQ,EAAE,EAAZ;IAAgBC,OAAO,EAAE;EAAzB;AAFiB,CAAlB,CAAf;AAIA,4BAAejB,KAAK,CAACkB,IAAN,CAAWb,OAAX,CAAf"}
1
+ {"version":3,"names":["React","StyleSheet","View","Text","useTheme","DayName","label","theme","textFont","isV3","fonts","bodyMedium","medium","styles","dayName","dayNameLabel","create","flex","alignItems","fontSize","opacity","memo"],"sources":["DayName.tsx"],"sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { MD2Theme, Text, useTheme } from 'react-native-paper'\n\nfunction DayName({ label }: { label: string }) {\n const theme = useTheme()\n\n let textFont = theme?.isV3\n ? theme.fonts.bodyMedium\n : (theme as any as MD2Theme).fonts.medium\n\n return (\n <View style={styles.dayName}>\n <Text style={[styles.dayNameLabel, { ...textFont }]} selectable={false}>\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"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AACA,SAAmBC,IAAnB,EAAyBC,QAAzB,QAAyC,oBAAzC;;AAEA,SAASC,OAAT,OAA+C;EAAA,IAA9B;IAAEC;EAAF,CAA8B;EAC7C,MAAMC,KAAK,GAAGH,QAAQ,EAAtB;EAEA,IAAII,QAAQ,GAAGD,KAAK,SAAL,IAAAA,KAAK,WAAL,IAAAA,KAAK,CAAEE,IAAP,GACXF,KAAK,CAACG,KAAN,CAAYC,UADD,GAEVJ,KAAD,CAA2BG,KAA3B,CAAiCE,MAFrC;EAIA,oBACE,oBAAC,IAAD;IAAM,KAAK,EAAEC,MAAM,CAACC;EAApB,gBACE,oBAAC,IAAD;IAAM,KAAK,EAAE,CAACD,MAAM,CAACE,YAAR,EAAsB,EAAE,GAAGP;IAAL,CAAtB,CAAb;IAAqD,UAAU,EAAE;EAAjE,GACGF,KADH,CADF,CADF;AAOD;;AACD,MAAMO,MAAM,GAAGZ,UAAU,CAACe,MAAX,CAAkB;EAC/BF,OAAO,EAAE;IAAEG,IAAI,EAAE,CAAR;IAAWC,UAAU,EAAE;EAAvB,CADsB;EAE/BH,YAAY,EAAE;IAAEI,QAAQ,EAAE,EAAZ;IAAgBC,OAAO,EAAE;EAAzB;AAFiB,CAAlB,CAAf;AAIA,4BAAepB,KAAK,CAACqB,IAAN,CAAWhB,OAAX,CAAf"}
@@ -181,6 +181,7 @@ function Month(props) {
181
181
  };
182
182
  });
183
183
  }, [year, month, index, isDisabled, mode, isWithinValidRange, startDate, endDate, dates, date]);
184
+ let textFont = theme !== null && theme !== void 0 && theme.isV3 ? theme.fonts.bodyMedium : theme.fonts.medium;
184
185
  return /*#__PURE__*/React.createElement(View, {
185
186
  style: [styles.month, {
186
187
  height: getMonthHeight(scrollMode, index)
@@ -203,7 +204,8 @@ function Month(props) {
203
204
  borderRadius: roundness
204
205
  }]
205
206
  }, /*#__PURE__*/React.createElement(Text, {
206
- style: [styles.monthLabel, theme.fonts.medium],
207
+ style: [styles.monthLabel, { ...textFont
208
+ }],
207
209
  selectable: false
208
210
  }, monthName, " ", year), /*#__PURE__*/React.createElement(View, {
209
211
  style: isHorizontal ? styles.opacity1 : styles.opacity0
@@ -1 +1 @@
1
- {"version":3,"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"],"sources":["Month.tsx"],"sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { IconButton, Text, useTheme, TouchableRipple } from 'react-native-paper'\nimport Day, { EmptyDay } from './Day'\n\nimport {\n addMonths,\n areDatesOnSameDay,\n daySize,\n DisableWeekDaysType,\n getDaysInMonth,\n getFirstDayOfMonth,\n getRealIndex,\n getGridCount,\n isDateBetween,\n gridCounts,\n showWeekDay,\n startAtIndex,\n beginOffset,\n estimatedMonthHeight,\n useRangeChecker,\n} from './dateUtils'\nimport { getCalendarHeaderHeight } from './CalendarHeader'\nimport type {\n CalendarDate,\n CalendarDates,\n ModeType,\n ValidRangeType,\n} from './Calendar'\nimport { dayNamesHeight } from './DayNames'\nimport { useTextColorOnPrimary } from '../utils'\n\ninterface BaseMonthProps {\n locale: undefined | string\n scrollMode: 'horizontal' | 'vertical'\n disableWeekDays?: DisableWeekDaysType\n mode: ModeType\n index: number\n onPressYear: (year: number) => any\n selectingYear: boolean\n onPressDate: (date: Date) => any\n primaryColor: string\n selectColor: string\n roundness: number\n validRange?: ValidRangeType\n\n // some of these should be required in final implementation\n startDate?: CalendarDate\n endDate?: CalendarDate\n date?: CalendarDate\n dates?: CalendarDates\n}\n\ninterface MonthRangeProps extends BaseMonthProps {\n mode: 'range'\n startDate: CalendarDate\n endDate: CalendarDate\n}\n\ninterface MonthSingleProps extends BaseMonthProps {\n mode: 'single'\n date: CalendarDate\n}\n\ninterface MonthMultiProps extends BaseMonthProps {\n mode: 'multiple'\n dates: CalendarDates\n}\n\nfunction Month(props: MonthSingleProps | MonthRangeProps | MonthMultiProps) {\n const {\n index,\n mode,\n date,\n dates,\n startDate,\n endDate,\n onPressYear,\n selectingYear,\n onPressDate,\n scrollMode,\n primaryColor,\n selectColor,\n roundness,\n disableWeekDays,\n locale,\n validRange,\n } = props\n const theme = useTheme()\n const textColorOnPrimary = useTextColorOnPrimary()\n const realIndex = getRealIndex(index)\n const isHorizontal = scrollMode === 'horizontal'\n const { isDisabled, isWithinValidRange } = useRangeChecker(validRange)\n const { monthName, month, year } = React.useMemo(() => {\n const md = addMonths(new Date(), realIndex)\n const y = md.getFullYear()\n const m = md.getMonth()\n const formatter = new Intl.DateTimeFormat(locale, {\n month: 'long',\n })\n return { monthName: formatter.format(md), month: m, year: y }\n }, [realIndex, locale])\n\n const grid = React.useMemo(() => {\n const today = new Date()\n\n const daysInMonth = getDaysInMonth({ year, month })\n const dayOfWeek = getFirstDayOfMonth({ year, month })\n const emptyDays = dayOfWeek\n\n return monthGrid(index).map(({ days, weekGrid }) => {\n return {\n weekIndex: weekGrid,\n generatedDays: days.map((_, dayIndex) => {\n const isFirstWeek = weekGrid === 0\n const realDayIndex = emptyDays - dayIndex\n const beforeWeekDay = isFirstWeek && realDayIndex > 0\n const dayOfMonth = weekGrid * 7 + dayIndex - emptyDays + 1\n const afterWeekDay = dayOfMonth > daysInMonth\n\n const day = new Date(year, month, dayOfMonth)\n const isToday = areDatesOnSameDay(day, today)\n\n let inRange = false\n let disabled = isDisabled(day)\n let selected = false\n\n let leftCrop = dayOfMonth === 1\n let rightCrop = dayOfMonth === daysInMonth\n\n const isFirstDayOfMonth = dayOfMonth === 1\n const isLastDayOfMonth = dayOfMonth === daysInMonth\n\n if (mode === 'range') {\n const selectedStartDay = areDatesOnSameDay(day, startDate)\n const selectedEndDay = areDatesOnSameDay(day, endDate)\n selected = selectedStartDay || selectedEndDay\n inRange = isDateBetween(day, {\n startDate,\n endDate,\n })\n if (selectedStartDay) {\n leftCrop = true\n }\n if (selectedEndDay) {\n rightCrop = true\n }\n if (dayIndex === 0 && !selectedStartDay) {\n leftCrop = false\n }\n\n if (dayIndex === 6 && !selectedEndDay) {\n rightCrop = false\n }\n\n if (\n (isFirstDayOfMonth && selectedEndDay) ||\n (isLastDayOfMonth && selectedStartDay)\n ) {\n inRange = false\n }\n } else if (mode === 'multiple') {\n const safeDates = dates || []\n selected = safeDates.some((d) => areDatesOnSameDay(day, d))\n\n const yesterday = new Date(year, month, dayOfMonth - 1)\n const tomorrow = new Date(year, month, dayOfMonth + 1)\n\n const yesterdaySelected = safeDates.some((d) =>\n areDatesOnSameDay(d, yesterday)\n )\n const tomorrowSelected = safeDates.some((d) =>\n areDatesOnSameDay(d, tomorrow)\n )\n\n if (selected) {\n if (tomorrowSelected && yesterdaySelected) {\n inRange = true\n }\n if (tomorrowSelected && !yesterdaySelected) {\n inRange = true\n leftCrop = true\n }\n\n if (yesterdaySelected && !tomorrowSelected) {\n inRange = true\n rightCrop = true\n }\n\n if (isFirstDayOfMonth && !tomorrowSelected) {\n inRange = false\n }\n\n if (isLastDayOfMonth && !yesterdaySelected) {\n inRange = false\n }\n\n if (inRange && !leftCrop && !rightCrop) {\n selected = false\n }\n }\n } else if (mode === 'single') {\n selected = areDatesOnSameDay(day, date)\n }\n\n const isWithinOptionalValidRange = isWithinValidRange(day)\n\n if (inRange && !disabled) {\n disabled = false\n }\n\n if (!isWithinOptionalValidRange) {\n disabled = true\n }\n\n return {\n beforeWeekDay,\n afterWeekDay,\n year,\n month,\n dayOfMonth,\n dayIndex,\n mode,\n selected,\n inRange,\n leftCrop,\n rightCrop,\n isToday,\n disabled,\n }\n }),\n }\n })\n }, [\n year,\n month,\n index,\n isDisabled,\n mode,\n isWithinValidRange,\n startDate,\n endDate,\n dates,\n date,\n ])\n\n return (\n <View style={[styles.month, { height: getMonthHeight(scrollMode, index) }]}>\n <View\n style={[\n styles.monthHeader,\n isHorizontal\n ? {\n marginTop: monthHeaderSingleMarginTop,\n marginBottom: monthHeaderSingleMarginBottom,\n }\n : null,\n ]}\n >\n <TouchableRipple\n disabled={!isHorizontal}\n onPress={isHorizontal ? () => onPressYear(year) : undefined}\n accessibilityRole=\"button\"\n accessibilityLabel={`${monthName} ${year}`}\n style={[\n styles.yearButton,\n {\n borderRadius: roundness,\n },\n ]}\n >\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"],"mappings":"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"}
1
+ {"version":3,"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","textFont","isV3","fonts","bodyMedium","medium","styles","height","getMonthHeight","monthHeader","marginTop","monthHeaderSingleMarginTop","marginBottom","monthHeaderSingleMarginBottom","undefined","yearButton","borderRadius","yearButtonInner","monthLabel","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"],"sources":["Month.tsx"],"sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport {\n IconButton,\n Text,\n useTheme,\n TouchableRipple,\n MD2Theme,\n} 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 let textFont = theme?.isV3\n ? theme.fonts.bodyMedium\n : (theme as any as MD2Theme).fonts.medium\n\n return (\n <View style={[styles.month, { height: getMonthHeight(scrollMode, index) }]}>\n <View\n style={[\n styles.monthHeader,\n isHorizontal\n ? {\n marginTop: monthHeaderSingleMarginTop,\n marginBottom: monthHeaderSingleMarginBottom,\n }\n : null,\n ]}\n >\n <TouchableRipple\n disabled={!isHorizontal}\n onPress={isHorizontal ? () => onPressYear(year) : undefined}\n accessibilityRole=\"button\"\n accessibilityLabel={`${monthName} ${year}`}\n style={[\n styles.yearButton,\n {\n borderRadius: roundness,\n },\n ]}\n >\n <View\n style={[\n styles.yearButtonInner,\n {\n borderRadius: roundness,\n },\n ]}\n >\n <Text\n style={[styles.monthLabel, { ...textFont }]}\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"],"mappings":"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"}
@@ -121,8 +121,7 @@ function VerticalScroller(_ref3) {
121
121
  left: 0,
122
122
  right: 0,
123
123
  position: 'absolute',
124
- height: getMonthHeight('vertical', visibleIndexes[vi]) // transform: `translateY(${getMonthsOffset('vertical', vi)}px)`,
125
-
124
+ height: getMonthHeight('vertical', visibleIndexes[vi])
126
125
  }
127
126
  }, renderItem({
128
127
  index: visibleIndexes[vi],