headmin 0.2.6 → 0.3.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 (237) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +29 -3
  3. data/Gemfile.lock +14 -3
  4. data/README.md +64 -57
  5. data/app/assets/config/headmin_manifest.js +2 -0
  6. data/app/assets/javascripts/headmin/config/i18n.js +11 -0
  7. data/{src/js → app/assets/javascripts}/headmin/controllers/blocks_controller.js +0 -1
  8. data/app/assets/javascripts/headmin/controllers/date_range_controller.js +32 -0
  9. data/app/assets/javascripts/headmin/controllers/dropzone_controller.js +33 -0
  10. data/app/assets/javascripts/headmin/controllers/file_preview_controller.js +244 -0
  11. data/{src/js → app/assets/javascripts}/headmin/controllers/filter_controller.js +12 -6
  12. data/{src/js → app/assets/javascripts}/headmin/controllers/filters_controller.js +0 -0
  13. data/app/assets/javascripts/headmin/controllers/flatpickr_controller.js +39 -0
  14. data/app/assets/javascripts/headmin/controllers/hello_controller.js +7 -0
  15. data/app/assets/javascripts/headmin/controllers/notification_controller.js +8 -0
  16. data/{src/js → app/assets/javascripts}/headmin/controllers/popup_controller.js +0 -1
  17. data/app/assets/javascripts/headmin/controllers/redactorx_controller.js +13 -0
  18. data/{src/js → app/assets/javascripts}/headmin/controllers/repeater_controller.js +0 -1
  19. data/app/assets/javascripts/headmin/controllers/select_controller.js +48 -0
  20. data/{src/js → app/assets/javascripts}/headmin/controllers/table_actions_controller.js +7 -37
  21. data/{src/js → app/assets/javascripts}/headmin/controllers/table_controller.js +23 -3
  22. data/app/assets/javascripts/headmin/index.js +41 -0
  23. data/app/assets/javascripts/headmin.js +15934 -0
  24. data/{src/scss → app/assets/stylesheets}/headmin/filter.scss +0 -0
  25. data/{src/scss → app/assets/stylesheets}/headmin/filters.scss +0 -0
  26. data/{src/scss → app/assets/stylesheets}/headmin/form.scss +55 -2
  27. data/{src/scss → app/assets/stylesheets}/headmin/general.scss +0 -0
  28. data/{src/scss → app/assets/stylesheets}/headmin/layout/body.scss +0 -0
  29. data/{src/scss → app/assets/stylesheets}/headmin/layout/sidebar.scss +0 -0
  30. data/{src/scss → app/assets/stylesheets}/headmin/layout.scss +0 -0
  31. data/{src/scss → app/assets/stylesheets}/headmin/login.scss +0 -0
  32. data/{src/scss/vendor/bootstrap/variables.scss → app/assets/stylesheets/headmin/overrides/bootstrap.scss} +0 -0
  33. data/{src/scss/vendor/redactorx/override.css → app/assets/stylesheets/headmin/overrides/redactorx.css} +0 -0
  34. data/{src/scss → app/assets/stylesheets}/headmin/popup.scss +0 -0
  35. data/app/assets/stylesheets/headmin/syntax.scss +349 -0
  36. data/{src/scss → app/assets/stylesheets}/headmin/table.scss +0 -0
  37. data/app/assets/stylesheets/headmin/thumbnail.scss +20 -0
  38. data/app/assets/stylesheets/headmin/utilities.scss +68 -0
  39. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_accordion.scss +118 -0
  40. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_alert.scss +57 -0
  41. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_badge.scss +29 -0
  42. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_breadcrumb.scss +28 -0
  43. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_button-group.scss +139 -0
  44. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_buttons.scss +111 -0
  45. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_card.scss +216 -0
  46. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_carousel.scss +229 -0
  47. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_close.scss +40 -0
  48. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_containers.scss +41 -0
  49. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_dropdown.scss +240 -0
  50. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_forms.scss +9 -0
  51. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_functions.scss +302 -0
  52. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_grid.scss +33 -0
  53. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_helpers.scss +9 -0
  54. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_images.scss +42 -0
  55. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_list-group.scss +174 -0
  56. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_mixins.scss +43 -0
  57. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_modal.scss +209 -0
  58. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_nav.scss +139 -0
  59. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_navbar.scss +335 -0
  60. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_offcanvas.scss +83 -0
  61. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_pagination.scss +64 -0
  62. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_placeholders.scss +51 -0
  63. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_popover.scss +158 -0
  64. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_progress.scss +48 -0
  65. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_reboot.scss +625 -0
  66. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_root.scss +54 -0
  67. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_spinners.scss +69 -0
  68. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_tables.scss +155 -0
  69. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_toasts.scss +51 -0
  70. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_tooltip.scss +115 -0
  71. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_transitions.scss +27 -0
  72. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_type.scss +104 -0
  73. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_utilities.scss +630 -0
  74. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/_variables.scss +1641 -0
  75. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/bootstrap-grid.scss +67 -0
  76. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/bootstrap-reboot.scss +13 -0
  77. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/bootstrap-utilities.scss +18 -0
  78. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/bootstrap.scss +53 -0
  79. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_floating-labels.scss +63 -0
  80. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_form-check.scss +152 -0
  81. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_form-control.scss +219 -0
  82. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_form-range.scss +91 -0
  83. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_form-select.scss +72 -0
  84. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_form-text.scss +11 -0
  85. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_input-group.scss +121 -0
  86. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_labels.scss +36 -0
  87. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_validation.scss +12 -0
  88. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_clearfix.scss +3 -0
  89. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_colored-links.scss +12 -0
  90. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_position.scss +30 -0
  91. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_ratio.scss +26 -0
  92. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_stacks.scss +15 -0
  93. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_stretched-link.scss +15 -0
  94. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_text-truncation.scss +7 -0
  95. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_visually-hidden.scss +8 -0
  96. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_vr.scss +8 -0
  97. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_alert.scss +11 -0
  98. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_backdrop.scss +14 -0
  99. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_border-radius.scss +78 -0
  100. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_box-shadow.scss +18 -0
  101. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_breakpoints.scss +127 -0
  102. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_buttons.scss +133 -0
  103. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_caret.scss +64 -0
  104. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_clearfix.scss +9 -0
  105. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_color-scheme.scss +7 -0
  106. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_container.scss +9 -0
  107. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_deprecate.scss +10 -0
  108. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_forms.scss +144 -0
  109. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_gradients.scss +47 -0
  110. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_grid.scss +151 -0
  111. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_image.scss +16 -0
  112. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_list-group.scss +24 -0
  113. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_lists.scss +7 -0
  114. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_pagination.scss +31 -0
  115. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_reset-text.scss +17 -0
  116. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_resize.scss +6 -0
  117. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_table-variants.scss +21 -0
  118. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_text-truncate.scss +8 -0
  119. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_transition.scss +26 -0
  120. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_utilities.scss +89 -0
  121. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_visually-hidden.scss +29 -0
  122. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/utilities/_api.scss +47 -0
  123. data/app/assets/stylesheets/headmin/vendor/bootstrap/scss/vendor/_rfs.scss +354 -0
  124. data/app/assets/stylesheets/headmin/vendor/flatpickr.css +903 -0
  125. data/{src/scss/vendor/redactorx → app/assets/stylesheets/headmin/vendor}/redactorx.css +0 -0
  126. data/app/assets/stylesheets/headmin/vendor/tom-select-bootstrap.css +537 -0
  127. data/app/assets/stylesheets/headmin.css +13454 -0
  128. data/app/assets/stylesheets/headmin.scss +65 -0
  129. data/app/helpers/headmin/admin_helper.rb +1 -0
  130. data/app/helpers/headmin/bootstrap_helper.rb +25 -3
  131. data/app/helpers/headmin/documentation_helper.rb +35 -0
  132. data/app/helpers/headmin/form_helper.rb +4 -0
  133. data/app/helpers/headmin/request_helper.rb +3 -8
  134. data/app/models/headmin/documentation_renderer.rb +32 -0
  135. data/app/models/headmin/form/base.rb +79 -0
  136. data/app/models/headmin/form/text.rb +53 -0
  137. data/app/services/block_service.rb +1 -1
  138. data/app/views/examples/admin.html.erb +1 -1
  139. data/app/views/headmin/_blocks.html.erb +2 -2
  140. data/app/views/headmin/_breadcrumbs.html.erb +1 -1
  141. data/app/views/headmin/_card.html.erb +10 -6
  142. data/app/views/headmin/_dropdown.html.erb +1 -1
  143. data/app/views/headmin/_filters.html.erb +22 -10
  144. data/app/views/headmin/_form.html.erb +14 -14
  145. data/app/views/headmin/_heading.html.erb +1 -1
  146. data/app/views/headmin/_notifications.html.erb +1 -1
  147. data/app/views/headmin/_pagination.html.erb +3 -5
  148. data/app/views/headmin/_popup.html.erb +10 -4
  149. data/app/views/headmin/_table.html.erb +10 -4
  150. data/app/views/headmin/_thumbnail.html.erb +45 -0
  151. data/app/views/headmin/dropdown/_devise.html.erb +2 -2
  152. data/app/views/headmin/dropdown/_list.html.erb +3 -6
  153. data/app/views/headmin/filters/_date.html.erb +9 -13
  154. data/app/views/headmin/filters/_flatpickr.html.erb +57 -0
  155. data/app/views/headmin/filters/_search.html.erb +5 -5
  156. data/app/views/headmin/filters/_select.html.erb +6 -6
  157. data/app/views/headmin/filters/filter/_button.html.erb +7 -7
  158. data/app/views/headmin/filters/filter/_template.html.erb +1 -1
  159. data/app/views/headmin/forms/_actions.html.erb +1 -1
  160. data/app/views/headmin/forms/_base.html.erb +100 -46
  161. data/app/views/headmin/forms/_blocks.html.erb +4 -4
  162. data/app/views/headmin/forms/_checkbox.html.erb +3 -3
  163. data/app/views/headmin/forms/_date.html.erb +30 -34
  164. data/app/views/headmin/forms/_date_range.html.erb +42 -0
  165. data/app/views/headmin/forms/_email.html.erb +35 -26
  166. data/app/views/headmin/forms/_file.html.erb +186 -34
  167. data/app/views/headmin/forms/_flatpickr.html.erb +34 -0
  168. data/app/views/headmin/forms/_flatpickr_range.html.erb +50 -0
  169. data/app/views/headmin/forms/_hidden.html.erb +24 -0
  170. data/app/views/headmin/forms/_image.html.erb +11 -45
  171. data/app/views/headmin/forms/_label.html.erb +18 -12
  172. data/app/views/headmin/forms/_number.html.erb +40 -37
  173. data/app/views/headmin/forms/_password.html.erb +37 -58
  174. data/app/views/headmin/forms/_redactorx.html.erb +8 -7
  175. data/app/views/headmin/forms/_repeater.html.erb +6 -6
  176. data/app/views/headmin/forms/_select.html.erb +43 -45
  177. data/app/views/headmin/forms/_text.html.erb +94 -59
  178. data/app/views/headmin/forms/_textarea.html.erb +37 -26
  179. data/app/views/headmin/forms/_url.html.erb +35 -26
  180. data/app/views/headmin/forms/_validation.html.erb +3 -3
  181. data/app/views/headmin/forms/_video.html.erb +21 -0
  182. data/app/views/headmin/forms/fields/_base.html.erb +3 -3
  183. data/app/views/headmin/forms/fields/_file.html.erb +2 -2
  184. data/app/views/headmin/forms/fields/_group.html.erb +3 -3
  185. data/app/views/headmin/forms/fields/_image.html.erb +2 -2
  186. data/app/views/headmin/forms/fields/_list.html.erb +3 -3
  187. data/app/views/headmin/forms/fields/_text.html.erb +2 -2
  188. data/app/views/headmin/forms/repeater/_row.html.erb +1 -1
  189. data/app/views/headmin/heading/_title.html.erb +1 -1
  190. data/app/views/headmin/layout/_body.html.erb +1 -1
  191. data/app/views/headmin/layout/_content.html.erb +1 -1
  192. data/app/views/headmin/layout/_footer.html.erb +1 -1
  193. data/app/views/headmin/layout/_header.html.erb +1 -1
  194. data/app/views/headmin/layout/_main.html.erb +12 -6
  195. data/app/views/headmin/layout/_sidebar.html.erb +3 -3
  196. data/app/views/headmin/layout/sidebar/_bottom.html.erb +1 -1
  197. data/app/views/headmin/layout/sidebar/_nav.html.erb +1 -1
  198. data/app/views/headmin/nav/_dropdown.html.erb +34 -0
  199. data/app/views/headmin/nav/_item.html.erb +22 -13
  200. data/app/views/headmin/table/_actions.html.erb +3 -5
  201. data/app/views/headmin/table/_body.html.erb +1 -1
  202. data/app/views/headmin/table/_foot.html.erb +1 -1
  203. data/app/views/headmin/table/_footer.html.erb +1 -1
  204. data/app/views/headmin/table/_head.html.erb +1 -1
  205. data/app/views/headmin/table/_header.html.erb +1 -1
  206. data/app/views/headmin/table/actions/_action.html.erb +4 -4
  207. data/app/views/headmin/table/actions/_delete.html.erb +1 -1
  208. data/app/views/headmin/table/actions/_export.html.erb +1 -1
  209. data/app/views/headmin/table/body/_row.html.erb +15 -7
  210. data/config/importmap.rb +2 -0
  211. data/config/locales/en.yml +0 -3
  212. data/config/locales/headmin/forms/en.yml +5 -0
  213. data/config/locales/headmin/forms/nl.yml +5 -0
  214. data/config/locales/headmin/popup/en.yml +4 -0
  215. data/config/locales/headmin/popup/nl.yml +4 -0
  216. data/config/locales/headmin/thumbnail/en.yml +4 -0
  217. data/config/locales/headmin/thumbnail/nl.yml +4 -0
  218. data/config/locales/nl.yml +0 -3
  219. data/esbuild-css.js +25 -0
  220. data/esbuild-js.js +11 -0
  221. data/headmin.gemspec +4 -1
  222. data/lib/headmin/engine.rb +15 -0
  223. data/lib/headmin/version.rb +1 -1
  224. data/lib/headmin.rb +1 -1
  225. data/package.json +18 -34
  226. data/src/js/headmin.js +1 -1
  227. data/src/scss/headmin.scss +1 -61
  228. data/yarn.lock +393 -5177
  229. metadata +191 -34
  230. data/.nvmrc +0 -1
  231. data/app/controllers/concerns/headmin/ckeditor.rb +0 -27
  232. data/app/views/headmin/forms/_ckeditor.html.erb +0 -42
  233. data/dist/css/headmin.css +0 -12354
  234. data/dist/js/headmin.js +0 -1080
  235. data/src/js/headmin/headmin.js +0 -141
  236. data/src/scss/headmin/utilities.scss +0 -19
  237. data/webpack.config.js +0 -30
