@debugkit/sdk 0.2.0 → 0.3.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 (41) hide show
  1. package/dist/{chunk-5C7KJJNO.js → chunk-5PCBQL5S.js} +7 -3
  2. package/dist/chunk-5PCBQL5S.js.map +1 -0
  3. package/dist/{chunk-YELZOB7J.cjs → chunk-EH2FC54I.cjs} +8 -8
  4. package/dist/{chunk-YELZOB7J.cjs.map → chunk-EH2FC54I.cjs.map} +1 -1
  5. package/dist/{chunk-NJ6DTUVX.cjs → chunk-JWCGEOCU.cjs} +8 -8
  6. package/dist/{chunk-NJ6DTUVX.cjs.map → chunk-JWCGEOCU.cjs.map} +1 -1
  7. package/dist/{chunk-EGCXLOFH.cjs → chunk-Q33W6RAG.cjs} +7 -3
  8. package/dist/chunk-Q33W6RAG.cjs.map +1 -0
  9. package/dist/{chunk-HO3JW55K.js → chunk-T56RQGKR.js} +3 -3
  10. package/dist/{chunk-HO3JW55K.js.map → chunk-T56RQGKR.js.map} +1 -1
  11. package/dist/{chunk-3WRI3DI2.js → chunk-TRUHD4EU.js} +3 -3
  12. package/dist/{chunk-3WRI3DI2.js.map → chunk-TRUHD4EU.js.map} +1 -1
  13. package/dist/{client-ekzlpWIR.d.cts → client-VakEOlcU.d.cts} +3 -1
  14. package/dist/{client-ekzlpWIR.d.ts → client-VakEOlcU.d.ts} +3 -1
  15. package/dist/expo-router.cjs +4 -4
  16. package/dist/expo-router.d.cts +1 -1
  17. package/dist/expo-router.d.ts +1 -1
  18. package/dist/expo-router.js +2 -2
  19. package/dist/expo.cjs +13 -13
  20. package/dist/expo.d.cts +1 -1
  21. package/dist/expo.d.ts +1 -1
  22. package/dist/expo.js +5 -5
  23. package/dist/index.cjs +9 -9
  24. package/dist/index.d.cts +2 -2
  25. package/dist/index.d.ts +2 -2
  26. package/dist/index.js +1 -1
  27. package/dist/node.cjs +14 -14
  28. package/dist/node.d.cts +2 -2
  29. package/dist/node.d.ts +2 -2
  30. package/dist/node.js +2 -2
  31. package/dist/react-native.cjs +10 -10
  32. package/dist/react-native.d.cts +1 -1
  33. package/dist/react-native.d.ts +1 -1
  34. package/dist/react-native.js +3 -3
  35. package/dist/react.cjs +6 -6
  36. package/dist/react.d.cts +1 -1
  37. package/dist/react.d.ts +1 -1
  38. package/dist/react.js +2 -2
  39. package/package.json +2 -2
  40. package/dist/chunk-5C7KJJNO.js.map +0 -1
  41. package/dist/chunk-EGCXLOFH.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/react-native.ts"],"names":[],"mappings":"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","file":"chunk-HO3JW55K.js","sourcesContent":["import { AppState, Platform } from \"react-native\";\nimport { deBug, type DebugClient, type InitOptions } from \"./index\";\nimport { locale, mergeContext, timezone, type ContextPatch } from \"./context\";\n\nexport * from \"./react\";\n\n/** The subset of react-native-device-info we read. Pass the module itself: `import DeviceInfo from \"react-native-device-info\"`. */\nexport interface DeviceInfoModule {\n getModel(): string;\n getBrand(): string;\n getVersion(): string;\n getBuildNumber(): string;\n isTablet(): boolean;\n getManufacturerSync?(): string;\n isEmulatorSync?(): boolean;\n getTotalMemorySync?(): number;\n}\n\ntype RNConstants = {\n Release?: string;\n Model?: string;\n Brand?: string;\n Manufacturer?: string;\n Fingerprint?: string;\n reactNativeVersion?: { major: number; minor: number; patch: number };\n};\n\n/**\n * Context for bare React Native. Reads what `react-native` exposes on its own; pass\n * react-native-device-info for model, app version and memory on both platforms.\n */\nexport function nativeContext(opts: { deviceInfo?: DeviceInfoModule } = {}): ContextPatch {\n const c = (Platform.constants ?? {}) as RNConstants;\n const di = opts.deviceInfo;\n const rn = c.reactNativeVersion;\n const hermes = typeof (globalThis as { HermesInternal?: unknown }).HermesInternal !== \"undefined\";\n const call = <T,>(fn?: () => T) => {\n try {\n return fn?.();\n } catch {\n return undefined;\n }\n };\n const totalMemory = call(di?.getTotalMemorySync?.bind(di));\n return {\n os: { name: Platform.OS, version: Platform.OS === \"android\" ? (c.Release ?? String(Platform.Version)) : String(Platform.Version) },\n runtime: { name: \"react-native\", version: rn ? `${rn.major}.${rn.minor}.${rn.patch}` : undefined, engine: hermes ? \"hermes\" : \"jsc\" },\n device: {\n model: call(di?.getModel.bind(di)) ?? c.Model,\n brand: call(di?.getBrand.bind(di)) ?? c.Brand,\n manufacturer: call(di?.getManufacturerSync?.bind(di)) ?? c.Manufacturer,\n isEmulator: call(di?.isEmulatorSync?.bind(di)) ?? (c.Fingerprint ? /generic|emulator/i.test(c.Fingerprint) : undefined),\n memoryMb: totalMemory ? Math.round(totalMemory / 1024 / 1024) : undefined,\n type: di ? (call(di.isTablet.bind(di)) ? \"tablet\" : \"phone\") : Platform.OS === \"ios\" && (Platform as { isPad?: boolean }).isPad ? \"tablet\" : \"phone\",\n },\n app: { version: call(di?.getVersion.bind(di)), build: call(di?.getBuildNumber.bind(di)) } as ContextPatch[\"app\"],\n locale: locale(),\n timezone: timezone(),\n };\n}\n\nexport interface ReactNativeInitOptions extends InitOptions {\n deviceInfo?: DeviceInfoModule;\n /**\n * Report unhandled promise rejections (Hermes). Default \"production\": in development React\n * Native's own yellow-box warning keeps working. `true` captures in development too.\n */\n captureUnhandledRejections?: boolean | \"production\";\n}\n\ndeclare const __DEV__: boolean | undefined;\n\nconst SESSION_TIMEOUT_MS = 30 * 60_000;\n\n/** Initialise deBug in a React Native app (bare or Expo). Fills in device context and flushes when the app is backgrounded. */\nexport function initReactNative(options: ReactNativeInitOptions, client: DebugClient = deBug): DebugClient {\n const { deviceInfo, captureUnhandledRejections = \"production\", ...rest } = options;\n const base = nativeContext({ deviceInfo });\n client.init({\n ...rest,\n app: { ...(base.app as object), ...rest.app },\n context: mergeContext(base, rest.context ?? {}),\n });\n\n // Sessions end after 30 minutes in the background; coming back after that starts a new one.\n let backgroundedAt = 0;\n AppState.addEventListener(\"change\", (state) => {\n if (state === \"active\") {\n if (client.autoCapture.lifecycle) client.sink().lifecycle(\"foreground\");\n if (backgroundedAt && Date.now() - backgroundedAt > SESSION_TIMEOUT_MS) client.startSession();\n backgroundedAt = 0;\n } else if (!backgroundedAt) {\n backgroundedAt = Date.now();\n if (client.autoCapture.lifecycle) client.sink().lifecycle(\"background\");\n else void client.flush();\n }\n });\n\n const dev = typeof __DEV__ !== \"undefined\" && __DEV__;\n const tracker = (globalThis as { HermesInternal?: { enablePromiseRejectionTracker?: (o: object) => void } }).HermesInternal\n ?.enablePromiseRejectionTracker;\n if (tracker && (captureUnhandledRejections === true || (captureUnhandledRejections === \"production\" && !dev))) {\n tracker({\n allRejections: true,\n onUnhandled: (_id: number, reason: unknown) => client.error(reason, { handled: false, tags: { source: \"unhandled-rejection\" } }),\n onHandled: () => {},\n });\n }\n return client;\n}\n\n/** Minimal shape of a React Navigation container ref. */\ninterface NavigationRefLike {\n getCurrentRoute(): { name: string } | undefined;\n}\n\n/**\n * Breadcrumbs for React Navigation. Spread the result onto your container:\n * const nav = useNavigationContainerRef();\n * <NavigationContainer ref={nav} {...trackReactNavigation(nav)}>\n */\nexport function trackReactNavigation(ref: NavigationRefLike, client: DebugClient = deBug) {\n const record = () => {\n const name = ref.getCurrentRoute()?.name;\n if (name) client.navigated(name);\n };\n return { onReady: record, onStateChange: record };\n}\n"]}
