activeadmin 2.2.0 → 2.6.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of activeadmin might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CHANGELOG.md +111 -30
- data/CONTRIBUTING.md +50 -44
- data/README.md +9 -2
- data/app/assets/javascripts/active_admin/base.js +519 -0
- data/app/assets/stylesheets/active_admin/_base.scss +29 -29
- data/app/assets/stylesheets/active_admin/_header.scss +3 -5
- data/app/assets/stylesheets/active_admin/_mixins.scss +1 -1
- data/{vendor → app}/assets/stylesheets/active_admin/_normalize.scss +0 -0
- data/app/assets/stylesheets/active_admin/components/_tables.scss +1 -2
- data/app/assets/stylesheets/active_admin/mixins/_all.scss +8 -8
- data/app/assets/stylesheets/active_admin/mixins/_variables.scss +5 -0
- data/app/assets/stylesheets/active_admin/print.scss +2 -2
- data/app/assets/stylesheets/active_admin/structure/_main_structure.scss +1 -1
- data/app/javascript/active_admin/base.js +28 -0
- data/app/{assets/javascripts/active_admin/ext/jquery-ui.es6 → javascript/active_admin/ext/jquery-ui.js} +0 -0
- data/app/{assets/javascripts/active_admin/ext/jquery.es6 → javascript/active_admin/ext/jquery.js} +0 -0
- data/app/{assets/javascripts/active_admin/lib/batch_actions.es6 → javascript/active_admin/initializers/batch-actions.js} +9 -3
- data/app/javascript/active_admin/initializers/checkbox-toggler.js +3 -0
- data/app/{assets/javascripts/active_admin/initializers/datepicker.es6 → javascript/active_admin/initializers/datepicker.js} +0 -0
- data/app/javascript/active_admin/initializers/dropdown-menu.js +9 -0
- data/app/javascript/active_admin/initializers/filters.js +10 -0
- data/app/{assets/javascripts/active_admin/lib/has_many.es6 → javascript/active_admin/initializers/has-many.js} +0 -0
- data/app/javascript/active_admin/initializers/per-page.js +13 -0
- data/app/javascript/active_admin/initializers/table-checkbox-toggler.js +3 -0
- data/app/{assets/javascripts/active_admin/initializers/tabs.es6 → javascript/active_admin/initializers/tabs.js} +0 -0
- data/app/{assets/javascripts/active_admin/lib/checkbox-toggler.es6 → javascript/active_admin/lib/checkbox-toggler.js} +2 -2
- data/app/{assets/javascripts/active_admin/lib/dropdown-menu.es6 → javascript/active_admin/lib/dropdown-menu.js} +2 -9
- data/app/javascript/active_admin/lib/filters.js +39 -0
- data/app/{assets/javascripts/active_admin/lib/modal_dialog.es6 → javascript/active_admin/lib/modal-dialog.js} +3 -1
- data/app/javascript/active_admin/lib/per-page.js +38 -0
- data/app/{assets/javascripts/active_admin/lib/table-checkbox-toggler.es6 → javascript/active_admin/lib/table-checkbox-toggler.js} +4 -2
- data/app/javascript/active_admin/lib/utils.js +40 -0
- data/app/views/kaminari/active_admin_countless/_first_page.html.erb +11 -0
- data/app/views/kaminari/active_admin_countless/_gap.html.erb +8 -0
- data/app/views/kaminari/active_admin_countless/_next_page.html.erb +11 -0
- data/app/views/kaminari/active_admin_countless/_page.html.erb +12 -0
- data/app/views/kaminari/active_admin_countless/_paginator.html.erb +24 -0
- data/app/views/kaminari/active_admin_countless/_prev_page.html.erb +11 -0
- data/config/locales/az.yml +138 -0
- data/config/locales/ca.yml +0 -1
- data/config/locales/de.yml +18 -0
- data/config/locales/es.yml +3 -3
- data/config/locales/fr.yml +4 -4
- data/config/locales/sk.yml +59 -0
- data/docs/1-general-configuration.md +20 -0
- data/docs/2-resource-customization.md +1 -1
- data/docs/3-index-pages.md +1 -1
- data/docs/3-index-pages/index-as-table.md +7 -0
- data/docs/9-batch-actions.md +2 -2
- data/docs/Gemfile +0 -1
- data/docs/Gemfile.lock +103 -105
- data/docs/_config.yml +2 -0
- data/docs/_includes/top-menu.html +2 -2
- data/docs/index.html +108 -7
- data/docs/stylesheets/main.css +29 -0
- data/lib/active_admin.rb +0 -1
- data/lib/active_admin/application.rb +1 -1
- data/lib/active_admin/csv_builder.rb +1 -2
- data/lib/active_admin/filters/active_filter.rb +1 -1
- data/lib/active_admin/filters/resource_extension.rb +24 -0
- data/lib/active_admin/generators/boilerplate.rb +12 -4
- data/lib/active_admin/inputs/filters/date_range_input.rb +15 -12
- data/lib/active_admin/namespace_settings.rb +13 -0
- data/lib/active_admin/order_clause.rb +1 -1
- data/lib/active_admin/resource.rb +14 -1
- data/lib/active_admin/resource/belongs_to.rb +3 -0
- data/lib/active_admin/resource/model.rb +15 -0
- data/lib/active_admin/resource/routes.rb +11 -3
- data/lib/active_admin/resource_controller.rb +2 -0
- data/lib/active_admin/resource_controller/decorators.rb +2 -2
- data/lib/active_admin/resource_controller/polymorphic_routes.rb +37 -0
- data/lib/active_admin/version.rb +1 -1
- data/lib/active_admin/views/components/paginated_collection.rb +3 -2
- data/lib/active_admin/views/components/table_for.rb +1 -0
- data/lib/active_admin/views/index_as_table.rb +7 -0
- data/lib/active_admin/views/pages/base.rb +5 -3
- data/lib/active_admin/views/pages/index.rb +1 -0
- data/lib/generators/active_admin/install/templates/active_admin.rb.erb +14 -1
- data/lib/generators/active_admin/resource/templates/admin.rb.erb +4 -2
- metadata +35 -43
- data/app/assets/images/active_admin/nested_menu_arrow.gif +0 -0
- data/app/assets/images/active_admin/nested_menu_arrow_dark.gif +0 -0
- data/app/assets/images/active_admin/orderable.png +0 -0
- data/app/assets/javascripts/active_admin/base.es6 +0 -23
- data/app/assets/javascripts/active_admin/initializers/filters.es6 +0 -45
- data/app/assets/javascripts/active_admin/lib/active_admin.es6 +0 -41
- data/app/assets/javascripts/active_admin/lib/per_page.es6 +0 -47
@@ -33,7 +33,7 @@ module ActiveAdmin
|
|
33
33
|
end
|
34
34
|
|
35
35
|
active_admin_namespace.meta_tags.each do |name, content|
|
36
|
-
text_node(
|
36
|
+
text_node(meta(name: name, content: content))
|
37
37
|
end
|
38
38
|
|
39
39
|
active_admin_application.javascripts.each do |path|
|
@@ -85,8 +85,10 @@ module ActiveAdmin
|
|
85
85
|
|
86
86
|
def build_flash_messages
|
87
87
|
div class: 'flashes' do
|
88
|
-
flash_messages.each do |type,
|
89
|
-
|
88
|
+
flash_messages.each do |type, messages|
|
89
|
+
[*messages].each do |message|
|
90
|
+
div message, class: "flash flash_#{type}"
|
91
|
+
end
|
90
92
|
end
|
91
93
|
end
|
92
94
|
end
|
@@ -124,6 +124,7 @@ module ActiveAdmin
|
|
124
124
|
|
125
125
|
def render_index
|
126
126
|
renderer_class = find_index_renderer_class(config[:as])
|
127
|
+
|
127
128
|
paginator = config.fetch(:paginator, true)
|
128
129
|
download_links = config.fetch(:download_links, active_admin_config.namespace.download_links)
|
129
130
|
pagination_total = config.fetch(:pagination_total, true)
|
@@ -286,12 +286,25 @@ ActiveAdmin.setup do |config|
|
|
286
286
|
# config.filters = true
|
287
287
|
#
|
288
288
|
# By default the filters include associations in a select, which means
|
289
|
-
# that every record will be loaded for each association
|
289
|
+
# that every record will be loaded for each association (up
|
290
|
+
# to the value of config.maximum_association_filter_arity).
|
290
291
|
# You can enabled or disable the inclusion
|
291
292
|
# of those filters by default here.
|
292
293
|
#
|
293
294
|
# config.include_default_association_filters = true
|
294
295
|
|
296
|
+
# config.maximum_association_filter_arity = 256 # default value of :unlimited will change to 256 in a future version
|
297
|
+
# config.filter_columns_for_large_association, [
|
298
|
+
# :display_name,
|
299
|
+
# :full_name,
|
300
|
+
# :name,
|
301
|
+
# :username,
|
302
|
+
# :login,
|
303
|
+
# :title,
|
304
|
+
# :email,
|
305
|
+
# ]
|
306
|
+
# config.filter_method_for_large_association, '_starts_with'
|
307
|
+
|
295
308
|
# == Head
|
296
309
|
#
|
297
310
|
# You can add your own content to the site head like analytics. Make sure
|
@@ -3,12 +3,14 @@ ActiveAdmin.register <%= class_name %> do
|
|
3
3
|
# See permitted parameters documentation:
|
4
4
|
# https://github.com/activeadmin/activeadmin/blob/master/docs/2-resource-customization.md#setting-up-strong-parameters
|
5
5
|
#
|
6
|
-
#
|
6
|
+
# Uncomment all parameters which should be permitted for assignment
|
7
|
+
#
|
8
|
+
# permit_params <%= @boilerplate.permit_params %>
|
7
9
|
#
|
8
10
|
# or
|
9
11
|
#
|
10
12
|
# permit_params do
|
11
|
-
# permitted = [
|
13
|
+
# permitted = [<%= @boilerplate.permit_params %>]
|
12
14
|
# permitted << :other if params[:action] == 'create' && current_user.admin?
|
13
15
|
# permitted
|
14
16
|
# end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activeadmin
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Charles Maresh
|
@@ -15,7 +15,7 @@ authors:
|
|
15
15
|
autorequire:
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
|
-
date: 2019-
|
18
|
+
date: 2019-12-16 00:00:00.000000000 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: arbre
|
@@ -119,7 +119,7 @@ dependencies:
|
|
119
119
|
requirements:
|
120
120
|
- - ">="
|
121
121
|
- !ruby/object:Gem::Version
|
122
|
-
version: '5.
|
122
|
+
version: '5.2'
|
123
123
|
- - "<"
|
124
124
|
- !ruby/object:Gem::Version
|
125
125
|
version: '6.1'
|
@@ -129,7 +129,7 @@ dependencies:
|
|
129
129
|
requirements:
|
130
130
|
- - ">="
|
131
131
|
- !ruby/object:Gem::Version
|
132
|
-
version: '5.
|
132
|
+
version: '5.2'
|
133
133
|
- - "<"
|
134
134
|
- !ruby/object:Gem::Version
|
135
135
|
version: '6.1'
|
@@ -187,26 +187,6 @@ dependencies:
|
|
187
187
|
- - "<"
|
188
188
|
- !ruby/object:Gem::Version
|
189
189
|
version: '4.1'
|
190
|
-
- !ruby/object:Gem::Dependency
|
191
|
-
name: sprockets-es6
|
192
|
-
requirement: !ruby/object:Gem::Requirement
|
193
|
-
requirements:
|
194
|
-
- - "~>"
|
195
|
-
- !ruby/object:Gem::Version
|
196
|
-
version: '0.9'
|
197
|
-
- - ">="
|
198
|
-
- !ruby/object:Gem::Version
|
199
|
-
version: 0.9.2
|
200
|
-
type: :runtime
|
201
|
-
prerelease: false
|
202
|
-
version_requirements: !ruby/object:Gem::Requirement
|
203
|
-
requirements:
|
204
|
-
- - "~>"
|
205
|
-
- !ruby/object:Gem::Version
|
206
|
-
version: '0.9'
|
207
|
-
- - ">="
|
208
|
-
- !ruby/object:Gem::Version
|
209
|
-
version: 0.9.2
|
210
190
|
description: The administration framework for Ruby on Rails.
|
211
191
|
email:
|
212
192
|
- deivid.rodriguez@riseup.net
|
@@ -223,27 +203,12 @@ files:
|
|
223
203
|
- CONTRIBUTING.md
|
224
204
|
- LICENSE
|
225
205
|
- README.md
|
226
|
-
- app/assets/
|
227
|
-
- app/assets/images/active_admin/nested_menu_arrow_dark.gif
|
228
|
-
- app/assets/images/active_admin/orderable.png
|
229
|
-
- app/assets/javascripts/active_admin/base.es6
|
230
|
-
- app/assets/javascripts/active_admin/ext/jquery-ui.es6
|
231
|
-
- app/assets/javascripts/active_admin/ext/jquery.es6
|
232
|
-
- app/assets/javascripts/active_admin/initializers/datepicker.es6
|
233
|
-
- app/assets/javascripts/active_admin/initializers/filters.es6
|
234
|
-
- app/assets/javascripts/active_admin/initializers/tabs.es6
|
235
|
-
- app/assets/javascripts/active_admin/lib/active_admin.es6
|
236
|
-
- app/assets/javascripts/active_admin/lib/batch_actions.es6
|
237
|
-
- app/assets/javascripts/active_admin/lib/checkbox-toggler.es6
|
238
|
-
- app/assets/javascripts/active_admin/lib/dropdown-menu.es6
|
239
|
-
- app/assets/javascripts/active_admin/lib/has_many.es6
|
240
|
-
- app/assets/javascripts/active_admin/lib/modal_dialog.es6
|
241
|
-
- app/assets/javascripts/active_admin/lib/per_page.es6
|
242
|
-
- app/assets/javascripts/active_admin/lib/table-checkbox-toggler.es6
|
206
|
+
- app/assets/javascripts/active_admin/base.js
|
243
207
|
- app/assets/stylesheets/active_admin/_base.scss
|
244
208
|
- app/assets/stylesheets/active_admin/_forms.scss
|
245
209
|
- app/assets/stylesheets/active_admin/_header.scss
|
246
210
|
- app/assets/stylesheets/active_admin/_mixins.scss
|
211
|
+
- app/assets/stylesheets/active_admin/_normalize.scss
|
247
212
|
- app/assets/stylesheets/active_admin/_typography.scss
|
248
213
|
- app/assets/stylesheets/active_admin/components/_batch_actions.scss
|
249
214
|
- app/assets/stylesheets/active_admin/components/_blank_slates.scss
|
@@ -280,6 +245,25 @@ files:
|
|
280
245
|
- app/assets/stylesheets/active_admin/structure/_footer.scss
|
281
246
|
- app/assets/stylesheets/active_admin/structure/_main_structure.scss
|
282
247
|
- app/assets/stylesheets/active_admin/structure/_title_bar.scss
|
248
|
+
- app/javascript/active_admin/base.js
|
249
|
+
- app/javascript/active_admin/ext/jquery-ui.js
|
250
|
+
- app/javascript/active_admin/ext/jquery.js
|
251
|
+
- app/javascript/active_admin/initializers/batch-actions.js
|
252
|
+
- app/javascript/active_admin/initializers/checkbox-toggler.js
|
253
|
+
- app/javascript/active_admin/initializers/datepicker.js
|
254
|
+
- app/javascript/active_admin/initializers/dropdown-menu.js
|
255
|
+
- app/javascript/active_admin/initializers/filters.js
|
256
|
+
- app/javascript/active_admin/initializers/has-many.js
|
257
|
+
- app/javascript/active_admin/initializers/per-page.js
|
258
|
+
- app/javascript/active_admin/initializers/table-checkbox-toggler.js
|
259
|
+
- app/javascript/active_admin/initializers/tabs.js
|
260
|
+
- app/javascript/active_admin/lib/checkbox-toggler.js
|
261
|
+
- app/javascript/active_admin/lib/dropdown-menu.js
|
262
|
+
- app/javascript/active_admin/lib/filters.js
|
263
|
+
- app/javascript/active_admin/lib/modal-dialog.js
|
264
|
+
- app/javascript/active_admin/lib/per-page.js
|
265
|
+
- app/javascript/active_admin/lib/table-checkbox-toggler.js
|
266
|
+
- app/javascript/active_admin/lib/utils.js
|
283
267
|
- app/views/active_admin/devise/confirmations/new.html.erb
|
284
268
|
- app/views/active_admin/devise/mailer/reset_password_instructions.html.erb
|
285
269
|
- app/views/active_admin/devise/mailer/unlock_instructions.html.erb
|
@@ -302,9 +286,16 @@ files:
|
|
302
286
|
- app/views/kaminari/active_admin/_page.html.erb
|
303
287
|
- app/views/kaminari/active_admin/_paginator.html.erb
|
304
288
|
- app/views/kaminari/active_admin/_prev_page.html.erb
|
289
|
+
- app/views/kaminari/active_admin_countless/_first_page.html.erb
|
290
|
+
- app/views/kaminari/active_admin_countless/_gap.html.erb
|
291
|
+
- app/views/kaminari/active_admin_countless/_next_page.html.erb
|
292
|
+
- app/views/kaminari/active_admin_countless/_page.html.erb
|
293
|
+
- app/views/kaminari/active_admin_countless/_paginator.html.erb
|
294
|
+
- app/views/kaminari/active_admin_countless/_prev_page.html.erb
|
305
295
|
- app/views/layouts/active_admin.html.arb
|
306
296
|
- app/views/layouts/active_admin_logged_out.html.erb
|
307
297
|
- config/locales/ar.yml
|
298
|
+
- config/locales/az.yml
|
308
299
|
- config/locales/bg.yml
|
309
300
|
- config/locales/bs.yml
|
310
301
|
- config/locales/ca.yml
|
@@ -471,6 +462,7 @@ files:
|
|
471
462
|
- lib/active_admin/resource/controllers.rb
|
472
463
|
- lib/active_admin/resource/includes.rb
|
473
464
|
- lib/active_admin/resource/menu.rb
|
465
|
+
- lib/active_admin/resource/model.rb
|
474
466
|
- lib/active_admin/resource/naming.rb
|
475
467
|
- lib/active_admin/resource/ordering.rb
|
476
468
|
- lib/active_admin/resource/page_presenters.rb
|
@@ -484,6 +476,7 @@ files:
|
|
484
476
|
- lib/active_admin/resource_controller/action_builder.rb
|
485
477
|
- lib/active_admin/resource_controller/data_access.rb
|
486
478
|
- lib/active_admin/resource_controller/decorators.rb
|
479
|
+
- lib/active_admin/resource_controller/polymorphic_routes.rb
|
487
480
|
- lib/active_admin/resource_controller/resource_class_methods.rb
|
488
481
|
- lib/active_admin/resource_controller/scoping.rb
|
489
482
|
- lib/active_admin/resource_controller/sidebars.rb
|
@@ -587,7 +580,6 @@ files:
|
|
587
580
|
- vendor/assets/javascripts/jquery-ui/widgets/resizable.js
|
588
581
|
- vendor/assets/javascripts/jquery-ui/widgets/sortable.js
|
589
582
|
- vendor/assets/javascripts/jquery-ui/widgets/tabs.js
|
590
|
-
- vendor/assets/stylesheets/active_admin/_normalize.scss
|
591
583
|
homepage: https://activeadmin.info
|
592
584
|
licenses:
|
593
585
|
- MIT
|
@@ -607,7 +599,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
607
599
|
- !ruby/object:Gem::Version
|
608
600
|
version: '0'
|
609
601
|
requirements: []
|
610
|
-
rubygems_version: 3.
|
602
|
+
rubygems_version: 3.1.1
|
611
603
|
signing_key:
|
612
604
|
specification_version: 4
|
613
605
|
summary: Active Admin is a Ruby on Rails plugin for generating administration style
|
Binary file
|
Binary file
|
Binary file
|
@@ -1,23 +0,0 @@
|
|
1
|
-
//= require jquery3
|
2
|
-
//= require jquery-ui/widgets/datepicker
|
3
|
-
//= require jquery-ui/widgets/dialog
|
4
|
-
//= require jquery-ui/widgets/sortable
|
5
|
-
//= require jquery-ui/widgets/tabs
|
6
|
-
//= require jquery-ui/widget
|
7
|
-
//= require jquery_ujs
|
8
|
-
//= require_self
|
9
|
-
//= require ./ext/jquery
|
10
|
-
//= require ./ext/jquery-ui
|
11
|
-
//= require ./lib/active_admin
|
12
|
-
//= require ./lib/batch_actions
|
13
|
-
//= require ./lib/dropdown-menu
|
14
|
-
//= require ./lib/has_many
|
15
|
-
//= require ./lib/modal_dialog
|
16
|
-
//= require ./lib/per_page
|
17
|
-
//= require ./lib/checkbox-toggler
|
18
|
-
//= require ./lib/table-checkbox-toggler
|
19
|
-
//= require ./initializers/datepicker
|
20
|
-
//= require ./initializers/filters
|
21
|
-
//= require ./initializers/tabs
|
22
|
-
|
23
|
-
window.ActiveAdmin = {}
|
@@ -1,45 +0,0 @@
|
|
1
|
-
(($, ActiveAdmin) => {
|
2
|
-
|
3
|
-
class Filters {
|
4
|
-
|
5
|
-
static _clearForm(event) {
|
6
|
-
const regex = /^(q\[|q%5B|q%5b|page|utf8|commit)/;
|
7
|
-
const params = ActiveAdmin
|
8
|
-
.queryStringToParams()
|
9
|
-
.filter(({name}) => !name.match(regex));
|
10
|
-
|
11
|
-
event.preventDefault();
|
12
|
-
|
13
|
-
if (ActiveAdmin.turbolinks) {
|
14
|
-
ActiveAdmin.turbolinksVisit(params);
|
15
|
-
} else {
|
16
|
-
window.location.search = ActiveAdmin.toQueryString(params);
|
17
|
-
}
|
18
|
-
}
|
19
|
-
|
20
|
-
static _disableEmptyInputFields(event) {
|
21
|
-
const params = $(this)
|
22
|
-
.find(':input')
|
23
|
-
.filter((i, input) => input.value === '')
|
24
|
-
.prop({ disabled: true })
|
25
|
-
.end()
|
26
|
-
.serializeArray();
|
27
|
-
|
28
|
-
if (ActiveAdmin.turbolinks) {
|
29
|
-
event.preventDefault();
|
30
|
-
ActiveAdmin.turbolinksVisit(params);
|
31
|
-
}
|
32
|
-
}
|
33
|
-
|
34
|
-
static _setSearchType() {
|
35
|
-
$(this).siblings('input').prop({name: `q[${this.value}]`});
|
36
|
-
}
|
37
|
-
|
38
|
-
}
|
39
|
-
|
40
|
-
$(document).
|
41
|
-
on('click', '.clear_filters_btn', Filters._clearForm).
|
42
|
-
on('submit', '.filter_form', Filters._disableEmptyInputFields).
|
43
|
-
on('change', '.filter_form_field.select_and_search select', Filters._setSearchType);
|
44
|
-
|
45
|
-
})(jQuery, window.activeadmin);
|
@@ -1,41 +0,0 @@
|
|
1
|
-
((window, $) => {
|
2
|
-
|
3
|
-
class ActiveAdmin {
|
4
|
-
|
5
|
-
static get turbolinks() {
|
6
|
-
return (typeof Turbolinks !== 'undefined' && Turbolinks.supported);
|
7
|
-
}
|
8
|
-
|
9
|
-
static turbolinksVisit(params) {
|
10
|
-
const path = [window.location.pathname, '?', this.toQueryString(params)].join('')
|
11
|
-
Turbolinks.visit(path);
|
12
|
-
}
|
13
|
-
|
14
|
-
static queryString() {
|
15
|
-
return (window.location.search || '').replace(/^\?/, '');
|
16
|
-
}
|
17
|
-
|
18
|
-
static queryStringToParams() {
|
19
|
-
const decode = (value) => decodeURIComponent((value || '').replace(/\+/g, '%20'));
|
20
|
-
|
21
|
-
return this.queryString()
|
22
|
-
.split("&")
|
23
|
-
.map(pair => pair.split("="))
|
24
|
-
.map(([key, value]) => {
|
25
|
-
return { name: decode(key), value: decode(value) }
|
26
|
-
});
|
27
|
-
}
|
28
|
-
|
29
|
-
static toQueryString(params) {
|
30
|
-
const encode = (value) => encodeURIComponent(value || '');
|
31
|
-
|
32
|
-
return params
|
33
|
-
.map(({name, value}) => [ encode(name), encode(value) ])
|
34
|
-
.map(pair => pair.join('='))
|
35
|
-
.join('&')
|
36
|
-
}
|
37
|
-
}
|
38
|
-
|
39
|
-
window.activeadmin = ActiveAdmin
|
40
|
-
|
41
|
-
})(window, jQuery);
|
@@ -1,47 +0,0 @@
|
|
1
|
-
(($, ActiveAdmin) => {
|
2
|
-
|
3
|
-
class PerPage {
|
4
|
-
constructor(element) {
|
5
|
-
this.element = element;
|
6
|
-
}
|
7
|
-
|
8
|
-
update() {
|
9
|
-
const params = ActiveAdmin
|
10
|
-
.queryStringToParams()
|
11
|
-
.filter(({name}) => name != 'per_page' || name != 'page')
|
12
|
-
|
13
|
-
params.push({ name: 'per_page', value: this.element.value });
|
14
|
-
|
15
|
-
if (ActiveAdmin.turbolinks) {
|
16
|
-
ActiveAdmin.turbolinksVisit(params);
|
17
|
-
} else {
|
18
|
-
window.location.search = ActiveAdmin.toQueryString(params);
|
19
|
-
}
|
20
|
-
}
|
21
|
-
|
22
|
-
static _jQueryInterface(config) {
|
23
|
-
return this.each(function () {
|
24
|
-
const $this = $(this)
|
25
|
-
let data = $this.data('perPage')
|
26
|
-
|
27
|
-
if (!data) {
|
28
|
-
data = new PerPage(this)
|
29
|
-
$this.data('perPage', data)
|
30
|
-
}
|
31
|
-
|
32
|
-
if (config === 'update') {
|
33
|
-
data[config]()
|
34
|
-
}
|
35
|
-
})
|
36
|
-
}
|
37
|
-
};
|
38
|
-
|
39
|
-
$(document).
|
40
|
-
on('change', '.pagination_per_page > select', function(event) {
|
41
|
-
PerPage._jQueryInterface.call($(this), 'update')
|
42
|
-
});
|
43
|
-
|
44
|
-
$.fn['perPage'] = PerPage._jQueryInterface
|
45
|
-
$.fn['perPage'].Constructor = PerPage
|
46
|
-
|
47
|
-
})(jQuery, window.activeadmin);
|