diff --git a/CHANGELOG.md b/CHANGELOG.md index 5ca04e4..b3cfac8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,14 @@ +# 0.14.0 + +**Changes** +- Implement Sidebar component +- Introduce `as_child` tag to merge multiple `SaladUI` tag +- Introduce `dynamic` tag which allow dynamic rendering a tag. + +**Breaking changes** +- Replace `tails` by `tw_merge` which extracted from `turboprop`. You have to add `TwMerge.Cache` to children list in your `application.ex` +- `Collapsible` component doesn't use builder anymore. + # 0.9.0 - ashkan117: fix: Explicitly include the attributes to avoid lsp warning diff --git a/README.md b/README.md index 194b00f..5df299b 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ ```elixir def deps do [ - {:salad_ui, "~> 0.13.0"}, + {:salad_ui, "~> 0.14.0"}, ] end diff --git a/lib/salad_ui/collapsible.ex b/lib/salad_ui/collapsible.ex index 3169496..ef5b6c3 100644 --- a/lib/salad_ui/collapsible.ex +++ b/lib/salad_ui/collapsible.ex @@ -53,7 +53,6 @@ defmodule SaladUI.Collapsible do attr :rest, :global slot(:inner_block, required: true) - def collapsible_trigger(assigns) do ~H""" <.dynamic diff --git a/lib/salad_ui/popover.ex b/lib/salad_ui/popover.ex index db8e9c9..7695123 100644 --- a/lib/salad_ui/popover.ex +++ b/lib/salad_ui/popover.ex @@ -71,7 +71,10 @@ defmodule SaladUI.Popover do @doc """ Render popover content """ - attr :id, :string, required: true, doc: "The id of target element to show popover, this must be the same as the target in popover_trigger" + attr :id, :string, + required: true, + doc: "The id of target element to show popover, this must be the same as the target in popover_trigger" + attr :class, :string, default: nil attr :side, :string, values: ~w(bottom left right top), default: "top" attr :align, :string, values: ["start", "center", "end"], default: "center" diff --git a/lib/salad_ui/sidebar.ex b/lib/salad_ui/sidebar.ex index 712ba22..d034dec 100644 --- a/lib/salad_ui/sidebar.ex +++ b/lib/salad_ui/sidebar.ex @@ -330,7 +330,7 @@ defmodule SaladUI.Sidebar do data-sidebar="content" class={ classes([ - "salad-scroll-area", + "salad-scroll-area", "flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden", @class ]) diff --git a/mix.exs b/mix.exs index ffe4ee2..acf4b8a 100644 --- a/mix.exs +++ b/mix.exs @@ -4,7 +4,7 @@ defmodule SaladUI.MixProject do def project do [ app: :salad_ui, - version: "0.13.1", + version: "0.14.0", elixir: "~> 1.14", elixirc_paths: elixirc_paths(Mix.env()), start_permanent: Mix.env() == :prod, diff --git a/test/salad_ui/collapsible_test.exs b/test/salad_ui/collapsible_test.exs index ee578fe..150239f 100644 --- a/test/salad_ui/collapsible_test.exs +++ b/test/salad_ui/collapsible_test.exs @@ -57,9 +57,7 @@ defmodule SaladUI.CollapsibleTest do html = rendered_to_string(~H""" - <.collapsible_trigger - class="custom-trigger-class" - > + <.collapsible_trigger class="custom-trigger-class"> Click me """) diff --git a/test/salad_ui/sidebar_test.exs b/test/salad_ui/sidebar_test.exs index 9787eb9..ab5e411 100644 --- a/test/salad_ui/sidebar_test.exs +++ b/test/salad_ui/sidebar_test.exs @@ -74,13 +74,7 @@ defmodule SaladUI.SidebarTest do html = ~H""" - <.sidebar - id="test-sidebar" - side="left" - variant="sidebar" - collapsible="offcanvas" - state="expanded" - > + <.sidebar id="test-sidebar" side="left" variant="sidebar" collapsible="offcanvas" state="expanded"> Content """