Sync source to CNB / Sync Git ref (push) Has been cancelled
搬入 game-settings-modal(游戏选项精细编辑,10 文件):设置行编辑器、按键绑定、语言选择与文案表。新增 app-settings-modal provider 与 instance-settings-context 转发,并把 instance-settings 的 closeModal 改为支持关闭回调。SyncSettings 恢复游戏设置入口。补齐 game-options 相关 en-US / zh-CN 文案。
19 lines
548 B
TypeScript
19 lines
548 B
TypeScript
import type { InjectionKey } from 'vue'
|
|
|
|
export type UnsavedChangesController = {
|
|
hasChanges: () => boolean
|
|
getOriginal: () => Record<string, unknown>
|
|
getModified: () => Record<string, unknown>
|
|
isSaving: () => boolean
|
|
reset: () => void
|
|
save: () => void | Promise<void>
|
|
}
|
|
|
|
export type AppSettingsModalContext = {
|
|
close: () => boolean
|
|
registerUnsavedChangesController: (controller: UnsavedChangesController | null) => void
|
|
}
|
|
|
|
export const appSettingsModalContextKey: InjectionKey<AppSettingsModalContext> =
|
|
Symbol('appSettingsModalContext')
|