From b29c7ee39df7bb7ccbcad0e3ee0e32313d01df31 Mon Sep 17 00:00:00 2001 From: boer Date: Sat, 26 Jul 2025 13:07:37 +0200 Subject: [PATCH 1/4] chore: manually altered changelog --- Website/CHANGELOG.md | 41 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 40 insertions(+), 1 deletion(-) diff --git a/Website/CHANGELOG.md b/Website/CHANGELOG.md index 055a59c..496e05f 100644 --- a/Website/CHANGELOG.md +++ b/Website/CHANGELOG.md @@ -2,7 +2,46 @@ ### Changed - Manual minor release -- (No previous tag website-v1.1.5 found to compare commits) + +### Features + +* High-performance search system with Web Worker-based processing ([5b5837b](https://github.com/delegateas/DataModelViewer/commit/5b5837b)) +* Portal-isolated search component for 60fps input responsiveness ([4385826](https://github.com/delegateas/DataModelViewer/commit/4385826)) +* Next/previous navigation with keyboard shortcuts (Enter, Shift+Enter, Ctrl+↑↓) ([5b5837b](https://github.com/delegateas/DataModelViewer/commit/5b5837b)) +* Auto-jump to first search result functionality ([5b5837b](https://github.com/delegateas/DataModelViewer/commit/5b5837b)) +* Real-time search progress indication with loading bar ([3800fda](https://github.com/delegateas/DataModelViewer/commit/3800fda)) +* Global search on attributes and entities ([3800fda](https://github.com/delegateas/DataModelViewer/commit/3800fda)) +* Collapsible sidebar with minimize functionality - PBI 119531 ([0d0f57f](https://github.com/delegateas/DataModelViewer/commit/0d0f57f)) +* Auto-collapse sidebar on off-content click for mobile - PBI 119536 ([39726df](https://github.com/delegateas/DataModelViewer/commit/39726df)) +* Direct group navigation links to first section in group - PBI 119537 ([ac13fcb](https://github.com/delegateas/DataModelViewer/commit/ac13fcb)) + +### Performance Improvements + +* Time-sliced input processing maintains 60fps during heavy operations ([4385826](https://github.com/delegateas/DataModelViewer/commit/4385826)) +* Web Worker isolation prevents main thread blocking ([4385826](https://github.com/delegateas/DataModelViewer/commit/4385826)) +* Context-based performance scheduling for priority updates ([4385826](https://github.com/delegateas/DataModelViewer/commit/4385826)) +* Progressive result loading for large datasets ([3800fda](https://github.com/delegateas/DataModelViewer/commit/3800fda)) +* Enhanced virtualization for better handling of large data sets ([5a2e8a5](https://github.com/delegateas/DataModelViewer/commit/5a2e8a5)) + +### Bug Fixes + +* Prevented screen jumping during tab changes - PBI 119533 ([5a2e8a5](https://github.com/delegateas/DataModelViewer/commit/5a2e8a5)) +* Fixed sidebar selection to follow scroll position more accurately - PBI 119535 ([6e4f3ba](https://github.com/delegateas/DataModelViewer/commit/6e4f3ba)) +* Fixed item counts to show only visible items - PBI 119588 ([fa450b5](https://github.com/delegateas/DataModelViewer/commit/fa450b5)) + +### UI/UX Improvements + +* Replaced "entity" terminology with "table" throughout UI - PBI 119532 ([f5c8719](https://github.com/delegateas/DataModelViewer/commit/f5c8719)) +* Enhanced status attribute styling for better visual hierarchy ([543d453](https://github.com/delegateas/DataModelViewer/commit/543d453)) +* Added search icon and modernized search interface ([59aaaa7](https://github.com/delegateas/DataModelViewer/commit/59aaaa7)) +* Improved mobile responsiveness and touch interactions + +### Code Refactoring + +* Moved search functionality into dedicated data context ([6dfde36](https://github.com/delegateas/DataModelViewer/commit/6dfde36)) +* Separated search bar and progress bar into independent DOM trees ([4385826](https://github.com/delegateas/DataModelViewer/commit/4385826)) +* Added SearchPerformanceContext for coordinated update scheduling ([4385826](https://github.com/delegateas/DataModelViewer/commit/4385826)) +* Enhanced data loading with dedicated worker processing ## [1.1.5] - 2025-07-11 From 0732726799fef5fb81fc4438f812281b8c27d312 Mon Sep 17 00:00:00 2001 From: boer Date: Sat, 26 Jul 2025 14:01:38 +0200 Subject: [PATCH 2/4] chore: PBI 119274 - Last Synched on about page --- Generator/WebsiteBuilder.cs | 1 + Website/components/aboutview/AboutView.tsx | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/Generator/WebsiteBuilder.cs b/Generator/WebsiteBuilder.cs index e8bb68a..6c5e6ca 100644 --- a/Generator/WebsiteBuilder.cs +++ b/Generator/WebsiteBuilder.cs @@ -25,6 +25,7 @@ internal void AddData() var sb = new StringBuilder(); sb.AppendLine("import { GroupType } from \"@/lib/Types\";"); sb.AppendLine(""); + sb.AppendLine($"export const LastSynched: Date = new Date('{DateTimeOffset.UtcNow:yyyy-MM-ddTHH:mm:ss.fffZ}')"); sb.AppendLine("export let Groups: GroupType[] = ["); var groups = records.GroupBy(x => x.Group).OrderBy(x => x.Key); foreach (var group in groups) diff --git a/Website/components/aboutview/AboutView.tsx b/Website/components/aboutview/AboutView.tsx index 25fdc0c..1565a7c 100644 --- a/Website/components/aboutview/AboutView.tsx +++ b/Website/components/aboutview/AboutView.tsx @@ -4,6 +4,7 @@ import React, { useEffect, useState } from 'react' import { AppSidebar } from '../AppSidebar' import { useSidebarDispatch } from '@/contexts/SidebarContext' import { TooltipProvider } from '@radix-ui/react-tooltip' +import { LastSynched } from '@/generated/Data' interface IAboutViewProps {} @@ -87,6 +88,11 @@ export const AboutView = ({}: IAboutViewProps) => {
Version {version ?? '...'}
+ + {/* Data Sync */} +
+ Last Synched - {LastSynched ? LastSynched.toLocaleString(undefined, { timeZoneName: 'short' }) : '...'} +
From 9aa9c8f1df00742ee1bafb2c2bf022bd8dd84d18 Mon Sep 17 00:00:00 2001 From: boer Date: Sat, 26 Jul 2025 14:15:57 +0200 Subject: [PATCH 3/4] chore: moved show element to sidebar state and auto collapse on info. --- Website/components/AppSidebar.tsx | 6 ++---- Website/components/SidebarNavRail.tsx | 7 +++++-- Website/contexts/SidebarContext.tsx | 7 ++++++- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/Website/components/AppSidebar.tsx b/Website/components/AppSidebar.tsx index cafca4c..6c0b329 100644 --- a/Website/components/AppSidebar.tsx +++ b/Website/components/AppSidebar.tsx @@ -5,22 +5,20 @@ import { SidebarClose, SidebarOpen } from 'lucide-react' import { useIsMobile } from '@/hooks/use-mobile' import SidebarNavRail from './SidebarNavRail' import clsx from 'clsx' -import { useState } from 'react'; interface IAppSidebarProps {} export const AppSidebar = ({}: IAppSidebarProps) => { - const { element, isOpen } = useSidebar() + const { element, isOpen, showElement } = useSidebar() const dispatch = useSidebarDispatch() const isMobile = useIsMobile() - const [showElement, setShowElement] = useState(true) const toggleSidebar = () => { dispatch({ type: 'SET_OPEN', payload: !isOpen }) } const toggleElement = () => { - setShowElement(v => !v) + dispatch({ type: 'SET_SHOW_ELEMENT', payload: !showElement }) } return ( diff --git a/Website/components/SidebarNavRail.tsx b/Website/components/SidebarNavRail.tsx index ebedd96..1626e3e 100644 --- a/Website/components/SidebarNavRail.tsx +++ b/Website/components/SidebarNavRail.tsx @@ -2,6 +2,7 @@ import React from "react"; import { useRouter, usePathname } from "next/navigation"; import { LogOut, Info, Database, PencilRuler } from "lucide-react"; import { Button } from "@/components/ui/button"; +import { useSidebarDispatch } from "@/contexts/SidebarContext"; const navItems = [ { @@ -24,6 +25,8 @@ export default function SidebarNavRail() { const router = useRouter(); const pathname = usePathname(); + const dispatch = useSidebarDispatch(); + return (