Files
agency/.pnpm-store/v3/files/27/1a6b5d29fe8db89235706c1ce2a38d181434a8df014c8cae53c45160976ed87a64aacb7961379da8c8ac1497aa6f3c6e77ff37a87413ac4ca767ff8a1f7ca5
hanzo-agent 5af6960b87 run project
Run: sess_f37640604ae254cb4d11dc6217f7b721
2026-09-30 00:04:56 +00:00

61 lines
2.0 KiB
Plaintext

// @hanzo/event — framework-agnostic entry. The ONE telemetry client.
//
// import { createAnalytics, EVENTS } from '@hanzo/event'
// const a = createAnalytics({ product: 'console' }) // same-origin, cookie auth
// a.pageview(); a.capture(EVENTS.SIGNUP_COMPLETED)
// a.captureError(err) // errors are events too — one stream
//
// React apps use the './react' entry for the provider + hooks + error boundary.
export {
Analytics,
createAnalytics,
resetClients,
VERSION,
getCohort,
getFirstTouch,
} from './core'
export { parseDsn, buildSentryEvent, buildEnvelope, framesFromStack } from './sentry'
export { uuidv7, uuidv7Time } from './uid'
export { PRODUCT_PROJECT, dsnForProduct } from './dsn'
export type { ErrorIdentity } from './sentry'
export { scrubText, redactSecrets, scrubPII } from './scrub'
export { EVENTS, EXCEPTION, PAGEVIEW } from './events'
export { exceptionEntry, exceptionProperties, fingerprint, digest } from './exception'
export type { EventName } from './events'
export { GOALS, COHORTS } from './goals'
export type { GoalDef, CohortDef } from './goals'
export { FUNNELS, PRODUCTS, eventsOf } from './funnels'
export type { FunnelDef, FunnelStep, FunnelId, ProductId } from './funnels'
export {
parseAttribution,
deriveChannel,
hasAttribution,
hostOf,
isoWeek,
} from './attribution'
export type {
AnalyticsConfig,
Attribution,
CaptureErrorOptions,
Cohort,
Dsn,
EventKind,
Exception,
ExceptionEntry,
ExceptionFrame,
ExceptionProperties,
SentryEvent,
SentryFrame,
SentryLevel,
Transport,
WireEvent,
} from './types'
/** Which org owns a host's telemetry — the resolution that lets a surface report
* correctly while configuring nothing. `keyFor` takes an optional keyring so a
* runtime that receives one (hanzo.id serves every brand from one image) resolves
* through this same function rather than a second copy of it. */
export { ORG_DOMAIN, ORG_KEY, orgOf, keyFor, keyForPage } from './org'
export type { Keyring } from './org'