react-native-paper-dates 0.8.1 → 0.8.2

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 (99) hide show
  1. package/README.md +15 -5
  2. package/lib/commonjs/Date/CalendarEdit.js +3 -3
  3. package/lib/commonjs/Date/CalendarEdit.js.map +1 -1
  4. package/lib/commonjs/Date/CalendarHeader.js +2 -8
  5. package/lib/commonjs/Date/CalendarHeader.js.map +1 -1
  6. package/lib/commonjs/Date/DatePickerInput.js +7 -7
  7. package/lib/commonjs/Date/DatePickerInput.js.map +1 -1
  8. package/lib/commonjs/Date/DatePickerModalContentHeader.js +1 -4
  9. package/lib/commonjs/Date/DatePickerModalContentHeader.js.map +1 -1
  10. package/lib/commonjs/Date/DatePickerModalHeader.js +1 -4
  11. package/lib/commonjs/Date/DatePickerModalHeader.js.map +1 -1
  12. package/lib/commonjs/Date/DateRangeInput.js +1 -4
  13. package/lib/commonjs/Date/DateRangeInput.js.map +1 -1
  14. package/lib/commonjs/Date/Day.js +1 -4
  15. package/lib/commonjs/Date/Day.js.map +1 -1
  16. package/lib/commonjs/Date/Month.js +2 -8
  17. package/lib/commonjs/Date/Month.js.map +1 -1
  18. package/lib/commonjs/Date/YearPicker.js +1 -4
  19. package/lib/commonjs/Date/YearPicker.js.map +1 -1
  20. package/lib/commonjs/Date/inputUtils.js +1 -1
  21. package/lib/commonjs/Date/inputUtils.js.map +1 -1
  22. package/lib/commonjs/Time/TimeInput.js +1 -4
  23. package/lib/commonjs/Time/TimeInput.js.map +1 -1
  24. package/lib/commonjs/Time/TimePickerModal.js +1 -4
  25. package/lib/commonjs/Time/TimePickerModal.js.map +1 -1
  26. package/lib/commonjs/translations/de.js +25 -0
  27. package/lib/commonjs/translations/de.js.map +1 -0
  28. package/lib/commonjs/translations/en.js +3 -3
  29. package/lib/commonjs/translations/en.js.map +1 -1
  30. package/lib/commonjs/translations/enGB.js +3 -3
  31. package/lib/commonjs/translations/enGB.js.map +1 -1
  32. package/lib/commonjs/translations/nl.js +3 -3
  33. package/lib/commonjs/translations/nl.js.map +1 -1
  34. package/lib/commonjs/translations/pl.js +3 -3
  35. package/lib/commonjs/translations/pl.js.map +1 -1
  36. package/lib/commonjs/translations/pt.js +3 -3
  37. package/lib/commonjs/translations/pt.js.map +1 -1
  38. package/lib/commonjs/translations/utils.js.map +1 -1
  39. package/lib/module/Date/CalendarEdit.js +3 -3
  40. package/lib/module/Date/CalendarEdit.js.map +1 -1
  41. package/lib/module/Date/CalendarHeader.js +2 -8
  42. package/lib/module/Date/CalendarHeader.js.map +1 -1
  43. package/lib/module/Date/DatePickerInput.js +7 -7
  44. package/lib/module/Date/DatePickerInput.js.map +1 -1
  45. package/lib/module/Date/DatePickerModalContentHeader.js +1 -4
  46. package/lib/module/Date/DatePickerModalContentHeader.js.map +1 -1
  47. package/lib/module/Date/DatePickerModalHeader.js +1 -4
  48. package/lib/module/Date/DatePickerModalHeader.js.map +1 -1
  49. package/lib/module/Date/DateRangeInput.js +1 -4
  50. package/lib/module/Date/DateRangeInput.js.map +1 -1
  51. package/lib/module/Date/Day.js +1 -4
  52. package/lib/module/Date/Day.js.map +1 -1
  53. package/lib/module/Date/Month.js +2 -8
  54. package/lib/module/Date/Month.js.map +1 -1
  55. package/lib/module/Date/YearPicker.js +1 -4
  56. package/lib/module/Date/YearPicker.js.map +1 -1
  57. package/lib/module/Date/inputUtils.js +1 -1
  58. package/lib/module/Date/inputUtils.js.map +1 -1
  59. package/lib/module/Time/TimeInput.js +1 -4
  60. package/lib/module/Time/TimeInput.js.map +1 -1
  61. package/lib/module/Time/TimePickerModal.js +1 -4
  62. package/lib/module/Time/TimePickerModal.js.map +1 -1
  63. package/lib/module/translations/de.js +18 -0
  64. package/lib/module/translations/de.js.map +1 -0
  65. package/lib/module/translations/en.js +3 -3
  66. package/lib/module/translations/en.js.map +1 -1
  67. package/lib/module/translations/enGB.js +3 -3
  68. package/lib/module/translations/enGB.js.map +1 -1
  69. package/lib/module/translations/nl.js +3 -3
  70. package/lib/module/translations/nl.js.map +1 -1
  71. package/lib/module/translations/pl.js +3 -3
  72. package/lib/module/translations/pl.js.map +1 -1
  73. package/lib/module/translations/pt.js +3 -3
  74. package/lib/module/translations/pt.js.map +1 -1
  75. package/lib/module/translations/utils.js.map +1 -1
  76. package/lib/typescript/Date/DatePickerInput.d.ts +3 -3
  77. package/lib/typescript/TextInputMask.d.ts +3 -3
  78. package/lib/typescript/translations/de.d.ts +3 -0
  79. package/lib/typescript/translations/utils.d.ts +4 -4
  80. package/package.json +3 -1
  81. package/src/Date/CalendarEdit.tsx +3 -3
  82. package/src/Date/CalendarHeader.tsx +0 -6
  83. package/src/Date/DatePickerInput.tsx +8 -5
  84. package/src/Date/DatePickerModalContentHeader.tsx +0 -3
  85. package/src/Date/DatePickerModalHeader.tsx +0 -3
  86. package/src/Date/DateRangeInput.tsx +1 -7
  87. package/src/Date/Day.tsx +0 -3
  88. package/src/Date/Month.tsx +0 -6
  89. package/src/Date/YearPicker.tsx +0 -3
  90. package/src/Date/inputUtils.ts +13 -9
  91. package/src/Time/TimeInput.tsx +0 -3
  92. package/src/Time/TimePickerModal.tsx +0 -3
  93. package/src/translations/de.ts +20 -0
  94. package/src/translations/en.ts +5 -4
  95. package/src/translations/enGB.ts +5 -4
  96. package/src/translations/nl.ts +5 -4
  97. package/src/translations/pl.ts +4 -4
  98. package/src/translations/pt.ts +4 -3
  99. package/src/translations/utils.ts +5 -5
