{selectedPath()}
)} - - {status() &&{status()}
} ); } diff --git a/frontend/src/components/search-card/SearchCard.tsx b/frontend/src/components/search-card/SearchCard.tsx new file mode 100644 index 0000000..c361d3e --- /dev/null +++ b/frontend/src/components/search-card/SearchCard.tsx @@ -0,0 +1,22 @@ +import type { UserImage } from "../../network"; +import { SearchCardContact } from "./SearchCardContact"; +import { SearchCardEvent } from "./SearchCardEvent"; +import { SearchCardLocation } from "./SearchCardLocation"; +import { SearchCardNote } from "./SearchCardNote"; + +export const SearchCard = (props: { item: UserImage }) => { + const { item } = props; + + switch (item.type) { + case "location": + return{data.PhoneNumber}
{data.Email}
-- {data.Description} -
); }; diff --git a/frontend/src/components/search-card/SearchCardEvent.tsx b/frontend/src/components/search-card/SearchCardEvent.tsx index b75015b..69c2665 100644 --- a/frontend/src/components/search-card/SearchCardEvent.tsx +++ b/frontend/src/components/search-card/SearchCardEvent.tsx @@ -1,5 +1,3 @@ -import { Separator } from "@kobalte/core/separator"; - import { IconCalendar } from "@tabler/icons-solidjs"; import type { UserImage } from "../../network"; @@ -18,15 +16,13 @@ export const SearchCardEvent = ({ item }: Props) => {Organized by {data.Organizer?.Name ?? "unknown"} on{" "} - {new Date(data.StartDateTime).toLocaleDateString("en-US", { - month: "long", - day: "numeric", - year: "numeric", - })} -
-- {data.Description} + {data.StartDateTime + ? new Date(data.StartDateTime).toLocaleDateString("en-US", { + month: "long", + day: "numeric", + year: "numeric", + }) + : "unknown date"}
); diff --git a/frontend/src/components/search-card/SearchCardLocation.tsx b/frontend/src/components/search-card/SearchCardLocation.tsx index bae2e0d..faaebc3 100644 --- a/frontend/src/components/search-card/SearchCardLocation.tsx +++ b/frontend/src/components/search-card/SearchCardLocation.tsx @@ -1,5 +1,3 @@ -import { Separator } from "@kobalte/core/separator"; - import { IconMapPin } from "@tabler/icons-solidjs"; import type { UserImage } from "../../network"; @@ -17,10 +15,6 @@ export const SearchCardLocation = ({ item }: Props) => {{data.Address}
-- {data.Description} -
); }; diff --git a/frontend/src/components/search-card/SearchCardNote.tsx b/frontend/src/components/search-card/SearchCardNote.tsx index 5b82097..7011c68 100644 --- a/frontend/src/components/search-card/SearchCardNote.tsx +++ b/frontend/src/components/search-card/SearchCardNote.tsx @@ -16,11 +16,7 @@ export const SearchCardNote = ({ item }: Props) => {{data.Name}
Keywords TODO
-- {data.Content} -
+Note
); }; diff --git a/frontend/src/components/shortcuts/ShortcutItem.tsx b/frontend/src/components/shortcuts/ShortcutItem.tsx new file mode 100644 index 0000000..2fc4a30 --- /dev/null +++ b/frontend/src/components/shortcuts/ShortcutItem.tsx @@ -0,0 +1,78 @@ +import { IconX } from "@tabler/icons-solidjs"; +import { type Component, For } from "solid-js"; +import { formatKey } from "./utils/formatKey"; +import { sortKeys } from "./utils/sortKeys"; + +interface ShortcutItemProps { + shortcut: string[]; + isEditing: boolean; + currentKeys: string[]; + onEdit: () => void; + onSave: () => void; + onCancel: () => void; +} + +export const ShortcutItem: Component