Esse codigo estava dando errado por causa do this.constructor.name.
export function escapar(
target: any,
propertyKey: string,
descriptor: PropertyDescriptor
) {
const modeloOrigial = descriptor.value;
descriptor.value = (...args: any[]) => {
let retorno = modeloOrigial.apply(this, args);
if (typeof retorno === "string") {
console.log(
`@escape em ação na classe ${this.constructor.name} para metodo ${propertyKey}`
);
retorno = retorno.replace(/<script>[\s\S]*?<\/script>/, "");
}
return retorno;
};
return descriptor;
}
Aí eu troquei o this por target e código voltou a funcionar.
console.log(
`@escape em ação na classe ${target.constructor.name} para metodo ${propertyKey}`
);