UNPKG

@wordpress/hooks

Version:
42 lines (39 loc) 1.19 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _validateHookName = _interopRequireDefault(require("./validateHookName.js")); /** * Internal dependencies */ /** * @callback DidHook * * Returns the number of times an action has been fired. * * @param {string} hookName The hook name to check. * * @return {number | undefined} The number of times the hook has run. */ /** * Returns a function which, when invoked, will return the number of times a * hook has been called. * * @param {import('.').Hooks} hooks Hooks instance. * @param {import('.').StoreKey} storeKey * * @return {DidHook} Function that returns a hook's call count. */ function createDidHook(hooks, storeKey) { return function didHook(hookName) { const hooksStore = hooks[storeKey]; if (!(0, _validateHookName.default)(hookName)) { return; } return hooksStore[hookName] && hooksStore[hookName].runs ? hooksStore[hookName].runs : 0; }; } var _default = exports.default = createDidHook; //# sourceMappingURL=createDidHook.js.map