feat(settings): add beforeSave check (#161)

This commit is contained in:
megumin 2022-10-25 18:49:50 +01:00 committed by GitHub
parent e06ba68c40
commit 5e7c155f6e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 43 additions and 23 deletions

View file

@ -16,6 +16,8 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
import { Promisable } from "type-fest";
import { Command } from "../api/Commands";
// exists to export default definePlugin({...})
@ -75,6 +77,11 @@ interface PluginDef {
* Optionally provide settings that the user can configure in the Plugins tab of settings.
*/
options?: Record<string, PluginOptionsItem>;
/**
* Check that this returns true before allowing a save to complete.
* If a string is returned, show the error to the user.
*/
beforeSave?(options: Record<string, any>): Promisable<true | string>;
/**
* Allows you to specify a custom Component that will be rendered in your
* plugin's settings page