geoblacklight_admin 0.5.0 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (162) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +24 -11
  3. data/Rakefile +83 -47
  4. data/app/assets/javascripts/geoblacklight_admin/chosen.js +1 -0
  5. data/app/assets/stylesheets/geoblacklight_admin/_core.scss +24 -0
  6. data/app/assets/stylesheets/geoblacklight_admin/modules/_nav.scss +0 -5
  7. data/app/assets/stylesheets/geoblacklight_admin/modules/_tables.scss +1 -1
  8. data/app/controllers/admin/admin_controller.rb +16 -0
  9. data/app/controllers/admin/advanced_search_controller.rb +7 -1
  10. data/app/controllers/admin/assets_controller.rb +47 -32
  11. data/app/controllers/admin/bookmarks_controller.rb +17 -5
  12. data/app/controllers/admin/bulk_actions_controller.rb +32 -1
  13. data/app/controllers/admin/document_accesses_controller.rb +38 -0
  14. data/app/controllers/admin/document_assets_controller.rb +47 -89
  15. data/app/controllers/admin/document_distributions_controller.rb +172 -0
  16. data/app/controllers/admin/documents_controller.rb +43 -57
  17. data/app/controllers/admin/elements_controller.rb +24 -0
  18. data/app/controllers/admin/form_elements_controller.rb +33 -0
  19. data/app/controllers/admin/ids_controller.rb +6 -0
  20. data/app/controllers/admin/import_documents_controller.rb +11 -1
  21. data/app/controllers/admin/imports_controller.rb +34 -4
  22. data/app/controllers/admin/mappings_controller.rb +15 -0
  23. data/app/controllers/admin/notifications_controller.rb +27 -0
  24. data/app/controllers/admin/reference_types_controller.rb +106 -0
  25. data/app/controllers/admin/search_controller.rb +7 -0
  26. data/app/controllers/admin/users_controller.rb +10 -0
  27. data/app/helpers/asset_helper.rb +6 -0
  28. data/app/helpers/bulk_actions_helper.rb +10 -1
  29. data/app/helpers/document_helper.rb +36 -0
  30. data/app/helpers/geoblacklight_admin_helper.rb +88 -8
  31. data/app/helpers/mappings_helper.rb +26 -0
  32. data/app/indexers/document_indexer.rb +22 -2
  33. data/app/javascript/channels/consumer.js +6 -0
  34. data/app/javascript/channels/export_channel.js +30 -0
  35. data/app/javascript/channels/index.js +3 -0
  36. data/app/javascript/controllers/results_controller.js +14 -0
  37. data/app/javascript/index.js +8 -2
  38. data/app/jobs/bulk_action_revert_document_job.rb +4 -12
  39. data/app/jobs/bulk_action_run_document_job.rb +2 -10
  40. data/app/jobs/export_job.rb +35 -8
  41. data/app/jobs/geoblacklight_admin/delete_thumbnail_job.rb +19 -0
  42. data/app/jobs/geoblacklight_admin/remove_parent_dct_references_uri_job.rb +16 -0
  43. data/app/jobs/geoblacklight_admin/set_parent_dct_references_uri_job.rb +17 -0
  44. data/app/jobs/geoblacklight_admin/store_image_job.rb +22 -0
  45. data/app/jobs/import_document_job.rb +1 -4
  46. data/app/jobs/import_run_job.rb +1 -1
  47. data/app/models/admin/bookmark.rb +1 -1
  48. data/app/models/asset.rb +20 -0
  49. data/app/models/bulk_action.rb +2 -1
  50. data/app/models/bulk_actions/change_publication_state.rb +0 -25
  51. data/app/models/bulk_actions/delete_thumbnails.rb +6 -0
  52. data/app/models/bulk_actions/draft_document.rb +6 -0
  53. data/app/models/bulk_actions/harvest_thumbnails.rb +6 -0
  54. data/app/models/bulk_actions/publish_document.rb +6 -0
  55. data/app/models/bulk_actions/unpublish_document.rb +6 -0
  56. data/app/models/document/geom_validator.rb +8 -0
  57. data/app/models/document/reference.rb +65 -65
  58. data/app/models/document.rb +129 -72
  59. data/app/models/document_distribution.rb +145 -0
  60. data/app/models/element.rb +2 -0
  61. data/app/models/geoblacklight_admin/schema.rb +10 -2
  62. data/app/models/import/csv_duplicates_validator.rb +2 -0
  63. data/app/models/import/csv_header_validator.rb +3 -1
  64. data/app/models/import_btaa_aardvark.rb +2 -2
  65. data/app/models/import_document_state_machine.rb +1 -0
  66. data/app/models/import_gblv1.rb +2 -2
  67. data/app/models/reference_type.rb +40 -0
  68. data/app/models/user.rb +4 -2
  69. data/app/services/export_csv_document_distributions_service.rb +61 -0
  70. data/app/services/geoblacklight_admin/image_service/iiif_manifest.rb +39 -43
  71. data/app/services/geoblacklight_admin/image_service/tms.rb +0 -8
  72. data/app/services/geoblacklight_admin/image_service.rb +1 -1
  73. data/app/services/geoblacklight_admin/item_viewer.rb +4 -4
  74. data/app/views/admin/bookmarks/index.html.erb +19 -14
  75. data/app/views/admin/bulk_actions/show.html.erb +1 -1
  76. data/app/views/admin/document_accesses/import.html.erb +6 -2
  77. data/app/views/admin/document_assets/_assets_table.html.erb +49 -0
  78. data/app/views/admin/document_assets/_form.html.erb +2 -3
  79. data/app/views/admin/document_assets/index.html.erb +1 -47
  80. data/app/views/admin/document_distributions/_document_distribution.html.erb +39 -0
  81. data/app/views/admin/document_distributions/_document_distribution.json.jbuilder +2 -0
  82. data/app/views/admin/document_distributions/_form.html.erb +34 -0
  83. data/app/views/admin/document_distributions/destroy_all.html.erb +82 -0
  84. data/app/views/admin/document_distributions/edit.html.erb +12 -0
  85. data/app/views/admin/document_distributions/import.html.erb +80 -0
  86. data/app/views/admin/document_distributions/index.html.erb +143 -0
  87. data/app/views/admin/document_distributions/index.json.jbuilder +1 -0
  88. data/app/views/admin/document_distributions/new.html.erb +11 -0
  89. data/app/views/admin/document_distributions/show.html.erb +10 -0
  90. data/app/views/admin/document_distributions/show.json.jbuilder +1 -0
  91. data/app/views/admin/documents/_document.html.erb +1 -3
  92. data/app/views/admin/documents/_form.html.erb +2 -4
  93. data/app/views/admin/documents/_form_control.html.erb +5 -2
  94. data/app/views/admin/documents/_form_nav.html.erb +14 -5
  95. data/app/views/admin/documents/_form_nav_kithe.html.erb +4 -1
  96. data/app/views/admin/documents/_json_aardvark.jbuilder +1 -1
  97. data/app/views/admin/documents/_json_gbl_v1.jbuilder +1 -1
  98. data/app/views/admin/documents/_result_selected_options.html.erb +5 -2
  99. data/app/views/admin/documents/admin.html.erb +5 -5
  100. data/app/views/admin/documents/features/_document_references.html.erb +23 -0
  101. data/app/views/admin/documents/features/_multiple_download_links.html.erb +29 -26
  102. data/app/views/admin/ids/fetch.json.jbuilder +0 -2
  103. data/app/views/admin/ids/index.json.jbuilder +0 -2
  104. data/app/views/admin/imports/_form.html.erb +1 -1
  105. data/app/views/admin/imports/show.html.erb +1 -1
  106. data/app/views/admin/layouts/application.html.erb +4 -2
  107. data/app/views/admin/mappings/index.html.erb +1 -1
  108. data/app/views/admin/notifications/_notification.html.haml +29 -28
  109. data/app/views/admin/reference_types/_form.html.erb +25 -0
  110. data/app/views/admin/reference_types/_reference_type.html.erb +52 -0
  111. data/app/views/admin/reference_types/_reference_type.json.jbuilder +2 -0
  112. data/app/views/admin/reference_types/edit.html.erb +12 -0
  113. data/app/views/admin/reference_types/index.html.erb +52 -0
  114. data/app/views/admin/reference_types/index.json.jbuilder +1 -0
  115. data/app/views/admin/reference_types/new.html.erb +11 -0
  116. data/app/views/admin/reference_types/show.html.erb +3 -0
  117. data/app/views/admin/reference_types/show.json.jbuilder +1 -0
  118. data/app/views/admin/shared/_footer.html.erb +5 -2
  119. data/app/views/admin/shared/_js_behaviors.html.erb +2 -3
  120. data/app/views/admin/shared/_navbar.html.erb +9 -2
  121. data/app/views/admin/users/index.html.erb +0 -1
  122. data/app/views/catalog/_show_gbl_admin.html.erb +1 -1
  123. data/config/initializers/defaults.yml +310 -0
  124. data/config/initializers/rails_config.rb +8 -0
  125. data/config/locales/documents.en.yml +14 -0
  126. data/config/routes.rb +30 -5
  127. data/db/import_references_schema_support.numbers +0 -0
  128. data/db/migrate/20230316183001_add_geoblacklight_admin_gem.rb +0 -12
  129. data/db/migrate/20241009200524_create_admin_reference_types.rb +13 -0
  130. data/db/migrate/20241010161420_create_document_references.rb +14 -0
  131. data/db/migrate/20241120238823_rename_references_to_distributions.rb +5 -0
  132. data/db/seeds.rb +5 -0
  133. data/db/seeds_elements.csv +1 -1
  134. data/db/seeds_elements.numbers +0 -0
  135. data/db/seeds_reference_types.csv +29 -0
  136. data/db/seeds_reference_types.numbers +0 -0
  137. data/db/structure.sql +1 -38
  138. data/lib/compose.yml +31 -0
  139. data/lib/generators/geoblacklight_admin/config_generator.rb +53 -12
  140. data/lib/generators/geoblacklight_admin/install_generator.rb +8 -0
  141. data/lib/generators/geoblacklight_admin/templates/btaa_sample_records.csv +5 -0
  142. data/lib/generators/geoblacklight_admin/templates/config/database.yml +1 -1
  143. data/lib/generators/geoblacklight_admin/templates/config/initializers/devise.rb +0 -2
  144. data/lib/generators/geoblacklight_admin/templates/config/initializers/mime_types.rb +1 -0
  145. data/lib/generators/geoblacklight_admin/templates/demo-app/Dockerfile +31 -0
  146. data/lib/generators/geoblacklight_admin/templates/demo-app/compose.yml +42 -0
  147. data/lib/generators/geoblacklight_admin/templates/demo-app/start-server.sh +21 -0
  148. data/lib/geoblacklight_admin/engine.rb +4 -0
  149. data/lib/geoblacklight_admin/rake_task.rb +2 -0
  150. data/lib/geoblacklight_admin/tasks/distributions.rake +69 -0
  151. data/lib/geoblacklight_admin/tasks/images.rake +1 -0
  152. data/lib/geoblacklight_admin/tasks/solr.rake +31 -0
  153. data/lib/geoblacklight_admin/version.rb +1 -1
  154. data/lib/geoblacklight_admin.rb +4 -0
  155. metadata +137 -53
  156. data/app/helpers/import_documents_helper.rb +0 -5
  157. data/app/javascript/entrypoints/engine.js +0 -8
  158. data/config/locales/devise_invitable.en.yml +0 -31
  159. data/lib/generators/geoblacklight_admin/templates/devise/invitations/edit.html.erb +0 -15
  160. data/lib/generators/geoblacklight_admin/templates/devise/invitations/new.html.erb +0 -15
  161. data/lib/generators/geoblacklight_admin/templates/devise/mailer/invitation_instructions.html.erb +0 -11
  162. data/lib/generators/geoblacklight_admin/templates/devise/mailer/invitation_instructions.text.erb +0 -11
