riiif 0.0.6 → 0.0.7
Sign up to get free protection for your applications and to get access to all the features.
- 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:
|