expo-observe 56.0.13 → 56.0.15

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 (95) hide show
  1. package/android/src/main/java/expo/modules/observe/ObserveModule.kt +5 -0
  2. package/build/integrations/react-navigation/ObserveNavigationContainer.d.ts +27 -0
  3. package/build/integrations/react-navigation/ObserveNavigationContainer.d.ts.map +1 -0
  4. package/build/integrations/react-navigation/actionListener.d.ts +14 -0
  5. package/build/integrations/react-navigation/actionListener.d.ts.map +1 -0
  6. package/build/integrations/react-navigation/context.d.ts +8 -0
  7. package/build/integrations/react-navigation/context.d.ts.map +1 -0
  8. package/build/integrations/react-navigation/emitTTI.d.ts +8 -0
  9. package/build/integrations/react-navigation/emitTTI.d.ts.map +1 -0
  10. package/build/integrations/react-navigation/getPathname.d.ts +4 -0
  11. package/build/integrations/react-navigation/getPathname.d.ts.map +1 -0
  12. package/build/integrations/react-navigation/handleStateChange.d.ts +4 -0
  13. package/build/integrations/react-navigation/handleStateChange.d.ts.map +1 -0
  14. package/build/integrations/react-navigation/index.d.ts +6 -0
  15. package/build/integrations/react-navigation/index.d.ts.map +1 -0
  16. package/build/integrations/react-navigation/init.d.ts +3 -0
  17. package/build/integrations/react-navigation/init.d.ts.map +1 -0
  18. package/build/integrations/react-navigation/reactNavigation.d.ts +4 -0
  19. package/build/integrations/react-navigation/reactNavigation.d.ts.map +1 -0
  20. package/build/integrations/react-navigation/stateTraversal.d.ts +7 -0
  21. package/build/integrations/react-navigation/stateTraversal.d.ts.map +1 -0
  22. package/build/integrations/react-navigation/storage.d.ts +17 -0
  23. package/build/integrations/react-navigation/storage.d.ts.map +1 -0
  24. package/build/integrations/react-navigation/types.d.ts +7 -0
  25. package/build/integrations/react-navigation/types.d.ts.map +1 -0
  26. package/build/integrations/react-navigation/useObserveForReactNavigation.d.ts +5 -0
  27. package/build/integrations/react-navigation/useObserveForReactNavigation.d.ts.map +1 -0
  28. package/build/module.d.ts.map +1 -1
  29. package/build/module.web.d.ts +2 -1
  30. package/build/module.web.d.ts.map +1 -1
  31. package/build/types.d.ts +45 -0
  32. package/build/types.d.ts.map +1 -1
  33. package/build/useObserve.d.ts.map +1 -1
  34. package/expo-module.config.json +1 -1
  35. package/ios/ObserveModule.swift +4 -0
  36. package/local-maven-repo/expo/modules/observe/expo.modules.observe/{56.0.13/expo.modules.observe-56.0.13-sources.jar → 56.0.15/expo.modules.observe-56.0.15-sources.jar} +0 -0
  37. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15-sources.jar.md5 +1 -0
  38. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15-sources.jar.sha1 +1 -0
  39. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15-sources.jar.sha256 +1 -0
  40. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15-sources.jar.sha512 +1 -0
  41. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15.aar +0 -0
  42. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15.aar.md5 +1 -0
  43. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15.aar.sha1 +1 -0
  44. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15.aar.sha256 +1 -0
  45. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15.aar.sha512 +1 -0
  46. package/local-maven-repo/expo/modules/observe/expo.modules.observe/{56.0.13/expo.modules.observe-56.0.13.module → 56.0.15/expo.modules.observe-56.0.15.module} +23 -23
  47. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15.module.md5 +1 -0
  48. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15.module.sha1 +1 -0
  49. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15.module.sha256 +1 -0
  50. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15.module.sha512 +1 -0
  51. package/local-maven-repo/expo/modules/observe/expo.modules.observe/{56.0.13/expo.modules.observe-56.0.13.pom → 56.0.15/expo.modules.observe-56.0.15.pom} +2 -2
  52. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15.pom.md5 +1 -0
  53. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15.pom.sha1 +1 -0
  54. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15.pom.sha256 +1 -0
  55. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.15/expo.modules.observe-56.0.15.pom.sha512 +1 -0
  56. package/local-maven-repo/expo/modules/observe/expo.modules.observe/maven-metadata.xml +4 -4
  57. package/local-maven-repo/expo/modules/observe/expo.modules.observe/maven-metadata.xml.md5 +1 -1
  58. package/local-maven-repo/expo/modules/observe/expo.modules.observe/maven-metadata.xml.sha1 +1 -1
  59. package/local-maven-repo/expo/modules/observe/expo.modules.observe/maven-metadata.xml.sha256 +1 -1
  60. package/local-maven-repo/expo/modules/observe/expo.modules.observe/maven-metadata.xml.sha512 +1 -1
  61. package/package.json +21 -5
  62. package/src/integrations/react-navigation/ObserveNavigationContainer.tsx +105 -0
  63. package/src/integrations/react-navigation/actionListener.ts +24 -0
  64. package/src/integrations/react-navigation/context.ts +12 -0
  65. package/src/integrations/react-navigation/emitTTI.ts +19 -0
  66. package/src/integrations/react-navigation/getPathname.ts +27 -0
  67. package/src/integrations/react-navigation/handleStateChange.ts +131 -0
  68. package/src/integrations/react-navigation/index.ts +12 -0
  69. package/src/integrations/react-navigation/init.ts +7 -0
  70. package/src/integrations/react-navigation/reactNavigation.ts +10 -0
  71. package/src/integrations/react-navigation/stateTraversal.ts +45 -0
  72. package/src/integrations/react-navigation/storage.ts +27 -0
  73. package/src/integrations/react-navigation/types.ts +6 -0
  74. package/src/integrations/react-navigation/useObserveForReactNavigation.ts +129 -0
  75. package/src/module.ts +30 -1
  76. package/src/module.web.ts +2 -1
  77. package/src/types.ts +48 -0
  78. package/src/useObserve.ts +19 -1
  79. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13-sources.jar.md5 +0 -1
  80. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13-sources.jar.sha1 +0 -1
  81. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13-sources.jar.sha256 +0 -1
  82. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13-sources.jar.sha512 +0 -1
  83. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13.aar +0 -0
  84. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13.aar.md5 +0 -1
  85. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13.aar.sha1 +0 -1
  86. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13.aar.sha256 +0 -1
  87. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13.aar.sha512 +0 -1
  88. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13.module.md5 +0 -1
  89. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13.module.sha1 +0 -1
  90. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13.module.sha256 +0 -1
  91. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13.module.sha512 +0 -1
  92. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13.pom.md5 +0 -1
  93. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13.pom.sha1 +0 -1
  94. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13.pom.sha256 +0 -1
  95. package/local-maven-repo/expo/modules/observe/expo.modules.observe/56.0.13/expo.modules.observe-56.0.13.pom.sha512 +0 -1