@@ -2,6 +2,10 @@
2
2
 
3
3
  require "active_support/dependencies"
4
4
  require "geoblacklight_admin/engine"
5
+ require "zeitwerk"
6
+ loader = Zeitwerk::Loader.for_gem
7
+ loader.ignore("#{__dir__}/generators")
8
+ loader.setup
5
9
 
6
10
  module GeoblacklightAdmin
7
11
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: geoblacklight_admin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eric Larson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-09-09 00:00:00.000000000 Z
11
+ date: 2024-11-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: active_storage_validations
@@ -164,20 +164,6 @@ dependencies:
164
164
  - - "~>"
165
165
  - !ruby/object:Gem::Version
166
166
  version: '1.0'
167
- - !ruby/object:Gem::Dependency
168
- name: devise_invitable
169
- requirement: !ruby/object:Gem::Requirement
170
- requirements:
171
- - - "~>"
172
- - !ruby/object:Gem::Version
173
- version: '2.0'
174
- type: :runtime
175
- prerelease: false
176
- version_requirements: !ruby/object:Gem::Requirement
177
- requirements:
178
- - - "~>"
179
- - !ruby/object:Gem::Version
180
- version: '2.0'
181
167
  - !ruby/object:Gem::Dependency
182
168
  name: dotenv-rails