metadata CHANGED
@@ -1,29 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: headmin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.6
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jef Vlamings
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-12-01 00:00:00.000000000 Z
11
+ date: 2022-01-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: closure_tree
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: '7.4'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: '7.4'
27
+ - !ruby/object:Gem::Dependency
28
+ name: inline_svg
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.7'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.7'
41
+ - !ruby/object:Gem::Dependency
42
+ name: redcarpet
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '3.5'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.5'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rouge
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '3.27'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '3.27'
27
69
  description: A complete library of commonly used components to build an admin interface
28
70
  in your Ruby on Rails project.
29
71
  email:
@@ -33,7 +75,6 @@ extensions: []
33
75
  extra_rdoc_files: []
34
76
  files:
35
77
  - ".gitignore"
36
- - ".nvmrc"
37
78
  - ".rubocop.yml"
38
79
  - ".ruby-version"
39
80
  - CHANGELOG.md
@@ -43,16 +84,140 @@ files:
43
84
  - LICENSE.txt
44
85
  - README.md
45
86
  - Rakefile
87
+ - app/assets/config/headmin_manifest.js
46
88
  - app/assets/images/avatar.jpg
89
+ - app/assets/javascripts/headmin.js
90
+ - app/assets/javascripts/headmin/config/i18n.js
91
+ - app/assets/javascripts/headmin/controllers/blocks_controller.js
92
+ - app/assets/javascripts/headmin/controllers/date_range_controller.js
93
+ - app/assets/javascripts/headmin/controllers/dropzone_controller.js
94
+ - app/assets/javascripts/headmin/controllers/file_preview_controller.js
95
+ - app/assets/javascripts/headmin/controllers/filter_controller.js
96
+ - app/assets/javascripts/headmin/controllers/filters_controller.js
97
+ - app/assets/javascripts/headmin/controllers/flatpickr_controller.js
98
+ - app/assets/javascripts/headmin/controllers/hello_controller.js
99
+ - app/assets/javascripts/headmin/controllers/notification_controller.js
100
+ - app/assets/javascripts/headmin/controllers/popup_controller.js
101
+ - app/assets/javascripts/headmin/controllers/redactorx_controller.js
102
+ - app/assets/javascripts/headmin/controllers/repeater_controller.js
103
+ - app/assets/javascripts/headmin/controllers/select_controller.js
104
+ - app/assets/javascripts/headmin/controllers/table_actions_controller.js
105
+ - app/assets/javascripts/headmin/controllers/table_controller.js
106
+ - app/assets/javascripts/headmin/index.js
107
+ - app/assets/stylesheets/headmin.css
108
+ - app/assets/stylesheets/headmin.scss
109
+ - app/assets/stylesheets/headmin/filter.scss
110
+ - app/assets/stylesheets/headmin/filters.scss
111
+ - app/assets/stylesheets/headmin/form.scss
112
+ - app/assets/stylesheets/headmin/general.scss
113
+ - app/assets/stylesheets/headmin/layout.scss
114
+ - app/assets/stylesheets/headmin/layout/body.scss
115
+ - app/assets/stylesheets/headmin/layout/sidebar.scss
116
+ - app/assets/stylesheets/headmin/login.scss
117
+ - app/assets/stylesheets/headmin/overrides/bootstrap.scss
118
+ - app/assets/stylesheets/headmin/overrides/redactorx.css
119
+ - app/assets/stylesheets/headmin/popup.scss
120
+ - app/assets/stylesheets/headmin/syntax.scss
121
+ - app/assets/stylesheets/headmin/table.scss
122
+ - app/assets/stylesheets/headmin/thumbnail.scss
123
+ - app/assets/stylesheets/headmin/utilities.scss
124
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_accordion.scss
125
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_alert.scss
126
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_badge.scss
127
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_breadcrumb.scss
128
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_button-group.scss
129
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_buttons.scss
130
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_card.scss
131
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_carousel.scss
132
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_close.scss
133
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_containers.scss
134
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_dropdown.scss
135
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_forms.scss
136
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_functions.scss
137
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_grid.scss
138
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_helpers.scss
139
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_images.scss
140
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_list-group.scss
141
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_mixins.scss
142
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_modal.scss
143
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_nav.scss
144
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_navbar.scss
145
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_offcanvas.scss
146
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_pagination.scss
147
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_placeholders.scss
148
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_popover.scss
149
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_progress.scss
150
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_reboot.scss
151
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_root.scss
152
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_spinners.scss
153
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_tables.scss
154
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_toasts.scss
155
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_tooltip.scss
156
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_transitions.scss
157
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_type.scss
158
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_utilities.scss
159
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/_variables.scss
160
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/bootstrap-grid.scss
161
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/bootstrap-reboot.scss
162
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/bootstrap-utilities.scss
163
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/bootstrap.scss
164
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_floating-labels.scss
165
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_form-check.scss
166
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_form-control.scss
167
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_form-range.scss
168
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_form-select.scss
169
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_form-text.scss
170
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_input-group.scss
171
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_labels.scss
172
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/forms/_validation.scss
173
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_clearfix.scss
174
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_colored-links.scss
175
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_position.scss
176
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_ratio.scss
177
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_stacks.scss
178
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_stretched-link.scss
179
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_text-truncation.scss
180
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_visually-hidden.scss
181
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/helpers/_vr.scss
182
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_alert.scss
183
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_backdrop.scss
184
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_border-radius.scss
185
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_box-shadow.scss
186
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_breakpoints.scss
187
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_buttons.scss
188
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_caret.scss
189
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_clearfix.scss
190
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_color-scheme.scss
191
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_container.scss
192
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_deprecate.scss
193
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_forms.scss
194
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_gradients.scss
195
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_grid.scss
196
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_image.scss
197
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_list-group.scss
198
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_lists.scss
199
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_pagination.scss
200
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_reset-text.scss
201
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_resize.scss
202
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_table-variants.scss
203
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_text-truncate.scss
204
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_transition.scss
205
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_utilities.scss
206
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/mixins/_visually-hidden.scss
207
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/utilities/_api.scss
208
+ - app/assets/stylesheets/headmin/vendor/bootstrap/scss/vendor/_rfs.scss
209
+ - app/assets/stylesheets/headmin/vendor/flatpickr.css
210
+ - app/assets/stylesheets/headmin/vendor/redactorx.css
211
+ - app/assets/stylesheets/headmin/vendor/tom-select-bootstrap.css
47
212
  - app/controllers/concerns/headmin/acts_as_list.rb
