@wordpress/hooks
Version:
WordPress hooks library.
34 lines (30 loc) • 875 B
JavaScript
/**
* Internal dependencies
*/
/**
* Returns whether a hook is currently being executed.
*
*/
/**
* Returns a function which, when invoked, will return whether a hook is
* currently being executed.
*
* @param hooks Hooks instance.
* @param storeKey
*
* @return Function that returns whether a hook is currently
* being executed.
*/
function createDoingHook(hooks, storeKey) {
return function doingHook(hookName) {
const hooksStore = hooks[storeKey];
// If the hookName was not passed, check for any current hook.
if ('undefined' === typeof hookName) {
return hooksStore.__current.size > 0;
}
// Find if the `hookName` hook is in `__current`.
return Array.from(hooksStore.__current).some(hook => hook.name === hookName);
};
}
export default createDoingHook;
//# sourceMappingURL=createDoingHook.js.map