1
0
Fork 0

fix: sort emails

user-stream
Paul Makles 2023-09-03 12:25:45 +01:00
parent 64671be091
commit 8246232461
No known key found for this signature in database
GPG Key ID: 5059F398521BB0F6
1 changed files with 26 additions and 9 deletions

View File

@ -31,7 +31,10 @@ import {
TableRow,
} from "@/components/ui/table";
import { toast } from "@/components/ui/use-toast";
import { createEmailClassification, fetchEmailClassifications } from "@/lib/actions";
import {
createEmailClassification,
fetchEmailClassifications,
} from "@/lib/actions";
import { EmailClassification } from "@/lib/db";
import { useEffect, useState } from "react";
@ -44,7 +47,7 @@ export default function Classifications() {
useEffect(() => {
fetchEmailClassifications().then((domains) => {
setDomains(domains);
setDomains(domains.sort((a, b) => a._id.localeCompare(b._id)));
setLoaded(true);
});
}, []);
@ -69,7 +72,9 @@ export default function Classifications() {
<AlertDialogDescription className="flex flex-row gap-1">
<Input
value={domainDraft}
onChange={(e) => setDomainDraft(e.currentTarget.value)}
onChange={(e) =>
setDomainDraft(e.currentTarget.value)
}
placeholder="reddit.com"
/>
<Popover
@ -88,10 +93,13 @@ export default function Classifications() {
<PopoverContent>
<Command>
{CLASSIFICATIONS.map((c) => (
<CommandItem key={c} onSelect={() => {
setClassificationDraft(c);
setClassificationOpen(false);
}}>
<CommandItem
key={c}
onSelect={() => {
setClassificationDraft(c);
setClassificationOpen(false);
}}
>
{c}
</CommandItem>
))}
@ -106,8 +114,17 @@ export default function Classifications() {
disabled={!domainDraft || !classificationDraft}
onClick={async () => {
try {
await createEmailClassification(domainDraft, classificationDraft);
setDomains([...domains, { _id: domainDraft, classification: classificationDraft }]);
await createEmailClassification(
domainDraft,
classificationDraft
);
setDomains([
...domains,
{
_id: domainDraft,
classification: classificationDraft,
},
]);
setDomainDraft("");
setClassificationDraft("");
setClassificationOpen(false);