prismic.io 1.0.0.preview.8 → 1.0.0.rc1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/Gemfile.lock +1 -1
- data/README.md +43 -23
- data/changelog.md +17 -2
- data/lib/prismic/fragments/group.rb +21 -0
- data/lib/prismic/fragments/link.rb +28 -3
- data/lib/prismic/json_parsers.rb +14 -0
- data/lib/prismic/version.rb +1 -1
- data/spec/fragments_spec.rb +41 -7
- data/spec/json_parsers_spec.rb +28 -0
- data/spec/responses_mocks/structured_text_linkfile.json +71 -0
- metadata +5 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dfc8f36ad84978908dd0e3de61caaf36a354c572
|
4
|
+
data.tar.gz: 9faacc27422f43a5e668136082398036a95a3034
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b70799f5a36b767f8635017c7b6451b2162285f38027d578fe7d31844dad2332d23e9afe19685be06af1293773debf7366dbb5a31301c61c42db0bdee4e4c156
|
7
|
+
data.tar.gz: f3b17450288b894a4f5e37943608630c14ae9a990483e5cb6691ac7ca81a984cc7b4602cd3e0d108527a9cee857b0454213e8f15a0eb2bf813d8def439d25594
|
data/.gitignore
CHANGED
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -4,53 +4,73 @@
|
|
4
4
|
[![Build Status](https://api.travis-ci.org/prismicio/ruby-kit.png)](https://travis-ci.org/prismicio/ruby-kit)
|
5
5
|
[![Code Climate](https://codeclimate.com/github/prismicio/ruby-kit.png)](https://codeclimate.com/github/prismicio/ruby-kit)
|
6
6
|
|
7
|
-
### Getting Started
|
7
|
+
### Getting Started
|
8
8
|
|
9
|
-
#### Install
|
9
|
+
#### Install the kit for your project
|
10
10
|
|
11
|
-
|
11
|
+
*(Assuming that [Ruby is installed](https://www.ruby-lang.org/en/downloads/) on your computer, as well as [RubyGems](http://rubygems.org/pages/download))*
|
12
12
|
|
13
|
-
```ruby
|
14
|
-
gem 'prismic.io', require: 'prismic'
|
15
|
-
```
|
16
13
|
|
17
|
-
|
18
|
-
|
19
|
-
Run in shell:
|
14
|
+
To install the gem on your computer, run in shell:
|
20
15
|
|
21
16
|
```sh
|
22
17
|
gem install prismic.io --pre
|
23
18
|
```
|
24
|
-
|
25
19
|
then add in your code:
|
26
|
-
|
27
20
|
```ruby
|
28
21
|
require 'prismic'
|
29
22
|
```
|
30
23
|
|
31
|
-
|
24
|
+
To add the gem as a dependency to your project with [Bundler](http://bundler.io/), you can add this line in your Gemfile:
|
32
25
|
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
* see [what else is available for Ruby](https://developers.prismic.io/technologies/UjBh6MuvzeMJvE4m/ruby).
|
26
|
+
```ruby
|
27
|
+
gem 'prismic.io', require: 'prismic'
|
28
|
+
```
|
37
29
|
|
38
|
-
####
|
30
|
+
#### Get started with prismic.io
|
39
31
|
|
40
|
-
|
32
|
+
You can find out [how to get started with prismic.io](https://developers.prismic.io/documentation/UjBaQsuvzdIHvE4D/getting-started) on our [prismic.io developer's portal](https://developers.prismic.io/).
|
41
33
|
|
42
|
-
|
34
|
+
#### Get started using the kit
|
35
|
+
|
36
|
+
Also on our [prismic.io developer's portal](https://developers.prismic.io/), on top of our full documentation, you will:
|
37
|
+
* get a thorough introduction of [how to use prismic.io kits](https://developers.prismic.io/documentation/UjBe8bGIJ3EKtgBZ/api-documentation#kits-and-helpers), including this one.
|
38
|
+
* see [what else is available for Ruby](https://developers.prismic.io/technologies/UjBh6MuvzeMJvE4m/ruby): starter projects, examples, ...
|
39
|
+
|
40
|
+
#### Kit's detailed documentation
|
43
41
|
|
44
|
-
|
42
|
+
To get a detailed documentation of the Ruby kit's variables and methods, please check out the [prismic.io Ruby kit's documentation](http://rubydoc.info/github/prismicio/ruby-kit/master/frames).
|
45
43
|
|
46
|
-
|
44
|
+
Thanks to Ruby's syntax, this kit contains some mild differences and syntastic sugar over [the "Kits and helpers" section of our API documentation](https://developers.prismic.io/documentation/UjBe8bGIJ3EKtgBZ/api-documentation#kits-and-helpers) in general (which you should read first). They are listed here:
|
47
45
|
* When calling the API, a faster way to pass the `ref`: directly as a parameter of the `submit` method (no need to use the `ref` method then): `api.form("everything").submit(@ref)`.
|
48
46
|
* Accessing type-dependent fields from a `document` is done through the `[]` operator (rather than a `get()` method). Printing the HTML version of a field therefore looks like `document["title_user_friendly"].as_html(link_resolver(@ref))`.
|
49
47
|
* Two of the fields in the `DocumentLink` object (the one used to write your `link_resolver` method, for instance) were renamed to fit Ruby's best practice: `doc.type` is in fact `doc.link_type`, and `doc.isBroken` is in fact `doc.broken?`.
|
50
48
|
|
51
|
-
|
49
|
+
### Changelog
|
50
|
+
|
51
|
+
Need to see what changed, or to upgrade your kit? Check out [this kit's changelog](changelog.md).
|
52
|
+
|
53
|
+
### Contribute to the kit
|
54
|
+
|
55
|
+
Contribution is open to all developer levels, read our "[Contribute to the official kits](https://developers.prismic.io/documentation/UszOeAEAANUlwFpp/contribute-to-the-official-kits)" documentation to learn more.
|
56
|
+
|
57
|
+
#### Install the kit locally
|
58
|
+
|
59
|
+
Of course, you're going to need [Ruby installed](https://www.ruby-lang.org/en/downloads/) on your computer, as well as [RubyGems](http://rubygems.org/pages/download) and [Bundler](http://bundler.io/).
|
60
|
+
|
61
|
+
Clone the kit, then run ```bundle install```.
|
62
|
+
|
63
|
+
#### Test
|
64
|
+
|
65
|
+
Please write tests for any bugfix or new feature, by placing your tests in the [spec/](spec/) folder, following the [RSpec](http://rspec.info/) syntax. Launch the tests by running ```bundle exec rspec```
|
66
|
+
|
67
|
+
If you find existing code that is not optimally tested and wish to make it better, we really appreciate it; but you should document it on its own branch and its own pull request.
|
68
|
+
|
69
|
+
#### Documentation
|
70
|
+
|
71
|
+
Please document any bugfix or new feature, using the [Yard](http://yardoc.org/) syntax. Don't worry about generating the doc, we'll take care of that.
|
52
72
|
|
53
|
-
|
73
|
+
If you find existing code that is not optimally documented and wish to make it better, we really appreciate it; but you should document it on its own branch and its own pull request.
|
54
74
|
|
55
75
|
### Licence
|
56
76
|
|
data/changelog.md
CHANGED
@@ -1,5 +1,20 @@
|
|
1
1
|
## Changelog for prismic.io Ruby development kit
|
2
2
|
|
3
|
+
### prismic.io.1.0.0.rc1
|
4
|
+
|
5
|
+
#### Potentially breaking changes for advanced users
|
6
|
+
|
7
|
+
* **If you've been monkey-patching or overriding the `Prismic::Fragments::MediaLink`** class: it doesn't exist anymore, and is now replaced by `Prismic::Fragments::FileLink` or `Prismic::Fragments::ImageLink`, depending on the kind of link.
|
8
|
+
|
9
|
+
#### New features
|
10
|
+
* Support for `Link.image` and `Link.file` kinds of links, with new `Prismic::Fragments::FileLink` and `Prismic::Fragments::ImageLink` classes.
|
11
|
+
* `Prismic::Fragments::Group` class now includes `Enumerable`, which means you can use `each`, `map`, `select`, etc. on `Group` objects. Same with `Prismic::Fragments::Group::FragmentMapping` objects (used internally by the `Group` class).
|
12
|
+
* `Prismic::Fragments::Group` class now have a `length` method, aliased as `size`. Same with `Prismic::Fragments::Group::FragmentMapping` objects (used internally by the `Group` class).
|
13
|
+
* The `url` method only existed for the `Prismic::Fragments::WebLink` class, now it is directly in the `Prismic::Fragments::Link` class, extended by all links classes: `Prismic::Fragments::WebLink`, `Prismic::Fragments::DocumentLink`, etc...
|
14
|
+
|
15
|
+
#### Syntactic sugar
|
16
|
+
* Since you can now call `url` on any kind of link (see right above), this allows to do this in Rails, regardless of the kind of link the `link` object is: `<%= link_to "Click here", link.url, :whatever_attribute => "whatever value" %>`.
|
17
|
+
|
3
18
|
### prismic.io.1.0.0.preview.8
|
4
19
|
|
5
20
|
#### New features
|
@@ -11,7 +26,7 @@
|
|
11
26
|
|
12
27
|
### prismic.io.1.0.0.preview.7
|
13
28
|
|
14
|
-
#### Potentially breaking changes
|
29
|
+
#### Potentially breaking changes for basic users
|
15
30
|
* Boldness in `Prismic::Fragments::StructuredText#as_html` was represented as `<b>` tags, now as `<strong>` tags.
|
16
31
|
|
17
32
|
#### New features
|
@@ -23,5 +38,5 @@
|
|
23
38
|
|
24
39
|
### prismic.io.1.0.0.preview.6
|
25
40
|
|
26
|
-
#### Potentially breaking changes
|
41
|
+
#### Potentially breaking changes for basic users
|
27
42
|
* From an image, you had to call the view with its index, like this `image_object[0]`; now they're stored in a Hash, you have to call them with their proper name: `image_object['large']`.
|
@@ -20,6 +20,16 @@ module Prismic
|
|
20
20
|
@fragment_list_array[i]
|
21
21
|
end
|
22
22
|
|
23
|
+
def each(&blk)
|
24
|
+
@fragment_list_array.each(&blk)
|
25
|
+
end
|
26
|
+
include Enumerable # adds map, select, etc
|
27
|
+
|
28
|
+
def length
|
29
|
+
@fragment_list_array.length
|
30
|
+
end
|
31
|
+
alias :size :length
|
32
|
+
|
23
33
|
def as_html(link_resolver = nil)
|
24
34
|
@fragment_list_array.map { |fl| fl.as_html(link_resolver) }.join("\n")
|
25
35
|
end
|
@@ -28,6 +38,7 @@ module Prismic
|
|
28
38
|
@fragment_list_array.map { |fl| fl.as_text }.join("\n")
|
29
39
|
end
|
30
40
|
|
41
|
+
|
31
42
|
class FragmentMapping
|
32
43
|
|
33
44
|
# a hash containing all the fragments in the fragment list
|
@@ -42,6 +53,16 @@ module Prismic
|
|
42
53
|
@fragments[name]
|
43
54
|
end
|
44
55
|
|
56
|
+
def each(&blk)
|
57
|
+
@fragments.each(&blk)
|
58
|
+
end
|
59
|
+
include Enumerable # adds map, select, etc
|
60
|
+
|
61
|
+
def length
|
62
|
+
@fragments.length
|
63
|
+
end
|
64
|
+
alias :size :length
|
65
|
+
|
45
66
|
def as_html(link_resolver = nil)
|
46
67
|
@fragments.map { |name, fragment|
|
47
68
|
%(<section data-field="#{name}">#{fragment.as_html(link_resolver)}</section>)
|
@@ -14,6 +14,11 @@ module Prismic
|
|
14
14
|
def as_html(link_resolver=nil)
|
15
15
|
%(#{start_html(link_resolver)}#@url#{end_html(link_resolver)})
|
16
16
|
end
|
17
|
+
|
18
|
+
def url(link_resolver=nil)
|
19
|
+
@url
|
20
|
+
end
|
21
|
+
|
17
22
|
end
|
18
23
|
|
19
24
|
class WebLink < Link
|
@@ -24,7 +29,23 @@ module Prismic
|
|
24
29
|
end
|
25
30
|
end
|
26
31
|
|
27
|
-
class
|
32
|
+
class FileLink < Link
|
33
|
+
attr_accessor :url, :name, :kind, :size
|
34
|
+
|
35
|
+
def initialize(url, name, kind, size)
|
36
|
+
@url = url
|
37
|
+
@name = name
|
38
|
+
@kind = kind
|
39
|
+
@size = size
|
40
|
+
end
|
41
|
+
|
42
|
+
def as_html(link_resolver=nil)
|
43
|
+
%(#{start_html(link_resolver)}#@name#{end_html(link_resolver)})
|
44
|
+
end
|
45
|
+
|
46
|
+
end
|
47
|
+
|
48
|
+
class ImageLink < Link
|
28
49
|
attr_accessor :url
|
29
50
|
|
30
51
|
def initialize(url)
|
@@ -44,8 +65,7 @@ module Prismic
|
|
44
65
|
end
|
45
66
|
|
46
67
|
def start_html(link_resolver)
|
47
|
-
|
48
|
-
broken? ? %(<span>) : %(<a href="#{link_resolver.link_to(self)}">)
|
68
|
+
broken? ? %(<span>) : %(<a href="#{self.url(link_resolver)}">)
|
49
69
|
end
|
50
70
|
|
51
71
|
def end_html(link_resolver = nil)
|
@@ -56,6 +76,11 @@ module Prismic
|
|
56
76
|
%(#{start_html(link_resolver)}#{slug}#{end_html(link_resolver)})
|
57
77
|
end
|
58
78
|
|
79
|
+
def url(link_resolver)
|
80
|
+
raise "A link_resolver method is needed to serialize document links into a correct URL on your website. If you're using a starter kit, a trivial one is provided out-of-the-box, that you can update later." if link_resolver == nil
|
81
|
+
link_resolver.link_to(self)
|
82
|
+
end
|
83
|
+
|
59
84
|
alias :broken? :broken
|
60
85
|
end
|
61
86
|
end
|
data/lib/prismic/json_parsers.rb
CHANGED
@@ -8,6 +8,8 @@ module Prismic
|
|
8
8
|
'Link.document' => method(:document_link_parser),
|
9
9
|
'Text' => method(:text_parser),
|
10
10
|
'Link.web' => method(:web_link_parser),
|
11
|
+
'Link.image' => method(:image_link_parser),
|
12
|
+
'Link.file' => method(:file_link_parser),
|
11
13
|
'Date' => method(:date_parser),
|
12
14
|
'Number' => method(:number_parser),
|
13
15
|
'Embed' => method(:embed_parser),
|
@@ -30,6 +32,14 @@ module Prismic
|
|
30
32
|
json['value']['isBroken'])
|
31
33
|
end
|
32
34
|
|
35
|
+
def image_link_parser(json)
|
36
|
+
Prismic::Fragments::ImageLink.new(json['value']['image']['url'])
|
37
|
+
end
|
38
|
+
|
39
|
+
def file_link_parser(json)
|
40
|
+
Prismic::Fragments::FileLink.new(json['value']['file']['url'], json['value']['file']['name'], json['value']['file']['kind'], json['value']['file']['size'])
|
41
|
+
end
|
42
|
+
|
33
43
|
def text_parser(json)
|
34
44
|
Prismic::Fragments::Text.new(json['value'])
|
35
45
|
end
|
@@ -209,6 +219,10 @@ module Prismic
|
|
209
219
|
document_link_parser(json)
|
210
220
|
elsif json['type'] == 'Link.web'
|
211
221
|
web_link_parser(json)
|
222
|
+
elsif json['type'] == 'Link.image'
|
223
|
+
image_link_parser(json)
|
224
|
+
elsif json['type'] == 'Link.file'
|
225
|
+
file_link_parser(json)
|
212
226
|
end
|
213
227
|
end
|
214
228
|
end
|
data/lib/prismic/version.rb
CHANGED
data/spec/fragments_spec.rb
CHANGED
@@ -34,37 +34,50 @@ describe 'WebLink' do
|
|
34
34
|
end
|
35
35
|
end
|
36
36
|
|
37
|
-
describe '
|
37
|
+
describe 'ImageLink' do
|
38
38
|
before do
|
39
|
-
@
|
39
|
+
@image_link = Prismic::Fragments::ImageLink.new('my_url')
|
40
40
|
end
|
41
41
|
|
42
42
|
describe 'as_html' do
|
43
43
|
|
44
44
|
it "returns an <a> HTML element" do
|
45
|
-
Nokogiri::XML(@
|
45
|
+
Nokogiri::XML(@image_link.as_html).child.name.should == 'a'
|
46
46
|
end
|
47
47
|
|
48
48
|
it "returns a HTML element with an href attribute" do
|
49
|
-
Nokogiri::XML(@
|
49
|
+
Nokogiri::XML(@image_link.as_html).child.has_attribute?('href').should be_true
|
50
50
|
end
|
51
51
|
|
52
52
|
it "returns a HTML element with an href attribute pointing to the url" do
|
53
|
-
Nokogiri::XML(@
|
53
|
+
Nokogiri::XML(@image_link.as_html).child.attribute('href').value.should == 'my_url'
|
54
54
|
end
|
55
55
|
|
56
56
|
it "returns a HTML element whose content is the link" do
|
57
|
-
Nokogiri::XML(@
|
57
|
+
Nokogiri::XML(@image_link.as_html).child.content.should == 'my_url'
|
58
58
|
end
|
59
59
|
end
|
60
60
|
|
61
61
|
describe 'as_text' do
|
62
62
|
it 'raises an NotImplementedError' do
|
63
|
-
expect { @
|
63
|
+
expect { @image_link.as_text }.to raise_error NotImplementedError
|
64
64
|
end
|
65
65
|
end
|
66
66
|
end
|
67
67
|
|
68
|
+
describe 'FileLink' do
|
69
|
+
describe 'in structured texts' do
|
70
|
+
before do
|
71
|
+
@raw_json_structured_text = File.read("#{File.dirname(__FILE__)}/responses_mocks/structured_text_linkfile.json")
|
72
|
+
@json_structured_text = JSON.parse(@raw_json_structured_text)
|
73
|
+
@structured_text = Prismic::JsonParser.structured_text_parser(@json_structured_text)
|
74
|
+
end
|
75
|
+
it 'serializes well into HTML' do
|
76
|
+
@structured_text.as_html(nil).should == "<p><a href=\"https://prismic-io.s3.amazonaws.com/annual.report.pdf\">2012 Annual Report</p>\n\n<p><a href=\"https://prismic-io.s3.amazonaws.com/annual.budget.pdf\">2012 Annual Budget</p>\n\n<p><a href=\"https://prismic-io.s3.amazonaws.com/vision.strategic.plan_.sm_.pdf\">2015 Vision & Strategic Plan</p>"
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
68
81
|
describe 'Text' do
|
69
82
|
before do
|
70
83
|
@text = Prismic::Fragments::Text.new('my_value')
|
@@ -585,4 +598,25 @@ describe 'Group' do
|
|
585
598
|
@docchapter['docchapter.docs'].as_html(@link_resolver).should == "<section data-field=\"linktodoc\"><a href=\"http://localhost/doc/UrDofwEAALAdpbNH\">with-jquery</a></section>\n<section data-field=\"linktodoc\"><a href=\"http://localhost/doc/UrDp8AEAAPUdpbNL\">with-bootstrap</a></section>"
|
586
599
|
end
|
587
600
|
|
601
|
+
it 'loops through the group fragment properly' do
|
602
|
+
@docchapter['docchapter.docs']
|
603
|
+
.map{ |fragments| fragments['linktodoc'].slug }
|
604
|
+
.join(' ').should == "with-jquery with-bootstrap"
|
605
|
+
end
|
606
|
+
|
607
|
+
it 'returns the proper length of a group fragment' do
|
608
|
+
@docchapter['docchapter.docs'].length.should == 2
|
609
|
+
@docchapter['docchapter.docs'].size.should == 2
|
610
|
+
end
|
611
|
+
|
612
|
+
it 'loops through the subfragment list properly' do
|
613
|
+
@docchapter['docchapter.docs'][0].count.should == 1
|
614
|
+
@docchapter['docchapter.docs'][0].first[0].should == "linktodoc"
|
615
|
+
end
|
616
|
+
|
617
|
+
it 'returns the proper length of the sunfragment list' do
|
618
|
+
@docchapter['docchapter.docs'][0].length.should == 1
|
619
|
+
@docchapter['docchapter.docs'][0].size.should == 1
|
620
|
+
end
|
621
|
+
|
588
622
|
end
|
data/spec/json_parsers_spec.rb
CHANGED
@@ -199,6 +199,34 @@ json
|
|
199
199
|
end
|
200
200
|
end
|
201
201
|
|
202
|
+
describe 'file_link_parser' do
|
203
|
+
before do
|
204
|
+
raw_json = <<json
|
205
|
+
{
|
206
|
+
"type": "Link.file",
|
207
|
+
"value": {
|
208
|
+
"file": {
|
209
|
+
"name": "2012_annual.report.pdf",
|
210
|
+
"kind": "document",
|
211
|
+
"url": "https://prismic-io.s3.amazonaws.com/annual.report.pdf",
|
212
|
+
"size": "1282484"
|
213
|
+
}
|
214
|
+
}
|
215
|
+
}
|
216
|
+
json
|
217
|
+
@json = JSON.parse(raw_json)
|
218
|
+
@link_file = Prismic::JsonParser.file_link_parser(@json)
|
219
|
+
end
|
220
|
+
|
221
|
+
it 'correctly parses file links' do
|
222
|
+
@link_file.url.should == "https://prismic-io.s3.amazonaws.com/annual.report.pdf"
|
223
|
+
@link_file.kind.should == "document"
|
224
|
+
@link_file.name.should == "2012_annual.report.pdf"
|
225
|
+
@link_file.size.should == "1282484"
|
226
|
+
@link_file.as_html.should == "<a href=\"https://prismic-io.s3.amazonaws.com/annual.report.pdf\">2012_annual.report.pdf</a>"
|
227
|
+
end
|
228
|
+
end
|
229
|
+
|
202
230
|
describe 'structured_text_parser' do
|
203
231
|
before do
|
204
232
|
raw_json_paragraph = File.read("#{File.dirname(__FILE__)}/responses_mocks/structured_text_paragraph.json")
|
@@ -0,0 +1,71 @@
|
|
1
|
+
{
|
2
|
+
"type": "StructuredText",
|
3
|
+
"value": [
|
4
|
+
{
|
5
|
+
"type": "paragraph",
|
6
|
+
"text": "2012 Annual Report",
|
7
|
+
"spans": [
|
8
|
+
{
|
9
|
+
"start": 0,
|
10
|
+
"end": 18,
|
11
|
+
"type": "hyperlink",
|
12
|
+
"data": {
|
13
|
+
"type": "Link.file",
|
14
|
+
"value": {
|
15
|
+
"file": {
|
16
|
+
"name": "2012_annual.report.pdf",
|
17
|
+
"kind": "document",
|
18
|
+
"url": "https://prismic-io.s3.amazonaws.com/annual.report.pdf",
|
19
|
+
"size": "1282484"
|
20
|
+
}
|
21
|
+
}
|
22
|
+
}
|
23
|
+
}
|
24
|
+
]
|
25
|
+
},
|
26
|
+
{
|
27
|
+
"type": "paragraph",
|
28
|
+
"text": "2012 Annual Budget",
|
29
|
+
"spans": [
|
30
|
+
{
|
31
|
+
"start": 0,
|
32
|
+
"end": 18,
|
33
|
+
"type": "hyperlink",
|
34
|
+
"data": {
|
35
|
+
"type": "Link.file",
|
36
|
+
"value": {
|
37
|
+
"file": {
|
38
|
+
"name": "2012_smec.annual.budget.pdf",
|
39
|
+
"kind": "document",
|
40
|
+
"url": "https://prismic-io.s3.amazonaws.com/annual.budget.pdf",
|
41
|
+
"size": "59229"
|
42
|
+
}
|
43
|
+
}
|
44
|
+
}
|
45
|
+
}
|
46
|
+
]
|
47
|
+
},
|
48
|
+
{
|
49
|
+
"type": "paragraph",
|
50
|
+
"text": "2015 Vision & Strategic Plan",
|
51
|
+
"spans": [
|
52
|
+
{
|
53
|
+
"start": 0,
|
54
|
+
"end": 28,
|
55
|
+
"type": "hyperlink",
|
56
|
+
"data": {
|
57
|
+
"type": "Link.file",
|
58
|
+
"value": {
|
59
|
+
"file": {
|
60
|
+
"name": "2015_vision.strategic.plan_.sm_.pdf",
|
61
|
+
"kind": "document",
|
62
|
+
"url": "https://prismic-io.s3.amazonaws.com/vision.strategic.plan_.sm_.pdf",
|
63
|
+
"size": "1969956"
|
64
|
+
}
|
65
|
+
}
|
66
|
+
}
|
67
|
+
}
|
68
|
+
]
|
69
|
+
}
|
70
|
+
]
|
71
|
+
}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: prismic.io
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.0.
|
4
|
+
version: 1.0.0.rc1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Étienne Vallette d'Osia
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2014-01-29 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -109,6 +109,7 @@ files:
|
|
109
109
|
- spec/responses_mocks/document_with_unknown_fragment.json
|
110
110
|
- spec/responses_mocks/fragments.json
|
111
111
|
- spec/responses_mocks/structured_text_heading.json
|
112
|
+
- spec/responses_mocks/structured_text_linkfile.json
|
112
113
|
- spec/responses_mocks/structured_text_paragraph.json
|
113
114
|
- spec/spec_helper.rb
|
114
115
|
homepage: http://prismic.io
|
@@ -131,7 +132,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
131
132
|
version: 1.3.1
|
132
133
|
requirements: []
|
133
134
|
rubyforge_project:
|
134
|
-
rubygems_version: 2.
|
135
|
+
rubygems_version: 2.2.0
|
135
136
|
signing_key:
|
136
137
|
specification_version: 4
|
137
138
|
summary: Prismic.io development kit
|
@@ -145,6 +146,6 @@ test_files:
|
|
145
146
|
- spec/responses_mocks/document_with_unknown_fragment.json
|
146
147
|
- spec/responses_mocks/fragments.json
|
147
148
|
- spec/responses_mocks/structured_text_heading.json
|
149
|
+
- spec/responses_mocks/structured_text_linkfile.json
|
148
150
|
- spec/responses_mocks/structured_text_paragraph.json
|
149
151
|
- spec/spec_helper.rb
|
150
|
-
has_rdoc:
|