Newer
Older
import {
EntitiesSchemas,
RelationDefinition,
Schema,
} from "ra-cubicweb/dist/Schema";
ESchemas extends EntitiesSchemas<string>,
EntityTypes extends Extract<keyof ESchemas, string>,
RDefs extends RelationDefinition<EntityTypes>[]
>(schema: {
entities: ESchemas;
relationsDefinitions: RDefs;
}): [Schema<EntityTypes, ESchemas, RDefs>, EntityTypes] {
return [schema, "" as EntityTypes];
export const [schema, types] = makeSchema({
entities: {
name: { type: "String", required: true },
latitude: { type: "Float" },
longitude: { type: "Float" },
postal_address: { type: "String" },
zip_code: { type: "Int" },
country: { type: "String", default: "France" },
email: { type: "String" },
relationsDefinitions: [
{
name: "is_in",
subject: "Museum",
object: "City",
{
name: "director",
subject: "Museum",
object: "Person",