diff --git a/src/lib/actions/analytics.ts b/src/lib/actions/analytics.ts index 84c178cc46..0fd6ea1fa9 100644 --- a/src/lib/actions/analytics.ts +++ b/src/lib/actions/analytics.ts @@ -118,6 +118,7 @@ export enum Submit { UserCreate = 'submit_user_create', UserDelete = 'submit_user_delete', UserUpdateEmail = 'submit_user_update_email', + UserUpdateLabels = 'submit_user_update_labels', UserUpdateName = 'submit_user_update_name', UserUpdatePassword = 'submit_user_update_password', UserUpdatePhone = 'submit_user_update_phone', diff --git a/src/routes/console/project-[project]/auth/+page.svelte b/src/routes/console/project-[project]/auth/+page.svelte index 0063f7ea1f..00538acc12 100644 --- a/src/routes/console/project-[project]/auth/+page.svelte +++ b/src/routes/console/project-[project]/auth/+page.svelte @@ -6,7 +6,8 @@ Copy, SearchQuery, AvatarInitials, - PaginationWithLimit + PaginationWithLimit, + Trim } from '$lib/components'; import { Button } from '$lib/elements/forms'; import { @@ -26,6 +27,7 @@ import Create from './createUser.svelte'; import type { Models } from '@appwrite.io/console'; import type { PageData } from './$types'; + import { tooltip } from '$lib/actions/tooltip'; export let data: PageData; @@ -49,6 +51,7 @@ Identifiers Status ID + Labels Joined @@ -102,6 +105,21 @@ + + {#each user.labels.slice(0, 2) as label, i} + {#if i == 0} + + {label} + + {:else} + +{user.labels.length - 1} + {/if} + {/each} + {toLocaleDateTime(user.registration)} diff --git a/src/routes/console/project-[project]/auth/user-[user]/+page.svelte b/src/routes/console/project-[project]/auth/user-[user]/+page.svelte index b48becb71b..04ef2f14a2 100644 --- a/src/routes/console/project-[project]/auth/user-[user]/+page.svelte +++ b/src/routes/console/project-[project]/auth/user-[user]/+page.svelte @@ -2,6 +2,7 @@ import { Container } from '$lib/layout'; import DangerZone from './dangerZone.svelte'; import UpdateEmail from './updateEmail.svelte'; + import UpdateLabels from './updateLabels.svelte'; import UpdateName from './updateName.svelte'; import UpdatePassword from './updatePassword.svelte'; import UpdatePhone from './updatePhone.svelte'; @@ -15,6 +16,7 @@ + diff --git a/src/routes/console/project-[project]/auth/user-[user]/updateLabels.svelte b/src/routes/console/project-[project]/auth/user-[user]/updateLabels.svelte new file mode 100644 index 0000000000..084fad70e0 --- /dev/null +++ b/src/routes/console/project-[project]/auth/user-[user]/updateLabels.svelte @@ -0,0 +1,98 @@ + + +
+ + User labels +

+ Categorize and manage your users based on specific criteria by assigning them + customizable labels. Roles will be assigned to users based on the assigned labels. +

+ +
    + +
  • + {#each suggestedLabels as suggestedLabel} + { + if (!labels.includes(suggestedLabel)) { + labels = [...labels, suggestedLabel]; + } else { + labels = labels.filter((e) => e !== suggestedLabel); + } + }}> + + {/each} +
  • + {#if error} +
  • + {error} +
  • + {/if} +
+
+ + + + +
+