station 0.0.134 → 0.0.138

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.
Files changed (22) hide show
  1. checksums.yaml +4 -4
  2. data/.env.example +3 -0
  3. data/.gitignore +3 -1
  4. data/lib/nexmo_developer/.rspec +1 -0
  5. data/lib/nexmo_developer/app/assets/config/manifest.js +2 -1
  6. data/lib/nexmo_developer/app/assets/javascripts/digitalData.js +142 -0
  7. data/lib/nexmo_developer/app/controllers/application_controller.rb +15 -0
  8. data/lib/nexmo_developer/app/views/layouts/partials/_head.html.erb +3 -3
  9. data/lib/nexmo_developer/app/views/layouts/partials/_header.html.erb +4 -0
  10. data/lib/nexmo_developer/lib/tasks/ci.rake +14 -0
  11. data/lib/nexmo_developer/public/assets/.sprockets-manifest-4e6d2b8abc718dafd9c3cc32787eea3b.json +1 -0
  12. data/lib/nexmo_developer/public/assets/application-6e9186f7602070c57b5c60de9b45ad12f1fccdcf83e08ea28c809d7a5a42a232.css.gz +0 -0
  13. data/lib/nexmo_developer/public/assets/application-aa88b3c7bd34ec529f43849541752fda7c9c202aa9fff905be578ef88d103b46.js.gz +0 -0
  14. data/lib/nexmo_developer/public/assets/digitalData-cc7ee32b7180e36d640fbee63fbcecb8a0f42cd67aaccc3d0883bda4ed384932.js +142 -0
  15. data/lib/nexmo_developer/public/assets/digitalData-cc7ee32b7180e36d640fbee63fbcecb8a0f42cd67aaccc3d0883bda4ed384932.js.gz +0 -0
  16. data/lib/nexmo_developer/public/assets/manifest-dad05bf766af0fe3d79dd746db3c1361c0583026cdf35d6a2921bccaea835331.js +3 -0
  17. data/lib/nexmo_developer/public/assets/manifest-dad05bf766af0fe3d79dd746db3c1361c0583026cdf35d6a2921bccaea835331.js.gz +0 -0
  18. data/lib/nexmo_developer/version.rb +1 -1
  19. metadata +8 -5
  20. data/lib/nexmo_developer/public/assets/.sprockets-manifest-35ccff49dde5df6fe219d1347909aa99.json +0 -1
  21. data/lib/nexmo_developer/public/assets/manifest-a72913f4c604bc8f97dd576fc8777bf029401f6af0e14b6a6c9d3874acfe73e4.js +0 -1
  22. data/lib/nexmo_developer/public/assets/manifest-a72913f4c604bc8f97dd576fc8777bf029401f6af0e14b6a6c9d3874acfe73e4.js.gz +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1430340bc53d02b901ff52d0e0a8d5f5691297fd0f9495eff24eda22133c553f
4
- data.tar.gz: f5117c588ae60c5080767b47afa24c0e8823a01070e34f8903406935d8103b4a
3
+ metadata.gz: e634b85e42ad8a0d4f48cf9730b92356b432dd518a3101eed04cb66c3e0a9d48
4
+ data.tar.gz: f8b6cb685d83c8497384be4336fb09dcb7e8b1e089d7d40621284d7f8d08c60b
5
5
  SHA512:
6
- metadata.gz: 0b48dbb64005f060adea66df0b886aac613a5b258a110878119a8b619eda9384ad69fe54913b7b360f26147428d11fca4b150cac13c1f1de2fa1b6d4b97059f4
7
- data.tar.gz: b238d1910c947592cdaef8dc5da698961c4980c56d4c557be07c462e322472ae41fb410eb8b2e719a6a1b68351880e9c7d25610afb7fa19585c99106a7644e5e
6
+ metadata.gz: b8ea16dc943e37aa900ef0268bde1b8ec33a753de52074a5d6af6fcf205ef93129533f9508d5f1165cc053a6ddda413153872d2dd5f6999c4122652d9c10d40c
7
+ data.tar.gz: e2d47615313f0342126d25dac0dcb6fe5c7df22b3c6de3a5fe2ef7d3460fed2715f8b077ec9db8391b123504442c4dbcc4093b701be86701c2334de26a79618a
data/.env.example CHANGED
@@ -26,6 +26,9 @@ GREENHOUSE_API_TOKEN='greenhouse-api-token'
26
26
 
