add new @WorkspaceIsSearchable decorator + updates services + add migration command (#10507)

closes https://github.com/twentyhq/core-team-issues/issues/345
This commit is contained in:
Etienne
2025-02-27 13:57:07 +01:00
committed by GitHub
parent 17dbb634ca
commit 39543872e6
54 changed files with 297 additions and 145 deletions

View File

@ -37,6 +37,11 @@ export function WorkspaceEntity(
'workspace:duplicate-criteria-metadata-args',
target,
);
const isSearchable =
TypedReflect.getMetadata(
'workspace:is-searchable-metadata-args',
target,
) ?? false;
const objectName = convertClassNameToObjectMetadataName(target.name);
@ -57,6 +62,7 @@ export function WorkspaceEntity(
isSystem,
gate,
duplicateCriteria,
isSearchable,
});
};
}

View File

@ -0,0 +1,11 @@
import { TypedReflect } from 'src/utils/typed-reflect';
export function WorkspaceIsSearchable() {
return function (target: any): void {
TypedReflect.defineMetadata(
'workspace:is-searchable-metadata-args',
true,
target,
);
};
}

View File

@ -72,4 +72,9 @@ export interface WorkspaceEntityMetadataArgs {
* Duplicate criteria.
*/
readonly duplicateCriteria?: WorkspaceEntityDuplicateCriteria[];
/**
* Is searchable object.
*/
readonly isSearchable: boolean;
}