From a5a69062a524ecd94c73f660faba8d8661ef40a1 Mon Sep 17 00:00:00 2001 From: Harry <109690906+harry-signal@users.noreply.github.com> Date: Wed, 19 Oct 2022 12:29:15 -0700 Subject: [PATCH] Use lotties in story viewer NUX overlay --- Signal.xcodeproj/project.pbxproj | 12 +++ .../Contents.json | 12 --- .../story_viewer_onboarding_1.pdf | Bin 4045 -> 0 bytes .../Contents.json | 12 --- .../story_viewer_onboarding_2.pdf | Bin 3205 -> 0 bytes .../Contents.json | 12 --- .../story_viewer_onboarding_3.pdf | Bin 3700 -> 0 bytes Signal/Lottie/story_viewer_onboarding_1.json | 1 + Signal/Lottie/story_viewer_onboarding_2.json | 1 + Signal/Lottie/story_viewer_onboarding_3.json | 1 + .../StoryContextOnboardingOverlayView.swift | 72 ++++++++++++------ 11 files changed, 65 insertions(+), 58 deletions(-) delete mode 100644 Signal/Images.xcassets/story_viewer_onboarding_1.imageset/Contents.json delete mode 100644 Signal/Images.xcassets/story_viewer_onboarding_1.imageset/story_viewer_onboarding_1.pdf delete mode 100644 Signal/Images.xcassets/story_viewer_onboarding_2.imageset/Contents.json delete mode 100644 Signal/Images.xcassets/story_viewer_onboarding_2.imageset/story_viewer_onboarding_2.pdf delete mode 100644 Signal/Images.xcassets/story_viewer_onboarding_3.imageset/Contents.json delete mode 100644 Signal/Images.xcassets/story_viewer_onboarding_3.imageset/story_viewer_onboarding_3.pdf create mode 100644 Signal/Lottie/story_viewer_onboarding_1.json create mode 100644 Signal/Lottie/story_viewer_onboarding_2.json create mode 100644 Signal/Lottie/story_viewer_onboarding_3.json diff --git a/Signal.xcodeproj/project.pbxproj b/Signal.xcodeproj/project.pbxproj index e8db9847e6..5da3763951 100644 --- a/Signal.xcodeproj/project.pbxproj +++ b/Signal.xcodeproj/project.pbxproj @@ -772,6 +772,9 @@ 661396AD28BE74DC00E0C4DF /* ChainedPromise.swift in Sources */ = {isa = PBXBuildFile; fileRef = 661396AC28BE74DC00E0C4DF /* ChainedPromise.swift */; }; 661396AF28BE881E00E0C4DF /* ChainedPromiseTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 661396AE28BE881E00E0C4DF /* ChainedPromiseTest.swift */; }; 661602A428BEB94400C1932D /* StoryListDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 661602A328BEB94400C1932D /* StoryListDataSource.swift */; }; + 66586D3729005A1B00DDA9B9 /* story_viewer_onboarding_2.json in Resources */ = {isa = PBXBuildFile; fileRef = 66586D3429005A1B00DDA9B9 /* story_viewer_onboarding_2.json */; }; + 66586D3829005A1B00DDA9B9 /* story_viewer_onboarding_1.json in Resources */ = {isa = PBXBuildFile; fileRef = 66586D3529005A1B00DDA9B9 /* story_viewer_onboarding_1.json */; }; + 66586D3929005A1B00DDA9B9 /* story_viewer_onboarding_3.json in Resources */ = {isa = PBXBuildFile; fileRef = 66586D3629005A1B00DDA9B9 /* story_viewer_onboarding_3.json */; }; 667E90D028E799D1005FE603 /* MyStorySettingsLearnMoreSheetViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 667E90CF28E799D1005FE603 /* MyStorySettingsLearnMoreSheetViewController.swift */; }; 667EDE6428F8D6B7001FB487 /* YYAnimatedImage+Duration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 667EDE6328F8D6B7001FB487 /* YYAnimatedImage+Duration.swift */; }; 667EDE6628FA0372001FB487 /* StoryBadgeCountManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 667EDE6528FA0372001FB487 /* StoryBadgeCountManager.swift */; }; @@ -3026,6 +3029,9 @@ 661396AE28BE881E00E0C4DF /* ChainedPromiseTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChainedPromiseTest.swift; sourceTree = ""; }; 661602A328BEB94400C1932D /* StoryListDataSource.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StoryListDataSource.swift; sourceTree = ""; }; 6657FDE7B91C2845BB3BEAB5 /* Pods_SignalShareExtension.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_SignalShareExtension.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 66586D3429005A1B00DDA9B9 /* story_viewer_onboarding_2.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = story_viewer_onboarding_2.json; sourceTree = ""; }; + 66586D3529005A1B00DDA9B9 /* story_viewer_onboarding_1.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = story_viewer_onboarding_1.json; sourceTree = ""; }; + 66586D3629005A1B00DDA9B9 /* story_viewer_onboarding_3.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = story_viewer_onboarding_3.json; sourceTree = ""; }; 667E90CF28E799D1005FE603 /* MyStorySettingsLearnMoreSheetViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MyStorySettingsLearnMoreSheetViewController.swift; sourceTree = ""; }; 667EDE6328F8D6B7001FB487 /* YYAnimatedImage+Duration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "YYAnimatedImage+Duration.swift"; sourceTree = ""; }; 667EDE6528FA0372001FB487 /* StoryBadgeCountManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StoryBadgeCountManager.swift; sourceTree = ""; }; @@ -6466,6 +6472,9 @@ 880C0FF6233D3F7C00386FB8 /* playPauseButton.json */, 346EFC3825FFDC6900F493C7 /* restore-dark.json */, 346EFC3725FFDC6900F493C7 /* restore.json */, + 66586D3529005A1B00DDA9B9 /* story_viewer_onboarding_1.json */, + 66586D3429005A1B00DDA9B9 /* story_viewer_onboarding_2.json */, + 66586D3629005A1B00DDA9B9 /* story_viewer_onboarding_3.json */, 4C0CF6F92386295400C9F818 /* tap_to_focus.json */, 887CD4862473587300FDD265 /* transfer.json */, 346EFC3925FFDC6900F493C7 /* update-pin-dark.json */, @@ -9102,6 +9111,9 @@ 34C3C78F2040A4F70000134C /* sonarping.mp3 in Resources */, 88928A44263A2781009C9B30 /* state-change_confirm-down.caf in Resources */, 88928A45263A2781009C9B30 /* state-change_confirm-up.caf in Resources */, + 66586D3829005A1B00DDA9B9 /* story_viewer_onboarding_1.json in Resources */, + 66586D3729005A1B00DDA9B9 /* story_viewer_onboarding_2.json in Resources */, + 66586D3929005A1B00DDA9B9 /* story_viewer_onboarding_3.json in Resources */, 45B74A752044AAB600CD42F8 /* synth-quiet.aifc in Resources */, 45B74A8B2044AAB600CD42F8 /* synth.aifc in Resources */, 4C0CF6FA2386295400C9F818 /* tap_to_focus.json in Resources */, diff --git a/Signal/Images.xcassets/story_viewer_onboarding_1.imageset/Contents.json b/Signal/Images.xcassets/story_viewer_onboarding_1.imageset/Contents.json deleted file mode 100644 index 08a10c9164..0000000000 --- a/Signal/Images.xcassets/story_viewer_onboarding_1.imageset/Contents.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "images" : [ - { - "filename" : "story_viewer_onboarding_1.pdf", - "idiom" : "universal" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/Signal/Images.xcassets/story_viewer_onboarding_1.imageset/story_viewer_onboarding_1.pdf b/Signal/Images.xcassets/story_viewer_onboarding_1.imageset/story_viewer_onboarding_1.pdf deleted file mode 100644 index f68199fddfcc78342236f880e184b5353099c31d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4045 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 diff --git a/Signal/Images.xcassets/story_viewer_onboarding_2.imageset/Contents.json b/Signal/Images.xcassets/story_viewer_onboarding_2.imageset/Contents.json deleted file mode 100644 index ebd1e80b99..0000000000 --- a/Signal/Images.xcassets/story_viewer_onboarding_2.imageset/Contents.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "images" : [ - { - "filename" : "story_viewer_onboarding_2.pdf", - "idiom" : "universal" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/Signal/Images.xcassets/story_viewer_onboarding_2.imageset/story_viewer_onboarding_2.pdf b/Signal/Images.xcassets/story_viewer_onboarding_2.imageset/story_viewer_onboarding_2.pdf deleted file mode 100644 index fc659cf2ee5189f0f9a02639c75d007123263023..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3205 zcmcIm2~-qE8WwpjWCTG_K?1vt907%y?w%XDVL0WG0aOIcFw?*w%-~D|BLYg$$6^o# zClUyY;Z*S24VZu;xS#<{JXn#iY9IvSD3=&yUBKv84`;xA``%`^UsqT6SAW-kR@GT!K94LltZ3zHe6dnvdAc~62uFx9aL?*M=XF4o!2R(UMDgcEVUQVwD0TYtB$x;X)6PY} z2NMW+&SDv~8$d8brxACUQr1N*!hx_9B0@M5FL#MJA%2m$Ga8iWoCjQ>SHcrX;|Wdt z{d2GUi#Vh z@WV67%;{B%)}WNe!zN!|FNoMUQOl%EG^PBY*~?oUm(B_`y5!K;J@B4R$r>M*wybS2 z{TXk0qUrL`6ty;&i+Co^7N`9xM`D<5UB z=gN`@;!OIKLI16#&xY7URv?NDfgx}c@4s3G#PE`GL5QXC@0b1mtX`0r#RbfnFBmKb zS&=~>L^kj%!)nkb?v?WWRrf6 zgZ(IESkuSNNc~>R=1+S~>$W$m=r#{qD-ui-)>Qic^y6BSPF9H8vEiJkbDK9BbeGeD z6RWOtCWf#{boC<1#XtA#*j~39%Q+de=7`<&&wfLh-&Wk{HLPv0vSd(p>y92Q6LoO? z_OyRN>s+2iWw2(`h%nH(G%9`j@AJ5@O(}D>G(ijd%>Q*kBlCO9LV^OlW5U?$iuSG# zNe@w!^^yz>l7F}Z3$(+bd)=z{Gh!WrDin^o*{NYW5{~25gHNx$ymk8EoAU=#Mkb~Y z-h6o0;pl^=v1#$->xzGL4Skh2@q8-WXJGo(i{OabPinpv^$$-4n-r>;zZsqK>Td1p zH@wt0Ql~p&x|93i-z_Kps&_tJFInd8ZG1mpRDJS3`KzHvwFX^`SJ@k)^qPgTkGoM$Ad5RoyKyl|7qv1^I?m- z^`W$nWL4Q>I%RPCRB!2PNs7GPKI`iu*RmRi&E!$h_@T=o&Z|5ejEmN_c!s~n z_s(=uiyW#7FV*V$v^}JwVLV&bH~6ToFfMb?mIpkq#+`ZUn$z`UPXoi+c)#^~hP5}z z@<_Y#o5$q)ZU&#TZ1<~vVVhPj3yVp7qPQ^i(Nk1Cxj|>MRi%lF&+qj{(>3JWn7FnV zP>$$3dk>B1#1WUllpgh!oD;Us`=HUp(h`n-=G&Ij7xTY)eKzAw>gPGz3f!ZQb*{Ck zQL*hZw}-X=xP4%ss;8P<%_HKtH{*_K2&dKY7j;e3lNM&GXEZ`@JUQE05^^|6Zk5@V z6udIWE-f{?{#HetK0RO4QB;{#Yju~^(m=Criplmj>l@Q=;`QcP@3Jw~wDG!97IA0N zui#nqO3QH$n%Zoj&^?lJ;VPmR^=PX+Crs^O%>{T26LFq6>4e>q2ednuOlD{pob&UA z>d+0D1uu2T#U%l23&UF;y)9GQ*E`1r~a6og0VI~#yL_@$k40<{YqoAjPZxqPP_W&etlm%o!W71|D zz=%1hPGAhoO*F=TnxD`OD5n71l z;;<|xG&6y9;o-bkag@?wg0x9zY1%?EWD+cr1P(kV2^c+lK@2*bN{1q$Sq!DJKthNM z63t;S3P{~j40#6z6WLnwFG2;iv;?Cu!I`@RV}GDs!11 z2$i<%Uz7?j$50js@2_n^X|!ebp-gm<94_GrV=;-6VseGa7!hZJ6$FUIprna>&9Dbg eQ6#8bqO6q!Rf_W@xH2;+lgTETnQ{EwNdE%w4=FzY diff --git a/Signal/Images.xcassets/story_viewer_onboarding_3.imageset/Contents.json b/Signal/Images.xcassets/story_viewer_onboarding_3.imageset/Contents.json deleted file mode 100644 index 96da58a971..0000000000 --- a/Signal/Images.xcassets/story_viewer_onboarding_3.imageset/Contents.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "images" : [ - { - "filename" : "story_viewer_onboarding_3.pdf", - "idiom" : "universal" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/Signal/Images.xcassets/story_viewer_onboarding_3.imageset/story_viewer_onboarding_3.pdf b/Signal/Images.xcassets/story_viewer_onboarding_3.imageset/story_viewer_onboarding_3.pdf deleted file mode 100644 index 4d020a1d9d2b6cd1793a2e8049aef4cfd42e1a4d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3700 zcmb7H2{=@38%EYaB9zvHMo7$xv1S`0#n>wA7{kn9hFMS_qU=&A!Y5yg-A@}K`N)=R zAC*$czGNvW(ntLNIimXOyRQHG&voAOp7%b_^*qn}oclc2ec)Ec`29##EDT=uwqyy0 z0T2Mgod(m<0n`qW>0WFKfCV7}3;+N%Jk^IyW`eU1kxe!xlNcUkn4TVt#b%O;zObOo zkfZG#&RCJ&aixxJv6yootH$~6xhIrdQK1|7YUt>phclN#awH6uFS9N;+5DU&Y>Ur6n;;E0_)1taJ#wsnvo}Q#XQ@!J(=i1Dg z3DDhm*kNB~S$ht#ljc%ClW@GXsLzWx$mwBt*k45*y+wIvrkd3&f*E01A%X93+FOR+ zYl$_~r8@3(Dj(#Q{uKLhwq{O?C+yFc+fP1r`CXz+rY0!MyT;0C!r$+n+VXwTe~r)r z7?{c-~p?WS?Qj9)Ql(z~M4+Q`OF`IM&6(6C^ZZlXT3cCZS3Dv23X7iQjj; zAq~*7g~H1510ezieZ;FX2Tpp$iTX^k9GYD{eW})Yq%70tMAjP&!O?pGXdRM}TEOs_ z281iKo_+9p@oajoG;#rZc!FpfrM&}svrfK$}eK%*1_QW(L z8x@tbCOP*z#DxS73v4&P`Wsy9?4;r*AoYe%ISHv8M?a%cyg6Z;xJE?pK4+LTQ5;}J z%}G}6kWq==7Eejpg5^z0*s~?-%I#_FA@BGYYb%{|p~~iVX-xTE8hjUdZw`L}zY{5L z-)}B`obCac9&Qzw0Z!}OwtMKpt6Ma&to<>Ny)E zKg7S?DD9%Cp#AyQ>n{~vxIeHIbfjKj;_;hgl@va8mbR1vhIM+GTJ^M#DcZ1*37^W^ zL_?9*p?1Y?d52D61Fq^};UVhn`flO7?i&Y@&975}&qT|cl^WLz0P*rYG5WH~`H==n z&MMw}JT^8_M|pHTId!~qJIv)QXi8ybk9_Q+UZqGh&)ZK}*(+Wu3Og*QOpz+jl^3K< zb)@FGl*>8UNyu_%Ur@N)#TIL19!uuO2cC7RjNl1^nWJ?hb{m`aP|V-G7!vl?a=9xVCS%cu&t#5VRT-o%+olB^U%L3EsQzZW>`=BCS;*r{Tky?c zLa9~RzoU1Bcf%hXXQ9rvE+ zJq7m(yHcaWR2OTR1ZUNDT>I0{GI=3^jeY?Kr^QdCs(4=*TKmdFl$Giz8(2sqc6Ic3yyEIqifdst%p&8~2@F6C`ioH(z; z=f^^;^c^sPN&&BE%jn|~jAeZ6+4ozD8-ojr_w-ttYEU^+@qdFL&~2^NA}KbZNrV@(;NO2QR=#hE~3;9wH?a$QsuXSVR6LCcIVh)uQVDi zG&}Y9{VQe)?ZFvD?N~)S-&+Vz@t1UDnnP%>*gpR3?!8(S;!2DLg@%{7a^@z z&czF@zAw_}wM1TG`}LrujXlH9boi+?cYJ4+hg5u*-UL*~LquIwX1P7jr!+#dF*?DGfB!Lzd~? z2D61(;n!*?JdvlC6<-R^oO%3P#ixX)UMUnw%HYSzo$BHDHk2M%mi(BWf%WHAKuKlX zdmm_qKHpSTpsC-zJX3k*h@uTJ^^_D|-~ZUAqNtK-TUxJSY0$gDOpI4Fd%{<4**|Nv zrZxK%w?lt*6pT#wSd$3g9V9LwMFGvAra&PyP>=z%M1RvBt7^j}h;3@a29*Y&qXPlp zp+-c23qZ}t06+q2BqDeP^#}Oi>s9UO5qBDy#9p-tQU}x_8n68 zWimK^KcxFL!YaDH0~;_dlSpUzL6Jx&*5QKyo5>-suZ%z|V{!nML?)OTLg3o|2xJz6 z!z7Ve08}f&5Bq|)3f1rj-KP01t$)&OP&L1%w^lSLjG7I{oxNHWJcH@GiWvU$=D%m6 zv7X5{8R(m+eK-Os60ww7hmG`~{+vYeIXL9dR`kXsKhQwsGoEkNmkA*Q;HdIkn~S=ML=C z^4FPrJfVoWS@^2PWBaADst6L#d<7@|;DrpAg=Yh&-c^S&)F$>X^YH0&M1CbXRQ`36 zW7OCA2UY9qds?mT|H<+1Jcby${=UESn6>KEg6hEn`3g~;@Qte+h}J(42KR#lD<;E( zLjsk(B8f<4G61A1Qe71RC{oyLKbDpn_@RNQ7nA5mp^{jt45pWo(rO?hQ1`PLOh5;3 zg2y8e7#sqjZUPQN1VRH1&d@-D_Xu#tA`mEWMuTeR{XX3Bw}5w(t{%L;V^9hxo-G8u6IanX4VfhI*0=?H6hp1O@|S7F4&dJ@6pilL0{NT5V4(Hj&9*Ef5-w1Aj8%CP(nF F{{V<6w6_2N diff --git a/Signal/Lottie/story_viewer_onboarding_1.json b/Signal/Lottie/story_viewer_onboarding_1.json new file mode 100644 index 0000000000..0f9bbfbc05 --- /dev/null +++ b/Signal/Lottie/story_viewer_onboarding_1.json @@ -0,0 +1 @@ +{"v":"4.8.0","meta":{"g":"LottieFiles AE 3.0.2","a":"","k":"","d":"","tc":""},"fr":60,"ip":0,"op":60,"w":720,"h":720,"nm":"Tap to advance","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.929]},"o":{"x":[0.167],"y":[0.167]},"t":0,"s":[0]},{"i":{"x":[0.833],"y":[-3]},"o":{"x":[0.167],"y":[-12]},"t":3,"s":[-18]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.04]},"t":31,"s":[-18]},{"t":36,"s":[0]}],"ix":10},"p":{"a":0,"k":[360,362,0],"ix":2},"a":{"a":0,"k":[280,280,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.833,0.833,0.833],"y":[0.978,0.978,1]},"o":{"x":[0.167,0.167,0.167],"y":[0.167,0.167,0]},"t":0,"s":[100,100,100]},{"i":{"x":[0.833,0.833,0.833],"y":[-4.6,-4.6,1]},"o":{"x":[0.167,0.167,0.167],"y":[-6.087,-6.087,0]},"t":3,"s":[70,70,100]},{"i":{"x":[0.833,0.833,0.833],"y":[0.833,0.833,1]},"o":{"x":[0.167,0.167,0.167],"y":[0.033,0.033,0]},"t":31,"s":[70,70,100]},{"t":36,"s":[100,100,100]}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.057,3.999],[1.477,3.717],[2.787,2.869],[3.672,1.584],[3.999,0.058],[3.716,-1.477],[2.868,-2.786],[1.585,-3.672],[0,0],[0,0],[8.339,57.822],[-3.151,-31.623],[-126.535,-47.237],[-15.694,36.81],[0,0],[0,0],[2.983,7.506],[7.417,3.198],[7.505,-2.982],[3.198,-7.417]],"o":[[0,0],[1.584,-3.672],[0.059,-3.999],[-1.477,-3.716],[-2.786,-2.868],[-3.673,-1.583],[-3.998,-0.058],[-3.716,1.476],[-2.868,2.787],[0,0],[0,0],[0,0],[-5.851,-43.179],[7.985,132.183],[126.536,47.237],[15.694,-36.809],[0,0],[3.198,-7.416],[-2.983,-7.505],[-7.416,-3.198],[-7.506,2.984],[0,0]],"v":[[-11.421,-17.168],[68.267,-203.833],[70.753,-215.452],[68.604,-227.138],[62.146,-237.112],[52.364,-243.855],[40.744,-246.341],[29.059,-244.191],[19.085,-237.734],[12.341,-227.951],[-67.549,-41.38],[-87.737,1.914],[-109.101,-117.876],[-160.173,-117.176],[-49.049,199.162],[131.863,111.915],[168.039,28.027],[172.265,18.965],[172.601,-4.34],[156.36,-21.057],[133.056,-21.394],[116.339,-5.152]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":26,"ix":5},"lc":2,"lj":2,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[273.321,296.194],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[3.01,7.495],[7.429,3.171],[7.495,-3.011],[3.172,-7.428]],"o":[[0,0],[3.172,-7.428],[-3.011,-7.496],[-7.429,-3.172],[-7.495,3.01],[0,0]],"v":[[-5.679,58.881],[26.379,-15.651],[26.631,-38.959],[10.327,-55.618],[-12.981,-55.87],[-29.641,-39.567]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":26,"ix":5},"lc":2,"lj":2,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[375.5,277.334],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2","np":2,"cix":2,"bm":0,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.058,3.998],[1.477,3.717],[2.787,2.867],[3.672,1.584],[3.998,0.058],[3.716,-1.477],[2.869,-2.786],[1.584,-3.672]],"o":[[0,0],[1.584,-3.672],[0.057,-3.999],[-1.477,-3.716],[-2.787,-2.869],[-3.672,-1.584],[-4,-0.058],[-3.715,1.476],[-2.867,2.787],[0,0]],"v":[[-14.113,67.664],[26.691,-25.098],[29.178,-36.717],[27.028,-48.403],[20.57,-58.376],[10.787,-65.12],[-0.831,-67.606],[-12.518,-65.456],[-22.492,-58.999],[-29.235,-49.216]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":26,"ix":5},"lc":2,"lj":2,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[331.226,234.902],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3","np":2,"cix":2,"bm":0,"ix":3,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1800,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[169.311,379.353,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[149.273,149.273],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":27,"ix":5},"lc":2,"lj":2,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[164.637,-173.363],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.667,0.667],"y":[1,1]},"o":{"x":[0.333,0.333],"y":[0,0]},"t":4,"s":[0,0]},{"i":{"x":[0.667,0.667],"y":[1,1]},"o":{"x":[0.333,0.333],"y":[0,0]},"t":14,"s":[100,100]},{"i":{"x":[0.667,0.667],"y":[1,1]},"o":{"x":[0.333,0.333],"y":[0,0]},"t":24,"s":[100,100]},{"t":36,"s":[120,120]}],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":4,"s":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":24,"s":[100]},{"t":36,"s":[0]}],"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":0,"k":50,"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":91,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":1800,"st":0,"bm":0}],"markers":[]} \ No newline at end of file diff --git a/Signal/Lottie/story_viewer_onboarding_2.json b/Signal/Lottie/story_viewer_onboarding_2.json new file mode 100644 index 0000000000..bffef098d1 --- /dev/null +++ b/Signal/Lottie/story_viewer_onboarding_2.json @@ -0,0 +1 @@ +{"v":"4.8.0","meta":{"g":"LottieFiles AE 3.0.2","a":"","k":"","d":"","tc":""},"fr":60,"ip":0,"op":60,"w":720,"h":720,"nm":"Swipe up","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[360,360,0],"ix":2},"a":{"a":0,"k":[360,360,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"s","pt":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[312,280],[313.815,1487.646],[1000,1500],[963.695,292.354]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[31.91,0],[0,0],[0,-32.185],[0,0],[-31.91,0],[0,0],[0,0],[0,0],[0,44.564],[0,0],[-44.183,0],[0,0],[0,-44.564],[0,0],[0,0],[0,0]],"o":[[0,0],[-31.91,0],[0,0],[0,32.185],[0,0],[0,0],[0,0],[-44.183,0],[0,0],[0,-44.564],[0,0],[44.183,0],[0,0],[0,0],[0,0],[0,-32.185]],"v":[[80,-237.586],[-80,-237.586],[-137.778,-179.31],[-137.778,179.31],[-80,237.586],[-23.582,237.586],[-23.582,260],[-80,260],[-160,179.31],[-160,-179.31],[-80,-260],[80,-260],[160,-179.31],[160,10],[137.778,10],[137.778,-179.31]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[360,360],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1800,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 2","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":4,"s":[0]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":8,"s":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":20,"s":[100]},{"t":28,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":8,"s":[360,400,0],"to":[0,-23.466,0],"ti":[0,38.337,0]},{"t":25,"s":[360,224.784,0]}],"ix":2},"a":{"a":0,"k":[360,360,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[58.665,-19.652],[0.331,-77.997],[-58.665,-19.703],[-44.612,-5.477],[-12.741,-36.965],[-9.71,-41.204],[-9.71,77.997],[10.29,77.997],[10.29,-41.197],[13.905,-36.132],[44.52,-5.507]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[363.582,354.503],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1800,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Shape Layer 3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":0,"s":[-44]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":8,"s":[-119]},{"t":28,"s":[-44]}],"ix":10},"p":{"a":1,"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0},"t":0,"s":[513.143,517.484,0],"to":[0,0,0],"ti":[1.92,2.071,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":8,"s":[577.52,526.005,0],"to":[-7.973,-8.601,0],"ti":[0,0,0]},{"t":28,"s":[513.143,517.484,0]}],"ix":2},"a":{"a":0,"k":[-33,115,0],"ix":1},"s":{"a":0,"k":[66,66,100],"ix":6}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"s","pt":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0.678,3.37],[2.156,11.396],[4.199,29.116],[0,0],[2.323,1.938],[2.993,-0.389],[-0.811,-8.137],[-0.01,-0.166],[-0.441,-22.604],[-0.719,-9.969],[-5.265,-27.199],[-14.232,-19.498],[-29.41,-10.98],[-19.082,2.721],[-12.082,10.174],[-8.059,18.936],[-0.235,0.551],[-7.073,16.348],[-2.163,4.983],[0,0],[0,0],[-11.709,-5.094],[0,0],[-0.047,0.1],[0,0],[1.707,4.295],[4.293,1.851],[4.345,-1.727],[1.851,-4.293],[0.613,-0.807],[0,0],[6.478,2.787],[-2.786,6.478],[0,0],[0,0],[1.74,4.334],[4.3,1.836],[4.339,-1.742],[1.835,-4.3],[0.468,-0.684],[0,0],[6.455,2.839],[-2.839,6.456],[0,0],[-0.033,2.302],[0.855,2.151],[1.613,1.66],[2.126,0.916],[2.314,0.033],[2.152,-0.855],[1.661,-1.613],[0.917,-2.126],[0.433,-0.645],[0,0],[6.486,2.769],[-2.769,6.486],[0,0],[0,0],[-0.034,2.315],[0.854,2.151],[1.613,1.66],[2.125,0.917],[2.315,0.033],[2.151,-0.855],[1.66,-1.613],[0.917,-2.121],[0,0],[0,0],[0.057,-0.122],[0,0],[5.46,0.629],[1.13,5.379]],"o":[[-12.496,2.627],[0,0],[0,0],[-0.375,-1.822],[-1.357,-6.741],[-4.308,-22.769],[0,0],[-1.134,-8.366],[-2.325,-1.94],[-6.366,0.83],[0.016,0.165],[1.385,22.937],[0.198,10.154],[2.148,29.786],[5.253,27.141],[14.116,19.339],[30.027,11.209],[18.997,-2.709],[23.978,-20.192],[0.243,-0.57],[7.846,-18.401],[3.537,-8.176],[0,0],[0,0],[0,0],[0,0],[0.044,-0.101],[0,0],[1.79,-4.256],[-1.727,-4.344],[-4.293,-1.852],[-4.344,1.726],[-0.42,0.972],[0,0],[-2.786,6.478],[-6.478,-2.786],[0,0],[0,0],[1.83,-4.296],[-1.743,-4.339],[-4.301,-1.836],[-4.339,1.743],[-0.338,0.792],[0,0],[-2.84,6.455],[-6.455,-2.84],[0,0],[0.906,-2.115],[0.034,-2.314],[-0.855,-2.151],[-1.613,-1.66],[-2.125,-0.917],[-2.315,-0.034],[-2.151,0.855],[-1.66,1.613],[-0.319,0.738],[0,0],[-2.769,6.486],[-6.485,-2.769],[0,0],[0,0],[0.916,-2.126],[0.033,-2.314],[-0.855,-2.151],[-1.613,-1.66],[-2.126,-0.917],[-2.314,-0.033],[-2.151,0.855],[-1.658,1.61],[0,0],[0,0],[-0.053,0.125],[0,0],[-2.323,4.981],[-5.46,-0.628],[0,0]],"v":[[-93.87,18.612],[-106.366,21.237],[-106.519,20.506],[-106.951,18.419],[-108.549,10.566],[-113.957,-17.156],[-127.833,-99.135],[-127.848,-99.243],[-134.246,-113.665],[-142.404,-115.946],[-153.467,-101.525],[-153.427,-101.029],[-151.147,-32.229],[-150.477,-2.251],[-142.551,86.988],[-114.433,157.294],[-50.787,203.534],[22.241,214.306],[68.3,193.646],[112.863,125.085],[113.579,123.402],[137.535,67.695],[146.282,47.509],[149.711,39.617],[149.722,39.591],[161.435,44.676],[149.722,39.591],[149.862,39.28],[153.99,30.427],[154.122,17.085],[144.721,7.409],[131.231,7.214],[121.555,16.615],[119.997,19.288],[101.757,61.694],[84.982,68.378],[78.297,51.603],[110.283,-22.76],[110.289,-22.775],[110.429,-36.253],[100.991,-45.897],[87.498,-46.043],[77.854,-36.605],[76.639,-34.39],[49.106,28.203],[32.276,34.75],[25.729,17.92],[66.437,-74.622],[67.86,-81.312],[66.616,-88.076],[62.878,-93.849],[57.215,-97.752],[50.49,-99.191],[43.725,-97.947],[37.952,-94.209],[34.049,-88.546],[32.918,-86.47],[-5.951,4.578],[-22.709,11.308],[-29.439,-5.449],[50.103,-191.77],[50.122,-191.813],[51.561,-198.538],[50.317,-205.302],[46.578,-211.076],[40.916,-214.979],[34.19,-216.418],[27.426,-215.174],[21.653,-211.436],[17.754,-205.784],[17.749,-205.773],[-61.981,-19.576],[-62.146,-19.206],[-82.297,24.009],[-95.33,31.297],[-106.366,21.237]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-5.205,-2.245],[-3.949,-4.066],[-2.093,-5.268],[0.082,-5.668],[2.238,-5.198],[0,0],[0,0],[-0.538,-0.007],[-5.205,-2.244],[-3.95,-4.066],[-2.093,-5.268],[0.082,-5.668],[0.552,-2.666],[-5.899,-2.519],[-4.267,-10.624],[2.097,-8.672],[-5.986,-2.581],[-4.228,-10.639],[4.533,-10.513],[0.052,-0.113],[0,0],[0,0],[3.532,-8.165],[7.819,-18.34],[0.364,-0.86],[28.77,-24.227],[24.255,-3.458],[33.124,12.365],[17.277,23.67],[5.693,29.412],[0,0],[0.201,10.287],[1.343,22.333],[-18.378,2.394],[-8.272,-6.901],[-1.794,-13.156],[-4.26,-22.535],[0,0],[0,0],[0,0],[-4.065,3.95],[-5.268,2.093],[-5.668,-0.082]],"o":[[5.206,2.245],[3.95,4.066],[2.094,5.268],[-0.082,5.659],[0,0],[0,0],[0.537,-0.012],[5.668,0.082],[5.205,2.245],[3.95,4.065],[2.093,5.268],[-0.04,2.736],[6.29,-0.227],[10.529,4.495],[3.369,8.389],[6.391,-0.254],[10.512,4.534],[4.227,10.639],[-0.05,0.114],[0,0],[0,0],[-2.16,4.976],[-7.067,16.333],[-0.337,0.79],[-7.9,18.629],[-15.316,12.898],[-24.169,3.447],[-33.741,-12.596],[-17.161,-23.511],[-5.681,-29.354],[0,0],[-0.433,-22.263],[-2.177,-23.284],[9.415,-1.227],[8.262,6.894],[4.105,28.455],[0,0],[0,0],[0,0],[2.245,-5.205],[4.066,-3.95],[5.268,-2.093],[5.668,0.082]],"v":[[50.528,-238.929],[64.395,-229.371],[73.549,-215.234],[76.596,-198.669],[73.083,-182.225],[73.072,-182.2],[48.747,-125.22],[50.359,-125.227],[66.828,-121.703],[80.695,-112.144],[89.849,-98.007],[92.896,-81.443],[92.005,-73.323],[110.518,-69.884],[133.627,-46.271],[135.528,-20.036],[154.334,-16.542],[177.355,7.154],[176.878,40.188],[176.725,40.528],[172.577,49.423],[169.209,57.177],[160.474,77.335],[136.571,132.918],[135.52,135.394],[84.25,212.68],[25.346,239.088],[-60.218,226.959],[-135.561,171.85],[-168.124,91.341],[-176.505,-2.031],[-177.195,-32.873],[-179.405,-99.763],[-146.203,-141.769],[-118.386,-133.775],[-103.049,-103.23],[-89.423,-22.711],[-85.877,-30.315],[-6.214,-216.355],[-6.201,-216.386],[3.357,-230.253],[17.495,-239.406],[34.059,-242.453]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":12,"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1800,"st":0,"bm":0}],"markers":[]} \ No newline at end of file diff --git a/Signal/Lottie/story_viewer_onboarding_3.json b/Signal/Lottie/story_viewer_onboarding_3.json new file mode 100644 index 0000000000..681377e4e6 --- /dev/null +++ b/Signal/Lottie/story_viewer_onboarding_3.json @@ -0,0 +1 @@ +{"v":"4.8.0","meta":{"g":"LottieFiles AE 3.0.2","a":"","k":"","d":"","tc":""},"fr":60,"ip":0,"op":60,"w":720,"h":720,"nm":"Swipe right","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[360,360,0],"ix":2},"a":{"a":0,"k":[360,360,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[31.91,0],[0,0],[4.978,-27.079],[0,0],[-40.589,0],[0,0],[0,-44.564],[0,0],[44.183,0],[0,0],[11.973,29.343],[0,0],[-20.744,0],[0,0],[0,32.185],[0,0]],"o":[[0,0],[-28.289,0],[0,0],[5.185,-39.511],[0,0],[44.183,0],[0,0],[0,44.564],[0,0],[-33.41,0],[0,0],[10.191,16.559],[0,0],[31.91,0],[0,0],[0,-32.185]],"v":[[79.652,-237.586],[-80.348,-237.586],[-137.156,-190],[-159.652,-190],[-80.348,-260],[79.652,-260],[159.652,-179.31],[159.652,179.31],[79.652,260],[-80.348,260],[-154.358,210],[-129.474,210],[-80.348,237.586],[79.652,237.586],[137.43,179.31],[137.43,-179.31]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[350.347,360],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1800,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 2","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":10,"s":[0]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":14,"s":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":22,"s":[100]},{"t":27,"s":[0]}],"ix":11},"r":{"a":0,"k":90,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":10,"s":[322,358,0],"to":[0,0,0],"ti":[-11.12,0,0]},{"t":27,"s":[374.427,358,0]}],"ix":2},"a":{"a":0,"k":[360,360,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[58.665,-19.652],[0.331,-77.997],[-58.665,-19.703],[-44.612,-5.477],[-12.741,-36.965],[-9.71,-41.204],[-9.71,77.997],[10.29,77.997],[10.29,-41.197],[13.905,-36.132],[44.52,-5.507]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[363.582,354.503],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1800,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Shape Layer 3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":0,"s":[37]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":13,"s":[-19]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":21,"s":[-13]},{"t":31,"s":[37]}],"ix":10},"p":{"a":1,"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":0,"s":[186,430,0],"to":[-5.333,0,0],"ti":[5.333,0,0]},{"i":{"x":0.667,"y":0.667},"o":{"x":0.333,"y":0.333},"t":13,"s":[154,430,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":21,"s":[154,430,0],"to":[5.333,0,0],"ti":[-5.333,0,0]},{"t":31,"s":[186,430,0]}],"ix":2},"a":{"a":0,"k":[-24,129,0],"ix":1},"s":{"a":0,"k":[60,60,100],"ix":6}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"s","pt":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0.678,3.37],[2.156,11.396],[4.199,29.116],[0,0],[2.323,1.938],[2.993,-0.389],[-0.811,-8.137],[-0.01,-0.166],[-0.441,-22.604],[-0.719,-9.969],[-5.265,-27.199],[-14.232,-19.498],[-29.41,-10.98],[-19.082,2.721],[-12.082,10.174],[-8.059,18.936],[-0.235,0.551],[-7.073,16.348],[-2.163,4.983],[0,0],[0,0],[-11.709,-5.094],[0,0],[-0.047,0.1],[0,0],[1.707,4.295],[4.293,1.851],[4.345,-1.727],[1.851,-4.293],[0.613,-0.807],[0,0],[6.478,2.787],[-2.786,6.478],[0,0],[0,0],[1.74,4.334],[4.3,1.836],[4.339,-1.742],[1.835,-4.3],[0.468,-0.684],[0,0],[6.455,2.839],[-2.839,6.456],[0,0],[-0.033,2.302],[0.855,2.151],[1.613,1.66],[2.126,0.916],[2.314,0.033],[2.152,-0.855],[1.661,-1.613],[0.917,-2.126],[0.433,-0.645],[0,0],[6.486,2.769],[-2.769,6.486],[0,0],[0,0],[-0.034,2.315],[0.854,2.151],[1.613,1.66],[2.125,0.917],[2.315,0.033],[2.151,-0.855],[1.66,-1.613],[0.917,-2.121],[0,0],[0,0],[0.057,-0.122],[0,0],[5.46,0.629],[1.13,5.379]],"o":[[-12.496,2.627],[0,0],[0,0],[-0.375,-1.822],[-1.357,-6.741],[-4.308,-22.769],[0,0],[-1.134,-8.366],[-2.325,-1.94],[-6.366,0.83],[0.016,0.165],[1.385,22.937],[0.198,10.154],[2.148,29.786],[5.253,27.141],[14.116,19.339],[30.027,11.209],[18.997,-2.709],[23.978,-20.192],[0.243,-0.57],[7.846,-18.401],[3.537,-8.176],[0,0],[0,0],[0,0],[0,0],[0.044,-0.101],[0,0],[1.79,-4.256],[-1.727,-4.344],[-4.293,-1.852],[-4.344,1.726],[-0.42,0.972],[0,0],[-2.786,6.478],[-6.478,-2.786],[0,0],[0,0],[1.83,-4.296],[-1.743,-4.339],[-4.301,-1.836],[-4.339,1.743],[-0.338,0.792],[0,0],[-2.84,6.455],[-6.455,-2.84],[0,0],[0.906,-2.115],[0.034,-2.314],[-0.855,-2.151],[-1.613,-1.66],[-2.125,-0.917],[-2.315,-0.034],[-2.151,0.855],[-1.66,1.613],[-0.319,0.738],[0,0],[-2.769,6.486],[-6.485,-2.769],[0,0],[0,0],[0.916,-2.126],[0.033,-2.314],[-0.855,-2.151],[-1.613,-1.66],[-2.126,-0.917],[-2.314,-0.033],[-2.151,0.855],[-1.658,1.61],[0,0],[0,0],[-0.053,0.125],[0,0],[-2.323,4.981],[-5.46,-0.628],[0,0]],"v":[[-93.87,18.612],[-106.366,21.237],[-106.519,20.506],[-106.951,18.419],[-108.549,10.566],[-113.957,-17.156],[-127.833,-99.135],[-127.848,-99.243],[-134.246,-113.665],[-142.404,-115.946],[-153.467,-101.525],[-153.427,-101.029],[-151.147,-32.229],[-150.477,-2.251],[-142.551,86.988],[-114.433,157.294],[-50.787,203.534],[22.241,214.306],[68.3,193.646],[112.863,125.085],[113.579,123.402],[137.535,67.695],[146.282,47.509],[149.711,39.617],[149.722,39.591],[161.435,44.676],[149.722,39.591],[149.862,39.28],[153.99,30.427],[154.122,17.085],[144.721,7.409],[131.231,7.214],[121.555,16.615],[119.997,19.288],[101.757,61.694],[84.982,68.378],[78.297,51.603],[110.283,-22.76],[110.289,-22.775],[110.429,-36.253],[100.991,-45.897],[87.498,-46.043],[77.854,-36.605],[76.639,-34.39],[49.106,28.203],[32.276,34.75],[25.729,17.92],[66.437,-74.622],[67.86,-81.312],[66.616,-88.076],[62.878,-93.849],[57.215,-97.752],[50.49,-99.191],[43.725,-97.947],[37.952,-94.209],[34.049,-88.546],[32.918,-86.47],[-5.951,4.578],[-22.709,11.308],[-29.439,-5.449],[50.103,-191.77],[50.122,-191.813],[51.561,-198.538],[50.317,-205.302],[46.578,-211.076],[40.916,-214.979],[34.19,-216.418],[27.426,-215.174],[21.653,-211.436],[17.754,-205.784],[17.749,-205.773],[-61.981,-19.576],[-62.146,-19.206],[-82.297,24.009],[-95.33,31.297],[-106.366,21.237]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"},{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[0,0],[0,1],[1,1],[1,0]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 2"},{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[0,0],[0,1],[1,1],[1,0]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 3"}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-5.205,-2.245],[-3.949,-4.066],[-2.093,-5.268],[0.082,-5.668],[2.238,-5.198],[0,0],[0,0],[-0.538,-0.007],[-5.205,-2.244],[-3.95,-4.066],[-2.093,-5.268],[0.082,-5.668],[0.552,-2.666],[-5.899,-2.519],[-4.267,-10.624],[2.097,-8.672],[-5.986,-2.581],[-4.228,-10.639],[4.533,-10.513],[0.052,-0.113],[0,0],[0,0],[3.532,-8.165],[7.819,-18.34],[0.364,-0.86],[28.77,-24.227],[24.255,-3.458],[33.124,12.365],[17.277,23.67],[5.693,29.412],[0,0],[0.201,10.287],[1.343,22.333],[-18.378,2.394],[-8.272,-6.901],[-1.794,-13.156],[-4.26,-22.535],[0,0],[0,0],[0,0],[-4.065,3.95],[-5.268,2.093],[-5.668,-0.082]],"o":[[5.206,2.245],[3.95,4.066],[2.094,5.268],[-0.082,5.659],[0,0],[0,0],[0.537,-0.012],[5.668,0.082],[5.205,2.245],[3.95,4.065],[2.093,5.268],[-0.04,2.736],[6.29,-0.227],[10.529,4.495],[3.369,8.389],[6.391,-0.254],[10.512,4.534],[4.227,10.639],[-0.05,0.114],[0,0],[0,0],[-2.16,4.976],[-7.067,16.333],[-0.337,0.79],[-7.9,18.629],[-15.316,12.898],[-24.169,3.447],[-33.741,-12.596],[-17.161,-23.511],[-5.681,-29.354],[0,0],[-0.433,-22.263],[-2.177,-23.284],[9.415,-1.227],[8.262,6.894],[4.105,28.455],[0,0],[0,0],[0,0],[2.245,-5.205],[4.066,-3.95],[5.268,-2.093],[5.668,0.082]],"v":[[50.528,-238.929],[64.395,-229.371],[73.549,-215.234],[76.596,-198.669],[73.083,-182.225],[73.072,-182.2],[48.747,-125.22],[50.359,-125.227],[66.828,-121.703],[80.695,-112.144],[89.849,-98.007],[92.896,-81.443],[92.005,-73.323],[110.518,-69.884],[133.627,-46.271],[135.528,-20.036],[154.334,-16.542],[177.355,7.154],[176.878,40.188],[176.725,40.528],[172.577,49.423],[169.209,57.177],[160.474,77.335],[136.571,132.918],[135.52,135.394],[84.25,212.68],[25.346,239.088],[-60.218,226.959],[-135.561,171.85],[-168.124,91.341],[-176.505,-2.031],[-177.195,-32.873],[-179.405,-99.763],[-146.203,-141.769],[-118.386,-133.775],[-103.049,-103.23],[-89.423,-22.711],[-85.877,-30.315],[-6.214,-216.355],[-6.201,-216.386],[3.357,-230.253],[17.495,-239.406],[34.059,-242.453]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":20,"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1800,"st":0,"bm":0}],"markers":[]} \ No newline at end of file diff --git a/Signal/src/ViewControllers/HomeView/Stories/Context View/StoryContextOnboardingOverlayView.swift b/Signal/src/ViewControllers/HomeView/Stories/Context View/StoryContextOnboardingOverlayView.swift index c694ed534a..aaa466bc8d 100644 --- a/Signal/src/ViewControllers/HomeView/Stories/Context View/StoryContextOnboardingOverlayView.swift +++ b/Signal/src/ViewControllers/HomeView/Stories/Context View/StoryContextOnboardingOverlayView.swift @@ -4,8 +4,9 @@ // import Foundation -import UIKit +import Lottie import SignalServiceKit +import UIKit protocol StoryContextOnboardingOverlayViewDelegate: AnyObject { @@ -90,10 +91,16 @@ class StoryContextOnboardingOverlayView: UIView, Dependencies { self.isHidden = false blurView.effect = .none blurView.contentView.alpha = 0 - UIView.animate(withDuration: 0.35) { - self.blurView.effect = UIBlurEffect(style: .dark) - self.blurView.contentView.alpha = 1 - } + UIView.animate( + withDuration: 0.35, + animations: { + self.blurView.effect = UIBlurEffect(style: .dark) + self.blurView.contentView.alpha = 1 + }, + completion: { [weak self] _ in + self?.startAnimations() + } + ) } func dismiss() { @@ -118,6 +125,8 @@ class StoryContextOnboardingOverlayView: UIView, Dependencies { private lazy var blurView = UIVisualEffectView() + private var animationViews = [AnimationView]() + private func setupSubviews() { addSubview(blurView) blurView.autoPinEdgesToSuperviewEdges() @@ -128,18 +137,22 @@ class StoryContextOnboardingOverlayView: UIView, Dependencies { vStack.distribution = .equalSpacing vStack.spacing = 42 + animationViews = [] + for asset in assets { let imageContainer = UIView() - let imageView = UIImageView(image: asset.image?.withRenderingMode(.alwaysTemplate).asTintedImage(color: .ows_white)) - imageView.setContentHuggingPriority(.defaultHigh, for: .horizontal) + let animationView = AnimationView(name: asset.lottieName) + animationView.loopMode = .playOnce + animationView.backgroundBehavior = .forceFinish + animationView.autoSetDimensions(to: .square(54)) - imageContainer.addSubview(imageView) + imageContainer.addSubview(animationView) - imageContainer.autoPinHeight(toHeightOf: imageView) - imageContainer.autoPinWidth(toWidthOf: imageView) - imageView.autoVCenterInSuperview() - imageView.autoAlignAxis(.vertical, toSameAxisOf: imageContainer, withOffset: asset.imageXOffset) + imageContainer.autoPinHeight(toHeightOf: animationView) + imageContainer.autoPinWidth(toWidthOf: animationView) + animationView.autoVCenterInSuperview() + animationView.autoAlignAxis(.vertical, toSameAxisOf: imageContainer) let label = UILabel() label.textColor = .ows_gray05 @@ -157,6 +170,8 @@ class StoryContextOnboardingOverlayView: UIView, Dependencies { innerVStack.addArrangedSubviews([imageContainer, label]) vStack.addArrangedSubview(innerVStack) + + animationViews.append(animationView) } let confirmButtonContainer = ManualLayoutView(name: "confirm_button") @@ -223,35 +238,48 @@ class StoryContextOnboardingOverlayView: UIView, Dependencies { closeButton.autoPinEdge(toSuperviewEdge: .leading, withInset: 20) } + private func startAnimations() { + DispatchQueue.main.asyncAfter(deadline: .now() + 0.3) { [weak self] in + self?.playAnimation(at: 0) + } + } + + private func playAnimation(at index: Int) { + guard !animationViews.isEmpty, self.isDisplaying else { + return + } + guard let animationView = animationViews[safe: index] else { + startAnimations() + return + } + animationView.play { [weak self] _ in + self?.playAnimation(at: index + 1) + } + } + private struct Asset { - let image: UIImage? - let imageXOffset: CGFloat + let lottieName: String let text: String } private var assets: [Asset] { [ Asset( - image: #imageLiteral(resourceName: "story_viewer_onboarding_1"), - imageXOffset: 0, + lottieName: "story_viewer_onboarding_1", text: NSLocalizedString( "STORY_VIEWER_ONBOARDING_1", comment: "Text shown the first time the user opens the story viewer instructing them how to use it." ) ), Asset( - image: #imageLiteral(resourceName: "story_viewer_onboarding_2"), - imageXOffset: 0, + lottieName: "story_viewer_onboarding_2", text: NSLocalizedString( "STORY_VIEWER_ONBOARDING_2", comment: "Text shown the first time the user opens the story viewer instructing them how to use it." ) ), Asset( - image: #imageLiteral(resourceName: "story_viewer_onboarding_3"), - // The asset is "centered" but the designs require misalignment of the - // assets frame to visually align a sub-part of its contents. - imageXOffset: -12, + lottieName: "story_viewer_onboarding_3", text: NSLocalizedString( "STORY_VIEWER_ONBOARDING_3", comment: "Text shown the first time the user opens the story viewer instructing them how to use it."