iiif_print 2.0.1 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +103 -143
  3. data/app/actors/iiif_print/actors/cleanup_file_sets_actor_decorator.rb +1 -0
  4. data/app/actors/iiif_print/actors/file_set_actor_decorator.rb +1 -0
  5. data/app/helpers/iiif_print/iiif_helper_decorator.rb +1 -0
  6. data/app/indexers/concerns/iiif_print/child_work_indexer_decorator.rb +45 -0
  7. data/app/indexers/concerns/iiif_print/{file_set_indexer.rb → file_set_indexer_decorator.rb} +15 -1
  8. data/app/jobs/iiif_print/jobs/child_works_from_pdf_job.rb +8 -2
  9. data/app/listeners/iiif_print/listener.rb +1 -1
  10. data/app/models/concerns/iiif_print/solr_document_decorator.rb +47 -0
  11. data/app/models/iiif_print/iiif_search_decorator.rb +1 -0
  12. data/app/models/iiif_print/iiif_search_response_decorator.rb +1 -0
  13. data/app/presenters/iiif_print/file_set_presenter_decorator.rb +1 -0
  14. data/app/presenters/iiif_print/{iiif_manifest_presenter_behavior.rb → iiif_manifest_presenter/display_image_presenter_decorator.rb} +4 -32
  15. data/app/presenters/iiif_print/iiif_manifest_presenter_decorator.rb +35 -0
  16. data/app/presenters/iiif_print/{iiif_manifest_presenter_factory_behavior.rb → iiif_manifest_presenter_factory_decorator.rb} +2 -1
  17. data/app/renderers/hyrax/renderers/faceted_attribute_renderer_decorator.rb +1 -0
  18. data/app/services/iiif_print/derivative_rodeo_service.rb +1 -1
  19. data/app/services/iiif_print/{manifest_builder_service_behavior.rb → manifest_builder_service_decorator.rb} +2 -1
  20. data/app/services/iiif_print/simple_schema_loader_decorator.rb +1 -0
  21. data/app/transactions/hyrax/transactions/steps/delete_all_file_sets_decorator.rb +2 -0
  22. data/config/metadata/child_works_from_pdf_splitting.yaml +6 -0
  23. data/lib/iiif_print/base_derivative_service.rb +1 -1
  24. data/lib/iiif_print/blacklight_iiif_search/annotation_decorator.rb +1 -0
  25. data/lib/iiif_print/configuration.rb +1 -1
  26. data/lib/iiif_print/data/fileset_helper.rb +1 -1
  27. data/lib/iiif_print/engine.rb +6 -53
  28. data/lib/iiif_print/text_extraction_derivative_service.rb +4 -1
  29. data/lib/iiif_print/version.rb +1 -1
  30. data/lib/iiif_print/works_controller_behavior_decorator.rb +13 -0
  31. data/lib/iiif_print.rb +0 -2
  32. metadata +11 -11
  33. data/app/indexers/concerns/iiif_print/child_work_indexer.rb +0 -27
  34. data/app/models/concerns/iiif_print/solr/document.rb +0 -63
  35. data/config/initializers/simple_schema_loader.rb +0 -1
  36. data/lib/iiif_print/works_controller_behavior.rb +0 -9
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 494bfcd0e3f6c84a7b6d81ae45aea07c5a6259a7d692e079bb24ea29f6908442
4
- data.tar.gz: fb266b5b22d36bc3cd2e99697f82dab7093912e84957a71e28c84aaef657157b
3
+ metadata.gz: aa3dd970a2698e24cea1ee94cbc62540f86a817b9cfcc9befa4d2c5b918adc29
4
+ data.tar.gz: 860a39b300ec241df49da8cfd562b78e4b8e9d85556c732ffdb48b3bf63ff253
5
5
  SHA512:
6
- metadata.gz: e48dff9d57b8043d804096e923afe4e21609e7f1ae067e84e1afc895bfd38781f532c036ac513316d517675c45d74f6e4c014e25b578aa3b0074371cdb7fffc8
7
- data.tar.gz: 70d83ecf95e10f177c976c2e241be8f613084ac7e360a946edb1dd3919a19140f36ac2c6abe085f5a12bdc62d2ae565bacab3dfd1c64f1645213c5484f46bbe8
6
+ metadata.gz: '0940916e73b7d643c7db3d2f407c65efdda23d89b7710984fe2845d687b2899ea995faf945d5c8dc083755f53efca10bde06938927ae2c35e4652a981a963c0c'
7
+ data.tar.gz: ef6ff81415505569c2e546428492c686e31fb5a6ac0b1b85a21f7a82d355f6e772d92a57d7fc057f6ddb54c85f97f429981a1320410cdc1cd193ff6892ba295d
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
- remote: /app/samvera/hyrax-webapp
2
+ remote: .
3
3
  specs:
