From 6262ce53aa89ba5b12da9b709426980d9552ed8f Mon Sep 17 00:00:00 2001 From: metacryst Date: Sun, 1 Feb 2026 16:11:11 -0600 Subject: [PATCH] establishing ws connection, starting on messages section --- src/Home.js | 10 +++++----- src/_/code/styles.css | 4 ++++ src/_/code/ws/Connection.js | 4 ++-- src/_/code/ws/Socket.js | 1 + src/_/icons/columnwhite.png | Bin 0 -> 2966 bytes src/_/icons/columnwhite.svg | 12 ++++++------ src/apps/Forum/Forum.js | 20 +++++++++++++------- src/apps/Forum/ForumPanel.js | 4 ++-- src/index.js | 5 +++-- vite.config.ts | 5 +++++ 10 files changed, 41 insertions(+), 24 deletions(-) create mode 100644 src/_/icons/columnwhite.png diff --git a/src/Home.js b/src/Home.js index d1cade4..587857e 100644 --- a/src/Home.js +++ b/src/Home.js @@ -3,7 +3,7 @@ import "./components/AppMenu.js" import "./apps/Forum/Forum.js" import "./apps/Messages/Messages.js" import "./apps/Jobs/Jobs.js" - + class Home extends Shadow { render() { @@ -11,16 +11,16 @@ class Home extends Shadow { Sidebar() ZStack(() => { - switch(window.location.pathname) { - case "/": + switch(global.currentApp) { + case "Dashboard": Forum() break; - case "/messages": + case "Messages": Messages() break; - case "/jobs": + case "Jobs": Jobs() break; } diff --git a/src/_/code/styles.css b/src/_/code/styles.css index 7ca742d..6f734b8 100644 --- a/src/_/code/styles.css +++ b/src/_/code/styles.css @@ -11,6 +11,10 @@ } } +input::placeholder { + font-family: Arial; + } + html, body { padding: 0; diff --git a/src/_/code/ws/Connection.js b/src/_/code/ws/Connection.js index 9119a35..51057e2 100644 --- a/src/_/code/ws/Connection.js +++ b/src/_/code/ws/Connection.js @@ -10,8 +10,8 @@ class Connection { init = async () => { return new Promise((resolve, reject) => { const url = window.location.hostname.includes("local") - ? "ws://" + window.location.host - : "wss://" + window.location.hostname + window.location.pathname; + ? "ws://" + window.location.host + "/ws" + : "wss://" + window.location.hostname + window.location.pathname + "/ws"; this.ws = new WebSocket(url); diff --git a/src/_/code/ws/Socket.js b/src/_/code/ws/Socket.js index 55c249c..debb7b9 100644 --- a/src/_/code/ws/Socket.js +++ b/src/_/code/ws/Socket.js @@ -11,6 +11,7 @@ export default class Socket { } async init() { + console.log("initting") await this.connection.init() } diff --git a/src/_/icons/columnwhite.png b/src/_/icons/columnwhite.png new file mode 100644 index 0000000000000000000000000000000000000000..9e1ff13c6b5ecca6fb705642ed1e7cba1e3fcf8a GIT binary patch literal 2966 zcmV;H3u*L;P)005u}1^@s6i_d2*00009a7bBm000XU z000XU0RWnu7ytkO0drDELIAGL9O(c600d`2O+f$vv5yP%l~nDv9Iv#Br6f%RAZ0~TgWo6+ApgIGpPOQnAn-?30VuGE0B{Y{&lMw(Egj^a_HeFzr?hXn$_4P)#}aXyphQpZwB1C$f~WuhP@ z4S-U7i@f3e(D&j5?G_7Ysais)qM({d{r^AnjMW}-@);}M);*Yai{Dg1ce@X+uzI(rV z|K^d(=ox`EhBd@|#43B}+bw&wfVs<6>IntMM1Al&OIB*vrwF|XFkJD0D|8cK$3C2p z2Oz$vm@7_RnAwR|-|FZ<#06;P_8`6i=;hngHhpsX6?vdSfNs3AVt!4)KRrWQJy3kC zjmLt7sSsfQpxn4#!c@xz;#wcn#^ZTwSA0&hXBBh7XRddj0R7Pz;f}ORxg_U?^UfPGqm6Ec}f zkEsha&n@GE*`!uEmUPk6FCV)5Af4TPu&*uSJ#BFhDP&q#hy4qBdgNdH^YwePPj?<$ zbNejy0L4T)XrXFmWcEk^Vw3L6~6WNBRx`-&+-+F6Lm)`O_w*q z%d?Dbp1w6xFIs&2WTvHp?{Hl4sq+OdD@(n5^HzCV1*y*D&3@8W)BT)eJ^g2)(&Wz0 zuI&%`JS!(J&N`$Qm~|cB{@Y7(i~|d(Y)6*W-|41%`?u6~ZVfHd1m=9svI81|D)BXV zeC>Lz*1Hg&$uRQVsd!^a0?16mWb{ML8Pw^z<$s#18>i2U|MI2t^N}M9O-*#A?(vz9 z%0|2rKYQ`x=M3N+_?ReSqNu#^;D-vQ&fb3ul&wt5h>QnO1!WIk8u3bwh zB5dwX{qMi>$rmLgN{JbiH37PsLMjWQ#ku)marIE%Awr7-%h2(k?eOYPva3s_WZ5gp zN$}P&U{eQu7DT7ykS6zDWo(@X6I&y7O-VWRXx{%+66J4A5PgY2YXPoX$Z}b@wt{`F z^O$oTYzSmW4|F}HBqNx_0Or-M^hnga zc+vWYS^HeJLF2{EleO|To7!@)ms_dB+1&?ED$gNzc*}-47oo9IP0pv*EK6gSe2YLk zhRkR>+XS?R_9UX~+9uuKWR{ZUxtmD*JeV#2lp;EWG!F-yL9Pin8}%V4Vy z$de~fB=m(fxx%EFW#nFjW|I@qfl2o#L2Pa6QGmtmjYyI^J7yD6rx6z0uYACt-nWmo zdE?RfS&d3qbwHl8TW+m3Ppno@i{x3?x-02WDQD{Qs+dobK|`JVt@uPwdTgsqjaxF7 zq3rs4{q!xx$uWPpey?l;l1aQ!2|w40ol`ebE)rf-YK7bFwn5Cz8ljL`$1Q}os64rF z7cX_ZcUV_>*}FHdYp)kD+7&mw$u-@sjB<5qY;R;8 z@-6n#_!Xer@L`SIdfq(!S``~~+#+1|+S`vngtjUijR5nYe4uo7kC<(mUrNVsKKokK zF1WCGzbv%7HB&7M3Iq=g*l`3K9?=Q#Jz<7hzO2#7y#T3&L;E)*xz{<1)2;AV% zlZ;z{-1uN51XA`2Ptvx8BNiZ+R8-78rJYN4$UN&Q$Mfy=n9k^BcJXbdIze~h zHmBWOuyehr^~*z(lc1Xbg*%-({|A)Ow||C`$167onUDn=;!&+h4Ak%YWfzgO1#$wM zkOgb}sKQEhQswzYTo<(bdYFdkMazbYrc=5uX!-RZz+Ozi%nMs>2vCZ##K21SLFxq< zR7FPAs-rQEvJX-(z#jK^FBibk7+e3H#JlhV_f}2? z2+tfk;h6}F05Qud#^6;Oo{894KNPMVW2Fu=qJLMNqkB}^=(`PnZf)%}=40!Lv+PK% zlBZO6u?Fb-E!PfiZXT9q{B*oYq0BwoX4!VwZ)qe5l?0MLYCttD)A1*jYmP_65*gEL&+2><|G0;>Z600000 z005CNx&d4)59F?#lOBU(0wMy?NMP!q4*&qV0qYS1Xr)0wwF4l;?;gW(eZli?X8-^I M07*qoM6N<$f`USh!T - - - - - + + + + + + diff --git a/src/apps/Forum/Forum.js b/src/apps/Forum/Forum.js index a507efc..68fb88d 100644 --- a/src/apps/Forum/Forum.js +++ b/src/apps/Forum/Forum.js @@ -11,6 +11,10 @@ css(` color: var(--accent); } + input::placeholder { + font-family: Arial; + } + input[type="checkbox"] { appearance: none; /* remove default style */ -webkit-appearance: none; @@ -34,13 +38,15 @@ class Forum extends Shadow { ForumPanel() - input("Message Hyperia", "98%") - .paddingVertical(1, em) - .paddingLeft(2, pct) + input("Message", "70%") + .paddingVertical(0.75, em) + .paddingLeft(2, em) .color("var(--accent)") - .background("var(--darkbrown)") - .marginBottom(6, em) - .border("none") + .background("#fff1dd") + .marginBottom(5.5, em) + .border("1px solid black") + .borderRadius(100, px) + .fontFamily("Arial") .fontSize(1, em) .onKeyDown(function (e) { if (e.key === "Enter") { @@ -55,7 +61,7 @@ class Forum extends Shadow { .horizontalAlign("center") .verticalAlign("end") }) - .onAppear(() => document.body.style.backgroundColor = "var(--darkbrown)") + .backgroundColor("var(--main)") .width(100, pct) .height(100, pct) } diff --git a/src/apps/Forum/ForumPanel.js b/src/apps/Forum/ForumPanel.js index 9dfdde6..ea3de03 100644 --- a/src/apps/Forum/ForumPanel.js +++ b/src/apps/Forum/ForumPanel.js @@ -52,12 +52,12 @@ class ForumPanel extends Shadow { .paddingTop(5, em) .paddingBottom(2, em) .paddingLeft(4, pct) - .backgroundColor("var(--darkbrown)") + .backgroundColor("var(--main)") .onAppear(async () => { requestAnimationFrame(() => { this.scrollTop = this.scrollHeight }); - let res = await Socket.send({app: "FORUM", operation: "GET", msg: {forum: "HY", number: 100}}) + let res = await global.Socket.send({app: "FORUM", operation: "GET", msg: {forum: "HY", number: 100}}) if(!res) console.error("failed to get messages") if(res.msg.length > 0 && this.messages.length === 0) { this.messages = res.msg diff --git a/src/index.js b/src/index.js index cfafaae..873d9f8 100644 --- a/src/index.js +++ b/src/index.js @@ -70,7 +70,7 @@ let Global = class { window.dispatchEvent(event) } - document.title = (this.currentNetwork === this.profile) ? "Parchment" : `${this.currentNetwork.abbreviation} | Parchment` + document.title = (this.currentNetwork === this.profile) ? "Forum" : `${this.currentNetwork.abbreviation} | Forum` } setCurrentNetworkAndApp() { @@ -140,8 +140,9 @@ let Global = class { this.getProfile().then(async (status) => { + await this.Socket.init() + if(status !== 401) { - console.log("it's legit") await this.onNavigate() Home() } else { diff --git a/vite.config.ts b/vite.config.ts index 7889a87..6019576 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -9,6 +9,11 @@ export default defineConfig({ }, server: { proxy: { + "/ws": { + target: "http://localhost:10002", + changeOrigin: true, + ws: true + }, "/login": { target: "http://localhost:10002", changeOrigin: true