retreaverjs-rails 0.2.25 → 0.2.26

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 (55) hide show
  1. checksums.yaml +4 -4
  2. data/build.js +104 -0
  3. data/lib/retreaverjs/compile.rb +6 -5
  4. data/lib/retreaverjs/rails/version.rb +1 -1
  5. data/package.json +14 -27
  6. data/vendor/assets/javascripts/retreaver.js +25 -11
  7. data/vendor/assets/javascripts/retreaver.min.js +2 -2
  8. data/vendor/documentation/javascript/v1/Retreaver.Campaign.html +343 -282
  9. data/vendor/documentation/javascript/v1/Retreaver.Number.html +875 -713
  10. data/vendor/documentation/javascript/v1/Retreaver.html +161 -130
  11. data/vendor/documentation/javascript/v1/campaign.js.html +11 -87
  12. data/vendor/documentation/javascript/v1/fonts/OpenSans-Bold-webfont.eot +0 -0
  13. data/vendor/documentation/javascript/v1/fonts/OpenSans-Bold-webfont.svg +1830 -0
  14. data/vendor/documentation/javascript/v1/fonts/OpenSans-Bold-webfont.woff +0 -0
  15. data/vendor/documentation/javascript/v1/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
  16. data/vendor/documentation/javascript/v1/fonts/OpenSans-BoldItalic-webfont.svg +1830 -0
  17. data/vendor/documentation/javascript/v1/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
  18. data/vendor/documentation/javascript/v1/fonts/OpenSans-Italic-webfont.eot +0 -0
  19. data/vendor/documentation/javascript/v1/fonts/OpenSans-Italic-webfont.svg +1830 -0
  20. data/vendor/documentation/javascript/v1/fonts/OpenSans-Italic-webfont.woff +0 -0
  21. data/vendor/documentation/javascript/v1/fonts/OpenSans-Light-webfont.eot +0 -0
  22. data/vendor/documentation/javascript/v1/fonts/OpenSans-Light-webfont.svg +1831 -0
  23. data/vendor/documentation/javascript/v1/fonts/OpenSans-Light-webfont.woff +0 -0
  24. data/vendor/documentation/javascript/v1/fonts/OpenSans-LightItalic-webfont.eot +0 -0
  25. data/vendor/documentation/javascript/v1/fonts/OpenSans-LightItalic-webfont.svg +1835 -0
  26. data/vendor/documentation/javascript/v1/fonts/OpenSans-LightItalic-webfont.woff +0 -0
  27. data/vendor/documentation/javascript/v1/fonts/OpenSans-Regular-webfont.eot +0 -0
  28. data/vendor/documentation/javascript/v1/fonts/OpenSans-Regular-webfont.svg +1831 -0
  29. data/vendor/documentation/javascript/v1/fonts/OpenSans-Regular-webfont.woff +0 -0
  30. data/vendor/documentation/javascript/v1/global.html +123 -93
  31. data/vendor/documentation/javascript/v1/index.html +10 -8
  32. data/vendor/documentation/javascript/v1/number.js.html +1 -1
  33. data/vendor/documentation/javascript/v1/retreaver.js.html +8 -7
  34. data/vendor/documentation/javascript/v1/retreaver_campaign.js.html +400 -0
  35. data/vendor/documentation/javascript/v1/retreaver_number.js.html +275 -0
  36. data/vendor/documentation/javascript/v1/scripts/linenumber.js +20 -12
  37. data/vendor/documentation/javascript/v1/styles/jsdoc-default.css +201 -133
  38. data/vendor/documentation/javascript/v1/styles/prettify-tomorrow.css +1 -1
  39. data/vendor/documentation/javascript/{dev → v2}/Retreaver.Campaign.html +3 -3
  40. data/vendor/documentation/javascript/{dev → v2}/Retreaver.Number.html +1 -1
  41. data/vendor/documentation/javascript/{dev → v2}/Retreaver.html +2 -2
  42. data/vendor/documentation/javascript/{dev → v2}/campaign.js.html +39 -48
  43. data/vendor/documentation/javascript/{dev → v2}/global.html +2 -2
  44. data/vendor/documentation/javascript/{dev → v2}/index.html +1 -1
  45. data/vendor/documentation/javascript/{dev → v2}/number.js.html +1 -1
  46. data/vendor/documentation/javascript/{dev → v2}/retreaver.js.html +2 -2
  47. metadata +42 -24
  48. data/Gruntfile.js +0 -50
  49. /data/vendor/documentation/javascript/{dev → v2}/scripts/linenumber.js +0 -0
  50. /data/vendor/documentation/javascript/{dev → v2}/scripts/prettify/Apache-License-2.0.txt +0 -0
  51. /data/vendor/documentation/javascript/{dev → v2}/scripts/prettify/lang-css.js +0 -0
  52. /data/vendor/documentation/javascript/{dev → v2}/scripts/prettify/prettify.js +0 -0
  53. /data/vendor/documentation/javascript/{dev → v2}/styles/jsdoc-default.css +0 -0
  54. /data/vendor/documentation/javascript/{dev → v2}/styles/prettify-jsdoc.css +0 -0
  55. /data/vendor/documentation/javascript/{dev → v2}/styles/prettify-tomorrow.css +0 -0
