Valentin Tolmer
01c82f09eb
app: Add a page to create a group
2021-10-15 08:05:50 +02:00
Valentin Tolmer
8bd1dec180
app: Implement group management
...
Except group creation
2021-10-15 08:05:50 +02:00
Valentin Tolmer
9e9129aa3a
app: Add navigation banner
...
Unstyled as of yet.
2021-10-15 08:05:50 +02:00
Valentin Tolmer
7d21cc5126
app: Add a page with the list of groups
2021-10-15 08:05:50 +02:00
Valentin Tolmer
1ec533bd9b
app: Fix login password prompt
2021-10-06 17:58:02 +02:00
Valentin Tolmer
402ef2f83a
app: Add a component to delete a user
...
Also adds a way to hook to the bootstrap modals to show or hide them.
2021-09-24 16:46:30 +02:00
Valentin Tolmer
dfe1607a3e
app: Migrate create_user to yew_form
2021-09-20 11:23:57 +02:00
Valentin Tolmer
fa6427e694
app: Migrate login to yew_form
2021-09-20 11:23:57 +02:00
Valentin Tolmer
a952968e9f
app: Add Bootstrap classes.
2021-09-20 11:23:57 +02:00
Valentin Tolmer
00efdb42af
app: Extract a RemoveUserFromGroup component
2021-09-20 11:23:57 +02:00
Valentin Tolmer
14be1170f2
app: Extract the form component from the user details page
2021-09-20 11:23:57 +02:00
Valentin Tolmer
5943df6443
app: Extract a Select component
2021-09-20 11:23:57 +02:00
Valentin Tolmer
37c6e8ef30
app: Extract the AddUserToGroup component
2021-09-20 11:23:57 +02:00
Valentin Tolmer
7aab9e8cf5
app: Add a way to manage a user's group memberships
2021-09-20 11:23:57 +02:00
Valentin Tolmer
480f48f820
graphql: Add a method to list groups
2021-09-20 11:23:57 +02:00
Valentin Tolmer
a54e73bded
app: Add the group memberships
2021-09-20 11:23:57 +02:00
Valentin Tolmer
718da71d0d
app: Allow admins to change passwords
2021-09-20 11:23:57 +02:00
Valentin Tolmer
005e18472e
app: reorganize and add a page to change the password
2021-09-13 10:35:39 +02:00
Valentin Tolmer
d647be793a
app: Add a way for users to edit their info
2021-09-03 14:32:33 +02:00
Valentin Tolmer
2954109d96
graphql: Add a method to update a user
2021-09-03 14:32:33 +02:00
Valentin Tolmer
0ac9e134de
schema: make user fields non-nullable
...
They can always be empty. This simplifies mutation, since graphql_client
doesn't have an easy way to conditionally leave out fields (we could do
that with `@include`, but that's one bool per field in addition to the
field, a bit ugly).
2021-09-03 14:32:33 +02:00
Valentin Tolmer
564c09d6ab
app: Fix the user detail view
2021-09-03 14:32:33 +02:00
Valentin Tolmer
3eb53ba5bf
model: rename to auth
...
Since the "model" doesn't contain any message from the API anymore, and
instead contains only the structures needed for authentication, it was
renamed as such.
2021-08-31 20:32:55 +02:00
Valentin Tolmer
6efafa99c8
user_table: refactor to clarify view()
2021-08-31 20:32:55 +02:00
Valentin Tolmer
9c4f8931a0
app: Fix local timezone not taken into account
2021-08-31 20:32:55 +02:00
Valentin Tolmer
2aca9dbe62
app: migrate user creation to GraphQL
2021-08-31 20:32:55 +02:00
Valentin Tolmer
37f61ce212
app: fix registration URLs
2021-08-31 20:32:55 +02:00
Valentin Tolmer
40ba65dca7
app: make a graphql argument required
2021-08-31 20:32:55 +02:00
Valentin Tolmer
dd7e9c9283
app: migrate user_details to graphql endpoint
2021-08-31 20:32:55 +02:00
Valentin Tolmer
0ecd9ed263
Migrate datetimes to UTC
2021-08-30 09:27:00 +02:00
Valentin Tolmer
848cc86d73
api: add the rest of the fields to User
2021-08-30 09:27:00 +02:00
Valentin Tolmer
a1f40a32a5
app: refactor API methods with empty responses
2021-08-30 09:27:00 +02:00
Valentin Tolmer
f860b8fe43
app: Migrate list_users to use the graphql client
2021-08-30 09:27:00 +02:00
Valentin Tolmer
83ed58bff2
errors: use anyhow::Context everywhere
2021-08-30 09:27:00 +02:00
Valentin Tolmer
04b9e97527
Implement client view for the user details
2021-07-05 13:41:36 +02:00
Valentin Tolmer
5e0b41998f
Propagate the admin status to the top component
2021-07-05 13:41:36 +02:00
Valentin Tolmer
d891529da9
Add allow warnings for nonstandard macro braces
...
The warnings come from the macros of libraries that we use, so we can't
change them.
2021-07-05 10:10:27 +02:00
Valentin Tolmer
e09c73efce
Register clients' passwords using OPAQUE
2021-06-25 10:10:55 +02:00
Valentin Tolmer
8b73de0df7
Update opaque and implement it without DB
2021-06-23 20:46:55 +02:00
Valentin Tolmer
0a761ff11f
Create a workspace for the packages
2021-06-23 11:13:05 +02:00
Valentin Tolmer
2f7019433d
Fix clippy warnings
2021-06-23 10:57:34 +02:00
Valentin Tolmer
eec0903052
Refactor API client
2021-06-23 10:27:59 +02:00
Valentin Tolmer
659eab3706
Implement opaque login flow in the client
2021-06-23 10:27:59 +02:00
Valentin Tolmer
c3bbcce6a3
Simplify KeyPair handling
2021-06-23 10:27:59 +02:00
Valentin Tolmer
f918debc2e
Simplify opaque types
2021-06-23 10:27:59 +02:00
Valentin Tolmer
973fac4bb8
Make passwords optional when registering a new user
2021-06-23 10:27:59 +02:00
Valentin Tolmer
86bfd37b70
Opaque: use argon2 as slow hash
2021-06-23 10:27:59 +02:00
Valentin Tolmer
973fa40dd1
Add OPAQUE implementation
2021-06-23 10:27:59 +02:00
Valentin Tolmer
d5f84cd588
Add cargo.lock and fix some dependencies
...
Note that the auth_service handler has become less generic, but it's
enough for our purposes.
2021-06-22 17:27:43 +02:00
Valentin Tolmer
0d8e317490
build.sh: Detect local installs of rollup and improve error messages
2021-06-22 15:32:20 +02:00