27
27
  REDIS_URL=redis://localhost:6379/0
28
28
 
29
+ ADOBE_LAUNCH_URL=''
30
+ ADOBE_LAUNCH_PRIMARY_CATEGORY='' #example value='biz:api:adp:developer'
31
+
29
32
  # POSTGRES_USERNAME=''
30
33
 
31
34
  # SMARTLING_USER_ID=''
data/.gitignore CHANGED
@@ -19,7 +19,7 @@
19
19
  lib/nexmo_developer/.env
20
20
  lib/nexmo_developer/node_modules
21
21
  lib/nexmo_developer/public/packs
22
- lib/nexmo_developer/public/packs-test/media
22
+ lib/nexmo_developer/public/packs-test
23
23
  ib/nexmo_developer/config/algolia.yml
24
24
  lib/nexmo_developer/tmp/*
25
25
  lib/nexmo_developer/tmp
@@ -39,3 +39,5 @@ lib/nexmo_developer/public/assets
39
39
  .vscode/*
40
40
  coverage
41
41
  .DS_Store
42
+
43
+ node_modules
@@ -1,2 +1,3 @@
1
1
  --color
2
2
  --require spec_helper
3
+ --format doc
@@ -1,2 +1,3 @@
1
1
  //= link application.js
2
- //= link application.css
2
+ //= link digitalData.js
3
+ //= link application.css
@@ -0,0 +1,142 @@
1
+ const PRIMARY_CATEGORY = document.getElementById('adobe_launch_primary_category').value
2
+
3
+ window.digitalData = {
4
+ page: {
5
+ pageInfo: {
6
+ pageName: '',
7
+ functionDept: '',
8
+ primaryCategory: PRIMARY_CATEGORY,
9
+ siteIdentifier: '',
10
+ lob: '',
11
+ subCategory1: '',
12
+ subCategory2: '',
13
+ subCategory3: '',
14
+ appVersion: '',
15
+ language: '',
16
+ country: '',
17
+ pageCategory: '',
18
+ flowName: '',
19
+ tokenFLag: '',
20
+ spaFlag: ''
21
+ },
22
+ content: {
23
+ author: '',
24
+ businessSize: '',
25
+ category: '',
26
+ company: '',
27
+ industry: '',
28
+ name: '',
29
+ product: '',
30
+ profRole: '',
31
+ publishDate: '',
32
+ subCategory: '',
33
+ topic: '',
34
+ type: ''
35
+ }
36
+ },
37
+ eventData: {
38
+ events: '',
39
+ fCTA: '',
40
+ fIndustry: '',
41
+ fLines: '',
42
+ fName: '',
43
+ interactionType: '',
44
+ linesSlider: ''
45
+ },
46
+ user: {
47
+ profile: {
48
+ profileInfo: {
49
+ visitorType: '',
50
+ accountNumber: '',
51
+ accountStatus: '',
52
+ userType: '',
53
+ userName: '',
54
+ accountPlan: '',
55
+ UserID: '',
56
+ responsiveSiteVersion: '',
57
+ country: '',
58
+ acctnumLocations: '',
59
+ acctcontractFlag: ''
60
+ }
61
+ }
62
+ },
63
+ transaction: [
64
+ {
65
+ productInfo: {
66
+ productID: ''
67
+ },
68
+ quantity: '',
69
+ price: {
70
+ basePrice: ''
71
+ }
72
+ }
73
+ ]
74
+ }
75
+
76
+
77
+ // Updates data layer variables on every page load.
78
+ document.addEventListener('DOMContentLoaded', function() {
79
+ const urlPath = window.location.pathname
80
+ const pageName = getPageName(urlPath)
81
+ const { digitalData } = window
82
+ const categorySplit = PRIMARY_CATEGORY.split(':')
83
+ digitalData.page.pageInfo.functionDept = categorySplit.slice(0, categorySplit.length - 1).join(':')
84
+ digitalData.page.pageInfo.siteIdentifier = categorySplit.slice(1, categorySplit.length).join(':')
85
+ digitalData.page.pageInfo.lob = categorySplit[0]
86
+ digitalData.page.pageInfo.pageName = pageName
87
+
88
+ const subCatArray = updateSubCategories(pageName, digitalData)
89
+ digitalData.page.pageInfo.subCategory1 = subCatArray[0]
90
+ digitalData.page.pageInfo.subCategory2 = subCatArray[1]
91
+ digitalData.page.pageInfo.subCategory3 = subCatArray[2]
92
+ })
93
+
94
+ // Click event for Sign-in button
95
+ // Changes visitorType value when clicked.
96
+ document.getElementById('signin').addEventListener('click', function() {
97
+ updateVisitorType()
98
+ })
99
+
100
+ // Changes visitoryType to 'customer' if sign-in
101
+ // button is clicked.
102
+ // Default is null
103
+ function updateVisitorType() {
104
+ const { digitalData } = window
105
+ digitalData.user.profile.profileInfo.visitorType = 'customer'
106
+ }
107
+
108
+ function getPageName(urlPath) {
109
+ let pageName = ''
110
+ switch (urlPath) {
111
+ case '/' :
112
+ pageName = PRIMARY_CATEGORY + ':homepage'
113
+ break
114
+ default:
115
+ pageName = PRIMARY_CATEGORY + urlPath.replaceAll('/', ':')
116
+ }
117
+ return pageName
118
+ }
119
+
120
+ function updateSubCategories(pageName, digitalData) {
121
+ let subCategory1 = ''
122
+ let subCategory2 = ''
123
+ let subCategory3 = ''
124
+ const primaryCategoryArray = PRIMARY_CATEGORY.split(':')
125
+ const pageNameArray = pageName.split(':')
126
+ const categoryArray = []
127
+ const categoryResult = pageNameArray.filter(x => !primaryCategoryArray.includes(x))
128
+ subCategory1 = PRIMARY_CATEGORY + ':' + categoryResult[0]
129
+ subCategory2 = PRIMARY_CATEGORY + ':' + categoryResult[0]
130
+ subCategory3 = PRIMARY_CATEGORY + ':' + categoryResult[0]
131
+ if (categoryResult[1] != undefined) {
132
+ subCategory2 = subCategory2 + ':' + categoryResult[1]
133
+ subCategory3 = subCategory2
134
+ }
135
+ if (categoryResult[2] != undefined) {
136
+ subCategory3 = subCategory3 + ':' + categoryResult[2]
137
+ }
138
+ categoryArray.push(subCategory1)
139
+ categoryArray.push(subCategory2)
140
+ categoryArray.push(subCategory3)
141
+ return categoryArray
142
+ }
@@ -1,6 +1,8 @@
1
1
  class ApplicationController < ActionController::Base
2
2
  include ApplicationHelper
3
3
 
4
+ before_action :redirect_vonage_domain
5
+
4
6
  helper_method :page_title
5
7
 
6
8
  rescue_from Errno::ENOENT, with: :not_found
@@ -32,6 +34,19 @@ class ApplicationController < ActionController::Base
32
34
  redirect_to root_path unless current_user.admin?
33
35
  end
34
36
 
37
+ def redirect_vonage_domain
38
+ case request.host
39
+ when 'developer.nexmo.com'
40
+ redirect_to("https://developer.vonage.com#{request.fullpath}", status: :moved_permanently) and return
41
+ when 'developer.nexmocn.com'
42
+ if request.fullpath.include?('?')
43
+ redirect_to("https://developer.vonage.com#{request.fullpath}&locale=cn", status: :moved_permanently) and return
44
+ end
45
+
46
+ redirect_to("https://developer.vonage.com#{request.fullpath}?locale=cn", status: :moved_permanently) and return
47
+ end
48
+ end
49
+
35
50
  private
36
51
 
37
52
  def requires_authentication?
@@ -3,7 +3,9 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
-
6
+ <% if ENV['ADOBE_LAUNCH_URL'] %>
7
+ <script src='<%= ENV['ADOBE_LAUNCH_URL'] %>' async></script>
8
+ <% end %>
7
9
  <% if head.google_site_verification %>
8
10
  <meta name="google-site-verification" content=<%= head.google_site_verification %> />
9
11
  <% end %>
@@ -129,6 +131,4 @@
129
131
  <meta name="copyright" content="<%= Time.current.year %> <%= head.application_name %>" />
130
132
 
131
133
  <%= csrf_meta_tags %>
132
-
133
-
134
134
  </head>
@@ -3,6 +3,7 @@
3
3
 
4
4
  <div class="Adp-header">
5
5
  <header id="header" class="Adp-header__main Vlt-M-plus">
6
+ <input type="hidden" id="adobe_launch_primary_category" value="<%=ENV['ADOBE_LAUNCH_PRIMARY_CATEGORY']%>">
6
7
  <a tabindex="0" id="skip-to-navigation" href="#sidenav-first" class="Vlt-btn Vlt-btn--outline Vlt-btn--primary Vlt-btn--app">Skip to navigation</a>
7
8
  <a tabindex="0" id="skip-to-content" href="#primary-content" class="Vlt-btn Vlt-btn--outline Vlt-btn--primary Vlt-btn--app">Skip to content</a>
8
9
 
@@ -120,4 +121,7 @@
120
121
  <% end %>
121
122
  <% end %>
122
123
  </section>
124
+ <% if ENV['ADOBE_LAUNCH_URL'] && ENV['ADOBE_LAUNCH_PRIMARY_CATEGORY'] %>
125
+ <%= javascript_include_tag 'digitalData'%>
126
+ <% end %>
123
127
  </div>
@@ -3,6 +3,7 @@ require_relative '../common_errors'
3
3
  namespace :ci do
4
4
  desc 'Verify all pages to make sure that no exceptions are thrown'
5
5
  task verify_pages: :environment do
6
+ puts 'ci/verify_pages - Verify all pages to make sure that no exceptions are thrown'
6
7
  document_paths =
7
8
  [
8
9
  "#{Rails.configuration.docs_base_path}/_documentation/en/**/*.md",
