@lazerlen/legend-calendar 1.0.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 (48) hide show
  1. package/.eslintrc.js +29 -0
  2. package/.turbo/turbo-build.log +19 -0
  3. package/.turbo/turbo-lint.log +14 -0
  4. package/.turbo/turbo-test.log +261 -0
  5. package/.turbo/turbo-typecheck.log +1 -0
  6. package/CHANGELOG.md +127 -0
  7. package/dist/index.d.mts +679 -0
  8. package/dist/index.d.ts +679 -0
  9. package/dist/index.js +2 -0
  10. package/dist/index.js.map +1 -0
  11. package/dist/index.mjs +2 -0
  12. package/dist/index.mjs.map +1 -0
  13. package/package.json +47 -0
  14. package/src/components/Calendar.stories.tsx +226 -0
  15. package/src/components/Calendar.tsx +224 -0
  16. package/src/components/CalendarItemDay.tsx +385 -0
  17. package/src/components/CalendarItemEmpty.tsx +30 -0
  18. package/src/components/CalendarItemWeekName.tsx +67 -0
  19. package/src/components/CalendarList.stories.tsx +326 -0
  20. package/src/components/CalendarList.tsx +373 -0
  21. package/src/components/CalendarRowMonth.tsx +62 -0
  22. package/src/components/CalendarRowWeek.tsx +46 -0
  23. package/src/components/CalendarThemeProvider.tsx +43 -0
  24. package/src/components/HStack.tsx +67 -0
  25. package/src/components/VStack.tsx +67 -0
  26. package/src/components/index.ts +108 -0
  27. package/src/developer/decorators.tsx +54 -0
  28. package/src/developer/loggginHandler.tsx +6 -0
  29. package/src/developer/useRenderCount.ts +7 -0
  30. package/src/helpers/dates.test.ts +567 -0
  31. package/src/helpers/dates.ts +163 -0
  32. package/src/helpers/functions.ts +327 -0
  33. package/src/helpers/numbers.ts +11 -0
  34. package/src/helpers/strings.ts +2 -0
  35. package/src/helpers/tokens.ts +71 -0
  36. package/src/helpers/types.ts +3 -0
  37. package/src/hooks/useCalendar.test.ts +381 -0
  38. package/src/hooks/useCalendar.ts +351 -0
  39. package/src/hooks/useCalendarList.test.ts +382 -0
  40. package/src/hooks/useCalendarList.tsx +291 -0
  41. package/src/hooks/useDateRange.test.ts +128 -0
  42. package/src/hooks/useDateRange.ts +94 -0
  43. package/src/hooks/useOptimizedDayMetadata.test.ts +582 -0
  44. package/src/hooks/useOptimizedDayMetadata.ts +93 -0
  45. package/src/hooks/useTheme.ts +14 -0
  46. package/src/index.ts +24 -0
  47. package/tsconfig.json +13 -0
  48. package/tsup.config.ts +15 -0
