From d4414f95a626e69029c65ee8b415d6d3b1eea217 Mon Sep 17 00:00:00 2001 From: Wolfgang Popp Date: Thu, 17 Jul 2025 11:40:40 +0200 Subject: [PATCH 1/2] Fix clear button not including select inputs --- src/components/api-request.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/api-request.js b/src/components/api-request.js index ea18f869..0838cca7 100644 --- a/src/components/api-request.js +++ b/src/components/api-request.js @@ -692,7 +692,7 @@ export default class ApiRequest extends LitElement { onClearRequestData(e) { const requestPanelEl = e.target.closest('.request-panel'); - const requestPanelInputEls = [...requestPanelEl.querySelectorAll('input, tag-input, textarea:not(.is-hidden)')]; + const requestPanelInputEls = [...requestPanelEl.querySelectorAll('input, select, tag-input, textarea:not(.is-hidden)')]; requestPanelInputEls.forEach((el) => { el.value = ''; }); const event = { bubbles: true, composed: true, detail: { explorerLocation: this.elementId, operation: { method: this.method, path: this.path }, type: 'RequestCleared' } }; From 737c6d2177c94f48393bbaee39e9969f026627ff Mon Sep 17 00:00:00 2001 From: Wolfgang Popp Date: Fri, 18 Jul 2025 08:30:26 +0200 Subject: [PATCH 2/2] Reset to initial values --- src/components/api-request.js | 18 +++++++++++++----- src/utils/schema-utils.js | 1 + 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/src/components/api-request.js b/src/components/api-request.js index 0838cca7..13f53e99 100644 --- a/src/components/api-request.js +++ b/src/components/api-request.js @@ -143,6 +143,12 @@ export default class ApiRequest extends LitElement { continue; } const defaultVal = Array.isArray(paramSchema.default) ? paramSchema.default : `${paramSchema.default}`; + let initialVal = ''; + if (paramSchema.required) { + initialVal = defaultVal || (paramSchema.allowedValues && paramSchema.allowedValues[0]) || ''; + } else if (this.fillRequestWithDefault === 'true') { + initialVal = defaultVal; + } // Set the default style: https://spec.openapis.org/oas/v3.1.0.html#fixed-fields-9 const paramStyle = param.style ?? { query: 'form', @@ -199,20 +205,21 @@ export default class ApiRequest extends LitElement { data-ptype = "${paramLocation}" data-pname = "${paramName}" data-default = "${defaultVal}" + data-initial = "${initialVal}" data-param-serialize-style = "${paramStyle}" data-param-serialize-explode = "${paramExplode}" spellcheck = "false" placeholder="${generatedParamSchema.example || defaultVal || ''}" style = "width:100%; margin-top: 1rem; margin-bottom: 1rem;" - .value="${this.fillRequestWithDefault === 'true' ? defaultVal : ''}">` + .value="${initialVal}">` || generatedParamSchema.allowedValues && html`