183
169
  requirement: !ruby/object:Gem::Requirement
@@ -276,6 +262,20 @@ dependencies:
276
262
  - - "~>"
277
263
  - !ruby/object:Gem::Version
278
264
  version: '2.0'
265
+ - !ruby/object:Gem::Dependency
266
+ name: mutex_m
267
+ requirement: !ruby/object:Gem::Requirement
268
+ requirements:
269
+ - - "~>"
270
+ - !ruby/object:Gem::Version
271
+ version: 0.2.0
272
+ type: :runtime
273
+ prerelease: false
274
+ version_requirements: !ruby/object:Gem::Requirement
275
+ requirements:
276
+ - - "~>"
277
+ - !ruby/object:Gem::Version
278
+ version: 0.2.0
279
279
  - !ruby/object:Gem::Dependency
280
280
  name: noticed
281
281
  requirement: !ruby/object:Gem::Requirement
@@ -355,7 +355,7 @@ dependencies:
355
355
  version: '7.0'
356
356
  - - "<"
357
357
  - !ruby/object:Gem::Version
358
- version: '8.0'
358
+ version: '7.3'
359
359
  type: :runtime
360
360
  prerelease: false
361
361
  version_requirements: !ruby/object:Gem::Requirement
@@ -365,7 +365,7 @@ dependencies:
365
365
  version: '7.0'
