jekyll-embed-urls 0.5.6 → 0.5.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0e6e72a30b43d661e9c852d548f48ba8f600cbbde41e6873489cf9ceb3d4435c
4
- data.tar.gz: dd437ba4bbfa32d8e9c26792a3547672ae4197d8b23029b538d3a1ca814e64b7
3
+ metadata.gz: '009ec95cb733855d621b7b063e4922c79873296fdebd99f16ad6f2856854a7af'
4
+ data.tar.gz: e56ca532db963a099a4c4c6950c4382ca25d83c5102703b8bf2d66fd98d8f2a9
5
5
  SHA512:
6
- metadata.gz: 9c6cb5356446f930287dd1feca9ac024db143a0f3bf531dc19f94e6e7b4a2602125a2b20bafb1029da46ad15c4cdfcbb4c2e783967f6bba16e1b21310c496557
7
- data.tar.gz: b98314a98b042a9c7cf1f9cfbeacce6662d11b6c5ec8d6d85e0d96ea3f2bc32d0e0bcea8cf3fd387b7872fcbeb0555d2873ff242dc84f8e503e40a2374f23140
6
+ metadata.gz: d60e0cfb3395976201a2b9b4174aaf1b888ef88fede4c802302002787471a0d8268c89d8d1cb447fa24bcebee7ac5f4ce83865b5770e0fe5ca38cd93ebb7e8e4
7
+ data.tar.gz: 4310e1aa4409b2724e8dfc9b68ecc96e4eabe83709a19cb7e5d3745a895b9e7bb32af78dece340f6c4e37807813582cdb07517253a40f739c7206db03db606f3
@@ -10,7 +10,7 @@ module Jekyll
10
10
 
11
11
  def read(key)
12
12
  self[key]
13
- rescue
13
+ rescue StandardError
14
14
  nil
15
15
  end
16
16
  end
@@ -5,7 +5,7 @@ require 'cgi'
5
5
  module Jekyll
6
6
  class Embed
7
7
  class Content
8
- URL_RE = /(<p[^>]*>[\s\n]*(<a[^>]*>)?[\s\n]*(https?:\/\/[^<\s\n]+)[\s\n]*(<\/a>)?[\s\n]*<\/p>)/m.freeze
8
+ URL_RE = %r{(<p[^>]*>[\s\n]*(<a[^>]*>)?[\s\n]*(https?://[^<\s\n]+)[\s\n]*(</a>)?[\s\n]*</p>)}m.freeze
9
9
 
10
10
  class << self
11
11
  # Find URLs on paragraphs. We do it after rendering because
@@ -13,7 +13,7 @@ module Jekyll
13
13
  # catch both.
14
14
  def embed!(content)
15
15
  content.gsub!(URL_RE) do |match|
16
- url = CGI.unescapeHTML($3)
16
+ url = CGI.unescapeHTML(Regexp.last_match(3))
17
17
  embed = Jekyll::Embed.embed url
18
18
 
19
19
  if embed == url
data/lib/jekyll/embed.rb CHANGED
@@ -13,7 +13,7 @@ require_relative 'embed/cache'
13
13
  if Gem::Version.new(Jekyll::VERSION) >= Gem::Version.new('4.2.0')
14
14
  require_relative 'embed/content'
15
15
  else
16
- Jekyll.logger.warn "Upgrade to Jekyll >= 4.2.0 to embed URLs in content"
16
+ Jekyll.logger.warn 'Upgrade to Jekyll >= 4.2.0 to embed URLs in content'
17
17
  end
18
18
 
19
19
  OEmbed::Providers.register_all
@@ -57,7 +57,8 @@ module Jekyll
57
57
 
58
58
  # Directive from Feature Policy
59
59
  # @see {https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Feature-Policy#directives}
60
- DIRECTIVES = %w[accelerometer ambient-light-sensor autoplay battery camera display-capture document-domain encrypted-media execution-while-not-rendered execution-while-out-of-viewport fullscreen gamepad geolocation gyroscope layout-animations legacy-image-formats magnetometer microphone midi navigation-override oversized-images payment picture-in-picture publickey-credentials-get speaker-selection sync-xhr usb screen-wake-lock web-share xr-spatial-tracking].freeze
60
+ DIRECTIVES = %w[accelerometer ambient-light-sensor autoplay battery camera display-capture document-domain
61
+ encrypted-media execution-while-not-rendered execution-while-out-of-viewport fullscreen gamepad geolocation gyroscope layout-animations legacy-image-formats magnetometer microphone midi navigation-override oversized-images payment picture-in-picture publickey-credentials-get speaker-selection sync-xhr usb screen-wake-lock web-share xr-spatial-tracking].freeze
61
62
 
62
63
  # Templates
63
64
  INCLUDE_OGP = '{% include ogp.html site=site page=page %}'
@@ -84,13 +85,13 @@ module Jekyll
84
85
  'rel' => %w[noopener noreferrer],
85
86
  'target' => '_blank'
86
87
  }
87
- }
88
+ }.freeze
88
89
 
