535d4d6cf7
* Add button to controls, respace * Hook up shadow and mutation * Add Bookmarks screen * Build out Bookmarks screen * Handle removals via shadow * Use truncateAndInvalidate strategy * Add empty state * Add toasts * Add undo buttons to toasts * Stage NUX, needs image * Finesse post controls * New reply icon * Use curvier variant of repost icon * Prevent layout shift with align_start * Update api pkg * Swap in new image * Limit spacing on desktop * Rm decimals over 10k * Better optimistic adding/removing * Add metrics * Comment * Remove unused code block * Remove debug limit * Fork shadow for web/native * Tweak alt * add preventExpansion: true * Refine hitslop * Add count to anchor * Reduce space in compact mode --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com>
Logger
Simple logger for Bluesky.
At a Glance
import { logger, Logger } from '#/logger'
// or, optionally create new instance with custom context
// const logger = Logger.create(Logger.Context.Notifications)
// for dev-only logs
logger.debug(message, {})
// for production breadcrumbs
logger.info(message, {})
// seldom used, prefer `info`
logger.log(message, {})
// for non-error issues to look into, seldom used, prefer `error`
logger.warn(message, {})
// for known errors without an exception, use a string
logger.error(`known error`, {})
// for unknown exceptions
try {
} catch (e) {
logger.error(e, {message: `explain error`}])
}
Log Levels
Log level defaults to info. You can set this via the EXPO_PUBLIC_LOG_LEVEL
env var in .env.local.
Filtering debugs by context
Debug logs are dev-only, and not enabled by default. Once enabled, they can get
noisy. So you can filter them by setting the EXPO_PUBLIC_LOG_DEBUG env var
e.g. EXPO_PUBLIC_LOG_DEBUG=notifications. These values can be comma-separated
and include wildcards.