headmin 0.5.1 → 0.5.4

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 (136) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +2 -2
  3. data/Gemfile +14 -0
  4. data/Gemfile.lock +79 -2
  5. data/app/assets/javascripts/headmin/controllers/media_controller.js +237 -0
  6. data/app/assets/javascripts/headmin/controllers/media_modal_controller.js +110 -0
  7. data/app/assets/javascripts/headmin/controllers/remote_modal_controller.js +9 -0
  8. data/app/assets/javascripts/headmin/controllers/textarea_controller.js +34 -0
  9. data/app/assets/javascripts/headmin/index.js +8 -0
  10. data/app/assets/javascripts/headmin.js +294 -0
  11. data/app/assets/stylesheets/headmin/forms/file.scss +40 -5
  12. data/app/assets/stylesheets/headmin/forms/media.scss +10 -0
  13. data/app/assets/stylesheets/headmin/forms.scss +1 -0
  14. data/app/assets/stylesheets/headmin/layout/sidebar.scss +0 -1
  15. data/app/assets/stylesheets/headmin/media/index.scss +9 -0
  16. data/app/assets/stylesheets/headmin/media.scss +1 -0
  17. data/app/assets/stylesheets/headmin/overrides/redactorx.scss +1 -1
  18. data/app/assets/stylesheets/headmin/table.scss +8 -0
  19. data/app/assets/stylesheets/headmin/vendor/{tom-select-bootstrap.css → tom-select-bootstrap.scss} +0 -1
  20. data/app/assets/stylesheets/headmin.css +61 -8
  21. data/app/assets/stylesheets/headmin.scss +1 -0
  22. data/app/controllers/headmin/media_controller.rb +52 -0
  23. data/app/controllers/headmin_controller.rb +2 -0
  24. data/app/helpers/headmin/form_helper.rb +2 -2
  25. data/app/models/concerns/headmin/field.rb +2 -2
  26. data/app/models/concerns/headmin/fieldable.rb +19 -10
  27. data/app/models/concerns/headmin/form/hintable.rb +6 -1
  28. data/app/models/headmin/filter/association.rb +86 -0
  29. data/app/models/headmin/filter/association_view.rb +74 -0
  30. data/app/models/headmin/filter/base.rb +5 -2
  31. data/app/models/headmin/filter/boolean_view.rb +1 -0
  32. data/app/models/headmin/filter/date.rb +49 -1
  33. data/app/models/headmin/filter/date_view.rb +1 -0
  34. data/app/models/headmin/filter/flatpickr_view.rb +1 -0
  35. data/app/models/headmin/filter/number_view.rb +1 -0
  36. data/app/models/headmin/filter/operator_view.rb +3 -1
  37. data/app/models/headmin/filter/options_view.rb +1 -0
  38. data/app/models/headmin/filter/text_view.rb +1 -0
  39. data/app/models/headmin/form/association_view.rb +102 -0
  40. data/app/models/headmin/form/blocks_view.rb +4 -1
  41. data/app/models/headmin/form/file_view.rb +0 -8
  42. data/app/models/headmin/form/flatpickr_view.rb +2 -1
  43. data/app/models/headmin/form/media_item_view.rb +39 -0
  44. data/app/models/headmin/form/media_view.rb +137 -0
  45. data/app/models/headmin/form/select_view.rb +2 -1
  46. data/app/models/headmin/form/textarea_view.rb +6 -1
  47. data/app/models/headmin/thumbnail_view.rb +40 -19
  48. data/app/models/view_model.rb +4 -0
  49. data/app/views/examples/admin.html.erb +8 -8
  50. data/app/views/examples/auth.html.erb +2 -2
  51. data/app/views/headmin/_breadcrumbs.html.erb +2 -2
  52. data/app/views/headmin/_dropdown.html.erb +1 -1
  53. data/app/views/headmin/_filters.html.erb +12 -7
  54. data/app/views/headmin/_pagination.html.erb +2 -2
  55. data/app/views/headmin/_popup.html.erb +4 -4
  56. data/app/views/headmin/_table.html.erb +1 -1
  57. data/app/views/headmin/_thumbnail.html.erb +33 -9
  58. data/app/views/headmin/dropdown/_button.html.erb +2 -2
  59. data/app/views/headmin/dropdown/_item.html.erb +2 -2
  60. data/app/views/headmin/dropdown/_list.html.erb +3 -3
  61. data/app/views/headmin/dropdown/_locale.html.erb +5 -5
  62. data/app/views/headmin/filters/_association.html.erb +24 -0
  63. data/app/views/headmin/filters/_options.html.erb +1 -1
  64. data/app/views/headmin/filters/filter/_button.html.erb +2 -2
  65. data/app/views/headmin/filters/filter/_null_select.html.erb +2 -2
  66. data/app/views/headmin/forms/_association.html.erb +30 -0
  67. data/app/views/headmin/forms/_errors.html.erb +1 -1
  68. data/app/views/headmin/forms/_file.html.erb +10 -11
  69. data/app/views/headmin/forms/_hint.html.erb +6 -1
  70. data/app/views/headmin/forms/_media.html.erb +60 -0
  71. data/app/views/headmin/forms/_repeater.html.erb +18 -16
  72. data/app/views/headmin/forms/_textarea.html.erb +1 -1
  73. data/app/views/headmin/forms/_wrapper.html.erb +0 -1
  74. data/app/views/headmin/forms/fields/_list.html.erb +6 -4
  75. data/app/views/headmin/forms/media/_item.html.erb +38 -0
  76. data/app/views/headmin/forms/media/_validation.html.erb +10 -0
  77. data/app/views/headmin/forms/repeater/_row.html.erb +17 -15
  78. data/app/views/headmin/heading/_title.html.erb +2 -2
  79. data/app/views/headmin/layout/_main.html.erb +2 -0
  80. data/app/views/headmin/layout/_remote_modal.html.erb +1 -0
  81. data/app/views/headmin/layout/_sidebar.html.erb +1 -1
  82. data/app/views/headmin/media/_item.html.erb +16 -0
  83. data/app/views/headmin/media/_media_item_modal.html.erb +51 -0
  84. data/app/views/headmin/media/_modal.html.erb +35 -0
  85. data/app/views/headmin/media/create.turbo_stream.erb +5 -0
  86. data/app/views/headmin/media/index.html.erb +3 -0
  87. data/app/views/headmin/media/show.html.erb +9 -0
  88. data/app/views/headmin/media/update.turbo_stream.erb +3 -0
  89. data/app/views/headmin/nav/_dropdown.html.erb +7 -7
  90. data/app/views/headmin/nav/_item.html.erb +5 -5
  91. data/app/views/headmin/nav/item/_locale.html.erb +6 -6
  92. data/app/views/headmin/pagination/_per_page.html.erb +7 -7
  93. data/app/views/headmin/pagination/kaminari/_first_page.html.erb +2 -2
  94. data/app/views/headmin/pagination/kaminari/_gap.html.erb +1 -1
  95. data/app/views/headmin/pagination/kaminari/_last_page.html.erb +2 -2
  96. data/app/views/headmin/pagination/kaminari/_next_page.html.erb +3 -3
  97. data/app/views/headmin/pagination/kaminari/_page.html.erb +2 -2
  98. data/app/views/headmin/pagination/kaminari/_paginator.html.erb +1 -1
  99. data/app/views/headmin/pagination/kaminari/_prev_page.html.erb +2 -2
  100. data/app/views/headmin/table/_actions.html.erb +9 -9
  101. data/app/views/headmin/table/_body.html.erb +1 -1
  102. data/app/views/headmin/table/actions/_action.html.erb +4 -4
  103. data/app/views/headmin/table/actions/_export.html.erb +1 -1
  104. data/app/views/headmin/table/body/_association.html.erb +17 -3
  105. data/app/views/headmin/table/body/_boolean.erb +4 -4
  106. data/app/views/headmin/table/body/_date.html.erb +2 -2
  107. data/app/views/headmin/table/body/_image.html.erb +18 -0
  108. data/app/views/headmin/table/body/_string.html.erb +1 -1
  109. data/app/views/headmin/table/head/_cell.html.erb +1 -1
  110. data/app/views/headmin/table/head/cell/_asc.html.erb +2 -2
  111. data/app/views/headmin/table/head/cell/_default.html.erb +1 -1
  112. data/app/views/headmin/table/head/cell/_desc.html.erb +1 -1
  113. data/app/views/headmin/views/devise/confirmations/_new.html.erb +1 -1
  114. data/app/views/headmin/views/devise/passwords/_edit.html.erb +1 -1
  115. data/app/views/headmin/views/devise/passwords/_new.html.erb +1 -1
  116. data/app/views/headmin/views/devise/registrations/_edit.html.erb +5 -5
  117. data/app/views/headmin/views/devise/registrations/_new.html.erb +1 -1
  118. data/app/views/headmin/views/devise/sessions/_new.html.erb +1 -1
  119. data/app/views/headmin/views/devise/shared/_links.html.erb +14 -20
  120. data/app/views/headmin/views/devise/unlocks/_new.html.erb +1 -1
  121. data/config/locales/activerecord/en.yml +1 -0
  122. data/config/locales/activerecord/nl.yml +1 -0
  123. data/config/locales/devise/nl.yml +1 -1
  124. data/config/locales/headmin/filters/en.yml +3 -1
  125. data/config/locales/headmin/filters/nl.yml +2 -0
  126. data/config/locales/headmin/forms/en.yml +8 -0
  127. data/config/locales/headmin/forms/nl.yml +8 -0
  128. data/config/locales/headmin/media/en.yml +23 -0
  129. data/config/locales/headmin/media/nl.yml +23 -0
  130. data/config/locales/headmin/table/en.yml +2 -0
  131. data/config/locales/headmin/table/nl.yml +2 -0
  132. data/config/routes.rb +10 -0
  133. data/lib/generators/templates/views/layouts/auth.html.erb +2 -2
  134. data/lib/headmin/version.rb +1 -1
  135. data/package.json +1 -1
  136. metadata +34 -3
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: headmin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.5.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jef Vlamings
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-05-13 00:00:00.000000000 Z
11
+ date: 2022-08-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: closure_tree
@@ -105,13 +105,17 @@ files:
105
105
  - app/assets/javascripts/headmin/controllers/filters_controller.js
