persist
persist
: (params
?: { collection
: CookieCollection; delete
: { parameters
: { force
?: boolean; id
?: number }; response
: (PostProperties & Data & { meta
: Meta }) | { deleted
: true; previous
: PostProperties & Data & { meta
: Meta } } }; key
: number; patch
: { parameters
: { id
?: number } }; properties
: PostProperties & Data & { meta
: Meta } }["create"]["parameters"]) => CancellablePromise<void> = flow(function* (this: ClientModel<any>,params) {if (!this.annotated.create) {throw new Error("There is no persist method allowed");}this.busy = true;try {const {create: { path, method },namespace} = this.annotated;const response: T["create"]["response"] = yield this.annotated.request<T["create"]["request"],T["create"]["parameters"],T["create"]["response"]>({location: {path,method: method || ERouteHttpVerb.POST,namespace},request: this.transformDataForPersist(),params: params || {}});this.fromResponse(response);this.collection.entries.set(this.key, this);this.afterPersist();} catch (e) {console.log(e);throw e;} finally {this.busy = false;}})
Type declaration
-
- (params?: { collection: CookieCollection; delete: { parameters: { force?: boolean; id?: number }; response: (PostProperties & Data & { meta: Meta }) | { deleted: true; previous: PostProperties & Data & { meta: Meta } } }; key: number; patch: { parameters: { id?: number } }; properties: PostProperties & Data & { meta: Meta } }["create"]["parameters"]): CancellablePromise<void>
-
Parameters
-
Optional params: { collection: CookieCollection; delete: { parameters: { force?: boolean; id?: number }; response: (PostProperties & Data & { meta: Meta }) | { deleted: true; previous: PostProperties & Data & { meta: Meta } } }; key: number; patch: { parameters: { id?: number } }; properties: PostProperties & Data & { meta: Meta } }["create"]["parameters"]
Returns CancellablePromise<void>