48
213
  - app/controllers/concerns/headmin/authentication.rb
49
- - app/controllers/concerns/headmin/ckeditor.rb
50
214
  - app/controllers/concerns/headmin/filter.rb
51
215
  - app/controllers/concerns/headmin/pagination.rb
52
216
  - app/controllers/concerns/headmin/searchable.rb
53
217
  - app/controllers/concerns/headmin/sortable.rb
54
218
  - app/helpers/headmin/admin_helper.rb
55
219
  - app/helpers/headmin/bootstrap_helper.rb
220
+ - app/helpers/headmin/documentation_helper.rb
56
221
  - app/helpers/headmin/filter_helper.rb
57
222
  - app/helpers/headmin/form_helper.rb
58
223
  - app/helpers/headmin/notification_helper.rb
@@ -61,6 +226,9 @@ files:
61
226
  - app/models/concerns/headmin/blockable.rb
62
227
  - app/models/concerns/headmin/field.rb
63
228
  - app/models/concerns/headmin/fieldable.rb
229
+ - app/models/headmin/documentation_renderer.rb
230
+ - app/models/headmin/form/base.rb
231
+ - app/models/headmin/form/text.rb
64
232
  - app/services/block_service.rb
65
233
  - app/views/examples/admin.html.erb
66
234
  - app/views/examples/auth.html.erb
