javascript-time-ago 2.6.2 → 2.6.4
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.
- package/CHANGELOG.md +5 -0
- package/README.md +19 -24
- package/bundle/javascript-time-ago.js +1 -1
- package/bundle/javascript-time-ago.js.map +1 -1
- package/bundle/javascript-time-ago.min.js +1 -1
- package/bundle/javascript-time-ago.min.js.map +1 -1
- package/commonjs/FullDateFormatter.test.js +11 -9
- package/commonjs/FullDateFormatter.test.js.map +1 -1
- package/commonjs/TimeAgo.js +1 -0
- package/commonjs/TimeAgo.js.map +1 -1
- package/commonjs/TimeAgo.test.js +249 -236
- package/commonjs/TimeAgo.test.js.map +1 -1
- package/commonjs/cache.test.js +8 -6
- package/commonjs/cache.test.js.map +1 -1
- package/commonjs/isStyleObject.test.js +21 -19
- package/commonjs/isStyleObject.test.js.map +1 -1
- package/commonjs/locale.test.js +16 -14
- package/commonjs/locale.test.js.map +1 -1
- package/commonjs/steps/approximate.test.js +26 -24
- package/commonjs/steps/approximate.test.js.map +1 -1
- package/commonjs/steps/getStep.test.js +20 -18
- package/commonjs/steps/getStep.test.js.map +1 -1
- package/commonjs/steps/getStepDenominator.test.js +9 -7
- package/commonjs/steps/getStepDenominator.test.js.map +1 -1
- package/commonjs/steps/getStepMinTime.test.js +9 -7
- package/commonjs/steps/getStepMinTime.test.js.map +1 -1
- package/commonjs/steps/getTimeToNextUpdate.test.js +56 -54
- package/commonjs/steps/getTimeToNextUpdate.test.js.map +1 -1
- package/commonjs/steps/getTimeToNextUpdateForUnit.test.js +20 -18
- package/commonjs/steps/getTimeToNextUpdateForUnit.test.js.map +1 -1
- package/commonjs/steps/helpers.test.js +6 -4
- package/commonjs/steps/helpers.test.js.map +1 -1
- package/commonjs/steps/renameLegacyProperties.test.js +12 -10
- package/commonjs/steps/renameLegacyProperties.test.js.map +1 -1
- package/commonjs/steps/round.test.js +27 -25
- package/commonjs/steps/round.test.js.map +1 -1
- package/commonjs/style/approximateTime.test.js +6 -5
- package/commonjs/style/approximateTime.test.js.map +1 -1
- package/commonjs/style/mini.test.js +62 -60
- package/commonjs/style/mini.test.js.map +1 -1
- package/commonjs/style/miniMinute.test.js +27 -25
- package/commonjs/style/miniMinute.test.js.map +1 -1
- package/commonjs/style/miniMinuteNow.test.js +27 -25
- package/commonjs/style/miniMinuteNow.test.js.map +1 -1
- package/commonjs/style/miniNow.test.js +27 -25
- package/commonjs/style/miniNow.test.js.map +1 -1
- package/commonjs/style/renameLegacyProperties.test.js +9 -7
- package/commonjs/style/renameLegacyProperties.test.js.map +1 -1
- package/commonjs/style/round.test.js +81 -79
- package/commonjs/style/round.test.js.map +1 -1
- package/commonjs/style/roundMinute.test.js +50 -48
- package/commonjs/style/roundMinute.test.js.map +1 -1
- package/commonjs/style/twitter.test.js +86 -84
- package/commonjs/style/twitter.test.js.map +1 -1
- package/commonjs/style/twitterFirstMinute.test.js +33 -31
- package/commonjs/style/twitterFirstMinute.test.js.map +1 -1
- package/commonjs/style/twitterMinute.test.js +32 -30
- package/commonjs/style/twitterMinute.test.js.map +1 -1
- package/commonjs/style/twitterMinuteNow.test.js +32 -30
- package/commonjs/style/twitterMinuteNow.test.js.map +1 -1
- package/commonjs/style/twitterNow.test.js +34 -32
- package/commonjs/style/twitterNow.test.js.map +1 -1
- package/load-all-locales/index.cjs +15 -0
- package/load-all-locales/index.cjs.js +15 -0
- package/load-all-locales/index.d.ts +0 -0
- package/load-all-locales/index.js +30 -0
- package/locale/af/index.cjs +7 -0
- package/locale/af/index.js +6 -0
- package/locale/af/package.json +5 -5
- package/locale/ak/index.cjs +7 -0
- package/locale/ak/index.js +6 -0
- package/locale/ak/package.json +5 -5
- package/locale/ak.json +8 -26
- package/locale/ak.json.js +8 -26
- package/locale/am/index.cjs +7 -0
- package/locale/am/index.js +6 -0
- package/locale/am/package.json +5 -5
- package/locale/am.json +3 -3
- package/locale/am.json.js +3 -3
- package/locale/ar/index.cjs +7 -0
- package/locale/ar/index.js +6 -0
- package/locale/ar/package.json +5 -5
- package/locale/ar-AE/index.cjs +7 -0
- package/locale/ar-AE/index.js +6 -0
- package/locale/ar-AE/package.json +5 -5
- package/locale/as/index.cjs +7 -0
- package/locale/as/index.js +6 -0
- package/locale/as/package.json +5 -5
- package/locale/ast/index.cjs +7 -0
- package/locale/ast/index.js +6 -0
- package/locale/ast/package.json +5 -5
- package/locale/az/index.cjs +7 -0
- package/locale/az/index.js +6 -0
- package/locale/az/package.json +5 -5
- package/locale/ba/index.cjs +7 -0
- package/locale/ba/index.js +6 -0
- package/locale/ba/package.json +16 -0
- package/locale/ba.json +159 -0
- package/locale/ba.json.d.ts +4 -0
- package/locale/ba.json.js +159 -0
- package/locale/bal-Latn/index.cjs +7 -0
- package/locale/bal-Latn/index.js +6 -0
- package/locale/bal-Latn/package.json +5 -5
- package/locale/be/index.cjs +7 -0
- package/locale/be/index.js +6 -0
- package/locale/be/package.json +5 -5
- package/locale/be-tarask/index.cjs +7 -0
- package/locale/be-tarask/index.js +6 -0
- package/locale/be-tarask/package.json +5 -5
- package/locale/be-tarask.json +4 -4
- package/locale/be-tarask.json.js +4 -4
- package/locale/be.json +4 -4
- package/locale/be.json.js +4 -4
- package/locale/bg/index.cjs +7 -0
- package/locale/bg/index.js +6 -0
- package/locale/bg/package.json +5 -5
- package/locale/bgc/index.cjs +7 -0
- package/locale/bgc/index.js +6 -0
- package/locale/bgc/package.json +5 -5
- package/locale/blo/index.cjs +7 -0
- package/locale/blo/index.js +6 -0
- package/locale/blo/package.json +5 -5
- package/locale/bn/index.cjs +7 -0
- package/locale/bn/index.js +6 -0
- package/locale/bn/package.json +5 -5
- package/locale/bn.json +6 -6
- package/locale/bn.json.js +6 -6
- package/locale/br/index.cjs +7 -0
- package/locale/br/index.js +6 -0
- package/locale/br/package.json +5 -5
- package/locale/brx/index.cjs +7 -0
- package/locale/brx/index.js +6 -0
- package/locale/brx/package.json +5 -5
- package/locale/bs/index.cjs +7 -0
- package/locale/bs/index.js +6 -0
- package/locale/bs/package.json +5 -5
- package/locale/bs-Cyrl/index.cjs +7 -0
- package/locale/bs-Cyrl/index.js +6 -0
- package/locale/bs-Cyrl/package.json +5 -5
- package/locale/bs.json +36 -30
- package/locale/bs.json.js +36 -30
- package/locale/bua/index.cjs +7 -0
- package/locale/bua/index.js +6 -0
- package/locale/bua/package.json +16 -0
- package/locale/bua.json +159 -0
- package/locale/bua.json.d.ts +4 -0
- package/locale/bua.json.js +159 -0
- package/locale/ca/index.cjs +7 -0
- package/locale/ca/index.js +6 -0
- package/locale/ca/package.json +5 -5
- package/locale/ccp/index.cjs +7 -0
- package/locale/ccp/index.js +6 -0
- package/locale/ccp/package.json +5 -5
- package/locale/ce/index.cjs +7 -0
- package/locale/ce/index.js +6 -0
- package/locale/ce/package.json +5 -5
- package/locale/ceb/index.cjs +7 -0
- package/locale/ceb/index.js +6 -0
- package/locale/ceb/package.json +5 -5
- package/locale/chr/index.cjs +7 -0
- package/locale/chr/index.js +6 -0
- package/locale/chr/package.json +5 -5
- package/locale/cs/index.cjs +7 -0
- package/locale/cs/index.js +6 -0
- package/locale/cs/package.json +5 -5
- package/locale/csw/index.cjs +7 -0
- package/locale/csw/index.js +6 -0
- package/locale/csw/package.json +5 -5
- package/locale/cv/index.cjs +7 -0
- package/locale/cv/index.js +6 -0
- package/locale/cv/package.json +5 -5
- package/locale/cv.json +134 -82
- package/locale/cv.json.js +134 -82
- package/locale/cy/index.cjs +7 -0
- package/locale/cy/index.js +6 -0
- package/locale/cy/package.json +5 -5
- package/locale/da/index.cjs +7 -0
- package/locale/da/index.js +6 -0
- package/locale/da/package.json +5 -5
- package/locale/de/index.cjs +7 -0
- package/locale/de/index.js +6 -0
- package/locale/de/package.json +5 -5
- package/locale/doi/index.cjs +7 -0
- package/locale/doi/index.js +6 -0
- package/locale/doi/package.json +5 -5
- package/locale/dsb/index.cjs +7 -0
- package/locale/dsb/index.js +6 -0
- package/locale/dsb/package.json +5 -5
- package/locale/dz/index.cjs +7 -0
- package/locale/dz/index.js +6 -0
- package/locale/dz/package.json +5 -5
- package/locale/ee/index.cjs +7 -0
- package/locale/ee/index.js +6 -0
- package/locale/ee/package.json +5 -5
- package/locale/el/index.cjs +7 -0
- package/locale/el/index.js +6 -0
- package/locale/el/package.json +5 -5
- package/locale/en/index.cjs +7 -0
- package/locale/en/index.js +6 -0
- package/locale/en/package.json +5 -5
- package/locale/en-001/index.cjs +7 -0
- package/locale/en-001/index.js +6 -0
- package/locale/en-001/package.json +5 -5
- package/locale/en-150/index.cjs +7 -0
- package/locale/en-150/index.js +6 -0
- package/locale/en-150/package.json +5 -5
- package/locale/en-AG/index.cjs +7 -0
- package/locale/en-AG/index.js +6 -0
- package/locale/en-AG/package.json +5 -5
- package/locale/en-AI/index.cjs +7 -0
- package/locale/en-AI/index.js +6 -0
- package/locale/en-AI/package.json +5 -5
- package/locale/en-AT/index.cjs +7 -0
- package/locale/en-AT/index.js +6 -0
- package/locale/en-AT/package.json +5 -5
- package/locale/en-AU/index.cjs +7 -0
- package/locale/en-AU/index.js +6 -0
- package/locale/en-AU/package.json +5 -5
- package/locale/en-BB/index.cjs +7 -0
- package/locale/en-BB/index.js +6 -0
- package/locale/en-BB/package.json +5 -5
- package/locale/en-BE/index.cjs +7 -0
- package/locale/en-BE/index.js +6 -0
- package/locale/en-BE/package.json +5 -5
- package/locale/en-BM/index.cjs +7 -0
- package/locale/en-BM/index.js +6 -0
- package/locale/en-BM/package.json +5 -5
- package/locale/en-BS/index.cjs +7 -0
- package/locale/en-BS/index.js +6 -0
- package/locale/en-BS/package.json +5 -5
- package/locale/en-BW/index.cjs +7 -0
- package/locale/en-BW/index.js +6 -0
- package/locale/en-BW/package.json +5 -5
- package/locale/en-BZ/index.cjs +7 -0
- package/locale/en-BZ/index.js +6 -0
- package/locale/en-BZ/package.json +5 -5
- package/locale/en-CA/index.cjs +7 -0
- package/locale/en-CA/index.js +6 -0
- package/locale/en-CA/package.json +5 -5
- package/locale/en-CC/index.cjs +7 -0
- package/locale/en-CC/index.js +6 -0
- package/locale/en-CC/package.json +5 -5
- package/locale/en-CH/index.cjs +7 -0
- package/locale/en-CH/index.js +6 -0
- package/locale/en-CH/package.json +5 -5
- package/locale/en-CK/index.cjs +7 -0
- package/locale/en-CK/index.js +6 -0
- package/locale/en-CK/package.json +5 -5
- package/locale/en-CM/index.cjs +7 -0
- package/locale/en-CM/index.js +6 -0
- package/locale/en-CM/package.json +5 -5
- package/locale/en-CX/index.cjs +7 -0
- package/locale/en-CX/index.js +6 -0
- package/locale/en-CX/package.json +5 -5
- package/locale/en-CY/index.cjs +7 -0
- package/locale/en-CY/index.js +6 -0
- package/locale/en-CY/package.json +5 -5
- package/locale/en-CZ/index.cjs +7 -0
- package/locale/en-CZ/index.js +6 -0
- package/locale/en-CZ/package.json +5 -5
- package/locale/en-DE/index.cjs +7 -0
- package/locale/en-DE/index.js +6 -0
- package/locale/en-DE/package.json +5 -5
- package/locale/en-DG/index.cjs +7 -0
- package/locale/en-DG/index.js +6 -0
- package/locale/en-DG/package.json +5 -5
- package/locale/en-DK/index.cjs +7 -0
- package/locale/en-DK/index.js +6 -0
- package/locale/en-DK/package.json +5 -5
- package/locale/en-DM/index.cjs +7 -0
- package/locale/en-DM/index.js +6 -0
- package/locale/en-DM/package.json +5 -5
- package/locale/en-EE/index.cjs +7 -0
- package/locale/en-EE/index.js +6 -0
- package/locale/en-EE/package.json +16 -0
- package/locale/en-EE.json +219 -0
- package/locale/en-EE.json.d.ts +4 -0
- package/locale/en-EE.json.js +219 -0
- package/locale/en-ER/index.cjs +7 -0
- package/locale/en-ER/index.js +6 -0
- package/locale/en-ER/package.json +5 -5
- package/locale/en-ES/index.cjs +7 -0
- package/locale/en-ES/index.js +6 -0
- package/locale/en-ES/package.json +5 -5
- package/locale/en-FI/index.cjs +7 -0
- package/locale/en-FI/index.js +6 -0
- package/locale/en-FI/package.json +5 -5
- package/locale/en-FJ/index.cjs +7 -0
- package/locale/en-FJ/index.js +6 -0
- package/locale/en-FJ/package.json +5 -5
- package/locale/en-FK/index.cjs +7 -0
- package/locale/en-FK/index.js +6 -0
- package/locale/en-FK/package.json +5 -5
- package/locale/en-FM/index.cjs +7 -0
- package/locale/en-FM/index.js +6 -0
- package/locale/en-FM/package.json +5 -5
- package/locale/en-FR/index.cjs +7 -0
- package/locale/en-FR/index.js +6 -0
- package/locale/en-FR/package.json +5 -5
- package/locale/en-GB/index.cjs +7 -0
- package/locale/en-GB/index.js +6 -0
- package/locale/en-GB/package.json +5 -5
- package/locale/en-GD/index.cjs +7 -0
- package/locale/en-GD/index.js +6 -0
- package/locale/en-GD/package.json +5 -5
- package/locale/en-GE/index.cjs +7 -0
- package/locale/en-GE/index.js +6 -0
- package/locale/en-GE/package.json +16 -0
- package/locale/en-GE.json +219 -0
- package/locale/en-GE.json.d.ts +4 -0
- package/locale/en-GE.json.js +219 -0
- package/locale/en-GG/index.cjs +7 -0
- package/locale/en-GG/index.js +6 -0
- package/locale/en-GG/package.json +5 -5
- package/locale/en-GH/index.cjs +7 -0
- package/locale/en-GH/index.js +6 -0
- package/locale/en-GH/package.json +5 -5
- package/locale/en-GI/index.cjs +7 -0
- package/locale/en-GI/index.js +6 -0
- package/locale/en-GI/package.json +5 -5
- package/locale/en-GM/index.cjs +7 -0
- package/locale/en-GM/index.js +6 -0
- package/locale/en-GM/package.json +5 -5
- package/locale/en-GS/index.cjs +7 -0
- package/locale/en-GS/index.js +6 -0
- package/locale/en-GS/package.json +5 -5
- package/locale/en-GY/index.cjs +7 -0
- package/locale/en-GY/index.js +6 -0
- package/locale/en-GY/package.json +5 -5
- package/locale/en-HK/index.cjs +7 -0
- package/locale/en-HK/index.js +6 -0
- package/locale/en-HK/package.json +5 -5
- package/locale/en-HU/index.cjs +7 -0
- package/locale/en-HU/index.js +6 -0
- package/locale/en-HU/package.json +5 -5
- package/locale/en-ID/index.cjs +7 -0
- package/locale/en-ID/index.js +6 -0
- package/locale/en-ID/package.json +5 -5
- package/locale/en-IE/index.cjs +7 -0
- package/locale/en-IE/index.js +6 -0
- package/locale/en-IE/package.json +5 -5
- package/locale/en-IL/index.cjs +7 -0
- package/locale/en-IL/index.js +6 -0
- package/locale/en-IL/package.json +5 -5
- package/locale/en-IM/index.cjs +7 -0
- package/locale/en-IM/index.js +6 -0
- package/locale/en-IM/package.json +5 -5
- package/locale/en-IN/index.cjs +7 -0
- package/locale/en-IN/index.js +6 -0
- package/locale/en-IN/package.json +5 -5
- package/locale/en-IO/index.cjs +7 -0
- package/locale/en-IO/index.js +6 -0
- package/locale/en-IO/package.json +5 -5
- package/locale/en-IT/index.cjs +7 -0
- package/locale/en-IT/index.js +6 -0
- package/locale/en-IT/package.json +5 -5
- package/locale/en-JE/index.cjs +7 -0
- package/locale/en-JE/index.js +6 -0
- package/locale/en-JE/package.json +5 -5
- package/locale/en-JM/index.cjs +7 -0
- package/locale/en-JM/index.js +6 -0
- package/locale/en-JM/package.json +5 -5
- package/locale/en-KE/index.cjs +7 -0
- package/locale/en-KE/index.js +6 -0
- package/locale/en-KE/package.json +5 -5
- package/locale/en-KI/index.cjs +7 -0
- package/locale/en-KI/index.js +6 -0
- package/locale/en-KI/package.json +5 -5
- package/locale/en-KN/index.cjs +7 -0
- package/locale/en-KN/index.js +6 -0
- package/locale/en-KN/package.json +5 -5
- package/locale/en-KY/index.cjs +7 -0
- package/locale/en-KY/index.js +6 -0
- package/locale/en-KY/package.json +5 -5
- package/locale/en-LC/index.cjs +7 -0
- package/locale/en-LC/index.js +6 -0
- package/locale/en-LC/package.json +5 -5
- package/locale/en-LR/index.cjs +7 -0
- package/locale/en-LR/index.js +6 -0
- package/locale/en-LR/package.json +5 -5
- package/locale/en-LS/index.cjs +7 -0
- package/locale/en-LS/index.js +6 -0
- package/locale/en-LS/package.json +5 -5
- package/locale/en-LT/index.cjs +7 -0
- package/locale/en-LT/index.js +6 -0
- package/locale/en-LT/package.json +16 -0
- package/locale/en-LT.json +219 -0
- package/locale/en-LT.json.d.ts +4 -0
- package/locale/en-LT.json.js +219 -0
- package/locale/en-LV/index.cjs +7 -0
- package/locale/en-LV/index.js +6 -0
- package/locale/en-LV/package.json +16 -0
- package/locale/en-LV.json +219 -0
- package/locale/en-LV.json.d.ts +4 -0
- package/locale/en-LV.json.js +219 -0
- package/locale/en-MG/index.cjs +7 -0
- package/locale/en-MG/index.js +6 -0
- package/locale/en-MG/package.json +5 -5
- package/locale/en-MO/index.cjs +7 -0
- package/locale/en-MO/index.js +6 -0
- package/locale/en-MO/package.json +5 -5
- package/locale/en-MS/index.cjs +7 -0
- package/locale/en-MS/index.js +6 -0
- package/locale/en-MS/package.json +5 -5
- package/locale/en-MT/index.cjs +7 -0
- package/locale/en-MT/index.js +6 -0
- package/locale/en-MT/package.json +5 -5
- package/locale/en-MU/index.cjs +7 -0
- package/locale/en-MU/index.js +6 -0
- package/locale/en-MU/package.json +5 -5
- package/locale/en-MV/index.cjs +7 -0
- package/locale/en-MV/index.js +6 -0
- package/locale/en-MV/package.json +5 -5
- package/locale/en-MW/index.cjs +7 -0
- package/locale/en-MW/index.js +6 -0
- package/locale/en-MW/package.json +5 -5
- package/locale/en-MY/index.cjs +7 -0
- package/locale/en-MY/index.js +6 -0
- package/locale/en-MY/package.json +5 -5
- package/locale/en-NA/index.cjs +7 -0
- package/locale/en-NA/index.js +6 -0
- package/locale/en-NA/package.json +5 -5
- package/locale/en-NF/index.cjs +7 -0
- package/locale/en-NF/index.js +6 -0
- package/locale/en-NF/package.json +5 -5
- package/locale/en-NG/index.cjs +7 -0
- package/locale/en-NG/index.js +6 -0
- package/locale/en-NG/package.json +5 -5
- package/locale/en-NL/index.cjs +7 -0
- package/locale/en-NL/index.js +6 -0
- package/locale/en-NL/package.json +5 -5
- package/locale/en-NO/index.cjs +7 -0
- package/locale/en-NO/index.js +6 -0
- package/locale/en-NO/package.json +5 -5
- package/locale/en-NR/index.cjs +7 -0
- package/locale/en-NR/index.js +6 -0
- package/locale/en-NR/package.json +5 -5
- package/locale/en-NU/index.cjs +7 -0
- package/locale/en-NU/index.js +6 -0
- package/locale/en-NU/package.json +5 -5
- package/locale/en-NZ/index.cjs +7 -0
- package/locale/en-NZ/index.js +6 -0
- package/locale/en-NZ/package.json +5 -5
- package/locale/en-PG/index.cjs +7 -0
- package/locale/en-PG/index.js +6 -0
- package/locale/en-PG/package.json +5 -5
- package/locale/en-PK/index.cjs +7 -0
- package/locale/en-PK/index.js +6 -0
- package/locale/en-PK/package.json +5 -5
- package/locale/en-PL/index.cjs +7 -0
- package/locale/en-PL/index.js +6 -0
- package/locale/en-PL/package.json +5 -5
- package/locale/en-PN/index.cjs +7 -0
- package/locale/en-PN/index.js +6 -0
- package/locale/en-PN/package.json +5 -5
- package/locale/en-PT/index.cjs +7 -0
- package/locale/en-PT/index.js +6 -0
- package/locale/en-PT/package.json +5 -5
- package/locale/en-PW/index.cjs +7 -0
- package/locale/en-PW/index.js +6 -0
- package/locale/en-PW/package.json +5 -5
- package/locale/en-RO/index.cjs +7 -0
- package/locale/en-RO/index.js +6 -0
- package/locale/en-RO/package.json +5 -5
- package/locale/en-RW/index.cjs +7 -0
- package/locale/en-RW/index.js +6 -0
- package/locale/en-RW/package.json +5 -5
- package/locale/en-SB/index.cjs +7 -0
- package/locale/en-SB/index.js +6 -0
- package/locale/en-SB/package.json +5 -5
- package/locale/en-SC/index.cjs +7 -0
- package/locale/en-SC/index.js +6 -0
- package/locale/en-SC/package.json +5 -5
- package/locale/en-SD/index.cjs +7 -0
- package/locale/en-SD/index.js +6 -0
- package/locale/en-SD/package.json +5 -5
- package/locale/en-SE/index.cjs +7 -0
- package/locale/en-SE/index.js +6 -0
- package/locale/en-SE/package.json +5 -5
- package/locale/en-SG/index.cjs +7 -0
- package/locale/en-SG/index.js +6 -0
- package/locale/en-SG/package.json +5 -5
- package/locale/en-SH/index.cjs +7 -0
- package/locale/en-SH/index.js +6 -0
- package/locale/en-SH/package.json +5 -5
- package/locale/en-SI/index.cjs +7 -0
- package/locale/en-SI/index.js +6 -0
- package/locale/en-SI/package.json +5 -5
- package/locale/en-SK/index.cjs +7 -0
- package/locale/en-SK/index.js +6 -0
- package/locale/en-SK/package.json +5 -5
- package/locale/en-SL/index.cjs +7 -0
- package/locale/en-SL/index.js +6 -0
- package/locale/en-SL/package.json +5 -5
- package/locale/en-SS/index.cjs +7 -0
- package/locale/en-SS/index.js +6 -0
- package/locale/en-SS/package.json +5 -5
- package/locale/en-SX/index.cjs +7 -0
- package/locale/en-SX/index.js +6 -0
- package/locale/en-SX/package.json +5 -5
- package/locale/en-SZ/index.cjs +7 -0
- package/locale/en-SZ/index.js +6 -0
- package/locale/en-SZ/package.json +5 -5
- package/locale/en-TC/index.cjs +7 -0
- package/locale/en-TC/index.js +6 -0
- package/locale/en-TC/package.json +5 -5
- package/locale/en-TK/index.cjs +7 -0
- package/locale/en-TK/index.js +6 -0
- package/locale/en-TK/package.json +5 -5
- package/locale/en-TO/index.cjs +7 -0
- package/locale/en-TO/index.js +6 -0
- package/locale/en-TO/package.json +5 -5
- package/locale/en-TT/index.cjs +7 -0
- package/locale/en-TT/index.js +6 -0
- package/locale/en-TT/package.json +5 -5
- package/locale/en-TV/index.cjs +7 -0
- package/locale/en-TV/index.js +6 -0
- package/locale/en-TV/package.json +5 -5
- package/locale/en-TZ/index.cjs +7 -0
- package/locale/en-TZ/index.js +6 -0
- package/locale/en-TZ/package.json +5 -5
- package/locale/en-UA/index.cjs +7 -0
- package/locale/en-UA/index.js +6 -0
- package/locale/en-UA/package.json +16 -0
- package/locale/en-UA.json +219 -0
- package/locale/en-UA.json.d.ts +4 -0
- package/locale/en-UA.json.js +219 -0
- package/locale/en-UG/index.cjs +7 -0
- package/locale/en-UG/index.js +6 -0
- package/locale/en-UG/package.json +5 -5
- package/locale/en-VC/index.cjs +7 -0
- package/locale/en-VC/index.js +6 -0
- package/locale/en-VC/package.json +5 -5
- package/locale/en-VG/index.cjs +7 -0
- package/locale/en-VG/index.js +6 -0
- package/locale/en-VG/package.json +5 -5
- package/locale/en-VU/index.cjs +7 -0
- package/locale/en-VU/index.js +6 -0
- package/locale/en-VU/package.json +5 -5
- package/locale/en-WS/index.cjs +7 -0
- package/locale/en-WS/index.js +6 -0
- package/locale/en-WS/package.json +5 -5
- package/locale/en-ZA/index.cjs +7 -0
- package/locale/en-ZA/index.js +6 -0
- package/locale/en-ZA/package.json +5 -5
- package/locale/en-ZM/index.cjs +7 -0
- package/locale/en-ZM/index.js +6 -0
- package/locale/en-ZM/package.json +5 -5
- package/locale/en-ZW/index.cjs +7 -0
- package/locale/en-ZW/index.js +6 -0
- package/locale/en-ZW/package.json +5 -5
- package/locale/eo/index.cjs +7 -0
- package/locale/eo/index.js +6 -0
- package/locale/eo/package.json +5 -5
- package/locale/es/index.cjs +7 -0
- package/locale/es/index.js +6 -0
- package/locale/es/package.json +5 -5
- package/locale/es-419/index.cjs +7 -0
- package/locale/es-419/index.js +6 -0
- package/locale/es-419/package.json +5 -5
- package/locale/es-AR/index.cjs +7 -0
- package/locale/es-AR/index.js +6 -0
- package/locale/es-AR/package.json +5 -5
- package/locale/es-BO/index.cjs +7 -0
- package/locale/es-BO/index.js +6 -0
- package/locale/es-BO/package.json +5 -5
- package/locale/es-BR/index.cjs +7 -0
- package/locale/es-BR/index.js +6 -0
- package/locale/es-BR/package.json +5 -5
- package/locale/es-BZ/index.cjs +7 -0
- package/locale/es-BZ/index.js +6 -0
- package/locale/es-BZ/package.json +5 -5
- package/locale/es-CL/index.cjs +7 -0
- package/locale/es-CL/index.js +6 -0
- package/locale/es-CL/package.json +5 -5
- package/locale/es-CO/index.cjs +7 -0
- package/locale/es-CO/index.js +6 -0
- package/locale/es-CO/package.json +5 -5
- package/locale/es-CR/index.cjs +7 -0
- package/locale/es-CR/index.js +6 -0
- package/locale/es-CR/package.json +5 -5
- package/locale/es-CU/index.cjs +7 -0
- package/locale/es-CU/index.js +6 -0
- package/locale/es-CU/package.json +5 -5
- package/locale/es-DO/index.cjs +7 -0
- package/locale/es-DO/index.js +6 -0
- package/locale/es-DO/package.json +5 -5
- package/locale/es-EC/index.cjs +7 -0
- package/locale/es-EC/index.js +6 -0
- package/locale/es-EC/package.json +5 -5
- package/locale/es-GT/index.cjs +7 -0
- package/locale/es-GT/index.js +6 -0
- package/locale/es-GT/package.json +5 -5
- package/locale/es-HN/index.cjs +7 -0
- package/locale/es-HN/index.js +6 -0
- package/locale/es-HN/package.json +5 -5
- package/locale/es-MX/index.cjs +7 -0
- package/locale/es-MX/index.js +6 -0
- package/locale/es-MX/package.json +5 -5
- package/locale/es-MX.json +2 -8
- package/locale/es-MX.json.js +2 -8
- package/locale/es-NI/index.cjs +7 -0
- package/locale/es-NI/index.js +6 -0
- package/locale/es-NI/package.json +5 -5
- package/locale/es-PA/index.cjs +7 -0
- package/locale/es-PA/index.js +6 -0
- package/locale/es-PA/package.json +5 -5
- package/locale/es-PE/index.cjs +7 -0
- package/locale/es-PE/index.js +6 -0
- package/locale/es-PE/package.json +5 -5
- package/locale/es-PR/index.cjs +7 -0
- package/locale/es-PR/index.js +6 -0
- package/locale/es-PR/package.json +5 -5
- package/locale/es-PY/index.cjs +7 -0
- package/locale/es-PY/index.js +6 -0
- package/locale/es-PY/package.json +5 -5
- package/locale/es-SV/index.cjs +7 -0
- package/locale/es-SV/index.js +6 -0
- package/locale/es-SV/package.json +5 -5
- package/locale/es-US/index.cjs +7 -0
- package/locale/es-US/index.js +6 -0
- package/locale/es-US/package.json +5 -5
- package/locale/es-UY/index.cjs +7 -0
- package/locale/es-UY/index.js +6 -0
- package/locale/es-UY/package.json +5 -5
- package/locale/es-VE/index.cjs +7 -0
- package/locale/es-VE/index.js +6 -0
- package/locale/es-VE/package.json +5 -5
- package/locale/et/index.cjs +7 -0
- package/locale/et/index.js +6 -0
- package/locale/et/package.json +5 -5
- package/locale/eu/index.cjs +7 -0
- package/locale/eu/index.js +6 -0
- package/locale/eu/package.json +5 -5
- package/locale/fa/index.cjs +7 -0
- package/locale/fa/index.js +6 -0
- package/locale/fa/package.json +5 -5
- package/locale/ff-Adlm/index.cjs +7 -0
- package/locale/ff-Adlm/index.js +6 -0
- package/locale/ff-Adlm/package.json +5 -5
- package/locale/fi/index.cjs +7 -0
- package/locale/fi/index.js +6 -0
- package/locale/fi/package.json +5 -5
- package/locale/fil/index.cjs +7 -0
- package/locale/fil/index.js +6 -0
- package/locale/fil/package.json +5 -5
- package/locale/fo/index.cjs +7 -0
- package/locale/fo/index.js +6 -0
- package/locale/fo/package.json +5 -5
- package/locale/fr/index.cjs +7 -0
- package/locale/fr/index.js +6 -0
- package/locale/fr/package.json +5 -5
- package/locale/fr-CA/index.cjs +7 -0
- package/locale/fr-CA/index.js +6 -0
- package/locale/fr-CA/package.json +5 -5
- package/locale/fr-CA.json +4 -4
- package/locale/fr-CA.json.js +4 -4
- package/locale/fr.json +4 -4
- package/locale/fr.json.js +4 -4
- package/locale/fur/index.cjs +7 -0
- package/locale/fur/index.js +6 -0
- package/locale/fur/package.json +5 -5
- package/locale/fy/index.cjs +7 -0
- package/locale/fy/index.js +6 -0
- package/locale/fy/package.json +5 -5
- package/locale/ga/index.cjs +7 -0
- package/locale/ga/index.js +6 -0
- package/locale/ga/package.json +5 -5
- package/locale/gd/index.cjs +7 -0
- package/locale/gd/index.js +6 -0
- package/locale/gd/package.json +5 -5
- package/locale/gl/index.cjs +7 -0
- package/locale/gl/index.js +6 -0
- package/locale/gl/package.json +5 -5
- package/locale/gu/index.cjs +7 -0
- package/locale/gu/index.js +6 -0
- package/locale/gu/package.json +5 -5
- package/locale/ha/index.cjs +7 -0
- package/locale/ha/index.js +6 -0
- package/locale/ha/package.json +5 -5
- package/locale/he/index.cjs +7 -0
- package/locale/he/index.js +6 -0
- package/locale/he/package.json +5 -5
- package/locale/he.json +74 -86
- package/locale/he.json.js +74 -86
- package/locale/hi/index.cjs +7 -0
- package/locale/hi/index.js +6 -0
- package/locale/hi/package.json +5 -5
- package/locale/hi-Latn/index.cjs +7 -0
- package/locale/hi-Latn/index.js +6 -0
- package/locale/hi-Latn/package.json +5 -5
- package/locale/hr/index.cjs +7 -0
- package/locale/hr/index.js +6 -0
- package/locale/hr/package.json +5 -5
- package/locale/hsb/index.cjs +7 -0
- package/locale/hsb/index.js +6 -0
- package/locale/hsb/package.json +5 -5
- package/locale/ht/index.cjs +7 -0
- package/locale/ht/index.js +6 -0
- package/locale/ht/package.json +5 -5
- package/locale/ht.json +4 -4
- package/locale/ht.json.js +4 -4
- package/locale/hu/index.cjs +7 -0
- package/locale/hu/index.js +6 -0
- package/locale/hu/package.json +5 -5
- package/locale/hy/index.cjs +7 -0
- package/locale/hy/index.js +6 -0
- package/locale/hy/package.json +5 -5
- package/locale/ia/index.cjs +7 -0
- package/locale/ia/index.js +6 -0
- package/locale/ia/package.json +5 -5
- package/locale/id/index.cjs +7 -0
- package/locale/id/index.js +6 -0
- package/locale/id/package.json +5 -5
- package/locale/ie/index.cjs +7 -0
- package/locale/ie/index.js +6 -0
- package/locale/ie/package.json +5 -5
- package/locale/ie.json +15 -9
- package/locale/ie.json.js +15 -9
- package/locale/ig/index.cjs +7 -0
- package/locale/ig/index.js +6 -0
- package/locale/ig/package.json +5 -5
- package/locale/ii/index.cjs +7 -0
- package/locale/ii/index.js +6 -0
- package/locale/ii/package.json +5 -5
- package/locale/is/index.cjs +7 -0
- package/locale/is/index.js +6 -0
- package/locale/is/package.json +5 -5
- package/locale/it/index.cjs +7 -0
- package/locale/it/index.js +6 -0
- package/locale/it/package.json +5 -5
- package/locale/ja/index.cjs +7 -0
- package/locale/ja/index.js +6 -0
- package/locale/ja/package.json +5 -5
- package/locale/jgo/index.cjs +7 -0
- package/locale/jgo/index.js +6 -0
- package/locale/jgo/package.json +5 -5
- package/locale/jv/index.cjs +7 -0
- package/locale/jv/index.js +6 -0
- package/locale/jv/package.json +5 -5
- package/locale/ka/index.cjs +7 -0
- package/locale/ka/index.js +6 -0
- package/locale/ka/package.json +5 -5
- package/locale/kaa/index.cjs +7 -0
- package/locale/kaa/index.js +6 -0
- package/locale/kaa/package.json +5 -5
- package/locale/kea/index.cjs +7 -0
- package/locale/kea/index.js +6 -0
- package/locale/kea/package.json +5 -5
- package/locale/kgp/index.cjs +7 -0
- package/locale/kgp/index.js +6 -0
- package/locale/kgp/package.json +5 -5
- package/locale/kk/index.cjs +7 -0
- package/locale/kk/index.js +6 -0
- package/locale/kk/package.json +5 -5
- package/locale/kk-Arab/index.cjs +7 -0
- package/locale/kk-Arab/index.js +6 -0
- package/locale/kk-Arab/package.json +16 -0
- package/locale/kk-Arab.json +159 -0
- package/locale/kk-Arab.json.d.ts +4 -0
- package/locale/kk-Arab.json.js +159 -0
- package/locale/kl/index.cjs +7 -0
- package/locale/kl/index.js +6 -0
- package/locale/kl/package.json +5 -5
- package/locale/km/index.cjs +7 -0
- package/locale/km/index.js +6 -0
- package/locale/km/package.json +5 -5
- package/locale/kn/index.cjs +7 -0
- package/locale/kn/index.js +6 -0
- package/locale/kn/package.json +5 -5
- package/locale/ko/index.cjs +7 -0
- package/locale/ko/index.js +6 -0
- package/locale/ko/package.json +5 -5
- package/locale/kok/index.cjs +7 -0
- package/locale/kok/index.js +6 -0
- package/locale/kok/package.json +5 -5
- package/locale/kok-Latn/index.cjs +7 -0
- package/locale/kok-Latn/index.js +6 -0
- package/locale/kok-Latn/package.json +5 -5
- package/locale/kok-Latn.json +138 -39
- package/locale/kok-Latn.json.js +138 -39
- package/locale/kok.json +169 -64
- package/locale/kok.json.js +169 -64
- package/locale/ks/index.cjs +7 -0
- package/locale/ks/index.js +6 -0
- package/locale/ks/package.json +5 -5
- package/locale/ksh/index.cjs +7 -0
- package/locale/ksh/index.js +6 -0
- package/locale/ksh/package.json +5 -5
- package/locale/ku/index.cjs +7 -0
- package/locale/ku/index.js +6 -0
- package/locale/ku/package.json +5 -5
- package/locale/ku.json +166 -73
- package/locale/ku.json.js +166 -73
- package/locale/ky/index.cjs +7 -0
- package/locale/ky/index.js +6 -0
- package/locale/ky/package.json +5 -5
- package/locale/lb/index.cjs +7 -0
- package/locale/lb/index.js +6 -0
- package/locale/lb/package.json +5 -5
- package/locale/lkt/index.cjs +7 -0
- package/locale/lkt/index.js +6 -0
- package/locale/lkt/package.json +5 -5
- package/locale/lld/index.cjs +7 -0
- package/locale/lld/index.js +6 -0
- package/locale/lld/package.json +5 -5
- package/locale/lo/index.cjs +7 -0
- package/locale/lo/index.js +6 -0
- package/locale/lo/package.json +5 -5
- package/locale/lt/index.cjs +7 -0
- package/locale/lt/index.js +6 -0
- package/locale/lt/package.json +5 -5
- package/locale/lv/index.cjs +7 -0
- package/locale/lv/index.js +6 -0
- package/locale/lv/package.json +5 -5
- package/locale/mai/index.cjs +7 -0
- package/locale/mai/index.js +6 -0
- package/locale/mai/package.json +5 -5
- package/locale/mi/index.cjs +7 -0
- package/locale/mi/index.js +6 -0
- package/locale/mi/package.json +5 -5
- package/locale/mk/index.cjs +7 -0
- package/locale/mk/index.js +6 -0
- package/locale/mk/package.json +5 -5
- package/locale/mk.json +20 -20
- package/locale/mk.json.js +20 -20
- package/locale/ml/index.cjs +7 -0
- package/locale/ml/index.js +6 -0
- package/locale/ml/package.json +5 -5
- package/locale/mn/index.cjs +7 -0
- package/locale/mn/index.js +6 -0
- package/locale/mn/package.json +5 -5
- package/locale/mni/index.cjs +7 -0
- package/locale/mni/index.js +6 -0
- package/locale/mni/package.json +5 -5
- package/locale/mr/index.cjs +7 -0
- package/locale/mr/index.js +6 -0
- package/locale/mr/package.json +5 -5
- package/locale/ms/index.cjs +7 -0
- package/locale/ms/index.js +6 -0
- package/locale/ms/package.json +5 -5
- package/locale/ms-Arab/index.cjs +7 -0
- package/locale/ms-Arab/index.js +6 -0
- package/locale/ms-Arab/package.json +5 -5
- package/locale/mt/index.cjs +7 -0
- package/locale/mt/index.js +6 -0
- package/locale/mt/package.json +5 -5
- package/locale/my/index.cjs +7 -0
- package/locale/my/index.js +6 -0
- package/locale/my/package.json +5 -5
- package/locale/mzn/index.cjs +7 -0
- package/locale/mzn/index.js +6 -0
- package/locale/mzn/package.json +5 -5
- package/locale/nb/index.cjs +7 -0
- package/locale/nb/index.js +6 -0
- package/locale/nb/package.json +5 -5
- package/locale/ne/index.cjs +7 -0
- package/locale/ne/index.js +6 -0
- package/locale/ne/package.json +5 -5
- package/locale/nl/index.cjs +7 -0
- package/locale/nl/index.js +6 -0
- package/locale/nl/package.json +5 -5
- package/locale/nn/index.cjs +7 -0
- package/locale/nn/index.js +6 -0
- package/locale/nn/package.json +5 -5
- package/locale/no/index.cjs +7 -0
- package/locale/no/index.js +6 -0
- package/locale/no/package.json +5 -5
- package/locale/nqo/index.cjs +7 -0
- package/locale/nqo/index.js +6 -0
- package/locale/nqo/package.json +5 -5
- package/locale/nso/index.cjs +7 -0
- package/locale/nso/index.js +6 -0
- package/locale/nso/package.json +16 -0
- package/locale/nso.json +159 -0
- package/locale/nso.json.d.ts +4 -0
- package/locale/nso.json.js +159 -0
- package/locale/om/index.cjs +7 -0
- package/locale/om/index.js +6 -0
- package/locale/om/package.json +5 -5
- package/locale/or/index.cjs +7 -0
- package/locale/or/index.js +6 -0
- package/locale/or/package.json +5 -5
- package/locale/pa/index.cjs +7 -0
- package/locale/pa/index.js +6 -0
- package/locale/pa/package.json +5 -5
- package/locale/pcm/index.cjs +7 -0
- package/locale/pcm/index.js +6 -0
- package/locale/pcm/package.json +5 -5
- package/locale/pl/index.cjs +7 -0
- package/locale/pl/index.js +6 -0
- package/locale/pl/package.json +5 -5
- package/locale/ps/index.cjs +7 -0
- package/locale/ps/index.js +6 -0
- package/locale/ps/package.json +5 -5
- package/locale/ps-PK/index.cjs +7 -0
- package/locale/ps-PK/index.js +6 -0
- package/locale/ps-PK/package.json +5 -5
- package/locale/pt/index.cjs +7 -0
- package/locale/pt/index.js +6 -0
- package/locale/pt/package.json +5 -5
- package/locale/pt-AO/index.cjs +7 -0
- package/locale/pt-AO/index.js +6 -0
- package/locale/pt-AO/package.json +5 -5
- package/locale/pt-CH/index.cjs +7 -0
- package/locale/pt-CH/index.js +6 -0
- package/locale/pt-CH/package.json +5 -5
- package/locale/pt-CV/index.cjs +7 -0
- package/locale/pt-CV/index.js +6 -0
- package/locale/pt-CV/package.json +5 -5
- package/locale/pt-GQ/index.cjs +7 -0
- package/locale/pt-GQ/index.js +6 -0
- package/locale/pt-GQ/package.json +5 -5
- package/locale/pt-GW/index.cjs +7 -0
- package/locale/pt-GW/index.js +6 -0
- package/locale/pt-GW/package.json +5 -5
- package/locale/pt-LU/index.cjs +7 -0
- package/locale/pt-LU/index.js +6 -0
- package/locale/pt-LU/package.json +5 -5
- package/locale/pt-MO/index.cjs +7 -0
- package/locale/pt-MO/index.js +6 -0
- package/locale/pt-MO/package.json +5 -5
- package/locale/pt-MZ/index.cjs +7 -0
- package/locale/pt-MZ/index.js +6 -0
- package/locale/pt-MZ/package.json +5 -5
- package/locale/pt-PT/index.cjs +7 -0
- package/locale/pt-PT/index.js +6 -0
- package/locale/pt-PT/package.json +5 -5
- package/locale/pt-ST/index.cjs +7 -0
- package/locale/pt-ST/index.js +6 -0
- package/locale/pt-ST/package.json +5 -5
- package/locale/pt-TL/index.cjs +7 -0
- package/locale/pt-TL/index.js +6 -0
- package/locale/pt-TL/package.json +5 -5
- package/locale/qu/index.cjs +7 -0
- package/locale/qu/index.js +6 -0
- package/locale/qu/package.json +5 -5
- package/locale/raj/index.cjs +7 -0
- package/locale/raj/index.js +6 -0
- package/locale/raj/package.json +5 -5
- package/locale/rhg/index.cjs +7 -0
- package/locale/rhg/index.js +6 -0
- package/locale/rhg/package.json +5 -5
- package/locale/rm/index.cjs +7 -0
- package/locale/rm/index.js +6 -0
- package/locale/rm/package.json +5 -5
- package/locale/rm.json +151 -85
- package/locale/rm.json.js +151 -85
- package/locale/ro/index.cjs +7 -0
- package/locale/ro/index.js +6 -0
- package/locale/ro/package.json +5 -5
- package/locale/ro.json +4 -2
- package/locale/ro.json.js +4 -2
- package/locale/ru/index.cjs +7 -0
- package/locale/ru/index.js +6 -0
- package/locale/ru/package.json +5 -5
- package/locale/rw/index.cjs +7 -0
- package/locale/rw/index.js +6 -0
- package/locale/rw/package.json +16 -0
- package/locale/rw.json +159 -0
- package/locale/rw.json.d.ts +4 -0
- package/locale/rw.json.js +159 -0
- package/locale/sah/index.cjs +7 -0
- package/locale/sah/index.js +6 -0
- package/locale/sah/package.json +5 -5
- package/locale/sc/index.cjs +7 -0
- package/locale/sc/index.js +6 -0
- package/locale/sc/package.json +5 -5
- package/locale/scn/index.cjs +7 -0
- package/locale/scn/index.js +6 -0
- package/locale/scn/package.json +16 -0
- package/locale/scn.json +249 -0
- package/locale/scn.json.d.ts +4 -0
- package/locale/scn.json.js +249 -0
- package/locale/sd/index.cjs +7 -0
- package/locale/sd/index.js +6 -0
- package/locale/sd/package.json +5 -5
- package/locale/sd-Deva/index.cjs +7 -0
- package/locale/sd-Deva/index.js +6 -0
- package/locale/sd-Deva/package.json +16 -0
- package/locale/sd-Deva.json +159 -0
- package/locale/sd-Deva.json.d.ts +4 -0
- package/locale/sd-Deva.json.js +159 -0
- package/locale/sd.json +77 -20
- package/locale/sd.json.js +77 -20
- package/locale/se/index.cjs +7 -0
- package/locale/se/index.js +6 -0
- package/locale/se/package.json +5 -5
- package/locale/se-FI/index.cjs +7 -0
- package/locale/se-FI/index.js +6 -0
- package/locale/se-FI/package.json +5 -5
- package/locale/shn/index.cjs +7 -0
- package/locale/shn/index.js +6 -0
- package/locale/shn/package.json +16 -0
- package/locale/shn.json +159 -0
- package/locale/shn.json.d.ts +4 -0
- package/locale/shn.json.js +159 -0
- package/locale/si/index.cjs +7 -0
- package/locale/si/index.js +6 -0
- package/locale/si/package.json +5 -5
- package/locale/sk/index.cjs +7 -0
- package/locale/sk/index.js +6 -0
- package/locale/sk/package.json +5 -5
- package/locale/sl/index.cjs +7 -0
- package/locale/sl/index.js +6 -0
- package/locale/sl/package.json +5 -5
- package/locale/so/index.cjs +7 -0
- package/locale/so/index.js +6 -0
- package/locale/so/package.json +5 -5
- package/locale/sq/index.cjs +7 -0
- package/locale/sq/index.js +6 -0
- package/locale/sq/package.json +5 -5
- package/locale/sr/index.cjs +7 -0
- package/locale/sr/index.js +6 -0
- package/locale/sr/package.json +5 -5
- package/locale/sr-Cyrl-BA/index.cjs +7 -0
- package/locale/sr-Cyrl-BA/index.js +6 -0
- package/locale/sr-Cyrl-BA/package.json +5 -5
- package/locale/sr-Latn/index.cjs +7 -0
- package/locale/sr-Latn/index.js +6 -0
- package/locale/sr-Latn/package.json +5 -5
- package/locale/sr-Latn-BA/index.cjs +7 -0
- package/locale/sr-Latn-BA/index.js +6 -0
- package/locale/sr-Latn-BA/package.json +5 -5
- package/locale/su/index.cjs +7 -0
- package/locale/su/index.js +6 -0
- package/locale/su/package.json +5 -5
- package/locale/sv/index.cjs +7 -0
- package/locale/sv/index.js +6 -0
- package/locale/sv/package.json +5 -5
- package/locale/sv.json +3 -3
- package/locale/sv.json.js +3 -3
- package/locale/sw/index.cjs +7 -0
- package/locale/sw/index.js +6 -0
- package/locale/sw/package.json +5 -5
- package/locale/syr/index.cjs +7 -0
- package/locale/syr/index.js +6 -0
- package/locale/syr/package.json +5 -5
- package/locale/syr.json +27 -27
- package/locale/syr.json.js +27 -27
- package/locale/ta/index.cjs +7 -0
- package/locale/ta/index.js +6 -0
- package/locale/ta/package.json +5 -5
- package/locale/ta.json +15 -9
- package/locale/ta.json.js +15 -9
- package/locale/te/index.cjs +7 -0
- package/locale/te/index.js +6 -0
- package/locale/te/package.json +5 -5
- package/locale/tg/index.cjs +7 -0
- package/locale/tg/index.js +6 -0
- package/locale/tg/package.json +5 -5
- package/locale/th/index.cjs +7 -0
- package/locale/th/index.js +6 -0
- package/locale/th/package.json +5 -5
- package/locale/ti/index.cjs +7 -0
- package/locale/ti/index.js +6 -0
- package/locale/ti/package.json +5 -5
- package/locale/tk/index.cjs +7 -0
- package/locale/tk/index.js +6 -0
- package/locale/tk/package.json +5 -5
- package/locale/tn/index.cjs +7 -0
- package/locale/tn/index.js +6 -0
- package/locale/tn/package.json +5 -5
- package/locale/tn.json +27 -27
- package/locale/tn.json.js +27 -27
- package/locale/to/index.cjs +7 -0
- package/locale/to/index.js +6 -0
- package/locale/to/package.json +5 -5
- package/locale/tok/index.cjs +7 -0
- package/locale/tok/index.js +6 -0
- package/locale/tok/package.json +16 -0
- package/locale/tok.json +159 -0
- package/locale/tok.json.d.ts +4 -0
- package/locale/tok.json.js +159 -0
- package/locale/tr/index.cjs +7 -0
- package/locale/tr/index.js +6 -0
- package/locale/tr/package.json +5 -5
- package/locale/tt/index.cjs +7 -0
- package/locale/tt/index.js +6 -0
- package/locale/tt/package.json +5 -5
- package/locale/tyv/index.cjs +7 -0
- package/locale/tyv/index.js +6 -0
- package/locale/tyv/package.json +16 -0
- package/locale/tyv.json +159 -0
- package/locale/tyv.json.d.ts +4 -0
- package/locale/tyv.json.js +159 -0
- package/locale/ug/index.cjs +7 -0
- package/locale/ug/index.js +6 -0
- package/locale/ug/package.json +5 -5
- package/locale/uk/index.cjs +7 -0
- package/locale/uk/index.js +6 -0
- package/locale/uk/package.json +5 -5
- package/locale/ur/index.cjs +7 -0
- package/locale/ur/index.js +6 -0
- package/locale/ur/package.json +5 -5
- package/locale/ur-IN/index.cjs +7 -0
- package/locale/ur-IN/index.js +6 -0
- package/locale/ur-IN/package.json +5 -5
- package/locale/uz/index.cjs +7 -0
- package/locale/uz/index.js +6 -0
- package/locale/uz/package.json +5 -5
- package/locale/uz-Cyrl/index.cjs +7 -0
- package/locale/uz-Cyrl/index.js +6 -0
- package/locale/uz-Cyrl/package.json +5 -5
- package/locale/vec/index.cjs +7 -0
- package/locale/vec/index.js +6 -0
- package/locale/vec/package.json +5 -5
- package/locale/vi/index.cjs +7 -0
- package/locale/vi/index.js +6 -0
- package/locale/vi/package.json +5 -5
- package/locale/wae/index.cjs +7 -0
- package/locale/wae/index.js +6 -0
- package/locale/wae/package.json +5 -5
- package/locale/wo/index.cjs +7 -0
- package/locale/wo/index.js +6 -0
- package/locale/wo/package.json +5 -5
- package/locale/xh/index.cjs +7 -0
- package/locale/xh/index.js +6 -0
- package/locale/xh/package.json +5 -5
- package/locale/xh.json +18 -18
- package/locale/xh.json.js +18 -18
- package/locale/xnr/index.cjs +7 -0
- package/locale/xnr/index.js +6 -0
- package/locale/xnr/package.json +5 -5
- package/locale/yi/index.cjs +7 -0
- package/locale/yi/index.js +6 -0
- package/locale/yi/package.json +5 -5
- package/locale/yo/index.cjs +7 -0
- package/locale/yo/index.js +6 -0
- package/locale/yo/package.json +5 -5
- package/locale/yo-BJ/index.cjs +7 -0
- package/locale/yo-BJ/index.js +6 -0
- package/locale/yo-BJ/package.json +5 -5
- package/locale/yrl/index.cjs +7 -0
- package/locale/yrl/index.js +6 -0
- package/locale/yrl/package.json +5 -5
- package/locale/yue/index.cjs +7 -0
- package/locale/yue/index.js +6 -0
- package/locale/yue/package.json +5 -5
- package/locale/yue-Hans/index.cjs +7 -0
- package/locale/yue-Hans/index.js +6 -0
- package/locale/yue-Hans/package.json +5 -5
- package/locale/zh/index.cjs +7 -0
- package/locale/zh/index.js +6 -0
- package/locale/zh/package.json +5 -5
- package/locale/zh-Hans-HK/index.cjs +7 -0
- package/locale/zh-Hans-HK/index.js +6 -0
- package/locale/zh-Hans-HK/package.json +5 -5
- package/locale/zh-Hans-MO/index.cjs +7 -0
- package/locale/zh-Hans-MO/index.js +6 -0
- package/locale/zh-Hans-MO/package.json +5 -5
- package/locale/zh-Hans-SG/index.cjs +7 -0
- package/locale/zh-Hans-SG/index.js +6 -0
- package/locale/zh-Hans-SG/package.json +5 -5
- package/locale/zh-Hant/index.cjs +7 -0
- package/locale/zh-Hant/index.js +6 -0
- package/locale/zh-Hant/package.json +5 -5
- package/locale/zh-Hant-HK/index.cjs +7 -0
- package/locale/zh-Hant-HK/index.js +6 -0
- package/locale/zh-Hant-HK/package.json +5 -5
- package/locale/zh-Hant-MO/index.cjs +7 -0
- package/locale/zh-Hant-MO/index.js +6 -0
- package/locale/zh-Hant-MO/package.json +5 -5
- package/locale/zu/index.cjs +7 -0
- package/locale/zu/index.js +6 -0
- package/locale/zu/package.json +5 -5
- package/modules/FullDateFormatter.test.js +2 -0
- package/modules/FullDateFormatter.test.js.map +1 -1
- package/modules/TimeAgo.js +1 -0
- package/modules/TimeAgo.js.map +1 -1
- package/modules/TimeAgo.test.js +202 -189
- package/modules/TimeAgo.test.js.map +1 -1
- package/modules/cache.test.js +2 -0
- package/modules/cache.test.js.map +1 -1
- package/modules/isStyleObject.test.js +19 -17
- package/modules/isStyleObject.test.js.map +1 -1
- package/modules/locale.test.js +12 -10
- package/modules/locale.test.js.map +1 -1
- package/modules/steps/approximate.test.js +2 -0
- package/modules/steps/approximate.test.js.map +1 -1
- package/modules/steps/getStep.test.js +7 -5
- package/modules/steps/getStep.test.js.map +1 -1
- package/modules/steps/getStepDenominator.test.js +6 -4
- package/modules/steps/getStepDenominator.test.js.map +1 -1
- package/modules/steps/getStepMinTime.test.js +6 -4
- package/modules/steps/getStepMinTime.test.js.map +1 -1
- package/modules/steps/getTimeToNextUpdate.test.js +36 -34
- package/modules/steps/getTimeToNextUpdate.test.js.map +1 -1
- package/modules/steps/getTimeToNextUpdateForUnit.test.js +12 -10
- package/modules/steps/getTimeToNextUpdateForUnit.test.js.map +1 -1
- package/modules/steps/helpers.test.js +4 -2
- package/modules/steps/helpers.test.js.map +1 -1
- package/modules/steps/renameLegacyProperties.test.js +8 -6
- package/modules/steps/renameLegacyProperties.test.js.map +1 -1
- package/modules/steps/round.test.js +2 -0
- package/modules/steps/round.test.js.map +1 -1
- package/modules/style/approximateTime.test.js +3 -2
- package/modules/style/approximateTime.test.js.map +1 -1
- package/modules/style/mini.test.js +58 -56
- package/modules/style/mini.test.js.map +1 -1
- package/modules/style/miniMinute.test.js +25 -23
- package/modules/style/miniMinute.test.js.map +1 -1
- package/modules/style/miniMinuteNow.test.js +25 -23
- package/modules/style/miniMinuteNow.test.js.map +1 -1
- package/modules/style/miniNow.test.js +25 -23
- package/modules/style/miniNow.test.js.map +1 -1
- package/modules/style/renameLegacyProperties.test.js +6 -4
- package/modules/style/renameLegacyProperties.test.js.map +1 -1
- package/modules/style/round.test.js +76 -74
- package/modules/style/round.test.js.map +1 -1
- package/modules/style/roundMinute.test.js +47 -45
- package/modules/style/roundMinute.test.js.map +1 -1
- package/modules/style/twitter.test.js +72 -70
- package/modules/style/twitter.test.js.map +1 -1
- package/modules/style/twitterFirstMinute.test.js +29 -27
- package/modules/style/twitterFirstMinute.test.js.map +1 -1
- package/modules/style/twitterMinute.test.js +29 -27
- package/modules/style/twitterMinute.test.js.map +1 -1
- package/modules/style/twitterMinuteNow.test.js +29 -27
- package/modules/style/twitterMinuteNow.test.js.map +1 -1
- package/modules/style/twitterNow.test.js +31 -29
- package/modules/style/twitterNow.test.js.map +1 -1
- package/package.json +1442 -648
- package/scripts/generate-load-all-locales.js +3 -0
- package/scripts/generate-locale-messages.js +70 -48
- package/steps/index.d.ts +13 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TimeAgo.test.js","names":["TimeAgo","getLocaleData","english","type","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","units","custom","_ref","time","date","locale","_ref2","expect","_ref3","getTimeToNextUpdate","to","style2","style","unit","factor","include","secondLabels","second","refreshedTimes","_timeAgo$format","refresh","text","Error","round","_timeAgo$format2","_slicedToArray","cancelRefresh","be","a","timeToNextUpdate","delay","then","deep","getTimeToNextUpdateUncapped","minTime","_ref4","polyfill","global","getDefaultLocale","addDefaultLocale","delayTime","Promise","resolve","setTimeout"],"sources":["../source/TimeAgo.test.js"],"sourcesContent":["import TimeAgo from './TimeAgo.js'\r\nimport { getLocaleData } from './LocaleDataStore.js'\r\n\r\n// Load locale specific relative date/time messages\r\nimport english from '../locale/en.json' with { type: 'json' }\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\ttimeAgo.format(Date.now(), {\r\n\t\t\t// `custom` returns a string\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\ttimeAgo.format(Date.now(), {\r\n\t\t\t// `custom` returns `undefined`\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 throw an error when formating for a style with \"custom\" function and `getTimeToNextUpdate: true` parameter is passed', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\r\n\t\texpect(() => {\r\n\t\t\ttimeAgo.format(Date.now(), {\r\n\t\t\t\t// `custom` returns a string.\r\n\t\t\t\tcustom({ now, time, date, locale }) {\r\n\t\t\t\t\treturn locale\r\n\t\t\t\t}\r\n\t\t\t}, {\r\n\t\t\t\tgetTimeToNextUpdate: true\r\n\t\t\t})\r\n\t\t}).to.throw('not supported')\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.include(' 𑄟𑄨𑄚𑄨𑄘𑄬')\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 refresh the label when `refresh` parameter is passed', () => {\r\n\t\tlet refreshedTimes = 0\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// in 1 second -> in 0 seconds.\r\n\t\tconst [text, cancelRefresh] = timeAgo.format(1000, 'twitter', {\r\n\t\t\trefresh: (text) => {\r\n\t\t\t\tif (refreshedTimes === 0) {\r\n\t\t\t\t\texpect(text).to.equal('0s')\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthrow new Error('Refresh should have been cancelled')\r\n\t\t\t\t}\r\n\t\t\t\trefreshedTimes++\r\n\t\t\t},\r\n\t\t\tnow: 0,\r\n\t\t\tround: 'floor'\r\n\t\t})\r\n\t\texpect(text).to.equal('1s')\r\n\t\texpect(cancelRefresh).to.be.a('function')\r\n\t\t// Sidenote: `timeToNextUpdate` is `1`.\r\n\t\tconst timeToNextUpdate = 1\r\n\t\treturn delay(timeToNextUpdate + 1).then(() => {\r\n\t\t\texpect(refreshedTimes).to.equal(1)\r\n\t\t\tcancelRefresh()\r\n\t\t})\r\n\t})\r\n\r\n\tit('should get time to next update (capped)', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// in 1 second -> in 0 seconds.\r\n\t\ttimeAgo.format(0.5 * 365 * 24 * 60 * 60 * 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'Jul 2',\r\n\t\t\t2147483647\r\n\t\t])\r\n\t})\r\n\r\n\tit('should get time to next update (capped)', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// in 1 second -> in 0 seconds.\r\n\t\ttimeAgo.format(0.5 * 365 * 24 * 60 * 60 * 1000, 'twitter', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tgetTimeToNextUpdateUncapped: 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'Jul 2',\r\n\t\t\t15681600001\r\n\t\t])\r\n\t})\r\n\r\n\tit('should get time to next update (uncapped)', () => {\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: \"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// Doesn't throw an error because the same locale is already specified as default.\r\n\t\tTimeAgo.addDefaultLocale({\r\n\t\t\tlocale: 'el'\r\n\t\t})\r\n\t\t// Could throw an error or output an error message because another locale is already specified as default.\r\n\t\t// expect(() => {\r\n\t\t\tTimeAgo.addDefaultLocale({\r\n\t\t\t\tlocale: 'es'\r\n\t\t\t})\r\n\t\t// }).to.throw('but you have already added \"el\" as the default locale.')\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\nfunction delay(delayTime) {\r\n\treturn new Promise((resolve) => {\r\n\t\tsetTimeout(resolve, delayTime)\r\n\t})\r\n}"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"TimeAgo.test.js","names":["describe","it","expect","TimeAgo","english","type","setDefaultLocale","timeAgo","format","Date","now","to","equal","future","labels","steps","formatAs","flavour","gradation","englishNow","addLocale","undefined","NumberFormat","Intl","englishLongTimeMinute","minute","past","mockedDate","getTime","thrower","units","custom","_ref","time","date","locale","_ref2","_ref3","getTimeToNextUpdate","style2","style","unit","factor","include","secondLabels","second","refreshedTimes","_timeAgo$format","refresh","text","Error","round","_timeAgo$format2","_slicedToArray","cancelRefresh","be","a","timeToNextUpdate","delay","then","deep","getTimeToNextUpdateUncapped","minTime","_ref4","polyfill","global","getDefaultLocale","addDefaultLocale","delayTime","Promise","resolve","setTimeout"],"sources":["../source/TimeAgo.test.js"],"sourcesContent":["import { describe, it } from 'mocha'\r\nimport { expect } from 'chai'\r\n\r\nimport TimeAgo from './TimeAgo.js'\r\n\r\n// Load locale specific relative date/time messages\r\nimport english from '../locale/en.json' with { type: 'json' }\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\texpect(timeAgo.format(Date.now())).to.equal('just now')\r\n\t\texpect(timeAgo.format(Date.now() + 20 * 1000)).to.equal('in a moment')\r\n\t\texpect(timeAgo.format(Date.now() + 1 * 60 * 1000)).to.equal('in 1 minute')\r\n\t\texpect(timeAgo.format(Date.now() + 4 * 60 * 1000)).to.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\texpect(timeAgo.format(Date.now(), 'mini-now')).to.equal('now')\r\n\t\texpect(timeAgo.format(0, { future: true, now: 0 })).to.equal('in a moment')\r\n\t\texpect(timeAgo.format(0, { labels: 'mini', steps: [{ formatAs: 'now' }, { formatAs: 'second' }] }, { future: true, now: 0 })).to.equal('now')\r\n\t\texpect(timeAgo.format(0, { labels: ['mini'], steps: [{ formatAs: 'now' }, { formatAs: 'second' }] }, { future: true, now: 0 })).to.equal('now')\r\n\t\t// `flavour` is a legacy name of `labels` property.\r\n\t\texpect(timeAgo.format(0, { flavour: 'mini' }, { future: true, now: 0 })).to.equal('now')\r\n\t\texpect(timeAgo.format(0, { flavour: ['mini'] }, { future: true, now: 0 })).to.equal('now')\r\n\t\texpect(timeAgo.format(0, { steps: [{ formatAs: 'minute' }] }, { future: true, now: 0 })).to.equal('in 0 minutes')\r\n\t\t// `gradation` is a legacy name of `steps` property.\r\n\t\texpect(timeAgo.format(0, { gradation: [{ formatAs: 'minute' }] }, { future: true, now: 0 })).to.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\texpect(timeAgo.format(Date.now(), { labels: ['exotic', 'short'] })).to.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\texpect(timeAgo.format(Date.now(), { labels: ['exotic', 'short'] })).to.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\texpect(timeAgo.format(Date.now(), { labels: 'long' })).to.equal('now')\r\n\t\tenglish.now = englishNow\r\n\t\texpect(timeAgo.format(Date.now(), { labels: 'long' })).to.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\texpect(timeAgo.format(Date.now() + 60 * 1000, { labels: 'long-time' })).to.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\texpect(timeAgo.format(Date.now() + 365 * 24 * 60 * 60 * 1000, { labels: 'short' })).to.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\texpect(timeAgo.format(Date.now(), { labels: 'long' })).to.equal('now')\r\n\t\tenglish.now = englishNow\r\n\t\texpect(timeAgo.format(Date.now(), { labels: 'long' })).to.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\texpect(timeAgo.format(Date.now() - 60 * 1000, { labels: 'long-time' })).to.equal('1 minute(s) ago')\r\n\t\t// Future (covers an \"else\" branch).\r\n\t\texpect(timeAgo.format(Date.now() + 60 * 1000, { labels: 'long-time' })).to.equal('in 1 minute(s)')\r\n\t\t// Undo.\r\n\t\tenglish['long-time'].minute = englishLongTimeMinute\r\n\t\texpect(timeAgo.format(Date.now() - 60 * 1000, { labels: 'long-time' })).to.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\texpect(timeAgo.format(Date.now() + 10, { labels: ['long'] })).to.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\texpect(timeAgo.format(Date.now() - 0 * 1000, 'mini')).to.equal('0s')\r\n\t\texpect(timeAgo.format(Date.now() - 1 * 1000, 'mini')).to.equal('1s')\r\n\t\t// \"mini-now\".\r\n\t\texpect(timeAgo.format(Date.now() - 0 * 1000, 'mini-now')).to.equal('now')\r\n\t\texpect(timeAgo.format(Date.now() - 1 * 1000, 'mini-now')).to.equal('1s')\r\n\t\t// \"mini-minute-now\".\r\n\t\texpect(timeAgo.format(Date.now() - 29 * 1000, 'mini-minute-now')).to.equal('now')\r\n\t\texpect(timeAgo.format(Date.now() - 60 * 1000, 'mini-minute-now')).to.equal('1m')\r\n\t\t// \"mini-minute\".\r\n\t\texpect(timeAgo.format(Date.now() - 29 * 1000, 'mini-minute')).to.equal('0m')\r\n\t\texpect(timeAgo.format(Date.now() - 60 * 1000, 'mini-minute')).to.equal('1m')\r\n\t\t// \"twitter\".\r\n\t\texpect(timeAgo.format(Date.now() - 0 * 1000, 'twitter')).to.equal('0s')\r\n\t\texpect(timeAgo.format(Date.now() - 1 * 1000, 'twitter')).to.equal('1s')\r\n\t\t// \"twitter-now\".\r\n\t\texpect(timeAgo.format(Date.now() - 0 * 1000, 'twitter-now')).to.equal('now')\r\n\t\texpect(timeAgo.format(Date.now() - 1 * 1000, 'twitter-now')).to.equal('1s')\r\n\t\t// \"twitter-minute-now\".\r\n\t\texpect(timeAgo.format(Date.now() - 29 * 1000, 'twitter-minute-now')).to.equal('now')\r\n\t\texpect(timeAgo.format(Date.now() - 60 * 1000, 'twitter-minute-now')).to.equal('1m')\r\n\t\t// \"twitter-minute\".\r\n\t\texpect(timeAgo.format(Date.now() - 29 * 1000, 'twitter-minute')).to.equal('0m')\r\n\t\texpect(timeAgo.format(Date.now() - 60 * 1000, 'twitter-minute')).to.equal('1m')\r\n\t\t// \"twitter-first-minute\".\r\n\t\texpect(timeAgo.format(Date.now() - 29 * 1000, 'twitter-first-minute')).to.equal('')\r\n\t\texpect(timeAgo.format(Date.now() - 60 * 1000, 'twitter-first-minute')).to.equal('1m')\r\n\t\t// \"approximate\".\r\n\t\texpect(timeAgo.format(Date.now() - 45 * 1000, 'approximate')).to.equal('just now')\r\n\t\t// \"convenient\" style was renamed to \"approximate\".\r\n\t\texpect(timeAgo.format(Date.now() - 45 * 1000, 'convenient')).to.equal('just now')\r\n\t\texpect(timeAgo.format(Date.now() - 45 * 1000, 'round')).to.equal('45 seconds ago')\r\n\t\t// \"default\" style was renamed to \"round\".\r\n\t\texpect(timeAgo.format(Date.now() - 45 * 1000, 'default')).to.equal('45 seconds ago')\r\n\t\texpect(timeAgo.format(Date.now() - 29 * 1000, 'round-minute')).to.equal('just now')\r\n\t\t// \"time\" style was renamed to \"approximate-time\".\r\n\t\texpect(timeAgo.format(Date.now() - 2 * 60 * 1000, 'time')).to.equal('2 minutes')\r\n\t\texpect(timeAgo.format(Date.now() - 2 * 60 * 1000, 'approximate-time')).to.equal('2 minutes')\r\n\t\texpect(timeAgo.format(Date.now(), 'exotic')).to.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\texpect(timeAgo.format(new Date())).to.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\texpect(timeAgo.format(mockedDate)).to.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\texpect(thrower).to.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\texpect(timeAgo.format(Date.now(), { units: ['femtosecond'] })).to.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\texpect(timeAgo.format(Date.now(), {\r\n\t\t\t// `custom` returns a string\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).to.equal('en')\r\n\r\n\t\texpect(timeAgo.format(Date.now(), {\r\n\t\t\t// `custom` returns `undefined`\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).to.equal('just now')\r\n\t})\r\n\r\n\tit('should throw an error when formating for a style with \"custom\" function and `getTimeToNextUpdate: true` parameter is passed', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\r\n\t\texpect(() => {\r\n\t\t\ttimeAgo.format(Date.now(), {\r\n\t\t\t\t// `custom` returns a string.\r\n\t\t\t\tcustom({ now, time, date, locale }) {\r\n\t\t\t\t\treturn locale\r\n\t\t\t\t}\r\n\t\t\t}, {\r\n\t\t\t\tgetTimeToNextUpdate: true\r\n\t\t\t})\r\n\t\t}).to.throw('not supported')\r\n\t})\r\n\r\n\tit('should format future dates', () => {\r\n\t\texpect(new TimeAgo('en').format(Date.now() + 60 * 60 * 1000)).to.equal('in 1 hour')\r\n\t\texpect(new TimeAgo('ru').format(Date.now() + 60 * 1000)).to.equal('через 1 минуту')\r\n\t})\r\n\r\n\tit('should accept \"future\" option', () => {\r\n\t\t// \"now\" unit.\r\n\t\texpect(new TimeAgo('en').format(Date.now())).to.equal('just now')\r\n\t\texpect(new TimeAgo('en').format(Date.now(), 'approximate', { future: true })).to.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// expect(new TimeAgo('en').format(Date.now(), style)).to.equal('0 seconds ago')\r\n\t\t// expect(new TimeAgo('en').format(Date.now(), style, { future: true })).to.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\texpect(new TimeAgo('ru').format(Date.now() - 5 * 365 * 24 * 60 * 60 * 1000, style2)).to.equal('5 л')\r\n\t\texpect(new TimeAgo('ru').format(Date.now() - 5 * 365 * 24 * 60 * 60 * 1000, style2, { future: true })).to.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\texpect(new TimeAgo('ru').format(Date.now() - 10 * 1000, style)).to.equal('2 г')\r\n\t\texpect(new TimeAgo('ru').format(Date.now() - 10 * 1000, style, { future: true })).to.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\texpect(new TimeAgo('ccp').format(Date.now() + 60 * 1000)).to.include(' 𑄟𑄨𑄚𑄨𑄘𑄬')\r\n\t})\r\n\r\n\tit('should throw for non-existing locales', () => {\r\n\t\texpect(() => TimeAgo.addLocale()).to.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\texpect(new 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})).to.equal('0 seconds ago')\r\n\r\n\t\texpect(new 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})).to.equal('in 0 seconds')\r\n\r\n\t\tenglish['mini'].second = secondLabels\r\n\t})\r\n\r\n\tit('should refresh the label when `refresh` parameter is passed', () => {\r\n\t\tlet refreshedTimes = 0\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// in 1 second -> in 0 seconds.\r\n\t\tconst [text, cancelRefresh] = timeAgo.format(1000, 'twitter', {\r\n\t\t\trefresh: (text) => {\r\n\t\t\t\tif (refreshedTimes === 0) {\r\n\t\t\t\t\t// This test sometimes throws an error for an unknown weird reason:\r\n\t\t\t\t\t//\r\n\t\t\t\t\t// \"AssertionError: expected '1s' to equal '0s'\".\r\n\t\t\t\t\t//\r\n\t\t\t\t\t// \"Error: done() called multiple times in test <javascript-time-ago\r\n\t\t\t\t\t// should refresh the label when `refresh` parameter is passed> of file\r\n\t\t\t\t\t// c:\\dev\\javascript-time-ago\\source\\TimeAgo.test.js; in addition,\r\n\t\t\t\t\t// done() received error: AssertionError: expected +0 to equal 1\"\r\n\t\t\t\t\t//\r\n\t\t\t\t\t// In case it does that, just re-run the tests and somehow the error is gone.\r\n\t\t\t\t\t// I didn't bother debugging the error because it's not clear how it's reproduced.\r\n\t\t\t\t\t//\r\n\t\t\t\t\texpect(text).to.equal('0s')\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthrow new Error('Refresh should have been cancelled')\r\n\t\t\t\t}\r\n\t\t\t\trefreshedTimes++\r\n\t\t\t},\r\n\t\t\tnow: 0,\r\n\t\t\tround: 'floor'\r\n\t\t})\r\n\t\texpect(text).to.equal('1s')\r\n\t\texpect(cancelRefresh).to.be.a('function')\r\n\t\t// Sidenote: `timeToNextUpdate` is `1`.\r\n\t\tconst timeToNextUpdate = 1\r\n\t\treturn delay(timeToNextUpdate + 1).then(() => {\r\n\t\t\texpect(refreshedTimes).to.equal(1)\r\n\t\t\tcancelRefresh()\r\n\t\t})\r\n\t})\r\n\r\n\tit('should get time to next update (capped)', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// in 1 second -> in 0 seconds.\r\n\t\texpect(timeAgo.format(0.5 * 365 * 24 * 60 * 60 * 1000, 'twitter', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 0,\r\n\t\t\tround: 'floor'\r\n\t\t})).to.deep.equal([\r\n\t\t\t'Jul 2',\r\n\t\t\t2147483647\r\n\t\t])\r\n\t})\r\n\r\n\tit('should get time to next update (capped)', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// in 1 second -> in 0 seconds.\r\n\t\texpect(timeAgo.format(0.5 * 365 * 24 * 60 * 60 * 1000, 'twitter', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tgetTimeToNextUpdateUncapped: true,\r\n\t\t\tnow: 0,\r\n\t\t\tround: 'floor'\r\n\t\t})).to.deep.equal([\r\n\t\t\t'Jul 2',\r\n\t\t\t15681600001\r\n\t\t])\r\n\t})\r\n\r\n\tit('should get time to next update (uncapped)', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// in 1 second -> in 0 seconds.\r\n\t\texpect(timeAgo.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})).to.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: \"floor\")', () => {\r\n\t\tconst timeAgo = new TimeAgo('en')\r\n\t\t// in 1 second -> in 0 seconds.\r\n\t\texpect(timeAgo.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})).to.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\texpect(timeAgo.format(1000, 'twitter', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 0\r\n\t\t})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 0\r\n\t\t})).to.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\texpect(timeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 500 + 1\r\n\t\t})).to.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\texpect(timeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 59.5 * 1000\r\n\t\t})).to.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\texpect(timeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 59.5 * 1000 + 1\r\n\t\t})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000\r\n\t\t})).to.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\texpect(timeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 1\r\n\t\t})).to.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\texpect(timeAgo.format(60 * 1000, 'mini-now', {\r\n\t\t\tgetTimeToNextUpdate: true,\r\n\t\t\tnow: 60 * 1000 + 500\r\n\t\t})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.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})).to.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\texpect(timeAgo.format(0, 'round', { now: 0 })).to.equal('just now')\r\n\t\texpect(timeAgo.format(1000, 'round', { now: 0 })).to.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\texpect(timeAgo.format(1000, 'round', { now: 0 })).to.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\texpect(new 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 })).to.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\texpect(new 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 })).to.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\texpect(TimeAgo.getDefaultLocale()).to.equal('en')\r\n\t\tTimeAgo.addDefaultLocale({\r\n\t\t\tlocale: 'el'\r\n\t\t})\r\n\t\texpect(TimeAgo.getDefaultLocale()).to.equal('el')\r\n\t\t// Doesn't throw an error because the same locale is already specified as default.\r\n\t\tTimeAgo.addDefaultLocale({\r\n\t\t\tlocale: 'el'\r\n\t\t})\r\n\t\t// Could throw an error or output an error message because another locale is already specified as default.\r\n\t\t// expect(() => {\r\n\t\t\tTimeAgo.addDefaultLocale({\r\n\t\t\t\tlocale: 'es'\r\n\t\t\t})\r\n\t\t// }).to.throw('but you have already added \"el\" as the default locale.')\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\texpect(timeAgo.format(0.9 * 1000, 'twitter', { now: 0, round: 'floor' })).to.equal('0s')\r\n\t\texpect(timeAgo.format(1 * 1000, 'twitter', { now: 0, round: 'floor' })).to.equal('1s')\r\n\t\texpect(timeAgo.format(1.9 * 1000, 'twitter', { now: 0, round: 'floor' })).to.equal('1s')\r\n\t\texpect(timeAgo.format(2 * 1000, 'twitter', { now: 0, round: 'floor' })).to.equal('2s')\r\n\t\texpect(timeAgo.format(1.9 * 60 * 1000, 'twitter', { now: 0, round: 'floor' })).to.equal('1m')\r\n\t\texpect(timeAgo.format(2 * 60 * 1000, 'twitter', { now: 0, round: 'floor' })).to.equal('2m')\r\n\t})\r\n})\r\n\r\nfunction delay(delayTime) {\r\n\treturn new Promise((resolve) => {\r\n\t\tsetTimeout(resolve, delayTime)\r\n\t})\r\n}"],"mappings":"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","ignoreList":[]}
|
package/modules/cache.test.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.test.js","names":["
|
|
1
|
+
{"version":3,"file":"cache.test.js","names":["describe","it","expect","Cache","cache","value","get","to","be","undefined","put","equal"],"sources":["../source/cache.test.js"],"sourcesContent":["import { describe, it } from 'mocha'\r\nimport { expect } from 'chai'\r\n\r\nimport Cache from './cache.js'\r\n\r\ndescribe('cache', () => {\r\n\tit('should cache', () => {\r\n\t\tconst cache = new Cache()\r\n\r\n\t\tconst value = {}\r\n\t\texpect(cache.get('123', '456')).to.be.undefined\r\n\t\texpect(cache.put('123', '456', value)).to.equal(value)\r\n\t\texpect(cache.get('123', '456')).to.equal(value)\r\n\r\n\t\texpect(cache.put('123', '789', 123)).to.equal(123)\r\n\t})\r\n})\r\n"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,EAAE,QAAQ,OAAO;AACpC,SAASC,MAAM,QAAQ,MAAM;AAE7B,OAAOC,KAAK,MAAM,YAAY;AAE9BH,QAAQ,CAAC,OAAO,EAAE,YAAM;EACvBC,EAAE,CAAC,cAAc,EAAE,YAAM;IACxB,IAAMG,KAAK,GAAG,IAAID,KAAK,CAAC,CAAC;IAEzB,IAAME,KAAK,GAAG,CAAC,CAAC;IAChBH,MAAM,CAACE,KAAK,CAACE,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAACC,EAAE,CAACC,EAAE,CAACC,SAAS;IAC/CP,MAAM,CAACE,KAAK,CAACM,GAAG,CAAC,KAAK,EAAE,KAAK,EAAEL,KAAK,CAAC,CAAC,CAACE,EAAE,CAACI,KAAK,CAACN,KAAK,CAAC;IACtDH,MAAM,CAACE,KAAK,CAACE,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAACC,EAAE,CAACI,KAAK,CAACN,KAAK,CAAC;IAE/CH,MAAM,CAACE,KAAK,CAACM,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAACH,EAAE,CAACI,KAAK,CAAC,GAAG,CAAC;EACnD,CAAC,CAAC;AACH,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,34 +1,36 @@
|
|
|
1
|
+
import { describe, it } from 'mocha';
|
|
2
|
+
import { expect } from 'chai';
|
|
1
3
|
import isStyleObject from './isStyleObject.js';
|
|
2
4
|
describe('isStyleObject', function () {
|
|
3
5
|
it('should detect a style object', function () {
|
|
4
|
-
isStyleObject({
|
|
6
|
+
expect(isStyleObject({
|
|
5
7
|
gradation: []
|
|
6
|
-
}).
|
|
7
|
-
isStyleObject({
|
|
8
|
+
})).to.equal(true);
|
|
9
|
+
expect(isStyleObject({
|
|
8
10
|
steps: []
|
|
9
|
-
}).
|
|
10
|
-
isStyleObject({
|
|
11
|
+
})).to.equal(true);
|
|
12
|
+
expect(isStyleObject({
|
|
11
13
|
flavour: 'long'
|
|
12
|
-
}).
|
|
13
|
-
isStyleObject({
|
|
14
|
+
})).to.equal(true);
|
|
15
|
+
expect(isStyleObject({
|
|
14
16
|
flavour: ['long']
|
|
15
|
-
}).
|
|
16
|
-
isStyleObject({
|
|
17
|
+
})).to.equal(true);
|
|
18
|
+
expect(isStyleObject({
|
|
17
19
|
labels: 'long'
|
|
18
|
-
}).
|
|
19
|
-
isStyleObject({
|
|
20
|
+
})).to.equal(true);
|
|
21
|
+
expect(isStyleObject({
|
|
20
22
|
labels: ['long']
|
|
21
|
-
}).
|
|
22
|
-
isStyleObject({
|
|
23
|
+
})).to.equal(true);
|
|
24
|
+
expect(isStyleObject({
|
|
23
25
|
units: ['now']
|
|
24
|
-
}).
|
|
25
|
-
isStyleObject({
|
|
26
|
+
})).to.equal(true);
|
|
27
|
+
expect(isStyleObject({
|
|
26
28
|
future: true,
|
|
27
29
|
round: 'floor',
|
|
28
30
|
now: 0,
|
|
29
31
|
getTimeToNextUpdate: true
|
|
30
|
-
}).
|
|
31
|
-
isStyleObject('round').
|
|
32
|
+
})).to.equal(false);
|
|
33
|
+
expect(isStyleObject('round')).to.equal(false);
|
|
32
34
|
});
|
|
33
35
|
});
|
|
34
36
|
//# sourceMappingURL=isStyleObject.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isStyleObject.test.js","names":["
|
|
1
|
+
{"version":3,"file":"isStyleObject.test.js","names":["describe","it","expect","isStyleObject","gradation","to","equal","steps","flavour","labels","units","future","round","now","getTimeToNextUpdate"],"sources":["../source/isStyleObject.test.js"],"sourcesContent":["import { describe, it } from 'mocha'\r\nimport { expect } from 'chai'\r\n\r\nimport isStyleObject from './isStyleObject.js'\r\n\r\ndescribe('isStyleObject', () => {\r\n\tit('should detect a style object', () => {\r\n\t\texpect(isStyleObject({\r\n\t\t\tgradation: []\r\n\t\t})).to.equal(true)\r\n\t\texpect(isStyleObject({\r\n\t\t\tsteps: []\r\n\t\t})).to.equal(true)\r\n\t\texpect(isStyleObject({\r\n\t\t\tflavour: 'long'\r\n\t\t})).to.equal(true)\r\n\t\texpect(isStyleObject({\r\n\t\t\tflavour: ['long']\r\n\t\t})).to.equal(true)\r\n\t\texpect(isStyleObject({\r\n\t\t\tlabels: 'long'\r\n\t\t})).to.equal(true)\r\n\t\texpect(isStyleObject({\r\n\t\t\tlabels: ['long']\r\n\t\t})).to.equal(true)\r\n\t\texpect(isStyleObject({\r\n\t\t\tunits: ['now']\r\n\t\t})).to.equal(true)\r\n\t\texpect(isStyleObject({\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})).to.equal(false)\r\n\t\texpect(isStyleObject('round')).to.equal(false)\r\n\t})\r\n})"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,EAAE,QAAQ,OAAO;AACpC,SAASC,MAAM,QAAQ,MAAM;AAE7B,OAAOC,aAAa,MAAM,oBAAoB;AAE9CH,QAAQ,CAAC,eAAe,EAAE,YAAM;EAC/BC,EAAE,CAAC,8BAA8B,EAAE,YAAM;IACxCC,MAAM,CAACC,aAAa,CAAC;MACpBC,SAAS,EAAE;IACZ,CAAC,CAAC,CAAC,CAACC,EAAE,CAACC,KAAK,CAAC,IAAI,CAAC;IAClBJ,MAAM,CAACC,aAAa,CAAC;MACpBI,KAAK,EAAE;IACR,CAAC,CAAC,CAAC,CAACF,EAAE,CAACC,KAAK,CAAC,IAAI,CAAC;IAClBJ,MAAM,CAACC,aAAa,CAAC;MACpBK,OAAO,EAAE;IACV,CAAC,CAAC,CAAC,CAACH,EAAE,CAACC,KAAK,CAAC,IAAI,CAAC;IAClBJ,MAAM,CAACC,aAAa,CAAC;MACpBK,OAAO,EAAE,CAAC,MAAM;IACjB,CAAC,CAAC,CAAC,CAACH,EAAE,CAACC,KAAK,CAAC,IAAI,CAAC;IAClBJ,MAAM,CAACC,aAAa,CAAC;MACpBM,MAAM,EAAE;IACT,CAAC,CAAC,CAAC,CAACJ,EAAE,CAACC,KAAK,CAAC,IAAI,CAAC;IAClBJ,MAAM,CAACC,aAAa,CAAC;MACpBM,MAAM,EAAE,CAAC,MAAM;IAChB,CAAC,CAAC,CAAC,CAACJ,EAAE,CAACC,KAAK,CAAC,IAAI,CAAC;IAClBJ,MAAM,CAACC,aAAa,CAAC;MACpBO,KAAK,EAAE,CAAC,KAAK;IACd,CAAC,CAAC,CAAC,CAACL,EAAE,CAACC,KAAK,CAAC,IAAI,CAAC;IAClBJ,MAAM,CAACC,aAAa,CAAC;MACpBQ,MAAM,EAAE,IAAI;MACZC,KAAK,EAAE,OAAO;MACdC,GAAG,EAAE,CAAC;MACNC,mBAAmB,EAAE;IACtB,CAAC,CAAC,CAAC,CAACT,EAAE,CAACC,KAAK,CAAC,KAAK,CAAC;IACnBJ,MAAM,CAACC,aAAa,CAAC,OAAO,CAAC,CAAC,CAACE,EAAE,CAACC,KAAK,CAAC,KAAK,CAAC;EAC/C,CAAC,CAAC;AACH,CAAC,CAAC","ignoreList":[]}
|
package/modules/locale.test.js
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
import { describe, it } from 'mocha';
|
|
2
|
+
import { expect } from 'chai';
|
|
1
3
|
import chooseLocale, { intlDateTimeFormatSupportedLocale } from './locale.js';
|
|
2
4
|
describe('locale', function () {
|
|
3
5
|
it("should tell if can use Intl for date formatting", function () {
|
|
4
|
-
intlDateTimeFormatSupportedLocale('en').
|
|
5
|
-
intlDateTimeFormatSupportedLocale('en-XX').
|
|
6
|
-
intlDateTimeFormatSupportedLocale(['en', 'ru']).
|
|
6
|
+
expect(intlDateTimeFormatSupportedLocale('en')).to.equal('en');
|
|
7
|
+
expect(intlDateTimeFormatSupportedLocale('en-XX')).to.equal('en-XX');
|
|
8
|
+
expect(intlDateTimeFormatSupportedLocale(['en', 'ru'])).to.equal('en');
|
|
7
9
|
});
|
|
8
10
|
it("should choose the most appropriate locale", function () {
|
|
9
11
|
function arrayToObject(array) {
|
|
@@ -22,13 +24,13 @@ describe('locale', function () {
|
|
|
22
24
|
return locales.includes(_);
|
|
23
25
|
});
|
|
24
26
|
}
|
|
25
|
-
choose('ru-RU', ['en', 'ru']).
|
|
26
|
-
choose('en-GB', ['en', 'ru']).
|
|
27
|
-
choose('fr-FR', ['en', 'ru']).
|
|
28
|
-
choose(['fr-FR', 'de-DE'], ['en', 'ru']).
|
|
29
|
-
choose(['fr-FR', 'de-DE'], ['en', 'de']).
|
|
30
|
-
choose(['fr-FR', 'de-DE'], ['en', 'de', 'fr']).
|
|
31
|
-
choose('fr-FR', ['en', 'fr-FR']).
|
|
27
|
+
expect(choose('ru-RU', ['en', 'ru'])).to.equal('ru');
|
|
28
|
+
expect(choose('en-GB', ['en', 'ru'])).to.equal('en');
|
|
29
|
+
expect(choose('fr-FR', ['en', 'ru'])).to.equal('en');
|
|
30
|
+
expect(choose(['fr-FR', 'de-DE'], ['en', 'ru'])).to.equal('en');
|
|
31
|
+
expect(choose(['fr-FR', 'de-DE'], ['en', 'de'])).to.equal('de');
|
|
32
|
+
expect(choose(['fr-FR', 'de-DE'], ['en', 'de', 'fr'])).to.equal('fr');
|
|
33
|
+
expect(choose('fr-FR', ['en', 'fr-FR'])).to.equal('fr-FR');
|
|
32
34
|
expect(function () {
|
|
33
35
|
return choose('fr-FR', ['de', 'ru']);
|
|
34
36
|
}).to["throw"]('No locale data has been registered for any of the locales: fr-FR');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locale.test.js","names":["
|
|
1
|
+
{"version":3,"file":"locale.test.js","names":["describe","it","expect","chooseLocale","intlDateTimeFormatSupportedLocale","to","equal","arrayToObject","array","reduce","object","locale","choose","locales","defaultLocale","arguments","length","undefined","concat","_","includes"],"sources":["../source/locale.test.js"],"sourcesContent":["import { describe, it } from 'mocha'\r\nimport { expect } from 'chai'\r\n\r\nimport chooseLocale, { intlDateTimeFormatSupportedLocale } from './locale.js'\r\n\r\ndescribe('locale', () => {\r\n\tit(`should tell if can use Intl for date formatting`, () => {\r\n\t\texpect(intlDateTimeFormatSupportedLocale('en')).to.equal('en')\r\n\t\texpect(intlDateTimeFormatSupportedLocale('en-XX')).to.equal('en-XX')\r\n\t\texpect(intlDateTimeFormatSupportedLocale(['en', 'ru'])).to.equal('en')\r\n\t})\r\n\r\n\tit(`should choose the most appropriate locale`, () => {\r\n\t\tfunction arrayToObject(array) {\r\n\t\t\treturn array.reduce((object, locale) => {\r\n\t\t\t\tobject[locale] = true\r\n\t\t\t\treturn object\r\n\t\t\t}, {})\r\n\t\t}\r\n\r\n\t\tfunction choose(locale, locales, defaultLocale = 'en') {\r\n\t\t\tif (typeof locale === 'string') {\r\n\t\t\t\tlocale = [locale]\r\n\t\t\t}\r\n\t\t\tlocale = locale.concat(defaultLocale)\r\n\t\t\treturn chooseLocale(locale, _ => locales.includes(_))\r\n\t\t}\r\n\r\n\t\texpect(choose('ru-RU', ['en', 'ru'])).to.equal('ru')\r\n\t\texpect(choose('en-GB', ['en', 'ru'])).to.equal('en')\r\n\t\texpect(choose('fr-FR', ['en', 'ru'])).to.equal('en')\r\n\t\texpect(choose(['fr-FR', 'de-DE'], ['en', 'ru'])).to.equal('en')\r\n\t\texpect(choose(['fr-FR', 'de-DE'], ['en', 'de'])).to.equal('de')\r\n\t\texpect(choose(['fr-FR', 'de-DE'], ['en', 'de', 'fr'])).to.equal('fr')\r\n\t\texpect(choose('fr-FR', ['en', 'fr-FR'])).to.equal('fr-FR')\r\n\r\n\t\texpect(() => choose('fr-FR', ['de', 'ru'])).to.throw(\r\n\t\t\t'No locale data has been registered for any of the locales: fr-FR'\r\n\t\t)\r\n\t})\r\n})"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,EAAE,QAAQ,OAAO;AACpC,SAASC,MAAM,QAAQ,MAAM;AAE7B,OAAOC,YAAY,IAAIC,iCAAiC,QAAQ,aAAa;AAE7EJ,QAAQ,CAAC,QAAQ,EAAE,YAAM;EACxBC,EAAE,oDAAoD,YAAM;IAC3DC,MAAM,CAACE,iCAAiC,CAAC,IAAI,CAAC,CAAC,CAACC,EAAE,CAACC,KAAK,CAAC,IAAI,CAAC;IAC9DJ,MAAM,CAACE,iCAAiC,CAAC,OAAO,CAAC,CAAC,CAACC,EAAE,CAACC,KAAK,CAAC,OAAO,CAAC;IACpEJ,MAAM,CAACE,iCAAiC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAACC,EAAE,CAACC,KAAK,CAAC,IAAI,CAAC;EACvE,CAAC,CAAC;EAEFL,EAAE,8CAA8C,YAAM;IACrD,SAASM,aAAaA,CAACC,KAAK,EAAE;MAC7B,OAAOA,KAAK,CAACC,MAAM,CAAC,UAACC,MAAM,EAAEC,MAAM,EAAK;QACvCD,MAAM,CAACC,MAAM,CAAC,GAAG,IAAI;QACrB,OAAOD,MAAM;MACd,CAAC,EAAE,CAAC,CAAC,CAAC;IACP;IAEA,SAASE,MAAMA,CAACD,MAAM,EAAEE,OAAO,EAAwB;MAAA,IAAtBC,aAAa,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI;MACpD,IAAI,OAAOJ,MAAM,KAAK,QAAQ,EAAE;QAC/BA,MAAM,GAAG,CAACA,MAAM,CAAC;MAClB;MACAA,MAAM,GAAGA,MAAM,CAACO,MAAM,CAACJ,aAAa,CAAC;MACrC,OAAOX,YAAY,CAACQ,MAAM,EAAE,UAAAQ,CAAC;QAAA,OAAIN,OAAO,CAACO,QAAQ,CAACD,CAAC,CAAC;MAAA,EAAC;IACtD;IAEAjB,MAAM,CAACU,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAACP,EAAE,CAACC,KAAK,CAAC,IAAI,CAAC;IACpDJ,MAAM,CAACU,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAACP,EAAE,CAACC,KAAK,CAAC,IAAI,CAAC;IACpDJ,MAAM,CAACU,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAACP,EAAE,CAACC,KAAK,CAAC,IAAI,CAAC;IACpDJ,MAAM,CAACU,MAAM,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAACP,EAAE,CAACC,KAAK,CAAC,IAAI,CAAC;IAC/DJ,MAAM,CAACU,MAAM,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAACP,EAAE,CAACC,KAAK,CAAC,IAAI,CAAC;IAC/DJ,MAAM,CAACU,MAAM,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAACP,EAAE,CAACC,KAAK,CAAC,IAAI,CAAC;IACrEJ,MAAM,CAACU,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAACP,EAAE,CAACC,KAAK,CAAC,OAAO,CAAC;IAE1DJ,MAAM,CAAC;MAAA,OAAMU,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAAA,EAAC,CAACP,EAAE,SAAM,CACnD,kEACD,CAAC;EACF,CAAC,CAAC;AACH,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"approximate.test.js","names":["
|
|
1
|
+
{"version":3,"file":"approximate.test.js","names":["describe","it","expect","getStep","steps","getStepFor","secondsPassed","now","units","unit","to","equal","factor","granularity","be","undefined"],"sources":["../../source/steps/approximate.test.js"],"sourcesContent":["import { describe, it } from 'mocha'\r\nimport { expect } from 'chai'\r\n\r\nimport getStep from './getStep.js'\r\nimport steps from './approximate.js'\r\n\r\ndescribe('steps/approximate', () => {\r\n\tit('should get step correctly', () => {\r\n\t\tconst getStepFor = (secondsPassed) => getStep(steps, secondsPassed, {\r\n\t\t\tnow: 0,\r\n\t\t\tunits: [\r\n\t\t\t\t'now',\r\n\t\t\t\t'second',\r\n\t\t\t\t'minute',\r\n\t\t\t\t'hour',\r\n\t\t\t\t'day',\r\n\t\t\t\t'week',\r\n\t\t\t\t'month',\r\n\t\t\t\t'year'\r\n\t\t\t]\r\n\t\t})\r\n\r\n\t\texpect(getStepFor(0).unit).to.equal('now')\r\n\t\texpect(getStepFor(1).unit).to.equal('now')\r\n\t\texpect(getStepFor(45).unit).to.equal('now')\r\n\r\n\t\texpect(getStepFor(46).unit).to.equal('minute')\r\n\t\texpect(getStepFor(46).factor).to.equal(60)\r\n\t\texpect(getStepFor(46).granularity).to.be.undefined\r\n\r\n\t\texpect(getStepFor(2.5 * 60 - 1).unit).to.equal('minute')\r\n\t\texpect(getStepFor(2.5 * 60 - 1).factor).to.equal(60)\r\n\t\texpect(getStepFor(2.5 * 60 - 1).granularity).to.be.undefined\r\n\r\n\t\texpect(getStepFor(2.5 * 60).unit).to.equal('minute')\r\n\t\texpect(getStepFor(2.5 * 60).factor).to.equal(60)\r\n\t\texpect(getStepFor(2.5 * 60).granularity).to.equal(5)\r\n\r\n\t\texpect(getStepFor(52.5 * 60 - 1).unit).to.equal('minute')\r\n\t\texpect(getStepFor(52.5 * 60 - 1).factor).to.equal(60)\r\n\t\texpect(getStepFor(52.5 * 60 - 1).granularity).to.equal(5)\r\n\r\n\t\texpect(getStepFor(52.5 * 60).unit).to.equal('hour')\r\n\t\texpect(getStepFor(52.5 * 60).factor).to.equal(60 * 60)\r\n\t})\r\n\r\n\tit('should get step correctly (\"now\" unit not allowed)', () => {\r\n\t\tconst getStepFor = (secondsPassed) => getStep(steps, secondsPassed, {\r\n\t\t\tnow: 0,\r\n\t\t\tunits: [\r\n\t\t\t\t'second',\r\n\t\t\t\t'minute',\r\n\t\t\t\t'hour',\r\n\t\t\t\t'day',\r\n\t\t\t\t'week',\r\n\t\t\t\t'month',\r\n\t\t\t\t'year'\r\n\t\t\t]\r\n\t\t})\r\n\r\n\t\texpect(getStepFor(0)).to.be.undefined\r\n\t\texpect(getStepFor(1).unit).to.equal('second')\r\n\t\texpect(getStepFor(45).unit).to.equal('second')\r\n\t\texpect(getStepFor(46).unit).to.equal('minute')\r\n\t})\r\n})"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { describe, it } from 'mocha';
|
|
2
|
+
import { expect } from 'chai';
|
|
1
3
|
import getStep from './getStep.js';
|
|
2
4
|
import round from './round.js';
|
|
3
5
|
describe('getStep', function () {
|
|
@@ -19,21 +21,21 @@ describe('getStep', function () {
|
|
|
19
21
|
|
|
20
22
|
it('should fall back to previous step if granularity is too high for the next step', function () {
|
|
21
23
|
var steps = round.slice();
|
|
22
|
-
steps[1].formatAs.
|
|
24
|
+
expect(steps[1].formatAs).to.equal('second');
|
|
23
25
|
steps[1].granularity = 3;
|
|
24
|
-
getStep(steps, 1.49, {
|
|
26
|
+
expect(getStep(steps, 1.49, {
|
|
25
27
|
now: 0,
|
|
26
28
|
units: ['now', 'second']
|
|
27
|
-
}).formatAs.
|
|
29
|
+
}).formatAs).to.equal('now');
|
|
28
30
|
|
|
29
31
|
// And if there's no previous step, then use the current one.
|
|
30
32
|
|
|
31
33
|
var firstStep = steps[0];
|
|
32
34
|
steps.splice(0, 1);
|
|
33
|
-
getStep(steps, 1.49, {
|
|
35
|
+
expect(getStep(steps, 1.49, {
|
|
34
36
|
now: 0,
|
|
35
37
|
units: ['now', 'second']
|
|
36
|
-
}).formatAs.
|
|
38
|
+
}).formatAs).to.equal('second');
|
|
37
39
|
steps.unshift(firstStep);
|
|
38
40
|
delete steps[1].granularity;
|
|
39
41
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getStep.test.js","names":["
|
|
1
|
+
{"version":3,"file":"getStep.test.js","names":["describe","it","expect","getStep","round","units","to","be","undefined","steps","slice","formatAs","equal","granularity","now","firstStep","splice","unshift","unit","minTime","id","seconds","threshold"],"sources":["../../source/steps/getStep.test.js"],"sourcesContent":["import { describe, it } from 'mocha'\r\nimport { expect } from 'chai'\r\n\r\nimport getStep from './getStep.js'\r\nimport round from './round.js'\r\n\r\ndescribe('getStep', () => {\r\n\tit('should return nothing if no time units are supported', () => {\r\n\t\texpect(getStep(round, 0, { units: ['femtosecond'] })).to.be.undefined\r\n\t})\r\n\r\n\t// it('should throw if a non-first step does not have a `minTime` or `test()`', () => {\r\n\t// \texpect(getStep([{ unit: 'second' }], 2, { units: ['second'] })).to.deep.equal({ unit: 'second' })\r\n\t//\r\n\t// \texpect(() => {\r\n\t// \t\tgetStep([{ unit: 'second' }, { unit: 'minute' }], 2, { units: ['second', 'minute'] })\r\n\t// \t}).to.throw(\r\n\t// \t\t'Each step must define either `minTime` or `test()`, except for the first one. Got \"undefined\", undefined. Step: {\"unit\":\"minute\"}'\r\n\t// \t)\r\n\t// })\r\n\r\n\tit('should fall back to previous step if granularity is too high for the next step', () => {\r\n\t\tconst steps = round.slice()\r\n\r\n\t\texpect(steps[1].formatAs).to.equal('second')\r\n\t\tsteps[1].granularity = 3\r\n\r\n\t\texpect(getStep(steps, 1.49, { now: 0, units: ['now', 'second'] }).formatAs).to.equal('now')\r\n\r\n\t\t// And if there's no previous step, then use the current one.\r\n\r\n\t\tconst firstStep = steps[0]\r\n\t\tsteps.splice(0, 1)\r\n\r\n\t\texpect(getStep(steps, 1.49, { now: 0, units: ['now', 'second'] }).formatAs).to.equal('second')\r\n\r\n\t\tsteps.unshift(firstStep)\r\n\r\n\t\tdelete steps[1].granularity\r\n\t})\r\n\r\n\tit('should support `minTime` object', () => {\r\n\t\texpect(getStep(\r\n\t\t\t[\r\n\t\t\t\t{ unit: 'second' },\r\n\t\t\t\t{\r\n\t\t\t\t\tminTime: { default: 10 },\r\n\t\t\t\t\tunit: 'minute'\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\t5,\r\n\t\t\t{ now: 0, units: ['second', 'minute'] }\r\n\t\t).unit).to.equal('second')\r\n\r\n\t\texpect(getStep(\r\n\t\t\t[\r\n\t\t\t\t{ unit: 'second' },\r\n\t\t\t\t{\r\n\t\t\t\t\tminTime: { default: 10 },\r\n\t\t\t\t\tunit: 'minute'\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\t10,\r\n\t\t\t{ now: 0, units: ['second', 'minute'] }\r\n\t\t).unit).to.equal('minute')\r\n\r\n\t\texpect(getStep(\r\n\t\t\t[\r\n\t\t\t\t{\r\n\t\t\t\t\tid: 'seconds',\r\n\t\t\t\t\tunit: 'second'\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tminTime: {\r\n\t\t\t\t\t\tseconds: 20,\r\n\t\t\t\t\t\tdefault: 10\r\n\t\t\t\t\t},\r\n\t\t\t\t\tunit: 'minute'\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\t10,\r\n\t\t\t{ now: 0, units: ['second', 'minute'] }\r\n\t\t).unit).to.equal('second')\r\n\t})\r\n\r\n\tit('should support legacy `threshold()` function', () => {\r\n\t\texpect(getStep(\r\n\t\t\t[\r\n\t\t\t\t{ unit: 'second' },\r\n\t\t\t\t{\r\n\t\t\t\t\tthreshold: () => 10,\r\n\t\t\t\t\tunit: 'minute'\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\t5,\r\n\t\t\t{ now: 0, units: ['second', 'minute'] }\r\n\t\t).unit).to.equal('second')\r\n\r\n\t\texpect(getStep(\r\n\t\t\t[\r\n\t\t\t\t{ unit: 'second' },\r\n\t\t\t\t{\r\n\t\t\t\t\tthreshold: () => 10,\r\n\t\t\t\t\tunit: 'minute'\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\t10,\r\n\t\t\t{ now: 0, units: ['second', 'minute'] }\r\n\t\t).unit).to.equal('minute')\r\n\t})\r\n\r\n\tit('should stop when reaching a step that has no \"minTime\" and for which \"minTime\" could not be deduced', () => {\r\n\t\texpect(getStep(\r\n\t\t\t[\r\n\t\t\t\t{ formatAs: 'second' },\r\n\t\t\t\t{ formatAs: 'unsupported-time-unit' }\r\n\t\t\t],\r\n\t\t\t10,\r\n\t\t\t{ now: 0, units: ['second', 'unsupported-time-unit'] }\r\n\t\t).formatAs).to.equal('second')\r\n\t})\r\n})"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,EAAE,QAAQ,OAAO;AACpC,SAASC,MAAM,QAAQ,MAAM;AAE7B,OAAOC,OAAO,MAAM,cAAc;AAClC,OAAOC,KAAK,MAAM,YAAY;AAE9BJ,QAAQ,CAAC,SAAS,EAAE,YAAM;EACzBC,EAAE,CAAC,sDAAsD,EAAE,YAAM;IAChEC,MAAM,CAACC,OAAO,CAACC,KAAK,EAAE,CAAC,EAAE;MAAEC,KAAK,EAAE,CAAC,aAAa;IAAE,CAAC,CAAC,CAAC,CAACC,EAAE,CAACC,EAAE,CAACC,SAAS;EACtE,CAAC,CAAC;;EAEF;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEAP,EAAE,CAAC,gFAAgF,EAAE,YAAM;IAC1F,IAAMQ,KAAK,GAAGL,KAAK,CAACM,KAAK,CAAC,CAAC;IAE3BR,MAAM,CAACO,KAAK,CAAC,CAAC,CAAC,CAACE,QAAQ,CAAC,CAACL,EAAE,CAACM,KAAK,CAAC,QAAQ,CAAC;IAC5CH,KAAK,CAAC,CAAC,CAAC,CAACI,WAAW,GAAG,CAAC;IAExBX,MAAM,CAACC,OAAO,CAACM,KAAK,EAAE,IAAI,EAAE;MAAEK,GAAG,EAAE,CAAC;MAAET,KAAK,EAAE,CAAC,KAAK,EAAE,QAAQ;IAAE,CAAC,CAAC,CAACM,QAAQ,CAAC,CAACL,EAAE,CAACM,KAAK,CAAC,KAAK,CAAC;;IAE3F;;IAEA,IAAMG,SAAS,GAAGN,KAAK,CAAC,CAAC,CAAC;IAC1BA,KAAK,CAACO,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;IAElBd,MAAM,CAACC,OAAO,CAACM,KAAK,EAAE,IAAI,EAAE;MAAEK,GAAG,EAAE,CAAC;MAAET,KAAK,EAAE,CAAC,KAAK,EAAE,QAAQ;IAAE,CAAC,CAAC,CAACM,QAAQ,CAAC,CAACL,EAAE,CAACM,KAAK,CAAC,QAAQ,CAAC;IAE9FH,KAAK,CAACQ,OAAO,CAACF,SAAS,CAAC;IAExB,OAAON,KAAK,CAAC,CAAC,CAAC,CAACI,WAAW;EAC5B,CAAC,CAAC;EAEFZ,EAAE,CAAC,iCAAiC,EAAE,YAAM;IAC3CC,MAAM,CAACC,OAAO,CACb,CACC;MAAEe,IAAI,EAAE;IAAS,CAAC,EAClB;MACCC,OAAO,EAAE;QAAE,WAAS;MAAG,CAAC;MACxBD,IAAI,EAAE;IACP,CAAC,CACD,EACD,CAAC,EACD;MAAEJ,GAAG,EAAE,CAAC;MAAET,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ;IAAE,CACvC,CAAC,CAACa,IAAI,CAAC,CAACZ,EAAE,CAACM,KAAK,CAAC,QAAQ,CAAC;IAE1BV,MAAM,CAACC,OAAO,CACb,CACC;MAAEe,IAAI,EAAE;IAAS,CAAC,EAClB;MACCC,OAAO,EAAE;QAAE,WAAS;MAAG,CAAC;MACxBD,IAAI,EAAE;IACP,CAAC,CACD,EACD,EAAE,EACF;MAAEJ,GAAG,EAAE,CAAC;MAAET,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ;IAAE,CACvC,CAAC,CAACa,IAAI,CAAC,CAACZ,EAAE,CAACM,KAAK,CAAC,QAAQ,CAAC;IAE1BV,MAAM,CAACC,OAAO,CACb,CACC;MACCiB,EAAE,EAAE,SAAS;MACbF,IAAI,EAAE;IACP,CAAC,EACD;MACCC,OAAO,EAAE;QACRE,OAAO,EAAE,EAAE;QACX,WAAS;MACV,CAAC;MACDH,IAAI,EAAE;IACP,CAAC,CACD,EACD,EAAE,EACF;MAAEJ,GAAG,EAAE,CAAC;MAAET,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ;IAAE,CACvC,CAAC,CAACa,IAAI,CAAC,CAACZ,EAAE,CAACM,KAAK,CAAC,QAAQ,CAAC;EAC3B,CAAC,CAAC;EAEFX,EAAE,CAAC,8CAA8C,EAAE,YAAM;IACxDC,MAAM,CAACC,OAAO,CACb,CACC;MAAEe,IAAI,EAAE;IAAS,CAAC,EAClB;MACCI,SAAS,EAAE,SAAAA,UAAA;QAAA,OAAM,EAAE;MAAA;MACnBJ,IAAI,EAAE;IACP,CAAC,CACD,EACD,CAAC,EACD;MAAEJ,GAAG,EAAE,CAAC;MAAET,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ;IAAE,CACvC,CAAC,CAACa,IAAI,CAAC,CAACZ,EAAE,CAACM,KAAK,CAAC,QAAQ,CAAC;IAE1BV,MAAM,CAACC,OAAO,CACb,CACC;MAAEe,IAAI,EAAE;IAAS,CAAC,EAClB;MACCI,SAAS,EAAE,SAAAA,UAAA;QAAA,OAAM,EAAE;MAAA;MACnBJ,IAAI,EAAE;IACP,CAAC,CACD,EACD,EAAE,EACF;MAAEJ,GAAG,EAAE,CAAC;MAAET,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ;IAAE,CACvC,CAAC,CAACa,IAAI,CAAC,CAACZ,EAAE,CAACM,KAAK,CAAC,QAAQ,CAAC;EAC3B,CAAC,CAAC;EAEFX,EAAE,CAAC,qGAAqG,EAAE,YAAM;IAC/GC,MAAM,CAACC,OAAO,CACb,CACC;MAAEQ,QAAQ,EAAE;IAAS,CAAC,EACtB;MAAEA,QAAQ,EAAE;IAAwB,CAAC,CACrC,EACD,EAAE,EACF;MAAEG,GAAG,EAAE,CAAC;MAAET,KAAK,EAAE,CAAC,QAAQ,EAAE,uBAAuB;IAAE,CACtD,CAAC,CAACM,QAAQ,CAAC,CAACL,EAAE,CAACM,KAAK,CAAC,QAAQ,CAAC;EAC/B,CAAC,CAAC;AACH,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
|
+
import { describe, it } from 'mocha';
|
|
2
|
+
import { expect } from 'chai';
|
|
1
3
|
import getStepDenominator from './getStepDenominator.js';
|
|
2
4
|
describe('getStepDenominator', function () {
|
|
3
5
|
it('should support the older "unit" name', function () {
|
|
4
|
-
getStepDenominator({
|
|
6
|
+
expect(getStepDenominator({
|
|
5
7
|
unit: 'minute'
|
|
6
|
-
}).
|
|
8
|
+
})).to.equal(60);
|
|
7
9
|
});
|
|
8
10
|
it('should return 1 as a default "denominator"', function () {
|
|
9
|
-
getStepDenominator({
|
|
11
|
+
expect(getStepDenominator({
|
|
10
12
|
formatAs: 'exotic'
|
|
11
|
-
}).
|
|
13
|
+
})).to.equal(1);
|
|
12
14
|
});
|
|
13
15
|
});
|
|
14
16
|
//# sourceMappingURL=getStepDenominator.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getStepDenominator.test.js","names":["
|
|
1
|
+
{"version":3,"file":"getStepDenominator.test.js","names":["describe","it","expect","getStepDenominator","unit","to","equal","formatAs"],"sources":["../../source/steps/getStepDenominator.test.js"],"sourcesContent":["import { describe, it } from 'mocha'\r\nimport { expect } from 'chai'\r\n\r\nimport getStepDenominator from './getStepDenominator.js'\r\n\r\ndescribe('getStepDenominator', () => {\r\n\tit('should support the older \"unit\" name', () => {\r\n\t\texpect(getStepDenominator({ unit: 'minute' })).to.equal(60)\r\n\t})\r\n\r\n\tit('should return 1 as a default \"denominator\"', () => {\r\n\t\texpect(getStepDenominator({ formatAs: 'exotic' })).to.equal(1)\r\n\t})\r\n})"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,EAAE,QAAQ,OAAO;AACpC,SAASC,MAAM,QAAQ,MAAM;AAE7B,OAAOC,kBAAkB,MAAM,yBAAyB;AAExDH,QAAQ,CAAC,oBAAoB,EAAE,YAAM;EACpCC,EAAE,CAAC,sCAAsC,EAAE,YAAM;IAChDC,MAAM,CAACC,kBAAkB,CAAC;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC,CAAC,CAACC,EAAE,CAACC,KAAK,CAAC,EAAE,CAAC;EAC5D,CAAC,CAAC;EAEFL,EAAE,CAAC,4CAA4C,EAAE,YAAM;IACtDC,MAAM,CAACC,kBAAkB,CAAC;MAAEI,QAAQ,EAAE;IAAS,CAAC,CAAC,CAAC,CAACF,EAAE,CAACC,KAAK,CAAC,CAAC,CAAC;EAC/D,CAAC,CAAC;AACH,CAAC,CAAC","ignoreList":[]}
|