Skip to content

安装酒馆扩展

提示

请务必先阅读如何正确使用酒馆助手

你可以通过酒馆助手安装、卸载、更新酒馆扩展.

点击查看对应类型定义文件 (可发给 AI 或 IDE 使用, 酒馆助手界面中提供了打包下载)

isAdmin

检查当前用户是否为管理员, 只有管理员能更新全局扩展

ts
function isAdmin(): boolean;

getTavernHelperExtensionId

获取酒馆助手扩展 id

ts
function getTavernHelperExtensionId(): string;

getExtensionType

获取已安装扩展的类型

ts
function getExtensionType(extension_id: string): 'local' | 'global' | 'system' | null;

参数

extension_id

  • 类型: string
  • 描述: 扩展ID, 一般是扩展文件夹名

返回值

  • 扩展类型: 'local' | 'global' | 'system' | null
    • 'local': 本地扩展, 仅当前用户可用
    • 'global': 全局扩展, 酒馆所有用户可用
    • 'system': 酒馆内置扩展, 如正则等
    • null: 没找到 extension_id 对应的扩展

getExtensionInstallationInfo

获取扩展安装信息

ts
function getExtensionInstallationInfo(extension_id: string): Promise<ExtensionInstallationInfo | null>;
ts
type ExtensionInstallationInfo = {
  current_branch_name: string;
  current_commit_hash: string;
  is_up_to_date: boolean;
  remote_url: string;
};

参数

extension_id

  • 类型: string
  • 描述: 扩展ID, 一般是扩展文件夹名

返回值

  • 扩展安装信息: 如果找到了 extension_id 对应的扩展, 返回 ExtensionInstallationInfo; 否则返回 null.

isInstalledExtension

检查是否已安装某一扩展

ts
function isInstalledExtension(extension_id: string): boolean;

参数

extension_id

  • 类型: string
  • 描述: 扩展ID, 一般是扩展文件夹名

返回值

  • 是否已安装: boolean

示例

ts
const is_installed = isInstalledExtension(getTavernHelperExtensionId());

installExtension

安装扩展; 新安装的扩展需要刷新页面 (triggerSlash('/reload-page')) 才生效

ts
function installExtension(url: string, type: 'local' | 'global'): Promise<Response>;

参数

url

  • 类型: string
  • 描述: 扩展URL

type

  • 类型: 'local' | 'global'
  • 描述: 扩展类型
    • 'local': 本地扩展, 仅当前用户可用
    • 'global': 全局扩展, 酒馆所有用户可用

返回值

  • 对安装的响应情况: Response

示例

ts
const response = await installExtension('https://github.com/n0vi028/JS-Slash-Runner', 'local');
if (response.ok) {
  toastr.success(`成功安装酒馆助手, 准备刷新页面以生效...`);
  _.delay(() => triggerSlash('/reload-page'), 3000);
}

uninstallExtension

卸载扩展; 卸载后需要刷新页面 (triggerSlash('/reload-page')) 才生效

ts
function uninstallExtension(extension_id: string): Promise<Response>;

参数

extension_id

  • 类型: string
  • 描述: 扩展ID, 一般是扩展文件夹名

返回值

  • 对卸载的响应情况: Response

示例

ts
const response = await uninstallExtension(getTavernHelperExtensionId());
if (response.ok) {
  toastr.success(`成功卸载酒馆助手, 准备刷新页面以生效...`);
  _.delay(() => triggerSlash('/reload-page'), 3000);
}

reinstallExtension

重新安装扩展; 重新安装后需要刷新页面 (triggerSlash('/reload-page')) 才生效

ts
function reinstallExtension(extension_id: string): Promise<Response>;

参数

extension_id

  • 类型: string
  • 描述: 扩展ID, 一般是扩展文件夹名

返回值

  • 对重新安装的响应情况: Response

示例

ts
const response = await reinstallExtension(getTavernHelperExtensionId());
if (response.ok) {
  toastr.success(`成功重新安装酒馆助手, 准备刷新页面以生效...`);
  _.delay(() => triggerSlash('/reload-page'), 3000);
}

updateExtension

更新扩展; 更新后需要刷新页面 (triggerSlash('/reload-page')) 才生效

ts
function updateExtension(extension_id: string): Promise<Response>;

参数

extension_id

  • 类型: string
  • 描述: 扩展ID, 一般是扩展文件夹名

返回值

  • 对更新的响应情况: Response

示例

ts
const response = await updateExtension(getTavernHelperExtensionId());
if (response.ok) {
  toastr.success(`成功更新酒馆助手, 准备刷新页面以生效...`);
  _.delay(() => triggerSlash('/reload-page'), 3000);
}

作者:KAKAA, 青空莉想做舞台少女的狗