Update HACS
This commit is contained in:
BIN
custom_components/hacs/utils/__pycache__/__init__.cpython-39.pyc
Normal file
BIN
custom_components/hacs/utils/__pycache__/__init__.cpython-39.pyc
Normal file
Binary file not shown.
BIN
custom_components/hacs/utils/__pycache__/backup.cpython-39.pyc
Normal file
BIN
custom_components/hacs/utils/__pycache__/backup.cpython-39.pyc
Normal file
Binary file not shown.
Binary file not shown.
BIN
custom_components/hacs/utils/__pycache__/data.cpython-39.pyc
Normal file
BIN
custom_components/hacs/utils/__pycache__/data.cpython-39.pyc
Normal file
Binary file not shown.
BIN
custom_components/hacs/utils/__pycache__/decode.cpython-39.pyc
Normal file
BIN
custom_components/hacs/utils/__pycache__/decode.cpython-39.pyc
Normal file
Binary file not shown.
Binary file not shown.
BIN
custom_components/hacs/utils/__pycache__/filters.cpython-39.pyc
Normal file
BIN
custom_components/hacs/utils/__pycache__/filters.cpython-39.pyc
Normal file
Binary file not shown.
BIN
custom_components/hacs/utils/__pycache__/logger.cpython-39.pyc
Normal file
BIN
custom_components/hacs/utils/__pycache__/logger.cpython-39.pyc
Normal file
Binary file not shown.
BIN
custom_components/hacs/utils/__pycache__/path.cpython-39.pyc
Normal file
BIN
custom_components/hacs/utils/__pycache__/path.cpython-39.pyc
Normal file
Binary file not shown.
Binary file not shown.
BIN
custom_components/hacs/utils/__pycache__/regex.cpython-39.pyc
Normal file
BIN
custom_components/hacs/utils/__pycache__/regex.cpython-39.pyc
Normal file
Binary file not shown.
BIN
custom_components/hacs/utils/__pycache__/store.cpython-39.pyc
Normal file
BIN
custom_components/hacs/utils/__pycache__/store.cpython-39.pyc
Normal file
Binary file not shown.
BIN
custom_components/hacs/utils/__pycache__/template.cpython-39.pyc
Normal file
BIN
custom_components/hacs/utils/__pycache__/template.cpython-39.pyc
Normal file
Binary file not shown.
BIN
custom_components/hacs/utils/__pycache__/validate.cpython-39.pyc
Normal file
BIN
custom_components/hacs/utils/__pycache__/validate.cpython-39.pyc
Normal file
Binary file not shown.
BIN
custom_components/hacs/utils/__pycache__/version.cpython-39.pyc
Normal file
BIN
custom_components/hacs/utils/__pycache__/version.cpython-39.pyc
Normal file
Binary file not shown.
Binary file not shown.
@@ -215,7 +215,7 @@ class HacsData:
|
||||
repository.data.new = repository_data.get("new", False)
|
||||
repository.data.selected_tag = repository_data.get("selected_tag")
|
||||
repository.data.show_beta = repository_data.get("show_beta", False)
|
||||
repository.data.last_version = repository_data.get("last_release_tag")
|
||||
repository.data.last_version = repository_data.get("last_version")
|
||||
repository.data.last_commit = repository_data.get("last_commit")
|
||||
repository.data.installed_version = repository_data.get("version_installed")
|
||||
repository.data.installed_commit = repository_data.get("installed_commit")
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -1,7 +1,14 @@
|
||||
"""Validation utilities."""
|
||||
from __future__ import annotations
|
||||
|
||||
from dataclasses import dataclass, field
|
||||
|
||||
from awesomeversion import AwesomeVersion
|
||||
from homeassistant.helpers.config_validation import url as url_validator
|
||||
import voluptuous as vol
|
||||
|
||||
from ..const import LOCALE
|
||||
|
||||
|
||||
@dataclass
|
||||
class Validate:
|
||||
@@ -13,3 +20,50 @@ class Validate:
|
||||
def success(self) -> bool:
|
||||
"""Return bool if the validation was a success."""
|
||||
return len(self.errors) == 0
|
||||
|
||||
|
||||
def _country_validator(values) -> list[str]:
|
||||
"""Custom country validator."""
|
||||
countries = []
|
||||
if isinstance(values, str):
|
||||
countries.append(values.upper())
|
||||
elif isinstance(values, list):
|
||||
for value in values:
|
||||
countries.append(value.upper())
|
||||
else:
|
||||
raise vol.Invalid(f"Value '{values}' is not a string or list.", path=["country"])
|
||||
|
||||
for country in countries:
|
||||
if country not in LOCALE:
|
||||
raise vol.Invalid(f"Value '{country}' is not in {LOCALE}.", path=["country"])
|
||||
|
||||
return countries
|
||||
|
||||
|
||||
HACS_MANIFEST_JSON_SCHEMA = vol.Schema(
|
||||
{
|
||||
vol.Optional("content_in_root"): bool,
|
||||
vol.Optional("country"): _country_validator,
|
||||
vol.Optional("filename"): str,
|
||||
vol.Optional("hacs"): vol.Coerce(AwesomeVersion),
|
||||
vol.Optional("hide_default_branch"): bool,
|
||||
vol.Optional("homeassistant"): vol.Coerce(AwesomeVersion),
|
||||
vol.Optional("persistent_directory"): str,
|
||||
vol.Optional("render_readme"): bool,
|
||||
vol.Optional("zip_release"): bool,
|
||||
vol.Required("name"): str,
|
||||
},
|
||||
extra=vol.PREVENT_EXTRA,
|
||||
)
|
||||
|
||||
INTEGRATION_MANIFEST_JSON_SCHEMA = vol.Schema(
|
||||
{
|
||||
vol.Required("codeowners"): list,
|
||||
vol.Required("documentation"): url_validator,
|
||||
vol.Required("domain"): str,
|
||||
vol.Required("issue_tracker"): url_validator,
|
||||
vol.Required("name"): str,
|
||||
vol.Required("version"): vol.Coerce(AwesomeVersion),
|
||||
},
|
||||
extra=vol.ALLOW_EXTRA,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user