module Promethee::Rails::Helper
Public Instance Methods
blob_from_data(blob_data = {})
click to toggle source
# File lib/promethee/rails/helper.rb, line 49 def blob_from_data(blob_data = {}) return unless blob_data&.has_key? :id blob_find_method = ActiveStorage::Blob.respond_to?(:find_signed!) ? :find_signed! : :find_signed ActiveStorage::Blob.public_send blob_find_method, blob_data[:id] rescue nil end
promethee(data, options = {})
click to toggle source
# File lib/promethee/rails/helper.rb, line 2 def promethee(data, options = {}) render partial: 'promethee/show', locals: { master_data: data, localization_data: options[:l] } end
promethee_bem_classes(*args)
click to toggle source
promethee_bem_classes
'promethee-edit__move__droppable', '–{{type}}', '–first' -> promethee-edit__move__droppable promethee-edit__move__droppable–{{type}} promethee-edit__move__droppable–{{type}}–first“
# File lib/promethee/rails/helper.rb, line 59 def promethee_bem_classes(*args) classes = '' current_class = '' args.each do |arg| current_class << arg classes << "#{current_class} " end classes end
promethee_class_for(component, *modifiers)
click to toggle source
# File lib/promethee/rails/helper.rb, line 6 def promethee_class_for(component, *modifiers) base = "promethee__component" component_base = "#{base}__#{component[:type]}" [ base, component_base, modifiers.map { |modifier| "#{component_base}--#{modifier}" } ].flatten.select(&:present?).join ' ' end
promethee_component_partials()
click to toggle source
# File lib/promethee/rails/helper.rb, line 21 def promethee_component_partials promethee_partials_for 'components/*/_edit_*.html.erb' end
promethee_component_render_icon(icon)
click to toggle source
# File lib/promethee/rails/helper.rb, line 25 def promethee_component_render_icon(icon) render(partial: "promethee/components/#{icon}/icon", formats: :svg).to_json.html_safe end
promethee_id_for(component)
click to toggle source
# File lib/promethee/rails/helper.rb, line 17 def promethee_id_for(component) "promethee-component-#{component[:id]}" end
promethee_localize_partials()
click to toggle source
# File lib/promethee/rails/helper.rb, line 45 def promethee_localize_partials promethee_partials_for 'components/*/_localize.html.erb' end
promethee_preset_partials()
click to toggle source
# File lib/promethee/rails/helper.rb, line 41 def promethee_preset_partials promethee_partials_for 'presets/_*.html.erb' end
promethee_preset_render_icon(icon)
click to toggle source
# File lib/promethee/rails/helper.rb, line 29 def promethee_preset_render_icon(icon) render(partial: "promethee/presets/icon_#{icon}", formats: :svg).to_json.html_safe end
promethee_template_partials()
click to toggle source
# File lib/promethee/rails/helper.rb, line 37 def promethee_template_partials promethee_partials_for 'templates/_*.html.erb' end
promethee_util_partials()
click to toggle source
# File lib/promethee/rails/helper.rb, line 33 def promethee_util_partials promethee_partials_for 'utils/_*.html.erb' end
Protected Instance Methods
promethee_partial_paths_for(path)
click to toggle source
Example: promethee_partial_paths_for
'components//_edit..html.erb' [
Pathname:promethee/components/column/_edit_define.html.erb, Pathname:promethee/components/column/_edit_inspect.html.erb, Pathname:promethee/components/column/_edit_move.html.erb, Pathname:promethee/components/cover/_edit_define.html.erb, Pathname:promethee/components/cover/_edit_inspect.html.erb, ...
]
# File lib/promethee/rails/helper.rb, line 93 def promethee_partial_paths_for(path) promethee_partial_sources.map do |source| Dir[source + 'promethee' + path].map { |file| Pathname.new(file).relative_path_from source } end.flatten.uniq(&:to_s) end
promethee_partial_sources()
click to toggle source
Example: [
Pathname:/Users/lespoupeesrusses/Developer/a-rails-app/app/views, Pathname:/Users/lespoupeesrusses/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/promethee-1.2.12/app/views
]
# File lib/promethee/rails/helper.rb, line 104 def promethee_partial_sources [Rails.root, Promethee.root].map { |source| source + 'app/views' } end
promethee_partials_for(path)
click to toggle source
Example: promethee_partials_for
'components//edit.html.erb' [
'promethee/components/column/edit_define', 'promethee/components/column/edit_inspect', 'promethee/components/column/edit_move', 'promethee/components/cover/edit_define', 'promethee/components/cover/edit_inspect', ...
]
# File lib/promethee/rails/helper.rb, line 80 def promethee_partials_for(path) promethee_partial_paths_for(path).map { |path| (path.dirname + path.basename('.html.erb').to_s[1..-1]).to_s } end