366
366
  - - "<"
367
367
  - !ruby/object:Gem::Version
368
- version: '8.0'
368
+ version: '7.3'
369
369
  - !ruby/object:Gem::Dependency
370
370
  name: ruby-progressbar
371
371
  requirement: !ruby/object:Gem::Requirement
@@ -398,30 +398,30 @@ dependencies:
398
398
  name: sprockets
399
399
  requirement: !ruby/object:Gem::Requirement
400
400
  requirements:
401
- - - "<"
401
+ - - "~>"
402
402
  - !ruby/object:Gem::Version
403
- version: '4'
403
+ version: '3.0'
404
404
  type: :runtime
405
405
  prerelease: false
406
406
  version_requirements: !ruby/object:Gem::Requirement
407
407
  requirements:
408
- - - "<"
408
+ - - "~>"
409
409
  - !ruby/object:Gem::Version
410
- version: '4'
410
+ version: '3.0'
411
411
  - !ruby/object:Gem::Dependency
412
412
  name: statesman
413
413
  requirement: !ruby/object:Gem::Requirement
414
414
  requirements:
415
415
  - - "~>"
416
416
  - !ruby/object:Gem::Version
417
- version: '10.0'
417
+ version: '12.0'
418
418
  type: :runtime
419
419
  prerelease: false
420
420
  version_requirements: !ruby/object:Gem::Requirement
421
421
  requirements:
422
422
  - - "~>"
423
423
  - !ruby/object:Gem::Version
424
- version: '10.0'
424
+ version: '12.0'
425
425
  - !ruby/object:Gem::Dependency
426
426
  name: vite_rails
427
427
  requirement: !ruby/object:Gem::Requirement
@@ -450,6 +450,20 @@ dependencies:
450
450
  - - ">="
451
451
  - !ruby/object:Gem::Version
452
452
  version: '3.5'
453
+ - !ruby/object:Gem::Dependency
454
+ name: zeitwerk
455
+ requirement: !ruby/object:Gem::Requirement
456
+ requirements:
457
+ - - "~>"
458
+ - !ruby/object:Gem::Version
459
+ version: '2.6'
460
+ type: :runtime
461
+ prerelease: false
462
+ version_requirements: !ruby/object:Gem::Requirement
463
+ requirements:
464
+ - - "~>"
465
+ - !ruby/object:Gem::Version
466
+ version: '2.6'
453
467
  - !ruby/object:Gem::Dependency
454
468
  name: byebug
455
469
  requirement: !ruby/object:Gem::Requirement
@@ -605,89 +619,103 @@ dependencies:
605
619
  - !ruby/object:Gem::Version
606
620
  version: '1.6'
607
621
  - !ruby/object:Gem::Dependency
608
- name: rspec-rails
622
+ name: mocha
609
623
  requirement: !ruby/object:Gem::Requirement
610
624
  requirements:
611
625
  - - "~>"
612
626
  - !ruby/object:Gem::Version
613
- version: '3.0'
627
+ version: '2.0'
614
628
  type: :development
615
629
  prerelease: false
616
630
  version_requirements: !ruby/object:Gem::Requirement
617
631
  requirements:
618
632
  - - "~>"
619
633
  - !ruby/object:Gem::Version
620
- version: '3.0'
634
+ version: '2.0'
621
635
  - !ruby/object:Gem::Dependency
622
- name: selenium-webdriver
636
+ name: rails-controller-testing
623
637
  requirement: !ruby/object:Gem::Requirement
624
638
  requirements:
625
- - - ">="
639
+ - - "~>"
626
640
  - !ruby/object:Gem::Version
627
- version: '0'
641
+ version: '1.0'
628
642
  type: :development
629
643
  prerelease: false
630
644
  version_requirements: !ruby/object:Gem::Requirement
631
645
  requirements:
632
- - - ">="
646
+ - - "~>"
633
647
  - !ruby/object:Gem::Version
634
- version: '0'
648
+ version: '1.0'
635
649
  - !ruby/object:Gem::Dependency
636
- name: shoulda-context
650
+ name: rspec-rails
637
651
  requirement: !ruby/object:Gem::Requirement
638
652
  requirements:
639
653
  - - "~>"
640
654
  - !ruby/object:Gem::Version
641
- version: '2.0'
655
+ version: '3.0'
642
656
  type: :development
643
657
  prerelease: false
644
658
  version_requirements: !ruby/object:Gem::Requirement
645
659
  requirements:
646
660
  - - "~>"
647
661
  - !ruby/object:Gem::Version
648
- version: '2.0'
662
+ version: '3.0'
649
663
  - !ruby/object:Gem::Dependency
650
- name: simplecov
664
+ name: selenium-webdriver
651
665
  requirement: !ruby/object:Gem::Requirement
