countly-sdk-web 20.11.0 → 21.11.0

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 (74) hide show
  1. package/.eslintignore +4 -3
  2. package/.eslintrc.js +198 -198
  3. package/.github/dependabot.yml +20 -0
  4. package/.github/workflows/codeql-analysis.yml +71 -0
  5. package/.github/workflows/node.js.yml +41 -0
  6. package/.travis.yml +17 -17
  7. package/CHANGELOG.md +206 -0
  8. package/LICENSE +19 -19
  9. package/README.md +122 -90
  10. package/SECURITY.md +3 -0
  11. package/bower.json +29 -29
  12. package/closure-compiler.jar +0 -0
  13. package/countlyWeb.bat +6 -0
  14. package/examples/example_apm.html +51 -51
  15. package/examples/example_fb.html +50 -50
  16. package/examples/example_formdata.html +47 -47
  17. package/examples/example_ga_adapter.html +173 -173
  18. package/examples/example_gdpr.html +82 -82
  19. package/examples/example_internal_limits.html +184 -0
  20. package/examples/example_multiple_instances.html +52 -52
  21. package/examples/example_rating_widgets.html +80 -0
  22. package/examples/example_remote_config.html +38 -38
  23. package/examples/example_sync.html +34 -34
  24. package/generateDocs.sh +79 -72
  25. package/inch.json +6 -6
  26. package/jsdoc_conf.json +61 -61
  27. package/lib/countly.js +3828 -3469
  28. package/lib/countly.min.js +91 -78
  29. package/package.json +50 -50
  30. package/plugin/boomerang/boomerang.min.js +10 -10
  31. package/plugin/boomerang/countly_boomerang.js +150 -150
  32. package/plugin/ga_adapter/doc.md +73 -73
  33. package/plugin/ga_adapter/ga_adapter.js +451 -451
  34. package/samples/react/README.md +35 -35
  35. package/samples/react/package-lock.json +13893 -13893
  36. package/samples/react/package.json +37 -37
  37. package/samples/react/public/index.html +19 -19
  38. package/samples/react/public/manifest.json +25 -25
  39. package/samples/react/public/robots.txt +3 -3
  40. package/samples/react/src/App-WithEffect.js +33 -34
  41. package/samples/react/src/App-WithRouter.js +46 -99
  42. package/samples/react/src/App.test.js +9 -9
  43. package/samples/react/src/Components/Contact.js +28 -28
  44. package/samples/react/src/Components/Header.js +88 -88
  45. package/samples/react/src/Components/Home.js +23 -23
  46. package/samples/react/src/Components/Users.js +43 -43
  47. package/samples/react/src/Components/styles.css +25 -25
  48. package/samples/react/src/ErrorBoundary.js +28 -0
  49. package/samples/react/src/Location-WithEffect.js +27 -78
  50. package/samples/react/src/Location-WithRouter.js +23 -23
  51. package/samples/react/src/index.css +5 -5
  52. package/samples/react/src/index.js +68 -17
  53. package/samples/react/src/serviceWorker.js +141 -141
  54. package/samples/react/src/setupTests.js +5 -5
  55. package/samples/symbolication/.babelrc +11 -0
  56. package/samples/symbolication/.editorconfig +8 -0
  57. package/samples/symbolication/.yo-rc.json +53 -0
  58. package/samples/symbolication/README.md +33 -0
  59. package/samples/symbolication/package-lock.json +6713 -0
  60. package/samples/symbolication/package.json +22 -0
  61. package/samples/symbolication/src/index.js +47 -0
  62. package/samples/symbolication/static/index.html +21 -0
  63. package/samples/symbolication/webpack.config.js +27 -0
  64. package/test/files/example_persistancy.html +22 -22
  65. package/test/tests_async.js +165 -230
  66. package/test/tests_ga_adapter.js +274 -274
  67. package/test/tests_gdpr.js +447 -672
  68. package/test/tests_helpers.js +397 -596
  69. package/test/tests_helpers_old_session.js +447 -639
  70. package/test/tests_multiple_instances.js +119 -126
  71. package/test/tests_persistancy.js +126 -126
  72. package/test/tests_sync.js +152 -219
  73. package/test/utils/clearStorage.js +27 -27
  74. package/webpack.config.js +12 -12
