discourse/plugins/chat
Martin Brennan c0a086a988
DEV: Move ChatThreadsManager to channel (#20304)
This commit changes the ChatThreadsManager into a native
class instead of an ember service, and initializes it
for every ChatChannel model. This way each channel has its
own thread manager and cache that we can load/unload as
needed, and we also move activeThread to the channel since
it makes more sense to keep it there, not inside the chat service.

The pattern of calling setOwner with the passed in owner
from ChatChannel is adapted from the latest ember docs,
and is needed to avoid the error below when calling services
from the native class:

> Attempting to lookup an injected property on an object without a container, ensure that the object was instantiated via a container

It works well _only_ if we use our own getOwner wrapper
from addon/lib/get-owner, which is for backwards compat.

c.f. https://guides.emberjs.com/release/in-depth-topics/native-classes-in-depth/
2023-02-16 10:00:40 +10:00
..
app DEV: Fix failing chat spec and add unexpected failure indicator (#20299) 2023-02-15 19:16:13 +01:00
assets DEV: Move ChatThreadsManager to channel (#20304) 2023-02-16 10:00:40 +10:00
config REFACTOR: channel retention reminder text (#20310) 2023-02-15 14:50:01 +01:00
db DEV: Add ChatThread model and DB table, and ChatMessage reference (#20106) 2023-02-01 13:50:38 +10:00
lib DEV: fixes deprecation warning in SendMessageNotifications (#20318) 2023-02-15 22:13:24 +01:00
public
spec DEV: adds spec for deleted message (#20317) 2023-02-15 22:05:16 +01:00
test/javascripts REFACTOR: channel retention reminder text (#20310) 2023-02-15 14:50:01 +01:00
plugin.rb FEATURE: Chat side panel with threads initial skeleton (#20209) 2023-02-14 11:38:41 +10:00
README.md DEV: Chat service object initial implementation (#19814) 2023-02-13 13:09:57 +01:00

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 user documentation, see Discourse Chat.

For developer documentation, see Discourse Documentation.