hydrogen-web/doc/TODO.md

44 lines
2.5 KiB
Markdown
Raw Normal View History

2019-02-05 04:01:52 +05:30
# Minimal thing to get working
2019-02-11 02:32:42 +05:30
- DONE: finish summary store
- DONE: move "sdk" bits over to "matrix" directory
- DONE: add eventemitter
- DONE: make sync work
- DONE: store summaries
2019-02-18 04:28:01 +05:30
- DONE: setup editorconfig
2019-02-11 02:32:42 +05:30
- DONE: setup linting (also in editor)
- DONE: store timeline
- DONE: store state
2019-02-18 04:28:01 +05:30
- DONE: make summary work better (name and joined/inviteCount doesn't seem to work well)
- DONE: timeline doesn't seem to recover it's key well upon loading, the query in load seems to never yield an event in the persister
2019-02-11 02:32:42 +05:30
- map DOMException to something better
- it's pretty opaque now when something idb related fails. DOMException has these fields:
code: 0
message: "Key already exists in the object store."
name: "ConstraintError"
2019-02-27 04:24:55 +05:30
- DONE: emit events so we can start showing something on the screen maybe?
- DONE: move session._rooms over to Map, so we can iterate over it, ...
- DONE: build a very basic interface with
- DONE: a start/stop sync button
- DONE: a room list sorted alphabetically
- DONE: do some preprocessing on sync response which can then be used by persister, summary, timeline
2019-02-28 03:23:54 +05:30
- DONE: support timeline
- DONE: clicking on a room list, you see messages (userId -> body)
2019-02-28 03:54:22 +05:30
- DONE: style minimal UI
- fix MappedMap update mechanism
- see if in BaseObservableMap we need to change ...params
- put sync button and status label inside SessionView
2019-02-28 03:23:54 +05:30
- fix some errors:
2019-02-28 03:54:22 +05:30
- find out if `(this._emitCollectionUpdate)(this)` is different than `this._emitCollectionUpdate(this)`
2019-02-28 03:23:54 +05:30
- got "database tried to mutate when not allowed" or something error as well
- find out why when RoomPersister.(\_createGapEntry/\_createEventEntry) we remove .buffer the transaction fails (good), but upon fixing and refreshing is missing a message! syncToken should not be saved, so why isn't this again in the sync response and now the txn does succeed?
2019-03-09 00:35:21 +05:30
- DONE: take access token out of IDB? this way it can be stored in a more secure thing for non-web clients, together wit encryption key for olm sessions ... ? like macos keychain, gnome keyring, ... maybe using https://www.npmjs.com/package/keytar
- experiment with using just a normal array with 2 numbers for sortkeys, to work in Edge as well.
2019-02-18 04:28:01 +05:30
- send messages
- fill gaps with call to /messages
- create sync filter
- lazy loading members
- decide denormalized data in summary vs reading from multiple stores PER room on load
- allow Room/Summary class to be subclassed and store additional data?
2019-02-21 04:18:16 +05:30
- store account data, support read markers