Files
securebit-chat/logo/pwa/ios/40.png

4 lines
790 B
Plaintext
Raw Normal View History

feat: Add comprehensive PWA support with offline functionality - Add manifest.json with full PWA configuration - Support for installation on all platforms (iOS, Android, Desktop) - Custom app icons (72x72 to 512x512) with maskable support - App shortcuts for quick actions (Create/Join Channel) - Protocol handlers for web+securebit:// links - Share target integration - Implement enhanced Service Worker (v4.0) - Smart caching strategies (cache-first, network-first, stale-while-revalidate) - Security-aware caching (excludes sensitive endpoints) - Background sync for failed requests - Offline fallbacks with custom error handling - Response cloning fixes and CORS handling - Add PWA Install Prompt Manager - Cross-platform install detection and prompts - iOS Safari specific installation guide - Smart dismissal logic with retry mechanisms - Install success notifications and user guidance - Persistent install preferences with localStorage - Implement comprehensive Offline Manager - IndexedDB for offline data persistence - Automatic message queuing and sync when online - Session state recovery after connection loss - WebRTC reconnection handling - Real-time connection status indicators - Offline guidance and help system - Add offline-first features - Message queue with priority and retry logic - Session data preservation during disconnection - Application state recovery - Background sync registration - Periodic cleanup of old offline data - Enhanced user experience - Connection status notifications - Offline mode guidance and help - Automatic sync notifications - Reconnection progress indicators - Platform-specific installation instructions This implementation ensures SecureBit.chat works seamlessly offline while maintaining security and providing a native app-like experience across all platforms.
2025-08-17 16:04:45 -04:00
<EFBFBD>PNG

IHDR((<00><><EFBFBD>m pHYs<0E><0E><01>+<02>IDATx<54><78><EFBFBD><EFBFBD>OAǟ<><C79F>w[<04>X<EFBFBD><1C>x{S<>oҘp<D298><70><10>7<EFBFBD>C<EFBFBD>M/<2F>̈́<EFBFBD>71)<29><> z=<3D><>0h<30><16><><EFBFBD><EFBFBD>ݰe<DDB0><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,I<>ɤ<EFBFBD>v<EFBFBD><76>g<EFBFBD><67>7<EFBFBD>m<EFBFBD>"<22><><1E>XM<58>s5ݪ<01>V<EFBFBD><01><><4E><1D><>ǫE<C7AB><45>zb<7A>5<EFBFBD><35><EFBFBD><EFBFBD>41<18>X[<5B><>T<EFBFBD><54>2k<32><6B><EFBFBD>ڠ<EFBFBD><1B><>?`<60><>8 <0A><><EFBFBD>d<EFBFBD><14>O<><4F>c<><63><EFBFBD>4<EFBFBD><34>L<EFBFBD><4C>;<3B><><EFBFBD><EFBFBD><EFBFBD>㗃<1F>d<EFBFBD>cj<63><6A><02>FN3\=|[<5B><>o -<2D>+<53>)S<>n<EFBFBD>w<EFBFBD><77>b<EFBFBD>Ý͇<C39D><CD87><EFBFBD>Cs<><73><EFBFBD>l^<5E><>R<EFBFBD><52><EFBFBD>a=~aw<61><77>lQ<6C><51>`<60>w:<3A><>y.X9 <16>8<EFBFBD><38>;Z<><5A><EFBFBD>-<2D><>p<EFBFBD><0E>(<28><>Ša<C28A>X<58> ;<3B><>VqO|<7C><>^<5E>.<2E><><EFBFBD>a<> e<><18> 0X<30><58>~<7E><><18>k<EFBFBD><6B><EFBFBD><EFBFBD><EFBFBD>t!<21><>nnQz<51>hWd<><64>Ju$&<26>,<2C>k%<25><>UE"<22>l<EFBFBD><6C><EFBFBD><EFBFBD>7<37>ײ<EFBFBD><D7B2><EFBFBD>9<EFBFBD>.<2E>Zb<5A>V<EFBFBD>C<EFBFBD>$<24><><EFBFBD>U<EFBFBD><55><1B><><EFBFBD><EFBFBD>e<EFBFBD><03><><EFBFBD> <20>+<2B>l<>$<05>p<17>,<2C>T<EFBFBD>U<EFBFBD><55>_:<<3C> <0B>=ӶLR@<40>,rZ<72>,a<>D<19><>K頞<4B>~q <0A>&<26>nSEJ<45>(Q<><51><EFBFBD>9;Q<>zwŁ[<5B>=<3D>r<EFBFBD>K<EFBFBD><4B><EFBFBD>"<22>*tD<74><44>{i<><69><EFBFBD>D<><44>~𑞎<>Ղ<EFBFBD><D582>nZl<><6C><EFBFBD>Z<EFBFBD>»<EFBFBD><12>^lS<6C>Z<EFBFBD><5A>^<5E>ܤ-<2D><>,l<>H<EFBFBD><48>A
<EFBFBD> <12>:;<12>z<EFBFBD><02><>l]!LT`7<><37>-<2D><><EFBFBD><EFBFBD>6<EFBFBD><36><EFBFBD>fSZK<5A><4B>AL<41>3~<7E>ol<6F>wK<1F><>i<EFBFBD>sS<73>]5<><35><EFBFBD><EFBFBD><EFBFBD> 3<>C<>r<EFBFBD>#S<><53><EFBFBD>.<2E><><00>h<EFBFBD>H7j<>3n|<7C>ׇ%<25>0w<30>2<1D>w?<3F><01>V<EFBFBD><07>ٲn<>ǼbIEND<4E>B`<60>