Simon Ser
6b04cb1417
Add support for bot mode
...
References: https://ircv3.net/specs/extensions/bot-mode
2022-06-08 15:04:27 +02:00
Simon Ser
8507500d74
components/scroll-manager: don't crash when Buffer is empty
2022-04-22 12:32:54 +02:00
Simon Ser
aaef4e1629
store: use lower-case for buffer keys
2022-04-22 12:04:11 +02:00
Simon Ser
cdd2da90a9
Update webpage title when switching buffer
2022-04-22 11:49:23 +02:00
Simon Ser
4a981997f0
Handle CHATHISTORY messages when reaching end of batch
...
Closes: https://todo.sr.ht/~emersion/gamja/115
2022-04-22 11:25:41 +02:00
Simon Ser
f45b51d981
commands: fix TypeError in kickban
...
The ban variable was undefined.
2022-04-14 10:53:35 +02:00
Simon Ser
73db1a888e
Upgrade dependencies
2022-02-26 10:47:55 +01:00
Simon Ser
3dc98ec797
Convert remaining simple quotes to double quotes
2022-02-26 09:54:31 +01:00
Simon Ser
e37d5f363b
lib/irc: fix bound check in isHighlight
...
Doesn't seem like this was causing any issues, but let's fix the
logic regardless.
2022-02-25 11:38:00 +01:00
Simon Ser
221b1b6356
lib/irc: remove unnecessary non-breaking-space case
...
Handled by the default case already.
2022-02-25 11:37:18 +01:00
Simon Ser
86b1030b7a
lib/irc: add missing num range to alphaNum regexp
2022-02-25 11:36:43 +01:00
Simon Ser
08578c9a21
components/app: fix missing semicolons
2022-02-21 15:26:12 +01:00
Simon Ser
26cc073f41
store: save buffer state when user navigates away
...
Avoids loosing some state on page unload.
2022-02-18 18:22:00 +01:00
Simon Ser
9e703698ca
lib/irc: drop outdated CapRegistry TODO
2022-02-16 15:46:22 +01:00
Simon Ser
37d7f4a1c5
Refactor backlog fetching into function
2022-02-13 15:34:11 +01:00
Simon Ser
962c05c066
Prevent hole in history when reconnecting
2022-02-13 15:26:04 +01:00
Simon Ser
f2c9fd1d7f
Update stored unread status on READ message
2022-02-12 10:24:56 +01:00
Simon Ser
a3eec9a351
store: add note about comparison in Buffer.put
2022-02-12 10:24:34 +01:00
Simon Ser
2ac7be6218
state: add isReceiptBefore
2022-02-12 10:21:11 +01:00
Simon Ser
5f8cd976e6
keybindings: fix error on alt+h
...
Fixes the following JS error:
TypeError: e.setReceipt is not a function
2022-02-12 10:05:58 +01:00
Simon Ser
fbc42b6dab
components/app: move lastErrorID declaration down
...
Move it right before App, rather than drown in-between unrelated
functions.
2022-02-11 21:17:35 +01:00
Simon Ser
dc398baa3b
components/app: stop updating prevReadReceipt on READ message
...
prevReadReceipt is used for the unread marker. Let's not update it
before the user switches the current buffer.
2022-02-11 21:09:11 +01:00
Simon Ser
6a9a8e88f1
store: fix no-op read receipt update detection
...
If the old and new times are equal, the update is a no-op.
2022-02-11 21:07:49 +01:00
Simon Ser
f47d93af8a
Don't fetch backlog before read receipt
2022-02-11 21:02:34 +01:00
Simon Ser
fce0936c20
components/app: introduce getReceipt
2022-02-11 20:59:31 +01:00
Simon Ser
0636544c40
components/app: close notifications when receiving READ message
2022-02-11 19:32:30 +01:00
Simon Ser
7c6f334dbf
components/app: close notifications when switching buffer
2022-02-11 19:32:30 +01:00
Simon Ser
7ddd783150
components/app: make showNotification return null on error
...
We'll do more involved stuff with notifications soon, and don't
want to deal with buggy notification objects.
2022-02-11 19:32:30 +01:00
Simon Ser
bb42ff6a07
components/app: include server ID in notification tags
2022-02-11 19:32:30 +01:00
Simon Ser
db0ef39c6b
Add support for soju.im/read
2022-02-11 19:32:26 +01:00
Simon Ser
77f54080e7
Make delivery receipts follow read receipts
...
If a message has been read, it's been delivered.
Fixes #23 at least partially.
References: https://todo.sr.ht/~emersion/gamja/23
2022-02-11 19:29:55 +01:00
Simon Ser
065b3f21fc
Refactor receipts
...
They are now saved in the buffer store to allow for proper server
separation.
2022-02-11 19:29:55 +01:00
Simon Ser
d2bcea8c86
Introduce isMessageBeforeReceipt
2022-02-11 16:37:58 +01:00
Simon Ser
3d81466788
components/app: introduce receiptFromMessage
2022-02-11 16:30:46 +01:00
Simon Ser
f2923452c1
store: debounce buffer store saves
2022-02-11 16:24:32 +01:00
Simon Ser
39c36e7a7b
Fix unread marker going back
...
Receipts must never go back in time.
Fixes: c428e504fe
("Don't show unread marker for outgoing messages")
2022-02-11 16:06:06 +01:00
Simon Ser
e91b044134
components/app: make switchBuffer state changes atomic
...
Instead of calling App.setBufferState inside the App.setState
callback invoked when the update is done, call State.updateBuffer.
2022-02-11 15:48:56 +01:00
delthas
4cb3abfa72
components/connect-form: make the server password field password-typed
2022-02-11 12:58:26 +01:00
Simon Ser
0063a5a372
Set min node version in package.json
...
v14.13.0 is required for CommonJS named imports to work properly.
2022-02-10 14:46:42 +01:00
Дамјан Георгиевски
1142145c6d
fix ping after reconnect
...
client.setPingInterval was only called once in app.connect(),
but client.disconnect() disables it, and the ping timer is never again set,
even though the client can reconnect.
the change passes the ping time as a parameter to the client, and the
client calls setPingInterval() after a successful WS open event.
2022-02-04 15:54:23 +01:00
Simon Ser
f465e24adf
components/buffer-header: fix dead space above description
2022-02-04 14:38:28 +01:00
Simon Ser
7f7a7c1aac
components/buffer-list: remove pointless temporary variable
2022-02-04 14:32:29 +01:00
Simon Ser
e1bbe34ff2
state: add bouncerNetworks helpers
2022-02-04 14:22:50 +01:00
delthas
fab42ba2ee
commands: add password param to /join
2022-02-02 20:45:18 +01:00
Simon Ser
9f93e200ed
commands: add comment param to /kick usage
2022-01-31 18:30:48 +01:00
Simon Ser
bd48f36ade
lib/irc: add missing Isupport.chanModes
...
It was called by forEachChannelModeUpdate, but wasn't implemented.
2022-01-31 18:24:34 +01:00
xse
393fd93253
components/buffer: use browser locale for date-separator
2022-01-14 23:26:05 +01:00
Simon Ser
a0f8f1f52f
components/buffer: fix INVITE link
...
It was throwing a TypeError.
2022-01-10 10:32:37 +01:00
Simon Ser
5d6de11a4c
commands: simplify /who usage string
...
As per https://modern.ircdocs.horse/#who-message
2022-01-09 19:30:01 +01:00
Simon Ser
6692ed0035
components/help: use bold for command name only
2022-01-09 19:28:23 +01:00