activeadmin-rails 1.7.2 → 1.8.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 (99) hide show
  1. checksums.yaml +4 -4
  2. data/.babelrc +5 -0
  3. data/.github/workflows/ci.yaml +3 -18
  4. data/.github/workflows/daily.yaml +6 -18
  5. data/.github/workflows/pages.yml +1 -1
  6. data/.gitignore +2 -0
  7. data/CHANGELOG.md +25 -3
  8. data/CONTRIBUTING.md +1 -1
  9. data/Gemfile +2 -1
  10. data/Rakefile +1 -0
  11. data/activeadmin-rails.gemspec +2 -5
  12. data/app/assets/javascripts/active_admin/base.js +507 -0
  13. data/app/assets/stylesheets/active_admin/_base.scss +4 -1
  14. data/app/assets/stylesheets/active_admin/_forms.scss +11 -10
  15. data/app/assets/stylesheets/active_admin/_header.scss +22 -19
  16. data/app/assets/stylesheets/active_admin/_index.scss +7 -0
  17. data/app/assets/stylesheets/active_admin/components/_batch_actions.scss +2 -4
  18. data/app/assets/stylesheets/active_admin/components/_blank_slates.scss +1 -1
  19. data/app/assets/stylesheets/active_admin/components/_comments.scss +8 -6
  20. data/app/assets/stylesheets/active_admin/components/_date_picker.scss +4 -4
  21. data/app/assets/stylesheets/active_admin/components/_dropdown_menu.scss +20 -15
  22. data/app/assets/stylesheets/active_admin/components/_flash_messages.scss +3 -3
  23. data/app/assets/stylesheets/active_admin/components/_pagination.scss +21 -14
  24. data/app/assets/stylesheets/active_admin/components/_status_tags.scss +3 -1
  25. data/app/assets/stylesheets/active_admin/components/_table_tools.scss +13 -13
  26. data/app/assets/stylesheets/active_admin/components/_tables.scss +8 -7
  27. data/app/assets/stylesheets/active_admin/components/_tabs.scss +10 -7
  28. data/app/assets/stylesheets/active_admin/mixins/_all.scss +0 -4
  29. data/app/assets/stylesheets/active_admin/mixins/_buttons.scss +22 -15
  30. data/app/assets/stylesheets/active_admin/mixins/_gradients.scss +7 -5
  31. data/app/assets/stylesheets/active_admin/mixins/_sections.scss +4 -4
  32. data/app/assets/stylesheets/active_admin/mixins/_variables.scss +14 -3
  33. data/app/assets/stylesheets/active_admin/pages/_logged_out.scss +10 -6
  34. data/app/assets/stylesheets/active_admin/structure/_footer.scss +8 -1
  35. data/app/assets/stylesheets/active_admin/structure/_title_bar.scss +19 -8
  36. data/app/javascript/active_admin/base.js +28 -0
  37. data/app/{assets/javascripts/active_admin/lib/batch_actions.es6 → javascript/active_admin/initializers/batch-actions.js} +5 -3
  38. data/app/javascript/active_admin/initializers/checkbox-toggler.js +3 -0
  39. data/app/javascript/active_admin/initializers/dropdown-menu.js +9 -0
  40. data/app/javascript/active_admin/initializers/filters.js +10 -0
  41. data/app/{assets/javascripts/active_admin/lib/has_many.es6 → javascript/active_admin/initializers/has-many.js} +7 -1
  42. data/app/javascript/active_admin/initializers/per-page.js +13 -0
  43. data/app/javascript/active_admin/initializers/table-checkbox-toggler.js +3 -0
  44. data/app/{assets/javascripts/active_admin/lib/checkbox-toggler.es6 → javascript/active_admin/lib/checkbox-toggler.js} +2 -2
  45. data/app/{assets/javascripts/active_admin/lib/dropdown-menu.es6 → javascript/active_admin/lib/dropdown-menu.js} +2 -9
  46. data/app/javascript/active_admin/lib/filters.js +39 -0
  47. data/app/{assets/javascripts/active_admin/lib/modal_dialog.es6 → javascript/active_admin/lib/modal-dialog.js} +5 -3
  48. data/app/javascript/active_admin/lib/per-page.js +38 -0
  49. data/app/{assets/javascripts/active_admin/lib/table-checkbox-toggler.es6 → javascript/active_admin/lib/table-checkbox-toggler.js} +4 -2
  50. data/app/javascript/active_admin/lib/utils.js +40 -0
  51. data/cucumber.yml +2 -2
  52. data/docs/9-batch-actions.md +2 -2
  53. data/features/index/format_as_csv.feature +7 -7
  54. data/features/index/index_as_table.feature +6 -6
  55. data/gemfiles/rails_71.gemfile +2 -1
  56. data/gemfiles/rails_72.gemfile +2 -1
  57. data/gemfiles/rails_80.gemfile +2 -1
  58. data/gemfiles/rails_81.gemfile +18 -0
  59. data/lib/active_admin/application.rb +9 -1
  60. data/lib/active_admin/engine.rb +8 -5
  61. data/lib/active_admin/filters/active_filter.rb +1 -2
  62. data/lib/active_admin/namespace.rb +1 -1
  63. data/lib/active_admin/namespace_settings.rb +2 -1
  64. data/lib/active_admin/resource/attributes.rb +1 -1
  65. data/lib/active_admin/router.rb +4 -4
  66. data/lib/active_admin/version.rb +1 -1
  67. data/lib/active_admin.rb +2 -4
  68. data/lib/generators/active_admin/assets/assets_generator.rb +7 -1
  69. data/lib/generators/active_admin/assets/templates/active_admin.js.erb +6 -0
  70. data/lib/generators/active_admin/assets/templates/active_admin.scss +2 -2
  71. data/package.json +42 -0
  72. data/rollup.config.js +38 -0
  73. data/spec/requests/pages/layout_spec.rb +8 -2
  74. data/spec/requests/stylesheets_spec.rb +10 -3
  75. data/spec/support/active_admin_integration_spec_helper.rb +0 -3
  76. data/spec/support/rails_template.rb +29 -13
  77. data/spec/support/templates/dartsass.rb +4 -0
  78. data/spec/unit/namespace_spec.rb +0 -13
  79. data/spec/unit/resource/attributes_spec.rb +1 -1
  80. data/vendor/assets/stylesheets/active_admin/_normalize.scss +70 -354
  81. metadata +39 -77
  82. data/app/assets/javascripts/active_admin/base.es6 +0 -23
  83. data/app/assets/javascripts/active_admin/initializers/filters.es6 +0 -45
  84. data/app/assets/javascripts/active_admin/lib/active_admin.es6 +0 -41
  85. data/app/assets/javascripts/active_admin/lib/per_page.es6 +0 -47
  86. data/app/assets/stylesheets/active_admin/mixins/_rounded.scss +0 -22
  87. data/app/assets/stylesheets/active_admin/mixins/_shadows.scss +0 -15
  88. data/app/assets/stylesheets/active_admin/mixins/_typography.scss +0 -3
  89. data/app/assets/stylesheets/active_admin/mixins/_utilities.scss +0 -17
  90. data/gemfiles/rails_60.gemfile +0 -16
  91. data/gemfiles/rails_61.gemfile +0 -16
  92. data/gemfiles/rails_61_turbolinks.gemfile +0 -16
  93. data/gemfiles/rails_70.gemfile +0 -16
  94. data/gemfiles/rails_70_hotwire.gemfile +0 -16
  95. data/lib/generators/active_admin/assets/templates/active_admin.js +0 -1
  96. /data/app/{assets/javascripts/active_admin/ext/jquery-ui.es6 → javascript/active_admin/ext/jquery-ui.js} +0 -0
  97. /data/app/{assets/javascripts/active_admin/ext/jquery.es6 → javascript/active_admin/ext/jquery.js} +0 -0
  98. /data/app/{assets/javascripts/active_admin/initializers/datepicker.es6 → javascript/active_admin/initializers/datepicker.js} +0 -0
  99. /data/app/{assets/javascripts/active_admin/initializers/tabs.es6 → javascript/active_admin/initializers/tabs.js} +0 -0
