defmodule PlausibleWeb.Live.Components.PrimaModal do @moduledoc false use PlausibleWeb, :component alias Prima.Modal attr :id, :string, required: true attr :use_portal?, :boolean, default: Mix.env() not in [:test, :ce_test] slot :inner_block, required: true def modal(assigns) do ~H"""
"-panel"} class="relative overflow-hidden rounded-lg bg-white dark:bg-gray-900 text-left shadow-xl sm:w-full sm:max-w-lg" transition_enter={ {"ease-out duration-300", "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95", "opacity-100 translate-y-0 sm:scale-100"} } transition_leave={ {"ease-in duration-200", "opacity-100 translate-y-0 sm:scale-100", "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95"} } > {render_slot(@inner_block)}
""" end slot :inner_block, required: true def modal_title(assigns) do ~H""" {render_slot(@inner_block)} """ end end