Interface IAppProxy

App level APIs

Hierarchy

  • IAppProxy

Properties

_installPluginHook: ((pid: string, hook: string) => void)

Type declaration

    • (pid: string, hook: string): void
    • Parameters

      • pid: string
      • hook: string

      Returns void

_uninstallPluginHook: ((pid: string, hookOrAll: string | boolean) => void)

Type declaration

    • (pid: string, hookOrAll: string | boolean): void
    • Parameters

      • pid: string
      • hookOrAll: string | boolean

      Returns void

clearRightSidebarBlocks: ((opts?: {
    close: boolean;
}) => void)

Type declaration

    • (opts?: {
          close: boolean;
      }): void
    • Parameters

      • Optional opts: {
            close: boolean;
        }
        • close: boolean

      Returns void

execGitCommand: ((args: string[]) => Promise<string>)

Type declaration

getCurrentGraph: (() => Promise<AppGraphInfo>)

Type declaration

getCurrentGraphConfigs: (() => Promise<any>)

Type declaration

    • (): Promise<any>
    • Returns Promise<any>

getCurrentGraphFavorites: (() => Promise<string[]>)

Type declaration

    • (): Promise<string[]>
    • Returns Promise<string[]>

getCurrentGraphRecent: (() => Promise<string[]>)

Type declaration

    • (): Promise<string[]>
    • Returns Promise<string[]>

getExternalPlugin: ((pid: string) => Promise<{}>)

Type declaration

    • (pid: string): Promise<{}>
    • Added

      0.0.13

      Parameters

      • pid: string

      Returns Promise<{}>

getInfo: ((key?: keyof AppInfo) => Promise<any>)

Type declaration

    • (key?: keyof AppInfo): Promise<any>
    • Added

      0.0.4

      Parameters

      Returns Promise<any>

getStateFromStore: (<T>(path: string | string[]) => Promise<T>)

Type declaration

getUserConfigs: (() => Promise<AppUserConfigs>)

Type declaration

getUserInfo: (() => Promise<AppUserInfo>)

Type declaration

invokeExternalCommand: ((type: ExternalCommandType, ...args: any[]) => Promise<void>)

Type declaration

invokeExternalPlugin: ((type: string, ...args: any[]) => Promise<unknown>)

Type declaration

    • (type: string, ...args: any[]): Promise<unknown>
    • Call external plugin command provided by models or registerd commands

      Added

      0.0.13

      Parameters

      • type: string

        xx-plugin-id.commands.xx-key, xx-plugin-id.models.xx-key

      • Rest ...args: any[]

      Returns Promise<unknown>

onBlockRendererSlotted: IUserConditionSlotHook<string, Omit<BlockEntity, "children" | "page">>

provide ui slot to specific block with UUID

Added

0.0.13

onCurrentGraphChanged: IUserHook<any, IUserOffHook>
onGraphAfterIndexed: IUserHook<{
    repo: string;
}, IUserOffHook>
onMacroRendererSlotted: IUserSlotHook<{
    payload: {
        arguments: string[];
        uuid: string;
        [key: string]: any;
    };
}>

provide ui slot to block renderer macro for {{renderer arg1, arg2}}

Example

https://github.com/logseq/logseq-plugin-samples/tree/master/logseq-pomodoro-timer

Example

// e.g. {{renderer :h1, hello world, green}}

logseq.App.onMacroRendererSlotted(({ slot, payload: { arguments } }) => {
let [type, text, color] = arguments
if (type !== ':h1') return
logseq.provideUI({
key: 'h1-playground',
slot, template: `
<h2 style="color: ${color || 'red'}">${text}</h2>
`,
})
})
onPageHeadActionsSlotted: IUserSlotHook<any>
onRouteChanged: IUserHook<{
    path: string;
    template: string;
}, IUserOffHook>
onSidebarVisibleChanged: IUserHook<{
    visible: boolean;
}, IUserOffHook>
onThemeChanged: IUserHook<Partial<{
    mode: string;
    name: string;
    pid: string;
    url: string;
}>, IUserOffHook>
onThemeModeChanged: IUserHook<{
    mode: "light" | "dark";
}, IUserOffHook>
openExternalLink: ((url: string) => Promise<void>)

