summaryrefslogtreecommitdiff
path: root/ui/lib/state/remote/users.svelte.js
diff options
context:
space:
mode:
authorOwen Jacobson <owen@grimoire.ca>2025-04-03 23:45:23 -0400
committerOwen Jacobson <owen@grimoire.ca>2025-04-03 23:45:23 -0400
commit9f7f82dbd9adee8ae18ae7ff2600b3e1dc8fadbc (patch)
treed973d00486ffab3445e3ca454e93a941ed8fe6e2 /ui/lib/state/remote/users.svelte.js
parent24755a89a97a4d1cb10ebbcf41e200861f3bedf3 (diff)
parent45eea07a56022f647b3a273798a5255cda73f13d (diff)
Merge branch 'prop/rename-login-to-user'
Diffstat (limited to 'ui/lib/state/remote/users.svelte.js')
-rw-r--r--ui/lib/state/remote/users.svelte.js18
1 files changed, 18 insertions, 0 deletions
diff --git a/ui/lib/state/remote/users.svelte.js b/ui/lib/state/remote/users.svelte.js
new file mode 100644
index 0000000..617084f
--- /dev/null
+++ b/ui/lib/state/remote/users.svelte.js
@@ -0,0 +1,18 @@
+import { SvelteMap } from 'svelte/reactivity';
+
+export class Users {
+ all = $state();
+
+ static boot(users) {
+ const all = new SvelteMap(users.map((user) => [user.id, user]));
+ return new Users({ all });
+ }
+
+ constructor({ all }) {
+ this.all = all;
+ }
+
+ add({ id, name }) {
+ this.all.set(id, { id, name });
+ }
+}