rr-
5f4b67a2bc
client/views: improve HTML to DOM converter
...
Putting a <tr> in the template resulted in... something weird. Adapting
tricks from JQuery with additional fixes.
2016-06-20 21:44:04 +02:00
rr-
54e3099c56
client/general: refactor control flow
...
- Controller lifetime is bound to route lifetime
- View lifetime is bound to controller lifetime
- Control lifetime is bound to view lifetime
- Enhanced event dispatching
- Enhanced responsiveness in some places
- Views communicate user input to controllers via new event system
2016-06-18 10:35:20 +02:00
rr-
892c154b34
client/polyfill: add NodeList.querySelectorAll
2016-06-13 20:10:55 +02:00
rr-
3cbcbf1140
client/general: fix jscs warnings
2016-06-12 22:10:20 +02:00
rr-
4295e1c827
client/misc: fix Markdown permalinks
2016-06-12 18:15:27 +02:00
rr-
7e8a9a0948
client/comments: add comment list view for post
2016-06-12 12:54:08 +02:00
rr-
9e13c05517
client/misc: fix invalid markup for SJIS
2016-06-11 22:33:33 +02:00
rr-
8303c08437
client/users: make avatars clickable
2016-06-11 17:36:02 +02:00
rr-
7566d2e0f3
client/general: respect privileges
2016-06-11 17:36:02 +02:00
rr-
abd679888a
client/general: make fatal errors fatal
2016-06-11 17:36:02 +02:00
rr-
d445a4c93f
client/general: simplify input creation
2016-06-08 22:51:15 +02:00
rr-
07329d33a4
client/posts: add post view (without comments yet)
2016-06-08 22:43:03 +02:00
rr-
009e13c6d8
client/polyfill: add .querySelector to NodeList
2016-06-08 22:39:49 +02:00
rr-
c114cec642
client/posts: add safety buttons
2016-06-03 19:47:09 +02:00
rr-
fd2df3966d
client/home: show top nav after all, improve looks
2016-06-01 23:42:42 +02:00
rr-
53fd6fb29b
client/home: view featured post, add search form
2016-05-29 12:41:22 +02:00
rr-
6d6cce20dd
client/misc: add formatMarkdown()
2016-05-29 12:41:22 +02:00
rr-
bab88f4739
client/top-nav: reuse makeAccessLink
2016-05-29 12:40:53 +02:00
rr-
79f22d27cd
client/views: reuse mutation observer
2016-05-29 12:40:36 +02:00
rr-
d99c03b9fa
client/home: render disk usage and post count
2016-05-22 22:39:31 +02:00
rr-
7ea4718b1b
client/tags: add suggesting related tags
2016-05-22 22:17:11 +02:00
rr-
98c6128829
client/build: true template precompiling
...
Rather than putting templates in DOM nodes, output JS functions
themselves.
This fixes transpiling for IE11, where ES6 parts of the templates
wouldn't get passed through Babel.
2016-05-21 10:04:23 +02:00
rr-
052a7ca684
client/general: use 'ctx' variable for templates
2016-05-21 09:46:53 +02:00
rr-
bae238794a
client/general: reduce lodash usages
2016-05-21 08:27:10 +02:00
rr-
a32c5d1399
client/misc: remove String.format()
...
...and replace them with ES6 template literals I've just learned about.
2016-05-21 00:08:43 +02:00
rr-
249d6073c0
client/build: remove babel when not transpiling
2016-05-21 00:08:43 +02:00
rr-
407848706a
views/tags: add tag input control
...
For now, without tag relations
2016-05-18 00:13:17 +02:00
rr-
5736b4adc1
views/tags: add autocomplete control
2016-05-17 11:34:47 +02:00
rr-
2cba1a432f
client/general: replace underscore with lodash
2016-05-14 13:12:01 +02:00
rr-
b1deb617bc
client/tags: add tag merging, editing and deleting
2016-05-11 23:47:50 +02:00
rr-
2a4241641c
client/events: improve event dispatching
...
This commit introduces timer-less retry system:
1. Any change to URL is going to stop listening to any messages.
2. If a message is sent and there's no handler that could pick it up,
the message gets enqueued.
3. The message is sent again to the first handler that attaches itself
to given event type.
While in theory this is full of holes (no control over the first
handler), in practice, it works quite well.
Additionally, views.listenToMessages was attaching to completely wrong
DOM node; this commit fixes this as well.
2016-05-11 23:47:50 +02:00
rr-
3856e9fd0d
client/general: fix JSCS warnings
2016-05-10 14:13:24 +02:00
rr-
27cce56054
client/tags: add tag category editing
2016-05-10 13:26:17 +02:00
rr-
6405fbe9f2
client/general: replace handlebars with underscore
2016-05-09 22:36:29 +02:00
rr-
b382f3398f
client/users: add keyboard shortcuts to user list
2016-04-14 21:50:59 +02:00
rr-
286df9faf3
docs+client/users: document user filtering
2016-04-14 19:58:28 +02:00
rr-
f34e83b325
client/users: add filtering
2016-04-14 17:50:46 +02:00
rr-
90559ffcdb
client/build: fix IE11 transpiling
2016-04-14 17:50:38 +02:00
rr-
905faf3721
client/css: scale to device width
2016-04-14 17:50:04 +02:00
rr-
43c657e371
client/paging: don't include empty parameters
2016-04-13 22:15:40 +02:00
rr-
d18a8090b1
client/build: transpile ES6 for older browsers
2016-04-13 20:13:10 +02:00
rr-
5796b07908
client/build: don't keep templates in DOM
2016-04-13 18:58:34 +02:00
rr-
b7a67fc01c
views/paging: add endless pager
2016-04-13 00:27:36 +02:00
rr-
7874614be3
client/messages: fix batch messages appearance
2016-04-12 18:25:52 +02:00
rr-
d3979d63dc
client/paging: notify about empty results
2016-04-12 18:25:08 +02:00
rr-
21c15f4cb9
client/settings: add accountless settings
2016-04-11 22:48:47 +02:00
rr-
1086bca3c2
client/views: fix rendering non-void elements
2016-04-11 19:23:53 +02:00
rr-
d6daf84da0
client/users: add basic users listing
2016-04-11 19:23:53 +02:00
rr-
4dcee37567
client/users: support avatar changing
2016-04-10 18:54:19 +02:00
rr-
e268d679d3
client/views: move form controls to HB helpers
2016-04-10 16:23:33 +02:00