activeadmin 1.4.3 → 2.0.0

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 (164) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +92 -11
  3. data/CONTRIBUTING.md +12 -11
  4. data/README.md +34 -8
  5. data/app/assets/javascripts/active_admin/base.es6 +23 -0
  6. data/app/assets/javascripts/active_admin/ext/jquery-ui.es6 +7 -0
  7. data/app/assets/javascripts/active_admin/ext/jquery.es6 +9 -0
  8. data/app/assets/javascripts/active_admin/initializers/datepicker.es6 +16 -0
  9. data/app/assets/javascripts/active_admin/initializers/filters.es6 +45 -0
  10. data/app/assets/javascripts/active_admin/initializers/tabs.es6 +6 -0
  11. data/app/assets/javascripts/active_admin/lib/active_admin.es6 +41 -0
  12. data/app/assets/javascripts/active_admin/lib/batch_actions.es6 +55 -0
  13. data/app/assets/javascripts/active_admin/lib/checkbox-toggler.es6 +49 -0
  14. data/app/assets/javascripts/active_admin/lib/dropdown-menu.es6 +123 -0
  15. data/app/assets/javascripts/active_admin/lib/has_many.es6 +95 -0
  16. data/app/assets/javascripts/active_admin/lib/modal_dialog.es6 +61 -0
  17. data/app/assets/javascripts/active_admin/lib/per_page.es6 +47 -0
  18. data/app/assets/javascripts/active_admin/lib/table-checkbox-toggler.es6 +36 -0
  19. data/app/assets/stylesheets/active_admin/_forms.scss +2 -14
  20. data/app/assets/stylesheets/active_admin/components/_status_tags.scss +0 -5
  21. data/app/assets/stylesheets/active_admin/components/_tabs.scss +1 -1
  22. data/app/assets/stylesheets/active_admin/mixins/_gradients.scss +1 -1
  23. data/app/views/active_admin/devise/confirmations/new.html.erb +1 -1
  24. data/app/views/active_admin/devise/passwords/edit.html.erb +1 -1
  25. data/app/views/active_admin/devise/passwords/new.html.erb +1 -1
  26. data/app/views/active_admin/devise/registrations/new.html.erb +1 -2
  27. data/app/views/active_admin/devise/shared/_error_messages.html.erb +15 -0
  28. data/app/views/active_admin/devise/unlocks/new.html.erb +1 -1
  29. data/app/views/layouts/active_admin_logged_out.html.erb +1 -1
  30. data/config/locales/bg.yml +0 -1
  31. data/config/locales/he.yml +0 -1
  32. data/config/locales/hu.yml +4 -0
  33. data/config/locales/lt.yml +2 -2
  34. data/config/locales/uk.yml +2 -0
  35. data/docs/0-installation.md +2 -2
  36. data/docs/13-authorization-adapter.md +4 -4
  37. data/docs/CNAME +1 -1
  38. data/docs/index.html +2 -2
  39. data/lib/active_admin/application.rb +8 -14
  40. data/lib/active_admin/application_settings.rb +3 -0
  41. data/lib/active_admin/asset_registration.rb +0 -8
  42. data/lib/active_admin/base_controller/authorization.rb +2 -4
  43. data/lib/active_admin/base_controller.rb +6 -6
  44. data/lib/active_admin/batch_actions/controller.rb +1 -1
  45. data/lib/active_admin/batch_actions/resource_extension.rb +4 -4
  46. data/lib/active_admin/callbacks.rb +1 -1
  47. data/lib/active_admin/csv_builder.rb +1 -1
  48. data/lib/active_admin/dependency.rb +7 -75
  49. data/lib/active_admin/dsl.rb +1 -8
  50. data/lib/active_admin/error.rb +1 -1
  51. data/lib/active_admin/filters/active_filter.rb +3 -1
  52. data/lib/active_admin/filters/active_sidebar.rb +5 -1
  53. data/lib/active_admin/filters/forms.rb +2 -2
  54. data/lib/active_admin/filters/formtastic_addons.rb +1 -1
  55. data/lib/active_admin/filters/resource_extension.rb +3 -3
  56. data/lib/active_admin/form_builder.rb +3 -3
  57. data/lib/active_admin/generators/boilerplate.rb +1 -1
  58. data/lib/active_admin/helpers/scope_chain.rb +1 -0
  59. data/lib/active_admin/inputs/datepicker_input.rb +1 -1
  60. data/lib/active_admin/inputs/filters/base/search_method_select.rb +2 -2
  61. data/lib/active_admin/menu_item.rb +1 -1
  62. data/lib/active_admin/namespace.rb +2 -2
  63. data/lib/active_admin/namespace_settings.rb +7 -4
  64. data/lib/active_admin/orm/active_record/comments/comment.rb +2 -2
  65. data/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +10 -5
  66. data/lib/active_admin/orm/active_record/comments.rb +4 -4
  67. data/lib/active_admin/page_dsl.rb +1 -1
  68. data/lib/active_admin/pundit_adapter.rb +13 -4
  69. data/lib/active_admin/resource/action_items.rb +1 -1
  70. data/lib/active_admin/resource/attributes.rb +7 -4
  71. data/lib/active_admin/resource/menu.rb +3 -3
  72. data/lib/active_admin/resource/naming.rb +3 -3
  73. data/lib/active_admin/resource/routes.rb +9 -4
  74. data/lib/active_admin/resource/scopes.rb +3 -3
  75. data/lib/active_admin/resource/sidebars.rb +1 -1
  76. data/lib/active_admin/resource.rb +2 -2
  77. data/lib/active_admin/resource_collection.rb +2 -2
  78. data/lib/active_admin/resource_controller/action_builder.rb +10 -0
  79. data/lib/active_admin/resource_controller/resource_class_methods.rb +2 -0
  80. data/lib/active_admin/resource_dsl.rb +5 -3
  81. data/lib/active_admin/router.rb +1 -1
  82. data/lib/active_admin/scope.rb +4 -4
  83. data/lib/active_admin/settings_node.rb +1 -1
  84. data/lib/active_admin/version.rb +1 -1
  85. data/lib/active_admin/view_helpers/display_helper.rb +10 -2
  86. data/lib/active_admin/view_helpers/download_format_links_helper.rb +1 -0
  87. data/lib/active_admin/view_helpers/method_or_proc_helper.rb +2 -0
  88. data/lib/active_admin/view_helpers.rb +1 -1
  89. data/lib/active_admin/views/components/active_admin_form.rb +7 -1
  90. data/lib/active_admin/views/components/attributes_table.rb +3 -3
  91. data/lib/active_admin/views/components/paginated_collection.rb +1 -1
  92. data/lib/active_admin/views/components/sidebar_section.rb +0 -3
  93. data/lib/active_admin/views/components/status_tag.rb +1 -18
  94. data/lib/active_admin/views/components/table_for.rb +2 -2
  95. data/lib/active_admin/views/components/tabs.rb +11 -2
  96. data/lib/active_admin/views/footer.rb +1 -1
  97. data/lib/active_admin/views/index_as_table.rb +5 -4
  98. data/lib/active_admin/views/pages/base.rb +3 -0
  99. data/lib/active_admin/views.rb +1 -1
  100. data/lib/active_admin.rb +9 -4
  101. data/lib/generators/active_admin/assets/assets_generator.rb +2 -2
  102. data/lib/generators/active_admin/assets/templates/active_admin.js +1 -0
  103. data/lib/generators/active_admin/install/install_generator.rb +6 -2
  104. data/lib/generators/active_admin/install/templates/active_admin.rb.erb +20 -1
  105. data/lib/generators/active_admin/install/templates/dashboard.rb +2 -3
  106. data/lib/generators/active_admin/install/templates/migrations/create_active_admin_comments.rb.erb +1 -15
  107. data/lib/generators/active_admin/page/page_generator.rb +1 -1
  108. data/lib/generators/active_admin/resource/resource_generator.rb +1 -1
  109. data/lib/ransack_ext.rb +3 -3
  110. data/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js +80 -0
  111. data/vendor/assets/javascripts/jquery-ui/form.js +22 -0
  112. data/vendor/assets/javascripts/jquery-ui/labels.js +65 -0
  113. data/vendor/assets/javascripts/jquery-ui/widgets/checkboxradio.js +274 -283
  114. metadata +106 -95
  115. data/.circleci/config.yml +0 -572
  116. data/.github/ISSUE_TEMPLATE.md +0 -20
  117. data/.gitignore +0 -16
  118. data/.mdlrc +0 -1
  119. data/.rspec +0 -1
  120. data/.rspec_parallel +0 -2
  121. data/.rubocop.yml +0 -99
  122. data/.simplecov +0 -9
  123. data/.yardopts +0 -7
  124. data/Gemfile +0 -30
  125. data/Gemfile.common +0 -26
  126. data/Gemfile.lock +0 -433
  127. data/Rakefile +0 -24
  128. data/activeadmin.gemspec +0 -32
  129. data/app/assets/javascripts/active_admin/base.js.coffee +0 -13
  130. data/app/assets/javascripts/active_admin/ext/jquery-ui.js.coffee +0 -6
  131. data/app/assets/javascripts/active_admin/ext/jquery.js.coffee +0 -7
  132. data/app/assets/javascripts/active_admin/initializers/batch_actions.js.coffee +0 -11
  133. data/app/assets/javascripts/active_admin/initializers/datepicker.js.coffee +0 -14
  134. data/app/assets/javascripts/active_admin/initializers/filters.js.coffee +0 -26
  135. data/app/assets/javascripts/active_admin/initializers/tabs.js.coffee +0 -7
  136. data/app/assets/javascripts/active_admin/lib/batch_actions.js.coffee +0 -42
  137. data/app/assets/javascripts/active_admin/lib/checkbox-toggler.js.coffee +0 -46
  138. data/app/assets/javascripts/active_admin/lib/dropdown-menu.js.coffee +0 -104
  139. data/app/assets/javascripts/active_admin/lib/flash.js.coffee +0 -19
  140. data/app/assets/javascripts/active_admin/lib/has_many.js.coffee +0 -79
  141. data/app/assets/javascripts/active_admin/lib/modal_dialog.js.coffee +0 -45
  142. data/app/assets/javascripts/active_admin/lib/per_page.js.coffee +0 -46
  143. data/app/assets/javascripts/active_admin/lib/table-checkbox-toggler.js.coffee +0 -22
  144. data/bin/install_chromedriver.sh +0 -17
  145. data/config/i18n-tasks.yml +0 -26
  146. data/config/mdl_style.rb +0 -11
  147. data/cucumber.yml +0 -7
  148. data/gemfiles/rails_42.gemfile +0 -10
  149. data/gemfiles/rails_42.gemfile.lock +0 -339
  150. data/gemfiles/rails_50.gemfile +0 -10
  151. data/gemfiles/rails_50.gemfile.lock +0 -353
  152. data/gemfiles/rails_51.gemfile +0 -10
  153. data/gemfiles/rails_51.gemfile.lock +0 -353
  154. data/lib/active_admin/event.rb +0 -24
  155. data/lib/active_admin/helpers/output_safety_helper.rb +0 -35
  156. data/lib/bug_report_templates/active_admin_master.rb +0 -111
  157. data/lib/generators/active_admin/assets/templates/active_admin.js.coffee +0 -1
  158. data/tasks/application_generator.rb +0 -50
  159. data/tasks/docs.rake +0 -64
  160. data/tasks/gemfiles.rake +0 -8
  161. data/tasks/lint.rake +0 -110
  162. data/tasks/local.rake +0 -27
  163. data/tasks/release.rake +0 -6
  164. data/tasks/test.rake +0 -42
