Packages
phoenix_kit
1.7.170
1.7.207
1.7.206
1.7.205
1.7.204
1.7.203
1.7.202
1.7.201
1.7.200
1.7.199
1.7.198
1.7.197
1.7.196
1.7.194
1.7.193
1.7.192
1.7.191
1.7.190
1.7.189
1.7.187
1.7.186
1.7.185
1.7.184
1.7.183
1.7.182
1.7.181
1.7.180
1.7.179
1.7.178
1.7.177
1.7.176
1.7.175
1.7.174
1.7.173
1.7.172
1.7.171
1.7.170
1.7.169
1.7.168
1.7.167
1.7.166
1.7.165
1.7.164
1.7.162
1.7.161
1.7.160
1.7.159
1.7.157
1.7.156
1.7.155
1.7.154
1.7.153
1.7.152
1.7.151
1.7.150
1.7.149
1.7.146
1.7.145
1.7.144
1.7.143
1.7.138
1.7.133
1.7.132
1.7.131
1.7.130
1.7.128
1.7.126
1.7.125
1.7.121
1.7.120
1.7.119
1.7.118
1.7.117
1.7.116
1.7.115
1.7.114
1.7.113
1.7.112
1.7.111
1.7.110
1.7.109
1.7.108
1.7.107
1.7.106
1.7.105
1.7.104
1.7.103
1.7.102
1.7.101
1.7.100
1.7.99
1.7.98
1.7.97
1.7.96
1.7.95
1.7.94
1.7.93
1.7.92
1.7.91
1.7.90
1.7.89
1.7.88
1.7.87
1.7.86
1.7.85
1.7.84
1.7.83
1.7.82
1.7.81
1.7.80
1.7.79
1.7.78
1.7.77
1.7.76
1.7.75
1.7.74
1.7.71
1.7.70
1.7.69
1.7.66
1.7.65
1.7.64
1.7.63
1.7.62
1.7.61
1.7.59
1.7.58
1.7.57
1.7.56
1.7.55
1.7.54
1.7.53
1.7.52
1.7.51
1.7.49
1.7.44
1.7.43
1.7.42
1.7.41
1.7.39
1.7.38
1.7.37
1.7.36
1.7.34
1.7.33
1.7.31
1.7.30
1.7.29
1.7.28
1.7.27
1.7.26
1.7.25
1.7.24
1.7.23
1.7.22
1.7.21
1.7.20
1.7.19
1.7.18
1.7.17
1.7.16
1.7.15
1.7.14
1.7.13
1.7.12
1.7.11
1.7.10
1.7.9
1.7.8
1.7.7
1.7.6
1.7.5
1.7.4
1.7.3
1.7.2
1.7.1
1.7.0
1.6.20
1.6.19
1.6.18
1.6.17
1.6.16
1.6.15
1.6.14
1.6.13
1.6.12
1.6.11
1.6.10
1.6.9
1.6.8
1.6.7
1.6.6
1.6.5
1.6.4
1.6.3
1.5.2
1.5.1
1.5.0
1.4.9
1.4.8
1.4.7
1.4.6
1.4.5
1.4.4
1.4.3
1.4.2
1.4.1
1.4.0
1.3.2
1.3.1
1.3.0
1.2.10
1.2.9
1.2.8
1.2.7
1.2.5
1.2.4
1.2.2
1.2.1
1.2.0
1.1.0
1.0.0
A foundation for building Elixir Phoenix apps — SaaS, social networks, ERP systems, marketplaces, and more
Current section
221 Versions
Jump to
Current section
221 Versions
Compare versions
12
files changed
+100
additions
-32
deletions
unknownCHANGELOG.md
File is too large to be displayed (100 KB limit).
| @@ -1,6 +1,6 @@ | |
| 1 1 | {<<"links">>,[{<<"GitHub">>,<<"https://github.com/BeamLabEU/phoenix_kit">>}]}. |
| 2 2 | {<<"name">>,<<"phoenix_kit">>}. |
| 3 | - {<<"version">>,<<"1.7.169">>}. |
| 3 | + {<<"version">>,<<"1.7.170">>}. |
| 4 4 | {<<"description">>, |
| 5 5 | <<65,32,102,111,117,110,100,97,116,105,111,110,32,102,111,114,32,98,117,105, |
| 6 6 | 108,100,105,110,103,32,69,108,105,120,105,114,32,80,104,111,101,110,105, |
| @@ -220,7 +220,7 @@ defmodule PhoenixKitWeb.Components.AdminNav do | |
| 220 220 | <%!-- Dropdown Menu --%> |
| 221 221 | <ul |
| 222 222 | tabindex="0" |
| 223 | - class="dropdown-content menu bg-base-100 rounded-box z-[60] w-64 p-2 shadow-xl border border-base-300 mt-3 max-h-[calc(100vh-5rem)] overflow-y-auto flex-nowrap" |
| 223 | + class="dropdown-content menu bg-base-100 rounded-box z-[60] w-64 p-2 shadow-xl border border-base-300 mt-3 max-h-[calc(100vh-5rem)] overflow-y-auto overflow-x-hidden flex-nowrap" |
| 224 224 | > |
| 225 225 | <%!-- User Info Header --%> |
| 226 226 | <li class="menu-title px-4 py-2"> |
| @@ -314,27 +314,33 @@ defmodule PhoenixKitWeb.Components.AdminNav do | |
| 314 314 | <%= for account <- @accounts do %> |
| 315 315 | <li class="p-0"> |
| 316 316 | <%= if account.active? do %> |
| 317 | - <div class="flex items-center gap-3 px-4 py-2 rounded-lg bg-base-200"> |
| 318 | - <span class="flex-1 min-w-0 break-words">{account.email}</span> |
| 319 | - <span class="badge badge-xs badge-ghost">{account.role}</span> |
| 320 | - <PhoenixKitWeb.Components.Core.Icons.icon_check class="w-4 h-4 ml-auto" /> |
| 317 | + <div class="flex items-center gap-3 px-4 py-2 rounded-lg bg-base-200 min-w-0"> |
| 318 | + <span class="flex-1 min-w-0 truncate" title={account.email}> |
| 319 | + {account.email} |
| 320 | + </span> |
| 321 | + <span class="badge badge-xs badge-ghost shrink-0">{account.role}</span> |
| 322 | + <PhoenixKitWeb.Components.Core.Icons.icon_check class="w-4 h-4 shrink-0" /> |
| 321 323 | </div> |
| 322 324 | <% else %> |
| 323 | - <div class="flex items-center gap-2 px-1"> |
| 325 | + <div class="flex items-center gap-2 px-1 min-w-0"> |
| 324 326 | <.form |
| 325 327 | for={%{}} |
| 326 328 | action={Routes.locale_aware_path(assigns, "/users/session/active")} |
| 327 329 | method="put" |
| 328 | - class="flex-1" |
| 330 | + class="flex-1 min-w-0" |
| 329 331 | > |
| 330 332 | <input type="hidden" name="ref" value={account.ref} /> |
| 331 333 | <input type="hidden" name="return_to" value={@current_path} /> |
| 332 334 | <button |
| 333 335 | type="submit" |
| 334 | - class="flex w-full items-center gap-3 px-3 py-2 rounded-lg hover:bg-base-200" |
| 336 | + class="flex w-full min-w-0 items-center gap-3 px-3 py-2 rounded-lg hover:bg-base-200" |
| 335 337 | > |
| 336 | - <span class="flex-1 min-w-0 break-words">{account.email}</span> |
| 337 | - <span class="badge badge-xs badge-ghost ml-auto">{account.role}</span> |
| 338 | + <span class="flex-1 min-w-0 truncate" title={account.email}> |
| 339 | + {account.email} |
| 340 | + </span> |
| 341 | + <span class="badge badge-xs badge-ghost ml-auto shrink-0"> |
| 342 | + {account.role} |
| 343 | + </span> |
| 338 344 | </button> |
| 339 345 | </.form> |
| 340 346 | <%= unless account.root? do %> |
| @@ -348,7 +354,7 @@ defmodule PhoenixKitWeb.Components.AdminNav do | |
| 348 354 | <input type="hidden" name="return_to" value={@current_path} /> |
| 349 355 | <button |
| 350 356 | type="submit" |
| 351 | - class="btn btn-ghost btn-xs btn-square text-error" |
| 357 | + class="btn btn-ghost btn-xs btn-square text-error shrink-0" |
| 352 358 | title="Remove" |
| 353 359 | > |
| 354 360 | âś• |
| @@ -179,7 +179,9 @@ defmodule PhoenixKitWeb.Components.FolderExplorer do | |
| 179 179 | <div class="divider my-1 h-0"></div> |
| 180 180 | |
| 181 181 | <%!-- Folder Tree --%> |
| 182 | - <ul class="space-y-0.5 w-full min-h-0 flex-1 overflow-y-auto pr-1"> |
| 182 | + <%!-- Scrolls both ways: deep folders extend past the 240px width and |
| 183 | + keep their full names (no truncation); scroll right to read them. --%> |
| 184 | + <ul class="space-y-0.5 w-full min-h-0 flex-1 overflow-auto pr-1"> |
| 183 185 | <%= for node <- @folder_tree do %> |
| 184 186 | <.folder_tree_node |
| 185 187 | node={node} |
| @@ -323,7 +325,7 @@ defmodule PhoenixKitWeb.Components.FolderExplorer do | |
| 323 325 | ) |
| 324 326 | |
| 325 327 | ~H""" |
| 326 | - <li class={["overflow-hidden", @tree_connector_class]}> |
| 328 | + <li class={[@tree_connector_class]}> |
| 327 329 | <%!-- |
| 328 330 | Whole row is clickable to open the folder. LiveView resolves a click |
| 329 331 | to the closest `phx-click` element, so the nested chevron (toggle) and |
| @@ -337,7 +339,7 @@ defmodule PhoenixKitWeb.Components.FolderExplorer do | |
| 337 339 | phx-target={@myself} |
| 338 340 | phx-value-folder-uuid={@node.folder.uuid} |
| 339 341 | class={[ |
| 340 | - "flex items-center gap-0.5 rounded-lg px-1 py-1 transition-colors group overflow-hidden min-w-0", |
| 342 | + "flex items-center gap-0.5 rounded-lg px-1 py-1 transition-colors group min-w-max", |
| 341 343 | @hover_class, |
| 342 344 | !@is_renaming && "cursor-pointer", |
| 343 345 | @is_active && "font-semibold" |
| @@ -406,7 +408,7 @@ defmodule PhoenixKitWeb.Components.FolderExplorer do | |
| 406 408 | phx-value-folder-uuid={@node.folder.uuid} |
| 407 409 | data-drop-folder={@enable_drag && @node.folder.uuid} |
| 408 410 | data-draggable-folder={@enable_drag && @node.folder.uuid} |
| 409 | - class="flex items-center gap-1.5 flex-1 min-w-0 overflow-hidden text-sm text-left" |
| 411 | + class="flex items-center gap-1.5 flex-1 text-sm text-left" |
| 410 412 | > |
| 411 413 | <span style={folder_icon_style(@node.folder.color, @is_active)}> |
| 412 414 | <.icon |
| @@ -416,7 +418,7 @@ defmodule PhoenixKitWeb.Components.FolderExplorer do | |
| 416 418 | </span> |
| 417 419 | <span |
| 418 420 | class={[ |
| 419 | - "truncate block min-w-0", |
| 421 | + "whitespace-nowrap block", |
| 420 422 | @renaming_folder == @node.folder.uuid && !@is_renaming && "renaming-preview" |
| 421 423 | ]} |
| 422 424 | title={@node.folder.name} |
| @@ -455,7 +457,7 @@ defmodule PhoenixKitWeb.Components.FolderExplorer do | |
| 455 457 | deeper nested <ul> overrides it with its own folder color. |
| 456 458 | --%> |
| 457 459 | <ul |
| 458 | - class="ml-3 overflow-hidden" |
| 460 | + class="ml-3" |
| 459 461 | style={"--pk-tree-line: #{tree_line_color(@node.folder.color)}; --pk-tree-line-active: #{tree_line_color_active(@node.folder.color)}"} |
| 460 462 | > |
| 461 463 | <%= for {child, idx} <- Enum.with_index(@node.children) do %> |
| @@ -577,39 +579,39 @@ defmodule PhoenixKitWeb.Components.FolderExplorer do | |
| 577 579 | |
| 578 580 | def tree_connector_class(_depth, true = _has_children, :active_trunk) do |
| 579 581 | "relative pl-3.5 " <> |
| 580 | - "before:content-[''] before:absolute before:left-0 before:top-0 before:h-full before:w-0.5 before:bg-[var(--pk-tree-line-active)] " <> |
| 582 | + "before:content-[''] before:absolute before:left-[-1px] before:top-0 before:h-full before:w-1 before:bg-[var(--pk-tree-line-active)] " <> |
| 581 583 | "after:content-[''] after:absolute after:left-0 after:top-[0.8125rem] after:h-0.5 after:w-4 after:bg-[var(--pk-tree-line)] " <> |
| 582 584 | "last:before:h-[0.875rem] last:before:w-4 last:before:bg-transparent " <> |
| 583 | - "last:before:border-l-2 last:before:border-b-2 last:before:border-[var(--pk-tree-line-active)] last:before:rounded-bl-lg " <> |
| 585 | + "last:before:left-[-1px] last:before:border-l-4 last:before:border-b-4 last:before:border-[var(--pk-tree-line-active)] last:before:rounded-bl-lg " <> |
| 584 586 | "last:after:hidden" |
| 585 587 | end |
| 586 588 | |
| 587 589 | def tree_connector_class(_depth, false = _has_children, :active_trunk) do |
| 588 590 | "relative pl-3.5 " <> |
| 589 | - "before:content-[''] before:absolute before:left-0 before:top-0 before:h-full before:w-0.5 before:bg-[var(--pk-tree-line-active)] " <> |
| 591 | + "before:content-[''] before:absolute before:left-[-1px] before:top-0 before:h-full before:w-1 before:bg-[var(--pk-tree-line-active)] " <> |
| 590 592 | "after:content-[''] after:absolute after:left-0 after:top-[0.8125rem] after:h-0.5 after:w-9 after:bg-[var(--pk-tree-line)] " <> |
| 591 593 | "last:before:h-[0.875rem] last:before:w-9 last:before:bg-transparent " <> |
| 592 | - "last:before:border-l-2 last:before:border-b-2 last:before:border-[var(--pk-tree-line-active)] last:before:rounded-bl-lg " <> |
| 594 | + "last:before:left-[-1px] last:before:border-l-4 last:before:border-b-4 last:before:border-[var(--pk-tree-line-active)] last:before:rounded-bl-lg " <> |
| 593 595 | "last:after:hidden" |
| 594 596 | end |
| 595 597 | |
| 596 598 | def tree_connector_class(_depth, true = _has_children, :active_turn) do |
| 597 599 | "relative pl-3.5 " <> |
| 598 600 | "before:content-[''] before:absolute before:left-0 before:top-0 before:h-full before:w-0.5 before:bg-[var(--pk-tree-line)] " <> |
| 599 | - "after:content-[''] after:absolute after:left-0 after:top-0 after:h-[0.8125rem] after:w-4 after:bg-transparent " <> |
| 600 | - "after:border-l-2 after:border-b-2 after:border-[var(--pk-tree-line-active)] " <> |
| 601 | + "after:content-[''] after:absolute after:left-[-1px] after:top-0 after:h-[0.8125rem] after:w-4 after:bg-transparent " <> |
| 602 | + "after:border-l-4 after:border-b-4 after:border-[var(--pk-tree-line-active)] after:rounded-bl-[0.15rem] " <> |
| 601 603 | "last:before:h-[0.875rem] last:before:w-4 last:before:bg-transparent " <> |
| 602 | - "last:before:border-l-2 last:before:border-b-2 last:before:border-[var(--pk-tree-line-active)] last:before:rounded-bl-lg " <> |
| 604 | + "last:before:left-[-1px] last:before:border-l-4 last:before:border-b-4 last:before:border-[var(--pk-tree-line-active)] last:before:rounded-bl-lg " <> |
| 603 605 | "last:after:hidden" |
| 604 606 | end |
| 605 607 | |
| 606 608 | def tree_connector_class(_depth, false = _has_children, :active_turn) do |
| 607 609 | "relative pl-3.5 " <> |
| 608 610 | "before:content-[''] before:absolute before:left-0 before:top-0 before:h-full before:w-0.5 before:bg-[var(--pk-tree-line)] " <> |
| 609 | - "after:content-[''] after:absolute after:left-0 after:top-0 after:h-[0.8125rem] after:w-9 after:bg-transparent " <> |
| 610 | - "after:border-l-2 after:border-b-2 after:border-[var(--pk-tree-line-active)] " <> |
| 611 | + "after:content-[''] after:absolute after:left-[-1px] after:top-0 after:h-[0.8125rem] after:w-9 after:bg-transparent " <> |
| 612 | + "after:border-l-4 after:border-b-4 after:border-[var(--pk-tree-line-active)] after:rounded-bl-[0.15rem] " <> |
| 611 613 | "last:before:h-[0.875rem] last:before:w-9 last:before:bg-transparent " <> |
| 612 | - "last:before:border-l-2 last:before:border-b-2 last:before:border-[var(--pk-tree-line-active)] last:before:rounded-bl-lg " <> |
| 614 | + "last:before:left-[-1px] last:before:border-l-4 last:before:border-b-4 last:before:border-[var(--pk-tree-line-active)] last:before:rounded-bl-lg " <> |
| 613 615 | "last:after:hidden" |
| 614 616 | end |
unknownlib/phoenix_kit_web/components/media_browser.ex
File is too large to be displayed (100 KB limit).
Loading more files…