Files
Filamenteka/app/layout.tsx
DaX 808ca077fa Major frontend and admin improvements
Frontend changes:
- Removed brand filter and column from table
- Removed inventory summary grid
- Removed stanje (state) and težina (weight) columns
- Reorganized filters: Material → Finish → Color
- Updated EnhancedFilters component with new filter structure
- Removed legend section for storage conditions

Admin dashboard changes:
- Removed sidebar navigation (Boje option)
- Made dashboard full screen
- Removed brand column from table
- Removed brand field from add/edit form
- Updated all boolean columns to use checkmark/X icons
- Made color tiles 40% bigger
- Added sortable columns functionality
- Auto-fill price: 3499 for refill, 3999 for regular

Other improvements:
- Added BackToTop button component on all pages
- Fixed Next.js dialog backdrop CSS error
- Updated tests to match new UI structure
- Removed obsolete FilamentTable.tsx component
- Ensured proper synchronization between admin and frontend

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-23 22:27:43 +02:00

52 lines
1.6 KiB
TypeScript

import type { Metadata } from 'next'
import '../src/styles/index.css'
import { BackToTop } from '../src/components/BackToTop'
export const metadata: Metadata = {
title: 'Filamenteka',
description: 'Automatsko praćenje filamenata sa kodiranjem bojama',
}
export default function RootLayout({
children,
}: {
children: React.ReactNode
}) {
return (
<html lang="sr" suppressHydrationWarning>
<head>
<script
dangerouslySetInnerHTML={{
__html: `
(function() {
document.documentElement.classList.add('no-transitions');
// Apply dark mode immediately for admin pages
if (window.location.pathname.startsWith('/upadaj')) {
document.documentElement.classList.add('dark');
} else {
// For non-admin pages, check localStorage
try {
const darkMode = localStorage.getItem('darkMode');
if (darkMode === 'true') {
document.documentElement.classList.add('dark');
}
} catch (e) {}
}
// Remove no-transitions class after a short delay
window.addEventListener('load', function() {
setTimeout(function() {
document.documentElement.classList.remove('no-transitions');
}, 100);
});
})();
`,
}}
/>
</head>
<body suppressHydrationWarning>
{children}
<BackToTop />
</body>
</html>
)
}