106
106
  - app/assets/javascripts/headmin/controllers/flatpickr_controller.js
107
107
  - app/assets/javascripts/headmin/controllers/hello_controller.js
108
+ - app/assets/javascripts/headmin/controllers/media_controller.js
109
+ - app/assets/javascripts/headmin/controllers/media_modal_controller.js
108
110
  - app/assets/javascripts/headmin/controllers/notification_controller.js
109
111
  - app/assets/javascripts/headmin/controllers/popup_controller.js
110
112
  - app/assets/javascripts/headmin/controllers/redactorx_controller.js
113
+ - app/assets/javascripts/headmin/controllers/remote_modal_controller.js
111
114
  - app/assets/javascripts/headmin/controllers/repeater_controller.js
112
115
  - app/assets/javascripts/headmin/controllers/select_controller.js
113
116
  - app/assets/javascripts/headmin/controllers/table_actions_controller.js
114
117
  - app/assets/javascripts/headmin/controllers/table_controller.js
118
+ - app/assets/javascripts/headmin/controllers/textarea_controller.js
115
119
  - app/assets/javascripts/headmin/index.js
116
120
  - app/assets/stylesheets/headmin.css
117
121
  - app/assets/stylesheets/headmin.scss
@@ -120,6 +124,7 @@ files:
120
124
  - app/assets/stylesheets/headmin/forms.scss
