From 42d8416de287e9085f661a66523083e37ae904af Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 15 May 2026 07:44:31 +0000 Subject: [PATCH 01/11] build(deps): bump golang.org/x/text from 0.36.0 to 0.37.0 Bumps [golang.org/x/text](https://github.com/golang/text) from 0.36.0 to 0.37.0. - [Release notes](https://github.com/golang/text/releases) - [Commits](https://github.com/golang/text/compare/v0.36.0...v0.37.0) --- updated-dependencies: - dependency-name: golang.org/x/text dependency-version: 0.37.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- go.mod | 2 +- go.sum | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/go.mod b/go.mod index a1a2d8cdc..869287d90 100644 --- a/go.mod +++ b/go.mod @@ -23,7 +23,7 @@ require ( github.com/stretchr/testify v1.11.1 github.com/yuin/gopher-lua v1.1.2 golang.org/x/net v0.53.0 - golang.org/x/text v0.36.0 + golang.org/x/text v0.37.0 gopkg.in/go-asn1-ber/asn1-ber.v1 v1.0.0-20181015200546-f715ec2f112d gopkg.in/yaml.v3 v3.0.1 layeh.com/gopher-luar v1.0.11 diff --git a/go.sum b/go.sum index e4960fda9..93abf1761 100644 --- a/go.sum +++ b/go.sum @@ -230,11 +230,11 @@ golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9sn golang.org/x/term v0.42.0 h1:UiKe+zDFmJobeJ5ggPwOshJIVt6/Ft0rcfrXZDLWAWY= golang.org/x/term v0.42.0/go.mod h1:Dq/D+snpsbazcBG5+F9Q1n2rXV8Ma+71xEjTRufARgY= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.36.0 h1:JfKh3XmcRPqZPKevfXVpI1wXPTqbkE5f7JA92a55Yxg= -golang.org/x/text v0.36.0/go.mod h1:NIdBknypM8iqVmPiuco0Dh6P5Jcdk8lJL0CUebqK164= +golang.org/x/text v0.37.0 h1:Cqjiwd9eSg8e0QAkyCaQTNHFIIzWtidPahFWR83rTrc= +golang.org/x/text v0.37.0/go.mod h1:a5sjxXGs9hsn/AJVwuElvCAo9v8QYLzvavO5z2PiM38= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.43.0 h1:12BdW9CeB3Z+J/I/wj34VMl8X+fEXBxVR90JeMX5E7s= -golang.org/x/tools v0.43.0/go.mod h1:uHkMso649BX2cZK6+RpuIPXS3ho2hZo4FVwfoy1vIk0= +golang.org/x/tools v0.44.0 h1:UP4ajHPIcuMjT1GqzDWRlalUEoY+uzoZKnhOjbIPD2c= +golang.org/x/tools v0.44.0/go.mod h1:KA0AfVErSdxRZIsOVipbv3rQhVXTnlU6UhKxHd1seDI= google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY= google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= From f1d994994731658077daca66c4d18b9bbcf63083 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 15 May 2026 07:45:00 +0000 Subject: [PATCH 02/11] build(deps): bump vue-router from 5.0.6 to 5.0.7 in /webui Bumps [vue-router](https://github.com/vuejs/router) from 5.0.6 to 5.0.7. - [Release notes](https://github.com/vuejs/router/releases) - [Commits](https://github.com/vuejs/router/compare/v5.0.6...v5.0.7) --- updated-dependencies: - dependency-name: vue-router dependency-version: 5.0.7 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- webui/package-lock.json | 167 +++++++++++++++++++--------------------- webui/package.json | 2 +- 2 files changed, 81 insertions(+), 88 deletions(-) diff --git a/webui/package-lock.json b/webui/package-lock.json index 7d35162a0..8486d7357 100644 --- a/webui/package-lock.json +++ b/webui/package-lock.json @@ -34,7 +34,7 @@ "ncp": "^2.0.0", "nodemailer": "^8.0.7", "vue": "^3.5.34", - "vue-router": "^5.0.6", + "vue-router": "^5.0.7", "vue3-ace-editor": "^2.2.4", "whatwg-mimetype": "^5.0.0", "xml-formatter": "^3.7.0" @@ -60,19 +60,66 @@ } }, "node_modules/@babel/generator": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.6.tgz", - "integrity": "sha512-lOoVRwADj8hjf7al89tvQ2a1lf53Z+7tiXMgpZJL3maQPDxh0DgLMN62B2MKUOFcoodBHLMbDM6WAbKgNy5Suw==", + "version": "8.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-8.0.0-rc.5.tgz", + "integrity": "sha512-nFZPWz3FHIS7y6rMIVoa/WBwjdutfIaRJIBQjzn+t3RnecZoRNlGmGcyR2wb0T/IgSd50Kz/6dG8/LvMCRunjg==", "license": "MIT", "dependencies": { - "@babel/parser": "^7.28.6", - "@babel/types": "^7.28.6", + "@babel/parser": "^8.0.0-rc.5", + "@babel/types": "^8.0.0-rc.5", "@jridgewell/gen-mapping": "^0.3.12", "@jridgewell/trace-mapping": "^0.3.28", + "@types/jsesc": "^2.5.0", "jsesc": "^3.0.2" }, "engines": { - "node": ">=6.9.0" + "node": "^22.18.0 || >=24.11.0" + } + }, + "node_modules/@babel/generator/node_modules/@babel/helper-string-parser": { + "version": "8.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-8.0.0-rc.5.tgz", + "integrity": "sha512-sN7R8rBvDurfaziNfDEIjIntlazmlkCDGO4SNl2RJ3wRCn+QxspLV7hzYAE8WWVd2joVuT8sUxeePdLp2idI1A==", + "license": "MIT", + "engines": { + "node": "^22.18.0 || >=24.11.0" + } + }, + "node_modules/@babel/generator/node_modules/@babel/helper-validator-identifier": { + "version": "8.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-8.0.0-rc.5.tgz", + "integrity": "sha512-ehJDxHvtbZ85RtX/L2fi0h9AGsBNqB5Euv1EB8RMAvGYvD+2X+QbpzzOpbklnNXO+WSZJNOaetw2BBj27xsWVg==", + "license": "MIT", + "engines": { + "node": "^22.18.0 || >=24.11.0" + } + }, + "node_modules/@babel/generator/node_modules/@babel/parser": { + "version": "8.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-8.0.0-rc.5.tgz", + "integrity": "sha512-/Mfg83rK3+jsRbl4Vbd0jqxc6M1A1/WNFtgrowRM1unEsD3XcNnrBdMM0JWakd0/RN9lseQKwPduW1TiEwKOlQ==", + "license": "MIT", + "dependencies": { + "@babel/types": "^8.0.0-rc.5" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": "^22.18.0 || >=24.11.0" + } + }, + "node_modules/@babel/generator/node_modules/@babel/types": { + "version": "8.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-8.0.0-rc.5.tgz", + "integrity": "sha512-JeSVu/m8x/zpp4CLjYHVNXuhEyOkhPXuxM8YOXjh6L4LlvQNKuUNOTo5KdBuKAcTDHw8DquToTaEkhsBqPXOaA==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^8.0.0-rc.5", + "@babel/helper-validator-identifier": "^8.0.0-rc.5" + }, + "engines": { + "node": "^22.18.0 || >=24.11.0" } }, "node_modules/@babel/helper-string-parser": { @@ -799,6 +846,12 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/jsesc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@types/jsesc/-/jsesc-2.5.1.tgz", + "integrity": "sha512-9VN+6yxLOPLOav+7PwjZbxiID2bVaeq0ED4qSQmdQTdjnXJSaCVKTR58t15oqH1H5t8Ng2ZX1SabJVoN9Q34bw==", + "license": "MIT" + }, "node_modules/@types/json-schema": { "version": "7.0.15", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", @@ -1256,37 +1309,31 @@ } }, "node_modules/@vue/devtools-api": { - "version": "8.0.6", - "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-8.0.6.tgz", - "integrity": "sha512-+lGBI+WTvJmnU2FZqHhEB8J1DXcvNlDeEalz77iYgOdY1jTj1ipSBaKj3sRhYcy+kqA8v/BSuvOz1XJucfQmUA==", + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-8.1.2.tgz", + "integrity": "sha512-vA0O112YqyDuNA1s7Yb2gCgToQ/OxOWiFDO5ThLCcDy0ldHnSd1dUTaSYhOldbqoNgumE4dxtGAoAaSUKUD1Zg==", "license": "MIT", "dependencies": { - "@vue/devtools-kit": "^8.0.6" + "@vue/devtools-kit": "^8.1.2" } }, "node_modules/@vue/devtools-kit": { - "version": "8.0.6", - "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-8.0.6.tgz", - "integrity": "sha512-9zXZPTJW72OteDXeSa5RVML3zWDCRcO5t77aJqSs228mdopYj5AiTpihozbsfFJ0IodfNs7pSgOGO3qfCuxDtw==", + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-8.1.2.tgz", + "integrity": "sha512-f75/upc+GCyjXErpgPGz4582ujS0L/adAltGy+tqXMGUJpgAcfGr6CxnnhpZY8BHuMYt6KpbF8uaFrrQG66rGQ==", "license": "MIT", "dependencies": { - "@vue/devtools-shared": "^8.0.6", + "@vue/devtools-shared": "^8.1.2", "birpc": "^2.6.1", "hookable": "^5.5.3", - "mitt": "^3.0.1", - "perfect-debounce": "^2.0.0", - "speakingurl": "^14.0.1", - "superjson": "^2.2.2" + "perfect-debounce": "^2.0.0" } }, "node_modules/@vue/devtools-shared": { - "version": "8.0.6", - "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-8.0.6.tgz", - "integrity": "sha512-Pp1JylTqlgMJvxW6MGyfTF8vGvlBSCAvMFaDCYa82Mgw7TT5eE5kkHgDvmOGHWeJE4zIDfCpCxHapsK2LtIAJg==", - "license": "MIT", - "dependencies": { - "rfdc": "^1.4.1" - } + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-8.1.2.tgz", + "integrity": "sha512-X9RyVFYAdkBe4IUf5v48TxBF/6QPmF8CmWrDAjXzfUHrgQ/HGfTC1A6TqgXqZ03ye66l3AD51BAGD69IvKM9sw==", + "license": "MIT" }, "node_modules/@vue/eslint-config-prettier": { "version": "10.2.0", @@ -1983,21 +2030,6 @@ "node": ">=6.6.0" } }, - "node_modules/copy-anything": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-4.0.5.tgz", - "integrity": "sha512-7Vv6asjS4gMOuILabD3l739tsaxFQmC+a7pLZm02zyvs8p977bL3zEgq3yDk5rn9B0PbYgIv++jmHcuUab4RhA==", - "license": "MIT", - "dependencies": { - "is-what": "^5.2.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/mesqueeb" - } - }, "node_modules/cors": { "version": "2.8.6", "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.6.tgz", @@ -4251,18 +4283,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-what": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/is-what/-/is-what-5.5.0.tgz", - "integrity": "sha512-oG7cgbmg5kLYae2N5IVd3jm2s+vldjxJzK1pcu9LfpGuQ93MQSzo0okvRna+7y5ifrD+20FE8FvjusyGaz14fw==", - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/mesqueeb" - } - }, "node_modules/isarray": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", @@ -4909,12 +4929,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/mitt": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", - "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", - "license": "MIT" - }, "node_modules/mlly": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.8.0.tgz", @@ -6509,15 +6523,6 @@ "dev": true, "license": "CC0-1.0" }, - "node_modules/speakingurl": { - "version": "14.0.1", - "resolved": "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz", - "integrity": "sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/split2": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", @@ -6653,18 +6658,6 @@ "node": ">=4" } }, - "node_modules/superjson": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/superjson/-/superjson-2.2.6.tgz", - "integrity": "sha512-H+ue8Zo4vJmV2nRjpx86P35lzwDT3nItnIsocgumgr0hHMQ+ZGq5vrERg9kJBo5AWGmxZDhzDo+WVIJqkB0cGA==", - "license": "MIT", - "dependencies": { - "copy-anything": "^4" - }, - "engines": { - "node": ">=16" - } - }, "node_modules/supports-preserve-symlinks-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", @@ -7248,14 +7241,14 @@ } }, "node_modules/vue-router": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-5.0.6.tgz", - "integrity": "sha512-9+kmUTGbKMyW9Asoy98IXXYIzrTMT7JDAdpDDeEkorHvybpUvBI2wsrSM5jFOXrFydpzRFJ9vAh+80DN2PGu9w==", + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-5.0.7.tgz", + "integrity": "sha512-dqfk8kvRbCutmCOCj/XLDqDEYxc1wBdAOGLuVy5M93ifYMsBd5fIjfaPN4tQAbxr5IprdBDIox1gr4wYyOx/SA==", "license": "MIT", "dependencies": { - "@babel/generator": "^7.28.6", + "@babel/generator": "^8.0.0-rc.4", "@vue-macros/common": "^3.1.1", - "@vue/devtools-api": "^8.0.6", + "@vue/devtools-api": "^8.1.1", "ast-walker-scope": "^0.8.3", "chokidar": "^5.0.0", "json5": "^2.2.3", @@ -7276,9 +7269,9 @@ }, "peerDependencies": { "@pinia/colada": ">=0.21.2", - "@vue/compiler-sfc": "^3.5.17", + "@vue/compiler-sfc": "^3.5.34", "pinia": "^3.0.4", - "vue": "^3.5.0" + "vue": "^3.5.34" }, "peerDependenciesMeta": { "@pinia/colada": { diff --git a/webui/package.json b/webui/package.json index e74ffd2dd..fd0727c90 100644 --- a/webui/package.json +++ b/webui/package.json @@ -43,7 +43,7 @@ "ncp": "^2.0.0", "nodemailer": "^8.0.7", "vue": "^3.5.34", - "vue-router": "^5.0.6", + "vue-router": "^5.0.7", "vue3-ace-editor": "^2.2.4", "whatwg-mimetype": "^5.0.0", "xml-formatter": "^3.7.0" From c64775a90556d7e54bd9e0fe3a2c90bdc46c0fd5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 15 May 2026 08:13:51 +0000 Subject: [PATCH 03/11] build(deps-dev): bump @playwright/test from 1.59.1 to 1.60.0 in /webui Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.59.1 to 1.60.0. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.59.1...v1.60.0) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-version: 1.60.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- webui/package-lock.json | 24 ++++++++++++------------ webui/package.json | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/webui/package-lock.json b/webui/package-lock.json index 8486d7357..cb348ca62 100644 --- a/webui/package-lock.json +++ b/webui/package-lock.json @@ -40,7 +40,7 @@ "xml-formatter": "^3.7.0" }, "devDependencies": { - "@playwright/test": "^1.59.1", + "@playwright/test": "^1.60.0", "@rushstack/eslint-patch": "^1.16.1", "@types/js-yaml": "^4.0.9", "@types/markdown-it-container": "^4.0.0", @@ -480,13 +480,13 @@ } }, "node_modules/@playwright/test": { - "version": "1.59.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.59.1.tgz", - "integrity": "sha512-PG6q63nQg5c9rIi4/Z5lR5IVF7yU5MqmKaPOe0HSc0O2cX1fPi96sUQu5j7eo4gKCkB2AnNGoWt7y4/Xx3Kcqg==", + "version": "1.60.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.60.0.tgz", + "integrity": "sha512-O71yZIbAh/PxDMNGns37GHBIfrVkEVyn+AXyIa5dOTfb4/xNvRWV+Vv/NMbNCtODB/pO7vLlF2OTmMVLhmr7Ag==", "dev": true, "license": "Apache-2.0", "dependencies": { - "playwright": "1.59.1" + "playwright": "1.60.0" }, "bin": { "playwright": "cli.js" @@ -5616,13 +5616,13 @@ } }, "node_modules/playwright": { - "version": "1.59.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.59.1.tgz", - "integrity": "sha512-C8oWjPR3F81yljW9o5OxcWzfh6avkVwDD2VYdwIGqTkl+OGFISgypqzfu7dOe4QNLL2aqcWBmI3PMtLIK233lw==", + "version": "1.60.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.60.0.tgz", + "integrity": "sha512-hheHdokM8cdqCb0lcE3s+zT4t4W+vvjpGxsZlDnikarzx8tSzMebh3UiFtgqwFwnTnjYQcsyMF8ei2mCO/tpeA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "playwright-core": "1.59.1" + "playwright-core": "1.60.0" }, "bin": { "playwright": "cli.js" @@ -5635,9 +5635,9 @@ } }, "node_modules/playwright-core": { - "version": "1.59.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.59.1.tgz", - "integrity": "sha512-HBV/RJg81z5BiiZ9yPzIiClYV/QMsDCKUyogwH9p3MCP6IYjUFu/MActgYAvK0oWyV9NlwM3GLBjADyWgydVyg==", + "version": "1.60.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.60.0.tgz", + "integrity": "sha512-9bW6zvX/m0lEbgTKJ6YppOKx8H3VOPBMOCFh2irXFOT4BbHgrx5hPjwJYLT40Lu+4qtD36qKc/Hn56StUW57IA==", "dev": true, "license": "Apache-2.0", "bin": { diff --git a/webui/package.json b/webui/package.json index fd0727c90..725a008e0 100644 --- a/webui/package.json +++ b/webui/package.json @@ -49,7 +49,7 @@ "xml-formatter": "^3.7.0" }, "devDependencies": { - "@playwright/test": "^1.59.1", + "@playwright/test": "^1.60.0", "@rushstack/eslint-patch": "^1.16.1", "@types/js-yaml": "^4.0.9", "@types/markdown-it-container": "^4.0.0", From a0eacc3cedd932f47e3dd41657e78117ba5a6c1b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 15 May 2026 08:23:30 +0000 Subject: [PATCH 04/11] build(deps-dev): bump eslint from 10.2.1 to 10.3.0 in /webui Bumps [eslint](https://github.com/eslint/eslint) from 10.2.1 to 10.3.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Commits](https://github.com/eslint/eslint/compare/v10.2.1...v10.3.0) --- updated-dependencies: - dependency-name: eslint dependency-version: 10.3.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- webui/package-lock.json | 8 ++++---- webui/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/webui/package-lock.json b/webui/package-lock.json index cb348ca62..0d5c9d716 100644 --- a/webui/package-lock.json +++ b/webui/package-lock.json @@ -49,7 +49,7 @@ "@vue/eslint-config-prettier": "^10.2.0", "@vue/eslint-config-typescript": "^14.7.0", "@vue/tsconfig": "^0.9.1", - "eslint": "^10.2.1", + "eslint": "^10.3.0", "eslint-plugin-vue": "^10.9.1", "npm-run-all": "^4.1.5", "prettier": "^3.8.3", @@ -2876,9 +2876,9 @@ } }, "node_modules/eslint": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-10.2.1.tgz", - "integrity": "sha512-wiyGaKsDgqXvF40P8mDwiUp/KQjE1FdrIEJsM8PZ3XCiniTMXS3OHWWUe5FI5agoCnr8x4xPrTDZuxsBlNHl+Q==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-10.3.0.tgz", + "integrity": "sha512-XbEXaRva5cF0ZQB8w6MluHA0kZZfV2DuCMJ3ozyEOHLwDpZX2Lmm/7Pp0xdJmI0GL1W05VH5VwIFHEm1Vcw2gw==", "dev": true, "license": "MIT", "dependencies": { diff --git a/webui/package.json b/webui/package.json index 725a008e0..343e18812 100644 --- a/webui/package.json +++ b/webui/package.json @@ -58,7 +58,7 @@ "@vue/eslint-config-prettier": "^10.2.0", "@vue/eslint-config-typescript": "^14.7.0", "@vue/tsconfig": "^0.9.1", - "eslint": "^10.2.1", + "eslint": "^10.3.0", "eslint-plugin-vue": "^10.9.1", "npm-run-all": "^4.1.5", "prettier": "^3.8.3", From 9b210b2af057036c8d10b0a34f2430fbb774fee4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 15 May 2026 08:38:27 +0000 Subject: [PATCH 05/11] build(deps-dev): bump @vitejs/plugin-vue from 6.0.6 to 6.0.7 in /webui Bumps [@vitejs/plugin-vue](https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue) from 6.0.6 to 6.0.7. - [Release notes](https://github.com/vitejs/vite-plugin-vue/releases) - [Changelog](https://github.com/vitejs/vite-plugin-vue/blob/main/packages/plugin-vue/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite-plugin-vue/commits/plugin-vue@6.0.7/packages/plugin-vue) --- updated-dependencies: - dependency-name: "@vitejs/plugin-vue" dependency-version: 6.0.7 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- webui/package-lock.json | 16 ++++++++-------- webui/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/webui/package-lock.json b/webui/package-lock.json index 0d5c9d716..49626da52 100644 --- a/webui/package-lock.json +++ b/webui/package-lock.json @@ -45,7 +45,7 @@ "@types/js-yaml": "^4.0.9", "@types/markdown-it-container": "^4.0.0", "@types/node": "^25.6.2", - "@vitejs/plugin-vue": "^6.0.6", + "@vitejs/plugin-vue": "^6.0.7", "@vue/eslint-config-prettier": "^10.2.0", "@vue/eslint-config-typescript": "^14.7.0", "@vue/tsconfig": "^0.9.1", @@ -763,9 +763,9 @@ } }, "node_modules/@rolldown/pluginutils": { - "version": "1.0.0-rc.13", - "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.13.tgz", - "integrity": "sha512-3ngTAv6F/Py35BsYbeeLeecvhMKdsKm4AoOETVhAA+Qc8nrA2I0kF7oa93mE9qnIurngOSpMnQ0x2nQY2FPviA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.1.tgz", + "integrity": "sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw==", "dev": true, "license": "MIT" }, @@ -1186,13 +1186,13 @@ } }, "node_modules/@vitejs/plugin-vue": { - "version": "6.0.6", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-6.0.6.tgz", - "integrity": "sha512-u9HHgfrq3AjXlysn0eINFnWQOJQLO9WN6VprZ8FXl7A2bYisv3Hui9Ij+7QZ41F/WYWarHjwBbXtD7dKg3uxbg==", + "version": "6.0.7", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-6.0.7.tgz", + "integrity": "sha512-km+p+XdSz9Sxm5rqUbqcSfZYaAniKxWBj1KURl+Jr7UaPvvX7BmaWMdP69I5rrFDeQGyxAG7NXdc57vz+snhWg==", "dev": true, "license": "MIT", "dependencies": { - "@rolldown/pluginutils": "1.0.0-rc.13" + "@rolldown/pluginutils": "^1.0.1" }, "engines": { "node": "^20.19.0 || >=22.12.0" diff --git a/webui/package.json b/webui/package.json index 343e18812..f2a9fb69e 100644 --- a/webui/package.json +++ b/webui/package.json @@ -54,7 +54,7 @@ "@types/js-yaml": "^4.0.9", "@types/markdown-it-container": "^4.0.0", "@types/node": "^25.6.2", - "@vitejs/plugin-vue": "^6.0.6", + "@vitejs/plugin-vue": "^6.0.7", "@vue/eslint-config-prettier": "^10.2.0", "@vue/eslint-config-typescript": "^14.7.0", "@vue/tsconfig": "^0.9.1", From 6b5f9b09c59d2f87f9cac10e4c7a8ed0708aa17c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 15 May 2026 08:56:57 +0000 Subject: [PATCH 06/11] build(deps-dev): bump @types/node from 25.6.2 to 25.8.0 in /webui Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 25.6.2 to 25.8.0. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-version: 25.8.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- webui/package-lock.json | 16 ++++++++-------- webui/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/webui/package-lock.json b/webui/package-lock.json index 49626da52..0e05bbd7a 100644 --- a/webui/package-lock.json +++ b/webui/package-lock.json @@ -44,7 +44,7 @@ "@rushstack/eslint-patch": "^1.16.1", "@types/js-yaml": "^4.0.9", "@types/markdown-it-container": "^4.0.0", - "@types/node": "^25.6.2", + "@types/node": "^25.8.0", "@vitejs/plugin-vue": "^6.0.7", "@vue/eslint-config-prettier": "^10.2.0", "@vue/eslint-config-typescript": "^14.7.0", @@ -901,12 +901,12 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "25.6.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-25.6.2.tgz", - "integrity": "sha512-sokuT28dxf9JT5Kady1fsXOvI4HVpjZa95NKT5y9PNTIrs2AsobR4GFAA90ZG8M+nxVRLysCXsVj6eGC7Vbrlw==", + "version": "25.8.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.8.0.tgz", + "integrity": "sha512-TCFSk8IZh+iLX1xtksoBVtdmgL+1IX0fC9BeU4QqFSuNdN/K+HUlhqOzEmSYYpZUVsLYcPqc9KX+60iDuninSQ==", "license": "MIT", "dependencies": { - "undici-types": "~7.19.0" + "undici-types": ">=7.24.0 <7.24.7" } }, "node_modules/@types/nodemailer": { @@ -6953,9 +6953,9 @@ } }, "node_modules/undici-types": { - "version": "7.19.2", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.19.2.tgz", - "integrity": "sha512-qYVnV5OEm2AW8cJMCpdV20CDyaN3g0AjDlOGf1OW4iaDEx8MwdtChUp4zu4H0VP3nDRF/8RKWH+IPp9uW0YGZg==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.24.6.tgz", + "integrity": "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg==", "license": "MIT" }, "node_modules/unicorn-magic": { diff --git a/webui/package.json b/webui/package.json index f2a9fb69e..607589575 100644 --- a/webui/package.json +++ b/webui/package.json @@ -53,7 +53,7 @@ "@rushstack/eslint-patch": "^1.16.1", "@types/js-yaml": "^4.0.9", "@types/markdown-it-container": "^4.0.0", - "@types/node": "^25.6.2", + "@types/node": "^25.8.0", "@vitejs/plugin-vue": "^6.0.7", "@vue/eslint-config-prettier": "^10.2.0", "@vue/eslint-config-typescript": "^14.7.0", From 0acddc1583b691da550ead972ae704b96382a58f Mon Sep 17 00:00:00 2001 From: maesi Date: Mon, 18 May 2026 07:44:28 +0200 Subject: [PATCH 07/11] feat(search): add description to HTTP search results --- runtime/runtime_http_search.go | 5 ++ runtime/runtime_http_search_test.go | 97 ++++++++++++++++++++++++----- runtime/runtime_search.go | 58 +++++++++++++++++ runtime/search/index.go | 13 ++-- 4 files changed, 152 insertions(+), 21 deletions(-) diff --git a/runtime/runtime_http_search.go b/runtime/runtime_http_search.go index eecd0effc..4ab156ed0 100644 --- a/runtime/runtime_http_search.go +++ b/runtime/runtime_http_search.go @@ -21,6 +21,7 @@ type httpSearchIndexData struct { Api string `json:"api"` Name string `json:"name"` Version string `json:"version"` + Summary string `json:"summary"` Description string `json:"description"` Contact *openapi.Contact `json:"contact"` Servers []*openapi.Server `json:"servers"` @@ -84,6 +85,7 @@ func (s *HttpStore) addToIndex(cfg *openapi.Config) { Api: cfg.Info.Name, Name: cfg.Info.Name, Version: cfg.Info.Version, + Summary: cfg.Info.Summary, Description: cfg.Info.Description, Contact: cfg.Info.Contact, Servers: cfg.Servers, @@ -220,6 +222,7 @@ func getHttpSearchResult(fields map[string]string, discriminator []string) (sear if len(discriminator) == 1 { result.Title = fields["name"] + result.Description = BuildDescription(150, fields["summary"], fields["description"]) result.Params = map[string]string{ "type": strings.ToLower(result.Type), "service": result.Title, @@ -231,6 +234,7 @@ func getHttpSearchResult(fields map[string]string, discriminator []string) (sear case "path": result.Domain = fields["api"] result.Title = fields["path"] + result.Description = BuildDescription(150, fields["summary"], fields["description"]) result.Params = map[string]string{ "type": strings.ToLower(result.Type), "service": result.Domain, @@ -240,6 +244,7 @@ func getHttpSearchResult(fields map[string]string, discriminator []string) (sear case "operation": result.Domain = fields["api"] result.Title = fields["path"] + result.Description = BuildDescription(150, fields["summary"], fields["description"]) result.Params = map[string]string{ "type": strings.ToLower(result.Type), "service": result.Domain, diff --git a/runtime/runtime_http_search_test.go b/runtime/runtime_http_search_test.go index 2675548da..bcab2cfd4 100644 --- a/runtime/runtime_http_search_test.go +++ b/runtime/runtime_http_search_test.go @@ -35,7 +35,7 @@ func TestIndex_Http(t *testing.T) { { name: "Search by name", test: func(t *testing.T, app *runtime.App) { - cfg := openapitest.NewConfig("3.0", openapitest.WithInfo("foo", "", "")) + cfg := openapitest.NewConfig("3.0", openapitest.WithInfo("foo", "", "An API description")) app.Http.Add(toConfig(cfg)) var r search.Result @@ -48,9 +48,72 @@ func TestIndex_Http(t *testing.T) { require.Len(t, r.Results, 1) require.Equal(t, search.ResultItem{ - Type: "HTTP", - Title: "foo", - Fragments: []string{"foo"}, + Type: "HTTP", + Title: "foo", + Description: "An API description", + Fragments: []string{"foo"}, + Params: map[string]string{ + "type": "http", + "service": "foo", + }, + }, + r.Results[0]) + }, + }, + { + name: "summary takes precedence over description.", + test: func(t *testing.T, app *runtime.App) { + cfg := openapitest.NewConfig("3.0", + openapitest.WithInfo("foo", "", "An API description"), + openapitest.WithSummary("A short summary"), + ) + app.Http.Add(toConfig(cfg)) + + var r search.Result + var err error + waitSearchIndex(t, func() bool { + r, err = app.Search(search.Request{QueryText: "foo", Limit: 10}) + require.NoError(t, err) + return len(r.Results) == 1 + }) + require.Len(t, r.Results, 1) + require.Equal(t, + search.ResultItem{ + Type: "HTTP", + Title: "foo", + Description: "A short summary An API description", + Fragments: []string{"foo"}, + Params: map[string]string{ + "type": "http", + "service": "foo", + }, + }, + r.Results[0]) + }, + }, + { + name: "truncate summary", + test: func(t *testing.T, app *runtime.App) { + cfg := openapitest.NewConfig("3.0", + openapitest.WithInfo("foo", "", "An API description"), + openapitest.WithSummary("Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum."), + ) + app.Http.Add(toConfig(cfg)) + + var r search.Result + var err error + waitSearchIndex(t, func() bool { + r, err = app.Search(search.Request{QueryText: "foo", Limit: 10}) + require.NoError(t, err) + return len(r.Results) == 1 + }) + require.Len(t, r.Results, 1) + require.Equal(t, + search.ResultItem{ + Type: "HTTP", + Title: "foo", + Description: "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam...", + Fragments: []string{"foo"}, Params: map[string]string{ "type": "http", "service": "foo", @@ -218,9 +281,10 @@ func TestIndex_Http(t *testing.T) { require.Len(t, r.Results, 2) require.Equal(t, search.ResultItem{ - Type: "HTTP", - Title: "foo", - Fragments: []string{"a description"}, + Type: "HTTP", + Title: "foo", + Description: "a description", + Fragments: []string{"a description"}, Params: map[string]string{ "type": "http", "service": "foo", @@ -229,10 +293,11 @@ func TestIndex_Http(t *testing.T) { r.Results[1]) require.Equal(t, search.ResultItem{ - Type: "HTTP", - Domain: "foo", - Title: "/pets", - Fragments: []string{"a description"}, + Type: "HTTP", + Domain: "foo", + Title: "/pets", + Description: `a description`, + Fragments: []string{"a description"}, Params: map[string]string{ "type": "http", "service": "foo", @@ -251,6 +316,7 @@ func TestIndex_Http(t *testing.T) { openapitest.WithPath("/pets", openapitest.WithPathInfo("", "a description"), openapitest.WithOperation(http.MethodGet, + openapitest.WithOperationInfo("Summary value", "Description value", "", false), openapitest.WithHeaderParam("foo", true, openapitest.WithParamInfo("parameter description")), ), ), @@ -267,10 +333,11 @@ func TestIndex_Http(t *testing.T) { require.Len(t, r.Results, 1) require.Equal(t, search.ResultItem{ - Type: "HTTP", - Domain: "foo", - Title: "/pets", - Fragments: []string{"parameter description"}, + Type: "HTTP", + Domain: "foo", + Title: "/pets", + Description: `Summary value Description value`, + Fragments: []string{"parameter description"}, Params: map[string]string{ "type": "http", "service": "foo", diff --git a/runtime/runtime_search.go b/runtime/runtime_search.go index 300b26a41..e33a45963 100644 --- a/runtime/runtime_search.go +++ b/runtime/runtime_search.go @@ -67,3 +67,61 @@ func getConfigSearchResult(fields map[string]string, _ []string) (search.ResultI }, }, nil } + +func BuildDescription(max int, values ...string) string { + seen := map[string]bool{} + var parts []string + + for _, v := range values { + v = normalize(v) + + if v == "" || seen[v] { + continue + } + + seen[v] = true + parts = append(parts, v) + } + + return truncateWords(strings.Join(parts, " "), max) +} + +func truncateWords(s string, max int) string { + if len(s) <= max { + return s + } + + words := strings.Fields(s) + var result strings.Builder + for _, w := range words { + next := w + if result.Len() > 0 { + next = " " + w + } + + if result.Len()+len(next) > max { + break + } + result.WriteString(next) + } + + r := result.String() + if r != s { + r += "..." + } + return r +} + +func normalize(s string) string { + s = strings.TrimSpace(s) + + // Replace line breaks/tabs with spaces + s = strings.ReplaceAll(s, "\n", " ") + s = strings.ReplaceAll(s, "\r", " ") + s = strings.ReplaceAll(s, "\t", " ") + + // Collapse multiple spaces + s = strings.Join(strings.Fields(s), " ") + + return s +} diff --git a/runtime/search/index.go b/runtime/search/index.go index 38ac1ce2d..1f09956bb 100644 --- a/runtime/search/index.go +++ b/runtime/search/index.go @@ -12,12 +12,13 @@ type Result struct { } type ResultItem struct { - Type string `json:"type"` - Domain string `json:"domain,omitempty"` - Title string `json:"title"` - Fragments []string `json:"fragments,omitempty"` - Params map[string]string `json:"params"` - Time string `json:"time,omitempty"` + Type string `json:"type"` + Domain string `json:"domain,omitempty"` + Title string `json:"title"` + Description string `json:"description,omitempty"` + Fragments []string `json:"fragments,omitempty"` + Params map[string]string `json:"params"` + Time string `json:"time,omitempty"` } type ErrNotEnabled struct{} From fb763260bc59abe461e92f0f5261e59f3bcea844 Mon Sep 17 00:00:00 2001 From: maesi Date: Mon, 18 May 2026 07:46:38 +0200 Subject: [PATCH 08/11] wip(webui): improve display search results --- webui/e2e/mocks/http_handler.js | 1 + webui/src/components/dashboard/Search.vue | 282 +++++++++++------- .../src/components/dashboard/search/Http.vue | 2 + webui/src/types/search.d.ts | 1 + 4 files changed, 177 insertions(+), 109 deletions(-) diff --git a/webui/e2e/mocks/http_handler.js b/webui/e2e/mocks/http_handler.js index 2ae20cddc..d6a73af2e 100644 --- a/webui/e2e/mocks/http_handler.js +++ b/webui/e2e/mocks/http_handler.js @@ -746,6 +746,7 @@ function getSearchResults() { type: 'HTTP', domain: 'Swagger Petstore', title: "/pet", + description: 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam...', fragments: ['Everything', 'store'], params: { type: 'http', diff --git a/webui/src/components/dashboard/Search.vue b/webui/src/components/dashboard/Search.vue index 586aa88a5..5e916728c 100644 --- a/webui/src/components/dashboard/Search.vue +++ b/webui/src/components/dashboard/Search.vue @@ -18,7 +18,7 @@ const errorMessage = ref() const searchResult = ref(); const maxVisiblePages = 10 // max pages in pagination const showTips = ref(false) -const facets = ref<{ [name: string]: string | undefined}>({}) +const facets = ref<{ [name: string]: string | undefined }>({}) const loading = useProgressiveLoading() const pageNumber = computed(() => { @@ -77,8 +77,8 @@ async function navigateToSearchResult(result: any) { } return router.push({ name: 'kafkaService', params: result.params }) case 'mail': - if (result.params.mailbox) { - return router.push({ name: 'smtpMailbox', params: { ...{ name: result.params.mailbox }, ...result.params } }) + if (result.params.mailbox) { + return router.push({ name: 'smtpMailbox', params: { ...{ name: result.params.mailbox }, ...result.params } }) } return router.push({ name: 'mailService', params: result.params }) case 'ldap': @@ -105,7 +105,7 @@ function title(result: SearchItem) { case "Config": const n = result.title.length if (n > 55) { - return '...' + result.title.slice(n-55) + return '...' + result.title.slice(n - 55) } break case "Event": @@ -159,7 +159,7 @@ async function search_clicked() { } else { delete newQuery.q } - + if (pageIndex.value) { newQuery.index = pageIndex.value.toString() } else { @@ -210,11 +210,11 @@ async function search() { errorMessage.value = undefined const res = await fetch(transformPath(path)) .then(async (res) => { - if (!res.ok) { - const data = await res.json() - throw new Error(data.message) - } - return res.json() + if (!res.ok) { + const data = await res.json() + throw new Error(data.message) + } + return res.json() }) .then(res => { loading.stop() @@ -243,146 +243,207 @@ function facetTitle(s: string) {
-