blacklight-spotlight 4.7.1 → 5.0.0.pre.alpha1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (153) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +30 -12
  3. data/Rakefile +8 -1
  4. data/app/assets/javascripts/spotlight/application.js +0 -1
  5. data/app/assets/javascripts/spotlight/spotlight.esm.js +3620 -3847
  6. data/app/assets/javascripts/spotlight/spotlight.esm.js.map +1 -1
  7. data/app/assets/javascripts/spotlight/spotlight.js +3620 -3852
  8. data/app/assets/javascripts/spotlight/spotlight.js.map +1 -1
  9. data/app/assets/stylesheets/spotlight/_accessibility.scss +0 -9
  10. data/app/assets/stylesheets/spotlight/_autocomplete.scss +49 -0
  11. data/app/assets/stylesheets/spotlight/_blacklight_configuration.scss +0 -1
  12. data/app/assets/stylesheets/spotlight/_blacklight_overrides.scss +1 -6
  13. data/app/assets/stylesheets/spotlight/_browse.scss +2 -2
  14. data/app/assets/stylesheets/spotlight/_catalog.scss +40 -41
  15. data/app/assets/stylesheets/spotlight/_curation.scss +1 -1
  16. data/app/assets/stylesheets/spotlight/_exhibit_admin.scss +7 -0
  17. data/app/assets/stylesheets/spotlight/_exhibits_index.scss +8 -5
  18. data/app/assets/stylesheets/spotlight/_featured_browse_categories_block.scss +3 -3
  19. data/app/assets/stylesheets/spotlight/_header.scss +13 -0
  20. data/app/assets/stylesheets/spotlight/_mixins.scss +3 -4
  21. data/app/assets/stylesheets/spotlight/_nestable.scss +2 -12
  22. data/app/assets/stylesheets/spotlight/_pages.scss +11 -9
  23. data/app/assets/stylesheets/spotlight/_report_a_problem.scss +1 -3
  24. data/app/assets/stylesheets/spotlight/_sir-trevor_overrides.scss +2 -2
  25. data/app/assets/stylesheets/spotlight/_spotlight.scss +2 -1
  26. data/app/assets/stylesheets/spotlight/_tag_selector.scss +34 -0
  27. data/app/assets/stylesheets/spotlight/_variables.scss +0 -8
  28. data/app/components/spotlight/analytics/dashboard_component.html.erb +3 -3
  29. data/app/components/spotlight/breadcrumbs_component.html.erb +13 -19
  30. data/app/components/spotlight/bulk_action_component.rb +1 -1
  31. data/app/components/spotlight/document_component.rb +1 -1
  32. data/app/components/spotlight/save_search_component.rb +1 -1
  33. data/app/components/spotlight/select_image_component.html.erb +17 -0
  34. data/app/components/spotlight/select_image_component.rb +24 -0
  35. data/app/components/spotlight/skip_link_component.rb +16 -0
  36. data/app/components/spotlight/tag_selector_component.html.erb +40 -0
  37. data/app/components/spotlight/tag_selector_component.rb +41 -0
  38. data/app/components/spotlight/tag_selector_component.yml +6 -0
  39. data/app/components/spotlight/title_component.html.erb +8 -0
  40. data/app/components/spotlight/title_component.rb +22 -0
  41. data/app/controllers/spotlight/accessibility_controller.rb +2 -2
  42. data/app/controllers/spotlight/catalog_controller.rb +7 -2
  43. data/app/controllers/spotlight/contact_email_controller.rb +8 -2
  44. data/app/controllers/spotlight/languages_controller.rb +9 -4
  45. data/app/helpers/spotlight/application_helper.rb +7 -0
  46. data/app/helpers/spotlight/crop_helper.rb +4 -0
  47. data/app/helpers/spotlight/meta_helper.rb +59 -36
  48. data/app/javascript/spotlight/admin/blacklight_configuration.js +1 -1
  49. data/app/javascript/spotlight/admin/block_mixins/autocompleteable.js +70 -34
  50. data/app/javascript/spotlight/admin/blocks/block.js +1 -0
  51. data/app/javascript/spotlight/admin/blocks/browse_block.js +8 -12
  52. data/app/javascript/spotlight/admin/blocks/browse_group_categories_block.js +14 -18
  53. data/app/javascript/spotlight/admin/blocks/pages_block.js +6 -10
  54. data/app/javascript/spotlight/admin/blocks/resources_block.js +33 -15
  55. data/app/javascript/spotlight/admin/blocks/solr_documents_base_block.js +11 -6
  56. data/app/javascript/spotlight/admin/blocks/solr_documents_embed_block.js +1 -0
  57. data/app/javascript/spotlight/admin/blocks/uploaded_items_block.js +4 -3
  58. data/app/javascript/spotlight/admin/copy_email_addresses.js +2 -0
  59. data/app/javascript/spotlight/admin/crop.js +45 -17
  60. data/app/javascript/spotlight/admin/croppable.js +8 -1
  61. data/app/javascript/spotlight/admin/croppable_modal.js +68 -0
  62. data/app/javascript/spotlight/admin/exhibits.js +15 -10
  63. data/app/javascript/spotlight/admin/form_observer.js +1 -1
  64. data/app/javascript/spotlight/admin/index.js +0 -10
  65. data/app/javascript/spotlight/admin/locks.js +15 -5
  66. data/app/javascript/spotlight/admin/pages.js +1 -1
  67. data/app/javascript/spotlight/admin/search_typeahead.js +62 -55
  68. data/app/javascript/spotlight/admin/spotlight_nestable.js +173 -50
  69. data/app/javascript/spotlight/admin/visibility_toggle.js +1 -11
  70. data/app/javascript/spotlight/controllers/index.js +8 -0
  71. data/app/javascript/spotlight/controllers/tag_selector_controller.js +203 -0
  72. data/app/javascript/spotlight/core.js +4 -6
  73. data/app/javascript/spotlight/index.js +2 -0
  74. data/app/javascript/spotlight/user/browse_group_categories.js +2 -0
  75. data/app/javascript/spotlight/user/carousel.js +3 -1
  76. data/app/javascript/spotlight/user/index.js +0 -2
  77. data/app/models/sir_trevor_rails/block.rb +5 -4
  78. data/app/models/sir_trevor_rails/blocks/solr_documents_block.rb +1 -1
  79. data/app/models/sir_trevor_rails/blocks/solr_documents_embed_block.rb +1 -1
  80. data/app/models/sir_trevor_rails/blocks/uploaded_items_block.rb +1 -1
  81. data/app/models/spotlight/page_configurations.rb +1 -1
  82. data/app/views/catalog/_add_tags.html.erb +2 -2
  83. data/app/views/catalog/_change_visibility.html.erb +1 -1
  84. data/app/views/catalog/_remove_tags.html.erb +2 -2
  85. data/app/views/layouts/spotlight/base.html.erb +24 -13
  86. data/app/views/layouts/spotlight/spotlight.html.erb +6 -6
  87. data/app/views/shared/_masthead.html.erb +4 -31
  88. data/app/views/shared/_site_sidebar.html.erb +1 -1
  89. data/app/views/shared/_user_util_links.html.erb +3 -1
  90. data/app/views/spotlight/accessibility/alt_text.html.erb +2 -2
  91. data/app/views/spotlight/admin_users/index.html.erb +3 -3
  92. data/app/views/spotlight/appearances/edit.html.erb +1 -1
  93. data/app/views/spotlight/browse/_search_box.html.erb +8 -8
  94. data/app/views/spotlight/browse/show.html.erb +1 -1
  95. data/app/views/spotlight/bulk_updates/_download.html.erb +1 -1
  96. data/app/views/spotlight/bulk_updates/_upload.html.erb +1 -1
  97. data/app/views/spotlight/catalog/_admin_header.html.erb +1 -1
  98. data/app/views/spotlight/catalog/_edit_default.html.erb +2 -1
  99. data/app/views/spotlight/catalog/select_image.html.erb +1 -0
  100. data/app/views/spotlight/contacts/_form.html.erb +1 -1
  101. data/app/views/spotlight/exhibits/_contact.html.erb +5 -6
  102. data/app/views/spotlight/exhibits/_delete.html.erb +1 -1
  103. data/app/views/spotlight/exhibits/_languages.html.erb +3 -2
  104. data/app/views/spotlight/featured_images/_form.html.erb +6 -2
  105. data/app/views/spotlight/featured_images/_upload_form.html.erb +1 -1
  106. data/app/views/spotlight/metadata_configurations/_metadata_field.html.erb +1 -1
  107. data/app/views/spotlight/metadata_configurations/edit.html.erb +6 -6
  108. data/app/views/spotlight/pages/show.html.erb +1 -1
  109. data/app/views/spotlight/resources/csv_upload/_form.html.erb +1 -1
  110. data/app/views/spotlight/resources/upload/_form.html.erb +1 -1
  111. data/app/views/spotlight/roles/index.html.erb +1 -1
  112. data/app/views/spotlight/searches/_form.html.erb +1 -1
  113. data/app/views/spotlight/shared/_dd3_item.html.erb +1 -1
  114. data/app/views/spotlight/sir_trevor/blocks/_browse_group_categories_block.html.erb +1 -1
  115. data/app/views/spotlight/sir_trevor/blocks/_solr_documents_block.html.erb +1 -1
  116. data/app/views/spotlight/sir_trevor/blocks/_solr_documents_carousel_block.html.erb +1 -1
  117. data/app/views/spotlight/sir_trevor/blocks/_uploaded_items_block.html.erb +1 -1
  118. data/app/views/spotlight/tags/index.html.erb +2 -3
  119. data/app/views/spotlight/translations/_import.html.erb +2 -2
  120. data/config/importmap.rb +5 -0
  121. data/config/locales/spotlight.en.yml +2 -0
  122. data/config/routes.rb +5 -3
  123. data/lib/generators/spotlight/assets/generator_common_utilities.rb +36 -0
  124. data/lib/generators/spotlight/assets/importmap_generator.rb +87 -0
  125. data/lib/generators/spotlight/assets/propshaft_generator.rb +96 -0
  126. data/lib/generators/spotlight/assets_generator.rb +22 -0
  127. data/lib/generators/spotlight/install_generator.rb +8 -36
  128. data/lib/generators/spotlight/scaffold_resource_generator.rb +1 -1
  129. data/lib/generators/spotlight/templates/assets/spotlight.scss +6 -0
  130. data/lib/generators/spotlight/templates/javascript/jquery-shim.js +1 -0
  131. data/lib/spotlight/engine.rb +7 -6
  132. data/lib/spotlight/version.rb +1 -1
  133. data/spec/support/features/capybara_wait_metadata_helper.rb +13 -0
  134. data/spec/support/features/test_features_helpers.rb +16 -30
  135. data/vendor/assets/javascripts/tiny-slider.js +3 -0
  136. metadata +35 -87
  137. data/app/assets/stylesheets/spotlight/#_accessibility.scss# +0 -12
  138. data/app/javascript/spotlight/admin/checkbox_submit.js +0 -75
  139. data/app/javascript/spotlight/admin/exhibit_tag_autocomplete.js +0 -39
  140. data/app/javascript/spotlight/user/report_a_problem.js +0 -30
  141. data/app/views/spotlight/browse/_tophat.html.erb +0 -1
  142. data/app/views/spotlight/catalog/_tophat_default.html.erb +0 -1
  143. data/app/views/spotlight/home_pages/_tophat.html.erb +0 -2
  144. data/app/views/spotlight/pages/_tophat.html.erb +0 -1
  145. data/lib/generators/spotlight/templates/spotlight.js +0 -1
  146. data/lib/generators/spotlight/templates/spotlight.scss +0 -5
  147. data/spec/support/features/capybara_default_max_wait_metadata_helper.rb +0 -20
  148. data/vendor/assets/javascripts/bootstrap-tagsinput.js +0 -530
  149. data/vendor/assets/javascripts/jquery.serializejson.js +0 -234
  150. data/vendor/assets/javascripts/nestable.js +0 -645
  151. data/vendor/assets/javascripts/sir-trevor.js +0 -23508
  152. data/vendor/assets/javascripts/typeahead.bundle.min.js +0 -7
  153. data/vendor/assets/stylesheets/bootstrap-tagsinput.css +0 -46
