nexmo_markdown_renderer 0.4.1 → 0.4.2

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: 5f8453119db56f41713832d6a32fe559cd0076cef1f829e161465cb31bd81fb1
4
- data.tar.gz: 5f82937effa52f7587533c3b039ed609c5095829cbec0c1bb8871306f00501c9
3
+ metadata.gz: 0e59f591809378750a638211130816a1078cbec2c59554d8c17f32614bc2a6e6
4
+ data.tar.gz: c02910693d90ed94f3527142b8e240287ebb30203629419ee0aae5168c5c09bc
5
5
  SHA512:
6
- metadata.gz: 8cc17d94d7ef7d83f315747521569ad545601e9165532d94cd8bb08306b7ed4be95b11995ce76038ef51785eea8ef7809c8446fa3b5da8486059dc87a458aaac
7
- data.tar.gz: d22a8f38997cacf2dbdfb00ca34f3beae65ca75f1736ff5db335207da246d7a2513eb6fa89e181964f99589d3f076ffde06f730f95f3ef7694fc22af0d13a336
6
+ metadata.gz: e099d0cccd97ef619df411cb603469295e1d76b7b2e0bf9c42bb02a18b72219b221046878e78a8718b567c6d47529f302566bad9569fcd04db0c627e69d205ea
7
+ data.tar.gz: 79f005800a2711e02020a343ef60d87878023623bc632769af4e79b1f1eda00bc8d34e42576ca2565b3948cc19f6b7cacdf1a7b1a45ad7c9c9c7af1180523b6c
@@ -5,9 +5,10 @@ module Nexmo
5
5
  class InstallDependencies
6
6
  include Renderable
7
7
 
8
- def initialize(config, snippet)
8
+ def initialize(config, version, snippet)
9
9
  @config = config
10
10
  @snippet = snippet
11
+ @version = version
11
12
  end
12
13
 
13
14
  def partial
@@ -28,7 +29,7 @@ module Nexmo
28
29
  def render
29
30
  return '' unless @config
30
31
 
31
- deps = renderer.dependencies(@config)
32
+ deps = renderer.dependencies(@config, @version)
32
33
  ERB.new(partial).result(binding)
33
34
  end
34
35
  end
@@ -27,7 +27,7 @@ module Nexmo
27
27
  end
28
28
 
29
29
  def install_dependencies
30
- @install_dependencies ||= ::Nexmo::Markdown::Filters::CodeSnippet::InstallDependencies.new(@config['dependencies'], @binding).render
30
+ @install_dependencies ||= ::Nexmo::Markdown::Filters::CodeSnippet::InstallDependencies.new(@config['dependencies'], @config['version'], @binding).render
31
31
  end
32
32
 
33
33
  def import_dependencies
@@ -116,7 +116,8 @@ module Nexmo
116
116
  content['weight'] ||= defaults.weight
117
117
  content['run_command'] ||= defaults.run_command
118
118
  content['unindent'] = defaults.unindent || false
119
-
119
+ content['version'] ||= defaults.version
120
+
120
121
  # If we don't have a file_name in config, use the one in the repo
121
122
  content['file_name'] ||= File.basename(content['code']['source'])
122
123
 
@@ -2,8 +2,8 @@ module Nexmo
2
2
  module Markdown
3
3
  class Utils
4
4
  def self.generate_source_url(code)
5
- # Source example: .repos/nexmo/nexmo-java-code-snippets/ExampleClass.java
6
- # Direct link on GitHub is in form https://github.com/nexmo/nexmo-java-code-snippets/blob/master/ExampleClass.java
5
+ # Source example: .repos/vonage/vonage-java-code-snippets/ExampleClass.java
6
+ # Direct link on GitHub is in form https://github.com/vonage/vonage-java-code-snippets/blob/master/ExampleClass.java
7
7
  start_section = 'https://github.com'
8
8
 
9
9
  # Insert "blob/master" and strip ".repos"
@@ -3,8 +3,12 @@ module Nexmo
3
3
  class CodeLanguage
4
4
  include ActiveModel::Model
5
5
  attr_accessor :key, :label, :type, :dependencies, :unindent, :icon, :run_command
6
- attr_writer :weight, :linkable, :languages, :lexer
7
-
6
+ attr_writer :weight, :linkable, :languages, :lexer, :version
7
+
8
+ def version
9
+ @version || nil
10
+ end
11
+
8
12
  def weight
9
13
  @weight || 999
10
14
  end
@@ -2,7 +2,7 @@ module Nexmo
2
2
  module Markdown
3
3
  module CodeSnippetRenderer
4
4
  class Android < Base
5
- def self.dependencies(_deps)
5
+ def self.dependencies(_deps, _version)
6
6
  {
7
7
  'text' => 'See <a href="https://developer.nexmo.com/use-cases/client-sdk-android-add-sdk-to-your-app">How to Add the Nexmo Client SDK to your Android App</a>',
8
8
  }
@@ -2,7 +2,7 @@ module Nexmo
2
2
  module Markdown
3
3
  module CodeSnippetRenderer
4
4
  class Curl < Base