@@ -76,6 +244,7 @@ files:
76
244
  - app/views/headmin/_pagination.html.erb
77
245
  - app/views/headmin/_popup.html.erb
78
246
  - app/views/headmin/_table.html.erb
247
+ - app/views/headmin/_thumbnail.html.erb
79
248
  - app/views/headmin/dropdown/_button.html.erb
80
249
  - app/views/headmin/dropdown/_devise.html.erb
81
250
  - app/views/headmin/dropdown/_divider.html.erb
@@ -83,6 +252,7 @@ files:
83
252
  - app/views/headmin/dropdown/_list.html.erb
84
253
  - app/views/headmin/dropdown/_locale.html.erb
85
254
  - app/views/headmin/filters/_date.html.erb
255
+ - app/views/headmin/filters/_flatpickr.html.erb
86
256
  - app/views/headmin/filters/_search.html.erb
87
257
  - app/views/headmin/filters/_select.html.erb
88
258
  - app/views/headmin/filters/filter/_button.html.erb
@@ -92,11 +262,14 @@ files:
92
262
  - app/views/headmin/forms/_base.html.erb
93
263
  - app/views/headmin/forms/_blocks.html.erb
94
264
  - app/views/headmin/forms/_checkbox.html.erb
95
- - app/views/headmin/forms/_ckeditor.html.erb
96
265
  - app/views/headmin/forms/_date.html.erb
