React Admin Loopback4 CRUD DataProvider
Use the package manager npm to install ra-data-lb4.
npm i --save ra-data-lb4// in src/App.tsximportReactfrom"react";import{Admin,Resource}from"react-admin";importlb4Providerfrom"ra-data-lb4";import{PostList}from"./posts";constApp=()=>(<AdmindataProvider={lb4Provider("http://path.to.my.api/")}><Resourcename="posts"list={PostList}/></Admin>);exportdefaultApp;Loopback4 supports model aggregations using inclusion resolvers, you can pass your include params per model:
// in src/App.tsximport{Admin,Resource}from"react-admin";importlb4Providerfrom"ra-data-lb4";constaggregate=(resource: string)=>{if(resource==="posts"){return[{relation: "author",},];}return[];};constprovider=lb4Provider("http://path.to.my.api/",aggregate);// in src/App.tsximport{fetchUtils,Admin,Resource}from"react-admin";importlb4Providerfrom"ra-data-lb4";consthttpClient=(url,options={})=>{if(!options.headers){options.headers=newHeaders({Accept: "application/json"});}// add your own headers hereoptions.headers.set("X-Custom-Header","foobar");returnfetchUtils.fetchJson(url,options);};constprovider=lb4Provider("http://path.to.my.api/",undefined,httpClient);Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.
This project is licensed under the MIT.
Copyright (c) KoLiBer (koliberr136a1@gmail.com)