@wordpress/data
Version:
Data module for WordPress.
302 lines (291 loc) • 10.2 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "AsyncModeProvider", {
enumerable: true,
get: function () {
return _asyncModeProvider.AsyncModeProvider;
}
});
Object.defineProperty(exports, "RegistryConsumer", {
enumerable: true,
get: function () {
return _registryProvider.RegistryConsumer;
}
});
Object.defineProperty(exports, "RegistryProvider", {
enumerable: true,
get: function () {
return _registryProvider.RegistryProvider;
}
});
exports.combineReducers = void 0;
Object.defineProperty(exports, "controls", {
enumerable: true,
get: function () {
return _controls.controls;
}
});
Object.defineProperty(exports, "createReduxStore", {
enumerable: true,
get: function () {
return _reduxStore.default;
}
});
Object.defineProperty(exports, "createRegistry", {
enumerable: true,
get: function () {
return _registry.createRegistry;
}
});
Object.defineProperty(exports, "createRegistryControl", {
enumerable: true,
get: function () {
return _factory.createRegistryControl;
}
});
Object.defineProperty(exports, "createRegistrySelector", {
enumerable: true,
get: function () {
return _factory.createRegistrySelector;
}
});
Object.defineProperty(exports, "createSelector", {
enumerable: true,
get: function () {
return _createSelector.createSelector;
}
});
Object.defineProperty(exports, "dispatch", {
enumerable: true,
get: function () {
return _dispatch.dispatch;
}
});
exports.resolveSelect = exports.registerStore = exports.registerGenericStore = exports.register = exports.plugins = void 0;
Object.defineProperty(exports, "select", {
enumerable: true,
get: function () {
return _select.select;
}
});
exports.use = exports.suspendSelect = exports.subscribe = void 0;
Object.defineProperty(exports, "useDispatch", {
enumerable: true,
get: function () {
return _useDispatch.useDispatch;
}
});
Object.defineProperty(exports, "useRegistry", {
enumerable: true,
get: function () {
return _registryProvider.useRegistry;
}
});
Object.defineProperty(exports, "useSelect", {
enumerable: true,
get: function () {
return _useSelect.default;
}
});
Object.defineProperty(exports, "useSuspenseSelect", {
enumerable: true,
get: function () {
return _useSelect.useSuspenseSelect;
}
});
Object.defineProperty(exports, "withDispatch", {
enumerable: true,
get: function () {
return _withDispatch.default;
}
});
Object.defineProperty(exports, "withRegistry", {
enumerable: true,
get: function () {
return _withRegistry.default;
}
});
Object.defineProperty(exports, "withSelect", {
enumerable: true,
get: function () {
return _withSelect.default;
}
});
var _defaultRegistry = _interopRequireDefault(require("./default-registry"));
var plugins = _interopRequireWildcard(require("./plugins"));
exports.plugins = plugins;
var _reduxStore = _interopRequireWildcard(require("./redux-store"));
var _withSelect = _interopRequireDefault(require("./components/with-select"));
var _withDispatch = _interopRequireDefault(require("./components/with-dispatch"));
var _withRegistry = _interopRequireDefault(require("./components/with-registry"));
var _registryProvider = require("./components/registry-provider");
var _useSelect = _interopRequireWildcard(require("./components/use-select"));
var _useDispatch = require("./components/use-dispatch");
var _asyncModeProvider = require("./components/async-mode-provider");
var _registry = require("./registry");
var _factory = require("./factory");
var _createSelector = require("./create-selector");
var _controls = require("./controls");
var _dispatch = require("./dispatch");
var _select = require("./select");
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
/**
* Internal dependencies
*/
/** @typedef {import('./types').StoreDescriptor} StoreDescriptor */
/**
* Object of available plugins to use with a registry.
*
* @see [use](#use)
*
* @type {Object}
*/
/**
* The combineReducers helper function turns an object whose values are different
* reducing functions into a single reducing function you can pass to registerReducer.
*
* @type {import('./types').combineReducers}
* @param {Object} reducers An object whose values correspond to different reducing
* functions that need to be combined into one.
*
* @example
* ```js
* import { combineReducers, createReduxStore, register } from '@wordpress/data';
*
* const prices = ( state = {}, action ) => {
* return action.type === 'SET_PRICE' ?
* {
* ...state,
* [ action.item ]: action.price,
* } :
* state;
* };
*
* const discountPercent = ( state = 0, action ) => {
* return action.type === 'START_SALE' ?
* action.discountPercent :
* state;
* };
*
* const store = createReduxStore( 'my-shop', {
* reducer: combineReducers( {
* prices,
* discountPercent,
* } ),
* } );
* register( store );
* ```
*
* @return {Function} A reducer that invokes every reducer inside the reducers
* object, and constructs a state object with the same shape.
*/
const combineReducers = exports.combineReducers = _reduxStore.combineReducers;
/**
* Given a store descriptor, returns an object containing the store's selectors pre-bound to state
* so that you only need to supply additional arguments, and modified so that they return promises
* that resolve to their eventual values, after any resolvers have ran.
*
* @param {StoreDescriptor|string} storeNameOrDescriptor The store descriptor. The legacy calling
* convention of passing the store name is
* also supported.
*
* @example
* ```js
* import { resolveSelect } from '@wordpress/data';
* import { store as myCustomStore } from 'my-custom-store';
*
* resolveSelect( myCustomStore ).getPrice( 'hammer' ).then(console.log)
* ```
*
* @return {Object} Object containing the store's promise-wrapped selectors.
*/
const resolveSelect = exports.resolveSelect = _defaultRegistry.default.resolveSelect;
/**
* Given a store descriptor, returns an object containing the store's selectors pre-bound to state
* so that you only need to supply additional arguments, and modified so that they throw promises
* in case the selector is not resolved yet.
*
* @param {StoreDescriptor|string} storeNameOrDescriptor The store descriptor. The legacy calling
* convention of passing the store name is
* also supported.
*
* @return {Object} Object containing the store's suspense-wrapped selectors.
*/
const suspendSelect = exports.suspendSelect = _defaultRegistry.default.suspendSelect;
/**
* Given a listener function, the function will be called any time the state value
* of one of the registered stores has changed. If you specify the optional
* `storeNameOrDescriptor` parameter, the listener function will be called only
* on updates on that one specific registered store.
*
* This function returns an `unsubscribe` function used to stop the subscription.
*
* @param {Function} listener Callback function.
* @param {string|StoreDescriptor?} storeNameOrDescriptor Optional store name.
*
* @example
* ```js
* import { subscribe } from '@wordpress/data';
*
* const unsubscribe = subscribe( () => {
* // You could use this opportunity to test whether the derived result of a
* // selector has subsequently changed as the result of a state update.
* } );
*
* // Later, if necessary...
* unsubscribe();
* ```
*/
const subscribe = exports.subscribe = _defaultRegistry.default.subscribe;
/**
* Registers a generic store instance.
*
* @deprecated Use `register( storeDescriptor )` instead.
*
* @param {string} name Store registry name.
* @param {Object} store Store instance (`{ getSelectors, getActions, subscribe }`).
*/
const registerGenericStore = exports.registerGenericStore = _defaultRegistry.default.registerGenericStore;
/**
* Registers a standard `@wordpress/data` store.
*
* @deprecated Use `register` instead.
*
* @param {string} storeName Unique namespace identifier for the store.
* @param {Object} options Store description (reducer, actions, selectors, resolvers).
*
* @return {Object} Registered store object.
*/
const registerStore = exports.registerStore = _defaultRegistry.default.registerStore;
/**
* Extends a registry to inherit functionality provided by a given plugin. A
* plugin is an object with properties aligning to that of a registry, merged
* to extend the default registry behavior.
*
* @param {Object} plugin Plugin object.
*/
const use = exports.use = _defaultRegistry.default.use;
/**
* Registers a standard `@wordpress/data` store descriptor.
*
* @example
* ```js
* import { createReduxStore, register } from '@wordpress/data';
*
* const store = createReduxStore( 'demo', {
* reducer: ( state = 'OK' ) => state,
* selectors: {
* getValue: ( state ) => state,
* },
* } );
* register( store );
* ```
*
* @param {StoreDescriptor} store Store descriptor.
*/
const register = exports.register = _defaultRegistry.default.register;
//# sourceMappingURL=index.js.map
;