hyrax 5.0.0 → 5.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (331) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +7 -176
  3. data/.dassie/.env +8 -3
  4. data/.dassie/Gemfile +13 -2
  5. data/.dassie/app/controllers/hyrax/generic_work_resources_controller.rb +17 -0
  6. data/.dassie/app/controllers/hyrax/generic_works_controller.rb +7 -1
  7. data/.dassie/app/forms/generic_work_resource_form.rb +20 -0
  8. data/.dassie/app/indexers/generic_work_resource_indexer.rb +16 -0
  9. data/.dassie/app/models/admin_set_resource.rb +9 -0
  10. data/.dassie/app/models/collection_resource.rb +2 -0
  11. data/.dassie/app/models/file_set.rb +2 -0
  12. data/.dassie/app/models/generic_work_resource.rb +10 -0
  13. data/.dassie/app/views/hyrax/generic_work_resources/_generic_work_resource.html.erb +2 -0
  14. data/.dassie/config/analytics.yml +6 -1
  15. data/.dassie/config/application.rb +24 -0
  16. data/.dassie/config/initializers/hyrax.rb +13 -3
  17. data/.dassie/config/initializers/wings.rb +109 -0
  18. data/.dassie/config/metadata/generic_work_resource.yaml +22 -0
  19. data/.dassie/config/valkyrie_index.yml +4 -10
  20. data/.dassie/db/migrate/20240506070809_valkyrie_id_to_string.rb +5 -0
  21. data/.dassie/db/schema.rb +2 -2
  22. data/.dassie/spec/indexers/generic_work_resource_indexer_spec.rb +13 -0
  23. data/.dassie/spec/models/generic_work_resource_spec.rb +12 -0
  24. data/.dassie/spec/views/generic_work_resources/_generic_work_resource.html.erb_spec.rb +7 -0
  25. data/.dockerignore +6 -4
  26. data/.github/release.yml +3 -0
  27. data/.github/workflows/lint-build-test.yml +130 -0
  28. data/.github/workflows/test-results.yml +40 -0
  29. data/.koppie/.env +7 -5
  30. data/.koppie/Gemfile +12 -1
  31. data/.koppie/config/analytics.yml +6 -1
  32. data/.koppie/config/environments/test.rb +2 -0
  33. data/.koppie/config/initializers/1_valkyrie.rb +6 -2
  34. data/.koppie/config/solr.yml +1 -1
  35. data/.regen +1 -1
  36. data/.rubocop.yml +5 -0
  37. data/Dockerfile +16 -36
  38. data/Gemfile +2 -0
  39. data/app/assets/javascripts/hydra-editor/field_manager.es6 +187 -0
  40. data/app/assets/javascripts/hyrax/analytics_events.js +48 -24
  41. data/app/assets/javascripts/hyrax/autocomplete/linked_data.es6 +3 -0
  42. data/app/assets/javascripts/hyrax/collapse.js +4 -4
  43. data/app/assets/javascripts/hyrax/editor/controlled_vocabulary.es6 +38 -5
  44. data/app/assets/javascripts/hyrax/file_manager/save_manager.es6 +2 -0
  45. data/app/assets/javascripts/hyrax/search.js +2 -3
  46. data/app/assets/javascripts/hyrax/select_work_type.es6 +3 -1
  47. data/app/assets/javascripts/hyrax/uploader.js +20 -18
  48. data/app/assets/javascripts/hyrax.js +1 -0
  49. data/app/assets/stylesheets/_bootstrap-default-overrides.scss +4 -0
  50. data/app/assets/stylesheets/hyrax/_card.scss +4 -0
  51. data/app/assets/stylesheets/hyrax/_catalog.scss +21 -0
  52. data/app/assets/stylesheets/hyrax/_collections.scss +1 -1
  53. data/app/assets/stylesheets/hyrax/_facets.scss +15 -3
  54. data/app/assets/stylesheets/hyrax/_featured.scss +4 -0
  55. data/app/assets/stylesheets/hyrax/_file_upload.scss +6 -0
  56. data/app/assets/stylesheets/hyrax/_form.scss +4 -0
  57. data/app/assets/stylesheets/hyrax/_forms.scss +2 -1
  58. data/app/assets/stylesheets/hyrax/_nestable.scss +9 -8
  59. data/app/assets/stylesheets/hyrax/_select_work_type.scss +12 -0
  60. data/app/assets/stylesheets/hyrax/_styles.scss +4 -0
  61. data/app/assets/stylesheets/hyrax/_work-show.scss +3 -0
  62. data/app/assets/stylesheets/hyrax/controlled_vocabulary.scss +2 -2
  63. data/app/controllers/concerns/hyrax/singular_subresource_controller.rb +7 -2
  64. data/app/controllers/concerns/hyrax/valkyrie_downloads_controller_behavior.rb +11 -2
  65. data/app/controllers/concerns/hyrax/works_controller_behavior.rb +9 -2
  66. data/app/controllers/hyrax/admin/analytics/collection_reports_controller.rb +2 -2
  67. data/app/controllers/hyrax/admin/analytics/work_reports_controller.rb +7 -8
  68. data/app/controllers/hyrax/dashboard/collections_controller.rb +2 -1
  69. data/app/controllers/hyrax/downloads_controller.rb +24 -3
  70. data/app/controllers/hyrax/file_sets_controller.rb +33 -7
  71. data/app/controllers/hyrax/my/works_controller.rb +20 -0
  72. data/app/controllers/hyrax/single_use_links_viewer_controller.rb +9 -2
  73. data/app/controllers/hyrax/stats_controller.rb +1 -1
  74. data/app/controllers/hyrax/uploads_controller.rb +28 -2
  75. data/app/forms/hyrax/forms/admin/appearance.rb +1 -1
  76. data/app/forms/hyrax/forms/admin/collection_type_form.rb +1 -7
  77. data/app/forms/hyrax/forms/pcdm_collection_form.rb +9 -0
  78. data/app/forms/hyrax/forms/work_embargo_form.rb +6 -0
  79. data/app/forms/hyrax/forms/work_lease_form.rb +6 -0
  80. data/app/indexers/concerns/hyrax/location_indexer.rb +2 -2
  81. data/app/indexers/hyrax/indexers/file_set_indexer.rb +4 -0
  82. data/app/indexers/hyrax/indexers/resource_indexer.rb +1 -0
  83. data/app/indexers/hyrax/valkyrie_indexer.rb +3 -5
  84. data/app/jobs/migrate_files_to_valkyrie_job.rb +109 -0
  85. data/app/jobs/migrate_resources_job.rb +34 -0
  86. data/app/jobs/valkyrie_create_derivatives_job.rb +2 -1
  87. data/app/models/admin_set.rb +1 -0
  88. data/app/models/collection.rb +13 -1
  89. data/app/models/concerns/hyrax/ar_resource.rb +104 -0
  90. data/app/models/concerns/hyrax/solr_document/ordered_members.rb +2 -1
  91. data/app/models/concerns/hyrax/solr_document_behavior.rb +13 -2
  92. data/app/models/concerns/hyrax/valkyrie_lazy_migration.rb +82 -0
  93. data/app/models/file_download_stat.rb +1 -1
  94. data/app/models/file_view_stat.rb +1 -1
  95. data/app/models/hyrax/collection_type.rb +12 -4
  96. data/app/models/hyrax/file_metadata.rb +19 -0
  97. data/app/models/hyrax/file_set.rb +25 -0
  98. data/app/models/hyrax/model_registry.rb +3 -4
  99. data/app/models/hyrax/resource.rb +5 -0
  100. data/app/models/hyrax/statistic.rb +12 -37
  101. data/app/presenters/hyrax/file_set_presenter.rb +2 -1
  102. data/app/presenters/hyrax/file_usage.rb +3 -3
  103. data/app/presenters/hyrax/iiif_manifest_presenter.rb +2 -1
  104. data/app/presenters/hyrax/member_presenter_factory.rb +7 -1
  105. data/app/presenters/hyrax/menu_presenter.rb +1 -1
  106. data/app/presenters/hyrax/pcdm_member_presenter_factory.rb +2 -2
  107. data/app/presenters/hyrax/stats_usage_presenter.rb +2 -1
  108. data/app/presenters/hyrax/work_show_presenter.rb +15 -19
  109. data/app/presenters/hyrax/work_usage.rb +5 -2
  110. data/app/search_builders/hyrax/expired_embargo_search_builder.rb +7 -1
  111. data/app/search_builders/hyrax/expired_lease_search_builder.rb +7 -1
  112. data/app/search_builders/hyrax/filter_by_type.rb +1 -3
  113. data/app/search_builders/hyrax/valkyrie_abstract_type_relation.rb +7 -2
  114. data/app/services/hyrax/access_control_list.rb +1 -1
  115. data/app/services/hyrax/admin_set_create_service.rb +16 -5
  116. data/app/services/hyrax/admin_set_service.rb +2 -1
  117. data/app/services/hyrax/analytics/ga4/base.rb +96 -0
  118. data/app/services/hyrax/analytics/ga4/events.rb +25 -0
  119. data/app/services/hyrax/analytics/ga4/events_daily.rb +36 -0
  120. data/app/services/hyrax/analytics/ga4/visits.rb +33 -0
  121. data/app/services/hyrax/analytics/ga4/visits_daily.rb +24 -0
  122. data/app/services/hyrax/analytics/ga4.rb +204 -0
  123. data/app/services/hyrax/analytics/google.rb +16 -2
  124. data/app/services/hyrax/analytics/matomo.rb +16 -3
  125. data/app/services/hyrax/analytics/results.rb +6 -0
  126. data/app/services/hyrax/custom_queries/find_access_control.rb +1 -1
  127. data/app/services/hyrax/custom_queries/find_by_date_range.rb +6 -23
  128. data/app/services/hyrax/custom_queries/find_collections_by_type.rb +2 -2
  129. data/app/services/hyrax/custom_queries/find_count_by.rb +3 -31
  130. data/app/services/hyrax/custom_queries/find_file_metadata.rb +2 -2
  131. data/app/services/hyrax/custom_queries/find_models_by_access.rb +5 -27
  132. data/app/services/hyrax/embargo_manager.rb +2 -1
  133. data/app/services/hyrax/file_set_file_service.rb +10 -1
  134. data/app/services/hyrax/listeners/file_listener.rb +39 -0
  135. data/app/services/hyrax/listeners/file_metadata_listener.rb +0 -30
  136. data/app/services/hyrax/lock_manager.rb +7 -7
  137. data/app/services/hyrax/lockable.rb +4 -3
  138. data/app/services/hyrax/simple_schema_loader.rb +1 -1
  139. data/app/services/hyrax/solr_service.rb +22 -8
  140. data/app/services/hyrax/statistics/query_service.rb +1 -1
  141. data/app/services/hyrax/statistics/works/over_time.rb +1 -1
  142. data/app/services/hyrax/thumbnail_path_service.rb +2 -0
  143. data/app/services/hyrax/user_stat_importer.rb +5 -5
  144. data/app/services/hyrax/valkyrie_upload.rb +14 -9
  145. data/app/services/hyrax/versioning_service.rb +10 -2
  146. data/app/services/hyrax/work_query_service.rb +2 -2
  147. data/app/services/migrate_resource_service.rb +55 -0
  148. data/app/views/_controls.html.erb +5 -5
  149. data/app/views/_masthead.html.erb +1 -1
  150. data/app/views/catalog/_search_form.html.erb +9 -16
  151. data/app/views/catalog/_thumbnail_list_collection.html.erb +1 -1
  152. data/app/views/catalog/_thumbnail_list_default.html.erb +2 -2
  153. data/app/views/hyrax/admin/analytics/collection_reports/index.html.erb +4 -4
  154. data/app/views/hyrax/admin/analytics/work_reports/index.html.erb +1 -1
  155. data/app/views/hyrax/admin/collection_types/_form.html.erb +4 -4
  156. data/app/views/hyrax/admin/collection_types/index.html.erb +1 -1
  157. data/app/views/hyrax/admin/features/index.html.erb +1 -1
  158. data/app/views/hyrax/base/_file_manager_actions.html.erb +1 -1
  159. data/app/views/hyrax/base/_file_manager_member.html.erb +7 -4
  160. data/app/views/hyrax/base/_file_manager_thumbnail.html.erb +1 -1
  161. data/app/views/hyrax/base/_form_files.html.erb +1 -1
  162. data/app/views/hyrax/base/_form_member_of_collections.html.erb +4 -0
  163. data/app/views/hyrax/base/_show_actions.html.erb +7 -8
  164. data/app/views/hyrax/base/_work_button_row.html.erb +1 -1
  165. data/app/views/hyrax/batch_select/_add_button.html.erb +1 -1
  166. data/app/views/hyrax/content_blocks/_form.html.erb +3 -3
  167. data/app/views/hyrax/dashboard/_sidebar.html.erb +1 -1
  168. data/app/views/hyrax/dashboard/_user_activity.html.erb +2 -2
  169. data/app/views/hyrax/dashboard/collections/_form.html.erb +4 -4
  170. data/app/views/hyrax/dashboard/collections/_form_share.html.erb +6 -4
  171. data/app/views/hyrax/dashboard/collections/_list_collections.html.erb +1 -1
  172. data/app/views/hyrax/dashboard/collections/_show_document_list_row.html.erb +1 -1
  173. data/app/views/hyrax/dashboard/show_admin.html.erb +18 -19
  174. data/app/views/hyrax/dashboard/sidebar/_activity.html.erb +1 -1
  175. data/app/views/hyrax/embargoes/_list_expired_active_embargoes.html.erb +7 -7
  176. data/app/views/hyrax/file_sets/_actions.html.erb +9 -1
  177. data/app/views/hyrax/file_sets/_permission_form.html.erb +4 -2
  178. data/app/views/hyrax/file_sets/_show_actions.html.erb +1 -1
  179. data/app/views/hyrax/homepage/_featured.html.erb +1 -1
  180. data/app/views/hyrax/homepage/_recent_document.html.erb +2 -2
  181. data/app/views/hyrax/leases/_list_expired_active_leases.html.erb +6 -6
  182. data/app/views/hyrax/my/collections/_list_collections.html.erb +1 -1
  183. data/app/views/hyrax/my/collections/_tabs.html.erb +1 -1
  184. data/app/views/hyrax/pages/_form.html.erb +8 -8
  185. data/app/views/hyrax/transfers/_received.html.erb +1 -1
  186. data/app/views/hyrax/uploads/_js_templates.html.erb +9 -9
  187. data/app/views/hyrax/uploads/_js_templates_branding.html.erb +3 -3
  188. data/app/views/hyrax/uploads/_js_templates_versioning.html.erb +1 -1
  189. data/app/views/hyrax/uploads/create.json.jbuilder +2 -2
  190. data/app/views/hyrax/users/_activity_log.html.erb +15 -9
  191. data/app/views/hyrax/users/_user_row.html.erb +6 -3
  192. data/app/views/hyrax/users/_vitals.html.erb +3 -2
  193. data/app/views/layouts/_head_tag_content.html.erb +2 -0
  194. data/app/views/shared/_appearance_styles.html.erb +5 -1
  195. data/app/views/shared/_ga4.html.erb +11 -0
  196. data/app/views/shared/_select_work_type_modal.html.erb +10 -1
  197. data/bin/db-migrate-seed.sh +3 -3
  198. data/bin/dev-entrypoint.sh +7 -2
  199. data/bin/{db-wait.sh → service-wait.sh} +1 -1
  200. data/bin/worker-entrypoint.sh +8 -0
  201. data/chart/hyrax/Chart.yaml +1 -1
  202. data/chart/hyrax/templates/deployment-worker.yaml +2 -2
  203. data/chart/hyrax/templates/deployment.yaml +12 -0
  204. data/chart/hyrax/values.yaml +10 -0
  205. data/config/locales/hyrax.en.yml +4 -2
  206. data/config/metadata/basic_metadata.yaml +20 -0
  207. data/config/metadata/hyrax_internal_metadata.yaml +1 -1
  208. data/docker-compose-dassie.yml +167 -0
  209. data/docker-compose-koppie.yml +21 -36
  210. data/docker-compose-sirenia.yml +50 -44
  211. data/docker-compose.yml +2 -183
  212. data/documentation/developing-your-hyrax-based-app.md +4 -4
  213. data/hyrax.gemspec +7 -12
  214. data/lib/freyja/custom_query_container.rb +5 -0
  215. data/lib/freyja/metadata_adapter.rb +32 -0
  216. data/lib/freyja/persister.rb +42 -0
  217. data/lib/freyja/query_service.rb +20 -0
  218. data/lib/freyja/resource_factory.rb +8 -0
  219. data/lib/freyja.rb +14 -0
  220. data/lib/frigg/custom_query_container.rb +5 -0
  221. data/lib/frigg/metadata_adapter.rb +22 -0
  222. data/lib/frigg/persister.rb +33 -0
  223. data/lib/frigg/query_service.rb +15 -0
  224. data/lib/frigg.rb +13 -0
  225. data/lib/generators/hyrax/install_generator.rb +5 -0
  226. data/lib/generators/hyrax/templates/config/analytics.yml +6 -1
  227. data/lib/generators/hyrax/templates/config/initializers/1_valkyrie.rb +6 -2
  228. data/lib/generators/hyrax/templates/config/valkyrie_index.yml +1 -1
  229. data/lib/goddess/custom_query_container.rb +71 -0
  230. data/lib/goddess/metadata.rb +13 -0
  231. data/lib/goddess/query.rb +176 -0
  232. data/lib/hyrax/configuration.rb +83 -0
  233. data/lib/hyrax/engine.rb +2 -0
  234. data/lib/hyrax/form_fields.rb +1 -3
  235. data/lib/hyrax/name.rb +5 -0
  236. data/lib/hyrax/publisher.rb +11 -0
  237. data/lib/hyrax/rubocop/custom_cops.rb +30 -0
  238. data/lib/hyrax/specs/capybara.rb +10 -6
  239. data/{spec → lib/hyrax/specs/shared_specs}/factories/admin_sets.rb +2 -0
  240. data/{spec → lib/hyrax/specs/shared_specs}/factories/hyrax_embargo.rb +4 -0
  241. data/{spec → lib/hyrax/specs/shared_specs}/factories/hyrax_lease.rb +4 -0
  242. data/{spec → lib/hyrax/specs/shared_specs}/factories/hyrax_work.rb +26 -1
  243. data/lib/hyrax/specs/shared_specs/hydra_works.rb +1 -1
  244. data/lib/hyrax/transactions/admin_set_destroy.rb +2 -1
  245. data/lib/hyrax/transactions/collection_destroy.rb +2 -1
  246. data/lib/hyrax/transactions/container.rb +9 -0
  247. data/lib/hyrax/transactions/steps/add_file_sets.rb +2 -1
  248. data/lib/hyrax/transactions/steps/delete_all_file_metadata.rb +4 -5
  249. data/lib/hyrax/transactions/steps/delete_permission_template.rb +30 -0
  250. data/lib/hyrax/transactions/steps/delete_resource.rb +1 -1
  251. data/lib/hyrax/transactions/steps/save_collection_logo.rb +2 -1
  252. data/lib/hyrax/valkyrie_can_can_adapter.rb +8 -1
  253. data/lib/hyrax/version.rb +1 -1
  254. data/lib/wings/active_fedora_converter.rb +13 -5
  255. data/lib/wings/converter_value_mapper.rb +1 -0
  256. data/lib/wings/services/custom_queries/find_collections_by_type.rb +2 -1
  257. data/lib/wings/services/custom_queries/find_file_metadata.rb +2 -2
  258. data/lib/wings/setup.rb +12 -3
  259. data/lib/wings/transformer_value_mapper.rb +5 -1
  260. data/lib/wings/valkyrie/persister.rb +3 -1
  261. data/template.rb +1 -1
  262. metadata +118 -94
  263. data/.koppie/scripts/db-migrate-seed.sh +0 -9
  264. data/.koppie/scripts/entrypoint.sh +0 -10
  265. data/spec/support/book_resource.rb +0 -36
  266. data/spec/support/can_can_overrides.rb +0 -43
  267. data/spec/support/clean_solr.rb +0 -7
  268. data/spec/support/controller_level_helpers.rb +0 -27
  269. data/spec/support/factory_helpers.rb +0 -94
  270. data/spec/support/fakes/fake_actor.rb +0 -22
  271. data/spec/support/fakes/fake_authority.rb +0 -14
  272. data/spec/support/fakes/fake_search_builder_scope.rb +0 -44
  273. data/spec/support/fakes/indexing_adapter.rb +0 -17
  274. data/spec/support/fakes/test_hydra_group_service.rb +0 -55
  275. data/spec/support/features/batch_edit_actions.rb +0 -37
  276. data/spec/support/features/session_helpers.rb +0 -15
  277. data/spec/support/features/workflow.rb +0 -10
  278. data/spec/support/features.rb +0 -11
  279. data/spec/support/form_with_validations.rb +0 -15
  280. data/spec/support/input_support.rb +0 -12
  281. data/spec/support/logging_formatter.rb +0 -67
  282. data/spec/support/matchers/api_responses.rb +0 -27
  283. data/spec/support/matchers/collection_type_property_matchers.rb +0 -30
  284. data/spec/support/matchers/embargo.rb +0 -9
  285. data/spec/support/matchers/lease.rb +0 -9
  286. data/spec/support/matchers/match_valkyrie_ids_with_af_ids.rb +0 -12
  287. data/spec/support/matchers/pcdm_matchers.rb +0 -34
  288. data/spec/support/matchers/permission.rb +0 -31
  289. data/spec/support/matchers/response_matchers.rb +0 -8
  290. data/spec/support/optional_example.rb +0 -17
  291. data/spec/support/rake.rb +0 -42
  292. data/spec/support/selectors.rb +0 -112
  293. data/spec/support/shared_examples_for_collection_presenter.rb +0 -44
  294. data/spec/support/simple_work.rb +0 -28
  295. data/spec/support/spec_statistic.rb +0 -24
  296. data/spec/support/speedup.rb +0 -7
  297. data/spec/support/statistic_helper.rb +0 -10
  298. data/spec/support/valkyrie_indexing.rb +0 -2
  299. data/spec/support/wings_models.rb +0 -9
  300. /data/{spec → lib/hyrax/specs/shared_specs}/factories/access_control.rb +0 -0
  301. /data/{spec → lib/hyrax/specs/shared_specs}/factories/admin_sets_lw.rb +0 -0
  302. /data/{spec → lib/hyrax/specs/shared_specs}/factories/administrative_sets.rb +0 -0
  303. /data/{spec → lib/hyrax/specs/shared_specs}/factories/api_items.rb +0 -0
  304. /data/{spec → lib/hyrax/specs/shared_specs}/factories/collection_branding_infos.rb +0 -0
  305. /data/{spec → lib/hyrax/specs/shared_specs}/factories/collection_type_participants.rb +0 -0
  306. /data/{spec → lib/hyrax/specs/shared_specs}/factories/collection_types.rb +0 -0
  307. /data/{spec → lib/hyrax/specs/shared_specs}/factories/collections.rb +0 -0
  308. /data/{spec → lib/hyrax/specs/shared_specs}/factories/collections_factory.rb +0 -0
  309. /data/{spec → lib/hyrax/specs/shared_specs}/factories/content_blocks.rb +0 -0
  310. /data/{spec → lib/hyrax/specs/shared_specs}/factories/counter_metrics.rb +0 -0
  311. /data/{spec → lib/hyrax/specs/shared_specs}/factories/featured_works.rb +0 -0
  312. /data/{spec → lib/hyrax/specs/shared_specs}/factories/file_sets.rb +0 -0
  313. /data/{spec → lib/hyrax/specs/shared_specs}/factories/generic_works.rb +0 -0
  314. /data/{spec → lib/hyrax/specs/shared_specs}/factories/hyrax_collection.rb +0 -0
  315. /data/{spec → lib/hyrax/specs/shared_specs}/factories/hyrax_default_admin_set.rb +0 -0
  316. /data/{spec → lib/hyrax/specs/shared_specs}/factories/hyrax_file_metadata.rb +0 -0
  317. /data/{spec → lib/hyrax/specs/shared_specs}/factories/hyrax_file_set.rb +0 -0
  318. /data/{spec → lib/hyrax/specs/shared_specs}/factories/hyrax_resource.rb +0 -0
  319. /data/{spec → lib/hyrax/specs/shared_specs}/factories/object_id.rb +0 -0
  320. /data/{spec → lib/hyrax/specs/shared_specs}/factories/operations.rb +0 -0
  321. /data/{spec → lib/hyrax/specs/shared_specs}/factories/permission.rb +0 -0
  322. /data/{spec → lib/hyrax/specs/shared_specs}/factories/permission_template_accesses.rb +0 -0
  323. /data/{spec → lib/hyrax/specs/shared_specs}/factories/permission_templates.rb +0 -0
  324. /data/{spec → lib/hyrax/specs/shared_specs}/factories/proxy_deposit_requests.rb +0 -0
  325. /data/{spec → lib/hyrax/specs/shared_specs}/factories/single_use_links.rb +0 -0
  326. /data/{spec → lib/hyrax/specs/shared_specs}/factories/sipity_entities.rb +0 -0
  327. /data/{spec → lib/hyrax/specs/shared_specs}/factories/uploaded_files.rb +0 -0
  328. /data/{spec → lib/hyrax/specs/shared_specs}/factories/users.rb +0 -0
  329. /data/{spec → lib/hyrax/specs/shared_specs}/factories/workflow_actions.rb +0 -0
  330. /data/{spec → lib/hyrax/specs/shared_specs}/factories/workflow_states.rb +0 -0
  331. /data/{spec → lib/hyrax/specs/shared_specs}/factories/workflows.rb +0 -0
