Skip to content

Commit 3e99970

Browse files
committed
2 parents c3259e0 + 38a98e8 commit 3e99970

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+1354
-1349
lines changed

.github/workflows/ci-pipeline.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [ "main" ]
6+
pull_request:
7+
branches: [ "main" ]
8+
9+
jobs:
10+
generator:
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
- uses: actions/checkout@v4
15+
- name: ⚙️ Setup .NET
16+
uses: actions/setup-dotnet@v4
17+
with:
18+
dotnet-version: 8.0.x
19+
- name: 🔄 Restore dependencies
20+
run: dotnet restore
21+
- name: 🔨 Build
22+
run: dotnet build --no-restore
23+
- name: 🧪 Test
24+
run: dotnet test --no-restore --no-build --verbosity normal
25+
26+
website:
27+
runs-on: ubuntu-latest
28+
29+
steps:
30+
- uses: actions/checkout@v4
31+
- name: ⚙️ Setup Node.js 22.x
32+
uses: actions/setup-node@v4
33+
with:
34+
node-version: 22.x
35+
cache: 'npm'
36+
cache-dependency-path: Website/package-lock.json
37+
- name: 📦 Install dependencies
38+
run: npm ci
39+
working-directory: Website
40+
- name: 🗃️ Move stub data
41+
run: npm run prepipeline
42+
working-directory: Website
43+
- name: 📝 Lint
44+
run: npm run lint
45+
working-directory: Website
46+
- name: 🔨 Build
47+
run: npm run build
48+
working-directory: Website

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ jobs:
4242
with:
4343
config-file: release-please-config.json
4444
manifest-file: .release-please-manifest.json
45-
45+
4646
- name: 🚀 Create Release PR or Release (Manual)
4747
if: github.event_name == 'workflow_dispatch'
4848
id: release_manual

Website/.eslintrc.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
11
{
2-
"extends": ["next/core-web-vitals", "next/typescript"]
2+
"extends": ["next/core-web-vitals", "next/typescript"],
3+
"rules": {
4+
"@typescript-eslint/no-empty-object-type": "off"
5+
}
36
}

Website/app/about/page.tsx

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { AboutView } from '@/components/aboutview/AboutView';
2+
import { TouchProvider } from '@/components/ui/hybridtooltop';
3+
import { Loading } from '@/components/ui/loading';
4+
import React, { Suspense } from 'react'
5+
6+
export default function About() {
7+
return <Suspense fallback={<Loading />}>
8+
<TouchProvider>
9+
<AboutView />
10+
</TouchProvider>
11+
</Suspense>
12+
}

Website/app/api/version/route.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import { NextResponse } from 'next/server'
2+
import { version } from '../../../package.json'
3+
4+
export async function GET() {
5+
return NextResponse.json({ version })
6+
}

Website/app/favicon.ico

47.4 KB
Binary file not shown.

Website/app/layout.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import type { Metadata } from "next";
22
import localFont from "next/font/local";
33
import "./globals.css";
4-
import { SidebarProvider } from "@/components/ui/sidebar";
4+
import { SidebarProvider } from "@/contexts/SidebarContext";
55

66
const geistSans = localFont({
77
src: "./fonts/GeistVF.woff",

Website/app/page.tsx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
1-
import { DatamodelView } from "@/components/DatamodelView";
1+
import { DatamodelView } from "@/components/datamodelview/DatamodelView";
2+
import { TouchProvider } from "@/components/ui/hybridtooltop";
23
import { Loading } from "@/components/ui/loading";
34
import { Suspense } from "react";
45

56
export default function Home() {
67
return <Suspense fallback={<Loading />}>
7-
<DatamodelView />
8+
<TouchProvider>
9+
<DatamodelView />
10+
</TouchProvider>
811
</Suspense>
912
}

Website/components/AppSidebar.tsx

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
'use client'
2+
3+
import { useSidebar, useSidebarDispatch } from '@/contexts/SidebarContext'
4+
import { SidebarClose, SidebarOpen } from 'lucide-react'
5+
import { useIsMobile } from '@/hooks/use-mobile'
6+
import SidebarNavRail from './SidebarNavRail'
7+
import clsx from 'clsx'
8+
9+
interface IAppSidebarProps {}
10+
11+
export const AppSidebar = ({}: IAppSidebarProps) => {
12+
const { element, isOpen } = useSidebar()
13+
const dispatch = useSidebarDispatch()
14+
const isMobile = useIsMobile()
15+
16+
const toggleSidebar = () => {
17+
dispatch({ type: 'SET_OPEN', payload: !isOpen })
18+
}
19+
20+
return (
21+
<>
22+
{/* Toggle Button (mobile only) */}
23+
{isMobile && (
24+
<button onClick={toggleSidebar}
25+
className={clsx(
26+
'fixed top-4 z-50 transition-all bg-white border border-gray-300 shadow rounded-full p-2',
27+
isOpen ? 'left-52' : 'left-4'
28+
)}
29+
aria-label={isOpen ? 'Close Sidebar' : 'Open Sidebar'}
30+
>
31+
{isOpen ? <SidebarClose size={20} /> : <SidebarOpen size={20} />}
32+
</button>
33+
)}
34+
35+
{/* Sidebar */}
36+
<div
37+
className={clsx('h-screen w-64 bg-sidebar border-r border-sidebar-border z-40 transition-transform duration-300',
38+
isMobile
39+
? [
40+
'fixed top-0 left-0',
41+
isOpen ? 'translate-x-0' : '-translate-x-full',
42+
'flex flex-col'
43+
]
44+
: 'flex flex-col sticky top-0'
45+
)}
46+
>
47+
{/* Header */}
48+
<div className="w-full h-16 border-b border-sidebar-border p-2 flex justify-center items-center bg-white">
49+
{isMobile ? (
50+
<img src="/DMVLOGO.svg" alt="Logo" className="h-full" draggable={false} />
51+
) : (
52+
<img src="/DMVLOGOHORZ.svg" alt="Logo" className="h-full" draggable={false} />
53+
)}
54+
</div>
55+
56+
{/* Content */}
57+
<div className="flex-1 overflow-y-auto relative flex">
58+
<SidebarNavRail />
59+
{element}
60+
</div>
61+
</div>
62+
</>
63+
)
64+
}

Website/components/AppSiderbar.tsx

Lines changed: 0 additions & 33 deletions
This file was deleted.

0 commit comments

Comments
 (0)