From f9a9bd136b1414beec89626ff956877c40aebf73 Mon Sep 17 00:00:00 2001 From: Guo Xiang Tan Date: Fri, 15 May 2020 16:16:58 +0800 Subject: [PATCH] FEATURE: Expose `Composer.serializeToTopic` in client side plugin api. --- .../javascripts/discourse/app/lib/plugin-api.js | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/app/assets/javascripts/discourse/app/lib/plugin-api.js b/app/assets/javascripts/discourse/app/lib/plugin-api.js index 4b6356c44d1..d17fde9235a 100644 --- a/app/assets/javascripts/discourse/app/lib/plugin-api.js +++ b/app/assets/javascripts/discourse/app/lib/plugin-api.js @@ -55,7 +55,7 @@ import { on } from "@ember/object/evented"; import KeyboardShortcuts from "discourse/lib/keyboard-shortcuts"; // If you add any methods to the API ensure you bump up this number -const PLUGIN_API_VERSION = "0.9.0"; +const PLUGIN_API_VERSION = "0.10.0"; class PluginApi { constructor(version, container) { @@ -941,6 +941,21 @@ class PluginApi { Composer.reopen({ beforeSave: method }); } + /** + * Adds a field to topic edit serializer + * + * Example: + * + * api.serializeToTopic('key_set_in_model', 'field_name_in_payload'); + * + * to keep both of them same + * api.serializeToTopic('field_name'); + * + */ + serializeToTopic(fieldName, property) { + Composer.serializeToTopic(fieldName, property); + } + /** * Adds a field to draft serializer *