spina 2.1.1 → 2.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.

Potentially problematic release.


This version of spina might be problematic. Click here for more details.

Files changed (76) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/config/spina/manifest.js +1 -0
  3. data/app/assets/javascripts/spina/application.js +2 -0
  4. data/app/assets/javascripts/spina/controllers/attachment_picker_controller.js +1 -1
  5. data/app/assets/javascripts/spina/controllers/autofocus_controller.js +1 -1
  6. data/app/assets/javascripts/spina/controllers/button_controller.js +1 -1
  7. data/app/assets/javascripts/spina/controllers/confetti_controller.js +2 -2
  8. data/app/assets/javascripts/spina/controllers/confirm_controller.js +1 -1
  9. data/app/assets/javascripts/spina/controllers/delegate_click_controller.js +1 -1
  10. data/app/assets/javascripts/spina/controllers/exists_controller.js +1 -1
  11. data/app/assets/javascripts/spina/controllers/form_controller.js +2 -2
  12. data/app/assets/javascripts/spina/controllers/hotkeys_controller.js +2 -2
  13. data/app/assets/javascripts/spina/controllers/image_collection_controller.js +2 -2
  14. data/app/assets/javascripts/spina/controllers/image_fade_in_controller.js +1 -1
  15. data/app/assets/javascripts/spina/controllers/infinite_scroll_controller.js +1 -1
  16. data/app/assets/javascripts/spina/controllers/loading_button_controller.js +1 -1
  17. data/app/assets/javascripts/spina/controllers/media_picker_controller.js +1 -1
  18. data/app/assets/javascripts/spina/controllers/media_picker_modal_controller.js +1 -1
  19. data/app/assets/javascripts/spina/controllers/modal_controller.js +1 -1
  20. data/app/assets/javascripts/spina/controllers/navigation_controller.js +1 -1
  21. data/app/assets/javascripts/spina/controllers/parent_pages_controller.js +1 -1
  22. data/app/assets/javascripts/spina/controllers/repeater_controller.js +2 -2
  23. data/app/assets/javascripts/spina/controllers/select_placeholder_controller.js +1 -1
  24. data/app/assets/javascripts/spina/controllers/selectable_controller.js +1 -1
  25. data/app/assets/javascripts/spina/controllers/shortcuts_controller.js +1 -1
  26. data/app/assets/javascripts/spina/controllers/sortable_controller.js +3 -3
  27. data/app/assets/javascripts/spina/controllers/switch_controller.js +1 -1
  28. data/app/assets/javascripts/spina/controllers/tabs_controller.js +1 -1
  29. data/app/assets/javascripts/spina/controllers/toggle_controller.js +1 -1
  30. data/app/assets/javascripts/spina/controllers/trix_controller.js +1 -1
  31. data/app/assets/javascripts/spina/controllers/unique_id_controller.js +1 -1
  32. data/app/assets/javascripts/spina/libraries/stimulus-reveal@1.2.4.js +1 -1
  33. data/app/assets/stylesheets/spina/_tailwind.css +110078 -105581
  34. data/app/components/spina/media_picker/modal_component.html.erb +2 -2
  35. data/app/controllers/concerns/spina/api/paginable.rb +44 -0
  36. data/app/controllers/concerns/spina/current_account.rb +17 -0
  37. data/app/controllers/concerns/spina/current_theme.rb +17 -0
  38. data/app/controllers/spina/admin/admin_controller.rb +3 -10
  39. data/app/controllers/spina/admin/pages_controller.rb +2 -2
  40. data/app/controllers/spina/admin/password_resets_controller.rb +1 -1
  41. data/app/controllers/spina/admin/sessions_controller.rb +1 -1
  42. data/app/controllers/spina/admin/users_controller.rb +11 -1
  43. data/app/controllers/spina/api/api_controller.rb +29 -0
  44. data/app/controllers/spina/api/images_controller.rb +12 -0
  45. data/app/controllers/spina/api/navigations_controller.rb +20 -0
  46. data/app/controllers/spina/api/pages_controller.rb +26 -0
  47. data/app/controllers/spina/api/resources_controller.rb +19 -0
  48. data/app/controllers/spina/application_controller.rb +2 -1
  49. data/app/controllers/spina/pages_controller.rb +5 -5
  50. data/app/helpers/spina/attachments_helper.rb +1 -1
  51. data/app/helpers/spina/images_helper.rb +1 -5
  52. data/app/helpers/spina/spina_helper.rb +5 -8
  53. data/app/models/spina/page.rb +1 -1
  54. data/app/serializers/spina/api/base_serializer.rb +6 -0
  55. data/app/serializers/spina/api/image_serializer.rb +20 -0
  56. data/app/serializers/spina/api/navigation_serializer.rb +30 -0
  57. data/app/serializers/spina/api/page_serializer.rb +28 -0
  58. data/app/serializers/spina/api/resource_serializer.rb +12 -0
  59. data/app/views/layouts/spina/admin/application.html.erb +3 -7
  60. data/app/views/spina/admin/attachments/_attachment.html.erb +5 -0
  61. data/app/views/spina/admin/shared/_navigation.html.erb +15 -10
  62. data/config/locales/en.yml +1 -0
  63. data/config/locales/ru.yml +199 -177
  64. data/config/routes.rb +10 -0
  65. data/lib/generators/spina/templates/config/initializers/spina.rb +48 -13
  66. data/lib/spina.rb +35 -30
  67. data/lib/spina/authentication/basic.rb +24 -0
  68. data/lib/spina/authentication/sessions.rb +32 -0
  69. data/lib/spina/engine.rb +18 -7
  70. data/lib/spina/railtie.rb +1 -1
  71. data/lib/spina/version.rb +1 -1
  72. data/lib/tasks/spina_tasks.rake +1 -1
  73. metadata +65 -10
  74. data/app/assets/javascripts/spina/importmap.json.erb +0 -5
  75. data/app/controllers/concerns/spina/current_methods.rb +0 -34
  76. data/lib/spina/importmap_helper.rb +0 -37
