UNPKG

scrivito

Version:

Scrivito is a professional, yet easy to use SaaS Enterprise Content Management Service, built for digital agencies and medium to large businesses. It is completely maintenance-free, cost-effective, and has unprecedented performance and security.

27 lines (24 loc) 804 B
import { ApiClient } from 'scrivito_sdk/client'; import { LazyAsyncDataAttributeDefinitions } from 'scrivito_sdk/data_integration'; import { DataClassSchema, LazyAsyncDataClassTitle, } from 'scrivito_sdk/data_integration/data_class_schema'; import { fetchSchema } from 'scrivito_sdk/data_integration/fetch_schema'; export function createRestApiSchema( { attributes, title, }: { attributes?: LazyAsyncDataAttributeDefinitions; title?: LazyAsyncDataClassTitle; }, apiClient: ApiClient ): DataClassSchema { const fetchAttributes = async () => (await fetchSchema(apiClient)).attributes; const fetchTitle = async () => (await fetchSchema(apiClient)).title; return { attributes: attributes || fetchAttributes, title: attributes ? title : title || fetchTitle, }; }