@@ -1,181 +1,71 @@
1
- /*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
1
+ /*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */
2
2
 
3
- /* Document
4
- ========================================================================== */
3
+ /*
4
+ Document
5
+ ========
6
+ */
5
7
 
6
- /**
7
- * 1. Correct the line height in all browsers.
8
- * 2. Prevent adjustments of font size after orientation changes in
9
- * IE on Windows Phone and in iOS.
10
- */
8
+ :root {
9
+ -moz-tab-size: 4;
10
+ tab-size: 4;
11
+ }
11
12
 
12
13
  html {
13
- line-height: 1.15; /* 1 */
14
- -ms-text-size-adjust: 100%; /* 2 */
15
- -webkit-text-size-adjust: 100%; /* 2 */
14
+ line-height: 1.15;
15
+ -webkit-text-size-adjust: 100%;
16
16
  }
17
17
 
18
- /* Sections
19
- ========================================================================== */
20
-
21
- /**
22
- * Remove the margin in all browsers (opinionated).
23
- */
24
-
25
18
  body {
26
19
  margin: 0;
20
+ font-family:
21
+ system-ui,
22
+ -apple-system,
23
+ 'Segoe UI',
24
+ sans-serif;
27
25
  }
28
26
 
29
- /**
30
- * Add the correct display in IE 9-.
31
- */
32
-
33
- article,
34
- aside,
35
- footer,
36
- header,
37
- nav,
38
- section {
39
- display: block;
40
- }
41
-
42
- /**
43
- * Correct the font size and margin on `h1` elements within `section` and
44
- * `article` contexts in Chrome, Firefox, and Safari.
45
- */
46
-
47
- h1 {
48
- font-size: 2em;
49
- margin: 0.67em 0;
50
- }
51
-
52
- /* Grouping content
53
- ========================================================================== */
54
-
55
- /**
56
- * Add the correct display in IE 9-.
57
- * 1. Add the correct display in IE.
58
- */
59
-
60
- figcaption,
61
- figure,
62
- main { /* 1 */
63
- display: block;
64
- }
65
-
66
- /**
67
- * Add the correct margin in IE 8.
68
- */
69
-
70
- figure {
71
- margin: 1em 40px;
72
- }
73
-
74
- /**
75
- * 1. Add the correct box sizing in Firefox.
76
- * 2. Show the overflow in Edge and IE.
77
- */
27
+ /*
28
+ Sections
29
+ ========
30
+ */
78
31
 
