Urara-Blog/node_modules/.pnpm-store/v3/files/c9/996a0dee49929d3db062b2bc4fe6501b5fc31b0636e62426bd99a6aad625f0ee414e69a91e6e0e60bfb30f8aa212f5abaa65543ee6346229e793b9fce30271-exec
2022-08-14 01:14:53 +08:00

24 lines
663 B
Text
Executable file

'use strict'
const f = require('./format-num.js')
class FloatingDateTime extends Date {
constructor (value) {
super(value + 'Z')
this.isFloating = true
}
toISOString () {
const date = `${this.getUTCFullYear()}-${f(2, this.getUTCMonth() + 1)}-${f(2, this.getUTCDate())}`
const time = `${f(2, this.getUTCHours())}:${f(2, this.getUTCMinutes())}:${f(2, this.getUTCSeconds())}.${f(3, this.getUTCMilliseconds())}`
return `${date}T${time}`
}
}
module.exports = value => {
const date = new FloatingDateTime(value)
/* istanbul ignore if */
if (isNaN(date)) {
throw new TypeError('Invalid Datetime')
} else {
return date
}
}