From e9bbd35c9634d999d9e8986197d0fa0dc579bfb2 Mon Sep 17 00:00:00 2001 From: Margarita Date: Thu, 6 Jul 2023 10:46:10 +0600 Subject: [PATCH 01/10] write main structure and components --- buildSrc/hs_err_pid49948.log | 851 ++++++++++++++++++ .../features/selectRoom/build.gradle.kts | 12 + .../kotlin/tablet/di/initSelectRoomKoin.kt | 7 + .../kotlin/tablet/di/SelectRoomModule.kt | 9 + .../tablet/domain/ISelectRoomInteractor.kt | 8 + .../tablet/domain/SelectRoomInteractorImpl.kt | 9 + .../kotlin/tablet/domain/model/Booking.kt | 6 + .../kotlin/tablet/domain/model/EventInfo.kt | 9 + .../tablet/network/ISelectRoomRepository.kt | 8 + .../RealSelectRoomComponent.kt | 29 + .../selectRoomScreen/SelectRoomComponent.kt | 8 +- .../ui/selectRoomScreen/SelectRoomScreen.kt | 29 +- .../selectRoomScreen/SelectRoomScreenState.kt | 18 + .../effective/office/tablet/MainActivity.kt | 2 + .../office/tablet/ui/root/RootComponent.kt | 22 +- 15 files changed, 1018 insertions(+), 9 deletions(-) create mode 100644 buildSrc/hs_err_pid49948.log create mode 100644 tabletApp/features/selectRoom/src/androidMain/kotlin/tablet/di/initSelectRoomKoin.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/di/SelectRoomModule.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/ISelectRoomInteractor.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/SelectRoomInteractorImpl.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/model/Booking.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/model/EventInfo.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/network/ISelectRoomRepository.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/RealSelectRoomComponent.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreenState.kt diff --git a/buildSrc/hs_err_pid49948.log b/buildSrc/hs_err_pid49948.log new file mode 100644 index 00000000..c6cc489d --- /dev/null +++ b/buildSrc/hs_err_pid49948.log @@ -0,0 +1,851 @@ +# +# There is insufficient memory for the Java Runtime Environment to continue. +# Native memory allocation (malloc) failed to allocate 1048576 bytes for AllocateHeap +# Possible reasons: +# The system is out of physical RAM or swap space +# The process is running with CompressedOops enabled, and the Java Heap may be blocking the growth of the native heap +# Possible solutions: +# Reduce memory load on the system +# Increase physical memory or swap space +# Check if swap backing store is full +# Decrease Java heap size (-Xmx/-Xms) +# Decrease number of Java threads +# Decrease Java thread stack sizes (-Xss) +# Set larger code cache with -XX:ReservedCodeCacheSize= +# JVM is running with Unscaled Compressed Oops mode in which the Java heap is +# placed in the first 4GB address space. The Java Heap base address is the +# maximum limit for the native heap growth. Please use -XX:HeapBaseMinAddress +# to set the Java Heap base and to place the Java Heap above 4GB virtual address. +# This output file may be truncated or incomplete. +# +# Out of Memory Error (./src/hotspot/share/memory/allocation.cpp:46), pid=49948, tid=54616 +# +# JRE version: OpenJDK Runtime Environment (11.0.13) (build 11.0.13+0-b1751.21-8125866) +# Java VM: OpenJDK 64-Bit Server VM (11.0.13+0-b1751.21-8125866, mixed mode, tiered, compressed oops, g1 gc, windows-amd64) +# No core dump will be written. Minidumps are not enabled by default on client versions of Windows +# + +--------------- S U M M A R Y ------------ + +Command Line: --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -Xmx2048M -Dfile.encoding=UTF-8 -Duser.country=RU -Duser.language=ru -Duser.variant org.gradle.launcher.daemon.bootstrap.GradleDaemon 8.0.2 + +Host: AMD A6-9225 RADEON R4, 5 COMPUTE CORES 2C+3G , 2 cores, 3G, Windows 10 , 64 bit Build 19041 (10.0.19041.3031) +Time: Mon Jul 3 17:11:04 2023 Îìñêîå ñòàíäàðòíîå âðåìÿ elapsed time: 80.431619 seconds (0d 0h 1m 20s) + +--------------- T H R E A D --------------- + +Current thread (0x00000225319f6800): VMThread "VM Thread" [stack: 0x0000008c53200000,0x0000008c53300000] [id=54616] + +Stack: [0x0000008c53200000,0x0000008c53300000] +[error occurred during error reporting (printing stack bounds), id 0xc0000005, EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000002251b68112d] + +Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) +V [jvm.dll+0x6100fa] +V [jvm.dll+0x747090] +V [jvm.dll+0x7486ad] +V [jvm.dll+0x748ce5] +V [jvm.dll+0x748c9b] +V [jvm.dll+0x60f224] +V [jvm.dll+0x60f9b8] +C [ntdll.dll+0xa247f] +C [ntdll.dll+0x514f4] +C [ntdll.dll+0xa0f8e] +C 0x000002251b68112d + +VM_Operation (0x0000008c56ff9770): CollectForMetadataAllocation, mode: safepoint, requested by thread 0x00000225324c0800 + + +--------------- P R O C E S S --------------- + +Threads class SMR info: +_java_thread_list=0x0000022536238790, length=61, elements={ +0x0000022517b60800, 0x00000225319fa000, 0x0000022531a03800, 0x0000022531a19000, +0x0000022531a1c000, 0x0000022531a1d800, 0x0000022531a66800, 0x0000022531a68800, +0x0000022531a7c800, 0x0000022531cee800, 0x0000022532734000, 0x0000022532576800, +0x000002253351e800, 0x0000022531f56000, 0x000002253302a800, 0x000002253302b800, +0x000002253253b800, 0x00000225324ce000, 0x0000022531ecd000, 0x0000022531ea4800, +0x0000022531e9f000, 0x0000022531ea5800, 0x0000022531ea2000, 0x0000022531ea0800, +0x0000022531ea3000, 0x0000022531ea4000, 0x0000022531ea0000, 0x0000022531ea1800, +0x0000022533cce800, 0x0000022533ccb000, 0x0000022533ccf000, 0x0000022533cd0000, +0x0000022533cca800, 0x0000022533ccd000, 0x0000022533cd1000, 0x0000022533cd1800, +0x0000022533ccc000, 0x0000022533cd7800, 0x0000022533cd3800, 0x0000022533cd2800, +0x0000022533cd4000, 0x0000022533cd8000, 0x0000022533cd9000, 0x0000022533cd5000, +0x0000022533cd6000, 0x0000022533cd6800, 0x00000225324c2000, 0x00000225324c1800, +0x00000225324be000, 0x00000225324c3000, 0x00000225324c4000, 0x00000225324c4800, +0x00000225324bf000, 0x00000225324c5800, 0x00000225324bf800, 0x00000225324c6800, +0x00000225324c0800, 0x00000225324cb000, 0x00000225324cd000, 0x00000225324cc000, +0x00000225324c8000 +} + +Java Threads: ( => current thread ) + 0x0000022517b60800 JavaThread "main" [_thread_blocked, id=52892, stack(0x0000008c52c00000,0x0000008c52d00000)] + 0x00000225319fa000 JavaThread "Reference Handler" daemon [_thread_blocked, id=52232, stack(0x0000008c53300000,0x0000008c53400000)] + 0x0000022531a03800 JavaThread "Finalizer" daemon [_thread_blocked, id=44012, stack(0x0000008c53400000,0x0000008c53500000)] + 0x0000022531a19000 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=53300, stack(0x0000008c53500000,0x0000008c53600000)] + 0x0000022531a1c000 JavaThread "Attach Listener" daemon [_thread_blocked, id=49748, stack(0x0000008c53600000,0x0000008c53700000)] + 0x0000022531a1d800 JavaThread "Service Thread" daemon [_thread_blocked, id=46864, stack(0x0000008c53700000,0x0000008c53800000)] + 0x0000022531a66800 JavaThread "C2 CompilerThread0" daemon [_thread_blocked, id=53760, stack(0x0000008c53800000,0x0000008c53900000)] + 0x0000022531a68800 JavaThread "C1 CompilerThread0" daemon [_thread_blocked, id=54680, stack(0x0000008c53900000,0x0000008c53a00000)] + 0x0000022531a7c800 JavaThread "Sweeper thread" daemon [_thread_blocked, id=46020, stack(0x0000008c53a00000,0x0000008c53b00000)] + 0x0000022531cee800 JavaThread "Common-Cleaner" daemon [_thread_blocked, id=55048, stack(0x0000008c53b00000,0x0000008c53c00000)] + 0x0000022532734000 JavaThread "Daemon health stats" [_thread_blocked, id=54880, stack(0x0000008c53e00000,0x0000008c53f00000)] + 0x0000022532576800 JavaThread "Incoming local TCP Connector on port 58623" [_thread_in_native, id=50576, stack(0x0000008c53f00000,0x0000008c54000000)] + 0x000002253351e800 JavaThread "Daemon periodic checks" [_thread_blocked, id=52448, stack(0x0000008c54000000,0x0000008c54100000)] + 0x0000022531f56000 JavaThread "Daemon" [_thread_blocked, id=54848, stack(0x0000008c54100000,0x0000008c54200000)] + 0x000002253302a800 JavaThread "Handler for socket connection from /127.0.0.1:58623 to /127.0.0.1:58624" [_thread_in_native, id=53764, stack(0x0000008c54200000,0x0000008c54300000)] + 0x000002253302b800 JavaThread "Cancel handler" [_thread_blocked, id=55084, stack(0x0000008c54300000,0x0000008c54400000)] + 0x000002253253b800 JavaThread "Daemon worker" [_thread_blocked, id=15576, stack(0x0000008c54400000,0x0000008c54500000)] + 0x00000225324ce000 JavaThread "Asynchronous log dispatcher for DefaultDaemonConnection: socket connection from /127.0.0.1:58623 to /127.0.0.1:58624" [_thread_blocked, id=43788, stack(0x0000008c54500000,0x0000008c54600000)] + 0x0000022531ecd000 JavaThread "Daemon client event forwarder" [_thread_blocked, id=54688, stack(0x0000008c54700000,0x0000008c54800000)] + 0x0000022531ea4800 JavaThread "Cache worker for journal cache (C:\Users\USER\.gradle\caches\journal-1)" [_thread_blocked, id=50804, stack(0x0000008c54800000,0x0000008c54900000)] + 0x0000022531e9f000 JavaThread "File lock request listener" [_thread_in_native, id=48844, stack(0x0000008c54900000,0x0000008c54a00000)] + 0x0000022531ea5800 JavaThread "Cache worker for file hash cache (C:\Users\USER\.gradle\caches\8.0.2\fileHashes)" [_thread_blocked, id=48008, stack(0x0000008c54a00000,0x0000008c54b00000)] + 0x0000022531ea2000 JavaThread "File watcher server" daemon [_thread_blocked, id=47932, stack(0x0000008c54b00000,0x0000008c54c00000)] + 0x0000022531ea0800 JavaThread "File watcher consumer" daemon [_thread_blocked, id=40928, stack(0x0000008c54c00000,0x0000008c54d00000)] + 0x0000022531ea3000 JavaThread "jar transforms" [_thread_blocked, id=20244, stack(0x0000008c54d00000,0x0000008c54e00000)] + 0x0000022531ea4000 JavaThread "jar transforms Thread 2" [_thread_blocked, id=54224, stack(0x0000008c54e00000,0x0000008c54f00000)] + 0x0000022531ea0000 JavaThread "Cache worker for checksums cache (C:\Users\USER\Programming\student_labs\labs-office-elevator\buildSrc\.gradle\8.0.2\checksums)" [_thread_blocked, id=37804, stack(0x0000008c54f00000,0x0000008c55000000)] + 0x0000022531ea1800 JavaThread "Cache worker for cache directory md-rule (C:\Users\USER\.gradle\caches\8.0.2\md-rule)" [_thread_blocked, id=52184, stack(0x0000008c55000000,0x0000008c55100000)] + 0x0000022533cce800 JavaThread "Cache worker for file content cache (C:\Users\USER\.gradle\caches\8.0.2\fileContent)" [_thread_blocked, id=54940, stack(0x0000008c55100000,0x0000008c55200000)] + 0x0000022533ccb000 JavaThread "Cache worker for file hash cache (C:\Users\USER\Programming\student_labs\labs-office-elevator\buildSrc\.gradle\8.0.2\fileHashes)" [_thread_blocked, id=50424, stack(0x0000008c55200000,0x0000008c55300000)] + 0x0000022533ccf000 JavaThread "Cache worker for cache directory md-supplier (C:\Users\USER\.gradle\caches\8.0.2\md-supplier)" [_thread_blocked, id=30304, stack(0x0000008c55300000,0x0000008c55400000)] + 0x0000022533cd0000 JavaThread "Cache worker for execution history cache (C:\Users\USER\.gradle\caches\8.0.2\executionHistory)" [_thread_blocked, id=54756, stack(0x0000008c55400000,0x0000008c55500000)] + 0x0000022533cca800 JavaThread "Cache worker for dependencies-accessors (C:\Users\USER\Programming\student_labs\labs-office-elevator\buildSrc\.gradle\8.0.2\dependencies-accessors)" [_thread_blocked, id=54948, stack(0x0000008c55700000,0x0000008c55800000)] + 0x0000022533ccd000 JavaThread "Cache worker for Build Output Cleanup Cache (C:\Users\USER\Programming\student_labs\labs-office-elevator\buildSrc\.gradle\buildOutputCleanup)" [_thread_blocked, id=54772, stack(0x0000008c55800000,0x0000008c55900000)] + 0x0000022533cd1000 JavaThread "Memory manager" [_thread_blocked, id=64, stack(0x0000008c55900000,0x0000008c55a00000)] + 0x0000022533cd1800 JavaThread "Cache worker for Build Output Cleanup Cache (C:\Users\USER\Programming\student_labs\labs-office-elevator\buildSrc\buildSrc\.gradle\buildOutputCleanup)" [_thread_blocked, id=51880, stack(0x0000008c55a00000,0x0000008c55b00000)] + 0x0000022533ccc000 JavaThread "Cache worker for kotlin-dsl (C:\Users\USER\.gradle\caches\8.0.2\kotlin-dsl)" [_thread_blocked, id=53304, stack(0x0000008c55b00000,0x0000008c55c00000)] + 0x0000022533cd7800 JavaThread "Unconstrained build operations" [_thread_blocked, id=54808, stack(0x0000008c55c00000,0x0000008c55d00000)] + 0x0000022533cd3800 JavaThread "Unconstrained build operations Thread 2" [_thread_blocked, id=54200, stack(0x0000008c55d00000,0x0000008c55e00000)] + 0x0000022533cd2800 JavaThread "Unconstrained build operations Thread 3" [_thread_blocked, id=49596, stack(0x0000008c55e00000,0x0000008c55f00000)] + 0x0000022533cd4000 JavaThread "Unconstrained build operations Thread 4" [_thread_blocked, id=54500, stack(0x0000008c55f00000,0x0000008c56000000)] + 0x0000022533cd8000 JavaThread "Unconstrained build operations Thread 5" [_thread_blocked, id=52376, stack(0x0000008c56000000,0x0000008c56100000)] + 0x0000022533cd9000 JavaThread "Unconstrained build operations Thread 6" [_thread_blocked, id=54288, stack(0x0000008c56100000,0x0000008c56200000)] + 0x0000022533cd5000 JavaThread "Unconstrained build operations Thread 7" [_thread_blocked, id=55148, stack(0x0000008c56200000,0x0000008c56300000)] + 0x0000022533cd6000 JavaThread "Unconstrained build operations Thread 8" [_thread_blocked, id=54676, stack(0x0000008c56300000,0x0000008c56400000)] + 0x0000022533cd6800 JavaThread "Unconstrained build operations Thread 9" [_thread_blocked, id=52780, stack(0x0000008c56400000,0x0000008c56500000)] + 0x00000225324c2000 JavaThread "Unconstrained build operations Thread 10" [_thread_blocked, id=52528, stack(0x0000008c56500000,0x0000008c56600000)] + 0x00000225324c1800 JavaThread "Unconstrained build operations Thread 11" [_thread_blocked, id=54508, stack(0x0000008c56600000,0x0000008c56700000)] + 0x00000225324be000 JavaThread "Unconstrained build operations Thread 12" [_thread_blocked, id=51544, stack(0x0000008c56700000,0x0000008c56800000)] + 0x00000225324c3000 JavaThread "Unconstrained build operations Thread 13" [_thread_blocked, id=52856, stack(0x0000008c56800000,0x0000008c56900000)] + 0x00000225324c4000 JavaThread "Unconstrained build operations Thread 14" [_thread_blocked, id=30784, stack(0x0000008c56900000,0x0000008c56a00000)] + 0x00000225324c4800 JavaThread "Unconstrained build operations Thread 15" [_thread_blocked, id=41272, stack(0x0000008c56a00000,0x0000008c56b00000)] + 0x00000225324bf000 JavaThread "Unconstrained build operations Thread 16" [_thread_blocked, id=52956, stack(0x0000008c56b00000,0x0000008c56c00000)] + 0x00000225324c5800 JavaThread "Unconstrained build operations Thread 17" [_thread_blocked, id=44264, stack(0x0000008c56c00000,0x0000008c56d00000)] + 0x00000225324bf800 JavaThread "Unconstrained build operations Thread 18" [_thread_blocked, id=54308, stack(0x0000008c56d00000,0x0000008c56e00000)] + 0x00000225324c6800 JavaThread "Unconstrained build operations Thread 19" [_thread_blocked, id=51824, stack(0x0000008c56e00000,0x0000008c56f00000)] + 0x00000225324c0800 JavaThread "Unconstrained build operations Thread 20" [_thread_blocked, id=55232, stack(0x0000008c56f00000,0x0000008c57000000)] + 0x00000225324cb000 JavaThread "included builds" [_thread_blocked, id=54504, stack(0x0000008c52a00000,0x0000008c52b00000)] + 0x00000225324cd000 JavaThread "Execution worker" [_thread_blocked, id=51832, stack(0x0000008c52b00000,0x0000008c52c00000)] + 0x00000225324cc000 JavaThread "Cache worker for execution history cache (C:\Users\USER\Programming\student_labs\labs-office-elevator\buildSrc\buildSrc\.gradle\8.0.2\executionHistory)" [_thread_blocked, id=47204, stack(0x0000008c57000000,0x0000008c57100000)] + 0x00000225324c8000 JavaThread "Cache worker for execution history cache (C:\Users\USER\Programming\student_labs\labs-office-elevator\buildSrc\.gradle\8.0.2\executionHistory)" [_thread_blocked, id=5536, stack(0x0000008c54600000,0x0000008c54700000)] + +Other Threads: +=>0x00000225319f6800 VMThread "VM Thread" [stack: 0x0000008c53200000,0x0000008c53300000] [id=54616] + 0x0000022531d1a800 WatcherThread [stack: 0x0000008c53c00000,0x0000008c53d00000] [id=53860] + 0x0000022517b73000 GCTaskThread "GC Thread#0" [stack: 0x0000008c52d00000,0x0000008c52e00000] [id=46300] + 0x0000022531c15800 GCTaskThread "GC Thread#1" [stack: 0x0000008c53d00000,0x0000008c53e00000] [id=49096] + 0x0000022517ba3800 ConcurrentGCThread "G1 Main Marker" [stack: 0x0000008c52e00000,0x0000008c52f00000] [id=50800] + 0x0000022517ba7800 ConcurrentGCThread "G1 Conc#0" [stack: 0x0000008c52f00000,0x0000008c53000000] [id=39368] + 0x0000022517be4800 ConcurrentGCThread "G1 Refine#0" [stack: 0x0000008c53000000,0x0000008c53100000] [id=49560] + 0x0000022517be5800 ConcurrentGCThread "G1 Young RemSet Sampling" [stack: 0x0000008c53100000,0x0000008c53200000] [id=55224] + +Threads with active compile tasks: + +VM state:at safepoint (normal execution) + +VM Mutex/Monitor currently owned by a thread: ([mutex/lock_event]) +[0x0000022517b5c200] Threads_lock - owner thread: 0x00000225319f6800 +[0x0000022517b5be10] Heap_lock - owner thread: 0x00000225324c0800 + +Heap address: 0x0000000080000000, size: 2048 MB, Compressed Oops mode: 32-bit +Narrow klass base: 0x0000000000000000, Narrow klass shift: 3 +Compressed class space size: 1073741824 Address: 0x0000000100000000 + +Heap: + garbage-first heap total 284672K, used 137954K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 1 young (1024K), 1 survivors (1024K) + Metaspace used 93615K, capacity 96500K, committed 96560K, reserved 1140736K + class space used 12590K, capacity 13678K, committed 13696K, reserved 1048576K +Heap Regions: E=young(eden), S=young(survivor), O=old, HS=humongous(starts), HC=humongous(continues), CS=collection set, F=free, A=archive, TAMS=top-at-mark-start (previous, next) +| 0|0x0000000080000000, 0x0000000080100000, 0x0000000080100000|100%| O| |TAMS 0x0000000080100000, 0x0000000080100000| Untracked +| 1|0x0000000080100000, 0x0000000080200000, 0x0000000080200000|100%|HS| |TAMS 0x0000000080200000, 0x0000000080200000| Complete +| 2|0x0000000080200000, 0x0000000080300000, 0x0000000080300000|100%|HC| |TAMS 0x0000000080300000, 0x0000000080300000| Complete +| 3|0x0000000080300000, 0x0000000080400000, 0x0000000080400000|100%|HC| |TAMS 0x0000000080400000, 0x0000000080400000| Complete +| 4|0x0000000080400000, 0x0000000080500000, 0x0000000080500000|100%|HC| |TAMS 0x0000000080500000, 0x0000000080500000| Complete +| 5|0x0000000080500000, 0x0000000080600000, 0x0000000080600000|100%| O| |TAMS 0x0000000080600000, 0x0000000080600000| Untracked +| 6|0x0000000080600000, 0x0000000080700000, 0x0000000080700000|100%| O| |TAMS 0x0000000080700000, 0x0000000080700000| Untracked +| 7|0x0000000080700000, 0x0000000080800000, 0x0000000080800000|100%| O| |TAMS 0x0000000080800000, 0x0000000080800000| Untracked +| 8|0x0000000080800000, 0x0000000080900000, 0x0000000080900000|100%| O| |TAMS 0x0000000080900000, 0x0000000080900000| Untracked +| 9|0x0000000080900000, 0x0000000080a00000, 0x0000000080a00000|100%| O| |TAMS 0x0000000080a00000, 0x0000000080a00000| Untracked +| 10|0x0000000080a00000, 0x0000000080b00000, 0x0000000080b00000|100%| O| |TAMS 0x0000000080b00000, 0x0000000080b00000| Untracked +| 11|0x0000000080b00000, 0x0000000080c00000, 0x0000000080c00000|100%| O| |TAMS 0x0000000080c00000, 0x0000000080c00000| Untracked +| 12|0x0000000080c00000, 0x0000000080d00000, 0x0000000080d00000|100%| O| |TAMS 0x0000000080d00000, 0x0000000080d00000| Untracked +| 13|0x0000000080d00000, 0x0000000080e00000, 0x0000000080e00000|100%| O| |TAMS 0x0000000080e00000, 0x0000000080e00000| Untracked +| 14|0x0000000080e00000, 0x0000000080f00000, 0x0000000080f00000|100%| O| |TAMS 0x0000000080f00000, 0x0000000080f00000| Untracked +| 15|0x0000000080f00000, 0x0000000081000000, 0x0000000081000000|100%| O| |TAMS 0x0000000081000000, 0x0000000081000000| Untracked +| 16|0x0000000081000000, 0x0000000081100000, 0x0000000081100000|100%| O| |TAMS 0x0000000081100000, 0x0000000081100000| Untracked +| 17|0x0000000081100000, 0x0000000081200000, 0x0000000081200000|100%| O| |TAMS 0x0000000081200000, 0x0000000081200000| Untracked +| 18|0x0000000081200000, 0x0000000081300000, 0x0000000081300000|100%|HS| |TAMS 0x0000000081300000, 0x0000000081300000| Complete +| 19|0x0000000081300000, 0x0000000081400000, 0x0000000081400000|100%|HC| |TAMS 0x0000000081400000, 0x0000000081400000| Complete +| 20|0x0000000081400000, 0x0000000081500000, 0x0000000081500000|100%|HS| |TAMS 0x0000000081500000, 0x0000000081500000| Complete +| 21|0x0000000081500000, 0x0000000081600000, 0x0000000081600000|100%|HC| |TAMS 0x0000000081600000, 0x0000000081600000| Complete +| 22|0x0000000081600000, 0x0000000081700000, 0x0000000081700000|100%|HC| |TAMS 0x0000000081700000, 0x0000000081700000| Complete +| 23|0x0000000081700000, 0x0000000081800000, 0x0000000081800000|100%| O| |TAMS 0x0000000081800000, 0x0000000081800000| Untracked +| 24|0x0000000081800000, 0x0000000081900000, 0x0000000081900000|100%|HS| |TAMS 0x0000000081900000, 0x0000000081900000| Complete +| 25|0x0000000081900000, 0x0000000081a00000, 0x0000000081a00000|100%|HC| |TAMS 0x0000000081a00000, 0x0000000081a00000| Complete +| 26|0x0000000081a00000, 0x0000000081b00000, 0x0000000081b00000|100%|HC| |TAMS 0x0000000081b00000, 0x0000000081b00000| Complete +| 27|0x0000000081b00000, 0x0000000081c00000, 0x0000000081c00000|100%| O| |TAMS 0x0000000081c00000, 0x0000000081c00000| Untracked +| 28|0x0000000081c00000, 0x0000000081d00000, 0x0000000081d00000|100%| O| |TAMS 0x0000000081d00000, 0x0000000081d00000| Untracked +| 29|0x0000000081d00000, 0x0000000081e00000, 0x0000000081e00000|100%| O| |TAMS 0x0000000081e00000, 0x0000000081e00000| Untracked +| 30|0x0000000081e00000, 0x0000000081f00000, 0x0000000081f00000|100%| O| |TAMS 0x0000000081f00000, 0x0000000081f00000| Untracked +| 31|0x0000000081f00000, 0x0000000082000000, 0x0000000082000000|100%|HS| |TAMS 0x0000000082000000, 0x0000000082000000| Complete +| 32|0x0000000082000000, 0x0000000082100000, 0x0000000082100000|100%|HC| |TAMS 0x0000000082100000, 0x0000000082100000| Complete +| 33|0x0000000082100000, 0x0000000082200000, 0x0000000082200000|100%|HC| |TAMS 0x0000000082200000, 0x0000000082200000| Complete +| 34|0x0000000082200000, 0x0000000082300000, 0x0000000082300000|100%|HC| |TAMS 0x0000000082300000, 0x0000000082300000| Complete +| 35|0x0000000082300000, 0x0000000082400000, 0x0000000082400000|100%|HS| |TAMS 0x0000000082400000, 0x0000000082400000| Complete +| 36|0x0000000082400000, 0x0000000082500000, 0x0000000082500000|100%|HC| |TAMS 0x0000000082500000, 0x0000000082500000| Complete +| 37|0x0000000082500000, 0x0000000082600000, 0x0000000082600000|100%|HC| |TAMS 0x0000000082600000, 0x0000000082600000| Complete +| 38|0x0000000082600000, 0x0000000082700000, 0x0000000082700000|100%|HC| |TAMS 0x0000000082700000, 0x0000000082700000| Complete +| 39|0x0000000082700000, 0x0000000082800000, 0x0000000082800000|100%|HC| |TAMS 0x0000000082800000, 0x0000000082800000| Complete +| 40|0x0000000082800000, 0x0000000082900000, 0x0000000082900000|100%| O| |TAMS 0x0000000082900000, 0x0000000082900000| Untracked +| 41|0x0000000082900000, 0x0000000082a00000, 0x0000000082a00000|100%| O| |TAMS 0x0000000082a00000, 0x0000000082a00000| Untracked +| 42|0x0000000082a00000, 0x0000000082b00000, 0x0000000082b00000|100%|HS| |TAMS 0x0000000082b00000, 0x0000000082b00000| Complete +| 43|0x0000000082b00000, 0x0000000082c00000, 0x0000000082c00000|100%| O| |TAMS 0x0000000082c00000, 0x0000000082c00000| Untracked +| 44|0x0000000082c00000, 0x0000000082d00000, 0x0000000082d00000|100%| O| |TAMS 0x0000000082d00000, 0x0000000082d00000| Untracked +| 45|0x0000000082d00000, 0x0000000082e00000, 0x0000000082e00000|100%| O| |TAMS 0x0000000082e00000, 0x0000000082e00000| Untracked +| 46|0x0000000082e00000, 0x0000000082f00000, 0x0000000082f00000|100%| O| |TAMS 0x0000000082f00000, 0x0000000082f00000| Untracked +| 47|0x0000000082f00000, 0x0000000083000000, 0x0000000083000000|100%| O| |TAMS 0x0000000083000000, 0x0000000083000000| Untracked +| 48|0x0000000083000000, 0x0000000083100000, 0x0000000083100000|100%| O| |TAMS 0x0000000083100000, 0x0000000083100000| Untracked +| 49|0x0000000083100000, 0x0000000083200000, 0x0000000083200000|100%|HS| |TAMS 0x0000000083200000, 0x0000000083200000| Complete +| 50|0x0000000083200000, 0x0000000083300000, 0x0000000083300000|100%|HC| |TAMS 0x0000000083300000, 0x0000000083300000| Complete +| 51|0x0000000083300000, 0x0000000083400000, 0x0000000083400000|100%|HC| |TAMS 0x0000000083400000, 0x0000000083400000| Complete +| 52|0x0000000083400000, 0x0000000083500000, 0x0000000083500000|100%|HS| |TAMS 0x0000000083500000, 0x0000000083500000| Complete +| 53|0x0000000083500000, 0x0000000083600000, 0x0000000083600000|100%|HC| |TAMS 0x0000000083600000, 0x0000000083600000| Complete +| 54|0x0000000083600000, 0x0000000083700000, 0x0000000083700000|100%| O| |TAMS 0x0000000083700000, 0x0000000083700000| Untracked +| 55|0x0000000083700000, 0x0000000083800000, 0x0000000083800000|100%| O| |TAMS 0x0000000083800000, 0x0000000083800000| Untracked +| 56|0x0000000083800000, 0x0000000083900000, 0x0000000083900000|100%|HS| |TAMS 0x0000000083900000, 0x0000000083900000| Complete +| 57|0x0000000083900000, 0x0000000083a00000, 0x0000000083a00000|100%|HC| |TAMS 0x0000000083a00000, 0x0000000083a00000| Complete +| 58|0x0000000083a00000, 0x0000000083b00000, 0x0000000083b00000|100%|HC| |TAMS 0x0000000083b00000, 0x0000000083b00000| Complete +| 59|0x0000000083b00000, 0x0000000083c00000, 0x0000000083c00000|100%|HS| |TAMS 0x0000000083c00000, 0x0000000083c00000| Complete +| 60|0x0000000083c00000, 0x0000000083d00000, 0x0000000083d00000|100%|HC| |TAMS 0x0000000083d00000, 0x0000000083d00000| Complete +| 61|0x0000000083d00000, 0x0000000083e00000, 0x0000000083e00000|100%|HC| |TAMS 0x0000000083e00000, 0x0000000083e00000| Complete +| 62|0x0000000083e00000, 0x0000000083f00000, 0x0000000083f00000|100%|HC| |TAMS 0x0000000083f00000, 0x0000000083f00000| Complete +| 63|0x0000000083f00000, 0x0000000084000000, 0x0000000084000000|100%| O| |TAMS 0x0000000084000000, 0x0000000084000000| Untracked +| 64|0x0000000084000000, 0x0000000084100000, 0x0000000084100000|100%| O| |TAMS 0x0000000084100000, 0x0000000084100000| Untracked +| 65|0x0000000084100000, 0x0000000084200000, 0x0000000084200000|100%| O| |TAMS 0x0000000084200000, 0x0000000084200000| Untracked +| 66|0x0000000084200000, 0x0000000084300000, 0x0000000084300000|100%| O| |TAMS 0x0000000084300000, 0x0000000084300000| Untracked +| 67|0x0000000084300000, 0x0000000084400000, 0x0000000084400000|100%| O| |TAMS 0x0000000084400000, 0x0000000084400000| Untracked +| 68|0x0000000084400000, 0x0000000084500000, 0x0000000084500000|100%| O| |TAMS 0x0000000084500000, 0x0000000084500000| Untracked +| 69|0x0000000084500000, 0x0000000084600000, 0x0000000084600000|100%| O| |TAMS 0x0000000084600000, 0x0000000084600000| Untracked +| 70|0x0000000084600000, 0x0000000084700000, 0x0000000084700000|100%| O| |TAMS 0x0000000084700000, 0x0000000084700000| Untracked +| 71|0x0000000084700000, 0x0000000084800000, 0x0000000084800000|100%| O| |TAMS 0x0000000084800000, 0x0000000084800000| Untracked +| 72|0x0000000084800000, 0x0000000084900000, 0x0000000084900000|100%|HS| |TAMS 0x0000000084900000, 0x0000000084900000| Complete +| 73|0x0000000084900000, 0x0000000084a00000, 0x0000000084a00000|100%|HC| |TAMS 0x0000000084a00000, 0x0000000084a00000| Complete +| 74|0x0000000084a00000, 0x0000000084b00000, 0x0000000084b00000|100%|HC| |TAMS 0x0000000084b00000, 0x0000000084b00000| Complete +| 75|0x0000000084b00000, 0x0000000084c00000, 0x0000000084c00000|100%|HC| |TAMS 0x0000000084c00000, 0x0000000084c00000| Complete +| 76|0x0000000084c00000, 0x0000000084d00000, 0x0000000084d00000|100%|HC| |TAMS 0x0000000084d00000, 0x0000000084d00000| Complete +| 77|0x0000000084d00000, 0x0000000084e00000, 0x0000000084e00000|100%| O| |TAMS 0x0000000084e00000, 0x0000000084e00000| Untracked +| 78|0x0000000084e00000, 0x0000000084f00000, 0x0000000084f00000|100%| O| |TAMS 0x0000000084f00000, 0x0000000084f00000| Untracked +| 79|0x0000000084f00000, 0x0000000085000000, 0x0000000085000000|100%| O| |TAMS 0x0000000085000000, 0x0000000085000000| Untracked +| 80|0x0000000085000000, 0x0000000085100000, 0x0000000085100000|100%| O| |TAMS 0x0000000085100000, 0x0000000085100000| Untracked +| 81|0x0000000085100000, 0x0000000085200000, 0x0000000085200000|100%| O| |TAMS 0x0000000085200000, 0x0000000085200000| Untracked +| 82|0x0000000085200000, 0x0000000085300000, 0x0000000085300000|100%| O| |TAMS 0x0000000085300000, 0x0000000085300000| Untracked +| 83|0x0000000085300000, 0x0000000085400000, 0x0000000085400000|100%|HS| |TAMS 0x0000000085400000, 0x0000000085400000| Complete +| 84|0x0000000085400000, 0x0000000085500000, 0x0000000085500000|100%|HC| |TAMS 0x0000000085500000, 0x0000000085500000| Complete +| 85|0x0000000085500000, 0x0000000085600000, 0x0000000085600000|100%|HS| |TAMS 0x0000000085600000, 0x0000000085600000| Complete +| 86|0x0000000085600000, 0x0000000085700000, 0x0000000085700000|100%|HC| |TAMS 0x0000000085700000, 0x0000000085700000| Complete +| 87|0x0000000085700000, 0x0000000085800000, 0x0000000085800000|100%|HC| |TAMS 0x0000000085800000, 0x0000000085800000| Complete +| 88|0x0000000085800000, 0x0000000085900000, 0x0000000085900000|100%|HC| |TAMS 0x0000000085900000, 0x0000000085900000| Complete +| 89|0x0000000085900000, 0x0000000085a00000, 0x0000000085a00000|100%| O| |TAMS 0x0000000085a00000, 0x0000000085a00000| Untracked +| 90|0x0000000085a00000, 0x0000000085b00000, 0x0000000085b00000|100%| O| |TAMS 0x0000000085b00000, 0x0000000085b00000| Untracked +| 91|0x0000000085b00000, 0x0000000085c00000, 0x0000000085c00000|100%| O| |TAMS 0x0000000085c00000, 0x0000000085c00000| Untracked +| 92|0x0000000085c00000, 0x0000000085d00000, 0x0000000085d00000|100%| O| |TAMS 0x0000000085d00000, 0x0000000085d00000| Untracked +| 93|0x0000000085d00000, 0x0000000085e00000, 0x0000000085e00000|100%| O| |TAMS 0x0000000085e00000, 0x0000000085e00000| Untracked +| 94|0x0000000085e00000, 0x0000000085f00000, 0x0000000085f00000|100%| O| |TAMS 0x0000000085f00000, 0x0000000085f00000| Untracked +| 95|0x0000000085f00000, 0x0000000086000000, 0x0000000086000000|100%| O| |TAMS 0x0000000086000000, 0x0000000086000000| Untracked +| 96|0x0000000086000000, 0x0000000086100000, 0x0000000086100000|100%| O| |TAMS 0x0000000086100000, 0x0000000086100000| Untracked +| 97|0x0000000086100000, 0x0000000086200000, 0x0000000086200000|100%| O| |TAMS 0x0000000086200000, 0x0000000086200000| Untracked +| 98|0x0000000086200000, 0x0000000086300000, 0x0000000086300000|100%| O| |TAMS 0x0000000086300000, 0x0000000086300000| Untracked +| 99|0x0000000086300000, 0x0000000086400000, 0x0000000086400000|100%| O| |TAMS 0x0000000086400000, 0x0000000086400000| Untracked +| 100|0x0000000086400000, 0x0000000086500000, 0x0000000086500000|100%| O| |TAMS 0x0000000086500000, 0x0000000086500000| Untracked +| 101|0x0000000086500000, 0x0000000086600000, 0x0000000086600000|100%| O| |TAMS 0x0000000086600000, 0x0000000086600000| Untracked +| 102|0x0000000086600000, 0x0000000086700000, 0x0000000086700000|100%| O| |TAMS 0x0000000086700000, 0x0000000086700000| Untracked +| 103|0x0000000086700000, 0x0000000086800000, 0x0000000086800000|100%| O| |TAMS 0x0000000086800000, 0x0000000086800000| Untracked +| 104|0x0000000086800000, 0x0000000086900000, 0x0000000086900000|100%|HS| |TAMS 0x0000000086800000, 0x0000000086900000| Complete +| 105|0x0000000086900000, 0x0000000086a00000, 0x0000000086a00000|100%|HC| |TAMS 0x0000000086900000, 0x0000000086a00000| Complete +| 106|0x0000000086a00000, 0x0000000086b00000, 0x0000000086b00000|100%|HS| |TAMS 0x0000000086a00000, 0x0000000086b00000| Complete +| 107|0x0000000086b00000, 0x0000000086c00000, 0x0000000086c00000|100%|HC| |TAMS 0x0000000086b00000, 0x0000000086c00000| Complete +| 108|0x0000000086c00000, 0x0000000086d00000, 0x0000000086d00000|100%|HC| |TAMS 0x0000000086c00000, 0x0000000086d00000| Complete +| 109|0x0000000086d00000, 0x0000000086e00000, 0x0000000086e00000|100%|HS| |TAMS 0x0000000086d00000, 0x0000000086e00000| Complete +| 110|0x0000000086e00000, 0x0000000086f00000, 0x0000000086f00000|100%|HC| |TAMS 0x0000000086e00000, 0x0000000086f00000| Complete +| 111|0x0000000086f00000, 0x0000000087000000, 0x0000000087000000|100%|HC| |TAMS 0x0000000086f00000, 0x0000000087000000| Complete +| 112|0x0000000087000000, 0x0000000087100000, 0x0000000087100000|100%|HS| |TAMS 0x0000000087000000, 0x0000000087100000| Complete +| 113|0x0000000087100000, 0x0000000087200000, 0x0000000087200000|100%|HC| |TAMS 0x0000000087100000, 0x0000000087200000| Complete +| 114|0x0000000087200000, 0x0000000087300000, 0x0000000087300000|100%|HC| |TAMS 0x0000000087200000, 0x0000000087300000| Complete +| 115|0x0000000087300000, 0x0000000087400000, 0x0000000087400000|100%|HC| |TAMS 0x0000000087300000, 0x0000000087400000| Complete +| 116|0x0000000087400000, 0x0000000087500000, 0x0000000087500000|100%|HS| |TAMS 0x0000000087400000, 0x0000000087500000| Complete +| 117|0x0000000087500000, 0x0000000087600000, 0x0000000087600000|100%|HC| |TAMS 0x0000000087500000, 0x0000000087600000| Complete +| 118|0x0000000087600000, 0x0000000087700000, 0x0000000087700000|100%|HC| |TAMS 0x0000000087600000, 0x0000000087700000| Complete +| 119|0x0000000087700000, 0x0000000087800000, 0x0000000087800000|100%|HC| |TAMS 0x0000000087700000, 0x0000000087800000| Complete +| 120|0x0000000087800000, 0x0000000087900000, 0x0000000087900000|100%|HC| |TAMS 0x0000000087800000, 0x0000000087900000| Complete +| 121|0x0000000087900000, 0x0000000087a00000, 0x0000000087a00000|100%|HS| |TAMS 0x0000000087900000, 0x0000000087a00000| Complete +| 122|0x0000000087a00000, 0x0000000087b00000, 0x0000000087b00000|100%| O| |TAMS 0x0000000087a00000, 0x0000000087b00000| Untracked +| 123|0x0000000087b00000, 0x0000000087c00000, 0x0000000087c00000|100%| O| |TAMS 0x0000000087b00000, 0x0000000087c00000| Untracked +| 124|0x0000000087c00000, 0x0000000087d00000, 0x0000000087d00000|100%| O| |TAMS 0x0000000087c00000, 0x0000000087d00000| Untracked +| 125|0x0000000087d00000, 0x0000000087e00000, 0x0000000087e00000|100%| O| |TAMS 0x0000000087d00000, 0x0000000087e00000| Untracked +| 126|0x0000000087e00000, 0x0000000087f00000, 0x0000000087f00000|100%| O| |TAMS 0x0000000087e00000, 0x0000000087f00000| Untracked +| 127|0x0000000087f00000, 0x0000000088000000, 0x0000000088000000|100%| O| |TAMS 0x0000000087f00000, 0x0000000088000000| Untracked +| 128|0x0000000088000000, 0x0000000088100000, 0x0000000088100000|100%| O| |TAMS 0x0000000088000000, 0x0000000088100000| Untracked +| 129|0x0000000088100000, 0x0000000088200000, 0x0000000088200000|100%| O| |TAMS 0x0000000088100000, 0x0000000088200000| Untracked +| 130|0x0000000088200000, 0x0000000088300000, 0x0000000088300000|100%| O| |TAMS 0x0000000088200000, 0x0000000088300000| Untracked +| 131|0x0000000088300000, 0x0000000088400000, 0x0000000088400000|100%| O| |TAMS 0x0000000088300000, 0x0000000088400000| Untracked +| 132|0x0000000088400000, 0x0000000088500000, 0x0000000088500000|100%| O| |TAMS 0x0000000088400000, 0x0000000088500000| Untracked +| 133|0x0000000088500000, 0x0000000088600000, 0x0000000088600000|100%| O| |TAMS 0x0000000088500000, 0x0000000088600000| Untracked +| 134|0x0000000088600000, 0x0000000088600000, 0x0000000088700000| 0%| F| |TAMS 0x0000000088600000, 0x0000000088600000| Untracked +| 135|0x0000000088700000, 0x0000000088700000, 0x0000000088800000| 0%| F| |TAMS 0x0000000088700000, 0x0000000088700000| Untracked +| 136|0x0000000088800000, 0x0000000088800000, 0x0000000088900000| 0%| F| |TAMS 0x0000000088800000, 0x0000000088800000| Untracked +| 137|0x0000000088900000, 0x0000000088900000, 0x0000000088a00000| 0%| F| |TAMS 0x0000000088900000, 0x0000000088900000| Untracked +| 138|0x0000000088a00000, 0x0000000088a00000, 0x0000000088b00000| 0%| F| |TAMS 0x0000000088a00000, 0x0000000088a00000| Untracked +| 139|0x0000000088b00000, 0x0000000088b00000, 0x0000000088c00000| 0%| F| |TAMS 0x0000000088b00000, 0x0000000088b00000| Untracked +| 140|0x0000000088c00000, 0x0000000088c00000, 0x0000000088d00000| 0%| F| |TAMS 0x0000000088c00000, 0x0000000088c00000| Untracked +| 141|0x0000000088d00000, 0x0000000088d00000, 0x0000000088e00000| 0%| F| |TAMS 0x0000000088d00000, 0x0000000088d00000| Untracked +| 142|0x0000000088e00000, 0x0000000088e00000, 0x0000000088f00000| 0%| F| |TAMS 0x0000000088e00000, 0x0000000088e00000| Untracked +| 143|0x0000000088f00000, 0x0000000088f00000, 0x0000000089000000| 0%| F| |TAMS 0x0000000088f00000, 0x0000000088f00000| Untracked +| 144|0x0000000089000000, 0x0000000089000000, 0x0000000089100000| 0%| F| |TAMS 0x0000000089000000, 0x0000000089000000| Untracked +| 145|0x0000000089100000, 0x0000000089100000, 0x0000000089200000| 0%| F| |TAMS 0x0000000089100000, 0x0000000089100000| Untracked +| 146|0x0000000089200000, 0x0000000089200000, 0x0000000089300000| 0%| F| |TAMS 0x0000000089200000, 0x0000000089200000| Untracked +| 147|0x0000000089300000, 0x0000000089300000, 0x0000000089400000| 0%| F| |TAMS 0x0000000089300000, 0x0000000089300000| Untracked +| 148|0x0000000089400000, 0x0000000089400000, 0x0000000089500000| 0%| F| |TAMS 0x0000000089400000, 0x0000000089400000| Untracked +| 149|0x0000000089500000, 0x0000000089500000, 0x0000000089600000| 0%| F| |TAMS 0x0000000089500000, 0x0000000089500000| Untracked +| 150|0x0000000089600000, 0x0000000089600000, 0x0000000089700000| 0%| F| |TAMS 0x0000000089600000, 0x0000000089600000| Untracked +| 151|0x0000000089700000, 0x0000000089700000, 0x0000000089800000| 0%| F| |TAMS 0x0000000089700000, 0x0000000089700000| Untracked +| 152|0x0000000089800000, 0x0000000089800000, 0x0000000089900000| 0%| F| |TAMS 0x0000000089800000, 0x0000000089800000| Untracked +| 153|0x0000000089900000, 0x0000000089900000, 0x0000000089a00000| 0%| F| |TAMS 0x0000000089900000, 0x0000000089900000| Untracked +| 154|0x0000000089a00000, 0x0000000089a00000, 0x0000000089b00000| 0%| F| |TAMS 0x0000000089a00000, 0x0000000089a00000| Untracked +| 155|0x0000000089b00000, 0x0000000089b00000, 0x0000000089c00000| 0%| F| |TAMS 0x0000000089b00000, 0x0000000089b00000| Untracked +| 156|0x0000000089c00000, 0x0000000089c00000, 0x0000000089d00000| 0%| F| |TAMS 0x0000000089c00000, 0x0000000089c00000| Untracked +| 157|0x0000000089d00000, 0x0000000089d00000, 0x0000000089e00000| 0%| F| |TAMS 0x0000000089d00000, 0x0000000089d00000| Untracked +| 158|0x0000000089e00000, 0x0000000089e00000, 0x0000000089f00000| 0%| F| |TAMS 0x0000000089e00000, 0x0000000089e00000| Untracked +| 159|0x0000000089f00000, 0x0000000089f00000, 0x000000008a000000| 0%| F| |TAMS 0x0000000089f00000, 0x0000000089f00000| Untracked +| 160|0x000000008a000000, 0x000000008a000000, 0x000000008a100000| 0%| F| |TAMS 0x000000008a000000, 0x000000008a000000| Untracked +| 161|0x000000008a100000, 0x000000008a100000, 0x000000008a200000| 0%| F| |TAMS 0x000000008a100000, 0x000000008a100000| Untracked +| 162|0x000000008a200000, 0x000000008a200000, 0x000000008a300000| 0%| F| |TAMS 0x000000008a200000, 0x000000008a200000| Untracked +| 163|0x000000008a300000, 0x000000008a300000, 0x000000008a400000| 0%| F| |TAMS 0x000000008a300000, 0x000000008a300000| Untracked +| 164|0x000000008a400000, 0x000000008a400000, 0x000000008a500000| 0%| F| |TAMS 0x000000008a400000, 0x000000008a400000| Untracked +| 165|0x000000008a500000, 0x000000008a500000, 0x000000008a600000| 0%| F| |TAMS 0x000000008a500000, 0x000000008a500000| Untracked +| 166|0x000000008a600000, 0x000000008a600000, 0x000000008a700000| 0%| F| |TAMS 0x000000008a600000, 0x000000008a600000| Untracked +| 167|0x000000008a700000, 0x000000008a700000, 0x000000008a800000| 0%| F| |TAMS 0x000000008a700000, 0x000000008a700000| Untracked +| 168|0x000000008a800000, 0x000000008a800000, 0x000000008a900000| 0%| F| |TAMS 0x000000008a800000, 0x000000008a800000| Untracked +| 169|0x000000008a900000, 0x000000008a900000, 0x000000008aa00000| 0%| F| |TAMS 0x000000008a900000, 0x000000008a900000| Untracked +| 170|0x000000008aa00000, 0x000000008aa00000, 0x000000008ab00000| 0%| F| |TAMS 0x000000008aa00000, 0x000000008aa00000| Untracked +| 171|0x000000008ab00000, 0x000000008ab00000, 0x000000008ac00000| 0%| F| |TAMS 0x000000008ab00000, 0x000000008ab00000| Untracked +| 172|0x000000008ac00000, 0x000000008ac00000, 0x000000008ad00000| 0%| F| |TAMS 0x000000008ac00000, 0x000000008ac00000| Untracked +| 173|0x000000008ad00000, 0x000000008ad00000, 0x000000008ae00000| 0%| F| |TAMS 0x000000008ad00000, 0x000000008ad00000| Untracked +| 174|0x000000008ae00000, 0x000000008ae00000, 0x000000008af00000| 0%| F| |TAMS 0x000000008ae00000, 0x000000008ae00000| Untracked +| 175|0x000000008af00000, 0x000000008af00000, 0x000000008b000000| 0%| F| |TAMS 0x000000008af00000, 0x000000008af00000| Untracked +| 176|0x000000008b000000, 0x000000008b000000, 0x000000008b100000| 0%| F| |TAMS 0x000000008b000000, 0x000000008b000000| Untracked +| 177|0x000000008b100000, 0x000000008b100000, 0x000000008b200000| 0%| F| |TAMS 0x000000008b100000, 0x000000008b100000| Untracked +| 178|0x000000008b200000, 0x000000008b200000, 0x000000008b300000| 0%| F| |TAMS 0x000000008b200000, 0x000000008b200000| Untracked +| 179|0x000000008b300000, 0x000000008b300000, 0x000000008b400000| 0%| F| |TAMS 0x000000008b300000, 0x000000008b300000| Untracked +| 180|0x000000008b400000, 0x000000008b400000, 0x000000008b500000| 0%| F| |TAMS 0x000000008b400000, 0x000000008b400000| Untracked +| 181|0x000000008b500000, 0x000000008b500000, 0x000000008b600000| 0%| F| |TAMS 0x000000008b500000, 0x000000008b500000| Untracked +| 182|0x000000008b600000, 0x000000008b600000, 0x000000008b700000| 0%| F| |TAMS 0x000000008b600000, 0x000000008b600000| Untracked +| 183|0x000000008b700000, 0x000000008b700000, 0x000000008b800000| 0%| F| |TAMS 0x000000008b700000, 0x000000008b700000| Untracked +| 184|0x000000008b800000, 0x000000008b800000, 0x000000008b900000| 0%| F| |TAMS 0x000000008b800000, 0x000000008b800000| Untracked +| 185|0x000000008b900000, 0x000000008b900000, 0x000000008ba00000| 0%| F| |TAMS 0x000000008b900000, 0x000000008b900000| Untracked +| 186|0x000000008ba00000, 0x000000008ba00000, 0x000000008bb00000| 0%| F| |TAMS 0x000000008ba00000, 0x000000008ba00000| Untracked +| 187|0x000000008bb00000, 0x000000008bb00000, 0x000000008bc00000| 0%| F| |TAMS 0x000000008bb00000, 0x000000008bb00000| Untracked +| 188|0x000000008bc00000, 0x000000008bc00000, 0x000000008bd00000| 0%| F| |TAMS 0x000000008bc00000, 0x000000008bc00000| Untracked +| 189|0x000000008bd00000, 0x000000008bd00000, 0x000000008be00000| 0%| F| |TAMS 0x000000008bd00000, 0x000000008bd00000| Untracked +| 190|0x000000008be00000, 0x000000008be00000, 0x000000008bf00000| 0%| F| |TAMS 0x000000008be00000, 0x000000008be00000| Untracked +| 191|0x000000008bf00000, 0x000000008bf00000, 0x000000008c000000| 0%| F| |TAMS 0x000000008bf00000, 0x000000008bf00000| Untracked +| 192|0x000000008c000000, 0x000000008c000000, 0x000000008c100000| 0%| F| |TAMS 0x000000008c000000, 0x000000008c000000| Untracked +| 193|0x000000008c100000, 0x000000008c100000, 0x000000008c200000| 0%| F| |TAMS 0x000000008c100000, 0x000000008c100000| Untracked +| 194|0x000000008c200000, 0x000000008c200000, 0x000000008c300000| 0%| F| |TAMS 0x000000008c200000, 0x000000008c200000| Untracked +| 195|0x000000008c300000, 0x000000008c300000, 0x000000008c400000| 0%| F| |TAMS 0x000000008c300000, 0x000000008c300000| Untracked +| 196|0x000000008c400000, 0x000000008c400000, 0x000000008c500000| 0%| F| |TAMS 0x000000008c400000, 0x000000008c400000| Untracked +| 197|0x000000008c500000, 0x000000008c500000, 0x000000008c600000| 0%| F| |TAMS 0x000000008c500000, 0x000000008c500000| Untracked +| 198|0x000000008c600000, 0x000000008c600000, 0x000000008c700000| 0%| F| |TAMS 0x000000008c600000, 0x000000008c600000| Untracked +| 199|0x000000008c700000, 0x000000008c700000, 0x000000008c800000| 0%| F| |TAMS 0x000000008c700000, 0x000000008c700000| Untracked +| 200|0x000000008c800000, 0x000000008c800000, 0x000000008c900000| 0%| F| |TAMS 0x000000008c800000, 0x000000008c800000| Untracked +| 201|0x000000008c900000, 0x000000008c900000, 0x000000008ca00000| 0%| F| |TAMS 0x000000008c900000, 0x000000008c900000| Untracked +| 202|0x000000008ca00000, 0x000000008ca00000, 0x000000008cb00000| 0%| F| |TAMS 0x000000008ca00000, 0x000000008ca00000| Untracked +| 203|0x000000008cb00000, 0x000000008cb00000, 0x000000008cc00000| 0%| F| |TAMS 0x000000008cb00000, 0x000000008cb00000| Untracked +| 204|0x000000008cc00000, 0x000000008cc00000, 0x000000008cd00000| 0%| F| |TAMS 0x000000008cc00000, 0x000000008cc00000| Untracked +| 205|0x000000008cd00000, 0x000000008cd00000, 0x000000008ce00000| 0%| F| |TAMS 0x000000008cd00000, 0x000000008cd00000| Untracked +| 206|0x000000008ce00000, 0x000000008ce00000, 0x000000008cf00000| 0%| F| |TAMS 0x000000008ce00000, 0x000000008ce00000| Untracked +| 207|0x000000008cf00000, 0x000000008cf00000, 0x000000008d000000| 0%| F| |TAMS 0x000000008cf00000, 0x000000008cf00000| Untracked +| 208|0x000000008d000000, 0x000000008d000000, 0x000000008d100000| 0%| F| |TAMS 0x000000008d000000, 0x000000008d000000| Untracked +| 209|0x000000008d100000, 0x000000008d100000, 0x000000008d200000| 0%| F| |TAMS 0x000000008d100000, 0x000000008d100000| Untracked +| 210|0x000000008d200000, 0x000000008d200000, 0x000000008d300000| 0%| F| |TAMS 0x000000008d200000, 0x000000008d200000| Untracked +| 211|0x000000008d300000, 0x000000008d300000, 0x000000008d400000| 0%| F| |TAMS 0x000000008d300000, 0x000000008d300000| Untracked +| 212|0x000000008d400000, 0x000000008d400000, 0x000000008d500000| 0%| F| |TAMS 0x000000008d400000, 0x000000008d400000| Untracked +| 213|0x000000008d500000, 0x000000008d500000, 0x000000008d600000| 0%| F| |TAMS 0x000000008d500000, 0x000000008d500000| Untracked +| 214|0x000000008d600000, 0x000000008d600000, 0x000000008d700000| 0%| F| |TAMS 0x000000008d600000, 0x000000008d600000| Untracked +| 215|0x000000008d700000, 0x000000008d700000, 0x000000008d800000| 0%| F| |TAMS 0x000000008d700000, 0x000000008d700000| Untracked +| 216|0x000000008d800000, 0x000000008d800000, 0x000000008d900000| 0%| F| |TAMS 0x000000008d800000, 0x000000008d800000| Untracked +| 217|0x000000008d900000, 0x000000008d900000, 0x000000008da00000| 0%| F| |TAMS 0x000000008d900000, 0x000000008d900000| Untracked +| 218|0x000000008da00000, 0x000000008da00000, 0x000000008db00000| 0%| F| |TAMS 0x000000008da00000, 0x000000008da00000| Untracked +| 219|0x000000008db00000, 0x000000008db00000, 0x000000008dc00000| 0%| F| |TAMS 0x000000008db00000, 0x000000008db00000| Untracked +| 220|0x000000008dc00000, 0x000000008dc00000, 0x000000008dd00000| 0%| F| |TAMS 0x000000008dc00000, 0x000000008dc00000| Untracked +| 221|0x000000008dd00000, 0x000000008dd00000, 0x000000008de00000| 0%| F| |TAMS 0x000000008dd00000, 0x000000008dd00000| Untracked +| 222|0x000000008de00000, 0x000000008de00000, 0x000000008df00000| 0%| F| |TAMS 0x000000008de00000, 0x000000008de00000| Untracked +| 223|0x000000008df00000, 0x000000008df00000, 0x000000008e000000| 0%| F| |TAMS 0x000000008df00000, 0x000000008df00000| Untracked +| 224|0x000000008e000000, 0x000000008e000000, 0x000000008e100000| 0%| F| |TAMS 0x000000008e000000, 0x000000008e000000| Untracked +| 225|0x000000008e100000, 0x000000008e100000, 0x000000008e200000| 0%| F| |TAMS 0x000000008e100000, 0x000000008e100000| Untracked +| 226|0x000000008e200000, 0x000000008e200000, 0x000000008e300000| 0%| F| |TAMS 0x000000008e200000, 0x000000008e200000| Untracked +| 227|0x000000008e300000, 0x000000008e300000, 0x000000008e400000| 0%| F| |TAMS 0x000000008e300000, 0x000000008e300000| Untracked +| 228|0x000000008e400000, 0x000000008e400000, 0x000000008e500000| 0%| F| |TAMS 0x000000008e400000, 0x000000008e400000| Untracked +| 229|0x000000008e500000, 0x000000008e500000, 0x000000008e600000| 0%| F| |TAMS 0x000000008e500000, 0x000000008e500000| Untracked +| 230|0x000000008e600000, 0x000000008e600000, 0x000000008e700000| 0%| F| |TAMS 0x000000008e600000, 0x000000008e600000| Untracked +| 231|0x000000008e700000, 0x000000008e700000, 0x000000008e800000| 0%| F| |TAMS 0x000000008e700000, 0x000000008e700000| Untracked +| 232|0x000000008e800000, 0x000000008e800000, 0x000000008e900000| 0%| F| |TAMS 0x000000008e800000, 0x000000008e800000| Untracked +| 233|0x000000008e900000, 0x000000008e900000, 0x000000008ea00000| 0%| F| |TAMS 0x000000008e900000, 0x000000008e900000| Untracked +| 234|0x000000008ea00000, 0x000000008ea00000, 0x000000008eb00000| 0%| F| |TAMS 0x000000008ea00000, 0x000000008ea00000| Untracked +| 235|0x000000008eb00000, 0x000000008eb00000, 0x000000008ec00000| 0%| F| |TAMS 0x000000008eb00000, 0x000000008eb00000| Untracked +| 236|0x000000008ec00000, 0x000000008ec00000, 0x000000008ed00000| 0%| F| |TAMS 0x000000008ec00000, 0x000000008ec00000| Untracked +| 237|0x000000008ed00000, 0x000000008ed00000, 0x000000008ee00000| 0%| F| |TAMS 0x000000008ed00000, 0x000000008ed00000| Untracked +| 238|0x000000008ee00000, 0x000000008ee00000, 0x000000008ef00000| 0%| F| |TAMS 0x000000008ee00000, 0x000000008ee00000| Untracked +| 239|0x000000008ef00000, 0x000000008ef00000, 0x000000008f000000| 0%| F| |TAMS 0x000000008ef00000, 0x000000008ef00000| Untracked +| 240|0x000000008f000000, 0x000000008f000000, 0x000000008f100000| 0%| F| |TAMS 0x000000008f000000, 0x000000008f000000| Untracked +| 241|0x000000008f100000, 0x000000008f100000, 0x000000008f200000| 0%| F| |TAMS 0x000000008f100000, 0x000000008f100000| Untracked +| 242|0x000000008f200000, 0x000000008f200000, 0x000000008f300000| 0%| F| |TAMS 0x000000008f200000, 0x000000008f200000| Untracked +| 243|0x000000008f300000, 0x000000008f300000, 0x000000008f400000| 0%| F| |TAMS 0x000000008f300000, 0x000000008f300000| Untracked +| 244|0x000000008f400000, 0x000000008f400000, 0x000000008f500000| 0%| F| |TAMS 0x000000008f400000, 0x000000008f400000| Untracked +| 245|0x000000008f500000, 0x000000008f500000, 0x000000008f600000| 0%| F| |TAMS 0x000000008f500000, 0x000000008f500000| Untracked +| 246|0x000000008f600000, 0x000000008f600000, 0x000000008f700000| 0%| F| |TAMS 0x000000008f600000, 0x000000008f600000| Untracked +| 247|0x000000008f700000, 0x000000008f700000, 0x000000008f800000| 0%| F| |TAMS 0x000000008f700000, 0x000000008f700000| Untracked +| 248|0x000000008f800000, 0x000000008f800000, 0x000000008f900000| 0%| F| |TAMS 0x000000008f800000, 0x000000008f800000| Untracked +| 249|0x000000008f900000, 0x000000008f900000, 0x000000008fa00000| 0%| F| |TAMS 0x000000008f900000, 0x000000008f900000| Untracked +| 250|0x000000008fa00000, 0x000000008fa00000, 0x000000008fb00000| 0%| F| |TAMS 0x000000008fa00000, 0x000000008fa00000| Untracked +| 251|0x000000008fb00000, 0x000000008fb00000, 0x000000008fc00000| 0%| F| |TAMS 0x000000008fb00000, 0x000000008fb00000| Untracked +| 252|0x000000008fc00000, 0x000000008fc00000, 0x000000008fd00000| 0%| F| |TAMS 0x000000008fc00000, 0x000000008fc00000| Untracked +| 253|0x000000008fd00000, 0x000000008fd00000, 0x000000008fe00000| 0%| F| |TAMS 0x000000008fd00000, 0x000000008fd00000| Untracked +| 254|0x000000008fe00000, 0x000000008fe00000, 0x000000008ff00000| 0%| F| |TAMS 0x000000008fe00000, 0x000000008fe00000| Untracked +| 255|0x000000008ff00000, 0x000000008ff00000, 0x0000000090000000| 0%| F| |TAMS 0x000000008ff00000, 0x000000008ff00000| Untracked +| 256|0x0000000090000000, 0x0000000090000000, 0x0000000090100000| 0%| F| |TAMS 0x0000000090000000, 0x0000000090000000| Untracked +| 257|0x0000000090100000, 0x0000000090100000, 0x0000000090200000| 0%| F| |TAMS 0x0000000090100000, 0x0000000090100000| Untracked +| 258|0x0000000090200000, 0x0000000090200000, 0x0000000090300000| 0%| F| |TAMS 0x0000000090200000, 0x0000000090200000| Untracked +| 259|0x0000000090300000, 0x0000000090300000, 0x0000000090400000| 0%| F| |TAMS 0x0000000090300000, 0x0000000090300000| Untracked +| 260|0x0000000090400000, 0x0000000090400000, 0x0000000090500000| 0%| F| |TAMS 0x0000000090400000, 0x0000000090400000| Untracked +| 261|0x0000000090500000, 0x0000000090500000, 0x0000000090600000| 0%| F| |TAMS 0x0000000090500000, 0x0000000090500000| Untracked +| 262|0x0000000090600000, 0x0000000090600000, 0x0000000090700000| 0%| F| |TAMS 0x0000000090600000, 0x0000000090600000| Untracked +| 263|0x0000000090700000, 0x0000000090700000, 0x0000000090800000| 0%| F| |TAMS 0x0000000090700000, 0x0000000090700000| Untracked +| 264|0x0000000090800000, 0x0000000090800000, 0x0000000090900000| 0%| F| |TAMS 0x0000000090800000, 0x0000000090800000| Untracked +| 265|0x0000000090900000, 0x0000000090900000, 0x0000000090a00000| 0%| F| |TAMS 0x0000000090900000, 0x0000000090900000| Untracked +| 266|0x0000000090a00000, 0x0000000090a00000, 0x0000000090b00000| 0%| F| |TAMS 0x0000000090a00000, 0x0000000090a00000| Untracked +| 267|0x0000000090b00000, 0x0000000090b00000, 0x0000000090c00000| 0%| F| |TAMS 0x0000000090b00000, 0x0000000090b00000| Untracked +| 268|0x0000000090c00000, 0x0000000090c00000, 0x0000000090d00000| 0%| F| |TAMS 0x0000000090c00000, 0x0000000090c00000| Untracked +| 269|0x0000000090d00000, 0x0000000090d00000, 0x0000000090e00000| 0%| F| |TAMS 0x0000000090d00000, 0x0000000090d00000| Untracked +| 270|0x0000000090e00000, 0x0000000090e00000, 0x0000000090f00000| 0%| F| |TAMS 0x0000000090e00000, 0x0000000090e00000| Untracked +| 271|0x0000000090f00000, 0x0000000090fb8a30, 0x0000000091000000| 72%| S|CS|TAMS 0x0000000090f00000, 0x0000000090f00000| Complete +| 272|0x0000000091000000, 0x0000000091000000, 0x0000000091100000| 0%| F| |TAMS 0x0000000091000000, 0x0000000091000000| Untracked +| 273|0x0000000091100000, 0x0000000091100000, 0x0000000091200000| 0%| F| |TAMS 0x0000000091100000, 0x0000000091100000| Untracked +| 274|0x0000000091200000, 0x0000000091200000, 0x0000000091300000| 0%| F| |TAMS 0x0000000091200000, 0x0000000091200000| Untracked +| 275|0x0000000091300000, 0x0000000091300000, 0x0000000091400000| 0%| F| |TAMS 0x0000000091300000, 0x0000000091300000| Untracked +| 276|0x0000000091400000, 0x0000000091400000, 0x0000000091500000| 0%| F| |TAMS 0x0000000091400000, 0x0000000091400000| Untracked +| 277|0x0000000091500000, 0x0000000091500000, 0x0000000091600000| 0%| F| |TAMS 0x0000000091500000, 0x0000000091500000| Untracked + +Card table byte_map: [0x000002252a680000,0x000002252aa80000] _byte_map_base: 0x000002252a280000 + +Marking Bits (Prev, Next): (CMBitMap*) 0x0000022517b9ab60, (CMBitMap*) 0x0000022517b9ab28 + Prev Bits: [0x000002252ce80000, 0x000002252ee80000) + Next Bits: [0x000002252ae80000, 0x000002252ce80000) + +Polling page: 0x0000022515b10000 + +Metaspace: + +Usage: + Non-class: 80.88 MB capacity, 79.13 MB ( 98%) used, 1.46 MB ( 2%) free+waste, 302.69 KB ( <1%) overhead. + Class: 13.36 MB capacity, 12.30 MB ( 92%) used, 941.90 KB ( 7%) free+waste, 145.25 KB ( 1%) overhead. + Both: 94.24 MB capacity, 91.42 MB ( 97%) used, 2.38 MB ( 3%) free+waste, 447.94 KB ( <1%) overhead. + +Virtual space: + Non-class space: 90.00 MB reserved, 80.92 MB ( 90%) committed + Class space: 1.00 GB reserved, 13.38 MB ( 1%) committed + Both: 1.09 GB reserved, 94.30 MB ( 8%) committed + +Chunk freelists: + Non-Class: 42.00 KB + Class: 18.00 KB + Both: 60.00 KB + +MaxMetaspaceSize: 17179869184.00 GB +CompressedClassSpaceSize: 1.00 GB +Initial GC threshold: 20.80 MB +Current GC threshold: 146.24 MB +CDS: off + +CodeHeap 'non-profiled nmethods': size=120064Kb used=5951Kb max_used=5951Kb free=114112Kb + bounds [0x0000022523140000, 0x0000022523710000, 0x000002252a680000] +CodeHeap 'profiled nmethods': size=120000Kb used=21698Kb max_used=21698Kb free=98301Kb + bounds [0x000002251bc10000, 0x000002251d150000, 0x0000022523140000] +CodeHeap 'non-nmethods': size=5696Kb used=2390Kb max_used=2412Kb free=3305Kb + bounds [0x000002251b680000, 0x000002251b8f0000, 0x000002251bc10000] + total_blobs=10637 nmethods=9720 adapters=829 + compilation: enabled + stopped_count=0, restarted_count=0 + full_count=0 + +Compilation events (20 events): +Event: 79.992 Thread 0x0000022531a68800 nmethod 9783 0x000002251d13ca10 code [0x000002251d13cda0, 0x000002251d13ee58] +Event: 80.099 Thread 0x0000022531a66800 nmethod 9770 0x0000022523707d10 code [0x0000022523707f60, 0x000002252370a340] +Event: 80.100 Thread 0x0000022531a66800 9771 4 java.lang.StringUTF16::compress (50 bytes) +Event: 80.106 Thread 0x0000022531a66800 nmethod 9771 0x000002252370b210 code [0x000002252370b3a0, 0x000002252370b698] +Event: 80.107 Thread 0x0000022531a66800 9776 % 4 sun.nio.cs.UTF_8$Decoder::decodeArrayLoop @ 106 (691 bytes) +Event: 80.149 Thread 0x0000022531a68800 9784 2 sun.net.util.URLUtil::urlNoFragString (114 bytes) +Event: 80.150 Thread 0x0000022531a66800 nmethod 9776% 0x000002252370b790 code [0x000002252370b9e0, 0x000002252370c7b8] +Event: 80.151 Thread 0x0000022531a66800 9774 4 java.lang.String::startsWith (138 bytes) +Event: 80.151 Thread 0x0000022531a68800 nmethod 9784 0x000002251d13f890 code [0x000002251d13fb00, 0x000002251d140058] +Event: 80.151 Thread 0x0000022531a68800 9785 2 java.net.URL::getDefaultPort (8 bytes) +Event: 80.152 Thread 0x0000022531a68800 nmethod 9785 0x000002251d140390 code [0x000002251d140540, 0x000002251d140668] +Event: 80.157 Thread 0x0000022531a66800 nmethod 9774 0x000002252370d590 code [0x000002252370d720, 0x000002252370d918] +Event: 80.158 Thread 0x0000022531a66800 9773 4 java.lang.String::startsWith (7 bytes) +Event: 80.164 Thread 0x0000022531a66800 nmethod 9773 0x000002252370da90 code [0x000002252370dc20, 0x000002252370ddf8] +Event: 80.191 Thread 0x0000022531a66800 9786 4 java.lang.ClassLoader::preDefineClass (116 bytes) +Event: 80.241 Thread 0x0000022531a66800 nmethod 9786 0x000002252370df90 code [0x000002252370e1a0, 0x000002252370efc8] +Event: 80.242 Thread 0x0000022531a66800 9787 4 java.lang.String::hashCode (49 bytes) +Event: 80.250 Thread 0x0000022531a66800 nmethod 9787 0x000002252370f890 code [0x000002252370fa20, 0x000002252370fc78] +Event: 80.281 Thread 0x0000022531a68800 9788 3 org.slf4j.impl.StaticLoggerBinder::getSingleton (4 bytes) +Event: 80.281 Thread 0x0000022531a68800 nmethod 9788 0x000002251d140710 code [0x000002251d1408c0, 0x000002251d1409b8] + +GC Heap History (20 events): +Event: 40.469 GC heap before +{Heap before GC invocations=56 (full 0): + garbage-first heap total 176128K, used 133402K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 55 young (56320K), 4 survivors (4096K) + Metaspace used 56357K, capacity 58190K, committed 58416K, reserved 1099776K + class space used 7136K, capacity 7764K, committed 7808K, reserved 1048576K +} +Event: 40.493 GC heap after +{Heap after GC invocations=57 (full 0): + garbage-first heap total 176128K, used 85256K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 7 young (7168K), 7 survivors (7168K) + Metaspace used 56357K, capacity 58190K, committed 58416K, reserved 1099776K + class space used 7136K, capacity 7764K, committed 7808K, reserved 1048576K +} +Event: 43.393 GC heap before +{Heap before GC invocations=57 (full 0): + garbage-first heap total 176128K, used 142600K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 63 young (64512K), 7 survivors (7168K) + Metaspace used 61762K, capacity 63845K, committed 64048K, reserved 1103872K + class space used 7975K, capacity 8751K, committed 8832K, reserved 1048576K +} +Event: 43.441 GC heap after +{Heap after GC invocations=58 (full 0): + garbage-first heap total 176128K, used 87003K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 6 young (6144K), 6 survivors (6144K) + Metaspace used 61762K, capacity 63845K, committed 64048K, reserved 1103872K + class space used 7975K, capacity 8751K, committed 8832K, reserved 1048576K +} +Event: 45.839 GC heap before +{Heap before GC invocations=58 (full 0): + garbage-first heap total 176128K, used 144347K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 63 young (64512K), 6 survivors (6144K) + Metaspace used 64728K, capacity 67011K, committed 67120K, reserved 1107968K + class space used 8426K, capacity 9269K, committed 9344K, reserved 1048576K +} +Event: 45.877 GC heap after +{Heap after GC invocations=59 (full 0): + garbage-first heap total 176128K, used 89690K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 5 young (5120K), 5 survivors (5120K) + Metaspace used 64728K, capacity 67011K, committed 67120K, reserved 1107968K + class space used 8426K, capacity 9269K, committed 9344K, reserved 1048576K +} +Event: 48.274 GC heap before +{Heap before GC invocations=60 (full 0): + garbage-first heap total 176128K, used 153178K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 61 young (62464K), 5 survivors (5120K) + Metaspace used 69343K, capacity 71735K, committed 71856K, reserved 1112064K + class space used 9018K, capacity 9923K, committed 9984K, reserved 1048576K +} +Event: 48.337 GC heap after +{Heap after GC invocations=61 (full 0): + garbage-first heap total 211968K, used 99725K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 7 young (7168K), 7 survivors (7168K) + Metaspace used 69343K, capacity 71735K, committed 71856K, reserved 1112064K + class space used 9018K, capacity 9923K, committed 9984K, reserved 1048576K +} +Event: 52.007 GC heap before +{Heap before GC invocations=61 (full 0): + garbage-first heap total 211968K, used 167309K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 73 young (74752K), 7 survivors (7168K) + Metaspace used 74110K, capacity 76496K, committed 76848K, reserved 1116160K + class space used 9633K, capacity 10505K, committed 10624K, reserved 1048576K +} +Event: 52.081 GC heap after +{Heap after GC invocations=62 (full 0): + garbage-first heap total 211968K, used 102211K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 6 young (6144K), 6 survivors (6144K) + Metaspace used 74110K, capacity 76496K, committed 76848K, reserved 1116160K + class space used 9633K, capacity 10505K, committed 10624K, reserved 1048576K +} +Event: 63.878 GC heap before +{Heap before GC invocations=62 (full 0): + garbage-first heap total 211968K, used 175939K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 79 young (80896K), 6 survivors (6144K) + Metaspace used 79404K, capacity 82155K, committed 82352K, reserved 1120256K + class space used 10413K, capacity 11444K, committed 11520K, reserved 1048576K +} +Event: 64.071 GC heap after +{Heap after GC invocations=63 (full 0): + garbage-first heap total 211968K, used 106847K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 7 young (7168K), 7 survivors (7168K) + Metaspace used 79404K, capacity 82155K, committed 82352K, reserved 1120256K + class space used 10413K, capacity 11444K, committed 11520K, reserved 1048576K +} +Event: 72.632 GC heap before +{Heap before GC invocations=64 (full 0): + garbage-first heap total 211968K, used 177503K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 76 young (77824K), 7 survivors (7168K) + Metaspace used 85617K, capacity 88394K, committed 88752K, reserved 1126400K + class space used 11662K, capacity 12675K, committed 12800K, reserved 1048576K +} +Event: 72.787 GC heap after +{Heap after GC invocations=65 (full 0): + garbage-first heap total 211968K, used 109366K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 7 young (7168K), 7 survivors (7168K) + Metaspace used 85617K, capacity 88394K, committed 88752K, reserved 1126400K + class space used 11662K, capacity 12675K, committed 12800K, reserved 1048576K +} +Event: 73.860 GC heap before +{Heap before GC invocations=65 (full 0): + garbage-first heap total 211968K, used 119606K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 18 young (18432K), 7 survivors (7168K) + Metaspace used 86595K, capacity 89345K, committed 89648K, reserved 1126400K + class space used 11789K, capacity 12818K, committed 12928K, reserved 1048576K +} +Event: 73.917 GC heap after +{Heap after GC invocations=66 (full 0): + garbage-first heap total 284672K, used 110080K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 4 young (4096K), 4 survivors (4096K) + Metaspace used 86595K, capacity 89345K, committed 89648K, reserved 1126400K + class space used 11789K, capacity 12818K, committed 12928K, reserved 1048576K +} +Event: 80.027 GC heap before +{Heap before GC invocations=67 (full 0): + garbage-first heap total 284672K, used 179712K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 55 young (56320K), 4 survivors (4096K) + Metaspace used 93156K, capacity 96052K, committed 96304K, reserved 1132544K + class space used 12520K, capacity 13614K, committed 13696K, reserved 1048576K +} +Event: 80.095 GC heap after +{Heap after GC invocations=68 (full 0): + garbage-first heap total 284672K, used 136936K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 7 young (7168K), 7 survivors (7168K) + Metaspace used 93156K, capacity 96052K, committed 96304K, reserved 1132544K + class space used 12520K, capacity 13614K, committed 13696K, reserved 1048576K +} +Event: 80.287 GC heap before +{Heap before GC invocations=68 (full 0): + garbage-first heap total 284672K, used 142056K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 13 young (13312K), 7 survivors (7168K) + Metaspace used 93615K, capacity 96500K, committed 96560K, reserved 1138688K + class space used 12590K, capacity 13678K, committed 13696K, reserved 1048576K +} +Event: 80.394 GC heap after +{Heap after GC invocations=69 (full 0): + garbage-first heap total 284672K, used 137954K [0x0000000080000000, 0x0000000100000000) + region size 1024K, 1 young (1024K), 1 survivors (1024K) + Metaspace used 93615K, capacity 96500K, committed 96560K, reserved 1138688K + class space used 12590K, capacity 13678K, committed 13696K, reserved 1048576K +} + +Deoptimization events (20 events): +Event: 79.976 Thread 0x00000225324c0800 DEOPT PACKING pc=0x000002251d12319b sp=0x0000008c56ffc8d0 +Event: 79.976 Thread 0x00000225324c0800 DEOPT UNPACKING pc=0x000002251b6ca95e sp=0x0000008c56ffbd40 mode 0 +Event: 79.977 Thread 0x00000225324c0800 DEOPT PACKING pc=0x000002251d12319b sp=0x0000008c56ffc8d0 +Event: 79.977 Thread 0x00000225324c0800 DEOPT UNPACKING pc=0x000002251b6ca95e sp=0x0000008c56ffbd40 mode 0 +Event: 79.978 Thread 0x00000225324c0800 DEOPT PACKING pc=0x000002251d12319b sp=0x0000008c56ffc8d0 +Event: 79.978 Thread 0x00000225324c0800 DEOPT UNPACKING pc=0x000002251b6ca95e sp=0x0000008c56ffbd40 mode 0 +Event: 79.978 Thread 0x00000225324c0800 DEOPT PACKING pc=0x000002251d12319b sp=0x0000008c56ffc8d0 +Event: 79.978 Thread 0x00000225324c0800 DEOPT UNPACKING pc=0x000002251b6ca95e sp=0x0000008c56ffbd40 mode 0 +Event: 79.981 Thread 0x00000225324c0800 Uncommon trap: trap_request=0xffffff4d fr.pc=0x0000022523146710 relative=0x0000000000000170 +Event: 79.981 Thread 0x00000225324c0800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x0000022523146710 method=java.lang.String.isLatin1()Z @ 10 c2 +Event: 79.981 Thread 0x00000225324c0800 DEOPT PACKING pc=0x0000022523146710 sp=0x0000008c56ffca00 +Event: 79.981 Thread 0x00000225324c0800 DEOPT UNPACKING pc=0x000002251b6ca1af sp=0x0000008c56ffc928 mode 2 +Event: 79.984 Thread 0x00000225324c0800 Uncommon trap: trap_request=0xffffff4d fr.pc=0x00000225236c90cc relative=0x00000000000013cc +Event: 79.984 Thread 0x00000225324c0800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x00000225236c90cc method=java.util.concurrent.ConcurrentHashMap.putVal(Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object; @ 401 c2 +Event: 79.984 Thread 0x00000225324c0800 DEOPT PACKING pc=0x00000225236c90cc sp=0x0000008c56ffca30 +Event: 79.984 Thread 0x00000225324c0800 DEOPT UNPACKING pc=0x000002251b6ca1af sp=0x0000008c56ffc9c0 mode 2 +Event: 79.993 Thread 0x00000225324c0800 Uncommon trap: trap_request=0xffffff4d fr.pc=0x00000225232060cc relative=0x000000000000124c +Event: 79.993 Thread 0x00000225324c0800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x00000225232060cc method=java.util.concurrent.ConcurrentHashMap.transfer([Ljava/util/concurrent/ConcurrentHashMap$Node;[Ljava/util/concurrent/ConcurrentHashMap$Node;)V @ 352 c2 +Event: 79.993 Thread 0x00000225324c0800 DEOPT PACKING pc=0x00000225232060cc sp=0x0000008c56ffc810 +Event: 79.993 Thread 0x00000225324c0800 DEOPT UNPACKING pc=0x000002251b6ca1af sp=0x0000008c56ffc788 mode 2 + +Classes redefined (0 events): +No events + +Internal exceptions (20 events): +Event: 77.831 Thread 0x000002253253b800 Exception (0x000000008ff476c8) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.835 Thread 0x000002253253b800 Exception (0x000000008ff6ac98) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.836 Thread 0x000002253253b800 Exception (0x000000008ff83d68) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.837 Thread 0x000002253253b800 Exception (0x000000008ff9bd00) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.839 Thread 0x000002253253b800 Exception (0x000000008ffb3428) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.841 Thread 0x000002253253b800 Exception (0x000000008ffcb900) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.842 Thread 0x000002253253b800 Exception (0x000000008ffe3350) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.844 Thread 0x000002253253b800 Exception (0x000000008ffedb28) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.845 Thread 0x000002253253b800 Exception (0x000000008fff83a8) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.848 Thread 0x000002253253b800 Exception (0x000000008fe19198) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.851 Thread 0x000002253253b800 Exception (0x000000008fe4e380) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.856 Thread 0x000002253253b800 Exception (0x000000008fe8b638) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.860 Thread 0x000002253253b800 Exception (0x000000008feb77a0) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.863 Thread 0x000002253253b800 Exception (0x000000008fee37a8) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.866 Thread 0x000002253253b800 Exception (0x000000008fd12198) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.871 Thread 0x000002253253b800 Exception (0x000000008fd44978) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.901 Thread 0x000002253253b800 Exception (0x000000008fdf3650) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 77.903 Thread 0x000002253253b800 Exception (0x000000008fc06b90) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] +Event: 78.412 Thread 0x00000225324c0800 Implicit null exception at 0x00000225234c7165 to 0x00000225234c79dc +Event: 78.846 Thread 0x00000225324c0800 Exception (0x000000008f2f9b78) thrown at [./src/hotspot/share/prims/jni.cpp, line 616] + +Events (20 events): +Event: 80.272 loading class org/apache/http/impl/execchain/RedirectExec done +Event: 80.274 loading class org/apache/http/impl/client/BasicCookieStore +Event: 80.274 loading class org/apache/http/impl/client/BasicCookieStore done +Event: 80.275 loading class org/apache/http/cookie/CookieIdentityComparator +Event: 80.275 loading class org/apache/http/cookie/CookieIdentityComparator done +Event: 80.276 loading class org/apache/http/impl/client/HttpClientBuilder$2 +Event: 80.276 loading class org/apache/http/impl/client/HttpClientBuilder$2 done +Event: 80.277 loading class org/apache/http/client/ClientProtocolException +Event: 80.277 loading class org/apache/http/client/ClientProtocolException done +Event: 80.280 loading class org/apache/http/conn/ClientConnectionManager +Event: 80.280 loading class org/apache/http/conn/ClientConnectionManager done +Event: 80.281 loading class org/apache/http/client/utils/URIUtils +Event: 80.281 loading class org/apache/http/client/utils/URIUtils done +Event: 80.283 loading class org/apache/http/client/utils/URIUtils$UriFlag +Event: 80.283 loading class org/apache/http/client/utils/URIUtils$UriFlag done +Event: 80.285 loading class org/apache/http/HttpHost +Event: 80.285 loading class org/apache/http/HttpHost done +Event: 80.287 loading class org/apache/http/client/methods/HttpRequestWrapper +Event: 80.287 loading class org/apache/http/client/methods/HttpRequestWrapper done +Event: 80.287 Executing VM operation: CollectForMetadataAllocation + + +Dynamic libraries: +0x00007ff668680000 - 0x00007ff66868a000 C:\Program Files\Android\Android Studio1\jre\bin\java.exe +0x00007ffb8e7d0000 - 0x00007ffb8e9c8000 C:\WINDOWS\SYSTEM32\ntdll.dll +0x00007ffb8e630000 - 0x00007ffb8e6ef000 C:\WINDOWS\System32\KERNEL32.DLL +0x00007ffb8bfb0000 - 0x00007ffb8c2a6000 C:\WINDOWS\System32\KERNELBASE.dll +0x00007ffb8c2b0000 - 0x00007ffb8c3b0000 C:\WINDOWS\System32\ucrtbase.dll +0x00007ffb5be60000 - 0x00007ffb5be79000 C:\Program Files\Android\Android Studio1\jre\bin\jli.dll +0x00007ffb5be40000 - 0x00007ffb5be57000 C:\Program Files\Android\Android Studio1\jre\bin\VCRUNTIME140.dll +0x00007ffb8d450000 - 0x00007ffb8d5ed000 C:\WINDOWS\System32\USER32.dll +0x00007ffb8c540000 - 0x00007ffb8c562000 C:\WINDOWS\System32\win32u.dll +0x00007ffb8db60000 - 0x00007ffb8db8c000 C:\WINDOWS\System32\GDI32.dll +0x00007ffb8c710000 - 0x00007ffb8c825000 C:\WINDOWS\System32\gdi32full.dll +0x00007ffb8c670000 - 0x00007ffb8c70d000 C:\WINDOWS\System32\msvcp_win.dll +0x00007ffb7c7e0000 - 0x00007ffb7ca7a000 C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e\COMCTL32.dll +0x00007ffb8dac0000 - 0x00007ffb8db5e000 C:\WINDOWS\System32\msvcrt.dll +0x00007ffb8ccd0000 - 0x00007ffb8cd00000 C:\WINDOWS\System32\IMM32.DLL +0x00007ffb3f2a0000 - 0x00007ffb3f33d000 C:\Program Files\Android\Android Studio1\jre\bin\msvcp140.dll +0x00007ffb23b50000 - 0x00007ffb24652000 C:\Program Files\Android\Android Studio1\jre\bin\server\jvm.dll +0x00007ffb8ca80000 - 0x00007ffb8cb2f000 C:\WINDOWS\System32\ADVAPI32.dll +0x00007ffb8e6f0000 - 0x00007ffb8e78c000 C:\WINDOWS\System32\sechost.dll +0x00007ffb8c830000 - 0x00007ffb8c956000 C:\WINDOWS\System32\RPCRT4.dll +0x00007ffb8ca70000 - 0x00007ffb8ca78000 C:\WINDOWS\System32\PSAPI.DLL +0x00007ffb85130000 - 0x00007ffb85139000 C:\WINDOWS\SYSTEM32\WSOCK32.dll +0x00007ffb8df00000 - 0x00007ffb8df6b000 C:\WINDOWS\System32\WS2_32.dll +0x00007ffb816a0000 - 0x00007ffb816aa000 C:\WINDOWS\SYSTEM32\VERSION.dll +0x00007ffb816b0000 - 0x00007ffb816d7000 C:\WINDOWS\SYSTEM32\WINMM.dll +0x00007ffb8a6f0000 - 0x00007ffb8a702000 C:\WINDOWS\SYSTEM32\kernel.appcore.dll +0x00007ffb84710000 - 0x00007ffb84721000 C:\Program Files\Android\Android Studio1\jre\bin\verify.dll +0x00007ffb8a4e0000 - 0x00007ffb8a6c4000 C:\WINDOWS\SYSTEM32\DBGHELP.DLL +0x00007ffb76690000 - 0x00007ffb766c4000 C:\WINDOWS\SYSTEM32\dbgcore.DLL +0x00007ffb8c5e0000 - 0x00007ffb8c662000 C:\WINDOWS\System32\bcryptPrimitives.dll +0x00007ffb7c210000 - 0x00007ffb7c239000 C:\Program Files\Android\Android Studio1\jre\bin\java.dll +0x00007ffb84330000 - 0x00007ffb8433b000 C:\Program Files\Android\Android Studio1\jre\bin\jimage.dll +0x00007ffb72a00000 - 0x00007ffb72a18000 C:\Program Files\Android\Android Studio1\jre\bin\zip.dll +0x00007ffb8cd00000 - 0x00007ffb8d444000 C:\WINDOWS\System32\SHELL32.dll +0x00007ffb89c00000 - 0x00007ffb8a393000 C:\WINDOWS\SYSTEM32\windows.storage.dll +0x00007ffb8e120000 - 0x00007ffb8e474000 C:\WINDOWS\System32\combase.dll +0x00007ffb8b890000 - 0x00007ffb8b8be000 C:\WINDOWS\SYSTEM32\Wldp.dll +0x00007ffb8c960000 - 0x00007ffb8ca0d000 C:\WINDOWS\System32\SHCORE.dll +0x00007ffb8cb30000 - 0x00007ffb8cb85000 C:\WINDOWS\System32\shlwapi.dll +0x00007ffb8bdf0000 - 0x00007ffb8be0f000 C:\WINDOWS\SYSTEM32\profapi.dll +0x00007ffb729e0000 - 0x00007ffb729fa000 C:\Program Files\Android\Android Studio1\jre\bin\net.dll +0x00007ffb7d4d0000 - 0x00007ffb7d5da000 C:\WINDOWS\SYSTEM32\WINHTTP.dll +0x00007ffb8b580000 - 0x00007ffb8b5ea000 C:\WINDOWS\system32\mswsock.dll +0x00007ffb729c0000 - 0x00007ffb729d4000 C:\Program Files\Android\Android Studio1\jre\bin\nio.dll +0x00007ffb64870000 - 0x00007ffb64897000 C:\Users\USER\.gradle\native\68d5fa5c4cc2d200863cafc0d521ce42e7d3e7ee720ec0a83991735586a16f82\windows-amd64\native-platform.dll +0x00007ffb3f150000 - 0x00007ffb3f294000 C:\Users\USER\.gradle\native\e376f236ea51e6404a007f0833ffe2c6e607c4080706a723a18a27aeea778392\windows-amd64\native-platform-file-events.dll +0x00007ffb7f180000 - 0x00007ffb7f18a000 C:\Program Files\Android\Android Studio1\jre\bin\management.dll +0x00007ffb7c200000 - 0x00007ffb7c20d000 C:\Program Files\Android\Android Studio1\jre\bin\management_ext.dll +0x00007ffb8b780000 - 0x00007ffb8b798000 C:\WINDOWS\SYSTEM32\CRYPTSP.dll +0x00007ffb8aea0000 - 0x00007ffb8aed4000 C:\WINDOWS\system32\rsaenh.dll +0x00007ffb8c510000 - 0x00007ffb8c537000 C:\WINDOWS\System32\bcrypt.dll +0x00007ffb8bd70000 - 0x00007ffb8bd9e000 C:\WINDOWS\SYSTEM32\USERENV.dll +0x00007ffb8b770000 - 0x00007ffb8b77c000 C:\WINDOWS\SYSTEM32\CRYPTBASE.dll +0x00007ffb8b270000 - 0x00007ffb8b2ac000 C:\WINDOWS\SYSTEM32\IPHLPAPI.DLL +0x00007ffb8e5a0000 - 0x00007ffb8e5a8000 C:\WINDOWS\System32\NSI.dll +0x00007ffb7dfb0000 - 0x00007ffb7dfc7000 C:\WINDOWS\SYSTEM32\dhcpcsvc6.DLL +0x00007ffb7e4f0000 - 0x00007ffb7e50d000 C:\WINDOWS\SYSTEM32\dhcpcsvc.DLL +0x00007ffb8b2b0000 - 0x00007ffb8b37a000 C:\WINDOWS\SYSTEM32\DNSAPI.dll +0x00007ffb72570000 - 0x00007ffb72587000 C:\WINDOWS\system32\napinsp.dll +0x00007ffb72550000 - 0x00007ffb7256b000 C:\WINDOWS\system32\pnrpnsp.dll +0x00007ffb863a0000 - 0x00007ffb863b5000 C:\WINDOWS\system32\wshbth.dll +0x00007ffb874f0000 - 0x00007ffb8750d000 C:\WINDOWS\system32\NLAapi.dll +0x00007ffb72530000 - 0x00007ffb72542000 C:\WINDOWS\System32\winrnr.dll +0x00007ffb828b0000 - 0x00007ffb828ba000 C:\Windows\System32\rasadhlp.dll +0x00007ffb7b200000 - 0x00007ffb7b282000 C:\WINDOWS\System32\fwpuclnt.dll +0x00007ffb7f1a0000 - 0x00007ffb7f1c7000 C:\Program Files\Android\Android Studio1\jre\bin\sunec.dll + +dbghelp: loaded successfully - version: 4.0.5 - missing functions: none +symbol engine: initialized successfully - sym options: 0x614 - pdb path: .;C:\Program Files\Android\Android Studio1\jre\bin;C:\WINDOWS\SYSTEM32;C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e;C:\Program Files\Android\Android Studio1\jre\bin\server;C:\Users\USER\.gradle\native\68d5fa5c4cc2d200863cafc0d521ce42e7d3e7ee720ec0a83991735586a16f82\windows-amd64;C:\Users\USER\.gradle\native\e376f236ea51e6404a007f0833ffe2c6e607c4080706a723a18a27aeea778392\windows-amd64 + +VM Arguments: +jvm_args: --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -Xmx2048M -Dfile.encoding=UTF-8 -Duser.country=RU -Duser.language=ru -Duser.variant +java_command: org.gradle.launcher.daemon.bootstrap.GradleDaemon 8.0.2 +java_class_path (initial): C:\Users\USER\.gradle\wrapper\dists\gradle-8.0.2-bin\25jlreiuz6u3xu2phlpa2vv4m\gradle-8.0.2\lib\gradle-launcher-8.0.2.jar +Launcher Type: SUN_STANDARD + +[Global flags] + intx CICompilerCount = 2 {product} {ergonomic} + uint ConcGCThreads = 1 {product} {ergonomic} + uint G1ConcRefinementThreads = 2 {product} {ergonomic} + size_t G1HeapRegionSize = 1048576 {product} {ergonomic} + uintx GCDrainStackTargetSize = 64 {product} {ergonomic} + size_t InitialHeapSize = 58720256 {product} {ergonomic} + size_t MarkStackSize = 4194304 {product} {ergonomic} + size_t MaxHeapSize = 2147483648 {product} {command line} + size_t MaxNewSize = 1287651328 {product} {ergonomic} + size_t MinHeapDeltaBytes = 1048576 {product} {ergonomic} + uintx NonNMethodCodeHeapSize = 5825164 {pd product} {ergonomic} + uintx NonProfiledCodeHeapSize = 122916538 {pd product} {ergonomic} + uintx ProfiledCodeHeapSize = 122916538 {pd product} {ergonomic} + uintx ReservedCodeCacheSize = 251658240 {pd product} {ergonomic} + bool SegmentedCodeCache = true {product} {ergonomic} + bool UseCompressedClassPointers = true {lp64_product} {ergonomic} + bool UseCompressedOops = true {lp64_product} {ergonomic} + bool UseG1GC = true {product} {ergonomic} + bool UseLargePagesIndividualAllocation = false {pd product} {ergonomic} + +Logging: +Log output configuration: + #0: stdout all=warning uptime,level,tags + #1: stderr all=off uptime,level,tags + +Environment Variables: +PATH=C:\Program Files\Common Files\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\dotnet\;C:\Program Files\Git\cmd;C:\Program Files\MySQL\MySQL Shell 8.0\bin\;C:\Users\USER\AppData\Local\Microsoft\WindowsApps;C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2020.3\bin;;C:\Users\USER\Programming\Maven\apache-maven-3.6.3\bin;C:\Users\USER\.dotnet\tools;C:\Users\USER\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\USER\Programming\effective_android\flutter\bin; +USERNAME=USER +OS=Windows_NT +PROCESSOR_IDENTIFIER=AMD64 Family 21 Model 112 Stepping 0, AuthenticAMD + + + +--------------- S Y S T E M --------------- + +OS: Windows 10 , 64 bit Build 19041 (10.0.19041.3031) +OS uptime: 6 days 20:35 hours + +CPU:total 2 (initial active 2) (2 cores per cpu, 1 threads per core) family 21 model 112 stepping 0 microcode 0x0, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, avx, avx2, aes, clmul, mmxext, 3dnowpref, lzcnt, sse4a, tsc, tscinvbit, tscinv, bmi1, bmi2, fma + +Memory: 4k page, system-wide physical 3471M (45M free) +TotalPageFile size 14223M (AvailPageFile size 4M) +current process WorkingSet (physical memory assigned to process): 250M, peak: 323M +current process commit charge ("private bytes"): 537M, peak: 538M + +vm_info: OpenJDK 64-Bit Server VM (11.0.13+0-b1751.21-8125866) for windows-amd64 JRE (11.0.13+0-b1751.21-8125866), built on Feb 2 2022 03:00:22 by "builder" with MS VC++ 14.0 (VS2015) + +END. diff --git a/tabletApp/features/selectRoom/build.gradle.kts b/tabletApp/features/selectRoom/build.gradle.kts index f3da50b5..1815ff28 100644 --- a/tabletApp/features/selectRoom/build.gradle.kts +++ b/tabletApp/features/selectRoom/build.gradle.kts @@ -18,6 +18,7 @@ kotlin { } } + sourceSets { val commonMain by getting { dependencies { @@ -28,7 +29,18 @@ kotlin { // Decompose implementation(Dependencies.Decompose.decompose) implementation(Dependencies.Decompose.extensions) + + //Koin + api(Dependencies.Koin.core) + } + } + + val androidMain by getting { + dependencies { + //Koin + api(Dependencies.Koin.android) } } } + } diff --git a/tabletApp/features/selectRoom/src/androidMain/kotlin/tablet/di/initSelectRoomKoin.kt b/tabletApp/features/selectRoom/src/androidMain/kotlin/tablet/di/initSelectRoomKoin.kt new file mode 100644 index 00000000..f0fca77e --- /dev/null +++ b/tabletApp/features/selectRoom/src/androidMain/kotlin/tablet/di/initSelectRoomKoin.kt @@ -0,0 +1,7 @@ +package tablet.di + +import org.koin.core.context.startKoin + +fun initSelectRoomKoin() = startKoin { + modules(selectRoomModule) +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/di/SelectRoomModule.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/di/SelectRoomModule.kt new file mode 100644 index 00000000..32efc178 --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/di/SelectRoomModule.kt @@ -0,0 +1,9 @@ +package tablet.di + +import org.koin.dsl.module +import tablet.domain.ISelectRoomInteractor +import tablet.domain.SelectRoomInteractorImpl + +val selectRoomModule = module{ + single { SelectRoomInteractorImpl(get()) } +} diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/ISelectRoomInteractor.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/ISelectRoomInteractor.kt new file mode 100644 index 00000000..22d5433d --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/ISelectRoomInteractor.kt @@ -0,0 +1,8 @@ +package tablet.domain + +import tablet.domain.model.Booking +import tablet.domain.model.EventInfo + +interface ISelectRoomInteractor { + suspend fun bookRoom(booking: Booking) +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/SelectRoomInteractorImpl.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/SelectRoomInteractorImpl.kt new file mode 100644 index 00000000..e7b69120 --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/SelectRoomInteractorImpl.kt @@ -0,0 +1,9 @@ +package tablet.domain + +import tablet.domain.model.Booking +import tablet.domain.model.EventInfo +import tablet.network.ISelectRoomRepository + +class SelectRoomInteractorImpl(private val repository: ISelectRoomRepository): ISelectRoomInteractor { + override suspend fun bookRoom(booking: Booking) = repository.bookRoom(booking) +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/model/Booking.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/model/Booking.kt new file mode 100644 index 00000000..3a81e0df --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/model/Booking.kt @@ -0,0 +1,6 @@ +package tablet.domain.model + +data class Booking( + val nameRoom: String, + val eventInfo: EventInfo +) \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/model/EventInfo.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/model/EventInfo.kt new file mode 100644 index 00000000..c1c4627d --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/model/EventInfo.kt @@ -0,0 +1,9 @@ +package tablet.domain.model + +import java.util.Calendar + +data class EventInfo( + val startTime: Calendar, + val finishTime: Calendar, + val organizer: String +) \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/network/ISelectRoomRepository.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/network/ISelectRoomRepository.kt new file mode 100644 index 00000000..eb2dea3a --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/network/ISelectRoomRepository.kt @@ -0,0 +1,8 @@ +package tablet.network + +import tablet.domain.model.Booking +import tablet.domain.model.EventInfo + +interface ISelectRoomRepository { + suspend fun bookRoom(booking: Booking) +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/RealSelectRoomComponent.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/RealSelectRoomComponent.kt new file mode 100644 index 00000000..1de4be7e --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/RealSelectRoomComponent.kt @@ -0,0 +1,29 @@ +package tablet.ui.selectRoomScreen + +import com.arkivanov.decompose.ComponentContext +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.asStateFlow +import org.koin.core.component.KoinComponent +import org.koin.core.component.inject +import tablet.domain.ISelectRoomInteractor +import tablet.domain.model.Booking + +class RealSelectRoomComponent(componentContext: ComponentContext, + booking: Booking) + : ComponentContext by componentContext, SelectRoomComponent, KoinComponent{ + private val interactor: ISelectRoomInteractor by inject() + val booking = booking + + private var _state = MutableStateFlow(SelectRoomScreenState.defaultState) + override val state = _state.asStateFlow() + + + override fun bookRoom() { + TODO("Not yet implemented") + } + + override fun close() { + TODO("Not yet implemented") + } + +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomComponent.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomComponent.kt index 1e221134..cdfdf472 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomComponent.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomComponent.kt @@ -1,7 +1,11 @@ package tablet.ui.selectRoomScreen -import com.arkivanov.decompose.ComponentContext +import kotlinx.coroutines.flow.StateFlow +import tablet.domain.model.Booking -class SelectRoomComponent(componentContext: ComponentContext) : ComponentContext by componentContext { +interface SelectRoomComponent { + val state: StateFlow + fun bookRoom() + fun close() } \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreen.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreen.kt index b485b41a..2daab3df 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreen.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreen.kt @@ -2,13 +2,34 @@ package tablet.ui.selectRoomScreen import androidx.compose.material.Text import androidx.compose.runtime.Composable +import androidx.compose.runtime.collectAsState +import androidx.compose.runtime.getValue @Composable -fun SelectRoomScreen(component: SelectRoomComponent){ - SelectRoomView() +fun SelectRoomScreen(component: RealSelectRoomComponent){ + val state by component.state.collectAsState() + + when{ + state.isData -> { + SelectRoomView(component) + } + + state.isLoad -> { + /* (Margarita Djinjolia) + not in design */ + } + + state.isError -> { + /* (Margarita Djinjolia) + not in design */ + } + } + } @Composable -fun SelectRoomView(){ - Text(text = "SelectRoomView") +fun SelectRoomView( + component: RealSelectRoomComponent +){ + Text(text = component.booking.nameRoom) } \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreenState.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreenState.kt new file mode 100644 index 00000000..a0dc436d --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreenState.kt @@ -0,0 +1,18 @@ +package tablet.ui.selectRoomScreen + +data class SelectRoomScreenState( + val isLoad: Boolean, + val isData: Boolean, + val isError: Boolean, + val error: String +){ + companion object { + val defaultState = + SelectRoomScreenState( + isLoad = false, + isData = true, + isError = false, + error = "" + ) + } +} diff --git a/tabletApp/src/androidMain/kotlin/band/effective/office/tablet/MainActivity.kt b/tabletApp/src/androidMain/kotlin/band/effective/office/tablet/MainActivity.kt index 136b30e4..f8ff151a 100644 --- a/tabletApp/src/androidMain/kotlin/band/effective/office/tablet/MainActivity.kt +++ b/tabletApp/src/androidMain/kotlin/band/effective/office/tablet/MainActivity.kt @@ -4,11 +4,13 @@ import android.os.Bundle import androidx.appcompat.app.AppCompatActivity import androidx.activity.compose.setContent import com.arkivanov.decompose.defaultComponentContext +import tablet.di.initSelectRoomKoin class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { + initSelectRoomKoin() App(defaultComponentContext()) } } diff --git a/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt b/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt index 03a885d1..0be3fc5d 100644 --- a/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt +++ b/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt @@ -7,7 +7,10 @@ import com.arkivanov.decompose.router.stack.childStack import com.arkivanov.decompose.router.stack.push import com.arkivanov.essenty.parcelable.Parcelable import kotlinx.android.parcel.Parcelize -import tablet.ui.selectRoomScreen.SelectRoomComponent +import tablet.domain.model.Booking +import tablet.domain.model.EventInfo +import tablet.ui.selectRoomScreen.RealSelectRoomComponent +import java.util.Calendar class RootComponent(componentContext: ComponentContext) : ComponentContext by componentContext { @@ -35,12 +38,25 @@ class RootComponent(componentContext: ComponentContext) : ComponentContext by co } is Config.SelectRoom -> { - Child.SelectRoomChild(SelectRoomComponent(componentContext)) + Child.SelectRoomChild( + RealSelectRoomComponent( + componentContext, + Booking + ("Sirius", + EventInfo + ( + Calendar.getInstance(), + Calendar.getInstance(), + "Ольга Белозёрова" + ) + ) + ) + ) } } sealed class Child { - data class SelectRoomChild(val component: SelectRoomComponent) : Child() + data class SelectRoomChild(val component: RealSelectRoomComponent) : Child() data class MainChild(val component: MainComponent) : Child() } -- GitLab From 0f5449be1f44486c977af4c217e8b96f3f0e9143 Mon Sep 17 00:00:00 2001 From: Margarita Date: Thu, 6 Jul 2023 10:51:30 +0600 Subject: [PATCH 02/10] [-] delete log file --- buildSrc/hs_err_pid49948.log | 851 ----------------------------------- 1 file changed, 851 deletions(-) delete mode 100644 buildSrc/hs_err_pid49948.log diff --git a/buildSrc/hs_err_pid49948.log b/buildSrc/hs_err_pid49948.log deleted file mode 100644 index c6cc489d..00000000 --- a/buildSrc/hs_err_pid49948.log +++ /dev/null @@ -1,851 +0,0 @@ -# -# There is insufficient memory for the Java Runtime Environment to continue. -# Native memory allocation (malloc) failed to allocate 1048576 bytes for AllocateHeap -# Possible reasons: -# The system is out of physical RAM or swap space -# The process is running with CompressedOops enabled, and the Java Heap may be blocking the growth of the native heap -# Possible solutions: -# Reduce memory load on the system -# Increase physical memory or swap space -# Check if swap backing store is full -# Decrease Java heap size (-Xmx/-Xms) -# Decrease number of Java threads -# Decrease Java thread stack sizes (-Xss) -# Set larger code cache with -XX:ReservedCodeCacheSize= -# JVM is running with Unscaled Compressed Oops mode in which the Java heap is -# placed in the first 4GB address space. The Java Heap base address is the -# maximum limit for the native heap growth. Please use -XX:HeapBaseMinAddress -# to set the Java Heap base and to place the Java Heap above 4GB virtual address. -# This output file may be truncated or incomplete. -# -# Out of Memory Error (./src/hotspot/share/memory/allocation.cpp:46), pid=49948, tid=54616 -# -# JRE version: OpenJDK Runtime Environment (11.0.13) (build 11.0.13+0-b1751.21-8125866) -# Java VM: OpenJDK 64-Bit Server VM (11.0.13+0-b1751.21-8125866, mixed mode, tiered, compressed oops, g1 gc, windows-amd64) -# No core dump will be written. Minidumps are not enabled by default on client versions of Windows -# - ---------------- S U M M A R Y ------------ - -Command Line: --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -Xmx2048M -Dfile.encoding=UTF-8 -Duser.country=RU -Duser.language=ru -Duser.variant org.gradle.launcher.daemon.bootstrap.GradleDaemon 8.0.2 - -Host: AMD A6-9225 RADEON R4, 5 COMPUTE CORES 2C+3G , 2 cores, 3G, Windows 10 , 64 bit Build 19041 (10.0.19041.3031) -Time: Mon Jul 3 17:11:04 2023 Îìñêîå ñòàíäàðòíîå âðåìÿ elapsed time: 80.431619 seconds (0d 0h 1m 20s) - ---------------- T H R E A D --------------- - -Current thread (0x00000225319f6800): VMThread "VM Thread" [stack: 0x0000008c53200000,0x0000008c53300000] [id=54616] - -Stack: [0x0000008c53200000,0x0000008c53300000] -[error occurred during error reporting (printing stack bounds), id 0xc0000005, EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000002251b68112d] - -Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) -V [jvm.dll+0x6100fa] -V [jvm.dll+0x747090] -V [jvm.dll+0x7486ad] -V [jvm.dll+0x748ce5] -V [jvm.dll+0x748c9b] -V [jvm.dll+0x60f224] -V [jvm.dll+0x60f9b8] -C [ntdll.dll+0xa247f] -C [ntdll.dll+0x514f4] -C [ntdll.dll+0xa0f8e] -C 0x000002251b68112d - -VM_Operation (0x0000008c56ff9770): CollectForMetadataAllocation, mode: safepoint, requested by thread 0x00000225324c0800 - - ---------------- P R O C E S S --------------- - -Threads class SMR info: -_java_thread_list=0x0000022536238790, length=61, elements={ -0x0000022517b60800, 0x00000225319fa000, 0x0000022531a03800, 0x0000022531a19000, -0x0000022531a1c000, 0x0000022531a1d800, 0x0000022531a66800, 0x0000022531a68800, -0x0000022531a7c800, 0x0000022531cee800, 0x0000022532734000, 0x0000022532576800, -0x000002253351e800, 0x0000022531f56000, 0x000002253302a800, 0x000002253302b800, -0x000002253253b800, 0x00000225324ce000, 0x0000022531ecd000, 0x0000022531ea4800, -0x0000022531e9f000, 0x0000022531ea5800, 0x0000022531ea2000, 0x0000022531ea0800, -0x0000022531ea3000, 0x0000022531ea4000, 0x0000022531ea0000, 0x0000022531ea1800, -0x0000022533cce800, 0x0000022533ccb000, 0x0000022533ccf000, 0x0000022533cd0000, -0x0000022533cca800, 0x0000022533ccd000, 0x0000022533cd1000, 0x0000022533cd1800, -0x0000022533ccc000, 0x0000022533cd7800, 0x0000022533cd3800, 0x0000022533cd2800, -0x0000022533cd4000, 0x0000022533cd8000, 0x0000022533cd9000, 0x0000022533cd5000, -0x0000022533cd6000, 0x0000022533cd6800, 0x00000225324c2000, 0x00000225324c1800, -0x00000225324be000, 0x00000225324c3000, 0x00000225324c4000, 0x00000225324c4800, -0x00000225324bf000, 0x00000225324c5800, 0x00000225324bf800, 0x00000225324c6800, -0x00000225324c0800, 0x00000225324cb000, 0x00000225324cd000, 0x00000225324cc000, -0x00000225324c8000 -} - -Java Threads: ( => current thread ) - 0x0000022517b60800 JavaThread "main" [_thread_blocked, id=52892, stack(0x0000008c52c00000,0x0000008c52d00000)] - 0x00000225319fa000 JavaThread "Reference Handler" daemon [_thread_blocked, id=52232, stack(0x0000008c53300000,0x0000008c53400000)] - 0x0000022531a03800 JavaThread "Finalizer" daemon [_thread_blocked, id=44012, stack(0x0000008c53400000,0x0000008c53500000)] - 0x0000022531a19000 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=53300, stack(0x0000008c53500000,0x0000008c53600000)] - 0x0000022531a1c000 JavaThread "Attach Listener" daemon [_thread_blocked, id=49748, stack(0x0000008c53600000,0x0000008c53700000)] - 0x0000022531a1d800 JavaThread "Service Thread" daemon [_thread_blocked, id=46864, stack(0x0000008c53700000,0x0000008c53800000)] - 0x0000022531a66800 JavaThread "C2 CompilerThread0" daemon [_thread_blocked, id=53760, stack(0x0000008c53800000,0x0000008c53900000)] - 0x0000022531a68800 JavaThread "C1 CompilerThread0" daemon [_thread_blocked, id=54680, stack(0x0000008c53900000,0x0000008c53a00000)] - 0x0000022531a7c800 JavaThread "Sweeper thread" daemon [_thread_blocked, id=46020, stack(0x0000008c53a00000,0x0000008c53b00000)] - 0x0000022531cee800 JavaThread "Common-Cleaner" daemon [_thread_blocked, id=55048, stack(0x0000008c53b00000,0x0000008c53c00000)] - 0x0000022532734000 JavaThread "Daemon health stats" [_thread_blocked, id=54880, stack(0x0000008c53e00000,0x0000008c53f00000)] - 0x0000022532576800 JavaThread "Incoming local TCP Connector on port 58623" [_thread_in_native, id=50576, stack(0x0000008c53f00000,0x0000008c54000000)] - 0x000002253351e800 JavaThread "Daemon periodic checks" [_thread_blocked, id=52448, stack(0x0000008c54000000,0x0000008c54100000)] - 0x0000022531f56000 JavaThread "Daemon" [_thread_blocked, id=54848, stack(0x0000008c54100000,0x0000008c54200000)] - 0x000002253302a800 JavaThread "Handler for socket connection from /127.0.0.1:58623 to /127.0.0.1:58624" [_thread_in_native, id=53764, stack(0x0000008c54200000,0x0000008c54300000)] - 0x000002253302b800 JavaThread "Cancel handler" [_thread_blocked, id=55084, stack(0x0000008c54300000,0x0000008c54400000)] - 0x000002253253b800 JavaThread "Daemon worker" [_thread_blocked, id=15576, stack(0x0000008c54400000,0x0000008c54500000)] - 0x00000225324ce000 JavaThread "Asynchronous log dispatcher for DefaultDaemonConnection: socket connection from /127.0.0.1:58623 to /127.0.0.1:58624" [_thread_blocked, id=43788, stack(0x0000008c54500000,0x0000008c54600000)] - 0x0000022531ecd000 JavaThread "Daemon client event forwarder" [_thread_blocked, id=54688, stack(0x0000008c54700000,0x0000008c54800000)] - 0x0000022531ea4800 JavaThread "Cache worker for journal cache (C:\Users\USER\.gradle\caches\journal-1)" [_thread_blocked, id=50804, stack(0x0000008c54800000,0x0000008c54900000)] - 0x0000022531e9f000 JavaThread "File lock request listener" [_thread_in_native, id=48844, stack(0x0000008c54900000,0x0000008c54a00000)] - 0x0000022531ea5800 JavaThread "Cache worker for file hash cache (C:\Users\USER\.gradle\caches\8.0.2\fileHashes)" [_thread_blocked, id=48008, stack(0x0000008c54a00000,0x0000008c54b00000)] - 0x0000022531ea2000 JavaThread "File watcher server" daemon [_thread_blocked, id=47932, stack(0x0000008c54b00000,0x0000008c54c00000)] - 0x0000022531ea0800 JavaThread "File watcher consumer" daemon [_thread_blocked, id=40928, stack(0x0000008c54c00000,0x0000008c54d00000)] - 0x0000022531ea3000 JavaThread "jar transforms" [_thread_blocked, id=20244, stack(0x0000008c54d00000,0x0000008c54e00000)] - 0x0000022531ea4000 JavaThread "jar transforms Thread 2" [_thread_blocked, id=54224, stack(0x0000008c54e00000,0x0000008c54f00000)] - 0x0000022531ea0000 JavaThread "Cache worker for checksums cache (C:\Users\USER\Programming\student_labs\labs-office-elevator\buildSrc\.gradle\8.0.2\checksums)" [_thread_blocked, id=37804, stack(0x0000008c54f00000,0x0000008c55000000)] - 0x0000022531ea1800 JavaThread "Cache worker for cache directory md-rule (C:\Users\USER\.gradle\caches\8.0.2\md-rule)" [_thread_blocked, id=52184, stack(0x0000008c55000000,0x0000008c55100000)] - 0x0000022533cce800 JavaThread "Cache worker for file content cache (C:\Users\USER\.gradle\caches\8.0.2\fileContent)" [_thread_blocked, id=54940, stack(0x0000008c55100000,0x0000008c55200000)] - 0x0000022533ccb000 JavaThread "Cache worker for file hash cache (C:\Users\USER\Programming\student_labs\labs-office-elevator\buildSrc\.gradle\8.0.2\fileHashes)" [_thread_blocked, id=50424, stack(0x0000008c55200000,0x0000008c55300000)] - 0x0000022533ccf000 JavaThread "Cache worker for cache directory md-supplier (C:\Users\USER\.gradle\caches\8.0.2\md-supplier)" [_thread_blocked, id=30304, stack(0x0000008c55300000,0x0000008c55400000)] - 0x0000022533cd0000 JavaThread "Cache worker for execution history cache (C:\Users\USER\.gradle\caches\8.0.2\executionHistory)" [_thread_blocked, id=54756, stack(0x0000008c55400000,0x0000008c55500000)] - 0x0000022533cca800 JavaThread "Cache worker for dependencies-accessors (C:\Users\USER\Programming\student_labs\labs-office-elevator\buildSrc\.gradle\8.0.2\dependencies-accessors)" [_thread_blocked, id=54948, stack(0x0000008c55700000,0x0000008c55800000)] - 0x0000022533ccd000 JavaThread "Cache worker for Build Output Cleanup Cache (C:\Users\USER\Programming\student_labs\labs-office-elevator\buildSrc\.gradle\buildOutputCleanup)" [_thread_blocked, id=54772, stack(0x0000008c55800000,0x0000008c55900000)] - 0x0000022533cd1000 JavaThread "Memory manager" [_thread_blocked, id=64, stack(0x0000008c55900000,0x0000008c55a00000)] - 0x0000022533cd1800 JavaThread "Cache worker for Build Output Cleanup Cache (C:\Users\USER\Programming\student_labs\labs-office-elevator\buildSrc\buildSrc\.gradle\buildOutputCleanup)" [_thread_blocked, id=51880, stack(0x0000008c55a00000,0x0000008c55b00000)] - 0x0000022533ccc000 JavaThread "Cache worker for kotlin-dsl (C:\Users\USER\.gradle\caches\8.0.2\kotlin-dsl)" [_thread_blocked, id=53304, stack(0x0000008c55b00000,0x0000008c55c00000)] - 0x0000022533cd7800 JavaThread "Unconstrained build operations" [_thread_blocked, id=54808, stack(0x0000008c55c00000,0x0000008c55d00000)] - 0x0000022533cd3800 JavaThread "Unconstrained build operations Thread 2" [_thread_blocked, id=54200, stack(0x0000008c55d00000,0x0000008c55e00000)] - 0x0000022533cd2800 JavaThread "Unconstrained build operations Thread 3" [_thread_blocked, id=49596, stack(0x0000008c55e00000,0x0000008c55f00000)] - 0x0000022533cd4000 JavaThread "Unconstrained build operations Thread 4" [_thread_blocked, id=54500, stack(0x0000008c55f00000,0x0000008c56000000)] - 0x0000022533cd8000 JavaThread "Unconstrained build operations Thread 5" [_thread_blocked, id=52376, stack(0x0000008c56000000,0x0000008c56100000)] - 0x0000022533cd9000 JavaThread "Unconstrained build operations Thread 6" [_thread_blocked, id=54288, stack(0x0000008c56100000,0x0000008c56200000)] - 0x0000022533cd5000 JavaThread "Unconstrained build operations Thread 7" [_thread_blocked, id=55148, stack(0x0000008c56200000,0x0000008c56300000)] - 0x0000022533cd6000 JavaThread "Unconstrained build operations Thread 8" [_thread_blocked, id=54676, stack(0x0000008c56300000,0x0000008c56400000)] - 0x0000022533cd6800 JavaThread "Unconstrained build operations Thread 9" [_thread_blocked, id=52780, stack(0x0000008c56400000,0x0000008c56500000)] - 0x00000225324c2000 JavaThread "Unconstrained build operations Thread 10" [_thread_blocked, id=52528, stack(0x0000008c56500000,0x0000008c56600000)] - 0x00000225324c1800 JavaThread "Unconstrained build operations Thread 11" [_thread_blocked, id=54508, stack(0x0000008c56600000,0x0000008c56700000)] - 0x00000225324be000 JavaThread "Unconstrained build operations Thread 12" [_thread_blocked, id=51544, stack(0x0000008c56700000,0x0000008c56800000)] - 0x00000225324c3000 JavaThread "Unconstrained build operations Thread 13" [_thread_blocked, id=52856, stack(0x0000008c56800000,0x0000008c56900000)] - 0x00000225324c4000 JavaThread "Unconstrained build operations Thread 14" [_thread_blocked, id=30784, stack(0x0000008c56900000,0x0000008c56a00000)] - 0x00000225324c4800 JavaThread "Unconstrained build operations Thread 15" [_thread_blocked, id=41272, stack(0x0000008c56a00000,0x0000008c56b00000)] - 0x00000225324bf000 JavaThread "Unconstrained build operations Thread 16" [_thread_blocked, id=52956, stack(0x0000008c56b00000,0x0000008c56c00000)] - 0x00000225324c5800 JavaThread "Unconstrained build operations Thread 17" [_thread_blocked, id=44264, stack(0x0000008c56c00000,0x0000008c56d00000)] - 0x00000225324bf800 JavaThread "Unconstrained build operations Thread 18" [_thread_blocked, id=54308, stack(0x0000008c56d00000,0x0000008c56e00000)] - 0x00000225324c6800 JavaThread "Unconstrained build operations Thread 19" [_thread_blocked, id=51824, stack(0x0000008c56e00000,0x0000008c56f00000)] - 0x00000225324c0800 JavaThread "Unconstrained build operations Thread 20" [_thread_blocked, id=55232, stack(0x0000008c56f00000,0x0000008c57000000)] - 0x00000225324cb000 JavaThread "included builds" [_thread_blocked, id=54504, stack(0x0000008c52a00000,0x0000008c52b00000)] - 0x00000225324cd000 JavaThread "Execution worker" [_thread_blocked, id=51832, stack(0x0000008c52b00000,0x0000008c52c00000)] - 0x00000225324cc000 JavaThread "Cache worker for execution history cache (C:\Users\USER\Programming\student_labs\labs-office-elevator\buildSrc\buildSrc\.gradle\8.0.2\executionHistory)" [_thread_blocked, id=47204, stack(0x0000008c57000000,0x0000008c57100000)] - 0x00000225324c8000 JavaThread "Cache worker for execution history cache (C:\Users\USER\Programming\student_labs\labs-office-elevator\buildSrc\.gradle\8.0.2\executionHistory)" [_thread_blocked, id=5536, stack(0x0000008c54600000,0x0000008c54700000)] - -Other Threads: -=>0x00000225319f6800 VMThread "VM Thread" [stack: 0x0000008c53200000,0x0000008c53300000] [id=54616] - 0x0000022531d1a800 WatcherThread [stack: 0x0000008c53c00000,0x0000008c53d00000] [id=53860] - 0x0000022517b73000 GCTaskThread "GC Thread#0" [stack: 0x0000008c52d00000,0x0000008c52e00000] [id=46300] - 0x0000022531c15800 GCTaskThread "GC Thread#1" [stack: 0x0000008c53d00000,0x0000008c53e00000] [id=49096] - 0x0000022517ba3800 ConcurrentGCThread "G1 Main Marker" [stack: 0x0000008c52e00000,0x0000008c52f00000] [id=50800] - 0x0000022517ba7800 ConcurrentGCThread "G1 Conc#0" [stack: 0x0000008c52f00000,0x0000008c53000000] [id=39368] - 0x0000022517be4800 ConcurrentGCThread "G1 Refine#0" [stack: 0x0000008c53000000,0x0000008c53100000] [id=49560] - 0x0000022517be5800 ConcurrentGCThread "G1 Young RemSet Sampling" [stack: 0x0000008c53100000,0x0000008c53200000] [id=55224] - -Threads with active compile tasks: - -VM state:at safepoint (normal execution) - -VM Mutex/Monitor currently owned by a thread: ([mutex/lock_event]) -[0x0000022517b5c200] Threads_lock - owner thread: 0x00000225319f6800 -[0x0000022517b5be10] Heap_lock - owner thread: 0x00000225324c0800 - -Heap address: 0x0000000080000000, size: 2048 MB, Compressed Oops mode: 32-bit -Narrow klass base: 0x0000000000000000, Narrow klass shift: 3 -Compressed class space size: 1073741824 Address: 0x0000000100000000 - -Heap: - garbage-first heap total 284672K, used 137954K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 1 young (1024K), 1 survivors (1024K) - Metaspace used 93615K, capacity 96500K, committed 96560K, reserved 1140736K - class space used 12590K, capacity 13678K, committed 13696K, reserved 1048576K -Heap Regions: E=young(eden), S=young(survivor), O=old, HS=humongous(starts), HC=humongous(continues), CS=collection set, F=free, A=archive, TAMS=top-at-mark-start (previous, next) -| 0|0x0000000080000000, 0x0000000080100000, 0x0000000080100000|100%| O| |TAMS 0x0000000080100000, 0x0000000080100000| Untracked -| 1|0x0000000080100000, 0x0000000080200000, 0x0000000080200000|100%|HS| |TAMS 0x0000000080200000, 0x0000000080200000| Complete -| 2|0x0000000080200000, 0x0000000080300000, 0x0000000080300000|100%|HC| |TAMS 0x0000000080300000, 0x0000000080300000| Complete -| 3|0x0000000080300000, 0x0000000080400000, 0x0000000080400000|100%|HC| |TAMS 0x0000000080400000, 0x0000000080400000| Complete -| 4|0x0000000080400000, 0x0000000080500000, 0x0000000080500000|100%|HC| |TAMS 0x0000000080500000, 0x0000000080500000| Complete -| 5|0x0000000080500000, 0x0000000080600000, 0x0000000080600000|100%| O| |TAMS 0x0000000080600000, 0x0000000080600000| Untracked -| 6|0x0000000080600000, 0x0000000080700000, 0x0000000080700000|100%| O| |TAMS 0x0000000080700000, 0x0000000080700000| Untracked -| 7|0x0000000080700000, 0x0000000080800000, 0x0000000080800000|100%| O| |TAMS 0x0000000080800000, 0x0000000080800000| Untracked -| 8|0x0000000080800000, 0x0000000080900000, 0x0000000080900000|100%| O| |TAMS 0x0000000080900000, 0x0000000080900000| Untracked -| 9|0x0000000080900000, 0x0000000080a00000, 0x0000000080a00000|100%| O| |TAMS 0x0000000080a00000, 0x0000000080a00000| Untracked -| 10|0x0000000080a00000, 0x0000000080b00000, 0x0000000080b00000|100%| O| |TAMS 0x0000000080b00000, 0x0000000080b00000| Untracked -| 11|0x0000000080b00000, 0x0000000080c00000, 0x0000000080c00000|100%| O| |TAMS 0x0000000080c00000, 0x0000000080c00000| Untracked -| 12|0x0000000080c00000, 0x0000000080d00000, 0x0000000080d00000|100%| O| |TAMS 0x0000000080d00000, 0x0000000080d00000| Untracked -| 13|0x0000000080d00000, 0x0000000080e00000, 0x0000000080e00000|100%| O| |TAMS 0x0000000080e00000, 0x0000000080e00000| Untracked -| 14|0x0000000080e00000, 0x0000000080f00000, 0x0000000080f00000|100%| O| |TAMS 0x0000000080f00000, 0x0000000080f00000| Untracked -| 15|0x0000000080f00000, 0x0000000081000000, 0x0000000081000000|100%| O| |TAMS 0x0000000081000000, 0x0000000081000000| Untracked -| 16|0x0000000081000000, 0x0000000081100000, 0x0000000081100000|100%| O| |TAMS 0x0000000081100000, 0x0000000081100000| Untracked -| 17|0x0000000081100000, 0x0000000081200000, 0x0000000081200000|100%| O| |TAMS 0x0000000081200000, 0x0000000081200000| Untracked -| 18|0x0000000081200000, 0x0000000081300000, 0x0000000081300000|100%|HS| |TAMS 0x0000000081300000, 0x0000000081300000| Complete -| 19|0x0000000081300000, 0x0000000081400000, 0x0000000081400000|100%|HC| |TAMS 0x0000000081400000, 0x0000000081400000| Complete -| 20|0x0000000081400000, 0x0000000081500000, 0x0000000081500000|100%|HS| |TAMS 0x0000000081500000, 0x0000000081500000| Complete -| 21|0x0000000081500000, 0x0000000081600000, 0x0000000081600000|100%|HC| |TAMS 0x0000000081600000, 0x0000000081600000| Complete -| 22|0x0000000081600000, 0x0000000081700000, 0x0000000081700000|100%|HC| |TAMS 0x0000000081700000, 0x0000000081700000| Complete -| 23|0x0000000081700000, 0x0000000081800000, 0x0000000081800000|100%| O| |TAMS 0x0000000081800000, 0x0000000081800000| Untracked -| 24|0x0000000081800000, 0x0000000081900000, 0x0000000081900000|100%|HS| |TAMS 0x0000000081900000, 0x0000000081900000| Complete -| 25|0x0000000081900000, 0x0000000081a00000, 0x0000000081a00000|100%|HC| |TAMS 0x0000000081a00000, 0x0000000081a00000| Complete -| 26|0x0000000081a00000, 0x0000000081b00000, 0x0000000081b00000|100%|HC| |TAMS 0x0000000081b00000, 0x0000000081b00000| Complete -| 27|0x0000000081b00000, 0x0000000081c00000, 0x0000000081c00000|100%| O| |TAMS 0x0000000081c00000, 0x0000000081c00000| Untracked -| 28|0x0000000081c00000, 0x0000000081d00000, 0x0000000081d00000|100%| O| |TAMS 0x0000000081d00000, 0x0000000081d00000| Untracked -| 29|0x0000000081d00000, 0x0000000081e00000, 0x0000000081e00000|100%| O| |TAMS 0x0000000081e00000, 0x0000000081e00000| Untracked -| 30|0x0000000081e00000, 0x0000000081f00000, 0x0000000081f00000|100%| O| |TAMS 0x0000000081f00000, 0x0000000081f00000| Untracked -| 31|0x0000000081f00000, 0x0000000082000000, 0x0000000082000000|100%|HS| |TAMS 0x0000000082000000, 0x0000000082000000| Complete -| 32|0x0000000082000000, 0x0000000082100000, 0x0000000082100000|100%|HC| |TAMS 0x0000000082100000, 0x0000000082100000| Complete -| 33|0x0000000082100000, 0x0000000082200000, 0x0000000082200000|100%|HC| |TAMS 0x0000000082200000, 0x0000000082200000| Complete -| 34|0x0000000082200000, 0x0000000082300000, 0x0000000082300000|100%|HC| |TAMS 0x0000000082300000, 0x0000000082300000| Complete -| 35|0x0000000082300000, 0x0000000082400000, 0x0000000082400000|100%|HS| |TAMS 0x0000000082400000, 0x0000000082400000| Complete -| 36|0x0000000082400000, 0x0000000082500000, 0x0000000082500000|100%|HC| |TAMS 0x0000000082500000, 0x0000000082500000| Complete -| 37|0x0000000082500000, 0x0000000082600000, 0x0000000082600000|100%|HC| |TAMS 0x0000000082600000, 0x0000000082600000| Complete -| 38|0x0000000082600000, 0x0000000082700000, 0x0000000082700000|100%|HC| |TAMS 0x0000000082700000, 0x0000000082700000| Complete -| 39|0x0000000082700000, 0x0000000082800000, 0x0000000082800000|100%|HC| |TAMS 0x0000000082800000, 0x0000000082800000| Complete -| 40|0x0000000082800000, 0x0000000082900000, 0x0000000082900000|100%| O| |TAMS 0x0000000082900000, 0x0000000082900000| Untracked -| 41|0x0000000082900000, 0x0000000082a00000, 0x0000000082a00000|100%| O| |TAMS 0x0000000082a00000, 0x0000000082a00000| Untracked -| 42|0x0000000082a00000, 0x0000000082b00000, 0x0000000082b00000|100%|HS| |TAMS 0x0000000082b00000, 0x0000000082b00000| Complete -| 43|0x0000000082b00000, 0x0000000082c00000, 0x0000000082c00000|100%| O| |TAMS 0x0000000082c00000, 0x0000000082c00000| Untracked -| 44|0x0000000082c00000, 0x0000000082d00000, 0x0000000082d00000|100%| O| |TAMS 0x0000000082d00000, 0x0000000082d00000| Untracked -| 45|0x0000000082d00000, 0x0000000082e00000, 0x0000000082e00000|100%| O| |TAMS 0x0000000082e00000, 0x0000000082e00000| Untracked -| 46|0x0000000082e00000, 0x0000000082f00000, 0x0000000082f00000|100%| O| |TAMS 0x0000000082f00000, 0x0000000082f00000| Untracked -| 47|0x0000000082f00000, 0x0000000083000000, 0x0000000083000000|100%| O| |TAMS 0x0000000083000000, 0x0000000083000000| Untracked -| 48|0x0000000083000000, 0x0000000083100000, 0x0000000083100000|100%| O| |TAMS 0x0000000083100000, 0x0000000083100000| Untracked -| 49|0x0000000083100000, 0x0000000083200000, 0x0000000083200000|100%|HS| |TAMS 0x0000000083200000, 0x0000000083200000| Complete -| 50|0x0000000083200000, 0x0000000083300000, 0x0000000083300000|100%|HC| |TAMS 0x0000000083300000, 0x0000000083300000| Complete -| 51|0x0000000083300000, 0x0000000083400000, 0x0000000083400000|100%|HC| |TAMS 0x0000000083400000, 0x0000000083400000| Complete -| 52|0x0000000083400000, 0x0000000083500000, 0x0000000083500000|100%|HS| |TAMS 0x0000000083500000, 0x0000000083500000| Complete -| 53|0x0000000083500000, 0x0000000083600000, 0x0000000083600000|100%|HC| |TAMS 0x0000000083600000, 0x0000000083600000| Complete -| 54|0x0000000083600000, 0x0000000083700000, 0x0000000083700000|100%| O| |TAMS 0x0000000083700000, 0x0000000083700000| Untracked -| 55|0x0000000083700000, 0x0000000083800000, 0x0000000083800000|100%| O| |TAMS 0x0000000083800000, 0x0000000083800000| Untracked -| 56|0x0000000083800000, 0x0000000083900000, 0x0000000083900000|100%|HS| |TAMS 0x0000000083900000, 0x0000000083900000| Complete -| 57|0x0000000083900000, 0x0000000083a00000, 0x0000000083a00000|100%|HC| |TAMS 0x0000000083a00000, 0x0000000083a00000| Complete -| 58|0x0000000083a00000, 0x0000000083b00000, 0x0000000083b00000|100%|HC| |TAMS 0x0000000083b00000, 0x0000000083b00000| Complete -| 59|0x0000000083b00000, 0x0000000083c00000, 0x0000000083c00000|100%|HS| |TAMS 0x0000000083c00000, 0x0000000083c00000| Complete -| 60|0x0000000083c00000, 0x0000000083d00000, 0x0000000083d00000|100%|HC| |TAMS 0x0000000083d00000, 0x0000000083d00000| Complete -| 61|0x0000000083d00000, 0x0000000083e00000, 0x0000000083e00000|100%|HC| |TAMS 0x0000000083e00000, 0x0000000083e00000| Complete -| 62|0x0000000083e00000, 0x0000000083f00000, 0x0000000083f00000|100%|HC| |TAMS 0x0000000083f00000, 0x0000000083f00000| Complete -| 63|0x0000000083f00000, 0x0000000084000000, 0x0000000084000000|100%| O| |TAMS 0x0000000084000000, 0x0000000084000000| Untracked -| 64|0x0000000084000000, 0x0000000084100000, 0x0000000084100000|100%| O| |TAMS 0x0000000084100000, 0x0000000084100000| Untracked -| 65|0x0000000084100000, 0x0000000084200000, 0x0000000084200000|100%| O| |TAMS 0x0000000084200000, 0x0000000084200000| Untracked -| 66|0x0000000084200000, 0x0000000084300000, 0x0000000084300000|100%| O| |TAMS 0x0000000084300000, 0x0000000084300000| Untracked -| 67|0x0000000084300000, 0x0000000084400000, 0x0000000084400000|100%| O| |TAMS 0x0000000084400000, 0x0000000084400000| Untracked -| 68|0x0000000084400000, 0x0000000084500000, 0x0000000084500000|100%| O| |TAMS 0x0000000084500000, 0x0000000084500000| Untracked -| 69|0x0000000084500000, 0x0000000084600000, 0x0000000084600000|100%| O| |TAMS 0x0000000084600000, 0x0000000084600000| Untracked -| 70|0x0000000084600000, 0x0000000084700000, 0x0000000084700000|100%| O| |TAMS 0x0000000084700000, 0x0000000084700000| Untracked -| 71|0x0000000084700000, 0x0000000084800000, 0x0000000084800000|100%| O| |TAMS 0x0000000084800000, 0x0000000084800000| Untracked -| 72|0x0000000084800000, 0x0000000084900000, 0x0000000084900000|100%|HS| |TAMS 0x0000000084900000, 0x0000000084900000| Complete -| 73|0x0000000084900000, 0x0000000084a00000, 0x0000000084a00000|100%|HC| |TAMS 0x0000000084a00000, 0x0000000084a00000| Complete -| 74|0x0000000084a00000, 0x0000000084b00000, 0x0000000084b00000|100%|HC| |TAMS 0x0000000084b00000, 0x0000000084b00000| Complete -| 75|0x0000000084b00000, 0x0000000084c00000, 0x0000000084c00000|100%|HC| |TAMS 0x0000000084c00000, 0x0000000084c00000| Complete -| 76|0x0000000084c00000, 0x0000000084d00000, 0x0000000084d00000|100%|HC| |TAMS 0x0000000084d00000, 0x0000000084d00000| Complete -| 77|0x0000000084d00000, 0x0000000084e00000, 0x0000000084e00000|100%| O| |TAMS 0x0000000084e00000, 0x0000000084e00000| Untracked -| 78|0x0000000084e00000, 0x0000000084f00000, 0x0000000084f00000|100%| O| |TAMS 0x0000000084f00000, 0x0000000084f00000| Untracked -| 79|0x0000000084f00000, 0x0000000085000000, 0x0000000085000000|100%| O| |TAMS 0x0000000085000000, 0x0000000085000000| Untracked -| 80|0x0000000085000000, 0x0000000085100000, 0x0000000085100000|100%| O| |TAMS 0x0000000085100000, 0x0000000085100000| Untracked -| 81|0x0000000085100000, 0x0000000085200000, 0x0000000085200000|100%| O| |TAMS 0x0000000085200000, 0x0000000085200000| Untracked -| 82|0x0000000085200000, 0x0000000085300000, 0x0000000085300000|100%| O| |TAMS 0x0000000085300000, 0x0000000085300000| Untracked -| 83|0x0000000085300000, 0x0000000085400000, 0x0000000085400000|100%|HS| |TAMS 0x0000000085400000, 0x0000000085400000| Complete -| 84|0x0000000085400000, 0x0000000085500000, 0x0000000085500000|100%|HC| |TAMS 0x0000000085500000, 0x0000000085500000| Complete -| 85|0x0000000085500000, 0x0000000085600000, 0x0000000085600000|100%|HS| |TAMS 0x0000000085600000, 0x0000000085600000| Complete -| 86|0x0000000085600000, 0x0000000085700000, 0x0000000085700000|100%|HC| |TAMS 0x0000000085700000, 0x0000000085700000| Complete -| 87|0x0000000085700000, 0x0000000085800000, 0x0000000085800000|100%|HC| |TAMS 0x0000000085800000, 0x0000000085800000| Complete -| 88|0x0000000085800000, 0x0000000085900000, 0x0000000085900000|100%|HC| |TAMS 0x0000000085900000, 0x0000000085900000| Complete -| 89|0x0000000085900000, 0x0000000085a00000, 0x0000000085a00000|100%| O| |TAMS 0x0000000085a00000, 0x0000000085a00000| Untracked -| 90|0x0000000085a00000, 0x0000000085b00000, 0x0000000085b00000|100%| O| |TAMS 0x0000000085b00000, 0x0000000085b00000| Untracked -| 91|0x0000000085b00000, 0x0000000085c00000, 0x0000000085c00000|100%| O| |TAMS 0x0000000085c00000, 0x0000000085c00000| Untracked -| 92|0x0000000085c00000, 0x0000000085d00000, 0x0000000085d00000|100%| O| |TAMS 0x0000000085d00000, 0x0000000085d00000| Untracked -| 93|0x0000000085d00000, 0x0000000085e00000, 0x0000000085e00000|100%| O| |TAMS 0x0000000085e00000, 0x0000000085e00000| Untracked -| 94|0x0000000085e00000, 0x0000000085f00000, 0x0000000085f00000|100%| O| |TAMS 0x0000000085f00000, 0x0000000085f00000| Untracked -| 95|0x0000000085f00000, 0x0000000086000000, 0x0000000086000000|100%| O| |TAMS 0x0000000086000000, 0x0000000086000000| Untracked -| 96|0x0000000086000000, 0x0000000086100000, 0x0000000086100000|100%| O| |TAMS 0x0000000086100000, 0x0000000086100000| Untracked -| 97|0x0000000086100000, 0x0000000086200000, 0x0000000086200000|100%| O| |TAMS 0x0000000086200000, 0x0000000086200000| Untracked -| 98|0x0000000086200000, 0x0000000086300000, 0x0000000086300000|100%| O| |TAMS 0x0000000086300000, 0x0000000086300000| Untracked -| 99|0x0000000086300000, 0x0000000086400000, 0x0000000086400000|100%| O| |TAMS 0x0000000086400000, 0x0000000086400000| Untracked -| 100|0x0000000086400000, 0x0000000086500000, 0x0000000086500000|100%| O| |TAMS 0x0000000086500000, 0x0000000086500000| Untracked -| 101|0x0000000086500000, 0x0000000086600000, 0x0000000086600000|100%| O| |TAMS 0x0000000086600000, 0x0000000086600000| Untracked -| 102|0x0000000086600000, 0x0000000086700000, 0x0000000086700000|100%| O| |TAMS 0x0000000086700000, 0x0000000086700000| Untracked -| 103|0x0000000086700000, 0x0000000086800000, 0x0000000086800000|100%| O| |TAMS 0x0000000086800000, 0x0000000086800000| Untracked -| 104|0x0000000086800000, 0x0000000086900000, 0x0000000086900000|100%|HS| |TAMS 0x0000000086800000, 0x0000000086900000| Complete -| 105|0x0000000086900000, 0x0000000086a00000, 0x0000000086a00000|100%|HC| |TAMS 0x0000000086900000, 0x0000000086a00000| Complete -| 106|0x0000000086a00000, 0x0000000086b00000, 0x0000000086b00000|100%|HS| |TAMS 0x0000000086a00000, 0x0000000086b00000| Complete -| 107|0x0000000086b00000, 0x0000000086c00000, 0x0000000086c00000|100%|HC| |TAMS 0x0000000086b00000, 0x0000000086c00000| Complete -| 108|0x0000000086c00000, 0x0000000086d00000, 0x0000000086d00000|100%|HC| |TAMS 0x0000000086c00000, 0x0000000086d00000| Complete -| 109|0x0000000086d00000, 0x0000000086e00000, 0x0000000086e00000|100%|HS| |TAMS 0x0000000086d00000, 0x0000000086e00000| Complete -| 110|0x0000000086e00000, 0x0000000086f00000, 0x0000000086f00000|100%|HC| |TAMS 0x0000000086e00000, 0x0000000086f00000| Complete -| 111|0x0000000086f00000, 0x0000000087000000, 0x0000000087000000|100%|HC| |TAMS 0x0000000086f00000, 0x0000000087000000| Complete -| 112|0x0000000087000000, 0x0000000087100000, 0x0000000087100000|100%|HS| |TAMS 0x0000000087000000, 0x0000000087100000| Complete -| 113|0x0000000087100000, 0x0000000087200000, 0x0000000087200000|100%|HC| |TAMS 0x0000000087100000, 0x0000000087200000| Complete -| 114|0x0000000087200000, 0x0000000087300000, 0x0000000087300000|100%|HC| |TAMS 0x0000000087200000, 0x0000000087300000| Complete -| 115|0x0000000087300000, 0x0000000087400000, 0x0000000087400000|100%|HC| |TAMS 0x0000000087300000, 0x0000000087400000| Complete -| 116|0x0000000087400000, 0x0000000087500000, 0x0000000087500000|100%|HS| |TAMS 0x0000000087400000, 0x0000000087500000| Complete -| 117|0x0000000087500000, 0x0000000087600000, 0x0000000087600000|100%|HC| |TAMS 0x0000000087500000, 0x0000000087600000| Complete -| 118|0x0000000087600000, 0x0000000087700000, 0x0000000087700000|100%|HC| |TAMS 0x0000000087600000, 0x0000000087700000| Complete -| 119|0x0000000087700000, 0x0000000087800000, 0x0000000087800000|100%|HC| |TAMS 0x0000000087700000, 0x0000000087800000| Complete -| 120|0x0000000087800000, 0x0000000087900000, 0x0000000087900000|100%|HC| |TAMS 0x0000000087800000, 0x0000000087900000| Complete -| 121|0x0000000087900000, 0x0000000087a00000, 0x0000000087a00000|100%|HS| |TAMS 0x0000000087900000, 0x0000000087a00000| Complete -| 122|0x0000000087a00000, 0x0000000087b00000, 0x0000000087b00000|100%| O| |TAMS 0x0000000087a00000, 0x0000000087b00000| Untracked -| 123|0x0000000087b00000, 0x0000000087c00000, 0x0000000087c00000|100%| O| |TAMS 0x0000000087b00000, 0x0000000087c00000| Untracked -| 124|0x0000000087c00000, 0x0000000087d00000, 0x0000000087d00000|100%| O| |TAMS 0x0000000087c00000, 0x0000000087d00000| Untracked -| 125|0x0000000087d00000, 0x0000000087e00000, 0x0000000087e00000|100%| O| |TAMS 0x0000000087d00000, 0x0000000087e00000| Untracked -| 126|0x0000000087e00000, 0x0000000087f00000, 0x0000000087f00000|100%| O| |TAMS 0x0000000087e00000, 0x0000000087f00000| Untracked -| 127|0x0000000087f00000, 0x0000000088000000, 0x0000000088000000|100%| O| |TAMS 0x0000000087f00000, 0x0000000088000000| Untracked -| 128|0x0000000088000000, 0x0000000088100000, 0x0000000088100000|100%| O| |TAMS 0x0000000088000000, 0x0000000088100000| Untracked -| 129|0x0000000088100000, 0x0000000088200000, 0x0000000088200000|100%| O| |TAMS 0x0000000088100000, 0x0000000088200000| Untracked -| 130|0x0000000088200000, 0x0000000088300000, 0x0000000088300000|100%| O| |TAMS 0x0000000088200000, 0x0000000088300000| Untracked -| 131|0x0000000088300000, 0x0000000088400000, 0x0000000088400000|100%| O| |TAMS 0x0000000088300000, 0x0000000088400000| Untracked -| 132|0x0000000088400000, 0x0000000088500000, 0x0000000088500000|100%| O| |TAMS 0x0000000088400000, 0x0000000088500000| Untracked -| 133|0x0000000088500000, 0x0000000088600000, 0x0000000088600000|100%| O| |TAMS 0x0000000088500000, 0x0000000088600000| Untracked -| 134|0x0000000088600000, 0x0000000088600000, 0x0000000088700000| 0%| F| |TAMS 0x0000000088600000, 0x0000000088600000| Untracked -| 135|0x0000000088700000, 0x0000000088700000, 0x0000000088800000| 0%| F| |TAMS 0x0000000088700000, 0x0000000088700000| Untracked -| 136|0x0000000088800000, 0x0000000088800000, 0x0000000088900000| 0%| F| |TAMS 0x0000000088800000, 0x0000000088800000| Untracked -| 137|0x0000000088900000, 0x0000000088900000, 0x0000000088a00000| 0%| F| |TAMS 0x0000000088900000, 0x0000000088900000| Untracked -| 138|0x0000000088a00000, 0x0000000088a00000, 0x0000000088b00000| 0%| F| |TAMS 0x0000000088a00000, 0x0000000088a00000| Untracked -| 139|0x0000000088b00000, 0x0000000088b00000, 0x0000000088c00000| 0%| F| |TAMS 0x0000000088b00000, 0x0000000088b00000| Untracked -| 140|0x0000000088c00000, 0x0000000088c00000, 0x0000000088d00000| 0%| F| |TAMS 0x0000000088c00000, 0x0000000088c00000| Untracked -| 141|0x0000000088d00000, 0x0000000088d00000, 0x0000000088e00000| 0%| F| |TAMS 0x0000000088d00000, 0x0000000088d00000| Untracked -| 142|0x0000000088e00000, 0x0000000088e00000, 0x0000000088f00000| 0%| F| |TAMS 0x0000000088e00000, 0x0000000088e00000| Untracked -| 143|0x0000000088f00000, 0x0000000088f00000, 0x0000000089000000| 0%| F| |TAMS 0x0000000088f00000, 0x0000000088f00000| Untracked -| 144|0x0000000089000000, 0x0000000089000000, 0x0000000089100000| 0%| F| |TAMS 0x0000000089000000, 0x0000000089000000| Untracked -| 145|0x0000000089100000, 0x0000000089100000, 0x0000000089200000| 0%| F| |TAMS 0x0000000089100000, 0x0000000089100000| Untracked -| 146|0x0000000089200000, 0x0000000089200000, 0x0000000089300000| 0%| F| |TAMS 0x0000000089200000, 0x0000000089200000| Untracked -| 147|0x0000000089300000, 0x0000000089300000, 0x0000000089400000| 0%| F| |TAMS 0x0000000089300000, 0x0000000089300000| Untracked -| 148|0x0000000089400000, 0x0000000089400000, 0x0000000089500000| 0%| F| |TAMS 0x0000000089400000, 0x0000000089400000| Untracked -| 149|0x0000000089500000, 0x0000000089500000, 0x0000000089600000| 0%| F| |TAMS 0x0000000089500000, 0x0000000089500000| Untracked -| 150|0x0000000089600000, 0x0000000089600000, 0x0000000089700000| 0%| F| |TAMS 0x0000000089600000, 0x0000000089600000| Untracked -| 151|0x0000000089700000, 0x0000000089700000, 0x0000000089800000| 0%| F| |TAMS 0x0000000089700000, 0x0000000089700000| Untracked -| 152|0x0000000089800000, 0x0000000089800000, 0x0000000089900000| 0%| F| |TAMS 0x0000000089800000, 0x0000000089800000| Untracked -| 153|0x0000000089900000, 0x0000000089900000, 0x0000000089a00000| 0%| F| |TAMS 0x0000000089900000, 0x0000000089900000| Untracked -| 154|0x0000000089a00000, 0x0000000089a00000, 0x0000000089b00000| 0%| F| |TAMS 0x0000000089a00000, 0x0000000089a00000| Untracked -| 155|0x0000000089b00000, 0x0000000089b00000, 0x0000000089c00000| 0%| F| |TAMS 0x0000000089b00000, 0x0000000089b00000| Untracked -| 156|0x0000000089c00000, 0x0000000089c00000, 0x0000000089d00000| 0%| F| |TAMS 0x0000000089c00000, 0x0000000089c00000| Untracked -| 157|0x0000000089d00000, 0x0000000089d00000, 0x0000000089e00000| 0%| F| |TAMS 0x0000000089d00000, 0x0000000089d00000| Untracked -| 158|0x0000000089e00000, 0x0000000089e00000, 0x0000000089f00000| 0%| F| |TAMS 0x0000000089e00000, 0x0000000089e00000| Untracked -| 159|0x0000000089f00000, 0x0000000089f00000, 0x000000008a000000| 0%| F| |TAMS 0x0000000089f00000, 0x0000000089f00000| Untracked -| 160|0x000000008a000000, 0x000000008a000000, 0x000000008a100000| 0%| F| |TAMS 0x000000008a000000, 0x000000008a000000| Untracked -| 161|0x000000008a100000, 0x000000008a100000, 0x000000008a200000| 0%| F| |TAMS 0x000000008a100000, 0x000000008a100000| Untracked -| 162|0x000000008a200000, 0x000000008a200000, 0x000000008a300000| 0%| F| |TAMS 0x000000008a200000, 0x000000008a200000| Untracked -| 163|0x000000008a300000, 0x000000008a300000, 0x000000008a400000| 0%| F| |TAMS 0x000000008a300000, 0x000000008a300000| Untracked -| 164|0x000000008a400000, 0x000000008a400000, 0x000000008a500000| 0%| F| |TAMS 0x000000008a400000, 0x000000008a400000| Untracked -| 165|0x000000008a500000, 0x000000008a500000, 0x000000008a600000| 0%| F| |TAMS 0x000000008a500000, 0x000000008a500000| Untracked -| 166|0x000000008a600000, 0x000000008a600000, 0x000000008a700000| 0%| F| |TAMS 0x000000008a600000, 0x000000008a600000| Untracked -| 167|0x000000008a700000, 0x000000008a700000, 0x000000008a800000| 0%| F| |TAMS 0x000000008a700000, 0x000000008a700000| Untracked -| 168|0x000000008a800000, 0x000000008a800000, 0x000000008a900000| 0%| F| |TAMS 0x000000008a800000, 0x000000008a800000| Untracked -| 169|0x000000008a900000, 0x000000008a900000, 0x000000008aa00000| 0%| F| |TAMS 0x000000008a900000, 0x000000008a900000| Untracked -| 170|0x000000008aa00000, 0x000000008aa00000, 0x000000008ab00000| 0%| F| |TAMS 0x000000008aa00000, 0x000000008aa00000| Untracked -| 171|0x000000008ab00000, 0x000000008ab00000, 0x000000008ac00000| 0%| F| |TAMS 0x000000008ab00000, 0x000000008ab00000| Untracked -| 172|0x000000008ac00000, 0x000000008ac00000, 0x000000008ad00000| 0%| F| |TAMS 0x000000008ac00000, 0x000000008ac00000| Untracked -| 173|0x000000008ad00000, 0x000000008ad00000, 0x000000008ae00000| 0%| F| |TAMS 0x000000008ad00000, 0x000000008ad00000| Untracked -| 174|0x000000008ae00000, 0x000000008ae00000, 0x000000008af00000| 0%| F| |TAMS 0x000000008ae00000, 0x000000008ae00000| Untracked -| 175|0x000000008af00000, 0x000000008af00000, 0x000000008b000000| 0%| F| |TAMS 0x000000008af00000, 0x000000008af00000| Untracked -| 176|0x000000008b000000, 0x000000008b000000, 0x000000008b100000| 0%| F| |TAMS 0x000000008b000000, 0x000000008b000000| Untracked -| 177|0x000000008b100000, 0x000000008b100000, 0x000000008b200000| 0%| F| |TAMS 0x000000008b100000, 0x000000008b100000| Untracked -| 178|0x000000008b200000, 0x000000008b200000, 0x000000008b300000| 0%| F| |TAMS 0x000000008b200000, 0x000000008b200000| Untracked -| 179|0x000000008b300000, 0x000000008b300000, 0x000000008b400000| 0%| F| |TAMS 0x000000008b300000, 0x000000008b300000| Untracked -| 180|0x000000008b400000, 0x000000008b400000, 0x000000008b500000| 0%| F| |TAMS 0x000000008b400000, 0x000000008b400000| Untracked -| 181|0x000000008b500000, 0x000000008b500000, 0x000000008b600000| 0%| F| |TAMS 0x000000008b500000, 0x000000008b500000| Untracked -| 182|0x000000008b600000, 0x000000008b600000, 0x000000008b700000| 0%| F| |TAMS 0x000000008b600000, 0x000000008b600000| Untracked -| 183|0x000000008b700000, 0x000000008b700000, 0x000000008b800000| 0%| F| |TAMS 0x000000008b700000, 0x000000008b700000| Untracked -| 184|0x000000008b800000, 0x000000008b800000, 0x000000008b900000| 0%| F| |TAMS 0x000000008b800000, 0x000000008b800000| Untracked -| 185|0x000000008b900000, 0x000000008b900000, 0x000000008ba00000| 0%| F| |TAMS 0x000000008b900000, 0x000000008b900000| Untracked -| 186|0x000000008ba00000, 0x000000008ba00000, 0x000000008bb00000| 0%| F| |TAMS 0x000000008ba00000, 0x000000008ba00000| Untracked -| 187|0x000000008bb00000, 0x000000008bb00000, 0x000000008bc00000| 0%| F| |TAMS 0x000000008bb00000, 0x000000008bb00000| Untracked -| 188|0x000000008bc00000, 0x000000008bc00000, 0x000000008bd00000| 0%| F| |TAMS 0x000000008bc00000, 0x000000008bc00000| Untracked -| 189|0x000000008bd00000, 0x000000008bd00000, 0x000000008be00000| 0%| F| |TAMS 0x000000008bd00000, 0x000000008bd00000| Untracked -| 190|0x000000008be00000, 0x000000008be00000, 0x000000008bf00000| 0%| F| |TAMS 0x000000008be00000, 0x000000008be00000| Untracked -| 191|0x000000008bf00000, 0x000000008bf00000, 0x000000008c000000| 0%| F| |TAMS 0x000000008bf00000, 0x000000008bf00000| Untracked -| 192|0x000000008c000000, 0x000000008c000000, 0x000000008c100000| 0%| F| |TAMS 0x000000008c000000, 0x000000008c000000| Untracked -| 193|0x000000008c100000, 0x000000008c100000, 0x000000008c200000| 0%| F| |TAMS 0x000000008c100000, 0x000000008c100000| Untracked -| 194|0x000000008c200000, 0x000000008c200000, 0x000000008c300000| 0%| F| |TAMS 0x000000008c200000, 0x000000008c200000| Untracked -| 195|0x000000008c300000, 0x000000008c300000, 0x000000008c400000| 0%| F| |TAMS 0x000000008c300000, 0x000000008c300000| Untracked -| 196|0x000000008c400000, 0x000000008c400000, 0x000000008c500000| 0%| F| |TAMS 0x000000008c400000, 0x000000008c400000| Untracked -| 197|0x000000008c500000, 0x000000008c500000, 0x000000008c600000| 0%| F| |TAMS 0x000000008c500000, 0x000000008c500000| Untracked -| 198|0x000000008c600000, 0x000000008c600000, 0x000000008c700000| 0%| F| |TAMS 0x000000008c600000, 0x000000008c600000| Untracked -| 199|0x000000008c700000, 0x000000008c700000, 0x000000008c800000| 0%| F| |TAMS 0x000000008c700000, 0x000000008c700000| Untracked -| 200|0x000000008c800000, 0x000000008c800000, 0x000000008c900000| 0%| F| |TAMS 0x000000008c800000, 0x000000008c800000| Untracked -| 201|0x000000008c900000, 0x000000008c900000, 0x000000008ca00000| 0%| F| |TAMS 0x000000008c900000, 0x000000008c900000| Untracked -| 202|0x000000008ca00000, 0x000000008ca00000, 0x000000008cb00000| 0%| F| |TAMS 0x000000008ca00000, 0x000000008ca00000| Untracked -| 203|0x000000008cb00000, 0x000000008cb00000, 0x000000008cc00000| 0%| F| |TAMS 0x000000008cb00000, 0x000000008cb00000| Untracked -| 204|0x000000008cc00000, 0x000000008cc00000, 0x000000008cd00000| 0%| F| |TAMS 0x000000008cc00000, 0x000000008cc00000| Untracked -| 205|0x000000008cd00000, 0x000000008cd00000, 0x000000008ce00000| 0%| F| |TAMS 0x000000008cd00000, 0x000000008cd00000| Untracked -| 206|0x000000008ce00000, 0x000000008ce00000, 0x000000008cf00000| 0%| F| |TAMS 0x000000008ce00000, 0x000000008ce00000| Untracked -| 207|0x000000008cf00000, 0x000000008cf00000, 0x000000008d000000| 0%| F| |TAMS 0x000000008cf00000, 0x000000008cf00000| Untracked -| 208|0x000000008d000000, 0x000000008d000000, 0x000000008d100000| 0%| F| |TAMS 0x000000008d000000, 0x000000008d000000| Untracked -| 209|0x000000008d100000, 0x000000008d100000, 0x000000008d200000| 0%| F| |TAMS 0x000000008d100000, 0x000000008d100000| Untracked -| 210|0x000000008d200000, 0x000000008d200000, 0x000000008d300000| 0%| F| |TAMS 0x000000008d200000, 0x000000008d200000| Untracked -| 211|0x000000008d300000, 0x000000008d300000, 0x000000008d400000| 0%| F| |TAMS 0x000000008d300000, 0x000000008d300000| Untracked -| 212|0x000000008d400000, 0x000000008d400000, 0x000000008d500000| 0%| F| |TAMS 0x000000008d400000, 0x000000008d400000| Untracked -| 213|0x000000008d500000, 0x000000008d500000, 0x000000008d600000| 0%| F| |TAMS 0x000000008d500000, 0x000000008d500000| Untracked -| 214|0x000000008d600000, 0x000000008d600000, 0x000000008d700000| 0%| F| |TAMS 0x000000008d600000, 0x000000008d600000| Untracked -| 215|0x000000008d700000, 0x000000008d700000, 0x000000008d800000| 0%| F| |TAMS 0x000000008d700000, 0x000000008d700000| Untracked -| 216|0x000000008d800000, 0x000000008d800000, 0x000000008d900000| 0%| F| |TAMS 0x000000008d800000, 0x000000008d800000| Untracked -| 217|0x000000008d900000, 0x000000008d900000, 0x000000008da00000| 0%| F| |TAMS 0x000000008d900000, 0x000000008d900000| Untracked -| 218|0x000000008da00000, 0x000000008da00000, 0x000000008db00000| 0%| F| |TAMS 0x000000008da00000, 0x000000008da00000| Untracked -| 219|0x000000008db00000, 0x000000008db00000, 0x000000008dc00000| 0%| F| |TAMS 0x000000008db00000, 0x000000008db00000| Untracked -| 220|0x000000008dc00000, 0x000000008dc00000, 0x000000008dd00000| 0%| F| |TAMS 0x000000008dc00000, 0x000000008dc00000| Untracked -| 221|0x000000008dd00000, 0x000000008dd00000, 0x000000008de00000| 0%| F| |TAMS 0x000000008dd00000, 0x000000008dd00000| Untracked -| 222|0x000000008de00000, 0x000000008de00000, 0x000000008df00000| 0%| F| |TAMS 0x000000008de00000, 0x000000008de00000| Untracked -| 223|0x000000008df00000, 0x000000008df00000, 0x000000008e000000| 0%| F| |TAMS 0x000000008df00000, 0x000000008df00000| Untracked -| 224|0x000000008e000000, 0x000000008e000000, 0x000000008e100000| 0%| F| |TAMS 0x000000008e000000, 0x000000008e000000| Untracked -| 225|0x000000008e100000, 0x000000008e100000, 0x000000008e200000| 0%| F| |TAMS 0x000000008e100000, 0x000000008e100000| Untracked -| 226|0x000000008e200000, 0x000000008e200000, 0x000000008e300000| 0%| F| |TAMS 0x000000008e200000, 0x000000008e200000| Untracked -| 227|0x000000008e300000, 0x000000008e300000, 0x000000008e400000| 0%| F| |TAMS 0x000000008e300000, 0x000000008e300000| Untracked -| 228|0x000000008e400000, 0x000000008e400000, 0x000000008e500000| 0%| F| |TAMS 0x000000008e400000, 0x000000008e400000| Untracked -| 229|0x000000008e500000, 0x000000008e500000, 0x000000008e600000| 0%| F| |TAMS 0x000000008e500000, 0x000000008e500000| Untracked -| 230|0x000000008e600000, 0x000000008e600000, 0x000000008e700000| 0%| F| |TAMS 0x000000008e600000, 0x000000008e600000| Untracked -| 231|0x000000008e700000, 0x000000008e700000, 0x000000008e800000| 0%| F| |TAMS 0x000000008e700000, 0x000000008e700000| Untracked -| 232|0x000000008e800000, 0x000000008e800000, 0x000000008e900000| 0%| F| |TAMS 0x000000008e800000, 0x000000008e800000| Untracked -| 233|0x000000008e900000, 0x000000008e900000, 0x000000008ea00000| 0%| F| |TAMS 0x000000008e900000, 0x000000008e900000| Untracked -| 234|0x000000008ea00000, 0x000000008ea00000, 0x000000008eb00000| 0%| F| |TAMS 0x000000008ea00000, 0x000000008ea00000| Untracked -| 235|0x000000008eb00000, 0x000000008eb00000, 0x000000008ec00000| 0%| F| |TAMS 0x000000008eb00000, 0x000000008eb00000| Untracked -| 236|0x000000008ec00000, 0x000000008ec00000, 0x000000008ed00000| 0%| F| |TAMS 0x000000008ec00000, 0x000000008ec00000| Untracked -| 237|0x000000008ed00000, 0x000000008ed00000, 0x000000008ee00000| 0%| F| |TAMS 0x000000008ed00000, 0x000000008ed00000| Untracked -| 238|0x000000008ee00000, 0x000000008ee00000, 0x000000008ef00000| 0%| F| |TAMS 0x000000008ee00000, 0x000000008ee00000| Untracked -| 239|0x000000008ef00000, 0x000000008ef00000, 0x000000008f000000| 0%| F| |TAMS 0x000000008ef00000, 0x000000008ef00000| Untracked -| 240|0x000000008f000000, 0x000000008f000000, 0x000000008f100000| 0%| F| |TAMS 0x000000008f000000, 0x000000008f000000| Untracked -| 241|0x000000008f100000, 0x000000008f100000, 0x000000008f200000| 0%| F| |TAMS 0x000000008f100000, 0x000000008f100000| Untracked -| 242|0x000000008f200000, 0x000000008f200000, 0x000000008f300000| 0%| F| |TAMS 0x000000008f200000, 0x000000008f200000| Untracked -| 243|0x000000008f300000, 0x000000008f300000, 0x000000008f400000| 0%| F| |TAMS 0x000000008f300000, 0x000000008f300000| Untracked -| 244|0x000000008f400000, 0x000000008f400000, 0x000000008f500000| 0%| F| |TAMS 0x000000008f400000, 0x000000008f400000| Untracked -| 245|0x000000008f500000, 0x000000008f500000, 0x000000008f600000| 0%| F| |TAMS 0x000000008f500000, 0x000000008f500000| Untracked -| 246|0x000000008f600000, 0x000000008f600000, 0x000000008f700000| 0%| F| |TAMS 0x000000008f600000, 0x000000008f600000| Untracked -| 247|0x000000008f700000, 0x000000008f700000, 0x000000008f800000| 0%| F| |TAMS 0x000000008f700000, 0x000000008f700000| Untracked -| 248|0x000000008f800000, 0x000000008f800000, 0x000000008f900000| 0%| F| |TAMS 0x000000008f800000, 0x000000008f800000| Untracked -| 249|0x000000008f900000, 0x000000008f900000, 0x000000008fa00000| 0%| F| |TAMS 0x000000008f900000, 0x000000008f900000| Untracked -| 250|0x000000008fa00000, 0x000000008fa00000, 0x000000008fb00000| 0%| F| |TAMS 0x000000008fa00000, 0x000000008fa00000| Untracked -| 251|0x000000008fb00000, 0x000000008fb00000, 0x000000008fc00000| 0%| F| |TAMS 0x000000008fb00000, 0x000000008fb00000| Untracked -| 252|0x000000008fc00000, 0x000000008fc00000, 0x000000008fd00000| 0%| F| |TAMS 0x000000008fc00000, 0x000000008fc00000| Untracked -| 253|0x000000008fd00000, 0x000000008fd00000, 0x000000008fe00000| 0%| F| |TAMS 0x000000008fd00000, 0x000000008fd00000| Untracked -| 254|0x000000008fe00000, 0x000000008fe00000, 0x000000008ff00000| 0%| F| |TAMS 0x000000008fe00000, 0x000000008fe00000| Untracked -| 255|0x000000008ff00000, 0x000000008ff00000, 0x0000000090000000| 0%| F| |TAMS 0x000000008ff00000, 0x000000008ff00000| Untracked -| 256|0x0000000090000000, 0x0000000090000000, 0x0000000090100000| 0%| F| |TAMS 0x0000000090000000, 0x0000000090000000| Untracked -| 257|0x0000000090100000, 0x0000000090100000, 0x0000000090200000| 0%| F| |TAMS 0x0000000090100000, 0x0000000090100000| Untracked -| 258|0x0000000090200000, 0x0000000090200000, 0x0000000090300000| 0%| F| |TAMS 0x0000000090200000, 0x0000000090200000| Untracked -| 259|0x0000000090300000, 0x0000000090300000, 0x0000000090400000| 0%| F| |TAMS 0x0000000090300000, 0x0000000090300000| Untracked -| 260|0x0000000090400000, 0x0000000090400000, 0x0000000090500000| 0%| F| |TAMS 0x0000000090400000, 0x0000000090400000| Untracked -| 261|0x0000000090500000, 0x0000000090500000, 0x0000000090600000| 0%| F| |TAMS 0x0000000090500000, 0x0000000090500000| Untracked -| 262|0x0000000090600000, 0x0000000090600000, 0x0000000090700000| 0%| F| |TAMS 0x0000000090600000, 0x0000000090600000| Untracked -| 263|0x0000000090700000, 0x0000000090700000, 0x0000000090800000| 0%| F| |TAMS 0x0000000090700000, 0x0000000090700000| Untracked -| 264|0x0000000090800000, 0x0000000090800000, 0x0000000090900000| 0%| F| |TAMS 0x0000000090800000, 0x0000000090800000| Untracked -| 265|0x0000000090900000, 0x0000000090900000, 0x0000000090a00000| 0%| F| |TAMS 0x0000000090900000, 0x0000000090900000| Untracked -| 266|0x0000000090a00000, 0x0000000090a00000, 0x0000000090b00000| 0%| F| |TAMS 0x0000000090a00000, 0x0000000090a00000| Untracked -| 267|0x0000000090b00000, 0x0000000090b00000, 0x0000000090c00000| 0%| F| |TAMS 0x0000000090b00000, 0x0000000090b00000| Untracked -| 268|0x0000000090c00000, 0x0000000090c00000, 0x0000000090d00000| 0%| F| |TAMS 0x0000000090c00000, 0x0000000090c00000| Untracked -| 269|0x0000000090d00000, 0x0000000090d00000, 0x0000000090e00000| 0%| F| |TAMS 0x0000000090d00000, 0x0000000090d00000| Untracked -| 270|0x0000000090e00000, 0x0000000090e00000, 0x0000000090f00000| 0%| F| |TAMS 0x0000000090e00000, 0x0000000090e00000| Untracked -| 271|0x0000000090f00000, 0x0000000090fb8a30, 0x0000000091000000| 72%| S|CS|TAMS 0x0000000090f00000, 0x0000000090f00000| Complete -| 272|0x0000000091000000, 0x0000000091000000, 0x0000000091100000| 0%| F| |TAMS 0x0000000091000000, 0x0000000091000000| Untracked -| 273|0x0000000091100000, 0x0000000091100000, 0x0000000091200000| 0%| F| |TAMS 0x0000000091100000, 0x0000000091100000| Untracked -| 274|0x0000000091200000, 0x0000000091200000, 0x0000000091300000| 0%| F| |TAMS 0x0000000091200000, 0x0000000091200000| Untracked -| 275|0x0000000091300000, 0x0000000091300000, 0x0000000091400000| 0%| F| |TAMS 0x0000000091300000, 0x0000000091300000| Untracked -| 276|0x0000000091400000, 0x0000000091400000, 0x0000000091500000| 0%| F| |TAMS 0x0000000091400000, 0x0000000091400000| Untracked -| 277|0x0000000091500000, 0x0000000091500000, 0x0000000091600000| 0%| F| |TAMS 0x0000000091500000, 0x0000000091500000| Untracked - -Card table byte_map: [0x000002252a680000,0x000002252aa80000] _byte_map_base: 0x000002252a280000 - -Marking Bits (Prev, Next): (CMBitMap*) 0x0000022517b9ab60, (CMBitMap*) 0x0000022517b9ab28 - Prev Bits: [0x000002252ce80000, 0x000002252ee80000) - Next Bits: [0x000002252ae80000, 0x000002252ce80000) - -Polling page: 0x0000022515b10000 - -Metaspace: - -Usage: - Non-class: 80.88 MB capacity, 79.13 MB ( 98%) used, 1.46 MB ( 2%) free+waste, 302.69 KB ( <1%) overhead. - Class: 13.36 MB capacity, 12.30 MB ( 92%) used, 941.90 KB ( 7%) free+waste, 145.25 KB ( 1%) overhead. - Both: 94.24 MB capacity, 91.42 MB ( 97%) used, 2.38 MB ( 3%) free+waste, 447.94 KB ( <1%) overhead. - -Virtual space: - Non-class space: 90.00 MB reserved, 80.92 MB ( 90%) committed - Class space: 1.00 GB reserved, 13.38 MB ( 1%) committed - Both: 1.09 GB reserved, 94.30 MB ( 8%) committed - -Chunk freelists: - Non-Class: 42.00 KB - Class: 18.00 KB - Both: 60.00 KB - -MaxMetaspaceSize: 17179869184.00 GB -CompressedClassSpaceSize: 1.00 GB -Initial GC threshold: 20.80 MB -Current GC threshold: 146.24 MB -CDS: off - -CodeHeap 'non-profiled nmethods': size=120064Kb used=5951Kb max_used=5951Kb free=114112Kb - bounds [0x0000022523140000, 0x0000022523710000, 0x000002252a680000] -CodeHeap 'profiled nmethods': size=120000Kb used=21698Kb max_used=21698Kb free=98301Kb - bounds [0x000002251bc10000, 0x000002251d150000, 0x0000022523140000] -CodeHeap 'non-nmethods': size=5696Kb used=2390Kb max_used=2412Kb free=3305Kb - bounds [0x000002251b680000, 0x000002251b8f0000, 0x000002251bc10000] - total_blobs=10637 nmethods=9720 adapters=829 - compilation: enabled - stopped_count=0, restarted_count=0 - full_count=0 - -Compilation events (20 events): -Event: 79.992 Thread 0x0000022531a68800 nmethod 9783 0x000002251d13ca10 code [0x000002251d13cda0, 0x000002251d13ee58] -Event: 80.099 Thread 0x0000022531a66800 nmethod 9770 0x0000022523707d10 code [0x0000022523707f60, 0x000002252370a340] -Event: 80.100 Thread 0x0000022531a66800 9771 4 java.lang.StringUTF16::compress (50 bytes) -Event: 80.106 Thread 0x0000022531a66800 nmethod 9771 0x000002252370b210 code [0x000002252370b3a0, 0x000002252370b698] -Event: 80.107 Thread 0x0000022531a66800 9776 % 4 sun.nio.cs.UTF_8$Decoder::decodeArrayLoop @ 106 (691 bytes) -Event: 80.149 Thread 0x0000022531a68800 9784 2 sun.net.util.URLUtil::urlNoFragString (114 bytes) -Event: 80.150 Thread 0x0000022531a66800 nmethod 9776% 0x000002252370b790 code [0x000002252370b9e0, 0x000002252370c7b8] -Event: 80.151 Thread 0x0000022531a66800 9774 4 java.lang.String::startsWith (138 bytes) -Event: 80.151 Thread 0x0000022531a68800 nmethod 9784 0x000002251d13f890 code [0x000002251d13fb00, 0x000002251d140058] -Event: 80.151 Thread 0x0000022531a68800 9785 2 java.net.URL::getDefaultPort (8 bytes) -Event: 80.152 Thread 0x0000022531a68800 nmethod 9785 0x000002251d140390 code [0x000002251d140540, 0x000002251d140668] -Event: 80.157 Thread 0x0000022531a66800 nmethod 9774 0x000002252370d590 code [0x000002252370d720, 0x000002252370d918] -Event: 80.158 Thread 0x0000022531a66800 9773 4 java.lang.String::startsWith (7 bytes) -Event: 80.164 Thread 0x0000022531a66800 nmethod 9773 0x000002252370da90 code [0x000002252370dc20, 0x000002252370ddf8] -Event: 80.191 Thread 0x0000022531a66800 9786 4 java.lang.ClassLoader::preDefineClass (116 bytes) -Event: 80.241 Thread 0x0000022531a66800 nmethod 9786 0x000002252370df90 code [0x000002252370e1a0, 0x000002252370efc8] -Event: 80.242 Thread 0x0000022531a66800 9787 4 java.lang.String::hashCode (49 bytes) -Event: 80.250 Thread 0x0000022531a66800 nmethod 9787 0x000002252370f890 code [0x000002252370fa20, 0x000002252370fc78] -Event: 80.281 Thread 0x0000022531a68800 9788 3 org.slf4j.impl.StaticLoggerBinder::getSingleton (4 bytes) -Event: 80.281 Thread 0x0000022531a68800 nmethod 9788 0x000002251d140710 code [0x000002251d1408c0, 0x000002251d1409b8] - -GC Heap History (20 events): -Event: 40.469 GC heap before -{Heap before GC invocations=56 (full 0): - garbage-first heap total 176128K, used 133402K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 55 young (56320K), 4 survivors (4096K) - Metaspace used 56357K, capacity 58190K, committed 58416K, reserved 1099776K - class space used 7136K, capacity 7764K, committed 7808K, reserved 1048576K -} -Event: 40.493 GC heap after -{Heap after GC invocations=57 (full 0): - garbage-first heap total 176128K, used 85256K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 7 young (7168K), 7 survivors (7168K) - Metaspace used 56357K, capacity 58190K, committed 58416K, reserved 1099776K - class space used 7136K, capacity 7764K, committed 7808K, reserved 1048576K -} -Event: 43.393 GC heap before -{Heap before GC invocations=57 (full 0): - garbage-first heap total 176128K, used 142600K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 63 young (64512K), 7 survivors (7168K) - Metaspace used 61762K, capacity 63845K, committed 64048K, reserved 1103872K - class space used 7975K, capacity 8751K, committed 8832K, reserved 1048576K -} -Event: 43.441 GC heap after -{Heap after GC invocations=58 (full 0): - garbage-first heap total 176128K, used 87003K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 6 young (6144K), 6 survivors (6144K) - Metaspace used 61762K, capacity 63845K, committed 64048K, reserved 1103872K - class space used 7975K, capacity 8751K, committed 8832K, reserved 1048576K -} -Event: 45.839 GC heap before -{Heap before GC invocations=58 (full 0): - garbage-first heap total 176128K, used 144347K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 63 young (64512K), 6 survivors (6144K) - Metaspace used 64728K, capacity 67011K, committed 67120K, reserved 1107968K - class space used 8426K, capacity 9269K, committed 9344K, reserved 1048576K -} -Event: 45.877 GC heap after -{Heap after GC invocations=59 (full 0): - garbage-first heap total 176128K, used 89690K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 5 young (5120K), 5 survivors (5120K) - Metaspace used 64728K, capacity 67011K, committed 67120K, reserved 1107968K - class space used 8426K, capacity 9269K, committed 9344K, reserved 1048576K -} -Event: 48.274 GC heap before -{Heap before GC invocations=60 (full 0): - garbage-first heap total 176128K, used 153178K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 61 young (62464K), 5 survivors (5120K) - Metaspace used 69343K, capacity 71735K, committed 71856K, reserved 1112064K - class space used 9018K, capacity 9923K, committed 9984K, reserved 1048576K -} -Event: 48.337 GC heap after -{Heap after GC invocations=61 (full 0): - garbage-first heap total 211968K, used 99725K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 7 young (7168K), 7 survivors (7168K) - Metaspace used 69343K, capacity 71735K, committed 71856K, reserved 1112064K - class space used 9018K, capacity 9923K, committed 9984K, reserved 1048576K -} -Event: 52.007 GC heap before -{Heap before GC invocations=61 (full 0): - garbage-first heap total 211968K, used 167309K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 73 young (74752K), 7 survivors (7168K) - Metaspace used 74110K, capacity 76496K, committed 76848K, reserved 1116160K - class space used 9633K, capacity 10505K, committed 10624K, reserved 1048576K -} -Event: 52.081 GC heap after -{Heap after GC invocations=62 (full 0): - garbage-first heap total 211968K, used 102211K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 6 young (6144K), 6 survivors (6144K) - Metaspace used 74110K, capacity 76496K, committed 76848K, reserved 1116160K - class space used 9633K, capacity 10505K, committed 10624K, reserved 1048576K -} -Event: 63.878 GC heap before -{Heap before GC invocations=62 (full 0): - garbage-first heap total 211968K, used 175939K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 79 young (80896K), 6 survivors (6144K) - Metaspace used 79404K, capacity 82155K, committed 82352K, reserved 1120256K - class space used 10413K, capacity 11444K, committed 11520K, reserved 1048576K -} -Event: 64.071 GC heap after -{Heap after GC invocations=63 (full 0): - garbage-first heap total 211968K, used 106847K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 7 young (7168K), 7 survivors (7168K) - Metaspace used 79404K, capacity 82155K, committed 82352K, reserved 1120256K - class space used 10413K, capacity 11444K, committed 11520K, reserved 1048576K -} -Event: 72.632 GC heap before -{Heap before GC invocations=64 (full 0): - garbage-first heap total 211968K, used 177503K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 76 young (77824K), 7 survivors (7168K) - Metaspace used 85617K, capacity 88394K, committed 88752K, reserved 1126400K - class space used 11662K, capacity 12675K, committed 12800K, reserved 1048576K -} -Event: 72.787 GC heap after -{Heap after GC invocations=65 (full 0): - garbage-first heap total 211968K, used 109366K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 7 young (7168K), 7 survivors (7168K) - Metaspace used 85617K, capacity 88394K, committed 88752K, reserved 1126400K - class space used 11662K, capacity 12675K, committed 12800K, reserved 1048576K -} -Event: 73.860 GC heap before -{Heap before GC invocations=65 (full 0): - garbage-first heap total 211968K, used 119606K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 18 young (18432K), 7 survivors (7168K) - Metaspace used 86595K, capacity 89345K, committed 89648K, reserved 1126400K - class space used 11789K, capacity 12818K, committed 12928K, reserved 1048576K -} -Event: 73.917 GC heap after -{Heap after GC invocations=66 (full 0): - garbage-first heap total 284672K, used 110080K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 4 young (4096K), 4 survivors (4096K) - Metaspace used 86595K, capacity 89345K, committed 89648K, reserved 1126400K - class space used 11789K, capacity 12818K, committed 12928K, reserved 1048576K -} -Event: 80.027 GC heap before -{Heap before GC invocations=67 (full 0): - garbage-first heap total 284672K, used 179712K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 55 young (56320K), 4 survivors (4096K) - Metaspace used 93156K, capacity 96052K, committed 96304K, reserved 1132544K - class space used 12520K, capacity 13614K, committed 13696K, reserved 1048576K -} -Event: 80.095 GC heap after -{Heap after GC invocations=68 (full 0): - garbage-first heap total 284672K, used 136936K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 7 young (7168K), 7 survivors (7168K) - Metaspace used 93156K, capacity 96052K, committed 96304K, reserved 1132544K - class space used 12520K, capacity 13614K, committed 13696K, reserved 1048576K -} -Event: 80.287 GC heap before -{Heap before GC invocations=68 (full 0): - garbage-first heap total 284672K, used 142056K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 13 young (13312K), 7 survivors (7168K) - Metaspace used 93615K, capacity 96500K, committed 96560K, reserved 1138688K - class space used 12590K, capacity 13678K, committed 13696K, reserved 1048576K -} -Event: 80.394 GC heap after -{Heap after GC invocations=69 (full 0): - garbage-first heap total 284672K, used 137954K [0x0000000080000000, 0x0000000100000000) - region size 1024K, 1 young (1024K), 1 survivors (1024K) - Metaspace used 93615K, capacity 96500K, committed 96560K, reserved 1138688K - class space used 12590K, capacity 13678K, committed 13696K, reserved 1048576K -} - -Deoptimization events (20 events): -Event: 79.976 Thread 0x00000225324c0800 DEOPT PACKING pc=0x000002251d12319b sp=0x0000008c56ffc8d0 -Event: 79.976 Thread 0x00000225324c0800 DEOPT UNPACKING pc=0x000002251b6ca95e sp=0x0000008c56ffbd40 mode 0 -Event: 79.977 Thread 0x00000225324c0800 DEOPT PACKING pc=0x000002251d12319b sp=0x0000008c56ffc8d0 -Event: 79.977 Thread 0x00000225324c0800 DEOPT UNPACKING pc=0x000002251b6ca95e sp=0x0000008c56ffbd40 mode 0 -Event: 79.978 Thread 0x00000225324c0800 DEOPT PACKING pc=0x000002251d12319b sp=0x0000008c56ffc8d0 -Event: 79.978 Thread 0x00000225324c0800 DEOPT UNPACKING pc=0x000002251b6ca95e sp=0x0000008c56ffbd40 mode 0 -Event: 79.978 Thread 0x00000225324c0800 DEOPT PACKING pc=0x000002251d12319b sp=0x0000008c56ffc8d0 -Event: 79.978 Thread 0x00000225324c0800 DEOPT UNPACKING pc=0x000002251b6ca95e sp=0x0000008c56ffbd40 mode 0 -Event: 79.981 Thread 0x00000225324c0800 Uncommon trap: trap_request=0xffffff4d fr.pc=0x0000022523146710 relative=0x0000000000000170 -Event: 79.981 Thread 0x00000225324c0800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x0000022523146710 method=java.lang.String.isLatin1()Z @ 10 c2 -Event: 79.981 Thread 0x00000225324c0800 DEOPT PACKING pc=0x0000022523146710 sp=0x0000008c56ffca00 -Event: 79.981 Thread 0x00000225324c0800 DEOPT UNPACKING pc=0x000002251b6ca1af sp=0x0000008c56ffc928 mode 2 -Event: 79.984 Thread 0x00000225324c0800 Uncommon trap: trap_request=0xffffff4d fr.pc=0x00000225236c90cc relative=0x00000000000013cc -Event: 79.984 Thread 0x00000225324c0800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x00000225236c90cc method=java.util.concurrent.ConcurrentHashMap.putVal(Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object; @ 401 c2 -Event: 79.984 Thread 0x00000225324c0800 DEOPT PACKING pc=0x00000225236c90cc sp=0x0000008c56ffca30 -Event: 79.984 Thread 0x00000225324c0800 DEOPT UNPACKING pc=0x000002251b6ca1af sp=0x0000008c56ffc9c0 mode 2 -Event: 79.993 Thread 0x00000225324c0800 Uncommon trap: trap_request=0xffffff4d fr.pc=0x00000225232060cc relative=0x000000000000124c -Event: 79.993 Thread 0x00000225324c0800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x00000225232060cc method=java.util.concurrent.ConcurrentHashMap.transfer([Ljava/util/concurrent/ConcurrentHashMap$Node;[Ljava/util/concurrent/ConcurrentHashMap$Node;)V @ 352 c2 -Event: 79.993 Thread 0x00000225324c0800 DEOPT PACKING pc=0x00000225232060cc sp=0x0000008c56ffc810 -Event: 79.993 Thread 0x00000225324c0800 DEOPT UNPACKING pc=0x000002251b6ca1af sp=0x0000008c56ffc788 mode 2 - -Classes redefined (0 events): -No events - -Internal exceptions (20 events): -Event: 77.831 Thread 0x000002253253b800 Exception (0x000000008ff476c8) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.835 Thread 0x000002253253b800 Exception (0x000000008ff6ac98) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.836 Thread 0x000002253253b800 Exception (0x000000008ff83d68) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.837 Thread 0x000002253253b800 Exception (0x000000008ff9bd00) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.839 Thread 0x000002253253b800 Exception (0x000000008ffb3428) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.841 Thread 0x000002253253b800 Exception (0x000000008ffcb900) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.842 Thread 0x000002253253b800 Exception (0x000000008ffe3350) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.844 Thread 0x000002253253b800 Exception (0x000000008ffedb28) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.845 Thread 0x000002253253b800 Exception (0x000000008fff83a8) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.848 Thread 0x000002253253b800 Exception (0x000000008fe19198) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.851 Thread 0x000002253253b800 Exception (0x000000008fe4e380) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.856 Thread 0x000002253253b800 Exception (0x000000008fe8b638) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.860 Thread 0x000002253253b800 Exception (0x000000008feb77a0) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.863 Thread 0x000002253253b800 Exception (0x000000008fee37a8) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.866 Thread 0x000002253253b800 Exception (0x000000008fd12198) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.871 Thread 0x000002253253b800 Exception (0x000000008fd44978) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.901 Thread 0x000002253253b800 Exception (0x000000008fdf3650) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 77.903 Thread 0x000002253253b800 Exception (0x000000008fc06b90) thrown at [./src/hotspot/share/classfile/systemDictionary.cpp, line 231] -Event: 78.412 Thread 0x00000225324c0800 Implicit null exception at 0x00000225234c7165 to 0x00000225234c79dc -Event: 78.846 Thread 0x00000225324c0800 Exception (0x000000008f2f9b78) thrown at [./src/hotspot/share/prims/jni.cpp, line 616] - -Events (20 events): -Event: 80.272 loading class org/apache/http/impl/execchain/RedirectExec done -Event: 80.274 loading class org/apache/http/impl/client/BasicCookieStore -Event: 80.274 loading class org/apache/http/impl/client/BasicCookieStore done -Event: 80.275 loading class org/apache/http/cookie/CookieIdentityComparator -Event: 80.275 loading class org/apache/http/cookie/CookieIdentityComparator done -Event: 80.276 loading class org/apache/http/impl/client/HttpClientBuilder$2 -Event: 80.276 loading class org/apache/http/impl/client/HttpClientBuilder$2 done -Event: 80.277 loading class org/apache/http/client/ClientProtocolException -Event: 80.277 loading class org/apache/http/client/ClientProtocolException done -Event: 80.280 loading class org/apache/http/conn/ClientConnectionManager -Event: 80.280 loading class org/apache/http/conn/ClientConnectionManager done -Event: 80.281 loading class org/apache/http/client/utils/URIUtils -Event: 80.281 loading class org/apache/http/client/utils/URIUtils done -Event: 80.283 loading class org/apache/http/client/utils/URIUtils$UriFlag -Event: 80.283 loading class org/apache/http/client/utils/URIUtils$UriFlag done -Event: 80.285 loading class org/apache/http/HttpHost -Event: 80.285 loading class org/apache/http/HttpHost done -Event: 80.287 loading class org/apache/http/client/methods/HttpRequestWrapper -Event: 80.287 loading class org/apache/http/client/methods/HttpRequestWrapper done -Event: 80.287 Executing VM operation: CollectForMetadataAllocation - - -Dynamic libraries: -0x00007ff668680000 - 0x00007ff66868a000 C:\Program Files\Android\Android Studio1\jre\bin\java.exe -0x00007ffb8e7d0000 - 0x00007ffb8e9c8000 C:\WINDOWS\SYSTEM32\ntdll.dll -0x00007ffb8e630000 - 0x00007ffb8e6ef000 C:\WINDOWS\System32\KERNEL32.DLL -0x00007ffb8bfb0000 - 0x00007ffb8c2a6000 C:\WINDOWS\System32\KERNELBASE.dll -0x00007ffb8c2b0000 - 0x00007ffb8c3b0000 C:\WINDOWS\System32\ucrtbase.dll -0x00007ffb5be60000 - 0x00007ffb5be79000 C:\Program Files\Android\Android Studio1\jre\bin\jli.dll -0x00007ffb5be40000 - 0x00007ffb5be57000 C:\Program Files\Android\Android Studio1\jre\bin\VCRUNTIME140.dll -0x00007ffb8d450000 - 0x00007ffb8d5ed000 C:\WINDOWS\System32\USER32.dll -0x00007ffb8c540000 - 0x00007ffb8c562000 C:\WINDOWS\System32\win32u.dll -0x00007ffb8db60000 - 0x00007ffb8db8c000 C:\WINDOWS\System32\GDI32.dll -0x00007ffb8c710000 - 0x00007ffb8c825000 C:\WINDOWS\System32\gdi32full.dll -0x00007ffb8c670000 - 0x00007ffb8c70d000 C:\WINDOWS\System32\msvcp_win.dll -0x00007ffb7c7e0000 - 0x00007ffb7ca7a000 C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e\COMCTL32.dll -0x00007ffb8dac0000 - 0x00007ffb8db5e000 C:\WINDOWS\System32\msvcrt.dll -0x00007ffb8ccd0000 - 0x00007ffb8cd00000 C:\WINDOWS\System32\IMM32.DLL -0x00007ffb3f2a0000 - 0x00007ffb3f33d000 C:\Program Files\Android\Android Studio1\jre\bin\msvcp140.dll -0x00007ffb23b50000 - 0x00007ffb24652000 C:\Program Files\Android\Android Studio1\jre\bin\server\jvm.dll -0x00007ffb8ca80000 - 0x00007ffb8cb2f000 C:\WINDOWS\System32\ADVAPI32.dll -0x00007ffb8e6f0000 - 0x00007ffb8e78c000 C:\WINDOWS\System32\sechost.dll -0x00007ffb8c830000 - 0x00007ffb8c956000 C:\WINDOWS\System32\RPCRT4.dll -0x00007ffb8ca70000 - 0x00007ffb8ca78000 C:\WINDOWS\System32\PSAPI.DLL -0x00007ffb85130000 - 0x00007ffb85139000 C:\WINDOWS\SYSTEM32\WSOCK32.dll -0x00007ffb8df00000 - 0x00007ffb8df6b000 C:\WINDOWS\System32\WS2_32.dll -0x00007ffb816a0000 - 0x00007ffb816aa000 C:\WINDOWS\SYSTEM32\VERSION.dll -0x00007ffb816b0000 - 0x00007ffb816d7000 C:\WINDOWS\SYSTEM32\WINMM.dll -0x00007ffb8a6f0000 - 0x00007ffb8a702000 C:\WINDOWS\SYSTEM32\kernel.appcore.dll -0x00007ffb84710000 - 0x00007ffb84721000 C:\Program Files\Android\Android Studio1\jre\bin\verify.dll -0x00007ffb8a4e0000 - 0x00007ffb8a6c4000 C:\WINDOWS\SYSTEM32\DBGHELP.DLL -0x00007ffb76690000 - 0x00007ffb766c4000 C:\WINDOWS\SYSTEM32\dbgcore.DLL -0x00007ffb8c5e0000 - 0x00007ffb8c662000 C:\WINDOWS\System32\bcryptPrimitives.dll -0x00007ffb7c210000 - 0x00007ffb7c239000 C:\Program Files\Android\Android Studio1\jre\bin\java.dll -0x00007ffb84330000 - 0x00007ffb8433b000 C:\Program Files\Android\Android Studio1\jre\bin\jimage.dll -0x00007ffb72a00000 - 0x00007ffb72a18000 C:\Program Files\Android\Android Studio1\jre\bin\zip.dll -0x00007ffb8cd00000 - 0x00007ffb8d444000 C:\WINDOWS\System32\SHELL32.dll -0x00007ffb89c00000 - 0x00007ffb8a393000 C:\WINDOWS\SYSTEM32\windows.storage.dll -0x00007ffb8e120000 - 0x00007ffb8e474000 C:\WINDOWS\System32\combase.dll -0x00007ffb8b890000 - 0x00007ffb8b8be000 C:\WINDOWS\SYSTEM32\Wldp.dll -0x00007ffb8c960000 - 0x00007ffb8ca0d000 C:\WINDOWS\System32\SHCORE.dll -0x00007ffb8cb30000 - 0x00007ffb8cb85000 C:\WINDOWS\System32\shlwapi.dll -0x00007ffb8bdf0000 - 0x00007ffb8be0f000 C:\WINDOWS\SYSTEM32\profapi.dll -0x00007ffb729e0000 - 0x00007ffb729fa000 C:\Program Files\Android\Android Studio1\jre\bin\net.dll -0x00007ffb7d4d0000 - 0x00007ffb7d5da000 C:\WINDOWS\SYSTEM32\WINHTTP.dll -0x00007ffb8b580000 - 0x00007ffb8b5ea000 C:\WINDOWS\system32\mswsock.dll -0x00007ffb729c0000 - 0x00007ffb729d4000 C:\Program Files\Android\Android Studio1\jre\bin\nio.dll -0x00007ffb64870000 - 0x00007ffb64897000 C:\Users\USER\.gradle\native\68d5fa5c4cc2d200863cafc0d521ce42e7d3e7ee720ec0a83991735586a16f82\windows-amd64\native-platform.dll -0x00007ffb3f150000 - 0x00007ffb3f294000 C:\Users\USER\.gradle\native\e376f236ea51e6404a007f0833ffe2c6e607c4080706a723a18a27aeea778392\windows-amd64\native-platform-file-events.dll -0x00007ffb7f180000 - 0x00007ffb7f18a000 C:\Program Files\Android\Android Studio1\jre\bin\management.dll -0x00007ffb7c200000 - 0x00007ffb7c20d000 C:\Program Files\Android\Android Studio1\jre\bin\management_ext.dll -0x00007ffb8b780000 - 0x00007ffb8b798000 C:\WINDOWS\SYSTEM32\CRYPTSP.dll -0x00007ffb8aea0000 - 0x00007ffb8aed4000 C:\WINDOWS\system32\rsaenh.dll -0x00007ffb8c510000 - 0x00007ffb8c537000 C:\WINDOWS\System32\bcrypt.dll -0x00007ffb8bd70000 - 0x00007ffb8bd9e000 C:\WINDOWS\SYSTEM32\USERENV.dll -0x00007ffb8b770000 - 0x00007ffb8b77c000 C:\WINDOWS\SYSTEM32\CRYPTBASE.dll -0x00007ffb8b270000 - 0x00007ffb8b2ac000 C:\WINDOWS\SYSTEM32\IPHLPAPI.DLL -0x00007ffb8e5a0000 - 0x00007ffb8e5a8000 C:\WINDOWS\System32\NSI.dll -0x00007ffb7dfb0000 - 0x00007ffb7dfc7000 C:\WINDOWS\SYSTEM32\dhcpcsvc6.DLL -0x00007ffb7e4f0000 - 0x00007ffb7e50d000 C:\WINDOWS\SYSTEM32\dhcpcsvc.DLL -0x00007ffb8b2b0000 - 0x00007ffb8b37a000 C:\WINDOWS\SYSTEM32\DNSAPI.dll -0x00007ffb72570000 - 0x00007ffb72587000 C:\WINDOWS\system32\napinsp.dll -0x00007ffb72550000 - 0x00007ffb7256b000 C:\WINDOWS\system32\pnrpnsp.dll -0x00007ffb863a0000 - 0x00007ffb863b5000 C:\WINDOWS\system32\wshbth.dll -0x00007ffb874f0000 - 0x00007ffb8750d000 C:\WINDOWS\system32\NLAapi.dll -0x00007ffb72530000 - 0x00007ffb72542000 C:\WINDOWS\System32\winrnr.dll -0x00007ffb828b0000 - 0x00007ffb828ba000 C:\Windows\System32\rasadhlp.dll -0x00007ffb7b200000 - 0x00007ffb7b282000 C:\WINDOWS\System32\fwpuclnt.dll -0x00007ffb7f1a0000 - 0x00007ffb7f1c7000 C:\Program Files\Android\Android Studio1\jre\bin\sunec.dll - -dbghelp: loaded successfully - version: 4.0.5 - missing functions: none -symbol engine: initialized successfully - sym options: 0x614 - pdb path: .;C:\Program Files\Android\Android Studio1\jre\bin;C:\WINDOWS\SYSTEM32;C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e;C:\Program Files\Android\Android Studio1\jre\bin\server;C:\Users\USER\.gradle\native\68d5fa5c4cc2d200863cafc0d521ce42e7d3e7ee720ec0a83991735586a16f82\windows-amd64;C:\Users\USER\.gradle\native\e376f236ea51e6404a007f0833ffe2c6e607c4080706a723a18a27aeea778392\windows-amd64 - -VM Arguments: -jvm_args: --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -Xmx2048M -Dfile.encoding=UTF-8 -Duser.country=RU -Duser.language=ru -Duser.variant -java_command: org.gradle.launcher.daemon.bootstrap.GradleDaemon 8.0.2 -java_class_path (initial): C:\Users\USER\.gradle\wrapper\dists\gradle-8.0.2-bin\25jlreiuz6u3xu2phlpa2vv4m\gradle-8.0.2\lib\gradle-launcher-8.0.2.jar -Launcher Type: SUN_STANDARD - -[Global flags] - intx CICompilerCount = 2 {product} {ergonomic} - uint ConcGCThreads = 1 {product} {ergonomic} - uint G1ConcRefinementThreads = 2 {product} {ergonomic} - size_t G1HeapRegionSize = 1048576 {product} {ergonomic} - uintx GCDrainStackTargetSize = 64 {product} {ergonomic} - size_t InitialHeapSize = 58720256 {product} {ergonomic} - size_t MarkStackSize = 4194304 {product} {ergonomic} - size_t MaxHeapSize = 2147483648 {product} {command line} - size_t MaxNewSize = 1287651328 {product} {ergonomic} - size_t MinHeapDeltaBytes = 1048576 {product} {ergonomic} - uintx NonNMethodCodeHeapSize = 5825164 {pd product} {ergonomic} - uintx NonProfiledCodeHeapSize = 122916538 {pd product} {ergonomic} - uintx ProfiledCodeHeapSize = 122916538 {pd product} {ergonomic} - uintx ReservedCodeCacheSize = 251658240 {pd product} {ergonomic} - bool SegmentedCodeCache = true {product} {ergonomic} - bool UseCompressedClassPointers = true {lp64_product} {ergonomic} - bool UseCompressedOops = true {lp64_product} {ergonomic} - bool UseG1GC = true {product} {ergonomic} - bool UseLargePagesIndividualAllocation = false {pd product} {ergonomic} - -Logging: -Log output configuration: - #0: stdout all=warning uptime,level,tags - #1: stderr all=off uptime,level,tags - -Environment Variables: -PATH=C:\Program Files\Common Files\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\dotnet\;C:\Program Files\Git\cmd;C:\Program Files\MySQL\MySQL Shell 8.0\bin\;C:\Users\USER\AppData\Local\Microsoft\WindowsApps;C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2020.3\bin;;C:\Users\USER\Programming\Maven\apache-maven-3.6.3\bin;C:\Users\USER\.dotnet\tools;C:\Users\USER\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\USER\Programming\effective_android\flutter\bin; -USERNAME=USER -OS=Windows_NT -PROCESSOR_IDENTIFIER=AMD64 Family 21 Model 112 Stepping 0, AuthenticAMD - - - ---------------- S Y S T E M --------------- - -OS: Windows 10 , 64 bit Build 19041 (10.0.19041.3031) -OS uptime: 6 days 20:35 hours - -CPU:total 2 (initial active 2) (2 cores per cpu, 1 threads per core) family 21 model 112 stepping 0 microcode 0x0, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, avx, avx2, aes, clmul, mmxext, 3dnowpref, lzcnt, sse4a, tsc, tscinvbit, tscinv, bmi1, bmi2, fma - -Memory: 4k page, system-wide physical 3471M (45M free) -TotalPageFile size 14223M (AvailPageFile size 4M) -current process WorkingSet (physical memory assigned to process): 250M, peak: 323M -current process commit charge ("private bytes"): 537M, peak: 538M - -vm_info: OpenJDK 64-Bit Server VM (11.0.13+0-b1751.21-8125866) for windows-amd64 JRE (11.0.13+0-b1751.21-8125866), built on Feb 2 2022 03:00:22 by "builder" with MS VC++ 14.0 (VS2015) - -END. -- GitLab From ee59ac04e5eeb808351f6ca21e13c2611f169b87 Mon Sep 17 00:00:00 2001 From: Liker4ik26 <104251391+Liker4ik26@users.noreply.github.com> Date: Thu, 6 Jul 2023 18:41:46 +0600 Subject: [PATCH 03/10] [Feature] Add free negotiations screen --- assets/person.svg | 4 + .../FreeNegotiationsComponent.kt | 12 ++ .../FreeNegotiationsScreen.kt | 141 ++++++++++++++++++ .../free_negotiations/components/RoomCard.kt | 86 +++++++++++ .../components/Room\320\241haracteristics.kt" | 36 +++++ .../ui/free_negotiations/models/RoomItem.kt | 13 ++ .../office/elevator/ui/main/MainComponent.kt | 7 +- .../office/elevator/ui/main/MainScreen.kt | 3 + 8 files changed, 301 insertions(+), 1 deletion(-) create mode 100644 assets/person.svg create mode 100644 composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/FreeNegotiationsComponent.kt create mode 100644 composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/FreeNegotiationsScreen.kt create mode 100644 composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/components/RoomCard.kt create mode 100644 "composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/components/Room\320\241haracteristics.kt" create mode 100644 composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/models/RoomItem.kt diff --git a/assets/person.svg b/assets/person.svg new file mode 100644 index 00000000..89371094 --- /dev/null +++ b/assets/person.svg @@ -0,0 +1,4 @@ + + + + diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/FreeNegotiationsComponent.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/FreeNegotiationsComponent.kt new file mode 100644 index 00000000..da14e870 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/FreeNegotiationsComponent.kt @@ -0,0 +1,12 @@ +package band.effective.office.elevator.ui.free_negotiations + +import com.arkivanov.decompose.ComponentContext +import com.arkivanov.mvikotlin.core.store.StoreFactory + + +class FreeNegotiationsComponent( + componentContext: ComponentContext, + storeFactory: StoreFactory +) : + ComponentContext by componentContext { +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/FreeNegotiationsScreen.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/FreeNegotiationsScreen.kt new file mode 100644 index 00000000..35a202c6 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/FreeNegotiationsScreen.kt @@ -0,0 +1,141 @@ +package band.effective.office.elevator.ui.free_negotiations + +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.ExperimentalLayoutApi +import androidx.compose.foundation.layout.FlowRow +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll +import androidx.compose.material.Icon +import androidx.compose.material.IconButton +import androidx.compose.material.Text +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.ArrowBack +import androidx.compose.material.icons.filled.Person +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.text.TextStyle +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import band.effective.office.elevator.ui.free_negotiations.components.RoomCard +import band.effective.office.elevator.ui.free_negotiations.models.RoomCharacteristicsItem +import band.effective.office.elevator.ui.free_negotiations.models.RoomItem + + +@Composable +fun FreeNegotiationsScreen(component: FreeNegotiationsComponent) { + FreeNegotiationsContent(date = "5 июлÑ", timeStart = "17:49", timeEnd = "19:00", onClick = {}) + +} + +@OptIn(ExperimentalLayoutApi::class) +@Composable +internal fun FreeNegotiationsContent( + date: String?, + timeStart: String?, + timeEnd: String?, + onClick: () -> Unit +) { + val rooms: List = listOf( + RoomItem( + name = "Moon", + stuff = listOf( + RoomCharacteristicsItem( + icon = Icons.Default.Person, + text = "5" + ), + RoomCharacteristicsItem( + icon = Icons.Default.Person, + text = "5" + ), + RoomCharacteristicsItem( + icon = Icons.Default.Person, + text = "5" + ), + RoomCharacteristicsItem( + icon = Icons.Default.Person, + text = "5" + ), + RoomCharacteristicsItem( + icon = Icons.Default.Person, + text = "5" + ) + ) + ), + RoomItem( + name = "Moon", + stuff = listOf( + RoomCharacteristicsItem( + icon = Icons.Default.Person, + text = "5" + ) + ) + ), + RoomItem( + name = "Moon", + stuff = listOf( + RoomCharacteristicsItem( + icon = Icons.Default.Person, + text = "5" + ) + ) + ), + ) + + Column( + modifier = Modifier + .fillMaxSize() + .background(Color(0XFF1E1C1A)) + .verticalScroll( + rememberScrollState() + ) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .height(100.dp) + .background(Color(0xFFF252322)), + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.Start + ) { + Spacer(modifier = Modifier.height(60.dp)) + IconButton(onClick = { onClick() }) { + Row(verticalAlignment = Alignment.CenterVertically) { + Icon( + Icons.Filled.ArrowBack, + contentDescription = null, + tint = Color(0xFFFA362F8) + ) + } + } + Spacer(modifier = Modifier.width(4.dp)) + Text( + text = "ЗанÑть $date Ñ $timeStart до $timeEnd", + style = TextStyle( + color = Color(0xFFFA362F8), + fontSize = 20.sp + ) + ) + } + FlowRow(modifier = Modifier.padding(24.dp)) { + for (room in rooms) { + RoomCard( + roomItem = room, + onClick = {}, + modifier = Modifier.fillMaxWidth(0.3F) + ) + Spacer(modifier = Modifier.width(24.dp)) + } + } + } +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/components/RoomCard.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/components/RoomCard.kt new file mode 100644 index 00000000..fe82f81a --- /dev/null +++ b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/components/RoomCard.kt @@ -0,0 +1,86 @@ +package band.effective.office.elevator.ui.free_negotiations.components + +import androidx.compose.foundation.border +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.ExperimentalLayoutApi +import androidx.compose.foundation.layout.FlowRow +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.Button +import androidx.compose.material.ButtonDefaults +import androidx.compose.material.Card +import androidx.compose.material.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.text.TextStyle +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import band.effective.office.elevator.ui.free_negotiations.models.RoomItem + +@OptIn(ExperimentalLayoutApi::class) +@Composable +fun RoomCard( + roomItem: RoomItem, + onClick: () -> Unit, + modifier: Modifier = Modifier +) { + Column(modifier = modifier) { + Card( + modifier = Modifier + .fillMaxWidth().height(288.dp), + shape = RoundedCornerShape(16.dp), + backgroundColor = Color(0xFFF3A3736) + ) { + Column(modifier = Modifier.padding(16.dp).fillMaxWidth()) { + Text( + text = roomItem.name, + style = TextStyle( + color = Color.White, + fontSize = 48.sp + ) + ) + Spacer(modifier = Modifier.height(28.dp)) + FlowRow( + horizontalArrangement = Arrangement.spacedBy(16.dp), + modifier = Modifier.padding(horizontal = 32.dp, vertical = 28.dp), + maxItemsInEachRow = 2 + ) { + for (stuff in roomItem.stuff) { + RoomCharacteristics( + icon = stuff.icon, + text = stuff.text + ) + } + } + Spacer(modifier = Modifier.height(50.dp)) + } + } + Spacer(modifier = Modifier.height(16.dp)) + Button( + onClick = { onClick() }, + modifier = Modifier + .border(2.dp, shape = RoundedCornerShape(40.dp), color = Color(0xFFFEF7234)) + .fillMaxWidth(), + shape = RoundedCornerShape(40.dp), + colors = ButtonDefaults.buttonColors( + backgroundColor = Color( + 0xFFFF1E1C1A + ) + ) + ) { + Text( + text = "ЗанÑть ${roomItem.name}", + style = TextStyle( + color = Color(0xFFFEF7234), + fontSize = 18.sp + ) + ) + } + Spacer(modifier = Modifier.height(16.dp)) + } +} \ No newline at end of file diff --git "a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/components/Room\320\241haracteristics.kt" "b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/components/Room\320\241haracteristics.kt" new file mode 100644 index 00000000..1baedbf2 --- /dev/null +++ "b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/components/Room\320\241haracteristics.kt" @@ -0,0 +1,36 @@ +package band.effective.office.elevator.ui.free_negotiations.components + +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.layout.width +import androidx.compose.material.Icon +import androidx.compose.material.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.vector.ImageVector +import androidx.compose.ui.text.TextStyle +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp + +@Composable +fun RoomCharacteristics(icon: ImageVector, text: String) { + Row(verticalAlignment = Alignment.CenterVertically) { + Icon( + imageVector = icon, + contentDescription = null, + tint = Color.White, + modifier = Modifier.size(30.dp) + ) + Spacer(modifier = Modifier.width(8.dp)) + Text( + text = text, + style = TextStyle( + color = Color.White, + fontSize = 16.sp + ) + ) + } +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/models/RoomItem.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/models/RoomItem.kt new file mode 100644 index 00000000..fb9128eb --- /dev/null +++ b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/models/RoomItem.kt @@ -0,0 +1,13 @@ +package band.effective.office.elevator.ui.free_negotiations.models + +import androidx.compose.ui.graphics.vector.ImageVector + +class RoomItem( + val name: String, + val stuff: List +) + +class RoomCharacteristicsItem( + val icon: ImageVector, + val text: String +) \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainComponent.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainComponent.kt index 491dd20e..86822ffc 100644 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainComponent.kt +++ b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainComponent.kt @@ -1,6 +1,7 @@ package band.effective.office.elevator.ui.main import band.effective.office.elevator.ui.elevator.ElevatorComponent +import band.effective.office.elevator.ui.free_negotiations.FreeNegotiationsComponent import band.effective.office.elevator.ui.profile.ProfileComponent import com.arkivanov.decompose.ComponentContext import com.arkivanov.decompose.router.stack.ChildStack @@ -22,7 +23,7 @@ class MainComponent( private val navigation = StackNavigation() private val stack = childStack( source = navigation, - initialStack = { listOf(Config.Elevator) }, + initialStack = { listOf(Config.FreeNegotiations) }, childFactory = ::child, ) val childStack: Value> = stack @@ -36,6 +37,7 @@ class MainComponent( ::profileOutput ) ) + is Config.FreeNegotiations -> Child.FreeNegotiations(FreeNegotiationsComponent(componentContext, storeFactory)) } fun onOutput(output: Output) { @@ -54,6 +56,7 @@ class MainComponent( sealed class Child { class Elevator(val component: ElevatorComponent) : Child() class Profile(val component: ProfileComponent) : Child() + class FreeNegotiations(val component: FreeNegotiationsComponent) : Child() } private sealed interface Config : Parcelable { @@ -62,6 +65,8 @@ class MainComponent( @Parcelize object Profile : Config + @Parcelize + object FreeNegotiations : Config } sealed class Output { diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainScreen.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainScreen.kt index 33e32eff..f41a0596 100644 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainScreen.kt +++ b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainScreen.kt @@ -13,6 +13,7 @@ import band.effective.office.elevator.components.TabNavigationItem import band.effective.office.elevator.navigation.ElevatorTab import band.effective.office.elevator.navigation.ProfileTab import band.effective.office.elevator.ui.elevator.ElevatorScreen +import band.effective.office.elevator.ui.free_negotiations.FreeNegotiationsScreen import band.effective.office.elevator.ui.profile.ProfileScreen import com.arkivanov.decompose.extensions.compose.jetbrains.stack.Children import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.Direction @@ -39,6 +40,7 @@ fun MainScreen(component: MainComponent) { when (val child = it.instance) { is MainComponent.Child.Elevator -> ElevatorScreen(child.component) is MainComponent.Child.Profile -> ProfileScreen(child.component) + is MainComponent.Child.FreeNegotiations -> FreeNegotiationsScreen(child.component) } } } @@ -69,6 +71,7 @@ private val MainComponent.Child.index: Int when (this) { is MainComponent.Child.Elevator -> 0 is MainComponent.Child.Profile -> 1 + is MainComponent.Child.FreeNegotiations -> 2 } @Composable -- GitLab From 19efabd2c30bcc1f45d997ec5c95df9fe8108c61 Mon Sep 17 00:00:00 2001 From: Liker4ik26 <104251391+Liker4ik26@users.noreply.github.com> Date: Thu, 6 Jul 2023 19:43:37 +0600 Subject: [PATCH 04/10] [Feature] Add free negotiations screen --- .../FreeNegotiationsComponent.kt | 12 ---- .../office/elevator/ui/main/MainComponent.kt | 7 +- .../office/elevator/ui/main/MainScreen.kt | 3 - .../FreeNegotiationsComponent.kt | 61 +++++++++++++++++ .../FreeNegotiationsScreen.kt | 68 ++++--------------- .../components/RoomCard.kt | 4 +- .../components/Room\320\241haracteristics.kt" | 2 +- .../models/RoomItem.kt | 2 +- 8 files changed, 80 insertions(+), 79 deletions(-) delete mode 100644 composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/FreeNegotiationsComponent.kt create mode 100644 tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsComponent.kt rename {composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations => tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen}/FreeNegotiationsScreen.kt (62%) rename {composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations => tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen}/components/RoomCard.kt (95%) rename "composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/components/Room\320\241haracteristics.kt" => "tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/Room\320\241haracteristics.kt" (93%) rename {composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations => tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen}/models/RoomItem.kt (76%) diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/FreeNegotiationsComponent.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/FreeNegotiationsComponent.kt deleted file mode 100644 index da14e870..00000000 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/FreeNegotiationsComponent.kt +++ /dev/null @@ -1,12 +0,0 @@ -package band.effective.office.elevator.ui.free_negotiations - -import com.arkivanov.decompose.ComponentContext -import com.arkivanov.mvikotlin.core.store.StoreFactory - - -class FreeNegotiationsComponent( - componentContext: ComponentContext, - storeFactory: StoreFactory -) : - ComponentContext by componentContext { -} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainComponent.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainComponent.kt index 86822ffc..491dd20e 100644 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainComponent.kt +++ b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainComponent.kt @@ -1,7 +1,6 @@ package band.effective.office.elevator.ui.main import band.effective.office.elevator.ui.elevator.ElevatorComponent -import band.effective.office.elevator.ui.free_negotiations.FreeNegotiationsComponent import band.effective.office.elevator.ui.profile.ProfileComponent import com.arkivanov.decompose.ComponentContext import com.arkivanov.decompose.router.stack.ChildStack @@ -23,7 +22,7 @@ class MainComponent( private val navigation = StackNavigation() private val stack = childStack( source = navigation, - initialStack = { listOf(Config.FreeNegotiations) }, + initialStack = { listOf(Config.Elevator) }, childFactory = ::child, ) val childStack: Value> = stack @@ -37,7 +36,6 @@ class MainComponent( ::profileOutput ) ) - is Config.FreeNegotiations -> Child.FreeNegotiations(FreeNegotiationsComponent(componentContext, storeFactory)) } fun onOutput(output: Output) { @@ -56,7 +54,6 @@ class MainComponent( sealed class Child { class Elevator(val component: ElevatorComponent) : Child() class Profile(val component: ProfileComponent) : Child() - class FreeNegotiations(val component: FreeNegotiationsComponent) : Child() } private sealed interface Config : Parcelable { @@ -65,8 +62,6 @@ class MainComponent( @Parcelize object Profile : Config - @Parcelize - object FreeNegotiations : Config } sealed class Output { diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainScreen.kt b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainScreen.kt index f41a0596..33e32eff 100644 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainScreen.kt +++ b/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/main/MainScreen.kt @@ -13,7 +13,6 @@ import band.effective.office.elevator.components.TabNavigationItem import band.effective.office.elevator.navigation.ElevatorTab import band.effective.office.elevator.navigation.ProfileTab import band.effective.office.elevator.ui.elevator.ElevatorScreen -import band.effective.office.elevator.ui.free_negotiations.FreeNegotiationsScreen import band.effective.office.elevator.ui.profile.ProfileScreen import com.arkivanov.decompose.extensions.compose.jetbrains.stack.Children import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.Direction @@ -40,7 +39,6 @@ fun MainScreen(component: MainComponent) { when (val child = it.instance) { is MainComponent.Child.Elevator -> ElevatorScreen(child.component) is MainComponent.Child.Profile -> ProfileScreen(child.component) - is MainComponent.Child.FreeNegotiations -> FreeNegotiationsScreen(child.component) } } } @@ -71,7 +69,6 @@ private val MainComponent.Child.index: Int when (this) { is MainComponent.Child.Elevator -> 0 is MainComponent.Child.Profile -> 1 - is MainComponent.Child.FreeNegotiations -> 2 } @Composable diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsComponent.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsComponent.kt new file mode 100644 index 00000000..ec82b835 --- /dev/null +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsComponent.kt @@ -0,0 +1,61 @@ +package band.effective.office.elevator.ui.freeNegotiations + +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.Person +import band.effective.office.elevator.ui.freeNegotiations.models.RoomCharacteristicsItem +import band.effective.office.elevator.ui.freeNegotiations.models.RoomItem +import com.arkivanov.decompose.ComponentContext +import com.arkivanov.mvikotlin.core.store.StoreFactory + + +class FreeNegotiationsComponent( + componentContext: ComponentContext, + storeFactory: StoreFactory +) : ComponentContext by componentContext { + val rooms: List = listOf( + RoomItem( + name = "Moon", + stuff = listOf( + RoomCharacteristicsItem( + icon = Icons.Default.Person, + text = "5" + ), + RoomCharacteristicsItem( + icon = Icons.Default.Person, + text = "5" + ), + RoomCharacteristicsItem( + icon = Icons.Default.Person, + text = "5" + ), + RoomCharacteristicsItem( + icon = Icons.Default.Person, + text = "5" + ), + RoomCharacteristicsItem( + icon = Icons.Default.Person, + text = "5" + ) + ) + ), + RoomItem( + name = "Moon", + stuff = listOf( + RoomCharacteristicsItem( + icon = Icons.Default.Person, + text = "5" + ) + ) + ), + RoomItem( + name = "Moon", + stuff = listOf( + RoomCharacteristicsItem( + icon = Icons.Default.Person, + text = "5" + ) + ) + ), + ) + +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/FreeNegotiationsScreen.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsScreen.kt similarity index 62% rename from composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/FreeNegotiationsScreen.kt rename to tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsScreen.kt index 35a202c6..1451f995 100644 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/FreeNegotiationsScreen.kt +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsScreen.kt @@ -1,4 +1,4 @@ -package band.effective.office.elevator.ui.free_negotiations +package band.effective.office.elevator.ui.freeNegotiations import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement @@ -27,15 +27,20 @@ import androidx.compose.ui.graphics.Color import androidx.compose.ui.text.TextStyle import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp -import band.effective.office.elevator.ui.free_negotiations.components.RoomCard -import band.effective.office.elevator.ui.free_negotiations.models.RoomCharacteristicsItem -import band.effective.office.elevator.ui.free_negotiations.models.RoomItem +import band.effective.office.elevator.ui.freeNegotiations.components.RoomCard +import band.effective.office.elevator.ui.freeNegotiations.models.RoomCharacteristicsItem +import band.effective.office.elevator.ui.freeNegotiations.models.RoomItem @Composable fun FreeNegotiationsScreen(component: FreeNegotiationsComponent) { - FreeNegotiationsContent(date = "5 июлÑ", timeStart = "17:49", timeEnd = "19:00", onClick = {}) - + FreeNegotiationsContent( + date = "5 июлÑ", + timeStart = "17:49", + timeEnd = "19:00", + onClick = {}, + component = component, + ) } @OptIn(ExperimentalLayoutApi::class) @@ -44,54 +49,9 @@ internal fun FreeNegotiationsContent( date: String?, timeStart: String?, timeEnd: String?, - onClick: () -> Unit + onClick: () -> Unit, + component: FreeNegotiationsComponent ) { - val rooms: List = listOf( - RoomItem( - name = "Moon", - stuff = listOf( - RoomCharacteristicsItem( - icon = Icons.Default.Person, - text = "5" - ), - RoomCharacteristicsItem( - icon = Icons.Default.Person, - text = "5" - ), - RoomCharacteristicsItem( - icon = Icons.Default.Person, - text = "5" - ), - RoomCharacteristicsItem( - icon = Icons.Default.Person, - text = "5" - ), - RoomCharacteristicsItem( - icon = Icons.Default.Person, - text = "5" - ) - ) - ), - RoomItem( - name = "Moon", - stuff = listOf( - RoomCharacteristicsItem( - icon = Icons.Default.Person, - text = "5" - ) - ) - ), - RoomItem( - name = "Moon", - stuff = listOf( - RoomCharacteristicsItem( - icon = Icons.Default.Person, - text = "5" - ) - ) - ), - ) - Column( modifier = Modifier .fillMaxSize() @@ -128,7 +88,7 @@ internal fun FreeNegotiationsContent( ) } FlowRow(modifier = Modifier.padding(24.dp)) { - for (room in rooms) { + for (room in component.rooms) { RoomCard( roomItem = room, onClick = {}, diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/components/RoomCard.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/RoomCard.kt similarity index 95% rename from composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/components/RoomCard.kt rename to tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/RoomCard.kt index fe82f81a..db9cdebb 100644 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/components/RoomCard.kt +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/RoomCard.kt @@ -1,4 +1,4 @@ -package band.effective.office.elevator.ui.free_negotiations.components +package band.effective.office.elevator.ui.freeNegotiations.components import androidx.compose.foundation.border import androidx.compose.foundation.layout.Arrangement @@ -20,7 +20,7 @@ import androidx.compose.ui.graphics.Color import androidx.compose.ui.text.TextStyle import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp -import band.effective.office.elevator.ui.free_negotiations.models.RoomItem +import band.effective.office.elevator.ui.freeNegotiations.models.RoomItem @OptIn(ExperimentalLayoutApi::class) @Composable diff --git "a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/components/Room\320\241haracteristics.kt" "b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/Room\320\241haracteristics.kt" similarity index 93% rename from "composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/components/Room\320\241haracteristics.kt" rename to "tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/Room\320\241haracteristics.kt" index 1baedbf2..cce06584 100644 --- "a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/components/Room\320\241haracteristics.kt" +++ "b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/Room\320\241haracteristics.kt" @@ -1,4 +1,4 @@ -package band.effective.office.elevator.ui.free_negotiations.components +package band.effective.office.elevator.ui.freeNegotiations.components import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer diff --git a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/models/RoomItem.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/models/RoomItem.kt similarity index 76% rename from composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/models/RoomItem.kt rename to tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/models/RoomItem.kt index fb9128eb..277858fb 100644 --- a/composeApp/src/commonMain/kotlin/band/effective/office/elevator/ui/free_negotiations/models/RoomItem.kt +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/models/RoomItem.kt @@ -1,4 +1,4 @@ -package band.effective.office.elevator.ui.free_negotiations.models +package band.effective.office.elevator.ui.freeNegotiations.models import androidx.compose.ui.graphics.vector.ImageVector -- GitLab From 5460be2f365ef39505475882027eecdd2c679bab Mon Sep 17 00:00:00 2001 From: Maksim Mishenko Date: Thu, 6 Jul 2023 20:45:40 +0600 Subject: [PATCH 05/10] [~] fix package name --- .../FreeNegotiationsComponent.kt | 10 ++++------ .../freeNegotiationsScreen/FreeNegotiationsScreen.kt | 7 ++----- .../ui/freeNegotiationsScreen/components/RoomCard.kt | 4 ++-- .../components/Room\320\241haracteristics.kt" | 2 +- .../ui/freeNegotiationsScreen/models/RoomItem.kt | 2 +- 5 files changed, 10 insertions(+), 15 deletions(-) diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsComponent.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsComponent.kt index ec82b835..70b6caf5 100644 --- a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsComponent.kt +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsComponent.kt @@ -1,16 +1,14 @@ -package band.effective.office.elevator.ui.freeNegotiations +package band.effective.office.tablet.ui.freeNegotiationsScreen import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Person -import band.effective.office.elevator.ui.freeNegotiations.models.RoomCharacteristicsItem -import band.effective.office.elevator.ui.freeNegotiations.models.RoomItem +import band.effective.office.tablet.ui.freeNegotiationsScreen.models.RoomCharacteristicsItem +import band.effective.office.tablet.ui.freeNegotiationsScreen.models.RoomItem import com.arkivanov.decompose.ComponentContext -import com.arkivanov.mvikotlin.core.store.StoreFactory class FreeNegotiationsComponent( - componentContext: ComponentContext, - storeFactory: StoreFactory + componentContext: ComponentContext ) : ComponentContext by componentContext { val rooms: List = listOf( RoomItem( diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsScreen.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsScreen.kt index 1451f995..19d8bc10 100644 --- a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsScreen.kt +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsScreen.kt @@ -1,4 +1,4 @@ -package band.effective.office.elevator.ui.freeNegotiations +package band.effective.office.tablet.ui.freeNegotiationsScreen import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement @@ -19,7 +19,6 @@ import androidx.compose.material.IconButton import androidx.compose.material.Text import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.ArrowBack -import androidx.compose.material.icons.filled.Person import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier @@ -27,9 +26,7 @@ import androidx.compose.ui.graphics.Color import androidx.compose.ui.text.TextStyle import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp -import band.effective.office.elevator.ui.freeNegotiations.components.RoomCard -import band.effective.office.elevator.ui.freeNegotiations.models.RoomCharacteristicsItem -import band.effective.office.elevator.ui.freeNegotiations.models.RoomItem +import band.effective.office.tablet.ui.freeNegotiationsScreen.components.RoomCard @Composable diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/RoomCard.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/RoomCard.kt index db9cdebb..f5b83a4f 100644 --- a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/RoomCard.kt +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/RoomCard.kt @@ -1,4 +1,4 @@ -package band.effective.office.elevator.ui.freeNegotiations.components +package band.effective.office.tablet.ui.freeNegotiationsScreen.components import androidx.compose.foundation.border import androidx.compose.foundation.layout.Arrangement @@ -20,7 +20,7 @@ import androidx.compose.ui.graphics.Color import androidx.compose.ui.text.TextStyle import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp -import band.effective.office.elevator.ui.freeNegotiations.models.RoomItem +import band.effective.office.tablet.ui.freeNegotiationsScreen.models.RoomItem @OptIn(ExperimentalLayoutApi::class) @Composable diff --git "a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/Room\320\241haracteristics.kt" "b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/Room\320\241haracteristics.kt" index cce06584..a175a241 100644 --- "a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/Room\320\241haracteristics.kt" +++ "b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/Room\320\241haracteristics.kt" @@ -1,4 +1,4 @@ -package band.effective.office.elevator.ui.freeNegotiations.components +package band.effective.office.tablet.ui.freeNegotiationsScreen.components import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/models/RoomItem.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/models/RoomItem.kt index 277858fb..e4e650c1 100644 --- a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/models/RoomItem.kt +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/models/RoomItem.kt @@ -1,4 +1,4 @@ -package band.effective.office.elevator.ui.freeNegotiations.models +package band.effective.office.tablet.ui.freeNegotiationsScreen.models import androidx.compose.ui.graphics.vector.ImageVector -- GitLab From eb750f025afbb5ceeff2096764a75cd0fc113990 Mon Sep 17 00:00:00 2001 From: Maksim Mishenko Date: Thu, 6 Jul 2023 20:50:51 +0600 Subject: [PATCH 06/10] [~] add switch on FreeNegotiationsScreen --- .../kotlin/band/effective/office/tablet/ui/root/Root.kt | 3 ++- .../band/effective/office/tablet/ui/root/RootComponent.kt | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/Root.kt b/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/Root.kt index 0e0fbed1..d8d20b5f 100644 --- a/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/Root.kt +++ b/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/Root.kt @@ -1,6 +1,7 @@ package band.effective.office.tablet.ui.root import androidx.compose.runtime.Composable +import band.effective.office.tablet.ui.freeNegotiationsScreen.FreeNegotiationsScreen import band.effective.office.tablet.ui.mainScreen.MainScreen import com.arkivanov.decompose.extensions.compose.jetbrains.stack.Children import tablet.ui.selectRoomScreen.SelectRoomScreen @@ -12,7 +13,7 @@ fun Root(component: RootComponent) { ) { child -> when (val instance = child.instance) { is RootComponent.Child.MainChild -> MainScreen(instance.component) - is RootComponent.Child.SelectRoomChild -> SelectRoomScreen(instance.component) + is RootComponent.Child.SelectRoomChild -> FreeNegotiationsScreen(instance.component) } } } \ No newline at end of file diff --git a/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt b/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt index b628bde0..7321ebe0 100644 --- a/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt +++ b/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt @@ -1,5 +1,6 @@ package band.effective.office.tablet.ui.root +import band.effective.office.tablet.ui.freeNegotiationsScreen.FreeNegotiationsComponent import band.effective.office.tablet.ui.mainScreen.RealMainComponent import com.arkivanov.decompose.ComponentContext import com.arkivanov.decompose.router.stack.StackNavigation @@ -35,12 +36,12 @@ class RootComponent(componentContext: ComponentContext) : ComponentContext by co } is Config.SelectRoom -> { - Child.SelectRoomChild(SelectRoomComponent(componentContext)) + Child.SelectRoomChild(FreeNegotiationsComponent(componentContext)) } } sealed class Child { - data class SelectRoomChild(val component: SelectRoomComponent) : Child() + data class SelectRoomChild(val component: FreeNegotiationsComponent) : Child() data class MainChild(val component: RealMainComponent) : Child() } -- GitLab From baad3092e68b2d4273ba07dbf81769a8b04fd6b8 Mon Sep 17 00:00:00 2001 From: Maksim Mishenko Date: Thu, 6 Jul 2023 20:58:46 +0600 Subject: [PATCH 07/10] [~] move new code in separate package --- settings.gradle.kts | 3 +- tabletApp/build.gradle.kts | 2 ++ .../freeNegotiationsScreen/build.gradle.kts | 34 +++++++++++++++++++ .../src/androidMain/AndroidManifest.xml | 4 +++ .../FreeNegotiationsComponent.kt | 0 .../FreeNegotiationsScreen.kt | 0 .../components/RoomCard.kt | 0 .../components/Room\320\241haracteristics.kt" | 0 .../freeNegotiationsScreen/models/RoomItem.kt | 0 9 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 tabletApp/features/freeNegotiationsScreen/build.gradle.kts create mode 100644 tabletApp/features/freeNegotiationsScreen/src/androidMain/AndroidManifest.xml rename tabletApp/features/{roomInfo => freeNegotiationsScreen}/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsComponent.kt (100%) rename tabletApp/features/{roomInfo => freeNegotiationsScreen}/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsScreen.kt (100%) rename tabletApp/features/{roomInfo => freeNegotiationsScreen}/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/RoomCard.kt (100%) rename "tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/Room\320\241haracteristics.kt" => "tabletApp/features/freeNegotiationsScreen/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/Room\320\241haracteristics.kt" (100%) rename tabletApp/features/{roomInfo => freeNegotiationsScreen}/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/models/RoomItem.kt (100%) diff --git a/settings.gradle.kts b/settings.gradle.kts index 70289411..759ebb62 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -5,4 +5,5 @@ include("common") include("composeApp") include(":tabletApp") include(":tabletApp:features:selectRoom") -include(":tabletApp:features:roomInfo") \ No newline at end of file +include(":tabletApp:features:roomInfo") +include(":tabletApp:features:freeNegotiationsScreen") \ No newline at end of file diff --git a/tabletApp/build.gradle.kts b/tabletApp/build.gradle.kts index b2017966..497d9eb8 100644 --- a/tabletApp/build.gradle.kts +++ b/tabletApp/build.gradle.kts @@ -53,6 +53,8 @@ kotlin { implementation(project(":tabletApp:features:selectRoom")) implementation(project(":tabletApp:features:roomInfo")) + implementation(project(":tabletApp:features:freeNegotiationsScreen")) + } } val androidMain by getting { diff --git a/tabletApp/features/freeNegotiationsScreen/build.gradle.kts b/tabletApp/features/freeNegotiationsScreen/build.gradle.kts new file mode 100644 index 00000000..f3da50b5 --- /dev/null +++ b/tabletApp/features/freeNegotiationsScreen/build.gradle.kts @@ -0,0 +1,34 @@ +plugins { + id(Plugins.AndroidLib.plugin) + id(Plugins.MultiplatformCompose.plugin) + id(Plugins.Kotlin.plugin) + id(Plugins.Parcelize.plugin) +} + +android { + compileSdk = 33 +} + +kotlin { + android { + compilations.all { + kotlinOptions { + jvmTarget = "1.8" + } + } + } + + sourceSets { + val commonMain by getting { + dependencies { + implementation(compose.runtime) + implementation(compose.foundation) + implementation(compose.material) + + // Decompose + implementation(Dependencies.Decompose.decompose) + implementation(Dependencies.Decompose.extensions) + } + } + } +} diff --git a/tabletApp/features/freeNegotiationsScreen/src/androidMain/AndroidManifest.xml b/tabletApp/features/freeNegotiationsScreen/src/androidMain/AndroidManifest.xml new file mode 100644 index 00000000..c5c2a6c3 --- /dev/null +++ b/tabletApp/features/freeNegotiationsScreen/src/androidMain/AndroidManifest.xml @@ -0,0 +1,4 @@ + + + + diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsComponent.kt b/tabletApp/features/freeNegotiationsScreen/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsComponent.kt similarity index 100% rename from tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsComponent.kt rename to tabletApp/features/freeNegotiationsScreen/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsComponent.kt diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsScreen.kt b/tabletApp/features/freeNegotiationsScreen/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsScreen.kt similarity index 100% rename from tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsScreen.kt rename to tabletApp/features/freeNegotiationsScreen/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/FreeNegotiationsScreen.kt diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/RoomCard.kt b/tabletApp/features/freeNegotiationsScreen/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/RoomCard.kt similarity index 100% rename from tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/RoomCard.kt rename to tabletApp/features/freeNegotiationsScreen/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/RoomCard.kt diff --git "a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/Room\320\241haracteristics.kt" "b/tabletApp/features/freeNegotiationsScreen/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/Room\320\241haracteristics.kt" similarity index 100% rename from "tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/Room\320\241haracteristics.kt" rename to "tabletApp/features/freeNegotiationsScreen/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/components/Room\320\241haracteristics.kt" diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/models/RoomItem.kt b/tabletApp/features/freeNegotiationsScreen/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/models/RoomItem.kt similarity index 100% rename from tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/models/RoomItem.kt rename to tabletApp/features/freeNegotiationsScreen/src/commonMain/kotlin/band/effective/office/tablet/ui/freeNegotiationsScreen/models/RoomItem.kt -- GitLab From bf693662e3615525b279eab68279506033e96de4 Mon Sep 17 00:00:00 2001 From: Margarita Date: Fri, 7 Jul 2023 13:37:55 +0600 Subject: [PATCH 08/10] [+] libres, modal window layout without close logic and successstate --- tabletApp/build.gradle.kts | 3 + .../features/selectRoom/build.gradle.kts | 17 +++ .../ui/selectRoomScreen/SelectRoomScreen.kt | 102 +++++++++++++++++- .../uiComponents/BookingButtonView.kt | 45 ++++++++ .../uiComponents/DateTimeView.kt | 69 ++++++++++++ .../uiComponents/LengthEventView.kt | 48 +++++++++ .../uiComponents/OrganizerEventView.kt | 34 ++++++ .../uiComponents/TitleFieldView.kt | 29 +++++ .../commonMain/libres/strings/strings_ru.xml | 9 ++ .../src/main/res/drawable/cross.xml | 4 + 10 files changed, 359 insertions(+), 1 deletion(-) create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/BookingButtonView.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/DateTimeView.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/LengthEventView.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/OrganizerEventView.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/TitleFieldView.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/libres/strings/strings_ru.xml create mode 100644 tabletApp/features/selectRoom/src/main/res/drawable/cross.xml diff --git a/tabletApp/build.gradle.kts b/tabletApp/build.gradle.kts index deb3bd59..5da9ed73 100644 --- a/tabletApp/build.gradle.kts +++ b/tabletApp/build.gradle.kts @@ -47,6 +47,9 @@ kotlin { implementation(Dependencies.Decompose.decompose) implementation(Dependencies.Decompose.extensions) + //Libres + implementation(Dependencies.Libres.libresCompose) + implementation(project(":tabletApp:features:selectRoom")) implementation(project(":tabletApp:features:roomInfo")) } diff --git a/tabletApp/features/selectRoom/build.gradle.kts b/tabletApp/features/selectRoom/build.gradle.kts index 1815ff28..3f2d3d1c 100644 --- a/tabletApp/features/selectRoom/build.gradle.kts +++ b/tabletApp/features/selectRoom/build.gradle.kts @@ -3,10 +3,15 @@ plugins { id(Plugins.MultiplatformCompose.plugin) id(Plugins.Kotlin.plugin) id(Plugins.Parcelize.plugin) + id(Plugins.Libres.plugin) } android { compileSdk = 33 + sourceSets["main"].apply { + res.srcDirs("src/androidMain/resources") + res.srcDir("build/generated/libres/android/resources") + } } kotlin { @@ -32,6 +37,9 @@ kotlin { //Koin api(Dependencies.Koin.core) + + //Libres + implementation(Dependencies.Libres.libresCompose) } } @@ -43,4 +51,13 @@ kotlin { } } + libres { + // https://github.com/Skeptick/libres#setup + generatedClassName = "MainRes" // "Res" by default + generateNamedArguments = true // false by default + baseLocaleLanguageCode = "ru" // "en" by default + camelCaseNamesForAppleFramework = true // false by default + + } + } diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreen.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreen.kt index 2daab3df..3e3e811b 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreen.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreen.kt @@ -1,9 +1,37 @@ package tablet.ui.selectRoomScreen +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.text.font.FontFamily +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import androidx.compose.ui.window.Dialog +import androidx.compose.ui.window.DialogProperties +import tablet.ui.selectRoomScreen.uiComponents.BookingButtonView +import tablet.ui.selectRoomScreen.uiComponents.DateTimeView +import tablet.ui.selectRoomScreen.uiComponents.LengthEventView +import tablet.ui.selectRoomScreen.uiComponents.OrganizerEventView +import tablet.ui.selectRoomScreen.uiComponents.TitleFieldView @Composable fun SelectRoomScreen(component: RealSelectRoomComponent){ @@ -31,5 +59,77 @@ fun SelectRoomScreen(component: RealSelectRoomComponent){ fun SelectRoomView( component: RealSelectRoomComponent ){ - Text(text = component.booking.nameRoom) + val modifier = Modifier.background(Color(0xFF3A3736)) + val shape = RoundedCornerShape(16) + + + Dialog( + onDismissRequest = {} + ) + { + Box( + modifier = Modifier + .size(575.dp, 510.dp) + .clip(RoundedCornerShape(5)) + .background(Color(0xFF302D2C)), + contentAlignment = Alignment.Center + ) { + Column{ + Text( + modifier = Modifier.width(415.dp), + text = "ЗанÑть ${component.booking.nameRoom}?", + fontSize = 28.sp, + fontWeight = FontWeight(500), + fontFamily = FontFamily.SansSerif, + color = Color(0xFFFAFAFA), + textAlign = TextAlign.Center + ) + Spacer(modifier = Modifier.height(24.dp)) + TitleFieldView( + modifier = Modifier.width(415.dp), + title = "когда" + ) + Spacer(modifier = Modifier.height(16.dp)) + DateTimeView( + modifier = modifier.height(64.dp).width(415.dp), + shape = shape, + booking = component.booking + ) + Spacer(modifier = Modifier.height(24.dp)) + Row { + Column(verticalArrangement = Arrangement.spacedBy(16.dp)) { + TitleFieldView( + modifier = Modifier.width(156.dp), + title = "на Ñколько" + ) + LengthEventView( + modifier = modifier.height(64.dp).width(156.dp), + shape = shape, + booking = component.booking + ) + } + Spacer(modifier = Modifier.width(16.dp)) + Column(verticalArrangement = Arrangement.spacedBy(16.dp)) { + TitleFieldView( + modifier = Modifier.width(243.dp), + title = "организатор" + ) + OrganizerEventView( + modifier = modifier.height(64.dp).width(243.dp), + shape = shape, + booking = component.booking + ) + } + } + Spacer(modifier = Modifier.height(40.dp)) + BookingButtonView( + modifier = Modifier.height(64.dp).width(415.dp), + color = Color(0xFFEF7234), + shape = RoundedCornerShape(40), + booking = component.booking + ) + } + } + } + } \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/BookingButtonView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/BookingButtonView.kt new file mode 100644 index 00000000..31a2344e --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/BookingButtonView.kt @@ -0,0 +1,45 @@ +package tablet.ui.selectRoomScreen.uiComponents + +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.Button +import androidx.compose.material.ButtonDefaults +import androidx.compose.material.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.text.font.FontFamily +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import tablet.domain.model.Booking + +@Composable +fun BookingButtonView(modifier: Modifier, color: Color, shape: RoundedCornerShape, booking: Booking) { + val isPressed = remember { mutableStateOf(false) } + val colorButton = if(isPressed.value) Color(0xFFED6521) else color + + Button( + modifier = modifier, + colors = ButtonDefaults.buttonColors(colorButton), + shape = shape, + onClick = { isPressed.value = !isPressed.value} + ) { + Box(contentAlignment = Alignment.Center) + { + Text( + text = "ЗанÑть Ñ ${booking.eventInfo.startTime.time24()} до ${booking.eventInfo.finishTime.time24()}", + fontSize = 20.sp, + fontWeight = FontWeight(500), + fontFamily = FontFamily.SansSerif, + color = Color(0xFFFAFAFA) + ) + } + } +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/DateTimeView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/DateTimeView.kt new file mode 100644 index 00000000..fd2a29a3 --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/DateTimeView.kt @@ -0,0 +1,69 @@ +package tablet.ui.selectRoomScreen.uiComponents + +import androidx.compose.foundation.background +import androidx.compose.foundation.border +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.Card +import androidx.compose.material.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.text.font.FontFamily +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.LineHeightStyle +import androidx.compose.ui.unit.TextUnit +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import tablet.domain.model.Booking +import java.text.SimpleDateFormat +import java.util.Calendar +import java.util.Locale + +@Composable +fun DateTimeView(modifier: Modifier, shape: RoundedCornerShape, booking: Booking) { + Card( + shape = shape, + backgroundColor = Color(0xFF3A3736) + ) { + Box( + modifier = modifier, + contentAlignment = Alignment.Center + ) { + Row { + Text( + text = booking.eventInfo.startTime.date(), + fontSize = 20.sp, + fontWeight = FontWeight(700), + fontFamily = FontFamily.SansSerif, + color = Color(0xFFA362F8) + ) + + Spacer(modifier = Modifier.width(5.dp)) + + Text( + text = "Ñ ${booking.eventInfo.startTime.time24()} до ${booking.eventInfo.finishTime.time24()}", + fontSize = 20.sp, + fontWeight = FontWeight(500), + fontFamily = FontFamily.SansSerif, + color = Color(0xFFFAFAFA) + ) + } + } + + } +} + +private fun Calendar.date() = "${this.get(Calendar.DAY_OF_MONTH)} " + + SimpleDateFormat("MMMM", Locale("ru")).format(this.time) + +fun Calendar.time24() = SimpleDateFormat( + "HH:mm", + Locale("ru") +).format(this.time) diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/LengthEventView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/LengthEventView.kt new file mode 100644 index 00000000..589b774f --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/LengthEventView.kt @@ -0,0 +1,48 @@ +package tablet.ui.selectRoomScreen.uiComponents + +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.Card +import androidx.compose.material.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.text.font.FontFamily +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.unit.sp +import tablet.domain.model.Booking +import java.util.Calendar + +@Composable +fun LengthEventView(modifier: Modifier, shape: RoundedCornerShape, booking: Booking) { + + val hours = getLengthEvent(booking.eventInfo.startTime, booking.eventInfo.finishTime) / 60 + val minutes = getLengthEvent(booking.eventInfo.startTime, booking.eventInfo.finishTime) % 60 + val lengthEvent: String = when(hours){ + 0 -> "$minutes мин" + else -> "${hours}ч ${minutes}мин" + } + + Card( + shape = shape, + backgroundColor = Color(0xFF3A3736) + ) { + Box( + modifier = modifier, + contentAlignment = Alignment.Center + ) { + Text( + text = lengthEvent, + fontSize = 20.sp, + fontWeight = FontWeight(700), + fontFamily = FontFamily.SansSerif, + color = Color(0xFFFAFAFA) + ) + } + } +} + +private fun getLengthEvent(start: Calendar, finish: Calendar) = + finish.get(Calendar.MINUTE) - start.get(Calendar.MINUTE) \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/OrganizerEventView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/OrganizerEventView.kt new file mode 100644 index 00000000..4a317e25 --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/OrganizerEventView.kt @@ -0,0 +1,34 @@ +package tablet.ui.selectRoomScreen.uiComponents + +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.Card +import androidx.compose.material.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.text.font.FontFamily +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.unit.sp +import tablet.domain.model.Booking + +@Composable +fun OrganizerEventView(modifier: Modifier, shape: RoundedCornerShape, booking: Booking) { + Card( + shape = shape, + backgroundColor = Color(0xFF3A3736)) { + Box( + modifier = modifier, + contentAlignment = Alignment.Center) { + Text( + text = booking.eventInfo.organizer, + fontWeight = FontWeight(700), + fontSize = 20.sp, + fontFamily = FontFamily.SansSerif, + color = Color(0xFFFAFAFA) + ) + } + } +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/TitleFieldView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/TitleFieldView.kt new file mode 100644 index 00000000..af465560 --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/TitleFieldView.kt @@ -0,0 +1,29 @@ +package tablet.ui.selectRoomScreen.uiComponents + +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.padding +import androidx.compose.material.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.text.font.FontFamily +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp + +@Composable +fun TitleFieldView(modifier: Modifier, title: String) { + Box( + modifier = modifier.padding(0.dp), + contentAlignment = Alignment.CenterStart + ) { + Text( + text = title, + fontSize = 16.sp, + fontWeight = FontWeight(500), + fontFamily = FontFamily.SansSerif, + color = Color(0xFF808080) + ) + } +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/libres/strings/strings_ru.xml b/tabletApp/features/selectRoom/src/commonMain/libres/strings/strings_ru.xml new file mode 100644 index 00000000..a5e70883 --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/libres/strings/strings_ru.xml @@ -0,0 +1,9 @@ + + + ЗанÑть c ${startTime} до ${finishTime} + Ñ ${startTime} до ${finishTime} + ЗанÑть ${nameRoom}? + когда + на Ñколько + организатор + \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/main/res/drawable/cross.xml b/tabletApp/features/selectRoom/src/main/res/drawable/cross.xml new file mode 100644 index 00000000..336fd8bb --- /dev/null +++ b/tabletApp/features/selectRoom/src/main/res/drawable/cross.xml @@ -0,0 +1,4 @@ + + + -- GitLab From 203581600601f163920e2247fbaa7c4f24366b88 Mon Sep 17 00:00:00 2001 From: Margarita Date: Mon, 10 Jul 2023 05:42:42 +0600 Subject: [PATCH 09/10] [+] closing modal, mocks, length calculation bug fixed --- .../kotlin/tablet/domain/MockBooking.kt | 49 +++++++ .../RealSelectRoomComponent.kt | 8 +- .../selectRoomScreen/SelectRoomComponent.kt | 2 - .../ui/selectRoomScreen/SelectRoomScreen.kt | 111 +------------- .../ui/selectRoomScreen/SelectRoomView.kt | 135 ++++++++++++++++++ .../uiComponents/BookingButtonView.kt | 16 ++- .../uiComponents/CrossButtonView.kt | 39 +++++ .../uiComponents/DateTimeView.kt | 25 +--- .../uiComponents/LengthEventView.kt | 11 +- .../uiComponents/OrganizerEventView.kt | 4 +- .../uiComponents/TitleModal.kt | 29 ++++ .../tablet/utils/ConvertCalendarToTime.kt | 10 ++ .../src/commonMain/libres/images/cross.svg | 3 + .../commonMain/libres/strings/strings_ru.xml | 2 + .../src/main/res/drawable/cross.xml | 4 - .../office/tablet/ui/root/RootComponent.kt | 14 +- 16 files changed, 299 insertions(+), 163 deletions(-) create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/MockBooking.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomView.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/CrossButtonView.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/TitleModal.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/utils/ConvertCalendarToTime.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/libres/images/cross.svg delete mode 100644 tabletApp/features/selectRoom/src/main/res/drawable/cross.xml diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/MockBooking.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/MockBooking.kt new file mode 100644 index 00000000..6ad5aff4 --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/MockBooking.kt @@ -0,0 +1,49 @@ +package tablet.domain + +import tablet.domain.model.Booking +import tablet.domain.model.EventInfo +import java.util.Calendar + +object MockBooking { + val bookingCheckTime15min = Booking( + nameRoom = "Sirius", + eventInfo = EventInfo( + startTime = setTime(2023, 4, 20, 15, 20), + finishTime = setTime(2023, 4, 20, 15, 35), + organizer = "Ольга Белозёрова" + ) + ) + + val bookingCheckTime1h = Booking( + nameRoom = "Sirius", + eventInfo = EventInfo( + startTime = setTime(2023, 11, 11, 15, 20), + finishTime = setTime(2023, 11, 11, 16, 20), + organizer = "Ольга Белозёрова" + ) + ) + + val bookingCheckTime1h15min = Booking( + nameRoom = "Sirius", + eventInfo = EventInfo( + startTime = setTime(2023, 11, 11, 15, 20), + finishTime = setTime(2023, 11, 11, 16, 35), + organizer = "Ольга Белозёрова" + ) + ) + + val bookingCheckOrganizer = Booking( + nameRoom = "Sirius", + eventInfo = EventInfo( + startTime = setTime(2023, 1, 7, 9, 20), + finishTime = setTime(2023, 1, 7, 11, 35), + organizer = "Ðбдурахмангаджи КонÑтантинопольÑкий" + ) + ) + + private fun setTime(y: Int, m: Int, d: Int, h: Int, min: Int): Calendar { + val currentTime = Calendar.getInstance() + currentTime.set(y, m, d, h, min) + return currentTime + } +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/RealSelectRoomComponent.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/RealSelectRoomComponent.kt index 1de4be7e..12451cc4 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/RealSelectRoomComponent.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/RealSelectRoomComponent.kt @@ -9,21 +9,15 @@ import tablet.domain.ISelectRoomInteractor import tablet.domain.model.Booking class RealSelectRoomComponent(componentContext: ComponentContext, - booking: Booking) + val booking: Booking) : ComponentContext by componentContext, SelectRoomComponent, KoinComponent{ private val interactor: ISelectRoomInteractor by inject() - val booking = booking private var _state = MutableStateFlow(SelectRoomScreenState.defaultState) override val state = _state.asStateFlow() override fun bookRoom() { - TODO("Not yet implemented") - } - - override fun close() { - TODO("Not yet implemented") } } \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomComponent.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomComponent.kt index cdfdf472..498c251b 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomComponent.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomComponent.kt @@ -5,7 +5,5 @@ import tablet.domain.model.Booking interface SelectRoomComponent { val state: StateFlow - fun bookRoom() - fun close() } \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreen.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreen.kt index 3e3e811b..b1bed1ea 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreen.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreen.kt @@ -1,37 +1,8 @@ package tablet.ui.selectRoomScreen -import androidx.compose.foundation.background -import androidx.compose.foundation.layout.Arrangement -import androidx.compose.foundation.layout.Box -import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.Row -import androidx.compose.foundation.layout.Spacer -import androidx.compose.foundation.layout.fillMaxSize -import androidx.compose.foundation.layout.height -import androidx.compose.foundation.layout.padding -import androidx.compose.foundation.layout.size -import androidx.compose.foundation.layout.width -import androidx.compose.foundation.shape.RoundedCornerShape -import androidx.compose.material.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue -import androidx.compose.ui.Alignment -import androidx.compose.ui.Modifier -import androidx.compose.ui.draw.clip -import androidx.compose.ui.graphics.Color -import androidx.compose.ui.text.font.FontFamily -import androidx.compose.ui.text.font.FontWeight -import androidx.compose.ui.text.style.TextAlign -import androidx.compose.ui.unit.dp -import androidx.compose.ui.unit.sp -import androidx.compose.ui.window.Dialog -import androidx.compose.ui.window.DialogProperties -import tablet.ui.selectRoomScreen.uiComponents.BookingButtonView -import tablet.ui.selectRoomScreen.uiComponents.DateTimeView -import tablet.ui.selectRoomScreen.uiComponents.LengthEventView -import tablet.ui.selectRoomScreen.uiComponents.OrganizerEventView -import tablet.ui.selectRoomScreen.uiComponents.TitleFieldView @Composable fun SelectRoomScreen(component: RealSelectRoomComponent){ @@ -39,7 +10,8 @@ fun SelectRoomScreen(component: RealSelectRoomComponent){ when{ state.isData -> { - SelectRoomView(component) + // SelectRoomView(component) + CheckButton(component) } state.isLoad -> { @@ -53,83 +25,4 @@ fun SelectRoomScreen(component: RealSelectRoomComponent){ } } -} - -@Composable -fun SelectRoomView( - component: RealSelectRoomComponent -){ - val modifier = Modifier.background(Color(0xFF3A3736)) - val shape = RoundedCornerShape(16) - - - Dialog( - onDismissRequest = {} - ) - { - Box( - modifier = Modifier - .size(575.dp, 510.dp) - .clip(RoundedCornerShape(5)) - .background(Color(0xFF302D2C)), - contentAlignment = Alignment.Center - ) { - Column{ - Text( - modifier = Modifier.width(415.dp), - text = "ЗанÑть ${component.booking.nameRoom}?", - fontSize = 28.sp, - fontWeight = FontWeight(500), - fontFamily = FontFamily.SansSerif, - color = Color(0xFFFAFAFA), - textAlign = TextAlign.Center - ) - Spacer(modifier = Modifier.height(24.dp)) - TitleFieldView( - modifier = Modifier.width(415.dp), - title = "когда" - ) - Spacer(modifier = Modifier.height(16.dp)) - DateTimeView( - modifier = modifier.height(64.dp).width(415.dp), - shape = shape, - booking = component.booking - ) - Spacer(modifier = Modifier.height(24.dp)) - Row { - Column(verticalArrangement = Arrangement.spacedBy(16.dp)) { - TitleFieldView( - modifier = Modifier.width(156.dp), - title = "на Ñколько" - ) - LengthEventView( - modifier = modifier.height(64.dp).width(156.dp), - shape = shape, - booking = component.booking - ) - } - Spacer(modifier = Modifier.width(16.dp)) - Column(verticalArrangement = Arrangement.spacedBy(16.dp)) { - TitleFieldView( - modifier = Modifier.width(243.dp), - title = "организатор" - ) - OrganizerEventView( - modifier = modifier.height(64.dp).width(243.dp), - shape = shape, - booking = component.booking - ) - } - } - Spacer(modifier = Modifier.height(40.dp)) - BookingButtonView( - modifier = Modifier.height(64.dp).width(415.dp), - color = Color(0xFFEF7234), - shape = RoundedCornerShape(40), - booking = component.booking - ) - } - } - } - } \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomView.kt new file mode 100644 index 00000000..c3b21f2a --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomView.kt @@ -0,0 +1,135 @@ +package tablet.ui.selectRoomScreen + +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.Button +import androidx.compose.material.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.MutableState +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.unit.dp +import androidx.compose.ui.window.Dialog +import band.effective.office.tablet.features.selectRoom.MainRes +import tablet.ui.selectRoomScreen.uiComponents.BookingButtonView +import tablet.ui.selectRoomScreen.uiComponents.CrossButtonView +import tablet.ui.selectRoomScreen.uiComponents.DateTimeView +import tablet.ui.selectRoomScreen.uiComponents.LengthEventView +import tablet.ui.selectRoomScreen.uiComponents.OrganizerEventView +import tablet.ui.selectRoomScreen.uiComponents.Title +import tablet.ui.selectRoomScreen.uiComponents.TitleFieldView + +@Composable +fun CheckButton(component: RealSelectRoomComponent) { + val showDialog = remember { mutableStateOf(false) } + Button( + onClick = { showDialog.value = true } + ) { + Text( + text = "check", + ) + } + + if(showDialog.value){ + SelectRoomView(component, showDialog) + } +} + +@Composable +fun SelectRoomView( + component: RealSelectRoomComponent, + showDialog: MutableState +) { + // val showDialog = remember { mutableStateOf(true) } + val modifier = Modifier.background(Color(0xFF3A3736)) + val shape = RoundedCornerShape(16) + + if (!showDialog.value) return + + Dialog( + onDismissRequest = { showDialog.value = false } + ) + { + Box( + modifier = Modifier + .size(575.dp, 510.dp) + .clip(RoundedCornerShape(5)) + .background(Color(0xFF302D2C)), + ) { + Column( + modifier = Modifier.matchParentSize(), + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.Center + ) { + Spacer(modifier = Modifier.height(30.dp)) + CrossButtonView( + Modifier.width(575.dp), + onDismissRequest = { showDialog.value = false } + ) + Title(component) + Spacer(modifier = Modifier.height(24.dp)) + TitleFieldView( + modifier = Modifier.width(415.dp), + title = MainRes.string.whenEvent + ) + Spacer(modifier = Modifier.height(16.dp)) + DateTimeView( + modifier = modifier.height(64.dp).width(415.dp), + shape = shape, + booking = component.booking + ) + Spacer(modifier = Modifier.height(24.dp)) + RowInfoLengthAndOrganizer(modifier, shape, component) + Spacer(modifier = Modifier.height(40.dp)) + BookingButtonView( + modifier = Modifier.height(64.dp).width(415.dp), + color = Color(0xFFEF7234), + shape = RoundedCornerShape(40), + booking = component.booking + ) + Spacer(modifier = Modifier.height(80.dp)) + } + } + } +} + +@Composable +fun RowInfoLengthAndOrganizer(modifier: Modifier, shape: RoundedCornerShape, component: RealSelectRoomComponent){ + Row { + Column(verticalArrangement = Arrangement.spacedBy(12.dp)) { + TitleFieldView( + modifier = Modifier.width(156.dp), + title = MainRes.string.how_much + ) + LengthEventView( + modifier = modifier.height(64.dp).width(156.dp), + shape = shape, + booking = component.booking + ) + } + Spacer(modifier = Modifier.width(16.dp)) + Column(verticalArrangement = Arrangement.spacedBy(16.dp)) { + TitleFieldView( + modifier = Modifier.width(243.dp), + title = MainRes.string.organizer + ) + OrganizerEventView( + modifier = modifier.height(64.dp).width(243.dp), + shape = shape, + booking = component.booking + ) + } + } +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/BookingButtonView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/BookingButtonView.kt index 31a2344e..3613b943 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/BookingButtonView.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/BookingButtonView.kt @@ -1,8 +1,6 @@ package tablet.ui.selectRoomScreen.uiComponents import androidx.compose.foundation.layout.Box -import androidx.compose.foundation.layout.height -import androidx.compose.foundation.layout.width import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material.Button import androidx.compose.material.ButtonDefaults @@ -15,10 +13,10 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.text.font.FontWeight -import androidx.compose.ui.text.style.TextAlign -import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp +import band.effective.office.tablet.features.selectRoom.MainRes import tablet.domain.model.Booking +import tablet.utils.time24 @Composable fun BookingButtonView(modifier: Modifier, color: Color, shape: RoundedCornerShape, booking: Booking) { @@ -34,11 +32,15 @@ fun BookingButtonView(modifier: Modifier, color: Color, shape: RoundedCornerShap Box(contentAlignment = Alignment.Center) { Text( - text = "ЗанÑть Ñ ${booking.eventInfo.startTime.time24()} до ${booking.eventInfo.finishTime.time24()}", + text = MainRes.string.booking_time_button.format( + startTime = booking.eventInfo.startTime.time24(), + finishTime = booking.eventInfo.finishTime.time24() + ), fontSize = 20.sp, fontWeight = FontWeight(500), - fontFamily = FontFamily.SansSerif, - color = Color(0xFFFAFAFA) + color = Color(0xFFFAFAFA), + letterSpacing = 0.1.sp, + fontFamily = FontFamily.SansSerif ) } } diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/CrossButtonView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/CrossButtonView.kt new file mode 100644 index 00000000..d1dfc7e0 --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/CrossButtonView.kt @@ -0,0 +1,39 @@ +package tablet.ui.selectRoomScreen.uiComponents + +import androidx.compose.foundation.background +import androidx.compose.material.Icon +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.material.IconButton +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.vector.ImageVector +import androidx.compose.ui.res.vectorResource +import androidx.compose.ui.unit.dp +import band.effective.office.tablet.features.selectRoom.MainRes +import tablet.domain.model.Booking + +@Composable +fun CrossButtonView(modifier: Modifier, onDismissRequest:() -> Unit) { + + Box( + modifier = modifier.padding(end = 54.dp), + contentAlignment = Alignment.CenterEnd + ) { + IconButton( + onClick = { onDismissRequest() }, + modifier = Modifier + .size(40.dp) + ) { + Icon( + imageVector = ImageVector.vectorResource(MainRes.image.cross), + contentDescription = "Cross", + modifier = Modifier.size(25.dp), + tint = Color(0xFF808080) + ) + } + } +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/DateTimeView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/DateTimeView.kt index fd2a29a3..83140c52 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/DateTimeView.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/DateTimeView.kt @@ -1,8 +1,5 @@ package tablet.ui.selectRoomScreen.uiComponents -import androidx.compose.foundation.background -import androidx.compose.foundation.border -import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer @@ -13,18 +10,15 @@ import androidx.compose.material.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier -import androidx.compose.ui.draw.clip import androidx.compose.ui.graphics.Color import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.text.font.FontWeight -import androidx.compose.ui.text.style.LineHeightStyle -import androidx.compose.ui.unit.TextUnit import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp +import band.effective.office.tablet.features.selectRoom.MainRes import tablet.domain.model.Booking -import java.text.SimpleDateFormat -import java.util.Calendar -import java.util.Locale +import tablet.utils.date +import tablet.utils.time24 @Composable fun DateTimeView(modifier: Modifier, shape: RoundedCornerShape, booking: Booking) { @@ -48,7 +42,10 @@ fun DateTimeView(modifier: Modifier, shape: RoundedCornerShape, booking: Booking Spacer(modifier = Modifier.width(5.dp)) Text( - text = "Ñ ${booking.eventInfo.startTime.time24()} до ${booking.eventInfo.finishTime.time24()}", + text = MainRes.string.booking_time.format( + startTime = booking.eventInfo.startTime.time24(), + finishTime = booking.eventInfo.finishTime.time24() + ), fontSize = 20.sp, fontWeight = FontWeight(500), fontFamily = FontFamily.SansSerif, @@ -59,11 +56,3 @@ fun DateTimeView(modifier: Modifier, shape: RoundedCornerShape, booking: Booking } } - -private fun Calendar.date() = "${this.get(Calendar.DAY_OF_MONTH)} " + - SimpleDateFormat("MMMM", Locale("ru")).format(this.time) - -fun Calendar.time24() = SimpleDateFormat( - "HH:mm", - Locale("ru") -).format(this.time) diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/LengthEventView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/LengthEventView.kt index 589b774f..d55125c8 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/LengthEventView.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/LengthEventView.kt @@ -12,6 +12,7 @@ import androidx.compose.ui.graphics.Color import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.sp +import band.effective.office.tablet.features.selectRoom.MainRes import tablet.domain.model.Booking import java.util.Calendar @@ -21,8 +22,11 @@ fun LengthEventView(modifier: Modifier, shape: RoundedCornerShape, booking: Book val hours = getLengthEvent(booking.eventInfo.startTime, booking.eventInfo.finishTime) / 60 val minutes = getLengthEvent(booking.eventInfo.startTime, booking.eventInfo.finishTime) % 60 val lengthEvent: String = when(hours){ - 0 -> "$minutes мин" - else -> "${hours}ч ${minutes}мин" + 0 -> MainRes.string.minutes.format( minutes = minutes.toString()) + else -> MainRes.string.hours_minutes.format( + hours = hours.toString(), + minutes = minutes.toString() + ) } Card( @@ -45,4 +49,5 @@ fun LengthEventView(modifier: Modifier, shape: RoundedCornerShape, booking: Book } private fun getLengthEvent(start: Calendar, finish: Calendar) = - finish.get(Calendar.MINUTE) - start.get(Calendar.MINUTE) \ No newline at end of file + (finish.get(Calendar.HOUR) * 60 + finish.get(Calendar.MINUTE)) - + (start.get(Calendar.HOUR) * 60 + start.get(Calendar.MINUTE)) \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/OrganizerEventView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/OrganizerEventView.kt index 4a317e25..fe8ecb6b 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/OrganizerEventView.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/OrganizerEventView.kt @@ -11,6 +11,7 @@ import androidx.compose.ui.draw.clip import androidx.compose.ui.graphics.Color import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.sp import tablet.domain.model.Booking @@ -27,7 +28,8 @@ fun OrganizerEventView(modifier: Modifier, shape: RoundedCornerShape, booking: B fontWeight = FontWeight(700), fontSize = 20.sp, fontFamily = FontFamily.SansSerif, - color = Color(0xFFFAFAFA) + color = Color(0xFFFAFAFA), + textAlign = TextAlign.Center ) } } diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/TitleModal.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/TitleModal.kt new file mode 100644 index 00000000..ba1f0ea3 --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/TitleModal.kt @@ -0,0 +1,29 @@ +package tablet.ui.selectRoomScreen.uiComponents + +import androidx.compose.foundation.layout.width +import androidx.compose.material.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.text.font.FontFamily +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import band.effective.office.tablet.features.selectRoom.MainRes +import tablet.ui.selectRoomScreen.RealSelectRoomComponent + +@Composable +fun Title(component: RealSelectRoomComponent){ + Text( + modifier = Modifier.width(415.dp), + text = MainRes.string.title_booking_dialog.format( + nameRoom = component.booking.nameRoom + ), + fontSize = 28.sp, + fontWeight = FontWeight(500), + fontFamily = FontFamily.SansSerif, + color = Color(0xFFFAFAFA), + textAlign = TextAlign.Center + ) +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/utils/ConvertCalendarToTime.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/utils/ConvertCalendarToTime.kt new file mode 100644 index 00000000..0879e1b3 --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/utils/ConvertCalendarToTime.kt @@ -0,0 +1,10 @@ +package tablet.utils + +import java.text.SimpleDateFormat +import java.util.Calendar +import java.util.Locale + +fun Calendar.date() = "${this.get(Calendar.DAY_OF_MONTH)} " + + SimpleDateFormat("MMMM", Locale("ru")).format(this.time) + +fun Calendar.time24() = SimpleDateFormat("HH:mm", Locale("ru")).format(this.time) diff --git a/tabletApp/features/selectRoom/src/commonMain/libres/images/cross.svg b/tabletApp/features/selectRoom/src/commonMain/libres/images/cross.svg new file mode 100644 index 00000000..626d0499 --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/libres/images/cross.svg @@ -0,0 +1,3 @@ + + + diff --git a/tabletApp/features/selectRoom/src/commonMain/libres/strings/strings_ru.xml b/tabletApp/features/selectRoom/src/commonMain/libres/strings/strings_ru.xml index a5e70883..281a0ebf 100644 --- a/tabletApp/features/selectRoom/src/commonMain/libres/strings/strings_ru.xml +++ b/tabletApp/features/selectRoom/src/commonMain/libres/strings/strings_ru.xml @@ -6,4 +6,6 @@ когда на Ñколько организатор + ${minutes} мин + ${hours}ч ${minutes}мин \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/main/res/drawable/cross.xml b/tabletApp/features/selectRoom/src/main/res/drawable/cross.xml deleted file mode 100644 index 336fd8bb..00000000 --- a/tabletApp/features/selectRoom/src/main/res/drawable/cross.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - diff --git a/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt b/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt index 0be3fc5d..25ec0e75 100644 --- a/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt +++ b/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt @@ -7,10 +7,8 @@ import com.arkivanov.decompose.router.stack.childStack import com.arkivanov.decompose.router.stack.push import com.arkivanov.essenty.parcelable.Parcelable import kotlinx.android.parcel.Parcelize -import tablet.domain.model.Booking -import tablet.domain.model.EventInfo +import tablet.domain.MockBooking import tablet.ui.selectRoomScreen.RealSelectRoomComponent -import java.util.Calendar class RootComponent(componentContext: ComponentContext) : ComponentContext by componentContext { @@ -41,15 +39,7 @@ class RootComponent(componentContext: ComponentContext) : ComponentContext by co Child.SelectRoomChild( RealSelectRoomComponent( componentContext, - Booking - ("Sirius", - EventInfo - ( - Calendar.getInstance(), - Calendar.getInstance(), - "Ольга Белозёрова" - ) - ) + MockBooking.bookingCheckTime15min ) ) } -- GitLab From aff7cc00e9fe715ca2a490f452ca762181ba2fb4 Mon Sep 17 00:00:00 2001 From: Maksim Mishenko Date: Mon, 10 Jul 2023 12:39:54 +0600 Subject: [PATCH 10/10] [~] add booking dialog in main screen --- tabletApp/features/roomInfo/build.gradle.kts | 4 ++ .../office/tablet/di/InitRoomInfoKoin.kt | 2 +- .../office/tablet/domain/model/EventInfo.kt | 4 +- .../tablet/ui/mainScreen/MainComponent.kt | 2 + .../office/tablet/ui/mainScreen/MainScreen.kt | 6 ++- .../tablet/ui/mainScreen/MainScreenEvent.kt | 3 +- .../tablet/ui/mainScreen/MainScreenState.kt | 6 ++- .../tablet/ui/mainScreen/RealMainComponent.kt | 16 +++++++- .../mainScreen/components/MainScreenView.kt | 38 ++++++++++++------- .../RealBookingRoomComponent.kt | 7 ++-- .../features/selectRoom/build.gradle.kts | 1 + .../office}/tablet/di/initSelectRoomKoin.kt | 3 +- .../office/tablet/di/SelectRoomModule.kt | 9 +++++ .../tablet/domain/ISelectRoomInteractor.kt | 8 ++++ .../office}/tablet/domain/MockBooking.kt | 6 +-- .../tablet/domain/SelectRoomInteractorImpl.kt | 10 +++++ .../office}/tablet/domain/model/Booking.kt | 2 +- .../office/tablet/domain/model/EventInfo.kt | 18 +++++++++ .../tablet/network/ISelectRoomRepository.kt | 8 ++++ .../RealSelectRoomComponent.kt | 18 ++++++--- .../selectRoomScreen/SelectRoomComponent.kt | 4 +- .../ui/selectRoomScreen/SelectRoomScreen.kt | 2 +- .../selectRoomScreen/SelectRoomScreenState.kt | 2 +- .../ui/selectRoomScreen/SelectRoomView.kt | 37 +++++++++--------- .../uiComponents/BookingButtonView.kt | 6 +-- .../uiComponents/CrossButtonView.kt | 4 +- .../uiComponents/DateTimeView.kt | 8 ++-- .../uiComponents/LengthEventView.kt | 4 +- .../uiComponents/OrganizerEventView.kt | 4 +- .../uiComponents/TitleFieldView.kt | 2 +- .../uiComponents/TitleModal.kt | 4 +- .../tablet/utils/ConvertCalendarToTime.kt | 2 +- .../kotlin/tablet/di/SelectRoomModule.kt | 9 ----- .../tablet/domain/ISelectRoomInteractor.kt | 8 ---- .../tablet/domain/SelectRoomInteractorImpl.kt | 9 ----- .../kotlin/tablet/domain/model/EventInfo.kt | 9 ----- .../tablet/network/ISelectRoomRepository.kt | 8 ---- .../effective/office/tablet/MainActivity.kt | 3 +- .../effective/office/tablet/ui/root/Root.kt | 2 +- .../office/tablet/ui/root/RootComponent.kt | 4 +- 40 files changed, 177 insertions(+), 125 deletions(-) rename tabletApp/features/selectRoom/src/androidMain/kotlin/{ => band/effective/office}/tablet/di/initSelectRoomKoin.kt (53%) create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/di/SelectRoomModule.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/ISelectRoomInteractor.kt rename tabletApp/features/selectRoom/src/commonMain/kotlin/{ => band/effective/office}/tablet/domain/MockBooking.kt (89%) create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/SelectRoomInteractorImpl.kt rename tabletApp/features/selectRoom/src/commonMain/kotlin/{ => band/effective/office}/tablet/domain/model/Booking.kt (59%) create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/model/EventInfo.kt create mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/network/ISelectRoomRepository.kt rename tabletApp/features/selectRoom/src/commonMain/kotlin/{ => band/effective/office}/tablet/ui/selectRoomScreen/RealSelectRoomComponent.kt (50%) rename tabletApp/features/selectRoom/src/commonMain/kotlin/{ => band/effective/office}/tablet/ui/selectRoomScreen/SelectRoomComponent.kt (55%) rename tabletApp/features/selectRoom/src/commonMain/kotlin/{ => band/effective/office}/tablet/ui/selectRoomScreen/SelectRoomScreen.kt (91%) rename tabletApp/features/selectRoom/src/commonMain/kotlin/{ => band/effective/office}/tablet/ui/selectRoomScreen/SelectRoomScreenState.kt (86%) rename tabletApp/features/selectRoom/src/commonMain/kotlin/{ => band/effective/office}/tablet/ui/selectRoomScreen/SelectRoomView.kt (79%) rename tabletApp/features/selectRoom/src/commonMain/kotlin/{ => band/effective/office}/tablet/ui/selectRoomScreen/uiComponents/BookingButtonView.kt (90%) rename tabletApp/features/selectRoom/src/commonMain/kotlin/{ => band/effective/office}/tablet/ui/selectRoomScreen/uiComponents/CrossButtonView.kt (90%) rename tabletApp/features/selectRoom/src/commonMain/kotlin/{ => band/effective/office}/tablet/ui/selectRoomScreen/uiComponents/DateTimeView.kt (89%) rename tabletApp/features/selectRoom/src/commonMain/kotlin/{ => band/effective/office}/tablet/ui/selectRoomScreen/uiComponents/LengthEventView.kt (93%) rename tabletApp/features/selectRoom/src/commonMain/kotlin/{ => band/effective/office}/tablet/ui/selectRoomScreen/uiComponents/OrganizerEventView.kt (90%) rename tabletApp/features/selectRoom/src/commonMain/kotlin/{ => band/effective/office}/tablet/ui/selectRoomScreen/uiComponents/TitleFieldView.kt (92%) rename tabletApp/features/selectRoom/src/commonMain/kotlin/{ => band/effective/office}/tablet/ui/selectRoomScreen/uiComponents/TitleModal.kt (85%) rename tabletApp/features/selectRoom/src/commonMain/kotlin/{ => band/effective/office}/tablet/utils/ConvertCalendarToTime.kt (87%) delete mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/di/SelectRoomModule.kt delete mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/ISelectRoomInteractor.kt delete mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/SelectRoomInteractorImpl.kt delete mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/model/EventInfo.kt delete mode 100644 tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/network/ISelectRoomRepository.kt diff --git a/tabletApp/features/roomInfo/build.gradle.kts b/tabletApp/features/roomInfo/build.gradle.kts index 5129e305..a9d5ca66 100644 --- a/tabletApp/features/roomInfo/build.gradle.kts +++ b/tabletApp/features/roomInfo/build.gradle.kts @@ -41,12 +41,16 @@ kotlin { //Libres implementation(Dependencies.Libres.libresCompose) + + implementation(project(":tabletApp:features:selectRoom")) } } val androidMain by getting { dependencies{ // Koin api(Dependencies.Koin.android) + + implementation(project(":tabletApp:features:selectRoom")) } } } diff --git a/tabletApp/features/roomInfo/src/androidMain/kotlin/band/effective/office/tablet/di/InitRoomInfoKoin.kt b/tabletApp/features/roomInfo/src/androidMain/kotlin/band/effective/office/tablet/di/InitRoomInfoKoin.kt index d18a61df..07f2ebf4 100644 --- a/tabletApp/features/roomInfo/src/androidMain/kotlin/band/effective/office/tablet/di/InitRoomInfoKoin.kt +++ b/tabletApp/features/roomInfo/src/androidMain/kotlin/band/effective/office/tablet/di/InitRoomInfoKoin.kt @@ -3,5 +3,5 @@ package band.effective.office.tablet.di import org.koin.core.context.startKoin fun initRoomInfoKoin() = startKoin { - modules(commonModule) + modules(commonModule, selectRoomModule) } \ No newline at end of file diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/domain/model/EventInfo.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/domain/model/EventInfo.kt index 888fea56..f228f4fa 100644 --- a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/domain/model/EventInfo.kt +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/domain/model/EventInfo.kt @@ -3,7 +3,7 @@ package band.effective.office.tablet.domain.model import java.util.Calendar import java.util.GregorianCalendar -data class EventInfo( +/*data class EventInfo( val startTime: Calendar, val finishTime: Calendar, val organizer: String @@ -15,4 +15,4 @@ data class EventInfo( organizer = "" ) } -} +}*/ diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainComponent.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainComponent.kt index 03297ff7..d44b7123 100644 --- a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainComponent.kt +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainComponent.kt @@ -2,11 +2,13 @@ package band.effective.office.tablet.ui.mainScreen import band.effective.office.tablet.ui.mainScreen.components.bookingRoomComponents.BookingRoomComponent import band.effective.office.tablet.ui.mainScreen.components.mockComponets.MockSettingsComponent +import band.effective.office.tablet.ui.selectRoomScreen.RealSelectRoomComponent import kotlinx.coroutines.flow.StateFlow interface MainComponent { val state: StateFlow val mockSettingsComponent: MockSettingsComponent val bookingRoomComponent: BookingRoomComponent + val selectRoomComponent: RealSelectRoomComponent fun sendEvent(event: MainScreenEvent) } \ No newline at end of file diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainScreen.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainScreen.kt index 1fa780f8..5c261769 100644 --- a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainScreen.kt +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainScreen.kt @@ -11,14 +11,16 @@ import band.effective.office.tablet.ui.mainScreen.components.MainScreenView @Composable fun MainScreen(component: MainComponent) { val state by component.state.collectAsState() - when{ + when { state.isError -> {} state.isLoad -> {} state.isData -> { MainScreenView( room = state.roomInfo, + showBookingModal = state.showBookingModal, mockComponent = component.mockSettingsComponent, - bookingRoomComponent = component.bookingRoomComponent + bookingRoomComponent = component.bookingRoomComponent, + selectRoomComponent = component.selectRoomComponent ) } } diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainScreenEvent.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainScreenEvent.kt index d5e0da17..3a01dde2 100644 --- a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainScreenEvent.kt +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainScreenEvent.kt @@ -1,5 +1,6 @@ package band.effective.office.tablet.ui.mainScreen sealed class MainScreenEvent { - object OnCLick: MainScreenEvent() + object OnBookingCurentRoomRequest: MainScreenEvent() + object OnBookingOtherRoomRequest: MainScreenEvent() } \ No newline at end of file diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainScreenState.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainScreenState.kt index 7371ec82..cfd23191 100644 --- a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainScreenState.kt +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/MainScreenState.kt @@ -8,7 +8,8 @@ data class MainScreenState( val isData: Boolean, val isError: Boolean, val roomInfo: RoomInfo, - val error: String + val error: String, + val showBookingModal: Boolean ) { companion object { val defaultState = @@ -17,7 +18,8 @@ data class MainScreenState( isData = false, isError = false, roomInfo = RoomInfo.defaultValue, - error = "" + error = "", + showBookingModal = false ) } } diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/RealMainComponent.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/RealMainComponent.kt index 98ceaade..b0a9820a 100644 --- a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/RealMainComponent.kt +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/RealMainComponent.kt @@ -1,10 +1,12 @@ package band.effective.office.tablet.ui.mainScreen +import band.effective.office.tablet.domain.MockBooking import band.effective.office.tablet.domain.RoomInteractor import band.effective.office.tablet.ui.mainScreen.components.bookingRoomComponents.BookingRoomComponent import band.effective.office.tablet.ui.mainScreen.components.bookingRoomComponents.RealBookingRoomComponent import band.effective.office.tablet.ui.mainScreen.components.mockComponets.MockSettingsComponent import band.effective.office.tablet.ui.mainScreen.components.mockComponets.RealMockSettingsComponent +import band.effective.office.tablet.ui.selectRoomScreen.RealSelectRoomComponent import com.arkivanov.decompose.ComponentContext import com.arkivanov.decompose.childContext import kotlinx.coroutines.flow.MutableStateFlow @@ -30,9 +32,15 @@ class RealMainComponent( ) override val bookingRoomComponent: BookingRoomComponent = RealBookingRoomComponent( componentContext = childContext(key = "bookingRoom"), - onSelectOtherRoom = { OnSelectOtherRoomRequest() }, + onBookingRoom = { sendEvent(it) }, roomName = "Sirius" ) + override val selectRoomComponent: RealSelectRoomComponent = + RealSelectRoomComponent( + componentContext = childContext(key = "bookingCurrentRoom"), + booking = MockBooking.bookingCheckTime15min, + onCloseRequest = { mutableState.update { it.copy(showBookingModal = false) } } + ) init { updateData() @@ -51,7 +59,11 @@ class RealMainComponent( override fun sendEvent(event: MainScreenEvent) = when (event) { - is MainScreenEvent.OnCLick -> { + is MainScreenEvent.OnBookingCurentRoomRequest -> { + mutableState.update { it.copy(showBookingModal = true) } + } + + is MainScreenEvent.OnBookingOtherRoomRequest -> { OnSelectOtherRoomRequest() } } diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/components/MainScreenView.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/components/MainScreenView.kt index 1c557f3b..c38e2151 100644 --- a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/components/MainScreenView.kt +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/components/MainScreenView.kt @@ -22,30 +22,42 @@ import band.effective.office.tablet.ui.mainScreen.components.bookingRoomComponen import band.effective.office.tablet.ui.mainScreen.components.mockComponets.MockSettingView import band.effective.office.tablet.ui.mainScreen.components.mockComponets.MockSettingsComponent import band.effective.office.tablet.ui.mainScreen.components.roomInfoComponents.RoomInfoComponent +import band.effective.office.tablet.ui.selectRoomScreen.RealSelectRoomComponent +import band.effective.office.tablet.ui.selectRoomScreen.SelectRoomView @RequiresApi(Build.VERSION_CODES.JELLY_BEAN_MR1) @Composable fun MainScreenView( room: RoomInfo, + showBookingModal: Boolean, mockComponent: MockSettingsComponent, - bookingRoomComponent: BookingRoomComponent + bookingRoomComponent: BookingRoomComponent, + selectRoomComponent: RealSelectRoomComponent ) { - /*NOTE(Maksim Mishenko): + Box(modifier = Modifier.fillMaxSize()) { + /*NOTE(Maksim Mishenko): * infoViewWidth is part of the width occupied by roomInfoView * infoViewWidth = infoViewFrame.width / mainScreenFrame.width * where infoViewFrame, mainScreenFrame is frames from figma and all width I get from figma*/ - val infoViewWidth = 627f / 1133f - Row(modifier = Modifier.fillMaxSize().background(color = Color(0xff1E1C1A))) { - RoomInfoComponent( - modifier = Modifier.fillMaxHeight().fillMaxWidth(infoViewWidth), - room = room - ) - Box(modifier = Modifier.fillMaxSize()) { - BookingRoomView( - modifier = Modifier.background(color = Color(0xFF252322)).fillMaxSize().padding(25.dp), - bookingRoomComponent = bookingRoomComponent + val infoViewWidth = 627f / 1133f + Row(modifier = Modifier.fillMaxSize().background(color = Color(0xff1E1C1A))) { + RoomInfoComponent( + modifier = Modifier.fillMaxHeight().fillMaxWidth(infoViewWidth), + room = room ) - MockSettingView(mockComponent) + Box(modifier = Modifier.fillMaxSize()) { + BookingRoomView( + modifier = Modifier.background(color = Color(0xFF252322)).fillMaxSize() + .padding(25.dp), + bookingRoomComponent = bookingRoomComponent + ) + MockSettingView(mockComponent) + } + } + Box(modifier = Modifier.fillMaxSize()) { + if (showBookingModal) + SelectRoomView(component = selectRoomComponent) } } + } \ No newline at end of file diff --git a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/components/bookingRoomComponents/RealBookingRoomComponent.kt b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/components/bookingRoomComponents/RealBookingRoomComponent.kt index 2e77125e..76887142 100644 --- a/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/components/bookingRoomComponents/RealBookingRoomComponent.kt +++ b/tabletApp/features/roomInfo/src/commonMain/kotlin/band/effective/office/tablet/ui/mainScreen/components/bookingRoomComponents/RealBookingRoomComponent.kt @@ -2,6 +2,7 @@ package band.effective.office.tablet.ui.mainScreen.components.bookingRoomCompone import band.effective.office.tablet.domain.RoomInteractor import band.effective.office.tablet.domain.model.EventInfo +import band.effective.office.tablet.ui.mainScreen.MainScreenEvent import com.arkivanov.decompose.ComponentContext import com.arkivanov.decompose.childContext import com.arkivanov.essenty.lifecycle.Lifecycle @@ -22,7 +23,7 @@ import java.util.GregorianCalendar class RealBookingRoomComponent( private val componentContext: ComponentContext, - private val onSelectOtherRoom: () -> Unit, + private val onBookingRoom: (MainScreenEvent) -> Unit, roomName: String ) : ComponentContext by componentContext, BookingRoomComponent, KoinComponent { @@ -53,11 +54,11 @@ class RealBookingRoomComponent( override fun sendEvent(event: BookingRoomViewEvent) { when (event) { is BookingRoomViewEvent.OnBookingCurrentRoom -> { - onSelectOtherRoom() + onBookingRoom(MainScreenEvent.OnBookingCurentRoomRequest) } is BookingRoomViewEvent.OnBookingOtherRoom -> { - onSelectOtherRoom() + onBookingRoom(MainScreenEvent.OnBookingOtherRoomRequest) } } } diff --git a/tabletApp/features/selectRoom/build.gradle.kts b/tabletApp/features/selectRoom/build.gradle.kts index 3f2d3d1c..8c7f4efc 100644 --- a/tabletApp/features/selectRoom/build.gradle.kts +++ b/tabletApp/features/selectRoom/build.gradle.kts @@ -40,6 +40,7 @@ kotlin { //Libres implementation(Dependencies.Libres.libresCompose) + } } diff --git a/tabletApp/features/selectRoom/src/androidMain/kotlin/tablet/di/initSelectRoomKoin.kt b/tabletApp/features/selectRoom/src/androidMain/kotlin/band/effective/office/tablet/di/initSelectRoomKoin.kt similarity index 53% rename from tabletApp/features/selectRoom/src/androidMain/kotlin/tablet/di/initSelectRoomKoin.kt rename to tabletApp/features/selectRoom/src/androidMain/kotlin/band/effective/office/tablet/di/initSelectRoomKoin.kt index f0fca77e..30bfc57f 100644 --- a/tabletApp/features/selectRoom/src/androidMain/kotlin/tablet/di/initSelectRoomKoin.kt +++ b/tabletApp/features/selectRoom/src/androidMain/kotlin/band/effective/office/tablet/di/initSelectRoomKoin.kt @@ -1,5 +1,6 @@ -package tablet.di +package band.effective.office.tablet.di +import band.effective.office.tablet.di.selectRoomModule import org.koin.core.context.startKoin fun initSelectRoomKoin() = startKoin { diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/di/SelectRoomModule.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/di/SelectRoomModule.kt new file mode 100644 index 00000000..a4fda7ef --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/di/SelectRoomModule.kt @@ -0,0 +1,9 @@ +package band.effective.office.tablet.di + +import org.koin.dsl.module +import band.effective.office.tablet.domain.ISelectRoomInteractor +import band.effective.office.tablet.domain.SelectRoomInteractorImpl + +val selectRoomModule = module{ + single { SelectRoomInteractorImpl(get()) } +} diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/ISelectRoomInteractor.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/ISelectRoomInteractor.kt new file mode 100644 index 00000000..16c84fcd --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/ISelectRoomInteractor.kt @@ -0,0 +1,8 @@ +package band.effective.office.tablet.domain + +import band.effective.office.tablet.domain.model.Booking +import band.effective.office.tablet.domain.model.EventInfo + +interface ISelectRoomInteractor { + suspend fun bookRoom(booking: Booking) +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/MockBooking.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/MockBooking.kt similarity index 89% rename from tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/MockBooking.kt rename to tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/MockBooking.kt index 6ad5aff4..6a073923 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/MockBooking.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/MockBooking.kt @@ -1,7 +1,7 @@ -package tablet.domain +package band.effective.office.tablet.domain -import tablet.domain.model.Booking -import tablet.domain.model.EventInfo +import band.effective.office.tablet.domain.model.Booking +import band.effective.office.tablet.domain.model.EventInfo import java.util.Calendar object MockBooking { diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/SelectRoomInteractorImpl.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/SelectRoomInteractorImpl.kt new file mode 100644 index 00000000..e20e7048 --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/SelectRoomInteractorImpl.kt @@ -0,0 +1,10 @@ +package band.effective.office.tablet.domain + +import band.effective.office.tablet.domain.model.Booking +import band.effective.office.tablet.domain.model.EventInfo +import band.effective.office.tablet.network.ISelectRoomRepository + +class SelectRoomInteractorImpl(private val repository: ISelectRoomRepository): + ISelectRoomInteractor { + override suspend fun bookRoom(booking: Booking) = repository.bookRoom(booking) +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/model/Booking.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/model/Booking.kt similarity index 59% rename from tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/model/Booking.kt rename to tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/model/Booking.kt index 3a81e0df..91345394 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/model/Booking.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/model/Booking.kt @@ -1,4 +1,4 @@ -package tablet.domain.model +package band.effective.office.tablet.domain.model data class Booking( val nameRoom: String, diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/model/EventInfo.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/model/EventInfo.kt new file mode 100644 index 00000000..65fbcc91 --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/domain/model/EventInfo.kt @@ -0,0 +1,18 @@ +package band.effective.office.tablet.domain.model + +import java.util.Calendar +import java.util.GregorianCalendar + +data class EventInfo( + val startTime: Calendar, + val finishTime: Calendar, + val organizer: String +){ + companion object{ + val emptyEvent = EventInfo( + startTime = GregorianCalendar(), + finishTime = GregorianCalendar(), + organizer = "" + ) + } +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/network/ISelectRoomRepository.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/network/ISelectRoomRepository.kt new file mode 100644 index 00000000..865247fc --- /dev/null +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/network/ISelectRoomRepository.kt @@ -0,0 +1,8 @@ +package band.effective.office.tablet.network + +import band.effective.office.tablet.domain.model.Booking +import band.effective.office.tablet.domain.model.EventInfo + +interface ISelectRoomRepository { + suspend fun bookRoom(booking: Booking) +} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/RealSelectRoomComponent.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/RealSelectRoomComponent.kt similarity index 50% rename from tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/RealSelectRoomComponent.kt rename to tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/RealSelectRoomComponent.kt index 12451cc4..d9a6c8db 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/RealSelectRoomComponent.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/RealSelectRoomComponent.kt @@ -1,16 +1,18 @@ -package tablet.ui.selectRoomScreen +package band.effective.office.tablet.ui.selectRoomScreen import com.arkivanov.decompose.ComponentContext import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.asStateFlow import org.koin.core.component.KoinComponent import org.koin.core.component.inject -import tablet.domain.ISelectRoomInteractor -import tablet.domain.model.Booking +import band.effective.office.tablet.domain.ISelectRoomInteractor +import band.effective.office.tablet.domain.model.Booking -class RealSelectRoomComponent(componentContext: ComponentContext, - val booking: Booking) - : ComponentContext by componentContext, SelectRoomComponent, KoinComponent{ +class RealSelectRoomComponent( + componentContext: ComponentContext, + val booking: Booking, + private val onCloseRequest: () -> Unit +) : ComponentContext by componentContext, SelectRoomComponent, KoinComponent { private val interactor: ISelectRoomInteractor by inject() private var _state = MutableStateFlow(SelectRoomScreenState.defaultState) @@ -20,4 +22,8 @@ class RealSelectRoomComponent(componentContext: ComponentContext, override fun bookRoom() { } + fun close() { + onCloseRequest() + } + } \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomComponent.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/SelectRoomComponent.kt similarity index 55% rename from tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomComponent.kt rename to tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/SelectRoomComponent.kt index 498c251b..a7e2ba39 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomComponent.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/SelectRoomComponent.kt @@ -1,7 +1,7 @@ -package tablet.ui.selectRoomScreen +package band.effective.office.tablet.ui.selectRoomScreen import kotlinx.coroutines.flow.StateFlow -import tablet.domain.model.Booking +import band.effective.office.tablet.domain.model.Booking interface SelectRoomComponent { val state: StateFlow diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreen.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/SelectRoomScreen.kt similarity index 91% rename from tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreen.kt rename to tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/SelectRoomScreen.kt index b1bed1ea..5967840e 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreen.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/SelectRoomScreen.kt @@ -1,4 +1,4 @@ -package tablet.ui.selectRoomScreen +package band.effective.office.tablet.ui.selectRoomScreen import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreenState.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/SelectRoomScreenState.kt similarity index 86% rename from tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreenState.kt rename to tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/SelectRoomScreenState.kt index a0dc436d..9a09fb5f 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomScreenState.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/SelectRoomScreenState.kt @@ -1,4 +1,4 @@ -package tablet.ui.selectRoomScreen +package band.effective.office.tablet.ui.selectRoomScreen data class SelectRoomScreenState( val isLoad: Boolean, diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/SelectRoomView.kt similarity index 79% rename from tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomView.kt rename to tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/SelectRoomView.kt index c3b21f2a..6003605e 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/SelectRoomView.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/SelectRoomView.kt @@ -1,4 +1,4 @@ -package tablet.ui.selectRoomScreen +package band.effective.office.tablet.ui.selectRoomScreen import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement @@ -23,13 +23,13 @@ import androidx.compose.ui.graphics.Color import androidx.compose.ui.unit.dp import androidx.compose.ui.window.Dialog import band.effective.office.tablet.features.selectRoom.MainRes -import tablet.ui.selectRoomScreen.uiComponents.BookingButtonView -import tablet.ui.selectRoomScreen.uiComponents.CrossButtonView -import tablet.ui.selectRoomScreen.uiComponents.DateTimeView -import tablet.ui.selectRoomScreen.uiComponents.LengthEventView -import tablet.ui.selectRoomScreen.uiComponents.OrganizerEventView -import tablet.ui.selectRoomScreen.uiComponents.Title -import tablet.ui.selectRoomScreen.uiComponents.TitleFieldView +import band.effective.office.tablet.ui.selectRoomScreen.uiComponents.BookingButtonView +import band.effective.office.tablet.ui.selectRoomScreen.uiComponents.CrossButtonView +import band.effective.office.tablet.ui.selectRoomScreen.uiComponents.DateTimeView +import band.effective.office.tablet.ui.selectRoomScreen.uiComponents.LengthEventView +import band.effective.office.tablet.ui.selectRoomScreen.uiComponents.OrganizerEventView +import band.effective.office.tablet.ui.selectRoomScreen.uiComponents.Title +import band.effective.office.tablet.ui.selectRoomScreen.uiComponents.TitleFieldView @Composable fun CheckButton(component: RealSelectRoomComponent) { @@ -42,24 +42,21 @@ fun CheckButton(component: RealSelectRoomComponent) { ) } - if(showDialog.value){ - SelectRoomView(component, showDialog) + if (showDialog.value) { + SelectRoomView(component) } } @Composable fun SelectRoomView( - component: RealSelectRoomComponent, - showDialog: MutableState + component: RealSelectRoomComponent ) { - // val showDialog = remember { mutableStateOf(true) } + // val showDialog = remember { mutableStateOf(true) } val modifier = Modifier.background(Color(0xFF3A3736)) val shape = RoundedCornerShape(16) - if (!showDialog.value) return - Dialog( - onDismissRequest = { showDialog.value = false } + onDismissRequest = { component.close() } ) { Box( @@ -76,7 +73,7 @@ fun SelectRoomView( Spacer(modifier = Modifier.height(30.dp)) CrossButtonView( Modifier.width(575.dp), - onDismissRequest = { showDialog.value = false } + onDismissRequest = { component.close() } ) Title(component) Spacer(modifier = Modifier.height(24.dp)) @@ -106,7 +103,11 @@ fun SelectRoomView( } @Composable -fun RowInfoLengthAndOrganizer(modifier: Modifier, shape: RoundedCornerShape, component: RealSelectRoomComponent){ +fun RowInfoLengthAndOrganizer( + modifier: Modifier, + shape: RoundedCornerShape, + component: RealSelectRoomComponent +) { Row { Column(verticalArrangement = Arrangement.spacedBy(12.dp)) { TitleFieldView( diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/BookingButtonView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/BookingButtonView.kt similarity index 90% rename from tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/BookingButtonView.kt rename to tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/BookingButtonView.kt index 3613b943..b82bbb7b 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/BookingButtonView.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/BookingButtonView.kt @@ -1,4 +1,4 @@ -package tablet.ui.selectRoomScreen.uiComponents +package band.effective.office.tablet.ui.selectRoomScreen.uiComponents import androidx.compose.foundation.layout.Box import androidx.compose.foundation.shape.RoundedCornerShape @@ -15,8 +15,8 @@ import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.sp import band.effective.office.tablet.features.selectRoom.MainRes -import tablet.domain.model.Booking -import tablet.utils.time24 +import band.effective.office.tablet.domain.model.Booking +import band.effective.office.tablet.utils.time24 @Composable fun BookingButtonView(modifier: Modifier, color: Color, shape: RoundedCornerShape, booking: Booking) { diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/CrossButtonView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/CrossButtonView.kt similarity index 90% rename from tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/CrossButtonView.kt rename to tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/CrossButtonView.kt index d1dfc7e0..ab21a65e 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/CrossButtonView.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/CrossButtonView.kt @@ -1,4 +1,4 @@ -package tablet.ui.selectRoomScreen.uiComponents +package band.effective.office.tablet.ui.selectRoomScreen.uiComponents import androidx.compose.foundation.background import androidx.compose.material.Icon @@ -14,7 +14,7 @@ import androidx.compose.ui.graphics.vector.ImageVector import androidx.compose.ui.res.vectorResource import androidx.compose.ui.unit.dp import band.effective.office.tablet.features.selectRoom.MainRes -import tablet.domain.model.Booking +import band.effective.office.tablet.domain.model.Booking @Composable fun CrossButtonView(modifier: Modifier, onDismissRequest:() -> Unit) { diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/DateTimeView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/DateTimeView.kt similarity index 89% rename from tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/DateTimeView.kt rename to tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/DateTimeView.kt index 83140c52..4cf008c1 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/DateTimeView.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/DateTimeView.kt @@ -1,4 +1,4 @@ -package tablet.ui.selectRoomScreen.uiComponents +package band.effective.office.tablet.ui.selectRoomScreen.uiComponents import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Row @@ -16,9 +16,9 @@ import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import band.effective.office.tablet.features.selectRoom.MainRes -import tablet.domain.model.Booking -import tablet.utils.date -import tablet.utils.time24 +import band.effective.office.tablet.domain.model.Booking +import band.effective.office.tablet.utils.date +import band.effective.office.tablet.utils.time24 @Composable fun DateTimeView(modifier: Modifier, shape: RoundedCornerShape, booking: Booking) { diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/LengthEventView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/LengthEventView.kt similarity index 93% rename from tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/LengthEventView.kt rename to tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/LengthEventView.kt index d55125c8..616aaf6f 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/LengthEventView.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/LengthEventView.kt @@ -1,4 +1,4 @@ -package tablet.ui.selectRoomScreen.uiComponents +package band.effective.office.tablet.ui.selectRoomScreen.uiComponents import androidx.compose.foundation.layout.Box import androidx.compose.foundation.shape.RoundedCornerShape @@ -13,7 +13,7 @@ import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.sp import band.effective.office.tablet.features.selectRoom.MainRes -import tablet.domain.model.Booking +import band.effective.office.tablet.domain.model.Booking import java.util.Calendar @Composable diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/OrganizerEventView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/OrganizerEventView.kt similarity index 90% rename from tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/OrganizerEventView.kt rename to tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/OrganizerEventView.kt index fe8ecb6b..a2585dd7 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/OrganizerEventView.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/OrganizerEventView.kt @@ -1,4 +1,4 @@ -package tablet.ui.selectRoomScreen.uiComponents +package band.effective.office.tablet.ui.selectRoomScreen.uiComponents import androidx.compose.foundation.layout.Box import androidx.compose.foundation.shape.RoundedCornerShape @@ -13,7 +13,7 @@ import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.sp -import tablet.domain.model.Booking +import band.effective.office.tablet.domain.model.Booking @Composable fun OrganizerEventView(modifier: Modifier, shape: RoundedCornerShape, booking: Booking) { diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/TitleFieldView.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/TitleFieldView.kt similarity index 92% rename from tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/TitleFieldView.kt rename to tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/TitleFieldView.kt index af465560..7a22a571 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/TitleFieldView.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/TitleFieldView.kt @@ -1,4 +1,4 @@ -package tablet.ui.selectRoomScreen.uiComponents +package band.effective.office.tablet.ui.selectRoomScreen.uiComponents import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.padding diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/TitleModal.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/TitleModal.kt similarity index 85% rename from tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/TitleModal.kt rename to tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/TitleModal.kt index ba1f0ea3..a9aa93da 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/ui/selectRoomScreen/uiComponents/TitleModal.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/ui/selectRoomScreen/uiComponents/TitleModal.kt @@ -1,4 +1,4 @@ -package tablet.ui.selectRoomScreen.uiComponents +package band.effective.office.tablet.ui.selectRoomScreen.uiComponents import androidx.compose.foundation.layout.width import androidx.compose.material.Text @@ -11,7 +11,7 @@ import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import band.effective.office.tablet.features.selectRoom.MainRes -import tablet.ui.selectRoomScreen.RealSelectRoomComponent +import band.effective.office.tablet.ui.selectRoomScreen.RealSelectRoomComponent @Composable fun Title(component: RealSelectRoomComponent){ diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/utils/ConvertCalendarToTime.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/utils/ConvertCalendarToTime.kt similarity index 87% rename from tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/utils/ConvertCalendarToTime.kt rename to tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/utils/ConvertCalendarToTime.kt index 0879e1b3..22157576 100644 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/utils/ConvertCalendarToTime.kt +++ b/tabletApp/features/selectRoom/src/commonMain/kotlin/band/effective/office/tablet/utils/ConvertCalendarToTime.kt @@ -1,4 +1,4 @@ -package tablet.utils +package band.effective.office.tablet.utils import java.text.SimpleDateFormat import java.util.Calendar diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/di/SelectRoomModule.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/di/SelectRoomModule.kt deleted file mode 100644 index 32efc178..00000000 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/di/SelectRoomModule.kt +++ /dev/null @@ -1,9 +0,0 @@ -package tablet.di - -import org.koin.dsl.module -import tablet.domain.ISelectRoomInteractor -import tablet.domain.SelectRoomInteractorImpl - -val selectRoomModule = module{ - single { SelectRoomInteractorImpl(get()) } -} diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/ISelectRoomInteractor.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/ISelectRoomInteractor.kt deleted file mode 100644 index 22d5433d..00000000 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/ISelectRoomInteractor.kt +++ /dev/null @@ -1,8 +0,0 @@ -package tablet.domain - -import tablet.domain.model.Booking -import tablet.domain.model.EventInfo - -interface ISelectRoomInteractor { - suspend fun bookRoom(booking: Booking) -} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/SelectRoomInteractorImpl.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/SelectRoomInteractorImpl.kt deleted file mode 100644 index e7b69120..00000000 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/SelectRoomInteractorImpl.kt +++ /dev/null @@ -1,9 +0,0 @@ -package tablet.domain - -import tablet.domain.model.Booking -import tablet.domain.model.EventInfo -import tablet.network.ISelectRoomRepository - -class SelectRoomInteractorImpl(private val repository: ISelectRoomRepository): ISelectRoomInteractor { - override suspend fun bookRoom(booking: Booking) = repository.bookRoom(booking) -} \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/model/EventInfo.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/model/EventInfo.kt deleted file mode 100644 index c1c4627d..00000000 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/domain/model/EventInfo.kt +++ /dev/null @@ -1,9 +0,0 @@ -package tablet.domain.model - -import java.util.Calendar - -data class EventInfo( - val startTime: Calendar, - val finishTime: Calendar, - val organizer: String -) \ No newline at end of file diff --git a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/network/ISelectRoomRepository.kt b/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/network/ISelectRoomRepository.kt deleted file mode 100644 index eb2dea3a..00000000 --- a/tabletApp/features/selectRoom/src/commonMain/kotlin/tablet/network/ISelectRoomRepository.kt +++ /dev/null @@ -1,8 +0,0 @@ -package tablet.network - -import tablet.domain.model.Booking -import tablet.domain.model.EventInfo - -interface ISelectRoomRepository { - suspend fun bookRoom(booking: Booking) -} \ No newline at end of file diff --git a/tabletApp/src/androidMain/kotlin/band/effective/office/tablet/MainActivity.kt b/tabletApp/src/androidMain/kotlin/band/effective/office/tablet/MainActivity.kt index db3f3f99..63dfbb14 100644 --- a/tabletApp/src/androidMain/kotlin/band/effective/office/tablet/MainActivity.kt +++ b/tabletApp/src/androidMain/kotlin/band/effective/office/tablet/MainActivity.kt @@ -5,14 +5,13 @@ import androidx.appcompat.app.AppCompatActivity import androidx.activity.compose.setContent import band.effective.office.tablet.di.initRoomInfoKoin import com.arkivanov.decompose.defaultComponentContext -import tablet.di.initSelectRoomKoin +import band.effective.office.tablet.di.initSelectRoomKoin class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) initRoomInfoKoin() setContent { - initSelectRoomKoin() App(defaultComponentContext()) } } diff --git a/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/Root.kt b/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/Root.kt index d8d20b5f..31b22254 100644 --- a/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/Root.kt +++ b/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/Root.kt @@ -4,7 +4,7 @@ import androidx.compose.runtime.Composable import band.effective.office.tablet.ui.freeNegotiationsScreen.FreeNegotiationsScreen import band.effective.office.tablet.ui.mainScreen.MainScreen import com.arkivanov.decompose.extensions.compose.jetbrains.stack.Children -import tablet.ui.selectRoomScreen.SelectRoomScreen +import band.effective.office.tablet.ui.selectRoomScreen.SelectRoomScreen @Composable fun Root(component: RootComponent) { diff --git a/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt b/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt index cae223f0..eb968fed 100644 --- a/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt +++ b/tabletApp/src/commonMain/kotlin/band/effective/office/tablet/ui/root/RootComponent.kt @@ -8,8 +8,6 @@ import com.arkivanov.decompose.router.stack.childStack import com.arkivanov.decompose.router.stack.push import com.arkivanov.essenty.parcelable.Parcelable import kotlinx.android.parcel.Parcelize -import tablet.domain.MockBooking -import tablet.ui.selectRoomScreen.RealSelectRoomComponent class RootComponent(componentContext: ComponentContext) : ComponentContext by componentContext { @@ -29,7 +27,7 @@ class RootComponent(componentContext: ComponentContext) : ComponentContext by co is Config.Main -> { Child.MainChild(RealMainComponent( - componentContext = componentContext, + componentContext = componentContext, OnSelectOtherRoomRequest = { navigation.push(Config.SelectRoom) } -- GitLab