javascript-time-ago 2.5.10 → 2.5.12

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 (439) hide show
  1. package/bundle/javascript-time-ago.js +1 -1
  2. package/bundle/javascript-time-ago.js.map +1 -1
  3. package/bundle/javascript-time-ago.min.js +1 -1
  4. package/bundle/javascript-time-ago.min.js.map +1 -1
  5. package/commonjs/LocaleDataStore.js +2 -5
  6. package/commonjs/LocaleDataStore.js.map +1 -1
  7. package/commonjs/PropTypes.js +12 -12
  8. package/commonjs/PropTypes.js.map +1 -1
  9. package/commonjs/TimeAgo.js +135 -190
  10. package/commonjs/TimeAgo.js.map +1 -1
  11. package/commonjs/TimeAgo.test.js +124 -130
  12. package/commonjs/TimeAgo.test.js.map +1 -1
  13. package/commonjs/cache.js +7 -25
  14. package/commonjs/cache.js.map +1 -1
  15. package/commonjs/cache.test.js +1 -3
  16. package/commonjs/cache.test.js.map +1 -1
  17. package/commonjs/isStyleObject.js +9 -9
  18. package/commonjs/isStyleObject.js.map +1 -1
  19. package/commonjs/isStyleObject.test.js +1 -3
  20. package/commonjs/isStyleObject.test.js.map +1 -1
  21. package/commonjs/locale.js +6 -19
  22. package/commonjs/locale.js.map +1 -1
  23. package/commonjs/locale.test.js +2 -11
  24. package/commonjs/locale.test.js.map +1 -1
  25. package/commonjs/round.js +2 -5
  26. package/commonjs/round.js.map +1 -1
  27. package/commonjs/steps/approximate.js +1 -4
  28. package/commonjs/steps/approximate.js.map +1 -1
  29. package/commonjs/steps/approximate.test.js +1 -6
  30. package/commonjs/steps/approximate.test.js.map +1 -1
  31. package/commonjs/steps/getStep.js +36 -53
  32. package/commonjs/steps/getStep.js.map +1 -1
  33. package/commonjs/steps/getStep.test.js +7 -7
  34. package/commonjs/steps/getStep.test.js.map +1 -1
  35. package/commonjs/steps/getStepDenominator.js +2 -5
  36. package/commonjs/steps/getStepDenominator.js.map +1 -1
  37. package/commonjs/steps/getStepDenominator.test.js +1 -3
  38. package/commonjs/steps/getStepDenominator.test.js.map +1 -1
  39. package/commonjs/steps/getStepMinTime.js +17 -32
  40. package/commonjs/steps/getStepMinTime.js.map +1 -1
  41. package/commonjs/steps/getStepMinTime.test.js +1 -3
  42. package/commonjs/steps/getStepMinTime.test.js.map +1 -1
  43. package/commonjs/steps/getTimeToNextUpdate.js +19 -41
  44. package/commonjs/steps/getTimeToNextUpdate.js.map +1 -1
  45. package/commonjs/steps/getTimeToNextUpdate.test.js +29 -25
  46. package/commonjs/steps/getTimeToNextUpdate.test.js.map +1 -1
  47. package/commonjs/steps/getTimeToNextUpdateForUnit.js +3 -12
  48. package/commonjs/steps/getTimeToNextUpdateForUnit.js.map +1 -1
  49. package/commonjs/steps/getTimeToNextUpdateForUnit.test.js +1 -7
  50. package/commonjs/steps/getTimeToNextUpdateForUnit.test.js.map +1 -1
  51. package/commonjs/steps/helpers.js +1 -2
  52. package/commonjs/steps/helpers.js.map +1 -1
  53. package/commonjs/steps/helpers.test.js +0 -1
  54. package/commonjs/steps/helpers.test.js.map +1 -1
  55. package/commonjs/steps/index.js +1 -6
  56. package/commonjs/steps/index.js.map +1 -1
  57. package/commonjs/steps/renameLegacyProperties.js +6 -14
  58. package/commonjs/steps/renameLegacyProperties.js.map +1 -1
  59. package/commonjs/steps/renameLegacyProperties.test.js +1 -3
  60. package/commonjs/steps/renameLegacyProperties.test.js.map +1 -1
  61. package/commonjs/steps/round.js +1 -2
  62. package/commonjs/steps/round.js.map +1 -1
  63. package/commonjs/steps/round.test.js +1 -7
  64. package/commonjs/steps/round.test.js.map +1 -1
  65. package/commonjs/steps/units.js +10 -21
  66. package/commonjs/steps/units.js.map +1 -1
  67. package/commonjs/style/approximate.js +2 -6
  68. package/commonjs/style/approximate.js.map +1 -1
  69. package/commonjs/style/approximateTime.js +2 -6
  70. package/commonjs/style/approximateTime.js.map +1 -1
  71. package/commonjs/style/approximateTime.test.js +116 -75
  72. package/commonjs/style/approximateTime.test.js.map +1 -1
  73. package/commonjs/style/getStyleByName.js +3 -29
  74. package/commonjs/style/getStyleByName.js.map +1 -1
  75. package/commonjs/style/mini.js +9 -6
  76. package/commonjs/style/mini.js.map +1 -1
  77. package/commonjs/style/mini.test.js +15 -25
  78. package/commonjs/style/mini.test.js.map +1 -1
  79. package/commonjs/style/miniMinute.js +8 -13
  80. package/commonjs/style/miniMinute.js.map +1 -1
  81. package/commonjs/style/miniMinute.test.js +11 -17
  82. package/commonjs/style/miniMinute.test.js.map +1 -1
  83. package/commonjs/style/miniMinuteNow.js +8 -13
  84. package/commonjs/style/miniMinuteNow.js.map +1 -1
  85. package/commonjs/style/miniMinuteNow.test.js +11 -17
  86. package/commonjs/style/miniMinuteNow.test.js.map +1 -1
  87. package/commonjs/style/miniNow.js +8 -13
  88. package/commonjs/style/miniNow.js.map +1 -1
  89. package/commonjs/style/miniNow.test.js +11 -17
  90. package/commonjs/style/miniNow.test.js.map +1 -1
  91. package/commonjs/style/renameLegacyProperties.js +7 -13
  92. package/commonjs/style/renameLegacyProperties.js.map +1 -1
  93. package/commonjs/style/renameLegacyProperties.test.js +1 -4
  94. package/commonjs/style/renameLegacyProperties.test.js.map +1 -1
  95. package/commonjs/style/round.js +2 -6
  96. package/commonjs/style/round.js.map +1 -1
  97. package/commonjs/style/round.test.js +51 -67
  98. package/commonjs/style/round.test.js.map +1 -1
  99. package/commonjs/style/roundMinute.js +8 -13
  100. package/commonjs/style/roundMinute.js.map +1 -1
  101. package/commonjs/style/roundMinute.test.js +20 -27
  102. package/commonjs/style/roundMinute.test.js.map +1 -1
  103. package/commonjs/style/twitter.js +34 -38
  104. package/commonjs/style/twitter.js.map +1 -1
  105. package/commonjs/style/twitter.test.js +49 -55
  106. package/commonjs/style/twitter.test.js.map +1 -1
  107. package/commonjs/style/twitterFirstMinute.js +10 -15
  108. package/commonjs/style/twitterFirstMinute.js.map +1 -1
  109. package/commonjs/style/twitterFirstMinute.test.js +16 -23
  110. package/commonjs/style/twitterFirstMinute.test.js.map +1 -1
  111. package/commonjs/style/twitterMinute.js +8 -13
  112. package/commonjs/style/twitterMinute.js.map +1 -1
  113. package/commonjs/style/twitterMinute.test.js +20 -25
  114. package/commonjs/style/twitterMinute.test.js.map +1 -1
  115. package/commonjs/style/twitterMinuteNow.js +8 -13
  116. package/commonjs/style/twitterMinuteNow.js.map +1 -1
  117. package/commonjs/style/twitterMinuteNow.test.js +20 -25
  118. package/commonjs/style/twitterMinuteNow.test.js.map +1 -1
  119. package/commonjs/style/twitterNow.js +8 -13
  120. package/commonjs/style/twitterNow.js.map +1 -1
  121. package/commonjs/style/twitterNow.test.js +18 -24
  122. package/commonjs/style/twitterNow.test.js.map +1 -1
  123. package/load-all-locales/index.cjs +32 -0
  124. package/load-all-locales/index.cjs.js +32 -0
  125. package/load-all-locales/index.js +64 -0
  126. package/locale/ak/package.json +16 -0
  127. package/locale/ak.json +267 -0
  128. package/locale/ak.json.d.ts +4 -0
  129. package/locale/ak.json.js +267 -0
  130. package/locale/bal-Latn/package.json +16 -0
  131. package/locale/bal-Latn.json +240 -0
  132. package/locale/bal-Latn.json.d.ts +4 -0
  133. package/locale/bal-Latn.json.js +240 -0
  134. package/locale/be-tarask/package.json +16 -0
  135. package/locale/be-tarask.json +259 -0
  136. package/locale/be-tarask.json.d.ts +4 -0
  137. package/locale/be-tarask.json.js +259 -0
  138. package/locale/blo/package.json +16 -0
  139. package/locale/blo.json +159 -0
  140. package/locale/blo.json.d.ts +4 -0
  141. package/locale/blo.json.js +159 -0
  142. package/locale/bn.json +5 -2
  143. package/locale/bn.json.js +5 -2
  144. package/locale/bs.json +8 -2
  145. package/locale/bs.json.js +8 -2
  146. package/locale/ccp.json +2 -8
  147. package/locale/ccp.json.js +2 -8
  148. package/locale/csw/package.json +16 -0
  149. package/locale/csw.json +180 -0
  150. package/locale/csw.json.d.ts +4 -0
  151. package/locale/csw.json.js +180 -0
  152. package/locale/cy.json +6 -12
  153. package/locale/cy.json.js +6 -12
  154. package/locale/doi/package.json +16 -0
  155. package/locale/doi.json +159 -0
  156. package/locale/doi.json.d.ts +4 -0
  157. package/locale/doi.json.js +159 -0
  158. package/locale/en-AU.json +12 -12
  159. package/locale/en-AU.json.js +12 -12
  160. package/locale/en-CZ/package.json +16 -0
  161. package/locale/en-CZ.json +219 -0
  162. package/locale/en-CZ.json.d.ts +4 -0
  163. package/locale/en-CZ.json.js +219 -0
  164. package/locale/en-ES/package.json +16 -0
  165. package/locale/en-ES.json +219 -0
  166. package/locale/en-ES.json.d.ts +4 -0
  167. package/locale/en-ES.json.js +219 -0
  168. package/locale/en-FR/package.json +16 -0
  169. package/locale/en-FR.json +219 -0
  170. package/locale/en-FR.json.d.ts +4 -0
  171. package/locale/en-FR.json.js +219 -0
  172. package/locale/en-GS/package.json +16 -0
  173. package/locale/en-GS.json +219 -0
  174. package/locale/en-GS.json.d.ts +4 -0
  175. package/locale/en-GS.json.js +219 -0
  176. package/locale/en-HU/package.json +16 -0
  177. package/locale/en-HU.json +219 -0
  178. package/locale/en-HU.json.d.ts +4 -0
  179. package/locale/en-HU.json.js +219 -0
  180. package/locale/en-ID/package.json +16 -0
  181. package/locale/en-ID.json +219 -0
  182. package/locale/en-ID.json.d.ts +4 -0
  183. package/locale/en-ID.json.js +219 -0
  184. package/locale/en-IT/package.json +16 -0
  185. package/locale/en-IT.json +219 -0
  186. package/locale/en-IT.json.d.ts +4 -0
  187. package/locale/en-IT.json.js +219 -0
  188. package/locale/en-NO/package.json +16 -0
  189. package/locale/en-NO.json +219 -0
  190. package/locale/en-NO.json.d.ts +4 -0
  191. package/locale/en-NO.json.js +219 -0
  192. package/locale/en-PL/package.json +16 -0
  193. package/locale/en-PL.json +219 -0
  194. package/locale/en-PL.json.d.ts +4 -0
  195. package/locale/en-PL.json.js +219 -0
  196. package/locale/en-PT/package.json +16 -0
  197. package/locale/en-PT.json +219 -0
  198. package/locale/en-PT.json.d.ts +4 -0
  199. package/locale/en-PT.json.js +219 -0
  200. package/locale/en-RO/package.json +16 -0
  201. package/locale/en-RO.json +219 -0
  202. package/locale/en-RO.json.d.ts +4 -0
  203. package/locale/en-RO.json.js +219 -0
  204. package/locale/en-SK/package.json +16 -0
  205. package/locale/en-SK.json +219 -0
  206. package/locale/en-SK.json.d.ts +4 -0
  207. package/locale/en-SK.json.js +219 -0
  208. package/locale/es-MX.json +12 -9
  209. package/locale/es-MX.json.js +12 -9
  210. package/locale/es-SV.json +2 -2
  211. package/locale/es-SV.json.js +2 -2
  212. package/locale/eu.json +24 -24
  213. package/locale/eu.json.js +24 -24
  214. package/locale/ha.json +119 -65
  215. package/locale/ha.json.js +119 -65
  216. package/locale/he.json +0 -6
  217. package/locale/he.json.js +0 -6
  218. package/locale/hi-Latn.json +2 -2
  219. package/locale/hi-Latn.json.js +2 -2
  220. package/locale/ht/package.json +16 -0
  221. package/locale/ht.json +207 -0
  222. package/locale/ht.json.d.ts +4 -0
  223. package/locale/ht.json.js +207 -0
  224. package/locale/id.json +1 -1
  225. package/locale/id.json.js +1 -1
  226. package/locale/ie/package.json +16 -0
  227. package/locale/ie.json +159 -0
  228. package/locale/ie.json.d.ts +4 -0
  229. package/locale/ie.json.js +159 -0
  230. package/locale/ig.json +17 -17
  231. package/locale/ig.json.js +17 -17
  232. package/locale/ii/package.json +16 -0
  233. package/locale/ii.json +165 -0
  234. package/locale/ii.json.d.ts +4 -0
  235. package/locale/ii.json.js +165 -0
  236. package/locale/is.json +4 -1
  237. package/locale/is.json.js +4 -1
  238. package/locale/kaa/package.json +16 -0
  239. package/locale/kaa.json +159 -0
  240. package/locale/kaa.json.d.ts +4 -0
  241. package/locale/kaa.json.js +159 -0
  242. package/locale/kok-Latn/package.json +16 -0
  243. package/locale/kok-Latn.json +159 -0
  244. package/locale/kok-Latn.json.d.ts +4 -0
  245. package/locale/kok-Latn.json.js +159 -0
  246. package/locale/kok.json +8 -8
  247. package/locale/kok.json.js +8 -8
  248. package/locale/ks.json +9 -9
  249. package/locale/ks.json.js +9 -9
  250. package/locale/ku.json +55 -46
  251. package/locale/ku.json.js +55 -46
  252. package/locale/lld/package.json +16 -0
  253. package/locale/lld.json +291 -0
  254. package/locale/lld.json.d.ts +4 -0
  255. package/locale/lld.json.js +291 -0
  256. package/locale/mi.json +22 -22
  257. package/locale/mi.json.js +22 -22
  258. package/locale/ms-Arab/package.json +16 -0
  259. package/locale/ms-Arab.json +159 -0
  260. package/locale/ms-Arab.json.d.ts +4 -0
  261. package/locale/ms-Arab.json.js +159 -0
  262. package/locale/nb.json +2 -2
  263. package/locale/nb.json.js +2 -2
  264. package/locale/ne.json +1 -1
  265. package/locale/ne.json.js +1 -1
  266. package/locale/nn.json +4 -4
  267. package/locale/nn.json.js +4 -4
  268. package/locale/no.json +2 -2
  269. package/locale/no.json.js +2 -2
  270. package/locale/nqo/package.json +16 -0
  271. package/locale/nqo.json +159 -0
  272. package/locale/nqo.json.d.ts +4 -0
  273. package/locale/nqo.json.js +159 -0
  274. package/locale/om/package.json +16 -0
  275. package/locale/om.json +213 -0
  276. package/locale/om.json.d.ts +4 -0
  277. package/locale/om.json.js +213 -0
  278. package/locale/or.json +1 -1
  279. package/locale/or.json.js +1 -1
  280. package/locale/pl.json +59 -0
  281. package/locale/pl.json.js +59 -0
  282. package/locale/qu.json +46 -46
  283. package/locale/qu.json.js +46 -46
  284. package/locale/rhg/package.json +16 -0
  285. package/locale/rhg.json +159 -0
  286. package/locale/rhg.json.d.ts +4 -0
  287. package/locale/rhg.json.js +159 -0
  288. package/locale/sl.json +12 -12
  289. package/locale/sl.json.js +12 -12
  290. package/locale/sr-Cyrl-BA.json +2 -2
  291. package/locale/sr-Cyrl-BA.json.js +2 -2
  292. package/locale/sr-Latn-BA.json +2 -2
  293. package/locale/sr-Latn-BA.json.js +2 -2
  294. package/locale/sv.json +1 -1
  295. package/locale/sv.json.js +1 -1
  296. package/locale/syr/package.json +16 -0
  297. package/locale/syr.json +303 -0
  298. package/locale/syr.json.d.ts +4 -0
  299. package/locale/syr.json.js +303 -0
  300. package/locale/ti.json +6 -6
  301. package/locale/ti.json.js +6 -6
  302. package/locale/tn/package.json +16 -0
  303. package/locale/tn.json +159 -0
  304. package/locale/tn.json.d.ts +4 -0
  305. package/locale/tn.json.js +159 -0
  306. package/locale/to.json +26 -26
  307. package/locale/to.json.js +26 -26
  308. package/locale/uk.json +1 -1
  309. package/locale/uk.json.js +1 -1
  310. package/locale/ur-IN.json +9 -6
  311. package/locale/ur-IN.json.js +9 -6
  312. package/locale/vec/package.json +16 -0
  313. package/locale/vec.json +267 -0
  314. package/locale/vec.json.d.ts +4 -0
  315. package/locale/vec.json.js +267 -0
  316. package/locale/xnr/package.json +16 -0
  317. package/locale/xnr.json +159 -0
  318. package/locale/xnr.json.d.ts +4 -0
  319. package/locale/xnr.json.js +159 -0
  320. package/locale/yo-BJ.json +17 -17
  321. package/locale/yo-BJ.json.js +17 -17
  322. package/locale/yo.json +17 -17
  323. package/locale/yo.json.js +17 -17
  324. package/locale-more-styles/pl/long-time.json +30 -0
  325. package/locale-more-styles/pl/mini.json +9 -0
  326. package/locale-more-styles/pl/now.json +7 -0
  327. package/locale-more-styles/pl/short-time.json +12 -0
  328. package/modules/LocaleDataStore.js +2 -3
  329. package/modules/LocaleDataStore.js.map +1 -1
  330. package/modules/PropTypes.js +11 -7
  331. package/modules/PropTypes.js.map +1 -1
  332. package/modules/TimeAgo.js +135 -174
  333. package/modules/TimeAgo.js.map +1 -1
  334. package/modules/TimeAgo.test.js +126 -115
  335. package/modules/TimeAgo.test.js.map +1 -1
  336. package/modules/cache.js +6 -22
  337. package/modules/cache.js.map +1 -1
  338. package/modules/cache.test.js.map +1 -1
  339. package/modules/isStyleObject.js +9 -7
  340. package/modules/isStyleObject.js.map +1 -1
  341. package/modules/isStyleObject.test.js.map +1 -1
  342. package/modules/locale.js +6 -16
  343. package/modules/locale.js.map +1 -1
  344. package/modules/locale.test.js +0 -4
  345. package/modules/locale.test.js.map +1 -1
  346. package/modules/round.js +2 -3
  347. package/modules/round.js.map +1 -1
  348. package/modules/steps/approximate.js +6 -2
  349. package/modules/steps/approximate.js.map +1 -1
  350. package/modules/steps/approximate.test.js +0 -2
  351. package/modules/steps/approximate.test.js.map +1 -1
  352. package/modules/steps/getStep.js +36 -48
  353. package/modules/steps/getStep.js.map +1 -1
  354. package/modules/steps/getStep.test.js +6 -2
  355. package/modules/steps/getStep.test.js.map +1 -1
  356. package/modules/steps/getStepDenominator.js +2 -3
  357. package/modules/steps/getStepDenominator.js.map +1 -1
  358. package/modules/steps/getStepDenominator.test.js.map +1 -1
  359. package/modules/steps/getStepMinTime.js +17 -29
  360. package/modules/steps/getStepMinTime.js.map +1 -1
  361. package/modules/steps/getStepMinTime.test.js.map +1 -1
  362. package/modules/steps/getTimeToNextUpdate.js +19 -31
  363. package/modules/steps/getTimeToNextUpdate.js.map +1 -1
  364. package/modules/steps/getTimeToNextUpdate.test.js +27 -18
  365. package/modules/steps/getTimeToNextUpdate.test.js.map +1 -1
  366. package/modules/steps/getTimeToNextUpdateForUnit.js +4 -10
  367. package/modules/steps/getTimeToNextUpdateForUnit.js.map +1 -1
  368. package/modules/steps/getTimeToNextUpdateForUnit.test.js +0 -4
  369. package/modules/steps/getTimeToNextUpdateForUnit.test.js.map +1 -1
  370. package/modules/steps/helpers.js +1 -1
  371. package/modules/steps/helpers.js.map +1 -1
  372. package/modules/steps/helpers.test.js.map +1 -1
  373. package/modules/steps/index.js +2 -1
  374. package/modules/steps/index.js.map +1 -1
  375. package/modules/steps/renameLegacyProperties.js +6 -13
  376. package/modules/steps/renameLegacyProperties.js.map +1 -1
  377. package/modules/steps/renameLegacyProperties.test.js.map +1 -1
  378. package/modules/steps/round.js.map +1 -1
  379. package/modules/steps/round.test.js +0 -3
  380. package/modules/steps/round.test.js.map +1 -1
  381. package/modules/steps/units.js +5 -9
  382. package/modules/steps/units.js.map +1 -1
  383. package/modules/style/approximate.js +5 -1
  384. package/modules/style/approximate.js.map +1 -1
  385. package/modules/style/approximateTime.js +6 -2
  386. package/modules/style/approximateTime.js.map +1 -1
  387. package/modules/style/approximateTime.test.js +115 -70
  388. package/modules/style/approximateTime.test.js.map +1 -1
  389. package/modules/style/getStyleByName.js +4 -17
  390. package/modules/style/getStyleByName.js.map +1 -1
  391. package/modules/style/mini.js +8 -4
  392. package/modules/style/mini.js.map +1 -1
  393. package/modules/style/mini.test.js +14 -20
  394. package/modules/style/mini.test.js.map +1 -1
  395. package/modules/style/miniMinute.js +6 -6
  396. package/modules/style/miniMinute.js.map +1 -1
  397. package/modules/style/miniMinute.test.js +10 -12
  398. package/modules/style/miniMinute.test.js.map +1 -1
  399. package/modules/style/miniMinuteNow.js +6 -6
  400. package/modules/style/miniMinuteNow.js.map +1 -1
  401. package/modules/style/miniMinuteNow.test.js +10 -12
  402. package/modules/style/miniMinuteNow.test.js.map +1 -1
  403. package/modules/style/miniNow.js +6 -6
  404. package/modules/style/miniNow.js.map +1 -1
  405. package/modules/style/miniNow.test.js +10 -12
  406. package/modules/style/miniNow.test.js.map +1 -1
  407. package/modules/style/renameLegacyProperties.js +8 -10
  408. package/modules/style/renameLegacyProperties.js.map +1 -1
  409. package/modules/style/renameLegacyProperties.test.js +0 -1
  410. package/modules/style/renameLegacyProperties.test.js.map +1 -1
  411. package/modules/style/round.js +3 -2
  412. package/modules/style/round.js.map +1 -1
  413. package/modules/style/round.test.js +50 -62
  414. package/modules/style/round.test.js.map +1 -1
  415. package/modules/style/roundMinute.js +8 -7
  416. package/modules/style/roundMinute.js.map +1 -1
  417. package/modules/style/roundMinute.test.js +19 -22
  418. package/modules/style/roundMinute.test.js.map +1 -1
  419. package/modules/style/twitter.js +35 -32
  420. package/modules/style/twitter.js.map +1 -1
  421. package/modules/style/twitter.test.js +48 -50
  422. package/modules/style/twitter.test.js.map +1 -1
  423. package/modules/style/twitterFirstMinute.js +8 -7
  424. package/modules/style/twitterFirstMinute.js.map +1 -1
  425. package/modules/style/twitterFirstMinute.test.js +15 -18
  426. package/modules/style/twitterFirstMinute.test.js.map +1 -1
  427. package/modules/style/twitterMinute.js +6 -6
  428. package/modules/style/twitterMinute.js.map +1 -1
  429. package/modules/style/twitterMinute.test.js +19 -20
  430. package/modules/style/twitterMinute.test.js.map +1 -1
  431. package/modules/style/twitterMinuteNow.js +6 -6
  432. package/modules/style/twitterMinuteNow.js.map +1 -1
  433. package/modules/style/twitterMinuteNow.test.js +19 -20
  434. package/modules/style/twitterMinuteNow.test.js.map +1 -1
  435. package/modules/style/twitterNow.js +6 -6
  436. package/modules/style/twitterNow.js.map +1 -1
  437. package/modules/style/twitterNow.test.js +17 -19
  438. package/modules/style/twitterNow.test.js.map +1 -1
  439. package/package.json +261 -4
