rails_admin 3.0.0 → 3.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (187) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +3 -0
  3. data/README.md +4 -2
  4. data/Rakefile +2 -0
  5. data/app/assets/javascripts/rails_admin/{application.js → application.js.erb} +8 -0
  6. data/app/assets/stylesheets/rails_admin/{application.scss → application.scss.erb} +4 -0
  7. data/app/controllers/rails_admin/application_controller.rb +2 -0
  8. data/app/controllers/rails_admin/main_controller.rb +9 -14
  9. data/app/helpers/rails_admin/application_helper.rb +37 -9
  10. data/app/helpers/rails_admin/form_builder.rb +10 -0
  11. data/app/helpers/rails_admin/main_helper.rb +7 -15
  12. data/app/views/layouts/rails_admin/_head.html.erb +12 -3
  13. data/app/views/layouts/rails_admin/_secondary_navigation.html.erb +3 -1
  14. data/app/views/layouts/rails_admin/_sidebar_navigation.html.erb +1 -1
  15. data/app/views/layouts/rails_admin/application.html.erb +4 -1
  16. data/app/views/rails_admin/main/_dashboard_history.html.erb +1 -1
  17. data/app/views/rails_admin/main/_form_action_text.html.erb +2 -1
  18. data/app/views/rails_admin/main/_form_file_upload.html.erb +1 -1
  19. data/app/views/rails_admin/main/_form_filtering_multiselect.html.erb +2 -2
  20. data/app/views/rails_admin/main/_form_filtering_select.html.erb +1 -1
  21. data/app/views/rails_admin/main/_form_multiple_file_upload.html.erb +1 -1
  22. data/app/views/rails_admin/main/dashboard.html.erb +2 -2
  23. data/app/views/rails_admin/main/history.html.erb +1 -1
  24. data/app/views/rails_admin/main/index.html.erb +7 -19
  25. data/config/initializers/active_record_extensions.rb +26 -3
  26. data/config/initializers/mongoid_extensions.rb +2 -0
  27. data/config/locales/rails_admin.en.yml +3 -2
  28. data/config/routes.rb +2 -0
  29. data/lib/generators/rails_admin/importmap_formatter.rb +28 -0
  30. data/lib/generators/rails_admin/install_generator.rb +71 -9
  31. data/lib/generators/rails_admin/templates/rails_admin.js +1 -0
  32. data/lib/generators/rails_admin/templates/rails_admin.scss.erb +1 -0
  33. data/lib/generators/rails_admin/templates/rails_admin.webpacker.js +2 -0
  34. data/lib/generators/rails_admin/utils.rb +2 -0
  35. data/lib/rails_admin/abstract_model.rb +9 -2
  36. data/lib/rails_admin/adapters/active_record/association.rb +11 -1
  37. data/lib/rails_admin/adapters/active_record/object_extension.rb +2 -0
  38. data/lib/rails_admin/adapters/active_record/property.rb +2 -0
  39. data/lib/rails_admin/adapters/active_record.rb +25 -2
  40. data/lib/rails_admin/adapters/composite_primary_keys/association.rb +45 -0
  41. data/lib/rails_admin/adapters/composite_primary_keys.rb +40 -0
  42. data/lib/rails_admin/adapters/mongoid/association.rb +14 -4
  43. data/lib/rails_admin/adapters/mongoid/bson.rb +2 -0
  44. data/lib/rails_admin/adapters/mongoid/extension.rb +3 -3
  45. data/lib/rails_admin/adapters/mongoid/object_extension.rb +2 -0
  46. data/lib/rails_admin/adapters/mongoid/property.rb +2 -0
  47. data/lib/rails_admin/adapters/mongoid.rb +4 -2
  48. data/lib/rails_admin/config/actions/base.rb +2 -0
  49. data/lib/rails_admin/config/actions/bulk_delete.rb +2 -0
  50. data/lib/rails_admin/config/actions/dashboard.rb +2 -0
  51. data/lib/rails_admin/config/actions/delete.rb +2 -0
  52. data/lib/rails_admin/config/actions/edit.rb +2 -0
  53. data/lib/rails_admin/config/actions/export.rb +2 -0
  54. data/lib/rails_admin/config/actions/history_index.rb +2 -0
  55. data/lib/rails_admin/config/actions/history_show.rb +2 -0
  56. data/lib/rails_admin/config/actions/index.rb +2 -0
  57. data/lib/rails_admin/config/actions/new.rb +2 -0
  58. data/lib/rails_admin/config/actions/show.rb +2 -0
  59. data/lib/rails_admin/config/actions/show_in_app.rb +2 -0
  60. data/lib/rails_admin/config/actions.rb +2 -0
  61. data/lib/rails_admin/config/configurable.rb +2 -0
  62. data/lib/rails_admin/config/const_load_suppressor.rb +78 -0
  63. data/lib/rails_admin/config/fields/association.rb +2 -0
  64. data/lib/rails_admin/config/fields/base.rb +44 -14
  65. data/lib/rails_admin/config/fields/factories/action_text.rb +2 -0
  66. data/lib/rails_admin/config/fields/factories/active_storage.rb +2 -0
  67. data/lib/rails_admin/config/fields/factories/association.rb +6 -5
  68. data/lib/rails_admin/config/fields/factories/carrierwave.rb +2 -0
  69. data/lib/rails_admin/config/fields/factories/devise.rb +2 -0
  70. data/lib/rails_admin/config/fields/factories/dragonfly.rb +2 -0
  71. data/lib/rails_admin/config/fields/factories/enum.rb +2 -0
  72. data/lib/rails_admin/config/fields/factories/paperclip.rb +2 -0
  73. data/lib/rails_admin/config/fields/factories/password.rb +2 -0
  74. data/lib/rails_admin/config/fields/factories/shrine.rb +2 -0
  75. data/lib/rails_admin/config/fields/group.rb +2 -0
  76. data/lib/rails_admin/config/fields/types/action_text.rb +6 -0
  77. data/lib/rails_admin/config/fields/types/active_record_enum.rb +2 -0
  78. data/lib/rails_admin/config/fields/types/active_storage.rb +14 -0
  79. data/lib/rails_admin/config/fields/types/all.rb +3 -0
  80. data/lib/rails_admin/config/fields/types/belongs_to_association.rb +7 -5
  81. data/lib/rails_admin/config/fields/types/boolean.rb +7 -1
  82. data/lib/rails_admin/config/fields/types/bson_object_id.rb +2 -0
  83. data/lib/rails_admin/config/fields/types/carrierwave.rb +2 -0
  84. data/lib/rails_admin/config/fields/types/citext.rb +2 -0
  85. data/lib/rails_admin/config/fields/types/ck_editor.rb +2 -0
  86. data/lib/rails_admin/config/fields/types/code_mirror.rb +2 -0
  87. data/lib/rails_admin/config/fields/types/color.rb +2 -0
  88. data/lib/rails_admin/config/fields/types/composite_keys_belongs_to_association.rb +31 -0
  89. data/lib/rails_admin/config/fields/types/date.rb +2 -0
  90. data/lib/rails_admin/config/fields/types/datetime.rb +12 -0
  91. data/lib/rails_admin/config/fields/types/decimal.rb +2 -0
  92. data/lib/rails_admin/config/fields/types/dragonfly.rb +2 -0
  93. data/lib/rails_admin/config/fields/types/enum.rb +15 -2
  94. data/lib/rails_admin/config/fields/types/file_upload.rb +2 -0
  95. data/lib/rails_admin/config/fields/types/float.rb +2 -0
  96. data/lib/rails_admin/config/fields/types/froala.rb +2 -0
  97. data/lib/rails_admin/config/fields/types/has_and_belongs_to_many_association.rb +2 -0
  98. data/lib/rails_admin/config/fields/types/has_many_association.rb +2 -0
  99. data/lib/rails_admin/config/fields/types/has_one_association.rb +7 -1
  100. data/lib/rails_admin/config/fields/types/hidden.rb +2 -0
  101. data/lib/rails_admin/config/fields/types/inet.rb +2 -0
  102. data/lib/rails_admin/config/fields/types/integer.rb +2 -0
  103. data/lib/rails_admin/config/fields/types/json.rb +2 -0
  104. data/lib/rails_admin/config/fields/types/multiple_active_storage.rb +22 -0
  105. data/lib/rails_admin/config/fields/types/multiple_carrierwave.rb +2 -0
  106. data/lib/rails_admin/config/fields/types/multiple_file_upload.rb +2 -0
  107. data/lib/rails_admin/config/fields/types/numeric.rb +6 -0
  108. data/lib/rails_admin/config/fields/types/paperclip.rb +2 -0
  109. data/lib/rails_admin/config/fields/types/password.rb +2 -0
  110. data/lib/rails_admin/config/fields/types/polymorphic_association.rb +2 -0
  111. data/lib/rails_admin/config/fields/types/serialized.rb +2 -0
  112. data/lib/rails_admin/config/fields/types/shrine.rb +2 -0
  113. data/lib/rails_admin/config/fields/types/simple_mde.rb +2 -0
  114. data/lib/rails_admin/config/fields/types/string.rb +2 -0
  115. data/lib/rails_admin/config/fields/types/string_like.rb +6 -0
  116. data/lib/rails_admin/config/fields/types/text.rb +2 -0
  117. data/lib/rails_admin/config/fields/types/time.rb +6 -0
  118. data/lib/rails_admin/config/fields/types/timestamp.rb +2 -0
  119. data/lib/rails_admin/config/fields/types/uuid.rb +2 -0
  120. data/lib/rails_admin/config/fields/types/wysihtml5.rb +2 -0
  121. data/lib/rails_admin/config/fields/types.rb +2 -0
  122. data/lib/rails_admin/config/fields.rb +3 -1
  123. data/lib/rails_admin/config/groupable.rb +2 -0
  124. data/lib/rails_admin/config/has_description.rb +2 -0
  125. data/lib/rails_admin/config/has_fields.rb +3 -1
  126. data/lib/rails_admin/config/has_groups.rb +2 -0
  127. data/lib/rails_admin/config/hideable.rb +2 -0
  128. data/lib/rails_admin/config/inspectable.rb +2 -0
  129. data/lib/rails_admin/config/lazy_model.rb +74 -0
  130. data/lib/rails_admin/config/model.rb +5 -1
  131. data/lib/rails_admin/config/proxyable/proxy.rb +2 -0
  132. data/lib/rails_admin/config/proxyable.rb +2 -0
  133. data/lib/rails_admin/config/sections/base.rb +2 -0
  134. data/lib/rails_admin/config/sections/create.rb +2 -0
  135. data/lib/rails_admin/config/sections/edit.rb +2 -0
  136. data/lib/rails_admin/config/sections/export.rb +2 -0
  137. data/lib/rails_admin/config/sections/list.rb +6 -0
  138. data/lib/rails_admin/config/sections/modal.rb +2 -0
  139. data/lib/rails_admin/config/sections/nested.rb +2 -0
  140. data/lib/rails_admin/config/sections/show.rb +2 -0
  141. data/lib/rails_admin/config/sections/update.rb +2 -0
  142. data/lib/rails_admin/config/sections.rb +2 -0
  143. data/lib/rails_admin/config.rb +30 -42
  144. data/lib/rails_admin/engine.rb +19 -17
  145. data/lib/rails_admin/extension.rb +2 -0
  146. data/lib/rails_admin/extensions/cancancan/authorization_adapter.rb +21 -4
  147. data/lib/rails_admin/extensions/cancancan.rb +2 -0
  148. data/lib/rails_admin/extensions/controller_extension.rb +2 -0
  149. data/lib/rails_admin/extensions/paper_trail/auditing_adapter.rb +49 -27
  150. data/lib/rails_admin/extensions/paper_trail.rb +2 -0
  151. data/lib/rails_admin/extensions/pundit/authorization_adapter.rb +2 -0
  152. data/lib/rails_admin/extensions/pundit.rb +2 -0
  153. data/lib/rails_admin/support/csv_converter.rb +2 -2
  154. data/lib/rails_admin/support/datetime.rb +3 -1
  155. data/lib/rails_admin/support/es_module_processor.rb +23 -0
  156. data/lib/rails_admin/support/hash_helper.rb +2 -0
  157. data/lib/rails_admin/version.rb +4 -2
  158. data/lib/rails_admin.rb +7 -2
  159. data/lib/tasks/rails_admin.rake +2 -0
  160. data/package.json +2 -2
  161. data/src/rails_admin/base.js +14 -3
  162. data/src/rails_admin/filter-box.js +166 -210
  163. data/src/rails_admin/filtering-multiselect.js +5 -10
  164. data/src/rails_admin/filtering-select.js +16 -7
  165. data/src/rails_admin/i18n.js +3 -1
  166. data/src/rails_admin/jquery.js +3 -0
  167. data/src/rails_admin/nested-form-hooks.js +6 -4
  168. data/src/rails_admin/remote-form.js +5 -5
  169. data/src/rails_admin/styles/base/theming.scss +25 -8
  170. data/src/rails_admin/styles/base.scss +5 -5
  171. data/src/rails_admin/styles/widgets.scss +1 -1
  172. data/src/rails_admin/ui.js +52 -19
  173. data/src/rails_admin/widgets.js +7 -2
  174. data/vendor/assets/fonts/rails_admin/fa-solid-900.ttf +0 -0
  175. data/vendor/assets/fonts/rails_admin/fa-solid-900.woff2 +0 -0
  176. data/vendor/assets/javascripts/rails_admin/jquery3.js +118 -109
  177. data/vendor/assets/stylesheets/rails_admin/font-awesome.scss +4531 -2782
  178. metadata +16 -14
  179. data/lib/generators/rails_admin/templates/rails_admin.js.erb +0 -2
  180. data/lib/generators/rails_admin/templates/rails_admin.scss +0 -1
  181. data/lib/generators/rails_admin/templates/webpack.config.js +0 -29
  182. data/lib/rails_admin/support/esmodule_preprocessor.rb +0 -33
  183. data/vendor/assets/fonts/rails_admin/fa-solid-900.eot +0 -0
  184. data/vendor/assets/fonts/rails_admin/fa-solid-900.svg +0 -5034
  185. data/vendor/assets/fonts/rails_admin/fa-solid-900.woff +0 -0
  186. data/vendor/assets/images/rails_admin/bootstrap/glyphicons-halflings-white.png +0 -0
  187. data/vendor/assets/images/rails_admin/bootstrap/glyphicons-halflings.png +0 -0
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsAdmin
2
4
  module Extensions
