react-native-inapp-inspector 2.4.2 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (202) hide show
  1. package/android/src/main/java/com/inappinspector/NetworkInspectorModule.kt +523 -2
  2. package/dist/commonjs/capture.d.ts +2 -0
  3. package/dist/commonjs/capture.js +1 -1
  4. package/dist/commonjs/components/AnalyticsDetail.js +23 -23
  5. package/dist/commonjs/components/AnalyticsEventCard.js +1 -1
  6. package/dist/commonjs/components/AnalyticsGraph.js +44 -44
  7. package/dist/commonjs/components/AnimatedBrandOwl.js +32 -32
  8. package/dist/commonjs/components/AppHeaderLogo.js +6 -6
  9. package/dist/commonjs/components/BrandCircleIcon.js +28 -28
  10. package/dist/commonjs/components/BrandSquareIcon.js +33 -33
  11. package/dist/commonjs/components/ConsoleLogCard.js +1 -1
  12. package/dist/commonjs/components/Inspector/AnalyticsTab.js +2 -2
  13. package/dist/commonjs/components/Inspector/ConfirmationModal.js +23 -25
  14. package/dist/commonjs/components/Inspector/ConsoleTab.js +5 -5
  15. package/dist/commonjs/components/Inspector/CrashTab.js +44 -11
  16. package/dist/commonjs/components/Inspector/DeviceInfoTab.js +1 -1
  17. package/dist/commonjs/components/Inspector/FabLauncher.js +30 -25
  18. package/dist/commonjs/components/Inspector/FloatingCaptureWidget.d.ts +3 -0
  19. package/dist/commonjs/components/Inspector/FloatingCaptureWidget.js +54 -0
  20. package/dist/commonjs/components/Inspector/GlobalCrashScreenModal.d.ts +11 -0
  21. package/dist/commonjs/components/Inspector/GlobalCrashScreenModal.js +234 -0
  22. package/dist/commonjs/components/Inspector/InspectorHeader.js +137 -127
  23. package/dist/commonjs/components/Inspector/LanguageSelectorModal.d.ts +1 -1
  24. package/dist/commonjs/components/Inspector/LanguageSelectorModal.js +114 -32
  25. package/dist/commonjs/components/Inspector/MainScreen.js +26 -19
  26. package/dist/commonjs/components/Inspector/MediaGalleryTab.js +38 -35
  27. package/dist/commonjs/components/Inspector/MediaPreviewModal.d.ts +36 -0
  28. package/dist/commonjs/components/Inspector/MediaPreviewModal.js +345 -123
  29. package/dist/commonjs/components/Inspector/NetworkTab.js +14 -14
  30. package/dist/commonjs/components/Inspector/PushCard.js +1 -1
  31. package/dist/commonjs/components/Inspector/PushDetail.js +9 -9
  32. package/dist/commonjs/components/Inspector/PushTab.js +3 -3
  33. package/dist/commonjs/components/Inspector/ReduxTab.js +9 -7
  34. package/dist/commonjs/components/Inspector/SecondaryTelemetryStrip.d.ts +2 -0
  35. package/dist/commonjs/components/Inspector/SecondaryTelemetryStrip.js +43 -0
  36. package/dist/commonjs/components/Inspector/SettingsPanel.js +102 -73
  37. package/dist/commonjs/components/Inspector/SocketCard.js +1 -1
  38. package/dist/commonjs/components/Inspector/SocketDetail.js +73 -63
  39. package/dist/commonjs/components/Inspector/SocketTab.js +4 -4
  40. package/dist/commonjs/components/Inspector/StorageTab.js +10 -10
  41. package/dist/commonjs/components/Inspector/SupportModal.js +2 -2
  42. package/dist/commonjs/components/Inspector/SupportPage.js +1 -1
  43. package/dist/commonjs/components/JsonViewer.js +47 -45
  44. package/dist/commonjs/components/LogCard.js +22 -20
  45. package/dist/commonjs/components/ModuleErrorBoundary.js +5 -5
  46. package/dist/commonjs/components/NetworkIcons.d.ts +27 -0
  47. package/dist/commonjs/components/NetworkIcons.js +103 -5
  48. package/dist/commonjs/constants/version.d.ts +1 -1
  49. package/dist/commonjs/constants/version.js +1 -1
  50. package/dist/commonjs/crash.d.ts +1 -1
  51. package/dist/commonjs/crash.js +1 -1
  52. package/dist/commonjs/customHooks/crashHandler.d.ts +2 -1
  53. package/dist/commonjs/customHooks/crashHandler.js +7 -7
  54. package/dist/commonjs/editor.d.ts +13 -0
  55. package/dist/commonjs/editor.js +1 -0
  56. package/dist/commonjs/helpers/index.d.ts +1 -0
  57. package/dist/commonjs/helpers/index.js +1 -1
  58. package/dist/commonjs/helpers/settingsStore.js +1 -1
  59. package/dist/commonjs/helpers/telemetry.js +1 -1
  60. package/dist/commonjs/i18n/index.js +1 -1
  61. package/dist/commonjs/i18n/locales/ar.json +1 -1
  62. package/dist/commonjs/i18n/locales/bn.json +1 -1
  63. package/dist/commonjs/i18n/locales/de.json +1 -1
  64. package/dist/commonjs/i18n/locales/en.json +1 -1
  65. package/dist/commonjs/i18n/locales/es.json +1 -1
  66. package/dist/commonjs/i18n/locales/fr.json +1 -1
  67. package/dist/commonjs/i18n/locales/gu.json +1 -1
  68. package/dist/commonjs/i18n/locales/hi.json +1 -1
  69. package/dist/commonjs/i18n/locales/id.json +1 -1
  70. package/dist/commonjs/i18n/locales/it.json +1 -1
  71. package/dist/commonjs/i18n/locales/ja.json +1 -1
  72. package/dist/commonjs/i18n/locales/kn.json +1 -1
  73. package/dist/commonjs/i18n/locales/ko.json +1 -1
  74. package/dist/commonjs/i18n/locales/ml.json +1 -1
  75. package/dist/commonjs/i18n/locales/mr.json +1 -1
  76. package/dist/commonjs/i18n/locales/nl.json +1 -1
  77. package/dist/commonjs/i18n/locales/pa.json +1 -1
  78. package/dist/commonjs/i18n/locales/pl.json +1 -1
  79. package/dist/commonjs/i18n/locales/pt.json +1 -1
  80. package/dist/commonjs/i18n/locales/ru.json +1 -1
  81. package/dist/commonjs/i18n/locales/ta.json +1 -1
  82. package/dist/commonjs/i18n/locales/te.json +1 -1
  83. package/dist/commonjs/i18n/locales/tr.json +1 -1
  84. package/dist/commonjs/i18n/locales/vi.json +1 -1
  85. package/dist/commonjs/i18n/locales/zh.json +1 -1
  86. package/dist/commonjs/index.d.ts +4 -1
  87. package/dist/commonjs/index.js +3 -3
  88. package/dist/commonjs/native/NativeInspector.d.ts +3 -0
  89. package/dist/commonjs/native/NativeInspector.js +1 -1
  90. package/dist/commonjs/native/NativeNetworkInspector.d.ts +4 -0
  91. package/dist/commonjs/styles/AppColors.d.ts +42 -2
  92. package/dist/commonjs/styles/AppColors.js +1 -1
  93. package/dist/commonjs/styles/common.js +1 -1
  94. package/dist/commonjs/styles/index.d.ts +7 -0
  95. package/dist/commonjs/styles/index.js +1 -1
  96. package/dist/commonjs/types/editor.d.ts +96 -0
  97. package/dist/commonjs/types/editor.js +1 -0
  98. package/dist/commonjs/types/interfaces.d.ts +21 -0
  99. package/dist/esm/capture.d.ts +2 -0
  100. package/dist/esm/capture.js +1 -1
  101. package/dist/esm/components/AnalyticsDetail.js +31 -31
  102. package/dist/esm/components/AnalyticsEventCard.js +1 -1
  103. package/dist/esm/components/AnalyticsGraph.js +74 -74
  104. package/dist/esm/components/AnimatedBrandOwl.js +114 -114
  105. package/dist/esm/components/AppHeaderLogo.js +7 -7
  106. package/dist/esm/components/BrandCircleIcon.js +70 -70
  107. package/dist/esm/components/BrandSquareIcon.js +61 -61
  108. package/dist/esm/components/ConsoleLogCard.js +1 -1
  109. package/dist/esm/components/Inspector/AnalyticsTab.js +14 -14
  110. package/dist/esm/components/Inspector/ConfirmationModal.js +23 -25
  111. package/dist/esm/components/Inspector/ConsoleTab.js +17 -17
  112. package/dist/esm/components/Inspector/CrashTab.js +202 -169
  113. package/dist/esm/components/Inspector/DeviceInfoTab.js +75 -75
  114. package/dist/esm/components/Inspector/FabLauncher.js +56 -51
  115. package/dist/esm/components/Inspector/FloatingCaptureWidget.d.ts +3 -0
  116. package/dist/esm/components/Inspector/FloatingCaptureWidget.js +54 -0
  117. package/dist/esm/components/Inspector/GlobalCrashScreenModal.d.ts +11 -0
  118. package/dist/esm/components/Inspector/GlobalCrashScreenModal.js +234 -0
  119. package/dist/esm/components/Inspector/InspectorHeader.js +162 -152
  120. package/dist/esm/components/Inspector/LanguageSelectorModal.d.ts +1 -1
  121. package/dist/esm/components/Inspector/LanguageSelectorModal.js +140 -58
  122. package/dist/esm/components/Inspector/MainScreen.js +61 -54
  123. package/dist/esm/components/Inspector/MediaGalleryTab.js +55 -52
  124. package/dist/esm/components/Inspector/MediaPreviewModal.d.ts +36 -0
  125. package/dist/esm/components/Inspector/MediaPreviewModal.js +345 -123
  126. package/dist/esm/components/Inspector/NetworkTab.js +74 -74
  127. package/dist/esm/components/Inspector/PushCard.js +1 -1
  128. package/dist/esm/components/Inspector/PushDetail.js +18 -18
  129. package/dist/esm/components/Inspector/PushTab.js +1 -1
  130. package/dist/esm/components/Inspector/ReduxTab.js +18 -16
  131. package/dist/esm/components/Inspector/SecondaryTelemetryStrip.d.ts +2 -0
  132. package/dist/esm/components/Inspector/SecondaryTelemetryStrip.js +43 -0
  133. package/dist/esm/components/Inspector/SettingsPanel.js +224 -195
  134. package/dist/esm/components/Inspector/SocketCard.js +8 -8
  135. package/dist/esm/components/Inspector/SocketDetail.js +106 -96
  136. package/dist/esm/components/Inspector/SocketTab.js +18 -18
  137. package/dist/esm/components/Inspector/StorageTab.js +47 -47
  138. package/dist/esm/components/Inspector/SupportModal.js +64 -64
  139. package/dist/esm/components/Inspector/SupportPage.js +5 -5
  140. package/dist/esm/components/JsonViewer.js +51 -49
  141. package/dist/esm/components/LogCard.js +41 -39
  142. package/dist/esm/components/ModuleErrorBoundary.js +10 -10
  143. package/dist/esm/components/NetworkIcons.d.ts +27 -0
  144. package/dist/esm/components/NetworkIcons.js +101 -3
  145. package/dist/esm/constants/version.d.ts +1 -1
  146. package/dist/esm/constants/version.js +1 -1
  147. package/dist/esm/crash.d.ts +1 -1
  148. package/dist/esm/crash.js +1 -1
  149. package/dist/esm/customHooks/crashHandler.d.ts +2 -1
  150. package/dist/esm/customHooks/crashHandler.js +7 -7
  151. package/dist/esm/editor.d.ts +13 -0
  152. package/dist/esm/editor.js +1 -0
  153. package/dist/esm/helpers/index.d.ts +1 -0
  154. package/dist/esm/helpers/index.js +4 -4
  155. package/dist/esm/helpers/settingsStore.js +1 -1
  156. package/dist/esm/helpers/telemetry.js +1 -1
  157. package/dist/esm/i18n/index.js +1 -1
  158. package/dist/esm/i18n/locales/ar.json +1 -1
  159. package/dist/esm/i18n/locales/bn.json +1 -1
  160. package/dist/esm/i18n/locales/de.json +1 -1
  161. package/dist/esm/i18n/locales/en.json +1 -1
  162. package/dist/esm/i18n/locales/es.json +1 -1
  163. package/dist/esm/i18n/locales/fr.json +1 -1
  164. package/dist/esm/i18n/locales/gu.json +1 -1
  165. package/dist/esm/i18n/locales/hi.json +1 -1
  166. package/dist/esm/i18n/locales/id.json +1 -1
  167. package/dist/esm/i18n/locales/it.json +1 -1
  168. package/dist/esm/i18n/locales/ja.json +1 -1
  169. package/dist/esm/i18n/locales/kn.json +1 -1
  170. package/dist/esm/i18n/locales/ko.json +1 -1
  171. package/dist/esm/i18n/locales/ml.json +1 -1
  172. package/dist/esm/i18n/locales/mr.json +1 -1
  173. package/dist/esm/i18n/locales/nl.json +1 -1
  174. package/dist/esm/i18n/locales/pa.json +1 -1
  175. package/dist/esm/i18n/locales/pl.json +1 -1
  176. package/dist/esm/i18n/locales/pt.json +1 -1
  177. package/dist/esm/i18n/locales/ru.json +1 -1
  178. package/dist/esm/i18n/locales/ta.json +1 -1
  179. package/dist/esm/i18n/locales/te.json +1 -1
  180. package/dist/esm/i18n/locales/tr.json +1 -1
  181. package/dist/esm/i18n/locales/vi.json +1 -1
  182. package/dist/esm/i18n/locales/zh.json +1 -1
  183. package/dist/esm/index.d.ts +4 -1
  184. package/dist/esm/index.js +5 -5
  185. package/dist/esm/native/NativeInspector.d.ts +3 -0
  186. package/dist/esm/native/NativeInspector.js +1 -1
  187. package/dist/esm/native/NativeNetworkInspector.d.ts +4 -0
  188. package/dist/esm/styles/AppColors.d.ts +42 -2
  189. package/dist/esm/styles/AppColors.js +1 -1
  190. package/dist/esm/styles/common.js +1 -1
  191. package/dist/esm/styles/index.d.ts +7 -0
  192. package/dist/esm/styles/index.js +1 -1
  193. package/dist/esm/types/editor.d.ts +96 -0
  194. package/dist/esm/types/editor.js +1 -0
  195. package/dist/esm/types/interfaces.d.ts +21 -0
  196. package/editor.d.ts +1 -0
  197. package/editor.js +1 -0
  198. package/ios/NetworkInspectorModule.mm +429 -0
  199. package/package.json +10 -1
  200. package/react-native-inapp-inspector.podspec +1 -1
  201. package/src/native/NativeInspector.ts +57 -4
  202. package/src/native/NativeNetworkInspector.ts +4 -0
