react-native-timer-picker 2.6.0 → 2.6.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 (181) hide show
  1. package/dist/commonjs/components/DurationScroll/DurationScroll.js +426 -0
  2. package/dist/commonjs/components/DurationScroll/DurationScroll.js.map +1 -0
  3. package/dist/commonjs/components/DurationScroll/index.js +27 -0
  4. package/dist/commonjs/components/DurationScroll/index.js.map +1 -0
  5. package/dist/commonjs/components/DurationScroll/types.js +6 -0
  6. package/dist/commonjs/components/DurationScroll/types.js.map +1 -0
  7. package/dist/commonjs/components/Modal/Modal.js +107 -0
  8. package/dist/commonjs/components/Modal/Modal.js.map +1 -0
  9. package/dist/commonjs/components/Modal/index.js +27 -0
  10. package/dist/commonjs/components/Modal/index.js.map +1 -0
  11. package/dist/commonjs/components/Modal/styles.js +25 -0
  12. package/dist/commonjs/components/Modal/styles.js.map +1 -0
  13. package/dist/commonjs/components/Modal/types.js +6 -0
  14. package/dist/commonjs/components/Modal/types.js.map +1 -0
  15. package/dist/commonjs/components/PickerItem/PickerItem.js +48 -0
  16. package/dist/commonjs/components/PickerItem/PickerItem.js.map +1 -0
  17. package/dist/commonjs/components/PickerItem/index.js +14 -0
  18. package/dist/commonjs/components/PickerItem/index.js.map +1 -0
  19. package/dist/commonjs/components/TimerPicker/TimerPicker.js +266 -0
  20. package/dist/commonjs/components/TimerPicker/TimerPicker.js.map +1 -0
  21. package/dist/commonjs/components/TimerPicker/index.js +39 -0
  22. package/dist/commonjs/components/TimerPicker/index.js.map +1 -0
  23. package/dist/commonjs/components/TimerPicker/styles.js +140 -0
  24. package/dist/commonjs/components/TimerPicker/styles.js.map +1 -0
  25. package/dist/commonjs/components/TimerPicker/types.js +6 -0
  26. package/dist/commonjs/components/TimerPicker/types.js.map +1 -0
  27. package/dist/commonjs/components/TimerPickerModal/TimerPickerModal.js +173 -0
  28. package/dist/commonjs/components/TimerPickerModal/TimerPickerModal.js.map +1 -0
  29. package/dist/commonjs/components/TimerPickerModal/index.js +39 -0
  30. package/dist/commonjs/components/TimerPickerModal/index.js.map +1 -0
  31. package/dist/commonjs/components/TimerPickerModal/styles.js +95 -0
  32. package/dist/commonjs/components/TimerPickerModal/styles.js.map +1 -0
  33. package/dist/commonjs/components/TimerPickerModal/types.js +6 -0
  34. package/dist/commonjs/components/TimerPickerModal/types.js.map +1 -0
  35. package/dist/commonjs/index.js +21 -0
  36. package/dist/commonjs/index.js.map +1 -0
  37. package/dist/commonjs/tests/DurationScroll.test.js +163 -0
  38. package/dist/commonjs/tests/DurationScroll.test.js.map +1 -0
  39. package/dist/commonjs/tests/Modal.test.js +99 -0
  40. package/dist/commonjs/tests/Modal.test.js.map +1 -0
  41. package/dist/commonjs/tests/TimerPicker.test.js +161 -0
  42. package/dist/commonjs/tests/TimerPicker.test.js.map +1 -0
  43. package/dist/commonjs/tests/TimerPickerModal.test.js +276 -0
  44. package/dist/commonjs/tests/TimerPickerModal.test.js.map +1 -0
  45. package/dist/commonjs/tests/colorToRgba.test.js +176 -0
  46. package/dist/commonjs/tests/colorToRgba.test.js.map +1 -0
  47. package/dist/commonjs/tests/generateNumbers.test.js +350 -0
  48. package/dist/commonjs/tests/generateNumbers.test.js.map +1 -0
  49. package/dist/commonjs/tests/getAdjustedLimit.test.js +324 -0
  50. package/dist/commonjs/tests/getAdjustedLimit.test.js.map +1 -0
  51. package/dist/commonjs/tests/getDurationAndIndexFromScrollOffset.test.js +424 -0
  52. package/dist/commonjs/tests/getDurationAndIndexFromScrollOffset.test.js.map +1 -0
  53. package/dist/commonjs/tests/getInitialScrollIndex.test.js +396 -0
  54. package/dist/commonjs/tests/getInitialScrollIndex.test.js.map +1 -0
  55. package/dist/commonjs/tests/getSafeInitialValue.test.js +499 -0
  56. package/dist/commonjs/tests/getSafeInitialValue.test.js.map +1 -0
  57. package/dist/commonjs/tests/padNumber.test.js +301 -0
  58. package/dist/commonjs/tests/padNumber.test.js.map +1 -0
  59. package/dist/commonjs/utils/colorToRgba.js +87 -0
  60. package/dist/commonjs/utils/colorToRgba.js.map +1 -0
  61. package/dist/commonjs/utils/generateNumbers.js +124 -0
  62. package/dist/commonjs/utils/generateNumbers.js.map +1 -0
  63. package/dist/commonjs/utils/getAdjustedLimit.js +58 -0
  64. package/dist/commonjs/utils/getAdjustedLimit.js.map +1 -0
  65. package/dist/commonjs/utils/getDurationAndIndexFromScrollOffset.js +62 -0
  66. package/dist/commonjs/utils/getDurationAndIndexFromScrollOffset.js.map +1 -0
  67. package/dist/commonjs/utils/getInitialScrollIndex.js +57 -0
  68. package/dist/commonjs/utils/getInitialScrollIndex.js.map +1 -0
  69. package/dist/commonjs/utils/getSafeInitialValue.js +41 -0
  70. package/dist/commonjs/utils/getSafeInitialValue.js.map +1 -0
  71. package/dist/commonjs/utils/padNumber.js +40 -0
  72. package/dist/commonjs/utils/padNumber.js.map +1 -0
  73. package/dist/module/components/DurationScroll/DurationScroll.js +418 -0
  74. package/dist/module/components/DurationScroll/DurationScroll.js.map +1 -0
  75. package/dist/module/components/DurationScroll/index.js +3 -0
  76. package/dist/module/components/DurationScroll/index.js.map +1 -0
  77. package/dist/module/components/DurationScroll/types.js +2 -0
  78. package/dist/module/components/DurationScroll/types.js.map +1 -0
  79. package/dist/module/components/Modal/Modal.js +99 -0
  80. package/dist/module/components/Modal/Modal.js.map +1 -0
  81. package/dist/module/components/Modal/index.js +3 -0
  82. package/dist/module/components/Modal/index.js.map +1 -0
  83. package/dist/module/components/Modal/styles.js +19 -0
  84. package/dist/module/components/Modal/styles.js.map +1 -0
  85. package/dist/module/components/Modal/types.js +2 -0
  86. package/dist/module/components/Modal/types.js.map +1 -0
  87. package/dist/module/components/PickerItem/PickerItem.js +41 -0
  88. package/dist/module/components/PickerItem/PickerItem.js.map +1 -0
  89. package/dist/module/components/PickerItem/index.js +2 -0
  90. package/dist/module/components/PickerItem/index.js.map +1 -0
  91. package/dist/module/components/TimerPicker/TimerPicker.js +258 -0
  92. package/dist/module/components/TimerPicker/TimerPicker.js.map +1 -0
  93. package/dist/module/components/TimerPicker/index.js +4 -0
  94. package/dist/module/components/TimerPicker/index.js.map +1 -0
  95. package/dist/module/components/TimerPicker/styles.js +133 -0
  96. package/dist/module/components/TimerPicker/styles.js.map +1 -0
  97. package/dist/module/components/TimerPicker/types.js +2 -0
  98. package/dist/module/components/TimerPicker/types.js.map +1 -0
  99. package/dist/module/components/TimerPickerModal/TimerPickerModal.js +165 -0
  100. package/dist/module/components/TimerPickerModal/TimerPickerModal.js.map +1 -0
  101. package/dist/module/components/TimerPickerModal/index.js +4 -0
  102. package/dist/module/components/TimerPickerModal/index.js.map +1 -0
  103. package/dist/module/components/TimerPickerModal/styles.js +88 -0
  104. package/dist/module/components/TimerPickerModal/styles.js.map +1 -0
  105. package/dist/module/components/TimerPickerModal/types.js +2 -0
  106. package/dist/module/components/TimerPickerModal/types.js.map +1 -0
  107. package/dist/module/index.js +3 -0
  108. package/dist/module/index.js.map +1 -0
  109. package/dist/module/tests/DurationScroll.test.js +160 -0
  110. package/dist/module/tests/DurationScroll.test.js.map +1 -0
  111. package/dist/module/tests/Modal.test.js +96 -0
  112. package/dist/module/tests/Modal.test.js.map +1 -0
  113. package/dist/module/tests/TimerPicker.test.js +159 -0
  114. package/dist/module/tests/TimerPicker.test.js.map +1 -0
  115. package/dist/module/tests/TimerPickerModal.test.js +273 -0
  116. package/dist/module/tests/TimerPickerModal.test.js.map +1 -0
  117. package/dist/module/tests/colorToRgba.test.js +174 -0
  118. package/dist/module/tests/colorToRgba.test.js.map +1 -0
  119. package/dist/module/tests/generateNumbers.test.js +348 -0
  120. package/dist/module/tests/generateNumbers.test.js.map +1 -0
  121. package/dist/module/tests/getAdjustedLimit.test.js +322 -0
  122. package/dist/module/tests/getAdjustedLimit.test.js.map +1 -0
  123. package/dist/module/tests/getDurationAndIndexFromScrollOffset.test.js +422 -0
  124. package/dist/module/tests/getDurationAndIndexFromScrollOffset.test.js.map +1 -0
  125. package/dist/module/tests/getInitialScrollIndex.test.js +394 -0
  126. package/dist/module/tests/getInitialScrollIndex.test.js.map +1 -0
  127. package/dist/module/tests/getSafeInitialValue.test.js +496 -0
  128. package/dist/module/tests/getSafeInitialValue.test.js.map +1 -0
  129. package/dist/module/tests/padNumber.test.js +299 -0
  130. package/dist/module/tests/padNumber.test.js.map +1 -0
  131. package/dist/module/utils/colorToRgba.js +80 -0
  132. package/dist/module/utils/colorToRgba.js.map +1 -0
  133. package/dist/module/utils/generateNumbers.js +117 -0
  134. package/dist/module/utils/generateNumbers.js.map +1 -0
  135. package/dist/module/utils/getAdjustedLimit.js +51 -0
  136. package/dist/module/utils/getAdjustedLimit.js.map +1 -0
  137. package/dist/module/utils/getDurationAndIndexFromScrollOffset.js +55 -0
  138. package/dist/module/utils/getDurationAndIndexFromScrollOffset.js.map +1 -0
  139. package/dist/module/utils/getInitialScrollIndex.js +50 -0
  140. package/dist/module/utils/getInitialScrollIndex.js.map +1 -0
  141. package/dist/module/utils/getSafeInitialValue.js +34 -0
  142. package/dist/module/utils/getSafeInitialValue.js.map +1 -0
  143. package/dist/module/utils/padNumber.js +33 -0
  144. package/dist/module/utils/padNumber.js.map +1 -0
  145. package/dist/typescript/components/DurationScroll/DurationScroll.d.ts +4 -0
  146. package/dist/typescript/components/DurationScroll/index.d.ts +2 -0
  147. package/dist/typescript/components/DurationScroll/types.d.ts +70 -0
  148. package/dist/typescript/components/Modal/Modal.d.ts +5 -0
  149. package/dist/typescript/components/Modal/index.d.ts +2 -0
  150. package/dist/typescript/components/Modal/styles.d.ts +17 -0
  151. package/dist/typescript/components/Modal/types.d.ts +16 -0
  152. package/dist/typescript/components/PickerItem/PickerItem.d.ts +19 -0
  153. package/dist/typescript/components/PickerItem/index.d.ts +1 -0
  154. package/dist/typescript/components/TimerPicker/TimerPicker.d.ts +4 -0
  155. package/dist/typescript/components/TimerPicker/index.d.ts +3 -0
  156. package/dist/typescript/components/TimerPicker/styles.d.ts +1583 -0
  157. package/dist/typescript/components/TimerPicker/types.d.ts +91 -0
  158. package/dist/typescript/components/TimerPickerModal/TimerPickerModal.d.ts +4 -0
  159. package/dist/typescript/components/TimerPickerModal/index.d.ts +3 -0
  160. package/dist/typescript/components/TimerPickerModal/styles.d.ts +952 -0
  161. package/dist/typescript/components/TimerPickerModal/types.d.ts +56 -0
  162. package/dist/typescript/index.d.ts +4 -0
  163. package/dist/typescript/tests/DurationScroll.test.d.ts +1 -0
  164. package/dist/typescript/tests/Modal.test.d.ts +1 -0
  165. package/dist/typescript/tests/TimerPicker.test.d.ts +1 -0
  166. package/dist/typescript/tests/TimerPickerModal.test.d.ts +1 -0
  167. package/dist/typescript/tests/colorToRgba.test.d.ts +1 -0
  168. package/dist/typescript/tests/generateNumbers.test.d.ts +1 -0
  169. package/dist/typescript/tests/getAdjustedLimit.test.d.ts +1 -0
  170. package/dist/typescript/tests/getDurationAndIndexFromScrollOffset.test.d.ts +1 -0
  171. package/dist/typescript/tests/getInitialScrollIndex.test.d.ts +1 -0
  172. package/dist/typescript/tests/getSafeInitialValue.test.d.ts +1 -0
  173. package/dist/typescript/tests/padNumber.test.d.ts +1 -0
  174. package/dist/typescript/utils/colorToRgba.d.ts +38 -0
  175. package/dist/typescript/utils/generateNumbers.d.ts +80 -0
  176. package/dist/typescript/utils/getAdjustedLimit.d.ts +30 -0
  177. package/dist/typescript/utils/getDurationAndIndexFromScrollOffset.d.ts +49 -0
  178. package/dist/typescript/utils/getInitialScrollIndex.d.ts +46 -0
  179. package/dist/typescript/utils/getSafeInitialValue.d.ts +38 -0
  180. package/dist/typescript/utils/padNumber.d.ts +28 -0
  181. package/package.json +3 -2
