Clean up types

This commit is contained in:
Eric Bailey
2025-02-12 10:53:51 -06:00
parent df50f7d6a3
commit 66280fd731
10 changed files with 40 additions and 50 deletions
+1 -1
View File
@@ -50,7 +50,7 @@ const DEFAULT_HANDLER_OPTIONS = {
let storedPayload: NotificationPayload | undefined
let prevDate = 0
const logger = Logger.create(Logger.Context.notifications)
const logger = Logger.create(Logger.Context.Notifications)
export function useNotificationsHandler() {
const queryClient = useQueryClient()
+1 -1
View File
@@ -14,7 +14,7 @@ const SERVICE_DID = (serviceUrl?: string) =>
? 'did:web:api.staging.bsky.dev'
: 'did:web:api.bsky.app'
const logger = Logger.create(Logger.Context.notifications)
const logger = Logger.create(Logger.Context.Notifications)
async function registerPushToken(
agent: BskyAgent,
+5 -5
View File
@@ -1,14 +1,14 @@
import {expect, test} from '@jest/globals'
import {ConsoleTransportEntry, LogLevel} from '#/logger'
import {add, getEntries} from '#/logger/logDump'
import {add, ConsoleTransportEntry,getEntries} from '#/logger/logDump'
import {LogContext,LogLevel} from '#/logger/types'
test('works', () => {
const items: ConsoleTransportEntry[] = [
{
id: '1',
level: LogLevel.Debug,
context: 'convo',
context: LogContext.Default,
message: 'hello',
metadata: {},
timestamp: Date.now(),
@@ -16,7 +16,7 @@ test('works', () => {
{
id: '2',
level: LogLevel.Debug,
context: 'convo',
context: LogContext.Default,
message: 'hello',
metadata: {},
timestamp: Date.now(),
@@ -24,7 +24,7 @@ test('works', () => {
{
id: '3',
level: LogLevel.Debug,
context: 'convo',
context: LogContext.Default,
message: 'hello',
metadata: {},
timestamp: Date.now(),
+3 -2
View File
@@ -2,8 +2,9 @@ import {beforeAll, describe, expect, jest, test} from '@jest/globals'
import * as Sentry from '@sentry/react-native'
import {nanoid} from 'nanoid/non-secure'
import {Logger, LogLevel} from '#/logger'
import {Logger} from '#/logger'
import {sentryTransport} from '#/logger/transports/sentry'
import {LogLevel} from '#/logger/types'
jest.mock('#/env', () => ({
/*
@@ -240,7 +241,7 @@ describe('create', () => {
test('create', () => {
const timestamp = Date.now()
const message = nanoid()
const logger = Logger.create('notifications')
const logger = Logger.create(Logger.Context.Default)
logger.addTransport(mockTransport)
logger.info(message, {})
+5 -14
View File
@@ -1,22 +1,13 @@
import {nanoid} from 'nanoid/non-secure'
import {LogContext} from '#/logger/logContext'
import {add} from '#/logger/logDump'
import {bitdriftTransport} from '#/logger/transports/bitdrift'
import {consoleTransport} from '#/logger/transports/console'
import {sentryTransport} from '#/logger/transports/sentry'
import {
ConsoleTransportEntry,
LogLevel,
Metadata,
Transport,
} from '#/logger/types'
import {LogContext, LogLevel, Metadata, Transport} from '#/logger/types'
import {enabledLogLevels} from '#/logger/util'
import {isWeb} from '#/platform/detection'
export {LogLevel}
export type {ConsoleTransportEntry, Transport}
const TRANSPORTS: Transport[] = (function configureTransports() {
switch (process.env.NODE_ENV) {
case 'production': {
@@ -38,13 +29,13 @@ export class Logger {
static Context = LogContext
level: LogLevel
context: keyof typeof LogContext | undefined = undefined
context: LogContext | undefined = undefined
contextFilter: string = ''
protected debugContextRegexes: RegExp[] = []
protected transports: Transport[] = []
static create(context?: keyof typeof LogContext) {
static create(context?: LogContext) {
const logger = new Logger({
level: (process.env.EXPO_PUBLIC_LOG_LEVEL || LogLevel.Info) as LogLevel,
context,
@@ -62,7 +53,7 @@ export class Logger {
contextFilter = process.env.EXPO_PUBLIC_LOG_DEBUG || '',
}: {
level?: LogLevel
context?: keyof typeof LogContext
context?: LogContext
contextFilter?: string
} = {}) {
this.context = context
@@ -147,4 +138,4 @@ export class Logger {
* `logger.disable()`
* `logger.enable()`
*/
export const logger = Logger.create(Logger.Context.logger)
export const logger = Logger.create(Logger.Context.Default)
-13
View File
@@ -1,13 +0,0 @@
/**
* *Do not import this directly.* Instead, use the shortcut reference `logger.DebugContext`.
*
* Add debug contexts here. Although convention typically calls for enums ito
* be capitalized, for parity with the `LOG_DEBUG` env var, please use all
* lowercase.
*/
export const LogContext = {
logger: 'logger',
session: 'session',
notifications: 'notifications',
convo: 'convo',
} as const
+10 -1
View File
@@ -1,4 +1,13 @@
import type {ConsoleTransportEntry} from '#/logger'
import type {LogContext, LogLevel, Metadata} from '#/logger/types'
export type ConsoleTransportEntry = {
id: string
timestamp: number
level: LogLevel
context: LogContext | undefined
message: string | Error
metadata: Metadata
}
let entries: ConsoleTransportEntry[] = []
+13 -11
View File
@@ -1,6 +1,17 @@
import {LogContext} from '#/logger/logContext'
import type {Sentry} from '#/logger/sentry/lib'
/**
* DO NOT IMPORT THIS DIRECTLY
*
* Logger contexts, defined here and used via `Logger.Context.*` static prop.
*/
export enum LogContext {
Default = 'logger',
Session = 'session',
Notifications = 'notifications',
Convo = 'convo',
}
export enum LogLevel {
Debug = 'debug',
Info = 'info',
@@ -11,7 +22,7 @@ export enum LogLevel {
export type Transport = (
level: LogLevel,
context: keyof typeof LogContext | undefined,
context: LogContext | undefined,
message: string | Error,
metadata: Metadata,
timestamp: number,
@@ -61,12 +72,3 @@ export type Metadata = {
*/
[key: string]: unknown
} & Parameters<typeof Sentry.captureException>[1]
export type ConsoleTransportEntry = {
id: string
timestamp: number
level: LogLevel
context: keyof typeof LogContext | undefined
message: string | Error
metadata: Metadata
}
+1 -1
View File
@@ -34,7 +34,7 @@ import {MessagesEventBus} from '#/state/messages/events/agent'
import {MessagesEventBusError} from '#/state/messages/events/types'
import {DM_SERVICE_HEADERS} from '#/state/queries/messages/const'
const logger = Logger.create(Logger.Context.convo)
const logger = Logger.create(Logger.Context.Convo)
export function isConvoItemMessage(
item: ConvoItem,
+1 -1
View File
@@ -19,7 +19,7 @@ import {
import {DM_SERVICE_HEADERS} from '#/state/queries/messages/const'
const LOGGER_CONTEXT = 'MessagesEventBus'
const logger = Logger.create(Logger.Context.convo)
const logger = Logger.create(Logger.Context.Convo)
export class MessagesEventBus {
private id: string