3
5
  module ControllerExtension
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'active_support/core_ext/string/strip'
2
4
 
3
5
  module RailsAdmin
@@ -49,43 +51,63 @@ module RailsAdmin
49
51
  created_at: :created_at,
50
52
  message: :event,
51
53
  }.freeze
52
- E_VERSION_MODEL_NOT_SET = <<-ERROR.strip_heredoc.freeze
54
+ E_USER_CLASS_NOT_SET = <<~ERROR
55
+ Please set up PaperTrail's user class explicitly.
56
+
57
+ config.audit_with :paper_trail do
58
+ user_class { User }
59
+ end
60
+ ERROR
61
+ E_VERSION_MODEL_NOT_SET = <<~ERROR
53
62
  Please set up PaperTrail's version model explicitly.
54
63
 
55
- config.audit_with :paper_trail, 'User', 'PaperTrail::Version'
64
+ config.audit_with :paper_trail do
65
+ version_class { PaperTrail::Version }
66
+ end
56
67
 
57
68
  If you have configured a model to use a custom version class
58
69
  (https://github.com/paper-trail-gem/paper_trail#6a-custom-version-classes)
59
- that configuration will take precedence over what you specify in
60
- `audit_with`.
70
+ that configuration will take precedence over what you specify in `audit_with`.
61
71
  ERROR
62
72
 
73
+ include RailsAdmin::Config::Configurable
74
+
63
75
  def self.setup
64
76
  raise 'PaperTrail not found' unless defined?(::PaperTrail)
65
77
 
66
78
  RailsAdmin::Extensions::ControllerExtension.include ControllerExtension
67
79
  end
68
80
 
69
- def initialize(controller, user_class = 'User', version_class = '::Version')
81
+ def initialize(controller, user_class_name = nil, version_class_name = nil, &block)
70
82
  @controller = controller
71
83
  @controller&.send(:set_paper_trail_whodunnit)
72
- begin
73
- @user_class = user_class.to_s.constantize
74
- rescue NameError
75
- raise "Please set up Papertrail's user model explicitly. Ex: config.audit_with :paper_trail, 'User'"
76
- end
77
84
 
78
- begin
79
- @version_class = version_class.to_s.constantize
80
- rescue NameError
81
- raise E_VERSION_MODEL_NOT_SET
82
- end
85
+ user_class { user_class_name.to_s.constantize } if user_class_name
86
+ version_class { version_class_name.to_s.constantize } if version_class_name
87
+
88
+ instance_eval(&block) if block
89
+ end
90
+
91
+ register_instance_option :user_class do
92
+ User
93
+ rescue NameError
94
+ raise E_USER_CLASS_NOT_SET
95
+ end
96
+
97
+ register_instance_option :version_class do
98
+ PaperTrail::Version
99
+ rescue NameError
100
+ raise E_VERSION_MODEL_NOT_SET
101
+ end
102
+
103
+ register_instance_option :sort_by do
104
+ {id: :desc}
83
105
  end
84
106
 
85
107
  def latest(count = 100)
86
- @version_class.
87
- order(id: :desc).includes(:item).limit(count).
88
- collect { |version| VersionProxy.new(version, @user_class) }
108
+ version_class.
109
+ order(sort_by).includes(:item).limit(count).
110
+ collect { |version| VersionProxy.new(version, user_class) }
89
111
  end
90
112
 
91
113
  def delete_object(_object, _model, _user)
@@ -112,18 +134,18 @@ module RailsAdmin
112
134
 
113
135
  # - model - a RailsAdmin::AbstractModel
114
136
  def listing_for_model_or_object(model, object, query, sort, sort_reverse, all, page, per_page)
115
- if sort.present?
116
- sort = COLUMN_MAPPING[sort.to_sym]
117
- else
118
- sort = :created_at
119
- sort_reverse = 'true'
120
- end
137
+ sort =
138
+ if sort.present?
139
+ {COLUMN_MAPPING[sort.to_sym] => sort_reverse ? :desc : :asc}
140
+ else
141
+ sort_by
142
+ end
121
143
 
122
144
  current_page = page.presence || '1'
123
145
 
124
146
  versions = object.nil? ? versions_for_model(model) : object.public_send(model.model.versions_association_name)
125
147
  versions = versions.where('event LIKE ?', "%#{query}%") if query.present?
126
- versions = versions.order(sort_reverse == 'true' ? "#{sort} DESC" : sort)
148
+ versions = versions.order(sort)
127
149
  versions = all ? versions : versions.send(Kaminari.config.page_method_name, current_page).per(per_page)
128
150
  paginated_proxies = Kaminari.paginate_array([], total_count: versions.try(:total_count) || versions.count)
129
151
  paginated_proxies = paginated_proxies.send(
@@ -131,7 +153,7 @@ module RailsAdmin
131
153
  current_page,
132
154
  ).per(per_page)
133
155
  versions.each do |version|
134
- paginated_proxies << VersionProxy.new(version, @user_class)
156
+ paginated_proxies << VersionProxy.new(version, user_class)
135
157
  end
136
158
  paginated_proxies
137
159
  end
@@ -157,7 +179,7 @@ module RailsAdmin
157
179
  # has_paper_trail versions: { class_name: 'MyVersion' }
158
180
  # ```
159
181
  def version_class_for(model)
160
- model.paper_trail_options.dig(:versions, :class_name).try(:constantize) || @version_class
182
+ model.paper_trail.version_class
161
183
  end
162
184
  end
163
185
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rails_admin/extensions/paper_trail/auditing_adapter'
2
4
 
3
5
  RailsAdmin.add_extension(:paper_trail, RailsAdmin::Extensions::PaperTrail, auditing: true)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsAdmin
2
4
  module Extensions
3
5
  module Pundit
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rails_admin/extensions/pundit/authorization_adapter'
2
4
 
3
5
  RailsAdmin.add_extension(:pundit, RailsAdmin::Extensions::Pundit, authorization: true)
@@ -1,4 +1,4 @@
1
- # encoding: UTF-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'csv'
4
4
 
@@ -40,7 +40,7 @@ module RailsAdmin
40
40
 
41
41
  def to_csv(options = {})
42
42
  if CSV::VERSION == '3.0.2'
43
- raise <<-MSG.gsub(/^\s+/, '')
43
+ raise <<~MSG
44
44
  CSV library bundled with Ruby 2.6.0 has encoding issue, please upgrade Ruby to 2.6.1 or later.
45
45
  https://github.com/ruby/csv/issues/62
46
46
  MSG
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsAdmin
2
4
  module Support
3
5
  class Datetime
@@ -50,7 +52,7 @@ module RailsAdmin
50
52
  when '%z' # Time zone as hour and minute offset from UTC (e.g. +0900)
51
53
  Time.zone.formatted_offset(false)
52
54
  else
53
- FLATPICKR_TRANSLATIONS[match] or raise <<-MSG.gsub(/^\s{16}/, '')
55
+ FLATPICKR_TRANSLATIONS[match] or raise <<~MSG
54
56
  Unsupported strftime directive '#{match}' was found. Please consider explicitly setting flatpickr_format instance option for the field.
55
57
  field(:name_of_field) { flatpickr_format '...' }
56
58
  MSG
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAdmin
4
+ module Support
5
+ class ESModuleProcessor
6
+ def self.instance
7
+ @instance ||= new
8
+ end
9
+
10
+ def self.call(input)
11
+ instance.call(input)
12
+ end
13
+
14
+ def initialize; end
15
+
16
+ def call(input)
17
+ return unless input[:name] == 'rails_admin/application'
18
+
19
+ input[:data].gsub(/^((?:import|export) .+)$/) { "// #{Regexp.last_match(1)}" }
20
+ end
21
+ end
22
+ end
23
+ end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsAdmin
2
4
  class HashHelper
3
5
  def self.symbolize(obj)
@@ -1,8 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RailsAdmin
2
4
  class Version
3
5
  MAJOR = 3
4
- MINOR = 0
5
- PATCH = 0
6
+ MINOR = 1
7
+ PATCH = 2
6
8
  PRE = nil
7
9
 
8
10
  class << self
data/lib/rails_admin.rb CHANGED
@@ -1,6 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rails_admin/engine'
2
4
  require 'rails_admin/abstract_model'
3
5
  require 'rails_admin/config'
6
+ require 'rails_admin/config/const_load_suppressor'
4
7
  require 'rails_admin/extension'
5
8
  require 'rails_admin/extensions/cancancan'
6
9
  require 'rails_admin/extensions/pundit'
@@ -10,6 +13,8 @@ require 'rails_admin/support/hash_helper'
10
13
  require 'yaml'
11
14
 
12
15
  module RailsAdmin
16
+ extend RailsAdmin::Config::ConstLoadSuppressor
17
+
13
18
  # Setup RailsAdmin
14
19
  #
15
20
  # Given the first argument is a model class, a model class name
@@ -17,7 +22,7 @@ module RailsAdmin
17
22
  #
18
23
  # If only a block is passed it is stored to initializer stack to be evaluated
19
24
  # on first request in production mode and on each request in development. If
20
- # initialization has already occured (in other words RailsAdmin.setup has
25
+ # initialization has already occurred (in other words RailsAdmin.setup has
21
26
  # been called) the block will be added to stack and evaluated at once.
22
27
  #
23
28
  # Otherwise returns RailsAdmin::Config class.
@@ -27,7 +32,7 @@ module RailsAdmin
27
32
  if entity
28
33
  RailsAdmin::Config.model(entity, &block)
29
34
  elsif block_given?
30
- RailsAdmin::Config.apply(&block)
35
+ RailsAdmin::Config::ConstLoadSuppressor.suppressing { yield(RailsAdmin::Config) }
31
36
  else
32
37
  RailsAdmin::Config
33
38
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  namespace :rails_admin do
2
4
  desc 'Install rails_admin'
3
5
  task :install do
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rails_admin",
3
- "version": "3.0.0",
3
+ "version": "3.1.2",
4
4
  "description": "RailsAdmin is a Rails engine that provides an easy-to-use interface for managing your data.",
5
5
  "homepage": "https://github.com/railsadminteam/rails_admin",
6
6
  "license": "MIT",
@@ -15,7 +15,7 @@
15
15
  },
