Class: Charming::Markdown::URLResolver
- Inherits:
-
Object
- Object
- Charming::Markdown::URLResolver
- Defined in:
- lib/charming/presentation/markdown/url_resolver.rb
Overview
URLResolver resolves Markdown link destinations against an optional base URL.
Instance Method Summary collapse
-
#initialize(base_url: nil) ⇒ URLResolver
constructor
A new instance of URLResolver.
- #resolve(value) ⇒ Object
Constructor Details
#initialize(base_url: nil) ⇒ URLResolver
Returns a new instance of URLResolver.
9 10 11 |
# File 'lib/charming/presentation/markdown/url_resolver.rb', line 9 def initialize(base_url: nil) @base_url = base_url end |
Instance Method Details
#resolve(value) ⇒ Object
13 14 15 16 17 18 19 20 |
# File 'lib/charming/presentation/markdown/url_resolver.rb', line 13 def resolve(value) return value if base_url.to_s.empty? || value.empty? return value if URI.parse(value).absolute? URI.join(base_url, value).to_s rescue URI::InvalidURIError value end |