diff --git a/.github/workflows/ruby.yml b/.github/workflows/ruby.yml index ae0173ac9..0a1bac41a 100644 --- a/.github/workflows/ruby.yml +++ b/.github/workflows/ruby.yml @@ -22,6 +22,7 @@ jobs: - uses: actions/setup-node@v4 with: node-version: 18 + - run: bin/yarn install - name: Run tests run: bin/rake env: diff --git a/Gemfile b/Gemfile index 26856a59a..05690aab1 100644 --- a/Gemfile +++ b/Gemfile @@ -59,7 +59,6 @@ gem 'newrelic_rpm', group: :production # Use okcomputer to monitor the application gem 'okcomputer' -gem 'cssbundling-rails', '~> 1.1' gem 'shakapacker', '~> 7.0' gem 'view_component', '~> 3.10' diff --git a/Gemfile.lock b/Gemfile.lock index 2226e3f28..fd0373b0b 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -124,8 +124,6 @@ GEM bigdecimal rexml crass (1.0.6) - cssbundling-rails (1.4.3) - railties (>= 6.0.0) date (3.4.1) debug (1.10.0) irb (~> 1.10) @@ -409,7 +407,6 @@ DEPENDENCIES capistrano-shared_configs capybara config - cssbundling-rails (~> 1.1) debug dlss-capistrano dor-rights-auth diff --git a/Procfile.dev b/Procfile.dev index c1a5b1c36..76ee31760 100644 --- a/Procfile.dev +++ b/Procfile.dev @@ -1,4 +1,3 @@ web: unset PORT && env RUBY_DEBUG_OPEN=true bin/rails server -css: bin/yarn build:css --watch js: bin/shakapacker-dev-server stacks: docker compose up --abort-on-container-exit --build diff --git a/app/assets/stylesheets/legacy_common.scss b/app/assets/stylesheets/legacy_common.scss deleted file mode 100644 index 77c6cdcc6..000000000 --- a/app/assets/stylesheets/legacy_common.scss +++ /dev/null @@ -1,146 +0,0 @@ -// All classes should be scoped within the .sul-embed-container -@import "sul_variables"; -@import "modules/buttons"; -@import "modules/popup_panels"; -@import "modules/utility"; -@import "https://fonts.googleapis.com/css2?family=Source+Sans+3:ital,wght@0,200..900;1,200..900&display=swap"; - -$color-pantone-401: #b6b1a9; -$sul-link-border-color: $color-pantone-401; - -body { - margin: 0; - padding: 0; -} - -.sul-embed-container { - background: $white-color; - border: 1px solid $sul-border-color; - box-sizing: border-box; - color: black; - display: flex; - flex-direction: column; - font-family: "Roboto", "Arial Unicode MS", Helvetica, sans-serif; - font-size: $font-size-base; - height: 100vh; - overflow-x: hidden; - overflow-y: hidden; - - .sul-embed-header { - flex: 0 1 auto; - } - - .sul-embed-body { - flex: 1 1 auto; - overflow-y: scroll; // May need to evaluate this on a viewer by viewer basis - } - - .sul-embed-footer { - flex: 0 1 auto; - } - - a, - a:hover, - a:focus { - border-bottom: 1px dotted $sul-link-border-color; - color: $sul-link-color; - text-decoration: none; - } - - a:hover { - color: $sul-link-hover-color; - } - - .sul-embed-header { - background: $sul-border-color; - font-weight: $sul-header-weight; - min-height: 40px; - overflow: hidden; - padding: 0 15px; - white-space: nowrap; - - .sul-embed-header-title { - color: white; - display: inline-block; - font-size: $sul-title-size; - overflow: hidden; - text-overflow: ellipsis; - vertical-align: middle; - width: 100%; - margin-top: 4px; - } - } - - .sul-embed-item-count { - color: white; - border-bottom: 0; - font-size: $font-size-base; - font-weight: $sul-header-weight; - min-width: 75px; - line-height: 40px; - vertical-align: middle; - padding: 0; - display: inline; - float: left; - } - - .sul-embed-footer { - box-shadow: 0 -2px 8px 0 rgba(0, 0, 0, 0.2); - background: $sul-border-color; - min-height: 30px; - position: relative; - padding: 0 15px; - - .sul-embed-footer-toolbar { - padding-top: 0; - vertical-align: middle; - color: $white-color; - } - - .sul-i-download-3 { - margin-right: 1px; - padding-right: 1px; - } - - .sul-embed-download-count { - background-color: white; - border-radius: 16px; - color: $color-pantone-405; - display: inline-block; - font-size: 12px; - line-height: 16px; - margin-bottom: 1px; - margin-left: 2px; - min-width: 18px; - padding-left: 3px; - padding-right: 3px; - text-align: center; - vertical-align: text-top; - } - } -} - -.sul-embed-stanford-only-text { - background: - url("stanford_s.svg") no-repeat left, - none; - display: inline-block; - height: 15px; - width: 15px; -} - -.sul-embed-location-restricted-text { - color: $sul-restricted-text-color; -} - -.sul-embed-header { - position: relative; - z-index: 10; -} - -.sul-embed-header, -.sul-embed-footer { - box-shadow: - 0 1px 3px rgba(0, 0, 0, 0.12), - 0 1px 2px rgba(0, 0, 0, 0.24); -} diff --git a/app/assets/stylesheets/legacy_file.scss b/app/assets/stylesheets/legacy_file.scss deleted file mode 100644 index 0df114190..000000000 --- a/app/assets/stylesheets/legacy_file.scss +++ /dev/null @@ -1,148 +0,0 @@ -@import "legacy_common"; -$color-beige-10: #f2f1eb; - -body { - overflow-y: hidden; -} - -.folder-title { - svg { - height: 1rem; - width: 1rem; - vertical-align: middle; - } -} -.sul-embed-container { - .sul-embed-header { - flex-shrink: 0; - } - - .sul-embed-search { - padding-top: 8px; - - label { - display: none; - } - - .sul-embed-search-input { - border: 1px solid $sul-input-border; - border-radius: 3px; - margin-left: 15px; - padding: 4px 7px; - width: 15em; - } - } - - .sul-embed-body { - overflow-y: scroll; - } - - .sul-embed-footer-toolbar .sul-i-download-3 { - padding: 0px 5px 0px 5px; - } - - .sul-embed-footer-toolbar .sul-embed-location-restricted-text { - background-color: $white-color; - } - - .sul-embed-footer-toolbar a { - color: $white-color; - } -} - -.sul-embed-embargo-message { - padding: 20px; - color: $sul-restricted-text-color; -} - -/* Collapse/expand icons */ -.sul-embed-treegrid { - width: 100%; - table-layout: fixed; - border-collapse: collapse; - - th { - text-align: left; - } - - tr { - display: table-row; - cursor: default; - } - - thead tr th:first-of-type { - padding-left: 15px; - } - - tbody > tr:nth-child(odd of :not([hidden])) { - background-color: $color-beige-10; - } - - col.sul-embed-treegrid-size, - col.sul-embed-treegrid-download { - width: 20%; - } - - /* Extra space between columns for readability */ - th, - td { - padding-top: 5px; - padding-bottom: 5px; - } - - tbody td { - cursor: default; - vertical-align: top; - } - - tr[hidden] { - display: none !important; - } - - tr > td:first-child::before { - transition: transform 0.3s; - margin-left: 5px; - } - - tr[aria-expanded] > td:first-child, - td[aria-expanded]:first-child { - &::before { - content: ""; - cursor: pointer; - background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='MuiSvgIcon-root' focusable='false' aria-hidden='true' viewBox='0 0 24 24'%3E%3Cpath d='M8.59 16.59 13.17 12 8.59 7.41 10 6l6 6-6 6z'%3E%3C/path%3E%3C/svg%3E"); - background-repeat: no-repeat; - height: 1.5rem; - width: 1.5rem; - display: inline-block; - vertical-align: middle; - } - font-weight: bold; - } - - tr[aria-expanded="true"] > td:first-child::before, - td[aria-expanded="true"]:first-child::before { - transform: rotate(90deg); - } - - .sul-embed-filename-cell { - display: flex; - padding-right: 10px; - - .tree-label { - margin: 0; - } - - svg { - height: 1rem; - width: 1rem; - } - } -} - -.download-icon { - display: inline-block; - width: 1rem; - height: 1rem; - fill: #006cb8; - vertical-align: top; -} diff --git a/app/assets/stylesheets/legacy_geo.scss b/app/assets/stylesheets/legacy_geo.scss deleted file mode 100644 index d7f6522ac..000000000 --- a/app/assets/stylesheets/legacy_geo.scss +++ /dev/null @@ -1,176 +0,0 @@ -@import "legacy_common"; -@import "leaflet"; - -[data-wms-url] { - cursor: crosshair; -} - -.sul-embed-geo { - position: relative; - display: flex; -} - -.sul-embed-geo-sidebar { - background: $sul-metadata-bg; - min-height: 50px; - position: absolute; - right: 0; - width: 300px; - - [aria-expanded="false"] { - svg { - transform: rotate(180deg); - } - } -} - -.sul-embed-geo-sidebar-header { - padding: 10px; - - svg { - fill: currentColor; - width: 1em; - height: 1em; - display: inline-block; - font-size: 1.5rem; - flex-shrink: 0; - } - - button { - height: 2rem; - position: absolute; - right: 10px; - top: 10px; - border: none; - background-color: transparent; - } -} - -.sul-embed-geo-sidebar-content { - background: $sul-metadata-bg; - overflow: scroll; - padding: 0 10px 10px; - - &:not(.show) { - display: none; - } - - dt { - font-weight: bold; - } - - .inline-flex { - display: flex; - flex-flow: row; - flex-wrap: wrap; - overflow: visible; - width: 100%; - - // scss-lint:disable SelectorDepth - dt { - flex: 0 0 33%; - overflow: scroll; - text-overflow: ellipsis; - } - - dd { - flex: 0 0 66%; - margin-left: auto; - overflow: scroll; - text-align: left; - } - // scss-lint:enable SelectorDepth - } -} - -.opacity-control { - background-color: #a9acb1; - border-radius: 15px; - color: black; - font: - bold 18px "Lucida Console", - Monaco, - monospace; - display: block; - height: 200px; - left: 11px; - position: relative; - top: 15px; - width: 5px; - - .opacity-handle { - background-color: #fff; - border-radius: 4px; - border: 1px solid #eee; - cursor: ns-resize; - font-size: 10px; - height: 26px; - left: -11px; - line-height: 26px; - position: absolute; - text-align: center; - top: 0; - width: 26px; - z-index: 20; - box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65); - - &:hover { - background-color: $color-fog-light; - } - } - - .opacity-arrow-up { - color: #aaa; - position: absolute; - top: -11px; - text-align: center; - width: 100%; - - &:before { - content: "="; - } - } - - .opacity-arrow-down { - bottom: -10px; - color: #aaa; - position: absolute; - text-align: center; - width: 100%; - - &:before { - content: "="; - } - } - - .opacity-bottom { - background-color: #017afd; - border-radius: 15px; - display: block; - height: 100%; - top: 30px; - left: 0px; - position: relative; - width: 5px; - } - - // Area underneath slider to prevent unintentioned map clicks - .opacity-area { - padding: 14px; - cursor: default; - height: 200px; - left: -11px; - position: absolute; - top: 0px; - width: 20px; - } -} - -.opacity-control.unselectable { - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} diff --git a/app/assets/stylesheets/legacy_model.scss b/app/assets/stylesheets/legacy_model.scss deleted file mode 100644 index 41c4edea3..000000000 --- a/app/assets/stylesheets/legacy_model.scss +++ /dev/null @@ -1,29 +0,0 @@ -@import "legacy_common"; -@import "modules/fullscreen"; - -.sul-embed-3d { - position: relative; - - .buttons { - left: 10px; - position: absolute; - top: 10px; - z-index: 1; - } - - .zoom-in, - .zoom-out { - background: transparent; - border: none; - color: $white-color; - cursor: pointer; - font-size: 2em; - padding: 5px 13px; - } - - model-viewer { - background-color: black; - width: 100vw; - height: calc(100vh - 70px); - } -} diff --git a/app/assets/stylesheets/legacy_was_seed.scss b/app/assets/stylesheets/legacy_was_seed.scss deleted file mode 100644 index 5649b5773..000000000 --- a/app/assets/stylesheets/legacy_was_seed.scss +++ /dev/null @@ -1,69 +0,0 @@ -@import "legacy_common"; -$color-beige-30: #e3dfd5; - -.sul-embed-was-seed-content { - padding: 10px; -} - -.sul-embed-was-seed-row { - display: flex; - flex-direction: row; - flex-wrap: wrap; -} - -.sul-embed-was-seed-column { - display: flex; - flex-direction: column; - flex: 1; - padding: 0 12px 12px 12px; -} - -.sul-embed-was-seed-preview { - img { - max-height: 200px; - } -} - -.sul-embed-was-seed-captures { - padding-top: 6px; - h1 { - font-size: 1.5rem; - font-weight: $sul-header-weight; - } -} - -.sul-embed-was-seed-info { - flex-basis: 200px; - max-width: 220px; - padding-top: 12px; - position: relative; - - a { - border: 1px solid $color-beige-30; - text-align: center; - } -} - -.sul-embed-was-seed-list { - display: flex; - flex-wrap: wrap; - list-style-type: none; - padding-top: 12px; -} - -.sul-embed-was-seed-list-item { - border: 1px solid $color-beige-30; - margin: 0 15px 15px 0; - min-width: 225px; - padding: 10px; - position: relative; - - &:before { - content: " \f123"; - color: $gray-54-percent; - font-family: "sul-icons"; - font-size: 24px; - margin-right: 8px; - vertical-align: middle; - } -} diff --git a/app/assets/stylesheets/sul_icons.scss b/app/assets/stylesheets/sul_icons.scss deleted file mode 100644 index e070bc804..000000000 --- a/app/assets/stylesheets/sul_icons.scss +++ /dev/null @@ -1,314 +0,0 @@ -// -// Icon Font: sul-icons -// - -@font-face { - font-family: "sul-icons"; - src: url("sul-icons.eot"); - src: - url("sul-icons.eot?#iefix") format("embedded-opentype"), - url("sul-icons.woff") format("woff"), - url("sul-icons.ttf") format("truetype"), - url("sul-icons.svg#sul-icons") format("svg"); - font-weight: normal; - font-style: normal; -} - -@media screen and (-webkit-min-device-pixel-ratio: 0) { - @font-face { - font-family: "sul-icons"; - src: url("sul-icons.svg#sul-icons") format("svg"); - } -} - -[data-icon]:before { - content: attr(data-icon); -} - -[data-icon]:before, -.sul-i-arrow-down-8:before, -.sul-i-arrow-left-3:before, -.sul-i-arrow-left-8:before, -.sul-i-arrow-right-3:before, -.sul-i-arrow-right-8:before, -.sul-i-arrow-up-8:before, -.sul-i-book-open-4:before, -.sul-i-bookmark-all-1:before, -.sul-i-books-library:before, -.sul-i-box-1:before, -.sul-i-bubble-chat-2:before, -.sul-i-camera-film-1:before, -.sul-i-check-2:before, -.sul-i-check-box-1:before, -.sul-i-close:before, -.sul-i-cube:before, -.sul-i-download-3:before, -.sul-i-email:before, -.sul-i-expand-1:before, -.sul-i-file-acrobat:before, -.sul-i-file-code-1:before, -.sul-i-file-excel:before, -.sul-i-file-music-1:before, -.sul-i-file-new-1:before, -.sul-i-file-picture:before, -.sul-i-file-powerpoint:before, -.sul-i-file-text-document:before, -.sul-i-file-video-3:before, -.sul-i-file-words:before, -.sul-i-file-zipped:before, -.sul-i-graph-bar-2:before, -.sul-i-infomation-circle:before, -.sul-i-key-2:before, -.sul-i-layout-4:before, -.sul-i-layout-none:before, -.sul-i-link-3:before, -.sul-i-list-bullets-1:before, -.sul-i-location-pin-2:before, -.sul-i-map-pin-1:before, -.sul-i-microphone-3:before, -.sul-i-mobile-phone-2:before, -.sul-i-mouse:before, -.sul-i-navigation-drawer-1:before, -.sul-i-navigation-drawer-2:before, -.sul-i-navigation-left-2:before, -.sul-i-navigation-next-4:before, -.sul-i-navigation-show-more-1:before, -.sul-i-network-web:before, -.sul-i-news-article:before, -.sul-i-newspaper:before, -.sul-i-notebook:before, -.sul-i-person-1:before, -.sul-i-person-information-1:before, -.sul-i-picture-2:before, -.sul-i-plug-1:before, -.sul-i-print-text:before, -.sul-i-quote-1:before, -.sul-i-remove-2:before, -.sul-i-search:before, -.sul-i-share:before, -.sul-i-transfer-3:before, -.sul-i-truck-1:before, -.sul-i-turntable:before, -.sul-i-view-headline:before, -.sul-i-view-list:before, -.sul-i-view-module-1:before, -.sul-i-window-search:before, -.sul-i-zoom-in:before { - display: inline-block; - font-family: "sul-icons"; - font-style: normal; - font-weight: normal; - font-variant: normal; - line-height: 1; - text-decoration: inherit; - text-rendering: optimizeLegibility; - text-transform: none; - -moz-osx-font-smoothing: grayscale; - -webkit-font-smoothing: antialiased; - font-smoothing: antialiased; -} - -.sul-i-arrow-down-8:before { - content: "\f13e"; -} -.sul-i-arrow-left-3:before { - content: "\f108"; -} -.sul-i-arrow-left-8:before { - content: "\f109"; -} -.sul-i-arrow-right-3:before { - content: "\f10a"; -} -.sul-i-arrow-right-8:before { - content: "\f10b"; -} -.sul-i-arrow-up-8:before { - content: "\f13f"; -} -.sul-i-book-open-4:before { - content: "\f10c"; -} -.sul-i-bookmark-all-1:before { - content: "\f10d"; -} -.sul-i-books-library:before { - content: "\f10e"; -} -.sul-i-box-1:before { - content: "\f10f"; -} -.sul-i-bubble-chat-2:before { - content: "\f110"; -} -.sul-i-camera-film-1:before { - content: "\f111"; -} -.sul-i-check-2:before { - content: "\f143"; -} -.sul-i-check-box-1:before { - content: "\f112"; -} -.sul-i-close:before { - content: "\f141"; -} -.sul-i-cube:before { - content: "\f113"; -} -.sul-i-download-3:before { - content: "\f106"; -} -.sul-i-email:before { - content: "\f114"; -} -.sul-i-expand-1:before { - content: "\f115"; -} -.sul-i-file-acrobat:before { - content: "\f13a"; -} -.sul-i-file-code-1:before { - content: "\f137"; -} -.sul-i-file-excel:before { - content: "\f13b"; -} -.sul-i-file-music-1:before { - content: "\f116"; -} -.sul-i-file-new-1:before { - content: "\f140"; -} -.sul-i-file-picture:before { - content: "\f136"; -} -.sul-i-file-powerpoint:before { - content: "\f13d"; -} -.sul-i-file-text-document:before { - content: "\f139"; -} -.sul-i-file-video-3:before { - content: "\f138"; -} -.sul-i-file-words:before { - content: "\f13c"; -} -.sul-i-file-zipped:before { - content: "\f134"; -} -.sul-i-graph-bar-2:before { - content: "\f117"; -} -.sul-i-infomation-circle:before { - content: "\f104"; -} -.sul-i-key-2:before { - content: "\f118"; -} -.sul-i-layout-4:before { - content: "\f119"; -} -.sul-i-layout-none:before { - content: "\f11a"; -} -.sul-i-link-3:before { - content: "\f107"; -} -.sul-i-list-bullets-1:before { - content: "\f11b"; -} -.sul-i-location-pin-2:before { - content: "\f147"; -} -.sul-i-map-pin-1:before { - content: "\f11c"; -} -.sul-i-microphone-3:before { - content: "\f11d"; -} -.sul-i-mobile-phone-2:before { - content: "\f11e"; -} -.sul-i-mouse:before { - content: "\f11f"; -} -.sul-i-navigation-drawer-1:before { - content: "\f120"; -} -.sul-i-navigation-drawer-2:before { - content: "\f121"; -} -.sul-i-navigation-left-2:before { - content: "\f122"; -} -.sul-i-navigation-next-4:before { - content: "\f142"; -} -.sul-i-navigation-show-more-1:before { - content: "\f146"; -} -.sul-i-network-web:before { - content: "\f123"; -} -.sul-i-news-article:before { - content: "\f124"; -} -.sul-i-newspaper:before { - content: "\f125"; -} -.sul-i-notebook:before { - content: "\f126"; -} -.sul-i-person-1:before { - content: "\f127"; -} -.sul-i-person-information-1:before { - content: "\f128"; -} -.sul-i-picture-2:before { - content: "\f129"; -} -.sul-i-plug-1:before { - content: "\f12a"; -} -.sul-i-print-text:before { - content: "\f12b"; -} -.sul-i-quote-1:before { - content: "\f12c"; -} -.sul-i-remove-2:before { - content: "\f144"; -} -.sul-i-search:before { - content: "\f12d"; -} -.sul-i-share:before { - content: "\f105"; -} -.sul-i-transfer-3:before { - content: "\f12e"; -} -.sul-i-truck-1:before { - content: "\f145"; -} -.sul-i-turntable:before { - content: "\f12f"; -} -.sul-i-view-headline:before { - content: "\f130"; -} -.sul-i-view-list:before { - content: "\f131"; -} -.sul-i-view-module-1:before { - content: "\f102"; -} -.sul-i-window-search:before { - content: "\f132"; -} -.sul-i-zoom-in:before { - content: "\f133"; -} diff --git a/app/components/embed/file/header_component.html.erb b/app/components/embed/file/header_component.html.erb deleted file mode 100644 index f8f452b42..000000000 --- a/app/components/embed/file/header_component.html.erb +++ /dev/null @@ -1,10 +0,0 @@ -
- <%= render 'embed/title', viewer: viewer %> -
- <% if viewer.display_file_search? %> - - <% end %> -
diff --git a/app/components/embed/file/header_component.rb b/app/components/embed/file/header_component.rb deleted file mode 100644 index 2a2b472c9..000000000 --- a/app/components/embed/file/header_component.rb +++ /dev/null @@ -1,17 +0,0 @@ -# frozen_string_literal: true - -module Embed - module File - class HeaderComponent < ViewComponent::Base - def initialize(viewer:) - @viewer = viewer - end - - attr_reader :viewer - - def render? - viewer.display_header? - end - end - end -end diff --git a/app/components/legacy/download/geo_component.html.erb b/app/components/legacy/download/geo_component.html.erb deleted file mode 100644 index 9b747d645..000000000 --- a/app/components/legacy/download/geo_component.html.erb +++ /dev/null @@ -1,9 +0,0 @@ -<% unless viewer.embed_request.hide_download? %> - <%= render Legacy::DownloadPanelComponent.new do %> - <% viewer.purl_object.contents.each do |resource| %> - - <% end %> - <% end %> -<% end %> diff --git a/app/components/legacy/download/geo_component.rb b/app/components/legacy/download/geo_component.rb deleted file mode 100644 index 36c61d21f..000000000 --- a/app/components/legacy/download/geo_component.rb +++ /dev/null @@ -1,13 +0,0 @@ -# frozen_string_literal: true - -module Legacy - module Download - class GeoComponent < ViewComponent::Base - def initialize(viewer:) - @viewer = viewer - end - - attr_reader :viewer - end - end -end diff --git a/app/components/legacy/download/model_component.html.erb b/app/components/legacy/download/model_component.html.erb deleted file mode 100644 index 155823f9d..000000000 --- a/app/components/legacy/download/model_component.html.erb +++ /dev/null @@ -1,5 +0,0 @@ -<%= render Legacy::DownloadPanelComponent.new do %> - -<% end %> diff --git a/app/components/legacy/download/model_component.rb b/app/components/legacy/download/model_component.rb deleted file mode 100644 index 77f83b48d..000000000 --- a/app/components/legacy/download/model_component.rb +++ /dev/null @@ -1,17 +0,0 @@ -# frozen_string_literal: true - -module Legacy - module Download - class ModelComponent < ViewComponent::Base - def initialize(viewer:) - @viewer = viewer - end - - attr_reader :viewer - - def render? - viewer.show_download? - end - end - end -end diff --git a/app/components/legacy/download_panel_component.html.erb b/app/components/legacy/download_panel_component.html.erb deleted file mode 100644 index 552bdec19..000000000 --- a/app/components/legacy/download_panel_component.html.erb +++ /dev/null @@ -1,17 +0,0 @@ -
- -
\ No newline at end of file diff --git a/app/components/legacy/download_panel_component.rb b/app/components/legacy/download_panel_component.rb deleted file mode 100644 index 039dfe529..000000000 --- a/app/components/legacy/download_panel_component.rb +++ /dev/null @@ -1,11 +0,0 @@ -# frozen_string_literal: true - -module Legacy - class DownloadPanelComponent < ViewComponent::Base - def initialize(title: 'Download item') - @title = title - end - - attr_reader :title - end -end diff --git a/app/components/legacy/embed_panel_component.html.erb b/app/components/legacy/embed_panel_component.html.erb deleted file mode 100644 index 3136786a0..000000000 --- a/app/components/legacy/embed_panel_component.html.erb +++ /dev/null @@ -1,16 +0,0 @@ -
- -
diff --git a/app/components/legacy/embed_panel_component.rb b/app/components/legacy/embed_panel_component.rb deleted file mode 100644 index c30aee76e..000000000 --- a/app/components/legacy/embed_panel_component.rb +++ /dev/null @@ -1,15 +0,0 @@ -# frozen_string_literal: true - -module Legacy - class EmbedPanelComponent < ViewComponent::Base - def initialize(viewer:) - @viewer = viewer - end - - attr_reader :viewer - - def render? - !viewer.embed_request.hide_embed_this? - end - end -end diff --git a/app/components/legacy/embed_this_form_component.html.erb b/app/components/legacy/embed_this_form_component.html.erb deleted file mode 100644 index d44c61979..000000000 --- a/app/components/legacy/embed_this_form_component.html.erb +++ /dev/null @@ -1,33 +0,0 @@ -
- Select options: -
- - /> - -
- <%= content %> -
- - /> - -
-
-
- -
-
- -
-
-
\ No newline at end of file diff --git a/app/components/legacy/embed_this_form_component.rb b/app/components/legacy/embed_this_form_component.rb deleted file mode 100644 index 827bf3f63..000000000 --- a/app/components/legacy/embed_this_form_component.rb +++ /dev/null @@ -1,15 +0,0 @@ -# frozen_string_literal: true - -module Legacy - class EmbedThisFormComponent < ViewComponent::Base - def initialize(viewer:) - @viewer = viewer - end - - delegate :embed_request, :purl_object, to: :viewer - delegate :title, to: :purl_object, prefix: true - delegate :purl_url, to: :purl_object - - attr_reader :viewer - end -end diff --git a/app/components/legacy/file_component.html.erb b/app/components/legacy/file_component.html.erb deleted file mode 100644 index d3ff53c60..000000000 --- a/app/components/legacy/file_component.html.erb +++ /dev/null @@ -1,30 +0,0 @@ - diff --git a/app/components/legacy/file_component.rb b/app/components/legacy/file_component.rb deleted file mode 100644 index 343c5922e..000000000 --- a/app/components/legacy/file_component.rb +++ /dev/null @@ -1,11 +0,0 @@ -# frozen_string_literal: true - -module Legacy - class FileComponent < ViewComponent::Base - def initialize(viewer:) - @viewer = viewer - end - - attr_reader :viewer - end -end diff --git a/app/components/legacy/footer_component.html.erb b/app/components/legacy/footer_component.html.erb deleted file mode 100644 index 3db9b6bda..000000000 --- a/app/components/legacy/footer_component.html.erb +++ /dev/null @@ -1,55 +0,0 @@ - diff --git a/app/components/legacy/footer_component.rb b/app/components/legacy/footer_component.rb deleted file mode 100644 index 83637d904..000000000 --- a/app/components/legacy/footer_component.rb +++ /dev/null @@ -1,21 +0,0 @@ -# frozen_string_literal: true - -module Legacy - class FooterComponent < ViewComponent::Base - def initialize(viewer:) - @viewer = viewer - end - - attr_reader :viewer - - delegate :external_url_text, :external_url, to: :viewer - - def file_count - @viewer.purl_object.downloadable_files.length - end - - def download_file_label - I18n.t :download_files, count: file_count - end - end -end diff --git a/app/components/legacy/geo_component.html.erb b/app/components/legacy/geo_component.html.erb deleted file mode 100644 index e7d53b3f4..000000000 --- a/app/components/legacy/geo_component.html.erb +++ /dev/null @@ -1,15 +0,0 @@ - diff --git a/app/components/legacy/geo_component.rb b/app/components/legacy/geo_component.rb deleted file mode 100644 index 284e29083..000000000 --- a/app/components/legacy/geo_component.rb +++ /dev/null @@ -1,11 +0,0 @@ -# frozen_string_literal: true - -module Legacy - class GeoComponent < ViewComponent::Base - def initialize(viewer:) - @viewer = viewer - end - - attr_reader :viewer - end -end diff --git a/app/components/legacy/header_component.html.erb b/app/components/legacy/header_component.html.erb deleted file mode 100644 index c35fae042..000000000 --- a/app/components/legacy/header_component.html.erb +++ /dev/null @@ -1,3 +0,0 @@ -
- <%= render 'embed/title', viewer: viewer %> -
\ No newline at end of file diff --git a/app/components/legacy/header_component.rb b/app/components/legacy/header_component.rb deleted file mode 100644 index 001504318..000000000 --- a/app/components/legacy/header_component.rb +++ /dev/null @@ -1,15 +0,0 @@ -# frozen_string_literal: true - -module Legacy - class HeaderComponent < ViewComponent::Base - def initialize(viewer:) - @viewer = viewer - end - - attr_reader :viewer - - def render? - viewer.display_header? - end - end -end diff --git a/app/components/legacy/model_component.html.erb b/app/components/legacy/model_component.html.erb deleted file mode 100644 index 85ef30af9..000000000 --- a/app/components/legacy/model_component.html.erb +++ /dev/null @@ -1,17 +0,0 @@ - diff --git a/app/components/legacy/model_component.rb b/app/components/legacy/model_component.rb deleted file mode 100644 index bd51c49e3..000000000 --- a/app/components/legacy/model_component.rb +++ /dev/null @@ -1,11 +0,0 @@ -# frozen_string_literal: true - -module Legacy - class ModelComponent < ViewComponent::Base - def initialize(viewer:) - @viewer = viewer - end - - attr_reader :viewer - end -end diff --git a/app/components/legacy/was_seed_component.html.erb b/app/components/legacy/was_seed_component.html.erb deleted file mode 100644 index d853b3924..000000000 --- a/app/components/legacy/was_seed_component.html.erb +++ /dev/null @@ -1,39 +0,0 @@ - diff --git a/app/components/legacy/was_seed_component.rb b/app/components/legacy/was_seed_component.rb deleted file mode 100644 index eec17dc7d..000000000 --- a/app/components/legacy/was_seed_component.rb +++ /dev/null @@ -1,11 +0,0 @@ -# frozen_string_literal: true - -module Legacy - class WasSeedComponent < ViewComponent::Base - def initialize(viewer:) - @viewer = viewer - end - - attr_reader :viewer - end -end diff --git a/app/components/media/metadata_component.html.erb b/app/components/media/metadata_component.html.erb deleted file mode 100644 index ed882f3ad..000000000 --- a/app/components/media/metadata_component.html.erb +++ /dev/null @@ -1,5 +0,0 @@ -<%= render partial: 'embed/metadata/media_accessibility_note', - layout: 'embed/metadata_panel', - locals: { - viewer: viewer, - } %> diff --git a/app/controllers/embed_controller.rb b/app/controllers/embed_controller.rb index 72db384ef..2fdb7ac22 100644 --- a/app/controllers/embed_controller.rb +++ b/app/controllers/embed_controller.rb @@ -54,7 +54,7 @@ def linted_params rescue URI::InvalidURIError raise ActionController::BadRequest end - params.permit(:url, :maxwidth, :maxheight, :format, :fullheight, :new_viewer, :iiif_initial_viewer_config, + params.permit(:url, :maxwidth, :maxheight, :format, :fullheight, :iiif_initial_viewer_config, :hide_title, :hide_embed, :hide_download, :hide_search, :min_files_to_search, :canvas_id, :canvas_index, :search, :suggested_search, :image_tools, :cdl_hold_record_id) end diff --git a/app/javascript/legacy_3d.js b/app/javascript/legacy_3d.js deleted file mode 100644 index 1a2b85afe..000000000 --- a/app/javascript/legacy_3d.js +++ /dev/null @@ -1,18 +0,0 @@ -"use strict" - -import "controllers" - -import EmbedThis from "src/modules/embed_this" -import PopupPanels from "src/modules/popup_panels" -import ModelViewer from "src/modules/model_viewer" -import { trackView } from "src/modules/metrics" - -import "@google/model-viewer" - -document.addEventListener("DOMContentLoaded", () => { - document.getElementById("sul-embed-object").hidden = false - ModelViewer.init() - PopupPanels.init() - EmbedThis.init() - trackView() -}) diff --git a/app/javascript/legacy_file.js b/app/javascript/legacy_file.js deleted file mode 100644 index ada6ca086..000000000 --- a/app/javascript/legacy_file.js +++ /dev/null @@ -1,11 +0,0 @@ -import EmbedThis from 'src/modules/embed_this' -import PopupPanels from 'src/modules/popup_panels' -import { trackView } from 'src/modules/metrics' -import "file_controllers" - -document.addEventListener('DOMContentLoaded', () => { - document.getElementById('sul-embed-object').hidden = false - PopupPanels.init() - EmbedThis.init() - trackView() -}) diff --git a/app/javascript/legacy_geo.js b/app/javascript/legacy_geo.js deleted file mode 100644 index 5e98e0e0a..000000000 --- a/app/javascript/legacy_geo.js +++ /dev/null @@ -1,15 +0,0 @@ -import EmbedThis from "src/modules/embed_this" -import PopupPanels from "src/modules/popup_panels" -import GeoViewer from "src/modules/geo_viewer" -import { trackView } from "src/modules/metrics" - -import "leaflet" -import "Leaflet.Control.Custom" - -document.addEventListener("DOMContentLoaded", () => { - document.getElementById("sul-embed-object").hidden = false - GeoViewer.init() - PopupPanels.init() - EmbedThis.init() - trackView() -}) diff --git a/app/javascript/legacy_webarchive.js b/app/javascript/legacy_webarchive.js deleted file mode 100644 index badf32d80..000000000 --- a/app/javascript/legacy_webarchive.js +++ /dev/null @@ -1,10 +0,0 @@ -import PopupPanels from "src/modules/popup_panels" -import EmbedThis from "src/modules/embed_this" -import { trackView } from "src/modules/metrics" - -document.addEventListener("DOMContentLoaded", () => { - document.getElementById("sul-embed-object").hidden = false - PopupPanels.init() - EmbedThis.init() - trackView() -}) diff --git a/app/javascript/src/modules/popup_panels.js b/app/javascript/src/modules/popup_panels.js deleted file mode 100644 index 62df4aad8..000000000 --- a/app/javascript/src/modules/popup_panels.js +++ /dev/null @@ -1,47 +0,0 @@ -// Module adds popup panel behavior - -const PopupPanels = (function() { - let clickTarget, toggleElements - return { - init: function() { - this.setupListeners() - }, - setupListeners: function() { - const _this = this - $("[data-sul-embed-toggle]").on("click", function() { - clickTarget = $(this) - toggleElements = $("." + clickTarget.data("sul-embed-toggle")) - _this.hideAllOtherPanels() - _this.toggleAriaAttributes() - _this.setMaxHeight() - toggleElements.slideToggle() - }) - }, - hideAllOtherPanels: function() { - $("[data-sul-embed-toggle]").each(function(){ - if(clickTarget.data("sul-embed-toggle") != $(this).data('sul-embed-toggle')) { - $("." + $(this).data("sul-embed-toggle") + ':visible').hide() - } - }) - }, - setMaxHeight: function() { - if (toggleElements.length > 0) { - var footerHeight = $(".sul-embed-footer").height(), - totalHeight = $(".sul-embed-container").height(), - metaHeight = toggleElements.height() - toggleElements.css("maxHeight", totalHeight - footerHeight) - } - }, - toggleAriaAttributes: function() { - if(toggleElements.is(':visible')) { - clickTarget.attr('aria-expanded', 'false') - toggleElements.attr('aria-hidden', 'true') - }else{ - clickTarget.attr('aria-expanded', 'true') - toggleElements.attr('aria-hidden', 'false') - } - } - } -})() - -export default PopupPanels diff --git a/app/viewers/embed/viewer/common_viewer.rb b/app/viewers/embed/viewer/common_viewer.rb index 1234ddd8a..2123f4ad9 100644 --- a/app/viewers/embed/viewer/common_viewer.rb +++ b/app/viewers/embed/viewer/common_viewer.rb @@ -9,7 +9,6 @@ class CommonViewer attr_reader :purl_object, :embed_request, :authorization - delegate :new_viewer?, to: :embed_request delegate :any_stanford_only_files?, to: :authorization def initialize(embed_request) diff --git a/app/viewers/embed/viewer/file.rb b/app/viewers/embed/viewer/file.rb index 16346f1dc..b75aeba05 100644 --- a/app/viewers/embed/viewer/file.rb +++ b/app/viewers/embed/viewer/file.rb @@ -4,22 +4,15 @@ module Embed module Viewer class File < CommonViewer def component - new_viewer? ? FileComponent : ::Legacy::FileComponent + FileComponent end def importmap - new_viewer? ? 'file' : 'legacy_file' + 'file' end def stylesheet - new_viewer? ? 'file' : 'legacy_file.css' - end - - def height - return super if new_viewer? - return default_height if @embed_request.maxheight.to_i > default_height.to_i - - super + 'file' end def file_size_text(file_size) @@ -51,43 +44,6 @@ def display_download_all? @purl_object.downloadable_files.length > 1 && @purl_object.downloadable_files.length < 3000 end - - private - - def default_height - return super if new_viewer? - - value = [file_specific_height + embargo_message_height + header_height, min_height].max - "#{value}px" - end - - def min_height - 189 - end - - def header_height - return 68 unless embed_request.hide_title? - return 40 if display_file_search? - - 0 - end - - def embargo_message_height - return 44 if purl_object.embargoed? - - 0 - end - - # This is neccessary because the file viewer's height is meant to be dynamic, - # however we need to specify the exact height of the containing iframe (which - # will give us extra whitespace below the embed viewer unless we do this) - # Each item is 67px tall w/ a base of 55px we determine heights by: (item count * 67px) + 55px - def file_specific_height - file_count = @purl_object.resource_files.count - items_to_account_for = [file_count, 4].min - - 55 + (items_to_account_for * 67) - end end end end diff --git a/app/viewers/embed/viewer/geo.rb b/app/viewers/embed/viewer/geo.rb index 7d00baa50..7afdfa6db 100644 --- a/app/viewers/embed/viewer/geo.rb +++ b/app/viewers/embed/viewer/geo.rb @@ -4,15 +4,15 @@ module Embed module Viewer class Geo < CommonViewer def component - new_viewer? ? GeoComponent : ::Legacy::GeoComponent + GeoComponent end def importmap - new_viewer? ? 'geo' : 'legacy_geo' + 'geo' end def stylesheet - new_viewer? ? 'geo.css' : 'legacy_geo.css' + 'geo.css' end ## @@ -65,10 +65,6 @@ def external_url_text def index_map_files %w[index_map.geojson index_map.json] end - - def default_height - new_viewer? ? super : '493px' - end end end end diff --git a/app/viewers/embed/viewer/model_viewer.rb b/app/viewers/embed/viewer/model_viewer.rb index 1d7a69baf..781115c00 100644 --- a/app/viewers/embed/viewer/model_viewer.rb +++ b/app/viewers/embed/viewer/model_viewer.rb @@ -4,15 +4,15 @@ module Embed module Viewer class ModelViewer < CommonViewer def component - new_viewer? ? ModelComponent : ::Legacy::ModelComponent + ModelComponent end def importmap - new_viewer? ? 'model' : 'legacy_3d' + 'model' end def stylesheet - new_viewer? ? 'model' : 'legacy_model.css' + 'model' end def three_dimensional_files @@ -27,12 +27,6 @@ def fullscreen? def self.show_download? true end - - private - - def default_height - new_viewer? ? super : '513px' - end end end end diff --git a/app/viewers/embed/viewer/was_seed.rb b/app/viewers/embed/viewer/was_seed.rb index 927fd460b..588261e2a 100644 --- a/app/viewers/embed/viewer/was_seed.rb +++ b/app/viewers/embed/viewer/was_seed.rb @@ -6,15 +6,15 @@ class WasSeed < CommonViewer delegate :druid, to: :@purl_object def component - new_viewer? ? WebArchiveComponent : ::Legacy::WasSeedComponent + WebArchiveComponent end def importmap - new_viewer? ? 'webarchive' : 'legacy_webarchive' + 'webarchive' end def stylesheet - new_viewer? ? 'webarchive.css' : 'legacy_was_seed.css' + 'webarchive.css' end def capture_list @@ -54,15 +54,6 @@ def archived_site_url Honeybadger.notify("WasSeed#archived_site_url blank for #{druid}") if url.blank? end end - - private - - def default_height - return super if new_viewer? - return '340px' if embed_request.hide_title? - - '420px' - end end end end diff --git a/app/views/embed/_metadata_panel.html.erb b/app/views/embed/_metadata_panel.html.erb deleted file mode 100644 index e161b9981..000000000 --- a/app/views/embed/_metadata_panel.html.erb +++ /dev/null @@ -1,37 +0,0 @@ -
- -
diff --git a/app/views/embed/_title.html.erb b/app/views/embed/_title.html.erb deleted file mode 100644 index 1a45e6586..000000000 --- a/app/views/embed/_title.html.erb +++ /dev/null @@ -1,5 +0,0 @@ -<% unless viewer.embed_request.hide_title? %> - - <%= viewer.purl_object.title %> - -<% end %> diff --git a/app/views/embed/footer/_file.html.erb b/app/views/embed/footer/_file.html.erb deleted file mode 100644 index 7c459b0da..000000000 --- a/app/views/embed/footer/_file.html.erb +++ /dev/null @@ -1,33 +0,0 @@ - diff --git a/app/views/embed/iframe.html.erb b/app/views/embed/iframe.html.erb index 3868d9858..097f4951a 100644 --- a/app/views/embed/iframe.html.erb +++ b/app/views/embed/iframe.html.erb @@ -1,12 +1,6 @@ - - - <%= stylesheet_link_tag 'legacy_model.css' %> - <%= stylesheet_link_tag 'sul_icons.css' %> - <%= javascript_importmap_tags 'legacy_3d' %> - - - <%= yield %> - - diff --git a/app/views/layouts/preview/legacy/geo.html.erb b/app/views/layouts/preview/legacy/geo.html.erb deleted file mode 100644 index 84847bdfb..000000000 --- a/app/views/layouts/preview/legacy/geo.html.erb +++ /dev/null @@ -1,14 +0,0 @@ - - - - - <%= stylesheet_link_tag 'legacy_geo.css' %> - <%= stylesheet_link_tag 'sul_icons.css' %> - <%= javascript_importmap_tags 'legacy_geo' %> - - - <%= yield %> - - diff --git a/app/views/layouts/preview/media.html.erb b/app/views/layouts/preview/media.html.erb index fca811bdc..66933def3 100644 --- a/app/views/layouts/preview/media.html.erb +++ b/app/views/layouts/preview/media.html.erb @@ -2,8 +2,6 @@ <%= stylesheet_link_tag 'media.css' %> - <% # sul_icons.css is used for file icons in the "Media Content" companion window %> - <%= stylesheet_link_tag 'sul_icons.css' %> <%= javascript_importmap_tags 'media' %> diff --git a/app/views/layouts/preview/pdf.html.erb b/app/views/layouts/preview/pdf.html.erb index 51f8d4a68..d9636dea6 100644 --- a/app/views/layouts/preview/pdf.html.erb +++ b/app/views/layouts/preview/pdf.html.erb @@ -2,8 +2,6 @@ <%= stylesheet_link_tag 'pdf.css' %> - <% # sul_icons.css is used for file icons in the "Contents" companion window %> - <%= stylesheet_link_tag 'sul_icons.css' %> <%= javascript_importmap_tags 'document' %> diff --git a/app/views/pages/sandbox.html.erb b/app/views/pages/sandbox.html.erb index ccb17423d..bb5bb016a 100644 --- a/app/views/pages/sandbox.html.erb +++ b/app/views/pages/sandbox.html.erb @@ -114,7 +114,6 @@
- @@ -177,7 +176,6 @@ const apiEndpoint = document.querySelector('.api-endpoint').value.trim(); const urlScheme = document.querySelector('.url-scheme').value.trim(); const hideTitle = document.querySelector('.hide-title').checked; - const newViewer = document.querySelector('.new-viewer').checked; const hideSearch = document.querySelector('.hide-search').checked; const minFiles = document.querySelector('.min-files').value; const hideEmbed = document.querySelector('.hide-embed').checked; @@ -193,7 +191,6 @@ url = apiEndpoint + "/?url=" + urlScheme + "&format=" + format; - if (newViewer) url += "&new_viewer=true"; if (hideTitle) url += "&hide_title=true"; if (hideSearch) url += "&hide_search=true"; if (minFiles) url += "&min_files_to_search=" + minFiles; diff --git a/lib/embed/request.rb b/lib/embed/request.rb index 31108792d..843f4d502 100644 --- a/lib/embed/request.rb +++ b/lib/embed/request.rb @@ -62,11 +62,6 @@ def hide_search? params[:hide_search] == 'true' end - # This is a temporary method that allows us to test new viewers before making them the default - def new_viewer? - true - end - def min_files_to_search params[:min_files_to_search] end @@ -91,7 +86,6 @@ def purl_object def as_url_params p = params.slice( :hide_title, :hide_embed, :hide_search, :hide_download, - :new_viewer, :min_files_to_search, :canvas_id, :canvas_index, :search, :suggested_search, diff --git a/package.json b/package.json index 14d8e0e43..bbe05d3e0 100644 --- a/package.json +++ b/package.json @@ -11,9 +11,7 @@ "bugs": { "url": "https://github.com/sul-dlss/sul-embed/issues" }, - "scripts": { - "build:css": "sass ./app/assets/stylesheets/legacy_file.scss:./app/assets/builds/legacy_file.css ./app/assets/stylesheets/legacy_geo.scss:./app/assets/builds/legacy_geo.css ./app/assets/stylesheets/legacy_model.scss:./app/assets/builds/legacy_model.css ./app/assets/stylesheets/legacy_was_seed.scss:./app/assets/builds/legacy_was_seed.css ./app/assets/stylesheets/sul_icons.scss:./app/assets/builds/sul_icons.css --no-source-map --load-path=node_modules --load-path=vendor/assets/javascripts" - }, + "scripts": {}, "private": true, "dependencies": { "@babel/core": "7", @@ -27,7 +25,6 @@ "babel-plugin-macros": "^3.1.0", "babel-plugin-transform-react-remove-prop-types": "^0.4.24", "compression-webpack-plugin": "9", - "jquery": "^3.7.1", "mirador": "^3.3.0", "mirador-dl-plugin": "^0.13.0", "mirador-image-tools": "^0.8.0", @@ -35,7 +32,6 @@ "prop-types": "^15.7.2", "react": "^16.8.6", "react-dom": "^16.8.6", - "sass": "^1.57.1", "shakapacker": "7", "terser-webpack-plugin": "5", "webpack": "5", diff --git a/setupJest.js b/setupJest.js deleted file mode 100644 index acf3b827f..000000000 --- a/setupJest.js +++ /dev/null @@ -1,9 +0,0 @@ -import $ from 'jquery' -import * as L from 'leaflet' - -// make jQuery globally available in tests as both "$" and "jQuery" -global.jQuery = $ -global.$ = global.jQuery - -// make leaflet globally available in tests as "L" -global.L = L diff --git a/spec/components/embed/file/header_component_spec.rb b/spec/components/embed/file/header_component_spec.rb deleted file mode 100644 index 29cdf9f87..000000000 --- a/spec/components/embed/file/header_component_spec.rb +++ /dev/null @@ -1,30 +0,0 @@ -# frozen_string_literal: true - -require 'rails_helper' - -RSpec.describe Embed::File::HeaderComponent, type: :component do - let(:request) { Embed::Request.new(url: 'http://purl.stanford.edu/abc123') } - let(:viewer) { Embed::Viewer::File.new(request) } - - let(:purl) { build(:purl, title: 'File Title') } - - before do - allow(Embed::Purl).to receive(:find).and_return(purl) - render_inline(described_class.new(viewer:)) - end - - it "returns the object's title" do - expect(page).to have_css '.sul-embed-header-title', text: 'File Title' - end - - context 'with hidden title' do - let(:request) do - Embed::Request.new(url: 'http://purl.stanford.edu/abc123', hide_title: 'true') - end - - it 'does not return the object title if the consumer requested to hide it' do - expect(page).to have_no_css '.sul-embed-header-title' - expect(page).to have_no_css '.sul-embed-metadata-title' - end - end -end diff --git a/spec/components/file_component_spec.rb b/spec/components/file_component_spec.rb index ce266d7a9..3d3fe519c 100644 --- a/spec/components/file_component_spec.rb +++ b/spec/components/file_component_spec.rb @@ -4,7 +4,7 @@ RSpec.describe FileComponent, type: :component do let(:request) do - Embed::Request.new(url: 'http://purl.stanford.edu/abc123', min_files_to_search: 1, new_viewer: 'true') + Embed::Request.new(url: 'http://purl.stanford.edu/abc123', min_files_to_search: 1) end let(:viewer) { Embed::Viewer::File.new(request) } let(:purl) { build(:purl, :file, contents: resources) } @@ -26,7 +26,7 @@ end context 'when hide_title is passed' do - Embed::Request.new(url: 'http://purl.stanford.edu/abc123', min_files_to_search: 1, new_viewer: 'true', hide_title: 'true') + Embed::Request.new(url: 'http://purl.stanford.edu/abc123', min_files_to_search: 1, hide_title: 'true') it 'displays the page' do within 'header' do diff --git a/spec/components/legacy/download/geo_component_spec.rb b/spec/components/legacy/download/geo_component_spec.rb deleted file mode 100644 index 61104a54a..000000000 --- a/spec/components/legacy/download/geo_component_spec.rb +++ /dev/null @@ -1,56 +0,0 @@ -# frozen_string_literal: true - -require 'rails_helper' - -RSpec.describe Legacy::Download::GeoComponent, type: :component do - let(:request) { Embed::Request.new(url: 'http://purl.stanford.edu/abc123') } - let(:viewer) { Embed::Viewer::Geo.new(request) } - - let(:purl) { build(:purl, contents:) } - let(:contents) { [build(:resource, :file)] } - - before do - allow(Embed::Purl).to receive(:find).and_return(purl) - render_inline(described_class.new(viewer:)) - end - - context 'when hide_download' do - let(:viewer) do - Embed::Viewer::Geo.new( - Embed::Request.new( - url: 'http://purl.stanford.edu/bc123df4567', hide_download: 'true' - ) - ) - end - - it 'is empty' do - expect(page).to have_no_css('body') - end - end - - context 'when the file has multiple resources' do - let(:contents) { [build(:resource, :file, files:), build(:resource, :file, files: [build(:resource_file)])] } - let(:files) { [build(:resource_file, :world_downloadable, filename: 'data.zip'), build(:resource_file, :world_downloadable, filename: 'data.zip')] } - - it 'generates a file list' do - expect(page).to have_css 'li', visible: :all, count: 3 - expect(page).to have_link href: 'https://stacks.stanford.edu/file/bc123df4567/data.zip?download=true', visible: :all - end - end - - context 'with stanford only' do - let(:contents) { [build(:resource, :file, files: [build(:resource_file, :stanford_only)])] } - - it 'has the stanford-only class (with screen reader text)' do - expect(page).to have_css 'li .sul-embed-stanford-only-text .sul-embed-text-hide', text: 'Stanford only', visible: :all - end - end - - context 'with location restrictions' do - let(:contents) { [build(:resource, :file, files: [build(:resource_file, :location_restricted)])] } - - it 'includes text to indicate that they are restricted' do - expect(page).to have_css 'li .sul-embed-location-restricted-text', text: '(Restricted)', visible: :all - end - end -end diff --git a/spec/components/legacy/download/model_component_spec.rb b/spec/components/legacy/download/model_component_spec.rb deleted file mode 100644 index 50649f141..000000000 --- a/spec/components/legacy/download/model_component_spec.rb +++ /dev/null @@ -1,15 +0,0 @@ -# frozen_string_literal: true - -require 'rails_helper' - -RSpec.describe Legacy::Download::ModelComponent, type: :component do - pending "add some examples to (or delete) #{__FILE__}" - - # it "renders something useful" do - # expect( - # render_inline(described_class.new(attr: "value")) { "Hello, components!" }.css("p").to_html - # ).to include( - # "Hello, components!" - # ) - # end -end diff --git a/spec/components/legacy/download_panel_component_spec.rb b/spec/components/legacy/download_panel_component_spec.rb deleted file mode 100644 index 8974a57cd..000000000 --- a/spec/components/legacy/download_panel_component_spec.rb +++ /dev/null @@ -1,19 +0,0 @@ -# frozen_string_literal: true - -require 'rails_helper' - -RSpec.describe Legacy::DownloadPanelComponent, type: :component do - before do - render_inline(described_class.new(title: 'The Panel Title')) { 'Added Panel Content' } - end - - it 'renders the panel' do - expect(page).to have_css( - '.sul-embed-panel-header .sul-embed-panel-title', - text: 'The Panel Title', - visible: :all - ) - - expect(page).to have_content('Added Panel Content') - end -end diff --git a/spec/components/legacy/embed_panel_component_spec.rb b/spec/components/legacy/embed_panel_component_spec.rb deleted file mode 100644 index 564d6b537..000000000 --- a/spec/components/legacy/embed_panel_component_spec.rb +++ /dev/null @@ -1,64 +0,0 @@ -# frozen_string_literal: true - -require 'rails_helper' - -RSpec.describe Legacy::EmbedPanelComponent, type: :component do - before do - render_inline(described_class.new(viewer:)) { 'Added Panel Content' } - end - - let(:embed_request) { Embed::Request.new({ url: 'http://purl.stanford.edu/abc123' }) } - let(:viewer) do - instance_double( - Embed::Viewer::CommonViewer, - height: '555', - width: '666', - embed_request:, - iframe_title: 'File viewer', - purl_object: instance_double(Embed::Purl, druid: 'oo000oo0000', version_id: nil, title: 'The Object Title', purl_url: 'https://stanford.edu/') - ) - end - - describe 'header' do - it 'has the panel title' do - expect(page).to have_css( - '.sul-embed-panel-header .sul-embed-panel-title', - text: 'Embed', - visible: :all - ) - end - end - - describe 'body' do - describe 'title' do - it 'has the purl object title' do - expect(page).to have_content(/title\s*\(The Object Title\)/) - end - - it 'has span with only the purl object title' do - expect(page).to have_css( - 'span', - text: '(The Object Title)', - visible: :all - ) - end - - it 'has hide_title checkbox' do - expect(page).to have_css('input#sul-embed-embed-title[data-embed-attr=hide_title][type=checkbox]', visible: :all) - end - end - - it 'includes the content provided in the block' do - expect(page).to have_content('Added Panel Content') - end - - it 'has hide embed checkbox' do - expect(page).to have_css('input#sul-embed-embed[data-embed-attr=hide_embed][type=checkbox]', visible: :all) - end - - it 'has iframe textarea' do - # more specific tests in feature - expect(page).to have_css('textarea#sul-embed-iframe-code', visible: :all) - end - end -end diff --git a/spec/components/legacy/embed_this_form_component_spec.rb b/spec/components/legacy/embed_this_form_component_spec.rb deleted file mode 100644 index 504257dac..000000000 --- a/spec/components/legacy/embed_this_form_component_spec.rb +++ /dev/null @@ -1,46 +0,0 @@ -# frozen_string_literal: true - -require 'rails_helper' - -RSpec.describe Legacy::EmbedThisFormComponent, type: :component do - let(:request) do - Embed::Request.new(url: 'http://purl.stanford.edu/abc123') - end - let(:object) { instance_double(Embed::Purl, title: '', druid: '', version_id: nil, resource_files: [], embargoed?: false) } - let(:viewer) { Embed::Viewer::File.new(request) } - - before do - allow(request).to receive(:purl_object).and_return(object) - end - - context 'without any content' do - before do - render_inline(described_class.new(viewer:)) - end - - it 'has the form elements for updating the embed code' do - expect(page.find('.sul-embed-options-label#select-options')).to have_content('Select options:') - expect(page).to have_css('input#sul-embed-embed-title[type="checkbox"]') - expect(page).to have_css('input#sul-embed-embed[type="checkbox"]') - expect(page).to have_css('textarea#sul-embed-iframe-code') - end - end - - context 'with content' do - before do - with_controller_class EmbedController do - render_inline(described_class.new(viewer:)) do - vc_test_controller.helpers.tag :input, type: 'checkbox', id: 'sul-embed-embed-search' - end - end - end - - it 'has the form elements for updating the embed code' do - expect(page.find('.sul-embed-options-label#select-options')).to have_content('Select options:') - expect(page).to have_css('input#sul-embed-embed-title[type="checkbox"]') - expect(page).to have_css('input#sul-embed-embed-search[type="checkbox"]') - expect(page).to have_css('input#sul-embed-embed[type="checkbox"]') - expect(page).to have_css('textarea#sul-embed-iframe-code') - end - end -end diff --git a/spec/components/legacy/file_component_spec.rb b/spec/components/legacy/file_component_spec.rb deleted file mode 100644 index ef5de9f59..000000000 --- a/spec/components/legacy/file_component_spec.rb +++ /dev/null @@ -1,141 +0,0 @@ -# frozen_string_literal: true - -require 'rails_helper' - -RSpec.describe Legacy::FileComponent, type: :component do - let(:request) do - Embed::Request.new(url: 'http://purl.stanford.edu/abc123') - end - let(:viewer) { Embed::Viewer::File.new(request) } - let(:purl) { build(:purl, contents: resources) } - let(:resources) { [build(:resource, :file, files: [build(:resource_file, :stanford_only, label: 'Second File')])] } - - before do - allow(Embed::Purl).to receive(:find).and_return(purl) - render_inline(described_class.new(viewer:)) - end - - it 'returns html that has header, body, and footer wrapped in a container' do - # visible :all because we display:none the container until we've loaded the CSS. - expect(page).to have_css 'div.sul-embed-container', visible: :all - expect(page).to have_css 'div.sul-embed-body', visible: :all - expect(page).to have_css 'div.sul-embed-header', visible: :all - expect(page).to have_css 'div.sul-embed-panel-container', visible: :all - expect(page).to have_css 'div.sul-embed-footer', visible: :all - end - - context 'when a version id is supplied' do - let(:request) do - Embed::Request.new(url: 'http://purl.stanford.edu/bc123df456/version/1') - end - let(:purl) { build(:purl, contents: resources, druid: 'bc123df456', version_id: '1') } - let(:resources) { [build(:resource, :file, druid: 'bc123df456', files: [build(:resource_file, label: 'A File')])] } - - it 'returns a versioned stacks url' do - link = page.find('tr[data-tree-role="leaf"] a', match: :first, visible: :all) - expect(link['href']).to eq('https://stacks.stanford.edu/v2/file/bc123df4567/version/1/data.zip') - end - end - - context 'with multiple files' do - let(:resources) do - [ - build(:resource, :file, - files: [ - build(:resource_file, :document, size: 12_345), - build(:resource_file, :document, size: 12_346) - ]) - ] - end - - it 'returns a table of files' do - # visible :all because we display:none the container until we've loaded the CSS. - expect(page).to have_css 'a[download]', visible: :all, text: 'Download' - end - - it 'have the appropriate attributes for being _blank' do - expect(page).to have_css('td[role="gridcell"] a[target="_blank"][rel="noopener noreferrer"]', visible: :all) - end - end - - context 'when file size is zero' do - let(:resources) do - [build(:resource, :image, files: [build(:resource_file, :image, size: 0)])] - end - - it 'displays Download as the link text' do - expect(page).to have_css 'a[download]', visible: :all, text: /Download$/ - end - end - - describe 'embargo/Stanford only' do - let(:purl) { build(:purl, :embargoed_stanford, contents: resources) } - let(:resources) { [build(:resource, :file, files: [build(:resource_file, :document, :stanford_only, filename: 'Title of the PDF.pdf')])] } - - it 'adds a Stanford specific embargo message with links still present' do - expect(page).to have_css('.sul-embed-embargo-message', visible: :all, text: 'Access is restricted to Stanford-affiliated patrons until 21-Dec-2053') - expect(page).to have_css('tr[data-tree-role="leaf"] a[href="https://stacks.stanford.edu/file/bc123df4567/Title%20of%20the%20PDF.pdf"]', visible: :all) - end - - it 'includes an element with a stanford icon class (with screen reader text)' do - expect(page).to have_css( - 'tr[data-tree-role="leaf"] .sul-embed-stanford-only-text .sul-embed-text-hide', - visible: :all, - text: 'Stanford only' - ) - end - end - - describe 'embargoed to world' do - let(:purl) { build(:purl, :embargoed, contents: resources) } - - it 'adds a generalized embargo message and no links are present' do - expect(page).to have_css('.sul-embed-embargo-message', visible: :all, text: 'Access is restricted until 21-Dec-2053') - # FIXME: this is a bad spec as it's not checking for visibility false - expect(page).to have_no_link - end - end - - describe 'location restricted' do - let(:resources) { [build(:resource, :file, files: [build(:resource_file, :location_restricted, label: 'Second File')])] } - - it 'includes text indicating the file is location restricted' do - expect(page).to have_css('tr[data-tree-role="leaf"] .sul-embed-location-restricted-text', visible: :all, text: '(Restricted)') - end - end - - context 'with hidden title' do - let(:request) do - Embed::Request.new(url: 'http://purl.stanford.edu/abc123', hide_title: 'true') - end - - it do - allow(viewer).to receive(:display_header?).at_least(:once).and_return(false) - expect(page).to have_no_css '.sul-embed-header', visible: :all - end - end - - describe 'media list' do - let(:resources) { [build(:resource, :file, files: [build(:resource_file, filename:)])] } - - context 'with a normal filename' do - let(:filename) { 'Title_of_the_PDF.pdf' } - - it 'leaves correctly formatted filenames alone' do - expect(page).to have_css '.sul-embed-body.sul-embed-file', visible: :all - link = page.find('tr[data-tree-role="leaf"] a', match: :first, visible: :all) - expect(link['href']).to eq('https://stacks.stanford.edu/file/bc123df4567/Title_of_the_PDF.pdf') - end - end - - context 'with a wonky filename' do - let(:filename) { '#Title of the PDF.pdf' } - - it 'encodes them' do - expect(page).to have_css '.sul-embed-body.sul-embed-file', visible: :all - link = page.find('tr[data-tree-role="leaf"] a', match: :first, visible: :all) - expect(link['href']).to eq('https://stacks.stanford.edu/file/bc123df4567/%23Title%20of%20the%20PDF.pdf') - end - end - end -end diff --git a/spec/components/legacy/footer_component_spec.rb b/spec/components/legacy/footer_component_spec.rb deleted file mode 100644 index 645fa7f36..000000000 --- a/spec/components/legacy/footer_component_spec.rb +++ /dev/null @@ -1,52 +0,0 @@ -# frozen_string_literal: true - -require 'rails_helper' - -RSpec.describe Legacy::FooterComponent, type: :component do - let(:request) { Embed::Request.new(url: 'http://purl.stanford.edu/abc123') } - let(:object) { Embed::Purl.find('12345') } - let(:viewer) { Embed::Viewer::Geo.new(request) } - let(:purl) { build(:purl) } - - before do - allow(Embed::Purl).to receive(:find).and_return(purl) - render_inline(described_class.new(viewer:)) - end - - context 'when there are two files available for download' do - let(:purl) { build(:purl, contents:) } - let(:contents) { [build(:resource, :image, files: [build(:resource_file, :world_downloadable), build(:resource_file, :world_downloadable)])] } - - it "returns the object's footer" do - expect(page).to have_css 'div.sul-embed-footer' - expect(page).to have_css '[aria-label="open embed this panel"]' - expect(page).to have_css '[aria-label="2 files available for download"]' - expect(page).to have_css '.sul-embed-download-count', text: 2 - end - end - - context 'when the purl includes a version id' do - let(:request) do - Embed::Request.new(url: 'http://purl.stanford.edu/bc123df4567/version/1') - end - let(:purl) { build(:purl, contents: resources, druid: 'bc123df4567', version_id: '1') } - let(:resources) { [build(:resource, :file, druid: 'bc123df4567', files: [build(:resource_file, :world_downloadable), build(:resource_file, :world_downloadable)])] } - - it 'returns a versioned stacks url for download all' do - link = page.find_by_id('sul-embed-footer-download-all') - expect(link['href']).to eq('https://stacks.stanford.edu/object/bc123df4567/version/1') - end - end - - describe 'fullscreen button' do - context 'when the viewer is configured to use the local fullscreen function' do - let(:viewer) { Embed::Viewer::DocumentViewer.new(request) } - - it { expect(page).to have_css('button#full-screen-button') } - end - - context 'when the viewer is not configured to use the local fullscreen function' do - it { expect(page).to have_no_css('button#full-screen-button') } - end - end -end diff --git a/spec/components/legacy/geo_component_spec.rb b/spec/components/legacy/geo_component_spec.rb deleted file mode 100644 index 0cdd47b74..000000000 --- a/spec/components/legacy/geo_component_spec.rb +++ /dev/null @@ -1,37 +0,0 @@ -# frozen_string_literal: true - -require 'rails_helper' - -RSpec.describe Legacy::GeoComponent, type: :component do - let(:request) do - Embed::Request.new(url: 'http://purl.stanford.edu/abc123') - end - let(:viewer) { Embed::Viewer::Geo.new(request) } - let(:purl) { build(:purl, :geo) } - - before do - allow(Embed::Purl).to receive(:find).and_return(purl) - - render_inline(described_class.new(viewer:)) - end - - it 'draws geo html body for public resources' do - # visible false because we display:none the container until we've loaded the CSS. - expect(page).to have_css '.sul-embed-geo', visible: :all - expect(page).to have_css '#sul-embed-geo-map', visible: :all - expect(page).to have_css('#sul-embed-geo-map[style="flex: 1"]', visible: :all) - expect(page).to have_css('#sul-embed-geo-map[data-bounding-box=\'[["-1.478794", "29.572742"], ["4.234077", "35.000308"]]\']', visible: :all) - expect(page).to have_css('#sul-embed-geo-map[data-wms-url="https://geowebservices.stanford.edu/geoserver/wms/"]', visible: :all) - expect(page).to have_css('#sul-embed-geo-map[data-layers="druid:cz128vq0535"]', visible: :all) - end - - context 'with hidden title' do - let(:request) do - Embed::Request.new(url: 'http://purl.stanford.edu/abc123', hide_title: 'true') - end - - it do - expect(page).to have_no_css '.sul-embed-header', visible: :all - end - end -end diff --git a/spec/components/legacy/model_component_spec.rb b/spec/components/legacy/model_component_spec.rb deleted file mode 100644 index 7ce3d40a5..000000000 --- a/spec/components/legacy/model_component_spec.rb +++ /dev/null @@ -1,15 +0,0 @@ -# frozen_string_literal: true - -require 'rails_helper' - -RSpec.describe Legacy::ModelComponent, type: :component do - pending "add some examples to (or delete) #{__FILE__}" - - # it "renders something useful" do - # expect( - # render_inline(described_class.new(attr: "value")) { "Hello, components!" }.css("p").to_html - # ).to include( - # "Hello, components!" - # ) - # end -end diff --git a/spec/components/legacy/was_seed_component_spec.rb b/spec/components/legacy/was_seed_component_spec.rb deleted file mode 100644 index 5ed7fa8ca..000000000 --- a/spec/components/legacy/was_seed_component_spec.rb +++ /dev/null @@ -1,75 +0,0 @@ -# frozen_string_literal: true - -require 'rails_helper' - -RSpec.describe Legacy::WasSeedComponent, type: :component do - include WasTimeMapFixtures - - let(:embed_request) do - Embed::Request.new(url: 'http://purl.stanford.edu/abc123') - end - let(:viewer) { Embed::Viewer::WasSeed.new(embed_request) } - let(:purl) { build(:purl, :was_seed) } - - before do - allow(Embed::Purl).to receive(:find).and_return(purl) - end - - context 'with current timemap behavior' do - let(:fake_connection) do - instance_double(Faraday::Connection, get: instance_double(Faraday::Response, body: timemap, success?: true)) - end - - before do - allow_any_instance_of(Embed::WasTimeMap).to receive(:redirectable_connection).and_return(fake_connection) - expect(fake_connection).to receive(:get).once - render_inline(described_class.new(viewer:)) - end - - it 'displays Was Seed viewer body' do - # visible false because we display:none the container until we've loaded the CSS. - expect(page).to have_css '.sul-embed-was-seed', visible: :all - expect(page).to have_css '.sul-embed-was-seed-list', visible: :all, count: 1 - expect(page).to have_css '.sul-embed-was-seed-list-item', visible: :all, count: 7 - end - - context 'with hidden title' do - let(:embed_request) do - Embed::Request.new(url: 'http://purl.stanford.edu/abc123', hide_title: 'true') - end - - it do - expect(page).to have_no_css '.sul-embed-header', visible: :all - end - end - end - - context 'with new timemap behavior' do - let(:fake_connection) do - instance_double(Faraday::Connection, get: instance_double(Faraday::Response, body: timemap_new, success?: true)) - end - - before do - allow_any_instance_of(Embed::WasTimeMap).to receive(:redirectable_connection).and_return(fake_connection) - expect(fake_connection).to receive(:get).once - render_inline(described_class.new(viewer:)) - end - - it 'displays Was Seed viewer body' do - # visible false because we display:none the container until we've loaded the CSS. - expect(page).to have_css '.sul-embed-was-seed', visible: :all - expect(page).to have_css '.sul-embed-was-seed-list', visible: :all, count: 1 - expect(page).to have_css '.sul-embed-was-seed-list-item', visible: :all, count: 7 - end - - context 'with hidden title' do - let(:embed_request) do - Embed::Request.new(url: 'http://purl.stanford.edu/abc123', hide_title: 'true') - end - - it do - expect(page).to have_no_css '.sul-embed-header', visible: :all - end - end - end -end diff --git a/spec/components/m3_component_spec.rb b/spec/components/m3_component_spec.rb index 49f25fb5e..e972646ef 100644 --- a/spec/components/m3_component_spec.rb +++ b/spec/components/m3_component_spec.rb @@ -16,16 +16,6 @@ expect(page).to have_css '#sul-embed-m3', visible: :all end - context 'with hidden title' do - let(:request) do - Embed::Request.new(url: 'http://purl.stanford.edu/abc123', hide_title: 'true') - end - - it do - expect(page).to have_no_css '.sul-embed-header', visible: :all - end - end - it 'passes along canvas index' do expect(page).to have_css '[data-canvas-index="3"]', visible: :all end diff --git a/spec/components/web_archive_component_spec.rb b/spec/components/web_archive_component_spec.rb index b7244368f..7c667c018 100644 --- a/spec/components/web_archive_component_spec.rb +++ b/spec/components/web_archive_component_spec.rb @@ -40,7 +40,7 @@ end it do - expect(page).to have_no_css '.sul-embed-header', visible: :all + expect(page).to have_no_css 'h2', visible: :all end end end @@ -70,7 +70,7 @@ end it do - expect(page).to have_no_css '.sul-embed-header', visible: :all + expect(page).to have_no_css 'h2', visible: :all end end end diff --git a/spec/features/embed_this_panel_spec.rb b/spec/features/embed_this_panel_spec.rb index 108aea8f9..f24060ee1 100644 --- a/spec/features/embed_this_panel_spec.rb +++ b/spec/features/embed_this_panel_spec.rb @@ -3,7 +3,7 @@ require 'rails_helper' RSpec.describe 'embed this panel', :js do - let(:iframe_options) { { new_viewer: 'true' } } + let(:iframe_options) { {} } let(:purl) do build(:purl, :file, contents: [build(:resource, files: [build(:resource_file, :document, label: 'File1 Label')])]) @@ -42,7 +42,7 @@ end context 'with a customized request' do - let(:iframe_options) { { hide_title: true, new_viewer: 'true' } } + let(:iframe_options) { { hide_title: true } } it "defaults to the options from the current viewer's request" do textarea_value = page.find('textarea').value diff --git a/spec/features/file_viewer_spec.rb b/spec/features/file_viewer_spec.rb index 45a948c92..38563600a 100644 --- a/spec/features/file_viewer_spec.rb +++ b/spec/features/file_viewer_spec.rb @@ -18,6 +18,8 @@ it 'makes purl embed request and embed' do expect(page).to have_css('.sul-embed-container') + expect(page).to have_css('h2') + expect(page).to have_css('#main-display') expect(page).to have_css('tr[data-tree-role="leaf"] a', text: 'Download') expect(page).to have_css('*[data-tree-role="label"]', text: 'File1 Label') @@ -45,7 +47,7 @@ end it 'hides the title' do - expect(page).to have_no_css('.sul-embed-header-title') + expect(page).to have_no_css('h2') end end end diff --git a/spec/features/metadata_panel_spec.rb b/spec/features/metadata_panel_spec.rb deleted file mode 100644 index 20ca9e0c6..000000000 --- a/spec/features/metadata_panel_spec.rb +++ /dev/null @@ -1,42 +0,0 @@ -# frozen_string_literal: true - -require 'rails_helper' - -RSpec.describe 'metadata panel', :js, skip: 'legacy only' do - let(:request) do - Embed::Request.new( - { url: 'http://purl.stanford.edu/abc123' }, - controller - ) - end - - let(:purl) do - build(:purl, :file, - contents: [build(:resource, files: [build(:resource_file, :document, label: 'File1 Label')])], - use_and_reproduction: 'You can use this.', - license: 'Public Domain Mark 1.0') - end - - before do - allow(Embed::Purl).to receive(:find).and_return(purl) - visit_iframe_response - end - - it 'is present after a user clicks the button' do - expect(page).to have_css('.sul-embed-metadata-panel', visible: :hidden) - page.find('[data-sul-embed-toggle="sul-embed-metadata-panel"]', match: :first).click - expect(page).to have_css('.sul-embed-metadata-panel', visible: :all) - page.find('[data-sul-embed-toggle="sul-embed-metadata-panel"]', match: :first).click - expect(page).to have_css('.sul-embed-metadata-panel', visible: :hidden) - end - - it 'has purl link, use and reproduction, and license text' do - page.find('[data-sul-embed-toggle="sul-embed-metadata-panel"]', match: :first).click - expect(page).to have_css('dt', text: 'Citation URL', visible: :all) - expect(page).to have_css('dt', text: 'Use and reproduction', visible: :all) - expect(page).to have_css('dt', text: 'License', visible: :all) - within '.sul-embed-metadata-panel' do - expect(page).to have_css 'dd', text: 'You can use this.', visible: :all - end - end -end diff --git a/spec/lib/embed/viewer/file_spec.rb b/spec/lib/embed/viewer/file_spec.rb index 7e73de525..89bab3ecc 100644 --- a/spec/lib/embed/viewer/file_spec.rb +++ b/spec/lib/embed/viewer/file_spec.rb @@ -18,13 +18,6 @@ end describe 'height' do - let(:purl) do - build(:purl, contents: [ - build(:resource, :file, files: [build(:resource_file)]), - build(:resource, :file, files: [build(:resource_file)]) - ]) - end - context 'when the requested maxheight is provided' do let(:request) { Embed::Request.new(url: 'http://purl.stanford.edu/abc123', maxheight: '600') } @@ -40,113 +33,6 @@ end end - describe 'default_height', skip: 'legacy viewer height' do - context 'when title and search is hidden' do - before do - expect(request).to receive(:hide_title?).at_least(:once).and_return(true) - expect(request).to receive(:hide_search?).at_least(:once).and_return(true) - end - - context 'with four files' do - let(:purl) do - build(:purl, contents: [ - build(:resource, :file, files: [build(:resource_file)]), - build(:resource, :file, files: [build(:resource_file)]), - build(:resource, :file, files: [build(:resource_file)]), - build(:resource, :file, files: [build(:resource_file)]) - ]) - end - - it 'defaults to 323' do - expect(file_viewer.send(:default_height)).to eq '323px' - end - end - - context 'with one file' do - let(:purl) do - build(:purl, contents: [build(:resource, :file, files: [build(:resource_file)])]) - end - - it 'reduces the height based on the number of files in the object, but no lower than our min height' do - expect(file_viewer.send(:default_height)).to eq '189px' - end - end - - context 'with two files' do - let(:purl) do - build(:purl, contents: [ - build(:resource, :file, files: [build(:resource_file)]), - build(:resource, :file, files: [build(:resource_file)]) - ]) - end - - it 'reduces the height based on the number of files in the object' do - expect(file_viewer.send(:default_height)).to eq '189px' - end - end - end - - context 'when the item is embargoed' do - before do - expect(request).to receive(:hide_title?).at_least(:once).and_return(true) - expect(request).to receive(:hide_search?).at_least(:once).and_return(true) - end - - it 'adds 44 pixels to the height (to avoid unnecessary scroll)' do - expect(file_viewer.send(:default_height)).to eq '189px' # minimum height - end - end - - context 'when the title bar is present' do - before do - expect(request).to receive(:hide_title?).at_least(:once).and_return(false) - end - - let(:purl) { build(:purl, contents: [build(:resource, files: [build(:resource_file)])]) } - - it 'adds the necessary height' do - expect(file_viewer.send(:default_height)).to eq '190px' - end - end - end - - describe 'header_height' do - context 'when the title bar and search bar is hidden' do - before do - expect(request).to receive(:hide_title?).at_least(:once).and_return(true) - expect(request).to receive(:hide_search?).at_least(:once).and_return(true) - end - - it { expect(file_viewer.send(:header_height)).to be_zero } - end - - context 'when the title bar is hidden but a search is present' do - let(:purl) do - build(:purl, contents: [ - build(:resource, :file, files: [build(:resource_file)]), - build(:resource, :file, files: [build(:resource_file)]), - build(:resource, :file, files: [build(:resource_file)]), - build(:resource, :file, files: [build(:resource_file)]) - ]) - end - - before do - expect(file_viewer).to receive(:min_files_to_search).and_return(3) - expect(request).to receive(:hide_title?).at_least(:once).and_return(true) - end - - it 'is 40 for the search bar' do - expect(file_viewer.send(:header_height)).to eq 40 - end - end - - context 'when the title bar is present' do - it 'is 68 because it will show the title + number of items' do - expect(file_viewer.send(:header_height)).to eq 68 - end - end - end - describe 'file_type_icon' do it 'default file icon if mimetype is not recognized' do expect(file_viewer.file_type_icon('application/null')).to eq Icons::InsertDriveFileComponent diff --git a/spec/lib/embed/viewer/was_seed_spec.rb b/spec/lib/embed/viewer/was_seed_spec.rb index b217ae1ad..c233ea22a 100644 --- a/spec/lib/embed/viewer/was_seed_spec.rb +++ b/spec/lib/embed/viewer/was_seed_spec.rb @@ -50,17 +50,6 @@ end end - describe 'default_height' do - it 'has one' do - expect(was_seed_viewer.send(:default_height)).to eq '31.25rem' - end - - it 'is smaller when the title is hidden', skip: 'legacy viewer only' do - expect(request).to receive(:hide_title?).and_return(true) - expect(was_seed_viewer.send(:default_height)).to eq '340px' - end - end - describe '.external_url' do it 'builds the external url based on wayback url as extracted from prul' do expect(was_seed_viewer.external_url).to eq('https://swap.stanford.edu/*/http://naca.central.cranfield.ac.uk/') diff --git a/spec/rails_helper.rb b/spec/rails_helper.rb index c88dd673c..0a75bca02 100644 --- a/spec/rails_helper.rb +++ b/spec/rails_helper.rb @@ -51,15 +51,14 @@ end def visit_iframe_response(druid = 'ignored', min_files_to_search: nil, hide_search: nil, hide_title: nil, - hide_download: nil, fullheight: nil, new_viewer: false) + hide_download: nil, fullheight: nil) visit iframe_path( url: "#{Settings.purl_url}/#{druid}", min_files_to_search:, hide_search:, hide_title:, hide_download:, - fullheight:, - new_viewer: + fullheight: ) expect(page).to have_css('.sul-embed-container') end diff --git a/spec/requests/embed_spec.rb b/spec/requests/embed_spec.rb index b9f1bdc22..0dda0e9e3 100644 --- a/spec/requests/embed_spec.rb +++ b/spec/requests/embed_spec.rb @@ -76,9 +76,8 @@ context 'with a valid request (json) with extra parameters' do it 'has a 200 status code and html returns correct parameters' do - get '/embed', params: { url: 'http://purl.stanford.edu/fn662rv4961', new_viewer: true, hide_title: false, invalid_field: true } + get '/embed', params: { url: 'http://purl.stanford.edu/fn662rv4961', hide_title: false, invalid_field: true } expect(response).to have_http_status(:ok) - expect(response.parsed_body['html']).to include('new_viewer=true') expect(response.parsed_body['html']).to include('hide_title=false') expect(response.parsed_body['html']).not_to include('invalid_field=true') end diff --git a/test/components/previews/embed/file_component_preview.rb b/test/components/previews/embed/file_component_preview.rb index d7aad60e8..6a4b84f96 100644 --- a/test/components/previews/embed/file_component_preview.rb +++ b/test/components/previews/embed/file_component_preview.rb @@ -13,7 +13,7 @@ def hierarchy private def render_viewer_for(url:) - embed_request = Embed::Request.new(url:, new_viewer: 'true') + embed_request = Embed::Request.new(url:) viewer = Embed::Viewer::File.new(embed_request) render(viewer.component.new(viewer:)) end diff --git a/yarn.lock b/yarn.lock index 8b88a7337..8917a9a36 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1088,95 +1088,6 @@ prop-types "^15.7.2" react-is "^16.8.0 || ^17.0.0" -"@parcel/watcher-android-arm64@2.5.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.1.tgz#507f836d7e2042f798c7d07ad19c3546f9848ac1" - integrity sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA== - -"@parcel/watcher-darwin-arm64@2.5.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.1.tgz#3d26dce38de6590ef79c47ec2c55793c06ad4f67" - integrity sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw== - -"@parcel/watcher-darwin-x64@2.5.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.1.tgz#99f3af3869069ccf774e4ddfccf7e64fd2311ef8" - integrity sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg== - -"@parcel/watcher-freebsd-x64@2.5.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.1.tgz#14d6857741a9f51dfe51d5b08b7c8afdbc73ad9b" - integrity sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ== - -"@parcel/watcher-linux-arm-glibc@2.5.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.1.tgz#43c3246d6892381db473bb4f663229ad20b609a1" - integrity sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA== - -"@parcel/watcher-linux-arm-musl@2.5.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.1.tgz#663750f7090bb6278d2210de643eb8a3f780d08e" - integrity sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q== - -"@parcel/watcher-linux-arm64-glibc@2.5.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.1.tgz#ba60e1f56977f7e47cd7e31ad65d15fdcbd07e30" - integrity sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w== - -"@parcel/watcher-linux-arm64-musl@2.5.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.1.tgz#f7fbcdff2f04c526f96eac01f97419a6a99855d2" - integrity sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg== - -"@parcel/watcher-linux-x64-glibc@2.5.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.1.tgz#4d2ea0f633eb1917d83d483392ce6181b6a92e4e" - integrity sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A== - -"@parcel/watcher-linux-x64-musl@2.5.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.1.tgz#277b346b05db54f55657301dd77bdf99d63606ee" - integrity sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg== - -"@parcel/watcher-win32-arm64@2.5.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.1.tgz#7e9e02a26784d47503de1d10e8eab6cceb524243" - integrity sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw== - -"@parcel/watcher-win32-ia32@2.5.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.1.tgz#2d0f94fa59a873cdc584bf7f6b1dc628ddf976e6" - integrity sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ== - -"@parcel/watcher-win32-x64@2.5.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.1.tgz#ae52693259664ba6f2228fa61d7ee44b64ea0947" - integrity sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA== - -"@parcel/watcher@^2.4.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@parcel/watcher/-/watcher-2.5.1.tgz#342507a9cfaaf172479a882309def1e991fb1200" - integrity sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg== - dependencies: - detect-libc "^1.0.3" - is-glob "^4.0.3" - micromatch "^4.0.5" - node-addon-api "^7.0.0" - optionalDependencies: - "@parcel/watcher-android-arm64" "2.5.1" - "@parcel/watcher-darwin-arm64" "2.5.1" - "@parcel/watcher-darwin-x64" "2.5.1" - "@parcel/watcher-freebsd-x64" "2.5.1" - "@parcel/watcher-linux-arm-glibc" "2.5.1" - "@parcel/watcher-linux-arm-musl" "2.5.1" - "@parcel/watcher-linux-arm64-glibc" "2.5.1" - "@parcel/watcher-linux-arm64-musl" "2.5.1" - "@parcel/watcher-linux-x64-glibc" "2.5.1" - "@parcel/watcher-linux-x64-musl" "2.5.1" - "@parcel/watcher-win32-arm64" "2.5.1" - "@parcel/watcher-win32-ia32" "2.5.1" - "@parcel/watcher-win32-x64" "2.5.1" - "@pmmmwh/react-refresh-webpack-plugin@^0.5.10": version "0.5.15" resolved "https://registry.yarnpkg.com/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.15.tgz#f126be97c30b83ed777e2aeabd518bc592e6e7c4" @@ -1899,13 +1810,6 @@ chokidar@^3.5.3: optionalDependencies: fsevents "~2.3.2" -chokidar@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-4.0.3.tgz#7be37a4c03c9aee1ecfe862a4a23b2c70c205d30" - integrity sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA== - dependencies: - readdirp "^4.0.1" - chrome-trace-event@^1.0.2: version "1.0.4" resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz#05bffd7ff928465093314708c93bdfa9bd1f0f5b" @@ -2147,11 +2051,6 @@ destroy@1.2.0: resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== -detect-libc@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg== - detect-node@^2.0.4: version "2.1.0" resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1" @@ -2838,11 +2737,6 @@ immutability-helper@^3.0.1: resolved "https://registry.yarnpkg.com/immutability-helper/-/immutability-helper-3.1.1.tgz#2b86b2286ed3b1241c9e23b7b21e0444f52f77b7" integrity sha512-Q0QaXjPjwIju/28TsugCHNEASwoCcJSyJV3uO1sOIQGI0jKgm9f41Lvz0DZj3n46cNCyAZTsEYoY4C2bVRUzyQ== -immutable@^5.0.2: - version "5.0.3" - resolved "https://registry.yarnpkg.com/immutable/-/immutable-5.0.3.tgz#aa037e2313ea7b5d400cd9298fa14e404c933db1" - integrity sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw== - import-fresh@^3.2.1: version "3.3.1" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.1.tgz#9cecb56503c0ada1f2741dbbd6546e4b13b57ccf" @@ -3011,11 +2905,6 @@ jest-worker@^27.4.5: merge-stream "^2.0.0" supports-color "^8.0.0" -jquery@^3.7.1: - version "3.7.1" - resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.7.1.tgz#083ef98927c9a6a74d05a6af02806566d16274de" - integrity sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg== - "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -3306,7 +3195,7 @@ methods@~1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== -micromatch@^4.0.2, micromatch@^4.0.5: +micromatch@^4.0.2: version "4.0.8" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== @@ -3455,11 +3344,6 @@ neo-async@^2.6.2: resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== -node-addon-api@^7.0.0: - version "7.1.1" - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-7.1.1.tgz#1aba6693b0f255258a049d621329329322aad558" - integrity sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ== - node-fetch@^2.6.1: version "2.7.0" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" @@ -3985,11 +3869,6 @@ readable-stream@^3.0.6: string_decoder "^1.1.1" util-deprecate "^1.0.1" -readdirp@^4.0.1: - version "4.1.2" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-4.1.2.tgz#eb85801435fbf2a7ee58f19e0921b068fc69948d" - integrity sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg== - readdirp@~3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" @@ -4151,17 +4030,6 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sass@^1.57.1: - version "1.85.1" - resolved "https://registry.yarnpkg.com/sass/-/sass-1.85.1.tgz#18ab0bb48110ae99163778f06445b406148ca0d5" - integrity sha512-Uk8WpxM5v+0cMR0XjX9KfRIacmSG86RH4DCCZjLU2rFh5tyutt9siAXJ7G+YfxQ99Q6wrRMbMlVl6KqUms71ag== - dependencies: - chokidar "^4.0.0" - immutable "^5.0.2" - source-map-js ">=0.6.2 <2.0.0" - optionalDependencies: - "@parcel/watcher" "^2.4.1" - scheduler@^0.19.1: version "0.19.1" resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.19.1.tgz#4f3e2ed2c1a7d65681f4c854fa8c5a1ccb40f196" @@ -4367,11 +4235,6 @@ sockjs@^0.3.24: uuid "^8.3.2" websocket-driver "^0.7.4" -"source-map-js@>=0.6.2 <2.0.0": - version "1.2.1" - resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" - integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== - source-map-support@~0.5.20: version "0.5.21" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f"