Sha256: f8036e756c74f7e74355bece1d645704c4e0c9ca99d5e1a52f2528f0b7acb038
Contents?: true
Size: 1.87 KB
Versions: 2
Compression:
Stored size: 1.87 KB
Contents
# class UsersTable < Mensa::Base # definition do # model User # # render do # default Standard components # html # Mensa::TableComponent::Default # json # Mensa::JsonRenderer::Default # xlsx # Mensa::XlsxRenderer::Default # end # # column(:first_name) do # filter # # render do # # html do |c| # # link_to(edit_contact_path(c)) do # # content_tag("i", nil, class: "fal fa-book") # # end # # end # # end # end # column :last_name do # filter # end # column :email # column :phone_number # column :state # column :city # column :created_at # # order last_name: :asc # link { |user| edit_user_path(user) } # # supports_views true # supports_filters true # # action :activate do # link { |user| edit_user_path(user) } # icon "fa-check" # end # action :delete do # link { |user| edit_user_path(user) } # link_attributes "data-turbo-method" => "delete" # icon "fa-xmark" # end # end module Mensa::Config class TableDsl include DslLogic option :model, default: -> { self.class.name.demodulize.to_s.classify.constantize rescue raise "No model found for #{self.class.name}" } option :column, dsl_hash: Mensa::Config::ColumnDsl option :link # Default sort order {column: direction, column: direction} option :order, default: {} # Order of columns in the table option :column_order # Actions option :action, dsl_hash: Mensa::Config::ActionDsl dsl_option :render, Mensa::Config::RenderDsl option :supports_views, default: false option :supports_filters, default: true option :show_header, default: true option :view_columns_sorting, default: true option :view_condensed, default: false option :view_condensed_toggle, default: true end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
mensa-0.1.12 | app/tables/mensa/config/table_dsl.rb |
mensa-0.1.10 | app/tables/mensa/config/table_dsl.rb |