Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/new settings #89

Closed
wants to merge 6 commits into from
Closed

Feature/new settings #89

wants to merge 6 commits into from

Conversation

GamerVII-NET
Copy link
Collaborator

No description provided.

Arsenii1109 and others added 6 commits October 12, 2024 12:57
Старый URL "/info" заменен на новый "/details" в методе getProfile. Это изменение было сделано для корректного взаимодействия с API и получения актуальных данных пользователя.
* Добавить поддержку протокола Texture

Добавлен новый тип TextureProtocol в структуру SettingsPlatformBaseEntity и форму EditSettingsPlatformForm. Теперь пользователи могут выбирать протокол для отображения скинов в игре.

* Исправлен регистр значений TextureProtocol.

Приведены значения TextureProtocol к верхнему регистру для соответствия конвенциям именования. Также добавлена динамическая генерация пунктов в компоненте формы на основе enum значений.

* Переименовано поле настройки

Изменены названия полей для большей ясности. Новые названия более точно отражают их функционал и назначение для пользователя.
* Feature/game servers (#58)

* Add game server management functionality

This commit introduces the ability to add and delete game servers. It also includes the UI for managing game servers, validation schemas for server attributes, and relevant hooks for server data fetching and manipulation. A skeleton UI component for when server data is loading has also been included.

* Добавлено состояние отключения профиля и обновлён интерфейс серверной карты

В перечисление ProfileState добавлено состояние отключённого профиля. В файле ServerCard добавлено отображение состояний онлайн/офлайн и прогресса загрузки. Также обновлён визуальный стиль карточки сервера.

* Add profile parameter to server deletion process

The GameServerCard and DeleteGameServerDialog components have been updated to now require a profile parameter. The deletion process has been adjusted to now consider this new profile data. This change necessitates some dependency imports updates and refactoring in related files as well.

* Рефакторинг

* Исправление ошибок UX/DX и рефаторинг запросов (#61)

* Исправление ошибок UX

* Исправление ошибок DX

* Рефаторинг запросов

* Рефаторинг запросов

---------

Co-authored-by: vaterentev <[email protected]>

* Add notifications feature and related UI components (#62)

* Add notifications feature

Several new files and modifications have been introduced to set up the notifications feature. This includes the creation of notification services, schemas, and requests, as well as modifying the main layout to include notifications. The notifications view and UI were established and a connection hub for notifications was formed.

* Update notification hooks and display

The `useNotifications` hook was updated for a better handling of notifications data. Notification display was also refined in `NotificationPage` and `Notifications` components to cater to the changes. Additionally, some minor UI adjustments and improvements in labelling were made within various files.

* Рефакторинг

* Выбор билда клиента  (#60)

* Rebase

* Рефакторинг

* Рефакторинг

* Рефакторинг

* Рефакторинг

* Исправление недочётов в уведомлениях

* Рефакторинг

* Рефакторинг

* Орфография и рефакторинг

* Рефакторинг

* Добавлена поддержка GameLoaderOption.FABRIC в CreateProfileForm (#63)

Была расширена логика формы создания профиля для поддержки нового варианта загрузчика игры - GameLoaderOption.FABRIC. Теперь при выборе этого варианта, также активируются соответствующие поля и параметры формы.

* Обновлен интерфейс уведомлений (#65)

Были добавлены новые компоненты в интерфейс уведомлений и улучшен внешний вид уведомлений. Также увеличено количество отображаемых уведомлений с 3 до 10. Добавлен переход на страницу уведомлений при нажатии на каждое из них.

* Fix integration edit texture service (#67)

Пофиксил баг с изменением скинов и плащей

* Исправление запросов для обновлений текстур (#69)

Исправление запросов для обновлений текстур

* Feature/create profile (#70)

* Изменение select на combobox

* Обновление интерфейса формы создания профиля.

В форме создания профиля был осуществлен рефакторинг с использованием нового компонента FormCombobox. Форма была обновлена, для удобства использования был добавлен поиск при выборе версии игры и загрузчика, а также обработка состояния загрузки и ошибок. ФормCombobox был обновлен для более гибкой настройки.

* Изменение текста ошибки в форме создания профиля

Текст ошибки об отсутствии поддержки версии игры загрузчиком был переформулирован для лучшей читаемости и понимания. Это изменение повышает удобство и простоту использования формы создания профиля.

* Рефакторинг

* Добавлено управление версиями Java при сборке (#71)

* Добавлено получение версий Java

Была добавлена новая функция, которая позволяет получить все доступные версии Java. Эта функция используется в хуке useProfiles и доступна через profileService.

* Добавлена возможность загрузки Java-дистрибутива

Была добавлена функция onDownloadJavaDistributive, позволяющая загрузить Java-дистрибутив. Это изменение позволит обновить Java-версию через восстановление профиля. Изменения включают обработку ошибок и сигнал окончания процесса восстановления.

* Обновление функционала для выбора версии Java

Код обновлен, чтобы добавить возможность выбора версии Java при загрузке клиента. Включено использование JavaVersionBaseEntity для того, чтобы обеспечить корректное сохранение выбранной версии. Пользовательский интерфейс обновлен для отображения доступных версий пользователю.

* Обновлена форма выбора версии Java в DownloadClientHub

В форме выбора версии Java были изменены Select элементы на Popover. Изменения также включают сортировку версий, добавление параметра "по умолчанию" и обновление обработки данных формы. Это улучшает пользовательский интерфейс и делает процесс выбора версии более гибким.

* Обновлен вариант выбора версии Java

Внесены изменения во вкладке выбора версии Java в клиентском хабе. Теперь у пользователя есть возможность выбора между установкой дистрибутива по умолчанию или дистрибутива Java. Также изменен показ имен и версий в выпадающем списке выбора версии Java для более гибкого контроля.

* Фикс дублирования "По умолчанию"

* Рефакторинг

* Добавлена проверка подключения к серверу (#72)

* Добавлена проверка подключения к серверу

Была добавлена переменная isConnected, которая позволяет нам узнать, прошло ли подключение к серверу или нет. Теперь, перед выполнением любых действий, происходит проверка этого состояния. Это должно улучшить стабильность работы приложения, предотвратив выполнение действий без установлений подключения.

* Рефакторинг

* Restructure Integrations page layout (#74)

Reorganized the Integrations page to improve readability by grouping related integration cards under distinct headings. Added "Лаунчер" and "Дополнительное" sections to better categorize specific types of integrations. Updated margins and layout for improved user experience.

* Add support for game arguments in profile form (#73)

* Add support for game arguments in profile form

Extended the EditProfileForm component to include a new game arguments field. Modified the ProfileBaseEntity and zod schema to handle the new gameArguments property. Updated the form to correctly display and handle validation errors for the game arguments input.

* Обновлено описание JVM аргументов

Изменил текст описания параметров запуска, уточнив, что речь идет о виртуальной Java машине. Это улучшает ясность и понимание для пользователей.

---------

Co-authored-by: GamerVII-NET <[email protected]>

* Добавлен Zustand для управления состоянием профиля (#75)

* Добавлен Zustand для управления состоянием профиля

Добавлен Zustand для управления состоянием компонента профиля. Вызовы теперь обновляют состояние через Zustand, обеспечивая синхронизацию и реактивное обновление интерфейса.

* Удалить useProfileCardStore из Profile.tsx

Удален неиспользуемый импорт useProfileCardStore из Profile.tsx для повышения чистоты кода. Это изменение устраняет мертвый код и улучшает читаемость.

* Remove scheduled trigger from Docker workflow

The cron job for scheduling the Docker package publish workflow has been removed. This change ensures the workflow only triggers on pushes to the master branch, streamlining the publishing process.

* Fix/notifications (#76)

* Обновлена логика уведомлений

Перенесена логика уведомлений в новое хранилище Zustand. Добавлена сортировка уведомлений и функция "Прочитать все". Также добавлен модуль для очистки уведомлений и улучшена работа с вебсокетами.

* Добавление функций очистки уведомлений

Добавлена функция очистки всех уведомлений с использованием useMutation и обновление интерфейса для обработки данных и отображения статуса операций. Также исправлены некоторые стили и добавлена сортировка уведомлений.

* Добавлено скрытие горизонтальной прокрутки в Notification.tsx

Обновлен стиль компонента уведомлений для предотвращения горизонтальной прокрутки. Это улучшит пользовательский интерфейс и предотвратит возможные проблемы с версткой.

* Упорядочил импорты в Notifications.tsx

Привел порядок импортов в соответствии с внутренними стандартами. Это улучшает читабельность и упрощает поддержку кода.

* Добавить компонент очистки уведомлений

В NotificationPage добавлена кнопка для очистки всех уведомлений с использованием компонента ClearNotificationModel. В ClearNotificationModel добавлено свойство className для гибкости стилизации.

* Рефакторинг

* Исправлен build проекта

---------

Co-authored-by: vaterentev <[email protected]>

* Добавлена страница Sentry в панель управления

Добавлена новая страница Sentry и соответствующий маршрут для нее. Были обновлены компоненты и иконки, чтобы отразить изменения и добавить удобную навигацию через Breadcrumbs.

* Добавлен функционал для отображение ошибок Sentry

Добавлены хуки useSentryErrors и useSentryException, создан компонент SentryLoading для отображения состояния загрузки ошибок. Также добавлены схемы и запросы для Sentry в общий API, и создан сервис SentryService для взаимодействия с backend.

* Добавлена зависимости и обновлен package-lock.json

Добавлены новые зависимости, такие как recharts и d3-* библиотеки. Обновлен package-lock.json для включения последних версий этих библиотек.

* Добавлена зависимости и обновлен package-lock.json

Добавлены новые зависимости, такие как recharts и d3-* библиотеки. Обновлен package-lock.json для включения последних версий этих библиотек.

* Добавлена генерация случайного цвета и улучшение компонента SentryChart

Добавлена функция для генерации случайного цвета с использованием библиотеки faker. В компонент SentryChart добавлен useEffect, который форматирует и выводит даты в консоль.

* Добавлены новые зависимости

Добавлены пакеты @faker-js/faker, colord, seedrandom и их типы в package.json и package-lock.json. Обновлен axios до версии 1.7.7. Изменения включают обновление файла package-lock.json для точного отслеживания новых пакетов.

* Добавлен виджет статистики Sentry

Создан новый компонент SentryStats для отображения статистики ошибок с использованием данных из Sentry. Добавлены запросы для получения ошибок, исключений, статистики и сводки из Sentry API. Сущности SentryStats и SentrySummary внедрены в основную страницу с использованием хуков.

* Добавлены методы для получения статистики Sentry

В SentryService добавлены методы для получения статистики и сводных данных. Обновлены типы данных и хуки для поддержки новой функциональности. Это улучшает возможности мониторинга и анализа ошибок.

* Переименована вкладка "Sentry" на "Ошибки"

Переименование вкладки в панели управления для более понятного отображения информации. Теперь пользователи будут видеть "Ошибки" вместо "Sentry" в соответствующем разделе.

* Добавлена аналитику на страницу ошибок

Добавлены вкладки "Статистика" и "Аналитика" на страницу Sentry. Создан компонент SentryAnalytics для отображения аналитических данных. Обновлены зависимости, добавлены date-fns и react-day-picker для работы с календарем.

* Добавлен компонент Calendar

Добавлен новый компонент Calendar в директорию src/shared/ui. Он использует библиотеку react-day-picker для отображения календаря и предоставляет настраиваемые стили через classNames.

* Добавлена поддержка запросов для ошибок Sentry

В SentryService изменен метод для получения ошибок с GET на POST. Обновлены типы запросов и ответы, а также модифицированы соответствующие хуки и компоненты. Это улучшает гибкость и функциональность обработки ошибок.

* Оптимизация импортов

Заменены импорты React.forwardRef на forwardRef. Это улучшает читаемость и уменьшает размер кода.

* update gml.web.client

* Добавлена поддержка нового фильтра списка ошибок

Добавлена новая функция getSentryFilterErrorsList в SentryService и соответствующий хук useSentryFilterErrorsList. Обновлены договоры типов для запросов и ответов, а также логика переключения вкладок в SentryAnalytics для использования нового хука.

* Доработка Sentry

* Добавлен селектор типа проекта в аналитику Sentry

Добавлен селектор для выбора типа проекта в отчёты аналитики. Это позволяет пользователям фильтровать данные по конкретным типам проектов, улучшая гибкость анализа. Adjusted mutate calls to use the selected project type instead of a default value.

* Добавлен Skeleton и улучшено отображение данных

Добавлен компонент Skeleton для загрузки данных. Убедитесь, что карточка с проблемами отображается только при наличии данных, улучшая общую производительность и UX.

* Переименован EntityProjectTypeOption в ProjectTypeOption

Переименовал EntityProjectTypeOption в ProjectTypeOption и обновил соответственно использование в SentryAnalytics.tsx. Дополнительно изменены преобразования типов для переменной projectType, чтобы исправить ошибки приведения типа.

---------

Co-authored-by: Vadim Terentev <[email protected]>
Co-authored-by: vaterentev <[email protected]>
Co-authored-by: Akemiko <[email protected]>
Co-authored-by: akemiko <[email protected]>
Co-authored-by: akemiko <[email protected]>
Introduced a Textarea for displaying stack traces and added various icons to enhance the user interface in `SentryAnalytics` and `EditSettingsPlatformForm`. This improves the visual clarity and user experience for debugging and settings configuration.
* Fix create profile

* Delecte console log

---------

Co-authored-by: vterentev <[email protected]>
@Scondic Scondic closed this Nov 10, 2024
@Scondic Scondic deleted the feature/new-settings branch November 10, 2024 11:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants