添加程序配置项
This commit is contained in:
6
index.ts
6
index.ts
@@ -1,16 +1,20 @@
|
|||||||
import Invoker from "./src/components/Invoker";
|
import Invoker, { InvokerModName } from "./src/components/Invoker";
|
||||||
import { hh } from './src/components/DemiHelper';
|
import { hh } from './src/components/DemiHelper';
|
||||||
import { InvokerItem } from "./src/components/InvokerItem";
|
import { InvokerItem } from "./src/components/InvokerItem";
|
||||||
import { InvokerContext } from "./src/types/InvokerContext";
|
import { InvokerContext } from "./src/types/InvokerContext";
|
||||||
import { Vue2Instance } from "./src/types/Vue2Instance";
|
import { Vue2Instance } from "./src/types/Vue2Instance";
|
||||||
import { ModContext } from "./src/types/ModContext";
|
import { ModContext } from "./src/types/ModContext";
|
||||||
import Receiver from "./src/components/Receiver";
|
import Receiver from "./src/components/Receiver";
|
||||||
|
import { ConfigureModPage, modPageConfig } from "./src/modPageConfig";
|
||||||
|
|
||||||
export {
|
export {
|
||||||
|
modPageConfig,
|
||||||
|
ConfigureModPage,
|
||||||
Invoker,
|
Invoker,
|
||||||
Receiver,
|
Receiver,
|
||||||
type InvokerItem,
|
type InvokerItem,
|
||||||
type InvokerContext,
|
type InvokerContext,
|
||||||
|
type InvokerModName,
|
||||||
type Vue2Instance,
|
type Vue2Instance,
|
||||||
type ModContext,
|
type ModContext,
|
||||||
hh,
|
hh,
|
||||||
|
@@ -3,12 +3,13 @@ import {
|
|||||||
onBeforeUpdate,
|
onBeforeUpdate,
|
||||||
onUnmounted,
|
onUnmounted,
|
||||||
watch,
|
watch,
|
||||||
|
type PropType
|
||||||
} from "vue-demi";
|
} from "vue-demi";
|
||||||
import { ModContext } from "../types/ModContext";
|
import { ModContext } from "../types/ModContext";
|
||||||
import { InvokerItem } from "./InvokerItem";
|
import { InvokerItem } from "./InvokerItem";
|
||||||
|
|
||||||
let idCount = 0;
|
let idCount = 0;
|
||||||
export const UrlFunc = null as ((name: string) => string) | null;
|
export type InvokerModName = string;
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
props: {
|
props: {
|
||||||
@@ -24,9 +25,10 @@ export default defineComponent({
|
|||||||
type: Array,
|
type: Array,
|
||||||
default: () => undefined as InvokerItem[] | undefined,
|
default: () => undefined as InvokerItem[] | undefined,
|
||||||
},
|
},
|
||||||
url: {
|
name: {
|
||||||
type: String,
|
type: String as PropType<InvokerModName> | undefined,
|
||||||
default: () => null,
|
default: () => undefined,
|
||||||
|
required: false,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
emits: ["destroyed"],
|
emits: ["destroyed"],
|
||||||
|
19
src/modPageConfig.ts
Normal file
19
src/modPageConfig.ts
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
import { DeepReadonly } from "vue";
|
||||||
|
import { InvokerModName } from "./components/Invoker";
|
||||||
|
|
||||||
|
let _modPageConfig = {
|
||||||
|
Invoker: {
|
||||||
|
/** Invoker中计算ModUrl的方法 */
|
||||||
|
GetModUrl: undefined as ((modName: InvokerModName) => string | Promise<string>) | undefined,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export function ConfigureModPage(config: typeof _modPageConfig) {
|
||||||
|
Object.assign(_modPageConfig, {
|
||||||
|
Invoker: {
|
||||||
|
...config.Invoker,
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export const modPageConfig: DeepReadonly<typeof _modPageConfig> = _modPageConfig;
|
Reference in New Issue
Block a user