-
Notifications
You must be signed in to change notification settings - Fork 0
First release on master through PR #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Changes from all commits
Commits
Show all changes
35 commits
Select commit
Hold shift + click to select a range
2fa4a34
fix: eliminated auth flicker and layout jump on Ask page v1.1.44
pavanpaik f9b8038
feat: redesigned guidance chat to use premium modal interface v1.1.45
pavanpaik 2b18016
style: refined modal to premium floating popover v1.1.46
pavanpaik 4025b66
feat: implemented iOS-style chat sent feedback and auto-scroll v1.1.47
pavanpaik fe97358
feat: updated labels to Ongoing and Archived for better seeker intuit…
pavanpaik 7d86661
feat: improved delivered feedback with premium animation v1.1.49
pavanpaik a40da8f
feat: implemented iOS-style unread indicator for answered tickets v1.…
pavanpaik b0096ee
feat: enhanced archive inquiry button prominence with icon v1.1.51
pavanpaik 4387fd9
feat: implemented persistent read state for answered inquiries v1.1.52
pavanpaik a47ce7f
feat: implemented admin-closed feedback with red dot dot in ongoing t…
pavanpaik a258aa1
feat: enhanced unread guidance prominence and fixed missing archive b…
pavanpaik 1add193
fix: red dot on finished inquiries disappears after reading v1.1.56
pavanpaik 8b39884
style: CLOSED items now use blue theme to match regular updates v1.1.57
pavanpaik 83ff278
fix: added prisma db push to build script for vercel sync v1.1.58
pavanpaik a4a4b69
feat: implemented auto-archive for read closed inquiries and removed …
pavanpaik 3bfc42a
feat: implement global inquiry unread bubbles and sticky archival logic
pavanpaik 2dd11a5
feat: add PWA app icon badging for unread counts
pavanpaik 9096191
feat: implement official PWA Service Worker for offline support and a…
pavanpaik 7dc5a4b
style: update PWA assets with premium ochre/saffron branding
pavanpaik 23db3b4
style: enhance mobile PWA native feel with scroll locking and status …
pavanpaik 1177f86
feat: reach Platinum PWA standard with visibility polling, offline fa…
pavanpaik 324d5fc
style: replace PWA icons with custom Recraft generated premium icon
pavanpaik 4e35f1f
style: fix PWA icon logic for clean rounded corners and sharp favicon…
pavanpaik 0fc9b92
style: rename PWA short name and metadata to 'Sai Rahasya'
pavanpaik bafb390
feat: add native lock-screen media controls for audio player
pavanpaik 0b4ccdb
fix: resolve persistent loading spinner in audio player
pavanpaik 16a80d5
fix: ensure pause button appears when audio plays by relying on 'play…
pavanpaik d8b20c7
fix: restore loading state clearing and properly stop audio on close
pavanpaik f9ec2ed
revert: restore working audio player before Media Session API changes
pavanpaik 1770038
fix: restore fully working audio player with proper close functionality
pavanpaik d67f3c6
style: update app icon with new a0.dev generated design
pavanpaik c0a4f2e
style: update favicon to use new PNG icon for consistency
pavanpaik bd95438
style: unify branding by using app icon in header and sidebar
pavanpaik 175d868
style: match mobile header logo and title size to desktop sidebar
pavanpaik e02ce44
fix: remove success toast notification in favor of implicit feedback
pavanpaik File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,7 +1,11 @@ | ||
| import type { NextConfig } from "next"; | ||
|
|
||
| const nextConfig: NextConfig = { | ||
| /* config options here */ | ||
| experimental: { | ||
| serverActions: { | ||
| bodySizeLimit: '2mb', | ||
| }, | ||
| }, | ||
| }; | ||
|
|
||
| export default nextConfig; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,84 @@ | ||
| <!DOCTYPE html> | ||
| <html lang="en"> | ||
| <head> | ||
| <meta charset="UTF-8"> | ||
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | ||
| <title>Offline | Sai Leela Rahasya</title> | ||
| <style> | ||
| :root { | ||
| --ochre: #cc7722; | ||
| --background: #ffffff; | ||
| --text: #1f2937; | ||
| } | ||
| body { | ||
| margin: 0; | ||
| padding: 0; | ||
| display: flex; | ||
| flex-direction: column; | ||
| align-items: center; | ||
| justify-content: center; | ||
| min-height: 100vh; | ||
| font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; | ||
| background-color: var(--background); | ||
| color: var(--text); | ||
| text-align: center; | ||
| padding: 20px; | ||
| } | ||
| .icon-container { | ||
| width: 80px; | ||
| height: 80px; | ||
| background: var(--ochre); | ||
| border-radius: 20px; | ||
| display: flex; | ||
| align-items: center; | ||
| justify-content: center; | ||
| margin-bottom: 24px; | ||
| box-shadow: 0 10px 25px -5px rgba(204, 119, 34, 0.4); | ||
| } | ||
| svg { | ||
| width: 40px; | ||
| height: 40px; | ||
| color: white; | ||
| } | ||
| h1 { | ||
| font-size: 24px; | ||
| font-weight: 800; | ||
| margin-bottom: 8px; | ||
| color: #111827; | ||
| } | ||
| p { | ||
| font-size: 16px; | ||
| color: #6b7280; | ||
| max-width: 280px; | ||
| line-height: 1.5; | ||
| margin-bottom: 32px; | ||
| } | ||
| .retry-button { | ||
| background-color: var(--ochre); | ||
| color: white; | ||
| border: none; | ||
| padding: 12px 24px; | ||
| border-radius: 12px; | ||
| font-weight: 600; | ||
| cursor: pointer; | ||
| transition: all 0.2s; | ||
| text-transform: uppercase; | ||
| letter-spacing: 0.05em; | ||
| font-size: 14px; | ||
| } | ||
| .retry-button:active { | ||
| transform: scale(0.95); | ||
| } | ||
| </style> | ||
| </head> | ||
| <body> | ||
| <div class="icon-container"> | ||
| <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"> | ||
| <path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m9-.75a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9 3.75h.008v.008H12v-.008Z" /> | ||
| </svg> | ||
| </div> | ||
| <h1>Seek Grace in Silence</h1> | ||
| <p>It seems your connection is resting. Please check your network to continue your spiritual journey.</p> | ||
| <button class="retry-button" onclick="window.location.reload()">Retry Connection</button> | ||
| </body> | ||
| </html> |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,68 @@ | ||
| const CACHE_NAME = 'slr-cache-v1'; | ||
|
|
||
| // Assets to cache immediately | ||
| const PRECACHE_ASSETS = [ | ||
| '/', | ||
| '/manifest.webmanifest', | ||
| '/icon-192.png', | ||
| '/icon-512.png', | ||
| '/offline.html' | ||
| ]; | ||
|
|
||
| self.addEventListener('install', (event) => { | ||
| event.waitUntil( | ||
| caches.open(CACHE_NAME).then((cache) => { | ||
| return cache.addAll(PRECACHE_ASSETS); | ||
| }) | ||
| ); | ||
| self.skipWaiting(); | ||
| }); | ||
|
|
||
| self.addEventListener('activate', (event) => { | ||
| event.waitUntil( | ||
| caches.keys().then((cacheNames) => { | ||
| return Promise.all( | ||
| cacheNames.map((cacheName) => { | ||
| if (cacheName !== CACHE_NAME) { | ||
| return caches.delete(cacheName); | ||
| } | ||
| }) | ||
| ); | ||
| }) | ||
| ); | ||
| self.clients.claim(); | ||
| }); | ||
|
|
||
| self.addEventListener('fetch', (event) => { | ||
| // Skip cross-origin requests (like Clerk or Neon) | ||
| if (!event.request.url.startsWith(self.location.origin)) return; | ||
|
|
||
| // Special handling for navigation requests (full page loads) | ||
| if (event.request.mode === 'navigate') { | ||
| event.respondWith( | ||
| fetch(event.request).catch(() => { | ||
| return caches.match('/offline.html'); | ||
| }) | ||
| ); | ||
| return; | ||
| } | ||
|
|
||
| // Stale-while-revalidate strategy for assets | ||
| event.respondWith( | ||
| caches.open(CACHE_NAME).then((cache) => { | ||
| return cache.match(event.request).then((response) => { | ||
| const fetchPromise = fetch(event.request).then((networkResponse) => { | ||
| // Cache the new response if it's a valid GET request | ||
| if (event.request.method === 'GET' && networkResponse.status === 200) { | ||
| cache.put(event.request, networkResponse.clone()); | ||
| } | ||
| return networkResponse; | ||
| }).catch(() => { | ||
| // If network fails and no cache, returns the cached response if available | ||
| return response; | ||
| }); | ||
| return response || fetchPromise; | ||
| }); | ||
| }) | ||
| ); | ||
| }); | ||
|
coderabbitai[bot] marked this conversation as resolved.
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,4 +1,4 @@ | ||
| { | ||
| "version": "1.1.43", | ||
| "buildTime": "2025-12-19T09:25:00.000Z" | ||
| "version": "1.1.59", | ||
| "buildTime": "2025-12-19T12:15:00.000Z" | ||
| } |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Critical: Remove
--accept-data-lossflag from production build script.The
--accept-data-lossflag in the build script will drop data during destructive schema changes without confirmation. This is extremely dangerous for production deployments and CI/CD pipelines.Why this is critical:
Recommendations:
--accept-data-lossfrom the build scriptprisma migrate deployfor production builds (applies migration history)prisma db push --accept-data-lossonly in local dev scripts🔎 Proposed fix
For local development, add a separate script:
+ "dev:push": "prisma db push --accept-data-loss",📝 Committable suggestion
🤖 Prompt for AI Agents