markdown_media 1.6.0 → 1.7.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f755e4e21059358def59c04d178f5e02100746bd4db9bd7741cb02154bdd9a60
4
- data.tar.gz: 76c8381cce9ab750f670f2e7f83da113d41f02216384464f7c2d504020f90458
3
+ metadata.gz: 16042959f63276782a51a0ba97464089d6c6811adfd01cfb5b2716fad4f4bd63
4
+ data.tar.gz: 73518ef8fa11dd100ba4d48a4ac63b0bdfb6e0b0c8a6596af229ae1025bde46f
5
5
  SHA512:
6
- metadata.gz: e4b9556ac6284ed82c8087ee39171c51cf51e4b747083bca902ec926296f63a809c6aba2217c5d538587faa1452f21e534ff6f7770c6922a082cba3216cf8148
7
- data.tar.gz: e6b9df447e0dbbd2dfb6ce9135e1b061a154df24c8b88dae1915f222fa8de360aff7fe0d1fbf89bdebac01c81443dcabc14919089ca4325d43e4136e1af574ed
6
+ metadata.gz: 54f8455ae1329dcdaf788f4bede41cc4fead9db0a57aadd277dda643abe53cddb8a227a7967c3804dff2652d2de99aa960f780aa21a805b5fd87892666469c6e
7
+ data.tar.gz: 89f0b56692c2ed81352394decd441e10bbb9db7ce99fd3209ef5b7e7bd2ba00daea255173e097c4ffa568d4d3942f3b338d2a38a5e824a1a1740fb9937e7f3ff
data/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [![Build Status](https://travis-ci.org/veganstraightedge/markdown_media.svg?branch=master)](https://travis-ci.org/veganstraightedge/markdown_media)
4
4
  [![Code Climate](https://codeclimate.com/github/veganstraightedge/markdown_media/badges/gpa.svg)](https://codeclimate.com/github/veganstraightedge/markdown_media)
5
- ![Version 1.2.1](https://img.shields.io/badge/VERSION-1.2.1-green.svg)
5
+ ![Version 1.6.0](https://img.shields.io/badge/VERSION-1.6.0-green.svg)
6
6
 
7
7
  This syntax uses doubles square brackets on each side of a URL and optional options.
8
8
  It expands into the current preferred embed code for that site’s media or raw media.
@@ -152,6 +152,12 @@ YouTube’s short URL format also works.
152
152
  [[https://youtu.be/YX40hbAHx3s]]
153
153
  ```
154
154
 
155
+ YouTube’s embed URL format also works.
156
+
157
+ ```
158
+ [[https://www.youtube.com/embed/YX40hbAHx3s]]
159
+ ```
160
+
155
161
  A video from Daily Motion.
156
162
 
157
163
  ```
@@ -103,53 +103,59 @@ module MarkdownMedia
103
103
  def extract_options url:, include_media: true
104
104
  type = nil
105
105
 
106
- case url.host
107
- when /youtube.com/
106
+ if url.to_s =~ %r{youtube.com/embed}
108
107
  slug = "youtube"
109
- embed_id = nil
110
-
111
- url.query.split("&").each do |key_value_pair|
112
- argument, value = key_value_pair.split("=")
113
- if argument == "v"
114
- embed_id = value
115
- end
116
- end
117
-
118
- when "youtu.be"
119
- slug = "youtube"
120
- embed_id = url.path.split("/").map{ |path_piece| path_piece unless path_piece.to_s.empty? }.compact.first
121
-
122
- when /dailymotion.com/
123
- slug = "dailymotion"
124
- embed_id = url.path.split("/video/").map{ |path_piece| path_piece unless path_piece.to_s.empty? }.compact.first.split("_").first
125
-
126
- when "vimeo.com"
127
- slug = "vimeo"
128
- embed_id = url.path.split("/").map{ |path_piece| path_piece unless path_piece.to_s.empty? }.compact.first
129
-
130
- when "twitter.com"
131
- slug = "twitter"
132
- type ||= "tweet"
133
-
134
- when /instagram/
135
- slug = "instagram"
108
+ embed_id = url.path.split("/embed/")[1]
109
+ else
136
110
 
137
- when "giphy.com"
138
- slug = "giphy"
139
- embed_id = url.path.split("/").last.split('-').last
111
+ case url.host
112
+ when /youtube.com/
113
+ slug = "youtube"
114
+ embed_id = nil
140
115
 
141
- else
142
- slug =
143
- case url.path
144
- when /\.mp3|\.aac|\.wav|\.ogg|\.oga|\.m4a/
145
- "audio"
146
- when /\.mp4|\.avi|\.mov|\.ogv|\.webm|\.m4v|\.3gp|\.m3u8/
147
- "video"
148
- when /\.png|\.jpeg|\.jpg|\.gif|\.svg/
149
- "image"
150
- else
151
- "link"
116
+ url.query.split("&").each do |key_value_pair|
117
+ argument, value = key_value_pair.split("=")
118
+ if argument == "v"
119
+ embed_id = value
120
+ end
152
121
  end
122
+
123
+ when "youtu.be"
124
+ slug = "youtube"
125
+ embed_id = url.path.split("/").map{ |path_piece| path_piece unless path_piece.to_s.empty? }.compact.first
126
+
127
+ when /dailymotion.com/
128
+ slug = "dailymotion"
129
+ embed_id = url.path.split("/video/").map{ |path_piece| path_piece unless path_piece.to_s.empty? }.compact.first.split("_").first
130
+
131
+ when "vimeo.com"
132
+ slug = "vimeo"
133
+ embed_id = url.path.split("/").map{ |path_piece| path_piece unless path_piece.to_s.empty? }.compact.first
134
+
135
+ when "twitter.com"
136
+ slug = "twitter"
137
+ type ||= "tweet"
138
+
139
+ when /instagram/
140
+ slug = "instagram"
141
+
142
+ when "giphy.com"
143
+ slug = "giphy"
144
+ embed_id = url.path.split("/").last.split('-').last
145
+
146
+ else
147
+ slug =
148
+ case url.path
149
+ when /\.mp3|\.aac|\.wav|\.ogg|\.oga|\.m4a/
150
+ "audio"
151
+ when /\.mp4|\.avi|\.mov|\.ogv|\.webm|\.m4v|\.3gp|\.m3u8/
152
+ "video"
153
+ when /\.png|\.jpeg|\.jpg|\.gif|\.svg/
154
+ "image"
155
+ else
156
+ "link"
157
+ end
158
+ end
153
159
  end
154
160
 
155
161
  slug = 'link' if include_media == false
@@ -1,3 +1,3 @@
1
1
  module MarkdownMedia
2
- VERSION = "1.6.0"
2
+ VERSION = "1.7.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: markdown_media
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 1.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shane Becker
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-01-06 00:00:00.000000000 Z
11
+ date: 2021-01-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -103,7 +103,7 @@ homepage: https://github.com/veganstraightedge/markdown_media
103
103
  licenses:
104
104
  - CC0
105
105
  metadata: {}
106
- post_install_message:
106
+ post_install_message:
107
107
  rdoc_options: []
108
108
  require_paths:
109
109
  - lib
@@ -118,8 +118,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
118
118
  - !ruby/object:Gem::Version
119
119
  version: '0'
120
120
  requirements: []
121
- rubygems_version: 3.0.6
122
- signing_key:
121
+ rubygems_version: 3.1.4
122
+ signing_key:
123
123
  specification_version: 4
124
124
  summary: A [[ URL ]] syntax to embed media into views.
125
125
  test_files: []