@@ -2,22 +2,22 @@
2
2
  <div class="card tabs">
3
3
 
4
4
  <ul class="nav nav-tabs" role="tablist">
5
- <li class="nav-item">
5
+ <li class="nav-item" role="presentation">
6
6
  <a href="#about" role="tab" data-toggle="tab" class="nav-link active nav-safety-confirm">
7
7
  <%= t(:'hyrax.pages.tabs.about_page') %>
8
8
  </a>
9
9
  </li>
10
- <li class="nav-item">
10
+ <li class="nav-item" role="presentation">
11
11
  <a href="#help" role="tab" data-toggle="tab" class="nav-link nav-safety-confirm">
12
12
  <%= t(:'hyrax.pages.tabs.help_page') %>
13
13
  </a>
14
14
  </li>
15
- <li class="nav-item">
15
+ <li class="nav-item" role="presentation">
16
16
  <a href="#agreement" role="tab" data-toggle="tab" class="nav-link nav-safety-confirm">
17
17
  <%= t(:'hyrax.pages.tabs.agreement_page') %>
18
18
  </a>
19
19
  </li>
20
- <li class="nav-item">
20
+ <li class="nav-item" role="presentation">
21
21
  <a href="#terms" role="tab" data-toggle="tab" class="nav-link nav-safety-confirm">