@@ -6,12 +6,3 @@
6
6
  outline: $input-focus-border-color auto 5px;
7
7
  }
8
8
  }
9
-
10
- // CSS for accessibility dashboard
11
- .alt-text-status .bi-exclamation-triangle-fill {
12
- fill: $warning;
13
- }
14
-
15
- .alt-text-status .bi-check-circle-fill {
16
- fill: $success;
17
- }
@@ -0,0 +1,49 @@
1
+ auto-complete {
2
+ width: 100%;
3
+ z-index: $zindex-dropdown !important; /* get typeahead to float on top of e.g. leaflet */
4
+ ul {
5
+ list-style-type: none;
6
+ z-index: $zindex-dropdown !important;
7
+ margin-top: 2px;
8
+ max-height: 360px;
9
+ overflow-y: auto;
10
+ padding: 8px 0;
11
+ background-color: #fff;
12
+ border: 1px solid #ccc;
13
+ border: 1px solid rgba(0, 0, 0, 0.2);
14
+ border-radius: 8px;
15
+ box-shadow: 0 5px 10px rgba(0,0,0,.2);
16
+ }
17
+
18
+ [role="option"]{
19
+ font-size: 18px;
20
+ line-height: 24px;
21
+ padding: 3px 1rem 3px 1rem;
22
+ margin-bottom: 1em;
23
+ }
24
+ }
25
+
26
+ auto-complete [aria-selected="true"],
27
+ auto-complete [role="option"]:hover {
28
+ color: #fff;
29
+ background-color: #0097cf;
30
+ }
31
+
32
+ .autocomplete-item {
33
+ display: flex;
34
+
35
+ p {
36
+ margin: 0;
37
+ }
38
+ .document-thumbnail {
39
+ margin-right: 1rem;
40
+ min-width: 60px;
41
+ padding: 0;
42
+ width: 60px;
43
+
44
+ img {
45
+ max-width: 60px;
46
+ max-height: 60px;
47
+ }
48
+ }
49
+ }
@@ -15,7 +15,6 @@
15
15
  padding: 0.75rem 0.75rem 0.75rem 40px;
