public commit

This commit is contained in:
dswbx
2024-11-16 12:01:47 +01:00
commit 90f80c4280
582 changed files with 49291 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
import { type Static, Type } from "core/utils";
import { Field, baseFieldConfigSchema } from "./Field";
export const virtualFieldConfigSchema = Type.Composite([baseFieldConfigSchema, Type.Object({})]);
export type VirtualFieldConfig = Static<typeof virtualFieldConfigSchema>;
export class VirtualField extends Field<VirtualFieldConfig> {
override readonly type = "virtual";
constructor(name: string, config?: Partial<VirtualFieldConfig>) {
// field must be virtual, as it doesn't store a reference to the entity
super(name, { ...config, fillable: false, virtual: true });
}
protected getSchema() {
return virtualFieldConfigSchema;
}
schema() {
return undefined;
}
override toJsonSchema() {
return this.toSchemaWrapIfRequired(
Type.Any({
default: this.getDefault(),
readOnly: true
})
);
}
}