22
22
  <%= t(:'hyrax.pages.tabs.terms_page') %>
23
23
  </a>
@@ -36,7 +36,7 @@
36
36
  </div>
37
37
  <div class="card-footer d-flex justify-content-end">
38
38
  <%= f.button :submit, class: 'btn btn-primary text-white mr-2' %>
39
- <%= link_to t(:'hyrax.pages.cancel'), hyrax.admin_admin_sets_path, class: 'btn btn-light' %>
39
+ <%= link_to t(:'hyrax.pages.cancel'), hyrax.edit_pages_path, class: 'btn btn-light' %>
40
40
  </div>
41
41
  <% end %>
42
42
  </div>
@@ -52,7 +52,7 @@
52
52
  </div>
53
53
  <div class="card-footer d-flex justify-content-end">
54
54
  <%= f.button :submit, class: 'btn btn-primary text-white mr-2' %>
55
- <%= link_to t(:'hyrax.pages.cancel'), hyrax.admin_admin_sets_path, class: 'btn btn-light' %>
55
+ <%= link_to t(:'hyrax.pages.cancel'), hyrax.edit_pages_path, class: 'btn btn-light' %>
56
56
  </div>
57
57
  <% end %>
58
58
  </div>
@@ -68,7 +68,7 @@
68
68
  </div>