@@ -25,6 +26,7 @@ namespace :ci do
25
26
 
26
27
  desc 'Verify side navigation to make sure every page has valid YAML metadata'
27
28
  task verify_navigation: :environment do
29
+ puts 'ci/verify_navigation - Verify side navigation to make sure every page has valid YAML metadata'
28
30
  session = ActionDispatch::Integration::Session.new(Rails.application)
29
31
  res = session.get '/documentation'
30
32
 
@@ -36,6 +38,7 @@ namespace :ci do
36
38
 
37
39
  desc 'Render all OAS based API references'
38
40
  task verify_oas_reference: :environment do
41
+ puts 'ci/verify_oas_reference - Render all OAS based API references'
39
42
  session = ActionDispatch::Integration::Session.new(Rails.application)
40
43
  OpenApiConstraint.list.each do |name|
41
44
  res = session.get "/api/#{name}"
@@ -49,19 +52,24 @@ namespace :ci do
49
52
 
50
53
  desc 'Ensure all OAS error URLS resolve'
51
54
  task verify_error_urls_resolve: :environment do
55
+ puts 'ci/verify_error_urls_resolve - Ensure all OAS error URLS resolve'
52
56
  session = ActionDispatch::Integration::Session.new(Rails.application)
53
57
  session.host! 'localhost' unless Rails.env.test?
