UNPKG

react-redux-query

Version:

React hooks and functions for SWR-style data fetching, backed by Redux

60 lines (59 loc) 1.99 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.updateQueryState = exports.update = exports.save = void 0; /** * Action stores fetcher data. key is usually unique per URL path, and should probably be similar to URL path. * * @param payload - Payload object * @param payload.key - Key in query branch at which to save data * @param payload.data - Data object * * @returns Redux action object */ function save(payload) { return { type: 'REACT_REDUX_QUERY_SAVE_DATA', payload: payload, }; } exports.save = save; /** * Like save, but takes an updater function, which receives the data at key and must return updated data, undefined, or * null. * * - If updater returns undefined, don't modify data at key * - If updater returns null, remove query state at key from query branch * * @param payload - Payload object * @param payload.key - Key in query branch at which to save data * @param payload.updater - Function that receives data at key and must return updated data, undefined, or null * @param payload.newData - If this is passed, updater receives this as second argument * * @returns Redux action object */ function update(payload) { return { type: 'REACT_REDUX_QUERY_UPDATE_DATA', payload: payload, }; } exports.update = update; /** * Action updates query state. key is usually unique per URL path, and should probably be similar to URL path. * * This is meant for internal use; query state contains query metadata that client code should probably not update. * * @param payload - Payload object * @param payload.key - Key in query branch at which to save query state * @param payload.state - Query state object * @param payload.options - Update options * * @returns Redux action object */ function updateQueryState(payload) { return { type: 'REACT_REDUX_QUERY_UPDATE_QUERY_STATE', payload: payload, }; } exports.updateQueryState = updateQueryState;