feat: add PendingRewardDialog, RewardConfirmDialog, and TaskConfirmDialog components
All checks were successful
Gitea Actions Demo / build-and-push (push) Successful in 25s

- Implemented PendingRewardDialog for handling pending reward requests.
- Created RewardConfirmDialog for confirming reward redemption.
- Developed TaskConfirmDialog for task confirmation with child name display.

test: add unit tests for ChildView and ParentView components

- Added comprehensive tests for ChildView including task triggering and SSE event handling.
- Implemented tests for ParentView focusing on override modal and SSE event management.

test: add ScrollingList component tests

- Created tests for ScrollingList to verify item fetching, loading states, and custom item classes.
- Included tests for two-step click interactions and edit button display logic.
- Moved toward hashed passwords.
This commit is contained in:
2026-02-10 20:21:05 -05:00
parent 3dee8b80a2
commit 401c21ad82
45 changed files with 4353 additions and 441 deletions

View File

@@ -0,0 +1,22 @@
from events.types.payload import Payload
class ChildOverrideDeletedPayload(Payload):
def __init__(self, child_id: str, entity_id: str, entity_type: str):
super().__init__({
'child_id': child_id,
'entity_id': entity_id,
'entity_type': entity_type
})
@property
def child_id(self) -> str:
return self.get("child_id")
@property
def entity_id(self) -> str:
return self.get("entity_id")
@property
def entity_type(self) -> str:
return self.get("entity_type")

View File

@@ -0,0 +1,13 @@
from events.types.payload import Payload
from models.child_override import ChildOverride
class ChildOverrideSetPayload(Payload):
def __init__(self, override: ChildOverride):
super().__init__({
'override': override.to_dict()
})
@property
def override(self) -> dict:
return self.get("override")

View File

@@ -18,3 +18,6 @@ class EventType(Enum):
USER_DELETED = "user_deleted"
TRACKING_EVENT_CREATED = "tracking_event_created"
CHILD_OVERRIDE_SET = "child_override_set"
CHILD_OVERRIDE_DELETED = "child_override_deleted"