@snowplow/react-native-tracker 1.3.0 → 2.0.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 (240) hide show
  1. package/.editorconfig +15 -0
  2. package/.eslintignore +6 -0
  3. package/.gitattributes +3 -0
  4. package/.github/ISSUE_TEMPLATE/bug_report.md +29 -0
  5. package/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  6. package/.github/actions/setup/action.yml +28 -0
  7. package/.github/workflows/build.yml +150 -0
  8. package/.github/workflows/deploy.yml +98 -0
  9. package/.github/workflows/e2e-android.yml +121 -0
  10. package/.github/workflows/e2e-ios.yml +90 -0
  11. package/.github/workflows/snyk.yml +21 -0
  12. package/.gitignore +70 -0
  13. package/.npmignore +60 -0
  14. package/.nvmrc +1 -0
  15. package/.watchmanconfig +1 -0
  16. package/.yarnrc +3 -0
  17. package/CHANGELOG +166 -0
  18. package/CONTRIBUTING.md +80 -0
  19. package/LICENSE +1 -1
  20. package/README.md +24 -111
  21. package/android/build.gradle +93 -37
  22. package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  23. package/android/gradle/wrapper/gradle-wrapper.properties +1 -2
  24. package/android/gradle.properties +5 -2
  25. package/android/gradlew +172 -110
  26. package/android/gradlew.bat +24 -19
  27. package/android/src/main/AndroidManifest.xml +1 -3
  28. package/android/src/main/AndroidManifestNew.xml +2 -0
  29. package/android/src/main/java/com/snowplow/reactnativetracker/ReactNativeTrackerModule.kt +704 -0
  30. package/android/src/main/java/com/snowplow/reactnativetracker/ReactNativeTrackerPackage.kt +17 -0
  31. package/android/src/main/java/com/snowplow/reactnativetracker/util/ConfigUtil.kt +271 -0
  32. package/android/src/main/java/com/snowplow/reactnativetracker/util/EventUtil.kt +213 -0
  33. package/android/src/main/java/com/snowplow/reactnativetracker/util/TrackerVersion.kt +5 -0
  34. package/babel.config.js +3 -0
  35. package/example/.watchmanconfig +1 -0
  36. package/example/Gemfile +6 -0
  37. package/example/android/app/build.gradle +129 -0
  38. package/example/android/app/debug.keystore +0 -0
  39. package/example/android/app/proguard-rules.pro +10 -0
  40. package/example/android/app/src/androidTest/java/com/reactnativetrackerexample/DetoxTest.java +36 -0
  41. package/example/android/app/src/androidTest/java/com/reactnativetrackerexample/DetoxTestAppJUnitRunner.java +21 -0
  42. package/example/android/app/src/debug/AndroidManifest.xml +13 -0
  43. package/example/android/app/src/debug/java/com/reactnativetrackerexample/ReactNativeFlipper.java +75 -0
  44. package/example/android/app/src/main/AndroidManifest.xml +26 -0
  45. package/example/android/app/src/main/java/com/reactnativetrackerexample/MainActivity.java +32 -0
  46. package/example/android/app/src/main/java/com/reactnativetrackerexample/MainApplication.java +62 -0
  47. package/example/android/app/src/main/res/drawable/rn_edit_text_material.xml +36 -0
  48. package/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
  49. package/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png +0 -0
  50. package/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
  51. package/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png +0 -0
  52. package/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
  53. package/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png +0 -0
  54. package/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
  55. package/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png +0 -0
  56. package/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
  57. package/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png +0 -0
  58. package/example/android/app/src/main/res/values/strings.xml +3 -0
  59. package/example/android/app/src/main/res/values/styles.xml +9 -0
  60. package/example/android/app/src/release/java/com/reactnativetrackerexample/ReactNativeFlipper.java +20 -0
  61. package/example/android/build.gradle +31 -0
  62. package/example/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  63. package/example/android/gradle/wrapper/gradle-wrapper.properties +6 -0
  64. package/example/android/gradle.properties +44 -0
  65. package/example/android/gradlew +244 -0
  66. package/example/android/gradlew.bat +92 -0
  67. package/example/android/settings.gradle +4 -0
  68. package/example/app.json +4 -0
  69. package/example/babel.config.js +17 -0
  70. package/example/detox.config.js +92 -0
  71. package/example/e2e/config.json +10 -0
  72. package/example/e2e/emitEvents.e2e.detox.js +108 -0
  73. package/example/e2e/environment.js +23 -0
  74. package/example/e2e/helpers/microCommands.js +153 -0
  75. package/example/e2e/helpers/microHelpers.js +346 -0
  76. package/example/e2e/helpers/microHelpers.test.js +308 -0
  77. package/example/e2e/helpers/schemas.js +62 -0
  78. package/example/e2e/jest.config.js +16 -0
  79. package/example/e2e/setup.js +4 -0
  80. package/example/e2e/testEvents.micro.test.js +300 -0
  81. package/example/index.js +5 -0
  82. package/example/ios/.xcode.env +11 -0
  83. package/example/ios/Podfile +64 -0
  84. package/example/ios/Podfile.lock +737 -0
  85. package/example/ios/ReactNativeTrackerExample/AppDelegate.h +6 -0
  86. package/example/ios/ReactNativeTrackerExample/AppDelegate.mm +26 -0
  87. package/example/ios/ReactNativeTrackerExample/Images.xcassets/AppIcon.appiconset/Contents.json +53 -0
  88. package/example/ios/ReactNativeTrackerExample/Images.xcassets/Contents.json +6 -0
  89. package/example/ios/ReactNativeTrackerExample/Info.plist +55 -0
  90. package/example/ios/ReactNativeTrackerExample/LaunchScreen.storyboard +47 -0
  91. package/example/ios/ReactNativeTrackerExample/main.m +10 -0
  92. package/example/ios/ReactNativeTrackerExample-Bridging-Header.h +3 -0
  93. package/example/ios/ReactNativeTrackerExample.xcodeproj/project.pbxproj +722 -0
  94. package/{ios/RNSnowplowTracker.xcodeproj/xcshareddata/xcschemes/RNSnowplowTracker.xcscheme → example/ios/ReactNativeTrackerExample.xcodeproj/xcshareddata/xcschemes/ReactNativeTrackerExample.xcscheme} +29 -21
  95. package/example/ios/ReactNativeTrackerExample.xcworkspace/contents.xcworkspacedata +10 -0
  96. package/example/ios/ReactNativeTrackerExample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  97. package/example/ios/ReactNativeTrackerExampleTests/Info.plist +24 -0
  98. package/example/ios/ReactNativeTrackerExampleTests/ReactNativeTrackerExampleTests.m +66 -0
  99. package/example/metro.config.js +45 -0
  100. package/example/package.json +54 -0
  101. package/example/react-native.config.js +10 -0
  102. package/example/src/App.js +557 -0
  103. package/example/tsconfig.json +5 -0
  104. package/example/yarn.lock +7379 -0
  105. package/ios/ReactNativeTracker-Bridging-Header.h +2 -0
  106. package/ios/ReactNativeTracker.mm +165 -0
  107. package/ios/ReactNativeTracker.swift +757 -0
  108. package/ios/{RNSnowplowTracker.xcodeproj → ReactNativeTracker.xcodeproj}/project.pbxproj +55 -79
  109. package/ios/Util/ConfigUtils.swift +206 -0
  110. package/ios/Util/TrackerVersion.swift +3 -0
  111. package/ios/Util/Utilities.swift +37 -0
  112. package/lefthook.yml +11 -0
  113. package/lib/commonjs/api.js +475 -0
  114. package/lib/commonjs/api.js.map +1 -0
  115. package/lib/commonjs/configurations.js +209 -0
  116. package/lib/commonjs/configurations.js.map +1 -0
  117. package/lib/commonjs/constants.js +85 -0
  118. package/lib/commonjs/constants.js.map +1 -0
  119. package/lib/commonjs/events.js +256 -0
  120. package/lib/commonjs/events.js.map +1 -0
  121. package/lib/commonjs/index.js +141 -0
  122. package/lib/commonjs/index.js.map +1 -0
  123. package/lib/commonjs/jsCore.js +393 -0
  124. package/lib/commonjs/jsCore.js.map +1 -0
  125. package/lib/commonjs/native.js +29 -0
  126. package/lib/commonjs/native.js.map +1 -0
  127. package/lib/commonjs/subject.js +248 -0
  128. package/lib/commonjs/subject.js.map +1 -0
  129. package/lib/commonjs/tracker.js +221 -0
  130. package/lib/commonjs/tracker.js.map +1 -0
  131. package/lib/commonjs/types.js +2 -0
  132. package/lib/commonjs/types.js.map +1 -0
  133. package/lib/commonjs/utils.js +85 -0
  134. package/lib/commonjs/utils.js.map +1 -0
  135. package/lib/commonjs/webViewInterface.js +79 -0
  136. package/lib/commonjs/webViewInterface.js.map +1 -0
  137. package/lib/module/api.js +439 -0
  138. package/lib/module/api.js.map +1 -0
  139. package/lib/module/configurations.js +197 -0
  140. package/lib/module/configurations.js.map +1 -0
  141. package/lib/module/constants.js +80 -0
  142. package/lib/module/constants.js.map +1 -0
  143. package/lib/module/events.js +240 -0
  144. package/lib/module/events.js.map +1 -0
  145. package/lib/module/index.js +129 -0
  146. package/lib/module/index.js.map +1 -0
  147. package/lib/module/jsCore.js +390 -0
  148. package/lib/module/jsCore.js.map +1 -0
  149. package/lib/module/native.js +25 -0
  150. package/lib/module/native.js.map +1 -0
  151. package/lib/module/subject.js +235 -0
  152. package/lib/module/subject.js.map +1 -0
  153. package/lib/module/tracker.js +209 -0
  154. package/lib/module/tracker.js.map +1 -0
  155. package/lib/module/types.js +2 -0
  156. package/lib/module/types.js.map +1 -0
  157. package/lib/module/utils.js +79 -0
  158. package/lib/module/utils.js.map +1 -0
  159. package/lib/module/webViewInterface.js +75 -0
  160. package/lib/module/webViewInterface.js.map +1 -0
  161. package/lib/typescript/__tests__/api.test.d.ts +2 -0
  162. package/lib/typescript/__tests__/api.test.d.ts.map +1 -0
  163. package/lib/typescript/__tests__/configurations.test.d.ts +2 -0
  164. package/lib/typescript/__tests__/configurations.test.d.ts.map +1 -0
  165. package/lib/typescript/__tests__/events.test.d.ts +2 -0
  166. package/lib/typescript/__tests__/events.test.d.ts.map +1 -0
  167. package/lib/typescript/__tests__/index.test.d.ts +2 -0
  168. package/lib/typescript/__tests__/index.test.d.ts.map +1 -0
  169. package/lib/typescript/__tests__/jsCore.test.d.ts +2 -0
  170. package/lib/typescript/__tests__/jsCore.test.d.ts.map +1 -0
  171. package/lib/typescript/__tests__/utils.test.d.ts +2 -0
  172. package/lib/typescript/__tests__/utils.test.d.ts.map +1 -0
  173. package/lib/typescript/api.d.ts +226 -0
  174. package/lib/typescript/api.d.ts.map +1 -0
  175. package/lib/typescript/configurations.d.ts +73 -0
  176. package/lib/typescript/configurations.d.ts.map +1 -0
  177. package/lib/typescript/constants.d.ts +59 -0
  178. package/lib/typescript/constants.d.ts.map +1 -0
  179. package/lib/typescript/events.d.ts +101 -0
  180. package/lib/typescript/events.d.ts.map +1 -0
  181. package/lib/typescript/index.d.ts +27 -0
  182. package/lib/typescript/index.d.ts.map +1 -0
  183. package/lib/typescript/jsCore.d.ts +140 -0
  184. package/lib/typescript/jsCore.d.ts.map +1 -0
  185. package/lib/typescript/native.d.ts +4 -0
  186. package/lib/typescript/native.d.ts.map +1 -0
  187. package/lib/typescript/subject.d.ts +91 -0
  188. package/lib/typescript/subject.d.ts.map +1 -0
  189. package/lib/typescript/tracker.d.ts +93 -0
  190. package/lib/typescript/tracker.d.ts.map +1 -0
  191. package/{dist/index.d.ts → lib/typescript/types.d.ts} +188 -75
  192. package/lib/typescript/types.d.ts.map +1 -0
  193. package/lib/typescript/utils.d.ts +35 -0
  194. package/lib/typescript/utils.d.ts.map +1 -0
  195. package/lib/typescript/webViewInterface.d.ts +15 -0
  196. package/lib/typescript/webViewInterface.d.ts.map +1 -0
  197. package/package.json +138 -51
  198. package/scripts/bootstrap.js +29 -0
  199. package/snowplow-react-native-tracker.podspec +42 -0
  200. package/src/__mocks__/react-native.js +7 -0
  201. package/src/__tests__/api.test.ts +34 -0
  202. package/src/__tests__/configurations.test.ts +620 -0
  203. package/src/__tests__/events.test.ts +749 -0
  204. package/src/__tests__/index.test.ts +27 -0
  205. package/src/__tests__/jsCore.test.ts +169 -0
  206. package/src/__tests__/utils.test.ts +23 -0
  207. package/src/api.ts +535 -0
  208. package/src/configurations.ts +337 -0
  209. package/src/constants.ts +102 -0
  210. package/src/events.ts +330 -0
  211. package/src/index.ts +189 -0
  212. package/src/jsCore.ts +553 -0
  213. package/src/native.ts +34 -0
  214. package/src/subject.ts +315 -0
  215. package/src/tracker.ts +330 -0
  216. package/src/types.ts +1087 -0
  217. package/src/utils.ts +78 -0
  218. package/src/webViewInterface.ts +105 -0
  219. package/tsconfig.build.json +5 -0
  220. package/tsconfig.json +28 -0
  221. package/turbo.json +34 -0
  222. package/yarn.lock +9333 -0
  223. package/RNSnowplowTracker.podspec +0 -24
  224. package/android/src/main/java/com/snowplowanalytics/react/tracker/RNSnowplowTrackerModule.java +0 -750
  225. package/android/src/main/java/com/snowplowanalytics/react/tracker/RNSnowplowTrackerPackage.java +0 -29
  226. package/android/src/main/java/com/snowplowanalytics/react/util/ConfigUtil.java +0 -351
  227. package/android/src/main/java/com/snowplowanalytics/react/util/EventUtil.java +0 -339
  228. package/android/src/main/java/com/snowplowanalytics/react/util/TrackerVersion.java +0 -7
  229. package/dist/index.js +0 -1650
  230. package/dist/index.js.map +0 -1
  231. package/ios/RNSnowplowTracker.h +0 -34
  232. package/ios/RNSnowplowTracker.m +0 -911
  233. package/ios/Util/NSDictionary+RNSP_TypeMethods.h +0 -33
  234. package/ios/Util/NSDictionary+RNSP_TypeMethods.m +0 -40
  235. package/ios/Util/RNConfigUtils.h +0 -44
  236. package/ios/Util/RNConfigUtils.m +0 -209
  237. package/ios/Util/RNTrackerVersion.h +0 -27
  238. package/ios/Util/RNTrackerVersion.m +0 -27
  239. package/ios/Util/RNUtilities.h +0 -32
  240. package/ios/Util/RNUtilities.m +0 -68
