update deps
Some checks are pending
continuous-integration/drone/push Build is running

This commit is contained in:
2025-04-05 03:42:43 +00:00
parent 4cca4ee3b7
commit 32094221c2
86 changed files with 841 additions and 20819 deletions

View File

@ -1,23 +1,23 @@
<div style="display: flex; flex-direction: column; justify-content: center; align-items: center;">
<span style="margin-bottom: 0.75em; font-size: 1.5em;">
<%= dgettext("emails", "Hi %{email},", email: @user.email) %>
{dgettext("emails", "Hi %{email},", email: @user.email)}
</span>
<br />
<span style="margin-bottom: 1em; font-size: 1.25em;">
<%= dgettext("emails", "Welcome to memEx") %>
{dgettext("emails", "Welcome to memEx")}
</span>
<br />
<%= dgettext("emails", "You can confirm your account by visiting the URL below:") %>
{dgettext("emails", "You can confirm your account by visiting the URL below:")}
<br />
<a style="margin: 1em; color: rgb(161, 161, 170);" href={@url}><%= @url %></a>
<a style="margin: 1em; color: rgb(161, 161, 170);" href={@url}>{@url}</a>
<br />
<%= dgettext("emails", "If you didn't create an account at memEx, please ignore this.") %>
{dgettext("emails", "If you didn't create an account at memEx, please ignore this.")}
</div>

View File

@ -1,17 +1,17 @@
<div style="display: flex; flex-direction: column; justify-content: center; align-items: center;">
<span style="margin-bottom: 0.5em; font-size: 1.5em;">
<%= dgettext("emails", "Hi %{email},", email: @user.email) %>
{dgettext("emails", "Hi %{email},", email: @user.email)}
</span>
<br />
<%= dgettext("emails", "You can reset your password by visiting the URL below:") %>
{dgettext("emails", "You can reset your password by visiting the URL below:")}
<br />
<a style="margin: 1em; color: rgb(161, 161, 170);" href={@url}><%= @url %></a>
<a style="margin: 1em; color: rgb(161, 161, 170);" href={@url}>{@url}</a>
<br />
<%= dgettext("emails", "If you didn't request this change from memEx, please ignore this.") %>
{dgettext("emails", "If you didn't request this change from memEx, please ignore this.")}
</div>

View File

@ -1,20 +1,20 @@
<div style="display: flex; flex-direction: column; justify-content: center; align-items: center;">
<span style="margin-bottom: 0.5em; font-size: 1.5em;">
<%= dgettext("emails", "Hi %{email},", email: @user.email) %>
{dgettext("emails", "Hi %{email},", email: @user.email)}
</span>
<br />
<%= dgettext("emails", "You can change your email by visiting the URL below:") %>
{dgettext("emails", "You can change your email by visiting the URL below:")}
<br />
<a style="margin: 1em; color: rgb(161, 161, 170);" href={@url}><%= @url %></a>
<a style="margin: 1em; color: rgb(161, 161, 170);" href={@url}>{@url}</a>
<br />
<%= dgettext(
{dgettext(
"emails",
"If you didn't request this change from memEx, please ignore this."
) %>
)}
</div>

View File

@ -5,7 +5,7 @@
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>
<%= dgettext("errors", "Error") %> | <%= gettext("memEx") %>
{dgettext("errors", "Error")} | {gettext("memEx")}
</title>
<link rel="stylesheet" href="/css/app.css" />
<script defer type="text/javascript" src="/js/app.js">
@ -19,13 +19,13 @@
<div class="pb-8 w-full flex flex-col justify-center items-center text-center">
<div class="p-8 sm:p-16 w-full flex flex-col justify-center items-center space-y-4 max-w-3xl">
<h1 class="title text-primary-400 text-3xl">
<%= @error_string %>
{@error_string}
</h1>
<hr class="w-full hr" />
<.link href={~p"/"} class="link title text-primary-400 text-lg">
<%= dgettext("errors", "go back home") %>
{dgettext("errors", "go back home")}
</.link>
</div>
</div>

View File