@@ -88,7 +88,7 @@ function CalendarEdit({
88
88
  validRange={validRange}
89
89
  locale={locale}
90
90
  withModal={false}
91
- autoCompleteType={'off'}
91
+ autoComplete={'off'}
92
92
  />
93
93
  ) : null}
94
94
  {mode === 'range' ? (
@@ -104,7 +104,7 @@ function CalendarEdit({
104
104
  validRange={validRange}
105
105
  locale={locale}
106
106
  withModal={false}
107
- autoCompleteType={'off'}
107
+ autoComplete={'off'}
108
108
  />
109
109
  <View style={styles.separator} />
110
110
  <DatePickerInput
@@ -117,7 +117,7 @@ function CalendarEdit({
117
117
  validRange={validRange}
118
118
  locale={locale}
119
119
  withModal={false}
120
- autoCompleteType={'off'}
120
+ autoComplete="off"
121
121
  />
122
122
  </>
123
123
  ) : null}
@@ -51,9 +51,6 @@ function CalendarHeader({
51
51
  icon="chevron-left"
52
52
  accessibilityLabel={getTranslation(locale, 'previous')}
53
53
  onPress={onPrev}
54
- // RN types bug
55
- hasTVPreferredFocus={undefined}
56
- tvParallaxProperties={undefined}
57
54
  />
58
55
  </View>
59
56
 
@@ -67,9 +64,6 @@ function CalendarHeader({
67
64
  icon="chevron-right"
68
65
  accessibilityLabel={getTranslation(locale, 'next')}
69
66
  onPress={onNext}
70
- // RN types bug
71
- hasTVPreferredFocus={undefined}
72
- tvParallaxProperties={undefined}
73
67
  />
74
68
  </View>
75
69
  </View>
@@ -62,7 +62,12 @@ function DatePickerInput(
62
62
  <TextInputWithMask
63
63
  {...rest}
64
64
  ref={ref}
65
- label={getLabel({ label, inputFormat, withDateFormatInLabel })}
65
+ label={getLabel({
66
+ // TODO: support label components?
67
+ label: label as any,
68
+ inputFormat,
69
+ withDateFormatInLabel,
70
+ })}
66
71
  value={formattedValue}
67
72
  keyboardType={'number-pad'}
68
73
  placeholder={inputFormat}
@@ -78,9 +83,6 @@ function DatePickerInput(
78
83
  style={styles.calendarButton}
79
84
  icon="calendar"
80
85
  onPress={() => setVisible(true)}
81
- // RN types bug
82
- hasTVPreferredFocus={undefined}
83
- tvParallaxProperties={undefined}
84
86
  />
85
87
  ) : null}
86
88
  </View>
@@ -97,6 +99,7 @@ function DatePickerInput(
97
99
  onConfirm={onInnerConfirm}
98
100
  locale={locale}
99
101
  dateMode={inputMode}
102
+ validRange={validRange}
100
103
  />
101
104
  ) : null}
102
105
  </>
@@ -129,6 +132,6 @@ const styles = StyleSheet.create({
129
132
  input: {
130
133
  flexGrow: 1,
131
134
  },
132
- calendarButton: { position: 'absolute', right: 0 },
135
+ calendarButton: { position: 'absolute', right: 0, zIndex: 10 },
133
136
  })
134
137
  export default React.forwardRef(DatePickerInput)
@@ -88,9 +88,6 @@ export default function DatePickerModalContentHeader(
88
88
  }
89
89
  color={color}
90
90
  onPress={onToggle}
91
- // RN types bug
92
- hasTVPreferredFocus={undefined}
93
- tvParallaxProperties={undefined}
94
91
  />
95
92
  ) : null}
96
93
  </View>
@@ -36,9 +36,6 @@ export default function DatePickerModalHeader(
36
36
  onPress={props.onDismiss}
37
37
  color={color}
38
38
  testID="react-native-paper-dates-close"
39
- // RN types bug
40
- hasTVPreferredFocus={undefined}
41
- tvParallaxProperties={undefined}
42
39
  />
43
40
  <Appbar.Content title={''} />
44
41
  <Button
@@ -50,13 +50,7 @@ export default function DateRangeInput({ locale }: { locale: string }) {
50
50
  <Text>Tot</Text>
51
51
  </View>
52
52
  <View>
53
- <IconButton
54
- icon="calendar"
55
- onPress={() => setVisible(true)}
56
- // RN types bug
57
- hasTVPreferredFocus={undefined}
58
- tvParallaxProperties={undefined}
59
- />
53
+ <IconButton icon="calendar" onPress={() => setVisible(true)} />
60
54
  <Text style={{ opacity: 0 }} accessible={false}>
61
55
  tot
62
56
  </Text>
package/src/Date/Day.tsx CHANGED
@@ -74,9 +74,6 @@ function Day(props: {
74
74
  { backgroundColor: inRange ? selectColor : undefined },
75
75
  ]}
76
76
  accessibilityRole="button"
77
- // RN types bug
78
- hasTVPreferredFocus={undefined}
79
- tvParallaxProperties={undefined}
80
77
  >
81
78
  <View
82
79
  style={[
@@ -268,9 +268,6 @@ function Month(props: MonthSingleProps | MonthRangeProps | MonthMultiProps) {
268
268
  borderRadius: roundness,
269
269
  },
270
270
  ]}
271
- // RN types bug
272
- hasTVPreferredFocus={undefined}
273
- tvParallaxProperties={undefined}
274
271
  >
275
272
  <View
276
273
  style={[
@@ -290,9 +287,6 @@ function Month(props: MonthSingleProps | MonthRangeProps | MonthMultiProps) {
290
287
  <IconButton
291
288
  onPress={isHorizontal ? () => onPressYear(year) : undefined}
292
289
  icon={selectingYear ? 'chevron-up' : 'chevron-down'}
293
- // RN types bug
294
- hasTVPreferredFocus={undefined}
295
- tvParallaxProperties={undefined}
296
290
  />
297
291
  </View>
298
292
  </View>
@@ -77,9 +77,6 @@ function YearPure({
77
77
  accessibilityRole="button"
78
78
  accessibilityLabel={String(year)}
79
79
  style={styles.yearButton}
80
- // RN types bug
81
- hasTVPreferredFocus={undefined}
82
- tvParallaxProperties={undefined}
83
80
  >
84
81
  <View
85
82
  style={[
@@ -55,22 +55,26 @@ export default function useDateInput({
55
55
  let errors =
56
56
  validStart && validEnd
57
57
  ? [
58
- `${getTranslation(locale, 'mustBeBetween')} ${formatter.format(
59
- validStart
60
- )} - ${formatter.format(validEnd)}`,
58
+ `${getTranslation(
59
+ locale,
60
+ 'mustBeBetween',
61
+ () => 'mustBeBetween'
62
+ )(formatter.format(validStart), formatter.format(validEnd))}`,
61
63
  ]
62
64
  : [
63
65
  validStart
64
- ? `${getTranslation(
66
+ ? getTranslation(
65
67
  locale,
66
- 'mustBeHigherThan'
67
- )} ${formatter.format(validStart)}`
68
+ 'mustBeHigherThan',
69
+ () => 'mustBeHigherThan'
70
+ )(formatter.format(validStart))
68
71
  : '',
69
72
  validEnd
70
- ? `${getTranslation(
73
+ ? getTranslation(
71
74
  locale,
72
- 'mustBeLowerThan'
73
- )} ${formatter.format(validEnd)}`
75
+ 'mustBeLowerThan',
76
+ () => 'mustBeLowerThan'
77
+ )(formatter.format(validEnd))
74
78
  : '',
75
79
  ]
76
80
  setError(errors.filter((n) => n).join(' '))
@@ -96,9 +96,6 @@ function TimeInput(
96
96
  rippleColor={Color(theme.colors.primary).fade(0.7).hex()}
97
97
  onPress={() => onPress(clockType)}
98
98
  borderless={true}
99
- // RN types bug
100
- hasTVPreferredFocus={undefined}
101
- tvParallaxProperties={undefined}
102
99
  >
103
100
  <View />
104
101
  </TouchableRipple>
@@ -157,9 +157,6 @@ export function TimePickerModal({
157
157
  size={24}
158
158
  style={styles.inputTypeToggle}
159
159
  accessibilityLabel="toggle keyboard"
160
- // RN types bug
161
- hasTVPreferredFocus={undefined}
162
- tvParallaxProperties={undefined}
163
160
  />
164
161
  <View style={styles.fill} />
165
162
  <Button onPress={onDismiss} uppercase={uppercase}>
@@ -0,0 +1,20 @@
1
+ import type { TranslationsType } from './utils'
2
+ const de: TranslationsType = {
3
+ save: 'Speichern',
4
+ selectSingle: 'Wähle Datum',
5
+ selectMultiple: 'Wähle Daten',
6
+ selectRange: 'Wähle Zeitspanne',
7
+ notAccordingToDateFormat: (inputFormat) =>
8
+ `Das Format sollte ${inputFormat} sein`,
9
+ mustBeHigherThan: (date) => `Muss nach dem ${date} sein`,
10
+ mustBeLowerThan: (date) => `Muss vor dem ${date} sein`,
11
+ mustBeBetween: (startDate, endDate) =>
12
+ `Muss in dieser Zeitspanne liegen ${startDate} - ${endDate}`,
13
+ dateIsDisabled: 'Datum nicht wählbar',
14
+ previous: 'Vorheriges',
15
+ next: 'Nächstes',
16
+ typeInDate: 'Datum eingeben',
17
+ pickDateFromCalendar: 'Datum vom Kalender auswählen',
18
+ close: 'Schliessen',
19
+ }
20
+ export default de
@@ -5,11 +5,12 @@ const en: TranslationsType = {
5
5
  selectSingle: 'Select date',
6
6
  selectMultiple: 'Select dates',
7
7
  selectRange: 'Select period',
8
- notAccordingToDateFormat: (inputFormat: string) =>
8
+ notAccordingToDateFormat: (inputFormat) =>
9
9
  `Date format must be ${inputFormat}`,
10
- mustBeHigherThan: 'Must be later then',
11
- mustBeLowerThan: 'Must be earlier then',
12
- mustBeBetween: 'Must be between',
10
+ mustBeHigherThan: (date) => `Must be later then ${date}`,
11
+ mustBeLowerThan: (date) => `Must be earlier then ${date}`,
12
+ mustBeBetween: (startDate, endDate) =>
13
+ `Must be between ${startDate} - ${endDate}`,
13
14
  dateIsDisabled: 'Day is not allowed',
14
15
  previous: 'Previous',
15
16
  next: 'Next',
@@ -5,11 +5,12 @@ const enGB: TranslationsType = {
5
5
  selectSingle: 'Select date',
6
6
  selectMultiple: 'Select dates',
7
7
  selectRange: 'Select period',
8
- notAccordingToDateFormat: (inputFormat: string) =>
8
+ notAccordingToDateFormat: (inputFormat) =>
9
9
  `Date format must be ${inputFormat}`,
10
- mustBeHigherThan: 'Must be later then',
11
- mustBeLowerThan: 'Must be earlier then',
12
- mustBeBetween: 'Must be between',
10
+ mustBeHigherThan: (date) => `Must be later then ${date}`,
11
+ mustBeLowerThan: (date) => `Must be earlier then ${date}`,
12
+ mustBeBetween: (startDate, endDate) =>
13
+ `Must be between ${startDate} - ${endDate}`,
13
14
  dateIsDisabled: 'Day is not allowed',
14
15
  previous: 'Previous',
15
16
  next: 'Next',
@@ -5,11 +5,12 @@ const nl: TranslationsType = {
5
5
  selectSingle: 'Selecteer datum',
6
6
  selectMultiple: 'Selecteer datums',
7
7
  selectRange: 'Selecteer periode',
8
- notAccordingToDateFormat: (inputFormat: string) =>
8
+ notAccordingToDateFormat: (inputFormat) =>
9
9
  `Datumformaat moet ${inputFormat} zijn`,
10
- mustBeHigherThan: 'Moet later dan',
11
- mustBeLowerThan: 'Moet eerder dan',
12
- mustBeBetween: 'Moet tussen',
10
+ mustBeHigherThan: (date) => `Moet later dan ${date}`,
11
+ mustBeLowerThan: (date) => `Moet eerder dan ${date}`,
12
+ mustBeBetween: (startDate, endDate) =>
13
+ `Moet tussen ${startDate} - ${endDate}`,
13
14
  dateIsDisabled: 'Deze dag mag niet',
14
15
  previous: 'Vorige',
15
16
  next: 'Volgende',
@@ -5,11 +5,11 @@ const pl: TranslationsType = {
5
5
  selectSingle: 'Wybierz datę',
6
6
  selectMultiple: 'Wybierz daty',
7
7
  selectRange: 'Wybierz zakres',
8
- notAccordingToDateFormat: (inputFormat: string) =>
8
+ notAccordingToDateFormat: (inputFormat) =>
9
9
  `Data musi mieć format ${inputFormat}`,
10
- mustBeHigherThan: 'Nie wcześniej niż',
11
- mustBeLowerThan: 'Nie później niż',
12
- mustBeBetween: 'Pomiędzy',
10
+ mustBeHigherThan: (date) => `Nie wcześniej niżn ${date}`,
11
+ mustBeLowerThan: (date) => `Nie później niż ${date}`,
12
+ mustBeBetween: (startDate, endDate) => `Pomiędzy ${startDate} - ${endDate}`,
13
13
  dateIsDisabled: 'Niedozwolona data',
14
14
 
15
15
  previous: 'Poprzedni',
@@ -7,9 +7,10 @@ const pt: TranslationsType = {
7
7
  selectRange: 'Selecione o período',
8
8
  notAccordingToDateFormat: (inputFormat: string) =>
9
9
  `O formato da data deve ser ${inputFormat}`,
10
- mustBeHigherThan: 'Deve ser depois de',
11
- mustBeLowerThan: 'Deve ser antes de',
12
- mustBeBetween: 'Deve estar entre',
10
+ mustBeHigherThan: (date) => `Deve ser depois de ${date}`,
11
+ mustBeLowerThan: (date) => `Deve ser antes de ${date}`,
12
+ mustBeBetween: (startDate, endDate) =>
13
+ `Deve estar entre ${startDate} - ${endDate}`,
13
14
  dateIsDisabled: 'Data não é permitida',
14
15
  previous: 'Anterior',
15
16
  next: 'Próximo',
@@ -4,9 +4,9 @@ export type TranslationsType = {
4
4
  selectRange: string
5
5
  save: string
6
6
  notAccordingToDateFormat: (inputFormat: string) => string
7
- mustBeHigherThan: string
8
- mustBeLowerThan: string
9
- mustBeBetween: string
7
+ mustBeHigherThan: (date: string) => string
8
+ mustBeLowerThan: (date: string) => string
9
+ mustBeBetween: (startDate: string, endDate: string) => string
10
10
  dateIsDisabled: string
11
11
  previous: string
12
12
  next: string
@@ -17,9 +17,9 @@ export type TranslationsType = {
17
17
 
18
18
  let translationsPerLocale: Record<string, TranslationsType> = {}
19
19
 
20
- export function getTranslation(
20
+ export function getTranslation<K extends keyof TranslationsType>(
21
21
  locale: string | undefined,
22
- key: keyof TranslationsType,
22
+ key: K,
23
23
  fallback?: any
24
24
  ) {
25
25
  const l = locale || 'en'