feat(nestjs): migrate to NestJS

This commit is contained in:
Ahmed Bouhuolia
2025-04-07 11:51:24 +02:00
parent f068218a16
commit 55fcc908ef
3779 changed files with 631 additions and 195332 deletions

View File

@@ -0,0 +1,37 @@
import { BaseModel } from '@/models/Model';
import { IView } from '../Views/Views.types';
type GConstructor<T = {}> = new (...args: any[]) => T;
export interface ICustomViewBaseModel {
defaultViews: IView[];
getDefaultViewBySlug(viewSlug: string): IView | null;
getDefaultViews(): IView[];
}
export const CustomViewBaseModelMixin = <T extends GConstructor<BaseModel>>(
Model: T,
) =>
class CustomViewBaseModel extends Model {
/**
* Retrieve the default custom views, roles and columns.
*/
static get defaultViews() {
return [];
}
/**
* Retrieve the default view by the given slug.
*/
static getDefaultViewBySlug(viewSlug) {
return this.defaultViews.find((view) => view.slug === viewSlug) || null;
}
/**
* Retrieve the default views.
* @returns {IView[]}
*/
static getDefaultViews() {
return this.defaultViews;
}
};