266
+ - app/views/headmin/forms/_date_range.html.erb
97
267
  - app/views/headmin/forms/_email.html.erb
98
268
  - app/views/headmin/forms/_errors.html.erb
99
269
  - app/views/headmin/forms/_file.html.erb
270
+ - app/views/headmin/forms/_flatpickr.html.erb
271
+ - app/views/headmin/forms/_flatpickr_range.html.erb
272
+ - app/views/headmin/forms/_hidden.html.erb
100
273
  - app/views/headmin/forms/_image.html.erb
101
274
  - app/views/headmin/forms/_label.html.erb
102
275
  - app/views/headmin/forms/_number.html.erb
@@ -108,6 +281,7 @@ files:
108
281
  - app/views/headmin/forms/_textarea.html.erb
109
282
  - app/views/headmin/forms/_url.html.erb
110
283
  - app/views/headmin/forms/_validation.html.erb
284
+ - app/views/headmin/forms/_video.html.erb
111
285
  - app/views/headmin/forms/actions/_destroy.html.erb
112
286
  - app/views/headmin/forms/actions/_save.html.erb
113
287
  - app/views/headmin/forms/actions/_view.html.erb
@@ -127,6 +301,7 @@ files:
127
301
  - app/views/headmin/layout/_sidebar.html.erb
