Hi, I need samples for React project using DataManager GraphQL Adaptor for forms and grid components. I was checking its documentation and I couldn't find samples for GraphQL.
Thank you in advance
Regards,
Cesar
|
[App.tsx]
export default class App extends React.Component<{}, {}>{
public data = new DataManager({
adaptor: new GraphQLAdaptor({
query: `query getOrders($datamanager: DataManager) {
getOrders(datamanager: $datamanager) {
count,
result{OrderID, CustomerID, EmployeeID, ShipCity, ShipCountry}
}
}`,
response: {
count: 'getOrders.count',
result: 'getOrders.result'
},
}),
url: 'http://localhost:4200/'
});
public gridInstance: any;
public render() {
return <div>
{<div>
<GridComponent dataSource={this.data} allowPaging={true} height='300' ref={(g) => { this.gridInstance = g; }} allowSorting={true}>
<ColumnsDirective>
----
<Inject services={[Page, Sort]}/>
</GridComponent>
</div>}
</div>}
};
|
|
[schema.graphql]
input OrderInput {
OrderID: Int!
CustomerID: String
EmployeeID: Int
ShipCity: String
ShipCountry: String
}
type Order {
OrderID: Int!
CustomerID: String
EmployeeID: Int
ShipCity: String
ShipCountry: String
}
type ReturnType {
result: [Order]
count: Int
aggregates: String
}
type Query {
getOrders(datamanager: DataManager): ReturnType
}
type Mutation {
createOrder(value: OrderInput): Order!
updateOrder(key: Int!, keyColumn: String, value: OrderInput): Order
deleteOrder(key: Int!, keyColumn: String, value: OrderInput): Order!
}
|
|
[resolvers.js]
const resolvers = {
Query: {
getOrders: (parent, { datamanager }, context, info) => {
var ret = DataUtil.processData(datamanager, filterData);
return ret;
}
},
Mutation: {
createOrder: (parent, { value }, context, info) => {
// perform insert
return newOrder;
},
updateOrder: (parent, { key, keyColumn, value }, context, info) => {
// perform update
return newOrder;
},
deleteOrder: (parent, { key, keyColumn, value }, context, info) => {
// perform delete
return deletedOrders[0];
},
};
export default resolvers;
|