@@ -7,11 +7,12 @@ import 'package:json_api/src/client/status_code.dart';
77import 'package:json_api/src/document/collection_document.dart' ;
88import 'package:json_api/src/document/document.dart' ;
99import 'package:json_api/src/document/error_document.dart' ;
10+ import 'package:json_api/src/document/meta_document.dart' ;
1011import 'package:json_api/src/document/relationship.dart' ;
12+ import 'package:json_api/src/document/resource.dart' ;
1113import 'package:json_api/src/document/resource_document.dart' ;
1214import 'package:json_api/src/document/resource_object.dart' ;
1315import 'package:json_api/src/nullable.dart' ;
14- import 'package:json_api/src/resource.dart' ;
1516
1617typedef D ResponseParser <D extends Document >(Object j);
1718
@@ -65,6 +66,11 @@ class JsonApiClient {
6566 _post (ResourceDocument .fromJson, uri,
6667 ResourceDocument (ResourceObject .fromResource (resource)), headers);
6768
69+ /// Deletes the resource.
70+ Future <Response <MetaDocument >> deleteResource (Uri uri,
71+ {Map <String , String > headers}) =>
72+ _delete (MetaDocument .fromJson, uri, headers);
73+
6874// /// Adds the [identifiers] to a to-many relationship identified by [uri]
6975// Future<Response<ToMany>> addToMany(Uri uri, Iterable<Identifier> identifiers,
7076// {Map<String, String> headers}) =>
@@ -89,6 +95,15 @@ class JsonApiClient {
8995 ..addAll (headers ?? {})
9096 ..addAll ({'Accept' : contentType})));
9197
98+ Future <Response <D >> _delete <D extends Document >(
99+ ResponseParser <D > parse, uri, Map <String , String > headers) =>
100+ _call (
101+ parse,
102+ (_) => _.delete (uri,
103+ headers: {}
104+ ..addAll (headers ?? {})
105+ ..addAll ({'Accept' : contentType})));
106+
92107 Future <Response <D >> _post <D extends Document >(ResponseParser <D > parse, uri,
93108 Document document, Map <String , String > headers) =>
94109 _call (
0 commit comments