fix: add error logging to empty catch blocks
This commit is contained in:
@@ -53,8 +53,8 @@ export function SseProvider() {
|
||||
queryClient.invalidateQueries({ queryKey: ['admin', 'orders'] })
|
||||
break
|
||||
}
|
||||
} catch {
|
||||
// ignore parse errors (e.g. heartbit comments)
|
||||
} catch (err) {
|
||||
console.warn('[sse] Failed to parse event data', err)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,7 +29,8 @@ function readStoredTheme(): ThemeSettings | null {
|
||||
const schemeOk = scheme === 'craft' || scheme === 'forest' || scheme === 'ocean' || scheme === 'berry'
|
||||
if (!modeOk || !schemeOk) return null
|
||||
return { mode, scheme }
|
||||
} catch {
|
||||
} catch (err) {
|
||||
console.warn('[theme] Failed to read stored theme', err)
|
||||
return null
|
||||
}
|
||||
}
|
||||
@@ -80,8 +81,8 @@ export function ThemeControllerProvider({ children }: PropsWithChildren) {
|
||||
useEffect(() => {
|
||||
try {
|
||||
localStorage.setItem(THEME_STORAGE_KEY, JSON.stringify(settings))
|
||||
} catch {
|
||||
// ignore
|
||||
} catch (err) {
|
||||
console.warn('[theme] Failed to persist theme setting', err)
|
||||
}
|
||||
}, [settings])
|
||||
|
||||
|
||||
@@ -42,8 +42,8 @@ export function AddressMapPicker(props: {
|
||||
setHint(addr)
|
||||
onChange({ lat: pos.lat, lng: pos.lng, addressLine: addr })
|
||||
}
|
||||
} catch {
|
||||
// ignore
|
||||
} catch (err) {
|
||||
console.warn('[address-map-picker] Failed to reverse geocode', err)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -52,8 +52,8 @@ export function MapPickerMap({ value, onChange, center }: MapPickerMapProps) {
|
||||
if (addr) {
|
||||
onChange({ lat: pos.lat, lng: pos.lng, addressLine: addr })
|
||||
}
|
||||
} catch {
|
||||
// ignore
|
||||
} catch (err) {
|
||||
console.warn('[map-picker] Failed to reverse geocode', err)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -35,7 +35,8 @@ function getApiErrorMessage(error: unknown): string | null {
|
||||
function formatDate(iso: string): string {
|
||||
try {
|
||||
return new Date(iso).toLocaleDateString('ru-RU', { day: '2-digit', month: '2-digit', year: 'numeric' })
|
||||
} catch {
|
||||
} catch (err) {
|
||||
console.warn('[gallery] Failed to format date', err)
|
||||
return ''
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,7 +35,8 @@ function formatDt(v: string) {
|
||||
const d = new Date(v)
|
||||
if (Number.isNaN(d.getTime())) return '—'
|
||||
return d.toLocaleString()
|
||||
} catch {
|
||||
} catch (err) {
|
||||
console.warn('[admin-users] Failed to format date', err)
|
||||
return '—'
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,8 @@ function readStoredScheme(): ColorScheme {
|
||||
const parsed = JSON.parse(raw)
|
||||
const scheme = parsed?.scheme
|
||||
return scheme === 'forest' || scheme === 'ocean' || scheme === 'berry' ? scheme : 'craft'
|
||||
} catch {
|
||||
} catch (err) {
|
||||
console.warn('[auth] Failed to read stored theme scheme', err)
|
||||
return 'craft'
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,7 +17,8 @@ apiClient.interceptors.request.use((config) => {
|
||||
config.headers.delete('content-type')
|
||||
}
|
||||
return config
|
||||
} catch {
|
||||
} catch (err) {
|
||||
console.warn('[api-client] Failed to set auth token', err)
|
||||
return config
|
||||
}
|
||||
})
|
||||
|
||||
@@ -12,7 +12,8 @@ export function parseOrderAddressSnapshot(json: string | null | undefined): Orde
|
||||
if (!json) return null
|
||||
try {
|
||||
return JSON.parse(json) as OrderAddressSnapshot
|
||||
} catch {
|
||||
} catch (err) {
|
||||
console.warn('[order-address-snapshot] Failed to parse address snapshot', err)
|
||||
return null
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,7 +3,8 @@ const TOKEN_KEY = 'craftshop_auth_token'
|
||||
export function readStoredToken(): string | null {
|
||||
try {
|
||||
return localStorage.getItem(TOKEN_KEY)
|
||||
} catch {
|
||||
} catch (err) {
|
||||
console.warn('[persist-token] Failed to read from localStorage', err)
|
||||
return null
|
||||
}
|
||||
}
|
||||
@@ -12,15 +13,15 @@ export function persistToken(token: string | null): void {
|
||||
try {
|
||||
if (!token) localStorage.removeItem(TOKEN_KEY)
|
||||
else localStorage.setItem(TOKEN_KEY, token)
|
||||
} catch {
|
||||
// ignore
|
||||
} catch (err) {
|
||||
console.warn('[persist-token] Failed to write to localStorage', err)
|
||||
}
|
||||
}
|
||||
|
||||
export function removeStoredToken(): void {
|
||||
try {
|
||||
localStorage.removeItem(TOKEN_KEY)
|
||||
} catch {
|
||||
// ignore
|
||||
} catch (err) {
|
||||
console.warn('[persist-token] Failed to remove from localStorage', err)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,7 +10,8 @@ const STORAGE_KEY = 'cookie-consent-accepted'
|
||||
function wasAccepted(): boolean {
|
||||
try {
|
||||
return localStorage.getItem(STORAGE_KEY) === '1'
|
||||
} catch {
|
||||
} catch (err) {
|
||||
console.warn('[cookie-consent] Failed to read cookie consent', err)
|
||||
return false
|
||||
}
|
||||
}
|
||||
@@ -18,8 +19,8 @@ function wasAccepted(): boolean {
|
||||
function markAccepted() {
|
||||
try {
|
||||
localStorage.setItem(STORAGE_KEY, '1')
|
||||
} catch {
|
||||
// ignore
|
||||
} catch (err) {
|
||||
console.warn('[cookie-consent] Failed to persist cookie consent', err)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -22,8 +22,8 @@ export function RichTextMessageContent({ value, tone = 'default' }: RichTextMess
|
||||
const normalizedValue = value.trim() ? value : '<p></p>'
|
||||
try {
|
||||
if (editor.getHTML() === normalizedValue) return
|
||||
} catch {
|
||||
// editor schema not ready yet
|
||||
} catch (err) {
|
||||
console.warn('[tiptap] Failed to get editor HTML', err)
|
||||
return
|
||||
}
|
||||
editor.commands.setContent(normalizedValue, { emitUpdate: false })
|
||||
|
||||
Reference in New Issue
Block a user