1
+ {"version":3,"sources":["../src/react-native.ts"],"names":[],"mappings":"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","file":"chunk-T56RQGKR.js","sourcesContent":["import { AppState, Platform } from \"react-native\";\nimport { deBug, type DebugClient, type InitOptions } from \"./index\";\nimport { locale, mergeContext, timezone, type ContextPatch } from \"./context\";\n\nexport * from \"./react\";\n\n/** The subset of react-native-device-info we read. Pass the module itself: `import DeviceInfo from \"react-native-device-info\"`. */\nexport interface DeviceInfoModule {\n getModel(): string;\n getBrand(): string;\n getVersion(): string;\n getBuildNumber(): string;\n isTablet(): boolean;\n getManufacturerSync?(): string;\n isEmulatorSync?(): boolean;\n getTotalMemorySync?(): number;\n}\n\ntype RNConstants = {\n Release?: string;\n Model?: string;\n Brand?: string;\n Manufacturer?: string;\n Fingerprint?: string;\n reactNativeVersion?: { major: number; minor: number; patch: number };\n};\n\n/**\n * Context for bare React Native. Reads what `react-native` exposes on its own; pass\n * react-native-device-info for model, app version and memory on both platforms.\n */\nexport function nativeContext(opts: { deviceInfo?: DeviceInfoModule } = {}): ContextPatch {\n const c = (Platform.constants ?? {}) as RNConstants;\n const di = opts.deviceInfo;\n const rn = c.reactNativeVersion;\n const hermes = typeof (globalThis as { HermesInternal?: unknown }).HermesInternal !== \"undefined\";\n const call = <T,>(fn?: () => T) => {\n try {\n return fn?.();\n } catch {\n return undefined;\n }\n };\n const totalMemory = call(di?.getTotalMemorySync?.bind(di));\n return {\n os: { name: Platform.OS, version: Platform.OS === \"android\" ? (c.Release ?? String(Platform.Version)) : String(Platform.Version) },\n runtime: { name: \"react-native\", version: rn ? `${rn.major}.${rn.minor}.${rn.patch}` : undefined, engine: hermes ? \"hermes\" : \"jsc\" },\n device: {\n model: call(di?.getModel.bind(di)) ?? c.Model,\n brand: call(di?.getBrand.bind(di)) ?? c.Brand,\n manufacturer: call(di?.getManufacturerSync?.bind(di)) ?? c.Manufacturer,\n isEmulator: call(di?.isEmulatorSync?.bind(di)) ?? (c.Fingerprint ? /generic|emulator/i.test(c.Fingerprint) : undefined),\n memoryMb: totalMemory ? Math.round(totalMemory / 1024 / 1024) : undefined,\n type: di ? (call(di.isTablet.bind(di)) ? \"tablet\" : \"phone\") : Platform.OS === \"ios\" && (Platform as { isPad?: boolean }).isPad ? \"tablet\" : \"phone\",\n },\n app: { version: call(di?.getVersion.bind(di)), build: call(di?.getBuildNumber.bind(di)) } as ContextPatch[\"app\"],\n locale: locale(),\n timezone: timezone(),\n };\n}\n\nexport interface ReactNativeInitOptions extends InitOptions {\n deviceInfo?: DeviceInfoModule;\n /**\n * Report unhandled promise rejections (Hermes). Default \"production\": in development React\n * Native's own yellow-box warning keeps working. `true` captures in development too.\n */\n captureUnhandledRejections?: boolean | \"production\";\n}\n\ndeclare const __DEV__: boolean | undefined;\n\nconst SESSION_TIMEOUT_MS = 30 * 60_000;\n\n/** Initialise deBug in a React Native app (bare or Expo). Fills in device context and flushes when the app is backgrounded. */\nexport function initReactNative(options: ReactNativeInitOptions, client: DebugClient = deBug): DebugClient {\n const { deviceInfo, captureUnhandledRejections = \"production\", ...rest } = options;\n const base = nativeContext({ deviceInfo });\n client.init({\n ...rest,\n app: { ...(base.app as object), ...rest.app },\n context: mergeContext(base, rest.context ?? {}),\n });\n\n // Sessions end after 30 minutes in the background; coming back after that starts a new one.\n let backgroundedAt = 0;\n AppState.addEventListener(\"change\", (state) => {\n if (state === \"active\") {\n if (client.autoCapture.lifecycle) client.sink().lifecycle(\"foreground\");\n if (backgroundedAt && Date.now() - backgroundedAt > SESSION_TIMEOUT_MS) client.startSession();\n backgroundedAt = 0;\n } else if (!backgroundedAt) {\n backgroundedAt = Date.now();\n if (client.autoCapture.lifecycle) client.sink().lifecycle(\"background\");\n else void client.flush();\n }\n });\n\n const dev = typeof __DEV__ !== \"undefined\" && __DEV__;\n const tracker = (globalThis as { HermesInternal?: { enablePromiseRejectionTracker?: (o: object) => void } }).HermesInternal\n ?.enablePromiseRejectionTracker;\n if (tracker && (captureUnhandledRejections === true || (captureUnhandledRejections === \"production\" && !dev))) {\n tracker({\n allRejections: true,\n onUnhandled: (_id: number, reason: unknown) => client.error(reason, { handled: false, tags: { source: \"unhandled-rejection\" } }),\n onHandled: () => {},\n });\n }\n return client;\n}\n\n/** Minimal shape of a React Navigation container ref. */\ninterface NavigationRefLike {\n getCurrentRoute(): { name: string } | undefined;\n}\n\n/**\n * Breadcrumbs for React Navigation. Spread the result onto your container:\n * const nav = useNavigationContainerRef();\n * <NavigationContainer ref={nav} {...trackReactNavigation(nav)}>\n */\nexport function trackReactNavigation(ref: NavigationRefLike, client: DebugClient = deBug) {\n const record = () => {\n const name = ref.getCurrentRoute()?.name;\n if (name) client.navigated(name);\n };\n return { onReady: record, onStateChange: record };\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { deBug, __publicField } from './chunk-5C7KJJNO.js';
1
+ import { deBug, __publicField } from './chunk-5PCBQL5S.js';
2
2
  import { Component, useEffect } from 'react';
3
3
 
4
4
  var DebugErrorBoundary = class extends Component {
@@ -37,5 +37,5 @@ function trackTanStackRouter(router, client = deBug) {
37
37
  }
38
38
 
39
39
  export { DebugErrorBoundary, trackTanStackRouter, useDebugNavigation };
40
- //# sourceMappingURL=chunk-3WRI3DI2.js.map
41
- //# sourceMappingURL=chunk-3WRI3DI2.js.map
40
+ //# sourceMappingURL=chunk-TRUHD4EU.js.map
41
+ //# sourceMappingURL=chunk-TRUHD4EU.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/react.tsx"],"names":[],"mappings":";;;AAqBO,IAAM,kBAAA,GAAN,cAAiC,SAAA,CAA0C;AAAA,EAA3E,WAAA,GAAA;AAAA,IAAA,KAAA,CAAA,GAAA,SAAA,CAAA;AACL,IAAA,aAAA,CAAA,IAAA,EAAA,OAAA,EAAe,EAAE,OAAO,IAAA,EAAK,CAAA;AAgB7B,IAAA,aAAA,CAAA,IAAA,EAAA,OAAA,EAAQ,MAAM,IAAA,CAAK,QAAA,CAAS,EAAE,KAAA,EAAO,MAAM,CAAA,CAAA;AAAA,EAAA;AAAA,EAd3C,OAAO,yBAAyB,KAAA,EAAqB;AACnD,IAAA,OAAO,EAAE,KAAA,EAAM;AAAA,EACjB;AAAA,EAEA,iBAAA,CAAkB,OAAc,IAAA,EAAiB;AA5BnD,IAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AA6BI,IAAA,MAAM,MAAA,GAAA,CAAS,EAAA,GAAA,IAAA,CAAK,KAAA,CAAM,MAAA,KAAX,IAAA,GAAA,EAAA,GAAqB,KAAA;AACpC,IAAA,IAAI,KAAK,cAAA,EAAgB;AACvB,MAAA,MAAA,CAAO,UAAA,CAAW,IAAA,EAAM,oBAAA,EAAsB,EAAE,gBAAgB,IAAA,CAAK,cAAA,CAAe,IAAA,EAAK,CAAE,KAAA,CAAM,CAAA,EAAG,IAAI,CAAA,IAAK,OAAO,CAAA;AAAA,IACtH;AACA,IAAA,MAAA,CAAO,KAAA,CAAM,KAAA,EAAO,EAAE,IAAA,EAAM,KAAK,KAAA,CAAM,IAAA,EAAM,OAAA,EAAS,KAAA,EAAO,IAAA,EAAM,EAAE,MAAA,EAAQ,gBAAA,IAAoB,CAAA;AACjG,IAAA,KAAK,OAAO,KAAA,EAAM;AAClB,IAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,IAAA,CAAK,KAAA,EAAM,OAAA,KAAX,IAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAA,CAAA,EAAA,EAAqB,KAAA,EAAO,IAAA,CAAA;AAAA,EAC9B;AAAA,EAIA,MAAA,GAAS;AACP,IAAA,MAAM,EAAE,KAAA,EAAM,GAAI,IAAA,CAAK,KAAA;AACvB,IAAA,IAAI,CAAC,KAAA,EAAO,OAAO,IAAA,CAAK,KAAA,CAAM,QAAA;AAC9B,IAAA,MAAM,EAAE,QAAA,EAAS,GAAI,IAAA,CAAK,KAAA;AAC1B,IAAA,OAAO,OAAO,QAAA,KAAa,UAAA,GAAa,QAAA,CAAS,EAAE,KAAA,EAAO,KAAA,EAAO,IAAA,CAAK,KAAA,EAAO,CAAA,GAAK,QAAA,IAAA,IAAA,GAAA,QAAA,GAAY,IAAA;AAAA,EAChG;AACF;AAGO,SAAS,kBAAA,CAAmB,IAAA,EAA0B,MAAA,GAAsB,KAAA,EAAO;AACxF,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,IAAA,EAAM,MAAA,CAAO,SAAA,CAAU,IAAI,CAAA;AAAA,EACjC,CAAA,EAAG,CAAC,IAAA,EAAM,MAAM,CAAC,CAAA;AACnB;AAYO,SAAS,mBAAA,CAAoB,MAAA,EAAoB,MAAA,GAAsB,KAAA,EAAO;AACnF,EAAA,OAAO,MAAA,CAAO,SAAA,CAAU,YAAA,EAAc,CAAC,EAAE,UAAA,EAAW,KAAM,MAAA,CAAO,SAAA,CAAU,UAAA,CAAW,QAAQ,CAAC,CAAA;AACjG","file":"chunk-3WRI3DI2.js","sourcesContent":["import { Component, useEffect, type ErrorInfo, type ReactNode } from \"react\";\nimport { deBug, type DebugClient } from \"./index\";\n\nexport interface DebugErrorBoundaryProps {\n children?: ReactNode;\n /** What to render after a crash. A function gets the error and a reset callback. */\n fallback?: ReactNode | ((props: { error: Error; reset: () => void }) => ReactNode);\n /** Part of the app this boundary protects, e.g. \"checkout\". */\n flow?: string;\n client?: DebugClient;\n onError?: (error: Error, info: ErrorInfo) => void;\n}\n\ninterface State {\n error: Error | null;\n}\n\n/**\n * Catches render errors that React would otherwise swallow (or turn into a white/red screen)\n * and reports them. Works in React DOM and React Native.\n */\nexport class DebugErrorBoundary extends Component<DebugErrorBoundaryProps, State> {\n state: State = { error: null };\n\n static getDerivedStateFromError(error: Error): State {\n return { error };\n }\n\n componentDidCatch(error: Error, info: ErrorInfo) {\n const client = this.props.client ?? deBug;\n if (info.componentStack) {\n client.breadcrumb(\"ui\", \"React render error\", { componentStack: info.componentStack.trim().slice(0, 1500) }, \"error\");\n }\n client.error(error, { flow: this.props.flow, handled: false, tags: { source: \"error-boundary\" } });\n void client.flush();\n this.props.onError?.(error, info);\n }\n\n reset = () => this.setState({ error: null });\n\n render() {\n const { error } = this.state;\n if (!error) return this.props.children;\n const { fallback } = this.props;\n return typeof fallback === \"function\" ? fallback({ error, reset: this.reset }) : (fallback ?? null);\n }\n}\n\n/** Adds a navigation breadcrumb whenever `path` changes. Works with any router. */\nexport function useDebugNavigation(path: string | undefined, client: DebugClient = deBug) {\n useEffect(() => {\n if (path) client.navigated(path);\n }, [path, client]);\n}\n\n/** Minimal shape of a TanStack Router instance (avoids a hard dependency). */\ninterface RouterLike {\n subscribe(event: \"onResolved\", fn: (e: { toLocation: { pathname: string; href?: string } }) => void): () => void;\n}\n\n/**\n * Records a breadcrumb for every navigation in a TanStack Router app:\n * const router = createRouter({ routeTree }); trackTanStackRouter(router);\n * Returns an unsubscribe function.\n */\nexport function trackTanStackRouter(router: RouterLike, client: DebugClient = deBug) {\n return router.subscribe(\"onResolved\", ({ toLocation }) => client.navigated(toLocation.pathname));\n}\n\nexport { deBug } from \"./index\";\n"]}
1
+ {"version":3,"sources":["../src/react.tsx"],"names":[],"mappings":";;;AAqBO,IAAM,kBAAA,GAAN,cAAiC,SAAA,CAA0C;AAAA,EAA3E,WAAA,GAAA;AAAA,IAAA,KAAA,CAAA,GAAA,SAAA,CAAA;AACL,IAAA,aAAA,CAAA,IAAA,EAAA,OAAA,EAAe,EAAE,OAAO,IAAA,EAAK,CAAA;AAgB7B,IAAA,aAAA,CAAA,IAAA,EAAA,OAAA,EAAQ,MAAM,IAAA,CAAK,QAAA,CAAS,EAAE,KAAA,EAAO,MAAM,CAAA,CAAA;AAAA,EAAA;AAAA,EAd3C,OAAO,yBAAyB,KAAA,EAAqB;AACnD,IAAA,OAAO,EAAE,KAAA,EAAM;AAAA,EACjB;AAAA,EAEA,iBAAA,CAAkB,OAAc,IAAA,EAAiB;AA5BnD,IAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AA6BI,IAAA,MAAM,MAAA,GAAA,CAAS,EAAA,GAAA,IAAA,CAAK,KAAA,CAAM,MAAA,KAAX,IAAA,GAAA,EAAA,GAAqB,KAAA;AACpC,IAAA,IAAI,KAAK,cAAA,EAAgB;AACvB,MAAA,MAAA,CAAO,UAAA,CAAW,IAAA,EAAM,oBAAA,EAAsB,EAAE,gBAAgB,IAAA,CAAK,cAAA,CAAe,IAAA,EAAK,CAAE,KAAA,CAAM,CAAA,EAAG,IAAI,CAAA,IAAK,OAAO,CAAA;AAAA,IACtH;AACA,IAAA,MAAA,CAAO,KAAA,CAAM,KAAA,EAAO,EAAE,IAAA,EAAM,KAAK,KAAA,CAAM,IAAA,EAAM,OAAA,EAAS,KAAA,EAAO,IAAA,EAAM,EAAE,MAAA,EAAQ,gBAAA,IAAoB,CAAA;AACjG,IAAA,KAAK,OAAO,KAAA,EAAM;AAClB,IAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,IAAA,CAAK,KAAA,EAAM,OAAA,KAAX,IAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAA,CAAA,EAAA,EAAqB,KAAA,EAAO,IAAA,CAAA;AAAA,EAC9B;AAAA,EAIA,MAAA,GAAS;AACP,IAAA,MAAM,EAAE,KAAA,EAAM,GAAI,IAAA,CAAK,KAAA;AACvB,IAAA,IAAI,CAAC,KAAA,EAAO,OAAO,IAAA,CAAK,KAAA,CAAM,QAAA;AAC9B,IAAA,MAAM,EAAE,QAAA,EAAS,GAAI,IAAA,CAAK,KAAA;AAC1B,IAAA,OAAO,OAAO,QAAA,KAAa,UAAA,GAAa,QAAA,CAAS,EAAE,KAAA,EAAO,KAAA,EAAO,IAAA,CAAK,KAAA,EAAO,CAAA,GAAK,QAAA,IAAA,IAAA,GAAA,QAAA,GAAY,IAAA;AAAA,EAChG;AACF;AAGO,SAAS,kBAAA,CAAmB,IAAA,EAA0B,MAAA,GAAsB,KAAA,EAAO;AACxF,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,IAAA,EAAM,MAAA,CAAO,SAAA,CAAU,IAAI,CAAA;AAAA,EACjC,CAAA,EAAG,CAAC,IAAA,EAAM,MAAM,CAAC,CAAA;AACnB;AAYO,SAAS,mBAAA,CAAoB,MAAA,EAAoB,MAAA,GAAsB,KAAA,EAAO;AACnF,EAAA,OAAO,MAAA,CAAO,SAAA,CAAU,YAAA,EAAc,CAAC,EAAE,UAAA,EAAW,KAAM,MAAA,CAAO,SAAA,CAAU,UAAA,CAAW,QAAQ,CAAC,CAAA;AACjG","file":"chunk-TRUHD4EU.js","sourcesContent":["import { Component, useEffect, type ErrorInfo, type ReactNode } from \"react\";\nimport { deBug, type DebugClient } from \"./index\";\n\nexport interface DebugErrorBoundaryProps {\n children?: ReactNode;\n /** What to render after a crash. A function gets the error and a reset callback. */\n fallback?: ReactNode | ((props: { error: Error; reset: () => void }) => ReactNode);\n /** Part of the app this boundary protects, e.g. \"checkout\". */\n flow?: string;\n client?: DebugClient;\n onError?: (error: Error, info: ErrorInfo) => void;\n}\n\ninterface State {\n error: Error | null;\n}\n\n/**\n * Catches render errors that React would otherwise swallow (or turn into a white/red screen)\n * and reports them. Works in React DOM and React Native.\n */\nexport class DebugErrorBoundary extends Component<DebugErrorBoundaryProps, State> {\n state: State = { error: null };\n\n static getDerivedStateFromError(error: Error): State {\n return { error };\n }\n\n componentDidCatch(error: Error, info: ErrorInfo) {\n const client = this.props.client ?? deBug;\n if (info.componentStack) {\n client.breadcrumb(\"ui\", \"React render error\", { componentStack: info.componentStack.trim().slice(0, 1500) }, \"error\");\n }\n client.error(error, { flow: this.props.flow, handled: false, tags: { source: \"error-boundary\" } });\n void client.flush();\n this.props.onError?.(error, info);\n }\n\n reset = () => this.setState({ error: null });\n\n render() {\n const { error } = this.state;\n if (!error) return this.props.children;\n const { fallback } = this.props;\n return typeof fallback === \"function\" ? fallback({ error, reset: this.reset }) : (fallback ?? null);\n }\n}\n\n/** Adds a navigation breadcrumb whenever `path` changes. Works with any router. */\nexport function useDebugNavigation(path: string | undefined, client: DebugClient = deBug) {\n useEffect(() => {\n if (path) client.navigated(path);\n }, [path, client]);\n}\n\n/** Minimal shape of a TanStack Router instance (avoids a hard dependency). */\ninterface RouterLike {\n subscribe(event: \"onResolved\", fn: (e: { toLocation: { pathname: string; href?: string } }) => void): () => void;\n}\n\n/**\n * Records a breadcrumb for every navigation in a TanStack Router app:\n * const router = createRouter({ routeTree }); trackTanStackRouter(router);\n * Returns an unsubscribe function.\n */\nexport function trackTanStackRouter(router: RouterLike, client: DebugClient = deBug) {\n return router.subscribe(\"onResolved\", ({ toLocation }) => client.navigated(toLocation.pathname));\n}\n\nexport { deBug } from \"./index\";\n"]}
@@ -44,7 +44,7 @@ interface AutoSink {
44
44
  declare function normaliseUrl(raw: string): string;
45
45
 
46
46
  declare const SDK_NAME = "@debugkit/sdk";
47
- declare const SDK_VERSION = "0.2.0";
47
+ declare const SDK_VERSION = "0.3.0";
48
48
  /** Optional persistence so events survive app restarts / offline. e.g. AsyncStorage. */
49
49
  interface QueueStorage {
50
50
  getItem(key: string): Promise<string | null>;
@@ -153,6 +153,8 @@ declare class DebugClient {
153
153
  /** Record a navigation breadcrumb ("from → to"). Repeated paths are ignored. */
154
154
  navigated(to: string): void;
155
155
  get initialized(): boolean;
156
+ /** Events waiting to be sent. */
157
+ get pending(): number;
156
158
  /** Merge extra context (e.g. after an async device lookup). Applies to events sent from now on. */
157
159
  setContext(patch: ContextPatch): void;
158
160
  setUser(id: string | undefined): void;
@@ -44,7 +44,7 @@ interface AutoSink {
44
44
  declare function normaliseUrl(raw: string): string;
45
45
 
46
46
  declare const SDK_NAME = "@debugkit/sdk";
47
- declare const SDK_VERSION = "0.2.0";
47
+ declare const SDK_VERSION = "0.3.0";
48
48
  /** Optional persistence so events survive app restarts / offline. e.g. AsyncStorage. */
49
49
  interface QueueStorage {
50
50
  getItem(key: string): Promise<string | null>;
@@ -153,6 +153,8 @@ declare class DebugClient {
153
153
  /** Record a navigation breadcrumb ("from → to"). Repeated paths are ignored. */
154
154
  navigated(to: string): void;
155
155
  get initialized(): boolean;
156
+ /** Events waiting to be sent. */
157
+ get pending(): number;
156
158
  /** Merge extra context (e.g. after an async device lookup). Applies to events sent from now on. */
157
159
  setContext(patch: ContextPatch): void;
158
160
  setUser(id: string | undefined): void;
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var chunkYELZOB7J_cjs = require('./chunk-YELZOB7J.cjs');
4
- var chunkEGCXLOFH_cjs = require('./chunk-EGCXLOFH.cjs');
3
+ var chunkEH2FC54I_cjs = require('./chunk-EH2FC54I.cjs');
4
+ var chunkQ33W6RAG_cjs = require('./chunk-Q33W6RAG.cjs');
5
5
  var expoRouter = require('expo-router');
6
6
 
7
- function useDebugExpoRouter(client = chunkEGCXLOFH_cjs.deBug) {
8
- chunkYELZOB7J_cjs.useDebugNavigation(expoRouter.usePathname(), client);
7
+ function useDebugExpoRouter(client = chunkQ33W6RAG_cjs.deBug) {
8
+ chunkEH2FC54I_cjs.useDebugNavigation(expoRouter.usePathname(), client);
9
9
  }
10
10
 
11
11
  exports.useDebugExpoRouter = useDebugExpoRouter;
@@ -1,4 +1,4 @@
1
- import { D as DebugClient } from './client-ekzlpWIR.cjs';
1
+ import { D as DebugClient } from './client-VakEOlcU.cjs';
2
2
  import '@debugkit/schema/core';
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { D as DebugClient } from './client-ekzlpWIR.js';
1
+ import { D as DebugClient } from './client-VakEOlcU.js';
2
2
  import '@debugkit/schema/core';
3
3
 
4
4
  /**
@@ -1,5 +1,5 @@
1
- import { useDebugNavigation } from './chunk-3WRI3DI2.js';
2
- import { deBug } from './chunk-5C7KJJNO.js';
1
+ import { useDebugNavigation } from './chunk-TRUHD4EU.js';
2
+ import { deBug } from './chunk-5PCBQL5S.js';
3
3
  import { usePathname } from 'expo-router';
4
4
 
5
5
  function useDebugExpoRouter(client = deBug) {
package/dist/expo.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var chunkNJ6DTUVX_cjs = require('./chunk-NJ6DTUVX.cjs');
4
- var chunkYELZOB7J_cjs = require('./chunk-YELZOB7J.cjs');
5
- var chunkEGCXLOFH_cjs = require('./chunk-EGCXLOFH.cjs');
3
+ var chunkJWCGEOCU_cjs = require('./chunk-JWCGEOCU.cjs');
4
+ var chunkEH2FC54I_cjs = require('./chunk-EH2FC54I.cjs');
5
+ var chunkQ33W6RAG_cjs = require('./chunk-Q33W6RAG.cjs');
6
6
  var Application = require('expo-application');
7
7
  var Device = require('expo-device');
8
8
 
@@ -52,12 +52,12 @@ function expoContext() {
52
52
  }
53
53
  };
54
54
  }
55
- function initExpo(options, client = chunkEGCXLOFH_cjs.deBug) {
55
+ function initExpo(options, client = chunkQ33W6RAG_cjs.deBug) {
56
56
  var _a;
57
57
  const ctx = expoContext();
58
- const merged = chunkEGCXLOFH_cjs.mergeContext(ctx, (_a = options.context) != null ? _a : {});
58
+ const merged = chunkQ33W6RAG_cjs.mergeContext(ctx, (_a = options.context) != null ? _a : {});
59
59
  if (!ctx.os) delete merged.os;
60
- return chunkNJ6DTUVX_cjs.initReactNative(
60
+ return chunkJWCGEOCU_cjs.initReactNative(
61
61
  { ...options, app: { ...ctx.app, ...options.app }, context: merged },
62
62
  client
63
63
  );
@@ -65,31 +65,31 @@ function initExpo(options, client = chunkEGCXLOFH_cjs.deBug) {
65
65
 
66
66
  Object.defineProperty(exports, "initReactNative", {
67
67
  enumerable: true,
68
- get: function () { return chunkNJ6DTUVX_cjs.initReactNative; }
68
+ get: function () { return chunkJWCGEOCU_cjs.initReactNative; }
69
69
  });
70
70
  Object.defineProperty(exports, "nativeContext", {
71
71
  enumerable: true,
72
- get: function () { return chunkNJ6DTUVX_cjs.nativeContext; }
72
+ get: function () { return chunkJWCGEOCU_cjs.nativeContext; }
73
73
  });
74
74
  Object.defineProperty(exports, "trackReactNavigation", {
75
75
  enumerable: true,
76
- get: function () { return chunkNJ6DTUVX_cjs.trackReactNavigation; }
76
+ get: function () { return chunkJWCGEOCU_cjs.trackReactNavigation; }
77
77
  });
78
78
  Object.defineProperty(exports, "DebugErrorBoundary", {
79
79
  enumerable: true,
80
- get: function () { return chunkYELZOB7J_cjs.DebugErrorBoundary; }
80
+ get: function () { return chunkEH2FC54I_cjs.DebugErrorBoundary; }
81
81
  });
82
82
  Object.defineProperty(exports, "trackTanStackRouter", {
83
83
  enumerable: true,
84
- get: function () { return chunkYELZOB7J_cjs.trackTanStackRouter; }
84
+ get: function () { return chunkEH2FC54I_cjs.trackTanStackRouter; }
85
85
  });
86
86
  Object.defineProperty(exports, "useDebugNavigation", {
87
87
  enumerable: true,
88
- get: function () { return chunkYELZOB7J_cjs.useDebugNavigation; }
88
+ get: function () { return chunkEH2FC54I_cjs.useDebugNavigation; }
89
89
  });
90
90
  Object.defineProperty(exports, "deBug", {
91
91
  enumerable: true,
92
- get: function () { return chunkEGCXLOFH_cjs.deBug; }
92
+ get: function () { return chunkQ33W6RAG_cjs.deBug; }
93
93
  });
94
94
  exports.expoContext = expoContext;
95
95
  exports.initExpo = initExpo;
package/dist/expo.d.cts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { deBug } from './index.cjs';
2
- import { C as ContextPatch, D as DebugClient } from './client-ekzlpWIR.cjs';
2
+ import { C as ContextPatch, D as DebugClient } from './client-VakEOlcU.cjs';
3
3
  import { ReactNativeInitOptions } from './react-native.cjs';
4
4
  export { DeviceInfoModule, initReactNative, nativeContext, trackReactNavigation } from './react-native.cjs';
5
5
  export { DebugErrorBoundary, DebugErrorBoundaryProps, trackTanStackRouter, useDebugNavigation } from './react.cjs';
package/dist/expo.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { deBug } from './index.js';
2
- import { C as ContextPatch, D as DebugClient } from './client-ekzlpWIR.js';
2
+ import { C as ContextPatch, D as DebugClient } from './client-VakEOlcU.js';
3
3
  import { ReactNativeInitOptions } from './react-native.js';
4
4
  export { DeviceInfoModule, initReactNative, nativeContext, trackReactNavigation } from './react-native.js';
5
5
  export { DebugErrorBoundary, DebugErrorBoundaryProps, trackTanStackRouter, useDebugNavigation } from './react.js';
package/dist/expo.js CHANGED
@@ -1,8 +1,8 @@
1
- import { initReactNative } from './chunk-HO3JW55K.js';
2
- export { initReactNative, nativeContext, trackReactNavigation } from './chunk-HO3JW55K.js';
3
- export { DebugErrorBoundary, trackTanStackRouter, useDebugNavigation } from './chunk-3WRI3DI2.js';
4
- import { deBug, mergeContext } from './chunk-5C7KJJNO.js';
5
- export { deBug } from './chunk-5C7KJJNO.js';
1
+ import { initReactNative } from './chunk-T56RQGKR.js';
2
+ export { initReactNative, nativeContext, trackReactNavigation } from './chunk-T56RQGKR.js';
3
+ export { DebugErrorBoundary, trackTanStackRouter, useDebugNavigation } from './chunk-TRUHD4EU.js';
4
+ import { deBug, mergeContext } from './chunk-5PCBQL5S.js';
5
+ export { deBug } from './chunk-5PCBQL5S.js';
6
6
  import * as Application from 'expo-application';
7
7
  import * as Device from 'expo-device';
8
8
 
package/dist/index.cjs CHANGED
@@ -1,40 +1,40 @@
1
1
  'use strict';
2
2
 
3
- var chunkEGCXLOFH_cjs = require('./chunk-EGCXLOFH.cjs');
3
+ var chunkQ33W6RAG_cjs = require('./chunk-Q33W6RAG.cjs');
4
4
 
5
5
 
6
6
 
7
7
  Object.defineProperty(exports, "DebugClient", {
8
8
  enumerable: true,
9
- get: function () { return chunkEGCXLOFH_cjs.DebugClient; }
9
+ get: function () { return chunkQ33W6RAG_cjs.DebugClient; }
10
10
  });
11
11
  Object.defineProperty(exports, "SDK_NAME", {
12
12
  enumerable: true,
13
- get: function () { return chunkEGCXLOFH_cjs.SDK_NAME; }
13
+ get: function () { return chunkQ33W6RAG_cjs.SDK_NAME; }
14
14
  });
15
15
  Object.defineProperty(exports, "SDK_VERSION", {
16
16
  enumerable: true,
17
- get: function () { return chunkEGCXLOFH_cjs.SDK_VERSION; }
17
+ get: function () { return chunkQ33W6RAG_cjs.SDK_VERSION; }
18
18
  });
19
19
  Object.defineProperty(exports, "browserContext", {
20
20
  enumerable: true,
21
- get: function () { return chunkEGCXLOFH_cjs.browserContext; }
21
+ get: function () { return chunkQ33W6RAG_cjs.browserContext; }
22
22
  });
23
23
  Object.defineProperty(exports, "deBug", {
24
24
  enumerable: true,
25
- get: function () { return chunkEGCXLOFH_cjs.deBug; }
25
+ get: function () { return chunkQ33W6RAG_cjs.deBug; }
26
26
  });
27
27
  Object.defineProperty(exports, "mergeContext", {
28
28
  enumerable: true,
29
- get: function () { return chunkEGCXLOFH_cjs.mergeContext; }
29
+ get: function () { return chunkQ33W6RAG_cjs.mergeContext; }
30
30
  });
31
31
  Object.defineProperty(exports, "normaliseUrl", {
32
32
  enumerable: true,
33
- get: function () { return chunkEGCXLOFH_cjs.normaliseUrl; }
33
+ get: function () { return chunkQ33W6RAG_cjs.normaliseUrl; }
34
34
  });
35
35
  Object.defineProperty(exports, "parseStack", {
36
36
  enumerable: true,
37
- get: function () { return chunkEGCXLOFH_cjs.parseStack; }
37
+ get: function () { return chunkQ33W6RAG_cjs.parseStack; }
38
38
  });
39
39
  //# sourceMappingURL=index.cjs.map
40
40
  //# sourceMappingURL=index.cjs.map
package/dist/index.d.cts CHANGED
@@ -1,5 +1,5 @@
1
- import { D as DebugClient } from './client-ekzlpWIR.cjs';
2
- export { A as AutoCaptureOptions, C as ContextPatch, E as EventMeta, I as InitOptions, N as NetworkOptions, Q as QueueStorage, S as SDK_NAME, a as SDK_VERSION, b as browserContext, m as mergeContext, n as normaliseUrl } from './client-ekzlpWIR.cjs';
1
+ import { D as DebugClient } from './client-VakEOlcU.cjs';
2
+ export { A as AutoCaptureOptions, C as ContextPatch, E as EventMeta, I as InitOptions, N as NetworkOptions, Q as QueueStorage, S as SDK_NAME, a as SDK_VERSION, b as browserContext, m as mergeContext, n as normaliseUrl } from './client-VakEOlcU.cjs';
3
3
  export { Breadcrumb, EventInput, Severity, StackFrame, parseStack } from '@debugkit/schema/core';
4
4
 
5
5
  /**
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { D as DebugClient } from './client-ekzlpWIR.js';
2
- export { A as AutoCaptureOptions, C as ContextPatch, E as EventMeta, I as InitOptions, N as NetworkOptions, Q as QueueStorage, S as SDK_NAME, a as SDK_VERSION, b as browserContext, m as mergeContext, n as normaliseUrl } from './client-ekzlpWIR.js';
1
+ import { D as DebugClient } from './client-VakEOlcU.js';
2
+ export { A as AutoCaptureOptions, C as ContextPatch, E as EventMeta, I as InitOptions, N as NetworkOptions, Q as QueueStorage, S as SDK_NAME, a as SDK_VERSION, b as browserContext, m as mergeContext, n as normaliseUrl } from './client-VakEOlcU.js';
3
3
  export { Breadcrumb, EventInput, Severity, StackFrame, parseStack } from '@debugkit/schema/core';
4
4
 
5
5
  /**
package/dist/index.js CHANGED
@@ -1,3 +1,3 @@
1
- export { DebugClient, SDK_NAME, SDK_VERSION, browserContext, deBug, mergeContext, normaliseUrl, parseStack } from './chunk-5C7KJJNO.js';
1
+ export { DebugClient, SDK_NAME, SDK_VERSION, browserContext, deBug, mergeContext, normaliseUrl, parseStack } from './chunk-5PCBQL5S.js';
2
2
  //# sourceMappingURL=index.js.map
3
3
  //# sourceMappingURL=index.js.map
package/dist/node.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkEGCXLOFH_cjs = require('./chunk-EGCXLOFH.cjs');
3
+ var chunkQ33W6RAG_cjs = require('./chunk-Q33W6RAG.cjs');
4
4
  var dc = require('diagnostics_channel');
5
5
  var os = require('os');
6
6
 
@@ -14,15 +14,15 @@ function nodeContext() {
14
14
  os: { name: os__default.default.platform(), version: os__default.default.release() },
15
15
  runtime: { name: "node", version: process.versions.node },
16
16
  device: { type: "unknown", memoryMb: Math.round(os__default.default.totalmem() / 1024 / 1024) },
17
- timezone: chunkEGCXLOFH_cjs.timezone()
17
+ timezone: chunkQ33W6RAG_cjs.timezone()
18
18
  };
19
19
  }
20
20
  var installed = false;
21
- function initNode(options, client = chunkEGCXLOFH_cjs.deBug) {
21
+ function initNode(options, client = chunkQ33W6RAG_cjs.deBug) {
22
22
  var _a, _b;
23
23
  const { captureProcessErrors = true, shutdownTimeoutMs = 2e3, ...rest } = options;
24
24
  const auto = rest.autoCapture === false ? false : { console: false, ...typeof rest.autoCapture === "object" ? rest.autoCapture : {} };
25
- client.init({ ...rest, autoCapture: auto === false ? false : { ...auto, errors: false }, context: chunkEGCXLOFH_cjs.mergeContext(nodeContext(), (_a = rest.context) != null ? _a : {}) });
25
+ client.init({ ...rest, autoCapture: auto === false ? false : { ...auto, errors: false }, context: chunkQ33W6RAG_cjs.mergeContext(nodeContext(), (_a = rest.context) != null ? _a : {}) });
26
26
  if (client.autoCapture.network) instrumentNodeHttp(client, (_b = rest.captureServerErrors) != null ? _b : true);
27
27
  if (!captureProcessErrors || installed) return client;
28
28
  installed = true;
@@ -80,7 +80,7 @@ function instrumentNodeHttp(client, captureServer) {
80
80
  const { request: r, response } = m;
81
81
  const status = (_a2 = response.statusCode) != null ? _a2 : 0;
82
82
  if (status < 500) return;
83
- const url = chunkEGCXLOFH_cjs.normaliseUrl((_b = r.url) != null ? _b : "/");
83
+ const url = chunkQ33W6RAG_cjs.normaliseUrl((_b = r.url) != null ? _b : "/");
84
84
  const method = ((_c = r.method) != null ? _c : "GET").toUpperCase();
85
85
  client.captureError(
86
86
  { name: "HttpServerError", message: `${method} ${url} responded ${status}`, frames: [] },
@@ -89,7 +89,7 @@ function instrumentNodeHttp(client, captureServer) {
89
89
  );
90
90
  });
91
91
  }
92
- function withDebug(flow, fn, client = chunkEGCXLOFH_cjs.deBug) {
92
+ function withDebug(flow, fn, client = chunkQ33W6RAG_cjs.deBug) {
93
93
  return async (...args) => {
94
94
  try {
95
95
  return await fn(...args);
@@ -103,35 +103,35 @@ function withDebug(flow, fn, client = chunkEGCXLOFH_cjs.deBug) {
103
103
 
104
104
  Object.defineProperty(exports, "DebugClient", {
105
105
  enumerable: true,
106
- get: function () { return chunkEGCXLOFH_cjs.DebugClient; }
106
+ get: function () { return chunkQ33W6RAG_cjs.DebugClient; }
107
107
  });
108
108
  Object.defineProperty(exports, "SDK_NAME", {
109
109
  enumerable: true,
110
- get: function () { return chunkEGCXLOFH_cjs.SDK_NAME; }
110
+ get: function () { return chunkQ33W6RAG_cjs.SDK_NAME; }
111
111
  });
112
112
  Object.defineProperty(exports, "SDK_VERSION", {
113
113
  enumerable: true,
114
- get: function () { return chunkEGCXLOFH_cjs.SDK_VERSION; }
114
+ get: function () { return chunkQ33W6RAG_cjs.SDK_VERSION; }
115
115
  });
116
116
  Object.defineProperty(exports, "browserContext", {
117
117
  enumerable: true,
118
- get: function () { return chunkEGCXLOFH_cjs.browserContext; }
118
+ get: function () { return chunkQ33W6RAG_cjs.browserContext; }
119
119
  });
120
120
  Object.defineProperty(exports, "deBug", {
121
121
  enumerable: true,
122
- get: function () { return chunkEGCXLOFH_cjs.deBug; }
122
+ get: function () { return chunkQ33W6RAG_cjs.deBug; }
123
123
  });
124
124
  Object.defineProperty(exports, "mergeContext", {
125
125
  enumerable: true,
126
- get: function () { return chunkEGCXLOFH_cjs.mergeContext; }
126
+ get: function () { return chunkQ33W6RAG_cjs.mergeContext; }
127
127
  });
128
128
  Object.defineProperty(exports, "normaliseUrl", {
129
129
  enumerable: true,
130
- get: function () { return chunkEGCXLOFH_cjs.normaliseUrl; }
130
+ get: function () { return chunkQ33W6RAG_cjs.normaliseUrl; }
131
131
  });
132
132
  Object.defineProperty(exports, "parseStack", {
133
133
  enumerable: true,
134
- get: function () { return chunkEGCXLOFH_cjs.parseStack; }
134
+ get: function () { return chunkQ33W6RAG_cjs.parseStack; }
135
135
  });
136
136
  exports.initNode = initNode;
137
137
  exports.nodeContext = nodeContext;
package/dist/node.d.cts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { deBug } from './index.cjs';
2
- import { I as InitOptions, D as DebugClient, C as ContextPatch } from './client-ekzlpWIR.cjs';
3
- export { A as AutoCaptureOptions, E as EventMeta, N as NetworkOptions, Q as QueueStorage, S as SDK_NAME, a as SDK_VERSION, b as browserContext, m as mergeContext, n as normaliseUrl } from './client-ekzlpWIR.cjs';
2
+ import { I as InitOptions, D as DebugClient, C as ContextPatch } from './client-VakEOlcU.cjs';
3
+ export { A as AutoCaptureOptions, E as EventMeta, N as NetworkOptions, Q as QueueStorage, S as SDK_NAME, a as SDK_VERSION, b as browserContext, m as mergeContext, n as normaliseUrl } from './client-VakEOlcU.cjs';
4
4
  export { Breadcrumb, EventInput, Severity, StackFrame, parseStack } from '@debugkit/schema/core';
5
5
 
6
6
  /** Context for Node servers (TanStack Start server functions, Next API routes, Express ...). */
package/dist/node.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { deBug } from './index.js';
2
- import { I as InitOptions, D as DebugClient, C as ContextPatch } from './client-ekzlpWIR.js';
3
- export { A as AutoCaptureOptions, E as EventMeta, N as NetworkOptions, Q as QueueStorage, S as SDK_NAME, a as SDK_VERSION, b as browserContext, m as mergeContext, n as normaliseUrl } from './client-ekzlpWIR.js';
2
+ import { I as InitOptions, D as DebugClient, C as ContextPatch } from './client-VakEOlcU.js';
3
+ export { A as AutoCaptureOptions, E as EventMeta, N as NetworkOptions, Q as QueueStorage, S as SDK_NAME, a as SDK_VERSION, b as browserContext, m as mergeContext, n as normaliseUrl } from './client-VakEOlcU.js';
4
4
  export { Breadcrumb, EventInput, Severity, StackFrame, parseStack } from '@debugkit/schema/core';
5
5
 
6
6
  /** Context for Node servers (TanStack Start server functions, Next API routes, Express ...). */
package/dist/node.js CHANGED
@@ -1,5 +1,5 @@
1
- import { deBug, timezone, mergeContext, normaliseUrl } from './chunk-5C7KJJNO.js';
2
- export { DebugClient, SDK_NAME, SDK_VERSION, browserContext, deBug, mergeContext, normaliseUrl, parseStack } from './chunk-5C7KJJNO.js';
1
+ import { deBug, timezone, mergeContext, normaliseUrl } from './chunk-5PCBQL5S.js';
2
+ export { DebugClient, SDK_NAME, SDK_VERSION, browserContext, deBug, mergeContext, normaliseUrl, parseStack } from './chunk-5PCBQL5S.js';
3
3
  import dc from 'diagnostics_channel';
4
4
  import os from 'os';
5
5
 
@@ -1,38 +1,38 @@
1
1
  'use strict';
2
2
 
3
- var chunkNJ6DTUVX_cjs = require('./chunk-NJ6DTUVX.cjs');
4
- var chunkYELZOB7J_cjs = require('./chunk-YELZOB7J.cjs');
5
- var chunkEGCXLOFH_cjs = require('./chunk-EGCXLOFH.cjs');
3
+ var chunkJWCGEOCU_cjs = require('./chunk-JWCGEOCU.cjs');
4
+ var chunkEH2FC54I_cjs = require('./chunk-EH2FC54I.cjs');
5
+ var chunkQ33W6RAG_cjs = require('./chunk-Q33W6RAG.cjs');
6
6
 
7
7
 
8
8
 
9
9
  Object.defineProperty(exports, "initReactNative", {
10
10
  enumerable: true,
11
- get: function () { return chunkNJ6DTUVX_cjs.initReactNative; }
11
+ get: function () { return chunkJWCGEOCU_cjs.initReactNative; }
12
12
  });
13
13
  Object.defineProperty(exports, "nativeContext", {
14
14
  enumerable: true,
15
- get: function () { return chunkNJ6DTUVX_cjs.nativeContext; }
15
+ get: function () { return chunkJWCGEOCU_cjs.nativeContext; }
16
16
  });
17
17
  Object.defineProperty(exports, "trackReactNavigation", {
18
18
  enumerable: true,
19
- get: function () { return chunkNJ6DTUVX_cjs.trackReactNavigation; }
19
+ get: function () { return chunkJWCGEOCU_cjs.trackReactNavigation; }
20
20
  });
21
21
  Object.defineProperty(exports, "DebugErrorBoundary", {
22
22
  enumerable: true,
23
- get: function () { return chunkYELZOB7J_cjs.DebugErrorBoundary; }
23
+ get: function () { return chunkEH2FC54I_cjs.DebugErrorBoundary; }
24
24
  });
25
25
  Object.defineProperty(exports, "trackTanStackRouter", {
26
26
  enumerable: true,
27
- get: function () { return chunkYELZOB7J_cjs.trackTanStackRouter; }
27
+ get: function () { return chunkEH2FC54I_cjs.trackTanStackRouter; }
28
28
  });
29
29
  Object.defineProperty(exports, "useDebugNavigation", {
30
30
  enumerable: true,
31
- get: function () { return chunkYELZOB7J_cjs.useDebugNavigation; }
31
+ get: function () { return chunkEH2FC54I_cjs.useDebugNavigation; }
32
32
  });
33
33
  Object.defineProperty(exports, "deBug", {
34
34
  enumerable: true,
35
- get: function () { return chunkEGCXLOFH_cjs.deBug; }
35
+ get: function () { return chunkQ33W6RAG_cjs.deBug; }
36
36
  });
37
37
  //# sourceMappingURL=react-native.cjs.map
38
38
  //# sourceMappingURL=react-native.cjs.map
@@ -1,5 +1,5 @@
1
1
  export { deBug } from './index.cjs';
2
- import { I as InitOptions, D as DebugClient, C as ContextPatch } from './client-ekzlpWIR.cjs';
2
+ import { I as InitOptions, D as DebugClient, C as ContextPatch } from './client-VakEOlcU.cjs';
3
3
  export { DebugErrorBoundary, DebugErrorBoundaryProps, trackTanStackRouter, useDebugNavigation } from './react.cjs';
4
4
  import '@debugkit/schema/core';
5
5
  import 'react';
@@ -1,5 +1,5 @@
1
1
  export { deBug } from './index.js';
2
- import { I as InitOptions, D as DebugClient, C as ContextPatch } from './client-ekzlpWIR.js';
2
+ import { I as InitOptions, D as DebugClient, C as ContextPatch } from './client-VakEOlcU.js';
3
3
  export { DebugErrorBoundary, DebugErrorBoundaryProps, trackTanStackRouter, useDebugNavigation } from './react.js';
4
4
  import '@debugkit/schema/core';
5
5
  import 'react';
@@ -1,5 +1,5 @@
1
- export { initReactNative, nativeContext, trackReactNavigation } from './chunk-HO3JW55K.js';
2
- export { DebugErrorBoundary, trackTanStackRouter, useDebugNavigation } from './chunk-3WRI3DI2.js';
3
- export { deBug } from './chunk-5C7KJJNO.js';
1
+ export { initReactNative, nativeContext, trackReactNavigation } from './chunk-T56RQGKR.js';
2
+ export { DebugErrorBoundary, trackTanStackRouter, useDebugNavigation } from './chunk-TRUHD4EU.js';
3
+ export { deBug } from './chunk-5PCBQL5S.js';
4
4
  //# sourceMappingURL=react-native.js.map
5
5
  //# sourceMappingURL=react-native.js.map
package/dist/react.cjs CHANGED
@@ -1,25 +1,25 @@
1
1
  'use strict';
2
2
 
3
- var chunkYELZOB7J_cjs = require('./chunk-YELZOB7J.cjs');
4
- var chunkEGCXLOFH_cjs = require('./chunk-EGCXLOFH.cjs');
3
+ var chunkEH2FC54I_cjs = require('./chunk-EH2FC54I.cjs');
4
+ var chunkQ33W6RAG_cjs = require('./chunk-Q33W6RAG.cjs');
5
5
 
6
6
 
7
7
 
8
8
  Object.defineProperty(exports, "DebugErrorBoundary", {
9
9
  enumerable: true,
10
- get: function () { return chunkYELZOB7J_cjs.DebugErrorBoundary; }
10
+ get: function () { return chunkEH2FC54I_cjs.DebugErrorBoundary; }
11
11
  });
12
12
  Object.defineProperty(exports, "trackTanStackRouter", {
13
13
  enumerable: true,
14
- get: function () { return chunkYELZOB7J_cjs.trackTanStackRouter; }
14
+ get: function () { return chunkEH2FC54I_cjs.trackTanStackRouter; }
15
15
  });
16
16
  Object.defineProperty(exports, "useDebugNavigation", {
17
17
  enumerable: true,
18
- get: function () { return chunkYELZOB7J_cjs.useDebugNavigation; }
18
+ get: function () { return chunkEH2FC54I_cjs.useDebugNavigation; }
19
19
  });
20
20
  Object.defineProperty(exports, "deBug", {
21
21
  enumerable: true,
22
- get: function () { return chunkEGCXLOFH_cjs.deBug; }
22
+ get: function () { return chunkQ33W6RAG_cjs.deBug; }
23
23
  });
24
24
  //# sourceMappingURL=react.cjs.map
25
25
  //# sourceMappingURL=react.cjs.map
package/dist/react.d.cts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { Component, ReactNode, ErrorInfo } from 'react';
2
2
  export { deBug } from './index.cjs';
3
- import { D as DebugClient } from './client-ekzlpWIR.cjs';
3
+ import { D as DebugClient } from './client-VakEOlcU.cjs';
4
4
  import '@debugkit/schema/core';
5
5
 
6
6
  interface DebugErrorBoundaryProps {
package/dist/react.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { Component, ReactNode, ErrorInfo } from 'react';
2
2
  export { deBug } from './index.js';
3
- import { D as DebugClient } from './client-ekzlpWIR.js';
3
+ import { D as DebugClient } from './client-VakEOlcU.js';
4
4
  import '@debugkit/schema/core';
5
5
 
6
6
  interface DebugErrorBoundaryProps {
package/dist/react.js CHANGED
@@ -1,4 +1,4 @@
1
- export { DebugErrorBoundary, trackTanStackRouter, useDebugNavigation } from './chunk-3WRI3DI2.js';
2
- export { deBug } from './chunk-5C7KJJNO.js';
1
+ export { DebugErrorBoundary, trackTanStackRouter, useDebugNavigation } from './chunk-TRUHD4EU.js';
2
+ export { deBug } from './chunk-5PCBQL5S.js';
3
3
  //# sourceMappingURL=react.js.map
4
4
  //# sourceMappingURL=react.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@debugkit/sdk",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {
@@ -60,7 +60,7 @@
60
60
  "./package.json": "./package.json"
61
61
  },
62
62
  "dependencies": {
63
- "@debugkit/schema": "^0.2.0"
63
+ "@debugkit/schema": "^0.3.0"
64
64
  },
65
65
  "description": "deBug SDK: log errors and events from React, React Native, Expo and Node into your own cloud.",
66
66
  "license": "MIT",