From c2eb99adde1b119b6a6f5ca8990c7574505912c9 Mon Sep 17 00:00:00 2001 From: Ugljesa Jovanovic Date: Mon, 19 Oct 2020 22:22:33 +0200 Subject: [PATCH] Further ios improvements --- bindings-macBuildAndPublishSnapshot.sh | 15 +++++++++++++++ buildSrc/src/main/kotlin/Deps.kt | 2 +- macBuild-buildLibsodium.sh | 11 +++++++++++ sample/build.gradle.kts | 6 ++++-- .../iosApp/iosApp.xcodeproj/project.pbxproj | 18 ------------------ .../UserInterfaceState.xcuserstate | Bin 21305 -> 24974 bytes sample/iosApp/iosApp/ContentView.swift | 4 ++++ 7 files changed, 35 insertions(+), 21 deletions(-) create mode 100755 bindings-macBuildAndPublishSnapshot.sh create mode 100755 macBuild-buildLibsodium.sh diff --git a/bindings-macBuildAndPublishSnapshot.sh b/bindings-macBuildAndPublishSnapshot.sh new file mode 100755 index 0000000..57e2558 --- /dev/null +++ b/bindings-macBuildAndPublishSnapshot.sh @@ -0,0 +1,15 @@ +set -e +#!/bin/sh +./gradlew multiplatform-crypto-libsodium-bindings:publishMacosX64PublicationToSnapshotRepository + +./gradlew multiplatform-crypto-libsodium-bindings:publishIosArm32PublicationToSnapshotRepository \ +multiplatform-crypto-libsodium-bindings:publishIosArm64PublicationToSnapshotRepository \ +multiplatform-crypto-libsodium-bindings:publishIosX64PublicationToSnapshotRepository + +./gradlew multiplatform-crypto-libsodium-bindings:publishWatchosArm32PublicationToSnapshotRepository \ +multiplatform-crypto-libsodium-bindings:publishWatchosArm64PublicationToSnapshotRepository \ +multiplatform-crypto-libsodium-bindings:publishWatchosX86PublicationToSnapshotRepository + +./gradlew multiplatform-crypto-libsodium-bindings:publishTvosArm64PublicationToSnapshotRepository \ +multiplatform-crypto-libsodium-bindings:publishTvosX64PublicationToSnapshotRepository +set +e diff --git a/buildSrc/src/main/kotlin/Deps.kt b/buildSrc/src/main/kotlin/Deps.kt index 96d7376..b026cce 100644 --- a/buildSrc/src/main/kotlin/Deps.kt +++ b/buildSrc/src/main/kotlin/Deps.kt @@ -56,7 +56,7 @@ object Deps { val apiProject = ":multiplatform-crypto-api" - val sharedModule = "com.ionspin.kotlin.crypto.sample:shared:${Versions.sharedModule}" + val libsodiumModule = "com.ionspin.kotlin:multiplatform-crypto-libsodium-bindings:${Versions.sharedModule}" val kodein = "org.kodein.di:kodein-di:${Versions.kodeinVersion}" } diff --git a/macBuild-buildLibsodium.sh b/macBuild-buildLibsodium.sh new file mode 100755 index 0000000..84546be --- /dev/null +++ b/macBuild-buildLibsodium.sh @@ -0,0 +1,11 @@ +set -e +#!/bin/sh +#this will hopefully download all konan dependancies that we use in the build scripts +./gradlew multiplatform-crypto-api:build +#now let's build linux deps +cd sodiumWrapper +./makeMacosX86-64.sh +./makeIosWatchosTvos.sh +#now we can do the delegated build +cd .. +set +e \ No newline at end of file diff --git a/sample/build.gradle.kts b/sample/build.gradle.kts index 5e76d7c..e54ab0b 100644 --- a/sample/build.gradle.kts +++ b/sample/build.gradle.kts @@ -42,6 +42,7 @@ repositories { mavenCentral() jcenter() maven("https://dl.bintray.com/terl/lazysodium-maven") + maven("https://oss.sonatype.org/content/repositories/snapshots/") } group = "com.ionspin.kotlin" @@ -118,7 +119,8 @@ kotlin { watchosArm32Target, watchosX86Target) ) { binaries.framework { - baseName = "sample" + baseName = "LibsodiumBindings" + export(Deps.Common.libsodiumModule) } } val mode = System.getenv("CONFIGURATION") ?: "DEBUG" @@ -158,7 +160,7 @@ kotlin { implementation(kotlin(Deps.Common.test)) implementation(Deps.Common.kotlinBigNum) implementation(Deps.Common.serialization) - implementation(project(":multiplatform-crypto-libsodium-bindings")) + api(Deps.Common.libsodiumModule) } } val commonTest by getting { diff --git a/sample/iosApp/iosApp.xcodeproj/project.pbxproj b/sample/iosApp/iosApp.xcodeproj/project.pbxproj index 6b849f5..84aaf76 100644 --- a/sample/iosApp/iosApp.xcodeproj/project.pbxproj +++ b/sample/iosApp/iosApp.xcodeproj/project.pbxproj @@ -15,8 +15,6 @@ 7555FF8B242A565B00829871 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 7555FF89242A565B00829871 /* LaunchScreen.storyboard */; }; 7555FF96242A565B00829871 /* iosAppTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7555FF95242A565B00829871 /* iosAppTests.swift */; }; 7555FFA1242A565B00829871 /* iosAppUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7555FFA0242A565B00829871 /* iosAppUITests.swift */; }; - 7555FFB2242A642300829871 /* sample.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7555FFB1242A642300829871 /* sample.framework */; }; - 7555FFB3242A642300829871 /* sample.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 7555FFB1242A642300829871 /* sample.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -36,20 +34,6 @@ }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - 7555FFB4242A642300829871 /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - 7555FFB3242A642300829871 /* sample.framework in Embed Frameworks */, - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ 7555FF7B242A565900829871 /* iosApp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = iosApp.app; sourceTree = BUILT_PRODUCTS_DIR; }; 7555FF7E242A565900829871 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; @@ -73,7 +57,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 7555FFB2242A642300829871 /* sample.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -174,7 +157,6 @@ 7555FF77242A565900829871 /* Sources */, 7555FF78242A565900829871 /* Frameworks */, 7555FF79242A565900829871 /* Resources */, - 7555FFB4242A642300829871 /* Embed Frameworks */, ); buildRules = ( ); diff --git a/sample/iosApp/iosApp.xcodeproj/project.xcworkspace/xcuserdata/ionspin.xcuserdatad/UserInterfaceState.xcuserstate b/sample/iosApp/iosApp.xcodeproj/project.xcworkspace/xcuserdata/ionspin.xcuserdatad/UserInterfaceState.xcuserstate index 625e396c3f02811f00b9a26cb0164ab57b190c9f..e7ba4d6f2150c4e596c40c09b9d634c669304289 100644 GIT binary patch delta 10275 zcmch6cU+TK+kegqsE~v#2niV^AyFhD5i%fH_oxdCaaTl$iXu>!;>x+LTkDFpTCEB= zan-7A-P-ZAwOZ@yuv)8CTW7Vk*0xsPlK@tq`aZw+kKg-}58UD0_qon>uJOIT=el>T z1#{mA^K-%b3x@vWF9T!1L@)_V22;RPFdNJP^T8sp1gr*Yz*?{ltOsv_?O+Gk3HE?b z!EtZ`d;!jabKpC00bB-Gz%_6k+yFm=U%+qR5#&Jx!(kKH6bfK8jDvb;f@atpCP53d z!&cADbg z1Vzl7hw^YA-(0bYi` z!h7&Hcpv@_|A2qO2Z)CNibgR=fnt$giBu>KsgVY0kpY=eOO%XKkpnqV8fuN&q4uaV z>VbNqUZ^kXhx(%dCk4(3`gKd9ED@B z8f&l#n{gse#SZMmF5CvU#hr0q+z1qiCBo0BoiC4lU5{!q!I^l5*KlkG?Gp{q!Z~( zx{$7 zOX|p*WCwYN90(+!48(!v0Uz?St7-ccB*36@`>$a;0Fn2}w;l^@X<}$n?Klw@?u@E# z8aUac&;ZVZOT5qz1oc;*tKr&k0av!?G}V%390$ZSk|ySe?18hQxb16&9g%+`9YZOt zq!V&P)_!@#`94e64jp^uRu&A;9a`w?TJ9U&p?Gv|L6N0zap|bClH5FBR(WYfUU@~S z?*vc46M}M3Sq&=aSUUbB7z?V{$T%Pc69#n6_Z5{F3@h-Jdb<|o`^M5LI+TvMbXG0c z0=9y!bT(a2*9Z1W+qHTdRMvubz`I}8jJ90E}c4Mu9?b1RMp$;28LvE~4|8!{^dK zpsCy%eKP31Q*?gNdtb6=zXG$s8SqUYQyz^L(glHI^3=deIp6#(IPdM5#f(=2zI}#` zF9vN)7gK-WsN5a(x1g((M;Fr9LSni{TctO_PrMe@;1+$o8r-JKg0ZLw+)hv!>tpF| zP@7-raytHW$aVL@H1Iq41I*&J0)K&rfuqst@RgJoPT!y_m`tZ*5O|R%Jma z(vS}!h9pNMXHnI?czA~fw|6hj%PlV`E~gZa!fo^=9Bv8nFK7q+xPsinmqS_Z14Jc>P*{8ra#!@z>U|6{bHl!155lkmq_eAzI z-m!-6Yfm#*4QvbB!S=8N>^Bho$dc2HFN;!0m>?r>j@$gg?kLtTq13(5)@?vy=COkr+S zaYcE@vCM8|OcC~s{-09vN{b5%v&wVJeU{>3!^(W+IU+L)zWQBcmij80PkR*m^L=eA z#ugM7RDU@q$5D=g2gSHAnx zmT8<-1}k~;8dwf1===188aM`yr61CNQNuuga3>*H_mvH91mo_$qT%Hu>J^#@Dp%3* zqDT4zx9jUxqs+;08beI@GMoaZ(og7N`e`kk&O&J>J;H+LXfSxhp~}@@>oUuL;^NWF zDo+jiEm2ZwO9Zb1$VX(2Iw*R`4c8=?&*rNtvzzUGLW^*ay!ZIxL+npF{4 zWr){4uKtWTz(cHz!uRNT+UW%Rkp2HJ_)*~XSe5@f4v3y<3HT{I!YuIyY_!A=^a8WQ zIr?vwIKiMZXo)ZA6?!pbiOcnt_$p|Luj%)H8{%xp5SN}b#Gq&LhXza3*L!#c-sH7d z3x9w=!mIEaybf>BAL&(kjb5iW=*_k87W@g`hIio4@E3ZE{zPxnI~?G1Kp1$#m=f5Y zkP&E`pbQ*0S^{SitbuByG*FVD0*b&(2?~E>!2Jau@>;A~^>=u;%FZnv?klg)zlNs} zL=n6e8xTSm5yVGfC>%9GO;I!YGyR3$rN7d9^f!8+{!ahcfFj{cBt#+({7?5hXl5&>XdRdLRi|>IXvZKsJ<8gY2jk2Y75<4!{6u?(n;idr;4;9u?&w zHs~v_MK0c9-o(aL(vjzBq0gZ<^#gszC%4olPpp^Sfw>xWfO@_Mo)Pw#7odXG$_z3QA=vki)e75M`D|#At<-eAdC;A ze8jL`_PBO*DJWx@QN`*+-l!ThERd{fWkm(3h*3>65{*KIXfy{T9FTHA#sT?iRE$b^ zJ5ebIqB)?VojG6(%vL?u0#%_&!8zm5cr*b`9y;YPy932|=1YG^8lwIc3F#zD@;&<-XD$tPq|+JDA9w z=Wbhq+Qtq&l3gK&95oO?9@4MQ9CLw)zPi{;GS7od8IyIQGM~P>E=G!vsY4P?-v3ibz>7#9ew(; zC;Ao?c%qM+E#7|s%cl+nAu7elM@@fsATnO-AI2-^P2kPvE#uYjHuCnf96QIm z%6kNw0ttu*29N;EpgBkcErA6j13O3sPT&UVpf%_N27w9SW$@Rc z7u*B)SyKcv>Kp^ztntwic8A%l&ymYI9X>c57QhnL+gJr_;A%fy3y;DxtZ8wJ0p)!L zM-Jp-JqQo#!{WFcz05icv(XZ?tey-!KHCne|G)7ss^fsUKE2*WyIy<@937aOYtg%C zH*aDewtMzpV=C`O{|X{z^ggs79Y6=sA@m-4AANv6 zbOaqmpP^&HsAEVqlLIUx-r&GK4(#W^K@J=WOw`{tpl{ImAWM;>bKo#N&VdxVsuq2R zE})AXNaa9J4paoD8QS~N74##EStz4htI<^sIA~&{W;f7pj9#Og=ob13-9~rN&*&F) z7yXLvalpv|7YE!NNaH{{2Rt0e;6Q5*Jja1Hb?AOQ(MAtoFZ3|TvoV9ywk)UFhhzEo z5eK@k>|o#h-Ge#uzfHFPd#>&OKOx)yJ=gaCIYz}zW;!NCIg@+_ABr9WVt+~8@ z8&8$=VB><(wSq?7hTxG5R&XvJit}(j_Tgc8I39ruIMAO112`~{1A{p5A_oR@Acq4( zIFP#mkHUp`G%mu$xCFn1OA#yMLphMgfqV}5I53O@!#OaL1EaYAAuVg`#ePidIYr~q z1y8|KpQ2272A=u!z#RNaBM)KK7td$J3@^Z}rjOtN+d+_+B{vdN{2E^J^z3DL`IEC( z2BUu!2Sz_Zy>KmF4Q8P394O{M5uL>NRz1hc`{PEV1vlVLjAP+CypaPX9C)b)Zw_*- z(guzdIzas=lGP|@2j2O#e(&O4PY>+H2ZMpX5AVkZI8ey}mNnyQ@ge*kW_dJ$1C#?( zSaAK_5yKx-KI>$0U`(*>B!1lB!bgMWAr4dpqFO#Ve4>7Me4vdaH88JbSTsJ3zhtqC zzu>^cYWx)kCIxdV)cf*>h!j2>G}}3b(9dXo;g7*X8f<(q1?Y;#jb6dQO41;bl@g97 z){D9k6m^pWlb4g78vQQwc$#bL)2Uc)kB?ng3 zl6Is$>A-<%4(#Q?roc*T(F^2x-mx{L8|hAZke;L$2WmL5fdiX4u#E#d9ur^k0_hW! zm_@P)1DRS5tmeR)TGE&FBMb@Fa$p??)(4%R5csZ(IxsPr`pHl->{)Y$lMz8J>Nvns zViQf&w`rg~y|vzU6$OR)4Zb49r0iMq%Si=c(Y=KOTRHG%aK5Nszzb=ONAaM9G?w#Z z0%5T654GWRGMT(gk8t2E4s551c|5HV^0XmFO{Sx_w;!}^lJ{T~tWlF$WB~(Ww);8c z72+lH2y+y(!A=gm&CI}ocR29wTGE%dlPn^Oc{_RR#@gUXWfuqb(9Z0W7&zBO7x=o% zBtKcf)LKba1vzrCV;=;Jh$HP19&%uJi1CpcQd>{%d^MzoH*s)waei)`&TfvjVF23{0}f4gWSVLkZJST$kBInWT*~~U<^_{$9t5|y?*yAVfg32|l z^B^O87;NlgJqKpf_d?K78SE!Kh6KW|&;99vzq&^Ie`I9tPxi)3fMqxqtJoVZJvOp8 zTrF^KRvjuBHcw-4JPXgkbMbt<5LYv#T*Ka3)!|Ke3wv+%7DJ_LB$4!CuaOp!t>hDO zn0!gDksIU|xlMj1cga0+pZq}{@P+&+zJxF1NAneYB|na@;p_N%Ki|Rc%72kx!k@xl zz+cDT&HtGH3I7ZJdHx0d_x#KJANaTVKlAVM@A2>R{|JiwAeMhu7;6frnr zNW_eY%@MmJPDY%L_%h<_h;Jg!MVybg5b=G)<%l05u0~vs#F6~S@W`f-5s`vOQKUFh z8Yz#AiHwa@MXDq1k#9d1PcU<1g{C!3f2p@2@VQA5*!m87yKx=BX}qT zLL}r1!-Y+S7NJw<5~c~;3p0gTLa(r&aDZ@-aGY?uaE@@UaK3P{@HOF5;WFWN;c4MT z;Uf_cArTSz!$eI)%|wwRp(siu5y?c+B85mPa*5JJ9#Lyi8&Nw^2T>k&2 zE8Z>ME8Z_YC_W+nMtn|uP5e+2C6P!}60;;p;+Axf^p?CJ$&z>_BPA0hb0jMzdnEfL z2PB6i?@KJ5F?5a$8?U#jOi0IFeX3drI@mqikLAmn__mw?1|YIb0FrfLa8t-5*0~` zWQARkqR3SAR}4}NRt!;8C}t=YDi$eTRlKHHs#vD@TyaiuUU5NjEf&Q#jrHqe-LZMG zQ(|9tj*I~R8)?rPlixSMhJ;vT7i8mWmoOx;A?OdX?Es^ipJb-dc3ZmaI8 z&Qg2Tebs~1gVjUSL)AsFSy4+3H2=YV~?`oqChnzeT-M{f>HB*{0d9*{M0KIimSY z^SS1P=9K1~<~z+r%_Yqp%`ci?HNR;dYQwZrty~+Ujn$g8&9#ZzByDFcr=6i)pk1VW zRl7u6?bq(r?$;jDUesRFUeW%jy{5gPy`{aa{aF{LYocqWi_{5qQMy=NoKBS?`quh3 z`gZz``Y!rz`X2fb`q}!m`a}A&hNcFip^c%yP-z%r7;6}3m~NP1m}!`8SYlXec-^qv zu)$Dg*l5^nc-yeYu-|aV@PXli;jZB?V^d?4QEk*1wZ?d()tGFw8Cx0CjP3o#PR6dr zZpJ~zVa5Vup|RLlYCK{*ZMykqMfJNnnaHNlkK-!lX1AOdeBbQ*YB?({R&B z(`ZwPsmwING|5CwlTA}h{%NMwrbDJnroYTh&5>r2Sz?x(W6Ukhspd3uhPjQoow=8} zkGY?DfO(KP&pgaL!aT}6+FWV&o9CDV=EdgM%uCIy%(dn<=Jn<}^A7Vq^I`K*^XKN1 z=F{dc&DYI$%@2|$CrwS7o3uQsHmNS@outD_N0UBJI+^rE($`66{YmGOE+$=0x}Wq% z(q9&y1zGr(CYA_`&?2@-Es2&c7O$nyveL56@|op3%b(V8tI!%{m0IQ2IIGsGwtKAI>9>Ay24s*U2R=wt+Q^nzG>ZVecQUry4QN#ddm8R^(*Tc>pAOr z>qYA&>lN!&tN(g(c(N(ETk`1S1wWHRt*0I&G*Kx@4f#V~`5yvsdamPu=8OH_3 zJtuNvCvk>3rB0bs?u>C7oh_YKr`?(A^!T06IomlqIy*bFoqe4BoCBTnoo_f-I;)+l zonJezIDd3rbKZ2tyR0s|E7j$4rMog*{ar&{KGz7>NSEKmxn6cnaZPv4biL|Y>RRqv z>8f$9c5QaO>Dunv={oE>;`+>W%yq(b+I7)&$#uo`i|d~2ch>{gBR6n2bw|4WBDdIW zayNG;x?8%fZo7N9yWCyr9_ya!p5dPDp6g!V4!En`>)kuuhuufrpSw@Gzi@x;KI=a3 zzUaQ}{?Ywc8ZQl{k+iV1rfHFBqBKdGJS`?IHqDThp4KTXC#^JXX4;Ch?P;H;T}r!? z_D8xS-ILxvy+`_h^xX9P^x^*Wk?Aj`m#2?OAD2EMeQWyR^zYMer2m%wNBUnLo(FmO zo^X%Mqw;7x@gAe6rN`>Ads014&k)aC&u-8Ap2MEwo^L&uJwJM`dv1At_1yRT>3NvJ z%V?6(EF&sIong!{XC!7=GEy^K8R;3VGumWy&FG$yl`$k^c*e+#(HZ`dj4>Hi851)6 z8C=GUj0M>l*=@3WWDm%GF?&dMUiPr;g6zWVs_Y5bld`$&DcRGqXJpUH-kNyA!y=Uga7BcgNMeq7)Srv2u1ru@?|j6oJ4gh~;KgVmF#KmT01Y zz4sE0u|$nY43?M}V@ovA*iB;MH%9%? zpYtF%29$wvFbM>~6fh0U0*k<6umrpdmV#AaHCO}If=%Er{EW`7M_M@;8}PMehV+b@8OT|CVUG2gwNn}_ySP~Aczp6kq+sR z0U1#=YKUS`EQ&)x6S5*F@}R~j8Kt7;s0B(#tx!AE9(6>WP&d>Q^+5wr4jPI^qe4`K ziqRXW1dT-#5Jr_~2AYc&qh;tlRE4V1YP1GzLYvWcv=<#jN6;teGjs->N8h6F(D&#% zdW!x;&(L%9f~IIdLmJU^A6h^QX%XFk4x_{A2wFv}X$>7k$IuSiNxNv4cGDi(OE;ra z=v2Bn-JZ^%{d5PqC*6zAqWjYM^hkOXT|kef-=G8Z7Mti5^e@7_~qdRF;v|Lg8Gq4dO5xvz?B`Ih!{cmM0@~C zuyb%^BYqQO+))SK#rO;_oFVhSfO%7;t>7Dhf@e zCX!M8a&{`Hve#9(W%t$5U}7ezOKtQM;&Jcp7ex+w()ztvu^M zpca6>KAW*$#GqonRN(4fcS&U?2H!KRCdjS8s8@hZo>?@C^Ju zehYv4 z*Ya9xT0AU)Wg+8I7=UBoSbPK@#UJBiD=9NjfAXJ&ChejqD9ugo9F8(mtT#~D;@HJk}&;gk6Dzj_m#3*V;HH6R_d0syYT&g87(J9RrnM!`hs6;Gep4EaBV1*HTX1t+Geo8 zO@u3(;g(Rt$juI9cV%ckhlEuc@Or-l5YYmmD4u8RO=7P`${K`)M~Ed-StKJ@C{=1r zlvbxV=%X9P#KxJ-7JisLu>tYpFYTB&j$dk@>kh*(42v+0!x=2Y0<4Ur82G`KNR`!Q zcQ{?FJ25G>O^1%1y7tQI-ESbD@jYN$S&n7o%+Ki{2Nl8sp`gFF(?36vOXiT8GbIQ4H-90@rd-6}5<<8_LefkoM-lXvqmA$m+lR_5nKVU$Y z%r^N$1NlXT*(Kwu`={_rT`|FtR5^vI1=MnC4YirtLw!npMg2rQ1`$9F8Ui=)f<_<# zB!VQ+1T+OHpgBk*d20jOfeg?Q3?*HC2ABtG>YD!S+i4 zum|i*#7zMaH^qc(0XUY(o5gTb5N?6n;0}0^sFk}!uRKQrqDfk#wnTjRiQt%kI5ZFO zL}08!YwJ(rzYgg^uOHHA4?bI858L4Ofn72?j|pVw6y&ubM5qa^K~2me0FZC53Ue3y zi0a{32Y16ga4*~kKY;t;0r(+2h`+?=@mKh3d;x!hFXC_UrFDdPhv5-;6n+ek!Q=1* z{DiRZG6!rNaB?7(0|PlQhyz17kj=~854G@1_%-FIhUZB`x`LNg!wc{me3b)gKHk&X z0x!d>A>v-a*Q($({5^L5qt(D4>iXt){6S^E-mhZ41s_q4weTl+8{Q#6-Glex1NabM z$2af~_(yyb-@-rP+iT&^@E7Q7^mj9 z#v1s+jorY>gT@N}TC6CdTS-xfmHxtEMf|rlgbT5+Pk52<^@#+OSU*wMxKI<6QjMCTX82G1 z3_s_sN!|{1)Iw>fB`Kqq)XK~Y)Sxs{G84PKTDmoAQ|~8hyw?@uo%m`#1Cc`@6yxAX zO(^={s~!r^(Xi^dcNNaO63 zS2#Q{f&guEG#rV(p@NN16JRHNzC#D9FRH=2oN@txvh1T|9Eb`DIORX;6|JcMLC3F5PL}_r zThXfeX#+XAQ#EKUS|37T9S5ST&;|}Pd`$-g(UuSzTR9N(A3^{v1rO_l09hTs`wG{6 zX#d|H4{#vv6|f(LTpi+o>Azg9Kqp?h(s96i?xmtAxPeX*NfC}qUU~lcoO{4Yb26{lL*P|cMkLV`4 zg?>V}(H(Rb-9z{J)2u3)1C2S5z=6c|=plMU*(fu5gdU^c(C_F8MY?Vh2a-t(mXLu1 zO*qh$1I;*)vP0dh1&F7`bRpJGY496pfv~D)X?#?l_t@& zxLAUxZ)7Eqwn)vR_ zfi4{A%C~54NT)l}UH{9p8{M7m!GZ1^Ab&Hl)0FnG{(Kxt#aJK}b2g-o=-zP4j`__u zsypGcFY`n9qq8Z;YO=Ed^g!B752nc>M)uc>16gE?9O%t~KC9_?Y8RbL=Y?Jj$#!vj z4)oEx0llU#B1 zBbOZ6M04b!;p9qV6}iGVjEWyy5Khc@cXfE=SxJBe6g%5{HS2Xco)Fj94L7i8W%aST9ZxCyASgn~77!EyOLwt;B7_ z?Zg@4U2T=?=}2j*6icT_E2Yz=GlSCE()H3k(gV_i(nHc?(i75?($A#VWdfO8 z=8^eijb(|lWLZ;LimbUTO_nZeEo&=lFZ0Vf%0|dW$_iwKvSL|@EFc>zE0Z0lrRBiEHjY_G8{97sbqL&1+#y~+=i2b2eu=afGx zpQwOJsA`}JSBX`u%C8!&3aZ{yZBu=y`c@UZth%cDPIX=NgX*U0C)FJ_rG{!+EmSv9 zhpQW_Q`KqebaiWWH+3I%u6meygnFcUxq7X7vwDa6fcm8RGxaHTt%lYx8ihus(P%np zN;OzBMN_Gnu9>Nsty!ztrrD|4t=X$NrMafLt+}hYuX&((r1>Sv7L^#49Mv=!)heog zR8G|RsQFR*qb^1L5cQ`PXrr`EwJF->+B9vtwzamcw!PM`9i$zi&C%v+hiOM>-_QoM zW3}blO6@f54DBrKA?-=+SK15Oi`q*%Mi;G%(Z%V^y1u#!9jBYAo1=S6H(&RzZkKM4 zZlCU=?vn0`?wam<-3{H3y5KF{ZQTn!&?CJ-FVctU<@$#DSiMPa(Kpg3=#%tK^f~$> zeThDxFVm0HkJm5Kuh7@%SLxU259kl-59tr894Ewx;$bzp10Cv#G18yD8T+%rwF@%2a52!xS);nJP>ZO+nK_ z(+<-i)7R#3v%%cd+|fMDTxu>iSC}W5Ir9|ro95}}Bj#H3S@W0Xug%|>zct@7-!|Vh z-?wB~dRc~9Mp#B#3M_?|VoQl7U>R$fW|?`f7 z>}%{h?Yr!|?R)LV?8ogV>?iGK?dR=*5K?2qkF>`(2_9F!x>p>`M@F%FX>-oZM& zj>e88M-xYyqn#t)F~u=6=-?d-9ZMWb9cvvM9Ge_l9XlMm90whT9UnW6JHB>&?|9&N z;&|$$oieA=+0bcoW;nY#i=36tx1CFz%bd%d)y{R!jm|C3?arOf!_K45W6n>U&s^ay zu}kV=TR#mD>^|zg;C|={^Qb)yJ^ek|o)MlBPtfzG zXNG6C=Pl1d&l1lv&vH+d=S$B6Zv!vmHFz6(4vK_p0}n_ks5}Ul94ieG*@!PvO(~jJ_D3$!GDoeO_OZueGm(ud}b4FVol0 zH_$i4H`JHsEA+kLEB96UX8Ydqz3qF)x6HTPSM6KnTjSg6+v7WwQIJuXF+O8@#;lCF z8S^t1WGu>fH)Bo4`izYkTQat1?9AAmu{YzgANpPXEdOBtaDQ<>f2n_he~N#)f02KQ zzuLdbzsA4LzuUjhzu$k*f7pN2|GB@`f5v~#f60H@f7O4>|H%J~|FQpx|LMzn7Fa*h Lb6>w_@jv@Nxf4mR diff --git a/sample/iosApp/iosApp/ContentView.swift b/sample/iosApp/iosApp/ContentView.swift index dfe33f9..e9437d7 100644 --- a/sample/iosApp/iosApp/ContentView.swift +++ b/sample/iosApp/iosApp/ContentView.swift @@ -1,8 +1,12 @@ import SwiftUI +import sample + struct ContentView: View { var body: some View { + Text("Hello, World!") + } }