Skip to content

Commit 624537a

Browse files
authored
chore: media library and asset tweaks (#3625)
1 parent 3a44e99 commit 624537a

File tree

6 files changed

+20
-16
lines changed

6 files changed

+20
-16
lines changed

app/components/avo/asset_manager/javascript_component.html.erb

+2-5
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,5 @@
88
<% end %>
99

1010
<%# This is the last script to run so it can register custom StimulusJS controllers from plugins. %>
11-
<% if Avo::PACKED %>
12-
<%= javascript_include_tag '/avo-assets/late-registration', "data-turbo-track": "reload", defer: true %>
13-
<% else %>
14-
<%= javascript_include_tag 'late-registration', "data-turbo-track": "reload", defer: true %>
15-
<% end %>
11+
<% path = Avo::PACKED ? '/avo-assets/late-registration' : 'late-registration' %>
12+
<%= javascript_include_tag path, "data-turbo-track": "reload", defer: true %>

app/controllers/avo/media_library_controller.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ def blob_params
3636
end
3737

3838
def authorize_access!
39-
raise_404 unless Avo::MediaLibrary.configuration.visible?
39+
raise_404 if Avo::MediaLibrary.configuration.disabled?
4040
end
4141
end
4242
end

app/javascript/js/controllers/fields/trix_field_controller.js

+1-2
Original file line numberDiff line numberDiff line change
@@ -107,12 +107,11 @@ export default class extends Controller {
107107

108108
const mediaLibraryPath = new URI(`${this.rootPath.path()}/attach-media`)
109109
mediaLibraryPath.addSearch(params)
110-
const mediaLibraryVisible = window.Avo.configuration.media_library.visible && window.Avo.configuration.media_library.enabled
111110

112111
// Add the gallery button to the toolbar
113112
// const buttonHTML = `<button type="button" data-trix-action="gallery" class="trix-button trix-button--icon">${galleryButtonSVG}</button>`
114113
const buttonHTML = `<a href="${mediaLibraryPath}" data-turbo-frame="${window.Avo.configuration.modal_frame_id}" class="trix-button trix-button--icon">${galleryButtonSVG}</a>`
115-
if (mediaLibraryVisible && event.target.toolbarElement && event.target.toolbarElement.querySelector('.trix-button-group--file-tools')) {
114+
if (window.Avo.configuration.media_library.visible && event.target.toolbarElement && event.target.toolbarElement.querySelector('.trix-button-group--file-tools')) {
116115
event.target.toolbarElement
117116
.querySelector('.trix-button-group--file-tools')
118117
.insertAdjacentHTML('beforeend', buttonHTML)

app/views/avo/partials/_javascript.html.erb

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
Avo.configuration.modal_frame_id = '<%= ::Avo::MODAL_FRAME_ID %>'
1515
Avo.configuration.stimulus_controllers = []
1616
Avo.configuration.media_library = {
17-
enabled: <%= Avo::MediaLibrary.configuration.enabled %>,
17+
enabled: <%= Avo::MediaLibrary.configuration.enabled? %>,
1818
visible: <%= Avo::MediaLibrary.configuration.visible? %>
1919
}
2020
<% end %>

app/views/layouts/avo/application.html.erb

+7-7
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,14 @@
1414
<%= render partial: "avo/partials/pre_head" %>
1515
<%= render Avo::AssetManager::StylesheetComponent.new asset_manager: Avo.asset_manager %>
1616
<%= stylesheet_link_tag @stylesheet_assets_path, "data-turbo-track": "reload", defer: true, as: "style" %>
17-
<% if Avo::PACKED %>
18-
<%= javascript_include_tag "/avo-assets/avo.base", "data-turbo-track": "reload", defer: true %>
19-
<% else %>
20-
<%= javascript_include_tag "avo.base", "data-turbo-track": "reload", defer: true %>
21-
<% if Rails.env.development? && defined?(Hotwire::Livereload) %>
22-
<%= javascript_include_tag "hotwire-livereload", defer: true %>
23-
<% end %>
17+
18+
<% path = Avo::PACKED ? "/avo-assets/avo.base" : "avo.base" %>
19+
<%= javascript_include_tag path, "data-turbo-track": "reload", defer: true %>
20+
21+
<% if !Avo::PACKED && defined?(Hotwire::Livereload) %>
22+
<%= javascript_include_tag "hotwire-livereload", defer: true %>
2423
<% end %>
24+
2525
<%= render Avo::AssetManager::JavascriptComponent.new asset_manager: Avo.asset_manager %>
2626
<%= render partial: "avo/partials/head" %>
2727
<%= content_for :head %>

lib/avo/media_library/configuration.rb

+8
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,16 @@ class Configuration
77
config_accessor(:enabled) { false }
88

99
def visible?
10+
return false if disabled?
11+
1012
Avo::ExecutionContext.new(target: config[:visible]).handle
1113
end
14+
15+
def enabled?
16+
Avo::ExecutionContext.new(target: config[:enabled]).handle
17+
end
18+
19+
def disabled? = !enabled?
1220
end
1321

1422
def self.configuration

0 commit comments

Comments
 (0)