geoblacklight 4.1.1 → 4.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby.yml +3 -11
  3. data/.gitignore +9 -0
  4. data/Gemfile +14 -0
  5. data/Procfile.dev +3 -0
  6. data/README.md +5 -30
  7. data/app/assets/images/blacklight/geoblacklight-icons.json +1857 -966
  8. data/app/assets/javascripts/geoblacklight/modules/util.js +8 -3
  9. data/app/assets/javascripts/geoblacklight/templates/index_map_info.hbs +22 -1
  10. data/app/assets/javascripts/geoblacklight/viewers/cog.js +5 -0
  11. data/app/assets/javascripts/geoblacklight/viewers/pmtiles.js +5 -0
  12. data/app/controllers/download_controller.rb +1 -21
  13. data/app/frontend/clover/clover_initializer.js +29 -0
  14. data/app/frontend/entrypoints/application.js +28 -0
  15. data/app/frontend/entrypoints/clover.js +5 -0
  16. data/app/frontend/entrypoints/ol.js +5 -0
  17. data/app/frontend/openlayers/basemaps.js +47 -0
  18. data/app/frontend/openlayers/ol_initializer.js +105 -0
  19. data/app/frontend/stylesheets/openlayers.css +1 -0
  20. data/app/helpers/geoblacklight/application_helper.rb +8 -0
  21. data/app/helpers/geoblacklight_helper.rb +54 -0
  22. data/app/views/catalog/_citation.html.erb +1 -1
  23. data/app/views/catalog/_show_default_viewer_container.html.erb +1 -2
  24. data/app/views/catalog/_web_services_default.html.erb +6 -1
  25. data/app/views/catalog/_web_services_wfs.html.erb +6 -1
  26. data/app/views/catalog/_web_services_wms.html.erb +6 -1
  27. data/app/views/catalog/web_services.html.erb +16 -0
  28. data/bin/vite +29 -0
  29. data/config/locales/geoblacklight.en.yml +12 -2
  30. data/config/vite.json +14 -0
  31. data/geoblacklight.gemspec +7 -5
  32. data/lib/generators/geoblacklight/install_generator.rb +19 -4
  33. data/lib/generators/geoblacklight/templates/base.html.erb +52 -0
  34. data/lib/generators/geoblacklight/templates/catalog_controller.rb +0 -2
  35. data/lib/generators/geoblacklight/templates/settings.yml +4 -0
  36. data/lib/generators/geoblacklight/templates/vite.json +16 -0
  37. data/lib/geoblacklight/constants.rb +3 -1
  38. data/lib/geoblacklight/engine.rb +24 -0
  39. data/lib/geoblacklight/faraday_middleware/follow_redirects.rb +1 -1
  40. data/lib/geoblacklight/item_viewer.rb +13 -1
  41. data/lib/geoblacklight/metadata_transformer/base.rb +1 -1
  42. data/lib/geoblacklight/version.rb +1 -1
  43. data/package.json +8 -12
  44. data/spec/features/download_layer_spec.rb +1 -2
  45. data/spec/features/full_screen_controll_spec.rb +8 -1
  46. data/spec/features/home_page_spec.rb +3 -0
  47. data/spec/features/search_results_map_spec.rb +1 -0
  48. data/spec/features/web_services_modal_spec.rb +30 -0
  49. data/spec/fixtures/index_maps/index-map-point.geojson +949 -0
  50. data/spec/fixtures/index_maps/index-map-polygon-no-downloadurl.geojson +970 -0
  51. data/spec/fixtures/index_maps/index-map-polygon.geojson +970 -0
  52. data/spec/fixtures/index_maps/index-map-stanford.geojson +390 -0
  53. data/spec/fixtures/index_maps/index-map-v1-complex.geojson +12249 -0
  54. data/spec/fixtures/solr_documents/README.md +1 -0
  55. data/spec/fixtures/solr_documents/b1g_iiif_manifest.json +64 -0
  56. data/spec/fixtures/solr_documents/index-map-polygon-no-downloadurl.json +1 -1
  57. data/spec/fixtures/solr_documents/index-map-polygon.json +1 -1
  58. data/spec/fixtures/solr_documents/index-map-stanford.json +1 -1
  59. data/spec/fixtures/solr_documents/index-map-v1-complex.json +56 -0
  60. data/spec/fixtures/solr_documents/index_map_point.json +1 -1
  61. data/spec/fixtures/solr_documents/public_cog_princeton.json +57 -0
  62. data/spec/fixtures/solr_documents/public_pmtiles_princeton.json +41 -0
  63. data/spec/helpers/geoblacklight_helper_spec.rb +42 -0
  64. data/spec/spec_helper.rb +1 -1
  65. data/spec/test_app_templates/Gemfile.extra +0 -1
  66. data/spec/test_app_templates/lib/generators/test_app_generator.rb +7 -17
  67. data/vite.config.ts +8 -0
  68. metadata +74 -27
  69. data/spec/test_app_templates/solr_documents +0 -1
  70. /data/spec/{test_app_templates → fixtures}/metadata/fgdc.html +0 -0
  71. /data/spec/{test_app_templates → fixtures}/metadata/fgdc.xml +0 -0
  72. /data/spec/{test_app_templates → fixtures}/metadata/iso.html +0 -0
  73. /data/spec/{test_app_templates → fixtures}/metadata/iso.xml +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8a1c896a4fde70c2232a3c8d4a6bd4f59e619663dc3fc3116145be671f74c71f
