Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/pages/projects/merge_requests/edit/update_form.js')
-rw-r--r--app/assets/javascripts/pages/projects/merge_requests/edit/update_form.js23
1 files changed, 23 insertions, 0 deletions
diff --git a/app/assets/javascripts/pages/projects/merge_requests/edit/update_form.js b/app/assets/javascripts/pages/projects/merge_requests/edit/update_form.js
new file mode 100644
index 00000000000..3bb64f741e7
--- /dev/null
+++ b/app/assets/javascripts/pages/projects/merge_requests/edit/update_form.js
@@ -0,0 +1,23 @@
+const findForm = () => document.querySelector('.merge-request-form');
+
+const removeHiddenCheckbox = (node) => {
+ const checkboxWrapper = node.closest('.form-check');
+ const hiddenCheckbox = checkboxWrapper.querySelector('input[type="hidden"]');
+ hiddenCheckbox.remove();
+};
+
+export default () => {
+ const updateCheckboxes = () => {
+ const checkboxes = document.querySelectorAll('.js-form-update');
+
+ if (!checkboxes.length) return;
+
+ checkboxes.forEach((checkbox) => {
+ if (checkbox.checked) {
+ removeHiddenCheckbox(checkbox);
+ }
+ });
+ };
+
+ findForm().addEventListener('submit', () => updateCheckboxes());
+};