From 3938aeadd55f009c5b04cf7c4c32903751ee7bd1 Mon Sep 17 00:00:00 2001 From: zsbahtiar Date: Wed, 8 Jan 2025 01:16:45 +0700 Subject: [PATCH] feat(initGlobalDeleteButton): add option http method delete when data-method is delete --- web_src/js/features/common-button.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/web_src/js/features/common-button.ts b/web_src/js/features/common-button.ts index acce992b902..2de2eb86163 100644 --- a/web_src/js/features/common-button.ts +++ b/web_src/js/features/common-button.ts @@ -1,4 +1,4 @@ -import {POST} from '../modules/fetch.ts'; +import {DELETE, POST} from '../modules/fetch.ts'; import {addDelegatedEventListener, hideElem, queryElems, showElem, toggleElem} from '../utils/dom.ts'; import {fomanticQuery} from '../modules/fomantic/base.ts'; import {camelize} from 'vue'; @@ -62,7 +62,10 @@ export function initGlobalDeleteButton(): void { } } - const response = await POST(btn.getAttribute('data-url'), {data: postData}); + const method = btn.getAttribute('data-method')?.toUpperCase() || 'POST'; + const response = method === 'DELETE' + ? await DELETE(btn.getAttribute('data-url')) + : await POST(btn.getAttribute('data-url'), {data: postData}); if (response.ok) { const data = await response.json(); window.location.href = data.redirect;