4
- data.tar.gz: b480da7c8835498b2b44c62fb568dc70ab950ebb59d8ac6e759eab6e7bf2b296
3
+ metadata.gz: 6a9b830e90a8580443044e898289baf0c5cf4406256b5d7a559be7feda46b046
4
+ data.tar.gz: c8fcc76101713b079a36a8bbb17709b4a8ce4554d2021abaa198e8c501b08434
5
5
  SHA512:
6
- metadata.gz: 2f17b212166b3c8c2018b601009efd700647df054acd9133677cf2f72a46112525e641891f9d78b131d7f8e126bc03d3e3f76e08e1ac517c1f43254ceb949bf3
7
- data.tar.gz: bdb6e7af5eb182402c1dd3b5d62fb105c602da36e45a867b2d20677bd3eae646af1956cb667be0a425969779123ae42f5c544cd8750e8576af7d7421b678135a
6
+ metadata.gz: 45b0e722ebb055ecc603e8fa39a8473910aa5a703dfcc8c0d489c6bc490ca840ec2f257adb7ba04ac563fd103912f78a39da8004cebc1bae79df4030c82a249c
7
+ data.tar.gz: 3fb12b9e06b472fbc3b87e822644721c151052d0082888e758e27067df1c5e50434d792e3e8f57239ab34dff18eee5778a66ba1e52509562923505c9c111075d
@@ -37,29 +37,22 @@ jobs:
37
37
  runs-on: ubuntu-latest
38
38
  strategy:
39
39
  matrix:
40
- ruby_version: ['3.2', 2.7]
41
- rails_version: [7.0.2.2]
42
- faraday_version: ['>= 2', '~> 1.0']
40
+ ruby_version: ['3.2', '3.3']
41
+ rails_version: [6.1.7.6, 7.1.3]
43
42
 
44
- name: test ruby ${{ matrix.ruby_version }} / rails ${{ matrix.rails_version }} / faraday ${{ matrix.faraday_version }}
43
+ name: test ruby ${{ matrix.ruby_version }} / rails ${{ matrix.rails_version }}
45
44
  steps:
46
45
  - uses: actions/checkout@v2
47
46
  - name: Set up Ruby
48
47
  uses: ruby/setup-ruby@v1
49
48
  with:
50
49
  ruby-version: ${{ matrix.ruby_version }}
51
- # required to avoid https://github.com/actions/runner-images/issues/37
52
- # because faraday depends on patron, which requires curl headers to build
53
- - name: Install cURL Headers
54
- run: sudo apt-get update && sudo apt-get install libcurl4-openssl-dev
55
- if: matrix.faraday_version == '~> 1.0'
56
50
  - name: Create Solr container
57
51
  run: docker run -d -p 8983:8983 geoblacklight/solr:8.9-v1.0.0 server/scripts/ci-start.sh
58
52
  - name: Install dependencies
59
53
  run: bundle install
60
54
  env:
61
55
  RAILS_VERSION: ${{ matrix.rails_version }}
62
- FARADAY_VERSION: ${{ matrix.faraday_version }}
63
56
  - name: Setup Yarn
64
57
  run: exec "yarnpkg"
65
58
  - name: Load config into solr
@@ -72,7 +65,6 @@ jobs:
72
65
  run: bundle exec rake ci
73
66
  env:
74
67
  RAILS_VERSION: ${{ matrix.rails_version }}
75
- FARADAY_VERSION: ${{ matrix.faraday_version }}
76
68
  ENGINE_CART_RAILS_OPTIONS: '--skip-git --skip-listen --skip-spring --skip-keeps --skip-action-cable --skip-coffee --skip-test'