@@ -1,111 +1,111 @@
1
- import $ from"react";import{View as T,Text as B,ScrollView as L,Dimensions as J,StyleSheet as K}from"react-native";import A,{Rect as Y,Text as W,Line as Z,Circle as D,Path as Q,Defs as U,LinearGradient as X,Stop as G}from"react-native-svg";import{AppColors as t}from"../styles/AppColors";import{AppFonts as C}from"../styles/AppFonts";const O=24,R=12,ee=({event:i,accentColor:s})=>{const r=i.params||{},c=(Array.isArray(r.items)?r.items:null)?.filter(a=>typeof a.price=="number")||[],l=[];Object.entries(r).forEach(([a,k])=>{typeof k=="number"&&!a.toLowerCase().includes("id")&&!a.toLowerCase().includes("timestamp")&&l.push({key:a,value:k})});const e=[];Object.entries(r).forEach(([a,k])=>{if(typeof k=="string"&&k.length>=10&&/^\d{4}-\d{2}-\d{2}/.test(k)){const V=new Date(k);isNaN(V.getTime())||e.push({key:a,date:V})}});const o={string:0,number:0,boolean:0,object:0},h=[];Object.entries(r).forEach(([a,k])=>{const V=typeof k;V==="string"?(o.string++,h.push({label:a,value:k.length})):V==="number"?o.number++:V==="boolean"?o.boolean++:V==="object"&&k!==null&&o.object++});const v=[{label:"Strings",value:o.string,color:t.purple},{label:"Numbers",value:o.number,color:t.skyBlue},{label:"Booleans",value:o.boolean,color:t.amber500},{label:"Objects",value:o.object,color:t.greenColor}].filter(a=>a.value>0);h.sort((a,k)=>k.value-a.value);const M=h.slice(0,5),F=c.length>0,N=l.length>0,H=e.length>0,_=M.length>0,E=v.length>0,z=J.get("window").width-60-40;return<T style={S.container}>
2
- <B style={S.headerTitle}>Data Visualization</B>
1
+ import L from"react";import{View as T,Text as S,ScrollView as W,Dimensions as Y,StyleSheet as Z}from"react-native";import A,{Rect as Q,Text as O,Line as U,Circle as D,Path as X,Defs as Tt,LinearGradient as St,Stop as P}from"react-native-svg";import{AppColors as a}from"../styles/AppColors";import{AppFonts as C}from"../styles/AppFonts";import{useTranslation as Bt}from"../i18n";const R=24,G=12,Ct=({event:n,accentColor:s})=>{const{t:o}=Bt(),e=n.params||{},i=(Array.isArray(e.items)?e.items:null)?.filter(r=>typeof r.price=="number")||[],t=[];Object.entries(e).forEach(([r,l])=>{typeof l=="number"&&!r.toLowerCase().includes("id")&&!r.toLowerCase().includes("timestamp")&&t.push({key:r,value:l})});const c=[],b=/^\d{4}-\d{2}-\d{2}/;Object.entries(e).forEach(([r,l])=>{if(typeof l=="string"&&l.length>=10&&b.test(l)){const V=new Date(l);isNaN(V.getTime())||c.push({key:r,date:V})}});const B={};Object.values(e).forEach(r=>{let l=typeof r;r===null&&(l="null"),Array.isArray(r)&&(l="array"),B[l]=(B[l]||0)+1});const v=[a.purple,a.skyBlue,a.amber500,a.greenColor],M=Object.entries(B).map(([r,l],V)=>({label:r,value:l,color:v[V%v.length]})),F=[];Object.entries(e).forEach(([r,l])=>{typeof l=="string"&&F.push({label:r,value:l.length})}),F.sort((r,l)=>l.value-r.value);const z=F.slice(0,5),N=i.length>0,E=t.length>0,_=c.length>0,J=z.length>0,K=M.length>0,$=Y.get("window").width-60-40;return<T style={k.container}>
2
+ <S style={k.headerTitle}>{o("analytics.dataVisualization","Data Visualization")}</S>
3
3
 
4
- {E&&<T style={S.chartBlock}>
5
- <B style={S.chartTitle}>Data Types Breakdown</B>
6
- <Te data={v}/>
4
+ {K&&<T style={k.chartBlock}>
5
+ <S style={k.chartTitle}>{o("analytics.dataTypesBreakdown","Data Types Breakdown")}</S>
6
+ <Mt data={M}/>
7
7
  </T>}
8
8
 
9
- {_&&<T style={S.chartBlock}>
10
- <B style={S.chartTitle}>Highest Payload Strings</B>
11
- <P data={M}accentColor={t.purple}maxBarWidth={z}isGradient/>
9
+ {J&&<T style={k.chartBlock}>
10
+ <S style={k.chartTitle}>{o("analytics.highestPayloadStrings","Highest Payload Strings")}</S>
11
+ <H data={z}accentColor={a.purple}maxBarWidth={$}isGradient/>
12
12
  </T>}
13
13
 
14
- {N&&<T style={S.chartBlock}>
15
- <B style={S.chartTitle}>Top-Level Metrics</B>
16
- <Se data={l.map(a=>({label:a.key,value:a.value}))}accentColor={s}/>
14
+ {E&&<T style={k.chartBlock}>
15
+ <S style={k.chartTitle}>{o("analytics.topLevelMetrics","Top-Level Metrics")}</S>
16
+ <Vt data={t.map(r=>({label:r.key,value:r.value}))}accentColor={s}/>
17
17
  </T>}
18
18
 
19
- {H&&<T style={S.chartBlock}>
20
- <B style={S.chartTitle}>Important Dates</B>
21
- <Be data={e.map(a=>({label:a.key,date:a.date}))}accentColor={s}/>
19
+ {_&&<T style={k.chartBlock}>
20
+ <S style={k.chartTitle}>{o("analytics.importantDates","Important Dates")}</S>
21
+ <Dt data={c.map(r=>({label:r.key,date:r.date}))}accentColor={s}/>
22
22
  </T>}
23
23
 
24
- {F&&<T style={S.chartBlock}>
25
- <B style={S.chartTitle}>Item Prices</B>
26
- <P data={c.map((a,k)=>({label:a.item_name||a.item_id||`Item ${k+1}`,value:a.price}))}accentColor={t.successGreen}maxBarWidth={z}isGradient={!1}/>
24
+ {N&&<T style={k.chartBlock}>
25
+ <S style={k.chartTitle}>{o("analytics.itemPrices","Item Prices")}</S>
26
+ <H data={i.map((r,l)=>({label:r.item_name||r.item_id||`Item ${l+1}`,value:r.price}))}accentColor={a.successGreen}maxBarWidth={$}isGradient={!1}/>
27
27
  </T>}
28
- </T>},I=(i,s,r,n)=>{const c=(n-90)*Math.PI/180;return{x:i+r*Math.cos(c),y:s+r*Math.sin(c)}},te=(i,s,r,n,c,l)=>{const e=I(i,s,r,l),o=I(i,s,r,c),h=I(i,s,n,l),v=I(i,s,n,c),M=l-c<=180?"0":"1";return`
29
- M ${e.x} ${e.y}
30
- A ${r} ${r} 0 ${M} 0 ${o.x} ${o.y}
31
- L ${v.x} ${v.y}
32
- A ${n} ${n} 0 ${M} 1 ${h.x} ${h.y}
28
+ </T>},I=(n,s,o,e)=>{const h=(e-90)*Math.PI/180;return{x:n+o*Math.cos(h),y:s+o*Math.sin(h)}},vt=(n,s,o,e,h,i)=>{const t=I(n,s,o,i),c=I(n,s,o,h),b=I(n,s,e,i),B=I(n,s,e,h),v=i-h<=180?"0":"1";return`
29
+ M ${t.x} ${t.y}
30
+ A ${o} ${o} 0 ${v} 0 ${c.x} ${c.y}
31
+ L ${B.x} ${B.y}
32
+ A ${e} ${e} 0 ${v} 1 ${b.x} ${b.y}
33
33
  Z
34
- `},Te=({data:i})=>{const s=i.reduce((e,o)=>e+o.value,0);if(s===0)return null;let r=0;const n=50,c=30,l=60;return<T style={{flexDirection:"row",alignItems:"center"}}>
34
+ `},Mt=({data:n})=>{const s=n.reduce((t,c)=>t+c.value,0);if(s===0)return null;let o=0;const e=50,h=30,i=60;return<T style={{flexDirection:"row",alignItems:"center"}}>
35
35
  <A width="120"height="120"viewBox="0 0 120 120">
36
- {i.map((e,o)=>{if(e.value===0)return null;const h=e.value/s*360,v=r,M=r+h;if(r+=h,h===360)return<$.Fragment key={o}>
37
- <D cx={l}cy={l}r={n}fill={e.color}/>
38
- <D cx={l}cy={l}r={c}fill={t.primaryLight}/>
39
- </$.Fragment>;const F=te(l,l,n,c,v,M);return<Q key={o}d={F}fill={e.color}/>})}
36
+ {n.map((t,c)=>{if(t.value===0)return null;const b=t.value/s*360,B=o,v=o+b;if(o+=b,b===360)return<L.Fragment key={c}>
37
+ <D cx={i}cy={i}r={e}fill={t.color}/>
38
+ <D cx={i}cy={i}r={h}fill={a.primaryLight}/>
39
+ </L.Fragment>;const M=vt(i,i,e,h,B,v);return<X key={c}d={M}fill={t.color}/>})}
40
40
  </A>
41
41
  <T style={{marginLeft:16,flex:1,gap:6}}>
42
- {i.map((e,o)=>e.value===0?null:<T key={o}style={{flexDirection:"row",alignItems:"center",gap:6}}>
43
- <T style={{width:10,height:10,borderRadius:5,backgroundColor:e.color}}/>
44
- <B style={{fontFamily:C.interMedium,fontSize:11,color:t.grayTextStrong}}>
45
- {e.label} ({e.value})
46
- </B>
42
+ {n.map((t,c)=>t.value===0?null:<T key={c}style={{flexDirection:"row",alignItems:"center",gap:6}}>
43
+ <T style={{width:10,height:10,borderRadius:5,backgroundColor:t.color}}/>
44
+ <S style={{fontFamily:C.interMedium,fontSize:11,color:a.grayTextStrong}}>
45
+ {t.label} ({t.value})
46
+ </S>
47
47
  </T>)}
48
48
  </T>
49
- </T>},Se=({data:i,accentColor:s})=>{const r=Math.max(...i.map(e=>Math.abs(e.value)),1),n=26,c=5,l=2*Math.PI*n;return<L horizontal showsHorizontalScrollIndicator={!1}contentContainerStyle={{gap:16,paddingRight:16,paddingTop:6,paddingBottom:6}}>
50
- {i.map(e=>{const o=Math.min(Math.abs(e.value)/r,1),h=Math.max(l-o*l,.001);return<T key={e.label}style={{alignItems:"center",width:70}}>
49
+ </T>},Vt=({data:n,accentColor:s})=>{const o=Math.max(...n.map(t=>Math.abs(t.value)),1),e=26,h=5,i=2*Math.PI*e;return<W horizontal showsHorizontalScrollIndicator={!1}contentContainerStyle={{gap:16,paddingRight:16,paddingTop:6,paddingBottom:6}}>
50
+ {n.map(t=>{const c=Math.min(Math.abs(t.value)/o,1),b=Math.max(i-c*i,.001);return<T key={t.label}style={{alignItems:"center",width:70}}>
51
51
  <A width="60"height="60"viewBox="0 0 60 60">
52
- <D cx="30"cy="30"r={n}stroke={t.grayBorderSecondary}strokeWidth={c}fill="none"/>
53
- <D cx="30"cy="30"r={n}stroke={s}strokeWidth={c}fill="none"strokeLinecap="round"strokeDasharray={l}strokeDashoffset={h}rotation="-90"origin="30, 30"/>
52
+ <D cx="30"cy="30"r={e}stroke={a.grayBorderSecondary}strokeWidth={h}fill="none"/>
53
+ <D cx="30"cy="30"r={e}stroke={s}strokeWidth={h}fill="none"strokeLinecap="round"strokeDasharray={i}strokeDashoffset={b}rotation="-90"origin="30, 30"/>
54
54
  </A>
55
55
  <T style={{position:"absolute",top:20,height:20,width:60,justifyContent:"center",alignItems:"center"}}>
56
- <B style={{fontFamily:C.interBold,fontSize:13,color:t.primaryBlack,textAlign:"center"}}>
57
- {e.value>=1e3?(e.value/1e3).toFixed(1)+"k":e.value}
58
- </B>
56
+ <S style={{fontFamily:C.interBold,fontSize:13,color:a.primaryBlack,textAlign:"center"}}>
57
+ {t.value>=1e3?(t.value/1e3).toFixed(1)+"k":t.value}
58
+ </S>
59
59
  </T>
60
- <B style={{fontFamily:C.interMedium,fontSize:10,color:t.grayTextWeak,marginTop:6,textAlign:"center"}}numberOfLines={1}>
61
- {e.label}
62
- </B>
60
+ <S style={{fontFamily:C.interMedium,fontSize:10,color:a.grayTextWeak,marginTop:6,textAlign:"center"}}numberOfLines={1}>
61
+ {t.label}
62
+ </S>
63
63
  </T>})}
64
- </L>},Be=({data:i,accentColor:s})=>{const r=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];return<L horizontal showsHorizontalScrollIndicator={!1}contentContainerStyle={{gap:16,paddingRight:16,paddingTop:6,paddingBottom:6}}>
65
- {i.map((n,c)=>{const l=r[n.date.getMonth()],e=n.date.getDate(),o=n.date.getFullYear();return<T key={n.label+c}style={{width:70,alignItems:"center"}}>
66
- <T style={{width:58,height:62,backgroundColor:t.white,borderRadius:8,borderWidth:1,borderColor:t.grayBorderSecondary,overflow:"hidden",shadowColor:t.black,shadowOpacity:.05,shadowRadius:4,shadowOffset:{width:0,height:2},elevation:2}}>
64
+ </W>},Dt=({data:n,accentColor:s})=>{const o=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];return<W horizontal showsHorizontalScrollIndicator={!1}contentContainerStyle={{gap:16,paddingRight:16,paddingTop:6,paddingBottom:6}}>
65
+ {n.map((e,h)=>{const i=o[e.date.getMonth()],t=e.date.getDate(),c=e.date.getFullYear();return<T key={e.label+h}style={{width:70,alignItems:"center"}}>
66
+ <T style={{width:58,height:62,backgroundColor:a.white,borderRadius:8,borderWidth:1,borderColor:a.grayBorderSecondary,overflow:"hidden",shadowColor:a.black,shadowOpacity:.05,shadowRadius:4,shadowOffset:{width:0,height:2},elevation:2}}>
67
67
 
68
68
  <T style={{backgroundColor:s,height:18,justifyContent:"center",alignItems:"center"}}>
69
- <B style={{fontFamily:C.interBold,fontSize:9,color:t.white,textTransform:"uppercase",letterSpacing:.5}}>
70
- {l} {o}
71
- </B>
69
+ <S style={{fontFamily:C.interBold,fontSize:9,color:a.white,textTransform:"uppercase",letterSpacing:.5}}>
70
+ {i} {c}
71
+ </S>
72
72
  </T>
73
73
 
74
- <T style={{flex:1,justifyContent:"center",alignItems:"center",backgroundColor:t.grayBackground}}>
75
- <B style={{fontFamily:C.interBold,fontSize:24,color:t.primaryBlack}}>
76
- {e}
77
- </B>
74
+ <T style={{flex:1,justifyContent:"center",alignItems:"center",backgroundColor:a.grayBackground}}>
75
+ <S style={{fontFamily:C.interBold,fontSize:24,color:a.primaryBlack}}>
76
+ {t}
77
+ </S>
78
78
  </T>
79
79
  </T>
80
80
 
81
- <B style={{fontFamily:C.interMedium,fontSize:10,color:t.grayTextWeak,marginTop:8,textAlign:"center"}}numberOfLines={2}>
82
- {n.label.replace(/_/g," ")}
83
- </B>
81
+ <S style={{fontFamily:C.interMedium,fontSize:10,color:a.grayTextWeak,marginTop:8,textAlign:"center"}}numberOfLines={2}>
82
+ {e.label.replace(/_/g," ")}
83
+ </S>
84
84
  </T>})}
85
- </L>},P=({data:i,accentColor:s,maxBarWidth:r,isGradient:n=!1})=>{const c=Math.max(...i.map(e=>e.value),1),l=i.length*(O+R)+10;return<T style={S.svgContainer}>
86
- <A width="100%"height={l}>
87
- <U>
88
- <X id="barGrad"x1="0"y1="0"x2="1"y2="0">
89
- <G offset="0"stopColor={s}stopOpacity="0.6"/>
90
- <G offset="1"stopColor={s}stopOpacity="1"/>
91
- </X>
92
- </U>
93
- {i.map((e,o)=>{const h=o*(O+R),v=Math.max(e.value/c*r,2);return<$.Fragment key={e.label}>
85
+ </W>},H=({data:n,accentColor:s,maxBarWidth:o,isGradient:e=!1})=>{const h=Math.max(...n.map(t=>t.value),1),i=n.length*(R+G)+10;return<T style={k.svgContainer}>
86
+ <A width="100%"height={i}>
87
+ <Tt>
88
+ <St id="barGrad"x1="0"y1="0"x2="1"y2="0">
89
+ <P offset="0"stopColor={s}stopOpacity="0.6"/>
90
+ <P offset="1"stopColor={s}stopOpacity="1"/>
91
+ </St>
92
+ </Tt>
93
+ {n.map((t,c)=>{const b=c*(R+G),B=Math.max(t.value/h*o,2);return<L.Fragment key={t.label}>
94
94
 
95
- <W x={0}y={h+12}fill={t.grayTextStrong}fontSize="11"fontFamily={C.interMedium}>
96
- {e.label}
97
- </W>
95
+ <O x={0}y={b+12}fill={a.grayTextStrong}fontSize="11"fontFamily={C.interMedium}>
96
+ {t.label}
97
+ </O>
98
98
 
99
99
 
100
- <Z x1={0}y1={h+24}x2={r}y2={h+24}stroke={t.grayBorderSecondary}strokeDasharray="4"/>
100
+ <U x1={0}y1={b+24}x2={o}y2={b+24}stroke={a.grayBorderSecondary}strokeDasharray="4"/>
101
101
 
102
102
 
103
- <Y x={0}y={h+16}width={v}height={14}fill={n?"url(#barGrad)":s}rx={4}opacity={.85}/>
103
+ <Q x={0}y={b+16}width={B}height={14}fill={e?"url(#barGrad)":s}rx={4}opacity={.85}/>
104
104
 
105
105
 
106
- <W x={v+6}y={h+26}fill={t.primaryBlack}fontSize="11"fontFamily={C.interBold}>
107
- {e.value}
108
- </W>
109
- </$.Fragment>})}
106
+ <O x={B+6}y={b+26}fill={a.primaryBlack}fontSize="11"fontFamily={C.interBold}>
107
+ {t.value}
108
+ </O>
109
+ </L.Fragment>})}
110
110
  </A>
111
- </T>},S=K.create({container:{backgroundColor:t.primaryLight,borderWidth:1,borderColor:t.grayBorderSecondary,borderRadius:12,marginBottom:10,padding:14,overflow:"hidden"},headerTitle:{fontFamily:C.interBold,color:t.primaryBlack,fontSize:14,marginBottom:12,borderBottomWidth:1,borderBottomColor:t.dividerColor,paddingBottom:8},chartBlock:{marginBottom:16},chartTitle:{fontFamily:C.interMedium,color:t.grayTextWeak,fontSize:12,textTransform:"uppercase",letterSpacing:.5,marginBottom:8},svgContainer:{marginTop:4}});export default ee;
111
+ </T>},k=Z.create({container:{backgroundColor:a.primaryLight,borderWidth:1,borderColor:a.grayBorderSecondary,borderRadius:12,marginBottom:10,padding:14,overflow:"hidden"},headerTitle:{fontFamily:C.interBold,color:a.primaryBlack,fontSize:14,marginBottom:12,borderBottomWidth:1,borderBottomColor:a.dividerColor,paddingBottom:8},chartBlock:{marginBottom:16},chartTitle:{fontFamily:C.interMedium,color:a.grayTextWeak,fontSize:12,textTransform:"uppercase",letterSpacing:.5,marginBottom:8},svgContainer:{marginTop:4}});export default Ct;
@@ -1,175 +1,175 @@
1
- import{useEffect as V,useRef as j}from"react";import{Animated as O,Easing as G,StyleSheet as I,View as N}from"react-native";import Y,{Circle as L,Defs as P,Ellipse as B,G as A,Line as R,LinearGradient as _,Path as C,RadialGradient as D,Rect as E,Stop as F}from"react-native-svg";export const AnimatedBrandOwl=({size:M=64,shape:Q="square"})=>{const m=j(new O.Value(0)).current;V(()=>{const U=O.loop(O.sequence([O.timing(m,{toValue:1,duration:2200,easing:G.inOut(G.sin),useNativeDriver:!0}),O.timing(m,{toValue:0,duration:2200,easing:G.inOut(G.sin),useNativeDriver:!0})]));return U.start(),()=>U.stop()},[m]);const v=m.interpolate({inputRange:[0,1],outputRange:[0,-8]}),q=m.interpolate({inputRange:[0,.5,1],outputRange:["0deg","-1.8deg","0deg"]}),W=Q==="square",Z=W?Math.round(M*.2265):M/2;return<N style={[S.container,{width:M,height:M,borderRadius:Z}]}>
2
- <O.View style={[S.animatedLayer,{transform:[{translateY:v},{rotate:q}]}]}>
3
- <Y width={M}height={M}viewBox="0 0 256 256"fill="none">
1
+ import{useEffect as j,useRef as B}from"react";import{Animated as M,Easing as G,StyleSheet as I,View as N}from"react-native";import Y,{Circle as _,Defs as P,Ellipse as S,G as O,Line as Q,LinearGradient as F,Path as L,RadialGradient as W,Rect as R,Stop as C}from"react-native-svg";import{AppColors as h}from"../styles/AppColors";export const AnimatedBrandOwl=({size:m=64,shape:E="square"})=>{const b=B(new M.Value(0)).current;j(()=>{const A=M.loop(M.sequence([M.timing(b,{toValue:1,duration:2200,easing:G.inOut(G.sin),useNativeDriver:!0}),M.timing(b,{toValue:0,duration:2200,easing:G.inOut(G.sin),useNativeDriver:!0})]));return A.start(),()=>A.stop()},[b]);const Z=b.interpolate({inputRange:[0,1],outputRange:[0,-8]}),V=b.interpolate({inputRange:[0,.5,1],outputRange:["0deg","-1.8deg","0deg"]}),U=E==="square",D=U?Math.round(m*.2265):m/2;return<N style={[q.container,{width:m,height:m,borderRadius:D}]}>
2
+ <M.View style={[q.animatedLayer,{transform:[{translateY:Z},{rotate:V}]}]}>
3
+ <Y width={m}height={m}viewBox="0 0 256 256"fill="none">
4
4
  <P>
5
5
 
6
- <_ id="owl_beam"x1="70"y1="74"x2="194"y2="187"gradientUnits="userSpaceOnUse">
7
- <F offset="0"stopColor="#5EEAD4"/>
8
- <F offset="0.5"stopColor="#38BDF8"/>
9
- <F offset="1"stopColor="#A78BFA"/>
10
- </_>
6
+ <F id="owl_beam"x1="70"y1="74"x2="194"y2="187"gradientUnits="userSpaceOnUse">
7
+ <C offset="0"stopColor={h.teal300}/>
8
+ <C offset="0.5"stopColor={h.sky400}/>
9
+ <C offset="1"stopColor={h.purple400}/>
10
+ </F>
11
11
 
12
12
 
13
- <D id="owl_halo"cx="0.5"cy="0.45"r="0.55">
14
- <F offset="0"stopColor="#38BDF8"stopOpacity={.25}/>
15
- <F offset="1"stopColor="#38BDF8"stopOpacity={0}/>
16
- </D>
13
+ <W id="owl_halo"cx="0.5"cy="0.45"r="0.55">
14
+ <C offset="0"stopColor={h.sky400}stopOpacity={.25}/>
15
+ <C offset="1"stopColor={h.sky400}stopOpacity={0}/>
16
+ </W>
17
17
 
18
18
 
19
- <_ id="owl_body"x1="78"y1="60"x2="178"y2="186"gradientUnits="userSpaceOnUse">
20
- <F offset="0"stopColor="#24345F"/>
21
- <F offset="1"stopColor="#121B35"/>
22
- </_>
19
+ <F id="owl_body"x1="78"y1="60"x2="178"y2="186"gradientUnits="userSpaceOnUse">
20
+ <C offset="0"stopColor={h.navy700}/>
21
+ <C offset="1"stopColor={h.navy900}/>
22
+ </F>
23
23
 
24
24
 
25
- <_ id="owl_beak"x1="120"y1="151"x2="136"y2="168"gradientUnits="userSpaceOnUse">
26
- <F offset="0"stopColor="#FCD34D"/>
27
- <F offset="1"stopColor="#FB923C"/>
28
- </_>
25
+ <F id="owl_beak"x1="120"y1="151"x2="136"y2="168"gradientUnits="userSpaceOnUse">
26
+ <C offset="0"stopColor={h.amber300}/>
27
+ <C offset="1"stopColor={h.orange400}/>
28
+ </F>
29
29
 
30
30
 
31
- <D id="owl_iris"cx="0.42"cy="0.38"r="0.72">
32
- <F offset="0"stopColor="#FDE68A"/>
33
- <F offset="0.5"stopColor="#FBBF24"/>
34
- <F offset="1"stopColor="#F59E0B"/>
35
- </D>
31
+ <W id="owl_iris"cx="0.42"cy="0.38"r="0.72">
32
+ <C offset="0"stopColor={h.amber200}/>
33
+ <C offset="0.5"stopColor={h.amber400}/>
34
+ <C offset="1"stopColor={h.amber500}/>
35
+ </W>
36
36
 
37
37
 
38
- <D id="owl_blush"cx="0.5"cy="0.5"r="0.5">
39
- <F offset="0"stopColor="#FB7185"stopOpacity={.6}/>
40
- <F offset="1"stopColor="#FB7185"stopOpacity={0}/>
41
- </D>
38
+ <W id="owl_blush"cx="0.5"cy="0.5"r="0.5">
39
+ <C offset="0"stopColor={h.rose400}stopOpacity={.6}/>
40
+ <C offset="1"stopColor={h.rose400}stopOpacity={0}/>
41
+ </W>
42
42
 
43
43
 
44
- <_ id="owl_wing"x1="70"y1="120"x2="190"y2="206"gradientUnits="userSpaceOnUse">
45
- <F offset="0"stopColor="#1D2A4F"/>
46
- <F offset="1"stopColor="#0F1735"/>
47
- </_>
44
+ <F id="owl_wing"x1="70"y1="120"x2="190"y2="206"gradientUnits="userSpaceOnUse">
45
+ <C offset="0"stopColor={h.navy800}/>
46
+ <C offset="1"stopColor={h.navy950}/>
47
+ </F>
48
48
 
49
49
 
50
- <_ id="owl_faceplate"x1="70"y1="72"x2="186"y2="152"gradientUnits="userSpaceOnUse">
51
- <F offset="0"stopColor="#3B528D"/>
52
- <F offset="1"stopColor="#223358"/>
53
- </_>
50
+ <F id="owl_faceplate"x1="70"y1="72"x2="186"y2="152"gradientUnits="userSpaceOnUse">
51
+ <C offset="0"stopColor={h.steel500}/>
52
+ <C offset="1"stopColor={h.navy700}/>
53
+ </F>
54
54
 
55
55
 
56
- <D id="owl_lensglass"cx="0.4"cy="0.32"r="0.75">
57
- <F offset="0"stopColor="#7DE8FF"stopOpacity={.25}/>
58
- <F offset="0.7"stopColor="#7DE8FF"stopOpacity={.06}/>
59
- <F offset="1"stopColor="#7DE8FF"stopOpacity={0}/>
60
- </D>
56
+ <W id="owl_lensglass"cx="0.4"cy="0.32"r="0.75">
57
+ <C offset="0"stopColor={h.sky300}stopOpacity={.25}/>
58
+ <C offset="0.7"stopColor={h.sky300}stopOpacity={.06}/>
59
+ <C offset="1"stopColor={h.sky300}stopOpacity={0}/>
60
+ </W>
61
61
 
62
62
 
63
- <_ id="owl_belly"x1="94"y1="126"x2="162"y2="212"gradientUnits="userSpaceOnUse">
64
- <F offset="0"stopColor="#384F88"/>
65
- <F offset="1"stopColor="#20305C"/>
66
- </_>
63
+ <F id="owl_belly"x1="94"y1="126"x2="162"y2="212"gradientUnits="userSpaceOnUse">
64
+ <C offset="0"stopColor={h.steel600}/>
65
+ <C offset="1"stopColor={h.navy700}/>
66
+ </F>
67
67
 
68
68
 
69
- <_ id="owl_tile"x1="30"y1="30"x2="210"y2="222"gradientUnits="userSpaceOnUse">
70
- <F offset="0"stopColor="#141B33"/>
71
- <F offset="1"stopColor="#0A0E1C"/>
72
- </_>
69
+ <F id="owl_tile"x1="30"y1="30"x2="210"y2="222"gradientUnits="userSpaceOnUse">
70
+ <C offset="0"stopColor={h.navy900}/>
71
+ <C offset="1"stopColor={h.navy950}/>
72
+ </F>
73
73
 
74
74
 
75
- <_ id="owl_edge"x1="14"y1="22"x2="220"y2="228"gradientUnits="userSpaceOnUse">
76
- <F offset="0"stopColor="#3A4E7A"/>
77
- <F offset="1"stopColor="#1A2238"/>
78
- </_>
75
+ <F id="owl_edge"x1="14"y1="22"x2="220"y2="228"gradientUnits="userSpaceOnUse">
76
+ <C offset="0"stopColor={h.steel600}/>
77
+ <C offset="1"stopColor={h.navy800}/>
78
+ </F>
79
79
  </P>
80
80
 
81
81
 
82
- {W?<>
83
- <E x={8}y={8}width={240}height={240}rx={58}fill="url(#owl_tile)"/>
84
- <E 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
- <L cx={128}cy={128}r={104}fill="url(#owl_halo)"/>
82
+ {U?<>
83
+ <R x={8}y={8}width={240}height={240}rx={58}fill="url(#owl_tile)"/>
84
+ <R 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
+ <_ cx={128}cy={128}r={104}fill="url(#owl_halo)"/>
86
86
  </>:<>
87
- <L cx={128}cy={128}r={122}fill="url(#owl_tile)"/>
88
- <L cx={128}cy={128}r={121.4}fill="none"stroke="url(#owl_edge)"strokeOpacity={.75}strokeWidth={1.6}/>
89
- <L cx={128}cy={128}r={105}fill="url(#owl_halo)"/>
87
+ <_ cx={128}cy={128}r={122}fill="url(#owl_tile)"/>
88
+ <_ cx={128}cy={128}r={121.4}fill="none"stroke="url(#owl_edge)"strokeOpacity={.75}strokeWidth={1.6}/>
89
+ <_ cx={128}cy={128}r={105}fill="url(#owl_halo)"/>
90
90
  </>}
91
91
 
92
92
 
93
- <A transform={W?"translate(128 128) scale(1.16) translate(-128 -134)":"translate(128 132) scale(1.08) translate(-128 -134)"}>
93
+ <O transform={U?"translate(128 128) scale(1.16) translate(-128 -134)":"translate(128 132) scale(1.08) translate(-128 -134)"}>
94
94
 
95
- <C 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
- <C 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}/>
95
+ <L 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
+ <L 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}/>
97
97
 
98
98
 
99
- <C d="M62 150 C58 104 70 70 90 58 L98 42 L116 62 Q128 57 140 62 L158 42 L166 58 C186 70 198 104 194 150 C198 180 184 204 152 212 C140 216 116 216 104 212 C72 204 58 180 62 150 Z"fill="url(#owl_body)"stroke="url(#owl_beam)"strokeWidth={4}strokeLinejoin="round"/>
99
+ <L d="M62 150 C58 104 70 70 90 58 L98 42 L116 62 Q128 57 140 62 L158 42 L166 58 C186 70 198 104 194 150 C198 180 184 204 152 212 C140 216 116 216 104 212 C72 204 58 180 62 150 Z"fill="url(#owl_body)"stroke="url(#owl_beam)"strokeWidth={4}strokeLinejoin="round"/>
100
100
 
101
101
 
102
- <C d="M99 48 L114 62 L104 63 L98 55 Z"fill="#080F22"opacity={.55}/>
103
- <C d="M157 48 L142 62 L152 63 L158 55 Z"fill="#080F22"opacity={.55}/>
102
+ <L d="M99 48 L114 62 L104 63 L98 55 Z"fill="#080F22"opacity={.55}/>
103
+ <L d="M157 48 L142 62 L152 63 L158 55 Z"fill="#080F22"opacity={.55}/>
104
104
 
105
105
 
106
- <A stroke="#22325A"strokeWidth={2.2}fill="none"strokeLinecap="round"opacity={.75}>
107
- <C d="M80 138 q-5 26 3 50"/>
108
- <C d="M90 134 q-4 26 3 48"/>
109
- <C d="M176 138 q5 26 -3 50"/>
110
- <C d="M166 134 q4 26 -3 48"/>
111
- </A>
106
+ <O stroke="#22325A"strokeWidth={2.2}fill="none"strokeLinecap="round"opacity={.75}>
107
+ <L d="M80 138 q-5 26 3 50"/>
108
+ <L d="M90 134 q-4 26 3 48"/>
109
+ <L d="M176 138 q5 26 -3 50"/>
110
+ <L d="M166 134 q4 26 -3 48"/>
111
+ </O>
112
112
 
113
113
 
114
- <C d="M128 126 C151 126 164 148 162 174 C160 198 146 212 128 212 C110 212 96 198 94 174 C92 148 105 126 128 126 Z"fill="url(#owl_belly)"/>
114
+ <L d="M128 126 C151 126 164 148 162 174 C160 198 146 212 128 212 C110 212 96 198 94 174 C92 148 105 126 128 126 Z"fill="url(#owl_belly)"/>
115
115
 
116
116
 
117
- <A stroke="#4A659E"strokeWidth={2.3}fill="none"strokeLinecap="round"opacity={.45}>
118
- <C d="M110 154 Q118 162 126 154"/>
119
- <C d="M126 154 Q134 162 142 154"/>
120
- <C d="M142 154 Q150 162 158 154"/>
121
- <C d="M102 172 Q110 180 118 172"/>
122
- <C d="M150 172 Q158 180 166 172"/>
123
- <C d="M112 190 Q120 198 128 190"/>
124
- <C d="M128 190 Q136 198 144 190"/>
125
- </A>
117
+ <O stroke="#4A659E"strokeWidth={2.3}fill="none"strokeLinecap="round"opacity={.45}>
118
+ <L d="M110 154 Q118 162 126 154"/>
119
+ <L d="M126 154 Q134 162 142 154"/>
120
+ <L d="M142 154 Q150 162 158 154"/>
121
+ <L d="M102 172 Q110 180 118 172"/>
122
+ <L d="M150 172 Q158 180 166 172"/>
123
+ <L d="M112 190 Q120 198 128 190"/>
124
+ <L d="M128 190 Q136 198 144 190"/>
125
+ </O>
126
126
 
127
127
 
128
- <E x={107}y={161}width={42}height={32}rx={9}fill="#0A1020"stroke="url(#owl_beam)"strokeWidth={2}strokeOpacity={.8}/>
129
- <A stroke="#7DD3FC"strokeWidth={3}strokeLinecap="round"strokeLinejoin="round"fill="none">
130
- <C d="M122 170 L115 177 L122 184"/>
131
- <C d="M134 170 L141 177 L134 184"/>
132
- <C d="M130 168 L126 186"/>
133
- </A>
128
+ <R x={107}y={161}width={42}height={32}rx={9}fill="#0A1020"stroke="url(#owl_beam)"strokeWidth={2}strokeOpacity={.8}/>
129
+ <O stroke="#7DD3FC"strokeWidth={3}strokeLinecap="round"strokeLinejoin="round"fill="none">
130
+ <L d="M122 170 L115 177 L122 184"/>
131
+ <L d="M134 170 L141 177 L134 184"/>
132
+ <L d="M130 168 L126 186"/>
133
+ </O>
134
134
 
135
135
 
136
- <C d="M128 92 C148 70 186 78 186 108 C186 134 160 152 128 152 C96 152 70 134 70 108 C70 78 108 70 128 92 Z"fill="url(#owl_faceplate)"stroke="#52709E"strokeWidth={2.6}strokeOpacity={.7}/>
137
- <C d="M128 96 L128 120"stroke="#52709E"strokeWidth={2}strokeLinecap="round"strokeOpacity={.45}/>
136
+ <L d="M128 92 C148 70 186 78 186 108 C186 134 160 152 128 152 C96 152 70 134 70 108 C70 78 108 70 128 92 Z"fill="url(#owl_faceplate)"stroke="#52709E"strokeWidth={2.6}strokeOpacity={.7}/>
137
+ <L d="M128 96 L128 120"stroke="#52709E"strokeWidth={2}strokeLinecap="round"strokeOpacity={.45}/>
138
138
 
139
139
 
140
- <A stroke="url(#owl_beak)"strokeWidth={5}strokeLinecap="round"fill="none">
141
- <C d="M111 209 L105 224 M111 209 L111 226 M111 209 L117 224"/>
142
- <C d="M145 209 L139 224 M145 209 L145 226 M145 209 L151 224"/>
143
- </A>
140
+ <O stroke="url(#owl_beak)"strokeWidth={5}strokeLinecap="round"fill="none">
141
+ <L d="M111 209 L105 224 M111 209 L111 226 M111 209 L117 224"/>
142
+ <L d="M145 209 L139 224 M145 209 L145 226 M145 209 L151 224"/>
143
+ </O>
144
144
 
145
145
 
146
- <L cx={153}cy={107}r={17}fill="url(#owl_iris)"stroke="#1A1205"strokeWidth={2.2}/>
147
- <L cx={153}cy={108}r={8.2}fill="#0A0E18"/>
148
- <L cx={156.2}cy={104}r={3.1}fill="#FFFFFF"opacity={.95}/>
149
- <L cx={149.6}cy={111}r={1.6}fill="#FFFFFF"opacity={.7}/>
146
+ <_ cx={153}cy={107}r={17}fill="url(#owl_iris)"stroke="#1A1205"strokeWidth={2.2}/>
147
+ <_ cx={153}cy={108}r={8.2}fill="#0A0E18"/>
148
+ <_ cx={156.2}cy={104}r={3.1}fill="#FFFFFF"opacity={.95}/>
149
+ <_ cx={149.6}cy={111}r={1.6}fill="#FFFFFF"opacity={.7}/>
150
150
 
151
151
 
152
- <C d="M123.5 123 Q128 121 132.5 123 Q131 132 128 134.5 Q125 132 123.5 123 Z"fill="url(#owl_beak)"/>
152
+ <L d="M123.5 123 Q128 121 132.5 123 Q131 132 128 134.5 Q125 132 123.5 123 Z"fill="url(#owl_beak)"/>
153
153
 
154
154
 
155
- <L cx={95}cy={103}r={20}fill="url(#owl_iris)"stroke="#1A1205"strokeWidth={2.6}/>
156
- <L cx={95}cy={104}r={10}fill="#0A0E18"/>
157
- <L cx={98.6}cy={100}r={3.4}fill="#FFFFFF"opacity={.95}/>
158
- <L cx={91}cy={107}r={1.8}fill="#FFFFFF"opacity={.7}/>
159
- <L cx={95}cy={103}r={28}fill="url(#owl_lensglass)"/>
160
- <C d="M77 87 A28 28 0 0 1 106 79"fill="none"stroke="#FFFFFF"strokeWidth={4}strokeLinecap="round"strokeOpacity={.5}/>
155
+ <_ cx={95}cy={103}r={20}fill="url(#owl_iris)"stroke="#1A1205"strokeWidth={2.6}/>
156
+ <_ cx={95}cy={104}r={10}fill="#0A0E18"/>
157
+ <_ cx={98.6}cy={100}r={3.4}fill="#FFFFFF"opacity={.95}/>
158
+ <_ cx={91}cy={107}r={1.8}fill="#FFFFFF"opacity={.7}/>
159
+ <_ cx={95}cy={103}r={28}fill="url(#owl_lensglass)"/>
160
+ <L d="M77 87 A28 28 0 0 1 106 79"fill="none"stroke="#FFFFFF"strokeWidth={4}strokeLinecap="round"strokeOpacity={.5}/>
161
161
 
162
162
 
163
- <R x1={75}y1={123}x2={54}y2={147}stroke="#0A0F1C"strokeWidth={14}strokeLinecap="round"/>
164
- <R x1={75}y1={123}x2={54}y2={147}stroke="url(#owl_beam)"strokeWidth={8.5}strokeLinecap="round"/>
163
+ <Q x1={75}y1={123}x2={54}y2={147}stroke="#0A0F1C"strokeWidth={14}strokeLinecap="round"/>
164
+ <Q x1={75}y1={123}x2={54}y2={147}stroke="url(#owl_beam)"strokeWidth={8.5}strokeLinecap="round"/>
165
165
 
166
166
 
167
- <L cx={95}cy={103}r={28}fill="none"stroke="url(#owl_beam)"strokeWidth={7}/>
167
+ <_ cx={95}cy={103}r={28}fill="none"stroke="url(#owl_beam)"strokeWidth={7}/>
168
168
 
169
169
 
170
- <B cx={83}cy={127}rx={9}ry={6}fill="url(#owl_blush)"/>
171
- <B cx={167}cy={122}rx={9}ry={6}fill="url(#owl_blush)"/>
172
- </A>
170
+ <S cx={83}cy={127}rx={9}ry={6}fill="url(#owl_blush)"/>
171
+ <S cx={167}cy={122}rx={9}ry={6}fill="url(#owl_blush)"/>
172
+ </O>
173
173
  </Y>
174
- </O.View>
175
- </N>};const S=I.create({container:{overflow:"visible",alignItems:"center",justifyContent:"center",backgroundColor:"transparent"},animatedLayer:{width:"100%",height:"100%",alignItems:"center",justifyContent:"center"}});export default AnimatedBrandOwl;
174
+ </M.View>
175
+ </N>};const q=I.create({container:{overflow:"visible",alignItems:"center",justifyContent:"center",backgroundColor:"transparent"},animatedLayer:{width:"100%",height:"100%",alignItems:"center",justifyContent:"center"}});export default AnimatedBrandOwl;
@@ -1,7 +1,7 @@
1
- import b from"react";import{Image as C,StyleSheet as _,View as R}from"react-native";const M=require("../../../assets/inapp_inspector_icon.gif");export const AppHeaderLogo=({size:e=64,customIcon:o,shape:V="square"})=>{const r=V==="circle"?e/2:Math.round(e*.2265);if(o){if(b.isValidElement(o)){const v=b.cloneElement(o,{size:e,width:e,height:e});return<R style={[t.container,{width:e,height:e,borderRadius:r}]}>
2
- {v}
3
- </R>}return<R style={[t.imageContainer,{width:e,height:e,borderRadius:r}]}>
4
- <C source={o}style={[t.image,{borderRadius:r}]}resizeMode="cover"/>
5
- </R>}return<R style={[t.imageContainer,{width:e,height:e,borderRadius:r}]}>
6
- <C source={M}style={[t.image,{borderRadius:r}]}resizeMode="cover"/>
7
- </R>};const t=_.create({container:{overflow:"hidden",alignItems:"center",justifyContent:"center",backgroundColor:"transparent"},imageContainer:{overflow:"hidden",backgroundColor:"transparent",alignItems:"center",justifyContent:"center"},image:{width:"100%",height:"100%"}});export default AppHeaderLogo;
1
+ import b from"react";import{Image as S,StyleSheet as j,View as C}from"react-native";import{BrandCircleIcon as E}from"./BrandCircleIcon";export const AppHeaderLogo=({size:e=64,customIcon:r,shape:R="circle"})=>{const t=R==="circle"?e/2:Math.round(e*.2265);if(r){if(b.isValidElement(r)){const V=b.cloneElement(r,{size:e,width:e,height:e});return<C style={[n.container,{width:e,height:e,borderRadius:t}]}>
2
+ {V}
3
+ </C>}return<C style={[n.imageContainer,{width:e,height:e,borderRadius:t}]}>
4
+ <S source={r}style={[n.image,{borderRadius:t}]}resizeMode="cover"/>
5
+ </C>}return<C style={[n.container,{width:e,height:e,borderRadius:t}]}>
6
+ <E size={e}/>
7
+ </C>};const n=j.create({container:{overflow:"hidden",alignItems:"center",justifyContent:"center",backgroundColor:"transparent"},imageContainer:{overflow:"hidden",backgroundColor:"transparent",alignItems:"center",justifyContent:"center"},image:{width:"100%",height:"100%"}});export default AppHeaderLogo;