mirror of
https://github.com/laurent22/joplin.git
synced 2024-12-18 09:35:20 +02:00
3d8577a689
- For now, supports Markdown-it plugins - Also fixed slow rendering of notes in some cases - Simplified how Markdown-It plugins are created and cleaned MdToHtml code commit89576de289
Merge:c75aa21f
5292fc14
Author: Laurent Cozic <laurent@cozic.net> Date: Wed Oct 21 00:23:00 2020 +0100 Merge branch 'release-1.3' into plugin_content_scripts commitc75aa21ffd
Author: Laurent Cozic <laurent@cozic.net> Date: Wed Oct 21 00:19:52 2020 +0100 Fixed tests commit075187729d
Author: Laurent Cozic <laurent@cozic.net> Date: Wed Oct 21 00:11:53 2020 +0100 Fixed tests commit14696b8c65
Author: Laurent Cozic <laurent@cozic.net> Date: Tue Oct 20 23:27:58 2020 +0100 Fixed slow rendering of note commit61c09f5bf8
Author: Laurent Cozic <laurent@cozic.net> Date: Tue Oct 20 22:35:21 2020 +0100 Clean up commit9f7ea7d865
Author: Laurent Cozic <laurent@cozic.net> Date: Tue Oct 20 20:05:31 2020 +0100 Updated doc commit98bf3bde8d
Author: Laurent Cozic <laurent@cozic.net> Date: Tue Oct 20 19:56:34 2020 +0100 Finished converting plugins commitfe90d92e01
Author: Laurent Cozic <laurent@cozic.net> Date: Tue Oct 20 17:52:02 2020 +0100 Simplified how Markdown-It plugins are created commit47c7b864cb
Author: Laurent Cozic <laurent@cozic.net> Date: Mon Oct 19 16:40:11 2020 +0100 Clean up rules commitd927a238bb
Author: Laurent Cozic <laurent@cozic.net> Date: Mon Oct 19 14:29:40 2020 +0100 Fixed tests commit388a56c5dd
Author: Laurent Cozic <laurent@cozic.net> Date: Mon Oct 19 14:00:47 2020 +0100 Add support for content scripts
44 lines
2.2 KiB
TypeScript
44 lines
2.2 KiB
TypeScript
import Plugin from '../Plugin';
|
|
import { SettingItem, SettingSection } from './types';
|
|
/**
|
|
* This API allows registering new settings and setting sections, as well as getting and setting settings. Once a setting has been registered it will appear in the config screen and be editable by the user.
|
|
*
|
|
* Settings are essentially key/value pairs.
|
|
*
|
|
* Note: Currently this API does **not** provide access to Joplin's built-in settings. This is by design as plugins that modify user settings could give unexpected results
|
|
*
|
|
* [View the demo plugin](https://github.com/laurent22/joplin/tree/dev/CliClient/tests/support/plugins/settings)
|
|
*/
|
|
export default class JoplinSettings {
|
|
private plugin_;
|
|
constructor(plugin: Plugin);
|
|
private namespacedKey;
|
|
/**
|
|
* Registers a new setting. Note that registering a setting item is dynamic and will be gone next time Joplin starts.
|
|
* What it means is that you need to register the setting every time the plugin starts (for example in the onStart event).
|
|
* The setting value however will be preserved from one launch to the next so there is no risk that it will be lost even if for some
|
|
* reason the plugin fails to start at some point.
|
|
*/
|
|
registerSetting(key: string, settingItem: SettingItem): Promise<void>;
|
|
/**
|
|
* Registers a new setting section. Like for registerSetting, it is dynamic and needs to be done every time the plugin starts.
|
|
*/
|
|
registerSection(name: string, section: SettingSection): Promise<void>;
|
|
/**
|
|
* Gets a setting value (only applies to setting you registered from your plugin)
|
|
*/
|
|
value(key: string): Promise<any>;
|
|
/**
|
|
* Sets a setting value (only applies to setting you registered from your plugin)
|
|
*/
|
|
setValue(key: string, value: any): Promise<void>;
|
|
/**
|
|
* Gets a global setting value, including app-specific settings and those set by other plugins.
|
|
*
|
|
* The list of available settings is not documented yet, but can be found by looking at the source code:
|
|
*
|
|
* https://github.com/laurent22/joplin/blob/3539a452a359162c461d2849829d2d42973eab50/ReactNativeClient/lib/models/Setting.ts#L142
|
|
*/
|
|
globalValue(key: string): Promise<any>;
|
|
}
|