aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Read nickname from RPL_WELCOMESimon Ser2021-12-061-0/+1
| | | | References: https://github.com/ircdocs/modern-irc/pull/146
* Add Client.join, show join errors in popupSimon Ser2021-12-043-2/+36
|
* lib/client: add generic error handling to roundtrip()Simon Ser2021-12-042-40/+50
|
* lib/client: introduce IRCErrorSimon Ser2021-12-041-5/+19
|
* Update channel join status when kickedSimon Ser2021-12-041-1/+4
|
* components/buffer-header: fix missing "join" button for parted channelSimon Ser2021-12-031-4/+4
|
* Disable debug logs in productionSimon Ser2021-12-013-2/+23
| | | | | | | | | | | console.debug logs cause some performance issues because the browser is forced to save the logged objects just in case the user opens the debugging tools. They can be force-enabled back by adding ?debug=1 to the URL. Only console.debug is disabled, console.log and other levels are a lot less verbose and still enabled by default.
* Add usage message to development serverSimon Ser2021-12-012-3/+22
|
* Add custom developement serverSimon Ser2021-12-014-336/+217
| | | | | This implements a tiny WebSocket proxy useful for development purposes.
* Mark auth dialog as loadingSimon Ser2021-11-301-15/+23
|
* Mark register/verify dialogs as loadingSimon Ser2021-11-302-5/+36
|
* Show "Manage network" even if upstream is disconnectedSimon Ser2021-11-301-0/+2
| | | | Fixes: 86853eb2e552 ("components/buffer-header: hide action buttons when disconnected")
* Add link to verify account next to VERIFICATION_REQUIRED messageSimon Ser2021-11-302-3/+20
|
* Add support for draft/account-registrationSimon Ser2021-11-306-13/+278
| | | | A new UI to register and verify accounts is added.
* Improve noscript UI appearanceDrew DeVault2021-11-292-1/+8
|
* Linkify error messagesSimon Ser2021-11-292-2/+3
| | | | | Sometimes servers will put links and channels in their error messages. Make it easy for users to click them.
* Clear channel joined field when disconnectedSimon Ser2021-11-291-1/+16
|
* components/buffer-header: hide action buttons when disconnectedSimon Ser2021-11-291-27/+45
|
* components/member-list: re-render on State.users updateSimon Ser2021-11-281-2/+4
|
* Dim away users in member listSimon Ser2021-11-282-1/+10
| | | | References: https://todo.sr.ht/~emersion/gamja/13
* Add embedded Content-Security-PolicySimon Ser2021-11-271-0/+1
| | | | | | | | | | Add a baseline CSP applicable to all gamja deployments. Resources can only be loaded from the current host, frames and objects are disallowed, and scripts are allowed to connect to any host (to allow cross-site WebSocket connections). If the server returns a different CSP via an HTTP header, the effective CSP will be the intersection.
* readme: add nginx file server directiveSimon Ser2021-11-271-0/+4
|
* components/connect-form: replace auto-join text field with checkboxSimon Ser2021-11-271-28/+21
| | | | | | | The intent of the auto-join field is to ask the user whether they really want to join the pre-filled channel. Users rarely want to customize this field, they can just manually click "Join" after connecting if they want to join another channel.
* Ignore RPL_AWAYSimon Ser2021-11-232-0/+2
|
* Add post-connect UI to login via SASLSimon Ser2021-11-214-3/+120
| | | | | | | | If the server supports SASL and if we aren't logged in with any account, add a UI to authenticate via SASL. This allows users to login anonymously then login via SASL. This will also ease the draft/account-registration implementation.
* lib/client: make authenticate() return a promiseSimon Ser2021-11-211-19/+32
| | | | This lets the caller handle the success/failure.
* lib/client: send BOUNCER BIND and CAP END immediatelySimon Ser2021-11-211-27/+24
| | | | Don't wait for auth to finish. This reduces the number of roundtrips.
* lib/client: catch handleMessage errorsSimon Ser2021-11-211-1/+9
|
* lib/client: always request sasl cap when availableSimon Ser2021-11-211-10/+9
| | | | This will allow us to issue post-registration SASL commands.
* lib/client: don't disconnect on SASL error if registeredSimon Ser2021-11-211-1/+3
| | | | | This will let users try multiple auth attempts when we'll implement post-registration auth.
* lib/client: remove one roundtrip during SASL authSimon Ser2021-11-211-26/+29
| | | | | Instead of waiting for the server's empty challenge, send two AUTHENTICATE commands in a row.
* state: add account to serverSimon Ser2021-11-211-0/+5
|
* lib/client: don't error out if SASL isn't available on RPL_WELCOMESimon Ser2021-11-191-1/+3
| | | | | Some servers (soju) might remove the sasl cap on connection registration.
* commands: Add LIST commandCara Salter2021-11-181-0/+8
| | | | Signed-off-by: Cara Salter <cara@devcara.com>
* Avoid inline script in index.htmlSimon Ser2021-11-172-6/+5
| | | | This helps Parcel generate a proper standalone JS bundle.
* ci: fix deploy branch check again, exclude config.jsonSimon Ser2021-11-171-2/+3
|
* ci: fix deploy branch checkSimon Ser2021-11-171-1/+1
|
* ci: add deploy taskSimon Ser2021-11-171-0/+8
|
* ci: add .build.ymlSimon Ser2021-11-171-0/+10
|
* readme: add link to IRC channelSimon Ser2021-11-171-1/+2
|
* Auto-dismiss client error on reconnectSimon Ser2021-11-171-11/+31
| | | | References: https://todo.sr.ht/~emersion/gamja/74
* Properly handle port in irc:// URLsSimon Ser2021-11-161-2/+25
|
* Reword ProtocolHandlerNagger messageSimon Ser2021-11-161-2/+4
|
* Add UI to enable protocol handlerSimon Ser2021-11-163-0/+46
|
* lib/irc: fix handling for prefixes without hostSimon Ser2021-11-151-16/+16
| | | | name!user is a valid prefix.
* Store WHO list in RPL_ENDOFWHOSimon Ser2021-11-102-6/+8
| | | | | This allows the state-tracker to figure out whether a WHO query returned no result.
* Only allow one WHO command at a timeSimon Ser2021-11-101-22/+31
| | | | Closes: https://todo.sr.ht/~emersion/gamja/120
* Don't stop fetching backlog on errorSimon Ser2021-11-102-3/+5
| | | | | | | Some servers allow fetching history from some targets but not others. Don't completely stop fetching chat history on error. The root cause was a variable shadowing in Client.fetchBatch.
* Add support for draft/extended-monitorSimon Ser2021-11-091-0/+1
| | | | References: https://github.com/ircv3/ircv3-specifications/pull/466
* Always insert non-chathistory messages at the endSimon Ser2021-11-091-1/+1
|