package/.eslintrc.js ADDED
@@ -0,0 +1,29 @@
1
+ /** @type {import('eslint').Linter.Config} */
2
+ module.exports = {
3
+ root: true,
4
+ extends: ["@lazerlen/eslint-config"],
5
+ rules: {
6
+ "no-restricted-imports": [
7
+ "error",
8
+ {
9
+ patterns: [
10
+ {
11
+ group: ["date-fns"],
12
+ message:
13
+ "Please use the custom date functions from @/helpers/dates instead. This decreases the bundle size significantly.",
14
+ },
15
+ ],
16
+ },
17
+ ],
18
+ },
19
+
20
+ // Allow date-fns imports in test files since we use them to test our custom date functions
21
+ overrides: [
22
+ {
23
+ files: ["**/*.test.ts", "**/*.test.tsx", "**/*.stories.tsx"],
24
+ rules: {
25
+ "no-restricted-imports": ["error", { patterns: [] }],
26
+ },
27
+ },
28
+ ],
29
+ };
@@ -0,0 +1,19 @@
1
+ $ tsup --dts
2
+ CLI Building entry: src/index.ts
3
+ CLI Using tsconfig: tsconfig.json
4
+ CLI tsup v8.0.2
5
+ CLI Using tsup config: /Users/leviwilliams/projects/legend-calendar/packages/legend-calendar/tsup.config.ts
6
+ CLI Target: es2015
7
+ CLI Cleaning output folder
8
+ CJS Build start
9
+ ESM Build start
10
+ CJS dist/index.js 22.00 KB
11
+ CJS dist/index.js.map 117.93 KB
12
+ CJS ⚡️ Build success in 23ms
13
+ ESM dist/index.mjs 21.27 KB
14
+ ESM dist/index.mjs.map 118.18 KB
15
+ ESM ⚡️ Build success in 24ms
16
+ DTS Build start
17
+ DTS ⚡️ Build success in 1385ms
18
+ DTS dist/index.d.ts 23.93 KB
19
+ DTS dist/index.d.mts 23.93 KB
@@ -0,0 +1,14 @@
1
+ $ eslint src
2
+ =============
3
+
4
+ WARNING: You are currently running a version of TypeScript which is not officially supported by @typescript-eslint/typescript-estree.
5
+
6
+ You may find that it works just fine, or you may not.
7
+
8
+ SUPPORTED TYPESCRIPT VERSIONS: >=3.3.1 <5.2.0
9
+
10
+ YOUR TYPESCRIPT VERSION: 5.9.3
11
+
12
+ Please only submit bug reports when using the officially supported version.
13
+
14
+ =============
@@ -0,0 +1,261 @@
1
+ $ bun test
2
+ bun test v1.2.20 (6ad208bc)
3
+ 
4
+ src/hooks/useDateRange.test.ts:
5
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
6
+ The current testing environment is not configured to support act(...)
7
+ ✓ useDateRange > should initialize with correct default values [8.97ms]
8
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
9
+ The current testing environment is not configured to support act(...)
10
+ The current testing environment is not configured to support act(...)
11
+ The current testing environment is not configured to support act(...)
12
+ The current testing environment is not configured to support act(...)
13
+ The current testing environment is not configured to support act(...)
14
+ ✓ useDateRange > should update dateRange correctly on onCalendarDayPress [1.87ms]
15
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
16
+ The current testing environment is not configured to support act(...)
17
+ The current testing environment is not configured to support act(...)
18
+ The current testing environment is not configured to support act(...)
19
+ The current testing environment is not configured to support act(...)
20
+ ✓ useDateRange > should clear dateRange on onClearDateRange [1.57ms]
21
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
22
+ The current testing environment is not configured to support act(...)
23
+ The current testing environment is not configured to support act(...)
24
+ The current testing environment is not configured to support act(...)
25
+ The current testing environment is not configured to support act(...)
26
+ ✓ useDateRange > should update isDateRangeValid correctly [0.59ms]
27
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
28
+ The current testing environment is not configured to support act(...)
29
+ ✓ useDateRange > can initialize a date range [0.57ms]
30
+ 
31
+ src/hooks/useCalendarList.test.ts:
32
+ ✓ getHeightForMonth > Measures months with 5 weeks (no calendar spacing)
33
+ ✓ getHeightForMonth > Measures months with 5 weeks (with calendar spacing)
34
+ ✓ getHeightForMonth > Accounts for additional height
35
+ ✓ getHeightForMonth > Measures months with 6 weeks [0.03ms]
36
+ ✓ getHeightForMonth > February 24 has the right height with base options [0.43ms]
37
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
38
+ The current testing environment is not configured to support act(...)
39
+ The current testing environment is not configured to support act(...)
40
+ The current testing environment is not configured to support act(...)
41
+ ✓ useCalendarList > Min/Max dates > Max: virtualization still works as expected [1.23ms]
42
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
43
+ The current testing environment is not configured to support act(...)
44
+ The current testing environment is not configured to support act(...)
45
+ The current testing environment is not configured to support act(...)
46
+ The current testing environment is not configured to support act(...)
47
+ ✓ useCalendarList > Min/Max dates > Min: virtualization still works as expected [0.98ms]
48
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
49
+ The current testing environment is not configured to support act(...)
50
+ ✓ useCalendarList > Min/Max dates > Returns a single month when min and max are in the same month [0.35ms]
51
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
52
+ The current testing environment is not configured to support act(...)
53
+ ✓ useCalendarList > Min/Max dates > Returns a range of months bounded by the min and max dates [0.33ms]
54
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
55
+ The current testing environment is not configured to support act(...)
56
+ ✓ useCalendarList > Min/Max dates > Ignores past/future scroll ranges when min/max dates are used [0.21ms]
57
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
58
+ The current testing environment is not configured to support act(...)
59
+ The current testing environment is not configured to support act(...)
60
+ ✓ useCalendarList > Min/Max dates > Append/Prepend are no-op if min/max are reached [0.57ms]
61
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
62
+ The current testing environment is not configured to support act(...)
63
+ ✓ useCalendarList > github issues > #16: Incorrect scroll position when setting calendarMinDateId [0.17ms]
64
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
65
+ The current testing environment is not configured to support act(...)
66
+ ✓ useCalendarList > Data is correctly built when future/past ranges are 0 [0.26ms]
67
+ 
68
+ src/hooks/useCalendar.test.ts:
69
+ ✓ buildCalendar > isLastDayOfWeek > isLastDayOfWeek respects "sunday" as last day of week [9.71ms]
70
+ ✓ buildCalendar > isLastDayOfWeek > isLastDayOfWeek respects "monday" as last day of week [1.23ms]
71
+ ✓ buildCalendar > isWeekend > starting on sunday [1.58ms]
72
+ ✓ buildCalendar > isWeekend > starting on monday [1.21ms]
73
+ ✓ buildCalendar > state > active: supersedes today [1.16ms]
74
+ ✓ buildCalendar > state > active: supersedes disabled (with calendarDisabledDateIds) [1.54ms]
75
+ ✓ buildCalendar > state > active: supersedes disabled (with min) [1.22ms]
76
+ ✓ buildCalendar > state > active: supersedes disabled (with max) [1.14ms]
77
+ ✓ buildCalendar > state > active: supersedes idle [1.13ms]
78
+ ✓ buildCalendar > state > disabled: supersedes idle [1.23ms]
79
+ ✓ buildCalendar > state > today: supersedes idle [1.38ms]
80
+ ✓ buildCalendar > state > idle: serves as the base state [2.10ms]
81
+ ✓ buildCalendar > builds the month row [1.43ms]
82
+ ✓ buildCalendar > build the month row with custom formatting [3.49ms]
83
+ ✓ buildCalendar > builds the week days row starting on sunday [1.65ms]
84
+ ✓ buildCalendar > builds the week days row starting on monday [1.56ms]
85
+ ✓ buildCalendar > builds the weeks row [2.08ms]
86
+ ✓ buildCalendar > build the weeks row with custom formatting [0.66ms]
87
+ ✓ buildCalendar > handles the expected range [2.31ms]
88
+ ✓ buildCalendar > calendarMinDate [2.04ms]
89
+ ✓ buildCalendar > calendarMaxDate [1.88ms]
90
+ 
91
+ src/hooks/useOptimizedDayMetadata.test.ts:
92
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
93
+ The current testing environment is not configured to support act(...)
94
+ ✓ useOptimizedDayMetadata > return the base metadata as the initial value [1.18ms]
95
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
96
+ The current testing environment is not configured to support act(...)
97
+ The current testing environment is not configured to support act(...)
98
+ The current testing environment is not configured to support act(...)
99
+ ✓ useOptimizedDayMetadata > if the base changes, the returned value should match it. [0.62ms]
100
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
101
+ The current testing environment is not configured to support act(...)
102
+ The current testing environment is not configured to support act(...)
103
+ The current testing environment is not configured to support act(...)
104
+ The current testing environment is not configured to support act(...)
105
+ ✓ useOptimizedDayMetadata > endOfRange: returns the updated metadata once an event is emitted [0.69ms]
106
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
107
+ The current testing environment is not configured to support act(...)
108
+ The current testing environment is not configured to support act(...)
109
+ The current testing environment is not configured to support act(...)
110
+ The current testing environment is not configured to support act(...)
111
+ The current testing environment is not configured to support act(...)
112
+ ✓ useOptimizedDayMetadata > startOfRange: returns the updated metadata once an event is emitted [0.24ms]
113
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
114
+ The current testing environment is not configured to support act(...)
115
+ The current testing environment is not configured to support act(...)
116
+ The current testing environment is not configured to support act(...)
117
+ The current testing environment is not configured to support act(...)
118
+ The current testing environment is not configured to support act(...)
119
+ The current testing environment is not configured to support act(...)
120
+ ✓ useOptimizedDayMetadata > startOfRange|endOfRange: returns the updated metadata once an event is emitted [0.19ms]
121
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
122
+ The current testing environment is not configured to support act(...)
123
+ The current testing environment is not configured to support act(...)
124
+ The current testing environment is not configured to support act(...)
125
+ The current testing environment is not configured to support act(...)
126
+ The current testing environment is not configured to support act(...)
127
+ The current testing environment is not configured to support act(...)
128
+ The current testing environment is not configured to support act(...)
129
+ The current testing environment is not configured to support act(...)
130
+ The current testing environment is not configured to support act(...)
131
+ The current testing environment is not configured to support act(...)
132
+ The current testing environment is not configured to support act(...)
133
+ The current testing environment is not configured to support act(...)
134
+ The current testing environment is not configured to support act(...)
135
+ The current testing environment is not configured to support act(...)
136
+ The current testing environment is not configured to support act(...)
137
+ The current testing environment is not configured to support act(...)
138
+ The current testing environment is not configured to support act(...)
139
+ The current testing environment is not configured to support act(...)
140
+ The current testing environment is not configured to support act(...)
141
+ The current testing environment is not configured to support act(...)
142
+ The current testing environment is not configured to support act(...)
143
+ The current testing environment is not configured to support act(...)
144
+ ✓ useOptimizedDayMetadata > doesn't re-render if the active dates don't overlap [1.18ms]
145
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
146
+ The current testing environment is not configured to support act(...)
147
+ The current testing environment is not configured to support act(...)
148
+ The current testing environment is not configured to support act(...)
149
+ The current testing environment is not configured to support act(...)
150
+ The current testing environment is not configured to support act(...)
151
+ The current testing environment is not configured to support act(...)
152
+ The current testing environment is not configured to support act(...)
153
+ The current testing environment is not configured to support act(...)
154
+ The current testing environment is not configured to support act(...)
155
+ The current testing environment is not configured to support act(...)
156
+ The current testing environment is not configured to support act(...)
157
+ The current testing environment is not configured to support act(...)
158
+ The current testing environment is not configured to support act(...)
159
+ The current testing environment is not configured to support act(...)
160
+ The current testing environment is not configured to support act(...)
161
+ ✓ useOptimizedDayMetadata > resets the state once a new range is selected [1.22ms]
162
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
163
+ The current testing environment is not configured to support act(...)
164
+ The current testing environment is not configured to support act(...)
165
+ The current testing environment is not configured to support act(...)
166
+ The current testing environment is not configured to support act(...)
167
+ The current testing environment is not configured to support act(...)
168
+ The current testing environment is not configured to support act(...)
169
+ The current testing environment is not configured to support act(...)
170
+ The current testing environment is not configured to support act(...)
171
+ ✓ useOptimizedDayMetadata with calendarInstanceId > uses the default instance ID when not provided [0.48ms]
172
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
173
+ The current testing environment is not configured to support act(...)
174
+ The current testing environment is not configured to support act(...)
175
+ ✓ useOptimizedDayMetadata with calendarInstanceId > responds to events for the correct instance ID [0.42ms]
176
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
177
+ The current testing environment is not configured to support act(...)
178
+ ✓ useOptimizedDayMetadata with calendarInstanceId > ignores events for different instance IDs [0.35ms]
179
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
180
+ The current testing environment is not configured to support act(...)
181
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
182
+ The current testing environment is not configured to support act(...)
183
+ The current testing environment is not configured to support act(...)
184
+ The current testing environment is not configured to support act(...)
185
+ ✓ useOptimizedDayMetadata with calendarInstanceId > handles multiple instances correctly [0.41ms]
186
+ react-test-renderer is deprecated. See https://react.dev/warnings/react-test-renderer
187
+ The current testing environment is not configured to support act(...)
188
+ The current testing environment is not configured to support act(...)
189
+ The current testing environment is not configured to support act(...)
190
+ ✓ useOptimizedDayMetadata with calendarInstanceId > resets state for the correct instance when a new range is selected [0.17ms]
191
+ 
192
+ src/helpers/dates.test.ts:
193
+ ✓ toDateId: UTC time zone > January 1st, 2024 [0.09ms]
194
+ ✓ toDateId: UTC time zone > January 31th, 2024 [0.01ms]
195
+ ✓ toDateId: UTC time zone > February 1st, 2024 [0.01ms]
196
+ ✓ toDateId: UTC time zone > February 10th, 2024 [0.01ms]
197
+ ✓ toDateId: UTC time zone > convert between ID -> Date -> ID returns the original result
198
+ ✓ toDateId: Brasilia time zone  > January 1st, 2024 [0.01ms]
199
+ ✓ toDateId: Brasilia time zone  > January 31th, 2024 [0.02ms]
200
+ ✓ toDateId: Brasilia time zone  > February 1st, 2024 [0.02ms]
201
+ ✓ toDateId: Brasilia time zone  > February 10th, 2024
202
+ ✓ toDateId: Brasilia time zone  > February 29th, 2024 [0.01ms]
203
+ ✓ toDateId: Brasilia time zone  > convert between ID -> Date -> ID returns the original result [0.01ms]
204
+ ✓ fromDateId: UTC time zone > parse Jan 1st [0.02ms]
205
+ ✓ fromDateId: UTC time zone > parses March 1st
206
+ ✓ fromDateId: Brasilia time zone > parse Jan 1st [0.01ms]
207
+ ✓ fromDateId: Brasilia time zone > parses March 1st [0.01ms]
208
+ ✓ startOfMonth > January [0.01ms]
209
+ ✓ startOfMonth > February [0.01ms]
210
+ ✓ startOfMonth > matches date-fns [1.52ms]
211
+ ✓ endOfMonth > January [0.05ms]
212
+ ✓ endOfMonth > February
213
+ ✓ endOfMonth > matches date-fns [1.34ms]
214
+ ✓ startOfWeek > sunday: week of February 17th [0.05ms]
215
+ ✓ startOfWeek > sunday: week of February 11th
216
+ ✓ startOfWeek > monday: week of February 17th [0.01ms]
217
+ ✓ startOfWeek > monday: week of February 11th [0.01ms]
218
+ ✓ startOfWeek > matches date-fns [1.27ms]
219
+ ✓ addMonths > add 1 month [0.11ms]
220
+ ✓ addMonths > add 10 months
221
+ ✓ addMonths > matches date-fns [0.18ms]
222
+ ✓ subMonths > sub 1 month [0.02ms]
223
+ ✓ subMonths > sub 10 months [0.01ms]
224
+ ✓ subMonths > matches date-fns [0.23ms]
225
+ ✓ addDays > add 1 day [0.02ms]
226
+ ✓ addDays > add 10 days
227
+ ✓ addDays > matches date-fns [0.11ms]
228
+ ✓ subDays > sub 1 day [0.10ms]
229
+ ✓ subDays > sub 10 days [0.02ms]
230
+ ✓ subDays > matches date-fns [0.15ms]
231
+ ✓ isWeekend > Friday [0.03ms]
232
+ ✓ isWeekend > Saturday [0.02ms]
233
+ ✓ isWeekend > Sunday [0.02ms]
234
+ ✓ isWeekend > Monday [0.03ms]
235
+ ✓ differenceInMonths  > edge cases > it returns diff of 1 month between Feb 28 2021 and Jan 30 2021 [0.02ms]
236
+ ✓ differenceInMonths  > edge cases > it returns diff of 1 month between Feb 28 2021 and Jan 31 2021
237
+ ✓ differenceInMonths  > edge cases > it returns diff of 1 month between Nov, 30 2021 and Oct, 31 2021
238
+ ✓ differenceInMonths  > edge cases > it returns diff of 1 month between Oct, 31 2021 and Sep, 30 2021
239
+ ✓ differenceInMonths  > edge cases > it returns diff of 6 month between Oct, 31 2021 and Apr, 30 2021 [0.01ms]
240
+ ✓ differenceInMonths  > edge cases > it returns diff of -1 month between Sep, 30 2021 and Oct, 31 2021
241
+ ✓ differenceInMonths  > edge cases > the days of months of the given dates are the same [0.02ms]
242
+ ✓ differenceInMonths  > edge cases > the given dates are the same [0.05ms]
243
+ ✓ differenceInMonths  > edge cases > does not return -0 when the given dates are the same [0.02ms]
244
+ ✓ differenceInMonths  > edge cases > returns the number of full months between the given dates - end of Feb [0.05ms]
245
+ ✓ differenceInMonths  > returns the number of full months between the given dates [0.02ms]
246
+ ✓ differenceInMonths  > returns a negative number if the time value of the first date is smaller
247
+ ✓ differenceInMonths  > returns NaN if the first date is `Invalid Date` [0.19ms]
248
+ ✓ differenceInMonths  > returns NaN if the second date is `Invalid Date` [0.03ms]
249
+ ✓ differenceInMonths  > returns NaN if the both dates are `Invalid Date`
250
+ ✓ getWeeksInMonth > sunday: Month with 5 weeks [0.03ms]
251
+ ✓ getWeeksInMonth > sunday: Month with 6 weeks [0.01ms]
252
+ ✓ getWeeksInMonth > monday: Month with 5 weeks [0.03ms]
253
+ ✓ getWeeksInMonth > matches date-fns [2.64ms]
254
+ ✓ getWeekOfMonth > sunday: June [0.11ms]
255
+ ✓ getWeekOfMonth > monday: June
256
+ ✓ getWeekOfMonth > matches date-fns [1.36ms]
257
+
258
+  115 pass
259
+  0 fail
260
+ 8695 expect() calls
261
+ Ran 115 tests across 5 files. [212.00ms]
@@ -0,0 +1 @@
1
+ $ tsc --noEmit
package/CHANGELOG.md ADDED
@@ -0,0 +1,127 @@
1
+ # @marceloterreiro/flash-calendar
2
+
3
+ ## 1.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - 7eb13ae: Remove CalendarScrollComponent prop from Calendar.List
8
+
9
+ The `CalendarScrollComponent` prop has been removed from `Calendar.List`. LegendList is now the only supported list implementation and cannot be replaced.
10
+
11
+ **Migration:**
12
+
13
+ If you were using `CalendarScrollComponent` to integrate with bottom sheets or other custom scroll containers:
14
+
15
+ 1. Wrap `Calendar.List` in your custom scroll container, or
16
+ 2. Use the standalone `Calendar` component with your own list implementation
17
+
18
+ This change simplifies the API and reduces maintenance burden by focusing on a single, well-supported list implementation.
19
+
20
+ ## 1.6.0
21
+
22
+ ### Minor Changes
23
+
24
+ - 256b67d: Add callback support to `activeDayFiller` for dynamic styling based on day metadata
25
+
26
+ ## 1.5.0
27
+
28
+ ### Minor Changes
29
+
30
+ - 3b65183: Fixes an infinite loop triggered when calendarMaxDateId is today and calendarFutureScrollRangeInMonths is one.
31
+
32
+ ## 1.4.0
33
+
34
+ ### Minor Changes
35
+
36
+ - f291f09: Add support for passing custom pressable components
37
+
38
+ ## 1.3.0
39
+
40
+ ### Minor Changes
41
+
42
+ - b66668c: Added support for react-native-web Pressable InteractionState to support hovered and focused alongside pressed
43
+
44
+ ## 1.2.0
45
+
46
+ ### Minor Changes
47
+
48
+ - f3b9ec8: Add the ability to pass TextProps to the <Text> fields especially when supporting accessibility
49
+
50
+ ## 1.1.0
51
+
52
+ ### Minor Changes
53
+
54
+ - 863edce: Add the ability to mount more than one calendar at once
55
+
56
+ ## 1.0.0
57
+
58
+ ### Major Changes
59
+
60
+ - 9bf22ed: Flash Calendar 1.0.0 🚢 🎉
61
+
62
+ This release officially marks the package as production-ready (`1.0.0`).
63
+ While it's been stable since the first release, bumping to `1.0.0` was something
64
+ I had in mind for a while.
65
+
66
+ - New: Add `.scrollToMonth` and `.scrollToDate`, increasing the options available for imperative scrolling.
67
+
68
+ ## Breaking changes
69
+
70
+ This release introduces one small change in behavior if your app uses
71
+ imperative scrolling. Previously, `.scrollToDate` would scroll to the month
72
+ containing the date instead of the exact date. Now, `.scrollToDate` scrolls
73
+ to the exact date as implied by the name.
74
+
75
+ If you intentionally want to scroll to the month instead, a new `.scrollToMonth`
76
+ method is available (same signature).
77
+
78
+ I don't expect this to cause any issues, but worth mentioned
79
+ nonetheless.
80
+
81
+ ## 0.0.9
82
+
83
+ ### Patch Changes
84
+
85
+ - 6d00992: - Add an optional `calendarColorScheme` prop that enables overriding the color scheme used by Flash Calendar.
86
+
87
+ ## 0.0.8
88
+
89
+ ### Patch Changes
90
+
91
+ - 4fe1276: Remove `borderRadius` type from `itemDay.container`, given it gets overwritten by the base component.
92
+
93
+ ## 0.0.7
94
+
95
+ ### Patch Changes
96
+
97
+ - ee6b4e5: Fix incorrect scroll position when using the `calendarMinDateId` prop
98
+
99
+ ## 0.0.6
100
+
101
+ ### Patch Changes
102
+
103
+ - 5363835: Fix `<Calendar.List />` losing track of the active date ranges when the list is scrolled past certain amount
104
+
105
+ ## 0.0.5
106
+
107
+ ### Patch Changes
108
+
109
+ - cbc7728: Update the registry to Github Packages
110
+
111
+ ## 0.0.4
112
+
113
+ ### Patch Changes
114
+
115
+ - 801bc18: Fix locale not being forwarded to `Calendar` component
116
+
117
+ ## 0.0.3
118
+
119
+ ### Patch Changes
120
+
121
+ - e680a96: Add the `calendarFormatLocale` prop
122
+
123
+ ## 0.0.2
124
+
125
+ ### Patch Changes
126
+
127
+ - First release to test the publish scripts