128
302
  - app/views/headmin/layout/sidebar/_bottom.html.erb
129
303
  - app/views/headmin/layout/sidebar/_nav.html.erb
304
+ - app/views/headmin/nav/_dropdown.html.erb
130
305
  - app/views/headmin/nav/_item.html.erb
131
306
  - app/views/headmin/nav/item/_devise.html.erb
132
307
  - app/views/headmin/nav/item/_locale.html.erb
@@ -176,6 +351,7 @@ files:
176
351
  - app/views/headmin/views/devise/unlocks/_new.html.erb
177
352
  - bin/console
178
353
  - bin/setup
354
+ - config/importmap.rb
179
355
  - config/initializers/customize_input_error.rb
180
356
  - config/locales/activerecord/en.yml
181
357
  - config/locales/activerecord/nl.yml
@@ -194,17 +370,21 @@ files:
194
370
  - config/locales/headmin/layout/nl.yml
195
371
  - config/locales/headmin/pagination/en.yml
196
372
  - config/locales/headmin/pagination/nl.yml
373
+ - config/locales/headmin/popup/en.yml
374
+ - config/locales/headmin/popup/nl.yml
197
375
  - config/locales/headmin/table/en.yml
198
376
  - config/locales/headmin/table/nl.yml
377
+ - config/locales/headmin/thumbnail/en.yml
378
+ - config/locales/headmin/thumbnail/nl.yml
199
379
  - config/locales/headmin/views/en.yml