data/tasks/lint.rake DELETED
@@ -1,110 +0,0 @@
1
- require "open3"
2
-
3
- #
4
- # Common stuff for a linter
5
- #
6
- module LinterMixin
7
- def run
8
- offenses = []
9
-
10
- applicable_files.each do |file|
11
- if clean?(file)
12
- print "."
13
- else
14
- offenses << file
15
- print "F"
16
- end
17
- end
18
-
19
- print "\n"
20
-
21
- return if offenses.empty?
22
-
23
- raise failure_message_for(offenses)
24
- end
25
-
26
- private
27
-
28
- def applicable_files
29
- Open3.capture2("git grep -Il ''")[0].split.reject { |file| file =~ %r{vendor/} }
30
- end
31
-
32
- def failure_message_for(offenses)
33
- msg = "#{self.class.name} detected offenses. "
34
-
35
- msg += if respond_to?(:fixing_cmd)
36
- "Run `#{fixing_cmd(offenses)}` to fix them."
37
- else
38
- "Affected files: #{offenses.join(' ')}"
39
- end
40
-
41
- msg
42
- end
43
- end
44
-
45
- #
46
- # Checks trailing whitespace
47
- #
48
- class TrailingWhitespaceLinter
49
- include LinterMixin
50
-
51
- def clean?(file)
52
- File.read(file, encoding: Encoding::UTF_8) !~ / +$/
53
- end
54
- end
55
-
56
- #
57
- # Checks trailing whitespace
58
- #
59
- class FixmeLinter
60
- include LinterMixin
61
-
62
- def clean?(file)
63
- relative_path = Pathname.new(__FILE__).relative_path_from(Pathname.new(File.dirname(__dir__))).to_s
64
-
65
- file == relative_path || File.read(file, encoding: Encoding::UTF_8) !~ /(BUG|FIXME)/
66
- end
67
- end
68
-
69
- desc "Lints ActiveAdmin code base"
70
- task lint: ["lint:rubocop", "lint:mdl", "lint:trailing_whitespace", "lint:fixme", "lint:rspec"]
71
-
72
- namespace :lint do
73
- require "rubocop/rake_task"
74
- desc "Checks ruby code style with RuboCop"
75
- RuboCop::RakeTask.new
76
-
77
- desc "Checks markdown code style with Markdownlint"
78
- task :mdl do
79
- puts "Running mdl..."
80
-
81
- sh("mdl", "--git-recurse", ".")
82
- end
83
-
84
- desc "Check for unnecessary trailing whitespace across all repo files"
85
- task :trailing_whitespace do
86
- puts "Checking for unnecessary trailing whitespace..."
87
-
88
- TrailingWhitespaceLinter.new.run
89
- end
90
-
91
- desc "Check for FIXME strings that should be fixed now, not later"
92
- task :fixme do
93
- puts "Checking for FIXME strings..."
94
-
95
- FixmeLinter.new.run
96
- end
97
-
98
- desc "RSpec specs for linting project files"
99
- task :rspec do
100
- puts "Linting project files..."
101
-
102
- sh(
103
- { "COVERAGE" => "true" },
104
- "rspec",
105
- "spec/gemfiles_spec.lint.rb",
106
- "spec/changelog_spec.lint.rb",
107
- "spec/i18n_spec.lint.rb"
108
- )
109
- end
110
- end
data/tasks/local.rake DELETED
@@ -1,27 +0,0 @@
1
- require_relative "application_generator"
2
-
3
- desc 'Run a command against the local sample application'
4
- task :local do
5
- app_folder = ActiveAdmin::ApplicationGenerator.new(
6
- rails_env: 'development',
7
- template: 'rails_template_with_data'
8
- ).generate
9
-
10
- # Discard the "local" argument (name of the task)
11
- argv = ARGV[1..-1]
12
-
13
- # If it's a rails command, or we're using Rails 5, auto add the rails script
14
- rails_commands = %w(generate console server db dbconsole g c s runner)
15
-
16
- if Rails::VERSION::MAJOR >= 5 || rails_commands.include?(argv[0])
17
- argv.unshift('rails')
18
- end
19
-
20
- command = ['bundle', 'exec', *argv].join(' ')
21
- gemfile = ENV['BUNDLE_GEMFILE'] || File.expand_path("../Gemfile", __dir__)
22
- env = { 'BUNDLE_GEMFILE' => gemfile }
23
-
24
- Dir.chdir(app_folder) do
25
- Bundler.with_original_env { Kernel.exec(env, command) }
26
- end
27
- end
data/tasks/release.rake DELETED
@@ -1,6 +0,0 @@
1
- require "chandler/tasks"
2
-
3
- #
4
- # Add chandler as a prerequisite for `rake release`
5
- #
6
- task "release:rubygem_push" => "chandler:push"
data/tasks/test.rake DELETED
@@ -1,42 +0,0 @@
1
- require_relative "application_generator"
2
-
3
- desc "Run the full suite using parallel_tests to run on multiple cores"
4
- task test: [:setup, :spec, :cucumber]
5
-
6
- desc "Create a test rails app for the parallel specs to run against"
7
- task :setup, [:rails_env, :template] do |_t, opts|
8
- ActiveAdmin::ApplicationGenerator.new(opts).generate
9
- end
10
-
11
- desc "Run the specs in parallel"
12
- task :spec do
13
- sh("parallel_rspec --serialize-stdout --combine-stderr --verbose spec/")
14
- end
15
-
16
- namespace :spec do
17
-
18
- %i(unit request).each do |type|
19
- desc "Run the #{type} specs in parallel"
20
- task type do
21
- sh("parallel_rspec --serialize-stdout --combine-stderr --verbose spec/#{type}")
22
- end
23
- end
24
-
25
- end
26
-
27
- desc "Run the cucumber scenarios in parallel"
28
- task cucumber: [:"cucumber:regular", :"cucumber:reloading"]
29
-
30
- namespace :cucumber do
31
-
32
- desc "Run the standard cucumber scenarios in parallel"
33
- task :regular do
34
- sh("parallel_cucumber --serialize-stdout --combine-stderr --verbose features/")
35
- end
36
-
37
- desc "Run the cucumber scenarios that test reloading"
38
- task :reloading do
39
- sh("cucumber --profile class-reloading")
40
- end
41
-
42
- end