@ -1,6 +1,6 @@
<div class="mx-auto pb-8 max-w-2xl flex flex-col justify-center items-center space-y-4">
<h1 class="title text-primary-400 text-xl">
<%= dgettext("actions", "Resend confirmation instructions") %>
{dgettext("actions", "Resend confirmation instructions")}
</h1>
<.form
@ -10,22 +10,22 @@
action={~p"/users/confirm"}
class="flex flex-col space-y-4 sm:space-y-0 sm:grid sm:grid-cols-3 sm:gap-4 justify-center items-center"
>
<%= label(f, :email, gettext("Email"), class: "title text-lg text-primary-400") %>
<%= email_input(f, :email, required: true, class: "input input-primary col-span-2") %>
{label(f, :email, gettext("Email"), class: "title text-lg text-primary-400")}
{email_input(f, :email, required: true, class: "input input-primary col-span-2")}
<%= submit(dgettext("actions", "Resend confirmation instructions"),
{submit(dgettext("actions", "Resend confirmation instructions"),
class: "mx-auto btn btn-primary col-span-3"
) %>
)}
</.form>
<hr class="hr" />
<div class="flex flex-row justify-center items-center space-x-4">
<.link :if={Accounts.allow_registration?()} href={~p"/users/register"} class="btn btn-primary">
<%= dgettext("actions", "register") %>
{dgettext("actions", "register")}
</.link>
<.link href={~p"/users/log_in"} class="btn btn-primary">
<%= dgettext("actions", "log in") %>
{dgettext("actions", "log in")}
</.link>
</div>
</div>

View File

@ -1,6 +1,6 @@
<div class="mx-auto pb-8 max-w-2xl flex flex-col justify-center items-center space-y-4">
<h1 class="title text-primary-400 text-xl">
<%= dgettext("actions", "register") %>
{dgettext("actions", "register")}
</h1>
<.form
@ -10,41 +10,41 @@
class="flex flex-col space-y-4 sm:space-y-0 sm:grid sm:grid-cols-3 sm:gap-4 justify-center items-center"
>
<p :if={@changeset.action && not @changeset.valid?} class="alert alert-danger col-span-3">
<%= dgettext("errors", "oops, something went wrong! please check the errors below.") %>
{dgettext("errors", "oops, something went wrong! please check the errors below.")}
</p>
<%= if @invite_token do %>
<%= hidden_input(f, :invite_token, value: @invite_token) %>
{hidden_input(f, :invite_token, value: @invite_token)}
<% end %>
<%= label(f, :email, gettext("email"), class: "title text-lg text-primary-400") %>
<%= email_input(f, :email, required: true, class: "input input-primary col-span-2") %>
<%= error_tag(f, :email, "col-span-3") %>
{label(f, :email, gettext("email"), class: "title text-lg text-primary-400")}
{email_input(f, :email, required: true, class: "input input-primary col-span-2")}
{error_tag(f, :email, "col-span-3")}
<%= label(f, :password, gettext("password"), class: "title text-lg text-primary-400") %>
<%= password_input(f, :password, required: true, class: "input input-primary col-span-2") %>
<%= error_tag(f, :password, "col-span-3") %>
{label(f, :password, gettext("password"), class: "title text-lg text-primary-400")}
{password_input(f, :password, required: true, class: "input input-primary col-span-2")}
{error_tag(f, :password, "col-span-3")}
<%= label(f, :locale, gettext("language"), class: "title text-lg text-primary-400") %>
<%= select(
{label(f, :locale, gettext("language"), class: "title text-lg text-primary-400")}
{select(
f,
:locale,
[{gettext("english"), "en_US"}],
class: "input input-primary col-span-2"
) %>
<%= error_tag(f, :locale) %>
)}
{error_tag(f, :locale)}
<%= submit(dgettext("actions", "register"), class: "mx-auto btn btn-primary col-span-3") %>
{submit(dgettext("actions", "register"), class: "mx-auto btn btn-primary col-span-3")}
</.form>
<hr class="hr" />
<div class="flex flex-row justify-center items-center space-x-4">
<.link href={~p"/users/log_in"} class="btn btn-primary">
<%= dgettext("actions", "log in") %>
{dgettext("actions", "log in")}
</.link>
<.link href={~p"/users/reset_password"} class="btn btn-primary">
<%= dgettext("actions", "forgot your password?") %>
{dgettext("actions", "forgot your password?")}
</.link>
</div>
</div>

View File