4
- iiif_print (1.0.0)
4
+ iiif_print (3.0.0)
5
5
  blacklight_iiif_search (>= 1.0, < 3.0)
6
6
  derivative-rodeo (~> 0.5)
7
7
  hyrax (>= 2.5, < 6)
@@ -65,7 +65,7 @@ GEM
65
65
  activemodel (= 5.2.8.1)
66
66
  activesupport (= 5.2.8.1)
67
67
  arel (>= 9.0)
68
- activerecord-import (1.5.1)
68
+ activerecord-import (1.7.0)
69
69
  activerecord (>= 4.2)
70
70
  activestorage (5.2.8.1)
71
71
  actionpack (= 5.2.8.1)
@@ -76,8 +76,8 @@ GEM
76
76
  i18n (>= 0.7, < 2)
77
77
  minitest (~> 5.1)
78
78
  tzinfo (~> 1.1)
79
- addressable (2.8.5)
80
- public_suffix (>= 2.0.2, < 6.0)
79
+ addressable (2.8.7)
80
+ public_suffix (>= 2.0.2, < 7.0)
81
81
  almond-rails (0.3.0)
82
82
  rails (>= 4.2)
83
83
  arel (9.0.0)
@@ -87,34 +87,34 @@ GEM
87
87
  awesome_nested_set (3.6.0)
88
88
  activerecord (>= 4.0.0, < 7.2)
89
89
  aws-eventstream (1.3.0)
90
- aws-partitions (1.857.0)
91
- aws-sdk-core (3.188.0)
92
- aws-eventstream (~> 1, >= 1.0.2)
90
+ aws-partitions (1.951.0)
91
+ aws-sdk-core (3.201.0)
92
+ aws-eventstream (~> 1, >= 1.3.0)
93
93
  aws-partitions (~> 1, >= 1.651.0)
94
- aws-sigv4 (~> 1.5)
94
+ aws-sigv4 (~> 1.8)
95
95
  jmespath (~> 1, >= 1.6.1)
96
- aws-sdk-kms (1.73.0)
97
- aws-sdk-core (~> 3, >= 3.188.0)
98
- aws-sigv4 (~> 1.1)
99
- aws-sdk-s3 (1.140.0)
100
- aws-sdk-core (~> 3, >= 3.188.0)
96
+ aws-sdk-kms (1.88.0)
97
+ aws-sdk-core (~> 3, >= 3.201.0)
98
+ aws-sigv4 (~> 1.5)
99
+ aws-sdk-s3 (1.156.0)
100
+ aws-sdk-core (~> 3, >= 3.201.0)
101
101
  aws-sdk-kms (~> 1)
102
- aws-sigv4 (~> 1.6)
103
- aws-sdk-sqs (1.68.0)
104
- aws-sdk-core (~> 3, >= 3.188.0)
105
- aws-sigv4 (~> 1.1)
106
- aws-sigv4 (1.7.0)
102
+ aws-sigv4 (~> 1.5)
103
+ aws-sdk-sqs (1.80.0)
104
+ aws-sdk-core (~> 3, >= 3.201.0)
105
+ aws-sigv4 (~> 1.5)
106
+ aws-sigv4 (1.8.0)
107
107
  aws-eventstream (~> 1, >= 1.0.2)
108
108
  babel-source (5.8.35)
109
109
  babel-transpiler (0.7.0)
110
110
  babel-source (>= 4.0, < 6)
111
111
  execjs (~> 2.0)
112
112
  backport (1.2.0)
113
+ base64 (0.2.0)
113
114
  bcp47 (0.3.3)
114
115
  i18n
115
- bcrypt (3.1.20)
116
116
  benchmark (0.3.0)
117
- bindex (0.8.1)
117
+ bigdecimal (3.1.8)
118
118
  bixby (5.0.2)
119
119
  rubocop (= 1.28.2)
120
120
  rubocop-ast