16
16
  "dependencies": {
17
17
  "@babel/runtime": "^7.16.7",
18
- "@fortawesome/fontawesome-free": "^5.15.4",
18
+ "@fortawesome/fontawesome-free": ">=5.15.0 <7.0.0",
19
19
  "@hotwired/turbo-rails": "^7.1.0",
20
20
  "@popperjs/core": "^2.11.0",
21
21
  "@rails/ujs": "^6.1.4-1",
@@ -1,9 +1,21 @@
1
1
  import Rails from "@rails/ujs";
2
2
  import "@hotwired/turbo-rails";
3
- import jQuery from "jquery";
3
+ import "./jquery";
4
4
  import "./vendor/jquery_nested_form";
5
5
  import "bootstrap";
6
- import "flatpickr/dist/flatpickr";
6
+
7
+ // These jQuery-UI indirect dependencies need to be preloaded to be used within Import maps
8
+ import "jquery-ui/ui/version.js";
9
+ import "jquery-ui/ui/keycode.js";
10
+ import "jquery-ui/ui/position.js";
11
+ import "jquery-ui/ui/safe-active-element.js";
12
+ import "jquery-ui/ui/data.js";
13
+ import "jquery-ui/ui/ie.js";
14
+ import "jquery-ui/ui/scroll-parent.js";
15
+ import "jquery-ui/ui/unique-id.js";
16
+ import "jquery-ui/ui/widget.js";
17
+ import "jquery-ui/ui/widgets/menu.js";
18
+ import "jquery-ui/ui/widgets/mouse.js";
7
19
 
8
20
  import "./filter-box";
9
21
  import "./filtering-multiselect";
@@ -15,4 +27,3 @@ import "./ui";
15
27
  import "./widgets";
16
28
 
17
29
  Rails.start();
18
- window.$ = window.jQuery = jQuery;