javascript-time-ago 2.3.7 → 2.3.11

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 (494) hide show
  1. package/README.md +22 -12
  2. package/bin/generate-locale-messages.js +5 -1
  3. package/bundle/javascript-time-ago.js +1 -1
  4. package/bundle/javascript-time-ago.js.map +1 -1
  5. package/bundle/javascript-time-ago.min.js +1 -1
  6. package/bundle/javascript-time-ago.min.js.map +1 -1
  7. package/commonjs/TimeAgo.js +2 -2
  8. package/commonjs/TimeAgo.js.map +1 -1
  9. package/commonjs/TimeAgo.test.js +6 -6
  10. package/commonjs/TimeAgo.test.js.map +1 -1
  11. package/index.d.ts +130 -0
  12. package/load-all-locales.js +34 -0
  13. package/locale/af/index.js +3 -1
  14. package/locale/af.json +18 -18
  15. package/locale/am/index.js +3 -1
  16. package/locale/ar/index.js +3 -1
  17. package/locale/ar-AE/index.js +3 -1
  18. package/locale/as/index.js +3 -1
  19. package/locale/as.json +2 -2
  20. package/locale/ast/index.js +3 -1
  21. package/locale/az/index.js +3 -1
  22. package/locale/be/index.js +3 -1
  23. package/locale/be.json +16 -16
  24. package/locale/bg/index.js +3 -1
  25. package/locale/bg.json +1 -1
  26. package/locale/bn/index.js +3 -1
  27. package/locale/br/index.js +3 -1
  28. package/locale/br.json +16 -28
  29. package/locale/bs/index.js +3 -1
  30. package/locale/bs-Cyrl/index.js +3 -1
  31. package/locale/bs-Cyrl.json +105 -140
  32. package/locale/ca/index.js +3 -1
  33. package/locale/ca.json +4 -4
  34. package/locale/ccp/index.js +3 -1
  35. package/locale/ce/index.js +3 -1
  36. package/locale/ceb/index.js +3 -0
  37. package/locale/ceb.json +159 -0
  38. package/locale/chr/index.js +3 -1
  39. package/locale/chr.json +18 -18
  40. package/locale/cs/index.js +3 -1
  41. package/locale/cy/index.js +3 -1
  42. package/locale/cy.json +85 -30
  43. package/locale/da/index.js +3 -1
  44. package/locale/da.json +30 -30
  45. package/locale/de/index.js +3 -1
  46. package/locale/dsb/index.js +3 -1
  47. package/locale/dz/index.js +3 -1
  48. package/locale/ee/index.js +3 -1
  49. package/locale/el/index.js +3 -1
  50. package/locale/el.json +19 -9
  51. package/locale/en/index.js +3 -1
  52. package/locale/en-001/index.js +3 -1
  53. package/locale/en-001.json +18 -18
  54. package/locale/en-150/index.js +3 -1
  55. package/locale/en-150.json +18 -18
  56. package/locale/en-AG/index.js +3 -1
  57. package/locale/en-AG.json +18 -18
  58. package/locale/en-AI/index.js +3 -1
  59. package/locale/en-AI.json +18 -18
  60. package/locale/en-AT/index.js +3 -1
  61. package/locale/en-AT.json +18 -18
  62. package/locale/en-AU/index.js +3 -1
  63. package/locale/en-AU.json +18 -18
  64. package/locale/en-BB/index.js +3 -1
  65. package/locale/en-BB.json +18 -18
  66. package/locale/en-BE/index.js +3 -1
  67. package/locale/en-BE.json +18 -18
  68. package/locale/en-BM/index.js +3 -1
  69. package/locale/en-BM.json +18 -18
  70. package/locale/en-BS/index.js +3 -1
  71. package/locale/en-BS.json +18 -18
  72. package/locale/en-BW/index.js +3 -1
  73. package/locale/en-BW.json +18 -18
  74. package/locale/en-BZ/index.js +3 -1
  75. package/locale/en-BZ.json +18 -18
  76. package/locale/en-CA/index.js +3 -1
  77. package/locale/en-CA.json +18 -18
  78. package/locale/en-CC/index.js +3 -1
  79. package/locale/en-CC.json +18 -18
  80. package/locale/en-CH/index.js +3 -1
  81. package/locale/en-CH.json +18 -18
  82. package/locale/en-CK/index.js +3 -1
  83. package/locale/en-CK.json +18 -18
  84. package/locale/en-CM/index.js +3 -1
  85. package/locale/en-CM.json +18 -18
  86. package/locale/en-CX/index.js +3 -1
  87. package/locale/en-CX.json +18 -18
  88. package/locale/en-CY/index.js +3 -1
  89. package/locale/en-CY.json +18 -18
  90. package/locale/en-DE/index.js +3 -1
  91. package/locale/en-DE.json +18 -18
  92. package/locale/en-DG/index.js +3 -1
  93. package/locale/en-DG.json +18 -18
  94. package/locale/en-DK/index.js +3 -1
  95. package/locale/en-DK.json +18 -18
  96. package/locale/en-DM/index.js +3 -1
  97. package/locale/en-DM.json +18 -18
  98. package/locale/en-ER/index.js +3 -1
  99. package/locale/en-ER.json +18 -18
  100. package/locale/en-FI/index.js +3 -1
  101. package/locale/en-FI.json +18 -18
  102. package/locale/en-FJ/index.js +3 -1
  103. package/locale/en-FJ.json +18 -18
  104. package/locale/en-FK/index.js +3 -1
  105. package/locale/en-FK.json +18 -18
  106. package/locale/en-FM/index.js +3 -1
  107. package/locale/en-FM.json +18 -18
  108. package/locale/en-GB/index.js +3 -1
  109. package/locale/en-GB.json +18 -18
  110. package/locale/en-GD/index.js +3 -1
  111. package/locale/en-GD.json +18 -18
  112. package/locale/en-GG/index.js +3 -1
  113. package/locale/en-GG.json +18 -18
  114. package/locale/en-GH/index.js +3 -1
  115. package/locale/en-GH.json +18 -18
  116. package/locale/en-GI/index.js +3 -1
  117. package/locale/en-GI.json +18 -18
  118. package/locale/en-GM/index.js +3 -1
  119. package/locale/en-GM.json +18 -18
  120. package/locale/en-GY/index.js +3 -1
  121. package/locale/en-GY.json +18 -18
  122. package/locale/en-HK/index.js +3 -1
  123. package/locale/en-HK.json +18 -18
  124. package/locale/en-IE/index.js +3 -1
  125. package/locale/en-IE.json +18 -18
  126. package/locale/en-IL/index.js +3 -1
  127. package/locale/en-IL.json +18 -18
  128. package/locale/en-IM/index.js +3 -1
  129. package/locale/en-IM.json +18 -18
  130. package/locale/en-IN/index.js +3 -1
  131. package/locale/en-IN.json +18 -18
  132. package/locale/en-IO/index.js +3 -1
  133. package/locale/en-IO.json +18 -18
  134. package/locale/en-JE/index.js +3 -1
  135. package/locale/en-JE.json +18 -18
  136. package/locale/en-JM/index.js +3 -1
  137. package/locale/en-JM.json +18 -18
  138. package/locale/en-KE/index.js +3 -1
  139. package/locale/en-KE.json +18 -18
  140. package/locale/en-KI/index.js +3 -1
  141. package/locale/en-KI.json +18 -18
  142. package/locale/en-KN/index.js +3 -1
  143. package/locale/en-KN.json +18 -18
  144. package/locale/en-KY/index.js +3 -1
  145. package/locale/en-KY.json +18 -18
  146. package/locale/en-LC/index.js +3 -1
  147. package/locale/en-LC.json +18 -18
  148. package/locale/en-LR/index.js +3 -1
  149. package/locale/en-LR.json +18 -18
  150. package/locale/en-LS/index.js +3 -1
  151. package/locale/en-LS.json +18 -18
  152. package/locale/en-MG/index.js +3 -1
  153. package/locale/en-MG.json +18 -18
  154. package/locale/en-MO/index.js +3 -1
  155. package/locale/en-MO.json +18 -18
  156. package/locale/en-MS/index.js +3 -1
  157. package/locale/en-MS.json +18 -18
  158. package/locale/en-MT/index.js +3 -1
  159. package/locale/en-MT.json +18 -18
  160. package/locale/en-MU/index.js +3 -1
  161. package/locale/en-MU.json +18 -18
  162. package/locale/en-MW/index.js +3 -1
  163. package/locale/en-MW.json +18 -18
  164. package/locale/en-MY/index.js +3 -1
  165. package/locale/en-MY.json +18 -18
  166. package/locale/en-NA/index.js +3 -1
  167. package/locale/en-NA.json +18 -18
  168. package/locale/en-NF/index.js +3 -1
  169. package/locale/en-NF.json +18 -18
  170. package/locale/en-NG/index.js +3 -1
  171. package/locale/en-NG.json +18 -18
  172. package/locale/en-NL/index.js +3 -1
  173. package/locale/en-NL.json +18 -18
  174. package/locale/en-NR/index.js +3 -1
  175. package/locale/en-NR.json +18 -18
  176. package/locale/en-NU/index.js +3 -1
  177. package/locale/en-NU.json +18 -18
  178. package/locale/en-NZ/index.js +3 -1
  179. package/locale/en-NZ.json +18 -18
  180. package/locale/en-PG/index.js +3 -1
  181. package/locale/en-PG.json +18 -18
  182. package/locale/en-PH/index.js +3 -1
  183. package/locale/en-PH.json +18 -18
  184. package/locale/en-PK/index.js +3 -1
  185. package/locale/en-PK.json +18 -18
  186. package/locale/en-PN/index.js +3 -1
  187. package/locale/en-PN.json +18 -18
  188. package/locale/en-PW/index.js +3 -1
  189. package/locale/en-PW.json +18 -18
  190. package/locale/en-RW/index.js +3 -1
  191. package/locale/en-RW.json +18 -18
  192. package/locale/en-SB/index.js +3 -1
  193. package/locale/en-SB.json +18 -18
  194. package/locale/en-SC/index.js +3 -1
  195. package/locale/en-SC.json +18 -18
  196. package/locale/en-SD/index.js +3 -1
  197. package/locale/en-SD.json +18 -18
  198. package/locale/en-SE/index.js +3 -1
  199. package/locale/en-SE.json +18 -18
  200. package/locale/en-SG/index.js +3 -1
  201. package/locale/en-SG.json +3 -3
  202. package/locale/en-SH/index.js +3 -1
  203. package/locale/en-SH.json +18 -18
  204. package/locale/en-SI/index.js +3 -1
  205. package/locale/en-SI.json +18 -18
  206. package/locale/en-SL/index.js +3 -1
  207. package/locale/en-SL.json +18 -18
  208. package/locale/en-SS/index.js +3 -1
  209. package/locale/en-SS.json +18 -18
  210. package/locale/en-SX/index.js +3 -1
  211. package/locale/en-SX.json +18 -18
  212. package/locale/en-SZ/index.js +3 -1
  213. package/locale/en-SZ.json +18 -18
  214. package/locale/en-TC/index.js +3 -1
  215. package/locale/en-TC.json +18 -18
  216. package/locale/en-TK/index.js +3 -1
  217. package/locale/en-TK.json +18 -18
  218. package/locale/en-TO/index.js +3 -1
  219. package/locale/en-TO.json +18 -18
  220. package/locale/en-TT/index.js +3 -1
  221. package/locale/en-TT.json +18 -18
  222. package/locale/en-TV/index.js +3 -1
  223. package/locale/en-TV.json +18 -18
  224. package/locale/en-TZ/index.js +3 -1
  225. package/locale/en-TZ.json +18 -18
  226. package/locale/en-UG/index.js +3 -1
  227. package/locale/en-UG.json +18 -18
  228. package/locale/en-VC/index.js +3 -1
  229. package/locale/en-VC.json +18 -18
  230. package/locale/en-VG/index.js +3 -1
  231. package/locale/en-VG.json +18 -18
  232. package/locale/en-VU/index.js +3 -1
  233. package/locale/en-VU.json +18 -18
  234. package/locale/en-WS/index.js +3 -1
  235. package/locale/en-WS.json +18 -18
  236. package/locale/en-ZA/index.js +3 -1
  237. package/locale/en-ZA.json +18 -18
  238. package/locale/en-ZM/index.js +3 -1
  239. package/locale/en-ZM.json +18 -18
  240. package/locale/en-ZW/index.js +3 -1
  241. package/locale/en-ZW.json +18 -18
  242. package/locale/en.json +27 -17
  243. package/locale/es/index.js +3 -1
  244. package/locale/es-419/index.js +3 -0
  245. package/locale/es-419.json +225 -0
  246. package/locale/es-AR/index.js +3 -1
  247. package/locale/es-AR.json +6 -6
  248. package/locale/es-BO/index.js +3 -0
  249. package/locale/es-BO.json +225 -0
  250. package/locale/es-BR/index.js +3 -0
  251. package/locale/es-BR.json +225 -0
  252. package/locale/es-BZ/index.js +3 -0
  253. package/locale/es-BZ.json +225 -0
  254. package/locale/es-CL/index.js +3 -0
  255. package/locale/es-CL.json +225 -0
  256. package/locale/es-CO/index.js +3 -0
  257. package/locale/es-CO.json +225 -0
  258. package/locale/es-CR/index.js +3 -0
  259. package/locale/es-CR.json +225 -0
  260. package/locale/es-CU/index.js +3 -0
  261. package/locale/es-CU.json +225 -0
  262. package/locale/es-DO/index.js +3 -0
  263. package/locale/es-DO.json +225 -0
  264. package/locale/es-EC/index.js +3 -0
  265. package/locale/es-EC.json +225 -0
  266. package/locale/es-GT/index.js +3 -0
  267. package/locale/es-GT.json +225 -0
  268. package/locale/es-HN/index.js +3 -0
  269. package/locale/es-HN.json +225 -0
  270. package/locale/es-MX/index.js +3 -1
  271. package/locale/es-MX.json +18 -18
  272. package/locale/es-NI/index.js +3 -0
  273. package/locale/es-NI.json +225 -0
  274. package/locale/es-PA/index.js +3 -0
  275. package/locale/es-PA.json +225 -0
  276. package/locale/es-PE/index.js +3 -0
  277. package/locale/es-PE.json +225 -0
  278. package/locale/es-PR/index.js +3 -0
  279. package/locale/es-PR.json +225 -0
  280. package/locale/es-PY/index.js +3 -1
  281. package/locale/es-PY.json +6 -6
  282. package/locale/es-SV/index.js +3 -1
  283. package/locale/es-SV.json +6 -6
  284. package/locale/es-US/index.js +3 -1
  285. package/locale/es-US.json +6 -6
  286. package/locale/es-UY/index.js +3 -0
  287. package/locale/es-UY.json +225 -0
  288. package/locale/es-VE/index.js +3 -0
  289. package/locale/es-VE.json +225 -0
  290. package/locale/es.json +16 -6
  291. package/locale/et/index.js +3 -1
  292. package/locale/et.json +18 -18
  293. package/locale/eu/index.js +3 -1
  294. package/locale/fa/index.js +3 -1
  295. package/locale/fa.json +2 -2
  296. package/locale/ff-Adlm/index.js +3 -0
  297. package/locale/ff-Adlm.json +279 -0
  298. package/locale/fi/index.js +3 -1
  299. package/locale/fil/index.js +3 -1
  300. package/locale/fo/index.js +3 -1
  301. package/locale/fo.json +12 -12
  302. package/locale/fr/index.js +3 -1
  303. package/locale/fr-CA/index.js +3 -1
  304. package/locale/fr-CA.json +4 -4
  305. package/locale/fur/index.js +3 -1
  306. package/locale/fy/index.js +3 -1
  307. package/locale/ga/index.js +3 -1
  308. package/locale/ga.json +3 -5
  309. package/locale/gd/index.js +3 -1
  310. package/locale/gd.json +4 -4
  311. package/locale/gl/index.js +3 -1
  312. package/locale/gl.json +14 -14
  313. package/locale/gu/index.js +3 -1
  314. package/locale/ha/index.js +3 -0
  315. package/locale/ha.json +222 -0
  316. package/locale/he/index.js +3 -1
  317. package/locale/hi/index.js +3 -1
  318. package/locale/hi.json +9 -15
  319. package/locale/hr/index.js +3 -1
  320. package/locale/hsb/index.js +3 -1
  321. package/locale/hu/index.js +3 -1
  322. package/locale/hy/index.js +3 -1
  323. package/locale/hy.json +3 -3
  324. package/locale/ia/index.js +3 -1
  325. package/locale/ia.json +132 -48
  326. package/locale/id/index.js +3 -1
  327. package/locale/id.json +18 -18
  328. package/locale/ig/index.js +3 -0
  329. package/locale/ig.json +159 -0
  330. package/locale/is/index.js +3 -1
  331. package/locale/it/index.js +3 -1
  332. package/locale/it.json +8 -14
  333. package/locale/ja/index.js +3 -1
  334. package/locale/ja.json +9 -9
  335. package/locale/jgo/index.js +3 -1
  336. package/locale/jv/index.js +3 -1
  337. package/locale/jv.json +69 -69
  338. package/locale/ka/index.js +3 -1
  339. package/locale/kea/index.js +3 -1
  340. package/locale/kea.json +21 -21
  341. package/locale/kk/index.js +3 -1
  342. package/locale/kl/index.js +3 -1
  343. package/locale/km/index.js +3 -1
  344. package/locale/kn/index.js +3 -1
  345. package/locale/ko/index.js +3 -1
  346. package/locale/ko.json +11 -0
  347. package/locale/kok/index.js +3 -1
  348. package/locale/kok.json +1 -1
  349. package/locale/ksh/index.js +3 -1
  350. package/locale/ku/index.js +3 -1
  351. package/locale/ku.json +44 -26
  352. package/locale/ky/index.js +3 -1
  353. package/locale/lb/index.js +3 -1
  354. package/locale/lkt/index.js +3 -1
  355. package/locale/lo/index.js +3 -1
  356. package/locale/lo.json +1 -1
  357. package/locale/lt/index.js +3 -1
  358. package/locale/lv/index.js +3 -1
  359. package/locale/lv.json +18 -18
  360. package/locale/mk/index.js +3 -1
  361. package/locale/mk.json +6 -6
  362. package/locale/ml/index.js +3 -1
  363. package/locale/mn/index.js +3 -1
  364. package/locale/mn.json +6 -6
  365. package/locale/mr/index.js +3 -1
  366. package/locale/ms/index.js +3 -1
  367. package/locale/ms.json +7 -7
  368. package/locale/mt/index.js +3 -1
  369. package/locale/my/index.js +3 -1
  370. package/locale/mzn/index.js +3 -1
  371. package/locale/nb/index.js +3 -1
  372. package/locale/ne/index.js +3 -1
  373. package/locale/ne.json +4 -4
  374. package/locale/nl/index.js +3 -1
  375. package/locale/nn/index.js +3 -1
  376. package/locale/nn.json +26 -26
  377. package/locale/no/index.js +3 -0
  378. package/locale/no.json +201 -0
  379. package/locale/or/index.js +3 -1
  380. package/locale/or.json +5 -5
  381. package/locale/pa/index.js +3 -1
  382. package/locale/pcm/index.js +3 -0
  383. package/locale/pcm.json +159 -0
  384. package/locale/pl/index.js +3 -1
  385. package/locale/pl.json +14 -14
  386. package/locale/ps/index.js +3 -1
  387. package/locale/ps-PK/index.js +3 -0
  388. package/locale/ps-PK.json +240 -0
  389. package/locale/ps.json +157 -94
  390. package/locale/pt/index.js +3 -1
  391. package/locale/pt-AO/index.js +3 -1
  392. package/locale/pt-AO.json +4 -1
  393. package/locale/pt-CH/index.js +3 -1
  394. package/locale/pt-CH.json +4 -1
  395. package/locale/pt-CV/index.js +3 -1
  396. package/locale/pt-CV.json +4 -1
  397. package/locale/pt-GQ/index.js +3 -1
  398. package/locale/pt-GQ.json +4 -1
  399. package/locale/pt-GW/index.js +3 -1
  400. package/locale/pt-GW.json +4 -1
  401. package/locale/pt-LU/index.js +3 -1
  402. package/locale/pt-LU.json +4 -1
  403. package/locale/pt-MO/index.js +3 -1
  404. package/locale/pt-MO.json +4 -1
  405. package/locale/pt-MZ/index.js +3 -1
  406. package/locale/pt-MZ.json +4 -1
  407. package/locale/pt-PT/index.js +3 -1
  408. package/locale/pt-PT.json +4 -1
  409. package/locale/pt-ST/index.js +3 -1
  410. package/locale/pt-ST.json +4 -1
  411. package/locale/pt-TL/index.js +3 -1
  412. package/locale/pt-TL.json +4 -1
  413. package/locale/pt.json +2 -5
  414. package/locale/qu/index.js +3 -1
  415. package/locale/rm/index.js +3 -0
  416. package/locale/rm.json +165 -0
  417. package/locale/ro/index.js +3 -1
  418. package/locale/ro.json +1 -1
  419. package/locale/ru/index.js +3 -1
  420. package/locale/ru.json +36 -39
  421. package/locale/sah/index.js +3 -1
  422. package/locale/sd/index.js +3 -1
  423. package/locale/sd.json +6 -6
  424. package/locale/se/index.js +3 -1
  425. package/locale/se-FI/index.js +3 -1
  426. package/locale/si/index.js +3 -1
  427. package/locale/sk/index.js +3 -1
  428. package/locale/sl/index.js +3 -1
  429. package/locale/so/index.js +3 -1
  430. package/locale/so.json +137 -83
  431. package/locale/sq/index.js +3 -1
  432. package/locale/sr/index.js +3 -1
  433. package/locale/sr-Cyrl-BA/index.js +3 -0
  434. package/locale/sr-Cyrl-BA.json +214 -0
  435. package/locale/sr-Latn/index.js +3 -1
  436. package/locale/sr-Latn-BA/index.js +3 -0
  437. package/locale/sr-Latn-BA.json +214 -0
  438. package/locale/su/index.js +3 -0
  439. package/locale/su.json +159 -0
  440. package/locale/sv/index.js +3 -1
  441. package/locale/sw/index.js +3 -1
  442. package/locale/ta/index.js +3 -1
  443. package/locale/te/index.js +3 -1
  444. package/locale/te.json +6 -6
  445. package/locale/tg/index.js +3 -0
  446. package/locale/tg.json +159 -0
  447. package/locale/th/index.js +3 -1
  448. package/locale/ti/index.js +3 -1
  449. package/locale/ti.json +2 -2
  450. package/locale/tk/index.js +3 -1
  451. package/locale/to/index.js +3 -1
  452. package/locale/to.json +6 -6
  453. package/locale/tr/index.js +3 -1
  454. package/locale/tr.json +12 -12
  455. package/locale/tt/index.js +3 -0
  456. package/locale/tt.json +159 -0
  457. package/locale/ug/index.js +3 -1
  458. package/locale/uk/index.js +3 -1
  459. package/locale/uk.json +9 -9
  460. package/locale/ur/index.js +3 -1
  461. package/locale/ur-IN/index.js +3 -1
  462. package/locale/ur-IN.json +4 -7
  463. package/locale/ur.json +8 -11
  464. package/locale/uz/index.js +3 -1
  465. package/locale/uz-Cyrl/index.js +3 -1
  466. package/locale/uz.json +6 -6
  467. package/locale/vi/index.js +3 -1
  468. package/locale/vi.json +6 -6
  469. package/locale/wae/index.js +3 -1
  470. package/locale/wo/index.js +3 -0
  471. package/locale/wo.json +159 -0
  472. package/locale/yi/index.js +3 -1
  473. package/locale/yo/index.js +3 -0
  474. package/locale/yo-BJ/index.js +3 -0
  475. package/locale/yo-BJ.json +165 -0
  476. package/locale/yo.json +165 -0
  477. package/locale/yue/index.js +3 -1
  478. package/locale/yue-Hans/index.js +3 -1
  479. package/locale/zh/index.js +3 -1
  480. package/locale/zh-Hans-HK/index.js +3 -1
  481. package/locale/zh-Hans-MO/index.js +3 -1
  482. package/locale/zh-Hans-SG/index.js +3 -1
  483. package/locale/zh-Hant/index.js +3 -1
  484. package/locale/zh-Hant-HK/index.js +3 -1
  485. package/locale/zh-Hant-MO/index.js +3 -1
  486. package/locale/zu/index.js +3 -1
  487. package/locale-more-styles/hi/mini.json +2 -8
  488. package/locale-more-styles/ru/mini.json +2 -8
  489. package/modules/TimeAgo.js +2 -2
  490. package/modules/TimeAgo.js.map +1 -1
  491. package/modules/TimeAgo.test.js +6 -6
  492. package/modules/TimeAgo.test.js.map +1 -1
  493. package/package.json +5 -5
  494. package/index.d.ts.test +0 -47
