From 094779a4fd502f087b7b68ad857243b7dc08f558 Mon Sep 17 00:00:00 2001 From: James Collins Date: Fri, 17 Feb 2023 15:31:09 +1000 Subject: [PATCH] shortcuts support ApiOptions or string --- resources/js/helpers/api.ts | 38 +++++++++++++++++++++++++++++++------ 1 file changed, 32 insertions(+), 6 deletions(-) diff --git a/resources/js/helpers/api.ts b/resources/js/helpers/api.ts index e1b7bf0..77dcb02 100644 --- a/resources/js/helpers/api.ts +++ b/resources/js/helpers/api.ts @@ -178,18 +178,44 @@ export const api = { return await this.send(apiOptions); }, - post: async function (options: ApiOptions): Promise { - options.method = "POST"; + post: async function (options: ApiOptions | string): Promise { + let apiOptions = {} as ApiOptions; + + if (typeof options == "string") { + apiOptions.url = options; + } else { + apiOptions = options; + } + + apiOptions.method = "POST"; return await this.send(options); }, - put: async function (options: ApiOptions): Promise { - options.method = "PUT"; + put: async function (options: ApiOptions | string): Promise { + let apiOptions = {} as ApiOptions; + + if (typeof options == "string") { + apiOptions.url = options; + } else { + apiOptions = options; + } + + apiOptions.method = "PUT"; return await this.send(options); }, - delete: async function (options: ApiOptions): Promise { - options.method = "DELETE"; + delete: async function ( + options: ApiOptions | string + ): Promise { + let apiOptions = {} as ApiOptions; + + if (typeof options == "string") { + apiOptions.url = options; + } else { + apiOptions = options; + } + + apiOptions.method = "DELETE"; return await this.send(options); }, };