Files
bsky-social-app/src/view/com/util/Alert.web.tsx
T
2026-08-25 09:40:14 +03:00

24 lines
704 B
TypeScript

import {type Alert as RNAlert, type AlertButton} from 'react-native'
class WebAlert implements Pick<typeof RNAlert, 'alert'> {
public alert(title: string, message?: string, buttons?: AlertButton[]): void {
if (buttons === undefined || buttons.length === 0) {
window.alert([title, message].filter(Boolean).join('\n'))
return
}
const result = window.confirm([title, message].filter(Boolean).join('\n'))
if (result === true) {
const confirm = buttons.find(({style}) => style !== 'cancel')
confirm?.onPress?.()
return
}
const cancel = buttons.find(({style}) => style === 'cancel')
cancel?.onPress?.()
}
}
export const Alert = new WebAlert()