@@ -4,45 +4,38 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = getStepMinTime;
7
-
8
7
  var _units = require("./units.js");
9
-
10
8
  var _round = require("../round.js");
11
-
12
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
13
-
9
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
14
10
  function getStepMinTime(step, _ref) {
15
11
  var prevStep = _ref.prevStep,
16
- timestamp = _ref.timestamp,
17
- now = _ref.now,
18
- future = _ref.future,
19
- round = _ref.round;
20
- var minTime; // "threshold_for_xxx" is a legacy property.
21
-
12
+ timestamp = _ref.timestamp,
13
+ now = _ref.now,
14
+ future = _ref.future,
15
+ round = _ref.round;
16
+ var minTime;
17
+ // "threshold_for_xxx" is a legacy property.
22
18
  if (prevStep) {
23
19
  if (prevStep.id || prevStep.unit) {
24
20
  minTime = step["threshold_for_".concat(prevStep.id || prevStep.unit)];
25
21
  }
26
22
  }
27
-
28
23
  if (minTime === undefined) {
29
24
  // "threshold" is a legacy property.
30
25
  if (step.threshold !== undefined) {
31
26
  // "threshold" is a legacy name for "minTime".
32
- minTime = step.threshold; // "threshold" function is deprecated.
33
-
27
+ minTime = step.threshold;
28
+ // "threshold" function is deprecated.
34
29
  if (typeof minTime === 'function') {
35
30
  minTime = minTime(now, future);
36
31
  }
37
32
  }
38
33
  }
39
-
40
34
  if (minTime === undefined) {
41
35
  minTime = step.minTime;
42
- } // A deprecated way of specifying a different threshold
36
+ }
37
+ // A deprecated way of specifying a different threshold
43
38
  // depending on the previous step's unit.