89
90
  class << self
90
91
  def site
91
92
  unless @site
92
93
  raise Jekyll::Errors::InvalidConfigurationError,
93
- "Site is missing, configure with `Jekyll::Embed.site = site`"
94
+ 'Site is missing, configure with `Jekyll::Embed.site = site`'
94
95
  end
95
96
 
96
97
  @site
@@ -101,7 +102,7 @@ module Jekyll
101
102
  # @param [Jekyll::Site]
102
103
  # @return [Jekyll::Site]
103
104
  def site=(site)
104
- raise ArgumentError, "Site must be a Jekyll::Site" unless site.is_a? Jekyll::Site
105
+ raise ArgumentError, 'Site must be a Jekyll::Site' unless site.is_a? Jekyll::Site
105
106
 
106
107
  @site = site
107
108
 
@@ -130,15 +131,15 @@ module Jekyll
130
131
  def reset
131
132
  @allow_same_origin =
132
133
  @cache =
133
- @config =
134
- @fallback_template =
135
- @get_cache =
136
- @http_client =
137
- @info =
138
- @ogp_template =
139
- @payload =
140
- @value_for_attr =
141
- nil
134
+ @config =
135
+ @fallback_template =
136
+ @get_cache =
137
+ @http_client =
138
+ @info =
139
+ @ogp_template =
140
+ @payload =
141
+ @value_for_attr =
142
+ nil
142
143
  end
143
144
 
144
145
  # Render the URL as HTML
@@ -170,7 +171,9 @@ module Jekyll
170
171
  # @return [Hash]
171
172
  def config
172
173
  @config ||= Jekyll::Utils.deep_merge_hashes(DEFAULT_CONFIG, (site.config['embed'] || {})).tap do |c|
173
- c['attributes']['allow'].concat (DIRECTIVES - c.dig('attributes', 'allow').join.split(';').map { |s| s.split(' ').first }).join(" 'none';|").split('|')
174
+ c['attributes']['allow'].concat (DIRECTIVES - c.dig('attributes', 'allow').join.split(';').map do |s|
175
+ s.split(' ').first
176
+ end).join(" 'none';|").split('|')
174
177
  end
175
178
  end
176
179
 
@@ -208,8 +211,8 @@ module Jekyll
208
211
 
209
212
  %w[image video audio].each do |attr|
210
213
  page[attr] = ogp.public_send(:"#{attr}s").find do |a|
211
- http? i.url
212
- end
214
+ http? a.url
215
+ end&.url
213
216
  end
214
217
 
215
218
  context = info.dup
@@ -343,8 +346,8 @@ module Jekyll
343
346
  @value_for_attr ||= {}
344
347
  @value_for_attr[attr] ||=
345
348
  case (value = config.dig('attributes', attr))
346
- when String then value
347
- when Array then value.join(' ')
349
+ when String then value
350
+ when Array then value.join(' ')
348
351
  end
349
352
  end
350
353
 
@@ -355,7 +358,7 @@ module Jekyll
355
358
  # @return [String]
356
359
  def allow_same_origin(url)
357
360
  unless site.config['url']
358
- Jekyll.logger.warn "Add url to _config.yml to determine if the site can embed itself"
361
+ Jekyll.logger.warn 'Add url to _config.yml to determine if the site can embed itself'
359
362
  return ' allow-same-origin'
360
363
  end
361
364
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-embed-urls
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.6
4
+ version: 0.5.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - f
@@ -128,6 +128,20 @@ dependencies:
128
128
  - - "~>"
129
129
  - !ruby/object:Gem::Version
130
130
  version: '0'
131
+ - !ruby/object:Gem::Dependency
132
+ name: rubocop
133
+ requirement: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - ">="
136
+ - !ruby/object:Gem::Version
137
+ version: '0'
138
+ type: :development
139
+ prerelease: false
140
+ version_requirements: !ruby/object:Gem::Requirement
141
+ requirements:
142
+ - - ">="
143
+ - !ruby/object:Gem::Version
144
+ version: '0'
131
145
  description: Replaces URLs for their previsualization in Jekyll posts
132
146
  email:
133
147
  - f@sutty.nl