lib/servel/path_builder.rb in servel-0.7.0 vs lib/servel/path_builder.rb in servel-0.8.0
- old
+ new
@@ -1,74 +1,74 @@
-class Servel::PathBuilder
- IMAGE_EXTS = %w(.jpg .jpeg .png .gif)
- VIDEO_EXTS = %w(.webm .mp4)
- AUDIO_EXTS = %w(.mp3 .m4a .wav)
-
- def initialize(path)
- @path = Pathname.new(path)
- end
-
- def build
- Servel::Path.new(
- type: type,
- media_type: media_type,
- listing_classes: listing_classes,
- icon: icon,
- href: @path.basename,
- name: @path.basename,
- size: size,
- mtime: @path.mtime
- )
- end
-
- def type
- if @path.directory?
- "Dir"
- elsif @path.file?
- @path.extname.sub(/^\./, "")
- else
- ""
- end
- end
-
- def media_type
- return nil unless @path.file? && @path.extname
-
- case @path.extname.downcase
- when *IMAGE_EXTS
- :image
- when *VIDEO_EXTS
- :video
- when *AUDIO_EXTS
- :audio
- else
- nil
- end
- end
-
- def listing_classes
- klasses = []
- klasses << "file" if @path.file?
- klasses << "directory" if @path.directory?
- klasses << "media" if media_type
- klasses << media_type if media_type
- klasses.join(" ")
- end
-
- def icon
- return "📁" if @path.directory?
- case media_type
- when :video
- "🎞️"
- when :image
- "🖼️"
- when :audio
- "🔊"
- else
- "📝"
- end
- end
-
- def size
- @path.directory? ? nil : @path.size
- end
+class Servel::PathBuilder
+ IMAGE_EXTS = %w(.jpg .jpeg .png .gif)
+ VIDEO_EXTS = %w(.webm .mp4)
+ AUDIO_EXTS = %w(.mp3 .m4a .wav)
+
+ def initialize(path)
+ @path = Pathname.new(path)
+ end
+
+ def build
+ Servel::Path.new(
+ type: type,
+ media_type: media_type,
+ listing_classes: listing_classes,
+ icon: icon,
+ href: @path.basename,
+ name: @path.basename,
+ size: size,
+ mtime: @path.mtime
+ )
+ end
+
+ def type
+ if @path.directory?
+ "Dir"
+ elsif @path.file?
+ @path.extname.sub(/^\./, "")
+ else
+ ""
+ end
+ end
+
+ def media_type
+ return nil unless @path.file? && @path.extname
+
+ case @path.extname.downcase
+ when *IMAGE_EXTS
+ :image
+ when *VIDEO_EXTS
+ :video
+ when *AUDIO_EXTS
+ :audio
+ else
+ nil
+ end
+ end
+
+ def listing_classes
+ klasses = []
+ klasses << "file" if @path.file?
+ klasses << "directory" if @path.directory?
+ klasses << "media" if media_type
+ klasses << media_type if media_type
+ klasses.join(" ")
+ end
+
+ def icon
+ return "📁" if @path.directory?
+ case media_type
+ when :video
+ "🎞️"
+ when :image
+ "🖼️"
+ when :audio
+ "🔊"
+ else
+ "📝"
+ end
+ end
+
+ def size
+ @path.directory? ? nil : @path.size
+ end
end
\ No newline at end of file