@@ -158,8 +158,7 @@ GEM
158
158
  ruby-box
159
159
  signet (~> 0.8)
160
160
  typhoeus
161
- builder (3.2.4)
162
- byebug (11.1.3)
161
+ builder (3.3.0)
163
162
  cancancan (1.17.0)
164
163
  carrierwave (1.3.4)
165
164
  activemodel (>= 4.0.0)
@@ -167,14 +166,7 @@ GEM
167
166
  mime-types (>= 1.16)
168
167
  ssrf_filter (~> 1.0, < 1.1.0)
169
168
  clipboard-rails (1.7.1)
170
- coffee-rails (4.2.2)
171
- coffee-script (>= 2.2.0)
172
- railties (>= 4.0.0)
173
- coffee-script (2.4.1)
174
- coffee-script-source
175
- execjs
176
- coffee-script-source (1.12.2)
177
- concurrent-ruby (1.2.2)
169
+ concurrent-ruby (1.3.3)
178
170
  connection_pool (2.4.1)
179
171
  coveralls (0.8.23)
180
172
  json (>= 1.8, < 3)
@@ -183,6 +175,7 @@ GEM
183
175
  thor (>= 0.19.4, < 2.0)
184
176
  tins (~> 1.6)
185
177
  crass (1.0.6)
178
+ csv (3.3.0)
186
179
  database_cleaner (1.99.0)
187
180
  date (3.3.4)
188
181
  declarative (0.0.20)
@@ -191,7 +184,7 @@ GEM
191
184
  declarative-option (0.1.0)
192
185
  deprecation (1.1.0)
193
186
  activesupport
194
- derivative-rodeo (0.5.2)
187
+ derivative-rodeo (0.5.3)
195
188
  activesupport (>= 5)
196
189
  aws-sdk-s3
197
190
  aws-sdk-sqs
@@ -200,15 +193,7 @@ GEM
200
193
  mime-types
201
194
  mini_magick
202
195
  nokogiri
203
- devise (4.9.3)
204
- bcrypt (~> 3.0)
205
- orm_adapter (~> 0.1)
206
- railties (>= 4.1.0)
207
- responders
208
- warden (~> 1.2.3)
209
- devise-guests (0.8.2)
210
- devise
211
- diff-lcs (1.5.0)
196
+ diff-lcs (1.5.1)
212
197
  disposable (0.4.7)
213
198
  declarative (>= 0.0.9, < 1.0.0)
214
199
  declarative-builder (< 0.2.0)
@@ -289,11 +274,11 @@ GEM
289
274
  scanf (~> 1.0)
290
275
  sxp (~> 1.2)
291
276
  unicode-types (~> 1.8)
292
- engine_cart (2.5.0)
277
+ engine_cart (2.6.0)
293
278
  rails (>= 5.0)
294
279
  equivalent-xml (0.6.0)
295
280
  nokogiri (>= 1.4.3)
296
- erubi (1.12.0)
281
+ erubi (1.13.0)
297
282
  ethon (0.16.0)
298
283
  ffi (>= 1.15.0)
299
284
  execjs (2.9.1)
@@ -305,7 +290,7 @@ GEM
305
290
  faraday
306
291
  fcrepo_wrapper (0.9.0)
307
292
  ruby-progressbar
308
- ffi (1.16.3)
293
+ ffi (1.17.0)
309
294
  flipflop (2.7.1)
310
295
  activesupport (>= 4.0)
311
296
  terminal-table (>= 1.8)
@@ -313,10 +298,12 @@ GEM
313
298
  jquery-rails
314
299
  font-awesome-rails (4.7.0.8)
315
300
  railties (>= 3.2, < 8.0)
316
- geocoder (1.8.2)
301
+ geocoder (1.8.3)
302
+ base64 (>= 0.1.0)
303
+ csv (>= 3.0.0)
317
304
  globalid (1.1.0)
318
305
  activesupport (>= 5.0)
319
- google-apis-core (0.11.2)
306
+ google-apis-core (0.11.3)
320
307
  addressable (~> 2.5, >= 2.5.1)
321
308
  googleauth (>= 0.16.2, < 2.a)
322
309
  httpclient (>= 2.8.1, < 3.a)
@@ -324,8 +311,7 @@ GEM
324
311
  representable (~> 3.0)
325
312
  retriable (>= 2.0, < 4.a)
326
313
  rexml
