Commit Graph

79 Commits (refactor)

Author SHA1 Message Date
Bram van den Heuvel a68253cc43 Add MatrixTask description 2023-11-03 23:04:45 +01:00
Bram van den Heuvel da0fe70def Merge branch 'refactor' of https://github.com/noordstar/elm-matrix-sdk into refactor 2023-11-03 22:47:08 +01:00
Bram van den Heuvel d12466e82a Update spec description 2023-11-03 22:45:26 +01:00
Bram van den Heuvel 865e83cdae Improve Task Chain 2023-11-03 22:43:28 +01:00
Bram van den Heuvel 2cb21dc102 Add settings to Vault type 2023-11-03 22:42:18 +01:00
Bram 37b058af18 Add first refactor plans 2023-11-03 15:32:54 +01:00
Bram ab4379e897 Proper format before refactor
The point of this refactor is to simplify the HTTP Task build process. This makes it easier to build more implementations on top later in the development, and it improves the code base's vocabulary.

Currently, a lot of the Elm types have names like 'Snackbar' or 'Context' and they're even threatening to devolve into terms like 'Vnackbar'. Hopefully, many of these types should either be removed or gain renewed names.
2023-11-03 07:00:52 +01:00
Bram van den Heuvel f5f5c14e10 Push /send-message, /set-account-data, /sync and /sync to spec versions 1.7 and 1.8 2023-09-22 16:18:15 +02:00
Bram van den Heuvel 8816f0e837 Push /send-message to spec versions 1.7 and 1.8 2023-09-22 16:14:20 +02:00
Bram van den Heuvel d8eaca0ac2 Push /redact to spec versions 1.7 and 1.8 2023-09-22 16:12:16 +02:00
Bram van den Heuvel 349ee739e2 Push /login to spec versions 1.7 and 1.8 2023-09-22 16:08:20 +02:00
Bram van den Heuvel 115381fd50 Push /leave to spec versions v1.7 and v1.8 2023-09-22 15:40:57 +02:00
Bram van den Heuvel 046e374581 Push /join-room-by-id to spec versions v1.7 and v1.8 2023-09-22 15:38:05 +02:00
Bram 42de2a291c Merge remote-tracking branch 'origin/main' into main 2023-09-22 15:33:55 +02:00
Bram van den Heuvel 5e9200a783 Push /joined-members to spec versions v1.7 and v1.8 2023-09-22 15:21:25 +02:00
Bram van den Heuvel 39b0510cbd Push /invite to spec versions v1.7 and v1.8 2023-09-22 15:16:35 +02:00
Bram van den Heuvel 31420c37fe Push /messages to spec versions v1.7 and v1.8 2023-09-22 15:01:28 +02:00
Bram van den Heuvel 18fd7426c9 Push /get-event to spec versions v1.7 and v1.8 2023-09-22 14:56:47 +02:00
Bram van den Heuvel c91f77bab8 Push /ban to spec versions v1.7 and v1.8 2023-09-22 14:43:04 +02:00
Bram van den Heuvel e8a7a28285 Add description for spec versions v1.7 and v1.8 2023-09-22 14:37:38 +02:00
Callum Brown fa52c6e09c Change Credentials to Vault/IVault in docstrings
References to `Credentials` leftover from
e62b6a09c4
2023-07-13 14:18:21 +01:00
Bram van den Heuvel 770423bcd2 LARGE refactor
This refactor is an improvement on the API architecture:

- Tasks are replaced by Cmd

- Tasks will now always succeed so the Vault can deal with the issues itself

- Failed tasks will be recorded so they can be re-attempted later

- The Snackbar now fully supports editing sub-parts of a data type.
2023-04-19 15:09:10 +02:00
Bram van den Heuvel 4aaabe3a0a Add status code errors 2023-04-18 14:55:11 +02:00
Bram van den Heuvel 619cd53a3a Refactor Credentials to Snackbar
The Snackbar type is a type of candies (tokens) that is brought along with any data type that may be passed on to the user.
2023-04-12 15:36:56 +02:00
Bram van den Heuvel 75971fec66 Add temporary events
The SDK now supports temporarily showing events before getting them from sync.

One example is to let users show the messages they sent themselves before the sync confirms that their events are on the timeline.
2023-04-05 13:57:25 +02:00
Bram van den Heuvel 70cbe5b682 elm-format 2023-04-05 12:50:15 +02:00
Bram van den Heuvel f18dbcc941 Force access token on account data + fix bug 2023-04-04 16:11:50 +02:00
Bram van den Heuvel bc2d1a183b Add function to get username 2023-04-04 16:11:16 +02:00
Bram van den Heuvel 54f99f0f05 Expose account_data getter/setter functions 2023-03-31 16:39:43 +02:00
Bram van den Heuvel ff84d70d7f Add internal account_data getter and setter 2023-03-31 16:23:14 +02:00
Bram van den Heuvel 01f97255fe contentType --> eventType 2023-03-31 13:50:05 +02:00
Bram van den Heuvel 1e1d9490bf Temporarily remove whoami for demo
It's annoying, and it doesn't serve any purpose if it's not getting used anyway.
2023-03-24 17:11:10 +01:00
Bram van den Heuvel ba4a4b98c3 Fix imports + remove unused variables 2023-03-24 15:22:04 +01:00
Bram van den Heuvel eb047e0bff Utilize /whoami for better token evaluation 2023-03-24 15:12:59 +01:00
Bram van den Heuvel c45ecd2da3 Add /whoami API endpoint 2023-03-24 14:56:31 +01:00
Bram van den Heuvel 4de93e9039 Update documentation 2023-03-24 14:19:25 +01:00
Bram van den Heuvel bf2cf7395a Add ban API 2023-03-24 14:14:58 +01:00
Bram van den Heuvel 098b38170a Add event to get older events 2023-03-23 22:45:26 +01:00
Bram van den Heuvel c32a62c242 Get older messages from a chat 2023-03-22 15:22:57 +01:00
Bram van den Heuvel e0086daa59 Update login for all spec versions
The currently officially supported/legacy spec versions, at least.
2023-03-19 16:45:56 +01:00
Bram van den Heuvel 5dfd95196b Updating spec versions documentation 2023-03-16 11:58:32 +01:00
Bram van den Heuvel b09ef1c7e8 Upgrade to spec version v1.6 2023-03-16 10:32:03 +01:00
Bram van den Heuvel 1d90d300da Add RoomInvite type 2023-03-15 15:31:29 +01:00
Bram van den Heuvel 45142509d3 Add functionality to join rooms by their id 2023-03-14 23:04:42 +01:00
Bram van den Heuvel 27b3fc562e Eliminate unused code 2023-03-14 22:31:55 +01:00
Bram van den Heuvel 92e9527854 Add complex functions for API endpoints
The Vault will now get an event after having sent it to see what it looks like.

If the user has an expired access token, the Vault will get a new token on the next sync.
2023-03-14 22:11:15 +01:00
Bram van den Heuvel 8c473425f2 Fix bugs 2023-03-14 16:12:44 +01:00
Bram van den Heuvel 840b30e6f3 Fix ASCII snake 2023-03-14 15:51:40 +01:00
Bram van den Heuvel 10903b0e05 Rename CredUpdate -> VaultUpdate 2023-03-14 15:50:23 +01:00
Bram van den Heuvel e90f823000 Refactor: connect API tasks to Context 2023-03-14 15:18:23 +01:00