Add push notification functionality with tests and digest scheduler
All checks were successful
Chore App Build, Test, and Push Docker Images / build-and-push (push) Successful in 2m14s
All checks were successful
Chore App Build, Test, and Push Docker Images / build-and-push (push) Successful in 2m14s
- Implemented push subscription API with tests for subscribing and unsubscribing users. - Created web push notification tests triggered by child actions. - Added digest scheduler to send email digests to users at 9 PM local time. - Developed utility functions for creating and validating digest action tokens. - Integrated web push sender to handle sending notifications to users. - Added service worker for handling push notifications in the frontend. - Created a push opt-in component for user notification preferences. - Implemented tests for the push opt-in component to ensure correct behavior. - Updated frontend services to manage push subscriptions and permissions.
This commit is contained in:
@@ -13,6 +13,7 @@ vi.mock('@/stores/auth', () => ({
|
||||
isUserLoggedIn: isUserLoggedInMock,
|
||||
isParentAuthenticated: isParentAuthenticatedMock,
|
||||
enforceParentExpiry: vi.fn(),
|
||||
setPendingReturnUrl: vi.fn(),
|
||||
}))
|
||||
|
||||
// Import router AFTER mocks are in place
|
||||
|
||||
@@ -29,6 +29,7 @@ import {
|
||||
isParentAuthenticated,
|
||||
isAuthReady,
|
||||
enforceParentExpiry,
|
||||
setPendingReturnUrl,
|
||||
} from '../stores/auth'
|
||||
import ParentPinSetup from '@/components/auth/ParentPinSetup.vue'
|
||||
import LandingPage from '@/components/landing/LandingPage.vue'
|
||||
@@ -303,6 +304,9 @@ router.beforeEach(async (to, from, next) => {
|
||||
if (isParentAuthenticated.value) {
|
||||
return next('/parent')
|
||||
} else {
|
||||
if (to.path.startsWith('/parent')) {
|
||||
setPendingReturnUrl(to.fullPath)
|
||||
}
|
||||
return next('/child')
|
||||
}
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user