@ -1,6 +1,6 @@
<div class="mx-auto pb-8 max-w-2xl flex flex-col justify-center items-center space-y-4">
<h1 class="title text-primary-400 text-xl">
<%= dgettext("actions", "reset password") %>
{dgettext("actions", "reset password")}
</h1>
<.form
@ -10,35 +10,35 @@
class="flex flex-col space-y-4 sm:space-y-0 sm:grid sm:grid-cols-3 sm:gap-4 justify-center items-center"
>
<p :if={@changeset.action && not @changeset.valid?} class="alert alert-danger col-span-3">
<%= dgettext("errors", "oops, something went wrong! please check the errors below.") %>
{dgettext("errors", "oops, something went wrong! please check the errors below.")}
</p>
<%= label(f, :password, gettext("new password"), class: "title text-lg text-primary-400") %>
<%= password_input(f, :password, required: true, class: "input input-primary col-span-2") %>
<%= error_tag(f, :password, "col-span-3") %>
{label(f, :password, gettext("new password"), class: "title text-lg text-primary-400")}
{password_input(f, :password, required: true, class: "input input-primary col-span-2")}
{error_tag(f, :password, "col-span-3")}
<%= label(f, :password_confirmation, gettext("confirm new password"),
{label(f, :password_confirmation, gettext("confirm new password"),
class: "title text-lg text-primary-400"
) %>
<%= password_input(f, :password_confirmation,
)}
{password_input(f, :password_confirmation,
required: true,
class: "input input-primary col-span-2"
) %>
<%= error_tag(f, :password_confirmation, "col-span-3") %>
)}
{error_tag(f, :password_confirmation, "col-span-3")}
<%= submit(dgettext("actions", "reset password"),
{submit(dgettext("actions", "reset password"),
class: "mx-auto btn btn-primary col-span-3"
) %>
)}
</.form>
<hr class="hr" />
<div class="flex flex-row justify-center items-center space-x-4">
<.link :if={Accounts.allow_registration?()} href={~p"/users/register"} class="btn btn-primary">
<%= dgettext("actions", "register") %>
{dgettext("actions", "register")}
</.link>
<.link href={~p"/users/log_in"} class="btn btn-primary">
<%= dgettext("actions", "log in") %>
{dgettext("actions", "log in")}
</.link>
</div>
</div>

View File

@ -1,6 +1,6 @@
<div class="mx-auto pb-8 max-w-2xl flex flex-col justify-center items-center space-y-4">
<h1 class="title text-primary-400 text-xl">
<%= dgettext("actions", "forgot your password?") %>
{dgettext("actions", "forgot your password?")}
</h1>
<.form
@ -10,22 +10,22 @@
action={~p"/users/reset_password"}
class="flex flex-col space-y-4 sm:space-y-0 sm:grid sm:grid-cols-3 sm:gap-4 justify-center items-center"
>
<%= label(f, :email, gettext("email"), class: "title text-lg text-primary-400") %>
<%= email_input(f, :email, required: true, class: "input input-primary col-span-2") %>
{label(f, :email, gettext("email"), class: "title text-lg text-primary-400")}
{email_input(f, :email, required: true, class: "input input-primary col-span-2")}
<%= submit(dgettext("actions", "send instructions to reset password"),
{submit(dgettext("actions", "send instructions to reset password"),
class: "mx-auto btn btn-primary col-span-3"
) %>
)}
</.form>
<hr class="hr" />
<div class="flex flex-row justify-center items-center space-x-4">
<.link :if={Accounts.allow_registration?()} href={~p"/users/register"} class="btn btn-primary">
<%= dgettext("actions", "register") %>
{dgettext("actions", "register")}
</.link>
<.link href={~p"/users/log_in"} class="btn btn-primary">
<%= dgettext("actions", "log in") %>
{dgettext("actions", "log in")}
</.link>
</div>
</div>

View File

