Skip to content

Commit 9a72361

Browse files
authored
Merge pull request #4989 from sul-dlss/preview-with-turbolinks
Load brief preview with turbo-frame
2 parents a373880 + b97c30e commit 9a72361

File tree

4 files changed

+8
-15
lines changed

4 files changed

+8
-15
lines changed

app/components/search_result/document_brief_component.html.erb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<div data-controller="preview-brief" data-preview-brief-url-value="<%= preview_path(document[:id]) %>">
1+
<div data-controller="preview-brief">
22
<div class="brief-document container-fluid">
33
<div class="row brief-container">
44
<div class="col-md-10">
@@ -44,5 +44,6 @@
4444
</div>
4545
<div class="container-fluid preview-container brief-preview-container" data-preview-brief-target="preview">
4646
<div class='preview-arrow'></div>
47+
<turbo-frame id="preview_<%= document[:id] %>" src="<%= preview_path(document[:id]) %>" loading="lazy"></turbo-frame>
4748
</div>
4849
</div>

app/javascript/controllers/preview_brief_controller.js

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,14 @@ import { Controller } from "@hotwired/stimulus"
22
import PreviewContent from '../preview-content'
33

44
export default class extends Controller {
5-
static values = {
6-
url: String
7-
}
8-
95
static targets = ["preview", "showButton", "hideButton"]
106

117
showPreview() {
128
this.previewTarget.classList.add('preview')
13-
this.appendPointer()
14-
PreviewContent.append(this.urlValue, $(this.previewTarget));
159
this.showButtonTarget.hidden = true
1610
this.hideButtonTarget.hidden = false
1711
}
1812

19-
appendPointer() {
20-
this.previewTarget.innerHTML = '<div class="preview-arrow"></div>'
21-
}
22-
2313
closePreview() {
2414
this.previewTarget.classList.remove('preview')
2515
this.showButtonTarget.hidden = false

app/views/preview/show.html.erb

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,4 @@
1-
<%= render_document_partial @document, 'show_header' %>
2-
<%= render_document_partial @document, 'show' %>
1+
<turbo-frame id="preview_<%= @document[:id] %>">
2+
<%= render_document_partial @document, 'show_header' %>
3+
<%= render_document_partial @document, 'show' %>
4+
</turbo-frame>

spec/features/brief_view_spec.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@
1212
end
1313
expect(page).to have_css("i.fa.fa-align-justify")
1414

15-
within '[data-preview-brief-url-value="/preview/1"]' do
15+
within '[data-controller="preview-brief"]:has(a[href="/view/1"])' do
1616
expect(page).to have_css(".brief-document h3.index_title", text: "An object")
1717
expect(page).to have_css('.brief-document ul li', text: 'Earth Sciences Library (Branner) : Stacks : G70.212 .A426 2011')
1818
expect(page).to have_css(".brief-document button.btn-preview", text: "Preview")
1919
expect(page).to have_css("form.bookmark-toggle label.toggle-bookmark", text: "Select")
2020
end
21-
within '[data-preview-brief-url-value="/preview/10"]' do
21+
within '[data-controller="preview-brief"]:has(a[href="/view/10"])' do
2222
expect(page).to have_css('.brief-document ul li', text: 'SAL3 (off-campus storage) : Stacks : HF1604 .G368 2024')
2323
expect(page).to have_css('.brief-document ul li', text: 'Engineering Library (Terman) : Periodicals : (no call number)')
2424
expect(page).to have_css('.brief-document ul li', text: 'Engineering Library (Terman) : Stacks : CBA')

0 commit comments

Comments
 (0)