forked from solidusio/solidus
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathcomponent.html.erb
More file actions
64 lines (60 loc) · 2.8 KB
/
component.html.erb
File metadata and controls
64 lines (60 loc) · 2.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<fieldset class="<%= stimulus_id %>"
data-controller="<%= stimulus_id %>"
<%= :disabled if @disabled %>
>
<div class="<%= stimulus_id %>--address-form flex flex-wrap gap-4 pb-4">
<%= render component("ui/forms/field").text_field(@form_field_name, :name, object: @addressable) if @include_name_field %>
<%= render component("ui/forms/field").text_field(@form_field_name, :address1, object: @addressable) %>
<%= render component("ui/forms/field").text_field(@form_field_name, :address2, object: @addressable) %>
<div class="flex gap-4 w-full">
<%= render component("ui/forms/field").text_field(@form_field_name, :city, object: @addressable) %>
<%= render component("ui/forms/field").text_field(@form_field_name, :zipcode, object: @addressable) %>
</div>
<%= render component("ui/forms/field").select(
@form_field_name,
:country_id,
Spree::Country.all.map { |c| [c.name, c.id] },
object: @addressable,
value: @addressable.try(:country_id),
"data-#{stimulus_id}-target": "country",
"data-action": "change->#{stimulus_id}#loadStates"
) %>
<%= content_tag(:div,
data: { "#{stimulus_id}-target": "stateNameWrapper" },
class: (@addressable.country&.states&.empty? ? "flex flex-col gap-2 w-full" : "hidden flex flex-col gap-2 w-full")
) do %>
<%= render component("ui/forms/field").text_field(
@form_field_name,
:state_name,
object: @addressable,
value: @addressable.try(:state_name),
"data-#{stimulus_id}-target": "stateName"
) %>
<% end %>
<input autocomplete="off" type="hidden" name=<%= "#{@form_field_name}[state_id]" %>>
<%= content_tag(:div,
data: { "#{stimulus_id}-target": "stateWrapper" },
class: (@addressable.country&.states&.empty? ? "hidden flex flex-col gap-2 w-full" : "flex flex-col gap-2 w-full")
) do %>
<%= render component("ui/forms/field").select(
@form_field_name,
:state_id,
state_options,
object: @addressable,
value: @addressable.try(:state_id),
"data-#{stimulus_id}-target": "state"
) %>
<% end %>
<%= render component("ui/forms/field").text_field(@form_field_name, :phone, object: @addressable) %>
<%= render component("ui/forms/field").text_field(@form_field_name, :email, object: @addressable) %>
<% if Spree::Backend::Config.show_reverse_charge_fields %>
<%= render component("ui/forms/field").text_field(@form_field_name, :vat_id, object: @addressable) %>
<%= render component("ui/forms/field").select(
@form_field_name,
:reverse_charge_status,
Spree::Address.reverse_charge_statuses.keys.map { |key| [I18n.t("spree.reverse_charge_statuses.#{key}"), key] },
object: @addressable
) %>
<% end %>
</div>
</fieldset>