Richard van der Hoff
b1e2090eef
TimelineWindow object
...
A handy thing for tracking a window into a room timeline
Could really do with some unit tests... sorry.
2016-01-27 09:53:15 +00:00
Richard van der Hoff
706966ffe9
Support for non-contiguous event timelines
...
This provides optional support for fetching old events via the /context API,
and paginating backwards and forwards from them, eventually merging into the
live timeline.
To support it, events are now stored in an EventTimeline, rather than directly
in an array in the Room; the old names are maintained as references for
compatibility.
The feature has to be enabled explicitly, otherwise it would be impossible for
existing clients to back-paginate to the old events after a gappy /sync.
Still TODO here:
* An object which provides a window into the timelines to make them possible to
use. This will be a separate PR.
* Rewrite the 'EventContext' used by the searchRoomEvents API in terms of an
EventTimeline - it is essentially a subset.
2016-01-15 13:19:11 +00:00
Matthew Hodgson
446faed9b5
copyrights please...
2016-01-07 04:15:38 +00:00
Kegan Dougal
b622960b32
Do all prep for /sync calls
...
This includes managing filters in localStorage. The /sync response
is not yet parsed.
2015-12-09 15:25:09 +00:00
Kegan Dougal
86a162c818
Add filter UTs and fix bugs
2015-12-08 15:39:55 +00:00
Kegan Dougal
1987726a95
Add initial v2 filter impl
2015-12-08 15:23:09 +00:00
Kegan Dougal
2f9958cca9
JSDoc linkify
2015-10-19 14:37:17 +01:00
Kegan Dougal
551721b22e
More WIP docs
2015-07-28 11:53:07 +01:00
Kegan Dougal
9993e5dbed
Cleanup jsdoc. Allow extra query params to be set on requests (for ASes).
2015-07-28 10:57:05 +01:00
Mark Haines
ea1c315aa8
Enable crypto if olm is present
2015-07-23 10:03:20 +01:00
Mark Haines
58e44a2fc3
Disable end-to-end crypto
2015-07-23 09:30:50 +01:00
Mark Haines
f079e021a2
Line too long
2015-07-21 17:41:05 +01:00
Mark Haines
65d64bf223
Merge remote-tracking branch 'origin/develop' into markjh/end_to_end
...
Conflicts:
lib/client.js
lib/matrix.js
2015-07-20 10:43:23 +01:00
Mark Haines
2ee5977ad2
Start integrating end-to-end into the matrix-client. Add a storage class to store end-to-end sessions. Implement the one-time key upload API, and start sketching out the encryption and decryption functions
2015-07-16 18:21:25 +01:00
Kegan Dougal
0ef20faff7
Add JSDoc; Add createNewMatrixCall to globals.
2015-07-13 17:11:37 +01:00
Kegan Dougal
796afb104b
s/localstorage/webstorage/g. Add storage impl notes.
...
WebStorage is preferred since we can trivially support local or session storage.
Add design notes for persisting rooms.
2015-06-30 11:30:49 +01:00
Kegan Dougal
6078100465
Export LocalStorageStore class. Throw if 'localStorage' isn't defined.
2015-06-26 15:24:55 +01:00
Kegan Dougal
2f78ceb6fc
Design the API for the scheduler and hook MatrixClient up to it.
...
Scheduler itself still needs internal impl.
2015-06-19 15:50:05 +01:00
Kegan Dougal
1e3162128a
Shelve scheduler queue work. Add processFn.
2015-06-18 13:56:46 +01:00
Kegan Dougal
18a3ce415c
Add _queues to MatrixScheduler.
2015-06-18 11:49:34 +01:00
Kegan Dougal
4810d04257
Add stub MatrixScheduler.
2015-06-18 10:07:44 +01:00
Kegan Dougal
9cb37fbe4f
Actually allow MatrixClient to not have a store. Update jsdoc.
2015-06-18 09:59:02 +01:00
Kegan Dougal
d151ac49f2
Mark events which fail to send.
2015-06-18 09:32:04 +01:00
Kegan Dougal
f086bcca4c
Add User class. Convert store to store/get User objects.
2015-06-09 10:55:26 +01:00
Kegan Dougal
7ce3a781f3
Add Room, RoomState and RoomMember classes.
2015-06-08 11:47:15 +01:00
Kegan Dougal
6f4b600c0b
Appease closure linter.
2015-06-05 14:54:06 +01:00
Kegan Dougal
735eefcb6d
Bug fixes in data store.
2015-06-05 14:51:10 +01:00
Kegan Dougal
f27c7f203d
Document the deal with the request function.
2015-06-05 14:29:25 +01:00
Kegan Dougal
fce4d5d1d6
Add MatrixError class. More jsdoc voodoo to get things looking right.
2015-06-05 11:28:28 +01:00
Kegan Dougal
051f3c42b7
Add more jsdoc.
2015-06-04 17:08:40 +01:00
Kegan Dougal
7ab3e25218
Add @module docs. Remove browser-build.sh
...
Add @links for HTML output. Replace browser-build.sh with inline commands
in package.json so building will work on non-unix machines. Update README.
2015-06-04 16:34:00 +01:00
Kegan Dougal
31ffdf8a37
Style checks and more jsdoc.
2015-06-04 16:02:08 +01:00
Kegan Dougal
a95f9d3717
Make MatrixHttpApi a generic API interface; move specifics to MatrixClient.
...
Add a utils file to store common operations like map() and encodeParams().
Modify MatrixClient and MatrixHttpApi to accepts opts as constructors.
2015-06-04 15:39:36 +01:00
Kegan Dougal
d1e51de7ec
Split out matrix.js into different files. Glue things back.
...
Added a models directory. Added store, http-api and client files. Slowly
transitioning to the architecture outlined in SYJS-5.
2015-06-03 17:55:12 +01:00
Kegan Dougal
5a16986014
Add missing jsdoc.
2015-06-03 16:18:30 +01:00
Kegan Dougal
9b4ba0afe8
Redo build process for browsers and node. Update examples.
...
We now rely on browserify for building browser-specific versions of the JS
SDK. This can be initiated by running 'npm run build-js'. Node versions are
unaffected.
2015-06-03 15:51:48 +01:00
Kegan Dougal
bdaad5b940
Fix up stylistic warnings.
2015-06-03 10:37:41 +01:00
Kegan Dougal
67931f05ce
Fix up jshint warnings.
2015-06-03 10:26:12 +01:00
Kegsay
e61830c2b0
Merge pull request #4 from matrix-org/mxstore
...
Experimental data store layer to aid tracking client state
2015-06-03 09:57:02 +01:00
Matthew Hodgson
be7d6be691
todo
2015-05-26 23:23:30 +01:00
Matthew Hodgson
fe82a8631e
fix getStateEvent to require an explicit stateKey
2015-05-26 23:13:41 +01:00
Matthew Hodgson
88bed0cc75
more jsdoc
2015-05-26 00:36:38 +01:00
Matthew Hodgson
e21a144313
resolve kegan's PR review feedback
2015-05-26 00:19:32 +01:00
Matthew Hodgson
1fb4e15625
fix stupid 'null' display names
2015-05-19 20:18:50 +01:00
Matthew Hodgson
5716cf3b06
update todo
2015-05-19 17:18:16 +01:00
Matthew Hodgson
9e6394d1f8
add getFriendlyDisplayName for completeness
2015-05-19 17:11:36 +01:00
Kegan Dougal
8853ad9601
Bug fixes
2015-05-12 14:29:42 +01:00
Kegan Dougal
02b29c157f
Add getStateEvent API (used by IRC AS to get display names for people)
2015-05-12 14:24:05 +01:00
Matthew Hodgson
32051c319c
change store API to work entirely in terms of MatrixEvents to make Mark happy
2015-04-25 23:38:37 +01:00
Matthew Hodgson
234877ddaa
javascript isn't perl
2015-04-22 17:06:53 +01:00