652
666
  requirements:
653
667
  - - "~>"
654
668
  - !ruby/object:Gem::Version
655
- version: '0.22'
669
+ version: '4.25'
656
670
  type: :development
657
671
  prerelease: false
658
672
  version_requirements: !ruby/object:Gem::Requirement
659
673
  requirements:
660
674
  - - "~>"
661
675
  - !ruby/object:Gem::Version
662
- version: '0.22'
676
+ version: '4.25'
663
677
  - !ruby/object:Gem::Dependency
664
- name: solr_wrapper
678
+ name: shoulda-context
665
679
  requirement: !ruby/object:Gem::Requirement
666
680
  requirements:
667
681
  - - "~>"
668
682
  - !ruby/object:Gem::Version
669
- version: '4.0'
683
+ version: '2.0'
670
684
  type: :development
671
685
  prerelease: false
672
686
  version_requirements: !ruby/object:Gem::Requirement
673
687
  requirements:
674
688
  - - "~>"
675
689
  - !ruby/object:Gem::Version
676
- version: '4.0'
690
+ version: '2.0'
691
+ - !ruby/object:Gem::Dependency
692
+ name: simplecov
693
+ requirement: !ruby/object:Gem::Requirement
694
+ requirements:
695
+ - - "~>"
696
+ - !ruby/object:Gem::Version
697
+ version: '0.22'
698
+ type: :development
699
+ prerelease: false
700
+ version_requirements: !ruby/object:Gem::Requirement
701
+ requirements:
702
+ - - "~>"
703
+ - !ruby/object:Gem::Version
704
+ version: '0.22'
677
705
  - !ruby/object:Gem::Dependency
678
706
  name: sprockets
679
707
  requirement: !ruby/object:Gem::Requirement
680
708
  requirements:
681
- - - "<"
709
+ - - "~>"
682
710
  - !ruby/object:Gem::Version
683
- version: '4'
711
+ version: '3.0'
684
712
  type: :development
685
713
  prerelease: false
686
714
  version_requirements: !ruby/object:Gem::Requirement
687
715
  requirements:
688
- - - "<"
716
+ - - "~>"
689
717
  - !ruby/object:Gem::Version
690
- version: '4'
718
+ version: '3.0'
691
719
  - !ruby/object:Gem::Dependency
692
720
  name: standard
693
721
  requirement: !ruby/object:Gem::Requirement
@@ -730,6 +758,20 @@ dependencies:
730
758
  - - ">="
731
759
  - !ruby/object:Gem::Version
732
760
  version: '0'
761
+ - !ruby/object:Gem::Dependency
762
+ name: webmock
763
+ requirement: !ruby/object:Gem::Requirement
764
+ requirements:
765
+ - - "~>"
766
+ - !ruby/object:Gem::Version
767
+ version: '3.23'
768
+ type: :development
769
+ prerelease: false
770
+ version_requirements: !ruby/object:Gem::Requirement
771
+ requirements:
772
+ - - "~>"
773
+ - !ruby/object:Gem::Version
774
+ version: '3.23'
733
775
  description:
734
776
  email:
735
777
  - ewlarson@gmail.com
@@ -784,6 +826,7 @@ files:
784
826
  - app/controllers/admin/bulk_actions_controller.rb
785
827
  - app/controllers/admin/document_accesses_controller.rb
786
828
  - app/controllers/admin/document_assets_controller.rb
829
+ - app/controllers/admin/document_distributions_controller.rb
787
830
  - app/controllers/admin/document_downloads_controller.rb
788
831
  - app/controllers/admin/documents_controller.rb
789
832
  - app/controllers/admin/elements_controller.rb
@@ -793,6 +836,7 @@ files:
793
836
  - app/controllers/admin/imports_controller.rb
794
837
  - app/controllers/admin/mappings_controller.rb
795
838
  - app/controllers/admin/notifications_controller.rb
839
+ - app/controllers/admin/reference_types_controller.rb
796
840
  - app/controllers/admin/search_controller.rb
797
841
  - app/controllers/admin/users_controller.rb
798
842
  - app/helpers/asset_helper.rb
@@ -800,11 +844,12 @@ files:
800
844
  - app/helpers/document_helper.rb
801
845
  - app/helpers/form_input_helper.rb
802
846
  - app/helpers/geoblacklight_admin_helper.rb
803
- - app/helpers/import_documents_helper.rb
804
847
  - app/helpers/mappings_helper.rb
805
848
  - app/indexers/document_indexer.rb
849
+ - app/javascript/channels/consumer.js
850
+ - app/javascript/channels/export_channel.js
851
+ - app/javascript/channels/index.js
806
852
  - app/javascript/controllers/results_controller.js
807
- - app/javascript/entrypoints/engine.js
808
853
  - app/javascript/index.js
809
854
  - app/jobs/bulk_action_collect_documents.rb
810
855
  - app/jobs/bulk_action_revert_document_job.rb
