ultra-smart-hub 0.0.1

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.

Potentially problematic release.


This version of ultra-smart-hub might be problematic. Click here for more details.

Files changed (329) hide show
  1. checksums.yaml +7 -0
  2. data/rails_admin-3.3.0/Gemfile +56 -0
  3. data/rails_admin-3.3.0/LICENSE.md +20 -0
  4. data/rails_admin-3.3.0/README.md +105 -0
  5. data/rails_admin-3.3.0/Rakefile +37 -0
  6. data/rails_admin-3.3.0/app/assets/javascripts/rails_admin/application.js.erb +30 -0
  7. data/rails_admin-3.3.0/app/assets/javascripts/rails_admin/custom/ui.js +1 -0
  8. data/rails_admin-3.3.0/app/assets/stylesheets/rails_admin/application.scss.erb +35 -0
  9. data/rails_admin-3.3.0/app/assets/stylesheets/rails_admin/custom/mixins.scss +11 -0
  10. data/rails_admin-3.3.0/app/assets/stylesheets/rails_admin/custom/theming.scss +13 -0
  11. data/rails_admin-3.3.0/app/assets/stylesheets/rails_admin/custom/variables.scss +15 -0
  12. data/rails_admin-3.3.0/app/controllers/rails_admin/application_controller.rb +84 -0
  13. data/rails_admin-3.3.0/app/controllers/rails_admin/main_controller.rb +153 -0
  14. data/rails_admin-3.3.0/app/helpers/rails_admin/application_helper.rb +264 -0
  15. data/rails_admin-3.3.0/app/helpers/rails_admin/form_builder.rb +157 -0
  16. data/rails_admin-3.3.0/app/helpers/rails_admin/main_helper.rb +61 -0
  17. data/rails_admin-3.3.0/app/views/kaminari/ra-twitter-bootstrap/_gap.html.erb +5 -0
  18. data/rails_admin-3.3.0/app/views/kaminari/ra-twitter-bootstrap/_next_page.html.erb +9 -0
  19. data/rails_admin-3.3.0/app/views/kaminari/ra-twitter-bootstrap/_page.html.erb +9 -0
  20. data/rails_admin-3.3.0/app/views/kaminari/ra-twitter-bootstrap/_paginator.html.erb +15 -0
  21. data/rails_admin-3.3.0/app/views/kaminari/ra-twitter-bootstrap/_prev_page.html.erb +9 -0
  22. data/rails_admin-3.3.0/app/views/kaminari/ra-twitter-bootstrap/without_count/_next_page.html.erb +9 -0
  23. data/rails_admin-3.3.0/app/views/kaminari/ra-twitter-bootstrap/without_count/_paginator.html.erb +8 -0
  24. data/rails_admin-3.3.0/app/views/kaminari/ra-twitter-bootstrap/without_count/_prev_page.html.erb +9 -0
  25. data/rails_admin-3.3.0/app/views/layouts/rails_admin/_head.html.erb +32 -0
  26. data/rails_admin-3.3.0/app/views/layouts/rails_admin/_navigation.html.erb +17 -0
  27. data/rails_admin-3.3.0/app/views/layouts/rails_admin/_secondary_navigation.html.erb +26 -0
  28. data/rails_admin-3.3.0/app/views/layouts/rails_admin/_sidebar_navigation.html.erb +5 -0
  29. data/rails_admin-3.3.0/app/views/layouts/rails_admin/application.html.erb +27 -0
  30. data/rails_admin-3.3.0/app/views/layouts/rails_admin/content.html.erb +22 -0
  31. data/rails_admin-3.3.0/app/views/layouts/rails_admin/modal.js.erb +7 -0
  32. data/rails_admin-3.3.0/app/views/rails_admin/main/_dashboard_history.html.erb +45 -0
  33. data/rails_admin-3.3.0/app/views/rails_admin/main/_delete_notice.html.erb +35 -0
  34. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_action_text.html.erb +8 -0
  35. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_boolean.html.erb +14 -0
  36. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_ck_editor.html.erb +10 -0
  37. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_code_mirror.html.erb +9 -0
  38. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_colorpicker.html.erb +5 -0
  39. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_datetime.html.erb +10 -0
  40. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_enumeration.html.erb +25 -0
  41. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_field.html.erb +1 -0
  42. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_file_upload.html.erb +17 -0
  43. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_filtering_multiselect.html.erb +19 -0
  44. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_filtering_select.html.erb +21 -0
  45. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_froala.html.erb +8 -0
  46. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_multiple_file_upload.html.erb +20 -0
  47. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_nested_many.html.erb +21 -0
  48. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_nested_one.html.erb +21 -0
  49. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_polymorphic_association.html.erb +23 -0
  50. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_simple_mde.html.erb +8 -0
  51. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_text.html.erb +1 -0
  52. data/rails_admin-3.3.0/app/views/rails_admin/main/_form_wysihtml5.html.erb +8 -0
  53. data/rails_admin-3.3.0/app/views/rails_admin/main/_submit_buttons.html.erb +25 -0
  54. data/rails_admin-3.3.0/app/views/rails_admin/main/bulk_delete.html.erb +19 -0
  55. data/rails_admin-3.3.0/app/views/rails_admin/main/dashboard.html.erb +64 -0
  56. data/rails_admin-3.3.0/app/views/rails_admin/main/delete.html.erb +21 -0
  57. data/rails_admin-3.3.0/app/views/rails_admin/main/edit.html.erb +3 -0
  58. data/rails_admin-3.3.0/app/views/rails_admin/main/export.html.erb +149 -0
  59. data/rails_admin-3.3.0/app/views/rails_admin/main/history.html.erb +80 -0
  60. data/rails_admin-3.3.0/app/views/rails_admin/main/index.html.erb +184 -0
  61. data/rails_admin-3.3.0/app/views/rails_admin/main/new.html.erb +3 -0
  62. data/rails_admin-3.3.0/app/views/rails_admin/main/show.html.erb +30 -0
  63. data/rails_admin-3.3.0/config/initializers/active_record_extensions.rb +23 -0
  64. data/rails_admin-3.3.0/config/initializers/mongoid_extensions.rb +6 -0
  65. data/rails_admin-3.3.0/config/locales/rails_admin.en.yml +158 -0
  66. data/rails_admin-3.3.0/config/routes.rb +14 -0
  67. data/rails_admin-3.3.0/lib/generators/rails_admin/importmap_formatter.rb +176 -0
  68. data/rails_admin-3.3.0/lib/generators/rails_admin/install_generator.rb +142 -0
  69. data/rails_admin-3.3.0/lib/generators/rails_admin/templates/initializer.erb +42 -0
  70. data/rails_admin-3.3.0/lib/generators/rails_admin/templates/rails_admin.js +1 -0
  71. data/rails_admin-3.3.0/lib/generators/rails_admin/templates/rails_admin.scss.erb +1 -0
  72. data/rails_admin-3.3.0/lib/generators/rails_admin/templates/rails_admin.vite.js +2 -0
  73. data/rails_admin-3.3.0/lib/generators/rails_admin/templates/rails_admin.webpacker.js +2 -0
  74. data/rails_admin-3.3.0/lib/generators/rails_admin/utils.rb +21 -0
  75. data/rails_admin-3.3.0/lib/rails_admin/abstract_model.rb +275 -0
  76. data/rails_admin-3.3.0/lib/rails_admin/adapters/active_record/association.rb +130 -0
  77. data/rails_admin-3.3.0/lib/rails_admin/adapters/active_record/object_extension.rb +13 -0
  78. data/rails_admin-3.3.0/lib/rails_admin/adapters/active_record/property.rb +58 -0
  79. data/rails_admin-3.3.0/lib/rails_admin/adapters/active_record.rb +367 -0
  80. data/rails_admin-3.3.0/lib/rails_admin/adapters/active_record.rb.bak +348 -0
  81. data/rails_admin-3.3.0/lib/rails_admin/adapters/mongoid/association.rb +161 -0
  82. data/rails_admin-3.3.0/lib/rails_admin/adapters/mongoid/bson.rb +31 -0
  83. data/rails_admin-3.3.0/lib/rails_admin/adapters/mongoid/extension.rb +49 -0
  84. data/rails_admin-3.3.0/lib/rails_admin/adapters/mongoid/object_extension.rb +29 -0
  85. data/rails_admin-3.3.0/lib/rails_admin/adapters/mongoid/property.rb +101 -0
  86. data/rails_admin-3.3.0/lib/rails_admin/adapters/mongoid.rb +312 -0
  87. data/rails_admin-3.3.0/lib/rails_admin/config/actions/base.rb +162 -0
  88. data/rails_admin-3.3.0/lib/rails_admin/config/actions/bulk_delete.rb +67 -0
  89. data/rails_admin-3.3.0/lib/rails_admin/config/actions/dashboard.rb +62 -0
  90. data/rails_admin-3.3.0/lib/rails_admin/config/actions/delete.rb +58 -0
  91. data/rails_admin-3.3.0/lib/rails_admin/config/actions/edit.rb +56 -0
  92. data/rails_admin-3.3.0/lib/rails_admin/config/actions/export.rb +41 -0
  93. data/rails_admin-3.3.0/lib/rails_admin/config/actions/history_index.rb +40 -0
  94. data/rails_admin-3.3.0/lib/rails_admin/config/actions/history_show.rb +40 -0
  95. data/rails_admin-3.3.0/lib/rails_admin/config/actions/index.rb +98 -0
  96. data/rails_admin-3.3.0/lib/rails_admin/config/actions/new.rb +69 -0
  97. data/rails_admin-3.3.0/lib/rails_admin/config/actions/show.rb +36 -0
  98. data/rails_admin-3.3.0/lib/rails_admin/config/actions/show_in_app.rb +37 -0
  99. data/rails_admin-3.3.0/lib/rails_admin/config/actions.rb +122 -0
  100. data/rails_admin-3.3.0/lib/rails_admin/config/configurable.rb +107 -0
  101. data/rails_admin-3.3.0/lib/rails_admin/config/const_load_suppressor.rb +78 -0
  102. data/rails_admin-3.3.0/lib/rails_admin/config/fields/association.rb +168 -0
  103. data/rails_admin-3.3.0/lib/rails_admin/config/fields/base.rb +391 -0
  104. data/rails_admin-3.3.0/lib/rails_admin/config/fields/collection_association.rb +90 -0
  105. data/rails_admin-3.3.0/lib/rails_admin/config/fields/factories/action_text.rb +14 -0
  106. data/rails_admin-3.3.0/lib/rails_admin/config/fields/factories/active_storage.rb +34 -0
  107. data/rails_admin-3.3.0/lib/rails_admin/config/fields/factories/association.rb +32 -0
  108. data/rails_admin-3.3.0/lib/rails_admin/config/fields/factories/carrierwave.rb +30 -0
  109. data/rails_admin-3.3.0/lib/rails_admin/config/fields/factories/devise.rb +28 -0
  110. data/rails_admin-3.3.0/lib/rails_admin/config/fields/factories/dragonfly.rb +28 -0
  111. data/rails_admin-3.3.0/lib/rails_admin/config/fields/factories/enum.rb +23 -0
  112. data/rails_admin-3.3.0/lib/rails_admin/config/fields/factories/paperclip.rb +29 -0
  113. data/rails_admin-3.3.0/lib/rails_admin/config/fields/factories/password.rb +19 -0
  114. data/rails_admin-3.3.0/lib/rails_admin/config/fields/factories/shrine.rb +29 -0
  115. data/rails_admin-3.3.0/lib/rails_admin/config/fields/group.rb +77 -0
  116. data/rails_admin-3.3.0/lib/rails_admin/config/fields/singular_association.rb +59 -0
  117. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/action_text.rb +36 -0
  118. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/active_record_enum.rb +62 -0
  119. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/active_storage.rb +70 -0
  120. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/all.rb +43 -0
  121. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/belongs_to_association.rb +48 -0
  122. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/boolean.rb +70 -0
  123. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/bson_object_id.rb +42 -0
  124. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/carrierwave.rb +34 -0
  125. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/citext.rb +15 -0
  126. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/ck_editor.rb +40 -0
  127. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/code_mirror.rb +48 -0
  128. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/color.rb +43 -0
  129. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/date.rb +41 -0
  130. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/datetime.rb +96 -0
  131. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/decimal.rb +23 -0
  132. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/dragonfly.rb +44 -0
  133. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/enum.rb +52 -0
  134. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/file_upload.rb +87 -0
  135. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/float.rb +23 -0
  136. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/froala.rb +37 -0
  137. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/has_and_belongs_to_many_association.rb +16 -0
  138. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/has_many_association.rb +16 -0
  139. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/has_one_association.rb +35 -0
  140. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/hidden.rb +31 -0
  141. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/inet.rb +15 -0
  142. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/integer.rb +20 -0
  143. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/json.rb +37 -0
  144. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/multiple_active_storage.rb +82 -0
  145. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/multiple_carrierwave.rb +59 -0
  146. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/multiple_file_upload.rb +134 -0
  147. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/numeric.rb +24 -0
  148. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/paperclip.rb +30 -0
  149. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/password.rb +45 -0
  150. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/polymorphic_association.rb +118 -0
  151. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/serialized.rb +28 -0
  152. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/shrine.rb +56 -0
  153. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/simple_mde.rb +38 -0
  154. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/string.rb +50 -0
  155. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/string_like.rb +25 -0
  156. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/text.rb +28 -0
  157. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/time.rb +36 -0
  158. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/timestamp.rb +16 -0
  159. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/uuid.rb +15 -0
  160. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types/wysihtml5.rb +43 -0
  161. data/rails_admin-3.3.0/lib/rails_admin/config/fields/types.rb +29 -0
  162. data/rails_admin-3.3.0/lib/rails_admin/config/fields.rb +92 -0
  163. data/rails_admin-3.3.0/lib/rails_admin/config/groupable.rb +20 -0
  164. data/rails_admin-3.3.0/lib/rails_admin/config/has_description.rb +14 -0
  165. data/rails_admin-3.3.0/lib/rails_admin/config/has_fields.rb +144 -0
  166. data/rails_admin-3.3.0/lib/rails_admin/config/has_groups.rb +27 -0
  167. data/rails_admin-3.3.0/lib/rails_admin/config/hideable.rb +30 -0
  168. data/rails_admin-3.3.0/lib/rails_admin/config/inspectable.rb +39 -0
  169. data/rails_admin-3.3.0/lib/rails_admin/config/lazy_model.rb +74 -0
  170. data/rails_admin-3.3.0/lib/rails_admin/config/model.rb +120 -0
  171. data/rails_admin-3.3.0/lib/rails_admin/config/proxyable/proxy.rb +39 -0
  172. data/rails_admin-3.3.0/lib/rails_admin/config/proxyable.rb +26 -0
  173. data/rails_admin-3.3.0/lib/rails_admin/config/sections/base.rb +36 -0
  174. data/rails_admin-3.3.0/lib/rails_admin/config/sections/create.rb +13 -0
  175. data/rails_admin-3.3.0/lib/rails_admin/config/sections/edit.rb +13 -0
  176. data/rails_admin-3.3.0/lib/rails_admin/config/sections/export.rb +13 -0
  177. data/rails_admin-3.3.0/lib/rails_admin/config/sections/list.rb +63 -0
  178. data/rails_admin-3.3.0/lib/rails_admin/config/sections/modal.rb +12 -0
  179. data/rails_admin-3.3.0/lib/rails_admin/config/sections/nested.rb +12 -0
  180. data/rails_admin-3.3.0/lib/rails_admin/config/sections/show.rb +12 -0
  181. data/rails_admin-3.3.0/lib/rails_admin/config/sections/update.rb +12 -0
  182. data/rails_admin-3.3.0/lib/rails_admin/config/sections.rb +39 -0
  183. data/rails_admin-3.3.0/lib/rails_admin/config.rb +403 -0
  184. data/rails_admin-3.3.0/lib/rails_admin/engine.rb +84 -0
  185. data/rails_admin-3.3.0/lib/rails_admin/extension.rb +35 -0
  186. data/rails_admin-3.3.0/lib/rails_admin/extensions/cancancan/authorization_adapter.rb +90 -0
  187. data/rails_admin-3.3.0/lib/rails_admin/extensions/cancancan.rb +5 -0
  188. data/rails_admin-3.3.0/lib/rails_admin/extensions/controller_extension.rb +8 -0
  189. data/rails_admin-3.3.0/lib/rails_admin/extensions/paper_trail/auditing_adapter.rb +187 -0
  190. data/rails_admin-3.3.0/lib/rails_admin/extensions/paper_trail.rb +5 -0
  191. data/rails_admin-3.3.0/lib/rails_admin/extensions/pundit/authorization_adapter.rb +72 -0
  192. data/rails_admin-3.3.0/lib/rails_admin/extensions/pundit.rb +5 -0
  193. data/rails_admin-3.3.0/lib/rails_admin/extensions/url_for_extension.rb +15 -0
  194. data/rails_admin-3.3.0/lib/rails_admin/support/composite_keys_serializer.rb +15 -0
  195. data/rails_admin-3.3.0/lib/rails_admin/support/csv_converter.rb +107 -0
  196. data/rails_admin-3.3.0/lib/rails_admin/support/datetime.rb +66 -0
  197. data/rails_admin-3.3.0/lib/rails_admin/support/es_module_processor.rb +23 -0
  198. data/rails_admin-3.3.0/lib/rails_admin/support/hash_helper.rb +31 -0
  199. data/rails_admin-3.3.0/lib/rails_admin/version.rb +54 -0
  200. data/rails_admin-3.3.0/lib/rails_admin.rb +62 -0
  201. data/rails_admin-3.3.0/lib/tasks/rails_admin.rake +47 -0
  202. data/rails_admin-3.3.0/package.json +30 -0
  203. data/rails_admin-3.3.0/src/rails_admin/abstract-select.js +30 -0
  204. data/rails_admin-3.3.0/src/rails_admin/base.js +32 -0
  205. data/rails_admin-3.3.0/src/rails_admin/filter-box.js +360 -0
  206. data/rails_admin-3.3.0/src/rails_admin/filtering-multiselect.js +387 -0
  207. data/rails_admin-3.3.0/src/rails_admin/filtering-select.js +306 -0
  208. data/rails_admin-3.3.0/src/rails_admin/i18n.js +18 -0
  209. data/rails_admin-3.3.0/src/rails_admin/jquery.js +3 -0
  210. data/rails_admin-3.3.0/src/rails_admin/nested-form-hooks.js +110 -0
  211. data/rails_admin-3.3.0/src/rails_admin/remote-form.js +193 -0
  212. data/rails_admin-3.3.0/src/rails_admin/sidescroll.js +20 -0
  213. data/rails_admin-3.3.0/src/rails_admin/styles/base/README.txt +2 -0
  214. data/rails_admin-3.3.0/src/rails_admin/styles/base/mixins.scss +1 -0
  215. data/rails_admin-3.3.0/src/rails_admin/styles/base/theming.scss +342 -0
  216. data/rails_admin-3.3.0/src/rails_admin/styles/base/variables.scss +3 -0
  217. data/rails_admin-3.3.0/src/rails_admin/styles/base.scss +27 -0
  218. data/rails_admin-3.3.0/src/rails_admin/styles/filtering-multiselect.scss +53 -0
  219. data/rails_admin-3.3.0/src/rails_admin/styles/filtering-select.scss +70 -0
  220. data/rails_admin-3.3.0/src/rails_admin/styles/widgets.scss +26 -0
  221. data/rails_admin-3.3.0/src/rails_admin/ui.js +176 -0
  222. data/rails_admin-3.3.0/src/rails_admin/vendor/jquery_nested_form.js +122 -0
  223. data/rails_admin-3.3.0/src/rails_admin/widgets.js +507 -0
  224. data/rails_admin-3.3.0/vendor/assets/fonts/rails_admin/fa-solid-900.ttf +0 -0
  225. data/rails_admin-3.3.0/vendor/assets/fonts/rails_admin/fa-solid-900.woff2 +0 -0
  226. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/bootstrap.js +5046 -0
  227. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/flatpickr-with-locales.js +11246 -0
  228. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/jquery-ui/data.js +41 -0
  229. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/jquery-ui/effect.js +1637 -0
  230. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/jquery-ui/ie.js +17 -0
  231. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/jquery-ui/keycode.js +47 -0
  232. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/jquery-ui/position.js +500 -0
  233. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/jquery-ui/safe-active-element.js +42 -0
  234. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/jquery-ui/scroll-parent.js +47 -0
  235. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/jquery-ui/unique-id.js +51 -0
  236. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/jquery-ui/version.js +17 -0
  237. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/jquery-ui/widget.js +735 -0
  238. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/jquery-ui/widgets/autocomplete.js +689 -0
  239. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/jquery-ui/widgets/menu.js +680 -0
  240. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/jquery-ui/widgets/mouse.js +230 -0
  241. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/jquery-ui/widgets/sortable.js +1561 -0
  242. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/jquery3.js +10881 -0
  243. data/rails_admin-3.3.0/vendor/assets/javascripts/rails_admin/popper.js +1974 -0
  244. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_accordion.scss +118 -0
  245. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_alert.scss +57 -0
  246. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_badge.scss +29 -0
  247. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_breadcrumb.scss +28 -0
  248. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_button-group.scss +139 -0
  249. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_buttons.scss +111 -0
  250. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_card.scss +216 -0
  251. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_carousel.scss +229 -0
  252. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_close.scss +40 -0
  253. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_containers.scss +41 -0
  254. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_dropdown.scss +240 -0
  255. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_forms.scss +9 -0
  256. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_functions.scss +302 -0
  257. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_grid.scss +33 -0
  258. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_helpers.scss +9 -0
  259. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_images.scss +42 -0
  260. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_list-group.scss +174 -0
  261. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_mixins.scss +43 -0
  262. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_modal.scss +209 -0
  263. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_nav.scss +139 -0
  264. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_navbar.scss +335 -0
  265. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_offcanvas.scss +83 -0
  266. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_pagination.scss +64 -0
  267. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_placeholders.scss +51 -0
  268. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_popover.scss +158 -0
  269. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_progress.scss +48 -0
  270. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_reboot.scss +625 -0
  271. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_root.scss +54 -0
  272. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_spinners.scss +69 -0
  273. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_tables.scss +155 -0
  274. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_toasts.scss +51 -0
  275. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_tooltip.scss +115 -0
  276. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_transitions.scss +27 -0
  277. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_type.scss +104 -0
  278. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_utilities.scss +630 -0
  279. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/_variables.scss +1641 -0
  280. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/bootstrap.scss +53 -0
  281. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_floating-labels.scss +63 -0
  282. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-check.scss +152 -0
  283. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-control.scss +219 -0
  284. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-range.scss +91 -0
  285. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-select.scss +72 -0
  286. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-text.scss +11 -0
  287. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_input-group.scss +121 -0
  288. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_labels.scss +36 -0
  289. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_validation.scss +12 -0
  290. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_clearfix.scss +3 -0
  291. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_colored-links.scss +12 -0
  292. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_position.scss +30 -0
  293. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_ratio.scss +26 -0
  294. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_stacks.scss +15 -0
  295. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_stretched-link.scss +15 -0
  296. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_text-truncation.scss +7 -0
  297. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_visually-hidden.scss +8 -0
  298. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_vr.scss +8 -0
  299. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_alert.scss +11 -0
  300. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_backdrop.scss +14 -0
  301. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_border-radius.scss +78 -0
  302. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_box-shadow.scss +18 -0
  303. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_breakpoints.scss +127 -0
  304. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_buttons.scss +133 -0
  305. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_caret.scss +64 -0
  306. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_clearfix.scss +9 -0
  307. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_color-scheme.scss +7 -0
  308. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_container.scss +9 -0
  309. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_deprecate.scss +10 -0
  310. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_forms.scss +144 -0
  311. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_gradients.scss +47 -0
  312. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_grid.scss +151 -0
  313. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_image.scss +16 -0
  314. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_list-group.scss +24 -0
  315. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_lists.scss +7 -0
  316. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_pagination.scss +31 -0
  317. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_reset-text.scss +17 -0
  318. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_resize.scss +6 -0
  319. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_table-variants.scss +21 -0
  320. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_text-truncate.scss +8 -0
  321. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_transition.scss +26 -0
  322. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_utilities.scss +89 -0
  323. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_visually-hidden.scss +29 -0
  324. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/utilities/_api.scss +47 -0
  325. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/bootstrap/vendor/_rfs.scss +354 -0
  326. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/flatpickr.css +791 -0
  327. data/rails_admin-3.3.0/vendor/assets/stylesheets/rails_admin/font-awesome.scss +6351 -0
  328. data/ultra-smart-hub.gemspec +12 -0
  329. metadata +368 -0
