Skip to content

Commit

Permalink
Merge pull request #16 from nguyenyou/feat/md
Browse files Browse the repository at this point in the history
Feat/md
  • Loading branch information
nguyenyou authored May 26, 2024
2 parents e2a9422 + 3364050 commit e71405e
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 0 deletions.
5 changes: 5 additions & 0 deletions .changeset/light-starfishes-shake.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"scalawind": patch
---

md modifier
9 changes: 9 additions & 0 deletions packages/scalawind/src/templates/scalawind.hbs
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,11 @@ case class SwStyle(style: String = "") {
addClasses(hoverClasses)
}

def md(mdStyle: SwStyle): SwStyle = {
val mdClasses = mdStyle.style.split("\\s+").map(cls => s"md:$cls").mkString(" ")
addClasses(mdClasses)
}

override def toString: String = style
}

Expand All @@ -45,6 +50,7 @@ object tw {
def text_black: SwStyle = SwStyle().addClass(cls.text_black)

def hover(hoverStyle: SwStyle): SwStyle = SwStyle().hover(hoverStyle)
def md(mdStyle: SwStyle): SwStyle = SwStyle().md(mdStyle)
}

inline def sw(inline styles: SwStyle): String =
Expand All @@ -57,6 +63,9 @@ private def swImpl(stylesExpr: Expr[SwStyle])(using Quotes): Expr[String] = {
case Apply(Select(inner, "hover"), List(hoverStyle)) =>
val hoverClasses = extractClassNames(hoverStyle).map(cls => s"hover:$cls")
extractClassNames(inner) ++ hoverClasses
case Apply(Select(inner, "md"), List(mdStyle)) =>
val mdClasses = extractClassNames(mdStyle).map(cls => s"md:$cls")
extractClassNames(inner) ++ mdClasses
case Apply(Ident(name), List(inner)) =>
extractClassNames(inner) :+ name.replace("_", "-")
case Inlined(_, _, inner) =>
Expand Down

0 comments on commit e71405e

Please sign in to comment.