121
125
  - app/assets/stylesheets/headmin/forms/autocomplete.scss
122
126
  - app/assets/stylesheets/headmin/forms/file.scss
127
+ - app/assets/stylesheets/headmin/forms/media.scss
123
128
  - app/assets/stylesheets/headmin/forms/repeater.scss
124
129
  - app/assets/stylesheets/headmin/forms/search.scss
125
130
  - app/assets/stylesheets/headmin/general.scss
@@ -127,6 +132,8 @@ files:
127
132
  - app/assets/stylesheets/headmin/layout/body.scss
128
133
  - app/assets/stylesheets/headmin/layout/sidebar.scss
129
134
  - app/assets/stylesheets/headmin/login.scss
135
+ - app/assets/stylesheets/headmin/media.scss
136
+ - app/assets/stylesheets/headmin/media/index.scss
130
137
  - app/assets/stylesheets/headmin/overrides/bootstrap.scss
131
138
  - app/assets/stylesheets/headmin/overrides/redactorx.scss
132
139
  - app/assets/stylesheets/headmin/popup.scss
@@ -223,12 +230,14 @@ files:
223
230
  - app/assets/stylesheets/headmin/vendor/bootstrap/scss/vendor/_rfs.scss
224
231
  - app/assets/stylesheets/headmin/vendor/flatpickr.css
