react-native-timer-picker 2.2.0 → 2.2.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 (56) hide show
  1. package/README.md +35 -34
  2. package/dist/commonjs/tests/DurationScroll.test.js +94 -0
  3. package/dist/commonjs/tests/DurationScroll.test.js.map +1 -1
  4. package/dist/commonjs/tests/Modal.test.js +79 -2
  5. package/dist/commonjs/tests/Modal.test.js.map +1 -1
  6. package/dist/commonjs/tests/TimerPicker.test.js +115 -0
  7. package/dist/commonjs/tests/TimerPicker.test.js.map +1 -1
  8. package/dist/commonjs/tests/TimerPickerModal.test.js +120 -0
  9. package/dist/commonjs/tests/TimerPickerModal.test.js.map +1 -1
  10. package/dist/commonjs/tests/colorToRgba.test.js +176 -0
  11. package/dist/commonjs/tests/colorToRgba.test.js.map +1 -0
  12. package/dist/commonjs/tests/generateNumbers.test.js +350 -0
  13. package/dist/commonjs/tests/generateNumbers.test.js.map +1 -0
  14. package/dist/commonjs/tests/getAdjustedLimit.test.js +324 -0
  15. package/dist/commonjs/tests/getAdjustedLimit.test.js.map +1 -0
  16. package/dist/commonjs/tests/getDurationAndIndexFromScrollOffset.test.js +424 -0
  17. package/dist/commonjs/tests/getDurationAndIndexFromScrollOffset.test.js.map +1 -0
  18. package/dist/commonjs/tests/getInitialScrollIndex.test.js +396 -0
  19. package/dist/commonjs/tests/getInitialScrollIndex.test.js.map +1 -0
  20. package/dist/commonjs/tests/getSafeInitialValue.test.js +497 -0
  21. package/dist/commonjs/tests/getSafeInitialValue.test.js.map +1 -0
  22. package/dist/commonjs/tests/padNumber.test.js +301 -0
  23. package/dist/commonjs/tests/padNumber.test.js.map +1 -0
  24. package/dist/commonjs/utils/colorToRgba.js +5 -0
  25. package/dist/commonjs/utils/colorToRgba.js.map +1 -1
  26. package/dist/commonjs/utils/getAdjustedLimit.js +3 -3
  27. package/dist/commonjs/utils/getAdjustedLimit.js.map +1 -1
  28. package/dist/module/tests/DurationScroll.test.js +94 -0
  29. package/dist/module/tests/DurationScroll.test.js.map +1 -1
  30. package/dist/module/tests/Modal.test.js +80 -3
  31. package/dist/module/tests/Modal.test.js.map +1 -1
  32. package/dist/module/tests/TimerPicker.test.js +115 -0
  33. package/dist/module/tests/TimerPicker.test.js.map +1 -1
  34. package/dist/module/tests/TimerPickerModal.test.js +121 -1
  35. package/dist/module/tests/TimerPickerModal.test.js.map +1 -1
  36. package/dist/module/tests/colorToRgba.test.js +174 -0
  37. package/dist/module/tests/colorToRgba.test.js.map +1 -0
  38. package/dist/module/tests/generateNumbers.test.js +348 -0
  39. package/dist/module/tests/generateNumbers.test.js.map +1 -0
  40. package/dist/module/tests/getAdjustedLimit.test.js +322 -0
  41. package/dist/module/tests/getAdjustedLimit.test.js.map +1 -0
  42. package/dist/module/tests/getDurationAndIndexFromScrollOffset.test.js +422 -0
  43. package/dist/module/tests/getDurationAndIndexFromScrollOffset.test.js.map +1 -0
  44. package/dist/module/tests/getInitialScrollIndex.test.js +394 -0
  45. package/dist/module/tests/getInitialScrollIndex.test.js.map +1 -0
  46. package/dist/module/tests/getSafeInitialValue.test.js +495 -0
  47. package/dist/module/tests/getSafeInitialValue.test.js.map +1 -0
  48. package/dist/module/tests/padNumber.test.js +299 -0
  49. package/dist/module/tests/padNumber.test.js.map +1 -0
  50. package/dist/module/utils/colorToRgba.js +5 -0
  51. package/dist/module/utils/colorToRgba.js.map +1 -1
  52. package/dist/module/utils/getAdjustedLimit.js +3 -3
  53. package/dist/module/utils/getAdjustedLimit.js.map +1 -1
  54. package/dist/typescript/components/TimerPicker/styles.d.ts +0 -247
  55. package/dist/typescript/components/TimerPickerModal/styles.d.ts +0 -152
  56. package/package.json +3 -4
@@ -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":[]}