54
58
 
55
59
  errors = []
56
60
 
57
61
  OpenApiConstraint.list.each do |name|
62
+ puts " - Checking #{name}"
58
63
  definition = OpenApiDefinitionResolver.find(name)
59
64
 
60
65
  definition.endpoints.each do |endpoint|
66
+ puts " - #{endpoint.method} #{endpoint.path.path}"
61
67
  endpoint.responses.each do |response|
68
+ puts " - #{response.code}"
62
69
  next if response.code[0] == '2' # Successes don't have error messages
63
70
 
64
71
  response.formats.each do |format|
72
+ puts " - #{format}"
65
73
  schema = response.schema(format)
66
74
 
67
75
  # Turn everything in to an array to simplify things
@@ -72,6 +80,10 @@ namespace :ci do
72
80
  end
73
81
 
74
82
  properties.each do |property|
83
+ # Workaround for issue when referencing from common errors
84
+ # eg: 10DLC: - $ref: "common/common_errors.yml#/components/responses/DefaultError/content/application~1json/schema"
85
+ next if property.blank?
86
+
75
87
  type = property['type']
76
88
 
77
89
  # Skip if it's an old-style error
@@ -115,6 +127,7 @@ namespace :ci do
115
127
  end
116
128
 
117
129
  task check_word_blocklist: :environment do