327
- webrick
328
- google-apis-drive_v3 (0.44.0)
314
+ google-apis-drive_v3 (0.46.0)
329
315
  google-apis-core (>= 0.11.0, < 2.a)
330
316
  googleauth (1.8.1)
331
317
  faraday (>= 0.17.3, < 3.a)
@@ -333,7 +319,7 @@ GEM
333
319
  multi_json (~> 1.11)
334
320
  os (>= 0.9, < 2.0)
335
321
  signet (>= 0.16, < 2.a)
336
- haml (6.2.3)
322
+ haml (6.3.0)
337
323
  temple (>= 0.8.2)
338
324
  thor
339
325
  tilt
@@ -341,7 +327,8 @@ GEM
341
327
  hiredis (0.6.3)
342
328
  htmlentities (4.3.4)
343
329
  http_logger (0.7.0)
344
- httparty (0.21.0)
330
+ httparty (0.22.0)
331
+ csv
345
332
  mini_mime (>= 1.0.0)
346
333
  multi_xml (>= 0.5.2)
347
334
  httpclient (2.8.3)
@@ -445,17 +432,17 @@ GEM
445
432
  signet
446
433
  tinymce-rails (~> 5.10)
447
434
  valkyrie (~> 2, >= 2.1.1)
448
- i18n (1.14.1)
435
+ i18n (1.14.5)
449
436
  concurrent-ruby (~> 1.0)
450
437
  ice_nine (0.11.2)
451
438
  iiif-presentation (1.1.0)
452
439
  activesupport (>= 3.2.18)
453
440
  faraday (>= 0.9)
454
441
  json
455
- iiif_manifest (1.3.1)
442
+ iiif_manifest (1.5.0)
456
443
  activesupport (>= 4)
457
- jaro_winkler (1.5.6)
458
- jbuilder (2.11.5)
444
+ jaro_winkler (1.6.0)
445
+ jbuilder (2.12.0)
459
446
  actionview (>= 5.0.0)
460
447
  activesupport (>= 5.0.0)
461
448
  jmespath (1.6.2)
@@ -470,7 +457,7 @@ GEM
470
457
  thor (>= 0.14, < 2.0)
471
458
  jquery-ui-rails (6.0.1)
472
459
  railties (>= 3.2.16)
473
- json (2.6.3)
460
+ json (2.7.2)
474
461
  json-canonicalization (0.3.1)
475
462
  json-ld (3.1.10)
476
463
  htmlentities (~> 4.3)
@@ -482,9 +469,10 @@ GEM
482
469
  json-ld-preloaded (3.1.6)
483
470
  json-ld (~> 3.1)
484
471
  rdf (~> 3.1)
485
- json-schema (4.1.1)
472
+ json-schema (4.3.0)
486
473
  addressable (>= 2.8)
487
- jwt (2.7.1)
474
+ jwt (2.8.2)
475
+ base64
488
476
  kaminari (1.2.2)
489
477
  activesupport (>= 4.1.0)
490
478
  kaminari-actionview (= 1.2.2)
@@ -566,40 +554,42 @@ GEM
566
554
  mailboxer (0.15.1)
567
555
  carrierwave (>= 0.5.8)
568
556
  rails (>= 5.0.0)
569
- marcel (1.0.2)
557
+ marcel (1.0.4)
570
558
  matrix (0.4.2)
571
- method_source (1.0.0)
572
- mime-types (3.5.1)
559
+ method_source (1.1.0)
560
+ mime-types (3.5.2)
573
561
  mime-types-data (~> 3.2015)
574
- mime-types-data (3.2023.1003)
575
- mini_magick (4.12.0)
562
+ mime-types-data (3.2024.0702)
563
+ mini_magick (4.13.1)
576
564
  mini_mime (1.1.5)
577
- mini_portile2 (2.8.5)
578
- minitest (5.20.0)
565
+ mini_portile2 (2.8.7)
566
+ minitest (5.24.1)
567
+ mize (0.4.1)
568
+ protocol (~> 2.0)
579
569
  multi_json (1.15.0)
580
570
  multi_xml (0.6.0)
581
- multipart-post (2.3.0)
571
+ multipart-post (2.4.1)
582
572
  nest (3.2.0)
583
573
  redic
584
574
  net-http-persistent (4.0.2)
585
575
  connection_pool (~> 2.2)
