react-native-dates-picker 0.0.9 → 0.1.1

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 (156) hide show
  1. package/README.md +27 -28
  2. package/lib/commonjs/CalendarContext.js.map +1 -1
  3. package/lib/commonjs/DateTimePicker.js +15 -8
  4. package/lib/commonjs/DateTimePicker.js.map +1 -1
  5. package/lib/commonjs/components/Calendar.js +14 -12
  6. package/lib/commonjs/components/Calendar.js.map +1 -1
  7. package/lib/commonjs/components/DatePicker.js +46 -58
  8. package/lib/commonjs/components/DatePicker.js.map +1 -1
  9. package/lib/commonjs/components/Day.js +18 -16
  10. package/lib/commonjs/components/Day.js.map +1 -1
  11. package/lib/commonjs/components/DaySelector.js +12 -12
  12. package/lib/commonjs/components/DaySelector.js.map +1 -1
  13. package/lib/commonjs/components/Header.js +27 -25
  14. package/lib/commonjs/components/Header.js.map +1 -1
  15. package/lib/commonjs/components/MonthSelector.js +9 -7
  16. package/lib/commonjs/components/MonthSelector.js.map +1 -1
  17. package/lib/commonjs/components/TimeSelector.js +22 -17
  18. package/lib/commonjs/components/TimeSelector.js.map +1 -1
  19. package/lib/commonjs/components/WheelPicker/Wheel.js +9 -4
  20. package/lib/commonjs/components/WheelPicker/Wheel.js.map +1 -1
  21. package/lib/commonjs/components/WheelPicker/WheelNative.js +14 -47
  22. package/lib/commonjs/components/WheelPicker/WheelNative.js.map +1 -1
  23. package/lib/commonjs/components/WheelPicker/WheelNativePicker/index.js +10 -0
  24. package/lib/commonjs/components/WheelPicker/WheelNativePicker/index.js.map +1 -0
  25. package/lib/commonjs/components/WheelPicker/WheelNativePicker/wheel-picker-item.js +130 -0
  26. package/lib/commonjs/components/WheelPicker/WheelNativePicker/wheel-picker-item.js.map +1 -0
  27. package/lib/commonjs/components/WheelPicker/WheelNativePicker/wheel-picker.js +174 -0
  28. package/lib/commonjs/components/WheelPicker/WheelNativePicker/wheel-picker.js.map +1 -0
  29. package/lib/commonjs/components/WheelPicker/WheelWeb.js +51 -38
  30. package/lib/commonjs/components/WheelPicker/WheelWeb.js.map +1 -1
  31. package/lib/commonjs/components/WheelPicker/animated-math.js +26 -0
  32. package/lib/commonjs/components/WheelPicker/animated-math.js.map +1 -0
  33. package/lib/commonjs/components/WheelPicker/period-native.js +36 -0
  34. package/lib/commonjs/components/WheelPicker/period-native.js.map +1 -0
  35. package/lib/commonjs/components/WheelPicker/period-picker.js +19 -0
  36. package/lib/commonjs/components/WheelPicker/period-picker.js.map +1 -0
  37. package/lib/commonjs/components/WheelPicker/period-web.js +34 -0
  38. package/lib/commonjs/components/WheelPicker/period-web.js.map +1 -0
  39. package/lib/commonjs/components/YearSelector.js +10 -8
  40. package/lib/commonjs/components/YearSelector.js.map +1 -1
  41. package/lib/commonjs/enums.js +5 -4
  42. package/lib/commonjs/enums.js.map +1 -1
  43. package/lib/commonjs/utils.js +4 -1
  44. package/lib/commonjs/utils.js.map +1 -1
  45. package/lib/module/CalendarContext.js.map +1 -1
  46. package/lib/module/DateTimePicker.js +11 -6
  47. package/lib/module/DateTimePicker.js.map +1 -1
  48. package/lib/module/components/Calendar.js +4 -4
  49. package/lib/module/components/Calendar.js.map +1 -1
  50. package/lib/module/components/DatePicker.js +36 -50
  51. package/lib/module/components/DatePicker.js.map +1 -1
  52. package/lib/module/components/Day.js +8 -8
  53. package/lib/module/components/Day.js.map +1 -1
  54. package/lib/module/components/DaySelector.js +4 -4
  55. package/lib/module/components/DaySelector.js.map +1 -1
  56. package/lib/module/components/Header.js +3 -3
  57. package/lib/module/components/Header.js.map +1 -1
  58. package/lib/module/components/MonthSelector.js +3 -2
  59. package/lib/module/components/MonthSelector.js.map +1 -1
  60. package/lib/module/components/TimeSelector.js +10 -7
  61. package/lib/module/components/TimeSelector.js.map +1 -1
  62. package/lib/module/components/WheelPicker/Wheel.js +6 -3
  63. package/lib/module/components/WheelPicker/Wheel.js.map +1 -1
  64. package/lib/module/components/WheelPicker/WheelNative.js +10 -45
  65. package/lib/module/components/WheelPicker/WheelNative.js.map +1 -1
  66. package/lib/module/components/WheelPicker/WheelNativePicker/index.js +3 -0
  67. package/lib/module/components/WheelPicker/WheelNativePicker/index.js.map +1 -0
  68. package/lib/module/components/WheelPicker/WheelNativePicker/wheel-picker-item.js +122 -0
  69. package/lib/module/components/WheelPicker/WheelNativePicker/wheel-picker-item.js.map +1 -0
  70. package/lib/module/components/WheelPicker/WheelNativePicker/wheel-picker.js +165 -0
  71. package/lib/module/components/WheelPicker/WheelNativePicker/wheel-picker.js.map +1 -0
  72. package/lib/module/components/WheelPicker/WheelWeb.js +48 -37
  73. package/lib/module/components/WheelPicker/WheelWeb.js.map +1 -1
  74. package/lib/module/components/WheelPicker/animated-math.js +20 -0
  75. package/lib/module/components/WheelPicker/animated-math.js.map +1 -0
  76. package/lib/module/components/WheelPicker/period-native.js +27 -0
  77. package/lib/module/components/WheelPicker/period-native.js.map +1 -0
  78. package/lib/module/components/WheelPicker/period-picker.js +10 -0
  79. package/lib/module/components/WheelPicker/period-picker.js.map +1 -0
  80. package/lib/module/components/WheelPicker/period-web.js +26 -0
  81. package/lib/module/components/WheelPicker/period-web.js.map +1 -0
  82. package/lib/module/components/YearSelector.js +3 -3
  83. package/lib/module/components/YearSelector.js.map +1 -1
  84. package/lib/module/enums.js +4 -3
  85. package/lib/module/enums.js.map +1 -1
  86. package/lib/module/utils.js +4 -1
  87. package/lib/module/utils.js.map +1 -1
  88. package/lib/typescript/CalendarContext.d.ts.map +1 -1
  89. package/lib/typescript/DateTimePicker.d.ts +3 -3
  90. package/lib/typescript/DateTimePicker.d.ts.map +1 -1
  91. package/lib/typescript/components/Calendar.d.ts +3 -3
  92. package/lib/typescript/components/Calendar.d.ts.map +1 -1
  93. package/lib/typescript/components/DatePicker.d.ts +2 -2
  94. package/lib/typescript/components/DatePicker.d.ts.map +1 -1
  95. package/lib/typescript/components/Day.d.ts +4 -5
  96. package/lib/typescript/components/Day.d.ts.map +1 -1
  97. package/lib/typescript/components/DaySelector.d.ts +2 -2
  98. package/lib/typescript/components/DaySelector.d.ts.map +1 -1
  99. package/lib/typescript/components/Header.d.ts +3 -3
  100. package/lib/typescript/components/Header.d.ts.map +1 -1
  101. package/lib/typescript/components/MonthSelector.d.ts +2 -2
  102. package/lib/typescript/components/MonthSelector.d.ts.map +1 -1
  103. package/lib/typescript/components/TimeSelector.d.ts +2 -2
  104. package/lib/typescript/components/TimeSelector.d.ts.map +1 -1
  105. package/lib/typescript/components/WheelPicker/Wheel.d.ts +5 -6
  106. package/lib/typescript/components/WheelPicker/Wheel.d.ts.map +1 -1
  107. package/lib/typescript/components/WheelPicker/WheelNative.d.ts +7 -8
  108. package/lib/typescript/components/WheelPicker/WheelNative.d.ts.map +1 -1
  109. package/lib/typescript/components/WheelPicker/WheelNativePicker/index.d.ts +3 -0
  110. package/lib/typescript/components/WheelPicker/WheelNativePicker/index.d.ts.map +1 -0
  111. package/lib/typescript/components/WheelPicker/WheelNativePicker/wheel-picker-item.d.ts +16 -0
  112. package/lib/typescript/components/WheelPicker/WheelNativePicker/wheel-picker-item.d.ts.map +1 -0
  113. package/lib/typescript/components/WheelPicker/WheelNativePicker/wheel-picker.d.ts +19 -0
  114. package/lib/typescript/components/WheelPicker/WheelNativePicker/wheel-picker.d.ts.map +1 -0
  115. package/lib/typescript/components/WheelPicker/WheelWeb.d.ts +6 -5
  116. package/lib/typescript/components/WheelPicker/WheelWeb.d.ts.map +1 -1
  117. package/lib/typescript/components/WheelPicker/animated-math.d.ts +5 -0
  118. package/lib/typescript/components/WheelPicker/animated-math.d.ts.map +1 -0
  119. package/lib/typescript/components/WheelPicker/period-native.d.ts +8 -0
  120. package/lib/typescript/components/WheelPicker/period-native.d.ts.map +1 -0
  121. package/lib/typescript/components/WheelPicker/period-picker.d.ts +8 -0
  122. package/lib/typescript/components/WheelPicker/period-picker.d.ts.map +1 -0
  123. package/lib/typescript/components/WheelPicker/period-web.d.ts +8 -0
  124. package/lib/typescript/components/WheelPicker/period-web.d.ts.map +1 -0
  125. package/lib/typescript/components/YearSelector.d.ts +2 -2
  126. package/lib/typescript/components/YearSelector.d.ts.map +1 -1
  127. package/lib/typescript/enums.d.ts +2 -1
  128. package/lib/typescript/enums.d.ts.map +1 -1
  129. package/lib/typescript/types.d.ts +5 -2
  130. package/lib/typescript/types.d.ts.map +1 -1
  131. package/lib/typescript/utils.d.ts +2 -2
  132. package/lib/typescript/utils.d.ts.map +1 -1
  133. package/package.json +7 -6
  134. package/src/DateTimePicker.tsx +20 -15
  135. package/src/components/Calendar.tsx +8 -8
  136. package/src/components/DatePicker.tsx +38 -66
  137. package/src/components/Day.tsx +9 -9
  138. package/src/components/DaySelector.tsx +6 -6
  139. package/src/components/Header.tsx +5 -5
  140. package/src/components/MonthSelector.tsx +4 -3
  141. package/src/components/TimeSelector.tsx +11 -12
  142. package/src/components/WheelPicker/Wheel.tsx +10 -10
  143. package/src/components/WheelPicker/WheelNative.tsx +13 -47
  144. package/src/components/WheelPicker/WheelNativePicker/index.ts +3 -0
  145. package/src/components/WheelPicker/WheelNativePicker/wheel-picker-item.tsx +140 -0
  146. package/src/components/WheelPicker/WheelNativePicker/wheel-picker.tsx +220 -0
  147. package/src/components/WheelPicker/WheelWeb.tsx +92 -65
  148. package/src/components/WheelPicker/animated-math.ts +33 -0
  149. package/src/components/WheelPicker/period-native.tsx +39 -0
  150. package/src/components/WheelPicker/period-picker.tsx +16 -0
  151. package/src/components/WheelPicker/period-web.tsx +37 -0
  152. package/src/components/YearSelector.tsx +4 -4
  153. package/src/enums.ts +4 -3
  154. package/src/types.ts +6 -2
  155. package/src/utils.ts +3 -3
  156. /package/src/{CalendarContext.tsx → CalendarContext.ts} +0 -0
