Trestle Versions Save

A modern, responsive admin framework for Ruby on Rails

v0.9.8

1 year ago
  • Fix error when mixing string & symbol navigation items
  • Fix development-mode instance error rendering in Rails 7
  • Update to jQuery 3.6.4

v0.9.7

1 year ago
  • Allow helpers and custom fields to be lazily declared using procs (or String constant names)
Trestle.configure do |config|
  config.helper -> { CustomHelper }
  config.form_field :custom, -> { CustomFormField }
end
  • Sort navigation items by name when priority levels are identical (#421 )
  • Update to Bootstrap 4.6.2, jQuery 3.6.1, rails-ujs 6.1.7
  • Fixed compatibility with Haml 6.x (#424)
  • Switch CI from Travis CI to Github Actions

v0.9.6

1 year ago
  • Render enum columns as radio buttons within automatic forms (#379)
  • Add support for hash and array parameters in config.persistent_params
  • Implement admin Registry class with support for resource lookups by model
  • Allow passing Trestle.resource(..., register_model: false) to disable model lookup registration
  • Allow class option to be passed to avatar helper
  • Add avatar-sm and avatar-lg CSS classes for small and large avatars
  • Allow HTML options to be passed to sidebar helper
  • Update to Bootstrap 4.6.1, jQuery 3.6.0, FontAwesome 5.15.4, Flatpickr 4.6.13, rails-ujs 6.1.3
  • Revamped sandbox for improved development process
  • Standardize colors for additional alert styles, and add support for variable-width alert icons
  • Fix Ruby 3 kwargs forwarding within form renderer
  • Fix backgrounding and scrolling of stacked modals
  • Fix logo stretching in sidebar header
  • Add Rails 7 to Travis CI tests and update Ruby versions
  • Add CONTRIBUTING.md guide

Housekeeping:

  • The master branch has been renamed to main across all TrestleAdmin repositories

v0.9.5

3 years ago
  • Add support for scope groups (#322)
scopes do
  scope :first, group: "Group Name"
  scope :second, group: "Group Name"

  scope :third, group: "Another Group"
end

# Default layout is :row. Scope groups will automatically stack for mobile devices.
scopes layout: :columns do ...

# Disable grouping regardless of scope definitions
scopes group: false do ...

# Specify custom classes on the scopes container div
scopes class: "scope-tags" do ...
  • Allow default navigation group state to be set to collapsed (#332)
menu do
  group :configuration, collapse: true do
    item ...
  end
end
  • Update to Bootstrap 4.6.0, FontAwesome 5.15.2, Flatpickr 4.6.9, rails-ujs 6.1.2
  • Update form field error state to show all error messages (#331)
  • Fix incorrect admin controller parent class autoloading issues (#329)
  • Fix potential XSS cookie injection vulnerability (#341)
  • Fix keyword argument forwarding for Ruby 3 (#342)
  • Added Rails 6.1 and Ruby 3 to Travis CI tests

v0.9.4

3 years ago
  • Add Vietnamese translations [Derek Nguyen]
  • Implement preliminary support for AJAX pagination
  • Allow access to controller methods (e.g. current_user) from within scope blocks
  • Allow per-admin translations for scope labels
  • Change form parameter name to unscoped singular admin name
  • Update to jQuery 3.5.1, Bootstrap 4.5.3, FontAwesome 5.15.1, Flatpickr 4.6.6, rails-ujs 6.0.3
  • Fix select field options when passing additional data attributes
  • Ensure select fields are disabled when options[:disabled] is set
  • Fix use of hooks within form blocks
  • Fix form field attributes when options[:wrapper] is false
  • Fix deprecation warnings in Ruby 2.7
  • Fix file permissions in gem release

v0.9.3

3 years ago
  • Add #save_or_dismiss resource toolbar builder method
  • Add support for passing parameters to hooks
  • Implement selectable_column checkbox JS and custom checkbox styling
  • Deprecated config.reload option (admins will now always reload in development mode)
  • Update to jQuery 3.5.0
  • Update to FontAwesome 5.13.0, rails-ujs 6.0.2, popper.js 1.16.1, select2 4.0.13, bs-custom-file-input 1.3.4
  • Loosen dependency on kaminari (allow updating to 1.2.x)
  • Fix deprecation warnings when using Zeitwerk
  • Fix focus styles for themed buttons
  • Fix centering of title/logo at mobile breakpoints
  • Fix error messages for has_many / has_and_belongs_to_many fields (ending in _ids)
  • Fix JS AJAX events from incorrectly firing on child elements of a Trestle form
  • Fix overriding of table options when embedding within another admin
  • Fix col helper to not add bare col class when explicit column count is given

v0.9.2

4 years ago
  • Add German translations [Mischa Schindowski]
  • Added --singular option to trestle:resource generator for generating a singular resource:
rails generate trestle:resource account --singular
  • Allow setting custom options on automatically generated forms, e.g.
form dialog: true
  • Add #new, #save, #delete and #dismiss button shortcuts for resource toolbars
  • Allow title and toolbar helpers to be called from within controller actions
  • Allow static_field to automatically infer value rather than require it to be explicitly set
  • Allow custom HTML options to be set on navigation items
  • Allow options to be overridden when embedding tables
  • Updated to Bootstrap 4.4.1
  • Update i18n key for admin breadcrumbs to be more consistent (admin.<admin-name>.breadcrumbs.index)
  • Use count(:all) instead of count in ActiveRecord adapter to fix ambiguous column errors in joined queries
  • Fix loading of Flatpickr locale files
  • Fix initialization of JS translations when en locale is not available
  • Fix tab initialization on context refresh

v0.9.1

4 years ago
  • Fix JavaScript initialization when Turbolinks is disabled or not available
  • Disable automatic focusing within modals

v0.9.0

4 years ago

🎉🎉🎉 After many months in development, this release finally incorporates the new build process from #195!

**If you have written a lot of custom code that depends on Bootstrap 3, this may be a breaking update. Please review your admin application code before pushing to production.**

**If you are using trestle-auth or trestle-search, please also ensure you also update to trestle-auth >= 0.3.0 and trestle-search >= 0.4.0**

The main features of this update are:

  • A Webpack-based build process which produces a static CSS bundle. This means a Sass compilation gem (sass-rails or sassc-rails) is no longer a required dependency unless you are doing custom theme compilation.
  • Cleaned up the Sass and JS code, and migrated the JS to ES6 syntax.
  • Updated to Bootstrap 4 (4.3.1).
  • Updated to FontAwesome 5 (5.11.2). The v4 compatibility classes are included.
  • Removed Ionicons.
  • Theme customization is now done within app/assets/stylesheets/trestle/_theme.scss (rather than _variables.scss). The trestle:install generator has been updated to create this new file. However your current _variables.scss should continue to work for supported variables.
  • Sprockets is still a required dependency (for now).

Other updates and fixes include:

  • The col helper now accepts an integer for the default (mobile breakpoint) columns. Old usage should continue to work:
# New
col(4) { ... }
col(6, lg: 3) { ... }

# Old
col(xs: 4) { ... }
col(xs: 6, lg: 3) { ... }
  • Added new card helper to replace panel helper
  • Deprecated panel and well helpers
  • Added support for custom check_box/radio_button controls (default) as well as switch check_boxes
check_box :published, switch: true
  • Always show tabs if form was defined using one or more tab blocks
  • Use model name to determine default resource admin human name (#251)
  • Fixed model name pluralization when singular and plural versions are defined (#238)

v0.8.13

4 years ago
  • Additional French language translations [Tao Galasse]
  • Add support for admin-level hook definitions
  • Improve default handling of JSON attribute form fields
  • Improve handling of error responses
  • Remove default JS response handlers for admin resources. They can be added manually as required using:
controller do
  def show
    super do |format|
      format.js
    end
  end
end
  • Remove clear button from disabled date/time pickers
  • Disable select fields and date pickers when admin is read-only
  • Allow routes block to be called multiple times
  • Fix error when using selectable_column
  • Fix deprecation warnings in Rails 6

This will likely be the last release before #195 is merged in (which will then be released as 0.9.0).