mirror of
https://github.com/truewhile/MeBox.git
synced 2026-09-29 19:36:36 +08:00
18 lines
518 B
TypeScript
18 lines
518 B
TypeScript
import { createRoot } from 'react-dom/client'
|
|
|
|
import { PinDialog, type PinOptions } from './PinDialog'
|
|
|
|
export function requestPIN(options: PinOptions): Promise<string | null> {
|
|
return new Promise((resolve) => {
|
|
const host = document.createElement('div')
|
|
document.body.appendChild(host)
|
|
const root = createRoot(host)
|
|
const close = (value: string | null) => {
|
|
root.unmount()
|
|
host.remove()
|
|
resolve(value)
|
|
}
|
|
root.render(<PinDialog options={options} onClose={close} />)
|
|
})
|
|
}
|