44
-
45
-
46
39
  if (_typeof(minTime) === 'object') {
47
40
  if (prevStep && prevStep.id && minTime[prevStep.id] !== undefined) {
48
41
  minTime = minTime[prevStep.id];
@@ -50,7 +43,6 @@ function getStepMinTime(step, _ref) {
50
43
  minTime = minTime["default"];
51
44
  }
52
45
  }
53
-
54
46
  if (typeof minTime === 'function') {
55
47
  minTime = minTime(timestamp, {
56
48
  future: future,
@@ -60,10 +52,9 @@ function getStepMinTime(step, _ref) {
60
52
  });
61
53
  }
62
54
  });
63
- } // Evaluate the `test()` function.
55
+ }
56
+ // Evaluate the `test()` function.
64
57
  // `test()` function is deprecated.
65
-
66
-
67
58
  if (minTime === undefined) {
68
59
  if (step.test) {
69
60
  if (step.test(timestamp, {
@@ -78,7 +69,6 @@ function getStepMinTime(step, _ref) {
78
69
  }
79
70
  }
80
71
  }
81
-
82
72
  if (minTime === undefined) {
83
73
  if (prevStep) {
84
74
  if (step.formatAs && prevStep.formatAs) {
@@ -90,33 +80,28 @@ function getStepMinTime(step, _ref) {
90
80
  // The first step's `minTime` is `0` by default.
91
81
  minTime = 0;
92
82
  }
93
- } // Warn if no `minTime` was defined or could be deduced.
94
-
95
-
83
+ }
84
+ // Warn if no `minTime` was defined or could be deduced.
96
85
  if (minTime === undefined) {
97
86
  console.warn('[javascript-time-ago] A step should specify `minTime`:\n' + JSON.stringify(step, null, 2));
98
87
  }
99
-
100
88
  return minTime;
101
89
  }
102
-
103
90
  function _getMinTimeForUnit(toUnit, fromUnit, _ref2) {
104
91
  var round = _ref2.round;
105
- var toUnitAmount = (0, _units.getSecondsInUnit)(toUnit); // if (!fromUnit) {
92
+ var toUnitAmount = (0, _units.getSecondsInUnit)(toUnit);
93
+ // if (!fromUnit) {
106
94
  // return toUnitAmount;
107
95
  // }
108
96
  // if (!fromUnit) {
109
97
  // fromUnit = getPreviousUnitFor(toUnit)
110
98
  // }
111
-
112
99
  var fromUnitAmount;
113
-
114
100
  if (fromUnit === 'now') {
115
101
  fromUnitAmount = (0, _units.getSecondsInUnit)(toUnit);
116
102
  } else {
117
103
  fromUnitAmount = (0, _units.getSecondsInUnit)(fromUnit);
118
104
  }
119
-
120
105
  if (toUnitAmount !== undefined && fromUnitAmount !== undefined) {
121
106
  return toUnitAmount - fromUnitAmount * (1 - (0, _round.getDiffRatioToNextRoundedNumber)(round));
122
107
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getStepMinTime.js","names":["getStepMinTime","step","prevStep","timestamp","now","future","round","minTime","id","unit","undefined","threshold","getMinTimeForUnit","toUnit","fromUnit","formatAs","test","console","warn","JSON","stringify","toUnitAmount","getSecondsInUnit","fromUnitAmount","getDiffRatioToNextRoundedNumber"],"sources":["../../source/steps/getStepMinTime.js"],"sourcesContent":["import { getSecondsInUnit } from './units.js'\r\nimport { getDiffRatioToNextRoundedNumber } from '../round.js'\r\n\r\nexport default function getStepMinTime(step, {\r\n\tprevStep,\r\n\ttimestamp,\r\n\t// `now` argument is used in a deprecated `step.test()` function.\r\n\tnow,\r\n\tfuture,\r\n\tround\r\n}) {\r\n\tlet minTime\r\n\t// \"threshold_for_xxx\" is a legacy property.\r\n\tif (prevStep) {\r\n\t\tif (prevStep.id || prevStep.unit) {\r\n\t\t\tminTime = step[`threshold_for_${prevStep.id || prevStep.unit}`]\r\n\t\t}\r\n\t}\r\n\tif (minTime === undefined) {\r\n\t\t// \"threshold\" is a legacy property.\r\n\t\tif (step.threshold !== undefined) {\r\n\t\t\t// \"threshold\" is a legacy name for \"minTime\".\r\n\t\t\tminTime = step.threshold\r\n\t\t\t// \"threshold\" function is deprecated.\r\n\t\t\tif (typeof minTime === 'function') {\r\n\t\t\t\tminTime = minTime(now, future)\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tif (minTime === undefined) {\r\n\t\tminTime = step.minTime\r\n\t}\r\n\t// A deprecated way of specifying a different threshold\r\n\t// depending on the previous step's unit.\r\n\tif (typeof minTime === 'object') {\r\n\t\tif (prevStep && prevStep.id && minTime[prevStep.id] !== undefined) {\r\n\t\t\tminTime = minTime[prevStep.id]\r\n\t\t} else {\r\n\t\t\tminTime = minTime.default\r\n\t\t}\r\n\t}\r\n\tif (typeof minTime === 'function') {\r\n\t\tminTime = minTime(timestamp, {\r\n\t\t\tfuture,\r\n\t\t\tgetMinTimeForUnit(toUnit, fromUnit) {\r\n\t\t\t\treturn getMinTimeForUnit(\r\n\t\t\t\t\ttoUnit,\r\n\t\t\t\t\tfromUnit || prevStep && prevStep.formatAs,\r\n\t\t\t\t\t{ round }\r\n\t\t\t\t)\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\t// Evaluate the `test()` function.\r\n\t// `test()` function is deprecated.\r\n\tif (minTime === undefined) {\r\n\t\tif (step.test) {\r\n\t\t\tif (step.test(timestamp, {\r\n\t\t\t\tnow,\r\n\t\t\t\tfuture\r\n\t\t\t})) {\r\n\t\t\t\t// `0` threshold always passes.\r\n\t\t\t\tminTime = 0\r\n\t\t\t} else {\r\n\t\t\t\t// `MAX_SAFE_INTEGER` threshold won't ever pass in real life.\r\n\t\t\t\tminTime = 9007199254740991 // Number.MAX_SAFE_INTEGER\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tif (minTime === undefined) {\r\n\t\tif (prevStep) {\r\n\t\t\tif (step.formatAs && prevStep.formatAs) {\r\n\t\t\t\tminTime = getMinTimeForUnit(step.formatAs, prevStep.formatAs, { round })\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\t// The first step's `minTime` is `0` by default.\r\n\t\t\tminTime = 0\r\n\t\t}\r\n\t}\r\n\t// Warn if no `minTime` was defined or could be deduced.\r\n\tif (minTime === undefined) {\r\n\t\tconsole.warn('[javascript-time-ago] A step should specify `minTime`:\\n' + JSON.stringify(step, null, 2))\r\n\t}\r\n\treturn minTime\r\n}\r\n\r\nfunction getMinTimeForUnit(toUnit, fromUnit, { round }) {\r\n\tconst toUnitAmount = getSecondsInUnit(toUnit)\r\n\t// if (!fromUnit) {\r\n\t// \treturn toUnitAmount;\r\n\t// }\r\n\t// if (!fromUnit) {\r\n\t// \tfromUnit = getPreviousUnitFor(toUnit)\r\n\t// }\r\n\tlet fromUnitAmount\r\n\tif (fromUnit === 'now') {\r\n\t\tfromUnitAmount = getSecondsInUnit(toUnit)\r\n\t} else {\r\n\t\tfromUnitAmount = getSecondsInUnit(fromUnit)\r\n\t}\r\n\tif (toUnitAmount !== undefined && fromUnitAmount !== undefined) {\r\n\t\treturn toUnitAmount - fromUnitAmount * (1 - getDiffRatioToNextRoundedNumber(round))\r\n\t}\r\n}"],"mappings":"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"}
1
+ {"version":3,"file":"getStepMinTime.js","names":["_units","require","_round","_typeof","o","Symbol","iterator","constructor","prototype","getStepMinTime","step","_ref","prevStep","timestamp","now","future","round","minTime","id","unit","concat","undefined","threshold","getMinTimeForUnit","toUnit","fromUnit","formatAs","test","console","warn","JSON","stringify","_ref2","toUnitAmount","getSecondsInUnit","fromUnitAmount","getDiffRatioToNextRoundedNumber"],"sources":["../../source/steps/getStepMinTime.js"],"sourcesContent":["import { getSecondsInUnit } from './units.js'\r\nimport { getDiffRatioToNextRoundedNumber } from '../round.js'\r\n\r\nexport default function getStepMinTime(step, {\r\n\tprevStep,\r\n\ttimestamp,\r\n\t// `now` argument is used in a deprecated `step.test()` function.\r\n\tnow,\r\n\tfuture,\r\n\tround\r\n}) {\r\n\tlet minTime\r\n\t// \"threshold_for_xxx\" is a legacy property.\r\n\tif (prevStep) {\r\n\t\tif (prevStep.id || prevStep.unit) {\r\n\t\t\tminTime = step[`threshold_for_${prevStep.id || prevStep.unit}`]\r\n\t\t}\r\n\t}\r\n\tif (minTime === undefined) {\r\n\t\t// \"threshold\" is a legacy property.\r\n\t\tif (step.threshold !== undefined) {\r\n\t\t\t// \"threshold\" is a legacy name for \"minTime\".\r\n\t\t\tminTime = step.threshold\r\n\t\t\t// \"threshold\" function is deprecated.\r\n\t\t\tif (typeof minTime === 'function') {\r\n\t\t\t\tminTime = minTime(now, future)\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tif (minTime === undefined) {\r\n\t\tminTime = step.minTime\r\n\t}\r\n\t// A deprecated way of specifying a different threshold\r\n\t// depending on the previous step's unit.\r\n\tif (typeof minTime === 'object') {\r\n\t\tif (prevStep && prevStep.id && minTime[prevStep.id] !== undefined) {\r\n\t\t\tminTime = minTime[prevStep.id]\r\n\t\t} else {\r\n\t\t\tminTime = minTime.default\r\n\t\t}\r\n\t}\r\n\tif (typeof minTime === 'function') {\r\n\t\tminTime = minTime(timestamp, {\r\n\t\t\tfuture,\r\n\t\t\tgetMinTimeForUnit(toUnit, fromUnit) {\r\n\t\t\t\treturn getMinTimeForUnit(\r\n\t\t\t\t\ttoUnit,\r\n\t\t\t\t\tfromUnit || prevStep && prevStep.formatAs,\r\n\t\t\t\t\t{ round }\r\n\t\t\t\t)\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\t// Evaluate the `test()` function.\r\n\t// `test()` function is deprecated.\r\n\tif (minTime === undefined) {\r\n\t\tif (step.test) {\r\n\t\t\tif (step.test(timestamp, {\r\n\t\t\t\tnow,\r\n\t\t\t\tfuture\r\n\t\t\t})) {\r\n\t\t\t\t// `0` threshold always passes.\r\n\t\t\t\tminTime = 0\r\n\t\t\t} else {\r\n\t\t\t\t// `MAX_SAFE_INTEGER` threshold won't ever pass in real life.\r\n\t\t\t\tminTime = 9007199254740991 // Number.MAX_SAFE_INTEGER\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tif (minTime === undefined) {\r\n\t\tif (prevStep) {\r\n\t\t\tif (step.formatAs && prevStep.formatAs) {\r\n\t\t\t\tminTime = getMinTimeForUnit(step.formatAs, prevStep.formatAs, { round })\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\t// The first step's `minTime` is `0` by default.\r\n\t\t\tminTime = 0\r\n\t\t}\r\n\t}\r\n\t// Warn if no `minTime` was defined or could be deduced.\r\n\tif (minTime === undefined) {\r\n\t\tconsole.warn('[javascript-time-ago] A step should specify `minTime`:\\n' + JSON.stringify(step, null, 2))\r\n\t}\r\n\treturn minTime\r\n}\r\n\r\nfunction getMinTimeForUnit(toUnit, fromUnit, { round }) {\r\n\tconst toUnitAmount = getSecondsInUnit(toUnit)\r\n\t// if (!fromUnit) {\r\n\t// \treturn toUnitAmount;\r\n\t// }\r\n\t// if (!fromUnit) {\r\n\t// \tfromUnit = getPreviousUnitFor(toUnit)\r\n\t// }\r\n\tlet fromUnitAmount\r\n\tif (fromUnit === 'now') {\r\n\t\tfromUnitAmount = getSecondsInUnit(toUnit)\r\n\t} else {\r\n\t\tfromUnitAmount = getSecondsInUnit(fromUnit)\r\n\t}\r\n\tif (toUnitAmount !== undefined && fromUnitAmount !== undefined) {\r\n\t\treturn toUnitAmount - fromUnitAmount * (1 - getDiffRatioToNextRoundedNumber(round))\r\n\t}\r\n}"],"mappings":"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","ignoreList":[]}
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  var _getStepMinTime = _interopRequireDefault(require("./getStepMinTime.js"));
4
-
5
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
6
-
4
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
7
5
  describe('getStepMinTime', function () {
8
6
  it('should support `step.test()` function (returns true)', function () {
9
7
  (0, _getStepMinTime["default"])({
@@ -1 +1 @@
1
- {"version":3,"file":"getStepMinTime.test.js","names":["describe","it","getStepMinTime","test","prevStep","minTime","should","equal"],"sources":["../../source/steps/getStepMinTime.test.js"],"sourcesContent":["import getStepMinTime from './getStepMinTime.js'\r\n\r\ndescribe('getStepMinTime', () => {\r\n\tit('should support `step.test()` function (returns true)', () => {\r\n\t\tgetStepMinTime({\r\n\t\t\ttest: () => true\r\n\t\t}, {\r\n\t\t\tprevStep: { minTime: 1 }\r\n\t\t}).should.equal(0)\r\n\t})\r\n\r\n\tit('should support `step.test()` function (returns false)', () => {\r\n\t\tgetStepMinTime({\r\n\t\t\ttest: () => false\r\n\t\t}, {\r\n\t\t\tprevStep: { minTime: 1 }\r\n\t\t}).should.equal(9007199254740991)\r\n\t})\r\n})"],"mappings":";;AAAA;;;;AAEAA,QAAQ,CAAC,gBAAD,EAAmB,YAAM;EAChCC,EAAE,CAAC,sDAAD,EAAyD,YAAM;IAChE,IAAAC,0BAAA,EAAe;MACdC,IAAI,EAAE;QAAA,OAAM,IAAN;MAAA;IADQ,CAAf,EAEG;MACFC,QAAQ,EAAE;QAAEC,OAAO,EAAE;MAAX;IADR,CAFH,EAIGC,MAJH,CAIUC,KAJV,CAIgB,CAJhB;EAKA,CANC,CAAF;EAQAN,EAAE,CAAC,uDAAD,EAA0D,YAAM;IACjE,IAAAC,0BAAA,EAAe;MACdC,IAAI,EAAE;QAAA,OAAM,KAAN;MAAA;IADQ,CAAf,EAEG;MACFC,QAAQ,EAAE;QAAEC,OAAO,EAAE;MAAX;IADR,CAFH,EAIGC,MAJH,CAIUC,KAJV,CAIgB,gBAJhB;EAKA,CANC,CAAF;AAOA,CAhBO,CAAR"}
1
+ {"version":3,"file":"getStepMinTime.test.js","names":["_getStepMinTime","_interopRequireDefault","require","e","__esModule","describe","it","getStepMinTime","test","prevStep","minTime","should","equal"],"sources":["../../source/steps/getStepMinTime.test.js"],"sourcesContent":["import getStepMinTime from './getStepMinTime.js'\r\n\r\ndescribe('getStepMinTime', () => {\r\n\tit('should support `step.test()` function (returns true)', () => {\r\n\t\tgetStepMinTime({\r\n\t\t\ttest: () => true\r\n\t\t}, {\r\n\t\t\tprevStep: { minTime: 1 }\r\n\t\t}).should.equal(0)\r\n\t})\r\n\r\n\tit('should support `step.test()` function (returns false)', () => {\r\n\t\tgetStepMinTime({\r\n\t\t\ttest: () => false\r\n\t\t}, {\r\n\t\t\tprevStep: { minTime: 1 }\r\n\t\t}).should.equal(9007199254740991)\r\n\t})\r\n})"],"mappings":";;AAAA,IAAAA,eAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAgD,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,gBAAAA,CAAA;AAEhDE,QAAQ,CAAC,gBAAgB,EAAE,YAAM;EAChCC,EAAE,CAAC,sDAAsD,EAAE,YAAM;IAChE,IAAAC,0BAAc,EAAC;MACdC,IAAI,EAAE,SAAAA,KAAA;QAAA,OAAM,IAAI;MAAA;IACjB,CAAC,EAAE;MACFC,QAAQ,EAAE;QAAEC,OAAO,EAAE;MAAE;IACxB,CAAC,CAAC,CAACC,MAAM,CAACC,KAAK,CAAC,CAAC,CAAC;EACnB,CAAC,CAAC;EAEFN,EAAE,CAAC,uDAAuD,EAAE,YAAM;IACjE,IAAAC,0BAAc,EAAC;MACdC,IAAI,EAAE,SAAAA,KAAA;QAAA,OAAM,KAAK;MAAA;IAClB,CAAC,EAAE;MACFC,QAAQ,EAAE;QAAEC,OAAO,EAAE;MAAE;IACxB,CAAC,CAAC,CAACC,MAAM,CAACC,KAAK,CAAC,gBAAgB,CAAC;EAClC,CAAC,CAAC;AACH,CAAC,CAAC","ignoreList":[]}
@@ -7,18 +7,14 @@ exports.INFINITY = void 0;
7
7
  exports["default"] = getTimeToNextUpdate;
8
8
  exports.getStepChangesAt = getStepChangesAt;
9
9
  exports.getTimeToStepChange = getTimeToStepChange;
10
-
11
10
  var _getTimeToNextUpdateForUnit2 = _interopRequireDefault(require("./getTimeToNextUpdateForUnit.js"));
12
-
13
11
  var _getStepMinTime = _interopRequireDefault(require("./getStepMinTime.js"));
14
-
15
12
  var _round = require("../round.js");
16
-
17
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
18
-
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
19
14
  // A thousand years is practically a metaphor for "infinity".
20
15
  var YEAR = 365 * 24 * 60 * 60 * 1000;
21
- var INFINITY = 1000 * YEAR;
16
+ var INFINITY = exports.INFINITY = 1000 * YEAR;
17
+
22
18
  /**
23
19
  * Gets the time to next update for a date and a step.
24
20
  * @param {number} date — The date passed to `.format()`, converted to a timestamp.
@@ -30,23 +26,21 @@ var INFINITY = 1000 * YEAR;
30
26
  * @param {string} [options.round] - (undocumented) Rounding mechanism.
31
27
  * @return {number} [timeToNextUpdate]
32
28
  */
33
-
34
- exports.INFINITY = INFINITY;
35
-
36
29
  function getTimeToNextUpdate(date, step, _ref) {
37
30
  var prevStep = _ref.prevStep,
38
- nextStep = _ref.nextStep,
39
- now = _ref.now,
40
- future = _ref.future,
41
- round = _ref.round;
31
+ nextStep = _ref.nextStep,
32
+ now = _ref.now,
33
+ future = _ref.future,
34
+ round = _ref.round;
42
35
  var timestamp = date.getTime ? date.getTime() : date;
43
-
44
36
  var getTimeToNextUpdateForUnit = function getTimeToNextUpdateForUnit(unit) {
45
37
  return (0, _getTimeToNextUpdateForUnit2["default"])(unit, timestamp, {
46
38
  now: now,
47
39
  round: round
48
40
  });
49
- }; // For future dates, steps move from the last one to the first one,
41
+ };
42
+
43
+ // For future dates, steps move from the last one to the first one,
50
44
  // while for past dates, steps move from the first one to the last one,
51
45
  // due to the fact that time flows in one direction,
52
46
  // and future dates' interval naturally becomes smaller
@@ -60,24 +54,19 @@ function getTimeToNextUpdate(date, step, _ref) {
60
54
  // from the current step to the next step,
61
55
  // therefore check the `minTime` of the next step.
62
56
  //
63
-
64
-
65
57
  var timeToStepChange = getTimeToStepChange(future ? step : nextStep, timestamp, {
66
58
  future: future,
67
59
  now: now,
68
60
  round: round,
69
- prevStep: future ? prevStep : step // isFirstStep: future && isFirstStep
70
-
61
+ prevStep: future ? prevStep : step
62
+ // isFirstStep: future && isFirstStep
71
63
  });
72
-
73
64
  if (timeToStepChange === undefined) {
74
65
  // Can't reliably determine "time to next update"
75
66
  // if not all of the steps provide `minTime`.
76
67
  return;
77
68
  }
78
-
79
69
  var timeToNextUpdate;
80
-
81
70
  if (step) {
82
71
  if (step.getTimeToNextUpdate) {
83
72
  timeToNextUpdate = step.getTimeToNextUpdate(timestamp, {
@@ -88,11 +77,9 @@ function getTimeToNextUpdate(date, step, _ref) {
88
77
  round: round
89
78
  });
90
79
  }
91
-
92
80
  if (timeToNextUpdate === undefined) {
93
81
  // "unit" is now called "formatAs".
94
82
  var unit = step.unit || step.formatAs;
95
-
96
83
  if (unit) {
97
84
  // For some units, like "now", there's no defined amount of seconds in them.
98
85
  // In such cases, `getTimeToNextUpdateForUnit()` returns `undefined`,
@@ -102,19 +89,16 @@ function getTimeToNextUpdate(date, step, _ref) {
102
89
  }
103
90
  }
104
91
  }
105
-
106
92
  if (timeToNextUpdate === undefined) {
107
93
  return timeToStepChange;
108
94
  }
109
-
110
95
  return Math.min(timeToNextUpdate, timeToStepChange);
111
96
  }
112
-
113
97
  function getStepChangesAt(currentOrNextStep, timestamp, _ref2) {
114
98
  var now = _ref2.now,
115
- future = _ref2.future,
116
- round = _ref2.round,
117
- prevStep = _ref2.prevStep;
99
+ future = _ref2.future,
100
+ round = _ref2.round,
101
+ prevStep = _ref2.prevStep;
118
102
  // The first step's `minTime` is `0` by default.
119
103
  // It doesn't "change" steps at zero point
120
104
  // but it does change the wording when switching
@@ -127,11 +111,9 @@ function getStepChangesAt(currentOrNextStep, timestamp, _ref2) {
127
111
  round: round,
128
112
  prevStep: prevStep
129
113
  });
130
-
131
114
  if (minTime === undefined) {
132
115
  return;
133
116
  }
134
-
135
117
  if (future) {
136
118
  // The step changes to the previous step
137
119
  // as soon as `timestamp - now` becomes
@@ -145,21 +127,19 @@ function getStepChangesAt(currentOrNextStep, timestamp, _ref2) {
145
127
  // equal to `minTime` of the next step:
146
128
  // `now - timestamp === minTime`
147
129
  // => `now === timestamp + minTime`.
130
+
148
131
  // This is a special case when double-update could be skipped.
149
132
  if (minTime === 0 && timestamp === now) {
150
133
  return INFINITY;
151
134
  }
152
-
153
135
  return timestamp + minTime * 1000;
154
136
  }
155
137
  }
156
-
157
138
  function getTimeToStepChange(step, timestamp, _ref3) {
158
139
  var now = _ref3.now,
159
- future = _ref3.future,
160
- round = _ref3.round,
161
- prevStep = _ref3.prevStep;
162
-
140
+ future = _ref3.future,
141
+ round = _ref3.round,
142
+ prevStep = _ref3.prevStep;
163
143
  if (step) {
164
144
  var stepChangesAt = getStepChangesAt(step, timestamp, {
165
145
  now: now,
@@ -167,11 +147,9 @@ function getTimeToStepChange(step, timestamp, _ref3) {
167
147
  round: round,
168
148
  prevStep: prevStep
169
149
  });
170
-
171
150
  if (stepChangesAt === undefined) {
172
151
  return;
173
152
  }
174
-
175
153
  return stepChangesAt - now;
176
154
  } else {
177
155
  if (future) {
@@ -1 +1 @@
1
- {"version":3,"file":"getTimeToNextUpdate.js","names":["YEAR","INFINITY","getTimeToNextUpdate","date","step","prevStep","nextStep","now","future","round","timestamp","getTime","getTimeToNextUpdateForUnit","unit","_getTimeToNextUpdateForUnit","timeToStepChange","getTimeToStepChange","undefined","timeToNextUpdate","getRoundFunction","formatAs","Math","min","getStepChangesAt","currentOrNextStep","minTime","getStepMinTime","stepChangesAt"],"sources":["../../source/steps/getTimeToNextUpdate.js"],"sourcesContent":["import _getTimeToNextUpdateForUnit from './getTimeToNextUpdateForUnit.js'\r\nimport getStepMinTime from './getStepMinTime.js'\r\nimport { getRoundFunction } from '../round.js'\r\n\r\n// A thousand years is practically a metaphor for \"infinity\".\r\nconst YEAR = 365 * 24 * 60 * 60 * 1000\r\nexport const INFINITY = 1000 * YEAR\r\n\r\n/**\r\n * Gets the time to next update for a date and a step.\r\n * @param {number} date — The date passed to `.format()`, converted to a timestamp.\r\n * @param {object} step\r\n * @param {object} [options.previousStep]\r\n * @param {object} [options.nextStep]\r\n * @param {number} options.now\r\n * @param {boolean} options.future\r\n * @param {string} [options.round] - (undocumented) Rounding mechanism.\r\n * @return {number} [timeToNextUpdate]\r\n */\r\nexport default function getTimeToNextUpdate(date, step, { prevStep, nextStep, now, future, round }) {\r\n\tconst timestamp = date.getTime ? date.getTime() : date\r\n\r\n\tconst getTimeToNextUpdateForUnit = (unit) => _getTimeToNextUpdateForUnit(unit, timestamp, { now, round })\r\n\r\n\t// For future dates, steps move from the last one to the first one,\r\n\t// while for past dates, steps move from the first one to the last one,\r\n\t// due to the fact that time flows in one direction,\r\n\t// and future dates' interval naturally becomes smaller\r\n\t// while past dates' interval naturally grows larger.\r\n\t//\r\n\t// For future dates, it's the transition\r\n\t// from the current step to the previous step,\r\n\t// therefore check the `minTime` of the current step.\r\n\t//\r\n\t// For past dates, it's the transition\r\n\t// from the current step to the next step,\r\n\t// therefore check the `minTime` of the next step.\r\n\t//\r\n\tconst timeToStepChange = getTimeToStepChange(future ? step : nextStep, timestamp, {\r\n\t\tfuture,\r\n\t\tnow,\r\n\t\tround,\r\n\t\tprevStep: future ? prevStep : step,\r\n\t\t// isFirstStep: future && isFirstStep\r\n\t})\r\n\r\n\tif (timeToStepChange === undefined) {\r\n\t\t// Can't reliably determine \"time to next update\"\r\n\t\t// if not all of the steps provide `minTime`.\r\n\t\treturn\r\n\t}\r\n\r\n\tlet timeToNextUpdate\r\n\r\n\tif (step) {\r\n\t\tif (step.getTimeToNextUpdate) {\r\n\t\t\ttimeToNextUpdate = step.getTimeToNextUpdate(timestamp, {\r\n\t\t\t\tgetTimeToNextUpdateForUnit,\r\n\t\t\t\tgetRoundFunction,\r\n\t\t\t\tnow,\r\n\t\t\t\tfuture,\r\n\t\t\t\tround\r\n\t\t\t})\r\n\t\t}\r\n\r\n\t\tif (timeToNextUpdate === undefined) {\r\n\t\t\t// \"unit\" is now called \"formatAs\".\r\n\t\t\tconst unit = step.unit || step.formatAs\r\n\t\t\tif (unit) {\r\n\t\t\t\t// For some units, like \"now\", there's no defined amount of seconds in them.\r\n\t\t\t\t// In such cases, `getTimeToNextUpdateForUnit()` returns `undefined`,\r\n\t\t\t\t// and the next step's `minTime` could be used to calculate the update interval:\r\n\t\t\t\t// it will just assume that the label never changes for this step.\r\n\t\t\t\ttimeToNextUpdate = getTimeToNextUpdateForUnit(unit)\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tif (timeToNextUpdate === undefined) {\r\n\t\treturn timeToStepChange\r\n\t}\r\n\r\n\treturn Math.min(timeToNextUpdate, timeToStepChange)\r\n}\r\n\r\nexport function getStepChangesAt(currentOrNextStep, timestamp, { now, future, round, prevStep }) {\r\n\t// The first step's `minTime` is `0` by default.\r\n\t// It doesn't \"change\" steps at zero point\r\n\t// but it does change the wording when switching\r\n\t// from \"future\" to \"past\": \"in ...\" -> \"... ago\".\r\n\t// Therefore, the label should be updated at zero-point too.\r\n\tconst minTime = getStepMinTime(currentOrNextStep, { timestamp, now, future, round, prevStep })\r\n\tif (minTime === undefined) {\r\n\t\treturn\r\n\t}\r\n\tif (future) {\r\n\t\t// The step changes to the previous step\r\n\t\t// as soon as `timestamp - now` becomes\r\n\t\t// less than the `minTime` of the current step:\r\n\t\t// `timestamp - now === minTime - 1`\r\n\t\t// => `now === timestamp - minTime + 1`.\r\n\t\treturn timestamp - minTime * 1000 + 1\r\n\t} else {\r\n\t\t// The step changes to the next step\r\n\t\t// as soon as `now - timestamp` becomes\r\n\t\t// equal to `minTime` of the next step:\r\n\t\t// `now - timestamp === minTime`\r\n\t\t// => `now === timestamp + minTime`.\r\n\r\n\t\t// This is a special case when double-update could be skipped.\r\n\t\tif (minTime === 0 && timestamp === now) {\r\n\t\t\treturn INFINITY\r\n\t\t}\r\n\r\n\t\treturn timestamp + minTime * 1000\r\n\t}\r\n}\r\n\r\nexport function getTimeToStepChange(step, timestamp, {\r\n\tnow,\r\n\tfuture,\r\n\tround,\r\n\tprevStep\r\n}) {\r\n\tif (step) {\r\n\t\tconst stepChangesAt = getStepChangesAt(step, timestamp, {\r\n\t\t\tnow,\r\n\t\t\tfuture,\r\n\t\t\tround,\r\n\t\t\tprevStep\r\n\t\t})\r\n\t\tif (stepChangesAt === undefined) {\r\n\t\t\treturn\r\n\t\t}\r\n\t\treturn stepChangesAt - now\r\n\t} else {\r\n\t\tif (future) {\r\n\t\t\t// No step.\r\n\t\t\t// Update right after zero point, when it changes from \"future\" to \"past\".\r\n\t\t\treturn timestamp - now + 1\r\n\t\t} else {\r\n\t\t\t// The last step doesn't ever change when `date` is in the past.\r\n\t\t\treturn INFINITY\r\n\t\t}\r\n\t}\r\n}"],"mappings":"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"}
1
+ {"version":3,"file":"getTimeToNextUpdate.js","names":["_getTimeToNextUpdateForUnit2","_interopRequireDefault","require","_getStepMinTime","_round","e","__esModule","YEAR","INFINITY","exports","getTimeToNextUpdate","date","step","_ref","prevStep","nextStep","now","future","round","timestamp","getTime","getTimeToNextUpdateForUnit","unit","_getTimeToNextUpdateForUnit","timeToStepChange","getTimeToStepChange","undefined","timeToNextUpdate","getRoundFunction","formatAs","Math","min","getStepChangesAt","currentOrNextStep","_ref2","minTime","getStepMinTime","_ref3","stepChangesAt"],"sources":["../../source/steps/getTimeToNextUpdate.js"],"sourcesContent":["import _getTimeToNextUpdateForUnit from './getTimeToNextUpdateForUnit.js'\r\nimport getStepMinTime from './getStepMinTime.js'\r\nimport { getRoundFunction } from '../round.js'\r\n\r\n// A thousand years is practically a metaphor for \"infinity\".\r\nconst YEAR = 365 * 24 * 60 * 60 * 1000\r\nexport const INFINITY = 1000 * YEAR\r\n\r\n/**\r\n * Gets the time to next update for a date and a step.\r\n * @param {number} date — The date passed to `.format()`, converted to a timestamp.\r\n * @param {object} step\r\n * @param {object} [options.previousStep]\r\n * @param {object} [options.nextStep]\r\n * @param {number} options.now\r\n * @param {boolean} options.future\r\n * @param {string} [options.round] - (undocumented) Rounding mechanism.\r\n * @return {number} [timeToNextUpdate]\r\n */\r\nexport default function getTimeToNextUpdate(date, step, { prevStep, nextStep, now, future, round }) {\r\n\tconst timestamp = date.getTime ? date.getTime() : date\r\n\r\n\tconst getTimeToNextUpdateForUnit = (unit) => _getTimeToNextUpdateForUnit(unit, timestamp, { now, round })\r\n\r\n\t// For future dates, steps move from the last one to the first one,\r\n\t// while for past dates, steps move from the first one to the last one,\r\n\t// due to the fact that time flows in one direction,\r\n\t// and future dates' interval naturally becomes smaller\r\n\t// while past dates' interval naturally grows larger.\r\n\t//\r\n\t// For future dates, it's the transition\r\n\t// from the current step to the previous step,\r\n\t// therefore check the `minTime` of the current step.\r\n\t//\r\n\t// For past dates, it's the transition\r\n\t// from the current step to the next step,\r\n\t// therefore check the `minTime` of the next step.\r\n\t//\r\n\tconst timeToStepChange = getTimeToStepChange(future ? step : nextStep, timestamp, {\r\n\t\tfuture,\r\n\t\tnow,\r\n\t\tround,\r\n\t\tprevStep: future ? prevStep : step,\r\n\t\t// isFirstStep: future && isFirstStep\r\n\t})\r\n\r\n\tif (timeToStepChange === undefined) {\r\n\t\t// Can't reliably determine \"time to next update\"\r\n\t\t// if not all of the steps provide `minTime`.\r\n\t\treturn\r\n\t}\r\n\r\n\tlet timeToNextUpdate\r\n\r\n\tif (step) {\r\n\t\tif (step.getTimeToNextUpdate) {\r\n\t\t\ttimeToNextUpdate = step.getTimeToNextUpdate(timestamp, {\r\n\t\t\t\tgetTimeToNextUpdateForUnit,\r\n\t\t\t\tgetRoundFunction,\r\n\t\t\t\tnow,\r\n\t\t\t\tfuture,\r\n\t\t\t\tround\r\n\t\t\t})\r\n\t\t}\r\n\r\n\t\tif (timeToNextUpdate === undefined) {\r\n\t\t\t// \"unit\" is now called \"formatAs\".\r\n\t\t\tconst unit = step.unit || step.formatAs\r\n\t\t\tif (unit) {\r\n\t\t\t\t// For some units, like \"now\", there's no defined amount of seconds in them.\r\n\t\t\t\t// In such cases, `getTimeToNextUpdateForUnit()` returns `undefined`,\r\n\t\t\t\t// and the next step's `minTime` could be used to calculate the update interval:\r\n\t\t\t\t// it will just assume that the label never changes for this step.\r\n\t\t\t\ttimeToNextUpdate = getTimeToNextUpdateForUnit(unit)\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tif (timeToNextUpdate === undefined) {\r\n\t\treturn timeToStepChange\r\n\t}\r\n\r\n\treturn Math.min(timeToNextUpdate, timeToStepChange)\r\n}\r\n\r\nexport function getStepChangesAt(currentOrNextStep, timestamp, { now, future, round, prevStep }) {\r\n\t// The first step's `minTime` is `0` by default.\r\n\t// It doesn't \"change\" steps at zero point\r\n\t// but it does change the wording when switching\r\n\t// from \"future\" to \"past\": \"in ...\" -> \"... ago\".\r\n\t// Therefore, the label should be updated at zero-point too.\r\n\tconst minTime = getStepMinTime(currentOrNextStep, { timestamp, now, future, round, prevStep })\r\n\tif (minTime === undefined) {\r\n\t\treturn\r\n\t}\r\n\tif (future) {\r\n\t\t// The step changes to the previous step\r\n\t\t// as soon as `timestamp - now` becomes\r\n\t\t// less than the `minTime` of the current step:\r\n\t\t// `timestamp - now === minTime - 1`\r\n\t\t// => `now === timestamp - minTime + 1`.\r\n\t\treturn timestamp - minTime * 1000 + 1\r\n\t} else {\r\n\t\t// The step changes to the next step\r\n\t\t// as soon as `now - timestamp` becomes\r\n\t\t// equal to `minTime` of the next step:\r\n\t\t// `now - timestamp === minTime`\r\n\t\t// => `now === timestamp + minTime`.\r\n\r\n\t\t// This is a special case when double-update could be skipped.\r\n\t\tif (minTime === 0 && timestamp === now) {\r\n\t\t\treturn INFINITY\r\n\t\t}\r\n\r\n\t\treturn timestamp + minTime * 1000\r\n\t}\r\n}\r\n\r\nexport function getTimeToStepChange(step, timestamp, {\r\n\tnow,\r\n\tfuture,\r\n\tround,\r\n\tprevStep\r\n}) {\r\n\tif (step) {\r\n\t\tconst stepChangesAt = getStepChangesAt(step, timestamp, {\r\n\t\t\tnow,\r\n\t\t\tfuture,\r\n\t\t\tround,\r\n\t\t\tprevStep\r\n\t\t})\r\n\t\tif (stepChangesAt === undefined) {\r\n\t\t\treturn\r\n\t\t}\r\n\t\treturn stepChangesAt - now\r\n\t} else {\r\n\t\tif (future) {\r\n\t\t\t// No step.\r\n\t\t\t// Update right after zero point, when it changes from \"future\" to \"past\".\r\n\t\t\treturn timestamp - now + 1\r\n\t\t} else {\r\n\t\t\t// The last step doesn't ever change when `date` is in the past.\r\n\t\t\treturn INFINITY\r\n\t\t}\r\n\t}\r\n}"],"mappings":"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","ignoreList":[]}
@@ -1,13 +1,8 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
-
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
5
4
  var _getTimeToNextUpdate = _interopRequireWildcard(require("./getTimeToNextUpdate.js"));
6
-
7
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
8
-
9
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
10
-
5
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) { "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); } return f; })(e, t); }
11
6
  describe('getTimeToNextUpdate', function () {
12
7
  it('should return infinity when there are no more steps, and it does not format as a unit (past)', function () {
13
8
  expect((0, _getTimeToNextUpdate["default"])(-4 * 60 * 1000, {
@@ -175,11 +170,12 @@ describe('getStepChangesAt', function () {
175
170
  now: 0,
176
171
  future: false,
177
172
  prevStep: undefined
178
- }).should.equal(_getTimeToNextUpdate.INFINITY); // Past.
173
+ }).should.equal(_getTimeToNextUpdate.INFINITY);
174
+
175
+ // Past.
179
176
  // Is at zero point.
180
177
  // The next step is seconds.
181
178
  // Updates at the next step.
182
-
183
179
  (0, _getTimeToNextUpdate.getStepChangesAt)({
184
180
  unit: 'second',
185
181
  minTime: 1
@@ -187,32 +183,35 @@ describe('getStepChangesAt', function () {
187
183
  now: 0,
188
184
  future: false,
189
185
  prevStep: {}
190
- }).should.equal(1 * 1000); // Future.
186
+ }).should.equal(1 * 1000);
187
+
188
+ // Future.
191
189
  // Inside the first step.
192
190
  // Updates after zero point.
193
-
194
191
  (0, _getTimeToNextUpdate.getStepChangesAt)({
195
192
  unit: 'now'
196
193
  }, 0.9 * 1000, {
197
194
  now: 0,
198
195
  future: true,
199
196
  prevStep: undefined
200
- }).should.equal(0.9 * 1000 + 1); // Future.
197
+ }).should.equal(0.9 * 1000 + 1);
198
+
199
+ // Future.
201
200
  // The first step doesn't start at 0.
202
201
  // Outside of the first step.
203
202
  // Updates right after zero point.
204
-
205
203
  (0, _getTimeToNextUpdate.getTimeToStepChange)(undefined, 0.9 * 1000, {
206
204
  now: 0,
207
205
  future: true,
208
206
  prevStep: undefined
209
- }).should.equal(0.9 * 1000 + 1); // Past.
207
+ }).should.equal(0.9 * 1000 + 1);
208
+
209
+ // Past.
210
210
  // The current step is `undefined`.
211
211
  // The next step is the first step.
212
212
  // The first step doesn't start at 0.
213
213
  // Outside of the first step.
214
214
  // Updates at entering the first step.
215
-
216
215
  (0, _getTimeToNextUpdate.getStepChangesAt)({
217
216
  minTime: 1,
218
217
  unit: 'second'
@@ -220,10 +219,11 @@ describe('getStepChangesAt', function () {
220
219
  now: 0,
221
220
  future: false,
222
221
  prevStep: {}
223
- }).should.equal(0.1 * 1000); // Future.
222
+ }).should.equal(0.1 * 1000);
223
+
224
+ // Future.
224
225
  // The first step doesn't start at 0.
225
226
  // Will output empty string after it exits the current step.
226
-
227
227
  (0, _getTimeToNextUpdate.getStepChangesAt)({
228
228
  minTime: 1,
229
229
  unit: 'second'
@@ -231,39 +231,43 @@ describe('getStepChangesAt', function () {
231
231
  now: 0,
232
232
  future: true,
233
233
  prevStep: undefined
234
- }).should.equal(0.1 * 1000 + 1); // Past.
234
+ }).should.equal(0.1 * 1000 + 1);
235
+
236
+ // Past.
235
237
  // Next step is seconds.
236
238
  // The "next" step doesn't have `minTime`,
237
239
  // so "time to next update" couldn't be determined.
238
-
239
240
  expect((0, _getTimeToNextUpdate.getStepChangesAt)({
240
241
  unit: 'unknown-time-unit'
241
242
  }, 0, {
242
243
  now: 0,
243
244
  future: false,
244
245
  prevStep: {}
245
- })).to.be.undefined; // Past.
246
+ })).to.be.undefined;
247
+
248
+ // Past.
246
249
  // No next step.
247
250
  // The last step never changes.
248
-
249
251
  (0, _getTimeToNextUpdate.getTimeToStepChange)(undefined, 0, {
250
252
  now: 0,
251
253
  future: false,
252
254
  isFirstStep: undefined
253
- }).should.equal(_getTimeToNextUpdate.INFINITY); // Future.
255
+ }).should.equal(_getTimeToNextUpdate.INFINITY);
256
+
257
+ // Future.
254
258
  // Current step is seconds.
255
259
  // Updates after zero point.
256
-
257
260
  (0, _getTimeToNextUpdate.getStepChangesAt)({
258
261
  unit: 'second'
259
262
  }, 0, {
260
263
  now: 0,
261
264
  future: true,
262
265
  prevStep: undefined
263
- }).should.equal(1); // Past.
266
+ }).should.equal(1);
267
+
268
+ // Past.
264
269
  // Next step is minutes.
265
270
  // Already at zero point, so no need to update at zero point.
266
-
267
271
  (0, _getTimeToNextUpdate.getStepChangesAt)({
268
272
  minTime: 60,
269
273
  formatAs: 'minute'
@@ -1 +1 @@
1
- {"version":3,"file":"getTimeToNextUpdate.test.js","names":["describe","it","expect","getTimeToNextUpdate","minTime","format","now","future","isFirstStep","to","equal","INFINITY","Date","nextStep","formatAs","be","undefined","should","test","getStepChangesAt","unit","prevStep","getTimeToStepChange"],"sources":["../../source/steps/getTimeToNextUpdate.test.js"],"sourcesContent":["import getTimeToNextUpdate, { INFINITY, getStepChangesAt, getTimeToStepChange } from './getTimeToNextUpdate.js'\r\n\r\ndescribe('getTimeToNextUpdate', () => {\r\n\tit('should return infinity when there are no more steps, and it does not format as a unit (past)', () => {\r\n\t\texpect(getTimeToNextUpdate(-4 * 60 * 1000, {\r\n\t\t\tminTime: 59.5,\r\n\t\t\tformat: () => ''\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tisFirstStep: true\r\n\t\t})).to.equal(INFINITY)\r\n\t})\r\n\r\n\tit('should support date argument', () => {\r\n\t\texpect(getTimeToNextUpdate(new Date(4 * 60 * 1000), {\r\n\t\t\tminTime: 60\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tisFirstStep: true,\r\n\t\t\tnextStep: {}\r\n\t\t})).to.equal(3 * 60 * 1000 + 1)\r\n\t})\r\n\r\n\tit('should return this step\\'s \"minTime\" timestamp (future)', () => {\r\n\t\texpect(getTimeToNextUpdate(4 * 60 * 1000, {\r\n\t\t\tminTime: 60,\r\n\t\t\tformat: () => ''\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tisFirstStep: true,\r\n\t\t\tnextStep: {\r\n\t\t\t\tformat: () => ''\r\n\t\t\t}\r\n\t\t})).to.equal(3 * 60 * 1000 + 1)\r\n\t})\r\n\r\n\tit('should return undefined when there is a next step and time to next update can not be reliably determined (formatAs) (past)', () => {\r\n\t\texpect(getTimeToNextUpdate(-4 * 60 * 1000, {\r\n\t\t\tminTime: 60,\r\n\t\t\tformatAs: 'minute'\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tisFirstStep: true,\r\n\t\t\tnextStep: {\r\n\t\t\t\tformatAs: 'unknown-time-unit'\r\n\t\t\t}\r\n\t\t})).to.be.undefined\r\n\t})\r\n\r\n\tit('should get time to next update (no next step) (past)', () => {\r\n\t\tgetTimeToNextUpdate(-4 * 60 * 1000, {\r\n\t\t\tformatAs: 'minute',\r\n\t\t\tminTime: 59.5\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tisFirstStep: true\r\n\t\t}).should.equal(0.5 * 60 * 1000)\r\n\t})\r\n\r\n\tit('should get time to next update (no next step) (future)', () => {\r\n\t\tgetTimeToNextUpdate(4 * 60 * 1000, {\r\n\t\t\tformatAs: 'minute',\r\n\t\t\tminTime: 59.5\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tisFirstStep: true\r\n\t\t}).should.equal(0.5 * 60 * 1000 + 1)\r\n\t})\r\n\r\n\tit('should get time to next update (has prev/next step without `minTime`) (future)', () => {\r\n\t\tgetTimeToNextUpdate(4 * 60 * 1000, {\r\n\t\t\tformatAs: 'minute',\r\n\t\t\tminTime: 59.5\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tisFirstStep: true,\r\n\t\t\tnextStep: {\r\n\t\t\t\tformatAs: 'hour',\r\n\t\t\t\ttest: () => false\r\n\t\t\t}\r\n\t\t}).should.equal(0.5 * 60 * 1000 + 1)\r\n\t})\r\n\r\n\tit('should get time to next update (has `getTimeToNextUpdate`) (past)', () => {\r\n\t\tgetTimeToNextUpdate(-4 * 60 * 1000, {\r\n\t\t\tformatAs: 'minute',\r\n\t\t\tminTime: 59.5,\r\n\t\t\tgetTimeToNextUpdate: () => 0.25 * 60 * 1000\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tisFirstStep: true\r\n\t\t}).should.equal(0.25 * 60 * 1000)\r\n\t})\r\n\r\n\tit('should get time to next update (has `getTimeToNextUpdate`) (future)', () => {\r\n\t\tgetTimeToNextUpdate(4 * 60 * 1000, {\r\n\t\t\tformatAs: 'minute',\r\n\t\t\tminTime: 59.5,\r\n\t\t\tgetTimeToNextUpdate: () => 0.25 * 60 * 1000\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tisFirstStep: true\r\n\t\t}).should.equal(0.25 * 60 * 1000)\r\n\t})\r\n\r\n\tit('should get time to next update (has both unit and prev/next steps with `minTime`) (returns time to \"minTime\" of next step) (past)', () => {\r\n\t\tgetTimeToNextUpdate(-59 * 60 * 1000, {\r\n\t\t\tformatAs: 'minute',\r\n\t\t\tminTime: 59.5\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tisFirstStep: true,\r\n\t\t\tnextStep: {\r\n\t\t\t\tformatAs: 'hour',\r\n\t\t\t\tminTime: 59.5 * 60\r\n\t\t\t}\r\n\t\t}).should.equal(0.5 * 60 * 1000)\r\n\t})\r\n\r\n\tit('should get time to next update (has no unit but has prev/next step with `minTime`) (returns time to \"minTime\" of next step) (past)', () => {\r\n\t\tgetTimeToNextUpdate(-59 * 60 * 1000, {\r\n\t\t\tformat: () => {},\r\n\t\t\tminTime: 59.5\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tisFirstStep: true,\r\n\t\t\tnextStep: {\r\n\t\t\t\tformatAs: 'hour',\r\n\t\t\t\tminTime: 59.5 * 60\r\n\t\t\t}\r\n\t\t}).should.equal(0.5 * 60 * 1000)\r\n\t})\r\n\r\n\tit('should get time to next update (will be outside of the first step) (future)', () => {\r\n\t\tgetTimeToNextUpdate(60 * 60 * 1000, {\r\n\t\t\tformatAs: 'hour',\r\n\t\t\tminTime: 60 * 60\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tisFirstStep: true\r\n\t\t}).should.equal(1)\r\n\t})\r\n})\r\n\r\ndescribe('getStepChangesAt', () => {\r\n\tit('should work for \"round\" steps', () => {\r\n\t\t// Future.\r\n\t\t// Is at zero point.\r\n\t\t// No next step.\r\n\t\t// No tickable unit.\r\n\t\t// Doesn't update.\r\n\t\tgetStepChangesAt({\r\n\t\t\tunit: 'now'\r\n\t\t}, 0, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tprevStep: undefined\r\n\t\t}).should.equal(INFINITY)\r\n\r\n\t\t// Past.\r\n\t\t// Is at zero point.\r\n\t\t// The next step is seconds.\r\n\t\t// Updates at the next step.\r\n\t\tgetStepChangesAt({\r\n\t\t\tunit: 'second',\r\n\t\t\tminTime: 1\r\n\t\t}, 0, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tprevStep: {}\r\n\t\t}).should.equal(1 * 1000)\r\n\r\n\t\t// Future.\r\n\t\t// Inside the first step.\r\n\t\t// Updates after zero point.\r\n\t\tgetStepChangesAt({\r\n\t\t\tunit: 'now'\r\n\t\t}, 0.9 * 1000, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tprevStep: undefined\r\n\t\t}).should.equal(0.9 * 1000 + 1)\r\n\r\n\t\t// Future.\r\n\t\t// The first step doesn't start at 0.\r\n\t\t// Outside of the first step.\r\n\t\t// Updates right after zero point.\r\n\t\tgetTimeToStepChange(undefined, 0.9 * 1000, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tprevStep: undefined\r\n\t\t}).should.equal(0.9 * 1000 + 1)\r\n\r\n\t\t// Past.\r\n\t\t// The current step is `undefined`.\r\n\t\t// The next step is the first step.\r\n\t\t// The first step doesn't start at 0.\r\n\t\t// Outside of the first step.\r\n\t\t// Updates at entering the first step.\r\n\t\tgetStepChangesAt({\r\n\t\t\tminTime: 1,\r\n\t\t\tunit: 'second'\r\n\t\t}, -0.9 * 1000, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tprevStep: {}\r\n\t\t}).should.equal(0.1 * 1000)\r\n\r\n\t\t// Future.\r\n\t\t// The first step doesn't start at 0.\r\n\t\t// Will output empty string after it exits the current step.\r\n\t\tgetStepChangesAt({\r\n\t\t\tminTime: 1,\r\n\t\t\tunit: 'second'\r\n\t\t}, 1.1 * 1000, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tprevStep: undefined\r\n\t\t}).should.equal(0.1 * 1000 + 1)\r\n\r\n\t\t// Past.\r\n\t\t// Next step is seconds.\r\n\t\t// The \"next\" step doesn't have `minTime`,\r\n\t\t// so \"time to next update\" couldn't be determined.\r\n\t\texpect(getStepChangesAt({\r\n\t\t\tunit: 'unknown-time-unit'\r\n\t\t}, 0, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tprevStep: {}\r\n\t\t})).to.be.undefined\r\n\r\n\t\t// Past.\r\n\t\t// No next step.\r\n\t\t// The last step never changes.\r\n\t\tgetTimeToStepChange(undefined, 0, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tisFirstStep: undefined\r\n\t\t}).should.equal(INFINITY)\r\n\r\n\t\t// Future.\r\n\t\t// Current step is seconds.\r\n\t\t// Updates after zero point.\r\n\t\tgetStepChangesAt({\r\n\t\t\tunit: 'second'\r\n\t\t}, 0, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tprevStep: undefined\r\n\t\t}).should.equal(1)\r\n\r\n\t\t// Past.\r\n\t\t// Next step is minutes.\r\n\t\t// Already at zero point, so no need to update at zero point.\r\n\t\tgetStepChangesAt({\r\n\t\t\tminTime: 60,\r\n\t\t\tformatAs: 'minute'\r\n\t\t}, 0, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tprevStep: {}\r\n\t\t}).should.equal(60 * 1000)\r\n\t})\r\n})"],"mappings":"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"}
1
+ {"version":3,"file":"getTimeToNextUpdate.test.js","names":["_getTimeToNextUpdate","_interopRequireWildcard","require","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","describe","it","expect","getTimeToNextUpdate","minTime","format","now","future","isFirstStep","to","equal","INFINITY","Date","nextStep","formatAs","be","undefined","should","test","getStepChangesAt","unit","prevStep","getTimeToStepChange"],"sources":["../../source/steps/getTimeToNextUpdate.test.js"],"sourcesContent":["import getTimeToNextUpdate, { INFINITY, getStepChangesAt, getTimeToStepChange } from './getTimeToNextUpdate.js'\r\n\r\ndescribe('getTimeToNextUpdate', () => {\r\n\tit('should return infinity when there are no more steps, and it does not format as a unit (past)', () => {\r\n\t\texpect(getTimeToNextUpdate(-4 * 60 * 1000, {\r\n\t\t\tminTime: 59.5,\r\n\t\t\tformat: () => ''\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tisFirstStep: true\r\n\t\t})).to.equal(INFINITY)\r\n\t})\r\n\r\n\tit('should support date argument', () => {\r\n\t\texpect(getTimeToNextUpdate(new Date(4 * 60 * 1000), {\r\n\t\t\tminTime: 60\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tisFirstStep: true,\r\n\t\t\tnextStep: {}\r\n\t\t})).to.equal(3 * 60 * 1000 + 1)\r\n\t})\r\n\r\n\tit('should return this step\\'s \"minTime\" timestamp (future)', () => {\r\n\t\texpect(getTimeToNextUpdate(4 * 60 * 1000, {\r\n\t\t\tminTime: 60,\r\n\t\t\tformat: () => ''\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tisFirstStep: true,\r\n\t\t\tnextStep: {\r\n\t\t\t\tformat: () => ''\r\n\t\t\t}\r\n\t\t})).to.equal(3 * 60 * 1000 + 1)\r\n\t})\r\n\r\n\tit('should return undefined when there is a next step and time to next update can not be reliably determined (formatAs) (past)', () => {\r\n\t\texpect(getTimeToNextUpdate(-4 * 60 * 1000, {\r\n\t\t\tminTime: 60,\r\n\t\t\tformatAs: 'minute'\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tisFirstStep: true,\r\n\t\t\tnextStep: {\r\n\t\t\t\tformatAs: 'unknown-time-unit'\r\n\t\t\t}\r\n\t\t})).to.be.undefined\r\n\t})\r\n\r\n\tit('should get time to next update (no next step) (past)', () => {\r\n\t\tgetTimeToNextUpdate(-4 * 60 * 1000, {\r\n\t\t\tformatAs: 'minute',\r\n\t\t\tminTime: 59.5\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tisFirstStep: true\r\n\t\t}).should.equal(0.5 * 60 * 1000)\r\n\t})\r\n\r\n\tit('should get time to next update (no next step) (future)', () => {\r\n\t\tgetTimeToNextUpdate(4 * 60 * 1000, {\r\n\t\t\tformatAs: 'minute',\r\n\t\t\tminTime: 59.5\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tisFirstStep: true\r\n\t\t}).should.equal(0.5 * 60 * 1000 + 1)\r\n\t})\r\n\r\n\tit('should get time to next update (has prev/next step without `minTime`) (future)', () => {\r\n\t\tgetTimeToNextUpdate(4 * 60 * 1000, {\r\n\t\t\tformatAs: 'minute',\r\n\t\t\tminTime: 59.5\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tisFirstStep: true,\r\n\t\t\tnextStep: {\r\n\t\t\t\tformatAs: 'hour',\r\n\t\t\t\ttest: () => false\r\n\t\t\t}\r\n\t\t}).should.equal(0.5 * 60 * 1000 + 1)\r\n\t})\r\n\r\n\tit('should get time to next update (has `getTimeToNextUpdate`) (past)', () => {\r\n\t\tgetTimeToNextUpdate(-4 * 60 * 1000, {\r\n\t\t\tformatAs: 'minute',\r\n\t\t\tminTime: 59.5,\r\n\t\t\tgetTimeToNextUpdate: () => 0.25 * 60 * 1000\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tisFirstStep: true\r\n\t\t}).should.equal(0.25 * 60 * 1000)\r\n\t})\r\n\r\n\tit('should get time to next update (has `getTimeToNextUpdate`) (future)', () => {\r\n\t\tgetTimeToNextUpdate(4 * 60 * 1000, {\r\n\t\t\tformatAs: 'minute',\r\n\t\t\tminTime: 59.5,\r\n\t\t\tgetTimeToNextUpdate: () => 0.25 * 60 * 1000\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tisFirstStep: true\r\n\t\t}).should.equal(0.25 * 60 * 1000)\r\n\t})\r\n\r\n\tit('should get time to next update (has both unit and prev/next steps with `minTime`) (returns time to \"minTime\" of next step) (past)', () => {\r\n\t\tgetTimeToNextUpdate(-59 * 60 * 1000, {\r\n\t\t\tformatAs: 'minute',\r\n\t\t\tminTime: 59.5\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tisFirstStep: true,\r\n\t\t\tnextStep: {\r\n\t\t\t\tformatAs: 'hour',\r\n\t\t\t\tminTime: 59.5 * 60\r\n\t\t\t}\r\n\t\t}).should.equal(0.5 * 60 * 1000)\r\n\t})\r\n\r\n\tit('should get time to next update (has no unit but has prev/next step with `minTime`) (returns time to \"minTime\" of next step) (past)', () => {\r\n\t\tgetTimeToNextUpdate(-59 * 60 * 1000, {\r\n\t\t\tformat: () => {},\r\n\t\t\tminTime: 59.5\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tisFirstStep: true,\r\n\t\t\tnextStep: {\r\n\t\t\t\tformatAs: 'hour',\r\n\t\t\t\tminTime: 59.5 * 60\r\n\t\t\t}\r\n\t\t}).should.equal(0.5 * 60 * 1000)\r\n\t})\r\n\r\n\tit('should get time to next update (will be outside of the first step) (future)', () => {\r\n\t\tgetTimeToNextUpdate(60 * 60 * 1000, {\r\n\t\t\tformatAs: 'hour',\r\n\t\t\tminTime: 60 * 60\r\n\t\t}, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tisFirstStep: true\r\n\t\t}).should.equal(1)\r\n\t})\r\n})\r\n\r\ndescribe('getStepChangesAt', () => {\r\n\tit('should work for \"round\" steps', () => {\r\n\t\t// Future.\r\n\t\t// Is at zero point.\r\n\t\t// No next step.\r\n\t\t// No tickable unit.\r\n\t\t// Doesn't update.\r\n\t\tgetStepChangesAt({\r\n\t\t\tunit: 'now'\r\n\t\t}, 0, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tprevStep: undefined\r\n\t\t}).should.equal(INFINITY)\r\n\r\n\t\t// Past.\r\n\t\t// Is at zero point.\r\n\t\t// The next step is seconds.\r\n\t\t// Updates at the next step.\r\n\t\tgetStepChangesAt({\r\n\t\t\tunit: 'second',\r\n\t\t\tminTime: 1\r\n\t\t}, 0, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tprevStep: {}\r\n\t\t}).should.equal(1 * 1000)\r\n\r\n\t\t// Future.\r\n\t\t// Inside the first step.\r\n\t\t// Updates after zero point.\r\n\t\tgetStepChangesAt({\r\n\t\t\tunit: 'now'\r\n\t\t}, 0.9 * 1000, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tprevStep: undefined\r\n\t\t}).should.equal(0.9 * 1000 + 1)\r\n\r\n\t\t// Future.\r\n\t\t// The first step doesn't start at 0.\r\n\t\t// Outside of the first step.\r\n\t\t// Updates right after zero point.\r\n\t\tgetTimeToStepChange(undefined, 0.9 * 1000, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tprevStep: undefined\r\n\t\t}).should.equal(0.9 * 1000 + 1)\r\n\r\n\t\t// Past.\r\n\t\t// The current step is `undefined`.\r\n\t\t// The next step is the first step.\r\n\t\t// The first step doesn't start at 0.\r\n\t\t// Outside of the first step.\r\n\t\t// Updates at entering the first step.\r\n\t\tgetStepChangesAt({\r\n\t\t\tminTime: 1,\r\n\t\t\tunit: 'second'\r\n\t\t}, -0.9 * 1000, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tprevStep: {}\r\n\t\t}).should.equal(0.1 * 1000)\r\n\r\n\t\t// Future.\r\n\t\t// The first step doesn't start at 0.\r\n\t\t// Will output empty string after it exits the current step.\r\n\t\tgetStepChangesAt({\r\n\t\t\tminTime: 1,\r\n\t\t\tunit: 'second'\r\n\t\t}, 1.1 * 1000, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tprevStep: undefined\r\n\t\t}).should.equal(0.1 * 1000 + 1)\r\n\r\n\t\t// Past.\r\n\t\t// Next step is seconds.\r\n\t\t// The \"next\" step doesn't have `minTime`,\r\n\t\t// so \"time to next update\" couldn't be determined.\r\n\t\texpect(getStepChangesAt({\r\n\t\t\tunit: 'unknown-time-unit'\r\n\t\t}, 0, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tprevStep: {}\r\n\t\t})).to.be.undefined\r\n\r\n\t\t// Past.\r\n\t\t// No next step.\r\n\t\t// The last step never changes.\r\n\t\tgetTimeToStepChange(undefined, 0, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tisFirstStep: undefined\r\n\t\t}).should.equal(INFINITY)\r\n\r\n\t\t// Future.\r\n\t\t// Current step is seconds.\r\n\t\t// Updates after zero point.\r\n\t\tgetStepChangesAt({\r\n\t\t\tunit: 'second'\r\n\t\t}, 0, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: true,\r\n\t\t\tprevStep: undefined\r\n\t\t}).should.equal(1)\r\n\r\n\t\t// Past.\r\n\t\t// Next step is minutes.\r\n\t\t// Already at zero point, so no need to update at zero point.\r\n\t\tgetStepChangesAt({\r\n\t\t\tminTime: 60,\r\n\t\t\tformatAs: 'minute'\r\n\t\t}, 0, {\r\n\t\t\tnow: 0,\r\n\t\t\tfuture: false,\r\n\t\t\tprevStep: {}\r\n\t\t}).should.equal(60 * 1000)\r\n\t})\r\n})"],"mappings":"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","ignoreList":[]}