69
69
  <div class="card-footer d-flex justify-content-end">
70
70
  <%= f.button :submit, class: 'btn btn-primary text-white mr-2' %>
71
- <%= link_to t(:'hyrax.pages.cancel'), hyrax.admin_admin_sets_path, class: 'btn btn-light' %>
71
+ <%= link_to t(:'hyrax.pages.cancel'), hyrax.edit_pages_path, class: 'btn btn-light' %>
72
72
  </div>
73
73
  <% end %>
74
74
  </div>
@@ -84,7 +84,7 @@
84
84
  </div>
85
85
  <div class="card-footer d-flex justify-content-end">
86
86
  <%= f.button :submit, class: 'btn btn-primary text-white mr-2' %>
87
- <%= link_to t(:'hyrax.pages.cancel'), hyrax.admin_admin_sets_path, class: 'btn btn-light' %>
87
+ <%= link_to t(:'hyrax.pages.cancel'), hyrax.edit_pages_path, class: 'btn btn-light' %>
88
88
  </div>
89
89
  <% end %>
90
90
  </div>
@@ -23,7 +23,7 @@
23
23
  <% if req.pending? %>
24
24
  <div class="btn-group">
25
25
  <button class="btn btn-sm btn-primary" href="#"><%= t(".accept") %></button>