586
- net-imap (0.4.6)
576
+ net-imap (0.4.14)
587
577
  date
588
578
  net-protocol
589
579
  net-pop (0.1.2)
590
580
  net-protocol
591
581
  net-protocol (0.2.2)
592
582
  timeout
593
- net-smtp (0.4.0)
583
+ net-smtp (0.5.0)
594
584
  net-protocol
595
585
  newspaper_works_fixtures (0.3.1)
596
586
  rails (~> 5.0)
597
- nio4r (2.6.1)
587
+ nio4r (2.7.3)
598
588
  noid (0.9.0)
599
589
  noid-rails (3.0.3)
600
590
  actionpack (>= 5.0.0, < 7)
601
591
  noid (~> 0.9)
602
- nokogiri (1.15.5)
592
+ nokogiri (1.15.6)
603
593
  mini_portile2 (~> 2.8.2)
604
594
  racc (~> 1.4)
605
595
  oauth (1.1.0)
@@ -616,18 +606,18 @@ GEM
616
606
  rack (>= 1.2, < 4)
617
607
  openseadragon (0.6.0)
618
608
  rails (> 3.2.0)
619
- orm_adapter (0.5.0)
620
609
  os (1.1.4)
621
- parallel (1.23.0)
622
- parser (3.2.2.4)
610
+ parallel (1.25.1)
611
+ parser (3.3.3.0)
623
612
  ast (~> 2.4.1)
624
613
  racc
625
614
  parslet (2.0.0)
626
615
  posix-spawn (0.3.15)
627
616
  power_converter (0.1.2)
617
+ protocol (2.0.0)
618
+ ruby_parser (~> 3.0)
628
619
  psych (3.3.4)
629
- public_suffix (5.0.4)
630
- puma (3.12.6)
620
+ public_suffix (5.1.1)
631
621
  qa (5.11.0)
632
622
  activerecord-import
633
623
  deprecation
@@ -637,8 +627,8 @@ GEM
637
627
  nokogiri (~> 1.6)
638
628
  rails (>= 5.0, < 7.2)
639
629
  rdf
640
- racc (1.7.3)
641
- rack (2.2.8)
630
+ racc (1.8.0)
631
+ rack (2.2.9)
642
632
  rack-test (2.1.0)
643
633
  rack (>= 1.3)
644
634
  rails (5.2.8.1)
@@ -676,9 +666,9 @@ GEM
676
666
  rake (>= 0.8.7)
677
667
  thor (>= 0.19.0, < 2.0)
678
668
  rainbow (3.1.1)
679
- rake (13.1.0)
669
+ rake (13.2.1)
680
670
  rb-fsevent (0.11.2)
681
- rb-inotify (0.10.1)
671
+ rb-inotify (0.11.1)
682
672
  ffi (~> 1.0)
683
673
  rdf (3.2.11)
684
674
  link_header (~> 0.0, >= 0.0.8)
@@ -754,35 +744,33 @@ GEM
754
744
  reform-rails (0.2.6)
755
745
  activemodel (>= 5.0)
756
746
  reform (>= 2.3.1, < 3.0.0)
757
- regexp_parser (2.8.2)
747
+ regexp_parser (2.9.2)
758
748
  representable (3.0.4)
759
749
  declarative (< 0.1.0)
760
750
  declarative-option (< 0.2.0)
761
751
  uber (< 0.2.0)
762
- request_store (1.5.1)
752
+ request_store (1.7.0)
763
753
  rack (>= 1.4)
764
- responders (3.1.1)
765
- actionpack (>= 5.2)
766
- railties (>= 5.2)
767
754
  retriable (3.1.2)
768
755
  reverse_markdown (2.1.1)
769
756
  nokogiri
770
- rexml (3.2.6)
771
- rsolr (2.5.0)
757
+ rexml (3.3.1)
758
+ strscan
759
+ rsolr (2.6.0)
772
760
  builder (>= 2.1.2)
773
761
  faraday (>= 0.9, < 3, != 2.0.0)
774
- rspec-activemodel-mocks (1.1.0)
762
+ rspec-activemodel-mocks (1.2.0)
775
763
  activemodel (>= 3.0)
776
764
  activesupport (>= 3.0)
777
765
  rspec-mocks (>= 2.99, < 4.0)
