This commit is contained in:
Asier Isayas 2025-03-24 13:03:42 -04:00
parent 81bd0f635e
commit 23852dcd69

View File

@ -2,7 +2,6 @@
* @module SelfServe/Decorators * @module SelfServe/Decorators
*/ */
import MaterializedViewsBuilder from "SelfServe/MaterializedViewsBuilder/MaterializedViewsBuilder";
import { import {
ChoiceItem, ChoiceItem,
Description, Description,
@ -10,7 +9,7 @@ import {
NumberUiType, NumberUiType,
OnChangeCallback, OnChangeCallback,
RefreshParams, RefreshParams,
SelfServeBaseClass, SelfServeBaseClass
} from "./SelfServeTypes"; } from "./SelfServeTypes";
import { addPropertyToMap, buildSmartUiDescriptor, DecoratorProperties } from "./SelfServeUtils"; import { addPropertyToMap, buildSmartUiDescriptor, DecoratorProperties } from "./SelfServeUtils";
@ -137,23 +136,17 @@ const isDescriptionDisplayOptions = (inputOptions: InputOptions): inputOptions i
}; };
const addToMap = (...decorators: Decorator[]): PropertyDecorator => { const addToMap = (...decorators: Decorator[]): PropertyDecorator => {
//eslint-disable-next-line @typescript-eslint/ban-types return (target, property) => {
return (target: SelfServeBaseClass | Function, property) => { console.log(target);
//eslint-disable-next-line @typescript-eslint/no-unused-vars console.log(target instanceof SelfServeBaseClass)
const instanceOfSelfServebaseClass: boolean = target instanceof SelfServeBaseClass; console.log(target.constructor.name)
//eslint-disable-next-line @typescript-eslint/no-unused-vars let className = target.constructor.name;
const instanceOfMaterializedViewBuilder: boolean = target instanceof MaterializedViewsBuilder;
//eslint-disable-next-line @typescript-eslint/no-unused-vars
const classNameV2: string = new MaterializedViewsBuilder().getSelfServeType();
let className: string = target.constructor.name;
const propertyName = property.toString(); const propertyName = property.toString();
if (target instanceof Function) { if (className === "Function") {
//eslint-disable-next-line @typescript-eslint/ban-types //eslint-disable-next-line @typescript-eslint/ban-types
className = (target as Function).name; className = (target as Function).name;
throw new Error(`Property '${propertyName}' in class '${className}'should be not be static.`); throw new Error(`Property '${propertyName}' in class '${className}'should be not be static.`);
} }
//eslint-disable-next-line @typescript-eslint/ban-types
// className = (target as MaterializedViewsBuilder).getSelfServeType();
const propertyType = (Reflect.getMetadata("design:type", target, property)?.name as string)?.toLowerCase(); const propertyType = (Reflect.getMetadata("design:type", target, property)?.name as string)?.toLowerCase();
addPropertyToMap(target, propertyName, className, "type", propertyType); addPropertyToMap(target, propertyName, className, "type", propertyType);