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.

39 lines (33 loc) 1.11 kB
import { ArgumentError } from 'scrivito_sdk/common'; import { DataClass } from 'scrivito_sdk/data_integration/data_class'; import { ExternalDataClass, isExternalDataClassProvided, } from 'scrivito_sdk/data_integration/external_data_class'; import { ObjDataClass, isObjDataClassProvided, } from 'scrivito_sdk/data_integration/obj_data_class'; /** @public */ export function getDataClass(dataClassName: string): DataClass | null { return ( getExternalDataClass(dataClassName) || getObjDataClass(dataClassName) || null ); } export function getDataClassOrThrow(dataClassName: string): DataClass { const dataClass = getDataClass(dataClassName); if (dataClass) return dataClass; throw new ArgumentError(`No "${dataClassName}" found`); } export function getObjDataClass(dataClassName: string) { if (dataClassName === 'Obj' || isObjDataClassProvided(dataClassName)) { return new ObjDataClass(dataClassName); } } function getExternalDataClass(dataClassName: string) { if (isExternalDataClassProvided(dataClassName)) { return new ExternalDataClass(dataClassName); } }