nexmo_markdown_renderer 0.2.0 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/config/locales/en.yml +1 -0
- data/lib/nexmo_markdown_renderer.rb +24 -1
- data/lib/nexmo_markdown_renderer/filters/block_escape_filter.rb +3 -3
- data/lib/nexmo_markdown_renderer/filters/code_filter.rb +17 -17
- data/lib/nexmo_markdown_renderer/filters/code_snippet/binding.rb +41 -0
- data/lib/nexmo_markdown_renderer/filters/code_snippet/create_application.rb +61 -0
- data/lib/nexmo_markdown_renderer/filters/code_snippet/import_dependencies.rb +38 -0
- data/lib/nexmo_markdown_renderer/filters/code_snippet/initialize_dependencies.rb +41 -0
- data/lib/nexmo_markdown_renderer/filters/code_snippet/install_dependencies.rb +38 -0
- data/lib/nexmo_markdown_renderer/filters/code_snippet/instructions.rb +46 -0
- data/lib/nexmo_markdown_renderer/filters/code_snippet/renderable.rb +62 -0
- data/lib/nexmo_markdown_renderer/filters/code_snippet/run.rb +29 -0
- data/lib/nexmo_markdown_renderer/filters/code_snippet_filter.rb +22 -159
- data/lib/nexmo_markdown_renderer/filters/concerns/prism_code_snippet.rb +22 -0
- data/lib/nexmo_markdown_renderer/filters/markdown_filter.rb +13 -10
- data/lib/nexmo_markdown_renderer/filters/tab_filter.rb +70 -67
- data/lib/nexmo_markdown_renderer/filters/utils.rb +50 -0
- data/lib/nexmo_markdown_renderer/models/tutorial.rb +116 -72
- data/lib/nexmo_markdown_renderer/models/tutorial/file_loader.rb +32 -0
- data/lib/nexmo_markdown_renderer/models/tutorial/metadata.rb +57 -0
- data/lib/nexmo_markdown_renderer/models/tutorial/prerequisite.rb +35 -0
- data/lib/nexmo_markdown_renderer/models/tutorial/task.rb +49 -0
- data/lib/nexmo_markdown_renderer/models/use_case.rb +3 -16
- data/lib/nexmo_markdown_renderer/services/doc_finder.rb +5 -0
- data/lib/nexmo_markdown_renderer/views/code_snippets/_application_rtc.html.erb +2 -2
- data/lib/nexmo_markdown_renderer/views/code_snippets/_application_voice.html.erb +2 -2
- data/lib/nexmo_markdown_renderer/views/code_snippets/_configure_client.html.erb +2 -2
- data/lib/nexmo_markdown_renderer/views/code_snippets/_import_dependencies.html.erb +18 -0
- data/lib/version.rb +1 -1
- metadata +17 -2
@@ -9,7 +9,7 @@ module Nexmo
|
|
9
9
|
end
|
10
10
|
|
11
11
|
def relative_path
|
12
|
-
document_path.relative_path_from(self.class.origin).sub(
|
12
|
+
document_path.relative_path_from(self.class.origin).sub(/\w{2}\//, '').to_s.gsub('.md', '')
|
13
13
|
end
|
14
14
|
|
15
15
|
def path
|
@@ -20,23 +20,12 @@ module Nexmo
|
|
20
20
|
|
21
21
|
def subtitle
|
22
22
|
normalized_products = products.map do |product|
|
23
|
-
|
23
|
+
Product.normalize_title(product)
|
24
24
|
end
|
25
25
|
|
26
26
|
normalized_products.sort.to_sentence
|
27
27
|
end
|
28
28
|
|
29
|
-
def normalise_product_title(product)
|
30
|
-
return 'SMS' if product == 'messaging/sms'
|
31
|
-
return 'Voice' if product == 'voice/voice-api'
|
32
|
-
return 'Number Insight' if product == 'number-insight'
|
33
|
-
return 'Messages' if product == 'messages'
|
34
|
-
return 'Dispatch' if product == 'dispatch'
|
35
|
-
return 'Client SDK' if product == 'client-sdk'
|
36
|
-
return 'Subaccounts' if product == 'account/subaccounts'
|
37
|
-
product.camelcase
|
38
|
-
end
|
39
|
-
|
40
29
|
def self.by_product(product, use_cases = [])
|
41
30
|
use_cases = all if use_cases.empty?
|
42
31
|
use_cases.select do |use_case|
|
@@ -63,7 +52,7 @@ module Nexmo
|
|
63
52
|
document = File.read(document_path)
|
64
53
|
frontmatter = YAML.safe_load(document)
|
65
54
|
|
66
|
-
|
55
|
+
new({
|
67
56
|
title: frontmatter['title'],
|
68
57
|
description: frontmatter['description'],
|
69
58
|
external_link: frontmatter['external_link'],
|
@@ -75,8 +64,6 @@ module Nexmo
|
|
75
64
|
end
|
76
65
|
end
|
77
66
|
|
78
|
-
private
|
79
|
-
|
80
67
|
private_class_method def self.files
|
81
68
|
Dir.glob("#{origin}/**/*.md")
|
82
69
|
end
|
@@ -120,6 +120,11 @@ module Nexmo
|
|
120
120
|
def self.strip_root_and_language(root:, language:, document:)
|
121
121
|
document.sub(%r{#{root}\/}, '').sub(%r{#{language}\/}, '')
|
122
122
|
end
|
123
|
+
|
124
|
+
def self.code_languages_for_tutorial(path:)
|
125
|
+
key = strip_root_and_language(root: '/', document: path, language: ::I18n.default_locale)
|
126
|
+
dictionary.keys.select { |k| k.include?(key) }
|
127
|
+
end
|
123
128
|
end
|
124
129
|
end
|
125
130
|
end
|
@@ -6,7 +6,7 @@
|
|
6
6
|
<div id="acc<%=id %>" class="Vlt-js-accordion__content Vlt-accordion__content Vlt-accordion__content--noborder">
|
7
7
|
<p><%= ::I18n.t('.code_snippets.nexmo_application_contains_html') %></p>
|
8
8
|
<h4><%= ::I18n.t('.code_snippets.install_the_cli') %></h4>
|
9
|
-
<pre class="
|
9
|
+
<pre class="Vlt-prism--dark dependencies command-line Vlt-prism--copy-disabled language-bash" data-prompt='$'><code>npm install -g nexmo-cli</code></pre>
|
10
10
|
|
11
11
|
<h4><%= ::I18n.t('.code_snippets.create_an_app') %></h4>
|
12
12
|
<p><%= ::I18n.t('.code_snippets.once_you_have_the_cli_installed_html') %></p>
|
@@ -15,7 +15,7 @@
|
|
15
15
|
<p><%= ::I18n.t('.code_snippets.nexmo_needs_to_connect_html') %></p>
|
16
16
|
<% end %>
|
17
17
|
|
18
|
-
<pre class="
|
18
|
+
<pre class="Vlt-prism--dark dependencies command-line Vlt-prism--copy-disabled language-bash" data-prompt='$'><code>nexmo app:create "<%= name %>" <%= answer_url %> <%= event_url %> --keyfile=private.key --type=rtc</code></pre>
|
19
19
|
|
20
20
|
<h4><%= ::I18n.t('.code_snippets.application_rtc.use_your_existing_app') %></h4>
|
21
21
|
|
@@ -9,7 +9,7 @@
|
|
9
9
|
<% else %>
|
10
10
|
<p><%= ::I18n.t('.code_snippets.nexmo_application_contains_html') %></p>
|
11
11
|
<h4><%= ::I18n.t('.code_snippets.install_the_cli') %></h4>
|
12
|
-
<pre class="
|
12
|
+
<pre class="Vlt-prism--dark dependencies command-line Vlt-prism--copy-disabled language-bash" data-prompt='$'><code>npm install -g nexmo-cli</code></pre>
|
13
13
|
|
14
14
|
<h4><%= ::I18n.t('.code_snippets.create_an_app') %></h4>
|
15
15
|
<p><%= ::I18n.t('.code_snippets.once_you_have_the_cli_installed_html') %></p>
|
@@ -18,7 +18,7 @@
|
|
18
18
|
<p><%= ::I18n.t('.code_snippets.nexmo_needs_to_connect_html') %></p>
|
19
19
|
<% end %>
|
20
20
|
|
21
|
-
<pre class="
|
21
|
+
<pre class="Vlt-prism--dark dependencies command-line Vlt-prism--copy-disabled language-bash" data-prompt='$'><code>nexmo app:create "<%= name %>" <%= answer_url %> <%= event_url %> --keyfile private.key</code></pre>
|
22
22
|
<% end %>
|
23
23
|
</div>
|
24
24
|
</div>
|
@@ -7,13 +7,13 @@
|
|
7
7
|
<%= create_instructions %>
|
8
8
|
<div class="copy-wrapper">
|
9
9
|
|
10
|
-
<div class="copy-button" data-lang="<%= lang %>" data-block="<%=
|
10
|
+
<div class="copy-button" data-lang="<%= lang %>" data-block="<%= source %>" data-section="configure">
|
11
11
|
<%= octicon "clippy", :class => 'top left' %> <span>Copy to Clipboard</span>
|
12
12
|
</div>
|
13
13
|
<pre class="Vlt-prism--dark language-<%= lexer.tag %> Vlt-prism--copy-disabled"><code><%= highlighted_client_source %></code></pre>
|
14
14
|
</div>
|
15
15
|
|
16
|
-
<p><a data-section="configure" data-lang="<%= lang %>" data-block="<%=
|
16
|
+
<p><a data-section="configure" data-lang="<%= lang %>" data-block="<%= source %>" href="<%= client_url %>">View full source</a></p>
|
17
17
|
|
18
18
|
</div>
|
19
19
|
</div>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<div class="Vlt-box Vlt-box--lesspadding Nxd-accordion-emphasis">
|
2
|
+
<h5 class="Vlt-js-accordion__trigger Vlt-accordion__trigger" data-accordion="acc<%= id %>" tabindex="0">
|
3
|
+
<%= ::I18n.t('.code_snippets.configure_client.import_dependencies') %>
|
4
|
+
</h5>
|
5
|
+
|
6
|
+
<div id="acc<%=id %>" class="Vlt-js-accordion__content Vlt-accordion__content Vlt-accordion__content--noborder">
|
7
|
+
<%= create_instructions %>
|
8
|
+
<div class="copy-wrapper">
|
9
|
+
|
10
|
+
<div class="copy-button" data-lang="<%= lang %>" data-block="<%= config['source'] %>" data-section="configure">
|
11
|
+
<%= octicon "clippy", :class => 'top left' %> <span>Copy to Clipboard</span>
|
12
|
+
</div>
|
13
|
+
<pre class="Vlt-prism--dark language-<%= lexer.tag %> Vlt-prism--copy-disabled"><code><%= highlighted_import_source %></code></pre>
|
14
|
+
</div>
|
15
|
+
|
16
|
+
<p><a data-section="configure" data-lang="<%= lang %>" data-block="<%= config['source'] %>" href="<%= client_url %>">View full source</a></p>
|
17
|
+
</div>
|
18
|
+
</div>
|
data/lib/version.rb
CHANGED
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
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nexmo
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-06-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: banzai
|
@@ -240,12 +240,21 @@ files:
|
|
240
240
|
- lib/nexmo_markdown_renderer/filters/block_escape_filter.rb
|
241
241
|
- lib/nexmo_markdown_renderer/filters/break_filter.rb
|
242
242
|
- lib/nexmo_markdown_renderer/filters/code_filter.rb
|
243
|
+
- lib/nexmo_markdown_renderer/filters/code_snippet/binding.rb
|
244
|
+
- lib/nexmo_markdown_renderer/filters/code_snippet/create_application.rb
|
245
|
+
- lib/nexmo_markdown_renderer/filters/code_snippet/import_dependencies.rb
|
246
|
+
- lib/nexmo_markdown_renderer/filters/code_snippet/initialize_dependencies.rb
|
247
|
+
- lib/nexmo_markdown_renderer/filters/code_snippet/install_dependencies.rb
|
248
|
+
- lib/nexmo_markdown_renderer/filters/code_snippet/instructions.rb
|
249
|
+
- lib/nexmo_markdown_renderer/filters/code_snippet/renderable.rb
|
250
|
+
- lib/nexmo_markdown_renderer/filters/code_snippet/run.rb
|
243
251
|
- lib/nexmo_markdown_renderer/filters/code_snippet_filter.rb
|
244
252
|
- lib/nexmo_markdown_renderer/filters/code_snippet_list_filter.rb
|
245
253
|
- lib/nexmo_markdown_renderer/filters/code_snippets_filter.rb
|
246
254
|
- lib/nexmo_markdown_renderer/filters/collapsible_filter.rb
|
247
255
|
- lib/nexmo_markdown_renderer/filters/columns_filter.rb
|
248
256
|
- lib/nexmo_markdown_renderer/filters/concept_list_filter.rb
|
257
|
+
- lib/nexmo_markdown_renderer/filters/concerns/prism_code_snippet.rb
|
249
258
|
- lib/nexmo_markdown_renderer/filters/dynamic_content_filter.rb
|
250
259
|
- lib/nexmo_markdown_renderer/filters/external_link_filter.rb
|
251
260
|
- lib/nexmo_markdown_renderer/filters/frontmatter_filter.rb
|
@@ -270,6 +279,7 @@ files:
|
|
270
279
|
- lib/nexmo_markdown_renderer/filters/tooltip_filter.rb
|
271
280
|
- lib/nexmo_markdown_renderer/filters/unfreeze_filter.rb
|
272
281
|
- lib/nexmo_markdown_renderer/filters/use_case_list_filter.rb
|
282
|
+
- lib/nexmo_markdown_renderer/filters/utils.rb
|
273
283
|
- lib/nexmo_markdown_renderer/initializers/doc_finder.rb
|
274
284
|
- lib/nexmo_markdown_renderer/initializers/i18n.rb
|
275
285
|
- lib/nexmo_markdown_renderer/initializers/redcarpet.rb
|
@@ -278,6 +288,10 @@ files:
|
|
278
288
|
- lib/nexmo_markdown_renderer/models/code_snippet.rb
|
279
289
|
- lib/nexmo_markdown_renderer/models/concept.rb
|
280
290
|
- lib/nexmo_markdown_renderer/models/tutorial.rb
|
291
|
+
- lib/nexmo_markdown_renderer/models/tutorial/file_loader.rb
|
292
|
+
- lib/nexmo_markdown_renderer/models/tutorial/metadata.rb
|
293
|
+
- lib/nexmo_markdown_renderer/models/tutorial/prerequisite.rb
|
294
|
+
- lib/nexmo_markdown_renderer/models/tutorial/task.rb
|
281
295
|
- lib/nexmo_markdown_renderer/models/use_case.rb
|
282
296
|
- lib/nexmo_markdown_renderer/services/code_snippet_renderer/android.rb
|
283
297
|
- lib/nexmo_markdown_renderer/services/code_snippet_renderer/base.rb
|
@@ -299,6 +313,7 @@ files:
|
|
299
313
|
- lib/nexmo_markdown_renderer/views/code_snippets/_code_only.html.erb
|
300
314
|
- lib/nexmo_markdown_renderer/views/code_snippets/_configure_client.html.erb
|
301
315
|
- lib/nexmo_markdown_renderer/views/code_snippets/_dependencies.html.erb
|
316
|
+
- lib/nexmo_markdown_renderer/views/code_snippets/_import_dependencies.html.erb
|
302
317
|
- lib/nexmo_markdown_renderer/views/code_snippets/_write_code.html.erb
|
303
318
|
- lib/nexmo_markdown_renderer/views/code_snippets/list/plain.html.erb
|
304
319
|
- lib/nexmo_markdown_renderer/views/concepts/list/plain.html.erb
|