16
16
  margin: 0;
17
17
  margin-top: -1px;
18
- height: 100%;
19
18
  }
20
19
 
21
20
  .dd3-handle:before {
@@ -1,15 +1,10 @@
1
- .submit-search-text {
2
- @extend .sr-only !optional;
3
- @extend .visually-hidden !optional;
4
- }
5
-
6
1
  .search-query-form {
7
2
  z-index: 1;
8
3
 
9
4
  .input-group {
10
5
  width: 100%;
11
6
  }
12
-
7
+
13
8
  .search-btn {
14
9
  max-height: 2.375rem;
15
10
  }
@@ -54,8 +54,8 @@ $image-overlay-max-height: 300px;
54
54
  }
55
55
 
56
56
  .image-overlay {
57
- border: 2px solid $gray-600;
58
- border-radius: $border-radius-lg;
57
+ border: var(--bs-border-width) solid var(--bs-border-color-translucent);
58
+ border-radius: var(--bs-border-radius);
59
59
  max-height: 240px;
60
60
  min-height: 140px;
61
61
  overflow: hidden;
@@ -4,7 +4,6 @@
4
4
  .thumbnail-column {
5
5
  box-sizing: content-box;
6
6
  min-width: 60px;
7
-
8
7
  }
9
8
 
10
9
  .document-thumbnail {
@@ -20,7 +19,9 @@
20
19
  object-fit: cover;
21
20
  }
22
21
 
23
- .document-counter {display: none;}
22
+ .document-counter {
23
+ display: none;
24
+ }
24
25
 
25
26
  .index_title {
26
27
  margin-top: 0;
@@ -43,8 +44,7 @@
43
44
  text-align: center;
44
45
  li {
45
46
  @extend .badge;
46
- @extend .badge-secondary !optional;
47
- @extend .bg-secondary !optional;
47
+ @extend .bg-secondary;
48
48
  a {
49
49
  color: #fff;
50
50
  }
@@ -52,14 +52,27 @@
52
52
  }
53
53
  }
54
54
 
55
- .document, tr.doc-row, li.dd-item, .autocomplete-item {
55
+ .document,
56
+ tr.doc-row,
57
+ li.dd-item,
58
+ .autocomplete-item {
56
59
  &.blacklight-private {
57
- .index_title, h1, .card-title, .autocomplete-title {
60
+ .index_title,
61
+ h1,
62
+ .card-title,
63
+ .autocomplete-title {
58
64
  @include private-label;
59
65
  }
60
66
  }
61
67
  }
62
68
 
69
+ // Don't show the private label until Blacklight reports success
70
+ tr.doc-row:has(input.toggle-visibility:disabled:not(:checked)) {
71
+ .index_title::after {
72
+ display: none;
73
+ }
74
+ }
75
+
63
76
  .blacklight-catalog-admin {
64
77
  .add-items-nav {
65
78
  margin-bottom: $spacer;
@@ -71,33 +84,20 @@
71
84
  }
72
85
 
73
86
  form.edit_solr_document {
74
- .bootstrap-tagsinput {
75
- @extend .clearfix;
76
- cursor: text;
77
- }
78
87
  .bg-warning.form-text {
79
88
  font-size: 0.9em;
80
89
  padding: 3px 6px;
81
90
  }
82
91
  }
83
92
 
84
- .bootstrap-tagsinput {
85
- display: block;
86
- .twitter-typeahead {
87
- width: auto;
88
- }
89
-
90
- .tt-input {
91
- vertical-align: baseline !important;
92
- }
93
- }
94
-
95
- .blacklight-catalog-edit, .blacklight-catalog-show {
93
+ .blacklight-catalog-edit,
94
+ .blacklight-catalog-show {
96
95
  .img-thumbnail {
97
96
  @extend .col-md-6;
98
97
  }
99
98
 
100
- .tags, .dl-horizontal {
99
+ .tags,
100
+ .dl-horizontal {
101
101
  @extend .col-md-6;
102
102
  }
103
103
 
@@ -120,7 +120,8 @@ form.edit_solr_document {
120
120
  width: 60%;
121
121
  margin-left: -1 * $spacer * 0.1;
122
122
 
123
- .btn, .btn-group {
123
+ .btn,
124
+ .btn-group {
124
125
  margin-left: $spacer * 0.1;
125
126
  margin-top: $spacer * 0.25;
126
127
  }
@@ -141,28 +142,26 @@ form.edit_solr_document {
141
142
  .document {
142
143
  .blacklight-exhibit_tags a {
143
144
  @extend .badge;
144
- @extend .badge-secondary !optional;
145
- @extend .bg-secondary !optional;
145
+ @extend .bg-secondary;
146
146
 
147
147
  &:not(:last-child) {
148
- @extend .mr-2 !optional;
149
- @extend .me-2 !optional;
148
+ @extend .me-2;
150
149
  }
151
150
  }
152
151
  }
153
152
 
154
153
  .visibility-toggle {
155
- .no-js & {
156
- input[type="submit"] {
157
- display: inline
158
- }
159
-
160
- div.toggle-visibility {
161
- display: none
162
- }
163
- }
164
-
165
- input[type="submit"] {
166
- display: none;
167
- }
154
+ .no-js & {
155
+ input[type="submit"] {
156
+ display: inline;
157
+ }
158
+
159
+ div.toggle-visibility {
160
+ display: none;
161
+ }
162
+ }
163
+
164
+ input[type="submit"] {
165
+ display: none;
166
+ }
168
167
  }
@@ -21,7 +21,7 @@
21
21
  }
22
22
  input[type='submit'] {
23
23
  @extend .btn;
24
- @extend .btn-secondary;
24
+ @extend .btn-primary;
25
25
  @extend .btn-sm;
26
26
  }
27
27
  display: none;
@@ -83,3 +83,10 @@
83
83
  margin-bottom: $spacer;
84
84
  }
85
85
  }
86
+
87
+ // In various admin views we use leaflet maps and autocomplete. They both set
88
+ // the same z-index value, so we need to override the leaflet z-index to make
89
+ // sure the leaflet controls don't appear over the autocomplete dropdown.
90
+ .leaflet-top, .leaflet-bottom {
91
+ z-index: 950;
92
+ }
@@ -1,9 +1,6 @@
1
1
  $exhibit-card-overlay-padding: $card-img-overlay-padding * 0.5 !default;
2
- $exhibit-card-overlay-opacity: 0.85 !default;
3
- $exhibit-card-bg: $card-bg !default;
4
2
 
5
3
  .exhibit-card {
6
- background: $exhibit-card-bg;
7
4
  overflow-y: hidden;
8
5
  padding-bottom: 3rem;
9
6
 
@@ -36,7 +33,13 @@ $exhibit-card-bg: $card-bg !default;
36
33
  }
37
34
 
38
35
  .card-img-overlay {
39
- background: rgba($exhibit-card-bg, $exhibit-card-overlay-opacity);
36
+ --exhibit-card-overlay-opacity: .7;
37
+ --exhibit-card-overlay-rgb: 255, 255, 255;
38
+ --exhibit-card-overlay-bg: rgba(
39
+ var(--exhibit-card-overlay-rgb),
40
+ var(--exhibit-card-overlay-opacity)
41
+ );
42
+ background: var(--exhibit-card-overlay-bg);
40
43
  border-bottom-left-radius: calc(0.25rem - 1px);
41
44
  border-bottom-right-radius: calc(0.25rem - 1px);
42
45
  display: flex;
@@ -82,7 +85,7 @@ $exhibit-card-bg: $card-bg !default;
82
85
  outline: $input-focus-border-color auto 5px;
83
86
 
84
87
  // Use WebKit focus styles if available
85
- @supports (-webkit-appearance:none) {
88
+ @supports (-webkit-appearance: none) {
86
89
  outline-color: -webkit-focus-ring-color;
87
90
  }
88
91
 
@@ -56,8 +56,8 @@ $xl-sidebar-five-tile-width: ($container-xl-sidebar * 0.2) - $tile-margin;
56
56
  background-size: cover;
57
57
  background-position: center;
58
58
  background-repeat: no-repeat;
59
- border: 2px solid $featured-browse-category-border-color;
60
- border-radius: $border-radius-lg;
59
+ border: var(--bs-border-width) solid var(--bs-border-color-translucent);
60
+ border-radius: var(--bs-border-radius);
61
61
  position: relative;
62
62
 
63
63
  .category-caption {
@@ -69,7 +69,7 @@ $xl-sidebar-five-tile-width: ($container-xl-sidebar * 0.2) - $tile-margin;
69
69
  width: 100%;
70
70
  padding: 5%;
71
71
  background: linear-gradient(0deg, rgba(46, 45, 41, 0.7) 45%, rgba(46, 45, 41, 0) 100%);
72
- border-radius: $border-radius-lg;
72
+ border-radius: var(--bs-border-radius);
73
73
  display: flex;
74
74
  flex-direction: column;
75
75
  justify-content: flex-end;
@@ -143,3 +143,16 @@
143
143
  width: 1px;
144
144
  }
145
145
  }
146
+
147
+ .link-unstyled {
148
+ &,
149
+ &:visited,
150
+ &:hover,
151
+ &:active,
152
+ &:focus,
153
+ &:active:hover {
154
+ color: inherit;
155
+ text-decoration: none;
156
+ font-weight: inherit;
157
+ }
158
+ }
@@ -1,5 +1,5 @@
1
1
  @mixin edit-in-place-highlighting() {
2
- background: #F7F7D0;
2
+ background: #f7f7d0;
3
3
  cursor: text;
4
4
  }
5
5
 
@@ -10,9 +10,8 @@
10
10
  @mixin private-label() {
11
11
  &:after {
12
12
  @extend .badge;
13
- @extend .badge-warning !optional;
14
- @extend .bg-warning !optional;
15
- content: 'Private';
13
+ @extend .bg-warning;
14
+ content: "Private";
16
15
  margin-left: 3px;
17
16
  color: black;
18
17
  }
@@ -26,8 +26,8 @@ tr.dd-item {
26
26
  position: relative;
27
27
  }
28
28
 
29
- .dd-list { display: block; position: relative; margin: 0; padding: 0; list-style: none; }
30
- .dd-list .dd-list { padding-left: 30px; }
29
+ .dd-list { display: block; position: relative; margin: 0; padding: 0 0 5px 0; list-style: none; }
30
+ .dd-list .dd-list { margin-left: 15px; padding-left: 15px; padding-bottom: 0; } // Having this mix of padding and margin improves the experience of dragging left to remove an item from a nested list.
31
31
  .dd-collapsed .dd-list { display: none; }
32
32
 
33
33
  .dd-item,
@@ -55,19 +55,10 @@ tr.dd-item {
55
55
  background-position: 0 0, 30px 30px;
56
56
  }
57
57
 
58
- .dd-dragel { position: absolute; pointer-events: none; z-index: 9999; }
59
- .dd-dragel > .dd-item .dd-handle { margin-top: 0; }
60
- .dd-dragel .dd-handle {
61
- box-shadow: 2px 4px 6px 0 rgba(0,0,0,.1);
62
- }
63
-
64
58
  /**
65
59
  * Nestable Extras
66
60
  */
67
61
 
68
- .nestable-lists { display: block; clear: both; padding: 30px 0; width: 100%; border: 0; border-top: 2px solid #ddd; border-bottom: 2px solid #ddd; }
69
-
70
-
71
62
  .dd-hover > .dd-handle { background: #2ea8e5 !important; }
72
63
 
73
64
  /**
@@ -93,7 +84,6 @@ tr.dd-item {
93
84
  .dd3-content.page-admin {
94
85
  position: relative;
95
86
  }
96
- .dd-dragel > .dd3-item > .dd3-content { margin: 0; }
97
87
 
98
88
  .dd3-item > button { margin-left: 30px; }
99
89
 
@@ -12,8 +12,7 @@
12
12
  }
13
13
 
14
14
  .primary-actions {
15
- @extend .float-right !optional;
16
- @extend .float-end !optional;
15
+ @extend .float-end;
17
16
  }
18
17
 
19
18
  #nested-pages {
@@ -71,7 +70,7 @@
71
70
 
72
71
  li {
73
72
  margin-bottom: 1rem;
74
- margin-top: $spacer * .5;
73
+ margin-top: $spacer * 0.5;
75
74
  word-break: break-word;
76
75
  .name {
77
76
  font-weight: bold;
@@ -82,7 +81,7 @@
82
81
  ol.sidenav {
83
82
  li {
84
83
  color: $gray-900;
85
- margin-top: $spacer * .5;
84
+ margin-top: $spacer * 0.5;
86
85
  }
87
86
 
88
87
  ol.subsection {
@@ -117,7 +116,9 @@
117
116
  }
118
117
 
119
118
  .item-grid-block {
120
- h3 { margin-top: 0; }
119
+ h3 {
120
+ margin-top: 0;
121
+ }
121
122
 
122
123
  .text-col {
123
124
  float: none;
@@ -180,7 +181,8 @@
180
181
  }
181
182
  }
182
183
 
183
- .preview-btn, .preview-exit-btn {
184
+ .preview-btn,
185
+ .preview-exit-btn {
184
186
  float: left;
185
187
  width: 100px;
186
188
  }
@@ -200,7 +202,8 @@
200
202
  h2 {
201
203
  margin-top: 0;
202
204
  }
203
- p, ol > li {
205
+ p,
206
+ ol > li {
204
207
  padding: $spacer * 0.5;
205
208
  }
206
209
  ol > li:last-child {
@@ -221,7 +224,6 @@
221
224
  }
222
225
 
223
226
  .items-block {
224
-
225
227
  .text-col {
226
228
  float: none;
227
229
  width: auto;
@@ -279,5 +281,5 @@
279
281
 
280
282
  .zpr-link {
281
283
  @extend .btn-sm;
282
- margin-top: $spacer * .75;
284
+ margin-top: $spacer * 0.75;
283
285
  }
@@ -1,10 +1,8 @@
1
1
  #report-problem-form {
2
- display: none;
3
2
  border-bottom: 1px solid $gray-600;
4
3
 
5
4
  h2 {
6
- @extend .sr-only !optional;
7
- @extend .visually-hidden !optional;
5
+ @extend .visually-hidden;
8
6
  }
9
7
  }
10
8
 
@@ -75,8 +75,8 @@
75
75
 
76
76
  .st-block-controls__button {
77
77
  @extend .btn;
78
- @extend .btn-secondary;
79
- @extend .btn-outline-secondary;
78
+ @extend .btn-primary;
79
+ @extend .btn-outline-primary;
80
80
 
81
81
  border: 1px solid $gray-700;
82
82
 
@@ -30,11 +30,12 @@
30
30
  @import "report_a_problem";
31
31
  @import "exhibits_index";
32
32
  @import "collapse_toggle";
33
+ @import "tag_selector";
33
34
  @import "translations";
34
35
  @import "utilities";
35
36
  @import "view_larger";
36
37
  @import "accessibility";
37
-
38
+ @import "autocomplete";
38
39
 
39
40
 
40
41
  // Styles below keep footer at bottom of viewport
@@ -0,0 +1,34 @@
1
+ .tag-selector {
2
+ .tag-selection-search-bar input {
3
+ border: none;
4
+ outline: none;
5
+ }
6
+
7
+ .tag-selector-input {
8
+ display: none;
9
+ }
10
+
11
+ .dropdown-content {
12
+ overflow-y: auto;
13
+ max-height: 180px;
14
+ label {
15
+ padding: 5px 10px;
16
+ cursor: pointer;
17
+
18
+ &:hover,
19
+ &.active {
20
+ background-color: $light;
21
+ }
22
+ }
23
+ }
24
+ }
25
+
26
+ .no-js .tag-selector {
27
+ .tag-selector-input {
28
+ display: block;
29
+ }
30
+
31
+ .tag-selection-wrapper {
32
+ display: none;
33
+ }
34
+ }
@@ -4,14 +4,6 @@ $footer-height: 7.5rem !default;
4
4
  $masthead-bg: $card-bg !default;
5
5
  $masthead-height: 11.25rem !default;
6
6
  $masthead-image-blur: 1px !default;
7
-
8
- $exhibit-card-height: 350px !default;
9
- $exhibit-card-bg: $card-bg !default;
10
- $exhibit-card-border: $card-border-color !default;
11
- $exhibit-card-gutter: 30px !default;
12
- $exhibit-card-image-size: 269px !default;
13
- $exhibit-card-shadow: inset 2px 2px 5px -2px $exhibit-card-border !default;
14
-
15
7
  $navbar-transparent-border: $gray-500 !default;
16
8
  $navbar-transparent-page-bg: rgba(0, 0, 0, 0.5) !default;
17
9
 
@@ -6,10 +6,10 @@
6
6
  <div>
7
7
  <%= form.label :start_date, I18n.t("spotlight.dashboards.analytics.start_date_label") %>
8
8
  <%= form.date_field :start_date, value: dates['start_date'], min: min_date, max: max_date %>
9
- <%= form.label :end_date, I18n.t("spotlight.dashboards.analytics.end_date_label"), class: 'ml-2 ms-2' %>
9
+ <%= form.label :end_date, I18n.t("spotlight.dashboards.analytics.end_date_label"), class: 'ms-2' %>
10
10
  <%= form.date_field :end_date, value: dates['end_date'], min: min_date, max: max_date %>
11
11
  </div>
12
- <div class="ml-auto ms-auto">
12
+ <div class="ms-auto">
13
13
  <%= form.submit I18n.t("spotlight.dashboards.analytics.submit_date_label"), class: 'btn btn-primary' %>
14
14
  </div>
15
15
  <% end %>
@@ -62,4 +62,4 @@
62
62
  <% end %>
63
63
  <% else %>
64
64
  <p><%= I18n.t("spotlight.dashboards.analytics.no_results", pageurl: page_url) %></p>
65
- <% end %>
65
+ <% end %>
@@ -1,19 +1,13 @@
1
- <div class="container breadcrumbs-container" role="navigation" aria-label="<%= t('spotlight.breadcrumb.label') %>">
2
- <div class="row">
3
- <div class="col-md-12">
4
- <nav>
5
- <ul class="breadcrumb list-unstyled d-flex">
6
- <% breadcrumbs.each do |crumb| %>
7
- <li class="breadcrumb-item <%= crumb == breadcrumbs.last ? 'active' : '' %>">
8
- <% if crumb.link? && crumb != breadcrumbs.last %>
9
- <%= link_to crumb.name, path(crumb.path) %>
10
- <% else %>
11
- <%= crumb.name %>
12
- <% end %>
13
- </li>
14
- <% end %>
15
- </ul>
16
- </nav>
17
- </div>
18
- </div>
19
- </div>
1
+ <nav class="container breadcrumbs-container" aria-label="<%= t('spotlight.breadcrumb.label') %>">
2
+ <ol class="breadcrumb">
3
+ <% breadcrumbs.each do |crumb| %>
4
+ <li class="breadcrumb-item <%= crumb == breadcrumbs.last ? 'active' : '' %>">
5
+ <% if crumb.link? && crumb != breadcrumbs.last %>
6
+ <%= link_to crumb.name, path(crumb.path) %>
7
+ <% else %>
8
+ <%= crumb.name %>
9
+ <% end %>
10
+ </li>
11
+ <% end %>
12
+ </ol>
13
+ </nav>
@@ -3,7 +3,7 @@
3
3
  module Spotlight
4
4
  # Displays the "Bulk actions" button and dropdown
5
5
  class BulkActionComponent < ViewComponent::Base
6
- def initialize(bulk_actions:, button_classes: 'btn btn-secondary dropdown-toggle')
6
+ def initialize(bulk_actions:, button_classes: 'btn btn-primary dropdown-toggle')
7
7
  @bulk_actions = bulk_actions
8
8
  @button_classes = button_classes
9
9
  super
@@ -5,7 +5,7 @@ module Spotlight
5
5
  # This overrides the title method to provide an edit link.
6
6
  class DocumentComponent < Blacklight::DocumentComponent
7
7
  def title
8
- return safe_join([exhibit_edit_link, super, add_document_meta_content(@document)]) if current_exhibit
8
+ return safe_join([exhibit_edit_link, super]) if current_exhibit
9
9
 
10
10
  super
11
11
  end
@@ -3,7 +3,7 @@
3
3
  module Spotlight
4
4
  # Displays the "Save this search" button and modal
5
5
  class SaveSearchComponent < ViewComponent::Base
6
- def initialize(button_classes: 'btn btn-secondary')
6
+ def initialize(button_classes: 'btn btn-outline-primary')
7
7
  @button_classes = button_classes
8
8
  super
9
9
  end
@@ -0,0 +1,17 @@
1
+ <%= render Blacklight::System::ModalComponent.new do |component| %>
2
+ <% component.with_title { t('spotlight.pages.form.select_image') } %>
3
+ <% component.with_body do %>
4
+ <div class='p-3 m-2'>
5
+ <input type="hidden" name="select_image_region">
6
+ <p class="instructions"><%= help_text.html_safe %></p>
7
+ <div class="mx-3" id="resource_block_iiif_cropper" data-behavior="iiif-cropper" data-cropper-key="select_image_<%=@block_item_id%>" data-index-id="<%=@index_id%>" data-crop-width="120" data-crop-height="120">
8
+ </div>
9
+ <% end %>
10
+ <% component.with_footer do %>
11
+ <div>
12
+ <input type='button' class='btn btn-outline-primary' value='Cancel' data-bl-dismiss='modal'>
13
+ <input id='save-cropping-selection' type='button' class='btn btn-primary' value='Save changes' data-bl-dismiss='modal'>
14
+ </div>
15
+ <% end %>
16
+ <% end %>
17
+