mirror of https://github.com/home-assistant/core
Adjust tts default_options type hints (#90053)
* Adjust tts default_options type hints * Improve other components * Adjust * Revert component changes * Adjust get_tts_audio in amazon_polly
This commit is contained in:
parent
8c519e1abb
commit
94a52d5cca
|
@ -2,7 +2,7 @@
|
|||
from __future__ import annotations
|
||||
|
||||
import logging
|
||||
from typing import Final
|
||||
from typing import Any, Final
|
||||
|
||||
import boto3
|
||||
import botocore
|
||||
|
@ -166,8 +166,8 @@ class AmazonPollyProvider(Provider):
|
|||
def get_tts_audio(
|
||||
self,
|
||||
message: str,
|
||||
language: str | None = None,
|
||||
options: dict[str, str] | None = None,
|
||||
language: str,
|
||||
options: dict[str, Any] | None = None,
|
||||
) -> TtsAudioType:
|
||||
"""Request TTS file from Polly."""
|
||||
if options is None or language is None:
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
from __future__ import annotations
|
||||
|
||||
import asyncio
|
||||
from collections.abc import Mapping
|
||||
import functools as ft
|
||||
import hashlib
|
||||
from http import HTTPStatus
|
||||
|
@ -380,11 +381,12 @@ class SpeechManager:
|
|||
raise HomeAssistantError(f"Not supported language {language}")
|
||||
|
||||
# Options
|
||||
if provider.default_options and options:
|
||||
merged_options = provider.default_options.copy()
|
||||
if (default_options := provider.default_options) and options:
|
||||
merged_options = dict(default_options)
|
||||
merged_options.update(options)
|
||||
options = merged_options
|
||||
options = options or provider.default_options
|
||||
if not options:
|
||||
options = None if default_options is None else dict(default_options)
|
||||
|
||||
if options is not None:
|
||||
supported_options = provider.supported_options or []
|
||||
|
@ -665,8 +667,8 @@ class Provider:
|
|||
return None
|
||||
|
||||
@property
|
||||
def default_options(self) -> dict[str, Any] | None:
|
||||
"""Return a dict include default options."""
|
||||
def default_options(self) -> Mapping[str, Any] | None:
|
||||
"""Return a mapping with the default options."""
|
||||
return None
|
||||
|
||||
def get_tts_audio(
|
||||
|
|
|
@ -2366,7 +2366,7 @@ _INHERITANCE_MATCH: dict[str, list[ClassTypeHintMatch]] = {
|
|||
),
|
||||
TypeHintMatch(
|
||||
function_name="default_options",
|
||||
return_type=["dict[str, Any]", None],
|
||||
return_type=["Mapping[str, Any]", None],
|
||||
),
|
||||
TypeHintMatch(
|
||||
function_name="get_tts_audio",
|
||||
|
|
Loading…
Reference in New Issue