wcc-blogs-client 0.5.2 → 0.6.0
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/lib/wcc/blogs.rb +1 -0
- data/lib/wcc/blogs/client/response.rb +1 -1
- data/lib/wcc/blogs/collection_summary.rb +1 -26
- data/lib/wcc/blogs/linked_blog_post_summary.rb +37 -0
- data/lib/wcc/blogs/post.rb +5 -0
- data/lib/wcc/blogs/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b57eccdc0dfb25b616fd887781eb5e3f18b0f00f
|
4
|
+
data.tar.gz: 9a0d581af31bbdc61ba14cfe8a4d90ce99957c21
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f418d9d819344d62bf97154b6eb4b516d742e1929e50ba6f295eb43844d9e89d222659d0f4ffc0d6146a90430dc1392a9c1002ee11b57cabd011b04546b51fa6
|
7
|
+
data.tar.gz: a2f240ce41b866dfa44e8cda879c522f7e41523cb979f145db96b2db2894dd3c7153afb50678f64294bc17dbeb411e2c845805fbe9ebe8540304940636793e41
|
data/lib/wcc/blogs.rb
CHANGED
@@ -10,6 +10,7 @@ require 'wcc/blogs/errors'
|
|
10
10
|
require 'wcc/blogs/metadata'
|
11
11
|
require 'wcc/blogs/post'
|
12
12
|
require 'wcc/blogs/post_summary'
|
13
|
+
require 'wcc/blogs/linked_blog_post_summary'
|
13
14
|
require 'wcc/blogs/property'
|
14
15
|
require 'wcc/blogs/collection'
|
15
16
|
require 'wcc/blogs/collection_summary'
|
@@ -21,33 +21,8 @@ module WCC::Blogs
|
|
21
21
|
def posts
|
22
22
|
@posts ||=
|
23
23
|
(raw['posts'] || []).map do |summary|
|
24
|
-
|
24
|
+
WCC::Blogs::LinkedBlogPostSummary.new(summary, client: @client)
|
25
25
|
end
|
26
26
|
end
|
27
|
-
|
28
|
-
class PostReference
|
29
|
-
extend WCC::Blogs::Utils
|
30
|
-
|
31
|
-
attr_reader :raw
|
32
|
-
|
33
|
-
def initialize(raw, client: WCC::Blogs.client)
|
34
|
-
@raw = raw
|
35
|
-
@client = client
|
36
|
-
end
|
37
|
-
|
38
|
-
def full_post
|
39
|
-
Post.new(@client.get(_links.self).raw)
|
40
|
-
end
|
41
|
-
|
42
|
-
define_camelcase_alias(
|
43
|
-
'slug'
|
44
|
-
) do |camelcase|
|
45
|
-
raw[camelcase]
|
46
|
-
end
|
47
|
-
|
48
|
-
def _links
|
49
|
-
OpenStruct.new(raw['_links'] || {})
|
50
|
-
end
|
51
|
-
end
|
52
27
|
end
|
53
28
|
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module WCC::Blogs
|
4
|
+
class LinkedBlogPostSummary
|
5
|
+
extend WCC::Blogs::Utils
|
6
|
+
|
7
|
+
attr_reader :raw
|
8
|
+
|
9
|
+
def initialize(raw, client: WCC::Blogs.client)
|
10
|
+
@raw = raw
|
11
|
+
@client = client
|
12
|
+
end
|
13
|
+
|
14
|
+
def full_post
|
15
|
+
Post.new(@client.get(_links.self).raw)
|
16
|
+
end
|
17
|
+
|
18
|
+
define_camelcase_alias(
|
19
|
+
'title',
|
20
|
+
'slug'
|
21
|
+
) do |camelcase|
|
22
|
+
raw[camelcase]
|
23
|
+
end
|
24
|
+
|
25
|
+
define_camelcase_alias(
|
26
|
+
'date'
|
27
|
+
) do |camelcase|
|
28
|
+
value = raw[camelcase]
|
29
|
+
|
30
|
+
Time.parse(value) if value&.length
|
31
|
+
end
|
32
|
+
|
33
|
+
def _links
|
34
|
+
OpenStruct.new(raw['_links'] || {})
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
data/lib/wcc/blogs/post.rb
CHANGED
@@ -97,6 +97,11 @@ module WCC::Blogs
|
|
97
97
|
CollectionSummary.new(raw['collection'], client: @client) if raw['collection']
|
98
98
|
end
|
99
99
|
|
100
|
+
define_camelcase_alias('related_posts') do |camelcase|
|
101
|
+
related = raw[camelcase] || []
|
102
|
+
related.map { |val| WCC::Blogs::LinkedBlogPostSummary.new(val, client: @client) }
|
103
|
+
end
|
104
|
+
|
100
105
|
alias cache_key digest
|
101
106
|
end
|
102
107
|
end
|
data/lib/wcc/blogs/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wcc-blogs-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Watermark Dev
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-07-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -198,6 +198,7 @@ files:
|
|
198
198
|
- lib/wcc/blogs/collection.rb
|
199
199
|
- lib/wcc/blogs/collection_summary.rb
|
200
200
|
- lib/wcc/blogs/errors.rb
|
201
|
+
- lib/wcc/blogs/linked_blog_post_summary.rb
|
201
202
|
- lib/wcc/blogs/metadata.rb
|
202
203
|
- lib/wcc/blogs/post.rb
|
203
204
|
- lib/wcc/blogs/post_summary.rb
|