Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions client/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@
<link rel="icon" href="/assets/threadlet/128.ico" />
<link rel="icon" href="/assets/threadlet/64.ico" />
<link rel="icon" href="/assets/threadlet/48.ico" />
<link rel="stylesheet" href="/assets/style.css" />
<link rel="stylesheet" href="/assets/md.css" />
</head>
<body>
<div id="loadingScreen">
Expand Down
4 changes: 4 additions & 0 deletions client/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

File renamed without changes
File renamed without changes.
File renamed without changes.
4 changes: 2 additions & 2 deletions client/src/comps/App.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ import { ClientEvent, RoomEvent } from "matrix-js-sdk"
import { initMatrixClient, matrix } from "../matrix"
import RoomList from "./RoomList"
import Component from "./Component"
import Form from "./Form"
import View from "./View"
import Form from "./forms/Form"
import View from "./views/View"
import Modal from "./Modal"

export default class App extends Component {
Expand Down
4 changes: 2 additions & 2 deletions client/src/comps/ChatInput.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ import { MsgType } from "matrix-js-sdk"
import { matrix } from "../matrix"
import Component from "./Component"
import EmojiPicker from "./EmojiPicker"
import PostView from "./PostView"
import RoomView from "./RoomView"
import PostView from "./views/PostView"
import RoomView from "./views/RoomView"

// Credits to DeepSeek-R1, wow (edited though)
export default class ChatInput extends Component {
Expand Down
2 changes: 1 addition & 1 deletion client/src/comps/ForumTab.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import { twemojiParse } from "../md"
import Component from "./Component"
import ContextMenu from "./ContextMenu"
import { app } from "../main"
import ConfirmForm from "./ConfirmForm"
import ConfirmForm from "./forms/ConfirmForm"

export default class ForumTab extends Component {
readonly tab: HTMLElement
Expand Down
2 changes: 1 addition & 1 deletion client/src/comps/Login.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ export default class Login extends Component {
this.element.appendChild(title)

const morpheusImg = document.createElement("img")
morpheusImg.src = "/2pills.png"
morpheusImg.src = "/assets/2pills.png"
morpheusImg.id = "morpehusImg"
this.element.appendChild(morpheusImg)

Expand Down
2 changes: 1 addition & 1 deletion client/src/comps/MemberList.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { RoomMember } from "matrix-js-sdk"
import Component from "./Component"
import FormButton from "./FormButton"
import FormButton from "./form-comps/FormButton"
import { matrix } from "../matrix"
import Member from "./Member"
import { forms } from "../main"
Expand Down
2 changes: 1 addition & 1 deletion client/src/comps/Modal.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { app } from "../main"
import Component from "./Component"
import Form from "./Form"
import Form from "./forms/Form"

export default class Modal extends Component {
readonly form: Form
Expand Down
2 changes: 1 addition & 1 deletion client/src/comps/RoomList.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { app, forms, views } from "../main"
import Component from "./Component"
import FormButton from "./FormButton"
import FormButton from "./form-comps/FormButton"
import ForumTab from "./ForumTab"
import { Room } from "matrix-js-sdk"

Expand Down
2 changes: 1 addition & 1 deletion client/src/comps/events/ChatMessageBase.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import { getMXUser, matrix } from "../../matrix"
import EventBase from "./EventBase"
import { relativeTimeFormat } from "../../intl"
import ContextMenu, { ContextMenuItem } from "../ContextMenu"
import ConfirmForm from "../ConfirmForm"
import ConfirmForm from "../forms/ConfirmForm"

export default class ChatMessageBase extends EventBase {
constructor(msg: MatrixEvent) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import Component from "./Component"
import Component from "../Component"

export default class FormButton extends Component {
constructor(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import Component from "./Component"
import Component from "../Component"

export default class FormCheckbox extends Component {
private readonly input: HTMLInputElement
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import Component from "./Component"
import Component from "../Component"
import FormButton from "./FormButton"
import FormTextInput from "./FormTextInput"

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import Component from "./Component"
import Component from "../Component"

export type FormMultiSelectOption = {
id: string
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import Component from "./Component"
import EmojiButton from "./EmojiButton"
import Component from "../Component"
import EmojiButton from "../EmojiButton"

export default class FormTextInput extends Component {
private readonly input: HTMLInputElement
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import Component from "./Component"
import EmojiButton from "./EmojiButton"
import Component from "../Component"
import EmojiButton from "../EmojiButton"

export default class FormTextarea extends Component {
private readonly textarea: HTMLTextAreaElement
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { MaybePromise } from "../types"
import { MaybePromise } from "../../types"
import Form from "./Form"
import SubmitButton from "./SubmitButton"
import SubmitButton from "../form-comps/SubmitButton"

export default class ConfirmForm extends Form {
handler!: (confirmed: boolean) => MaybePromise<void>
Expand Down
10 changes: 5 additions & 5 deletions client/src/comps/Form.ts → client/src/comps/forms/Form.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { app } from "../main"
import { twemojiParse } from "../md"
import { MaybePromise } from "../types"
import Component from "./Component"
import Modal from "./Modal"
import { app } from "../../main"
import { twemojiParse } from "../../md"
import { MaybePromise } from "../../types"
import Component from "../Component"
import Modal from "../Modal"

export default abstract class Form<
ResetArgs extends Array<unknown> = Array<unknown>,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { app, views } from "../main"
import { app, views } from "../../main"
import Form from "./Form"
import FormTextInput from "./FormTextInput"
import { matrix } from "../matrix"
import FormCheckbox from "./FormCheckbox"
import SubmitButton from "./SubmitButton"
import FormTextInput from "../form-comps/FormTextInput"
import { matrix } from "../../matrix"
import FormCheckbox from "../form-comps/FormCheckbox"
import SubmitButton from "../form-comps/SubmitButton"

export default class RoomCreationForm extends Form {
readonly nameInput: FormTextInput
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { Room } from "matrix-js-sdk"
import { matrix } from "../matrix"
import { app, views } from "../main"
import { matrix } from "../../matrix"
import { app, views } from "../../main"
import Form from "./Form"
import SubmitButton from "./SubmitButton"
import SubmitButton from "../form-comps/SubmitButton"

export default class RoomInvitationForm extends Form {
room: Room | null = null
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { Room } from "matrix-js-sdk"
import Form from "./Form"
import FormTextInput from "./FormTextInput"
import { matrix } from "../matrix"
import SubmitButton from "./SubmitButton"
import FormTextInput from "../form-comps/FormTextInput"
import { matrix } from "../../matrix"
import SubmitButton from "../form-comps/SubmitButton"

export default class RoomInviteForm extends Form {
room: Room | null = null
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import PostAuthor from "./PostAuthor"
import PostContent from "./PostContent"
import View from "./View"
import ChatInput from "./ChatInput"
import EventList from "./EventList"
import TagList from "./TagList"
import PostAuthor from "../PostAuthor"
import PostContent from "../PostContent"
import View from "../views/View"
import ChatInput from "../ChatInput"
import EventList from "../EventList"
import TagList from "../TagList"

export default class PostView extends View<[string]> {
private currentForumId?: string
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import View from "./View"
import ChatInput from "./ChatInput"
import EventList from "./EventList"
import View from "../views//View"
import ChatInput from "../ChatInput"
import EventList from "../EventList"
import { MatrixEvent, Room, RoomEvent } from "matrix-js-sdk"
import { matrix } from "../matrix"
import MemberList from "./MemberList"
import { parseEventContent } from "../events"
import { matrix } from "../../matrix"
import MemberList from "../MemberList"
import { parseEventContent } from "../../events"

export default class RoomView extends View {
private currentRoom?: Room
Expand Down
4 changes: 2 additions & 2 deletions client/src/comps/View.ts → client/src/comps/views/View.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import Component from "./Component"
import ViewHead from "./ViewHead"
import Component from "../Component"
import ViewHead from "../views/ViewHead"

export default abstract class View<
ResetArgs extends Array<unknown> = Array<unknown>,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { twemojiParse } from "../md"
import Component from "./Component"
import { twemojiParse } from "../../md"
import Component from "../Component"

export default class ViewHead extends Component {
titleElement: HTMLSpanElement
Expand Down
10 changes: 4 additions & 6 deletions client/src/main.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
import "../style.css"
import "../md.css"
import "highlight.js/styles/github-dark.min.css"
import App from "./comps/App"
import { User } from "matrix-js-sdk"
import Login from "./comps/Login"
import RoomView from "./comps/RoomView"
import RoomCreationForm from "./comps/RoomCreationForm"
import RoomInvitationForm from "./comps/RoomInvitationForm"
import RoomInviteForm from "./comps/RoomInviteForm"
import RoomView from "./comps/views/RoomView"
import RoomCreationForm from "./comps/forms/RoomCreationForm"
import RoomInvitationForm from "./comps/forms/RoomInvitationForm"
import RoomInviteForm from "./comps/forms/RoomInviteForm"

export let app: App
export let clientUser: User
Expand Down
13 changes: 2 additions & 11 deletions client/vite.config.js
Original file line number Diff line number Diff line change
@@ -1,21 +1,13 @@
import { defineConfig } from "vite"
import { viteStaticCopy } from "vite-plugin-static-copy"
import YSON from "@j0code/yson"

const dev_config = await YSON.load("./dev_config.yson").catch(() => ({
vite: {
port: undefined,
host: undefined,
},
}))

// https://vitejs.dev/config/
/** @type {import('vite').UserConfig} */
export default defineConfig({
envDir: "../",
server: {
host: "0.0.0.0",
port: dev_config.vite?.port,
port: 5173,
proxy: {
"/api": {
target: "http://localhost:3001",
Expand All @@ -26,9 +18,8 @@ export default defineConfig({
},
hmr: {
protocol: "ws",
// path: "/.proxy/"
},
allowedHosts: [dev_config.vite?.host].filter(Boolean),
allowedHosts: [],
strictPort: true,
},
plugins: [
Expand Down
1 change: 0 additions & 1 deletion example.env

This file was deleted.