Files
securebit-chat/logo/pwa/windows11/Square44x44Logo.targetsize-60.png

5 lines
1.6 KiB
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<<:<3A><>r pHYs<0E><0E><01>+IDATx<54><78>ZilTU=<3D>Ngig<69>2t<32>Ж<EFBFBD>hE<68>-<2D>]"4<>T((VpK<10><><EFBFBD><EFBFBD>Ġ@]b<><0F><> TİI<C4B0>( "Re<11>ai<61><69>t<EFBFBD><74><EFBFBD>t<EFBFBD><74>z<EFBFBD><7A><EFBFBD>м}<7D><><EFBFBD>'<27>?<3F><>y<EFBFBD>}<7D><>{<7B>=:55<35>w<10>q<EFBFBD>a<EFBFBD>p<70><00><><EFBFBD><EFBFBD><12>O3`y<><15><><EFBFBD>e~<7E><>܎m<DC8E><6D>8W<38><0F> <0C><13> <1E><>9q(o<><18><>_<EFBFBD>(q:.6ta<EFBFBD>Y<0F>W<EFBFBD> ik%5#<23><17><><EFBFBD>,(kF<6B>i0<69><EFBFBD>B|<7C><>o<>L<EFBFBD><4C><17><>F<EFBFBD>;}ݚȥ:<3A><>F<><46>[P8ʄ<38><CA84>A<EFBFBD><41><EFBFBD> <0B><>d<1B><>h<EFBFBD><68><1B><>rƍӷ;U<>O<15><><EFBFBD>AXx<58><78><EFBFBD>O r<><72>(<28><>.<2E><<3C>`t\i
<EFBFBD>/<2F><><EFBFBD>K^tu+<2B><><EFBFBD><08>[ux<75>l<EFBFBD><6C><1A><>r<>:<3A><><EFBFBD><EFBFBD><EFBFBD>g$`<60>E/<2F><><EFBFBD>^<5E>ʞO<16><><EFBFBD>Lx<4C>n<EFBFBD>l<EFBFBD><6C><17><><D68A>[<5B>b 1<> <0B><>+3<><33><EFBFBD> <20>݃<EFBFBD>[<1D><>+<2B><>A<17><05><>xz<78>#tP<74><50>+\̘<><1D><12>K<EFBFBD>eE?<3F><>H3n<33><06><><EFBFBD><EFBFBD>o<EFBFBD><6F><EFBFBD><1F><11><>(<28>T<EFBFBD><54>yI<79><49>V_ogƈ<67><18>x<EFBFBD>}fu<><75><EFBFBD>p<EFBFBD><70><EFBFBD>&<26><>i<EFBFBD>x<EFBFBD>P33<33> O<>4⋅<34><E28B85>7[x<><78>f<EFBFBD><66><EFBFBD>1<EFBFBD>ye<79> <0A><><EFBFBD>m@<40>!<21><><EFBFBD><EFBFBD><EFBFBD><05>:<3A><>QD[<5B>( ᄯ+<2B><><EFBFBD><EFBFBD><EFBFBD>~<7E>Kt1q㬘1<E3AC98>1nMa"
<EFBFBD><EFBFBD>[<5B><><12>4ԀL<D480><4C><EFBFBD>*Th<54><68><EFBFBD>Ȱk@<40>dq<64><19>1<EFBFBD><31>`TR ƥ<>q<EFBFBD><71><EFBFBD>U<EFBFBD>%<25><15>ܦ<EFBFBD><DCA6>ۮ <20><>Ԃ<EFBFBD>N<EFBFBD>{<1F><><EFBFBD><EFBFBD><EFBFBD>첍$<24>@6<><04>6<EFBFBD>U.<2E>&<26>q<EFBFBD>Ì<EFBFBD>s<EFBFBD>XF<58><46>a<7F><61>?<3F><>w=<3D><><EFBFBD><EFBFBD><08><><EFBFBD>@<40><><<3C><12><>4ob<6F>}<7D><><02>.<>±u<C2B1>:B<><42><EFBFBD>nj<6E><EFBFBD>/<2F>fe<17>ٮ<EFBFBD>p<EFBFBD>G<EFBFBD><47>T p<><70>5.~<7E>y W<><57>G%Z<>.<2E><><EFBFBD>zg<7A>W0q <20><>]i <0C><>vy<76>6<04><>_.<18>YU6<55>@<40>l<EFBFBD> <0B>wI<><49>a`<60><>k<EFBFBD>p<EFBFBD>S<EFBFBD><53>o5]<5D>$d9<7F>CC<43><43> <12><>ԅzoHtfBk<42>Ɏe<C98E>Ns_ ^a<>"*<2A><v<>Ks-<2D>,kf<6B>~<7E><>p<EFBFBD>O!<21><><EFBFBD>kA<>*<2A> <1B>ȇ<EFBFBD><C887>H<EFBFBD>ԟ<EFBFBD><D49F><EFBFBD>i3<69>m<EFBFBD><6D><EFBFBD><EFBFBD><EFBFBD>z<EFBFBD><7A><EFBFBD><1B><><EFBFBD>t<EFBFBD>(<28>!5<1D><>1<EFBFBD>ʾBV<42><56><EFBFBD>S<EFBFBD>a<EFBFBD>%<25><>yDg-<2D><><EFBFBD><EFBFBD>qBXZ-A=<3D>85<38><35>:<3A>Em=<3D>=<3D>h<EFBFBD>כ8r<38><03><15><><EFBFBD><EFBFBD>f7r<>;/x<><78><10>IJ<49>o8<6F><38><13><1F>aO$v<><76><EFBFBD><EFBFBD>B<EFBFBD>ץ<EFBFBD>D<EFBFBD>b<EFBFBD><62>(0?<3F>d.,˳`|:<3A><><EFBFBD>\nG<6E>IJ<EFBFBD><C4B2><52><CB87>ط<<15><><EFBFBD>d=<3D><><EFBFBD>No<><6F>M<EFBFBD><4D><EFBFBD> <09><><EFBFBD><EFBFBD><EFBFBD>w/<2F><>fh {\46q<00>o<><15><>*<2A><>;ނY#MH<4D><48><EFBFBD>ݤ<EFBFBD><DDA4>m<EFBFBD>9<EFBFBD><39>c<17>2<EFBFBD><32>6<EFBFBD>vɚ[aъ<><D18A>k<EFBFBD>7KST7SF]v<14><><1E><><EFBFBD><06><><EFBFBD>9e<39>/<2F>>\A"<22><><EFBFBD>*<2A><>d<EFBFBD>Z<EFBFBD>%<25>M<EFBFBD><1C>K<EFBFBD>s<EFBFBD><73><EFBFBD><1F>Q<EFBFBD><1A><><EFBFBD>?<3F><>DrL<>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD>\<5C>@<40><>[$<24><><EFBFBD>[<5B>W<EFBFBD>E<>{<7B>|no<03>_<EFBFBD><5F><EFBFBD>E <0B>o<EFBFBD>H`Z'<27><> <0B><><EFBFBD>;<3B><02>P<EFBFBD><50><EFBFBD><EFBFBD><EFBFBD>AqYʊȲI#<23>I<EFBFBD>c<EFBFBD>T<EFBFBD>/P <0C><><EFBFBD>c<EFBFBD>n'<27><>+<2B>*M-<2D><>m<>Î%)LO <0C>~ <20>i_ByU'<27><><EFBFBD>]<5D><17>jmK<6D><4B><11>T<EFBFBD><14> <0B>i1di<64><69>+ѭb<D1AD><62><EFBFBD>}Zԉ_RV<52>O<19><>9<EFBFBD><39> J<><4A>8rm-ToL<6F><0E><><EFBFBD>N<EFBFBD><4E>2<EFBFBD><32>YI0<49><30>Y<EFBFBD>jw/p<><70>x<EFBFBD>@<40><>C<EFBFBD>Su<53><75><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>9\\<5C><0E><>ZG<5A><47>Z<EFBFBD><5A> <0A>6<EFBFBD><36>,bɮz<C9AE><7A><1A><><EFBFBD>N{}<7D><>٥$(<28>1<EFBFBD><31>K<>0 8<><38><EFBFBD>cڇikR<6B><52>>2<>}y<><79><EFBFBD><17><>/M<><4D><EFBFBD><EFBFBD>͆<><CD86><EFBFBD><EFBFBD><EFBFBD><01><>w<1C><>; <0F>١AIEND<4E>B`<60>