/*
* Vencord, a Discord client mod
* Copyright (c) 2024 Vendicated and contributors
* SPDX-License-Identifier: GPL-3.0-or-later
*/
import { definePluginSettings } from "@api/Settings";
import { Link } from "@components/Link";
import { Devs, EquicordDevs } from "@utils/constants";
import definePlugin, { OptionType } from "@utils/types";
import { Forms, moment } from "@webpack/common";
const settings = definePluginSettings({
cozyFormat: {
type: OptionType.STRING,
default: "[calendar]",
description: "time format to use in messages on cozy mode",
},
compactFormat: {
type: OptionType.STRING,
default: "LT",
description: "time format on compact mode and hovering messages",
},
tooltipFormat: {
type: OptionType.STRING,
default: "LLLL • [relative]",
description: "time format to use on tooltips",
},
sameDayFormat: {
type: OptionType.STRING,
default: "HH:mm:ss",
description: "[calendar] format for today"
},
lastDayFormat: {
type: OptionType.STRING,
default: "[yesterday] HH:mm:ss",
description: "[calendar] format for yesterday"
},
lastWeekFormat: {
type: OptionType.STRING,
default: "ddd DD.MM.YYYY HH:mm:ss",
description: "[calendar] format for last week"
},
sameElseFormat: {
type: OptionType.STRING,
default: "ddd DD.MM.YYYY HH:mm:ss",
description: "[calendar] format for older dates"
},
});
export default definePlugin({
name: "CustomTimestamps",
description: "Custom timestamps on messages and tooltips",
authors: [Devs.Rini, EquicordDevs.nvhhr],
settings,
settingsAboutComponent: () => (
<>
How to use:
Moment.js formatting documentation
Additionally you can use these in your inputs: [calendar] enables dynamic date formatting (see options below), [relative] gives you times such as "4 hours ago".