package/.eslintignore CHANGED
@@ -1,3 +1,4 @@
1
- lib/countly.min.js
2
- plugin/boomerang/boomerang*.js
3
- samples
1
+ lib/countly.min.js
2
+ lib/countly.pack.js
3
+ plugin/boomerang/boomerang*.js
4
+ samples
package/.eslintrc.js CHANGED
@@ -1,199 +1,199 @@
1
- module.exports = {
2
- "env": {
3
- "browser": true,
4
- "amd": true,
5
- "commonjs": true
6
- },
7
- "extends": "eslint:recommended",
8
- "parserOptions": {
9
- "ecmaVersion": 5
10
- },
11
- "rules": {
12
- "block-spacing": [
13
- "error",
14
- "always"
15
- ],
16
- "brace-style": [
17
- "error",
18
- "stroustrup"
19
- ],
20
- "comma-spacing": [
21
- "error",
22
- {
23
- "before": false,
24
- "after": true
25
- }
26
- ],
27
- "comma-style": [
28
- "error",
29
- "last"
30
- ],
31
- "computed-property-spacing": [
32
- "error",
33
- "never"
34
- ],
35
- "curly": [
36
- "error",
37
- "all"
38
- ],
39
- "eol-last": "off",
40
- "func-call-spacing": [
41
- "error",
42
- "never"
43
- ],
44
- "indent": [
45
- "error",
46
- 4
47
- ],
48
- "key-spacing": [
49
- "error",
50
- {
51
- "beforeColon": false,
52
- "afterColon": true
53
- }
54
- ],
55
- "keyword-spacing": [
56
- "error",
57
- {
58
- "before": true,
59
- "after": true
60
- }
61
- ],
62
- "lines-between-class-members": [
63
- "error",
64
- "always"
65
- ],
66
- "no-multi-spaces": [
67
- "error"
68
- ],
69
- "no-trailing-spaces": [
70
- "error",
71
- {
72
- "ignoreComments": true
73
- }
74
- ],
75
- "no-whitespace-before-property": [
76
- "error"
77
- ],
78
- "object-curly-newline": [
79
- "error",
80
- {
81
- "multiline": true,
82
- "consistent": true
83
- }
84
- ],
85
- "object-property-newline": [
86
- "error",
87
- {
88
- "allowAllPropertiesOnSameLine": true
89
- }
90
- ],
91
- "semi": [
92
- "error",
93
- "always"
94
- ],
95
- "semi-style": [
96
- "error",
97
- "last"
98
- ],
99
- "space-before-blocks": [
100
- "error",
101
- "always"
102
- ],
103
- "space-before-function-paren": [
104
- "error",
105
- "never"
106
- ],
107
- "space-in-parens": [
108
- "error",
109
- "never"
110
- ],
111
- "space-infix-ops": [
112
- "error"
113
- ],
114
- "space-unary-ops": [
115
- "error",
116
- {
117
- "words": true,
118
- "nonwords": false
119
- }
120
- ],
121
- "switch-colon-spacing": [
122
- "error"
123
- ],
124
- "unicode-bom": [
125
- "error",
126
- "never"
127
- ],
128
- "linebreak-style": [
129
- "error",
130
- "unix"
131
- ],
132
- "no-useless-escape": "off",
133
- "quotes": "off",
134
- "valid-jsdoc": [
135
- "error",
136
- {
137
- "requireReturn": false
138
- }
139
- ],
140
- "require-jsdoc": [
141
- "error",
142
- {
143
- "require": {
144
- "FunctionDeclaration": true,
145
- "MethodDefinition": true,
146
- "ClassDeclaration": true,
147
- "ArrowFunctionExpression": true,
148
- "FunctionExpression": false
149
- }
150
- }
151
- ],
152
- "no-console": [
153
- "error"
154
- ],
155
- "dot-notation": [
156
- "error"
157
- ],
158
- "eqeqeq": [
159
- "error",
160
- "always"
161
- ],
162
- "no-alert": [
163
- "error"
164
- ],
165
- "no-caller": [
166
- "error"
167
- ],
168
- "no-eval": [
169
- "error"
170
- ],
171
- "no-extend-native": [
172
- "error"
173
- ],
174
- "no-iterator": [
175
- "error"
176
- ],
177
- "no-loop-func": [
178
- "error"
179
- ],
180
- "no-shadow": [
181
- "error"
182
- ]
183
- },
184
- "overrides": [
185
- {
186
- "files": [
187
- "test/**/*.js",
188
- "webpack.config.js"
189
- ],
190
- "env": {
191
- "es6": true,
192
- "node": true
193
- },
194
- rules: {
195
- "require-jsdoc": "off",
196
- }
197
- }
198
- ]
1
+ module.exports = {
2
+ "env": {
3
+ "browser": true,
4
+ "amd": true,
5
+ "commonjs": true
6
+ },
7
+ "extends": "eslint:recommended",
8
+ "parserOptions": {
9
+ "ecmaVersion": 5
10
+ },
11
+ "rules": {
12
+ "block-spacing": [
13
+ "error",
14
+ "always"
15
+ ],
16
+ "brace-style": [
17
+ "error",
18
+ "stroustrup"
19
+ ],
20
+ "comma-spacing": [
21
+ "error",
22
+ {
23
+ "before": false,
24
+ "after": true
25
+ }
26
+ ],
27
+ "comma-style": [
28
+ "error",
29
+ "last"
30
+ ],
31
+ "computed-property-spacing": [
32
+ "error",
33
+ "never"
34
+ ],
35
+ "curly": [
36
+ "error",
37
+ "all"
38
+ ],
39
+ "eol-last": "off",
40
+ "func-call-spacing": [
41
+ "error",
42
+ "never"
43
+ ],
44
+ "indent": [
45
+ "error",
46
+ 4
47
+ ],
48
+ "key-spacing": [
49
+ "error",
50
+ {
51
+ "beforeColon": false,
52
+ "afterColon": true
53
+ }
54
+ ],
55
+ "keyword-spacing": [
56
+ "error",
57
+ {
58
+ "before": true,
59
+ "after": true
60
+ }
61
+ ],
62
+ "lines-between-class-members": [
63
+ "error",
64
+ "always"
65
+ ],
66
+ "no-multi-spaces": [
67
+ "error"
68
+ ],
69
+ "no-trailing-spaces": [
70
+ "error",
71
+ {
72
+ "ignoreComments": true
73
+ }
74
+ ],
75
+ "no-whitespace-before-property": [
76
+ "error"
77
+ ],
78
+ "object-curly-newline": [
79
+ "error",
80
+ {
81
+ "multiline": true,
82
+ "consistent": true
83
+ }
84
+ ],
85
+ "object-property-newline": [
86
+ "error",
87
+ {
88
+ "allowAllPropertiesOnSameLine": true
89
+ }
90
+ ],
91
+ "semi": [
92
+ "error",
93
+ "always"
94
+ ],
95
+ "semi-style": [
96
+ "error",
97
+ "last"
98
+ ],
99
+ "space-before-blocks": [
100
+ "error",
101
+ "always"
102
+ ],
103
+ "space-before-function-paren": [
104
+ "error",
105
+ "never"
106
+ ],
107
+ "space-in-parens": [
108
+ "error",
109
+ "never"
110
+ ],
111
+ "space-infix-ops": [
112
+ "error"
113
+ ],
114
+ "space-unary-ops": [
115
+ "error",
116
+ {
117
+ "words": true,
118
+ "nonwords": false
119
+ }
120
+ ],
121
+ "switch-colon-spacing": [
122
+ "error"
123
+ ],
124
+ "unicode-bom": [
125
+ "error",
126
+ "never"
127
+ ],
128
+ "linebreak-style": [
129
+ "error",
130
+ "unix"
131
+ ],
132
+ "no-useless-escape": "off",
133
+ "quotes": "off",
134
+ "valid-jsdoc": [
135
+ "error",
136
+ {
137
+ "requireReturn": false
138
+ }
139
+ ],
140
+ "require-jsdoc": [
141
+ "error",
142
+ {
143
+ "require": {
144
+ "FunctionDeclaration": true,
145
+ "MethodDefinition": true,
146
+ "ClassDeclaration": true,
147
+ "ArrowFunctionExpression": true,
148
+ "FunctionExpression": false
149
+ }
150
+ }
151
+ ],
152
+ "no-console": [
153
+ "error"
154
+ ],
155
+ "dot-notation": [
156
+ "error"
157
+ ],
158
+ "eqeqeq": [
159
+ "error",
160
+ "always"
161
+ ],
162
+ "no-alert": [
163
+ "error"
164
+ ],
165
+ "no-caller": [
166
+ "error"
167
+ ],
168
+ "no-eval": [
169
+ "error"
170
+ ],
171
+ "no-extend-native": [
172
+ "error"
173
+ ],
174
+ "no-iterator": [
175
+ "error"
176
+ ],
177
+ "no-loop-func": [
178
+ "error"
179
+ ],
180
+ "no-shadow": [
181
+ "error"
182
+ ]
183
+ },
184
+ "overrides": [
185
+ {
186
+ "files": [
187
+ "test/**/*.js",
188
+ "webpack.config.js"
189
+ ],
190
+ "env": {
191
+ "es6": true,
192
+ "node": true
193
+ },
194
+ rules: {
195
+ "require-jsdoc": "off",
196
+ }
197
+ }
198
+ ]
199
199
  };
@@ -0,0 +1,20 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: npm
4
+ directory: "/"
5
+ schedule:
6
+ interval: daily
7
+ open-pull-requests-limit: 10
8
+ versioning-strategy: increase-if-necessary
9
+ ignore:
10
+ - dependency-name: webpack
11
+ versions:
12
+ - 5.18.0
13
+ - 5.19.0
14
+ - 5.20.0
15
+ - 5.20.1
16
+ - 5.20.2
17
+ - 5.21.2
18
+ - 5.22.0
19
+ - 5.23.0
20
+ - 5.24.0
@@ -0,0 +1,71 @@
1
+ # For most projects, this workflow file will not need changing; you simply need
2
+ # to commit it to your repository.
3
+ #
4
+ # You may wish to alter this file to override the set of languages analyzed,
5
+ # or to provide custom queries or build logic.
6
+ #
7
+ # ******** NOTE ********
8
+ # We have attempted to detect the languages in your repository. Please check
9
+ # the `language` matrix defined below to confirm you have the correct set of
10
+ # supported CodeQL languages.
11
+ #
12
+ name: "CodeQL"
13
+
14
+ on:
15
+ push:
16
+ branches: [ master ]
17
+ pull_request:
18
+ # The branches below must be a subset of the branches above
19
+ branches: [ master ]
20
+ schedule:
21
+ - cron: '31 12 * * 1'
22
+
23
+ jobs:
24
+ analyze:
25
+ name: Analyze
26
+ runs-on: ubuntu-latest
27
+ permissions:
28
+ actions: read
29
+ contents: read
30
+ security-events: write
31
+
32
+ strategy:
33
+ fail-fast: false
34
+ matrix:
35
+ language: [ 'javascript' ]
36
+ # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ]
37
+ # Learn more:
38
+ # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed
39
+
40
+ steps:
41
+ - name: Checkout repository
42
+ uses: actions/checkout@v2
43
+
44
+ # Initializes the CodeQL tools for scanning.
45
+ - name: Initialize CodeQL
46
+ uses: github/codeql-action/init@v1
47
+ with:
48
+ languages: ${{ matrix.language }}
49
+ # If you wish to specify custom queries, you can do so here or in a config file.
50
+ # By default, queries listed here will override any specified in a config file.
51
+ # Prefix the list here with "+" to use these queries and those in the config file.
52
+ # queries: ./path/to/local/query, your-org/your-repo/queries@main
53
+
54
+ # Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
55
+ # If this step fails, then you should remove it and run the build manually (see below)
56
+ - name: Autobuild
57
+ uses: github/codeql-action/autobuild@v1
58
+
59
+ # ℹ️ Command-line programs to run using the OS shell.
60
+ # 📚 https://git.io/JvXDl
61
+
62
+ # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
63
+ # and modify them (or add more) to build your code if your project
64
+ # uses a compiled language
65
+
66
+ #- run: |
67
+ # make bootstrap
68
+ # make release
69
+
70
+ - name: Perform CodeQL Analysis
71
+ uses: github/codeql-action/analyze@v1
@@ -0,0 +1,41 @@
1
+ # This workflow will do a clean install of node dependencies, cache/restore them, build the source code and run tests across different versions of node
2
+ # For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
3
+
4
+ name: Node.js CI
5
+
6
+ on:
7
+ push:
8
+ branches: [ master, next ]
9
+ pull_request:
10
+ branches: [ master, next ]
11
+
12
+ jobs:
13
+ build:
14
+
15
+ runs-on: ubuntu-latest
16
+
17
+ steps:
18
+ - uses: actions/checkout@v2
19
+ - name: Use Node.js ${{ matrix.node-version }}
20
+ uses: actions/setup-node@v2
21
+ with:
22
+ node-version: 14.x
23
+ - run: npm install
24
+ - run: npm run build --if-present
25
+ - run: npm test
26
+
27
+ deploy:
28
+ runs-on: ubuntu-latest
29
+ needs: build
30
+ steps:
31
+ - uses: actions/checkout@v2
32
+ - name: Use Node.js ${{ matrix.node-version }}
33
+ uses: actions/setup-node@v2
34
+ with:
35
+ node-version: 14.x
36
+ - run: npm install
37
+ - name: Deploy documentation
38
+ shell: bash
39
+ env:
40
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
41
+ run: bash generateDocs.sh
package/.travis.yml CHANGED
@@ -1,17 +1,17 @@
1
- language: node_js
2
- node_js:
3
- - '12'
4
- sudo: false
5
- branches:
6
- except:
7
- - gh-pages
8
- env:
9
- global:
10
- - secure: ONfNUHKLNXeG+mqPucbNhXnw7VRmpYKJDXLxyyO1ZxyoSZLytDH9QD3xXLLKwfqVP1DfEAI26xwipGAZejvaXB5Td+a4Q+b3B0Wx0q3kYSh+oQL/CK16HrJkeAbe68hXIYTdRMzQkbwTgDlRbmJiMoNOS6tos6H5dq7V/j5ND60=
11
- after_success:
12
- - cd $TRAVIS_BUILD_DIR
13
- - chmod +x generateDocs.sh
14
- - bash generateDocs.sh
15
- notifications:
16
- slack:
17
- secure: tFVXLE/u2iRMk65ghX6vzWz7Xv43Tppq4/Q1z1T1fhs0ZDjjGVFexiap0WbU0VvVo111J5+tW8I/VmtwLpomm5nTTuhFKVjXKbu7qswLn6Jm5cOKGSpGC1kS8RdNbuJVbqAL2WjYeEftBh2Cq8KN0DIcnqz4lYDK2cay6+7mQ/M=
1
+ language: node_js
2
+ node_js:
3
+ - '12'
4
+ sudo: false
5
+ branches:
6
+ except:
7
+ - gh-pages
8
+ env:
9
+ global:
10
+ - secure: ONfNUHKLNXeG+mqPucbNhXnw7VRmpYKJDXLxyyO1ZxyoSZLytDH9QD3xXLLKwfqVP1DfEAI26xwipGAZejvaXB5Td+a4Q+b3B0Wx0q3kYSh+oQL/CK16HrJkeAbe68hXIYTdRMzQkbwTgDlRbmJiMoNOS6tos6H5dq7V/j5ND60=
11
+ after_success:
12
+ - cd $TRAVIS_BUILD_DIR
13
+ - chmod +x generateDocs.sh
14
+ - bash generateDocs.sh
15
+ notifications:
16
+ slack:
17
+ secure: tFVXLE/u2iRMk65ghX6vzWz7Xv43Tppq4/Q1z1T1fhs0ZDjjGVFexiap0WbU0VvVo111J5+tW8I/VmtwLpomm5nTTuhFKVjXKbu7qswLn6Jm5cOKGSpGC1kS8RdNbuJVbqAL2WjYeEftBh2Cq8KN0DIcnqz4lYDK2cay6+7mQ/M=