Ken-Håvard Lieng
|
18651c1a10
|
Fix race condition with NICK and QUIT when multiple dispatch users are in the same channel
|
2017-04-11 03:49:52 +02:00 |
|
Ken-Håvard Lieng
|
3393b1b706
|
Update .eslintrc
|
2017-04-09 23:49:37 +02:00 |
|
Ken-Håvard Lieng
|
f7c8203ed1
|
Upgrade client dependencies (React 15.5)
|
2017-04-09 23:28:55 +02:00 |
|
Ken-Håvard Lieng
|
961c0415a0
|
Handle nick collisions by right-padding with _
|
2017-04-06 23:26:58 +02:00 |
|
Ken-Håvard Lieng
|
50dc0ef64f
|
Fix handling of PART messages with no reason
|
2017-04-04 22:57:01 +02:00 |
|
Ken-Håvard Lieng
|
52f929ec45
|
Strip last character from ACTION messages
|
2017-03-30 05:13:50 +02:00 |
|
Ken-Håvard Lieng
|
007dd3fe63
|
Use list key provided by react-virtualized in UserList
|
2017-03-30 04:53:54 +02:00 |
|
Ken-Håvard Lieng
|
6a9942a655
|
Set scrolldown flag on tab changes in willUpdate instead of receiveProps
|
2017-03-30 04:37:55 +02:00 |
|
Ken-Håvard Lieng
|
80efb750f9
|
Rename util.scrollBarWidth()
|
2017-03-30 04:18:25 +02:00 |
|
Ken-Håvard Lieng
|
9d5707dd3c
|
Use forceUpdateGrid() in UserList
|
2017-03-30 04:12:30 +02:00 |
|
Ken-Håvard Lieng
|
e19280c2c7
|
Fix wrapWidth for channels on small screens
|
2017-03-29 23:45:09 +02:00 |
|
Ken-Håvard Lieng
|
bb8a4d180e
|
Prevent unnecessary wrapWidth updates
|
2017-03-28 23:55:50 +02:00 |
|
Ken-Håvard Lieng
|
3b0734bb4d
|
Update webpack.NoErrorsPlugin name
|
2017-03-28 23:18:55 +02:00 |
|
Ken-Håvard Lieng
|
a4bbf8364a
|
Upgrade reselect to 3.0.0 and react-virtualized to 9.4.0
|
2017-03-27 23:35:59 +02:00 |
|
Ken-Håvard Lieng
|
346ba3fdb3
|
Fix SearchResult component name
|
2017-03-24 21:18:02 +01:00 |
|
Ken-Håvard Lieng
|
eca5761098
|
Linkify search results properly
|
2017-03-24 21:14:45 +01:00 |
|
Ken-Håvard Lieng
|
f8d57f1b6d
|
Upgrade react-virtualized to 9.3.0
|
2017-03-23 20:38:27 +01:00 |
|
Ken-Håvard Lieng
|
35514abc27
|
Remove babel-plugin-transform-decorators-legacy
|
2017-02-17 02:00:00 +01:00 |
|
Ken-Håvard Lieng
|
e6892ccd2d
|
Use React.PureComponent instead of pure-render-decorator
|
2017-02-17 01:46:39 +01:00 |
|
Ken-Håvard Lieng
|
531792b14a
|
Move ref callbacks into class bound methods
|
2017-02-16 22:56:32 +01:00 |
|
Ken-Håvard Lieng
|
77b53bfc5e
|
Update client dependencies
|
2017-02-16 03:55:50 +01:00 |
|
Ken-Håvard Lieng
|
6876a5129a
|
Add yarn lockfile
|
2016-10-12 21:19:00 +02:00 |
|
Ken-Håvard Lieng
|
493f49a508
|
Update client dependencies
|
2016-04-18 01:11:25 +02:00 |
|
Ken-Håvard Lieng
|
8b6236446f
|
Remove html task from gulpfile
|
2016-03-16 23:25:25 +01:00 |
|
Ken-Håvard Lieng
|
240392dcae
|
Use egon templating for the index page
|
2016-03-16 23:23:16 +01:00 |
|
Ken-Håvard Lieng
|
c6d2a8a429
|
Update react to 15.0 rc1
|
2016-03-14 23:45:46 +01:00 |
|
Ken-Håvard Lieng
|
81b635a872
|
Update client dependencies
|
2016-03-14 23:22:24 +01:00 |
|
Ken-Håvard Lieng
|
693e4c27ac
|
Remove .js extension
|
2016-02-17 01:54:36 +01:00 |
|
Ken-Håvard Lieng
|
47ebd9c84c
|
Use a fork of autolinker with react support to get rid off dangerouslySetInnerHTML
|
2016-02-17 01:49:27 +01:00 |
|
Ken-Håvard Lieng
|
072daa64f2
|
Improve message rendering
|
2016-02-16 22:43:25 +01:00 |
|
Ken-Håvard Lieng
|
ede8e19722
|
Enable react inline and constant babel optimizations
|
2016-02-07 00:03:11 +01:00 |
|
Ken-Håvard Lieng
|
23e75b8f40
|
Render UserList with react-virtualized
|
2016-02-06 01:54:21 +01:00 |
|
Ken-Håvard Lieng
|
7108fa572c
|
Update client dependencies
|
2016-02-04 03:35:50 +01:00 |
|
Ken-Håvard Lieng
|
90b74ee022
|
Implement Content-Security-Policy
|
2016-02-03 19:44:44 +01:00 |
|
Ken-Håvard Lieng
|
e5bc38aafc
|
Use local fonts
|
2016-02-03 02:22:45 +01:00 |
|
Ken-Håvard Lieng
|
e2fbac7f38
|
Use only single-method imports from lodash
|
2016-01-27 21:41:24 +01:00 |
|
Ken-Håvard Lieng
|
b50a4a1068
|
Add /raw command
|
2016-01-27 20:48:47 +01:00 |
|
Ken-Håvard Lieng
|
2e8418516a
|
Dont send default server password to the client
|
2016-01-27 18:08:20 +01:00 |
|
Ken-Håvard Lieng
|
22d8b8b363
|
Embed servers, channels and users in index.html
|
2016-01-26 22:10:44 +01:00 |
|
Ken-Håvard Lieng
|
6608bc545a
|
Make command output work in server tabs
|
2016-01-25 23:42:11 +01:00 |
|
Ken-Håvard Lieng
|
2ccca3a778
|
Implement client connect form defaults
|
2016-01-25 01:01:37 +01:00 |
|
Ken-Håvard Lieng
|
a68f5621bc
|
Make search results look like messages
|
2016-01-23 00:41:35 +01:00 |
|
Ken-Håvard Lieng
|
bd6c0d26eb
|
Switch to Roboto Mono
|
2016-01-22 20:08:16 +01:00 |
|
Ken-Håvard Lieng
|
82e2343d5b
|
Add SOCKET_SEARCH action constant
|
2016-01-18 03:21:58 +01:00 |
|
Ken-Håvard Lieng
|
76f99c8332
|
Use MessagePack on disk
|
2016-01-17 23:33:52 +01:00 |
|
Ken-Håvard Lieng
|
d023f63a7c
|
Update client dependencies
|
2016-01-15 20:56:03 +01:00 |
|
Ken-Håvard Lieng
|
fb54d4966c
|
Store auth info in a JWT token in a cookie
|
2016-01-15 02:27:30 +01:00 |
|
Ken-Håvard Lieng
|
13a3d96b44
|
Improve port handling
|
2016-01-14 05:56:53 +01:00 |
|
Ken-Håvard Lieng
|
f6d13675c3
|
Strip port from address everywhere on the client
|
2016-01-14 04:01:51 +01:00 |
|
Ken-Håvard Lieng
|
d2284551de
|
Properly check if a channel is selected in socket.on('join')
|
2016-01-13 20:22:41 +01:00 |
|
Ken-Håvard Lieng
|
f429a528ba
|
Add IRC connection status indicator
|
2016-01-13 18:53:54 +01:00 |
|
Ken-Håvard Lieng
|
67b83fa3d6
|
Make userlist responsive
|
2016-01-11 23:31:06 +01:00 |
|
Ken-Håvard Lieng
|
937560e859
|
Add support for client certificates
|
2016-01-11 21:04:57 +01:00 |
|
Ken-Håvard Lieng
|
d7c5d0f9cd
|
Upgrade babel to 6.4.0, fail gulp builds on webpack errors
|
2016-01-07 00:33:19 +01:00 |
|
Ken-Håvard Lieng
|
4b70b9968b
|
Use proper autolinker params in ChatTitle
|
2016-01-05 19:40:39 +01:00 |
|
Ken-Håvard Lieng
|
24aa119377
|
Remove pure decorator from the Root container
|
2016-01-05 19:33:45 +01:00 |
|
Ken-Håvard Lieng
|
7c72cac71f
|
Update airbnb eslint config to 3.0.0
|
2016-01-05 19:29:22 +01:00 |
|
Ken-Håvard Lieng
|
22892a4073
|
Hide menu when selecting tab
|
2015-12-30 22:32:14 +01:00 |
|
Ken-Håvard Lieng
|
de1a2dd343
|
Support websocket over ssl, pass uuid in url
|
2015-12-29 22:23:07 +01:00 |
|
Ken-Håvard Lieng
|
e389454535
|
Switch to redux and webpack
|
2015-12-29 00:34:32 +01:00 |
|
Ken-Håvard Lieng
|
d75407e221
|
Pin history
|
2015-12-12 00:51:04 +01:00 |
|
Ken-Håvard Lieng
|
0259787fe9
|
Update all client dependencies
|
2015-12-12 00:43:23 +01:00 |
|
Ken-Håvard Lieng
|
51e04c9d0f
|
Update eslint
|
2015-12-11 05:13:44 +01:00 |
|
Ken-Håvard Lieng
|
114bf8201e
|
Refactor websocket handler
|
2015-06-17 00:46:58 +02:00 |
|
Ken-Håvard Lieng
|
b755a593e2
|
Call trigger in messageStore.addAll()
|
2015-06-12 01:43:35 +02:00 |
|
Ken-Håvard Lieng
|
0fbf721cbb
|
Fix search positioning
|
2015-06-10 01:17:24 +02:00 |
|
Ken-Håvard Lieng
|
2a5f7c3afc
|
Close tablist on all interactions
|
2015-06-10 00:59:41 +02:00 |
|
Ken-Håvard Lieng
|
e51c9522de
|
Add messageActions.addAll()
|
2015-06-10 00:45:28 +02:00 |
|
Ken-Håvard Lieng
|
29c13f4f54
|
Off-canvas tablist
|
2015-06-10 00:24:14 +02:00 |
|
Ken-Håvard Lieng
|
27552a2e9c
|
Cache linted files
|
2015-06-08 01:06:08 +02:00 |
|
Ken-Håvard Lieng
|
fe392a08ff
|
Collapse bindata tasks
|
2015-06-08 00:21:10 +02:00 |
|
Ken-Håvard Lieng
|
d11ad72f03
|
Separate vendor bundle
|
2015-06-08 00:11:03 +02:00 |
|
Ken-Håvard Lieng
|
be695a9881
|
Reconnect websockets
|
2015-06-04 02:06:17 +02:00 |
|
Ken-Håvard Lieng
|
6a1d55c968
|
Set up ESLint, make it happy
|
2015-06-02 00:09:36 +02:00 |
|
Ken-Håvard Lieng
|
61aa5880d3
|
Add config file, handle it with Viper, add a command to open it in an editor
|
2015-05-25 04:00:21 +02:00 |
|
Ken-Håvard Lieng
|
b8a8ba2e08
|
Add channel topic to ChatTitle, improve TabList layout
|
2015-05-23 04:38:43 +02:00 |
|
Ken-Håvard Lieng
|
9b9bef3695
|
Avoid array conversion in UserList
|
2015-05-23 01:58:56 +02:00 |
|
Ken-Håvard Lieng
|
6a6aedc5da
|
Implement getInitialState in stores
|
2015-05-23 00:40:16 +02:00 |
|
Ken-Håvard Lieng
|
6a25c1d6a5
|
Add GetLastMessages, log messages to nested buckets
|
2015-05-21 09:15:57 +02:00 |
|
Ken-Håvard Lieng
|
a6d7403eba
|
Everything is immutable
|
2015-05-20 08:14:44 +02:00 |
|
khlieng
|
ce72ec9c8c
|
Fix alignment in PureMixin
|
2015-05-19 23:18:24 +02:00 |
|
Ken-Håvard Lieng
|
17482ee253
|
Immutable channelStore
|
2015-05-19 06:50:43 +02:00 |
|
khlieng
|
11ea241b60
|
Immutable messages, search and selectedTab
|
2015-05-19 01:17:23 +02:00 |
|
khlieng
|
77c723344c
|
Fix state updating in ChatTitle and UserList
|
2015-05-16 22:25:22 +02:00 |
|
khlieng
|
d4d51778fb
|
Make ChatTitle and UserList render functions pure
|
2015-05-16 21:43:18 +02:00 |
|
khlieng
|
c7faa254c5
|
Strip bindata path
|
2015-05-16 00:33:51 +02:00 |
|
Ken-Håvard Lieng
|
375ed94177
|
Remove unused dependency from package.json
|
2015-05-15 07:46:07 +02:00 |
|
Ken-Håvard Lieng
|
5a535cf53e
|
Update client dependencies, embed only gzipped assets and unzip on the fly if needed
|
2015-05-15 07:32:32 +02:00 |
|
khlieng
|
c4ac9f782c
|
Insert space between timestamp and nick instead of using margin
|
2015-05-15 00:42:09 +02:00 |
|
khlieng
|
0eca6a1823
|
Select the previous tab or redirect to /connect when closing a tab, move some CSS from inline react styles to classes
|
2015-05-14 01:42:25 +02:00 |
|
khlieng
|
92de7cb8ef
|
Concat css
|
2015-05-12 23:50:55 +02:00 |
|
khlieng
|
6b6a1172f9
|
Keep url text intact when linkifying it
|
2015-05-12 22:50:35 +02:00 |
|
khlieng
|
7aae7685c5
|
Add early search prototype on the client, add leave button
|
2015-05-11 03:39:34 +02:00 |
|
khlieng
|
deba58dbff
|
Use replaceState for /connect redirects
|
2015-05-05 00:46:12 +02:00 |
|
khlieng
|
e63c012aad
|
Add cobra, move the server code into its own package
|
2015-05-01 22:59:46 +02:00 |
|
khlieng
|
bb729a5c8e
|
Make gulp run go-bindata
|
2015-04-30 00:45:02 +02:00 |
|
khlieng
|
3365832ce3
|
Add message logging and search server side
|
2015-04-29 23:54:44 +02:00 |
|
khlieng
|
65229f7a9e
|
Update readme, store data in homedir/.name_pending instead the cwd, move client build output back to client/dist
|
2015-04-23 00:44:40 +02:00 |
|
khlieng
|
891f7b2f10
|
Embed static assets with go-bindata
|
2015-04-22 22:58:20 +02:00 |
|
khlieng
|
8a75cdec32
|
Move client build output to bin/assets
|
2015-03-04 18:49:31 +01:00 |
|
khlieng
|
d25311d07f
|
Improve line wrapping perf
|
2015-02-27 16:58:46 +01:00 |
|
khlieng
|
2f1e72876b
|
Handle double hashtag channel names in URLs
|
2015-02-22 09:52:37 +01:00 |
|
khlieng
|
518a530f43
|
Render userlist to a div if theres only one user
|
2015-02-22 09:03:03 +01:00 |
|
khlieng
|
cc743a837a
|
Store selected tab in the URL
|
2015-02-22 08:57:52 +01:00 |
|
khlieng
|
b83efcbb9e
|
Add /help, make /part take an optional channel param
|
2015-02-21 14:11:29 +01:00 |
|
khlieng
|
ccb0149b3d
|
Add /away
|
2015-02-21 13:06:05 +01:00 |
|
khlieng
|
ed9a1c3216
|
Handle characters getting added to the channelname when joining, throw more ES6 at everything
|
2015-02-21 11:40:20 +01:00 |
|
khlieng
|
fca2985d9b
|
Sprinkle some ES6 on it
|
2015-02-21 07:48:25 +01:00 |
|
khlieng
|
518d3eaa07
|
Replace reactify with babelify
|
2015-02-21 07:23:25 +01:00 |
|
khlieng
|
4ae9ffa2bc
|
Add clickable nicks in messages for starting private chats
|
2015-02-21 07:11:38 +01:00 |
|
khlieng
|
14dee89304
|
Make indenting lines after the first work with the new message rendering
|
2015-02-21 06:25:52 +01:00 |
|
khlieng
|
305ee753e3
|
Add keys to MessageBox
|
2015-02-19 01:13:23 +01:00 |
|
khlieng
|
2aeb8c97a3
|
Make styling work with the new message rendering
|
2015-02-18 22:55:08 +01:00 |
|
khlieng
|
9e301843d2
|
Linkify URLs in messages
|
2015-02-17 01:27:02 +01:00 |
|
khlieng
|
b06cfafe94
|
Remove unused css
|
2015-02-16 22:00:31 +01:00 |
|
khlieng
|
d8446d0b90
|
Fontello icon font
|
2015-02-16 21:53:01 +01:00 |
|
khlieng
|
fb77c29fd9
|
Make React Infinite stop throwing when theres only one child
|
2015-02-16 00:02:21 +01:00 |
|
khlieng
|
6e223c172f
|
Initial pass on MessageBox rendered with React Infinite and js line wrapping, fix line wrapping bug, disable browser line wrapping
|
2015-02-15 23:27:00 +01:00 |
|
khlieng
|
3042ed5ec6
|
Add line wrapping functions and switch to monospaced font
|
2015-02-14 23:38:14 +01:00 |
|
khlieng
|
42e8f2547d
|
Handle casing differences between join commands and actual channel names
|
2015-02-13 00:17:45 +01:00 |
|
khlieng
|
b7cafc5327
|
Made backspace work on input history items
|
2015-02-12 02:14:56 +01:00 |
|
khlieng
|
8a790a6fe2
|
Persist input history in localStorage
|
2015-02-11 02:48:28 +01:00 |
|
khlieng
|
1faf310ebd
|
Added chat input history navigable by the arrow keys
|
2015-02-11 02:37:28 +01:00 |
|
khlieng
|
21160be407
|
Chat input autofocus
|
2015-02-10 02:39:19 +01:00 |
|
khlieng
|
ed09a97ade
|
Added /whois, /invite, /kick, /msg and /say
|
2015-02-10 02:25:28 +01:00 |
|
khlieng
|
5df364a3a4
|
Improved state updates when parting and quitting
|
2015-02-09 02:06:24 +01:00 |
|
khlieng
|
99ef788906
|
Added /quit, the server IRC client gets cleaned up properly when quitting, pulled command handling out into a separate file
|
2015-02-09 01:00:30 +01:00 |
|
khlieng
|
d11aa3ff4e
|
Redirect to /connect if its a fresh instance with no stored UUID
|
2015-02-08 02:07:56 +01:00 |
|
khlieng
|
c15feaa310
|
Added more options to the connect form, added support for more IRC commands on the server, added Font Awesome
|
2015-02-07 03:10:58 +01:00 |
|
khlieng
|
e942924c15
|
Nick changes get handled properly by the server IRC client, user count stays hidden when the selected tab is not a channel
|
2015-02-07 00:16:51 +01:00 |
|
khlieng
|
0a47f2ae4a
|
Cleaned TabList up by pulling stuff out into TabListItem, userlist resize listener gets removed on unmount
|
2015-02-06 02:32:25 +01:00 |
|
khlieng
|
806f9aae27
|
Render userlist with react-infinite
|
2015-02-05 02:14:24 +01:00 |
|
khlieng
|
5110029f3a
|
Gzipped assets
|
2015-02-05 01:37:34 +01:00 |
|
khlieng
|
92c316e9ea
|
Added /nick and /topic
|
2015-02-04 02:43:49 +01:00 |
|
khlieng
|
ad4354adfc
|
Added support for IRC actions
|
2015-02-04 00:55:41 +01:00 |
|
khlieng
|
d69281cdd6
|
Trailing gets added to the end of params
|
2015-02-03 23:33:23 +01:00 |
|
khlieng
|
3214e5931a
|
Added connect form, autoselect when joining channels
|
2015-02-03 22:54:46 +01:00 |
|
khlieng
|
0b8e97b215
|
Started doing client-side routing, added some rewriting on the server to support it
|
2015-02-03 00:25:52 +01:00 |
|
khlieng
|
eec82a7dd9
|
Added IRC network naming, added some convenience getters to the stores
|
2015-02-02 01:54:26 +01:00 |
|
khlieng
|
1c30da5474
|
MOTD now gets sent as an array of lines
|
2015-02-01 02:08:38 +01:00 |
|
khlieng
|
736ef76bc0
|
Moved websocket handling on the client into its own file, added reason to part and quit messages, global system messages about a user now only gets sent to channels where the user is/was
|
2015-02-01 01:56:56 +01:00 |
|
khlieng
|
3f335187c0
|
System messages now longer require an empty sender
|
2015-01-31 23:59:53 +01:00 |
|
khlieng
|
5f43b3e78e
|
Added nick change handling, the client now shows nick and quit messages, the userlist gets hidden when the chat window is not a channel
|
2015-01-31 23:35:38 +01:00 |
|
khlieng
|
c421dc504b
|
Added private messaging to the client
|
2015-01-30 02:34:28 +01:00 |
|
khlieng
|
3c02b00303
|
IRC output gets queued until RPL_WELCOME, added tcp timeouts and error handling, store selected tab in localStorage, more design work, upgraded to lodash 3.0.0
|
2015-01-30 00:38:51 +01:00 |
|
khlieng
|
5c6c43e017
|
Better userlist sorting, started work on default theme
|
2015-01-28 02:54:47 +01:00 |
|
khlieng
|
721971cbb3
|
Added basic mode support with op/voice and userlist sorting
|
2015-01-25 02:35:46 +01:00 |
|
khlieng
|
0c2250b268
|
Added multiserver messaging support to the client
|
2015-01-22 01:26:23 +01:00 |
|
khlieng
|
9012e4dee5
|
Info about current irc connections now gets sent to the client, the correct nick shows up when sending messages
|
2015-01-22 01:03:25 +01:00 |
|
khlieng
|
83ddce0468
|
Browserify doesnt seem to require .js extensions anymore
|
2015-01-22 00:32:32 +01:00 |
|
khlieng
|
43a725c662
|
Cleaned up action naming and handling
|
2015-01-22 00:14:28 +01:00 |
|
khlieng
|
f42d6011c6
|
Added title bar and basic message and command input
|
2015-01-21 03:06:34 +01:00 |
|
khlieng
|
508a04cf4c
|
Init
|
2015-01-17 02:37:21 +01:00 |
|