@shockpkg/core
Version:
shockpkg core
35 lines (33 loc) • 928 B
JavaScript
/**
* Decorate property with defaults.
*
* @param enumerable Is enumerable.
* @param configurable Is configurable.
* @param writable Is writable.
* @returns Decorator function.
*/
export function property(enumerable = true, configurable = true, writable = true) {
return function (_target, _key, descriptor) {
const d = descriptor;
d.enumerable = enumerable;
d.configurable = configurable;
d.writable = writable;
};
}
/**
* Decorate method with defaults.
*
* @param enumerable Is enumerable.
* @param configurable Is configurable.
* @param writable Is writable.
* @returns Decorator function.
*/
export function method(enumerable = false, configurable = true, writable = true) {
return function (_target, _key, descriptor) {
const d = descriptor;
d.enumerable = enumerable;
d.configurable = configurable;
d.writable = writable;
};
}
//# sourceMappingURL=decorators.mjs.map