diff --git a/src/panels/developer-tools/service/developer-tools-service.ts b/src/panels/developer-tools/service/developer-tools-service.ts index d0600df766..8ffd198e78 100644 --- a/src/panels/developer-tools/service/developer-tools-service.ts +++ b/src/panels/developer-tools/service/developer-tools-service.ts @@ -58,6 +58,9 @@ class HaPanelDevService extends LitElement { protected firstUpdated(params) { super.firstUpdated(params); + this.hass.loadBackendTranslation("services"); + this.hass.loadBackendTranslation("selector"); + const serviceParam = extractSearchParam("service"); if (serviceParam) { this._serviceData = { @@ -95,6 +98,14 @@ class HaPanelDevService extends LitElement { const isValid = this._isValid(this._serviceData, fields, target); + const domain = this._serviceData?.service + ? computeDomain(this._serviceData?.service) + : undefined; + + const serviceName = this._serviceData?.service + ? computeObjectId(this._serviceData?.service) + : undefined; + return html`

@@ -251,8 +262,16 @@ class HaPanelDevService extends LitElement { (field) => html`

${field.key}
- ${field.description} - ${field.example} + + ${this.hass.localize( + `component.${domain}.services.${serviceName}.fields.${field.key}.description` + ) || field.description} + + + ${this.hass.localize( + `component.${domain}.services.${serviceName}.fields.${field.key}.example` + ) || field.example} + ` )} @@ -430,6 +449,14 @@ class HaPanelDevService extends LitElement { this.hass.services, this._serviceData?.service ); + const domain = this._serviceData?.service + ? computeDomain(this._serviceData?.service) + : undefined; + + const serviceName = this._serviceData?.service + ? computeObjectId(this._serviceData?.service) + : undefined; + const example = {}; fields.forEach((field) => { if (field.example) { @@ -437,7 +464,10 @@ class HaPanelDevService extends LitElement { try { value = load(field.example); } catch (err: any) { - value = field.example; + value = + this.hass.localize( + `component.${domain}.services.${serviceName}.fields.${field.key}.example` + ) || field.example; } example[field.key] = value; }