@@ -0,0 +1,37 @@
1
+ import React, { memo } from 'react';
2
+ import { Pressable, StyleSheet, Text, View } from 'react-native';
3
+
4
+ interface PeriodProps {
5
+ value: string;
6
+ setValue?: (value: any) => void;
7
+ }
8
+
9
+ const PeriodWeb: React.FC<PeriodProps> = ({ value, setValue = () => {} }) => {
10
+ return (
11
+ <Pressable onPress={() => setValue(value == 'AM' ? 'PM' : 'AM')}>
12
+ <View style={[defaultStyles.period]}>
13
+ <Text>{value}</Text>
14
+ </View>
15
+ </Pressable>
16
+ );
17
+ };
18
+
19
+ const defaultStyles = StyleSheet.create({
20
+ period: {
21
+ width: 65,
22
+ height: 44,
23
+ alignItems: 'center',
24
+ justifyContent: 'center',
25
+ },
26
+ });
27
+
28
+ const customComparator = (
29
+ prev: Readonly<PeriodProps>,
30
+ next: Readonly<PeriodProps>
31
+ ) => {
32
+ const areEqual = prev.value === next.value && prev.setValue === next.setValue;
33
+
34
+ return areEqual;
35
+ };
36
+
37
+ export default memo(PeriodWeb, customComparator);
@@ -1,4 +1,4 @@
1
- import { useCallback } from 'react';
1
+ import React, { useCallback } from 'react';
2
2
  import {
3
3
  Text,
4
4
  View,
@@ -7,10 +7,10 @@ import {
7
7
  TextStyle,
8
8
  ViewStyle,
9
9
  } from 'react-native';
10
- import { useCalendarContext } from '../CalendarContext';
11
- import { getDateYear, getYearRange } from '../utils';
10
+ import { useCalendarContext } from 'src/CalendarContext';
11
+ import { getDateYear, getYearRange } from 'src/utils';
12
12
 
13
- const YearSelector = () => {
13
+ const YearSelector: React.FC = () => {
14
14
  const { currentDate, currentYear, onSelectYear, theme } =
15
15
  useCalendarContext();
16
16
  const selectedYear = getDateYear(currentDate);
package/src/enums.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  /*
2
2
  * @Author: limit
3
3
  * @Date: 2024-07-17 05:09:59
4
- * @LastEditTime: 2024-07-25 15:56:28
4
+ * @LastEditTime: 2025-08-07 16:31:49
5
5
  * @LastEditors: limit
6
- * @FilePath: /JYB-APP/src/components/DatePicker/enums.ts
6
+ * @FilePath: /react-native-date-picker/src/enums.ts
7
7
  * @Description: 由limit创建!
8
8
  */
9
9
  export type CalendarViews = 'day' | 'month' | 'year' | 'time';
@@ -17,4 +17,5 @@ export enum CalendarActionKind {
17
17
  CHANGE_SELECTED_MULTIPLE = 'CHANGE_SELECTED_MULTIPLE',
18
18
  }
19
19
 
20
- export const CALENDAR_HEIGHT = 300;
20
+ export const CONTAINER_HEIGHT = 300;
21
+ export const WEEKDAYS_HEIGHT = 25;
package/src/types.ts CHANGED
@@ -47,8 +47,7 @@ export type CalendarThemeProps = {
47
47
  wheelPickerContainerStyle?: ViewStyle;
48
48
  wheelPickerItemStyle?: ViewStyle;
49
49
  wheelPickerTextStyle?: TextStyle;
50
- wheelPickerIndicatorStyle?: ViewStyle;
51
- wheelPickerDecelerationRate?: 'normal' | 'fast' | number;
50
+ wheelPickerSelectedIndicatorStyle?: ViewStyle;
52
51
  selectedRangeBackgroundColor?: string;
53
52
  };
54
53
 
@@ -109,3 +108,8 @@ export interface DatePickerBaseProps {
109
108
  initialView?: CalendarViews;
110
109
  height?: number;
111
110
  }
111
+
112
+ export type PickerOption = {
113
+ value: number | string;
114
+ text: string;
115
+ };
package/src/utils.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import dayjs from 'dayjs';
2
- import type { DateType, IDayObject } from './types';
2
+ import type { DateType, IDayObject, PickerOption } from './types';
3
3
 
4
4
  export const CALENDAR_FORMAT = 'YYYY-MM-DD HH:mm:ss';
5
5
  export const DATE_FORMAT = 'YYYY-MM-DD';
@@ -105,7 +105,7 @@ export function getDaysNumInMonth(
105
105
  month: number,
106
106
  minDate: DateType,
107
107
  maxDate: DateType
108
- ): string[] {
108
+ ): Array<PickerOption> {
109
109
  const formattedMonth = String(month).padStart(2, '0');
110
110
  const date = dayjs(`${year}-${formattedMonth}-01`);
111
111
  const daysInMonth = date.daysInMonth();
@@ -121,7 +121,7 @@ export function getDaysNumInMonth(
121
121
  (currentDate.isAfter(minDay) || currentDate.isSame(minDay, 'day')) &&
122
122
  (currentDate.isBefore(maxDay) || currentDate.isSame(maxDay, 'day'))
123
123
  )
124
- daysArray.push(String(day).padStart(2, '0'));
124
+ daysArray.push({ value: day, text: String(day).padStart(2, '0') });
125
125
  }
126
126
  return daysArray;
127
127
  }
File without changes