app/components/solidus_admin/orders/show/address/component.html.erb in solidus_admin-0.2.0 vs app/components/solidus_admin/orders/show/address/component.html.erb in solidus_admin-0.3.0

- old
+ new

@@ -1,67 +1,69 @@ <div class="<%= stimulus_id %>" data-controller="<%= stimulus_id %>"> - <%= render component("orders/show").new(order: @order) %> + <%= turbo_frame_tag "edit_order_#{params[:type]}_address_modal" do %> + <%= render component("ui/modal").new(title: t(".title.#{@type}")) do |modal| %> + <%= form_for @order, url: solidus_admin.send("order_#{@type}_address_path", @order), html: { id: form_id } do |form| %> + <div class="w-full flex flex-col mb-4"> + <div class="flex justify-between items-center mb-4 relative"> + <h2 class="text-sm font-semibold"> + <%= t(".subtitle.#{@type}") %> + </h2> - <%= render component("ui/modal").new(title: t(".title.#{@type}"), close_path: solidus_admin.order_path(@order)) do |modal| %> - <%= form_for @order, url: solidus_admin.send("order_#{@type}_address_path", @order), html: { id: form_id } do |form| %> - <div class="w-full flex flex-col mb-4"> - <div class="flex justify-between items-center mb-4 relative"> - <h2 class="text-sm font-semibold"> - <%= t(".subtitle.#{@type}") %> - </h2> - - <% if @addresses.present? %> - <%= render component('ui/dropdown').new( - text: t(".select_address"), - "data-#{stimulus_id}-target": "addresses", - class: "max-h-[26rem] overflow-y-auto" - ) do %> - <% @addresses.each do |address| %> - <%= tag.a( - format_address(address), - href: solidus_admin.send("order_#{@type}_address_path", @order, address_id: address.id), - 'data-turbo-frame': address_frame_id, - 'data-action': "#{component('ui/dropdown').stimulus_id}#close", - ) %> + <% if @addresses.present? %> + <%= render component('ui/dropdown').new( + text: t(".select_address"), + "data-#{stimulus_id}-target": "addresses", + class: "max-h-[26rem] overflow-y-auto" + ) do %> + <% @addresses.each do |address| %> + <%= tag.a( + format_address(address), + href: solidus_admin.send("order_#{@type}_address_path", @order, address_id: address.id), + 'data-turbo-frame': address_frame_id, + 'data-action': "#{component('ui/dropdown').stimulus_id}#close", + ) %> + <% end %> <% end %> <% end %> - <% end %> - </div> + </div> - <div class="w-full flex gap-4"> - <%= turbo_frame_tag address_frame_id do %> - <%= render component('ui/forms/address').new(address: @address, name: "order[#{@type}_address_attributes]") %> - <% end %> - </div> + <div class="w-full flex gap-4"> + <%= turbo_frame_tag address_frame_id do %> + <%= render component('ui/forms/address').new(address: @address, name: "order[#{@type}_address_attributes]") %> + <% end %> + </div> - <label class="flex gap-2 items-center"> - <%= form.hidden_field use_attribute, value: '0', id: false %> + <label class="flex gap-2 items-center"> + <%= form.hidden_field use_attribute, value: '0', id: false %> - <%= render component("ui/forms/checkbox").new( - name: "#{form.object_name}[#{use_attribute}]", - checked: @address == (@type == 'ship' ? @order.bill_address : @order.ship_address), - value: '1' - ) %> + <%= render component("ui/forms/checkbox").new( + name: "#{form.object_name}[#{use_attribute}]", + checked: @address == (@type == 'ship' ? @order.bill_address : @order.ship_address), + value: '1' + ) %> - <span class="font-normal text-xs"> - <%= t(".use_this_address.#{@type}") %> - </span> - </label> - </div> - <% end %> + <span class="font-normal text-xs"> + <%= t(".use_this_address.#{@type}") %> + </span> + </label> + </div> + <% end %> - <% modal.with_actions do %> - <%= render component("ui/button").new( - tag: :a, - scheme: :secondary, - text: t(".cancel"), - href: solidus_admin.order_path(@order) - ) %> + <% modal.with_actions do %> + <form method="dialog"> + <%= render component("ui/button").new( + scheme: :secondary, + text: t(".cancel"), + ) %> + </form> - <%= render component("ui/button").new( - tag: :button, - text: t(".save"), - form: form_id - ) %> + <%= render component("ui/button").new( + tag: :button, + text: t(".save"), + form: form_id + ) %> + <% end %> <% end %> <% end %> + + <%= render component("orders/show").new(order: @order) %> </div>