UNPKG

sanity-plugin-media

Version:

This version of `sanity-plugin-media` is for Sanity Studio V3.

125 lines (119 loc) 3.42 kB
import { type ActionFromReducersMapObject, type Reducer, type StateFromReducersMapObject, combineReducers } from '@reduxjs/toolkit' import {combineEpics} from 'redux-observable' import assetsReducer, { assetsDeleteEpic, assetsFetchAfterDeleteAllEpic, assetsFetchEpic, assetsFetchNextPageEpic, assetsFetchPageIndexEpic, assetsListenerCreateQueueEpic, assetsListenerDeleteQueueEpic, assetsListenerUpdateQueueEpic, assetsOrderSetEpic, assetsSearchEpic, assetsSortEpic, assetsTagsAddEpic, assetsTagsRemoveEpic, assetsUnpickEpic, assetsUpdateEpic } from './assets' import debugReducer from './debug' import dialogReducer, { dialogClearOnAssetUpdateEpic, dialogTagCreateEpic, dialogTagDeleteEpic } from './dialog' import selectedReducer from './selected' import notificationsReducer, { notificationsAssetsDeleteErrorEpic, notificationsAssetsDeleteCompleteEpic, notificationsAssetsTagsAddCompleteEpic, notificationsAssetsTagsRemoveCompleteEpic, notificationsAssetsUpdateCompleteEpic, notificationsGenericErrorEpic, notificationsTagCreateCompleteEpic, notificationsTagDeleteCompleteEpic, notificationsTagUpdateCompleteEpic } from './notifications' import searchReducer, {searchFacetTagUpdateEpic} from './search' import tagsReducer, { tagsCreateEpic, tagsDeleteEpic, tagsFetchEpic, tagsListenerCreateQueueEpic, tagsListenerDeleteQueueEpic, tagsListenerUpdateQueueEpic, tagsSortEpic, tagsUpdateEpic } from './tags' import uploadsReducer, { uploadsAssetStartEpic, uploadsAssetUploadEpic, uploadsCheckRequestEpic, uploadsCompleteQueueEpic } from './uploads' export const rootEpic = combineEpics( assetsDeleteEpic, assetsFetchEpic, assetsFetchAfterDeleteAllEpic, assetsFetchNextPageEpic, assetsFetchPageIndexEpic, assetsListenerCreateQueueEpic, assetsListenerDeleteQueueEpic, assetsListenerUpdateQueueEpic, assetsOrderSetEpic, assetsSearchEpic, assetsSortEpic, assetsTagsAddEpic, assetsTagsRemoveEpic, assetsUnpickEpic, assetsUpdateEpic, dialogClearOnAssetUpdateEpic, dialogTagCreateEpic, dialogTagDeleteEpic, notificationsAssetsDeleteErrorEpic, notificationsAssetsDeleteCompleteEpic, notificationsAssetsTagsAddCompleteEpic, notificationsAssetsTagsRemoveCompleteEpic, notificationsAssetsUpdateCompleteEpic, notificationsGenericErrorEpic, notificationsTagCreateCompleteEpic, notificationsTagDeleteCompleteEpic, notificationsTagUpdateCompleteEpic, searchFacetTagUpdateEpic, tagsCreateEpic, tagsDeleteEpic, tagsFetchEpic, tagsListenerCreateQueueEpic, tagsListenerDeleteQueueEpic, tagsListenerUpdateQueueEpic, tagsSortEpic, tagsUpdateEpic, uploadsAssetStartEpic, uploadsAssetUploadEpic, uploadsCheckRequestEpic, uploadsCompleteQueueEpic ) const reducers = { assets: assetsReducer, debug: debugReducer, dialog: dialogReducer, notifications: notificationsReducer, search: searchReducer, selected: selectedReducer, tags: tagsReducer, uploads: uploadsReducer } type ReducersMapObject = typeof reducers // Workaround to avoid `$CombinedState` ts errors // source: https://github.com/reduxjs/redux-toolkit/issues/2068#issuecomment-1130796500 // TODO: remove once we use `redux-toolkit` v2 export const rootReducer: Reducer< StateFromReducersMapObject<ReducersMapObject>, ActionFromReducersMapObject<ReducersMapObject> > = combineReducers(reducers)