module Lato::ComponentsHelper

def lato_index(collection, options = {})

def lato_index(collection, options = {})
  key = options[:key] || 'default'
  @_lato_index ||= {}
  @_lato_index[key] ||= {}
  columns = options[:columns] || @_lato_index[key][:columns] || collection.column_names || []
  sortable_columns = @_lato_index[key][:sortable_columns] || []
  searchable_columns = @_lato_index[key][:searchable_columns] || []
  model_name = options[:model_name] || collection.model.name
  model_name_underscore = options[:model_name] || model_name.underscore.gsub('/', '_')
  render(
    'lato/components/index',
    key: key,
    collection: collection,
    columns: columns,
    sortable_columns: sortable_columns,
    searchable_columns: searchable_columns,
    model_name: model_name,
    model_name_underscore: model_name_underscore,
    custom_actions: options[:custom_actions] || {}
  )
end