1
0
mirror of https://github.com/matrix-org/matrix-js-sdk.git synced 2025-07-31 15:24:23 +03:00

10571 Commits

Author SHA1 Message Date
805d914940 Bump to 0.1.1. Add 'npm run release' script. 2015-06-23 15:42:08 +01:00
de560d1a4a Update CHANGELOG.md 2015-06-23 15:27:18 +01:00
07d3f43d8b Refactor terminal app; add /invite and /roominfo. 2015-06-23 15:22:57 +01:00
57914969b8 Add MatrixClient.resendEvent to manually resend an event that was not sent.
Bundle txnId as MatrixEvent._txnId instead of exposing it to every place that
happens to need it (since it's so tightly coupled with MatrixEvent)
2015-06-23 14:08:02 +01:00
378c7fd6cb Update docs 2015-06-23 12:15:41 +01:00
7534f59af2 Hook up the callback fn for scrollback. Update CHANGELOG. 2015-06-23 12:04:43 +01:00
553325d66f Improve UX on node terminal app.
Add auto-complete, history and a prompt prefix.
2015-06-23 11:50:17 +01:00
6737388766 Implement pagination via the scrollback() function. Update CHANGELOG. 2015-06-23 11:36:30 +01:00
b7ed78b432 Update CHANGELOG. Add StubStore.
Default to a no-op store class to prevent having to constantly check for
MatrixClient.store and other defensive checks which clutters the intent
of the code.
2015-06-23 11:03:08 +01:00
9c2a2902eb Fix bug where hibernating laptops fail to restart the event stream.
On some devices, the act of hibernating black holes the request so the
success/failure callbacks never fire. This prevents a re-poll as that is done
in the callbacks. To fix this, we add a local timer which, when it fires,
will forcibly do a re-poll. The local timer has a timeout value several
seconds more than the timeout= value (which should've returned by then).
2015-06-23 10:40:53 +01:00
ef77c6f989 Sync room state when another device joins a room. 2015-06-23 10:18:13 +01:00
bc0e2ad504 Sync room state when joining via client.joinRoom
Does not currently sync state when another device joins.
Update node example app to refresh room list.
2015-06-22 17:50:49 +01:00
ad70b3d434 Don't set NOT_SENT in the scheduler; the MatrixClient is responsible for this. 2015-06-19 17:19:48 +01:00
002ae08f04 Update CHANGELOG.md 2015-06-19 17:16:38 +01:00
402a648a92 Update list of what the SDK does 2015-06-19 17:15:36 +01:00
756fe4ddcb Implement MatrixScheduler. 2015-06-19 16:53:28 +01:00
898d16ae76 Update CHANGELOG 2015-06-19 16:07:36 +01:00
18db0d8c02 Emit 'Room' event when the Room is fully populated rather than newly created. 2015-06-19 16:05:13 +01:00
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
8a9f84a4b2 Don't return something which doesn't exist. 2015-06-18 17:49:13 +01:00
1e3162128a Shelve scheduler queue work. Add processFn. 2015-06-18 13:56:46 +01:00
7e12ea4273 Start gluing MatrixClient and MatrixScheduler. 2015-06-18 12:07:18 +01:00
18a3ce415c Add _queues to MatrixScheduler. 2015-06-18 11:49:34 +01:00
ca414d1611 Implement rate limiting in the default retry algorithm. 2015-06-18 11:28:17 +01:00
ba56f5f621 Implement MatrixScheduler.
Formed of two parts: the retry and queuing functions. Use sensible defaults.
2015-06-18 11:11:07 +01:00
4810d04257 Add stub MatrixScheduler. 2015-06-18 10:07:44 +01:00
8d77edce86 Formatting 2015-06-18 10:01:13 +01:00
9cb37fbe4f Actually allow MatrixClient to not have a store. Update jsdoc. 2015-06-18 09:59:02 +01:00
d151ac49f2 Mark events which fail to send. 2015-06-18 09:32:04 +01:00
d74a71cc2d linting and update README. 2015-06-17 17:47:57 +01:00
8e6eb35dfe Implement local echo.
Mark events being sent via the status property. Update CHANGELOG.
2015-06-17 17:42:12 +01:00
ee4d66024a Update changelog 2015-06-15 10:20:54 +01:00
f77e8e3bf7 Add User.events.presence property for storing the m.presence event for a user. 2015-06-15 10:20:04 +01:00
94931cdc07 Remove broken function; add RoomMember.events.member property. 2015-06-15 09:49:54 +01:00
c6b11fc382 Make Room.calculateRoomName private to avoid confusion with Room.name. 2015-06-15 09:31:46 +01:00
4316a22913 Bump to 0.1.0 - Generate browser (min) version v0.1.0 2015-06-12 17:17:39 +01:00
ae9e68d9b2 Add a "what this sdk does" section 2015-06-12 17:12:53 +01:00
9dfb5b72b8 NPM hates RST. Convert README to Markdown. 2015-06-12 16:52:02 +01:00
3dc6bf3647 Update README with example output 2015-06-12 16:33:04 +01:00
7a96637a1b Example app: Print timestamps and all state events. 2015-06-12 16:26:44 +01:00
7a02c5d167 Add concept of 'sentinel' RoomMembers which watch state at a particular point in time.
New sentinels are only created when the RoomMember state changes, so we don't
needlessly deep copy RoomMembers f.e. MatrixEvent. Sentinels co-exist with
RoomState.members which are single instances to which listeners can be attached.
This gets the best of both worlds (don't have to keep re-attaching listeners on
member changes, don't have needless memory consumption).
2015-06-12 15:38:02 +01:00
8a844d59ec Get historical display names working on messages.
Accessed via MatrixEvent.sender property. Deep copy the list of state events
from initial sync for old/current RoomState so updating the .sender property
doesn't affect both of them. Reverse the insertion of initial sync MatrixEvents
so state diverges to *earlier* points in time. Add a 'forwardLooking' property
to MatrixEvent to determine which out of 'content' and 'prev_content' entities
should take into account e.g. when determining display names. Finally, always
create new RoomMembers when they are updated in order to prevent corrupting
(read: sharing the same member object) the MatrixEvent.sender property of
existing events in the timeline.
2015-06-12 14:21:24 +01:00
3061b95afe Add getPrevContent function and mark it's situational presence. 2015-06-12 11:26:33 +01:00
71dacb14b1 Add MatrixEvent.sender and .target to pull the right name per message. 2015-06-12 11:05:57 +01:00
da7b31cb7e Add Room.getJoinedMembers helper. UX tweaks to example. 2015-06-12 10:49:13 +01:00
8c5c7cc961 Make examples/node/app an actual app rather than the usage example. 2015-06-12 10:33:45 +01:00
1fed4def69 Merge pull request #8 from matrix-org/event-emitter
Event emitter implementation (SYJS-7)
2015-06-11 18:18:54 +01:00
9be3b2757a Fix formatting. 2015-06-11 17:59:10 +01:00
afee001de7 Add fleshed out example 2015-06-11 17:58:24 +01:00
8aefad221a Add client.getRooms. Add 'syncComplete' event. Display room invites. 2015-06-11 17:52:52 +01:00