Coverage for opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/preferences.py: 93%

28 statements  

« prev     ^ index     » next       coverage.py v7.10.6, created at 2025-11-25 15:32 +0000

1from typing import TYPE_CHECKING, Optional 1a

2 

3import sqlalchemy as sa 1a

4import sqlalchemy.orm as orm 1a

5from sqlalchemy.ext.associationproxy import AssociationProxy, association_proxy 1a

6from sqlalchemy.orm import Mapped, mapped_column 1a

7 

8from .._model_base import BaseMixins, SqlAlchemyBase 1a

9from .._model_utils.auto_init import auto_init 1a

10from .._model_utils.guid import GUID 1a

11 

12if TYPE_CHECKING: 12 ↛ 13line 12 didn't jump to line 13 because the condition on line 12 was never true1a

13 from .household import Household 

14 

15 

16class HouseholdPreferencesModel(SqlAlchemyBase, BaseMixins): 1a

17 __tablename__ = "household_preferences" 1a

18 id: Mapped[GUID] = mapped_column(GUID, primary_key=True, default=GUID.generate) 1a

19 

20 household_id: Mapped[GUID | None] = mapped_column(GUID, sa.ForeignKey("households.id"), nullable=False, index=True) 1a

21 household: Mapped[Optional["Household"]] = orm.relationship("Household", back_populates="preferences") 1a

22 group_id: AssociationProxy[GUID] = association_proxy("household", "group_id") 1a

23 

24 private_household: Mapped[bool | None] = mapped_column(sa.Boolean, default=True) 1a

25 lock_recipe_edits_from_other_households: Mapped[bool | None] = mapped_column(sa.Boolean, default=True) 1a

26 first_day_of_week: Mapped[int | None] = mapped_column(sa.Integer, default=0) 1a

27 

28 # Recipe Defaults 

29 recipe_public: Mapped[bool | None] = mapped_column(sa.Boolean, default=True) 1a

30 recipe_show_nutrition: Mapped[bool | None] = mapped_column(sa.Boolean, default=False) 1a

31 recipe_show_assets: Mapped[bool | None] = mapped_column(sa.Boolean, default=False) 1a

32 recipe_landscape_view: Mapped[bool | None] = mapped_column(sa.Boolean, default=False) 1a

33 recipe_disable_comments: Mapped[bool | None] = mapped_column(sa.Boolean, default=False) 1a

34 

35 # Deprecated 

36 recipe_disable_amount: Mapped[bool | None] = mapped_column(sa.Boolean, default=True) 1a

37 

38 @auto_init() 1a

39 def __init__(self, **_) -> None: 1a

40 pass 1abc