react-native-clarity 2.3.0 → 3.0.1

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.
@@ -15,11 +15,13 @@ exports.setCustomSessionId = setCustomSessionId;
15
15
  exports.setCustomTag = setCustomTag;
16
16
  exports.setCustomUserId = setCustomUserId;
17
17
  var _reactNative = require("react-native");
18
- const LINKING_ERROR = `The package 'react-native-clarity' doesn't seem to be linked. Make sure: \n\n` +
19
- // Platform.select({ ios: "- You have run 'pod install'\n", default: '' }) + TODO: add back when iOS is supported.
20
- '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
18
+ const LINKING_ERROR = `The package 'react-native-clarity' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
19
+ ios: "- You have run 'pod install --repo-update'\n",
20
+ default: ''
21
+ }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
21
22
  const Clarity = _reactNative.NativeModules.Clarity;
22
23
  const SupportedPlatforms = ['android'];
24
+ let SupportWarningWasShown = false;
23
25
 
24
26
  /**
25
27
  * The configuration that will be used to customize the Clarity behaviour.
@@ -34,13 +36,16 @@ const SupportedPlatforms = ['android'];
34
36
  * @param enableWebViewCapture [OPTIONAL default = true] Allows Clarity to capture the web views DOM content.
35
37
  * @param allowedDomains [OPTIONAL default = ["*"]] The whitelisted domains to allow Clarity to capture their DOM content.
36
38
  * If it contains "*" as an element, all domains will be captured.
39
+ * Note: iOS currently does not support allowedDomains feature.
37
40
  * @param disableOnLowEndDevices [OPTIONAL default = false] Disable Clarity on low-end devices.
38
41
  * @param maximumDailyNetworkUsageInMB [OPTIONAL default = null] Maximum daily network usage for Clarity (null = No limit). When the limit is reached, Clarity will turn on lean mode.
42
+ * Note: iOS currently does not support limiting network usage.
43
+ * @param enableIOS_experimental [OPTIONAL default = false] Experimental flag to enable Clarity on iOS platform.
39
44
  */
40
45
  /**
41
46
  * The level of logging to show in the device logcat stream.
42
47
  */
43
- let LogLevel = /*#__PURE__*/function (LogLevel) {
48
+ let LogLevel = exports.LogLevel = /*#__PURE__*/function (LogLevel) {
44
49
  LogLevel["Verbose"] = "Verbose";
45
50
  LogLevel["Debug"] = "Debug";
46
51
  LogLevel["Info"] = "Info";
@@ -49,15 +54,33 @@ let LogLevel = /*#__PURE__*/function (LogLevel) {
49
54
  LogLevel["None"] = "None";
50
55
  return LogLevel;
51
56
  }({});
57
+ function isClarityUnavailable() {
58
+ if (!SupportedPlatforms.includes(_reactNative.Platform.OS)) {
59
+ let warningMessage = 'Clarity supports ' + SupportedPlatforms.join(', ') + ' only for now.';
60
+ if (_reactNative.Platform.OS === 'ios') {
61
+ warningMessage = `${warningMessage} To enable experimental iOS support, set the 'enableIOS_experimental' config value to true.`;
62
+ }
63
+ if (!SupportWarningWasShown) {
64
+ console.warn(warningMessage);
65
+ SupportWarningWasShown = true;
66
+ }
67
+ return true;
68
+ }
69
+ if (Clarity === null) {
70
+ console.error('Clarity did not initialize properly.', LINKING_ERROR);
71
+ return true;
72
+ }
73
+ return false;
74
+ }
75
+
52
76
  /**
53
77
  * Initializes the Clarity SDK if the API level is supported.
54
78
  * @param projectId [REQUIRED] The Clarity project id to send data to.
55
79
  * @param config [OPTIONAL] The clarity config, if not provided default values are used.
56
- */
57
- exports.LogLevel = LogLevel;
80
+ */
58
81
  function initialize(projectId, config) {
59
- if (typeof projectId !== "string" || !(typeof config === "object" || typeof config === "undefined")) {
60
- throw Error("Invalid Clarity initialization arguments. Please check the docs for assitance.");
82
+ if (typeof projectId !== 'string' || !(typeof config === 'object' || typeof config === 'undefined')) {
83
+ throw Error('Invalid Clarity initialization arguments. Please check the docs for assitance.');
61
84
  }
62
85
 
63
86
  // applying default values
@@ -66,16 +89,15 @@ function initialize(projectId, config) {
66
89
  logLevel = LogLevel.None,
67
90
  allowMeteredNetworkUsage = false,
68
91
  enableWebViewCapture = true,
69
- allowedDomains = ["*"],
92
+ allowedDomains = ['*'],
70
93
  disableOnLowEndDevices = false,
71
- maximumDailyNetworkUsageInMB = null
94
+ maximumDailyNetworkUsageInMB = null,
95
+ enableIOS_experimental = false
72
96
  } = config ?? {};
73
- if (!SupportedPlatforms.includes(_reactNative.Platform.OS)) {
74
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
75
- return;
97
+ if (enableIOS_experimental === true && !SupportedPlatforms.includes('ios')) {
98
+ SupportedPlatforms.push('ios');
76
99
  }
77
- if (Clarity === null) {
78
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
100
+ if (isClarityUnavailable()) {
79
101
  return;
80
102
  }
81
103
 
@@ -89,15 +111,10 @@ function initialize(projectId, config) {
89
111
  * Pauses the Clarity capturing processes until the next resume() is called.
90
112
  */
91
113
  function pause() {
92
- if (!SupportedPlatforms.includes(_reactNative.Platform.OS)) {
93
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
94
- return;
95
- }
96
- if (Clarity === null) {
97
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
98
- return;
114
+ if (isClarityUnavailable()) {
115
+ return Promise.resolve(undefined);
99
116
  }
100
- Clarity.pause();
117
+ return Clarity.pause();
101
118
  }
102
119
 
103
120
  /**
@@ -105,27 +122,17 @@ function pause() {
105
122
  * Note: Clarity starts capturing data right on initialization.
106
123
  */
107
124
  function resume() {
108
- if (!SupportedPlatforms.includes(_reactNative.Platform.OS)) {
109
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
110
- return;
111
- }
112
- if (Clarity === null) {
113
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
114
- return;
125
+ if (isClarityUnavailable()) {
126
+ return Promise.resolve(undefined);
115
127
  }
116
- Clarity.resume();
128
+ return Clarity.resume();
117
129
  }
118
130
 
119
131
  /**
120
132
  * Returns true if Clarity has been paused by the user.
121
133
  */
122
134
  function isPaused() {
123
- if (!SupportedPlatforms.includes(_reactNative.Platform.OS)) {
124
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
125
- return Promise.resolve(undefined);
126
- }
127
- if (Clarity === null) {
128
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
135
+ if (isClarityUnavailable()) {
129
136
  return Promise.resolve(undefined);
130
137
  }
131
138
  return Clarity.isPaused();
@@ -142,15 +149,10 @@ function isPaused() {
142
149
  * @param customUserId The custom user id to set.
143
150
  */
144
151
  function setCustomUserId(customUserId) {
145
- if (!SupportedPlatforms.includes(_reactNative.Platform.OS)) {
146
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
147
- return;
148
- }
149
- if (Clarity === null) {
150
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
151
- return;
152
+ if (isClarityUnavailable()) {
153
+ return Promise.resolve(undefined);
152
154
  }
153
- Clarity.setCustomUserId(customUserId);
155
+ return Clarity.setCustomUserId(customUserId);
154
156
  }
155
157
 
156
158
  /**
@@ -161,15 +163,10 @@ function setCustomUserId(customUserId) {
161
163
  * @param customSessionId The custom session id to set.
162
164
  */
163
165
  function setCustomSessionId(customSessionId) {
164
- if (!SupportedPlatforms.includes(_reactNative.Platform.OS)) {
165
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
166
- return;
167
- }
168
- if (Clarity === null) {
169
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
170
- return;
166
+ if (isClarityUnavailable()) {
167
+ return Promise.resolve(undefined);
171
168
  }
172
- Clarity.setCustomSessionId(customSessionId);
169
+ return Clarity.setCustomSessionId(customSessionId);
173
170
  }
174
171
 
175
172
  /**
@@ -178,15 +175,10 @@ function setCustomSessionId(customSessionId) {
178
175
  * @param value The tag value to set.
179
176
  */
180
177
  function setCustomTag(key, value) {
181
- if (!SupportedPlatforms.includes(_reactNative.Platform.OS)) {
182
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
183
- return;
184
- }
185
- if (Clarity === null) {
186
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
187
- return;
178
+ if (isClarityUnavailable()) {
179
+ return Promise.resolve(undefined);
188
180
  }
189
- Clarity.setCustomTag(key, value);
181
+ return Clarity.setCustomTag(key, value);
190
182
  }
191
183
 
192
184
  /**
@@ -197,15 +189,10 @@ function setCustomTag(key, value) {
197
189
  * @param screenName The current screen name to set.
198
190
  */
199
191
  function setCurrentScreenName(screenName) {
200
- if (!SupportedPlatforms.includes(_reactNative.Platform.OS)) {
201
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
202
- return;
203
- }
204
- if (Clarity === null) {
205
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
206
- return;
192
+ if (isClarityUnavailable()) {
193
+ return Promise.resolve(undefined);
207
194
  }
208
- Clarity.setCurrentScreenName(screenName);
195
+ return Clarity.setCurrentScreenName(screenName);
209
196
  }
210
197
 
211
198
  /**
@@ -214,13 +201,8 @@ function setCurrentScreenName(screenName) {
214
201
  * @returns a promise that resolves to the current session id.
215
202
  */
216
203
  function getCurrentSessionId() {
217
- if (!SupportedPlatforms.includes(_reactNative.Platform.OS)) {
218
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
219
- return Promise.resolve("Undefined");
220
- }
221
- if (Clarity === null) {
222
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
223
- return Promise.resolve("Undefined");
204
+ if (isClarityUnavailable()) {
205
+ return Promise.resolve('Undefined');
224
206
  }
225
207
  return Clarity.getCurrentSessionId();
226
208
  }
@@ -232,13 +214,8 @@ function getCurrentSessionId() {
232
214
  * @returns a promise that resolves to the current session url if there is an active one.
233
215
  */
234
216
  function getCurrentSessionUrl() {
235
- if (!SupportedPlatforms.includes(_reactNative.Platform.OS)) {
236
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
237
- return Promise.resolve("Undefined");
238
- }
239
- if (Clarity === null) {
240
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
241
- return Promise.resolve("Undefined");
217
+ if (isClarityUnavailable()) {
218
+ return Promise.resolve('Undefined');
242
219
  }
243
220
  return Clarity.getCurrentSessionUrl();
244
221
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","LINKING_ERROR","Clarity","NativeModules","SupportedPlatforms","LogLevel","exports","initialize","projectId","config","Error","userId","logLevel","None","allowMeteredNetworkUsage","enableWebViewCapture","allowedDomains","disableOnLowEndDevices","maximumDailyNetworkUsageInMB","includes","Platform","OS","console","warn","join","error","enableDailyNetworkUsageLimit","refinedMaximumDailyNetworkUsageInMB","pause","resume","isPaused","Promise","resolve","undefined","setCustomUserId","customUserId","setCustomSessionId","customSessionId","setCustomTag","key","value","setCurrentScreenName","screenName","getCurrentSessionId","getCurrentSessionUrl"],"sourceRoot":"..\\..\\src","sources":["index.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["_reactNative","require","LINKING_ERROR","Platform","select","ios","default","Clarity","NativeModules","SupportedPlatforms","SupportWarningWasShown","LogLevel","exports","isClarityUnavailable","includes","OS","warningMessage","join","console","warn","error","initialize","projectId","config","Error","userId","logLevel","None","allowMeteredNetworkUsage","enableWebViewCapture","allowedDomains","disableOnLowEndDevices","maximumDailyNetworkUsageInMB","enableIOS_experimental","push","enableDailyNetworkUsageLimit","refinedMaximumDailyNetworkUsageInMB","pause","Promise","resolve","undefined","resume","isPaused","setCustomUserId","customUserId","setCustomSessionId","customSessionId","setCustomTag","key","value","setCurrentScreenName","screenName","getCurrentSessionId","getCurrentSessionUrl"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,9 +1,11 @@
1
1
  import { NativeModules, Platform } from 'react-native';
2
- const LINKING_ERROR = `The package 'react-native-clarity' doesn't seem to be linked. Make sure: \n\n` +
3
- // Platform.select({ ios: "- You have run 'pod install'\n", default: '' }) + TODO: add back when iOS is supported.
4
- '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
2
+ const LINKING_ERROR = `The package 'react-native-clarity' doesn't seem to be linked. Make sure: \n\n` + Platform.select({
3
+ ios: "- You have run 'pod install --repo-update'\n",
4
+ default: ''
5
+ }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
5
6
  const Clarity = NativeModules.Clarity;
6
7
  const SupportedPlatforms = ['android'];
8
+ let SupportWarningWasShown = false;
7
9
 
8
10
  /**
9
11
  * The configuration that will be used to customize the Clarity behaviour.
@@ -18,8 +20,11 @@ const SupportedPlatforms = ['android'];
18
20
  * @param enableWebViewCapture [OPTIONAL default = true] Allows Clarity to capture the web views DOM content.
19
21
  * @param allowedDomains [OPTIONAL default = ["*"]] The whitelisted domains to allow Clarity to capture their DOM content.
20
22
  * If it contains "*" as an element, all domains will be captured.
23
+ * Note: iOS currently does not support allowedDomains feature.
21
24
  * @param disableOnLowEndDevices [OPTIONAL default = false] Disable Clarity on low-end devices.
22
25
  * @param maximumDailyNetworkUsageInMB [OPTIONAL default = null] Maximum daily network usage for Clarity (null = No limit). When the limit is reached, Clarity will turn on lean mode.
26
+ * Note: iOS currently does not support limiting network usage.
27
+ * @param enableIOS_experimental [OPTIONAL default = false] Experimental flag to enable Clarity on iOS platform.
23
28
  */
24
29
 
25
30
  /**
@@ -34,15 +39,33 @@ export let LogLevel = /*#__PURE__*/function (LogLevel) {
34
39
  LogLevel["None"] = "None";
35
40
  return LogLevel;
36
41
  }({});
42
+ function isClarityUnavailable() {
43
+ if (!SupportedPlatforms.includes(Platform.OS)) {
44
+ let warningMessage = 'Clarity supports ' + SupportedPlatforms.join(', ') + ' only for now.';
45
+ if (Platform.OS === 'ios') {
46
+ warningMessage = `${warningMessage} To enable experimental iOS support, set the 'enableIOS_experimental' config value to true.`;
47
+ }
48
+ if (!SupportWarningWasShown) {
49
+ console.warn(warningMessage);
50
+ SupportWarningWasShown = true;
51
+ }
52
+ return true;
53
+ }
54
+ if (Clarity === null) {
55
+ console.error('Clarity did not initialize properly.', LINKING_ERROR);
56
+ return true;
57
+ }
58
+ return false;
59
+ }
37
60
 
38
61
  /**
39
62
  * Initializes the Clarity SDK if the API level is supported.
40
63
  * @param projectId [REQUIRED] The Clarity project id to send data to.
41
64
  * @param config [OPTIONAL] The clarity config, if not provided default values are used.
42
- */
65
+ */
43
66
  export function initialize(projectId, config) {
44
- if (typeof projectId !== "string" || !(typeof config === "object" || typeof config === "undefined")) {
45
- throw Error("Invalid Clarity initialization arguments. Please check the docs for assitance.");
67
+ if (typeof projectId !== 'string' || !(typeof config === 'object' || typeof config === 'undefined')) {
68
+ throw Error('Invalid Clarity initialization arguments. Please check the docs for assitance.');
46
69
  }
47
70
 
48
71
  // applying default values
@@ -51,16 +74,15 @@ export function initialize(projectId, config) {
51
74
  logLevel = LogLevel.None,
52
75
  allowMeteredNetworkUsage = false,
53
76
  enableWebViewCapture = true,
54
- allowedDomains = ["*"],
77
+ allowedDomains = ['*'],
55
78
  disableOnLowEndDevices = false,
56
- maximumDailyNetworkUsageInMB = null
79
+ maximumDailyNetworkUsageInMB = null,
80
+ enableIOS_experimental = false
57
81
  } = config ?? {};
58
- if (!SupportedPlatforms.includes(Platform.OS)) {
59
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
60
- return;
82
+ if (enableIOS_experimental === true && !SupportedPlatforms.includes('ios')) {
83
+ SupportedPlatforms.push('ios');
61
84
  }
62
- if (Clarity === null) {
63
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
85
+ if (isClarityUnavailable()) {
64
86
  return;
65
87
  }
66
88
 
@@ -74,15 +96,10 @@ export function initialize(projectId, config) {
74
96
  * Pauses the Clarity capturing processes until the next resume() is called.
75
97
  */
76
98
  export function pause() {
77
- if (!SupportedPlatforms.includes(Platform.OS)) {
78
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
79
- return;
80
- }
81
- if (Clarity === null) {
82
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
83
- return;
99
+ if (isClarityUnavailable()) {
100
+ return Promise.resolve(undefined);
84
101
  }
85
- Clarity.pause();
102
+ return Clarity.pause();
86
103
  }
87
104
 
88
105
  /**
@@ -90,27 +107,17 @@ export function pause() {
90
107
  * Note: Clarity starts capturing data right on initialization.
91
108
  */
92
109
  export function resume() {
93
- if (!SupportedPlatforms.includes(Platform.OS)) {
94
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
95
- return;
96
- }
97
- if (Clarity === null) {
98
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
99
- return;
110
+ if (isClarityUnavailable()) {
111
+ return Promise.resolve(undefined);
100
112
  }
101
- Clarity.resume();
113
+ return Clarity.resume();
102
114
  }
103
115
 
104
116
  /**
105
117
  * Returns true if Clarity has been paused by the user.
106
118
  */
107
119
  export function isPaused() {
108
- if (!SupportedPlatforms.includes(Platform.OS)) {
109
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
110
- return Promise.resolve(undefined);
111
- }
112
- if (Clarity === null) {
113
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
120
+ if (isClarityUnavailable()) {
114
121
  return Promise.resolve(undefined);
115
122
  }
116
123
  return Clarity.isPaused();
@@ -127,15 +134,10 @@ export function isPaused() {
127
134
  * @param customUserId The custom user id to set.
128
135
  */
129
136
  export function setCustomUserId(customUserId) {
130
- if (!SupportedPlatforms.includes(Platform.OS)) {
131
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
132
- return;
133
- }
134
- if (Clarity === null) {
135
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
136
- return;
137
+ if (isClarityUnavailable()) {
138
+ return Promise.resolve(undefined);
137
139
  }
138
- Clarity.setCustomUserId(customUserId);
140
+ return Clarity.setCustomUserId(customUserId);
139
141
  }
140
142
 
141
143
  /**
@@ -146,15 +148,10 @@ export function setCustomUserId(customUserId) {
146
148
  * @param customSessionId The custom session id to set.
147
149
  */
148
150
  export function setCustomSessionId(customSessionId) {
149
- if (!SupportedPlatforms.includes(Platform.OS)) {
150
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
151
- return;
152
- }
153
- if (Clarity === null) {
154
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
155
- return;
151
+ if (isClarityUnavailable()) {
152
+ return Promise.resolve(undefined);
156
153
  }
157
- Clarity.setCustomSessionId(customSessionId);
154
+ return Clarity.setCustomSessionId(customSessionId);
158
155
  }
159
156
 
160
157
  /**
@@ -163,15 +160,10 @@ export function setCustomSessionId(customSessionId) {
163
160
  * @param value The tag value to set.
164
161
  */
165
162
  export function setCustomTag(key, value) {
166
- if (!SupportedPlatforms.includes(Platform.OS)) {
167
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
168
- return;
169
- }
170
- if (Clarity === null) {
171
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
172
- return;
163
+ if (isClarityUnavailable()) {
164
+ return Promise.resolve(undefined);
173
165
  }
174
- Clarity.setCustomTag(key, value);
166
+ return Clarity.setCustomTag(key, value);
175
167
  }
176
168
 
177
169
  /**
@@ -182,15 +174,10 @@ export function setCustomTag(key, value) {
182
174
  * @param screenName The current screen name to set.
183
175
  */
184
176
  export function setCurrentScreenName(screenName) {
185
- if (!SupportedPlatforms.includes(Platform.OS)) {
186
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
187
- return;
188
- }
189
- if (Clarity === null) {
190
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
191
- return;
177
+ if (isClarityUnavailable()) {
178
+ return Promise.resolve(undefined);
192
179
  }
193
- Clarity.setCurrentScreenName(screenName);
180
+ return Clarity.setCurrentScreenName(screenName);
194
181
  }
195
182
 
196
183
  /**
@@ -199,13 +186,8 @@ export function setCurrentScreenName(screenName) {
199
186
  * @returns a promise that resolves to the current session id.
200
187
  */
201
188
  export function getCurrentSessionId() {
202
- if (!SupportedPlatforms.includes(Platform.OS)) {
203
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
204
- return Promise.resolve("Undefined");
205
- }
206
- if (Clarity === null) {
207
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
208
- return Promise.resolve("Undefined");
189
+ if (isClarityUnavailable()) {
190
+ return Promise.resolve('Undefined');
209
191
  }
210
192
  return Clarity.getCurrentSessionId();
211
193
  }
@@ -217,13 +199,8 @@ export function getCurrentSessionId() {
217
199
  * @returns a promise that resolves to the current session url if there is an active one.
218
200
  */
219
201
  export function getCurrentSessionUrl() {
220
- if (!SupportedPlatforms.includes(Platform.OS)) {
221
- console.warn("Clarity supports " + SupportedPlatforms.join(", ") + " only for now.");
222
- return Promise.resolve("Undefined");
223
- }
224
- if (Clarity === null) {
225
- console.error("Clarity did not initialize properly.", LINKING_ERROR);
226
- return Promise.resolve("Undefined");
202
+ if (isClarityUnavailable()) {
203
+ return Promise.resolve('Undefined');
227
204
  }
228
205
  return Clarity.getCurrentSessionUrl();
229
206
  }
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","Platform","LINKING_ERROR","Clarity","SupportedPlatforms","LogLevel","initialize","projectId","config","Error","userId","logLevel","None","allowMeteredNetworkUsage","enableWebViewCapture","allowedDomains","disableOnLowEndDevices","maximumDailyNetworkUsageInMB","includes","OS","console","warn","join","error","enableDailyNetworkUsageLimit","refinedMaximumDailyNetworkUsageInMB","pause","resume","isPaused","Promise","resolve","undefined","setCustomUserId","customUserId","setCustomSessionId","customSessionId","setCustomTag","key","value","setCurrentScreenName","screenName","getCurrentSessionId","getCurrentSessionUrl"],"sourceRoot":"..\\..\\src","sources":["index.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["NativeModules","Platform","LINKING_ERROR","select","ios","default","Clarity","SupportedPlatforms","SupportWarningWasShown","LogLevel","isClarityUnavailable","includes","OS","warningMessage","join","console","warn","error","initialize","projectId","config","Error","userId","logLevel","None","allowMeteredNetworkUsage","enableWebViewCapture","allowedDomains","disableOnLowEndDevices","maximumDailyNetworkUsageInMB","enableIOS_experimental","push","enableDailyNetworkUsageLimit","refinedMaximumDailyNetworkUsageInMB","pause","Promise","resolve","undefined","resume","isPaused","setCustomUserId","customUserId","setCustomSessionId","customSessionId","setCustomTag","key","value","setCurrentScreenName","screenName","getCurrentSessionId","getCurrentSessionUrl"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}