hyrax 3.0.0.pre.beta1 → 3.0.0.pre.beta2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. checksums.yaml +5 -5
  2. data/.circleci/config.yml +157 -68
  3. data/.travis.yml +4 -1
  4. data/Gemfile +1 -0
  5. data/README.md +3 -3
  6. data/app/actors/hyrax/actors/collections_membership_actor.rb +5 -55
  7. data/app/actors/hyrax/actors/create_with_remote_files_ordered_members_actor.rb +6 -8
  8. data/app/actors/hyrax/actors/environment.rb +15 -0
  9. data/app/actors/hyrax/actors/interpret_visibility_actor.rb +22 -37
  10. data/app/assets/javascripts/hyrax/editor/controlled_vocabulary.es6 +1 -1
  11. data/app/assets/stylesheets/hyrax/_collections.scss +5 -3
  12. data/app/assets/stylesheets/hyrax/dashboard.scss +3 -3
  13. data/app/controllers/concerns/hyrax/works_controller_behavior.rb +21 -2
  14. data/app/controllers/hyrax/homepage_controller.rb +1 -1
  15. data/app/forms/hyrax/forms/work_form.rb +1 -1
  16. data/app/helpers/hyrax/collections_helper.rb +13 -0
  17. data/app/helpers/hyrax/hyrax_helper_behavior.rb +3 -3
  18. data/app/indexers/hyrax/admin_set_indexer.rb +1 -1
  19. data/app/indexers/hyrax/basic_metadata_indexer.rb +1 -1
  20. data/app/indexers/hyrax/collection_indexer.rb +3 -3
  21. data/app/indexers/hyrax/deep_indexing_service.rb +12 -12
  22. data/app/indexers/hyrax/file_set_indexer.rb +1 -1
  23. data/app/indexers/hyrax/indexes_workflow.rb +4 -4
  24. data/app/indexers/hyrax/work_indexer.rb +1 -1
  25. data/app/models/concerns/hyrax/basic_metadata.rb +2 -0
  26. data/app/models/concerns/hyrax/collection_behavior.rb +3 -3
  27. data/app/models/concerns/hyrax/file_set/querying.rb +1 -1
  28. data/app/models/concerns/hyrax/human_readable_type.rb +2 -2
  29. data/app/models/concerns/hyrax/solr_document/characterization.rb +23 -23
  30. data/app/models/concerns/hyrax/solr_document/metadata.rb +3 -2
  31. data/app/models/concerns/hyrax/solr_document_behavior.rb +3 -3
  32. data/app/models/concerns/hyrax/user.rb +10 -2
  33. data/app/presenters/hyrax/work_show_presenter.rb +2 -2
  34. data/app/renderers/hyrax/renderers/faceted_attribute_renderer.rb +1 -1
  35. data/app/search_builders/hyrax/collection_search_builder.rb +1 -1
  36. data/app/search_builders/hyrax/deposit_search_builder.rb +1 -1
  37. data/app/search_builders/hyrax/embargo_search_builder.rb +1 -1
  38. data/app/search_builders/hyrax/lease_search_builder.rb +1 -1
  39. data/app/services/hyrax/default_middleware_stack.rb +0 -4
  40. data/app/services/hyrax/statistics/file_sets/by_format.rb +1 -1
  41. data/app/services/hyrax/statistics/works/by_resource_type.rb +1 -1
  42. data/app/services/hyrax/visibility_intention.rb +78 -0
  43. data/app/views/catalog/_index_list_default.html.erb +3 -3
  44. data/app/views/catalog/_thumbnail_list_collection.html.erb +3 -2
  45. data/app/views/hyrax/base/_attribute_rows.html.erb +1 -0
  46. data/app/views/hyrax/base/_form_files.html.erb +2 -2
  47. data/app/views/hyrax/base/_form_visibility_component.html.erb +1 -1
  48. data/app/views/hyrax/base/_show_actions.html.erb +6 -6
  49. data/app/views/hyrax/base/show.html.erb +2 -2
  50. data/app/views/hyrax/batch_edits/_check_all.html.erb +1 -1
  51. data/app/views/hyrax/batch_edits/_delete_selected.html.erb +1 -1
  52. data/app/views/hyrax/collections/_show_document_list_row.html.erb +1 -1
  53. data/app/views/hyrax/dashboard/collections/_show_document_list_row.html.erb +1 -1
  54. data/app/views/hyrax/dashboard/show_admin.html.erb +4 -4
  55. data/app/views/records/show_fields/_based_near.html.erb +1 -1
  56. data/app/views/records/show_fields/_creator.html.erb +1 -1
  57. data/app/views/records/show_fields/_keyword.html.erb +1 -1
  58. data/app/views/records/show_fields/_language.html.erb +1 -1
  59. data/app/views/records/show_fields/_publisher.html.erb +1 -1
  60. data/app/views/records/show_fields/_resource_type.html.erb +1 -1
  61. data/app/views/records/show_fields/_subject.html.erb +1 -1
  62. data/config/initializers/samvera-nesting_indexer_initializer.rb +3 -3
  63. data/config/locales/hyrax.de.yml +35 -22
  64. data/config/locales/hyrax.en.yml +22 -2
  65. data/config/locales/hyrax.es.yml +21 -1
  66. data/config/locales/hyrax.fr.yml +21 -1
  67. data/config/locales/hyrax.it.yml +21 -1
  68. data/config/locales/hyrax.pt-BR.yml +21 -1
  69. data/config/locales/hyrax.zh.yml +21 -1
  70. data/hyrax.gemspec +7 -9
  71. data/lib/generators/hyrax/templates/catalog_controller.rb +1 -1
  72. data/lib/generators/hyrax/templates/config/locales/hyrax.pt-BR.yml +10 -10
  73. data/lib/generators/hyrax/work/templates/locale.pt-BR.yml.erb +1 -1
  74. data/lib/hyrax/configuration.rb +18 -0
  75. data/lib/hyrax/engine.rb +8 -0
  76. data/lib/hyrax/transactions/container.rb +6 -0
  77. data/lib/hyrax/transactions/destroy_work.rb +21 -0
  78. data/lib/hyrax/transactions/steps/destroy_work.rb +24 -0
  79. data/lib/hyrax/version.rb +1 -1
  80. data/lib/wings.rb +45 -0
  81. data/lib/wings/active_fedora_converter.rb +56 -0
  82. data/lib/wings/model_transformer.rb +158 -0
  83. data/lib/wings/resource_factory.rb +8 -0
  84. data/lib/wings/valkyrie/metadata_adapter.rb +29 -0
  85. data/lib/wings/valkyrie/persister.rb +50 -0
  86. data/lib/wings/valkyrie/query_service.rb +43 -0
  87. data/lib/wings/valkyrie/resource_factory.rb +45 -0
  88. data/lib/wings/valkyrizable.rb +24 -0
  89. data/lib/wings/value_mapper.rb +59 -0
  90. data/spec/abilities/collection_ability_spec.rb +5 -5
  91. data/spec/abilities/permission_template_ability_spec.rb +1 -1
  92. data/spec/actors/hyrax/actors/collections_membership_actor_spec.rb +6 -175
  93. data/spec/actors/hyrax/actors/create_with_remote_files_ordered_members_actor_spec.rb +30 -22
  94. data/spec/actors/hyrax/actors/interpret_visibility_actor_spec.rb +2 -0
  95. data/spec/controllers/catalog_controller_spec.rb +1 -1
  96. data/spec/controllers/hyrax/admin/collection_types_controller_spec.rb +1 -1
  97. data/spec/controllers/hyrax/batch_edits_controller_spec.rb +9 -9
  98. data/spec/controllers/hyrax/collections_controller_spec.rb +5 -5
  99. data/spec/controllers/hyrax/dashboard/collection_members_controller_spec.rb +16 -13
  100. data/spec/controllers/hyrax/dashboard/collections_controller_spec.rb +9 -9
  101. data/spec/controllers/hyrax/dashboard/nest_collections_controller_spec.rb +1 -1
  102. data/spec/controllers/hyrax/generic_works_controller_spec.rb +10 -1
  103. data/spec/controllers/hyrax/homepage_controller_spec.rb +3 -3
  104. data/spec/controllers/hyrax/my/shares_controller_spec.rb +1 -1
  105. data/spec/features/actor_stack_spec.rb +48 -0
  106. data/spec/features/catalog_search_spec.rb +2 -2
  107. data/spec/features/collection_multi_membership_spec.rb +2 -2
  108. data/spec/features/collection_spec.rb +7 -7
  109. data/spec/features/collection_type_spec.rb +2 -2
  110. data/spec/features/dashboard/collection_spec.rb +18 -18
  111. data/spec/features/delete_work_spec.rb +1 -1
  112. data/spec/features/search_spec.rb +2 -2
  113. data/spec/features/work_show_spec.rb +5 -2
  114. data/spec/forms/hyrax/forms/batch_upload_form_spec.rb +1 -0
  115. data/spec/forms/hyrax/forms/collection_form_spec.rb +5 -5
  116. data/spec/forms/hyrax/forms/permission_template_form_spec.rb +1 -1
  117. data/spec/forms/hyrax/forms/work_form_spec.rb +2 -0
  118. data/spec/helpers/blacklight_helper_spec.rb +3 -1
  119. data/spec/helpers/hyrax/collections_helper_spec.rb +42 -0
  120. data/spec/helpers/hyrax/dashboard_helper_behavior_spec.rb +4 -4
  121. data/spec/helpers/hyrax_helper_spec.rb +8 -4
  122. data/spec/hyrax/transactions/destroy_work_spec.rb +35 -0
  123. data/spec/hyrax/transactions/steps/destroy_work_spec.rb +33 -0
  124. data/spec/indexers/hyrax/collection_indexer_spec.rb +1 -1
  125. data/spec/jobs/characterize_job_spec.rb +1 -1
  126. data/spec/lib/hyrax/resource_sync/change_list_writer_spec.rb +35 -21
  127. data/spec/lib/hyrax/resource_sync/resource_list_writer_spec.rb +1 -1
  128. data/spec/models/collection_spec.rb +18 -18
  129. data/spec/models/concerns/hyrax/collection_nesting_spec.rb +2 -2
  130. data/spec/models/file_set_spec.rb +2 -2
  131. data/spec/models/hyrax/collection_type_spec.rb +2 -2
  132. data/spec/models/user_spec.rb +26 -1
  133. data/spec/presenters/hyrax/collection_presenter_spec.rb +11 -11
  134. data/spec/presenters/hyrax/work_show_presenter_spec.rb +11 -0
  135. data/spec/search_builders/hyrax/collection_member_search_builder_spec.rb +1 -1
  136. data/spec/search_builders/hyrax/collection_search_builder_spec.rb +1 -1
  137. data/spec/search_builders/hyrax/dashboard/nested_collections_search_builder_spec.rb +1 -1
  138. data/spec/search_builders/hyrax/work_relation_spec.rb +1 -1
  139. data/spec/services/hyrax/adapters/nesting_index_adapter_spec.rb +2 -2
  140. data/spec/services/hyrax/collections/collection_member_service_spec.rb +2 -2
  141. data/spec/services/hyrax/collections/migration_service_spec.rb +27 -27
  142. data/spec/services/hyrax/collections/nested_collection_persistence_service_spec.rb +1 -1
  143. data/spec/services/hyrax/collections/nested_collection_query_service_spec.rb +38 -38
  144. data/spec/services/hyrax/curation_concern_spec.rb +1 -1
  145. data/spec/services/hyrax/default_middleware_stack_spec.rb +1 -2
  146. data/spec/services/hyrax/statistics/depositors/summary_spec.rb +1 -1
  147. data/spec/services/hyrax/statistics/works/by_resource_type_spec.rb +11 -4
  148. data/spec/services/hyrax/visibility_intention_spec.rb +144 -0
  149. data/spec/services/hyrax/workflow/changes_required_notification_spec.rb +1 -1
  150. data/spec/spec_helper.rb +10 -8
  151. data/spec/support/selectors.rb +10 -1
  152. data/spec/test_app_templates/Gemfile.extra +2 -0
  153. data/spec/test_app_templates/lib/generators/test_app_generator.rb +6 -0
  154. data/spec/views/catalog/_index_list_default.html.erb_spec.rb +3 -2
  155. data/spec/views/catalog/_thumbnail_list_collection.html.erb_spec.rb +38 -5
  156. data/spec/views/hyrax/base/_attributes.html.erb_spec.rb +1 -1
  157. data/spec/views/hyrax/base/_show_actions.html.erb_spec.rb +9 -9
  158. data/spec/views/hyrax/base/show.html.erb_spec.rb +3 -2
  159. data/spec/views/hyrax/collections/_show_document_list_row.html.erb_spec.rb +3 -2
  160. data/spec/views/hyrax/dashboard/collections/_show_document_list_row.html.erb_spec.rb +3 -2
  161. data/spec/wings/active_fedora_converter_spec.rb +31 -0
  162. data/spec/wings/model_transformer_spec.rb +288 -0
  163. data/spec/wings/valkyrie/metadata_adapter_spec.rb +10 -0
  164. data/spec/wings/valkyrie/persister_spec.rb +71 -0
  165. data/spec/wings/valkyrie/query_service_spec.rb +81 -0
  166. data/spec/wings/valkyrie/resource_factory_spec.rb +32 -0
  167. data/spec/wings/value_mapper_spec.rb +60 -0
  168. data/spec/wings_spec.rb +8 -0
  169. data/template.rb +3 -1
  170. metadata +86 -36
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+ require 'spec_helper'
3
+ require 'valkyrie/specs/shared_specs'
4
+ require 'wings'
5
+
6
+ RSpec.describe Wings::Valkyrie::MetadataAdapter do
7
+ let(:adapter) { described_class.new }
8
+
9
+ it_behaves_like "a Valkyrie::MetadataAdapter"
10
+ end
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+ require 'spec_helper'
3
+ require 'valkyrie/specs/shared_specs'
4
+ require 'wings'
5
+
6
+ RSpec.describe Wings::Valkyrie::Persister do
7
+ before do
8
+ class Book < ActiveFedora::Base
9
+ property :title, predicate: ::RDF::Vocab::DC.title, multiple: true
10
+ end
11
+ end
12
+
13
+ after do
14
+ Object.send(:remove_const, :Book)
15
+ end
16
+
17
+ subject(:persister) { described_class.new(adapter: adapter) }
18
+ let(:adapter) { Wings::Valkyrie::MetadataAdapter.new }
19
+ let(:query_service) { adapter.query_service }
20
+ let(:af_resource_class) { Book }
21
+ let(:resource_class) { Wings::ModelTransformer.to_valkyrie_resource_class(klass: af_resource_class) }
22
+ let(:resource) { resource_class.new(title: ['Foo']) }
23
+
24
+ # it_behaves_like "a Valkyrie::Persister"
25
+
26
+ it { is_expected.to respond_to(:save).with_keywords(:resource) }
27
+ xit { is_expected.to respond_to(:save_all).with_keywords(:resources) }
28
+ xit { is_expected.to respond_to(:delete).with_keywords(:resource) }
29
+
30
+ it "can save a resource" do
31
+ expect(resource).not_to be_persisted
32
+ saved = persister.save(resource: resource)
33
+ # expect(saved).to be_persisted
34
+ expect(saved.id).not_to be_blank
35
+ end
36
+
37
+ xit "stores created_at/updated_at" do
38
+ book = persister.save(resource: resource)
39
+ book.title = ["test"]
40
+ book = persister.save(resource: book)
41
+ expect(book.created_at).not_to be_blank
42
+ expect(book.updated_at).not_to be_blank
43
+ expect(book.created_at).not_to be_kind_of Array
44
+ expect(book.updated_at).not_to be_kind_of Array
45
+ expect(book.updated_at > book.created_at).to eq true
46
+ end
47
+
48
+ xit "can override default id generation with a provided id" do
49
+ id = SecureRandom.uuid
50
+ book = persister.save(resource: resource_class.new(id: id, title: ['Foo']))
51
+ reloaded = query_service.find_by(id: book.id)
52
+ expect(reloaded.id).to eq Valkyrie::ID.new(id)
53
+ expect(reloaded).to be_persisted
54
+ expect(reloaded.created_at).not_to be_blank
55
+ expect(reloaded.updated_at).not_to be_blank
56
+ expect(reloaded.created_at).not_to be_kind_of Array
57
+ expect(reloaded.updated_at).not_to be_kind_of Array
58
+ end
59
+
60
+ it "doesn't override a resource that already has an ID" do
61
+ book = persister.save(resource: resource_class.new(title: ['Foo']))
62
+ id = book.id
63
+ output = persister.save(resource: book)
64
+ expect(output.id).to eq id
65
+ end
66
+
67
+ it "can find that resource again" do
68
+ id = persister.save(resource: resource).id
69
+ expect(query_service.find_by(id: id).internal_resource).to eq resource.internal_resource
70
+ end
71
+ end
@@ -0,0 +1,81 @@
1
+ # frozen_string_literal: true
2
+ require 'spec_helper'
3
+ require 'valkyrie/specs/shared_specs'
4
+ require 'wings'
5
+
6
+ RSpec.describe Wings::Valkyrie::QueryService do
7
+ before do
8
+ class Book < ActiveFedora::Base
9
+ property :title, predicate: ::RDF::Vocab::DC.title, multiple: true
10
+ end
11
+ end
12
+
13
+ after do
14
+ Object.send(:remove_const, :Book)
15
+ end
16
+
17
+ subject(:query_service) { described_class.new(adapter: adapter) }
18
+ let(:adapter) { Wings::Valkyrie::MetadataAdapter.new }
19
+ let(:persister) { Wings::Valkyrie::Persister.new(adapter: adapter) }
20
+ let(:af_resource_class) { Book }
21
+ let(:resource_class) { Wings::ModelTransformer.to_valkyrie_resource_class(klass: af_resource_class) }
22
+ let(:resource) { resource_class.new(title: ['Foo']) }
23
+
24
+ # it_behaves_like "a Valkyrie query provider"
25
+
26
+ it 'responds to expected methods' do
27
+ expect(subject).to respond_to(:find_by).with_keywords(:id)
28
+ expect(subject).to respond_to(:resource_factory)
29
+ end
30
+
31
+ describe ".find_by" do
32
+ it "returns a resource by id or string representation of an id" do
33
+ book = persister.save(resource: resource)
34
+
35
+ found = query_service.find_by(id: book.id)
36
+ expect(found.id).to eq book.id
37
+ # expect(found).to be_persisted
38
+
39
+ found = query_service.find_by(id: book.id.to_s)
40
+ expect(found.id).to eq book.id
41
+ # expect(found).to be_persisted
42
+ end
43
+
44
+ it "returns a Valkyrie::Persistence::ObjectNotFoundError for a non-found ID" do
45
+ expect { query_service.find_by(id: ::Valkyrie::ID.new("123123123")) }.to raise_error ::Valkyrie::Persistence::ObjectNotFoundError
46
+ end
47
+
48
+ it 'raises an error if the id is not a Valkyrie::ID or a string' do
49
+ expect { query_service.find_by(id: 123) }.to raise_error ArgumentError
50
+ end
51
+ end
52
+
53
+ describe ".register_query_handler" do
54
+ before do
55
+ class QueryHandler
56
+ def self.queries
57
+ [:find_by_user_id]
58
+ end
59
+
60
+ attr_reader :query_service
61
+ def initialize(query_service:)
62
+ @query_service = query_service
63
+ end
64
+
65
+ def find_by_user_id
66
+ 1
67
+ end
68
+ end
69
+ end
70
+
71
+ after do
72
+ Object.send(:remove_const, :QueryHandler)
73
+ end
74
+
75
+ it "can register a query handler" do
76
+ query_service.custom_queries.register_query_handler(QueryHandler)
77
+ expect(query_service.custom_queries).to respond_to :find_by_user_id
78
+ expect(query_service.custom_queries.find_by_user_id).to eq 1
79
+ end
80
+ end
81
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+ require 'spec_helper'
3
+ require 'wings'
4
+
5
+ RSpec.describe Wings::Valkyrie::ResourceFactory do
6
+ subject(:factory) { described_class.new(adapter: adapter) }
7
+ let(:adapter) { Valkyrie::Persistence::Memory::MetadataAdapter.new }
8
+ let(:work) { GenericWork.new }
9
+
10
+ describe '#to_resource' do
11
+ it 'returns a valkyrie_resource for the object' do
12
+ expect(factory.to_resource(object: work)).to be_a Valkyrie::Resource
13
+ end
14
+ end
15
+
16
+ describe '#from_resource' do
17
+ let(:resource) { work.valkyrie_resource }
18
+
19
+ it 'returns an ActiveFedora object' do
20
+ expect(factory.from_resource(resource: resource)).to be_a GenericWork
21
+ end
22
+
23
+ context 'with a FileSet' do
24
+ let(:resource) { file_set.valkyrie_resource }
25
+ let(:file_set) { FileSet.new }
26
+
27
+ it 'returns an ActiveFedora object' do
28
+ expect(factory.from_resource(resource: resource)).to be_a FileSet
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,60 @@
1
+ # frozen_string_literal: true
2
+ require 'spec_helper'
3
+ require 'wings/value_mapper'
4
+
5
+ RSpec.describe Wings::ValueMapper do
6
+ subject(:mapper) { described_class.for(value) }
7
+ let(:value) { 'a value' }
8
+ let(:uri) { RDF::URI('http://example.com/moomin') }
9
+
10
+ describe '.for' do
11
+ it 'returns a value mapper' do
12
+ expect(described_class.for(value)).to be_a described_class
13
+ end
14
+ end
15
+
16
+ describe '.result' do
17
+ it 'returns the value by default' do
18
+ expect(mapper.result).to eq value
19
+ end
20
+
21
+ context 'with an ActiveTriples::RDFSource URI value' do
22
+ let(:value) { ActiveTriples::Resource.new(uri) }
23
+
24
+ it 'casts to the RDF term' do
25
+ expect(mapper.result).to eq uri
26
+ end
27
+ end
28
+
29
+ context 'with an ActiveTriples::RDFSource bnode value' do
30
+ let(:value) { ActiveTriples::Resource.new(node) }
31
+ let(:node) { RDF::Node.new }
32
+
33
+ it 'somehow manages to map the node?'
34
+ end
35
+
36
+ context 'with an ActiveTriples::Relation value' do
37
+ let(:value) { work.source }
38
+ let(:work) { GenericWork.new(source: cast_values) }
39
+ let(:cast_values) { ['moomin', 1.125, :moomin, Time.now.utc, false, uri] }
40
+
41
+ it 'casts internal values' do
42
+ expect(mapper.result).to contain_exactly(*cast_values)
43
+ end
44
+ end
45
+
46
+ context 'with a URI value'
47
+ context 'with a blank node value'
48
+ context 'with a boolean value'
49
+ context 'with a date value'
50
+ context 'with a numeric value'
51
+
52
+ context 'with an enumerable value' do
53
+ let(:value) { ['a value'] }
54
+
55
+ it 'maps internal values' do
56
+ expect(mapper.result).to eq value
57
+ end
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,8 @@
1
+ require 'spec_helper'
2
+ require 'wings'
3
+
4
+ RSpec.describe Wings do
5
+ it 'adds mixin to AF::Base' do
6
+ expect(GenericWork.new).to respond_to :valkyrie_resource
7
+ end
8
+ end
@@ -1,4 +1,6 @@
1
- gem 'hyrax', '3.0.0-beta1'
1
+ # Hack for https://github.com/rails/rails/issues/35153
2
+ gsub_file 'Gemfile', /^gem ["']sqlite3["']$/, 'gem "sqlite3", "~> 1.3.0"'
3
+ gem 'hyrax', '3.0.0-beta2'
2
4
  run 'bundle install'
3
5
  generate 'hyrax:install', '-f'
4
6
  rails_command 'db:migrate'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hyrax
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0.pre.beta1
4
+ version: 3.0.0.pre.beta2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Coyne
@@ -14,7 +14,7 @@ authors:
14
14
  autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
- date: 2018-11-15 00:00:00.000000000 Z
17
+ date: 2019-03-11 00:00:00.000000000 Z
18
18
  dependencies:
19
19
  - !ruby/object:Gem::Dependency
20
20
  name: rails
@@ -36,20 +36,14 @@ dependencies:
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '11.5'
40
- - - ">="
41
- - !ruby/object:Gem::Version
42
- version: 11.5.2
39
+ version: '12.0'
43
40
  type: :runtime
44
41
  prerelease: false
45
42
  version_requirements: !ruby/object:Gem::Requirement
46
43
  requirements:
47
44
  - - "~>"
48
45
  - !ruby/object:Gem::Version
49
- version: '11.5'
50
- - - ">="
51
- - !ruby/object:Gem::Version
52
- version: 11.5.2
46
+ version: '12.0'
53
47
  - !ruby/object:Gem::Dependency
54
48
  name: almond-rails
55
49
  requirement: !ruby/object:Gem::Requirement
@@ -182,14 +176,14 @@ dependencies:
182
176
  requirements:
183
177
  - - "~>"
184
178
  - !ruby/object:Gem::Version
185
- version: '0.1'
179
+ version: '0.4'
186
180
  type: :runtime
187
181
  prerelease: false
188
182
  version_requirements: !ruby/object:Gem::Requirement
189
183
  requirements:
190
184
  - - "~>"
191
185
  - !ruby/object:Gem::Version
192
- version: '0.1'
186
+ version: '0.4'
193
187
  - !ruby/object:Gem::Dependency
194
188
  name: dry-transaction
195
189
  requirement: !ruby/object:Gem::Requirement
@@ -300,14 +294,14 @@ dependencies:
300
294
  requirements:
301
295
  - - ">="
302
296
  - !ruby/object:Gem::Version
303
- version: 10.5.0
297
+ version: 10.6.1
304
298
  type: :runtime
305
299
  prerelease: false
306
300
  version_requirements: !ruby/object:Gem::Requirement
307
301
  requirements:
308
302
  - - ">="
309
303
  - !ruby/object:Gem::Version
310
- version: 10.5.0
304
+ version: 10.6.1
311
305
  - !ruby/object:Gem::Dependency
312
306
  name: hydra-works
313
307
  requirement: !ruby/object:Gem::Requirement
@@ -554,16 +548,22 @@ dependencies:
554
548
  name: qa
555
549
  requirement: !ruby/object:Gem::Requirement
556
550
  requirements:
557
- - - "~>"
551
+ - - ">="
558
552
  - !ruby/object:Gem::Version
559
- version: '2.0'
553
+ version: '2'
554
+ - - "<"
555
+ - !ruby/object:Gem::Version
556
+ version: '4'
560
557
  type: :runtime
561
558
  prerelease: false
562
559
  version_requirements: !ruby/object:Gem::Requirement
563
560
  requirements:
564
- - - "~>"
561
+ - - ">="
565
562
  - !ruby/object:Gem::Version
566
- version: '2.0'
563
+ version: '2'
564
+ - - "<"
565
+ - !ruby/object:Gem::Version
566
+ version: '4'
567
567
  - !ruby/object:Gem::Dependency
568
568
  name: rails_autolink
569
569
  requirement: !ruby/object:Gem::Requirement
@@ -696,6 +696,20 @@ dependencies:
696
696
  - - "~>"
697
697
  - !ruby/object:Gem::Version
698
698
  version: '4.1'
699
+ - !ruby/object:Gem::Dependency
700
+ name: valkyrie
701
+ requirement: !ruby/object:Gem::Requirement
702
+ requirements:
703
+ - - "~>"
704
+ - !ruby/object:Gem::Version
705
+ version: 2.0.0.pre.rc3
706
+ type: :runtime
707
+ prerelease: false
708
+ version_requirements: !ruby/object:Gem::Requirement
709
+ requirements:
710
+ - - "~>"
711
+ - !ruby/object:Gem::Version
712
+ version: 2.0.0.pre.rc3
699
713
  - !ruby/object:Gem::Dependency
700
714
  name: capybara
701
715
  requirement: !ruby/object:Gem::Requirement
@@ -730,6 +744,20 @@ dependencies:
730
744
  - - "~>"
731
745
  - !ruby/object:Gem::Version
732
746
  version: 0.3.0
747
+ - !ruby/object:Gem::Dependency
748
+ name: chromedriver-helper
749
+ requirement: !ruby/object:Gem::Requirement
750
+ requirements:
751
+ - - "~>"
752
+ - !ruby/object:Gem::Version
753
+ version: '2.1'
754
+ type: :development
755
+ prerelease: false
756
+ version_requirements: !ruby/object:Gem::Requirement
757
+ requirements:
758
+ - - "~>"
759
+ - !ruby/object:Gem::Version
760
+ version: '2.1'
733
761
  - !ruby/object:Gem::Dependency
734
762
  name: database_cleaner
735
763
  requirement: !ruby/object:Gem::Requirement
@@ -750,14 +778,14 @@ dependencies:
750
778
  requirements:
751
779
  - - "~>"
752
780
  - !ruby/object:Gem::Version
753
- version: '2.0'
781
+ version: '2.2'
754
782
  type: :development
755
783
  prerelease: false
756
784
  version_requirements: !ruby/object:Gem::Requirement
757
785
  requirements:
758
786
  - - "~>"
759
787
  - !ruby/object:Gem::Version
760
- version: '2.0'
788
+ version: '2.2'
761
789
  - !ruby/object:Gem::Dependency
762
790
  name: equivalent-xml
763
791
  requirement: !ruby/object:Gem::Requirement
@@ -1054,20 +1082,6 @@ dependencies:
1054
1082
  - - "<="
1055
1083
  - !ruby/object:Gem::Version
1056
1084
  version: 3.5.0
1057
- - !ruby/object:Gem::Dependency
1058
- name: chromedriver-helper
1059
- requirement: !ruby/object:Gem::Requirement
1060
- requirements:
1061
- - - "<"
1062
- - !ruby/object:Gem::Version
1063
- version: '2.0'
1064
- type: :development
1065
- prerelease: false
1066
- version_requirements: !ruby/object:Gem::Requirement
1067
- requirements:
1068
- - - "<"
1069
- - !ruby/object:Gem::Version
1070
- version: '2.0'
1071
1085
  description: Hyrax is a featureful Samvera front-end based on the latest and greatest
1072
1086
  Samvera software components.
1073
1087
  email:
@@ -1719,6 +1733,7 @@ files:
1719
1733
  - app/services/hyrax/tolerant_select_service.rb
1720
1734
  - app/services/hyrax/user_stat_importer.rb
1721
1735
  - app/services/hyrax/versioning_service.rb
1736
+ - app/services/hyrax/visibility_intention.rb
1722
1737
  - app/services/hyrax/work_form_service.rb
1723
1738
  - app/services/hyrax/work_query_service.rb
1724
1739
  - app/services/hyrax/work_thumbnail_path_service.rb
@@ -2323,7 +2338,9 @@ files:
2323
2338
  - lib/hyrax/transactions.rb
2324
2339
  - lib/hyrax/transactions/container.rb
2325
2340
  - lib/hyrax/transactions/create_work.rb
2341
+ - lib/hyrax/transactions/destroy_work.rb
2326
2342
  - lib/hyrax/transactions/steps/apply_permission_template.rb
2343
+ - lib/hyrax/transactions/steps/destroy_work.rb
2327
2344
  - lib/hyrax/transactions/steps/ensure_admin_set.rb
2328
2345
  - lib/hyrax/transactions/steps/ensure_permission_template.rb
2329
2346
  - lib/hyrax/transactions/steps/save_work.rb
@@ -2343,6 +2360,16 @@ files:
2343
2360
  - lib/tasks/reindex.rake
2344
2361
  - lib/tasks/stats_tasks.rake
2345
2362
  - lib/tasks/workflow.rake
2363
+ - lib/wings.rb
2364
+ - lib/wings/active_fedora_converter.rb
2365
+ - lib/wings/model_transformer.rb
2366
+ - lib/wings/resource_factory.rb
2367
+ - lib/wings/valkyrie/metadata_adapter.rb
2368
+ - lib/wings/valkyrie/persister.rb
2369
+ - lib/wings/valkyrie/query_service.rb
2370
+ - lib/wings/valkyrie/resource_factory.rb
2371
+ - lib/wings/valkyrizable.rb
2372
+ - lib/wings/value_mapper.rb
2346
2373
  - spec/.gitignore
2347
2374
  - spec/abilities/ability_spec.rb
2348
2375
  - spec/abilities/admin_ability_spec.rb
@@ -2478,6 +2505,7 @@ files:
2478
2505
  - spec/factories/workflows.rb
2479
2506
  - spec/factory_tests/adminsets_factory_spec.rb
2480
2507
  - spec/factory_tests/collections_factory_spec.rb
2508
+ - spec/features/actor_stack_spec.rb
2481
2509
  - spec/features/admin_spec.rb
2482
2510
  - spec/features/batch_create_spec.rb
2483
2511
  - spec/features/batch_edit_spec.rb
@@ -2571,7 +2599,9 @@ files:
2571
2599
  - spec/helpers/hyrax/trophy_helper_spec.rb
2572
2600
  - spec/helpers/hyrax_helper_spec.rb
2573
2601
  - spec/hyrax/transactions/create_work_spec.rb
2602
+ - spec/hyrax/transactions/destroy_work_spec.rb
2574
2603
  - spec/hyrax/transactions/steps/apply_permission_template_spec.rb
2604
+ - spec/hyrax/transactions/steps/destroy_work_spec.rb
2575
2605
  - spec/hyrax/transactions/steps/ensure_admin_set_spec.rb
2576
2606
  - spec/hyrax/transactions/steps/ensure_permission_template_spec.rb
2577
2607
  - spec/hyrax/transactions/steps/save_work_spec.rb
@@ -2859,6 +2889,7 @@ files:
2859
2889
  - spec/services/hyrax/tolerant_select_service_spec.rb
2860
2890
  - spec/services/hyrax/user_stat_importer_spec.rb
2861
2891
  - spec/services/hyrax/versioning_service_spec.rb
2892
+ - spec/services/hyrax/visibility_intention_spec.rb
2862
2893
  - spec/services/hyrax/work_query_service_spec.rb
2863
2894
  - spec/services/hyrax/workflow/action_taken_service_spec.rb
2864
2895
  - spec/services/hyrax/workflow/activate_object_spec.rb
@@ -3040,6 +3071,14 @@ files:
3040
3071
  - spec/views/records/edit_fields/_language.html.erb_spec.rb
3041
3072
  - spec/views/records/edit_fields/_subject.html.erb_spec.rb
3042
3073
  - spec/views/shared/select_work_type_modal.html.erb_spec.rb
3074
+ - spec/wings/active_fedora_converter_spec.rb
3075
+ - spec/wings/model_transformer_spec.rb
3076
+ - spec/wings/valkyrie/metadata_adapter_spec.rb
3077
+ - spec/wings/valkyrie/persister_spec.rb
3078
+ - spec/wings/valkyrie/query_service_spec.rb
3079
+ - spec/wings/valkyrie/resource_factory_spec.rb
3080
+ - spec/wings/value_mapper_spec.rb
3081
+ - spec/wings_spec.rb
3043
3082
  - tasks/hyrax_dev.rake
3044
3083
  - template.rb
3045
3084
  - vendor/assets/fonts/fontawesome-webfont.svg
@@ -3079,8 +3118,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
3079
3118
  - !ruby/object:Gem::Version
3080
3119
  version: 1.3.1
3081
3120
  requirements: []
3082
- rubyforge_project:
3083
- rubygems_version: 2.6.13
3121
+ rubygems_version: 3.0.1
3084
3122
  signing_key:
3085
3123
  specification_version: 4
3086
3124
  summary: Hyrax is a front-end based on the robust Samvera framework, providing a user
@@ -3224,6 +3262,7 @@ test_files:
3224
3262
  - spec/factories/workflows.rb
3225
3263
  - spec/factory_tests/adminsets_factory_spec.rb
3226
3264
  - spec/factory_tests/collections_factory_spec.rb
3265
+ - spec/features/actor_stack_spec.rb
3227
3266
  - spec/features/admin_spec.rb
3228
3267
  - spec/features/batch_create_spec.rb
3229
3268
  - spec/features/batch_edit_spec.rb
@@ -3317,7 +3356,9 @@ test_files:
3317
3356
  - spec/helpers/hyrax/trophy_helper_spec.rb
3318
3357
  - spec/helpers/hyrax_helper_spec.rb
3319
3358
  - spec/hyrax/transactions/create_work_spec.rb
3359
+ - spec/hyrax/transactions/destroy_work_spec.rb
3320
3360
  - spec/hyrax/transactions/steps/apply_permission_template_spec.rb
3361
+ - spec/hyrax/transactions/steps/destroy_work_spec.rb
3321
3362
  - spec/hyrax/transactions/steps/ensure_admin_set_spec.rb
3322
3363
  - spec/hyrax/transactions/steps/ensure_permission_template_spec.rb
3323
3364
  - spec/hyrax/transactions/steps/save_work_spec.rb
@@ -3605,6 +3646,7 @@ test_files:
3605
3646
  - spec/services/hyrax/tolerant_select_service_spec.rb
3606
3647
  - spec/services/hyrax/user_stat_importer_spec.rb
3607
3648
  - spec/services/hyrax/versioning_service_spec.rb
3649
+ - spec/services/hyrax/visibility_intention_spec.rb
3608
3650
  - spec/services/hyrax/work_query_service_spec.rb
3609
3651
  - spec/services/hyrax/workflow/action_taken_service_spec.rb
3610
3652
  - spec/services/hyrax/workflow/activate_object_spec.rb
@@ -3786,3 +3828,11 @@ test_files:
3786
3828
  - spec/views/records/edit_fields/_language.html.erb_spec.rb
3787
3829
  - spec/views/records/edit_fields/_subject.html.erb_spec.rb
3788
3830
  - spec/views/shared/select_work_type_modal.html.erb_spec.rb
3831
+ - spec/wings/active_fedora_converter_spec.rb
3832
+ - spec/wings/model_transformer_spec.rb
3833
+ - spec/wings/valkyrie/metadata_adapter_spec.rb
3834
+ - spec/wings/valkyrie/persister_spec.rb
3835
+ - spec/wings/valkyrie/query_service_spec.rb
3836
+ - spec/wings/valkyrie/resource_factory_spec.rb
3837
+ - spec/wings/value_mapper_spec.rb
3838
+ - spec/wings_spec.rb