@@ -0,0 +1,162 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rails_admin/config/proxyable'
4
+ require 'rails_admin/config/configurable'
5
+ require 'rails_admin/config/hideable'
6
+
7
+ module RailsAdmin
8
+ module Config
9
+ module Actions
10
+ class Base
11
+ include RailsAdmin::Config::Proxyable
12
+ include RailsAdmin::Config::Configurable
13
+ include RailsAdmin::Config::Hideable
14
+
15
+ register_instance_option :only do
16
+ nil
17
+ end
18
+
19
+ register_instance_option :except do
20
+ []
21
+ end
22
+
23
+ register_instance_option :show_in_navigation do
24
+ root?
25
+ end
26
+
27
+ register_instance_option :show_in_sidebar do
28
+ !show_in_navigation
29
+ end
30
+
31
+ register_instance_option :show_in_menu do
32
+ true
33
+ end
34
+
35
+ register_instance_option :sidebar_label do
36
+ nil
37
+ end
38
+
39
+ # http://getbootstrap.com/2.3.2/base-css.html#icons
40
+ register_instance_option :link_icon do
41
+ 'fas fa-question'
42
+ end
43
+
44
+ # Should the action be visible
45
+ register_instance_option :visible? do
46
+ authorized?
47
+ end
48
+
49
+ register_instance_option :enabled? do
50
+ bindings[:abstract_model].nil? || (
51
+ (only.nil? || [only].flatten.collect(&:to_s).include?(bindings[:abstract_model].to_s)) &&
52
+ ![except].flatten.collect(&:to_s).include?(bindings[:abstract_model].to_s) &&
53
+ !bindings[:abstract_model].config.excluded?
54
+ ) && (!respond_to?(:writable?) || writable?)
55
+ end
56
+
57
+ register_instance_option :authorized? do
58
+ enabled? && (
59
+ bindings[:controller].try(:authorization_adapter).nil? || bindings[:controller].authorization_adapter.authorized?(authorization_key, bindings[:abstract_model], bindings[:object])
60
+ )
61
+ end
62
+
63
+ # Is the action acting on the root level (Example: /admin/contact)
64
+ register_instance_option :root? do
65
+ false
66
+ end
67
+
68
+ # Is the action on a model scope (Example: /admin/team/export)
69
+ register_instance_option :collection? do
70
+ false
71
+ end
72
+
73
+ # Is the action on an object scope (Example: /admin/team/1/edit)
74
+ register_instance_option :member? do
75
+ false
76
+ end
77
+
78
+ # Target window [_self, _blank]
79
+ register_instance_option :link_target do
80
+ nil
81
+ end
82
+
83
+ # Determines whether to navigate via Turbo Drive or not
84
+ register_instance_option :turbo? do
85
+ true
86
+ end
87
+
88
+ # This block is evaluated in the context of the controller when action is called
89
+ # You can access:
90
+ # - @objects if you're on a model scope
91
+ # - @abstract_model & @model_config if you're on a model or object scope
92
+ # - @object if you're on an object scope
93
+ register_instance_option :controller do
94
+ proc do
95
+ render action: @action.template_name
96
+ end
97
+ end
98
+
99
+ # Model scoped actions only. You will need to handle params[:bulk_ids] in controller
100
+ register_instance_option :bulkable? do
101
+ false
102
+ end
103
+
104
+ # View partial name (called in default :controller block)
105
+ register_instance_option :template_name do
106
+ key.to_sym
107
+ end
108
+
109
+ # For CanCanCan and the like
110
+ register_instance_option :authorization_key do
111
+ key.to_sym
112
+ end
113
+
114
+ # List of methods allowed. Note that you are responsible for correctly handling them in :controller block
115
+ register_instance_option :http_methods do
116
+ [:get]
117
+ end
118
+
119
+ # Url fragment
120
+ register_instance_option :route_fragment do
121
+ custom_key.to_s
122
+ end
123
+
124
+ # Controller action name
125
+ register_instance_option :action_name do
126
+ custom_key.to_sym
127
+ end
128
+
129
+ # I18n key
130
+ register_instance_option :i18n_key do
131
+ key
132
+ end
133
+
134
+ # User should override only custom_key (action name and route fragment change, allows for duplicate actions)
135
+ register_instance_option :custom_key do
136
+ key
137
+ end
138
+
139
+ # Breadcrumb parent
140
+ register_instance_option :breadcrumb_parent do
141
+ if root?
142
+ [:dashboard]
143
+ elsif collection?
144
+ [:index, bindings[:abstract_model]]
145
+ elsif member?
146
+ [:show, bindings[:abstract_model], bindings[:object]]
147
+ end
148
+ end
149
+
150
+ # Off API.
151
+
152
+ def key
153
+ self.class.key
154
+ end
155
+
156
+ def self.key
157
+ name.to_s.demodulize.underscore.to_sym
158
+ end
159
+ end
160
+ end
161
+ end
162
+ end
@@ -0,0 +1,67 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAdmin
4
+ module Config
5
+ module Actions
6
+ class BulkDelete < RailsAdmin::Config::Actions::Base
7
+ RailsAdmin::Config::Actions.register(self)
8
+
9
+ register_instance_option :collection do
10
+ true
11
+ end
12
+
13
+ register_instance_option :http_methods do
14
+ %i[post delete]
15
+ end
16
+
17
+ register_instance_option :controller do
18
+ proc do
19
+ if request.post? # BULK DELETE
20
+ @objects = list_entries(@model_config, :destroy)
21
+
22
+ if @objects.blank?
23
+ flash[:error] = t('admin.flash.error', name: pluralize(0, @model_config.label), action: t('admin.actions.delete.done'))
24
+ redirect_to index_path
25
+ else
26
+ render @action.template_name
27
+ end
28
+
29
+ elsif request.delete? # BULK DESTROY
30
+
31
+ destroyed = nil
32
+ not_destroyed = nil
33
+
34
+ unless params[:bulk_ids].blank?
35
+ @objects = list_entries(@model_config, :destroy)
36
+ unless @objects.blank?
37
+ processed_objects = @abstract_model.destroy(@objects)
38
+ destroyed = processed_objects.select(&:destroyed?)
39
+ not_destroyed = processed_objects - destroyed
40
+ destroyed.each do |object|
41
+ @auditing_adapter&.delete_object(object, @abstract_model, _current_user)
42
+ end
43
+ end
44
+ end
45
+
46
+ if destroyed.nil?
47
+ flash[:error] = t('admin.flash.error', name: pluralize(0, @model_config.label), action: t('admin.actions.delete.done'))
48
+ else
49
+ flash[:success] = t('admin.flash.successful', name: pluralize(destroyed.count, @model_config.label), action: t('admin.actions.delete.done')) unless destroyed.empty?
50
+ flash[:error] = t('admin.flash.error', name: pluralize(not_destroyed.count, @model_config.label), action: t('admin.actions.delete.done')) unless not_destroyed.empty?
51
+ end
52
+ redirect_to back_or_index
53
+ end
54
+ end
55
+ end
56
+
57
+ register_instance_option :authorization_key do
58
+ :destroy
59
+ end
60
+
61
+ register_instance_option :bulkable? do
62
+ true
63
+ end
64
+ end
65
+ end
66
+ end
67
+ end
@@ -0,0 +1,62 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAdmin
4
+ module Config
5
+ module Actions
6
+ class Dashboard < RailsAdmin::Config::Actions::Base
7
+ RailsAdmin::Config::Actions.register(self)
8
+
9
+ register_instance_option :root? do
10
+ true
11
+ end
12
+
13
+ register_instance_option :breadcrumb_parent do
14
+ nil
15
+ end
16
+
17
+ register_instance_option :auditing_versions_limit do
18
+ 100
19
+ end
20
+
21
+ register_instance_option :controller do
22
+ proc do
23
+ @history = @auditing_adapter&.latest(@action.auditing_versions_limit) if @action.history?
24
+ if @action.statistics?
25
+ model_configs = RailsAdmin::Config.visible_models(controller: self)
26
+
27
+ @abstract_models = model_configs.map(&:abstract_model)
28
+ @most_recent_created = {}
29
+ @count = {}
30
+ @max = 0
31
+ model_configs.each do |config|
32
+ scope = @authorization_adapter&.query(:index, config.abstract_model)
33
+ current_count = config.abstract_model.count({}, scope)
34
+ @max = current_count > @max ? current_count : @max
35
+ name = config.abstract_model.model.name
36
+ @count[name] = current_count
37
+ @most_recent_created[name] = config.last_created_at
38
+ end
39
+ end
40
+ render @action.template_name, status: @status_code || :ok
41
+ end
42
+ end
43
+
44
+ register_instance_option :route_fragment do
45
+ ''
46
+ end
47
+
48
+ register_instance_option :link_icon do
49
+ 'fas fa-home'
50
+ end
51
+
52
+ register_instance_option :statistics? do
53
+ true
54
+ end
55
+
56
+ register_instance_option :history? do
57
+ true
58
+ end
59
+ end
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,58 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAdmin
4
+ module Config
5
+ module Actions
6
+ class Delete < RailsAdmin::Config::Actions::Base
7
+ RailsAdmin::Config::Actions.register(self)
8
+
9
+ register_instance_option :member do
10
+ true
11
+ end
12
+
13
+ register_instance_option :route_fragment do
14
+ 'delete'
15
+ end
16
+
17
+ register_instance_option :http_methods do
18
+ %i[get delete]
19
+ end
20
+
21
+ register_instance_option :authorization_key do
22
+ :destroy
23
+ end
24
+
25
+ register_instance_option :controller do
26
+ proc do
27
+ if request.get? # DELETE
28
+
29
+ respond_to do |format|
30
+ format.html { render @action.template_name }
31
+ format.js { render @action.template_name, layout: false }
32
+ end
33
+
34
+ elsif request.delete? # DESTROY
35
+
36
+ @auditing_adapter&.delete_object(@object, @abstract_model, _current_user)
37
+ if @object.destroy
38
+ flash[:success] = t('admin.flash.successful', name: @model_config.label, action: t('admin.actions.delete.done'))
39
+ redirect_to index_path
40
+ else
41
+ handle_save_error :delete
42
+ end
43
+
44
+ end
45
+ end
46
+ end
47
+
48
+ register_instance_option :link_icon do
49
+ 'fas fa-times'
50
+ end
51
+
52
+ register_instance_option :writable? do
53
+ !(bindings[:object] && bindings[:object].readonly?)
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAdmin
4
+ module Config
5
+ module Actions
6
+ class Edit < RailsAdmin::Config::Actions::Base
7
+ RailsAdmin::Config::Actions.register(self)
8
+
9
+ register_instance_option :member do
10
+ true
11
+ end
12
+
13
+ register_instance_option :http_methods do
14
+ %i[get put]
15
+ end
16
+
17
+ register_instance_option :controller do
18
+ proc do
19
+ if request.get? # EDIT
20
+
21
+ respond_to do |format|
22
+ format.html { render @action.template_name }
23
+ format.js { render @action.template_name, layout: 'rails_admin/modal', content_type: Mime[:html].to_s }
24
+ end
25
+
26
+ elsif request.put? # UPDATE
27
+ sanitize_params_for!(request.xhr? ? :modal : :update)
28
+
29
+ @object.assign_attributes(params[@abstract_model.param_key])
30
+ @authorization_adapter&.authorize(:update, @abstract_model, @object)
31
+ changes = @object.changes
32
+ if @object.save
33
+ @auditing_adapter&.update_object(@object, @abstract_model, _current_user, changes)
34
+ respond_to do |format|
35
+ format.html { redirect_to_on_success }
36
+ format.json { render json: {id: @object.id.to_s, label: @model_config.with(object: @object).object_label} }
37
+ end
38
+ else
39
+ handle_save_error :edit
40
+ end
41
+
42
+ end
43
+ end
44
+ end
45
+
46
+ register_instance_option :link_icon do
47
+ 'fas fa-pencil-alt'
48
+ end
49
+
50
+ register_instance_option :writable? do
51
+ !(bindings[:object] && bindings[:object].readonly?)
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAdmin
4
+ module Config
5
+ module Actions
6
+ class Export < RailsAdmin::Config::Actions::Base
7
+ RailsAdmin::Config::Actions.register(self)
8
+
9
+ register_instance_option :collection do
10
+ true
11
+ end
12
+
13
+ register_instance_option :http_methods do
14
+ %i[get post]
15
+ end
16
+
17
+ register_instance_option :controller do
18
+ proc do
19
+ format = params[:json] && :json || params[:csv] && :csv || params[:xml] && :xml
20
+ if format
21
+ request.format = format
22
+ @schema = HashHelper.symbolize(params[:schema].slice(:except, :include, :methods, :only).permit!.to_h) if params[:schema] # to_json and to_xml expect symbols for keys AND values.
23
+ @objects = list_entries(@model_config, :export)
24
+ index
25
+ else
26
+ render @action.template_name
27
+ end
28
+ end
29
+ end
30
+
31
+ register_instance_option :bulkable? do
32
+ true
33
+ end
34
+
35
+ register_instance_option :link_icon do
36
+ 'fas fa-file-export'
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAdmin
4
+ module Config
5
+ module Actions
6
+ class HistoryIndex < RailsAdmin::Config::Actions::Base
7
+ RailsAdmin::Config::Actions.register(self)
8
+
9
+ register_instance_option :authorization_key do
10
+ :history
11
+ end
12
+
13
+ register_instance_option :collection do
14
+ true
15
+ end
16
+
17
+ register_instance_option :route_fragment do
18
+ 'history'
19
+ end
20
+
21
+ register_instance_option :controller do
22
+ proc do
23
+ @general = true
24
+ @history = @auditing_adapter&.listing_for_model(@abstract_model, params[:query], params[:sort], params[:sort_reverse], params[:all], params[Kaminari.config.param_name]) || []
25
+
26
+ render @action.template_name
27
+ end
28
+ end
29
+
30
+ register_instance_option :template_name do
31
+ :history
32
+ end
33
+
34
+ register_instance_option :link_icon do
35
+ 'fas fa-book'
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAdmin
4
+ module Config
5
+ module Actions
6
+ class HistoryShow < RailsAdmin::Config::Actions::Base
7
+ RailsAdmin::Config::Actions.register(self)
8
+
9
+ register_instance_option :authorization_key do
10
+ :history
11
+ end
12
+
13
+ register_instance_option :member do
14
+ true
15
+ end
16
+
17
+ register_instance_option :route_fragment do
18
+ 'history'
19
+ end
20
+
21
+ register_instance_option :controller do
22
+ proc do
23
+ @general = false
24
+ @history = @auditing_adapter&.listing_for_object(@abstract_model, @object, params[:query], params[:sort], params[:sort_reverse], params[:all], params[Kaminari.config.param_name]) || []
25
+
26
+ render @action.template_name
27
+ end
28
+ end
29
+
30
+ register_instance_option :template_name do
31
+ :history
32
+ end
33
+
34
+ register_instance_option :link_icon do
35
+ 'fas fa-book'
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,98 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'activemodel-serializers-xml'
4
+
5
+ module RailsAdmin
6
+ module Config
7
+ module Actions
8
+ class Index < RailsAdmin::Config::Actions::Base
9
+ RailsAdmin::Config::Actions.register(self)
10
+
11
+ register_instance_option :collection do
12
+ true
13
+ end
14
+
15
+ register_instance_option :http_methods do
16
+ %i[get post]
17
+ end
18
+
19
+ register_instance_option :route_fragment do
20
+ ''
21
+ end
22
+
23
+ register_instance_option :breadcrumb_parent do
24
+ parent_model = bindings[:abstract_model].try(:config).try(:parent)
25
+ am = parent_model && RailsAdmin.config(parent_model).try(:abstract_model)
26
+ if am
27
+ [:index, am]
28
+ else
29
+ [:dashboard]
30
+ end
31
+ end
32
+
33
+ register_instance_option :controller do
34
+ proc do
35
+ @objects ||= list_entries
36
+
37
+ unless @model_config.list.scopes.empty?
38
+ if params[:scope].blank?
39
+ @objects = @objects.send(@model_config.list.scopes.first) unless @model_config.list.scopes.first.nil?
40
+ elsif @model_config.list.scopes.collect(&:to_s).include?(params[:scope])
41
+ @objects = @objects.send(params[:scope].to_sym)
42
+ end
43
+ end
44
+
45
+ respond_to do |format|
46
+ format.html do
47
+ render @action.template_name, status: @status_code || :ok
48
+ end
49
+
50
+ format.json do
51
+ output =
52
+ if params[:compact]
53
+ if @association
54
+ @association.collection(@objects).collect { |(label, id)| {id: id, label: label} }
55
+ else
56
+ @objects.collect { |object| {id: object.id.to_s, label: object.send(@model_config.object_label_method).to_s} }
57
+ end
58
+ else
59
+ @objects.to_json(@schema)
60
+ end
61
+
62
+ if params[:send_data]
63
+ send_data output, filename: "#{params[:model_name]}_#{DateTime.now.strftime('%Y-%m-%d_%Hh%Mm%S')}.json"
64
+ else
65
+ render json: output, root: false
66
+ end
67
+ end
68
+
69
+ format.xml do
70
+ output = @objects.to_xml(@schema)
71
+ if params[:send_data]
72
+ send_data output, filename: "#{params[:model_name]}_#{DateTime.now.strftime('%Y-%m-%d_%Hh%Mm%S')}.xml"
73
+ else
74
+ render xml: output
75
+ end
76
+ end
77
+
78
+ format.csv do
79
+ header, encoding, output = CSVConverter.new(@objects, @schema).to_csv(params[:csv_options].permit!.to_h)
80
+ if params[:send_data]
81
+ send_data output,
82
+ type: "text/csv; charset=#{encoding}; #{'header=present' if header}",
83
+ disposition: "attachment; filename=#{params[:model_name]}_#{DateTime.now.strftime('%Y-%m-%d_%Hh%Mm%S')}.csv"
84
+ else
85
+ render plain: output
86
+ end
87
+ end
88
+ end
89
+ end
90
+ end
91
+
92
+ register_instance_option :link_icon do
93
+ 'fas fa-th-list'
94
+ end
95
+ end
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,69 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAdmin
4
+ module Config
5
+ module Actions
6
+ class New < RailsAdmin::Config::Actions::Base
7
+ RailsAdmin::Config::Actions.register(self)
8
+
9
+ register_instance_option :collection do
10
+ true
11
+ end
12
+
13
+ register_instance_option :http_methods do
14
+ %i[get post] # NEW / CREATE
15
+ end
16
+
17
+ register_instance_option :controller do
18
+ proc do
19
+ if request.get? # NEW
20
+
21
+ @object = @abstract_model.new
22
+ @action = @action.with(@action.bindings.merge(object: @object))
23
+ @authorization_adapter&.attributes_for(:new, @abstract_model)&.each do |name, value|
24
+ @object.send("#{name}=", value)
25
+ end
26
+ object_params = params[@abstract_model.param_key]
27
+ if object_params
28
+ sanitize_params_for!(request.xhr? ? :modal : :create)
29
+ @object.assign_attributes(@object.attributes.merge(object_params.to_h))
30
+ end
31
+ respond_to do |format|
32
+ format.html { render @action.template_name }
33
+ format.js { render @action.template_name, layout: 'rails_admin/modal', content_type: Mime[:html].to_s }
34
+ end
35
+
36
+ elsif request.post? # CREATE
37
+
38
+ @modified_assoc = []
39
+ @object = @abstract_model.new
40
+ sanitize_params_for!(request.xhr? ? :modal : :create)
41
+
42
+ @object.assign_attributes(params[@abstract_model.param_key])
43
+ @authorization_adapter&.authorize(:create, @abstract_model, @object)
44
+
45
+ if @object.save
46
+ @auditing_adapter&.create_object(@object, @abstract_model, _current_user)
47
+ respond_to do |format|
48
+ format.html { redirect_to_on_success }
49
+ format.json { render json: {id: @object.id.to_s, label: @model_config.with(object: @object).object_label} }
50
+ end
51
+ else
52
+ handle_save_error
53
+ end
54
+
55
+ end
56
+ end
57
+ end
58
+
59
+ register_instance_option :link_icon do
60
+ 'fas fa-plus'
61
+ end
62
+
63
+ register_instance_option :writable? do
64
+ !(bindings[:object] && bindings[:object].readonly?)
65
+ end
66
+ end
67
+ end
68
+ end
69
+ end