@@ -836,6 +881,11 @@ files:
836
881
  - app/models/bulk_action_state_machine.rb
837
882
  - app/models/bulk_action_transition.rb
838
883
  - app/models/bulk_actions/change_publication_state.rb
884
+ - app/models/bulk_actions/delete_thumbnails.rb
885
+ - app/models/bulk_actions/draft_document.rb
886
+ - app/models/bulk_actions/harvest_thumbnails.rb
887
+ - app/models/bulk_actions/publish_document.rb
888
+ - app/models/bulk_actions/unpublish_document.rb
839
889
  - app/models/concerns/geoblacklight_admin/publication_state_search_behavior.rb
840
890
  - app/models/document.rb
841
891
  - app/models/document/bbox_validator.rb
@@ -845,6 +895,7 @@ files:
845
895
  - app/models/document/geom_validator.rb
846
896
  - app/models/document/reference.rb
847
897
  - app/models/document_access.rb
898
+ - app/models/document_distribution.rb
848
899
  - app/models/document_download.rb
849
900
  - app/models/document_state_machine.rb
850
901
  - app/models/document_thumbnail_state_machine.rb
@@ -876,9 +927,11 @@ files:
876
927
  - app/models/kithe/vips_cli_image_to_png.rb
877
928
  - app/models/mapping.rb
878
929
  - app/models/notification.rb
930
+ - app/models/reference_type.rb
879
931
  - app/models/user.rb
880
932
  - app/notifications/export_notification.rb
881
933
  - app/services/export_csv_document_access_links_service.rb
934
+ - app/services/export_csv_document_distributions_service.rb
882
935
  - app/services/export_csv_document_downloads_service.rb
883
936
  - app/services/export_csv_service.rb
884
937
  - app/services/export_json_service.rb
@@ -926,10 +979,22 @@ files:
926
979
  - app/views/admin/document_accesses/new.html.erb
927
980
  - app/views/admin/document_accesses/show.html.erb
928
981
  - app/views/admin/document_accesses/show.json.jbuilder
982
+ - app/views/admin/document_assets/_assets_table.html.erb
929
983
  - app/views/admin/document_assets/_form.html.erb
930
984
  - app/views/admin/document_assets/display_attach_form.html.erb
931
985
  - app/views/admin/document_assets/edit.html.erb
932
986
  - app/views/admin/document_assets/index.html.erb
987
+ - app/views/admin/document_distributions/_document_distribution.html.erb
988
+ - app/views/admin/document_distributions/_document_distribution.json.jbuilder
989
+ - app/views/admin/document_distributions/_form.html.erb
990
+ - app/views/admin/document_distributions/destroy_all.html.erb
991
+ - app/views/admin/document_distributions/edit.html.erb
992
+ - app/views/admin/document_distributions/import.html.erb
993
+ - app/views/admin/document_distributions/index.html.erb
994
+ - app/views/admin/document_distributions/index.json.jbuilder
995
+ - app/views/admin/document_distributions/new.html.erb
996
+ - app/views/admin/document_distributions/show.html.erb
997
+ - app/views/admin/document_distributions/show.json.jbuilder
933
998
  - app/views/admin/document_downloads/_document_download.json.jbuilder
934
999
  - app/views/admin/document_downloads/_form.html.erb
935
1000
  - app/views/admin/document_downloads/destroy_all.html.erb
@@ -962,6 +1027,7 @@ files:
962
1027
  - app/views/admin/documents/admin.html.erb
963
1028
  - app/views/admin/documents/edit.html.erb
964
1029
  - app/views/admin/documents/features/_assets.html.erb
1030
+ - app/views/admin/documents/features/_document_references.html.erb
965
1031
  - app/views/admin/documents/features/_institutional_access_links.html.erb
966
1032
  - app/views/admin/documents/features/_multiple_download_links.html.erb
967
1033
  - app/views/admin/documents/fetch.json_aardvark.jbuilder
@@ -1021,6 +1087,15 @@ files:
1021
1087
  - app/views/admin/notifications/_notification.html.haml
1022
1088
  - app/views/admin/notifications/index.html.erb
1023
1089
  - app/views/admin/notifications/update.js.erb
1090
+ - app/views/admin/reference_types/_form.html.erb
1091
+ - app/views/admin/reference_types/_reference_type.html.erb
1092
+ - app/views/admin/reference_types/_reference_type.json.jbuilder
1093
+ - app/views/admin/reference_types/edit.html.erb
1094
+ - app/views/admin/reference_types/index.html.erb
1095
+ - app/views/admin/reference_types/index.json.jbuilder
1096
+ - app/views/admin/reference_types/new.html.erb
1097
+ - app/views/admin/reference_types/show.html.erb
1098
+ - app/views/admin/reference_types/show.json.jbuilder
1024
1099
  - app/views/admin/search/index.html.erb
1025
1100
  - app/views/admin/shared/_flash_messages.html.erb
