From 8f91c4c516d7b8072420d50ad74f0c3f93dd9f4d Mon Sep 17 00:00:00 2001 From: Yishi Lin Date: Sat, 10 Jun 2017 23:40:47 +0800 Subject: [PATCH] Add a dummy extension --- icon/icon_extension.png | Bin 0 -> 3059 bytes icon/icon_extension.sketch | Bin 0 -> 40960 bytes pass.xcodeproj/project.pbxproj | 172 +++++++++++++++++- .../GitCredential.swift | 0 pass/pass.entitlements | 10 + passextension/ActionViewController.swift | 47 +++++ .../AppIcon.appiconset/Contents.json | 152 ++++++++++++++++ .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 288 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 600 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 961 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 428 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 930 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 1547 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 600 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 1363 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 2475 bytes .../AppIcon.appiconset/Icon-App-57x57@1x.png | Bin 0 -> 890 bytes .../AppIcon.appiconset/Icon-App-57x57@2x.png | Bin 0 -> 2249 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 2475 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 2232 bytes .../AppIcon.appiconset/Icon-App-72x72@1x.png | Bin 0 -> 1240 bytes .../AppIcon.appiconset/Icon-App-72x72@2x.png | Bin 0 -> 3095 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 1298 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 3249 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 3665 bytes .../Icon-Small-50x50@1x.png | Bin 0 -> 783 bytes .../Icon-Small-50x50@2x.png | Bin 0 -> 1896 bytes passextension/Assets.xcassets/Contents.json | 6 + .../Base.lproj/MainInterface.storyboard | 72 ++++++++ passextension/Info.plist | 43 +++++ passextension/passProcessor.js | 26 +++ passextension/passextension.entitlements | 10 + 32 files changed, 537 insertions(+), 1 deletion(-) create mode 100644 icon/icon_extension.png create mode 100644 icon/icon_extension.sketch rename pass/{Controllers => Models}/GitCredential.swift (100%) create mode 100644 pass/pass.entitlements create mode 100644 passextension/ActionViewController.swift create mode 100755 passextension/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-Small-50x50@1x.png create mode 100644 passextension/Assets.xcassets/AppIcon.appiconset/Icon-Small-50x50@2x.png create mode 100644 passextension/Assets.xcassets/Contents.json create mode 100644 passextension/Base.lproj/MainInterface.storyboard create mode 100644 passextension/Info.plist create mode 100644 passextension/passProcessor.js create mode 100644 passextension/passextension.entitlements diff --git a/icon/icon_extension.png b/icon/icon_extension.png new file mode 100644 index 0000000000000000000000000000000000000000..911bc9a223b84c16df51f46fbe7f5dd5ff3b3bb9 GIT binary patch literal 3059 zcmeHJ`#%#38|S=rI8LR`lI2>Gj)Qm$Ng=n`WHOdpwj4=AhTzu4c!M84?e9I{q;^{;cv4=EmW}$YVf&#TzHLSNC1@iItw;>=h5`Bfnks zbm}l{`K=BX(fm#?ETFO@>U?hPLuoNxECH_Ai2YdX_fP%KhHu8+>MyXF%jYL_9aB(L zzNGNo!QT}2{L}sqhppqQjTnurXT1{(vBaBOgWQ$2r0~E%sb?{&Xf@%jeo0-KK!A z_lZ5Tn6bzrh&Mv>=+M{4uBN|Ab!MIVoQ1ypv_64RJKsO~9dOTI2UqpKX1Ek{NA?|* z+-TllftLEENL_JIu*0)3thHxkZ^~5Kt$QqT)525yBCK6+eRXI1MQw!EX*%#Rjm%l2 zVlKBQ))hQag9j=#C>d#(UL8B3HUo2JR<1g+ObdsvBWo!2rOn`|981?ObH-9ffVG3j zsrkTTOYkFMQv#t$O5`JweMRl>uw`dSE!V8!yft_K-L%_+=*${lLq!{xO5e7IbMtd$-4DDUu;vbFN^Uk#leoEm@fG4vt6p_X>y}XjT0@ z2YZ_St8{dLcOVLV3k2I#SF_9rw1yA)Ryd8l@R^TwHbK0-c&O$*uV{WTD?W5j-i@1YOie|)uo4b@#<#;%v(MLSnf1tc8bEtdWxHR z@Fkd59c370AsWS3*JhNQssMJm+=Km_x-rABez;tMI4RLA#kWnUUXMueA%9;&<*aG! zL#76bK+UxNfDLxv3{>`_WM!D(v;1*{_pp33T`O2Bao6mLLJlWn){Bt?6TFy5R>fgOe+4#~x$YXB*1R#4hmo)9-X zuf$55=5r%e9>qFz1hmA_BBz01R1x_#agWxE+{CKw^Ekv4nG2YeYCZ#dUucLTNUd2$ z%NO*?9|lt2Yy`1t5P6b6$vraMEIq7bW;@wo^7=@n7sG6wR~R@F7y z{!>7DZ5$0Ad{jyeg3NC`kAKSjs-(&QZgGFj`w9~(S7o5o#8@LF^!zp?_r5m4{i)T_6#^I=5chbt>63?>CdsOR2bn)%G~SLS zfL0zC+GfWaHBrYyNYkX3CqV1;8P`AdeW*G`5&zDTId+cd?^b?NHP&TdyJpZ3 z=iRF8YQrHc=^m}L(6mzSGSQDnjV&wRj6aX*$Xq{=XJ?EuYJ~Wo;2TNeN)d9RPewzw z5+o|i_)d;xfTC&kH8;#N(NHTZzR2W(!%}0^Ji~npV%y&{ncA06wehW92qR6$Yj<1u z2mr~b&Y}(BD;Q4v9LX^Uk@34Genl7q3UzeDWAGxVHDr4zYZ@eB_=JVKai86!wM-X% z-I1hsJpZ6gw~wan))!e-VKP%~GCXh*BjBn&Bm*#x9;4aqJ``ZmPFSG3X+uILn7J7G zFt^d&mPj_ftG;7K$e&8TBC)HI83@k^w>b?QMQ8_}0ST$f8ngr?Kay=Lxet~_&IZ%= z;(UUzA$bDv1K`;id^HU(XJfc=Faqx}ZwV+xSnV8f%{@*E_ujN;0je^#FF~s62CJhP zuo>p95()MjBKzYkr?&nJ$FxQr#47{xYT9%;zsLa#+vinnO!zRVy~dZi8Y6_MxEBca z%S5&vq&n4sptCTIye!L^t}qEU5UZwl3<8f-^cb6HoBn7gW5W^QU0BN`Y|4QN=YE|d z)x)Ou25c)bdmEk^tSmF1YY+eq=;Da}2Qj;sIM_PxQfA}*sJ{Ba5Mh$xmu?Qrk|@?W znt`{refd0%u-4MxC@8i&jFR#lJ7w9E2Sw|Tu^3{t<>Ia?h%&aOCvao_NOZ|9=>{ZI zBT*F~cO=<9eS&7F}7(f|1zxcg4`8xG>!Rc;UT1j99o3jS}m_q`f z9DM5XrPzmW+_WbV0}KzX!a_9NnPrmp^VGcs{HvQq(DK~VUJGcn<^`v|ouM=1=>IRR zfDcDWgd_tJ4|dIB-~nh(Xk1SYwNPF?BB|{iFOQxqXl9svvjHyTr;E6oI(fbOZ0U^? z3m5fBEs*J7id*GqVeRrqcJi&!fMssn?xaof zHAH)d=*ShX*bWvAAD1v`?9`GLMJ2=Cl}}Q~nOwAY0oUaUUCsZvcAi!fH=vNjISY-L zdszYI%T+8tEj6O>xN~cc^XJlLvn#(TuIKm-S;>?<#NczT6Zpuy7&{L=ySw3y)*d~& zZkkOZ(?#ns^*ol8P3HGcbF?{GoPXiiF?NWQpn17QH#FFz+`7RMZ#3`@`?QYUA%cnk z(8x-no!q(^s-^4cKk`nsyY>+y*QjjtT}@(ZRP{W5jz1ey)dyzQX!iSZ3FP)wCs*Ab z$jt6B)Ja)}Ky@Ppmj>BXNyJm&jfk)&kfe=cc86+x!AGQH{#KZ`a~+dec3XX3Zz3RK zCB^Ezwb8D-;nw?sjf+Uq;gxe+Z)oWEtUHCi!X)>1=GoY^Jx`QpTQMuDt*#!Rowk;~ zOZpcFwtOh|x8AeaOMIq0B>$1W;j_kf~e z_h9e6AF=nY*n3y>`0beh2GI9C=YID-_x_(Ji6oQVX7Ar#W$(4t9^?8)$u%-shEkOy z*3j4x4T51PfJTEL$O8NsfWMX(0xpOxKfpJvbN#DJ3y5wIUE(phrNDfF1!o0(u1W2eBcMk> zkANNlJp%vJ5eP#J?HnCpnMN#8$nwNR3Z+=u{6z>J5E>XCN{bH+iVCGQC(?T4igRQ% zjjT}PK`Rg|@?|uMLMiDP0UO#mJHwfHJ2{{^saOLFYQK>-Ew!ZnswvDjZ|Wd{y3Ffb z+S$wbt~2V~+v%#)bjMVO4-WMpL;unvphrNDfF1!o0(u1W2eBcMk>kANNlJpy_J z^a$t?&?BHnK#zbP0X+hG1oQ~#5zr&h27wq;qFrexNxobmC7P%;Dw#M(QasOa+yd8AZn>Vty`g36f(Z!({0iXj~cGtE>zjUNz?L2@q5sXhP_! z5$EM4%2aB(GWVB_#%WaY+)TJ#OT7^et6WAVx|Rym;sRM8xmu%C75%&s(3?P&N?g>w zH*$D}w%^USm{kV%wv3L64vdYBi;o!)N@sJ~UcB=1F-&8kV_9N47_&z9i_x1#$A!q# zHDDlORmU3{cDxY*4843t+3YHZbY%`*qRf)z$i=zoN+}pDU7an{q-U}5d_$0*BiG>9 zJur58S;+_!JEKP#?p-n#46A|Z7)o8Flx@#&LQ}*VBVtn1Ix?%kcf_@hRv0JJ}ZDQ zelfLe+K(|Jb}6NZ^EFCro_~SxA> z_%F=&4>@{Z`50S-$S5<<6KBfQfw|H^l}4fztE9g`<3DrDPuS9p6T}m61wlejUQlS5 zCr8K$@e~Ru~PON^tktRc>r1pXJ47vptz%e6}YigcIf|3=I`{vVq^FqpRhEf4>4-hROd|D4_Nv-!4TA^Sw|p?~QS z&?BHnK#zbP0X+hG1oQ~#5zr%`M?jB&9sxZ9dIaE(phrNDfF6PWeF%(;MTlJ| zQ4%8hHJ@OU$X^BLt#>p`U+}TeG_%$xVs71l7rIVpV#U93;oPX_R?Z5M2Jp zI*OGM$(m~8+_?+Q&E1135Q@Bg65Mk06^e7lWD`>htAWvR^lVv?dJy<-ZYa?$T_IMh zYs}111SQl^EKwqAidv>o+&C<+u;9=@p=Xd+Sdb@&84Mf;9Cn~5Tfpb?SsXs!i_gM} z{R963c6(cUry9FXr~ztNU1lV@gW(kPu|g?UO9?pcTu7s*s{ zG6nE|0@tAHo>yAD&yr2Lx>mcO#wZ!w`=9t4&UWkGqvs&)C^6?olJ-)j9@6T?zT3oN7vL`)_@-v6W5>H0&6kXpXHb@r7sm6_?6vCy~F9^T=i7I&urSgFHf>A@7h+1OmaFU_r1V*b*EF zj)ZQ69t2MUhrlO<5W)$42?MpveiJf=$dCzS3YkIX;3?J=KrdF1HAIDMAX~@|>IB&X z`f-GuAZMsExORrRLN4Ibd9VU!I!%#6rcMMxL8eisQEX+o*lFE3g*;srkqbPkVw@ur zaEE0Yg_54HQps{Pn71$@S1K!P7AS+$70P^Rf?B4E2m#cLw;T`7@y6k;w>FEjxlXew zc(u4Ju}T&ZGFYli(~7BxkQ8m-igF}Mg*x>|se}PhN%`1aax;{uIZ7}_?I;jB6NON! zG5A1GOYjN(LveNi>JIgQdP2PbZoMH7z+rTVk({X#OXXmQ>cn)VLa73nSjcn0aDxF` zYsFI{{#%V20^w2R5rxOy0N77B=yz(2z7r7aa_6x|ZTB z5DX$7fNYehmP2XKP$0i0P&y>V`v2c5q)}+Pp#Q8*P^80Mwa~ZTHjUD?V=EoX{4W5K z0cE0AsC644vLQv=`HRE(xV1COp&Td|QbKvqa7fjD4%?M&H-{Z^|Ha6G*213WZ-6g2 zv^f6nKtKcKqc*5*8w84=k!cjy4wKR<5nG|CgNmWwfC?W4lsF31_!tb1e^L>MxQ-Lr zvHkzi^koi}K`f|zaO?7w&IAj}PPZub(C^R$Xd*NTnhZ^Wrb5$zx|&ORl5p~$-^oGZDXC)+VX&Wg-jI!9(IvN zp~`d975P%2bc1nCn}W8ntzFRWLE6s5tK>OgqME^xYS$N1wRZW?3~4jKVfg>~p#~cf)CqNL z!>;?G17J6z!>(X{z{aGxel2tmIs_etj$pj`%Tj3+dtHWX)55=0jTfO~V6exb6VOTM zFF>-Vz_3q)cXj_FFbnB`N;E0}eXL4}^%A3+gb{M7CMz)u-&pl8L_3pQ15|tQInb)q zv(Py}kvbzB0G2Yf(0S+rbP>9Q4Xk}8Kvj1R{Zi{kVX!So!6rWZgs z%>X#)3MX42o?3*{OI+l<0dxHp7f};#zfS2$R7M}H98^+vQMK} z0WlLKPS4H+LMB%V7D-AKm`q9gl+Mj8(ynMku9i?Se)L3p8>8;18ws6^PBKQPqSFA! z(v4A%9~^7^4|m}|VOiK*%X!_-0vv!`hb;kQ-7mt{Fcl=sfo))0FnmYY4(qycw^ zyQERWzsbEqRLp z#{7$LIxGb($bi))69&6*I19&aSh6MytPFBxYIPD;AERiXghTPYw=^kFsg~nQ348~N zib$y70%%16=fJtJ63&B%!w#?tR>uL&n;=%?Wr^b@;1oeZrb;HuMTM^ZcVE{vJycBU zc%kKpe7K;kIK;(9Ej$7)1g4>p?S*BtP-!D9o74WKumsyA_&2zuEz{s~HwZ_w4ju)M zhEZUh8Uv4o%iwWXS9I^8Qx>qRE>pJ2vDe{tZH8DaPY(k~gN;eYT0b(W?JLFt1qD`a z9qMS)b-Sjs!v*a6lO1mhW&92(!{;inzh#0sodiqa$?z0-DzL`Mz^qP(E8rQhFW|D7 z;1fuFFj0A84N!@>@j&9?@-G3mKMcuL%GJ1yCKpgkQBsTD0&rGy1#G;ytZXg`%r&Sl z+7Io6`jOhu6S$iL;Dl;acnNfA4m=m02hWEWzzg9;7<;Q1kuDarKfN3&I zmK&2NP6xM6X}L9av-k{^G6yV)m3is`8fA(M@V#0Vg@@y#;Uv@_4M4+^ikWn-2aQ?M zBBE-6h+2+@0AK>o0Y=FHy{H47T8Rds!EJg9uK^gXh1X$3eu~~L*71gitN&jw`uuL= z|EBdqOXM5iKif+5@MgnK9OzpuTn}%AH^H0Ri+$Zf?ZkfDtbaB2ErZ$$dcP74Z8xYN z@B`{>hK4R=a+v}Sm&FybSOOMH$SKhdYd5?HC$CmxPD{6HffaWju;U)Uh6L!ZLjkaM z)FtDVdTkl(zf$ozFgJ(b!@yX46h0P@J&7+KYyntk6dHj>0ul!n6lr8? zv~P^1?I!owkT6dcolSN>*!ZUL>GHRKoIZG%%%L%9O35&?j}MKZr4SkyBn_Z30ObOT z2j2>Ck_cP&No6!YKQdVNg5y-=Lb!K4DZWQMGnTm__Naknz$}7`DLMDY^A#E@dBya@aUn&{&z4hehM#ZTk6PgKusCOKNGL88iW2>ZhPFv?FP0 zml2mQ(cojlRzKh#;1erBX3-cy?K(|k{1~fHdxvna#>~Sz7e`~ntHinLJPe%lA{rw& zj>f_UJb=uIplMX#(T$8qT83Dm#wM=K+^w0_Z`c7QCG4Z$q17f4?%zW`h`K-OWkm9% zUoJiWas2MjZv8WpnWRO&iF1zd2Q2y^jxo77ZSx?-!b$Zz_QqB}N!fDa=CghEqYhRr zj@fZ#iSffpCD)qrv!Cxy7HkpE`68ILd_!boon!ZFFA5wKk9KCN&a#v3?#QzaUfI2L zc4}gFlLsMLwR+aml+^=^FJ%AO`LFM_Rja36-ZWD^{BT{e2Rvj|N}gR~V(RJl*U9nk zuWx)#VX1<{wgooMrYu=dAbFSBlUsM%|I>rbK?$;DCF56EMjxLWC_BvbW#9kXD}B(g zW5+6p8t!p}&^0f-L#DX8^QX?c{>SwddyZDj3=38F=>7QBfVwZw7AG4m{$s67`qx&j6`&dQA3uNwNdSUq}JD+pkWP1&kT<{K-b$5PJxw5zS zb06tO!O)OitnU?j=?`8pJs!TWbG}SE-jUKV>c9ww&Gl-bA#6HZXs9C*;;KCkh;|u1 z)xl~n8jFP!KpR42=`u_+C9;~iBpR>_BM{@^T)@CIMu@Bc_!9<%2mN=}UO0P1eB2e= z@eRB9yG~oV(A?iSj5Ma5_3mRs>^~s_jYZ1Kx)p>Ngi$SfCQ9S?!r|jx(nF~xW5-A? z8NZ>#9^ThKB((9yfii zYKP=g_B%O?Chv&7InVvhlF7vClsWFVGnf2kB-<4qF%N3|*yG%}PYa?TCUtJw$%oyl z6%)KdsrD}>yg?w+tb@XxD)UL7g;|TB!eyEFClV(_NS0Y%nj>#~bTs43>-xCQ5?1e7 z2m0Oly)dfb-A2=?OgnU)a&{=}o}4o`tK#_@r{~X;FFwfnyywcT&ZFYK`5qnFl<>OS zvxY^1lNTl5QaoGD*kucSa2qt=xqf$L0<X?@_=#2ri@#ccJoy!$NW*oe0 z+TCQ*vu6r5yf~ZQ`w_os@fhXtJ>|lWb5FczO7vc4=U?g?VZ)Y%HZEJfEHdQeNmKKx z2I;qtl<)WU3gv$tJK(Wk@m{;v;~pjSe>BUuY(mzKaXzI<)9F%j+2{**Mt9r_DJ=5Q-8-|^RIF1^^BVd0!!KP-QYPl! zi3)Uyd+@<@npEXp<6*z#R+(ZSVl~}J^9PwzN@pS-L(QB}b{^p-4Jt$XPzbXL^gf6@ zfcR&i-(`p#$hr&{j2)H-oi81EnixHXmuHwl9Jtpk&%_iB44h2t`PMHz#`E<7xoqCO3Ssfhf`_5J4u$`1T_RAke zr)eC+Z*WPOATg|&wR^%yE~4rAdhir z`)85@j*J+y07*xFy>j#pW=Biap<(6gV$GW zAY2wd^L8>nve*8uQ{Jepol?AVxoe4AEG|vnfj&K8cBk9x!kxWtQeTd-*r$Fa`K{}2 z@@S{goo`L+a(GYo>BfVI*<&oa&ZfC3+~O$?q=%$$WtRIn{YzKGXk5xEMF&$PJvU6f z9Jn*Wsay0+YDBr4-2k_qb2pa8M+|dG?dIEUSJ#=xMAC3or{sVkF>Box)6(26X86a> z>d}oF)7L39=t{J(@3w%VfTG~q0cI<5&nK;%vwh*9m|Y9E4 zCz&7_dzX8tzx&P^r8Blz#nc5nUVqlTwyQ(Xx!R($TQ~OGD7q@U%5)CrFKs$E^YNi~ zT^{XvXDoA<4Q}kw=+x-YSbuzg;eO`OPwWBqwUcK~-Z6RFTh4=R4fh(Z@z%+QeBar# z@^i1;UcXhkRAyAdmD5&6B`7aYFDzV{vohv9b6B@w;$c^YHC>>un$obmVZ@?_g=w7c z_rH#RvVQx7kz2nEdw<}G?~|Dh^Bi_N*gGURRB;Y-?dRprJ2tOz-b2ojjah?CHW3Fk z4tlt02(xnTi<9vg?)8&|)oa#1U+#IvZ|RLyzH8D~)F)*wiLO6oojQX)m>;+$WlP+M zpqNNT5+iM0|CiN%{THuUymU|ap24G!?>$YsI&@Ot{Cz8`CsywfFA^`glkU2*V%3>m zO9n0RJ}gMzJbdD7zk7qbt)H+kVn)Q2WBuYTpT8MDbbG_b2Gi^ZS=~6RxI2#2tiPU| zygKaSAHoAZM}J#VH2-sN6W>WmlNQ?Euub!L?h)tt)T2vs&t!w7oQ+S`e>rgV;JobA z^pYdx!|tWmpIUa~!KO8Jp0^72JTLK{m%9Fj?T+Xj4Ij)uxHNTZVj204FC4$i{NrU! zL603}B^NB8KDx8@)a%LjjJg+h-*7Hs`K^V?r+S_;JGI2b)b5qtdCyL&GsEv}by8K( zrS!>Zg?ZKI6RuU>8}#(c$$ponJS;evbMVGx-z(p?HubiMw5SN5bY#}@nGYQrOosek zwQgX=z;#<@e3ZN#_HwzO$Zvw*6hG_T1-n<3Fg}UDA>RtV+<1HG)x$5Bnqr6o;%ehZ z=VT zZJDoa7e||7w*pn&$Fnyg$KQK)mwfL9ot-kf{@GR4rpCGx4Qr>T?MoistFvPl=UbHT z6Rh{wHAby{m$q$0Bk|JA9pjs3JUra{;gr{@pJZPvh*f2OmYoTyI+!{kJz{NyO~gGU zCUDd3{6Ev)l-{qKHGS5Sp6t3ab$`jrHh$W8F34RxaeePpwr}@cj02n{%;4?Er;CqI-u-&OmewrRxe0@8@1IFJmkvhwYO8(G@g7@^JdGAfzNg) ziU$uLY9XH{owm_y#h<(St{WD9VfmA#Pf8u8&3mxxN%5BF3$Grzc4^P8oYCjtDTG5t zex0dKJ4YY=7@NH&Fz1l?`kmDW8lKiX*}f-pblT{U=Y3vRG=z@}uRXGVTK)y^^OyK5 z__KKXr_4CK;ok5g%5S&d2NzqfdK}AMvh5R5&{g>Q?vYPjUM@2Axl%N-WaZ=T-xhz^ ze0tEtLDd(pU!1UcDNkM;Reb9)dTycfDQ8dr`QLwgH~GWddG*ILBO5AC*({hZTs&gb zo1nwvUQe1}H(oSQaOi-`kGL+Ds!zc)w^V2$*$++ z-=A&XNg-@3<>UO<*_Q$264fVfg zPAlIU%=ljUd0or_gNC|>-eDWVo`kOnZ{Co4q$}_7L zj~damD^qgp;H&I2Pv`pgy}4qy@XN&yIS-|e?w=bWf4OY=#G9*j`+q3?R^62T?nuSs zXEC2*Di=@jAMu;<*EfaTaxxy=`dIe1spFCtUxs1}TrVE0bY6-0q9`6Y3m|u07toGN!ncZ}=4sxI(b#$?Sge*U{>sbiCx7SwJ_-)b@8 zX73O2yC?Wx+VsxpRpk1#b=xAuqYXYy`*QX-q_9i>cXcyLG&diHr=_i--ZZ>vP<$qD zxk?mwH0hq@f8EE;>PD#l#x*-v82ois#AnyozKI-|ox8R!@ao!m$^A{f zdCm16GVN&3oE??>XLUJYzP+H@{)BDc!)G3M8@(oDWTxfS%LY3Z*rhl#Xk#%`{j%`TtkGleY?INjv#&pcIUb>!tdHyp}gcW8ZuYDCzNg|5I09I(+$S+TZ2#)<^b!=NfaG#ToqE znr393mCrxxw>&%B|CzbZal;*-PCeh9ovryg{Oyz*lX8ym*5@AHy#LeXbsIdt<_ti* zhmM>$yZZR6g8jyYuFk$G@Huz0r^?&Or>_pUx?xG}lh386UAyh`Kk9e#?6y0nSN>h| zcU|s^v=w&eZ+Qj-`-fY?(T5!WO z=f&WV@!$7*KTXUUyu!NVIpzHxhpXkUqJMk9u9;-?e*3Pw50~`0Z&(p0T7Rp_`Elgk z8=5U=3ek@V4c$Y$yYL;pujM;bnwrM);}NE)ko5R*$cOy6>566 z4zHlGWqtZf=c$n22DWpX<7kIQ0qxG!ej{?Q&5)c^usaC6o~i=`4T7BihK$dCxde&qjN zL`(E|ECNmlTrWP4?Cu^K6GqnB+#BH2sjcDTSUk=WxB)%`2@*j-IQZ3K^*#@b-4tq* z*hMH%aK(MM#pg;sxmx(Z(dmU4Y(EZU!hiqQlT_!W=2sja^^zksvai^~b+1_G}KKa?x* z5o`8sTh!ww8EH=Jcq!-c~@jyH= z^8a}e;M3A|b^WOOFP&Y#0)d6F00=B-G1mLR*cU*6JMPaC=gBads6`@>zDOhz)j>YAlxQy>ex&~^x2ATg zqLG-ka-}th0tDIS$yOn;NPlDi5{JYi2}mL`5J^Ikv7YIQqPA7qIqBPHI<_GT;A+mn zZ-fW`rBR&P&V2i9-Miw|FvOaxwhawv0i`)pH+-x)sZB&gbK3s`fP;~gwuFrL3wO4y zLQ;_-NE$K}5hD^L9g!k3B%?ju|0v#$?sYSC83peu-hR6ZZ8CIF##N9uy7FgX7cDve zCm_0|8|{l^X`_7+IWi2%MifX67OsRx{5GovBo|tMC^4~*r~vz@5e?*s5T+1-$hVgQuWnpXZaN6v%>_{w1Lc}5ZRj}`w}eMo zMqt6cSRgQ9LIsHI#~fxLz9~qSB`%Ny7xBP66>xgVMxrm0SWM+rY^H z?1`NqG#`6vV-8R)AdXE@6rvK3h{;U=;lV0J5y;2r6N`C(Yy=V&Vx`#b7Uj33E7Nn z0f%_hs0JO5s!$L}2~HVe^|6I+YfaaHNG*!3+0h^#yEPj`dj@uR!??yma2&H|O zYLLB{u;`GECxO5Qai&U~mxXipdE@|c5IF?+$r(8UH2qOw^6e3!v?bdPR#82*3gB-_?KH;9`^T;Wr z0XYp|IsH5X_?eH%@*jy|*ru2Xp~Yy)Sp=+dkc-Hr_~^KZ z5D-E5oA&lskgILlsX?ycC!~HfqAhm=xd~2U;i)yqjh1sr!N~0z>`0Zi%w6POTYcMl z+M*V@k2E3=kcaK{ZEJ~k`c^0XU#bgp1)HsGXbD?MS`DS%JwZ#9r7<>(l6d~;kD@*b=hKcZz|RXDaSOMb># zvJRL7wJf<5FysI|0CN^=*Qy@0 zVwM+JwQ^Y{+Ep3BiQwFkN^rGWN9auGLZA`45?lztr%iDG8MQPoBHF|oV${-{u1hWd z7j<&mkUR$v)CS(D@EoBh0Xw$n2+;{1@e*KQPt44hOFo9_d;7#x$_!9gG{)7NR zAR&kVB*TBG0TvOu3(+>MwO#GCS#;^vX_N8)#%iq16l36ZNYKu6Bq0i{lyv%x#nP=J z^dm$QVhFK>{)7R9I6^!jfslxS*uEf88M-)Nb^qr=rUfL4klZ#JHAI=7kLgp)5>!hV zL>Np+A*5np=pI7QEz~X=wQbhF;($Rwq_sR}fH0IG{_&&%dvG$mH#nIrg8boOAkMrF zgvjm$$KJ2OFW~nGj97zhw-6j~9{@Haa zL$)P%B0G?s$j;<0WE$Cp96=sJmXm)YPas#3=aA=-7myc`mym18YstsR=gBWkOibKN zL?&@22_^~?l}V9Fu}O)^D3kFf(@knj)|l)uIcxIN6gDN9b~WXj2AM{g4mFjSN=-9N zvrLDZmYGg7tuftf+F;sf`oi>;=^Hbd*+{d=W^2sWnXNbb(`=*JCbKPO+sw9`?KInM zw#RIr*#WbIW{1po4cZg$e_lv#t>8MCuy=glsdeKof`sKE`~k`DF8D<{QjUm_IQ8Zee3Vx8Pd{EkqW<7Eu-wi(-os zi_sRP7E>+eSuC(vWbuc^cZvz6Glfa^BFhbyJ1rY5?^%Aeva)it z;#h@S4Ye9+HQTD*>bTWit0rqpYX@s5>(18U)`P5vS}Uy!ttVPnT31=mwVrRi(0Y+| zz4a#Rv(`_nKU#mKB2)va6_rZ0q1sXHsg6`PDvQdda;bc32sMn_hnh-Fqh?WuQ%6$A zQWsKJQ1?@BP(Rq1+SuDT+Bn;I*>G(7+YGYFvnjTzuvuZV&*qZNeVfNNFKk}fys>#_ z^Uc=KmgKR|}J%L@#-p)S9e$Ih7R1P>F#97JN%sI=s z&uQWkxRzWuZXa%6ZX~xKH-_7v8^=xHCUOUIlevSrsoWvlH11HYge&FBxS8B6uADoa zTgzR>UBO++UCrIVt>>QPUf^EhUgqB6KHC~6>lzYK5rp!F>e`f9q$b9D(@rjGp~tH;al;kd|Q4ez602s3;8j8 zDL;pg^2hP#@K^D7@{jP(@!#`5@;~#N1Vn+Iz)9c+p6Tx`=p#rKNCg>!EWvO=fuK+@ zQZQC9T~H~g5v&r_3$_aO2@VSy1P=tSg(M+OC=|vBlZ0wvzHo%_cVUHaiEzE}PvJ)4 zX5m)hA>k3>G2sc}E8$n+-y%qah=?LX5lKWAnTpIsY>~exP!uc*6@`l;M3JI?q8L$s zQKBeKBo<|el%g`x1kobVa?wuFKG8+dGtql*Q|~U`Jnv}lOz%?fS>7wW_jzCPe&+qc zyU7RgG4e6?G4Y}L^!DNT^z)JVjPjY~Q|+_Fr`Bh!&oQ6dK25%Mz6{?!zGB~E->JSe zzB_!+_}=ur?R(evrSEIsx4vKf%>CT`_ + + + + com.apple.security.application-groups + + group.me.mssun.passforios + + + diff --git a/passextension/ActionViewController.swift b/passextension/ActionViewController.swift new file mode 100644 index 0000000..2d25934 --- /dev/null +++ b/passextension/ActionViewController.swift @@ -0,0 +1,47 @@ +// +// ActionViewController.swift +// passforiosextension +// +// Created by Yishi Lin on 9/6/17. +// Copyright © 2017 Yishi Lin. All rights reserved. +// + +import UIKit +import MobileCoreServices + +class ActionViewController: UIViewController { + + @IBOutlet weak var textView: UITextView! + + override func viewDidLoad() { + super.viewDidLoad() + + let item = extensionContext?.inputItems.first as! NSExtensionItem + let provider = item.attachments?.first as! NSItemProvider + let propertyList = String(kUTTypePropertyList) + if provider.hasItemConformingToTypeIdentifier(propertyList) { + provider.loadItem(forTypeIdentifier: propertyList, options: nil, completionHandler: { (item, error) -> Void in + let dictionary = item as! NSDictionary + let results = dictionary[NSExtensionJavaScriptPreprocessingResultsKey] as! NSDictionary + let url = results["url"] as? String + DispatchQueue.main.async { [weak self] in + self?.textView.text = url + } + }) + } else { + print("error") + } + } + + override func didReceiveMemoryWarning() { + super.didReceiveMemoryWarning() + // Dispose of any resources that can be recreated. + } + + @IBAction func done() { + // Return any edited content to the host app. + // This template doesn't do anything, so we just echo the passed in items. + self.extensionContext!.completeRequest(returningItems: self.extensionContext!.inputItems, completionHandler: nil) + } + +} diff --git a/passextension/Assets.xcassets/AppIcon.appiconset/Contents.json b/passextension/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100755 index 0000000..d98c3c4 --- /dev/null +++ b/passextension/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,152 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "57x57", + "idiom" : "iphone", + "filename" : "Icon-App-57x57@1x.png", + "scale" : "1x" + }, + { + "size" : "57x57", + "idiom" : "iphone", + "filename" : "Icon-App-57x57@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "50x50", + "idiom" : "ipad", + "filename" : "Icon-Small-50x50@1x.png", + "scale" : "1x" + }, + { + "size" : "50x50", + "idiom" : "ipad", + "filename" : "Icon-Small-50x50@2x.png", + "scale" : "2x" + }, + { + "size" : "72x72", + "idiom" : "ipad", + "filename" : "Icon-App-72x72@1x.png", + "scale" : "1x" + }, + { + "size" : "72x72", + "idiom" : "ipad", + "filename" : "Icon-App-72x72@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png b/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..433575a1da06adcd50d6fa7496978d2422e95fd5 GIT binary patch literal 288 zcmV+*0pI?KP)ikK*Qs?_T8S}b4@8eaf)ULU*QaMxW!%=c*b>z4Dzv35D(G8O{lM+jWzUxyuc@3@t&Fb zF>;Ab?BEekI0{Dz7eQL!5UU}+pRX-d2%Ek?q>pZlaf~+%Vwdx{#{rh{fDe;G^%O=o mS4J>iOO9by&wHo%i}(WXO(niOb!)2t0000Tn~Gl=D6lw;=!czt<%|i?X}KcYwdN`rl6ppprD|j;D4utrrf*< z<$vVMFUdPvsu`CIPN~j%J^4>c_2gA_U~b61gsg&NIG=O4KNmoLT#aWi$NK#xWsJdI zJi#PP#5%miyqxZM46E~+{VrrAHjs!|1(xM@S`rxu~B<`d@^Rl{I!&|{kR|c3qvonyNq42){ZMN z-WNf@Y&^v9Mou)MijUz~N631y7H@DAomhz#7%d&yx7c_oo<$J5!~T&}Cfjfq+e814 z94t%6cN3dx)=F59&3KNNQc1Lg-El0z8qC5a+`^w&mh26jkM&cq2Ek}_46B0U@LPAMa; z($91a8zX?LSRj>3n^b?(B7jz@8*D&N?D<0mf7J(<#k(6*V&fhI{jP$oQp-3K^TjwP z9dEDnw|7M_{aA%hn2)bGjrX}dha`1xlZMxfl&LJTto!GqEai0ia`Qd|H%a!+Y|A;h m&>gawD<~)^C@3fx;(P~x6?DR`XfQ|s0000Zj57{Kw*^PHX8A3HW>L#0xw zR4SE9rBbO>DwRs5QmOoxXw6Z!-Stf;A34^+k>XwDSTmapw?)>@!*ke=uQ7l@9G~NR zu?3s5-!eJV&0I5Ozm)6NF&CLBotZ7;*p6Rt57uEPw&C5J_$A?VU-nzsZj9>`W8L(b z*cP3lUDD_)b^R;b=TAJ|d~|Mqe3#MMZnr6f$ibSI94%&e)QrQ`*A7m$nl4AyvfX(l-nkZzg5(UeIlSlCU@Wm z+?;Y-Q{Po7(`=u4p>+5VMz8{_aC#arhVSzok=agRGz{bOZ1)%M_IJ&JM~{8~}q8dl>Ie39dgfsdrVYq6v-{xNY1z);FO zF9OGzyz@_lX`deI|~bRl>1b_VKVNIB=qH_DZZ2HQ**ZEsEE; z2x?0#<)PHO4iDlz5u^>p{PRXTpT(jQKa&$IGWp8cEYmyFn6tX{Y))s|_((Xr3)gkY z^$CZc%Kk>Y*~6~QqN+1d^`~`Wwj9Z4AeF8Zjvv(f{(P`7qTzg8k6-hf(?kGwi^9`i z$PS7v@n!Zu!-Y7bYo662fQ>&#eGzGbasfUT$3+K!h`shgj<<^6mZ+{fM3zSIme`+L z#KmPab)1V&Q|DNYznb5@Z=z^DnKD1(ZM-a2#sL$Rd&VU_n~mOF3{J+4IpH3$bkENA z8z$droAz?tCaUPq;xaLc8*sTOI@|HASgy;(@pdHTHi`3@IGYFY4%Xu&k@XkxUDy1_ zgsFl#*J?W3KRENItd#A(tT$0TJi|8)jcilNn|`~HFaHUZwV`yXY&W%~QmIrbl}e>j jsZ=VJN~Kb%{2%xmM=sLErnVwc00000NkvXXu0mjf^?&DF literal 0 HcmV?d00001 diff --git a/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..1a6c07c8740157e731abbebf8eea3da6a24f1586 GIT binary patch literal 428 zcmV;d0aN~oP)6H5XbS)-Dw~pCTE~9R;Vb(7z+xbg{?Fu&}rwzKS4TUEGeWhG0|8k6$MaG*jia= zBMDRngHmZDK?{gnBCN&D%dN{T9aj5oUfyrsdo%Of$x=~KQPG21iC!rqd(qD z`e0dOCkp#i`CGilGwfhEl3v7EoO_K=xQ`3Cf>-!}M`+_b?&`YJv(rQaLzuzixV(Uo za9|5lk-QbL=lF)}ID=Wd>y@L}X<{G0@CKXs8kgJA*;%aWSpNif(8PS`BY23PIEg>; zZdR5wi%LhahmFuLV-mOV05{@X6VuW0Equoh%wZXeSeN_Wy~aGlJzT;rUSd09EnLNC zoWn}&(_qc&*gJvW_=qKkC;b0&)E_C?k)OPVPQ__BGF^9Sy4}=s=l+@8ii(PgQvL!$ W*iSA@UOtNe0000jsZ zckmJ>vfuwzW)JGa_81(CtMd61Y{ewb$1QjdtFco!TckeSXixX(dss*M<(u|?*bJ0g zF@>YL-jC!&9?tf>IrcY`s)qZtnU#JrI$uO^G6z_IUv#3o6>sC>Y)|4M+=Y|V_BlKv z0;+NnKoFYnNN7`@5IZj~}?!>9sj;}9ezoj$3=S9@) zo_t=3%{lSg@C+Wp?djb7hLf-28{C8Uu@*;WKhq+3oAEt1;$2)TN{9h3fF=7khOMcS|6gRZfj!ds2@3qmnX9up2X=Qa>ZXEzE5cHujW z;YTsq)eZa8({_P~_+l~nFS1?wds--Bg-#Zi;szb{JfV}>VsoyLE&VC;Zz&VoARN6= zWa|tZ(XcCn&ciz4+;$O+aeVBri^$=4O_aenwqTQxc3G(p#mk~5cZuxYhl8_^flIfA zn}wrCcm3W<2ZnNzZ;HBp6xWF?J%G`)UyOygG96ihHA3FI@nQBeEVi_TBB+<+ejSI4 zVg^RZ!n$I@vqJHzVTEFeUcNFLAaA&Kn{d>+w8J6OtVl zd*)d7)57(5Q3PhWsL$6$#{ctkb+0JT`N%fI_xodm{#L6JT{_1%WjsZ=VJN~JIU0JY7}*E3hp#sB~S07*qoM6N<$ Eg4t2pzyJUM literal 0 HcmV?d00001 diff --git a/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png b/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..3f80a633df4605374a9d410e5537f221c1ee3e86 GIT binary patch literal 1547 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 VPP)qyI;a2u002ovPDHLkV1i~@m_h&m literal 0 HcmV?d00001 diff --git a/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..b21276c25524a73734eb2d7184a4b79537df08fc GIT binary patch literal 2475 zcmb7`=_3=21IOoRZsJ)JN)IKI+``zDYmT{xD5R&UAxCbpQLY@hMVUF~szl9%9Geb} z(oBxbwPI!@%Y8iR*Y8hwUVJ~_x1X1v3};7c2~l}b001CiYh&s9=VSjrVc;J^(FVf+ zfJnHlrI}kSex)of+sFO*`}3g-qg7%)z-6-4;RgRBj~k?)@@rzezlGeb?h|~+EY)`* z+MY8IZMD0Z?V>GzMCTFaiSlJ{WrIEle|7CBtVME`<)!ZY&eb*5z>3~TDDH#f5gX)dYz2$&dkI%L|n*pD_Gk*V({Nw26`=< z_xrA+lrJsbm}l%K$veT)VcqgOyvUcsf1Q6lse>CMwkV`1xCMv-NU6m6(1?R5d%c5h z8MQ_jFpobyu*p4F$xkl~I#hyY7FGbt70Dqr_^dnbRNOpP>omQ;7faQgpAevm`5R?~)+EW4v;M6a7He%pmz~|bn0d*8)5{It>5M2Pjtu8tzQJ13{ zL()RA%ljN!-_S1*nEZ--j&kYQY>Z}3UXO8k=ooorfhR0|u-L? zMRpQ?U^~Jkhj#2=Vq${XV9@InpoBpCh1Y zhcyu~0)EMPlClc8L9E#b_tSvpJ_M)u(=7!?_@fIgB7GLmteQyr&uFl&P+Nv~hnbY5 z>em>r-CUP7kAWr`Y@9T&Q)hnKp-FtH%Lx6<95LkhDVYlA&W_i{Umr3%{W&=|g*Rjx ze&U46_`AP}6MzKB!7tS?fwgQ4TH!1Jb|O~&(f(`&(*u4Awk^m?M_cTvXDXZIaWt%b zyFqIHH*R~BH^vBDtciF-ZFaHZ9S(!>TtRW*Q(m2}lL783BXK-UmK)*|V-#w%FcdY< zQ@m=>Qqh;Ux2U8fZ)j4%0AlIElNG~_H{+ee@7G0W+u_Kf^+I!6M4>$i_1 zq!$Yw^=v8$2#5M!`P`=FRDO5WI)drhbtpCoZ$(in&*k%UB7A7e`|ym`5bxS~#HK@o zb&~5X_syaM3)zq)KELf|d_Ea}xDUHr*cF^@zi2)-Nz2^7&RETJN&7m9>Qq->9hYVf z-YGPL#PjhS$(B%|!K-2}vEF_^B(c`bNv%3*)@&na}yk8|JJ;GH<1ZdBKMln z!OBx|(BJf+>W|R6GOu@=d99>a`u*TO73DX~ksm=^CRu_}#bV?n(Nm+qIuLIcH98Mp#vwFMXQ%sP zs=kTN@0Rta$-EzI0IBc0*JcFHoWrn}PJ^VMK;Ls*_m^D17uA&uRXq6Qq@N|F6|Z-) zdn1tLZle})W*cwSbQyVw?l4|0wQAPSRA<6EWi=ub^1Aj$_R;+%hu{TRg)Xvj{=pxBTp;K7G4Ha%;_Mqf;0Zk;rr-?XYQs9Bd*Otd1H zd^l@ZZQn08MAjDk_mCWt1~109Ruq0JCOw(iwI#hsc(Ish9jm*{s_g&ka%gZRUwHZ?-NPHn+JFL0DR4e5V$zpK+5D>^4f-=!U10^4~H z3I-Phh0@A^H>zJn;R^IT^Tn9;z7OVSGGN-`8Z#nfV0XdIqqU96v^V2AE z)?ai`79^yA+53zSI3u6j;>IY9wZE{$Jc1l{ehe2ZKGnv+1xxXCKpu%HU{nr5>0cR^ zKdnr%vf1td5j*$ZWo7EZCe#)In={`yKH=WrIGqk^JG>&(t=`%#Rg7fIEFBB4HWX6v zmaVen5k@Mm%M(X2rb0U+yadcpL%#E zL-|X}LxV$65^O*GJyY((^sZpTy+&X-c+&iH?@wCi%i5P!m9mp5P_KXz0{%gMc37*K5-~3?cD@kjR7wS)h0c@=tEt|~!?*0!$*tshJ literal 0 HcmV?d00001 diff --git a/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png b/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..05d03b2fe94577f5a721bacdd4c31f3543c662bc GIT binary patch literal 890 zcmV-=1BLvFP)N4^t1#+gs9LONKcE5D53|H4oU)RAQWhWh#EF1h>%3E zq=@JR4a$l#=%rSOLSE^CgoRpqUk%p&bM`%)qvzu37PY^l|6c#!|G(GTYwfi+g+ifF zC=?2XLZMJ76bgm^8?_GOcH4h~ZhaAvD%Wp@JOCz+$tji=|aHcdVAx0~j)S%_sgfD^b0m*H~Uji2!?&P>iU zI{c$kId{_a^4;IcR(#XJzDQ*2#>_SoD{z}wBqmo+^*kRpV5O*#6&P&OEWj#UjkB=) zbb{!{pjgpYu?Ni*#7qoeHb(Gp(l5hqe21Mlf~V8Fx>g47!Ee}y{rEMF=Vo(nz)|eQ z5BMG5_cy$tYC79RknKDmGPzg;aR^^)W#r2A{*vsQ1(sAqzzHVyYLZS#uxYum*Q~JzJ(t} zQ`?3w@p<}x-#JyeN{-jW*||joJB&}UQ7p*)nSKywV?Ev%85|P<&k~E##Ch0+4@Gw$ z#WUG_eWNJ?-6l4DGqcSw`LeK1l-P37m?}<)PJ5Ne{G-YFin`VwT$^lLa95@o5Y;gu zs)JJ;LsL0_j*As+h~SQAwo#K0`g3p)@8Hj5Ta_Ff#<{pf?9pqp@5Zr1lh`i07vj2P+bqg!qX@Rr5#8@Tyn=Vdo?MBa@Q7$CpNPy}j1R=V zK8D*x6MHfJ>lkjun|NC+#Dn-MjcdB!q2~8_j1ws}OLldMZ)D?2n^#D#p>;X`M>1F_6bgkxp-?Ck3WY+UP?&!H0{LyXj2o<_ Qd;kCd07*qoM6N<$g6UhYsQ>@~ literal 0 HcmV?d00001 diff --git a/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png b/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..76ea3448534a22b47dbb15691e6a25fd438d096e GIT binary patch literal 2249 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 O3IJ(`vTd~XP5U41%QMIT literal 0 HcmV?d00001 diff --git a/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..b21276c25524a73734eb2d7184a4b79537df08fc GIT binary patch literal 2475 zcmb7`=_3=21IOoRZsJ)JN)IKI+``zDYmT{xD5R&UAxCbpQLY@hMVUF~szl9%9Geb} z(oBxbwPI!@%Y8iR*Y8hwUVJ~_x1X1v3};7c2~l}b001CiYh&s9=VSjrVc;J^(FVf+ zfJnHlrI}kSex)of+sFO*`}3g-qg7%)z-6-4;RgRBj~k?)@@rzezlGeb?h|~+EY)`* z+MY8IZMD0Z?V>GzMCTFaiSlJ{WrIEle|7CBtVME`<)!ZY&eb*5z>3~TDDH#f5gX)dYz2$&dkI%L|n*pD_Gk*V({Nw26`=< z_xrA+lrJsbm}l%K$veT)VcqgOyvUcsf1Q6lse>CMwkV`1xCMv-NU6m6(1?R5d%c5h z8MQ_jFpobyu*p4F$xkl~I#hyY7FGbt70Dqr_^dnbRNOpP>omQ;7faQgpAevm`5R?~)+EW4v;M6a7He%pmz~|bn0d*8)5{It>5M2Pjtu8tzQJ13{ zL()RA%ljN!-_S1*nEZ--j&kYQY>Z}3UXO8k=ooorfhR0|u-L? zMRpQ?U^~Jkhj#2=Vq${XV9@InpoBpCh1Y zhcyu~0)EMPlClc8L9E#b_tSvpJ_M)u(=7!?_@fIgB7GLmteQyr&uFl&P+Nv~hnbY5 z>em>r-CUP7kAWr`Y@9T&Q)hnKp-FtH%Lx6<95LkhDVYlA&W_i{Umr3%{W&=|g*Rjx ze&U46_`AP}6MzKB!7tS?fwgQ4TH!1Jb|O~&(f(`&(*u4Awk^m?M_cTvXDXZIaWt%b zyFqIHH*R~BH^vBDtciF-ZFaHZ9S(!>TtRW*Q(m2}lL783BXK-UmK)*|V-#w%FcdY< zQ@m=>Qqh;Ux2U8fZ)j4%0AlIElNG~_H{+ee@7G0W+u_Kf^+I!6M4>$i_1 zq!$Yw^=v8$2#5M!`P`=FRDO5WI)drhbtpCoZ$(in&*k%UB7A7e`|ym`5bxS~#HK@o zb&~5X_syaM3)zq)KELf|d_Ea}xDUHr*cF^@zi2)-Nz2^7&RETJN&7m9>Qq->9hYVf z-YGPL#PjhS$(B%|!K-2}vEF_^B(c`bNv%3*)@&na}yk8|JJ;GH<1ZdBKMln z!OBx|(BJf+>W|R6GOu@=d99>a`u*TO73DX~ksm=^CRu_}#bV?n(Nm+qIuLIcH98Mp#vwFMXQ%sP zs=kTN@0Rta$-EzI0IBc0*JcFHoWrn}PJ^VMK;Ls*_m^D17uA&uRXq6Qq@N|F6|Z-) zdn1tLZle})W*cwSbQyVw?l4|0wQAPSRA<6EWi=ub^1Aj$_R;+%hu{TRg)Xvj{=pxBTp;K7G4Ha%;_Mqf;0Zk;rr-?XYQs9Bd*Otd1H zd^l@ZZQn08MAjDk_mCWt1~109Ruq0JCOw(iwI#hsc(Ish9jm*{s_g&ka%gZRUwHZ?-NPHn+JFL0DR4e5V$zpK+5D>^4f-=!U10^4~H z3I-Phh0@A^H>zJn;R^IT^Tn9;z7OVSGGN-`8Z#nfV0XdIqqU96v^V2AE z)?ai`79^yA+53zSI3u6j;>IY9wZE{$Jc1l{ehe2ZKGnv+1xxXCKpu%HU{nr5>0cR^ zKdnr%vf1td5j*$ZWo7EZCe#)In={`yKH=WrIGqk^JG>&(t=`%#Rg7fIEFBB4HWX6v zmaVen5k@Mm%M(X2rb0U+yadcpL%#E zL-|X}LxV$65^O*GJyY((^sZpTy+&X-c+&iH?@wCi%i5P!m9mp5P_KXz0{%gMc37*K5-~3?cD@kjR7wS)h0c@=tEt|~!?*0!$*tshJ literal 0 HcmV?d00001 diff --git a/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..4d1ff2bf23c19eb7e69838cc9fbc16b8bb233d5c GIT binary patch literal 2232 zcmb_e`9Bkm8=tUY^)aHukSlT}NA6j!7;THM!qnK=4y!{o=N>jQRLC9J;_<31^$~|n1jiknr%7^QaE*P zWN3gBbqYOFe@x0k3D``2fXZ!q#$sYsF;!^5x7@N!lf>l1?Fsc8R&%lZ5xndf060*c z{lwez%R324qxjYBU4ae5>4VXS3Oi*{CB+74pM)5))mE3)XFsn8rvdm;CR5`YuvxSL z_|h@pNPl{fgd%WnY6j$bh3&B|j?~YS=rLa&>vqJPA?5iVo*p9liD5%T*s|3!JB0}| zYYIOwN*lyoLEG082Xpej_HueZT-rzKN0W(8w@P!P37wMmZ2rFDZGuJvh>84ss-5yE zGI^q8(p4Z_g@SMOYlnQ4rDy=keZ&X+M$vTzAAX02EcT?*ByJ>;< zNoCO4o!n5{rJx^J<$|1J@WMeERFT?n8y?Sm}FcpV{aBHZ~$vk{))rLhD7r z6=-G9im(fKquA|)+Xb|7Z6nO(uHw`VNmaE|5#+}K6Su;O+yA>zgar zp$)uL=O*p3vt{Ndl*EFW=JS1DawoJBMmhPaN@K7D9RK^?i?a{nvv ztNZYA4S05k7;3$Ahh*D@4cytXcMe!d2hJQ{M?^)lduvF0^8)@rO$%DyQYYg#waaoC zZ&MU75`AI;Isw)-Sh%up-48I&ZcBOni%sg>PT8|%fKzVsPyOEYt8~z-Hhk#a=JeOz z8u9)BJyRMtUKOh(R!PCR>6#m;nfq3AzqA=-e&5dJqJv6_;>zr5 z>4--SZjIa-p3HpoX;I`06BZqI6LVgj>IS_FIsIr{Fd70Aa;Lp0I=*T4;)hB z5IvR7H@{XN4y$;<12fycPeVEwA8I>{eJ3R({rW{zNV8f3gNF(@qS>0Ww`ANX^6sN7 zE}+u;==m$S^@cq*X9?{CMi>4B5_nm(Ok_9-#pGdMt;EJP~`eKtVvo5d+VO*$E1 zc&(93SY4%)lJRL50Idk(8R!AQU($nCXZKcI6iGGP?pCvWY7!&wd80WWXS0+em(0-J zDop;LFDTLM=(pWrUl*g#W{Eo`He+P#7&ect31)_U>Y!irj&J?^_+?6L=N0Bxruk_p z8lYJ)Tvpj!(YFVSUy$FnbTt^ZigOA|Y+aSdxKmIxxWJ2ud-(5kZ|``&9W&bwPr+O}5M z@&{e?bY3GtzireFa~TXJ`>>rBcVaZ(g$=ACg|7?bO*vswPRg-KZ?;FgqV#vuTz8}TXTE8Bw zHgl_%VY$50IyI_Q$r^>+C)l`jKO!{Yp5E<`{*LU+WIp6`t4K>X^vHV^Y=%^)qxmc^ zHQzkd&SR2gQ`V|Pde@Xss-?pqRd%%|D)m9wsuF=YJQOC=>EXHMj<;zj7h7#;NihXDR?rNe1PdJ{#+3vZZy894KVYTWwFM-mQQ|MP0RKz36r1HvmtGcMoR z6MKIy9{p)~Ot@6r2|aEYB^Ru7-pRqB)gYU4GnRK`E8I3|c2DKA7VfX#H2q`eveJ6x znTy@aRw7k04&UcYPSAi8iOMH%ac0+)_*2{`KJ+xgsK zI=1!oQ4R1c6><gR%yRrI3P2D0VN{zJI#t- zfpv3UHts_X4v(TYl%C5;Ial(i7X%k~Y1cD$^o$!QdDy1RXzhlNp3k&>C~@ z*_-K&!o=Xo-PNzXaF;x{8YA~0tH(8E>F-5}i5C#%zu6YbX8)tBEmdl90%F#`cCp9n RAXy&?0AY+Wsx)wU{4WULR(${f literal 0 HcmV?d00001 diff --git a/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png b/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..f71744d2a4155e8d688b0fdaf7533967022b3ca8 GIT binary patch literal 1240 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 literal 0 HcmV?d00001 diff --git a/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..c7686a3513cff48882fd3e746571bd516586a743 GIT binary patch literal 1298 zcmV+t1?~EYP)k#xp8WOfcZV5)JWKF^fkeA;c&~2nrhGF5(sRkAV7zqO1oh9(aJT zF(A1x2ZW#|hODT<;filQirq9}@@D2k#eilQirq9}@@D26feIrK&`*hrg$&Q;8S&Aw;@{#(q{ z!$yR+Y=!;sF5bo@#;_%}!vd_woA?(dI=cT?jOG1w?N*z>I-lNt-Rl{gntG%2Y3%<3 zjYobNOK_N&kOA(+kF$I+et_lL$viW4yW4ZKyhc0E8}s^MI#cP5%us$_xJ+!xWkc#0 zi|zRaw$8Fq(;GajZYG1AlL?va78$`pv06=h8q4?1wW~RX2k{Vg#2%?XDZK6|{0jHu zuQ&(WW?gr{&GP_9;})#KUvMN=;L4O~JZOM%EX5yiAAW=H;CAf-&)b1Cp7)E>xYN?m zac$bMdCL4fWtQaombf*`Ucuk+NWMQVw){x%8pCf>W*r{JYuZ@(=Z;+?*d8mh?%yfD zwj+O0Zya+@f5J{0BKH-%B?h^3mi;VsZt`g_KQYTM&G*J@;ip;md*Ow|#4N=IT%TnN z@_tpyU#wlYEwb$mIHl9aywIPpYel-Tjqs4YZ~~sr`tv)wE3)ivF(C`JhOfn4`P^)6 z_%%Mp-ub>zJK3+}&U|j#c}T?0@s7N-ae&KvdsE(c2T>!1E$FkK*U}N4_7NG9TbcacVYpO=jC?;}_x(IaGM| z+SGqxmgD}y7?v!K`s^0jltrDXr)=zR$+R8Kmg)ZKPi|u0UBf3kdQJJDQ#PjE^27AH zZ8v{X`t1#-kS~g&D2k#eilQirq9}@@D2k#eilQirqL_+L0Afl$Vf*G)V*mgE07*qo IM6N<$f}M4p#sB~S literal 0 HcmV?d00001 diff --git a/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png b/passextension/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..1aa1a1e9f9ef6431d165380d0e751f1727c4c15f GIT binary patch literal 3249 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 literal 0 HcmV?d00001 diff --git a/passextension/Assets.xcassets/AppIcon.appiconset/Icon-Small-50x50@1x.png b/passextension/Assets.xcassets/AppIcon.appiconset/Icon-Small-50x50@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..7522d72e7e56dc0c2e3f6c398163b9ca77df3a3a GIT binary patch literal 783 zcmV+q1MvKbP)(P%UpjYgx< zXfztonWo-Am+tB6J&gZn7M)|J8<2BiKnD}J4Er&NqqqterTkCq#lA{^z+|Q-^v>2` zrB7tI+;>b?KreaU%)%->n;+YWdohe1Y3Ng_JEO#5_H0;{y-Dh|#?>FN2N_HWB!O|{U`l2jeo<@w}i!|V4JZZ8yZ^Xlx zhZT4OKZxcY6y zL^%2ye#EcB;rCMSQmn>?{Prnq#^s`{mWoV|q&?+m)YI6hm?_5NA8E`Y(H{r!cbC(% zu_>K6gqLxb*g$uSJ!rWox7A`oy@_w~J0oHW&dqgWVoV=%mV3zm#Z+T;%79OI5|loe zsMhp4Lv!YXONiVucUCqEGi@2M^q%t#&hPj9pZ`aA?p-)0ssKY*mG#Y-%tK$dv^cr zuumBm0RZ4}Ec)!ls61g#;4_a-$Xn{-e>&Wo&``$3G|GpL{iY6IlRiCA>jYl2BSN1R zc^w`ua(T(5Jt^A6`u?(>NOyS(`PBe|PsQv>8os7qjr>%6Etd4+lIrrM@PUcA&8p76 zeD=V4miud;x+?0?cLCNx7=tBfp?6T;!=O0@zFih5x6M*_MiEwn6J~$ z+i%vxyuT|G%h~7f&8~pcSaGImMN`HoWjvg68rPCh)AsPqbIL~I-W?c}DCI`U*(@xUTIHGteIl@tVK^(58 z_4tWmEY$VEqx<$wTmg6PS>5&5dufie_INv&dc{Vlxq73LxqK8Qq1s8YlJ{x|9lI-! z?5Fx#R_sDWk!;_^@Y zQs6+z$%{Fs+6pq?Kd#~SO;}PF5+PNdjnp)fhqr5X+hzhHM{{Q9?5L5A_ z7FNIBqfU>kjKZuQ*U@4ju`C=n)au-;Rq_(g8$*%H>vuxmlN&RSYOa9QD_1O0X)&jTM9MYZQ2}?YqV_k;3%tVG2Ss=b?`uDX^SMV3#GyYeJQ#bZn4EfEJ=Rc7+Gjd zp%tXHer$KG!jSS$=UVgu0yH{xi%TiIqNfpN{8N&1Xv&mro2BVL0p z>L+*}QmdY2Yjh``6{7rIaeidhlh0ZxEV;R^&U4~f$1F|gBepTU?mR%-kTEiUH2+_punhq2Ji3k`^O@G6!b5bKpR90p!RX|_ly^6q7#`^I3TXFnBaBgsr@nA`4gA`_R3dRGe`RbWe zdz6hG!SPZ8#FZw|XOcs7Bml;Ujph@HVsBqM+VZAoZeRi9lpG^bhi)+8o$O9n+O&+U z_SiD=$7rv!-Sw%8+I`fMU?B}Peybv9M1R>e>k;J5$E?r}{yww2-gduXwh@wP-ipavm4e%`uw<~|o#wf($q zKrqvF*w586Mz)Ih?7<_}MztiGB^I(257=;PPfmhky@PMRu7l58CBJVowD%z)2;5eD z4tsah-bO(139t=gLxbrSf4Wpo_FILvK0b;_?abG6iq$2 zntW|ZWWxACb%T(s%C&?B)3+_Y(ckGARM}Y|LLS+qw3aPvhmJT$r>7JXLaM~DtGxOx zQ~-G+R{U;5P2@n*6)@Kw9sHcX(Wz%ue)*SJ_Kkt(gl$ZD>_069VC~MMD{Z_J{ts8h Bm0AD* literal 0 HcmV?d00001 diff --git a/passextension/Assets.xcassets/Contents.json b/passextension/Assets.xcassets/Contents.json new file mode 100644 index 0000000..da4a164 --- /dev/null +++ b/passextension/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/passextension/Base.lproj/MainInterface.storyboard b/passextension/Base.lproj/MainInterface.storyboard new file mode 100644 index 0000000..e65440a --- /dev/null +++ b/passextension/Base.lproj/MainInterface.storyboard @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/passextension/Info.plist b/passextension/Info.plist new file mode 100644 index 0000000..c0263ef --- /dev/null +++ b/passextension/Info.plist @@ -0,0 +1,43 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleDisplayName + Pass + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + XPC! + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + NSExtension + + NSExtensionAttributes + + NSExtensionActivationRule + + NSExtensionActivationSupportsText + + NSExtensionActivationSupportsWebPageWithMaxCount + 100 + + NSExtensionJavaScriptPreprocessingFile + passProcessor + + NSExtensionMainStoryboard + MainInterface + NSExtensionPointIdentifier + com.apple.ui-services + + + diff --git a/passextension/passProcessor.js b/passextension/passProcessor.js new file mode 100644 index 0000000..0a9d423 --- /dev/null +++ b/passextension/passProcessor.js @@ -0,0 +1,26 @@ +var PassProcessor = function() {}; + +PassProcessor.prototype = { +run: function(arguments) { + var url + var html + var error + try { + url = document.URL; + html = document.body.innerHTML + } catch (e) { + error = e + } finally { + arguments.completionFunction({"url": url, "html": html, "error": error}); + } +}, + +finalize: function(arguments) { + var str = "username: " + arguments["username"] + "\r\npassword: " + arguments["password"]; + alert(str) + // document.body.innerHTML = arguments["content"]; +} +}; + +// The JavaScript file must contain a global object named "ExtensionPreprocessingJS". +var ExtensionPreprocessingJS = new PassProcessor; diff --git a/passextension/passextension.entitlements b/passextension/passextension.entitlements new file mode 100644 index 0000000..30d4695 --- /dev/null +++ b/passextension/passextension.entitlements @@ -0,0 +1,10 @@ + + + + + com.apple.security.application-groups + + group.me.mssun.passforios + + +