MCPcopy Create free account
hub / github.com/Effect-TS/effect / parseDate

Method parseDate

packages/effect/src/unstable/encoding/Toml.ts:231–249  ·  view source on GitHub ↗
(token: string)

Source from the content-addressed store, hash-verified

229 }
230
231 private parseDate(token: string): Date | string | undefined {
232 const date = "\\d{4}-\\d{2}-\\d{2}"
233 const time = "\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?"
234 if (new RegExp(`^${date}[Tt]${time}(?:[Zz]|[+-]\\d{2}:\\d{2})$`).test(token)) {
235 const value = new Date(token.replace("t", "T").replace("z", "Z"))
236 if (Number.isNaN(value.getTime())) {
237 this.fail(`Invalid date-time '${token}'`)
238 }
239 return value
240 }
241 if (
242 new RegExp(`^${date}[Tt]${time}$`).test(token) ||
243 new RegExp(`^${date}$`).test(token) ||
244 new RegExp(`^${time}$`).test(token)
245 ) {
246 return token.replace("t", "T")
247 }
248 return undefined
249 }
250
251 private parseNumber(token: string): number | undefined {
252 const normalized = token.replace(/_/g, "")

Callers 1

parseValueMethod · 0.95

Calls 2

failMethod · 0.95
replaceMethod · 0.45

Tested by

no test coverage detected