app/components/spina/pages/page_component.html.erb in spina-2.13.1 vs app/components/spina/pages/page_component.html.erb in spina-2.14.0

- old
+ new

@@ -1,37 +1,50 @@ -<turbo-frame id="page_<%= @page.id %>" data-id="<%= @page.id %>"> +<turbo-frame id="page_<%= page.id %>" data-id="<%= page.id %>" data-controller="<%= 'page-collapse' if has_children? %>"> <div class="flex items-center border-gray-200 border-b <%= css_class %> bg-opacity-50"> <% if sortable? %> <% if draggable? %> <div data-sortable-handle class="p-4 text-gray-300 hover:text-gray-600 cursor-move"> <%= helpers.heroicon("menu-alt-4", style: :solid, class: "w-4 h-4 -mr-4") %> </div> <% else %> <div class="pl-2"> - <%= button_to helpers.spina.sort_one_admin_page_path(@page, direction: "up"), class: "btn btn-default shadow-none border-gray-200 border-b-0 rounded-b-none px-1 h-5 sort-up" do %> + <%= button_to helpers.spina.sort_one_admin_page_path(page, direction: "up"), class: "btn btn-default shadow-none border-gray-200 border-b-0 rounded-b-none px-1 h-5 sort-up" do %> <%= helpers.heroicon("chevron-up", style: :solid, class: 'w-4 h-4 text-gray-600') %> <% end %> - <%= button_to helpers.spina.sort_one_admin_page_path(@page), class: "btn btn-default shadow-none border-gray-200 rounded-t-none px-1 h-5 sort-down" do %> + <%= button_to helpers.spina.sort_one_admin_page_path(page), class: "btn btn-default shadow-none border-gray-200 rounded-t-none px-1 h-5 sort-down" do %> <%= helpers.heroicon("chevron-down", style: :solid, class: 'w-4 h-4 text-gray-600') %> <% end %> </div> <% end %> <% end %> - <%= link_to helpers.spina.edit_admin_page_path(@page), class: "block text-spina font-medium text-sm p-4 hover:text-spina-dark", data: {turbo_frame: "_top"} do %> - <%= @page.menu_title %> + <% if has_children? %> + <%= link_to helpers.spina.children_admin_page_path(page, sortable: sortable?, draggable: draggable?), class: "ml-2 -mr-3 px-1 h-7 font-medium rounded-md flex items-center text-spina hover:bg-spina/10 transition transition-bg transform", data: {turbo_frame: "page_#{page.id}_children", page_collapse_target: "button", action: "page-collapse#toggle"} do %> + <div data-page-collapse-target="indicator" class="transform transition <%= 'rotate-90' unless collapsed? %>"> + <%= helpers.heroicon('chevron-right', style: :mini, class: 'w-5 h-5') %> + </div> + <% end %> + <% end %> + + <%= link_to helpers.spina.edit_admin_page_path(page), class: "text-spina font-medium text-sm p-4 hover:text-spina-dark flex items-center", data: {turbo_frame: "_top"} do %> + <%= page.menu_title %> - <small class="font-normal"><%= label %></small> + <small class="font-normal ml-2"><%= label %></small> <% end %> <div class='flex-1'></div> <div class="mr-3 flex space-x-2"> - <%= render Spina::Pages::TranslationsComponent.new(@page) %> + <%= render Spina::Pages::TranslationsComponent.new(page) %> </div> </div> - <% if children.any? %> - <%= render Spina::Pages::ListComponent.new(pages: children, sortable: sortable, draggable: draggable) %> + <% if has_children? %> + <turbo-frame id="page_<%= page.id %>_children" data-page-collapse-target="children" <%= 'hidden' if collapsed? %>> + <% unless collapsed? %> + <%= render Spina::Pages::ListComponent.new(pages: children, sortable: sortable?, draggable: draggable?) %> + <% end %> + </turbo-frame> <% end %> -</turbo-frame> \ No newline at end of file +</turbo-frame> +