Type declaration

    • (url: string): Promise<void>
    • Parameters

      • url: string

      Returns Promise<void>

pushState: ((k: string, params?: Record<string, any>, query?: Record<string, any>) => void)

Type declaration

    • (k: string, params?: Record<string, any>, query?: Record<string, any>): void
    • Parameters

      • k: string
      • Optional params: Record<string, any>
      • Optional query: Record<string, any>

      Returns void

queryElementById: ((id: string) => Promise<string | boolean>)

Type declaration

    • (id: string): Promise<string | boolean>
    • Parameters

      • id: string

      Returns Promise<string | boolean>

queryElementRect: ((selector: string) => Promise<DOMRectReadOnly>)

Type declaration

    • (selector: string): Promise<DOMRectReadOnly>
    • Added

      0.0.5

      Parameters

      • selector: string

      Returns Promise<DOMRectReadOnly>

quit: (() => Promise<void>)

Type declaration

    • (): Promise<void>
    • Returns Promise<void>

registerCommand: ((type: string, opts: {
    desc?: string;
    key: string;
    keybinding?: SimpleCommandKeybinding;
    label: string;
    palette?: boolean;
}, action: SimpleCommandCallback<any>) => void)

Type declaration

registerCommandPalette: ((opts: {
    key: string;
    keybinding?: SimpleCommandKeybinding;
    label: string;
}, action: SimpleCommandCallback<any>) => void)

Type declaration

registerCommandShortcut: ((keybinding: SimpleCommandKeybinding, action: SimpleCommandCallback<any>) => void)

Type declaration

registerPageMenuItem: ((tag: string, action: ((e: IHookEvent & {
    page: string;
}) => void)) => void)

Type declaration

    • (tag: string, action: ((e: IHookEvent & {
          page: string;
      }) => void)): void
    • Parameters

      • tag: string
      • action: ((e: IHookEvent & {
            page: string;
        }) => void)
          • (e: IHookEvent & {
                page: string;
            }): void
          • Parameters

            Returns void

      Returns void

registerUIItem: ((type: "toolbar" | "pagebar", opts: {
    key: string;
    template: string;
}) => void)

Type declaration

    • (type: "toolbar" | "pagebar", opts: {
          key: string;
          template: string;
      }): void
    • Parameters

      • type: "toolbar" | "pagebar"
      • opts: {
            key: string;
            template: string;
        }
        • key: string
        • template: string

      Returns void

relaunch: (() => Promise<void>)

Type declaration

    • (): Promise<void>
    • Returns Promise<void>

replaceState: ((k: string, params?: Record<string, any>, query?: Record<string, any>) => void)

Type declaration

    • (k: string, params?: Record<string, any>, query?: Record<string, any>): void
    • Parameters

      • k: string
      • Optional params: Record<string, any>
      • Optional query: Record<string, any>

      Returns void

setFullScreen: ((flag: boolean | "toggle") => void)

Type declaration

    • (flag: boolean | "toggle"): void
    • Parameters

      • flag: boolean | "toggle"

      Returns void

setLeftSidebarVisible: ((flag: boolean | "toggle") => void)

Type declaration

    • (flag: boolean | "toggle"): void
    • Parameters

      • flag: boolean | "toggle"

      Returns void

setRightSidebarVisible: ((flag: boolean | "toggle") => void)

Type declaration

    • (flag: boolean | "toggle"): void
    • Parameters

      • flag: boolean | "toggle"

      Returns void

setStateFromStore: ((path: string | string[], value: any) => Promise<void>)

Type declaration

    • (path: string | string[], value: any): Promise<void>
    • Parameters

      • path: string | string[]
      • value: any

      Returns Promise<void>

setZoomFactor: ((factor: number) => void)

Type declaration

    • (factor: number): void
    • Parameters

      • factor: number

      Returns void

showMsg: ((content: string, status?: string) => void)

Type declaration

    • (content: string, status?: string): void
    • Deprecated

      Use logseq.UI.showMsg instead

      Parameters

      • content: string
      • Optional status: string

      Returns void

Methods

Generated using TypeDoc