1. 03.07.2025 5 коммитов
    • Radch-enko's avatar
      Refactor: improve null safety, optimize dropdown handling, and enhance UI alignment
      · c05e62ed
      Radch-enko создал
      - Added null safety checks in `MainComponent` to prevent potential crashes during room selection.
      - Replaced `ExposedDropdownMenuBox` with a custom `DropdownMenu` implementation for streamlined organizer selection.
      - Adjusted dropdown menu width dynamically based on `TextField` size.
      - Fixed UI inconsistencies in `EventDurationView` by using `stringResource` for all string references.
      - Updated `UpdateEventComponent` to expand dropdown automatically when filtering organizers.
      c05e62ed
    • Radch-enko's avatar
      Refactor: enhance HTTP request handling, update slot management logic, and improve DI consistency
      · fe570ceb
      Radch-enko создал
      - Updated `HttpRequestUtil`: Added fallback for empty response bodies and support for `SuccessResponse` in HTTP status codes `201` and `204`.
      - Improved `SlotComponent`: Refactored slot update logic into a reusable `updateSlots` function.
      - Modified DI setup: Changed `Collector` to `single` scope and passed it to API implementations (`BookingApiImpl`, `UserApiImpl`, `WorkspaceApiImpl`).
      - Cleaned up redundant initialization in `MainComponent` and `UpdateEventComponent` with improved coroutine scope usage and updated state handling.
      fe570ceb
    • Radch-enko's avatar
      Feature: integrate Firebase Messaging and add kiosk mode functionality
      · de09e41b
      Radch-enko создал
      - Implemented `ServerMessagingService` for handling Firebase push notifications and integrated the `firebaseTopicsModule` for topic subscriptions.
      - Added kiosk mode support in `AppActivity` with device admin and lock task mode setup.
      - Updated `AndroidManifest.xml` with required service and permissions declarations.
      - Enabled Firebase dependencies in Gradle (`firebase-messaging-ktx`, `google-services`) and added signing configurations for debug and release builds.
      - Updated `App` setup to subscribe to Firebase topics dynamically.
      de09e41b
    • Radch-enko's avatar
      Feature: add device admin support and lock task mode configuration
      · ccedbf13
      Radch-enko создал
      - Added `AdminReceiver` class to support device administration functionality.
      - Updated `AndroidManifest.xml` with `AdminReceiver` declaration and `lockTaskMode` attribute for locking tasks.
      - Introduced `device_admin_receiver.xml` with supported admin policies.
      ccedbf13
    • Radch-enko's avatar
      Feature: add update event functionality and refactor event management in Main module
      · cfa103e8
      Radch-enko создал
      - Implemented `UpdateEventComponent` with structured state and intent handling for updating events.
      - Added `UpdateBookingUseCase` and `DeleteBookingUseCase` for managing booking changes.
      - Introduced mapper utilities (`EventInfoMapper`, `UpdateEventComponentStateToEventInfoMapper`) for transforming state and domain models.
      - Enhanced `MainComponent` with `onDeleteEvent`, `onBooking`, and `onUpdateEvent` logic.
      - Integrated `Calf-UI` library for improved date picker functionality.
      - Replaced `EpicDatePicker` with `AdaptiveDatePicker` for streamlined UI.
      - Refactored Gradle dependencies and removed unused `epic-calendar-compose` library.
      - Updated `BusyRoomInfoComponent` to use `toFormattedString` for better time display.
      - Added reusable `FailureSelectRoomView` for handling room selection errors.
      cfa103e8
  2. 01.07.2025 4 коммита
    • Radch-enko's avatar
      Feature: add fast booking functionality and improve modal navigation
      · 837136b0
      Radch-enko создал
      - Introduced `FastEventComponent` with state management, modal navigation, and room selection logic.
      - Added `CreateFastBookingUseCase` and `RemoveFastBookingUseCase` for handling fast bookings.
      - Implemented reusable UI components: `SuccessFastSelectRoomView`, `FailureFastSelectRoomView`, and `FreeBookingButtonView`.
      - Enhanced string resources and vector drawables to support booking confirmation and failure states.
      - Updated Gradle build scripts with required dependencies and ensured compatibility with the main module.
      - Refined domain utilities (`cropSeconds`) for improved timestamp precision.
      837136b0
    • Radch-enko's avatar
      Remove `RoomInfo` and `SelectRoom` modules and integrate functionality into `Main` module
      · 09696242
      Radch-enko создал
      - Deleted `RoomInfo` and `SelectRoom` feature modules along with associated `build.gradle.kts` files.
      - Merged reusable logic and resources from `RoomInfo` and `SelectRoom` into `Main` feature.
      - Introduced `FreeUpRoomUseCase` and modularized modal navigation support in `MainComponent`.
      - Moved and refactored string resources from deleted modules to `Main`.
      - Enhanced `Main` module with new modal components (`FreeSelectRoomComponent`, `FastEventComponent`, `UpdateEventComponent`).
      - Updated DI setup with additional use cases and dependencies for `MainScreenModule`.
      - Adjusted Gradle build files and removed entries for deleted modules in `settings.gradle.kts` and `composeApp`.
      09696242
    • Radch-enko's avatar
      Refactor: update slot management integration and enhance UI consistency
      · 7b387e87
      Radch-enko создал
      - Replaced `slotState` with `SlotComponent` for more structured state handling.
      - Integrated `collectAsState` for slot state observation in `RoomInfoLeftPanel`.
      - Improved `SlotView` with clickable slot and delete slot intents.
      - Adjusted padding and background modifiers for better UI alignment.
      - Fixed `updateSelectDate` logic to handle both increment and decrement date changes.
      7b387e87
    • Radch-enko's avatar
      Refactor: restructure Main feature and enhance slot management
      · d7906007
      Radch-enko создал
      - Removed old `MainComponent` and `MainScreenView` implementations.
      - Added modular `presentation`, `domain`, and `uiComponent` packages to `Main` feature for better separation of concerns.
      - Introduced reusable slot-related components: `CommonSlotView`, `DeletedSlotView`, `LoadingSlotView`.
      - Created `SlotUiMapper` and domain use cases: `GetSlotsByRoomUseCase`, `GetRoomIndexUseCase`.
      - Simplified `OfficeTime` utility functions and enhanced slot calculation logic.
      - Updated DI with `mainScreenModule` for better dependency management.
      d7906007
  3. 30.06.2025 3 коммита
    • Radch-enko's avatar
      Refactor: remove unused theme files and add new settings management
      · 46dd101d
      Radch-enko создал
      - Deleted redundant theme files (`Color.kt`, `Theme.kt`, `Theme.android.kt`).
      - Introduced `SettingsComponent` and related UI elements (`GridRooms`, `CardRoom`) for room management.
      - Added vector drawable resources for icons: `arrow_to_right`, `tv`, `allert`, and `power_socket`.
      - Enhanced Gradle build scripts with new dependencies (`settings`, `slf4j-android`) and packaging configurations.
      - Integrated new API key management via `BuildKonfig`.
      - Updated `MainComponent` to handle empty settings gracefully and improved modal window navigation.
      46dd101d
    • Radch-enko's avatar
      Feature: implement MainScreenView and enhance core UI functionality
      · 80853b0a
      Radch-enko создал
      - Added `MainScreenView` with support for room selection, fast booking, and event cancellation.
      - Introduced `Intent`, `State`, and `Label` sealed interfaces for structured state management.
      - Implemented `MainComponent` to handle intents, manage state, and fetch room data.
      - Integrated `epic-calendar-compose` library for date and time selection.
      - Added vector drawable resources for UI elements (e.g., arrow, calendar, loader).
      - Updated Gradle build script to include compose resource generation and necessary dependencies.
      - Enhanced multilanguage support with Russian string resources for booking and room UI elements.
      80853b0a
    • Radch-enko's avatar
      Refactor: migrate `core:data` module to `tablet:core:domain` and enhance modularity
      · 49be75a4
      Radch-enko создал
      - Removed `clients:core:data` and its Koin module for better alignment with tablet-specific needs.
      - Introduced `tablet:core:domain` module with domain-specific models, repositories, and use cases.
      - Added support for tablet-specific booking and organizer functionality.
      - Updated Gradle build scripts, dependencies, and DI modules (`Koin`) to reflect the new architecture.
      - Enhanced navigation and component setup to integrate the `domain` module effectively.
      49be75a4
  4. 27.06.2025 2 коммита
    • Radch-enko's avatar
      Refactor: migrate tablet core data module to clients core data module and...
      · 3d240db3
      Radch-enko создал
      Refactor: migrate tablet core data module to clients core data module and enhance debug capabilities
      
      - Moved tablet-specific `core:data` code to `clients:core:data` for better modularization.
      - Renamed packages from `tablet.core` to `client.core`.
      - Introduced `isDebug` platform-specific implementation and `LoggerInitializer` for conditional logging.
      - Added `dataModule` and `appModule` Koin DI modules for streamlined dependency injection.
      - Updated Gradle build scripts to align with new structure and integrate `BuildKonfig` for API URL management.
      - Adjusted `ComposeApp` configurations for enhanced debug and DI setup.
      3d240db3
    • Radch-enko's avatar
      Feature: implement core booking and workspace APIs for tablet clients
      · 7b73455f
      Radch-enko создал
      - Added `BookingApi`, `WorkspaceApi`, and `UserApi` interfaces for defining API operations.
      - Implemented `BookingApiImpl`, `WorkspaceApiImpl`, and `UserApiImpl` with server communication logic.
      - Introduced error handling with `ErrorResponse` and result encapsulation using `Either`.
      - Added reusable HTTP utilities for requests and client creation.
      - Enhanced `WorkspaceDTO`, `UserDTO`, and `BookingResponseDTO` with serialization capabilities.
      7b73455f
  5. 26.06.2025 2 коммита
    • Radch-enko's avatar
      Feature: add Settings module and integrate basic navigation for tablet clients
      · 21094dd6
      Radch-enko создал
      - Introduced `Settings` feature module with corresponding components and screens.
      - Implemented navigation between `Main` and `Settings` screens using `RootComponent`.
      - Updated dependencies to include `Decompose` and `Essenty` libraries for state management.
      - Enhanced `App` setup to accept root navigation for streamlined screen handling.
      - Improved Gradle build scripts to include the new module and required dependencies.
      21094dd6
    • Radch-enko's avatar
      Feature: add SelectRoom and RoomInfo modules with improved dependency management
      · 75c9469b
      Radch-enko создал
      - Introduced `RoomInfo` and `SelectRoom` feature modules for tablet clients.
      - Updated `libs.versions.toml` with `kotlinx-datetime` and `decompose` dependencies.
      - Configured reusable dependency management for `datetime` and `decompose` in feature modules.
      - Improved iOS project setup with updated Xcode scheme and corrected `BookingApp` configurations.
      - Enhanced Gradle build scripts for modularization and consistency across tablet features.
      75c9469b
  6. 25.06.2025 3 коммита
    • Radch-enko's avatar
      Refactor: modularize build logic and streamline dependency management
      · e5573217
      Radch-enko создал
      - Moved Gradle build scripts into `build-logic` for better organization.
      - Introduced reusable Kotlin Multiplatform plugin configurations for `library`, `ui`, and `data` modules.
      - Updated dependency management by integrating a centralized version catalog (`libs.versions.toml`).
      - Added and configured tablet clients: `core:ui`, `core:domain`, `core:data`, and `feature:main`.
      - Improved Gradle setup for Android and iOS compatibility with shared resources and multiplatform dependencies.
      e5573217
    • Radch-enko's avatar
      Feature: initialize multiplatform tablet and iOS support
      · 8280c922
      Radch-enko создал
      - Migrated Gradle wrapper to version 8.11.1.
      - Added tablet Compose application with initial setup and reusable components.
      - Set up iOS project with Compose integrations, AppIcons, and theme support.
      - Implemented multiplatform shared theme and reusable resources.
      - Updated build configurations for Android and iOS compatibility, including dependency management and plugin setup.
      - Introduced robust light/dark theme switching and preview scaffolding.
      - Configured iOS scheme and workspace for Compose integration.
      - Included adaptive launcher icons for both mobile platforms.
      8280c922
    • Stanislav Radchenko's avatar
      Merge pull request #2 from Radch-enko/fixes-after-debug-on-exists-tablet
      · 3471751f
      Stanislav Radchenko создал
      Migration to v1 endpoints + fixes after debug on old tablet client 
      3471751f
  7. 24.06.2025 3 коммита
    • Radch-enko's avatar
      Feature: unify ID handling and enhance booking logic
      · 21d60370
      Radch-enko создал
      - Switched from UUID to String-based ID handling for booking entities and improved ID validation across services and DTOs.
      - Enhanced booking updates by supporting owner and workspace updates via `UpdateBookingDto`.
      - Integrated workspace bookings into `WorkspaceDTO` for API response enhancement.
      - Updated Google and dummy calendar providers for consistent event ID usage and improved logging.
      - Removed redundant println statement in Firebase configuration.
      - Adjusted tests and mapping layers to align with the ID handling changes.
      21d60370
    • Radch-enko's avatar
      Feature: extend user model and booking system with role, tag, and avatar URL enhancements
      · b4088adb
      Radch-enko создал
      - Updated `UserEntity` with `role`, `tag`, and `avatarUrl` fields to support enhanced user attributes.
      - Introduced database migrations to add and index new user fields (`role`, `avatar_url`, `tag`) and enforce default values.
      - Updated mappers, DTOs, and domain models to align with the extended user attributes.
      - Refined booking logic to handle nullable `owner` attributes consistently across services and providers.
      - Improved Google Calendar provider to include workspace details and organizer information in event descriptions.
      - Enhanced validation and creation of system users with default attributes.
      b4088adb
    • Radch-enko's avatar
      Feature: enhance booking capabilities with support for return instances and...
      · 0aaae31e
      Radch-enko создал
      Feature: enhance booking capabilities with support for return instances and improved user and workspace ID handling
      
      - Added `returnInstances` parameter to booking-related methods for handling recurring bookings as non-recurrent instances.
      - Standardized ID validation and conversion for bookings, users, and workspaces across services and DTOs.
      - Improved `WorkspaceService` with extended calendar ID management functionality.
      - Updated dummy and Google Calendar providers to align with the new functionality.
      - Refined logging for better traceability of booking operations.
      0aaae31e
  8. 23.06.2025 4 коммита
  9. 20.06.2025 1 коммит
  10. 18.06.2025 5 коммитов
  11. 04.06.2025 1 коммит
  12. 03.06.2025 1 коммит
  13. 02.06.2025 2 коммита
  14. 29.05.2025 3 коммита