@react-native-firebase/analytics 23.7.0 → 23.8.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.
- package/CHANGELOG.md +10 -0
- package/dist/commonjs/index.js +38 -0
- package/dist/commonjs/index.js.map +1 -0
- package/dist/commonjs/modular.js +613 -0
- package/dist/commonjs/modular.js.map +1 -0
- package/dist/commonjs/namespaced.js +441 -0
- package/dist/commonjs/namespaced.js.map +1 -0
- package/dist/commonjs/package.json +1 -0
- package/dist/commonjs/struct.js +54 -0
- package/dist/commonjs/struct.js.map +1 -0
- package/dist/commonjs/structs.js +214 -0
- package/dist/commonjs/structs.js.map +1 -0
- package/dist/commonjs/types/analytics.js +79 -0
- package/dist/commonjs/types/analytics.js.map +1 -0
- package/dist/commonjs/types/web.js +2 -0
- package/dist/commonjs/types/web.js.map +1 -0
- package/dist/commonjs/version.js +9 -0
- package/dist/commonjs/version.js.map +1 -0
- package/dist/commonjs/web/RNFBAnalyticsModule.android.js +9 -0
- package/dist/commonjs/web/RNFBAnalyticsModule.android.js.map +1 -0
- package/dist/commonjs/web/RNFBAnalyticsModule.ios.js +9 -0
- package/dist/commonjs/web/RNFBAnalyticsModule.ios.js.map +1 -0
- package/dist/commonjs/web/RNFBAnalyticsModule.js +119 -0
- package/dist/commonjs/web/RNFBAnalyticsModule.js.map +1 -0
- package/dist/commonjs/web/api.js +294 -0
- package/dist/commonjs/web/api.js.map +1 -0
- package/dist/module/index.js +28 -0
- package/dist/module/index.js.map +1 -0
- package/{lib/modular/index.js → dist/module/modular.js} +43 -161
- package/dist/module/modular.js.map +1 -0
- package/dist/module/namespaced.js +438 -0
- package/dist/module/namespaced.js.map +1 -0
- package/dist/module/package.json +1 -0
- package/{lib → dist/module}/struct.js +12 -14
- package/dist/module/struct.js.map +1 -0
- package/dist/module/structs.js +210 -0
- package/dist/module/structs.js.map +1 -0
- package/dist/module/types/analytics.js +75 -0
- package/dist/module/types/analytics.js.map +1 -0
- package/dist/module/types/web.js +2 -0
- package/dist/module/types/web.js.map +1 -0
- package/dist/module/version.js +5 -0
- package/dist/module/version.js.map +1 -0
- package/dist/module/web/RNFBAnalyticsModule.android.js +6 -0
- package/dist/module/web/RNFBAnalyticsModule.android.js.map +1 -0
- package/dist/module/web/RNFBAnalyticsModule.ios.js +6 -0
- package/dist/module/web/RNFBAnalyticsModule.ios.js.map +1 -0
- package/{lib → dist/module}/web/RNFBAnalyticsModule.js +17 -21
- package/dist/module/web/RNFBAnalyticsModule.js.map +1 -0
- package/{lib → dist/module}/web/api.js +34 -77
- package/dist/module/web/api.js.map +1 -0
- package/dist/typescript/commonjs/lib/index.d.ts +5 -0
- package/dist/typescript/commonjs/lib/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/modular.d.ts +476 -0
- package/dist/typescript/commonjs/lib/modular.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/namespaced.d.ts +12 -0
- package/dist/typescript/commonjs/lib/namespaced.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/struct.d.ts +3 -0
- package/dist/typescript/commonjs/lib/struct.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/structs.d.ts +1155 -0
- package/dist/typescript/commonjs/lib/structs.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/types/analytics.d.ts +944 -0
- package/dist/typescript/commonjs/lib/types/analytics.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/types/web.d.ts +36 -0
- package/dist/typescript/commonjs/lib/types/web.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/version.d.ts +2 -0
- package/dist/typescript/commonjs/lib/version.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/web/RNFBAnalyticsModule.android.d.ts +3 -0
- package/dist/typescript/commonjs/lib/web/RNFBAnalyticsModule.android.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/web/RNFBAnalyticsModule.d.ts +9 -0
- package/dist/typescript/commonjs/lib/web/RNFBAnalyticsModule.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/web/RNFBAnalyticsModule.ios.d.ts +3 -0
- package/dist/typescript/commonjs/lib/web/RNFBAnalyticsModule.ios.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/web/api.d.ts +37 -0
- package/dist/typescript/commonjs/lib/web/api.d.ts.map +1 -0
- package/dist/typescript/commonjs/package.json +1 -0
- package/dist/typescript/module/lib/index.d.ts +5 -0
- package/dist/typescript/module/lib/index.d.ts.map +1 -0
- package/dist/typescript/module/lib/modular.d.ts +476 -0
- package/dist/typescript/module/lib/modular.d.ts.map +1 -0
- package/dist/typescript/module/lib/namespaced.d.ts +12 -0
- package/dist/typescript/module/lib/namespaced.d.ts.map +1 -0
- package/dist/typescript/module/lib/struct.d.ts +3 -0
- package/dist/typescript/module/lib/struct.d.ts.map +1 -0
- package/dist/typescript/module/lib/structs.d.ts +1155 -0
- package/dist/typescript/module/lib/structs.d.ts.map +1 -0
- package/dist/typescript/module/lib/types/analytics.d.ts +944 -0
- package/dist/typescript/module/lib/types/analytics.d.ts.map +1 -0
- package/dist/typescript/module/lib/types/web.d.ts +36 -0
- package/dist/typescript/module/lib/types/web.d.ts.map +1 -0
- package/dist/typescript/module/lib/version.d.ts +2 -0
- package/dist/typescript/module/lib/version.d.ts.map +1 -0
- package/dist/typescript/module/lib/web/RNFBAnalyticsModule.android.d.ts +3 -0
- package/dist/typescript/module/lib/web/RNFBAnalyticsModule.android.d.ts.map +1 -0
- package/dist/typescript/module/lib/web/RNFBAnalyticsModule.d.ts +9 -0
- package/dist/typescript/module/lib/web/RNFBAnalyticsModule.d.ts.map +1 -0
- package/dist/typescript/module/lib/web/RNFBAnalyticsModule.ios.d.ts +3 -0
- package/dist/typescript/module/lib/web/RNFBAnalyticsModule.ios.d.ts.map +1 -0
- package/dist/typescript/module/lib/web/api.d.ts +37 -0
- package/dist/typescript/module/lib/web/api.d.ts.map +1 -0
- package/dist/typescript/module/package.json +1 -0
- package/lib/index.ts +73 -0
- package/lib/modular.ts +1026 -0
- package/lib/{index.js → namespaced.ts} +145 -72
- package/lib/struct.ts +61 -0
- package/lib/{structs.js → structs.ts} +3 -3
- package/lib/types/analytics.ts +1078 -0
- package/lib/types/web.ts +56 -0
- package/lib/version.ts +2 -0
- package/lib/web/RNFBAnalyticsModule.android.ts +3 -0
- package/lib/web/RNFBAnalyticsModule.ios.ts +3 -0
- package/lib/web/RNFBAnalyticsModule.ts +135 -0
- package/lib/web/api.ts +366 -0
- package/package.json +54 -7
- package/tsconfig.json +21 -0
- package/lib/index.d.ts +0 -1903
- package/lib/modular/index.d.ts +0 -1267
- package/lib/version.js +0 -2
- package/lib/web/RNFBAnalyticsModule.android.js +0 -2
- package/lib/web/RNFBAnalyticsModule.ios.js +0 -2
|
@@ -0,0 +1,438 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/*
|
|
4
|
+
* Copyright (c) 2016-present Invertase Limited & Contributors
|
|
5
|
+
*
|
|
6
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
* you may not use this library except in compliance with the License.
|
|
8
|
+
* You may obtain a copy of the License at
|
|
9
|
+
*
|
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
*
|
|
12
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
* See the License for the specific language governing permissions and
|
|
16
|
+
* limitations under the License.
|
|
17
|
+
*
|
|
18
|
+
*/
|
|
19
|
+
import { isAlphaNumericUnderscore, isE164PhoneNumber, isIOS, isNull, isNumber, isObject, isOneOf, isString, isUndefined } from '@react-native-firebase/app/lib/common';
|
|
20
|
+
import { createModuleNamespace, FirebaseModule, getFirebaseRoot } from '@react-native-firebase/app/lib/internal';
|
|
21
|
+
|
|
22
|
+
// Internal types are now available through module declarations in app package
|
|
23
|
+
import { setReactNativeModule } from '@react-native-firebase/app/lib/internal/nativeModule';
|
|
24
|
+
import { isBoolean } from '@react-native-firebase/app/lib/common';
|
|
25
|
+
import { validateStruct, validateCompound } from "./struct.js";
|
|
26
|
+
import { RNFBAnalyticsModule } from './web/RNFBAnalyticsModule';
|
|
27
|
+
import { version } from "./version.js";
|
|
28
|
+
import * as structs from "./structs.js";
|
|
29
|
+
const ReservedEventNames = ['ad_activeview', 'ad_click', 'ad_exposure',
|
|
30
|
+
// 'ad_impression', // manual ad_impression logging is allowed, See #6307
|
|
31
|
+
'ad_query', 'ad_reward', 'adunit_exposure', 'app_background', 'app_clear_data',
|
|
32
|
+
// 'app_exception',
|
|
33
|
+
'app_remove', 'app_store_refund', 'app_store_subscription_cancel', 'app_store_subscription_convert', 'app_store_subscription_renew', 'app_update', 'app_upgrade', 'dynamic_link_app_open', 'dynamic_link_app_update', 'dynamic_link_first_open', 'error', 'first_open', 'first_visit', 'in_app_purchase', 'notification_dismiss', 'notification_foreground', 'notification_open', 'notification_receive', 'os_update', 'session_start', 'session_start_with_rollout', 'user_engagement'];
|
|
34
|
+
const statics = {};
|
|
35
|
+
const namespace = 'analytics';
|
|
36
|
+
const nativeModuleName = 'RNFBAnalyticsModule';
|
|
37
|
+
class FirebaseAnalyticsModule extends FirebaseModule {
|
|
38
|
+
logEvent(name, params = {}, options = {
|
|
39
|
+
global: false
|
|
40
|
+
}) {
|
|
41
|
+
if (!isString(name)) {
|
|
42
|
+
throw new Error("firebase.analytics().logEvent(*) 'name' expected a string value.");
|
|
43
|
+
}
|
|
44
|
+
if (!isUndefined(params) && !isObject(params)) {
|
|
45
|
+
throw new Error("firebase.analytics().logEvent(_, *) 'params' expected an object value.");
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
// check name is not a reserved event name
|
|
49
|
+
if (isOneOf(name, ReservedEventNames)) {
|
|
50
|
+
throw new Error(`firebase.analytics().logEvent(*) 'name' the event name '${name}' is reserved and can not be used.`);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
// name format validation
|
|
54
|
+
if (!isAlphaNumericUnderscore(name) || name.length > 40) {
|
|
55
|
+
throw new Error(`firebase.analytics().logEvent(*) 'name' invalid event name '${name}'. Names should contain 1 to 40 alphanumeric characters or underscores.`);
|
|
56
|
+
}
|
|
57
|
+
if (!isUndefined(options)) {
|
|
58
|
+
if (!isObject(options)) {
|
|
59
|
+
throw new Error("firebase.analytics().logEvent(_, _, *) 'options' expected an object value.");
|
|
60
|
+
}
|
|
61
|
+
if (!isUndefined(options.global) && !isBoolean(options.global)) {
|
|
62
|
+
throw new Error("'options.global' property expected a boolean.");
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
return this.native.logEvent(name, params);
|
|
66
|
+
}
|
|
67
|
+
setAnalyticsCollectionEnabled(enabled) {
|
|
68
|
+
if (!isBoolean(enabled)) {
|
|
69
|
+
throw new Error("firebase.analytics().setAnalyticsCollectionEnabled(*) 'enabled' expected a boolean value.");
|
|
70
|
+
}
|
|
71
|
+
return this.native.setAnalyticsCollectionEnabled(enabled);
|
|
72
|
+
}
|
|
73
|
+
setSessionTimeoutDuration(milliseconds = 1800000) {
|
|
74
|
+
if (!isNumber(milliseconds)) {
|
|
75
|
+
throw new Error("firebase.analytics().setSessionTimeoutDuration(*) 'milliseconds' expected a number value.");
|
|
76
|
+
}
|
|
77
|
+
if (milliseconds < 0) {
|
|
78
|
+
throw new Error("firebase.analytics().setSessionTimeoutDuration(*) 'milliseconds' expected a positive number value.");
|
|
79
|
+
}
|
|
80
|
+
return this.native.setSessionTimeoutDuration(milliseconds);
|
|
81
|
+
}
|
|
82
|
+
getAppInstanceId() {
|
|
83
|
+
return this.native.getAppInstanceId();
|
|
84
|
+
}
|
|
85
|
+
getSessionId() {
|
|
86
|
+
return this.native.getSessionId();
|
|
87
|
+
}
|
|
88
|
+
setUserId(id) {
|
|
89
|
+
if (!isNull(id) && !isString(id)) {
|
|
90
|
+
throw new Error("firebase.analytics().setUserId(*) 'id' expected a string value.");
|
|
91
|
+
}
|
|
92
|
+
return this.native.setUserId(id);
|
|
93
|
+
}
|
|
94
|
+
setUserProperty(name, value) {
|
|
95
|
+
if (!isString(name)) {
|
|
96
|
+
throw new Error("firebase.analytics().setUserProperty(*) 'name' expected a string value.");
|
|
97
|
+
}
|
|
98
|
+
if (value !== null && !isString(value)) {
|
|
99
|
+
throw new Error("firebase.analytics().setUserProperty(_, *) 'value' expected a string value.");
|
|
100
|
+
}
|
|
101
|
+
return this.native.setUserProperty(name, value);
|
|
102
|
+
}
|
|
103
|
+
setUserProperties(properties, options = {
|
|
104
|
+
global: false
|
|
105
|
+
}) {
|
|
106
|
+
if (!isObject(properties)) {
|
|
107
|
+
throw new Error("firebase.analytics().setUserProperties(*) 'properties' expected an object of key/value pairs.");
|
|
108
|
+
}
|
|
109
|
+
if (!isUndefined(options)) {
|
|
110
|
+
if (!isObject(options)) {
|
|
111
|
+
throw new Error("firebase.analytics().logEvent(_, _, *) 'options' expected an object value.");
|
|
112
|
+
}
|
|
113
|
+
if (!isUndefined(options.global) && !isBoolean(options.global)) {
|
|
114
|
+
throw new Error("'options.global' property expected a boolean.");
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
const entries = Object.entries(properties);
|
|
118
|
+
for (let i = 0; i < entries.length; i++) {
|
|
119
|
+
const entry = entries[i];
|
|
120
|
+
if (!entry) continue;
|
|
121
|
+
const [key, value] = entry;
|
|
122
|
+
if (!isNull(value) && !isString(value)) {
|
|
123
|
+
throw new Error(`firebase.analytics().setUserProperties(*) 'properties' value for parameter '${key}' is invalid, expected a string.`);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
return this.native.setUserProperties(properties);
|
|
127
|
+
}
|
|
128
|
+
resetAnalyticsData() {
|
|
129
|
+
return this.native.resetAnalyticsData();
|
|
130
|
+
}
|
|
131
|
+
setConsent(consentSettings) {
|
|
132
|
+
if (!isObject(consentSettings)) {
|
|
133
|
+
throw new Error('firebase.analytics().setConsent(*): The supplied arg must be an object of key/values.');
|
|
134
|
+
}
|
|
135
|
+
const entries = Object.entries(consentSettings);
|
|
136
|
+
for (let i = 0; i < entries.length; i++) {
|
|
137
|
+
const entry = entries[i];
|
|
138
|
+
if (!entry) continue;
|
|
139
|
+
const [key, value] = entry;
|
|
140
|
+
if (!isBoolean(value)) {
|
|
141
|
+
throw new Error(`firebase.analytics().setConsent(*) 'consentSettings' value for parameter '${key}' is invalid, expected a boolean.`);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
return this.native.setConsent(consentSettings);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
/** -------------------
|
|
148
|
+
* EVENTS
|
|
149
|
+
* -------------------- */
|
|
150
|
+
logAddPaymentInfo(object) {
|
|
151
|
+
if (!isObject(object)) {
|
|
152
|
+
throw new Error('firebase.analytics().logAddPaymentInfo(*): The supplied arg must be an object of key/values.');
|
|
153
|
+
}
|
|
154
|
+
validateCompound(object, 'value', 'currency', 'firebase.analytics().logAddPaymentInfo(*):');
|
|
155
|
+
return this.logEvent('add_payment_info', validateStruct(object, structs.AddPaymentInfo, 'firebase.analytics().logAddPaymentInfo(*):'));
|
|
156
|
+
}
|
|
157
|
+
logScreenView(object) {
|
|
158
|
+
if (!isObject(object)) {
|
|
159
|
+
throw new Error('firebase.analytics().logScreenView(*): The supplied arg must be an object of key/values.');
|
|
160
|
+
}
|
|
161
|
+
return this.logEvent('screen_view', validateStruct(object, structs.ScreenView, 'firebase.analytics().logScreenView(*):'));
|
|
162
|
+
}
|
|
163
|
+
logAddShippingInfo(object = {}) {
|
|
164
|
+
if (!isObject(object)) {
|
|
165
|
+
throw new Error('firebase.analytics().logAddShippingInfo(*): The supplied arg must be an object of key/values.');
|
|
166
|
+
}
|
|
167
|
+
validateCompound(object, 'value', 'currency', 'firebase.analytics().logAddShippingInfo(*):');
|
|
168
|
+
return this.logEvent('add_shipping_info', validateStruct(object, structs.AddShippingInfo, 'firebase.analytics().logAddShippingInfo(*):'));
|
|
169
|
+
}
|
|
170
|
+
logAddToCart(object = {}) {
|
|
171
|
+
if (!isObject(object)) {
|
|
172
|
+
throw new Error('firebase.analytics().logAddToCart(*): The supplied arg must be an object of key/values.');
|
|
173
|
+
}
|
|
174
|
+
validateCompound(object, 'value', 'currency', 'firebase.analytics().logAddToCart(*):');
|
|
175
|
+
return this.logEvent('add_to_cart', validateStruct(object, structs.AddToCart, 'firebase.analytics().logAddToCart(*):'));
|
|
176
|
+
}
|
|
177
|
+
logAddToWishlist(object = {}) {
|
|
178
|
+
if (!isObject(object)) {
|
|
179
|
+
throw new Error('firebase.analytics().logAddToWishlist(*): The supplied arg must be an object of key/values.');
|
|
180
|
+
}
|
|
181
|
+
validateCompound(object, 'value', 'currency', 'firebase.analytics().logAddToWishlist(*):');
|
|
182
|
+
return this.logEvent('add_to_wishlist', validateStruct(object, structs.AddToWishlist, 'firebase.analytics().logAddToWishlist(*):'));
|
|
183
|
+
}
|
|
184
|
+
logAppOpen() {
|
|
185
|
+
return this.logEvent('app_open');
|
|
186
|
+
}
|
|
187
|
+
logBeginCheckout(object = {}) {
|
|
188
|
+
if (!isObject(object)) {
|
|
189
|
+
throw new Error('firebase.analytics().logBeginCheckout(*): The supplied arg must be an object of key/values.');
|
|
190
|
+
}
|
|
191
|
+
validateCompound(object, 'value', 'currency', 'firebase.analytics().logBeginCheckout(*):');
|
|
192
|
+
return this.logEvent('begin_checkout', validateStruct(object, structs.BeginCheckout, 'firebase.analytics().logBeginCheckout(*):'));
|
|
193
|
+
}
|
|
194
|
+
logCampaignDetails(object) {
|
|
195
|
+
if (!isObject(object)) {
|
|
196
|
+
throw new Error('firebase.analytics().logCampaignDetails(*): The supplied arg must be an object of key/values.');
|
|
197
|
+
}
|
|
198
|
+
return this.logEvent('campaign_details', validateStruct(object, structs.CampaignDetails, 'firebase.analytics().logCampaignDetails(*):'));
|
|
199
|
+
}
|
|
200
|
+
logEarnVirtualCurrency(object) {
|
|
201
|
+
if (!isObject(object)) {
|
|
202
|
+
throw new Error('firebase.analytics().logEarnVirtualCurrency(*): The supplied arg must be an object of key/values.');
|
|
203
|
+
}
|
|
204
|
+
return this.logEvent('earn_virtual_currency', validateStruct(object, structs.EarnVirtualCurrency, 'firebase.analytics().logEarnVirtualCurrency(*):'));
|
|
205
|
+
}
|
|
206
|
+
logGenerateLead(object = {}) {
|
|
207
|
+
if (!isObject(object)) {
|
|
208
|
+
throw new Error('firebase.analytics().logGenerateLead(*): The supplied arg must be an object of key/values.');
|
|
209
|
+
}
|
|
210
|
+
validateCompound(object, 'value', 'currency', 'firebase.analytics().logGenerateLead(*):');
|
|
211
|
+
return this.logEvent('generate_lead', validateStruct(object, structs.GenerateLead, 'firebase.analytics().logGenerateLead(*):'));
|
|
212
|
+
}
|
|
213
|
+
logJoinGroup(object) {
|
|
214
|
+
if (!isObject(object)) {
|
|
215
|
+
throw new Error('firebase.analytics().logJoinGroup(*): The supplied arg must be an object of key/values.');
|
|
216
|
+
}
|
|
217
|
+
return this.logEvent('join_group', validateStruct(object, structs.JoinGroup, 'firebase.analytics().logJoinGroup(*):'));
|
|
218
|
+
}
|
|
219
|
+
logLevelEnd(object) {
|
|
220
|
+
if (!isObject(object)) {
|
|
221
|
+
throw new Error('firebase.analytics().logLevelEnd(*): The supplied arg must be an object of key/values.');
|
|
222
|
+
}
|
|
223
|
+
return this.logEvent('level_end', validateStruct(object, structs.LevelEnd, 'firebase.analytics().logLevelEnd(*):'));
|
|
224
|
+
}
|
|
225
|
+
logLevelStart(object) {
|
|
226
|
+
if (!isObject(object)) {
|
|
227
|
+
throw new Error('firebase.analytics().logLevelStart(*): The supplied arg must be an object of key/values.');
|
|
228
|
+
}
|
|
229
|
+
return this.logEvent('level_start', validateStruct(object, structs.LevelStart, 'firebase.analytics().logLevelStart(*):'));
|
|
230
|
+
}
|
|
231
|
+
logLevelUp(object) {
|
|
232
|
+
if (!isObject(object)) {
|
|
233
|
+
throw new Error('firebase.analytics().logLevelUp(*): The supplied arg must be an object of key/values.');
|
|
234
|
+
}
|
|
235
|
+
return this.logEvent('level_up', validateStruct(object, structs.LevelUp, 'firebase.analytics().logLevelUp(*):'));
|
|
236
|
+
}
|
|
237
|
+
logLogin(object) {
|
|
238
|
+
if (!isObject(object)) {
|
|
239
|
+
throw new Error('firebase.analytics().logLogin(*): The supplied arg must be an object of key/values.');
|
|
240
|
+
}
|
|
241
|
+
return this.logEvent('login', validateStruct(object, structs.Login, 'firebase.analytics().logLogin(*):'));
|
|
242
|
+
}
|
|
243
|
+
logPostScore(object) {
|
|
244
|
+
if (!isObject(object)) {
|
|
245
|
+
throw new Error('firebase.analytics().logPostScore(*): The supplied arg must be an object of key/values.');
|
|
246
|
+
}
|
|
247
|
+
return this.logEvent('post_score', validateStruct(object, structs.PostScore, 'firebase.analytics().logPostScore(*):'));
|
|
248
|
+
}
|
|
249
|
+
logSelectContent(object) {
|
|
250
|
+
if (!isObject(object)) {
|
|
251
|
+
throw new Error('firebase.analytics().logSelectContent(*): The supplied arg must be an object of key/values.');
|
|
252
|
+
}
|
|
253
|
+
return this.logEvent('select_content', validateStruct(object, structs.SelectContent, 'firebase.analytics().logSelectContent(*):'));
|
|
254
|
+
}
|
|
255
|
+
logPurchase(object = {}) {
|
|
256
|
+
if (!isObject(object)) {
|
|
257
|
+
throw new Error('firebase.analytics().logPurchase(*): The supplied arg must be an object of key/values.');
|
|
258
|
+
}
|
|
259
|
+
validateCompound(object, 'value', 'currency', 'firebase.analytics().logPurchase(*):');
|
|
260
|
+
return this.logEvent('purchase', validateStruct(object, structs.Purchase, 'firebase.analytics().logPurchaseEvent(*):'));
|
|
261
|
+
}
|
|
262
|
+
logRefund(object = {}) {
|
|
263
|
+
if (!isObject(object)) {
|
|
264
|
+
throw new Error('firebase.analytics().logRefund(*): The supplied arg must be an object of key/values.');
|
|
265
|
+
}
|
|
266
|
+
validateCompound(object, 'value', 'currency', 'firebase.analytics().logRefund(*):');
|
|
267
|
+
return this.logEvent('refund', validateStruct(object, structs.Refund, 'firebase.analytics().logRefund(*):'));
|
|
268
|
+
}
|
|
269
|
+
logRemoveFromCart(object = {}) {
|
|
270
|
+
if (!isObject(object)) {
|
|
271
|
+
throw new Error('firebase.analytics().logRemoveFromCart(*): The supplied arg must be an object of key/values.');
|
|
272
|
+
}
|
|
273
|
+
validateCompound(object, 'value', 'currency', 'firebase.analytics().logRemoveFromCart(*):');
|
|
274
|
+
return this.logEvent('remove_from_cart', validateStruct(object, structs.RemoveFromCart, 'firebase.analytics().logRemoveFromCart(*):'));
|
|
275
|
+
}
|
|
276
|
+
logSearch(object) {
|
|
277
|
+
if (!isObject(object)) {
|
|
278
|
+
throw new Error('firebase.analytics().logSearch(*): The supplied arg must be an object of key/values.');
|
|
279
|
+
}
|
|
280
|
+
return this.logEvent('search', validateStruct(object, structs.Search, 'firebase.analytics().logSearch(*):'));
|
|
281
|
+
}
|
|
282
|
+
logSelectItem(object) {
|
|
283
|
+
if (!isObject(object)) {
|
|
284
|
+
throw new Error('firebase.analytics().logSelectItem(*): The supplied arg must be an object of key/values.');
|
|
285
|
+
}
|
|
286
|
+
return this.logEvent('select_item', validateStruct(object, structs.SelectItem, 'firebase.analytics().logSelectItem(*):'));
|
|
287
|
+
}
|
|
288
|
+
logSetCheckoutOption(object) {
|
|
289
|
+
if (!isObject(object)) {
|
|
290
|
+
throw new Error('firebase.analytics().logSetCheckoutOption(*): The supplied arg must be an object of key/values.');
|
|
291
|
+
}
|
|
292
|
+
return this.logEvent('set_checkout_option', validateStruct(object, structs.SetCheckoutOption, 'firebase.analytics().logSetCheckoutOption(*):'));
|
|
293
|
+
}
|
|
294
|
+
logSelectPromotion(object) {
|
|
295
|
+
if (!isObject(object)) {
|
|
296
|
+
throw new Error('firebase.analytics().logSelectPromotion(*): The supplied arg must be an object of key/values.');
|
|
297
|
+
}
|
|
298
|
+
return this.logEvent('select_promotion', validateStruct(object, structs.SelectPromotion, 'firebase.analytics().logSelectPromotion(*):'));
|
|
299
|
+
}
|
|
300
|
+
logShare(object) {
|
|
301
|
+
if (!isObject(object)) {
|
|
302
|
+
throw new Error('firebase.analytics().logShare(*): The supplied arg must be an object of key/values.');
|
|
303
|
+
}
|
|
304
|
+
return this.logEvent('share', validateStruct(object, structs.Share, 'firebase.analytics().logShare(*):'));
|
|
305
|
+
}
|
|
306
|
+
logSignUp(object) {
|
|
307
|
+
if (!isObject(object)) {
|
|
308
|
+
throw new Error('firebase.analytics().logSignUp(*): The supplied arg must be an object of key/values.');
|
|
309
|
+
}
|
|
310
|
+
return this.logEvent('sign_up', validateStruct(object, structs.SignUp, 'firebase.analytics().logSignUp(*):'));
|
|
311
|
+
}
|
|
312
|
+
logSpendVirtualCurrency(object) {
|
|
313
|
+
if (!isObject(object)) {
|
|
314
|
+
throw new Error('firebase.analytics().logSpendVirtualCurrency(*): The supplied arg must be an object of key/values.');
|
|
315
|
+
}
|
|
316
|
+
return this.logEvent('spend_virtual_currency', validateStruct(object, structs.SpendVirtualCurrency, 'firebase.analytics().logSpendVirtualCurrency(*):'));
|
|
317
|
+
}
|
|
318
|
+
logTutorialBegin() {
|
|
319
|
+
return this.logEvent('tutorial_begin');
|
|
320
|
+
}
|
|
321
|
+
logTutorialComplete() {
|
|
322
|
+
return this.logEvent('tutorial_complete');
|
|
323
|
+
}
|
|
324
|
+
logUnlockAchievement(object) {
|
|
325
|
+
if (!isObject(object)) {
|
|
326
|
+
throw new Error('firebase.analytics().logUnlockAchievement(*): The supplied arg must be an object of key/values.');
|
|
327
|
+
}
|
|
328
|
+
return this.logEvent('unlock_achievement', validateStruct(object, structs.UnlockAchievement, 'firebase.analytics().logUnlockAchievement(*):'));
|
|
329
|
+
}
|
|
330
|
+
logViewCart(object = {}) {
|
|
331
|
+
if (!isObject(object)) {
|
|
332
|
+
throw new Error('firebase.analytics().logViewCart(*): The supplied arg must be an object of key/values.');
|
|
333
|
+
}
|
|
334
|
+
validateCompound(object, 'value', 'currency', 'firebase.analytics().logViewCart(*):');
|
|
335
|
+
return this.logEvent('view_cart', validateStruct(object, structs.ViewCart, 'firebase.analytics().logViewCart(*):'));
|
|
336
|
+
}
|
|
337
|
+
logViewItem(object = {}) {
|
|
338
|
+
if (!isObject(object)) {
|
|
339
|
+
throw new Error('firebase.analytics().logViewItem(*): The supplied arg must be an object of key/values.');
|
|
340
|
+
}
|
|
341
|
+
validateCompound(object, 'value', 'currency', 'firebase.analytics().logViewItem(*):');
|
|
342
|
+
return this.logEvent('view_item', validateStruct(object, structs.ViewItem, 'firebase.analytics().logViewItem(*):'));
|
|
343
|
+
}
|
|
344
|
+
logViewItemList(object = {}) {
|
|
345
|
+
if (!isObject(object)) {
|
|
346
|
+
throw new Error('firebase.analytics().logViewItemList(*): The supplied arg must be an object of key/values.');
|
|
347
|
+
}
|
|
348
|
+
return this.logEvent('view_item_list', validateStruct(object, structs.ViewItemList, 'firebase.analytics().logViewItemList(*):'));
|
|
349
|
+
}
|
|
350
|
+
logViewPromotion(object = {}) {
|
|
351
|
+
if (!isObject(object)) {
|
|
352
|
+
throw new Error('firebase.analytics().logViewPromotion(*): The supplied arg must be an object of key/values.');
|
|
353
|
+
}
|
|
354
|
+
return this.logEvent('view_promotion', validateStruct(object, structs.ViewPromotion, 'firebase.analytics().logViewPromotion(*):'));
|
|
355
|
+
}
|
|
356
|
+
/**
|
|
357
|
+
* Unsupported in "Enhanced Ecommerce reports":
|
|
358
|
+
* https://firebase.google.com/docs/reference/android/com/google/firebase/analytics/FirebaseAnalytics.Event#public-static-final-string-view_search_results
|
|
359
|
+
*/
|
|
360
|
+
logViewSearchResults(object) {
|
|
361
|
+
if (!isObject(object)) {
|
|
362
|
+
throw new Error('firebase.analytics().logViewSearchResults(*): The supplied arg must be an object of key/values.');
|
|
363
|
+
}
|
|
364
|
+
return this.logEvent('view_search_results', validateStruct(object, structs.ViewSearchResults, 'firebase.analytics().logViewSearchResults(*):'));
|
|
365
|
+
}
|
|
366
|
+
setDefaultEventParameters(params) {
|
|
367
|
+
if (!isObject(params) && !isNull(params) && !isUndefined(params)) {
|
|
368
|
+
throw new Error("firebase.analytics().setDefaultEventParameters(*) 'params' expected an object value when it is defined.");
|
|
369
|
+
}
|
|
370
|
+
return this.native.setDefaultEventParameters(params);
|
|
371
|
+
}
|
|
372
|
+
initiateOnDeviceConversionMeasurementWithEmailAddress(emailAddress) {
|
|
373
|
+
if (!isString(emailAddress)) {
|
|
374
|
+
throw new Error("firebase.analytics().initiateOnDeviceConversionMeasurementWithEmailAddress(*) 'emailAddress' expected a string value.");
|
|
375
|
+
}
|
|
376
|
+
if (!isIOS) {
|
|
377
|
+
return Promise.resolve();
|
|
378
|
+
}
|
|
379
|
+
return this.native.initiateOnDeviceConversionMeasurementWithEmailAddress(emailAddress);
|
|
380
|
+
}
|
|
381
|
+
initiateOnDeviceConversionMeasurementWithHashedEmailAddress(hashedEmailAddress) {
|
|
382
|
+
if (!isString(hashedEmailAddress)) {
|
|
383
|
+
throw new Error("firebase.analytics().initiateOnDeviceConversionMeasurementWithHashedEmailAddress(*) 'hashedEmailAddress' expected a string value.");
|
|
384
|
+
}
|
|
385
|
+
if (!isIOS) {
|
|
386
|
+
return Promise.resolve();
|
|
387
|
+
}
|
|
388
|
+
return this.native.initiateOnDeviceConversionMeasurementWithHashedEmailAddress(hashedEmailAddress);
|
|
389
|
+
}
|
|
390
|
+
initiateOnDeviceConversionMeasurementWithPhoneNumber(phoneNumber) {
|
|
391
|
+
if (!isE164PhoneNumber(phoneNumber)) {
|
|
392
|
+
throw new Error("firebase.analytics().initiateOnDeviceConversionMeasurementWithPhoneNumber(*) 'phoneNumber' expected a string value in E.164 format.");
|
|
393
|
+
}
|
|
394
|
+
if (!isIOS) {
|
|
395
|
+
return Promise.resolve();
|
|
396
|
+
}
|
|
397
|
+
return this.native.initiateOnDeviceConversionMeasurementWithPhoneNumber(phoneNumber);
|
|
398
|
+
}
|
|
399
|
+
initiateOnDeviceConversionMeasurementWithHashedPhoneNumber(hashedPhoneNumber) {
|
|
400
|
+
if (isE164PhoneNumber(hashedPhoneNumber)) {
|
|
401
|
+
throw new Error("firebase.analytics().initiateOnDeviceConversionMeasurementWithHashedPhoneNumber(*) 'hashedPhoneNumber' expected a sha256-hashed value of a phone number in E.164 format.");
|
|
402
|
+
}
|
|
403
|
+
if (!isString(hashedPhoneNumber)) {
|
|
404
|
+
throw new Error("firebase.analytics().initiateOnDeviceConversionMeasurementWithHashedPhoneNumber(*) 'hashedPhoneNumber' expected a string value.");
|
|
405
|
+
}
|
|
406
|
+
if (!isIOS) {
|
|
407
|
+
return Promise.resolve();
|
|
408
|
+
}
|
|
409
|
+
return this.native.initiateOnDeviceConversionMeasurementWithHashedPhoneNumber(hashedPhoneNumber);
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
// import { SDK_VERSION } from '@react-native-firebase/analytics';
|
|
414
|
+
export const SDK_VERSION = version;
|
|
415
|
+
|
|
416
|
+
// import analytics from '@react-native-firebase/analytics';
|
|
417
|
+
// analytics().logEvent(...);
|
|
418
|
+
|
|
419
|
+
// import analytics, { firebase } from '@react-native-firebase/analytics';
|
|
420
|
+
// analytics().logEvent(...);
|
|
421
|
+
// firebase.analytics().logEvent(...);
|
|
422
|
+
|
|
423
|
+
const analyticsNamespace = createModuleNamespace({
|
|
424
|
+
statics,
|
|
425
|
+
version,
|
|
426
|
+
namespace,
|
|
427
|
+
nativeModuleName,
|
|
428
|
+
nativeEvents: false,
|
|
429
|
+
hasMultiAppSupport: false,
|
|
430
|
+
hasCustomUrlOrRegionSupport: false,
|
|
431
|
+
ModuleClass: FirebaseAnalyticsModule
|
|
432
|
+
});
|
|
433
|
+
export default analyticsNamespace;
|
|
434
|
+
|
|
435
|
+
// Register the interop module for non-native platforms.
|
|
436
|
+
setReactNativeModule(nativeModuleName, RNFBAnalyticsModule);
|
|
437
|
+
export const firebase = getFirebaseRoot();
|
|
438
|
+
//# sourceMappingURL=namespaced.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["isAlphaNumericUnderscore","isE164PhoneNumber","isIOS","isNull","isNumber","isObject","isOneOf","isString","isUndefined","createModuleNamespace","FirebaseModule","getFirebaseRoot","setReactNativeModule","isBoolean","validateStruct","validateCompound","RNFBAnalyticsModule","version","structs","ReservedEventNames","statics","namespace","nativeModuleName","FirebaseAnalyticsModule","logEvent","name","params","options","global","Error","length","native","setAnalyticsCollectionEnabled","enabled","setSessionTimeoutDuration","milliseconds","getAppInstanceId","getSessionId","setUserId","id","setUserProperty","value","setUserProperties","properties","entries","Object","i","entry","key","resetAnalyticsData","setConsent","consentSettings","logAddPaymentInfo","object","AddPaymentInfo","logScreenView","ScreenView","logAddShippingInfo","AddShippingInfo","logAddToCart","AddToCart","logAddToWishlist","AddToWishlist","logAppOpen","logBeginCheckout","BeginCheckout","logCampaignDetails","CampaignDetails","logEarnVirtualCurrency","EarnVirtualCurrency","logGenerateLead","GenerateLead","logJoinGroup","JoinGroup","logLevelEnd","LevelEnd","logLevelStart","LevelStart","logLevelUp","LevelUp","logLogin","Login","logPostScore","PostScore","logSelectContent","SelectContent","logPurchase","Purchase","logRefund","Refund","logRemoveFromCart","RemoveFromCart","logSearch","Search","logSelectItem","SelectItem","logSetCheckoutOption","SetCheckoutOption","logSelectPromotion","SelectPromotion","logShare","Share","logSignUp","SignUp","logSpendVirtualCurrency","SpendVirtualCurrency","logTutorialBegin","logTutorialComplete","logUnlockAchievement","UnlockAchievement","logViewCart","ViewCart","logViewItem","ViewItem","logViewItemList","ViewItemList","logViewPromotion","ViewPromotion","logViewSearchResults","ViewSearchResults","setDefaultEventParameters","initiateOnDeviceConversionMeasurementWithEmailAddress","emailAddress","Promise","resolve","initiateOnDeviceConversionMeasurementWithHashedEmailAddress","hashedEmailAddress","initiateOnDeviceConversionMeasurementWithPhoneNumber","phoneNumber","initiateOnDeviceConversionMeasurementWithHashedPhoneNumber","hashedPhoneNumber","SDK_VERSION","analyticsNamespace","nativeEvents","hasMultiAppSupport","hasCustomUrlOrRegionSupport","ModuleClass","firebase"],"sourceRoot":"../../lib","sources":["namespaced.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"module"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
1
3
|
/*
|
|
2
4
|
* Copyright (c) 2016-present Invertase Limited & Contributors
|
|
3
5
|
*
|
|
@@ -16,7 +18,6 @@
|
|
|
16
18
|
|
|
17
19
|
import { isUndefined } from '@react-native-firebase/app/lib/common/validate';
|
|
18
20
|
import { create } from 'superstruct';
|
|
19
|
-
|
|
20
21
|
export const validateStruct = (value = {}, struct, prefix = '') => {
|
|
21
22
|
// skip superstruct create in release for performance reasons
|
|
22
23
|
if (!__DEV__) {
|
|
@@ -25,26 +26,23 @@ export const validateStruct = (value = {}, struct, prefix = '') => {
|
|
|
25
26
|
try {
|
|
26
27
|
return create(value, struct);
|
|
27
28
|
} catch (e) {
|
|
28
|
-
const {
|
|
29
|
-
|
|
29
|
+
const {
|
|
30
|
+
path,
|
|
31
|
+
message
|
|
32
|
+
} = e;
|
|
30
33
|
const key = path[0];
|
|
31
|
-
|
|
32
34
|
if (message === undefined) {
|
|
33
35
|
throw new Error(`${prefix} unknown property '${key}'.`);
|
|
34
36
|
}
|
|
35
|
-
e.message = `${prefix} ${
|
|
36
|
-
|
|
37
|
+
e.message = `${prefix} ${message}`;
|
|
37
38
|
throw e;
|
|
38
39
|
}
|
|
39
40
|
};
|
|
40
|
-
|
|
41
41
|
export const validateCompound = (source = {}, a, b, prefix = '') => {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
throw new Error(
|
|
47
|
-
`${prefix} if you supply the '${a}' parameter, you must also supply the '${b}' parameter.`,
|
|
48
|
-
);
|
|
42
|
+
const sourceA = source[a];
|
|
43
|
+
const sourceB = source[b];
|
|
44
|
+
if (isUndefined(sourceA) && !isUndefined(sourceB) || !isUndefined(sourceA) && isUndefined(sourceB)) {
|
|
45
|
+
throw new Error(`${prefix} if you supply the '${a}' parameter, you must also supply the '${b}' parameter.`);
|
|
49
46
|
}
|
|
50
47
|
};
|
|
48
|
+
//# sourceMappingURL=struct.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["isUndefined","create","validateStruct","value","struct","prefix","__DEV__","e","path","message","key","undefined","Error","validateCompound","source","a","b","sourceA","sourceB"],"sourceRoot":"../../lib","sources":["struct.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,WAAW,QAAQ,gDAAgD;AAC5E,SAASC,MAAM,QAAqB,aAAa;AAEjD,OAAO,MAAMC,cAAc,GAAGA,CAC5BC,KAA0B,GAAG,CAAC,CAAC,EAC/BC,MAAW,EACXC,MAAM,GAAG,EAAE,KACa;EACxB;EACA,IAAI,CAACC,OAAO,EAAE;IACZ,OAAOH,KAAK;EACd;EACA,IAAI;IACF,OAAOF,MAAM,CAACE,KAAK,EAAEC,MAAM,CAAC;EAC9B,CAAC,CAAC,OAAOG,CAAC,EAAE;IACV,MAAM;MAAEC,IAAI;MAAEC;IAAQ,CAAC,GAAGF,CAAgB;IAE1C,MAAMG,GAAG,GAAGF,IAAI,CAAC,CAAC,CAAC;IAEnB,IAAIC,OAAO,KAAKE,SAAS,EAAE;MACzB,MAAM,IAAIC,KAAK,CAAC,GAAGP,MAAM,sBAAsBK,GAAG,IAAI,CAAC;IACzD;IACCH,CAAC,CAAiBE,OAAO,GAAG,GAAGJ,MAAM,IAAII,OAAO,EAAE;IAEnD,MAAMF,CAAC;EACT;AACF,CAAC;AAED,OAAO,MAAMM,gBAAgB,GAAGA,CAC9BC,MAA2B,GAAG,CAAC,CAAC,EAChCC,CAAS,EACTC,CAAS,EACTX,MAAM,GAAG,EAAE,KACF;EACT,MAAMY,OAAO,GAAGH,MAAM,CAACC,CAAC,CAAC;EACzB,MAAMG,OAAO,GAAGJ,MAAM,CAACE,CAAC,CAAC;EACzB,IACGhB,WAAW,CAACiB,OAAO,CAAC,IAAI,CAACjB,WAAW,CAACkB,OAAO,CAAC,IAC7C,CAAClB,WAAW,CAACiB,OAAO,CAAC,IAAIjB,WAAW,CAACkB,OAAO,CAAE,EAC/C;IACA,MAAM,IAAIN,KAAK,CACb,GAAGP,MAAM,uBAAuBU,CAAC,0CAA0CC,CAAC,cAC9E,CAAC;EACH;AACF,CAAC","ignoreList":[]}
|