-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
8d1f24d
commit 6793774
Showing
14 changed files
with
846 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -8,7 +8,6 @@ pnpm-debug.log* | |
lerna-debug.log* | ||
|
||
node_modules | ||
dist | ||
dist-ssr | ||
*.local | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
import { App, InjectionKey } from 'vue'; | ||
import { Notifier, NotifierOptions } from './types'; | ||
export declare const NotifierSymbol: InjectionKey<Notifier>; | ||
export declare function createNotifier(app: App, globalOptions?: NotifierOptions): Notifier; | ||
export declare function useNotifier(): Notifier; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
import { NotifierComponentOptions } from "../types"; | ||
import { PropType } from "vue"; | ||
declare const _sfc_main: import("vue").DefineComponent<{ | ||
content: { | ||
type: (StringConstructor | ObjectConstructor)[]; | ||
required: true; | ||
default: string; | ||
}; | ||
options: { | ||
type: PropType<NotifierComponentOptions>; | ||
required: true; | ||
}; | ||
status: { | ||
type: PropType<"default" | "success" | "error" | "warning" | "info">; | ||
required: true; | ||
}; | ||
onSubmit: { | ||
type: FunctionConstructor; | ||
required: true; | ||
}; | ||
onCancel: { | ||
type: FunctionConstructor; | ||
required: true; | ||
}; | ||
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{ | ||
content: { | ||
type: (StringConstructor | ObjectConstructor)[]; | ||
required: true; | ||
default: string; | ||
}; | ||
options: { | ||
type: PropType<NotifierComponentOptions>; | ||
required: true; | ||
}; | ||
status: { | ||
type: PropType<"default" | "success" | "error" | "warning" | "info">; | ||
required: true; | ||
}; | ||
onSubmit: { | ||
type: FunctionConstructor; | ||
required: true; | ||
}; | ||
onCancel: { | ||
type: FunctionConstructor; | ||
required: true; | ||
}; | ||
}>>, { | ||
content: string | Record<string, any>; | ||
}>; | ||
export default _sfc_main; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
import { NotifierDialogOptions } from "../types"; | ||
import { PropType } from "vue"; | ||
declare const _sfc_main: import("vue").DefineComponent<{ | ||
content: { | ||
type: (StringConstructor | ObjectConstructor)[]; | ||
required: true; | ||
default: string; | ||
}; | ||
options: { | ||
type: PropType<NotifierDialogOptions>; | ||
required: true; | ||
}; | ||
status: { | ||
type: PropType<"default" | "success" | "error" | "warning" | "info">; | ||
required: true; | ||
}; | ||
onSubmit: { | ||
type: FunctionConstructor; | ||
required: true; | ||
}; | ||
onCancel: { | ||
type: FunctionConstructor; | ||
required: true; | ||
}; | ||
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{ | ||
content: { | ||
type: (StringConstructor | ObjectConstructor)[]; | ||
required: true; | ||
default: string; | ||
}; | ||
options: { | ||
type: PropType<NotifierDialogOptions>; | ||
required: true; | ||
}; | ||
status: { | ||
type: PropType<"default" | "success" | "error" | "warning" | "info">; | ||
required: true; | ||
}; | ||
onSubmit: { | ||
type: FunctionConstructor; | ||
required: true; | ||
}; | ||
onCancel: { | ||
type: FunctionConstructor; | ||
required: true; | ||
}; | ||
}>>, { | ||
content: string | Record<string, any>; | ||
}>; | ||
export default _sfc_main; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
import { PropType } from "vue"; | ||
import { NotifierToastOptions } from "../types"; | ||
declare const _sfc_main: import("vue").DefineComponent<{ | ||
content: { | ||
type: (StringConstructor | ObjectConstructor)[]; | ||
required: true; | ||
default: string; | ||
}; | ||
options: { | ||
type: PropType<NotifierToastOptions>; | ||
required: true; | ||
}; | ||
status: { | ||
type: PropType<"default" | "success" | "error" | "warning" | "info">; | ||
required: true; | ||
}; | ||
onSubmit: { | ||
type: FunctionConstructor; | ||
required: true; | ||
}; | ||
onCancel: { | ||
type: FunctionConstructor; | ||
required: true; | ||
}; | ||
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{ | ||
content: { | ||
type: (StringConstructor | ObjectConstructor)[]; | ||
required: true; | ||
default: string; | ||
}; | ||
options: { | ||
type: PropType<NotifierToastOptions>; | ||
required: true; | ||
}; | ||
status: { | ||
type: PropType<"default" | "success" | "error" | "warning" | "info">; | ||
required: true; | ||
}; | ||
onSubmit: { | ||
type: FunctionConstructor; | ||
required: true; | ||
}; | ||
onCancel: { | ||
type: FunctionConstructor; | ||
required: true; | ||
}; | ||
}>>, { | ||
content: string | Record<string, any>; | ||
}>; | ||
export default _sfc_main; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
import { App } from 'vue'; | ||
import { NotifierSymbol, createNotifier, useNotifier } from './Notifier'; | ||
declare const _default: { | ||
install: (app: App, options?: any) => void; | ||
}; | ||
export default _default; | ||
export { createNotifier, useNotifier, NotifierSymbol }; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
// @ts-ignore | ||
import { useNotifier } from "../vuetify-notifier"; | ||
|
||
export { useNotifier }; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
import { addImports, addPlugin, createResolver, defineNuxtModule } from '@nuxt/kit' | ||
|
||
export default defineNuxtModule({ | ||
meta: { | ||
// Usually the npm package name of your module | ||
name: 'vuetify-notifier', | ||
// The key in `nuxt.config` that holds your module options | ||
configKey: 'notifier', | ||
// Compatibility constraints | ||
compatibility: { | ||
// Semver version of supported nuxt versions | ||
nuxt: '^3.0.0' | ||
} | ||
}, | ||
// Default configuration options for your module, can also be a function returning those | ||
defaults: {}, | ||
// Shorthand sugar to register Nuxt hooks | ||
hooks: {}, | ||
// The function holding your module logic, it can be asynchronous | ||
setup(moduleOptions, nuxt) { | ||
const { resolve } = createResolver(import.meta.url) | ||
|
||
addImports({ | ||
name: 'useNotifier', // name of the composable to be used | ||
as: 'useNotifier', | ||
from: resolve('./composables') // path of composable | ||
}) | ||
|
||
addPlugin(resolve('./plugin')) | ||
} | ||
}) | ||
|
||
|
||
// @ts-ignore | ||
// export default defineNuxtPlugin((nuxtApp: any) => { | ||
// nuxtApp.vueApp.use(VuetifyNotifier) | ||
// return { | ||
// provide: { notifier: createNotifier(nuxtApp.vueApp) }, | ||
// }; | ||
// }); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
// @ts-ignore: resolved with Nuxt | ||
import { defineNuxtPlugin } from '#app'; | ||
|
||
// @ts-ignore: | ||
import VuetifyNotifier, { createNotifier } from "../vuetify-notifier"; | ||
|
||
// @ts-ignore | ||
export default defineNuxtPlugin((nuxtApp) => { | ||
nuxtApp.vueApp.use(VuetifyNotifier) | ||
return { | ||
provide: { notifier: createNotifier(nuxtApp.vueApp) }, | ||
}; | ||
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,141 @@ | ||
import { App, Component } from "vue"; | ||
import plugin from "../index"; | ||
export default plugin; | ||
export * from "../index"; | ||
declare module 'vuetify-notifier'; | ||
declare module "vue" { | ||
interface ComponentCustomProperties { | ||
$notifier: Notifier; | ||
} | ||
} | ||
declare module '#app' { | ||
interface NuxtApp { | ||
$notifier: Notifier; | ||
} | ||
} | ||
export interface NotifierOptions { | ||
default?: NotifierDefaultOptions; | ||
dialogOptions?: NotifierDialogOptions; | ||
toastOptions?: NotifierToastOptions; | ||
componentOptions?: NotifierComponentOptions; | ||
} | ||
export interface NotifierDefaultOptions { | ||
defaultColor?: string; | ||
defaultIcon?: string; | ||
successIcon?: string; | ||
infoIcon?: string; | ||
warningIcon?: string; | ||
errorIcon?: string; | ||
} | ||
export interface NotifierMountComponent { | ||
component: Component; | ||
app: App; | ||
content: string | Component | NotifierContent; | ||
status: string; | ||
options: NotifierDialogOptions | NotifierToastOptions | NotifierComponentOptions; | ||
} | ||
export interface NotifierDialogOptions { | ||
transition?: string; | ||
width?: number | string; | ||
minWidth?: number | string; | ||
minHeight?: number | string; | ||
textAlign?: "start" | "center" | "end"; | ||
duration?: number; | ||
defaultColor?: string; | ||
defaultIcon?: string; | ||
successIcon?: string; | ||
infoIcon?: string; | ||
warningIcon?: string; | ||
errorIcon?: string; | ||
showDivider?: boolean; | ||
primaryButtonText?: string; | ||
secondaryButtonText?: string; | ||
dialogProps?: Record<string, any>; | ||
cardProps?: Record<string, any>; | ||
buttonProps?: Record<string, any>; | ||
primaryButtonProps?: Record<string, any>; | ||
secondaryButtonProps?: Record<string, any>; | ||
handleCancel?: 'resolve' | 'reject' | 'silent'; | ||
inputProps?: Record<string, any>; | ||
prompt?: boolean; | ||
alert?: boolean; | ||
} | ||
export interface NotifierToastOptions { | ||
defaultColor?: string; | ||
defaultIcon?: string; | ||
successIcon?: string; | ||
infoIcon?: string; | ||
warningIcon?: string; | ||
errorIcon?: string; | ||
toastProps?: Record<string, string | number | boolean>; | ||
} | ||
export interface NotifierComponentOptions { | ||
transition?: string; | ||
width?: number | string; | ||
height?: number | string; | ||
dialogProps?: Record<string, string | number | boolean>; | ||
componentProps?: Record<string, string | number | boolean | object>; | ||
existsButton?: boolean; | ||
} | ||
export interface Notifier { | ||
confirm(content: string | NotifierContent, status?: string, options?: NotifierDialogOptions): Promise<ConfirmResult> | { | ||
success: Promise<ConfirmResult>; | ||
}; | ||
confirmSuccess(content: string | NotifierContent, options?: NotifierDialogOptions): Promise<ConfirmResult> | { | ||
success: Promise<ConfirmResult>; | ||
}; | ||
confirmInfo(content: string | NotifierContent, options?: NotifierDialogOptions): Promise<ConfirmResult> | { | ||
success: Promise<ConfirmResult>; | ||
}; | ||
confirmWarning(content: string | NotifierContent, options?: NotifierDialogOptions): Promise<ConfirmResult> | { | ||
success: Promise<ConfirmResult>; | ||
}; | ||
confirmError(content: string | NotifierContent, options?: NotifierDialogOptions): Promise<ConfirmResult> | { | ||
success: Promise<ConfirmResult>; | ||
}; | ||
toast(content: string | NotifierContent, status?: string, options?: NotifierToastOptions): void; | ||
toastSuccess(content: string | NotifierContent, options?: NotifierToastOptions): Promise<ConfirmResult> | { | ||
success: Promise<ConfirmResult>; | ||
}; | ||
toastInfo(content: string | NotifierContent, options?: NotifierToastOptions): Promise<ConfirmResult> | { | ||
success: Promise<ConfirmResult>; | ||
}; | ||
toastWarning(content: string | NotifierContent, options?: NotifierToastOptions): Promise<ConfirmResult> | { | ||
success: Promise<ConfirmResult>; | ||
}; | ||
toastError(content: string | NotifierContent, options?: NotifierToastOptions): Promise<ConfirmResult> | { | ||
success: Promise<ConfirmResult>; | ||
}; | ||
alert(content: string | NotifierContent, status?: string, options?: NotifierDialogOptions): Promise<ConfirmResult> | { | ||
success: Promise<ConfirmResult>; | ||
}; | ||
alertSuccess(content: string | NotifierContent, options?: NotifierDialogOptions): Promise<ConfirmResult> | { | ||
success: Promise<ConfirmResult>; | ||
}; | ||
alertInfo(content: string | NotifierContent, options?: NotifierDialogOptions): Promise<ConfirmResult> | { | ||
success: Promise<ConfirmResult>; | ||
}; | ||
alertWarning(content: string | NotifierContent, options?: NotifierDialogOptions): Promise<ConfirmResult> | { | ||
success: Promise<ConfirmResult>; | ||
}; | ||
alertError(content: string | NotifierContent, options?: NotifierDialogOptions): Promise<ConfirmResult> | { | ||
success: Promise<ConfirmResult>; | ||
}; | ||
prompt(content: string | NotifierContent, status?: string, options?: NotifierDialogOptions): Promise<ConfirmResult> | { | ||
success: Promise<ConfirmResult>; | ||
}; | ||
component(content: string | NotifierContent | Component, options?: NotifierComponentOptions): void; | ||
} | ||
export interface NotifierContent { | ||
title?: string; | ||
text?: string; | ||
} | ||
export interface NotifierComponent { | ||
title?: string; | ||
component?: string; | ||
} | ||
export type ConfirmResult = boolean | string | object | any; | ||
export interface NuxtNotifierConfig { | ||
dialog?: NotifierDialogOptions; | ||
toast?: NotifierToastOptions; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
import { NotifierMountComponent, ConfirmResult } from '../types'; | ||
export declare const getVAppRoot: () => HTMLElement; | ||
export declare const createContainer: () => HTMLDivElement; | ||
export declare const mountComponent: ({ component, app, content, status, options }: NotifierMountComponent) => Promise<ConfirmResult>; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
import { NotifierOptions } from "../types"; | ||
export declare const defaultOptions: NotifierOptions; |
Oops, something went wrong.