From 533ab2a4925161870b75a5fb808e2c9aacdb180b Mon Sep 17 00:00:00 2001 From: Michael Aubrey Date: Tue, 21 Jan 2020 20:58:08 +0900 Subject: [PATCH] first commit --- .gitignore | 75 ++++++++++++ .metadata | 10 ++ CHANGELOG.md | 3 + LICENSE | 1 + README.md | 150 ++++++++++++++++++++++++ example_images/banner.png | Bin 0 -> 69493 bytes example_images/circle.png | Bin 0 -> 15544 bytes example_images/concave_convex.png | Bin 0 -> 27312 bytes example_images/deep.png | Bin 0 -> 25139 bytes example_images/simple.png | Bin 0 -> 11927 bytes example_images/simple_child.png | Bin 0 -> 16018 bytes example_images/weird.png | Bin 0 -> 14172 bytes lib/clay_containers.dart | 115 ++++++++++++++++++ pubspec.lock | 188 ++++++++++++++++++++++++++++++ pubspec.yaml | 17 +++ test/clay_containers.dart | 14 +++ 16 files changed, 573 insertions(+) create mode 100644 .gitignore create mode 100644 .metadata create mode 100644 CHANGELOG.md create mode 100644 LICENSE create mode 100644 README.md create mode 100644 example_images/banner.png create mode 100644 example_images/circle.png create mode 100644 example_images/concave_convex.png create mode 100644 example_images/deep.png create mode 100644 example_images/simple.png create mode 100644 example_images/simple_child.png create mode 100644 example_images/weird.png create mode 100644 lib/clay_containers.dart create mode 100644 pubspec.lock create mode 100644 pubspec.yaml create mode 100644 test/clay_containers.dart diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bb431f0 --- /dev/null +++ b/.gitignore @@ -0,0 +1,75 @@ +# Miscellaneous +*.class +*.log +*.pyc +*.swp +.DS_Store +.atom/ +.buildlog/ +.history +.svn/ + +# IntelliJ related +*.iml +*.ipr +*.iws +.idea/ + +# The .vscode folder contains launch configuration and tasks you configure in +# VS Code which you may wish to be included in version control, so this line +# is commented out by default. +#.vscode/ + +# Flutter/Dart/Pub related +**/doc/api/ +.dart_tool/ +.flutter-plugins +.flutter-plugins-dependencies +.packages +.pub-cache/ +.pub/ +build/ + +# Android related +**/android/**/gradle-wrapper.jar +**/android/.gradle +**/android/captures/ +**/android/gradlew +**/android/gradlew.bat +**/android/local.properties +**/android/**/GeneratedPluginRegistrant.java + +# iOS/XCode related +**/ios/**/*.mode1v3 +**/ios/**/*.mode2v3 +**/ios/**/*.moved-aside +**/ios/**/*.pbxuser +**/ios/**/*.perspectivev3 +**/ios/**/*sync/ +**/ios/**/.sconsign.dblite +**/ios/**/.tags* +**/ios/**/.vagrant/ +**/ios/**/DerivedData/ +**/ios/**/Icon? +**/ios/**/Pods/ +**/ios/**/.symlinks/ +**/ios/**/profile +**/ios/**/xcuserdata +**/ios/.generated/ +**/ios/Flutter/App.framework +**/ios/Flutter/Flutter.framework +**/ios/Flutter/Flutter.podspec +**/ios/Flutter/Generated.xcconfig +**/ios/Flutter/app.flx +**/ios/Flutter/app.zip +**/ios/Flutter/flutter_assets/ +**/ios/Flutter/flutter_export_environment.sh +**/ios/ServiceDefinitions.json +**/ios/Runner/GeneratedPluginRegistrant.* + +# Exceptions to above rules. +!**/ios/**/default.mode1v3 +!**/ios/**/default.mode2v3 +!**/ios/**/default.pbxuser +!**/ios/**/default.perspectivev3 +!/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages diff --git a/.metadata b/.metadata new file mode 100644 index 0000000..d286599 --- /dev/null +++ b/.metadata @@ -0,0 +1,10 @@ +# This file tracks properties of this Flutter project. +# Used by Flutter tool to assess capabilities and perform upgrades etc. +# +# This file should be version controlled and should not be manually edited. + +version: + revision: 27321ebbad34b0a3fafe99fac037102196d655ff + channel: stable + +project_type: package diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..ac07159 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,3 @@ +## [0.0.1] - TODO: Add release date. + +* TODO: Describe initial release. diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..ba75c69 --- /dev/null +++ b/LICENSE @@ -0,0 +1 @@ +TODO: Add your license here. diff --git a/README.md b/README.md new file mode 100644 index 0000000..47a66e7 --- /dev/null +++ b/README.md @@ -0,0 +1,150 @@ +![Clay Containers for implementing beautiful, modern neumorphic designs.](./example_images/banner.png) + +# Clay Containers + +Easily create and customize beautiful, modern neumorphic containers for your Flutter project. These clay containers can become the basis for your own unique neumorphic designs. + +## Installation + +Add `clay_containers` to your project as a [dependency in your pubspec.yaml file](https://flutter.dev/docs/development/packages-and-plugins/using-packages). This is a simple Dart plugin, so additional configuration for iOS and Android is not needed. + +## Examples + +### Simple `ClayContainer` +For best results, set the background +color of a surrounding Widget to match +the color you will set for your clay +container. Since it is likely you'll reuse this base color +multiple times (especially if you end up doing something fancy) +it's good to set this color to a single value. In the following example it +is set to `baseColor`. + +``` +import 'package:clay_containers/clay_containers.dart'; + +class MyExampleScreen extends StatelessWidget { + @override + Widget build(BuildContext context) { + Color baseColor = Color(0xFFF2F2F2); + + return Container( + color: baseColor, + child: Center( + child: ClayContainer( + color: baseColor, + height: 200, + width: 200, + ), + ), + ); + } +} +``` + +![ClayContainer example.](./example_images/simple.png) + +### `ClayContainer` with Child + +In the previous example the `ClayContainer` was given `height` and `width` +since it has no child. +`ClayContainer` behaves the same as a normal +`Container` and needs to be either given `height` and `width` or a `child` to be visible. I've also included `Padding` so that the text didn't end up flesh with the edge of the container. + +``` +ClayContainer( + color: baseColor, + child: Padding( + padding: EdgeInsets.all(20), + child: Text( + "Seize the Clay!", + style: TextStyle( + fontSize: 40, + fontWeight: FontWeight.w200, + color: Colors.black45, + ), + ), + ), + ), +``` + +![Clay container example with child.](./example_images/simple_child.png) + +### Rounded `ClayContainer`s + +Don't be a square! Use borderRadius to add some flare. If you want a uniform `borderRadius` you can simple set it directly in the `ClayContainer` constructor. + +``` +ClayContainer( + color: baseColor, + height: 150, + width: 150, + borderRadius: 75, + ), +``` +![A rounded ClayContainer.](./example_images/circle.png) + +If you want to pass your own custom `BorderRadius` object, that is available as well: In that case pass it to `customBorderRadius`. + +``` +ClayContainer( + color: baseColor, + height: 150, + width: 150, + customBorderRadius: BorderRadius.only( + topRight: Radius.elliptical(150, 150), + bottomLeft: Radius.circular(50)), + ), +``` +![A weird shaped ClayContainer.](./example_images/weird.png) + +### Change Default Spread and Depth + +Don't like the default look of the neumorphic effect? Change the base variables. Do whatever you want. I'm not your mom. + +``` +ClayContainer( + color: baseColor, + height: 150, + width: 150, + borderRadius: 75, + depth: 40, + spread: 40, + ), +``` +![A ClayContainer as deep as a freshmen Philosophy class.](./example_images/deep.png) + +### Concave and Convex `ClayContainer`s + +Give your `ClayContainer` a convex or a concave look by passing either `CurveType.concave` or `CurveType.convex` to the `curveType` parameter. + +``` +Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + ClayContainer( + color: baseColor, + height: 150, + width: 150, + borderRadius: 75, + curveType: CurveType.concave, + ), + SizedBox(width: 50), + ClayContainer( + color: baseColor, + height: 150, + width: 150, + borderRadius: 75, + curveType: CurveType.none, + ), + SizedBox(width: 50), + ClayContainer( + color: baseColor, + height: 150, + width: 150, + borderRadius: 75, + curveType: CurveType.convex, + ), + ], + ), +``` +![Concave, flat, and convex ClayContainers.](./example_images/concave_convex.png) \ No newline at end of file diff --git a/example_images/banner.png b/example_images/banner.png new file mode 100644 index 0000000000000000000000000000000000000000..fa830c02e8da539a031fcb602f361516c613fc52 GIT binary patch literal 69493 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 QFT_w&(Rxv(1dRB90JMKccmMzZ literal 0 HcmV?d00001 diff --git a/example_images/circle.png b/example_images/circle.png new file mode 100644 index 0000000000000000000000000000000000000000..399f1b548913980d07f956c6dbfcda994a535230 GIT binary patch literal 15544 zcmeHtbyQSs_b3bl5-Kes(%mK9Aw7W7jZ)G`cZZ^cg47HxT}mS$BPh*)4&6w136blO^j)jFy zi;oA4U|-ViVPW03a#T{%Raa7C(Dih;cXYAC!ZMEe5O7PM0)liKMyO1(uD@M@39BI_ zZap#a#7lo0iT?^r`Hq2*O&<4&02334Oqo=ji-E8pJiOpJL)4|x$o|#BeooNvu25NWaKy*`DF~ zstSnl_JqQQR`T9UDHagnXnhN|T@LDNx;pY7&#)vI*=akBQs@CKH51Vx9+e-6| zj^Aa6rkclSu3+>#jpLGxN!Q7@XRZPqgTXlDq|)SDj&=#wcwl}!fA=Hi`;S-Y?S41^ zNcw#gKcX6pXH3Gg4G|Sk6`+btP>ibLY23{Dimg(NufhbTq#<$K`ZOmt$KE*-YGyCU zI*2$YJ}KJRb~~+N(i82OTXat#^c z!pWMM^g*J3SV)DObSg*dohw|@$}MuI$|hEN-_xS|Q?97EIOWUFRN5$Ffrjbsn0MEA z+03pZY69Php&gVw5_C$dm+2*BN%`)Dxg4Gd3e48h?i~^M%r;Wd5hRV)&Fo3h(7DtN zC3RnbY1~Kr7&4fdrbAo#O@+w_dU-J~-W;gW#PQ1fq>Hc>hVq7t{DgxxaB$$a3X-=7 zI^`MgH?ms9qAsVM1VOg)*rD)SYOZ?M#~$-81dnr080dl(l8IlP&FHw-jongaK5pn3 zttz27m~%;(-ysFdGKqsTqO4c^M(t}xItnEsUPhB0SQQ2_e!*k*DctRF{DS}EIg|{o z%16ITuU*MFj^!LF(ixvGF(UQz!3(05vMBw4dM?x5q{f@2p5X7t&tGqx0rx=PNDNdOB00cZq5$b$Jru6sDxqs#H}8Z!4p9(M{<2Pucr7 z*6UV8*Gni@*+?Gj$JVSHB+55)DJn3P&6?CZN!Lg@voC?y=<@4@w6LU_8)CU2W_MJW zSLfz|Ycp*qST1IJDJY!SE!ufW`)mpCnnr0EDtPShs1*_tNg{!LBSIGtG-mCwF}nMYHn2hl7J zdXd!sc1{G{0b!fMZwF8?UY#{vr94S=lo|>1_q&IRipgLW;xa`kMx|a*ZIn49aW64p zOhF!wE@3Keb~HksDxYwJ&6_?DEE5x$KQR*Y;=wsKZ=p2>>5u5&Dg=eLy5$@esS^Fz z4K%B9({b^tMFok4gilyYol75#GLH(6a*uLs2|L}z6A&2$p}L-a;;JMz>vH?VuN6VQ zq}7bY7g4b&XA-CY^|b!g+s}9k%%gw2{u=p^w+;rdq7| zO>+=(rhZ8nk;tH|%Wh2GM({G)MUgr`aRidVP^tS<@3pSu6A4}1r?drJAIl4z3IjFK zDOp*8w;CQa@cLl+kohp8?`*M;?w6&%x~=@OK=x<${m0VUZHg{TU)io%-l=u6(7vbP zeD4j@S8!rXNWSNI-|?fPmSdaa-CqZ%J1T7r4o@d$FTN~Q?K2Nmcdmh>=-4Ck6ugjRw`dNyENVITCPaS+kt)=T$2rz)V*~Qs(4M(Q^&n~d(?FI=xB4~ zbEI?davUvH=Cj+d+XC7W+H%h_Fy5F*3?ar8V~=S$gPawf@gMme*6ff>Ej2R-sG<{} zVRK;{U|U5O^#^M(-2oy#Dk$BmVmv z{rEOY*4IvN_Q-ijLpWn8^(cwRq`1eK6UmIoPO13G_S59mIW)m)un!v_zN?k1$7-ah z-Blwk@-8YU;wqZgtWz^nW7k|rx#nW#SY}IMM)IM|4An)A8?{an9!9}3&1=oGXNdz| z2JmB;FzJLWxXdw8gbjoXl&lmX6vLc%xdgdPxM-g^8Jg-DJ}Krf;?$|YFZVB{sJLA! zR5o2oXAn{l`vj>cRcct%__4Z@t}ImZ3L2ZLlH6^OzzHFR&<_a>30BdX+E%?WEtJCe z2JWU-p7SgJOs(etX>(=PLNPubyu&uF4u;CQX7F!lm7T4Kx*%R1Tttop2p@i4y zdA{><-1AA}&=ejpA80aEG|V?Vt&C_W^QlIEN_aIS3%%87Y(_J~G?V1(>3eHudY5|l zblR#R*KfqD*VliUW9$Cvv&h*Czc)LHb64KPJvoaq#HYXZSohm^BMv=Inzue{G_s{9uS-K@-pDw# zAGd1kRNuxKCTnbil*dF4j(Dr|N0h{=kBmreKMAVmOnp>ZpnkBh?9l z<7a8tll?+J6{^Sl-QquH6N{4WB<#K=Pa1dyeJd8YIstwVgm2wGg7D`}CcrWUqyxfcN z_70Q}G>TR1-h8`|IiE>uQfq>1QlZ+O==(55%Fy5Cs(Jsg+GTaei~SS3qR#R9i}lpp zk8;#uo;(vmO>9a0{KET2*YlSpxbe8_I#06WB}GhMJTVS3Jve@itZ=v-ZsYpJUCy`0 zh2XFh-wtWqhap% zB@48xpRI0dP%J9=%{4K$qoHr7zj`ck>MS#Hr+UIr-N2&Kz6|jN+f8}y%p19Ef5VG1 z8)`CeH<}~;q8FTg=w^RMpWH||X!vISMU}Jben{QLkk11jKYBH}=BL9}R>#ShXTCTF zN={vYHo?p0dj7~k<_=Yxp&;l&eRF-AOM~mKldyZx(d5QU%~rRdW%4R^w9Z)W{J!pP z^Qjib1XA*JeQsT2c;A=PZ_K;Gd*Y-NJ&JZZ5j}Q1l?i-y@cU2`nLcc3(!RCpw?qHX zgZ@74F&!+B_VWBf_jsfq`mrgaDYMJF3zylPnRWmByg?FIl5DX1!BPr@_-`$KPIO>mM@f`H!vQJK{szQIK`B^~!;r?|%KK zXnNJK+MBi`%|jy;Y-qMOxc9POagFKXIp+P=(~DZv(Tc_(ms^7e#HDJl3A5j{&A7e2 zWJ?%;;=*F4T-_#uCvjsXn`2w=DC|+RHXgO@f|%2ZDUN(2KjsgY8j9n(CjI;tzbJm- z0=DGhb>en1ToT5c40{Gp69Y* z=iS*nZu|YV5LLZE?-gF<<%%B^)GRQDcO3#Pnn77wFji0riDrsa@Gk~+-$Vkr1W&y-iQmP3x|2~ z`SH28V1>lD=pNM{Qr8qj{fKd>K#1go`7W*g$bbLy*JiC%`V#lx>Tk+Gqd9Jy>Q##l zgE6zKE4C}%n3)qlroEifvSuTri;YlC3uM$Sv>&~pnEs}a1=y5lp2(-6>(8E2 zW*5IwewNJ9CgnDG%LZC57|dBrlK-q&P~8eTEZ8X8=PnA>x`E4MtdE_u8FzH0$gDKn z+2g!a9;tNC)6$IHzq-7>ywxh`Ul}<2GT4!6zi_3eTfMdKu&fIygj~+;my1Ji3=W2r zU2mZiu4m>(meKmt<}l>znksZ0`7pt2CFkQ2P5GvK?BixX&J{ zSZlvB%`j3{AJrdJlGbK2Ix5yLIZovtVI!nYvuW5{d@Ex!b?f2!@BOVs z`%juPb1#}^ax&U6bYi_jIkc9p^L`=mA*UA-7Xx@CIQF2R$gN0j#dyWKuJ>J>7qgs_ zq-~_!?`jIFRZD*OcR%Rv>n7S;mxbrRVQPLPK_0T3UHOSCP)1#f#fzKak!Iqw$Jw_;Yt9#e750JHP+%W3AB) z8pttsYBmomD!d#pxbB~uh_C6Ww*T_XN0@f1J#9~8!heCge7B-YTDNlH;=rS8wfnp{ zR@DfqQ_oW0UC%0maFe_Ec)Zz?xIA1Sxtpu$liwQq#T{*n#ygq%DiG{=*5A0`#o#1> zM!(CC7W?Xsj+2OWP}%E{652Yl+`_r;>iL{@SVw*#yQM|OZl(P}oBopGU@EBlMzeR~ zzIo^wSu@0(vx*i^zs_7i??tF4{M zs4&OVE*bS8w9Elr`^xiS27ZWp!D;d^xC2`Sp(b7nUGE1S9brTQOV^fm6{8kYwKi0SJZDec6 zCCH_iJPJ*_f?WnQ5IIqO(6H5bJaESU*{Zlh(LlR2?=h45c2*CX*e%CcsDL%Fqd7qPXl?VtsfZ(KOZZ&ot3dy*yZ z$RlJ}hJ&%NxGAwjS+E|CVr{8W%2OL*b8H+epl}q)bfn*V)nZvP;8DEOLV}tZ1H5>8 z<%Rm4^RSO2lB_A8hks|FWs!Rup2&!?rg;<_se8#GlPb1_|9%ynpY{xUk}NT9U;h4ca|oBIN5YAWNAF`pzSSzLtgMhSOi!|(jY9DX~y06+YesjF>VT>J5hT7$gn zV+(C%a+%k>ER0X_Hn|gUATsYaS4ObEgm^C>S0B&aR=G_~Z9wguF`8+bv76CjTwwgU z64#~ErD4Z#NAKY#%oAo~zTP4ez~X-|fF8Aq3fkADfD^Wnw(+L&KID1M$Hk~Z2Bi#R zJ(NF!=@-&G<#e~juSE7ZsdhaNLPk5i@g_5aPh>GM{ zN0>Ko2ouN@O!7ENg-h>^ie(Uq#u3BE4#cx?T;mXmP0twK-m{lm!?vfaNPv8k{qb|j z{AId_+`*SK^Gnr8JjQeZCA;WB3|9jYnwEvUn8fP+s2bIaQpe|xY>pO=ts8GQvNrsF zi3x28dkahp-(}9+6!H>%BR(KJ9^%5|BC^xCLoe}LTpea-E@{3zD!kCnH%r3T#Qn9Ft!B?pbnCde;DNpAP434qpzLr=cHz<)5qU z#^EItSElVEuy)mG-J7-Ddv%7e@mNuX-pn+Iuztn` z!QstFufhR8u_6ogz2Vb?orL3!6N-Z)G~%>nduCN^uY;_Y>?6qz2^no5TP5cud5lOW zhmho!#<4Ds13ejPP2AFhK0L`w*k&&0I^`3C{mP?I7Q0l8|&hgs*T!>l4ub_JIg%C+hWJ% zdkVKlD(+iovDssB$I3+0cJF@wuy}YTaH$#jV2Ot^o-28avH=^7Q}E!Bv@iDf9b0Bv zZsTi2wp-3MIEtdnt6P_iOi!YY4rP`mZb&!I*SNfs^Dq$h+g!_>d$voup^Y7*c*g77 zOZbW4Ic|FNSE4X-4Cfa%ZDvM}GUiprY!)xWM#H_BOP$AeS@l+JKim^3_|n>ahxehU zk?Y7@e!4UKxv|}jy@va^^UH3o!S0{h^P#;zhsuyYzN3HeS)Kln;iMyxm_>bPir4u} z|LsPX!9dsXmEC>(4po9TE3chizm7-E--vwX;oQ>=J96UM5|B;Ud!-nt+&#e4Q;6(A z>Zq-^At1vO9A}osFYR>%$ELW~4fv#ae)73~vGr&voGt!sSJc&z!&SI-A@@ zRJYC)`h@*5Z~d8Pp(oPY>tzMn#`_|wgmjoivZob+Zax-l-w663V=dY&>%CirJ{WB+ z{nZndsE>TA{!eppD^E5Zt>Xl`NrMK0N zM{?jUsDvIi0D-jD`6AKeB)oS^Y03J%=1?D-Yvy3e6|p4ZSEaYG z>}^A?N(8W)Q?M#mD{E>}f$IZPU$+@nR%Fw)(zLYm1{OzXQ-tJqE7q%v4%iL$?ZX9@ z1Rg61pyOa@XRK}yfnad~_xM=YagJEvKYa+`dH`HlSUB%vv2FqXWWc4I2l{6gB%X)! z&pkHnpBEMMl+@LMe?1#dJ3BY87w+D#p{-T`s&PksV{c=KmZXilE8jC)_vdze{;nQ> zK(M6!C4pO4JMU)<{;n==UXuPYOn<#03Eck~=4WE~>lJTj875Xh`T6nr3G=yoI`9ihNJ#Jt2=NOE@d9t~ zdIh+7KlA5x^J4xR$v=3M?YwL}9X-4q-Q5`e;C=So-N##oiRsTm|Ni|=r=7p!e^zqy z`q#FA4f6k);TPl+;Qu#n095+VsHCo=znzP*vZE_-Jir>VBBJ8bf4%>I%=~A?zab60 z>^zm+T>(IE+5epHzkvVe~Db4?9=l|m*{yyfvMuBsd zC6wm>H_v1ViMzG)v9K6N)Rh(V{jqoF?wHLsQ{#?Av+Um7RD?{=K|tyuBB8X;Vk6|? zbQpiC6?Ze$y>r8p+w?c6+?&fwYXA3?pFhLn_dp2@(bY zSa`Uwc}h9S-;WH7&3M2l02i?Y2E&%J^ke>h#K!Is`3D<2!{Y6Uk6g-sBgYr7{u@@_ zS{xhOp_$Eq@h{Bs^6-~;{z8Qf>LS1w?-D5^B>kHrP@?nSuq5}j<>A!T>ISd=CXK|y z9On;J^5Jj~5D4J`DOddaF+6-?0G>2Gqt4=4V$t^aQ2zg+pRfXRpd z-*rWn`HyC?MkLY8S(;uJ*vW-m2mkaH1vClng$stQYnUX#vB5cn!aBSi%A;{vUKg9` zR?|s#fDZa6hKHjbvTl>yH(oTKRPzb*yJjtjPWQUlR)Tc2<%T(SqycBYD2R={E=Y|c zxXm*X_qyC(Zhtv$^Rxb`t&>cM8#Jpa6{%O6if(@y}%}Q2ZYV*spxAylHfF5N+E1Xx#y) z>lPoU%=duZAO$SWEifMCMwC{$G4`_GKrYy`fWEzo{jX^CG|4 zISl9u*uee+MQ(g6i4Z4bDyigL2SW9v$_UBNS(ik}CSqx~TT@(7i7}{ds=;Ug)-W|Z zT#rlxgoDpQGOD{Al6godf7)HrQWBox*Ye}R;eXwd#Z>Ev|7>D(bQ&o8VU4*v{r%%-VhnwV)M?%e|&f!^fW(DTh( z%O%k%Q?8{~qu%}C_*}Wr(6htkp0Z1c53ck22yR1?vRVZ58|O9z`|8lpkWj~NfnB8) zC)dShQ^n?VSYug$$o$DN6*egD9*M`@xl1m&NVq2|7e@m(MOOJ^&U&$PD7O(dJ4%RU zaCUBv*A9fJ356mh(?e^bdTqAXF3Ehk4tUU6QKmC|oLo~S{ca9EFc+icx#xvo{D)fd za0%n6ial`WV+6FB!FkGwf)8 zG<1ny!I~|4I$yI>GUiCA&_VuvZ}&SG8)U@KuxK7aUJfV4J=cAINGRnRd{_Lmn;h?G z|Dj9y&Te^0aVMn1<;|h&!AfxYCsc3Wv5%9CcvXL(7u}K&6n+2*&H*M8mWCLp8Np1yP4?Rj7Bsn?I&^cvH`nblcQu+@iWy}fRdjmoX3MwQR1fheCoZOm;+Ut>d}*xxysY=xMXBs_|Bta4n7yXV3+TaRmW zUJ>Y1j^K3eJ!}7zg8TBwQk#^M;5Kjow->&1iAT!MwOv3lMTes;jX)Q+?P7PP=|tQK zoKmh7sTGr1?#vsc>)S3#oR+B&4%Y>?tvggE#7wBK+d}bTj~5!`^!y#B1rv64-hiI9 z4IW)GpX;x#@ya|#y#>h30m!t3mj9Fo`9x`BCWnW5Hf2(!L$W5ywj3mr3Vu23?N^P~ zz8mmTD5=@k8@TXEAZPGs2Npp$W((7sGhnkS;iiAxkyF>-ALrTDab&MS7EiD(t@TC; zc&&^ZofZ<|i>r2kM#IuUn#K}HFE9RCTg=uw{Xl0jx9VNw6Za_+O7DI&Z<5^t7=K4e z9zLZiB~Ao-BR?0dR~?o^D5e_B(g3%(|Jp`TyVD9|j}E=;T)Rig;1L7RKq;D~M`x7h z*33B}rxOE}PShAqSZb4(Cigs_hoSv3xeHM(V0`lw_@-HH_2%1b?g$0kt+nZN>ft00 zl*0p=L~5=LeYi<_*xHK|#c+5UfHLho5wb`c;nUmaMCm)eKl^b)Wq61=*}>k(cyPI# zQ1Z&?q0yv7U6~1h_g%QEzR{?$wvTy)PoBx?^e6;l-Yjv>US#QMps%AH0}G}(reI9> z^Ca^uhgjBz&5$sBY7eJ_?asidADZX6edMIS>SHew(ig0PTGA}7eLs4?K>2{&K6G$@ z?YLd+>P+**odyJMq$KfZMEiMzAbIFPEt@1<*opeV_<)Bg`!|*5fU6&%+M-nzIBFXy%nm z39BHcPand=>prwC(^=+q4z&o>fgZQrnUm8K$vsU!VFbe%7a#f-fA^ByXbyXO z<*K{;0UisIW&6tbRf*m#FYv{=ZXI2c?%HZQ^z#0^A;bRi$5S?iqqX&+IC|ugTd}u9 zh>f<8{g+?GVKb96Ij`Eu84jGVWyEXP>Ty6F>?5cBqi0_#W$eG6x@jzj^hd**Cz#9W zTQeS+}>l>w2-dP7@Xs zp_3~YqNbzWo|IwU=yi4G&O8Mcw2I5_X@f&C+ir5U@q+f z^bPh`cw{6bs`ln!u83bx2uS<^3mu@<9Sm~k_;govd$Y}WM^Ddv5^H!Cz0O}kmB>9R z&A|$D&@fGaUjRzG@4oly*1b}yH%iHehT}mJu3L}f_UHY{b(Kfpcm4CYSy&-NPfQmh-f($Tt`jez? zCnJi82zUSxP_(^i0ncmY5sOHuK_;-t-Dbr#Z7zg%Q{2V(lpqNcQ;s$7b;%}^00GTy z^k9o3I&OdDDotEg40X8rc;514t9@!A=Ab6*sv=t-7wXf}A?&LH2KWG^E$%$YSV-c5 zc$jmmJ^`2DFhL$Z6zUm$dFO=q|C@U6c^XWop9(ck~uN z_vnv7>xS!m4Z(?kI6Q3H9lNB(Jr~epWap5VqXYZ7VP=TA9u1&g8;+E-SnC>3x>aPFYe$! zR0ABRu1&?(1(AMo8S^Rf%75<-oz90}p#!VKVp{an`}B~8mrM2?ch(2*ass5(P8kFe zMG!vX1pNH+UQc$9Ud-oZq5UOT5EXlgdAqy8Uh@O(1UMrgQc92NG~9TT{XF>Y1W4O8 z-;D^~w2IyOR#v;#5EDwu@Tmnj)c|twh@ZHo?n5wl)BT}`zUMix;NwXTTF`o+$9Xc+ zX~_V#{X)w@;vavO15T5L*{yi{wn%J!o6^&?kWFukOYz9^9dH(_f{B&A*>k+5}$n5EUjTbq*LqgPz*;?!ieWKLTpLz)MI01y5lf|;Pc$Do36yWJ$h z{F|+!c1)H}0B*@X1;Il_;DnTgD^~7-LNZ#8-+w-JZ+wwGL0d;GKBcFK5E^~)VF1Jo z#&0VDqS&12#K+cT8&Nv)VAysmkL(QQc zo^iXe`MRlCPnMx&9DJw*877&oD}1_G?;&iE-@jd&P{$%r47f=9*7C8txCoizqsYU% zG+Wdqsg})KuQfB&M@-_f9d^38faUXn-I)N zE4Fv}0QOyibgx`-r*F0wPADE;#enGDLuLHTZ)KP1^#F#T8z8Lv&f-B25TR8!UCl7} z7$iIHX7(6(b^iQ1G4mC1c@9K|+wMvt4D!}Q5oI_fk25h>P(tB~!MY!r5^UI@6d*$o zV)#@P-nx`_UL)z-ZhJYY&2=E%I2#NC&l>_Zz|1O${S*GE%^SP!N1kq$9kXYlxCmSr zlDYgUr%ssJg9Xq^wW_M>8G?BDWBxr(pqmpq2b6>$K+gd657gwyjn0Eu$Ws*=s}VM;qa#E63PKN$)+KorDy zHx;e{*X-s_-p-|XTGMf7%-RLe;GGkLR$BboR#I(+lH8M5PPgtHcj}dt*%2GvRU_Ao@!<8sCz*T-?D6Ts=QyfT20h9l$Y)~7O#a1G1Ul8R zYdlJL73#%k0JYRHlSIA*nDuhTaOi|(1ii9Sf1bB&-&_(KINt)q*D}U09aXa>iCqR6 zKE(iv81u!3PMbkSV$4g=j&XMOEccm-xn^d#*PaEGb;VrsF^oMT0{1fAXR+I$;fg@N zc~evD$5jJT&*Av$;&gLrbhV*=+m2q7psfMm(0J!bn12MJFzyqi!J5j3y|Ls4KWY#7 zDict@vCy$tot2y`qY-Md`^rG9`;pPW<_5$&GPwU+zq!w3y?aA&?0TjKad2|tOCY{& z3A^X{1#X&O(r7@&a1aVe=!J)x+U<00np(cLQ`I_F6rTJ|AAr#I_vM zA+BrQ)L3=Q2USigIw~R_`j4+(JFna(cng^Cw=<1SjlvQ4oIJJrL^u2TP#(6-wxI8j^+Qq`hp~FdJd-rJTxxO5UsL z1>6*ev3wA%*bL&3Y(-vvC7t4LOX7*TWKHdPw0oM2k^~~PC1tR2~FYv-A(fKxChRH zp9@l^ol>1`*K~xo8%uXsA>&|P%llzziE80+JwUSb6w}E4*&~Xm93(9hj4;|I9%o%E zL|0qx+Pn((TR+r?Aqzoz%ecj-#eX6yW+0*};e`=Iuueulr*#`gHeXlD%ihhIhlajj zEV=lukDFbohh1v5AdU^X0BRj4$a{!rd2(?o+vy?iEp_px+cVp^zt1~vuG|l+4t}MN zIU|P$-U+(`o+At(=6d=&HL3Aea)Xd4f9gzUUk3@hS<<;L!fpg=Yrze=z43($I_XeP`oL^8S~y z{noy5N;gx9xJ<94;&aintHS9>EI^13th!I%`#uEmQ}iyEqjklWqha)Za^r6xa*WB= zDe3Xf9K)&GIZzs+Hbvci%YV{CM;C`8{orp5fp^ zh6bFoBNek51(BOiTdj#39xis0$^o)gz;jIbU5HD8h{2vwReoNz0!TkUz240E0nFvp z%}4t1A>rRCme6yij#_8zVoNsd);{es;=eK8$AO7wH# zg>VjCoOJd1_0>fb)%!44|Jl#d-52{|H?6^@Tx68iTcrBjC4TPX?P3k{FVUkgxDVl3 zN6^HS8{)hdq{prp$SicMz@B@FIYd!-{z^%qX;@Oas940*>j$>{B1eKW>BNglii0wn ziA8yLyk#VuovVRuSOMDzqmfYhvkk9M5>HQ5&UN4A@ybdzj9IQWUTMCeuLmAfanEJ# z;AuV^%E`Prz@sHoVUY`9ZiR~|J7jT`{E66}e?5)g7mhW?g+XYKq3X_1OKZC`KY7^2 zId56bosdrwR4=#|kGJi*{urueSwN=Frw6IYjlrHMNU!7SF=_th_NJ^B{X_QwVSeoO znI?Blcf^L+w(-XvHW@MA%b|8t0*SJq(DJxq5Jb*mJ5}!kQ8OuUh(O@cl2z3f*DSP^) zt@%%_ASyiE>rU0mLjq~WWEvEi=NetM%X>f1V(n~E+WsWjLUj;t}7v1p2~WBxgAHPl;4gM|I3luls8W9hDF$YjIW}iI{hZ_Jk%V;iGI|m*TG5e{4on3Rf zq+C{8&|#|`BO%k6wRb#VQz8AOzo!J{Six`gwO(juKR``}YjSq`v$~GKbvEK=c35(9 z)Z5H&zA<38?K;SfW?jYF9nk!F)9)A({~~#}Y0X}B%Q87Tkr*hHlc929xUW?L)8~s$ zM9g3BDA6euHL)$(UnN4C&-30N2D9si^gy6FTl49zSB~wet`~eO_0&Kb;eiHlj)~0KK90jD4H+VANYtIh2g#>*e-ng)UK#rY*wm1te!9| zBPkMQVZSa?(>;T|PBPkEhoDFmV!4l2l8OtAD}Jg?<;#^}3zb|*MeCuQ&&^vZh2vmZ z+KxaW|DPy_V3u5sLrtwO`7pH9PV-e}lqO`tS0vl@BH-$)PzP>W=$g~z>|ve8kWLF- zn2V*WA3uu^ql3?j6o5lK0EcFq%T*TN%g4mtQ(Q|<37|AQKOA&MwSGzonfP*5D{0SL zv8id7tvOzH=w&Cj|M^f-8z}DQyvK@I29m=bM`saM55v4j#d~b2wvuup^XY%e;Lpn| zF`UB3C><}l>%F8fH=vkpHh$F8-cA|4Asy!AEI1a+|LMig{vLP~bl?b^~BbTlCR z91ApSedsscCM7b8k_odjAH(X8C;eSNJ#4k-AOJWDXdxdi2uw$5eCt(Eg#C0mZ|=f? zgbcN0`zLco4wMkjv$aP7C#UDeAVF%j|81Q9w{iOaYMlQ6{K(*vzD{;*Ugdi>+n;ZA)E{drS1Vda{x8o8FX;dP literal 0 HcmV?d00001 diff --git a/example_images/concave_convex.png b/example_images/concave_convex.png new file mode 100644 index 0000000000000000000000000000000000000000..e532a005c2a3a232a1d7c1c8f47fc4e47ae9b0a6 GIT binary patch literal 27312 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 KZhpRD6ZJo%z9i!S literal 0 HcmV?d00001 diff --git a/example_images/deep.png b/example_images/deep.png new file mode 100644 index 0000000000000000000000000000000000000000..acff1670832172a2aab3072b673b6e4b2b07cb18 GIT binary patch literal 25139 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 F{vUMrBC7xZ literal 0 HcmV?d00001 diff --git a/example_images/simple.png b/example_images/simple.png new file mode 100644 index 0000000000000000000000000000000000000000..358482668089b153bd0a3b6d8bb982c9678b6f1c GIT binary patch literal 11927 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 literal 0 HcmV?d00001 diff --git a/example_images/simple_child.png b/example_images/simple_child.png new file mode 100644 index 0000000000000000000000000000000000000000..b0ad17eec7094470db5842b7857cc8c91014f8f1 GIT binary patch literal 16018 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%0DuOqWo(;QVD#jeWLu6npi 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 literal 0 HcmV?d00001 diff --git a/example_images/weird.png b/example_images/weird.png new file mode 100644 index 0000000000000000000000000000000000000000..db298e9b5281f14a741ce9672f6384c1c85654fb GIT binary patch literal 14172 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 WPu@>KSB?MNBg?&3ma3323H~2v(KAy3 literal 0 HcmV?d00001 diff --git a/lib/clay_containers.dart b/lib/clay_containers.dart new file mode 100644 index 0000000..a03ae5e --- /dev/null +++ b/lib/clay_containers.dart @@ -0,0 +1,115 @@ +library neumorphic_containers; + +import 'package:flutter/material.dart'; + +class ClayContainer extends StatelessWidget { + final double height; + final double width; + final Color color; + final double spread; + final Widget child; + final double borderRadius; + final BorderRadius customBorderRadius; + final CurveType curveType; + final int depth; + + ClayContainer( + {this.child, this.height, this.width, @required this.color, this.spread, this.borderRadius, this.customBorderRadius, this.curveType, this.depth}); + + Color _getAdjustColor(Color baseColor, amount) { + Map colors = { + "red": baseColor.red, "green": baseColor.green, "blue": baseColor.blue + }; + colors = colors.map((key, value) { + int result = 0; + if (value + amount < 0) return MapEntry(key, 0); + if (value + amount > 255) return MapEntry(key, 255); + return MapEntry(key, value + amount); + }); + return Color.fromRGBO(colors["red"], colors["green"], colors["blue"], 1); + } + + List _getFlatGradients(baseColor, depth) { + return [ + baseColor, + baseColor, + ]; + } + + List _getConcaveGradients(baseColor, depth) { + return [ + _getAdjustColor(baseColor, 0 - depth), + _getAdjustColor(baseColor, depth), + ]; + } + + List _getConvexGradients(baseColor, depth) { + return [ + _getAdjustColor(baseColor, depth), + _getAdjustColor(baseColor, 0 - depth), + ]; + } + + @override + Widget build(BuildContext context) { + final double heightValue = height == null ? null : height; + final double widthValue = width == null ? null : width; + final int depthValue = depth == null ? 20 : depth; + final Color colorValue = color; + final double spreadValue = spread == null ? 6 : spread; + BorderRadius borderRadiusValue = borderRadius == null + ? BorderRadius.zero + : BorderRadius.circular(borderRadius); + + if (customBorderRadius != null) { + borderRadiusValue = customBorderRadius; + } + final CurveType curveTypeValue = curveType == null + ? CurveType.none + : curveType; + + List gradientColors; + switch (curveTypeValue) { + case CurveType.concave: + gradientColors = _getConcaveGradients(colorValue, depthValue); + break; + case CurveType.convex: + gradientColors = _getConvexGradients(colorValue, depthValue); + break; + case CurveType.none: + gradientColors = _getFlatGradients(colorValue, depthValue); + break; + } + + + return Container( + height: heightValue, + width: widthValue, + child: child, + decoration: BoxDecoration( + borderRadius: borderRadiusValue, + color: colorValue, + gradient: LinearGradient( + begin: Alignment.topLeft, + end: Alignment.bottomRight, + colors: gradientColors), + boxShadow: [ + BoxShadow( + color: _getAdjustColor(colorValue, depthValue), + offset: Offset(0 - spreadValue, 0 - spreadValue), + blurRadius: spreadValue), + BoxShadow( + color: _getAdjustColor(colorValue, 0 - depthValue), + offset: Offset(spreadValue, spreadValue), + blurRadius: spreadValue) + ] + ), + ); + } +} + +enum CurveType { + concave, + convex, + none +} \ No newline at end of file diff --git a/pubspec.lock b/pubspec.lock new file mode 100644 index 0000000..67a7df1 --- /dev/null +++ b/pubspec.lock @@ -0,0 +1,188 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + archive: + dependency: transitive + description: + name: archive + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.11" + args: + dependency: transitive + description: + name: args + url: "https://pub.dartlang.org" + source: hosted + version: "1.5.2" + async: + dependency: transitive + description: + name: async + url: "https://pub.dartlang.org" + source: hosted + version: "2.4.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.5" + charcode: + dependency: transitive + description: + name: charcode + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.2" + collection: + dependency: transitive + description: + name: collection + url: "https://pub.dartlang.org" + source: hosted + version: "1.14.11" + convert: + dependency: transitive + description: + name: convert + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.1" + crypto: + dependency: transitive + description: + name: crypto + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.3" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + image: + dependency: transitive + description: + name: image + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.4" + matcher: + dependency: transitive + description: + name: matcher + url: "https://pub.dartlang.org" + source: hosted + version: "0.12.6" + meta: + dependency: transitive + description: + name: meta + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.8" + path: + dependency: transitive + description: + name: path + url: "https://pub.dartlang.org" + source: hosted + version: "1.6.4" + pedantic: + dependency: transitive + description: + name: pedantic + url: "https://pub.dartlang.org" + source: hosted + version: "1.8.0+1" + petitparser: + dependency: transitive + description: + name: petitparser + url: "https://pub.dartlang.org" + source: hosted + version: "2.4.0" + quiver: + dependency: transitive + description: + name: quiver + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.5" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.99" + source_span: + dependency: transitive + description: + name: source_span + url: "https://pub.dartlang.org" + source: hosted + version: "1.5.5" + stack_trace: + dependency: transitive + description: + name: stack_trace + url: "https://pub.dartlang.org" + source: hosted + version: "1.9.3" + stream_channel: + dependency: transitive + description: + name: stream_channel + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.0" + string_scanner: + dependency: transitive + description: + name: string_scanner + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.5" + term_glyph: + dependency: transitive + description: + name: term_glyph + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.0" + test_api: + dependency: transitive + description: + name: test_api + url: "https://pub.dartlang.org" + source: hosted + version: "0.2.11" + typed_data: + dependency: transitive + description: + name: typed_data + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.6" + vector_math: + dependency: transitive + description: + name: vector_math + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.8" + xml: + dependency: transitive + description: + name: xml + url: "https://pub.dartlang.org" + source: hosted + version: "3.5.0" +sdks: + dart: ">=2.4.0 <3.0.0" diff --git a/pubspec.yaml b/pubspec.yaml new file mode 100644 index 0000000..b9de129 --- /dev/null +++ b/pubspec.yaml @@ -0,0 +1,17 @@ +name: clay_containers +description: Easily create custom neumorphic container widgets for your own unique design. +version: 0.1.1 +author: Michael Charles Aubrey +homepage: https://michaelcharl.es + +environment: + sdk: ">=2.1.0 <3.0.0" + +dependencies: + flutter: + sdk: flutter + +dev_dependencies: + flutter_test: + sdk: flutter +flutter: \ No newline at end of file diff --git a/test/clay_containers.dart b/test/clay_containers.dart new file mode 100644 index 0000000..8556c97 --- /dev/null +++ b/test/clay_containers.dart @@ -0,0 +1,14 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_test/flutter_test.dart'; +import 'package:neumorphic_containers/clay_containers.dart'; + +void main() { + testWidgets('ClayContainer can have a child.', (WidgetTester tester) async { + await tester.pumpWidget( + ClayContainer( + color: Colors.grey, + child: Container(), + ), + ); + }); +}