react-native-inapp-inspector 2.4.2 → 2.5.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/android/.gradle/8.9/checksums/checksums.lock +0 -0
- package/android/.gradle/8.9/dependencies-accessors/gc.properties +0 -0
- package/android/.gradle/8.9/executionHistory/executionHistory.lock +0 -0
- package/android/.gradle/8.9/fileChanges/last-build.bin +0 -0
- package/android/.gradle/8.9/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/8.9/gc.properties +0 -0
- package/android/.gradle/9.2.0/checksums/checksums.lock +0 -0
- package/android/.gradle/9.2.0/fileChanges/last-build.bin +0 -0
- package/android/.gradle/9.2.0/fileHashes/fileHashes.bin +0 -0
- package/android/.gradle/9.2.0/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/9.2.0/gc.properties +0 -0
- package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/android/.gradle/buildOutputCleanup/cache.properties +2 -0
- package/android/.gradle/vcs-1/gc.properties +0 -0
- package/android/.settings/org.eclipse.buildship.core.prefs +13 -0
- package/android/src/main/java/com/inappinspector/NetworkInspectorModule.kt +523 -2
- package/dist/commonjs/capture.d.ts +2 -0
- package/dist/commonjs/capture.js +1 -1
- package/dist/commonjs/components/AnalyticsDetail.js +23 -23
- package/dist/commonjs/components/AnalyticsEventCard.js +1 -1
- package/dist/commonjs/components/AnalyticsGraph.js +44 -44
- package/dist/commonjs/components/AnimatedBrandOwl.js +32 -32
- package/dist/commonjs/components/AppHeaderLogo.js +6 -6
- package/dist/commonjs/components/BrandCircleIcon.js +28 -28
- package/dist/commonjs/components/BrandSquareIcon.js +33 -33
- package/dist/commonjs/components/ConsoleLogCard.js +1 -1
- package/dist/commonjs/components/Inspector/AnalyticsTab.js +2 -2
- package/dist/commonjs/components/Inspector/ConfirmationModal.js +23 -25
- package/dist/commonjs/components/Inspector/ConsoleTab.js +5 -5
- package/dist/commonjs/components/Inspector/CrashTab.js +44 -11
- package/dist/commonjs/components/Inspector/DeviceInfoTab.js +1 -1
- package/dist/commonjs/components/Inspector/FabLauncher.js +30 -25
- package/dist/commonjs/components/Inspector/FloatingCaptureWidget.d.ts +3 -0
- package/dist/commonjs/components/Inspector/FloatingCaptureWidget.js +54 -0
- package/dist/commonjs/components/Inspector/GlobalCrashScreenModal.d.ts +11 -0
- package/dist/commonjs/components/Inspector/GlobalCrashScreenModal.js +234 -0
- package/dist/commonjs/components/Inspector/InspectorHeader.js +137 -127
- package/dist/commonjs/components/Inspector/LanguageSelectorModal.d.ts +1 -1
- package/dist/commonjs/components/Inspector/LanguageSelectorModal.js +114 -32
- package/dist/commonjs/components/Inspector/MainScreen.js +26 -19
- package/dist/commonjs/components/Inspector/MediaGalleryTab.js +38 -35
- package/dist/commonjs/components/Inspector/MediaPreviewModal.d.ts +36 -0
- package/dist/commonjs/components/Inspector/MediaPreviewModal.js +345 -123
- package/dist/commonjs/components/Inspector/NetworkTab.js +14 -14
- package/dist/commonjs/components/Inspector/PushCard.js +1 -1
- package/dist/commonjs/components/Inspector/PushDetail.js +9 -9
- package/dist/commonjs/components/Inspector/PushTab.js +3 -3
- package/dist/commonjs/components/Inspector/ReduxTab.js +9 -7
- package/dist/commonjs/components/Inspector/SecondaryTelemetryStrip.d.ts +2 -0
- package/dist/commonjs/components/Inspector/SecondaryTelemetryStrip.js +43 -0
- package/dist/commonjs/components/Inspector/SettingsPanel.js +102 -73
- package/dist/commonjs/components/Inspector/SocketCard.js +1 -1
- package/dist/commonjs/components/Inspector/SocketDetail.js +73 -63
- package/dist/commonjs/components/Inspector/SocketTab.js +4 -4
- package/dist/commonjs/components/Inspector/StorageTab.js +10 -10
- package/dist/commonjs/components/Inspector/SupportModal.js +2 -2
- package/dist/commonjs/components/Inspector/SupportPage.js +1 -1
- package/dist/commonjs/components/JsonViewer.js +47 -45
- package/dist/commonjs/components/LogCard.js +22 -20
- package/dist/commonjs/components/ModuleErrorBoundary.js +5 -5
- package/dist/commonjs/components/NetworkIcons.d.ts +27 -0
- package/dist/commonjs/components/NetworkIcons.js +103 -5
- package/dist/commonjs/constants/telemetryConfig.d.ts +3 -3
- package/dist/commonjs/constants/telemetryConfig.js +1 -1
- package/dist/commonjs/constants/version.d.ts +1 -1
- package/dist/commonjs/constants/version.js +1 -1
- package/dist/commonjs/crash.d.ts +1 -1
- package/dist/commonjs/crash.js +1 -1
- package/dist/commonjs/customHooks/crashHandler.d.ts +2 -1
- package/dist/commonjs/customHooks/crashHandler.js +7 -7
- package/dist/commonjs/editor.d.ts +13 -0
- package/dist/commonjs/editor.js +1 -0
- package/dist/commonjs/helpers/index.d.ts +1 -0
- package/dist/commonjs/helpers/index.js +1 -1
- package/dist/commonjs/helpers/settingsStore.js +1 -1
- package/dist/commonjs/helpers/telemetry.js +1 -1
- package/dist/commonjs/i18n/index.js +1 -1
- package/dist/commonjs/i18n/locales/ar.json +1 -1
- package/dist/commonjs/i18n/locales/bn.json +1 -1
- package/dist/commonjs/i18n/locales/de.json +1 -1
- package/dist/commonjs/i18n/locales/en.json +1 -1
- package/dist/commonjs/i18n/locales/es.json +1 -1
- package/dist/commonjs/i18n/locales/fr.json +1 -1
- package/dist/commonjs/i18n/locales/gu.json +1 -1
- package/dist/commonjs/i18n/locales/hi.json +1 -1
- package/dist/commonjs/i18n/locales/id.json +1 -1
- package/dist/commonjs/i18n/locales/it.json +1 -1
- package/dist/commonjs/i18n/locales/ja.json +1 -1
- package/dist/commonjs/i18n/locales/kn.json +1 -1
- package/dist/commonjs/i18n/locales/ko.json +1 -1
- package/dist/commonjs/i18n/locales/ml.json +1 -1
- package/dist/commonjs/i18n/locales/mr.json +1 -1
- package/dist/commonjs/i18n/locales/nl.json +1 -1
- package/dist/commonjs/i18n/locales/pa.json +1 -1
- package/dist/commonjs/i18n/locales/pl.json +1 -1
- package/dist/commonjs/i18n/locales/pt.json +1 -1
- package/dist/commonjs/i18n/locales/ru.json +1 -1
- package/dist/commonjs/i18n/locales/ta.json +1 -1
- package/dist/commonjs/i18n/locales/te.json +1 -1
- package/dist/commonjs/i18n/locales/tr.json +1 -1
- package/dist/commonjs/i18n/locales/vi.json +1 -1
- package/dist/commonjs/i18n/locales/zh.json +1 -1
- package/dist/commonjs/index.d.ts +4 -1
- package/dist/commonjs/index.js +3 -3
- package/dist/commonjs/native/NativeInspector.d.ts +3 -0
- package/dist/commonjs/native/NativeInspector.js +1 -1
- package/dist/commonjs/native/NativeNetworkInspector.d.ts +4 -0
- package/dist/commonjs/styles/AppColors.d.ts +42 -2
- package/dist/commonjs/styles/AppColors.js +1 -1
- package/dist/commonjs/styles/common.js +1 -1
- package/dist/commonjs/styles/index.d.ts +7 -0
- package/dist/commonjs/styles/index.js +1 -1
- package/dist/commonjs/types/editor.d.ts +96 -0
- package/dist/commonjs/types/editor.js +1 -0
- package/dist/commonjs/types/interfaces.d.ts +21 -0
- package/dist/esm/capture.d.ts +2 -0
- package/dist/esm/capture.js +1 -1
- package/dist/esm/components/AnalyticsDetail.js +31 -31
- package/dist/esm/components/AnalyticsEventCard.js +1 -1
- package/dist/esm/components/AnalyticsGraph.js +74 -74
- package/dist/esm/components/AnimatedBrandOwl.js +114 -114
- package/dist/esm/components/AppHeaderLogo.js +7 -7
- package/dist/esm/components/BrandCircleIcon.js +70 -70
- package/dist/esm/components/BrandSquareIcon.js +61 -61
- package/dist/esm/components/ConsoleLogCard.js +1 -1
- package/dist/esm/components/Inspector/AnalyticsTab.js +14 -14
- package/dist/esm/components/Inspector/ConfirmationModal.js +23 -25
- package/dist/esm/components/Inspector/ConsoleTab.js +17 -17
- package/dist/esm/components/Inspector/CrashTab.js +202 -169
- package/dist/esm/components/Inspector/DeviceInfoTab.js +75 -75
- package/dist/esm/components/Inspector/FabLauncher.js +56 -51
- package/dist/esm/components/Inspector/FloatingCaptureWidget.d.ts +3 -0
- package/dist/esm/components/Inspector/FloatingCaptureWidget.js +54 -0
- package/dist/esm/components/Inspector/GlobalCrashScreenModal.d.ts +11 -0
- package/dist/esm/components/Inspector/GlobalCrashScreenModal.js +234 -0
- package/dist/esm/components/Inspector/InspectorHeader.js +162 -152
- package/dist/esm/components/Inspector/LanguageSelectorModal.d.ts +1 -1
- package/dist/esm/components/Inspector/LanguageSelectorModal.js +140 -58
- package/dist/esm/components/Inspector/MainScreen.js +61 -54
- package/dist/esm/components/Inspector/MediaGalleryTab.js +55 -52
- package/dist/esm/components/Inspector/MediaPreviewModal.d.ts +36 -0
- package/dist/esm/components/Inspector/MediaPreviewModal.js +345 -123
- package/dist/esm/components/Inspector/NetworkTab.js +74 -74
- package/dist/esm/components/Inspector/PushCard.js +1 -1
- package/dist/esm/components/Inspector/PushDetail.js +18 -18
- package/dist/esm/components/Inspector/PushTab.js +1 -1
- package/dist/esm/components/Inspector/ReduxTab.js +18 -16
- package/dist/esm/components/Inspector/SecondaryTelemetryStrip.d.ts +2 -0
- package/dist/esm/components/Inspector/SecondaryTelemetryStrip.js +43 -0
- package/dist/esm/components/Inspector/SettingsPanel.js +224 -195
- package/dist/esm/components/Inspector/SocketCard.js +8 -8
- package/dist/esm/components/Inspector/SocketDetail.js +106 -96
- package/dist/esm/components/Inspector/SocketTab.js +18 -18
- package/dist/esm/components/Inspector/StorageTab.js +47 -47
- package/dist/esm/components/Inspector/SupportModal.js +64 -64
- package/dist/esm/components/Inspector/SupportPage.js +5 -5
- package/dist/esm/components/JsonViewer.js +51 -49
- package/dist/esm/components/LogCard.js +41 -39
- package/dist/esm/components/ModuleErrorBoundary.js +10 -10
- package/dist/esm/components/NetworkIcons.d.ts +27 -0
- package/dist/esm/components/NetworkIcons.js +101 -3
- package/dist/esm/constants/telemetryConfig.d.ts +3 -3
- package/dist/esm/constants/telemetryConfig.js +1 -1
- package/dist/esm/constants/version.d.ts +1 -1
- package/dist/esm/constants/version.js +1 -1
- package/dist/esm/crash.d.ts +1 -1
- package/dist/esm/crash.js +1 -1
- package/dist/esm/customHooks/crashHandler.d.ts +2 -1
- package/dist/esm/customHooks/crashHandler.js +7 -7
- package/dist/esm/editor.d.ts +13 -0
- package/dist/esm/editor.js +1 -0
- package/dist/esm/helpers/index.d.ts +1 -0
- package/dist/esm/helpers/index.js +4 -4
- package/dist/esm/helpers/settingsStore.js +1 -1
- package/dist/esm/helpers/telemetry.js +1 -1
- package/dist/esm/i18n/index.js +1 -1
- package/dist/esm/i18n/locales/ar.json +1 -1
- package/dist/esm/i18n/locales/bn.json +1 -1
- package/dist/esm/i18n/locales/de.json +1 -1
- package/dist/esm/i18n/locales/en.json +1 -1
- package/dist/esm/i18n/locales/es.json +1 -1
- package/dist/esm/i18n/locales/fr.json +1 -1
- package/dist/esm/i18n/locales/gu.json +1 -1
- package/dist/esm/i18n/locales/hi.json +1 -1
- package/dist/esm/i18n/locales/id.json +1 -1
- package/dist/esm/i18n/locales/it.json +1 -1
- package/dist/esm/i18n/locales/ja.json +1 -1
- package/dist/esm/i18n/locales/kn.json +1 -1
- package/dist/esm/i18n/locales/ko.json +1 -1
- package/dist/esm/i18n/locales/ml.json +1 -1
- package/dist/esm/i18n/locales/mr.json +1 -1
- package/dist/esm/i18n/locales/nl.json +1 -1
- package/dist/esm/i18n/locales/pa.json +1 -1
- package/dist/esm/i18n/locales/pl.json +1 -1
- package/dist/esm/i18n/locales/pt.json +1 -1
- package/dist/esm/i18n/locales/ru.json +1 -1
- package/dist/esm/i18n/locales/ta.json +1 -1
- package/dist/esm/i18n/locales/te.json +1 -1
- package/dist/esm/i18n/locales/tr.json +1 -1
- package/dist/esm/i18n/locales/vi.json +1 -1
- package/dist/esm/i18n/locales/zh.json +1 -1
- package/dist/esm/index.d.ts +4 -1
- package/dist/esm/index.js +5 -5
- package/dist/esm/native/NativeInspector.d.ts +3 -0
- package/dist/esm/native/NativeInspector.js +1 -1
- package/dist/esm/native/NativeNetworkInspector.d.ts +4 -0
- package/dist/esm/styles/AppColors.d.ts +42 -2
- package/dist/esm/styles/AppColors.js +1 -1
- package/dist/esm/styles/common.js +1 -1
- package/dist/esm/styles/index.d.ts +7 -0
- package/dist/esm/styles/index.js +1 -1
- package/dist/esm/types/editor.d.ts +96 -0
- package/dist/esm/types/editor.js +1 -0
- package/dist/esm/types/interfaces.d.ts +21 -0
- package/editor.d.ts +1 -0
- package/editor.js +1 -0
- package/ios/NetworkInspectorModule.mm +429 -0
- package/package.json +10 -1
- package/react-native-inapp-inspector.podspec +1 -1
- package/src/native/NativeInspector.ts +57 -4
- package/src/native/NativeNetworkInspector.ts +4 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(e,
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(e,t,i,l){l===void 0&&(l=i);var o=Object.getOwnPropertyDescriptor(t,i);(!o||("get"in o?!t.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,l,o)}):(function(e,t,i,l){l===void 0&&(l=i),e[l]=t[i]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}):function(e,t){e.default=t}),__importStar=this&&this.__importStar||(function(){var e=function(t){return e=Object.getOwnPropertyNames||function(i){var l=[];for(var o in i)Object.prototype.hasOwnProperty.call(i,o)&&(l[l.length]=o);return l},e(t)};return function(t){if(t&&t.__esModule)return t;var i={};if(t!=null)for(var l=e(t),o=0;o<l.length;o++)l[o]!=="default"&&__createBinding(i,t,l[o]);return __setModuleDefault(i,t),i}})(),__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const react_1=__importStar(require("react")),react_native_1=require("react-native"),CopyButton_1=__importDefault(require("./CopyButton")),ShareButton_1=__importDefault(require("./ShareButton")),JsonViewer_1=__importDefault(require("./JsonViewer")),SegmentedTabs_1=__importDefault(require("./SegmentedTabs")),HighlightText_1=__importDefault(require("./HighlightText")),AnimatedEntrance_1=__importDefault(require("./AnimatedEntrance")),AppFonts_1=require("../styles/AppFonts"),AppColors_1=require("../styles/AppColors"),helpers_1=require("../helpers"),shareFormatter_1=require("../helpers/shareFormatter"),gaAnalyticsRegistry_1=require("../helpers/gaAnalyticsRegistry"),i18n_1=require("../i18n"),NetworkIcons_1=require("./NetworkIcons"),AnalyticsDetail=({event:e})=>{const{t}=(0,i18n_1.useTranslation)(),[i,l]=(0,react_1.useState)("overview"),[o,w]=(0,react_1.useState)(""),a=(0,react_1.useMemo)(()=>e.params??{},[e.params]),d=(0,react_1.useMemo)(()=>e.userProperties??{},[e.userProperties]),u=(0,react_1.useMemo)(()=>Object.keys(a),[a]),s=(0,react_1.useMemo)(()=>Object.keys(d),[d]),b=(0,react_1.useMemo)(()=>(0,gaAnalyticsRegistry_1.getEventCategory)(e.name,a),[e.name,a]),y=(0,react_1.useMemo)(()=>({name:e.name,timestamp:e.timestamp,source:e.source,...e.screenName?{screenName:e.screenName}:{},...e.screenClass?{screenClass:e.screenClass}:{},...e.userId?{userId:e.userId}:{},...e.sessionId?{sessionId:e.sessionId}:{},...e.trackingId?{trackingId:e.trackingId}:{},params:a,...s.length>0?{userProperties:d}:{}}),[e,a,s.length,d]),m=(0,react_1.useMemo)(()=>{const r=a.value??a.price,n=a.currency??"USD";return r!=null&&!isNaN(Number(r))?{amount:Number(r).toFixed(2),currency:String(n).toUpperCase()}:null},[a]),f=(0,react_1.useMemo)(()=>Array.isArray(a.items)?a.items.length:null,[a.items]),h=(0,react_1.useMemo)(()=>e.screenName||a.firebase_screen||a.screen_name||a.page_title||e.screenClass||a.firebase_screen_class,[e.screenName,e.screenClass,a]),x=(0,react_1.useMemo)(()=>{const r=Object.entries(a);if(!o.trim())return r;const n=o.toLowerCase();return r.filter(([_,c])=>{const C=typeof c=="object"?JSON.stringify(c):String(c);return _.toLowerCase().includes(n)||C.toLowerCase().includes(n)})},[a,o]),p=(0,react_1.useMemo)(()=>{switch(b){case"ecommerce":return{label:t("analytics.ecommerceCategory"),color:AppColors_1.AppColors.amber700,bg:AppColors_1.AppColors.amber100,border:AppColors_1.AppColors.amber200,icon:r=><NetworkIcons_1.CartIcon color={r}size={11}/>};case"page_view":return{label:t("analytics.screensCategory"),color:AppColors_1.AppColors.sky600,bg:AppColors_1.AppColors.sky100,border:AppColors_1.AppColors.sky400,icon:r=><NetworkIcons_1.GlobeIcon color={r}size={11}/>};case"system":return{label:t("analytics.systemCategory"),color:AppColors_1.AppColors.purple,bg:AppColors_1.AppColors.purple100,border:AppColors_1.AppColors.purple200,icon:r=><NetworkIcons_1.BoltIcon color={r}size={11}/>};default:return{label:t("analytics.customCategory"),color:AppColors_1.AppColors.brandPurple,bg:AppColors_1.AppColors.purple100,border:AppColors_1.AppColors.purple200,icon:r=><NetworkIcons_1.SparkleIcon color={r}size={11}/>}}},[b,t]),T=[{key:"overview",label:`${t("analytics.overviewTab")} (${u.length})`,icon:r=><NetworkIcons_1.TableIcon color={r?AppColors_1.AppColors.white:AppColors_1.AppColors.grayText}size={12}/>},{key:"json",label:"JSON Payload",icon:r=><NetworkIcons_1.PrettyIcon color={r?AppColors_1.AppColors.white:AppColors_1.AppColors.grayText}size={12}/>}];return<react_native_1.ScrollView style={detailStyles.scroll}contentContainerStyle={detailStyles.content}showsVerticalScrollIndicator contentInsetAdjustmentBehavior="never"automaticallyAdjustContentInsets={!1}>
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
<react_native_1.View style={detailStyles.heroCard}>
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
<react_native_1.View style={[detailStyles.sourceBadge,e.source==="firebase"?{backgroundColor:AppColors_1.AppColors.amberBg,borderColor:AppColors_1.AppColors.amberBorder}:{backgroundColor:AppColors_1.AppColors.purpleBg,borderColor:AppColors_1.AppColors.purpleBorder}]}>
|
|
17
17
|
<react_native_1.View style={[detailStyles.sourceDot,{backgroundColor:e.source==="firebase"?AppColors_1.AppColors.firebaseOrange:AppColors_1.AppColors.purple}]}/>
|
|
18
18
|
<react_native_1.Text style={[detailStyles.sourceBadgeText,{color:e.source==="firebase"?AppColors_1.AppColors.amber800Warm:AppColors_1.AppColors.purple}]}>
|
|
19
|
-
{e.source==="firebase"?
|
|
19
|
+
{e.source==="firebase"?t("analytics.sourceFirebase"):t("analytics.sourceCustom")}
|
|
20
20
|
</react_native_1.Text>
|
|
21
21
|
</react_native_1.View>
|
|
22
22
|
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
|
|
33
33
|
<react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:6}}>
|
|
34
34
|
<ShareButton_1.default onShare={()=>(0,shareFormatter_1.shareAnalyticsReport)(e)}/>
|
|
35
|
-
<CopyButton_1.default value={JSON.stringify(y,null,2)}label={
|
|
35
|
+
<CopyButton_1.default value={JSON.stringify(y,null,2)}label={t("analytics.eventDetails")}/>
|
|
36
36
|
</react_native_1.View>
|
|
37
37
|
</react_native_1.View>
|
|
38
38
|
|
|
@@ -63,17 +63,17 @@
|
|
|
63
63
|
|
|
64
64
|
<react_native_1.View style={detailStyles.metricsBar}>
|
|
65
65
|
<react_native_1.View style={detailStyles.metricPill}>
|
|
66
|
-
<react_native_1.Text style={detailStyles.metricLabel}>Params
|
|
66
|
+
<react_native_1.Text style={detailStyles.metricLabel}>{t("analytics.metricParams","Params:")}</react_native_1.Text>
|
|
67
67
|
<react_native_1.Text style={detailStyles.metricValue}>{u.length}</react_native_1.Text>
|
|
68
68
|
</react_native_1.View>
|
|
69
69
|
|
|
70
70
|
{s.length>0&&<react_native_1.View style={detailStyles.metricPill}>
|
|
71
|
-
<react_native_1.Text style={detailStyles.metricLabel}>User Props
|
|
71
|
+
<react_native_1.Text style={detailStyles.metricLabel}>{t("analytics.metricUserProps","User Props:")}</react_native_1.Text>
|
|
72
72
|
<react_native_1.Text style={detailStyles.metricValue}>{s.length}</react_native_1.Text>
|
|
73
73
|
</react_native_1.View>}
|
|
74
74
|
|
|
75
75
|
<react_native_1.View style={detailStyles.metricPill}>
|
|
76
|
-
<react_native_1.Text style={detailStyles.metricLabel}>Size
|
|
76
|
+
<react_native_1.Text style={detailStyles.metricLabel}>{t("analytics.metricSize","Size:")}</react_native_1.Text>
|
|
77
77
|
<react_native_1.Text style={detailStyles.metricValue}>{(0,helpers_1.getSize)(y)}</react_native_1.Text>
|
|
78
78
|
</react_native_1.View>
|
|
79
79
|
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
{f!==null&&<react_native_1.View style={detailStyles.itemsPill}>
|
|
88
88
|
<NetworkIcons_1.PackageIcon size={12}color={AppColors_1.AppColors.blue700}/>
|
|
89
89
|
<react_native_1.Text style={detailStyles.itemsValue}>
|
|
90
|
-
{f} items
|
|
90
|
+
{t("analytics.metricItems",{count:f},"{{count}} items")}
|
|
91
91
|
</react_native_1.Text>
|
|
92
92
|
</react_native_1.View>}
|
|
93
93
|
</react_native_1.View>
|
|
@@ -95,7 +95,7 @@
|
|
|
95
95
|
|
|
96
96
|
|
|
97
97
|
<react_native_1.View style={detailStyles.tabsWrap}>
|
|
98
|
-
<SegmentedTabs_1.default tabs={T}activeKey={i}onChange={
|
|
98
|
+
<SegmentedTabs_1.default tabs={T}activeKey={i}onChange={r=>l(r)}/>
|
|
99
99
|
</react_native_1.View>
|
|
100
100
|
|
|
101
101
|
|
|
@@ -104,19 +104,19 @@
|
|
|
104
104
|
{(e.userId||e.sessionId||e.trackingId)&&<react_native_1.View style={detailStyles.sectionCard}>
|
|
105
105
|
<react_native_1.View style={detailStyles.sectionHeader}>
|
|
106
106
|
<NetworkIcons_1.LayersIcon color={AppColors_1.AppColors.purple}size={12}/>
|
|
107
|
-
<react_native_1.Text style={detailStyles.sectionTitle}>SESSION & IDENTITY</react_native_1.Text>
|
|
107
|
+
<react_native_1.Text style={detailStyles.sectionTitle}>{t("analytics.sessionIdentity","SESSION & IDENTITY")}</react_native_1.Text>
|
|
108
108
|
</react_native_1.View>
|
|
109
109
|
<react_native_1.View style={detailStyles.sectionBody}>
|
|
110
110
|
{e.userId&&<react_native_1.View style={detailStyles.kvRow}>
|
|
111
|
-
<react_native_1.Text style={detailStyles.kvKey}>User ID:</react_native_1.Text>
|
|
111
|
+
<react_native_1.Text style={detailStyles.kvKey}>{t("analytics.userId","User ID")}:</react_native_1.Text>
|
|
112
112
|
<react_native_1.Text style={detailStyles.kvVal}selectable>{e.userId}</react_native_1.Text>
|
|
113
113
|
</react_native_1.View>}
|
|
114
114
|
{e.sessionId&&<react_native_1.View style={detailStyles.kvRow}>
|
|
115
|
-
<react_native_1.Text style={detailStyles.kvKey}>Session ID:</react_native_1.Text>
|
|
115
|
+
<react_native_1.Text style={detailStyles.kvKey}>{t("analytics.sessionId","Session ID")}:</react_native_1.Text>
|
|
116
116
|
<react_native_1.Text style={detailStyles.kvVal}selectable>{e.sessionId}</react_native_1.Text>
|
|
117
117
|
</react_native_1.View>}
|
|
118
118
|
{e.trackingId&&<react_native_1.View style={detailStyles.kvRow}>
|
|
119
|
-
<react_native_1.Text style={detailStyles.kvKey}>Tracking ID:</react_native_1.Text>
|
|
119
|
+
<react_native_1.Text style={detailStyles.kvKey}>{t("analytics.trackingId","Tracking ID")}:</react_native_1.Text>
|
|
120
120
|
<react_native_1.Text style={detailStyles.kvVal}selectable>{e.trackingId}</react_native_1.Text>
|
|
121
121
|
</react_native_1.View>}
|
|
122
122
|
</react_native_1.View>
|
|
@@ -128,18 +128,18 @@
|
|
|
128
128
|
<react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:6}}>
|
|
129
129
|
<NetworkIcons_1.TableIcon color={AppColors_1.AppColors.brandPurple}size={12}/>
|
|
130
130
|
<react_native_1.Text style={detailStyles.sectionTitle}>
|
|
131
|
-
EVENT PARAMETERS ({
|
|
131
|
+
{t("analytics.eventParameters",{count:u.length},"EVENT PARAMETERS ({{count}})")}
|
|
132
132
|
</react_native_1.Text>
|
|
133
133
|
</react_native_1.View>
|
|
134
134
|
<react_native_1.Text style={detailStyles.sectionSubtitle}>
|
|
135
|
-
Key-Value Attributes
|
|
135
|
+
{t("analytics.keyValueAttributes","Key-Value Attributes")}
|
|
136
136
|
</react_native_1.Text>
|
|
137
137
|
</react_native_1.View>
|
|
138
138
|
|
|
139
139
|
|
|
140
140
|
{u.length>4&&<react_native_1.View style={detailStyles.searchBar}>
|
|
141
141
|
<NetworkIcons_1.SearchIcon color={AppColors_1.AppColors.grayTextWeak}size={13}/>
|
|
142
|
-
<react_native_1.TextInput placeholder="Filter parameters by key or value..."placeholderTextColor={AppColors_1.AppColors.grayTextWeak}value={o}onChangeText={w}style={detailStyles.searchInput}autoCorrect={!1}autoCapitalize="none"/>
|
|
142
|
+
<react_native_1.TextInput placeholder={t("analytics.filterParamsPlaceholder","Filter parameters by key or value...")}placeholderTextColor={AppColors_1.AppColors.grayTextWeak}value={o}onChangeText={w}style={detailStyles.searchInput}autoCorrect={!1}autoCapitalize="none"/>
|
|
143
143
|
{o.length>0&&<react_native_1.Pressable onPress={()=>w("")}hitSlop={8}>
|
|
144
144
|
<NetworkIcons_1.ClearIcon color={AppColors_1.AppColors.grayTextWeak}size={13}/>
|
|
145
145
|
</react_native_1.Pressable>}
|
|
@@ -148,19 +148,19 @@
|
|
|
148
148
|
{u.length===0?<react_native_1.View style={detailStyles.emptyParamsBox}>
|
|
149
149
|
<NetworkIcons_1.DocIcon color={AppColors_1.AppColors.grayTextWeak}size={16}/>
|
|
150
150
|
<react_native_1.Text style={detailStyles.emptyParamsText}>
|
|
151
|
-
No custom parameters recorded for this event.
|
|
151
|
+
{t("analytics.noParamsRecorded","No custom parameters recorded for this event.")}
|
|
152
152
|
</react_native_1.Text>
|
|
153
153
|
</react_native_1.View>:x.length===0?<react_native_1.View style={detailStyles.emptyParamsBox}>
|
|
154
154
|
<react_native_1.Text style={detailStyles.emptyParamsText}>
|
|
155
|
-
No parameters matching "{
|
|
155
|
+
{t("analytics.noParamsMatching",{search:o},'No parameters matching "{{search}}"')}
|
|
156
156
|
</react_native_1.Text>
|
|
157
157
|
</react_native_1.View>:<react_native_1.View style={detailStyles.paramList}>
|
|
158
|
-
{x.map(([
|
|
158
|
+
{x.map(([r,n],_)=>{const c=typeof n=="object"&&n!==null,C=Array.isArray(n);let g=typeof n;n===null?g="null":C?g=`array [${n.length}]`:c&&(g="object");const A=c?JSON.stringify(n,null,2):String(n),V=r==="value"||r==="price"||r==="currency"||r==="screen_name"||r==="item_id"||r==="item_name";return<AnimatedEntrance_1.default key={r}index={_}distance={4}>
|
|
159
159
|
<react_native_1.View style={detailStyles.paramCard}>
|
|
160
160
|
|
|
161
161
|
<react_native_1.View style={detailStyles.paramCardHeader}>
|
|
162
162
|
<react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:6,flex:1,minWidth:0}}>
|
|
163
|
-
<HighlightText_1.default text={
|
|
163
|
+
<HighlightText_1.default text={r}search={o}style={[detailStyles.paramKeyText,V&&detailStyles.paramKeyHighlighted]}highlightStyle={detailStyles.highlight}/>
|
|
164
164
|
<react_native_1.View style={detailStyles.typeBadge}>
|
|
165
165
|
<react_native_1.Text style={detailStyles.typeBadgeText}>
|
|
166
166
|
{g.toUpperCase()}
|
|
@@ -168,7 +168,7 @@
|
|
|
168
168
|
</react_native_1.View>
|
|
169
169
|
</react_native_1.View>
|
|
170
170
|
|
|
171
|
-
<CopyButton_1.default value={A}label={
|
|
171
|
+
<CopyButton_1.default value={A}label={r}/>
|
|
172
172
|
</react_native_1.View>
|
|
173
173
|
|
|
174
174
|
|
|
@@ -189,10 +189,10 @@
|
|
|
189
189
|
</react_native_1.Text>
|
|
190
190
|
</react_native_1.View>
|
|
191
191
|
<react_native_1.View style={detailStyles.sectionBody}>
|
|
192
|
-
{s.map(
|
|
193
|
-
<react_native_1.Text style={detailStyles.kvKey}>{
|
|
192
|
+
{s.map(r=><react_native_1.View key={r}style={detailStyles.kvRow}>
|
|
193
|
+
<react_native_1.Text style={detailStyles.kvKey}>{r}:</react_native_1.Text>
|
|
194
194
|
<react_native_1.Text style={detailStyles.kvVal}selectable>
|
|
195
|
-
{String(d[
|
|
195
|
+
{String(d[r])}
|
|
196
196
|
</react_native_1.Text>
|
|
197
197
|
</react_native_1.View>)}
|
|
198
198
|
</react_native_1.View>
|
|
@@ -97,4 +97,4 @@
|
|
|
97
97
|
</react_native_1.View>
|
|
98
98
|
</react_native_1.View>
|
|
99
99
|
</TouchableScale_1.default>
|
|
100
|
-
</react_native_1.View>}),cardStyles=react_native_1.StyleSheet.create({container:{paddingHorizontal:
|
|
100
|
+
</react_native_1.View>}),cardStyles=react_native_1.StyleSheet.create({container:{paddingHorizontal:5,paddingVertical:4,height:86,justifyContent:"center"},gapContainer:{flexDirection:"row",alignItems:"center",justifyContent:"center",marginVertical:4,gap:8},gapLine:{flex:1,height:1,backgroundColor:`${AppColors_1.AppColors.dividerColor}`},gapText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:9.5,color:AppColors_1.AppColors.grayTextWeak,letterSpacing:.5},modernCard:{backgroundColor:AppColors_1.AppColors.white,borderRadius:10,borderWidth:1,borderColor:AppColors_1.AppColors.dividerColor,paddingHorizontal:8,paddingVertical:8,shadowColor:AppColors_1.AppColors.black,shadowOpacity:.03,shadowRadius:3,shadowOffset:{width:0,height:1},elevation:1,overflow:"hidden",height:78,justifyContent:"space-between"},cardHeader:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",height:24},iconBadge:{width:22,height:22,borderRadius:6,borderWidth:1,alignItems:"center",justifyContent:"center"},eventName:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:13,lineHeight:17,letterSpacing:.1,color:AppColors_1.AppColors.primaryBlack},timestamp:{fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:10.5,lineHeight:14,color:AppColors_1.AppColors.grayTextWeak},highlight:{backgroundColor:AppColors_1.AppColors.yellowHighlight,color:AppColors_1.AppColors.primaryBlack,borderRadius:2},cardBody:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",height:24,overflow:"hidden"},chipsRow:{flexDirection:"row",alignItems:"center",flexWrap:"nowrap",gap:6,flex:1,overflow:"hidden"},chip:{flexDirection:"row",alignItems:"center",paddingHorizontal:6,paddingVertical:2.5,borderRadius:4.5,borderWidth:1,gap:3.5},chipText:{fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:10,lineHeight:13,color:AppColors_1.AppColors.grayText},screenDot:{width:5,height:5,borderRadius:2.5},duplicateBadge:{backgroundColor:AppColors_1.AppColors.roseBg,borderColor:AppColors_1.AppColors.roseBorder,borderWidth:1,paddingHorizontal:5,paddingVertical:1.5,borderRadius:4},duplicateText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:8.5,color:AppColors_1.AppColors.rose600,textTransform:"uppercase"},idBadge:{paddingHorizontal:5.5,paddingVertical:2,borderRadius:5,backgroundColor:`${AppColors_1.AppColors.slate500}12`,borderWidth:1,borderColor:`${AppColors_1.AppColors.slate500}22`},idBadgeText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:9.5,color:AppColors_1.AppColors.grayTextWeak,letterSpacing:.2},categoryBadge:{borderWidth:1,paddingHorizontal:5,paddingVertical:1.5,borderRadius:4},categoryText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:8.5,textTransform:"uppercase",letterSpacing:.4}});exports.default=AnalyticsEventCard;
|
|
@@ -1,56 +1,56 @@
|
|
|
1
|
-
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(t,
|
|
2
|
-
<react_native_1.Text style={graphStyles.headerTitle}>Data Visualization</react_native_1.Text>
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(a,t,r,e){e===void 0&&(e=r);var n=Object.getOwnPropertyDescriptor(t,r);(!n||("get"in n?!t.__esModule:n.writable||n.configurable))&&(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(a,e,n)}):(function(a,t,r,e){e===void 0&&(e=r),a[e]=t[r]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(a,t){Object.defineProperty(a,"default",{enumerable:!0,value:t})}):function(a,t){a.default=t}),__importStar=this&&this.__importStar||(function(){var a=function(t){return a=Object.getOwnPropertyNames||function(r){var e=[];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[e.length]=n);return e},a(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var e=a(t),n=0;n<e.length;n++)e[n]!=="default"&&__createBinding(r,t,e[n]);return __setModuleDefault(r,t),r}})(),__importDefault=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(exports,"__esModule",{value:!0});const react_1=__importDefault(require("react")),react_native_1=require("react-native"),react_native_svg_1=__importStar(require("react-native-svg")),AppColors_1=require("../styles/AppColors"),AppFonts_1=require("../styles/AppFonts"),i18n_1=require("../i18n"),BAR_HEIGHT=24,PADDING_Y=12,AnalyticsGraph=({event:a,accentColor:t})=>{const{t:r}=(0,i18n_1.useTranslation)(),e=a.params||{},l=(Array.isArray(e.items)?e.items:null)?.filter(i=>typeof i.price=="number")||[],o=[];Object.entries(e).forEach(([i,s])=>{typeof s=="number"&&!i.toLowerCase().includes("id")&&!i.toLowerCase().includes("timestamp")&&o.push({key:i,value:s})});const c=[],p=/^\d{4}-\d{2}-\d{2}/;Object.entries(e).forEach(([i,s])=>{if(typeof s=="string"&&s.length>=10&&p.test(s)){const g=new Date(s);isNaN(g.getTime())||c.push({key:i,date:g})}});const u={};Object.values(e).forEach(i=>{let s=typeof i;i===null&&(s="null"),Array.isArray(i)&&(s="array"),u[s]=(u[s]||0)+1});const h=[AppColors_1.AppColors.purple,AppColors_1.AppColors.skyBlue,AppColors_1.AppColors.amber500,AppColors_1.AppColors.greenColor],y=Object.entries(u).map(([i,s],g)=>({label:i,value:s,color:h[g%h.length]})),d=[];Object.entries(e).forEach(([i,s])=>{typeof s=="string"&&d.push({label:i,value:s.length})}),d.sort((i,s)=>s.value-i.value);const f=d.slice(0,5),m=l.length>0,v=o.length>0,w=c.length>0,x=f.length>0,C=y.length>0,_=react_native_1.Dimensions.get("window").width-60-40;return<react_native_1.View style={graphStyles.container}>
|
|
2
|
+
<react_native_1.Text style={graphStyles.headerTitle}>{r("analytics.dataVisualization","Data Visualization")}</react_native_1.Text>
|
|
3
3
|
|
|
4
|
-
{
|
|
5
|
-
<react_native_1.Text style={graphStyles.chartTitle}>Data Types Breakdown</react_native_1.Text>
|
|
6
|
-
<DonutChart data={
|
|
4
|
+
{C&&<react_native_1.View style={graphStyles.chartBlock}>
|
|
5
|
+
<react_native_1.Text style={graphStyles.chartTitle}>{r("analytics.dataTypesBreakdown","Data Types Breakdown")}</react_native_1.Text>
|
|
6
|
+
<DonutChart data={y}/>
|
|
7
7
|
</react_native_1.View>}
|
|
8
8
|
|
|
9
|
-
{
|
|
10
|
-
<react_native_1.Text style={graphStyles.chartTitle}>Highest Payload Strings</react_native_1.Text>
|
|
11
|
-
<BarChart data={
|
|
9
|
+
{x&&<react_native_1.View style={graphStyles.chartBlock}>
|
|
10
|
+
<react_native_1.Text style={graphStyles.chartTitle}>{r("analytics.highestPayloadStrings","Highest Payload Strings")}</react_native_1.Text>
|
|
11
|
+
<BarChart data={f}accentColor={AppColors_1.AppColors.purple}maxBarWidth={_}isGradient/>
|
|
12
12
|
</react_native_1.View>}
|
|
13
13
|
|
|
14
|
-
{
|
|
15
|
-
<react_native_1.Text style={graphStyles.chartTitle}>Top-Level Metrics</react_native_1.Text>
|
|
16
|
-
<GaugeChart data={
|
|
14
|
+
{v&&<react_native_1.View style={graphStyles.chartBlock}>
|
|
15
|
+
<react_native_1.Text style={graphStyles.chartTitle}>{r("analytics.topLevelMetrics","Top-Level Metrics")}</react_native_1.Text>
|
|
16
|
+
<GaugeChart data={o.map(i=>({label:i.key,value:i.value}))}accentColor={t}/>
|
|
17
17
|
</react_native_1.View>}
|
|
18
18
|
|
|
19
|
-
{
|
|
20
|
-
<react_native_1.Text style={graphStyles.chartTitle}>Important Dates</react_native_1.Text>
|
|
21
|
-
<CalendarChart data={
|
|
19
|
+
{w&&<react_native_1.View style={graphStyles.chartBlock}>
|
|
20
|
+
<react_native_1.Text style={graphStyles.chartTitle}>{r("analytics.importantDates","Important Dates")}</react_native_1.Text>
|
|
21
|
+
<CalendarChart data={c.map(i=>({label:i.key,date:i.date}))}accentColor={t}/>
|
|
22
22
|
</react_native_1.View>}
|
|
23
23
|
|
|
24
|
-
{
|
|
25
|
-
<react_native_1.Text style={graphStyles.chartTitle}>Item Prices</react_native_1.Text>
|
|
26
|
-
<BarChart data={
|
|
24
|
+
{m&&<react_native_1.View style={graphStyles.chartBlock}>
|
|
25
|
+
<react_native_1.Text style={graphStyles.chartTitle}>{r("analytics.itemPrices","Item Prices")}</react_native_1.Text>
|
|
26
|
+
<BarChart data={l.map((i,s)=>({label:i.item_name||i.item_id||`Item ${s+1}`,value:i.price}))}accentColor={AppColors_1.AppColors.successGreen}maxBarWidth={_}isGradient={!1}/>
|
|
27
27
|
</react_native_1.View>}
|
|
28
|
-
</react_native_1.View>},polarToCartesian=(t,
|
|
28
|
+
</react_native_1.View>},polarToCartesian=(a,t,r,e)=>{const n=(e-90)*Math.PI/180;return{x:a+r*Math.cos(n),y:t+r*Math.sin(n)}},getPiePath=(a,t,r,e,n,l)=>{const o=polarToCartesian(a,t,r,l),c=polarToCartesian(a,t,r,n),p=polarToCartesian(a,t,e,l),u=polarToCartesian(a,t,e,n),h=l-n<=180?"0":"1";return`
|
|
29
29
|
M ${o.x} ${o.y}
|
|
30
|
-
A ${r} ${r} 0 ${h} 0 ${
|
|
30
|
+
A ${r} ${r} 0 ${h} 0 ${c.x} ${c.y}
|
|
31
31
|
L ${u.x} ${u.y}
|
|
32
|
-
A ${
|
|
32
|
+
A ${e} ${e} 0 ${h} 1 ${p.x} ${p.y}
|
|
33
33
|
Z
|
|
34
|
-
`},DonutChart=({data:
|
|
34
|
+
`},DonutChart=({data:a})=>{const t=a.reduce((o,c)=>o+c.value,0);if(t===0)return null;let r=0;const e=50,n=30,l=60;return<react_native_1.View style={{flexDirection:"row",alignItems:"center"}}>
|
|
35
35
|
<react_native_svg_1.default width="120"height="120"viewBox="0 0 120 120">
|
|
36
|
-
{
|
|
37
|
-
<react_native_svg_1.Circle cx={
|
|
38
|
-
<react_native_svg_1.Circle cx={
|
|
39
|
-
</react_1.default.Fragment>;const y=getPiePath(
|
|
36
|
+
{a.map((o,c)=>{if(o.value===0)return null;const p=o.value/t*360,u=r,h=r+p;if(r+=p,p===360)return<react_1.default.Fragment key={c}>
|
|
37
|
+
<react_native_svg_1.Circle cx={l}cy={l}r={e}fill={o.color}/>
|
|
38
|
+
<react_native_svg_1.Circle cx={l}cy={l}r={n}fill={AppColors_1.AppColors.primaryLight}/>
|
|
39
|
+
</react_1.default.Fragment>;const y=getPiePath(l,l,e,n,u,h);return<react_native_svg_1.Path key={c}d={y}fill={o.color}/>})}
|
|
40
40
|
</react_native_svg_1.default>
|
|
41
41
|
<react_native_1.View style={{marginLeft:16,flex:1,gap:6}}>
|
|
42
|
-
{
|
|
42
|
+
{a.map((o,c)=>o.value===0?null:<react_native_1.View key={c}style={{flexDirection:"row",alignItems:"center",gap:6}}>
|
|
43
43
|
<react_native_1.View style={{width:10,height:10,borderRadius:5,backgroundColor:o.color}}/>
|
|
44
44
|
<react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:11,color:AppColors_1.AppColors.grayTextStrong}}>
|
|
45
45
|
{o.label} ({o.value})
|
|
46
46
|
</react_native_1.Text>
|
|
47
47
|
</react_native_1.View>)}
|
|
48
48
|
</react_native_1.View>
|
|
49
|
-
</react_native_1.View>},GaugeChart=({data:
|
|
50
|
-
{
|
|
49
|
+
</react_native_1.View>},GaugeChart=({data:a,accentColor:t})=>{const r=Math.max(...a.map(o=>Math.abs(o.value)),1),e=26,n=5,l=2*Math.PI*e;return<react_native_1.ScrollView horizontal showsHorizontalScrollIndicator={!1}contentContainerStyle={{gap:16,paddingRight:16,paddingTop:6,paddingBottom:6}}>
|
|
50
|
+
{a.map(o=>{const c=Math.min(Math.abs(o.value)/r,1),p=Math.max(l-c*l,.001);return<react_native_1.View key={o.label}style={{alignItems:"center",width:70}}>
|
|
51
51
|
<react_native_svg_1.default width="60"height="60"viewBox="0 0 60 60">
|
|
52
|
-
<react_native_svg_1.Circle cx="30"cy="30"r={
|
|
53
|
-
<react_native_svg_1.Circle cx="30"cy="30"r={
|
|
52
|
+
<react_native_svg_1.Circle cx="30"cy="30"r={e}stroke={AppColors_1.AppColors.grayBorderSecondary}strokeWidth={n}fill="none"/>
|
|
53
|
+
<react_native_svg_1.Circle cx="30"cy="30"r={e}stroke={t}strokeWidth={n}fill="none"strokeLinecap="round"strokeDasharray={l}strokeDashoffset={p}rotation="-90"origin="30, 30"/>
|
|
54
54
|
</react_native_svg_1.default>
|
|
55
55
|
<react_native_1.View style={{position:"absolute",top:20,height:20,width:60,justifyContent:"center",alignItems:"center"}}>
|
|
56
56
|
<react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:13,color:AppColors_1.AppColors.primaryBlack,textAlign:"center"}}>
|
|
@@ -61,13 +61,13 @@
|
|
|
61
61
|
{o.label}
|
|
62
62
|
</react_native_1.Text>
|
|
63
63
|
</react_native_1.View>})}
|
|
64
|
-
</react_native_1.ScrollView>},CalendarChart=({data:
|
|
65
|
-
{
|
|
64
|
+
</react_native_1.ScrollView>},CalendarChart=({data:a,accentColor:t})=>{const r=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];return<react_native_1.ScrollView horizontal showsHorizontalScrollIndicator={!1}contentContainerStyle={{gap:16,paddingRight:16,paddingTop:6,paddingBottom:6}}>
|
|
65
|
+
{a.map((e,n)=>{const l=r[e.date.getMonth()],o=e.date.getDate(),c=e.date.getFullYear();return<react_native_1.View key={e.label+n}style={{width:70,alignItems:"center"}}>
|
|
66
66
|
<react_native_1.View style={{width:58,height:62,backgroundColor:AppColors_1.AppColors.white,borderRadius:8,borderWidth:1,borderColor:AppColors_1.AppColors.grayBorderSecondary,overflow:"hidden",shadowColor:AppColors_1.AppColors.black,shadowOpacity:.05,shadowRadius:4,shadowOffset:{width:0,height:2},elevation:2}}>
|
|
67
67
|
|
|
68
|
-
<react_native_1.View style={{backgroundColor:
|
|
68
|
+
<react_native_1.View style={{backgroundColor:t,height:18,justifyContent:"center",alignItems:"center"}}>
|
|
69
69
|
<react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:9,color:AppColors_1.AppColors.white,textTransform:"uppercase",letterSpacing:.5}}>
|
|
70
|
-
{
|
|
70
|
+
{l} {c}
|
|
71
71
|
</react_native_1.Text>
|
|
72
72
|
</react_native_1.View>
|
|
73
73
|
|
|
@@ -79,31 +79,31 @@
|
|
|
79
79
|
</react_native_1.View>
|
|
80
80
|
|
|
81
81
|
<react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:10,color:AppColors_1.AppColors.grayTextWeak,marginTop:8,textAlign:"center"}}numberOfLines={2}>
|
|
82
|
-
{
|
|
82
|
+
{e.label.replace(/_/g," ")}
|
|
83
83
|
</react_native_1.Text>
|
|
84
84
|
</react_native_1.View>})}
|
|
85
|
-
</react_native_1.ScrollView>},BarChart=({data:
|
|
86
|
-
<react_native_svg_1.default width="100%"height={
|
|
85
|
+
</react_native_1.ScrollView>},BarChart=({data:a,accentColor:t,maxBarWidth:r,isGradient:e=!1})=>{const n=Math.max(...a.map(o=>o.value),1),l=a.length*(BAR_HEIGHT+PADDING_Y)+10;return<react_native_1.View style={graphStyles.svgContainer}>
|
|
86
|
+
<react_native_svg_1.default width="100%"height={l}>
|
|
87
87
|
<react_native_svg_1.Defs>
|
|
88
88
|
<react_native_svg_1.LinearGradient id="barGrad"x1="0"y1="0"x2="1"y2="0">
|
|
89
|
-
<react_native_svg_1.Stop offset="0"stopColor={
|
|
90
|
-
<react_native_svg_1.Stop offset="1"stopColor={
|
|
89
|
+
<react_native_svg_1.Stop offset="0"stopColor={t}stopOpacity="0.6"/>
|
|
90
|
+
<react_native_svg_1.Stop offset="1"stopColor={t}stopOpacity="1"/>
|
|
91
91
|
</react_native_svg_1.LinearGradient>
|
|
92
92
|
</react_native_svg_1.Defs>
|
|
93
|
-
{
|
|
93
|
+
{a.map((o,c)=>{const p=c*(BAR_HEIGHT+PADDING_Y),u=Math.max(o.value/n*r,2);return<react_1.default.Fragment key={o.label}>
|
|
94
94
|
|
|
95
|
-
<react_native_svg_1.Text x={0}y={
|
|
95
|
+
<react_native_svg_1.Text x={0}y={p+12}fill={AppColors_1.AppColors.grayTextStrong}fontSize="11"fontFamily={AppFonts_1.AppFonts.interMedium}>
|
|
96
96
|
{o.label}
|
|
97
97
|
</react_native_svg_1.Text>
|
|
98
98
|
|
|
99
99
|
|
|
100
|
-
<react_native_svg_1.Line x1={0}y1={
|
|
100
|
+
<react_native_svg_1.Line x1={0}y1={p+24}x2={r}y2={p+24}stroke={AppColors_1.AppColors.grayBorderSecondary}strokeDasharray="4"/>
|
|
101
101
|
|
|
102
102
|
|
|
103
|
-
<react_native_svg_1.Rect x={0}y={
|
|
103
|
+
<react_native_svg_1.Rect x={0}y={p+16}width={u}height={14}fill={e?"url(#barGrad)":t}rx={4}opacity={.85}/>
|
|
104
104
|
|
|
105
105
|
|
|
106
|
-
<react_native_svg_1.Text x={u+6}y={
|
|
106
|
+
<react_native_svg_1.Text x={u+6}y={p+26}fill={AppColors_1.AppColors.primaryBlack}fontSize="11"fontFamily={AppFonts_1.AppFonts.interBold}>
|
|
107
107
|
{o.value}
|
|
108
108
|
</react_native_svg_1.Text>
|
|
109
109
|
</react_1.default.Fragment>})}
|
|
@@ -1,85 +1,85 @@
|
|
|
1
|
-
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(
|
|
2
|
-
<react_native_1.Animated.View style={[styles.animatedLayer,{transform:[{translateY:
|
|
3
|
-
<react_native_svg_1.default width={
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(o,t,e,r){r===void 0&&(r=e);var a=Object.getOwnPropertyDescriptor(t,e);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[e]}}),Object.defineProperty(o,r,a)}):(function(o,t,e,r){r===void 0&&(r=e),o[r]=t[e]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(o,t){Object.defineProperty(o,"default",{enumerable:!0,value:t})}):function(o,t){o.default=t}),__importStar=this&&this.__importStar||(function(){var o=function(t){return o=Object.getOwnPropertyNames||function(e){var r=[];for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(r[r.length]=a);return r},o(t)};return function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r=o(t),a=0;a<r.length;a++)r[a]!=="default"&&__createBinding(e,t,r[a]);return __setModuleDefault(e,t),e}})();Object.defineProperty(exports,"__esModule",{value:!0}),exports.AnimatedBrandOwl=void 0;const react_1=__importStar(require("react")),react_native_1=require("react-native"),react_native_svg_1=__importStar(require("react-native-svg")),AppColors_1=require("../styles/AppColors"),AnimatedBrandOwl=({size:o=64,shape:t="square"})=>{const e=(0,react_1.useRef)(new react_native_1.Animated.Value(0)).current;(0,react_1.useEffect)(()=>{const l=react_native_1.Animated.loop(react_native_1.Animated.sequence([react_native_1.Animated.timing(e,{toValue:1,duration:2200,easing:react_native_1.Easing.inOut(react_native_1.Easing.sin),useNativeDriver:!0}),react_native_1.Animated.timing(e,{toValue:0,duration:2200,easing:react_native_1.Easing.inOut(react_native_1.Easing.sin),useNativeDriver:!0})]));return l.start(),()=>l.stop()},[e]);const r=e.interpolate({inputRange:[0,1],outputRange:[0,-8]}),a=e.interpolate({inputRange:[0,.5,1],outputRange:["0deg","-1.8deg","0deg"]}),i=t==="square",s=i?Math.round(o*.2265):o/2;return<react_native_1.View style={[styles.container,{width:o,height:o,borderRadius:s}]}>
|
|
2
|
+
<react_native_1.Animated.View style={[styles.animatedLayer,{transform:[{translateY:r},{rotate:a}]}]}>
|
|
3
|
+
<react_native_svg_1.default width={o}height={o}viewBox="0 0 256 256"fill="none">
|
|
4
4
|
<react_native_svg_1.Defs>
|
|
5
5
|
|
|
6
6
|
<react_native_svg_1.LinearGradient id="owl_beam"x1="70"y1="74"x2="194"y2="187"gradientUnits="userSpaceOnUse">
|
|
7
|
-
<react_native_svg_1.Stop offset="0"stopColor=
|
|
8
|
-
<react_native_svg_1.Stop offset="0.5"stopColor=
|
|
9
|
-
<react_native_svg_1.Stop offset="1"stopColor=
|
|
7
|
+
<react_native_svg_1.Stop offset="0"stopColor={AppColors_1.AppColors.teal300}/>
|
|
8
|
+
<react_native_svg_1.Stop offset="0.5"stopColor={AppColors_1.AppColors.sky400}/>
|
|
9
|
+
<react_native_svg_1.Stop offset="1"stopColor={AppColors_1.AppColors.purple400}/>
|
|
10
10
|
</react_native_svg_1.LinearGradient>
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
<react_native_svg_1.RadialGradient id="owl_halo"cx="0.5"cy="0.45"r="0.55">
|
|
14
|
-
<react_native_svg_1.Stop offset="0"stopColor=
|
|
15
|
-
<react_native_svg_1.Stop offset="1"stopColor=
|
|
14
|
+
<react_native_svg_1.Stop offset="0"stopColor={AppColors_1.AppColors.sky400}stopOpacity={.25}/>
|
|
15
|
+
<react_native_svg_1.Stop offset="1"stopColor={AppColors_1.AppColors.sky400}stopOpacity={0}/>
|
|
16
16
|
</react_native_svg_1.RadialGradient>
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
<react_native_svg_1.LinearGradient id="owl_body"x1="78"y1="60"x2="178"y2="186"gradientUnits="userSpaceOnUse">
|
|
20
|
-
<react_native_svg_1.Stop offset="0"stopColor=
|
|
21
|
-
<react_native_svg_1.Stop offset="1"stopColor=
|
|
20
|
+
<react_native_svg_1.Stop offset="0"stopColor={AppColors_1.AppColors.navy700}/>
|
|
21
|
+
<react_native_svg_1.Stop offset="1"stopColor={AppColors_1.AppColors.navy900}/>
|
|
22
22
|
</react_native_svg_1.LinearGradient>
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
<react_native_svg_1.LinearGradient id="owl_beak"x1="120"y1="151"x2="136"y2="168"gradientUnits="userSpaceOnUse">
|
|
26
|
-
<react_native_svg_1.Stop offset="0"stopColor=
|
|
27
|
-
<react_native_svg_1.Stop offset="1"stopColor=
|
|
26
|
+
<react_native_svg_1.Stop offset="0"stopColor={AppColors_1.AppColors.amber300}/>
|
|
27
|
+
<react_native_svg_1.Stop offset="1"stopColor={AppColors_1.AppColors.orange400}/>
|
|
28
28
|
</react_native_svg_1.LinearGradient>
|
|
29
29
|
|
|
30
30
|
|
|
31
31
|
<react_native_svg_1.RadialGradient id="owl_iris"cx="0.42"cy="0.38"r="0.72">
|
|
32
|
-
<react_native_svg_1.Stop offset="0"stopColor=
|
|
33
|
-
<react_native_svg_1.Stop offset="0.5"stopColor=
|
|
34
|
-
<react_native_svg_1.Stop offset="1"stopColor=
|
|
32
|
+
<react_native_svg_1.Stop offset="0"stopColor={AppColors_1.AppColors.amber200}/>
|
|
33
|
+
<react_native_svg_1.Stop offset="0.5"stopColor={AppColors_1.AppColors.amber400}/>
|
|
34
|
+
<react_native_svg_1.Stop offset="1"stopColor={AppColors_1.AppColors.amber500}/>
|
|
35
35
|
</react_native_svg_1.RadialGradient>
|
|
36
36
|
|
|
37
37
|
|
|
38
38
|
<react_native_svg_1.RadialGradient id="owl_blush"cx="0.5"cy="0.5"r="0.5">
|
|
39
|
-
<react_native_svg_1.Stop offset="0"stopColor=
|
|
40
|
-
<react_native_svg_1.Stop offset="1"stopColor=
|
|
39
|
+
<react_native_svg_1.Stop offset="0"stopColor={AppColors_1.AppColors.rose400}stopOpacity={.6}/>
|
|
40
|
+
<react_native_svg_1.Stop offset="1"stopColor={AppColors_1.AppColors.rose400}stopOpacity={0}/>
|
|
41
41
|
</react_native_svg_1.RadialGradient>
|
|
42
42
|
|
|
43
43
|
|
|
44
44
|
<react_native_svg_1.LinearGradient id="owl_wing"x1="70"y1="120"x2="190"y2="206"gradientUnits="userSpaceOnUse">
|
|
45
|
-
<react_native_svg_1.Stop offset="0"stopColor=
|
|
46
|
-
<react_native_svg_1.Stop offset="1"stopColor=
|
|
45
|
+
<react_native_svg_1.Stop offset="0"stopColor={AppColors_1.AppColors.navy800}/>
|
|
46
|
+
<react_native_svg_1.Stop offset="1"stopColor={AppColors_1.AppColors.navy950}/>
|
|
47
47
|
</react_native_svg_1.LinearGradient>
|
|
48
48
|
|
|
49
49
|
|
|
50
50
|
<react_native_svg_1.LinearGradient id="owl_faceplate"x1="70"y1="72"x2="186"y2="152"gradientUnits="userSpaceOnUse">
|
|
51
|
-
<react_native_svg_1.Stop offset="0"stopColor=
|
|
52
|
-
<react_native_svg_1.Stop offset="1"stopColor=
|
|
51
|
+
<react_native_svg_1.Stop offset="0"stopColor={AppColors_1.AppColors.steel500}/>
|
|
52
|
+
<react_native_svg_1.Stop offset="1"stopColor={AppColors_1.AppColors.navy700}/>
|
|
53
53
|
</react_native_svg_1.LinearGradient>
|
|
54
54
|
|
|
55
55
|
|
|
56
56
|
<react_native_svg_1.RadialGradient id="owl_lensglass"cx="0.4"cy="0.32"r="0.75">
|
|
57
|
-
<react_native_svg_1.Stop offset="0"stopColor=
|
|
58
|
-
<react_native_svg_1.Stop offset="0.7"stopColor=
|
|
59
|
-
<react_native_svg_1.Stop offset="1"stopColor=
|
|
57
|
+
<react_native_svg_1.Stop offset="0"stopColor={AppColors_1.AppColors.sky300}stopOpacity={.25}/>
|
|
58
|
+
<react_native_svg_1.Stop offset="0.7"stopColor={AppColors_1.AppColors.sky300}stopOpacity={.06}/>
|
|
59
|
+
<react_native_svg_1.Stop offset="1"stopColor={AppColors_1.AppColors.sky300}stopOpacity={0}/>
|
|
60
60
|
</react_native_svg_1.RadialGradient>
|
|
61
61
|
|
|
62
62
|
|
|
63
63
|
<react_native_svg_1.LinearGradient id="owl_belly"x1="94"y1="126"x2="162"y2="212"gradientUnits="userSpaceOnUse">
|
|
64
|
-
<react_native_svg_1.Stop offset="0"stopColor=
|
|
65
|
-
<react_native_svg_1.Stop offset="1"stopColor=
|
|
64
|
+
<react_native_svg_1.Stop offset="0"stopColor={AppColors_1.AppColors.steel600}/>
|
|
65
|
+
<react_native_svg_1.Stop offset="1"stopColor={AppColors_1.AppColors.navy700}/>
|
|
66
66
|
</react_native_svg_1.LinearGradient>
|
|
67
67
|
|
|
68
68
|
|
|
69
69
|
<react_native_svg_1.LinearGradient id="owl_tile"x1="30"y1="30"x2="210"y2="222"gradientUnits="userSpaceOnUse">
|
|
70
|
-
<react_native_svg_1.Stop offset="0"stopColor=
|
|
71
|
-
<react_native_svg_1.Stop offset="1"stopColor=
|
|
70
|
+
<react_native_svg_1.Stop offset="0"stopColor={AppColors_1.AppColors.navy900}/>
|
|
71
|
+
<react_native_svg_1.Stop offset="1"stopColor={AppColors_1.AppColors.navy950}/>
|
|
72
72
|
</react_native_svg_1.LinearGradient>
|
|
73
73
|
|
|
74
74
|
|
|
75
75
|
<react_native_svg_1.LinearGradient id="owl_edge"x1="14"y1="22"x2="220"y2="228"gradientUnits="userSpaceOnUse">
|
|
76
|
-
<react_native_svg_1.Stop offset="0"stopColor=
|
|
77
|
-
<react_native_svg_1.Stop offset="1"stopColor=
|
|
76
|
+
<react_native_svg_1.Stop offset="0"stopColor={AppColors_1.AppColors.steel600}/>
|
|
77
|
+
<react_native_svg_1.Stop offset="1"stopColor={AppColors_1.AppColors.navy800}/>
|
|
78
78
|
</react_native_svg_1.LinearGradient>
|
|
79
79
|
</react_native_svg_1.Defs>
|
|
80
80
|
|
|
81
81
|
|
|
82
|
-
{
|
|
82
|
+
{i?<>
|
|
83
83
|
<react_native_svg_1.Rect x={8}y={8}width={240}height={240}rx={58}fill="url(#owl_tile)"/>
|
|
84
84
|
<react_native_svg_1.Rect x={8.6}y={8.6}width={238.8}height={238.8}rx={57.4}fill="none"stroke="url(#owl_edge)"strokeOpacity={.75}strokeWidth={1.6}/>
|
|
85
85
|
<react_native_svg_1.Circle cx={128}cy={128}r={104}fill="url(#owl_halo)"/>
|
|
@@ -90,7 +90,7 @@
|
|
|
90
90
|
</>}
|
|
91
91
|
|
|
92
92
|
|
|
93
|
-
<react_native_svg_1.G transform={
|
|
93
|
+
<react_native_svg_1.G transform={i?"translate(128 128) scale(1.16) translate(-128 -134)":"translate(128 132) scale(1.08) translate(-128 -134)"}>
|
|
94
94
|
|
|
95
95
|
<react_native_svg_1.Path d="M74 124 C58 154 60 190 86 204 C79 176 77 148 88 126 Z"fill="url(#owl_wing)"stroke="url(#owl_beam)"strokeWidth={2.5}strokeOpacity={.5}/>
|
|
96
96
|
<react_native_svg_1.Path d="M182 124 C198 154 196 190 170 204 C177 176 179 148 168 126 Z"fill="url(#owl_wing)"stroke="url(#owl_beam)"strokeWidth={2.5}strokeOpacity={.5}/>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.AppHeaderLogo=void 0;const react_1=__importDefault(require("react")),react_native_1=require("react-native"),
|
|
2
|
-
{
|
|
3
|
-
</react_native_1.View>}return<react_native_1.View style={[logoStyles.imageContainer,{width:e,height:e,borderRadius:
|
|
4
|
-
<react_native_1.Image source={
|
|
5
|
-
</react_native_1.View>}return<react_native_1.View style={[logoStyles.
|
|
6
|
-
<
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.AppHeaderLogo=void 0;const react_1=__importDefault(require("react")),react_native_1=require("react-native"),BrandCircleIcon_1=require("./BrandCircleIcon"),AppHeaderLogo=({size:e=64,customIcon:t,shape:n="circle"})=>{const r=n==="circle"?e/2:Math.round(e*.2265);if(t){if(react_1.default.isValidElement(t)){const a=react_1.default.cloneElement(t,{size:e,width:e,height:e});return<react_native_1.View style={[logoStyles.container,{width:e,height:e,borderRadius:r}]}>
|
|
2
|
+
{a}
|
|
3
|
+
</react_native_1.View>}return<react_native_1.View style={[logoStyles.imageContainer,{width:e,height:e,borderRadius:r}]}>
|
|
4
|
+
<react_native_1.Image source={t}style={[logoStyles.image,{borderRadius:r}]}resizeMode="cover"/>
|
|
5
|
+
</react_native_1.View>}return<react_native_1.View style={[logoStyles.container,{width:e,height:e,borderRadius:r}]}>
|
|
6
|
+
<BrandCircleIcon_1.BrandCircleIcon size={e}/>
|
|
7
7
|
</react_native_1.View>};exports.AppHeaderLogo=AppHeaderLogo;const logoStyles=react_native_1.StyleSheet.create({container:{overflow:"hidden",alignItems:"center",justifyContent:"center",backgroundColor:"transparent"},imageContainer:{overflow:"hidden",backgroundColor:"transparent",alignItems:"center",justifyContent:"center"},image:{width:"100%",height:"100%"}});exports.default=exports.AppHeaderLogo;
|