Commit d7b253c7 authored by Grant's avatar Grant
Browse files

ClientConfig is not always available anymore

parent 771ddd4d
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -13,9 +13,11 @@ const OpenChatButton = () => {
      color="danger"
      size="sm"
    >
      {config?.chat?.element_host && (
        <Button as={Link} href={config.chat.element_host} target="_blank">
          Chat
        </Button>
      )}
    </Badge>
  );
};
+18 −16
Original line number Diff line number Diff line
@@ -81,6 +81,7 @@ export const UserCard = ({ user }: { user: IUser }) => {
          <span className="text-sm">{user?.sub}</span>
        </div>
        <div>
          {config && (
            <Button
              isIconOnly
              as={Link}
@@ -97,6 +98,7 @@ export const UserCard = ({ user }: { user: IUser }) => {
                />
              )}
            </Button>
          )}
        </div>
      </div>
      <Button size="sm">View Profile</Button>
+15 −0
Original line number Diff line number Diff line
@@ -33,6 +33,11 @@ export const ChatContext = ({ children }: PropsWithChildren) => {
  const [notifs, setNotifs] = useState(0);

  const doLogin = () => {
    if (!config) {
      console.warn("[ChatContext#doLogin] has no config instance");
      return;
    }

    const redirectUrl =
      window.location.protocol + "//" + window.location.host + "/chat_callback";

@@ -46,6 +51,11 @@ export const ChatContext = ({ children }: PropsWithChildren) => {
  };

  const doLogout = async () => {
    if (!config) {
      console.warn("[ChatContext#doLogout] has no config instance");
      return;
    }

    await fetch(
      `https://${config.chat.matrix_homeserver}/_matrix/client/v3/logout`,
      {
@@ -97,6 +107,11 @@ export const ChatContext = ({ children }: PropsWithChildren) => {
  };

  const checkForNotifs = async () => {
    if (!config) {
      console.warn("[ChatContext#checkForNotifs] no config instance");
      return;
    }

    const accessToken = localStorage.getItem("matrix.access_token");
    if (!accessToken) return;

+1 −1
Original line number Diff line number Diff line
@@ -30,7 +30,7 @@ export interface ClientToServerEvents {

// TODO: move to client/{...}/AppContext.tsx
export interface IAppContext {
  config: ClientConfig;
  config?: ClientConfig;
  user?: AuthSession;
  canvasPosition?: ICanvasPosition;
  setCanvasPosition: (v: ICanvasPosition) => void;