Skip to content

Commit dfa9f19

Browse files
[pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
1 parent ee028bc commit dfa9f19

File tree

8 files changed

+23
-30
lines changed

8 files changed

+23
-30
lines changed

funnel/assets/sass/mui/_custom.scss

+4-3
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,10 @@ $mui-body-bg-color: $mui-bg-color-accent !default;
3636
$mui-btn-danger-bg-color: $mui-text-danger;
3737

3838
$mui-base-font-color: $mui-text-dark !default;
39-
$mui-base-font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen,
40-
Ubuntu, Cantarell, 'Helvetica Neue', Arial, sans-serif, 'Noto Sans Math',
41-
'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
39+
$mui-base-font-family:
40+
-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell,
41+
'Helvetica Neue', Arial, sans-serif, 'Noto Sans Math', 'Apple Color Emoji',
42+
'Segoe UI Emoji', 'Segoe UI Symbol';
4243
$mui-base-font-size: 14px !default;
4344
$mui-base-font-size-desktop: 16px !default;
4445
$mui-base-font-weight: 400 !default;

funnel/models/helpers.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -732,12 +732,12 @@ def coerce(cls, _key: str, value: Any) -> Self:
732732

733733
@classmethod
734734
def create(
735-
cls: type[_MC],
735+
cls,
736736
name: str,
737737
deferred: bool = False,
738738
deferred_group: str | None = None,
739739
**kwargs: Any,
740-
) -> tuple[sa_orm.Composite[_MC], Mapped[str], Mapped[str]]:
740+
) -> tuple[sa_orm.Composite[Self], Mapped[str], Mapped[str]]:
741741
"""Create a composite column and backing individual columns."""
742742
col_text = sa_orm.mapped_column(
743743
name + '_text',

funnel/models/membership_mixin.py

+2-6
Original file line numberDiff line numberDiff line change
@@ -634,9 +634,7 @@ def pickername(self: FrozenAttributionSubclassProtocol) -> str:
634634
return self._title if self._title else self.member.pickername
635635

636636
@with_roles(call={'owner', 'member'})
637-
def freeze_member_attribution(
638-
self: FrozenAttributionType, actor: Account
639-
) -> FrozenAttributionType:
637+
def freeze_member_attribution(self, actor: Account) -> Self:
640638
"""Freeze member attribution and return a replacement record."""
641639
if self._title is None:
642640
membership = self.replace(actor=actor, title=self.member.title)
@@ -687,9 +685,7 @@ def __setattr__(self, attr: str, value: Any) -> None:
687685
raise AttributeError(
688686
f"{attr} cannot be set",
689687
name=attr,
690-
obj=SimpleNamespace(
691-
**{_: None for _ in self.membership.__data_columns__}
692-
),
688+
obj=SimpleNamespace(**dict.fromkeys(self.membership.__data_columns__)),
693689
)
694690
self._new[attr] = value
695691

funnel/models/reorder_mixin.py

+5-5
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
from __future__ import annotations
44

5-
from typing import Any, Protocol, TypeVar
5+
from typing import Any, Protocol, Self, TypeVar
66

77
from .base import Mapped, db, declarative_mixin, sa, sa_orm
88
from .typing import ModelIdProtocol
@@ -23,7 +23,7 @@ class ReorderSubclassProtocol(ModelIdProtocol, Protocol):
2323
@property
2424
def parent_scoped_reorder_query_filter(self) -> sa.ColumnElement[bool]: ...
2525

26-
def reorder_item(self: Reorderable, other: Reorderable, before: bool) -> None: ...
26+
def reorder_item(self, other: Self, before: bool) -> None: ...
2727

2828

2929
Reorderable = TypeVar('Reorderable', bound='ReorderSubclassProtocol')
@@ -47,7 +47,7 @@ def parent_scoped_reorder_query_filter(
4747
cls = self.__class__
4848
return cls.parent_id == self.parent_id
4949

50-
def reorder_item(self: Reorderable, other: Reorderable, before: bool) -> None:
50+
def reorder_item(self, other: Self, before: bool) -> None:
5151
"""Reorder self before or after other item."""
5252
cls = self.__class__
5353

@@ -121,10 +121,10 @@ def reorder_item(self: Reorderable, other: Reorderable, before: bool) -> None:
121121
self.seq = new_seq_number
122122
db.session.flush()
123123

124-
def reorder_before(self: Reorderable, other: Reorderable) -> None:
124+
def reorder_before(self, other: Self) -> None:
125125
"""Reorder to be before another item's sequence number."""
126126
self.reorder_item(other, True)
127127

128-
def reorder_after(self: Reorderable, other: Reorderable) -> None:
128+
def reorder_after(self, other: Self) -> None:
129129
"""Reorder to be after another item's sequence number."""
130130
self.reorder_item(other, False)

funnel/static/css/app.css

+4-3
Original file line numberDiff line numberDiff line change
@@ -1690,9 +1690,10 @@ html {
16901690
}
16911691

16921692
body {
1693-
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu,
1694-
Cantarell, 'Helvetica Neue', Arial, sans-serif, 'Noto Sans Math',
1695-
'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
1693+
font-family:
1694+
-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell,
1695+
'Helvetica Neue', Arial, sans-serif, 'Noto Sans Math', 'Apple Color Emoji',
1696+
'Segoe UI Emoji', 'Segoe UI Symbol';
16961697
font-size: 14px;
16971698
font-weight: 400;
16981699
line-height: 1.5;

funnel/views/otp.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
from dataclasses import dataclass
66
from datetime import timedelta
7-
from typing import Any, Generic, TypeVar
7+
from typing import Any, Generic, Self, TypeVar
88

99
import phonenumbers
1010
from flask import current_app, flash, render_template, request, session, url_for
@@ -134,13 +134,13 @@ def __init_subclass__(cls, *args: Any, **kwargs: Any) -> None:
134134

135135
@classmethod
136136
def make(
137-
cls: type[OtpSessionType],
137+
cls,
138138
reason: str,
139139
user: OptionalAccountType,
140140
anchor: Anchor | None,
141141
phone: str | None = None,
142142
email: str | None = None,
143-
) -> OtpSessionType:
143+
) -> Self:
144144
"""
145145
Create an OTP for login and save it to cache and browser cookie session.
146146
@@ -172,7 +172,7 @@ def make(
172172
)
173173

174174
@classmethod
175-
def retrieve(cls: type[OtpSessionType], reason: str) -> OtpSessionType:
175+
def retrieve(cls, reason: str) -> Self:
176176
"""Retrieve an OTP from cache using the token in browser cookie session."""
177177
otp_token = session.get('otp')
178178
if not otp_token:

tests/conftest.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -492,7 +492,7 @@ def backup_and_apply_config(
492492
) -> None:
493493
if key in saved_config:
494494
pytest.fail(f"Duplicate mock for {app_name}.config[{key!r}]")
495-
if key in app_fixture.config: # noqa: SIM401
495+
if key in app_fixture.config:
496496
saved_config[key] = app_fixture.config[key]
497497
else:
498498
saved_config[key] = ... # Sentinel value

tests/unit/utils/md/conftest.py

+1-6
Original file line numberDiff line numberDiff line change
@@ -99,12 +99,7 @@ def load(cls) -> None:
9999
),
100100
)
101101
for md_configname, config in {
102-
**{
103-
p: None
104-
for p in config.get( # type: ignore[union-attr]
105-
'profiles', []
106-
)
107-
},
102+
**dict.fromkeys(config.get('profiles', [])),
108103
**config.get('custom_profiles', {}), # type: ignore[union-attr]
109104
}.items()
110105
}

0 commit comments

Comments
 (0)