-import $ from 'jquery';
+import {POST} from '../../modules/fetch.js';
import {hideElem, showElem, toggleElem} from '../../utils/dom.js';
-const {csrfToken} = window.config;
-
export function initCompWebHookEditor() {
- if ($('.new.webhook').length === 0) {
+ if (!document.querySelectorAll('.new.webhook').length) {
return;
}
- $('.events.checkbox input').on('change', function () {
- if ($(this).is(':checked')) {
- showElem($('.events.fields'));
- }
- });
- $('.non-events.checkbox input').on('change', function () {
- if ($(this).is(':checked')) {
- hideElem($('.events.fields'));
- }
- });
+ for (const input of document.querySelectorAll('.events.checkbox input')) {
+ input.addEventListener('change', function () {
+ if (this.checked) {
+ showElem('.events.fields');
+ }
+ });
+ }
+
+ for (const input of document.querySelectorAll('.non-events.checkbox input')) {
+ input.addEventListener('change', function () {
+ if (this.checked) {
+ hideElem('.events.fields');
+ }
+ });
+ }
const updateContentType = function () {
- const visible = $('#http_method').val() === 'POST';
- toggleElem($('#content_type').parent().parent(), visible);
+ const visible = document.getElementById('http_method').value === 'POST';
+ toggleElem(document.getElementById('content_type').parentNode.parentNode, visible);
};
updateContentType();
- $('#http_method').on('change', () => {
- updateContentType();
- });
+
+ document.getElementById('http_method').addEventListener('change', updateContentType);
// Test delivery
- $('#test-delivery').on('click', function () {
- const $this = $(this);
- $this.addClass('loading disabled');
- $.post($this.data('link'), {
- _csrf: csrfToken
- }).done(
- setTimeout(() => {
- window.location.href = $this.data('redirect');
- }, 5000)
- );
+ document.getElementById('test-delivery')?.addEventListener('click', async function () {
+ this.classList.add('loading', 'disabled');
+ await POST(this.getAttribute('data-link'));
+ setTimeout(() => {
+ window.location.href = this.getAttribute('data-redirect');
+ }, 5000);
});
}