diff --git a/apps/bridge-frontend/app/(main)/page.tsx b/apps/bridge-frontend/app/(main)/page.tsx index c16c000..d8a8d6c 100644 --- a/apps/bridge-frontend/app/(main)/page.tsx +++ b/apps/bridge-frontend/app/(main)/page.tsx @@ -1,4 +1,5 @@ -export default function Page() { - return

Home

; -} +import { Home } from "bridge-ui"; +export default function Page() { + return ; +} diff --git a/apps/bridge-frontend/app/_components/Login.tsx b/apps/bridge-frontend/app/_components/Login.tsx index 0b3cfbb..9282b19 100644 --- a/apps/bridge-frontend/app/_components/Login.tsx +++ b/apps/bridge-frontend/app/_components/Login.tsx @@ -17,7 +17,7 @@ import { import { signIn } from "next-auth/react"; import Image from "next/image"; import LinkLogo from "@/app/_images/link-logo-small.png"; -import { colors } from "ui"; +import { colors, fonts } from "ui"; import { useSearchParams } from "next/navigation"; type LoginProps = { @@ -34,6 +34,7 @@ export const Login: FC = ({ session }) => { const params = useSearchParams(); const error = params.get("error"); const { darkGray, cdrLinkOrange, white } = colors; + const { poppins } = fonts; const buttonStyles = { borderRadius: 500, width: "100%", @@ -102,7 +103,7 @@ export const Login: FC = ({ session }) => { fontWeight: 700, mt: 1, ml: 0.5, - fontFamily: "Poppins", + fontFamily: poppins.style.fontFamily, }} > CDR Bridge diff --git a/apps/leafcutter/Dockerfile b/apps/leafcutter/Dockerfile index a682ef0..a37308e 100644 --- a/apps/leafcutter/Dockerfile +++ b/apps/leafcutter/Dockerfile @@ -1,4 +1,3 @@ - FROM node:20 AS base FROM base AS builder diff --git a/apps/link/app/(login)/login/_components/Login.tsx b/apps/link/app/(login)/login/_components/Login.tsx index 16331e3..5a2dc3f 100644 --- a/apps/link/app/(login)/login/_components/Login.tsx +++ b/apps/link/app/(login)/login/_components/Login.tsx @@ -17,7 +17,7 @@ import { import { signIn } from "next-auth/react"; import Image from "next/image"; import LinkLogo from "public/link-logo-small.png"; -import { colors } from "app/_styles/theme"; +import { colors, fonts } from "ui"; import { useSearchParams } from "next/navigation"; type LoginProps = { @@ -34,6 +34,7 @@ export const Login: FC = ({ session }) => { const params = useSearchParams(); const error = params.get("error"); const { darkGray, cdrLinkOrange, white } = colors; + const { poppins } = fonts; const buttonStyles = { borderRadius: 500, width: "100%", @@ -102,7 +103,7 @@ export const Login: FC = ({ session }) => { fontWeight: 700, mt: 1, ml: 0.5, - fontFamily: "Poppins", + fontFamily: poppins.style.fontFamily, }} > CDR Link diff --git a/apps/link/app/(main)/_components/InternalLayout.tsx b/apps/link/app/(main)/_components/InternalLayout.tsx index 3eea55f..a388f59 100644 --- a/apps/link/app/(main)/_components/InternalLayout.tsx +++ b/apps/link/app/(main)/_components/InternalLayout.tsx @@ -12,7 +12,7 @@ export const InternalLayout: FC = ({ children }) => { {children as any} diff --git a/apps/link/app/(main)/_components/SearchBox.tsx b/apps/link/app/(main)/_components/SearchBox.tsx index 03f0f37..d854e15 100644 --- a/apps/link/app/(main)/_components/SearchBox.tsx +++ b/apps/link/app/(main)/_components/SearchBox.tsx @@ -3,7 +3,7 @@ import { usePathname, useRouter } from "next/navigation"; import useSWR from "swr"; import { Grid, Box, TextField, Autocomplete } from "@mui/material"; import { searchQuery } from "@/app/_graphql/searchQuery"; -import { colors } from "@/app/_styles/theme"; +import { colors } from "ui"; type SearchResultProps = { props: any; diff --git a/apps/link/app/(main)/_components/Sidebar.tsx b/apps/link/app/(main)/_components/Sidebar.tsx index 55daed4..f4bfb72 100644 --- a/apps/link/app/(main)/_components/Sidebar.tsx +++ b/apps/link/app/(main)/_components/Sidebar.tsx @@ -35,10 +35,10 @@ import LinkLogo from "public/link-logo-small.png"; import { useSession, signOut } from "next-auth/react"; import { getTicketOverviewCountsQuery } from "app/_graphql/getTicketOverviewCountsQuery"; import { SearchBox } from "./SearchBox"; -import { fonts } from "app/_styles/theme"; +import { fonts } from "ui"; const openWidth = 270; -const closedWidth = 100; +const closedWidth = 70; const MenuItem = ({ name, @@ -49,6 +49,7 @@ const MenuItem = ({ selected = false, open = true, badge, + depth = 0, target = "_self", }: any) => { const { roboto } = fonts; @@ -90,8 +91,8 @@ const MenuItem = ({ width: 30, height: "28px", position: "relative", - ml: "9px", - mr: "1px", + ml: "8px", + mr: "2px", }} > + {depth > 0 && ( + + )} )} {open && ( @@ -132,6 +145,7 @@ const MenuItem = ({ border: 0, textAlign: "left", color: "white", + ml: depth * 3, }} > {name} @@ -220,7 +234,7 @@ export const Sidebar: FC = ({ open, setOpen }) => { = ({ open, setOpen }) => { > = ({ open, setOpen }) => { }} /> - - - + {open && } = ({ open, setOpen }) => { <> = ({ open, setOpen }) => { onClick={undefined} > + + + + + + + + + + = ({ open, setOpen }) => { selected={pathname.endsWith("/admin/zammad")} open={open} /> - {false && roles.includes("bridge") && ( - - )} {roles.includes("label_studio") && ( ; +} diff --git a/apps/link/app/(main)/admin/bridge/[...segment]/@detail/page.tsx b/apps/link/app/(main)/admin/bridge/[...segment]/@detail/page.tsx new file mode 100644 index 0000000..66d9c09 --- /dev/null +++ b/apps/link/app/(main)/admin/bridge/[...segment]/@detail/page.tsx @@ -0,0 +1,27 @@ +import { db } from "bridge-common"; +import { serviceConfig, Detail } from "bridge-ui"; + +type Props = { + params: { segment: string[] }; +}; + +export default async function Page({ params: { segment } }: Props) { + const service = segment[0]; + const id = segment?.[1]; + + if (!id) return null; + + const { + [service]: { table }, + } = serviceConfig; + + const row = await db + .selectFrom(table) + .selectAll() + .where("id", "=", id) + .executeTakeFirst(); + + if (!row) return null; + + return ; +} diff --git a/apps/link/app/(main)/admin/bridge/[...segment]/@edit/page.tsx b/apps/link/app/(main)/admin/bridge/[...segment]/@edit/page.tsx new file mode 100644 index 0000000..f028400 --- /dev/null +++ b/apps/link/app/(main)/admin/bridge/[...segment]/@edit/page.tsx @@ -0,0 +1,27 @@ +import { db } from "bridge-common"; +import { serviceConfig, Edit } from "bridge-ui"; + +type PageProps = { + params: { segment: string[] }; +}; + +export default async function Page({ params: { segment } }: PageProps) { + const service = segment[0]; + const id = segment?.[1]; + + if (!id) return null; + + const { + [service]: { table }, + } = serviceConfig; + + const row = await db + .selectFrom(table) + .selectAll() + .where("id", "=", id) + .executeTakeFirst(); + + if (!row) return null; + + return ; +} diff --git a/apps/link/app/(main)/admin/bridge/[...segment]/layout.tsx b/apps/link/app/(main)/admin/bridge/[...segment]/layout.tsx new file mode 100644 index 0000000..773d96c --- /dev/null +++ b/apps/link/app/(main)/admin/bridge/[...segment]/layout.tsx @@ -0,0 +1,3 @@ +import { ServiceLayout } from "bridge-ui"; + +export default ServiceLayout; diff --git a/apps/link/app/(main)/admin/bridge/[...segment]/page.tsx b/apps/link/app/(main)/admin/bridge/[...segment]/page.tsx new file mode 100644 index 0000000..6da1c45 --- /dev/null +++ b/apps/link/app/(main)/admin/bridge/[...segment]/page.tsx @@ -0,0 +1,22 @@ +import { db } from "bridge-common"; +import { serviceConfig, List } from "bridge-ui"; + +type PageProps = { + params: { + segment: string[]; + }; +}; + +export default async function Page({ params: { segment } }: PageProps) { + const service = segment[0]; + + if (!service) return null; + + const config = serviceConfig[service]; + + if (!config) return null; + + const rows = await db.selectFrom(config.table).selectAll().execute(); + + return ; +} diff --git a/apps/link/app/(main)/admin/bridge/page.tsx b/apps/link/app/(main)/admin/bridge/page.tsx index 5ba85be..d8a8d6c 100644 --- a/apps/link/app/(main)/admin/bridge/page.tsx +++ b/apps/link/app/(main)/admin/bridge/page.tsx @@ -1,6 +1,5 @@ -// import { Admin } from "./_components/Admin"; -import { Box } from "@mui/material"; +import { Home } from "bridge-ui"; export default function Page() { - return ; + return ; } diff --git a/apps/link/app/(main)/docs/_components/DocsWrapper.tsx b/apps/link/app/(main)/docs/_components/DocsWrapper.tsx index 2c521e7..319f428 100644 --- a/apps/link/app/(main)/docs/_components/DocsWrapper.tsx +++ b/apps/link/app/(main)/docs/_components/DocsWrapper.tsx @@ -11,7 +11,10 @@ export const DocsWrapper: FC = () => ( sx={{ height: "100%", width: "100%" }} direction="column" > - +