Skip to content

Commit

Permalink
Move file viewer subcomponents into their own directory
Browse files Browse the repository at this point in the history
  • Loading branch information
jcoyne authored and thatbudakguy committed Jan 31, 2025
1 parent 346d838 commit 5b56f5f
Show file tree
Hide file tree
Showing 7 changed files with 82 additions and 78 deletions.
25 changes: 0 additions & 25 deletions app/components/embed/dir_row_component.rb

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
</tr>
<% end %>
<% dirs.each_with_index do |dir, index| %>
<%= render Embed::DirRowComponent.new(viewer: viewer, dir: dir, pos_in_set: index + 1, set_size: child_set_size, level: level + 1)%>
<%= render Embed::File::DirRowComponent.new(viewer: viewer, dir: dir, pos_in_set: index + 1, set_size: child_set_size, level: level + 1)%>
<% end %>
<% files.each_with_index do |file, index| %>
<%= render Embed::FileRowComponent.new(viewer: viewer, file: file, pos_in_set: dirs.size + index + 1, set_size: child_set_size, level: level + 1)%>
<% end %>
<%= render Embed::File::FileRowComponent.new(viewer: viewer, file: file, pos_in_set: dirs.size + index + 1, set_size: child_set_size, level: level + 1)%>
<% end %>
27 changes: 27 additions & 0 deletions app/components/embed/file/dir_row_component.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# frozen_string_literal: true

module Embed
module File
class DirRowComponent < ViewComponent::Base
def initialize(viewer:, dir:, pos_in_set: nil, set_size: nil, level: 0)
@viewer = viewer
@dir = dir
@pos_in_set = pos_in_set
@set_size = set_size
@level = level
end

attr_reader :viewer, :dir, :pos_in_set, :set_size, :level

delegate :title, :files, :dirs, to: :dir

def child_set_size
@child_set_size ||= dirs.size + files.size
end

def first_td_style
"padding-left: #{((level - 1) * 2) + 1.5}ch;"
end
end
end
end
51 changes: 51 additions & 0 deletions app/components/embed/file/file_row_component.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# frozen_string_literal: true

module Embed
module File
class FileRowComponent < ViewComponent::Base
def initialize(viewer:, file:, pos_in_set: nil, set_size: nil, level: 0)
@viewer = viewer
@file = file
@pos_in_set = pos_in_set
@set_size = set_size
@level = level
end

attr_reader :viewer, :file, :pos_in_set, :set_size, :level

delegate :label, to: :file

def file_size_text
viewer.file_size_text(file.size)
end

def title
file.hierarchical_title
end

def filepath
file.title.downcase
end

def first_td_style
"padding-left: #{((level - 1) * 2) + 1.5}ch;"
end

def download?
!viewer.embargoed_to_world?(file)
end

def version
viewer.purl_object.version_id
end

def url
file.file_url(download: false, version:)
end

def file_type_icon
viewer.file_type_icon(file.mimetype)
end
end
end
end
2 changes: 1 addition & 1 deletion app/components/embed/file_component.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
</tr>
</thead>
<tbody>
<%= render Embed::DirRowComponent.new(viewer: viewer, dir: viewer.purl_object.hierarchical_contents)%>
<%= render Embed::File::DirRowComponent.new(viewer: viewer, dir: viewer.purl_object.hierarchical_contents)%>
</tbody>
</table>
</div>
Expand Down
49 changes: 0 additions & 49 deletions app/components/embed/file_row_component.rb

This file was deleted.

0 comments on commit 5b56f5f

Please sign in to comment.