@ -1,6 +1,6 @@
<div class="mx-auto pb-8 max-w-2xl flex flex-col justify-center items-center space-y-4">
<h1 class="title text-primary-400 text-xl">
<%= dgettext("actions", "log in") %>
{dgettext("actions", "log in")}
</h1>
<.form
@ -11,31 +11,31 @@
class="flex flex-col space-y-4 sm:space-y-0 sm:grid sm:grid-cols-3 sm:gap-4 justify-center items-center"
>
<p :if={@error_message} class="alert alert-danger col-span-3">
<%= @error_message %>
{@error_message}
</p>
<%= label(f, :email, gettext("email"), class: "title text-lg text-primary-400") %>
<%= email_input(f, :email, required: true, class: "input input-primary col-span-2") %>
{label(f, :email, gettext("email"), class: "title text-lg text-primary-400")}
{email_input(f, :email, required: true, class: "input input-primary col-span-2")}
<%= label(f, :password, gettext("password"), class: "title text-lg text-primary-400") %>
<%= password_input(f, :password, required: true, class: "input input-primary col-span-2") %>
{label(f, :password, gettext("password"), class: "title text-lg text-primary-400")}
{password_input(f, :password, required: true, class: "input input-primary col-span-2")}
<%= label(f, :remember_me, gettext("keep me logged in for 60 days"),
{label(f, :remember_me, gettext("keep me logged in for 60 days"),
class: "title text-lg text-primary-400"
) %>
<%= checkbox(f, :remember_me, class: "checkbox col-span-2") %>
)}
{checkbox(f, :remember_me, class: "checkbox col-span-2")}
<%= submit(dgettext("actions", "log in"), class: "mx-auto btn btn-primary col-span-3") %>
{submit(dgettext("actions", "log in"), class: "mx-auto btn btn-primary col-span-3")}
</.form>
<hr class="hr" />
<div class="flex flex-row justify-center items-center space-x-4">
<.link :if={Accounts.allow_registration?()} href={~p"/users/register"} class="btn btn-primary">
<%= dgettext("actions", "register") %>
{dgettext("actions", "register")}
</.link>
<.link href={~p"/users/reset_password"} class="btn btn-primary">
<%= dgettext("actions", "forgot your password?") %>
{dgettext("actions", "forgot your password?")}
</.link>
</div>
</div>

View File