@@ -72,43 +72,6 @@
72
72
  self.primary_key('campaign_key');
73
73
  self.numbers = [];
74
74
 
75
- self.handle_true_call_integration = function(number) {
76
- const trueCallConfig = number.get("integrations")["truecall.com"];
77
- // debugger
78
- if (typeof(trueCallConfig) == 'undefined') {
79
- return;
80
- }
81
-
82
- // Load the trueCall script into the page it it's missing
83
- if(!document.getElementById("__tc_script") || !window.TrueCall) {
84
- (function () {
85
- const trueCallScriptTag = document.createElement('script');
86
- trueCallScriptTag.type = 'text/javascript';
87
- trueCallScriptTag.async = true;
88
- trueCallScriptTag.defer = true;
89
- trueCallScriptTag.dataset.tc_campaign_id = trueCallConfig["tcCampaignId"];
90
- trueCallScriptTag.id = "__tc_script"
91
- trueCallScriptTag.src = 'https://static.truecall.com/tc-retreaver.js';
92
- (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(trueCallScriptTag);
93
- })();
94
- }
95
-
96
- const obtainTrueCallId = new Promise(function(resolve) {
97
- const trueCallInterval = setInterval(function() {
98
- if (window.TrueCall && window.TrueCall.getId()) {
99
- resolve(window.TrueCall.getId())
100
- clearInterval(trueCallInterval);
101
- }
102
- }, trueCallConfig["checkIntervalMs"]); // Try to get the trueCallId every X milliseconds
103
- })
104
-
105
- obtainTrueCallId.then(function (trueCallId) {
106
- const tags = {};
107
- tags[trueCallConfig["tagName"]] = trueCallId;
108
- number.replace_tags(tags);
109
- });
110
- }
111
-
112
75
  /**
113
76
  * Fetch a campaign number.
114
77
  * @memberOf Retreaver.Campaign
@@ -151,22 +114,50 @@
151
114
  new RequestNumber(self.get('campaign_key', 'number_matching_tags')).perform(function(data) {
152
115
  // did retreaver return a valid number?
153
116
  if (typeof(data) !== 'undefined' && typeof(data.number) !== 'undefined' && data.number !== '') {
154
- var number = new Retreaver.Number(data.number);
155
- number.add_tags({"gosho": "123"}, function(data){
156
- console.log("tagged");
157
- })
158
117
  // initialize number
159
- try {
160
- self.handle_true_call_integration(number);
161
- } catch (e) {
162
- console.error("Could not integrate with truecall.com, ", e);
163
- }
118
+ var number = new Retreaver.Number(data.number);
164
119
 
165
- // if there is a replacement in the response, replace all occurrences
120
+ // if there is a replacement in the response, replace all occurances
166
121
  // of that number on the page with the retreaver number
167
122
  if (typeof(data.number.replacement_numbers) !== 'undefined') {
168
123
  find_and_replace_number(data.number.replacement_numbers);
169
124
  }
125
+
126
+ // start waiting for TrueCall id if integration is enabled
127
+ if (typeof(data.number.integrations) !== 'undefined' &&
128
+ typeof(data.number.integrations["truecall.com"]) !== 'undefined') {
129
+ const checkIntervalMs = data.number.integrations["truecall.com"]["checkIntervalMs"] || 1000;
130
+ const tagName = data.number.integrations["truecall.com"]["tagName"] || "tc_id";
131
+ const tcCampaignId = data.number.integrations["truecall.com"]["tcCampaignId"];
132
+
133
+ if(!document.getElementById("__tc_script")) {
134
+ (function () {
135
+ var rjs = document.createElement('script');
136
+ rjs.type = 'text/javascript';
137
+ rjs.async = true;
138
+ rjs.defer = true;
139
+ rjs.dataset.tc_campaign_id = tcCampaignId;
140
+ rjs.id = "__tc_script"
141
+ rjs.src = document.location.protocol + '//localhost:3000/tc-retreaver.js';
142
+ (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(rjs);
143
+ })();
144
+ }
145
+
146
+ const promise = new Promise(function(resolve, reject) {
147
+ const trueCallInterval = setInterval(function() {
148
+ if (window.TrueCall && window.TrueCall.getId()) {
149
+ resolve({tagName: tagName, trueCallId: window.TrueCall.getId()})
150
+ clearInterval(trueCallInterval);
151
+ }
152
+ }, checkIntervalMs); //timeout check every X milliseconds
153
+ })
154
+ promise.then(function(data) {
155
+ const tags = {};
156
+ tags[data["tagName"]] = data["trueCallId"];
157
+ number.replace_tags(tags);
158
+ })
159
+ }
160
+
170
161
  // call callback
171
162
  callback.apply(self, [number]);
172
163
  }
@@ -261,7 +252,7 @@
261
252
  <br clear="both">
262
253
 
263
254
  <footer>
264
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.2.2</a> on Mon Jun 17 2024 14:31:15 GMT+0300 (EEST)
255
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.2.2</a> on Fri May 31 2024 11:55:23 GMT+0300 (EEST)
265
256
  </footer>
266
257
 
267
258
  <script> prettyPrint(); </script>
@@ -178,7 +178,7 @@
178
178
 
179
179
  <dt class="tag-source">Source:</dt>
180
180
  <dd class="tag-source"><ul class="dummy"><li>
181
- <a href="campaign.js.html">retreaver/campaign.js</a>, <a href="campaign.js.html#line180">line 180</a>
181
+ <a href="campaign.js.html">retreaver/campaign.js</a>, <a href="campaign.js.html#line171">line 171</a>
182
182
  </li></ul></dd>
183
183
 
184
184
 
@@ -223,7 +223,7 @@
223
223
  <br clear="both">
224
224
 
225
225
  <footer>
226
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.2.2</a> on Mon Jun 17 2024 14:31:16 GMT+0300 (EEST)
226
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.2.2</a> on Fri May 31 2024 11:55:23 GMT+0300 (EEST)
227
227
  </footer>
228
228
 
229
229
  <script> prettyPrint(); </script>
@@ -58,7 +58,7 @@
58
58
  <br clear="both">
59
59
 
60
60
  <footer>
61
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.2.2</a> on Mon Jun 17 2024 14:31:16 GMT+0300 (EEST)
61
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.2.2</a> on Fri May 31 2024 11:55:23 GMT+0300 (EEST)
62
62
  </footer>
63
63
 
64
64
  <script> prettyPrint(); </script>
@@ -265,7 +265,7 @@
265
265
  <br clear="both">
266
266
 
267
267
  <footer>
268
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.2.2</a> on Mon Jun 17 2024 14:31:16 GMT+0300 (EEST)
268
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.2.2</a> on Fri May 31 2024 11:55:23 GMT+0300 (EEST)
269
269
  </footer>
270
270
 
271
271
  <script> prettyPrint(); </script>
@@ -27,7 +27,7 @@
27
27
  <article>
28
28
  <pre class="prettyprint source"><code>(function (context) {
29
29
  /**
30
- * @version dev
30
+ * @version v2
31
31
  * @namespace Retreaver
32
32
  */
33
33
  var Retreaver = {
@@ -75,7 +75,7 @@
75
75
  <br clear="both">
76
76
 
77
77
  <footer>
78
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.2.2</a> on Mon Jun 17 2024 14:31:16 GMT+0300 (EEST)
78
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.2.2</a> on Fri May 31 2024 11:55:23 GMT+0300 (EEST)
79
79
  </footer>
80
80
 
81
81
  <script> prettyPrint(); </script>
metadata CHANGED
@@ -1,15 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: retreaverjs-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.25
4
+ version: 0.2.26
5
5
  platform: ruby
6
6
  authors:
7
- - Blake Hilscher
8
7
  - Jason Kay
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2024-10-14 00:00:00.000000000 Z
11
+ date: 2025-08-23 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: railties
@@ -31,14 +30,14 @@ dependencies:
31
30
  requirements:
32
31
  - - "~>"
33
32
  - !ruby/object:Gem::Version
34
- version: '1.6'
33
+ version: '2.6'
35
34
  type: :development
36
35
  prerelease: false
37
36
  version_requirements: !ruby/object:Gem::Requirement
38
37
  requirements:
39
38
  - - "~>"
40
39
  - !ruby/object:Gem::Version
41
- version: '1.6'
40
+ version: '2.6'
42
41
  - !ruby/object:Gem::Dependency
43
42
  name: rake
44
43
  requirement: !ruby/object:Gem::Requirement
@@ -69,16 +68,15 @@ dependencies:
69
68
  version: '0'
70
69
  description: retreaver.js rails wrapper
71
70
  email:
72
- - blake@hilscher.ca
73
- - jason@retreaver.com
71
+ - support@retreaver.com
74
72
  executables: []
75
73
  extensions: []
76
74
  extra_rdoc_files: []
77
75
  files:
78
- - Gruntfile.js
79
76
  - LICENSE
80
77
  - README.md
81
78
  - Rakefile
79
+ - build.js
82
80
  - config/README
83
81
  - config/jsdocs.json
84
82
  - lib/retreaverjs/compile.rb
@@ -100,29 +98,34 @@ files:
100
98
  - src/retreaver/vendor/find_and_replace_dom_text.js
101
99
  - vendor/assets/javascripts/retreaver.js
102
100
  - vendor/assets/javascripts/retreaver.min.js
103
- - vendor/documentation/javascript/dev/Retreaver.Campaign.html
104
- - vendor/documentation/javascript/dev/Retreaver.Number.html
105
- - vendor/documentation/javascript/dev/Retreaver.html
106
- - vendor/documentation/javascript/dev/campaign.js.html
107
- - vendor/documentation/javascript/dev/global.html
108
- - vendor/documentation/javascript/dev/index.html
109
- - vendor/documentation/javascript/dev/number.js.html
110
- - vendor/documentation/javascript/dev/retreaver.js.html
111
- - vendor/documentation/javascript/dev/scripts/linenumber.js
112
- - vendor/documentation/javascript/dev/scripts/prettify/Apache-License-2.0.txt
113
- - vendor/documentation/javascript/dev/scripts/prettify/lang-css.js
114
- - vendor/documentation/javascript/dev/scripts/prettify/prettify.js
115
- - vendor/documentation/javascript/dev/styles/jsdoc-default.css
116
- - vendor/documentation/javascript/dev/styles/prettify-jsdoc.css
117
- - vendor/documentation/javascript/dev/styles/prettify-tomorrow.css
118
101
  - vendor/documentation/javascript/v1/Retreaver.Campaign.html
119
102
  - vendor/documentation/javascript/v1/Retreaver.Number.html
120
103
  - vendor/documentation/javascript/v1/Retreaver.html
121
104
  - vendor/documentation/javascript/v1/campaign.js.html
105
+ - vendor/documentation/javascript/v1/fonts/OpenSans-Bold-webfont.eot
106
+ - vendor/documentation/javascript/v1/fonts/OpenSans-Bold-webfont.svg
107
+ - vendor/documentation/javascript/v1/fonts/OpenSans-Bold-webfont.woff
108
+ - vendor/documentation/javascript/v1/fonts/OpenSans-BoldItalic-webfont.eot
109
+ - vendor/documentation/javascript/v1/fonts/OpenSans-BoldItalic-webfont.svg
110
+ - vendor/documentation/javascript/v1/fonts/OpenSans-BoldItalic-webfont.woff
111
+ - vendor/documentation/javascript/v1/fonts/OpenSans-Italic-webfont.eot
112
+ - vendor/documentation/javascript/v1/fonts/OpenSans-Italic-webfont.svg
113
+ - vendor/documentation/javascript/v1/fonts/OpenSans-Italic-webfont.woff
114
+ - vendor/documentation/javascript/v1/fonts/OpenSans-Light-webfont.eot
115
+ - vendor/documentation/javascript/v1/fonts/OpenSans-Light-webfont.svg
116
+ - vendor/documentation/javascript/v1/fonts/OpenSans-Light-webfont.woff
117
+ - vendor/documentation/javascript/v1/fonts/OpenSans-LightItalic-webfont.eot
118
+ - vendor/documentation/javascript/v1/fonts/OpenSans-LightItalic-webfont.svg
119
+ - vendor/documentation/javascript/v1/fonts/OpenSans-LightItalic-webfont.woff
120
+ - vendor/documentation/javascript/v1/fonts/OpenSans-Regular-webfont.eot
121
+ - vendor/documentation/javascript/v1/fonts/OpenSans-Regular-webfont.svg
122
+ - vendor/documentation/javascript/v1/fonts/OpenSans-Regular-webfont.woff
122
123
  - vendor/documentation/javascript/v1/global.html
123
124
  - vendor/documentation/javascript/v1/index.html
124
125
  - vendor/documentation/javascript/v1/number.js.html
125
126
  - vendor/documentation/javascript/v1/retreaver.js.html
127
+ - vendor/documentation/javascript/v1/retreaver_campaign.js.html
128
+ - vendor/documentation/javascript/v1/retreaver_number.js.html
126
129
  - vendor/documentation/javascript/v1/scripts/linenumber.js
127
130
  - vendor/documentation/javascript/v1/scripts/prettify/Apache-License-2.0.txt
128
131
  - vendor/documentation/javascript/v1/scripts/prettify/lang-css.js
@@ -130,6 +133,21 @@ files:
130
133
  - vendor/documentation/javascript/v1/styles/jsdoc-default.css
131
134
  - vendor/documentation/javascript/v1/styles/prettify-jsdoc.css
132
135
  - vendor/documentation/javascript/v1/styles/prettify-tomorrow.css
136
+ - vendor/documentation/javascript/v2/Retreaver.Campaign.html
137
+ - vendor/documentation/javascript/v2/Retreaver.Number.html
138
+ - vendor/documentation/javascript/v2/Retreaver.html
139
+ - vendor/documentation/javascript/v2/campaign.js.html
140
+ - vendor/documentation/javascript/v2/global.html
141
+ - vendor/documentation/javascript/v2/index.html
142
+ - vendor/documentation/javascript/v2/number.js.html
143
+ - vendor/documentation/javascript/v2/retreaver.js.html
144
+ - vendor/documentation/javascript/v2/scripts/linenumber.js
145
+ - vendor/documentation/javascript/v2/scripts/prettify/Apache-License-2.0.txt
146
+ - vendor/documentation/javascript/v2/scripts/prettify/lang-css.js
147
+ - vendor/documentation/javascript/v2/scripts/prettify/prettify.js
148
+ - vendor/documentation/javascript/v2/styles/jsdoc-default.css
149
+ - vendor/documentation/javascript/v2/styles/prettify-jsdoc.css
150
+ - vendor/documentation/javascript/v2/styles/prettify-tomorrow.css
133
151
  homepage: ''
134
152
  licenses:
135
153
  - GPLv3
@@ -149,7 +167,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
149
167
  - !ruby/object:Gem::Version
150
168
  version: '0'
151
169
  requirements: []
152
- rubygems_version: 3.5.6
170
+ rubygems_version: 3.1.6
153
171
  signing_key:
154
172
  specification_version: 4
155
173
  summary: retreaver.js rails wrapper
data/Gruntfile.js DELETED
@@ -1,50 +0,0 @@
1
- module.exports = function (grunt) {
2
-
3
- grunt.initConfig({
4
- pkg: grunt.file.readJSON('package.json'),
5
- concat: {
6
- options: {
7
- separator: ';'
8
- },
9
- dist: {
10
- src: [
11
- 'src/retreaver.js',
12
- 'src/retreaver/base/helpers.js',
13
- 'src/retreaver/base/cookies.js',
14
- 'src/retreaver/base/base64.js',
15
- 'src/retreaver/base/data.js',
16
- 'src/retreaver/base/model.js',
17
- 'src/retreaver/base/request.js',
18
- 'src/retreaver/base/request_number.js',
19
- 'src/retreaver/cache.js',
20
- 'src/retreaver/number.js',
21
- 'src/retreaver/campaign.js',
22
- 'src/retreaver/callpixels.js',
23
- 'src/retreaver/vendor/find_and_replace_dom_text.js'
24
- ],
25
- dest: 'dist/<%= pkg.name %>.js'
26
- }
27
- },
28
- uglify: {
29
- options: {
30
- banner: '/*! <%= pkg.name %> <%= grunt.template.today("dd-mm-yyyy") %> */\n'
31
- },
32
- dist: {
33
- files: {
34
- 'dist/<%= pkg.name %>.min.js': ['<%= concat.dist.dest %>']
35
- }
36
- }
37
- },
38
- watch: {
39
- files: ['<%= jshint.files %>'],
40
- tasks: ['jshint']
41
- }
42
- });
43
-
44
- grunt.loadNpmTasks('grunt-contrib-uglify');
45
- grunt.loadNpmTasks('grunt-contrib-jshint');
46
- grunt.loadNpmTasks('grunt-contrib-watch');
47
- grunt.loadNpmTasks('grunt-contrib-concat');
48
-
49
- grunt.registerTask('default', ['concat', 'uglify']);
50
- };