200
380
  - config/locales/headmin/views/nl.yml
201
381
  - config/locales/nl.yml
202
- - dist/css/headmin.css
203
- - dist/js/headmin.js
204
382
  - docs/blocks-and-fields.md
205
383
  - docs/blocks.md
206
384
  - docs/devise.md
207
385
  - docs/fields.md
386
+ - esbuild-css.js
387
+ - esbuild-js.js
208
388
  - headmin.gemspec
209
389
  - lib/generators/headmin/blocks_generator.rb
210
390
  - lib/generators/headmin/devise_generator.rb
@@ -238,30 +418,7 @@ files:
238
418
  - lib/headmin/version.rb
239
419
  - package.json
240
420
  - src/js/headmin.js
241
- - src/js/headmin/controllers/blocks_controller.js
242
- - src/js/headmin/controllers/filter_controller.js
243
- - src/js/headmin/controllers/filters_controller.js
244
- - src/js/headmin/controllers/popup_controller.js
245
- - src/js/headmin/controllers/repeater_controller.js
246
- - src/js/headmin/controllers/table_actions_controller.js
247
- - src/js/headmin/controllers/table_controller.js
248
- - src/js/headmin/headmin.js
249
421
  - src/scss/headmin.scss
250
- - src/scss/headmin/filter.scss
251
- - src/scss/headmin/filters.scss
252
- - src/scss/headmin/form.scss
253
- - src/scss/headmin/general.scss
254
- - src/scss/headmin/layout.scss
255
- - src/scss/headmin/layout/body.scss
256
- - src/scss/headmin/layout/sidebar.scss
257
- - src/scss/headmin/login.scss
258
- - src/scss/headmin/popup.scss
259
- - src/scss/headmin/table.scss
260
- - src/scss/headmin/utilities.scss
261
- - src/scss/vendor/bootstrap/variables.scss
262
- - src/scss/vendor/redactorx/override.css
263
- - src/scss/vendor/redactorx/redactorx.css
264
- - webpack.config.js
265
422
  - yarn.lock