1026
1101
  - app/views/admin/shared/_footer.html.erb
@@ -1038,23 +1113,31 @@ files:
1038
1113
  - config/gbl_v1_schema.json
1039
1114
  - config/geomg_aardvark_schema.json
1040
1115
  - config/geomg_schema.json
1116
+ - config/initializers/defaults.yml
1117
+ - config/initializers/rails_config.rb
1041
1118
  - config/locales/devise.en.yml
1042
- - config/locales/devise_invitable.en.yml
1043
1119
  - config/locales/documents.en.yml
1044
1120
  - config/locales/en.yml
1045
1121
  - config/locales/geoblacklight.en.yml
1046
1122
  - config/locales/simple_form.en.yml
1047
1123
  - config/routes.rb
1048
1124
  - config/vite.json
1125
+ - db/import_references_schema_support.numbers
1049
1126
  - db/migrate/20230316183001_add_geoblacklight_admin_gem.rb
1050
1127
  - db/migrate/20231106215104_bulk_action_sti.rb
1051
1128
  - db/migrate/20240619171628_create_document_thumbnail_statesman.rb
1129
+ - db/migrate/20241009200524_create_admin_reference_types.rb
1130
+ - db/migrate/20241010161420_create_document_references.rb
1131
+ - db/migrate/20241120238823_rename_references_to_distributions.rb
1052
1132
  - db/seeds.rb
1053
1133
  - db/seeds_elements.csv
1054
1134
  - db/seeds_elements.numbers
1055
1135
  - db/seeds_form_elements.csv
1056
1136
  - db/seeds_form_elements.numbers
1137
+ - db/seeds_reference_types.csv
1138
+ - db/seeds_reference_types.numbers
1057
1139
  - db/structure.sql
1140
+ - lib/compose.yml
1058
1141
  - lib/generators/geoblacklight_admin/config_generator.rb
1059
1142
  - lib/generators/geoblacklight_admin/helpers_generator.rb
1060
1143
  - lib/generators/geoblacklight_admin/install_generator.rb
@@ -1064,6 +1147,7 @@ files:
1064
1147
  - lib/generators/geoblacklight_admin/templates/_user_util_links.html.erb
1065
1148
  - lib/generators/geoblacklight_admin/templates/api_controller.rb
1066
1149
  - lib/generators/geoblacklight_admin/templates/base.html.erb
1150
+ - lib/generators/geoblacklight_admin/templates/btaa_sample_records.csv
1067
1151
  - lib/generators/geoblacklight_admin/templates/config/database.yml
1068
1152
  - lib/generators/geoblacklight_admin/templates/config/geomg_aardvark_schema.json
1069
1153
  - lib/generators/geoblacklight_admin/templates/config/initializers/devise.rb
@@ -1078,11 +1162,10 @@ files:
1078
1162
  - lib/generators/geoblacklight_admin/templates/config/settings.yml
1079
1163
  - lib/generators/geoblacklight_admin/templates/config/sidekiq.yml
1080
1164
  - lib/generators/geoblacklight_admin/templates/config/vite.json
1165
+ - lib/generators/geoblacklight_admin/templates/demo-app/Dockerfile
1166
+ - lib/generators/geoblacklight_admin/templates/demo-app/compose.yml
1167
+ - lib/generators/geoblacklight_admin/templates/demo-app/start-server.sh
1081
1168
  - lib/generators/geoblacklight_admin/templates/devise/confirmations/new.html.erb
1082
- - lib/generators/geoblacklight_admin/templates/devise/invitations/edit.html.erb
1083
- - lib/generators/geoblacklight_admin/templates/devise/invitations/new.html.erb
1084
- - lib/generators/geoblacklight_admin/templates/devise/mailer/invitation_instructions.html.erb
1085
- - lib/generators/geoblacklight_admin/templates/devise/mailer/invitation_instructions.text.erb
1086
1169
  - lib/generators/geoblacklight_admin/templates/devise/passwords/edit.html.erb
1087
1170
  - lib/generators/geoblacklight_admin/templates/devise/passwords/new.html.erb
1088
1171
  - lib/generators/geoblacklight_admin/templates/devise/registrations/edit.html.erb
@@ -1124,6 +1207,7 @@ files:
1124
1207
  - lib/geoblacklight_admin.rb
1125
1208
  - lib/geoblacklight_admin/engine.rb
1126
1209
  - lib/geoblacklight_admin/rake_task.rb
1210
+ - lib/geoblacklight_admin/tasks/distributions.rake
1127
1211
  - lib/geoblacklight_admin/tasks/images.rake
1128
1212
  - lib/geoblacklight_admin/tasks/solr.rake
1129
1213
  - lib/geoblacklight_admin/version.rb
@@ -1146,7 +1230,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1146
1230
  - !ruby/object:Gem::Version
1147
1231
  version: '0'
1148
1232
  requirements: []
