mirror of
https://github.com/tusen-ai/naive-ui.git
synced 2025-02-23 13:31:06 +08:00
fix(modal): Add modal functionality to DiscreteApp (#5684)
Signed-off-by: Sepush <sepush@outlook.com>
This commit is contained in:
parent
32676f1d4e
commit
3b28b671b6
@ -7,6 +7,7 @@ import { type DialogApi, useDialog } from '../../dialog'
|
||||
import { type LoadingBarApi, useLoadingBar } from '../../loading-bar'
|
||||
import { type MessageApi, useMessage } from '../../message'
|
||||
import { type NotificationApi, useNotification } from '../../notification'
|
||||
import { type ModalApi, useModal } from '../../modal'
|
||||
import { isBrowser, warn } from '../../_utils'
|
||||
import { NInjectionExtractor } from './InjectionExtractor'
|
||||
import type { DiscreteApiType, MaybeRef } from './interface'
|
||||
@ -31,13 +32,15 @@ export interface DiscreteApp {
|
||||
notification?: NotificationApi
|
||||
dialog?: DialogApi
|
||||
loadingBar?: LoadingBarApi
|
||||
modal?: ModalApi
|
||||
}
|
||||
|
||||
const injectionFactoryMap: Record<DiscreteApiType, any> = {
|
||||
message: useMessage,
|
||||
notification: useNotification,
|
||||
loadingBar: useLoadingBar,
|
||||
dialog: useDialog
|
||||
dialog: useDialog,
|
||||
modal: useModal
|
||||
}
|
||||
|
||||
export function createDiscreteApp ({
|
||||
|
@ -8,6 +8,7 @@ import type {
|
||||
NotificationProviderProps
|
||||
} from '../../notification'
|
||||
import { type ModalProviderProps } from '../../modal/src/ModalProvider'
|
||||
import { type ModalApi } from '../../modal'
|
||||
|
||||
export type MaybeRef<T> = Ref<T> | T
|
||||
|
||||
@ -37,4 +38,5 @@ export type DiscreteApi<T extends DiscreteApiType = DiscreteApiType> = {
|
||||
('dialog' extends T ? { dialog: DialogApi } : Record<string, unknown>) &
|
||||
('loadingBar' extends T
|
||||
? { loadingBar: LoadingBarApi }
|
||||
: Record<string, unknown>)
|
||||
: Record<string, unknown>) &
|
||||
('modal' extends T ? { modal: ModalApi } : Record<string, unknown>)
|
||||
|
Loading…
Reference in New Issue
Block a user