26
- <button class="btn btn-sm dropdown-toggle accept" data-toggle="dropdown" href="#"></button>
26
+ <button class="btn btn-sm dropdown-toggle accept" data-toggle="dropdown" href="#"><span class="sr-only">accept options</span></button>
27
27
  <ul class="dropdown-menu">
28
28
  <li class="dropdown-item">
29
29
  <%= link_to t(".allow_depositor_to_retain_edit_access"), hyrax.accept_transfer_path(req), method: :put, class: 'accept-retain', title: t(".accept_the_file_and_allow_the_original_depositor_to_retain_access_to_edit_the_file_and_metadata") %>
@@ -1,20 +1,20 @@
1
1
  <!-- The template to display files available for upload -->
2
- <% fade_class_if_not_test = Rails.env.test? ? 'show' : 'fade show' %>
2
+ <% fade_class_if_not_test = Rails.env.test? ? '' : 'fade' %>
3
3
  <script id="template-upload" type="text/x-tmpl">
4
4
  {% for (var i=0, file; file=o.files[i]; i++) { %}
5
5
  <tr class="template-upload <%= fade_class_if_not_test %>">
6
- <span>
6
+ <td>
7
7
  <span class="preview"></span>
8
- </span>
9
- <span>
8
+ </td>
9
+ <td>
10
10
  <p class="name">{%=file.name%}</p>
11
11
  <strong class="error text-danger"></strong>
12
- </span>
13
- <span>
12
+ </td>
13
+ <td>
14
14
  <p class="size">Processing...</p>
15
15
  <div class="progress" role="progressbar" aria-valuemin="0" aria-valuemax="100" aria-valuenow="0"><div class="progress-bar progress-bar-striped progress-bar-animated bg-success" style="width:0%;"></div></div>
16
- </span>
17
- <span class="text-right">
16
+ </td>
17
+ <td class="text-right">
18
18
  {% if (!i && !o.options.autoUpload) { %}
19
19
  <button class="btn btn-primary start" disabled>
20
20
  <span class="fa fa-upload"></span>
@@ -27,7 +27,7 @@
27
27
  <span><%= t('helpers.action.cancel') %></span>
28
28
  </button>
29
29
  {% } %}
30
- </span>
30
+ </td>
31
31
  </tr>
32
32
  {% } %}
33
33
  </script>
@@ -1,7 +1,7 @@
1
1
  <!-- The template to display files available for upload -->
2
2
  <script id="template-upload" type="text/x-tmpl">
