create<D extends Dto<D> , F extends DtoFilter<D> , E extends DtoExpand<D> , S extends DtoSort<D> , F2 extends DtoFieldSelect<D> > method
Future<D>
create<D extends Dto<D> , F extends DtoFilter<D> , E extends DtoExpand<D> , S extends DtoSort<D> , F2 extends DtoFieldSelect<D> >(})
Implementation
Future<D> create<
D extends Dto<D>,
F extends DtoFilter<D>,
E extends DtoExpand<D>,
S extends DtoSort<D>,
F2 extends DtoFieldSelect<D>
>(
DtoMeta<D, F, E, S, F2> meta, {
D? body,
Map<String, dynamic> query = const {},
Map<String, String> headers = const {},
void Function(E)? expand,
void Function(F2)? fields,
}) async {
var collection = meta.collectionName;
var converter = meta.fromRecord;
var created = await _pb
.collection(collection)
.create(
body: body?.toJson() ?? const {},
query: query,
files: await Future.wait(body?.toFiles() ?? const []),
headers: headers,
expand: _build(meta.expansions, expand)?.toString(),
fields: _build(meta.fields, fields)?.toString(),
);
return converter(created);
}