@@ -52,13 +52,23 @@ def model_extensions
5252 end
5353 memo_wise :model_extensions
5454
55+ def slicer_types
56+ Mime ::LOOKUP . filter { |k , v | is_slicer_mime_type? ( v ) } . values
57+ end
58+ memo_wise :slicer_types
59+
60+ def slicer_extensions
61+ Mime ::EXTENSION_LOOKUP . filter { |k , v | is_slicer_mime_type? ( v ) } . keys
62+ end
63+ memo_wise :slicer_extensions
64+
5565 def indexable_types
56- image_types + model_types + video_types + document_types + archive_types
66+ image_types + model_types + video_types + document_types + archive_types + slicer_types
5767 end
5868 memo_wise :indexable_types
5969
6070 def indexable_extensions
61- image_extensions + model_extensions + video_extensions + document_extensions + archive_extensions
71+ image_extensions + model_extensions + video_extensions + document_extensions + archive_extensions + slicer_extensions
6272 end
6373 memo_wise :indexable_extensions
6474
@@ -141,5 +151,19 @@ def is_archive_mime_type?(type)
141151 ] . include? ( type . to_s )
142152 end
143153 memo_wise :is_archive_mime_type?
154+
155+ def is_slicer_mime_type? ( type )
156+ [
157+ "application/x-chitubox" ,
158+ "application/x-prusa-sl1" ,
159+ "application/x-phrozen" ,
160+ "application/x-photon" ,
161+ "application/x-crealitybox" ,
162+ "application/x-elegoo" ,
163+ "application/x-lumen" ,
164+ "application/x-nanodlp"
165+ ] . include? ( type . to_s )
166+ end
167+ memo_wise :is_slicer_mime_type?
144168 end
145169end
0 commit comments