3
3
  {% for (var i=0, file; file=o.files[i]; i++) { %}
4
- <tr class="template-upload fade show">
4
+ <tr class="template-upload fade">
5
5
  <td>
6
6
  <span class="preview"></span>
7
7
  </td>
@@ -37,7 +37,7 @@
37
37
  <!-- The template to display the banner once upload is complete -->
38
38
  <script id="template-download" type="text/x-tmpl">
39
39
  {% for (var i=0, file; file=o.files[i]; i++) { %}
40
- <span class="template-download fade show">
40
+ <span class="template-download fade">
41
41
  <div id="banner">
42
42
  <div class="row branding-banner-row">
43
43
  <div class="col-sm-3">
@@ -69,7 +69,7 @@
69
69
  <!-- The template to display logo in the table once upload is complete -->
70
70
  <script id="logo-template-download" type="text/x-tmpl">
71
71
  {% for (var i=0, file; file=o.files[i]; i++) { %}
72
- <span class="template-download fade show">
72
+ <span class="template-download fade">
73
73
  <div class="row branding-logo-row">
74
74
  <div class="col-sm-3">
75
75
  <span class="preview">
@@ -1,5 +1,5 @@
1
1
  <!-- The template to display files available for upload -->
2
- <% fade_class_if_not_test = Rails.env.test? ? 'show' : 'fade show' %>
2
+ <% fade_class_if_not_test = Rails.env.test? ? '' : 'fade' %>
3
3
  <script id="versioning-template-upload" type="text/x-tmpl">
4
4
  {% for (var i=0, file; file=o.files[i]; i++) { %}
5
5
  <tr class="template-upload <%= fade_class_if_not_test %>">
@@ -1,8 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
  json.files [@upload] do |uploaded_file|
3
3
  json.id uploaded_file.id
4
- json.name uploaded_file.file.file.filename
5
- json.size uploaded_file.file.file.size
4
+ json.name uploaded_file.file&.file&.filename
5
+ json.size uploaded_file.file&.file&.size
6
6
  # TODO: implement these
7
7
  # json.url "/uploads/#{uploaded_file.id}"
8
8
  # json.thumbnail_url uploaded_file.id
@@ -7,17 +7,23 @@
7
7
  </tr>
8
8
  </thead>
9
9
  <tbody>
10
- <% events.each do |event| %>
11
- <% next if event[:action].blank? or event[:timestamp].blank? %>
10
+ <% valid_events = events.reject { |event| event[:action].blank? || event[:timestamp].blank? } %>
11
+ <% if valid_events.empty? %>
12
12
  <tr>
13
- <td class="ensure-wrapped"><%= sanitize event[:action] %></td>
14
- <% time = Time.zone.at(event[:timestamp].to_i) %>
15
- <td data-sort="<%= time.getutc.iso8601(5) %>">
16
- <relative-time datetime="<%= time.getutc.iso8601 %>" title="<%= time.to_formatted_s(:standard) %>">
17
- <%= time.to_formatted_s(:long_ordinal) %>
18
- </relative-time>
19
- </td>
13
+ <td colspan="2">No user activity</td>
20
14
  </tr>
15
+ <% else %>
16
+ <% valid_events.each do |event| %>
17
+ <tr>
18
+ <td class="ensure-wrapped"><%= sanitize event[:action] %></td>
19
+ <% time = Time.zone.at(event[:timestamp].to_i) %>
20
+ <td data-sort="<%= time.getutc.iso8601(5) %>">
21
+ <relative-time datetime="<%= time.getutc.iso8601 %>" title="<%= time.to_formatted_s(:standard) %>">
22
+ <%= time.to_formatted_s(:long_ordinal) %>
23
+ </relative-time>
24
+ </td>
25
+ </tr>
26
+ <% end %>
21
27
  <% end %>
22
28
  </tbody>
23
29
  </table>
@@ -1,8 +1,11 @@
1
1
  <tr>
2
- <td><%= link_to hyrax.user_path(user) do %>
3
- <%= image_tag(user.avatar.url(:thumb), width: 30) if user.avatar.file %>
2
+ <td>
3
+ <% if user.avatar.file %>
4
+ <%= link_to hyrax.user_path(user) do %>
5
+ <%= image_tag(user.avatar.url(:thumb), width: 30, alt: user.name) %>
4
6
  <% end %>
5
- </td>
7
+ <% end %>
8
+ </td>
6
9
  <td><%= link_to user.name, hyrax.user_path(user) %></td>
7
10
  <td><%= link_to user.user_key, hyrax.user_path(user) %></td>
8
11
  <td><%= user.department %></td>
@@ -12,7 +12,8 @@
12
12
  <span class="fa fa-upload" aria-hidden="true"></span> <%= link_to_works(user) %>
13
13
 
14
14
  <ul class="views-downloads-dashboard list-unstyled">
15
- <li><span class="badge badge-optional dark-text"><%= user.total_file_views %></span> <%= t("hyrax.dashboard.stats.file_views").pluralize(user.total_file_views) %></li>
16
- <li><span class="badge badge-optional dark-text"><%= user.total_file_downloads %></span> <%= t("hyrax.dashboard.stats.file_downloads").pluralize(user.total_file_downloads) %></li>
15
+ <li><span class="badge badge-optional dark-text"><%= user.total_work_views %></span> <%= t("hyrax.dashboard.stats.work_views").pluralize(user.total_work_views) %></li>
16
+ <li><span class="badge badge-optional dark-text"><%= user.total_file_views %></span> <%= t("hyrax.dashboard.stats.file_views").pluralize(user.total_file_views) %></li>
17
+ <li><span class="badge badge-optional dark-text"><%= user.total_file_downloads %></span> <%= t("hyrax.dashboard.stats.file_downloads").pluralize(user.total_file_downloads) %></li>
17
18
  </ul>
18
19
  </div>
@@ -29,6 +29,8 @@ signed in %>
29
29
  <% if Hyrax.config.analytics? %>
30
30
  <% if Hyrax.config.analytics_provider == 'google' %>
31
31
  <%= render partial: 'shared/ga', formats: [:html] %>
32
+ <% elsif Hyrax.config.analytics_provider == 'ga4' %>
33
+ <%= render partial: 'shared/ga4', formats: [:html] %>
32
34
  <% elsif Hyrax.config.analytics_provider == 'matomo' %>
33
35
  <%= render partial: 'shared/matomo', formats: [:html] %>
34
36
  <% end %>
@@ -14,11 +14,15 @@ a { color: <%= appearance.link_color %>; }
14
14
  .navbar-dark.bg-dark .navbar-text,
15
15
  .navbar-dark.bg-dark .navbar-brand { color: <%= appearance.header_text_color %>; }
16
16
 
17
- .btn-primary {
17
+ .btn-primary, .page-item.active .page-link {
18
18
  background-color: <%= appearance.primary_button_background_color %>;
19
19
  border-color: <%= appearance.primary_button_border_color %>;
20
20
  }
21
21
 
22
+ .page-link {
23
+ color: <%= appearance.primary_button_background_color %>;
24
+ }
25
+
22
26
  .btn-primary:focus,
23
27
  .btn-primary.focus {
24
28
  background-color: <%= appearance.primary_button_focus_background_color %>;
@@ -0,0 +1,11 @@
1
+ <!-- Google tag (gtag.js) -->
2
+ <script async src="https://www.googletagmanager.com/gtag/js?id=<%= Hyrax::Analytics.config.analytics_id %>"></script>
3
+ <script>
4
+ window.dataLayer = window.dataLayer || [];
5
+ function gtag(){dataLayer.push(arguments);}
6
+ gtag('js', new Date());
7
+
8
+ gtag('config', '<%= Hyrax::Analytics.config.analytics_id %>');
9
+ window.analytics = gtag;
10
+ </script>
11
+ <meta name="analytics-provider" content="ga4">
@@ -7,12 +7,21 @@
7
7
  <button type="button" class="close" data-dismiss="modal" aria-label="<%= t('hyrax.dashboard.heading_actions.close') %>"><span aria-hidden="true">&times;</span></button>
8
8
  </div>
9
9
  <div class="modal-body">
10
+ <% if Flipflop.assign_admin_set? %>
11
+ <div class="select-work-admin-set">
12
+ <div class="admin-set-title">
13
+ <%= t('hyrax.dashboard.heading_actions.select_admin_set') %>
14
+ </div>
15
+ <%= select_tag(:admin_set_id, options_for_select(@admin_sets_for_select), class: 'form-control') if @admin_sets_for_select %>
16
+ </div>
17
+ <% end %>
10
18
  <% create_work_presenter.each do |row_presenter| %>
11
19
  <div class="select-worktype">
12
20
  <label>
13
21
  <input type="radio" name="payload_concern" value="<%= row_presenter.concern %>"
14
22
  data-single="<%= row_presenter.switch_to_new_work_path(route_set: main_app, params: params) %>"
15
- data-batch="<%= row_presenter.switch_to_batch_upload_path(route_set: hyrax, params: params) %>" />
23
+ data-batch="<%= row_presenter.switch_to_batch_upload_path(route_set: hyrax, params: params) %>"
24
+ required />
16
25
  <div class="select-work-icon">
17
26
  <span class="<%= row_presenter.icon_class %>"></span>
18
27
  </div>
@@ -1,13 +1,13 @@
1
1
  #!/bin/sh
2
2
  set -e
3
3
 
4
- db-wait.sh "$DB_HOST:$DB_PORT"
4
+ service-wait.sh "$DB_HOST:$DB_PORT"
5
5
  bundle exec rails db:create
6
6
  bundle exec rails db:migrate
7
7
 
8
8
  if [ "$FCREPO_HOST" ]; then
9
- db-wait.sh "$FCREPO_HOST:$FCREPO_PORT"
9
+ service-wait.sh "$FCREPO_HOST:$FCREPO_PORT"
10
10
  fi
11
- db-wait.sh "$SOLR_HOST:$SOLR_PORT"
11
+ service-wait.sh "$SOLR_HOST:$SOLR_PORT"
12
12
 
13
13
  bundle exec rails db:seed
@@ -1,13 +1,18 @@
1
1
  #!/bin/sh
2
2
  set -e
3
3
 
4
- mkdir -p /app/samvera/hyrax-webapp/tmp/pids
5
- rm -f /app/samvera/hyrax-webapp/tmp/pids/*
4
+ mkdir -p $RAILS_ROOT/tmp/pids
5
+ rm -f $RAILS_ROOT/tmp/pids/*
6
+
7
+ RUBY_MAJOR=$(ruby -e "puts /^(?'major'\d+)\.(?'minor'\d+)\.(?'patch'\d+)/.match(RUBY_VERSION)[:major]")
6
8
 
7
9
  # Copy gems installed in the image to the dev bundle
8
10
  mkdir -p /app/bundle/ruby/$RUBY_MAJOR.0
9
11
  cp -Rn /usr/local/bundle/* /app/bundle/ruby/$RUBY_MAJOR.0
10
12
  bundle install
13
+ yarn install
14
+
15
+ db-migrate-seed.sh
11
16
 
12
17
  # Run the command
13
18
  exec "$@"
@@ -5,9 +5,9 @@ port=$(printf "%s\n" "$1"| cut -d : -f 2)
5
5
 
6
6
  shift 1
7
7
 
8
+ echo "silently waiting for $host:$port"
8
9
  while ! nc -z "$host" "$port"
9
10
  do
10
- echo "waiting for $host:$port"
11
11
  sleep 1
12
12
  done
13
13
 
@@ -0,0 +1,8 @@
1
+ #!/bin/sh
2
+ set -e
3
+
4
+ # Wait for web app to avoid racing during bundle install
5
+ service-wait.sh web:3000
6
+
7
+ # Run the command
8
+ exec "$@"
@@ -2,7 +2,7 @@ apiVersion: v2
2
2
  name: hyrax
3
3
  description: An open-source, Samvera-powered digital repository system
4
4
  type: application
5
- version: 3.6.0
5
+ version: 3.7.0
6
6
  appVersion: 5.0.0
7
7
  dependencies:
8
8
  - name: fcrepo
@@ -20,7 +20,7 @@ spec:
20
20
  {{- include "hyrax.workerSelectorLabels" . | nindent 8 }}
21
21
  spec:
22
22
  initContainers:
23
- - name: db-wait
23
+ - name: service-wait
24
24
  image: "{{ .Values.worker.image.repository }}:{{ .Values.worker.image.tag | default .Chart.AppVersion }}"
25
25
  imagePullPolicy: {{ .Values.worker.image.pullPolicy }}
26
26
  envFrom:
@@ -35,7 +35,7 @@ spec:
35
35
  command:
36
36
  - sh
37
37
  - -c
38
- - db-wait.sh "$REDIS_HOST:6379"
38
+ - service-wait.sh "$REDIS_HOST:6379"
39
39
  {{- if .Values.worker.extraInitContainers }}
40
40
  {{- toYaml .Values.worker.extraInitContainers | nindent 8 }}
41
41
  {{- end }}
@@ -112,6 +112,18 @@ spec:
112
112
  - name: http
113
113
  containerPort: 3000
114
114
  protocol: TCP
115
+ {{- if .Values.startupProbe.enabled }}
116
+ startupProbe:
117
+ initialDelaySeconds: {{ .Values.startupProbe.initialDelaySeconds | default 5 }}
118
+ timeoutSeconds: {{ .Values.startupProbe.timeoutSeconds | default 5 }}
119
+ failureThreshold: {{ .Values.startupProbe.failureThreshold | default 3 }}
120
+ periodSeconds: {{ .Values.startupProbe.periodSeconds | default 10}}
121
+ successThreshold: {{ .Values.startupProbe.successThreshold | default 1 }}
122
+ httpGet:
123
+ scheme: "HTTP"
124
+ path: {{ .Values.startupProbe.path | default "/" }}
125
+ port: 3000
126
+ {{- end }}
115
127
  {{- if .Values.livenessProbe.enabled }}
116
128
  livenessProbe:
117
129
  initialDelaySeconds: {{ .Values.livenessProbe.initialDelaySeconds | default 5 }}
@@ -188,6 +188,16 @@ readinessProbe:
188
188
  # failureThreshold: 6
189
189
  # successThreshold: 1
190
190
 
191
+ # consider enabling if you are experiencing slow startup times
192
+ startupProbe:
193
+ enabled: false
194
+ # path: "/healthz"
195
+ # initialDelaySeconds: 30
196
+ # periodSeconds: 30
197
+ # timeoutSeconds: 5
198
+ # failureThreshold: 3
199
+ # successThreshold: 1
200
+
191
201
  resources: {}
192
202
 
193
203
  worker:
@@ -998,6 +998,7 @@ en:
998
998
  heading_actions:
999
999
  close: Close
1000
1000
  create_work: Create work
1001
+ select_admin_set: Deposit into admin set
1001
1002
  select_type_of_work: Select type of work
1002
1003
  manage_proxies: Manage Proxies
1003
1004
  managed:
@@ -1140,8 +1141,9 @@ en:
1140
1141
  graph_reports: Customized Graph Reports
1141
1142
  stats:
1142
1143
  collections: Collections created
1143
- file_downloads: Download
1144
- file_views: View
1144
+ work_views: Metadata View
1145
+ file_downloads: File Download
1146
+ file_views: File View
1145
1147
  files: Files deposited
1146
1148
  heading: Your Statistics
1147
1149
  joined_on: Joined on
@@ -6,6 +6,7 @@ attributes:
6
6
  form:
7
7
  primary: false
8
8
  index_keys:
9
+ - "abstract_sim"
9
10
  - "abstract_tesim"
10
11
  predicate: http://purl.org/dc/terms/abstract
11
12
  access_right:
@@ -14,6 +15,7 @@ attributes:
14
15
  form:
15
16
  primary: false
16
17
  index_keys:
18
+ - "access_right_sim"
17
19
  - "access_right_tesim"
18
20
  predicate: http://purl.org/dc/terms/accessRights
19
21
  alternative_title:
@@ -22,6 +24,7 @@ attributes:
22
24
  form:
23
25
  primary: false
24
26
  index_keys:
27
+ - "alternative_title_sim"
25
28
  - "alternative_title_tesim"
26
29
  predicate: http://purl.org/dc/terms/alternative
27
30
  arkivo_checksum:
@@ -42,6 +45,11 @@ attributes:
42
45
  bibliographic_citation:
43
46
  type: string
44
47
  multiple: true
48
+ form:
49
+ primary: false
50
+ index_keys:
51
+ - "bibliographic_citation_sim"
52
+ - "bibliographic_citation_tesim"
45
53
  predicate: http://purl.org/dc/terms/bibliographicCitation
46
54
  contributor:
47
55
  type: string
@@ -59,6 +67,7 @@ attributes:
59
67
  required: true
60
68
  primary: true
61
69
  index_keys:
70
+ - "creator_sim"
62
71
  - "creator_tesim"
63
72
  predicate: http://purl.org/dc/elements/1.1/creator
64
73
  date_created:
@@ -67,6 +76,7 @@ attributes:
67
76
  form:
68
77
  primary: false
69
78
  index_keys:
79
+ - "date_created_sim"
70
80
  - "date_created_tesim"
71
81
  predicate: http://purl.org/dc/terms/created
72
82
  description:
@@ -75,6 +85,7 @@ attributes:
75
85
  form:
76
86
  primary: false
77
87
  index_keys:
88
+ - "description_sim"
78
89
  - "description_tesim"
79
90
  predicate: http://purl.org/dc/elements/1.1/description
80
91
  identifier:
@@ -83,6 +94,7 @@ attributes:
83
94
  form:
84
95
  primary: false
85
96
  index_keys:
97
+ - "identifier_sim"
86
98
  - "identifier_tesim"
87
99
  predicate: http://purl.org/dc/terms/identifier
88
100
  import_url:
@@ -103,6 +115,7 @@ attributes:
103
115
  form:
104
116
  primary: false
105
117
  index_keys:
118
+ - "publisher_sim"
106
119
  - "publisher_tesim"
107
120
  predicate: http://purl.org/dc/elements/1.1/publisher
108
121
  label:
@@ -110,6 +123,7 @@ attributes:
110
123
  form:
111
124
  primary: false
112
125
  index_keys:
126
+ - "label_sim"
113
127
  - "label_tesim"
114
128
  predicate: info:fedora/fedora-system:def/model#downloadFilename
115
129
  language:
@@ -118,6 +132,7 @@ attributes:
118
132
  form:
119
133
  primary: false
120
134
  index_keys:
135
+ - "language_sim"
121
136
  - "language_tesim"
122
137
  predicate: http://purl.org/dc/elements/1.1/language
123
138
  license:
@@ -126,6 +141,7 @@ attributes:
126
141
  form:
127
142
  primary: false
128
143
  index_keys:
144
+ - "license_sim"
129
145
  - "license_tesim"
130
146
  predicate: http://purl.org/dc/terms/license
131
147
  relative_path:
@@ -137,6 +153,7 @@ attributes:
137
153
  form:
138
154
  primary: false
139
155
  index_keys:
156
+ - "related_url_sim"
140
157
  - "related_url_tesim"
141
158
  predicate: http://www.w3.org/2000/01/rdf-schema#seeAlso
142
159
  resource_type:
@@ -154,6 +171,7 @@ attributes:
154
171
  form:
155
172
  primary: false
156
173
  index_keys:
174
+ - "rights_notes_sim"
157
175
  - "rights_notes_tesim"
158
176
  predicate: http://purl.org/dc/elements/1.1/rights
159
177
  rights_statement:
@@ -162,6 +180,7 @@ attributes:
162
180
  form:
163
181
  primary: true
164
182
  index_keys:
183
+ - "rights_statement_sim"
165
184
  - "rights_statement_tesim"
166
185
  predicate: http://www.europeana.eu/schemas/edm/rights
167
186
  source:
@@ -170,6 +189,7 @@ attributes:
170
189
  form:
171
190
  primary: false
172
191
  index_keys:
192
+ - "source_sim"
173
193
  - "source_tesim"
174
194
  predicate: http://purl.org/dc/terms/source
175
195
  subject:
@@ -14,7 +14,7 @@ attributes:
14
14
  compression:
15
15
  predicate: http://vocabulary.samvera.org/ns#compressionScheme
16
16
  created_at:
17
- predicate: http://purl.org/dc/terms/created
17
+ predicate: http://vocabulary.samvera.org/ns#created_at
18
18
  file_identifier:
19
19
  predicate: http://vocabulary.samvera.org/ns#fileIdentifier
20
20
  file_ids: