add basic rendering for option types
Some checks are pending
ci/woodpecker/push/build-amd64 Pipeline is pending
ci/woodpecker/push/build-arm64 Pipeline is pending
ci/woodpecker/push/docs Pipeline is pending
ci/woodpecker/push/lint Pipeline is pending
ci/woodpecker/push/test/1 Pipeline is pending
ci/woodpecker/push/test/2 Pipeline is pending
ci/woodpecker/push/test/3 Pipeline is pending
ci/woodpecker/push/test/4 Pipeline is pending
ci/woodpecker/pr/build-amd64 Pipeline is pending
ci/woodpecker/pr/build-arm64 Pipeline is pending
ci/woodpecker/pr/docs Pipeline is pending
ci/woodpecker/pr/lint Pipeline is pending
ci/woodpecker/pr/test/1 Pipeline is pending
ci/woodpecker/pr/test/2 Pipeline is pending
ci/woodpecker/pr/test/3 Pipeline is pending
ci/woodpecker/pr/test/4 Pipeline is pending
Some checks are pending
ci/woodpecker/push/build-amd64 Pipeline is pending
ci/woodpecker/push/build-arm64 Pipeline is pending
ci/woodpecker/push/docs Pipeline is pending
ci/woodpecker/push/lint Pipeline is pending
ci/woodpecker/push/test/1 Pipeline is pending
ci/woodpecker/push/test/2 Pipeline is pending
ci/woodpecker/push/test/3 Pipeline is pending
ci/woodpecker/push/test/4 Pipeline is pending
ci/woodpecker/pr/build-amd64 Pipeline is pending
ci/woodpecker/pr/build-arm64 Pipeline is pending
ci/woodpecker/pr/docs Pipeline is pending
ci/woodpecker/pr/lint Pipeline is pending
ci/woodpecker/pr/test/1 Pipeline is pending
ci/woodpecker/pr/test/2 Pipeline is pending
ci/woodpecker/pr/test/3 Pipeline is pending
ci/woodpecker/pr/test/4 Pipeline is pending
This commit is contained in:
parent
0361f9c3a5
commit
941fd0f064
5 changed files with 108 additions and 485 deletions
|
@ -2525,6 +2525,7 @@
|
|||
group: :pleroma,
|
||||
key: :emoji,
|
||||
type: :group,
|
||||
description: "Configuration options related to emoji",
|
||||
children: [
|
||||
%{
|
||||
key: :shortcode_globs,
|
||||
|
@ -2561,7 +2562,7 @@
|
|||
key: :shared_pack_cache_seconds_per_file,
|
||||
label: "Shared pack cache s/file",
|
||||
type: :integer,
|
||||
descpiption:
|
||||
description:
|
||||
"When an emoji pack is shared, the archive is created and cached in memory" <>
|
||||
" for this amount of seconds multiplied by the number of files.",
|
||||
suggestions: [60]
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
defmodule Pleroma.Web.AdminControl.AdminControlController do
|
||||
use Pleroma.Web, :controller
|
||||
|
||||
@descriptions Pleroma.Docs.JSON.compiled_descriptions()
|
||||
|
||||
|
||||
plug(:put_root_layout, {Pleroma.Web.AdminControl.AdminControlView, :layout})
|
||||
plug(:put_layout, false)
|
||||
|
@ -9,8 +9,9 @@ defmodule Pleroma.Web.AdminControl.AdminControlController do
|
|||
defp label_for(%{label: label}), do: label
|
||||
defp label_for(_), do: "Unknown"
|
||||
|
||||
defp descriptions, do: Pleroma.Docs.JSON.compiled_descriptions()
|
||||
def config_headings do
|
||||
@descriptions
|
||||
descriptions()
|
||||
|> Enum.map(&label_for(&1))
|
||||
|> Enum.sort()
|
||||
end
|
||||
|
@ -19,7 +20,7 @@ def config_values(%{"heading" => heading}) do
|
|||
IO.inspect(heading)
|
||||
|
||||
possible_values =
|
||||
@descriptions
|
||||
descriptions()
|
||||
|> Enum.filter(fn section -> label_for(section) == heading end)
|
||||
|
||||
possible_values
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
defmodule Pleroma.Web.AdminControl.AdminControlView do
|
||||
use Pleroma.Web, :html
|
||||
require Logger
|
||||
|
||||
embed_templates "admin_control_html/*"
|
||||
|
||||
|
@ -29,33 +30,65 @@ def config_value(%{config_value: %{type: :group} = value} = assigns) do
|
|||
"""
|
||||
end
|
||||
|
||||
def config_value(%{config_value: %{type: :integer} = value} = assigns) do
|
||||
def config_value(%{config_value: %{type: :integer, key: key} = value} = assigns) do
|
||||
value = value_of(assigns)
|
||||
assigns = assign(assigns, value: value)
|
||||
assigns = assign(assigns, value: value, key: key)
|
||||
|
||||
~H"""
|
||||
<div class="config-group">
|
||||
<h3 class="config-group-title"><%= @config_value.label %></h3>
|
||||
<p class="ml-2"><%= @config_value.description %></p>
|
||||
<input type="number" value={@value} class="form-input text-black rounded" />
|
||||
<div>
|
||||
<label for={@key} class="block text-sm font-medium leading-6 text-white"><%= @config_value.label %></label>
|
||||
<div class="mt-2">
|
||||
<input type="number" name={@key} id={@key} value={@value} class="block w-full rounded-md border-0 bg-white/5 py-1.5 text-white shadow-sm ring-1 ring-inset ring-white/10 focus:ring-2 focus:ring-inset focus:ring-indigo-500 sm:text-sm sm:leading-6">
|
||||
</div>
|
||||
<p class="mt-2 text-sm text-gray-500"><%= @config_value.description %></p>
|
||||
</div>
|
||||
"""
|
||||
end
|
||||
|
||||
|
||||
def config_value(%{config_value: %{type: :boolean} = value} = assigns) do
|
||||
def config_value(%{config_value: %{type: :string, key: key} = value} = assigns) do
|
||||
value = value_of(assigns)
|
||||
assigns = assign(assigns, value: value, key: key)
|
||||
~H"""
|
||||
<div>
|
||||
<label for={@key} class="block text-sm font-medium leading-6 text-white"><%= @config_value.label %></label>
|
||||
<div class="mt-2">
|
||||
<input type="text" name={@key} id={@key} value={@value} class="block w-full rounded-md border-0 bg-white/5 py-1.5 text-white shadow-sm ring-1 ring-inset ring-white/10 focus:ring-2 focus:ring-inset focus:ring-indigo-500 sm:text-sm sm:leading-6">
|
||||
</div>
|
||||
<p class="mt-2 text-sm text-gray-500"><%= @config_value.description %></p>
|
||||
</div>
|
||||
"""
|
||||
end
|
||||
|
||||
def config_value(%{config_value: %{type: :boolean, key: key} = value} = assigns) do
|
||||
value = value_of(assigns) == "true"
|
||||
assigns = assign(assigns, value: value, key: key)
|
||||
~H"""
|
||||
<div>
|
||||
<label for={@key} class="block text-sm font-medium leading-6 text-white"><%= @config_value.label %></label>
|
||||
|
||||
<div class="mt-2">
|
||||
|
||||
<p class="mt-2 text-sm text-gray-500"><input type="checkbox" name={@key} id={@key} checked={@value} class="rounded-md px-2"> <%= @config_value.description %></p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
"""
|
||||
end
|
||||
def config_value(%{config_value: %{type: {:list, :string}} = value} = assigns) do
|
||||
value = value_of(assigns)
|
||||
assigns = assign(assigns, value: value)
|
||||
~H"""
|
||||
<div class="config-group">
|
||||
<h3 class="config-group-title"><%= @config_value.label %></h3>
|
||||
<span class="ml-2"><%= @config_value.description %></span>
|
||||
<input type="checkbox" checked={@value} class="form-input" />
|
||||
<%= @value %>
|
||||
</div>
|
||||
"""
|
||||
end
|
||||
|
||||
def config_value(assigns) do
|
||||
Logger.info("Cannot render config!")
|
||||
IO.inspect(assigns)
|
||||
~H"""
|
||||
Cannot render
|
||||
|
|
|
@ -1,269 +1,6 @@
|
|||
<div>
|
||||
<!-- Off-canvas menu for mobile, show/hide based on off-canvas menu state. -->
|
||||
<div class="relative z-50 xl:hidden" role="dialog" aria-modal="true">
|
||||
<!--
|
||||
Off-canvas menu backdrop, show/hide based on off-canvas menu state.
|
||||
|
||||
Entering: "transition-opacity ease-linear duration-300"
|
||||
From: "opacity-0"
|
||||
To: "opacity-100"
|
||||
Leaving: "transition-opacity ease-linear duration-300"
|
||||
From: "opacity-100"
|
||||
To: "opacity-0"
|
||||
-->
|
||||
<div class="fixed inset-0 bg-gray-900/80"></div>
|
||||
|
||||
<div class="fixed inset-0 flex">
|
||||
<!--
|
||||
Off-canvas menu, show/hide based on off-canvas menu state.
|
||||
|
||||
Entering: "transition ease-in-out duration-300 transform"
|
||||
From: "-translate-x-full"
|
||||
To: "translate-x-0"
|
||||
Leaving: "transition ease-in-out duration-300 transform"
|
||||
From: "translate-x-0"
|
||||
To: "-translate-x-full"
|
||||
-->
|
||||
<div class="relative mr-16 flex w-full max-w-xs flex-1">
|
||||
<!--
|
||||
Close button, show/hide based on off-canvas menu state.
|
||||
|
||||
Entering: "ease-in-out duration-300"
|
||||
From: "opacity-0"
|
||||
To: "opacity-100"
|
||||
Leaving: "ease-in-out duration-300"
|
||||
From: "opacity-100"
|
||||
To: "opacity-0"
|
||||
-->
|
||||
<div class="absolute left-full top-0 flex w-16 justify-center pt-5">
|
||||
<button type="button" class="-m-2.5 p-2.5">
|
||||
<span class="sr-only">Close sidebar</span>
|
||||
<svg
|
||||
class="h-6 w-6 text-white"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="1.5"
|
||||
stroke="currentColor"
|
||||
aria-hidden="true"
|
||||
>
|
||||
<path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
<!-- Sidebar component, swap this element with another sidebar if you like -->
|
||||
<div class="flex grow flex-col gap-y-5 overflow-y-auto bg-gray-900 px-6 ring-1 ring-white/10">
|
||||
<div class="flex h-16 shrink-0 items-center">
|
||||
<img
|
||||
class="h-8 w-auto"
|
||||
src="https://tailwindui.com/img/logos/mark.svg?color=indigo&shade=500"
|
||||
alt="Your Company"
|
||||
/>
|
||||
</div>
|
||||
<nav class="flex flex-1 flex-col">
|
||||
<ul role="list" class="flex flex-1 flex-col gap-y-7">
|
||||
<li>
|
||||
<ul role="list" class="-mx-2 space-y-1">
|
||||
<li>
|
||||
<!-- Current: "bg-gray-800 text-white", Default: "text-gray-400 hover:text-white hover:bg-gray-800" -->
|
||||
<a
|
||||
href="#"
|
||||
class="text-gray-400 hover:text-white hover:bg-gray-800 group flex gap-x-3 rounded-md p-2 text-sm leading-6 font-semibold"
|
||||
>
|
||||
<svg
|
||||
class="h-6 w-6 shrink-0"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="1.5"
|
||||
stroke="currentColor"
|
||||
aria-hidden="true"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="M2.25 12.75V12A2.25 2.25 0 014.5 9.75h15A2.25 2.25 0 0121.75 12v.75m-8.69-6.44l-2.12-2.12a1.5 1.5 0 00-1.061-.44H4.5A2.25 2.25 0 002.25 6v12a2.25 2.25 0 002.25 2.25h15A2.25 2.25 0 0021.75 18V9a2.25 2.25 0 00-2.25-2.25h-5.379a1.5 1.5 0 01-1.06-.44z"
|
||||
/>
|
||||
</svg>
|
||||
Projects
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="#"
|
||||
class="bg-gray-800 text-white group flex gap-x-3 rounded-md p-2 text-sm leading-6 font-semibold"
|
||||
>
|
||||
<svg
|
||||
class="h-6 w-6 shrink-0"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="1.5"
|
||||
stroke="currentColor"
|
||||
aria-hidden="true"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="M21.75 17.25v-.228a4.5 4.5 0 00-.12-1.03l-2.268-9.64a3.375 3.375 0 00-3.285-2.602H7.923a3.375 3.375 0 00-3.285 2.602l-2.268 9.64a4.5 4.5 0 00-.12 1.03v.228m19.5 0a3 3 0 01-3 3H5.25a3 3 0 01-3-3m19.5 0a3 3 0 00-3-3H5.25a3 3 0 00-3 3m16.5 0h.008v.008h-.008v-.008zm-3 0h.008v.008h-.008v-.008z"
|
||||
/>
|
||||
</svg>
|
||||
Deployments
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="#"
|
||||
class="text-gray-400 hover:text-white hover:bg-gray-800 group flex gap-x-3 rounded-md p-2 text-sm leading-6 font-semibold"
|
||||
>
|
||||
<svg
|
||||
class="h-6 w-6 shrink-0"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="1.5"
|
||||
stroke="currentColor"
|
||||
aria-hidden="true"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="M9.348 14.651a3.75 3.75 0 010-5.303m5.304 0a3.75 3.75 0 010 5.303m-7.425 2.122a6.75 6.75 0 010-9.546m9.546 0a6.75 6.75 0 010 9.546M5.106 18.894c-3.808-3.808-3.808-9.98 0-13.789m13.788 0c3.808 3.808 3.808 9.981 0 13.79M12 12h.008v.007H12V12zm.375 0a.375.375 0 11-.75 0 .375.375 0 01.75 0z"
|
||||
/>
|
||||
</svg>
|
||||
Activity
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="#"
|
||||
class="text-gray-400 hover:text-white hover:bg-gray-800 group flex gap-x-3 rounded-md p-2 text-sm leading-6 font-semibold"
|
||||
>
|
||||
<svg
|
||||
class="h-6 w-6 shrink-0"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="1.5"
|
||||
stroke="currentColor"
|
||||
aria-hidden="true"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="M12 21a9.004 9.004 0 008.716-6.747M12 21a9.004 9.004 0 01-8.716-6.747M12 21c2.485 0 4.5-4.03 4.5-9S14.485 3 12 3m0 18c-2.485 0-4.5-4.03-4.5-9S9.515 3 12 3m0 0a8.997 8.997 0 017.843 4.582M12 3a8.997 8.997 0 00-7.843 4.582m15.686 0A11.953 11.953 0 0112 10.5c-2.998 0-5.74-1.1-7.843-2.918m15.686 0A8.959 8.959 0 0121 12c0 .778-.099 1.533-.284 2.253m0 0A17.919 17.919 0 0112 16.5c-3.162 0-6.133-.815-8.716-2.247m0 0A9.015 9.015 0 013 12c0-1.605.42-3.113 1.157-4.418"
|
||||
/>
|
||||
</svg>
|
||||
Domains
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="#"
|
||||
class="text-gray-400 hover:text-white hover:bg-gray-800 group flex gap-x-3 rounded-md p-2 text-sm leading-6 font-semibold"
|
||||
>
|
||||
<svg
|
||||
class="h-6 w-6 shrink-0"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="1.5"
|
||||
stroke="currentColor"
|
||||
aria-hidden="true"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="M7.5 14.25v2.25m3-4.5v4.5m3-6.75v6.75m3-9v9M6 20.25h12A2.25 2.25 0 0020.25 18V6A2.25 2.25 0 0018 3.75H6A2.25 2.25 0 003.75 6v12A2.25 2.25 0 006 20.25z"
|
||||
/>
|
||||
</svg>
|
||||
Usage
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="#"
|
||||
class="text-gray-400 hover:text-white hover:bg-gray-800 group flex gap-x-3 rounded-md p-2 text-sm leading-6 font-semibold"
|
||||
>
|
||||
<svg
|
||||
class="h-6 w-6 shrink-0"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="1.5"
|
||||
stroke="currentColor"
|
||||
aria-hidden="true"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="M9.594 3.94c.09-.542.56-.94 1.11-.94h2.593c.55 0 1.02.398 1.11.94l.213 1.281c.063.374.313.686.645.87.074.04.147.083.22.127.324.196.72.257 1.075.124l1.217-.456a1.125 1.125 0 011.37.49l1.296 2.247a1.125 1.125 0 01-.26 1.431l-1.003.827c-.293.24-.438.613-.431.992a6.759 6.759 0 010 .255c-.007.378.138.75.43.99l1.005.828c.424.35.534.954.26 1.43l-1.298 2.247a1.125 1.125 0 01-1.369.491l-1.217-.456c-.355-.133-.75-.072-1.076.124a6.57 6.57 0 01-.22.128c-.331.183-.581.495-.644.869l-.213 1.28c-.09.543-.56.941-1.11.941h-2.594c-.55 0-1.02-.398-1.11-.94l-.213-1.281c-.062-.374-.312-.686-.644-.87a6.52 6.52 0 01-.22-.127c-.325-.196-.72-.257-1.076-.124l-1.217.456a1.125 1.125 0 01-1.369-.49l-1.297-2.247a1.125 1.125 0 01.26-1.431l1.004-.827c.292-.24.437-.613.43-.992a6.932 6.932 0 010-.255c.007-.378-.138-.75-.43-.99l-1.004-.828a1.125 1.125 0 01-.26-1.43l1.297-2.247a1.125 1.125 0 011.37-.491l1.216.456c.356.133.751.072 1.076-.124.072-.044.146-.087.22-.128.332-.183.582-.495.644-.869l.214-1.281z"
|
||||
/>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="M15 12a3 3 0 11-6 0 3 3 0 016 0z"
|
||||
/>
|
||||
</svg>
|
||||
Settings
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<div class="text-xs font-semibold leading-6 text-gray-400">Your teams</div>
|
||||
<ul role="list" class="-mx-2 mt-2 space-y-1">
|
||||
<li>
|
||||
<!-- Current: "bg-gray-800 text-white", Default: "text-gray-400 hover:text-white hover:bg-gray-800" -->
|
||||
<a
|
||||
href="#"
|
||||
class="text-gray-400 hover:text-white hover:bg-gray-800 group flex gap-x-3 rounded-md p-2 text-sm leading-6 font-semibold"
|
||||
>
|
||||
<span class="flex h-6 w-6 shrink-0 items-center justify-center rounded-lg border border-gray-700 bg-gray-800 text-[0.625rem] font-medium text-gray-400 group-hover:text-white">
|
||||
P
|
||||
</span>
|
||||
<span class="truncate">Planetaria</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="#"
|
||||
class="text-gray-400 hover:text-white hover:bg-gray-800 group flex gap-x-3 rounded-md p-2 text-sm leading-6 font-semibold"
|
||||
>
|
||||
<span class="flex h-6 w-6 shrink-0 items-center justify-center rounded-lg border border-gray-700 bg-gray-800 text-[0.625rem] font-medium text-gray-400 group-hover:text-white">
|
||||
P
|
||||
</span>
|
||||
<span class="truncate">Protocol</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="#"
|
||||
class="text-gray-400 hover:text-white hover:bg-gray-800 group flex gap-x-3 rounded-md p-2 text-sm leading-6 font-semibold"
|
||||
>
|
||||
<span class="flex h-6 w-6 shrink-0 items-center justify-center rounded-lg border border-gray-700 bg-gray-800 text-[0.625rem] font-medium text-gray-400 group-hover:text-white">
|
||||
T
|
||||
</span>
|
||||
<span class="truncate">Tailwind Labs</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="-mx-6 mt-auto">
|
||||
<a
|
||||
href="#"
|
||||
class="flex items-center gap-x-4 px-6 py-3 text-sm font-semibold leading-6 text-white hover:bg-gray-800"
|
||||
>
|
||||
<img
|
||||
class="h-8 w-8 rounded-full bg-gray-800"
|
||||
src="https://images.unsplash.com/photo-1472099645785-5658abf4ff4e?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=facearea&facepad=2&w=256&h=256&q=80"
|
||||
alt=""
|
||||
/>
|
||||
<span class="sr-only">Your profile</span>
|
||||
<span aria-hidden="true">Tom Cook</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Static sidebar for desktop -->
|
||||
<div class="hidden xl:fixed xl:inset-y-0 xl:z-50 xl:flex xl:w-72 xl:flex-col">
|
||||
<div class="fixed inset-y-0 z-50 flex w-72 flex-col">
|
||||
<!-- Sidebar component, swap this element with another sidebar if you like -->
|
||||
<div class="flex grow flex-col gap-y-5 overflow-y-auto bg-black/10 px-6 ring-1 ring-white/5">
|
||||
<div class="flex h-16 shrink-0 items-center text-white">
|
||||
|
@ -279,8 +16,8 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div class="xl:pl-72">
|
||||
<main class="lg:pr-96">
|
||||
<div class="pl-72">
|
||||
<main>
|
||||
<header class="flex items-center justify-between border-b border-white/5 px-4 py-4 sm:px-6 sm:py-6 lg:px-8">
|
||||
<h1 class="text-base font-semibold leading-7 text-white">Things</h1>
|
||||
</header>
|
||||
|
|
|
@ -744,59 +744,6 @@ @media (min-width: 1536px) {
|
|||
}
|
||||
}
|
||||
|
||||
.form-input,.form-textarea,.form-select,.form-multiselect {
|
||||
-webkit-appearance: none;
|
||||
-moz-appearance: none;
|
||||
appearance: none;
|
||||
background-color: #fff;
|
||||
border-color: #6b7280;
|
||||
border-width: 1px;
|
||||
border-radius: 0px;
|
||||
padding-top: 0.5rem;
|
||||
padding-right: 0.75rem;
|
||||
padding-bottom: 0.5rem;
|
||||
padding-left: 0.75rem;
|
||||
font-size: 1rem;
|
||||
line-height: 1.5rem;
|
||||
--tw-shadow: 0 0 #0000;
|
||||
}
|
||||
|
||||
.form-input:focus, .form-textarea:focus, .form-select:focus, .form-multiselect:focus {
|
||||
outline: 2px solid transparent;
|
||||
outline-offset: 2px;
|
||||
--tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
|
||||
--tw-ring-offset-width: 0px;
|
||||
--tw-ring-offset-color: #fff;
|
||||
--tw-ring-color: #2563eb;
|
||||
--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
|
||||
--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
|
||||
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
|
||||
border-color: #2563eb;
|
||||
}
|
||||
|
||||
.form-input::-moz-placeholder, .form-textarea::-moz-placeholder {
|
||||
color: #6b7280;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.form-input::placeholder,.form-textarea::placeholder {
|
||||
color: #6b7280;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.form-input::-webkit-datetime-edit-fields-wrapper {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.form-input::-webkit-date-and-time-value {
|
||||
min-height: 1.5em;
|
||||
}
|
||||
|
||||
.form-input::-webkit-datetime-edit,.form-input::-webkit-datetime-edit-year-field,.form-input::-webkit-datetime-edit-month-field,.form-input::-webkit-datetime-edit-day-field,.form-input::-webkit-datetime-edit-hour-field,.form-input::-webkit-datetime-edit-minute-field,.form-input::-webkit-datetime-edit-second-field,.form-input::-webkit-datetime-edit-millisecond-field,.form-input::-webkit-datetime-edit-meridiem-field {
|
||||
padding-top: 0;
|
||||
padding-bottom: 0;
|
||||
}
|
||||
|
||||
.hero-arrow-left-solid {
|
||||
--hero-arrow-left-solid: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon"> <path fill-rule="evenodd" d="M11.03 3.97a.75.75 0 0 1 0 1.06l-6.22 6.22H21a.75.75 0 0 1 0 1.5H4.81l6.22 6.22a.75.75 0 1 1-1.06 1.06l-7.5-7.5a.75.75 0 0 1 0-1.06l7.5-7.5a.75.75 0 0 1 1.06 0Z" clip-rule="evenodd"/></svg>');
|
||||
-webkit-mask: var(--hero-arrow-left-solid);
|
||||
|
@ -911,6 +858,11 @@ .inset-0 {
|
|||
bottom: -1px;
|
||||
}
|
||||
|
||||
.inset-y-0 {
|
||||
top: 0px;
|
||||
bottom: 0px;
|
||||
}
|
||||
|
||||
.-left-4 {
|
||||
left: -1rem;
|
||||
}
|
||||
|
@ -923,10 +875,6 @@ .left-0 {
|
|||
left: 0px;
|
||||
}
|
||||
|
||||
.left-full {
|
||||
left: 100%;
|
||||
}
|
||||
|
||||
.right-0 {
|
||||
right: 0px;
|
||||
}
|
||||
|
@ -943,10 +891,6 @@ .right-5 {
|
|||
right: 1.25rem;
|
||||
}
|
||||
|
||||
.top-0 {
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.top-1 {
|
||||
top: 0.25rem;
|
||||
}
|
||||
|
@ -963,14 +907,6 @@ .z-50 {
|
|||
z-index: 50;
|
||||
}
|
||||
|
||||
.-m-2 {
|
||||
margin: -0.5rem;
|
||||
}
|
||||
|
||||
.-m-2\.5 {
|
||||
margin: -0.625rem;
|
||||
}
|
||||
|
||||
.-m-3 {
|
||||
margin: -0.75rem;
|
||||
}
|
||||
|
@ -980,11 +916,6 @@ .z-50 {
|
|||
margin-right: -0.5rem;
|
||||
}
|
||||
|
||||
.-mx-6 {
|
||||
margin-left: -1.5rem;
|
||||
margin-right: -1.5rem;
|
||||
}
|
||||
|
||||
.-my-4 {
|
||||
margin-top: -1rem;
|
||||
margin-bottom: -1rem;
|
||||
|
@ -1006,10 +937,6 @@ .ml-4 {
|
|||
margin-left: 1rem;
|
||||
}
|
||||
|
||||
.mr-16 {
|
||||
margin-right: 4rem;
|
||||
}
|
||||
|
||||
.mr-2 {
|
||||
margin-right: 0.5rem;
|
||||
}
|
||||
|
@ -1046,10 +973,6 @@ .mt-3 {
|
|||
margin-top: 0.75rem;
|
||||
}
|
||||
|
||||
.mt-auto {
|
||||
margin-top: auto;
|
||||
}
|
||||
|
||||
.block {
|
||||
display: block;
|
||||
}
|
||||
|
@ -1098,10 +1021,6 @@ .h-6 {
|
|||
height: 1.5rem;
|
||||
}
|
||||
|
||||
.h-8 {
|
||||
height: 2rem;
|
||||
}
|
||||
|
||||
.h-full {
|
||||
height: 100%;
|
||||
}
|
||||
|
@ -1122,10 +1041,6 @@ .w-14 {
|
|||
width: 3.5rem;
|
||||
}
|
||||
|
||||
.w-16 {
|
||||
width: 4rem;
|
||||
}
|
||||
|
||||
.w-3 {
|
||||
width: 0.75rem;
|
||||
}
|
||||
|
@ -1142,8 +1057,8 @@ .w-6 {
|
|||
width: 1.5rem;
|
||||
}
|
||||
|
||||
.w-8 {
|
||||
width: 2rem;
|
||||
.w-72 {
|
||||
width: 18rem;
|
||||
}
|
||||
|
||||
.w-80 {
|
||||
|
@ -1154,10 +1069,6 @@ .w-\[40rem\] {
|
|||
width: 40rem;
|
||||
}
|
||||
|
||||
.w-auto {
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.w-full {
|
||||
width: 100%;
|
||||
}
|
||||
|
@ -1166,10 +1077,6 @@ .max-w-3xl {
|
|||
max-width: 48rem;
|
||||
}
|
||||
|
||||
.max-w-xs {
|
||||
max-width: 20rem;
|
||||
}
|
||||
|
||||
.flex-1 {
|
||||
flex: 1 1 0%;
|
||||
}
|
||||
|
@ -1190,16 +1097,6 @@ .border-collapse {
|
|||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
.-translate-x-full {
|
||||
--tw-translate-x: -100%;
|
||||
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
||||
}
|
||||
|
||||
.translate-x-0 {
|
||||
--tw-translate-x: 0px;
|
||||
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
||||
}
|
||||
|
||||
.translate-y-0 {
|
||||
--tw-translate-y: 0px;
|
||||
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
||||
|
@ -1269,11 +1166,6 @@ .gap-x-3 {
|
|||
column-gap: 0.75rem;
|
||||
}
|
||||
|
||||
.gap-x-4 {
|
||||
-moz-column-gap: 1rem;
|
||||
column-gap: 1rem;
|
||||
}
|
||||
|
||||
.gap-y-5 {
|
||||
row-gap: 1.25rem;
|
||||
}
|
||||
|
@ -1331,10 +1223,6 @@ .rounded-2xl {
|
|||
border-radius: 1rem;
|
||||
}
|
||||
|
||||
.rounded-full {
|
||||
border-radius: 9999px;
|
||||
}
|
||||
|
||||
.rounded-lg {
|
||||
border-radius: 0.5rem;
|
||||
}
|
||||
|
@ -1347,6 +1235,10 @@ .border {
|
|||
border-width: 1px;
|
||||
}
|
||||
|
||||
.border-0 {
|
||||
border-width: 0px;
|
||||
}
|
||||
|
||||
.border-b {
|
||||
border-bottom-width: 1px;
|
||||
}
|
||||
|
@ -1360,11 +1252,6 @@ .border-gray-300 {
|
|||
border-color: rgb(209 213 219 / var(--tw-border-opacity));
|
||||
}
|
||||
|
||||
.border-gray-700 {
|
||||
--tw-border-opacity: 1;
|
||||
border-color: rgb(55 65 81 / var(--tw-border-opacity));
|
||||
}
|
||||
|
||||
.border-rose-400 {
|
||||
--tw-border-opacity: 1;
|
||||
border-color: rgb(251 113 133 / var(--tw-border-opacity));
|
||||
|
@ -1403,10 +1290,6 @@ .bg-gray-900 {
|
|||
background-color: rgb(17 24 39 / var(--tw-bg-opacity));
|
||||
}
|
||||
|
||||
.bg-gray-900\/80 {
|
||||
background-color: rgb(17 24 39 / 0.8);
|
||||
}
|
||||
|
||||
.bg-rose-50 {
|
||||
--tw-bg-opacity: 1;
|
||||
background-color: rgb(255 241 242 / var(--tw-bg-opacity));
|
||||
|
@ -1417,6 +1300,10 @@ .bg-white {
|
|||
background-color: rgb(255 255 255 / var(--tw-bg-opacity));
|
||||
}
|
||||
|
||||
.bg-white\/5 {
|
||||
background-color: rgb(255 255 255 / 0.05);
|
||||
}
|
||||
|
||||
.bg-zinc-50\/90 {
|
||||
background-color: rgb(250 250 250 / 0.9);
|
||||
}
|
||||
|
@ -1446,10 +1333,6 @@ .p-2 {
|
|||
padding: 0.5rem;
|
||||
}
|
||||
|
||||
.p-2\.5 {
|
||||
padding: 0.625rem;
|
||||
}
|
||||
|
||||
.p-3 {
|
||||
padding: 0.75rem;
|
||||
}
|
||||
|
@ -1458,6 +1341,11 @@ .p-4 {
|
|||
padding: 1rem;
|
||||
}
|
||||
|
||||
.px-2 {
|
||||
padding-left: 0.5rem;
|
||||
padding-right: 0.5rem;
|
||||
}
|
||||
|
||||
.px-3 {
|
||||
padding-left: 0.75rem;
|
||||
padding-right: 0.75rem;
|
||||
|
@ -1473,16 +1361,21 @@ .px-6 {
|
|||
padding-right: 1.5rem;
|
||||
}
|
||||
|
||||
.py-1 {
|
||||
padding-top: 0.25rem;
|
||||
padding-bottom: 0.25rem;
|
||||
}
|
||||
|
||||
.py-1\.5 {
|
||||
padding-top: 0.375rem;
|
||||
padding-bottom: 0.375rem;
|
||||
}
|
||||
|
||||
.py-2 {
|
||||
padding-top: 0.5rem;
|
||||
padding-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
.py-3 {
|
||||
padding-top: 0.75rem;
|
||||
padding-bottom: 0.75rem;
|
||||
}
|
||||
|
||||
.py-4 {
|
||||
padding-top: 1rem;
|
||||
padding-bottom: 1rem;
|
||||
|
@ -1492,12 +1385,12 @@ .pb-4 {
|
|||
padding-bottom: 1rem;
|
||||
}
|
||||
|
||||
.pr-6 {
|
||||
padding-right: 1.5rem;
|
||||
.pl-72 {
|
||||
padding-left: 18rem;
|
||||
}
|
||||
|
||||
.pt-5 {
|
||||
padding-top: 1.25rem;
|
||||
.pr-6 {
|
||||
padding-right: 1.5rem;
|
||||
}
|
||||
|
||||
.text-left {
|
||||
|
@ -1513,10 +1406,6 @@ .text-2xl {
|
|||
line-height: 2rem;
|
||||
}
|
||||
|
||||
.text-\[0\.625rem\] {
|
||||
font-size: 0.625rem;
|
||||
}
|
||||
|
||||
.text-base {
|
||||
font-size: 1rem;
|
||||
line-height: 1.5rem;
|
||||
|
@ -1532,11 +1421,6 @@ .text-sm {
|
|||
line-height: 1.25rem;
|
||||
}
|
||||
|
||||
.text-xs {
|
||||
font-size: 0.75rem;
|
||||
line-height: 1rem;
|
||||
}
|
||||
|
||||
.font-medium {
|
||||
font-weight: 500;
|
||||
}
|
||||
|
@ -1569,11 +1453,6 @@ .leading-8 {
|
|||
line-height: 2rem;
|
||||
}
|
||||
|
||||
.text-black {
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(0 0 0 / var(--tw-text-opacity));
|
||||
}
|
||||
|
||||
.text-emerald-800 {
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(6 95 70 / var(--tw-text-opacity));
|
||||
|
@ -1584,6 +1463,11 @@ .text-gray-400 {
|
|||
color: rgb(156 163 175 / var(--tw-text-opacity));
|
||||
}
|
||||
|
||||
.text-gray-500 {
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(107 114 128 / var(--tw-text-opacity));
|
||||
}
|
||||
|
||||
.text-rose-600 {
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(225 29 72 / var(--tw-text-opacity));
|
||||
|
@ -1678,6 +1562,10 @@ .ring-1 {
|
|||
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
|
||||
}
|
||||
|
||||
.ring-inset {
|
||||
--tw-ring-inset: inset;
|
||||
}
|
||||
|
||||
.ring-emerald-500 {
|
||||
--tw-ring-opacity: 1;
|
||||
--tw-ring-color: rgb(16 185 129 / var(--tw-ring-opacity));
|
||||
|
@ -1736,14 +1624,6 @@ .ease-in {
|
|||
transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
|
||||
}
|
||||
|
||||
.ease-in-out {
|
||||
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
||||
}
|
||||
|
||||
.ease-linear {
|
||||
transition-timing-function: linear;
|
||||
}
|
||||
|
||||
.ease-out {
|
||||
transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
|
||||
}
|
||||
|
@ -1803,6 +1683,21 @@ .focus\:ring-0:focus {
|
|||
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
|
||||
}
|
||||
|
||||
.focus\:ring-2:focus {
|
||||
--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
|
||||
--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
|
||||
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
|
||||
}
|
||||
|
||||
.focus\:ring-inset:focus {
|
||||
--tw-ring-inset: inset;
|
||||
}
|
||||
|
||||
.focus\:ring-indigo-500:focus {
|
||||
--tw-ring-opacity: 1;
|
||||
--tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity));
|
||||
}
|
||||
|
||||
.active\:text-white\/80:active {
|
||||
color: rgb(255 255 255 / 0.8);
|
||||
}
|
||||
|
@ -1812,11 +1707,6 @@ .group:hover .group-hover\:bg-zinc-50 {
|
|||
background-color: rgb(250 250 250 / var(--tw-bg-opacity));
|
||||
}
|
||||
|
||||
.group:hover .group-hover\:text-white {
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(255 255 255 / var(--tw-text-opacity));
|
||||
}
|
||||
|
||||
.group:hover .group-hover\:opacity-70 {
|
||||
opacity: 0.7;
|
||||
}
|
||||
|
@ -1940,43 +1830,4 @@ @media (min-width: 1024px) {
|
|||
padding-top: 2rem;
|
||||
padding-bottom: 2rem;
|
||||
}
|
||||
|
||||
.lg\:pr-96 {
|
||||
padding-right: 24rem;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1280px) {
|
||||
.xl\:fixed {
|
||||
position: fixed;
|
||||
}
|
||||
|
||||
.xl\:inset-y-0 {
|
||||
top: 0px;
|
||||
bottom: 0px;
|
||||
}
|
||||
|
||||
.xl\:z-50 {
|
||||
z-index: 50;
|
||||
}
|
||||
|
||||
.xl\:flex {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.xl\:hidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.xl\:w-72 {
|
||||
width: 18rem;
|
||||
}
|
||||
|
||||
.xl\:flex-col {
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.xl\:pl-72 {
|
||||
padding-left: 18rem;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue