surrogate
Version:
Object method hooks made easy
66 lines (57 loc) • 2.74 kB
JavaScript
import {SurrogateClassWrapper as $2d7781ab0a000147$export$192df6a0a4406daf} from "./surrogate.2bacf83e.js";
import {BOTH as $96586206eab52612$export$1cb7e2af85daea7b, POST as $96586206eab52612$export$484f3009c2ee32ad, PRE as $96586206eab52612$export$4b15a4ac90c78f2b} from "./surrogate.5d082a84.js";
import {MethodWrapper as $66c0dea2f60cbf63$export$9255060c057a2446} from "./surrogate.a243fd60.js";
import {isObject as $8c13fb1fbdc14b86$export$a6cdc56e425d0d0a} from "./surrogate.68fc8564.js";
import {asArray as $2QGVS$asArray} from "@jfrazx/asarray";
const $5a2a6178abf8fddd$export$50613b79e775cc76 = (type, options)=>{
const decoratorOptions = $5a2a6178abf8fddd$var$organizeOptions(options);
return (target, event)=>{
(0, $2d7781ab0a000147$export$192df6a0a4406daf).addDecorators(target.constructor, type, event, decoratorOptions);
};
};
const $5a2a6178abf8fddd$export$8eec127a839d06d3 = (type)=>type === (0, $96586206eab52612$export$1cb7e2af85daea7b) ? [
(0, $96586206eab52612$export$4b15a4ac90c78f2b),
(0, $96586206eab52612$export$484f3009c2ee32ad)
] : [
type
];
const $5a2a6178abf8fddd$export$96e2c81bb82b5871 = (type, options)=>{
const wrapper = {
wrapper: (0, $66c0dea2f60cbf63$export$9255060c057a2446).Async
};
const asyncOptions = (0, $2QGVS$asArray)(options).map((opt)=>$5a2a6178abf8fddd$var$isDecoratorOptions(opt) ? {
...opt,
options: {
...opt.options,
...wrapper
}
} : {
handler: opt,
options: {
...wrapper
}
});
return $5a2a6178abf8fddd$export$50613b79e775cc76(type, asyncOptions);
};
const $5a2a6178abf8fddd$var$organizeOptions = (delegateOptions)=>{
return (0, $2QGVS$asArray)(delegateOptions).flatMap((value)=>{
return $5a2a6178abf8fddd$var$isDecoratorOptions(value) ? $5a2a6178abf8fddd$var$mapHandlers(value) : [
{
handler: value,
options: {}
}
];
});
};
const $5a2a6178abf8fddd$var$mapHandlers = (decoratorOptions)=>{
const { handler: handlers, options: options = {} } = decoratorOptions;
return (0, $2QGVS$asArray)(handlers).map((handler)=>({
handler: handler,
options: {
...options
}
}));
};
const $5a2a6178abf8fddd$var$isDecoratorOptions = (value)=>(0, $8c13fb1fbdc14b86$export$a6cdc56e425d0d0a)(value);
export {$5a2a6178abf8fddd$export$50613b79e775cc76 as manageDecorator, $5a2a6178abf8fddd$export$8eec127a839d06d3 as determineWhich, $5a2a6178abf8fddd$export$96e2c81bb82b5871 as manageAsyncDecorator};
//# sourceMappingURL=surrogate.5a994c10.js.map