79
32
  hr {
80
- box-sizing: content-box; /* 1 */
81
- height: 0; /* 1 */
82
- overflow: visible; /* 2 */
83
- }
84
-
85
- /**
86
- * 1. Correct the inheritance and scaling of font size in all browsers.
87
- * 2. Correct the odd `em` font sizing in all browsers.
88
- */
89
-
90
- pre {
91
- font-family: monospace, monospace; /* 1 */
92
- font-size: 1em; /* 2 */
93
- }
94
-
95
- /* Text-level semantics
96
- ========================================================================== */
97
-
98
- /**
99
- * 1. Remove the gray background on active links in IE 10.
100
- * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
101
- */
102
-
103
- a {
104
- background-color: transparent; /* 1 */
105
- -webkit-text-decoration-skip: objects; /* 2 */
33
+ height: 0;
34
+ color: inherit;
106
35
  }
107
36
 
108
- /**
109
- * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
110
- * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
111
- */
112
-
113
37
  abbr[title] {
114
- border-bottom: none; /* 1 */
115
- text-decoration: underline; /* 2 */
116
- text-decoration: underline dotted; /* 2 */
117
- }
118
-
119
- /**
120
- * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
121
- */
122
-
123
- b,
124
- strong {
125
- font-weight: inherit;
38
+ text-decoration: underline dotted;
126
39
  }
127
40
 
128
- /**
129
- * Add the correct font weight in Chrome, Edge, and Safari.
130
- */
41
+ /*
42
+ Grouping content
43
+ ================
44
+ */
131
45
 
132
46
  b,
133
47
  strong {
134
48
  font-weight: bolder;
135
49
  }
136
50
 
137
- /**
138
- * 1. Correct the inheritance and scaling of font size in all browsers.
139
- * 2. Correct the odd `em` font sizing in all browsers.
140
- */
141
-
142
51
  code,
143
52
  kbd,
