Sha256: 9d64b2eebc26daeb271a7b6a3ba7bc767778cb85c5711dcecac0cbd02c537232
Contents?: true
Size: 1.95 KB
Versions: 4
Compression:
Stored size: 1.95 KB
Contents
# frozen_string_literal: true module Maquina module Sessions class Form < Phlex::HTML include Maquina::ApplicationView include Phlex::Rails::Helpers::FormWith def initialize(resource) @resource = resource end def view_template div(class: "mt-8 sm:mx-auto sm:w-full sm:max-w-md") do div(class: "bg-white py-8 px-4 shadow sm:rounded-lg sm:px-10") do form_with(url: sessions_path, method: :post, class: "space-y-6") do |form| div do form.label t("form.sessions.email"), for: :email, class: "block label" div(class: "mt-1") do form.text_field :email, value: @resource.email, type: :email, required: true, class: "w-full block input", **field_attributes(:email) end end div do form.label t("form.sessions.password"), for: :password, class: "block label" div(class: "mt-1") do form.password_field :password, value: @resource.password, required: true, class: "w-full block input", **field_attributes(:password) end end div(class: "flex items-center justify-between") do div do end div(class: "text-sm") do a(href: "#", class: "link") { t("form.sessions.forgot_password") } end end div do form.submit t("form.sessions.submit"), class: "flex w-full justify-center button button-accented" end end end end end private def field_attributes(field_name, scope = nil) scope ||= "sessions" { maxlength: t("helpers.maxlength.#{scope}.#{field_name}", default: t("helpers.maxlength.default")), placeholder: t("helpers.placeholder.#{scope}.#{field_name}", default: "") } end end end end
Version data entries
4 entries across 4 versions & 1 rubygems