266
423
  homepage: https://github.com/insiting/headmin
267
424
  licenses:
data/.nvmrc DELETED
@@ -1 +0,0 @@
1
- lts/gallium
@@ -1,27 +0,0 @@
1
- module Headmin
2
- module Ckeditor
3
- def handle_upload
4
- blob = ActiveStorage::Blob.create_after_upload!(
5
- io: upload_params[:upload],
6
- filename: upload_params[:upload].original_filename,
7
- content_type: upload_params[:upload].content_type
8
- )
9
- render json: {
10
- urls: {
11
- "default": url_for(blob.variant(resize_to_limit: [1600, 1600], quality: 75)),
12
- "800": url_for(blob.variant(resize_to_limit: [800, 800], quality: 75)),
13
- "1024": url_for(blob.variant(resize_to_limit: [1024, 1024], quality: 75)),
14
- "1600": url_for(blob.variant(resize_to_limit: [1600, 1600], quality: 75))
15
- }
16
- }
17
- end
18
-
19
- private
20
-
21
- def upload_params
22
- params.permit(
23
- :upload, :locale
24
- )
25
- end
26
- end
27
- end
@@ -1,42 +0,0 @@
1
- <%
2
- # headmin/forms/ckeditor
3
- #
4
- # ==== Options
5
- # * <tt>form<tt> - Form object
6
- # * <tt>attribute<tt> - Name of the attribute of the form model
7
- # * <tt>label<tt> - Text to show as label. Label will be hidden if value is false
8
- # * <tt>toolbar<tt> - Array containing the toolbar items to display
9
- # * <tt>upload_path<tt> - URL to upload images to
10
- #
11
- # ==== Examples
12
- # Basic version
13
- # <%= render 'headmin/forms/textarea', form: form, attribute: :title %#>
14
-
15
- class_names = local_assigns.has_key?(:class) ? local_assigns[:class] : false
16
- data = local_assigns.has_key?(:data) ? data : {}
17
- disabled = local_assigns.has_key?(:disabled) ? disabled : false
18
- label = local_assigns.has_key?(:label) ? label : nil
19
- readonly = local_assigns.has_key?(:readonly) ? readonly : false
20
- required = local_assigns.has_key?(:required) ? required : false
21
- toolbar = local_assigns.has_key?(:toolbar) ? toolbar : nil
22
- upload_path = local_assigns.has_key?(:upload_path) ? upload_path : ''
23
-
24
- data = data.merge(
25
- 'ckeditor-toolbar': toolbar,
26
- 'ckeditor-upload-path': upload_path
27
- )
28
-
29
- options = {
30
- 'aria-describedby': form_field_validation_id(form, attribute),
31
- class: "ckeditor #{form_field_validation_class(form, attribute)} #{class_names}",
32
- data: data,
33
- disabled: disabled,
34
- placeholder: attribute,
35
- readonly: readonly,
36
- required: required,
37
- }
38
- %>
39
-
40
- <%= render 'headmin/forms/base', form: form, attribute: attribute, label: label, required: required do |form| %>
41
- <%= form.text_area(attribute, options) %>
42
- <% end %>