Originally made for react-admin, this package provides a set of utility functions to handle entities with the API.
It allows to generate RQL requests to get, update and create entities and send those requests to the API using @cubicweb/client. See react-admin documentation to learn how this interface works.
@cubicweb/data-provider is available from NPM:
# With NPM
npm i @cubicweb/client
# Or with Yarn
yarn add @cubicweb/client
This library exposes the createDataProvider
function
to create a new data provider using a specific schema and client
from @cubicweb/client
.
import {Client, Schema} from "@cubicweb/client"
import {createDataProvider} from "@cubicweb/data-provider"
// First create your schema
import jsonSchema from "./schema.json"
const schema = new Schema(jsonSchema);
// Then your client
const client = new Client(BASE_URL)
// Use those to generate your data provider
const dataProvider = createDataProvider(client, schema)
Please note we are trying to move away from this interface. While it works for react-admin, the interface is too restrictive for more complex CubicWeb applications.
We are planning on releasing similar helper functions in another package without restrictions imposed by react-admin's data-provider interface.
This data provider will then use those helper functions se we can still use react-admin with CubicWeb.
All @cubicweb
libraries are in the cubicwebjs monorepo.
Please refer to the main README.
Contact us on Matrix and check the roadmap on the CubicWeb Repository.
Generated using TypeDoc