77
69
  SOLR_URL: http://solr:SolrRocks@localhost:8983/solr/blacklight-core
78
70
  - name: Upload coverage artifacts
data/.gitignore CHANGED
@@ -31,3 +31,12 @@ yarn.lock
31
31
 
32
32
  # Ignore IDE files
33
33
  .idea
34
+
35
+ # Vite Ruby
36
+ /public/vite*
37
+ /public/geoblacklight-vite*
38
+ node_modules
39
+ # Vite uses dotenv and suggests to ignore local-only env files. See
40
+ # https://vitejs.dev/guide/env-and-mode.html#env-files
41
+ *.local
42
+
data/Gemfile CHANGED
@@ -8,6 +8,20 @@ group :development, :test do
8
8
  gem "thor", ">= 0.19.0"
9
9
  end
10
10
 
11
+ group :test do
12
+ gem "capybara", require: false
13
+ gem "database_cleaner", require: false
14
+ gem "engine_cart", require: false
15
+ gem "factory_bot_rails", require: false
16
+ gem "foreman", require: false
17
+ gem "rails-controller-testing", require: false
18
+ gem "rspec-rails", require: false
19
+ gem "simplecov", require: false
20
+ gem "standardrb", require: false
21
+ gem "webdrivers", require: false
22
+ gem "webmock", require: false
23
+ end
24
+
11
25
  # BEGIN ENGINE_CART BLOCK
12
26
  # engine_cart: 0.10.0
13
27
  # engine_cart stanza: 0.10.0
data/Procfile.dev ADDED
@@ -0,0 +1,3 @@
1
+
2
+ vite: bin/vite dev
3
+ web: bin/rails s
data/README.md CHANGED
@@ -4,41 +4,16 @@
4
4
 
5
5
  GeoBlacklight is a world-class discovery platform for geospatial (GIS) holdings. It
6
6
  is an open collaborative project aiming to build off of the successes
7
- of the Blacklight Solr-powered discovery interface and the
7
+ of the [Blacklight](https://projectblacklight.org) Solr-powered discovery interface and the
8
8
  multi-institutional [OpenGeoportal](http://opengeoportal.io/) and [OpenGeoMetadata](https://github.com/opengeometadata) federated metadata sharing
9
9
  communities. We're actively looking for community input and development partners.
10
10
 
11
- ### Installation
11
+ ### Documentation
12
12
 
13
- Use Ruby v3.2 and Rails v7 to bootstrap a new GeoBlacklight application using the template script:
13
+ Our full [GeoBlacklight Documentation](https://geoblacklight.org/docs/) has how-to guides for installing, customizing, and maintaining a GeoBlacklight instance.
14
14
 
15
- ```bash
16
- DISABLE_SPRING=1 rails new app-name -m https://raw.githubusercontent.com/geoblacklight/geoblacklight/main/template.rb
17
- ```
18
- Then run the `geoblacklight:server` rake task to run the application:
19
-
20
- ```bash
21
- $ cd app-name
22
- $ bundle exec rake geoblacklight:server
23
- ```
24
-
25
- * Visit your GeoBlacklight application at: [http://localhost:3000](http://localhost:3000)
26
- * Visit the Solr admin panel at: [http://localhost:8983/solr/#/blacklight-core](http://localhost:8983/solr/#/blacklight-core)
27
-
28
- #### Index Example Data
29
-
30
- Index the GeoBlacklight project's test fixtures via:
31
-
32
- ```bash
33
- $ bundle exec rake "geoblacklight:index:seed[:remote]"
34
- ```
15
+ See the [Quick Start](https://geoblacklight.org/docs/geoblacklight_quick_start/) section to create a new GeoBlacklight application, or see [For Developers](https://geoblacklight.org/docs/developers/) for more information about setting up a development environment.
35
16
 
36
17
  ### Contributing
37
18
 
38
- Interested in contributing to GeoBlacklight? Please see our [contributing](https://geoblacklight.org/docs/overview/contributing/) guide.
39
-
40
- ### Development
41
-
42
- See the [Getting Started for Developers guide](https://geoblacklight.org/docs/installation/getting_started_developers/) for more information about setting up your development environment.
43
-
44
- For more information, please see the [GeoBlacklight Documentation](https://geoblacklight.org/docs/) site.
19
+ Interested in contributing to GeoBlacklight? Please see [CONTRIBUTING.md](./CONTRIBUTING.md).