778
- rspec-core (3.12.2)
779
- rspec-support (~> 3.12.0)
780
- rspec-expectations (3.12.3)
766
+ rspec-core (3.13.0)
767
+ rspec-support (~> 3.13.0)
768
+ rspec-expectations (3.13.1)
781
769
  diff-lcs (>= 1.2.0, < 2.0)
782
- rspec-support (~> 3.12.0)
783
- rspec-mocks (3.12.6)
770
+ rspec-support (~> 3.13.0)
771
+ rspec-mocks (3.13.1)
784
772
  diff-lcs (>= 1.2.0, < 2.0)
785
- rspec-support (~> 3.12.0)
773
+ rspec-support (~> 3.13.0)
786
774
  rspec-rails (5.1.2)
787
775
  actionpack (>= 5.2)
788
776
  activesupport (>= 5.2)
@@ -791,7 +779,7 @@ GEM
791
779
  rspec-expectations (~> 3.10)
792
780
  rspec-mocks (~> 3.10)
793
781
  rspec-support (~> 3.10)
794
- rspec-support (3.12.1)
782
+ rspec-support (3.13.1)
795
783
  rubocop (1.28.2)
796
784
  parallel (~> 1.10)
797
785
  parser (>= 3.1.0.0)
@@ -801,8 +789,8 @@ GEM
801
789
  rubocop-ast (>= 1.17.0, < 2.0)
802
790
  ruby-progressbar (~> 1.7)
803
791
  unicode-display_width (>= 1.4.0, < 3.0)
804
- rubocop-ast (1.30.0)
805
- parser (>= 3.2.1.0)
792
+ rubocop-ast (1.31.3)
793
+ parser (>= 3.3.1.0)
806
794
  rubocop-performance (1.19.1)
807
795
  rubocop (>= 1.7.0, < 2.0)
808
796
  rubocop-ast (>= 0.4.0)
@@ -819,6 +807,9 @@ GEM
819
807
  oauth2
820
808
  ruby-progressbar (1.13.0)
821
809
  ruby2_keywords (0.0.5)
810
+ ruby_parser (3.21.0)
811
+ racc (~> 1.5)
812
+ sexp_processor (~> 4.16)
822
813
  rubyzip (2.3.2)
823
814
  samvera-nesting_indexer (2.0.0)
824
815
  dry-equalizer
@@ -837,6 +828,7 @@ GEM
837
828
  ffi (~> 1.9)
838
829
  scanf (1.0.0)
839
830
  select2-rails (3.5.11)
831
+ sexp_processor (4.17.1)
840
832
  shacl (0.1.1)
841
833
  json-ld (~> 3.1, >= 3.1.7)
842
834
  rdf (~> 3.1, >= 3.1.8)
@@ -853,12 +845,12 @@ GEM
853
845
  sxp (~> 1.1)
854
846
  shoulda-matchers (3.1.3)
855
847
  activesupport (>= 4.0.0)
856
- signet (0.18.0)
848
+ signet (0.19.0)
857
849
  addressable (~> 2.8)
858
850
  faraday (>= 0.17.5, < 3.a)
859
851
  jwt (>= 1.5, < 3.0)
860
852
  multi_json (~> 1.10)
861
- simple_form (5.3.0)
853
+ simple_form (5.3.1)
862
854
  actionpack (>= 5.2)
863
855
  activemodel (>= 5.2)
864
856
  simplecov (0.16.1)
@@ -902,7 +894,8 @@ GEM
902
894
  sparql-client (3.2.2)
903
895
  net-http-persistent (~> 4.0, >= 4.0.2)
904
896
  rdf (~> 3.2, >= 3.2.11)
905
- sprockets (3.7.2)
897
+ sprockets (3.7.3)
898
+ base64
906
899
  concurrent-ruby (~> 1.0)
907
900
  rack (> 1, < 3)
908
901
  sprockets-es6 (0.9.2)
@@ -913,29 +906,27 @@ GEM
913
906
  actionpack (>= 5.2)
914
907
  activesupport (>= 5.2)
915
908
  sprockets (>= 3.0.0)
916
- sqlite3 (1.7.2)
917
- mini_portile2 (~> 2.8.0)
918
909
  ssrf_filter (1.0.8)
910
+ strscan (3.1.0)
919
911
  sxp (1.2.4)
920
912
  matrix (~> 0.4)
921
913
  rdf (~> 3.2)
922
914
  sync (0.5.0)