130
+ puts 'ci/check_word_blocklist - Check that none words in the word blocklist are in use'
118
131
  markdown_files =
119
132
  [
120
133
  "#{Rails.configuration.docs_base_path}/_documentation/en/**/*.md",
@@ -146,6 +159,7 @@ namespace :ci do
146
159
  end
147
160
 
148
161
  task check_ruby_version: :environment do
162
+ puts 'ci/check_ruby_version - Check that the current Ruby version is supported'
149
163
  # We treat .ruby-version as the canonical source
150
164
  ruby_version = File.read('.ruby-version').strip
151
165
 
@@ -0,0 +1 @@
1
+ {"files":{"manifest-dad05bf766af0fe3d79dd746db3c1361c0583026cdf35d6a2921bccaea835331.js":{"logical_path":"manifest.js","mtime":"2021-12-20T11:51:30+00:00","size":3,"digest":"6a3cf5192354f71615ac51034b3e97c20eda99643fcaf5bbe6d41ad59bd12167","integrity":"sha256-ajz1GSNU9xYVrFEDSz6Xwg7amWQ/yvW75tQa1ZvRIWc="},"application-aa88b3c7bd34ec529f43849541752fda7c9c202aa9fff905be578ef88d103b46.js":{"logical_path":"application.js","mtime":"2021-12-20T11:51:30+00:00","size":3172,"digest":"67f1fd16f949c2794341a44cf839e5436bbef74436e043ead39890d1c3b2e583","integrity":"sha256-Z/H9FvlJwnlDQaRM+DnlQ2u+90Q24EPq05iQ0cOy5YM="},"digitalData-cc7ee32b7180e36d640fbee63fbcecb8a0f42cd67aaccc3d0883bda4ed384932.js":{"logical_path":"digitalData.js","mtime":"2021-12-20T11:51:30+00:00","size":3755,"digest":"28b5b1ae4e4639492142e88b7c75b062066bc51a1761b5db476128e76543ad0b","integrity":"sha256-KLWxrk5GOUkhQuiLfHWwYgZrxRoXYbXbR2Eo52VDrQs="},"application-6e9186f7602070c57b5c60de9b45ad12f1fccdcf83e08ea28c809d7a5a42a232.css":{"logical_path":"application.css","mtime":"2021-12-20T11:51:30+00:00","size":8704,"digest":"99228d4019121f891ee008e4db5fb0ffa736bada427f4996d15c9c95d1af58b3","integrity":"sha256-mSKNQBkSH4ke4Ajk21+w/6c2utpCf0mW0VycldGvWLM="}},"assets":{"manifest.js":"manifest-dad05bf766af0fe3d79dd746db3c1361c0583026cdf35d6a2921bccaea835331.js","application.js":"application-aa88b3c7bd34ec529f43849541752fda7c9c202aa9fff905be578ef88d103b46.js","digitalData.js":"digitalData-cc7ee32b7180e36d640fbee63fbcecb8a0f42cd67aaccc3d0883bda4ed384932.js","application.css":"application-6e9186f7602070c57b5c60de9b45ad12f1fccdcf83e08ea28c809d7a5a42a232.css"}}
@@ -0,0 +1,142 @@
1
+ const PRIMARY_CATEGORY = document.getElementById('adobe_launch_primary_category').value
2
+
3
+ window.digitalData = {
4
+ page: {
5
+ pageInfo: {
6
+ pageName: '',
7
+ functionDept: '',
8
+ primaryCategory: PRIMARY_CATEGORY,
9
+ siteIdentifier: '',
10
+ lob: '',
11
+ subCategory1: '',
12
+ subCategory2: '',
13
+ subCategory3: '',
14
+ appVersion: '',
15
+ language: '',
16
+ country: '',
17
+ pageCategory: '',
18
+ flowName: '',
19
+ tokenFLag: '',
20
+ spaFlag: ''
21
+ },
22
+ content: {
23
+ author: '',
24
+ businessSize: '',
25
+ category: '',
26
+ company: '',
27
+ industry: '',
28
+ name: '',
29
+ product: '',
30
+ profRole: '',
31
+ publishDate: '',
32
+ subCategory: '',
33
+ topic: '',
34
+ type: ''
35
+ }
36
+ },
37
+ eventData: {
38
+ events: '',
39
+ fCTA: '',
40
+ fIndustry: '',
41
+ fLines: '',
42
+ fName: '',
43
+ interactionType: '',
44
+ linesSlider: ''
45
+ },
46
+ user: {
47
+ profile: {
48
+ profileInfo: {
49
+ visitorType: '',
50
+ accountNumber: '',
51
+ accountStatus: '',
52
+ userType: '',
53
+ userName: '',
54
+ accountPlan: '',
55
+ UserID: '',
56
+ responsiveSiteVersion: '',
57
+ country: '',
58
+ acctnumLocations: '',
59
+ acctcontractFlag: ''
60
+ }
61
+ }
62
+ },
63
+ transaction: [
64
+ {
65
+ productInfo: {
66
+ productID: ''
67
+ },
68
+ quantity: '',
69
+ price: {
70
+ basePrice: ''
71
+ }
72
+ }
73
+ ]
74
+ }
75
+
76
+
77
+ // Updates data layer variables on every page load.
78
+ document.addEventListener('DOMContentLoaded', function() {
79
+ const urlPath = window.location.pathname
80
+ const pageName = getPageName(urlPath)
81
+ const { digitalData } = window
82
+ const categorySplit = PRIMARY_CATEGORY.split(':')
83
+ digitalData.page.pageInfo.functionDept = categorySplit.slice(0, categorySplit.length - 1).join(':')
84
+ digitalData.page.pageInfo.siteIdentifier = categorySplit.slice(1, categorySplit.length).join(':')
85
+ digitalData.page.pageInfo.lob = categorySplit[0]
86
+ digitalData.page.pageInfo.pageName = pageName
87
+
88
+ const subCatArray = updateSubCategories(pageName, digitalData)
89
+ digitalData.page.pageInfo.subCategory1 = subCatArray[0]
90
+ digitalData.page.pageInfo.subCategory2 = subCatArray[1]
91
+ digitalData.page.pageInfo.subCategory3 = subCatArray[2]
92
+ })
93
+
94
+ // Click event for Sign-in button
95
+ // Changes visitorType value when clicked.
96
+ document.getElementById('signin').addEventListener('click', function() {
97
+ updateVisitorType()
98
+ })
99
+
100
+ // Changes visitoryType to 'customer' if sign-in
101
+ // button is clicked.
102
+ // Default is null
103
+ function updateVisitorType() {
104
+ const { digitalData } = window
105
+ digitalData.user.profile.profileInfo.visitorType = 'customer'
106
+ }
107
+
108
+ function getPageName(urlPath) {
109
+ let pageName = ''
110
+ switch (urlPath) {
111
+ case '/' :
112
+ pageName = PRIMARY_CATEGORY + ':homepage'
113
+ break
114
+ default:
115
+ pageName = PRIMARY_CATEGORY + urlPath.replaceAll('/', ':')
116
+ }
117
+ return pageName
118
+ }
119
+
120
+ function updateSubCategories(pageName, digitalData) {
121
+ let subCategory1 = ''
122
+ let subCategory2 = ''
123
+ let subCategory3 = ''
124
+ const primaryCategoryArray = PRIMARY_CATEGORY.split(':')
125
+ const pageNameArray = pageName.split(':')
126
+ const categoryArray = []
127
+ const categoryResult = pageNameArray.filter(x => !primaryCategoryArray.includes(x))
128
+ subCategory1 = PRIMARY_CATEGORY + ':' + categoryResult[0]
129
+ subCategory2 = PRIMARY_CATEGORY + ':' + categoryResult[0]
130
+ subCategory3 = PRIMARY_CATEGORY + ':' + categoryResult[0]
131
+ if (categoryResult[1] != undefined) {
132
+ subCategory2 = subCategory2 + ':' + categoryResult[1]
133
+ subCategory3 = subCategory2
134
+ }
135
+ if (categoryResult[2] != undefined) {
136
+ subCategory3 = subCategory3 + ':' + categoryResult[2]
137
+ }
138
+ categoryArray.push(subCategory1)
139
+ categoryArray.push(subCategory2)
140
+ categoryArray.push(subCategory3)
141
+ return categoryArray
142
+ };
@@ -1,3 +1,3 @@
1
1
  module NexmoDeveloper
2
- VERSION = '0.0.134'.freeze
2
+ VERSION = '0.0.138'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: station
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.134
4
+ version: 0.0.138
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vonage DevRel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-11-10 00:00:00.000000000 Z
11
+ date: 2021-12-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activeadmin
@@ -717,12 +717,14 @@ files:
717
717
  - "./lib/nexmo_developer/public/android-chrome-512x512.png"
718
718
  - "./lib/nexmo_developer/public/apple-touch-icon-precomposed.png"
719
719
  - "./lib/nexmo_developer/public/apple-touch-icon.png"
720
- - "./lib/nexmo_developer/public/assets/.sprockets-manifest-35ccff49dde5df6fe219d1347909aa99.json"
720
+ - "./lib/nexmo_developer/public/assets/.sprockets-manifest-4e6d2b8abc718dafd9c3cc32787eea3b.json"
721
721
  - "./lib/nexmo_developer/public/assets/application-6e9186f7602070c57b5c60de9b45ad12f1fccdcf83e08ea28c809d7a5a42a232.css"
722
722
  - "./lib/nexmo_developer/public/assets/application-6e9186f7602070c57b5c60de9b45ad12f1fccdcf83e08ea28c809d7a5a42a232.css.gz"
723
723
  - "./lib/nexmo_developer/public/assets/application-aa88b3c7bd34ec529f43849541752fda7c9c202aa9fff905be578ef88d103b46.js"
724
724
  - "./lib/nexmo_developer/public/assets/application-aa88b3c7bd34ec529f43849541752fda7c9c202aa9fff905be578ef88d103b46.js.gz"
725
725
  - "./lib/nexmo_developer/public/assets/archives/app-store-badges.zip"
726
+ - "./lib/nexmo_developer/public/assets/digitalData-cc7ee32b7180e36d640fbee63fbcecb8a0f42cd67aaccc3d0883bda4ed384932.js"
727
+ - "./lib/nexmo_developer/public/assets/digitalData-cc7ee32b7180e36d640fbee63fbcecb8a0f42cd67aaccc3d0883bda4ed384932.js.gz"
726
728
  - "./lib/nexmo_developer/public/assets/fonts/icomoon.eot"
727
729
  - "./lib/nexmo_developer/public/assets/fonts/icomoon.json"
728
730
  - "./lib/nexmo_developer/public/assets/fonts/icomoon.svg"
@@ -804,8 +806,8 @@ files:
804
806
  - "./lib/nexmo_developer/public/assets/images/workflow_voice_api_call.svg"
805
807
  - "./lib/nexmo_developer/public/assets/images/workflow_voice_api_inbound_conversation.svg"
806
808
  - "./lib/nexmo_developer/public/assets/images/workflow_voice_api_outbound_call.svg"
807
- - "./lib/nexmo_developer/public/assets/manifest-a72913f4c604bc8f97dd576fc8777bf029401f6af0e14b6a6c9d3874acfe73e4.js"
808
- - "./lib/nexmo_developer/public/assets/manifest-a72913f4c604bc8f97dd576fc8777bf029401f6af0e14b6a6c9d3874acfe73e4.js.gz"
809
+ - "./lib/nexmo_developer/public/assets/manifest-dad05bf766af0fe3d79dd746db3c1361c0583026cdf35d6a2921bccaea835331.js"
810
+ - "./lib/nexmo_developer/public/assets/manifest-dad05bf766af0fe3d79dd746db3c1361c0583026cdf35d6a2921bccaea835331.js.gz"
809
811
  - "./lib/nexmo_developer/public/assets/symbol/volta-icons.svg"
810
812
  - "./lib/nexmo_developer/public/browserconfig.xml"
811
813
  - "./lib/nexmo_developer/public/favicon-16x16.png"
@@ -1126,6 +1128,7 @@ files:
1126
1128
  - lib/nexmo_developer/app/admin/admin_user.rb
1127
1129
  - lib/nexmo_developer/app/assets/config/manifest.js
1128
1130
  - lib/nexmo_developer/app/assets/javascripts/application.js
1131
+ - lib/nexmo_developer/app/assets/javascripts/digitalData.js
1129
1132
  - lib/nexmo_developer/app/assets/stylesheets/application.css
1130
1133
  - lib/nexmo_developer/app/channels/application_cable/channel.rb
1131
1134
  - lib/nexmo_developer/app/channels/application_cable/connection.rb
@@ -1 +0,0 @@
1
- {"files":{"manifest-a72913f4c604bc8f97dd576fc8777bf029401f6af0e14b6a6c9d3874acfe73e4.js":{"logical_path":"manifest.js","mtime":"2021-11-10T15:33:37+00:00","size":1,"digest":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","integrity":"sha256-AbpHGcgLb+kRsJGnwFEktk7uzpZOCcBY74+YBdrKVGs="},"application-aa88b3c7bd34ec529f43849541752fda7c9c202aa9fff905be578ef88d103b46.js":{"logical_path":"application.js","mtime":"2021-11-10T15:33:37+00:00","size":3172,"digest":"67f1fd16f949c2794341a44cf839e5436bbef74436e043ead39890d1c3b2e583","integrity":"sha256-Z/H9FvlJwnlDQaRM+DnlQ2u+90Q24EPq05iQ0cOy5YM="},"application-6e9186f7602070c57b5c60de9b45ad12f1fccdcf83e08ea28c809d7a5a42a232.css":{"logical_path":"application.css","mtime":"2021-11-10T15:33:37+00:00","size":8704,"digest":"99228d4019121f891ee008e4db5fb0ffa736bada427f4996d15c9c95d1af58b3","integrity":"sha256-mSKNQBkSH4ke4Ajk21+w/6c2utpCf0mW0VycldGvWLM="}},"assets":{"manifest.js":"manifest-a72913f4c604bc8f97dd576fc8777bf029401f6af0e14b6a6c9d3874acfe73e4.js","application.js":"application-aa88b3c7bd34ec529f43849541752fda7c9c202aa9fff905be578ef88d103b46.js","application.css":"application-6e9186f7602070c57b5c60de9b45ad12f1fccdcf83e08ea28c809d7a5a42a232.css"}}