144
- samp {
145
- font-family: monospace, monospace; /* 1 */
146
- font-size: 1em; /* 2 */
147
- }
148
-
149
- /**
150
- * Add the correct font style in Android 4.3-.
151
- */
152
-
153
- dfn {
154
- font-style: italic;
155
- }
156
-
157
- /**
158
- * Add the correct background and color in IE 9-.
159
- */
160
-
161
- mark {
162
- background-color: #ff0;
163
- color: #000;
53
+ samp,
54
+ pre {
55
+ font-family:
56
+ ui-monospace,
57
+ SFMono-Regular,
58
+ Consolas,
59
+ 'Liberation Mono',
60
+ Menlo,
61
+ monospace;
62
+ font-size: 1em;
164
63
  }
165
64
 
166
- /**
167
- * Add the correct font size in all browsers.
168
- */
169
-
170
65
  small {
171
66
  font-size: 80%;
172
67
  }
173
68
 
174
- /**
175
- * Prevent `sub` and `sup` elements from affecting the line height in
176
- * all browsers.
177
- */
178
-
179
69
  sub,
180
70
  sup {
181
71
  font-size: 75%;
@@ -192,256 +82,82 @@ sup {
192
82
  top: -0.5em;
193
83
  }
194
84
 
195
- /* Embedded content
196
- ========================================================================== */
197
-
198
- /**
199
- * Add the correct display in IE 9-.
200
- */
201
-
202
- audio,
203
- video {
204
- display: inline-block;
205
- }
206
-
207
- /**
208
- * Add the correct display in iOS 4-7.
209
- */
210
-
211
- audio:not([controls]) {
212
- display: none;
213
- height: 0;
214
- }
215
-
216
- /**
217
- * Remove the border on images inside links in IE 10-.
218
- */
219
-
220
- img {
221
- border-style: none;
222
- }
223
-
224
- /**
225
- * Hide the overflow in IE.
226
- */
227
-
228
- svg:not(:root) {
229
- overflow: hidden;
230
- }
231
-
232
- /* Forms
233
- ========================================================================== */
234
-
235
- /**
236
- * 1. Change the font styles in all browsers (opinionated).
237
- * 2. Remove the margin in Firefox and Safari.
238
- */
85
+ /*
86
+ Forms
87
+ =====
88
+ */
239
89
 
240
90
  button,
241
91
  input,
242
92
  optgroup,
243
93
  select,
244
94
  textarea {
245
- font-family: sans-serif; /* 1 */
246
- font-size: 100%; /* 1 */
247
- line-height: 1.15; /* 1 */
248
- margin: 0; /* 2 */
249
- }
250
-
251
- /**
252
- * Show the overflow in IE.
253
- * 1. Show the overflow in Edge.
254
- */
255
-
256
- button,
257
- input { /* 1 */
258
- overflow: visible;
95
+ font-family: inherit;
96
+ font-size: 100%;
97
+ line-height: 1.15;
98
+ margin: 0;
259
99
  }
260
100
 
261
- /**
262
- * Remove the inheritance of text transform in Edge, Firefox, and IE.
263
- * 1. Remove the inheritance of text transform in Firefox.
264
- */
265
-
266
101
  button,
267
- select { /* 1 */
102
+ select {
268
103
  text-transform: none;
269
104
  }
270
105
 
271
- /**
272
- * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
273
- * controls in Android 4.
274
- * 2. Correct the inability to style clickable types in iOS and Safari.
275
- */
276
-
277
106
  button,
278
- html [type="button"], /* 1 */
279
- [type="reset"],
280
- [type="submit"] {
281
- -webkit-appearance: button; /* 2 */
107
+ [type='button'],
108
+ [type='reset'],
109
+ [type='submit'] {
110
+ appearance: auto;
111
+ -webkit-appearance: button;
282
112
  }
283
113
 
284
- /**
285
- * Remove the inner border and padding in Firefox.
286
- */
287
-
288
- button::-moz-focus-inner,
289
- [type="button"]::-moz-focus-inner,
290
- [type="reset"]::-moz-focus-inner,
291
- [type="submit"]::-moz-focus-inner {
114
+ ::-moz-focus-inner {
292
115
  border-style: none;
293
116
  padding: 0;
294
117
  }
295
118
 
296
- /**
297
- * Restore the focus styles unset by the previous rule.
298
- */
299
-
300
- button:-moz-focusring,
301
- [type="button"]:-moz-focusring,
302
- [type="reset"]:-moz-focusring,
303
- [type="submit"]:-moz-focusring {
119
+ :-moz-focusring {
304
120
  outline: 1px dotted ButtonText;
305
121
  }
306
122
 
307
- /**
308
- * Correct the padding in Firefox.
309
- */
310
-
311
- fieldset {
312
- padding: 0.35em 0.75em 0.625em;
123
+ :-moz-ui-invalid {
124
+ box-shadow: none;
313
125
  }
314
126
 
315
- /**
316
- * 1. Correct the text wrapping in Edge and IE.
317
- * 2. Correct the color inheritance from `fieldset` elements in IE.
318
- * 3. Remove the padding so developers are not caught out when they zero out
319
- * `fieldset` elements in all browsers.
320
- */
321
-
322
127
  legend {
323
- box-sizing: border-box; /* 1 */
324
- color: inherit; /* 2 */
325
- display: table; /* 1 */
326
- max-width: 100%; /* 1 */
327
- padding: 0; /* 3 */
328
- white-space: normal; /* 1 */
128
+ padding: 0;
329
129
  }
330
130
 
331
- /**
332
- * 1. Add the correct display in IE 9-.
333
- * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
334
- */
335
-
336
131
  progress {
337
- display: inline-block; /* 1 */
338
- vertical-align: baseline; /* 2 */
339
- }
340
-
341
- /**
342
- * Remove the default vertical scrollbar in IE.
343
- */
344
-
345
- textarea {
346
- overflow: auto;
347
- }
348
-
349
- /**
350
- * 1. Add the correct box sizing in IE 10-.
351
- * 2. Remove the padding in IE 10-.
352
- */
353
-
354
- [type="checkbox"],
355
- [type="radio"] {
356
- box-sizing: border-box; /* 1 */
357
- padding: 0; /* 2 */
132
+ vertical-align: baseline;
358
133
  }
359
134
 
360
- /**
361
- * Correct the cursor style of increment and decrement buttons in Chrome.
362
- */
363
-
364
- [type="number"]::-webkit-inner-spin-button,
365
- [type="number"]::-webkit-outer-spin-button {
135
+ ::-webkit-inner-spin-button,
136
+ ::-webkit-outer-spin-button {
366
137
  height: auto;
367
138
  }
368
139
 
369
- /**
370
- * 1. Correct the odd appearance in Chrome and Safari.
371
- * 2. Correct the outline style in Safari.
372
- */
373
-
374
- [type="search"] {
375
- -webkit-appearance: textfield; /* 1 */
376
- outline-offset: -2px; /* 2 */
140
+ [type='search'] {
141
+ appearance: auto;
142
+ -webkit-appearance: textfield;
143
+ outline-offset: -2px;
377
144
  }
378
145
 
379
- /**
380
- * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
381
- */
382
-
383
- [type="search"]::-webkit-search-cancel-button,
384
- [type="search"]::-webkit-search-decoration {
146
+ ::-webkit-search-decoration {
385
147
  -webkit-appearance: none;
386
148
  }
387
149
 
388
- /**
389
- * 1. Correct the inability to style clickable types in iOS and Safari.
390
- * 2. Change font properties to `inherit` in Safari.
391
- */
392
-
393
150
  ::-webkit-file-upload-button {
394
- -webkit-appearance: button; /* 1 */
395
- font: inherit; /* 2 */
151
+ appearance: auto;
152
+ -webkit-appearance: button;
153
+ font: inherit;
396
154
  }
397
155
 
398
- /* Interactive
399
- ========================================================================== */
400
-
401
156
  /*
402
- * Add the correct display in IE 9-.
403
- * 1. Add the correct display in Edge, IE, and Firefox.
404
- */
405
-
406
- details, /* 1 */
407
- menu {
408
- display: block;
409
- }
410
-
411
- /*
412
- * Add the correct display in all browsers.
413
- */
157
+ Interactive
158
+ ===========
159
+ */
414
160
 
415
161
  summary {
416
162
  display: list-item;
417
163
  }
418
-
419
- /* Scripting
420
- ========================================================================== */
421
-
422
- /**
423
- * Add the correct display in IE 9-.
424
- */
425
-
426
- canvas {
427
- display: inline-block;
428
- }
429
-
430
- /**
431
- * Add the correct display in IE.
432
- */
433
-
434
- template {
435
- display: none;
436
- }
437
-
438
- /* Hidden
439
- ========================================================================== */
440
-
441
- /**
442
- * Add the correct display in IE 10-.
443
- */
444
-
445
- [hidden] {
446
- display: none;
447
- }