@@ -1,5 +0,0 @@
1
- {
2
- "imports": {
3
- <%= spina_importmap_with_stimulus_from Spina::Engine.root.join('app/assets/javascripts/spina/controllers'), Spina::Engine.root.join('app/assets/javascripts/spina/libraries') %>
4
- }
5
- }
@@ -1,34 +0,0 @@
1
- module Spina
2
- module CurrentMethods
3
- extend ActiveSupport::Concern
4
-
5
- included do
6
- before_action :set_current_attributes
7
-
8
- helper_method :current_theme
9
- helper_method :current_spina_user
10
- helper_method :current_account
11
- end
12
-
13
- private
14
-
15
- def set_current_attributes
16
- current_theme
17
- current_spina_user
18
- current_account
19
- end
20
-
21
- def current_theme
22
- Spina::Current.theme ||= ::Spina::Theme.find_by_name(current_account.theme)
23
- end
24
-
25
- def current_spina_user
26
- Spina::Current.user ||= ::Spina::User.find_by(id: session[:spina_user_id]) if session[:spina_user_id]
27
- end
28
-
29
- def current_account
30
- Spina::Current.account ||= ::Spina::Account.first
31
- end
32
-
33
- end
34
- end
@@ -1,37 +0,0 @@
1
- module Spina
2
- module ImportmapHelper
3
-
4
- def spina_importmap_with_stimulus_from(*paths)
5
- [ %("stimulus": "#{asset_path("stimulus/libraries/stimulus")}"), spina_importmap_from(*paths) ].reject(&:blank?).join(",\n")
6
- end
7
-
8
- def spina_importmap_from(*paths, prepend: "spina")
9
- Array(paths).flat_map do |path|
10
- if (absolute_path = absolute_root_of(path)).exist?
11
- find_javascript_files_in_tree(absolute_path).collect do |filename|
12
- module_filename = filename.relative_path_from(absolute_path)
13
- module_name = importmap_module_name_from(module_filename)
14
- module_path = asset_path("#{prepend}/" + absolute_path.basename.join(module_filename).to_s)
15
-
16
- %("#{module_name}": "#{module_path}")
17
- end
18
- end
19
- end.compact.join(",\n")
20
- end
21
-
22
- private
23
-
24
- # Strip off the extension and any versioning data for an absolute module name.
25
- def importmap_module_name_from(filename)
26
- filename.basename.to_s.remove(filename.extname).split("@").first
27
- end
28
-
29
- def find_javascript_files_in_tree(path)
30
- Dir[path.join("**/*.js{,m}")].collect { |file| Pathname.new(file) }.select(&:file?)
31
- end
32
-
33
- def absolute_root_of(path)
34
- (pathname = Pathname.new(path)).absolute? ? pathname : Rails.root.join(path)
35
- end
36
- end
37
- end