fix(modal): Add modal functionality to DiscreteApp (#5684)

Signed-off-by: Sepush <sepush@outlook.com>
This commit is contained in:
Artea 2024-02-17 19:41:48 +08:00 committed by GitHub
parent 32676f1d4e
commit 3b28b671b6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 7 additions and 2 deletions

View File

@ -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 ({

View File

@ -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>)