923
915
  temple (0.10.3)
924
- term-ansicolor (1.7.1)
916
+ term-ansicolor (1.10.2)
917
+ mize
925
918
  tins (~> 1.0)
926
919
  terminal-table (3.0.2)
927
920
  unicode-display_width (>= 1.1.1, < 3)
928
- thor (1.3.0)
921
+ thor (1.3.1)
929
922
  thread_safe (0.3.6)
930
- tilt (2.3.0)
923
+ tilt (2.4.0)
931
924
  timeout (0.4.1)
932
- tins (1.32.1)
925
+ tins (1.33.0)
926
+ bigdecimal
933
927
  sync
934
928
  tinymce-rails (5.10.9)
935
929
  railties (>= 3.1.1)
936
- turbolinks (5.2.1)
937
- turbolinks-source (~> 5.2)
938
- turbolinks-source (5.2.0)
939
930
  twitter-typeahead-rails (0.11.1.pre.corejavascript)
940
931
  actionpack (>= 3.1)
941
932
  jquery-rails
@@ -945,8 +936,6 @@ GEM
945
936
  tzinfo (1.2.11)
946
937
  thread_safe (~> 0.1)
947
938
  uber (0.1.0)
948
- uglifier (4.2.0)
949
- execjs (>= 0.3.0, < 3)
950
939
  unicode-display_width (2.5.0)
951
940
  unicode-types (1.9.0)
952
941
  valkyrie (2.2.0)
@@ -964,62 +953,33 @@ GEM
964
953
  rdf-vocab
965
954
  reform (~> 2.2)
966
955
  reform-rails
967
- version_gem (1.1.3)
968
- warden (1.2.9)
969
- rack (>= 2.0.9)
970
- web-console (3.7.0)
971
- actionview (>= 5.0)
972
- activemodel (>= 5.0)
973
- bindex (>= 0.4.0)
974
- railties (>= 5.0)
975
- webrick (1.8.1)
956
+ version_gem (1.1.4)
976
957
  websocket-driver (0.7.6)
977
958
  websocket-extensions (>= 0.1.0)
978
959
  websocket-extensions (0.1.5)
979
- yard (0.9.34)
980
- zeitwerk (2.6.12)
960
+ yard (0.9.36)
961
+ zeitwerk (2.6.16)
981
962
 
982
963
  PLATFORMS
983
964
  ruby
984
965
 
985
966
  DEPENDENCIES
986
967
  bixby
987
- bootstrap-sass (~> 3.0)
988
- byebug
989
- coffee-rails (~> 4.2)
990
968
  coveralls
991
969
  database_cleaner (~> 1.3)
992
- devise
993
- devise-guests (~> 0.6)
994
970
  engine_cart (~> 2.2)
995
971
  factory_bot (~> 4.4)
996
- fcrepo_wrapper
972
+ fcrepo_wrapper (~> 0.5, >= 0.5.1)
997
973
  iiif_print!
998
- jbuilder (~> 2.5)
999
- jquery-rails
1000
974
  json-canonicalization (= 0.3.1)
1001
975
  newspaper_works_fixtures (~> 0.3, >= 0.3.1)
1002
- puma (~> 3.11)
1003
- rails (~> 5.2.8, >= 5.2.8.1)
1004
976
  rails-controller-testing (~> 1)
1005
- redis (= 4.8.1)
1006
- rsolr (>= 1.0, < 3)
1007
977
  rspec-activemodel-mocks
1008
978
  rspec-rails
1009
- sass-rails (~> 5.0)
1010
979
  shoulda-matchers (~> 3.1)
1011
980
  solargraph
1012
- solr_wrapper (>= 0.3)
1013
- sqlite3
1014
- turbolinks (~> 5)
1015
- twitter-typeahead-rails (= 0.11.1.pre.corejavascript)
1016
- tzinfo-data
1017
- uglifier (>= 1.3.0)
1018
- web-console (>= 3.3.0)
981
+ solr_wrapper (>= 1.1, < 3.0)
1019
982
  yard
1020
983
 
1021
- RUBY VERSION
1022
- ruby 2.7.6p219
1023
-
1024
984
  BUNDLED WITH
1025
985
  2.3.20
@@ -22,3 +22,4 @@ module IiifPrint
22
22
  end
23
23
  end
24
24
  end