@@ -0,0 +1,475 @@
1
+ /*
2
+ * Copyright (c) 2020-2023 Snowplow Analytics Ltd. All rights reserved.
3
+ *
4
+ * This program is licensed to you under the Apache License Version 2.0,
5
+ * and you may not use this file except in compliance with the Apache License Version 2.0.
6
+ * You may obtain a copy of the Apache License Version 2.0 at http://www.apache.org/licenses/LICENSE-2.0.
7
+ *
8
+ * Unless required by applicable law or agreed to in writing,
9
+ * software distributed under the Apache License Version 2.0 is distributed on an
10
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ * See the Apache License Version 2.0 for the specific language governing permissions and limitations there under.
12
+ */
13
+
14
+ 'use strict';
15
+
16
+ Object.defineProperty(exports, "__esModule", {
17
+ value: true
18
+ });
19
+ exports.addGlobalContexts = addGlobalContexts;
20
+ exports.createTracker = createTracker;
21
+ exports.getBackgroundIndex = getBackgroundIndex;
22
+ exports.getForegroundIndex = getForegroundIndex;
23
+ exports.getIsInBackground = getIsInBackground;
24
+ exports.getSessionId = getSessionId;
25
+ exports.getSessionIndex = getSessionIndex;
26
+ exports.getSessionUserId = getSessionUserId;
27
+ exports.removeAllTrackers = removeAllTrackers;
28
+ exports.removeGlobalContexts = removeGlobalContexts;
29
+ exports.removeTracker = removeTracker;
30
+ exports.setColorDepth = setColorDepth;
31
+ exports.setDomainUserId = setDomainUserId;
32
+ exports.setIpAddress = setIpAddress;
33
+ exports.setLanguage = setLanguage;
34
+ exports.setNetworkUserId = setNetworkUserId;
35
+ exports.setScreenResolution = setScreenResolution;
36
+ exports.setScreenViewport = setScreenViewport;
37
+ exports.setSubjectData = setSubjectData;
38
+ exports.setTimezone = setTimezone;
39
+ exports.setUserId = setUserId;
40
+ exports.setUseragent = setUseragent;
41
+ exports.trackConsentGrantedEvent = trackConsentGrantedEvent;
42
+ exports.trackConsentWithdrawnEvent = trackConsentWithdrawnEvent;
43
+ exports.trackDeepLinkReceivedEvent = trackDeepLinkReceivedEvent;
44
+ exports.trackEcommerceTransactionEvent = trackEcommerceTransactionEvent;
45
+ exports.trackMessageNotificationEvent = trackMessageNotificationEvent;
46
+ exports.trackPageViewEvent = trackPageViewEvent;
47
+ exports.trackScreenViewEvent = trackScreenViewEvent;
48
+ exports.trackSelfDescribingEvent = trackSelfDescribingEvent;
49
+ exports.trackStructuredEvent = trackStructuredEvent;
50
+ exports.trackTimingEvent = trackTimingEvent;
51
+ var _native = require("./native");
52
+ var _configurations = require("./configurations");
53
+ var _constants = require("./constants");
54
+ var tracker = _interopRequireWildcard(require("./tracker"));
55
+ var subject = _interopRequireWildcard(require("./subject"));
56
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
57
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
58
+ /**
59
+ * Create a tracker from specified initial configuration.
60
+ *
61
+ * @param initConfig {Object} - The initial tracker configuration
62
+ * @returns - A promise fullfilled if the tracker is initialized
63
+ */
64
+ function createTracker(initConfig) {
65
+ return (0, _configurations.initValidate)(initConfig).then(() => _native.RNSnowplowTracker.createTracker(initConfig)).catch(error => {
66
+ throw new Error(`${_constants.logMessages.createTracker} ${error.message}.`);
67
+ });
68
+ }
69
+
70
+ /**
71
+ * Removes the tracker with given namespace
72
+ *
73
+ * @param trackerNamespace {string} - The tracker namespace
74
+ * @returns - A boolean promise
75
+ */
76
+ function removeTracker(trackerNamespace) {
77
+ if (typeof trackerNamespace !== 'string') {
78
+ return Promise.reject(new Error(_constants.logMessages.removeTracker));
79
+ }
80
+ return Promise.resolve(_native.RNSnowplowTracker.removeTracker({
81
+ tracker: trackerNamespace
82
+ }));
83
+ }
84
+
85
+ /**
86
+ * Removes all existing trackers
87
+ *
88
+ * @returns - A void promise
89
+ */
90
+ function removeAllTrackers() {
91
+ return Promise.resolve(_native.RNSnowplowTracker.removeAllTrackers());
92
+ }
93
+
94
+ /**
95
+ * Returns a function to track a SelfDescribing event by a tracker
96
+ *
97
+ * @param namespace {string} - The tracker namespace
98
+ * @returns - A function to track a SelfDescribing event
99
+ */
100
+ function trackSelfDescribingEvent(namespace) {
101
+ return function (argmap) {
102
+ let contexts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
103
+ return tracker.trackSelfDescribingEvent(namespace, argmap, contexts);
104
+ };
105
+ }
106
+
107
+ /**
108
+ * Returns a function to track a ScreenView event by a tracker
109
+ *
110
+ * @param namespace {string} - The tracker namespace
111
+ * @returns - A function to track a ScreenView event
112
+ */
113
+ function trackScreenViewEvent(namespace) {
114
+ return function (argmap) {
115
+ let contexts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
116
+ return tracker.trackScreenViewEvent(namespace, argmap, contexts);
117
+ };
118
+ }
119
+
120
+ /**
121
+ * Returns a function to track a Structured event by a tracker
122
+ *
123
+ * @param namespace {string} - The tracker namespace
124
+ * @returns - A function to track a Structured event
125
+ */
126
+ function trackStructuredEvent(namespace) {
127
+ return function (argmap) {
128
+ let contexts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
129
+ return tracker.trackStructuredEvent(namespace, argmap, contexts);
130
+ };
131
+ }
132
+
133
+ /**
134
+ * Returns a function to track a PageView event by a tracker
135
+ *
136
+ * @param namespace {string} - The tracker namespace
137
+ * @returns - A function to track a PageView event
138
+ */
139
+ function trackPageViewEvent(namespace) {
140
+ return function (argmap) {
141
+ let contexts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
142
+ return tracker.trackPageViewEvent(namespace, argmap, contexts);
143
+ };
144
+ }
145
+
146
+ /**
147
+ * Returns a function to track a Timing event by a tracker
148
+ *
149
+ * @param namespace {string} - The tracker namespace
150
+ * @returns - A function to track a Timing event
151
+ */
152
+ function trackTimingEvent(namespace) {
153
+ return function (argmap) {
154
+ let contexts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
155
+ return tracker.trackTimingEvent(namespace, argmap, contexts);
156
+ };
157
+ }
158
+
159
+ /**
160
+ * Returns a function to track a ConsentGranted event by a tracker
161
+ *
162
+ * @param namespace {string} - The tracker namespace
163
+ * @returns - A function to track a ConsentGranted event
164
+ */
165
+ function trackConsentGrantedEvent(namespace) {
166
+ return function (argmap) {
167
+ let contexts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
168
+ return tracker.trackConsentGrantedEvent(namespace, argmap, contexts);
169
+ };
170
+ }
171
+
172
+ /**
173
+ * Returns a function to track a ConsentWithdrawn event by a tracker
174
+ *
175
+ * @param namespace {string} - The tracker namespace
176
+ * @returns - A function to track a ConsentWithdrawn event
177
+ */
178
+ function trackConsentWithdrawnEvent(namespace) {
179
+ return function (argmap) {
180
+ let contexts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
181
+ return tracker.trackConsentWithdrawnEvent(namespace, argmap, contexts);
182
+ };
183
+ }
184
+
185
+ /**
186
+ * Returns a function to track an EcommerceTransaction event by a tracker
187
+ *
188
+ * @param namespace {string} - The tracker namespace
189
+ * @returns - A function to track an EcommerceTransaction event
190
+ */
191
+ function trackEcommerceTransactionEvent(namespace) {
192
+ return function (argmap) {
193
+ let contexts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
194
+ return tracker.trackEcommerceTransactionEvent(namespace, argmap, contexts);
195
+ };
196
+ }
197
+
198
+ /**
199
+ * Returns a function to track an DeepLinkReceived event by a tracker
200
+ *
201
+ * @param namespace {string} - The tracker namespace
202
+ * @returns - A function to track an DeepLinkReceived event
203
+ */
204
+ function trackDeepLinkReceivedEvent(namespace) {
205
+ return function (argmap) {
206
+ let contexts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
207
+ return tracker.trackDeepLinkReceivedEvent(namespace, argmap, contexts);
208
+ };
209
+ }
210
+
211
+ /**
212
+ * Returns a function to track an MessageNotification event by a tracker
213
+ *
214
+ * @param namespace {string} - The tracker namespace
215
+ * @returns - A function to track an MessageNotification event
216
+ */
217
+ function trackMessageNotificationEvent(namespace) {
218
+ return function (argmap) {
219
+ let contexts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
220
+ return tracker.trackMessageNotificationEvent(namespace, argmap, contexts);
221
+ };
222
+ }
223
+
224
+ /**
225
+ * Returns a function to remove global contexts by a tracker
226
+ *
227
+ * @param namespace {string} - The tracker namespace
228
+ * @returns - A function to remove global contexts
229
+ */
230
+ function removeGlobalContexts(namespace) {
231
+ return function (tag) {
232
+ if (typeof tag !== 'string') {
233
+ return Promise.reject(new Error(`${_constants.logMessages.removeGlobalContexts} ${_constants.logMessages.gcTagType}`));
234
+ }
235
+ return Promise.resolve(_native.RNSnowplowTracker.removeGlobalContexts({
236
+ tracker: namespace,
237
+ removeTag: tag
238
+ }));
239
+ };
240
+ }
241
+
242
+ /**
243
+ * Returns a function to add global contexts by a tracker
244
+ *
245
+ * @param namespace {string} - The tracker namespace
246
+ * @returns - A function to add global contexts
247
+ */
248
+ function addGlobalContexts(namespace) {
249
+ return function (gc) {
250
+ if (!(0, _configurations.isValidGC)(gc)) {
251
+ return Promise.reject(new Error(`${_constants.logMessages.addGlobalContexts} ${_constants.logMessages.gcType}`));
252
+ }
253
+ return Promise.resolve(_native.RNSnowplowTracker.addGlobalContexts({
254
+ tracker: namespace,
255
+ addGlobalContext: gc
256
+ }));
257
+ };
258
+ }
259
+
260
+ /**
261
+ * Returns a function to set the subject userId
262
+ *
263
+ * @param namespace {string} - The tracker namespace
264
+ * @returns - A function to set the userId
265
+ */
266
+ function setUserId(namespace) {
267
+ return function (newUid) {
268
+ return subject.setUserId(namespace, newUid);
269
+ };
270
+ }
271
+
272
+ /**
273
+ * Returns a function to set the subject networkUserId
274
+ *
275
+ * @param namespace {string} - The tracker namespace
276
+ * @returns - A function to set the networkUserId
277
+ */
278
+ function setNetworkUserId(namespace) {
279
+ return function (newNuid) {
280
+ return subject.setNetworkUserId(namespace, newNuid);
281
+ };
282
+ }
283
+
284
+ /**
285
+ * Returns a function to set the subject domainUserId
286
+ *
287
+ * @param namespace {string} - The tracker namespace
288
+ * @returns - A function to set the domainUserId
289
+ */
290
+ function setDomainUserId(namespace) {
291
+ return function (newDuid) {
292
+ return subject.setDomainUserId(namespace, newDuid);
293
+ };
294
+ }
295
+
296
+ /**
297
+ * Returns a function to set the subject ipAddress
298
+ *
299
+ * @param namespace {string} - The tracker namespace
300
+ * @returns - A function to set the ipAddress
301
+ */
302
+ function setIpAddress(namespace) {
303
+ return function (newIp) {
304
+ return subject.setIpAddress(namespace, newIp);
305
+ };
306
+ }
307
+
308
+ /**
309
+ * Returns a function to set the subject useragent
310
+ *
311
+ * @param namespace {string} - The tracker namespace
312
+ * @returns - A function to set the useragent
313
+ */
314
+ function setUseragent(namespace) {
315
+ return function (newUagent) {
316
+ return subject.setUseragent(namespace, newUagent);
317
+ };
318
+ }
319
+
320
+ /**
321
+ * Returns a function to set the subject timezone
322
+ *
323
+ * @param namespace {string} - The tracker namespace
324
+ * @returns - A function to set the timezone
325
+ */
326
+ function setTimezone(namespace) {
327
+ return function (newTz) {
328
+ return subject.setTimezone(namespace, newTz);
329
+ };
330
+ }
331
+
332
+ /**
333
+ * Returns a function to set the subject language
334
+ *
335
+ * @param namespace {string} - The tracker namespace
336
+ * @returns - A function to set the language
337
+ */
338
+ function setLanguage(namespace) {
339
+ return function (newLang) {
340
+ return subject.setLanguage(namespace, newLang);
341
+ };
342
+ }
343
+
344
+ /**
345
+ * Returns a function to set the subject screenResolution
346
+ *
347
+ * @param namespace {string} - The tracker namespace
348
+ * @returns - A function to set the screenResolution
349
+ */
350
+ function setScreenResolution(namespace) {
351
+ return function (newRes) {
352
+ return subject.setScreenResolution(namespace, newRes);
353
+ };
354
+ }
355
+
356
+ /**
357
+ * Returns a function to set the subject screenViewport
358
+ *
359
+ * @param namespace {string} - The tracker namespace
360
+ * @returns - A function to set the screenViewport
361
+ */
362
+ function setScreenViewport(namespace) {
363
+ return function (newView) {
364
+ return subject.setScreenViewport(namespace, newView);
365
+ };
366
+ }
367
+
368
+ /**
369
+ * Returns a function to set the subject colorDepth
370
+ *
371
+ * @param namespace {string} - The tracker namespace
372
+ * @returns - A function to set the colorDepth
373
+ */
374
+ function setColorDepth(namespace) {
375
+ return function (newColorD) {
376
+ return subject.setColorDepth(namespace, newColorD);
377
+ };
378
+ }
379
+
380
+ /**
381
+ * Returns a function to set subject data
382
+ *
383
+ * @param namespace {string} - The tracker namespace
384
+ * @returns - A function to set subject data
385
+ */
386
+ function setSubjectData(namespace) {
387
+ return function (config) {
388
+ return subject.setSubjectData(namespace, config);
389
+ };
390
+ }
391
+
392
+ /**
393
+ * Returns a function to get the current session userId
394
+ *
395
+ * @param namespace {string} - The tracker namespace
396
+ * @returns - A function to get the session userId
397
+ */
398
+ function getSessionUserId(namespace) {
399
+ return function () {
400
+ return Promise.resolve(_native.RNSnowplowTracker.getSessionUserId({
401
+ tracker: namespace
402
+ }));
403
+ };
404
+ }
405
+
406
+ /**
407
+ * Returns a function to get the current sessionId
408
+ *
409
+ * @param namespace {string} - The tracker namespace
410
+ * @returns - A function to get the sessionId
411
+ */
412
+ function getSessionId(namespace) {
413
+ return function () {
414
+ return Promise.resolve(_native.RNSnowplowTracker.getSessionId({
415
+ tracker: namespace
416
+ }));
417
+ };
418
+ }
419
+
420
+ /**
421
+ * Returns a function to get the current session index
422
+ *
423
+ * @param namespace {string} - The tracker namespace
424
+ * @returns - A function to get the session index
425
+ */
426
+ function getSessionIndex(namespace) {
427
+ return function () {
428
+ return Promise.resolve(_native.RNSnowplowTracker.getSessionIndex({
429
+ tracker: namespace
430
+ }));
431
+ };
432
+ }
433
+
434
+ /**
435
+ * Returns a function to get whether the app is in background
436
+ *
437
+ * @param namespace {string} - The tracker namespace
438
+ * @returns - A function to get whether the app isInBackground
439
+ */
440
+ function getIsInBackground(namespace) {
441
+ return function () {
442
+ return Promise.resolve(_native.RNSnowplowTracker.getIsInBackground({
443
+ tracker: namespace
444
+ }));
445
+ };
446
+ }
447
+
448
+ /**
449
+ * Returns a function to get the background index
450
+ *
451
+ * @param namespace {string} - The tracker namespace
452
+ * @returns - A function to get the backgroundIndex
453
+ */
454
+ function getBackgroundIndex(namespace) {
455
+ return function () {
456
+ return Promise.resolve(_native.RNSnowplowTracker.getBackgroundIndex({
457
+ tracker: namespace
458
+ }));
459
+ };
460
+ }
461
+
462
+ /**
463
+ * Returns a function to get the foreground index
464
+ *
465
+ * @param namespace {string} - The tracker namespace
466
+ * @returns - A function to get the foregroundIndex
467
+ */
468
+ function getForegroundIndex(namespace) {
469
+ return function () {
470
+ return Promise.resolve(_native.RNSnowplowTracker.getForegroundIndex({
471
+ tracker: namespace
472
+ }));
473
+ };
474
+ }
475
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Object","defineProperty","exports","value","addGlobalContexts","createTracker","getBackgroundIndex","getForegroundIndex","getIsInBackground","getSessionId","getSessionIndex","getSessionUserId","removeAllTrackers","removeGlobalContexts","removeTracker","setColorDepth","setDomainUserId","setIpAddress","setLanguage","setNetworkUserId","setScreenResolution","setScreenViewport","setSubjectData","setTimezone","setUserId","setUseragent","trackConsentGrantedEvent","trackConsentWithdrawnEvent","trackDeepLinkReceivedEvent","trackEcommerceTransactionEvent","trackMessageNotificationEvent","trackPageViewEvent","trackScreenViewEvent","trackSelfDescribingEvent","trackStructuredEvent","trackTimingEvent","_native","require","_configurations","_constants","tracker","_interopRequireWildcard","subject","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","initConfig","initValidate","then","RNSnowplowTracker","catch","error","Error","logMessages","message","trackerNamespace","Promise","reject","resolve","namespace","argmap","contexts","arguments","length","undefined","tag","gcTagType","removeTag","gc","isValidGC","gcType","addGlobalContext","newUid","newNuid","newDuid","newIp","newUagent","newTz","newLang","newRes","newView","newColorD","config"],"sourceRoot":"../../src","sources":["api.ts"],"mappings":"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"}