mirror of
https://github.com/laurent22/joplin.git
synced 2024-12-30 10:36:35 +02:00
Tools: updated plugin types
This commit is contained in:
parent
995034c53f
commit
6eebeca259
@ -30,7 +30,7 @@ export default class JoplinCommands {
|
||||
* await joplin.commands.execute('newFolder', "SOME_FOLDER_ID");
|
||||
* ```
|
||||
*/
|
||||
execute(commandName: string, ...args: any[]): Promise<any>;
|
||||
execute(commandName: string, ...args: any[]): Promise<any | void>;
|
||||
/**
|
||||
* <span class="platform-desktop">desktop</span> Registers a new command.
|
||||
*
|
||||
|
@ -9,9 +9,12 @@ export interface Command {
|
||||
name: string
|
||||
|
||||
/**
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example.
|
||||
* If it is missing, it's assumed it's a private command, to be called programmatically only.
|
||||
* In that case the command will not appear in the shortcut editor or command panel, and logically
|
||||
* should not be used as a menu item.
|
||||
*/
|
||||
label: string
|
||||
label?: string
|
||||
|
||||
/**
|
||||
* Icon to be used on toolbar buttons for example
|
||||
@ -19,9 +22,9 @@ export interface Command {
|
||||
iconName?: string,
|
||||
|
||||
/**
|
||||
* Code to be ran when the command is executed. It maybe return a result.
|
||||
* Code to be ran when the command is executed. It may return a result.
|
||||
*/
|
||||
execute(props:any):Promise<any>
|
||||
execute(...args:any[]):Promise<any | void>
|
||||
|
||||
/**
|
||||
* Defines whether the command should be enabled or disabled, which in turns affects
|
||||
|
@ -30,7 +30,7 @@ export default class JoplinCommands {
|
||||
* await joplin.commands.execute('newFolder', "SOME_FOLDER_ID");
|
||||
* ```
|
||||
*/
|
||||
execute(commandName: string, ...args: any[]): Promise<any>;
|
||||
execute(commandName: string, ...args: any[]): Promise<any | void>;
|
||||
/**
|
||||
* <span class="platform-desktop">desktop</span> Registers a new command.
|
||||
*
|
||||
|
@ -9,9 +9,12 @@ export interface Command {
|
||||
name: string
|
||||
|
||||
/**
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example.
|
||||
* If it is missing, it's assumed it's a private command, to be called programmatically only.
|
||||
* In that case the command will not appear in the shortcut editor or command panel, and logically
|
||||
* should not be used as a menu item.
|
||||
*/
|
||||
label: string
|
||||
label?: string
|
||||
|
||||
/**
|
||||
* Icon to be used on toolbar buttons for example
|
||||
@ -19,9 +22,9 @@ export interface Command {
|
||||
iconName?: string,
|
||||
|
||||
/**
|
||||
* Code to be ran when the command is executed. It maybe return a result.
|
||||
* Code to be ran when the command is executed. It may return a result.
|
||||
*/
|
||||
execute(props:any):Promise<any>
|
||||
execute(...args:any[]):Promise<any | void>
|
||||
|
||||
/**
|
||||
* Defines whether the command should be enabled or disabled, which in turns affects
|
||||
|
@ -30,7 +30,7 @@ export default class JoplinCommands {
|
||||
* await joplin.commands.execute('newFolder', "SOME_FOLDER_ID");
|
||||
* ```
|
||||
*/
|
||||
execute(commandName: string, ...args: any[]): Promise<any>;
|
||||
execute(commandName: string, ...args: any[]): Promise<any | void>;
|
||||
/**
|
||||
* <span class="platform-desktop">desktop</span> Registers a new command.
|
||||
*
|
||||
|
@ -9,9 +9,12 @@ export interface Command {
|
||||
name: string
|
||||
|
||||
/**
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example.
|
||||
* If it is missing, it's assumed it's a private command, to be called programmatically only.
|
||||
* In that case the command will not appear in the shortcut editor or command panel, and logically
|
||||
* should not be used as a menu item.
|
||||
*/
|
||||
label: string
|
||||
label?: string
|
||||
|
||||
/**
|
||||
* Icon to be used on toolbar buttons for example
|
||||
@ -19,9 +22,9 @@ export interface Command {
|
||||
iconName?: string,
|
||||
|
||||
/**
|
||||
* Code to be ran when the command is executed. It maybe return a result.
|
||||
* Code to be ran when the command is executed. It may return a result.
|
||||
*/
|
||||
execute(props:any):Promise<any>
|
||||
execute(...args:any[]):Promise<any | void>
|
||||
|
||||
/**
|
||||
* Defines whether the command should be enabled or disabled, which in turns affects
|
||||
|
@ -30,7 +30,7 @@ export default class JoplinCommands {
|
||||
* await joplin.commands.execute('newFolder', "SOME_FOLDER_ID");
|
||||
* ```
|
||||
*/
|
||||
execute(commandName: string, ...args: any[]): Promise<any>;
|
||||
execute(commandName: string, ...args: any[]): Promise<any | void>;
|
||||
/**
|
||||
* <span class="platform-desktop">desktop</span> Registers a new command.
|
||||
*
|
||||
|
@ -9,9 +9,12 @@ export interface Command {
|
||||
name: string
|
||||
|
||||
/**
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example.
|
||||
* If it is missing, it's assumed it's a private command, to be called programmatically only.
|
||||
* In that case the command will not appear in the shortcut editor or command panel, and logically
|
||||
* should not be used as a menu item.
|
||||
*/
|
||||
label: string
|
||||
label?: string
|
||||
|
||||
/**
|
||||
* Icon to be used on toolbar buttons for example
|
||||
@ -19,9 +22,9 @@ export interface Command {
|
||||
iconName?: string,
|
||||
|
||||
/**
|
||||
* Code to be ran when the command is executed. It maybe return a result.
|
||||
* Code to be ran when the command is executed. It may return a result.
|
||||
*/
|
||||
execute(props:any):Promise<any>
|
||||
execute(...args:any[]):Promise<any | void>
|
||||
|
||||
/**
|
||||
* Defines whether the command should be enabled or disabled, which in turns affects
|
||||
|
@ -30,7 +30,7 @@ export default class JoplinCommands {
|
||||
* await joplin.commands.execute('newFolder', "SOME_FOLDER_ID");
|
||||
* ```
|
||||
*/
|
||||
execute(commandName: string, ...args: any[]): Promise<any>;
|
||||
execute(commandName: string, ...args: any[]): Promise<any | void>;
|
||||
/**
|
||||
* <span class="platform-desktop">desktop</span> Registers a new command.
|
||||
*
|
||||
|
@ -9,9 +9,12 @@ export interface Command {
|
||||
name: string
|
||||
|
||||
/**
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example.
|
||||
* If it is missing, it's assumed it's a private command, to be called programmatically only.
|
||||
* In that case the command will not appear in the shortcut editor or command panel, and logically
|
||||
* should not be used as a menu item.
|
||||
*/
|
||||
label: string
|
||||
label?: string
|
||||
|
||||
/**
|
||||
* Icon to be used on toolbar buttons for example
|
||||
@ -19,9 +22,9 @@ export interface Command {
|
||||
iconName?: string,
|
||||
|
||||
/**
|
||||
* Code to be ran when the command is executed. It maybe return a result.
|
||||
* Code to be ran when the command is executed. It may return a result.
|
||||
*/
|
||||
execute(props:any):Promise<any>
|
||||
execute(...args:any[]):Promise<any | void>
|
||||
|
||||
/**
|
||||
* Defines whether the command should be enabled or disabled, which in turns affects
|
||||
|
@ -30,7 +30,7 @@ export default class JoplinCommands {
|
||||
* await joplin.commands.execute('newFolder', "SOME_FOLDER_ID");
|
||||
* ```
|
||||
*/
|
||||
execute(commandName: string, ...args: any[]): Promise<any>;
|
||||
execute(commandName: string, ...args: any[]): Promise<any | void>;
|
||||
/**
|
||||
* <span class="platform-desktop">desktop</span> Registers a new command.
|
||||
*
|
||||
|
@ -9,9 +9,12 @@ export interface Command {
|
||||
name: string
|
||||
|
||||
/**
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example.
|
||||
* If it is missing, it's assumed it's a private command, to be called programmatically only.
|
||||
* In that case the command will not appear in the shortcut editor or command panel, and logically
|
||||
* should not be used as a menu item.
|
||||
*/
|
||||
label: string
|
||||
label?: string
|
||||
|
||||
/**
|
||||
* Icon to be used on toolbar buttons for example
|
||||
@ -19,9 +22,9 @@ export interface Command {
|
||||
iconName?: string,
|
||||
|
||||
/**
|
||||
* Code to be ran when the command is executed. It maybe return a result.
|
||||
* Code to be ran when the command is executed. It may return a result.
|
||||
*/
|
||||
execute(props:any):Promise<any>
|
||||
execute(...args:any[]):Promise<any | void>
|
||||
|
||||
/**
|
||||
* Defines whether the command should be enabled or disabled, which in turns affects
|
||||
|
@ -21,6 +21,15 @@ joplin.plugins.register({
|
||||
},
|
||||
});
|
||||
|
||||
// Commands that return a result and take argument can only be used
|
||||
// programmatically, so it's not necessary to set a label and icon.
|
||||
await joplin.commands.register({
|
||||
name: 'commandWithResult',
|
||||
execute: async (arg1:string, arg2:number) => {
|
||||
return 'I got: ' + arg1 + ' and ' + arg2;
|
||||
},
|
||||
});
|
||||
|
||||
// Add the first command to the note toolbar
|
||||
await joplin.views.toolbarButtons.create('testCommand1', ToolbarButtonLocation.NoteToolbar);
|
||||
|
||||
@ -30,5 +39,9 @@ joplin.plugins.register({
|
||||
// Also add the commands to the menu
|
||||
await joplin.views.menuItems.create('testCommand1', MenuItemLocation.Tools, { accelerator: 'CmdOrCtrl+Alt+Shift+B' });
|
||||
await joplin.views.menuItems.create('testCommand2', MenuItemLocation.Tools);
|
||||
|
||||
console.info('Running command with arguments...');
|
||||
const result = await joplin.commands.execute('commandWithResult', 'abcd', 123);
|
||||
console.info('Result was: ' + result);
|
||||
},
|
||||
});
|
||||
|
@ -30,7 +30,7 @@ export default class JoplinCommands {
|
||||
* await joplin.commands.execute('newFolder', "SOME_FOLDER_ID");
|
||||
* ```
|
||||
*/
|
||||
execute(commandName: string, ...args: any[]): Promise<any>;
|
||||
execute(commandName: string, ...args: any[]): Promise<any | void>;
|
||||
/**
|
||||
* <span class="platform-desktop">desktop</span> Registers a new command.
|
||||
*
|
||||
|
@ -9,9 +9,12 @@ export interface Command {
|
||||
name: string
|
||||
|
||||
/**
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example.
|
||||
* If it is missing, it's assumed it's a private command, to be called programmatically only.
|
||||
* In that case the command will not appear in the shortcut editor or command panel, and logically
|
||||
* should not be used as a menu item.
|
||||
*/
|
||||
label: string
|
||||
label?: string
|
||||
|
||||
/**
|
||||
* Icon to be used on toolbar buttons for example
|
||||
@ -19,9 +22,9 @@ export interface Command {
|
||||
iconName?: string,
|
||||
|
||||
/**
|
||||
* Code to be ran when the command is executed. It maybe return a result.
|
||||
* Code to be ran when the command is executed. It may return a result.
|
||||
*/
|
||||
execute(props:any):Promise<any>
|
||||
execute(...args:any[]):Promise<any | void>
|
||||
|
||||
/**
|
||||
* Defines whether the command should be enabled or disabled, which in turns affects
|
||||
|
@ -30,7 +30,7 @@ export default class JoplinCommands {
|
||||
* await joplin.commands.execute('newFolder', "SOME_FOLDER_ID");
|
||||
* ```
|
||||
*/
|
||||
execute(commandName: string, ...args: any[]): Promise<any>;
|
||||
execute(commandName: string, ...args: any[]): Promise<any | void>;
|
||||
/**
|
||||
* <span class="platform-desktop">desktop</span> Registers a new command.
|
||||
*
|
||||
|
@ -9,9 +9,12 @@ export interface Command {
|
||||
name: string
|
||||
|
||||
/**
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example.
|
||||
* If it is missing, it's assumed it's a private command, to be called programmatically only.
|
||||
* In that case the command will not appear in the shortcut editor or command panel, and logically
|
||||
* should not be used as a menu item.
|
||||
*/
|
||||
label: string
|
||||
label?: string
|
||||
|
||||
/**
|
||||
* Icon to be used on toolbar buttons for example
|
||||
@ -19,9 +22,9 @@ export interface Command {
|
||||
iconName?: string,
|
||||
|
||||
/**
|
||||
* Code to be ran when the command is executed. It maybe return a result.
|
||||
* Code to be ran when the command is executed. It may return a result.
|
||||
*/
|
||||
execute(props:any):Promise<any>
|
||||
execute(...args:any[]):Promise<any | void>
|
||||
|
||||
/**
|
||||
* Defines whether the command should be enabled or disabled, which in turns affects
|
||||
|
@ -30,7 +30,7 @@ export default class JoplinCommands {
|
||||
* await joplin.commands.execute('newFolder', "SOME_FOLDER_ID");
|
||||
* ```
|
||||
*/
|
||||
execute(commandName: string, ...args: any[]): Promise<any>;
|
||||
execute(commandName: string, ...args: any[]): Promise<any | void>;
|
||||
/**
|
||||
* <span class="platform-desktop">desktop</span> Registers a new command.
|
||||
*
|
||||
|
@ -9,9 +9,12 @@ export interface Command {
|
||||
name: string
|
||||
|
||||
/**
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example.
|
||||
* If it is missing, it's assumed it's a private command, to be called programmatically only.
|
||||
* In that case the command will not appear in the shortcut editor or command panel, and logically
|
||||
* should not be used as a menu item.
|
||||
*/
|
||||
label: string
|
||||
label?: string
|
||||
|
||||
/**
|
||||
* Icon to be used on toolbar buttons for example
|
||||
@ -19,9 +22,9 @@ export interface Command {
|
||||
iconName?: string,
|
||||
|
||||
/**
|
||||
* Code to be ran when the command is executed. It maybe return a result.
|
||||
* Code to be ran when the command is executed. It may return a result.
|
||||
*/
|
||||
execute(props:any):Promise<any>
|
||||
execute(...args:any[]):Promise<any | void>
|
||||
|
||||
/**
|
||||
* Defines whether the command should be enabled or disabled, which in turns affects
|
||||
|
@ -30,7 +30,7 @@ export default class JoplinCommands {
|
||||
* await joplin.commands.execute('newFolder', "SOME_FOLDER_ID");
|
||||
* ```
|
||||
*/
|
||||
execute(commandName: string, ...args: any[]): Promise<any>;
|
||||
execute(commandName: string, ...args: any[]): Promise<any | void>;
|
||||
/**
|
||||
* <span class="platform-desktop">desktop</span> Registers a new command.
|
||||
*
|
||||
|
@ -9,9 +9,12 @@ export interface Command {
|
||||
name: string
|
||||
|
||||
/**
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example.
|
||||
* If it is missing, it's assumed it's a private command, to be called programmatically only.
|
||||
* In that case the command will not appear in the shortcut editor or command panel, and logically
|
||||
* should not be used as a menu item.
|
||||
*/
|
||||
label: string
|
||||
label?: string
|
||||
|
||||
/**
|
||||
* Icon to be used on toolbar buttons for example
|
||||
@ -19,9 +22,9 @@ export interface Command {
|
||||
iconName?: string,
|
||||
|
||||
/**
|
||||
* Code to be ran when the command is executed. It maybe return a result.
|
||||
* Code to be ran when the command is executed. It may return a result.
|
||||
*/
|
||||
execute(props:any):Promise<any>
|
||||
execute(...args:any[]):Promise<any | void>
|
||||
|
||||
/**
|
||||
* Defines whether the command should be enabled or disabled, which in turns affects
|
||||
|
@ -14,7 +14,7 @@ export interface CommandContext {
|
||||
}
|
||||
|
||||
export interface CommandRuntime {
|
||||
execute(context:CommandContext, ...args:any[]):Promise<any>
|
||||
execute(context:CommandContext, ...args:any[]):Promise<any | void>
|
||||
enabledCondition?: EnabledCondition;
|
||||
// Used for the (optional) toolbar button title
|
||||
mapStateToTitle?(state:any):string,
|
||||
|
@ -33,7 +33,7 @@ export default class JoplinCommands {
|
||||
* await joplin.commands.execute('newFolder', "SOME_FOLDER_ID");
|
||||
* ```
|
||||
*/
|
||||
async execute(commandName: string, ...args:any[]):Promise<any> {
|
||||
async execute(commandName: string, ...args:any[]):Promise<any | void> {
|
||||
return CommandService.instance().execute(commandName, ...args);
|
||||
}
|
||||
|
||||
|
@ -9,9 +9,12 @@ export interface Command {
|
||||
name: string
|
||||
|
||||
/**
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example
|
||||
* Label to be displayed on menu items or keyboard shortcut editor for example.
|
||||
* If it is missing, it's assumed it's a private command, to be called programmatically only.
|
||||
* In that case the command will not appear in the shortcut editor or command panel, and logically
|
||||
* should not be used as a menu item.
|
||||
*/
|
||||
label: string
|
||||
label?: string
|
||||
|
||||
/**
|
||||
* Icon to be used on toolbar buttons for example
|
||||
@ -19,9 +22,9 @@ export interface Command {
|
||||
iconName?: string,
|
||||
|
||||
/**
|
||||
* Code to be ran when the command is executed. It maybe return a result.
|
||||
* Code to be ran when the command is executed. It may return a result.
|
||||
*/
|
||||
execute(props:any):Promise<any>
|
||||
execute(...args:any[]):Promise<any | void>
|
||||
|
||||
/**
|
||||
* Defines whether the command should be enabled or disabled, which in turns affects
|
||||
|
Loading…
Reference in New Issue
Block a user