- Added TaskDialog component with functionality to create and edit tasks.
- Integrated form validation and error handling for task inputs.
- Implemented step management within tasks, including adding and deleting steps.
- Styled TaskDialog with CSS for improved user experience.
feat: Create SmartPackagesRoutes for navigation and routing
- Established routing for smart packages, including create and edit functionalities.
- Added loading state management for better user feedback during data fetching.
- Integrated SmartPackagesMenu for navigation within the smart packages section.
feat: Add utility functions for formatting data
- Implemented formatting utilities for currency, time, date, and percentages.
- Ensured consistent formatting across the application for better readability.
chore: Update database schema for smart packages
- Extended material_packages table with new fields for estimated hours, hourly rate, and difficulty level.
- Created smart_package_tasks and smart_package_steps tables for task management.
- Added foreign key relationships and indexes for improved database performance.
test: Add API tests for smart packages functionality
- Created test suite for validating smart packages API endpoints.
- Included tests for CRUD operations on smart packages and retrieval of categories and types.
- Created package.json for the test suite "tilbudgivern-tests"
- Added scripts for running tests, watching tests, and generating coverage reports
- Included Jest and Supertest as development dependencies
- Configured Jest with a test environment, test match pattern, and coverage collection settings
- Specified coverage output directory
- Implemented a mock Express server in `mock-bygma-test.js` to simulate Bygma's web price search API with sample data.
- Created a new SQL file `standard_material_prices.sql` containing standard market prices for various construction materials.
- Added initial files for frontend server and pricing test components.
- Created missing package.json, index.js, index.css, and index.html files
- Installed React dependencies and built production bundle
- Fixed white screen issue in tømrer and materiale priser tabs
- New build files (main.3c5db8af.js) now include OpenAI update functionality
- All UI components should now work correctly with updated backend APIs
- Deleted tilbudgivern-backend.service and tilbudgivern-frontend.service files
- Removed old backend/src/index.js and init.js (replaced by unified-server.js)
- Cleaned up frontend directory, keeping only build/ for static serving
- Updated PM2 configuration to only run unified service + deathwatch-server
- All functionality moved to unified-server.js with database integration
- Renamed project to "tilbudgivern-unified" and updated package.json accordingly.
- Created a new frontend server to proxy API requests and serve static files.
- Added SQL scripts for inserting sample data and setting up pricing tables.
- Configured Nginx for both HTTP and HTTPS with security headers and proxy settings.
- Implemented a unified server to handle API requests and serve the frontend application.
- Added endpoints for labor and material pricing management, including CRUD operations.
- Introduced testing script for frontend API interaction.
- Added package.json for project dependencies and scripts
- Created setup_mariadb.sql for database setup and user creation
- Documented project development plan in taskfile.txt
- Implemented test_setup.sh for system requirements and project structure checks
- Configured systemd service files for backend and frontend applications
- Added ubu-deployment-commands.sh for deployment instructions on Ubu server