From f2291e6d099db3b52d9f1324c59130305693d18a Mon Sep 17 00:00:00 2001 From: Gordon Hayes Date: Wed, 1 Jun 2022 16:37:40 +0200 Subject: [PATCH] docs: update firebase token generation guide --- .../firebase_cloud_secrets_management.jpg | Bin 0 -> 48320 bytes .../firebase_stream_chat_extension_usage.jpg | Bin 0 -> 83742 bytes ...install_stream_chat_firebase_extension.jpg | Bin 0 -> 40472 bytes .../assets/stream_chat_app_access_keys.jpg | Bin 0 -> 8919 bytes ...tream_firebase_extension_configuration.jpg | Bin 0 -> 49231 bytes ...er_token_generation_with_firebase_auth.mdx | 543 +++++++++--------- 6 files changed, 262 insertions(+), 281 deletions(-) create mode 100644 docusaurus/docs/Flutter/assets/firebase_cloud_secrets_management.jpg create mode 100644 docusaurus/docs/Flutter/assets/firebase_stream_chat_extension_usage.jpg create mode 100644 docusaurus/docs/Flutter/assets/install_stream_chat_firebase_extension.jpg create mode 100644 docusaurus/docs/Flutter/assets/stream_chat_app_access_keys.jpg create mode 100644 docusaurus/docs/Flutter/assets/stream_firebase_extension_configuration.jpg diff --git a/docusaurus/docs/Flutter/assets/firebase_cloud_secrets_management.jpg b/docusaurus/docs/Flutter/assets/firebase_cloud_secrets_management.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4f131df4ccd1ae63a03cbb50c9dd2359114754f1 GIT binary patch literal 48320 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 ZgyTvXZWOTJ&9NERBm($wW&U^Re*p-8Flqn* literal 0 HcmV?d00001 diff --git a/docusaurus/docs/Flutter/assets/firebase_stream_chat_extension_usage.jpg b/docusaurus/docs/Flutter/assets/firebase_stream_chat_extension_usage.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7374a67f8a225c7811d98dfebd23d214b996f84a GIT binary patch literal 83742 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%0AaOYoXwIibKm5|l*g+Lv1a2{$X^#| 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 z

fp6#-g~=C~=m#dD2(8(43|Rys#UmMwOGVN?X^-+~W^pSWG$21cb2lNByX|<62+6)|LY4Az@~K%|H*w99>S( zsbS?X{ej(LZ|JZZwm$}Hemsd-gcjBXX*`morO8r8zIG5- z4Ww8C(6$u)IqR;GS}fL0`xo@VWyd&xNaFgoND~qlRip1QFr+rzV8l~cYPw>U0ReY* zK}Tad;X{ovb$(&!g!6l9MaoW?mkMJYys>~#Km&8k#EnJmWt(&i{L-j*73TO&a`rO>@rjS>*+Icz5 zgHJEkvtKs+uR`(gQkn;zUSwrsG`x3nr_Dw<@NeC${tfsCy7yNz08-e6i-?G<2t3&t zim0d(opSZzkaNu_Dq>;Fn7A+JCg4f*EBJ_)-)ha#8un2XbW>wS&v|YrjbQS;nO8tD zmuAOwNH0&<8s*c=Z%d=8MVXPNpNDWM`M6Ax*<5c)d90~)t88FJUC{8v+nU`Y+gg<) zi8oj*HQ^JI*oX}srd^1`{ou7IAk9BwfBUkmqGq|<^)W<|Z+{*;TudR8f_p_n60?A7 ztBM3s7do)MI?NWXwkSX@49G4T{82kq8SxU3u@AWVkrD@ZfDe!$^M;+XTG-_IZ2^|FJX} ziaJR=1Y}P9zmthRHcDZ@)yoNN7&}}3)uSo8_TU0{~AqUCK-iKAVR9;83 zGED}Ns+1Z&#oLey^Wq%j7(TB>j$=U(gSMw8o`^C+XTYBTwC4LbF-8<(b% ztM}IOK`b4<`ndWoX?B9J^AmINxQf;+YSXlY{CxLQ#M=gBez&>`&3mhl8p~D45oOiY z<{EP|Sn26sni4@UYgw|&>Ue|u4a!#V=0U2IdTaa@vZIGH3D$XX-MN19x?ZJ?Smc5T z41F#%k|WRIlFm;5k{X}Vc@71{>RIZQ*SDTpNX;$X;Z}Hp zg`F1n?)eOH>5@%_=M{W=xrm-O?>gbw78aE?jzi;vEpM7%@3!TIdwxw;!Q&%BTDhH>7Msrk`#;u z1GQ)Z+D3-T<`!6MKqOj6>Dmd=GRyN#4tvZx#uiW9?y*K(E@r73z9D|I^Mbxjrwy}> z>{p9AYsiekmgMzjqSZmq-?91n6*QiigkI$%%FV%Gy@42+Nw+d7808Ccq170{wrzT* z`cb%Kc-GTXM#2$a79^rItwv*Mg<0m!%_4SG=kJa_8(zI@V6tQBiJ?AJrEbX$D~RQz zrrJ{y9!Jb0W%+rzDxpACT|{yi?}@zR1Wrh_dgk7(T*lI2PHLK%&X|g|2tXnekmPBV zoO+%Bdttn!p4dl%hE^J7zxU}g;`NJ%pc7KT9hBP0_G;oxHLNp4)u|O{Q+>HXY8^T- z(92h_HD)@I!mbMb>3F46@CMpH#$mNHpax)g#45oUjbO0rq);jJ2hrG7iJQ-p-sL)* z-UzWtU7C$$Fxa%#?~fgUe_*gXNZQKxwg)W00-w^{MJpC0c zIs$^U2K=3g@1ANHiLo@IQTj2}HbJ?sg`mm-?g*TYQoWkyJ3tP=clqr(0y8^r+2eFU;@1cMp_D?@NDnHLt?`_{pb} zh>PNN0!E1vYC⪙o%SNO_Vpg8#;U*Y&un<#4~4j-_VJ+?T6pK)2rtTJAR#LNY-aq zdaHFp<)r^CCKDVga?%{CFL|aMPt{4K&6$hTcXSpLRC;iD#(UeWS!@;IZ&^JI%4bU^ zHG9sUwJhDaPSs1yv0+U}o|8(>$IQ=EWcSH7r|I$^`R0_`og}}3ZCg`MX#=-J;;~jqnQG5mVh{B2ApuAXLJD17Nlg{A zIP|{ls`8e&u?jWNk>u!v99z?bBDGM$DX)y`IDABg>Sm8~hnrcdpge7ldQ-ix3NZlV zg7`ZC!$RR0A!gRruy& zxC=aYnH8xd{SKogB9nvo^ZWSsKst~WAHRD^D)~aXZh@m3TfJm!eT9T)b8eD?jg6U} zvN|VH#%+2`DY^b;)!k#rL(uW3c0N~8n+&a>7;IJVpgN;5@94~W^3EN#)dD4%3}Q`V zVOIwByg(9_WgzvwYC*d<+Xb07w#&hBOBX%zY9G%<P91EM~C=_m|lF*&8Ak z0&+S_i}P?8jeE1B)UuLF?$|A`jGK`^M-;#||5E~de@Gzh4+&I%2i!JXo9|Ce_Je6r<(okag~`IY`S{AH(lLi&x?#^Fid9I?+~Wrcl?lGI zGutL)72|$wFXE*EZ@MT=W)e2ss27^4GiR!&i_W@)N+hnfAIvm6E{aB-Z?Cx7t8-wU zp%PhEcOX(57v`=q1k5NKRSl2{}Jqvs9#V8|R%4*kkL&I*LYHQo2^c z6j`T$JvY7m@ex+HVs%596=gaZ9cg_3Z56oMBl4dzscv|aceK;SI$||2A68;M1krd? zCeoe*Q*HYp^#wgN*J`?wzL=}}&7)}+WhA!*yMn^!O;AZaYZJKx1mP$_LnA&Xt1=SL zi*Ov^xRkUe@q8^V_y%MbVxA&2MG4o7I6Y?EuvlL*-YWu|y59v=*%ca>*Wp@9e%(Gk7H7*7xo!!J(P9C^)?CB_Tv9T_xa)PFA%+>@oFR^6hC&{0E@94^ur@8L$ zbnF=zdL+kCTYzLyPsBW=5`KlHU})u8rsM}t#YRi%PizLOt~e~jmDCnryecIc@$Km^ znlGr}8?ZJK@0`6d*Bx(&eqy+pS51bHWweTviY%YSu%gT!#>5lSl^THBnbt`^FCO)F z%V>$Yfgo5FJhG*VcmjDoC`iU($jU_{Gjj;Ytgu)r=9E;CM{ny49U(d|`UM9R7m6jx zQq^nGl6}b@+v#6DqiodUf<9Q3{L+&PY)O57YQEu5&Hu5DyN}*t zsfx%hlr{X=;7^$^f04B_f0ch#^S=!jx>zy-j(uu8LFK2)2|OcNyOUSu9xNSc8#13L zUjI)Z&M97F@PuXcPi~t#vb;9_5Q)M&5k-WtmjSW-%tG&a9NAaUHaDK`}Ag%rXLs1HTe(LAm7k5fy0?_TQ#GXA6`> z-4hCgL!0IGxJ9KWAedv;HMRL1cKycvSRBh(O|1|96*ily4yZ%XNL_uYc)Cz^QJQmi zBu-nG={;}CQV(6-1euYDg#=7|b#-6*&0-))B#AF%bv1PUI2^5Ye&(!kcyTFREJ&ut&tQ?+l0=BQATy4( zVw1BvqGa4`B+j|#Y;{%^)-;0clN&luwfVIa=H2#=&gy@hQYWcbvAS&yA&)~nNQ6- z)9RP78Pcu4N!Aj(a=n39GPlY|OT2h>b3*@$B9F}}-!W}my|MMOyLjf_{~RMOu>`Xkt|h2R$< zWp0a3w$UzIoYgEoXc6B~+?A!GiD0D34z5vBR_U)6v}ncZ$p=y%dYDE+a1)y=w2cf) zg|#ehHm0s)zxFS$*KJOXw308HYhE-oaiMj2I?X_Ep2{ujEXH>?36d_W$PZ5kK0Qy6 ze=C5f>`9yPl2}tsI)_D8>Jk1=lmBM`Bw&Qk@N#roE{IySZdnW~3ViQkcGzt;8hL~g z{^5tIMWV#ok|7a8dl!ThdIh^mv>E~#B;Dan=2L}M9EAi>k^=m8@386ZC)__`^bTW6LKA>&ixnv;DH#kX zD&N3RIC`iSDhQ6$9hx&v=zXny7;3TMa1XR8b=oXJcq*qtKSNw+6q(LYJy5YuqqjHM z^<|_Y+_=N&vO+5Cpg|8BS*)=iv@mfnC#ui}sRQ7KhO6)8LijcS=G)#1`x?$5aum*Y zz?X-ks?AF+aC*W7pC zs3FK)1$!B>BTtWDGA6fxQdv01%=(QvBrlT@CI=dg@xCpzK$2k~nt25K;)FRpgOd;_ z8@w!%oGN2!HdsB$nunuUX<1%qjV>jOUmn88mhZ1OYCJ4+fX(IfR-h&;+UdYmkr-MR zc?DNs+Q&6@=Gvq2@tlVwS-GIuG}E1$T;>FV&NnEjp>TxGEvdO0Gwqberss$rQmP)` z*o9P^4AEe&>w}Ou3HCgk2}X|9_K0tfR2@F^@L2??Uc#XixGIe|2C&JD^3p@3n#CWC zR$b#I#Rjf8k@dj$zr-@&ky=ye%s-Y6EtjJvy?ll(scFw_B6TMb!M$=yuOxh*8n0~J zMc+eC)hwMlyn>)#0bgpCZ~~#1+^o|W9;HM6!K{gp7SX5lszWjX7fo;>#t9w;QPGa9 zu3rdY+T>hR+QEUeT-#6MQQ9F6#!nlUes0Em#}>L+Fm@5H$(dpZE1`|2;doQ;R(y?X zDA3on_Ko8(-rC@)F?4g>ti1gB9}(U09c!c);i#yoRiDJoD3;MX7kM>k^jAt3(Brl? zSiZeYnred4r2h0;Vob>KBptH>Br%0(f&ffaM%3qnPY@k2g^3Lz zF;uA(3XCSeSRo10xLrr_fBcqhtcm-QG^^wq*01bUp>EfrNT_Wh!w-72h;8jk#eA7_zzJ zkU^ow-Ygg=NK}k!Z|S=l@JvMFM8Zt$Fj@h(2N6<=l^ZqKRuj?}=vr}h^_Z-5hOXlp zhjk@P5Q9bBTccJVb(YLhu6zn-C|ckiLUKGhf=x>|yQ7v%gc)Y2^EDVk8!u-FDzK=8 zIdT&zbmP@l3a<8he>)a=zN+mbRUfGr<|=qR2yQTib0W%8rkcKaZ%ivxOP^WE`;i#Q zJBL9;S9&{>3rm7Di4f&_2NbxPL|=qo@Q01|x=pdPS|x#K zP*MXPRK%uFG^2_aUfq+*jJu4TDhGm0?PUtxGcSu}wKPhF-oH!=7pl#)S!Xz(IDcbb}p`i)7bcWf0cY2`HHm*KhG(M}u zW(LUI4M8VN2=g(FWb%bI)u>U*n{-LhB${!IeKvTubBKNZg<*+tp6$ifOT3ynLkUF+ z=@c4wCcWMkH^2*I%ftZ{-F^v1Hss0yQk5(<3A?*q}wGAj}3 z6n%X%edFahM@OP@qMv+6gw9xFOEc>!R44Y>MHqAT80~Qf<-9*@bUB8#pOE^oP9bAp~$N^K6ZKi=C`)ZU-s}YP4Jo`Uuq4$ z{Ywu&eQ#Nt8Th~8ol6`#>&~td|9dX48CNh&M1DNo`|)DnYs6FUV+Qz3R!LLpuq|JDJ%GY_W)=#^k*0(pg2_0SBgrQ%m(rAVTj2D4IQzBjQp6K^6G#r3M$yF z3H7k#!m17w%D%BP|M<2QUI6fAdsQs?e0^Wj4^M@{9qlu4eQj;fB+@`o_8I`C&Ebm)R`BfhSy)}=LvTdBm9VyGo>y*|IBV+56^EM9w_P%`iFwtdwxq2@wXry; zz6y_|J61F|08>q^Z6I&$*kHu27K4gt`?M6H4vxod)NLr_YsFhXn7W?_krp=CzBHs# z^aYC3EPMy7p3{6@J}=Y}b$u5wZH{DbUbA!QY+i>tv*YUWsM1HoV6A=G-U+cm zHG^56d&_4_)>sffw0d@~3&{!Cc{QiRcbdU|@7fUPH-cIFs!)CHi?(Ge(gU|hs7TJV zT6h|3l&OdL5N=gBOkZQ2=v~FoTxYyG?z(t&*UYOHo0^@s=50b5ho-NxQ1S~iELtO{ z>M5xQ4cy_h1*^J&JW5LDagh?eRCNiErB#*6#z1wG)3fE?L_5anuJtt=!1>0QK}KbM zw3w}{GumnfA#S4XEB|;yr}!%GQfso))w5iQ*iT8Yk1N^>M&2deI0)8Tc(^RB zm9h^sFmc4ng^J}6K=LwKwc8uSm=vBsKuI`l+}ai|Kaj3&ZHBnwbu`pFo6)ONdkEBL zR7fw#!l>Z)Ev-`4wKTUSgBE|RmFK3dRx{_ zRKCV|jkdcBiT8lUW2@S1QN)4mM}NB$IYn-B(&v_;?S8>(?up^4txT^qx>#p(G%E=n zcOnzgi=BM8?u@>UeqKEesVDSXfm(f0(^9=1g((Sen)8Uwnz~Updb!tJxIJBt~JPrqoEITKwg;BDx)8`zuK=iZK!d`YotN`|#9ao93d zDy(o~v!zqi`8asNQ-(+ywBLC!P*YgaB6{ z3agWNg&H0s#U)H7k~I62*RTL8dr_1yb4%f6Ra)BWhYyWrrg%pDpNO>G5m;D>`p!zC z-~kvsNdONbW?5}uirA)5XaY=Fm@q}vCcZD035j&nMH8LMjZ3SDjwPrlKFmqsk07*oqfyY9}E6UE~RReu4 zP#L8##8^LGns=Zaos^0B8)d!gDctjgR`R=qWxtvMc)W5TGyiORh!B5LoUs@HG(=7s zCSv*_6@D^|#7&*+a;lGRpt?}p!2>cJ)u=FyLmkBtGdIeTtj_B2S#+A;ZPq^e52cKx(V1AB9CslI?+HwJgwRU*YAs6pm zHar0q`8pG%sGR07CmHX6jt+ofU^$d&n*5TtVK7_%i*%VC*$BR#%`VYgr#i}MuH4y6 z{N!ZwrEHy)-fUU3ONP3*C`-aalr>C^jF5EUiY4N*0}rvuJE5ZY8mjZKXq&1N{pdi# zNj(ZchhFk9n;mIAyW3*zGav9na)+I{@QyZ*f>dez-BK3=)(Z%s%>eZmFUK?q`h#v+ zKJi_A#gBr@3y)RVN=n?*l=p)Hf8~*EJ8fxVSRun$r2_uX2pe797~PBvF5Ee!|lV%%fyMsOw|S z=;*8!GH`}tDflx+#hSn|{LJBjsr#JofV`PZ=PEvHd9As{#@oLD7K~bmi~hH{o&OT} zOXa^e|DVGoqTTzb4>-N;?(0bErrgu>`~0E`V$qKX@jm3iM}D*usv(SxS8CV1Ys=HD zdhUurvhVpzJvc~zk_fnVD2AP9QsBYANjlS87Q zdz_V~lIl>dyfOb)${|DQ+cpmmvxCbBBggw22CaOG^ZU!YH}CnD&kfW!-r5w|w336) z=2zydEG|C8IMZ=XuL}4G6XU{w+h{pc zp$QQk-=j9vCBaa0P#eA5sNKN(EI1y@3L@Nr&C=20(_P52x??N%yp*!=G5vcFuBsHz zMP*%CYpgGDhRl7jD}WT$(O8`D<)ykYW;t8o4&w1?M=EtqQ1U+8LIB^l88->Tpn_NI z(e$J#Hlz^8Y}PF2YTj-ux`*)}VlVF{hYQnH1B{F3kW%|gcSun0k5|3YZ0{zr3WgXC z=}29L6gkVdn+z~U%6sp;Xk`oRf@bn(Eb(JWi1++#SQNbVX3(dAiuQZKFq|Gr0td9( zQfv021nZ58I)>;L5w*`#s92Hp(pO$9RwWg_R&Sx3Ik%0Q$>|;fM)70Se=ITozGX0CDk-!$VfLBy?7y6ja1ZN66Rb3 zn?j@FvG3(>dmEYSRf1N)bcI)8>t%y>nvtgVI-GOArS(nX8)F65Z z?TQ@Q#$n}xt$r`W;&ctz`eFQ1!VfqJq@W}YqH(3yX6vXIsk{WK(MVhiiSM&V-o-|+ zCfenrV>|WZf7S~8i~^*x%|SpOOYrwaG8|%2+vcQO0T{dwoA(WRlBB32|5%uO(kdMTSb1ktY zhemZ6I?~rE&zD=W0(U$7f-_jngt#7ZxrYlE%CADxjvN&?N0{bNPB2TvB%TvNlc75O zJp;w3e0;R=6Jl(u0No4?ac6vA|8e|GQ~@0W1b;6N!+PtuqI|bmPC^milU<7updw$s zSO64^DO6eyAfZ3K*@B|kUk#B02R$OmKs|uowqj)eU6j%WW;nr)OdqirYh=zxU(EXh zX@9gH0Ol+TlHw=rq_icuDo2v>h^zU@=0z{AlB9f9Iz4>{Y9CwxhGN5zO{pC|H^V1| zDbiOqPzmATg0uR3dHB!$yC;Wcow#S2BzBW{Z{fm}`iit=vFg_lgHmWo>+ih+x4r|4 zD~p3Qs$_>F>p?Ec{t&PbiP@yNapTw#PC~|XxZ#$#VBg0xfzNYPfRrW*48om6WaorX zwm!)Ncu?7}xK>?URV-Kb1W zX?i04Q6On8q)ElZj!Z<2!nqjo{2lkLj-}Hyg=pWYP6tE>Apjr?H`cU786s>@k!B6x zrBNiR3h6$3$+Aaf+M=a%nyurQKx03P8?be-*S9HNkPdEn23`6J&KTO1*21uceg36P z*GXJZTsTAy0Tx?aQ}S)~2A7SJ=AyW*O&Qm2Q2B#m!Anb zsqI*bgAO*Xq#d&<{N$>}KGUN9>!Q*?cxM)tL=WddCT(KyUtPHhR<7iX6|KtX@?D7= zugn?A_17jC#`ZXh<#BEJSQ&cioG}rhORX%%n2k@b!R1A+vcJ2;mK2zmtcY`9Z=Uj>-9qCKzKBaobB|}U zt~jxMfh}*5prs*h%c|WwNR##mYDWh?4iO0u`bKZuV@Xp2Hec<+@5@FxRQIMY$mo?X3c<8S`6<-N)>)a$r zY6&Q^g+sZdk8kH2C@O81SU@z4bJ}RjqRi&(?Fh|ivT+#JX%+w>W!lc7%UB%0m$Zo- z4jHVf4qQA$ZWpU7A7XbOi`tqLNAge&THOCiMlLi^Mji>km2`sJ8V+AMEtH3D^@lSe z^1r`$iyE(0c^+475_U0$SWTvjr}5$wt!mKJ=7ywm9yT!Mk_>bxy694+rOQ{8n7$cG zC-oH&^!)xy(1eC=&er5aPA}e7WOf(+@#H?NJ2VE2MkX_)1lc7Fj#=}YDj>F{)dVlo zXm#0$?;_KJ>1#Ym16y(gQngEx=?dRMvnp~(Y1jrx9K$FT5Ud_Y2xX9#?%-z_jPu@6 z4q-{PXAh$b@Zs8piTS8?{gp?BbXJx3qTZREUVe79Ff6@7RQsqewkigz#*tk;%{0;i zn5%>2xFrd(Y{>`RnJF^Co;5YRq0`unKxU$CScx@vuzOeGna$G6Cm2OKCMjWJ#6Ha45K5MOjEkg0Ku(hw04yW~tGDk)tXB$;9sJD-RJa257qbp+RGix}ipr zydw`?dEY)JT-6Ak-W*iDU45??7IUxKnH!F~!8TtMjk=v%{}nGkh!8#rA`%tObU`m) zU~Wra;XA;7Yw*~%u@9YmfsPP)ju`2V2@z8J9o`LTMZS_AVy#2(N^BMFV za9YFsQEoUg9pQp#UT}mTfhFDw4%+!chh4A1@q2}4#YELcNB9zVLuMI(QBVL2J^@*~ z!a$0p!Y4|&^n6Yd4M=T%94sT#a2~1}{4_`=NoEI_=Ngt3wms6Ot;m&}AaswbJ|q>3 zE14P=cvB7k7GjQ5U-sDo0#UscbmS$<(TR z*QCu&^Kirnjr@~?CYniuMIe8+`Y#Nk+Mw4fy<0?{xP{XITg@Idu2O@Kuin{Iwhxa= zt$OTa0iJXEI$v=7G^L!t5Wg#X#!nK@laZKN{CUOAh8yEGpX;tNNwV1^XYE=Iup(1a z-gIgW*c7Q2!R0xvib>`QWy7Hqx=8}fi7N(IH6^%UN;2N0nC*_OKg+BRh=s{S>n%#c z!_C$x#F?+$O&CXgHOXXkzGoIjz>$}tTo{P09OpL{Oua`-9QbsW^Q zA;xMe;&V2<&_6v)<{lR5SI)sj;|eveIx#L~vp6e@)E$QB599P4ZVIF{imeD!i07aM ziO@oK5R8ny;GppC;vAU_%h7>kfvghGSJaXvVT>}37$ck+GkW9BM z>emg2Y%iuO64Zf21{uL(b3%XX;D@@`N?Wm5Nr17GUG9y@utBhuGyxctB8! zgF4T)eR!llCOZ2nKy!ogjx~pkv&@uiOtT30`iuU&z}l6M>LJk3HvWh8$ni5Kt15cD9fw6;LFNUpEVY%x{(Z zBKJtwA^&NsFUP=;;=t?Pa-rm00>hj6|B&}qQE`3UzF^^Qg}YSY1%bjXK?`?xcXuj; z1h?Ss?uA3}5Zv7o3JFdiK#&9yNJ#Vj&-rej?jGZg`_QMyxT9C?hdF9L?7ik*Yx?}H zkzzzA@AzaWv!4Y-BnEGT2`Jvi^)n@BPJF?NT4orv!f}RSoL6KFRN|;gXx-QH2(Ten z9!f}0W)jQuQDep{dl(M#dY|;uS&jQCW!PR6`a7$<^LdnD4MrL8G6$rbXC{eaCp8X!@eP z@l#lu8gQe3$L)=VK;F9mMWn6}G79nyJCJiYS6WFFVJsE8x!I>Joa|4vx$M^n3==WmlY`?B*#Qk`xeB&mjC=V{0lauWcA(b z3d@i}!UbcGiOy7>446^F1!>TmG(-TzE^=_De2Zb_74_=XDbg4moTK!NHjx8>v7f1d zN<`-3sG0$Nfbpyc=DqjHVveaw6N=}y#dh|`pA-R3Rxbe%riq7h6Pr;=>mTUxFfHiX z3c_7xN7~knPwW#8o264+7=+MR+ms#7;-fON*@L6dT`pHJK&mc|-65Em(X1GN0T_Fa zx=FvSYL{FFMCf5OxJNV)oR7GV4!dmqu;fJykNBZ zg;#lwJ-N$b#)kc86>{3vdadJBa(Ad@X~Aa|?NEP?%}RA4iem?@izC<*#~P28Kku0iW+t|g((B(ObfJyyD}m9t}wRsx887EP!i<4@(9{-G^XXrN|Bbs`Cdl{1K7!=YI0 z6{rfYlOZT6*4argXz|GwkRb1Lo1~u06mZlC=Z|mCW6QSRtf*=3c`d9L>1d;tB&F}L z@nJXqDy+csVe9a*2Vx%uGM1qlhGHU=%izKxr!#Ny8o>ix^=BGaeTk-1W$uM2DQq$U z#uEF#4_%g&cq*bdVKl-Cz@E0yRcEh&(5%BEdjmizLG`oAlyHDag!+e8`ujd2@1KWy z_NyBHR>TA{-jJ5FRbn-(z|;e3Nxn~USqHAd@C0aD@+x~>rk)YfY71A?vde{ zRhm(%DmQa%xNMTG1s;l)GOp0(EKodCoC=?gCW1KM=cCG{e9vFjVKNU8$) zbTgNpH1c{NJ$!Nt0sj!2Sl%Z>W2)HZ`r~@BJUTCK<{GKep@CvPMwL#Dl`g`!Eof}( zw69Cm;p&IqFY4p7U9M%WDA;NB9>I2v)aMmovf=Bd3!-Udev#0thDzLk$4w5t=2l44 z@B2v0)6377q{2FvlCz^=qE0$#8`M@3^$}=AZWzEGv<<7DjJq}7Mk{2q4#k7NR{(9w zW~KGHf9sBmfL=YiwB%HsP`+GjcT-h@#$yvq*yXi(+QZ$cY83q#ZaWtuDK94wB2MSG zy(u)PxI;T9%%UlIiKf)dZ0edl&O;rTnH<&mLHs*h+vi2@u}oSZNB2{Tsm|0va)*bF z#B>16XwEpBd8~A@4pY^ULX(As!T=>7{3i9nY<*&6*D#HmQS)es7n$2Q2BE;iM7+njH~~hT}~#xDIMzm zd+oA9c{I9kJ?~Qky79s757qzj=3WdzN(Y9Y2{9dz6cf9^?|gbBuTV=_{Qxc=)YRj| z+(s$$;L5&{aw6&*Im5tbXv01FHt$Cmx`X;P%0m$oz515M#FFF4Ev`Q53V0i3T!VwsO%1*pez{ka(O^}kV%a1{ z<7Tw9`-fDT&#VM%@kTQ|DT~`0j|oLz{ab8E0*#IUlX!^(ji7xx>8} zdXKQ%Rb@e*NG$Sjz;CyzG2yVPSeZKQqd`*Ut1oe~B$$&eyyY0)wbes!z7l#D zkZ^m+7RytWX(IYDo3FGOZAIN|9`Z~wZ7eM%&~(VCj2LA(ecu%J$gSG_r|hXJQk(FB z`E5e2bsE%A6tVGD)%5Gn2_tjVO=%{1539^cbReIzipjjo+6-x!(I@Aj)j#L!;iTlP zX5y^_^#FHKE#u_cIKdlR2P1WROe4Bc;exC`!I_W)qqE!qJGlKmeyNPZQ)?Dy#b3Z7 zIRCZe4N1g@F)>=dn28buESwIa={=F$zkPiSLV&c^5xCYZq;{8k_WoIxhXg&@Ix^e! zo)N*_wwvr-)B3V)D=zf1cJd>x%1rF2w%LxrOPNw`;+fDoVC9NkiKjkjlvci#90W!) z9cH@%;l>(e`SSwCzi><)j>O15LFveQ9cB+JH{770YN(8ipr_cwgNnI;Uq5>Unzr?Q zOf*`4@U9GzpF`Rv#u@GT^yK)G;U}?%QHN6`2F{35Fo=rP6ay;~`^Np{U;Fo=kAcmd zbWIp&vL#1NRZ5?&tzSoGVfbdCjdj+W!Z(d3{kQ1E>@V@uag-h6&?c0mTi@`rL@F>G zIjOazP3&>}IF);hF7M)vO@7jhK1p6wXfs*`U!74)VzVV031#mU3kAeACR(Ugx^4DB z00VhV`pI;il+y)U?s!s8!#G?)HAaEp!p|U?0m6yF6$CfuAUb2znfuls7%N*Szz1Lz zKuk7CTaXY=GQ7{&$N^R*7@Dor19)MNHL|)$eVa3xHZprsxsP` z+};2>+@O>>lZ%%cj)TZd!eNUxRNvO9X}{D>4fR_NC1*=g0EwsB528)14rG=^_%e_x z`t7rJ6|^jISyyZ~ESO8mp)VPVRmW{g9s@@k1ZR-H?7U6<5(Xg}kyVD5zXij&j<3{~ zltxLVr$>8eU>f{$O`s%Y_a)R59Nj3lEOrA`k+^aLu*mr2>>P+=tcb>cp()o3UjJA3~LXFa`^*Z*NL|?&$OSX*t>- zv(IR`@Z0w5J!3-18@a!LBXYw&|CO0d16Ij62JqU)EbzjauRE3=yL^WBp~c)I;M zPT6Hq&S=x0(e!pLe*^5W;Mtk_%0Lsdl`Y@dM&mimb+XKL4tw`1#KcwY3?kS8K3kyA9h9%6LxEuW{HJoGMhW&S-0X2wAhMGPd zEhy`&*P_*BVw~3c;mj-i;O&+Dhi52CZ*35Q!SB&Te3e8|HOp7Tbl*H9wRqSVF}>sB ze%yTXjl8X)!>yOyVHOS?dsyo;)QLjFkg0?>S0Zl)U;pZZ^3<(^p|yh@xEljHO^h25 z-lnA0^ypgV4sjNu1N$|a%J=Z5+oEM<);8j|X<4m&Mtj@4oEN+A+BV|I&iz<`^R|3T z_!|W^{B8RCl}D>cFAHQ!ms5vX-BQL2wsf^=|CiH_o~5c?&RrDxW?3BFg6X3+Yh~Ay z?BPb(zoj-O5F9@MtF7)Xns4#GKKN}sfQQM-9^`Xi`W=rr0JIsYXK)6W=Z)DAp z?$)jSt@}q2jN1g(hTU!3{8>nbu zS1%jLpP?TGt<=Y?LyCyBYTPwRt<4&R)ai9F%geo##iHr`-gz~bucPNhvo4%CnqyWg zlg{wL+@14VMf8P{c_TBiCPVrVXNDJVf2pMta?#Lr)&o*uH2M^A>@=Z`e(!0j1J|`R z+ZuJXn~G*2;pTh=7*}?2uYVBh@LSs4atC)TlGT*1DJk^YRl4)k-{xCP9SfLOw!`hU zrloomvyy)|8D^(Vhup>oGkKFr8W#==%7iywt4P4Gw=ah9xZjsG)5gB9lOf9`23Bhd zHB|b(9=0}36`GL#De$7yaL4H%T^Rq5F0`DbQ!U!-Cvz->P21JuFZ<~9XWp>ejXz zcGH(h_qiW4DZ1;oDmvZe(F4p`n+b772ZRHh+q7C}x_pbjfeUm1XXvRF~$lR8)U) zS!BuN0nXyuVT2Lt0}jIs#BEz0T^*7PlaxARcq!zWn^)VkOb31Lw8k1wfsRzXT|$mO zF;94lp%N0av{;6L?7GAX##y-;;3(Fh$O$n>T_g_Wcb8TorWhZui}Qmvv(lD)z8K|oW8iu^=jtZJ;#;hj?&TDrB zneS$?Jl@6;N7MAVj4HGf+QovPJxcJ2R#Ymnc?tx{nJ3$ikEX890)@M;PM`hJx6b$w zFWNY*3KE>ABww2uN!Oy_6RxpS45~=j$C4Y9!)=!D?DV;eT`v#Xyz%#Aj$kA;FpB0h zv9nKIv(N0FV8ycNxDu;D*LHQ3R27i$hMbLL+3u+up^0Uv!8*674Ku1BUwEaA5ca6| z4tWQ3&8eFh;D{p(n*|1d>==R$N={C9byRm6e4m>>Gh*I9 z#&piT#or7ixQr6-)m+dbxqVDfL)E@nDwoAgzqt%BV0|jr07ZV*X>D zUU%DeZ;1VdM1vh4=LC#2wU!M!`OYD3GBuVz+q)WlpPcP2h^#WsC)OU_86PGIRZ#cl zh;e{qJ*?TUJdEL*1wG~>BGa_(xy^=2CvJLA=8Vm(=}ijlm4)Tg$l{IdX-5vzet%A; zDMGPY6H7eElTVobz4iUkdWXOw_fVB1IBXls;m6?4#Wt5yplw%Y064WWFrKPFSBU|q zG>95(g_*Mu5$fe@s5LBZKE~6T%oOqw6_w@EYE!0S;`Zk_RFv3vsyfA8uXov%H~_s0 z7K)fCWw}s@OcIj( z9OKxQZqPAT&WSH`BLtpwlS(`oZX;LpX>CnYrqrA7fmfhBVJ!J%7d#lw1eY5 z_3knOLy^*VFi8c=fsV0LI_zy@W*w9%$%0je!u{sk{HT=N+=bSJ5}=nv8C-uDk0jVH zWfnw76(1->x?2#%R*_j6+)%Mezrd$RBlCyrNW1-goz_*fjS~8XZ0B$eEy;Icg|CT3c;2T5u7lKv85KA zWvuiO97(|p1MC0*0oOlYeEj}`>S-NbpvXA!V3f2|gfE!j{eMOBnqz_$dALQKN3^`dPz91$l158ZlOm+@8H9Mq0>3p8V^z*E{QkXu*KdME z@=ckA;!!v*z2fpy9WX@e)BCo17^}hioB^~%MXsuj#709WBlJA%8IK`jS#rPC0kj+3 zq-A7YNUlqI`%9VNq@(T-nO77Q@3OA9zd6)tFmok7VW9OvpCD119C~`&`a2U@U*70=M{z45?0-ikjx|AVW!-JRh|PeD4hNQQFqcSW>HIx=8p zvVGC7O|4rAJ*WcUWD-BRG<9@W%Z1epc~z&5q{u*gyfo1AG@6iW1MmLUe1BkWAr=^N zPzV~(FHQ9*F=GF$be#**Q8M7wgsebXr)dt+z}W=-8ed=;Ac%9e*K~J{KqTvulEd#`zkMWiZZGzIZyugBwjoI>r=kLgBQ>I zYthf|dJ6nXwp_UVbvu(X49rebw5qEUOH+4$%k09snVV3;luo^%8P?F?(7FZoM5UI7 zLi%?tZ-NY#-chdOogK;aP11yp7jaz(zIB|K7EBu8Q1}ZtbzIaLea+UZD%$B&S9LE} zf#rK)Fc&PwoJEF0r%E@|mHz7OGVna1&1R|t}H*+26tjMu} zzP9wP(|ODWs6=TrK~3K7{=V z#-@YJ!13p3`!zybaGs0<*4=*SBgTQgB9gxD?!22Vd@~GWlGo$rOQGDY=F+J@2!d_2 z^~TF*QSEHXeo^KeL|R~pA#CzG4ro=7+FTfghmz`swWC!oXR-)a%;%dMfNH%4`L;*wIj-J#eO9NO&xRUR_x?<%bl0 zU@+yj4U`0KxP(ZJD1A(Tn}z?d^{KiTc9f&pQpcMx+4i}h4e$$#FsOkoej+w8rK|Y} zje~wT<+gwSJ1}2(3bjR@MpD-l6U*WY;j9a2qE&dm$WLM+C_?}hL!FhoE?)M zY?13`3f2(5vObxJa-6{tc0&Ro3Q#6w2?r0$!N>;tHO9@0oF9LPJd2069d8((w!_U& z)Bj}X|GAdhm&270+IrtL}>(ZMY0yc)z(w$dx!JS z*>kSROyDF#0rq-URDHIHgv;p^CR{~6zd9s%3}=v-m!dR3(7oM)r;>247^sdd7u}iJ z4(w*iLu&fcx_329Szp&}zU?5A! zI6tc%=vys{=xv{UurzJ$iGEi&30Wxcu^DG>Gll)$+EBS34em3)bjG9|hNYj3aoyg% z5jqQO3T_BI+G9ffz#|D5H>wYtsq5A$D@{v?aaLe2^yhc zdc1n8=jS6!Tga_RNMmK5sTsyW3CaLKbaEgZFS zj1p$blqtHSl4@w^WuokswQMr9BL`6);KU~^-tuy}zg>Q9E5bLhYg;geTI&`rGcd@d zAdvplqXKo2EX?4goUs01+*J-4I`P^noC+M3WM%*Tq{OTFe@v<4%g%pqjh)&wR%amJ zoEP4NU)|$b5N_Wh7Zcno=__uLIyVP1%8g5raITHAiI7{fGL*dK;FGAJ1cq>I87$Dv zN1vLldbb^HbRNVw;vmOFkLA`ng72VigF}y+OyQ?PkuXZ~o&EqS>zi;1!~pB^cSmoF zZTS_TXU5mgUsN~0!a91x|D<<6KmVBfg5i_K<$?GHwRCPq6G(IRn%d{eHc}H$#tZ#?lUOZDPX=m4-{JF`T|tTwc^uAoocG^3GiPY z_48=7O46alCT1dn42I~#gX}b0)+putB~u_6{h?|=IN&vw<^8V>)#N3_rcc0!nT?K#e&qNJWU=JA?;Zy0F0MT4h5w`t z_7*9~ic%B1^>@(Vl zk5QFZ@W(zJ)fQ9SHLp*g0t1&%wxWJu67sn?`<`1&_iuh^`}WJD^V4!&0qtZ*=5OLr zAmcBCw2ZaKOtgF&5yEr2CNwH~mM-F(&4~f-C8JG~nR*YacAj%#blwJFv{=Bzk~CoT z{c3l2ciOgS8V;*t(4ZR=8qc7MaYUR=)B$mKv{)6jQbjtA{v2G_49C99HR!+zOe{Ge zM75?Pm{r}!VwfeGzs|Z0PD!H?6dis+DBHX6`CPfa5q+`G2WB0&naC4fkGrVX(ULSV zrfqx>*aIm=O|naksw(vM;|avXqQvx_;-?TI)$|J~gIg(OAr10_v8S062xRK^?QQO9 zb9YnEkA4eW;wn89uM15sztM$^VqD=PN~Hw6}0}mfK3j$ zH$a+Z1cWWJMKgx%fNi8-sK7@WJa~!K(T2cp*P;eio&)~2@`X9w zeAs&5;j_Khi4s)mLeXV6fI6S61+%+uZbmD*O`=cic!46qe-Kp87S7&pQ{=%H_n4x& zd*n*z47pZ?>L)QjiInXgWlUYsOUr}qNTr1!;Ir8#U$`*NUOJ96&V8c4)Q5K)=j$DX ztuYQ|4)7x)l-n$>|D3BxRMnq1SZV%xn{^GtH~ke34DWPT?t_5l*YB+GVcUr*_YuoK@NWNZrSW;5c4}v;I@B=w&qR#H~3l3KDjIx zG%o+|53wf3f83$ftH38?FvRlp?e*l zqmnu_oX}BB9ktjPmHcqM2PZfG3$S{Jl@QV~g>sFQq zAWWUYi|r|3HF~s|uFrw%n!Q6Em(904)flZN&2pq5E@3*7+C15xIt1=wTg7gZRq`C8A;hT1T{#BRj>G%ncu%M%g;8Nj< zt{x}5Al%$c|EgWkwvQf#dcYc@&@BsGT-8V7_DGvlPAAM*KR?Q$;VZ8-@U{0JG>RJCV<`7_t8&&P0`l zv(G;fnObX_vuis0$-%l&F|&1?z3(6|?qE~Y4^>frrJfF0C+$XzJ#U}*Zg|9(R+Xk( z?%ts^IcPCG^xPwIF^xqY$1w_77Lu!k)sfu4#J&EIG&#oeA zjJl_RlFE`_9Zed_9~Q7PVCy#~;bI^dOwS%2Q!bN z|Isau2JzunY(ue2oR=@OUIjg7c7V=h4lfh767IA*RLo!3U=4S_=?;)KkxZb+8mezN zN9yL{Yu8b}Xnaom&)(bn_7w2AndSL!7|)KLvf&&5#diK5Zl!xy;jTWjGBeDGGY|x3 zxpC=UCoLbROL50WlO#yrPAn%vh#st$wV_44e|;+8o0!Bd$%1I zmitc_c0?he$IqE6O)h$<}5q8}ldW!ws(bCALI5Y2A@`Bym5mEA4 zyT+*`rOpx7D)%nj${uID9exf@{vPzt>~JOu5KYxB!oEWv3CL$NJPa--h^STR1YTy7 zzY_*qA7`4(fbt9ZC7v}ESC4VfmAAPFp%7CZ$#f22`n2P?cG5Y8vusoFDl7CdE9 z4ia@k^*31j^zdAisUwx(x+PGc))PxJpnBaSU*l{;UJZBzZO&B{d6T5FJaQ9ByB4Ry z>0s@p#ipoXauRW|}ty%*vkn50R6!fCMR(Zw6}}s^?j4C-Mu$ z5zwjaFGsR#gGg_X(&RZl^H$9PV`SuB(j4^cS497EB-Grj1f9$dz!h_aAV>ytO4fg5 zF(mzxx&D*jGk;!Rd;AdR55*uM+RO-elW#AVVRoQ}vpc1;W_$Vj^-cw!%bZlcq!8Bh zSaRD|-lzkLDV-xjon+h;FM0QYbQqb$^PiiWyqX|1#mL9=OUi${eg9+WZf4>#Tg^~e zksYVs>#smlpt7R2j~S<5hPkGEuy3#~@-o#XN^`MPf!^(It;R1Qg?UO zxc&{B!OgYR#d{uY^Fl2?5EXeUswcQuZx7H3jNep#wX&rA_LpKv*a3#wMCEM;akdW? ztd$Fm{i0;`te$M0JU6~~%pqHj%{yYKIyWKUOtpokn4zw}NI1e_qo*~KH3y5S8MOv+I+<%Y3}&kz#zZF ztsmpn%HoE2`F7ZTyckftx`#ow;geTwFb~aF{P=f|3sNcr%v#l)&QPfp@IWi zjT`DMmwBSi3`|hMjc9s$mS6lRVFlPxc?`-$_IjTkE_2Z-^d}J|!IrF4TN<~H55R!- z*!_REkdKjMv4u2RZ~oNpUfqX{l{+(a#`6sct;|BInH5v;Mi%U5zsiVf#-h=iyKt6m!P1<)pcBU`sp0Uv&OBk*VB!G5v?Ml|_|;%db((8##g=qk zXp}76>KZNAR$CJ^M;E2PmtTc_e+?5%H<;0HV9QZW4b?qShN!tkO$KV!odVXTwGMS_weWypAqX$%Js!5-~2QhVpXtk6C`=NJx-3l_-b-z8n9pJ4tH-fyc3S zr0K_tgVlr^?JJ;R#TP}hCf#!xw2vONG>+uXtTW zeKpQ3^WAimEO|JIRcn~s-RE)Uq0?S1{5KzBt^Ua8V>nVzT#gxJScC)01h>sB&&1KW zpxJ;TX7{TUt-3ZNN;tSa%55s60x2C)~u4zW~2W z(WO^61~pH2&)`86fI`2o=+3av~cZr-GCwfV)+-ICP~^6 zT*V@T_g(SeL|9oW<4P!iZn6RHRFRHu)p*hl?Mz40RtG&0wI6EHFZHBFUB6k-qRIDf zn4%;>?CWM)fN`^EE8()H?>huIL98n2Q7k2S%7qo?Lt*t)?|&bJg=x=LnATs5sdLi^ z2ldwz!;18sg>N~sv}sRhQj^fUBtNW`(e4X!_og^TFkD|gzvTc`E{|RF@5kDS!(Qm9 z%RyZo>yakevcC1rv+Ov0L}H5I8ke3oTUvY5D~WV53h=^>cmv ztCMi$Y?H7Cmb+$w)IX=lLuzK@@YcXW+E6aCyl`(WwUi4!ytav_w@?zRaR4@qw_PZq z%!K);K)pjHU2qOlBcsX{Xj0_;THI1ZX~c4uwsNA58#073WCV4nmw-u_dJ{OZUP{BZ zfQ5asC!s8s(<<-)36hZW4z|;Tz1B10acE9%mIl=c=cl zEa#MhlI2#=JgV%L^reP@+ukfn>|3}-$twl%j&A=*g+&@KG!;&E)JAfL4ro+>y2>=? zq)sLNVDjaKn?t=QR!x5`+E*l*Qtaec<@bjX(+ht9cWG0!M zhD^OEvEf>FEteqb{VYYjAb)8D6QHbA5(__`t2CXaTsq8D{2kXdmC(y7r$c3CZVD1= z6gs^$jryy7-RK;1+Bj@8?$^|@TnPmLF1IgPCs);v2N91M_JP6-Q)kUFMCIada-1aL zMdU#(m80z>YE@E>d^KjZ6Sd#-^GjclPf#syTJKeB(saeDc-r=u^PMEB@P?Pl94MG^ z&9!Ol^ti~jrHm>~94M$6)dR=Y8E(`b#$NZ6sU;J4N)Lt*cDw1%xJ#yutZ%(0QSyzn zn5aPj~t9v!k z`U0jsj-1d-BEivGN`w14HPQZ&Ckr^n%m=UHFZbHr7e@WsQt?@Y+&Il_+2^X&z;1{};&M0bvU^M8UFhQ}U}$B! zrIDtR-`7FRvD8pZFX?2OA<(yJg{d{?BmL@nvUZUYR`gw_NZ@N+7=}spQo09SpwBdf zYU$S%ooIZaMaXYnm8y(ILa$J}`&RW}F=KX8z98}gf`g_VLasB~VB>A0^uXF~Tazb1hv<2>7MJ`2IiR%YxMNUtzWjirCxDI=nc*Y@Cgtu8uk z1+B!`i00PFTzki4t&j&-2Q&~mgMJXPRJ_TIiIg!mZj1#8E76Rq;w>y|OlFBc+LBxd z%p8}L{9`HGe_ig!QWRc@*IEx;~MpycdP0i zRZj9UyPYJ(lAWY^sdD3z0s#iV)i7Ulj<@cBWCFCW27^-jM)=Fpm$^(sg-a>E z)a*UJFmisuk$P?Hg>QP#m|k%ijh&mTs51N@>wl@%r@YKQ5riHM3QY# zq4|y(YB+yC33|eOxX2N?-z!wbTjx#b!P1%=IkA@_ZvX;6+& zyO=^U#w{M4BEUjA8h*p{I`<)x7*4V-9E;$B4hgVMm@nKz4m?dQVZ#0Ddc;+ zXU)B8Zv`aZ^1=wiOJI5jHceGY{N(jv2M!^un=#+;GY!z<=xPsMS(q_ls$W0P!NV|o z^qaNR6e!G<%r?nsNzw|fWqL?NfYdEDN^k9asp)e4luR+kvt;(;Qwwc#0BRfG_evgV zi@@;X)M_0558b?TJp-?l5g?Z8Z;AOY55{mg{qQRG*<%qMN{K~3?DG!yc?5jF0elPx zU9LVlp}AQnQq@f}C&Jlp&VNJ>dcEUU=Yck!v#_b#t}KZXbzp z(w&})X>HV|2F`QGNy$SSlUd%iyO&})6%YEGyJuR+7t?eVAU!S=YS9~SWxmx~&nvPb zDw96{46;jYG+}Z$fR)g)N?|ruk(vy;d;!_Cd|kk!f6m;OXfBb}qi2*QTOV(@#ZMBg z3EXS44+mMP1i?c(M=_(>TW7XO0eJzm6M^mi9z&UZz`Bi%-l#LfMSZ$r%(}j z>xCO$t}_#jmI+XvJOK_qtm4%^)`(X8($;?0tGJ?VkqqT;2mt(HfaZOM8EZWrHH@3# zs%+A$Pb|-wgdIt-2!?Y?kjO3VvrNuvnS+=C$N)Deb%LfJb+kJF%BC=uO1nxpC)B%Ob#dHH-Fca>p;CzDPOJk&HUhn z-H1#r1F`s%D~2ByQ&*C`Vj>7m-{=7R(pmE@MtdZmBDOOg3T?(p!|7c4TqC;?^6?L? zTqY~&7BvHEb^5DRH3V<)pK&h2SEu)TWbq492v1twDSwK;0132EiWb_gW=fu#F=8_D z-YFdIBJ`D(xvA?5+zERsv~Wr*A*eBPxdv zhs{d!kd>wS#140=#9atU`)>40hpIOY>Xki?Sq?faIdW0X(qPoFj#w_>PK`2B%1Xqm zz5;Mj9;!RnD31>c-SDh*dg}s6v(;ywl%&$1h*BFja;72ouDDY}Te6K2h&oI>*Z1ZGo>Q0Q7C9&=rEYSdqm|g9p>W}hRY!uqpR zefddNX2Wyh#Wj;Mz%LUe^)^CP9zg8(F!CVGQnvYtkG;*7f$Qf^(vOFE z$5FM!&Tn7n#9mo#1<_tSwbVPC_4Cx$piHd)D4I<~s1SKPwyj^iAi^ChVT7Xm1whw* z%>?3*TA^A8q~C3O7KM z`hf8lou=yup352K8(??-!l$)&n4{@^)HBkV&YiU0-!o?|`g96-B`SRl8k{7=>CuUQ z1X74T{|opv=K0Ar9UbiA7O{|0KlK+tVmEIa@zNq6H=iu>dy-9e--WQ04C)BetMEUz zcGumKjiz|!9G)-nfO4#NI4AX06hyX(F)}eoeiy<$Nn6g7@`xxkh#UP&)P^va{OXQSdTh z`G_r@KV zu6)KDTXCPLpK)p4Xx?bXL4Z1;SeL&z@%gWs{Up)<+4U1Zjp}?uskCBklOW+I0iXe%0JSmEurN^m z5hPEN1QiX)&x}q?s-~578g{-60D9$Exauvc774jXk?$c8&6p!`C0x#DwluwuuqfEB<2R zW3m6&;UfpnExvj%m0z4Q-*3P3k>l$(h$kv7G<%zG11rZ(=z`vq%Su4YIyZv zdO!cp%m;J5AH_{7U)_77!s6G)mq~YXyS+uNHokatH@DxJ{d9V3cj@-Szh=BVHt*Tv z{R^kfI(xk$`_DW+yY;hdRWAAN=x3M9mYY*>_ZbhTV(#CBVC;U0mW4Ih+Jq z6tNQijjOMU0zuVO(aL#Oa?O5k&QjbeT^IDu?Ma@NxzeH4Hs^rXkq8P3)-1h~_q@40 zBDiqZs@`L-Yxm_D?LHW>ddg0hn7+N-6R(PE?Be>fpswim%^gcy^*3xXFWGP>lJ~^j xH|jMj|GwDwCiY@w3U()e+-Ar2TV%zmped1Rd7m|$lmvzEL>$ig7gPWLCIA-`wBG;# literal 0 HcmV?d00001 diff --git a/docusaurus/docs/Flutter/assets/stream_chat_app_access_keys.jpg b/docusaurus/docs/Flutter/assets/stream_chat_app_access_keys.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1a869cc810ac318dfc60d3596349ab47805ec4b6 GIT binary patch literal 8919 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�N96=nx*m5rTXJOF!R~>4^5(G)Ki`tp1PL`lBPE3Y1=yTx(5WEzZ?K=wJ`G7*M7P@yaGf&7^f!4c5M2V($;)kI( zk+Aso3n?^{1@W}F<0kAT*_7wQGo_swndPRhzz4&I$ z8IRJ;?<5WJI8t0s;Q=`Ov5L6GZui6A=ePf%67+Yr_n0gTTM1vsZ$-R<#-6|&u66m- z)I$kV#w1Kx3Ar+(CO0PfSGTy=*x|=LA*De0~_pc)X5qS=f+;0MuQSP zf(R7DXd5sIWA&!6u7G@3w68|96uJPV8gjQ=QrCNq04i7NM1dv|Ml=hDt;HF4JyBUE zm$BHgUYT+5@g5sf?=^=%b*7?DV=Ih{vL$Zvm%#J>#aKS92#9P~_eMWU;FR8=Pty(m zSfl!i;kV0ampn&G24yj-^L!jM5h`KktPXzPSVgeG*%Uy7P^EF4%PiIEg?kF1C6pqz zy_!GO5qw6q!57Fkd%R*ALlXL4g49YLB%)k$Vj}qfVD5U@$X^6>9S0E1Ptqrq;4p2= zJm0o?V_pJwG+2+0@;7^WfYme-GazNf9Yf(<@9o1e_;Ua`1n`|vp2x&wp!G-yKu?;yu>p{g6PLdy-7SMq)@o@L95vhL+z+KLU~GMn(Bft zA!vY(+bGgcneI)@OQya6)!<|mO&Ya=^JxG1%BU}pG10mpa4$FNJer@xoUqJ(6?_#J zKOtEoS=4_vhDa8sG#6Or-mr)vhfJ%xCB%a#daoVVgDVepTN4Y6&x^J!=XLocIwzK= zK*{Y})2Utl=EoVOZ@(y#2b0RCn-??g^GunL6bYxXfQSe|gdd+yAuGAR*f>Y)L08%< zXaoP7JOK7sk3||c6aYa0FftMn7~xNe_U8}(W0eNMLBz(ThN-zwiEEf7=Hqcos0O}8 zqTwEh8qc&AyB@j zH`?QZ;J0`eTq1_sq4&YT(u?-nIK+kIYr@pUoA+BynELS~k-~)gYPb2<$m;EpYn!>0 zFbmEkHUT-Cn)li$%YGcJ2nAKf=s!mn8lbGSp42nk;X|t$vRot|;?Tn^M)@ z>~?Sq!ORWlT4*YgGoE8bUL7cNGZUG2i!!`r)tf8mvLt3Yc41#c(Nlp8LE^umE+7fn zwztY{$C(gL2<8m$u}lXwcs9{qN}fI`l8k?>?9mP6~jSigRiA)1YODi0vj76SRdk2oZ*}CClK6CCQ#Vk#ZAOkwY;{j5hiaABS zKB1JxXSP{#J+@?0G4XOpTF4E-)ld1j9srqgKiZO0=4)h)g&SFoP1QX-J*=16Uvd3r zJg<~4b-%CiEm=E-ta$uUO=f#Eg5dr{vuUzhZDm^JdUdbv-Yr*`im_;xKzzga_kUMj zwZ9G$m9ACVZy)@VUbe^dB7hK)kp7i0H!S^V1Q>-Qt{I2MC_$oV-`D4xkY&UxJ1xltJWa#3)E4Nhy=R? z$!Y2N<0J8+ESqdGXjvz?@z)4P%2ef@;3J2B5|$QUXTgGs$ppNxw%^E+ChGebAf{gQ bf>{H8Qsqd5wR)wRFA<7{$8^*8F#kUQ2Ub&s literal 0 HcmV?d00001 diff --git a/docusaurus/docs/Flutter/assets/stream_firebase_extension_configuration.jpg b/docusaurus/docs/Flutter/assets/stream_firebase_extension_configuration.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0c2129319c89b623c6fab0ffd6ab943c4712b1bf GIT binary patch literal 49231 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 lD*g`+U+$ main() async { WidgetsFlutterBinding.ensureInitialized(); - await Firebase.initializeApp(); - runApp(MyApp()); + await Firebase.initializeApp( + options: DefaultFirebaseOptions.currentPlatform, + ); + runApp(const MyApp()); } class MyApp extends StatelessWidget { + const MyApp({Key? key}) : super(key: key); + @override Widget build(BuildContext context) { - return MaterialApp( + return const MaterialApp( home: Scaffold( body: Auth(), ), @@ -58,10 +130,10 @@ class MyApp extends StatelessWidget { } class Auth extends StatefulWidget { - Auth({Key? key}) : super(key: key); + const Auth({Key? key}) : super(key: key); @override - _AuthState createState() => _AuthState(); + State createState() => _AuthState(); } class _AuthState extends State { @@ -72,29 +144,81 @@ class _AuthState extends State { void initState() { super.initState(); auth = FirebaseAuth.instance; - functions = FirebaseFunctions.instance; + functions = FirebaseFunctions.instanceFor(region: 'us-central1'); } final email = 'test@getstream.io'; final password = 'password'; - Future createAccount() async { - // Create Firebase account - await auth.createUserWithEmailAndPassword(email: email, password: password); - print('Firebase account created'); + /// Create User with Firebase and return Stream Token. + Future _createAccountAndGetToken() async { + try { + await auth.createUserWithEmailAndPassword( + email: email, password: password); + print('Firebase account created'); + + return _getToken(); + } on FirebaseAuthException catch (error) { + print(error.code); + print(error.message); + } + return null; } - Future signIn() async { - // Sign in with Firebase - await auth.signInWithEmailAndPassword(email: email, password: password); - print('Firebase signed in'); + /// Sign in with Firebase and retrieve Stream chat token. + Future _signInAndGetToken() async { + try { + await auth.signInWithEmailAndPassword(email: email, password: password); + print('Firebase signed in'); + return _getToken(); + } on FirebaseAuthException catch (error) { + print(error.code); + print(error.message); + } + return null; } - Future signOut() async { - // Revoke Stream chat token. - final callable = functions.httpsCallable('revokeStreamUserToken'); - await callable(); - print('Stream user token revoked'); + /// Sign out of Firebase and revoke Stream chat token. + Future _signOutAndRevokeToken() async { + await _revokeToken(); + + await auth.signOut(); + print('Firebase Signed Out'); + } + + /// Gets a Stream user token for current authenticated user + /// + /// Need to be authenticated to Firebase to call this function. + Future _getToken() async { + try { + final result = await functions + .httpsCallable('ext-auth-chat-getStreamUserToken') + .call(); + + print('Stream user token retrieved: ${result.data}'); + return result.data; + } on FirebaseFunctionsException catch (error) { + print(error.code); + print(error.details); + print(error.message); + } + return null; + } + + /// Revoke Stream user token for current authenticated user. + /// + /// Need to be authenticated to Firebase to call this function. + Future _revokeToken() async { + try { + await FirebaseFunctions.instance + .httpsCallable('ext-auth-chat-revokeStreamUserToken') + .call(); + print('Stream user token revoked'); + } on FirebaseFunctionsException catch (error) { + print(error.code); + print(error.details); + print(error.message); + } } @override @@ -107,16 +231,16 @@ class _AuthState extends State { streamUser: auth.authStateChanges(), ), ElevatedButton( - onPressed: createAccount, - child: Text('Create account'), + onPressed: _createAccountAndGetToken, + child: const Text('Create account'), ), ElevatedButton( - onPressed: signIn, - child: Text('Sign in'), + onPressed: _signInAndGetToken, + child: const Text('Sign in'), ), ElevatedButton( - onPressed: signOut, - child: Text('Sign out'), + onPressed: _signOutAndRevokeToken, + child: const Text('Sign out'), ), ], ), @@ -139,225 +263,98 @@ class AuthenticationState extends StatelessWidget { builder: (context, snapshot) { if (snapshot.hasData) { return (snapshot.data != null) - ? Text('Authenticated') - : Text('Not Authenticated'); + ? const Text('Authenticated') + : const Text('Not Authenticated'); } - return Text('Not Authenticated'); + return const Text('Not Authenticated'); }, ); } } - ``` -Running the above will give this: +Running the above will show a screen similar to this: -![](../assets/authentication_demo_app.jpg) +![Firebase auth demo UI output](../assets/authentication_demo_app.jpg) + +#### Flutter Firebase Authentication The `Auth` widget handles all of the authentication logic. It initializes a `FirebaseAuth.instance` and uses that -in the `createAccount`, `signIn` and `signOut` methods. There is a button to envoke each of these methods. +in the `_createAccountAndGetToken`, `_signInAndGetToken` and `_signOutAndRevokeToken` methods. There is a button to invoke each of these methods. -The `FirebaseFunctions.instance` will be used later in this guide. +This example uses a hardcoded **email** and **password** and demonstrates basic authentication. The `AuthenticationState` widget listens to `auth.authStateChanges()` to display a message indicating if a user is authenticated. -### Firebase Cloud Functions +:::note +Ensure that you've enabled the email and password authentication provider within the Firebase Auth console. +::: + +#### Flutter Firebase Cloud Functions Firebase Cloud Functions allows you to extend Firebase with custom operations that an event can trigger: -- **Internal event**: For example, when creating a new Firebase account this is automatically triggered. -- **External event**: For example, directly calling a cloud function from your Flutter application. -To set up your local environment to deploy cloud functions, please see the -[Cloud Functions getting started](https://firebase.flutter.dev/docs/overview) docs. +- **Internal event**: For example, when creating a new Firebase account a function is automatically triggered to create a Stream user. +- **External event**: For example, directly calling a cloud function from your Flutter application - creating/revoking a Stream user token. -After initializing your project with cloud functions, you should have a **functions** folder in your project, including a `package.json` file. +To call external cloud functions from Flutter, you will need to use the `cloud_functions` package. -There should be two dependencies already added, **firebase-admin** and **firebase-functions**. You will also need to add the **stream-chat** dependency. - -Navigate to the **functions** folder and run `npm install stream-chat --save-prod`. - -This will install the node module and add it as a dependency to `package.json`. - -Now open `index.js` and add the following (this is the complete example): - -```js -const StreamChat = require('stream-chat').StreamChat; -const functions = require("firebase-functions"); -const admin = require("firebase-admin"); - -admin.initializeApp(); - -const serverClient = StreamChat.getInstance(functions.config().stream.key, functions.config().stream.secret); - - -// When a user is deleted from Firebase their associated Stream account is also deleted. -exports.deleteStreamUser = functions.auth.user().onDelete((user, context) => { - return serverClient.deleteUser(user.uid); -}); - -// Create a Stream user and return auth token. -exports.createStreamUserAndGetToken = functions.https.onCall(async (data, context) => { - // Checking that the user is authenticated. - if (!context.auth) { - // Throwing an HttpsError so that the client gets the error details. - throw new functions.https.HttpsError('failed-precondition', 'The function must be called ' + - 'while authenticated.'); - } else { - try { - // Create user using the serverClient. - await serverClient.upsertUser({ - id: context.auth.uid, - name: context.auth.token.name, - email: context.auth.token.email, - image: context.auth.token.image, - }); - - /// Create and return user auth token. - return serverClient.createToken(context.auth.uid); - } catch (err) { - console.error(`Unable to create user with ID ${context.auth.uid} on Stream. Error ${err}`); - // Throwing an HttpsError so that the client gets the error details. - throw new functions.https.HttpsError('aborted', "Could not create Stream user"); - } - } -}); - -// Get Stream user token. -exports.getStreamUserToken = functions.https.onCall((data, context) => { - // Checking that the user is authenticated. - if (!context.auth) { - // Throwing an HttpsError so that the client gets the error details. - throw new functions.https.HttpsError('failed-precondition', 'The function must be called ' + - 'while authenticated.'); - } else { - try { - return serverClient.createToken(context.auth.uid); - } catch (err) { - console.error(`Unable to get user token with ID ${context.auth.uid} on Stream. Error ${err}`); - // Throwing an HttpsError so that the client gets the error details. - throw new functions.https.HttpsError('aborted', "Could not get Stream user"); - } - } -}); - -// Revoke the authenticated user's Stream chat token. -exports.revokeStreamUserToken = functions.https.onCall((data, context) => { - // Checking that the user is authenticated. - if (!context.auth) { - // Throwing an HttpsError so that the client gets the error details. - throw new functions.https.HttpsError('failed-precondition', 'The function must be called ' + - 'while authenticated.'); - } else { - try { - return serverClient.revokeUserToken(context.auth.uid); - } catch (err) { - console.error(`Unable to revoke user token with ID ${context.auth.uid} on Stream. Error ${err}`); - // Throwing an HttpsError so that the client gets the error details. - throw new functions.https.HttpsError('aborted', "Could not get Stream user"); - } - } -}); - -``` - -First, you import the necessary packages and call `admin.initializeApp();` to set up Firebase cloud functions. - -Next, you initialize the **StreamChat** server client by calling `StreamChat.getInstance`. This function requires your Stream app's -**token** and **secret**. You can get this from the Stream Dashboard for your app. - -Set these values as environment data on Firebase Functions. - -```bash - firebase functions:config:set stream.key="app-key" stream.secret="app-secret" -``` - -*Replace **app-key** and **app-secret** with the values for your Stream app.* - -This creates an object of **stream** with properties **key** and **secret**. To access this environment -data use `functions.config().stream.key` and `functions.config().stream.secret`. - -See the [Firebase environment configuration](https://firebase.google.com/docs/functions/config-env) -documentation for additional information. - -To deploy these functions to Firebase, run: - -```bash -firebase deploy --only functions -``` - -### Create a Stream User and Get the User's Token - -In the `createStreamUserAndGetToken` cloud function you create an `onCall` HTTPS handler, which exposes -a cloud function that can be envoked from your Flutter app. - -```js -// Create a Stream user and return auth token. -exports.createStreamUserAndGetToken = functions.https.onCall(async (data, context) => { - // Checking that the user is authenticated. - if (!context.auth) { - // Throwing an HttpsError so that the client gets the error details. - throw new functions.https.HttpsError('failed-precondition', 'The function must be called ' + - 'while authenticated.'); - } else { - try { - // Create user using the serverClient. - await serverClient.upsertUser({ - id: context.auth.uid, - name: context.auth.token.name, - email: context.auth.token.email, - image: context.auth.token.image, - }); - - /// Create and return user auth token. - return serverClient.createToken(context.auth.uid); - } catch (err) { - console.error(`Unable to create user with ID ${context.auth.uid} on Stream. Error ${err}`); - // Throwing an HttpsError so that the client gets the error details. - throw new functions.https.HttpsError('aborted', "Could not create Stream user"); - } - } -}); -``` - -This function first does a check to see that the client that calls it is authenticated, -by ensuring that `context.auth` is not null. If it is null, then it throws an `HttpsError` with a descriptive -message. This error can be caught in your Flutter application. - -If the caller is authenticated the function proceeds to use the `serverClient` to create a new Stream Chat -user by calling the `upsertUser` method and passing in some user data. It uses the authenticated caller's **uid** as an **id**. - -After the user is created it generates a token for that user. This token is then returned to the caller. - -To call this from Flutter, you will need to use the `cloud_functions` package. - -Update the **createAccount** method in your Flutter code to the following: +In the code sample given above, in the `initState` method, you're also creating a Firebase function instance: ```dart -Future createAccount() async { - // Create Firebase account - await auth.createUserWithEmailAndPassword(email: email, password: password); - print('Firebase account created'); +functions = FirebaseFunctions.instanceFor(region: 'us-central1'); +``` - // Create Stream user and get token - final callable = functions.httpsCallable('createStreamUserAndGetToken'); - final results = await callable(); - print('Stream account created, token: ${results.data}'); +Be sure to set the region to be the same as what you configured your Firebase Chat Auth Extension to use. + +#### Create a User and Get the User's Stream Token + +Let's explore the code to create a new user and retrieve the frontend token. + +The `_createAccountAndGetToken` method does the following: + +1. Creates a user on Firebase using the demo credentials +2. An **internal** cloud function is automatically triggered on Firebase to create a new user within your Stream backend app +3. Call the `_getToken` method + +Let's explore the `_getToken` method: + +```dart +/// Gets a Stream user token for the currently authenticated user +/// +/// Need to be authenticated to Firebase to call this function. +Future _getToken() async { + try { + final result = await functions + .httpsCallable('ext-auth-chat-getStreamUserToken') + .call(); + + print('Stream user token retrieved: ${result.data}'); + return result.data; + } on FirebaseFunctionsException catch (error) { + print(error.code); + print(error.details); + print(error.message); + } + return null; } ``` -Calling this method will do the following: -1. Create a new Firebase User and authenticate that user. -2. Call the `createStreamUserAndGetToken` cloud function and get the Stream user token for the authenticated user. +:::note +The user needs to be authenticated to call this cloud function. Otherwise, the function will throw +a **failed-precondition** error. +::: -As you can see, calling a cloud function is easy and will also send all the necessary user authentication information (such as the UID) +This method calls the `ext-auth-chat-getStreamUserToken` cloud function, which was created automatically when the Stream Firebase extension was installed. +This cloud function will look at the calling user and if they are authenticated to Firebase it will create and return a new frontend user token. + +As you can see, calling a cloud function is easy and will also send all the necessary Firebase user authentication information (such as the user UID) in the request. -Once you have the Stream user token, you can authenticate your Stream Chat user as you normally would. +Once you have the Stream user token, you can authenticate your Stream Chat user as you normally would. Please see our [initialization documention](https://getstream.io/chat/docs/flutter-dart/init_and_users/?language=dart) for more information. -Please see our [initialization documention](https://getstream.io/chat/docs/flutter-dart/init_and_users/?language=dart) for more information. - -As you can see below, the User ID matches on both Firebase's and Stream's user database. +As you can see below, the **User ID** matches in both Firebase's and Stream's user database. ##### Firebase Authentication Database @@ -367,82 +364,66 @@ As you can see below, the User ID matches on both Firebase's and Stream's user d ![Stream chat user database new account created](../assets/stream_chat_user_database.jpg) +#### Login and Get the User's Stream Token -### Get the Stream User Token - -The `getStreamUserToken` cloud function is very similar to the `createStreamUserAndGetToken` function. The only difference is -that it only creates a user token and does not create a new user account on Stream. - -Update the **signIn** method in your Flutter code to the following: +Lets explore the process of user login and token generation within the `_signInAndGetToken` method: ```dart -Future signIn() async { - // Sign in with Firebase - await auth.signInWithEmailAndPassword(email: email, password: password); - print('Firebase signed in'); - - // Get Stream user token - final callable = functions.httpsCallable('getStreamUserToken'); - final results = await callable(); - print('Stream user token retrieved: ${results.data}'); +/// Sign in with Firebase and retrieve Stream chat token. +Future _signInAndGetToken() async { + try { + await auth.signInWithEmailAndPassword(email: email, password: password); + print('Firebase signed in'); + return _getToken(); + } on FirebaseAuthException catch (error) { + print(error.code); + print(error.message); + } + return null; } ``` -Calling this method will do the following: -1. Sign in using Firebase Auth. -2. Call the `getStreamUserToken` cloud function to get a Stream user token. +This process is similar to account creation. Here you sign in using Firebase, and if successful proceed to create a Stream frontend token using the `_getToken` method - which we already explored. -:::note -The user needs to be authenticated to call this cloud function. Otherwise, the function will throw -the **failed-precondition** error that you specified. -::: +#### Sign Out and Revoke Stream User Token -### Revoke Stream User Token +You probably also want to revoke the Stream user token if you sign out from Firebase. -You may also want to revoke the Stream user token if you sign out from Firebase. +Let's explore the `_signOutAndRevokeToken` method: -Update the `signOut` method in your Flutter code to the following: +1. This calls, and awaits, the `_revokeToken` method +2. Signs out of Firebase + +In the `_revokeToken` method you execute the **ext-auth-chat-revokeStreamUserToken** cloud function: ```dart -Future signOut() async { - // Revoke Stream user token. - final callable = functions.httpsCallable('revokeStreamUserToken'); - await callable(); - print('Stream user token revoked'); - - // Sign out Firebase. - await auth.signOut(); - print('Firebase signed out'); +/// Revoke Stream user token for current authenticated user. +/// +/// Need to be authenticated to Firebase to call this function. +Future _revokeToken() async { + try { + await FirebaseFunctions.instance + .httpsCallable('ext-auth-chat-revokeStreamUserToken') + .call(); + print('Stream user token revoked'); + } on FirebaseFunctionsException catch (error) { + print(error.code); + print(error.details); + print(error.message); + } } ``` + :::note -Call the cloud function before signing out from Firebase. +You need to call the cloud function before signing out off Firebase. That is why we `await` the result of `_revokeToken` within `_signOutAndRevokeToken`. ::: -### Delete Stream User +#### Delete Firebase and Stream User -When deleting a Firebase user account, it would make sense also to delete the -associated Stream user account. - -The cloud function looks like this: - -```js -// When a user is deleted from Firebase their associated Stream account is also deleted. -exports.deleteStreamUser = functions.auth.user().onDelete((user, context) => { - return serverClient.deleteUser(user.uid); -}); -``` - -In this function, you are listening to delete events on Firebase auth. When an account is deleted, this function will be triggered, and you can get the -user's **uid** and call the `deleteUser` method on the `serverClient`. - -This is not an external cloud function; it can only be triggered when an -account is deleted. +When deleting a Firebase user account, the **ext-auth-chat-deleteStreamUser** cloud function is automatically triggered. This is not an external cloud function; it can only be triggered when an +account is deleted on Firebase itself. ### Conclusion -In this guide, you have seen how to securely create Stream Chat tokens using +In this guide, you have seen how to quickly and securely create Stream Chat tokens using Firebase Authentication and Cloud Functions. - -The principles shown in this guide can be applied to your preferred authentication -provider and cloud architecture of choice. \ No newline at end of file