Interface: DataProvider<TDataSource, TData, TNormalizedDataSource>
Defined in: storage/base.ts:128
Base interface for data providers
Extended by
Type Parameters
TDataSource
TDataSource extends DataSource
The data source type this data provider opens
TData
TData extends Data
The Data type produced by this data provider
TNormalizedDataSource
TNormalizedDataSource extends TDataSource = TDataSource
The data source type produced by DataProvider.normalize and accepted by DataProvider.load
Properties
name
readonlyname:string
Defined in: storage/base.ts:134
The name of the data provider
schema
readonlyschema:JsonSchema
Defined in: storage/base.ts:137
The JSON schema for the data source
uischema
readonlyuischema:UISchemaElement
Defined in: storage/base.ts:140
The JSON Forms UI schema for the data source
Methods
load()
load(
normalizedDataSource,options?):Promise<TData>
Defined in: storage/base.ts:174
Opens a data source and returns the loaded data accessor
The data source has to have been normalized by DataProvider.normalize beforehand.
Parameters
normalizedDataSource
TNormalizedDataSource
The normalized data source to open
options?
Returns
Promise<TData>
A promise that resolves to the loaded data accessor
normalize()
normalize(
dataSource,projectUrl):TNormalizedDataSource
Defined in: storage/base.ts:159
Returns the data source with all of this data provider's defaults applied and all of its relative URLs resolved
Data sources that normalize to the same value are considered equal, and their data is loaded only once and shared between all referencing objects. Normalization has to be idempotent: normalizing an already normalized data source must return the same value again.
Relative URLs are resolved against the URL the project was loaded from, and against the document base URL for projects without one.
Parameters
dataSource
TDataSource
The data source to normalize
projectUrl
string | null
The absolute URL of the project, or null for projects
that were not loaded from a URL
Returns
TNormalizedDataSource
The normalized data source