@@ -1 +1 @@
1
- {"version":3,"sources":["../source/TimeAgo.test.js"],"names":["TimeAgo","isStyleObject","getLocaleData","english","setDefaultLocale","describe","it","timeAgo","format","Date","now","should","equal","future","labels","steps","formatAs","flavour","gradation","englishNow","addLocale","undefined","NumberFormat","Intl","englishLongTimeMinute","minute","past","mockedDate","getTime","thrower","throw","units","custom","time","date","locale","style2","style","unit","factor","secondLabels","second","getTimeToNextUpdate","round","deep","minTime","polyfill","global","expect","to","getDefaultLocale","addDefaultLocale"],"mappings":"AAAA,OAAOA,OAAP,IAAkBC,aAAlB,QAAuC,mBAAvC;AACA,SAASC,aAAT,QAA8B,2BAA9B,C,CAEA;;AACA,OAAOC,OAAP,MAAoB,cAApB,C,CAEA;;AACAH,OAAO,CAACI,gBAAR,CAAyB,IAAzB;AAEAC,QAAQ,wBAAwB,YAAM;AACrCC,EAAAA,EAAE,CAAC,wCAAD,EAA2C,YAAM;AAClD,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,EAAf,EAA2BC,MAA3B,CAAkCC,KAAlC,CAAwC,UAAxC;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuCC,MAAvC,CAA8CC,KAA9C,CAAoD,aAApD;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,IAAI,EAAJ,GAAS,IAArC,EAA2CC,MAA3C,CAAkDC,KAAlD,CAAwD,aAAxD;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,IAAI,EAAJ,GAAS,IAArC,EAA2CC,MAA3C,CAAkDC,KAAlD,CAAwD,cAAxD;AACA,GANC,CAAF;AAQAN,EAAAA,EAAE,CAAC,sDAAD,EAAyD,YAAM;AAChE,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,EAAf,EAA2B,UAA3B,EAAuCC,MAAvC,CAA8CC,KAA9C,CAAoD,KAApD;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,CAAf,EAAkB;AAAEK,MAAAA,MAAM,EAAE,IAAV;AAAgBH,MAAAA,GAAG,EAAE;AAArB,KAAlB,EAA4CC,MAA5C,CAAmDC,KAAnD,CAAyD,aAAzD;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,CAAf,EAAkB;AAAEM,MAAAA,MAAM,EAAE,MAAV;AAAkBC,MAAAA,KAAK,EAAE,CAAC;AAAEC,QAAAA,QAAQ,EAAE;AAAZ,OAAD,EAAsB;AAAEA,QAAAA,QAAQ,EAAE;AAAZ,OAAtB;AAAzB,KAAlB,EAA4F;AAAEH,MAAAA,MAAM,EAAE,IAAV;AAAgBH,MAAAA,GAAG,EAAE;AAArB,KAA5F,EAAsHC,MAAtH,CAA6HC,KAA7H,CAAmI,KAAnI;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,CAAf,EAAkB;AAAEM,MAAAA,MAAM,EAAE,CAAC,MAAD,CAAV;AAAoBC,MAAAA,KAAK,EAAE,CAAC;AAAEC,QAAAA,QAAQ,EAAE;AAAZ,OAAD,EAAsB;AAAEA,QAAAA,QAAQ,EAAE;AAAZ,OAAtB;AAA3B,KAAlB,EAA8F;AAAEH,MAAAA,MAAM,EAAE,IAAV;AAAgBH,MAAAA,GAAG,EAAE;AAArB,KAA9F,EAAwHC,MAAxH,CAA+HC,KAA/H,CAAqI,KAArI,EALgE,CAMhE;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,CAAf,EAAkB;AAAES,MAAAA,OAAO,EAAE;AAAX,KAAlB,EAAuC;AAAEJ,MAAAA,MAAM,EAAE,IAAV;AAAgBH,MAAAA,GAAG,EAAE;AAArB,KAAvC,EAAiEC,MAAjE,CAAwEC,KAAxE,CAA8E,KAA9E;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,CAAf,EAAkB;AAAES,MAAAA,OAAO,EAAE,CAAC,MAAD;AAAX,KAAlB,EAAyC;AAAEJ,MAAAA,MAAM,EAAE,IAAV;AAAgBH,MAAAA,GAAG,EAAE;AAArB,KAAzC,EAAmEC,MAAnE,CAA0EC,KAA1E,CAAgF,KAAhF;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,CAAf,EAAkB;AAAEO,MAAAA,KAAK,EAAE,CAAC;AAAEC,QAAAA,QAAQ,EAAE;AAAZ,OAAD;AAAT,KAAlB,EAAuD;AAAEH,MAAAA,MAAM,EAAE,IAAV;AAAgBH,MAAAA,GAAG,EAAE;AAArB,KAAvD,EAAiFC,MAAjF,CAAwFC,KAAxF,CAA8F,cAA9F,EATgE,CAUhE;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,CAAf,EAAkB;AAAEU,MAAAA,SAAS,EAAE,CAAC;AAAEF,QAAAA,QAAQ,EAAE;AAAZ,OAAD;AAAb,KAAlB,EAA2D;AAAEH,MAAAA,MAAM,EAAE,IAAV;AAAgBH,MAAAA,GAAG,EAAE;AAArB,KAA3D,EAAqFC,MAArF,CAA4FC,KAA5F,CAAkG,cAAlG;AACA,GAZC,CAAF;AAcAN,EAAAA,EAAE,CAAC,kEAAD,EAAqE,YAAM;AAC5E,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,EAAf,EAA2B;AAAEI,MAAAA,MAAM,EAAE,CAAC,QAAD,EAAW,OAAX;AAAV,KAA3B,EAA4DH,MAA5D,CAAmEC,KAAnE,CAAyE,UAAzE;AACA,GAHC,CAAF;AAKAN,EAAAA,EAAE,CAAC,sDAAD,EAAyD,YAAM;AAChE,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,EAAf,EAA2B;AAAEI,MAAAA,MAAM,EAAE,CAAC,QAAD,EAAW,OAAX;AAAV,KAA3B,EAA4DH,MAA5D,CAAmEC,KAAnE,CAAyE,UAAzE;AACA,GAHC,CAAF;AAKAN,EAAAA,EAAE,CAAC,yEAAD,EAA4E,YAAM;AACnF,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACA,QAAMmB,UAAU,GAAGhB,OAAO,CAACO,GAA3B;AACA,WAAOP,OAAO,CAACO,GAAf;AACAV,IAAAA,OAAO,CAACoB,SAAR,CAAkBjB,OAAlB;AACAA,IAAAA,OAAO,CAACO,GAAR,GAAcW,SAAd;AACAd,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,EAAf,EAA2B;AAAEI,MAAAA,MAAM,EAAE;AAAV,KAA3B,EAA+CH,MAA/C,CAAsDC,KAAtD,CAA4D,KAA5D;AACAT,IAAAA,OAAO,CAACO,GAAR,GAAcS,UAAd;AACAZ,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,EAAf,EAA2B;AAAEI,MAAAA,MAAM,EAAE;AAAV,KAA3B,EAA+CH,MAA/C,CAAsDC,KAAtD,CAA4D,UAA5D;AACA,GATC,CAAF;AAWAN,EAAAA,EAAE,CAAC,yDAAD,EAA4D,YAAM;AACnE,QAAMgB,YAAY,GAAGC,IAAI,CAACD,YAA1B;AACA,WAAOC,IAAI,CAACD,YAAZ;AACA,QAAMf,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC;AAAEI,MAAAA,MAAM,EAAE;AAAV,KAAvC,EAAgEH,MAAhE,CAAuEC,KAAvE,CAA6E,UAA7E;AACAW,IAAAA,IAAI,CAACD,YAAL,GAAoBA,YAApB;AACA,GANC,CAAF;AAQAhB,EAAAA,EAAE,CAAC,wEAAD,EAA2E,YAAM;AAClF,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,MAAM,EAAN,GAAW,EAAX,GAAgB,EAAhB,GAAqB,IAAjD,EAAuD;AAAEI,MAAAA,MAAM,EAAE;AAAV,KAAvD,EAA4EH,MAA5E,CAAmFC,KAAnF,CAAyF,UAAzF;AACA,GAHC,CAAF;AAKAN,EAAAA,EAAE,CAAC,yFAAD,EAA4F,YAAM;AACnG,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACA,QAAMmB,UAAU,GAAGhB,OAAO,CAACO,GAA3B;AACAP,IAAAA,OAAO,CAACO,GAAR,GAAc;AAAEA,MAAAA,GAAG,EAAE;AAAP,KAAd;AACAV,IAAAA,OAAO,CAACoB,SAAR,CAAkBjB,OAAlB;AACAI,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,EAAf,EAA2B;AAAEI,MAAAA,MAAM,EAAE;AAAV,KAA3B,EAA+CH,MAA/C,CAAsDC,KAAtD,CAA4D,KAA5D;AACAT,IAAAA,OAAO,CAACO,GAAR,GAAcS,UAAd;AACAZ,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,EAAf,EAA2B;AAAEI,MAAAA,MAAM,EAAE;AAAV,KAA3B,EAA+CH,MAA/C,CAAsDC,KAAtD,CAA4D,UAA5D;AACA,GARC,CAAF;AAUAN,EAAAA,EAAE,CAAC,uIAAD,EAA0I,YAAM;AACjJ,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACA,QAAMwB,qBAAqB,GAAGrB,OAAO,CAAC,WAAD,CAAP,CAAqBsB,MAAnD;AACAtB,IAAAA,OAAO,CAAC,WAAD,CAAP,CAAqBsB,MAArB,GAA8B;AAC7BC,MAAAA,IAAI,EAAE,mBADuB;AAE7Bb,MAAAA,MAAM,EAAE;AAFqB,KAA9B;AAIAb,IAAAA,OAAO,CAACoB,SAAR,CAAkBjB,OAAlB,EAPiJ,CAQjJ;;AACAI,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC;AAAEI,MAAAA,MAAM,EAAE;AAAV,KAAvC,EAAgEH,MAAhE,CAAuEC,KAAvE,CAA6E,iBAA7E,EATiJ,CAUjJ;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC;AAAEI,MAAAA,MAAM,EAAE;AAAV,KAAvC,EAAgEH,MAAhE,CAAuEC,KAAvE,CAA6E,gBAA7E,EAXiJ,CAYjJ;;AACAT,IAAAA,OAAO,CAAC,WAAD,CAAP,CAAqBsB,MAArB,GAA8BD,qBAA9B;AACAjB,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC;AAAEI,MAAAA,MAAM,EAAE;AAAV,KAAvC,EAAgEH,MAAhE,CAAuEC,KAAvE,CAA6E,UAA7E;AACA,GAfC,CAAF;AAiBAN,EAAAA,EAAE,4CAAwC,YAC1C;AACC,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,EAA5B,EAAgC;AAAEI,MAAAA,MAAM,EAAE,CAAC,MAAD;AAAV,KAAhC,EAAsDH,MAAtD,CAA6DC,KAA7D,CAAmE,aAAnE;AACA,GAJC,CAAF;AAMAN,EAAAA,EAAE,CAAC,4CAAD,EAA+C,YAAM;AACtD,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB,CADsD,CAEtD;;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,IAAI,IAAhC,EAAsC,MAAtC,EAA8CC,MAA9C,CAAqDC,KAArD,CAA2D,IAA3D;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,IAAI,IAAhC,EAAsC,MAAtC,EAA8CC,MAA9C,CAAqDC,KAArD,CAA2D,IAA3D,EAJsD,CAKtD;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,IAAI,IAAhC,EAAsC,UAAtC,EAAkDC,MAAlD,CAAyDC,KAAzD,CAA+D,KAA/D;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,IAAI,IAAhC,EAAsC,UAAtC,EAAkDC,MAAlD,CAAyDC,KAAzD,CAA+D,IAA/D,EAPsD,CAQtD;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC,iBAAvC,EAA0DC,MAA1D,CAAiEC,KAAjE,CAAuE,KAAvE;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC,iBAAvC,EAA0DC,MAA1D,CAAiEC,KAAjE,CAAuE,IAAvE,EAVsD,CAWtD;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC,aAAvC,EAAsDC,MAAtD,CAA6DC,KAA7D,CAAmE,IAAnE;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC,aAAvC,EAAsDC,MAAtD,CAA6DC,KAA7D,CAAmE,IAAnE,EAbsD,CActD;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,IAAI,IAAhC,EAAsC,SAAtC,EAAiDC,MAAjD,CAAwDC,KAAxD,CAA8D,IAA9D;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,IAAI,IAAhC,EAAsC,SAAtC,EAAiDC,MAAjD,CAAwDC,KAAxD,CAA8D,IAA9D,EAhBsD,CAiBtD;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,IAAI,IAAhC,EAAsC,aAAtC,EAAqDC,MAArD,CAA4DC,KAA5D,CAAkE,KAAlE;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,IAAI,IAAhC,EAAsC,aAAtC,EAAqDC,MAArD,CAA4DC,KAA5D,CAAkE,IAAlE,EAnBsD,CAoBtD;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC,oBAAvC,EAA6DC,MAA7D,CAAoEC,KAApE,CAA0E,KAA1E;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC,oBAAvC,EAA6DC,MAA7D,CAAoEC,KAApE,CAA0E,IAA1E,EAtBsD,CAuBtD;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC,gBAAvC,EAAyDC,MAAzD,CAAgEC,KAAhE,CAAsE,IAAtE;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC,gBAAvC,EAAyDC,MAAzD,CAAgEC,KAAhE,CAAsE,IAAtE,EAzBsD,CA0BtD;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC,sBAAvC,EAA+DC,MAA/D,CAAsEC,KAAtE,CAA4E,EAA5E;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC,sBAAvC,EAA+DC,MAA/D,CAAsEC,KAAtE,CAA4E,IAA5E,EA5BsD,CA6BtD;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC,aAAvC,EAAsDC,MAAtD,CAA6DC,KAA7D,CAAmE,UAAnE,EA9BsD,CA+BtD;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC,YAAvC,EAAqDC,MAArD,CAA4DC,KAA5D,CAAkE,UAAlE;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC,OAAvC,EAAgDC,MAAhD,CAAuDC,KAAvD,CAA6D,gBAA7D,EAjCsD,CAkCtD;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC,SAAvC,EAAkDC,MAAlD,CAAyDC,KAAzD,CAA+D,gBAA/D;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,KAAK,IAAjC,EAAuC,cAAvC,EAAuDC,MAAvD,CAA8DC,KAA9D,CAAoE,UAApE,EApCsD,CAqCtD;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,IAAI,EAAJ,GAAS,IAArC,EAA2C,MAA3C,EAAmDC,MAAnD,CAA0DC,KAA1D,CAAgE,WAAhE;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,IAAI,EAAJ,GAAS,IAArC,EAA2C,kBAA3C,EAA+DC,MAA/D,CAAsEC,KAAtE,CAA4E,WAA5E;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,EAAf,EAA2B,QAA3B,EAAqCC,MAArC,CAA4CC,KAA5C,CAAkD,UAAlD;AACA,GAzCC,CAAF;AA2CAN,EAAAA,EAAE,CAAC,4CAAD,EAA+C,YAAM;AACtD,QAAMC,OAAO,GAAG,IAAIP,OAAJ,EAAhB;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAe,IAAIC,IAAJ,EAAf,EAA2BE,MAA3B,CAAkCC,KAAlC,CAAwC,UAAxC;AACA,GAHC,CAAF;AAKAN,EAAAA,EAAE,CAAC,2CAAD,EAA8C,YAAM;AACrD,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACA,QAAM2B,UAAU,GAAG;AAAEC,MAAAA,OAAO,EAAE;AAAA,eAAMnB,IAAI,CAACC,GAAL,EAAN;AAAA;AAAX,KAAnB;AACAH,IAAAA,OAAO,CAACC,MAAR,CAAemB,UAAf,EAA2BhB,MAA3B,CAAkCC,KAAlC,CAAwC,UAAxC;AACA,GAJC,CAAF;AAMAN,EAAAA,EAAE,CAAC,qDAAD,EAAwD,YAAM;AAC/D,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;;AACA,QAAM6B,OAAO,GAAG,SAAVA,OAAU;AAAA,aAAMtB,OAAO,CAACC,MAAR,CAAe,cAAf,CAAN;AAAA,KAAhB;;AACAqB,IAAAA,OAAO,CAAClB,MAAR,CAAemB,KAAf,CAAqB,iEAArB;AACA,GAJC,CAAF;AAMAxB,EAAAA,EAAE,CAAC,uFAAD,EAA0F,YAAM;AACjG,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,EAAf,EAA2B;AAAEqB,MAAAA,KAAK,EAAE,CAAC,aAAD;AAAT,KAA3B,EAAuDpB,MAAvD,CAA8DC,KAA9D,CAAoE,EAApE;AACA,GAHC,CAAF;AAKAN,EAAAA,EAAE,CAAC,kDAAD,EAAqD,YAAM;AAC5D,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB,CAD4D,CAG5D;;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,EAAf,EAA2B;AAC1BsB,MAAAA,MAD0B,wBACU;AAAA,YAA3BtB,GAA2B,QAA3BA,GAA2B;AAAA,YAAtBuB,IAAsB,QAAtBA,IAAsB;AAAA,YAAhBC,IAAgB,QAAhBA,IAAgB;AAAA,YAAVC,MAAU,QAAVA,MAAU;AACnC,eAAOA,MAAP;AACA;AAHyB,KAA3B,EAKCxB,MALD,CAKQC,KALR,CAKc,IALd,EAJ4D,CAW5D;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,EAAf,EAA2B;AAC1BsB,MAAAA,MAD0B,yBACU;AAAA,YAA3BtB,GAA2B,SAA3BA,GAA2B;AAAA,YAAtBuB,IAAsB,SAAtBA,IAAsB;AAAA,YAAhBC,IAAgB,SAAhBA,IAAgB;AAAA,YAAVC,MAAU,SAAVA,MAAU;AACnC;AACA;AAHyB,KAA3B,EAKCxB,MALD,CAKQC,KALR,CAKc,UALd;AAMA,GAlBC,CAAF;AAoBAN,EAAAA,EAAE,CAAC,4BAAD,EAA+B,YAAM;AACtC,QAAIN,OAAJ,CAAY,IAAZ,EAAkBQ,MAAlB,CAAyBC,IAAI,CAACC,GAAL,KAAa,KAAK,EAAL,GAAU,IAAhD,EAAsDC,MAAtD,CAA6DC,KAA7D,CAAmE,WAAnE;AACA,QAAIZ,OAAJ,CAAY,IAAZ,EAAkBQ,MAAlB,CAAyBC,IAAI,CAACC,GAAL,KAAa,KAAK,IAA3C,EAAiDC,MAAjD,CAAwDC,KAAxD,CAA8D,gBAA9D;AACA,GAHC,CAAF;AAKAN,EAAAA,EAAE,CAAC,+BAAD,EAAkC,YAAM;AACzC;AACA,QAAIN,OAAJ,CAAY,IAAZ,EAAkBQ,MAAlB,CAAyBC,IAAI,CAACC,GAAL,EAAzB,EAAqCC,MAArC,CAA4CC,KAA5C,CAAkD,UAAlD;AACA,QAAIZ,OAAJ,CAAY,IAAZ,EAAkBQ,MAAlB,CAAyBC,IAAI,CAACC,GAAL,EAAzB,EAAqC,aAArC,EAAoD;AAAEG,MAAAA,MAAM,EAAE;AAAV,KAApD,EAAsEF,MAAtE,CAA6EC,KAA7E,CAAmF,aAAnF,EAHyC,CAKzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;;AACA,QAAMwB,MAAM,GAAG;AACdC,MAAAA,KAAK,EAAE,CAAC;AACPC,QAAAA,IAAI,EAAE;AADC,OAAD,CADO;AAIdxB,MAAAA,MAAM,EAAE;AAJM,KAAf;AAMA,QAAId,OAAJ,CAAY,IAAZ,EAAkBQ,MAAlB,CAAyBC,IAAI,CAACC,GAAL,KAAa,IAAI,GAAJ,GAAU,EAAV,GAAe,EAAf,GAAoB,EAApB,GAAyB,IAA/D,EAAqE0B,MAArE,EAA6EzB,MAA7E,CAAoFC,KAApF,CAA0F,KAA1F;AACA,QAAIZ,OAAJ,CAAY,IAAZ,EAAkBQ,MAAlB,CAAyBC,IAAI,CAACC,GAAL,KAAa,IAAI,GAAJ,GAAU,EAAV,GAAe,EAAf,GAAoB,EAApB,GAAyB,IAA/D,EAAqE0B,MAArE,EAA6E;AAAEvB,MAAAA,MAAM,EAAE;AAAV,KAA7E,EAA+FF,MAA/F,CAAsGC,KAAtG,CAA4G,KAA5G;AACA,GAzBC,CAAF;AA2BAN,EAAAA,EAAE,CAAC,yGAAD,EAA4G,YAAM;AACnH;AACA,QAAM+B,KAAK,GAAG;AACbnB,MAAAA,SAAS,EAAE,CAAC;AACXqB,QAAAA,MAAM,EAAE,CADG;AAEXD,QAAAA,IAAI,EAAE;AAFK,OAAD,CADE;AAKbrB,MAAAA,OAAO,EAAE;AALI,KAAd;AAOA,QAAIjB,OAAJ,CAAY,IAAZ,EAAkBQ,MAAlB,CAAyBC,IAAI,CAACC,GAAL,KAAa,KAAK,IAA3C,EAAiD2B,KAAjD,EAAwD1B,MAAxD,CAA+DC,KAA/D,CAAqE,KAArE;AACA,QAAIZ,OAAJ,CAAY,IAAZ,EAAkBQ,MAAlB,CAAyBC,IAAI,CAACC,GAAL,KAAa,KAAK,IAA3C,EAAiD2B,KAAjD,EAAwD;AAAExB,MAAAA,MAAM,EAAE;AAAV,KAAxD,EAA0EF,MAA1E,CAAiFC,KAAjF,CAAuF,KAAvF;AACA,GAXC,CAAF;AAaAN,EAAAA,EAAE,CAAC,iGAAD,EAAoG,YAAM;AAC3G,QAAIN,OAAJ,CAAY,KAAZ,EAAmBQ,MAAnB,CAA0BC,IAAI,CAACC,GAAL,KAAa,KAAK,IAA5C,EAAkDC,MAAlD,CAAyDC,KAAzD,CAA+D,gBAA/D;AACA,GAFC,CAAF;AAIAN,EAAAA,EAAE,CAAC,uCAAD,EAA0C,YAAM;AACjD,KAAC;AAAA,aAAMN,OAAO,CAACoB,SAAR,EAAN;AAAA,KAAD,EAA4BT,MAA5B,CAAmCmB,KAAnC,CAAyC,uBAAzC;AACA,GAFC,CAAF;AAIAxB,EAAAA,EAAE,CAAC,sFAAD,EAAyF,YAAM;AAChGN,IAAAA,OAAO,CAACoB,SAAR,CAAkBjB,OAAlB;AACA,QAAMqC,YAAY,GAAGrC,OAAO,CAAC,MAAD,CAAP,CAAgBsC,MAArC;AACAtC,IAAAA,OAAO,CAAC,MAAD,CAAP,CAAgBsC,MAAhB,GAAyB;AACxBf,MAAAA,IAAI,EAAE,iBADkB;AAExBb,MAAAA,MAAM,EAAE;AAFgB,KAAzB;AAKA,QAAIb,OAAJ,CAAY,IAAZ,EAAkBQ,MAAlB,CAAyBC,IAAI,CAACC,GAAL,EAAzB,EAAqC;AACpCK,MAAAA,KAAK,EAAE,CAAC;AACPuB,QAAAA,IAAI,EAAE;AADC,OAAD,CAD6B;AAIpC;AACAxB,MAAAA,MAAM,EAAE;AAL4B,KAArC,EAMGH,MANH,CAMUC,KANV,CAMgB,eANhB;AAQA,QAAIZ,OAAJ,CAAY,IAAZ,EAAkBQ,MAAlB,CAAyBC,IAAI,CAACC,GAAL,EAAzB,EAAqC;AACpCK,MAAAA,KAAK,EAAE,CAAC;AACPuB,QAAAA,IAAI,EAAE;AADC,OAAD,CAD6B;AAIpC;AACAxB,MAAAA,MAAM,EAAE;AAL4B,KAArC,EAMG;AACFD,MAAAA,MAAM,EAAE;AADN,KANH,EAQGF,MARH,CAQUC,KARV,CAQgB,cARhB;AAUAT,IAAAA,OAAO,CAAC,MAAD,CAAP,CAAgBsC,MAAhB,GAAyBD,YAAzB;AACA,GA3BC,CAAF;AA6BAlC,EAAAA,EAAE,CAAC,iDAAD,EAAoD,YAAM;AAC3D,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB,CAD2D,CAE3D;;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAe,IAAf,EAAqB,SAArB,EAAgC;AAC/BkC,MAAAA,mBAAmB,EAAE,IADU;AAE/BhC,MAAAA,GAAG,EAAE,CAF0B;AAG/BiC,MAAAA,KAAK,EAAE;AAHwB,KAAhC,EAIGhC,MAJH,CAIUiC,IAJV,CAIehC,KAJf,CAIqB,CACpB,IADoB,EAEpB,CAFoB,CAJrB;AAQA,GAXC,CAAF;AAaAN,EAAAA,EAAE,CAAC,iDAAD,EAAoD,YAAM;AAC3D,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB,CAD2D,CAE3D;;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAe,IAAf,EAAqB,SAArB,EAAgC;AAC/BkC,MAAAA,mBAAmB,EAAE,IADU;AAE/BhC,MAAAA,GAAG,EAAE;AAF0B,KAAhC,EAGGC,MAHH,CAGUiC,IAHV,CAGehC,KAHf,CAGqB,CACpB,IADoB,EAEpB,GAFoB,CAHrB;AAOA,GAVC,CAAF;AAYAN,EAAAA,EAAE,CAAC,oEAAD,EAAuE,YAAM;AAC9E,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB,CAD8E,CAE9E;;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,CAFgC;AAGrCiC,MAAAA,KAAK,EAAE;AAH8B,KAAtC,EAIGhC,MAJH,CAIUiC,IAJV,CAIehC,KAJf,CAIqB,CACpB,IADoB,EAEpB,CAFoB,CAJrB,EAH8E,CAW9E;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,CAFgC;AAGrCiC,MAAAA,KAAK,EAAE;AAH8B,KAAtC,EAIGhC,MAJH,CAIUiC,IAJV,CAIehC,KAJf,CAIqB,CACpB,KADoB,EAEpB,IAFoB,CAJrB,EAZ8E,CAoB9E;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK,IAF2B;AAGrCiC,MAAAA,KAAK,EAAE;AAH8B,KAAtC,EAIGhC,MAJH,CAIUiC,IAJV,CAIehC,KAJf,CAIqB,CACpB,IADoB,EAEpB,CAFoB,CAJrB,EArB8E,CA6B9E;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK,IAAL,GAAY,CAFoB;AAGrCiC,MAAAA,KAAK,EAAE;AAH8B,KAAtC,EAIGhC,MAJH,CAIUiC,IAJV,CAIehC,KAJf,CAIqB,CACpB,KADoB,EAEpB;AACA,QAHoB,CAJrB,EA9B8E,CAuC9E;AACA;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK,IAF2B;AAGrCG,MAAAA,MAAM,EAAE,IAH6B;AAIrC8B,MAAAA,KAAK,EAAE;AAJ8B,KAAtC,EAKGhC,MALH,CAKUiC,IALV,CAKehC,KALf,CAKqB,CACpB,KADoB,EAEpB,CAFoB,CALrB,EAzC8E,CAkD9E;AACA;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK,IAF2B;AAGrCiC,MAAAA,KAAK,EAAE;AAH8B,KAAtC,EAIGhC,MAJH,CAIUiC,IAJV,CAIehC,KAJf,CAIqB,CACpB,KADoB,EAEpB,IAFoB,CAJrB,EApD8E,CA4D9E;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK,IAAL,GAAY,CAFoB;AAGrCiC,MAAAA,KAAK,EAAE;AAH8B,KAAtC,EAIGhC,MAJH,CAIUiC,IAJV,CAIehC,KAJf,CAIqB,CACpB,KADoB,EAEpB,OAAO,CAFa,CAJrB,EA7D8E,CAqE9E;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK,IAAL,GAAY,IAFoB;AAGrCiC,MAAAA,KAAK,EAAE;AAH8B,KAAtC,EAIGhC,MAJH,CAIUiC,IAJV,CAIehC,KAJf,CAIqB,CACpB,IADoB,EAEpB,IAFoB,CAJrB;AAQA,GA9EC,CAAF;AAgFAN,EAAAA,EAAE,CAAC,oEAAD,EAAuE,YAAM;AAC9E,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB,CAD8E,CAE9E;;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE;AAFgC,KAAtC,EAGGC,MAHH,CAGUiC,IAHV,CAGehC,KAHf,CAGqB,CACpB,IADoB,EAEpB,MAAM,CAFc,CAHrB,EAH8E,CAU9E;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,MAAM;AAF0B,KAAtC,EAGGC,MAHH,CAGUiC,IAHV,CAGehC,KAHf,CAGqB,CACpB,KADoB,EAEpB,IAFoB,CAHrB,EAX8E,CAkB9E;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,OAAO;AAFyB,KAAtC,EAGGC,MAHH,CAGUiC,IAHV,CAGehC,KAHf,CAGqB,CACpB,IADoB,EAEpB,CAFoB,CAHrB,EAnB8E,CA0B9E;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,OAAO,IAAP,GAAc;AAFkB,KAAtC,EAGGC,MAHH,CAGUiC,IAHV,CAGehC,KAHf,CAGqB,CACpB,KADoB,EAEpB;AACA,OAHoB,CAHrB,EA3B8E,CAmC9E;AACA;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK,IAF2B;AAGrCG,MAAAA,MAAM,EAAE;AAH6B,KAAtC,EAIGF,MAJH,CAIUiC,IAJV,CAIehC,KAJf,CAIqB,CACpB,KADoB,EAEpB,CAFoB,CAJrB,EArC8E,CA6C9E;AACA;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK;AAF2B,KAAtC,EAGGC,MAHH,CAGUiC,IAHV,CAGehC,KAHf,CAGqB,CACpB,KADoB,EAEpB,GAFoB,CAHrB,EA/C8E,CAsD9E;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK,IAAL,GAAY;AAFoB,KAAtC,EAGGC,MAHH,CAGUiC,IAHV,CAGehC,KAHf,CAGqB,CACpB,KADoB,EAEpB,MAAM,CAFc,CAHrB,EAvD8E,CA8D9E;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK,IAAL,GAAY;AAFoB,KAAtC,EAGGC,MAHH,CAGUiC,IAHV,CAGehC,KAHf,CAGqB,CACpB,IADoB,EAEpB,IAFoB,CAHrB;AAOA,GAtEC,CAAF;AAwEAN,EAAAA,EAAE,CAAC,qFAAD,EAAwF,YAAM;AAC/F,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB,CAD+F,CAG/F;AACA;AACA;;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B;AACzBO,MAAAA,KAAK,EAAE,CAAC;AACPC,QAAAA,QAAQ,EAAE,QADH;AAEP6B,QAAAA,OAAO,EAAE;AAFF,OAAD,CADkB;AAKzB/B,MAAAA,MAAM,EAAE,MALiB;AAMzB6B,MAAAA,KAAK,EAAE;AANkB,KAA1B,EAOG;AACFD,MAAAA,mBAAmB,EAAE,IADnB;AAEFhC,MAAAA,GAAG,EAAE,CAAC,GAAD,GAAO;AAFV,KAPH,EAUGC,MAVH,CAUUiC,IAVV,CAUehC,KAVf,CAUqB,CACpB,IADoB,EAEpB,MAAM,IAAN,GAAa,CAFO,CAVrB,EAN+F,CAqB/F;AACA;AACA;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B;AACzBO,MAAAA,KAAK,EAAE,CAAC;AACPC,QAAAA,QAAQ,EAAE,QADH;AAEP6B,QAAAA,OAAO,EAAE,KAAK;AAFP,OAAD,CADkB;AAKzB/B,MAAAA,MAAM,EAAE,MALiB;AAMzB6B,MAAAA,KAAK,EAAE;AANkB,KAA1B,EAOG;AACFD,MAAAA,mBAAmB,EAAE,IADnB;AAEFhC,MAAAA,GAAG,EAAE,IAAI;AAFP,KAPH,EAUGC,MAVH,CAUUiC,IAVV,CAUehC,KAVf,CAUqB,CACpB,EADoB,EAEpB,KAAK,IAAL,GAAY,CAFQ,CAVrB,EAxB+F,CAuC/F;AACA;AACA;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B;AACzBO,MAAAA,KAAK,EAAE,CAAC;AACPC,QAAAA,QAAQ,EAAE,QADH;AAEP6B,QAAAA,OAAO,EAAE;AAFF,OAAD,CADkB;AAKzB/B,MAAAA,MAAM,EAAE,MALiB;AAMzB6B,MAAAA,KAAK,EAAE;AANkB,KAA1B,EAOG;AACFD,MAAAA,mBAAmB,EAAE,IADnB;AAEFhC,MAAAA,GAAG,EAAE,KAAK;AAFR,KAPH,EAUGC,MAVH,CAUUiC,IAVV,CAUehC,KAVf,CAUqB,CACpB,EADoB,EAEpB,KAAK,IAFe,CAVrB,EA1C+F,CAyD/F;AACA;AACA;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B;AACzBO,MAAAA,KAAK,EAAE,CAAC;AACPC,QAAAA,QAAQ,EAAE,QADH;AAEP6B,QAAAA,OAAO,EAAE;AAFF,OAAD,CADkB;AAKzB/B,MAAAA,MAAM,EAAE,MALiB;AAMzB6B,MAAAA,KAAK,EAAE;AANkB,KAA1B,EAOG;AACFD,MAAAA,mBAAmB,EAAE,IADnB;AAEFhC,MAAAA,GAAG,EAAE,KAAK,IAAL,GAAY,KAAK;AAFpB,KAPH,EAUGC,MAVH,CAUUiC,IAVV,CAUehC,KAVf,CAUqB,CACpB,IADoB,EAEpB,KAAK,IAFe,CAVrB,EA5D+F,CA2E/F;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,CAFgC;AAGrCiC,MAAAA,KAAK,EAAE;AAH8B,KAAtC,EAIGhC,MAJH,CAIUiC,IAJV,CAIehC,KAJf,CAIqB,CACpB,KADoB,EAEpB,IAFoB,CAJrB,EA5E+F,CAoF/F;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK,IAF2B;AAGrCiC,MAAAA,KAAK,EAAE;AAH8B,KAAtC,EAIGhC,MAJH,CAIUiC,IAJV,CAIehC,KAJf,CAIqB,CACpB,IADoB,EAEpB,CAFoB,CAJrB,EArF+F,CA6F/F;AACA;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK,IAAL,GAAY,CAFoB;AAGrCiC,MAAAA,KAAK,EAAE;AAH8B,KAAtC,EAIGhC,MAJH,CAIUiC,IAJV,CAIehC,KAJf,CAIqB,CACpB,KADoB,EAEpB,IAFoB,CAJrB,EA/F+F,CAuG/F;AACA;AACA;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK,IAF2B;AAGrCG,MAAAA,MAAM,EAAE,IAH6B;AAIrC8B,MAAAA,KAAK,EAAE;AAJ8B,KAAtC,EAKGhC,MALH,CAKUiC,IALV,CAKehC,KALf,CAKqB,CACpB,KADoB,EAEpB,CAFoB,CALrB,EA1G+F,CAmH/F;AACA;AACA;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK,IAF2B;AAGrCiC,MAAAA,KAAK,EAAE;AAH8B,KAAtC,EAIGhC,MAJH,CAIUiC,IAJV,CAIehC,KAJf,CAIqB,CACpB,KADoB,EAEpB,IAFoB,CAJrB,EAtH+F,CA8H/F;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK,IAAL,GAAY,CAFoB;AAGrCiC,MAAAA,KAAK,EAAE;AAH8B,KAAtC,EAIGhC,MAJH,CAIUiC,IAJV,CAIehC,KAJf,CAIqB,CACpB,KADoB,EAEpB,OAAO,CAFa,CAJrB,EA/H+F,CAuI/F;;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,KAAK,IAApB,EAA0B,UAA1B,EAAsC;AACrCkC,MAAAA,mBAAmB,EAAE,IADgB;AAErChC,MAAAA,GAAG,EAAE,KAAK,IAAL,GAAY,IAFoB;AAGrCiC,MAAAA,KAAK,EAAE;AAH8B,KAAtC,EAIGhC,MAJH,CAIUiC,IAJV,CAIehC,KAJf,CAIqB,CACpB,IADoB,EAEpB,IAFoB,CAJrB;AAQA,GAhJC,CAAF;AAkJAN,EAAAA,EAAE,CAAC,6CAAD,EAAgD,YAAM;AACvD,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,EAAf,EAA2B;AAC1BI,MAAAA,MAAM,EAAE,MADkB;AAE1BC,MAAAA,KAAK,EAAE,CAAC;AACPP,QAAAA,MADO,kBACA0B,IADA,EACMC,MADN,SAC4B;AAAA,cAAZnB,QAAY,SAAZA,QAAY;AAClC,iBAAOA,QAAQ,CAAC,QAAD,EAAW,CAAX,CAAf;AACA;AAHM,OAAD;AAFmB,KAA3B,EAOGL,MAPH,CAOUC,KAPV,CAOgB,aAPhB;AAQA,GAVC,CAAF;AAYAN,EAAAA,EAAE,CAAC,yCAAD,EAA4C,YAAM;AACnD,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,EAAkB;AAAE8C,MAAAA,QAAQ,EAAE;AAAZ,KAAlB,CAAhB,CADmD,CAEnD;;AACAvC,IAAAA,OAAO,CAACC,MAAR,CAAe,CAAf,EAAkB,OAAlB,EAA2B;AAAEE,MAAAA,GAAG,EAAE;AAAP,KAA3B,EAAuCC,MAAvC,CAA8CC,KAA9C,CAAoD,UAApD;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,IAAf,EAAqB,OAArB,EAA8B;AAAEE,MAAAA,GAAG,EAAE;AAAP,KAA9B,EAA0CC,MAA1C,CAAiDC,KAAjD,CAAuD,aAAvD;AACA,GALC,CAAF;AAOAN,EAAAA,EAAE,CAAC,yDAAD,EAA4D,YAAM;AACnE,QAAMiB,IAAI,GAAGwB,MAAM,CAACxB,IAApB;AACAwB,IAAAA,MAAM,CAACxB,IAAP,GAAcF,SAAd;AACA,QAAMd,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAe,IAAf,EAAqB,OAArB,EAA8B;AAAEE,MAAAA,GAAG,EAAE;AAAP,KAA9B,EAA0CC,MAA1C,CAAiDC,KAAjD,CAAuD,aAAvD;AACAmC,IAAAA,MAAM,CAACxB,IAAP,GAAcA,IAAd;AACA,GANC,CAAF;AAQAjB,EAAAA,EAAE,CAAC,2CAAD,EAA8C,YAAM;AACrD,QAAIN,OAAJ,CAAY,IAAZ,EAAkBQ,MAAlB,CAAyB,CAAzB,EAA4B;AAC3BM,MAAAA,MAAM,EAAE,MADmB;AAE3BC,MAAAA,KAAK,EAAE,CAAC;AACPC,QAAAA,QAAQ,EAAE;AADH,OAAD;AAFoB,KAA5B,EAKG;AAAEN,MAAAA,GAAG,EAAE;AAAP,KALH,EAKeC,MALf,CAKsBC,KALtB,CAK4B,eAL5B;AAMA,GAPC,CAAF;AASAN,EAAAA,EAAE,CAAC,wEAAD,EAA2E,YAAM;AAClF,QAAIN,OAAJ,CAAY,IAAZ,EAAkBQ,MAAlB,CAAyB,CAAzB,EAA4B;AAC3BM,MAAAA,MAAM,EAAE,MADmB;AAE3BC,MAAAA,KAAK,EAAE,CAAC;AACPC,QAAAA,QAAQ,EAAE;AADH,OAAD;AAFoB,KAA5B,EAKG;AAAEN,MAAAA,GAAG,EAAE,CAAP;AAAUG,MAAAA,MAAM,EAAE;AAAlB,KALH,EAK6BF,MAL7B,CAKoCC,KALpC,CAK0C,cAL1C;AAMA,GAPC,CAAF;AASAN,EAAAA,EAAE,CAAC,iEAAD,EAAoE,YAAM;AAC3E,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACAgD,IAAAA,MAAM,CAAC;AAAA,aAAMzC,OAAO,CAACC,MAAR,CAAeC,IAAI,CAACC,GAAL,KAAa,IAA5B,EAAkC;AAC9CI,QAAAA,MAAM,EAAE,MADsC;AAE9CC,QAAAA,KAAK,EAAE,CAAC,EAAD;AAFuC,OAAlC,CAAN;AAAA,KAAD,CAAN,CAGIkC,EAHJ,CAGOnB,KAHP,CAGa,wDAHb;AAIA,GANC,CAAF;AAQAxB,EAAAA,EAAE,CAAC,2BAAD,EAA8B,YAAM;AACrCN,IAAAA,OAAO,CAACkD,gBAAR,GAA2BvC,MAA3B,CAAkCC,KAAlC,CAAwC,IAAxC;AACAZ,IAAAA,OAAO,CAACmD,gBAAR,CAAyB;AACxBhB,MAAAA,MAAM,EAAE;AADgB,KAAzB;AAGAnC,IAAAA,OAAO,CAACkD,gBAAR,GAA2BvC,MAA3B,CAAkCC,KAAlC,CAAwC,IAAxC;AACAoC,IAAAA,MAAM,CAAC,YAAM;AACZhD,MAAAA,OAAO,CAACmD,gBAAR,CAAyB;AACxBhB,QAAAA,MAAM,EAAE;AADgB,OAAzB;AAGA,KAJK,CAAN,CAIGc,EAJH,CAIMnB,KAJN,CAIY,sDAJZ;AAKA9B,IAAAA,OAAO,CAACI,gBAAR,CAAyB,IAAzB;AACA,GAZC,CAAF;AAcAE,EAAAA,EAAE,CAAC,iCAAD,EAAoC,YAAM;AAC3C,QAAMC,OAAO,GAAG,IAAIP,OAAJ,CAAY,IAAZ,CAAhB;AACAO,IAAAA,OAAO,CAACC,MAAR,CAAe,MAAM,IAArB,EAA2B,SAA3B,EAAsC;AAAEE,MAAAA,GAAG,EAAE,CAAP;AAAUiC,MAAAA,KAAK,EAAE;AAAjB,KAAtC,EAAkEhC,MAAlE,CAAyEC,KAAzE,CAA+E,IAA/E;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,IAAI,IAAnB,EAAyB,SAAzB,EAAoC;AAAEE,MAAAA,GAAG,EAAE,CAAP;AAAUiC,MAAAA,KAAK,EAAE;AAAjB,KAApC,EAAgEhC,MAAhE,CAAuEC,KAAvE,CAA6E,IAA7E;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,MAAM,IAArB,EAA2B,SAA3B,EAAsC;AAAEE,MAAAA,GAAG,EAAE,CAAP;AAAUiC,MAAAA,KAAK,EAAE;AAAjB,KAAtC,EAAkEhC,MAAlE,CAAyEC,KAAzE,CAA+E,IAA/E;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,IAAI,IAAnB,EAAyB,SAAzB,EAAoC;AAAEE,MAAAA,GAAG,EAAE,CAAP;AAAUiC,MAAAA,KAAK,EAAE;AAAjB,KAApC,EAAgEhC,MAAhE,CAAuEC,KAAvE,CAA6E,IAA7E;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,MAAM,EAAN,GAAW,IAA1B,EAAgC,SAAhC,EAA2C;AAAEE,MAAAA,GAAG,EAAE,CAAP;AAAUiC,MAAAA,KAAK,EAAE;AAAjB,KAA3C,EAAuEhC,MAAvE,CAA8EC,KAA9E,CAAoF,IAApF;AACAL,IAAAA,OAAO,CAACC,MAAR,CAAe,IAAI,EAAJ,GAAS,IAAxB,EAA8B,SAA9B,EAAyC;AAAEE,MAAAA,GAAG,EAAE,CAAP;AAAUiC,MAAAA,KAAK,EAAE;AAAjB,KAAzC,EAAqEhC,MAArE,CAA4EC,KAA5E,CAAkF,IAAlF;AACA,GARC,CAAF;AASA,CAhpBO,CAAR;AAkpBAP,QAAQ,CAAC,eAAD,EAAkB,YAAM;AAC/BC,EAAAA,EAAE,CAAC,8BAAD,EAAiC,YAAM;AACxCL,IAAAA,aAAa,CAAC;AACbiB,MAAAA,SAAS,EAAE;AADE,KAAD,CAAb,CAEGP,MAFH,CAEUC,KAFV,CAEgB,IAFhB;AAGAX,IAAAA,aAAa,CAAC;AACbc,MAAAA,KAAK,EAAE;AADM,KAAD,CAAb,CAEGJ,MAFH,CAEUC,KAFV,CAEgB,IAFhB;AAGAX,IAAAA,aAAa,CAAC;AACbgB,MAAAA,OAAO,EAAE;AADI,KAAD,CAAb,CAEGN,MAFH,CAEUC,KAFV,CAEgB,IAFhB;AAGAX,IAAAA,aAAa,CAAC;AACbgB,MAAAA,OAAO,EAAE,CAAC,MAAD;AADI,KAAD,CAAb,CAEGN,MAFH,CAEUC,KAFV,CAEgB,IAFhB;AAGAX,IAAAA,aAAa,CAAC;AACba,MAAAA,MAAM,EAAE;AADK,KAAD,CAAb,CAEGH,MAFH,CAEUC,KAFV,CAEgB,IAFhB;AAGAX,IAAAA,aAAa,CAAC;AACba,MAAAA,MAAM,EAAE,CAAC,MAAD;AADK,KAAD,CAAb,CAEGH,MAFH,CAEUC,KAFV,CAEgB,IAFhB;AAGAX,IAAAA,aAAa,CAAC;AACb8B,MAAAA,KAAK,EAAE,CAAC,KAAD;AADM,KAAD,CAAb,CAEGpB,MAFH,CAEUC,KAFV,CAEgB,IAFhB;AAGAX,IAAAA,aAAa,CAAC;AACbY,MAAAA,MAAM,EAAE,IADK;AAEb8B,MAAAA,KAAK,EAAE,OAFM;AAGbjC,MAAAA,GAAG,EAAE,CAHQ;AAIbgC,MAAAA,mBAAmB,EAAE;AAJR,KAAD,CAAb,CAKG/B,MALH,CAKUC,KALV,CAKgB,KALhB;AAMAX,IAAAA,aAAa,CAAC,OAAD,CAAb,CAAuBU,MAAvB,CAA8BC,KAA9B,CAAoC,KAApC;AACA,GA7BC,CAAF;AA8BA,CA/BO,CAAR","sourcesContent":["import TimeAgo, { isStyleObject } from '../source/TimeAgo'\r\nimport { getLocaleData } from '../source/LocaleDataStore'\r\n\r\n// Load locale specific relative date/time messages\r\nimport english from '../locale/en'\r\n\r\n// Just so this function code is covered.\r\nTimeAgo.setDefaultLocale('en')\r\n\r\ndescribe(`javascript-time-ago`, () => {\r\n\tit('should default to \"round-minute\" style', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now()).should.equal('just now')\r\n\t\ttimeAgo.format(Date.now() + 20 * 1000).should.equal('in a moment')\r\n\t\ttimeAgo.format(Date.now() + 1 * 60 * 1000).should.equal('in 1 minute')\r\n\t\ttimeAgo.format(Date.now() + 4 * 60 * 1000).should.equal('in 4 minutes')\r\n\t})\r\n\r\n\tit('should tell `options` argument from `style` argument', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now(), 'mini-now').should.equal('now')\r\n\t\ttimeAgo.format(0, { future: true, now: 0 }).should.equal('in a moment')\r\n\t\ttimeAgo.format(0, { labels: 'mini', steps: [{ formatAs: 'now' }, { formatAs: 'second' }] }, { future: true, now: 0 }).should.equal('now')\r\n\t\ttimeAgo.format(0, { labels: ['mini'], steps: [{ formatAs: 'now' }, { formatAs: 'second' }] }, { future: true, now: 0 }).should.equal('now')\r\n\t\t// `flavour` is a legacy name of `labels` property.\r\n\t\ttimeAgo.format(0, { flavour: 'mini' }, { future: true, now: 0 }).should.equal('now')\r\n\t\ttimeAgo.format(0, { flavour: ['mini'] }, { future: true, now: 0 }).should.equal('now')\r\n\t\ttimeAgo.format(0, { steps: [{ formatAs: 'minute' }] }, { future: true, now: 0 }).should.equal('in 0 minutes')\r\n\t\t// `gradation` is a legacy name of `steps` property.\r\n\t\ttimeAgo.format(0, { gradation: [{ formatAs: 'minute' }] }, { future: true, now: 0 }).should.equal('in 0 minutes')\r\n\t})\r\n\r\n\tit('should try various label types until an appropriate one is found', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now(), { labels: ['exotic', 'short'] }).should.equal('just now')\r\n\t})\r\n\r\n\tit('should support the legacy name \"flavour\" of \"labels\"', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now(), { labels: ['exotic', 'short'] }).should.equal('just now')\r\n\t})\r\n\r\n\tit('should fallback to \"second.current\" for \"now\" when \"now\" is not defined', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\tconst englishNow = english.now\r\n\t\tdelete english.now\r\n\t\tTimeAgo.addLocale(english)\r\n\t\tenglish.now = undefined\r\n\t\ttimeAgo.format(Date.now(), { labels: 'long' }).should.equal('now')\r\n\t\tenglish.now = englishNow\r\n\t\ttimeAgo.format(Date.now(), { labels: 'long' }).should.equal('just now')\r\n\t})\r\n\r\n\tit('should not use Intl.NumberFormat if it is not available', () => {\r\n\t\tconst NumberFormat = Intl.NumberFormat\r\n\t\tdelete Intl.NumberFormat\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now() + 60 * 1000, { labels: 'long-time' }).should.equal('1 minute')\r\n\t\tIntl.NumberFormat = NumberFormat\r\n\t})\r\n\r\n\tit('should work when \"past\"/\"future\" messages are same for all quantifiers', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now() + 365 * 24 * 60 * 60 * 1000, { labels: 'short' }).should.equal('in 1 yr.')\r\n\t})\r\n\r\n\tit('should work when \"now\" is a string (does not differentiate between \"past\" and \"future\")', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\tconst englishNow = english.now\r\n\t\tenglish.now = { now: 'now' }\r\n\t\tTimeAgo.addLocale(english)\r\n\t\ttimeAgo.format(Date.now(), { labels: 'long' }).should.equal('now')\r\n\t\tenglish.now = englishNow\r\n\t\ttimeAgo.format(Date.now(), { labels: 'long' }).should.equal('just now')\r\n\t})\r\n\r\n\tit('should work when a unit has formatting rules for \"past\" and \"future\" which are strings (style: not \"long\", not \"short\", not \"narrow\")', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\tconst englishLongTimeMinute = english['long-time'].minute\r\n\t\tenglish['long-time'].minute = {\r\n\t\t\tpast: '{0} minute(s) ago',\r\n\t\t\tfuture: 'in {0} minute(s)'\r\n\t\t}\r\n\t\tTimeAgo.addLocale(english)\r\n\t\t// Past.\r\n\t\ttimeAgo.format(Date.now() - 60 * 1000, { labels: 'long-time' }).should.equal('1 minute(s) ago')\r\n\t\t// Future (covers an \"else\" branch).\r\n\t\ttimeAgo.format(Date.now() + 60 * 1000, { labels: 'long-time' }).should.equal('in 1 minute(s)')\r\n\t\t// Undo.\r\n\t\tenglish['long-time'].minute = englishLongTimeMinute\r\n\t\ttimeAgo.format(Date.now() - 60 * 1000, { labels: 'long-time' }).should.equal('1 minute')\r\n\t})\r\n\r\n\tit(`should format \"now\" for \"past\" time`, () =>\r\n\t{\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now() + 10, { labels: ['long'] }).should.equal('in a moment')\r\n\t})\r\n\r\n\tit('should accept a string style name argument', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// \"mini\".\r\n\t\ttimeAgo.format(Date.now() - 0 * 1000, 'mini').should.equal('0s')\r\n\t\ttimeAgo.format(Date.now() - 1 * 1000, 'mini').should.equal('1s')\r\n\t\t// \"mini-now\".\r\n\t\ttimeAgo.format(Date.now() - 0 * 1000, 'mini-now').should.equal('now')\r\n\t\ttimeAgo.format(Date.now() - 1 * 1000, 'mini-now').should.equal('1s')\r\n\t\t// \"mini-minute-now\".\r\n\t\ttimeAgo.format(Date.now() - 29 * 1000, 'mini-minute-now').should.equal('now')\r\n\t\ttimeAgo.format(Date.now() - 60 * 1000, 'mini-minute-now').should.equal('1m')\r\n\t\t// \"mini-minute\".\r\n\t\ttimeAgo.format(Date.now() - 29 * 1000, 'mini-minute').should.equal('0m')\r\n\t\ttimeAgo.format(Date.now() - 60 * 1000, 'mini-minute').should.equal('1m')\r\n\t\t// \"twitter\".\r\n\t\ttimeAgo.format(Date.now() - 0 * 1000, 'twitter').should.equal('0s')\r\n\t\ttimeAgo.format(Date.now() - 1 * 1000, 'twitter').should.equal('1s')\r\n\t\t// \"twitter-now\".\r\n\t\ttimeAgo.format(Date.now() - 0 * 1000, 'twitter-now').should.equal('now')\r\n\t\ttimeAgo.format(Date.now() - 1 * 1000, 'twitter-now').should.equal('1s')\r\n\t\t// \"twitter-minute-now\".\r\n\t\ttimeAgo.format(Date.now() - 29 * 1000, 'twitter-minute-now').should.equal('now')\r\n\t\ttimeAgo.format(Date.now() - 60 * 1000, 'twitter-minute-now').should.equal('1m')\r\n\t\t// \"twitter-minute\".\r\n\t\ttimeAgo.format(Date.now() - 29 * 1000, 'twitter-minute').should.equal('0m')\r\n\t\ttimeAgo.format(Date.now() - 60 * 1000, 'twitter-minute').should.equal('1m')\r\n\t\t// \"twitter-first-minute\".\r\n\t\ttimeAgo.format(Date.now() - 29 * 1000, 'twitter-first-minute').should.equal('')\r\n\t\ttimeAgo.format(Date.now() - 60 * 1000, 'twitter-first-minute').should.equal('1m')\r\n\t\t// \"approximate\".\r\n\t\ttimeAgo.format(Date.now() - 45 * 1000, 'approximate').should.equal('just now')\r\n\t\t// \"convenient\" style was renamed to \"approximate\".\r\n\t\ttimeAgo.format(Date.now() - 45 * 1000, 'convenient').should.equal('just now')\r\n\t\ttimeAgo.format(Date.now() - 45 * 1000, 'round').should.equal('45 seconds ago')\r\n\t\t// \"default\" style was renamed to \"round\".\r\n\t\ttimeAgo.format(Date.now() - 45 * 1000, 'default').should.equal('45 seconds ago')\r\n\t\ttimeAgo.format(Date.now() - 29 * 1000, 'round-minute').should.equal('just now')\r\n\t\t// \"time\" style was renamed to \"approximate-time\".\r\n\t\ttimeAgo.format(Date.now() - 2 * 60 * 1000, 'time').should.equal('2 minutes')\r\n\t\ttimeAgo.format(Date.now() - 2 * 60 * 1000, 'approximate-time').should.equal('2 minutes')\r\n\t\ttimeAgo.format(Date.now(), 'exotic').should.equal('just now')\r\n\t})\r\n\r\n\tit('should accept empty constructor parameters', () => {\r\n\t\tconst timeAgo = new TimeAgo()\r\n\t\ttimeAgo.format(new Date()).should.equal('just now')\r\n\t})\r\n\r\n\tit('should accept \"mocked\" Dates when testing', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\tconst mockedDate = { getTime: () => Date.now() }\r\n\t\ttimeAgo.format(mockedDate).should.equal('just now')\r\n\t})\r\n\r\n\tit('should not accept anything but Dates and timestamps', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\tconst thrower = () => timeAgo.format('Jan 14, 2017')\r\n\t\tthrower.should.throw('Unsupported relative time formatter input: string, Jan 14, 2017')\r\n\t})\r\n\r\n\tit('should return an empty string if the specified units are not available in locale data', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now(), { units: ['femtosecond'] }).should.equal('')\r\n\t})\r\n\r\n\tit('should format for a style with \"custom\" function', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\r\n\t\t// `custom` returns a string\r\n\t\ttimeAgo.format(Date.now(), {\r\n\t\t\tcustom({ now, time, date, locale }) {\r\n\t\t\t\treturn locale\r\n\t\t\t}\r\n\t\t})\r\n\t\t.should.equal('en')\r\n\r\n\t\t// `custom` returns `undefined`\r\n\t\ttimeAgo.format(Date.now(), {\r\n\t\t\tcustom({ now, time, date, locale }) {\r\n\t\t\t\treturn\r\n\t\t\t}\r\n\t\t})\r\n\t\t.should.equal('just now')\r\n\t})\r\n\r\n\tit('should format future dates', () => {\r\n\t\tnew TimeAgo('en').format(Date.now() + 60 * 60 * 1000).should.equal('in 1 hour')\r\n\t\tnew TimeAgo('ru').format(Date.now() + 60 * 1000).should.equal('через 1 минуту')\r\n\t})\r\n\r\n\tit('should accept \"future\" option', () => {\r\n\t\t// \"now\" unit.\r\n\t\tnew TimeAgo('en').format(Date.now()).should.equal('just now')\r\n\t\tnew TimeAgo('en').format(Date.now(), 'approximate', { future: true }).should.equal('in a moment')\r\n\r\n\t\t// Non-\"now\" unit, \"long\" style.\r\n\t\t// const style = {\r\n\t\t// \tgradation: [{\r\n\t\t// \t\tfactor: 1,\r\n\t\t// \t\tunit: 'second'\r\n\t\t// \t}],\r\n\t\t// \tlabels: 'long'\r\n\t\t// }\r\n\t\t// new TimeAgo('en').format(Date.now(), style).should.equal('0 seconds ago')\r\n\t\t// new TimeAgo('en').format(Date.now(), style, { future: true }).should.equal('in 0 seconds')\r\n\r\n\t\t// Non-\"now\" unit, \"mini\" style.\r\n\t\tconst style2 = {\r\n\t\t\tstyle: [{\r\n\t\t\t\tunit: 'year'\r\n\t\t\t}],\r\n\t\t\tlabels: 'mini'\r\n\t\t}\r\n\t\tnew TimeAgo('ru').format(Date.now() - 5 * 365 * 24 * 60 * 60 * 1000, style2).should.equal('5 л')\r\n\t\tnew TimeAgo('ru').format(Date.now() - 5 * 365 * 24 * 60 * 60 * 1000, style2, { future: true }).should.equal('5 л')\r\n\t})\r\n\r\n\tit('should support the legacy properties: \"gradation\", \"flavour\", \"factor\", \"unit\", \"\\'tiny\\'\" labels style', () => {\r\n\t\t// Non-\"now\" unit, \"tiny\" style.\r\n\t\tconst style = {\r\n\t\t\tgradation: [{\r\n\t\t\t\tfactor: 5,\r\n\t\t\t\tunit: 'year'\r\n\t\t\t}],\r\n\t\t\tflavour: 'tiny'\r\n\t\t}\r\n\t\tnew TimeAgo('ru').format(Date.now() - 10 * 1000, style).should.equal('2 г')\r\n\t\tnew TimeAgo('ru').format(Date.now() - 10 * 1000, style, { future: true }).should.equal('2 г')\r\n\t})\r\n\r\n\tit('should have generated missing quantifier functions for locales that do not have it in CLDR data', () => {\r\n\t\tnew TimeAgo('ccp').format(Date.now() + 60 * 1000).should.equal('1 𑄟𑄨𑄚𑄨𑄘𑄬')\r\n\t})\r\n\r\n\tit('should throw for non-existing locales', () => {\r\n\t\t(() => TimeAgo.addLocale()).should.throw('No locale data passed')\r\n\t})\r\n\r\n\tit('should choose \"future\" variant of a label for `0` if \"future: true\" option is passed', () => {\r\n\t\tTimeAgo.addLocale(english)\r\n\t\tconst secondLabels = english['mini'].second\r\n\t\tenglish['mini'].second = {\r\n\t\t\tpast: '{0} seconds ago',\r\n\t\t\tfuture: 'in {0} seconds'\r\n\t\t}\r\n\r\n\t\tnew TimeAgo('en').format(Date.now(), {\r\n\t\t\tsteps: [{\r\n\t\t\t\tunit: 'second'\r\n\t\t\t}],\r\n\t\t\t// Uses \"mini\" labels so that it doesn't use `Intl.RelativeTimeFormat`.\r\n\t\t\tlabels: 'mini'\r\n\t\t}).should.equal('0 seconds ago')\r\n\r\n\t\tnew TimeAgo('en').format(Date.now(), {\r\n\t\t\tsteps: [{\r\n\t\t\t\tunit: 'second'\r\n\t\t\t}],\r\n\t\t\t// Uses \"mini\" labels so that it doesn't use `Intl.RelativeTimeFormat`.\r\n\t\t\tlabels: 'mini'\r\n\t\t}, {\r\n\t\t\tfuture: true\r\n\t\t}).should.equal('in 0 seconds')\r\n\r\n\t\tenglish['mini'].second = secondLabels\r\n\t})\r\n\r\n\tit('should get time to next update (round: \"floor\")', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// in 1 second -> in 0 seconds.\r\n\t\ttimeAgo.format(1000, 'twitter', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 0,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t1\r\n\t\t])\r\n\t})\r\n\r\n\tit('should get time to next update (round: \"round\")', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// in 1 second -> in 0 seconds.\r\n\t\ttimeAgo.format(1000, 'twitter', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 0\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t501\r\n\t\t])\r\n\t})\r\n\r\n\tit('should get time to next update (\"mini-now\" style) (round: \"floor\")', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// In 1 minute.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 0,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1m',\r\n\t\t\t1\r\n\t\t])\r\n\t\t// Almost in 1 minute.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 1,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'59s',\r\n\t\t\t1000\r\n\t\t])\r\n\t\t// In 1 second.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 59 * 1000,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t1\r\n\t\t])\r\n\t\t// Almost in 1 second.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 59 * 1000 + 1,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t// Right after zero point.\r\n\t\t\t1000\r\n\t\t])\r\n\t\t// Zero point (future to past).\r\n\t\t// `future: true`.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000,\r\n\t\t\tfuture: true,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1\r\n\t\t])\r\n\t\t// Zero point (future to past).\r\n\t\t// `future: false`.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1000\r\n\t\t])\r\n\t\t// Right after zero point (past).\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 1,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1000 - 1\r\n\t\t])\r\n\t\t// 1 second ago.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 1000,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t1000\r\n\t\t])\r\n\t})\r\n\r\n\tit('should get time to next update (\"mini-now\" style) (round: \"round\")', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// In 1 minute.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 0\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1m',\r\n\t\t\t500 + 1\r\n\t\t])\r\n\t\t// Almost in 1 minute.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 500 + 1\r\n\t\t}).should.deep.equal([\r\n\t\t\t'59s',\r\n\t\t\t1000\r\n\t\t])\r\n\t\t// In 1 second.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 59.5 * 1000\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t1\r\n\t\t])\r\n\t\t// Almost in 1 second.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 59.5 * 1000 + 1\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t// Right after zero point.\r\n\t\t\t500\r\n\t\t])\r\n\t\t// Zero point (future to past).\r\n\t\t// `future: true`.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000,\r\n\t\t\tfuture: true\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1\r\n\t\t])\r\n\t\t// Zero point (future to past).\r\n\t\t// `future: false`.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t500\r\n\t\t])\r\n\t\t// Right after zero point (past).\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 1\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t500 - 1\r\n\t\t])\r\n\t\t// 1 second ago.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 500\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t1000\r\n\t\t])\r\n\t})\r\n\r\n\tit('should get time to next update (first step has non-zero \"minTime\") (round: \"floor\")', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\r\n\t\t// Future.\r\n\t\t// Inside the first step.\r\n\t\t// Updates soon.\r\n\t\ttimeAgo.format(60 * 1000, {\r\n\t\t\tsteps: [{\r\n\t\t\t\tformatAs: 'minute',\r\n\t\t\t\tminTime: 60\r\n\t\t\t}],\r\n\t\t\tlabels: 'mini',\r\n\t\t\tround: 'floor'\r\n\t\t}, {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: -0.5 * 1000\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1m',\r\n\t\t\t0.5 * 1000 + 1\r\n\t\t])\r\n\r\n\t\t// Future.\r\n\t\t// Outside of the first step.\r\n\t\t// Updates right after zero point.\r\n\t\ttimeAgo.format(60 * 1000, {\r\n\t\t\tsteps: [{\r\n\t\t\t\tformatAs: 'minute',\r\n\t\t\t\tminTime: 60 * 1000\r\n\t\t\t}],\r\n\t\t\tlabels: 'mini',\r\n\t\t\tround: 'floor'\r\n\t\t}, {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 1 * 1000\r\n\t\t}).should.deep.equal([\r\n\t\t\t'',\r\n\t\t\t59 * 1000 + 1\r\n\t\t])\r\n\r\n\t\t// Zero point.\r\n\t\t// Outside of the first step.\r\n\t\t// Updates at the first step's `minTime`.\r\n\t\ttimeAgo.format(60 * 1000, {\r\n\t\t\tsteps: [{\r\n\t\t\t\tformatAs: 'minute',\r\n\t\t\t\tminTime: 60\r\n\t\t\t}],\r\n\t\t\tlabels: 'mini',\r\n\t\t\tround: 'floor'\r\n\t\t}, {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000\r\n\t\t}).should.deep.equal([\r\n\t\t\t'',\r\n\t\t\t60 * 1000\r\n\t\t])\r\n\r\n\t\t// Past.\r\n\t\t// Inside the first step.\r\n\t\t// Updates at the next minute.\r\n\t\ttimeAgo.format(60 * 1000, {\r\n\t\t\tsteps: [{\r\n\t\t\t\tformatAs: 'minute',\r\n\t\t\t\tminTime: 60\r\n\t\t\t}],\r\n\t\t\tlabels: 'mini',\r\n\t\t\tround: 'floor'\r\n\t\t}, {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 60 * 1000\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1m',\r\n\t\t\t60 * 1000\r\n\t\t])\r\n\r\n\t\t// Almost in 1 minute.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 1,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'59s',\r\n\t\t\t1000\r\n\t\t])\r\n\t\t// In 1 second.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 59 * 1000,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t1\r\n\t\t])\r\n\t\t// Almost in 1 second.\r\n\t\t// Updates right after the zero point.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 59 * 1000 + 1,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1000\r\n\t\t])\r\n\t\t// Zero point (future to past).\r\n\t\t// `future: true`.\r\n\t\t// Updates right after zero point.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000,\r\n\t\t\tfuture: true,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1\r\n\t\t])\r\n\t\t// Zero point (future to past).\r\n\t\t// `future: false`.\r\n\t\t// Updates at the next second.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1000\r\n\t\t])\r\n\t\t// Right after zero point (past).\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 1,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1000 - 1\r\n\t\t])\r\n\t\t// 1 second ago.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 1000,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t1000\r\n\t\t])\r\n\t})\r\n\r\n\tit('should pass `formatAs()` in `step.format()`', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now(), {\r\n\t\t\tlabels: 'long',\r\n\t\t\tsteps: [{\r\n\t\t\t\tformat(date, locale, { formatAs }) {\r\n\t\t\t\t\treturn formatAs('second', 1)\r\n\t\t\t\t}\r\n\t\t\t}]\r\n\t\t}).should.equal('in 1 second')\r\n\t})\r\n\r\n\tit('should support `polyfill: false` option', () => {\r\n\t\tconst timeAgo = new TimeAgo('en', { polyfill: false })\r\n\t\t// Still uses \"now\" labels, even when not polyfilled.\r\n\t\ttimeAgo.format(0, 'round', { now: 0 }).should.equal('just now')\r\n\t\ttimeAgo.format(1000, 'round', { now: 0 }).should.equal('in 1 second')\r\n\t})\r\n\r\n\tit('should not use Intl.NumberFormat if it is not available', () => {\r\n\t\tconst Intl = global.Intl\r\n\t\tglobal.Intl = undefined\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(1000, 'round', { now: 0 }).should.equal('in 1 second')\r\n\t\tglobal.Intl = Intl\r\n\t})\r\n\r\n\tit('should format `0` in past mode by default', () => {\r\n\t\tnew TimeAgo('en').format(0, {\r\n\t\t\tlabels: 'long',\r\n\t\t\tsteps: [{\r\n\t\t\t\tformatAs: 'second'\r\n\t\t\t}]\r\n\t\t}, { now: 0 }).should.equal('0 seconds ago')\r\n\t})\r\n\r\n\tit('should format `0` in future mode when `future: true` option was passed', () => {\r\n\t\tnew TimeAgo('en').format(0, {\r\n\t\t\tlabels: 'long',\r\n\t\t\tsteps: [{\r\n\t\t\t\tformatAs: 'second'\r\n\t\t\t}]\r\n\t\t}, { now: 0, future: true }).should.equal('in 0 seconds')\r\n\t})\r\n\r\n\tit('should throw if a step does not define `formatAs` or `format()`', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\texpect(() => timeAgo.format(Date.now() + 1000, {\r\n\t\t\tlabels: 'long',\r\n\t\t\tsteps: [{}]\r\n\t\t})).to.throw('Each step must define either `formatAs` or `format()`.')\r\n\t})\r\n\r\n\tit('should add default locale', () => {\r\n\t\tTimeAgo.getDefaultLocale().should.equal('en')\r\n\t\tTimeAgo.addDefaultLocale({\r\n\t\t\tlocale: 'el'\r\n\t\t})\r\n\t\tTimeAgo.getDefaultLocale().should.equal('el')\r\n\t\texpect(() => {\r\n\t\t\tTimeAgo.addDefaultLocale({\r\n\t\t\t\tlocale: 'el'\r\n\t\t\t})\r\n\t\t}).to.throw('`TimeAgo.addDefaultLocale()` can only be called once')\r\n\t\tTimeAgo.setDefaultLocale('en')\r\n\t})\r\n\r\n\tit('should support \"floor\" rounding', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(0.9 * 1000, 'twitter', { now: 0, round: 'floor' }).should.equal('0s')\r\n\t\ttimeAgo.format(1 * 1000, 'twitter', { now: 0, round: 'floor' }).should.equal('1s')\r\n\t\ttimeAgo.format(1.9 * 1000, 'twitter', { now: 0, round: 'floor' }).should.equal('1s')\r\n\t\ttimeAgo.format(2 * 1000, 'twitter', { now: 0, round: 'floor' }).should.equal('2s')\r\n\t\ttimeAgo.format(1.9 * 60 * 1000, 'twitter', { now: 0, round: 'floor' }).should.equal('1m')\r\n\t\ttimeAgo.format(2 * 60 * 1000, 'twitter', { now: 0, round: 'floor' }).should.equal('2m')\r\n\t})\r\n})\r\n\r\ndescribe('isStyleObject', () => {\r\n\tit('should detect a style object', () => {\r\n\t\tisStyleObject({\r\n\t\t\tgradation: []\r\n\t\t}).should.equal(true)\r\n\t\tisStyleObject({\r\n\t\t\tsteps: []\r\n\t\t}).should.equal(true)\r\n\t\tisStyleObject({\r\n\t\t\tflavour: 'long'\r\n\t\t}).should.equal(true)\r\n\t\tisStyleObject({\r\n\t\t\tflavour: ['long']\r\n\t\t}).should.equal(true)\r\n\t\tisStyleObject({\r\n\t\t\tlabels: 'long'\r\n\t\t}).should.equal(true)\r\n\t\tisStyleObject({\r\n\t\t\tlabels: ['long']\r\n\t\t}).should.equal(true)\r\n\t\tisStyleObject({\r\n\t\t\tunits: ['now']\r\n\t\t}).should.equal(true)\r\n\t\tisStyleObject({\r\n\t\t\tfuture: true,\r\n\t\t\tround: 'floor',\r\n\t\t\tnow: 0,\r\n\t\t\tgetTimeToNextUpdate: true\r\n\t\t}).should.equal(false)\r\n\t\tisStyleObject('round').should.equal(false)\r\n\t})\r\n})"],"file":"TimeAgo.test.js"}
1
+ {"version":3,"sources":["../source/TimeAgo.test.js"],"names":["TimeAgo","isStyleObject","getLocaleData","english","setDefaultLocale","describe","it","timeAgo","format","Date","now","should","equal","future","labels","steps","formatAs","flavour","gradation","englishNow","addLocale","undefined","NumberFormat","Intl","englishLongTimeMinute","minute","past","mockedDate","getTime","thrower","throw","units","custom","time","date","locale","style2","style","unit","factor","secondLabels","second","getTimeToNextUpdate","round","deep","minTime","polyfill","global","expect","to","getDefaultLocale","addDefaultLocale"],"mappings":"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","sourcesContent":["import TimeAgo, { isStyleObject } from '../source/TimeAgo'\r\nimport { getLocaleData } from '../source/LocaleDataStore'\r\n\r\n// Load locale specific relative date/time messages\r\nimport english from '../locale/en'\r\n\r\n// Just so this function code is covered.\r\nTimeAgo.setDefaultLocale('en')\r\n\r\ndescribe(`javascript-time-ago`, () => {\r\n\tit('should default to \"round-minute\" style', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now()).should.equal('just now')\r\n\t\ttimeAgo.format(Date.now() + 20 * 1000).should.equal('in a moment')\r\n\t\ttimeAgo.format(Date.now() + 1 * 60 * 1000).should.equal('in 1 minute')\r\n\t\ttimeAgo.format(Date.now() + 4 * 60 * 1000).should.equal('in 4 minutes')\r\n\t})\r\n\r\n\tit('should tell `options` argument from `style` argument', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now(), 'mini-now').should.equal('now')\r\n\t\ttimeAgo.format(0, { future: true, now: 0 }).should.equal('in a moment')\r\n\t\ttimeAgo.format(0, { labels: 'mini', steps: [{ formatAs: 'now' }, { formatAs: 'second' }] }, { future: true, now: 0 }).should.equal('now')\r\n\t\ttimeAgo.format(0, { labels: ['mini'], steps: [{ formatAs: 'now' }, { formatAs: 'second' }] }, { future: true, now: 0 }).should.equal('now')\r\n\t\t// `flavour` is a legacy name of `labels` property.\r\n\t\ttimeAgo.format(0, { flavour: 'mini' }, { future: true, now: 0 }).should.equal('now')\r\n\t\ttimeAgo.format(0, { flavour: ['mini'] }, { future: true, now: 0 }).should.equal('now')\r\n\t\ttimeAgo.format(0, { steps: [{ formatAs: 'minute' }] }, { future: true, now: 0 }).should.equal('in 0 minutes')\r\n\t\t// `gradation` is a legacy name of `steps` property.\r\n\t\ttimeAgo.format(0, { gradation: [{ formatAs: 'minute' }] }, { future: true, now: 0 }).should.equal('in 0 minutes')\r\n\t})\r\n\r\n\tit('should try various label types until an appropriate one is found', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now(), { labels: ['exotic', 'short'] }).should.equal('just now')\r\n\t})\r\n\r\n\tit('should support the legacy name \"flavour\" of \"labels\"', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now(), { labels: ['exotic', 'short'] }).should.equal('just now')\r\n\t})\r\n\r\n\tit('should fallback to \"second.current\" for \"now\" when \"now\" is not defined', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\tconst englishNow = english.now\r\n\t\tdelete english.now\r\n\t\tTimeAgo.addLocale(english)\r\n\t\tenglish.now = undefined\r\n\t\ttimeAgo.format(Date.now(), { labels: 'long' }).should.equal('now')\r\n\t\tenglish.now = englishNow\r\n\t\ttimeAgo.format(Date.now(), { labels: 'long' }).should.equal('just now')\r\n\t})\r\n\r\n\tit('should not use Intl.NumberFormat if it is not available', () => {\r\n\t\tconst NumberFormat = Intl.NumberFormat\r\n\t\tdelete Intl.NumberFormat\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now() + 60 * 1000, { labels: 'long-time' }).should.equal('1 minute')\r\n\t\tIntl.NumberFormat = NumberFormat\r\n\t})\r\n\r\n\tit('should work when \"past\"/\"future\" messages are same for all quantifiers', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now() + 365 * 24 * 60 * 60 * 1000, { labels: 'short' }).should.equal('in 1 yr.')\r\n\t})\r\n\r\n\tit('should work when \"now\" is a string (does not differentiate between \"past\" and \"future\")', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\tconst englishNow = english.now\r\n\t\tenglish.now = { now: 'now' }\r\n\t\tTimeAgo.addLocale(english)\r\n\t\ttimeAgo.format(Date.now(), { labels: 'long' }).should.equal('now')\r\n\t\tenglish.now = englishNow\r\n\t\ttimeAgo.format(Date.now(), { labels: 'long' }).should.equal('just now')\r\n\t})\r\n\r\n\tit('should work when a unit has formatting rules for \"past\" and \"future\" which are strings (style: not \"long\", not \"short\", not \"narrow\")', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\tconst englishLongTimeMinute = english['long-time'].minute\r\n\t\tenglish['long-time'].minute = {\r\n\t\t\tpast: '{0} minute(s) ago',\r\n\t\t\tfuture: 'in {0} minute(s)'\r\n\t\t}\r\n\t\tTimeAgo.addLocale(english)\r\n\t\t// Past.\r\n\t\ttimeAgo.format(Date.now() - 60 * 1000, { labels: 'long-time' }).should.equal('1 minute(s) ago')\r\n\t\t// Future (covers an \"else\" branch).\r\n\t\ttimeAgo.format(Date.now() + 60 * 1000, { labels: 'long-time' }).should.equal('in 1 minute(s)')\r\n\t\t// Undo.\r\n\t\tenglish['long-time'].minute = englishLongTimeMinute\r\n\t\ttimeAgo.format(Date.now() - 60 * 1000, { labels: 'long-time' }).should.equal('1 minute')\r\n\t})\r\n\r\n\tit(`should format \"now\" for \"past\" time`, () =>\r\n\t{\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now() + 10, { labels: ['long'] }).should.equal('in a moment')\r\n\t})\r\n\r\n\tit('should accept a string style name argument', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// \"mini\".\r\n\t\ttimeAgo.format(Date.now() - 0 * 1000, 'mini').should.equal('0s')\r\n\t\ttimeAgo.format(Date.now() - 1 * 1000, 'mini').should.equal('1s')\r\n\t\t// \"mini-now\".\r\n\t\ttimeAgo.format(Date.now() - 0 * 1000, 'mini-now').should.equal('now')\r\n\t\ttimeAgo.format(Date.now() - 1 * 1000, 'mini-now').should.equal('1s')\r\n\t\t// \"mini-minute-now\".\r\n\t\ttimeAgo.format(Date.now() - 29 * 1000, 'mini-minute-now').should.equal('now')\r\n\t\ttimeAgo.format(Date.now() - 60 * 1000, 'mini-minute-now').should.equal('1m')\r\n\t\t// \"mini-minute\".\r\n\t\ttimeAgo.format(Date.now() - 29 * 1000, 'mini-minute').should.equal('0m')\r\n\t\ttimeAgo.format(Date.now() - 60 * 1000, 'mini-minute').should.equal('1m')\r\n\t\t// \"twitter\".\r\n\t\ttimeAgo.format(Date.now() - 0 * 1000, 'twitter').should.equal('0s')\r\n\t\ttimeAgo.format(Date.now() - 1 * 1000, 'twitter').should.equal('1s')\r\n\t\t// \"twitter-now\".\r\n\t\ttimeAgo.format(Date.now() - 0 * 1000, 'twitter-now').should.equal('now')\r\n\t\ttimeAgo.format(Date.now() - 1 * 1000, 'twitter-now').should.equal('1s')\r\n\t\t// \"twitter-minute-now\".\r\n\t\ttimeAgo.format(Date.now() - 29 * 1000, 'twitter-minute-now').should.equal('now')\r\n\t\ttimeAgo.format(Date.now() - 60 * 1000, 'twitter-minute-now').should.equal('1m')\r\n\t\t// \"twitter-minute\".\r\n\t\ttimeAgo.format(Date.now() - 29 * 1000, 'twitter-minute').should.equal('0m')\r\n\t\ttimeAgo.format(Date.now() - 60 * 1000, 'twitter-minute').should.equal('1m')\r\n\t\t// \"twitter-first-minute\".\r\n\t\ttimeAgo.format(Date.now() - 29 * 1000, 'twitter-first-minute').should.equal('')\r\n\t\ttimeAgo.format(Date.now() - 60 * 1000, 'twitter-first-minute').should.equal('1m')\r\n\t\t// \"approximate\".\r\n\t\ttimeAgo.format(Date.now() - 45 * 1000, 'approximate').should.equal('just now')\r\n\t\t// \"convenient\" style was renamed to \"approximate\".\r\n\t\ttimeAgo.format(Date.now() - 45 * 1000, 'convenient').should.equal('just now')\r\n\t\ttimeAgo.format(Date.now() - 45 * 1000, 'round').should.equal('45 seconds ago')\r\n\t\t// \"default\" style was renamed to \"round\".\r\n\t\ttimeAgo.format(Date.now() - 45 * 1000, 'default').should.equal('45 seconds ago')\r\n\t\ttimeAgo.format(Date.now() - 29 * 1000, 'round-minute').should.equal('just now')\r\n\t\t// \"time\" style was renamed to \"approximate-time\".\r\n\t\ttimeAgo.format(Date.now() - 2 * 60 * 1000, 'time').should.equal('2 minutes')\r\n\t\ttimeAgo.format(Date.now() - 2 * 60 * 1000, 'approximate-time').should.equal('2 minutes')\r\n\t\ttimeAgo.format(Date.now(), 'exotic').should.equal('just now')\r\n\t})\r\n\r\n\tit('should accept empty constructor parameters', () => {\r\n\t\tconst timeAgo = new TimeAgo()\r\n\t\ttimeAgo.format(new Date()).should.equal('just now')\r\n\t})\r\n\r\n\tit('should accept \"mocked\" Dates when testing', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\tconst mockedDate = { getTime: () => Date.now() }\r\n\t\ttimeAgo.format(mockedDate).should.equal('just now')\r\n\t})\r\n\r\n\tit('should not accept anything but Dates and timestamps', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\tconst thrower = () => timeAgo.format('Jan 14, 2017')\r\n\t\tthrower.should.throw('Unsupported relative time formatter input: string, Jan 14, 2017')\r\n\t})\r\n\r\n\tit('should return an empty string if the specified units are not available in locale data', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now(), { units: ['femtosecond'] }).should.equal('')\r\n\t})\r\n\r\n\tit('should format for a style with \"custom\" function', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\r\n\t\t// `custom` returns a string\r\n\t\ttimeAgo.format(Date.now(), {\r\n\t\t\tcustom({ now, time, date, locale }) {\r\n\t\t\t\treturn locale\r\n\t\t\t}\r\n\t\t})\r\n\t\t.should.equal('en')\r\n\r\n\t\t// `custom` returns `undefined`\r\n\t\ttimeAgo.format(Date.now(), {\r\n\t\t\tcustom({ now, time, date, locale }) {\r\n\t\t\t\treturn\r\n\t\t\t}\r\n\t\t})\r\n\t\t.should.equal('just now')\r\n\t})\r\n\r\n\tit('should format future dates', () => {\r\n\t\tnew TimeAgo('en').format(Date.now() + 60 * 60 * 1000).should.equal('in 1 hour')\r\n\t\tnew TimeAgo('ru').format(Date.now() + 60 * 1000).should.equal('через 1 минуту')\r\n\t})\r\n\r\n\tit('should accept \"future\" option', () => {\r\n\t\t// \"now\" unit.\r\n\t\tnew TimeAgo('en').format(Date.now()).should.equal('just now')\r\n\t\tnew TimeAgo('en').format(Date.now(), 'approximate', { future: true }).should.equal('in a moment')\r\n\r\n\t\t// Non-\"now\" unit, \"long\" style.\r\n\t\t// const style = {\r\n\t\t// \tgradation: [{\r\n\t\t// \t\tfactor: 1,\r\n\t\t// \t\tunit: 'second'\r\n\t\t// \t}],\r\n\t\t// \tlabels: 'long'\r\n\t\t// }\r\n\t\t// new TimeAgo('en').format(Date.now(), style).should.equal('0 seconds ago')\r\n\t\t// new TimeAgo('en').format(Date.now(), style, { future: true }).should.equal('in 0 seconds')\r\n\r\n\t\t// Non-\"now\" unit, \"mini\" style.\r\n\t\tconst style2 = {\r\n\t\t\tstyle: [{\r\n\t\t\t\tunit: 'year'\r\n\t\t\t}],\r\n\t\t\tlabels: 'mini'\r\n\t\t}\r\n\t\tnew TimeAgo('ru').format(Date.now() - 5 * 365 * 24 * 60 * 60 * 1000, style2).should.equal('5 л')\r\n\t\tnew TimeAgo('ru').format(Date.now() - 5 * 365 * 24 * 60 * 60 * 1000, style2, { future: true }).should.equal('5 л')\r\n\t})\r\n\r\n\tit('should support the legacy properties: \"gradation\", \"flavour\", \"factor\", \"unit\", \"\\'tiny\\'\" labels style', () => {\r\n\t\t// Non-\"now\" unit, \"tiny\" style.\r\n\t\tconst style = {\r\n\t\t\tgradation: [{\r\n\t\t\t\tfactor: 5,\r\n\t\t\t\tunit: 'year'\r\n\t\t\t}],\r\n\t\t\tflavour: 'tiny'\r\n\t\t}\r\n\t\tnew TimeAgo('ru').format(Date.now() - 10 * 1000, style).should.equal('2 г')\r\n\t\tnew TimeAgo('ru').format(Date.now() - 10 * 1000, style, { future: true }).should.equal('2 г')\r\n\t})\r\n\r\n\tit('should have generated missing quantifier functions for locales that do not have it in CLDR data', () => {\r\n\t\tnew TimeAgo('ccp').format(Date.now() + 60 * 1000).should.equal('1 𑄟𑄨𑄚𑄨𑄘𑄬')\r\n\t})\r\n\r\n\tit('should throw for non-existing locales', () => {\r\n\t\t(() => TimeAgo.addLocale()).should.throw('No locale data passed')\r\n\t})\r\n\r\n\tit('should choose \"future\" variant of a label for `0` if \"future: true\" option is passed', () => {\r\n\t\tTimeAgo.addLocale(english)\r\n\t\tconst secondLabels = english['mini'].second\r\n\t\tenglish['mini'].second = {\r\n\t\t\tpast: '{0} seconds ago',\r\n\t\t\tfuture: 'in {0} seconds'\r\n\t\t}\r\n\r\n\t\tnew TimeAgo('en').format(Date.now(), {\r\n\t\t\tsteps: [{\r\n\t\t\t\tunit: 'second'\r\n\t\t\t}],\r\n\t\t\t// Uses \"mini\" labels so that it doesn't use `Intl.RelativeTimeFormat`.\r\n\t\t\tlabels: 'mini'\r\n\t\t}).should.equal('0 seconds ago')\r\n\r\n\t\tnew TimeAgo('en').format(Date.now(), {\r\n\t\t\tsteps: [{\r\n\t\t\t\tunit: 'second'\r\n\t\t\t}],\r\n\t\t\t// Uses \"mini\" labels so that it doesn't use `Intl.RelativeTimeFormat`.\r\n\t\t\tlabels: 'mini'\r\n\t\t}, {\r\n\t\t\tfuture: true\r\n\t\t}).should.equal('in 0 seconds')\r\n\r\n\t\tenglish['mini'].second = secondLabels\r\n\t})\r\n\r\n\tit('should get time to next update (round: \"floor\")', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// in 1 second -> in 0 seconds.\r\n\t\ttimeAgo.format(1000, 'twitter', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 0,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t1\r\n\t\t])\r\n\t})\r\n\r\n\tit('should get time to next update (round: \"round\")', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// in 1 second -> in 0 seconds.\r\n\t\ttimeAgo.format(1000, 'twitter', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 0\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t501\r\n\t\t])\r\n\t})\r\n\r\n\tit('should get time to next update (\"mini-now\" style) (round: \"floor\")', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// In 1 minute.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 0,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1m',\r\n\t\t\t1\r\n\t\t])\r\n\t\t// Almost in 1 minute.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 1,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'59s',\r\n\t\t\t1000\r\n\t\t])\r\n\t\t// In 1 second.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 59 * 1000,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t1\r\n\t\t])\r\n\t\t// Almost in 1 second.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 59 * 1000 + 1,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t// Right after zero point.\r\n\t\t\t1000\r\n\t\t])\r\n\t\t// Zero point (future to past).\r\n\t\t// `future: true`.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000,\r\n\t\t\tfuture: true,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1\r\n\t\t])\r\n\t\t// Zero point (future to past).\r\n\t\t// `future: false`.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1000\r\n\t\t])\r\n\t\t// Right after zero point (past).\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 1,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1000 - 1\r\n\t\t])\r\n\t\t// 1 second ago.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 1000,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t1000\r\n\t\t])\r\n\t})\r\n\r\n\tit('should get time to next update (\"mini-now\" style) (round: \"round\")', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// In 1 minute.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 0\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1m',\r\n\t\t\t500 + 1\r\n\t\t])\r\n\t\t// Almost in 1 minute.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 500 + 1\r\n\t\t}).should.deep.equal([\r\n\t\t\t'59s',\r\n\t\t\t1000\r\n\t\t])\r\n\t\t// In 1 second.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 59.5 * 1000\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t1\r\n\t\t])\r\n\t\t// Almost in 1 second.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 59.5 * 1000 + 1\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t// Right after zero point.\r\n\t\t\t500\r\n\t\t])\r\n\t\t// Zero point (future to past).\r\n\t\t// `future: true`.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000,\r\n\t\t\tfuture: true\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1\r\n\t\t])\r\n\t\t// Zero point (future to past).\r\n\t\t// `future: false`.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t500\r\n\t\t])\r\n\t\t// Right after zero point (past).\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 1\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t500 - 1\r\n\t\t])\r\n\t\t// 1 second ago.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 500\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t1000\r\n\t\t])\r\n\t})\r\n\r\n\tit('should get time to next update (first step has non-zero \"minTime\") (round: \"floor\")', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\r\n\t\t// Future.\r\n\t\t// Inside the first step.\r\n\t\t// Updates soon.\r\n\t\ttimeAgo.format(60 * 1000, {\r\n\t\t\tsteps: [{\r\n\t\t\t\tformatAs: 'minute',\r\n\t\t\t\tminTime: 60\r\n\t\t\t}],\r\n\t\t\tlabels: 'mini',\r\n\t\t\tround: 'floor'\r\n\t\t}, {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: -0.5 * 1000\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1m',\r\n\t\t\t0.5 * 1000 + 1\r\n\t\t])\r\n\r\n\t\t// Future.\r\n\t\t// Outside of the first step.\r\n\t\t// Updates right after zero point.\r\n\t\ttimeAgo.format(60 * 1000, {\r\n\t\t\tsteps: [{\r\n\t\t\t\tformatAs: 'minute',\r\n\t\t\t\tminTime: 60 * 1000\r\n\t\t\t}],\r\n\t\t\tlabels: 'mini',\r\n\t\t\tround: 'floor'\r\n\t\t}, {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 1 * 1000\r\n\t\t}).should.deep.equal([\r\n\t\t\t'',\r\n\t\t\t59 * 1000 + 1\r\n\t\t])\r\n\r\n\t\t// Zero point.\r\n\t\t// Outside of the first step.\r\n\t\t// Updates at the first step's `minTime`.\r\n\t\ttimeAgo.format(60 * 1000, {\r\n\t\t\tsteps: [{\r\n\t\t\t\tformatAs: 'minute',\r\n\t\t\t\tminTime: 60\r\n\t\t\t}],\r\n\t\t\tlabels: 'mini',\r\n\t\t\tround: 'floor'\r\n\t\t}, {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000\r\n\t\t}).should.deep.equal([\r\n\t\t\t'',\r\n\t\t\t60 * 1000\r\n\t\t])\r\n\r\n\t\t// Past.\r\n\t\t// Inside the first step.\r\n\t\t// Updates at the next minute.\r\n\t\ttimeAgo.format(60 * 1000, {\r\n\t\t\tsteps: [{\r\n\t\t\t\tformatAs: 'minute',\r\n\t\t\t\tminTime: 60\r\n\t\t\t}],\r\n\t\t\tlabels: 'mini',\r\n\t\t\tround: 'floor'\r\n\t\t}, {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 60 * 1000\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1m',\r\n\t\t\t60 * 1000\r\n\t\t])\r\n\r\n\t\t// Almost in 1 minute.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 1,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'59s',\r\n\t\t\t1000\r\n\t\t])\r\n\t\t// In 1 second.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 59 * 1000,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t1\r\n\t\t])\r\n\t\t// Almost in 1 second.\r\n\t\t// Updates right after the zero point.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 59 * 1000 + 1,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1000\r\n\t\t])\r\n\t\t// Zero point (future to past).\r\n\t\t// `future: true`.\r\n\t\t// Updates right after zero point.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000,\r\n\t\t\tfuture: true,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1\r\n\t\t])\r\n\t\t// Zero point (future to past).\r\n\t\t// `future: false`.\r\n\t\t// Updates at the next second.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1000\r\n\t\t])\r\n\t\t// Right after zero point (past).\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 1,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'now',\r\n\t\t\t1000 - 1\r\n\t\t])\r\n\t\t// 1 second ago.\r\n\t\ttimeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 1000,\r\n\t\t\tround: 'floor'\r\n\t\t}).should.deep.equal([\r\n\t\t\t'1s',\r\n\t\t\t1000\r\n\t\t])\r\n\t})\r\n\r\n\tit('should pass `formatAs()` in `step.format()`', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(Date.now(), {\r\n\t\t\tlabels: 'long',\r\n\t\t\tsteps: [{\r\n\t\t\t\tformat(date, locale, { formatAs }) {\r\n\t\t\t\t\treturn formatAs('second', 1)\r\n\t\t\t\t}\r\n\t\t\t}]\r\n\t\t}).should.equal('in 1 second')\r\n\t})\r\n\r\n\tit('should support `polyfill: false` option', () => {\r\n\t\tconst timeAgo = new TimeAgo('en', { polyfill: false })\r\n\t\t// Still uses \"now\" labels, even when not polyfilled.\r\n\t\ttimeAgo.format(0, 'round', { now: 0 }).should.equal('just now')\r\n\t\ttimeAgo.format(1000, 'round', { now: 0 }).should.equal('in 1 second')\r\n\t})\r\n\r\n\tit('should not use Intl.NumberFormat if it is not available', () => {\r\n\t\tconst Intl = global.Intl\r\n\t\tglobal.Intl = undefined\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(1000, 'round', { now: 0 }).should.equal('in 1 second')\r\n\t\tglobal.Intl = Intl\r\n\t})\r\n\r\n\tit('should format `0` in past mode by default', () => {\r\n\t\tnew TimeAgo('en').format(0, {\r\n\t\t\tlabels: 'long',\r\n\t\t\tsteps: [{\r\n\t\t\t\tformatAs: 'second'\r\n\t\t\t}]\r\n\t\t}, { now: 0 }).should.equal('0 seconds ago')\r\n\t})\r\n\r\n\tit('should format `0` in future mode when `future: true` option was passed', () => {\r\n\t\tnew TimeAgo('en').format(0, {\r\n\t\t\tlabels: 'long',\r\n\t\t\tsteps: [{\r\n\t\t\t\tformatAs: 'second'\r\n\t\t\t}]\r\n\t\t}, { now: 0, future: true }).should.equal('in 0 seconds')\r\n\t})\r\n\r\n\tit('should throw if a step does not define `formatAs` or `format()`', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\texpect(() => timeAgo.format(Date.now() + 1000, {\r\n\t\t\tlabels: 'long',\r\n\t\t\tsteps: [{}]\r\n\t\t})).to.throw('Each step must define either `formatAs` or `format()`.')\r\n\t})\r\n\r\n\tit('should add default locale', () => {\r\n\t\tTimeAgo.getDefaultLocale().should.equal('en')\r\n\t\tTimeAgo.addDefaultLocale({\r\n\t\t\tlocale: 'el'\r\n\t\t})\r\n\t\tTimeAgo.getDefaultLocale().should.equal('el')\r\n\t\t// expect(() => {\r\n\t\t\tTimeAgo.addDefaultLocale({\r\n\t\t\t\tlocale: 'el'\r\n\t\t\t})\r\n\t\t// }).to.throw('`TimeAgo.addDefaultLocale()` can only be called once')\r\n\t\tTimeAgo.setDefaultLocale('en')\r\n\t})\r\n\r\n\tit('should support \"floor\" rounding', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\ttimeAgo.format(0.9 * 1000, 'twitter', { now: 0, round: 'floor' }).should.equal('0s')\r\n\t\ttimeAgo.format(1 * 1000, 'twitter', { now: 0, round: 'floor' }).should.equal('1s')\r\n\t\ttimeAgo.format(1.9 * 1000, 'twitter', { now: 0, round: 'floor' }).should.equal('1s')\r\n\t\ttimeAgo.format(2 * 1000, 'twitter', { now: 0, round: 'floor' }).should.equal('2s')\r\n\t\ttimeAgo.format(1.9 * 60 * 1000, 'twitter', { now: 0, round: 'floor' }).should.equal('1m')\r\n\t\ttimeAgo.format(2 * 60 * 1000, 'twitter', { now: 0, round: 'floor' }).should.equal('2m')\r\n\t})\r\n})\r\n\r\ndescribe('isStyleObject', () => {\r\n\tit('should detect a style object', () => {\r\n\t\tisStyleObject({\r\n\t\t\tgradation: []\r\n\t\t}).should.equal(true)\r\n\t\tisStyleObject({\r\n\t\t\tsteps: []\r\n\t\t}).should.equal(true)\r\n\t\tisStyleObject({\r\n\t\t\tflavour: 'long'\r\n\t\t}).should.equal(true)\r\n\t\tisStyleObject({\r\n\t\t\tflavour: ['long']\r\n\t\t}).should.equal(true)\r\n\t\tisStyleObject({\r\n\t\t\tlabels: 'long'\r\n\t\t}).should.equal(true)\r\n\t\tisStyleObject({\r\n\t\t\tlabels: ['long']\r\n\t\t}).should.equal(true)\r\n\t\tisStyleObject({\r\n\t\t\tunits: ['now']\r\n\t\t}).should.equal(true)\r\n\t\tisStyleObject({\r\n\t\t\tfuture: true,\r\n\t\t\tround: 'floor',\r\n\t\t\tnow: 0,\r\n\t\t\tgetTimeToNextUpdate: true\r\n\t\t}).should.equal(false)\r\n\t\tisStyleObject('round').should.equal(false)\r\n\t})\r\n})"],"file":"TimeAgo.test.js"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "javascript-time-ago",
3
- "version": "2.3.7",
3
+ "version": "2.3.11",
4
4
  "description": "Localized relative date/time formatting",
5
5
  "main": "index.commonjs.js",
6
6
  "module": "index.js",
7
7
  "sideEffects": false,
8
8
  "dependencies": {
9
- "relative-time-format": "^1.0.5"
9
+ "relative-time-format": "^1.0.6"
10
10
  },
11
11
  "devDependencies": {
12
12
  "@babel/cli": "^7.2.3",
@@ -58,7 +58,7 @@
58
58
  },
59
59
  "repository": {
60
60
  "type": "git",
61
- "url": "git+https://github.com/catamphetamine/javascript-time-ago.git"
61
+ "url": "git+https://gitlab.com/catamphetamine/javascript-time-ago.git"
62
62
  },
63
63
  "keywords": [
64
64
  "time",
@@ -69,7 +69,7 @@
69
69
  "author": "catamphetamine <purecatamphetamine@gmail.com>",
70
70
  "license": "MIT",
71
71
  "bugs": {
72
- "url": "https://github.com/catamphetamine/javascript-time-ago/issues"
72
+ "url": "https://gitlab.com/catamphetamine/javascript-time-ago/issues"
73
73
  },
74
- "homepage": "https://github.com/catamphetamine/javascript-time-ago#readme"
74
+ "homepage": "https://gitlab.com/catamphetamine/javascript-time-ago#readme"
75
75
  }
package/index.d.ts.test DELETED
@@ -1,47 +0,0 @@
1
- export type StyleName =
2
- 'round' |
3
- 'round-minute' |
4
- 'mini' |
5
- 'mini-now' |
6
- 'mini-minute' |
7
- 'mini-minute-now' |
8
- 'twitter' |
9
- 'twitter-now' |
10
- 'twitter-minute' |
11
- 'twitter-minute-now' |
12
- 'twitter-first-minute'
13
-
14
- export interface Step {
15
- formatAs?: string,
16
- minTime?: number,
17
- format?(date: typeof Date | number, locale: string, {
18
- formatAs(unit: string, value: number): string,
19
- now: number,
20
- future: boolean
21
- }): string?,
22
- getTimeToNextUpdate?(date: typeof Date | number, {
23
- getTimeToNextUpdateForUnit(unit: string): number,
24
- now: number,
25
- future: boolean
26
- }): number
27
- }
28
-
29
- export interface Style {
30
- steps: Step[],
31
- labels: string | string[]
32
- }
33
-
34
- export type Rounding = 'round' | 'floor'
35
-
36
- interface FormatOptions {
37
- now?: number,
38
- future?: boolean,
39
- getTimeToNextUpdate?: boolean,
40
- round?: Rounding
41
- }
42
-
43
- export default class TimeAgo {
44
- constructor(locale: string | string[]);
45
- format(date: typeof Date | number, style?: StyleName | Style, options?: FormatOptions): string | [string, number?];
46
- format(date: typeof Date | number, options: FormatOptions): string | [string, number?];
47
- }