nexmo_markdown_renderer 0.4.1 → 0.4.2

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: 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.