Remove habitipy references in Habitica integration (#134419)

This commit is contained in:
Manu 2025-01-02 10:47:40 +01:00 committed by GitHub
parent 8a45aa4c42
commit b45c68554c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 159 additions and 159 deletions

View File

@ -45,7 +45,7 @@ class HabiticaButtonEntityDescription(ButtonEntityDescription):
entity_picture: str | None = None entity_picture: str | None = None
class HabitipyButtonEntity(StrEnum): class HabiticaButtonEntity(StrEnum):
"""Habitica button entities.""" """Habitica button entities."""
RUN_CRON = "run_cron" RUN_CRON = "run_cron"
@ -68,14 +68,14 @@ class HabitipyButtonEntity(StrEnum):
BUTTON_DESCRIPTIONS: tuple[HabiticaButtonEntityDescription, ...] = ( BUTTON_DESCRIPTIONS: tuple[HabiticaButtonEntityDescription, ...] = (
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.RUN_CRON, key=HabiticaButtonEntity.RUN_CRON,
translation_key=HabitipyButtonEntity.RUN_CRON, translation_key=HabiticaButtonEntity.RUN_CRON,
press_fn=lambda coordinator: coordinator.habitica.run_cron(), press_fn=lambda coordinator: coordinator.habitica.run_cron(),
available_fn=lambda data: data.user.needsCron is True, available_fn=lambda data: data.user.needsCron is True,
), ),
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.BUY_HEALTH_POTION, key=HabiticaButtonEntity.BUY_HEALTH_POTION,
translation_key=HabitipyButtonEntity.BUY_HEALTH_POTION, translation_key=HabiticaButtonEntity.BUY_HEALTH_POTION,
press_fn=lambda coordinator: coordinator.habitica.buy_health_potion(), press_fn=lambda coordinator: coordinator.habitica.buy_health_potion(),
available_fn=( available_fn=(
lambda data: (data.user.stats.gp or 0) >= 25 lambda data: (data.user.stats.gp or 0) >= 25
@ -84,8 +84,8 @@ BUTTON_DESCRIPTIONS: tuple[HabiticaButtonEntityDescription, ...] = (
entity_picture="shop_potion.png", entity_picture="shop_potion.png",
), ),
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.ALLOCATE_ALL_STAT_POINTS, key=HabiticaButtonEntity.ALLOCATE_ALL_STAT_POINTS,
translation_key=HabitipyButtonEntity.ALLOCATE_ALL_STAT_POINTS, translation_key=HabiticaButtonEntity.ALLOCATE_ALL_STAT_POINTS,
press_fn=lambda coordinator: coordinator.habitica.allocate_stat_points(), press_fn=lambda coordinator: coordinator.habitica.allocate_stat_points(),
available_fn=( available_fn=(
lambda data: data.user.preferences.automaticAllocation is True lambda data: data.user.preferences.automaticAllocation is True
@ -93,8 +93,8 @@ BUTTON_DESCRIPTIONS: tuple[HabiticaButtonEntityDescription, ...] = (
), ),
), ),
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.REVIVE, key=HabiticaButtonEntity.REVIVE,
translation_key=HabitipyButtonEntity.REVIVE, translation_key=HabiticaButtonEntity.REVIVE,
press_fn=lambda coordinator: coordinator.habitica.revive(), press_fn=lambda coordinator: coordinator.habitica.revive(),
available_fn=lambda data: data.user.stats.hp == 0, available_fn=lambda data: data.user.stats.hp == 0,
), ),
@ -103,8 +103,8 @@ BUTTON_DESCRIPTIONS: tuple[HabiticaButtonEntityDescription, ...] = (
CLASS_SKILLS: tuple[HabiticaButtonEntityDescription, ...] = ( CLASS_SKILLS: tuple[HabiticaButtonEntityDescription, ...] = (
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.MPHEAL, key=HabiticaButtonEntity.MPHEAL,
translation_key=HabitipyButtonEntity.MPHEAL, translation_key=HabiticaButtonEntity.MPHEAL,
press_fn=( press_fn=(
lambda coordinator: coordinator.habitica.cast_skill(Skill.ETHEREAL_SURGE) lambda coordinator: coordinator.habitica.cast_skill(Skill.ETHEREAL_SURGE)
), ),
@ -116,8 +116,8 @@ CLASS_SKILLS: tuple[HabiticaButtonEntityDescription, ...] = (
entity_picture="shop_mpheal.png", entity_picture="shop_mpheal.png",
), ),
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.EARTH, key=HabiticaButtonEntity.EARTH,
translation_key=HabitipyButtonEntity.EARTH, translation_key=HabiticaButtonEntity.EARTH,
press_fn=lambda coordinator: coordinator.habitica.cast_skill(Skill.EARTHQUAKE), press_fn=lambda coordinator: coordinator.habitica.cast_skill(Skill.EARTHQUAKE),
available_fn=( available_fn=(
lambda data: (data.user.stats.lvl or 0) >= 13 lambda data: (data.user.stats.lvl or 0) >= 13
@ -127,8 +127,8 @@ CLASS_SKILLS: tuple[HabiticaButtonEntityDescription, ...] = (
entity_picture="shop_earth.png", entity_picture="shop_earth.png",
), ),
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.FROST, key=HabiticaButtonEntity.FROST,
translation_key=HabitipyButtonEntity.FROST, translation_key=HabiticaButtonEntity.FROST,
press_fn=( press_fn=(
lambda coordinator: coordinator.habitica.cast_skill(Skill.CHILLING_FROST) lambda coordinator: coordinator.habitica.cast_skill(Skill.CHILLING_FROST)
), ),
@ -142,8 +142,8 @@ CLASS_SKILLS: tuple[HabiticaButtonEntityDescription, ...] = (
entity_picture="shop_frost.png", entity_picture="shop_frost.png",
), ),
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.DEFENSIVE_STANCE, key=HabiticaButtonEntity.DEFENSIVE_STANCE,
translation_key=HabitipyButtonEntity.DEFENSIVE_STANCE, translation_key=HabiticaButtonEntity.DEFENSIVE_STANCE,
press_fn=( press_fn=(
lambda coordinator: coordinator.habitica.cast_skill(Skill.DEFENSIVE_STANCE) lambda coordinator: coordinator.habitica.cast_skill(Skill.DEFENSIVE_STANCE)
), ),
@ -155,8 +155,8 @@ CLASS_SKILLS: tuple[HabiticaButtonEntityDescription, ...] = (
entity_picture="shop_defensiveStance.png", entity_picture="shop_defensiveStance.png",
), ),
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.VALOROUS_PRESENCE, key=HabiticaButtonEntity.VALOROUS_PRESENCE,
translation_key=HabitipyButtonEntity.VALOROUS_PRESENCE, translation_key=HabiticaButtonEntity.VALOROUS_PRESENCE,
press_fn=( press_fn=(
lambda coordinator: coordinator.habitica.cast_skill(Skill.VALOROUS_PRESENCE) lambda coordinator: coordinator.habitica.cast_skill(Skill.VALOROUS_PRESENCE)
), ),
@ -168,8 +168,8 @@ CLASS_SKILLS: tuple[HabiticaButtonEntityDescription, ...] = (
entity_picture="shop_valorousPresence.png", entity_picture="shop_valorousPresence.png",
), ),
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.INTIMIDATE, key=HabiticaButtonEntity.INTIMIDATE,
translation_key=HabitipyButtonEntity.INTIMIDATE, translation_key=HabiticaButtonEntity.INTIMIDATE,
press_fn=( press_fn=(
lambda coordinator: coordinator.habitica.cast_skill(Skill.INTIMIDATING_GAZE) lambda coordinator: coordinator.habitica.cast_skill(Skill.INTIMIDATING_GAZE)
), ),
@ -181,8 +181,8 @@ CLASS_SKILLS: tuple[HabiticaButtonEntityDescription, ...] = (
entity_picture="shop_intimidate.png", entity_picture="shop_intimidate.png",
), ),
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.TOOLS_OF_TRADE, key=HabiticaButtonEntity.TOOLS_OF_TRADE,
translation_key=HabitipyButtonEntity.TOOLS_OF_TRADE, translation_key=HabiticaButtonEntity.TOOLS_OF_TRADE,
press_fn=( press_fn=(
lambda coordinator: coordinator.habitica.cast_skill( lambda coordinator: coordinator.habitica.cast_skill(
Skill.TOOLS_OF_THE_TRADE Skill.TOOLS_OF_THE_TRADE
@ -196,8 +196,8 @@ CLASS_SKILLS: tuple[HabiticaButtonEntityDescription, ...] = (
entity_picture="shop_toolsOfTrade.png", entity_picture="shop_toolsOfTrade.png",
), ),
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.STEALTH, key=HabiticaButtonEntity.STEALTH,
translation_key=HabitipyButtonEntity.STEALTH, translation_key=HabiticaButtonEntity.STEALTH,
press_fn=lambda coordinator: coordinator.habitica.cast_skill(Skill.STEALTH), press_fn=lambda coordinator: coordinator.habitica.cast_skill(Skill.STEALTH),
# Stealth buffs stack and it can only be cast if the amount of # Stealth buffs stack and it can only be cast if the amount of
# buffs is smaller than the amount of unfinished dailies # buffs is smaller than the amount of unfinished dailies
@ -219,8 +219,8 @@ CLASS_SKILLS: tuple[HabiticaButtonEntityDescription, ...] = (
entity_picture="shop_stealth.png", entity_picture="shop_stealth.png",
), ),
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.HEAL, key=HabiticaButtonEntity.HEAL,
translation_key=HabitipyButtonEntity.HEAL, translation_key=HabiticaButtonEntity.HEAL,
press_fn=( press_fn=(
lambda coordinator: coordinator.habitica.cast_skill(Skill.HEALING_LIGHT) lambda coordinator: coordinator.habitica.cast_skill(Skill.HEALING_LIGHT)
), ),
@ -233,8 +233,8 @@ CLASS_SKILLS: tuple[HabiticaButtonEntityDescription, ...] = (
entity_picture="shop_heal.png", entity_picture="shop_heal.png",
), ),
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.BRIGHTNESS, key=HabiticaButtonEntity.BRIGHTNESS,
translation_key=HabitipyButtonEntity.BRIGHTNESS, translation_key=HabiticaButtonEntity.BRIGHTNESS,
press_fn=( press_fn=(
lambda coordinator: coordinator.habitica.cast_skill( lambda coordinator: coordinator.habitica.cast_skill(
Skill.SEARING_BRIGHTNESS Skill.SEARING_BRIGHTNESS
@ -248,8 +248,8 @@ CLASS_SKILLS: tuple[HabiticaButtonEntityDescription, ...] = (
entity_picture="shop_brightness.png", entity_picture="shop_brightness.png",
), ),
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.PROTECT_AURA, key=HabiticaButtonEntity.PROTECT_AURA,
translation_key=HabitipyButtonEntity.PROTECT_AURA, translation_key=HabiticaButtonEntity.PROTECT_AURA,
press_fn=( press_fn=(
lambda coordinator: coordinator.habitica.cast_skill(Skill.PROTECTIVE_AURA) lambda coordinator: coordinator.habitica.cast_skill(Skill.PROTECTIVE_AURA)
), ),
@ -261,8 +261,8 @@ CLASS_SKILLS: tuple[HabiticaButtonEntityDescription, ...] = (
entity_picture="shop_protectAura.png", entity_picture="shop_protectAura.png",
), ),
HabiticaButtonEntityDescription( HabiticaButtonEntityDescription(
key=HabitipyButtonEntity.HEAL_ALL, key=HabiticaButtonEntity.HEAL_ALL,
translation_key=HabitipyButtonEntity.HEAL_ALL, translation_key=HabiticaButtonEntity.HEAL_ALL,
press_fn=lambda coordinator: coordinator.habitica.cast_skill(Skill.BLESSING), press_fn=lambda coordinator: coordinator.habitica.cast_skill(Skill.BLESSING),
available_fn=( available_fn=(
lambda data: (data.user.stats.lvl or 0) >= 14 lambda data: (data.user.stats.lvl or 0) >= 14

View File

@ -42,8 +42,8 @@ _LOGGER = logging.getLogger(__name__)
@dataclass(kw_only=True, frozen=True) @dataclass(kw_only=True, frozen=True)
class HabitipySensorEntityDescription(SensorEntityDescription): class HabiticaSensorEntityDescription(SensorEntityDescription):
"""Habitipy Sensor Description.""" """Habitica Sensor Description."""
value_fn: Callable[[UserData, ContentData], StateType] value_fn: Callable[[UserData, ContentData], StateType]
attributes_fn: Callable[[UserData, ContentData], dict[str, Any] | None] | None = ( attributes_fn: Callable[[UserData, ContentData], dict[str, Any] | None] | None = (
@ -53,14 +53,14 @@ class HabitipySensorEntityDescription(SensorEntityDescription):
@dataclass(kw_only=True, frozen=True) @dataclass(kw_only=True, frozen=True)
class HabitipyTaskSensorEntityDescription(SensorEntityDescription): class HabiticaTaskSensorEntityDescription(SensorEntityDescription):
"""Habitipy Task Sensor Description.""" """Habitica Task Sensor Description."""
value_fn: Callable[[list[TaskData]], list[TaskData]] value_fn: Callable[[list[TaskData]], list[TaskData]]
class HabitipySensorEntity(StrEnum): class HabiticaSensorEntity(StrEnum):
"""Habitipy Entities.""" """Habitica Entities."""
DISPLAY_NAME = "display_name" DISPLAY_NAME = "display_name"
HEALTH = "health" HEALTH = "health"
@ -84,105 +84,105 @@ class HabitipySensorEntity(StrEnum):
PERCEPTION = "perception" PERCEPTION = "perception"
SENSOR_DESCRIPTIONS: tuple[HabitipySensorEntityDescription, ...] = ( SENSOR_DESCRIPTIONS: tuple[HabiticaSensorEntityDescription, ...] = (
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.DISPLAY_NAME, key=HabiticaSensorEntity.DISPLAY_NAME,
translation_key=HabitipySensorEntity.DISPLAY_NAME, translation_key=HabiticaSensorEntity.DISPLAY_NAME,
value_fn=lambda user, _: user.profile.name, value_fn=lambda user, _: user.profile.name,
), ),
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.HEALTH, key=HabiticaSensorEntity.HEALTH,
translation_key=HabitipySensorEntity.HEALTH, translation_key=HabiticaSensorEntity.HEALTH,
suggested_display_precision=0, suggested_display_precision=0,
value_fn=lambda user, _: user.stats.hp, value_fn=lambda user, _: user.stats.hp,
), ),
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.HEALTH_MAX, key=HabiticaSensorEntity.HEALTH_MAX,
translation_key=HabitipySensorEntity.HEALTH_MAX, translation_key=HabiticaSensorEntity.HEALTH_MAX,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
value_fn=lambda user, _: 50, value_fn=lambda user, _: 50,
), ),
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.MANA, key=HabiticaSensorEntity.MANA,
translation_key=HabitipySensorEntity.MANA, translation_key=HabiticaSensorEntity.MANA,
suggested_display_precision=0, suggested_display_precision=0,
value_fn=lambda user, _: user.stats.mp, value_fn=lambda user, _: user.stats.mp,
), ),
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.MANA_MAX, key=HabiticaSensorEntity.MANA_MAX,
translation_key=HabitipySensorEntity.MANA_MAX, translation_key=HabiticaSensorEntity.MANA_MAX,
value_fn=lambda user, _: user.stats.maxMP, value_fn=lambda user, _: user.stats.maxMP,
), ),
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.EXPERIENCE, key=HabiticaSensorEntity.EXPERIENCE,
translation_key=HabitipySensorEntity.EXPERIENCE, translation_key=HabiticaSensorEntity.EXPERIENCE,
value_fn=lambda user, _: user.stats.exp, value_fn=lambda user, _: user.stats.exp,
), ),
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.EXPERIENCE_MAX, key=HabiticaSensorEntity.EXPERIENCE_MAX,
translation_key=HabitipySensorEntity.EXPERIENCE_MAX, translation_key=HabiticaSensorEntity.EXPERIENCE_MAX,
value_fn=lambda user, _: user.stats.toNextLevel, value_fn=lambda user, _: user.stats.toNextLevel,
), ),
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.LEVEL, key=HabiticaSensorEntity.LEVEL,
translation_key=HabitipySensorEntity.LEVEL, translation_key=HabiticaSensorEntity.LEVEL,
value_fn=lambda user, _: user.stats.lvl, value_fn=lambda user, _: user.stats.lvl,
), ),
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.GOLD, key=HabiticaSensorEntity.GOLD,
translation_key=HabitipySensorEntity.GOLD, translation_key=HabiticaSensorEntity.GOLD,
suggested_display_precision=2, suggested_display_precision=2,
value_fn=lambda user, _: user.stats.gp, value_fn=lambda user, _: user.stats.gp,
), ),
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.CLASS, key=HabiticaSensorEntity.CLASS,
translation_key=HabitipySensorEntity.CLASS, translation_key=HabiticaSensorEntity.CLASS,
value_fn=lambda user, _: user.stats.Class.value if user.stats.Class else None, value_fn=lambda user, _: user.stats.Class.value if user.stats.Class else None,
device_class=SensorDeviceClass.ENUM, device_class=SensorDeviceClass.ENUM,
options=[item.value for item in HabiticaClass], options=[item.value for item in HabiticaClass],
), ),
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.GEMS, key=HabiticaSensorEntity.GEMS,
translation_key=HabitipySensorEntity.GEMS, translation_key=HabiticaSensorEntity.GEMS,
value_fn=lambda user, _: round(user.balance * 4) if user.balance else None, value_fn=lambda user, _: round(user.balance * 4) if user.balance else None,
suggested_display_precision=0, suggested_display_precision=0,
entity_picture="shop_gem.png", entity_picture="shop_gem.png",
), ),
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.TRINKETS, key=HabiticaSensorEntity.TRINKETS,
translation_key=HabitipySensorEntity.TRINKETS, translation_key=HabiticaSensorEntity.TRINKETS,
value_fn=lambda user, _: user.purchased.plan.consecutive.trinkets or 0, value_fn=lambda user, _: user.purchased.plan.consecutive.trinkets or 0,
suggested_display_precision=0, suggested_display_precision=0,
native_unit_of_measurement="", native_unit_of_measurement="",
entity_picture="notif_subscriber_reward.png", entity_picture="notif_subscriber_reward.png",
), ),
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.STRENGTH, key=HabiticaSensorEntity.STRENGTH,
translation_key=HabitipySensorEntity.STRENGTH, translation_key=HabiticaSensorEntity.STRENGTH,
value_fn=lambda user, content: get_attributes_total(user, content, "Str"), value_fn=lambda user, content: get_attributes_total(user, content, "Str"),
attributes_fn=lambda user, content: get_attribute_points(user, content, "Str"), attributes_fn=lambda user, content: get_attribute_points(user, content, "Str"),
suggested_display_precision=0, suggested_display_precision=0,
native_unit_of_measurement="STR", native_unit_of_measurement="STR",
), ),
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.INTELLIGENCE, key=HabiticaSensorEntity.INTELLIGENCE,
translation_key=HabitipySensorEntity.INTELLIGENCE, translation_key=HabiticaSensorEntity.INTELLIGENCE,
value_fn=lambda user, content: get_attributes_total(user, content, "Int"), value_fn=lambda user, content: get_attributes_total(user, content, "Int"),
attributes_fn=lambda user, content: get_attribute_points(user, content, "Int"), attributes_fn=lambda user, content: get_attribute_points(user, content, "Int"),
suggested_display_precision=0, suggested_display_precision=0,
native_unit_of_measurement="INT", native_unit_of_measurement="INT",
), ),
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.PERCEPTION, key=HabiticaSensorEntity.PERCEPTION,
translation_key=HabitipySensorEntity.PERCEPTION, translation_key=HabiticaSensorEntity.PERCEPTION,
value_fn=lambda user, content: get_attributes_total(user, content, "per"), value_fn=lambda user, content: get_attributes_total(user, content, "per"),
attributes_fn=lambda user, content: get_attribute_points(user, content, "per"), attributes_fn=lambda user, content: get_attribute_points(user, content, "per"),
suggested_display_precision=0, suggested_display_precision=0,
native_unit_of_measurement="PER", native_unit_of_measurement="PER",
), ),
HabitipySensorEntityDescription( HabiticaSensorEntityDescription(
key=HabitipySensorEntity.CONSTITUTION, key=HabiticaSensorEntity.CONSTITUTION,
translation_key=HabitipySensorEntity.CONSTITUTION, translation_key=HabiticaSensorEntity.CONSTITUTION,
value_fn=lambda user, content: get_attributes_total(user, content, "con"), value_fn=lambda user, content: get_attributes_total(user, content, "con"),
attributes_fn=lambda user, content: get_attribute_points(user, content, "con"), attributes_fn=lambda user, content: get_attribute_points(user, content, "con"),
suggested_display_precision=0, suggested_display_precision=0,
@ -221,21 +221,21 @@ TASKS_MAP = {
} }
TASK_SENSOR_DESCRIPTION: tuple[HabitipyTaskSensorEntityDescription, ...] = ( TASK_SENSOR_DESCRIPTION: tuple[HabiticaTaskSensorEntityDescription, ...] = (
HabitipyTaskSensorEntityDescription( HabiticaTaskSensorEntityDescription(
key=HabitipySensorEntity.HABITS, key=HabiticaSensorEntity.HABITS,
translation_key=HabitipySensorEntity.HABITS, translation_key=HabiticaSensorEntity.HABITS,
value_fn=lambda tasks: [r for r in tasks if r.Type is TaskType.HABIT], value_fn=lambda tasks: [r for r in tasks if r.Type is TaskType.HABIT],
), ),
HabitipyTaskSensorEntityDescription( HabiticaTaskSensorEntityDescription(
key=HabitipySensorEntity.DAILIES, key=HabiticaSensorEntity.DAILIES,
translation_key=HabitipySensorEntity.DAILIES, translation_key=HabiticaSensorEntity.DAILIES,
value_fn=lambda tasks: [r for r in tasks if r.Type is TaskType.DAILY], value_fn=lambda tasks: [r for r in tasks if r.Type is TaskType.DAILY],
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
HabitipyTaskSensorEntityDescription( HabiticaTaskSensorEntityDescription(
key=HabitipySensorEntity.TODOS, key=HabiticaSensorEntity.TODOS,
translation_key=HabitipySensorEntity.TODOS, translation_key=HabiticaSensorEntity.TODOS,
value_fn=( value_fn=(
lambda tasks: [ lambda tasks: [
r for r in tasks if r.Type is TaskType.TODO and not r.completed r for r in tasks if r.Type is TaskType.TODO and not r.completed
@ -243,9 +243,9 @@ TASK_SENSOR_DESCRIPTION: tuple[HabitipyTaskSensorEntityDescription, ...] = (
), ),
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
HabitipyTaskSensorEntityDescription( HabiticaTaskSensorEntityDescription(
key=HabitipySensorEntity.REWARDS, key=HabiticaSensorEntity.REWARDS,
translation_key=HabitipySensorEntity.REWARDS, translation_key=HabiticaSensorEntity.REWARDS,
value_fn=lambda tasks: [r for r in tasks if r.Type is TaskType.REWARD], value_fn=lambda tasks: [r for r in tasks if r.Type is TaskType.REWARD],
), ),
) )
@ -261,19 +261,19 @@ async def async_setup_entry(
coordinator = config_entry.runtime_data coordinator = config_entry.runtime_data
entities: list[SensorEntity] = [ entities: list[SensorEntity] = [
HabitipySensor(coordinator, description) for description in SENSOR_DESCRIPTIONS HabiticaSensor(coordinator, description) for description in SENSOR_DESCRIPTIONS
] ]
entities.extend( entities.extend(
HabitipyTaskSensor(coordinator, description) HabiticaTaskSensor(coordinator, description)
for description in TASK_SENSOR_DESCRIPTION for description in TASK_SENSOR_DESCRIPTION
) )
async_add_entities(entities, True) async_add_entities(entities, True)
class HabitipySensor(HabiticaBase, SensorEntity): class HabiticaSensor(HabiticaBase, SensorEntity):
"""A generic Habitica sensor.""" """A generic Habitica sensor."""
entity_description: HabitipySensorEntityDescription entity_description: HabiticaSensorEntityDescription
@property @property
def native_value(self) -> StateType: def native_value(self) -> StateType:
@ -298,10 +298,10 @@ class HabitipySensor(HabiticaBase, SensorEntity):
return None return None
class HabitipyTaskSensor(HabiticaBase, SensorEntity): class HabiticaTaskSensor(HabiticaBase, SensorEntity):
"""A Habitica task sensor.""" """A Habitica task sensor."""
entity_description: HabitipyTaskSensorEntityDescription entity_description: HabiticaTaskSensorEntityDescription
@property @property
def native_value(self) -> StateType: def native_value(self) -> StateType:
@ -335,7 +335,7 @@ class HabitipyTaskSensor(HabiticaBase, SensorEntity):
if ( if (
self.enabled self.enabled
and self.entity_description.key and self.entity_description.key
in (HabitipySensorEntity.TODOS, HabitipySensorEntity.DAILIES) in (HabiticaSensorEntity.TODOS, HabiticaSensorEntity.DAILIES)
and entity_used_in(self.hass, entity_id) and entity_used_in(self.hass, entity_id)
): ):
async_create_issue( async_create_issue(

View File

@ -27,7 +27,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.ALLOCATE_ALL_STAT_POINTS: 'allocate_all_stat_points'>, 'translation_key': <HabiticaButtonEntity.ALLOCATE_ALL_STAT_POINTS: 'allocate_all_stat_points'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_allocate_all_stat_points', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_allocate_all_stat_points',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -73,7 +73,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.HEAL_ALL: 'heal_all'>, 'translation_key': <HabiticaButtonEntity.HEAL_ALL: 'heal_all'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_heal_all', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_heal_all',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -120,7 +120,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.BUY_HEALTH_POTION: 'buy_health_potion'>, 'translation_key': <HabiticaButtonEntity.BUY_HEALTH_POTION: 'buy_health_potion'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_buy_health_potion', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_buy_health_potion',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -167,7 +167,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.HEAL: 'heal'>, 'translation_key': <HabiticaButtonEntity.HEAL: 'heal'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_heal', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_heal',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -214,7 +214,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.PROTECT_AURA: 'protect_aura'>, 'translation_key': <HabiticaButtonEntity.PROTECT_AURA: 'protect_aura'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_protect_aura', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_protect_aura',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -261,7 +261,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.REVIVE: 'revive'>, 'translation_key': <HabiticaButtonEntity.REVIVE: 'revive'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_revive', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_revive',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -307,7 +307,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.BRIGHTNESS: 'brightness'>, 'translation_key': <HabiticaButtonEntity.BRIGHTNESS: 'brightness'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_brightness', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_brightness',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -354,7 +354,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.RUN_CRON: 'run_cron'>, 'translation_key': <HabiticaButtonEntity.RUN_CRON: 'run_cron'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_run_cron', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_run_cron',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -400,7 +400,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.ALLOCATE_ALL_STAT_POINTS: 'allocate_all_stat_points'>, 'translation_key': <HabiticaButtonEntity.ALLOCATE_ALL_STAT_POINTS: 'allocate_all_stat_points'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_allocate_all_stat_points', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_allocate_all_stat_points',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -446,7 +446,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.BUY_HEALTH_POTION: 'buy_health_potion'>, 'translation_key': <HabiticaButtonEntity.BUY_HEALTH_POTION: 'buy_health_potion'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_buy_health_potion', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_buy_health_potion',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -493,7 +493,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.REVIVE: 'revive'>, 'translation_key': <HabiticaButtonEntity.REVIVE: 'revive'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_revive', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_revive',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -539,7 +539,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.RUN_CRON: 'run_cron'>, 'translation_key': <HabiticaButtonEntity.RUN_CRON: 'run_cron'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_run_cron', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_run_cron',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -585,7 +585,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.STEALTH: 'stealth'>, 'translation_key': <HabiticaButtonEntity.STEALTH: 'stealth'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_stealth', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_stealth',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -632,7 +632,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.TOOLS_OF_TRADE: 'tools_of_trade'>, 'translation_key': <HabiticaButtonEntity.TOOLS_OF_TRADE: 'tools_of_trade'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_tools_of_trade', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_tools_of_trade',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -679,7 +679,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.ALLOCATE_ALL_STAT_POINTS: 'allocate_all_stat_points'>, 'translation_key': <HabiticaButtonEntity.ALLOCATE_ALL_STAT_POINTS: 'allocate_all_stat_points'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_allocate_all_stat_points', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_allocate_all_stat_points',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -725,7 +725,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.BUY_HEALTH_POTION: 'buy_health_potion'>, 'translation_key': <HabiticaButtonEntity.BUY_HEALTH_POTION: 'buy_health_potion'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_buy_health_potion', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_buy_health_potion',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -772,7 +772,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.DEFENSIVE_STANCE: 'defensive_stance'>, 'translation_key': <HabiticaButtonEntity.DEFENSIVE_STANCE: 'defensive_stance'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_defensive_stance', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_defensive_stance',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -819,7 +819,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.INTIMIDATE: 'intimidate'>, 'translation_key': <HabiticaButtonEntity.INTIMIDATE: 'intimidate'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_intimidate', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_intimidate',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -866,7 +866,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.REVIVE: 'revive'>, 'translation_key': <HabiticaButtonEntity.REVIVE: 'revive'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_revive', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_revive',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -912,7 +912,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.RUN_CRON: 'run_cron'>, 'translation_key': <HabiticaButtonEntity.RUN_CRON: 'run_cron'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_run_cron', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_run_cron',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -958,7 +958,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.VALOROUS_PRESENCE: 'valorous_presence'>, 'translation_key': <HabiticaButtonEntity.VALOROUS_PRESENCE: 'valorous_presence'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_valorous_presence', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_valorous_presence',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -1005,7 +1005,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.ALLOCATE_ALL_STAT_POINTS: 'allocate_all_stat_points'>, 'translation_key': <HabiticaButtonEntity.ALLOCATE_ALL_STAT_POINTS: 'allocate_all_stat_points'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_allocate_all_stat_points', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_allocate_all_stat_points',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -1051,7 +1051,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.BUY_HEALTH_POTION: 'buy_health_potion'>, 'translation_key': <HabiticaButtonEntity.BUY_HEALTH_POTION: 'buy_health_potion'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_buy_health_potion', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_buy_health_potion',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -1098,7 +1098,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.FROST: 'frost'>, 'translation_key': <HabiticaButtonEntity.FROST: 'frost'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_frost', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_frost',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -1145,7 +1145,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.EARTH: 'earth'>, 'translation_key': <HabiticaButtonEntity.EARTH: 'earth'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_earth', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_earth',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -1192,7 +1192,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.MPHEAL: 'mpheal'>, 'translation_key': <HabiticaButtonEntity.MPHEAL: 'mpheal'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_mpheal', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_mpheal',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -1239,7 +1239,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.REVIVE: 'revive'>, 'translation_key': <HabiticaButtonEntity.REVIVE: 'revive'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_revive', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_revive',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -1285,7 +1285,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipyButtonEntity.RUN_CRON: 'run_cron'>, 'translation_key': <HabiticaButtonEntity.RUN_CRON: 'run_cron'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_run_cron', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_run_cron',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })

View File

@ -34,7 +34,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.CLASS: 'class'>, 'translation_key': <HabiticaSensorEntity.CLASS: 'class'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_class', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_class',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -90,7 +90,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.CONSTITUTION: 'constitution'>, 'translation_key': <HabiticaSensorEntity.CONSTITUTION: 'constitution'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_constitution', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_constitution',
'unit_of_measurement': 'CON', 'unit_of_measurement': 'CON',
}) })
@ -142,7 +142,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.DAILIES: 'dailys'>, 'translation_key': <HabiticaSensorEntity.DAILIES: 'dailys'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_dailys', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_dailys',
'unit_of_measurement': 'tasks', 'unit_of_measurement': 'tasks',
}) })
@ -404,7 +404,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.DISPLAY_NAME: 'display_name'>, 'translation_key': <HabiticaSensorEntity.DISPLAY_NAME: 'display_name'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_display_name', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_display_name',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -450,7 +450,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.EXPERIENCE: 'experience'>, 'translation_key': <HabiticaSensorEntity.EXPERIENCE: 'experience'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_experience', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_experience',
'unit_of_measurement': 'XP', 'unit_of_measurement': 'XP',
}) })
@ -500,7 +500,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.GEMS: 'gems'>, 'translation_key': <HabiticaSensorEntity.GEMS: 'gems'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_gems', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_gems',
'unit_of_measurement': 'gems', 'unit_of_measurement': 'gems',
}) })
@ -551,7 +551,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.GOLD: 'gold'>, 'translation_key': <HabiticaSensorEntity.GOLD: 'gold'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_gold', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_gold',
'unit_of_measurement': 'GP', 'unit_of_measurement': 'GP',
}) })
@ -598,7 +598,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.HABITS: 'habits'>, 'translation_key': <HabiticaSensorEntity.HABITS: 'habits'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_habits', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_habits',
'unit_of_measurement': 'tasks', 'unit_of_measurement': 'tasks',
}) })
@ -807,7 +807,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.HEALTH: 'health'>, 'translation_key': <HabiticaSensorEntity.HEALTH: 'health'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_health', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_health',
'unit_of_measurement': 'HP', 'unit_of_measurement': 'HP',
}) })
@ -857,7 +857,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.INTELLIGENCE: 'intelligence'>, 'translation_key': <HabiticaSensorEntity.INTELLIGENCE: 'intelligence'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_intelligence', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_intelligence',
'unit_of_measurement': 'INT', 'unit_of_measurement': 'INT',
}) })
@ -909,7 +909,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.LEVEL: 'level'>, 'translation_key': <HabiticaSensorEntity.LEVEL: 'level'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_level', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_level',
'unit_of_measurement': None, 'unit_of_measurement': None,
}) })
@ -958,7 +958,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.MANA: 'mana'>, 'translation_key': <HabiticaSensorEntity.MANA: 'mana'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_mana', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_mana',
'unit_of_measurement': 'MP', 'unit_of_measurement': 'MP',
}) })
@ -1005,7 +1005,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.HEALTH_MAX: 'health_max'>, 'translation_key': <HabiticaSensorEntity.HEALTH_MAX: 'health_max'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_health_max', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_health_max',
'unit_of_measurement': 'HP', 'unit_of_measurement': 'HP',
}) })
@ -1052,7 +1052,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.MANA_MAX: 'mana_max'>, 'translation_key': <HabiticaSensorEntity.MANA_MAX: 'mana_max'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_mana_max', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_mana_max',
'unit_of_measurement': 'MP', 'unit_of_measurement': 'MP',
}) })
@ -1102,7 +1102,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.TRINKETS: 'trinkets'>, 'translation_key': <HabiticaSensorEntity.TRINKETS: 'trinkets'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_trinkets', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_trinkets',
'unit_of_measurement': '⧖', 'unit_of_measurement': '⧖',
}) })
@ -1150,7 +1150,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.EXPERIENCE_MAX: 'experience_max'>, 'translation_key': <HabiticaSensorEntity.EXPERIENCE_MAX: 'experience_max'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_experience_max', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_experience_max',
'unit_of_measurement': 'XP', 'unit_of_measurement': 'XP',
}) })
@ -1200,7 +1200,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.PERCEPTION: 'perception'>, 'translation_key': <HabiticaSensorEntity.PERCEPTION: 'perception'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_perception', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_perception',
'unit_of_measurement': 'PER', 'unit_of_measurement': 'PER',
}) })
@ -1252,7 +1252,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.REWARDS: 'rewards'>, 'translation_key': <HabiticaSensorEntity.REWARDS: 'rewards'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_rewards', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_rewards',
'unit_of_measurement': 'tasks', 'unit_of_measurement': 'tasks',
}) })
@ -1341,7 +1341,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.STRENGTH: 'strength'>, 'translation_key': <HabiticaSensorEntity.STRENGTH: 'strength'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_strength', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_strength',
'unit_of_measurement': 'STR', 'unit_of_measurement': 'STR',
}) })
@ -1393,7 +1393,7 @@
'platform': 'habitica', 'platform': 'habitica',
'previous_unique_id': None, 'previous_unique_id': None,
'supported_features': 0, 'supported_features': 0,
'translation_key': <HabitipySensorEntity.TODOS: 'todos'>, 'translation_key': <HabiticaSensorEntity.TODOS: 'todos'>,
'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_todos', 'unique_id': 'a380546a-94be-4b8e-8a0b-23e0d5c03303_todos',
'unit_of_measurement': 'tasks', 'unit_of_measurement': 'tasks',
}) })

