Commit Graph

115 Commits (refactor)

Author SHA1 Message Date
Bram van den Heuvel 327140393f Transform input into simple batches
This design allows for simple two-way connections and simplifies the input design. It lacks on state resolution for state events. Given that the events are unknown and exclusively event ids are stored, this might not be relevant to implement at this level
2023-11-28 15:44:13 +01:00
Bram van den Heuvel 8e647a870e Add first design of timeline
The current unfinished design is a first implementation of how the timeline could be built properly. It yet needs a simple way of adding data types, however, which should be a bit more universal.
2023-11-27 13:57:41 +01:00
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 4b92d9ea20 Add new filter + VaultResult type 2023-11-03 22:45:09 +01:00
Bram van den Heuvel 4777de5b67 Improve complex data types using FastDict 2023-11-03 22:44:29 +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
BramvdnHeuvel fa27080ceb
Merge pull request #2 from govynnus/multiple-messages-examples
Update examples in Room docstrings after refactor
2023-08-19 15:41:28 +02:00
BramvdnHeuvel ce0f7e7ea3
Merge pull request #1 from govynnus/no-more-credentials-in-docs
Change Credentials to Vault/IVault in docstrings
2023-08-19 15:41:15 +02:00
Callum Brown ef9a22bde5 Update examples in Room docstrings after refactor
The examples given for safe and unsafe multiple message/event
sending are updated to match the call signatures introduced in
770423bcd2
2023-07-13 14:19:33 +01: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 1f0b817697 Add filter problem whitepaper 2023-05-12 20:18:09 +02: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 3f4508d07c Fix temporary issue 2023-04-12 15:38:00 +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 66383551d1 Update Event documentation 2023-04-12 12:00:08 +02:00
Bram van den Heuvel a8d1cb4c4b Update Room documentation 2023-04-12 11:59:56 +02:00
Bram van den Heuvel e1f12a8ae2 Fix temp event incorrect de-caching bug 2023-04-11 15:47:29 +02:00
Bram van den Heuvel 2769685c13 Remove temp events only on confirmed sync 2023-04-06 15:51:59 +02:00
Bram van den Heuvel 290be4e746 Save account data value on confirmation by server 2023-04-06 14:17:17 +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 e2dd69c5d2 Add account data viewer 2023-03-31 13:50:43 +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 02c0a8d7f6 Add cookies demo 2023-03-24 17:01:25 +01:00
Bram van den Heuvel cd3a16d6bd Update elm.json 2023-03-24 15:26:14 +01:00
Bram van den Heuvel ba4a4b98c3 Fix imports + remove unused variables 2023-03-24 15:22:04 +01:00