@ -1,6 +1,6 @@
<div class="mx-auto pb-8 max-w-3xl flex flex-col justify-center items-stretch text-right space-y-4">
<h1 class="title text-primary-400 text-xl text-left">
<%= gettext("settings") %>
{gettext("settings")}
</h1>
<hr class="hr" />
@ -12,37 +12,37 @@
class="flex flex-col space-y-4 sm:space-y-0 sm:grid sm:grid-cols-3 sm:gap-4 justify-center items-center"
>
<h3 class="title text-primary-400 text-lg text-center col-span-3">
<%= dgettext("actions", "change email") %>
{dgettext("actions", "change email")}
</h3>
<div
:if={@email_changeset.action && not @email_changeset.valid?}
class="alert alert-danger col-span-3"
>
<%= dgettext("errors", "oops, something went wrong! please check the errors below") %>
{dgettext("errors", "oops, something went wrong! please check the errors below")}
</div>
<%= hidden_input(f, :action, name: "action", value: "update_email") %>
{hidden_input(f, :action, name: "action", value: "update_email")}
<%= label(f, :email, gettext("email"), class: "title text-lg text-primary-400") %>
<%= email_input(f, :email, required: true, class: "mx-2 my-1 input input-primary col-span-2") %>
<%= error_tag(f, :email, "col-span-3") %>
{label(f, :email, gettext("email"), class: "title text-lg text-primary-400")}
{email_input(f, :email, required: true, class: "mx-2 my-1 input input-primary col-span-2")}
{error_tag(f, :email, "col-span-3")}
<%= label(f, :current_password, gettext("current password"),
{label(f, :current_password, gettext("current password"),
for: "current_password_for_email",
class: "mx-2 my-1 title text-lg text-primary-400"
) %>
<%= password_input(f, :current_password,
)}
{password_input(f, :current_password,
required: true,
name: "current_password",
id: "current_password_for_email",
class: "mx-2 my-1 input input-primary col-span-2"
) %>
<%= error_tag(f, :current_password, "col-span-3") %>
)}
{error_tag(f, :current_password, "col-span-3")}
<%= submit(dgettext("actions", "change email"),
{submit(dgettext("actions", "change email"),
class: "mx-auto btn btn-primary col-span-3"
) %>
)}
</.form>
<hr class="hr" />
@ -54,49 +54,49 @@
class="flex flex-col space-y-4 sm:space-y-0 sm:grid sm:grid-cols-3 sm:gap-4 justify-center items-center"
>
<h3 class="title text-primary-400 text-lg text-center col-span-3">
<%= dgettext("actions", "change password") %>
{dgettext("actions", "change password")}
</h3>
<p
:if={@password_changeset.action && not @password_changeset.valid?}
class="alert alert-danger col-span-3"
>
<%= dgettext("errors", "oops, something went wrong! please check the errors below.") %>
{dgettext("errors", "oops, something went wrong! please check the errors below.")}
</p>
<%= hidden_input(f, :action, name: "action", value: "update_password") %>
{hidden_input(f, :action, name: "action", value: "update_password")}
<%= label(f, :password, gettext("new password"), class: "title text-lg text-primary-400") %>
<%= password_input(f, :password,
{label(f, :password, gettext("new password"), class: "title text-lg text-primary-400")}
{password_input(f, :password,
required: true,
class: "mx-2 my-1 input input-primary col-span-2"
) %>
<%= error_tag(f, :password, "col-span-3") %>
)}
{error_tag(f, :password, "col-span-3")}
<%= label(f, :password_confirmation, gettext("confirm new password"),
{label(f, :password_confirmation, gettext("confirm new password"),
class: "title text-lg text-primary-400"
) %>
<%= password_input(f, :password_confirmation,
)}
{password_input(f, :password_confirmation,
required: true,
class: "mx-2 my-1 input input-primary col-span-2"
) %>
<%= error_tag(f, :password_confirmation, "col-span-3") %>
)}
{error_tag(f, :password_confirmation, "col-span-3")}
<%= label(f, :current_password, gettext("current password"),
{label(f, :current_password, gettext("current password"),
for: "current_password_for_password",
class: "title text-lg text-primary-400"
) %>
<%= password_input(f, :current_password,
)}
{password_input(f, :current_password,
required: true,
name: "current_password",
id: "current_password_for_password",
class: "mx-2 my-1 input input-primary col-span-2"
) %>
<%= error_tag(f, :current_password, "col-span-3") %>
)}
{error_tag(f, :current_password, "col-span-3")}
<%= submit(dgettext("actions", "change password"),
{submit(dgettext("actions", "change password"),
class: "mx-auto btn btn-primary col-span-3"
) %>
)}
</.form>
<hr class="hr" />
@ -107,35 +107,35 @@
action={~p"/users/settings"}
class="flex flex-col space-y-4 sm:space-y-0 sm:grid sm:grid-cols-3 sm:gap-4 justify-center items-center"
>
<%= label(f, :locale, dgettext("actions", "change language"),
{label(f, :locale, dgettext("actions", "change language"),
class: "title text-primary-400 text-lg text-center col-span-3"
) %>
)}
<div
:if={@locale_changeset.action && not @locale_changeset.valid?}
class="alert alert-danger col-span-3"
>
<%= dgettext("errors", "oops, something went wrong! please check the errors below") %>
{dgettext("errors", "oops, something went wrong! please check the errors below")}
</div>
<%= hidden_input(f, :action, name: "action", value: "update_locale") %>
{hidden_input(f, :action, name: "action", value: "update_locale")}
<%= select(f, :locale, [{gettext("english"), "en_US"}, {"spanish", "es"}],
{select(f, :locale, [{gettext("english"), "en_US"}, {"spanish", "es"}],
class: "mx-2 my-1 min-w-md input input-primary col-start-2"
) %>
<%= error_tag(f, :locale, "col-span-3") %>
)}
{error_tag(f, :locale, "col-span-3")}
<%= submit(dgettext("actions", "change language"),
{submit(dgettext("actions", "change language"),
class: "whitespace-nowrap mx-auto btn btn-primary col-span-3",
data: [qa: dgettext("prompts", "are you sure you want to change your language?")]
) %>
)}
</.form>
<hr class="hr" />
<div class="flex justify-end items-center">
<.link href={~p"/export/json"} class="mx-4 my-2 btn btn-primary" target="_blank">
<%= dgettext("actions", "export data as json") %>
{dgettext("actions", "export data as json")}
</.link>
<.link
@ -144,7 +144,7 @@
class="mx-4 my-2 btn btn-alert"
data-confirm={dgettext("prompts", "are you sure you want to delete your account?")}
>
<%= dgettext("actions", "delete user") %>
{dgettext("actions", "delete user")}
</.link>
</div>
</div>