mirror of https://github.com/morpheus65535/bazarr
64 lines
1.6 KiB
TypeScript
64 lines
1.6 KiB
TypeScript
import { createAction } from "redux-actions";
|
|
import { BadgesApi } from "../../apis";
|
|
import {
|
|
SITE_BADGE_UPDATE,
|
|
SITE_INITIALIZED,
|
|
SITE_INITIALIZE_FAILED,
|
|
SITE_NEED_AUTH,
|
|
SITE_NOTIFICATIONS_ADD,
|
|
SITE_NOTIFICATIONS_REMOVE,
|
|
SITE_OFFLINE_UPDATE,
|
|
SITE_PROGRESS_ADD,
|
|
SITE_PROGRESS_REMOVE,
|
|
SITE_SIDEBAR_UPDATE,
|
|
} from "../constants";
|
|
import { createAsyncAction, createCallbackAction } from "./factory";
|
|
import { systemUpdateLanguagesAll, systemUpdateSettings } from "./system";
|
|
|
|
export const bootstrap = createCallbackAction(
|
|
() => [systemUpdateLanguagesAll(), systemUpdateSettings(), badgeUpdateAll()],
|
|
() => siteInitialized(),
|
|
() => siteInitializationFailed()
|
|
);
|
|
|
|
// TODO: Override error messages
|
|
export const siteInitializationFailed = createAction(SITE_INITIALIZE_FAILED);
|
|
|
|
const siteInitialized = createAction(SITE_INITIALIZED);
|
|
|
|
export const siteRedirectToAuth = createAction(SITE_NEED_AUTH);
|
|
|
|
export const badgeUpdateAll = createAsyncAction(SITE_BADGE_UPDATE, () =>
|
|
BadgesApi.all()
|
|
);
|
|
|
|
export const siteAddNotifications = createAction(
|
|
SITE_NOTIFICATIONS_ADD,
|
|
(notification: ReduxStore.Notification[]) => notification
|
|
);
|
|
|
|
export const siteRemoveNotifications = createAction(
|
|
SITE_NOTIFICATIONS_REMOVE,
|
|
(id: string) => id
|
|
);
|
|
|
|
export const siteAddProgress = createAction(
|
|
SITE_PROGRESS_ADD,
|
|
(progress: ReduxStore.Progress[]) => progress
|
|
);
|
|
|
|
export const siteRemoveProgress = createAction(
|
|
SITE_PROGRESS_REMOVE,
|
|
(id: string) => id
|
|
);
|
|
|
|
export const siteChangeSidebar = createAction(
|
|
SITE_SIDEBAR_UPDATE,
|
|
(id: string) => id
|
|
);
|
|
|
|
export const siteUpdateOffline = createAction(
|
|
SITE_OFFLINE_UPDATE,
|
|
(state: boolean) => state
|
|
);
|