25
+ Hyrax::Actors::CleanupFileSetsActor.prepend(IiifPrint::Actors::CleanupFileSetsActorDecorator)
@@ -56,3 +56,4 @@ module IiifPrint
56
56
  end
57
57
  end
58
58
  end
59
+ Hyrax::Actors::FileSetActor.prepend(IiifPrint::Actors::FileSetActorDecorator)
@@ -30,3 +30,4 @@ module IiifPrint
30
30
  end
31
31
  end
32
32
  end
33
+ Hyrax::IiifHelper.prepend(IiifPrint::IiifHelperDecorator)
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ module IiifPrint
4
+ module ChildWorkIndexerDecorator
5
+ def to_solr
6
+ super.tap do |index_document|
7
+ index_solr_doc(index_document)
8
+ end
9
+ end
10
+
11
+ def generate_solr_document
12
+ super.tap do |solr_doc|
13
+ index_solr_doc(solr_doc)
14
+ end
15
+ end
16
+
17
+ private
18
+
19
+ def index_solr_doc(solr_doc)
20
+ object ||= @object || resource
21
+ solr_doc['is_child_bsi'] ||= object.try(:is_child)
22
+ solr_doc['split_from_pdf_id_ssi'] ||= object.try(:split_from_pdf_id)
23
+ solr_doc['is_page_of_ssim'] = iiif_print_lineage_service.ancestor_ids_for(object)
24
+ solr_doc['member_ids_ssim'] = iiif_print_lineage_service.descendent_member_ids_for(object)
25
+ end
26
+ end
27
+ end
28
+
29
+ if ActiveModel::Type::Boolean.new.cast(ENV.fetch('HYRAX_VALKYRIE', false))
30
+ # Newer versions of Hyrax favor `Hyrax::Indexers::PcdmObjectIndexer` and deprecate
31
+ # `Hyrax::ValkyrieWorkIndexer`
32
+ indexers = Hyrax.config.curation_concerns.map do |concern|
33
+ "#{concern}ResourceIndexer".safe_constantize
34
+ end
35
+ indexers.each { |indexer| indexer.prepend(IiifPrint::ChildWorkIndexerDecorator) }
36
+
37
+ # Versions 3.0+ of Hyrax have `Hyrax::ValkyrieWorkIndexer` so we want to decorate that as
38
+ # well. We want to use the elsif construct because later on Hyrax::ValkyrieWorkIndexer
39
+ # inherits from Hyrax::Indexers::PcdmObjectIndexer and only implements:
40
+ # `def initialize(*args); super; end`
41
+ 'Hyrax::ValkyrieWorkIndexer'.safe_constantize&.prepend(IiifPrint::ChildWorkIndexerDecorator)
42
+ else
43
+ # The ActiveFedora::Base indexer for Works
44
+ Hyrax::WorkIndexer.prepend(IiifPrint::ChildWorkIndexerDecorator)
45
+ end
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module IiifPrint
4
- module FileSetIndexer
4
+ module FileSetIndexerDecorator
5
5
  def to_solr
6
6
  super.tap do |index_document|
7
7
  index_solr_doc(index_document)
@@ -55,3 +55,17 @@ module IiifPrint
55
55
  end
56
56
  end
57
57
  end
58
+ if ActiveModel::Type::Boolean.new.cast(ENV.fetch('HYRAX_VALKYRIE', false))
59
+ # Newer versions of Hyrax favor `Hyrax::Indexers::FileSetIndexer` and deprecate
60
+ # `Hyrax::ValkyrieFileSetIndexer`.
61
+ 'Hyrax::Indexers::FileSetIndexer'.safe_constantize&.prepend(IiifPrint::FileSetIndexerDecorator)
62
+
63
+ # Versions 3.0+ of Hyrax have `Hyrax::ValkyrieFileSetIndexer` so we want to decorate that as
64
+ # well. We want to use the elsif construct because later on Hyrax::ValkyrieFileSetIndexer
65
+ # inherits from Hyrax::Indexers::FileSetIndexer and only implements:
66
+ # `def initialize(*args); super; end`
67
+ 'Hyrax::ValkyrieFileSetIndexer'.safe_constantize&.prepend(IiifPrint::FileSetIndexerDecorator)
68
+ else
69
+ # The ActiveFedora::Base indexer for FileSets
70
+ Hyrax::FileSetIndexer.prepend(IiifPrint::FileSetIndexerDecorator)
71
+ end