225
232
  - app/assets/stylesheets/headmin/vendor/redactorx.css
226
- - app/assets/stylesheets/headmin/vendor/tom-select-bootstrap.css
233
+ - app/assets/stylesheets/headmin/vendor/tom-select-bootstrap.scss
227
234
  - app/controllers/concerns/headmin/acts_as_list.rb
228
235
  - app/controllers/concerns/headmin/authentication.rb
229
236
  - app/controllers/concerns/headmin/filterable.rb
230
237
  - app/controllers/concerns/headmin/pagination.rb
231
238
  - app/controllers/concerns/headmin/sortable.rb
239
+ - app/controllers/headmin/media_controller.rb
240
+ - app/controllers/headmin_controller.rb
232
241
  - app/helpers/headmin/admin_helper.rb
233
242
  - app/helpers/headmin/bootstrap_helper.rb
234
243
  - app/helpers/headmin/filter_helper.rb
@@ -249,6 +258,8 @@ files:
249
258
  - app/models/concerns/headmin/form/wrappable.rb
250
259
  - app/models/headmin/.DS_Store
251
260
  - app/models/headmin/blocks_view.rb
261
+ - app/models/headmin/filter/association.rb
262
+ - app/models/headmin/filter/association_view.rb
252
263
  - app/models/headmin/filter/base.rb
253
264
  - app/models/headmin/filter/base_view.rb
254
265
  - app/models/headmin/filter/boolean.rb
@@ -270,6 +281,7 @@ files:
270
281
  - app/models/headmin/filter/text.rb
271
282
  - app/models/headmin/filter/text_view.rb
272
283
  - app/models/headmin/filters.rb
284
+ - app/models/headmin/form/association_view.rb
273
285
  - app/models/headmin/form/blocks_view.rb
274
286
  - app/models/headmin/form/checkbox_view.rb
275
287
  - app/models/headmin/form/color_view.rb
@@ -285,6 +297,8 @@ files:
285
297
  - app/models/headmin/form/hint_view.rb
286
298
  - app/models/headmin/form/input_group_view.rb
287
299
  - app/models/headmin/form/label_view.rb
300
+ - app/models/headmin/form/media_item_view.rb
301
+ - app/models/headmin/form/media_view.rb
288
302
  - app/models/headmin/form/number_view.rb
289
303
  - app/models/headmin/form/password_view.rb
290
304
  - app/models/headmin/form/redactorx_view.rb
@@ -318,6 +332,7 @@ files:
318
332
  - app/views/headmin/dropdown/_item.html.erb
319
333
  - app/views/headmin/dropdown/_list.html.erb
320
334
  - app/views/headmin/dropdown/_locale.html.erb
335
+ - app/views/headmin/filters/_association.html.erb
321
336
  - app/views/headmin/filters/_base.html.erb
322
337
  - app/views/headmin/filters/_boolean.html.erb
323
338
  - app/views/headmin/filters/_date.html.erb
@@ -332,6 +347,7 @@ files:
332
347
  - app/views/headmin/filters/filter/_null_select.html.erb
