/
githubmirror
/
dayjs
Обзор
Документация
Войти
/
githubmirror
/
dayjs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
dev
src/plugin/devHelper/index.js
40 строк
2 KB
Ayomide Bamigbade
fix: added usage warnings for diff + updated unit tests (#2948)
27 окт 2025, 08:25
Не верифицирован
27 окт 2025, 08:25
269a7a9
Код
Авторство
О чём код?
/* eslint-disable no-console */ export default (o, c, d) => { /* istanbul ignore next line */ if (!process || process.env.NODE_ENV !== 'production') { const proto = c.prototype const oldParse = proto.parse proto.parse = function (cfg) { const { date } = cfg if (typeof date === 'string' && date.length === 13) { console.warn(`To parse a Unix timestamp like ${date}, you should pass it as a Number. https://day.js.org/docs/en/parse/unix-timestamp-milliseconds`) } if (typeof date === 'number' && String(date).length === 4) { console.warn(`Guessing you may want to parse the Year ${date}, you should pass it as a String ${date}, not a Number. Otherwise, ${date} will be treated as a Unix timestamp`) } if (cfg.args.length >= 2 && !d.p.customParseFormat) { console.warn(`To parse a date-time string like ${date} using the given format, you should enable customParseFormat plugin first. https://day.js.org/docs/en/parse/string-format`) } return oldParse.bind(this)(cfg) } const oldLocale = d.locale d.locale = function (preset, object, isLocal) { if (typeof object === 'undefined' && typeof preset === 'string') { if (!d.Ls[preset]) { console.warn(`Guessing you may want to use locale ${preset}, you have to load it before using it. https://day.js.org/docs/en/i18n/loading-into-nodejs`) } } return oldLocale(preset, object, isLocal) } const oldDiff = proto.diff proto.diff = function (date, unit, float) { const isInvalidDate = !date || !d(date).isValid() if (isInvalidDate) { console.warn('Invalid usage: diff() requires a valid comparison date as the first argument. https://day.js.org/docs/en/display/difference') } return oldDiff.call(this, date, unit, float) } } }