From 256bf552d5e30c5459dec1059560919df9cc39bc Mon Sep 17 00:00:00 2001 From: John Paul R Date: Tue, 7 Jan 2025 11:17:41 -0500 Subject: [PATCH] feat: allow ctrl+click enum array values to add/remove --- src/components/api-request.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/components/api-request.js b/src/components/api-request.js index 68522564..b4dfe072 100644 --- a/src/components/api-request.js +++ b/src/components/api-request.js @@ -527,7 +527,13 @@ export default class ApiRequest extends LitElement { const inputEl = e.target.closest('table').querySelector(`[data-pname="${param.name}"]`); if (inputEl) { if (e.target.dataset.type === 'array') { - inputEl.value = [e.target.dataset.enum]; + if (e.ctrlKey) { + inputEl.value = !Array.isArray(inputEl.value) ? [e.target.dataset.enum] + : inputEl.value.includes(e.target.dataset.enum) ? inputEl.value.filter((val) => val !== e.target.dataset.enum) + : [...inputEl.value, e.target.dataset.enum]; + } else { + inputEl.value = [e.target.dataset.enum]; + } } else { inputEl.value = e.target.dataset.enum; }