@rnaga/wp-node
Version:
👉 **[View Full Documentation at rnaga.github.io/wp-node →](https://rnaga.github.io/wp-node/)**
31 lines (30 loc) • 871 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.hook = hook;
exports.filter = filter;
exports.action = action;
const hooks_reflect_1 = require("../core/hooks/hooks-reflect");
function hook(name) {
return function (target) {
// name should be unique across all hooks
target.__name = name;
};
}
function filter(eventName, priority = 99) {
return function (target, propertyKey, descriptor) {
hooks_reflect_1.HooksReflect.defineFilter(String(eventName), priority, [
target,
propertyKey,
descriptor,
]);
};
}
function action(eventName) {
return function (target, propertyKey, descriptor) {
hooks_reflect_1.HooksReflect.defineAction(String(eventName), [
target,
propertyKey,
descriptor,
]);
};
}