View File

@ -7,7 +7,7 @@ import pytest
from syrupy.assertion import SnapshotAssertion from syrupy.assertion import SnapshotAssertion
from homeassistant.components.habitica.const import DOMAIN from homeassistant.components.habitica.const import DOMAIN
from homeassistant.components.habitica.sensor import HabitipySensorEntity from homeassistant.components.habitica.sensor import HabiticaSensorEntity
from homeassistant.config_entries import ConfigEntryState from homeassistant.config_entries import ConfigEntryState
from homeassistant.const import Platform from homeassistant.const import Platform
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
@ -64,9 +64,9 @@ async def test_sensor_deprecation_issue(
assert issue_registry.async_get_issue( assert issue_registry.async_get_issue(
domain=DOMAIN, domain=DOMAIN,
issue_id=f"deprecated_task_entity_{HabitipySensorEntity.TODOS}", issue_id=f"deprecated_task_entity_{HabiticaSensorEntity.TODOS}",
) )
assert issue_registry.async_get_issue( assert issue_registry.async_get_issue(
domain=DOMAIN, domain=DOMAIN,
issue_id=f"deprecated_task_entity_{HabitipySensorEntity.DAILIES}", issue_id=f"deprecated_task_entity_{HabiticaSensorEntity.DAILIES}",
) )