1149
- rubygems_version: 3.5.9
1233
+ rubygems_version: 3.5.16
1150
1234
  signing_key:
1151
1235
  specification_version: 4
1152
1236
  summary: Administrative UI for GeoBlacklight. Built on Kithe.
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # ImportDocumentsHelper
4
- module ImportDocumentsHelper
5
- end
@@ -1,8 +0,0 @@
1
- console.log('Vite ⚡️ Rails - GBL Admin')
2
-
3
- // Stimulus
4
- import { Application } from '@hotwired/stimulus'
5
- import ResultsController from "../controllers/results_controller"
6
-
7
- window.Stimulus = Application.start()
8
- Stimulus.register("results", ResultsController)
@@ -1,31 +0,0 @@
1
- en:
2
- devise:
3
- failure:
4
- invited: "You have a pending invitation, accept it to finish creating your account."
5
- invitations:
6
- send_instructions: "An invitation email has been sent to %{email}."
7
- invitation_token_invalid: "The invitation token provided is not valid!"
8
- updated: "Your password was set successfully. You are now signed in."
9
- updated_not_active: "Your password was set successfully."
10
- no_invitations_remaining: "No invitations remaining"
11
- invitation_removed: "Your invitation was removed."
12
- new:
13
- header: "Send invitation"
14
- submit_button: "Send an invitation"
15
- edit:
16
- header: "Set your password"
17
- submit_button: "Set my password"
18
- mailer:
19
- invitation_instructions:
20
- subject: "Invitation instructions"
21
- hello: "Hello %{email}"
22
- someone_invited_you: "Someone has invited you to %{url}, you can accept it through the link below."
23
- accept: "Accept invitation"
24
- accept_until: "This invitation will be due in %{due_date}."
25
- ignore: "If you don't want to accept the invitation, please ignore this email. Your account won't be created until you access the link above and set your password."
26
- time:
27
- formats:
28
- devise:
29
- mailer:
30
- invitation_instructions:
31
- accept_until_format: "%B %d, %Y %I:%M %p"
@@ -1,15 +0,0 @@
1
- <h2><%= t "devise.invitations.edit.header" %></h2>
2
-
3
- <%= simple_form_for(resource, as: resource_name, url: invitation_path(resource_name), html: { method: :put }) do |f| %>
4
- <%= f.error_notification %>
5
- <%= f.hidden_field :invitation_token %>
6
-
7
- <div class="form-inputs">
8
- <%= f.input :password %>
9
- <%= f.input :password_confirmation %>
10
- </div>
11
-
12
- <div class="form-actions">
13
- <%= f.button :submit, t("devise.invitations.edit.submit_button"), class: 'btn btn-primary' %>
14
- </div>
15
- <% end %>
@@ -1,15 +0,0 @@
1
- <h2><%= t "devise.invitations.new.header" %></h2>
2
-
3
- <%= simple_form_for(resource, as: resource_name, url: invitation_path(resource_name), html: { method: :post }) do |f| %>
4
- <%= f.error_notification %>
5
-
6
- <% resource.class.invite_key_fields.each do |field| -%>
7
- <div class="form-inputs">
8
- <%= f.input field %>
9
- </div>
10
- <% end -%>
11
-
12
- <div class="form-actions">
13
- <%= f.button :submit, t("devise.invitations.new.submit_button"), class: 'btn btn-primary' %>
14
- </div>
15
- <% end %>
@@ -1,11 +0,0 @@
1
- <p><%= t("devise.mailer.invitation_instructions.hello", email: @resource.email) %></p>
2
-
3
- <p><%= t("devise.mailer.invitation_instructions.someone_invited_you", url: root_url) %></p>
4
-
5
- <p><%= link_to t("devise.mailer.invitation_instructions.accept"), accept_invitation_url(@resource, invitation_token: @token) %></p>
6
-
7
- <% if @resource.invitation_due_at %>
8
- <p><%= t("devise.mailer.invitation_instructions.accept_until", due_date: l(@resource.invitation_due_at, format: :'devise.mailer.invitation_instructions.accept_until_format')) %></p>
9
- <% end %>
10
-
11
- <p><%= t("devise.mailer.invitation_instructions.ignore") %></p>
@@ -1,11 +0,0 @@
1
- <%= t("devise.mailer.invitation_instructions.hello", email: @resource.email) %>
2
-
3
- <%= t("devise.mailer.invitation_instructions.someone_invited_you", url: root_url) %>
4
-
5
- <%= accept_invitation_url(@resource, invitation_token: @token) %>
6
-
7
- <% if @resource.invitation_due_at %>
8
- <%= t("devise.mailer.invitation_instructions.accept_until", due_date: l(@resource.invitation_due_at, format: :'devise.mailer.invitation_instructions.accept_until_format')) %>
9
- <% end %>
10
-
11
- <%= t("devise.mailer.invitation_instructions.ignore") %>