* DEV: Rnemae channel path to just c Also swap the channel id and channel slug params to be consistent with core. * linting * channel_path * params in wrong order * Drop slugify helper and channel route without slug * Request slug and route models through the channel model if possible * Add client side redirection for backwards-compatibility Co-authored-by: Joffrey JAFFEUX <j.jaffeux@gmail.com> |
||
|---|---|---|
| .. | ||
| app | ||
| assets | ||
| config | ||
| db | ||
| docs | ||
| lib | ||
| public | ||
| spec | ||
| test/javascripts | ||
| plugin.rb | ||
| README.md | ||
⚠️ This plugin is still in active development and may change frequently
Documentation
The Discourse Chat plugin adds chat functionality to your Discourse so it can natively support both long-form and short-form communication needs of your online community.
For documentation, see Discourse Chat
Plugin API
registerChatComposerButton
Usage
api.registerChatComposerButton({ id: "foo", ... });
Options
Every option accepts a value or a function, when passing a function this will be the chat-composer component instance. Example of an option using a function:
api.registerChatComposerButton({
id: "foo",
displayed() {
return this.site.mobileView && this.canAttachUploads;
},
});
Required
idunique, used to identify your button, eg: "gifs"actioncallback when the button is pressed, can be an action name or an anonymous function, eg: "onFooClicked" or() => { console.log("clicked") }
A button requires at least an icon or a label:
icon, eg: "times"label, text displayed on the button, a translatable key, eg: "foo.bar"translatedLabel, text displayed on the button, a string, eg: "Add gifs"
Optional
position, can be "inline" or "dropdown", defaults to "inline"title, title attribute of the button, a translatable key, eg: "foo.bar"translatedTitle, title attribute of the button, a string, eg: "Add gifs"ariaLabel, aria-label attribute of the button, a translatable key, eg: "foo.bar"translatedAriaLabel, aria-label attribute of the button, a string, eg: "Add gifs"classNames, additional names to add to the button’s class attribute, eg: ["foo", "bar"]displayed, hide/or show the button, expects a booleandisabled, sets the disabled attribute on the button, expects a booleanpriority, an integer defining the order of the buttons, higher comes first, eg:700dependentKeys, list of property names which should trigger a refresh of the buttons when changed, eg:["foo.bar", "bar.baz"]