From 922a8934aeb0c8bffb69c5f84d52b490293c1555 Mon Sep 17 00:00:00 2001 From: Mih4n <50325226+Mih4n@users.noreply.github.com> Date: Wed, 25 Oct 2023 21:09:01 +0300 Subject: [PATCH] Remove ignored files --- README.md => src/README.md | 0 src/Types/PaymentData.cs | 16 +- src/Types/SkinPart.cs | 24 +- src/Types/User.cs | 74 +++--- src/bin/Debug/net6.0/spworlds.deps.json | 23 ++ src/bin/Debug/net6.0/spworlds.dll | Bin 0 -> 17408 bytes src/bin/Debug/net6.0/spworlds.pdb | Bin 0 -> 12848 bytes src/bin/Debug/spworlds.1.0.1.nupkg | Bin 0 -> 12329 bytes src/bin/Debug/spworlds.1.0.4.nupkg | Bin 0 -> 12336 bytes src/obj/Debug/net6.0/ref/spworlds.dll | Bin 0 -> 9216 bytes src/obj/Debug/net6.0/refint/spworlds.dll | Bin 0 -> 9216 bytes src/obj/Debug/net6.0/spworlds.AssemblyInfo.cs | 8 +- .../net6.0/spworlds.AssemblyInfoInputs.cache | 2 +- .../spworlds.csproj.FileListAbsolute.txt | 7 + src/obj/Debug/net6.0/spworlds.dll | Bin 0 -> 17408 bytes src/obj/Debug/net6.0/spworlds.pdb | Bin 0 -> 12848 bytes src/obj/Debug/spworlds.1.0.1.nuspec | 20 ++ src/obj/Debug/spworlds.1.0.4.nuspec | 20 ++ src/obj/project.assets.json | 2 +- src/obj/project.nuget.cache | 2 +- src/obj/spworlds.csproj.nuget.dgspec.json | 2 +- src/spworlds.cs | 240 +++++++++--------- src/spworlds.csproj | 2 +- 23 files changed, 256 insertions(+), 186 deletions(-) rename README.md => src/README.md (100%) create mode 100644 src/bin/Debug/net6.0/spworlds.deps.json create mode 100644 src/bin/Debug/net6.0/spworlds.dll create mode 100644 src/bin/Debug/net6.0/spworlds.pdb create mode 100644 src/bin/Debug/spworlds.1.0.1.nupkg create mode 100644 src/bin/Debug/spworlds.1.0.4.nupkg create mode 100644 src/obj/Debug/net6.0/ref/spworlds.dll create mode 100644 src/obj/Debug/net6.0/refint/spworlds.dll create mode 100644 src/obj/Debug/net6.0/spworlds.dll create mode 100644 src/obj/Debug/net6.0/spworlds.pdb create mode 100644 src/obj/Debug/spworlds.1.0.1.nuspec create mode 100644 src/obj/Debug/spworlds.1.0.4.nuspec diff --git a/README.md b/src/README.md similarity index 100% rename from README.md rename to src/README.md diff --git a/src/Types/PaymentData.cs b/src/Types/PaymentData.cs index 0a93126..8185f8f 100644 --- a/src/Types/PaymentData.cs +++ b/src/Types/PaymentData.cs @@ -1,9 +1,9 @@ -namespace spworlds.Types; - -public class PaymentData -{ - public int Amount; - public string RedirectUrl; - public string WebHookUrl; - public string Data; +namespace spworlds.Types; + +public class PaymentData +{ + public int Amount; + public string RedirectUrl; + public string WebHookUrl; + public string Data; } \ No newline at end of file diff --git a/src/Types/SkinPart.cs b/src/Types/SkinPart.cs index 85c020f..47f5d8f 100644 --- a/src/Types/SkinPart.cs +++ b/src/Types/SkinPart.cs @@ -1,12 +1,12 @@ -namespace spworlds.Types; - -public enum SkinPart -{ - face, - front, - front_full, - head, - bust, - full, - skin -} +namespace spworlds.Types; + +public enum SkinPart +{ + face, + front, + front_full, + head, + bust, + full, + skin +} diff --git a/src/Types/User.cs b/src/Types/User.cs index 149a1b4..810e685 100644 --- a/src/Types/User.cs +++ b/src/Types/User.cs @@ -1,37 +1,37 @@ -using spworlds; -using System.Text.Json.Nodes; -namespace spworlds.Types; - -public class User -{ - public string Name { get; } - public string Uuid { get; } - public JsonNode profile { get; } - - public bool IsPlayer() => Name != null ? true : false; - - public User(string name, string uuid, JsonNode profile) - { - Name = name; - Uuid = uuid; - this.profile = profile; - } - - public static async Task CreateUser(string name) - { - string uuid; - JsonNode profile; - using(HttpClient client = new()) - { - uuid = (string)JsonNode.Parse(await client.GetStringAsync($"https://api.mojang.com/users/profiles/minecraft/{name}"))["id"]; - profile = JsonNode.Parse(await client.GetStringAsync($"https://sessionserver.mojang.com/session/minecraft/profile/{uuid}")); - } - User user = new(name, uuid, profile); - return user; - } - - public string GetSkinPart(SkinPart skinPart, string size = "64") - { - return (string)$"https://visage.surgeplay.com/{skinPart}/{size}/{this.profile["profileId"]}"; - } -} +using spworlds; +using System.Text.Json.Nodes; +namespace spworlds.Types; + +public class User +{ + public string Name { get; } + public string Uuid { get; } + public JsonNode profile { get; } + + public bool IsPlayer() => Name != null ? true : false; + + public User(string name, string uuid, JsonNode profile) + { + Name = name; + Uuid = uuid; + this.profile = profile; + } + + public static async Task CreateUser(string name) + { + string uuid; + JsonNode profile; + using(HttpClient client = new()) + { + uuid = (string)JsonNode.Parse(await client.GetStringAsync($"https://api.mojang.com/users/profiles/minecraft/{name}"))["id"]; + profile = JsonNode.Parse(await client.GetStringAsync($"https://sessionserver.mojang.com/session/minecraft/profile/{uuid}")); + } + User user = new(name, uuid, profile); + return user; + } + + public string GetSkinPart(SkinPart skinPart, string size = "64") + { + return (string)$"https://visage.surgeplay.com/{skinPart}/{size}/{this.profile["profileId"]}"; + } +} diff --git a/src/bin/Debug/net6.0/spworlds.deps.json b/src/bin/Debug/net6.0/spworlds.deps.json new file mode 100644 index 0000000..bb3eb6d --- /dev/null +++ b/src/bin/Debug/net6.0/spworlds.deps.json @@ -0,0 +1,23 @@ +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v6.0", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v6.0": { + "spworlds/1.0.4": { + "runtime": { + "spworlds.dll": {} + } + } + } + }, + "libraries": { + "spworlds/1.0.4": { + "type": "project", + "serviceable": false, + "sha512": "" + } + } +} \ No newline at end of file diff --git a/src/bin/Debug/net6.0/spworlds.dll b/src/bin/Debug/net6.0/spworlds.dll new file mode 100644 index 0000000000000000000000000000000000000000..d970090d818ccc84f2aa83fecca8bb18b19f8d1f GIT binary patch literal 17408 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 LGylzmVS)b(yO|3t literal 0 HcmV?d00001 diff --git a/src/bin/Debug/net6.0/spworlds.pdb b/src/bin/Debug/net6.0/spworlds.pdb new file mode 100644 index 0000000000000000000000000000000000000000..0f3960e78f6973c8c5ffa3bfee076160b99a0909 GIT binary patch literal 12848 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 AXaE2J literal 0 HcmV?d00001 diff --git a/src/bin/Debug/spworlds.1.0.4.nupkg b/src/bin/Debug/spworlds.1.0.4.nupkg new file mode 100644 index 0000000000000000000000000000000000000000..8f91155995b1bad605c2f8f2fc0f703c5dccfa69 GIT binary patch literal 12336 zcmcI~V~{3Iw{3IUwykN~wr$(CHEm7XwykMAJ#E{zZTIc>+=%mi2lwZ#idtEfnQK?n z&fHm<8B0ML6buyz2nZ4gvrtK$TD9Q|8yE=a@%w`L&eeA^wQ;7W`v;TaH>^My5yh@x ze8YZwv#+$B)eNXAP~WTh1g@C4!Ljm_&a~KXq0&$mPwT-mA6@&78$H;`?FSKAnR9EQ zXCXJuQrQm0=FBlzo>;v+*DdcsDRoDPUyzLaj=|$C+0Vs{x()wfw8OL7iKWBv`xaB| zP_Vl+EgBUtunz?Bfu5ecBbkd(zW z@9pWbRA|mQy^@kT%VIA*Nk-u?jJh{laJnn04E-mrYt6%kW<{i$mS?g112`{=_pRtLi^nB;7B?KGe`=9<7*ZM|l0wJF@q4 z)v4=vqUHZ~($^O#kivg)Avef}*y?x5D+mw}!nX^Z9o+4mY)qW#>|C84OpSFCbnWID z5Qnzn+ky|=cWqTwAvw!`Qz9e01#JV7r<1ECE;ryUch?hc1C!eIV5Q84w7{I8WhFX* z4{DZHRglUZ?yt`6yL6>mfc3G4!3q_1m42Gwr1Wayy&JToI_(HSdU562}}XK z({GVa8#R8)J~|(A02^~0+sibcjO)Ob&iIo{oyxeey$W7ylAKx0I$hX0u#FjxDkOx> z093Z|r4b`*;5z#}wPdn)lg5tjkIk$bS(`|D!bJiRYwr({8G*<5=bOYA$63@YQTb>L z180(EnAMLE{TF_Z>d@ML|EJVv8;6T9cfX6;kI3iD9a=xVU$|e^{yO#p4}z8k9BUh^w(Ly}vsBJvT*~(5WcQ6pHK%$pC`>t+nMq2$ zpYBq^+S_1KY4FHh#fsVFa+o|}rD7}r>y}d54q=7{_LeHn5JxuVvmRM8!=L}N8$>Co zZ^^^lap8ZrzX%Wz#&=?4X+&>l>cU3HK>wdT!o7R7}5b4yg zqS*e}Rc=bX1cTh;CAKIoaxG@(f1&3sJ$}b@*+&^4{fgS^70-Dibf>3kUpPFEsp>hJ z6c*_s_)8u_p`)OSPjH=0=D}jl|GV$$T&z_$Gs-J9oCDdlK`u*YqwNBHvs(FOyV6#1 zNX~RuO5G85%qsUUdyLRMRtq)NhRf~r0IP`nB9i4-N=ph4`*A!rG5^9-2bAw83LK(3 z`_yyX9-`G^>mhSA7ROs-PFclDp7HOH^E~|Yq4Xm2qdo3e1y(o+tUfanU`W3W+%VJe zVIe{_Gb95OMuB#|!Kzq@tQ9gslN2dDp$Qt{Rl#jI@5V7sdK&CPy=*tiIq*jI-g!Uj zh9K*WV4)N~KM4P5$6ryF>3eU_%FLS+xe)0jB1n{rdB2CHP?K7Y!O$;_|Jqb1M8x@b zDvzv}o7kx{DRx+T4%#ahaErKHYafWLLmOnBWS|VjjBH6WbESsX z@b}z^%$s$rM!CUWr9qv_vYEJAPVz3CMT}UMIK~t&fQEidOU-DAoUBrG#7fPpM$xP0 zK)wf8ztk#R3Qo4-hqRSNhMoK(#s^!PuAP1ZjDUfVdRGmk6ZrMUaiStPmLLXpT&Uxj~Ms zMBxE)P-*N1fzWgt*uTFvQf$$gz=qI%2C>ZDu`vwRCEn?B$rzW{uTs(e+QuhR9G*S&|@w0w$*DR6Ef+?p@ zP5QQF7UvH`xZ{x9<`KCXhPFEJLa{5}EEiqD+aM!s`YW!kt3R)a2w`2IpF=tv-(b4M z%V;@VQUc;2EiNDs$v2vRZ%kEK2ice?NjQlXK7(j#0ow(O_BbLB=4GfaGJ<~+aM)+; z6XFqW2$mQRcz04x9w1NnS$T&hv0^nq6A4i*k-6OXNy6Ywa$(nVaPc!{rxVWI_SdWpF@9l|Qw&MWP&wqF$(L)DUS-whu~rwI{R5}bLrj?h zfwhX7eU{b3s#4_=_1S{{RR5$9?baEC_wx|RD58=}bUfrBJasVDfWB!+6(l*@*XhOU zyN|A*wU29g2Kqc~c*Z*31LNc`cl`aU1?(>s-fBp4x-XC5*+l+5_VU*dmO+V^1Bv8R zJaW;BJ80-!6|8%)KmFCzwL=Fn=T09hKPZ02AwTpax$l8I!M9<9aSi7ka`w?Pf&t$h4a!iKr&oI8AIN#U->G zee$E+*()hFSXw2CNEezEHhd1Ax%I=1=Frg_%drt~?6F5}!jgqTe<)Uzt4&l)Mj@Ih zqJKEL*Yo>9HnPw1Mt#`@`Dfg)>Gt{S3vBA#Y#kPS>1Ceq=R^xy zXOVl^XYMGMmuRt8a?uN=iLR9MeIOpL_@j9K*K3%9&GxF9E9ZyOD4e&2sXv8hzPO6($?w!Xg>r`T zjhgC!@AJ%Y$=O};O-+-p{EtKcnF*4c{9e5bk6!2wWzk>@iW&uZre0C4yTMZh(^4)G%%QlRbhTdmUOwW_~c zYPLdEaHZgdIBbB_n$HW#et*-_I_f5@+_Xhw$O-SvpaqJ44`DTbegm5M>e1PG-nclONGhwO9l=5>wMlEyX!Qk2G{X= zC9Ln2Ybp+bjIP~!u?>l6@+^LKa<_HKY{UDqijE(yODci#d<(SIm(qDp`Z}Z8!kUuT zR_T5B)t}&l4Jk#lf-#tCPuT^jtwHFAiM${Dz63O3$sBAQR$+XDA&u9CtbTFZu%05x zljMI?j%arlNqlCDdT&d58sUCg zlctcfQ+?Ad52g=97t9X{t=2}~^i`L)rvgvwbKsVV2KGe1$@SOr(JG_6lqP0!T`!r9 z>OO9?qnR%*{W(>q&!t7%I~v`D(+d)`2c33>D0T|%k*IH3(+ZezdO;3+TrpFsc)!r{EL^qG#LMIYR1Yw9G~tjfnLO4;gQ9O z0N6a-j=g*TPPz65qOyFv*`hPbJQ;Yd)s+w(I7!o6KlayDL8o*=k|O3@q1X_ z^9lXfWFHhx)!p<_oI+u4H*7l5>Zv#Obz_-3QnQEVC!tpVq7KnfG%_vbpjyU)X)9_S z#EjnHG9cLnTnzwjiIOBG^&IM>dz~g;*Zg|c!?P@CN%?y8x#T;w>q1QE8Re6O0cIvJ z`t*BCbU}q=`3k1x7dqr4KUih)K+p%l--2-L!9$@4I^5_Q#B;`xGa!0ncgRIqcIZLH zSy2ea$C?8D7dNcRvZ+<$D#9Uu2zXq(JA4M3*Oo829%#w0UZXZ$h^EsA?wDW{?PzZx z{U_%4`hjcF>>UUpPkqXbO>e@+Ne-ZAm?T|6G%Netm)bkK@``9ti_SigxMkS+<8aG4m7f}y=-K1T)7}W#&J;!#yHGd`VWl9i4 zGllf%r<`CVxDl}Ib`7%Sn@Ar)1iW=^Ip~<>LhhSC@Qwto7Rz*yLO{ zjVVA&=~1=EJ_689sgQhHsvF?{^P24LB{X>^Htcan;=e;Z=N4Qt`02V%?Nth<&oAEWaZs#m9sh99}u? zB73e$i7?oYl^==IG za8yo=8T$o{e{ks==giNdvZ78LjN_ddHQOwf|DZ5N_Fi6FQl-d#Wx`l;kJ7#tLMtUIauWtWGuC z2H3y2O*>vBF4|#(`;&RVe);u0jb0Xr3zp|Aulm^&tlrn`0DTUB5pF+Ki8E?57Hd&1 z2x$^0k^KWt0-O-T-{^_rjB+;*U99GDDL_jAB&Wq={?U9ngQ+$vRK18J@*3AQ)+9F5 z8UHDV5C}fjF!Ci8>27;Duk_JEAmw6}qsGo(r)4ptqDJb%%1A zva|^t)2be8T>MhDZ5=*GOYb7CR(rM%0cdelhA7b{nIAK5EFvgVbEsR$KNC#n&Rj0> z*R(<&G__25i2$H3yu|!N`6~U9vS|2;Zc&K+;heT+0X4ppe~S1;FHHTb)x+PR)jxw@ z0pGF6--lUEqQ@1D=%s*JXdq%ha;QPTs?2Ku!wPIygx*u#1m%F!j1AmB=~f6&Jz|fe zC}Nt4HNXLYabP3^R!;z37BB}|nqdcOo%RPg&)a$sIdQ8ZFPs;q2i+uLki+1?d!DGD zJl;kjGVYLwg(0I$;xHX~Tov+{I7Wc_Aett4@)J6qGM4aPdFw0!kY2-K7wUU#=7sgV zl#@dgWx&ur{X=uk42Z3(>X zY?h_O6XFCJ6+H`A*cD0#I`Fj?qC|i?@C>wv^ikgK0Qu?=n8m^dQE$8UT)nhSbjd8b zL4l$LF-d34ANu7dn7ViZfQkIE<+r9mXDBkX)eKAa2qYqL`qY6 z6xs&GL*$q-aV!UY6i29?@PrzKHBMus?;b6|4h0j1gXmrvKc4V9a#~%Zmx_V>I;m$4 z-P&7lRvpYrZ)d3D)y`gKwiGM}-2?cZcau6{(WjTHZer-Yl+;&i8%^QSqnT+3X_@?+ zsDgE;|N9;-FhidMyag&6iihmFsfQY**=Yy$Kgz!igU~~EDor*wO)I{_^2*mvi&l~Q zOYj%#&%&)rUTA9x*e^bvZO!=Sy_v*()HyOwTKE+(`}8auop$z$6XZns2E?ZKM5X5; zb=AUJKXcv3HA}qBgq=-`vlHvaF8JVyEvpq#PbZ!+B)SmuLI66J1Q+RwK$~z*+BGz5 zz}Dkj$kZOGfv-efF@1CNidxGhtrz|@n>YC{`W3^SnY*C4<7@QoqQw%e5TNG<+)!=W z$Q5>NXG?PHv1PMud3d3B*I@Yo@6qqiiesJc3~9%<3O!2TH;s|FRrG(laq~ti9>b(T z0K~%T*t$|Tfj`|nwuE2JO_W2-=0I$Jy*4|(Ha${)AlByl=cw&$l>4XW^gmU7QrZdU z{i()_#T#3JXlR+sI6l*E3~h;xCPk?}i!Z5;&BmK7x?6@!d+ZOj!IOJO{cWuSYq{-?Q#72jEegw#?0*n-KlV_CAppCOU+(5T8bN0#cq=*gV<#7(`t zS*pBwK0Vr5+Gz3^NtG};LX!4uI!NPZO6(dP+iuY`-i5+j_N{l z^R?9noLjwf)42X3qVaY?M>|9)PlPQQP`8>ZfvebC#qo;@X%r&gBf#K%LqM1X?hiEhBM};PmM5&bmF*dKv?3QektjD!_5p6X*oCpAv zl&r9-kv{oZ3G#>y&mQR?WR~#R`IMfq83&+h9;+)^cazXiWw%K=iOfF@qMf!Ln2YQ2 zj-f{FKA*t-td0(IYH}_3XJ^)N195_Zc#_=7lwxzyuu!ij^M&)+Wu2LD^hg$pwd{U3|s|0w6PlGo;D)?KW@-ht8 z*o^&U{U8}$;hVRoKz1vTFk}|?6xWIBCDRO<2exyIuR-0;h-!N0V92f%nLz$qm+lxlLDS3}!B%R%2mpoSx8T<7e;k*= zf8f~lAe7WitRzX~%fQ79JTRNMY-)6*;N)RdPS=q-Z&j{`AWhEJ^vDgq#Gaa9VfuMs z9o%Ti%z`T&ht9lyjN(PNk}E^zOxAu;sN+V;9`2VL9fi$3!)^<)w+T5^n%EEY%qT)0 zj90!4WGg?!4CRt(xr65l*U#CN{;09IIbARaYDxR^yQSfgQJ=Hw)`2GJ=m zPvxs*wXF#ENS%X)EjA!y1DJ-+Sxgx@6wudg2u%EC#)X*&4}*x#3ojW)KD^#Q9lhIF zIxs#XZ_5%W&g-2O@pTO7+_z;YxRl(++XulSKeNxy&fMeW-YjfLL(;KYuqFvp&VMB| zFsI1nv3Gdg^8D@7`aF{Z)Jd$%

l|chIBZhz6-rKdntLqpmaZBHr#n{mPaYyr^1(%Eu-r$eX)BIxuXZq#NDSQwuc$GY{+h+ck0d*1b2*r?X($^Y z9Pi)3HT5>Pe7lL)I2Ha$D%3ZT6c;!&D6L&0 z%?;d5a|`jCK-3CMCksFH7v^N$^E**6vxNlHwHh1=e=x5m@{5Lm04Q|BImaexktD6N z5oLT}70YQsyHqdYEtq~9s64D?4LiIP@=LU$rVdNUc>9M${SV7{8E3KQXi!hhMbfmP z*=>V%mRwf}frMGIu(viFf(lNkP6Bpm=4W>rd0Oc_T%Aa-(Bfq9jZTtCV{mQf_9xZavd_I`Mp)tBdeamZJl<=ff8*IS769pK|fx}oeHmfvOaStVuRozK1=sj z`PFK&4!er7L*#16s{6K!EY(g}HPnPl7$q6gU3pAbVgoqaSurx^%+)j0GWiUNIO((Fp=(bnq2Mh86>N{&R8b;N0?G7HD+_*3^!(a}mW>rGL4O5i|r{F{4(ldzl&~+lis*;a~f^g+i(2zr;4Ng7+w!!}i+<_sl1R)tGTRE9bYDs|Ye zoF9|F_gP2ID#wF%{RavvuC;6QB(OnB7J&xz054Zxnfx&XZt-EEC#x=pew<9F{@~LH zJZ0(n#Da!~c&Bx~aXy%1F_nh4ezK)}5$ad$Tap^t+@(@K#@S0&?#`&@6OWjTsE%FUyBJz&HEklkz8w*o5y|XM00XLgugkR zFBi|t!$_kC0NCSm)?Tig>t%I6{d&KZPL}Wm`cCFE!od%jquUS>5NI^aA8bVFbW(p^ zto)4djtiER>%*&~!4paW$cq&I$wWRC^l>9y+V)PB;^KGPER7HdKSSwtI7>3UyD;Kx z_-7<|4#!0*RX=T)Wh@e#W!`$P^`ko+oY-f&m$T=qa) z_lK~?{66cD3YVHuU!`VwpRlG&U!4nM4?tv;o__M1#_7zuw;cO!7gp<}-5~&&##8D` zEtC zk^<@SXd10(&1cVHGcu(A)WeP85Vls1>&RZ;MxJN))0K#S>fkHLIfdd&J^b|V=id{V;y=dA z5ePRs`L<(+`n&}5f}<{T@2@Xkx7QoAy&teIFtb!Hv5kkC$1ec9t~4&=Aw9-=DCQi~4qmrl!@iW6DTpvveaKd%{p-vuuod{o9`m48 zV#Ky*QKEb;uz6(7#tvlD$_|{(*&VyYw5DmIw-KqcV}dPy@IYH&!^Vv;?92*c3;wz) zY@ESXbn}OTcD!Dcdv?+$9aoh*s~y@$JFa#u62S9dZOXfY#m(LOwnKzxqi&zDYG83Q zdaJi7$d=nQwcopdR4V1w#4GdJa!{&7<1w$Jl{!T;IE8)BHlBVdq$7M6pksKH@pHze zWCK~E+>tDZvd;mb8<=XK8b_={V-C29{0Ls}LTN}Zbuzwh-4kz)puDEpDABh8r#}v> zA(gIq>%67TEGgYCzJS*uSKVfb+*=7J;ibt4mA1_d%d}6Q|7$YG_w@3C`h92s;P<(~ z`-Sl@)xkobg8Eaw+#om<5YR7lAfWFANJ&&sL{^l})}&ZN*B)mG&6lF*iy>d1GN53) zmjQ%=%3w^QFbquSzy~N4iEbpOnXy^gA+;rhIDl-RUc229yU8Me&2g3wU6e|*p^W~J ze*CjA$NB2qNm8*Tc(|@CJG*`BX`Q*#VE3}CY{_!y?xtetY|=f*Z0f8!RoZO|{=A%5 zw)G;vo_}u#lHdfiBaXe)gJ=8d9w|p2E+uxZbP#?H&IWI12Wm6!yk;2lb^(Y!^v4y% zBf~~hu#V%#GC|fb2{)5Muq+8~81QnN{K(_4D1PBhNOat_E|b|sl7YJWT{|74JEJdgJFUJz+A(a!YTfAQc6Jz?1LokMjVTccFn{{_WZL0aV6R|AgY|-}4EPFL zcpJ^~E1$r+w@Uy*Wj?}#wzunatjeC?#IV-V)%G*Y>(U?UA}~4%_Bi(_T}jaQrFXkk zkYv3LAa*4SXDqyKtlIZ`&zjdt&YCYhT0c6KOwo3zai$!rnr!`iD_k?SW_h|Zp$RFAG}V+)ky0s+A?RC$FusE=<* z0YZ!fXL&VYc)()tQ9v>-J=Vs7CC%2AvR|ybYQfI7*Z#K)-wuE7IeaA!Wi_ zA2nq82E?<)Zsj8t`^Xl#!zrsb3;-9?B0|5Ap1F{kN&XThabI-X{j!`J3UFfYE~l7?IReqt8J_e)ArM;<5T( z4Yo@)fy=7utC7x@m95>$G_hJ%VU|H$!m==Z#ZQx0NHS)DhPrB<)5py0JX0+^`q+uL zv#58P)K3A~4Lye?X`i{fE;m%S#dwJN9z4g)$`BUXkSNJ{luXNg!C0`MO4elwot5kW zJoLz3_-q4%xQi&L?P=(siNJFlBjFn_-RlA&d3c>A zFp%gXh{al;sbf(ZfB9z-SggK@w%-q&P36Nh2zvmV@rIH45o|}mr3=72dfdf)Aju<;iOR4`B#E#bQC8JM9f!^} z(7gw&npjDvJ(?7(nwxV)R0odZ!^Co`+6hFyv6$Jcw6uF@(ga(Tp?xJ4N{r&epc2UC zaByq=!bK;q2sXfypF3?W{Wa4oCf5A^_E)QQk9z5}Rm%^Ty{M`Y6Dmx3bR@hZqIja> z-QHM=G+b)~aCKmG^)j(Q`DZR*c-I2-vyIaHm!%F&aK;`jQ}VJcHaV^(qLq3AzCtaq zSb)nhH?XK28{A?W0u<2E#8HNuy-DA&ej*4g%iHOW$K@3_1HQXVzP5?lRgwSba8H|0BvehiV|F|^890q^04g&i zA2;UIneI(yOGCno%;dGgwu(*gXlgQrhi0IAO96wN3}6Yk%=4*}5V&a}wUe#f8?q9>8?H@=R|xu<*#=I0&i;F#EQP zl^z53VLu|IfjFcjB-}NET92;qI?l><*H$`AjzN>IWru!j&|}F{u!^gLHpO}DICPtx z;E^BDkZB1RCNQi}`Vmrz6O~A)RnL#Ll9EILX5eCnfD0eqaBam}TEm=~JWjfBAwrZHK>>?O2hHDyXdc@>MRx2L zN%K4I^@9A-g641UtXLp59a%E(9AdaWW)(cDUp?Bw_nVB#Pr(b)hNhEkv#FVf(L!qd z1gO-nS#`ZeunO4v13#fC#C#21?S5|3$F*!TrFa|%VBo}tSA`clmtpugclX#sm>tL= z(s}dxj4-;iVz|jaijE~Ehg5E3%1?Db>2?27`kKh}%B~2O9X_9VZ;v3tsMK6)xijHX zI83F|-~B2)-&J`IiiC4<8$Do6n9GaiJNp=q&pZF4xvlGr5;$Z!sB4*3PV8hpo?c>) z2-+t!CZ5!>IINDizayW{GK;wbZnu=IuiXtjmg`CTB^+o*Wr91JpgZwd=8Q0Xd|RCU zyAi^>D1Y#{2xIrAKdVZ*oN&E;#Na$%nqzChX^M<0mLI)@DcyVrr*A23R_hLhMPBhM zZ#a0E0l!fvk|)a~%7aMX3DrOh)_jO(21JOB%vlB#O^?x2FGF#jQTk@c?~Zr;z{rX3 zmP-(4`ASc9;|T7{Pl-9#XSDtG#QXWv`jR&J&<-O?F+5`PoFeVC_77CuXwrTC`o@L4 zqY|T-PRc{N{uAe*7^69$cwc0}fH+Vq87IN_PCfJwp_Y*;v zq9C2Z%h$i=O8R2~_IUo1y*;gfeR1x<+{=-_zWd&=l_f={$LSSo*C zkiRus?YHg?k$kY8hmGEY*~jy=KR%*_B*$EyxtR}h=sN6(k~U()@A`QY%}Fk-rpqxo z1HC_XraB|A={S6L7MjWxUjZ|8@e6MB$27Hwl9f-+&&N1TqS1df(e2z;zL;3~Q`9m_ zVJCo3Btf*&qp*wi@jhkur9ysGPLBfHRrsL#%qZi6>Q_>H<+|xX{@rMu&YbgK+WP*` z|0z}lmH`Ta`gQ{?C=ih1cMS(aV{1cmQ+j7pCpSxDQ)hZxQx`)MLl;AOV|yo4S_db4 z2U8~(%kKhqLk4CJLv|A*LnAg86EhA@RzoHRCPNlhc4I?kV-_Pi2WMLoV+R|hF*_7S z)D4mwgvBZp?!+QXG;-x~$oc@4cxuK_z4JpTQ7 z>{!IV4iCJqIES8MB+=Oe1IBpLfcW1g)$crAx4jw=^x^|v8qD)x%fraCKb~;-5^Gb4%2ze zq0_N&J2JL&$IOPpXgex`lfh7Lx&V7IiY;6Tr9xgFSw162RA?htTA*|quYoyQo?nzv zmA+8u$v`UvZ0=hE###;?=Cmja(vZ4B)HW?MGTsA#xk%Ps(|4#IlOOi0U%FoZ+d;Xt z9MjcoZQ`F=Yv`$Jc#aU}gTUy6M0yqQ+w0NO6xULdcIKYkLuJhE+Y*sr@Z z_$TT)YY%@)Wh9^?3EEq`JA_99)K#}Tn2zo7hhRnBR-gvq8`_F}tjCGl`Z~M1O12s< z`^BeAM+8||a54&&O553x;nOYrA6FH~(B6%Jb0PK2C^Ck2cu*yJU7~_j*uP$ceex+g zmY*t^J_%#tdyEUtG2#vZaQ8-Mi}-wCt^nUc{G0AvLHfTE|GU2WUo7EoA?|-_YyYp>`oEC>7gg@R$Wq@C@c+>0{=1R?ZLRe$ zBke^0w(|OS+W$7}{EK$*^M4(L{=0$y9<2W|a83RHA#@d_!GHYoiXY!+!?$ZK=>B>7 EKa$jCvj6}9 literal 0 HcmV?d00001 diff --git a/src/obj/Debug/net6.0/ref/spworlds.dll b/src/obj/Debug/net6.0/ref/spworlds.dll new file mode 100644 index 0000000000000000000000000000000000000000..7e62e07efb1c4d620d77e48bddddfe5b746cb56e GIT binary patch literal 9216 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 LGylzmVS)b(yO|3t literal 0 HcmV?d00001 diff --git a/src/obj/Debug/net6.0/spworlds.pdb b/src/obj/Debug/net6.0/spworlds.pdb new file mode 100644 index 0000000000000000000000000000000000000000..0f3960e78f6973c8c5ffa3bfee076160b99a0909 GIT binary patch literal 12848 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 XzP7z%Pv-%JAz8!nC6Kj90e + + + spworlds + 1.0.1 + Mih4n + MIT + https://licenses.nuget.org/MIT + README.md + данная библиотека предназначена для работы с сайтом spworlds. Ознакомиться с документацией можно в гитхабе проекта + + + + + + + + + + \ No newline at end of file diff --git a/src/obj/Debug/spworlds.1.0.4.nuspec b/src/obj/Debug/spworlds.1.0.4.nuspec new file mode 100644 index 0000000..6aee453 --- /dev/null +++ b/src/obj/Debug/spworlds.1.0.4.nuspec @@ -0,0 +1,20 @@ + + + + spworlds + 1.0.4 + Mih4n + MIT + https://licenses.nuget.org/MIT + README.md + данная библиотека предназначена для работы с сайтом spworlds. Ознакомиться с документацией можно в гитхабе проекта + + + + + + + + + + \ No newline at end of file diff --git a/src/obj/project.assets.json b/src/obj/project.assets.json index 13f5896..9b26777 100644 --- a/src/obj/project.assets.json +++ b/src/obj/project.assets.json @@ -12,7 +12,7 @@ "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {} }, "project": { - "version": "1.0.1", + "version": "1.0.4", "restore": { "projectUniqueName": "C:\\Users\\losev\\OneDrive\\Рабочий стол\\spworlds\\spworlds-csharp-library\\src\\spworlds.csproj", "projectName": "spworlds", diff --git a/src/obj/project.nuget.cache b/src/obj/project.nuget.cache index 5048a3a..c5e56ad 100644 --- a/src/obj/project.nuget.cache +++ b/src/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "BcScqcBajGeCpumrD0XHCVXubY8iGSvVtyfgtqEr1b+ZFER5tFI/jvxsd7fM+aNBX0ZgxKhrR3Trd/3mtyDYsQ==", + "dgSpecHash": "AxJ7bOs4Z9l6KXy2n7OAAZz8U1o7V0AmVQguUWJj3EBLeI36WOpEuQH9YGUPP6QALFeUBw9dZ2Q8IM0H/2kaqA==", "success": true, "projectFilePath": "C:\\Users\\losev\\OneDrive\\Рабочий стол\\spworlds\\spworlds-csharp-library\\src\\spworlds.csproj", "expectedPackageFiles": [], diff --git a/src/obj/spworlds.csproj.nuget.dgspec.json b/src/obj/spworlds.csproj.nuget.dgspec.json index fe9171f..56f68a8 100644 --- a/src/obj/spworlds.csproj.nuget.dgspec.json +++ b/src/obj/spworlds.csproj.nuget.dgspec.json @@ -5,7 +5,7 @@ }, "projects": { "C:\\Users\\losev\\OneDrive\\Рабочий стол\\spworlds\\spworlds-csharp-library\\src\\spworlds.csproj": { - "version": "1.0.1", + "version": "1.0.4", "restore": { "projectUniqueName": "C:\\Users\\losev\\OneDrive\\Рабочий стол\\spworlds\\spworlds-csharp-library\\src\\spworlds.csproj", "projectName": "spworlds", diff --git a/src/spworlds.cs b/src/spworlds.cs index 3a4a485..d242a76 100644 --- a/src/spworlds.cs +++ b/src/spworlds.cs @@ -1,120 +1,120 @@ -using System.Net.Http.Headers; -using System.Text.Json; -using System.Text; -using System.Text.Json.Nodes; -using System.Security.Cryptography; -using System.Runtime.InteropServices; - -using spworlds.Types; -namespace spworlds; - -public class SPWorlds -{ - private readonly HttpClient client; - private string token; - - public SPWorlds(string id, string token) - { - client = new HttpClient(); - var BearerToken = $"{id}:{token}"; - this.token = token; - string Base64BearerToken = Convert.ToBase64String(Encoding.UTF8.GetBytes(BearerToken)); - - client.BaseAddress = new Uri("https://spworlds.ru/api/public/"); - client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Base64BearerToken); - } - - private async Task ValidateWebHook(string webHook, string bodyHash) - { - byte[] body = Encoding.UTF8.GetBytes(bodyHash); - byte[] webhook = Encoding.UTF8.GetBytes(webHook); - var key = new HMACSHA256(Encoding.UTF8.GetBytes(token)); - string webhook64 = Convert.ToBase64String(key.ComputeHash(webhook)); - return webhook64.Equals(body); - } - - private async Task SendRequest(string endpoint, Boolean getResult = true, Dictionary? body = null) - { - string respond; - string jsonBody; - - if (body == null) - { - return respond = client.GetAsync(endpoint).Result.Content.ReadAsStringAsync().Result; - } - else - { - jsonBody = JsonSerializer.Serialize(body); - var payload = new StringContent(jsonBody, Encoding.UTF8, "application/json"); - - if (getResult) - return respond = client.PostAsync(endpoint, payload).Result.Content.ReadAsStringAsync().Result; - else - await client.PostAsync(endpoint, payload); - } - - return null; - } - - public async Task GetBalance() - { - string respond = await SendRequest("card"); - - var card = JsonObject.Parse(respond); - var balance = card["balance"]; - - return (int)balance; - } - - public async Task CreateTransaction(string receiver, int amount, string comment) - { - var transitionInfo = new Dictionary - { - { "receiver", receiver }, - { "amount", amount }, - { "comment", comment } - }; - - await SendRequest(endpoint: "transactions", body: transitionInfo); - } - - public async Task GetUser(string discordId) - { - string userName = (string)JsonObject.Parse(await SendRequest($"users/{discordId}"))["username"]; - User user = await User.CreateUser(userName); - return (User)user; - } - - public async Task InitPayment(int amount, string redirectUrl, string webhookUrl, string data) - { - var paymentInfo = new Dictionary - { - { "amount", amount }, - { "redirectUrl", redirectUrl }, - { "webhookUrl", webhookUrl }, - { "data", data } - }; - - var payment = JsonObject.Parse(await SendRequest(endpoint: $"payment", body: paymentInfo)); - var url = payment["url"]; - - return (string)url; - } - - public async Task InitPayment(PaymentData paymentData) - { - var paymentInfo = new Dictionary - { - { "amount", paymentData.Amount }, - { "redirectUrl", paymentData.RedirectUrl }, - { "webhookUrl", paymentData.WebHookUrl }, - { "data", paymentData.Data } - }; - - var payment = JsonObject.Parse(await SendRequest(endpoint: $"payment", body: paymentInfo)); - var url = payment["url"]; - - return (string)url; - } -} - +using System.Net.Http.Headers; +using System.Text.Json; +using System.Text; +using System.Text.Json.Nodes; +using System.Security.Cryptography; +using System.Runtime.InteropServices; + +using spworlds.Types; +namespace spworlds; + +public class SPWorlds +{ + private readonly HttpClient client; + private string token; + + public SPWorlds(string id, string token) + { + client = new HttpClient(); + var BearerToken = $"{id}:{token}"; + this.token = token; + string Base64BearerToken = Convert.ToBase64String(Encoding.UTF8.GetBytes(BearerToken)); + + client.BaseAddress = new Uri("https://spworlds.ru/api/public/"); + client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Base64BearerToken); + } + + private async Task ValidateWebHook(string webHook, string bodyHash) + { + byte[] body = Encoding.UTF8.GetBytes(bodyHash); + byte[] webhook = Encoding.UTF8.GetBytes(webHook); + var key = new HMACSHA256(Encoding.UTF8.GetBytes(token)); + string webhook64 = Convert.ToBase64String(key.ComputeHash(webhook)); + return webhook64.Equals(body); + } + + private async Task SendRequest(string endpoint, Boolean getResult = true, Dictionary? body = null) + { + string respond; + string jsonBody; + + if (body == null) + { + return respond = client.GetAsync(endpoint).Result.Content.ReadAsStringAsync().Result; + } + else + { + jsonBody = JsonSerializer.Serialize(body); + var payload = new StringContent(jsonBody, Encoding.UTF8, "application/json"); + + if (getResult) + return respond = client.PostAsync(endpoint, payload).Result.Content.ReadAsStringAsync().Result; + else + await client.PostAsync(endpoint, payload); + } + + return null; + } + + public async Task GetBalance() + { + string respond = await SendRequest("card"); + + var card = JsonObject.Parse(respond); + var balance = card["balance"]; + + return (int)balance; + } + + public async Task CreateTransaction(string receiver, int amount, string comment) + { + var transitionInfo = new Dictionary + { + { "receiver", receiver }, + { "amount", amount }, + { "comment", comment } + }; + + await SendRequest(endpoint: "transactions", body: transitionInfo); + } + + public async Task GetUser(string discordId) + { + string userName = (string)JsonObject.Parse(await SendRequest($"users/{discordId}"))["username"]; + User user = await User.CreateUser(userName); + return (User)user; + } + + public async Task InitPayment(int amount, string redirectUrl, string webhookUrl, string data) + { + var paymentInfo = new Dictionary + { + { "amount", amount }, + { "redirectUrl", redirectUrl }, + { "webhookUrl", webhookUrl }, + { "data", data } + }; + + var payment = JsonObject.Parse(await SendRequest(endpoint: $"payment", body: paymentInfo)); + var url = payment["url"]; + + return (string)url; + } + + public async Task InitPayment(PaymentData paymentData) + { + var paymentInfo = new Dictionary + { + { "amount", paymentData.Amount }, + { "redirectUrl", paymentData.RedirectUrl }, + { "webhookUrl", paymentData.WebHookUrl }, + { "data", paymentData.Data } + }; + + var payment = JsonObject.Parse(await SendRequest(endpoint: $"payment", body: paymentInfo)); + var url = payment["url"]; + + return (string)url; + } +} + diff --git a/src/spworlds.csproj b/src/spworlds.csproj index d127f1b..0805ba6 100644 --- a/src/spworlds.csproj +++ b/src/spworlds.csproj @@ -7,7 +7,7 @@ spworlds данная библиотека предназначена для работы с сайтом spworlds. Ознакомиться с документацией можно в гитхабе проекта MIT - 1.0.1 + 1.0.4 Mih4n Mih4n https://github.com/Mih4n/spworlds