txlemetry-react-native 4.55.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/LICENSE +353 -0
- package/README.md +13 -0
- package/dist/PostHogContext.d.ts +5 -0
- package/dist/PostHogContext.js +1 -0
- package/dist/PostHogErrorBoundary.d.ts +27 -0
- package/dist/PostHogErrorBoundary.js +1 -0
- package/dist/PostHogMaskView.d.ts +39 -0
- package/dist/PostHogMaskView.js +1 -0
- package/dist/PostHogProvider.d.ts +100 -0
- package/dist/PostHogProvider.js +1 -0
- package/dist/autocapture.d.ts +4 -0
- package/dist/autocapture.js +1 -0
- package/dist/error-tracking/index.d.ts +98 -0
- package/dist/error-tracking/index.js +1 -0
- package/dist/error-tracking/utils.d.ts +5 -0
- package/dist/error-tracking/utils.js +1 -0
- package/dist/frameworks/wix-navigation.d.ts +3 -0
- package/dist/frameworks/wix-navigation.js +1 -0
- package/dist/hooks/useFeatureFlag.d.ts +5 -0
- package/dist/hooks/useFeatureFlag.js +1 -0
- package/dist/hooks/useFeatureFlagResult.d.ts +3 -0
- package/dist/hooks/useFeatureFlagResult.js +1 -0
- package/dist/hooks/useFeatureFlags.d.ts +3 -0
- package/dist/hooks/useFeatureFlags.js +1 -0
- package/dist/hooks/useNavigationTracker.d.ts +6 -0
- package/dist/hooks/useNavigationTracker.js +1 -0
- package/dist/hooks/usePostHog.d.ts +2 -0
- package/dist/hooks/usePostHog.js +1 -0
- package/dist/hooks/utils.d.ts +14 -0
- package/dist/hooks/utils.js +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.js +1 -0
- package/dist/index.txlemetry.d.ts +36 -0
- package/dist/index.txlemetry.js +21 -0
- package/dist/logs-defaults.d.ts +9 -0
- package/dist/logs-defaults.js +1 -0
- package/dist/native-deps.d.ts +4 -0
- package/dist/native-deps.js +1 -0
- package/dist/optional/OptionalAsyncStorage.d.ts +2 -0
- package/dist/optional/OptionalAsyncStorage.js +1 -0
- package/dist/optional/OptionalExpoApplication.d.ts +2 -0
- package/dist/optional/OptionalExpoApplication.js +1 -0
- package/dist/optional/OptionalExpoDevice.d.ts +2 -0
- package/dist/optional/OptionalExpoDevice.js +1 -0
- package/dist/optional/OptionalExpoFileSystem.d.ts +2 -0
- package/dist/optional/OptionalExpoFileSystem.js +1 -0
- package/dist/optional/OptionalExpoFileSystemLegacy.d.ts +2 -0
- package/dist/optional/OptionalExpoFileSystemLegacy.js +1 -0
- package/dist/optional/OptionalExpoLocalization.d.ts +2 -0
- package/dist/optional/OptionalExpoLocalization.js +1 -0
- package/dist/optional/OptionalPlugin.d.ts +20 -0
- package/dist/optional/OptionalPlugin.js +1 -0
- package/dist/optional/OptionalReactNativeDeviceInfo.d.ts +2 -0
- package/dist/optional/OptionalReactNativeDeviceInfo.js +1 -0
- package/dist/optional/OptionalReactNativeLocalize.d.ts +13 -0
- package/dist/optional/OptionalReactNativeLocalize.js +1 -0
- package/dist/optional/OptionalReactNativeNavigation.d.ts +2 -0
- package/dist/optional/OptionalReactNativeNavigation.js +1 -0
- package/dist/optional/OptionalReactNativeNavigationWix.d.ts +2 -0
- package/dist/optional/OptionalReactNativeNavigationWix.js +1 -0
- package/dist/optional/OptionalReactNativeSafeArea.d.ts +2 -0
- package/dist/optional/OptionalReactNativeSafeArea.js +1 -0
- package/dist/optional/OptionalReactNativeSvg.d.ts +2 -0
- package/dist/optional/OptionalReactNativeSvg.js +1 -0
- package/dist/posthog-rn.d.ts +1096 -0
- package/dist/posthog-rn.js +1 -0
- package/dist/storage.d.ts +41 -0
- package/dist/storage.js +1 -0
- package/dist/surveys/PostHogSurveyProvider.d.ts +23 -0
- package/dist/surveys/PostHogSurveyProvider.js +1 -0
- package/dist/surveys/components/BottomSection.d.ts +9 -0
- package/dist/surveys/components/BottomSection.js +1 -0
- package/dist/surveys/components/Cancel.d.ts +5 -0
- package/dist/surveys/components/Cancel.js +1 -0
- package/dist/surveys/components/ConfirmationMessage.d.ts +12 -0
- package/dist/surveys/components/ConfirmationMessage.js +1 -0
- package/dist/surveys/components/QuestionHeader.d.ts +8 -0
- package/dist/surveys/components/QuestionHeader.js +1 -0
- package/dist/surveys/components/QuestionTypes.d.ts +26 -0
- package/dist/surveys/components/QuestionTypes.js +1 -0
- package/dist/surveys/components/SurveyModal.d.ts +11 -0
- package/dist/surveys/components/SurveyModal.js +1 -0
- package/dist/surveys/components/Surveys.d.ts +16 -0
- package/dist/surveys/components/Surveys.js +1 -0
- package/dist/surveys/getActiveMatchingSurveys.d.ts +2 -0
- package/dist/surveys/getActiveMatchingSurveys.js +1 -0
- package/dist/surveys/icons.d.ts +11 -0
- package/dist/surveys/icons.js +1 -0
- package/dist/surveys/index.d.ts +6 -0
- package/dist/surveys/index.js +1 -0
- package/dist/surveys/safeStyleSheet.d.ts +8 -0
- package/dist/surveys/safeStyleSheet.js +1 -0
- package/dist/surveys/survey-translations.d.ts +7 -0
- package/dist/surveys/survey-translations.js +1 -0
- package/dist/surveys/surveys-utils.d.ts +54 -0
- package/dist/surveys/surveys-utils.js +1 -0
- package/dist/surveys/useActivatedSurveys.d.ts +3 -0
- package/dist/surveys/useActivatedSurveys.js +1 -0
- package/dist/surveys/useSurveyStorage.d.ts +8 -0
- package/dist/surveys/useSurveyStorage.js +1 -0
- package/dist/tooling/expoconfig.d.ts +64 -0
- package/dist/tooling/expoconfig.js +1 -0
- package/dist/tooling/metroconfig.d.ts +21 -0
- package/dist/tooling/metroconfig.js +1 -0
- package/dist/tooling/posthogMetroSerializer.d.ts +17 -0
- package/dist/tooling/posthogMetroSerializer.js +1 -0
- package/dist/tooling/utils.d.ts +58 -0
- package/dist/tooling/utils.js +1 -0
- package/dist/tooling/vendor/expo/expoconfig.d.ts +23 -0
- package/dist/tooling/vendor/expo/expoconfig.js +1 -0
- package/dist/tooling/vendor/metro/countLines.d.ts +2 -0
- package/dist/tooling/vendor/metro/countLines.js +1 -0
- package/dist/tooling/vendor/metro/utils.d.ts +22 -0
- package/dist/tooling/vendor/metro/utils.js +1 -0
- package/dist/types.d.ts +205 -0
- package/dist/types.js +1 -0
- package/dist/utils.d.ts +25 -0
- package/dist/utils.js +1 -0
- package/dist/version.d.ts +1 -0
- package/dist/version.js +1 -0
- package/package.json +149 -0
- package/tooling/txlemetry-xcode.sh +222 -0
- package/tooling/txlemetry.gradle +407 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import type { PostHog } from '../posthog-rn';
|
|
2
|
+
import { JsonType, Logger, ErrorTracking as CoreErrorTracking, PostHogEventProperties } from '@txlemetry/core';
|
|
3
|
+
import { Properties } from '@txlemetry/types';
|
|
4
|
+
type LogLevel = 'debug' | 'log' | 'info' | 'warn' | 'error';
|
|
5
|
+
interface AutocaptureOptions {
|
|
6
|
+
uncaughtExceptions?: boolean;
|
|
7
|
+
unhandledRejections?: boolean;
|
|
8
|
+
console?: boolean | LogLevel[];
|
|
9
|
+
/**
|
|
10
|
+
* Enables native iOS/Android crash autocapture through the optional native plugin.
|
|
11
|
+
* Disabled by default. Requires `@txlemetry/react-native-plugin` installed.
|
|
12
|
+
*/
|
|
13
|
+
nativeCrashes?: boolean;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Controls the breadcrumb-style exception steps recorded via `addExceptionStep` and attached
|
|
17
|
+
* to captured exceptions as `$exception_steps`.
|
|
18
|
+
*/
|
|
19
|
+
export interface ExceptionStepsOptions {
|
|
20
|
+
/**
|
|
21
|
+
* Whether exception steps are recorded and attached.
|
|
22
|
+
* @default true
|
|
23
|
+
*/
|
|
24
|
+
enabled?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Total UTF-8 byte budget (~32KB) for the in-memory buffer. Oldest steps are evicted first when exceeded.
|
|
27
|
+
* @default 32768
|
|
28
|
+
*/
|
|
29
|
+
maxBytes?: number;
|
|
30
|
+
}
|
|
31
|
+
export interface ErrorTrackingOptions {
|
|
32
|
+
autocapture?: AutocaptureOptions | boolean;
|
|
33
|
+
exceptionSteps?: ExceptionStepsOptions;
|
|
34
|
+
}
|
|
35
|
+
export declare class ErrorTracking {
|
|
36
|
+
private instance;
|
|
37
|
+
private logger;
|
|
38
|
+
private options;
|
|
39
|
+
private _exceptionStepsConfig;
|
|
40
|
+
private _exceptionStepsBuffer;
|
|
41
|
+
private _nativeForwardingEnabled;
|
|
42
|
+
/**
|
|
43
|
+
* Controls whether autocaptured exceptions are actually sent.
|
|
44
|
+
* When remote config disables error tracking, this is set to false
|
|
45
|
+
* so that installed handlers become no-ops.
|
|
46
|
+
* Defaults to true (don't block locally enabled capture before remote config loads).
|
|
47
|
+
*/
|
|
48
|
+
private _autocaptureEnabled;
|
|
49
|
+
constructor(instance: PostHog, options: ErrorTrackingOptions | undefined, logger: Logger);
|
|
50
|
+
/**
|
|
51
|
+
* Exception-steps config in the native plugin's shape, so the embedded native SDK keeps one
|
|
52
|
+
* logical buffer with the same byte budget and enabled state.
|
|
53
|
+
*/
|
|
54
|
+
getNativePluginExceptionStepsConfig(): ExceptionStepsOptions;
|
|
55
|
+
/**
|
|
56
|
+
* Records a breadcrumb-style exception step in the instance buffer and mirrors it to the embedded
|
|
57
|
+
* native SDK. The `$timestamp` is captured at call time. Invalid messages are ignored with a
|
|
58
|
+
* warning and never throw. The step only reaches native when it was actually buffered.
|
|
59
|
+
*/
|
|
60
|
+
addExceptionStep(message: string, properties?: Properties): void;
|
|
61
|
+
/**
|
|
62
|
+
* Native error tracking initializes asynchronously, so steps recorded before then are buffered
|
|
63
|
+
* only in JS. The host calls this once native is ready to enable forwarding and replay the buffer,
|
|
64
|
+
* so a native crash shortly after startup carries the steps recorded before native was ready.
|
|
65
|
+
*/
|
|
66
|
+
onNativeErrorTrackingReady(): void;
|
|
67
|
+
private forwardExceptionStepToNative;
|
|
68
|
+
/**
|
|
69
|
+
* Returns `properties` with a snapshot of the buffered steps attached as `$exception_steps`,
|
|
70
|
+
* unless the feature is disabled, the caller already provided that key, or the buffer is empty.
|
|
71
|
+
* The buffer is left intact so subsequent exceptions read the same steps.
|
|
72
|
+
*/
|
|
73
|
+
attachExceptionSteps(properties: PostHogEventProperties): PostHogEventProperties;
|
|
74
|
+
/**
|
|
75
|
+
* Snapshot of the buffered steps (oldest first), or an empty array when disabled or empty.
|
|
76
|
+
*/
|
|
77
|
+
getAttachableExceptionSteps(): CoreErrorTracking.ExceptionStep[];
|
|
78
|
+
/**
|
|
79
|
+
* Clears the buffer. Called on SDK close, not on capture or identity changes.
|
|
80
|
+
*/
|
|
81
|
+
clearExceptionSteps(): void;
|
|
82
|
+
/**
|
|
83
|
+
* Called when remote config is loaded.
|
|
84
|
+
* If errorTracking.autocaptureExceptions is explicitly false, autocapture is disabled.
|
|
85
|
+
* If it's true or undefined (not yet loaded / not present), autocapture follows local config.
|
|
86
|
+
*/
|
|
87
|
+
onRemoteConfig(errorTracking: boolean | {
|
|
88
|
+
[key: string]: JsonType;
|
|
89
|
+
} | undefined): void;
|
|
90
|
+
private resolveOptions;
|
|
91
|
+
private resolveAutocaptureOptions;
|
|
92
|
+
private resolveConsoleOptions;
|
|
93
|
+
private autocaptureUncaughtErrors;
|
|
94
|
+
private autocaptureUnhandledRejections;
|
|
95
|
+
private autocaptureConsole;
|
|
96
|
+
private autocapture;
|
|
97
|
+
}
|
|
98
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ErrorTracking=void 0;var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _core=require("@txlemetry/core");var _utils=require("./utils");var _utils2=require("../utils");var _OptionalPlugin=require("../optional/OptionalPlugin");function _createForOfIteratorHelper(r,e){var t="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!t){if(Array.isArray(r)||(t=_unsupportedIterableToArray(r))||e&&r&&"number"==typeof r.length){t&&(r=t);var _n=0,F=function F(){};return{s:F,n:function n(){return _n>=r.length?{done:!0}:{done:!1,value:r[_n++]};},e:function e(r){throw r;},f:F};}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}var o,a=!0,u=!1;return{s:function s(){t=t.call(r);},n:function n(){var r=t.next();return a=r.done,r;},e:function e(r){u=!0,o=r;},f:function f(){try{a||null==t["return"]||t["return"]();}finally{if(u)throw o;}}};}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable;})),t.push.apply(t,o);}return t;}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){(0,_defineProperty2["default"])(e,r,t[r]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));});}return e;}var LogLevelList=['debug','log','info','warn','error'];var ErrorTracking=exports.ErrorTracking=function(){function ErrorTracking(instance){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var logger=arguments.length>2?arguments[2]:undefined;(0,_classCallCheck2["default"])(this,ErrorTracking);this.instance=instance;this._nativeForwardingEnabled=false;this._autocaptureEnabled=true;this.logger=logger.createLogger('[ErrorTracking]');this.options=this.resolveOptions(options);var exceptionSteps=options.exceptionSteps;this._exceptionStepsConfig=_core.ErrorTracking.resolveExceptionStepsConfig(exceptionSteps?{enabled:exceptionSteps.enabled,max_bytes:exceptionSteps.maxBytes}:undefined);this._exceptionStepsBuffer=new _core.ErrorTracking.ExceptionStepsBuffer(this._exceptionStepsConfig);this.autocapture(this.options.autocapture);}return(0,_createClass2["default"])(ErrorTracking,[{key:"getNativePluginExceptionStepsConfig",value:function getNativePluginExceptionStepsConfig(){return{enabled:this._exceptionStepsConfig.enabled,maxBytes:this._exceptionStepsConfig.max_bytes};}},{key:"addExceptionStep",value:function addExceptionStep(message,properties){if(!this._exceptionStepsConfig.enabled){return;}try{if(!(0,_core.isString)(message)||message.trim().length===0){this.logger.warn('Ignoring exception step because message must be a non-empty string');return;}var userProperties=(0,_core.isObject)(properties)?_objectSpread({},properties):{};var _CoreErrorTracking$st=_core.ErrorTracking.stripReservedExceptionStepFields(userProperties),sanitizedProperties=_CoreErrorTracking$st.sanitizedProperties,droppedKeys=_CoreErrorTracking$st.droppedKeys;if(droppedKeys.length>0){this.logger.warn('Ignoring reserved exception step fields',{droppedKeys:droppedKeys});}this._exceptionStepsBuffer.add(_objectSpread((0,_defineProperty2["default"])((0,_defineProperty2["default"])({},_core.ErrorTracking.EXCEPTION_STEP_INTERNAL_FIELDS.MESSAGE,message),_core.ErrorTracking.EXCEPTION_STEP_INTERNAL_FIELDS.TIMESTAMP,new Date().toISOString()),sanitizedProperties));this.forwardExceptionStepToNative(message,properties);}catch(error){this.logger.error('Failed to add exception step. Ignoring breadcrumb.',error);}}},{key:"onNativeErrorTrackingReady",value:function onNativeErrorTrackingReady(){this._nativeForwardingEnabled=true;var _iterator=_createForOfIteratorHelper(this.getAttachableExceptionSteps()),_step;try{for(_iterator.s();!(_step=_iterator.n()).done;){var step=_step.value;this.forwardExceptionStepToNative(step.$message,step);}}catch(err){_iterator.e(err);}finally{_iterator.f();}}},{key:"forwardExceptionStepToNative",value:function forwardExceptionStepToNative(message,properties){var _this=this;if(!this._nativeForwardingEnabled||!(_OptionalPlugin.OptionalReactNativePlugin===null||_OptionalPlugin.OptionalReactNativePlugin===void 0?void 0:_OptionalPlugin.OptionalReactNativePlugin.addExceptionStep)){return;}try{void Promise.resolve(_OptionalPlugin.OptionalReactNativePlugin.addExceptionStep(message,properties))["catch"](function(e){_this.logger.warn("Failed to forward exception step to native: ".concat(e));});}catch(e){this.logger.warn("Failed to forward exception step to native: ".concat(e));}}},{key:"attachExceptionSteps",value:function attachExceptionSteps(properties){if(!this._exceptionStepsConfig.enabled||!(0,_core.isNullish)(properties.$exception_steps)){return properties;}var steps=this.getAttachableExceptionSteps();if(steps.length===0){return properties;}return _objectSpread(_objectSpread({},properties),{},{$exception_steps:steps});}},{key:"getAttachableExceptionSteps",value:function getAttachableExceptionSteps(){if(!this._exceptionStepsConfig.enabled){return[];}try{return this._exceptionStepsBuffer.getAttachable();}catch(error){this.logger.error('Failed to read buffered exception steps.',error);return[];}}},{key:"clearExceptionSteps",value:function clearExceptionSteps(){this._exceptionStepsBuffer.clear();}},{key:"onRemoteConfig",value:function onRemoteConfig(errorTracking){if(errorTracking==null){return;}this._autocaptureEnabled=(0,_utils2.getRemoteConfigBool)(errorTracking,'autocaptureExceptions',false);this.logger.info("Error tracking autocapture ".concat(this._autocaptureEnabled?'enabled':'disabled'," by remote config."));}},{key:"resolveOptions",value:function resolveOptions(options){var autocaptureOptions=this.resolveAutocaptureOptions(options.autocapture);return{autocapture:autocaptureOptions};}},{key:"resolveAutocaptureOptions",value:function resolveAutocaptureOptions(){var autocapture=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(typeof autocapture==='boolean'){return{uncaughtExceptions:autocapture,unhandledRejections:autocapture,console:[]};}return{uncaughtExceptions:!!autocapture.uncaughtExceptions,unhandledRejections:!!autocapture.unhandledRejections,console:this.resolveConsoleOptions(autocapture.console)};}},{key:"resolveConsoleOptions",value:function resolveConsoleOptions(){var console=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(typeof console==='boolean'){return console?['error']:[];}return Array.isArray(console)?console.filter(function(level){return LogLevelList.includes(level);}):[];}},{key:"autocaptureUncaughtErrors",value:function autocaptureUncaughtErrors(){var _this2=this;var onUncaughtException=function onUncaughtException(error,isFatal){if(!_this2._autocaptureEnabled){return;}if((0,_core.isPostHogFetchNetworkError)(error)){return;}var hint={mechanism:{type:'onuncaughtexception',handled:false}};var additionalProperties={};if(isFatal){additionalProperties['$exception_level']='fatal';}_this2.instance.captureException(error,additionalProperties,hint);if(isFatal){void _this2.instance.flush()["catch"](function(){_this2.logger.critical('Failed to flush events');});}};try{(0,_utils.trackUncaughtExceptions)(onUncaughtException);}catch(err){this.logger.warn('Failed to track uncaught exceptions: ',err);}}},{key:"autocaptureUnhandledRejections",value:function autocaptureUnhandledRejections(){var _this3=this;var onUnhandledRejection=function onUnhandledRejection(error){if(!_this3._autocaptureEnabled){return;}if((0,_core.isPostHogFetchNetworkError)(error)){return;}var hint={mechanism:{type:'onunhandledrejection',handled:false}};_this3.instance.captureException(error,{},hint);};try{(0,_utils.trackUnhandledRejections)(onUnhandledRejection);}catch(err){this.logger.warn('Failed to track unhandled rejections: ',err);}}},{key:"autocaptureConsole",value:function autocaptureConsole(levels){var _this4=this;var onConsole=function onConsole(level){return function(error,isFatal,syntheticException){if(!_this4._autocaptureEnabled){return;}var hint={mechanism:{type:'onconsole',handled:true},syntheticException:syntheticException};var additionalProperties={$exception_level:level};_this4.instance.captureException(error,additionalProperties,hint);};};try{var _iterator2=_createForOfIteratorHelper(levels),_step2;try{for(_iterator2.s();!(_step2=_iterator2.n()).done;){var level=_step2.value;(0,_utils.trackConsole)(level,onConsole(level));}}catch(err){_iterator2.e(err);}finally{_iterator2.f();}}catch(err){this.logger.warn('Failed to track console errors: ',err);}}},{key:"autocapture",value:function autocapture(autocaptureOptions){if(autocaptureOptions.uncaughtExceptions===true){this.autocaptureUncaughtErrors();}if(autocaptureOptions.unhandledRejections===true){this.autocaptureUnhandledRejections();}if(autocaptureOptions.console.length>0){this.autocaptureConsole(autocaptureOptions.console);}}}]);}();
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
type ExceptionHook = (error: unknown, isFatal: boolean, syntheticException?: Error) => void;
|
|
2
|
+
export declare function trackUnhandledRejections(tracker: ExceptionHook): void;
|
|
3
|
+
export declare function trackUncaughtExceptions(tracker: ExceptionHook): void;
|
|
4
|
+
export declare function trackConsole(level: string, tracker: ExceptionHook): void;
|
|
5
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.trackConsole=trackConsole;exports.trackUncaughtExceptions=trackUncaughtExceptions;exports.trackUnhandledRejections=trackUnhandledRejections;var _utils=require("../utils");function trackUnhandledRejections(tracker){var _a,_b,_c;if((0,_utils.isHermes)()&&((_a=_utils.GLOBAL_OBJ===null||_utils.GLOBAL_OBJ===void 0?void 0:_utils.GLOBAL_OBJ.HermesInternal)===null||_a===void 0?void 0:_a.enablePromiseRejectionTracker)&&((_c=(_b=_utils.GLOBAL_OBJ===null||_utils.GLOBAL_OBJ===void 0?void 0:_utils.GLOBAL_OBJ.HermesInternal)===null||_b===void 0?void 0:_b.hasPromise)===null||_c===void 0?void 0:_c.call(_b))){_utils.GLOBAL_OBJ.HermesInternal.enablePromiseRejectionTracker({allRejections:true,onUnhandled:function onUnhandled(_,error){return tracker(error,false);},onHandled:function onHandled(){}});}else if((0,_utils.isWeb)()){addWebUnhandledRejectionListener(tracker);}else{throw new Error('Promise rejection tracking is only supported on Web and Hermes runtime');}}function trackUncaughtExceptions(tracker){var _a,_b;if((_utils.GLOBAL_OBJ===null||_utils.GLOBAL_OBJ===void 0?void 0:_utils.GLOBAL_OBJ.ErrorUtils)&&((_a=_utils.GLOBAL_OBJ.ErrorUtils)===null||_a===void 0?void 0:_a.setGlobalHandler)&&((_b=_utils.GLOBAL_OBJ.ErrorUtils)===null||_b===void 0?void 0:_b.getGlobalHandler)){var globalHandler=ErrorUtils.getGlobalHandler();ErrorUtils.setGlobalHandler(function(error,isFatal){tracker(error,isFatal!==null&&isFatal!==void 0?isFatal:false);globalHandler===null||globalHandler===void 0?void 0:globalHandler(error,isFatal);});}else{throw new Error('ErrorUtils globalHandlers are not defined');}}function trackConsole(level,tracker){var con=console;if(!con){throw new Error('console not available, cannot wrap console.error');}var originalMethod=con[level];con[level]=function(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}var message=args.join(' ');var error=args.find(function(arg){return arg instanceof Error;});var syntheticException=new Error('Synthetic Txlemetry Error');tracker(error!==null&&error!==void 0?error:message,false,syntheticException);return originalMethod===null||originalMethod===void 0?void 0:originalMethod.apply(void 0,args);};}function addWebUnhandledRejectionListener(tracker){var _oldUnhandledRejectionHandler=_utils.GLOBAL_OBJ.onunhandledrejection;_utils.GLOBAL_OBJ.onunhandledrejection=function(event){tracker(event,false);if(_oldUnhandledRejectionHandler){_oldUnhandledRejectionHandler.apply(_utils.GLOBAL_OBJ,[event]);}};}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.withReactNativeNavigation=void 0;var _OptionalReactNativeNavigationWix=require("../optional/OptionalReactNativeNavigationWix");var withReactNativeNavigation=exports.withReactNativeNavigation=function withReactNativeNavigation(posthog){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};if(!_OptionalReactNativeNavigationWix.OptionalReactNativeNavigationWix){return false;}var Navigation=_OptionalReactNativeNavigationWix.OptionalReactNativeNavigationWix.Navigation;Navigation.events().registerComponentDidAppearListener(function(_ref){var componentName=_ref.componentName,passProps=_ref.passProps;var _a,_b,_c,_d,_e;if(!((_a=options.captureScreens)!==null&&_a!==void 0?_a:true)){return;}var currentRouteName=((_c=(_b=options===null||options===void 0?void 0:options.navigation)===null||_b===void 0?void 0:_b.routeToName)===null||_c===void 0?void 0:_c.call(_b,componentName,passProps||{}))||componentName||'Unknown';if(currentRouteName){var properties=(_e=(_d=options===null||options===void 0?void 0:options.navigation)===null||_d===void 0?void 0:_d.routeToProperties)===null||_e===void 0?void 0:_e.call(_d,currentRouteName,passProps||{});posthog.screen(currentRouteName,properties);}});return true;};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { JsonType, FeatureFlagValue } from '@txlemetry/core';
|
|
2
|
+
import { PostHog } from '../posthog-rn';
|
|
3
|
+
export declare function useFeatureFlag(flag: string, client?: PostHog): FeatureFlagValue | undefined;
|
|
4
|
+
export type FeatureFlagWithPayload = [FeatureFlagValue | undefined, JsonType | undefined];
|
|
5
|
+
export declare function useFeatureFlagWithPayload(flag: string, client?: PostHog): FeatureFlagWithPayload;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.useFeatureFlag=useFeatureFlag;exports.useFeatureFlagWithPayload=useFeatureFlagWithPayload;var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _react=require("react");var _utils=require("./utils");function useFeatureFlag(flag,client){var posthog=(0,_utils.useOverridablePostHog)(client,'useFeatureFlag');var _useState=(0,_react.useState)(posthog===null||posthog===void 0?void 0:posthog.getFeatureFlag(flag)),_useState2=(0,_slicedToArray2["default"])(_useState,2),featureFlag=_useState2[0],setFeatureFlag=_useState2[1];(0,_react.useEffect)(function(){setFeatureFlag(posthog===null||posthog===void 0?void 0:posthog.getFeatureFlag(flag));return posthog===null||posthog===void 0?void 0:posthog.onFeatureFlags(function(){setFeatureFlag(posthog.getFeatureFlag(flag));});},[posthog,flag]);return featureFlag;}function useFeatureFlagWithPayload(flag,client){var posthog=(0,_utils.useOverridablePostHog)(client,'useFeatureFlagWithPayload');var _useState3=(0,_react.useState)([undefined,undefined]),_useState4=(0,_slicedToArray2["default"])(_useState3,2),featureFlag=_useState4[0],setFeatureFlag=_useState4[1];(0,_react.useEffect)(function(){var _a;setFeatureFlag([posthog===null||posthog===void 0?void 0:posthog.getFeatureFlag(flag),(_a=posthog===null||posthog===void 0?void 0:posthog.getFeatureFlagResult(flag,{sendEvent:false}))===null||_a===void 0?void 0:_a.payload]);return posthog===null||posthog===void 0?void 0:posthog.onFeatureFlags(function(){var _a;setFeatureFlag([posthog.getFeatureFlag(flag),(_a=posthog.getFeatureFlagResult(flag,{sendEvent:false}))===null||_a===void 0?void 0:_a.payload]);});},[posthog,flag]);return featureFlag;}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.useFeatureFlagResult=useFeatureFlagResult;var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _react=require("react");var _utils=require("./utils");function useFeatureFlagResult(flag,client){var posthog=(0,_utils.useOverridablePostHog)(client,'useFeatureFlagResult');var _useState=(0,_react.useState)(posthog===null||posthog===void 0?void 0:posthog.getFeatureFlagResult(flag)),_useState2=(0,_slicedToArray2["default"])(_useState,2),result=_useState2[0],setResult=_useState2[1];(0,_react.useEffect)(function(){setResult(posthog===null||posthog===void 0?void 0:posthog.getFeatureFlagResult(flag));return posthog===null||posthog===void 0?void 0:posthog.onFeatureFlags(function(){setResult(posthog.getFeatureFlagResult(flag));});},[posthog,flag]);return result;}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.useFeatureFlags=useFeatureFlags;var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _react=require("react");var _utils=require("./utils");function useFeatureFlags(client){var posthog=(0,_utils.useOverridablePostHog)(client,'useFeatureFlags');var _useState=(0,_react.useState)(posthog===null||posthog===void 0?void 0:posthog.getFeatureFlags()),_useState2=(0,_slicedToArray2["default"])(_useState,2),featureFlags=_useState2[0],setFeatureFlags=_useState2[1];(0,_react.useEffect)(function(){setFeatureFlags(posthog===null||posthog===void 0?void 0:posthog.getFeatureFlags());return posthog===null||posthog===void 0?void 0:posthog.onFeatureFlags(function(flags){setFeatureFlags(flags);});},[posthog]);return featureFlags;}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { PostHog } from '../posthog-rn';
|
|
2
|
+
import { PostHogAutocaptureNavigationTrackerOptions } from '../types';
|
|
3
|
+
import { PostHogNavigationRef } from '../types';
|
|
4
|
+
declare function _useNavigationTracker(options?: PostHogAutocaptureNavigationTrackerOptions, navigationRef?: PostHogNavigationRef, client?: PostHog): void;
|
|
5
|
+
export declare const useNavigationTracker: typeof _useNavigationTracker;
|
|
6
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.useNavigationTracker=void 0;var _react=require("react");var _OptionalReactNativeNavigation=require("../optional/OptionalReactNativeNavigation");var _utils=require("./utils");function _useNavigationTrackerDisabled(){return;}function _useNavigationTracker(options,navigationRef,client){var posthog=(0,_utils.useOverridablePostHog)(client,'useNavigationTracker');if(!_OptionalReactNativeNavigation.OptionalReactNativeNavigation){throw new Error('No OptionalReactNativeNavigation');}var routes=undefined;var navigation=navigationRef;try{routes=_OptionalReactNativeNavigation.OptionalReactNativeNavigation.useNavigationState(function(state){return state===null||state===void 0?void 0:state.routes;});}catch(error){console.error('useNavigationState error',error);}try{if(!navigation){navigation=_OptionalReactNativeNavigation.OptionalReactNativeNavigation.useNavigation();}}catch(error){console.error('useNavigation error',error);return;}var trackRoute=(0,_react.useCallback)(function(){var _a,_b,_c;if(!navigation||!posthog){return;}var currentNavigation=navigation;if(navigation.current){currentNavigation=navigation.current;}var currentRoute=undefined;try{var isReady=false;try{isReady=currentNavigation.isReady();}catch(error){isReady=true;}if(!isReady){return;}currentRoute=currentNavigation.getCurrentRoute();}catch(error){return;}if(!currentRoute){return;}var _currentRoute=currentRoute,state=_currentRoute.state;var _currentRoute2=currentRoute,name=_currentRoute2.name,params=_currentRoute2.params;if((_a=state===null||state===void 0?void 0:state.routes)===null||_a===void 0?void 0:_a.length){var route=state.routes[state.routes.length-1];name=route.name;params=route.params;}var currentRouteName=((_b=options===null||options===void 0?void 0:options.routeToName)===null||_b===void 0?void 0:_b.call(options,name,params))||name||'Unknown';if(currentRouteName){var properties=(_c=options===null||options===void 0?void 0:options.routeToProperties)===null||_c===void 0?void 0:_c.call(options,currentRouteName,params);posthog.screen(currentRouteName,properties);}},[navigation,options,posthog]);(0,_react.useEffect)(function(){if(!routes){setTimeout(trackRoute,1);return;}trackRoute();},[routes,trackRoute]);}var useNavigationTracker=exports.useNavigationTracker=_OptionalReactNativeNavigation.OptionalReactNativeNavigation?_useNavigationTracker:_useNavigationTrackerDisabled;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.usePostHog=void 0;var _react=_interopRequireDefault(require("react"));var _PostHogContext=require("../PostHogContext");var _utils=require("./utils");var usePostHog=exports.usePostHog=function usePostHog(){var _React$useContext=_react["default"].useContext(_PostHogContext.PostHogContext),client=_React$useContext.client;(0,_utils.warnIfNoClient)(client,'usePostHog');return client;};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { PostHog } from '../posthog-rn';
|
|
2
|
+
/**
|
|
3
|
+
* Log an error if the PostHog client is not available. Warns once per unique caller to avoid console spam.
|
|
4
|
+
* @internal
|
|
5
|
+
*/
|
|
6
|
+
export declare function warnIfNoClient(client: PostHog | undefined, caller: string): void;
|
|
7
|
+
/** @internal Exported for testing only. */
|
|
8
|
+
export declare function resetWarnedCallers(): void;
|
|
9
|
+
/**
|
|
10
|
+
* Returns the first available PostHog client from arguments or context, correctly typed. Logs an error if no
|
|
11
|
+
* client is found. This is used internally by hooks that accept an optional client parameter.
|
|
12
|
+
* @internal
|
|
13
|
+
*/
|
|
14
|
+
export declare const useOverridablePostHog: (client: PostHog | undefined, caller: string) => PostHog | undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.resetWarnedCallers=resetWarnedCallers;exports.useOverridablePostHog=void 0;exports.warnIfNoClient=warnIfNoClient;var _react=require("react");var _PostHogContext=require("../PostHogContext");var warnedCallers=new Set();function warnIfNoClient(client,caller){if(!client&&!warnedCallers.has(caller)){warnedCallers.add(caller);console.error("".concat(caller," was called without a Txlemetry client. Wrap your app with <TxlemetryProvider> or pass a client directly. See https://txlemetry.com/docs/libraries/react-native?#with-the-posthogprovider"));}}function resetWarnedCallers(){warnedCallers.clear();}var useOverridablePostHog=exports.useOverridablePostHog=function useOverridablePostHog(client,caller){var _useContext=(0,_react.useContext)(_PostHogContext.PostHogContext),contextClient=_useContext.client;var posthog=client!==null&&client!==void 0?client:contextClient;warnIfNoClient(posthog,caller);return posthog;};
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { PostHog } from './posthog-rn';
|
|
2
|
+
export default PostHog;
|
|
3
|
+
export * from './posthog-rn';
|
|
4
|
+
export * from './hooks/useNavigationTracker';
|
|
5
|
+
export * from './hooks/useFeatureFlags';
|
|
6
|
+
export * from './hooks/useFeatureFlag';
|
|
7
|
+
export * from './hooks/useFeatureFlagResult';
|
|
8
|
+
export * from './hooks/usePostHog';
|
|
9
|
+
export * from './PostHogMaskView';
|
|
10
|
+
export * from './PostHogProvider';
|
|
11
|
+
export * from './PostHogErrorBoundary';
|
|
12
|
+
export * from './types';
|
|
13
|
+
export * from './surveys';
|
|
14
|
+
export type { BeforeSendLogFn, CaptureLogOptions, CaptureLogger, LogAttributes, LogAttributeValue, LogSeverityLevel, PostHogLogsConfig, } from '@txlemetry/core';
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});var _exportNames={};exports["default"]=void 0;var _posthogRn=require("./posthog-rn");Object.keys(_posthogRn).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_posthogRn[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _posthogRn[key];}});});var _useNavigationTracker=require("./hooks/useNavigationTracker");Object.keys(_useNavigationTracker).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_useNavigationTracker[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _useNavigationTracker[key];}});});var _useFeatureFlags=require("./hooks/useFeatureFlags");Object.keys(_useFeatureFlags).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_useFeatureFlags[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _useFeatureFlags[key];}});});var _useFeatureFlag=require("./hooks/useFeatureFlag");Object.keys(_useFeatureFlag).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_useFeatureFlag[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _useFeatureFlag[key];}});});var _useFeatureFlagResult=require("./hooks/useFeatureFlagResult");Object.keys(_useFeatureFlagResult).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_useFeatureFlagResult[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _useFeatureFlagResult[key];}});});var _usePostHog=require("./hooks/usePostHog");Object.keys(_usePostHog).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_usePostHog[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _usePostHog[key];}});});var _PostHogMaskView=require("./PostHogMaskView");Object.keys(_PostHogMaskView).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_PostHogMaskView[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _PostHogMaskView[key];}});});var _PostHogProvider=require("./PostHogProvider");Object.keys(_PostHogProvider).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_PostHogProvider[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _PostHogProvider[key];}});});var _PostHogErrorBoundary=require("./PostHogErrorBoundary");Object.keys(_PostHogErrorBoundary).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_PostHogErrorBoundary[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _PostHogErrorBoundary[key];}});});var _types=require("./types");Object.keys(_types).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_types[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _types[key];}});});var _surveys=require("./surveys");Object.keys(_surveys).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_surveys[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _surveys[key];}});});var _default=exports["default"]=_posthogRn.PostHog;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { PostHog as Txlemetry } from './posthog-rn'
|
|
2
|
+
|
|
3
|
+
export default Txlemetry
|
|
4
|
+
export { PostHog as Txlemetry, PostHogPersistedProperty as TxlemetryPersistedProperty } from './posthog-rn'
|
|
5
|
+
export { useNavigationTracker } from './hooks/useNavigationTracker'
|
|
6
|
+
export { useFeatureFlags } from './hooks/useFeatureFlags'
|
|
7
|
+
export { useFeatureFlag, useFeatureFlagWithPayload } from './hooks/useFeatureFlag'
|
|
8
|
+
export { useFeatureFlagResult } from './hooks/useFeatureFlagResult'
|
|
9
|
+
export { usePostHog as useTxlemetry } from './hooks/usePostHog'
|
|
10
|
+
export { PostHogMaskView as TxlemetryMaskView } from './PostHogMaskView'
|
|
11
|
+
export { PostHogProvider as TxlemetryProvider } from './PostHogProvider'
|
|
12
|
+
export { PostHogErrorBoundary as TxlemetryErrorBoundary } from './PostHogErrorBoundary'
|
|
13
|
+
export { PostHogSurveyProvider as TxlemetrySurveyProvider, Questions, SurveyModal } from './surveys'
|
|
14
|
+
export type { FeatureFlagWithPayload } from './hooks/useFeatureFlag'
|
|
15
|
+
export type { PostHogOptions as TxlemetryOptions } from './posthog-rn'
|
|
16
|
+
export type { PostHogProviderProps as TxlemetryProviderProps } from './PostHogProvider'
|
|
17
|
+
export type { PostHogErrorBoundaryFallbackProps as TxlemetryErrorBoundaryFallbackProps, PostHogErrorBoundaryProps as TxlemetryErrorBoundaryProps } from './PostHogErrorBoundary'
|
|
18
|
+
export type { PostHogMaskViewProps as TxlemetryMaskViewProps } from './PostHogMaskView'
|
|
19
|
+
export type { PostHogSurveyProviderProps as TxlemetrySurveyProviderProps, SurveyModalProps } from './surveys'
|
|
20
|
+
export type {
|
|
21
|
+
PostHogAutocaptureNavigationTrackerOptions as TxlemetryAutocaptureNavigationTrackerOptions,
|
|
22
|
+
PostHogAutocaptureOptions as TxlemetryAutocaptureOptions,
|
|
23
|
+
PostHogCustomAppProperties as TxlemetryCustomAppProperties,
|
|
24
|
+
PostHogCustomStorage as TxlemetryCustomStorage,
|
|
25
|
+
PostHogNavigationRef as TxlemetryNavigationRef,
|
|
26
|
+
PostHogSessionReplayConfig as TxlemetrySessionReplayConfig,
|
|
27
|
+
} from './types'
|
|
28
|
+
export type {
|
|
29
|
+
BeforeSendLogFn,
|
|
30
|
+
CaptureLogOptions,
|
|
31
|
+
CaptureLogger,
|
|
32
|
+
LogAttributes,
|
|
33
|
+
LogAttributeValue,
|
|
34
|
+
LogSeverityLevel,
|
|
35
|
+
PostHogLogsConfig as TxlemetryLogsConfig,
|
|
36
|
+
} from '@txlemetry/core'
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
'use strict'
|
|
2
|
+
|
|
3
|
+
const sdk = require('./index')
|
|
4
|
+
|
|
5
|
+
module.exports = {
|
|
6
|
+
default: sdk.PostHog,
|
|
7
|
+
Txlemetry: sdk.PostHog,
|
|
8
|
+
TxlemetryErrorBoundary: sdk.PostHogErrorBoundary,
|
|
9
|
+
TxlemetryMaskView: sdk.PostHogMaskView,
|
|
10
|
+
TxlemetryPersistedProperty: sdk.PostHogPersistedProperty,
|
|
11
|
+
TxlemetryProvider: sdk.PostHogProvider,
|
|
12
|
+
TxlemetrySurveyProvider: sdk.PostHogSurveyProvider,
|
|
13
|
+
Questions: sdk.Questions,
|
|
14
|
+
SurveyModal: sdk.SurveyModal,
|
|
15
|
+
useFeatureFlag: sdk.useFeatureFlag,
|
|
16
|
+
useFeatureFlagResult: sdk.useFeatureFlagResult,
|
|
17
|
+
useFeatureFlagWithPayload: sdk.useFeatureFlagWithPayload,
|
|
18
|
+
useFeatureFlags: sdk.useFeatureFlags,
|
|
19
|
+
useNavigationTracker: sdk.useNavigationTracker,
|
|
20
|
+
useTxlemetry: sdk.usePostHog,
|
|
21
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { PostHogLogsConfig, ResolvedPostHogLogsConfig } from '@txlemetry/core';
|
|
2
|
+
export declare const DEFAULT_FLUSH_INTERVAL_MS = 10000;
|
|
3
|
+
export declare const DEFAULT_RATE_CAP_WINDOW_MS = 10000;
|
|
4
|
+
export declare const DEFAULT_MAX_BUFFER_SIZE = 100;
|
|
5
|
+
export declare const DEFAULT_MAX_LOGS_PER_INTERVAL = 500;
|
|
6
|
+
export declare const DEFAULT_MAX_BATCH_RECORDS_PER_POST = 50;
|
|
7
|
+
export declare const DEFAULT_BACKGROUND_FLUSH_BUDGET_MS = 25000;
|
|
8
|
+
export declare const DEFAULT_TERMINATION_FLUSH_BUDGET_MS = 2000;
|
|
9
|
+
export declare function resolveLogsConfig(config: PostHogLogsConfig | undefined): ResolvedPostHogLogsConfig;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.DEFAULT_TERMINATION_FLUSH_BUDGET_MS=exports.DEFAULT_RATE_CAP_WINDOW_MS=exports.DEFAULT_MAX_LOGS_PER_INTERVAL=exports.DEFAULT_MAX_BUFFER_SIZE=exports.DEFAULT_MAX_BATCH_RECORDS_PER_POST=exports.DEFAULT_FLUSH_INTERVAL_MS=exports.DEFAULT_BACKGROUND_FLUSH_BUDGET_MS=void 0;exports.resolveLogsConfig=resolveLogsConfig;var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _reactNative=require("react-native");var _utils=require("./utils");var _excluded=["rateCap"];function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable;})),t.push.apply(t,o);}return t;}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){(0,_defineProperty2["default"])(e,r,t[r]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));});}return e;}var DEFAULT_FLUSH_INTERVAL_MS=exports.DEFAULT_FLUSH_INTERVAL_MS=10000;var DEFAULT_RATE_CAP_WINDOW_MS=exports.DEFAULT_RATE_CAP_WINDOW_MS=10000;var DEFAULT_MAX_BUFFER_SIZE=exports.DEFAULT_MAX_BUFFER_SIZE=100;var DEFAULT_MAX_LOGS_PER_INTERVAL=exports.DEFAULT_MAX_LOGS_PER_INTERVAL=500;var DEFAULT_MAX_BATCH_RECORDS_PER_POST=exports.DEFAULT_MAX_BATCH_RECORDS_PER_POST=50;var DEFAULT_BACKGROUND_FLUSH_BUDGET_MS=exports.DEFAULT_BACKGROUND_FLUSH_BUDGET_MS=25000;var DEFAULT_TERMINATION_FLUSH_BUDGET_MS=exports.DEFAULT_TERMINATION_FLUSH_BUDGET_MS=2000;function getPlatformVersion(){try{return(_reactNative.Platform===null||_reactNative.Platform===void 0?void 0:_reactNative.Platform.Version)!==undefined?String(_reactNative.Platform.Version):undefined;}catch(_a){return undefined;}}function defaultResourceAttributes(){var osName=(0,_utils.getPlatformOS)();var osVersion=getPlatformVersion();return _objectSpread(_objectSpread({},osName?{'os.name':osName}:{}),osVersion?{'os.version':osVersion}:{});}function resolveLogsConfig(config){var _a,_b,_c,_d,_e,_f,_g;var _ref=config!==null&&config!==void 0?config:{},_rateCap=_ref.rateCap,rest=(0,_objectWithoutProperties2["default"])(_ref,_excluded);return _objectSpread(_objectSpread({},rest),{},{maxBufferSize:(_a=config===null||config===void 0?void 0:config.maxBufferSize)!==null&&_a!==void 0?_a:DEFAULT_MAX_BUFFER_SIZE,flushIntervalMs:(_b=config===null||config===void 0?void 0:config.flushIntervalMs)!==null&&_b!==void 0?_b:DEFAULT_FLUSH_INTERVAL_MS,maxBatchRecordsPerPost:(_c=config===null||config===void 0?void 0:config.maxBatchRecordsPerPost)!==null&&_c!==void 0?_c:DEFAULT_MAX_BATCH_RECORDS_PER_POST,rateCapWindowMs:(_e=(_d=config===null||config===void 0?void 0:config.rateCap)===null||_d===void 0?void 0:_d.windowMs)!==null&&_e!==void 0?_e:DEFAULT_RATE_CAP_WINDOW_MS,maxLogsPerInterval:(_g=(_f=config===null||config===void 0?void 0:config.rateCap)===null||_f===void 0?void 0:_f.maxLogs)!==null&&_g!==void 0?_g:DEFAULT_MAX_LOGS_PER_INTERVAL,backgroundFlushBudgetMs:DEFAULT_BACKGROUND_FLUSH_BUDGET_MS,terminationFlushBudgetMs:DEFAULT_TERMINATION_FLUSH_BUDGET_MS,resourceAttributes:_objectSpread(_objectSpread({},defaultResourceAttributes()),config===null||config===void 0?void 0:config.resourceAttributes)});}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { PostHogCustomAppProperties, PostHogCustomStorage } from './types';
|
|
2
|
+
export declare const currentDeviceType: string;
|
|
3
|
+
export declare const getAppProperties: () => PostHogCustomAppProperties;
|
|
4
|
+
export declare const buildOptimisticAsyncStorage: () => PostHogCustomStorage | undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.getAppProperties=exports.currentDeviceType=exports.buildOptimisticAsyncStorage=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _OptionalAsyncStorage=require("./optional/OptionalAsyncStorage");var _utils=require("./utils");var _OptionalExpoApplication=require("./optional/OptionalExpoApplication");var _OptionalExpoDevice=require("./optional/OptionalExpoDevice");var _OptionalExpoFileSystem=require("./optional/OptionalExpoFileSystem");var _OptionalExpoLocalization=require("./optional/OptionalExpoLocalization");var _OptionalReactNativeDeviceInfo=require("./optional/OptionalReactNativeDeviceInfo");var _OptionalReactNativeLocalize=require("./optional/OptionalReactNativeLocalize");var _OptionalExpoFileSystemLegacy=require("./optional/OptionalExpoFileSystemLegacy");var _core=require("@txlemetry/core");var getDeviceType=function getDeviceType(){var _a,_b,_c;var deviceType='Mobile';if((0,_utils.isMacOS)()||(0,_utils.isWindows)()){deviceType='Desktop';}else if((0,_utils.isWeb)()){var ua=typeof navigator!=='undefined'&&navigator.userAgent?navigator.userAgent:'';var nav=typeof navigator!=='undefined'?navigator:undefined;var win=typeof globalThis.window!=='undefined'?globalThis.window:undefined;deviceType=(0,_core.detectDeviceType)(ua,{userAgentDataPlatform:(_a=nav===null||nav===void 0?void 0:nav.userAgentData)===null||_a===void 0?void 0:_a.platform,maxTouchPoints:nav===null||nav===void 0?void 0:nav.maxTouchPoints,screenWidth:(_b=win===null||win===void 0?void 0:win.screen)===null||_b===void 0?void 0:_b.width,screenHeight:(_c=win===null||win===void 0?void 0:win.screen)===null||_c===void 0?void 0:_c.height,devicePixelRatio:win===null||win===void 0?void 0:win.devicePixelRatio});}return deviceType;};var currentDeviceType=exports.currentDeviceType=getDeviceType();var getAppProperties=exports.getAppProperties=function getAppProperties(){var _a,_b;var properties={$device_type:currentDeviceType};if(_OptionalExpoApplication.OptionalExpoApplication){properties.$app_build=_OptionalExpoApplication.OptionalExpoApplication.nativeBuildVersion;properties.$app_name=_OptionalExpoApplication.OptionalExpoApplication.applicationName;properties.$app_namespace=_OptionalExpoApplication.OptionalExpoApplication.applicationId;properties.$app_version=_OptionalExpoApplication.OptionalExpoApplication.nativeApplicationVersion;}else if(_OptionalReactNativeDeviceInfo.OptionalReactNativeDeviceInfo){properties.$app_build=returnPropertyIfNotUnknown(_OptionalReactNativeDeviceInfo.OptionalReactNativeDeviceInfo.getBuildNumber());properties.$app_name=returnPropertyIfNotUnknown(_OptionalReactNativeDeviceInfo.OptionalReactNativeDeviceInfo.getApplicationName());properties.$app_namespace=returnPropertyIfNotUnknown(_OptionalReactNativeDeviceInfo.OptionalReactNativeDeviceInfo.getBundleId());properties.$app_version=returnPropertyIfNotUnknown(_OptionalReactNativeDeviceInfo.OptionalReactNativeDeviceInfo.getVersion());}if(_OptionalExpoDevice.OptionalExpoDevice){properties.$device_manufacturer=_OptionalExpoDevice.OptionalExpoDevice.manufacturer;properties.$device_name=_OptionalExpoDevice.OptionalExpoDevice.modelName;if((0,_utils.getPlatformOS)()==='android'){properties.$os_name='Android';}else{properties.$os_name=_OptionalExpoDevice.OptionalExpoDevice.osName;}properties.$os_version=_OptionalExpoDevice.OptionalExpoDevice.osVersion;properties.$is_emulator=!_OptionalExpoDevice.OptionalExpoDevice.isDevice;}else if(_OptionalReactNativeDeviceInfo.OptionalReactNativeDeviceInfo){properties.$device_manufacturer=returnPropertyIfNotUnknown(_OptionalReactNativeDeviceInfo.OptionalReactNativeDeviceInfo.getManufacturerSync());properties.$device_name=returnPropertyIfNotUnknown(_OptionalReactNativeDeviceInfo.OptionalReactNativeDeviceInfo.getModel());properties.$os_name=returnPropertyIfNotUnknown(_OptionalReactNativeDeviceInfo.OptionalReactNativeDeviceInfo.getSystemName());properties.$os_version=returnPropertyIfNotUnknown(_OptionalReactNativeDeviceInfo.OptionalReactNativeDeviceInfo.getSystemVersion());properties.$is_emulator=_OptionalReactNativeDeviceInfo.OptionalReactNativeDeviceInfo.isEmulatorSync();}if(_OptionalExpoLocalization.OptionalExpoLocalization){var optionalExpoLocalization=_OptionalExpoLocalization.OptionalExpoLocalization;var locale=optionalExpoLocalization.locale;if(!locale&&optionalExpoLocalization.getLocales){locale=(_a=optionalExpoLocalization.getLocales()[0])===null||_a===void 0?void 0:_a.languageTag;}if(locale){properties.$locale=locale;}var timezone=optionalExpoLocalization.timezone;if(!timezone&&optionalExpoLocalization.getCalendars){timezone=(_b=optionalExpoLocalization.getCalendars()[0])===null||_b===void 0?void 0:_b.timeZone;}if(timezone){properties.$timezone=timezone;}}else if(_OptionalReactNativeLocalize.OptionalReactNativeLocalize){var localesFn=_OptionalReactNativeLocalize.OptionalReactNativeLocalize.getLocales;if(localesFn){var locales=localesFn();if(locales&&locales.length>0){var languageTag=locales[0].languageTag;if(languageTag){properties.$locale=languageTag;}}}var timezoneFn=_OptionalReactNativeLocalize.OptionalReactNativeLocalize.getTimeZone;if(timezoneFn){var _timezone=timezoneFn();if(_timezone){properties.$timezone=_timezone;}}}return properties;};var returnPropertyIfNotUnknown=function returnPropertyIfNotUnknown(value){if(value!=='unknown'){return value;}return null;};var buildLegacyStorage=function buildLegacyStorage(filesystem){return{getItem:function getItem(key){return(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(){var uri,stringContent,_t;return _regenerator["default"].wrap(function(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;uri=(filesystem.documentDirectory||'')+key;_context.next=1;return filesystem.readAsStringAsync(uri);case 1:stringContent=_context.sent;return _context.abrupt("return",stringContent);case 2:_context.prev=2;_t=_context["catch"](0);return _context.abrupt("return",null);case 3:case"end":return _context.stop();}},_callee,null,[[0,2]]);}))();},setItem:function setItem(key,value){return(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(){var uri;return _regenerator["default"].wrap(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:uri=(filesystem.documentDirectory||'')+key;_context2.next=1;return filesystem.writeAsStringAsync(uri,value);case 1:case"end":return _context2.stop();}},_callee2);}))();}};};var buildOptimisticAsyncStorage=exports.buildOptimisticAsyncStorage=function buildOptimisticAsyncStorage(){if((0,_utils.isWeb)()&&typeof(_utils.GLOBAL_OBJ===null||_utils.GLOBAL_OBJ===void 0?void 0:_utils.GLOBAL_OBJ.window)==='undefined'){return undefined;}var supportedPlatform=!(0,_utils.isWeb)()&&!(0,_utils.isMacOS)();if(supportedPlatform){if(_OptionalExpoFileSystem.OptionalExpoFileSystem){var filesystem=_OptionalExpoFileSystem.OptionalExpoFileSystem;if(filesystem.Paths&&filesystem.File){return{getItem:function getItem(key){return(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee3(){var file,stringContent,_t2;return _regenerator["default"].wrap(function(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.prev=0;file=new filesystem.File(filesystem.Paths.document,key);_context3.next=1;return file.text();case 1:stringContent=_context3.sent;return _context3.abrupt("return",stringContent);case 2:_context3.prev=2;_t2=_context3["catch"](0);return _context3.abrupt("return",null);case 3:case"end":return _context3.stop();}},_callee3,null,[[0,2]]);}))();},setItem:function setItem(key,value){return(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee4(){var file;return _regenerator["default"].wrap(function(_context4){while(1)switch(_context4.prev=_context4.next){case 0:file=new filesystem.File(filesystem.Paths.document,key);_context4.next=1;return file.write(value);case 1:case"end":return _context4.stop();}},_callee4);}))();}};}}var legacyModule=_OptionalExpoFileSystemLegacy.OptionalExpoFileSystemLegacy||_OptionalExpoFileSystem.OptionalExpoFileSystem;try{if(legacyModule&&typeof legacyModule.readAsStringAsync==='function'){return buildLegacyStorage(legacyModule);}}catch(e){}}if(_OptionalAsyncStorage.OptionalAsyncStorage){return _OptionalAsyncStorage.OptionalAsyncStorage;}throw new Error('PostHog: No storage available. Please install expo-file-system or react-native-async-storage OR implement a custom storage provider.');};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.OptionalAsyncStorage=void 0;var OptionalAsyncStorage=exports.OptionalAsyncStorage=undefined;try{exports.OptionalAsyncStorage=OptionalAsyncStorage=require('@react-native-async-storage/async-storage')["default"];}catch(e){}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.OptionalExpoApplication=void 0;var _reactNative=require("react-native");var OptionalExpoApplication=exports.OptionalExpoApplication=undefined;try{exports.OptionalExpoApplication=OptionalExpoApplication=_reactNative.Platform.select({macos:undefined,"default":require('expo-application')});}catch(e){}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.OptionalExpoDevice=void 0;var _reactNative=require("react-native");var OptionalExpoDevice=exports.OptionalExpoDevice=undefined;try{exports.OptionalExpoDevice=OptionalExpoDevice=_reactNative.Platform.select({macos:undefined,"default":require('expo-device')});}catch(e){}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.OptionalExpoFileSystem=void 0;var _reactNative=require("react-native");var OptionalExpoFileSystem=exports.OptionalExpoFileSystem=undefined;try{exports.OptionalExpoFileSystem=OptionalExpoFileSystem=_reactNative.Platform.select({macos:undefined,web:undefined,"default":require('expo-file-system')});}catch(e){}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.OptionalExpoFileSystemLegacy=void 0;var _reactNative=require("react-native");var OptionalExpoFileSystemLegacy=exports.OptionalExpoFileSystemLegacy=undefined;try{exports.OptionalExpoFileSystemLegacy=OptionalExpoFileSystemLegacy=_reactNative.Platform.select({macos:undefined,web:undefined,"default":require('expo-file-system/legacy')});}catch(e){}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.OptionalExpoLocalization=void 0;var _reactNative=require("react-native");var OptionalExpoLocalization=exports.OptionalExpoLocalization=undefined;try{exports.OptionalExpoLocalization=OptionalExpoLocalization=_reactNative.Platform.select({macos:undefined,"default":require('expo-localization')});}catch(e){}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type PostHogReactNativePlugin from '@txlemetry/react-native-plugin';
|
|
2
|
+
/**
|
|
3
|
+
* `@txlemetry/react-native-plugin` is the primary native plugin; we fall back to
|
|
4
|
+
* `posthog-react-native-session-replay` (same surface minus the newer methods)
|
|
5
|
+
* when only the legacy package is installed. Optional methods are absent on
|
|
6
|
+
* older plugins, so callers check availability at runtime.
|
|
7
|
+
*/
|
|
8
|
+
export type PostHogReactNativePluginExtended = typeof PostHogReactNativePlugin & {
|
|
9
|
+
setup?: (sessionId: string, sdkOptions: {
|
|
10
|
+
[key: string]: any;
|
|
11
|
+
}, pluginConfig: {
|
|
12
|
+
[key: string]: any;
|
|
13
|
+
}) => Promise<void>;
|
|
14
|
+
startRecording?: (resumeCurrent: boolean) => Promise<void>;
|
|
15
|
+
stopRecording?: () => Promise<void>;
|
|
16
|
+
addExceptionStep?: (message: string, properties?: {
|
|
17
|
+
[key: string]: any;
|
|
18
|
+
}) => Promise<void>;
|
|
19
|
+
};
|
|
20
|
+
export declare let OptionalReactNativePlugin: PostHogReactNativePluginExtended | undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.OptionalReactNativePlugin=void 0;var _reactNative=require("react-native");var OptionalReactNativePlugin=exports.OptionalReactNativePlugin=undefined;if(_reactNative.Platform.OS!=='macos'&&_reactNative.Platform.OS!=='web'){try{exports.OptionalReactNativePlugin=OptionalReactNativePlugin=require('@txlemetry/react-native-plugin');}catch(e){}if(!OptionalReactNativePlugin){try{exports.OptionalReactNativePlugin=OptionalReactNativePlugin=require('txlemetry-react-native-session-replay');}catch(e){}}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.OptionalReactNativeDeviceInfo=void 0;var _reactNative=require("react-native");var OptionalReactNativeDeviceInfo=exports.OptionalReactNativeDeviceInfo=undefined;try{exports.OptionalReactNativeDeviceInfo=OptionalReactNativeDeviceInfo=_reactNative.Platform.select({macos:undefined,"default":require('react-native-device-info')});}catch(e){}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
interface ReactNativeLocalize {
|
|
2
|
+
getLocales: () => {
|
|
3
|
+
languageCode: string;
|
|
4
|
+
scriptCode?: string;
|
|
5
|
+
countryCode: string;
|
|
6
|
+
languageTag: string;
|
|
7
|
+
isRTL: boolean;
|
|
8
|
+
}[];
|
|
9
|
+
getTimeZone(): string;
|
|
10
|
+
}
|
|
11
|
+
import type ReactNativeLocalize from 'react-native-localize';
|
|
12
|
+
export declare let OptionalReactNativeLocalize: typeof ReactNativeLocalize | undefined;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.OptionalReactNativeLocalize=void 0;var OptionalReactNativeLocalize=exports.OptionalReactNativeLocalize=undefined;try{exports.OptionalReactNativeLocalize=OptionalReactNativeLocalize=require('react-native-localize');}catch(e){}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.OptionalReactNativeNavigation=void 0;var _reactNative=require("react-native");var OptionalReactNativeNavigation=exports.OptionalReactNativeNavigation=undefined;try{exports.OptionalReactNativeNavigation=OptionalReactNativeNavigation=_reactNative.Platform.select({macos:undefined,"default":require('@react-navigation/native')});}catch(e){}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.OptionalReactNativeNavigationWix=void 0;var _reactNative=require("react-native");var OptionalReactNativeNavigationWix=exports.OptionalReactNativeNavigationWix=undefined;try{exports.OptionalReactNativeNavigationWix=OptionalReactNativeNavigationWix=_reactNative.Platform.select({macos:undefined,web:undefined,"default":require('react-native-navigation')});}catch(e){}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.useOptionalSafeAreaInsets=void 0;var OptionalRNSafeArea=undefined;try{OptionalRNSafeArea=require('react-native-safe-area-context');}catch(e){}function createDefaultInsets(){return{top:60,bottom:30,left:0,right:0};}var useOptionalSafeAreaInsets=exports.useOptionalSafeAreaInsets=function useOptionalSafeAreaInsets(){var _a;var useSafeAreaInsets=(_a=OptionalRNSafeArea===null||OptionalRNSafeArea===void 0?void 0:OptionalRNSafeArea.useSafeAreaInsets)!==null&&_a!==void 0?_a:createDefaultInsets;try{return useSafeAreaInsets();}catch(err){return createDefaultInsets();}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.OptionalReactNativeSvg=void 0;var _reactNative=require("react-native");var hasViewManagerConfig=function hasViewManagerConfig(name){var _a;try{return!!((_a=_reactNative.UIManager.hasViewManagerConfig)===null||_a===void 0?void 0:_a.call(_reactNative.UIManager,name));}catch(e){return false;}};var hasNativeSvgSupport=function hasNativeSvgSupport(){if(_reactNative.Platform.OS==='web'){return true;}var svgViewName=_reactNative.Platform.OS==='android'?'RNSVGSvgViewAndroid':'RNSVGSvgView';return!!(hasViewManagerConfig(svgViewName)&&hasViewManagerConfig('RNSVGPath'));};var OptionalReactNativeSvg=exports.OptionalReactNativeSvg=undefined;try{var ReactNativeSvg=require('react-native-svg');if(hasNativeSvgSupport()){exports.OptionalReactNativeSvg=OptionalReactNativeSvg=ReactNativeSvg;}}catch(e){}
|