From 9f7bdaefdab650e9ca9aa6a77f145122af3a326d Mon Sep 17 00:00:00 2001 From: Faf4a <87046111+Faf4a@users.noreply.github.com> Date: Tue, 5 Mar 2024 15:12:43 +0100 Subject: [PATCH] refactor(creationDate): use SnowflakeUtil --- src/functions/util/creationDate.js | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/src/functions/util/creationDate.js b/src/functions/util/creationDate.js index 1b32c98a9..f53822598 100644 --- a/src/functions/util/creationDate.js +++ b/src/functions/util/creationDate.js @@ -1,20 +1,24 @@ -const {Time} = require('../../utils/helpers/customParser.js'); +const { Time } = require('../../utils/helpers/customParser.js'); +const { SnowflakeUtil } = require('discord.js'); + module.exports = async d => { - const {code, inside, err} = d.util.aoiFunc(d); - if (err) return d.error(err); + const data = d.util.aoiFunc(d); + if (data.err) return d.error(data.err); - const [id, format = "date"] = inside.splits; + const [id, format = "date"] = data.inside.splits; - const Id = await d.util.findId(d, id) - if (!Id) return d.aoiError.fnError(d, "custom", {inside}, "Invalid Id Provided In"); + if (!id) return d.aoiError.fnError(d, "custom", { inside: data.inside }, "Id"); let result; - if (format === "date") result = new Date(Id.createdTimestamp).toLocaleString("en-us", {timeZone: d.timezone ?? "en-us"}) - else if (format === "time-full" || format === "time") result = Time.format((Date.now() - Id.createdTimestamp)).toString() - else if (format === "time-humanize") result = Time.format((Date.now() - (Id.createdTimestamp) || 0)).humanize() - else result = Id.createdTimestamp; + const timestamp = Number(SnowflakeUtil.deconstruct(id).timestamp); + if (format === "date") result = new Date(timestamp).toLocaleString("en-us", {timeZone: d.timezone ?? "en-us"}) + else if (format === "time-full" || format === "time") result = Time.format((Date.now() - timestamp)).toString() + else if (format === "time-humanize") result = Time.format((Date.now() - timestamp) || 0).humanize() + else result = timestamp; + + data.result = result; return { - code: d.util.setCode({function: d.func, code, inside, result}) + code: d.util.setCode(data) } } \ No newline at end of file