5
- def self.dependencies(deps)
5
+ def self.dependencies(deps, _version)
6
6
  dependencies = deps.map(&:upcase)
7
7
  raise t('.only_permitted_dependency') unless dependencies.include?('JWT')
8
8
  {
@@ -2,7 +2,7 @@ module Nexmo
2
2
  module Markdown
3
3
  module CodeSnippetRenderer
4
4
  class Dotnet < Base
5
- def self.dependencies(deps)
5
+ def self.dependencies(deps, _version)
6
6
  { 'code' => "Install-Package #{deps.join(' ')}" }
7
7
  end
8
8
 
@@ -2,16 +2,17 @@ module Nexmo
2
2
  module Markdown
3
3
  module CodeSnippetRenderer
4
4
  class Java < Base
5
- def self.dependencies(deps)
5
+ def self.dependencies(deps, version)
6
+ raise "'version' not provided for Java snippet" unless version
6
7
  {
7
8
  'text' => ::I18n.t('services.code_snippet_renderer.add_instructions_to_file', file: 'build.gradle'),
8
- 'code' => deps.map { |d| "compile '#{d.gsub('@latest', '5.2.1')}'" }.join('<br />'),
9
+ 'code' => deps.map { |d| "compile '#{d.gsub('@latest', version)}'" }.join('<br />'),
9
10
  'type' => 'groovy',
10
11
  }
11
12
  end
12
13
 
13
14
  def self.run_command(_command, filename, file_path)
14
- package = file_path.gsub('.repos/nexmo/nexmo-java-code-snippets/src/main/java/', '').tr('/', '.').gsub(filename, '')
15
+ package = file_path.gsub('.repos/vonage/vonage-java-code-snippets/src/main/java/', '').tr('/', '.').gsub(filename, '')
15
16
  file = filename.gsub('.java', '')
16
17
  main = "#{package}#{filename.gsub('.java', '')}"
17
18
  chomped_package = package.chomp('.')
@@ -2,7 +2,7 @@ module Nexmo
2
2
  module Markdown
3
3
  module CodeSnippetRenderer
4
4
  class Javascript < Base
5
- def self.dependencies(deps)
5
+ def self.dependencies(deps, _version)
6
6
  { 'code' => "npm install #{deps.join(' ')}" }
7
7
  end
8
8
 
@@ -2,7 +2,7 @@ module Nexmo
2
2
  module Markdown
3
3
  module CodeSnippetRenderer
4
4
  class Kotlin < Base
5
- def self.dependencies(_deps)
5
+ def self.dependencies(deps, _version)
6
6
  {
7
7
  'text' => 'See <a href="https://developer.nexmo.com/use-cases/client-sdk-android-add-sdk-to-your-app">How to Add the Nexmo Client SDK to your Android App</a>',
8
8
  }
@@ -2,7 +2,7 @@ module Nexmo
2
2
  module Markdown
3
3
  module CodeSnippetRenderer
4
4
  class ObjectiveC < Base
5
- def self.dependencies(_deps)
5
+ def self.dependencies(_deps, _version)
6
6
  {
7
7
  'text' => 'See <a href="/client-sdk/setup/add-sdk-to-your-app/ios">How to Add the Nexmo Client SDK to your iOS App</a>',
8
8
  }
@@ -2,7 +2,7 @@ module Nexmo
2
2
  module Markdown
3
3
  module CodeSnippetRenderer
4
4
  class Php < Base
5
- def self.dependencies(deps)
5
+ def self.dependencies(deps, _version)
6
6
  { 'code' => "composer require #{deps.join(' ')}" }
7
7
  end
8
8
 
@@ -2,7 +2,7 @@ module Nexmo
2
2
  module Markdown
3
3
  module CodeSnippetRenderer
4
4
  class Python < Base
5
- def self.dependencies(deps)
5
+ def self.dependencies(deps, _version)
6
6
  { 'code' => "pip install #{deps.join(' ')}" }
7
7
  end
8
8
 
@@ -2,7 +2,7 @@ module Nexmo
2
2
  module Markdown
3
3
  module CodeSnippetRenderer
4
4
  class Ruby < Base
5
- def self.dependencies(deps)
5
+ def self.dependencies(deps, _version)
6
6
  { 'code' => "gem install #{deps.join(' ')}" }
7
7
  end
8
8
 
@@ -1,7 +1,7 @@
1
1
  # :nocov:
2
2
  module Nexmo
3
3
  module Markdown
4
- VERSION = '0.4.1'
4
+ VERSION = '0.4.2'
5
5
  end
6
6
  end
7
7
  # :nocov:
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nexmo_markdown_renderer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nexmo
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-20 00:00:00.000000000 Z
11
+ date: 2020-10-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: banzai
@@ -344,7 +344,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
344
344
  - !ruby/object:Gem::Version
345
345
  version: '0'
346
346
  requirements: []
347
- rubygems_version: 3.0.3
347
+ rubygems_version: 3.0.1
348
348
  signing_key:
349
349
  specification_version: 4
350
350
  summary: Middleware to render Markdown Documents in Nexmo Developer Platform.