2022-02-25 00:34:11 +00:00
|
|
|
import Settings from '../settings.js';
|
2022-02-23 13:52:06 +00:00
|
|
|
import {
|
|
|
|
AboutSetting,
|
2022-02-23 17:17:22 +00:00
|
|
|
AnonymizeUsernamesSetting,
|
2022-02-23 13:52:06 +00:00
|
|
|
AutocompleteSetting,
|
|
|
|
BackToTopSetting,
|
|
|
|
HideVotesSetting,
|
|
|
|
JumpToNewCommentSetting,
|
|
|
|
MarkdownToolbarSetting,
|
|
|
|
UserLabelsSetting,
|
2022-02-25 00:06:24 +00:00
|
|
|
UsernameColorsSetting,
|
2022-02-23 13:52:06 +00:00
|
|
|
} from './components/exports.js';
|
|
|
|
|
2022-02-25 00:34:11 +00:00
|
|
|
type Feature = {
|
2022-02-25 13:47:20 +00:00
|
|
|
availableSince: Date;
|
2022-02-25 00:34:11 +00:00
|
|
|
index: number;
|
|
|
|
key: keyof RemoveIndexSignature<Settings['features']>;
|
|
|
|
title: string;
|
|
|
|
component: () => any;
|
|
|
|
};
|
|
|
|
|
|
|
|
export const features: Feature[] = [
|
2022-02-23 17:17:22 +00:00
|
|
|
{
|
2022-02-25 13:47:20 +00:00
|
|
|
availableSince: new Date('2022-02-23'),
|
2022-02-23 17:17:22 +00:00
|
|
|
index: 0,
|
|
|
|
key: 'anonymizeUsernames',
|
2022-02-25 00:34:11 +00:00
|
|
|
title: 'Anonymize Usernames',
|
2022-02-23 17:17:22 +00:00
|
|
|
component: () => AnonymizeUsernamesSetting,
|
|
|
|
},
|
2022-02-23 13:52:06 +00:00
|
|
|
{
|
2022-02-25 13:47:20 +00:00
|
|
|
availableSince: new Date('2020-10-03'),
|
2022-02-23 13:52:06 +00:00
|
|
|
index: 0,
|
|
|
|
key: 'autocomplete',
|
2022-02-25 00:34:11 +00:00
|
|
|
title: 'Autocomplete',
|
2022-02-23 13:52:06 +00:00
|
|
|
component: () => AutocompleteSetting,
|
|
|
|
},
|
|
|
|
{
|
2022-02-25 13:47:20 +00:00
|
|
|
availableSince: new Date('2019-11-10'),
|
2022-02-23 13:52:06 +00:00
|
|
|
index: 0,
|
|
|
|
key: 'backToTop',
|
2022-02-25 00:34:11 +00:00
|
|
|
title: 'Back To Top',
|
2022-02-23 13:52:06 +00:00
|
|
|
component: () => BackToTopSetting,
|
|
|
|
},
|
|
|
|
{
|
2022-02-25 13:47:20 +00:00
|
|
|
availableSince: new Date('2019-11-12'),
|
2022-02-23 13:52:06 +00:00
|
|
|
index: 0,
|
|
|
|
key: 'hideVotes',
|
2022-02-25 00:34:11 +00:00
|
|
|
title: 'Hide Votes',
|
2022-02-23 13:52:06 +00:00
|
|
|
component: () => HideVotesSetting,
|
|
|
|
},
|
|
|
|
{
|
2022-02-25 13:47:20 +00:00
|
|
|
availableSince: new Date('2019-11-10'),
|
2022-02-23 13:52:06 +00:00
|
|
|
index: 0,
|
|
|
|
key: 'jumpToNewComment',
|
2022-02-25 00:34:11 +00:00
|
|
|
title: 'Jump To New Comment',
|
2022-02-23 13:52:06 +00:00
|
|
|
component: () => JumpToNewCommentSetting,
|
|
|
|
},
|
|
|
|
{
|
2022-02-25 13:47:20 +00:00
|
|
|
availableSince: new Date('2019-11-12'),
|
2022-02-23 13:52:06 +00:00
|
|
|
index: 0,
|
|
|
|
key: 'markdownToolbar',
|
2022-02-25 00:34:11 +00:00
|
|
|
title: 'Markdown Toolbar',
|
2022-02-23 13:52:06 +00:00
|
|
|
component: () => MarkdownToolbarSetting,
|
|
|
|
},
|
|
|
|
{
|
2022-02-25 13:47:20 +00:00
|
|
|
availableSince: new Date('2019-11-10'),
|
2022-02-23 13:52:06 +00:00
|
|
|
index: 0,
|
|
|
|
key: 'userLabels',
|
2022-02-25 00:34:11 +00:00
|
|
|
title: 'User Labels',
|
2022-02-23 13:52:06 +00:00
|
|
|
component: () => UserLabelsSetting,
|
|
|
|
},
|
2022-02-25 00:06:24 +00:00
|
|
|
{
|
2022-02-25 13:47:20 +00:00
|
|
|
availableSince: new Date('2022-02-25'),
|
2022-02-25 00:06:24 +00:00
|
|
|
index: 0,
|
|
|
|
key: 'usernameColors',
|
2022-02-25 00:34:11 +00:00
|
|
|
title: 'Username Colors',
|
2022-02-25 00:06:24 +00:00
|
|
|
component: () => UsernameColorsSetting,
|
|
|
|
},
|
2022-02-23 13:52:06 +00:00
|
|
|
{
|
2022-02-25 13:47:20 +00:00
|
|
|
availableSince: new Date('2019-11-10'),
|
2022-02-23 13:52:06 +00:00
|
|
|
index: 1,
|
|
|
|
key: 'debug',
|
2022-02-25 00:34:11 +00:00
|
|
|
title: 'About & Info',
|
2022-02-23 13:52:06 +00:00
|
|
|
component: () => AboutSetting,
|
|
|
|
},
|
2022-02-25 00:34:11 +00:00
|
|
|
];
|
|
|
|
|
|
|
|
features.sort((a, b) => a.index - b.index);
|