copy(webui): drop 24 tooltips that only restate their own label

Swept the field mappings after the Updates one. Removed where the tooltip
carried no information the label did not already give:

  PORT_1..20   "Port N for this application"          label: "Port N"
  PORTS        "Port configuration for the           label: "Port Configuration"
                application"
  CATEGORY     "The category this application         label: "Category"
                belongs to"
  THEME        "Visual theme for the application"     label: "Theme"
  ...PRIVATE_KEY "WireGuard private key"              label: "WireGuard Private Key"

Deliberately kept several the crude word-overlap check also flagged, because
they earn their place: DOMAIN says the value is a number and why, HEADSCALE and
COMPOSE_FILE carry a requirement and a warning, VPN_TYPE says it depends on the
chosen provider, and DESCRIPTION/LONG_DESCRIPTION distinguish brief from
detailed — which is the only thing separating that pair on screen.

config-form.js already guards on the field having a tooltip, so a field without
one renders no help icon rather than an empty bubble. Confirmed on Bookstack's
config page: 25 icons left, none with an empty or "undefined" title, and no
stray "undefined" in the body text. Regenerated the served JSON too — 145 fields
before and after, 135 tooltips down to 111, and no field changed in any other way.

Worth a look separately: PORT_N holds the full pipe-delimited port descriptor,
not a port number, so "Port 1 for this application" was mildly misleading as
well as redundant. A tooltip explaining that format would be an improvement
rather than a deletion.
This commit is contained in:
librelad 2026-08-20 23:33:09 +01:00
parent c6e3997382
commit 035efa948b

View File

@ -65,7 +65,6 @@ webuiCreateAppFieldMappings() {
"category": "display", "category": "display",
"label": "Category", "label": "Category",
"type": "text", "type": "text",
"tooltip": "The category this application belongs to",
"readonly": true, "readonly": true,
"nonEditable": true, "nonEditable": true,
"displayInfo": true "displayInfo": true
@ -95,8 +94,7 @@ JSONEOF
"PORT_${i}": { "PORT_${i}": {
"category": "ports", "category": "ports",
"label": "Port ${i}", "label": "Port ${i}",
"type": "text", "type": "text"
"tooltip": "Port ${i} for this application"
}, },
PORTEOF PORTEOF
done done
@ -107,7 +105,6 @@ PORTEOF
"category": "network", "category": "network",
"label": "Port Configuration", "label": "Port Configuration",
"type": "text", "type": "text",
"tooltip": "Port configuration for the application",
"placeholder": "8080:80" "placeholder": "8080:80"
}, },
"WHITELIST": { "WHITELIST": {
@ -227,7 +224,6 @@ PORTEOF
"category": "features", "category": "features",
"label": "Theme", "label": "Theme",
"type": "select", "type": "select",
"tooltip": "Visual theme for the application",
"options": [ "options": [
{"value": "light", "label": "Light"}, {"value": "light", "label": "Light"},
{"value": "dark", "label": "Dark"}, {"value": "dark", "label": "Dark"},
@ -655,7 +651,6 @@ PORTEOF
"category": "general", "category": "general",
"label": "WireGuard Private Key", "label": "WireGuard Private Key",
"type": "password", "type": "password",
"tooltip": "WireGuard private key",
"hideByDefault": true "hideByDefault": true
}, },
"GLUETUN_WIREGUARD_ADDRESSES": { "GLUETUN_WIREGUARD_ADDRESSES": {