333
348
  - app/views/headmin/filters/filter/_operator.html.erb
334
349
  - app/views/headmin/filters/filter/_row.html.erb
350
+ - app/views/headmin/forms/_association.html.erb
335
351
  - app/views/headmin/forms/_autocomplete.html.erb
336
352
  - app/views/headmin/forms/_blocks.html.erb
337
353
  - app/views/headmin/forms/_checkbox.html.erb
@@ -350,6 +366,7 @@ files:
350
366
  - app/views/headmin/forms/_hint.html.erb
351
367
  - app/views/headmin/forms/_input_group.html.erb
352
368
  - app/views/headmin/forms/_label.html.erb
369
+ - app/views/headmin/forms/_media.html.erb
353
370
  - app/views/headmin/forms/_number.html.erb
354
371
  - app/views/headmin/forms/_password.html.erb
355
372
  - app/views/headmin/forms/_redactorx.html.erb
@@ -371,6 +388,8 @@ files:
371
388
  - app/views/headmin/forms/fields/_group.html.erb
372
389
  - app/views/headmin/forms/fields/_list.html.erb
373
390
  - app/views/headmin/forms/fields/_text.html.erb
391
+ - app/views/headmin/forms/media/_item.html.erb
392
+ - app/views/headmin/forms/media/_validation.html.erb
374
393
  - app/views/headmin/forms/repeater/_row.html.erb
375
394
  - app/views/headmin/heading/_title.html.erb
376
395
  - app/views/headmin/layout/_body.html.erb
@@ -378,9 +397,17 @@ files:
378
397
  - app/views/headmin/layout/_footer.html.erb
379
398
  - app/views/headmin/layout/_header.html.erb
380
399
  - app/views/headmin/layout/_main.html.erb
400
+ - app/views/headmin/layout/_remote_modal.html.erb
381
401
  - app/views/headmin/layout/_sidebar.html.erb
382
402
  - app/views/headmin/layout/sidebar/_bottom.html.erb
383
403
  - app/views/headmin/layout/sidebar/_nav.html.erb
404
+ - app/views/headmin/media/_item.html.erb
405
+ - app/views/headmin/media/_media_item_modal.html.erb
406
+ - app/views/headmin/media/_modal.html.erb
407
+ - app/views/headmin/media/create.turbo_stream.erb
408
+ - app/views/headmin/media/index.html.erb
409
+ - app/views/headmin/media/show.html.erb
410
+ - app/views/headmin/media/update.turbo_stream.erb
384
411
  - app/views/headmin/nav/_dropdown.html.erb
385
412
  - app/views/headmin/nav/_item.html.erb
386
413
  - app/views/headmin/nav/item/_devise.html.erb
@@ -408,6 +435,7 @@ files:
408
435
  - app/views/headmin/table/body/_currency.html.erb
409
436
  - app/views/headmin/table/body/_date.html.erb
410
437
  - app/views/headmin/table/body/_id.html.erb
438
+ - app/views/headmin/table/body/_image.html.erb
411
439
  - app/views/headmin/table/body/_row.html.erb
412
440
  - app/views/headmin/table/body/_sort.html.erb
413
441
  - app/views/headmin/table/body/_string.html.erb
@@ -451,6 +479,8 @@ files:
451
479
  - config/locales/headmin/heading/nl.yml
452
480
  - config/locales/headmin/layout/en.yml
453
481
  - config/locales/headmin/layout/nl.yml
482
+ - config/locales/headmin/media/en.yml
483
+ - config/locales/headmin/media/nl.yml
454
484
  - config/locales/headmin/nav/en.yml
455
485
  - config/locales/headmin/nav/nl.yml
456
486
  - config/locales/headmin/pagination/en.yml
@@ -464,6 +494,7 @@ files:
464
494
  - config/locales/headmin/views/en.yml
465
495
  - config/locales/headmin/views/nl.yml
466
496
  - config/locales/nl.yml
497
+ - config/routes.rb
467
498
  - esbuild-css.js
468
499
  - esbuild-js.js
469
500
  - headmin.gemspec