@sapphire/framework
Version:
Discord bot framework built for advanced and amazing bots.
1 lines • 1.53 kB
Source Map (JSON)
{"version":3,"sources":["../../../../src/lib/resolvers/date.ts"],"names":[],"mappings":";;;;AAGO,SAAS,WAAA,CACf,WACA,OACkH,EAAA;AAClH,EAAM,MAAA,MAAA,GAAS,IAAI,IAAA,CAAK,SAAS,CAAA;AAEjC,EAAM,MAAA,IAAA,GAAO,OAAO,OAAQ,EAAA;AAE5B,EAAI,IAAA,MAAA,CAAO,KAAM,CAAA,IAAI,CAAG,EAAA;AACvB,IAAO,OAAA,MAAA,CAAO,GAAI,CAAA,WAAA,CAAY,iBAAiB,CAAA;AAAA;AAGhD,EAAA,IAAI,OAAO,OAAS,EAAA,OAAA,KAAY,QAAY,IAAA,IAAA,GAAO,QAAQ,OAAS,EAAA;AACnE,IAAO,OAAA,MAAA,CAAO,GAAI,CAAA,WAAA,CAAY,oBAAoB,CAAA;AAAA;AAGnD,EAAA,IAAI,OAAO,OAAS,EAAA,OAAA,KAAY,QAAY,IAAA,IAAA,GAAO,QAAQ,OAAS,EAAA;AACnE,IAAO,OAAA,MAAA,CAAO,GAAI,CAAA,WAAA,CAAY,kBAAkB,CAAA;AAAA;AAGjD,EAAO,OAAA,MAAA,CAAO,GAAG,MAAM,CAAA;AACxB;AArBgB,MAAA,CAAA,WAAA,EAAA,aAAA,CAAA","file":"date.mjs","sourcesContent":["import { Result } from '@sapphire/result';\nimport { Identifiers } from '../errors/Identifiers';\n\nexport function resolveDate(\n\tparameter: string,\n\toptions?: { minimum?: number; maximum?: number }\n): Result<Date, Identifiers.ArgumentDateError | Identifiers.ArgumentDateTooEarly | Identifiers.ArgumentDateTooFar> {\n\tconst parsed = new Date(parameter);\n\n\tconst time = parsed.getTime();\n\n\tif (Number.isNaN(time)) {\n\t\treturn Result.err(Identifiers.ArgumentDateError);\n\t}\n\n\tif (typeof options?.minimum === 'number' && time < options.minimum) {\n\t\treturn Result.err(Identifiers.ArgumentDateTooEarly);\n\t}\n\n\tif (typeof options?.maximum === 'number' && time > options.maximum) {\n\t\treturn Result.err(Identifiers.ArgumentDateTooFar);\n\t}\n\n\treturn Result.ok(parsed);\n}\n"]}