Introduced "First", "Previous", "Next", and "Last page" buttons with state-dependent activations for improved navigation. Refactored pagination logic to utilize a constant PAGE_SIZE and adjusted calculations for max page determination. Ensured page transitions and state updates are accurate and consistent.
Refactored the layout for player and punisher avatars by adding a container around usernames and aligning elements vertically. Updated the `getAvatarUrl` method to accept only UUID strings, streamlining its usage. Improved styling for better alignment and presentation.
Updated the width and height attributes of the avatar image in the history component to use consistent integer values (25) instead of "25px". This ensures proper rendering and prevents potential styling issues.
Centralized avatar URL generation with `getAvatarUrl()` method to reduce redundancy and improve code maintainability. Updated relevant components to utilize the new method for cleaner and more consistent implementation.
Adjusted the header height and title text for clarity and consistency in the bans page. Also streamlined avatar image attributes by removing unnecessary units for better HTML standards compliance.
Increased the scroll threshold for activating the header to 5 for better usability. Added a reset for `inverseYPos` to 0 when the scroll position is at the top, ensuring consistent behavior.
Updated the formula for calculating `inverseYPos` to use a 20% reduction approach instead of dividing by 4 and inverting. This ensures a smoother and more proportional adjustment during scrolling.
Introduced dynamic pagination based on punishment types and counts, retrieved via a new API call. Refactored state management with a centralized `pushState` method and updated button logic in the template to reflect the changes. This improves navigation consistency and user experience.
Enhanced the bans component to retain search state using the History API. Updated the history component to support paginated and filtered data loading based on user input and search terms.
Reduced the width of `.historyReason` and increased the width of `.historyDate` to improve layout alignment. These changes ensure better visual balance and accommodate content more effectively.
Added support for searching and filtering user names using `HistoryService`. Implemented a dropdown for search suggestions with dynamic filtering and selection. Updated UI and styles to accommodate the new input functionality.
Some styling changes for the punishments page. Also changes how the dates are displayed - they should display differently depending on what region you're in.
Consolidated and simplified imports from '../../api' to clean up the code. This reduces redundancy and improves readability while maintaining functionality.
Modularized OpenAPI definitions by splitting into dedicated files for teams, bans, and errors. Improved backend logging for database connections, CORS configuration, and debugging. Updated application properties to support environment-specific CORS origins and logging levels.
Replaced static member entries with dynamic rendering using `getTeamMembers` for better scalability. Added caching and data deduplication logic to optimize API calls. This enhances maintainability and reduces redundancy in the team component.
Deleted unused `AppModule` to streamline the project structure. Enhanced the `TeamComponent` by integrating team member data from the API and updating its template. Improved the `HeaderComponent` by adding `priority` to the logo image for better performance.
Refactored Angular components to standalone modules, enhancing modularity and reducing dependency on `AppModule`. Updated routes to facilitate lazy loading for improved performance and maintainability. Replaced `platformBrowserDynamic` with `bootstrapApplication` for modern bootstrapping.
Introduce new CSS styles to ensure consistent layout and design for the birthday member section. These styles handle width, padding, text alignment, and font styling for improved visual presentation.
Introduced a new BirthdaysComponent with its corresponding HTML, SCSS, and spec files. Added a route for '/birthdays' in the application and integrated it into the module and routing. This component showcases staff and previous staff birthdays.
Replaced inline styles with a reusable `.teamContainer` class in the team component. This improves maintainability and ensures consistent styling across sections.
Updated Privacy, Team, Terms, and About components to implement OnInit. Each component now calls the `scrollToTop` method of the `ScrollService` in the `ngOnInit` lifecycle to ensure the page starts at the top when initialized.
Replaced the external Typeform link with an internal [routerLink] to route to the "/contact" page. This ensures consistency and improves navigation within the application.
Created a new SocialsComponent with corresponding HTML, SCSS, and tests. Updated `app.module.ts` to include the Socials route and modified the Team page to use `ngSrc` for image optimization.
Expanded the Terms of Use content with sections on fair use, donations, external services, and more to improve clarity and coverage. Updated SCSS to enhance readability and layout. Updated expired links to their current live version.
Minor punctuation fix in the Privacy Policy for consistency.
Updated privacy policies with revised dates, modernized links, and replaced references from Mojang's expired links to their Privacy Policy to Microsoft's Privacy Policy. Replaced hardcoded links with Angular router links for improved maintainability. Updated the "Last Updated" date.
Replaced placeholder privacy content with a comprehensive privacy policy, including sections on data collection, usage, third-party involvement, and user rights. Added necessary styles for the privacy policy layout.
Also actually fixed the social icons in the footer
Introduced `TermsComponent` and `PrivacyComponent` with basic templates, styles, and unit tests. Updated routing in `app.module` to include `/terms` and `/privacy` paths and registered these components.
Reorganized SCSS files for better structure and maintainability. Updated layouts to ensure consistent spacing, alignment, and responsiveness across components. Note: "Show exceptions" still needs to be fixed.
Also fixed social icon spacing in the footer.
Added styling updates to map title and container padding for better visual consistency. Updated the community section text to acknowledge player contributions and invite suggestions for featured builds.
Refactored slide navigation to integrate smooth fade animations using opacity changes. Introduced `carouselOpacity` and `triggerAnimation` to manage animation state, and replaced direct slide index changes with the `setSlide` method for improved modularity. Updated HTML and SCSS to support the new animation behavior.
The <app-footer> component is now included only in app.component.html to avoid duplication across pages. This simplifies maintenance and ensures consistent behavior throughout the application.
Inserted the `<app-footer>` component to the rules page template. This ensures consistency in the layout by including the footer across all pages. No additional logic or styles were modified.
Updated the header's background position calculation to use string concatenation for `inverseYPos` and introduced dynamic adjustment of `inverseYPos` on scroll. This ensures smoother and more accurate background position updates.
Updated hex color codes to use uppercase letters for consistency. This change improves code readability and adheres to common hex formatting practices.
Replaced the boolean `overlay_gradient` property with a numeric input to allow for more granular control over the overlay transparency. Updated both the map component and the header logic to handle this change dynamically.
Refactor header background styling to use a method supporting optional gradient overlays. Update map component to include detailed server map links and adjust styling for better layout and clarity.
Introduced a new FooterComponent and integrated it into the application. Adjusted home page layout and refined styles for better consistency, including minor restructuring of CSS rules and HTML elements.
Extracted the "Copy IP" button to a new `CopyIpComponent` to improve reusability and modularity. Updated `HomeComponent` to use this new component and removed redundant methods for copying text to the clipboard. Added tests and styles for the new component.
Replaced inline JavaScript for scrolling and copy functionality with Angular methods. Introduced `ScrollService` for smooth scroll-to-top functionality and added associated styles. Removed unused `isHomePage` method and cleaned up components for better maintainability.
Introduced a new "Rules" component with its routing, templates, and styles, outlining server rules. Enhanced the home slider with navigation dots, updated click events, and improved styling for active/inactive indicators. Also modified the header component to support dynamic height styling.
Introduced dark mode styling across sections and improved CSS for better readability and maintainability. Replaced generic class names with more descriptive ones and reorganized structure for consistency. Adjusted responsive design to ensure better display on various screen sizes.
Updated header components to accept and render background images via a new `[background_image]` input property. Modified relevant templates to apply the background image dynamically and updated usage in `home` and `map` components.
Expanded setup guidelines with steps to generate a new component in Angular. Detailed instructions include modifications to the component, app module, and routes for proper integration.
Updated codebase to follow consistent styling for spacing, braces, and indentation. Changes improve readability and align with standardized conventions throughout SCSS, TypeScript, and HTML files.
Replaced JavaScript-powered carousel and clipboard copying with Angular implementations for better integration and code maintainability. Introduced slide navigation and display using Angular bindings and streamlined the "Copy IP" functionality to utilize the new Angular method.
Simplified the HTML structure by removing the unnecessary conditional wrapper for the home page component. The home page rendering logic is now handled directly by the router outlet.
Extracted theme toggle functionality into a new `app-theme` component to improve modularity and reusability. Integrated theme settings with a service using cookies for persistence and introduced the `THEME_MODE` enum. Updated header component to utilize the new theme switcher and removed inline implementation.
Moved header content logic based on `current_page` input for reusability. Updated styling and layout structure to improve maintainability and accommodate dynamic titles and subtitles.
This change eliminates Angular server-side rendering (SSR) features, including related files, dependencies, and configurations, simplifying the codebase. The update also adjusts routing and references to support client-side rendering exclusively.