riiif 0.0.6 → 0.0.7
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.
- checksums.yaml +4 -4
- data/README.md +23 -7
- data/Rakefile +2 -2
- data/app/controllers/riiif/images_controller.rb +16 -4
- data/app/models/riiif/image.rb +4 -3
- data/config/routes.rb +1 -1
- data/lib/riiif.rb +8 -0
- data/lib/riiif/file_system_file_resolver.rb +1 -1
- data/lib/riiif/http_file_resolver.rb +7 -3
- data/lib/riiif/version.rb +1 -1
- data/riiif.gemspec +1 -0
- data/spec/controllers/images_controller_spec.rb +60 -1
- data/spec/models/file_system_file_resolver_spec.rb +2 -1
- data/spec/models/http_file_resolver_spec.rb +22 -0
- data/spec/models/image_spec.rb +6 -1
- data/spec/routing/resize_routes_spec.rb +3 -0
- metadata +33 -47
- data/app/helpers/riiif/openseadragon_helper.rb +0 -44
- data/app/views/riiif/images/view.html.erb +0 -2
- data/spec/helpers/openseadragon_helper_spec.rb +0 -33
- data/vendor/assets/images/openseadragon/fullpage_grouphover.png +0 -0
- data/vendor/assets/images/openseadragon/fullpage_hover.png +0 -0
- data/vendor/assets/images/openseadragon/fullpage_pressed.png +0 -0
- data/vendor/assets/images/openseadragon/fullpage_rest.png +0 -0
- data/vendor/assets/images/openseadragon/home_grouphover.png +0 -0
- data/vendor/assets/images/openseadragon/home_hover.png +0 -0
- data/vendor/assets/images/openseadragon/home_pressed.png +0 -0
- data/vendor/assets/images/openseadragon/home_rest.png +0 -0
- data/vendor/assets/images/openseadragon/next_grouphover.png +0 -0
- data/vendor/assets/images/openseadragon/next_hover.png +0 -0
- data/vendor/assets/images/openseadragon/next_pressed.png +0 -0
- data/vendor/assets/images/openseadragon/next_rest.png +0 -0
- data/vendor/assets/images/openseadragon/previous_grouphover.png +0 -0
- data/vendor/assets/images/openseadragon/previous_hover.png +0 -0
- data/vendor/assets/images/openseadragon/previous_pressed.png +0 -0
- data/vendor/assets/images/openseadragon/previous_rest.png +0 -0
- data/vendor/assets/images/openseadragon/zoomin_grouphover.png +0 -0
- data/vendor/assets/images/openseadragon/zoomin_hover.png +0 -0
- data/vendor/assets/images/openseadragon/zoomin_pressed.png +0 -0
- data/vendor/assets/images/openseadragon/zoomin_rest.png +0 -0
- data/vendor/assets/images/openseadragon/zoomout_grouphover.png +0 -0
- data/vendor/assets/images/openseadragon/zoomout_hover.png +0 -0
- data/vendor/assets/images/openseadragon/zoomout_pressed.png +0 -0
- data/vendor/assets/images/openseadragon/zoomout_rest.png +0 -0
- data/vendor/assets/javascripts/openseadragon.js +0 -12279
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dea7c70b11b5f293a13b1518eaad32036f450189
|
4
|
+
data.tar.gz: 26af68981801093f8d7a0f0e7b4f4aaf4d1cb14f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 619d7dd008484a2cb62d18d0a21d9e015d7d3a2c3b04065f3859eb59bf9857007b7768e2e1898f53b9795eff11f98eadeb0aef4be694d533a8ec1d822f5f70cc
|
7
|
+
data.tar.gz: 31a0d174c238ad6177b887028370665cb9e61dcf02522843a71be121e97ac88b2069ddab733b6e87d414332cb57eb53cb40de32bc35bc1d5c5a62b178b4280ae
|
data/README.md
CHANGED
@@ -63,18 +63,34 @@ Then you can make requests like this:
|
|
63
63
|
* http://www.example.org/image-service/abcd1234/full/150,75/0/native.jpg
|
64
64
|
* http://www.example.org/image-service/abcd1234/full/!150,75/0/native.jpg
|
65
65
|
|
66
|
-
###
|
66
|
+
### Using a default image
|
67
67
|
|
68
|
-
|
68
|
+
If there is a request for an id that doesn't exist, a 404 will be returned. You can optionally return an image with this 404 by setting this in your initializer:
|
69
69
|
|
70
70
|
```ruby
|
71
|
-
|
71
|
+
Riiif::not_found_image = 'path/to/image.png'
|
72
72
|
```
|
73
73
|
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
74
|
+
You can do this to create a default Riiif::Image to use (useful for passing "missing" images to openseadragon_collection_viewer):
|
75
|
+
|
76
|
+
```ruby
|
77
|
+
Riiif::Image.new('no_image', Riiif::File.new(Riiif.not_found_image))
|
78
|
+
```
|
79
|
+
|
80
|
+
## Running the tests
|
81
|
+
First, build the engine
|
82
|
+
```bash
|
83
|
+
rake engine_cart:generate
|
84
|
+
```
|
85
|
+
|
86
|
+
ImageMagick must be installed with jasper support
|
87
|
+
```bash
|
88
|
+
brew install imagemagick --with-jasper # if using Homebrew
|
89
|
+
```
|
90
|
+
|
91
|
+
Run the tests
|
92
|
+
```bash
|
93
|
+
rake spec
|
78
94
|
```
|
79
95
|
|
80
96
|
|
data/Rakefile
CHANGED
@@ -2,9 +2,19 @@ module Riiif
|
|
2
2
|
class ImagesController < ::ApplicationController
|
3
3
|
before_filter :link_header, only: [:show, :info]
|
4
4
|
def show
|
5
|
-
|
5
|
+
begin
|
6
|
+
image = Image.new(params[:id])
|
7
|
+
status = :ok
|
8
|
+
rescue ImageNotFoundError
|
9
|
+
if Riiif.not_found_image.present?
|
10
|
+
image = Riiif::Image.new(params[:id], Riiif::File.new(Riiif.not_found_image))
|
11
|
+
status = :not_found
|
12
|
+
else
|
13
|
+
raise
|
14
|
+
end
|
15
|
+
end
|
6
16
|
data = image.render(params.permit(:region, :size, :rotation, :quality, :format))
|
7
|
-
send_data data, type: Mime::Type.lookup_by_extension(params[:format]), :disposition => 'inline'
|
17
|
+
send_data data, status: status, type: Mime::Type.lookup_by_extension(params[:format]), :disposition => 'inline'
|
8
18
|
end
|
9
19
|
|
10
20
|
def info
|
@@ -18,8 +28,10 @@ module Riiif
|
|
18
28
|
|
19
29
|
protected
|
20
30
|
|
31
|
+
LEVEL2 = 'http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2'
|
32
|
+
|
21
33
|
def link_header
|
22
|
-
response.headers["Link"] =
|
34
|
+
response.headers["Link"] = "<#{LEVEL2}>;rel=\"profile\""
|
23
35
|
end
|
24
36
|
|
25
37
|
def server_info
|
@@ -27,7 +39,7 @@ module Riiif
|
|
27
39
|
"@context" => "http://library.stanford.edu/iiif/image-api/1.1/context.json",
|
28
40
|
"@id" => request.original_url.sub('/info.json', ''),
|
29
41
|
"formats" => Image::OUTPUT_FORMATS,
|
30
|
-
"profile" => "
|
42
|
+
"profile" => "#{LEVEL2}"
|
31
43
|
|
32
44
|
}
|
33
45
|
end
|
data/app/models/riiif/image.rb
CHANGED
@@ -9,10 +9,11 @@ module Riiif
|
|
9
9
|
|
10
10
|
attr_reader :id, :image
|
11
11
|
|
12
|
-
# @param [String] id The identifier of the file
|
13
|
-
|
12
|
+
# @param [String] id The identifier of the file to be looked up.
|
13
|
+
# @param [Riiif::File] file Optional: The Riiif::File to use instead of looking one up.
|
14
|
+
def initialize(id, file=nil)
|
14
15
|
@id = id
|
15
|
-
@image = file_resolver.find(id)
|
16
|
+
@image = file.present? ? file : file_resolver.find(id)
|
16
17
|
end
|
17
18
|
|
18
19
|
def render(args)
|
data/config/routes.rb
CHANGED
@@ -3,6 +3,6 @@ Riiif::Engine.routes.draw do
|
|
3
3
|
SIZES ||= /(pct:)?[\w.,]+/
|
4
4
|
get "/:id/:region/:size/:rotation/:quality(.:format)" => "images#show",
|
5
5
|
constraints: { rotation: ALLOW_DOTS, size: SIZES}
|
6
|
-
get "/:id/info
|
6
|
+
get "/:id/info.json" => "images#info", defaults: { format: 'json' }, as: 'info'
|
7
7
|
get "/:id/view(.:format)" => "images#view"
|
8
8
|
end
|
data/lib/riiif.rb
CHANGED
@@ -9,4 +9,12 @@ module Riiif
|
|
9
9
|
|
10
10
|
class Error < RuntimeError; end
|
11
11
|
class InvalidAttributeError < Error; end
|
12
|
+
class ImageNotFoundError < Error
|
13
|
+
attr_reader :original_exception
|
14
|
+
def initialize(orig=nil)
|
15
|
+
@original_exception = orig
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
mattr_accessor :not_found_image # the image to use when a lookup fails
|
12
20
|
end
|
@@ -49,10 +49,14 @@ module Riiif
|
|
49
49
|
ensure_cache_path(::File.dirname(file_name))
|
50
50
|
benchmark ("Riiif downloaded #{url}") do
|
51
51
|
::File.atomic_write(file_name, HTTPFileResolver.cache_path) do |local|
|
52
|
-
|
53
|
-
|
54
|
-
|
52
|
+
begin
|
53
|
+
Kernel::open(url) do |remote|
|
54
|
+
while chunk = remote.read(8192)
|
55
|
+
local.write(chunk)
|
56
|
+
end
|
55
57
|
end
|
58
|
+
rescue OpenURI::HTTPError => e
|
59
|
+
raise ImageNotFoundError.new(e)
|
56
60
|
end
|
57
61
|
end
|
58
62
|
end
|
data/lib/riiif/version.rb
CHANGED
data/riiif.gemspec
CHANGED
@@ -22,5 +22,6 @@ Gem::Specification.new do |spec|
|
|
22
22
|
spec.add_development_dependency "rake"
|
23
23
|
spec.add_development_dependency "engine_cart"
|
24
24
|
spec.add_development_dependency "rspec-rails"
|
25
|
+
spec.add_development_dependency "sqlite3"
|
25
26
|
spec.add_dependency 'rails', '> 3.2.0'
|
26
27
|
end
|
@@ -1,6 +1,8 @@
|
|
1
1
|
require 'spec_helper'
|
2
|
+
require 'open-uri'
|
2
3
|
|
3
4
|
describe Riiif::ImagesController do
|
5
|
+
let(:filename) { File.expand_path('spec/samples/world.jp2') }
|
4
6
|
routes { Riiif::Engine.routes }
|
5
7
|
it "should send images to the service" do
|
6
8
|
image = double
|
@@ -27,7 +29,64 @@ describe Riiif::ImagesController do
|
|
27
29
|
"width" =>6000,
|
28
30
|
"height" =>4000,
|
29
31
|
"formats" => [ "jpg", "png" ],
|
30
|
-
"profile" => "http://library.stanford.edu/iiif/image-api/1.1/compliance.html#
|
32
|
+
"profile" => "http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2"
|
31
33
|
expect(response.headers['Link']).to eq '<http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2>;rel="profile"'
|
32
34
|
end
|
35
|
+
|
36
|
+
context "with a nonexistent image" do
|
37
|
+
it "should error when a default image isn't sent" do
|
38
|
+
expect(Riiif::Image).to receive(:new).with('bad_id').and_raise(OpenURI::HTTPError.new("fail", StringIO.new))
|
39
|
+
expect do
|
40
|
+
get :show, id: 'bad_id', action: "show", region: 'full', size: 'full',
|
41
|
+
rotation: '0', quality: 'native', format: 'jpg'
|
42
|
+
end.to raise_error(StandardError)
|
43
|
+
end
|
44
|
+
|
45
|
+
context "with a default image set" do
|
46
|
+
around do |example|
|
47
|
+
old_value = Riiif.not_found_image
|
48
|
+
Riiif.not_found_image = filename
|
49
|
+
example.run
|
50
|
+
Riiif.not_found_image = old_value
|
51
|
+
end
|
52
|
+
|
53
|
+
it "should send the default 'not found' image for failed http files" do
|
54
|
+
not_found_image = double
|
55
|
+
expect(Riiif::Image).to receive(:new) do |id, file|
|
56
|
+
if file.present?
|
57
|
+
not_found_image
|
58
|
+
else
|
59
|
+
raise Riiif::ImageNotFoundError
|
60
|
+
end
|
61
|
+
end.twice
|
62
|
+
expect(not_found_image).to receive(:render).with("region" => 'full', "size" => 'full',
|
63
|
+
"rotation" => '0', "quality" => 'native',
|
64
|
+
"format" => 'jpg').and_return("default-image-data")
|
65
|
+
|
66
|
+
get :show, id: 'bad_id', action: "show", region: 'full', size: 'full',
|
67
|
+
rotation: '0', quality: 'native', format: 'jpg'
|
68
|
+
expect(response).to be_not_found
|
69
|
+
expect(response.body).to eq 'default-image-data'
|
70
|
+
end
|
71
|
+
|
72
|
+
it "should send the default 'not found' image for failed files on the filesystem" do
|
73
|
+
not_found_image = double
|
74
|
+
expect(Riiif::Image).to receive(:new) do |id, file|
|
75
|
+
if file.present?
|
76
|
+
not_found_image
|
77
|
+
else
|
78
|
+
raise Riiif::ImageNotFoundError
|
79
|
+
end
|
80
|
+
end.twice
|
81
|
+
expect(not_found_image).to receive(:render).with("region" => 'full', "size" => 'full',
|
82
|
+
"rotation" => '0', "quality" => 'native',
|
83
|
+
"format" => 'jpg').and_return("default-image-data")
|
84
|
+
|
85
|
+
get :show, id: 'bad_id', action: "show", region: 'full', size: 'full',
|
86
|
+
rotation: '0', quality: 'native', format: 'jpg'
|
87
|
+
expect(response).to be_not_found
|
88
|
+
expect(response.body).to eq 'default-image-data'
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
33
92
|
end
|
@@ -3,8 +3,9 @@ require 'spec_helper'
|
|
3
3
|
describe Riiif::FileSystemFileResolver do
|
4
4
|
subject { Riiif::FileSystemFileResolver }
|
5
5
|
it "should raise an error when the file isn't found" do
|
6
|
-
expect{subject.find('1234')}.to raise_error
|
6
|
+
expect{subject.find('1234')}.to raise_error Riiif::ImageNotFoundError
|
7
7
|
end
|
8
|
+
|
8
9
|
it "should get the jpeg2000 file" do
|
9
10
|
expect(subject.find('world').path).to eq Riiif::FileSystemFileResolver.root + '/spec/samples/world.jp2'
|
10
11
|
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Riiif::HTTPFileResolver do
|
4
|
+
subject { Riiif::HTTPFileResolver }
|
5
|
+
around do |example|
|
6
|
+
old_value = Riiif::HTTPFileResolver.id_to_uri
|
7
|
+
Riiif::HTTPFileResolver.id_to_uri = lambda {|id| id}
|
8
|
+
example.run
|
9
|
+
Riiif::HTTPFileResolver.id_to_uri = old_value
|
10
|
+
end
|
11
|
+
|
12
|
+
it "should raise an error when the file isn't found" do
|
13
|
+
expect(Kernel).to receive(:open).and_raise(OpenURI::HTTPError.new("failure", StringIO.new))
|
14
|
+
begin
|
15
|
+
subject.find('1234')
|
16
|
+
rescue Riiif::ImageNotFoundError => e
|
17
|
+
end
|
18
|
+
expect(e).to be_a Riiif::ImageNotFoundError
|
19
|
+
expect(e.original_exception).to be_an OpenURI::HTTPError
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
data/spec/models/image_spec.rb
CHANGED
@@ -13,6 +13,12 @@ describe Riiif::Image do
|
|
13
13
|
end
|
14
14
|
end
|
15
15
|
|
16
|
+
it "should be able to override the file used for the Image" do
|
17
|
+
img = Riiif::Image.new('some_id', Riiif::File.new(filename))
|
18
|
+
expect(img.id).to eq 'some_id'
|
19
|
+
expect(img.info).to eq height: 400, width: 800
|
20
|
+
end
|
21
|
+
|
16
22
|
describe "without a format" do
|
17
23
|
it "should raise an error" do
|
18
24
|
expect { subject.render('size' => 'full') }.to raise_error ArgumentError
|
@@ -41,7 +47,6 @@ describe Riiif::Image do
|
|
41
47
|
end
|
42
48
|
end
|
43
49
|
|
44
|
-
|
45
50
|
describe "mogrify" do
|
46
51
|
describe "region" do
|
47
52
|
it "should return the original when specifing full size" do
|
metadata
CHANGED
@@ -1,83 +1,97 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: riiif
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Justin Coyne
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2014-05-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - ~>
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '1.3'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - ~>
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '1.3'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: engine_cart
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rspec-rails
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: sqlite3
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
67
81
|
- !ruby/object:Gem::Version
|
68
82
|
version: '0'
|
69
83
|
- !ruby/object:Gem::Dependency
|
70
84
|
name: rails
|
71
85
|
requirement: !ruby/object:Gem::Requirement
|
72
86
|
requirements:
|
73
|
-
- -
|
87
|
+
- - ">"
|
74
88
|
- !ruby/object:Gem::Version
|
75
89
|
version: 3.2.0
|
76
90
|
type: :runtime
|
77
91
|
prerelease: false
|
78
92
|
version_requirements: !ruby/object:Gem::Requirement
|
79
93
|
requirements:
|
80
|
-
- -
|
94
|
+
- - ">"
|
81
95
|
- !ruby/object:Gem::Version
|
82
96
|
version: 3.2.0
|
83
97
|
description: A IIIF image server
|
@@ -87,17 +101,15 @@ executables: []
|
|
87
101
|
extensions: []
|
88
102
|
extra_rdoc_files: []
|
89
103
|
files:
|
90
|
-
- .gitignore
|
91
|
-
- .rspec
|
104
|
+
- ".gitignore"
|
105
|
+
- ".rspec"
|
92
106
|
- Gemfile
|
93
107
|
- LICENSE
|
94
108
|
- README.md
|
95
109
|
- Rakefile
|
96
110
|
- app/controllers/riiif/images_controller.rb
|
97
|
-
- app/helpers/riiif/openseadragon_helper.rb
|
98
111
|
- app/models/riiif/file.rb
|
99
112
|
- app/models/riiif/image.rb
|
100
|
-
- app/views/riiif/images/view.html.erb
|
101
113
|
- config/routes.rb
|
102
114
|
- lib/riiif.rb
|
103
115
|
- lib/riiif/engine.rb
|
@@ -106,38 +118,13 @@ files:
|
|
106
118
|
- lib/riiif/version.rb
|
107
119
|
- riiif.gemspec
|
108
120
|
- spec/controllers/images_controller_spec.rb
|
109
|
-
- spec/helpers/openseadragon_helper_spec.rb
|
110
121
|
- spec/models/file_system_file_resolver_spec.rb
|
122
|
+
- spec/models/http_file_resolver_spec.rb
|
111
123
|
- spec/models/image_spec.rb
|
112
124
|
- spec/routing/resize_routes_spec.rb
|
113
125
|
- spec/spec_helper.rb
|
114
126
|
- spec/test_app_templates/Gemfile.extra
|
115
127
|
- spec/test_app_templates/lib/generators/test_app_generator.rb
|
116
|
-
- vendor/assets/images/openseadragon/fullpage_grouphover.png
|
117
|
-
- vendor/assets/images/openseadragon/fullpage_hover.png
|
118
|
-
- vendor/assets/images/openseadragon/fullpage_pressed.png
|
119
|
-
- vendor/assets/images/openseadragon/fullpage_rest.png
|
120
|
-
- vendor/assets/images/openseadragon/home_grouphover.png
|
121
|
-
- vendor/assets/images/openseadragon/home_hover.png
|
122
|
-
- vendor/assets/images/openseadragon/home_pressed.png
|
123
|
-
- vendor/assets/images/openseadragon/home_rest.png
|
124
|
-
- vendor/assets/images/openseadragon/next_grouphover.png
|
125
|
-
- vendor/assets/images/openseadragon/next_hover.png
|
126
|
-
- vendor/assets/images/openseadragon/next_pressed.png
|
127
|
-
- vendor/assets/images/openseadragon/next_rest.png
|
128
|
-
- vendor/assets/images/openseadragon/previous_grouphover.png
|
129
|
-
- vendor/assets/images/openseadragon/previous_hover.png
|
130
|
-
- vendor/assets/images/openseadragon/previous_pressed.png
|
131
|
-
- vendor/assets/images/openseadragon/previous_rest.png
|
132
|
-
- vendor/assets/images/openseadragon/zoomin_grouphover.png
|
133
|
-
- vendor/assets/images/openseadragon/zoomin_hover.png
|
134
|
-
- vendor/assets/images/openseadragon/zoomin_pressed.png
|
135
|
-
- vendor/assets/images/openseadragon/zoomin_rest.png
|
136
|
-
- vendor/assets/images/openseadragon/zoomout_grouphover.png
|
137
|
-
- vendor/assets/images/openseadragon/zoomout_hover.png
|
138
|
-
- vendor/assets/images/openseadragon/zoomout_pressed.png
|
139
|
-
- vendor/assets/images/openseadragon/zoomout_rest.png
|
140
|
-
- vendor/assets/javascripts/openseadragon.js
|
141
128
|
homepage: https://github.com/curationexperts/riiif
|
142
129
|
licenses:
|
143
130
|
- APACHE2
|
@@ -148,27 +135,26 @@ require_paths:
|
|
148
135
|
- lib
|
149
136
|
required_ruby_version: !ruby/object:Gem::Requirement
|
150
137
|
requirements:
|
151
|
-
- -
|
138
|
+
- - ">="
|
152
139
|
- !ruby/object:Gem::Version
|
153
140
|
version: '0'
|
154
141
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
155
142
|
requirements:
|
156
|
-
- -
|
143
|
+
- - ">="
|
157
144
|
- !ruby/object:Gem::Version
|
158
145
|
version: '0'
|
159
146
|
requirements: []
|
160
147
|
rubyforge_project:
|
161
|
-
rubygems_version: 2.
|
148
|
+
rubygems_version: 2.2.2
|
162
149
|
signing_key:
|
163
150
|
specification_version: 4
|
164
151
|
summary: A rails engine that support IIIF requests
|
165
152
|
test_files:
|
166
153
|
- spec/controllers/images_controller_spec.rb
|
167
|
-
- spec/helpers/openseadragon_helper_spec.rb
|
168
154
|
- spec/models/file_system_file_resolver_spec.rb
|
155
|
+
- spec/models/http_file_resolver_spec.rb
|
169
156
|
- spec/models/image_spec.rb
|
170
157
|
- spec/routing/resize_routes_spec.rb
|
171
158
|
- spec/spec_helper.rb
|
172
159
|
- spec/test_app_templates/Gemfile.extra
|
173
160
|
- spec/test_app_templates/lib/generators/test_app_generator.rb
|
174
|
-
has_rdoc:
|