@@ -0,0 +1,396 @@
1
+ "use strict";
2
+
3
+ var _getInitialScrollIndex = require("../utils/getInitialScrollIndex");
4
+ describe("getInitialScrollIndex", () => {
5
+ describe("infinite scroll disabled", () => {
6
+ it("calculates index for value 0", () => {
7
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
8
+ disableInfiniteScroll: true,
9
+ interval: 1,
10
+ numberOfItems: 60,
11
+ padWithNItems: 2,
12
+ repeatNumbersNTimes: 1,
13
+ value: 0
14
+ });
15
+ expect(result).toBe(0);
16
+ });
17
+ it("calculates index for middle value", () => {
18
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
19
+ disableInfiniteScroll: true,
20
+ interval: 1,
21
+ numberOfItems: 60,
22
+ padWithNItems: 2,
23
+ repeatNumbersNTimes: 1,
24
+ value: 30
25
+ });
26
+ expect(result).toBe(30);
27
+ });
28
+ it("calculates index for max value", () => {
29
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
30
+ disableInfiniteScroll: true,
31
+ interval: 1,
32
+ numberOfItems: 60,
33
+ padWithNItems: 2,
34
+ repeatNumbersNTimes: 1,
35
+ value: 59
36
+ });
37
+ expect(result).toBe(59);
38
+ });
39
+ it("handles interval of 5", () => {
40
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
41
+ disableInfiniteScroll: true,
42
+ interval: 5,
43
+ numberOfItems: 12,
44
+ padWithNItems: 2,
45
+ repeatNumbersNTimes: 1,
46
+ value: 25
47
+ });
48
+ expect(result).toBe(5); // 25 / 5 = 5
49
+ });
50
+ it("handles interval of 15", () => {
51
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
52
+ disableInfiniteScroll: true,
53
+ interval: 15,
54
+ numberOfItems: 4,
55
+ padWithNItems: 2,
56
+ repeatNumbersNTimes: 1,
57
+ value: 45
58
+ });
59
+ expect(result).toBe(3); // 45 / 15 = 3
60
+ });
61
+ it("handles different padding values", () => {
62
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
63
+ disableInfiniteScroll: true,
64
+ interval: 1,
65
+ numberOfItems: 24,
66
+ padWithNItems: 5,
67
+ repeatNumbersNTimes: 1,
68
+ value: 12
69
+ });
70
+ expect(result).toBe(12);
71
+ });
72
+ });
73
+ describe("infinite scroll enabled", () => {
74
+ it("accounts for padding offset at value 0", () => {
75
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
76
+ disableInfiniteScroll: false,
77
+ interval: 1,
78
+ numberOfItems: 60,
79
+ padWithNItems: 2,
80
+ repeatNumbersNTimes: 3,
81
+ value: 0
82
+ });
83
+ expect(result).toBe(58); // 60 * 1 + 0 - 2 = 58
84
+ });
85
+ it("calculates index with padding offset for middle value", () => {
86
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
87
+ disableInfiniteScroll: false,
88
+ interval: 1,
89
+ numberOfItems: 60,
90
+ padWithNItems: 2,
91
+ repeatNumbersNTimes: 3,
92
+ value: 30
93
+ });
94
+ expect(result).toBe(88); // 60 * 1 + 30 - 2 = 88
95
+ });
96
+ it("handles larger padding", () => {
97
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
98
+ disableInfiniteScroll: false,
99
+ interval: 1,
100
+ numberOfItems: 60,
101
+ padWithNItems: 5,
102
+ repeatNumbersNTimes: 3,
103
+ value: 15
104
+ });
105
+ expect(result).toBe(70); // 60 * 1 + 15 - 5 = 70
106
+ });
107
+ it("handles zero padding", () => {
108
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
109
+ disableInfiniteScroll: false,
110
+ interval: 1,
111
+ numberOfItems: 60,
112
+ padWithNItems: 0,
113
+ repeatNumbersNTimes: 3,
114
+ value: 30
115
+ });
116
+ expect(result).toBe(90); // 60 * 1 + 30 - 0 = 90
117
+ });
118
+ it("handles interval of 5 with padding", () => {
119
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
120
+ disableInfiniteScroll: false,
121
+ interval: 5,
122
+ numberOfItems: 12,
123
+ padWithNItems: 2,
124
+ repeatNumbersNTimes: 3,
125
+ value: 30
126
+ });
127
+ expect(result).toBe(16); // 12 * 1 + 6 - 2 = 16
128
+ });
129
+ });
130
+ describe("repeat numbers", () => {
131
+ it("positions at middle repetition when repeatNTimes is 3", () => {
132
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
133
+ disableInfiniteScroll: false,
134
+ interval: 1,
135
+ numberOfItems: 24,
136
+ padWithNItems: 2,
137
+ repeatNumbersNTimes: 3,
138
+ value: 12
139
+ });
140
+ expect(result).toBe(34); // 24 * 1 + 12 - 2 = 34
141
+ });
142
+ it("positions at middle repetition when repeatNTimes is 5", () => {
143
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
144
+ disableInfiniteScroll: false,
145
+ interval: 1,
146
+ numberOfItems: 24,
147
+ padWithNItems: 2,
148
+ repeatNumbersNTimes: 5,
149
+ value: 12
150
+ });
151
+ expect(result).toBe(58); // 24 * 2 + 12 - 2 = 58
152
+ });
153
+ it("handles even repeatNTimes", () => {
154
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
155
+ disableInfiniteScroll: false,
156
+ interval: 1,
157
+ numberOfItems: 60,
158
+ padWithNItems: 2,
159
+ repeatNumbersNTimes: 4,
160
+ value: 30
161
+ });
162
+ expect(result).toBe(148); // 60 * 2 + 30 - 2 = 148
163
+ });
164
+ it("handles repeatNTimes of 1", () => {
165
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
166
+ disableInfiniteScroll: false,
167
+ interval: 1,
168
+ numberOfItems: 60,
169
+ padWithNItems: 2,
170
+ repeatNumbersNTimes: 1,
171
+ value: 30
172
+ });
173
+ expect(result).toBe(28); // 60 * 0 + 30 - 2 = 28
174
+ });
175
+ it("handles large repeatNTimes", () => {
176
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
177
+ disableInfiniteScroll: false,
178
+ interval: 1,
179
+ numberOfItems: 24,
180
+ padWithNItems: 2,
181
+ repeatNumbersNTimes: 7,
182
+ value: 12
183
+ });
184
+ expect(result).toBe(82); // 24 * 3 + 12 - 2 = 82
185
+ });
186
+ });
187
+ describe("different intervals", () => {
188
+ it("handles interval of 1", () => {
189
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
190
+ disableInfiniteScroll: false,
191
+ interval: 1,
192
+ numberOfItems: 60,
193
+ padWithNItems: 2,
194
+ repeatNumbersNTimes: 3,
195
+ value: 45
196
+ });
197
+ expect(result).toBe(103); // 60 * 1 + 45 - 2 = 103
198
+ });
199
+ it("handles interval of 5", () => {
200
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
201
+ disableInfiniteScroll: false,
202
+ interval: 5,
203
+ numberOfItems: 12,
204
+ padWithNItems: 2,
205
+ repeatNumbersNTimes: 3,
206
+ value: 35
207
+ });
208
+ expect(result).toBe(17); // 12 * 1 + 7 - 2 = 17
209
+ });
210
+ it("handles interval of 15", () => {
211
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
212
+ disableInfiniteScroll: false,
213
+ interval: 15,
214
+ numberOfItems: 4,
215
+ padWithNItems: 2,
216
+ repeatNumbersNTimes: 3,
217
+ value: 30
218
+ });
219
+ expect(result).toBe(4); // 4 * 1 + 2 - 2 = 4
220
+ });
221
+ it("handles interval of 10", () => {
222
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
223
+ disableInfiniteScroll: false,
224
+ interval: 10,
225
+ numberOfItems: 6,
226
+ padWithNItems: 2,
227
+ repeatNumbersNTimes: 3,
228
+ value: 40
229
+ });
230
+ expect(result).toBe(8); // 6 * 1 + 4 - 2 = 8
231
+ });
232
+ });
233
+ describe("wrap-around behavior", () => {
234
+ it("handles value greater than numberOfItems * interval", () => {
235
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
236
+ disableInfiniteScroll: false,
237
+ interval: 1,
238
+ numberOfItems: 24,
239
+ padWithNItems: 2,
240
+ repeatNumbersNTimes: 3,
241
+ value: 72
242
+ });
243
+ expect(result).toBe(22); // 24 * 1 + (72 % 24) - 2 = 22
244
+ });
245
+ it("handles negative result from Math.max", () => {
246
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
247
+ disableInfiniteScroll: false,
248
+ interval: 1,
249
+ numberOfItems: 60,
250
+ padWithNItems: 10,
251
+ repeatNumbersNTimes: 1,
252
+ value: 5
253
+ });
254
+ expect(result).toBe(0); // Math.max(0 + 5 - 10, 0) = 0
255
+ });
256
+ it("ensures non-negative result with large padding", () => {
257
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
258
+ disableInfiniteScroll: false,
259
+ interval: 1,
260
+ numberOfItems: 24,
261
+ padWithNItems: 50,
262
+ repeatNumbersNTimes: 1,
263
+ value: 0
264
+ });
265
+ expect(result).toBe(0); // Math.max ensures >= 0
266
+ });
267
+ });
268
+ describe("edge cases", () => {
269
+ it("handles value of 0", () => {
270
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
271
+ disableInfiniteScroll: false,
272
+ interval: 1,
273
+ numberOfItems: 60,
274
+ padWithNItems: 2,
275
+ repeatNumbersNTimes: 3,
276
+ value: 0
277
+ });
278
+ expect(result).toBe(58);
279
+ });
280
+ it("handles small numberOfItems", () => {
281
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
282
+ disableInfiniteScroll: false,
283
+ interval: 1,
284
+ numberOfItems: 2,
285
+ padWithNItems: 1,
286
+ repeatNumbersNTimes: 3,
287
+ value: 1
288
+ });
289
+ expect(result).toBe(2); // 2 * 1 + 1 - 1 = 2
290
+ });
291
+ it("handles large value", () => {
292
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
293
+ disableInfiniteScroll: false,
294
+ interval: 1,
295
+ numberOfItems: 60,
296
+ padWithNItems: 2,
297
+ repeatNumbersNTimes: 3,
298
+ value: 200
299
+ });
300
+ expect(result).toBe(78); // 60 * floor(3/2) + ((200 + 60) % 60) - 2 = 60 + 20 - 2 = 78
301
+ });
302
+ it("handles numberOfItems of 1", () => {
303
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
304
+ disableInfiniteScroll: false,
305
+ interval: 1,
306
+ numberOfItems: 1,
307
+ padWithNItems: 0,
308
+ repeatNumbersNTimes: 3,
309
+ value: 0
310
+ });
311
+ expect(result).toBe(1); // 1 * 1 + 0 - 0 = 1
312
+ });
313
+ });
314
+ describe("real-world scenarios", () => {
315
+ it("handles typical hour picker initialization", () => {
316
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
317
+ disableInfiniteScroll: false,
318
+ interval: 1,
319
+ numberOfItems: 24,
320
+ padWithNItems: 2,
321
+ repeatNumbersNTimes: 3,
322
+ value: 14
323
+ });
324
+ expect(result).toBe(36); // 24 * 1 + 14 - 2 = 36
325
+ });
326
+ it("handles typical minute picker initialization", () => {
327
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
328
+ disableInfiniteScroll: false,
329
+ interval: 1,
330
+ numberOfItems: 60,
331
+ padWithNItems: 2,
332
+ repeatNumbersNTimes: 3,
333
+ value: 45
334
+ });
335
+ expect(result).toBe(103); // 60 * 1 + 45 - 2 = 103
336
+ });
337
+ it("handles minute picker with 5-minute interval", () => {
338
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
339
+ disableInfiniteScroll: false,
340
+ interval: 5,
341
+ numberOfItems: 12,
342
+ padWithNItems: 2,
343
+ repeatNumbersNTimes: 3,
344
+ value: 30
345
+ });
346
+ expect(result).toBe(16); // 12 * 1 + 6 - 2 = 16
347
+ });
348
+ it("handles second picker initialization", () => {
349
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
350
+ disableInfiniteScroll: false,
351
+ interval: 1,
352
+ numberOfItems: 60,
353
+ padWithNItems: 2,
354
+ repeatNumbersNTimes: 3,
355
+ value: 0
356
+ });
357
+ expect(result).toBe(58); // 60 * 1 + 0 - 2 = 58
358
+ });
359
+ it("handles day picker without repetition", () => {
360
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
361
+ disableInfiniteScroll: true,
362
+ interval: 1,
363
+ numberOfItems: 100,
364
+ padWithNItems: 2,
365
+ repeatNumbersNTimes: 1,
366
+ value: 15
367
+ });
368
+ expect(result).toBe(15);
369
+ });
370
+ });
371
+ describe("combination scenarios", () => {
372
+ it("combines interval, padding, and repetition", () => {
373
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
374
+ disableInfiniteScroll: false,
375
+ interval: 15,
376
+ numberOfItems: 4,
377
+ padWithNItems: 3,
378
+ repeatNumbersNTimes: 5,
379
+ value: 45
380
+ });
381
+ expect(result).toBe(8); // 4 * 2 + 3 - 3 = 8
382
+ });
383
+ it("handles disabled infinite scroll with repetition", () => {
384
+ const result = (0, _getInitialScrollIndex.getInitialScrollIndex)({
385
+ disableInfiniteScroll: true,
386
+ interval: 5,
387
+ numberOfItems: 12,
388
+ padWithNItems: 5,
389
+ repeatNumbersNTimes: 3,
390
+ value: 35
391
+ });
392
+ expect(result).toBe(19); // 12 * 1 + 7 = 19
393
+ });
394
+ });
395
+ });
396
+ //# sourceMappingURL=getInitialScrollIndex.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_getInitialScrollIndex","require","describe","it","result","getInitialScrollIndex","disableInfiniteScroll","interval","numberOfItems","padWithNItems","repeatNumbersNTimes","value","expect","toBe"],"sources":["getInitialScrollIndex.test.ts"],"sourcesContent":["import { getInitialScrollIndex } from \"../utils/getInitialScrollIndex\";\n\ndescribe(\"getInitialScrollIndex\", () => {\n describe(\"infinite scroll disabled\", () => {\n it(\"calculates index for value 0\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: true,\n interval: 1,\n numberOfItems: 60,\n padWithNItems: 2,\n repeatNumbersNTimes: 1,\n value: 0,\n });\n expect(result).toBe(0);\n });\n\n it(\"calculates index for middle value\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: true,\n interval: 1,\n numberOfItems: 60,\n padWithNItems: 2,\n repeatNumbersNTimes: 1,\n value: 30,\n });\n expect(result).toBe(30);\n });\n\n it(\"calculates index for max value\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: true,\n interval: 1,\n numberOfItems: 60,\n padWithNItems: 2,\n repeatNumbersNTimes: 1,\n value: 59,\n });\n expect(result).toBe(59);\n });\n\n it(\"handles interval of 5\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: true,\n interval: 5,\n numberOfItems: 12,\n padWithNItems: 2,\n repeatNumbersNTimes: 1,\n value: 25,\n });\n expect(result).toBe(5); // 25 / 5 = 5\n });\n\n it(\"handles interval of 15\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: true,\n interval: 15,\n numberOfItems: 4,\n padWithNItems: 2,\n repeatNumbersNTimes: 1,\n value: 45,\n });\n expect(result).toBe(3); // 45 / 15 = 3\n });\n\n it(\"handles different padding values\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: true,\n interval: 1,\n numberOfItems: 24,\n padWithNItems: 5,\n repeatNumbersNTimes: 1,\n value: 12,\n });\n expect(result).toBe(12);\n });\n });\n\n describe(\"infinite scroll enabled\", () => {\n it(\"accounts for padding offset at value 0\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 60,\n padWithNItems: 2,\n repeatNumbersNTimes: 3,\n value: 0,\n });\n expect(result).toBe(58); // 60 * 1 + 0 - 2 = 58\n });\n\n it(\"calculates index with padding offset for middle value\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 60,\n padWithNItems: 2,\n repeatNumbersNTimes: 3,\n value: 30,\n });\n expect(result).toBe(88); // 60 * 1 + 30 - 2 = 88\n });\n\n it(\"handles larger padding\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 60,\n padWithNItems: 5,\n repeatNumbersNTimes: 3,\n value: 15,\n });\n expect(result).toBe(70); // 60 * 1 + 15 - 5 = 70\n });\n\n it(\"handles zero padding\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 60,\n padWithNItems: 0,\n repeatNumbersNTimes: 3,\n value: 30,\n });\n expect(result).toBe(90); // 60 * 1 + 30 - 0 = 90\n });\n\n it(\"handles interval of 5 with padding\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 5,\n numberOfItems: 12,\n padWithNItems: 2,\n repeatNumbersNTimes: 3,\n value: 30,\n });\n expect(result).toBe(16); // 12 * 1 + 6 - 2 = 16\n });\n });\n\n describe(\"repeat numbers\", () => {\n it(\"positions at middle repetition when repeatNTimes is 3\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 24,\n padWithNItems: 2,\n repeatNumbersNTimes: 3,\n value: 12,\n });\n expect(result).toBe(34); // 24 * 1 + 12 - 2 = 34\n });\n\n it(\"positions at middle repetition when repeatNTimes is 5\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 24,\n padWithNItems: 2,\n repeatNumbersNTimes: 5,\n value: 12,\n });\n expect(result).toBe(58); // 24 * 2 + 12 - 2 = 58\n });\n\n it(\"handles even repeatNTimes\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 60,\n padWithNItems: 2,\n repeatNumbersNTimes: 4,\n value: 30,\n });\n expect(result).toBe(148); // 60 * 2 + 30 - 2 = 148\n });\n\n it(\"handles repeatNTimes of 1\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 60,\n padWithNItems: 2,\n repeatNumbersNTimes: 1,\n value: 30,\n });\n expect(result).toBe(28); // 60 * 0 + 30 - 2 = 28\n });\n\n it(\"handles large repeatNTimes\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 24,\n padWithNItems: 2,\n repeatNumbersNTimes: 7,\n value: 12,\n });\n expect(result).toBe(82); // 24 * 3 + 12 - 2 = 82\n });\n });\n\n describe(\"different intervals\", () => {\n it(\"handles interval of 1\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 60,\n padWithNItems: 2,\n repeatNumbersNTimes: 3,\n value: 45,\n });\n expect(result).toBe(103); // 60 * 1 + 45 - 2 = 103\n });\n\n it(\"handles interval of 5\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 5,\n numberOfItems: 12,\n padWithNItems: 2,\n repeatNumbersNTimes: 3,\n value: 35,\n });\n expect(result).toBe(17); // 12 * 1 + 7 - 2 = 17\n });\n\n it(\"handles interval of 15\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 15,\n numberOfItems: 4,\n padWithNItems: 2,\n repeatNumbersNTimes: 3,\n value: 30,\n });\n expect(result).toBe(4); // 4 * 1 + 2 - 2 = 4\n });\n\n it(\"handles interval of 10\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 10,\n numberOfItems: 6,\n padWithNItems: 2,\n repeatNumbersNTimes: 3,\n value: 40,\n });\n expect(result).toBe(8); // 6 * 1 + 4 - 2 = 8\n });\n });\n\n describe(\"wrap-around behavior\", () => {\n it(\"handles value greater than numberOfItems * interval\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 24,\n padWithNItems: 2,\n repeatNumbersNTimes: 3,\n value: 72,\n });\n expect(result).toBe(22); // 24 * 1 + (72 % 24) - 2 = 22\n });\n\n it(\"handles negative result from Math.max\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 60,\n padWithNItems: 10,\n repeatNumbersNTimes: 1,\n value: 5,\n });\n expect(result).toBe(0); // Math.max(0 + 5 - 10, 0) = 0\n });\n\n it(\"ensures non-negative result with large padding\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 24,\n padWithNItems: 50,\n repeatNumbersNTimes: 1,\n value: 0,\n });\n expect(result).toBe(0); // Math.max ensures >= 0\n });\n });\n\n describe(\"edge cases\", () => {\n it(\"handles value of 0\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 60,\n padWithNItems: 2,\n repeatNumbersNTimes: 3,\n value: 0,\n });\n expect(result).toBe(58);\n });\n\n it(\"handles small numberOfItems\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 2,\n padWithNItems: 1,\n repeatNumbersNTimes: 3,\n value: 1,\n });\n expect(result).toBe(2); // 2 * 1 + 1 - 1 = 2\n });\n\n it(\"handles large value\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 60,\n padWithNItems: 2,\n repeatNumbersNTimes: 3,\n value: 200,\n });\n expect(result).toBe(78); // 60 * floor(3/2) + ((200 + 60) % 60) - 2 = 60 + 20 - 2 = 78\n });\n\n it(\"handles numberOfItems of 1\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 1,\n padWithNItems: 0,\n repeatNumbersNTimes: 3,\n value: 0,\n });\n expect(result).toBe(1); // 1 * 1 + 0 - 0 = 1\n });\n });\n\n describe(\"real-world scenarios\", () => {\n it(\"handles typical hour picker initialization\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 24,\n padWithNItems: 2,\n repeatNumbersNTimes: 3,\n value: 14,\n });\n expect(result).toBe(36); // 24 * 1 + 14 - 2 = 36\n });\n\n it(\"handles typical minute picker initialization\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 60,\n padWithNItems: 2,\n repeatNumbersNTimes: 3,\n value: 45,\n });\n expect(result).toBe(103); // 60 * 1 + 45 - 2 = 103\n });\n\n it(\"handles minute picker with 5-minute interval\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 5,\n numberOfItems: 12,\n padWithNItems: 2,\n repeatNumbersNTimes: 3,\n value: 30,\n });\n expect(result).toBe(16); // 12 * 1 + 6 - 2 = 16\n });\n\n it(\"handles second picker initialization\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 1,\n numberOfItems: 60,\n padWithNItems: 2,\n repeatNumbersNTimes: 3,\n value: 0,\n });\n expect(result).toBe(58); // 60 * 1 + 0 - 2 = 58\n });\n\n it(\"handles day picker without repetition\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: true,\n interval: 1,\n numberOfItems: 100,\n padWithNItems: 2,\n repeatNumbersNTimes: 1,\n value: 15,\n });\n expect(result).toBe(15);\n });\n });\n\n describe(\"combination scenarios\", () => {\n it(\"combines interval, padding, and repetition\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: false,\n interval: 15,\n numberOfItems: 4,\n padWithNItems: 3,\n repeatNumbersNTimes: 5,\n value: 45,\n });\n expect(result).toBe(8); // 4 * 2 + 3 - 3 = 8\n });\n\n it(\"handles disabled infinite scroll with repetition\", () => {\n const result = getInitialScrollIndex({\n disableInfiniteScroll: true,\n interval: 5,\n numberOfItems: 12,\n padWithNItems: 5,\n repeatNumbersNTimes: 3,\n value: 35,\n });\n expect(result).toBe(19); // 12 * 1 + 7 = 19\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}