This repository has been archived on 2023-03-18. You can view files and clone it, but cannot push or open issues or pull requests.
osr-discourse-src/plugins/chat/assets/javascripts/discourse/services/full-page-chat.js
Roman Rizzi 0a5f548635
DEV: Move discourse-chat to the core repo. (#18776)
As part of this move, we are also renaming `discourse-chat` to `chat`.
2022-11-02 10:41:30 -03:00

34 lines
752 B
JavaScript

import KeyValueStore from "discourse/lib/key-value-store";
import Service from "@ember/service";
const FULL_PAGE = "fullPage";
const STORE_NAMESPACE_CHAT_WINDOW = "discourse_chat_window_";
export default class FullPageChat extends Service {
store = new KeyValueStore(STORE_NAMESPACE_CHAT_WINDOW);
_previousRouteInfo = null;
_isActive = false;
enter(previousRouteInfo) {
this._previousRouteInfo = previousRouteInfo;
this._isActive = true;
}
exit() {
this._isActive = false;
return this._previousRouteInfo;
}
get isActive() {
return this._isActive;
}
get isPreferred() {
return !!this.store.getObject(FULL_PAGE);
}
set isPreferred(value) {
this.store.setObject({ key: FULL_PAGE, value });
}
}