summaryrefslogtreecommitdiff
path: root/packages/frontend/src/scripts
diff options
context:
space:
mode:
authorHazelnoot <acomputerdog@gmail.com>2024-11-02 11:23:15 -0400
committerHazelnoot <acomputerdog@gmail.com>2024-11-20 22:22:30 -0500
commit1ca350e45dc81990a71afb1772b2230f17a3ba96 (patch)
treea94235f05ee2351ea95f2a10453bdf00853596c5 /packages/frontend/src/scripts
parentallow following-feed-utils to use alternate state backends (diff)
downloadsharkey-1ca350e45dc81990a71afb1772b2230f17a3ba96.tar.gz
sharkey-1ca350e45dc81990a71afb1772b2230f17a3ba96.tar.bz2
sharkey-1ca350e45dc81990a71afb1772b2230f17a3ba96.zip
define defult Following Feed state in following-feed-utils.ts instead of store.ts
Diffstat (limited to 'packages/frontend/src/scripts')
-rw-r--r--packages/frontend/src/scripts/following-feed-utils.ts21
1 files changed, 20 insertions, 1 deletions
diff --git a/packages/frontend/src/scripts/following-feed-utils.ts b/packages/frontend/src/scripts/following-feed-utils.ts
index bf4266f830..3b4020f84b 100644
--- a/packages/frontend/src/scripts/following-feed-utils.ts
+++ b/packages/frontend/src/scripts/following-feed-utils.ts
@@ -45,13 +45,32 @@ export interface FollowingFeedState {
remoteWarningDismissed: boolean,
}
+export const defaultFollowingFeedState: FollowingFeedState = {
+ withNonPublic: false,
+ withQuotes: false,
+ withBots: true,
+ withReplies: false,
+ onlyFiles: false,
+ userList: followingTab,
+ remoteWarningDismissed: false,
+};
+
interface StorageInterface<T extends Partial<FollowingFeedState> = Partial<FollowingFeedState>> {
readonly state: Partial<T>;
readonly reactiveState: Ref<Partial<T>>;
save(updated: T): void;
}
-export function createOptions(storage?: Ref<StorageInterface>): PageHeaderItem {
+export function createHeaderItem(storage?: Ref<StorageInterface>): PageHeaderItem {
+ const menu = createOptionsMenu(storage);
+ return {
+ icon: 'ti ti-dots',
+ text: i18n.ts.options,
+ handler: ev => popupMenu(menu, ev.currentTarget ?? ev.target),
+ };
+}
+
+export function createOptionsMenu(storage?: Ref<StorageInterface>): MenuItem[] {
const {
userList,
withNonPublic,