1
0
mirror of https://github.com/home-assistant/core.git synced 2026-07-02 20:26:16 +01:00
Files
core/homeassistant/helpers/template/extensions/version.py
T
2026-04-30 20:34:43 +02:00

34 lines
953 B
Python

"""Version functions for Home Assistant templates."""
from typing import TYPE_CHECKING
from awesomeversion import AwesomeVersion
from .base import BaseTemplateExtension, TemplateFunction
if TYPE_CHECKING:
from homeassistant.helpers.template import TemplateEnvironment
class VersionExtension(BaseTemplateExtension):
"""Jinja2 extension for version functions."""
def __init__(self, environment: TemplateEnvironment) -> None:
"""Initialize the version extension."""
super().__init__(
environment,
functions=[
TemplateFunction(
"version",
self.version,
as_global=True,
as_filter=True,
),
],
)
@staticmethod
def version(value: str) -> AwesomeVersion:
"""Filter and function to get version object of the value."""
return AwesomeVersion(value)