@wordpress/hooks
Version:
WordPress hooks library.
40 lines (35 loc) • 999 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
/**
* 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);
};
}
var _default = exports.default = createDoingHook;
//# sourceMappingURL=createDoingHook.js.map