@@ -3,6 +3,7 @@ package expo.modules.observe
3
3
  import android.content.Context
4
4
  import android.util.Log
5
5
  import expo.modules.appmetrics.AppMetricsModule
6
+ import expo.modules.appmetrics.GlobalAttributes
6
7
  import expo.modules.interfaces.constants.ConstantsInterface
7
8
  import expo.modules.kotlin.exception.Exceptions
8
9
  import expo.modules.kotlin.functions.Coroutine
@@ -74,6 +75,10 @@ class ObserveModule : Module() {
74
75
  resolvedEnvironment?.let { appMetricsModule.setEnvironment(it) }
75
76
  }
76
77
 
78
+ Function("setGlobalAttributes") { attributes: Map<String, Any?>? ->
79
+ GlobalAttributes.set(attributes)
80
+ }
81
+
77
82
  Function("setBundleDefaults") { defaults: BundleDefaults ->
78
83
  // Empty environment means JS bypassed both `process.env.NODE_ENV` and the
79
84
  // `?? 'production'` fallback. Refuse rather than persist an empty string,
@@ -0,0 +1,27 @@
1
+ import { NavigationContainer, type NavigationContainerRef } from '@react-navigation/native';
2
+ import { type ComponentProps, type Ref } from 'react';
3
+ type NavigationContainerProps = ComponentProps<typeof NavigationContainer>;
4
+ export type ObserveNavigationContainerProps = NavigationContainerProps;
5
+ export declare const ObserveNavigationContainer: import("react").ForwardRefExoticComponent<Omit<import("@react-navigation/native").NavigationContainerProps & {
6
+ initialState?: Readonly<Partial<Omit<Readonly<{
7
+ key: string;
8
+ index: number;
9
+ routeNames: string[];
10
+ history?: unknown[];
11
+ routes: import("@react-navigation/native").NavigationRoute<import("@react-navigation/native").ParamListBase, string>[];
12
+ type: string;
13
+ stale: false;
14
+ }>, "stale" | "routes">> & {
15
+ routes: (Omit<import("@react-navigation/native").Route<string>, "key"> & {
16
+ state?: import("@react-navigation/native").InitialState;
17
+ })[];
18
+ }> | undefined;
19
+ direction?: import("@react-navigation/native").LocaleDirection;
20
+ linking?: import("@react-navigation/native").LinkingOptions<{}> | undefined;
21
+ fallback?: React.ReactNode;
22
+ documentTitle?: import("@react-navigation/native").DocumentTitleOptions;
23
+ } & {
24
+ ref?: Ref<NavigationContainerRef<{}>> | undefined;
25
+ }, "ref"> & import("react").RefAttributes<NavigationContainerRef<ReactNavigation.RootParamList>>>;
26
+ export {};
27
+ //# sourceMappingURL=ObserveNavigationContainer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObserveNavigationContainer.d.ts","sourceRoot":"","sources":["../../../src/integrations/react-navigation/ObserveNavigationContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,KAAK,sBAAsB,EAE5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAOL,KAAK,cAAc,EACnB,KAAK,GAAG,EACT,MAAM,OAAO,CAAC;AAWf,KAAK,wBAAwB,GAAG,cAAc,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAE3E,MAAM,MAAM,+BAA+B,GAAG,wBAAwB,CAAC;AA6EvE,eAAO,MAAM,0BAA0B;;;;;;;;;;;iBA5DnC,CAAA;;;;;;;;;iGA4DgF,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { ReactNavigationIntegrationStorage } from './storage';
2
+ export interface NavigationRefActionListenerHandle {
3
+ addListener(event: '__unsafe_action__', cb: (e: {
4
+ data: {
5
+ action: {
6
+ type: string;
7
+ payload?: object;
8
+ };
9
+ noop: boolean;
10
+ };
11
+ }) => void): () => void;
12
+ }
13
+ export declare function attachActionListener(navigationRef: NavigationRefActionListenerHandle, storage: ReactNavigationIntegrationStorage): () => void;
14
+ //# sourceMappingURL=actionListener.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actionListener.d.ts","sourceRoot":"","sources":["../../../src/integrations/react-navigation/actionListener.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,WAAW,CAAC;AAEnE,MAAM,WAAW,iCAAiC;IAChD,WAAW,CACT,KAAK,EAAE,mBAAmB,EAC1B,EAAE,EAAE,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE;YAAE,MAAM,EAAE;gBAAE,IAAI,EAAE,MAAM,CAAC;gBAAC,OAAO,CAAC,EAAE,MAAM,CAAA;aAAE,CAAC;YAAC,IAAI,EAAE,OAAO,CAAA;SAAE,CAAA;KAAE,KAAK,IAAI,GACvF,MAAM,IAAI,CAAC;CACf;AAED,wBAAgB,oBAAoB,CAClC,aAAa,EAAE,iCAAiC,EAChD,OAAO,EAAE,iCAAiC,GACzC,MAAM,IAAI,CAWZ"}
@@ -0,0 +1,8 @@
1
+ import type { ReactNavigationIntegrationStorage } from './storage';
2
+ import type { GetPathname } from './types';
3
+ export interface ReactNavigationIntegrationContextValue {
4
+ storage: ReactNavigationIntegrationStorage;
5
+ getPathname: GetPathname;
6
+ }
7
+ export declare const ObserveReactNavigationIntegrationContext: import("react").Context<ReactNavigationIntegrationContextValue | null>;
8
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/integrations/react-navigation/context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,WAAW,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,MAAM,WAAW,sCAAsC;IACrD,OAAO,EAAE,iCAAiC,CAAC;IAC3C,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,eAAO,MAAM,wCAAwC,wEACe,CAAC"}
@@ -0,0 +1,8 @@
1
+ export declare function emitTTI(args: {
2
+ sessionId: string;
3
+ timestamp: string;
4
+ routeName: string | undefined;
5
+ value: number;
6
+ routeParams: object;
7
+ }): Promise<void>;
8
+ //# sourceMappingURL=emitTTI.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emitTTI.d.ts","sourceRoot":"","sources":["../../../src/integrations/react-navigation/emitTTI.ts"],"names":[],"mappings":"AAEA,wBAAgB,OAAO,CAAC,IAAI,EAAE;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB,GAAG,OAAO,CAAC,IAAI,CAAC,CAUhB"}
@@ -0,0 +1,4 @@
1
+ import { type LinkingOptions, type ParamListBase } from '@react-navigation/native';
2
+ import type { GetPathname } from './types';
3
+ export declare function createGetPathname<ParamList extends ParamListBase>(linking: LinkingOptions<ParamList> | undefined): GetPathname;
4
+ //# sourceMappingURL=getPathname.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getPathname.d.ts","sourceRoot":"","sources":["../../../src/integrations/react-navigation/getPathname.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,cAAc,EAEnB,KAAK,aAAa,EACnB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,wBAAgB,iBAAiB,CAAC,SAAS,SAAS,aAAa,EAC/D,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,GAAG,SAAS,GAC7C,WAAW,CAeb"}
@@ -0,0 +1,4 @@
1
+ import type { ReactNavigationIntegrationStorage } from './storage';
2
+ import type { GetPathname, NavigationStateLike } from './types';
3
+ export declare function createStateChangeHandler(storage: ReactNavigationIntegrationStorage, getPathname: GetPathname, appLaunchTime: number): (state: NavigationStateLike | undefined) => void;
4
+ //# sourceMappingURL=handleStateChange.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleStateChange.d.ts","sourceRoot":"","sources":["../../../src/integrations/react-navigation/handleStateChange.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,WAAW,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAEhE,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,iCAAiC,EAC1C,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,MAAM,GACpB,CAAC,KAAK,EAAE,mBAAmB,GAAG,SAAS,KAAK,IAAI,CAuHlD"}
@@ -0,0 +1,6 @@
1
+ export { isReactNavigationInstalled } from './reactNavigation';
2
+ export { initReactNavigationIntegration, isInitialized as isReactNavigationInitialized, } from './init';
3
+ export { ObserveNavigationContainer, type ObserveNavigationContainerProps, } from './ObserveNavigationContainer';
4
+ export { ObserveReactNavigationIntegrationContext } from './context';
5
+ export { useObserveForReactNavigation } from './useObserveForReactNavigation';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/integrations/react-navigation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EACL,8BAA8B,EAC9B,aAAa,IAAI,4BAA4B,GAC9C,MAAM,QAAQ,CAAC;AAEhB,OAAO,EACL,0BAA0B,EAC1B,KAAK,+BAA+B,GACrC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,wCAAwC,EAAE,MAAM,WAAW,CAAC;AACrE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare const isInitialized: () => boolean;
2
+ export declare function initReactNavigationIntegration(): void;
3
+ //# sourceMappingURL=init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/integrations/react-navigation/init.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa,eAAoB,CAAC;AAE/C,wBAAgB,8BAA8B,SAE7C"}
@@ -0,0 +1,4 @@
1
+ declare let optionalReactNavigation: typeof import('@react-navigation/native') | undefined;
2
+ declare const isReactNavigationInstalled: boolean;
3
+ export { optionalReactNavigation, isReactNavigationInstalled };
4
+ //# sourceMappingURL=reactNavigation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reactNavigation.d.ts","sourceRoot":"","sources":["../../../src/integrations/react-navigation/reactNavigation.ts"],"names":[],"mappings":"AAEA,QAAA,IAAI,uBAAuB,EAAE,cAAc,0BAA0B,CAAC,GAAG,SAAS,CAAC;AAKnF,QAAA,MAAM,0BAA0B,SAA4B,CAAC;AAE7D,OAAO,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { NavigationRouteLike, NavigationStateLike } from './types';
2
+ export declare function findFocusedLeaf(state: NavigationStateLike): {
3
+ route: NavigationRouteLike;
4
+ key: string;
5
+ } | null;
6
+ export declare function collectMountedKeys(state: NavigationStateLike): Map<string, NavigationRouteLike>;
7
+ //# sourceMappingURL=stateTraversal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stateTraversal.d.ts","sourceRoot":"","sources":["../../../src/integrations/react-navigation/stateTraversal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAExE,wBAAgB,eAAe,CAC7B,KAAK,EAAE,mBAAmB,GACzB;IAAE,KAAK,EAAE,mBAAmB,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAUpD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,mBAAmB,GAAG,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CA4B/F"}
@@ -0,0 +1,17 @@
1
+ export type ScreenTimes = {
2
+ dispatchTime?: number;
3
+ lastInteractiveCall?: number;
4
+ };
5
+ export type PendingAction = {
6
+ actionType: string;
7
+ dispatchTime: number;
8
+ };
9
+ export type ReactNavigationIntegrationStorage = {
10
+ pendingActions: PendingAction[];
11
+ renderedScreensIds: Set<string>;
12
+ hasRecordedInitialTtr: boolean;
13
+ screenTimes: Record<string, ScreenTimes>;
14
+ interactiveScreensIds: Set<string>;
15
+ };
16
+ export declare function createReactNavigationIntegrationStorage(): ReactNavigationIntegrationStorage;
17
+ //# sourceMappingURL=storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/integrations/react-navigation/storage.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,kBAAkB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAChC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACzC,qBAAqB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACpC,CAAC;AAEF,wBAAgB,uCAAuC,IAAI,iCAAiC,CAQ3F"}
@@ -0,0 +1,7 @@
1
+ import type { NavigationRoute, NavigationState } from '@react-navigation/native';
2
+ export type NavigationRouteLike = NavigationRoute<any, string> & {
3
+ state: NavigationState;
4
+ };
5
+ export type NavigationStateLike = NavigationState;
6
+ export type GetPathname = (state: NavigationStateLike | undefined) => string | undefined;
7
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/integrations/react-navigation/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEjF,MAAM,MAAM,mBAAmB,GAAG,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG;IAAE,KAAK,EAAE,eAAe,CAAA;CAAE,CAAC;AAC5F,MAAM,MAAM,mBAAmB,GAAG,eAAe,CAAC;AAElD,MAAM,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,mBAAmB,GAAG,SAAS,KAAK,MAAM,GAAG,SAAS,CAAC"}
@@ -0,0 +1,5 @@
1
+ import AppMetrics from 'expo-app-metrics';
2
+ type MarkInteractive = (typeof AppMetrics)['markInteractive'];
3
+ export declare function useObserveForReactNavigation(): MarkInteractive | null;
4
+ export {};
5
+ //# sourceMappingURL=useObserveForReactNavigation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useObserveForReactNavigation.d.ts","sourceRoot":"","sources":["../../../src/integrations/react-navigation/useObserveForReactNavigation.ts"],"names":[],"mappings":"AAAA,OAAO,UAAqC,MAAM,kBAAkB,CAAC;AAUrE,KAAK,eAAe,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,iBAAiB,CAAC,CAAC;AAE9D,wBAAgB,4BAA4B,IAAI,eAAe,GAAG,IAAI,CAoHrE"}
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAU,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAI7D,QAAA,MAAM,WAAW,EAAE,qBAYjB,CAAC;AAEH,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAU,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAI7D,QAAA,MAAM,WAAW,EAAE,qBAuCjB,CAAC;AAEH,eAAe,WAAW,CAAC"}
@@ -1,9 +1,10 @@
1
1
  import { NativeModule } from 'expo';
2
- import type { Config, ExpoObserveModuleType } from './types';
2
+ import type { Config, ExpoObserveModuleType, ObserveAttributes } from './types';
3
3
  export * from './types';
4
4
  declare class ExpoObserveModule extends NativeModule implements ExpoObserveModuleType {
5
5
  dispatchEvents(): Promise<void>;
6
6
  configure(config: Config): void;
7
+ setGlobalAttributes(attributes?: ObserveAttributes | null): void;
7
8
  setBundleDefaults(defaults: {
8
9
  environment: string;
9
10
  isJsDev: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"module.web.d.ts","sourceRoot":"","sources":["../src/module.web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAqB,MAAM,MAAM,CAAC;AAEvD,OAAO,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAE7D,cAAc,SAAS,CAAC;AAExB,cAAM,iBAAkB,SAAQ,YAAa,YAAW,qBAAqB;IACrE,cAAc;IACpB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAC/B,iBAAiB,CAAC,QAAQ,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI;CAC7E;;AAED,wBAAmE"}
1
+ {"version":3,"file":"module.web.d.ts","sourceRoot":"","sources":["../src/module.web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAqB,MAAM,MAAM,CAAC;AAEvD,OAAO,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEhF,cAAc,SAAS,CAAC;AAExB,cAAM,iBAAkB,SAAQ,YAAa,YAAW,qBAAqB;IACrE,cAAc;IACpB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAC/B,mBAAmB,CAAC,UAAU,CAAC,EAAE,iBAAiB,GAAG,IAAI,GAAG,IAAI;IAChE,iBAAiB,CAAC,QAAQ,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI;CAC7E;;AAED,wBAAmE"}
package/build/types.d.ts CHANGED
@@ -1,3 +1,15 @@
1
+ import type { LogAttributeValue } from 'expo-app-metrics';
2
+ /**
3
+ * Value types accepted as attribute values in `setGlobalAttributes` and the
4
+ * other Observe APIs. Strings, numbers, and booleans are stored as typed
5
+ * primitives; arrays and nested maps preserve their structure.
6
+ */
7
+ export type ObserveAttribute = LogAttributeValue;
8
+ /**
9
+ * A map of attribute key to value, as accepted by `setGlobalAttributes` and
10
+ * other Observe APIs that take a free-form attributes payload.
11
+ */
12
+ export type ObserveAttributes = Record<string, ObserveAttribute>;
1
13
  export type Config = {
2
14
  /**
3
15
  * The environment for observability events
@@ -51,7 +63,26 @@ export type Config = {
51
63
  integrations?: IntegrationsConfig;
52
64
  };
53
65
  export interface IntegrationsConfig {
66
+ /**
67
+ * Enables the `expo-router` integration, which records navigation metrics
68
+ * (`cold_ttr`, `warm_ttr`, `tti`) from router state changes.
69
+ *
70
+ * Requires `expo-router` to be installed.
71
+ *
72
+ * @default false
73
+ */
54
74
  'expo-router'?: boolean;
75
+ /**
76
+ * Enables the `@react-navigation/native` integration, which records
77
+ * navigation metrics (`cold_ttr`, `warm_ttr`, `tti`).
78
+ *
79
+ * Requires `@react-navigation/native` to be installed and the app tree
80
+ * to be wrapped in `<ObserveNavigationContainer>` instead of the stock
81
+ * `<NavigationContainer>`.
82
+ *
83
+ * @default false
84
+ */
85
+ 'react-navigation'?: boolean;
55
86
  }
56
87
  export interface ExpoObserveModuleType {
57
88
  dispatchEvents(): Promise<void>;
@@ -59,6 +90,20 @@ export interface ExpoObserveModuleType {
59
90
  * Configures observability settings.
60
91
  */
61
92
  configure(config: Config): void;
93
+ /**
94
+ * Sets attributes merged into every subsequent metric and log event.
95
+ * Per-record keys win on collision. Pass `null`, `undefined`, or an empty
96
+ * object to clear.
97
+ *
98
+ * @example
99
+ * ```ts
100
+ * ExpoObserve.setGlobalAttributes({
101
+ * subscription_tier: 'pro',
102
+ * experiment_variant: 'B',
103
+ * });
104
+ * ```
105
+ */
106
+ setGlobalAttributes(attributes?: ObserveAttributes | null): void;
62
107
  /**
63
108
  * Pushes JS-bundle-derived facts (`process.env.NODE_ENV`, `__DEV__`) into native
64
109
  * storage. Called automatically once when the package is first imported; should
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG;IACnB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;;;;;;;OAYG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;;;;;;;;;OAeG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,YAAY,CAAC,EAAE,kBAAkB,CAAC;CACnC,CAAC;AAEF,MAAM,WAAW,kBAAkB;IACjC,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,qBAAqB;IACpC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC;;;;;;OAMG;IACH,iBAAiB,CAAC,QAAQ,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;CAC9E"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE1D;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAEjD;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;AAEjE,MAAM,MAAM,MAAM,GAAG;IACnB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;;;;;;;OAYG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;;;;;;;;;OAeG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,YAAY,CAAC,EAAE,kBAAkB,CAAC;CACnC,CAAC;AAEF,MAAM,WAAW,kBAAkB;IACjC;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;;;;;;OASG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC;;;;;;;;;;;;OAYG;IACH,mBAAmB,CAAC,UAAU,CAAC,EAAE,iBAAiB,GAAG,IAAI,GAAG,IAAI,CAAC;IACjE;;;;;;OAMG;IACH,iBAAiB,CAAC,QAAQ,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;CAC9E"}
@@ -1 +1 @@
1
- {"version":3,"file":"useObserve.d.ts","sourceRoot":"","sources":["../src/useObserve.ts"],"names":[],"mappings":"AAKA,wBAAgB,UAAU;;EAgBzB"}
1
+ {"version":3,"file":"useObserve.d.ts","sourceRoot":"","sources":["../src/useObserve.ts"],"names":[],"mappings":"AASA,wBAAgB,UAAU;;EA8BzB"}
@@ -9,7 +9,7 @@
9
9
  "publication": {
10
10
  "groupId": "expo.modules.observe",
11
11
  "artifactId": "expo.modules.observe",
12
- "version": "56.0.13",
12
+ "version": "56.0.15",
13
13
  "repository": "local-maven-repo"
14
14
  }
15
15
  }
@@ -54,6 +54,10 @@ public final class ObserveModule: Module {
54
54
  }
55
55
  }
56
56
 
57
+ Function("setGlobalAttributes") { (attributes: [String: Any]?) in
58
+ GlobalAttributes.set(attributes)
59
+ }
60
+
57
61
  Function("setBundleDefaults") { (defaults: BundleDefaults) in
58
62
  guard !defaults.environment.isEmpty else {
59
63
  observeLogger.warn(
@@ -0,0 +1 @@
1
+ e8ac376d02b79b54eec1e70be96a36911f37c98ceec468818fc498eb34a9a66f
@@ -0,0 +1 @@
1
+ 8aad1a6ce1bca3702ee05009447e0c566c8d74a650f34727cafd0512a4f9df855b889e11e361a88066f8487e63122a282701958c12f16aa2d2a003f88672ad43
@@ -0,0 +1 @@
1
+ 82b2416ad6d9a42ccde6ed82b329bf0e7ff276f68e52d0913cb02ef7604c2ad3
@@ -0,0 +1 @@
1
+ 9efc5051325daba80fcfae62e7e3525d1d4fa2cc06df1ff643d4fd52e6772ab485076287a0eabe3a901fdf3879c33d1012ae20c9012dc83467e051f919c28d5f
@@ -3,7 +3,7 @@
3
3
  "component": {
4
4
  "group": "expo.modules.observe",
5
5
  "module": "expo.modules.observe",
6
- "version": "56.0.13",
6
+ "version": "56.0.15",
7
7
  "attributes": {
8
8
  "org.gradle.status": "release"
9
9
  }
@@ -24,13 +24,13 @@
24
24
  },
25
25
  "files": [
26
26
  {
27
- "name": "expo.modules.observe-56.0.13.aar",
28
- "url": "expo.modules.observe-56.0.13.aar",
29
- "size": 253363,
30
- "sha512": "50cea5e87db301f0de212b5dd035f13189478f16fae57ab41252b900a8ac8c390e6f4688de227efdb06305cf94e2c9fc5272a094c2f2be967d80b96fcbda5c51",
31
- "sha256": "ffd3446ce20b98a3348118893fa2bb95e222336ae24f73a493f66ec1fab7b289",
32
- "sha1": "eaff6847cefce38dfb5ab47ba722fa6d1d0dd8b2",
33
- "md5": "371f5265c2470d6b6ca123663fafebf1"
27
+ "name": "expo.modules.observe-56.0.15.aar",
28
+ "url": "expo.modules.observe-56.0.15.aar",
29
+ "size": 256302,
30
+ "sha512": "9efc5051325daba80fcfae62e7e3525d1d4fa2cc06df1ff643d4fd52e6772ab485076287a0eabe3a901fdf3879c33d1012ae20c9012dc83467e051f919c28d5f",
31
+ "sha256": "82b2416ad6d9a42ccde6ed82b329bf0e7ff276f68e52d0913cb02ef7604c2ad3",
32
+ "sha1": "f15dfc19b9a631a875530c1b4ea9f3e6479a79d8",
33
+ "md5": "a97c22a6f592303660aa54b476333d24"
34
34
  }
35
35
  ]
36
36
  },
@@ -61,7 +61,7 @@
61
61
  "group": "expo.modules.appmetrics",
62
62
  "module": "expo.modules.appmetrics",
63
63
  "version": {
64
- "requires": "56.0.11"
64
+ "requires": "56.0.13"
65
65
  }
66
66
  },
67
67
  {
@@ -134,13 +134,13 @@
134
134
  ],
135
135
  "files": [
136
136
  {
137
- "name": "expo.modules.observe-56.0.13.aar",
138
- "url": "expo.modules.observe-56.0.13.aar",
139
- "size": 253363,
140
- "sha512": "50cea5e87db301f0de212b5dd035f13189478f16fae57ab41252b900a8ac8c390e6f4688de227efdb06305cf94e2c9fc5272a094c2f2be967d80b96fcbda5c51",
141
- "sha256": "ffd3446ce20b98a3348118893fa2bb95e222336ae24f73a493f66ec1fab7b289",
142
- "sha1": "eaff6847cefce38dfb5ab47ba722fa6d1d0dd8b2",
143
- "md5": "371f5265c2470d6b6ca123663fafebf1"
137
+ "name": "expo.modules.observe-56.0.15.aar",
138
+ "url": "expo.modules.observe-56.0.15.aar",
139
+ "size": 256302,
140
+ "sha512": "9efc5051325daba80fcfae62e7e3525d1d4fa2cc06df1ff643d4fd52e6772ab485076287a0eabe3a901fdf3879c33d1012ae20c9012dc83467e051f919c28d5f",
141
+ "sha256": "82b2416ad6d9a42ccde6ed82b329bf0e7ff276f68e52d0913cb02ef7604c2ad3",
142
+ "sha1": "f15dfc19b9a631a875530c1b4ea9f3e6479a79d8",
143
+ "md5": "a97c22a6f592303660aa54b476333d24"
144
144
  }
145
145
  ]
146
146
  },
@@ -154,13 +154,13 @@
154
154
  },
155
155
  "files": [
156
156
  {
157
- "name": "expo.modules.observe-56.0.13-sources.jar",
158
- "url": "expo.modules.observe-56.0.13-sources.jar",
159
- "size": 18862,
160
- "sha512": "42d5fd99a4dd595170e277b45e12ba22ffafad09861216734b416b9761366fa2ab98e742f04abb469accc377972e5d610f9c4b5e79c19766d4213a5fbae4646d",
161
- "sha256": "9237960cfc45798d915037c4248acab06666f6185ed22d11d55fae0cdc5023db",
162
- "sha1": "eaadfa035d6a943740b9cf5b20bc349a5c35935b",
163
- "md5": "d3a6b0b2ddf5506bbfb6a5ed83f6ea53"
157
+ "name": "expo.modules.observe-56.0.15-sources.jar",
158
+ "url": "expo.modules.observe-56.0.15-sources.jar",
159
+ "size": 18909,
160
+ "sha512": "8aad1a6ce1bca3702ee05009447e0c566c8d74a650f34727cafd0512a4f9df855b889e11e361a88066f8487e63122a282701958c12f16aa2d2a003f88672ad43",
161
+ "sha256": "e8ac376d02b79b54eec1e70be96a36911f37c98ceec468818fc498eb34a9a66f",
162
+ "sha1": "1bbcc5cfe28166180f319c358807675a719c0167",
163
+ "md5": "2aca2d794e301b33bac5a4bd0edd8075"
164
164
  }
165
165
  ]
166
166
  }
@@ -0,0 +1 @@
1
+ 688e6b81405529836e3cb9b9903512a99898663ac6c2f38a6c21a24178f22536
@@ -0,0 +1 @@
1
+ c69a348c8b2c00be35186439c25dd86035c8fc59106d2493d1113cdd6fd61ef40864c8d6d73aa973ae3f4eefc08a0bc4e2bbe004a2e17068729a2afaeebd2747
@@ -9,7 +9,7 @@
9
9
  <modelVersion>4.0.0</modelVersion>
10
10
  <groupId>expo.modules.observe</groupId>
11
11
  <artifactId>expo.modules.observe</artifactId>
12
- <version>56.0.13</version>
12
+ <version>56.0.15</version>
13
13
  <packaging>aar</packaging>
14
14
  <name>expo.modules.observe</name>
15
15
  <url>https://github.com/expo/expo</url>
@@ -52,7 +52,7 @@
52
52
  <dependency>
53
53
  <groupId>expo.modules.appmetrics</groupId>
54
54
  <artifactId>expo.modules.appmetrics</artifactId>
55
- <version>56.0.11</version>
55
+ <version>56.0.13</version>
56
56
  <scope>runtime</scope>
57
57
  </dependency>
58
58
  <dependency>
@@ -0,0 +1 @@
1
+ d8576cd87930e5a4229f02d9d95a28ccd4568cb6d2184e8734535e56e9da9f93
@@ -0,0 +1 @@
1
+ c823251c1bd77d853ed78a5605438c708c3f5364f0ba2a9eab41e6143f4847209fda8e61223ce3010a73e30de8b0b7056b642692d23afcd1f5f92937204c55db
@@ -3,11 +3,11 @@
3
3
  <groupId>expo.modules.observe</groupId>
4
4
  <artifactId>expo.modules.observe</artifactId>
5
5
  <versioning>
6
- <latest>56.0.13</latest>
7
- <release>56.0.13</release>
6
+ <latest>56.0.15</latest>
7
+ <release>56.0.15</release>
8
8
  <versions>
9
- <version>56.0.13</version>
9
+ <version>56.0.15</version>
10
10
  </versions>
11
- <lastUpdated>20260521101348</lastUpdated>
11
+ <lastUpdated>20260523133916</lastUpdated>
12
12
  </versioning>
13
13
  </metadata>
@@ -1 +1 @@
1
- 07a4f33f2abc481c13d07b6a6e0191e3
1
+ 173719eefdddc2002e3ea67946c70c74
@@ -1 +1 @@
1
- d8c51937821759215bb2121e90cb9676f9ca8dde
1
+ e8cd7c7a4dabafe09356b1144ab99c5458039df0
@@ -1 +1 @@
1
- 4f10c91b76b65fab7b572f384090359d3a1fe175e3916246888dbdad86de2267
1
+ d4ce84c955e368153f28552ebb5a85421cad919707006cb749a5a347675e623a
@@ -1 +1 @@
1
- b8b69d5e2d9a64ea000cd9a9c3abeeeb736ef23c2c15b77c81dd8d1be7d277f15fc34b455fe69ac48cb129796c9d7bf0626c3d342fc88cc212ddfa1df63bf4c9
1
+ 766b5723375a83b3511eee50b82197e8fb7da485c9ead50d0d704ec198cceb06d7ba48ad27a761669079409268ae11bfa5b3dd8c92b6601ed2dc5d65dbdd616c
package/package.json CHANGED
@@ -1,10 +1,21 @@
1
1
  {
2
2
  "name": "expo-observe",
3
3
  "title": "Expo Observe",
4
- "version": "56.0.13",
4
+ "version": "56.0.15",
5
5
  "description": "Expo module that dispatches collected app metrics to EAS Observe",
6
6
  "main": "src/index.ts",
7
7
  "types": "build/index.d.ts",
8
+ "exports": {
9
+ "./package.json": "./package.json",
10
+ ".": {
11
+ "types": "./build/index.d.ts",
12
+ "default": "./src/index.ts"
13
+ },
14
+ "./integrations/react-navigation": {
15
+ "types": "./build/integrations/react-navigation/index.d.ts",
16
+ "default": "./src/integrations/react-navigation/index.ts"
17
+ }
18
+ },
8
19
  "sideEffects": false,
9
20
  "homepage": "https://docs.expo.dev/",
10
21
  "repository": {
@@ -24,27 +35,32 @@
24
35
  "author": "650 Industries, Inc.",
25
36
  "license": "MIT",
26
37
  "dependencies": {
27
- "expo-app-metrics": "~56.0.11",
38
+ "expo-app-metrics": "~56.0.13",
28
39
  "expo-eas-client": "~56.0.0"
29
40
  },
30
41
  "devDependencies": {
42
+ "@react-navigation/native": "^7.1.33",
31
43
  "@testing-library/react-native": "^13.3.0",
32
44
  "@types/react": "~19.2.0",
33
- "expo": "56.0.2",
45
+ "expo": "56.0.4",
34
46
  "expo-module-scripts": "56.0.2"
35
47
  },
36
48
  "peerDependencies": {
37
49
  "expo": "*",
38
50
  "react": "*",
39
51
  "react-native": "*",
40
- "expo-router": "*"
52
+ "expo-router": "*",
53
+ "@react-navigation/native": "^7.0.0"
41
54
  },
42
55
  "peerDependenciesMeta": {
43
56
  "expo-router": {
44
57
  "optional": true
58
+ },
59
+ "@react-navigation/native": {
60
+ "optional": true
45
61
  }
46
62
  },
47
- "gitHead": "2e3e8a28ea97a8b9e3faa6b9ccae51d2e91a30e2",
63
+ "gitHead": "6dfb0e4c958a1ea1d66d3f7952494ac58430ad45",
48
64
  "scripts": {
49
65
  "build": "expo-module build",
50
66
  "clean": "expo-module clean",