<%= flex_layout(data: { turbo: true }) do |show_page| show_page.with_row do # prototyical usage of Primer's flash message component wrapped in a component which can be updated via turbo stream # empty initially # should become part of the application layout once finalized render(FlashMessageComponent.new) end show_page.with_row do render(Meetings::HeaderComponent.new(meeting: @meeting, project: @project)) end show_page.with_row do render(Primer::Alpha::Layout.new(stacking_breakpoint: :md)) do |content| content.with_main do flex_layout do |agenda| agenda.with_row do render(MeetingAgendaItems::ListComponent.new(meeting: @meeting)) end agenda.with_row do render(MeetingAgendaItems::NewButtonComponent.new(meeting: @meeting)) end agenda.with_row(mt: 3, display: [:block, nil, :none]) do resource = ::API::V3::Meetings::MeetingRepresenter.new(@meeting, current_user: User.current, embed_links: false) concat render(Primer::Beta::Heading.new(tag: :h4)) { I18n.t(:label_attachment_plural) } concat helpers.list_attachments(resource, inputs: { allowUploading: true }) end end end content.with_sidebar(row_placement: :start, col_placement: :end) do render(Meetings::SidebarComponent.new(meeting: @meeting)) end end end end %>