arcane-agents 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +528 -0
- package/assets/characters/README.md +114 -0
- package/assets/characters/assassin-shadow/animations/walk/east/0.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/east/1.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/east/2.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/east/3.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/east/4.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/east/5.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/east/6.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/east/7.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/north/0.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/north/1.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/north/2.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/north/3.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/north/4.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/north/5.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/north/6.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/north/7.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/south/0.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/south/1.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/south/2.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/south/3.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/south/4.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/south/5.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/south/6.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/south/7.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/west/0.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/west/1.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/west/2.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/west/3.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/west/4.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/west/5.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/west/6.png +0 -0
- package/assets/characters/assassin-shadow/animations/walk/west/7.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/0.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/1.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/10.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/11.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/12.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/13.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/14.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/15.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/2.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/3.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/4.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/5.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/6.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/7.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/8.png +0 -0
- package/assets/characters/assassin-shadow/animations/working/9.png +0 -0
- package/assets/characters/assassin-shadow/rotations/east.png +0 -0
- package/assets/characters/assassin-shadow/rotations/north.png +0 -0
- package/assets/characters/assassin-shadow/rotations/south.png +0 -0
- package/assets/characters/assassin-shadow/rotations/west.png +0 -0
- package/assets/characters/assassin-shadow/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/assassin-shadow/voice-lines/attention.mp3 +0 -0
- package/assets/characters/assassin-shadow/voice-lines/complete.mp3 +0 -0
- package/assets/characters/assassin-shadow/voice-lines/death.mp3 +0 -0
- package/assets/characters/assassin-shadow/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/assassin-shadow/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/assassin-shadow/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/assassin-shadow/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/assassin-shadow/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/assassin-shadow/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/barbarian-wild/animations/walk/east/0.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/east/1.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/east/2.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/east/3.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/east/4.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/east/5.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/east/6.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/east/7.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/north/0.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/north/1.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/north/2.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/north/3.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/north/4.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/north/5.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/north/6.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/north/7.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/south/0.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/south/1.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/south/2.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/south/3.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/south/4.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/south/5.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/south/6.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/south/7.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/west/0.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/west/1.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/west/2.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/west/3.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/west/4.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/west/5.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/west/6.png +0 -0
- package/assets/characters/barbarian-wild/animations/walk/west/7.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/0.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/1.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/10.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/11.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/12.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/13.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/14.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/15.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/2.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/3.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/4.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/5.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/6.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/7.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/8.png +0 -0
- package/assets/characters/barbarian-wild/animations/working/9.png +0 -0
- package/assets/characters/barbarian-wild/rotations/east.png +0 -0
- package/assets/characters/barbarian-wild/rotations/north.png +0 -0
- package/assets/characters/barbarian-wild/rotations/south.png +0 -0
- package/assets/characters/barbarian-wild/rotations/west.png +0 -0
- package/assets/characters/barbarian-wild/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/barbarian-wild/voice-lines/attention.mp3 +0 -0
- package/assets/characters/barbarian-wild/voice-lines/complete.mp3 +0 -0
- package/assets/characters/barbarian-wild/voice-lines/death.mp3 +0 -0
- package/assets/characters/barbarian-wild/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/barbarian-wild/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/barbarian-wild/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/barbarian-wild/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/barbarian-wild/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/barbarian-wild/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/east/0.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/east/1.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/east/2.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/east/3.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/east/4.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/east/5.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/east/6.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/east/7.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/north/0.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/north/1.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/north/2.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/north/3.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/north/4.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/north/5.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/north/6.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/north/7.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/south/0.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/south/1.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/south/2.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/south/3.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/south/4.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/south/5.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/south/6.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/south/7.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/west/0.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/west/1.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/west/2.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/west/3.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/west/4.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/west/5.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/west/6.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/walk/west/7.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/0.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/1.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/10.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/11.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/12.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/13.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/14.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/15.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/2.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/3.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/4.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/5.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/6.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/7.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/8.png +0 -0
- package/assets/characters/blood-elf-spellarcher/animations/working/9.png +0 -0
- package/assets/characters/blood-elf-spellarcher/rotations/east.png +0 -0
- package/assets/characters/blood-elf-spellarcher/rotations/north.png +0 -0
- package/assets/characters/blood-elf-spellarcher/rotations/south.png +0 -0
- package/assets/characters/blood-elf-spellarcher/rotations/west.png +0 -0
- package/assets/characters/blood-elf-spellarcher/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/blood-elf-spellarcher/voice-lines/attention.mp3 +0 -0
- package/assets/characters/blood-elf-spellarcher/voice-lines/complete.mp3 +0 -0
- package/assets/characters/blood-elf-spellarcher/voice-lines/death.mp3 +0 -0
- package/assets/characters/blood-elf-spellarcher/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/blood-elf-spellarcher/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/blood-elf-spellarcher/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/blood-elf-spellarcher/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/blood-elf-spellarcher/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/blood-elf-spellarcher/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/chronomancer/animations/walk/east/0.png +0 -0
- package/assets/characters/chronomancer/animations/walk/east/1.png +0 -0
- package/assets/characters/chronomancer/animations/walk/east/2.png +0 -0
- package/assets/characters/chronomancer/animations/walk/east/3.png +0 -0
- package/assets/characters/chronomancer/animations/walk/east/4.png +0 -0
- package/assets/characters/chronomancer/animations/walk/east/5.png +0 -0
- package/assets/characters/chronomancer/animations/walk/east/6.png +0 -0
- package/assets/characters/chronomancer/animations/walk/east/7.png +0 -0
- package/assets/characters/chronomancer/animations/walk/north/0.png +0 -0
- package/assets/characters/chronomancer/animations/walk/north/1.png +0 -0
- package/assets/characters/chronomancer/animations/walk/north/2.png +0 -0
- package/assets/characters/chronomancer/animations/walk/north/3.png +0 -0
- package/assets/characters/chronomancer/animations/walk/north/4.png +0 -0
- package/assets/characters/chronomancer/animations/walk/north/5.png +0 -0
- package/assets/characters/chronomancer/animations/walk/north/6.png +0 -0
- package/assets/characters/chronomancer/animations/walk/north/7.png +0 -0
- package/assets/characters/chronomancer/animations/walk/south/0.png +0 -0
- package/assets/characters/chronomancer/animations/walk/south/1.png +0 -0
- package/assets/characters/chronomancer/animations/walk/south/2.png +0 -0
- package/assets/characters/chronomancer/animations/walk/south/3.png +0 -0
- package/assets/characters/chronomancer/animations/walk/south/4.png +0 -0
- package/assets/characters/chronomancer/animations/walk/south/5.png +0 -0
- package/assets/characters/chronomancer/animations/walk/south/6.png +0 -0
- package/assets/characters/chronomancer/animations/walk/south/7.png +0 -0
- package/assets/characters/chronomancer/animations/walk/west/0.png +0 -0
- package/assets/characters/chronomancer/animations/walk/west/1.png +0 -0
- package/assets/characters/chronomancer/animations/walk/west/2.png +0 -0
- package/assets/characters/chronomancer/animations/walk/west/3.png +0 -0
- package/assets/characters/chronomancer/animations/walk/west/4.png +0 -0
- package/assets/characters/chronomancer/animations/walk/west/5.png +0 -0
- package/assets/characters/chronomancer/animations/walk/west/6.png +0 -0
- package/assets/characters/chronomancer/animations/walk/west/7.png +0 -0
- package/assets/characters/chronomancer/animations/working/0.png +0 -0
- package/assets/characters/chronomancer/animations/working/1.png +0 -0
- package/assets/characters/chronomancer/animations/working/10.png +0 -0
- package/assets/characters/chronomancer/animations/working/11.png +0 -0
- package/assets/characters/chronomancer/animations/working/12.png +0 -0
- package/assets/characters/chronomancer/animations/working/13.png +0 -0
- package/assets/characters/chronomancer/animations/working/14.png +0 -0
- package/assets/characters/chronomancer/animations/working/15.png +0 -0
- package/assets/characters/chronomancer/animations/working/2.png +0 -0
- package/assets/characters/chronomancer/animations/working/3.png +0 -0
- package/assets/characters/chronomancer/animations/working/4.png +0 -0
- package/assets/characters/chronomancer/animations/working/5.png +0 -0
- package/assets/characters/chronomancer/animations/working/6.png +0 -0
- package/assets/characters/chronomancer/animations/working/7.png +0 -0
- package/assets/characters/chronomancer/animations/working/8.png +0 -0
- package/assets/characters/chronomancer/animations/working/9.png +0 -0
- package/assets/characters/chronomancer/rotations/east.png +0 -0
- package/assets/characters/chronomancer/rotations/north.png +0 -0
- package/assets/characters/chronomancer/rotations/south.png +0 -0
- package/assets/characters/chronomancer/rotations/west.png +0 -0
- package/assets/characters/chronomancer/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/chronomancer/voice-lines/attention.mp3 +0 -0
- package/assets/characters/chronomancer/voice-lines/complete.mp3 +0 -0
- package/assets/characters/chronomancer/voice-lines/death.mp3 +0 -0
- package/assets/characters/chronomancer/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/chronomancer/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/chronomancer/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/chronomancer/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/chronomancer/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/chronomancer/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/crystal-mage/animations/walk/east/0.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/east/1.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/east/2.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/east/3.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/east/4.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/east/5.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/east/6.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/east/7.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/north/0.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/north/1.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/north/2.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/north/3.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/north/4.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/north/5.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/north/6.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/north/7.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/south/0.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/south/1.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/south/2.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/south/3.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/south/4.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/south/5.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/south/6.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/south/7.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/west/0.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/west/1.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/west/2.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/west/3.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/west/4.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/west/5.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/west/6.png +0 -0
- package/assets/characters/crystal-mage/animations/walk/west/7.png +0 -0
- package/assets/characters/crystal-mage/animations/working/0.png +0 -0
- package/assets/characters/crystal-mage/animations/working/1.png +0 -0
- package/assets/characters/crystal-mage/animations/working/10.png +0 -0
- package/assets/characters/crystal-mage/animations/working/11.png +0 -0
- package/assets/characters/crystal-mage/animations/working/12.png +0 -0
- package/assets/characters/crystal-mage/animations/working/13.png +0 -0
- package/assets/characters/crystal-mage/animations/working/14.png +0 -0
- package/assets/characters/crystal-mage/animations/working/15.png +0 -0
- package/assets/characters/crystal-mage/animations/working/2.png +0 -0
- package/assets/characters/crystal-mage/animations/working/3.png +0 -0
- package/assets/characters/crystal-mage/animations/working/4.png +0 -0
- package/assets/characters/crystal-mage/animations/working/5.png +0 -0
- package/assets/characters/crystal-mage/animations/working/6.png +0 -0
- package/assets/characters/crystal-mage/animations/working/7.png +0 -0
- package/assets/characters/crystal-mage/animations/working/8.png +0 -0
- package/assets/characters/crystal-mage/animations/working/9.png +0 -0
- package/assets/characters/crystal-mage/rotations/east.png +0 -0
- package/assets/characters/crystal-mage/rotations/north.png +0 -0
- package/assets/characters/crystal-mage/rotations/south.png +0 -0
- package/assets/characters/crystal-mage/rotations/west.png +0 -0
- package/assets/characters/crystal-mage/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/crystal-mage/voice-lines/attention.mp3 +0 -0
- package/assets/characters/crystal-mage/voice-lines/complete.mp3 +0 -0
- package/assets/characters/crystal-mage/voice-lines/death.mp3 +0 -0
- package/assets/characters/crystal-mage/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/crystal-mage/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/crystal-mage/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/crystal-mage/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/crystal-mage/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/crystal-mage/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/east/0.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/east/1.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/east/2.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/east/3.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/east/4.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/east/5.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/east/6.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/east/7.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/north/0.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/north/1.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/north/2.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/north/3.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/north/4.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/north/5.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/north/6.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/north/7.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/south/0.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/south/1.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/south/2.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/south/3.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/south/4.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/south/5.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/south/6.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/south/7.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/west/0.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/west/1.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/west/2.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/west/3.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/west/4.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/west/5.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/west/6.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/walk/west/7.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/0.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/1.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/10.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/11.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/12.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/13.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/14.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/15.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/2.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/3.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/4.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/5.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/6.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/7.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/8.png +0 -0
- package/assets/characters/dwarf-warrior-short/animations/working/9.png +0 -0
- package/assets/characters/dwarf-warrior-short/rotations/east.png +0 -0
- package/assets/characters/dwarf-warrior-short/rotations/north.png +0 -0
- package/assets/characters/dwarf-warrior-short/rotations/south.png +0 -0
- package/assets/characters/dwarf-warrior-short/rotations/west.png +0 -0
- package/assets/characters/dwarf-warrior-short/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/dwarf-warrior-short/voice-lines/attention.mp3 +0 -0
- package/assets/characters/dwarf-warrior-short/voice-lines/complete.mp3 +0 -0
- package/assets/characters/dwarf-warrior-short/voice-lines/death.mp3 +0 -0
- package/assets/characters/dwarf-warrior-short/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/dwarf-warrior-short/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/dwarf-warrior-short/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/dwarf-warrior-short/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/dwarf-warrior-short/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/dwarf-warrior-short/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/elder-wizard/animations/walk/east/0.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/east/1.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/east/2.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/east/3.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/east/4.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/east/5.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/east/6.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/east/7.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/north/0.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/north/1.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/north/2.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/north/3.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/north/4.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/north/5.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/north/6.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/north/7.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/south/0.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/south/1.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/south/2.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/south/3.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/south/4.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/south/5.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/south/6.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/south/7.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/west/0.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/west/1.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/west/2.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/west/3.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/west/4.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/west/5.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/west/6.png +0 -0
- package/assets/characters/elder-wizard/animations/walk/west/7.png +0 -0
- package/assets/characters/elder-wizard/animations/working/0.png +0 -0
- package/assets/characters/elder-wizard/animations/working/1.png +0 -0
- package/assets/characters/elder-wizard/animations/working/10.png +0 -0
- package/assets/characters/elder-wizard/animations/working/11.png +0 -0
- package/assets/characters/elder-wizard/animations/working/12.png +0 -0
- package/assets/characters/elder-wizard/animations/working/13.png +0 -0
- package/assets/characters/elder-wizard/animations/working/14.png +0 -0
- package/assets/characters/elder-wizard/animations/working/15.png +0 -0
- package/assets/characters/elder-wizard/animations/working/2.png +0 -0
- package/assets/characters/elder-wizard/animations/working/3.png +0 -0
- package/assets/characters/elder-wizard/animations/working/4.png +0 -0
- package/assets/characters/elder-wizard/animations/working/5.png +0 -0
- package/assets/characters/elder-wizard/animations/working/6.png +0 -0
- package/assets/characters/elder-wizard/animations/working/7.png +0 -0
- package/assets/characters/elder-wizard/animations/working/8.png +0 -0
- package/assets/characters/elder-wizard/animations/working/9.png +0 -0
- package/assets/characters/elder-wizard/rotations/east.png +0 -0
- package/assets/characters/elder-wizard/rotations/north.png +0 -0
- package/assets/characters/elder-wizard/rotations/south.png +0 -0
- package/assets/characters/elder-wizard/rotations/west.png +0 -0
- package/assets/characters/elder-wizard/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/elder-wizard/voice-lines/attention.mp3 +0 -0
- package/assets/characters/elder-wizard/voice-lines/complete.mp3 +0 -0
- package/assets/characters/elder-wizard/voice-lines/death.mp3 +0 -0
- package/assets/characters/elder-wizard/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/elder-wizard/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/elder-wizard/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/elder-wizard/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/elder-wizard/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/elder-wizard/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/gothic-witch/animations/walk/east/0.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/east/1.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/east/2.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/east/3.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/east/4.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/east/5.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/east/6.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/east/7.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/north/0.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/north/1.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/north/2.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/north/3.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/north/4.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/north/5.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/north/6.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/north/7.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/south/0.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/south/1.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/south/2.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/south/3.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/south/4.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/south/5.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/south/6.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/south/7.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/west/0.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/west/1.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/west/2.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/west/3.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/west/4.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/west/5.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/west/6.png +0 -0
- package/assets/characters/gothic-witch/animations/walk/west/7.png +0 -0
- package/assets/characters/gothic-witch/animations/working/0.png +0 -0
- package/assets/characters/gothic-witch/animations/working/1.png +0 -0
- package/assets/characters/gothic-witch/animations/working/10.png +0 -0
- package/assets/characters/gothic-witch/animations/working/11.png +0 -0
- package/assets/characters/gothic-witch/animations/working/12.png +0 -0
- package/assets/characters/gothic-witch/animations/working/13.png +0 -0
- package/assets/characters/gothic-witch/animations/working/14.png +0 -0
- package/assets/characters/gothic-witch/animations/working/15.png +0 -0
- package/assets/characters/gothic-witch/animations/working/2.png +0 -0
- package/assets/characters/gothic-witch/animations/working/3.png +0 -0
- package/assets/characters/gothic-witch/animations/working/4.png +0 -0
- package/assets/characters/gothic-witch/animations/working/5.png +0 -0
- package/assets/characters/gothic-witch/animations/working/6.png +0 -0
- package/assets/characters/gothic-witch/animations/working/7.png +0 -0
- package/assets/characters/gothic-witch/animations/working/8.png +0 -0
- package/assets/characters/gothic-witch/animations/working/9.png +0 -0
- package/assets/characters/gothic-witch/rotations/east.png +0 -0
- package/assets/characters/gothic-witch/rotations/north.png +0 -0
- package/assets/characters/gothic-witch/rotations/south.png +0 -0
- package/assets/characters/gothic-witch/rotations/west.png +0 -0
- package/assets/characters/gothic-witch/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/gothic-witch/voice-lines/attention.mp3 +0 -0
- package/assets/characters/gothic-witch/voice-lines/complete.mp3 +0 -0
- package/assets/characters/gothic-witch/voice-lines/death.mp3 +0 -0
- package/assets/characters/gothic-witch/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/gothic-witch/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/gothic-witch/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/gothic-witch/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/gothic-witch/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/gothic-witch/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/east/0.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/east/1.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/east/2.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/east/3.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/east/4.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/east/5.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/east/6.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/east/7.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/north/0.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/north/1.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/north/2.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/north/3.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/north/4.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/north/5.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/north/6.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/north/7.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/south/0.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/south/1.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/south/2.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/south/3.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/south/4.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/south/5.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/south/6.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/south/7.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/west/0.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/west/1.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/west/2.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/west/3.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/west/4.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/west/5.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/west/6.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/walk/west/7.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/0.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/1.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/10.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/11.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/12.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/13.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/14.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/15.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/2.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/3.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/4.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/5.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/6.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/7.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/8.png +0 -0
- package/assets/characters/horned-helm-fighter/animations/working/9.png +0 -0
- package/assets/characters/horned-helm-fighter/rotations/east.png +0 -0
- package/assets/characters/horned-helm-fighter/rotations/north.png +0 -0
- package/assets/characters/horned-helm-fighter/rotations/south.png +0 -0
- package/assets/characters/horned-helm-fighter/rotations/west.png +0 -0
- package/assets/characters/horned-helm-fighter/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/horned-helm-fighter/voice-lines/attention.mp3 +0 -0
- package/assets/characters/horned-helm-fighter/voice-lines/complete.mp3 +0 -0
- package/assets/characters/horned-helm-fighter/voice-lines/death.mp3 +0 -0
- package/assets/characters/horned-helm-fighter/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/horned-helm-fighter/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/horned-helm-fighter/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/horned-helm-fighter/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/horned-helm-fighter/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/horned-helm-fighter/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/east/0.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/east/1.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/east/2.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/east/3.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/east/4.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/east/5.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/east/6.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/east/7.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/north/0.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/north/1.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/north/2.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/north/3.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/north/4.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/north/5.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/north/6.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/north/7.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/south/0.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/south/1.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/south/2.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/south/3.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/south/4.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/south/5.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/south/6.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/south/7.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/west/0.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/west/1.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/west/2.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/west/3.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/west/4.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/west/5.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/west/6.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/walk/west/7.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/0.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/1.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/10.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/11.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/12.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/13.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/14.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/15.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/2.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/3.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/4.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/5.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/6.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/7.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/8.png +0 -0
- package/assets/characters/knight-blue-guardian/animations/working/9.png +0 -0
- package/assets/characters/knight-blue-guardian/rotations/east.png +0 -0
- package/assets/characters/knight-blue-guardian/rotations/north.png +0 -0
- package/assets/characters/knight-blue-guardian/rotations/south.png +0 -0
- package/assets/characters/knight-blue-guardian/rotations/west.png +0 -0
- package/assets/characters/knight-blue-guardian/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/knight-blue-guardian/voice-lines/attention.mp3 +0 -0
- package/assets/characters/knight-blue-guardian/voice-lines/complete.mp3 +0 -0
- package/assets/characters/knight-blue-guardian/voice-lines/death.mp3 +0 -0
- package/assets/characters/knight-blue-guardian/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/knight-blue-guardian/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/knight-blue-guardian/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/knight-blue-guardian/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/knight-blue-guardian/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/knight-blue-guardian/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/launch-preview.html +298 -0
- package/assets/characters/minotaur-strategist/animations/walk/east/0.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/east/1.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/east/2.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/east/3.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/east/4.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/east/5.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/east/6.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/east/7.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/north/0.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/north/1.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/north/2.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/north/3.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/north/4.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/north/5.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/north/6.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/north/7.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/south/0.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/south/1.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/south/2.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/south/3.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/south/4.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/south/5.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/south/6.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/south/7.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/west/0.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/west/1.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/west/2.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/west/3.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/west/4.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/west/5.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/west/6.png +0 -0
- package/assets/characters/minotaur-strategist/animations/walk/west/7.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/0.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/1.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/10.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/11.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/12.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/13.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/14.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/15.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/2.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/3.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/4.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/5.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/6.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/7.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/8.png +0 -0
- package/assets/characters/minotaur-strategist/animations/working/9.png +0 -0
- package/assets/characters/minotaur-strategist/rotations/east.png +0 -0
- package/assets/characters/minotaur-strategist/rotations/north.png +0 -0
- package/assets/characters/minotaur-strategist/rotations/south.png +0 -0
- package/assets/characters/minotaur-strategist/rotations/west.png +0 -0
- package/assets/characters/minotaur-strategist/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/minotaur-strategist/voice-lines/attention.mp3 +0 -0
- package/assets/characters/minotaur-strategist/voice-lines/complete.mp3 +0 -0
- package/assets/characters/minotaur-strategist/voice-lines/death.mp3 +0 -0
- package/assets/characters/minotaur-strategist/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/minotaur-strategist/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/minotaur-strategist/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/minotaur-strategist/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/minotaur-strategist/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/minotaur-strategist/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/east/0.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/east/1.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/east/2.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/east/3.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/east/4.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/east/5.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/east/6.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/east/7.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/north/0.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/north/1.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/north/2.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/north/3.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/north/4.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/north/5.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/north/6.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/north/7.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/south/0.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/south/1.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/south/2.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/south/3.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/south/4.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/south/5.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/south/6.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/south/7.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/west/0.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/west/1.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/west/2.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/west/3.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/west/4.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/west/5.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/west/6.png +0 -0
- package/assets/characters/moon-grove-druid/animations/walk/west/7.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/0.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/1.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/10.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/11.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/12.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/13.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/14.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/15.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/2.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/3.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/4.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/5.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/6.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/7.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/8.png +0 -0
- package/assets/characters/moon-grove-druid/animations/working/9.png +0 -0
- package/assets/characters/moon-grove-druid/rotations/east.png +0 -0
- package/assets/characters/moon-grove-druid/rotations/north.png +0 -0
- package/assets/characters/moon-grove-druid/rotations/south.png +0 -0
- package/assets/characters/moon-grove-druid/rotations/west.png +0 -0
- package/assets/characters/moon-grove-druid/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/moon-grove-druid/voice-lines/attention.mp3 +0 -0
- package/assets/characters/moon-grove-druid/voice-lines/complete.mp3 +0 -0
- package/assets/characters/moon-grove-druid/voice-lines/death.mp3 +0 -0
- package/assets/characters/moon-grove-druid/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/moon-grove-druid/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/moon-grove-druid/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/moon-grove-druid/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/moon-grove-druid/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/moon-grove-druid/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/necromancer-male/animations/walk/east/0.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/east/1.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/east/2.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/east/3.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/east/4.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/east/5.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/east/6.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/east/7.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/north/0.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/north/1.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/north/2.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/north/3.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/north/4.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/north/5.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/north/6.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/north/7.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/south/0.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/south/1.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/south/2.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/south/3.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/south/4.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/south/5.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/south/6.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/south/7.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/west/0.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/west/1.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/west/2.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/west/3.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/west/4.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/west/5.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/west/6.png +0 -0
- package/assets/characters/necromancer-male/animations/walk/west/7.png +0 -0
- package/assets/characters/necromancer-male/animations/working/0.png +0 -0
- package/assets/characters/necromancer-male/animations/working/1.png +0 -0
- package/assets/characters/necromancer-male/animations/working/10.png +0 -0
- package/assets/characters/necromancer-male/animations/working/11.png +0 -0
- package/assets/characters/necromancer-male/animations/working/12.png +0 -0
- package/assets/characters/necromancer-male/animations/working/13.png +0 -0
- package/assets/characters/necromancer-male/animations/working/14.png +0 -0
- package/assets/characters/necromancer-male/animations/working/15.png +0 -0
- package/assets/characters/necromancer-male/animations/working/2.png +0 -0
- package/assets/characters/necromancer-male/animations/working/3.png +0 -0
- package/assets/characters/necromancer-male/animations/working/4.png +0 -0
- package/assets/characters/necromancer-male/animations/working/5.png +0 -0
- package/assets/characters/necromancer-male/animations/working/6.png +0 -0
- package/assets/characters/necromancer-male/animations/working/7.png +0 -0
- package/assets/characters/necromancer-male/animations/working/8.png +0 -0
- package/assets/characters/necromancer-male/animations/working/9.png +0 -0
- package/assets/characters/necromancer-male/rotations/east.png +0 -0
- package/assets/characters/necromancer-male/rotations/north.png +0 -0
- package/assets/characters/necromancer-male/rotations/south.png +0 -0
- package/assets/characters/necromancer-male/rotations/west.png +0 -0
- package/assets/characters/necromancer-male/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/necromancer-male/voice-lines/attention.mp3 +0 -0
- package/assets/characters/necromancer-male/voice-lines/complete.mp3 +0 -0
- package/assets/characters/necromancer-male/voice-lines/death.mp3 +0 -0
- package/assets/characters/necromancer-male/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/necromancer-male/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/necromancer-male/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/necromancer-male/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/necromancer-male/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/necromancer-male/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/oracle-seer/animations/walk/east/0.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/east/1.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/east/2.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/east/3.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/east/4.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/east/5.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/east/6.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/east/7.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/north/0.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/north/1.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/north/2.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/north/3.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/north/4.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/north/5.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/north/6.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/north/7.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/south/0.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/south/1.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/south/2.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/south/3.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/south/4.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/south/5.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/south/6.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/south/7.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/west/0.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/west/1.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/west/2.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/west/3.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/west/4.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/west/5.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/west/6.png +0 -0
- package/assets/characters/oracle-seer/animations/walk/west/7.png +0 -0
- package/assets/characters/oracle-seer/animations/working/0.png +0 -0
- package/assets/characters/oracle-seer/animations/working/1.png +0 -0
- package/assets/characters/oracle-seer/animations/working/10.png +0 -0
- package/assets/characters/oracle-seer/animations/working/11.png +0 -0
- package/assets/characters/oracle-seer/animations/working/12.png +0 -0
- package/assets/characters/oracle-seer/animations/working/13.png +0 -0
- package/assets/characters/oracle-seer/animations/working/14.png +0 -0
- package/assets/characters/oracle-seer/animations/working/15.png +0 -0
- package/assets/characters/oracle-seer/animations/working/2.png +0 -0
- package/assets/characters/oracle-seer/animations/working/3.png +0 -0
- package/assets/characters/oracle-seer/animations/working/4.png +0 -0
- package/assets/characters/oracle-seer/animations/working/5.png +0 -0
- package/assets/characters/oracle-seer/animations/working/6.png +0 -0
- package/assets/characters/oracle-seer/animations/working/7.png +0 -0
- package/assets/characters/oracle-seer/animations/working/8.png +0 -0
- package/assets/characters/oracle-seer/animations/working/9.png +0 -0
- package/assets/characters/oracle-seer/rotations/east.png +0 -0
- package/assets/characters/oracle-seer/rotations/north.png +0 -0
- package/assets/characters/oracle-seer/rotations/south.png +0 -0
- package/assets/characters/oracle-seer/rotations/west.png +0 -0
- package/assets/characters/oracle-seer/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/oracle-seer/voice-lines/attention.mp3 +0 -0
- package/assets/characters/oracle-seer/voice-lines/complete.mp3 +0 -0
- package/assets/characters/oracle-seer/voice-lines/death.mp3 +0 -0
- package/assets/characters/oracle-seer/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/oracle-seer/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/oracle-seer/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/oracle-seer/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/oracle-seer/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/oracle-seer/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/east/0.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/east/1.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/east/2.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/east/3.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/east/4.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/east/5.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/east/6.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/east/7.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/north/0.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/north/1.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/north/2.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/north/3.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/north/4.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/north/5.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/north/6.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/north/7.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/south/0.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/south/1.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/south/2.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/south/3.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/south/4.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/south/5.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/south/6.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/south/7.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/west/0.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/west/1.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/west/2.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/west/3.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/west/4.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/west/5.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/west/6.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/walk/west/7.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/0.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/1.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/10.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/11.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/12.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/13.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/14.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/15.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/2.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/3.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/4.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/5.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/6.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/7.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/8.png +0 -0
- package/assets/characters/pyromancer-wizard/animations/working/9.png +0 -0
- package/assets/characters/pyromancer-wizard/rotations/east.png +0 -0
- package/assets/characters/pyromancer-wizard/rotations/north.png +0 -0
- package/assets/characters/pyromancer-wizard/rotations/south.png +0 -0
- package/assets/characters/pyromancer-wizard/rotations/west.png +0 -0
- package/assets/characters/pyromancer-wizard/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/pyromancer-wizard/voice-lines/attention.mp3 +0 -0
- package/assets/characters/pyromancer-wizard/voice-lines/complete.mp3 +0 -0
- package/assets/characters/pyromancer-wizard/voice-lines/death.mp3 +0 -0
- package/assets/characters/pyromancer-wizard/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/pyromancer-wizard/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/pyromancer-wizard/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/pyromancer-wizard/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/pyromancer-wizard/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/pyromancer-wizard/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/east/0.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/east/1.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/east/2.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/east/3.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/east/4.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/east/5.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/east/6.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/east/7.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/north/0.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/north/1.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/north/2.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/north/3.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/north/4.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/north/5.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/north/6.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/north/7.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/south/0.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/south/1.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/south/2.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/south/3.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/south/4.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/south/5.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/south/6.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/south/7.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/west/0.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/west/1.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/west/2.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/west/3.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/west/4.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/west/5.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/west/6.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/walk/west/7.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/0.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/1.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/10.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/11.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/12.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/13.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/14.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/15.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/2.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/3.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/4.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/5.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/6.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/7.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/8.png +0 -0
- package/assets/characters/sun-priestess-healer/animations/working/9.png +0 -0
- package/assets/characters/sun-priestess-healer/rotations/east.png +0 -0
- package/assets/characters/sun-priestess-healer/rotations/north.png +0 -0
- package/assets/characters/sun-priestess-healer/rotations/south.png +0 -0
- package/assets/characters/sun-priestess-healer/rotations/west.png +0 -0
- package/assets/characters/sun-priestess-healer/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/sun-priestess-healer/voice-lines/attention.mp3 +0 -0
- package/assets/characters/sun-priestess-healer/voice-lines/complete.mp3 +0 -0
- package/assets/characters/sun-priestess-healer/voice-lines/death.mp3 +0 -0
- package/assets/characters/sun-priestess-healer/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/sun-priestess-healer/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/sun-priestess-healer/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/sun-priestess-healer/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/sun-priestess-healer/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/sun-priestess-healer/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/east/0.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/east/1.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/east/2.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/east/3.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/east/4.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/east/5.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/east/6.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/east/7.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/north/0.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/north/1.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/north/2.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/north/3.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/north/4.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/north/5.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/north/6.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/north/7.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/south/0.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/south/1.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/south/2.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/south/3.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/south/4.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/south/5.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/south/6.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/south/7.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/west/0.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/west/1.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/west/2.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/west/3.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/west/4.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/west/5.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/west/6.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/walk/west/7.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/0.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/1.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/10.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/11.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/12.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/13.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/14.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/15.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/2.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/3.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/4.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/5.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/6.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/7.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/8.png +0 -0
- package/assets/characters/valkyrie-spearmaid/animations/working/9.png +0 -0
- package/assets/characters/valkyrie-spearmaid/rotations/east.png +0 -0
- package/assets/characters/valkyrie-spearmaid/rotations/north.png +0 -0
- package/assets/characters/valkyrie-spearmaid/rotations/south.png +0 -0
- package/assets/characters/valkyrie-spearmaid/rotations/west.png +0 -0
- package/assets/characters/valkyrie-spearmaid/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/valkyrie-spearmaid/voice-lines/attention.mp3 +0 -0
- package/assets/characters/valkyrie-spearmaid/voice-lines/complete.mp3 +0 -0
- package/assets/characters/valkyrie-spearmaid/voice-lines/death.mp3 +0 -0
- package/assets/characters/valkyrie-spearmaid/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/valkyrie-spearmaid/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/valkyrie-spearmaid/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/valkyrie-spearmaid/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/valkyrie-spearmaid/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/valkyrie-spearmaid/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/east/0.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/east/1.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/east/2.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/east/3.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/east/4.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/east/5.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/east/6.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/east/7.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/north/0.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/north/1.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/north/2.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/north/3.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/north/4.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/north/5.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/north/6.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/north/7.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/south/0.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/south/1.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/south/2.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/south/3.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/south/4.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/south/5.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/south/6.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/south/7.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/west/0.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/west/1.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/west/2.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/west/3.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/west/4.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/west/5.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/west/6.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/walk/west/7.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/0.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/1.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/10.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/11.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/12.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/13.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/14.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/15.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/2.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/3.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/4.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/5.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/6.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/7.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/8.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/animations/working/9.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/rotations/east.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/rotations/north.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/rotations/south.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/rotations/west.png +0 -0
- package/assets/characters/witch-hunter-gunslinger/voice-lines/arrive.mp3 +0 -0
- package/assets/characters/witch-hunter-gunslinger/voice-lines/attention.mp3 +0 -0
- package/assets/characters/witch-hunter-gunslinger/voice-lines/complete.mp3 +0 -0
- package/assets/characters/witch-hunter-gunslinger/voice-lines/death.mp3 +0 -0
- package/assets/characters/witch-hunter-gunslinger/voice-lines/move_variant_1.mp3 +0 -0
- package/assets/characters/witch-hunter-gunslinger/voice-lines/move_variant_2.mp3 +0 -0
- package/assets/characters/witch-hunter-gunslinger/voice-lines/move_variant_3.mp3 +0 -0
- package/assets/characters/witch-hunter-gunslinger/voice-lines/selected_variant_1.mp3 +0 -0
- package/assets/characters/witch-hunter-gunslinger/voice-lines/selected_variant_2.mp3 +0 -0
- package/assets/characters/witch-hunter-gunslinger/voice-lines/selected_variant_3.mp3 +0 -0
- package/assets/maps/backgrounds/outpost-v1-2x.png +0 -0
- package/assets/maps/backgrounds/outpost-v1-original.png +0 -0
- package/assets/maps/backgrounds/outpost-v1-upscaled-2x-photo.png +0 -0
- package/assets/maps/backgrounds/outpost-v1.png +0 -0
- package/assets/maps/outpost.json +130 -0
- package/assets/maps/outpost.logic.json +26197 -0
- package/config.example.yaml +91 -0
- package/dist/client/assets/index-B0hs4377.js +80 -0
- package/dist/client/assets/index-TxsheMVB.css +32 -0
- package/dist/client/index.html +13 -0
- package/dist/client/map-mask-editor.html +1853 -0
- package/dist/server/server/assets/avatarCatalog.js +37 -0
- package/dist/server/server/assets/voiceLineCatalog.js +42 -0
- package/dist/server/server/bootstrap/httpApp.js +39 -0
- package/dist/server/server/bootstrap/serverContext.js +60 -0
- package/dist/server/server/bootstrap/shutdown.js +152 -0
- package/dist/server/server/bootstrap/shutdown.test.js +142 -0
- package/dist/server/server/bootstrap/websocketUpgrade.js +111 -0
- package/dist/server/server/bootstrap/websocketUpgrade.test.js +83 -0
- package/dist/server/server/bootstrapApp.js +89 -0
- package/dist/server/server/cli.js +452 -0
- package/dist/server/server/config/discovery.js +159 -0
- package/dist/server/server/config/loadConfig.js +121 -0
- package/dist/server/server/config/schema.js +121 -0
- package/dist/server/server/http/appError.js +30 -0
- package/dist/server/server/http/errorResponse.js +31 -0
- package/dist/server/server/http/errorResponse.test.js +46 -0
- package/dist/server/server/http/requestParsers.js +133 -0
- package/dist/server/server/http/requestParsers.test.js +57 -0
- package/dist/server/server/http/routes/registerApiRoutes.js +146 -0
- package/dist/server/server/index.js +9 -0
- package/dist/server/server/orchestrator/orchestratorService.js +378 -0
- package/dist/server/server/orchestrator/orchestratorService.test.js +111 -0
- package/dist/server/server/orchestrator/reconcile/isSameWorkerRecord.js +17 -0
- package/dist/server/server/orchestrator/spawn/avatarAllocator.js +20 -0
- package/dist/server/server/orchestrator/spawn/command.js +37 -0
- package/dist/server/server/orchestrator/spawn/command.test.js +39 -0
- package/dist/server/server/orchestrator/spawn/resolveSpawnPlan.js +44 -0
- package/dist/server/server/orchestrator/spawn/resolveSpawnPlan.test.js +79 -0
- package/dist/server/server/orchestrator/spawn/spawnPosition.js +147 -0
- package/dist/server/server/orchestrator/spawn/types.js +2 -0
- package/dist/server/server/orchestrator/spawn/windowName.js +12 -0
- package/dist/server/server/persistence/workerRepository.js +211 -0
- package/dist/server/server/status/activityParser.js +172 -0
- package/dist/server/server/status/claudeTranscript/accumulator.js +372 -0
- package/dist/server/server/status/claudeTranscript/constants.js +18 -0
- package/dist/server/server/status/claudeTranscript/io.js +160 -0
- package/dist/server/server/status/claudeTranscript/parser.js +50 -0
- package/dist/server/server/status/claudeTranscript/snapshot.js +82 -0
- package/dist/server/server/status/claudeTranscript/types.js +2 -0
- package/dist/server/server/status/claudeTranscriptTracker.js +59 -0
- package/dist/server/server/status/engine/signalContext.js +41 -0
- package/dist/server/server/status/engine/stateMachine/activity.js +18 -0
- package/dist/server/server/status/engine/stateMachine/constants.js +45 -0
- package/dist/server/server/status/engine/stateMachine/decision.js +213 -0
- package/dist/server/server/status/engine/stateMachine/decision.test.js +139 -0
- package/dist/server/server/status/engine/stateMachine/helpers.js +103 -0
- package/dist/server/server/status/engine/stateMachine/helpers.test.js +113 -0
- package/dist/server/server/status/engine/stateMachine/idleBlockers.js +55 -0
- package/dist/server/server/status/engine/stateMachine/parserErrorRules.js +42 -0
- package/dist/server/server/status/engine/stateMachine/types.js +2 -0
- package/dist/server/server/status/engine/stateMachine/workingEvidence.js +97 -0
- package/dist/server/server/status/engine/stateMachine.js +5 -0
- package/dist/server/server/status/engine/types.js +4 -0
- package/dist/server/server/status/paneObservation.js +35 -0
- package/dist/server/server/status/runtime/activityTextExtractors.js +189 -0
- package/dist/server/server/status/runtime/claudeSignals.js +56 -0
- package/dist/server/server/status/runtime/openCodeSignals.js +63 -0
- package/dist/server/server/status/runtime/sessionDetection.js +37 -0
- package/dist/server/server/status/runtime/textSignals.js +21 -0
- package/dist/server/server/status/runtimeSignals.js +21 -0
- package/dist/server/server/status/statusEvaluator.js +16 -0
- package/dist/server/server/status/statusHeuristics.js +146 -0
- package/dist/server/server/status/statusMonitor.js +390 -0
- package/dist/server/server/status/statusMonitor.test.js +191 -0
- package/dist/server/server/status/statusPipeline.js +45 -0
- package/dist/server/server/tmux/tmuxAdapter.js +338 -0
- package/dist/server/server/utils/appRoot.js +40 -0
- package/dist/server/server/utils/path.js +20 -0
- package/dist/server/server/ws/realtimeHub.js +44 -0
- package/dist/server/server/ws/realtimeHub.test.js +43 -0
- package/dist/server/server/ws/terminalBridge.js +153 -0
- package/dist/server/shared/types.js +2 -0
- package/package.json +68 -0
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const l of document.querySelectorAll('link[rel="modulepreload"]'))n(l);new MutationObserver(l=>{for(const c of l)if(c.type==="childList")for(const h of c.addedNodes)h.tagName==="LINK"&&h.rel==="modulepreload"&&n(h)}).observe(document,{childList:!0,subtree:!0});function s(l){const c={};return l.integrity&&(c.integrity=l.integrity),l.referrerPolicy&&(c.referrerPolicy=l.referrerPolicy),l.crossOrigin==="use-credentials"?c.credentials="include":l.crossOrigin==="anonymous"?c.credentials="omit":c.credentials="same-origin",c}function n(l){if(l.ep)return;l.ep=!0;const c=s(l);fetch(l.href,c)}})();var Rc={exports:{}},Fn={},Tc={exports:{}},We={};/**
|
|
2
|
+
* @license React
|
|
3
|
+
* react.production.min.js
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
6
|
+
*
|
|
7
|
+
* This source code is licensed under the MIT license found in the
|
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
|
9
|
+
*/var bf;function Wg(){if(bf)return We;bf=1;var e=Symbol.for("react.element"),t=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),n=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),c=Symbol.for("react.provider"),h=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),p=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),g=Symbol.for("react.lazy"),y=Symbol.iterator;function C(R){return R===null||typeof R!="object"?null:(R=y&&R[y]||R["@@iterator"],typeof R=="function"?R:null)}var S={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},v=Object.assign,w={};function E(R,U,le){this.props=R,this.context=U,this.refs=w,this.updater=le||S}E.prototype.isReactComponent={},E.prototype.setState=function(R,U){if(typeof R!="object"&&typeof R!="function"&&R!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,R,U,"setState")},E.prototype.forceUpdate=function(R){this.updater.enqueueForceUpdate(this,R,"forceUpdate")};function L(){}L.prototype=E.prototype;function j(R,U,le){this.props=R,this.context=U,this.refs=w,this.updater=le||S}var $=j.prototype=new L;$.constructor=j,v($,E.prototype),$.isPureReactComponent=!0;var W=Array.isArray,Q=Object.prototype.hasOwnProperty,K={current:null},Z={key:!0,ref:!0,__self:!0,__source:!0};function fe(R,U,le){var ie,ue={},_e=null,Re=null;if(U!=null)for(ie in U.ref!==void 0&&(Re=U.ref),U.key!==void 0&&(_e=""+U.key),U)Q.call(U,ie)&&!Z.hasOwnProperty(ie)&&(ue[ie]=U[ie]);var ge=arguments.length-2;if(ge===1)ue.children=le;else if(1<ge){for(var ke=Array(ge),Ae=0;Ae<ge;Ae++)ke[Ae]=arguments[Ae+2];ue.children=ke}if(R&&R.defaultProps)for(ie in ge=R.defaultProps,ge)ue[ie]===void 0&&(ue[ie]=ge[ie]);return{$$typeof:e,type:R,key:_e,ref:Re,props:ue,_owner:K.current}}function oe(R,U){return{$$typeof:e,type:R.type,key:U,ref:R.ref,props:R.props,_owner:R._owner}}function he(R){return typeof R=="object"&&R!==null&&R.$$typeof===e}function V(R){var U={"=":"=0",":":"=2"};return"$"+R.replace(/[=:]/g,function(le){return U[le]})}var D=/\/+/g;function b(R,U){return typeof R=="object"&&R!==null&&R.key!=null?V(""+R.key):U.toString(36)}function I(R,U,le,ie,ue){var _e=typeof R;(_e==="undefined"||_e==="boolean")&&(R=null);var Re=!1;if(R===null)Re=!0;else switch(_e){case"string":case"number":Re=!0;break;case"object":switch(R.$$typeof){case e:case t:Re=!0}}if(Re)return Re=R,ue=ue(Re),R=ie===""?"."+b(Re,0):ie,W(ue)?(le="",R!=null&&(le=R.replace(D,"$&/")+"/"),I(ue,U,le,"",function(Ae){return Ae})):ue!=null&&(he(ue)&&(ue=oe(ue,le+(!ue.key||Re&&Re.key===ue.key?"":(""+ue.key).replace(D,"$&/")+"/")+R)),U.push(ue)),1;if(Re=0,ie=ie===""?".":ie+":",W(R))for(var ge=0;ge<R.length;ge++){_e=R[ge];var ke=ie+b(_e,ge);Re+=I(_e,U,le,ke,ue)}else if(ke=C(R),typeof ke=="function")for(R=ke.call(R),ge=0;!(_e=R.next()).done;)_e=_e.value,ke=ie+b(_e,ge++),Re+=I(_e,U,le,ke,ue);else if(_e==="object")throw U=String(R),Error("Objects are not valid as a React child (found: "+(U==="[object Object]"?"object with keys {"+Object.keys(R).join(", ")+"}":U)+"). If you meant to render a collection of children, use an array instead.");return Re}function N(R,U,le){if(R==null)return R;var ie=[],ue=0;return I(R,ie,"","",function(_e){return U.call(le,_e,ue++)}),ie}function O(R){if(R._status===-1){var U=R._result;U=U(),U.then(function(le){(R._status===0||R._status===-1)&&(R._status=1,R._result=le)},function(le){(R._status===0||R._status===-1)&&(R._status=2,R._result=le)}),R._status===-1&&(R._status=0,R._result=U)}if(R._status===1)return R._result.default;throw R._result}var Y={current:null},B={transition:null},F={ReactCurrentDispatcher:Y,ReactCurrentBatchConfig:B,ReactCurrentOwner:K};function J(){throw Error("act(...) is not supported in production builds of React.")}return We.Children={map:N,forEach:function(R,U,le){N(R,function(){U.apply(this,arguments)},le)},count:function(R){var U=0;return N(R,function(){U++}),U},toArray:function(R){return N(R,function(U){return U})||[]},only:function(R){if(!he(R))throw Error("React.Children.only expected to receive a single React element child.");return R}},We.Component=E,We.Fragment=s,We.Profiler=l,We.PureComponent=j,We.StrictMode=n,We.Suspense=p,We.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=F,We.act=J,We.cloneElement=function(R,U,le){if(R==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+R+".");var ie=v({},R.props),ue=R.key,_e=R.ref,Re=R._owner;if(U!=null){if(U.ref!==void 0&&(_e=U.ref,Re=K.current),U.key!==void 0&&(ue=""+U.key),R.type&&R.type.defaultProps)var ge=R.type.defaultProps;for(ke in U)Q.call(U,ke)&&!Z.hasOwnProperty(ke)&&(ie[ke]=U[ke]===void 0&&ge!==void 0?ge[ke]:U[ke])}var ke=arguments.length-2;if(ke===1)ie.children=le;else if(1<ke){ge=Array(ke);for(var Ae=0;Ae<ke;Ae++)ge[Ae]=arguments[Ae+2];ie.children=ge}return{$$typeof:e,type:R.type,key:ue,ref:_e,props:ie,_owner:Re}},We.createContext=function(R){return R={$$typeof:h,_currentValue:R,_currentValue2:R,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},R.Provider={$$typeof:c,_context:R},R.Consumer=R},We.createElement=fe,We.createFactory=function(R){var U=fe.bind(null,R);return U.type=R,U},We.createRef=function(){return{current:null}},We.forwardRef=function(R){return{$$typeof:f,render:R}},We.isValidElement=he,We.lazy=function(R){return{$$typeof:g,_payload:{_status:-1,_result:R},_init:O}},We.memo=function(R,U){return{$$typeof:d,type:R,compare:U===void 0?null:U}},We.startTransition=function(R){var U=B.transition;B.transition={};try{R()}finally{B.transition=U}},We.unstable_act=J,We.useCallback=function(R,U){return Y.current.useCallback(R,U)},We.useContext=function(R){return Y.current.useContext(R)},We.useDebugValue=function(){},We.useDeferredValue=function(R){return Y.current.useDeferredValue(R)},We.useEffect=function(R,U){return Y.current.useEffect(R,U)},We.useId=function(){return Y.current.useId()},We.useImperativeHandle=function(R,U,le){return Y.current.useImperativeHandle(R,U,le)},We.useInsertionEffect=function(R,U){return Y.current.useInsertionEffect(R,U)},We.useLayoutEffect=function(R,U){return Y.current.useLayoutEffect(R,U)},We.useMemo=function(R,U){return Y.current.useMemo(R,U)},We.useReducer=function(R,U,le){return Y.current.useReducer(R,U,le)},We.useRef=function(R){return Y.current.useRef(R)},We.useState=function(R){return Y.current.useState(R)},We.useSyncExternalStore=function(R,U,le){return Y.current.useSyncExternalStore(R,U,le)},We.useTransition=function(){return Y.current.useTransition()},We.version="18.3.1",We}var xf;function Fh(){return xf||(xf=1,Tc.exports=Wg()),Tc.exports}/**
|
|
10
|
+
* @license React
|
|
11
|
+
* react-jsx-runtime.production.min.js
|
|
12
|
+
*
|
|
13
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
14
|
+
*
|
|
15
|
+
* This source code is licensed under the MIT license found in the
|
|
16
|
+
* LICENSE file in the root directory of this source tree.
|
|
17
|
+
*/var Ef;function Fg(){if(Ef)return Fn;Ef=1;var e=Fh(),t=Symbol.for("react.element"),s=Symbol.for("react.fragment"),n=Object.prototype.hasOwnProperty,l=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,c={key:!0,ref:!0,__self:!0,__source:!0};function h(f,p,d){var g,y={},C=null,S=null;d!==void 0&&(C=""+d),p.key!==void 0&&(C=""+p.key),p.ref!==void 0&&(S=p.ref);for(g in p)n.call(p,g)&&!c.hasOwnProperty(g)&&(y[g]=p[g]);if(f&&f.defaultProps)for(g in p=f.defaultProps,p)y[g]===void 0&&(y[g]=p[g]);return{$$typeof:t,type:f,key:C,ref:S,props:y,_owner:l.current}}return Fn.Fragment=s,Fn.jsx=h,Fn.jsxs=h,Fn}var Mf;function Hg(){return Mf||(Mf=1,Rc.exports=Fg()),Rc.exports}var T=Hg(),x=Fh(),Sl={},Pc={exports:{}},er={},Lc={exports:{}},Dc={};/**
|
|
18
|
+
* @license React
|
|
19
|
+
* scheduler.production.min.js
|
|
20
|
+
*
|
|
21
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
22
|
+
*
|
|
23
|
+
* This source code is licensed under the MIT license found in the
|
|
24
|
+
* LICENSE file in the root directory of this source tree.
|
|
25
|
+
*/var Rf;function jg(){return Rf||(Rf=1,(function(e){function t(B,F){var J=B.length;B.push(F);e:for(;0<J;){var R=J-1>>>1,U=B[R];if(0<l(U,F))B[R]=F,B[J]=U,J=R;else break e}}function s(B){return B.length===0?null:B[0]}function n(B){if(B.length===0)return null;var F=B[0],J=B.pop();if(J!==F){B[0]=J;e:for(var R=0,U=B.length,le=U>>>1;R<le;){var ie=2*(R+1)-1,ue=B[ie],_e=ie+1,Re=B[_e];if(0>l(ue,J))_e<U&&0>l(Re,ue)?(B[R]=Re,B[_e]=J,R=_e):(B[R]=ue,B[ie]=J,R=ie);else if(_e<U&&0>l(Re,J))B[R]=Re,B[_e]=J,R=_e;else break e}}return F}function l(B,F){var J=B.sortIndex-F.sortIndex;return J!==0?J:B.id-F.id}if(typeof performance=="object"&&typeof performance.now=="function"){var c=performance;e.unstable_now=function(){return c.now()}}else{var h=Date,f=h.now();e.unstable_now=function(){return h.now()-f}}var p=[],d=[],g=1,y=null,C=3,S=!1,v=!1,w=!1,E=typeof setTimeout=="function"?setTimeout:null,L=typeof clearTimeout=="function"?clearTimeout:null,j=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function $(B){for(var F=s(d);F!==null;){if(F.callback===null)n(d);else if(F.startTime<=B)n(d),F.sortIndex=F.expirationTime,t(p,F);else break;F=s(d)}}function W(B){if(w=!1,$(B),!v)if(s(p)!==null)v=!0,O(Q);else{var F=s(d);F!==null&&Y(W,F.startTime-B)}}function Q(B,F){v=!1,w&&(w=!1,L(fe),fe=-1),S=!0;var J=C;try{for($(F),y=s(p);y!==null&&(!(y.expirationTime>F)||B&&!V());){var R=y.callback;if(typeof R=="function"){y.callback=null,C=y.priorityLevel;var U=R(y.expirationTime<=F);F=e.unstable_now(),typeof U=="function"?y.callback=U:y===s(p)&&n(p),$(F)}else n(p);y=s(p)}if(y!==null)var le=!0;else{var ie=s(d);ie!==null&&Y(W,ie.startTime-F),le=!1}return le}finally{y=null,C=J,S=!1}}var K=!1,Z=null,fe=-1,oe=5,he=-1;function V(){return!(e.unstable_now()-he<oe)}function D(){if(Z!==null){var B=e.unstable_now();he=B;var F=!0;try{F=Z(!0,B)}finally{F?b():(K=!1,Z=null)}}else K=!1}var b;if(typeof j=="function")b=function(){j(D)};else if(typeof MessageChannel<"u"){var I=new MessageChannel,N=I.port2;I.port1.onmessage=D,b=function(){N.postMessage(null)}}else b=function(){E(D,0)};function O(B){Z=B,K||(K=!0,b())}function Y(B,F){fe=E(function(){B(e.unstable_now())},F)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(B){B.callback=null},e.unstable_continueExecution=function(){v||S||(v=!0,O(Q))},e.unstable_forceFrameRate=function(B){0>B||125<B?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):oe=0<B?Math.floor(1e3/B):5},e.unstable_getCurrentPriorityLevel=function(){return C},e.unstable_getFirstCallbackNode=function(){return s(p)},e.unstable_next=function(B){switch(C){case 1:case 2:case 3:var F=3;break;default:F=C}var J=C;C=F;try{return B()}finally{C=J}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(B,F){switch(B){case 1:case 2:case 3:case 4:case 5:break;default:B=3}var J=C;C=B;try{return F()}finally{C=J}},e.unstable_scheduleCallback=function(B,F,J){var R=e.unstable_now();switch(typeof J=="object"&&J!==null?(J=J.delay,J=typeof J=="number"&&0<J?R+J:R):J=R,B){case 1:var U=-1;break;case 2:U=250;break;case 5:U=1073741823;break;case 4:U=1e4;break;default:U=5e3}return U=J+U,B={id:g++,callback:F,priorityLevel:B,startTime:J,expirationTime:U,sortIndex:-1},J>R?(B.sortIndex=J,t(d,B),s(p)===null&&B===s(d)&&(w?(L(fe),fe=-1):w=!0,Y(W,J-R))):(B.sortIndex=U,t(p,B),v||S||(v=!0,O(Q))),B},e.unstable_shouldYield=V,e.unstable_wrapCallback=function(B){var F=C;return function(){var J=C;C=F;try{return B.apply(this,arguments)}finally{C=J}}}})(Dc)),Dc}var Tf;function $g(){return Tf||(Tf=1,Lc.exports=jg()),Lc.exports}/**
|
|
26
|
+
* @license React
|
|
27
|
+
* react-dom.production.min.js
|
|
28
|
+
*
|
|
29
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
30
|
+
*
|
|
31
|
+
* This source code is licensed under the MIT license found in the
|
|
32
|
+
* LICENSE file in the root directory of this source tree.
|
|
33
|
+
*/var Pf;function Kg(){if(Pf)return er;Pf=1;var e=Fh(),t=$g();function s(r){for(var i="https://reactjs.org/docs/error-decoder.html?invariant="+r,o=1;o<arguments.length;o++)i+="&args[]="+encodeURIComponent(arguments[o]);return"Minified React error #"+r+"; visit "+i+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var n=new Set,l={};function c(r,i){h(r,i),h(r+"Capture",i)}function h(r,i){for(l[r]=i,r=0;r<i.length;r++)n.add(i[r])}var f=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),p=Object.prototype.hasOwnProperty,d=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,g={},y={};function C(r){return p.call(y,r)?!0:p.call(g,r)?!1:d.test(r)?y[r]=!0:(g[r]=!0,!1)}function S(r,i,o,a){if(o!==null&&o.type===0)return!1;switch(typeof i){case"function":case"symbol":return!0;case"boolean":return a?!1:o!==null?!o.acceptsBooleans:(r=r.toLowerCase().slice(0,5),r!=="data-"&&r!=="aria-");default:return!1}}function v(r,i,o,a){if(i===null||typeof i>"u"||S(r,i,o,a))return!0;if(a)return!1;if(o!==null)switch(o.type){case 3:return!i;case 4:return i===!1;case 5:return isNaN(i);case 6:return isNaN(i)||1>i}return!1}function w(r,i,o,a,u,_,m){this.acceptsBooleans=i===2||i===3||i===4,this.attributeName=a,this.attributeNamespace=u,this.mustUseProperty=o,this.propertyName=r,this.type=i,this.sanitizeURL=_,this.removeEmptyString=m}var E={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(r){E[r]=new w(r,0,!1,r,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(r){var i=r[0];E[i]=new w(i,1,!1,r[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(r){E[r]=new w(r,2,!1,r.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(r){E[r]=new w(r,2,!1,r,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(r){E[r]=new w(r,3,!1,r.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(r){E[r]=new w(r,3,!0,r,null,!1,!1)}),["capture","download"].forEach(function(r){E[r]=new w(r,4,!1,r,null,!1,!1)}),["cols","rows","size","span"].forEach(function(r){E[r]=new w(r,6,!1,r,null,!1,!1)}),["rowSpan","start"].forEach(function(r){E[r]=new w(r,5,!1,r.toLowerCase(),null,!1,!1)});var L=/[\-:]([a-z])/g;function j(r){return r[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(r){var i=r.replace(L,j);E[i]=new w(i,1,!1,r,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(r){var i=r.replace(L,j);E[i]=new w(i,1,!1,r,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(r){var i=r.replace(L,j);E[i]=new w(i,1,!1,r,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(r){E[r]=new w(r,1,!1,r.toLowerCase(),null,!1,!1)}),E.xlinkHref=new w("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(r){E[r]=new w(r,1,!1,r.toLowerCase(),null,!0,!0)});function $(r,i,o,a){var u=E.hasOwnProperty(i)?E[i]:null;(u!==null?u.type!==0:a||!(2<i.length)||i[0]!=="o"&&i[0]!=="O"||i[1]!=="n"&&i[1]!=="N")&&(v(i,o,u,a)&&(o=null),a||u===null?C(i)&&(o===null?r.removeAttribute(i):r.setAttribute(i,""+o)):u.mustUseProperty?r[u.propertyName]=o===null?u.type===3?!1:"":o:(i=u.attributeName,a=u.attributeNamespace,o===null?r.removeAttribute(i):(u=u.type,o=u===3||u===4&&o===!0?"":""+o,a?r.setAttributeNS(a,i,o):r.setAttribute(i,o))))}var W=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,Q=Symbol.for("react.element"),K=Symbol.for("react.portal"),Z=Symbol.for("react.fragment"),fe=Symbol.for("react.strict_mode"),oe=Symbol.for("react.profiler"),he=Symbol.for("react.provider"),V=Symbol.for("react.context"),D=Symbol.for("react.forward_ref"),b=Symbol.for("react.suspense"),I=Symbol.for("react.suspense_list"),N=Symbol.for("react.memo"),O=Symbol.for("react.lazy"),Y=Symbol.for("react.offscreen"),B=Symbol.iterator;function F(r){return r===null||typeof r!="object"?null:(r=B&&r[B]||r["@@iterator"],typeof r=="function"?r:null)}var J=Object.assign,R;function U(r){if(R===void 0)try{throw Error()}catch(o){var i=o.stack.trim().match(/\n( *(at )?)/);R=i&&i[1]||""}return`
|
|
34
|
+
`+R+r}var le=!1;function ie(r,i){if(!r||le)return"";le=!0;var o=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(i)if(i=function(){throw Error()},Object.defineProperty(i.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(i,[])}catch(H){var a=H}Reflect.construct(r,[],i)}else{try{i.call()}catch(H){a=H}r.call(i.prototype)}else{try{throw Error()}catch(H){a=H}r()}}catch(H){if(H&&a&&typeof H.stack=="string"){for(var u=H.stack.split(`
|
|
35
|
+
`),_=a.stack.split(`
|
|
36
|
+
`),m=u.length-1,k=_.length-1;1<=m&&0<=k&&u[m]!==_[k];)k--;for(;1<=m&&0<=k;m--,k--)if(u[m]!==_[k]){if(m!==1||k!==1)do if(m--,k--,0>k||u[m]!==_[k]){var M=`
|
|
37
|
+
`+u[m].replace(" at new "," at ");return r.displayName&&M.includes("<anonymous>")&&(M=M.replace("<anonymous>",r.displayName)),M}while(1<=m&&0<=k);break}}}finally{le=!1,Error.prepareStackTrace=o}return(r=r?r.displayName||r.name:"")?U(r):""}function ue(r){switch(r.tag){case 5:return U(r.type);case 16:return U("Lazy");case 13:return U("Suspense");case 19:return U("SuspenseList");case 0:case 2:case 15:return r=ie(r.type,!1),r;case 11:return r=ie(r.type.render,!1),r;case 1:return r=ie(r.type,!0),r;default:return""}}function _e(r){if(r==null)return null;if(typeof r=="function")return r.displayName||r.name||null;if(typeof r=="string")return r;switch(r){case Z:return"Fragment";case K:return"Portal";case oe:return"Profiler";case fe:return"StrictMode";case b:return"Suspense";case I:return"SuspenseList"}if(typeof r=="object")switch(r.$$typeof){case V:return(r.displayName||"Context")+".Consumer";case he:return(r._context.displayName||"Context")+".Provider";case D:var i=r.render;return r=r.displayName,r||(r=i.displayName||i.name||"",r=r!==""?"ForwardRef("+r+")":"ForwardRef"),r;case N:return i=r.displayName||null,i!==null?i:_e(r.type)||"Memo";case O:i=r._payload,r=r._init;try{return _e(r(i))}catch{}}return null}function Re(r){var i=r.type;switch(r.tag){case 24:return"Cache";case 9:return(i.displayName||"Context")+".Consumer";case 10:return(i._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return r=i.render,r=r.displayName||r.name||"",i.displayName||(r!==""?"ForwardRef("+r+")":"ForwardRef");case 7:return"Fragment";case 5:return i;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return _e(i);case 8:return i===fe?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof i=="function")return i.displayName||i.name||null;if(typeof i=="string")return i}return null}function ge(r){switch(typeof r){case"boolean":case"number":case"string":case"undefined":return r;case"object":return r;default:return""}}function ke(r){var i=r.type;return(r=r.nodeName)&&r.toLowerCase()==="input"&&(i==="checkbox"||i==="radio")}function Ae(r){var i=ke(r)?"checked":"value",o=Object.getOwnPropertyDescriptor(r.constructor.prototype,i),a=""+r[i];if(!r.hasOwnProperty(i)&&typeof o<"u"&&typeof o.get=="function"&&typeof o.set=="function"){var u=o.get,_=o.set;return Object.defineProperty(r,i,{configurable:!0,get:function(){return u.call(this)},set:function(m){a=""+m,_.call(this,m)}}),Object.defineProperty(r,i,{enumerable:o.enumerable}),{getValue:function(){return a},setValue:function(m){a=""+m},stopTracking:function(){r._valueTracker=null,delete r[i]}}}}function Ye(r){r._valueTracker||(r._valueTracker=Ae(r))}function Fe(r){if(!r)return!1;var i=r._valueTracker;if(!i)return!0;var o=i.getValue(),a="";return r&&(a=ke(r)?r.checked?"true":"false":r.value),r=a,r!==o?(i.setValue(r),!0):!1}function be(r){if(r=r||(typeof document<"u"?document:void 0),typeof r>"u")return null;try{return r.activeElement||r.body}catch{return r.body}}function et(r,i){var o=i.checked;return J({},i,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:o??r._wrapperState.initialChecked})}function ni(r,i){var o=i.defaultValue==null?"":i.defaultValue,a=i.checked!=null?i.checked:i.defaultChecked;o=ge(i.value!=null?i.value:o),r._wrapperState={initialChecked:a,initialValue:o,controlled:i.type==="checkbox"||i.type==="radio"?i.checked!=null:i.value!=null}}function it(r,i){i=i.checked,i!=null&&$(r,"checked",i,!1)}function dr(r,i){it(r,i);var o=ge(i.value),a=i.type;if(o!=null)a==="number"?(o===0&&r.value===""||r.value!=o)&&(r.value=""+o):r.value!==""+o&&(r.value=""+o);else if(a==="submit"||a==="reset"){r.removeAttribute("value");return}i.hasOwnProperty("value")?at(r,i.type,o):i.hasOwnProperty("defaultValue")&&at(r,i.type,ge(i.defaultValue)),i.checked==null&&i.defaultChecked!=null&&(r.defaultChecked=!!i.defaultChecked)}function Ft(r,i,o){if(i.hasOwnProperty("value")||i.hasOwnProperty("defaultValue")){var a=i.type;if(!(a!=="submit"&&a!=="reset"||i.value!==void 0&&i.value!==null))return;i=""+r._wrapperState.initialValue,o||i===r.value||(r.value=i),r.defaultValue=i}o=r.name,o!==""&&(r.name=""),r.defaultChecked=!!r._wrapperState.initialChecked,o!==""&&(r.name=o)}function at(r,i,o){(i!=="number"||be(r.ownerDocument)!==r)&&(o==null?r.defaultValue=""+r._wrapperState.initialValue:r.defaultValue!==""+o&&(r.defaultValue=""+o))}var qt=Array.isArray;function Nt(r,i,o,a){if(r=r.options,i){i={};for(var u=0;u<o.length;u++)i["$"+o[u]]=!0;for(o=0;o<r.length;o++)u=i.hasOwnProperty("$"+r[o].value),r[o].selected!==u&&(r[o].selected=u),u&&a&&(r[o].defaultSelected=!0)}else{for(o=""+ge(o),i=null,u=0;u<r.length;u++){if(r[u].value===o){r[u].selected=!0,a&&(r[u].defaultSelected=!0);return}i!==null||r[u].disabled||(i=r[u])}i!==null&&(i.selected=!0)}}function fr(r,i){if(i.dangerouslySetInnerHTML!=null)throw Error(s(91));return J({},i,{value:void 0,defaultValue:void 0,children:""+r._wrapperState.initialValue})}function Ci(r,i){var o=i.value;if(o==null){if(o=i.children,i=i.defaultValue,o!=null){if(i!=null)throw Error(s(92));if(qt(o)){if(1<o.length)throw Error(s(93));o=o[0]}i=o}i==null&&(i=""),o=i}r._wrapperState={initialValue:ge(o)}}function ki(r,i){var o=ge(i.value),a=ge(i.defaultValue);o!=null&&(o=""+o,o!==r.value&&(r.value=o),i.defaultValue==null&&r.defaultValue!==o&&(r.defaultValue=o)),a!=null&&(r.defaultValue=""+a)}function bi(r){var i=r.textContent;i===r._wrapperState.initialValue&&i!==""&&i!==null&&(r.value=i)}function Ji(r){switch(r){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function xi(r,i){return r==null||r==="http://www.w3.org/1999/xhtml"?Ji(i):r==="http://www.w3.org/2000/svg"&&i==="foreignObject"?"http://www.w3.org/1999/xhtml":r}var Tr,Oe=(function(r){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(i,o,a,u){MSApp.execUnsafeLocalFunction(function(){return r(i,o,a,u)})}:r})(function(r,i){if(r.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in r)r.innerHTML=i;else{for(Tr=Tr||document.createElement("div"),Tr.innerHTML="<svg>"+i.valueOf().toString()+"</svg>",i=Tr.firstChild;r.firstChild;)r.removeChild(r.firstChild);for(;i.firstChild;)r.appendChild(i.firstChild)}});function oi(r,i){if(i){var o=r.firstChild;if(o&&o===r.lastChild&&o.nodeType===3){o.nodeValue=i;return}}r.textContent=i}var Fr={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},rr=["Webkit","ms","Moz","O"];Object.keys(Fr).forEach(function(r){rr.forEach(function(i){i=i+r.charAt(0).toUpperCase()+r.substring(1),Fr[i]=Fr[r]})});function Pr(r,i,o){return i==null||typeof i=="boolean"||i===""?"":o||typeof i!="number"||i===0||Fr.hasOwnProperty(r)&&Fr[r]?(""+i).trim():i+"px"}function Ei(r,i){r=r.style;for(var o in i)if(i.hasOwnProperty(o)){var a=o.indexOf("--")===0,u=Pr(o,i[o],a);o==="float"&&(o="cssFloat"),a?r.setProperty(o,u):r[o]=u}}var _r=J({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function pr(r,i){if(i){if(_r[r]&&(i.children!=null||i.dangerouslySetInnerHTML!=null))throw Error(s(137,r));if(i.dangerouslySetInnerHTML!=null){if(i.children!=null)throw Error(s(60));if(typeof i.dangerouslySetInnerHTML!="object"||!("__html"in i.dangerouslySetInnerHTML))throw Error(s(61))}if(i.style!=null&&typeof i.style!="object")throw Error(s(62))}}function Hr(r,i){if(r.indexOf("-")===-1)return typeof i.is=="string";switch(r){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Lr=null;function jr(r){return r=r.target||r.srcElement||window,r.correspondingUseElement&&(r=r.correspondingUseElement),r.nodeType===3?r.parentNode:r}var Zi=null,$r=null,ir=null;function Kr(r){if(r=xn(r)){if(typeof Zi!="function")throw Error(s(280));var i=r.stateNode;i&&(i=Io(i),Zi(r.stateNode,r.type,i))}}function Es(r){$r?ir?ir.push(r):ir=[r]:$r=r}function Ur(){if($r){var r=$r,i=ir;if(ir=$r=null,Kr(r),i)for(r=0;r<i.length;r++)Kr(i[r])}}function es(r,i){return r(i)}function ts(){}var rs=!1;function Ms(r,i,o){if(rs)return r(i,o);rs=!0;try{return es(r,i,o)}finally{rs=!1,($r!==null||ir!==null)&&(ts(),Ur())}}function Vr(r,i){var o=r.stateNode;if(o===null)return null;var a=Io(o);if(a===null)return null;o=a[i];e:switch(i){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(a=!a.disabled)||(r=r.type,a=!(r==="button"||r==="input"||r==="select"||r==="textarea")),r=!a;break e;default:r=!1}if(r)return null;if(o&&typeof o!="function")throw Error(s(231,i,typeof o));return o}var is=!1;if(f)try{var mr={};Object.defineProperty(mr,"passive",{get:function(){is=!0}}),window.addEventListener("test",mr,mr),window.removeEventListener("test",mr,mr)}catch{is=!1}function Rs(r,i,o,a,u,_,m,k,M){var H=Array.prototype.slice.call(arguments,3);try{i.apply(o,H)}catch(te){this.onError(te)}}var q=!1,X=null,se=!1,de=null,ye={onError:function(r){q=!0,X=r}};function ze(r,i,o,a,u,_,m,k,M){q=!1,X=null,Rs.apply(ye,arguments)}function ne(r,i,o,a,u,_,m,k,M){if(ze.apply(this,arguments),q){if(q){var H=X;q=!1,X=null}else throw Error(s(198));se||(se=!0,de=H)}}function De(r){var i=r,o=r;if(r.alternate)for(;i.return;)i=i.return;else{r=i;do i=r,(i.flags&4098)!==0&&(o=i.return),r=i.return;while(r)}return i.tag===3?o:null}function Ge(r){if(r.tag===13){var i=r.memoizedState;if(i===null&&(r=r.alternate,r!==null&&(i=r.memoizedState)),i!==null)return i.dehydrated}return null}function $e(r){if(De(r)!==r)throw Error(s(188))}function sr(r){var i=r.alternate;if(!i){if(i=De(r),i===null)throw Error(s(188));return i!==r?null:r}for(var o=r,a=i;;){var u=o.return;if(u===null)break;var _=u.alternate;if(_===null){if(a=u.return,a!==null){o=a;continue}break}if(u.child===_.child){for(_=u.child;_;){if(_===o)return $e(u),r;if(_===a)return $e(u),i;_=_.sibling}throw Error(s(188))}if(o.return!==a.return)o=u,a=_;else{for(var m=!1,k=u.child;k;){if(k===o){m=!0,o=u,a=_;break}if(k===a){m=!0,a=u,o=_;break}k=k.sibling}if(!m){for(k=_.child;k;){if(k===o){m=!0,o=_,a=u;break}if(k===a){m=!0,a=_,o=u;break}k=k.sibling}if(!m)throw Error(s(189))}}if(o.alternate!==a)throw Error(s(190))}if(o.tag!==3)throw Error(s(188));return o.stateNode.current===o?r:i}function Me(r){return r=sr(r),r!==null?Te(r):null}function Te(r){if(r.tag===5||r.tag===6)return r;for(r=r.child;r!==null;){var i=Te(r);if(i!==null)return i;r=r.sibling}return null}var Be=t.unstable_scheduleCallback,Ct=t.unstable_cancelCallback,Ht=t.unstable_shouldYield,gr=t.unstable_requestPaint,qe=t.unstable_now,Ts=t.unstable_getCurrentPriorityLevel,ss=t.unstable_ImmediatePriority,Ps=t.unstable_UserBlockingPriority,jt=t.unstable_NormalPriority,Yr=t.unstable_LowPriority,Zh=t.unstable_IdlePriority,mo=null,qr=null;function em(r){if(qr&&typeof qr.onCommitFiberRoot=="function")try{qr.onCommitFiberRoot(mo,r,void 0,(r.current.flags&128)===128)}catch{}}var Dr=Math.clz32?Math.clz32:im,tm=Math.log,rm=Math.LN2;function im(r){return r>>>=0,r===0?32:31-(tm(r)/rm|0)|0}var go=64,vo=4194304;function ln(r){switch(r&-r){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return r&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return r&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return r}}function yo(r,i){var o=r.pendingLanes;if(o===0)return 0;var a=0,u=r.suspendedLanes,_=r.pingedLanes,m=o&268435455;if(m!==0){var k=m&~u;k!==0?a=ln(k):(_&=m,_!==0&&(a=ln(_)))}else m=o&~u,m!==0?a=ln(m):_!==0&&(a=ln(_));if(a===0)return 0;if(i!==0&&i!==a&&(i&u)===0&&(u=a&-a,_=i&-i,u>=_||u===16&&(_&4194240)!==0))return i;if((a&4)!==0&&(a|=o&16),i=r.entangledLanes,i!==0)for(r=r.entanglements,i&=a;0<i;)o=31-Dr(i),u=1<<o,a|=r[o],i&=~u;return a}function sm(r,i){switch(r){case 1:case 2:case 4:return i+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return i+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function nm(r,i){for(var o=r.suspendedLanes,a=r.pingedLanes,u=r.expirationTimes,_=r.pendingLanes;0<_;){var m=31-Dr(_),k=1<<m,M=u[m];M===-1?((k&o)===0||(k&a)!==0)&&(u[m]=sm(k,i)):M<=i&&(r.expiredLanes|=k),_&=~k}}function Xl(r){return r=r.pendingLanes&-1073741825,r!==0?r:r&1073741824?1073741824:0}function eu(){var r=go;return go<<=1,(go&4194240)===0&&(go=64),r}function Gl(r){for(var i=[],o=0;31>o;o++)i.push(r);return i}function an(r,i,o){r.pendingLanes|=i,i!==536870912&&(r.suspendedLanes=0,r.pingedLanes=0),r=r.eventTimes,i=31-Dr(i),r[i]=o}function om(r,i){var o=r.pendingLanes&~i;r.pendingLanes=i,r.suspendedLanes=0,r.pingedLanes=0,r.expiredLanes&=i,r.mutableReadLanes&=i,r.entangledLanes&=i,i=r.entanglements;var a=r.eventTimes;for(r=r.expirationTimes;0<o;){var u=31-Dr(o),_=1<<u;i[u]=0,a[u]=-1,r[u]=-1,o&=~_}}function Ql(r,i){var o=r.entangledLanes|=i;for(r=r.entanglements;o;){var a=31-Dr(o),u=1<<a;u&i|r[a]&i&&(r[a]|=i),o&=~u}}var Ue=0;function tu(r){return r&=-r,1<r?4<r?(r&268435455)!==0?16:536870912:4:1}var ru,Jl,iu,su,nu,Zl=!1,So=[],Mi=null,Ri=null,Ti=null,cn=new Map,hn=new Map,Pi=[],lm="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function ou(r,i){switch(r){case"focusin":case"focusout":Mi=null;break;case"dragenter":case"dragleave":Ri=null;break;case"mouseover":case"mouseout":Ti=null;break;case"pointerover":case"pointerout":cn.delete(i.pointerId);break;case"gotpointercapture":case"lostpointercapture":hn.delete(i.pointerId)}}function un(r,i,o,a,u,_){return r===null||r.nativeEvent!==_?(r={blockedOn:i,domEventName:o,eventSystemFlags:a,nativeEvent:_,targetContainers:[u]},i!==null&&(i=xn(i),i!==null&&Jl(i)),r):(r.eventSystemFlags|=a,i=r.targetContainers,u!==null&&i.indexOf(u)===-1&&i.push(u),r)}function am(r,i,o,a,u){switch(i){case"focusin":return Mi=un(Mi,r,i,o,a,u),!0;case"dragenter":return Ri=un(Ri,r,i,o,a,u),!0;case"mouseover":return Ti=un(Ti,r,i,o,a,u),!0;case"pointerover":var _=u.pointerId;return cn.set(_,un(cn.get(_)||null,r,i,o,a,u)),!0;case"gotpointercapture":return _=u.pointerId,hn.set(_,un(hn.get(_)||null,r,i,o,a,u)),!0}return!1}function lu(r){var i=ns(r.target);if(i!==null){var o=De(i);if(o!==null){if(i=o.tag,i===13){if(i=Ge(o),i!==null){r.blockedOn=i,nu(r.priority,function(){iu(o)});return}}else if(i===3&&o.stateNode.current.memoizedState.isDehydrated){r.blockedOn=o.tag===3?o.stateNode.containerInfo:null;return}}}r.blockedOn=null}function wo(r){if(r.blockedOn!==null)return!1;for(var i=r.targetContainers;0<i.length;){var o=ta(r.domEventName,r.eventSystemFlags,i[0],r.nativeEvent);if(o===null){o=r.nativeEvent;var a=new o.constructor(o.type,o);Lr=a,o.target.dispatchEvent(a),Lr=null}else return i=xn(o),i!==null&&Jl(i),r.blockedOn=o,!1;i.shift()}return!0}function au(r,i,o){wo(r)&&o.delete(i)}function cm(){Zl=!1,Mi!==null&&wo(Mi)&&(Mi=null),Ri!==null&&wo(Ri)&&(Ri=null),Ti!==null&&wo(Ti)&&(Ti=null),cn.forEach(au),hn.forEach(au)}function dn(r,i){r.blockedOn===i&&(r.blockedOn=null,Zl||(Zl=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,cm)))}function fn(r){function i(u){return dn(u,r)}if(0<So.length){dn(So[0],r);for(var o=1;o<So.length;o++){var a=So[o];a.blockedOn===r&&(a.blockedOn=null)}}for(Mi!==null&&dn(Mi,r),Ri!==null&&dn(Ri,r),Ti!==null&&dn(Ti,r),cn.forEach(i),hn.forEach(i),o=0;o<Pi.length;o++)a=Pi[o],a.blockedOn===r&&(a.blockedOn=null);for(;0<Pi.length&&(o=Pi[0],o.blockedOn===null);)lu(o),o.blockedOn===null&&Pi.shift()}var Ls=W.ReactCurrentBatchConfig,Co=!0;function hm(r,i,o,a){var u=Ue,_=Ls.transition;Ls.transition=null;try{Ue=1,ea(r,i,o,a)}finally{Ue=u,Ls.transition=_}}function um(r,i,o,a){var u=Ue,_=Ls.transition;Ls.transition=null;try{Ue=4,ea(r,i,o,a)}finally{Ue=u,Ls.transition=_}}function ea(r,i,o,a){if(Co){var u=ta(r,i,o,a);if(u===null)va(r,i,a,ko,o),ou(r,a);else if(am(u,r,i,o,a))a.stopPropagation();else if(ou(r,a),i&4&&-1<lm.indexOf(r)){for(;u!==null;){var _=xn(u);if(_!==null&&ru(_),_=ta(r,i,o,a),_===null&&va(r,i,a,ko,o),_===u)break;u=_}u!==null&&a.stopPropagation()}else va(r,i,a,null,o)}}var ko=null;function ta(r,i,o,a){if(ko=null,r=jr(a),r=ns(r),r!==null)if(i=De(r),i===null)r=null;else if(o=i.tag,o===13){if(r=Ge(i),r!==null)return r;r=null}else if(o===3){if(i.stateNode.current.memoizedState.isDehydrated)return i.tag===3?i.stateNode.containerInfo:null;r=null}else i!==r&&(r=null);return ko=r,null}function cu(r){switch(r){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(Ts()){case ss:return 1;case Ps:return 4;case jt:case Yr:return 16;case Zh:return 536870912;default:return 16}default:return 16}}var Li=null,ra=null,bo=null;function hu(){if(bo)return bo;var r,i=ra,o=i.length,a,u="value"in Li?Li.value:Li.textContent,_=u.length;for(r=0;r<o&&i[r]===u[r];r++);var m=o-r;for(a=1;a<=m&&i[o-a]===u[_-a];a++);return bo=u.slice(r,1<a?1-a:void 0)}function xo(r){var i=r.keyCode;return"charCode"in r?(r=r.charCode,r===0&&i===13&&(r=13)):r=i,r===10&&(r=13),32<=r||r===13?r:0}function Eo(){return!0}function uu(){return!1}function nr(r){function i(o,a,u,_,m){this._reactName=o,this._targetInst=u,this.type=a,this.nativeEvent=_,this.target=m,this.currentTarget=null;for(var k in r)r.hasOwnProperty(k)&&(o=r[k],this[k]=o?o(_):_[k]);return this.isDefaultPrevented=(_.defaultPrevented!=null?_.defaultPrevented:_.returnValue===!1)?Eo:uu,this.isPropagationStopped=uu,this}return J(i.prototype,{preventDefault:function(){this.defaultPrevented=!0;var o=this.nativeEvent;o&&(o.preventDefault?o.preventDefault():typeof o.returnValue!="unknown"&&(o.returnValue=!1),this.isDefaultPrevented=Eo)},stopPropagation:function(){var o=this.nativeEvent;o&&(o.stopPropagation?o.stopPropagation():typeof o.cancelBubble!="unknown"&&(o.cancelBubble=!0),this.isPropagationStopped=Eo)},persist:function(){},isPersistent:Eo}),i}var Ds={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(r){return r.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},ia=nr(Ds),_n=J({},Ds,{view:0,detail:0}),dm=nr(_n),sa,na,pn,Mo=J({},_n,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:la,button:0,buttons:0,relatedTarget:function(r){return r.relatedTarget===void 0?r.fromElement===r.srcElement?r.toElement:r.fromElement:r.relatedTarget},movementX:function(r){return"movementX"in r?r.movementX:(r!==pn&&(pn&&r.type==="mousemove"?(sa=r.screenX-pn.screenX,na=r.screenY-pn.screenY):na=sa=0,pn=r),sa)},movementY:function(r){return"movementY"in r?r.movementY:na}}),du=nr(Mo),fm=J({},Mo,{dataTransfer:0}),_m=nr(fm),pm=J({},_n,{relatedTarget:0}),oa=nr(pm),mm=J({},Ds,{animationName:0,elapsedTime:0,pseudoElement:0}),gm=nr(mm),vm=J({},Ds,{clipboardData:function(r){return"clipboardData"in r?r.clipboardData:window.clipboardData}}),ym=nr(vm),Sm=J({},Ds,{data:0}),fu=nr(Sm),wm={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Cm={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},km={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function bm(r){var i=this.nativeEvent;return i.getModifierState?i.getModifierState(r):(r=km[r])?!!i[r]:!1}function la(){return bm}var xm=J({},_n,{key:function(r){if(r.key){var i=wm[r.key]||r.key;if(i!=="Unidentified")return i}return r.type==="keypress"?(r=xo(r),r===13?"Enter":String.fromCharCode(r)):r.type==="keydown"||r.type==="keyup"?Cm[r.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:la,charCode:function(r){return r.type==="keypress"?xo(r):0},keyCode:function(r){return r.type==="keydown"||r.type==="keyup"?r.keyCode:0},which:function(r){return r.type==="keypress"?xo(r):r.type==="keydown"||r.type==="keyup"?r.keyCode:0}}),Em=nr(xm),Mm=J({},Mo,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),_u=nr(Mm),Rm=J({},_n,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:la}),Tm=nr(Rm),Pm=J({},Ds,{propertyName:0,elapsedTime:0,pseudoElement:0}),Lm=nr(Pm),Dm=J({},Mo,{deltaX:function(r){return"deltaX"in r?r.deltaX:"wheelDeltaX"in r?-r.wheelDeltaX:0},deltaY:function(r){return"deltaY"in r?r.deltaY:"wheelDeltaY"in r?-r.wheelDeltaY:"wheelDelta"in r?-r.wheelDelta:0},deltaZ:0,deltaMode:0}),Bm=nr(Dm),Nm=[9,13,27,32],aa=f&&"CompositionEvent"in window,mn=null;f&&"documentMode"in document&&(mn=document.documentMode);var Im=f&&"TextEvent"in window&&!mn,pu=f&&(!aa||mn&&8<mn&&11>=mn),mu=" ",gu=!1;function vu(r,i){switch(r){case"keyup":return Nm.indexOf(i.keyCode)!==-1;case"keydown":return i.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function yu(r){return r=r.detail,typeof r=="object"&&"data"in r?r.data:null}var Bs=!1;function Am(r,i){switch(r){case"compositionend":return yu(i);case"keypress":return i.which!==32?null:(gu=!0,mu);case"textInput":return r=i.data,r===mu&&gu?null:r;default:return null}}function Om(r,i){if(Bs)return r==="compositionend"||!aa&&vu(r,i)?(r=hu(),bo=ra=Li=null,Bs=!1,r):null;switch(r){case"paste":return null;case"keypress":if(!(i.ctrlKey||i.altKey||i.metaKey)||i.ctrlKey&&i.altKey){if(i.char&&1<i.char.length)return i.char;if(i.which)return String.fromCharCode(i.which)}return null;case"compositionend":return pu&&i.locale!=="ko"?null:i.data;default:return null}}var zm={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Su(r){var i=r&&r.nodeName&&r.nodeName.toLowerCase();return i==="input"?!!zm[r.type]:i==="textarea"}function wu(r,i,o,a){Es(a),i=Do(i,"onChange"),0<i.length&&(o=new ia("onChange","change",null,o,a),r.push({event:o,listeners:i}))}var gn=null,vn=null;function Wm(r){Wu(r,0)}function Ro(r){var i=zs(r);if(Fe(i))return r}function Fm(r,i){if(r==="change")return i}var Cu=!1;if(f){var ca;if(f){var ha="oninput"in document;if(!ha){var ku=document.createElement("div");ku.setAttribute("oninput","return;"),ha=typeof ku.oninput=="function"}ca=ha}else ca=!1;Cu=ca&&(!document.documentMode||9<document.documentMode)}function bu(){gn&&(gn.detachEvent("onpropertychange",xu),vn=gn=null)}function xu(r){if(r.propertyName==="value"&&Ro(vn)){var i=[];wu(i,vn,r,jr(r)),Ms(Wm,i)}}function Hm(r,i,o){r==="focusin"?(bu(),gn=i,vn=o,gn.attachEvent("onpropertychange",xu)):r==="focusout"&&bu()}function jm(r){if(r==="selectionchange"||r==="keyup"||r==="keydown")return Ro(vn)}function $m(r,i){if(r==="click")return Ro(i)}function Km(r,i){if(r==="input"||r==="change")return Ro(i)}function Um(r,i){return r===i&&(r!==0||1/r===1/i)||r!==r&&i!==i}var Br=typeof Object.is=="function"?Object.is:Um;function yn(r,i){if(Br(r,i))return!0;if(typeof r!="object"||r===null||typeof i!="object"||i===null)return!1;var o=Object.keys(r),a=Object.keys(i);if(o.length!==a.length)return!1;for(a=0;a<o.length;a++){var u=o[a];if(!p.call(i,u)||!Br(r[u],i[u]))return!1}return!0}function Eu(r){for(;r&&r.firstChild;)r=r.firstChild;return r}function Mu(r,i){var o=Eu(r);r=0;for(var a;o;){if(o.nodeType===3){if(a=r+o.textContent.length,r<=i&&a>=i)return{node:o,offset:i-r};r=a}e:{for(;o;){if(o.nextSibling){o=o.nextSibling;break e}o=o.parentNode}o=void 0}o=Eu(o)}}function Ru(r,i){return r&&i?r===i?!0:r&&r.nodeType===3?!1:i&&i.nodeType===3?Ru(r,i.parentNode):"contains"in r?r.contains(i):r.compareDocumentPosition?!!(r.compareDocumentPosition(i)&16):!1:!1}function Tu(){for(var r=window,i=be();i instanceof r.HTMLIFrameElement;){try{var o=typeof i.contentWindow.location.href=="string"}catch{o=!1}if(o)r=i.contentWindow;else break;i=be(r.document)}return i}function ua(r){var i=r&&r.nodeName&&r.nodeName.toLowerCase();return i&&(i==="input"&&(r.type==="text"||r.type==="search"||r.type==="tel"||r.type==="url"||r.type==="password")||i==="textarea"||r.contentEditable==="true")}function Vm(r){var i=Tu(),o=r.focusedElem,a=r.selectionRange;if(i!==o&&o&&o.ownerDocument&&Ru(o.ownerDocument.documentElement,o)){if(a!==null&&ua(o)){if(i=a.start,r=a.end,r===void 0&&(r=i),"selectionStart"in o)o.selectionStart=i,o.selectionEnd=Math.min(r,o.value.length);else if(r=(i=o.ownerDocument||document)&&i.defaultView||window,r.getSelection){r=r.getSelection();var u=o.textContent.length,_=Math.min(a.start,u);a=a.end===void 0?_:Math.min(a.end,u),!r.extend&&_>a&&(u=a,a=_,_=u),u=Mu(o,_);var m=Mu(o,a);u&&m&&(r.rangeCount!==1||r.anchorNode!==u.node||r.anchorOffset!==u.offset||r.focusNode!==m.node||r.focusOffset!==m.offset)&&(i=i.createRange(),i.setStart(u.node,u.offset),r.removeAllRanges(),_>a?(r.addRange(i),r.extend(m.node,m.offset)):(i.setEnd(m.node,m.offset),r.addRange(i)))}}for(i=[],r=o;r=r.parentNode;)r.nodeType===1&&i.push({element:r,left:r.scrollLeft,top:r.scrollTop});for(typeof o.focus=="function"&&o.focus(),o=0;o<i.length;o++)r=i[o],r.element.scrollLeft=r.left,r.element.scrollTop=r.top}}var Ym=f&&"documentMode"in document&&11>=document.documentMode,Ns=null,da=null,Sn=null,fa=!1;function Pu(r,i,o){var a=o.window===o?o.document:o.nodeType===9?o:o.ownerDocument;fa||Ns==null||Ns!==be(a)||(a=Ns,"selectionStart"in a&&ua(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),Sn&&yn(Sn,a)||(Sn=a,a=Do(da,"onSelect"),0<a.length&&(i=new ia("onSelect","select",null,i,o),r.push({event:i,listeners:a}),i.target=Ns)))}function To(r,i){var o={};return o[r.toLowerCase()]=i.toLowerCase(),o["Webkit"+r]="webkit"+i,o["Moz"+r]="moz"+i,o}var Is={animationend:To("Animation","AnimationEnd"),animationiteration:To("Animation","AnimationIteration"),animationstart:To("Animation","AnimationStart"),transitionend:To("Transition","TransitionEnd")},_a={},Lu={};f&&(Lu=document.createElement("div").style,"AnimationEvent"in window||(delete Is.animationend.animation,delete Is.animationiteration.animation,delete Is.animationstart.animation),"TransitionEvent"in window||delete Is.transitionend.transition);function Po(r){if(_a[r])return _a[r];if(!Is[r])return r;var i=Is[r],o;for(o in i)if(i.hasOwnProperty(o)&&o in Lu)return _a[r]=i[o];return r}var Du=Po("animationend"),Bu=Po("animationiteration"),Nu=Po("animationstart"),Iu=Po("transitionend"),Au=new Map,Ou="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Di(r,i){Au.set(r,i),c(i,[r])}for(var pa=0;pa<Ou.length;pa++){var ma=Ou[pa],qm=ma.toLowerCase(),Xm=ma[0].toUpperCase()+ma.slice(1);Di(qm,"on"+Xm)}Di(Du,"onAnimationEnd"),Di(Bu,"onAnimationIteration"),Di(Nu,"onAnimationStart"),Di("dblclick","onDoubleClick"),Di("focusin","onFocus"),Di("focusout","onBlur"),Di(Iu,"onTransitionEnd"),h("onMouseEnter",["mouseout","mouseover"]),h("onMouseLeave",["mouseout","mouseover"]),h("onPointerEnter",["pointerout","pointerover"]),h("onPointerLeave",["pointerout","pointerover"]),c("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),c("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),c("onBeforeInput",["compositionend","keypress","textInput","paste"]),c("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),c("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),c("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var wn="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Gm=new Set("cancel close invalid load scroll toggle".split(" ").concat(wn));function zu(r,i,o){var a=r.type||"unknown-event";r.currentTarget=o,ne(a,i,void 0,r),r.currentTarget=null}function Wu(r,i){i=(i&4)!==0;for(var o=0;o<r.length;o++){var a=r[o],u=a.event;a=a.listeners;e:{var _=void 0;if(i)for(var m=a.length-1;0<=m;m--){var k=a[m],M=k.instance,H=k.currentTarget;if(k=k.listener,M!==_&&u.isPropagationStopped())break e;zu(u,k,H),_=M}else for(m=0;m<a.length;m++){if(k=a[m],M=k.instance,H=k.currentTarget,k=k.listener,M!==_&&u.isPropagationStopped())break e;zu(u,k,H),_=M}}}if(se)throw r=de,se=!1,de=null,r}function Qe(r,i){var o=i[ba];o===void 0&&(o=i[ba]=new Set);var a=r+"__bubble";o.has(a)||(Fu(i,r,2,!1),o.add(a))}function ga(r,i,o){var a=0;i&&(a|=4),Fu(o,r,a,i)}var Lo="_reactListening"+Math.random().toString(36).slice(2);function Cn(r){if(!r[Lo]){r[Lo]=!0,n.forEach(function(o){o!=="selectionchange"&&(Gm.has(o)||ga(o,!1,r),ga(o,!0,r))});var i=r.nodeType===9?r:r.ownerDocument;i===null||i[Lo]||(i[Lo]=!0,ga("selectionchange",!1,i))}}function Fu(r,i,o,a){switch(cu(i)){case 1:var u=hm;break;case 4:u=um;break;default:u=ea}o=u.bind(null,i,o,r),u=void 0,!is||i!=="touchstart"&&i!=="touchmove"&&i!=="wheel"||(u=!0),a?u!==void 0?r.addEventListener(i,o,{capture:!0,passive:u}):r.addEventListener(i,o,!0):u!==void 0?r.addEventListener(i,o,{passive:u}):r.addEventListener(i,o,!1)}function va(r,i,o,a,u){var _=a;if((i&1)===0&&(i&2)===0&&a!==null)e:for(;;){if(a===null)return;var m=a.tag;if(m===3||m===4){var k=a.stateNode.containerInfo;if(k===u||k.nodeType===8&&k.parentNode===u)break;if(m===4)for(m=a.return;m!==null;){var M=m.tag;if((M===3||M===4)&&(M=m.stateNode.containerInfo,M===u||M.nodeType===8&&M.parentNode===u))return;m=m.return}for(;k!==null;){if(m=ns(k),m===null)return;if(M=m.tag,M===5||M===6){a=_=m;continue e}k=k.parentNode}}a=a.return}Ms(function(){var H=_,te=jr(o),re=[];e:{var ee=Au.get(r);if(ee!==void 0){var me=ia,Se=r;switch(r){case"keypress":if(xo(o)===0)break e;case"keydown":case"keyup":me=Em;break;case"focusin":Se="focus",me=oa;break;case"focusout":Se="blur",me=oa;break;case"beforeblur":case"afterblur":me=oa;break;case"click":if(o.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":me=du;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":me=_m;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":me=Tm;break;case Du:case Bu:case Nu:me=gm;break;case Iu:me=Lm;break;case"scroll":me=dm;break;case"wheel":me=Bm;break;case"copy":case"cut":case"paste":me=ym;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":me=_u}var we=(i&4)!==0,dt=!we&&r==="scroll",A=we?ee!==null?ee+"Capture":null:ee;we=[];for(var P=H,z;P!==null;){z=P;var ae=z.stateNode;if(z.tag===5&&ae!==null&&(z=ae,A!==null&&(ae=Vr(P,A),ae!=null&&we.push(kn(P,ae,z)))),dt)break;P=P.return}0<we.length&&(ee=new me(ee,Se,null,o,te),re.push({event:ee,listeners:we}))}}if((i&7)===0){e:{if(ee=r==="mouseover"||r==="pointerover",me=r==="mouseout"||r==="pointerout",ee&&o!==Lr&&(Se=o.relatedTarget||o.fromElement)&&(ns(Se)||Se[li]))break e;if((me||ee)&&(ee=te.window===te?te:(ee=te.ownerDocument)?ee.defaultView||ee.parentWindow:window,me?(Se=o.relatedTarget||o.toElement,me=H,Se=Se?ns(Se):null,Se!==null&&(dt=De(Se),Se!==dt||Se.tag!==5&&Se.tag!==6)&&(Se=null)):(me=null,Se=H),me!==Se)){if(we=du,ae="onMouseLeave",A="onMouseEnter",P="mouse",(r==="pointerout"||r==="pointerover")&&(we=_u,ae="onPointerLeave",A="onPointerEnter",P="pointer"),dt=me==null?ee:zs(me),z=Se==null?ee:zs(Se),ee=new we(ae,P+"leave",me,o,te),ee.target=dt,ee.relatedTarget=z,ae=null,ns(te)===H&&(we=new we(A,P+"enter",Se,o,te),we.target=z,we.relatedTarget=dt,ae=we),dt=ae,me&&Se)t:{for(we=me,A=Se,P=0,z=we;z;z=As(z))P++;for(z=0,ae=A;ae;ae=As(ae))z++;for(;0<P-z;)we=As(we),P--;for(;0<z-P;)A=As(A),z--;for(;P--;){if(we===A||A!==null&&we===A.alternate)break t;we=As(we),A=As(A)}we=null}else we=null;me!==null&&Hu(re,ee,me,we,!1),Se!==null&&dt!==null&&Hu(re,dt,Se,we,!0)}}e:{if(ee=H?zs(H):window,me=ee.nodeName&&ee.nodeName.toLowerCase(),me==="select"||me==="input"&&ee.type==="file")var Ce=Fm;else if(Su(ee))if(Cu)Ce=Km;else{Ce=jm;var xe=Hm}else(me=ee.nodeName)&&me.toLowerCase()==="input"&&(ee.type==="checkbox"||ee.type==="radio")&&(Ce=$m);if(Ce&&(Ce=Ce(r,H))){wu(re,Ce,o,te);break e}xe&&xe(r,ee,H),r==="focusout"&&(xe=ee._wrapperState)&&xe.controlled&&ee.type==="number"&&at(ee,"number",ee.value)}switch(xe=H?zs(H):window,r){case"focusin":(Su(xe)||xe.contentEditable==="true")&&(Ns=xe,da=H,Sn=null);break;case"focusout":Sn=da=Ns=null;break;case"mousedown":fa=!0;break;case"contextmenu":case"mouseup":case"dragend":fa=!1,Pu(re,o,te);break;case"selectionchange":if(Ym)break;case"keydown":case"keyup":Pu(re,o,te)}var Ee;if(aa)e:{switch(r){case"compositionstart":var Pe="onCompositionStart";break e;case"compositionend":Pe="onCompositionEnd";break e;case"compositionupdate":Pe="onCompositionUpdate";break e}Pe=void 0}else Bs?vu(r,o)&&(Pe="onCompositionEnd"):r==="keydown"&&o.keyCode===229&&(Pe="onCompositionStart");Pe&&(pu&&o.locale!=="ko"&&(Bs||Pe!=="onCompositionStart"?Pe==="onCompositionEnd"&&Bs&&(Ee=hu()):(Li=te,ra="value"in Li?Li.value:Li.textContent,Bs=!0)),xe=Do(H,Pe),0<xe.length&&(Pe=new fu(Pe,r,null,o,te),re.push({event:Pe,listeners:xe}),Ee?Pe.data=Ee:(Ee=yu(o),Ee!==null&&(Pe.data=Ee)))),(Ee=Im?Am(r,o):Om(r,o))&&(H=Do(H,"onBeforeInput"),0<H.length&&(te=new fu("onBeforeInput","beforeinput",null,o,te),re.push({event:te,listeners:H}),te.data=Ee))}Wu(re,i)})}function kn(r,i,o){return{instance:r,listener:i,currentTarget:o}}function Do(r,i){for(var o=i+"Capture",a=[];r!==null;){var u=r,_=u.stateNode;u.tag===5&&_!==null&&(u=_,_=Vr(r,o),_!=null&&a.unshift(kn(r,_,u)),_=Vr(r,i),_!=null&&a.push(kn(r,_,u))),r=r.return}return a}function As(r){if(r===null)return null;do r=r.return;while(r&&r.tag!==5);return r||null}function Hu(r,i,o,a,u){for(var _=i._reactName,m=[];o!==null&&o!==a;){var k=o,M=k.alternate,H=k.stateNode;if(M!==null&&M===a)break;k.tag===5&&H!==null&&(k=H,u?(M=Vr(o,_),M!=null&&m.unshift(kn(o,M,k))):u||(M=Vr(o,_),M!=null&&m.push(kn(o,M,k)))),o=o.return}m.length!==0&&r.push({event:i,listeners:m})}var Qm=/\r\n?/g,Jm=/\u0000|\uFFFD/g;function ju(r){return(typeof r=="string"?r:""+r).replace(Qm,`
|
|
38
|
+
`).replace(Jm,"")}function Bo(r,i,o){if(i=ju(i),ju(r)!==i&&o)throw Error(s(425))}function No(){}var ya=null,Sa=null;function wa(r,i){return r==="textarea"||r==="noscript"||typeof i.children=="string"||typeof i.children=="number"||typeof i.dangerouslySetInnerHTML=="object"&&i.dangerouslySetInnerHTML!==null&&i.dangerouslySetInnerHTML.__html!=null}var Ca=typeof setTimeout=="function"?setTimeout:void 0,Zm=typeof clearTimeout=="function"?clearTimeout:void 0,$u=typeof Promise=="function"?Promise:void 0,eg=typeof queueMicrotask=="function"?queueMicrotask:typeof $u<"u"?function(r){return $u.resolve(null).then(r).catch(tg)}:Ca;function tg(r){setTimeout(function(){throw r})}function ka(r,i){var o=i,a=0;do{var u=o.nextSibling;if(r.removeChild(o),u&&u.nodeType===8)if(o=u.data,o==="/$"){if(a===0){r.removeChild(u),fn(i);return}a--}else o!=="$"&&o!=="$?"&&o!=="$!"||a++;o=u}while(o);fn(i)}function Bi(r){for(;r!=null;r=r.nextSibling){var i=r.nodeType;if(i===1||i===3)break;if(i===8){if(i=r.data,i==="$"||i==="$!"||i==="$?")break;if(i==="/$")return null}}return r}function Ku(r){r=r.previousSibling;for(var i=0;r;){if(r.nodeType===8){var o=r.data;if(o==="$"||o==="$!"||o==="$?"){if(i===0)return r;i--}else o==="/$"&&i++}r=r.previousSibling}return null}var Os=Math.random().toString(36).slice(2),Xr="__reactFiber$"+Os,bn="__reactProps$"+Os,li="__reactContainer$"+Os,ba="__reactEvents$"+Os,rg="__reactListeners$"+Os,ig="__reactHandles$"+Os;function ns(r){var i=r[Xr];if(i)return i;for(var o=r.parentNode;o;){if(i=o[li]||o[Xr]){if(o=i.alternate,i.child!==null||o!==null&&o.child!==null)for(r=Ku(r);r!==null;){if(o=r[Xr])return o;r=Ku(r)}return i}r=o,o=r.parentNode}return null}function xn(r){return r=r[Xr]||r[li],!r||r.tag!==5&&r.tag!==6&&r.tag!==13&&r.tag!==3?null:r}function zs(r){if(r.tag===5||r.tag===6)return r.stateNode;throw Error(s(33))}function Io(r){return r[bn]||null}var xa=[],Ws=-1;function Ni(r){return{current:r}}function Je(r){0>Ws||(r.current=xa[Ws],xa[Ws]=null,Ws--)}function Xe(r,i){Ws++,xa[Ws]=r.current,r.current=i}var Ii={},It=Ni(Ii),Xt=Ni(!1),os=Ii;function Fs(r,i){var o=r.type.contextTypes;if(!o)return Ii;var a=r.stateNode;if(a&&a.__reactInternalMemoizedUnmaskedChildContext===i)return a.__reactInternalMemoizedMaskedChildContext;var u={},_;for(_ in o)u[_]=i[_];return a&&(r=r.stateNode,r.__reactInternalMemoizedUnmaskedChildContext=i,r.__reactInternalMemoizedMaskedChildContext=u),u}function Gt(r){return r=r.childContextTypes,r!=null}function Ao(){Je(Xt),Je(It)}function Uu(r,i,o){if(It.current!==Ii)throw Error(s(168));Xe(It,i),Xe(Xt,o)}function Vu(r,i,o){var a=r.stateNode;if(i=i.childContextTypes,typeof a.getChildContext!="function")return o;a=a.getChildContext();for(var u in a)if(!(u in i))throw Error(s(108,Re(r)||"Unknown",u));return J({},o,a)}function Oo(r){return r=(r=r.stateNode)&&r.__reactInternalMemoizedMergedChildContext||Ii,os=It.current,Xe(It,r),Xe(Xt,Xt.current),!0}function Yu(r,i,o){var a=r.stateNode;if(!a)throw Error(s(169));o?(r=Vu(r,i,os),a.__reactInternalMemoizedMergedChildContext=r,Je(Xt),Je(It),Xe(It,r)):Je(Xt),Xe(Xt,o)}var ai=null,zo=!1,Ea=!1;function qu(r){ai===null?ai=[r]:ai.push(r)}function sg(r){zo=!0,qu(r)}function Ai(){if(!Ea&&ai!==null){Ea=!0;var r=0,i=Ue;try{var o=ai;for(Ue=1;r<o.length;r++){var a=o[r];do a=a(!0);while(a!==null)}ai=null,zo=!1}catch(u){throw ai!==null&&(ai=ai.slice(r+1)),Be(ss,Ai),u}finally{Ue=i,Ea=!1}}return null}var Hs=[],js=0,Wo=null,Fo=0,vr=[],yr=0,ls=null,ci=1,hi="";function as(r,i){Hs[js++]=Fo,Hs[js++]=Wo,Wo=r,Fo=i}function Xu(r,i,o){vr[yr++]=ci,vr[yr++]=hi,vr[yr++]=ls,ls=r;var a=ci;r=hi;var u=32-Dr(a)-1;a&=~(1<<u),o+=1;var _=32-Dr(i)+u;if(30<_){var m=u-u%5;_=(a&(1<<m)-1).toString(32),a>>=m,u-=m,ci=1<<32-Dr(i)+u|o<<u|a,hi=_+r}else ci=1<<_|o<<u|a,hi=r}function Ma(r){r.return!==null&&(as(r,1),Xu(r,1,0))}function Ra(r){for(;r===Wo;)Wo=Hs[--js],Hs[js]=null,Fo=Hs[--js],Hs[js]=null;for(;r===ls;)ls=vr[--yr],vr[yr]=null,hi=vr[--yr],vr[yr]=null,ci=vr[--yr],vr[yr]=null}var or=null,lr=null,tt=!1,Nr=null;function Gu(r,i){var o=kr(5,null,null,0);o.elementType="DELETED",o.stateNode=i,o.return=r,i=r.deletions,i===null?(r.deletions=[o],r.flags|=16):i.push(o)}function Qu(r,i){switch(r.tag){case 5:var o=r.type;return i=i.nodeType!==1||o.toLowerCase()!==i.nodeName.toLowerCase()?null:i,i!==null?(r.stateNode=i,or=r,lr=Bi(i.firstChild),!0):!1;case 6:return i=r.pendingProps===""||i.nodeType!==3?null:i,i!==null?(r.stateNode=i,or=r,lr=null,!0):!1;case 13:return i=i.nodeType!==8?null:i,i!==null?(o=ls!==null?{id:ci,overflow:hi}:null,r.memoizedState={dehydrated:i,treeContext:o,retryLane:1073741824},o=kr(18,null,null,0),o.stateNode=i,o.return=r,r.child=o,or=r,lr=null,!0):!1;default:return!1}}function Ta(r){return(r.mode&1)!==0&&(r.flags&128)===0}function Pa(r){if(tt){var i=lr;if(i){var o=i;if(!Qu(r,i)){if(Ta(r))throw Error(s(418));i=Bi(o.nextSibling);var a=or;i&&Qu(r,i)?Gu(a,o):(r.flags=r.flags&-4097|2,tt=!1,or=r)}}else{if(Ta(r))throw Error(s(418));r.flags=r.flags&-4097|2,tt=!1,or=r}}}function Ju(r){for(r=r.return;r!==null&&r.tag!==5&&r.tag!==3&&r.tag!==13;)r=r.return;or=r}function Ho(r){if(r!==or)return!1;if(!tt)return Ju(r),tt=!0,!1;var i;if((i=r.tag!==3)&&!(i=r.tag!==5)&&(i=r.type,i=i!=="head"&&i!=="body"&&!wa(r.type,r.memoizedProps)),i&&(i=lr)){if(Ta(r))throw Zu(),Error(s(418));for(;i;)Gu(r,i),i=Bi(i.nextSibling)}if(Ju(r),r.tag===13){if(r=r.memoizedState,r=r!==null?r.dehydrated:null,!r)throw Error(s(317));e:{for(r=r.nextSibling,i=0;r;){if(r.nodeType===8){var o=r.data;if(o==="/$"){if(i===0){lr=Bi(r.nextSibling);break e}i--}else o!=="$"&&o!=="$!"&&o!=="$?"||i++}r=r.nextSibling}lr=null}}else lr=or?Bi(r.stateNode.nextSibling):null;return!0}function Zu(){for(var r=lr;r;)r=Bi(r.nextSibling)}function $s(){lr=or=null,tt=!1}function La(r){Nr===null?Nr=[r]:Nr.push(r)}var ng=W.ReactCurrentBatchConfig;function En(r,i,o){if(r=o.ref,r!==null&&typeof r!="function"&&typeof r!="object"){if(o._owner){if(o=o._owner,o){if(o.tag!==1)throw Error(s(309));var a=o.stateNode}if(!a)throw Error(s(147,r));var u=a,_=""+r;return i!==null&&i.ref!==null&&typeof i.ref=="function"&&i.ref._stringRef===_?i.ref:(i=function(m){var k=u.refs;m===null?delete k[_]:k[_]=m},i._stringRef=_,i)}if(typeof r!="string")throw Error(s(284));if(!o._owner)throw Error(s(290,r))}return r}function jo(r,i){throw r=Object.prototype.toString.call(i),Error(s(31,r==="[object Object]"?"object with keys {"+Object.keys(i).join(", ")+"}":r))}function ed(r){var i=r._init;return i(r._payload)}function td(r){function i(A,P){if(r){var z=A.deletions;z===null?(A.deletions=[P],A.flags|=16):z.push(P)}}function o(A,P){if(!r)return null;for(;P!==null;)i(A,P),P=P.sibling;return null}function a(A,P){for(A=new Map;P!==null;)P.key!==null?A.set(P.key,P):A.set(P.index,P),P=P.sibling;return A}function u(A,P){return A=Ki(A,P),A.index=0,A.sibling=null,A}function _(A,P,z){return A.index=z,r?(z=A.alternate,z!==null?(z=z.index,z<P?(A.flags|=2,P):z):(A.flags|=2,P)):(A.flags|=1048576,P)}function m(A){return r&&A.alternate===null&&(A.flags|=2),A}function k(A,P,z,ae){return P===null||P.tag!==6?(P=Cc(z,A.mode,ae),P.return=A,P):(P=u(P,z),P.return=A,P)}function M(A,P,z,ae){var Ce=z.type;return Ce===Z?te(A,P,z.props.children,ae,z.key):P!==null&&(P.elementType===Ce||typeof Ce=="object"&&Ce!==null&&Ce.$$typeof===O&&ed(Ce)===P.type)?(ae=u(P,z.props),ae.ref=En(A,P,z),ae.return=A,ae):(ae=dl(z.type,z.key,z.props,null,A.mode,ae),ae.ref=En(A,P,z),ae.return=A,ae)}function H(A,P,z,ae){return P===null||P.tag!==4||P.stateNode.containerInfo!==z.containerInfo||P.stateNode.implementation!==z.implementation?(P=kc(z,A.mode,ae),P.return=A,P):(P=u(P,z.children||[]),P.return=A,P)}function te(A,P,z,ae,Ce){return P===null||P.tag!==7?(P=ms(z,A.mode,ae,Ce),P.return=A,P):(P=u(P,z),P.return=A,P)}function re(A,P,z){if(typeof P=="string"&&P!==""||typeof P=="number")return P=Cc(""+P,A.mode,z),P.return=A,P;if(typeof P=="object"&&P!==null){switch(P.$$typeof){case Q:return z=dl(P.type,P.key,P.props,null,A.mode,z),z.ref=En(A,null,P),z.return=A,z;case K:return P=kc(P,A.mode,z),P.return=A,P;case O:var ae=P._init;return re(A,ae(P._payload),z)}if(qt(P)||F(P))return P=ms(P,A.mode,z,null),P.return=A,P;jo(A,P)}return null}function ee(A,P,z,ae){var Ce=P!==null?P.key:null;if(typeof z=="string"&&z!==""||typeof z=="number")return Ce!==null?null:k(A,P,""+z,ae);if(typeof z=="object"&&z!==null){switch(z.$$typeof){case Q:return z.key===Ce?M(A,P,z,ae):null;case K:return z.key===Ce?H(A,P,z,ae):null;case O:return Ce=z._init,ee(A,P,Ce(z._payload),ae)}if(qt(z)||F(z))return Ce!==null?null:te(A,P,z,ae,null);jo(A,z)}return null}function me(A,P,z,ae,Ce){if(typeof ae=="string"&&ae!==""||typeof ae=="number")return A=A.get(z)||null,k(P,A,""+ae,Ce);if(typeof ae=="object"&&ae!==null){switch(ae.$$typeof){case Q:return A=A.get(ae.key===null?z:ae.key)||null,M(P,A,ae,Ce);case K:return A=A.get(ae.key===null?z:ae.key)||null,H(P,A,ae,Ce);case O:var xe=ae._init;return me(A,P,z,xe(ae._payload),Ce)}if(qt(ae)||F(ae))return A=A.get(z)||null,te(P,A,ae,Ce,null);jo(P,ae)}return null}function Se(A,P,z,ae){for(var Ce=null,xe=null,Ee=P,Pe=P=0,xt=null;Ee!==null&&Pe<z.length;Pe++){Ee.index>Pe?(xt=Ee,Ee=null):xt=Ee.sibling;var je=ee(A,Ee,z[Pe],ae);if(je===null){Ee===null&&(Ee=xt);break}r&&Ee&&je.alternate===null&&i(A,Ee),P=_(je,P,Pe),xe===null?Ce=je:xe.sibling=je,xe=je,Ee=xt}if(Pe===z.length)return o(A,Ee),tt&&as(A,Pe),Ce;if(Ee===null){for(;Pe<z.length;Pe++)Ee=re(A,z[Pe],ae),Ee!==null&&(P=_(Ee,P,Pe),xe===null?Ce=Ee:xe.sibling=Ee,xe=Ee);return tt&&as(A,Pe),Ce}for(Ee=a(A,Ee);Pe<z.length;Pe++)xt=me(Ee,A,Pe,z[Pe],ae),xt!==null&&(r&&xt.alternate!==null&&Ee.delete(xt.key===null?Pe:xt.key),P=_(xt,P,Pe),xe===null?Ce=xt:xe.sibling=xt,xe=xt);return r&&Ee.forEach(function(Ui){return i(A,Ui)}),tt&&as(A,Pe),Ce}function we(A,P,z,ae){var Ce=F(z);if(typeof Ce!="function")throw Error(s(150));if(z=Ce.call(z),z==null)throw Error(s(151));for(var xe=Ce=null,Ee=P,Pe=P=0,xt=null,je=z.next();Ee!==null&&!je.done;Pe++,je=z.next()){Ee.index>Pe?(xt=Ee,Ee=null):xt=Ee.sibling;var Ui=ee(A,Ee,je.value,ae);if(Ui===null){Ee===null&&(Ee=xt);break}r&&Ee&&Ui.alternate===null&&i(A,Ee),P=_(Ui,P,Pe),xe===null?Ce=Ui:xe.sibling=Ui,xe=Ui,Ee=xt}if(je.done)return o(A,Ee),tt&&as(A,Pe),Ce;if(Ee===null){for(;!je.done;Pe++,je=z.next())je=re(A,je.value,ae),je!==null&&(P=_(je,P,Pe),xe===null?Ce=je:xe.sibling=je,xe=je);return tt&&as(A,Pe),Ce}for(Ee=a(A,Ee);!je.done;Pe++,je=z.next())je=me(Ee,A,Pe,je.value,ae),je!==null&&(r&&je.alternate!==null&&Ee.delete(je.key===null?Pe:je.key),P=_(je,P,Pe),xe===null?Ce=je:xe.sibling=je,xe=je);return r&&Ee.forEach(function(zg){return i(A,zg)}),tt&&as(A,Pe),Ce}function dt(A,P,z,ae){if(typeof z=="object"&&z!==null&&z.type===Z&&z.key===null&&(z=z.props.children),typeof z=="object"&&z!==null){switch(z.$$typeof){case Q:e:{for(var Ce=z.key,xe=P;xe!==null;){if(xe.key===Ce){if(Ce=z.type,Ce===Z){if(xe.tag===7){o(A,xe.sibling),P=u(xe,z.props.children),P.return=A,A=P;break e}}else if(xe.elementType===Ce||typeof Ce=="object"&&Ce!==null&&Ce.$$typeof===O&&ed(Ce)===xe.type){o(A,xe.sibling),P=u(xe,z.props),P.ref=En(A,xe,z),P.return=A,A=P;break e}o(A,xe);break}else i(A,xe);xe=xe.sibling}z.type===Z?(P=ms(z.props.children,A.mode,ae,z.key),P.return=A,A=P):(ae=dl(z.type,z.key,z.props,null,A.mode,ae),ae.ref=En(A,P,z),ae.return=A,A=ae)}return m(A);case K:e:{for(xe=z.key;P!==null;){if(P.key===xe)if(P.tag===4&&P.stateNode.containerInfo===z.containerInfo&&P.stateNode.implementation===z.implementation){o(A,P.sibling),P=u(P,z.children||[]),P.return=A,A=P;break e}else{o(A,P);break}else i(A,P);P=P.sibling}P=kc(z,A.mode,ae),P.return=A,A=P}return m(A);case O:return xe=z._init,dt(A,P,xe(z._payload),ae)}if(qt(z))return Se(A,P,z,ae);if(F(z))return we(A,P,z,ae);jo(A,z)}return typeof z=="string"&&z!==""||typeof z=="number"?(z=""+z,P!==null&&P.tag===6?(o(A,P.sibling),P=u(P,z),P.return=A,A=P):(o(A,P),P=Cc(z,A.mode,ae),P.return=A,A=P),m(A)):o(A,P)}return dt}var Ks=td(!0),rd=td(!1),$o=Ni(null),Ko=null,Us=null,Da=null;function Ba(){Da=Us=Ko=null}function Na(r){var i=$o.current;Je($o),r._currentValue=i}function Ia(r,i,o){for(;r!==null;){var a=r.alternate;if((r.childLanes&i)!==i?(r.childLanes|=i,a!==null&&(a.childLanes|=i)):a!==null&&(a.childLanes&i)!==i&&(a.childLanes|=i),r===o)break;r=r.return}}function Vs(r,i){Ko=r,Da=Us=null,r=r.dependencies,r!==null&&r.firstContext!==null&&((r.lanes&i)!==0&&(Qt=!0),r.firstContext=null)}function Sr(r){var i=r._currentValue;if(Da!==r)if(r={context:r,memoizedValue:i,next:null},Us===null){if(Ko===null)throw Error(s(308));Us=r,Ko.dependencies={lanes:0,firstContext:r}}else Us=Us.next=r;return i}var cs=null;function Aa(r){cs===null?cs=[r]:cs.push(r)}function id(r,i,o,a){var u=i.interleaved;return u===null?(o.next=o,Aa(i)):(o.next=u.next,u.next=o),i.interleaved=o,ui(r,a)}function ui(r,i){r.lanes|=i;var o=r.alternate;for(o!==null&&(o.lanes|=i),o=r,r=r.return;r!==null;)r.childLanes|=i,o=r.alternate,o!==null&&(o.childLanes|=i),o=r,r=r.return;return o.tag===3?o.stateNode:null}var Oi=!1;function Oa(r){r.updateQueue={baseState:r.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function sd(r,i){r=r.updateQueue,i.updateQueue===r&&(i.updateQueue={baseState:r.baseState,firstBaseUpdate:r.firstBaseUpdate,lastBaseUpdate:r.lastBaseUpdate,shared:r.shared,effects:r.effects})}function di(r,i){return{eventTime:r,lane:i,tag:0,payload:null,callback:null,next:null}}function zi(r,i,o){var a=r.updateQueue;if(a===null)return null;if(a=a.shared,(He&2)!==0){var u=a.pending;return u===null?i.next=i:(i.next=u.next,u.next=i),a.pending=i,ui(r,o)}return u=a.interleaved,u===null?(i.next=i,Aa(a)):(i.next=u.next,u.next=i),a.interleaved=i,ui(r,o)}function Uo(r,i,o){if(i=i.updateQueue,i!==null&&(i=i.shared,(o&4194240)!==0)){var a=i.lanes;a&=r.pendingLanes,o|=a,i.lanes=o,Ql(r,o)}}function nd(r,i){var o=r.updateQueue,a=r.alternate;if(a!==null&&(a=a.updateQueue,o===a)){var u=null,_=null;if(o=o.firstBaseUpdate,o!==null){do{var m={eventTime:o.eventTime,lane:o.lane,tag:o.tag,payload:o.payload,callback:o.callback,next:null};_===null?u=_=m:_=_.next=m,o=o.next}while(o!==null);_===null?u=_=i:_=_.next=i}else u=_=i;o={baseState:a.baseState,firstBaseUpdate:u,lastBaseUpdate:_,shared:a.shared,effects:a.effects},r.updateQueue=o;return}r=o.lastBaseUpdate,r===null?o.firstBaseUpdate=i:r.next=i,o.lastBaseUpdate=i}function Vo(r,i,o,a){var u=r.updateQueue;Oi=!1;var _=u.firstBaseUpdate,m=u.lastBaseUpdate,k=u.shared.pending;if(k!==null){u.shared.pending=null;var M=k,H=M.next;M.next=null,m===null?_=H:m.next=H,m=M;var te=r.alternate;te!==null&&(te=te.updateQueue,k=te.lastBaseUpdate,k!==m&&(k===null?te.firstBaseUpdate=H:k.next=H,te.lastBaseUpdate=M))}if(_!==null){var re=u.baseState;m=0,te=H=M=null,k=_;do{var ee=k.lane,me=k.eventTime;if((a&ee)===ee){te!==null&&(te=te.next={eventTime:me,lane:0,tag:k.tag,payload:k.payload,callback:k.callback,next:null});e:{var Se=r,we=k;switch(ee=i,me=o,we.tag){case 1:if(Se=we.payload,typeof Se=="function"){re=Se.call(me,re,ee);break e}re=Se;break e;case 3:Se.flags=Se.flags&-65537|128;case 0:if(Se=we.payload,ee=typeof Se=="function"?Se.call(me,re,ee):Se,ee==null)break e;re=J({},re,ee);break e;case 2:Oi=!0}}k.callback!==null&&k.lane!==0&&(r.flags|=64,ee=u.effects,ee===null?u.effects=[k]:ee.push(k))}else me={eventTime:me,lane:ee,tag:k.tag,payload:k.payload,callback:k.callback,next:null},te===null?(H=te=me,M=re):te=te.next=me,m|=ee;if(k=k.next,k===null){if(k=u.shared.pending,k===null)break;ee=k,k=ee.next,ee.next=null,u.lastBaseUpdate=ee,u.shared.pending=null}}while(!0);if(te===null&&(M=re),u.baseState=M,u.firstBaseUpdate=H,u.lastBaseUpdate=te,i=u.shared.interleaved,i!==null){u=i;do m|=u.lane,u=u.next;while(u!==i)}else _===null&&(u.shared.lanes=0);ds|=m,r.lanes=m,r.memoizedState=re}}function od(r,i,o){if(r=i.effects,i.effects=null,r!==null)for(i=0;i<r.length;i++){var a=r[i],u=a.callback;if(u!==null){if(a.callback=null,a=o,typeof u!="function")throw Error(s(191,u));u.call(a)}}}var Mn={},Gr=Ni(Mn),Rn=Ni(Mn),Tn=Ni(Mn);function hs(r){if(r===Mn)throw Error(s(174));return r}function za(r,i){switch(Xe(Tn,i),Xe(Rn,r),Xe(Gr,Mn),r=i.nodeType,r){case 9:case 11:i=(i=i.documentElement)?i.namespaceURI:xi(null,"");break;default:r=r===8?i.parentNode:i,i=r.namespaceURI||null,r=r.tagName,i=xi(i,r)}Je(Gr),Xe(Gr,i)}function Ys(){Je(Gr),Je(Rn),Je(Tn)}function ld(r){hs(Tn.current);var i=hs(Gr.current),o=xi(i,r.type);i!==o&&(Xe(Rn,r),Xe(Gr,o))}function Wa(r){Rn.current===r&&(Je(Gr),Je(Rn))}var st=Ni(0);function Yo(r){for(var i=r;i!==null;){if(i.tag===13){var o=i.memoizedState;if(o!==null&&(o=o.dehydrated,o===null||o.data==="$?"||o.data==="$!"))return i}else if(i.tag===19&&i.memoizedProps.revealOrder!==void 0){if((i.flags&128)!==0)return i}else if(i.child!==null){i.child.return=i,i=i.child;continue}if(i===r)break;for(;i.sibling===null;){if(i.return===null||i.return===r)return null;i=i.return}i.sibling.return=i.return,i=i.sibling}return null}var Fa=[];function Ha(){for(var r=0;r<Fa.length;r++)Fa[r]._workInProgressVersionPrimary=null;Fa.length=0}var qo=W.ReactCurrentDispatcher,ja=W.ReactCurrentBatchConfig,us=0,nt=null,gt=null,kt=null,Xo=!1,Pn=!1,Ln=0,og=0;function At(){throw Error(s(321))}function $a(r,i){if(i===null)return!1;for(var o=0;o<i.length&&o<r.length;o++)if(!Br(r[o],i[o]))return!1;return!0}function Ka(r,i,o,a,u,_){if(us=_,nt=i,i.memoizedState=null,i.updateQueue=null,i.lanes=0,qo.current=r===null||r.memoizedState===null?hg:ug,r=o(a,u),Pn){_=0;do{if(Pn=!1,Ln=0,25<=_)throw Error(s(301));_+=1,kt=gt=null,i.updateQueue=null,qo.current=dg,r=o(a,u)}while(Pn)}if(qo.current=Jo,i=gt!==null&>.next!==null,us=0,kt=gt=nt=null,Xo=!1,i)throw Error(s(300));return r}function Ua(){var r=Ln!==0;return Ln=0,r}function Qr(){var r={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return kt===null?nt.memoizedState=kt=r:kt=kt.next=r,kt}function wr(){if(gt===null){var r=nt.alternate;r=r!==null?r.memoizedState:null}else r=gt.next;var i=kt===null?nt.memoizedState:kt.next;if(i!==null)kt=i,gt=r;else{if(r===null)throw Error(s(310));gt=r,r={memoizedState:gt.memoizedState,baseState:gt.baseState,baseQueue:gt.baseQueue,queue:gt.queue,next:null},kt===null?nt.memoizedState=kt=r:kt=kt.next=r}return kt}function Dn(r,i){return typeof i=="function"?i(r):i}function Va(r){var i=wr(),o=i.queue;if(o===null)throw Error(s(311));o.lastRenderedReducer=r;var a=gt,u=a.baseQueue,_=o.pending;if(_!==null){if(u!==null){var m=u.next;u.next=_.next,_.next=m}a.baseQueue=u=_,o.pending=null}if(u!==null){_=u.next,a=a.baseState;var k=m=null,M=null,H=_;do{var te=H.lane;if((us&te)===te)M!==null&&(M=M.next={lane:0,action:H.action,hasEagerState:H.hasEagerState,eagerState:H.eagerState,next:null}),a=H.hasEagerState?H.eagerState:r(a,H.action);else{var re={lane:te,action:H.action,hasEagerState:H.hasEagerState,eagerState:H.eagerState,next:null};M===null?(k=M=re,m=a):M=M.next=re,nt.lanes|=te,ds|=te}H=H.next}while(H!==null&&H!==_);M===null?m=a:M.next=k,Br(a,i.memoizedState)||(Qt=!0),i.memoizedState=a,i.baseState=m,i.baseQueue=M,o.lastRenderedState=a}if(r=o.interleaved,r!==null){u=r;do _=u.lane,nt.lanes|=_,ds|=_,u=u.next;while(u!==r)}else u===null&&(o.lanes=0);return[i.memoizedState,o.dispatch]}function Ya(r){var i=wr(),o=i.queue;if(o===null)throw Error(s(311));o.lastRenderedReducer=r;var a=o.dispatch,u=o.pending,_=i.memoizedState;if(u!==null){o.pending=null;var m=u=u.next;do _=r(_,m.action),m=m.next;while(m!==u);Br(_,i.memoizedState)||(Qt=!0),i.memoizedState=_,i.baseQueue===null&&(i.baseState=_),o.lastRenderedState=_}return[_,a]}function ad(){}function cd(r,i){var o=nt,a=wr(),u=i(),_=!Br(a.memoizedState,u);if(_&&(a.memoizedState=u,Qt=!0),a=a.queue,qa(dd.bind(null,o,a,r),[r]),a.getSnapshot!==i||_||kt!==null&&kt.memoizedState.tag&1){if(o.flags|=2048,Bn(9,ud.bind(null,o,a,u,i),void 0,null),bt===null)throw Error(s(349));(us&30)!==0||hd(o,i,u)}return u}function hd(r,i,o){r.flags|=16384,r={getSnapshot:i,value:o},i=nt.updateQueue,i===null?(i={lastEffect:null,stores:null},nt.updateQueue=i,i.stores=[r]):(o=i.stores,o===null?i.stores=[r]:o.push(r))}function ud(r,i,o,a){i.value=o,i.getSnapshot=a,fd(i)&&_d(r)}function dd(r,i,o){return o(function(){fd(i)&&_d(r)})}function fd(r){var i=r.getSnapshot;r=r.value;try{var o=i();return!Br(r,o)}catch{return!0}}function _d(r){var i=ui(r,1);i!==null&&zr(i,r,1,-1)}function pd(r){var i=Qr();return typeof r=="function"&&(r=r()),i.memoizedState=i.baseState=r,r={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Dn,lastRenderedState:r},i.queue=r,r=r.dispatch=cg.bind(null,nt,r),[i.memoizedState,r]}function Bn(r,i,o,a){return r={tag:r,create:i,destroy:o,deps:a,next:null},i=nt.updateQueue,i===null?(i={lastEffect:null,stores:null},nt.updateQueue=i,i.lastEffect=r.next=r):(o=i.lastEffect,o===null?i.lastEffect=r.next=r:(a=o.next,o.next=r,r.next=a,i.lastEffect=r)),r}function md(){return wr().memoizedState}function Go(r,i,o,a){var u=Qr();nt.flags|=r,u.memoizedState=Bn(1|i,o,void 0,a===void 0?null:a)}function Qo(r,i,o,a){var u=wr();a=a===void 0?null:a;var _=void 0;if(gt!==null){var m=gt.memoizedState;if(_=m.destroy,a!==null&&$a(a,m.deps)){u.memoizedState=Bn(i,o,_,a);return}}nt.flags|=r,u.memoizedState=Bn(1|i,o,_,a)}function gd(r,i){return Go(8390656,8,r,i)}function qa(r,i){return Qo(2048,8,r,i)}function vd(r,i){return Qo(4,2,r,i)}function yd(r,i){return Qo(4,4,r,i)}function Sd(r,i){if(typeof i=="function")return r=r(),i(r),function(){i(null)};if(i!=null)return r=r(),i.current=r,function(){i.current=null}}function wd(r,i,o){return o=o!=null?o.concat([r]):null,Qo(4,4,Sd.bind(null,i,r),o)}function Xa(){}function Cd(r,i){var o=wr();i=i===void 0?null:i;var a=o.memoizedState;return a!==null&&i!==null&&$a(i,a[1])?a[0]:(o.memoizedState=[r,i],r)}function kd(r,i){var o=wr();i=i===void 0?null:i;var a=o.memoizedState;return a!==null&&i!==null&&$a(i,a[1])?a[0]:(r=r(),o.memoizedState=[r,i],r)}function bd(r,i,o){return(us&21)===0?(r.baseState&&(r.baseState=!1,Qt=!0),r.memoizedState=o):(Br(o,i)||(o=eu(),nt.lanes|=o,ds|=o,r.baseState=!0),i)}function lg(r,i){var o=Ue;Ue=o!==0&&4>o?o:4,r(!0);var a=ja.transition;ja.transition={};try{r(!1),i()}finally{Ue=o,ja.transition=a}}function xd(){return wr().memoizedState}function ag(r,i,o){var a=ji(r);if(o={lane:a,action:o,hasEagerState:!1,eagerState:null,next:null},Ed(r))Md(i,o);else if(o=id(r,i,o,a),o!==null){var u=Kt();zr(o,r,a,u),Rd(o,i,a)}}function cg(r,i,o){var a=ji(r),u={lane:a,action:o,hasEagerState:!1,eagerState:null,next:null};if(Ed(r))Md(i,u);else{var _=r.alternate;if(r.lanes===0&&(_===null||_.lanes===0)&&(_=i.lastRenderedReducer,_!==null))try{var m=i.lastRenderedState,k=_(m,o);if(u.hasEagerState=!0,u.eagerState=k,Br(k,m)){var M=i.interleaved;M===null?(u.next=u,Aa(i)):(u.next=M.next,M.next=u),i.interleaved=u;return}}catch{}finally{}o=id(r,i,u,a),o!==null&&(u=Kt(),zr(o,r,a,u),Rd(o,i,a))}}function Ed(r){var i=r.alternate;return r===nt||i!==null&&i===nt}function Md(r,i){Pn=Xo=!0;var o=r.pending;o===null?i.next=i:(i.next=o.next,o.next=i),r.pending=i}function Rd(r,i,o){if((o&4194240)!==0){var a=i.lanes;a&=r.pendingLanes,o|=a,i.lanes=o,Ql(r,o)}}var Jo={readContext:Sr,useCallback:At,useContext:At,useEffect:At,useImperativeHandle:At,useInsertionEffect:At,useLayoutEffect:At,useMemo:At,useReducer:At,useRef:At,useState:At,useDebugValue:At,useDeferredValue:At,useTransition:At,useMutableSource:At,useSyncExternalStore:At,useId:At,unstable_isNewReconciler:!1},hg={readContext:Sr,useCallback:function(r,i){return Qr().memoizedState=[r,i===void 0?null:i],r},useContext:Sr,useEffect:gd,useImperativeHandle:function(r,i,o){return o=o!=null?o.concat([r]):null,Go(4194308,4,Sd.bind(null,i,r),o)},useLayoutEffect:function(r,i){return Go(4194308,4,r,i)},useInsertionEffect:function(r,i){return Go(4,2,r,i)},useMemo:function(r,i){var o=Qr();return i=i===void 0?null:i,r=r(),o.memoizedState=[r,i],r},useReducer:function(r,i,o){var a=Qr();return i=o!==void 0?o(i):i,a.memoizedState=a.baseState=i,r={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:r,lastRenderedState:i},a.queue=r,r=r.dispatch=ag.bind(null,nt,r),[a.memoizedState,r]},useRef:function(r){var i=Qr();return r={current:r},i.memoizedState=r},useState:pd,useDebugValue:Xa,useDeferredValue:function(r){return Qr().memoizedState=r},useTransition:function(){var r=pd(!1),i=r[0];return r=lg.bind(null,r[1]),Qr().memoizedState=r,[i,r]},useMutableSource:function(){},useSyncExternalStore:function(r,i,o){var a=nt,u=Qr();if(tt){if(o===void 0)throw Error(s(407));o=o()}else{if(o=i(),bt===null)throw Error(s(349));(us&30)!==0||hd(a,i,o)}u.memoizedState=o;var _={value:o,getSnapshot:i};return u.queue=_,gd(dd.bind(null,a,_,r),[r]),a.flags|=2048,Bn(9,ud.bind(null,a,_,o,i),void 0,null),o},useId:function(){var r=Qr(),i=bt.identifierPrefix;if(tt){var o=hi,a=ci;o=(a&~(1<<32-Dr(a)-1)).toString(32)+o,i=":"+i+"R"+o,o=Ln++,0<o&&(i+="H"+o.toString(32)),i+=":"}else o=og++,i=":"+i+"r"+o.toString(32)+":";return r.memoizedState=i},unstable_isNewReconciler:!1},ug={readContext:Sr,useCallback:Cd,useContext:Sr,useEffect:qa,useImperativeHandle:wd,useInsertionEffect:vd,useLayoutEffect:yd,useMemo:kd,useReducer:Va,useRef:md,useState:function(){return Va(Dn)},useDebugValue:Xa,useDeferredValue:function(r){var i=wr();return bd(i,gt.memoizedState,r)},useTransition:function(){var r=Va(Dn)[0],i=wr().memoizedState;return[r,i]},useMutableSource:ad,useSyncExternalStore:cd,useId:xd,unstable_isNewReconciler:!1},dg={readContext:Sr,useCallback:Cd,useContext:Sr,useEffect:qa,useImperativeHandle:wd,useInsertionEffect:vd,useLayoutEffect:yd,useMemo:kd,useReducer:Ya,useRef:md,useState:function(){return Ya(Dn)},useDebugValue:Xa,useDeferredValue:function(r){var i=wr();return gt===null?i.memoizedState=r:bd(i,gt.memoizedState,r)},useTransition:function(){var r=Ya(Dn)[0],i=wr().memoizedState;return[r,i]},useMutableSource:ad,useSyncExternalStore:cd,useId:xd,unstable_isNewReconciler:!1};function Ir(r,i){if(r&&r.defaultProps){i=J({},i),r=r.defaultProps;for(var o in r)i[o]===void 0&&(i[o]=r[o]);return i}return i}function Ga(r,i,o,a){i=r.memoizedState,o=o(a,i),o=o==null?i:J({},i,o),r.memoizedState=o,r.lanes===0&&(r.updateQueue.baseState=o)}var Zo={isMounted:function(r){return(r=r._reactInternals)?De(r)===r:!1},enqueueSetState:function(r,i,o){r=r._reactInternals;var a=Kt(),u=ji(r),_=di(a,u);_.payload=i,o!=null&&(_.callback=o),i=zi(r,_,u),i!==null&&(zr(i,r,u,a),Uo(i,r,u))},enqueueReplaceState:function(r,i,o){r=r._reactInternals;var a=Kt(),u=ji(r),_=di(a,u);_.tag=1,_.payload=i,o!=null&&(_.callback=o),i=zi(r,_,u),i!==null&&(zr(i,r,u,a),Uo(i,r,u))},enqueueForceUpdate:function(r,i){r=r._reactInternals;var o=Kt(),a=ji(r),u=di(o,a);u.tag=2,i!=null&&(u.callback=i),i=zi(r,u,a),i!==null&&(zr(i,r,a,o),Uo(i,r,a))}};function Td(r,i,o,a,u,_,m){return r=r.stateNode,typeof r.shouldComponentUpdate=="function"?r.shouldComponentUpdate(a,_,m):i.prototype&&i.prototype.isPureReactComponent?!yn(o,a)||!yn(u,_):!0}function Pd(r,i,o){var a=!1,u=Ii,_=i.contextType;return typeof _=="object"&&_!==null?_=Sr(_):(u=Gt(i)?os:It.current,a=i.contextTypes,_=(a=a!=null)?Fs(r,u):Ii),i=new i(o,_),r.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,i.updater=Zo,r.stateNode=i,i._reactInternals=r,a&&(r=r.stateNode,r.__reactInternalMemoizedUnmaskedChildContext=u,r.__reactInternalMemoizedMaskedChildContext=_),i}function Ld(r,i,o,a){r=i.state,typeof i.componentWillReceiveProps=="function"&&i.componentWillReceiveProps(o,a),typeof i.UNSAFE_componentWillReceiveProps=="function"&&i.UNSAFE_componentWillReceiveProps(o,a),i.state!==r&&Zo.enqueueReplaceState(i,i.state,null)}function Qa(r,i,o,a){var u=r.stateNode;u.props=o,u.state=r.memoizedState,u.refs={},Oa(r);var _=i.contextType;typeof _=="object"&&_!==null?u.context=Sr(_):(_=Gt(i)?os:It.current,u.context=Fs(r,_)),u.state=r.memoizedState,_=i.getDerivedStateFromProps,typeof _=="function"&&(Ga(r,i,_,o),u.state=r.memoizedState),typeof i.getDerivedStateFromProps=="function"||typeof u.getSnapshotBeforeUpdate=="function"||typeof u.UNSAFE_componentWillMount!="function"&&typeof u.componentWillMount!="function"||(i=u.state,typeof u.componentWillMount=="function"&&u.componentWillMount(),typeof u.UNSAFE_componentWillMount=="function"&&u.UNSAFE_componentWillMount(),i!==u.state&&Zo.enqueueReplaceState(u,u.state,null),Vo(r,o,u,a),u.state=r.memoizedState),typeof u.componentDidMount=="function"&&(r.flags|=4194308)}function qs(r,i){try{var o="",a=i;do o+=ue(a),a=a.return;while(a);var u=o}catch(_){u=`
|
|
39
|
+
Error generating stack: `+_.message+`
|
|
40
|
+
`+_.stack}return{value:r,source:i,stack:u,digest:null}}function Ja(r,i,o){return{value:r,source:null,stack:o??null,digest:i??null}}function Za(r,i){try{console.error(i.value)}catch(o){setTimeout(function(){throw o})}}var fg=typeof WeakMap=="function"?WeakMap:Map;function Dd(r,i,o){o=di(-1,o),o.tag=3,o.payload={element:null};var a=i.value;return o.callback=function(){ol||(ol=!0,_c=a),Za(r,i)},o}function Bd(r,i,o){o=di(-1,o),o.tag=3;var a=r.type.getDerivedStateFromError;if(typeof a=="function"){var u=i.value;o.payload=function(){return a(u)},o.callback=function(){Za(r,i)}}var _=r.stateNode;return _!==null&&typeof _.componentDidCatch=="function"&&(o.callback=function(){Za(r,i),typeof a!="function"&&(Fi===null?Fi=new Set([this]):Fi.add(this));var m=i.stack;this.componentDidCatch(i.value,{componentStack:m!==null?m:""})}),o}function Nd(r,i,o){var a=r.pingCache;if(a===null){a=r.pingCache=new fg;var u=new Set;a.set(i,u)}else u=a.get(i),u===void 0&&(u=new Set,a.set(i,u));u.has(o)||(u.add(o),r=Mg.bind(null,r,i,o),i.then(r,r))}function Id(r){do{var i;if((i=r.tag===13)&&(i=r.memoizedState,i=i!==null?i.dehydrated!==null:!0),i)return r;r=r.return}while(r!==null);return null}function Ad(r,i,o,a,u){return(r.mode&1)===0?(r===i?r.flags|=65536:(r.flags|=128,o.flags|=131072,o.flags&=-52805,o.tag===1&&(o.alternate===null?o.tag=17:(i=di(-1,1),i.tag=2,zi(o,i,1))),o.lanes|=1),r):(r.flags|=65536,r.lanes=u,r)}var _g=W.ReactCurrentOwner,Qt=!1;function $t(r,i,o,a){i.child=r===null?rd(i,null,o,a):Ks(i,r.child,o,a)}function Od(r,i,o,a,u){o=o.render;var _=i.ref;return Vs(i,u),a=Ka(r,i,o,a,_,u),o=Ua(),r!==null&&!Qt?(i.updateQueue=r.updateQueue,i.flags&=-2053,r.lanes&=~u,fi(r,i,u)):(tt&&o&&Ma(i),i.flags|=1,$t(r,i,a,u),i.child)}function zd(r,i,o,a,u){if(r===null){var _=o.type;return typeof _=="function"&&!wc(_)&&_.defaultProps===void 0&&o.compare===null&&o.defaultProps===void 0?(i.tag=15,i.type=_,Wd(r,i,_,a,u)):(r=dl(o.type,null,a,i,i.mode,u),r.ref=i.ref,r.return=i,i.child=r)}if(_=r.child,(r.lanes&u)===0){var m=_.memoizedProps;if(o=o.compare,o=o!==null?o:yn,o(m,a)&&r.ref===i.ref)return fi(r,i,u)}return i.flags|=1,r=Ki(_,a),r.ref=i.ref,r.return=i,i.child=r}function Wd(r,i,o,a,u){if(r!==null){var _=r.memoizedProps;if(yn(_,a)&&r.ref===i.ref)if(Qt=!1,i.pendingProps=a=_,(r.lanes&u)!==0)(r.flags&131072)!==0&&(Qt=!0);else return i.lanes=r.lanes,fi(r,i,u)}return ec(r,i,o,a,u)}function Fd(r,i,o){var a=i.pendingProps,u=a.children,_=r!==null?r.memoizedState:null;if(a.mode==="hidden")if((i.mode&1)===0)i.memoizedState={baseLanes:0,cachePool:null,transitions:null},Xe(Gs,ar),ar|=o;else{if((o&1073741824)===0)return r=_!==null?_.baseLanes|o:o,i.lanes=i.childLanes=1073741824,i.memoizedState={baseLanes:r,cachePool:null,transitions:null},i.updateQueue=null,Xe(Gs,ar),ar|=r,null;i.memoizedState={baseLanes:0,cachePool:null,transitions:null},a=_!==null?_.baseLanes:o,Xe(Gs,ar),ar|=a}else _!==null?(a=_.baseLanes|o,i.memoizedState=null):a=o,Xe(Gs,ar),ar|=a;return $t(r,i,u,o),i.child}function Hd(r,i){var o=i.ref;(r===null&&o!==null||r!==null&&r.ref!==o)&&(i.flags|=512,i.flags|=2097152)}function ec(r,i,o,a,u){var _=Gt(o)?os:It.current;return _=Fs(i,_),Vs(i,u),o=Ka(r,i,o,a,_,u),a=Ua(),r!==null&&!Qt?(i.updateQueue=r.updateQueue,i.flags&=-2053,r.lanes&=~u,fi(r,i,u)):(tt&&a&&Ma(i),i.flags|=1,$t(r,i,o,u),i.child)}function jd(r,i,o,a,u){if(Gt(o)){var _=!0;Oo(i)}else _=!1;if(Vs(i,u),i.stateNode===null)tl(r,i),Pd(i,o,a),Qa(i,o,a,u),a=!0;else if(r===null){var m=i.stateNode,k=i.memoizedProps;m.props=k;var M=m.context,H=o.contextType;typeof H=="object"&&H!==null?H=Sr(H):(H=Gt(o)?os:It.current,H=Fs(i,H));var te=o.getDerivedStateFromProps,re=typeof te=="function"||typeof m.getSnapshotBeforeUpdate=="function";re||typeof m.UNSAFE_componentWillReceiveProps!="function"&&typeof m.componentWillReceiveProps!="function"||(k!==a||M!==H)&&Ld(i,m,a,H),Oi=!1;var ee=i.memoizedState;m.state=ee,Vo(i,a,m,u),M=i.memoizedState,k!==a||ee!==M||Xt.current||Oi?(typeof te=="function"&&(Ga(i,o,te,a),M=i.memoizedState),(k=Oi||Td(i,o,k,a,ee,M,H))?(re||typeof m.UNSAFE_componentWillMount!="function"&&typeof m.componentWillMount!="function"||(typeof m.componentWillMount=="function"&&m.componentWillMount(),typeof m.UNSAFE_componentWillMount=="function"&&m.UNSAFE_componentWillMount()),typeof m.componentDidMount=="function"&&(i.flags|=4194308)):(typeof m.componentDidMount=="function"&&(i.flags|=4194308),i.memoizedProps=a,i.memoizedState=M),m.props=a,m.state=M,m.context=H,a=k):(typeof m.componentDidMount=="function"&&(i.flags|=4194308),a=!1)}else{m=i.stateNode,sd(r,i),k=i.memoizedProps,H=i.type===i.elementType?k:Ir(i.type,k),m.props=H,re=i.pendingProps,ee=m.context,M=o.contextType,typeof M=="object"&&M!==null?M=Sr(M):(M=Gt(o)?os:It.current,M=Fs(i,M));var me=o.getDerivedStateFromProps;(te=typeof me=="function"||typeof m.getSnapshotBeforeUpdate=="function")||typeof m.UNSAFE_componentWillReceiveProps!="function"&&typeof m.componentWillReceiveProps!="function"||(k!==re||ee!==M)&&Ld(i,m,a,M),Oi=!1,ee=i.memoizedState,m.state=ee,Vo(i,a,m,u);var Se=i.memoizedState;k!==re||ee!==Se||Xt.current||Oi?(typeof me=="function"&&(Ga(i,o,me,a),Se=i.memoizedState),(H=Oi||Td(i,o,H,a,ee,Se,M)||!1)?(te||typeof m.UNSAFE_componentWillUpdate!="function"&&typeof m.componentWillUpdate!="function"||(typeof m.componentWillUpdate=="function"&&m.componentWillUpdate(a,Se,M),typeof m.UNSAFE_componentWillUpdate=="function"&&m.UNSAFE_componentWillUpdate(a,Se,M)),typeof m.componentDidUpdate=="function"&&(i.flags|=4),typeof m.getSnapshotBeforeUpdate=="function"&&(i.flags|=1024)):(typeof m.componentDidUpdate!="function"||k===r.memoizedProps&&ee===r.memoizedState||(i.flags|=4),typeof m.getSnapshotBeforeUpdate!="function"||k===r.memoizedProps&&ee===r.memoizedState||(i.flags|=1024),i.memoizedProps=a,i.memoizedState=Se),m.props=a,m.state=Se,m.context=M,a=H):(typeof m.componentDidUpdate!="function"||k===r.memoizedProps&&ee===r.memoizedState||(i.flags|=4),typeof m.getSnapshotBeforeUpdate!="function"||k===r.memoizedProps&&ee===r.memoizedState||(i.flags|=1024),a=!1)}return tc(r,i,o,a,_,u)}function tc(r,i,o,a,u,_){Hd(r,i);var m=(i.flags&128)!==0;if(!a&&!m)return u&&Yu(i,o,!1),fi(r,i,_);a=i.stateNode,_g.current=i;var k=m&&typeof o.getDerivedStateFromError!="function"?null:a.render();return i.flags|=1,r!==null&&m?(i.child=Ks(i,r.child,null,_),i.child=Ks(i,null,k,_)):$t(r,i,k,_),i.memoizedState=a.state,u&&Yu(i,o,!0),i.child}function $d(r){var i=r.stateNode;i.pendingContext?Uu(r,i.pendingContext,i.pendingContext!==i.context):i.context&&Uu(r,i.context,!1),za(r,i.containerInfo)}function Kd(r,i,o,a,u){return $s(),La(u),i.flags|=256,$t(r,i,o,a),i.child}var rc={dehydrated:null,treeContext:null,retryLane:0};function ic(r){return{baseLanes:r,cachePool:null,transitions:null}}function Ud(r,i,o){var a=i.pendingProps,u=st.current,_=!1,m=(i.flags&128)!==0,k;if((k=m)||(k=r!==null&&r.memoizedState===null?!1:(u&2)!==0),k?(_=!0,i.flags&=-129):(r===null||r.memoizedState!==null)&&(u|=1),Xe(st,u&1),r===null)return Pa(i),r=i.memoizedState,r!==null&&(r=r.dehydrated,r!==null)?((i.mode&1)===0?i.lanes=1:r.data==="$!"?i.lanes=8:i.lanes=1073741824,null):(m=a.children,r=a.fallback,_?(a=i.mode,_=i.child,m={mode:"hidden",children:m},(a&1)===0&&_!==null?(_.childLanes=0,_.pendingProps=m):_=fl(m,a,0,null),r=ms(r,a,o,null),_.return=i,r.return=i,_.sibling=r,i.child=_,i.child.memoizedState=ic(o),i.memoizedState=rc,r):sc(i,m));if(u=r.memoizedState,u!==null&&(k=u.dehydrated,k!==null))return pg(r,i,m,a,k,u,o);if(_){_=a.fallback,m=i.mode,u=r.child,k=u.sibling;var M={mode:"hidden",children:a.children};return(m&1)===0&&i.child!==u?(a=i.child,a.childLanes=0,a.pendingProps=M,i.deletions=null):(a=Ki(u,M),a.subtreeFlags=u.subtreeFlags&14680064),k!==null?_=Ki(k,_):(_=ms(_,m,o,null),_.flags|=2),_.return=i,a.return=i,a.sibling=_,i.child=a,a=_,_=i.child,m=r.child.memoizedState,m=m===null?ic(o):{baseLanes:m.baseLanes|o,cachePool:null,transitions:m.transitions},_.memoizedState=m,_.childLanes=r.childLanes&~o,i.memoizedState=rc,a}return _=r.child,r=_.sibling,a=Ki(_,{mode:"visible",children:a.children}),(i.mode&1)===0&&(a.lanes=o),a.return=i,a.sibling=null,r!==null&&(o=i.deletions,o===null?(i.deletions=[r],i.flags|=16):o.push(r)),i.child=a,i.memoizedState=null,a}function sc(r,i){return i=fl({mode:"visible",children:i},r.mode,0,null),i.return=r,r.child=i}function el(r,i,o,a){return a!==null&&La(a),Ks(i,r.child,null,o),r=sc(i,i.pendingProps.children),r.flags|=2,i.memoizedState=null,r}function pg(r,i,o,a,u,_,m){if(o)return i.flags&256?(i.flags&=-257,a=Ja(Error(s(422))),el(r,i,m,a)):i.memoizedState!==null?(i.child=r.child,i.flags|=128,null):(_=a.fallback,u=i.mode,a=fl({mode:"visible",children:a.children},u,0,null),_=ms(_,u,m,null),_.flags|=2,a.return=i,_.return=i,a.sibling=_,i.child=a,(i.mode&1)!==0&&Ks(i,r.child,null,m),i.child.memoizedState=ic(m),i.memoizedState=rc,_);if((i.mode&1)===0)return el(r,i,m,null);if(u.data==="$!"){if(a=u.nextSibling&&u.nextSibling.dataset,a)var k=a.dgst;return a=k,_=Error(s(419)),a=Ja(_,a,void 0),el(r,i,m,a)}if(k=(m&r.childLanes)!==0,Qt||k){if(a=bt,a!==null){switch(m&-m){case 4:u=2;break;case 16:u=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:u=32;break;case 536870912:u=268435456;break;default:u=0}u=(u&(a.suspendedLanes|m))!==0?0:u,u!==0&&u!==_.retryLane&&(_.retryLane=u,ui(r,u),zr(a,r,u,-1))}return Sc(),a=Ja(Error(s(421))),el(r,i,m,a)}return u.data==="$?"?(i.flags|=128,i.child=r.child,i=Rg.bind(null,r),u._reactRetry=i,null):(r=_.treeContext,lr=Bi(u.nextSibling),or=i,tt=!0,Nr=null,r!==null&&(vr[yr++]=ci,vr[yr++]=hi,vr[yr++]=ls,ci=r.id,hi=r.overflow,ls=i),i=sc(i,a.children),i.flags|=4096,i)}function Vd(r,i,o){r.lanes|=i;var a=r.alternate;a!==null&&(a.lanes|=i),Ia(r.return,i,o)}function nc(r,i,o,a,u){var _=r.memoizedState;_===null?r.memoizedState={isBackwards:i,rendering:null,renderingStartTime:0,last:a,tail:o,tailMode:u}:(_.isBackwards=i,_.rendering=null,_.renderingStartTime=0,_.last=a,_.tail=o,_.tailMode=u)}function Yd(r,i,o){var a=i.pendingProps,u=a.revealOrder,_=a.tail;if($t(r,i,a.children,o),a=st.current,(a&2)!==0)a=a&1|2,i.flags|=128;else{if(r!==null&&(r.flags&128)!==0)e:for(r=i.child;r!==null;){if(r.tag===13)r.memoizedState!==null&&Vd(r,o,i);else if(r.tag===19)Vd(r,o,i);else if(r.child!==null){r.child.return=r,r=r.child;continue}if(r===i)break e;for(;r.sibling===null;){if(r.return===null||r.return===i)break e;r=r.return}r.sibling.return=r.return,r=r.sibling}a&=1}if(Xe(st,a),(i.mode&1)===0)i.memoizedState=null;else switch(u){case"forwards":for(o=i.child,u=null;o!==null;)r=o.alternate,r!==null&&Yo(r)===null&&(u=o),o=o.sibling;o=u,o===null?(u=i.child,i.child=null):(u=o.sibling,o.sibling=null),nc(i,!1,u,o,_);break;case"backwards":for(o=null,u=i.child,i.child=null;u!==null;){if(r=u.alternate,r!==null&&Yo(r)===null){i.child=u;break}r=u.sibling,u.sibling=o,o=u,u=r}nc(i,!0,o,null,_);break;case"together":nc(i,!1,null,null,void 0);break;default:i.memoizedState=null}return i.child}function tl(r,i){(i.mode&1)===0&&r!==null&&(r.alternate=null,i.alternate=null,i.flags|=2)}function fi(r,i,o){if(r!==null&&(i.dependencies=r.dependencies),ds|=i.lanes,(o&i.childLanes)===0)return null;if(r!==null&&i.child!==r.child)throw Error(s(153));if(i.child!==null){for(r=i.child,o=Ki(r,r.pendingProps),i.child=o,o.return=i;r.sibling!==null;)r=r.sibling,o=o.sibling=Ki(r,r.pendingProps),o.return=i;o.sibling=null}return i.child}function mg(r,i,o){switch(i.tag){case 3:$d(i),$s();break;case 5:ld(i);break;case 1:Gt(i.type)&&Oo(i);break;case 4:za(i,i.stateNode.containerInfo);break;case 10:var a=i.type._context,u=i.memoizedProps.value;Xe($o,a._currentValue),a._currentValue=u;break;case 13:if(a=i.memoizedState,a!==null)return a.dehydrated!==null?(Xe(st,st.current&1),i.flags|=128,null):(o&i.child.childLanes)!==0?Ud(r,i,o):(Xe(st,st.current&1),r=fi(r,i,o),r!==null?r.sibling:null);Xe(st,st.current&1);break;case 19:if(a=(o&i.childLanes)!==0,(r.flags&128)!==0){if(a)return Yd(r,i,o);i.flags|=128}if(u=i.memoizedState,u!==null&&(u.rendering=null,u.tail=null,u.lastEffect=null),Xe(st,st.current),a)break;return null;case 22:case 23:return i.lanes=0,Fd(r,i,o)}return fi(r,i,o)}var qd,oc,Xd,Gd;qd=function(r,i){for(var o=i.child;o!==null;){if(o.tag===5||o.tag===6)r.appendChild(o.stateNode);else if(o.tag!==4&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===i)break;for(;o.sibling===null;){if(o.return===null||o.return===i)return;o=o.return}o.sibling.return=o.return,o=o.sibling}},oc=function(){},Xd=function(r,i,o,a){var u=r.memoizedProps;if(u!==a){r=i.stateNode,hs(Gr.current);var _=null;switch(o){case"input":u=et(r,u),a=et(r,a),_=[];break;case"select":u=J({},u,{value:void 0}),a=J({},a,{value:void 0}),_=[];break;case"textarea":u=fr(r,u),a=fr(r,a),_=[];break;default:typeof u.onClick!="function"&&typeof a.onClick=="function"&&(r.onclick=No)}pr(o,a);var m;o=null;for(H in u)if(!a.hasOwnProperty(H)&&u.hasOwnProperty(H)&&u[H]!=null)if(H==="style"){var k=u[H];for(m in k)k.hasOwnProperty(m)&&(o||(o={}),o[m]="")}else H!=="dangerouslySetInnerHTML"&&H!=="children"&&H!=="suppressContentEditableWarning"&&H!=="suppressHydrationWarning"&&H!=="autoFocus"&&(l.hasOwnProperty(H)?_||(_=[]):(_=_||[]).push(H,null));for(H in a){var M=a[H];if(k=u?.[H],a.hasOwnProperty(H)&&M!==k&&(M!=null||k!=null))if(H==="style")if(k){for(m in k)!k.hasOwnProperty(m)||M&&M.hasOwnProperty(m)||(o||(o={}),o[m]="");for(m in M)M.hasOwnProperty(m)&&k[m]!==M[m]&&(o||(o={}),o[m]=M[m])}else o||(_||(_=[]),_.push(H,o)),o=M;else H==="dangerouslySetInnerHTML"?(M=M?M.__html:void 0,k=k?k.__html:void 0,M!=null&&k!==M&&(_=_||[]).push(H,M)):H==="children"?typeof M!="string"&&typeof M!="number"||(_=_||[]).push(H,""+M):H!=="suppressContentEditableWarning"&&H!=="suppressHydrationWarning"&&(l.hasOwnProperty(H)?(M!=null&&H==="onScroll"&&Qe("scroll",r),_||k===M||(_=[])):(_=_||[]).push(H,M))}o&&(_=_||[]).push("style",o);var H=_;(i.updateQueue=H)&&(i.flags|=4)}},Gd=function(r,i,o,a){o!==a&&(i.flags|=4)};function Nn(r,i){if(!tt)switch(r.tailMode){case"hidden":i=r.tail;for(var o=null;i!==null;)i.alternate!==null&&(o=i),i=i.sibling;o===null?r.tail=null:o.sibling=null;break;case"collapsed":o=r.tail;for(var a=null;o!==null;)o.alternate!==null&&(a=o),o=o.sibling;a===null?i||r.tail===null?r.tail=null:r.tail.sibling=null:a.sibling=null}}function Ot(r){var i=r.alternate!==null&&r.alternate.child===r.child,o=0,a=0;if(i)for(var u=r.child;u!==null;)o|=u.lanes|u.childLanes,a|=u.subtreeFlags&14680064,a|=u.flags&14680064,u.return=r,u=u.sibling;else for(u=r.child;u!==null;)o|=u.lanes|u.childLanes,a|=u.subtreeFlags,a|=u.flags,u.return=r,u=u.sibling;return r.subtreeFlags|=a,r.childLanes=o,i}function gg(r,i,o){var a=i.pendingProps;switch(Ra(i),i.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ot(i),null;case 1:return Gt(i.type)&&Ao(),Ot(i),null;case 3:return a=i.stateNode,Ys(),Je(Xt),Je(It),Ha(),a.pendingContext&&(a.context=a.pendingContext,a.pendingContext=null),(r===null||r.child===null)&&(Ho(i)?i.flags|=4:r===null||r.memoizedState.isDehydrated&&(i.flags&256)===0||(i.flags|=1024,Nr!==null&&(gc(Nr),Nr=null))),oc(r,i),Ot(i),null;case 5:Wa(i);var u=hs(Tn.current);if(o=i.type,r!==null&&i.stateNode!=null)Xd(r,i,o,a,u),r.ref!==i.ref&&(i.flags|=512,i.flags|=2097152);else{if(!a){if(i.stateNode===null)throw Error(s(166));return Ot(i),null}if(r=hs(Gr.current),Ho(i)){a=i.stateNode,o=i.type;var _=i.memoizedProps;switch(a[Xr]=i,a[bn]=_,r=(i.mode&1)!==0,o){case"dialog":Qe("cancel",a),Qe("close",a);break;case"iframe":case"object":case"embed":Qe("load",a);break;case"video":case"audio":for(u=0;u<wn.length;u++)Qe(wn[u],a);break;case"source":Qe("error",a);break;case"img":case"image":case"link":Qe("error",a),Qe("load",a);break;case"details":Qe("toggle",a);break;case"input":ni(a,_),Qe("invalid",a);break;case"select":a._wrapperState={wasMultiple:!!_.multiple},Qe("invalid",a);break;case"textarea":Ci(a,_),Qe("invalid",a)}pr(o,_),u=null;for(var m in _)if(_.hasOwnProperty(m)){var k=_[m];m==="children"?typeof k=="string"?a.textContent!==k&&(_.suppressHydrationWarning!==!0&&Bo(a.textContent,k,r),u=["children",k]):typeof k=="number"&&a.textContent!==""+k&&(_.suppressHydrationWarning!==!0&&Bo(a.textContent,k,r),u=["children",""+k]):l.hasOwnProperty(m)&&k!=null&&m==="onScroll"&&Qe("scroll",a)}switch(o){case"input":Ye(a),Ft(a,_,!0);break;case"textarea":Ye(a),bi(a);break;case"select":case"option":break;default:typeof _.onClick=="function"&&(a.onclick=No)}a=u,i.updateQueue=a,a!==null&&(i.flags|=4)}else{m=u.nodeType===9?u:u.ownerDocument,r==="http://www.w3.org/1999/xhtml"&&(r=Ji(o)),r==="http://www.w3.org/1999/xhtml"?o==="script"?(r=m.createElement("div"),r.innerHTML="<script><\/script>",r=r.removeChild(r.firstChild)):typeof a.is=="string"?r=m.createElement(o,{is:a.is}):(r=m.createElement(o),o==="select"&&(m=r,a.multiple?m.multiple=!0:a.size&&(m.size=a.size))):r=m.createElementNS(r,o),r[Xr]=i,r[bn]=a,qd(r,i,!1,!1),i.stateNode=r;e:{switch(m=Hr(o,a),o){case"dialog":Qe("cancel",r),Qe("close",r),u=a;break;case"iframe":case"object":case"embed":Qe("load",r),u=a;break;case"video":case"audio":for(u=0;u<wn.length;u++)Qe(wn[u],r);u=a;break;case"source":Qe("error",r),u=a;break;case"img":case"image":case"link":Qe("error",r),Qe("load",r),u=a;break;case"details":Qe("toggle",r),u=a;break;case"input":ni(r,a),u=et(r,a),Qe("invalid",r);break;case"option":u=a;break;case"select":r._wrapperState={wasMultiple:!!a.multiple},u=J({},a,{value:void 0}),Qe("invalid",r);break;case"textarea":Ci(r,a),u=fr(r,a),Qe("invalid",r);break;default:u=a}pr(o,u),k=u;for(_ in k)if(k.hasOwnProperty(_)){var M=k[_];_==="style"?Ei(r,M):_==="dangerouslySetInnerHTML"?(M=M?M.__html:void 0,M!=null&&Oe(r,M)):_==="children"?typeof M=="string"?(o!=="textarea"||M!=="")&&oi(r,M):typeof M=="number"&&oi(r,""+M):_!=="suppressContentEditableWarning"&&_!=="suppressHydrationWarning"&&_!=="autoFocus"&&(l.hasOwnProperty(_)?M!=null&&_==="onScroll"&&Qe("scroll",r):M!=null&&$(r,_,M,m))}switch(o){case"input":Ye(r),Ft(r,a,!1);break;case"textarea":Ye(r),bi(r);break;case"option":a.value!=null&&r.setAttribute("value",""+ge(a.value));break;case"select":r.multiple=!!a.multiple,_=a.value,_!=null?Nt(r,!!a.multiple,_,!1):a.defaultValue!=null&&Nt(r,!!a.multiple,a.defaultValue,!0);break;default:typeof u.onClick=="function"&&(r.onclick=No)}switch(o){case"button":case"input":case"select":case"textarea":a=!!a.autoFocus;break e;case"img":a=!0;break e;default:a=!1}}a&&(i.flags|=4)}i.ref!==null&&(i.flags|=512,i.flags|=2097152)}return Ot(i),null;case 6:if(r&&i.stateNode!=null)Gd(r,i,r.memoizedProps,a);else{if(typeof a!="string"&&i.stateNode===null)throw Error(s(166));if(o=hs(Tn.current),hs(Gr.current),Ho(i)){if(a=i.stateNode,o=i.memoizedProps,a[Xr]=i,(_=a.nodeValue!==o)&&(r=or,r!==null))switch(r.tag){case 3:Bo(a.nodeValue,o,(r.mode&1)!==0);break;case 5:r.memoizedProps.suppressHydrationWarning!==!0&&Bo(a.nodeValue,o,(r.mode&1)!==0)}_&&(i.flags|=4)}else a=(o.nodeType===9?o:o.ownerDocument).createTextNode(a),a[Xr]=i,i.stateNode=a}return Ot(i),null;case 13:if(Je(st),a=i.memoizedState,r===null||r.memoizedState!==null&&r.memoizedState.dehydrated!==null){if(tt&&lr!==null&&(i.mode&1)!==0&&(i.flags&128)===0)Zu(),$s(),i.flags|=98560,_=!1;else if(_=Ho(i),a!==null&&a.dehydrated!==null){if(r===null){if(!_)throw Error(s(318));if(_=i.memoizedState,_=_!==null?_.dehydrated:null,!_)throw Error(s(317));_[Xr]=i}else $s(),(i.flags&128)===0&&(i.memoizedState=null),i.flags|=4;Ot(i),_=!1}else Nr!==null&&(gc(Nr),Nr=null),_=!0;if(!_)return i.flags&65536?i:null}return(i.flags&128)!==0?(i.lanes=o,i):(a=a!==null,a!==(r!==null&&r.memoizedState!==null)&&a&&(i.child.flags|=8192,(i.mode&1)!==0&&(r===null||(st.current&1)!==0?vt===0&&(vt=3):Sc())),i.updateQueue!==null&&(i.flags|=4),Ot(i),null);case 4:return Ys(),oc(r,i),r===null&&Cn(i.stateNode.containerInfo),Ot(i),null;case 10:return Na(i.type._context),Ot(i),null;case 17:return Gt(i.type)&&Ao(),Ot(i),null;case 19:if(Je(st),_=i.memoizedState,_===null)return Ot(i),null;if(a=(i.flags&128)!==0,m=_.rendering,m===null)if(a)Nn(_,!1);else{if(vt!==0||r!==null&&(r.flags&128)!==0)for(r=i.child;r!==null;){if(m=Yo(r),m!==null){for(i.flags|=128,Nn(_,!1),a=m.updateQueue,a!==null&&(i.updateQueue=a,i.flags|=4),i.subtreeFlags=0,a=o,o=i.child;o!==null;)_=o,r=a,_.flags&=14680066,m=_.alternate,m===null?(_.childLanes=0,_.lanes=r,_.child=null,_.subtreeFlags=0,_.memoizedProps=null,_.memoizedState=null,_.updateQueue=null,_.dependencies=null,_.stateNode=null):(_.childLanes=m.childLanes,_.lanes=m.lanes,_.child=m.child,_.subtreeFlags=0,_.deletions=null,_.memoizedProps=m.memoizedProps,_.memoizedState=m.memoizedState,_.updateQueue=m.updateQueue,_.type=m.type,r=m.dependencies,_.dependencies=r===null?null:{lanes:r.lanes,firstContext:r.firstContext}),o=o.sibling;return Xe(st,st.current&1|2),i.child}r=r.sibling}_.tail!==null&&qe()>Qs&&(i.flags|=128,a=!0,Nn(_,!1),i.lanes=4194304)}else{if(!a)if(r=Yo(m),r!==null){if(i.flags|=128,a=!0,o=r.updateQueue,o!==null&&(i.updateQueue=o,i.flags|=4),Nn(_,!0),_.tail===null&&_.tailMode==="hidden"&&!m.alternate&&!tt)return Ot(i),null}else 2*qe()-_.renderingStartTime>Qs&&o!==1073741824&&(i.flags|=128,a=!0,Nn(_,!1),i.lanes=4194304);_.isBackwards?(m.sibling=i.child,i.child=m):(o=_.last,o!==null?o.sibling=m:i.child=m,_.last=m)}return _.tail!==null?(i=_.tail,_.rendering=i,_.tail=i.sibling,_.renderingStartTime=qe(),i.sibling=null,o=st.current,Xe(st,a?o&1|2:o&1),i):(Ot(i),null);case 22:case 23:return yc(),a=i.memoizedState!==null,r!==null&&r.memoizedState!==null!==a&&(i.flags|=8192),a&&(i.mode&1)!==0?(ar&1073741824)!==0&&(Ot(i),i.subtreeFlags&6&&(i.flags|=8192)):Ot(i),null;case 24:return null;case 25:return null}throw Error(s(156,i.tag))}function vg(r,i){switch(Ra(i),i.tag){case 1:return Gt(i.type)&&Ao(),r=i.flags,r&65536?(i.flags=r&-65537|128,i):null;case 3:return Ys(),Je(Xt),Je(It),Ha(),r=i.flags,(r&65536)!==0&&(r&128)===0?(i.flags=r&-65537|128,i):null;case 5:return Wa(i),null;case 13:if(Je(st),r=i.memoizedState,r!==null&&r.dehydrated!==null){if(i.alternate===null)throw Error(s(340));$s()}return r=i.flags,r&65536?(i.flags=r&-65537|128,i):null;case 19:return Je(st),null;case 4:return Ys(),null;case 10:return Na(i.type._context),null;case 22:case 23:return yc(),null;case 24:return null;default:return null}}var rl=!1,zt=!1,yg=typeof WeakSet=="function"?WeakSet:Set,ve=null;function Xs(r,i){var o=r.ref;if(o!==null)if(typeof o=="function")try{o(null)}catch(a){ct(r,i,a)}else o.current=null}function lc(r,i,o){try{o()}catch(a){ct(r,i,a)}}var Qd=!1;function Sg(r,i){if(ya=Co,r=Tu(),ua(r)){if("selectionStart"in r)var o={start:r.selectionStart,end:r.selectionEnd};else e:{o=(o=r.ownerDocument)&&o.defaultView||window;var a=o.getSelection&&o.getSelection();if(a&&a.rangeCount!==0){o=a.anchorNode;var u=a.anchorOffset,_=a.focusNode;a=a.focusOffset;try{o.nodeType,_.nodeType}catch{o=null;break e}var m=0,k=-1,M=-1,H=0,te=0,re=r,ee=null;t:for(;;){for(var me;re!==o||u!==0&&re.nodeType!==3||(k=m+u),re!==_||a!==0&&re.nodeType!==3||(M=m+a),re.nodeType===3&&(m+=re.nodeValue.length),(me=re.firstChild)!==null;)ee=re,re=me;for(;;){if(re===r)break t;if(ee===o&&++H===u&&(k=m),ee===_&&++te===a&&(M=m),(me=re.nextSibling)!==null)break;re=ee,ee=re.parentNode}re=me}o=k===-1||M===-1?null:{start:k,end:M}}else o=null}o=o||{start:0,end:0}}else o=null;for(Sa={focusedElem:r,selectionRange:o},Co=!1,ve=i;ve!==null;)if(i=ve,r=i.child,(i.subtreeFlags&1028)!==0&&r!==null)r.return=i,ve=r;else for(;ve!==null;){i=ve;try{var Se=i.alternate;if((i.flags&1024)!==0)switch(i.tag){case 0:case 11:case 15:break;case 1:if(Se!==null){var we=Se.memoizedProps,dt=Se.memoizedState,A=i.stateNode,P=A.getSnapshotBeforeUpdate(i.elementType===i.type?we:Ir(i.type,we),dt);A.__reactInternalSnapshotBeforeUpdate=P}break;case 3:var z=i.stateNode.containerInfo;z.nodeType===1?z.textContent="":z.nodeType===9&&z.documentElement&&z.removeChild(z.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(s(163))}}catch(ae){ct(i,i.return,ae)}if(r=i.sibling,r!==null){r.return=i.return,ve=r;break}ve=i.return}return Se=Qd,Qd=!1,Se}function In(r,i,o){var a=i.updateQueue;if(a=a!==null?a.lastEffect:null,a!==null){var u=a=a.next;do{if((u.tag&r)===r){var _=u.destroy;u.destroy=void 0,_!==void 0&&lc(i,o,_)}u=u.next}while(u!==a)}}function il(r,i){if(i=i.updateQueue,i=i!==null?i.lastEffect:null,i!==null){var o=i=i.next;do{if((o.tag&r)===r){var a=o.create;o.destroy=a()}o=o.next}while(o!==i)}}function ac(r){var i=r.ref;if(i!==null){var o=r.stateNode;switch(r.tag){case 5:r=o;break;default:r=o}typeof i=="function"?i(r):i.current=r}}function Jd(r){var i=r.alternate;i!==null&&(r.alternate=null,Jd(i)),r.child=null,r.deletions=null,r.sibling=null,r.tag===5&&(i=r.stateNode,i!==null&&(delete i[Xr],delete i[bn],delete i[ba],delete i[rg],delete i[ig])),r.stateNode=null,r.return=null,r.dependencies=null,r.memoizedProps=null,r.memoizedState=null,r.pendingProps=null,r.stateNode=null,r.updateQueue=null}function Zd(r){return r.tag===5||r.tag===3||r.tag===4}function ef(r){e:for(;;){for(;r.sibling===null;){if(r.return===null||Zd(r.return))return null;r=r.return}for(r.sibling.return=r.return,r=r.sibling;r.tag!==5&&r.tag!==6&&r.tag!==18;){if(r.flags&2||r.child===null||r.tag===4)continue e;r.child.return=r,r=r.child}if(!(r.flags&2))return r.stateNode}}function cc(r,i,o){var a=r.tag;if(a===5||a===6)r=r.stateNode,i?o.nodeType===8?o.parentNode.insertBefore(r,i):o.insertBefore(r,i):(o.nodeType===8?(i=o.parentNode,i.insertBefore(r,o)):(i=o,i.appendChild(r)),o=o._reactRootContainer,o!=null||i.onclick!==null||(i.onclick=No));else if(a!==4&&(r=r.child,r!==null))for(cc(r,i,o),r=r.sibling;r!==null;)cc(r,i,o),r=r.sibling}function hc(r,i,o){var a=r.tag;if(a===5||a===6)r=r.stateNode,i?o.insertBefore(r,i):o.appendChild(r);else if(a!==4&&(r=r.child,r!==null))for(hc(r,i,o),r=r.sibling;r!==null;)hc(r,i,o),r=r.sibling}var Lt=null,Ar=!1;function Wi(r,i,o){for(o=o.child;o!==null;)tf(r,i,o),o=o.sibling}function tf(r,i,o){if(qr&&typeof qr.onCommitFiberUnmount=="function")try{qr.onCommitFiberUnmount(mo,o)}catch{}switch(o.tag){case 5:zt||Xs(o,i);case 6:var a=Lt,u=Ar;Lt=null,Wi(r,i,o),Lt=a,Ar=u,Lt!==null&&(Ar?(r=Lt,o=o.stateNode,r.nodeType===8?r.parentNode.removeChild(o):r.removeChild(o)):Lt.removeChild(o.stateNode));break;case 18:Lt!==null&&(Ar?(r=Lt,o=o.stateNode,r.nodeType===8?ka(r.parentNode,o):r.nodeType===1&&ka(r,o),fn(r)):ka(Lt,o.stateNode));break;case 4:a=Lt,u=Ar,Lt=o.stateNode.containerInfo,Ar=!0,Wi(r,i,o),Lt=a,Ar=u;break;case 0:case 11:case 14:case 15:if(!zt&&(a=o.updateQueue,a!==null&&(a=a.lastEffect,a!==null))){u=a=a.next;do{var _=u,m=_.destroy;_=_.tag,m!==void 0&&((_&2)!==0||(_&4)!==0)&&lc(o,i,m),u=u.next}while(u!==a)}Wi(r,i,o);break;case 1:if(!zt&&(Xs(o,i),a=o.stateNode,typeof a.componentWillUnmount=="function"))try{a.props=o.memoizedProps,a.state=o.memoizedState,a.componentWillUnmount()}catch(k){ct(o,i,k)}Wi(r,i,o);break;case 21:Wi(r,i,o);break;case 22:o.mode&1?(zt=(a=zt)||o.memoizedState!==null,Wi(r,i,o),zt=a):Wi(r,i,o);break;default:Wi(r,i,o)}}function rf(r){var i=r.updateQueue;if(i!==null){r.updateQueue=null;var o=r.stateNode;o===null&&(o=r.stateNode=new yg),i.forEach(function(a){var u=Tg.bind(null,r,a);o.has(a)||(o.add(a),a.then(u,u))})}}function Or(r,i){var o=i.deletions;if(o!==null)for(var a=0;a<o.length;a++){var u=o[a];try{var _=r,m=i,k=m;e:for(;k!==null;){switch(k.tag){case 5:Lt=k.stateNode,Ar=!1;break e;case 3:Lt=k.stateNode.containerInfo,Ar=!0;break e;case 4:Lt=k.stateNode.containerInfo,Ar=!0;break e}k=k.return}if(Lt===null)throw Error(s(160));tf(_,m,u),Lt=null,Ar=!1;var M=u.alternate;M!==null&&(M.return=null),u.return=null}catch(H){ct(u,i,H)}}if(i.subtreeFlags&12854)for(i=i.child;i!==null;)sf(i,r),i=i.sibling}function sf(r,i){var o=r.alternate,a=r.flags;switch(r.tag){case 0:case 11:case 14:case 15:if(Or(i,r),Jr(r),a&4){try{In(3,r,r.return),il(3,r)}catch(we){ct(r,r.return,we)}try{In(5,r,r.return)}catch(we){ct(r,r.return,we)}}break;case 1:Or(i,r),Jr(r),a&512&&o!==null&&Xs(o,o.return);break;case 5:if(Or(i,r),Jr(r),a&512&&o!==null&&Xs(o,o.return),r.flags&32){var u=r.stateNode;try{oi(u,"")}catch(we){ct(r,r.return,we)}}if(a&4&&(u=r.stateNode,u!=null)){var _=r.memoizedProps,m=o!==null?o.memoizedProps:_,k=r.type,M=r.updateQueue;if(r.updateQueue=null,M!==null)try{k==="input"&&_.type==="radio"&&_.name!=null&&it(u,_),Hr(k,m);var H=Hr(k,_);for(m=0;m<M.length;m+=2){var te=M[m],re=M[m+1];te==="style"?Ei(u,re):te==="dangerouslySetInnerHTML"?Oe(u,re):te==="children"?oi(u,re):$(u,te,re,H)}switch(k){case"input":dr(u,_);break;case"textarea":ki(u,_);break;case"select":var ee=u._wrapperState.wasMultiple;u._wrapperState.wasMultiple=!!_.multiple;var me=_.value;me!=null?Nt(u,!!_.multiple,me,!1):ee!==!!_.multiple&&(_.defaultValue!=null?Nt(u,!!_.multiple,_.defaultValue,!0):Nt(u,!!_.multiple,_.multiple?[]:"",!1))}u[bn]=_}catch(we){ct(r,r.return,we)}}break;case 6:if(Or(i,r),Jr(r),a&4){if(r.stateNode===null)throw Error(s(162));u=r.stateNode,_=r.memoizedProps;try{u.nodeValue=_}catch(we){ct(r,r.return,we)}}break;case 3:if(Or(i,r),Jr(r),a&4&&o!==null&&o.memoizedState.isDehydrated)try{fn(i.containerInfo)}catch(we){ct(r,r.return,we)}break;case 4:Or(i,r),Jr(r);break;case 13:Or(i,r),Jr(r),u=r.child,u.flags&8192&&(_=u.memoizedState!==null,u.stateNode.isHidden=_,!_||u.alternate!==null&&u.alternate.memoizedState!==null||(fc=qe())),a&4&&rf(r);break;case 22:if(te=o!==null&&o.memoizedState!==null,r.mode&1?(zt=(H=zt)||te,Or(i,r),zt=H):Or(i,r),Jr(r),a&8192){if(H=r.memoizedState!==null,(r.stateNode.isHidden=H)&&!te&&(r.mode&1)!==0)for(ve=r,te=r.child;te!==null;){for(re=ve=te;ve!==null;){switch(ee=ve,me=ee.child,ee.tag){case 0:case 11:case 14:case 15:In(4,ee,ee.return);break;case 1:Xs(ee,ee.return);var Se=ee.stateNode;if(typeof Se.componentWillUnmount=="function"){a=ee,o=ee.return;try{i=a,Se.props=i.memoizedProps,Se.state=i.memoizedState,Se.componentWillUnmount()}catch(we){ct(a,o,we)}}break;case 5:Xs(ee,ee.return);break;case 22:if(ee.memoizedState!==null){lf(re);continue}}me!==null?(me.return=ee,ve=me):lf(re)}te=te.sibling}e:for(te=null,re=r;;){if(re.tag===5){if(te===null){te=re;try{u=re.stateNode,H?(_=u.style,typeof _.setProperty=="function"?_.setProperty("display","none","important"):_.display="none"):(k=re.stateNode,M=re.memoizedProps.style,m=M!=null&&M.hasOwnProperty("display")?M.display:null,k.style.display=Pr("display",m))}catch(we){ct(r,r.return,we)}}}else if(re.tag===6){if(te===null)try{re.stateNode.nodeValue=H?"":re.memoizedProps}catch(we){ct(r,r.return,we)}}else if((re.tag!==22&&re.tag!==23||re.memoizedState===null||re===r)&&re.child!==null){re.child.return=re,re=re.child;continue}if(re===r)break e;for(;re.sibling===null;){if(re.return===null||re.return===r)break e;te===re&&(te=null),re=re.return}te===re&&(te=null),re.sibling.return=re.return,re=re.sibling}}break;case 19:Or(i,r),Jr(r),a&4&&rf(r);break;case 21:break;default:Or(i,r),Jr(r)}}function Jr(r){var i=r.flags;if(i&2){try{e:{for(var o=r.return;o!==null;){if(Zd(o)){var a=o;break e}o=o.return}throw Error(s(160))}switch(a.tag){case 5:var u=a.stateNode;a.flags&32&&(oi(u,""),a.flags&=-33);var _=ef(r);hc(r,_,u);break;case 3:case 4:var m=a.stateNode.containerInfo,k=ef(r);cc(r,k,m);break;default:throw Error(s(161))}}catch(M){ct(r,r.return,M)}r.flags&=-3}i&4096&&(r.flags&=-4097)}function wg(r,i,o){ve=r,nf(r)}function nf(r,i,o){for(var a=(r.mode&1)!==0;ve!==null;){var u=ve,_=u.child;if(u.tag===22&&a){var m=u.memoizedState!==null||rl;if(!m){var k=u.alternate,M=k!==null&&k.memoizedState!==null||zt;k=rl;var H=zt;if(rl=m,(zt=M)&&!H)for(ve=u;ve!==null;)m=ve,M=m.child,m.tag===22&&m.memoizedState!==null?af(u):M!==null?(M.return=m,ve=M):af(u);for(;_!==null;)ve=_,nf(_),_=_.sibling;ve=u,rl=k,zt=H}of(r)}else(u.subtreeFlags&8772)!==0&&_!==null?(_.return=u,ve=_):of(r)}}function of(r){for(;ve!==null;){var i=ve;if((i.flags&8772)!==0){var o=i.alternate;try{if((i.flags&8772)!==0)switch(i.tag){case 0:case 11:case 15:zt||il(5,i);break;case 1:var a=i.stateNode;if(i.flags&4&&!zt)if(o===null)a.componentDidMount();else{var u=i.elementType===i.type?o.memoizedProps:Ir(i.type,o.memoizedProps);a.componentDidUpdate(u,o.memoizedState,a.__reactInternalSnapshotBeforeUpdate)}var _=i.updateQueue;_!==null&&od(i,_,a);break;case 3:var m=i.updateQueue;if(m!==null){if(o=null,i.child!==null)switch(i.child.tag){case 5:o=i.child.stateNode;break;case 1:o=i.child.stateNode}od(i,m,o)}break;case 5:var k=i.stateNode;if(o===null&&i.flags&4){o=k;var M=i.memoizedProps;switch(i.type){case"button":case"input":case"select":case"textarea":M.autoFocus&&o.focus();break;case"img":M.src&&(o.src=M.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(i.memoizedState===null){var H=i.alternate;if(H!==null){var te=H.memoizedState;if(te!==null){var re=te.dehydrated;re!==null&&fn(re)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(s(163))}zt||i.flags&512&&ac(i)}catch(ee){ct(i,i.return,ee)}}if(i===r){ve=null;break}if(o=i.sibling,o!==null){o.return=i.return,ve=o;break}ve=i.return}}function lf(r){for(;ve!==null;){var i=ve;if(i===r){ve=null;break}var o=i.sibling;if(o!==null){o.return=i.return,ve=o;break}ve=i.return}}function af(r){for(;ve!==null;){var i=ve;try{switch(i.tag){case 0:case 11:case 15:var o=i.return;try{il(4,i)}catch(M){ct(i,o,M)}break;case 1:var a=i.stateNode;if(typeof a.componentDidMount=="function"){var u=i.return;try{a.componentDidMount()}catch(M){ct(i,u,M)}}var _=i.return;try{ac(i)}catch(M){ct(i,_,M)}break;case 5:var m=i.return;try{ac(i)}catch(M){ct(i,m,M)}}}catch(M){ct(i,i.return,M)}if(i===r){ve=null;break}var k=i.sibling;if(k!==null){k.return=i.return,ve=k;break}ve=i.return}}var Cg=Math.ceil,sl=W.ReactCurrentDispatcher,uc=W.ReactCurrentOwner,Cr=W.ReactCurrentBatchConfig,He=0,bt=null,_t=null,Dt=0,ar=0,Gs=Ni(0),vt=0,An=null,ds=0,nl=0,dc=0,On=null,Jt=null,fc=0,Qs=1/0,_i=null,ol=!1,_c=null,Fi=null,ll=!1,Hi=null,al=0,zn=0,pc=null,cl=-1,hl=0;function Kt(){return(He&6)!==0?qe():cl!==-1?cl:cl=qe()}function ji(r){return(r.mode&1)===0?1:(He&2)!==0&&Dt!==0?Dt&-Dt:ng.transition!==null?(hl===0&&(hl=eu()),hl):(r=Ue,r!==0||(r=window.event,r=r===void 0?16:cu(r.type)),r)}function zr(r,i,o,a){if(50<zn)throw zn=0,pc=null,Error(s(185));an(r,o,a),((He&2)===0||r!==bt)&&(r===bt&&((He&2)===0&&(nl|=o),vt===4&&$i(r,Dt)),Zt(r,a),o===1&&He===0&&(i.mode&1)===0&&(Qs=qe()+500,zo&&Ai()))}function Zt(r,i){var o=r.callbackNode;nm(r,i);var a=yo(r,r===bt?Dt:0);if(a===0)o!==null&&Ct(o),r.callbackNode=null,r.callbackPriority=0;else if(i=a&-a,r.callbackPriority!==i){if(o!=null&&Ct(o),i===1)r.tag===0?sg(hf.bind(null,r)):qu(hf.bind(null,r)),eg(function(){(He&6)===0&&Ai()}),o=null;else{switch(tu(a)){case 1:o=ss;break;case 4:o=Ps;break;case 16:o=jt;break;case 536870912:o=Zh;break;default:o=jt}o=vf(o,cf.bind(null,r))}r.callbackPriority=i,r.callbackNode=o}}function cf(r,i){if(cl=-1,hl=0,(He&6)!==0)throw Error(s(327));var o=r.callbackNode;if(Js()&&r.callbackNode!==o)return null;var a=yo(r,r===bt?Dt:0);if(a===0)return null;if((a&30)!==0||(a&r.expiredLanes)!==0||i)i=ul(r,a);else{i=a;var u=He;He|=2;var _=df();(bt!==r||Dt!==i)&&(_i=null,Qs=qe()+500,_s(r,i));do try{xg();break}catch(k){uf(r,k)}while(!0);Ba(),sl.current=_,He=u,_t!==null?i=0:(bt=null,Dt=0,i=vt)}if(i!==0){if(i===2&&(u=Xl(r),u!==0&&(a=u,i=mc(r,u))),i===1)throw o=An,_s(r,0),$i(r,a),Zt(r,qe()),o;if(i===6)$i(r,a);else{if(u=r.current.alternate,(a&30)===0&&!kg(u)&&(i=ul(r,a),i===2&&(_=Xl(r),_!==0&&(a=_,i=mc(r,_))),i===1))throw o=An,_s(r,0),$i(r,a),Zt(r,qe()),o;switch(r.finishedWork=u,r.finishedLanes=a,i){case 0:case 1:throw Error(s(345));case 2:ps(r,Jt,_i);break;case 3:if($i(r,a),(a&130023424)===a&&(i=fc+500-qe(),10<i)){if(yo(r,0)!==0)break;if(u=r.suspendedLanes,(u&a)!==a){Kt(),r.pingedLanes|=r.suspendedLanes&u;break}r.timeoutHandle=Ca(ps.bind(null,r,Jt,_i),i);break}ps(r,Jt,_i);break;case 4:if($i(r,a),(a&4194240)===a)break;for(i=r.eventTimes,u=-1;0<a;){var m=31-Dr(a);_=1<<m,m=i[m],m>u&&(u=m),a&=~_}if(a=u,a=qe()-a,a=(120>a?120:480>a?480:1080>a?1080:1920>a?1920:3e3>a?3e3:4320>a?4320:1960*Cg(a/1960))-a,10<a){r.timeoutHandle=Ca(ps.bind(null,r,Jt,_i),a);break}ps(r,Jt,_i);break;case 5:ps(r,Jt,_i);break;default:throw Error(s(329))}}}return Zt(r,qe()),r.callbackNode===o?cf.bind(null,r):null}function mc(r,i){var o=On;return r.current.memoizedState.isDehydrated&&(_s(r,i).flags|=256),r=ul(r,i),r!==2&&(i=Jt,Jt=o,i!==null&&gc(i)),r}function gc(r){Jt===null?Jt=r:Jt.push.apply(Jt,r)}function kg(r){for(var i=r;;){if(i.flags&16384){var o=i.updateQueue;if(o!==null&&(o=o.stores,o!==null))for(var a=0;a<o.length;a++){var u=o[a],_=u.getSnapshot;u=u.value;try{if(!Br(_(),u))return!1}catch{return!1}}}if(o=i.child,i.subtreeFlags&16384&&o!==null)o.return=i,i=o;else{if(i===r)break;for(;i.sibling===null;){if(i.return===null||i.return===r)return!0;i=i.return}i.sibling.return=i.return,i=i.sibling}}return!0}function $i(r,i){for(i&=~dc,i&=~nl,r.suspendedLanes|=i,r.pingedLanes&=~i,r=r.expirationTimes;0<i;){var o=31-Dr(i),a=1<<o;r[o]=-1,i&=~a}}function hf(r){if((He&6)!==0)throw Error(s(327));Js();var i=yo(r,0);if((i&1)===0)return Zt(r,qe()),null;var o=ul(r,i);if(r.tag!==0&&o===2){var a=Xl(r);a!==0&&(i=a,o=mc(r,a))}if(o===1)throw o=An,_s(r,0),$i(r,i),Zt(r,qe()),o;if(o===6)throw Error(s(345));return r.finishedWork=r.current.alternate,r.finishedLanes=i,ps(r,Jt,_i),Zt(r,qe()),null}function vc(r,i){var o=He;He|=1;try{return r(i)}finally{He=o,He===0&&(Qs=qe()+500,zo&&Ai())}}function fs(r){Hi!==null&&Hi.tag===0&&(He&6)===0&&Js();var i=He;He|=1;var o=Cr.transition,a=Ue;try{if(Cr.transition=null,Ue=1,r)return r()}finally{Ue=a,Cr.transition=o,He=i,(He&6)===0&&Ai()}}function yc(){ar=Gs.current,Je(Gs)}function _s(r,i){r.finishedWork=null,r.finishedLanes=0;var o=r.timeoutHandle;if(o!==-1&&(r.timeoutHandle=-1,Zm(o)),_t!==null)for(o=_t.return;o!==null;){var a=o;switch(Ra(a),a.tag){case 1:a=a.type.childContextTypes,a!=null&&Ao();break;case 3:Ys(),Je(Xt),Je(It),Ha();break;case 5:Wa(a);break;case 4:Ys();break;case 13:Je(st);break;case 19:Je(st);break;case 10:Na(a.type._context);break;case 22:case 23:yc()}o=o.return}if(bt=r,_t=r=Ki(r.current,null),Dt=ar=i,vt=0,An=null,dc=nl=ds=0,Jt=On=null,cs!==null){for(i=0;i<cs.length;i++)if(o=cs[i],a=o.interleaved,a!==null){o.interleaved=null;var u=a.next,_=o.pending;if(_!==null){var m=_.next;_.next=u,a.next=m}o.pending=a}cs=null}return r}function uf(r,i){do{var o=_t;try{if(Ba(),qo.current=Jo,Xo){for(var a=nt.memoizedState;a!==null;){var u=a.queue;u!==null&&(u.pending=null),a=a.next}Xo=!1}if(us=0,kt=gt=nt=null,Pn=!1,Ln=0,uc.current=null,o===null||o.return===null){vt=1,An=i,_t=null;break}e:{var _=r,m=o.return,k=o,M=i;if(i=Dt,k.flags|=32768,M!==null&&typeof M=="object"&&typeof M.then=="function"){var H=M,te=k,re=te.tag;if((te.mode&1)===0&&(re===0||re===11||re===15)){var ee=te.alternate;ee?(te.updateQueue=ee.updateQueue,te.memoizedState=ee.memoizedState,te.lanes=ee.lanes):(te.updateQueue=null,te.memoizedState=null)}var me=Id(m);if(me!==null){me.flags&=-257,Ad(me,m,k,_,i),me.mode&1&&Nd(_,H,i),i=me,M=H;var Se=i.updateQueue;if(Se===null){var we=new Set;we.add(M),i.updateQueue=we}else Se.add(M);break e}else{if((i&1)===0){Nd(_,H,i),Sc();break e}M=Error(s(426))}}else if(tt&&k.mode&1){var dt=Id(m);if(dt!==null){(dt.flags&65536)===0&&(dt.flags|=256),Ad(dt,m,k,_,i),La(qs(M,k));break e}}_=M=qs(M,k),vt!==4&&(vt=2),On===null?On=[_]:On.push(_),_=m;do{switch(_.tag){case 3:_.flags|=65536,i&=-i,_.lanes|=i;var A=Dd(_,M,i);nd(_,A);break e;case 1:k=M;var P=_.type,z=_.stateNode;if((_.flags&128)===0&&(typeof P.getDerivedStateFromError=="function"||z!==null&&typeof z.componentDidCatch=="function"&&(Fi===null||!Fi.has(z)))){_.flags|=65536,i&=-i,_.lanes|=i;var ae=Bd(_,k,i);nd(_,ae);break e}}_=_.return}while(_!==null)}_f(o)}catch(Ce){i=Ce,_t===o&&o!==null&&(_t=o=o.return);continue}break}while(!0)}function df(){var r=sl.current;return sl.current=Jo,r===null?Jo:r}function Sc(){(vt===0||vt===3||vt===2)&&(vt=4),bt===null||(ds&268435455)===0&&(nl&268435455)===0||$i(bt,Dt)}function ul(r,i){var o=He;He|=2;var a=df();(bt!==r||Dt!==i)&&(_i=null,_s(r,i));do try{bg();break}catch(u){uf(r,u)}while(!0);if(Ba(),He=o,sl.current=a,_t!==null)throw Error(s(261));return bt=null,Dt=0,vt}function bg(){for(;_t!==null;)ff(_t)}function xg(){for(;_t!==null&&!Ht();)ff(_t)}function ff(r){var i=gf(r.alternate,r,ar);r.memoizedProps=r.pendingProps,i===null?_f(r):_t=i,uc.current=null}function _f(r){var i=r;do{var o=i.alternate;if(r=i.return,(i.flags&32768)===0){if(o=gg(o,i,ar),o!==null){_t=o;return}}else{if(o=vg(o,i),o!==null){o.flags&=32767,_t=o;return}if(r!==null)r.flags|=32768,r.subtreeFlags=0,r.deletions=null;else{vt=6,_t=null;return}}if(i=i.sibling,i!==null){_t=i;return}_t=i=r}while(i!==null);vt===0&&(vt=5)}function ps(r,i,o){var a=Ue,u=Cr.transition;try{Cr.transition=null,Ue=1,Eg(r,i,o,a)}finally{Cr.transition=u,Ue=a}return null}function Eg(r,i,o,a){do Js();while(Hi!==null);if((He&6)!==0)throw Error(s(327));o=r.finishedWork;var u=r.finishedLanes;if(o===null)return null;if(r.finishedWork=null,r.finishedLanes=0,o===r.current)throw Error(s(177));r.callbackNode=null,r.callbackPriority=0;var _=o.lanes|o.childLanes;if(om(r,_),r===bt&&(_t=bt=null,Dt=0),(o.subtreeFlags&2064)===0&&(o.flags&2064)===0||ll||(ll=!0,vf(jt,function(){return Js(),null})),_=(o.flags&15990)!==0,(o.subtreeFlags&15990)!==0||_){_=Cr.transition,Cr.transition=null;var m=Ue;Ue=1;var k=He;He|=4,uc.current=null,Sg(r,o),sf(o,r),Vm(Sa),Co=!!ya,Sa=ya=null,r.current=o,wg(o),gr(),He=k,Ue=m,Cr.transition=_}else r.current=o;if(ll&&(ll=!1,Hi=r,al=u),_=r.pendingLanes,_===0&&(Fi=null),em(o.stateNode),Zt(r,qe()),i!==null)for(a=r.onRecoverableError,o=0;o<i.length;o++)u=i[o],a(u.value,{componentStack:u.stack,digest:u.digest});if(ol)throw ol=!1,r=_c,_c=null,r;return(al&1)!==0&&r.tag!==0&&Js(),_=r.pendingLanes,(_&1)!==0?r===pc?zn++:(zn=0,pc=r):zn=0,Ai(),null}function Js(){if(Hi!==null){var r=tu(al),i=Cr.transition,o=Ue;try{if(Cr.transition=null,Ue=16>r?16:r,Hi===null)var a=!1;else{if(r=Hi,Hi=null,al=0,(He&6)!==0)throw Error(s(331));var u=He;for(He|=4,ve=r.current;ve!==null;){var _=ve,m=_.child;if((ve.flags&16)!==0){var k=_.deletions;if(k!==null){for(var M=0;M<k.length;M++){var H=k[M];for(ve=H;ve!==null;){var te=ve;switch(te.tag){case 0:case 11:case 15:In(8,te,_)}var re=te.child;if(re!==null)re.return=te,ve=re;else for(;ve!==null;){te=ve;var ee=te.sibling,me=te.return;if(Jd(te),te===H){ve=null;break}if(ee!==null){ee.return=me,ve=ee;break}ve=me}}}var Se=_.alternate;if(Se!==null){var we=Se.child;if(we!==null){Se.child=null;do{var dt=we.sibling;we.sibling=null,we=dt}while(we!==null)}}ve=_}}if((_.subtreeFlags&2064)!==0&&m!==null)m.return=_,ve=m;else e:for(;ve!==null;){if(_=ve,(_.flags&2048)!==0)switch(_.tag){case 0:case 11:case 15:In(9,_,_.return)}var A=_.sibling;if(A!==null){A.return=_.return,ve=A;break e}ve=_.return}}var P=r.current;for(ve=P;ve!==null;){m=ve;var z=m.child;if((m.subtreeFlags&2064)!==0&&z!==null)z.return=m,ve=z;else e:for(m=P;ve!==null;){if(k=ve,(k.flags&2048)!==0)try{switch(k.tag){case 0:case 11:case 15:il(9,k)}}catch(Ce){ct(k,k.return,Ce)}if(k===m){ve=null;break e}var ae=k.sibling;if(ae!==null){ae.return=k.return,ve=ae;break e}ve=k.return}}if(He=u,Ai(),qr&&typeof qr.onPostCommitFiberRoot=="function")try{qr.onPostCommitFiberRoot(mo,r)}catch{}a=!0}return a}finally{Ue=o,Cr.transition=i}}return!1}function pf(r,i,o){i=qs(o,i),i=Dd(r,i,1),r=zi(r,i,1),i=Kt(),r!==null&&(an(r,1,i),Zt(r,i))}function ct(r,i,o){if(r.tag===3)pf(r,r,o);else for(;i!==null;){if(i.tag===3){pf(i,r,o);break}else if(i.tag===1){var a=i.stateNode;if(typeof i.type.getDerivedStateFromError=="function"||typeof a.componentDidCatch=="function"&&(Fi===null||!Fi.has(a))){r=qs(o,r),r=Bd(i,r,1),i=zi(i,r,1),r=Kt(),i!==null&&(an(i,1,r),Zt(i,r));break}}i=i.return}}function Mg(r,i,o){var a=r.pingCache;a!==null&&a.delete(i),i=Kt(),r.pingedLanes|=r.suspendedLanes&o,bt===r&&(Dt&o)===o&&(vt===4||vt===3&&(Dt&130023424)===Dt&&500>qe()-fc?_s(r,0):dc|=o),Zt(r,i)}function mf(r,i){i===0&&((r.mode&1)===0?i=1:(i=vo,vo<<=1,(vo&130023424)===0&&(vo=4194304)));var o=Kt();r=ui(r,i),r!==null&&(an(r,i,o),Zt(r,o))}function Rg(r){var i=r.memoizedState,o=0;i!==null&&(o=i.retryLane),mf(r,o)}function Tg(r,i){var o=0;switch(r.tag){case 13:var a=r.stateNode,u=r.memoizedState;u!==null&&(o=u.retryLane);break;case 19:a=r.stateNode;break;default:throw Error(s(314))}a!==null&&a.delete(i),mf(r,o)}var gf;gf=function(r,i,o){if(r!==null)if(r.memoizedProps!==i.pendingProps||Xt.current)Qt=!0;else{if((r.lanes&o)===0&&(i.flags&128)===0)return Qt=!1,mg(r,i,o);Qt=(r.flags&131072)!==0}else Qt=!1,tt&&(i.flags&1048576)!==0&&Xu(i,Fo,i.index);switch(i.lanes=0,i.tag){case 2:var a=i.type;tl(r,i),r=i.pendingProps;var u=Fs(i,It.current);Vs(i,o),u=Ka(null,i,a,r,u,o);var _=Ua();return i.flags|=1,typeof u=="object"&&u!==null&&typeof u.render=="function"&&u.$$typeof===void 0?(i.tag=1,i.memoizedState=null,i.updateQueue=null,Gt(a)?(_=!0,Oo(i)):_=!1,i.memoizedState=u.state!==null&&u.state!==void 0?u.state:null,Oa(i),u.updater=Zo,i.stateNode=u,u._reactInternals=i,Qa(i,a,r,o),i=tc(null,i,a,!0,_,o)):(i.tag=0,tt&&_&&Ma(i),$t(null,i,u,o),i=i.child),i;case 16:a=i.elementType;e:{switch(tl(r,i),r=i.pendingProps,u=a._init,a=u(a._payload),i.type=a,u=i.tag=Lg(a),r=Ir(a,r),u){case 0:i=ec(null,i,a,r,o);break e;case 1:i=jd(null,i,a,r,o);break e;case 11:i=Od(null,i,a,r,o);break e;case 14:i=zd(null,i,a,Ir(a.type,r),o);break e}throw Error(s(306,a,""))}return i;case 0:return a=i.type,u=i.pendingProps,u=i.elementType===a?u:Ir(a,u),ec(r,i,a,u,o);case 1:return a=i.type,u=i.pendingProps,u=i.elementType===a?u:Ir(a,u),jd(r,i,a,u,o);case 3:e:{if($d(i),r===null)throw Error(s(387));a=i.pendingProps,_=i.memoizedState,u=_.element,sd(r,i),Vo(i,a,null,o);var m=i.memoizedState;if(a=m.element,_.isDehydrated)if(_={element:a,isDehydrated:!1,cache:m.cache,pendingSuspenseBoundaries:m.pendingSuspenseBoundaries,transitions:m.transitions},i.updateQueue.baseState=_,i.memoizedState=_,i.flags&256){u=qs(Error(s(423)),i),i=Kd(r,i,a,o,u);break e}else if(a!==u){u=qs(Error(s(424)),i),i=Kd(r,i,a,o,u);break e}else for(lr=Bi(i.stateNode.containerInfo.firstChild),or=i,tt=!0,Nr=null,o=rd(i,null,a,o),i.child=o;o;)o.flags=o.flags&-3|4096,o=o.sibling;else{if($s(),a===u){i=fi(r,i,o);break e}$t(r,i,a,o)}i=i.child}return i;case 5:return ld(i),r===null&&Pa(i),a=i.type,u=i.pendingProps,_=r!==null?r.memoizedProps:null,m=u.children,wa(a,u)?m=null:_!==null&&wa(a,_)&&(i.flags|=32),Hd(r,i),$t(r,i,m,o),i.child;case 6:return r===null&&Pa(i),null;case 13:return Ud(r,i,o);case 4:return za(i,i.stateNode.containerInfo),a=i.pendingProps,r===null?i.child=Ks(i,null,a,o):$t(r,i,a,o),i.child;case 11:return a=i.type,u=i.pendingProps,u=i.elementType===a?u:Ir(a,u),Od(r,i,a,u,o);case 7:return $t(r,i,i.pendingProps,o),i.child;case 8:return $t(r,i,i.pendingProps.children,o),i.child;case 12:return $t(r,i,i.pendingProps.children,o),i.child;case 10:e:{if(a=i.type._context,u=i.pendingProps,_=i.memoizedProps,m=u.value,Xe($o,a._currentValue),a._currentValue=m,_!==null)if(Br(_.value,m)){if(_.children===u.children&&!Xt.current){i=fi(r,i,o);break e}}else for(_=i.child,_!==null&&(_.return=i);_!==null;){var k=_.dependencies;if(k!==null){m=_.child;for(var M=k.firstContext;M!==null;){if(M.context===a){if(_.tag===1){M=di(-1,o&-o),M.tag=2;var H=_.updateQueue;if(H!==null){H=H.shared;var te=H.pending;te===null?M.next=M:(M.next=te.next,te.next=M),H.pending=M}}_.lanes|=o,M=_.alternate,M!==null&&(M.lanes|=o),Ia(_.return,o,i),k.lanes|=o;break}M=M.next}}else if(_.tag===10)m=_.type===i.type?null:_.child;else if(_.tag===18){if(m=_.return,m===null)throw Error(s(341));m.lanes|=o,k=m.alternate,k!==null&&(k.lanes|=o),Ia(m,o,i),m=_.sibling}else m=_.child;if(m!==null)m.return=_;else for(m=_;m!==null;){if(m===i){m=null;break}if(_=m.sibling,_!==null){_.return=m.return,m=_;break}m=m.return}_=m}$t(r,i,u.children,o),i=i.child}return i;case 9:return u=i.type,a=i.pendingProps.children,Vs(i,o),u=Sr(u),a=a(u),i.flags|=1,$t(r,i,a,o),i.child;case 14:return a=i.type,u=Ir(a,i.pendingProps),u=Ir(a.type,u),zd(r,i,a,u,o);case 15:return Wd(r,i,i.type,i.pendingProps,o);case 17:return a=i.type,u=i.pendingProps,u=i.elementType===a?u:Ir(a,u),tl(r,i),i.tag=1,Gt(a)?(r=!0,Oo(i)):r=!1,Vs(i,o),Pd(i,a,u),Qa(i,a,u,o),tc(null,i,a,!0,r,o);case 19:return Yd(r,i,o);case 22:return Fd(r,i,o)}throw Error(s(156,i.tag))};function vf(r,i){return Be(r,i)}function Pg(r,i,o,a){this.tag=r,this.key=o,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=i,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=a,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function kr(r,i,o,a){return new Pg(r,i,o,a)}function wc(r){return r=r.prototype,!(!r||!r.isReactComponent)}function Lg(r){if(typeof r=="function")return wc(r)?1:0;if(r!=null){if(r=r.$$typeof,r===D)return 11;if(r===N)return 14}return 2}function Ki(r,i){var o=r.alternate;return o===null?(o=kr(r.tag,i,r.key,r.mode),o.elementType=r.elementType,o.type=r.type,o.stateNode=r.stateNode,o.alternate=r,r.alternate=o):(o.pendingProps=i,o.type=r.type,o.flags=0,o.subtreeFlags=0,o.deletions=null),o.flags=r.flags&14680064,o.childLanes=r.childLanes,o.lanes=r.lanes,o.child=r.child,o.memoizedProps=r.memoizedProps,o.memoizedState=r.memoizedState,o.updateQueue=r.updateQueue,i=r.dependencies,o.dependencies=i===null?null:{lanes:i.lanes,firstContext:i.firstContext},o.sibling=r.sibling,o.index=r.index,o.ref=r.ref,o}function dl(r,i,o,a,u,_){var m=2;if(a=r,typeof r=="function")wc(r)&&(m=1);else if(typeof r=="string")m=5;else e:switch(r){case Z:return ms(o.children,u,_,i);case fe:m=8,u|=8;break;case oe:return r=kr(12,o,i,u|2),r.elementType=oe,r.lanes=_,r;case b:return r=kr(13,o,i,u),r.elementType=b,r.lanes=_,r;case I:return r=kr(19,o,i,u),r.elementType=I,r.lanes=_,r;case Y:return fl(o,u,_,i);default:if(typeof r=="object"&&r!==null)switch(r.$$typeof){case he:m=10;break e;case V:m=9;break e;case D:m=11;break e;case N:m=14;break e;case O:m=16,a=null;break e}throw Error(s(130,r==null?r:typeof r,""))}return i=kr(m,o,i,u),i.elementType=r,i.type=a,i.lanes=_,i}function ms(r,i,o,a){return r=kr(7,r,a,i),r.lanes=o,r}function fl(r,i,o,a){return r=kr(22,r,a,i),r.elementType=Y,r.lanes=o,r.stateNode={isHidden:!1},r}function Cc(r,i,o){return r=kr(6,r,null,i),r.lanes=o,r}function kc(r,i,o){return i=kr(4,r.children!==null?r.children:[],r.key,i),i.lanes=o,i.stateNode={containerInfo:r.containerInfo,pendingChildren:null,implementation:r.implementation},i}function Dg(r,i,o,a,u){this.tag=i,this.containerInfo=r,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Gl(0),this.expirationTimes=Gl(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Gl(0),this.identifierPrefix=a,this.onRecoverableError=u,this.mutableSourceEagerHydrationData=null}function bc(r,i,o,a,u,_,m,k,M){return r=new Dg(r,i,o,k,M),i===1?(i=1,_===!0&&(i|=8)):i=0,_=kr(3,null,null,i),r.current=_,_.stateNode=r,_.memoizedState={element:a,isDehydrated:o,cache:null,transitions:null,pendingSuspenseBoundaries:null},Oa(_),r}function Bg(r,i,o){var a=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:K,key:a==null?null:""+a,children:r,containerInfo:i,implementation:o}}function yf(r){if(!r)return Ii;r=r._reactInternals;e:{if(De(r)!==r||r.tag!==1)throw Error(s(170));var i=r;do{switch(i.tag){case 3:i=i.stateNode.context;break e;case 1:if(Gt(i.type)){i=i.stateNode.__reactInternalMemoizedMergedChildContext;break e}}i=i.return}while(i!==null);throw Error(s(171))}if(r.tag===1){var o=r.type;if(Gt(o))return Vu(r,o,i)}return i}function Sf(r,i,o,a,u,_,m,k,M){return r=bc(o,a,!0,r,u,_,m,k,M),r.context=yf(null),o=r.current,a=Kt(),u=ji(o),_=di(a,u),_.callback=i??null,zi(o,_,u),r.current.lanes=u,an(r,u,a),Zt(r,a),r}function _l(r,i,o,a){var u=i.current,_=Kt(),m=ji(u);return o=yf(o),i.context===null?i.context=o:i.pendingContext=o,i=di(_,m),i.payload={element:r},a=a===void 0?null:a,a!==null&&(i.callback=a),r=zi(u,i,m),r!==null&&(zr(r,u,m,_),Uo(r,u,m)),m}function pl(r){if(r=r.current,!r.child)return null;switch(r.child.tag){case 5:return r.child.stateNode;default:return r.child.stateNode}}function wf(r,i){if(r=r.memoizedState,r!==null&&r.dehydrated!==null){var o=r.retryLane;r.retryLane=o!==0&&o<i?o:i}}function xc(r,i){wf(r,i),(r=r.alternate)&&wf(r,i)}function Ng(){return null}var Cf=typeof reportError=="function"?reportError:function(r){console.error(r)};function Ec(r){this._internalRoot=r}ml.prototype.render=Ec.prototype.render=function(r){var i=this._internalRoot;if(i===null)throw Error(s(409));_l(r,i,null,null)},ml.prototype.unmount=Ec.prototype.unmount=function(){var r=this._internalRoot;if(r!==null){this._internalRoot=null;var i=r.containerInfo;fs(function(){_l(null,r,null,null)}),i[li]=null}};function ml(r){this._internalRoot=r}ml.prototype.unstable_scheduleHydration=function(r){if(r){var i=su();r={blockedOn:null,target:r,priority:i};for(var o=0;o<Pi.length&&i!==0&&i<Pi[o].priority;o++);Pi.splice(o,0,r),o===0&&lu(r)}};function Mc(r){return!(!r||r.nodeType!==1&&r.nodeType!==9&&r.nodeType!==11)}function gl(r){return!(!r||r.nodeType!==1&&r.nodeType!==9&&r.nodeType!==11&&(r.nodeType!==8||r.nodeValue!==" react-mount-point-unstable "))}function kf(){}function Ig(r,i,o,a,u){if(u){if(typeof a=="function"){var _=a;a=function(){var H=pl(m);_.call(H)}}var m=Sf(i,a,r,0,null,!1,!1,"",kf);return r._reactRootContainer=m,r[li]=m.current,Cn(r.nodeType===8?r.parentNode:r),fs(),m}for(;u=r.lastChild;)r.removeChild(u);if(typeof a=="function"){var k=a;a=function(){var H=pl(M);k.call(H)}}var M=bc(r,0,!1,null,null,!1,!1,"",kf);return r._reactRootContainer=M,r[li]=M.current,Cn(r.nodeType===8?r.parentNode:r),fs(function(){_l(i,M,o,a)}),M}function vl(r,i,o,a,u){var _=o._reactRootContainer;if(_){var m=_;if(typeof u=="function"){var k=u;u=function(){var M=pl(m);k.call(M)}}_l(i,m,r,u)}else m=Ig(o,i,r,u,a);return pl(m)}ru=function(r){switch(r.tag){case 3:var i=r.stateNode;if(i.current.memoizedState.isDehydrated){var o=ln(i.pendingLanes);o!==0&&(Ql(i,o|1),Zt(i,qe()),(He&6)===0&&(Qs=qe()+500,Ai()))}break;case 13:fs(function(){var a=ui(r,1);if(a!==null){var u=Kt();zr(a,r,1,u)}}),xc(r,1)}},Jl=function(r){if(r.tag===13){var i=ui(r,134217728);if(i!==null){var o=Kt();zr(i,r,134217728,o)}xc(r,134217728)}},iu=function(r){if(r.tag===13){var i=ji(r),o=ui(r,i);if(o!==null){var a=Kt();zr(o,r,i,a)}xc(r,i)}},su=function(){return Ue},nu=function(r,i){var o=Ue;try{return Ue=r,i()}finally{Ue=o}},Zi=function(r,i,o){switch(i){case"input":if(dr(r,o),i=o.name,o.type==="radio"&&i!=null){for(o=r;o.parentNode;)o=o.parentNode;for(o=o.querySelectorAll("input[name="+JSON.stringify(""+i)+'][type="radio"]'),i=0;i<o.length;i++){var a=o[i];if(a!==r&&a.form===r.form){var u=Io(a);if(!u)throw Error(s(90));Fe(a),dr(a,u)}}}break;case"textarea":ki(r,o);break;case"select":i=o.value,i!=null&&Nt(r,!!o.multiple,i,!1)}},es=vc,ts=fs;var Ag={usingClientEntryPoint:!1,Events:[xn,zs,Io,Es,Ur,vc]},Wn={findFiberByHostInstance:ns,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Og={bundleType:Wn.bundleType,version:Wn.version,rendererPackageName:Wn.rendererPackageName,rendererConfig:Wn.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:W.ReactCurrentDispatcher,findHostInstanceByFiber:function(r){return r=Me(r),r===null?null:r.stateNode},findFiberByHostInstance:Wn.findFiberByHostInstance||Ng,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var yl=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!yl.isDisabled&&yl.supportsFiber)try{mo=yl.inject(Og),qr=yl}catch{}}return er.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Ag,er.createPortal=function(r,i){var o=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Mc(i))throw Error(s(200));return Bg(r,i,null,o)},er.createRoot=function(r,i){if(!Mc(r))throw Error(s(299));var o=!1,a="",u=Cf;return i!=null&&(i.unstable_strictMode===!0&&(o=!0),i.identifierPrefix!==void 0&&(a=i.identifierPrefix),i.onRecoverableError!==void 0&&(u=i.onRecoverableError)),i=bc(r,1,!1,null,null,o,!1,a,u),r[li]=i.current,Cn(r.nodeType===8?r.parentNode:r),new Ec(i)},er.findDOMNode=function(r){if(r==null)return null;if(r.nodeType===1)return r;var i=r._reactInternals;if(i===void 0)throw typeof r.render=="function"?Error(s(188)):(r=Object.keys(r).join(","),Error(s(268,r)));return r=Me(i),r=r===null?null:r.stateNode,r},er.flushSync=function(r){return fs(r)},er.hydrate=function(r,i,o){if(!gl(i))throw Error(s(200));return vl(null,r,i,!0,o)},er.hydrateRoot=function(r,i,o){if(!Mc(r))throw Error(s(405));var a=o!=null&&o.hydratedSources||null,u=!1,_="",m=Cf;if(o!=null&&(o.unstable_strictMode===!0&&(u=!0),o.identifierPrefix!==void 0&&(_=o.identifierPrefix),o.onRecoverableError!==void 0&&(m=o.onRecoverableError)),i=Sf(i,null,r,1,o??null,u,!1,_,m),r[li]=i.current,Cn(r),a)for(r=0;r<a.length;r++)o=a[r],u=o._getVersion,u=u(o._source),i.mutableSourceEagerHydrationData==null?i.mutableSourceEagerHydrationData=[o,u]:i.mutableSourceEagerHydrationData.push(o,u);return new ml(i)},er.render=function(r,i,o){if(!gl(i))throw Error(s(200));return vl(null,r,i,!1,o)},er.unmountComponentAtNode=function(r){if(!gl(r))throw Error(s(40));return r._reactRootContainer?(fs(function(){vl(null,null,r,!1,function(){r._reactRootContainer=null,r[li]=null})}),!0):!1},er.unstable_batchedUpdates=vc,er.unstable_renderSubtreeIntoContainer=function(r,i,o,a){if(!gl(o))throw Error(s(200));if(r==null||r._reactInternals===void 0)throw Error(s(38));return vl(r,i,o,!1,a)},er.version="18.3.1-next-f1338f8080-20240426",er}var Lf;function Ug(){if(Lf)return Pc.exports;Lf=1;function e(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Pc.exports=Kg(),Pc.exports}var Df;function Vg(){if(Df)return Sl;Df=1;var e=Ug();return Sl.createRoot=e.createRoot,Sl.hydrateRoot=e.hydrateRoot,Sl}var Yg=Vg();const tp="arcane-agents.control-groups.v1",rp="arcane-agents.layout-split.v1",qg=420,Gn=.61,Hh=.03,no=Hh,oo=1-Hh,Bc=10;function tn(e,t){const s=e.findIndex(l=>l.id===t.id);if(s<0)return[...e,t];const n=[...e];return n[s]=t,n}function Xg(){if(typeof window>"u")return{};try{const e=window.localStorage.getItem(tp);if(!e)return{};const t=JSON.parse(e);if(!t||typeof t!="object"||Array.isArray(t))return{};const s={};for(const[n,l]of Object.entries(t)){const c=Number(n);if(!Number.isInteger(c)||c<0||c>9)continue;if(typeof l=="string"&&l.trim().length>0){s[c]=[l];continue}if(!Array.isArray(l))continue;const h=l.filter(f=>typeof f=="string"&&f.trim().length>0).filter((f,p,d)=>d.indexOf(f)===p);h.length>0&&(s[c]=h)}return s}catch{return{}}}function Gg(e){if(!(typeof window>"u"))try{const t={};for(const[s,n]of Object.entries(e)){const l=Number(s);if(!Number.isInteger(l)||l<0||l>9||!Array.isArray(n)||n.length===0)continue;const c=n.filter(h=>typeof h=="string"&&h.trim().length>0).filter((h,f,p)=>p.indexOf(h)===f);c.length>0&&(t[String(l)]=c)}window.localStorage.setItem(tp,JSON.stringify(t))}catch{}}function Qg(){if(typeof window>"u")return Gn;try{const e=window.localStorage.getItem(rp);if(!e)return Gn;const t=Number(e);return Number.isFinite(t)?vi(t,no,oo):Gn}catch{return Gn}}function Jg(e){if(!(typeof window>"u"))try{window.localStorage.setItem(rp,String(vi(e,no,oo)))}catch{}}function vi(e,t,s){return Math.max(t,Math.min(s,e))}function jh(e){if(!(e instanceof HTMLElement))return!1;const t=e.tagName.toLowerCase();return e.isContentEditable||t==="input"||t==="textarea"}function Zg(e){return Kl(e)}function Kl(e){return e instanceof HTMLElement&&!!e.closest(".terminal-panel")}function ev(e){if(!e||e.length===0)return[];const t=new Set,s=[];for(const n of e){const l=n.trim();if(!l)continue;const c=l.toLowerCase();t.has(c)||(t.add(c),s.push(l))}return s}function tv(e){const t=ev(e);return t.length===0?"Summon agent":`Summon agent · ${t.join(" / ")}`}function rv(e){const t=e.deliveredWorkerIds.length,s=e.skippedWorkerIds.length,n=e.failed.length;if(t===e.requestedCount&&s===0&&n===0)return`Sent to ${t} ${t===1?"agent":"agents"}.`;const l=[`Sent ${t}/${e.requestedCount}.`];return s>0&&l.push(`Skipped ${s}.`),n>0&&l.push(`Failed ${n}.`),l.join(" ")}function iv(e){return e.reduce((t,s)=>(t.requestedCount+=s.requestedCount,t.deliveredWorkerIds.push(...s.deliveredWorkerIds),t.skippedWorkerIds.push(...s.skippedWorkerIds),t.failed.push(...s.failed),t),{requestedCount:0,deliveredWorkerIds:[],skippedWorkerIds:[],failed:[]})}function sv(e){if(/^[0-9]$/.test(e.key))return Number(e.key);if(/^Digit[0-9]$/.test(e.code))return Number(e.code.slice(5));if(/^Numpad[0-9]$/.test(e.code))return Number(e.code.slice(6))}function nv(e){return!e.ctrlKey||e.metaKey||e.altKey||e.shiftKey?!1:e.key==="]"||e.code==="BracketRight"||e.key.toLowerCase()==="d"||e.code==="KeyD"}function ov({shortcuts:e,selectedWorker:t,selectedWorkers:s=t?[t]:[],onSpawnShortcut:n,onOpenSpawnDialog:l,onOpenPalette:c,onDeselect:h,onKillSelected:f,onRenameSelected:p,onToggleMovementMode:d}){if(s.length>0){const g=s.every(w=>w.status==="stopped"),C=new Set(s.map(w=>w.movementMode)).size===1?s[0]?.movementMode==="wander"?"Wander":"Hold":"Mixed",S=s.length===1?s[0]?.displayName??s[0]?.name??"Selected":`${s.length} selected agents`,v=s.length===1?`${s[0]?.projectId} · ${s[0]?.runtimeId} · ${s[0]?.status} · ${C}`:`${s.filter(w=>w.status==="working").length} working · ${s.filter(w=>w.status==="idle").length} idle · ${C}`;return T.jsxs("div",{className:"bottom-bar",children:[T.jsx("button",{className:"bar-btn subtle",onClick:h,children:"Back"}),T.jsxs("div",{className:"selected-worker-meta",children:[T.jsx("div",{className:"selected-worker-name",children:S}),T.jsx("div",{className:"selected-worker-subline",children:v})]}),T.jsx("button",{className:"bar-btn",onClick:d,children:C==="Mixed"?"Mode: Mixed":`Mode: ${C}`}),T.jsx("button",{className:"bar-btn",onClick:p,children:"Rename"}),T.jsx("button",{className:"bar-btn danger",onClick:f,disabled:g,children:"Kill"})]})}return T.jsxs("div",{className:"bottom-bar",children:[e.map((g,y)=>T.jsx("button",{className:"bar-btn",onClick:()=>n(y),children:g.label},`${g.label}-${y}`)),T.jsx("button",{className:"bar-btn accent",onClick:l,children:"+"}),T.jsx("button",{className:"bar-btn subtle",onClick:c,children:"/"})]})}function lv({open:e,config:t,onSpawnShortcut:s,onSpawnProjectRuntime:n,onClose:l}){const[c,h]=x.useState(""),[f,p]=x.useState(0),d=x.useRef(null),g=x.useMemo(()=>{const S=[];t.shortcuts.forEach((v,w)=>{S.push({id:`shortcut-${w}`,label:`Spawn ${v.label}`,subLabel:`${v.project} · ${v.runtime}`,searchText:`${v.label} ${v.project} ${v.runtime}`.toLowerCase(),run:()=>s(w)})});for(const[v,w]of Object.entries(t.projects))for(const[E,L]of Object.entries(t.runtimes))S.push({id:`combo-${v}-${E}`,label:`${v} + ${L.label}`,subLabel:`${w.shortName} · ${L.command.join(" ")}`,searchText:`${v} ${w.shortName} ${E} ${L.label}`.toLowerCase(),run:()=>n(v,E)});return S},[t,n,s]),y=x.useMemo(()=>{const S=c.trim().toLowerCase();if(!S)return g;const v=S.split(/\s+/g).filter(Boolean);return g.filter(w=>v.every(E=>w.searchText.includes(E)))},[g,c]);if(x.useEffect(()=>{e&&(h(""),p(0),queueMicrotask(()=>{d.current?.focus()}))},[e]),x.useEffect(()=>{f>=y.length&&p(0)},[f,y.length]),!e)return null;const C=S=>{const v=y[S];v&&(v.run(),l())};return T.jsx("div",{className:"overlay",onClick:l,children:T.jsxs("div",{className:"palette",onClick:S=>S.stopPropagation(),children:[T.jsx("input",{ref:d,className:"palette-input",value:c,onChange:S=>h(S.target.value),placeholder:"Type project/runtime or shortcut",onKeyDown:S=>{S.key==="Escape"?(S.preventDefault(),l()):S.key==="ArrowDown"?(S.preventDefault(),p(v=>Math.min(y.length-1,v+1))):S.key==="ArrowUp"?(S.preventDefault(),p(v=>Math.max(0,v-1))):S.key==="Enter"&&(S.preventDefault(),C(f))}}),T.jsxs("div",{className:"palette-list",children:[y.length===0?T.jsx("div",{className:"palette-empty",children:"No matching command"}):null,y.map((S,v)=>{const w=v===f;return T.jsxs("button",{className:`palette-item ${w?"active":""}`,onMouseEnter:()=>p(v),onClick:()=>C(v),children:[T.jsx("span",{children:S.label}),T.jsx("small",{children:S.subLabel})]},S.id)})]})]})})}function av({workerIds:e,workers:t,onClose:s,onConfirm:n}){return e.length===0?null:T.jsx("div",{className:"overlay",onClick:s,children:T.jsxs("div",{className:"dialog kill-confirm-dialog",onClick:l=>l.stopPropagation(),children:[T.jsx("div",{className:"dialog-title",children:e.length>1?"Kill Agents?":"Kill Agent?"}),T.jsx("div",{className:"rename-subtitle",children:e.length>1?`${e.length} selected agents`:t[0]?.displayName??t[0]?.name??"Selected agent"}),T.jsx("div",{className:"kill-confirm-copy",children:e.length>1?"This will terminate all selected sessions and remove those agents from the map.":"This will terminate the session and remove this agent from the map."}),T.jsxs("div",{className:"dialog-actions",children:[T.jsx("button",{className:"bar-btn subtle",type:"button",onClick:s,children:"Cancel"}),T.jsx("button",{className:"bar-btn danger",type:"button",onClick:n,children:"Kill (Enter)"})]}),T.jsx("div",{className:"kill-confirm-hint",children:"Press any other key to dismiss."})]})})}function Ke(e,t,s){return Math.min(s,Math.max(t,e))}function Wr(e,t,s){return{x:e*s.scale+s.offsetX,y:t*s.scale+s.offsetY}}function cv(e,t,s,n){return e.x>=n&&e.x<=t-n&&e.y>=n&&e.y<=s-n}function Nc(e,t,s){return{x:(e-s.offsetX)/s.scale,y:(t-s.offsetY)/s.scale}}function Bf(e){switch(e.length===1?e.toLowerCase():e){case"ArrowUp":case"w":return"up";case"ArrowDown":case"s":return"down";case"ArrowLeft":case"a":return"left";case"ArrowRight":case"d":return"right";default:return}}function hv(e){if(e.length!==1)return!1;const t=e.toLowerCase();return t==="w"||t==="a"||t==="s"||t==="d"}function uv(){const[e,t]=x.useState(void 0),[s,n]=x.useState(void 0);return x.useEffect(()=>{let l=!1;return dv().then(c=>{l||t(c)}).catch(c=>{l||n(c instanceof Error?c.message:"Failed to load map assets")}),()=>{l=!0}},[]),{mapData:e,errorText:s}}async function dv(){const e=await Nf("/api/assets/maps/outpost.json"),t=await Nf("/api/assets/maps/outpost.logic.json"),s=fv(t,e.width,e.height,e.tileSize),n=_v(t.collisionTiles,s,e.width,e.height),l=pv(t,s,e.width,e.height,e.tileSize),c=mv(t,s,e.width,e.height,e.tileSize),h=typeof t.backgroundImage=="string"&&t.backgroundImage.trim().length>0?t.backgroundImage.trim():void 0;if(!h)throw new Error("Map logic must define a non-empty backgroundImage.");return{name:e.name,width:e.width,height:e.height,tileSize:e.tileSize,backgroundImageUrl:h,collisionTileKeys:n,occlusionRects:l,ambientFlameRects:c}}async function Nf(e){const t=await fetch(e);if(!t.ok)throw new Error(`Failed to load ${e}: ${t.status}`);return await t.json()}function fv(e,t,s,n){const l=ro(e?.width,1,4096,t),c=ro(e?.height,1,4096,s),h=ro(e?.tileSize,1,512,n);return{width:l,height:c,tileSize:h,worldWidth:l*h,worldHeight:c*h}}function _v(e,t,s,n){const l=new Set;if(!Array.isArray(e))return l;for(const c of e){if(!Array.isArray(c)||c.length<2)continue;const h=Number(c[0]),f=Number(c[1]);if(!Number.isInteger(h)||!Number.isInteger(f)||h<0||f<0||h>=t.width||f>=t.height)continue;const p=Ke(Math.floor(h/t.width*s),0,s-1),d=Ke(Math.floor(f/t.height*n),0,n-1),g=Math.ceil((h+1)/t.width*s),y=Math.ceil((f+1)/t.height*n),C=Ke(g-1,p,s-1),S=Ke(y-1,d,n-1);for(let v=d;v<=S;v+=1)for(let w=p;w<=C;w+=1)l.add(gv(w,v))}return l}function pv(e,t,s,n,l){const c=If(e,t,s,n,l,e?.occlusionCells,e?.occlusionTiles,"soft"),h=If(e,t,s,n,l,e?.occlusionHardCells,e?.occlusionHardTiles,"hard");return[...c,...h]}function If(e,t,s,n,l,c,h,f){const p=s*l,d=n*l,g=Math.max(1,t.worldWidth),y=Math.max(1,t.worldHeight),C=[],S=new Set,v=(j,$,W,Q)=>{const K=j/g*p,Z=$/y*d,fe=W/g*p,oe=Q/y*d;return{x:K,y:Z,width:fe,height:oe}},w=(j,$,W,Q)=>{if(!Number.isFinite(j)||!Number.isFinite($)||!Number.isFinite(W)||!Number.isFinite(Q)||W<=0||Q<=0)return;const K=Math.min(p,j+W),Z=Math.min(d,$+Q),fe=Math.max(0,j),oe=Math.max(0,$),he=K-fe,V=Z-oe;if(he<=0||V<=0)return;const D=`${fe},${oe},${he},${V}`;S.has(D)||(S.add(D),C.push({x:fe,y:oe,width:he,height:V,mode:f}))},E=c;if(Array.isArray(E)){const j=Math.max(2,t.tileSize),$=ro(e?.occlusionCellSize,2,j,Math.min(8,j));for(const W of E){if(!Array.isArray(W)||W.length<2)continue;const Q=Number(W[0]),K=Number(W[1]);if(!Number.isInteger(Q)||!Number.isInteger(K))continue;const Z=v(Q*$,K*$,$,$);w(Z.x,Z.y,Z.width,Z.height)}if(C.length>0)return C}const L=h;if(Array.isArray(L))for(const j of L){if(!Array.isArray(j)||j.length<2)continue;const $=Number(j[0]),W=Number(j[1]);if(!Number.isInteger($)||!Number.isInteger(W)||$<0||W<0||$>=t.width||W>=t.height)continue;const Q=v($*t.tileSize,W*t.tileSize,t.tileSize,t.tileSize);w(Q.x,Q.y,Q.width,Q.height)}return C}function mv(e,t,s,n,l){const c=s*l,h=n*l,f=Math.max(1,t.worldWidth),p=Math.max(1,t.worldHeight),d=e?.ambientFlameCells;if(!Array.isArray(d))return[];const g=Math.max(2,t.tileSize),y=ro(e?.ambientFlameCellSize,2,g,Math.min(16,g)),C=[],S=new Set;for(const j of d){if(!Array.isArray(j)||j.length<2)continue;const $=Number(j[0]),W=Number(j[1]);if(!Number.isInteger($)||!Number.isInteger(W))continue;const Q=$*y,K=W*y,Z=Q/f*c,fe=K/p*h,oe=y/f*c,he=Math.max(0,Z),V=Math.max(0,fe),D=Math.min(oe,c-he,h-V);if(D<=0)continue;const b=`${he},${V}`;S.has(b)||(S.add(b),C.push({x:he,y:V,width:D,height:D,key:b}))}if(C.length===0)return[];const v=new Set,w=[],E=j=>{const $=[];for(const W of C){if(W.key===j.key)continue;const Q=Math.abs(W.x-j.x),K=Math.abs(W.y-j.y),Z=y*1.5;Q<=Z&&K<=Z&&$.push(W)}return $};for(const j of C){if(v.has(j.key))continue;const $=[],W=[j];for(v.add(j.key);W.length>0;){const Q=W.pop();$.push(Q);for(const K of E(Q))v.has(K.key)||(v.add(K.key),W.push(K))}w.push($)}const L=[];for(let j=0;j<w.length;j+=1){const $=w[j];let W=0,Q=0,K=0;for(const D of $){const b=D.width*D.height;W+=(D.x+D.width*.5)*b,Q+=(D.y+D.height*.5)*b,K+=b}W/=K,Q/=K;let Z=0;for(const D of $){const b=D.x+D.width*.5,I=D.y+D.height*.5,N=b-W,O=I-Q,Y=Math.sqrt(N*N+O*O)+Math.max(D.width,D.height)*.5;Z=Math.max(Z,Y)}let fe=Number.POSITIVE_INFINITY,oe=Number.POSITIVE_INFINITY,he=Number.NEGATIVE_INFINITY,V=Number.NEGATIVE_INFINITY;for(const D of $)fe=Math.min(fe,D.x),oe=Math.min(oe,D.y),he=Math.max(he,D.x+D.width),V=Math.max(V,D.y+D.height);for(const D of $)L.push({x:D.x,y:D.y,width:D.width,height:D.height,clusterId:j,clusterCenterX:W,clusterCenterY:Q,clusterRadius:Z,clusterBoundsX:fe,clusterBoundsY:oe,clusterBoundsWidth:he-fe,clusterBoundsHeight:V-oe})}return L}function ro(e,t,s,n){const l=typeof e=="number"?e:Number(e);if(!Number.isFinite(l))return n;const c=Math.round(l);return Math.max(t,Math.min(s,c))}function gv(e,t){return`${e},${t}`}function vv(e){return e?.collisionTileKeys??new Set}function Al(e,t){if(!t)return e;const s=t.width*t.tileSize,n=t.height*t.tileSize;return{x:Ke(e.x,16,s-16),y:Ke(e.y,16,n-16)}}function yv(e,t){const n=[],l={x:t.x,y:e.y};Math.hypot(l.x-e.x,l.y-e.y)>.01&&n.push(l);const c=n[n.length-1]??e;return Math.hypot(t.x-c.x,t.y-c.y)>.01&&n.push({x:t.x,y:t.y}),n.length===0?[{x:t.x,y:t.y}]:n}function Sv(e,t,s){let n;for(let l=0;l<10;l+=1){const c=Er(0,Math.PI*2),h=t*Er(2.5,4),f=Al({x:e.x+Math.cos(c)*h,y:e.y+Math.sin(c)*h},s);if(Ss(f,s))return f;n||(n=f)}return n?ip(n,s)??e:e}function Ss(e,t){if(!t)return!0;const s=t.width*t.tileSize,n=t.height*t.tileSize;if(e.x<14||e.y<14||e.x>s-14||e.y>n-14)return!1;const l=Ke(Math.floor(e.x/t.tileSize),0,t.width-1),c=Ke(Math.floor(e.y/t.tileSize),0,t.height-1);return!t.collisionTileKeys.has(io(l,c))}function ip(e,t){if(!t||Ss(e,t))return e;const s=Math.max(6,t.tileSize*.28),n=t.tileSize*4;for(let l=s;l<=n;l+=s)for(let c=0;c<16;c+=1){const h=Math.PI*2*c/16,f=Al({x:e.x+Math.cos(h)*l,y:e.y+Math.sin(h)*l},t);if(Ss(f,t))return f}}function Af(e,t){return{x:Ke(Math.floor(e.x/t.tileSize),0,t.width-1),y:Ke(Math.floor(e.y/t.tileSize),0,t.height-1)}}function lo(e,t,s,n){return e<0||t<0||e>=s.width||t>=s.height?!1:!n.has(io(e,t))}function Of(e,t,s){if(lo(e.x,e.y,t,s))return e;const n=Math.max(t.width,t.height);for(let l=1;l<=n;l+=1)for(let c=-l;c<=l;c+=1)for(let h=-l;h<=l;h+=1){if(Math.max(Math.abs(h),Math.abs(c))!==l)continue;const f=e.x+h,p=e.y+c;if(lo(f,p,t,s))return{x:f,y:p}}}function wv(e,t,s,n){const l=io(e.x,e.y),c=io(t.x,t.y);if(l===c)return[e];const h=new Set([l]),f=new Map,p=new Map([[l,0]]),d=new Map([[l,Wf(e,t)]]);for(;h.size>0;){let g,y=Number.POSITIVE_INFINITY;for(const S of h){const v=d.get(S)??Number.POSITIVE_INFINITY;v<y&&(y=v,g=S)}if(!g)break;if(g===c)return kv(f,g);h.delete(g);const C=sp(g);if(C)for(const[S,v]of[[1,0],[-1,0],[0,1],[0,-1]]){const w=C.x+S,E=C.y+v;if(!lo(w,E,s,n))continue;const L=io(w,E),j=(p.get(g)??Number.POSITIVE_INFINITY)+1;j>=(p.get(L)??Number.POSITIVE_INFINITY)||(f.set(L,g),p.set(L,j),d.set(L,j+Wf({x:w,y:E},t)),h.add(L))}}}function Cv(e,t){if(e.length<=1)return[];const s=[];let n={x:e[1].x-e[0].x,y:e[1].y-e[0].y};for(let l=2;l<e.length;l+=1){const c={x:e[l].x-e[l-1].x,y:e[l].y-e[l-1].y};(c.x!==n.x||c.y!==n.y)&&(s.push(zf(e[l-1],t)),n=c)}return s.push(zf(e[e.length-1],t)),s}function zf(e,t){return{x:e.x*t.tileSize+t.tileSize/2,y:e.y*t.tileSize+t.tileSize/2}}function kv(e,t){const s=[];let n=t;for(;n;){const l=sp(n);if(!l)break;s.push(l),n=e.get(n)}return s.reverse(),s}function io(e,t){return`${e},${t}`}function sp(e){const[t,s]=e.split(","),n=Number(t),l=Number(s);if(!(!Number.isInteger(n)||!Number.isInteger(l)))return{x:n,y:l}}function Wf(e,t){return Math.abs(e.x-t.x)+Math.abs(e.y-t.y)}function Er(e,t){return e+Math.random()*(t-e)}function np(e,t,s,n){const c=n*s;return{x:e-c/2,y:t-c*.84,width:c,height:c}}function Ic(e,t,s,n,l,c,h){for(let f=s.length-1;f>=0;f-=1){const p=s[f],d=n.get(p.id)??p.position,g=Wr(d.x,d.y,l);if(c[p.avatarType]?.hasSprites){const S=np(g.x,g.y,l.scale,h.spriteBaseSize),v=5*l.scale;if(e>=S.x-v&&e<=S.x+S.width+v&&t>=S.y-v&&t<=S.y+S.height+v)return p;continue}const C=(h.workerRadius+8)*l.scale;if(Math.hypot(g.x-e,g.y-t)<=C)return p}}const Ol=["south","east","north","west"],Ff=new Map,bv=8;function xv(e){const t=x.useMemo(()=>Array.from(new Set(e.map(c=>c.trim().toLowerCase()).filter(c=>c.length>0))).sort(),[e]),[s,n]=x.useState({}),l=x.useRef(new Set);return x.useEffect(()=>{for(const c of t)s[c]||l.current.has(c)||(l.current.add(c),Ev(c).then(h=>{n(f=>({...f,[c]:h}))}).finally(()=>{l.current.delete(c)}))},[s,t]),s}function Hf(e,t){if(!e||!e.hasSprites)return;if(t.state==="working"&&e.animations.working.length>0)return e.animations.working[t.frameIndex%e.animations.working.length];const s=Mv(e,t.direction,t.state==="walking");if(t.state==="walking"){const n=e.animations.walk[s]??e.animations.walk.south;if(n&&n.length>0)return n[Rv(t.frameIndex,n.length)]}return e.rotations[s]??e.rotations.south??e.animations.working[0]}async function Ev(e){const t=e,s=`/api/assets/characters/${encodeURIComponent(t)}`,n=await Promise.all(Ol.map(async d=>{const g=await op(`${s}/rotations/${d}.png`);return[d,g]})),l=await Promise.all(Ol.map(async d=>{const g=await jf(`${s}/animations/walk/${d}`);return[d,g]})),c=await jf(`${s}/animations/working`,16),h=Object.fromEntries(n.filter(([,d])=>!!d)),f=Object.fromEntries(l.filter(([,d])=>d.length>0)),p=Object.values(h).some(d=>!!d)||Object.values(f).some(d=>Array.isArray(d)&&d.length>0)||c.length>0;return{type:e,assetType:t,rotations:h,animations:{walk:f,working:c},hasSprites:p}}async function jf(e,t=48){const s=[];for(let n=0;n<t;n+=1){const l=await op(`${e}/${n}.png`);if(!l)break;s.push(l)}return s}function op(e){const t=Ff.get(e);if(t)return t;const s=new Promise(n=>{const l=new Image;l.onload=()=>n(l),l.onerror=()=>n(null),l.src=e});return Ff.set(e,s),s}function Mv(e,t,s){if(s){if(e.animations.walk[t]?.length)return t;for(const n of Ol)if(e.animations.walk[n]?.length)return n}if(e.rotations[t])return t;for(const n of Ol)if(e.rotations[n])return n;return"south"}function Rv(e,t){if(t<=1)return 0;const s=Math.max(bv,t),n=(e%s+s)%s;return Math.min(t-1,Math.floor(n/s*t))}function $f(e,t,s,n){return{x:Math.min(e,s),y:Math.min(t,n),width:Math.abs(s-e),height:Math.abs(n-t)}}function Tv(e,t,s,n,l){const c=[],h=Math.max(8,l*n.scale*.7),f=e.x,p=e.x+e.width,d=e.y,g=e.y+e.height;for(const y of t){const C=s.get(y.id)??y.position,S=Wr(C.x,C.y,n);S.x>=f-h&&S.x<=p+h&&S.y>=d-h&&S.y<=g+h&&c.push(y.id)}return c}function Pv(e,t){t.width<=0||t.height<=0||(e.save(),e.fillStyle="rgba(101, 210, 160, 0.16)",e.strokeStyle="rgba(171, 246, 211, 0.82)",e.lineWidth=1.2,e.fillRect(t.x,t.y,t.width,t.height),e.strokeRect(t.x+.5,t.y+.5,t.width-1,t.height-1),e.restore())}function Lv(e,t,s,n){const l=n-s.startedAtMs;if(l<0||l>s.durationMs)return;const c=Ke(l/s.durationMs,0,1),h=1-c;if(e.save(),e.lineJoin="round",e.lineCap="round",s.kind==="ok"&&s.path&&s.path.length>=2){e.beginPath();const d=Wr(s.path[0].x,s.path[0].y,t);e.moveTo(d.x,d.y);for(let g=1;g<s.path.length;g+=1){const y=Wr(s.path[g].x,s.path[g].y,t);e.lineTo(y.x,y.y)}e.strokeStyle=`rgba(180, 245, 215, ${.7*h})`,e.lineWidth=Math.max(1.5,2.6*t.scale),e.stroke()}const f=Wr(s.destination.x,s.destination.y,t),p=.25+Math.sin(c*Math.PI*4)*.1;if(s.kind==="ok"){const d=(12+p*18)*t.scale,g=6*t.scale;e.strokeStyle=`rgba(174, 244, 212, ${.9*h})`,e.lineWidth=Math.max(1.2,2.2*t.scale),e.beginPath(),e.arc(f.x,f.y,d,0,Math.PI*2),e.stroke(),e.fillStyle=`rgba(201, 255, 226, ${.55*h})`,e.beginPath(),e.arc(f.x,f.y,g,0,Math.PI*2),e.fill()}else{const d=(12+c*10)*t.scale;e.strokeStyle=`rgba(255, 126, 126, ${.95*h})`,e.lineWidth=Math.max(1.4,2.5*t.scale),e.beginPath(),e.moveTo(f.x-d*.65,f.y-d*.65),e.lineTo(f.x+d*.65,f.y+d*.65),e.moveTo(f.x+d*.65,f.y-d*.65),e.lineTo(f.x-d*.65,f.y+d*.65),e.stroke(),e.beginPath(),e.strokeStyle=`rgba(255, 150, 150, ${.45*h})`,e.lineWidth=Math.max(1,1.6*t.scale),e.arc(f.x,f.y,d,0,Math.PI*2),e.stroke()}e.restore()}const Ac=3.4,Kf=520,wl=16,Dv={muted:{shimmerCycleMs:2600,baseTop:"rgba(111, 84, 22, 0.95)",baseHighlight:"rgba(208, 172, 74, 0.93)",baseMid:"rgba(171, 130, 42, 0.93)",baseBottom:"rgba(124, 94, 27, 0.95)",specular:"rgba(245, 227, 173, 0.36)",innerTopShade:"rgba(102, 76, 20, 0.2)",innerBottomShade:"rgba(84, 61, 16, 0.34)",bevelLight:"rgba(216, 184, 93, 0.7)",bevelDark:"rgba(94, 68, 16, 0.76)",shimmerOuter:"rgba(255, 247, 217, 0)",shimmerInner:"rgba(255, 246, 215, 0.34)",textShadow:"rgba(230, 208, 145, 0.38)",textFill:"#251806"}},Zc=Dv.muted,eh={pulseCycleMs:1700,baseTop:"rgba(168, 92, 27, 0.96)",baseMid:"rgba(207, 122, 44, 0.95)",baseBottom:"rgba(139, 77, 21, 0.97)",borderLight:"rgba(241, 177, 98, 0.88)",borderDark:"rgba(97, 49, 11, 0.92)",pulseGlowRgb:"255, 212, 138",textShadow:"rgba(255, 228, 178, 0.54)",textFill:"#251003"};function Uf(e,t,s,n,l,c){const h=np(s,n,l,c);return e.save(),e.shadowColor="rgba(8, 12, 10, 0.5)",e.shadowOffsetX=0,e.shadowOffsetY=Math.max(1,Math.round(2*l)),e.shadowBlur=0,e.drawImage(t,h.x,h.y,h.width,h.height),e.restore(),h}function Vf(e,t,s,n,l,c){e.fillStyle=Hv(t.avatarType),e.beginPath(),e.arc(s,n,l,0,Math.PI*2),e.fill(),e.strokeStyle="rgba(8, 12, 10, 0.7)",e.lineWidth=Math.max(1,1.5*c),e.stroke(),e.fillStyle="rgba(15, 24, 19, 0.45)",e.fillRect(s-4*c,n-3*c,8*c,6*c)}function Yf(e,t,s,n){e.fillStyle="rgba(7, 12, 10, 0.28)",e.beginPath(),e.ellipse(t,s+2*n,8*n,4.5*n,0,0,Math.PI*2),e.fill()}function Bv(e,t,s,n){const l=jv(n);if(e.save(),e.strokeStyle=l.stroke,e.lineWidth=l.lineWidth,t.spriteBounds){const c=t.spriteBounds;e.strokeRect(c.x-2*s,c.y-2*s,c.width+4*s,c.height+4*s)}else e.beginPath(),e.arc(t.screenX,t.screenY,t.radius+6*s,0,Math.PI*2),e.stroke();e.restore()}function Nv(e,t,s,n,l){const c=Math.max(12,Math.round(14*l)),h=Math.max(2,Math.round(3*l)),f=n.length*c+(n.length-1)*h,p=Math.round(t-f/2),d=Math.round(s);e.font=`${Math.max(10,Math.round(10*l))}px 'Trebuchet MS', sans-serif`,e.textAlign="center",e.textBaseline="middle",n.forEach((g,y)=>{const C=p+y*(c+h);e.fillStyle="rgba(12, 17, 15, 0.88)",e.fillRect(C,d,c,c),e.strokeStyle="rgba(235, 242, 207, 0.72)",e.lineWidth=1,e.strokeRect(C,d,c,c),e.fillStyle="#f2f5dd",e.fillText(g,C+c/2,d+c/2+.5)}),e.textBaseline="alphabetic"}function Iv(e,t,s,n){if(e.fillStyle="#eff3d8",e.fillText(t.text,s,n),t.shimmerPhase===void 0)return;const l=Array.from(t.text);if(l.length<2)return;const c=l.map(d=>e.measureText(d).width),h=c.reduce((d,g)=>d+g,0);if(h<=0)return;const f=t.shimmerPhase*(l.length+Ac*2)-Ac;let p=s-h/2;for(let d=0;d<l.length;d+=1){const g=c[d]??0,y=Math.max(0,1-Math.abs(d-f)/Ac);if(y>0&&g>0){const C=.2+.72*y;e.fillStyle=`rgba(255, 255, 247, ${C.toFixed(3)})`,e.fillText(l[d]??"",p+g/2,n)}p+=g}}function Av(e,t,s){if(t.length){e.save(),e.textAlign="center",e.font="12px 'Trebuchet MS', sans-serif";for(const n of t){if(!n.visible)continue;const l=Math.max(90,e.measureText(n.label).width+18),c=18,h=n.anchorX-l/2;if(n.completionKey!==void 0){const f=th(n.completionKey);Ov(e,h,n.topY,l,c,s,f),e.fillStyle=Zc.textShadow,e.fillText(n.label,n.anchorX,n.topY+14),e.fillStyle=Zc.textFill}else if(n.attentionKey!==void 0){const f=th(n.attentionKey);zv(e,h,n.topY,l,c,s,f),e.fillStyle=eh.textShadow,e.fillText(n.label,n.anchorX,n.topY+14),e.fillStyle=eh.textFill}else e.fillStyle="rgba(0, 0, 0, 0.56)",e.fillRect(h,n.topY,l,c),e.fillStyle="#f8f7e5";e.fillText(n.label,n.anchorX,n.topY+13)}e.restore()}}function Ov(e,t,s,n,l,c,h){const f=Zc,p=Math.round(t),d=Math.round(s),g=Math.max(1,Math.round(n)),y=Math.max(1,Math.round(l)),C=e.createLinearGradient(0,d,0,d+y);C.addColorStop(0,f.baseTop),C.addColorStop(.26,f.baseHighlight),C.addColorStop(.58,f.baseMid),C.addColorStop(1,f.baseBottom),e.fillStyle=C,e.fillRect(p,d,g,y);const S=d+Math.max(2,Math.floor(y*.24)),v=Math.max(1,Math.floor(y*.16));e.fillStyle=f.specular,e.fillRect(p+2,S,Math.max(0,g-4),v),e.fillStyle=f.innerTopShade,e.fillRect(p+1,d+1,Math.max(0,g-2),1),e.fillStyle=f.innerBottomShade,e.fillRect(p+1,d+y-2,Math.max(0,g-2),1),e.fillStyle=f.bevelLight,e.fillRect(p,d,g,1),e.fillRect(p,d,1,y),e.fillStyle=f.bevelDark,e.fillRect(p,d+y-1,g,1),e.fillRect(p+g-1,d,1,y);const w=(c+h*37)%f.shimmerCycleMs/f.shimmerCycleMs,E=p-wl+w*(g+wl*2),L=e.createLinearGradient(E-wl,0,E+wl,0);L.addColorStop(0,f.shimmerOuter),L.addColorStop(.45,f.shimmerInner),L.addColorStop(.55,f.shimmerInner),L.addColorStop(1,f.shimmerOuter),e.fillStyle=L,e.fillRect(p,d,g,y)}function zv(e,t,s,n,l,c,h){const f=eh,p=Math.round(t),d=Math.round(s),g=Math.max(1,Math.round(n)),y=Math.max(1,Math.round(l)),C=e.createLinearGradient(0,d,0,d+y);C.addColorStop(0,f.baseTop),C.addColorStop(.54,f.baseMid),C.addColorStop(1,f.baseBottom),e.fillStyle=C,e.fillRect(p,d,g,y);const S=(c+h*41)%f.pulseCycleMs/f.pulseCycleMs,v=.16+.22*(.5+.5*Math.sin(S*Math.PI*2));e.fillStyle=`rgba(${f.pulseGlowRgb}, ${v.toFixed(3)})`,e.fillRect(p+1,d+1,Math.max(0,g-2),Math.max(0,y-2)),e.fillStyle=f.borderLight,e.fillRect(p,d,g,1),e.fillRect(p,d,1,y),e.fillStyle=f.borderDark,e.fillRect(p,d+y-1,g,1),e.fillRect(p+g-1,d,1,y)}function th(e){let t=0;for(let s=0;s<e.length;s+=1)t=t*31+e.charCodeAt(s)>>>0;return t}function Wv(e){const t=new Map;if(!e)return t;for(const[s,n]of Object.entries(e))if(!(!Array.isArray(n)||n.length===0))for(const l of n){if(!l)continue;const c=t.get(l)??[];c.push(s),t.set(l,c)}for(const s of t.values())s.sort((n,l)=>Number(n)-Number(l));return t}function Fv(e,t){const s=Date.parse(e);if(!Number.isFinite(s))return;const n=t-s;if(!(n<0||n>Kf))return Math.max(0,Math.min(1,n/Kf))}function Hv(e){const t=e.trim().toLowerCase();return t?`hsl(${th(t)%360} 35% 56%)`:"#7a8c9a"}function jv(e){switch(e){case"terminal-focused":return{stroke:"#8ce8ff",lineWidth:2.4};case"group-focused":return{stroke:"#ffd27a",lineWidth:2.2};case"group-focused-terminal":return{stroke:"#8ce8ff",lineWidth:2.4};case"selected":default:return{stroke:"#f1f2d4",lineWidth:2}}}const $v=.98,Kv="v4",Cl=new Map;function Uv(e,t,s,n){const l=s.width*s.tileSize,c=s.height*s.tileSize,h=Wr(0,0,t);e.save(),e.imageSmoothingEnabled=!0,e.drawImage(n,h.x,h.y,l*t.scale,c*t.scale),e.restore()}function Vv(e,t,s,n,l,c){const h=l.width*l.tileSize,f=l.height*l.tileSize,p=c.naturalWidth/h,d=c.naturalHeight/f;e.save(),e.imageSmoothingEnabled=!0;for(const g of l.occlusionRects){const y=Wr(g.x,g.y,t),C=g.width*t.scale,S=g.height*t.scale;y.x>s||y.y>n||y.x+C<0||y.y+S<0||(e.globalAlpha=$v,e.drawImage(c,g.x*p,g.y*d,g.width*p,g.height*d,y.x,y.y,C,S))}e.restore()}function qf(e,t,s,n,l,c,h){if(l.ambientFlameRects.length===0)return;const f=l.width*l.tileSize,p=l.height*l.tileSize,d=c.naturalWidth/f,g=c.naturalHeight/p,y=h/1e3,C=new Map;for(const S of l.ambientFlameRects){let v=C.get(S.clusterId);v||(v={id:S.clusterId,phase:S.clusterId*1.37,centerX:S.clusterCenterX,centerY:S.clusterCenterY,radius:S.clusterRadius,boundsX:S.clusterBoundsX,boundsY:S.clusterBoundsY,boundsWidth:S.clusterBoundsWidth,boundsHeight:S.clusterBoundsHeight,cells:[]},C.set(S.clusterId,v)),v.cells.push(S)}for(const S of C.values()){const v=S.phase,w=Wr(S.boundsX,S.boundsY,t),E=S.boundsWidth*t.scale,L=S.boundsHeight*t.scale,j=Math.max(6,Math.max(E,L)*.35);if(w.x+E<-j||w.y+L<-j||w.x>s+j||w.y>n+j)continue;const $=.26+Math.sin(y*8.1+v)*.06+Math.sin(y*13.7+v*1.9)*.045,W=Math.sin(y*4.6+v*1.3)*E*.003,Q=Math.cos(y*3.4+v*.8)*L*.008,K=.996+Math.sin(y*6.7+v*.9)*.015,Z=.992+Math.sin(y*5.9+v*1.1)*.02,fe=E*K,oe=L*Z,he=w.x+W-(fe-E)*.5,V=w.y+Q-(oe-L),D=S.boundsX*d,b=S.boundsY*g,I=Math.max(1,S.boundsWidth*d),N=Math.max(1,S.boundsHeight*g),O=Yv(c,D,b,I,N,S.id);if(O.heatCoverage<=.004)continue;e.save(),e.imageSmoothingEnabled=!0,e.globalCompositeOperation="screen",e.globalAlpha=Ke($,.12,.42);const Y=Math.max(.45,t.scale*.18);e.drawImage(O.canvas,he,V,fe,oe),e.globalAlpha*=.24,e.drawImage(O.canvas,he-Y,V,fe,oe),e.drawImage(O.canvas,he+Y,V,fe,oe),e.drawImage(O.canvas,he,V-Y,fe,oe),e.drawImage(O.canvas,he,V+Y,fe,oe),e.globalCompositeOperation="lighter",e.globalAlpha=Ke($*.2,.05,.16),e.drawImage(O.canvas,he,V,fe,oe),e.restore()}for(const S of C.values()){const v=S.phase,w=.88+Math.sin(y*3.4+v*.7)*.12,E=(S.centerX+t.offsetX)*t.scale,L=(S.centerY+t.offsetY)*t.scale,j=Math.max(6,S.radius*t.scale*(.7+w*.25));if(E<-j||L<-j||E>s+j||L>n+j)continue;e.save(),e.globalCompositeOperation="lighter";const $=e.createRadialGradient(E,L,0,E,L,j);$.addColorStop(0,"rgba(255, 214, 132, 0.22)"),$.addColorStop(.35,"rgba(255, 168, 80, 0.14)"),$.addColorStop(.7,"rgba(255, 128, 48, 0.06)"),$.addColorStop(1,"rgba(255, 98, 28, 0)"),e.fillStyle=$,e.beginPath(),e.arc(E,L,j,0,Math.PI*2),e.fill(),e.restore()}}function Yv(e,t,s,n,l,c){const h=Math.floor(t),f=Math.floor(s),p=Math.max(1,Math.ceil(n)),d=Math.max(1,Math.ceil(l)),g=[Kv,e.currentSrc||e.src,c,h,f,p,d].join(":"),y=Cl.get(g);if(y)return y;const C=document.createElement("canvas");C.width=p,C.height=d;const S=C.getContext("2d",{willReadFrequently:!0});if(!S){const v={canvas:C,heatCoverage:0};return Cl.set(g,v),v}S.clearRect(0,0,p,d),S.drawImage(e,h,f,p,d,0,0,p,d);try{const w=S.getImageData(0,0,p,d).data,E=p*d,L=new Float32Array(E);for(let b=0;b<E;b+=1){const I=b*4,N=w[I]/255,O=w[I+1]/255,Y=w[I+2]/255,B=w[I+3]/255,F=Math.max(N,O,Y),J=Math.min(N,O,Y),R=F-J,U=F<=0?0:R/F;let le=0;R>1e-4&&(F===N?le=(O-Y)/R%6:F===O?le=(Y-N)/R+2:le=(N-O)/R+4,le*=60,le<0&&(le+=360));const ie=le>=20&&le<=54,ue=N>O*.94&&O>Y*1.16,_e=U>.34,Re=F>.5,ge=le>=34&&le<=66&&F>.8&&U>.24&&Y<.56;let ke=0;if(ie&&ue&&_e&&Re||ge){const Ae=ie?1:.45,Ye=Ke((U-.3)/.52,0,1),Fe=Ke((F-.48)/.44,0,1),be=Ke((N-Y)/.5,0,1),et=Ke((O-Y)/.44,0,1);ke=Ae*(Ye*.42+Fe*.24+be*.2+et*.14)}(U<.24||F<.38)&&(ke*=0),L[b]=Ke(ke*B,0,1)}let j=0;for(let b=0;b<L.length;b+=1)j=Math.max(j,L[b]);const $=Ke(Math.max(.52,j*.72),.52,.82),W=new Float32Array(E);for(let b=0;b<d;b+=1)for(let I=0;I<p;I+=1){const N=b*p+I,O=b>0?L[N-p]:L[N],Y=b<d-1?L[N+p]:L[N],B=I>0?L[N-1]:L[N],F=I<p-1?L[N+1]:L[N];W[N]=Ke((L[N]*6+O+Y+B+F)/10,0,1)}const Q=Ke(Math.max($+.16,j*.82),.62,.94),K=Ke($*.9,.45,.74),Z=new Uint8Array(E),fe=[];for(let b=0;b<E;b+=1)W[b]>=Q&&(Z[b]=1,fe.push(b));for(;fe.length>0;){const b=fe.pop(),I=b%p,N=Math.floor(b/p),O=Y=>{Z[Y]!==1&&(W[Y]<K||(Z[Y]=1,fe.push(Y)))};I>0&&O(b-1),I<p-1&&O(b+1),N>0&&O(b-p),N<d-1&&O(b+p)}const oe=S.createImageData(p,d),he=oe.data;let V=0;for(let b=0;b<E;b+=1){const I=Z[b]===1?W[b]:0,N=I>$?Ke((I-$)/(1-$),0,1):0,O=b*4;he[O]=255,he[O+1]=Math.round(168+N*82),he[O+2]=Math.round(68+N*60),he[O+3]=Math.round(Ke(N*N*255*1.45,0,255)),N>.08&&(V+=1)}S.clearRect(0,0,p,d),S.putImageData(oe,0,0);const D={canvas:C,heatCoverage:V/Math.max(1,E)};return Cl.set(g,D),D}catch{const v={canvas:C,heatCoverage:0};return Cl.set(g,v),v}}function qv(e,t){const s=e.x,n=e.y,l=t.tileSize*.2,c=t.tileSize*.08,h={left:s-t.tileSize*.48,top:n-t.tileSize*1.46,right:s+t.tileSize*.48,bottom:n+t.tileSize*.24};for(const f of t.occlusionRects){const p={left:f.x,top:f.y,right:f.x+f.width,bottom:f.y+f.height};if(f.mode==="hard"){if(Xf(h,p))return!0;continue}const d=f.x-l,g=f.x+f.width+l;if(s<d||s>g)continue;const y=f.y+f.height;if(!(n>y-c)&&Xf(h,p))return!0}return!1}function Xf(e,t){return e.left<t.right&&e.right>t.left&&e.top<t.bottom&&e.bottom>t.top}const Gf=420,Xv=.44,Gv=320;function Qv({context:e,width:t,height:s,workers:n,fadingWorkers:l,displayedPositions:c,workerMotion:h,selectedWorkerId:f,selectedWorkerIds:p,focusedSelectedWorkerId:d,terminalFocusedSelected:g,terminalFocusedWorkerId:y,controlGroups:C,completionPendingWorkerIds:S,viewport:v,mapData:w,spriteLibrary:E,animationTick:L,walkAnimationTick:j,commandFeedback:$,mapPreviewImage:W,activityOverlayStateByWorker:Q,marqueeSelection:K,workerRadius:Z,spriteBaseSize:fe,activeWorkerIds:oe}){e.clearRect(0,0,t,s);const he=Date.now(),V=Wv(C);w&&W&&Uv(e,v,w,W),$&&Lv(e,v,$,he),e.textAlign="center",e.imageSmoothingEnabled=!1;const D=oe??new Set(n.map(F=>F.id)),b=new Set(p),I=[],N=[],O=new Set;if(w&&w.occlusionRects.length>0)for(const F of n){const J=c[F.id]??F.position;qv(J,w)&&O.add(F.id)}const Y=(F,J={})=>{const R=J.queueNameplate??!0,U=J.drawUi??!0,le=J.ghostAlpha,ie=c[F.id]??F.position,ue=Wr(ie.x,ie.y,v),_e=h[F.id]??{moving:!1,facing:"south"},Re=F.displayName??F.name,ge=V.get(F.id)??[],ke=Fv(F.createdAt,he),Ae=ke===void 0?v.scale:v.scale*(.86+ke*.14),Ye=ke===void 0?1:.2+ke*.8,Fe=Z*Ae,be=E[F.avatarType],et=_e.moving?"walking":F.status==="working"?"working":"idle",ni=Hf(be,{direction:_e.facing,state:et,frameIndex:et==="walking"?j:L});le===void 0&&(Yf(e,ue.x,ue.y,Ae),ke!==void 0&&Jv(e,ue.x,ue.y,v.scale,ke));let it;if(e.save(),e.globalAlpha=Ye*(le??1),ni?it=Uf(e,ni,ue.x,ue.y,Ae,fe):Vf(e,F,ue.x,ue.y,Fe,Ae),e.restore(),b.has(F.id)&&I.push({workerId:F.id,screenX:ue.x,screenY:ue.y,radius:Fe,spriteBounds:it}),!U)return;const dr=Q[F.id];if(dr?.text){e.font="10px 'Trebuchet MS', sans-serif";const Ft=Math.ceil(e.measureText(dr.text).width),at=Math.max(44,Math.min(Gv,Ft+16)),qt=16,Nt=it?it.y-14*v.scale:ue.y-Fe-22*v.scale;e.fillStyle="rgba(14, 21, 18, 0.85)",e.fillRect(ue.x-at/2,Nt,at,qt),e.strokeStyle="rgba(237, 244, 210, 0.5)",e.lineWidth=1,e.strokeRect(ue.x-at/2,Nt,at,qt),Iv(e,dr,ue.x,Nt+11)}if(ge.length>0){const Ft=it?it.x+it.width/2:ue.x;let at=it?it.y-12*v.scale:ue.y-Fe-18*v.scale;dr?.text&&(at-=18*v.scale),Nv(e,Ft,at,ge,v.scale)}if(R){const Ft=S?.has(F.id)&&F.status==="idle",at=F.status==="attention";N.push({anchorX:it?it.x+it.width/2:ue.x,topY:(it?it.y+it.height:ue.y+Fe)+4*v.scale,label:Re,visible:!0,completionKey:Ft?F.id:void 0,attentionKey:at?F.id:void 0})}};if(w&&W&&w.occlusionRects.length>0){for(const F of n)O.has(F.id)&&Y(F,{queueNameplate:!0});Vv(e,v,t,s,w,W),qf(e,v,t,s,w,W,he);for(const F of n)O.has(F.id)||Y(F,{queueNameplate:!0});for(const F of n)O.has(F.id)&&Y(F,{queueNameplate:!1,drawUi:!1,ghostAlpha:Xv})}else{w&&W&&qf(e,v,t,s,w,W,he);for(const F of n)Y(F,{queueNameplate:!0})}if(l&&l.length>0){const F=Date.now();for(const J of l){if(D.has(J.worker.id))continue;const R=F-J.startedAtMs,U=Ke(1-R/Gf,0,1);if(U<=0)continue;const le=Ke(R/Gf,0,1),ie=c[J.worker.id]??J.worker.position,ue=Wr(ie.x,ie.y,v),_e=Z*v.scale,Re=E[J.worker.avatarType],ge=Hf(Re,{direction:"south",state:"idle",frameIndex:L});e.save(),e.globalAlpha=U,Yf(e,ue.x,ue.y,v.scale),Zv(e,ue.x,ue.y,v.scale,le,U),ge?Uf(e,ge,ue.x,ue.y,v.scale,fe):Vf(e,J.worker,ue.x,ue.y,_e,v.scale),e.restore()}}Av(e,N,he);const B=p.length>1;for(const F of I){const J=B&&!!(d&&F.workerId===d),R=!!(y&&F.workerId===y)||!!(g&&f===F.workerId),U=J?R?"group-focused-terminal":"group-focused":R?"terminal-focused":"selected";Bv(e,F,v.scale,U)}K&&Pv(e,K)}function Jv(e,t,s,n,l){const c=(1-l)*.85;if(c<=.01)return;const h=(8+(1-l)*10)*n,f=s+1.5*n;e.save(),e.strokeStyle=`rgba(172, 242, 216, ${c})`,e.lineWidth=Math.max(1.2,2*n),e.beginPath(),e.arc(t,f,h,0,Math.PI*2),e.stroke(),e.strokeStyle=`rgba(207, 255, 235, ${c*.75})`,e.lineWidth=Math.max(.8,1.2*n);for(let p=0;p<4;p+=1){const d=l*Math.PI*2+Math.PI/2*p,g=Math.cos(d)*h*.65,y=Math.sin(d)*h*.35;e.beginPath(),e.arc(t+g,f+y,2.2*n,0,Math.PI*2),e.stroke()}e.restore()}function Zv(e,t,s,n,l,c){const h=(9+l*12)*n,f=s+1.5*n,p=c*.55;p<=.01||(e.save(),e.strokeStyle=`rgba(139, 194, 255, ${p})`,e.lineWidth=Math.max(1,1.8*n),e.beginPath(),e.arc(t,f,h,0,Math.PI*2),e.stroke(),e.restore())}const Oc=30,Qf=64,e0=1500,Jf=1800;function t0(e,t,s,n,l,c,h){const f={},p=h??new Set(e.map(d=>d.id));for(const d of Object.keys(s))p.has(d)||(delete s[d],delete n[d],delete l[d]);for(const d of e){const g=t.get(d.id)??d.position,y=s[d.id];let C=l[d.id]??"south";if(y){const S=g.x-y.x,v=g.y-y.y;Math.hypot(S,v)>.3&&(n[d.id]=c+450,C=i0(S,v,C))}s[d.id]={...g},l[d.id]=C,f[d.id]={moving:(n[d.id]??0)>c,facing:C}}return f}function r0(e,t,s,n){const l={},c=n??new Set(e.map(h=>h.id));for(const h of Object.keys(t))c.has(h)||delete t[h];for(const h of e){const f=o0(h);if(!f){delete t[h.id];continue}const p=t[h.id];if(!p||p.animate!==f.animate||p.text!==f.text){const C=!!p&&!!p?.animate&&!!f.animate&&f.text.startsWith(p?.text??"")?Math.min(p?.revealedLength??0,f.text.length):f.animate?0:f.text.length;t[h.id]={text:f.text,animate:f.animate,revealedLength:C,lastRevealAtMs:s,fullyRevealedAtMs:C>=f.text.length?s:void 0}}const d=t[h.id];if(d.animate&&d.revealedLength<d.text.length){const y=s-d.lastRevealAtMs;if(y>=Oc){const C=Math.floor(y/Oc);d.revealedLength=Math.min(d.text.length,d.revealedLength+C),d.lastRevealAtMs+=C*Oc,d.revealedLength>=d.text.length&&d.fullyRevealedAtMs===void 0&&(d.fullyRevealedAtMs=s)}}else d.animate?d.revealedLength>=d.text.length&&d.fullyRevealedAtMs===void 0&&(d.fullyRevealedAtMs=s):(d.revealedLength=d.text.length,d.lastRevealAtMs=s,d.fullyRevealedAtMs=void 0);const g=d.text.slice(0,Math.max(0,d.revealedLength));if(!g){l[h.id]={text:"…",shimmerPhase:void 0};continue}l[h.id]={text:g,shimmerPhase:n0(d,s,g.length)}}return l}function i0(e,t,s){const n=Math.abs(e),l=Math.abs(t);return n<.001&&l<.001?s:n>l?e>=0?"east":"west":t>=0?"south":"north"}function s0(e){switch(e.activityTool){case"read":return"READ";case"edit":return"EDIT";case"write":return"WRITE";case"bash":return"RUN";case"grep":return"SEARCH";case"glob":return"SCAN";case"task":return"TASK";case"todo":return"TODO";case"web":return"WEB";case"terminal":return"TTY";case"unknown":return"...";default:return e.status==="error"?"ERR":e.status==="working"?"RUN":void 0}}function n0(e,t,s){if(!e.animate||e.revealedLength<e.text.length||s<6||e.fullyRevealedAtMs===void 0)return;const n=t-e.fullyRevealedAtMs-e0;if(!(n<0))return n%Jf/Jf}function o0(e){if(e.status!=="working"&&e.status!=="attention"&&e.status!=="error")return;const t=e.activityText?.replace(/\s+/g," ").trim();if(t){const n=l0(t);return n?{text:Zf(n,Qf),animate:!0}:{text:Zf(t,Qf),animate:!1}}const s=s0(e);if(s)return{text:s,animate:!1}}function l0(e){return e.match(/\bThinking:\s+(.+)$/i)?.[1]?.trim()||void 0}function Zf(e,t){return e.length<=t?e:`${e.slice(0,t-1).trimEnd()}…`}function a0({pressedPanKeysRef:e,panRafRef:t,lastPanFrameRef:s,pressedMoveKeysRef:n,moveRafRef:l,lastMoveFrameRef:c,workerFacingRef:h,multiSelectedWorkerIdsRef:f,setViewport:p,nudgeSelectedWorkers:d,flushPendingKeyboardMoveCommits:g,keyboardPanSpeedPerSecond:y,keyboardMoveUnitsPerSecond:C}){x.useEffect(()=>{const S=()=>{t.current!==null&&(cancelAnimationFrame(t.current),t.current=null),s.current=null},v=()=>{l.current!==null&&(cancelAnimationFrame(l.current),l.current=null),c.current=null},w=oe=>{let he=0,V=0;if(oe.has("left")&&(he-=1),oe.has("right")&&(he+=1),oe.has("up")&&(V-=1),oe.has("down")&&(V+=1),he===0&&V===0)return;const D=Math.hypot(he,V);return{x:he/D,y:V/D}},E=oe=>{const he=e.current;if(he.size===0){S();return}const V=s.current??oe,D=Math.min(.05,(oe-V)/1e3);s.current=oe;let b=0,I=0;if(he.has("left")&&(b+=1),he.has("right")&&(b-=1),he.has("up")&&(I+=1),he.has("down")&&(I-=1),b!==0||I!==0){const N=Math.hypot(b,I),O=y*D,Y=b/N*O,B=I/N*O;p(F=>({...F,offsetX:F.offsetX+Y,offsetY:F.offsetY+B}))}t.current=requestAnimationFrame(E)},L=oe=>{const he=n.current;if(he.size===0){v();return}const V=c.current??oe-1e3/60,D=Math.min(.05,(oe-V)/1e3);c.current=oe;const b=w(he);if(b){const I=C*D;d(b.x*I,b.y*I)}l.current=requestAnimationFrame(L)},j=()=>{t.current===null&&(s.current=null,t.current=requestAnimationFrame(E))},$=()=>{l.current===null&&(c.current=null,l.current=requestAnimationFrame(L))},W=oe=>{if(jh(oe.target))return;const he=Bf(oe.key);if(!he)return;const V=e_(oe.key);if(!oe.shiftKey&&!oe.ctrlKey&&!oe.metaKey&&!oe.altKey&&V){if(Kl(oe.target)||(oe.preventDefault(),f.current.size===0))return;const D=c0(he);for(const N of f.current)h.current[N]=D;const b=n.current,I=b.has(he);if(b.add(he),!I){const N=w(b);if(N){const O=C/60;d(N.x*O,N.y*O)}}$();return}V&&(!oe.shiftKey||oe.ctrlKey||oe.metaKey||oe.altKey)||(oe.preventDefault(),e.current.add(he),j())},Q=oe=>{const he=Bf(oe.key);he&&(e_(oe.key)&&(n.current.delete(he),n.current.size===0&&(v(),g())),e.current.delete(he),e.current.size===0&&S())},K=()=>{e.current.clear(),n.current.clear(),S(),v(),g()},Z=e.current,fe=n.current;return window.addEventListener("keydown",W),window.addEventListener("keyup",Q),window.addEventListener("blur",K),()=>{window.removeEventListener("keydown",W),window.removeEventListener("keyup",Q),window.removeEventListener("blur",K),S(),v(),Z.clear(),fe.clear(),g()}},[g,C,y,c,s,l,f,d,t,n,e,p,h])}function c0(e){switch(e){case"up":return"north";case"down":return"south";case"left":return"west";case"right":return"east";default:return"south"}}function e_(e){return hv(e)||e==="ArrowUp"||e==="ArrowDown"||e==="ArrowLeft"||e==="ArrowRight"}const Hn=13,jn=64,lp=9,rh=95,h0=72,u0=520,d0=lp*1e3/rh,f0=160,_0=4,p0=1.45,ap=2.4,m0=56,g0=900,zc=750,t_=26;function v0({workers:e,fadingWorkers:t,selectedWorkerId:s,selectedWorkerIds:n,focusedSelectedWorkerId:l,terminalFocusedSelected:c,terminalFocusedWorkerId:h,controlGroups:f,completionPendingWorkerIds:p,onSelect:d,onSelectionChange:g,onActivateWorker:y,onMoveOrderIssued:C,onPositionCommit:S,centerOnWorkerId:v,centerRequestKey:w}){const E=x.useRef(null),L=x.useRef(null),j=x.useRef(void 0),$=x.useRef({}),W=x.useRef({}),Q=x.useRef({}),K=x.useRef({}),Z=x.useRef({}),fe=x.useRef({}),oe=x.useRef(e),he=x.useRef(s),V=x.useRef(S),D=x.useRef(void 0),b=x.useRef(null),I=x.useRef(new Set),N=x.useRef(null),O=x.useRef(null),Y=x.useRef(new Set),B=x.useRef(null),F=x.useRef(null),J=x.useRef(0),R=x.useRef(new Set),U=x.useRef({}),le=x.useRef(new Set(s?[s]:[])),[ie,ue]=x.useState({width:1e3,height:640}),[_e,Re]=x.useState({scale:p0,offsetX:70,offsetY:25}),[ge,ke]=x.useState(null),[Ae,Ye]=x.useState({}),[Fe,be]=x.useState(0),[et,ni]=x.useState(0),[it,dr]=x.useState(!1),[Ft,at]=x.useState(null),[qt,Nt]=x.useState(void 0),[fr,Ci]=x.useState(void 0),[ki,bi]=x.useState(null),[Ji,xi]=x.useState(s?[s]:[]),Tr=n??Ji,{mapData:Oe,errorText:oi}=uv(),Fr=oi??fr,rr=x.useCallback(q=>{Re(X=>{const se=typeof q=="function"?q(X):q;return r_(se,ie,Oe)})},[ie,Oe]);x.useEffect(()=>{le.current=new Set(Tr)},[Tr]),x.useEffect(()=>{const q=new Set(e.map(X=>X.id));xi(X=>{const se=X.filter(de=>q.has(de));return se.length===X.length?X:(le.current=new Set(se),se)})},[e]),x.useEffect(()=>{let q=!1;if(Nt(void 0),Ci(void 0),!Oe)return()=>{q=!0};const X=new Image;return X.onload=()=>{q||Nt(X)},X.onerror=()=>{q||Ci(`Failed to load map preview image: ${Oe.backgroundImageUrl}`)},X.src=Oe.backgroundImageUrl,()=>{q=!0}},[Oe]);const Pr=x.useMemo(()=>new Map(e.map(q=>[q.id,Ae[q.id]??q.position])),[Ae,e]),Ei=x.useMemo(()=>Array.from(new Set(e.map(q=>q.avatarType))),[e]),_r=xv(Ei),pr=x.useMemo(()=>vv(Oe),[Oe]),Hr=x.useMemo(()=>p?.length?new Set(p):void 0,[p]);x.useEffect(()=>{fe.current=Ae},[Ae]),x.useEffect(()=>{oe.current=e},[e]),x.useEffect(()=>{he.current=s},[s]),x.useEffect(()=>{V.current=S},[S]),x.useEffect(()=>{D.current=Oe},[Oe]),x.useEffect(()=>{if(!E.current)return;const q=new ResizeObserver(X=>{const se=X[0];if(!se)return;const{width:de,height:ye}=se.contentRect;ue({width:Math.max(300,Math.floor(de)),height:Math.max(220,Math.floor(ye))})});return q.observe(E.current),()=>q.disconnect()},[]),x.useEffect(()=>{Re(q=>r_(q,ie,Oe))},[ie,Oe]),x.useEffect(()=>{const q=new Set(e.map(de=>de.id)),X=new Set((t??[]).map(de=>de.worker.id)),se=performance.now();for(const de of Object.keys(K.current))q.has(de)||delete K.current[de];for(const de of Object.keys(Z.current))q.has(de)||delete Z.current[de];for(const de of e){const ye=Z.current[de.id];if(!ye){Z.current[de.id]={anchor:{...de.position},nextMoveAfterMs:se+Er(2e3,5e3)};continue}Math.hypot(ye.anchor.x-de.position.x,ye.anchor.y-de.position.y)>5&&(ye.anchor={...de.position})}Ye(de=>{let ye=!1;const ze={...de};for(const ne of Object.keys(ze))!q.has(ne)&&!X.has(ne)&&(delete ze[ne],ye=!0);return ye?ze:de})},[t,e]),x.useEffect(()=>{const q=window.setInterval(()=>{ni(X=>(X+1)%1e6)},h0);return()=>{clearInterval(q)}},[]),x.useEffect(()=>{const q=window.setInterval(()=>{be(Me=>(Me+1)%1e6);const X=oe.current,se=he.current,de=D.current,ye=K.current,ze=new Map(X.map(Me=>[Me.id,Me])),ne={...fe.current},De=[];let Ge=!1;const $e=performance.now(),sr=de?.tileSize??32;se&&ye[se]?.source==="wander"&&delete ye[se];for(const Me of X){if(Me.status!=="working"&&Me.movementMode==="wander")continue;if(ye[Me.id]?.source==="wander"){delete ye[Me.id];const Be=Z.current[Me.id];Be&&(Be.nextMoveAfterMs=$e+Er(2e3,5e3))}}for(const Me of X){if(Me.id===se||Me.movementMode!=="wander"||Me.status==="working"||ye[Me.id])continue;const Te=Z.current[Me.id];if(!Te||$e<Te.nextMoveAfterMs)continue;const Be=Sv(Te.anchor,sr,de),Ct=ne[Me.id]??Me.position,Ht=Math.hypot(Be.x-Ct.x,Be.y-Ct.y);if(Ht<6){Te.nextMoveAfterMs=$e+Er(2e3,5e3);continue}const gr=Er(1e3,2e3),qe=Math.max(8,gr/rh),Ts=yv(Ct,Be);ye[Me.id]={waypoints:Ts,waypointIndex:0,speedPerTick:Math.max(1.1,Ht/qe),commitOnArrival:!1,source:"wander"}}if(Object.keys(ye).length>0){const Me=(Te,Be)=>{for(const[Ct,Ht]of ze.entries()){if(Ct===Te)continue;const gr=ne[Ct]??Ht.position;if(Math.hypot(Be.x-gr.x,Be.y-gr.y)<t_)return!0}return!1};for(const[Te,Be]of Object.entries(ye)){const Ct=ze.get(Te);if(!Ct){delete ye[Te],ne[Te]&&(delete ne[Te],Ge=!0);continue}const Ht=ne[Te]??Ct.position,gr=Be.waypoints[Be.waypointIndex];if(!gr){delete ye[Te];continue}const qe=gr.x-Ht.x,Ts=gr.y-Ht.y,ss=Math.hypot(qe,Ts);if(ss<=Be.speedPerTick){const jt={x:gr.x,y:gr.y};if(Be.source==="wander"&&Me(Te,jt)){delete ye[Te];const Yr=Z.current[Te];Yr&&(Yr.nextMoveAfterMs=$e+Er(900,1800));continue}if(!Ss(jt,de)){delete ye[Te];const Yr=Z.current[Te];Yr&&(Yr.nextMoveAfterMs=$e+Er(2e3,5e3));continue}if(ne[Te]=jt,Be.waypointIndex<Be.waypoints.length-1){Be.waypointIndex+=1,Ge=!0;continue}if(delete ye[Te],Be.commitOnArrival)De.push({workerId:Te,position:jt});else{const Yr=Z.current[Te];Yr&&(Yr.nextMoveAfterMs=$e+Er(2e3,5e3))}Ge=!0;continue}const Ps={x:Ht.x+qe/ss*Be.speedPerTick,y:Ht.y+Ts/ss*Be.speedPerTick};if(Be.source==="wander"&&Me(Te,Ps)){delete ye[Te];const jt=Z.current[Te];jt&&(jt.nextMoveAfterMs=$e+Er(900,1800));continue}if(!Ss(Ps,de)){delete ye[Te];const jt=Z.current[Te];jt&&(jt.nextMoveAfterMs=$e+Er(2e3,5e3));continue}ne[Te]=Ps,Ge=!0}}for(const Me of X){if(ye[Me.id])continue;const Te=ne[Me.id]??Me.position;if(!Ss(Te,de)){const Ct=ip(Te,de);Ct&&(ne[Me.id]=Ct,De.push({workerId:Me.id,position:Ct}),Ge=!0)}const Be=ne[Me.id];Be&&Math.hypot(Be.x-Me.position.x,Be.y-Me.position.y)<.5&&(delete ne[Me.id],Ge=!0)}Ge&&(fe.current=ne,Ye(ne));for(const Me of De)V.current(Me.workerId,{x:Math.round(Me.position.x*10)/10,y:Math.round(Me.position.y*10)/10})},rh);return()=>{clearInterval(q)}},[]),x.useEffect(()=>{if(!Oe||it)return;const q=Oe.width*Oe.tileSize/2,X=Oe.height*Oe.tileSize/2;rr(se=>({...se,offsetX:ie.width/2-q*se.scale,offsetY:ie.height/2-X*se.scale})),dr(!0)},[ie.height,ie.width,it,Oe,rr]),x.useEffect(()=>{if(!v||w===void 0||j.current===w)return;const q=e.find(de=>de.id===v);if(!q)return;j.current=w;const X=Ae[q.id]??q.position,se=Wr(X.x,X.y,_e);cv(se,ie.width,ie.height,m0)||rr(de=>({...de,offsetX:ie.width/2-X.x*de.scale,offsetY:ie.height/2-X.y*de.scale}))},[Ae,ie.height,ie.width,v,w,rr,_e,e]),x.useEffect(()=>{const q=L.current;if(!q)return;const X=window.devicePixelRatio||1;q.width=Math.floor(ie.width*X),q.height=Math.floor(ie.height*X),q.style.width=`${ie.width}px`,q.style.height=`${ie.height}px`;const se=q.getContext("2d");if(!se)return;se.setTransform(X,0,0,X,0,0);const de=new Set(e.map(ne=>ne.id)),ye=t0(e,Pr,$.current,W.current,Q.current,performance.now(),de),ze=r0(e,U.current,Date.now(),de);Qv({context:se,width:ie.width,height:ie.height,workers:e,fadingWorkers:t,displayedPositions:Ae,workerMotion:ye,selectedWorkerId:s,selectedWorkerIds:Tr,focusedSelectedWorkerId:l,terminalFocusedSelected:c,terminalFocusedWorkerId:h,controlGroups:f,completionPendingWorkerIds:Hr,viewport:_e,mapData:Oe,spriteLibrary:_r,animationTick:Fe,walkAnimationTick:et,commandFeedback:Ft,mapPreviewImage:qt,activityOverlayStateByWorker:ze,marqueeSelection:ki,workerRadius:Hn,spriteBaseSize:jn,activeWorkerIds:de})},[Ae,Fe,et,ie,f,Hr,t,Oe,s,Tr,l,c,h,_r,Ft,qt,ki,_e,Pr,e]);const Lr=x.useCallback((q,X)=>{if(!Oe)return!1;const se=Al(X,Oe),de=fe.current[q.id]??q.position,ye=Date.now(),ze={x:Math.round(se.x*10)/10,y:Math.round(se.y*10)/10},ne=Af(de,Oe),De=Af(ze,Oe),Ge=lo(ne.x,ne.y,Oe,pr),$e=lo(De.x,De.y,Oe,pr),sr=Ge?ne:Of(ne,Oe,pr),Me=$e?De:Of(De,Oe,pr);if(!sr||!Me)return at({kind:"blocked",workerId:q.id,startedAtMs:ye,durationMs:zc,destination:ze}),!1;const Te=wv(sr,Me,Oe,pr);if(!Te||Te.length===0)return at({kind:"blocked",workerId:q.id,startedAtMs:ye,durationMs:zc,destination:ze}),!1;const Be=Cv(Te,Oe);if(Be.length===0)return at({kind:"blocked",workerId:q.id,startedAtMs:ye,durationMs:zc,destination:ze}),!1;const Ct=Be[Be.length-1]??ze;return K.current[q.id]={waypoints:Be,waypointIndex:0,speedPerTick:lp,commitOnArrival:!0,source:"manual"},Ye(Ht=>Ht[q.id]?Ht:{...Ht,[q.id]:q.position}),at({kind:"ok",workerId:q.id,startedAtMs:ye,durationMs:g0,destination:Ct,path:[de,...Be]}),C?.(q.id),!0},[pr,Oe,C]),jr=x.useCallback((q,X)=>{const se=new Set(oe.current.map(de=>de.id));for(const de of q){if(!se.has(de))continue;const ye=X[de];ye&&S(de,{x:Math.round(ye.x*10)/10,y:Math.round(ye.y*10)/10})}},[S]),Zi=x.useCallback(()=>{if(R.current.size===0)return;const q=Array.from(R.current);R.current.clear(),J.current=performance.now(),jr(q,fe.current)},[jr]),$r=x.useCallback((q,X)=>{const se=Array.from(le.current);if(se.length===0)return!1;const de=D.current,ye=new Map(oe.current.map($e=>[$e.id,$e])),ze={...fe.current},ne=[];let De=!1;const Ge=performance.now();for(const $e of se){const sr=ye.get($e);if(!sr)continue;const Me=ze[$e]??sr.position,Te=Al({x:Me.x+q,y:Me.y+X},de);if(de&&!Ss(Te,de)||Math.hypot(Te.x-Me.x,Te.y-Me.y)<.01)continue;ne.push($e),ze[$e]=Te,De=!0,delete K.current[$e];const Be=Z.current[$e];Be&&(Be.anchor={...Te},Be.nextMoveAfterMs=Ge+Er(900,1800))}if(!De)return!1;fe.current=ze,Ye(ze);for(const $e of ne)R.current.add($e);if(Ge-J.current>=f0){const $e=Array.from(R.current);R.current.clear(),J.current=Ge,jr($e,ze)}return!0},[jr]);a0({pressedPanKeysRef:I,panRafRef:N,lastPanFrameRef:O,pressedMoveKeysRef:Y,moveRafRef:B,lastMoveFrameRef:F,workerFacingRef:Q,multiSelectedWorkerIdsRef:le,setViewport:rr,nudgeSelectedWorkers:$r,flushPendingKeyboardMoveCommits:Zi,keyboardPanSpeedPerSecond:u0,keyboardMoveUnitsPerSecond:d0});const ir=x.useCallback((q,X)=>{const se=Nc(X.x,X.y,_e);Lr(q,se)},[Lr,_e]),Kr=x.useCallback(q=>{const X=Array.from(new Set(q));if(xi(X),le.current=new Set(X),g){g(X);return}d(X.length===1?X[0]:void 0)},[d,g]),Es=x.useCallback(q=>{const X=le.current,se=e.filter(ye=>X.has(ye.id));if(se.length>0){if(se.length===1){ir(se[0],q);return}const ye=Nc(q.x,q.y,_e),ze=Math.ceil(Math.sqrt(se.length)),ne=Oe?.tileSize??32,De=Math.max(ne*2.2,jn+8,t_*2.2);for(let Ge=0;Ge<se.length;Ge+=1){const $e=se[Ge],sr=Math.floor(Ge/ze),Te=(Ge%ze-(ze-1)/2)*De,Be=(sr-(Math.ceil(se.length/ze)-1)/2)*De;Lr($e,{x:ye.x+Te,y:ye.y+Be})}return}if(!s)return;const de=e.find(ye=>ye.id===s);de&&ir(de,q)},[ir,Lr,Oe?.tileSize,s,_e,e]),Ur=q=>{if(q.currentTarget.focus(),q.button===2){q.preventDefault();const de=$n(q);b.current={pointerId:q.pointerId,mode:"pan",issueMoveOnClick:le.current.size>0||!!s,startX:de.x,startY:de.y,lastX:de.x,lastY:de.y,moved:!1,deselectOnClick:!1},q.currentTarget.setPointerCapture(q.pointerId);return}if(q.button!==0)return;const X=$n(q),se=Ic(X.x,X.y,e,Pr,_e,_r,{workerRadius:Hn,spriteBaseSize:jn});b.current={pointerId:q.pointerId,mode:"click",clickedWorkerId:se?.id,toggleSelectionOnRelease:q.shiftKey&&!q.ctrlKey&&!q.metaKey&&!q.altKey,startX:X.x,startY:X.y,lastX:X.x,lastY:X.y,moved:!1,deselectOnClick:!!(s||le.current.size>0)},q.currentTarget.setPointerCapture(q.pointerId)},es=q=>{const X=$n(q),se=b.current;if(se&&se.pointerId===q.pointerId){const ye=X.x-se.lastX,ze=X.y-se.lastY,ne=Math.hypot(X.x-se.startX,X.y-se.startY);!se.moved&&ne>=_0&&(se.moved=!0,se.mode==="click"&&(se.mode="marquee",se.clickedWorkerId=void 0)),se.mode==="pan"&&se.moved&&(ye!==0||ze!==0)&&(rr(De=>({...De,offsetX:De.offsetX+ye,offsetY:De.offsetY+ze})),ke(null)),se.mode==="marquee"&&(bi($f(se.startX,se.startY,X.x,X.y)),ke(null)),se.lastX=X.x,se.lastY=X.y;return}const de=Ic(X.x,X.y,e,Pr,_e,_r,{workerRadius:Hn,spriteBaseSize:jn});if(!de){ke(null);return}ke({worker:de,screenX:X.x,screenY:X.y})},ts=q=>{const X=b.current;if(!(!X||X.pointerId!==q.pointerId)&&(q.currentTarget.hasPointerCapture(q.pointerId)&&q.currentTarget.releasePointerCapture(q.pointerId),b.current=null,!(X.mode==="pan"&&X.moved))){if(X.mode==="pan"&&!X.moved&&X.issueMoveOnClick){Es({x:X.lastX,y:X.lastY});return}if(X.mode==="marquee"){const se=$f(X.startX,X.startY,X.lastX,X.lastY);if(bi(null),se.width<2||se.height<2)return;const de=Tv(se,e,Pr,_e,Hn);if(X.toggleSelectionOnRelease){const ye=new Set(le.current);for(const ze of de)ye.has(ze)?ye.delete(ze):ye.add(ze);Kr(Array.from(ye));return}Kr(de);return}if(X.clickedWorkerId){const se=X.clickedWorkerId;if(X.toggleSelectionOnRelease){const ze=le.current.has(se)?Array.from(le.current).filter(ne=>ne!==se):[...le.current,se];Kr(ze);return}const de=s===se,ye=le.current.size===1&&le.current.has(se);Kr([se]),de&&ye&&y?.(se);return}X.deselectOnClick&&Kr([])}},rs=q=>{q.preventDefault()},Ms=q=>{if(q.button!==0)return;const X=$n(q),se=Ic(X.x,X.y,e,Pr,_e,_r,{workerRadius:Hn,spriteBaseSize:jn});se&&y?.(se.id)},Vr=q=>{const X=b.current;!X||X.pointerId!==q.pointerId||(q.currentTarget.hasPointerCapture(q.pointerId)&&q.currentTarget.releasePointerCapture(q.pointerId),b.current=null,bi(null))},is=()=>{b.current||ke(null)},mr=x.useCallback((q,X)=>{rr(se=>{const de=Nc(q.x,q.y,se),ye=Ke(se.scale*X,.05,ap);return{scale:ye,offsetX:q.x-de.x*ye,offsetY:q.y-de.y*ye}})},[rr]);x.useEffect(()=>{const q=X=>{if(X.defaultPrevented||X.ctrlKey||X.metaKey||X.altKey||jh(X.target)||Kl(X.target))return;const se=X.key==="+"||X.code==="Equal"&&X.shiftKey||X.code==="NumpadAdd",de=X.key==="-"||X.code==="Minus"&&!X.shiftKey||X.code==="NumpadSubtract";!se&&!de||(X.preventDefault(),mr({x:ie.width/2,y:ie.height/2},se?1.1:.9))};return window.addEventListener("keydown",q),()=>{window.removeEventListener("keydown",q)}},[ie.height,ie.width,mr]);const Rs=q=>{q.preventDefault();const X=$n(q);mr(X,q.deltaY<0?1.1:.9)};return T.jsxs("div",{className:"map-container",ref:E,children:[T.jsx("canvas",{ref:L,className:"map-canvas",tabIndex:0,onPointerDown:Ur,onPointerMove:es,onPointerUp:ts,onPointerCancel:Vr,onPointerLeave:is,onDoubleClick:Ms,onContextMenu:rs,onWheel:Rs}),ge?T.jsxs("div",{className:"map-tooltip",style:{left:ge.screenX+16,top:ge.screenY+18},children:[T.jsx("div",{className:"map-tooltip-title",children:ge.worker.displayName??ge.worker.name}),T.jsxs("div",{children:[ge.worker.projectId," · ",ge.worker.runtimeId]}),T.jsxs("div",{children:["Status: ",ge.worker.status]}),T.jsxs("div",{children:["Mode: ",ge.worker.movementMode==="wander"?"Wander":"Hold"]}),ge.worker.activityTool?T.jsxs("div",{children:["Tool: ",ge.worker.activityTool]}):null,ge.worker.activityPath?T.jsxs("div",{children:["Path: ",ge.worker.activityPath]}):null,ge.worker.activityText?T.jsx("div",{children:ge.worker.activityText}):null]}):null,Fr?T.jsxs("div",{className:"map-tooltip",style:{left:14,top:14},children:["Map assets failed to load: ",Fr]}):null]})}function r_(e,t,s){if(!s)return e;const n=s.width*s.tileSize,l=s.height*s.tileSize;if(n<=0||l<=0||t.width<=0||t.height<=0)return e;const c=Math.min(t.width/n,t.height/l);if(!Number.isFinite(c)||c<=0)return e;const h=c,f=Ke(e.scale,h,Math.max(h,ap)),p=n*f,d=l*f,g=p<=t.width?(t.width-p)/2:Ke(e.offsetX,t.width-p,0),y=d<=t.height?(t.height-d)/2:Ke(e.offsetY,t.height-d,0);return f===e.scale&&g===e.offsetX&&y===e.offsetY?e:{scale:f,offsetX:g,offsetY:y}}function $n(e){const t=e.currentTarget.getBoundingClientRect();return{x:e.clientX-t.left,y:e.clientY-t.top}}function y0({open:e,targetWorkerIds:t,targetWorkers:s,initialDraft:n,onClose:l,onSubmit:c}){const[h,f]=x.useState(n),p=x.useRef(null),d=x.useRef(null);return x.useEffect(()=>{if(!e){d.current=null;return}d.current=n,f(n)},[n,e]),x.useLayoutEffect(()=>{if(!e)return;const g=d.current;if(g===null||h!==g)return;const y=p.current;y&&(y.focus(),y.setSelectionRange(0,y.value.length),d.current=null)},[h,e]),e?T.jsx("div",{className:"overlay overlay-no-blur",onClick:l,children:T.jsxs("div",{className:"dialog rename-dialog",onClick:g=>g.stopPropagation(),children:[T.jsx("div",{className:"dialog-title",children:t.length>1?"Rename Selected Agents":"Rename Agent"}),T.jsx("div",{className:"rename-subtitle",children:t.length>1?`${t.length} selected agents`:s[0]?.name??"Selected agent"}),T.jsxs("form",{className:"rename-form",onSubmit:g=>{g.preventDefault(),c(h)},children:[T.jsx("input",{ref:p,className:"input",autoFocus:!0,value:h,onChange:g=>f(g.target.value),placeholder:t.length>1?"Base name (e.g. Builder)":"Display name"}),T.jsxs("div",{className:"dialog-actions",children:[T.jsx("button",{className:"bar-btn subtle",type:"button",onClick:l,children:"Cancel (Esc)"}),T.jsx("button",{className:"bar-btn",type:"submit",children:"Save (Enter)"})]})]})]})}):null}function S0({open:e,onClose:t}){return e?T.jsx("div",{className:"overlay",onClick:t,children:T.jsxs("div",{className:"dialog shortcuts-dialog",onClick:s=>s.stopPropagation(),children:[T.jsx("div",{className:"dialog-title",children:"Keyboard Shortcuts"}),T.jsxs("div",{className:"shortcut-grid",children:[T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"1-0"}),T.jsx("span",{children:"Select control group"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"Ctrl+1-0"}),T.jsx("span",{children:"Assign selected agent to group"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"Tab"}),T.jsx("span",{children:"Select next agent (or cycle selected group focus)"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"Shift+Tab"}),T.jsx("span",{children:"Select previous agent (or cycle selected group focus)"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:". / , / Shift+."}),T.jsx("span",{children:"Cycle idle agents only"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"J / K"}),T.jsx("span",{children:"Move selection in roster and summon list"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"C"}),T.jsx("span",{children:"Focus Rally Command input (selected group view)"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"N"}),T.jsx("span",{children:"Jump to summon list"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"W/A/S/D"}),T.jsx("span",{children:"Move selected agent(s) smoothly (hold)"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"Shift+W/A/S/D"}),T.jsx("span",{children:"Pan map"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"+ / -"}),T.jsx("span",{children:"Zoom map in or out (outside terminal focus)"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"[ / ] / Shift+[ / Shift+] / ="}),T.jsx("span",{children:"Resize columns, jump split to edge, or reset split"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"Left-drag divider"}),T.jsx("span",{children:"Drag to resize map and terminal columns"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"Enter"}),T.jsx("span",{children:"Activate highlighted item or focus terminal"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"Ctrl+] / Ctrl+D"}),T.jsx("span",{children:"Leave terminal focus; in selected group view, return to group list"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"R"}),T.jsx("span",{children:"Rename selected agent"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"M"}),T.jsx("span",{children:"Toggle mode on selected agent"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"K"}),T.jsx("span",{children:"Open kill confirm (Shift+K in selected group view)"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"Shift+K"}),T.jsx("span",{children:"Kill highlighted roster agent (then Enter)"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"?"}),T.jsx("span",{children:"Toggle this shortcut panel"})]}),T.jsxs("div",{className:"shortcut-row",children:[T.jsx("kbd",{children:"Esc"}),T.jsx("span",{children:"Close overlay/dialog, then deselect"})]})]})]})}):null}function w0({open:e,projects:t,runtimes:s,onClose:n,onSpawn:l}){const[c,h]=x.useState(""),f=x.useMemo(()=>Object.keys(t),[t]),p=x.useMemo(()=>Object.keys(s),[s]),[d,g]=x.useState(f[0]??""),[y,C]=x.useState(p[0]??""),S=x.useMemo(()=>{const w=c.trim().toLowerCase();return w?f.filter(E=>{const L=t[E];return`${E} ${L.shortName} ${L.path} ${L.label??""}`.toLowerCase().includes(w)}):f},[f,t,c]);if(x.useEffect(()=>{e&&(f.includes(d)||g(f[0]??""),p.includes(y)||C(p[0]??""))},[e,f,p,d,y]),x.useEffect(()=>{S.includes(d)||g(S[0]??"")},[S,d]),!e)return null;const v=d.length>0&&y.length>0;return T.jsx("div",{className:"overlay",onClick:n,children:T.jsxs("div",{className:"dialog",onClick:w=>w.stopPropagation(),children:[T.jsx("div",{className:"dialog-title",children:"Spawn Worker"}),T.jsx("input",{className:"input",placeholder:"Search projects",value:c,onChange:w=>h(w.target.value),autoFocus:!0}),T.jsxs("div",{className:"dialog-grid",children:[T.jsxs("div",{children:[T.jsx("div",{className:"dialog-section-label",children:"Project"}),T.jsx("div",{className:"option-list",children:S.map(w=>{const E=t[w],L=w===d;return T.jsxs("button",{className:`option-btn ${L?"selected":""}`,onClick:()=>g(w),children:[T.jsx("span",{children:E.label??w}),T.jsx("small",{children:E.path})]},w)})})]}),T.jsxs("div",{children:[T.jsx("div",{className:"dialog-section-label",children:"Runtime"}),T.jsx("div",{className:"option-list",children:p.map(w=>{const E=s[w],L=w===y;return T.jsxs("button",{className:`option-btn ${L?"selected":""}`,onClick:()=>C(w),children:[T.jsx("span",{children:E.label}),T.jsx("small",{children:E.command.join(" ")})]},w)})})]})]}),T.jsxs("div",{className:"dialog-actions",children:[T.jsx("button",{className:"bar-btn subtle",onClick:n,children:"Cancel"}),T.jsx("button",{className:"bar-btn",disabled:!v,onClick:()=>{v&&l(d,y)},children:"Spawn"})]})]})})}/**
|
|
41
|
+
* Copyright (c) 2014-2024 The xterm.js authors. All rights reserved.
|
|
42
|
+
* @license MIT
|
|
43
|
+
*
|
|
44
|
+
* Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
|
|
45
|
+
* @license MIT
|
|
46
|
+
*
|
|
47
|
+
* Originally forked from (with the author's permission):
|
|
48
|
+
* Fabrice Bellard's javascript vt100 for jslinux:
|
|
49
|
+
* http://bellard.org/jslinux/
|
|
50
|
+
* Copyright (c) 2011 Fabrice Bellard
|
|
51
|
+
*/var C0=2,k0=1,b0=class{activate(e){this._terminal=e}dispose(){}fit(){let e=this.proposeDimensions();if(!e||!this._terminal||isNaN(e.cols)||isNaN(e.rows))return;let t=this._terminal._core;(this._terminal.rows!==e.rows||this._terminal.cols!==e.cols)&&(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let e=this._terminal._core._renderService.dimensions;if(e.css.cell.width===0||e.css.cell.height===0)return;let t=this._terminal.options.scrollback===0?0:this._terminal.options.overviewRuler?.width||14,s=window.getComputedStyle(this._terminal.element.parentElement),n=parseInt(s.getPropertyValue("height")),l=Math.max(0,parseInt(s.getPropertyValue("width"))),c=window.getComputedStyle(this._terminal.element),h={top:parseInt(c.getPropertyValue("padding-top")),bottom:parseInt(c.getPropertyValue("padding-bottom")),right:parseInt(c.getPropertyValue("padding-right")),left:parseInt(c.getPropertyValue("padding-left"))},f=h.top+h.bottom,p=h.right+h.left,d=n-f,g=l-p-t;return{cols:Math.max(C0,Math.floor(g/e.css.cell.width)),rows:Math.max(k0,Math.floor(d/e.css.cell.height))}}};/**
|
|
52
|
+
* Copyright (c) 2014-2024 The xterm.js authors. All rights reserved.
|
|
53
|
+
* @license MIT
|
|
54
|
+
*
|
|
55
|
+
* Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
|
|
56
|
+
* @license MIT
|
|
57
|
+
*
|
|
58
|
+
* Originally forked from (with the author's permission):
|
|
59
|
+
* Fabrice Bellard's javascript vt100 for jslinux:
|
|
60
|
+
* http://bellard.org/jslinux/
|
|
61
|
+
* Copyright (c) 2011 Fabrice Bellard
|
|
62
|
+
*/var cp=Object.defineProperty,x0=Object.getOwnPropertyDescriptor,E0=(e,t)=>{for(var s in t)cp(e,s,{get:t[s],enumerable:!0})},ut=(e,t,s,n)=>{for(var l=n>1?void 0:n?x0(t,s):t,c=e.length-1,h;c>=0;c--)(h=e[c])&&(l=(n?h(t,s,l):h(l))||l);return n&&l&&cp(t,s,l),l},pe=(e,t)=>(s,n)=>t(s,n,e),i_="Terminal input",ih={get:()=>i_,set:e=>i_=e},s_="Too much output to announce, navigate to rows manually to read",sh={get:()=>s_,set:e=>s_=e};function M0(e){return e.replace(/\r?\n/g,"\r")}function R0(e,t){return t?"\x1B[200~"+e+"\x1B[201~":e}function T0(e,t){e.clipboardData&&e.clipboardData.setData("text/plain",t.selectionText),e.preventDefault()}function P0(e,t,s,n){if(e.stopPropagation(),e.clipboardData){let l=e.clipboardData.getData("text/plain");hp(l,t,s,n)}}function hp(e,t,s,n){e=M0(e),e=R0(e,s.decPrivateModes.bracketedPasteMode&&n.rawOptions.ignoreBracketedPasteMode!==!0),s.triggerDataEvent(e,!0),t.value=""}function up(e,t,s){let n=s.getBoundingClientRect(),l=e.clientX-n.left-10,c=e.clientY-n.top-10;t.style.width="20px",t.style.height="20px",t.style.left=`${l}px`,t.style.top=`${c}px`,t.style.zIndex="1000",t.focus()}function n_(e,t,s,n,l){up(e,t,s),l&&n.rightClickSelect(e),t.value=n.selectionText,t.select()}function Xi(e){return e>65535?(e-=65536,String.fromCharCode((e>>10)+55296)+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)}function Ul(e,t=0,s=e.length){let n="";for(let l=t;l<s;++l){let c=e[l];c>65535?(c-=65536,n+=String.fromCharCode((c>>10)+55296)+String.fromCharCode(c%1024+56320)):n+=String.fromCharCode(c)}return n}var L0=class{constructor(){this._interim=0}clear(){this._interim=0}decode(e,t){let s=e.length;if(!s)return 0;let n=0,l=0;if(this._interim){let c=e.charCodeAt(l++);56320<=c&&c<=57343?t[n++]=(this._interim-55296)*1024+c-56320+65536:(t[n++]=this._interim,t[n++]=c),this._interim=0}for(let c=l;c<s;++c){let h=e.charCodeAt(c);if(55296<=h&&h<=56319){if(++c>=s)return this._interim=h,n;let f=e.charCodeAt(c);56320<=f&&f<=57343?t[n++]=(h-55296)*1024+f-56320+65536:(t[n++]=h,t[n++]=f);continue}h!==65279&&(t[n++]=h)}return n}},D0=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(e,t){let s=e.length;if(!s)return 0;let n=0,l,c,h,f,p=0,d=0;if(this.interim[0]){let C=!1,S=this.interim[0];S&=(S&224)===192?31:(S&240)===224?15:7;let v=0,w;for(;(w=this.interim[++v]&63)&&v<4;)S<<=6,S|=w;let E=(this.interim[0]&224)===192?2:(this.interim[0]&240)===224?3:4,L=E-v;for(;d<L;){if(d>=s)return 0;if(w=e[d++],(w&192)!==128){d--,C=!0;break}else this.interim[v++]=w,S<<=6,S|=w&63}C||(E===2?S<128?d--:t[n++]=S:E===3?S<2048||S>=55296&&S<=57343||S===65279||(t[n++]=S):S<65536||S>1114111||(t[n++]=S)),this.interim.fill(0)}let g=s-4,y=d;for(;y<s;){for(;y<g&&!((l=e[y])&128)&&!((c=e[y+1])&128)&&!((h=e[y+2])&128)&&!((f=e[y+3])&128);)t[n++]=l,t[n++]=c,t[n++]=h,t[n++]=f,y+=4;if(l=e[y++],l<128)t[n++]=l;else if((l&224)===192){if(y>=s)return this.interim[0]=l,n;if(c=e[y++],(c&192)!==128){y--;continue}if(p=(l&31)<<6|c&63,p<128){y--;continue}t[n++]=p}else if((l&240)===224){if(y>=s)return this.interim[0]=l,n;if(c=e[y++],(c&192)!==128){y--;continue}if(y>=s)return this.interim[0]=l,this.interim[1]=c,n;if(h=e[y++],(h&192)!==128){y--;continue}if(p=(l&15)<<12|(c&63)<<6|h&63,p<2048||p>=55296&&p<=57343||p===65279)continue;t[n++]=p}else if((l&248)===240){if(y>=s)return this.interim[0]=l,n;if(c=e[y++],(c&192)!==128){y--;continue}if(y>=s)return this.interim[0]=l,this.interim[1]=c,n;if(h=e[y++],(h&192)!==128){y--;continue}if(y>=s)return this.interim[0]=l,this.interim[1]=c,this.interim[2]=h,n;if(f=e[y++],(f&192)!==128){y--;continue}if(p=(l&7)<<18|(c&63)<<12|(h&63)<<6|f&63,p<65536||p>1114111)continue;t[n++]=p}}return n}},dp="",Gi=" ",uo=class fp{constructor(){this.fg=0,this.bg=0,this.extended=new zl}static toColorRGB(t){return[t>>>16&255,t>>>8&255,t&255]}static fromColorRGB(t){return(t[0]&255)<<16|(t[1]&255)<<8|t[2]&255}clone(){let t=new fp;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t}isInverse(){return this.fg&67108864}isBold(){return this.fg&134217728}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:this.fg&268435456}isBlink(){return this.fg&536870912}isInvisible(){return this.fg&1073741824}isItalic(){return this.bg&67108864}isDim(){return this.bg&134217728}isStrikethrough(){return this.fg&2147483648}isProtected(){return this.bg&536870912}isOverline(){return this.bg&1073741824}getFgColorMode(){return this.fg&50331648}getBgColorMode(){return this.bg&50331648}isFgRGB(){return(this.fg&50331648)===50331648}isBgRGB(){return(this.bg&50331648)===50331648}isFgPalette(){return(this.fg&50331648)===16777216||(this.fg&50331648)===33554432}isBgPalette(){return(this.bg&50331648)===16777216||(this.bg&50331648)===33554432}isFgDefault(){return(this.fg&50331648)===0}isBgDefault(){return(this.bg&50331648)===0}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(this.fg&50331648){case 16777216:case 33554432:return this.fg&255;case 50331648:return this.fg&16777215;default:return-1}}getBgColor(){switch(this.bg&50331648){case 16777216:case 33554432:return this.bg&255;case 50331648:return this.bg&16777215;default:return-1}}hasExtendedAttrs(){return this.bg&268435456}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(this.bg&268435456&&~this.extended.underlineColor)switch(this.extended.underlineColor&50331648){case 16777216:case 33554432:return this.extended.underlineColor&255;case 50331648:return this.extended.underlineColor&16777215;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return this.bg&268435456&&~this.extended.underlineColor?this.extended.underlineColor&50331648:this.getFgColorMode()}isUnderlineColorRGB(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===50331648:this.isFgRGB()}isUnderlineColorPalette(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===16777216||(this.extended.underlineColor&50331648)===33554432:this.isFgPalette()}isUnderlineColorDefault(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===0:this.isFgDefault()}getUnderlineStyle(){return this.fg&268435456?this.bg&268435456?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},zl=class _p{constructor(t=0,s=0){this._ext=0,this._urlId=0,this._ext=t,this._urlId=s}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(t){this._ext=t}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(t){this._ext&=-469762049,this._ext|=t<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(t){this._ext&=-67108864,this._ext|=t&67108863}get urlId(){return this._urlId}set urlId(t){this._urlId=t}get underlineVariantOffset(){let t=(this._ext&3758096384)>>29;return t<0?t^4294967288:t}set underlineVariantOffset(t){this._ext&=536870911,this._ext|=t<<29&3758096384}clone(){return new _p(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}},Rr=class pp extends uo{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new zl,this.combinedData=""}static fromCharData(t){let s=new pp;return s.setFromCharData(t),s}isCombined(){return this.content&2097152}getWidth(){return this.content>>22}getChars(){return this.content&2097152?this.combinedData:this.content&2097151?Xi(this.content&2097151):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):this.content&2097151}setFromCharData(t){this.fg=t[0],this.bg=0;let s=!1;if(t[1].length>2)s=!0;else if(t[1].length===2){let n=t[1].charCodeAt(0);if(55296<=n&&n<=56319){let l=t[1].charCodeAt(1);56320<=l&&l<=57343?this.content=(n-55296)*1024+l-56320+65536|t[2]<<22:s=!0}else s=!0}else this.content=t[1].charCodeAt(0)|t[2]<<22;s&&(this.combinedData=t[1],this.content=2097152|t[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},o_="di$target",nh="di$dependencies",Wc=new Map;function B0(e){return e[nh]||[]}function Pt(e){if(Wc.has(e))return Wc.get(e);let t=function(s,n,l){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");N0(t,s,l)};return t._id=e,Wc.set(e,t),t}function N0(e,t,s){t[o_]===t?t[nh].push({id:e,index:s}):(t[nh]=[{id:e,index:s}],t[o_]=t)}var Vt=Pt("BufferService"),mp=Pt("CoreMouseService"),xs=Pt("CoreService"),I0=Pt("CharsetService"),$h=Pt("InstantiationService"),gp=Pt("LogService"),Yt=Pt("OptionsService"),vp=Pt("OscLinkService"),A0=Pt("UnicodeService"),fo=Pt("DecorationService"),oh=class{constructor(e,t,s){this._bufferService=e,this._optionsService=t,this._oscLinkService=s}provideLinks(e,t){let s=this._bufferService.buffer.lines.get(e-1);if(!s){t(void 0);return}let n=[],l=this._optionsService.rawOptions.linkHandler,c=new Rr,h=s.getTrimmedLength(),f=-1,p=-1,d=!1;for(let g=0;g<h;g++)if(!(p===-1&&!s.hasContent(g))){if(s.loadCell(g,c),c.hasExtendedAttrs()&&c.extended.urlId)if(p===-1){p=g,f=c.extended.urlId;continue}else d=c.extended.urlId!==f;else p!==-1&&(d=!0);if(d||p!==-1&&g===h-1){let y=this._oscLinkService.getLinkData(f)?.uri;if(y){let C={start:{x:p+1,y:e},end:{x:g+(!d&&g===h-1?1:0),y:e}},S=!1;if(!l?.allowNonHttpProtocols)try{let v=new URL(y);["http:","https:"].includes(v.protocol)||(S=!0)}catch{S=!0}S||n.push({text:y,range:C,activate:(v,w)=>l?l.activate(v,w,C):O0(v,w),hover:(v,w)=>l?.hover?.(v,w,C),leave:(v,w)=>l?.leave?.(v,w,C)})}d=!1,c.hasExtendedAttrs()&&c.extended.urlId?(p=g,f=c.extended.urlId):(p=-1,f=-1)}}t(n)}};oh=ut([pe(0,Vt),pe(1,Yt),pe(2,vp)],oh);function O0(e,t){if(confirm(`Do you want to navigate to ${t}?
|
|
63
|
+
|
|
64
|
+
WARNING: This link could potentially be dangerous`)){let s=window.open();if(s){try{s.opener=null}catch{}s.location.href=t}else console.warn("Opening link blocked as opener could not be cleared")}}var Vl=Pt("CharSizeService"),yi=Pt("CoreBrowserService"),Kh=Pt("MouseService"),Si=Pt("RenderService"),z0=Pt("SelectionService"),yp=Pt("CharacterJoinerService"),nn=Pt("ThemeService"),Sp=Pt("LinkProviderService"),W0=class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?l_.isErrorNoTelemetry(e)?new l_(e.message+`
|
|
65
|
+
|
|
66
|
+
`+e.stack):new Error(e.message+`
|
|
67
|
+
|
|
68
|
+
`+e.stack):e},0)}}addListener(e){return this.listeners.push(e),()=>{this._removeListener(e)}}emit(e){this.listeners.forEach(t=>{t(e)})}_removeListener(e){this.listeners.splice(this.listeners.indexOf(e),1)}setUnexpectedErrorHandler(e){this.unexpectedErrorHandler=e}getUnexpectedErrorHandler(){return this.unexpectedErrorHandler}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}},F0=new W0;function Tl(e){H0(e)||F0.onUnexpectedError(e)}var lh="Canceled";function H0(e){return e instanceof j0?!0:e instanceof Error&&e.name===lh&&e.message===lh}var j0=class extends Error{constructor(){super(lh),this.name=this.message}};function $0(e){return new Error(`Illegal argument: ${e}`)}var l_=class ah extends Error{constructor(t){super(t),this.name="CodeExpectedError"}static fromError(t){if(t instanceof ah)return t;let s=new ah;return s.message=t.message,s.stack=t.stack,s}static isErrorNoTelemetry(t){return t.name==="CodeExpectedError"}},ch=class wp extends Error{constructor(t){super(t||"An unexpected bug occurred."),Object.setPrototypeOf(this,wp.prototype)}};function cr(e,t=0){return e[e.length-(1+t)]}var K0;(e=>{function t(c){return c<0}e.isLessThan=t;function s(c){return c<=0}e.isLessThanOrEqual=s;function n(c){return c>0}e.isGreaterThan=n;function l(c){return c===0}e.isNeitherLessOrGreaterThan=l,e.greaterThan=1,e.lessThan=-1,e.neitherLessOrGreaterThan=0})(K0||={});function U0(e,t){let s=this,n=!1,l;return function(){return n||(n=!0,t||(l=e.apply(s,arguments))),l}}var Cp;(e=>{function t(W){return W&&typeof W=="object"&&typeof W[Symbol.iterator]=="function"}e.is=t;let s=Object.freeze([]);function n(){return s}e.empty=n;function*l(W){yield W}e.single=l;function c(W){return t(W)?W:l(W)}e.wrap=c;function h(W){return W||s}e.from=h;function*f(W){for(let Q=W.length-1;Q>=0;Q--)yield W[Q]}e.reverse=f;function p(W){return!W||W[Symbol.iterator]().next().done===!0}e.isEmpty=p;function d(W){return W[Symbol.iterator]().next().value}e.first=d;function g(W,Q){let K=0;for(let Z of W)if(Q(Z,K++))return!0;return!1}e.some=g;function y(W,Q){for(let K of W)if(Q(K))return K}e.find=y;function*C(W,Q){for(let K of W)Q(K)&&(yield K)}e.filter=C;function*S(W,Q){let K=0;for(let Z of W)yield Q(Z,K++)}e.map=S;function*v(W,Q){let K=0;for(let Z of W)yield*Q(Z,K++)}e.flatMap=v;function*w(...W){for(let Q of W)yield*Q}e.concat=w;function E(W,Q,K){let Z=K;for(let fe of W)Z=Q(Z,fe);return Z}e.reduce=E;function*L(W,Q,K=W.length){for(Q<0&&(Q+=W.length),K<0?K+=W.length:K>W.length&&(K=W.length);Q<K;Q++)yield W[Q]}e.slice=L;function j(W,Q=Number.POSITIVE_INFINITY){let K=[];if(Q===0)return[K,W];let Z=W[Symbol.iterator]();for(let fe=0;fe<Q;fe++){let oe=Z.next();if(oe.done)return[K,e.empty()];K.push(oe.value)}return[K,{[Symbol.iterator](){return Z}}]}e.consume=j;async function $(W){let Q=[];for await(let K of W)Q.push(K);return Promise.resolve(Q)}e.asyncToArray=$})(Cp||={});function ks(e){if(Cp.is(e)){let t=[];for(let s of e)if(s)try{s.dispose()}catch(n){t.push(n)}if(t.length===1)throw t[0];if(t.length>1)throw new AggregateError(t,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}else if(e)return e.dispose(),e}function V0(...e){return rt(()=>ks(e))}function rt(e){return{dispose:U0(()=>{e()})}}var kp=class bp{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{ks(this._toDispose)}finally{this._toDispose.clear()}}add(t){if(!t)return t;if(t===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?bp.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(t),t}delete(t){if(t){if(t===this)throw new Error("Cannot dispose a disposable on itself!");this._toDispose.delete(t),t.dispose()}}deleteAndLeak(t){t&&this._toDispose.has(t)&&(this._toDispose.delete(t),void 0)}};kp.DISABLE_DISPOSED_WARNING=!1;var Qi=kp,Ie=class{constructor(){this._store=new Qi,this._store}dispose(){this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}};Ie.None=Object.freeze({dispose(){}});var sn=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(e){this._isDisposed||e===this._value||(this._value?.dispose(),this._value=e)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}clearAndLeak(){let e=this._value;return this._value=void 0,e}},gi=typeof window=="object"?window:globalThis,hh=class uh{constructor(t){this.element=t,this.next=uh.Undefined,this.prev=uh.Undefined}};hh.Undefined=new hh(void 0);var ot=hh,a_=class{constructor(){this._first=ot.Undefined,this._last=ot.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===ot.Undefined}clear(){let e=this._first;for(;e!==ot.Undefined;){let t=e.next;e.prev=ot.Undefined,e.next=ot.Undefined,e=t}this._first=ot.Undefined,this._last=ot.Undefined,this._size=0}unshift(e){return this._insert(e,!1)}push(e){return this._insert(e,!0)}_insert(e,t){let s=new ot(e);if(this._first===ot.Undefined)this._first=s,this._last=s;else if(t){let l=this._last;this._last=s,s.prev=l,l.next=s}else{let l=this._first;this._first=s,s.next=l,l.prev=s}this._size+=1;let n=!1;return()=>{n||(n=!0,this._remove(s))}}shift(){if(this._first!==ot.Undefined){let e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==ot.Undefined){let e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==ot.Undefined&&e.next!==ot.Undefined){let t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===ot.Undefined&&e.next===ot.Undefined?(this._first=ot.Undefined,this._last=ot.Undefined):e.next===ot.Undefined?(this._last=this._last.prev,this._last.next=ot.Undefined):e.prev===ot.Undefined&&(this._first=this._first.next,this._first.prev=ot.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==ot.Undefined;)yield e.element,e=e.next}},Y0=globalThis.performance&&typeof globalThis.performance.now=="function",q0=class xp{static create(t){return new xp(t)}constructor(t){this._now=Y0&&t===!1?Date.now:globalThis.performance.now.bind(globalThis.performance),this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}},Bt;(e=>{e.None=()=>Ie.None;function t(D,b){return y(D,()=>{},0,void 0,!0,void 0,b)}e.defer=t;function s(D){return(b,I=null,N)=>{let O=!1,Y;return Y=D(B=>{if(!O)return Y?Y.dispose():O=!0,b.call(I,B)},null,N),O&&Y.dispose(),Y}}e.once=s;function n(D,b,I){return d((N,O=null,Y)=>D(B=>N.call(O,b(B)),null,Y),I)}e.map=n;function l(D,b,I){return d((N,O=null,Y)=>D(B=>{b(B),N.call(O,B)},null,Y),I)}e.forEach=l;function c(D,b,I){return d((N,O=null,Y)=>D(B=>b(B)&&N.call(O,B),null,Y),I)}e.filter=c;function h(D){return D}e.signal=h;function f(...D){return(b,I=null,N)=>{let O=V0(...D.map(Y=>Y(B=>b.call(I,B))));return g(O,N)}}e.any=f;function p(D,b,I,N){let O=I;return n(D,Y=>(O=b(O,Y),O),N)}e.reduce=p;function d(D,b){let I,N={onWillAddFirstListener(){I=D(O.fire,O)},onDidRemoveLastListener(){I?.dispose()}},O=new ce(N);return b?.add(O),O.event}function g(D,b){return b instanceof Array?b.push(D):b&&b.add(D),D}function y(D,b,I=100,N=!1,O=!1,Y,B){let F,J,R,U=0,le,ie={leakWarningThreshold:Y,onWillAddFirstListener(){F=D(_e=>{U++,J=b(J,_e),N&&!R&&(ue.fire(J),J=void 0),le=()=>{let Re=J;J=void 0,R=void 0,(!N||U>1)&&ue.fire(Re),U=0},typeof I=="number"?(clearTimeout(R),R=setTimeout(le,I)):R===void 0&&(R=0,queueMicrotask(le))})},onWillRemoveListener(){O&&U>0&&le?.()},onDidRemoveLastListener(){le=void 0,F.dispose()}},ue=new ce(ie);return B?.add(ue),ue.event}e.debounce=y;function C(D,b=0,I){return e.debounce(D,(N,O)=>N?(N.push(O),N):[O],b,void 0,!0,void 0,I)}e.accumulate=C;function S(D,b=(N,O)=>N===O,I){let N=!0,O;return c(D,Y=>{let B=N||!b(Y,O);return N=!1,O=Y,B},I)}e.latch=S;function v(D,b,I){return[e.filter(D,b,I),e.filter(D,N=>!b(N),I)]}e.split=v;function w(D,b=!1,I=[],N){let O=I.slice(),Y=D(J=>{O?O.push(J):F.fire(J)});N&&N.add(Y);let B=()=>{O?.forEach(J=>F.fire(J)),O=null},F=new ce({onWillAddFirstListener(){Y||(Y=D(J=>F.fire(J)),N&&N.add(Y))},onDidAddFirstListener(){O&&(b?setTimeout(B):B())},onDidRemoveLastListener(){Y&&Y.dispose(),Y=null}});return N&&N.add(F),F.event}e.buffer=w;function E(D,b){return(I,N,O)=>{let Y=b(new j);return D(function(B){let F=Y.evaluate(B);F!==L&&I.call(N,F)},void 0,O)}}e.chain=E;let L=Symbol("HaltChainable");class j{constructor(){this.steps=[]}map(b){return this.steps.push(b),this}forEach(b){return this.steps.push(I=>(b(I),I)),this}filter(b){return this.steps.push(I=>b(I)?I:L),this}reduce(b,I){let N=I;return this.steps.push(O=>(N=b(N,O),N)),this}latch(b=(I,N)=>I===N){let I=!0,N;return this.steps.push(O=>{let Y=I||!b(O,N);return I=!1,N=O,Y?O:L}),this}evaluate(b){for(let I of this.steps)if(b=I(b),b===L)break;return b}}function $(D,b,I=N=>N){let N=(...F)=>B.fire(I(...F)),O=()=>D.on(b,N),Y=()=>D.removeListener(b,N),B=new ce({onWillAddFirstListener:O,onDidRemoveLastListener:Y});return B.event}e.fromNodeEventEmitter=$;function W(D,b,I=N=>N){let N=(...F)=>B.fire(I(...F)),O=()=>D.addEventListener(b,N),Y=()=>D.removeEventListener(b,N),B=new ce({onWillAddFirstListener:O,onDidRemoveLastListener:Y});return B.event}e.fromDOMEventEmitter=W;function Q(D){return new Promise(b=>s(D)(b))}e.toPromise=Q;function K(D){let b=new ce;return D.then(I=>{b.fire(I)},()=>{b.fire(void 0)}).finally(()=>{b.dispose()}),b.event}e.fromPromise=K;function Z(D,b){return D(I=>b.fire(I))}e.forward=Z;function fe(D,b,I){return b(I),D(N=>b(N))}e.runAndSubscribe=fe;class oe{constructor(b,I){this._observable=b,this._counter=0,this._hasChanged=!1;let N={onWillAddFirstListener:()=>{b.addObserver(this)},onDidRemoveLastListener:()=>{b.removeObserver(this)}};this.emitter=new ce(N),I&&I.add(this.emitter)}beginUpdate(b){this._counter++}handlePossibleChange(b){}handleChange(b,I){this._hasChanged=!0}endUpdate(b){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function he(D,b){return new oe(D,b).emitter.event}e.fromObservable=he;function V(D){return(b,I,N)=>{let O=0,Y=!1,B={beginUpdate(){O++},endUpdate(){O--,O===0&&(D.reportChanges(),Y&&(Y=!1,b.call(I)))},handlePossibleChange(){},handleChange(){Y=!0}};D.addObserver(B),D.reportChanges();let F={dispose(){D.removeObserver(B)}};return N instanceof Qi?N.add(F):Array.isArray(N)&&N.push(F),F}}e.fromObservableLight=V})(Bt||={});var dh=class fh{constructor(t){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${t}_${fh._idPool++}`,fh.all.add(this)}start(t){this._stopWatch=new q0,this.listenerCount=t}stop(){if(this._stopWatch){let t=this._stopWatch.elapsed();this.durations.push(t),this.elapsedOverall+=t,this.invocationCount+=1,this._stopWatch=void 0}}};dh.all=new Set,dh._idPool=0;var X0=dh,G0=-1,Ep=class Mp{constructor(t,s,n=(Mp._idPool++).toString(16).padStart(3,"0")){this._errorHandler=t,this.threshold=s,this.name=n,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(t,s){let n=this.threshold;if(n<=0||s<n)return;this._stacks||(this._stacks=new Map);let l=this._stacks.get(t.value)||0;if(this._stacks.set(t.value,l+1),this._warnCountdown-=1,this._warnCountdown<=0){this._warnCountdown=n*.5;let[c,h]=this.getMostFrequentStack(),f=`[${this.name}] potential listener LEAK detected, having ${s} listeners already. MOST frequent listener (${h}):`;console.warn(f),console.warn(c);let p=new Z0(f,c);this._errorHandler(p)}return()=>{let c=this._stacks.get(t.value)||0;this._stacks.set(t.value,c-1)}}getMostFrequentStack(){if(!this._stacks)return;let t,s=0;for(let[n,l]of this._stacks)(!t||s<l)&&(t=[n,l],s=l);return t}};Ep._idPool=1;var Q0=Ep,J0=class Rp{constructor(t){this.value=t}static create(){let t=new Error;return new Rp(t.stack??"")}print(){console.warn(this.value.split(`
|
|
69
|
+
`).slice(2).join(`
|
|
70
|
+
`))}},Z0=class extends Error{constructor(e,t){super(e),this.name="ListenerLeakError",this.stack=t}},ey=class extends Error{constructor(e,t){super(e),this.name="ListenerRefusalError",this.stack=t}},ty=0,Fc=class{constructor(e){this.value=e,this.id=ty++}},ry=2,iy,ce=class{constructor(e){this._size=0,this._options=e,this._leakageMon=this._options?.leakWarningThreshold?new Q0(e?.onListenerError??Tl,this._options?.leakWarningThreshold??G0):void 0,this._perfMon=this._options?._profName?new X0(this._options._profName):void 0,this._deliveryQueue=this._options?.deliveryQueue}dispose(){this._disposed||(this._disposed=!0,this._deliveryQueue?.current===this&&this._deliveryQueue.reset(),this._listeners&&(this._listeners=void 0,this._size=0),this._options?.onDidRemoveLastListener?.(),this._leakageMon?.dispose())}get event(){return this._event??=(e,t,s)=>{if(this._leakageMon&&this._size>this._leakageMon.threshold**2){let h=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(h);let f=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],p=new ey(`${h}. HINT: Stack shows most frequent listener (${f[1]}-times)`,f[0]);return(this._options?.onListenerError||Tl)(p),Ie.None}if(this._disposed)return Ie.None;t&&(e=e.bind(t));let n=new Fc(e),l;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(n.stack=J0.create(),l=this._leakageMon.check(n.stack,this._size+1)),this._listeners?this._listeners instanceof Fc?(this._deliveryQueue??=new sy,this._listeners=[this._listeners,n]):this._listeners.push(n):(this._options?.onWillAddFirstListener?.(this),this._listeners=n,this._options?.onDidAddFirstListener?.(this)),this._size++;let c=rt(()=>{l?.(),this._removeListener(n)});return s instanceof Qi?s.add(c):Array.isArray(s)&&s.push(c),c},this._event}_removeListener(e){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(this._size===1){this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),this._size=0;return}let t=this._listeners,s=t.indexOf(e);if(s===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,t[s]=void 0;let n=this._deliveryQueue.current===this;if(this._size*ry<=t.length){let l=0;for(let c=0;c<t.length;c++)t[c]?t[l++]=t[c]:n&&(this._deliveryQueue.end--,l<this._deliveryQueue.i&&this._deliveryQueue.i--);t.length=l}}_deliver(e,t){if(!e)return;let s=this._options?.onListenerError||Tl;if(!s){e.value(t);return}try{e.value(t)}catch(n){s(n)}}_deliverQueue(e){let t=e.current._listeners;for(;e.i<e.end;)this._deliver(t[e.i++],e.value);e.reset()}fire(e){if(this._deliveryQueue?.current&&(this._deliverQueue(this._deliveryQueue),this._perfMon?.stop()),this._perfMon?.start(this._size),this._listeners)if(this._listeners instanceof Fc)this._deliver(this._listeners,e);else{let t=this._deliveryQueue;t.enqueue(this,e,this._listeners.length),this._deliverQueue(t)}this._perfMon?.stop()}hasListeners(){return this._size>0}},sy=class{constructor(){this.i=-1,this.end=0}enqueue(e,t,s){this.i=0,this.end=s,this.current=e,this.value=t}reset(){this.i=this.end,this.current=void 0,this.value=void 0}},_h=class{constructor(){this.mapWindowIdToZoomLevel=new Map,this._onDidChangeZoomLevel=new ce,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event,this.mapWindowIdToZoomFactor=new Map,this._onDidChangeFullscreen=new ce,this.onDidChangeFullscreen=this._onDidChangeFullscreen.event,this.mapWindowIdToFullScreen=new Map}getZoomLevel(t){return this.mapWindowIdToZoomLevel.get(this.getWindowId(t))??0}setZoomLevel(t,s){if(this.getZoomLevel(s)===t)return;let n=this.getWindowId(s);this.mapWindowIdToZoomLevel.set(n,t),this._onDidChangeZoomLevel.fire(n)}getZoomFactor(t){return this.mapWindowIdToZoomFactor.get(this.getWindowId(t))??1}setZoomFactor(t,s){this.mapWindowIdToZoomFactor.set(this.getWindowId(s),t)}setFullscreen(t,s){if(this.isFullscreen(s)===t)return;let n=this.getWindowId(s);this.mapWindowIdToFullScreen.set(n,t),this._onDidChangeFullscreen.fire(n)}isFullscreen(t){return!!this.mapWindowIdToFullScreen.get(this.getWindowId(t))}getWindowId(t){return t.vscodeWindowId}};_h.INSTANCE=new _h;var Uh=_h;function ny(e,t,s){typeof t=="string"&&(t=e.matchMedia(t)),t.addEventListener("change",s)}Uh.INSTANCE.onDidChangeZoomLevel;function oy(e){return Uh.INSTANCE.getZoomFactor(e)}Uh.INSTANCE.onDidChangeFullscreen;var on=typeof navigator=="object"?navigator.userAgent:"",ph=on.indexOf("Firefox")>=0,ly=on.indexOf("AppleWebKit")>=0,Vh=on.indexOf("Chrome")>=0,ay=!Vh&&on.indexOf("Safari")>=0;on.indexOf("Electron/")>=0;on.indexOf("Android")>=0;var Hc=!1;if(typeof gi.matchMedia=="function"){let e=gi.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),t=gi.matchMedia("(display-mode: fullscreen)");Hc=e.matches,ny(gi,e,({matches:s})=>{Hc&&t.matches||(Hc=s)})}var rn="en",mh=!1,gh=!1,Pl=!1,Tp=!1,kl,Ll=rn,c_=rn,cy,mi,Cs=globalThis,ur;typeof Cs.vscode<"u"&&typeof Cs.vscode.process<"u"?ur=Cs.vscode.process:typeof process<"u"&&typeof process?.versions?.node=="string"&&(ur=process);var hy=typeof ur?.versions?.electron=="string",uy=hy&&ur?.type==="renderer";if(typeof ur=="object"){mh=ur.platform==="win32",gh=ur.platform==="darwin",Pl=ur.platform==="linux",Pl&&ur.env.SNAP&&ur.env.SNAP_REVISION,ur.env.CI||ur.env.BUILD_ARTIFACTSTAGINGDIRECTORY,kl=rn,Ll=rn;let e=ur.env.VSCODE_NLS_CONFIG;if(e)try{let t=JSON.parse(e);kl=t.userLocale,c_=t.osLocale,Ll=t.resolvedLanguage||rn,cy=t.languagePack?.translationsConfigFile}catch{}Tp=!0}else typeof navigator=="object"&&!uy?(mi=navigator.userAgent,mh=mi.indexOf("Windows")>=0,gh=mi.indexOf("Macintosh")>=0,(mi.indexOf("Macintosh")>=0||mi.indexOf("iPad")>=0||mi.indexOf("iPhone")>=0)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>0,Pl=mi.indexOf("Linux")>=0,mi?.indexOf("Mobi")>=0,Ll=globalThis._VSCODE_NLS_LANGUAGE||rn,kl=navigator.language.toLowerCase(),c_=kl):console.error("Unable to resolve platform.");var Pp=mh,ii=gh,dy=Pl,h_=Tp,si=mi,Vi=Ll,fy;(e=>{function t(){return Vi}e.value=t;function s(){return Vi.length===2?Vi==="en":Vi.length>=3?Vi[0]==="e"&&Vi[1]==="n"&&Vi[2]==="-":!1}e.isDefaultVariant=s;function n(){return Vi==="en"}e.isDefault=n})(fy||={});var _y=typeof Cs.postMessage=="function"&&!Cs.importScripts;(()=>{if(_y){let e=[];Cs.addEventListener("message",s=>{if(s.data&&s.data.vscodeScheduleAsyncWork)for(let n=0,l=e.length;n<l;n++){let c=e[n];if(c.id===s.data.vscodeScheduleAsyncWork){e.splice(n,1),c.callback();return}}});let t=0;return s=>{let n=++t;e.push({id:n,callback:s}),Cs.postMessage({vscodeScheduleAsyncWork:n},"*")}}return e=>setTimeout(e)})();var py=!!(si&&si.indexOf("Chrome")>=0);si&&si.indexOf("Firefox")>=0;!py&&si&&si.indexOf("Safari")>=0;si&&si.indexOf("Edg/")>=0;si&&si.indexOf("Android")>=0;var Zs=typeof navigator=="object"?navigator:{};h_||document.queryCommandSupported&&document.queryCommandSupported("copy")||Zs&&Zs.clipboard&&Zs.clipboard.writeText,h_||Zs&&Zs.clipboard&&Zs.clipboard.readText;var Yh=class{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(e,t){this._keyCodeToStr[e]=t,this._strToKeyCode[t.toLowerCase()]=e}keyCodeToStr(e){return this._keyCodeToStr[e]}strToKeyCode(e){return this._strToKeyCode[e.toLowerCase()]||0}},jc=new Yh,u_=new Yh,d_=new Yh,my=new Array(230),Lp;(e=>{function t(f){return jc.keyCodeToStr(f)}e.toString=t;function s(f){return jc.strToKeyCode(f)}e.fromString=s;function n(f){return u_.keyCodeToStr(f)}e.toUserSettingsUS=n;function l(f){return d_.keyCodeToStr(f)}e.toUserSettingsGeneral=l;function c(f){return u_.strToKeyCode(f)||d_.strToKeyCode(f)}e.fromUserSettings=c;function h(f){if(f>=98&&f<=113)return null;switch(f){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return jc.keyCodeToStr(f)}e.toElectronAccelerator=h})(Lp||={});var gy=class Dp{constructor(t,s,n,l,c){this.ctrlKey=t,this.shiftKey=s,this.altKey=n,this.metaKey=l,this.keyCode=c}equals(t){return t instanceof Dp&&this.ctrlKey===t.ctrlKey&&this.shiftKey===t.shiftKey&&this.altKey===t.altKey&&this.metaKey===t.metaKey&&this.keyCode===t.keyCode}getHashCode(){let t=this.ctrlKey?"1":"0",s=this.shiftKey?"1":"0",n=this.altKey?"1":"0",l=this.metaKey?"1":"0";return`K${t}${s}${n}${l}${this.keyCode}`}isModifierKey(){return this.keyCode===0||this.keyCode===5||this.keyCode===57||this.keyCode===6||this.keyCode===4}toKeybinding(){return new vy([this])}isDuplicateModifierCase(){return this.ctrlKey&&this.keyCode===5||this.shiftKey&&this.keyCode===4||this.altKey&&this.keyCode===6||this.metaKey&&this.keyCode===57}},vy=class{constructor(e){if(e.length===0)throw $0("chords");this.chords=e}getHashCode(){let e="";for(let t=0,s=this.chords.length;t<s;t++)t!==0&&(e+=";"),e+=this.chords[t].getHashCode();return e}equals(e){if(e===null||this.chords.length!==e.chords.length)return!1;for(let t=0;t<this.chords.length;t++)if(!this.chords[t].equals(e.chords[t]))return!1;return!0}};function yy(e){if(e.charCode){let s=String.fromCharCode(e.charCode).toUpperCase();return Lp.fromString(s)}let t=e.keyCode;if(t===3)return 7;if(ph)switch(t){case 59:return 85;case 60:if(dy)return 97;break;case 61:return 86;case 107:return 109;case 109:return 111;case 173:return 88;case 224:if(ii)return 57;break}else if(ly&&(ii&&t===93||!ii&&t===92))return 57;return my[t]||0}var Sy=ii?256:2048,wy=512,Cy=1024,ky=ii?2048:256,f_=class{constructor(e){this._standardKeyboardEventBrand=!0;let t=e;this.browserEvent=t,this.target=t.target,this.ctrlKey=t.ctrlKey,this.shiftKey=t.shiftKey,this.altKey=t.altKey,this.metaKey=t.metaKey,this.altGraphKey=t.getModifierState?.("AltGraph"),this.keyCode=yy(t),this.code=t.code,this.ctrlKey=this.ctrlKey||this.keyCode===5,this.altKey=this.altKey||this.keyCode===6,this.shiftKey=this.shiftKey||this.keyCode===4,this.metaKey=this.metaKey||this.keyCode===57,this._asKeybinding=this._computeKeybinding(),this._asKeyCodeChord=this._computeKeyCodeChord()}preventDefault(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()}toKeyCodeChord(){return this._asKeyCodeChord}equals(e){return this._asKeybinding===e}_computeKeybinding(){let e=0;this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(e=this.keyCode);let t=0;return this.ctrlKey&&(t|=Sy),this.altKey&&(t|=wy),this.shiftKey&&(t|=Cy),this.metaKey&&(t|=ky),t|=e,t}_computeKeyCodeChord(){let e=0;return this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(e=this.keyCode),new gy(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,e)}},__=new WeakMap;function by(e){if(!e.parent||e.parent===e)return null;try{let t=e.location,s=e.parent.location;if(t.origin!=="null"&&s.origin!=="null"&&t.origin!==s.origin)return null}catch{return null}return e.parent}var xy=class{static getSameOriginWindowChain(e){let t=__.get(e);if(!t){t=[],__.set(e,t);let s=e,n;do n=by(s),n?t.push({window:new WeakRef(s),iframeElement:s.frameElement||null}):t.push({window:new WeakRef(s),iframeElement:null}),s=n;while(s)}return t.slice(0)}static getPositionOfChildWindowRelativeToAncestorWindow(e,t){if(!t||e===t)return{top:0,left:0};let s=0,n=0,l=this.getSameOriginWindowChain(e);for(let c of l){let h=c.window.deref();if(s+=h?.scrollY??0,n+=h?.scrollX??0,h===t||!c.iframeElement)break;let f=c.iframeElement.getBoundingClientRect();s+=f.top,n+=f.left}return{top:s,left:n}}},bl=class{constructor(e,t){this.timestamp=Date.now(),this.browserEvent=t,this.leftButton=t.button===0,this.middleButton=t.button===1,this.rightButton=t.button===2,this.buttons=t.buttons,this.target=t.target,this.detail=t.detail||1,t.type==="dblclick"&&(this.detail=2),this.ctrlKey=t.ctrlKey,this.shiftKey=t.shiftKey,this.altKey=t.altKey,this.metaKey=t.metaKey,typeof t.pageX=="number"?(this.posx=t.pageX,this.posy=t.pageY):(this.posx=t.clientX+this.target.ownerDocument.body.scrollLeft+this.target.ownerDocument.documentElement.scrollLeft,this.posy=t.clientY+this.target.ownerDocument.body.scrollTop+this.target.ownerDocument.documentElement.scrollTop);let s=xy.getPositionOfChildWindowRelativeToAncestorWindow(e,t.view);this.posx-=s.left,this.posy-=s.top}preventDefault(){this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent.stopPropagation()}},p_=class{constructor(e,t=0,s=0){this.browserEvent=e||null,this.target=e?e.target||e.targetNode||e.srcElement:null,this.deltaY=s,this.deltaX=t;let n=!1;if(Vh){let l=navigator.userAgent.match(/Chrome\/(\d+)/);n=(l?parseInt(l[1]):123)<=122}if(e){let l=e,c=e,h=e.view?.devicePixelRatio||1;if(typeof l.wheelDeltaY<"u")n?this.deltaY=l.wheelDeltaY/(120*h):this.deltaY=l.wheelDeltaY/120;else if(typeof c.VERTICAL_AXIS<"u"&&c.axis===c.VERTICAL_AXIS)this.deltaY=-c.detail/3;else if(e.type==="wheel"){let f=e;f.deltaMode===f.DOM_DELTA_LINE?ph&&!ii?this.deltaY=-e.deltaY/3:this.deltaY=-e.deltaY:this.deltaY=-e.deltaY/40}if(typeof l.wheelDeltaX<"u")ay&&Pp?this.deltaX=-(l.wheelDeltaX/120):n?this.deltaX=l.wheelDeltaX/(120*h):this.deltaX=l.wheelDeltaX/120;else if(typeof c.HORIZONTAL_AXIS<"u"&&c.axis===c.HORIZONTAL_AXIS)this.deltaX=-e.detail/3;else if(e.type==="wheel"){let f=e;f.deltaMode===f.DOM_DELTA_LINE?ph&&!ii?this.deltaX=-e.deltaX/3:this.deltaX=-e.deltaX:this.deltaX=-e.deltaX/40}this.deltaY===0&&this.deltaX===0&&e.wheelDelta&&(n?this.deltaY=e.wheelDelta/(120*h):this.deltaY=e.wheelDelta/120)}}preventDefault(){this.browserEvent?.preventDefault()}stopPropagation(){this.browserEvent?.stopPropagation()}},Bp=Object.freeze(function(e,t){let s=setTimeout(e.bind(t),0);return{dispose(){clearTimeout(s)}}}),Ey;(e=>{function t(s){return s===e.None||s===e.Cancelled||s instanceof My?!0:!s||typeof s!="object"?!1:typeof s.isCancellationRequested=="boolean"&&typeof s.onCancellationRequested=="function"}e.isCancellationToken=t,e.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:Bt.None}),e.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:Bp})})(Ey||={});var My=class{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?Bp:(this._emitter||(this._emitter=new ce),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}},qh=class{constructor(e,t){this._isDisposed=!1,this._token=-1,typeof e=="function"&&typeof t=="number"&&this.setIfNotSet(e,t)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){this._token!==-1&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(e,t){if(this._isDisposed)throw new ch("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=-1,e()},t)}setIfNotSet(e,t){if(this._isDisposed)throw new ch("Calling 'setIfNotSet' on a disposed TimeoutTimer");this._token===-1&&(this._token=setTimeout(()=>{this._token=-1,e()},t))}},Ry=class{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){this.disposable?.dispose(),this.disposable=void 0}cancelAndSet(e,t,s=globalThis){if(this.isDisposed)throw new ch("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();let n=s.setInterval(()=>{e()},t);this.disposable=rt(()=>{s.clearInterval(n),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}},Ty;(e=>{async function t(n){let l,c=await Promise.all(n.map(h=>h.then(f=>f,f=>{l||(l=f)})));if(typeof l<"u")throw l;return c}e.settled=t;function s(n){return new Promise(async(l,c)=>{try{await n(l,c)}catch(h){c(h)}})}e.withAsyncBody=s})(Ty||={});var m_=class xr{static fromArray(t){return new xr(s=>{s.emitMany(t)})}static fromPromise(t){return new xr(async s=>{s.emitMany(await t)})}static fromPromises(t){return new xr(async s=>{await Promise.all(t.map(async n=>s.emitOne(await n)))})}static merge(t){return new xr(async s=>{await Promise.all(t.map(async n=>{for await(let l of n)s.emitOne(l)}))})}constructor(t,s){this._state=0,this._results=[],this._error=null,this._onReturn=s,this._onStateChanged=new ce,queueMicrotask(async()=>{let n={emitOne:l=>this.emitOne(l),emitMany:l=>this.emitMany(l),reject:l=>this.reject(l)};try{await Promise.resolve(t(n)),this.resolve()}catch(l){this.reject(l)}finally{n.emitOne=void 0,n.emitMany=void 0,n.reject=void 0}})}[Symbol.asyncIterator](){let t=0;return{next:async()=>{do{if(this._state===2)throw this._error;if(t<this._results.length)return{done:!1,value:this._results[t++]};if(this._state===1)return{done:!0,value:void 0};await Bt.toPromise(this._onStateChanged.event)}while(!0)},return:async()=>(this._onReturn?.(),{done:!0,value:void 0})}}static map(t,s){return new xr(async n=>{for await(let l of t)n.emitOne(s(l))})}map(t){return xr.map(this,t)}static filter(t,s){return new xr(async n=>{for await(let l of t)s(l)&&n.emitOne(l)})}filter(t){return xr.filter(this,t)}static coalesce(t){return xr.filter(t,s=>!!s)}coalesce(){return xr.coalesce(this)}static async toPromise(t){let s=[];for await(let n of t)s.push(n);return s}toPromise(){return xr.toPromise(this)}emitOne(t){this._state===0&&(this._results.push(t),this._onStateChanged.fire())}emitMany(t){this._state===0&&(this._results=this._results.concat(t),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(t){this._state===0&&(this._state=2,this._error=t,this._onStateChanged.fire())}};m_.EMPTY=m_.fromArray([]);var{getWindow:ri,getWindowId:Py,onDidRegisterWindow:Ly}=(function(){let e=new Map,t={window:gi,disposables:new Qi};e.set(gi.vscodeWindowId,t);let s=new ce,n=new ce,l=new ce;function c(h,f){return(typeof h=="number"?e.get(h):void 0)??(f?t:void 0)}return{onDidRegisterWindow:s.event,onWillUnregisterWindow:l.event,onDidUnregisterWindow:n.event,registerWindow(h){if(e.has(h.vscodeWindowId))return Ie.None;let f=new Qi,p={window:h,disposables:f.add(new Qi)};return e.set(h.vscodeWindowId,p),f.add(rt(()=>{e.delete(h.vscodeWindowId),n.fire(h)})),f.add(Le(h,Et.BEFORE_UNLOAD,()=>{l.fire(h)})),s.fire(p),f},getWindows(){return e.values()},getWindowsCount(){return e.size},getWindowId(h){return h.vscodeWindowId},hasWindow(h){return e.has(h)},getWindowById:c,getWindow(h){let f=h;if(f?.ownerDocument?.defaultView)return f.ownerDocument.defaultView.window;let p=h;return p?.view?p.view.window:gi},getDocument(h){return ri(h).document}}})(),Dy=class{constructor(e,t,s,n){this._node=e,this._type=t,this._handler=s,this._options=n||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}};function Le(e,t,s,n){return new Dy(e,t,s,n)}var g_=function(e,t,s,n){return Le(e,t,s,n)},Xh,By=class extends Ry{constructor(e){super(),this.defaultTarget=e&&ri(e)}cancelAndSet(e,t,s){return super.cancelAndSet(e,t,s??this.defaultTarget)}},v_=class{constructor(e,t=0){this._runner=e,this.priority=t,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(e){Tl(e)}}static sort(e,t){return t.priority-e.priority}};(function(){let e=new Map,t=new Map,s=new Map,n=new Map,l=c=>{s.set(c,!1);let h=e.get(c)??[];for(t.set(c,h),e.set(c,[]),n.set(c,!0);h.length>0;)h.sort(v_.sort),h.shift().execute();n.set(c,!1)};Xh=(c,h,f=0)=>{let p=Py(c),d=new v_(h,f),g=e.get(p);return g||(g=[],e.set(p,g)),g.push(d),s.get(p)||(s.set(p,!0),c.requestAnimationFrame(()=>l(p))),d}})();function Ny(e){let t=e.getBoundingClientRect(),s=ri(e);return{left:t.left+s.scrollX,top:t.top+s.scrollY,width:t.width,height:t.height}}var Et={CLICK:"click",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",KEY_DOWN:"keydown",KEY_UP:"keyup",BEFORE_UNLOAD:"beforeunload",CHANGE:"change",FOCUS:"focus",BLUR:"blur",INPUT:"input"},Iy=class{constructor(e){this.domNode=e,this._maxWidth="",this._width="",this._height="",this._top="",this._left="",this._bottom="",this._right="",this._paddingTop="",this._paddingLeft="",this._paddingBottom="",this._paddingRight="",this._fontFamily="",this._fontWeight="",this._fontSize="",this._fontStyle="",this._fontFeatureSettings="",this._fontVariationSettings="",this._textDecoration="",this._lineHeight="",this._letterSpacing="",this._className="",this._display="",this._position="",this._visibility="",this._color="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}setMaxWidth(e){let t=tr(e);this._maxWidth!==t&&(this._maxWidth=t,this.domNode.style.maxWidth=this._maxWidth)}setWidth(e){let t=tr(e);this._width!==t&&(this._width=t,this.domNode.style.width=this._width)}setHeight(e){let t=tr(e);this._height!==t&&(this._height=t,this.domNode.style.height=this._height)}setTop(e){let t=tr(e);this._top!==t&&(this._top=t,this.domNode.style.top=this._top)}setLeft(e){let t=tr(e);this._left!==t&&(this._left=t,this.domNode.style.left=this._left)}setBottom(e){let t=tr(e);this._bottom!==t&&(this._bottom=t,this.domNode.style.bottom=this._bottom)}setRight(e){let t=tr(e);this._right!==t&&(this._right=t,this.domNode.style.right=this._right)}setPaddingTop(e){let t=tr(e);this._paddingTop!==t&&(this._paddingTop=t,this.domNode.style.paddingTop=this._paddingTop)}setPaddingLeft(e){let t=tr(e);this._paddingLeft!==t&&(this._paddingLeft=t,this.domNode.style.paddingLeft=this._paddingLeft)}setPaddingBottom(e){let t=tr(e);this._paddingBottom!==t&&(this._paddingBottom=t,this.domNode.style.paddingBottom=this._paddingBottom)}setPaddingRight(e){let t=tr(e);this._paddingRight!==t&&(this._paddingRight=t,this.domNode.style.paddingRight=this._paddingRight)}setFontFamily(e){this._fontFamily!==e&&(this._fontFamily=e,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(e){this._fontWeight!==e&&(this._fontWeight=e,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(e){let t=tr(e);this._fontSize!==t&&(this._fontSize=t,this.domNode.style.fontSize=this._fontSize)}setFontStyle(e){this._fontStyle!==e&&(this._fontStyle=e,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(e){this._fontFeatureSettings!==e&&(this._fontFeatureSettings=e,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(e){this._fontVariationSettings!==e&&(this._fontVariationSettings=e,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(e){this._textDecoration!==e&&(this._textDecoration=e,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(e){let t=tr(e);this._lineHeight!==t&&(this._lineHeight=t,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(e){let t=tr(e);this._letterSpacing!==t&&(this._letterSpacing=t,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(e){this._className!==e&&(this._className=e,this.domNode.className=this._className)}toggleClassName(e,t){this.domNode.classList.toggle(e,t),this._className=this.domNode.className}setDisplay(e){this._display!==e&&(this._display=e,this.domNode.style.display=this._display)}setPosition(e){this._position!==e&&(this._position=e,this.domNode.style.position=this._position)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this.domNode.style.visibility=this._visibility)}setColor(e){this._color!==e&&(this._color=e,this.domNode.style.color=this._color)}setBackgroundColor(e){this._backgroundColor!==e&&(this._backgroundColor=e,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(e){this._layerHint!==e&&(this._layerHint=e,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(e){this._boxShadow!==e&&(this._boxShadow=e,this.domNode.style.boxShadow=e)}setContain(e){this._contain!==e&&(this._contain=e,this.domNode.style.contain=this._contain)}setAttribute(e,t){this.domNode.setAttribute(e,t)}removeAttribute(e){this.domNode.removeAttribute(e)}appendChild(e){this.domNode.appendChild(e.domNode)}removeChild(e){this.domNode.removeChild(e.domNode)}};function tr(e){return typeof e=="number"?`${e}px`:e}function so(e){return new Iy(e)}var Np=class{constructor(){this._hooks=new Qi,this._pointerMoveCallback=null,this._onStopCallback=null}dispose(){this.stopMonitoring(!1),this._hooks.dispose()}stopMonitoring(e,t){if(!this.isMonitoring())return;this._hooks.clear(),this._pointerMoveCallback=null;let s=this._onStopCallback;this._onStopCallback=null,e&&s&&s(t)}isMonitoring(){return!!this._pointerMoveCallback}startMonitoring(e,t,s,n,l){this.isMonitoring()&&this.stopMonitoring(!1),this._pointerMoveCallback=n,this._onStopCallback=l;let c=e;try{e.setPointerCapture(t),this._hooks.add(rt(()=>{try{e.releasePointerCapture(t)}catch{}}))}catch{c=ri(e)}this._hooks.add(Le(c,Et.POINTER_MOVE,h=>{if(h.buttons!==s){this.stopMonitoring(!0);return}h.preventDefault(),this._pointerMoveCallback(h)})),this._hooks.add(Le(c,Et.POINTER_UP,h=>this.stopMonitoring(!0)))}};function Ay(e,t,s){let n=null,l=null;if(typeof s.value=="function"?(n="value",l=s.value,l.length!==0&&console.warn("Memoize should only be used in functions with zero parameters")):typeof s.get=="function"&&(n="get",l=s.get),!l)throw new Error("not supported");let c=`$memoize$${t}`;s[n]=function(...h){return this.hasOwnProperty(c)||Object.defineProperty(this,c,{configurable:!1,enumerable:!1,writable:!1,value:l.apply(this,h)}),this[c]}}var ti;(e=>(e.Tap="-xterm-gesturetap",e.Change="-xterm-gesturechange",e.Start="-xterm-gesturestart",e.End="-xterm-gesturesend",e.Contextmenu="-xterm-gesturecontextmenu"))(ti||={});var Qn=class Wt extends Ie{constructor(){super(),this.dispatched=!1,this.targets=new a_,this.ignoreTargets=new a_,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(Bt.runAndSubscribe(Ly,({window:t,disposables:s})=>{s.add(Le(t.document,"touchstart",n=>this.onTouchStart(n),{passive:!1})),s.add(Le(t.document,"touchend",n=>this.onTouchEnd(t,n))),s.add(Le(t.document,"touchmove",n=>this.onTouchMove(n),{passive:!1}))},{window:gi,disposables:this._store}))}static addTarget(t){if(!Wt.isTouchDevice())return Ie.None;Wt.INSTANCE||(Wt.INSTANCE=new Wt);let s=Wt.INSTANCE.targets.push(t);return rt(s)}static ignoreTarget(t){if(!Wt.isTouchDevice())return Ie.None;Wt.INSTANCE||(Wt.INSTANCE=new Wt);let s=Wt.INSTANCE.ignoreTargets.push(t);return rt(s)}static isTouchDevice(){return"ontouchstart"in gi||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(t){let s=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let n=0,l=t.targetTouches.length;n<l;n++){let c=t.targetTouches.item(n);this.activeTouches[c.identifier]={id:c.identifier,initialTarget:c.target,initialTimeStamp:s,initialPageX:c.pageX,initialPageY:c.pageY,rollingTimestamps:[s],rollingPageX:[c.pageX],rollingPageY:[c.pageY]};let h=this.newGestureEvent(ti.Start,c.target);h.pageX=c.pageX,h.pageY=c.pageY,this.dispatchEvent(h)}this.dispatched&&(t.preventDefault(),t.stopPropagation(),this.dispatched=!1)}onTouchEnd(t,s){let n=Date.now(),l=Object.keys(this.activeTouches).length;for(let c=0,h=s.changedTouches.length;c<h;c++){let f=s.changedTouches.item(c);if(!this.activeTouches.hasOwnProperty(String(f.identifier))){console.warn("move of an UNKNOWN touch",f);continue}let p=this.activeTouches[f.identifier],d=Date.now()-p.initialTimeStamp;if(d<Wt.HOLD_DELAY&&Math.abs(p.initialPageX-cr(p.rollingPageX))<30&&Math.abs(p.initialPageY-cr(p.rollingPageY))<30){let g=this.newGestureEvent(ti.Tap,p.initialTarget);g.pageX=cr(p.rollingPageX),g.pageY=cr(p.rollingPageY),this.dispatchEvent(g)}else if(d>=Wt.HOLD_DELAY&&Math.abs(p.initialPageX-cr(p.rollingPageX))<30&&Math.abs(p.initialPageY-cr(p.rollingPageY))<30){let g=this.newGestureEvent(ti.Contextmenu,p.initialTarget);g.pageX=cr(p.rollingPageX),g.pageY=cr(p.rollingPageY),this.dispatchEvent(g)}else if(l===1){let g=cr(p.rollingPageX),y=cr(p.rollingPageY),C=cr(p.rollingTimestamps)-p.rollingTimestamps[0],S=g-p.rollingPageX[0],v=y-p.rollingPageY[0],w=[...this.targets].filter(E=>p.initialTarget instanceof Node&&E.contains(p.initialTarget));this.inertia(t,w,n,Math.abs(S)/C,S>0?1:-1,g,Math.abs(v)/C,v>0?1:-1,y)}this.dispatchEvent(this.newGestureEvent(ti.End,p.initialTarget)),delete this.activeTouches[f.identifier]}this.dispatched&&(s.preventDefault(),s.stopPropagation(),this.dispatched=!1)}newGestureEvent(t,s){let n=document.createEvent("CustomEvent");return n.initEvent(t,!1,!0),n.initialTarget=s,n.tapCount=0,n}dispatchEvent(t){if(t.type===ti.Tap){let s=new Date().getTime(),n=0;s-this._lastSetTapCountTime>Wt.CLEAR_TAP_COUNT_TIME?n=1:n=2,this._lastSetTapCountTime=s,t.tapCount=n}else(t.type===ti.Change||t.type===ti.Contextmenu)&&(this._lastSetTapCountTime=0);if(t.initialTarget instanceof Node){for(let n of this.ignoreTargets)if(n.contains(t.initialTarget))return;let s=[];for(let n of this.targets)if(n.contains(t.initialTarget)){let l=0,c=t.initialTarget;for(;c&&c!==n;)l++,c=c.parentElement;s.push([l,n])}s.sort((n,l)=>n[0]-l[0]);for(let[n,l]of s)l.dispatchEvent(t),this.dispatched=!0}}inertia(t,s,n,l,c,h,f,p,d){this.handle=Xh(t,()=>{let g=Date.now(),y=g-n,C=0,S=0,v=!0;l+=Wt.SCROLL_FRICTION*y,f+=Wt.SCROLL_FRICTION*y,l>0&&(v=!1,C=c*l*y),f>0&&(v=!1,S=p*f*y);let w=this.newGestureEvent(ti.Change);w.translationX=C,w.translationY=S,s.forEach(E=>E.dispatchEvent(w)),v||this.inertia(t,s,g,l,c,h+C,f,p,d+S)})}onTouchMove(t){let s=Date.now();for(let n=0,l=t.changedTouches.length;n<l;n++){let c=t.changedTouches.item(n);if(!this.activeTouches.hasOwnProperty(String(c.identifier))){console.warn("end of an UNKNOWN touch",c);continue}let h=this.activeTouches[c.identifier],f=this.newGestureEvent(ti.Change,h.initialTarget);f.translationX=c.pageX-cr(h.rollingPageX),f.translationY=c.pageY-cr(h.rollingPageY),f.pageX=c.pageX,f.pageY=c.pageY,this.dispatchEvent(f),h.rollingPageX.length>3&&(h.rollingPageX.shift(),h.rollingPageY.shift(),h.rollingTimestamps.shift()),h.rollingPageX.push(c.pageX),h.rollingPageY.push(c.pageY),h.rollingTimestamps.push(s)}this.dispatched&&(t.preventDefault(),t.stopPropagation(),this.dispatched=!1)}};Qn.SCROLL_FRICTION=-.005,Qn.HOLD_DELAY=700,Qn.CLEAR_TAP_COUNT_TIME=400,ut([Ay],Qn,"isTouchDevice",1);var Oy=Qn,Gh=class extends Ie{onclick(e,t){this._register(Le(e,Et.CLICK,s=>t(new bl(ri(e),s))))}onmousedown(e,t){this._register(Le(e,Et.MOUSE_DOWN,s=>t(new bl(ri(e),s))))}onmouseover(e,t){this._register(Le(e,Et.MOUSE_OVER,s=>t(new bl(ri(e),s))))}onmouseleave(e,t){this._register(Le(e,Et.MOUSE_LEAVE,s=>t(new bl(ri(e),s))))}onkeydown(e,t){this._register(Le(e,Et.KEY_DOWN,s=>t(new f_(s))))}onkeyup(e,t){this._register(Le(e,Et.KEY_UP,s=>t(new f_(s))))}oninput(e,t){this._register(Le(e,Et.INPUT,t))}onblur(e,t){this._register(Le(e,Et.BLUR,t))}onfocus(e,t){this._register(Le(e,Et.FOCUS,t))}onchange(e,t){this._register(Le(e,Et.CHANGE,t))}ignoreGesture(e){return Oy.ignoreTarget(e)}},y_=11,zy=class extends Gh{constructor(e){super(),this._onActivate=e.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=e.bgWidth+"px",this.bgDomNode.style.height=e.bgHeight+"px",typeof e.top<"u"&&(this.bgDomNode.style.top="0px"),typeof e.left<"u"&&(this.bgDomNode.style.left="0px"),typeof e.bottom<"u"&&(this.bgDomNode.style.bottom="0px"),typeof e.right<"u"&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=e.className,this.domNode.style.position="absolute",this.domNode.style.width=y_+"px",this.domNode.style.height=y_+"px",typeof e.top<"u"&&(this.domNode.style.top=e.top+"px"),typeof e.left<"u"&&(this.domNode.style.left=e.left+"px"),typeof e.bottom<"u"&&(this.domNode.style.bottom=e.bottom+"px"),typeof e.right<"u"&&(this.domNode.style.right=e.right+"px"),this._pointerMoveMonitor=this._register(new Np),this._register(g_(this.bgDomNode,Et.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._register(g_(this.domNode,Et.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._pointerdownRepeatTimer=this._register(new By),this._pointerdownScheduleRepeatTimer=this._register(new qh)}_arrowPointerDown(e){if(!e.target||!(e.target instanceof Element))return;let t=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,ri(e))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(t,200),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,s=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),e.preventDefault()}},Wy=class vh{constructor(t,s,n,l,c,h,f){this._forceIntegerValues=t,this._scrollStateBrand=void 0,this._forceIntegerValues&&(s=s|0,n=n|0,l=l|0,c=c|0,h=h|0,f=f|0),this.rawScrollLeft=l,this.rawScrollTop=f,s<0&&(s=0),l+s>n&&(l=n-s),l<0&&(l=0),c<0&&(c=0),f+c>h&&(f=h-c),f<0&&(f=0),this.width=s,this.scrollWidth=n,this.scrollLeft=l,this.height=c,this.scrollHeight=h,this.scrollTop=f}equals(t){return this.rawScrollLeft===t.rawScrollLeft&&this.rawScrollTop===t.rawScrollTop&&this.width===t.width&&this.scrollWidth===t.scrollWidth&&this.scrollLeft===t.scrollLeft&&this.height===t.height&&this.scrollHeight===t.scrollHeight&&this.scrollTop===t.scrollTop}withScrollDimensions(t,s){return new vh(this._forceIntegerValues,typeof t.width<"u"?t.width:this.width,typeof t.scrollWidth<"u"?t.scrollWidth:this.scrollWidth,s?this.rawScrollLeft:this.scrollLeft,typeof t.height<"u"?t.height:this.height,typeof t.scrollHeight<"u"?t.scrollHeight:this.scrollHeight,s?this.rawScrollTop:this.scrollTop)}withScrollPosition(t){return new vh(this._forceIntegerValues,this.width,this.scrollWidth,typeof t.scrollLeft<"u"?t.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,typeof t.scrollTop<"u"?t.scrollTop:this.rawScrollTop)}createScrollEvent(t,s){let n=this.width!==t.width,l=this.scrollWidth!==t.scrollWidth,c=this.scrollLeft!==t.scrollLeft,h=this.height!==t.height,f=this.scrollHeight!==t.scrollHeight,p=this.scrollTop!==t.scrollTop;return{inSmoothScrolling:s,oldWidth:t.width,oldScrollWidth:t.scrollWidth,oldScrollLeft:t.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:t.height,oldScrollHeight:t.scrollHeight,oldScrollTop:t.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:n,scrollWidthChanged:l,scrollLeftChanged:c,heightChanged:h,scrollHeightChanged:f,scrollTopChanged:p}}},Fy=class extends Ie{constructor(e){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new ce),this.onScroll=this._onScroll.event,this._smoothScrollDuration=e.smoothScrollDuration,this._scheduleAtNextAnimationFrame=e.scheduleAtNextAnimationFrame,this._state=new Wy(e.forceIntegerValues,0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(e){this._smoothScrollDuration=e}validateScrollPosition(e){return this._state.withScrollPosition(e)}getScrollDimensions(){return this._state}setScrollDimensions(e,t){let s=this._state.withScrollDimensions(e,t);this._setState(s,!!this._smoothScrolling),this._smoothScrolling?.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(e){let t=this._state.withScrollPosition(e);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(t,!1)}setScrollPositionSmooth(e,t){if(this._smoothScrollDuration===0)return this.setScrollPositionNow(e);if(this._smoothScrolling){e={scrollLeft:typeof e.scrollLeft>"u"?this._smoothScrolling.to.scrollLeft:e.scrollLeft,scrollTop:typeof e.scrollTop>"u"?this._smoothScrolling.to.scrollTop:e.scrollTop};let s=this._state.withScrollPosition(e);if(this._smoothScrolling.to.scrollLeft===s.scrollLeft&&this._smoothScrolling.to.scrollTop===s.scrollTop)return;let n;t?n=new w_(this._smoothScrolling.from,s,this._smoothScrolling.startTime,this._smoothScrolling.duration):n=this._smoothScrolling.combine(this._state,s,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=n}else{let s=this._state.withScrollPosition(e);this._smoothScrolling=w_.start(this._state,s,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}hasPendingScrollAnimation(){return!!this._smoothScrolling}_performSmoothScrolling(){if(!this._smoothScrolling)return;let e=this._smoothScrolling.tick(),t=this._state.withScrollPosition(e);if(this._setState(t,!0),!!this._smoothScrolling){if(e.isDone){this._smoothScrolling.dispose(),this._smoothScrolling=null;return}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}}_setState(e,t){let s=this._state;s.equals(e)||(this._state=e,this._onScroll.fire(this._state.createScrollEvent(s,t)))}},S_=class{constructor(e,t,s){this.scrollLeft=e,this.scrollTop=t,this.isDone=s}};function $c(e,t){let s=t-e;return function(n){return e+s*$y(n)}}function Hy(e,t,s){return function(n){return n<s?e(n/s):t((n-s)/(1-s))}}var w_=class yh{constructor(t,s,n,l){this.from=t,this.to=s,this.duration=l,this.startTime=n,this.animationFrameDisposable=null,this._initAnimations()}_initAnimations(){this.scrollLeft=this._initAnimation(this.from.scrollLeft,this.to.scrollLeft,this.to.width),this.scrollTop=this._initAnimation(this.from.scrollTop,this.to.scrollTop,this.to.height)}_initAnimation(t,s,n){if(Math.abs(t-s)>2.5*n){let l,c;return t<s?(l=t+.75*n,c=s-.75*n):(l=t-.75*n,c=s+.75*n),Hy($c(t,l),$c(c,s),.33)}return $c(t,s)}dispose(){this.animationFrameDisposable!==null&&(this.animationFrameDisposable.dispose(),this.animationFrameDisposable=null)}acceptScrollDimensions(t){this.to=t.withScrollPosition(this.to),this._initAnimations()}tick(){return this._tick(Date.now())}_tick(t){let s=(t-this.startTime)/this.duration;if(s<1){let n=this.scrollLeft(s),l=this.scrollTop(s);return new S_(n,l,!1)}return new S_(this.to.scrollLeft,this.to.scrollTop,!0)}combine(t,s,n){return yh.start(t,s,n)}static start(t,s,n){n=n+10;let l=Date.now()-10;return new yh(t,s,l,n)}};function jy(e){return Math.pow(e,3)}function $y(e){return 1-jy(1-e)}var Ky=class extends Ie{constructor(e,t,s){super(),this._visibility=e,this._visibleClassName=t,this._invisibleClassName=s,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new qh)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this._updateShouldBeVisible())}setShouldBeVisible(e){this._rawShouldBeVisible=e,this._updateShouldBeVisible()}_applyVisibilitySetting(){return this._visibility===2?!1:this._visibility===3?!0:this._rawShouldBeVisible}_updateShouldBeVisible(){let e=this._applyVisibilitySetting();this._shouldBeVisible!==e&&(this._shouldBeVisible=e,this.ensureVisibility())}setIsNeeded(e){this._isNeeded!==e&&(this._isNeeded=e,this.ensureVisibility())}setDomNode(e){this._domNode=e,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){if(!this._isNeeded){this._hide(!1);return}this._shouldBeVisible?this._reveal():this._hide(!0)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{this._domNode?.setClassName(this._visibleClassName)},0))}_hide(e){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode?.setClassName(this._invisibleClassName+(e?" fade":"")))}},Uy=140,Ip=class extends Gh{constructor(e){super(),this._lazyRender=e.lazyRender,this._host=e.host,this._scrollable=e.scrollable,this._scrollByPage=e.scrollByPage,this._scrollbarState=e.scrollbarState,this._visibilityController=this._register(new Ky(e.visibility,"visible scrollbar "+e.extraScrollbarClassName,"invisible scrollbar "+e.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new Np),this._shouldRender=!0,this.domNode=so(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register(Le(this.domNode.domNode,Et.POINTER_DOWN,t=>this._domNodePointerDown(t)))}_createArrow(e){let t=this._register(new zy(e));this.domNode.domNode.appendChild(t.bgDomNode),this.domNode.domNode.appendChild(t.domNode)}_createSlider(e,t,s,n){this.slider=so(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(e),this.slider.setLeft(t),typeof s=="number"&&this.slider.setWidth(s),typeof n=="number"&&this.slider.setHeight(n),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(Le(this.slider.domNode,Et.POINTER_DOWN,l=>{l.button===0&&(l.preventDefault(),this._sliderPointerDown(l))})),this.onclick(this.slider.domNode,l=>{l.leftButton&&l.stopPropagation()})}_onElementSize(e){return this._scrollbarState.setVisibleSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(e){return this._scrollbarState.setScrollSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(e){return this._scrollbarState.setScrollPosition(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(e){e.target===this.domNode.domNode&&this._onPointerDown(e)}delegatePointerDown(e){let t=this.domNode.domNode.getClientRects()[0].top,s=t+this._scrollbarState.getSliderPosition(),n=t+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),l=this._sliderPointerPosition(e);s<=l&&l<=n?e.button===0&&(e.preventDefault(),this._sliderPointerDown(e)):this._onPointerDown(e)}_onPointerDown(e){let t,s;if(e.target===this.domNode.domNode&&typeof e.offsetX=="number"&&typeof e.offsetY=="number")t=e.offsetX,s=e.offsetY;else{let l=Ny(this.domNode.domNode);t=e.pageX-l.left,s=e.pageY-l.top}let n=this._pointerDownRelativePosition(t,s);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(n):this._scrollbarState.getDesiredScrollPositionFromOffset(n)),e.button===0&&(e.preventDefault(),this._sliderPointerDown(e))}_sliderPointerDown(e){if(!e.target||!(e.target instanceof Element))return;let t=this._sliderPointerPosition(e),s=this._sliderOrthogonalPointerPosition(e),n=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,l=>{let c=this._sliderOrthogonalPointerPosition(l),h=Math.abs(c-s);if(Pp&&h>Uy){this._setDesiredScrollPositionNow(n.getScrollPosition());return}let f=this._sliderPointerPosition(l)-t;this._setDesiredScrollPositionNow(n.getDesiredScrollPositionFromDelta(f))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(e){let t={};this.writeScrollPosition(t,e),this._scrollable.setScrollPositionNow(t)}updateScrollbarSize(e){this._updateScrollbarSize(e),this._scrollbarState.setScrollbarSize(e),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}},Ap=class Sh{constructor(t,s,n,l,c,h){this._scrollbarSize=Math.round(s),this._oppositeScrollbarSize=Math.round(n),this._arrowSize=Math.round(t),this._visibleSize=l,this._scrollSize=c,this._scrollPosition=h,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new Sh(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(t){let s=Math.round(t);return this._visibleSize!==s?(this._visibleSize=s,this._refreshComputedValues(),!0):!1}setScrollSize(t){let s=Math.round(t);return this._scrollSize!==s?(this._scrollSize=s,this._refreshComputedValues(),!0):!1}setScrollPosition(t){let s=Math.round(t);return this._scrollPosition!==s?(this._scrollPosition=s,this._refreshComputedValues(),!0):!1}setScrollbarSize(t){this._scrollbarSize=Math.round(t)}setOppositeScrollbarSize(t){this._oppositeScrollbarSize=Math.round(t)}static _computeValues(t,s,n,l,c){let h=Math.max(0,n-t),f=Math.max(0,h-2*s),p=l>0&&l>n;if(!p)return{computedAvailableSize:Math.round(h),computedIsNeeded:p,computedSliderSize:Math.round(f),computedSliderRatio:0,computedSliderPosition:0};let d=Math.round(Math.max(20,Math.floor(n*f/l))),g=(f-d)/(l-n),y=c*g;return{computedAvailableSize:Math.round(h),computedIsNeeded:p,computedSliderSize:Math.round(d),computedSliderRatio:g,computedSliderPosition:Math.round(y)}}_refreshComputedValues(){let t=Sh._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=t.computedAvailableSize,this._computedIsNeeded=t.computedIsNeeded,this._computedSliderSize=t.computedSliderSize,this._computedSliderRatio=t.computedSliderRatio,this._computedSliderPosition=t.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(t){if(!this._computedIsNeeded)return 0;let s=t-this._arrowSize-this._computedSliderSize/2;return Math.round(s/this._computedSliderRatio)}getDesiredScrollPositionFromOffsetPaged(t){if(!this._computedIsNeeded)return 0;let s=t-this._arrowSize,n=this._scrollPosition;return s<this._computedSliderPosition?n-=this._visibleSize:n+=this._visibleSize,n}getDesiredScrollPositionFromDelta(t){if(!this._computedIsNeeded)return 0;let s=this._computedSliderPosition+t;return Math.round(s/this._computedSliderRatio)}},Vy=class extends Ip{constructor(e,t,s){let n=e.getScrollDimensions(),l=e.getCurrentScrollPosition();if(super({lazyRender:t.lazyRender,host:s,scrollbarState:new Ap(t.horizontalHasArrows?t.arrowSize:0,t.horizontal===2?0:t.horizontalScrollbarSize,t.vertical===2?0:t.verticalScrollbarSize,n.width,n.scrollWidth,l.scrollLeft),visibility:t.horizontal,extraScrollbarClassName:"horizontal",scrollable:e,scrollByPage:t.scrollByPage}),t.horizontalHasArrows)throw new Error("horizontalHasArrows is not supported in xterm.js");this._createSlider(Math.floor((t.horizontalScrollbarSize-t.horizontalSliderSize)/2),0,void 0,t.horizontalSliderSize)}_updateSlider(e,t){this.slider.setWidth(e),this.slider.setLeft(t)}_renderDomNode(e,t){this.domNode.setWidth(e),this.domNode.setHeight(t),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(e.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,t){return e}_sliderPointerPosition(e){return e.pageX}_sliderOrthogonalPointerPosition(e){return e.pageY}_updateScrollbarSize(e){this.slider.setHeight(e)}writeScrollPosition(e,t){e.scrollLeft=t}updateOptions(e){this.updateScrollbarSize(e.horizontal===2?0:e.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(e.vertical===2?0:e.verticalScrollbarSize),this._visibilityController.setVisibility(e.horizontal),this._scrollByPage=e.scrollByPage}},Yy=class extends Ip{constructor(e,t,s){let n=e.getScrollDimensions(),l=e.getCurrentScrollPosition();if(super({lazyRender:t.lazyRender,host:s,scrollbarState:new Ap(t.verticalHasArrows?t.arrowSize:0,t.vertical===2?0:t.verticalScrollbarSize,0,n.height,n.scrollHeight,l.scrollTop),visibility:t.vertical,extraScrollbarClassName:"vertical",scrollable:e,scrollByPage:t.scrollByPage}),t.verticalHasArrows)throw new Error("horizontalHasArrows is not supported in xterm.js");this._createSlider(0,Math.floor((t.verticalScrollbarSize-t.verticalSliderSize)/2),t.verticalSliderSize,void 0)}_updateSlider(e,t){this.slider.setHeight(e),this.slider.setTop(t)}_renderDomNode(e,t){this.domNode.setWidth(t),this.domNode.setHeight(e),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(e.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,t){return t}_sliderPointerPosition(e){return e.pageY}_sliderOrthogonalPointerPosition(e){return e.pageX}_updateScrollbarSize(e){this.slider.setWidth(e)}writeScrollPosition(e,t){e.scrollTop=t}updateOptions(e){this.updateScrollbarSize(e.vertical===2?0:e.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(e.vertical),this._scrollByPage=e.scrollByPage}},qy=500,C_=50,Xy=class{constructor(e,t,s){this.timestamp=e,this.deltaX=t,this.deltaY=s,this.score=0}},wh=class{constructor(){this._capacity=5,this._memory=[],this._front=-1,this._rear=-1}isPhysicalMouseWheel(){if(this._front===-1&&this._rear===-1)return!1;let t=1,s=0,n=1,l=this._rear;do{let c=l===this._front?t:Math.pow(2,-n);if(t-=c,s+=this._memory[l].score*c,l===this._front)break;l=(this._capacity+l-1)%this._capacity,n++}while(!0);return s<=.5}acceptStandardWheelEvent(t){if(Vh){let s=ri(t.browserEvent),n=oy(s);this.accept(Date.now(),t.deltaX*n,t.deltaY*n)}else this.accept(Date.now(),t.deltaX,t.deltaY)}accept(t,s,n){let l=null,c=new Xy(t,s,n);this._front===-1&&this._rear===-1?(this._memory[0]=c,this._front=0,this._rear=0):(l=this._memory[this._rear],this._rear=(this._rear+1)%this._capacity,this._rear===this._front&&(this._front=(this._front+1)%this._capacity),this._memory[this._rear]=c),c.score=this._computeScore(c,l)}_computeScore(t,s){if(Math.abs(t.deltaX)>0&&Math.abs(t.deltaY)>0)return 1;let n=.5;if((!this._isAlmostInt(t.deltaX)||!this._isAlmostInt(t.deltaY))&&(n+=.25),s){let l=Math.abs(t.deltaX),c=Math.abs(t.deltaY),h=Math.abs(s.deltaX),f=Math.abs(s.deltaY),p=Math.max(Math.min(l,h),1),d=Math.max(Math.min(c,f),1),g=Math.max(l,h),y=Math.max(c,f);g%p===0&&y%d===0&&(n-=.5)}return Math.min(Math.max(n,0),1)}_isAlmostInt(t){return Math.abs(Math.round(t)-t)<.01}};wh.INSTANCE=new wh;var Gy=wh,Qy=class extends Gh{constructor(e,t,s){super(),this._onScroll=this._register(new ce),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new ce),this.onWillScroll=this._onWillScroll.event,this._options=Zy(t),this._scrollable=s,this._register(this._scrollable.onScroll(l=>{this._onWillScroll.fire(l),this._onDidScroll(l),this._onScroll.fire(l)}));let n={onMouseWheel:l=>this._onMouseWheel(l),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new Yy(this._scrollable,this._options,n)),this._horizontalScrollbar=this._register(new Vy(this._scrollable,this._options,n)),this._domNode=document.createElement("div"),this._domNode.className="xterm-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.appendChild(e),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=so(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=so(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=so(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,l=>this._onMouseOver(l)),this.onmouseleave(this._listenOnDomNode,l=>this._onMouseLeave(l)),this._hideTimeout=this._register(new qh),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}get options(){return this._options}dispose(){this._mouseWheelToDispose=ks(this._mouseWheelToDispose),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(e){this._verticalScrollbar.delegatePointerDown(e)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(e){this._scrollable.setScrollDimensions(e,!1)}updateClassName(e){this._options.className=e,ii&&(this._options.className+=" mac"),this._domNode.className="xterm-scrollable-element "+this._options.className}updateOptions(e){typeof e.handleMouseWheel<"u"&&(this._options.handleMouseWheel=e.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),typeof e.mouseWheelScrollSensitivity<"u"&&(this._options.mouseWheelScrollSensitivity=e.mouseWheelScrollSensitivity),typeof e.fastScrollSensitivity<"u"&&(this._options.fastScrollSensitivity=e.fastScrollSensitivity),typeof e.scrollPredominantAxis<"u"&&(this._options.scrollPredominantAxis=e.scrollPredominantAxis),typeof e.horizontal<"u"&&(this._options.horizontal=e.horizontal),typeof e.vertical<"u"&&(this._options.vertical=e.vertical),typeof e.horizontalScrollbarSize<"u"&&(this._options.horizontalScrollbarSize=e.horizontalScrollbarSize),typeof e.verticalScrollbarSize<"u"&&(this._options.verticalScrollbarSize=e.verticalScrollbarSize),typeof e.scrollByPage<"u"&&(this._options.scrollByPage=e.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}setRevealOnScroll(e){this._revealOnScroll=e}delegateScrollFromMouseWheelEvent(e){this._onMouseWheel(new p_(e))}_setListeningToMouseWheel(e){if(this._mouseWheelToDispose.length>0!==e&&(this._mouseWheelToDispose=ks(this._mouseWheelToDispose),e)){let t=s=>{this._onMouseWheel(new p_(s))};this._mouseWheelToDispose.push(Le(this._listenOnDomNode,Et.MOUSE_WHEEL,t,{passive:!1}))}}_onMouseWheel(e){if(e.browserEvent?.defaultPrevented)return;let t=Gy.INSTANCE;t.acceptStandardWheelEvent(e);let s=!1;if(e.deltaY||e.deltaX){let l=e.deltaY*this._options.mouseWheelScrollSensitivity,c=e.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&c+l===0?c=l=0:Math.abs(l)>=Math.abs(c)?c=0:l=0),this._options.flipAxes&&([l,c]=[c,l]);let h=!ii&&e.browserEvent&&e.browserEvent.shiftKey;(this._options.scrollYToX||h)&&!c&&(c=l,l=0),e.browserEvent&&e.browserEvent.altKey&&(c=c*this._options.fastScrollSensitivity,l=l*this._options.fastScrollSensitivity);let f=this._scrollable.getFutureScrollPosition(),p={};if(l){let d=C_*l,g=f.scrollTop-(d<0?Math.floor(d):Math.ceil(d));this._verticalScrollbar.writeScrollPosition(p,g)}if(c){let d=C_*c,g=f.scrollLeft-(d<0?Math.floor(d):Math.ceil(d));this._horizontalScrollbar.writeScrollPosition(p,g)}p=this._scrollable.validateScrollPosition(p),(f.scrollLeft!==p.scrollLeft||f.scrollTop!==p.scrollTop)&&(this._options.mouseWheelSmoothScroll&&t.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(p):this._scrollable.setScrollPositionNow(p),s=!0)}let n=s;!n&&this._options.alwaysConsumeMouseWheel&&(n=!0),!n&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(n=!0),n&&(e.preventDefault(),e.stopPropagation())}_onDidScroll(e){this._shouldRender=this._horizontalScrollbar.onDidScroll(e)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(e)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){let e=this._scrollable.getCurrentScrollPosition(),t=e.scrollTop>0,s=e.scrollLeft>0,n=s?" left":"",l=t?" top":"",c=s||t?" top-left-corner":"";this._leftShadowDomNode.setClassName(`shadow${n}`),this._topShadowDomNode.setClassName(`shadow${l}`),this._topLeftShadowDomNode.setClassName(`shadow${c}${l}${n}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(e){this._mouseIsOver=!1,this._hide()}_onMouseOver(e){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){!this._mouseIsOver&&!this._isDragging&&(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){!this._mouseIsOver&&!this._isDragging&&this._hideTimeout.cancelAndSet(()=>this._hide(),qy)}},Jy=class extends Qy{constructor(e,t,s){super(e,t,s)}setScrollPosition(e){e.reuseAnimation?this._scrollable.setScrollPositionSmooth(e,e.reuseAnimation):this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}};function Zy(e){let t={lazyRender:typeof e.lazyRender<"u"?e.lazyRender:!1,className:typeof e.className<"u"?e.className:"",useShadows:typeof e.useShadows<"u"?e.useShadows:!0,handleMouseWheel:typeof e.handleMouseWheel<"u"?e.handleMouseWheel:!0,flipAxes:typeof e.flipAxes<"u"?e.flipAxes:!1,consumeMouseWheelIfScrollbarIsNeeded:typeof e.consumeMouseWheelIfScrollbarIsNeeded<"u"?e.consumeMouseWheelIfScrollbarIsNeeded:!1,alwaysConsumeMouseWheel:typeof e.alwaysConsumeMouseWheel<"u"?e.alwaysConsumeMouseWheel:!1,scrollYToX:typeof e.scrollYToX<"u"?e.scrollYToX:!1,mouseWheelScrollSensitivity:typeof e.mouseWheelScrollSensitivity<"u"?e.mouseWheelScrollSensitivity:1,fastScrollSensitivity:typeof e.fastScrollSensitivity<"u"?e.fastScrollSensitivity:5,scrollPredominantAxis:typeof e.scrollPredominantAxis<"u"?e.scrollPredominantAxis:!0,mouseWheelSmoothScroll:typeof e.mouseWheelSmoothScroll<"u"?e.mouseWheelSmoothScroll:!0,arrowSize:typeof e.arrowSize<"u"?e.arrowSize:11,listenOnDomNode:typeof e.listenOnDomNode<"u"?e.listenOnDomNode:null,horizontal:typeof e.horizontal<"u"?e.horizontal:1,horizontalScrollbarSize:typeof e.horizontalScrollbarSize<"u"?e.horizontalScrollbarSize:10,horizontalSliderSize:typeof e.horizontalSliderSize<"u"?e.horizontalSliderSize:0,horizontalHasArrows:typeof e.horizontalHasArrows<"u"?e.horizontalHasArrows:!1,vertical:typeof e.vertical<"u"?e.vertical:1,verticalScrollbarSize:typeof e.verticalScrollbarSize<"u"?e.verticalScrollbarSize:10,verticalHasArrows:typeof e.verticalHasArrows<"u"?e.verticalHasArrows:!1,verticalSliderSize:typeof e.verticalSliderSize<"u"?e.verticalSliderSize:0,scrollByPage:typeof e.scrollByPage<"u"?e.scrollByPage:!1};return t.horizontalSliderSize=typeof e.horizontalSliderSize<"u"?e.horizontalSliderSize:t.horizontalScrollbarSize,t.verticalSliderSize=typeof e.verticalSliderSize<"u"?e.verticalSliderSize:t.verticalScrollbarSize,ii&&(t.className+=" mac"),t}var Ch=class extends Ie{constructor(e,t,s,n,l,c,h,f){super(),this._bufferService=s,this._optionsService=h,this._renderService=f,this._onRequestScrollLines=this._register(new ce),this.onRequestScrollLines=this._onRequestScrollLines.event,this._isSyncing=!1,this._isHandlingScroll=!1,this._suppressOnScrollHandler=!1;let p=this._register(new Fy({forceIntegerValues:!1,smoothScrollDuration:this._optionsService.rawOptions.smoothScrollDuration,scheduleAtNextAnimationFrame:d=>Xh(n.window,d)}));this._register(this._optionsService.onSpecificOptionChange("smoothScrollDuration",()=>{p.setSmoothScrollDuration(this._optionsService.rawOptions.smoothScrollDuration)})),this._scrollableElement=this._register(new Jy(t,{vertical:1,horizontal:2,useShadows:!1,mouseWheelSmoothScroll:!0,...this._getChangeOptions()},p)),this._register(this._optionsService.onMultipleOptionChange(["scrollSensitivity","fastScrollSensitivity","overviewRuler"],()=>this._scrollableElement.updateOptions(this._getChangeOptions()))),this._register(l.onProtocolChange(d=>{this._scrollableElement.updateOptions({handleMouseWheel:!(d&16)})})),this._scrollableElement.setScrollDimensions({height:0,scrollHeight:0}),this._register(Bt.runAndSubscribe(c.onChangeColors,()=>{this._scrollableElement.getDomNode().style.backgroundColor=c.colors.background.css})),e.appendChild(this._scrollableElement.getDomNode()),this._register(rt(()=>this._scrollableElement.getDomNode().remove())),this._styleElement=n.mainDocument.createElement("style"),t.appendChild(this._styleElement),this._register(rt(()=>this._styleElement.remove())),this._register(Bt.runAndSubscribe(c.onChangeColors,()=>{this._styleElement.textContent=[".xterm .xterm-scrollable-element > .scrollbar > .slider {",` background: ${c.colors.scrollbarSliderBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider:hover {",` background: ${c.colors.scrollbarSliderHoverBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider.active {",` background: ${c.colors.scrollbarSliderActiveBackground.css};`,"}"].join(`
|
|
71
|
+
`)})),this._register(this._bufferService.onResize(()=>this.queueSync())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._latestYDisp=void 0,this.queueSync()})),this._register(this._bufferService.onScroll(()=>this._sync())),this._register(this._scrollableElement.onScroll(d=>this._handleScroll(d)))}scrollLines(e){let t=this._scrollableElement.getScrollPosition();this._scrollableElement.setScrollPosition({reuseAnimation:!0,scrollTop:t.scrollTop+e*this._renderService.dimensions.css.cell.height})}scrollToLine(e,t){t&&(this._latestYDisp=e),this._scrollableElement.setScrollPosition({reuseAnimation:!t,scrollTop:e*this._renderService.dimensions.css.cell.height})}_getChangeOptions(){return{mouseWheelScrollSensitivity:this._optionsService.rawOptions.scrollSensitivity,fastScrollSensitivity:this._optionsService.rawOptions.fastScrollSensitivity,verticalScrollbarSize:this._optionsService.rawOptions.overviewRuler?.width||14}}queueSync(e){e!==void 0&&(this._latestYDisp=e),this._queuedAnimationFrame===void 0&&(this._queuedAnimationFrame=this._renderService.addRefreshCallback(()=>{this._queuedAnimationFrame=void 0,this._sync(this._latestYDisp)}))}_sync(e=this._bufferService.buffer.ydisp){!this._renderService||this._isSyncing||(this._isSyncing=!0,this._suppressOnScrollHandler=!0,this._scrollableElement.setScrollDimensions({height:this._renderService.dimensions.css.canvas.height,scrollHeight:this._renderService.dimensions.css.cell.height*this._bufferService.buffer.lines.length}),this._suppressOnScrollHandler=!1,e!==this._latestYDisp&&this._scrollableElement.setScrollPosition({scrollTop:e*this._renderService.dimensions.css.cell.height}),this._isSyncing=!1)}_handleScroll(e){if(!this._renderService||this._isHandlingScroll||this._suppressOnScrollHandler)return;this._isHandlingScroll=!0;let t=Math.round(e.scrollTop/this._renderService.dimensions.css.cell.height),s=t-this._bufferService.buffer.ydisp;s!==0&&(this._latestYDisp=t,this._onRequestScrollLines.fire(s)),this._isHandlingScroll=!1}};Ch=ut([pe(2,Vt),pe(3,yi),pe(4,mp),pe(5,nn),pe(6,Yt),pe(7,Si)],Ch);var kh=class extends Ie{constructor(e,t,s,n,l){super(),this._screenElement=e,this._bufferService=t,this._coreBrowserService=s,this._decorationService=n,this._renderService=l,this._decorationElements=new Map,this._altBufferIsActive=!1,this._dimensionsChanged=!1,this._container=document.createElement("div"),this._container.classList.add("xterm-decoration-container"),this._screenElement.appendChild(this._container),this._register(this._renderService.onRenderedViewportChange(()=>this._doRefreshDecorations())),this._register(this._renderService.onDimensionsChange(()=>{this._dimensionsChanged=!0,this._queueRefresh()})),this._register(this._coreBrowserService.onDprChange(()=>this._queueRefresh())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._altBufferIsActive=this._bufferService.buffer===this._bufferService.buffers.alt})),this._register(this._decorationService.onDecorationRegistered(()=>this._queueRefresh())),this._register(this._decorationService.onDecorationRemoved(c=>this._removeDecoration(c))),this._register(rt(()=>{this._container.remove(),this._decorationElements.clear()}))}_queueRefresh(){this._animationFrame===void 0&&(this._animationFrame=this._renderService.addRefreshCallback(()=>{this._doRefreshDecorations(),this._animationFrame=void 0}))}_doRefreshDecorations(){for(let e of this._decorationService.decorations)this._renderDecoration(e);this._dimensionsChanged=!1}_renderDecoration(e){this._refreshStyle(e),this._dimensionsChanged&&this._refreshXPosition(e)}_createElement(e){let t=this._coreBrowserService.mainDocument.createElement("div");t.classList.add("xterm-decoration"),t.classList.toggle("xterm-decoration-top-layer",e?.options?.layer==="top"),t.style.width=`${Math.round((e.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,t.style.height=`${(e.options.height||1)*this._renderService.dimensions.css.cell.height}px`,t.style.top=`${(e.marker.line-this._bufferService.buffers.active.ydisp)*this._renderService.dimensions.css.cell.height}px`,t.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`;let s=e.options.x??0;return s&&s>this._bufferService.cols&&(t.style.display="none"),this._refreshXPosition(e,t),t}_refreshStyle(e){let t=e.marker.line-this._bufferService.buffers.active.ydisp;if(t<0||t>=this._bufferService.rows)e.element&&(e.element.style.display="none",e.onRenderEmitter.fire(e.element));else{let s=this._decorationElements.get(e);s||(s=this._createElement(e),e.element=s,this._decorationElements.set(e,s),this._container.appendChild(s),e.onDispose(()=>{this._decorationElements.delete(e),s.remove()})),s.style.display=this._altBufferIsActive?"none":"block",this._altBufferIsActive||(s.style.width=`${Math.round((e.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,s.style.height=`${(e.options.height||1)*this._renderService.dimensions.css.cell.height}px`,s.style.top=`${t*this._renderService.dimensions.css.cell.height}px`,s.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`),e.onRenderEmitter.fire(s)}}_refreshXPosition(e,t=e.element){if(!t)return;let s=e.options.x??0;(e.options.anchor||"left")==="right"?t.style.right=s?`${s*this._renderService.dimensions.css.cell.width}px`:"":t.style.left=s?`${s*this._renderService.dimensions.css.cell.width}px`:""}_removeDecoration(e){this._decorationElements.get(e)?.remove(),this._decorationElements.delete(e),e.dispose()}};kh=ut([pe(1,Vt),pe(2,yi),pe(3,fo),pe(4,Si)],kh);var eS=class{constructor(){this._zones=[],this._zonePool=[],this._zonePoolIndex=0,this._linePadding={full:0,left:0,center:0,right:0}}get zones(){return this._zonePool.length=Math.min(this._zonePool.length,this._zones.length),this._zones}clear(){this._zones.length=0,this._zonePoolIndex=0}addDecoration(e){if(e.options.overviewRulerOptions){for(let t of this._zones)if(t.color===e.options.overviewRulerOptions.color&&t.position===e.options.overviewRulerOptions.position){if(this._lineIntersectsZone(t,e.marker.line))return;if(this._lineAdjacentToZone(t,e.marker.line,e.options.overviewRulerOptions.position)){this._addLineToZone(t,e.marker.line);return}}if(this._zonePoolIndex<this._zonePool.length){this._zonePool[this._zonePoolIndex].color=e.options.overviewRulerOptions.color,this._zonePool[this._zonePoolIndex].position=e.options.overviewRulerOptions.position,this._zonePool[this._zonePoolIndex].startBufferLine=e.marker.line,this._zonePool[this._zonePoolIndex].endBufferLine=e.marker.line,this._zones.push(this._zonePool[this._zonePoolIndex++]);return}this._zones.push({color:e.options.overviewRulerOptions.color,position:e.options.overviewRulerOptions.position,startBufferLine:e.marker.line,endBufferLine:e.marker.line}),this._zonePool.push(this._zones[this._zones.length-1]),this._zonePoolIndex++}}setPadding(e){this._linePadding=e}_lineIntersectsZone(e,t){return t>=e.startBufferLine&&t<=e.endBufferLine}_lineAdjacentToZone(e,t,s){return t>=e.startBufferLine-this._linePadding[s||"full"]&&t<=e.endBufferLine+this._linePadding[s||"full"]}_addLineToZone(e,t){e.startBufferLine=Math.min(e.startBufferLine,t),e.endBufferLine=Math.max(e.endBufferLine,t)}},Zr={full:0,left:0,center:0,right:0},Yi={full:0,left:0,center:0,right:0},Kn={full:0,left:0,center:0,right:0},Wl=class extends Ie{constructor(e,t,s,n,l,c,h,f){super(),this._viewportElement=e,this._screenElement=t,this._bufferService=s,this._decorationService=n,this._renderService=l,this._optionsService=c,this._themeService=h,this._coreBrowserService=f,this._colorZoneStore=new eS,this._shouldUpdateDimensions=!0,this._shouldUpdateAnchor=!0,this._lastKnownBufferLength=0,this._canvas=this._coreBrowserService.mainDocument.createElement("canvas"),this._canvas.classList.add("xterm-decoration-overview-ruler"),this._refreshCanvasDimensions(),this._viewportElement.parentElement?.insertBefore(this._canvas,this._viewportElement),this._register(rt(()=>this._canvas?.remove()));let p=this._canvas.getContext("2d");if(p)this._ctx=p;else throw new Error("Ctx cannot be null");this._register(this._decorationService.onDecorationRegistered(()=>this._queueRefresh(void 0,!0))),this._register(this._decorationService.onDecorationRemoved(()=>this._queueRefresh(void 0,!0))),this._register(this._renderService.onRenderedViewportChange(()=>this._queueRefresh())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._canvas.style.display=this._bufferService.buffer===this._bufferService.buffers.alt?"none":"block"})),this._register(this._bufferService.onScroll(()=>{this._lastKnownBufferLength!==this._bufferService.buffers.normal.lines.length&&(this._refreshDrawHeightConstants(),this._refreshColorZonePadding())})),this._register(this._renderService.onRender(()=>{(!this._containerHeight||this._containerHeight!==this._screenElement.clientHeight)&&(this._queueRefresh(!0),this._containerHeight=this._screenElement.clientHeight)})),this._register(this._coreBrowserService.onDprChange(()=>this._queueRefresh(!0))),this._register(this._optionsService.onSpecificOptionChange("overviewRuler",()=>this._queueRefresh(!0))),this._register(this._themeService.onChangeColors(()=>this._queueRefresh())),this._queueRefresh(!0)}get _width(){return this._optionsService.options.overviewRuler?.width||0}_refreshDrawConstants(){let e=Math.floor((this._canvas.width-1)/3),t=Math.ceil((this._canvas.width-1)/3);Yi.full=this._canvas.width,Yi.left=e,Yi.center=t,Yi.right=e,this._refreshDrawHeightConstants(),Kn.full=1,Kn.left=1,Kn.center=1+Yi.left,Kn.right=1+Yi.left+Yi.center}_refreshDrawHeightConstants(){Zr.full=Math.round(2*this._coreBrowserService.dpr);let e=this._canvas.height/this._bufferService.buffer.lines.length,t=Math.round(Math.max(Math.min(e,12),6)*this._coreBrowserService.dpr);Zr.left=t,Zr.center=t,Zr.right=t}_refreshColorZonePadding(){this._colorZoneStore.setPadding({full:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Zr.full),left:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Zr.left),center:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Zr.center),right:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Zr.right)}),this._lastKnownBufferLength=this._bufferService.buffers.normal.lines.length}_refreshCanvasDimensions(){this._canvas.style.width=`${this._width}px`,this._canvas.width=Math.round(this._width*this._coreBrowserService.dpr),this._canvas.style.height=`${this._screenElement.clientHeight}px`,this._canvas.height=Math.round(this._screenElement.clientHeight*this._coreBrowserService.dpr),this._refreshDrawConstants(),this._refreshColorZonePadding()}_refreshDecorations(){this._shouldUpdateDimensions&&this._refreshCanvasDimensions(),this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height),this._colorZoneStore.clear();for(let t of this._decorationService.decorations)this._colorZoneStore.addDecoration(t);this._ctx.lineWidth=1,this._renderRulerOutline();let e=this._colorZoneStore.zones;for(let t of e)t.position!=="full"&&this._renderColorZone(t);for(let t of e)t.position==="full"&&this._renderColorZone(t);this._shouldUpdateDimensions=!1,this._shouldUpdateAnchor=!1}_renderRulerOutline(){this._ctx.fillStyle=this._themeService.colors.overviewRulerBorder.css,this._ctx.fillRect(0,0,1,this._canvas.height),this._optionsService.rawOptions.overviewRuler.showTopBorder&&this._ctx.fillRect(1,0,this._canvas.width-1,1),this._optionsService.rawOptions.overviewRuler.showBottomBorder&&this._ctx.fillRect(1,this._canvas.height-1,this._canvas.width-1,this._canvas.height)}_renderColorZone(e){this._ctx.fillStyle=e.color,this._ctx.fillRect(Kn[e.position||"full"],Math.round((this._canvas.height-1)*(e.startBufferLine/this._bufferService.buffers.active.lines.length)-Zr[e.position||"full"]/2),Yi[e.position||"full"],Math.round((this._canvas.height-1)*((e.endBufferLine-e.startBufferLine)/this._bufferService.buffers.active.lines.length)+Zr[e.position||"full"]))}_queueRefresh(e,t){this._shouldUpdateDimensions=e||this._shouldUpdateDimensions,this._shouldUpdateAnchor=t||this._shouldUpdateAnchor,this._animationFrame===void 0&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>{this._refreshDecorations(),this._animationFrame=void 0}))}};Wl=ut([pe(2,Vt),pe(3,fo),pe(4,Si),pe(5,Yt),pe(6,nn),pe(7,yi)],Wl);var G;(e=>(e.NUL="\0",e.SOH="",e.STX="",e.ETX="",e.EOT="",e.ENQ="",e.ACK="",e.BEL="\x07",e.BS="\b",e.HT=" ",e.LF=`
|
|
72
|
+
`,e.VT="\v",e.FF="\f",e.CR="\r",e.SO="",e.SI="",e.DLE="",e.DC1="",e.DC2="",e.DC3="",e.DC4="",e.NAK="",e.SYN="",e.ETB="",e.CAN="",e.EM="",e.SUB="",e.ESC="\x1B",e.FS="",e.GS="",e.RS="",e.US="",e.SP=" ",e.DEL=""))(G||={});var Dl;(e=>(e.PAD="",e.HOP="",e.BPH="",e.NBH="",e.IND="",e.NEL="
",e.SSA="",e.ESA="",e.HTS="",e.HTJ="",e.VTS="",e.PLD="",e.PLU="",e.RI="",e.SS2="",e.SS3="",e.DCS="",e.PU1="",e.PU2="",e.STS="",e.CCH="",e.MW="",e.SPA="",e.EPA="",e.SOS="",e.SGCI="",e.SCI="",e.CSI="",e.ST="",e.OSC="",e.PM="",e.APC=""))(Dl||={});var Op;(e=>e.ST=`${G.ESC}\\`)(Op||={});var bh=class{constructor(e,t,s,n,l,c){this._textarea=e,this._compositionView=t,this._bufferService=s,this._optionsService=n,this._coreService=l,this._renderService=c,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}get isComposing(){return this._isComposing}compositionstart(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")}compositionupdate(e){this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout(()=>{this._compositionPosition.end=this._textarea.value.length},0)}compositionend(){this._finalizeComposition(!0)}keydown(e){if(this._isComposing||this._isSendingComposition){if(e.keyCode===20||e.keyCode===229||e.keyCode===16||e.keyCode===17||e.keyCode===18)return!1;this._finalizeComposition(!1)}return e.keyCode===229?(this._handleAnyTextareaChanges(),!1):!0}_finalizeComposition(e){if(this._compositionView.classList.remove("active"),this._isComposing=!1,e){let t={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout(()=>{if(this._isSendingComposition){this._isSendingComposition=!1;let s;t.start+=this._dataAlreadySent.length,this._isComposing?s=this._textarea.value.substring(t.start,this._compositionPosition.start):s=this._textarea.value.substring(t.start),s.length>0&&this._coreService.triggerDataEvent(s,!0)}},0)}else{this._isSendingComposition=!1;let t=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(t,!0)}}_handleAnyTextareaChanges(){let e=this._textarea.value;setTimeout(()=>{if(!this._isComposing){let t=this._textarea.value,s=t.replace(e,"");this._dataAlreadySent=s,t.length>e.length?this._coreService.triggerDataEvent(s,!0):t.length<e.length?this._coreService.triggerDataEvent(`${G.DEL}`,!0):t.length===e.length&&t!==e&&this._coreService.triggerDataEvent(t,!0)}},0)}updateCompositionElements(e){if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){let t=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),s=this._renderService.dimensions.css.cell.height,n=this._bufferService.buffer.y*this._renderService.dimensions.css.cell.height,l=t*this._renderService.dimensions.css.cell.width;this._compositionView.style.left=l+"px",this._compositionView.style.top=n+"px",this._compositionView.style.height=s+"px",this._compositionView.style.lineHeight=s+"px",this._compositionView.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._compositionView.style.fontSize=this._optionsService.rawOptions.fontSize+"px";let c=this._compositionView.getBoundingClientRect();this._textarea.style.left=l+"px",this._textarea.style.top=n+"px",this._textarea.style.width=Math.max(c.width,1)+"px",this._textarea.style.height=Math.max(c.height,1)+"px",this._textarea.style.lineHeight=c.height+"px"}e||setTimeout(()=>this.updateCompositionElements(!0),0)}}};bh=ut([pe(2,Vt),pe(3,Yt),pe(4,xs),pe(5,Si)],bh);var Mt=0,Rt=0,Tt=0,ht=0,k_={css:"#00000000",rgba:0},mt;(e=>{function t(l,c,h,f){return f!==void 0?`#${gs(l)}${gs(c)}${gs(h)}${gs(f)}`:`#${gs(l)}${gs(c)}${gs(h)}`}e.toCss=t;function s(l,c,h,f=255){return(l<<24|c<<16|h<<8|f)>>>0}e.toRgba=s;function n(l,c,h,f){return{css:e.toCss(l,c,h,f),rgba:e.toRgba(l,c,h,f)}}e.toColor=n})(mt||={});var Ze;(e=>{function t(p,d){if(ht=(d.rgba&255)/255,ht===1)return{css:d.css,rgba:d.rgba};let g=d.rgba>>24&255,y=d.rgba>>16&255,C=d.rgba>>8&255,S=p.rgba>>24&255,v=p.rgba>>16&255,w=p.rgba>>8&255;Mt=S+Math.round((g-S)*ht),Rt=v+Math.round((y-v)*ht),Tt=w+Math.round((C-w)*ht);let E=mt.toCss(Mt,Rt,Tt),L=mt.toRgba(Mt,Rt,Tt);return{css:E,rgba:L}}e.blend=t;function s(p){return(p.rgba&255)===255}e.isOpaque=s;function n(p,d,g){let y=Bl.ensureContrastRatio(p.rgba,d.rgba,g);if(y)return mt.toColor(y>>24&255,y>>16&255,y>>8&255)}e.ensureContrastRatio=n;function l(p){let d=(p.rgba|255)>>>0;return[Mt,Rt,Tt]=Bl.toChannels(d),{css:mt.toCss(Mt,Rt,Tt),rgba:d}}e.opaque=l;function c(p,d){return ht=Math.round(d*255),[Mt,Rt,Tt]=Bl.toChannels(p.rgba),{css:mt.toCss(Mt,Rt,Tt,ht),rgba:mt.toRgba(Mt,Rt,Tt,ht)}}e.opacity=c;function h(p,d){return ht=p.rgba&255,c(p,ht*d/255)}e.multiplyOpacity=h;function f(p){return[p.rgba>>24&255,p.rgba>>16&255,p.rgba>>8&255]}e.toColorRGB=f})(Ze||={});var lt;(e=>{let t,s;try{let l=document.createElement("canvas");l.width=1,l.height=1;let c=l.getContext("2d",{willReadFrequently:!0});c&&(t=c,t.globalCompositeOperation="copy",s=t.createLinearGradient(0,0,1,1))}catch{}function n(l){if(l.match(/#[\da-f]{3,8}/i))switch(l.length){case 4:return Mt=parseInt(l.slice(1,2).repeat(2),16),Rt=parseInt(l.slice(2,3).repeat(2),16),Tt=parseInt(l.slice(3,4).repeat(2),16),mt.toColor(Mt,Rt,Tt);case 5:return Mt=parseInt(l.slice(1,2).repeat(2),16),Rt=parseInt(l.slice(2,3).repeat(2),16),Tt=parseInt(l.slice(3,4).repeat(2),16),ht=parseInt(l.slice(4,5).repeat(2),16),mt.toColor(Mt,Rt,Tt,ht);case 7:return{css:l,rgba:(parseInt(l.slice(1),16)<<8|255)>>>0};case 9:return{css:l,rgba:parseInt(l.slice(1),16)>>>0}}let c=l.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(c)return Mt=parseInt(c[1]),Rt=parseInt(c[2]),Tt=parseInt(c[3]),ht=Math.round((c[5]===void 0?1:parseFloat(c[5]))*255),mt.toColor(Mt,Rt,Tt,ht);if(!t||!s)throw new Error("css.toColor: Unsupported css format");if(t.fillStyle=s,t.fillStyle=l,typeof t.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(t.fillRect(0,0,1,1),[Mt,Rt,Tt,ht]=t.getImageData(0,0,1,1).data,ht!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:mt.toRgba(Mt,Rt,Tt,ht),css:l}}e.toColor=n})(lt||={});var Ut;(e=>{function t(n){return s(n>>16&255,n>>8&255,n&255)}e.relativeLuminance=t;function s(n,l,c){let h=n/255,f=l/255,p=c/255,d=h<=.03928?h/12.92:Math.pow((h+.055)/1.055,2.4),g=f<=.03928?f/12.92:Math.pow((f+.055)/1.055,2.4),y=p<=.03928?p/12.92:Math.pow((p+.055)/1.055,2.4);return d*.2126+g*.7152+y*.0722}e.relativeLuminance2=s})(Ut||={});var Bl;(e=>{function t(h,f){if(ht=(f&255)/255,ht===1)return f;let p=f>>24&255,d=f>>16&255,g=f>>8&255,y=h>>24&255,C=h>>16&255,S=h>>8&255;return Mt=y+Math.round((p-y)*ht),Rt=C+Math.round((d-C)*ht),Tt=S+Math.round((g-S)*ht),mt.toRgba(Mt,Rt,Tt)}e.blend=t;function s(h,f,p){let d=Ut.relativeLuminance(h>>8),g=Ut.relativeLuminance(f>>8);if(pi(d,g)<p){if(g<d){let S=n(h,f,p),v=pi(d,Ut.relativeLuminance(S>>8));if(v<p){let w=l(h,f,p),E=pi(d,Ut.relativeLuminance(w>>8));return v>E?S:w}return S}let y=l(h,f,p),C=pi(d,Ut.relativeLuminance(y>>8));if(C<p){let S=n(h,f,p),v=pi(d,Ut.relativeLuminance(S>>8));return C>v?y:S}return y}}e.ensureContrastRatio=s;function n(h,f,p){let d=h>>24&255,g=h>>16&255,y=h>>8&255,C=f>>24&255,S=f>>16&255,v=f>>8&255,w=pi(Ut.relativeLuminance2(C,S,v),Ut.relativeLuminance2(d,g,y));for(;w<p&&(C>0||S>0||v>0);)C-=Math.max(0,Math.ceil(C*.1)),S-=Math.max(0,Math.ceil(S*.1)),v-=Math.max(0,Math.ceil(v*.1)),w=pi(Ut.relativeLuminance2(C,S,v),Ut.relativeLuminance2(d,g,y));return(C<<24|S<<16|v<<8|255)>>>0}e.reduceLuminance=n;function l(h,f,p){let d=h>>24&255,g=h>>16&255,y=h>>8&255,C=f>>24&255,S=f>>16&255,v=f>>8&255,w=pi(Ut.relativeLuminance2(C,S,v),Ut.relativeLuminance2(d,g,y));for(;w<p&&(C<255||S<255||v<255);)C=Math.min(255,C+Math.ceil((255-C)*.1)),S=Math.min(255,S+Math.ceil((255-S)*.1)),v=Math.min(255,v+Math.ceil((255-v)*.1)),w=pi(Ut.relativeLuminance2(C,S,v),Ut.relativeLuminance2(d,g,y));return(C<<24|S<<16|v<<8|255)>>>0}e.increaseLuminance=l;function c(h){return[h>>24&255,h>>16&255,h>>8&255,h&255]}e.toChannels=c})(Bl||={});function gs(e){let t=e.toString(16);return t.length<2?"0"+t:t}function pi(e,t){return e<t?(t+.05)/(e+.05):(e+.05)/(t+.05)}var tS=class extends uo{constructor(e,t,s){super(),this.content=0,this.combinedData="",this.fg=e.fg,this.bg=e.bg,this.combinedData=t,this._width=s}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(e){throw new Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},Fl=class{constructor(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new Rr}register(e){let t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id}deregister(e){for(let t=0;t<this._characterJoiners.length;t++)if(this._characterJoiners[t].id===e)return this._characterJoiners.splice(t,1),!0;return!1}getJoinedCharacters(e){if(this._characterJoiners.length===0)return[];let t=this._bufferService.buffer.lines.get(e);if(!t||t.length===0)return[];let s=[],n=t.translateToString(!0),l=0,c=0,h=0,f=t.getFg(0),p=t.getBg(0);for(let d=0;d<t.getTrimmedLength();d++)if(t.loadCell(d,this._workCell),this._workCell.getWidth()!==0){if(this._workCell.fg!==f||this._workCell.bg!==p){if(d-l>1){let g=this._getJoinedRanges(n,h,c,t,l);for(let y=0;y<g.length;y++)s.push(g[y])}l=d,h=c,f=this._workCell.fg,p=this._workCell.bg}c+=this._workCell.getChars().length||Gi.length}if(this._bufferService.cols-l>1){let d=this._getJoinedRanges(n,h,c,t,l);for(let g=0;g<d.length;g++)s.push(d[g])}return s}_getJoinedRanges(e,t,s,n,l){let c=e.substring(t,s),h=[];try{h=this._characterJoiners[0].handler(c)}catch(f){console.error(f)}for(let f=1;f<this._characterJoiners.length;f++)try{let p=this._characterJoiners[f].handler(c);for(let d=0;d<p.length;d++)Fl._mergeRanges(h,p[d])}catch(p){console.error(p)}return this._stringRangesToCellRanges(h,n,l),h}_stringRangesToCellRanges(e,t,s){let n=0,l=!1,c=0,h=e[n];if(h){for(let f=s;f<this._bufferService.cols;f++){let p=t.getWidth(f),d=t.getString(f).length||Gi.length;if(p!==0){if(!l&&h[0]<=c&&(h[0]=f,l=!0),h[1]<=c){if(h[1]=f,h=e[++n],!h)break;h[0]<=c?(h[0]=f,l=!0):l=!1}c+=d}}h&&(h[1]=this._bufferService.cols)}}static _mergeRanges(e,t){let s=!1;for(let n=0;n<e.length;n++){let l=e[n];if(s){if(t[1]<=l[0])return e[n-1][1]=t[1],e;if(t[1]<=l[1])return e[n-1][1]=Math.max(t[1],l[1]),e.splice(n,1),e;e.splice(n,1),n--}else{if(t[1]<=l[0])return e.splice(n,0,t),e;if(t[1]<=l[1])return l[0]=Math.min(t[0],l[0]),e;t[0]<l[1]&&(l[0]=Math.min(t[0],l[0]),s=!0);continue}}return s?e[e.length-1][1]=t[1]:e.push(t),e}};Fl=ut([pe(0,Vt)],Fl);function rS(e){return 57508<=e&&e<=57558}function iS(e){return 9472<=e&&e<=9631}function sS(e){return rS(e)||iS(e)}function nS(){return{css:{canvas:xl(),cell:xl()},device:{canvas:xl(),cell:xl(),char:{width:0,height:0,left:0,top:0}}}}function xl(){return{width:0,height:0}}var xh=class{constructor(e,t,s,n,l,c,h){this._document=e,this._characterJoinerService=t,this._optionsService=s,this._coreBrowserService=n,this._coreService=l,this._decorationService=c,this._themeService=h,this._workCell=new Rr,this._columnSelectMode=!1,this.defaultSpacing=0}handleSelectionChanged(e,t,s){this._selectionStart=e,this._selectionEnd=t,this._columnSelectMode=s}createRow(e,t,s,n,l,c,h,f,p,d,g){let y=[],C=this._characterJoinerService.getJoinedCharacters(t),S=this._themeService.colors,v=e.getNoBgTrimmedLength();s&&v<c+1&&(v=c+1);let w,E=0,L="",j=0,$=0,W=0,Q=0,K=!1,Z=0,fe=!1,oe=0,he=0,V=[],D=d!==-1&&g!==-1;for(let b=0;b<v;b++){e.loadCell(b,this._workCell);let I=this._workCell.getWidth();if(I===0)continue;let N=!1,O=b>=he,Y=b,B=this._workCell;if(C.length>0&&b===C[0][0]&&O){let be=C.shift(),et=this._isCellInSelection(be[0],t);for(j=be[0]+1;j<be[1];j++)O&&=et===this._isCellInSelection(j,t);O&&=!s||c<be[0]||c>=be[1],O?(N=!0,B=new tS(this._workCell,e.translateToString(!0,be[0],be[1]),be[1]-be[0]),Y=be[1]-1,I=B.getWidth()):he=be[1]}let F=this._isCellInSelection(b,t),J=s&&b===c,R=D&&b>=d&&b<=g,U=!1;this._decorationService.forEachDecorationAtCell(b,t,void 0,be=>{U=!0});let le=B.getChars()||Gi;if(le===" "&&(B.isUnderline()||B.isOverline())&&(le=" "),oe=I*f-p.get(le,B.isBold(),B.isItalic()),!w)w=this._document.createElement("span");else if(E&&(F&&fe||!F&&!fe&&B.bg===$)&&(F&&fe&&S.selectionForeground||B.fg===W)&&B.extended.ext===Q&&R===K&&oe===Z&&!J&&!N&&!U&&O){B.isInvisible()?L+=Gi:L+=le,E++;continue}else E&&(w.textContent=L),w=this._document.createElement("span"),E=0,L="";if($=B.bg,W=B.fg,Q=B.extended.ext,K=R,Z=oe,fe=F,N&&c>=b&&c<=Y&&(c=b),!this._coreService.isCursorHidden&&J&&this._coreService.isCursorInitialized){if(V.push("xterm-cursor"),this._coreBrowserService.isFocused)h&&V.push("xterm-cursor-blink"),V.push(n==="bar"?"xterm-cursor-bar":n==="underline"?"xterm-cursor-underline":"xterm-cursor-block");else if(l)switch(l){case"outline":V.push("xterm-cursor-outline");break;case"block":V.push("xterm-cursor-block");break;case"bar":V.push("xterm-cursor-bar");break;case"underline":V.push("xterm-cursor-underline");break}}if(B.isBold()&&V.push("xterm-bold"),B.isItalic()&&V.push("xterm-italic"),B.isDim()&&V.push("xterm-dim"),B.isInvisible()?L=Gi:L=B.getChars()||Gi,B.isUnderline()&&(V.push(`xterm-underline-${B.extended.underlineStyle}`),L===" "&&(L=" "),!B.isUnderlineColorDefault()))if(B.isUnderlineColorRGB())w.style.textDecorationColor=`rgb(${uo.toColorRGB(B.getUnderlineColor()).join(",")})`;else{let be=B.getUnderlineColor();this._optionsService.rawOptions.drawBoldTextInBrightColors&&B.isBold()&&be<8&&(be+=8),w.style.textDecorationColor=S.ansi[be].css}B.isOverline()&&(V.push("xterm-overline"),L===" "&&(L=" ")),B.isStrikethrough()&&V.push("xterm-strikethrough"),R&&(w.style.textDecoration="underline");let ie=B.getFgColor(),ue=B.getFgColorMode(),_e=B.getBgColor(),Re=B.getBgColorMode(),ge=!!B.isInverse();if(ge){let be=ie;ie=_e,_e=be;let et=ue;ue=Re,Re=et}let ke,Ae,Ye=!1;this._decorationService.forEachDecorationAtCell(b,t,void 0,be=>{be.options.layer!=="top"&&Ye||(be.backgroundColorRGB&&(Re=50331648,_e=be.backgroundColorRGB.rgba>>8&16777215,ke=be.backgroundColorRGB),be.foregroundColorRGB&&(ue=50331648,ie=be.foregroundColorRGB.rgba>>8&16777215,Ae=be.foregroundColorRGB),Ye=be.options.layer==="top")}),!Ye&&F&&(ke=this._coreBrowserService.isFocused?S.selectionBackgroundOpaque:S.selectionInactiveBackgroundOpaque,_e=ke.rgba>>8&16777215,Re=50331648,Ye=!0,S.selectionForeground&&(ue=50331648,ie=S.selectionForeground.rgba>>8&16777215,Ae=S.selectionForeground)),Ye&&V.push("xterm-decoration-top");let Fe;switch(Re){case 16777216:case 33554432:Fe=S.ansi[_e],V.push(`xterm-bg-${_e}`);break;case 50331648:Fe=mt.toColor(_e>>16,_e>>8&255,_e&255),this._addStyle(w,`background-color:#${b_((_e>>>0).toString(16),"0",6)}`);break;case 0:default:ge?(Fe=S.foreground,V.push("xterm-bg-257")):Fe=S.background}switch(ke||B.isDim()&&(ke=Ze.multiplyOpacity(Fe,.5)),ue){case 16777216:case 33554432:B.isBold()&&ie<8&&this._optionsService.rawOptions.drawBoldTextInBrightColors&&(ie+=8),this._applyMinimumContrast(w,Fe,S.ansi[ie],B,ke,void 0)||V.push(`xterm-fg-${ie}`);break;case 50331648:let be=mt.toColor(ie>>16&255,ie>>8&255,ie&255);this._applyMinimumContrast(w,Fe,be,B,ke,Ae)||this._addStyle(w,`color:#${b_(ie.toString(16),"0",6)}`);break;case 0:default:this._applyMinimumContrast(w,Fe,S.foreground,B,ke,Ae)||ge&&V.push("xterm-fg-257")}V.length&&(w.className=V.join(" "),V.length=0),!J&&!N&&!U&&O?E++:w.textContent=L,oe!==this.defaultSpacing&&(w.style.letterSpacing=`${oe}px`),y.push(w),b=Y}return w&&E&&(w.textContent=L),y}_applyMinimumContrast(e,t,s,n,l,c){if(this._optionsService.rawOptions.minimumContrastRatio===1||sS(n.getCode()))return!1;let h=this._getContrastCache(n),f;if(!l&&!c&&(f=h.getColor(t.rgba,s.rgba)),f===void 0){let p=this._optionsService.rawOptions.minimumContrastRatio/(n.isDim()?2:1);f=Ze.ensureContrastRatio(l||t,c||s,p),h.setColor((l||t).rgba,(c||s).rgba,f??null)}return f?(this._addStyle(e,`color:${f.css}`),!0):!1}_getContrastCache(e){return e.isDim()?this._themeService.colors.halfContrastCache:this._themeService.colors.contrastCache}_addStyle(e,t){e.setAttribute("style",`${e.getAttribute("style")||""}${t};`)}_isCellInSelection(e,t){let s=this._selectionStart,n=this._selectionEnd;return!s||!n?!1:this._columnSelectMode?s[0]<=n[0]?e>=s[0]&&t>=s[1]&&e<n[0]&&t<=n[1]:e<s[0]&&t>=s[1]&&e>=n[0]&&t<=n[1]:t>s[1]&&t<n[1]||s[1]===n[1]&&t===s[1]&&e>=s[0]&&e<n[0]||s[1]<n[1]&&t===n[1]&&e<n[0]||s[1]<n[1]&&t===s[1]&&e>=s[0]}};xh=ut([pe(1,yp),pe(2,Yt),pe(3,yi),pe(4,xs),pe(5,fo),pe(6,nn)],xh);function b_(e,t,s){for(;e.length<s;)e=t+e;return e}var oS=class{constructor(e,t){this._flat=new Float32Array(256),this._font="",this._fontSize=0,this._weight="normal",this._weightBold="bold",this._measureElements=[],this._container=e.createElement("div"),this._container.classList.add("xterm-width-cache-measure-container"),this._container.setAttribute("aria-hidden","true"),this._container.style.whiteSpace="pre",this._container.style.fontKerning="none";let s=e.createElement("span");s.classList.add("xterm-char-measure-element");let n=e.createElement("span");n.classList.add("xterm-char-measure-element"),n.style.fontWeight="bold";let l=e.createElement("span");l.classList.add("xterm-char-measure-element"),l.style.fontStyle="italic";let c=e.createElement("span");c.classList.add("xterm-char-measure-element"),c.style.fontWeight="bold",c.style.fontStyle="italic",this._measureElements=[s,n,l,c],this._container.appendChild(s),this._container.appendChild(n),this._container.appendChild(l),this._container.appendChild(c),t.appendChild(this._container),this.clear()}dispose(){this._container.remove(),this._measureElements.length=0,this._holey=void 0}clear(){this._flat.fill(-9999),this._holey=new Map}setFont(e,t,s,n){e===this._font&&t===this._fontSize&&s===this._weight&&n===this._weightBold||(this._font=e,this._fontSize=t,this._weight=s,this._weightBold=n,this._container.style.fontFamily=this._font,this._container.style.fontSize=`${this._fontSize}px`,this._measureElements[0].style.fontWeight=`${s}`,this._measureElements[1].style.fontWeight=`${n}`,this._measureElements[2].style.fontWeight=`${s}`,this._measureElements[3].style.fontWeight=`${n}`,this.clear())}get(e,t,s){let n=0;if(!t&&!s&&e.length===1&&(n=e.charCodeAt(0))<256){if(this._flat[n]!==-9999)return this._flat[n];let h=this._measure(e,0);return h>0&&(this._flat[n]=h),h}let l=e;t&&(l+="B"),s&&(l+="I");let c=this._holey.get(l);if(c===void 0){let h=0;t&&(h|=1),s&&(h|=2),c=this._measure(e,h),c>0&&this._holey.set(l,c)}return c}_measure(e,t){let s=this._measureElements[t];return s.textContent=e.repeat(32),s.offsetWidth/32}},lS=class{constructor(){this.clear()}clear(){this.hasSelection=!1,this.columnSelectMode=!1,this.viewportStartRow=0,this.viewportEndRow=0,this.viewportCappedStartRow=0,this.viewportCappedEndRow=0,this.startCol=0,this.endCol=0,this.selectionStart=void 0,this.selectionEnd=void 0}update(e,t,s,n=!1){if(this.selectionStart=t,this.selectionEnd=s,!t||!s||t[0]===s[0]&&t[1]===s[1]){this.clear();return}let l=e.buffers.active.ydisp,c=t[1]-l,h=s[1]-l,f=Math.max(c,0),p=Math.min(h,e.rows-1);if(f>=e.rows||p<0){this.clear();return}this.hasSelection=!0,this.columnSelectMode=n,this.viewportStartRow=c,this.viewportEndRow=h,this.viewportCappedStartRow=f,this.viewportCappedEndRow=p,this.startCol=t[0],this.endCol=s[0]}isCellSelected(e,t,s){return this.hasSelection?(s-=e.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?t>=this.startCol&&s>=this.viewportCappedStartRow&&t<this.endCol&&s<=this.viewportCappedEndRow:t<this.startCol&&s>=this.viewportCappedStartRow&&t>=this.endCol&&s<=this.viewportCappedEndRow:s>this.viewportStartRow&&s<this.viewportEndRow||this.viewportStartRow===this.viewportEndRow&&s===this.viewportStartRow&&t>=this.startCol&&t<this.endCol||this.viewportStartRow<this.viewportEndRow&&s===this.viewportEndRow&&t<this.endCol||this.viewportStartRow<this.viewportEndRow&&s===this.viewportStartRow&&t>=this.startCol):!1}};function aS(){return new lS}var Kc="xterm-dom-renderer-owner-",br="xterm-rows",El="xterm-fg-",x_="xterm-bg-",Un="xterm-focus",Ml="xterm-selection",cS=1,Eh=class extends Ie{constructor(e,t,s,n,l,c,h,f,p,d,g,y,C,S){super(),this._terminal=e,this._document=t,this._element=s,this._screenElement=n,this._viewportElement=l,this._helperContainer=c,this._linkifier2=h,this._charSizeService=p,this._optionsService=d,this._bufferService=g,this._coreService=y,this._coreBrowserService=C,this._themeService=S,this._terminalClass=cS++,this._rowElements=[],this._selectionRenderModel=aS(),this.onRequestRedraw=this._register(new ce).event,this._rowContainer=this._document.createElement("div"),this._rowContainer.classList.add(br),this._rowContainer.style.lineHeight="normal",this._rowContainer.setAttribute("aria-hidden","true"),this._refreshRowElements(this._bufferService.cols,this._bufferService.rows),this._selectionContainer=this._document.createElement("div"),this._selectionContainer.classList.add(Ml),this._selectionContainer.setAttribute("aria-hidden","true"),this.dimensions=nS(),this._updateDimensions(),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._themeService.onChangeColors(v=>this._injectCss(v))),this._injectCss(this._themeService.colors),this._rowFactory=f.createInstance(xh,document),this._element.classList.add(Kc+this._terminalClass),this._screenElement.appendChild(this._rowContainer),this._screenElement.appendChild(this._selectionContainer),this._register(this._linkifier2.onShowLinkUnderline(v=>this._handleLinkHover(v))),this._register(this._linkifier2.onHideLinkUnderline(v=>this._handleLinkLeave(v))),this._register(rt(()=>{this._element.classList.remove(Kc+this._terminalClass),this._rowContainer.remove(),this._selectionContainer.remove(),this._widthCache.dispose(),this._themeStyleElement.remove(),this._dimensionsStyleElement.remove()})),this._widthCache=new oS(this._document,this._helperContainer),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}_updateDimensions(){let e=this._coreBrowserService.dpr;this.dimensions.device.char.width=this._charSizeService.width*e,this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*e),this.dimensions.device.cell.width=this.dimensions.device.char.width+Math.round(this._optionsService.rawOptions.letterSpacing),this.dimensions.device.cell.height=Math.floor(this.dimensions.device.char.height*this._optionsService.rawOptions.lineHeight),this.dimensions.device.char.left=0,this.dimensions.device.char.top=0,this.dimensions.device.canvas.width=this.dimensions.device.cell.width*this._bufferService.cols,this.dimensions.device.canvas.height=this.dimensions.device.cell.height*this._bufferService.rows,this.dimensions.css.canvas.width=Math.round(this.dimensions.device.canvas.width/e),this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/e),this.dimensions.css.cell.width=this.dimensions.css.canvas.width/this._bufferService.cols,this.dimensions.css.cell.height=this.dimensions.css.canvas.height/this._bufferService.rows;for(let s of this._rowElements)s.style.width=`${this.dimensions.css.canvas.width}px`,s.style.height=`${this.dimensions.css.cell.height}px`,s.style.lineHeight=`${this.dimensions.css.cell.height}px`,s.style.overflow="hidden";this._dimensionsStyleElement||(this._dimensionsStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._dimensionsStyleElement));let t=`${this._terminalSelector} .${br} span { display: inline-block; height: 100%; vertical-align: top;}`;this._dimensionsStyleElement.textContent=t,this._selectionContainer.style.height=this._viewportElement.style.height,this._screenElement.style.width=`${this.dimensions.css.canvas.width}px`,this._screenElement.style.height=`${this.dimensions.css.canvas.height}px`}_injectCss(e){this._themeStyleElement||(this._themeStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._themeStyleElement));let t=`${this._terminalSelector} .${br} { pointer-events: none; color: ${e.foreground.css}; font-family: ${this._optionsService.rawOptions.fontFamily}; font-size: ${this._optionsService.rawOptions.fontSize}px; font-kerning: none; white-space: pre}`;t+=`${this._terminalSelector} .${br} .xterm-dim { color: ${Ze.multiplyOpacity(e.foreground,.5).css};}`,t+=`${this._terminalSelector} span:not(.xterm-bold) { font-weight: ${this._optionsService.rawOptions.fontWeight};}${this._terminalSelector} span.xterm-bold { font-weight: ${this._optionsService.rawOptions.fontWeightBold};}${this._terminalSelector} span.xterm-italic { font-style: italic;}`;let s=`blink_underline_${this._terminalClass}`,n=`blink_bar_${this._terminalClass}`,l=`blink_block_${this._terminalClass}`;t+=`@keyframes ${s} { 50% { border-bottom-style: hidden; }}`,t+=`@keyframes ${n} { 50% { box-shadow: none; }}`,t+=`@keyframes ${l} { 0% { background-color: ${e.cursor.css}; color: ${e.cursorAccent.css}; } 50% { background-color: inherit; color: ${e.cursor.css}; }}`,t+=`${this._terminalSelector} .${br}.${Un} .xterm-cursor.xterm-cursor-blink.xterm-cursor-underline { animation: ${s} 1s step-end infinite;}${this._terminalSelector} .${br}.${Un} .xterm-cursor.xterm-cursor-blink.xterm-cursor-bar { animation: ${n} 1s step-end infinite;}${this._terminalSelector} .${br}.${Un} .xterm-cursor.xterm-cursor-blink.xterm-cursor-block { animation: ${l} 1s step-end infinite;}${this._terminalSelector} .${br} .xterm-cursor.xterm-cursor-block { background-color: ${e.cursor.css}; color: ${e.cursorAccent.css};}${this._terminalSelector} .${br} .xterm-cursor.xterm-cursor-block:not(.xterm-cursor-blink) { background-color: ${e.cursor.css} !important; color: ${e.cursorAccent.css} !important;}${this._terminalSelector} .${br} .xterm-cursor.xterm-cursor-outline { outline: 1px solid ${e.cursor.css}; outline-offset: -1px;}${this._terminalSelector} .${br} .xterm-cursor.xterm-cursor-bar { box-shadow: ${this._optionsService.rawOptions.cursorWidth}px 0 0 ${e.cursor.css} inset;}${this._terminalSelector} .${br} .xterm-cursor.xterm-cursor-underline { border-bottom: 1px ${e.cursor.css}; border-bottom-style: solid; height: calc(100% - 1px);}`,t+=`${this._terminalSelector} .${Ml} { position: absolute; top: 0; left: 0; z-index: 1; pointer-events: none;}${this._terminalSelector}.focus .${Ml} div { position: absolute; background-color: ${e.selectionBackgroundOpaque.css};}${this._terminalSelector} .${Ml} div { position: absolute; background-color: ${e.selectionInactiveBackgroundOpaque.css};}`;for(let[c,h]of e.ansi.entries())t+=`${this._terminalSelector} .${El}${c} { color: ${h.css}; }${this._terminalSelector} .${El}${c}.xterm-dim { color: ${Ze.multiplyOpacity(h,.5).css}; }${this._terminalSelector} .${x_}${c} { background-color: ${h.css}; }`;t+=`${this._terminalSelector} .${El}257 { color: ${Ze.opaque(e.background).css}; }${this._terminalSelector} .${El}257.xterm-dim { color: ${Ze.multiplyOpacity(Ze.opaque(e.background),.5).css}; }${this._terminalSelector} .${x_}257 { background-color: ${e.foreground.css}; }`,this._themeStyleElement.textContent=t}_setDefaultSpacing(){let e=this.dimensions.css.cell.width-this._widthCache.get("W",!1,!1);this._rowContainer.style.letterSpacing=`${e}px`,this._rowFactory.defaultSpacing=e}handleDevicePixelRatioChange(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}_refreshRowElements(e,t){for(let s=this._rowElements.length;s<=t;s++){let n=this._document.createElement("div");this._rowContainer.appendChild(n),this._rowElements.push(n)}for(;this._rowElements.length>t;)this._rowContainer.removeChild(this._rowElements.pop())}handleResize(e,t){this._refreshRowElements(e,t),this._updateDimensions(),this.handleSelectionChanged(this._selectionRenderModel.selectionStart,this._selectionRenderModel.selectionEnd,this._selectionRenderModel.columnSelectMode)}handleCharSizeChanged(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}handleBlur(){this._rowContainer.classList.remove(Un),this.renderRows(0,this._bufferService.rows-1)}handleFocus(){this._rowContainer.classList.add(Un),this.renderRows(this._bufferService.buffer.y,this._bufferService.buffer.y)}handleSelectionChanged(e,t,s){if(this._selectionContainer.replaceChildren(),this._rowFactory.handleSelectionChanged(e,t,s),this.renderRows(0,this._bufferService.rows-1),!e||!t||(this._selectionRenderModel.update(this._terminal,e,t,s),!this._selectionRenderModel.hasSelection))return;let n=this._selectionRenderModel.viewportStartRow,l=this._selectionRenderModel.viewportEndRow,c=this._selectionRenderModel.viewportCappedStartRow,h=this._selectionRenderModel.viewportCappedEndRow,f=this._document.createDocumentFragment();if(s){let p=e[0]>t[0];f.appendChild(this._createSelectionElement(c,p?t[0]:e[0],p?e[0]:t[0],h-c+1))}else{let p=n===c?e[0]:0,d=c===l?t[0]:this._bufferService.cols;f.appendChild(this._createSelectionElement(c,p,d));let g=h-c-1;if(f.appendChild(this._createSelectionElement(c+1,0,this._bufferService.cols,g)),c!==h){let y=l===h?t[0]:this._bufferService.cols;f.appendChild(this._createSelectionElement(h,0,y))}}this._selectionContainer.appendChild(f)}_createSelectionElement(e,t,s,n=1){let l=this._document.createElement("div"),c=t*this.dimensions.css.cell.width,h=this.dimensions.css.cell.width*(s-t);return c+h>this.dimensions.css.canvas.width&&(h=this.dimensions.css.canvas.width-c),l.style.height=`${n*this.dimensions.css.cell.height}px`,l.style.top=`${e*this.dimensions.css.cell.height}px`,l.style.left=`${c}px`,l.style.width=`${h}px`,l}handleCursorMove(){}_handleOptionsChanged(){this._updateDimensions(),this._injectCss(this._themeService.colors),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}clear(){for(let e of this._rowElements)e.replaceChildren()}renderRows(e,t){let s=this._bufferService.buffer,n=s.ybase+s.y,l=Math.min(s.x,this._bufferService.cols-1),c=this._coreService.decPrivateModes.cursorBlink??this._optionsService.rawOptions.cursorBlink,h=this._coreService.decPrivateModes.cursorStyle??this._optionsService.rawOptions.cursorStyle,f=this._optionsService.rawOptions.cursorInactiveStyle;for(let p=e;p<=t;p++){let d=p+s.ydisp,g=this._rowElements[p],y=s.lines.get(d);if(!g||!y)break;g.replaceChildren(...this._rowFactory.createRow(y,d,d===n,h,f,l,c,this.dimensions.css.cell.width,this._widthCache,-1,-1))}}get _terminalSelector(){return`.${Kc}${this._terminalClass}`}_handleLinkHover(e){this._setCellUnderline(e.x1,e.x2,e.y1,e.y2,e.cols,!0)}_handleLinkLeave(e){this._setCellUnderline(e.x1,e.x2,e.y1,e.y2,e.cols,!1)}_setCellUnderline(e,t,s,n,l,c){s<0&&(e=0),n<0&&(t=0);let h=this._bufferService.rows-1;s=Math.max(Math.min(s,h),0),n=Math.max(Math.min(n,h),0),l=Math.min(l,this._bufferService.cols);let f=this._bufferService.buffer,p=f.ybase+f.y,d=Math.min(f.x,l-1),g=this._optionsService.rawOptions.cursorBlink,y=this._optionsService.rawOptions.cursorStyle,C=this._optionsService.rawOptions.cursorInactiveStyle;for(let S=s;S<=n;++S){let v=S+f.ydisp,w=this._rowElements[S],E=f.lines.get(v);if(!w||!E)break;w.replaceChildren(...this._rowFactory.createRow(E,v,v===p,y,C,d,g,this.dimensions.css.cell.width,this._widthCache,c?S===s?e:0:-1,c?(S===n?t:l)-1:-1))}}};Eh=ut([pe(7,$h),pe(8,Vl),pe(9,Yt),pe(10,Vt),pe(11,xs),pe(12,yi),pe(13,nn)],Eh);var Mh=class extends Ie{constructor(e,t,s){super(),this._optionsService=s,this.width=0,this.height=0,this._onCharSizeChange=this._register(new ce),this.onCharSizeChange=this._onCharSizeChange.event;try{this._measureStrategy=this._register(new uS(this._optionsService))}catch{this._measureStrategy=this._register(new hS(e,t,this._optionsService))}this._register(this._optionsService.onMultipleOptionChange(["fontFamily","fontSize"],()=>this.measure()))}get hasValidSize(){return this.width>0&&this.height>0}measure(){let e=this._measureStrategy.measure();(e.width!==this.width||e.height!==this.height)&&(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())}};Mh=ut([pe(2,Yt)],Mh);var zp=class extends Ie{constructor(){super(...arguments),this._result={width:0,height:0}}_validateAndSet(e,t){e!==void 0&&e>0&&t!==void 0&&t>0&&(this._result.width=e,this._result.height=t)}},hS=class extends zp{constructor(e,t,s){super(),this._document=e,this._parentElement=t,this._optionsService=s,this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W".repeat(32),this._measureElement.setAttribute("aria-hidden","true"),this._measureElement.style.whiteSpace="pre",this._measureElement.style.fontKerning="none",this._parentElement.appendChild(this._measureElement)}measure(){return this._measureElement.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._measureElement.style.fontSize=`${this._optionsService.rawOptions.fontSize}px`,this._validateAndSet(Number(this._measureElement.offsetWidth)/32,Number(this._measureElement.offsetHeight)),this._result}},uS=class extends zp{constructor(e){super(),this._optionsService=e,this._canvas=new OffscreenCanvas(100,100),this._ctx=this._canvas.getContext("2d");let t=this._ctx.measureText("W");if(!("width"in t&&"fontBoundingBoxAscent"in t&&"fontBoundingBoxDescent"in t))throw new Error("Required font metrics not supported")}measure(){this._ctx.font=`${this._optionsService.rawOptions.fontSize}px ${this._optionsService.rawOptions.fontFamily}`;let e=this._ctx.measureText("W");return this._validateAndSet(e.width,e.fontBoundingBoxAscent+e.fontBoundingBoxDescent),this._result}},dS=class extends Ie{constructor(e,t,s){super(),this._textarea=e,this._window=t,this.mainDocument=s,this._isFocused=!1,this._cachedIsFocused=void 0,this._screenDprMonitor=this._register(new fS(this._window)),this._onDprChange=this._register(new ce),this.onDprChange=this._onDprChange.event,this._onWindowChange=this._register(new ce),this.onWindowChange=this._onWindowChange.event,this._register(this.onWindowChange(n=>this._screenDprMonitor.setWindow(n))),this._register(Bt.forward(this._screenDprMonitor.onDprChange,this._onDprChange)),this._register(Le(this._textarea,"focus",()=>this._isFocused=!0)),this._register(Le(this._textarea,"blur",()=>this._isFocused=!1))}get window(){return this._window}set window(e){this._window!==e&&(this._window=e,this._onWindowChange.fire(this._window))}get dpr(){return this.window.devicePixelRatio}get isFocused(){return this._cachedIsFocused===void 0&&(this._cachedIsFocused=this._isFocused&&this._textarea.ownerDocument.hasFocus(),queueMicrotask(()=>this._cachedIsFocused=void 0)),this._cachedIsFocused}},fS=class extends Ie{constructor(e){super(),this._parentWindow=e,this._windowResizeListener=this._register(new sn),this._onDprChange=this._register(new ce),this.onDprChange=this._onDprChange.event,this._outerListener=()=>this._setDprAndFireIfDiffers(),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._updateDpr(),this._setWindowResizeListener(),this._register(rt(()=>this.clearListener()))}setWindow(e){this._parentWindow=e,this._setWindowResizeListener(),this._setDprAndFireIfDiffers()}_setWindowResizeListener(){this._windowResizeListener.value=Le(this._parentWindow,"resize",()=>this._setDprAndFireIfDiffers())}_setDprAndFireIfDiffers(){this._parentWindow.devicePixelRatio!==this._currentDevicePixelRatio&&this._onDprChange.fire(this._parentWindow.devicePixelRatio),this._updateDpr()}_updateDpr(){this._outerListener&&(this._resolutionMediaMatchList?.removeListener(this._outerListener),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._resolutionMediaMatchList=this._parentWindow.matchMedia(`screen and (resolution: ${this._parentWindow.devicePixelRatio}dppx)`),this._resolutionMediaMatchList.addListener(this._outerListener))}clearListener(){!this._resolutionMediaMatchList||!this._outerListener||(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._outerListener=void 0)}},_S=class extends Ie{constructor(){super(),this.linkProviders=[],this._register(rt(()=>this.linkProviders.length=0))}registerLinkProvider(e){return this.linkProviders.push(e),{dispose:()=>{let t=this.linkProviders.indexOf(e);t!==-1&&this.linkProviders.splice(t,1)}}}};function Qh(e,t,s){let n=s.getBoundingClientRect(),l=e.getComputedStyle(s),c=parseInt(l.getPropertyValue("padding-left")),h=parseInt(l.getPropertyValue("padding-top"));return[t.clientX-n.left-c,t.clientY-n.top-h]}function pS(e,t,s,n,l,c,h,f,p){if(!c)return;let d=Qh(e,t,s);if(d)return d[0]=Math.ceil((d[0]+(p?h/2:0))/h),d[1]=Math.ceil(d[1]/f),d[0]=Math.min(Math.max(d[0],1),n+(p?1:0)),d[1]=Math.min(Math.max(d[1],1),l),d}var Rh=class{constructor(e,t){this._renderService=e,this._charSizeService=t}getCoords(e,t,s,n,l){return pS(window,e,t,s,n,this._charSizeService.hasValidSize,this._renderService.dimensions.css.cell.width,this._renderService.dimensions.css.cell.height,l)}getMouseReportCoords(e,t){let s=Qh(window,e,t);if(this._charSizeService.hasValidSize)return s[0]=Math.min(Math.max(s[0],0),this._renderService.dimensions.css.canvas.width-1),s[1]=Math.min(Math.max(s[1],0),this._renderService.dimensions.css.canvas.height-1),{col:Math.floor(s[0]/this._renderService.dimensions.css.cell.width),row:Math.floor(s[1]/this._renderService.dimensions.css.cell.height),x:Math.floor(s[0]),y:Math.floor(s[1])}}};Rh=ut([pe(0,Si),pe(1,Vl)],Rh);var mS=class{constructor(e,t){this._renderCallback=e,this._coreBrowserService=t,this._refreshCallbacks=[]}dispose(){this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}addRefreshCallback(e){return this._refreshCallbacks.push(e),this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh())),this._animationFrame}refresh(e,t,s){this._rowCount=s,e=e!==void 0?e:0,t=t!==void 0?t:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,e):e,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,t):t,!this._animationFrame&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh()))}_innerRefresh(){if(this._animationFrame=void 0,this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0){this._runRefreshCallbacks();return}let e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(e,t),this._runRefreshCallbacks()}_runRefreshCallbacks(){for(let e of this._refreshCallbacks)e(0);this._refreshCallbacks=[]}},Wp={};E0(Wp,{getSafariVersion:()=>vS,isChromeOS:()=>$p,isFirefox:()=>Fp,isIpad:()=>yS,isIphone:()=>SS,isLegacyEdge:()=>gS,isLinux:()=>Jh,isMac:()=>Hl,isNode:()=>Yl,isSafari:()=>Hp,isWindows:()=>jp});var Yl=typeof process<"u"&&"title"in process,_o=Yl?"node":navigator.userAgent,po=Yl?"node":navigator.platform,Fp=_o.includes("Firefox"),gS=_o.includes("Edge"),Hp=/^((?!chrome|android).)*safari/i.test(_o);function vS(){if(!Hp)return 0;let e=_o.match(/Version\/(\d+)/);return e===null||e.length<2?0:parseInt(e[1])}var Hl=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(po),yS=po==="iPad",SS=po==="iPhone",jp=["Windows","Win16","Win32","WinCE"].includes(po),Jh=po.indexOf("Linux")>=0,$p=/\bCrOS\b/.test(_o),Kp=class{constructor(){this._tasks=[],this._i=0}enqueue(e){this._tasks.push(e),this._start()}flush(){for(;this._i<this._tasks.length;)this._tasks[this._i]()||this._i++;this.clear()}clear(){this._idleCallback&&(this._cancelCallback(this._idleCallback),this._idleCallback=void 0),this._i=0,this._tasks.length=0}_start(){this._idleCallback||(this._idleCallback=this._requestCallback(this._process.bind(this)))}_process(e){this._idleCallback=void 0;let t=0,s=0,n=e.timeRemaining(),l=0;for(;this._i<this._tasks.length;){if(t=performance.now(),this._tasks[this._i]()||this._i++,t=Math.max(1,performance.now()-t),s=Math.max(t,s),l=e.timeRemaining(),s*1.5>l){n-t<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(n-t))}ms`),this._start();return}n=l}this.clear()}},wS=class extends Kp{_requestCallback(e){return setTimeout(()=>e(this._createDeadline(16)))}_cancelCallback(e){clearTimeout(e)}_createDeadline(e){let t=performance.now()+e;return{timeRemaining:()=>Math.max(0,t-performance.now())}}},CS=class extends Kp{_requestCallback(e){return requestIdleCallback(e)}_cancelCallback(e){cancelIdleCallback(e)}},jl=!Yl&&"requestIdleCallback"in window?CS:wS,kS=class{constructor(){this._queue=new jl}set(e){this._queue.clear(),this._queue.enqueue(e)}flush(){this._queue.flush()}},Th=class extends Ie{constructor(e,t,s,n,l,c,h,f,p){super(),this._rowCount=e,this._optionsService=s,this._charSizeService=n,this._coreService=l,this._coreBrowserService=f,this._renderer=this._register(new sn),this._pausedResizeTask=new kS,this._observerDisposable=this._register(new sn),this._isPaused=!1,this._needsFullRefresh=!1,this._isNextRenderRedrawOnly=!0,this._needsSelectionRefresh=!1,this._canvasWidth=0,this._canvasHeight=0,this._selectionState={start:void 0,end:void 0,columnSelectMode:!1},this._onDimensionsChange=this._register(new ce),this.onDimensionsChange=this._onDimensionsChange.event,this._onRenderedViewportChange=this._register(new ce),this.onRenderedViewportChange=this._onRenderedViewportChange.event,this._onRender=this._register(new ce),this.onRender=this._onRender.event,this._onRefreshRequest=this._register(new ce),this.onRefreshRequest=this._onRefreshRequest.event,this._renderDebouncer=new mS((d,g)=>this._renderRows(d,g),this._coreBrowserService),this._register(this._renderDebouncer),this._syncOutputHandler=new bS(this._coreBrowserService,this._coreService,()=>this._fullRefresh()),this._register(rt(()=>this._syncOutputHandler.dispose())),this._register(this._coreBrowserService.onDprChange(()=>this.handleDevicePixelRatioChange())),this._register(h.onResize(()=>this._fullRefresh())),this._register(h.buffers.onBufferActivate(()=>this._renderer.value?.clear())),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._charSizeService.onCharSizeChange(()=>this.handleCharSizeChanged())),this._register(c.onDecorationRegistered(()=>this._fullRefresh())),this._register(c.onDecorationRemoved(()=>this._fullRefresh())),this._register(this._optionsService.onMultipleOptionChange(["customGlyphs","drawBoldTextInBrightColors","letterSpacing","lineHeight","fontFamily","fontSize","fontWeight","fontWeightBold","minimumContrastRatio","rescaleOverlappingGlyphs"],()=>{this.clear(),this.handleResize(h.cols,h.rows),this._fullRefresh()})),this._register(this._optionsService.onMultipleOptionChange(["cursorBlink","cursorStyle"],()=>this.refreshRows(h.buffer.y,h.buffer.y,!0))),this._register(p.onChangeColors(()=>this._fullRefresh())),this._registerIntersectionObserver(this._coreBrowserService.window,t),this._register(this._coreBrowserService.onWindowChange(d=>this._registerIntersectionObserver(d,t)))}get dimensions(){return this._renderer.value.dimensions}_registerIntersectionObserver(e,t){if("IntersectionObserver"in e){let s=new e.IntersectionObserver(n=>this._handleIntersectionChange(n[n.length-1]),{threshold:0});s.observe(t),this._observerDisposable.value=rt(()=>s.disconnect())}}_handleIntersectionChange(e){this._isPaused=e.isIntersecting===void 0?e.intersectionRatio===0:!e.isIntersecting,!this._isPaused&&!this._charSizeService.hasValidSize&&this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this._pausedResizeTask.flush(),this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)}refreshRows(e,t,s=!1){if(this._isPaused){this._needsFullRefresh=!0;return}if(this._coreService.decPrivateModes.synchronizedOutput){this._syncOutputHandler.bufferRows(e,t);return}let n=this._syncOutputHandler.flush();n&&(e=Math.min(e,n.start),t=Math.max(t,n.end)),s||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount)}_renderRows(e,t){if(this._renderer.value){if(this._coreService.decPrivateModes.synchronizedOutput){this._syncOutputHandler.bufferRows(e,t);return}e=Math.min(e,this._rowCount-1),t=Math.min(t,this._rowCount-1),this._renderer.value.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.value.handleSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRenderedViewportChange.fire({start:e,end:t}),this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0}}resize(e,t){this._rowCount=t,this._fireOnCanvasResize()}_handleOptionsChanged(){this._renderer.value&&(this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize())}_fireOnCanvasResize(){this._renderer.value&&(this._renderer.value.dimensions.css.canvas.width===this._canvasWidth&&this._renderer.value.dimensions.css.canvas.height===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.value.dimensions))}hasRenderer(){return!!this._renderer.value}setRenderer(e){this._renderer.value=e,this._renderer.value&&(this._renderer.value.onRequestRedraw(t=>this.refreshRows(t.start,t.end,!0)),this._needsSelectionRefresh=!0,this._fullRefresh())}addRefreshCallback(e){return this._renderDebouncer.addRefreshCallback(e)}_fullRefresh(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)}clearTextureAtlas(){this._renderer.value&&(this._renderer.value.clearTextureAtlas?.(),this._fullRefresh())}handleDevicePixelRatioChange(){this._charSizeService.measure(),this._renderer.value&&(this._renderer.value.handleDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1))}handleResize(e,t){this._renderer.value&&(this._isPaused?this._pausedResizeTask.set(()=>this._renderer.value?.handleResize(e,t)):this._renderer.value.handleResize(e,t),this._fullRefresh())}handleCharSizeChanged(){this._renderer.value?.handleCharSizeChanged()}handleBlur(){this._renderer.value?.handleBlur()}handleFocus(){this._renderer.value?.handleFocus()}handleSelectionChanged(e,t,s){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=s,this._renderer.value?.handleSelectionChanged(e,t,s)}handleCursorMove(){this._renderer.value?.handleCursorMove()}clear(){this._renderer.value?.clear()}};Th=ut([pe(2,Yt),pe(3,Vl),pe(4,xs),pe(5,fo),pe(6,Vt),pe(7,yi),pe(8,nn)],Th);var bS=class{constructor(e,t,s){this._coreBrowserService=e,this._coreService=t,this._onTimeout=s,this._start=0,this._end=0,this._isBuffering=!1}bufferRows(e,t){this._isBuffering?(this._start=Math.min(this._start,e),this._end=Math.max(this._end,t)):(this._start=e,this._end=t,this._isBuffering=!0),this._timeout===void 0&&(this._timeout=this._coreBrowserService.window.setTimeout(()=>{this._timeout=void 0,this._coreService.decPrivateModes.synchronizedOutput=!1,this._onTimeout()},1e3))}flush(){if(this._timeout!==void 0&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0),!this._isBuffering)return;let e={start:this._start,end:this._end};return this._isBuffering=!1,e}dispose(){this._timeout!==void 0&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0)}};function xS(e,t,s,n){let l=s.buffer.x,c=s.buffer.y;if(!s.buffer.hasScrollback)return RS(l,c,e,t,s,n)+ql(c,t,s,n)+TS(l,c,e,t,s,n);let h;if(c===t)return h=l>e?"D":"C",co(Math.abs(l-e),ao(h,n));h=c>t?"D":"C";let f=Math.abs(c-t),p=MS(c>t?e:l,s)+(f-1)*s.cols+1+ES(c>t?l:e);return co(p,ao(h,n))}function ES(e,t){return e-1}function MS(e,t){return t.cols-e}function RS(e,t,s,n,l,c){return ql(t,n,l,c).length===0?"":co(Vp(e,t,e,t-bs(t,l),!1,l).length,ao("D",c))}function ql(e,t,s,n){let l=e-bs(e,s),c=t-bs(t,s),h=Math.abs(l-c)-PS(e,t,s);return co(h,ao(Up(e,t),n))}function TS(e,t,s,n,l,c){let h;ql(t,n,l,c).length>0?h=n-bs(n,l):h=t;let f=n,p=LS(e,t,s,n,l,c);return co(Vp(e,h,s,f,p==="C",l).length,ao(p,c))}function PS(e,t,s){let n=0,l=e-bs(e,s),c=t-bs(t,s);for(let h=0;h<Math.abs(l-c);h++){let f=Up(e,t)==="A"?-1:1;s.buffer.lines.get(l+f*h)?.isWrapped&&n++}return n}function bs(e,t){let s=0,n=t.buffer.lines.get(e),l=n?.isWrapped;for(;l&&e>=0&&e<t.rows;)s++,n=t.buffer.lines.get(--e),l=n?.isWrapped;return s}function LS(e,t,s,n,l,c){let h;return ql(s,n,l,c).length>0?h=n-bs(n,l):h=t,e<s&&h<=n||e>=s&&h<n?"C":"D"}function Up(e,t){return e>t?"A":"B"}function Vp(e,t,s,n,l,c){let h=e,f=t,p="";for(;(h!==s||f!==n)&&f>=0&&f<c.buffer.lines.length;)h+=l?1:-1,l&&h>c.cols-1?(p+=c.buffer.translateBufferLineToString(f,!1,e,h),h=0,e=0,f++):!l&&h<0&&(p+=c.buffer.translateBufferLineToString(f,!1,0,e+1),h=c.cols-1,e=h,f--);return p+c.buffer.translateBufferLineToString(f,!1,e,h)}function ao(e,t){let s=t?"O":"[";return G.ESC+s+e}function co(e,t){e=Math.floor(e);let s="";for(let n=0;n<e;n++)s+=t;return s}var DS=class{constructor(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}clearSelection(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0}get finalSelectionStart(){return this.isSelectAllActive?[0,0]:!this.selectionEnd||!this.selectionStart?this.selectionStart:this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart}get finalSelectionEnd(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){let e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?e%this._bufferService.cols===0?[this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)-1]:[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}if(this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]){let e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[Math.max(e,this.selectionEnd[0]),this.selectionEnd[1]]}return this.selectionEnd}}areSelectionValuesReversed(){let e=this.selectionStart,t=this.selectionEnd;return!e||!t?!1:e[1]>t[1]||e[1]===t[1]&&e[0]>t[0]}handleTrim(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)}};function E_(e,t){if(e.start.y>e.end.y)throw new Error(`Buffer range end (${e.end.x}, ${e.end.y}) cannot be before start (${e.start.x}, ${e.start.y})`);return t*(e.end.y-e.start.y)+(e.end.x-e.start.x+1)}var Uc=50,BS=15,NS=50,IS=500,AS=" ",OS=new RegExp(AS,"g"),Ph=class extends Ie{constructor(e,t,s,n,l,c,h,f,p){super(),this._element=e,this._screenElement=t,this._linkifier=s,this._bufferService=n,this._coreService=l,this._mouseService=c,this._optionsService=h,this._renderService=f,this._coreBrowserService=p,this._dragScrollAmount=0,this._enabled=!0,this._workCell=new Rr,this._mouseDownTimeStamp=0,this._oldHasSelection=!1,this._oldSelectionStart=void 0,this._oldSelectionEnd=void 0,this._onLinuxMouseSelection=this._register(new ce),this.onLinuxMouseSelection=this._onLinuxMouseSelection.event,this._onRedrawRequest=this._register(new ce),this.onRequestRedraw=this._onRedrawRequest.event,this._onSelectionChange=this._register(new ce),this.onSelectionChange=this._onSelectionChange.event,this._onRequestScrollLines=this._register(new ce),this.onRequestScrollLines=this._onRequestScrollLines.event,this._mouseMoveListener=d=>this._handleMouseMove(d),this._mouseUpListener=d=>this._handleMouseUp(d),this._coreService.onUserInput(()=>{this.hasSelection&&this.clearSelection()}),this._trimListener=this._bufferService.buffer.lines.onTrim(d=>this._handleTrim(d)),this._register(this._bufferService.buffers.onBufferActivate(d=>this._handleBufferActivate(d))),this.enable(),this._model=new DS(this._bufferService),this._activeSelectionMode=0,this._register(rt(()=>{this._removeMouseDownListeners()})),this._register(this._bufferService.onResize(d=>{d.rowsChanged&&this.clearSelection()}))}reset(){this.clearSelection()}disable(){this.clearSelection(),this._enabled=!1}enable(){this._enabled=!0}get selectionStart(){return this._model.finalSelectionStart}get selectionEnd(){return this._model.finalSelectionEnd}get hasSelection(){let e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!e||!t?!1:e[0]!==t[0]||e[1]!==t[1]}get selectionText(){let e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return"";let s=this._bufferService.buffer,n=[];if(this._activeSelectionMode===3){if(e[0]===t[0])return"";let l=e[0]<t[0]?e[0]:t[0],c=e[0]<t[0]?t[0]:e[0];for(let h=e[1];h<=t[1];h++){let f=s.translateBufferLineToString(h,!0,l,c);n.push(f)}}else{let l=e[1]===t[1]?t[0]:void 0;n.push(s.translateBufferLineToString(e[1],!0,e[0],l));for(let c=e[1]+1;c<=t[1]-1;c++){let h=s.lines.get(c),f=s.translateBufferLineToString(c,!0);h?.isWrapped?n[n.length-1]+=f:n.push(f)}if(e[1]!==t[1]){let c=s.lines.get(t[1]),h=s.translateBufferLineToString(t[1],!0,0,t[0]);c&&c.isWrapped?n[n.length-1]+=h:n.push(h)}}return n.map(l=>l.replace(OS," ")).join(jp?`\r
|
|
73
|
+
`:`
|
|
74
|
+
`)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(e){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._refresh())),Jh&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)}_refresh(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:this._activeSelectionMode===3})}_isClickInSelection(e){let t=this._getMouseBufferCoords(e),s=this._model.finalSelectionStart,n=this._model.finalSelectionEnd;return!s||!n||!t?!1:this._areCoordsInSelection(t,s,n)}isCellInSelection(e,t){let s=this._model.finalSelectionStart,n=this._model.finalSelectionEnd;return!s||!n?!1:this._areCoordsInSelection([e,t],s,n)}_areCoordsInSelection(e,t,s){return e[1]>t[1]&&e[1]<s[1]||t[1]===s[1]&&e[1]===t[1]&&e[0]>=t[0]&&e[0]<s[0]||t[1]<s[1]&&e[1]===s[1]&&e[0]<s[0]||t[1]<s[1]&&e[1]===t[1]&&e[0]>=t[0]}_selectWordAtCursor(e,t){let s=this._linkifier.currentLink?.link?.range;if(s)return this._model.selectionStart=[s.start.x-1,s.start.y-1],this._model.selectionStartLength=E_(s,this._bufferService.cols),this._model.selectionEnd=void 0,!0;let n=this._getMouseBufferCoords(e);return n?(this._selectWordAt(n,t),this._model.selectionEnd=void 0,!0):!1}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()}_handleTrim(e){this._model.handleTrim(e)&&this.refresh()}_getMouseBufferCoords(e){let t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t}_getMouseEventScrollAmount(e){let t=Qh(this._coreBrowserService.window,e,this._screenElement)[1],s=this._renderService.dimensions.css.canvas.height;return t>=0&&t<=s?0:(t>s&&(t-=s),t=Math.min(Math.max(t,-Uc),Uc),t/=Uc,t/Math.abs(t)+Math.round(t*(BS-1)))}shouldForceSelection(e){return Hl?e.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:e.shiftKey}handleMouseDown(e){if(this._mouseDownTimeStamp=e.timeStamp,!(e.button===2&&this.hasSelection)&&e.button===0){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._handleIncrementalClick(e):e.detail===1?this._handleSingleClick(e):e.detail===2?this._handleDoubleClick(e):e.detail===3&&this._handleTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}}_addMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=this._coreBrowserService.window.setInterval(()=>this._dragScroll(),NS)}_removeMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),this._coreBrowserService.window.clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0}_handleIncrementalClick(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))}_handleSingleClick(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),!this._model.selectionStart)return;this._model.selectionEnd=void 0;let t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&t.hasWidth(this._model.selectionStart[0])===0&&this._model.selectionStart[0]++}_handleDoubleClick(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(e){let t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))}shouldColumnSelect(e){return e.altKey&&!(Hl&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(e){if(e.stopImmediatePropagation(),!this._model.selectionStart)return;let t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),!this._model.selectionEnd){this.refresh(!0);return}this._activeSelectionMode===2?this._model.selectionEnd[1]<this._model.selectionStart[1]?this._model.selectionEnd[0]=0:this._model.selectionEnd[0]=this._bufferService.cols:this._activeSelectionMode===1&&this._selectToWordAt(this._model.selectionEnd),this._dragScrollAmount=this._getMouseEventScrollAmount(e),this._activeSelectionMode!==3&&(this._dragScrollAmount>0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));let s=this._bufferService.buffer;if(this._model.selectionEnd[1]<s.lines.length){let n=s.lines.get(this._model.selectionEnd[1]);n&&n.hasWidth(this._model.selectionEnd[0])===0&&this._model.selectionEnd[0]<this._bufferService.cols&&this._model.selectionEnd[0]++}(!t||t[0]!==this._model.selectionEnd[0]||t[1]!==this._model.selectionEnd[1])&&this.refresh(!0)}_dragScroll(){if(!(!this._model.selectionEnd||!this._model.selectionStart)&&this._dragScrollAmount){this._onRequestScrollLines.fire({amount:this._dragScrollAmount,suppressScrollEvent:!1});let e=this._bufferService.buffer;this._dragScrollAmount>0?(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}}_handleMouseUp(e){let t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<IS&&e.altKey&&this._optionsService.rawOptions.altClickMovesCursor){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){let s=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(s&&s[0]!==void 0&&s[1]!==void 0){let n=xS(s[0]-1,s[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(n,!0)}}}else this._fireEventIfSelectionChanged()}_fireEventIfSelectionChanged(){let e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,s=!!e&&!!t&&(e[0]!==t[0]||e[1]!==t[1]);if(!s){this._oldHasSelection&&this._fireOnSelectionChange(e,t,s);return}!e||!t||(!this._oldSelectionStart||!this._oldSelectionEnd||e[0]!==this._oldSelectionStart[0]||e[1]!==this._oldSelectionStart[1]||t[0]!==this._oldSelectionEnd[0]||t[1]!==this._oldSelectionEnd[1])&&this._fireOnSelectionChange(e,t,s)}_fireOnSelectionChange(e,t,s){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=s,this._onSelectionChange.fire()}_handleBufferActivate(e){this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim(t=>this._handleTrim(t))}_convertViewportColToCharacterIndex(e,t){let s=t;for(let n=0;t>=n;n++){let l=e.loadCell(n,this._workCell).getChars().length;this._workCell.getWidth()===0?s--:l>1&&t!==n&&(s+=l-1)}return s}setSelection(e,t,s){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=s,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(e,t,s=!0,n=!0){if(e[0]>=this._bufferService.cols)return;let l=this._bufferService.buffer,c=l.lines.get(e[1]);if(!c)return;let h=l.translateBufferLineToString(e[1],!1),f=this._convertViewportColToCharacterIndex(c,e[0]),p=f,d=e[0]-f,g=0,y=0,C=0,S=0;if(h.charAt(f)===" "){for(;f>0&&h.charAt(f-1)===" ";)f--;for(;p<h.length&&h.charAt(p+1)===" ";)p++}else{let E=e[0],L=e[0];c.getWidth(E)===0&&(g++,E--),c.getWidth(L)===2&&(y++,L++);let j=c.getString(L).length;for(j>1&&(S+=j-1,p+=j-1);E>0&&f>0&&!this._isCharWordSeparator(c.loadCell(E-1,this._workCell));){c.loadCell(E-1,this._workCell);let $=this._workCell.getChars().length;this._workCell.getWidth()===0?(g++,E--):$>1&&(C+=$-1,f-=$-1),f--,E--}for(;L<c.length&&p+1<h.length&&!this._isCharWordSeparator(c.loadCell(L+1,this._workCell));){c.loadCell(L+1,this._workCell);let $=this._workCell.getChars().length;this._workCell.getWidth()===2?(y++,L++):$>1&&(S+=$-1,p+=$-1),p++,L++}}p++;let v=f+d-g+C,w=Math.min(this._bufferService.cols,p-f+g+y-C-S);if(!(!t&&h.slice(f,p).trim()==="")){if(s&&v===0&&c.getCodePoint(0)!==32){let E=l.lines.get(e[1]-1);if(E&&c.isWrapped&&E.getCodePoint(this._bufferService.cols-1)!==32){let L=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(L){let j=this._bufferService.cols-L.start;v-=j,w+=j}}}if(n&&v+w===this._bufferService.cols&&c.getCodePoint(this._bufferService.cols-1)!==32){let E=l.lines.get(e[1]+1);if(E?.isWrapped&&E.getCodePoint(0)!==32){let L=this._getWordAt([0,e[1]+1],!1,!1,!0);L&&(w+=L.length)}}return{start:v,length:w}}}_selectWordAt(e,t){let s=this._getWordAt(e,t);if(s){for(;s.start<0;)s.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[s.start,e[1]],this._model.selectionStartLength=s.length}}_selectToWordAt(e){let t=this._getWordAt(e,!0);if(t){let s=e[1];for(;t.start<0;)t.start+=this._bufferService.cols,s--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,s++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,s]}}_isCharWordSeparator(e){return e.getWidth()===0?!1:this._optionsService.rawOptions.wordSeparator.indexOf(e.getChars())>=0}_selectLineAt(e){let t=this._bufferService.buffer.getWrappedRangeForLine(e),s={start:{x:0,y:t.first},end:{x:this._bufferService.cols-1,y:t.last}};this._model.selectionStart=[0,t.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=E_(s,this._bufferService.cols)}};Ph=ut([pe(3,Vt),pe(4,xs),pe(5,Kh),pe(6,Yt),pe(7,Si),pe(8,yi)],Ph);var M_=class{constructor(){this._data={}}set(e,t,s){this._data[e]||(this._data[e]={}),this._data[e][t]=s}get(e,t){return this._data[e]?this._data[e][t]:void 0}clear(){this._data={}}},R_=class{constructor(){this._color=new M_,this._css=new M_}setCss(e,t,s){this._css.set(e,t,s)}getCss(e,t){return this._css.get(e,t)}setColor(e,t,s){this._color.set(e,t,s)}getColor(e,t){return this._color.get(e,t)}clear(){this._color.clear(),this._css.clear()}},yt=Object.freeze((()=>{let e=[lt.toColor("#2e3436"),lt.toColor("#cc0000"),lt.toColor("#4e9a06"),lt.toColor("#c4a000"),lt.toColor("#3465a4"),lt.toColor("#75507b"),lt.toColor("#06989a"),lt.toColor("#d3d7cf"),lt.toColor("#555753"),lt.toColor("#ef2929"),lt.toColor("#8ae234"),lt.toColor("#fce94f"),lt.toColor("#729fcf"),lt.toColor("#ad7fa8"),lt.toColor("#34e2e2"),lt.toColor("#eeeeec")],t=[0,95,135,175,215,255];for(let s=0;s<216;s++){let n=t[s/36%6|0],l=t[s/6%6|0],c=t[s%6];e.push({css:mt.toCss(n,l,c),rgba:mt.toRgba(n,l,c)})}for(let s=0;s<24;s++){let n=8+s*10;e.push({css:mt.toCss(n,n,n),rgba:mt.toRgba(n,n,n)})}return e})()),vs=lt.toColor("#ffffff"),Jn=lt.toColor("#000000"),T_=lt.toColor("#ffffff"),P_=Jn,Vn={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117},zS=vs,Lh=class extends Ie{constructor(e){super(),this._optionsService=e,this._contrastCache=new R_,this._halfContrastCache=new R_,this._onChangeColors=this._register(new ce),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:vs,background:Jn,cursor:T_,cursorAccent:P_,selectionForeground:void 0,selectionBackgroundTransparent:Vn,selectionBackgroundOpaque:Ze.blend(Jn,Vn),selectionInactiveBackgroundTransparent:Vn,selectionInactiveBackgroundOpaque:Ze.blend(Jn,Vn),scrollbarSliderBackground:Ze.opacity(vs,.2),scrollbarSliderHoverBackground:Ze.opacity(vs,.4),scrollbarSliderActiveBackground:Ze.opacity(vs,.5),overviewRulerBorder:vs,ansi:yt.slice(),contrastCache:this._contrastCache,halfContrastCache:this._halfContrastCache},this._updateRestoreColors(),this._setTheme(this._optionsService.rawOptions.theme),this._register(this._optionsService.onSpecificOptionChange("minimumContrastRatio",()=>this._contrastCache.clear())),this._register(this._optionsService.onSpecificOptionChange("theme",()=>this._setTheme(this._optionsService.rawOptions.theme)))}get colors(){return this._colors}_setTheme(e={}){let t=this._colors;if(t.foreground=Ve(e.foreground,vs),t.background=Ve(e.background,Jn),t.cursor=Ze.blend(t.background,Ve(e.cursor,T_)),t.cursorAccent=Ze.blend(t.background,Ve(e.cursorAccent,P_)),t.selectionBackgroundTransparent=Ve(e.selectionBackground,Vn),t.selectionBackgroundOpaque=Ze.blend(t.background,t.selectionBackgroundTransparent),t.selectionInactiveBackgroundTransparent=Ve(e.selectionInactiveBackground,t.selectionBackgroundTransparent),t.selectionInactiveBackgroundOpaque=Ze.blend(t.background,t.selectionInactiveBackgroundTransparent),t.selectionForeground=e.selectionForeground?Ve(e.selectionForeground,k_):void 0,t.selectionForeground===k_&&(t.selectionForeground=void 0),Ze.isOpaque(t.selectionBackgroundTransparent)&&(t.selectionBackgroundTransparent=Ze.opacity(t.selectionBackgroundTransparent,.3)),Ze.isOpaque(t.selectionInactiveBackgroundTransparent)&&(t.selectionInactiveBackgroundTransparent=Ze.opacity(t.selectionInactiveBackgroundTransparent,.3)),t.scrollbarSliderBackground=Ve(e.scrollbarSliderBackground,Ze.opacity(t.foreground,.2)),t.scrollbarSliderHoverBackground=Ve(e.scrollbarSliderHoverBackground,Ze.opacity(t.foreground,.4)),t.scrollbarSliderActiveBackground=Ve(e.scrollbarSliderActiveBackground,Ze.opacity(t.foreground,.5)),t.overviewRulerBorder=Ve(e.overviewRulerBorder,zS),t.ansi=yt.slice(),t.ansi[0]=Ve(e.black,yt[0]),t.ansi[1]=Ve(e.red,yt[1]),t.ansi[2]=Ve(e.green,yt[2]),t.ansi[3]=Ve(e.yellow,yt[3]),t.ansi[4]=Ve(e.blue,yt[4]),t.ansi[5]=Ve(e.magenta,yt[5]),t.ansi[6]=Ve(e.cyan,yt[6]),t.ansi[7]=Ve(e.white,yt[7]),t.ansi[8]=Ve(e.brightBlack,yt[8]),t.ansi[9]=Ve(e.brightRed,yt[9]),t.ansi[10]=Ve(e.brightGreen,yt[10]),t.ansi[11]=Ve(e.brightYellow,yt[11]),t.ansi[12]=Ve(e.brightBlue,yt[12]),t.ansi[13]=Ve(e.brightMagenta,yt[13]),t.ansi[14]=Ve(e.brightCyan,yt[14]),t.ansi[15]=Ve(e.brightWhite,yt[15]),e.extendedAnsi){let s=Math.min(t.ansi.length-16,e.extendedAnsi.length);for(let n=0;n<s;n++)t.ansi[n+16]=Ve(e.extendedAnsi[n],yt[n+16])}this._contrastCache.clear(),this._halfContrastCache.clear(),this._updateRestoreColors(),this._onChangeColors.fire(this.colors)}restoreColor(e){this._restoreColor(e),this._onChangeColors.fire(this.colors)}_restoreColor(e){if(e===void 0){for(let t=0;t<this._restoreColors.ansi.length;++t)this._colors.ansi[t]=this._restoreColors.ansi[t];return}switch(e){case 256:this._colors.foreground=this._restoreColors.foreground;break;case 257:this._colors.background=this._restoreColors.background;break;case 258:this._colors.cursor=this._restoreColors.cursor;break;default:this._colors.ansi[e]=this._restoreColors.ansi[e]}}modifyColors(e){e(this._colors),this._onChangeColors.fire(this.colors)}_updateRestoreColors(){this._restoreColors={foreground:this._colors.foreground,background:this._colors.background,cursor:this._colors.cursor,ansi:this._colors.ansi.slice()}}};Lh=ut([pe(0,Yt)],Lh);function Ve(e,t){if(e!==void 0)try{return lt.toColor(e)}catch{}return t}var WS=class{constructor(...e){this._entries=new Map;for(let[t,s]of e)this.set(t,s)}set(e,t){let s=this._entries.get(e);return this._entries.set(e,t),s}forEach(e){for(let[t,s]of this._entries.entries())e(t,s)}has(e){return this._entries.has(e)}get(e){return this._entries.get(e)}},FS=class{constructor(){this._services=new WS,this._services.set($h,this)}setService(e,t){this._services.set(e,t)}getService(e){return this._services.get(e)}createInstance(e,...t){let s=B0(e).sort((c,h)=>c.index-h.index),n=[];for(let c of s){let h=this._services.get(c.id);if(!h)throw new Error(`[createInstance] ${e.name} depends on UNKNOWN service ${c.id._id}.`);n.push(h)}let l=s.length>0?s[0].index:t.length;if(t.length!==l)throw new Error(`[createInstance] First service dependency of ${e.name} at position ${l+1} conflicts with ${t.length} static arguments`);return new e(...t,...n)}},HS={trace:0,debug:1,info:2,warn:3,error:4,off:5},jS="xterm.js: ",Dh=class extends Ie{constructor(e){super(),this._optionsService=e,this._logLevel=5,this._updateLogLevel(),this._register(this._optionsService.onSpecificOptionChange("logLevel",()=>this._updateLogLevel()))}get logLevel(){return this._logLevel}_updateLogLevel(){this._logLevel=HS[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(e){for(let t=0;t<e.length;t++)typeof e[t]=="function"&&(e[t]=e[t]())}_log(e,t,s){this._evalLazyOptionalParams(s),e.call(console,(this._optionsService.options.logger?"":jS)+t,...s)}trace(e,...t){this._logLevel<=0&&this._log(this._optionsService.options.logger?.trace.bind(this._optionsService.options.logger)??console.log,e,t)}debug(e,...t){this._logLevel<=1&&this._log(this._optionsService.options.logger?.debug.bind(this._optionsService.options.logger)??console.log,e,t)}info(e,...t){this._logLevel<=2&&this._log(this._optionsService.options.logger?.info.bind(this._optionsService.options.logger)??console.info,e,t)}warn(e,...t){this._logLevel<=3&&this._log(this._optionsService.options.logger?.warn.bind(this._optionsService.options.logger)??console.warn,e,t)}error(e,...t){this._logLevel<=4&&this._log(this._optionsService.options.logger?.error.bind(this._optionsService.options.logger)??console.error,e,t)}};Dh=ut([pe(0,Yt)],Dh);var L_=class extends Ie{constructor(e){super(),this._maxLength=e,this.onDeleteEmitter=this._register(new ce),this.onDelete=this.onDeleteEmitter.event,this.onInsertEmitter=this._register(new ce),this.onInsert=this.onInsertEmitter.event,this.onTrimEmitter=this._register(new ce),this.onTrim=this.onTrimEmitter.event,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}get maxLength(){return this._maxLength}set maxLength(e){if(this._maxLength===e)return;let t=new Array(e);for(let s=0;s<Math.min(e,this.length);s++)t[s]=this._array[this._getCyclicIndex(s)];this._array=t,this._maxLength=e,this._startIndex=0}get length(){return this._length}set length(e){if(e>this._length)for(let t=this._length;t<e;t++)this._array[t]=void 0;this._length=e}get(e){return this._array[this._getCyclicIndex(e)]}set(e,t){this._array[this._getCyclicIndex(e)]=t}push(e){this._array[this._getCyclicIndex(this._length)]=e,this._length===this._maxLength?(this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1)):this._length++}recycle(){if(this._length!==this._maxLength)throw new Error("Can only recycle when the buffer is full");return this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1),this._array[this._getCyclicIndex(this._length-1)]}get isFull(){return this._length===this._maxLength}pop(){return this._array[this._getCyclicIndex(this._length---1)]}splice(e,t,...s){if(t){for(let n=e;n<this._length-t;n++)this._array[this._getCyclicIndex(n)]=this._array[this._getCyclicIndex(n+t)];this._length-=t,this.onDeleteEmitter.fire({index:e,amount:t})}for(let n=this._length-1;n>=e;n--)this._array[this._getCyclicIndex(n+s.length)]=this._array[this._getCyclicIndex(n)];for(let n=0;n<s.length;n++)this._array[this._getCyclicIndex(e+n)]=s[n];if(s.length&&this.onInsertEmitter.fire({index:e,amount:s.length}),this._length+s.length>this._maxLength){let n=this._length+s.length-this._maxLength;this._startIndex+=n,this._length=this._maxLength,this.onTrimEmitter.fire(n)}else this._length+=s.length}trimStart(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)}shiftElements(e,t,s){if(!(t<=0)){if(e<0||e>=this._length)throw new Error("start argument out of range");if(e+s<0)throw new Error("Cannot shift elements in list beyond index 0");if(s>0){for(let l=t-1;l>=0;l--)this.set(e+l+s,this.get(e+l));let n=e+t+s-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let n=0;n<t;n++)this.set(e+n+s,this.get(e+n))}}_getCyclicIndex(e){return(this._startIndex+e)%this._maxLength}},Ne=3,pt=Object.freeze(new uo),Rl=0,Vc=2,Zn=class Yp{constructor(t,s,n=!1){this.isWrapped=n,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(t*Ne);let l=s||Rr.fromCharData([0,dp,1,0]);for(let c=0;c<t;++c)this.setCell(c,l);this.length=t}get(t){let s=this._data[t*Ne+0],n=s&2097151;return[this._data[t*Ne+1],s&2097152?this._combined[t]:n?Xi(n):"",s>>22,s&2097152?this._combined[t].charCodeAt(this._combined[t].length-1):n]}set(t,s){this._data[t*Ne+1]=s[0],s[1].length>1?(this._combined[t]=s[1],this._data[t*Ne+0]=t|2097152|s[2]<<22):this._data[t*Ne+0]=s[1].charCodeAt(0)|s[2]<<22}getWidth(t){return this._data[t*Ne+0]>>22}hasWidth(t){return this._data[t*Ne+0]&12582912}getFg(t){return this._data[t*Ne+1]}getBg(t){return this._data[t*Ne+2]}hasContent(t){return this._data[t*Ne+0]&4194303}getCodePoint(t){let s=this._data[t*Ne+0];return s&2097152?this._combined[t].charCodeAt(this._combined[t].length-1):s&2097151}isCombined(t){return this._data[t*Ne+0]&2097152}getString(t){let s=this._data[t*Ne+0];return s&2097152?this._combined[t]:s&2097151?Xi(s&2097151):""}isProtected(t){return this._data[t*Ne+2]&536870912}loadCell(t,s){return Rl=t*Ne,s.content=this._data[Rl+0],s.fg=this._data[Rl+1],s.bg=this._data[Rl+2],s.content&2097152&&(s.combinedData=this._combined[t]),s.bg&268435456&&(s.extended=this._extendedAttrs[t]),s}setCell(t,s){s.content&2097152&&(this._combined[t]=s.combinedData),s.bg&268435456&&(this._extendedAttrs[t]=s.extended),this._data[t*Ne+0]=s.content,this._data[t*Ne+1]=s.fg,this._data[t*Ne+2]=s.bg}setCellFromCodepoint(t,s,n,l){l.bg&268435456&&(this._extendedAttrs[t]=l.extended),this._data[t*Ne+0]=s|n<<22,this._data[t*Ne+1]=l.fg,this._data[t*Ne+2]=l.bg}addCodepointToCell(t,s,n){let l=this._data[t*Ne+0];l&2097152?this._combined[t]+=Xi(s):l&2097151?(this._combined[t]=Xi(l&2097151)+Xi(s),l&=-2097152,l|=2097152):l=s|1<<22,n&&(l&=-12582913,l|=n<<22),this._data[t*Ne+0]=l}insertCells(t,s,n){if(t%=this.length,t&&this.getWidth(t-1)===2&&this.setCellFromCodepoint(t-1,0,1,n),s<this.length-t){let l=new Rr;for(let c=this.length-t-s-1;c>=0;--c)this.setCell(t+s+c,this.loadCell(t+c,l));for(let c=0;c<s;++c)this.setCell(t+c,n)}else for(let l=t;l<this.length;++l)this.setCell(l,n);this.getWidth(this.length-1)===2&&this.setCellFromCodepoint(this.length-1,0,1,n)}deleteCells(t,s,n){if(t%=this.length,s<this.length-t){let l=new Rr;for(let c=0;c<this.length-t-s;++c)this.setCell(t+c,this.loadCell(t+s+c,l));for(let c=this.length-s;c<this.length;++c)this.setCell(c,n)}else for(let l=t;l<this.length;++l)this.setCell(l,n);t&&this.getWidth(t-1)===2&&this.setCellFromCodepoint(t-1,0,1,n),this.getWidth(t)===0&&!this.hasContent(t)&&this.setCellFromCodepoint(t,0,1,n)}replaceCells(t,s,n,l=!1){if(l){for(t&&this.getWidth(t-1)===2&&!this.isProtected(t-1)&&this.setCellFromCodepoint(t-1,0,1,n),s<this.length&&this.getWidth(s-1)===2&&!this.isProtected(s)&&this.setCellFromCodepoint(s,0,1,n);t<s&&t<this.length;)this.isProtected(t)||this.setCell(t,n),t++;return}for(t&&this.getWidth(t-1)===2&&this.setCellFromCodepoint(t-1,0,1,n),s<this.length&&this.getWidth(s-1)===2&&this.setCellFromCodepoint(s,0,1,n);t<s&&t<this.length;)this.setCell(t++,n)}resize(t,s){if(t===this.length)return this._data.length*4*Vc<this._data.buffer.byteLength;let n=t*Ne;if(t>this.length){if(this._data.buffer.byteLength>=n*4)this._data=new Uint32Array(this._data.buffer,0,n);else{let l=new Uint32Array(n);l.set(this._data),this._data=l}for(let l=this.length;l<t;++l)this.setCell(l,s)}else{this._data=this._data.subarray(0,n);let l=Object.keys(this._combined);for(let h=0;h<l.length;h++){let f=parseInt(l[h],10);f>=t&&delete this._combined[f]}let c=Object.keys(this._extendedAttrs);for(let h=0;h<c.length;h++){let f=parseInt(c[h],10);f>=t&&delete this._extendedAttrs[f]}}return this.length=t,n*4*Vc<this._data.buffer.byteLength}cleanupMemory(){if(this._data.length*4*Vc<this._data.buffer.byteLength){let t=new Uint32Array(this._data.length);return t.set(this._data),this._data=t,1}return 0}fill(t,s=!1){if(s){for(let n=0;n<this.length;++n)this.isProtected(n)||this.setCell(n,t);return}this._combined={},this._extendedAttrs={};for(let n=0;n<this.length;++n)this.setCell(n,t)}copyFrom(t){this.length!==t.length?this._data=new Uint32Array(t._data):this._data.set(t._data),this.length=t.length,this._combined={};for(let s in t._combined)this._combined[s]=t._combined[s];this._extendedAttrs={};for(let s in t._extendedAttrs)this._extendedAttrs[s]=t._extendedAttrs[s];this.isWrapped=t.isWrapped}clone(){let t=new Yp(0);t._data=new Uint32Array(this._data),t.length=this.length;for(let s in this._combined)t._combined[s]=this._combined[s];for(let s in this._extendedAttrs)t._extendedAttrs[s]=this._extendedAttrs[s];return t.isWrapped=this.isWrapped,t}getTrimmedLength(){for(let t=this.length-1;t>=0;--t)if(this._data[t*Ne+0]&4194303)return t+(this._data[t*Ne+0]>>22);return 0}getNoBgTrimmedLength(){for(let t=this.length-1;t>=0;--t)if(this._data[t*Ne+0]&4194303||this._data[t*Ne+2]&50331648)return t+(this._data[t*Ne+0]>>22);return 0}copyCellsFrom(t,s,n,l,c){let h=t._data;if(c)for(let p=l-1;p>=0;p--){for(let d=0;d<Ne;d++)this._data[(n+p)*Ne+d]=h[(s+p)*Ne+d];h[(s+p)*Ne+2]&268435456&&(this._extendedAttrs[n+p]=t._extendedAttrs[s+p])}else for(let p=0;p<l;p++){for(let d=0;d<Ne;d++)this._data[(n+p)*Ne+d]=h[(s+p)*Ne+d];h[(s+p)*Ne+2]&268435456&&(this._extendedAttrs[n+p]=t._extendedAttrs[s+p])}let f=Object.keys(t._combined);for(let p=0;p<f.length;p++){let d=parseInt(f[p],10);d>=s&&(this._combined[d-s+n]=t._combined[d])}}translateToString(t,s,n,l){s=s??0,n=n??this.length,t&&(n=Math.min(n,this.getTrimmedLength())),l&&(l.length=0);let c="";for(;s<n;){let h=this._data[s*Ne+0],f=h&2097151,p=h&2097152?this._combined[s]:f?Xi(f):Gi;if(c+=p,l)for(let d=0;d<p.length;++d)l.push(s);s+=h>>22||1}return l&&l.push(s),c}};function $S(e,t,s,n,l,c){let h=[];for(let f=0;f<e.length-1;f++){let p=f,d=e.get(++p);if(!d.isWrapped)continue;let g=[e.get(f)];for(;p<e.length&&d.isWrapped;)g.push(d),d=e.get(++p);if(!c&&n>=f&&n<p){f+=g.length-1;continue}let y=0,C=ho(g,y,t),S=1,v=0;for(;S<g.length;){let E=ho(g,S,t),L=E-v,j=s-C,$=Math.min(L,j);g[y].copyCellsFrom(g[S],v,C,$,!1),C+=$,C===s&&(y++,C=0),v+=$,v===E&&(S++,v=0),C===0&&y!==0&&g[y-1].getWidth(s-1)===2&&(g[y].copyCellsFrom(g[y-1],s-1,C++,1,!1),g[y-1].setCell(s-1,l))}g[y].replaceCells(C,s,l);let w=0;for(let E=g.length-1;E>0&&(E>y||g[E].getTrimmedLength()===0);E--)w++;w>0&&(h.push(f+g.length-w),h.push(w)),f+=g.length-1}return h}function KS(e,t){let s=[],n=0,l=t[n],c=0;for(let h=0;h<e.length;h++)if(l===h){let f=t[++n];e.onDeleteEmitter.fire({index:h-c,amount:f}),h+=f-1,c+=f,l=t[++n]}else s.push(h);return{layout:s,countRemoved:c}}function US(e,t){let s=[];for(let n=0;n<t.length;n++)s.push(e.get(t[n]));for(let n=0;n<s.length;n++)e.set(n,s[n]);e.length=t.length}function VS(e,t,s){let n=[],l=e.map((p,d)=>ho(e,d,t)).reduce((p,d)=>p+d),c=0,h=0,f=0;for(;f<l;){if(l-f<s){n.push(l-f);break}c+=s;let p=ho(e,h,t);c>p&&(c-=p,h++);let d=e[h].getWidth(c-1)===2;d&&c--;let g=d?s-1:s;n.push(g),f+=g}return n}function ho(e,t,s){if(t===e.length-1)return e[t].getTrimmedLength();let n=!e[t].hasContent(s-1)&&e[t].getWidth(s-1)===1,l=e[t+1].getWidth(0)===2;return n&&l?s-1:s}var qp=class Xp{constructor(t){this.line=t,this.isDisposed=!1,this._disposables=[],this._id=Xp._nextId++,this._onDispose=this.register(new ce),this.onDispose=this._onDispose.event}get id(){return this._id}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),ks(this._disposables),this._disposables.length=0)}register(t){return this._disposables.push(t),t}};qp._nextId=1;var YS=qp,wt={},ys=wt.B;wt[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"};wt.A={"#":"£"};wt.B=void 0;wt[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"};wt.C=wt[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};wt.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"};wt.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"};wt.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"};wt.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"};wt.E=wt[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"};wt.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"};wt.H=wt[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};wt["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"};var D_=4294967295,B_=class{constructor(e,t,s){this._hasScrollback=e,this._optionsService=t,this._bufferService=s,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=pt.clone(),this.savedCharset=ys,this.markers=[],this._nullCell=Rr.fromCharData([0,dp,1,0]),this._whitespaceCell=Rr.fromCharData([0,Gi,1,32]),this._isClearing=!1,this._memoryCleanupQueue=new jl,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new L_(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new zl),this._nullCell}getWhitespaceCell(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new zl),this._whitespaceCell}getBlankLine(e,t){return new Zn(this._bufferService.cols,this.getNullCell(e),t)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){let e=this.ybase+this.y-this.ydisp;return e>=0&&e<this._rows}_getCorrectBufferLength(e){if(!this._hasScrollback)return e;let t=e+this._optionsService.rawOptions.scrollback;return t>D_?D_:t}fillViewportRows(e){if(this.lines.length===0){e===void 0&&(e=pt);let t=this._rows;for(;t--;)this.lines.push(this.getBlankLine(e))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new L_(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(e,t){let s=this.getNullCell(pt),n=0,l=this._getCorrectBufferLength(t);if(l>this.lines.maxLength&&(this.lines.maxLength=l),this.lines.length>0){if(this._cols<e)for(let h=0;h<this.lines.length;h++)n+=+this.lines.get(h).resize(e,s);let c=0;if(this._rows<t)for(let h=this._rows;h<t;h++)this.lines.length<t+this.ybase&&(this._optionsService.rawOptions.windowsMode||this._optionsService.rawOptions.windowsPty.backend!==void 0||this._optionsService.rawOptions.windowsPty.buildNumber!==void 0?this.lines.push(new Zn(e,s)):this.ybase>0&&this.lines.length<=this.ybase+this.y+c+1?(this.ybase--,c++,this.ydisp>0&&this.ydisp--):this.lines.push(new Zn(e,s)));else for(let h=this._rows;h>t;h--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(l<this.lines.maxLength){let h=this.lines.length-l;h>0&&(this.lines.trimStart(h),this.ybase=Math.max(this.ybase-h,0),this.ydisp=Math.max(this.ydisp-h,0),this.savedY=Math.max(this.savedY-h,0)),this.lines.maxLength=l}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),c&&(this.y+=c),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(let c=0;c<this.lines.length;c++)n+=+this.lines.get(c).resize(e,s);this._cols=e,this._rows=t,this._memoryCleanupQueue.clear(),n>.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue(()=>this._batchedMemoryCleanup()))}_batchedMemoryCleanup(){let e=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,e=!1);let t=0;for(;this._memoryCleanupPosition<this.lines.length;)if(t+=this.lines.get(this._memoryCleanupPosition++).cleanupMemory(),t>100)return!0;return e}get _isReflowEnabled(){let e=this._optionsService.rawOptions.windowsPty;return e&&e.buildNumber?this._hasScrollback&&e.backend==="conpty"&&e.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(e,t){this._cols!==e&&(e>this._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))}_reflowLarger(e,t){let s=this._optionsService.rawOptions.reflowCursorLine,n=$S(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(pt),s);if(n.length>0){let l=KS(this.lines,n);US(this.lines,l.layout),this._reflowLargerAdjustViewport(e,t,l.countRemoved)}}_reflowLargerAdjustViewport(e,t,s){let n=this.getNullCell(pt),l=s;for(;l-- >0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length<t&&this.lines.push(new Zn(e,n))):(this.ydisp===this.ybase&&this.ydisp--,this.ybase--);this.savedY=Math.max(this.savedY-s,0)}_reflowSmaller(e,t){let s=this._optionsService.rawOptions.reflowCursorLine,n=this.getNullCell(pt),l=[],c=0;for(let h=this.lines.length-1;h>=0;h--){let f=this.lines.get(h);if(!f||!f.isWrapped&&f.getTrimmedLength()<=e)continue;let p=[f];for(;f.isWrapped&&h>0;)f=this.lines.get(--h),p.unshift(f);if(!s){let $=this.ybase+this.y;if($>=h&&$<h+p.length)continue}let d=p[p.length-1].getTrimmedLength(),g=VS(p,this._cols,e),y=g.length-p.length,C;this.ybase===0&&this.y!==this.lines.length-1?C=Math.max(0,this.y-this.lines.maxLength+y):C=Math.max(0,this.lines.length-this.lines.maxLength+y);let S=[];for(let $=0;$<y;$++){let W=this.getBlankLine(pt,!0);S.push(W)}S.length>0&&(l.push({start:h+p.length+c,newLines:S}),c+=S.length),p.push(...S);let v=g.length-1,w=g[v];w===0&&(v--,w=g[v]);let E=p.length-y-1,L=d;for(;E>=0;){let $=Math.min(L,w);if(p[v]===void 0)break;if(p[v].copyCellsFrom(p[E],L-$,w-$,$,!0),w-=$,w===0&&(v--,w=g[v]),L-=$,L===0){E--;let W=Math.max(E,0);L=ho(p,W,this._cols)}}for(let $=0;$<p.length;$++)g[$]<e&&p[$].setCell(g[$],n);let j=y-C;for(;j-- >0;)this.ybase===0?this.y<t-1?(this.y++,this.lines.pop()):(this.ybase++,this.ydisp++):this.ybase<Math.min(this.lines.maxLength,this.lines.length+c)-t&&(this.ybase===this.ydisp&&this.ydisp++,this.ybase++);this.savedY=Math.min(this.savedY+y,this.ybase+t-1)}if(l.length>0){let h=[],f=[];for(let w=0;w<this.lines.length;w++)f.push(this.lines.get(w));let p=this.lines.length,d=p-1,g=0,y=l[g];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+c);let C=0;for(let w=Math.min(this.lines.maxLength-1,p+c-1);w>=0;w--)if(y&&y.start>d+C){for(let E=y.newLines.length-1;E>=0;E--)this.lines.set(w--,y.newLines[E]);w++,h.push({index:d+1,amount:y.newLines.length}),C+=y.newLines.length,y=l[++g]}else this.lines.set(w,f[d--]);let S=0;for(let w=h.length-1;w>=0;w--)h[w].index+=S,this.lines.onInsertEmitter.fire(h[w]),S+=h[w].amount;let v=Math.max(0,p+c-this.lines.maxLength);v>0&&this.lines.onTrimEmitter.fire(v)}}translateBufferLineToString(e,t,s=0,n){let l=this.lines.get(e);return l?l.translateToString(t,s,n):""}getWrappedRangeForLine(e){let t=e,s=e;for(;t>0&&this.lines.get(t).isWrapped;)t--;for(;s+1<this.lines.length&&this.lines.get(s+1).isWrapped;)s++;return{first:t,last:s}}setupTabStops(e){for(e!=null?this.tabs[e]||(e=this.prevStop(e)):(this.tabs={},e=0);e<this._cols;e+=this._optionsService.rawOptions.tabStopWidth)this.tabs[e]=!0}prevStop(e){for(e==null&&(e=this.x);!this.tabs[--e]&&e>0;);return e>=this._cols?this._cols-1:e<0?0:e}nextStop(e){for(e==null&&(e=this.x);!this.tabs[++e]&&e<this._cols;);return e>=this._cols?this._cols-1:e<0?0:e}clearMarkers(e){this._isClearing=!0;for(let t=0;t<this.markers.length;t++)this.markers[t].line===e&&(this.markers[t].dispose(),this.markers.splice(t--,1));this._isClearing=!1}clearAllMarkers(){this._isClearing=!0;for(let e=0;e<this.markers.length;e++)this.markers[e].dispose();this.markers.length=0,this._isClearing=!1}addMarker(e){let t=new YS(e);return this.markers.push(t),t.register(this.lines.onTrim(s=>{t.line-=s,t.line<0&&t.dispose()})),t.register(this.lines.onInsert(s=>{t.line>=s.index&&(t.line+=s.amount)})),t.register(this.lines.onDelete(s=>{t.line>=s.index&&t.line<s.index+s.amount&&t.dispose(),t.line>s.index&&(t.line-=s.amount)})),t.register(t.onDispose(()=>this._removeMarker(t))),t}_removeMarker(e){this._isClearing||this.markers.splice(this.markers.indexOf(e),1)}},qS=class extends Ie{constructor(e,t){super(),this._optionsService=e,this._bufferService=t,this._onBufferActivate=this._register(new ce),this.onBufferActivate=this._onBufferActivate.event,this.reset(),this._register(this._optionsService.onSpecificOptionChange("scrollback",()=>this.resize(this._bufferService.cols,this._bufferService.rows))),this._register(this._optionsService.onSpecificOptionChange("tabStopWidth",()=>this.setupTabStops()))}reset(){this._normal=new B_(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new B_(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}),this.setupTabStops()}get alt(){return this._alt}get active(){return this._activeBuffer}get normal(){return this._normal}activateNormalBuffer(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clearAllMarkers(),this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))}activateAltBuffer(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))}resize(e,t){this._normal.resize(e,t),this._alt.resize(e,t),this.setupTabStops(e)}setupTabStops(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)}},Gp=2,Qp=1,Bh=class extends Ie{constructor(e){super(),this.isUserScrolling=!1,this._onResize=this._register(new ce),this.onResize=this._onResize.event,this._onScroll=this._register(new ce),this.onScroll=this._onScroll.event,this.cols=Math.max(e.rawOptions.cols||0,Gp),this.rows=Math.max(e.rawOptions.rows||0,Qp),this.buffers=this._register(new qS(e,this)),this._register(this.buffers.onBufferActivate(t=>{this._onScroll.fire(t.activeBuffer.ydisp)}))}get buffer(){return this.buffers.active}resize(e,t){let s=this.cols!==e,n=this.rows!==t;this.cols=e,this.rows=t,this.buffers.resize(e,t),this._onResize.fire({cols:e,rows:t,colsChanged:s,rowsChanged:n})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(e,t=!1){let s=this.buffer,n;n=this._cachedBlankLine,(!n||n.length!==this.cols||n.getFg(0)!==e.fg||n.getBg(0)!==e.bg)&&(n=s.getBlankLine(e,t),this._cachedBlankLine=n),n.isWrapped=t;let l=s.ybase+s.scrollTop,c=s.ybase+s.scrollBottom;if(s.scrollTop===0){let h=s.lines.isFull;c===s.lines.length-1?h?s.lines.recycle().copyFrom(n):s.lines.push(n.clone()):s.lines.splice(c+1,0,n.clone()),h?this.isUserScrolling&&(s.ydisp=Math.max(s.ydisp-1,0)):(s.ybase++,this.isUserScrolling||s.ydisp++)}else{let h=c-l+1;s.lines.shiftElements(l+1,h-1,-1),s.lines.set(c,n.clone())}this.isUserScrolling||(s.ydisp=s.ybase),this._onScroll.fire(s.ydisp)}scrollLines(e,t){let s=this.buffer;if(e<0){if(s.ydisp===0)return;this.isUserScrolling=!0}else e+s.ydisp>=s.ybase&&(this.isUserScrolling=!1);let n=s.ydisp;s.ydisp=Math.max(Math.min(s.ydisp+e,s.ybase),0),n!==s.ydisp&&(t||this._onScroll.fire(s.ydisp))}};Bh=ut([pe(0,Yt)],Bh);var en={cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,cursorInactiveStyle:"outline",customGlyphs:!0,drawBoldTextInBrightColors:!0,documentOverride:null,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",ignoreBracketedPasteMode:!1,lineHeight:1,letterSpacing:0,linkHandler:null,logLevel:"info",logger:null,scrollback:1e3,scrollOnEraseInDisplay:!1,scrollOnUserInput:!0,scrollSensitivity:1,screenReaderMode:!1,smoothScrollDuration:0,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!1,allowTransparency:!1,tabStopWidth:8,theme:{},reflowCursorLine:!1,rescaleOverlappingGlyphs:!1,rightClickSelectsWord:Hl,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRuler:{}},XS=["normal","bold","100","200","300","400","500","600","700","800","900"],GS=class extends Ie{constructor(e){super(),this._onOptionChange=this._register(new ce),this.onOptionChange=this._onOptionChange.event;let t={...en};for(let s in e)if(s in t)try{let n=e[s];t[s]=this._sanitizeAndValidateOption(s,n)}catch(n){console.error(n)}this.rawOptions=t,this.options={...t},this._setupOptions(),this._register(rt(()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null}))}onSpecificOptionChange(e,t){return this.onOptionChange(s=>{s===e&&t(this.rawOptions[e])})}onMultipleOptionChange(e,t){return this.onOptionChange(s=>{e.indexOf(s)!==-1&&t()})}_setupOptions(){let e=s=>{if(!(s in en))throw new Error(`No option with key "${s}"`);return this.rawOptions[s]},t=(s,n)=>{if(!(s in en))throw new Error(`No option with key "${s}"`);n=this._sanitizeAndValidateOption(s,n),this.rawOptions[s]!==n&&(this.rawOptions[s]=n,this._onOptionChange.fire(s))};for(let s in this.rawOptions){let n={get:e.bind(this,s),set:t.bind(this,s)};Object.defineProperty(this.options,s,n)}}_sanitizeAndValidateOption(e,t){switch(e){case"cursorStyle":if(t||(t=en[e]),!QS(t))throw new Error(`"${t}" is not a valid value for ${e}`);break;case"wordSeparator":t||(t=en[e]);break;case"fontWeight":case"fontWeightBold":if(typeof t=="number"&&1<=t&&t<=1e3)break;t=XS.includes(t)?t:en[e];break;case"cursorWidth":t=Math.floor(t);case"lineHeight":case"tabStopWidth":if(t<1)throw new Error(`${e} cannot be less than 1, value: ${t}`);break;case"minimumContrastRatio":t=Math.max(1,Math.min(21,Math.round(t*10)/10));break;case"scrollback":if(t=Math.min(t,4294967295),t<0)throw new Error(`${e} cannot be less than 0, value: ${t}`);break;case"fastScrollSensitivity":case"scrollSensitivity":if(t<=0)throw new Error(`${e} cannot be less than or equal to 0, value: ${t}`);break;case"rows":case"cols":if(!t&&t!==0)throw new Error(`${e} must be numeric, value: ${t}`);break;case"windowsPty":t=t??{};break}return t}};function QS(e){return e==="block"||e==="underline"||e==="bar"}function eo(e,t=5){if(typeof e!="object")return e;let s=Array.isArray(e)?[]:{};for(let n in e)s[n]=t<=1?e[n]:e[n]&&eo(e[n],t-1);return s}var N_=Object.freeze({insertMode:!1}),I_=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,cursorBlink:void 0,cursorStyle:void 0,origin:!1,reverseWraparound:!1,sendFocus:!1,synchronizedOutput:!1,wraparound:!0}),Nh=class extends Ie{constructor(e,t,s){super(),this._bufferService=e,this._logService=t,this._optionsService=s,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this._register(new ce),this.onData=this._onData.event,this._onUserInput=this._register(new ce),this.onUserInput=this._onUserInput.event,this._onBinary=this._register(new ce),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this._register(new ce),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=eo(N_),this.decPrivateModes=eo(I_)}reset(){this.modes=eo(N_),this.decPrivateModes=eo(I_)}triggerDataEvent(e,t=!1){if(this._optionsService.rawOptions.disableStdin)return;let s=this._bufferService.buffer;t&&this._optionsService.rawOptions.scrollOnUserInput&&s.ybase!==s.ydisp&&this._onRequestScrollToBottom.fire(),t&&this._onUserInput.fire(),this._logService.debug(`sending data "${e}"`),this._logService.trace("sending data (codes)",()=>e.split("").map(n=>n.charCodeAt(0))),this._onData.fire(e)}triggerBinaryEvent(e){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${e}"`),this._logService.trace("sending binary (codes)",()=>e.split("").map(t=>t.charCodeAt(0))),this._onBinary.fire(e))}};Nh=ut([pe(0,Vt),pe(1,gp),pe(2,Yt)],Nh);var A_={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:e=>e.button===4||e.action!==1?!1:(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)},VT200:{events:19,restrict:e=>e.action!==32},DRAG:{events:23,restrict:e=>!(e.action===32&&e.button===3)},ANY:{events:31,restrict:e=>!0}};function Yc(e,t){let s=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return e.button===4?(s|=64,s|=e.action):(s|=e.button&3,e.button&4&&(s|=64),e.button&8&&(s|=128),e.action===32?s|=32:e.action===0&&!t&&(s|=3)),s}var qc=String.fromCharCode,O_={DEFAULT:e=>{let t=[Yc(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?"":`\x1B[M${qc(t[0])}${qc(t[1])}${qc(t[2])}`},SGR:e=>{let t=e.action===0&&e.button!==4?"m":"M";return`\x1B[<${Yc(e,!0)};${e.col};${e.row}${t}`},SGR_PIXELS:e=>{let t=e.action===0&&e.button!==4?"m":"M";return`\x1B[<${Yc(e,!0)};${e.x};${e.y}${t}`}},Ih=class extends Ie{constructor(e,t,s){super(),this._bufferService=e,this._coreService=t,this._optionsService=s,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._lastEvent=null,this._wheelPartialScroll=0,this._onProtocolChange=this._register(new ce),this.onProtocolChange=this._onProtocolChange.event;for(let n of Object.keys(A_))this.addProtocol(n,A_[n]);for(let n of Object.keys(O_))this.addEncoding(n,O_[n]);this.reset()}addProtocol(e,t){this._protocols[e]=t}addEncoding(e,t){this._encodings[e]=t}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return this._protocols[this._activeProtocol].events!==0}set activeProtocol(e){if(!this._protocols[e])throw new Error(`unknown protocol "${e}"`);this._activeProtocol=e,this._onProtocolChange.fire(this._protocols[e].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(e){if(!this._encodings[e])throw new Error(`unknown encoding "${e}"`);this._activeEncoding=e}reset(){this.activeProtocol="NONE",this.activeEncoding="DEFAULT",this._lastEvent=null,this._wheelPartialScroll=0}consumeWheelEvent(e,t,s){if(e.deltaY===0||e.shiftKey||t===void 0||s===void 0)return 0;let n=t/s,l=this._applyScrollModifier(e.deltaY,e);return e.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(l/=n+0,Math.abs(e.deltaY)<50&&(l*=.3),this._wheelPartialScroll+=l,l=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(l*=this._bufferService.rows),l}_applyScrollModifier(e,t){return t.altKey||t.ctrlKey||t.shiftKey?e*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:e*this._optionsService.rawOptions.scrollSensitivity}triggerMouseEvent(e){if(e.col<0||e.col>=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows||e.button===4&&e.action===32||e.button===3&&e.action!==32||e.button!==4&&(e.action===2||e.action===3)||(e.col++,e.row++,e.action===32&&this._lastEvent&&this._equalEvents(this._lastEvent,e,this._activeEncoding==="SGR_PIXELS"))||!this._protocols[this._activeProtocol].restrict(e))return!1;let t=this._encodings[this._activeEncoding](e);return t&&(this._activeEncoding==="DEFAULT"?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0}explainEvents(e){return{down:!!(e&1),up:!!(e&2),drag:!!(e&4),move:!!(e&8),wheel:!!(e&16)}}_equalEvents(e,t,s){if(s){if(e.x!==t.x||e.y!==t.y)return!1}else if(e.col!==t.col||e.row!==t.row)return!1;return!(e.button!==t.button||e.action!==t.action||e.ctrl!==t.ctrl||e.alt!==t.alt||e.shift!==t.shift)}};Ih=ut([pe(0,Vt),pe(1,xs),pe(2,Yt)],Ih);var Xc=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],JS=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],St;function ZS(e,t){let s=0,n=t.length-1,l;if(e<t[0][0]||e>t[n][1])return!1;for(;n>=s;)if(l=s+n>>1,e>t[l][1])s=l+1;else if(e<t[l][0])n=l-1;else return!0;return!1}var ew=class{constructor(){if(this.version="6",!St){St=new Uint8Array(65536),St.fill(1),St[0]=0,St.fill(0,1,32),St.fill(0,127,160),St.fill(2,4352,4448),St[9001]=2,St[9002]=2,St.fill(2,11904,42192),St[12351]=1,St.fill(2,44032,55204),St.fill(2,63744,64256),St.fill(2,65040,65050),St.fill(2,65072,65136),St.fill(2,65280,65377),St.fill(2,65504,65511);for(let e=0;e<Xc.length;++e)St.fill(0,Xc[e][0],Xc[e][1]+1)}}wcwidth(e){return e<32?0:e<127?1:e<65536?St[e]:ZS(e,JS)?0:e>=131072&&e<=196605||e>=196608&&e<=262141?2:1}charProperties(e,t){let s=this.wcwidth(e),n=s===0&&t!==0;if(n){let l=ws.extractWidth(t);l===0?n=!1:l>s&&(s=l)}return ws.createPropertyValue(0,s,n)}},ws=class Nl{constructor(){this._providers=Object.create(null),this._active="",this._onChange=new ce,this.onChange=this._onChange.event;let t=new ew;this.register(t),this._active=t.version,this._activeProvider=t}static extractShouldJoin(t){return(t&1)!==0}static extractWidth(t){return t>>1&3}static extractCharKind(t){return t>>3}static createPropertyValue(t,s,n=!1){return(t&16777215)<<3|(s&3)<<1|(n?1:0)}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(t){if(!this._providers[t])throw new Error(`unknown Unicode version "${t}"`);this._active=t,this._activeProvider=this._providers[t],this._onChange.fire(t)}register(t){this._providers[t.version]=t}wcwidth(t){return this._activeProvider.wcwidth(t)}getStringCellWidth(t){let s=0,n=0,l=t.length;for(let c=0;c<l;++c){let h=t.charCodeAt(c);if(55296<=h&&h<=56319){if(++c>=l)return s+this.wcwidth(h);let d=t.charCodeAt(c);56320<=d&&d<=57343?h=(h-55296)*1024+d-56320+65536:s+=this.wcwidth(d)}let f=this.charProperties(h,n),p=Nl.extractWidth(f);Nl.extractShouldJoin(f)&&(p-=Nl.extractWidth(n)),s+=p,n=f}return s}charProperties(t,s){return this._activeProvider.charProperties(t,s)}},tw=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(e){this.glevel=e,this.charset=this._charsets[e]}setgCharset(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)}};function z_(e){let t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1)?.get(e.cols-1),s=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);s&&t&&(s.isWrapped=t[3]!==0&&t[3]!==32)}var Yn=2147483647,rw=256,Jp=class Ah{constructor(t=32,s=32){if(this.maxLength=t,this.maxSubParamsLength=s,s>rw)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(t),this.length=0,this._subParams=new Int32Array(s),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(t),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}static fromArray(t){let s=new Ah;if(!t.length)return s;for(let n=Array.isArray(t[0])?1:0;n<t.length;++n){let l=t[n];if(Array.isArray(l))for(let c=0;c<l.length;++c)s.addSubParam(l[c]);else s.addParam(l)}return s}clone(){let t=new Ah(this.maxLength,this.maxSubParamsLength);return t.params.set(this.params),t.length=this.length,t._subParams.set(this._subParams),t._subParamsLength=this._subParamsLength,t._subParamsIdx.set(this._subParamsIdx),t._rejectDigits=this._rejectDigits,t._rejectSubDigits=this._rejectSubDigits,t._digitIsSub=this._digitIsSub,t}toArray(){let t=[];for(let s=0;s<this.length;++s){t.push(this.params[s]);let n=this._subParamsIdx[s]>>8,l=this._subParamsIdx[s]&255;l-n>0&&t.push(Array.prototype.slice.call(this._subParams,n,l))}return t}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(t){if(this._digitIsSub=!1,this.length>=this.maxLength){this._rejectDigits=!0;return}if(t<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=t>Yn?Yn:t}addSubParam(t){if(this._digitIsSub=!0,!!this.length){if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength){this._rejectSubDigits=!0;return}if(t<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=t>Yn?Yn:t,this._subParamsIdx[this.length-1]++}}hasSubParams(t){return(this._subParamsIdx[t]&255)-(this._subParamsIdx[t]>>8)>0}getSubParams(t){let s=this._subParamsIdx[t]>>8,n=this._subParamsIdx[t]&255;return n-s>0?this._subParams.subarray(s,n):null}getSubParamsAll(){let t={};for(let s=0;s<this.length;++s){let n=this._subParamsIdx[s]>>8,l=this._subParamsIdx[s]&255;l-n>0&&(t[s]=this._subParams.slice(n,l))}return t}addDigit(t){let s;if(this._rejectDigits||!(s=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;let n=this._digitIsSub?this._subParams:this.params,l=n[s-1];n[s-1]=~l?Math.min(l*10+t,Yn):t}},qn=[],iw=class{constructor(){this._state=0,this._active=qn,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(e,t){this._handlers[e]===void 0&&(this._handlers[e]=[]);let s=this._handlers[e];return s.push(t),{dispose:()=>{let n=s.indexOf(t);n!==-1&&s.splice(n,1)}}}clearHandler(e){this._handlers[e]&&delete this._handlers[e]}setHandlerFallback(e){this._handlerFb=e}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=qn}reset(){if(this._state===2)for(let e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=qn,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||qn,!this._active.length)this._handlerFb(this._id,"START");else for(let e=this._active.length-1;e>=0;e--)this._active[e].start()}_put(e,t,s){if(!this._active.length)this._handlerFb(this._id,"PUT",Ul(e,t,s));else for(let n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,s)}start(){this.reset(),this._state=1}put(e,t,s){if(this._state!==3){if(this._state===1)for(;t<s;){let n=e[t++];if(n===59){this._state=2,this._start();break}if(n<48||57<n){this._state=3;return}this._id===-1&&(this._id=0),this._id=this._id*10+n-48}this._state===2&&s-t>0&&this._put(e,t,s)}}end(e,t=!0){if(this._state!==0){if(this._state!==3)if(this._state===1&&this._start(),!this._active.length)this._handlerFb(this._id,"END",e);else{let s=!1,n=this._active.length-1,l=!1;if(this._stack.paused&&(n=this._stack.loopPosition-1,s=t,l=this._stack.fallThrough,this._stack.paused=!1),!l&&s===!1){for(;n>=0&&(s=this._active[n].end(e),s!==!0);n--)if(s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=n,this._stack.fallThrough=!1,s;n--}for(;n>=0;n--)if(s=this._active[n].end(!1),s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=n,this._stack.fallThrough=!0,s}this._active=qn,this._id=-1,this._state=0}}},hr=class{constructor(e){this._handler=e,this._data="",this._hitLimit=!1}start(){this._data="",this._hitLimit=!1}put(e,t,s){this._hitLimit||(this._data+=Ul(e,t,s),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}end(e){let t=!1;if(this._hitLimit)t=!1;else if(e&&(t=this._handler(this._data),t instanceof Promise))return t.then(s=>(this._data="",this._hitLimit=!1,s));return this._data="",this._hitLimit=!1,t}},Xn=[],sw=class{constructor(){this._handlers=Object.create(null),this._active=Xn,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=Xn}registerHandler(e,t){this._handlers[e]===void 0&&(this._handlers[e]=[]);let s=this._handlers[e];return s.push(t),{dispose:()=>{let n=s.indexOf(t);n!==-1&&s.splice(n,1)}}}clearHandler(e){this._handlers[e]&&delete this._handlers[e]}setHandlerFallback(e){this._handlerFb=e}reset(){if(this._active.length)for(let e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=Xn,this._ident=0}hook(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||Xn,!this._active.length)this._handlerFb(this._ident,"HOOK",t);else for(let s=this._active.length-1;s>=0;s--)this._active[s].hook(t)}put(e,t,s){if(!this._active.length)this._handlerFb(this._ident,"PUT",Ul(e,t,s));else for(let n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,s)}unhook(e,t=!0){if(!this._active.length)this._handlerFb(this._ident,"UNHOOK",e);else{let s=!1,n=this._active.length-1,l=!1;if(this._stack.paused&&(n=this._stack.loopPosition-1,s=t,l=this._stack.fallThrough,this._stack.paused=!1),!l&&s===!1){for(;n>=0&&(s=this._active[n].unhook(e),s!==!0);n--)if(s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=n,this._stack.fallThrough=!1,s;n--}for(;n>=0;n--)if(s=this._active[n].unhook(!1),s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=n,this._stack.fallThrough=!0,s}this._active=Xn,this._ident=0}},to=new Jp;to.addParam(0);var W_=class{constructor(e){this._handler=e,this._data="",this._params=to,this._hitLimit=!1}hook(e){this._params=e.length>1||e.params[0]?e.clone():to,this._data="",this._hitLimit=!1}put(e,t,s){this._hitLimit||(this._data+=Ul(e,t,s),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}unhook(e){let t=!1;if(this._hitLimit)t=!1;else if(e&&(t=this._handler(this._data,this._params),t instanceof Promise))return t.then(s=>(this._params=to,this._data="",this._hitLimit=!1,s));return this._params=to,this._data="",this._hitLimit=!1,t}},nw=class{constructor(e){this.table=new Uint8Array(e)}setDefault(e,t){this.table.fill(e<<4|t)}add(e,t,s,n){this.table[t<<8|e]=s<<4|n}addMany(e,t,s,n){for(let l=0;l<e.length;l++)this.table[t<<8|e[l]]=s<<4|n}},Mr=160,ow=(function(){let e=new nw(4095),t=Array.apply(null,Array(256)).map((f,p)=>p),s=(f,p)=>t.slice(f,p),n=s(32,127),l=s(0,24);l.push(25),l.push.apply(l,s(28,32));let c=s(0,14),h;e.setDefault(1,0),e.addMany(n,0,2,0);for(h in c)e.addMany([24,26,153,154],h,3,0),e.addMany(s(128,144),h,3,0),e.addMany(s(144,152),h,3,0),e.add(156,h,0,0),e.add(27,h,11,1),e.add(157,h,4,8),e.addMany([152,158,159],h,0,7),e.add(155,h,11,3),e.add(144,h,11,9);return e.addMany(l,0,3,0),e.addMany(l,1,3,1),e.add(127,1,0,1),e.addMany(l,8,0,8),e.addMany(l,3,3,3),e.add(127,3,0,3),e.addMany(l,4,3,4),e.add(127,4,0,4),e.addMany(l,6,3,6),e.addMany(l,5,3,5),e.add(127,5,0,5),e.addMany(l,2,3,2),e.add(127,2,0,2),e.add(93,1,4,8),e.addMany(n,8,5,8),e.add(127,8,5,8),e.addMany([156,27,24,26,7],8,6,0),e.addMany(s(28,32),8,0,8),e.addMany([88,94,95],1,0,7),e.addMany(n,7,0,7),e.addMany(l,7,0,7),e.add(156,7,0,0),e.add(127,7,0,7),e.add(91,1,11,3),e.addMany(s(64,127),3,7,0),e.addMany(s(48,60),3,8,4),e.addMany([60,61,62,63],3,9,4),e.addMany(s(48,60),4,8,4),e.addMany(s(64,127),4,7,0),e.addMany([60,61,62,63],4,0,6),e.addMany(s(32,64),6,0,6),e.add(127,6,0,6),e.addMany(s(64,127),6,0,0),e.addMany(s(32,48),3,9,5),e.addMany(s(32,48),5,9,5),e.addMany(s(48,64),5,0,6),e.addMany(s(64,127),5,7,0),e.addMany(s(32,48),4,9,5),e.addMany(s(32,48),1,9,2),e.addMany(s(32,48),2,9,2),e.addMany(s(48,127),2,10,0),e.addMany(s(48,80),1,10,0),e.addMany(s(81,88),1,10,0),e.addMany([89,90,92],1,10,0),e.addMany(s(96,127),1,10,0),e.add(80,1,11,9),e.addMany(l,9,0,9),e.add(127,9,0,9),e.addMany(s(28,32),9,0,9),e.addMany(s(32,48),9,9,12),e.addMany(s(48,60),9,8,10),e.addMany([60,61,62,63],9,9,10),e.addMany(l,11,0,11),e.addMany(s(32,128),11,0,11),e.addMany(s(28,32),11,0,11),e.addMany(l,10,0,10),e.add(127,10,0,10),e.addMany(s(28,32),10,0,10),e.addMany(s(48,60),10,8,10),e.addMany([60,61,62,63],10,0,11),e.addMany(s(32,48),10,9,12),e.addMany(l,12,0,12),e.add(127,12,0,12),e.addMany(s(28,32),12,0,12),e.addMany(s(32,48),12,9,12),e.addMany(s(48,64),12,0,11),e.addMany(s(64,127),12,12,13),e.addMany(s(64,127),10,12,13),e.addMany(s(64,127),9,12,13),e.addMany(l,13,13,13),e.addMany(n,13,13,13),e.add(127,13,0,13),e.addMany([27,156,24,26],13,14,0),e.add(Mr,0,2,0),e.add(Mr,8,5,8),e.add(Mr,6,0,6),e.add(Mr,11,0,11),e.add(Mr,13,13,13),e})(),lw=class extends Ie{constructor(e=ow){super(),this._transitions=e,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new Jp,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(t,s,n)=>{},this._executeHandlerFb=t=>{},this._csiHandlerFb=(t,s)=>{},this._escHandlerFb=t=>{},this._errorHandlerFb=t=>t,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this._register(rt(()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)})),this._oscParser=this._register(new iw),this._dcsParser=this._register(new sw),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:"\\"},()=>!0)}_identifier(e,t=[64,126]){let s=0;if(e.prefix){if(e.prefix.length>1)throw new Error("only one byte as prefix supported");if(s=e.prefix.charCodeAt(0),s&&60>s||s>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(e.intermediates){if(e.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(let l=0;l<e.intermediates.length;++l){let c=e.intermediates.charCodeAt(l);if(32>c||c>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");s<<=8,s|=c}}if(e.final.length!==1)throw new Error("final must be a single byte");let n=e.final.charCodeAt(0);if(t[0]>n||n>t[1])throw new Error(`final must be in range ${t[0]} .. ${t[1]}`);return s<<=8,s|=n,s}identToString(e){let t=[];for(;e;)t.push(String.fromCharCode(e&255)),e>>=8;return t.reverse().join("")}setPrintHandler(e){this._printHandler=e}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(e,t){let s=this._identifier(e,[48,126]);this._escHandlers[s]===void 0&&(this._escHandlers[s]=[]);let n=this._escHandlers[s];return n.push(t),{dispose:()=>{let l=n.indexOf(t);l!==-1&&n.splice(l,1)}}}clearEscHandler(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]}setEscHandlerFallback(e){this._escHandlerFb=e}setExecuteHandler(e,t){this._executeHandlers[e.charCodeAt(0)]=t}clearExecuteHandler(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]}setExecuteHandlerFallback(e){this._executeHandlerFb=e}registerCsiHandler(e,t){let s=this._identifier(e);this._csiHandlers[s]===void 0&&(this._csiHandlers[s]=[]);let n=this._csiHandlers[s];return n.push(t),{dispose:()=>{let l=n.indexOf(t);l!==-1&&n.splice(l,1)}}}clearCsiHandler(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]}setCsiHandlerFallback(e){this._csiHandlerFb=e}registerDcsHandler(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)}clearDcsHandler(e){this._dcsParser.clearHandler(this._identifier(e))}setDcsHandlerFallback(e){this._dcsParser.setHandlerFallback(e)}registerOscHandler(e,t){return this._oscParser.registerHandler(e,t)}clearOscHandler(e){this._oscParser.clearHandler(e)}setOscHandlerFallback(e){this._oscParser.setHandlerFallback(e)}setErrorHandler(e){this._errorHandler=e}clearErrorHandler(){this._errorHandler=this._errorHandlerFb}reset(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._parseStack.state!==0&&(this._parseStack.state=2,this._parseStack.handlers=[])}_preserveStack(e,t,s,n,l){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=s,this._parseStack.transition=n,this._parseStack.chunkPos=l}parse(e,t,s){let n=0,l=0,c=0,h;if(this._parseStack.state)if(this._parseStack.state===2)this._parseStack.state=0,c=this._parseStack.chunkPos+1;else{if(s===void 0||this._parseStack.state===1)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");let f=this._parseStack.handlers,p=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(s===!1&&p>-1){for(;p>=0&&(h=f[p](this._params),h!==!0);p--)if(h instanceof Promise)return this._parseStack.handlerPos=p,h}this._parseStack.handlers=[];break;case 4:if(s===!1&&p>-1){for(;p>=0&&(h=f[p](),h!==!0);p--)if(h instanceof Promise)return this._parseStack.handlerPos=p,h}this._parseStack.handlers=[];break;case 6:if(n=e[this._parseStack.chunkPos],h=this._dcsParser.unhook(n!==24&&n!==26,s),h)return h;n===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=e[this._parseStack.chunkPos],h=this._oscParser.end(n!==24&&n!==26,s),h)return h;n===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break}this._parseStack.state=0,c=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=this._parseStack.transition&15}for(let f=c;f<t;++f){switch(n=e[f],l=this._transitions.table[this.currentState<<8|(n<160?n:Mr)],l>>4){case 2:for(let C=f+1;;++C){if(C>=t||(n=e[C])<32||n>126&&n<Mr){this._printHandler(e,f,C),f=C-1;break}if(++C>=t||(n=e[C])<32||n>126&&n<Mr){this._printHandler(e,f,C),f=C-1;break}if(++C>=t||(n=e[C])<32||n>126&&n<Mr){this._printHandler(e,f,C),f=C-1;break}if(++C>=t||(n=e[C])<32||n>126&&n<Mr){this._printHandler(e,f,C),f=C-1;break}}break;case 3:this._executeHandlers[n]?this._executeHandlers[n]():this._executeHandlerFb(n),this.precedingJoinState=0;break;case 0:break;case 1:if(this._errorHandler({position:f,code:n,currentState:this.currentState,collect:this._collect,params:this._params,abort:!1}).abort)return;break;case 7:let p=this._csiHandlers[this._collect<<8|n],d=p?p.length-1:-1;for(;d>=0&&(h=p[d](this._params),h!==!0);d--)if(h instanceof Promise)return this._preserveStack(3,p,d,l,f),h;d<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingJoinState=0;break;case 8:do switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}while(++f<t&&(n=e[f])>47&&n<60);f--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:let g=this._escHandlers[this._collect<<8|n],y=g?g.length-1:-1;for(;y>=0&&(h=g[y](),h!==!0);y--)if(h instanceof Promise)return this._preserveStack(4,g,y,l,f),h;y<0&&this._escHandlerFb(this._collect<<8|n),this.precedingJoinState=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(let C=f+1;;++C)if(C>=t||(n=e[C])===24||n===26||n===27||n>127&&n<Mr){this._dcsParser.put(e,f,C),f=C-1;break}break;case 14:if(h=this._dcsParser.unhook(n!==24&&n!==26),h)return this._preserveStack(6,[],0,l,f),h;n===27&&(l|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break;case 4:this._oscParser.start();break;case 5:for(let C=f+1;;C++)if(C>=t||(n=e[C])<32||n>127&&n<Mr){this._oscParser.put(e,f,C),f=C-1;break}break;case 6:if(h=this._oscParser.end(n!==24&&n!==26),h)return this._preserveStack(5,[],0,l,f),h;n===27&&(l|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break}this.currentState=l&15}}},aw=/^([\da-f])\/([\da-f])\/([\da-f])$|^([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})$|^([\da-f]{3})\/([\da-f]{3})\/([\da-f]{3})$|^([\da-f]{4})\/([\da-f]{4})\/([\da-f]{4})$/,cw=/^[\da-f]+$/;function F_(e){if(!e)return;let t=e.toLowerCase();if(t.indexOf("rgb:")===0){t=t.slice(4);let s=aw.exec(t);if(s){let n=s[1]?15:s[4]?255:s[7]?4095:65535;return[Math.round(parseInt(s[1]||s[4]||s[7]||s[10],16)/n*255),Math.round(parseInt(s[2]||s[5]||s[8]||s[11],16)/n*255),Math.round(parseInt(s[3]||s[6]||s[9]||s[12],16)/n*255)]}}else if(t.indexOf("#")===0&&(t=t.slice(1),cw.exec(t)&&[3,6,9,12].includes(t.length))){let s=t.length/3,n=[0,0,0];for(let l=0;l<3;++l){let c=parseInt(t.slice(s*l,s*l+s),16);n[l]=s===1?c<<4:s===2?c:s===3?c>>4:c>>8}return n}}function Gc(e,t){let s=e.toString(16),n=s.length<2?"0"+s:s;switch(t){case 4:return s[0];case 8:return n;case 12:return(n+n).slice(0,3);default:return n+n}}function hw(e,t=16){let[s,n,l]=e;return`rgb:${Gc(s,t)}/${Gc(n,t)}/${Gc(l,t)}`}var uw={"(":0,")":1,"*":2,"+":3,"-":1,".":2},qi=131072,H_=10;function j_(e,t){if(e>24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}var $_=5e3,K_=0,dw=class extends Ie{constructor(e,t,s,n,l,c,h,f,p=new lw){super(),this._bufferService=e,this._charsetService=t,this._coreService=s,this._logService=n,this._optionsService=l,this._oscLinkService=c,this._coreMouseService=h,this._unicodeService=f,this._parser=p,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new L0,this._utf8Decoder=new D0,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=pt.clone(),this._eraseAttrDataInternal=pt.clone(),this._onRequestBell=this._register(new ce),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this._register(new ce),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this._register(new ce),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this._register(new ce),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this._register(new ce),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this._register(new ce),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this._register(new ce),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this._register(new ce),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this._register(new ce),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this._register(new ce),this.onLineFeed=this._onLineFeed.event,this._onScroll=this._register(new ce),this.onScroll=this._onScroll.event,this._onTitleChange=this._register(new ce),this.onTitleChange=this._onTitleChange.event,this._onColor=this._register(new ce),this.onColor=this._onColor.event,this._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},this._specialColors=[256,257,258],this._register(this._parser),this._dirtyRowTracker=new Oh(this._bufferService),this._activeBuffer=this._bufferService.buffer,this._register(this._bufferService.buffers.onBufferActivate(d=>this._activeBuffer=d.activeBuffer)),this._parser.setCsiHandlerFallback((d,g)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(d),params:g.toArray()})}),this._parser.setEscHandlerFallback(d=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(d)})}),this._parser.setExecuteHandlerFallback(d=>{this._logService.debug("Unknown EXECUTE code: ",{code:d})}),this._parser.setOscHandlerFallback((d,g,y)=>{this._logService.debug("Unknown OSC code: ",{identifier:d,action:g,data:y})}),this._parser.setDcsHandlerFallback((d,g,y)=>{g==="HOOK"&&(y=y.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(d),action:g,payload:y})}),this._parser.setPrintHandler((d,g,y)=>this.print(d,g,y)),this._parser.registerCsiHandler({final:"@"},d=>this.insertChars(d)),this._parser.registerCsiHandler({intermediates:" ",final:"@"},d=>this.scrollLeft(d)),this._parser.registerCsiHandler({final:"A"},d=>this.cursorUp(d)),this._parser.registerCsiHandler({intermediates:" ",final:"A"},d=>this.scrollRight(d)),this._parser.registerCsiHandler({final:"B"},d=>this.cursorDown(d)),this._parser.registerCsiHandler({final:"C"},d=>this.cursorForward(d)),this._parser.registerCsiHandler({final:"D"},d=>this.cursorBackward(d)),this._parser.registerCsiHandler({final:"E"},d=>this.cursorNextLine(d)),this._parser.registerCsiHandler({final:"F"},d=>this.cursorPrecedingLine(d)),this._parser.registerCsiHandler({final:"G"},d=>this.cursorCharAbsolute(d)),this._parser.registerCsiHandler({final:"H"},d=>this.cursorPosition(d)),this._parser.registerCsiHandler({final:"I"},d=>this.cursorForwardTab(d)),this._parser.registerCsiHandler({final:"J"},d=>this.eraseInDisplay(d,!1)),this._parser.registerCsiHandler({prefix:"?",final:"J"},d=>this.eraseInDisplay(d,!0)),this._parser.registerCsiHandler({final:"K"},d=>this.eraseInLine(d,!1)),this._parser.registerCsiHandler({prefix:"?",final:"K"},d=>this.eraseInLine(d,!0)),this._parser.registerCsiHandler({final:"L"},d=>this.insertLines(d)),this._parser.registerCsiHandler({final:"M"},d=>this.deleteLines(d)),this._parser.registerCsiHandler({final:"P"},d=>this.deleteChars(d)),this._parser.registerCsiHandler({final:"S"},d=>this.scrollUp(d)),this._parser.registerCsiHandler({final:"T"},d=>this.scrollDown(d)),this._parser.registerCsiHandler({final:"X"},d=>this.eraseChars(d)),this._parser.registerCsiHandler({final:"Z"},d=>this.cursorBackwardTab(d)),this._parser.registerCsiHandler({final:"`"},d=>this.charPosAbsolute(d)),this._parser.registerCsiHandler({final:"a"},d=>this.hPositionRelative(d)),this._parser.registerCsiHandler({final:"b"},d=>this.repeatPrecedingCharacter(d)),this._parser.registerCsiHandler({final:"c"},d=>this.sendDeviceAttributesPrimary(d)),this._parser.registerCsiHandler({prefix:">",final:"c"},d=>this.sendDeviceAttributesSecondary(d)),this._parser.registerCsiHandler({final:"d"},d=>this.linePosAbsolute(d)),this._parser.registerCsiHandler({final:"e"},d=>this.vPositionRelative(d)),this._parser.registerCsiHandler({final:"f"},d=>this.hVPosition(d)),this._parser.registerCsiHandler({final:"g"},d=>this.tabClear(d)),this._parser.registerCsiHandler({final:"h"},d=>this.setMode(d)),this._parser.registerCsiHandler({prefix:"?",final:"h"},d=>this.setModePrivate(d)),this._parser.registerCsiHandler({final:"l"},d=>this.resetMode(d)),this._parser.registerCsiHandler({prefix:"?",final:"l"},d=>this.resetModePrivate(d)),this._parser.registerCsiHandler({final:"m"},d=>this.charAttributes(d)),this._parser.registerCsiHandler({final:"n"},d=>this.deviceStatus(d)),this._parser.registerCsiHandler({prefix:"?",final:"n"},d=>this.deviceStatusPrivate(d)),this._parser.registerCsiHandler({intermediates:"!",final:"p"},d=>this.softReset(d)),this._parser.registerCsiHandler({intermediates:" ",final:"q"},d=>this.setCursorStyle(d)),this._parser.registerCsiHandler({final:"r"},d=>this.setScrollRegion(d)),this._parser.registerCsiHandler({final:"s"},d=>this.saveCursor(d)),this._parser.registerCsiHandler({final:"t"},d=>this.windowOptions(d)),this._parser.registerCsiHandler({final:"u"},d=>this.restoreCursor(d)),this._parser.registerCsiHandler({intermediates:"'",final:"}"},d=>this.insertColumns(d)),this._parser.registerCsiHandler({intermediates:"'",final:"~"},d=>this.deleteColumns(d)),this._parser.registerCsiHandler({intermediates:'"',final:"q"},d=>this.selectProtected(d)),this._parser.registerCsiHandler({intermediates:"$",final:"p"},d=>this.requestMode(d,!0)),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},d=>this.requestMode(d,!1)),this._parser.setExecuteHandler(G.BEL,()=>this.bell()),this._parser.setExecuteHandler(G.LF,()=>this.lineFeed()),this._parser.setExecuteHandler(G.VT,()=>this.lineFeed()),this._parser.setExecuteHandler(G.FF,()=>this.lineFeed()),this._parser.setExecuteHandler(G.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler(G.BS,()=>this.backspace()),this._parser.setExecuteHandler(G.HT,()=>this.tab()),this._parser.setExecuteHandler(G.SO,()=>this.shiftOut()),this._parser.setExecuteHandler(G.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(Dl.IND,()=>this.index()),this._parser.setExecuteHandler(Dl.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(Dl.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new hr(d=>(this.setTitle(d),this.setIconName(d),!0))),this._parser.registerOscHandler(1,new hr(d=>this.setIconName(d))),this._parser.registerOscHandler(2,new hr(d=>this.setTitle(d))),this._parser.registerOscHandler(4,new hr(d=>this.setOrReportIndexedColor(d))),this._parser.registerOscHandler(8,new hr(d=>this.setHyperlink(d))),this._parser.registerOscHandler(10,new hr(d=>this.setOrReportFgColor(d))),this._parser.registerOscHandler(11,new hr(d=>this.setOrReportBgColor(d))),this._parser.registerOscHandler(12,new hr(d=>this.setOrReportCursorColor(d))),this._parser.registerOscHandler(104,new hr(d=>this.restoreIndexedColor(d))),this._parser.registerOscHandler(110,new hr(d=>this.restoreFgColor(d))),this._parser.registerOscHandler(111,new hr(d=>this.restoreBgColor(d))),this._parser.registerOscHandler(112,new hr(d=>this.restoreCursorColor(d))),this._parser.registerEscHandler({final:"7"},()=>this.saveCursor()),this._parser.registerEscHandler({final:"8"},()=>this.restoreCursor()),this._parser.registerEscHandler({final:"D"},()=>this.index()),this._parser.registerEscHandler({final:"E"},()=>this.nextLine()),this._parser.registerEscHandler({final:"H"},()=>this.tabSet()),this._parser.registerEscHandler({final:"M"},()=>this.reverseIndex()),this._parser.registerEscHandler({final:"="},()=>this.keypadApplicationMode()),this._parser.registerEscHandler({final:">"},()=>this.keypadNumericMode()),this._parser.registerEscHandler({final:"c"},()=>this.fullReset()),this._parser.registerEscHandler({final:"n"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"o"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"|"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"}"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"~"},()=>this.setgLevel(1)),this._parser.registerEscHandler({intermediates:"%",final:"@"},()=>this.selectDefaultCharset()),this._parser.registerEscHandler({intermediates:"%",final:"G"},()=>this.selectDefaultCharset());for(let d in wt)this._parser.registerEscHandler({intermediates:"(",final:d},()=>this.selectCharset("("+d)),this._parser.registerEscHandler({intermediates:")",final:d},()=>this.selectCharset(")"+d)),this._parser.registerEscHandler({intermediates:"*",final:d},()=>this.selectCharset("*"+d)),this._parser.registerEscHandler({intermediates:"+",final:d},()=>this.selectCharset("+"+d)),this._parser.registerEscHandler({intermediates:"-",final:d},()=>this.selectCharset("-"+d)),this._parser.registerEscHandler({intermediates:".",final:d},()=>this.selectCharset("."+d)),this._parser.registerEscHandler({intermediates:"/",final:d},()=>this.selectCharset("/"+d));this._parser.registerEscHandler({intermediates:"#",final:"8"},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(d=>(this._logService.error("Parsing error: ",d),d)),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new W_((d,g)=>this.requestStatusString(d,g)))}getAttrData(){return this._curAttrData}_preserveStack(e,t,s,n){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=s,this._parseStack.position=n}_logSlowResolvingAsync(e){this._logService.logLevel<=3&&Promise.race([e,new Promise((t,s)=>setTimeout(()=>s("#SLOW_TIMEOUT"),$_))]).catch(t=>{if(t!=="#SLOW_TIMEOUT")throw t;console.warn(`async parser handler taking longer than ${$_} ms`)})}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(e,t){let s,n=this._activeBuffer.x,l=this._activeBuffer.y,c=0,h=this._parseStack.paused;if(h){if(s=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(s),s;n=this._parseStack.cursorStartX,l=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>qi&&(c=this._parseStack.position+qi)}if(this._logService.logLevel<=1&&this._logService.debug(`parsing data ${typeof e=="string"?` "${e}"`:` "${Array.prototype.map.call(e,d=>String.fromCharCode(d)).join("")}"`}`),this._logService.logLevel===0&&this._logService.trace("parsing data (codes)",typeof e=="string"?e.split("").map(d=>d.charCodeAt(0)):e),this._parseBuffer.length<e.length&&this._parseBuffer.length<qi&&(this._parseBuffer=new Uint32Array(Math.min(e.length,qi))),h||this._dirtyRowTracker.clearRange(),e.length>qi)for(let d=c;d<e.length;d+=qi){let g=d+qi<e.length?d+qi:e.length,y=typeof e=="string"?this._stringDecoder.decode(e.substring(d,g),this._parseBuffer):this._utf8Decoder.decode(e.subarray(d,g),this._parseBuffer);if(s=this._parser.parse(this._parseBuffer,y))return this._preserveStack(n,l,y,d),this._logSlowResolvingAsync(s),s}else if(!h){let d=typeof e=="string"?this._stringDecoder.decode(e,this._parseBuffer):this._utf8Decoder.decode(e,this._parseBuffer);if(s=this._parser.parse(this._parseBuffer,d))return this._preserveStack(n,l,d,0),this._logSlowResolvingAsync(s),s}(this._activeBuffer.x!==n||this._activeBuffer.y!==l)&&this._onCursorMove.fire();let f=this._dirtyRowTracker.end+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp),p=this._dirtyRowTracker.start+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp);p<this._bufferService.rows&&this._onRequestRefreshRows.fire({start:Math.min(p,this._bufferService.rows-1),end:Math.min(f,this._bufferService.rows-1)})}print(e,t,s){let n,l,c=this._charsetService.charset,h=this._optionsService.rawOptions.screenReaderMode,f=this._bufferService.cols,p=this._coreService.decPrivateModes.wraparound,d=this._coreService.modes.insertMode,g=this._curAttrData,y=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._activeBuffer.x&&s-t>0&&y.getWidth(this._activeBuffer.x-1)===2&&y.setCellFromCodepoint(this._activeBuffer.x-1,0,1,g);let C=this._parser.precedingJoinState;for(let S=t;S<s;++S){if(n=e[S],n<127&&c){let L=c[String.fromCharCode(n)];L&&(n=L.charCodeAt(0))}let v=this._unicodeService.charProperties(n,C);l=ws.extractWidth(v);let w=ws.extractShouldJoin(v),E=w?ws.extractWidth(C):0;if(C=v,h&&this._onA11yChar.fire(Xi(n)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+l-E>f){if(p){let L=y,j=this._activeBuffer.x-E;for(this._activeBuffer.x=E,this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData(),!0)):(this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!0),y=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),E>0&&y instanceof Zn&&y.copyCellsFrom(L,j,0,E,!1);j<f;)L.setCellFromCodepoint(j++,0,1,g)}else if(this._activeBuffer.x=f-1,l===2)continue}if(w&&this._activeBuffer.x){let L=y.getWidth(this._activeBuffer.x-1)?1:2;y.addCodepointToCell(this._activeBuffer.x-L,n,l);for(let j=l-E;--j>=0;)y.setCellFromCodepoint(this._activeBuffer.x++,0,0,g);continue}if(d&&(y.insertCells(this._activeBuffer.x,l-E,this._activeBuffer.getNullCell(g)),y.getWidth(f-1)===2&&y.setCellFromCodepoint(f-1,0,1,g)),y.setCellFromCodepoint(this._activeBuffer.x++,n,l,g),l>0)for(;--l;)y.setCellFromCodepoint(this._activeBuffer.x++,0,0,g)}this._parser.precedingJoinState=C,this._activeBuffer.x<f&&s-t>0&&y.getWidth(this._activeBuffer.x)===0&&!y.hasContent(this._activeBuffer.x)&&y.setCellFromCodepoint(this._activeBuffer.x,0,1,g),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(e,t){return e.final==="t"&&!e.prefix&&!e.intermediates?this._parser.registerCsiHandler(e,s=>j_(s.params[0],this._optionsService.rawOptions.windowOptions)?t(s):!0):this._parser.registerCsiHandler(e,t)}registerDcsHandler(e,t){return this._parser.registerDcsHandler(e,new W_(t))}registerEscHandler(e,t){return this._parser.registerEscHandler(e,t)}registerOscHandler(e,t){return this._parser.registerOscHandler(e,new hr(t))}bell(){return this._onRequestBell.fire(),!0}lineFeed(){return this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._optionsService.rawOptions.convertEol&&(this._activeBuffer.x=0),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows?this._activeBuffer.y=this._bufferService.rows-1:this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.x>=this._bufferService.cols&&this._activeBuffer.x--,this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._onLineFeed.fire(),!0}carriageReturn(){return this._activeBuffer.x=0,!0}backspace(){if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),this._activeBuffer.x>0&&this._activeBuffer.x--,!0;if(this._restrictCursor(this._bufferService.cols),this._activeBuffer.x>0)this._activeBuffer.x--;else if(this._activeBuffer.x===0&&this._activeBuffer.y>this._activeBuffer.scrollTop&&this._activeBuffer.y<=this._activeBuffer.scrollBottom&&this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y)?.isWrapped){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);e.hasWidth(this._activeBuffer.x)&&!e.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let e=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-e),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(e=this._bufferService.cols-1){this._activeBuffer.x=Math.min(e,Math.max(0,this._activeBuffer.x)),this._activeBuffer.y=this._coreService.decPrivateModes.origin?Math.min(this._activeBuffer.scrollBottom,Math.max(this._activeBuffer.scrollTop,this._activeBuffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._activeBuffer.y)),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_setCursor(e,t){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=e,this._activeBuffer.y=this._activeBuffer.scrollTop+t):(this._activeBuffer.x=e,this._activeBuffer.y=t),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(e,t){this._restrictCursor(),this._setCursor(this._activeBuffer.x+e,this._activeBuffer.y+t)}cursorUp(e){let t=this._activeBuffer.y-this._activeBuffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0}cursorDown(e){let t=this._activeBuffer.scrollBottom-this._activeBuffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0}cursorForward(e){return this._moveCursor(e.params[0]||1,0),!0}cursorBackward(e){return this._moveCursor(-(e.params[0]||1),0),!0}cursorNextLine(e){return this.cursorDown(e),this._activeBuffer.x=0,!0}cursorPrecedingLine(e){return this.cursorUp(e),this._activeBuffer.x=0,!0}cursorCharAbsolute(e){return this._setCursor((e.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0}charPosAbsolute(e){return this._setCursor((e.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(e){return this._moveCursor(e.params[0]||1,0),!0}linePosAbsolute(e){return this._setCursor(this._activeBuffer.x,(e.params[0]||1)-1),!0}vPositionRelative(e){return this._moveCursor(0,e.params[0]||1),!0}hVPosition(e){return this.cursorPosition(e),!0}tabClear(e){let t=e.params[0];return t===0?delete this._activeBuffer.tabs[this._activeBuffer.x]:t===3&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(e){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=e.params[0]||1;for(;t--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(e){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=e.params[0]||1;for(;t--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(e){let t=e.params[0];return t===1&&(this._curAttrData.bg|=536870912),(t===2||t===0)&&(this._curAttrData.bg&=-536870913),!0}_eraseInBufferLine(e,t,s,n=!1,l=!1){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);c.replaceCells(t,s,this._activeBuffer.getNullCell(this._eraseAttrData()),l),n&&(c.isWrapped=!1)}_resetBufferLine(e,t=!1){let s=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);s&&(s.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),t),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+e),s.isWrapped=!1)}eraseInDisplay(e,t=!1){this._restrictCursor(this._bufferService.cols);let s;switch(e.params[0]){case 0:for(s=this._activeBuffer.y,this._dirtyRowTracker.markDirty(s),this._eraseInBufferLine(s++,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,t);s<this._bufferService.rows;s++)this._resetBufferLine(s,t);this._dirtyRowTracker.markDirty(s);break;case 1:for(s=this._activeBuffer.y,this._dirtyRowTracker.markDirty(s),this._eraseInBufferLine(s,0,this._activeBuffer.x+1,!0,t),this._activeBuffer.x+1>=this._bufferService.cols&&(this._activeBuffer.lines.get(s+1).isWrapped=!1);s--;)this._resetBufferLine(s,t);this._dirtyRowTracker.markDirty(0);break;case 2:if(this._optionsService.rawOptions.scrollOnEraseInDisplay){for(s=this._bufferService.rows,this._dirtyRowTracker.markRangeDirty(0,s-1);s--&&!this._activeBuffer.lines.get(this._activeBuffer.ybase+s)?.getTrimmedLength(););for(;s>=0;s--)this._bufferService.scroll(this._eraseAttrData())}else{for(s=this._bufferService.rows,this._dirtyRowTracker.markDirty(s-1);s--;)this._resetBufferLine(s,t);this._dirtyRowTracker.markDirty(0)}break;case 3:let n=this._activeBuffer.lines.length-this._bufferService.rows;n>0&&(this._activeBuffer.lines.trimStart(n),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-n,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-n,0),this._onScroll.fire(0));break}return!0}eraseInLine(e,t=!1){switch(this._restrictCursor(this._bufferService.cols),e.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,t);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,t);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,t);break}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(e){this._restrictCursor();let t=e.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let s=this._activeBuffer.ybase+this._activeBuffer.y,n=this._bufferService.rows-1-this._activeBuffer.scrollBottom,l=this._bufferService.rows-1+this._activeBuffer.ybase-n+1;for(;t--;)this._activeBuffer.lines.splice(l-1,1),this._activeBuffer.lines.splice(s,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}deleteLines(e){this._restrictCursor();let t=e.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let s=this._activeBuffer.ybase+this._activeBuffer.y,n;for(n=this._bufferService.rows-1-this._activeBuffer.scrollBottom,n=this._bufferService.rows-1+this._activeBuffer.ybase-n;t--;)this._activeBuffer.lines.splice(s,1),this._activeBuffer.lines.splice(n,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}insertChars(e){this._restrictCursor();let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return t&&(t.insertCells(this._activeBuffer.x,e.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}deleteChars(e){this._restrictCursor();let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return t&&(t.deleteCells(this._activeBuffer.x,e.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}scrollUp(e){let t=e.params[0]||1;for(;t--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollDown(e){let t=e.params[0]||1;for(;t--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,0,this._activeBuffer.getBlankLine(pt));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollLeft(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);n.deleteCells(0,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollRight(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);n.insertCells(0,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}insertColumns(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);n.insertCells(this._activeBuffer.x,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}deleteColumns(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);n.deleteCells(this._activeBuffer.x,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}eraseChars(e){this._restrictCursor();let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return t&&(t.replaceCells(this._activeBuffer.x,this._activeBuffer.x+(e.params[0]||1),this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}repeatPrecedingCharacter(e){let t=this._parser.precedingJoinState;if(!t)return!0;let s=e.params[0]||1,n=ws.extractWidth(t),l=this._activeBuffer.x-n,c=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).getString(l),h=new Uint32Array(c.length*s),f=0;for(let d=0;d<c.length;){let g=c.codePointAt(d)||0;h[f++]=g,d+=g>65535?2:1}let p=f;for(let d=1;d<s;++d)h.copyWithin(p,0,f),p+=f;return this.print(h,0,p),!0}sendDeviceAttributesPrimary(e){return e.params[0]>0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(G.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(G.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(e){return e.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(G.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(G.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(e.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(G.ESC+"[>83;40003;0c")),!0}_is(e){return(this._optionsService.rawOptions.termName+"").indexOf(e)===0}setMode(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 4:this._coreService.modes.insertMode=!0;break;case 20:this._optionsService.options.convertEol=!0;break}return!0}setModePrivate(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!0;break;case 2:this._charsetService.setgCharset(0,ys),this._charsetService.setgCharset(1,ys),this._charsetService.setgCharset(2,ys),this._charsetService.setgCharset(3,ys);break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(132,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!0,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!0;break;case 12:this._optionsService.options.cursorBlink=!0;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!0;break;case 66:this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire();break;case 9:this._coreMouseService.activeProtocol="X10";break;case 1e3:this._coreMouseService.activeProtocol="VT200";break;case 1002:this._coreMouseService.activeProtocol="DRAG";break;case 1003:this._coreMouseService.activeProtocol="ANY";break;case 1004:this._coreService.decPrivateModes.sendFocus=!0,this._onRequestSendFocus.fire();break;case 1005:this._logService.debug("DECSET 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="SGR";break;case 1015:this._logService.debug("DECSET 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="SGR_PIXELS";break;case 25:this._coreService.isCursorHidden=!1;break;case 1048:this.saveCursor();break;case 1049:this.saveCursor();case 47:case 1047:this._bufferService.buffers.activateAltBuffer(this._eraseAttrData()),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!0;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!0;break}return!0}resetMode(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 4:this._coreService.modes.insertMode=!1;break;case 20:this._optionsService.options.convertEol=!1;break}return!0}resetModePrivate(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!1;break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(80,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!1,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!1;break;case 12:this._optionsService.options.cursorBlink=!1;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!1;break;case 66:this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire();break;case 9:case 1e3:case 1002:case 1003:this._coreMouseService.activeProtocol="NONE";break;case 1004:this._coreService.decPrivateModes.sendFocus=!1;break;case 1005:this._logService.debug("DECRST 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="DEFAULT";break;case 1015:this._logService.debug("DECRST 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="DEFAULT";break;case 25:this._coreService.isCursorHidden=!0;break;case 1048:this.restoreCursor();break;case 1049:case 47:case 1047:this._bufferService.buffers.activateNormalBuffer(),e.params[t]===1049&&this.restoreCursor(),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!1;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!1,this._onRequestRefreshRows.fire(void 0);break}return!0}requestMode(e,t){let s;(w=>(w[w.NOT_RECOGNIZED=0]="NOT_RECOGNIZED",w[w.SET=1]="SET",w[w.RESET=2]="RESET",w[w.PERMANENTLY_SET=3]="PERMANENTLY_SET",w[w.PERMANENTLY_RESET=4]="PERMANENTLY_RESET"))(s||={});let n=this._coreService.decPrivateModes,{activeProtocol:l,activeEncoding:c}=this._coreMouseService,h=this._coreService,{buffers:f,cols:p}=this._bufferService,{active:d,alt:g}=f,y=this._optionsService.rawOptions,C=(w,E)=>(h.triggerDataEvent(`${G.ESC}[${t?"":"?"}${w};${E}$y`),!0),S=w=>w?1:2,v=e.params[0];return t?v===2?C(v,4):v===4?C(v,S(h.modes.insertMode)):v===12?C(v,3):v===20?C(v,S(y.convertEol)):C(v,0):v===1?C(v,S(n.applicationCursorKeys)):v===3?C(v,y.windowOptions.setWinLines?p===80?2:p===132?1:0:0):v===6?C(v,S(n.origin)):v===7?C(v,S(n.wraparound)):v===8?C(v,3):v===9?C(v,S(l==="X10")):v===12?C(v,S(y.cursorBlink)):v===25?C(v,S(!h.isCursorHidden)):v===45?C(v,S(n.reverseWraparound)):v===66?C(v,S(n.applicationKeypad)):v===67?C(v,4):v===1e3?C(v,S(l==="VT200")):v===1002?C(v,S(l==="DRAG")):v===1003?C(v,S(l==="ANY")):v===1004?C(v,S(n.sendFocus)):v===1005?C(v,4):v===1006?C(v,S(c==="SGR")):v===1015?C(v,4):v===1016?C(v,S(c==="SGR_PIXELS")):v===1048?C(v,1):v===47||v===1047||v===1049?C(v,S(d===g)):v===2004?C(v,S(n.bracketedPasteMode)):v===2026?C(v,S(n.synchronizedOutput)):C(v,0)}_updateAttrColor(e,t,s,n,l){return t===2?(e|=50331648,e&=-16777216,e|=uo.fromColorRGB([s,n,l])):t===5&&(e&=-50331904,e|=33554432|s&255),e}_extractColor(e,t,s){let n=[0,0,-1,0,0,0],l=0,c=0;do{if(n[c+l]=e.params[t+c],e.hasSubParams(t+c)){let h=e.getSubParams(t+c),f=0;do n[1]===5&&(l=1),n[c+f+1+l]=h[f];while(++f<h.length&&f+c+1+l<n.length);break}if(n[1]===5&&c+l>=2||n[1]===2&&c+l>=5)break;n[1]&&(l=1)}while(++c+t<e.length&&c+l<n.length);for(let h=2;h<n.length;++h)n[h]===-1&&(n[h]=0);switch(n[0]){case 38:s.fg=this._updateAttrColor(s.fg,n[1],n[3],n[4],n[5]);break;case 48:s.bg=this._updateAttrColor(s.bg,n[1],n[3],n[4],n[5]);break;case 58:s.extended=s.extended.clone(),s.extended.underlineColor=this._updateAttrColor(s.extended.underlineColor,n[1],n[3],n[4],n[5])}return c}_processUnderline(e,t){t.extended=t.extended.clone(),(!~e||e>5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,e===0&&(t.fg&=-268435457),t.updateExtended()}_processSGR0(e){e.fg=pt.fg,e.bg=pt.bg,e.extended=e.extended.clone(),e.extended.underlineStyle=0,e.extended.underlineColor&=-67108864,e.updateExtended()}charAttributes(e){if(e.length===1&&e.params[0]===0)return this._processSGR0(this._curAttrData),!0;let t=e.length,s,n=this._curAttrData;for(let l=0;l<t;l++)s=e.params[l],s>=30&&s<=37?(n.fg&=-50331904,n.fg|=16777216|s-30):s>=40&&s<=47?(n.bg&=-50331904,n.bg|=16777216|s-40):s>=90&&s<=97?(n.fg&=-50331904,n.fg|=16777216|s-90|8):s>=100&&s<=107?(n.bg&=-50331904,n.bg|=16777216|s-100|8):s===0?this._processSGR0(n):s===1?n.fg|=134217728:s===3?n.bg|=67108864:s===4?(n.fg|=268435456,this._processUnderline(e.hasSubParams(l)?e.getSubParams(l)[0]:1,n)):s===5?n.fg|=536870912:s===7?n.fg|=67108864:s===8?n.fg|=1073741824:s===9?n.fg|=2147483648:s===2?n.bg|=134217728:s===21?this._processUnderline(2,n):s===22?(n.fg&=-134217729,n.bg&=-134217729):s===23?n.bg&=-67108865:s===24?(n.fg&=-268435457,this._processUnderline(0,n)):s===25?n.fg&=-536870913:s===27?n.fg&=-67108865:s===28?n.fg&=-1073741825:s===29?n.fg&=2147483647:s===39?(n.fg&=-67108864,n.fg|=pt.fg&16777215):s===49?(n.bg&=-67108864,n.bg|=pt.bg&16777215):s===38||s===48||s===58?l+=this._extractColor(e,l,n):s===53?n.bg|=1073741824:s===55?n.bg&=-1073741825:s===59?(n.extended=n.extended.clone(),n.extended.underlineColor=-1,n.updateExtended()):s===100?(n.fg&=-67108864,n.fg|=pt.fg&16777215,n.bg&=-67108864,n.bg|=pt.bg&16777215):this._logService.debug("Unknown SGR attribute: %d.",s);return!0}deviceStatus(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(`${G.ESC}[0n`);break;case 6:let t=this._activeBuffer.y+1,s=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${G.ESC}[${t};${s}R`);break}return!0}deviceStatusPrivate(e){switch(e.params[0]){case 6:let t=this._activeBuffer.y+1,s=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${G.ESC}[?${t};${s}R`);break}return!0}softReset(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=pt.clone(),this._coreService.reset(),this._charsetService.reset(),this._activeBuffer.savedX=0,this._activeBuffer.savedY=this._activeBuffer.ybase,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0}setCursorStyle(e){let t=e.length===0?1:e.params[0];if(t===0)this._coreService.decPrivateModes.cursorStyle=void 0,this._coreService.decPrivateModes.cursorBlink=void 0;else{switch(t){case 1:case 2:this._coreService.decPrivateModes.cursorStyle="block";break;case 3:case 4:this._coreService.decPrivateModes.cursorStyle="underline";break;case 5:case 6:this._coreService.decPrivateModes.cursorStyle="bar";break}let s=t%2===1;this._coreService.decPrivateModes.cursorBlink=s}return!0}setScrollRegion(e){let t=e.params[0]||1,s;return(e.length<2||(s=e.params[1])>this._bufferService.rows||s===0)&&(s=this._bufferService.rows),s>t&&(this._activeBuffer.scrollTop=t-1,this._activeBuffer.scrollBottom=s-1,this._setCursor(0,0)),!0}windowOptions(e){if(!j_(e.params[0],this._optionsService.rawOptions.windowOptions))return!0;let t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:t!==2&&this._onRequestWindowsOptionsReport.fire(0);break;case 16:this._onRequestWindowsOptionsReport.fire(1);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${G.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:(t===0||t===2)&&(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>H_&&this._windowTitleStack.shift()),(t===0||t===1)&&(this._iconNameStack.push(this._iconName),this._iconNameStack.length>H_&&this._iconNameStack.shift());break;case 23:(t===0||t===2)&&this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),(t===0||t===1)&&this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop());break}return!0}saveCursor(e){return this._activeBuffer.savedX=this._activeBuffer.x,this._activeBuffer.savedY=this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,!0}restoreCursor(e){return this._activeBuffer.x=this._activeBuffer.savedX||0,this._activeBuffer.y=Math.max(this._activeBuffer.savedY-this._activeBuffer.ybase,0),this._curAttrData.fg=this._activeBuffer.savedCurAttrData.fg,this._curAttrData.bg=this._activeBuffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._activeBuffer.savedCharset&&(this._charsetService.charset=this._activeBuffer.savedCharset),this._restrictCursor(),!0}setTitle(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0}setIconName(e){return this._iconName=e,!0}setOrReportIndexedColor(e){let t=[],s=e.split(";");for(;s.length>1;){let n=s.shift(),l=s.shift();if(/^\d+$/.exec(n)){let c=parseInt(n);if(U_(c))if(l==="?")t.push({type:0,index:c});else{let h=F_(l);h&&t.push({type:1,index:c,color:h})}}}return t.length&&this._onColor.fire(t),!0}setHyperlink(e){let t=e.indexOf(";");if(t===-1)return!0;let s=e.slice(0,t).trim(),n=e.slice(t+1);return n?this._createHyperlink(s,n):s.trim()?!1:this._finishHyperlink()}_createHyperlink(e,t){this._getCurrentLinkId()&&this._finishHyperlink();let s=e.split(":"),n,l=s.findIndex(c=>c.startsWith("id="));return l!==-1&&(n=s[l].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:n,uri:t}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(e,t){let s=e.split(";");for(let n=0;n<s.length&&!(t>=this._specialColors.length);++n,++t)if(s[n]==="?")this._onColor.fire([{type:0,index:this._specialColors[t]}]);else{let l=F_(s[n]);l&&this._onColor.fire([{type:1,index:this._specialColors[t],color:l}])}return!0}setOrReportFgColor(e){return this._setOrReportSpecialColor(e,0)}setOrReportBgColor(e){return this._setOrReportSpecialColor(e,1)}setOrReportCursorColor(e){return this._setOrReportSpecialColor(e,2)}restoreIndexedColor(e){if(!e)return this._onColor.fire([{type:2}]),!0;let t=[],s=e.split(";");for(let n=0;n<s.length;++n)if(/^\d+$/.exec(s[n])){let l=parseInt(s[n]);U_(l)&&t.push({type:2,index:l})}return t.length&&this._onColor.fire(t),!0}restoreFgColor(e){return this._onColor.fire([{type:2,index:256}]),!0}restoreBgColor(e){return this._onColor.fire([{type:2,index:257}]),!0}restoreCursorColor(e){return this._onColor.fire([{type:2,index:258}]),!0}nextLine(){return this._activeBuffer.x=0,this.index(),!0}keypadApplicationMode(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0}keypadNumericMode(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0}selectDefaultCharset(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,ys),!0}selectCharset(e){return e.length!==2?(this.selectDefaultCharset(),!0):(e[0]==="/"||this._charsetService.setgCharset(uw[e[0]],wt[e[1]]||ys),!0)}index(){return this._restrictCursor(),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._restrictCursor(),!0}tabSet(){return this._activeBuffer.tabs[this._activeBuffer.x]=!0,!0}reverseIndex(){if(this._restrictCursor(),this._activeBuffer.y===this._activeBuffer.scrollTop){let e=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,e,1),this._activeBuffer.lines.set(this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.getBlankLine(this._eraseAttrData())),this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom)}else this._activeBuffer.y--,this._restrictCursor();return!0}fullReset(){return this._parser.reset(),this._onRequestReset.fire(),!0}reset(){this._curAttrData=pt.clone(),this._eraseAttrDataInternal=pt.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=this._curAttrData.bg&67108863,this._eraseAttrDataInternal}setgLevel(e){return this._charsetService.setgLevel(e),!0}screenAlignmentPattern(){let e=new Rr;e.content=1<<22|69,e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg,this._setCursor(0,0);for(let t=0;t<this._bufferService.rows;++t){let s=this._activeBuffer.ybase+this._activeBuffer.y+t,n=this._activeBuffer.lines.get(s);n&&(n.fill(e),n.isWrapped=!1)}return this._dirtyRowTracker.markAllDirty(),this._setCursor(0,0),!0}requestStatusString(e,t){let s=h=>(this._coreService.triggerDataEvent(`${G.ESC}${h}${G.ESC}\\`),!0),n=this._bufferService.buffer,l=this._optionsService.rawOptions;return s(e==='"q'?`P1$r${this._curAttrData.isProtected()?1:0}"q`:e==='"p'?'P1$r61;1"p':e==="r"?`P1$r${n.scrollTop+1};${n.scrollBottom+1}r`:e==="m"?"P1$r0m":e===" q"?`P1$r${{block:2,underline:4,bar:6}[l.cursorStyle]-(l.cursorBlink?1:0)} q`:"P0$r")}markRangeDirty(e,t){this._dirtyRowTracker.markRangeDirty(e,t)}},Oh=class{constructor(e){this._bufferService=e,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(e){e<this.start?this.start=e:e>this.end&&(this.end=e)}markRangeDirty(e,t){e>t&&(K_=e,e=t,t=K_),e<this.start&&(this.start=e),t>this.end&&(this.end=t)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};Oh=ut([pe(0,Vt)],Oh);function U_(e){return 0<=e&&e<256}var fw=5e7,V_=12,_w=50,pw=class extends Ie{constructor(e){super(),this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this._register(new ce),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(e,t){if(t!==void 0&&this._syncCalls>t){this._syncCalls=0;return}if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,this._isSyncWriting)return;this._isSyncWriting=!0;let s;for(;s=this._writeBuffer.shift();){this._action(s);let n=this._callbacks.shift();n&&n()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}write(e,t){if(this._pendingData>fw)throw new Error("write data discarded, use flow control to avoid losing data");if(!this._writeBuffer.length){if(this._bufferOffset=0,this._didUserInput){this._didUserInput=!1,this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t),this._innerWrite();return}setTimeout(()=>this._innerWrite())}this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)}_innerWrite(e=0,t=!0){let s=e||performance.now();for(;this._writeBuffer.length>this._bufferOffset;){let n=this._writeBuffer[this._bufferOffset],l=this._action(n,t);if(l){let h=f=>performance.now()-s>=V_?setTimeout(()=>this._innerWrite(0,f)):this._innerWrite(s,f);l.catch(f=>(queueMicrotask(()=>{throw f}),Promise.resolve(!1))).then(h);return}let c=this._callbacks[this._bufferOffset];if(c&&c(),this._bufferOffset++,this._pendingData-=n.length,performance.now()-s>=V_)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>_w&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout(()=>this._innerWrite())):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0),this._onWriteParsed.fire()}},zh=class{constructor(e){this._bufferService=e,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(e){let t=this._bufferService.buffer;if(e.id===void 0){let f=t.addMarker(t.ybase+t.y),p={data:e,id:this._nextId++,lines:[f]};return f.onDispose(()=>this._removeMarkerFromLink(p,f)),this._dataByLinkId.set(p.id,p),p.id}let s=e,n=this._getEntryIdKey(s),l=this._entriesWithId.get(n);if(l)return this.addLineToLink(l.id,t.ybase+t.y),l.id;let c=t.addMarker(t.ybase+t.y),h={id:this._nextId++,key:this._getEntryIdKey(s),data:s,lines:[c]};return c.onDispose(()=>this._removeMarkerFromLink(h,c)),this._entriesWithId.set(h.key,h),this._dataByLinkId.set(h.id,h),h.id}addLineToLink(e,t){let s=this._dataByLinkId.get(e);if(s&&s.lines.every(n=>n.line!==t)){let n=this._bufferService.buffer.addMarker(t);s.lines.push(n),n.onDispose(()=>this._removeMarkerFromLink(s,n))}}getLinkData(e){return this._dataByLinkId.get(e)?.data}_getEntryIdKey(e){return`${e.id};;${e.uri}`}_removeMarkerFromLink(e,t){let s=e.lines.indexOf(t);s!==-1&&(e.lines.splice(s,1),e.lines.length===0&&(e.data.id!==void 0&&this._entriesWithId.delete(e.key),this._dataByLinkId.delete(e.id)))}};zh=ut([pe(0,Vt)],zh);var Y_=!1,mw=class extends Ie{constructor(e){super(),this._windowsWrappingHeuristics=this._register(new sn),this._onBinary=this._register(new ce),this.onBinary=this._onBinary.event,this._onData=this._register(new ce),this.onData=this._onData.event,this._onLineFeed=this._register(new ce),this.onLineFeed=this._onLineFeed.event,this._onResize=this._register(new ce),this.onResize=this._onResize.event,this._onWriteParsed=this._register(new ce),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this._register(new ce),this._instantiationService=new FS,this.optionsService=this._register(new GS(e)),this._instantiationService.setService(Yt,this.optionsService),this._bufferService=this._register(this._instantiationService.createInstance(Bh)),this._instantiationService.setService(Vt,this._bufferService),this._logService=this._register(this._instantiationService.createInstance(Dh)),this._instantiationService.setService(gp,this._logService),this.coreService=this._register(this._instantiationService.createInstance(Nh)),this._instantiationService.setService(xs,this.coreService),this.coreMouseService=this._register(this._instantiationService.createInstance(Ih)),this._instantiationService.setService(mp,this.coreMouseService),this.unicodeService=this._register(this._instantiationService.createInstance(ws)),this._instantiationService.setService(A0,this.unicodeService),this._charsetService=this._instantiationService.createInstance(tw),this._instantiationService.setService(I0,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(zh),this._instantiationService.setService(vp,this._oscLinkService),this._inputHandler=this._register(new dw(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this._register(Bt.forward(this._inputHandler.onLineFeed,this._onLineFeed)),this._register(this._inputHandler),this._register(Bt.forward(this._bufferService.onResize,this._onResize)),this._register(Bt.forward(this.coreService.onData,this._onData)),this._register(Bt.forward(this.coreService.onBinary,this._onBinary)),this._register(this.coreService.onRequestScrollToBottom(()=>this.scrollToBottom(!0))),this._register(this.coreService.onUserInput(()=>this._writeBuffer.handleUserInput())),this._register(this.optionsService.onMultipleOptionChange(["windowsMode","windowsPty"],()=>this._handleWindowsPtyOptionChange())),this._register(this._bufferService.onScroll(()=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)})),this._writeBuffer=this._register(new pw((t,s)=>this._inputHandler.parse(t,s))),this._register(Bt.forward(this._writeBuffer.onWriteParsed,this._onWriteParsed))}get onScroll(){return this._onScrollApi||(this._onScrollApi=this._register(new ce),this._onScroll.event(e=>{this._onScrollApi?.fire(e.position)})),this._onScrollApi.event}get cols(){return this._bufferService.cols}get rows(){return this._bufferService.rows}get buffers(){return this._bufferService.buffers}get options(){return this.optionsService.options}set options(e){for(let t in e)this.optionsService.options[t]=e[t]}write(e,t){this._writeBuffer.write(e,t)}writeSync(e,t){this._logService.logLevel<=3&&!Y_&&(this._logService.warn("writeSync is unreliable and will be removed soon."),Y_=!0),this._writeBuffer.writeSync(e,t)}input(e,t=!0){this.coreService.triggerDataEvent(e,t)}resize(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,Gp),t=Math.max(t,Qp),this._bufferService.resize(e,t))}scroll(e,t=!1){this._bufferService.scroll(e,t)}scrollLines(e,t){this._bufferService.scrollLines(e,t)}scrollPages(e){this.scrollLines(e*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(e){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(e){let t=e-this._bufferService.buffer.ydisp;t!==0&&this.scrollLines(t)}registerEscHandler(e,t){return this._inputHandler.registerEscHandler(e,t)}registerDcsHandler(e,t){return this._inputHandler.registerDcsHandler(e,t)}registerCsiHandler(e,t){return this._inputHandler.registerCsiHandler(e,t)}registerOscHandler(e,t){return this._inputHandler.registerOscHandler(e,t)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let e=!1,t=this.optionsService.rawOptions.windowsPty;t&&t.buildNumber!==void 0&&t.buildNumber!==void 0?e=t.backend==="conpty"&&t.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(e=!0),e?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){let e=[];e.push(this.onLineFeed(z_.bind(null,this._bufferService))),e.push(this.registerCsiHandler({final:"H"},()=>(z_(this._bufferService),!1))),this._windowsWrappingHeuristics.value=rt(()=>{for(let t of e)t.dispose()})}}},gw={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};function vw(e,t,s,n){let l={type:0,cancel:!1,key:void 0},c=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:e.key==="UIKeyInputUpArrow"?t?l.key=G.ESC+"OA":l.key=G.ESC+"[A":e.key==="UIKeyInputLeftArrow"?t?l.key=G.ESC+"OD":l.key=G.ESC+"[D":e.key==="UIKeyInputRightArrow"?t?l.key=G.ESC+"OC":l.key=G.ESC+"[C":e.key==="UIKeyInputDownArrow"&&(t?l.key=G.ESC+"OB":l.key=G.ESC+"[B");break;case 8:l.key=e.ctrlKey?"\b":G.DEL,e.altKey&&(l.key=G.ESC+l.key);break;case 9:if(e.shiftKey){l.key=G.ESC+"[Z";break}l.key=G.HT,l.cancel=!0;break;case 13:l.key=e.altKey?G.ESC+G.CR:G.CR,l.cancel=!0;break;case 27:l.key=G.ESC,e.altKey&&(l.key=G.ESC+G.ESC),l.cancel=!0;break;case 37:if(e.metaKey)break;c?l.key=G.ESC+"[1;"+(c+1)+"D":t?l.key=G.ESC+"OD":l.key=G.ESC+"[D";break;case 39:if(e.metaKey)break;c?l.key=G.ESC+"[1;"+(c+1)+"C":t?l.key=G.ESC+"OC":l.key=G.ESC+"[C";break;case 38:if(e.metaKey)break;c?l.key=G.ESC+"[1;"+(c+1)+"A":t?l.key=G.ESC+"OA":l.key=G.ESC+"[A";break;case 40:if(e.metaKey)break;c?l.key=G.ESC+"[1;"+(c+1)+"B":t?l.key=G.ESC+"OB":l.key=G.ESC+"[B";break;case 45:!e.shiftKey&&!e.ctrlKey&&(l.key=G.ESC+"[2~");break;case 46:c?l.key=G.ESC+"[3;"+(c+1)+"~":l.key=G.ESC+"[3~";break;case 36:c?l.key=G.ESC+"[1;"+(c+1)+"H":t?l.key=G.ESC+"OH":l.key=G.ESC+"[H";break;case 35:c?l.key=G.ESC+"[1;"+(c+1)+"F":t?l.key=G.ESC+"OF":l.key=G.ESC+"[F";break;case 33:e.shiftKey?l.type=2:e.ctrlKey?l.key=G.ESC+"[5;"+(c+1)+"~":l.key=G.ESC+"[5~";break;case 34:e.shiftKey?l.type=3:e.ctrlKey?l.key=G.ESC+"[6;"+(c+1)+"~":l.key=G.ESC+"[6~";break;case 112:c?l.key=G.ESC+"[1;"+(c+1)+"P":l.key=G.ESC+"OP";break;case 113:c?l.key=G.ESC+"[1;"+(c+1)+"Q":l.key=G.ESC+"OQ";break;case 114:c?l.key=G.ESC+"[1;"+(c+1)+"R":l.key=G.ESC+"OR";break;case 115:c?l.key=G.ESC+"[1;"+(c+1)+"S":l.key=G.ESC+"OS";break;case 116:c?l.key=G.ESC+"[15;"+(c+1)+"~":l.key=G.ESC+"[15~";break;case 117:c?l.key=G.ESC+"[17;"+(c+1)+"~":l.key=G.ESC+"[17~";break;case 118:c?l.key=G.ESC+"[18;"+(c+1)+"~":l.key=G.ESC+"[18~";break;case 119:c?l.key=G.ESC+"[19;"+(c+1)+"~":l.key=G.ESC+"[19~";break;case 120:c?l.key=G.ESC+"[20;"+(c+1)+"~":l.key=G.ESC+"[20~";break;case 121:c?l.key=G.ESC+"[21;"+(c+1)+"~":l.key=G.ESC+"[21~";break;case 122:c?l.key=G.ESC+"[23;"+(c+1)+"~":l.key=G.ESC+"[23~";break;case 123:c?l.key=G.ESC+"[24;"+(c+1)+"~":l.key=G.ESC+"[24~";break;default:if(e.ctrlKey&&!e.shiftKey&&!e.altKey&&!e.metaKey)e.keyCode>=65&&e.keyCode<=90?l.key=String.fromCharCode(e.keyCode-64):e.keyCode===32?l.key=G.NUL:e.keyCode>=51&&e.keyCode<=55?l.key=String.fromCharCode(e.keyCode-51+27):e.keyCode===56?l.key=G.DEL:e.keyCode===219?l.key=G.ESC:e.keyCode===220?l.key=G.FS:e.keyCode===221&&(l.key=G.GS);else if((!s||n)&&e.altKey&&!e.metaKey){let h=gw[e.keyCode]?.[e.shiftKey?1:0];if(h)l.key=G.ESC+h;else if(e.keyCode>=65&&e.keyCode<=90){let f=e.ctrlKey?e.keyCode-64:e.keyCode+32,p=String.fromCharCode(f);e.shiftKey&&(p=p.toUpperCase()),l.key=G.ESC+p}else if(e.keyCode===32)l.key=G.ESC+(e.ctrlKey?G.NUL:" ");else if(e.key==="Dead"&&e.code.startsWith("Key")){let f=e.code.slice(3,4);e.shiftKey||(f=f.toLowerCase()),l.key=G.ESC+f,l.cancel=!0}}else s&&!e.altKey&&!e.ctrlKey&&!e.shiftKey&&e.metaKey?e.keyCode===65&&(l.type=1):e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&e.key.length===1?l.key=e.key:e.key&&e.ctrlKey&&(e.key==="_"&&(l.key=G.US),e.key==="@"&&(l.key=G.NUL));break}return l}var ft=0,yw=class{constructor(e){this._getKey=e,this._array=[],this._insertedValues=[],this._flushInsertedTask=new jl,this._isFlushingInserted=!1,this._deletedIndices=[],this._flushDeletedTask=new jl,this._isFlushingDeleted=!1}clear(){this._array.length=0,this._insertedValues.length=0,this._flushInsertedTask.clear(),this._isFlushingInserted=!1,this._deletedIndices.length=0,this._flushDeletedTask.clear(),this._isFlushingDeleted=!1}insert(e){this._flushCleanupDeleted(),this._insertedValues.length===0&&this._flushInsertedTask.enqueue(()=>this._flushInserted()),this._insertedValues.push(e)}_flushInserted(){let e=this._insertedValues.sort((l,c)=>this._getKey(l)-this._getKey(c)),t=0,s=0,n=new Array(this._array.length+this._insertedValues.length);for(let l=0;l<n.length;l++)s>=this._array.length||this._getKey(e[t])<=this._getKey(this._array[s])?(n[l]=e[t],t++):n[l]=this._array[s++];this._array=n,this._insertedValues.length=0}_flushCleanupInserted(){!this._isFlushingInserted&&this._insertedValues.length>0&&this._flushInsertedTask.flush()}delete(e){if(this._flushCleanupInserted(),this._array.length===0)return!1;let t=this._getKey(e);if(t===void 0||(ft=this._search(t),ft===-1)||this._getKey(this._array[ft])!==t)return!1;do if(this._array[ft]===e)return this._deletedIndices.length===0&&this._flushDeletedTask.enqueue(()=>this._flushDeleted()),this._deletedIndices.push(ft),!0;while(++ft<this._array.length&&this._getKey(this._array[ft])===t);return!1}_flushDeleted(){this._isFlushingDeleted=!0;let e=this._deletedIndices.sort((l,c)=>l-c),t=0,s=new Array(this._array.length-e.length),n=0;for(let l=0;l<this._array.length;l++)e[t]===l?t++:s[n++]=this._array[l];this._array=s,this._deletedIndices.length=0,this._isFlushingDeleted=!1}_flushCleanupDeleted(){!this._isFlushingDeleted&&this._deletedIndices.length>0&&this._flushDeletedTask.flush()}*getKeyIterator(e){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(ft=this._search(e),!(ft<0||ft>=this._array.length)&&this._getKey(this._array[ft])===e))do yield this._array[ft];while(++ft<this._array.length&&this._getKey(this._array[ft])===e)}forEachByKey(e,t){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(ft=this._search(e),!(ft<0||ft>=this._array.length)&&this._getKey(this._array[ft])===e))do t(this._array[ft]);while(++ft<this._array.length&&this._getKey(this._array[ft])===e)}values(){return this._flushCleanupInserted(),this._flushCleanupDeleted(),[...this._array].values()}_search(e){let t=0,s=this._array.length-1;for(;s>=t;){let n=t+s>>1,l=this._getKey(this._array[n]);if(l>e)s=n-1;else if(l<e)t=n+1;else{for(;n>0&&this._getKey(this._array[n-1])===e;)n--;return n}}return t}},Qc=0,q_=0,Sw=class extends Ie{constructor(){super(),this._decorations=new yw(e=>e?.marker.line),this._onDecorationRegistered=this._register(new ce),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this._register(new ce),this.onDecorationRemoved=this._onDecorationRemoved.event,this._register(rt(()=>this.reset()))}get decorations(){return this._decorations.values()}registerDecoration(e){if(e.marker.isDisposed)return;let t=new ww(e);if(t){let s=t.marker.onDispose(()=>t.dispose()),n=t.onDispose(()=>{n.dispose(),t&&(this._decorations.delete(t)&&this._onDecorationRemoved.fire(t),s.dispose())});this._decorations.insert(t),this._onDecorationRegistered.fire(t)}return t}reset(){for(let e of this._decorations.values())e.dispose();this._decorations.clear()}*getDecorationsAtCell(e,t,s){let n=0,l=0;for(let c of this._decorations.getKeyIterator(t))n=c.options.x??0,l=n+(c.options.width??1),e>=n&&e<l&&(!s||(c.options.layer??"bottom")===s)&&(yield c)}forEachDecorationAtCell(e,t,s,n){this._decorations.forEachByKey(t,l=>{Qc=l.options.x??0,q_=Qc+(l.options.width??1),e>=Qc&&e<q_&&(!s||(l.options.layer??"bottom")===s)&&n(l)})}},ww=class extends Qi{constructor(e){super(),this.options=e,this.onRenderEmitter=this.add(new ce),this.onRender=this.onRenderEmitter.event,this._onDispose=this.add(new ce),this.onDispose=this._onDispose.event,this._cachedBg=null,this._cachedFg=null,this.marker=e.marker,this.options.overviewRulerOptions&&!this.options.overviewRulerOptions.position&&(this.options.overviewRulerOptions.position="full")}get backgroundColorRGB(){return this._cachedBg===null&&(this.options.backgroundColor?this._cachedBg=lt.toColor(this.options.backgroundColor):this._cachedBg=void 0),this._cachedBg}get foregroundColorRGB(){return this._cachedFg===null&&(this.options.foregroundColor?this._cachedFg=lt.toColor(this.options.foregroundColor):this._cachedFg=void 0),this._cachedFg}dispose(){this._onDispose.fire(),super.dispose()}},Cw=1e3,kw=class{constructor(e,t=Cw){this._renderCallback=e,this._debounceThresholdMS=t,this._lastRefreshMs=0,this._additionalRefreshRequested=!1}dispose(){this._refreshTimeoutID&&clearTimeout(this._refreshTimeoutID)}refresh(e,t,s){this._rowCount=s,e=e!==void 0?e:0,t=t!==void 0?t:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,e):e,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,t):t;let n=performance.now();if(n-this._lastRefreshMs>=this._debounceThresholdMS)this._lastRefreshMs=n,this._innerRefresh();else if(!this._additionalRefreshRequested){let l=n-this._lastRefreshMs,c=this._debounceThresholdMS-l;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout(()=>{this._lastRefreshMs=performance.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0},c)}}_innerRefresh(){if(this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return;let e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(e,t)}},X_=20,$l=class extends Ie{constructor(e,t,s,n){super(),this._terminal=e,this._coreBrowserService=s,this._renderService=n,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce="";let l=this._coreBrowserService.mainDocument;this._accessibilityContainer=l.createElement("div"),this._accessibilityContainer.classList.add("xterm-accessibility"),this._rowContainer=l.createElement("div"),this._rowContainer.setAttribute("role","list"),this._rowContainer.classList.add("xterm-accessibility-tree"),this._rowElements=[];for(let c=0;c<this._terminal.rows;c++)this._rowElements[c]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[c]);if(this._topBoundaryFocusListener=c=>this._handleBoundaryFocus(c,0),this._bottomBoundaryFocusListener=c=>this._handleBoundaryFocus(c,1),this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._accessibilityContainer.appendChild(this._rowContainer),this._liveRegion=l.createElement("div"),this._liveRegion.classList.add("live-region"),this._liveRegion.setAttribute("aria-live","assertive"),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this._register(new kw(this._renderRows.bind(this))),!this._terminal.element)throw new Error("Cannot enable accessibility before Terminal.open");this._terminal.element.insertAdjacentElement("afterbegin",this._accessibilityContainer),this._register(this._terminal.onResize(c=>this._handleResize(c.rows))),this._register(this._terminal.onRender(c=>this._refreshRows(c.start,c.end))),this._register(this._terminal.onScroll(()=>this._refreshRows())),this._register(this._terminal.onA11yChar(c=>this._handleChar(c))),this._register(this._terminal.onLineFeed(()=>this._handleChar(`
|
|
75
|
+
`))),this._register(this._terminal.onA11yTab(c=>this._handleTab(c))),this._register(this._terminal.onKey(c=>this._handleKey(c.key))),this._register(this._terminal.onBlur(()=>this._clearLiveRegion())),this._register(this._renderService.onDimensionsChange(()=>this._refreshRowsDimensions())),this._register(Le(l,"selectionchange",()=>this._handleSelectionChange())),this._register(this._coreBrowserService.onDprChange(()=>this._refreshRowsDimensions())),this._refreshRowsDimensions(),this._refreshRows(),this._register(rt(()=>{this._accessibilityContainer.remove(),this._rowElements.length=0}))}_handleTab(e){for(let t=0;t<e;t++)this._handleChar(" ")}_handleChar(e){this._liveRegionLineCount<X_+1&&(this._charsToConsume.length>0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,e===`
|
|
76
|
+
`&&(this._liveRegionLineCount++,this._liveRegionLineCount===X_+1&&(this._liveRegion.textContent+=sh.get())))}_clearLiveRegion(){this._liveRegion.textContent="",this._liveRegionLineCount=0}_handleKey(e){this._clearLiveRegion(),/\p{Control}/u.test(e)||this._charsToConsume.push(e)}_refreshRows(e,t){this._liveRegionDebouncer.refresh(e,t,this._terminal.rows)}_renderRows(e,t){let s=this._terminal.buffer,n=s.lines.length.toString();for(let l=e;l<=t;l++){let c=s.lines.get(s.ydisp+l),h=[],f=c?.translateToString(!0,void 0,void 0,h)||"",p=(s.ydisp+l+1).toString(),d=this._rowElements[l];d&&(f.length===0?(d.textContent=" ",this._rowColumns.set(d,[0,1])):(d.textContent=f,this._rowColumns.set(d,h)),d.setAttribute("aria-posinset",p),d.setAttribute("aria-setsize",n),this._alignRowWidth(d))}this._announceCharacters()}_announceCharacters(){this._charsToAnnounce.length!==0&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce="")}_handleBoundaryFocus(e,t){let s=e.target,n=this._rowElements[t===0?1:this._rowElements.length-2],l=s.getAttribute("aria-posinset"),c=t===0?"1":`${this._terminal.buffer.lines.length}`;if(l===c||e.relatedTarget!==n)return;let h,f;if(t===0?(h=s,f=this._rowElements.pop(),this._rowContainer.removeChild(f)):(h=this._rowElements.shift(),f=s,this._rowContainer.removeChild(h)),h.removeEventListener("focus",this._topBoundaryFocusListener),f.removeEventListener("focus",this._bottomBoundaryFocusListener),t===0){let p=this._createAccessibilityTreeNode();this._rowElements.unshift(p),this._rowContainer.insertAdjacentElement("afterbegin",p)}else{let p=this._createAccessibilityTreeNode();this._rowElements.push(p),this._rowContainer.appendChild(p)}this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._terminal.scrollLines(t===0?-1:1),this._rowElements[t===0?1:this._rowElements.length-2].focus(),e.preventDefault(),e.stopImmediatePropagation()}_handleSelectionChange(){if(this._rowElements.length===0)return;let e=this._coreBrowserService.mainDocument.getSelection();if(!e)return;if(e.isCollapsed){this._rowContainer.contains(e.anchorNode)&&this._terminal.clearSelection();return}if(!e.anchorNode||!e.focusNode){console.error("anchorNode and/or focusNode are null");return}let t={node:e.anchorNode,offset:e.anchorOffset},s={node:e.focusNode,offset:e.focusOffset};if((t.node.compareDocumentPosition(s.node)&Node.DOCUMENT_POSITION_PRECEDING||t.node===s.node&&t.offset>s.offset)&&([t,s]=[s,t]),t.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(t={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(t.node))return;let n=this._rowElements.slice(-1)[0];if(s.node.compareDocumentPosition(n)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(s={node:n,offset:n.textContent?.length??0}),!this._rowContainer.contains(s.node))return;let l=({node:f,offset:p})=>{let d=f instanceof Text?f.parentNode:f,g=parseInt(d?.getAttribute("aria-posinset"),10)-1;if(isNaN(g))return console.warn("row is invalid. Race condition?"),null;let y=this._rowColumns.get(d);if(!y)return console.warn("columns is null. Race condition?"),null;let C=p<y.length?y[p]:y.slice(-1)[0]+1;return C>=this._terminal.cols&&(++g,C=0),{row:g,column:C}},c=l(t),h=l(s);if(!(!c||!h)){if(c.row>h.row||c.row===h.row&&c.column>=h.column)throw new Error("invalid range");this._terminal.select(c.column,c.row,(h.row-c.row)*this._terminal.cols-c.column+h.column)}}_handleResize(e){this._rowElements[this._rowElements.length-1].removeEventListener("focus",this._bottomBoundaryFocusListener);for(let t=this._rowContainer.children.length;t<this._terminal.rows;t++)this._rowElements[t]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[t]);for(;this._rowElements.length>e;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){let e=this._coreBrowserService.mainDocument.createElement("div");return e.setAttribute("role","listitem"),e.tabIndex=-1,this._refreshRowDimensions(e),e}_refreshRowsDimensions(){if(this._renderService.dimensions.css.cell.height){Object.assign(this._accessibilityContainer.style,{width:`${this._renderService.dimensions.css.canvas.width}px`,fontSize:`${this._terminal.options.fontSize}px`}),this._rowElements.length!==this._terminal.rows&&this._handleResize(this._terminal.rows);for(let e=0;e<this._terminal.rows;e++)this._refreshRowDimensions(this._rowElements[e]),this._alignRowWidth(this._rowElements[e])}}_refreshRowDimensions(e){e.style.height=`${this._renderService.dimensions.css.cell.height}px`}_alignRowWidth(e){e.style.transform="";let t=e.getBoundingClientRect().width,s=this._rowColumns.get(e)?.slice(-1)?.[0];if(!s)return;let n=s*this._renderService.dimensions.css.cell.width;e.style.transform=`scaleX(${n/t})`}};$l=ut([pe(1,$h),pe(2,yi),pe(3,Si)],$l);var Wh=class extends Ie{constructor(e,t,s,n,l){super(),this._element=e,this._mouseService=t,this._renderService=s,this._bufferService=n,this._linkProviderService=l,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this._register(new ce),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this._register(new ce),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this._register(rt(()=>{ks(this._linkCacheDisposables),this._linkCacheDisposables.length=0,this._lastMouseEvent=void 0,this._activeProviderReplies?.clear()})),this._register(this._bufferService.onResize(()=>{this._clearCurrentLink(),this._wasResized=!0})),this._register(Le(this._element,"mouseleave",()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(Le(this._element,"mousemove",this._handleMouseMove.bind(this))),this._register(Le(this._element,"mousedown",this._handleMouseDown.bind(this))),this._register(Le(this._element,"mouseup",this._handleMouseUp.bind(this)))}get currentLink(){return this._currentLink}_handleMouseMove(e){this._lastMouseEvent=e;let t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(!t)return;this._isMouseOut=!1;let s=e.composedPath();for(let n=0;n<s.length;n++){let l=s[n];if(l.classList.contains("xterm"))break;if(l.classList.contains("xterm-hover"))return}(!this._lastBufferCell||t.x!==this._lastBufferCell.x||t.y!==this._lastBufferCell.y)&&(this._handleHover(t),this._lastBufferCell=t)}_handleHover(e){if(this._activeLine!==e.y||this._wasResized){this._clearCurrentLink(),this._askForLink(e,!1),this._wasResized=!1;return}this._currentLink&&this._linkAtPosition(this._currentLink.link,e)||(this._clearCurrentLink(),this._askForLink(e,!0))}_askForLink(e,t){(!this._activeProviderReplies||!t)&&(this._activeProviderReplies?.forEach(n=>{n?.forEach(l=>{l.link.dispose&&l.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=e.y);let s=!1;for(let[n,l]of this._linkProviderService.linkProviders.entries())t?this._activeProviderReplies?.get(n)&&(s=this._checkLinkProviderResult(n,e,s)):l.provideLinks(e.y,c=>{if(this._isMouseOut)return;let h=c?.map(f=>({link:f}));this._activeProviderReplies?.set(n,h),s=this._checkLinkProviderResult(n,e,s),this._activeProviderReplies?.size===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(e.y,this._activeProviderReplies)})}_removeIntersectingLinks(e,t){let s=new Set;for(let n=0;n<t.size;n++){let l=t.get(n);if(l)for(let c=0;c<l.length;c++){let h=l[c],f=h.link.range.start.y<e?0:h.link.range.start.x,p=h.link.range.end.y>e?this._bufferService.cols:h.link.range.end.x;for(let d=f;d<=p;d++){if(s.has(d)){l.splice(c--,1);break}s.add(d)}}}}_checkLinkProviderResult(e,t,s){if(!this._activeProviderReplies)return s;let n=this._activeProviderReplies.get(e),l=!1;for(let c=0;c<e;c++)(!this._activeProviderReplies.has(c)||this._activeProviderReplies.get(c))&&(l=!0);if(!l&&n){let c=n.find(h=>this._linkAtPosition(h.link,t));c&&(s=!0,this._handleNewLink(c))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!s)for(let c=0;c<this._activeProviderReplies.size;c++){let h=this._activeProviderReplies.get(c)?.find(f=>this._linkAtPosition(f.link,t));if(h){s=!0,this._handleNewLink(h);break}}return s}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(e){if(!this._currentLink)return;let t=this._positionFromMouseEvent(e,this._element,this._mouseService);t&&this._mouseDownLink&&bw(this._mouseDownLink.link,this._currentLink.link)&&this._linkAtPosition(this._currentLink.link,t)&&this._currentLink.link.activate(e,this._currentLink.link.text)}_clearCurrentLink(e,t){!this._currentLink||!this._lastMouseEvent||(!e||!t||this._currentLink.link.range.start.y>=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,ks(this._linkCacheDisposables),this._linkCacheDisposables.length=0)}_handleNewLink(e){if(!this._lastMouseEvent)return;let t=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);t&&this._linkAtPosition(e.link,t)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:e.link.decorations===void 0?!0:e.link.decorations.underline,pointerCursor:e.link.decorations===void 0?!0:e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:()=>this._currentLink?.state?.decorations.pointerCursor,set:s=>{this._currentLink?.state&&this._currentLink.state.decorations.pointerCursor!==s&&(this._currentLink.state.decorations.pointerCursor=s,this._currentLink.state.isHovered&&this._element.classList.toggle("xterm-cursor-pointer",s))}},underline:{get:()=>this._currentLink?.state?.decorations.underline,set:s=>{this._currentLink?.state&&this._currentLink?.state?.decorations.underline!==s&&(this._currentLink.state.decorations.underline=s,this._currentLink.state.isHovered&&this._fireUnderlineEvent(e.link,s))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange(s=>{if(!this._currentLink)return;let n=s.start===0?0:s.start+1+this._bufferService.buffer.ydisp,l=this._bufferService.buffer.ydisp+1+s.end;if(this._currentLink.link.range.start.y>=n&&this._currentLink.link.range.end.y<=l&&(this._clearCurrentLink(n,l),this._lastMouseEvent)){let c=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);c&&this._askForLink(c,!1)}})))}_linkHover(e,t,s){this._currentLink?.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add("xterm-cursor-pointer")),t.hover&&t.hover(s,t.text)}_fireUnderlineEvent(e,t){let s=e.range,n=this._bufferService.buffer.ydisp,l=this._createLinkUnderlineEvent(s.start.x-1,s.start.y-n-1,s.end.x,s.end.y-n-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(l)}_linkLeave(e,t,s){this._currentLink?.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove("xterm-cursor-pointer")),t.leave&&t.leave(s,t.text)}_linkAtPosition(e,t){let s=e.range.start.y*this._bufferService.cols+e.range.start.x,n=e.range.end.y*this._bufferService.cols+e.range.end.x,l=t.y*this._bufferService.cols+t.x;return s<=l&&l<=n}_positionFromMouseEvent(e,t,s){let n=s.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(n)return{x:n[0],y:n[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(e,t,s,n,l){return{x1:e,y1:t,x2:s,y2:n,cols:this._bufferService.cols,fg:l}}};Wh=ut([pe(1,Kh),pe(2,Si),pe(3,Vt),pe(4,Sp)],Wh);function bw(e,t){return e.text===t.text&&e.range.start.x===t.range.start.x&&e.range.start.y===t.range.start.y&&e.range.end.x===t.range.end.x&&e.range.end.y===t.range.end.y}var xw=class extends mw{constructor(e={}){super(e),this._linkifier=this._register(new sn),this.browser=Wp,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new sn),this._onCursorMove=this._register(new ce),this.onCursorMove=this._onCursorMove.event,this._onKey=this._register(new ce),this.onKey=this._onKey.event,this._onRender=this._register(new ce),this.onRender=this._onRender.event,this._onSelectionChange=this._register(new ce),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this._register(new ce),this.onTitleChange=this._onTitleChange.event,this._onBell=this._register(new ce),this.onBell=this._onBell.event,this._onFocus=this._register(new ce),this._onBlur=this._register(new ce),this._onA11yCharEmitter=this._register(new ce),this._onA11yTabEmitter=this._register(new ce),this._onWillOpen=this._register(new ce),this._setup(),this._decorationService=this._instantiationService.createInstance(Sw),this._instantiationService.setService(fo,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(_S),this._instantiationService.setService(Sp,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(oh)),this._register(this._inputHandler.onRequestBell(()=>this._onBell.fire())),this._register(this._inputHandler.onRequestRefreshRows(t=>this.refresh(t?.start??0,t?.end??this.rows-1))),this._register(this._inputHandler.onRequestSendFocus(()=>this._reportFocus())),this._register(this._inputHandler.onRequestReset(()=>this.reset())),this._register(this._inputHandler.onRequestWindowsOptionsReport(t=>this._reportWindowsOptions(t))),this._register(this._inputHandler.onColor(t=>this._handleColorEvent(t))),this._register(Bt.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register(Bt.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register(Bt.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register(Bt.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(t=>this._afterResize(t.cols,t.rows))),this._register(rt(()=>{this._customKeyEventHandler=void 0,this.element?.parentNode?.removeChild(this.element)}))}get linkifier(){return this._linkifier.value}get onFocus(){return this._onFocus.event}get onBlur(){return this._onBlur.event}get onA11yChar(){return this._onA11yCharEmitter.event}get onA11yTab(){return this._onA11yTabEmitter.event}get onWillOpen(){return this._onWillOpen.event}_handleColorEvent(e){if(this._themeService)for(let t of e){let s,n="";switch(t.index){case 256:s="foreground",n="10";break;case 257:s="background",n="11";break;case 258:s="cursor",n="12";break;default:s="ansi",n="4;"+t.index}switch(t.type){case 0:let l=Ze.toColorRGB(s==="ansi"?this._themeService.colors.ansi[t.index]:this._themeService.colors[s]);this.coreService.triggerDataEvent(`${G.ESC}]${n};${hw(l)}${Op.ST}`);break;case 1:if(s==="ansi")this._themeService.modifyColors(c=>c.ansi[t.index]=mt.toColor(...t.color));else{let c=s;this._themeService.modifyColors(h=>h[c]=mt.toColor(...t.color))}break;case 2:this._themeService.restoreColor(t.index);break}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(e){e?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance($l,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(e){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(G.ESC+"[I"),this.element.classList.add("focus"),this._showCursor(),this._onFocus.fire()}blur(){return this.textarea?.blur()}_handleTextAreaBlur(){this.textarea.value="",this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(G.ESC+"[O"),this.element.classList.remove("focus"),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;let e=this.buffer.ybase+this.buffer.y,t=this.buffer.lines.get(e);if(!t)return;let s=Math.min(this.buffer.x,this.cols-1),n=this._renderService.dimensions.css.cell.height,l=t.getWidth(s),c=this._renderService.dimensions.css.cell.width*l,h=this.buffer.y*this._renderService.dimensions.css.cell.height,f=s*this._renderService.dimensions.css.cell.width;this.textarea.style.left=f+"px",this.textarea.style.top=h+"px",this.textarea.style.width=c+"px",this.textarea.style.height=n+"px",this.textarea.style.lineHeight=n+"px",this.textarea.style.zIndex="-5"}_initGlobal(){this._bindKeys(),this._register(Le(this.element,"copy",t=>{this.hasSelection()&&T0(t,this._selectionService)}));let e=t=>P0(t,this.textarea,this.coreService,this.optionsService);this._register(Le(this.textarea,"paste",e)),this._register(Le(this.element,"paste",e)),Fp?this._register(Le(this.element,"mousedown",t=>{t.button===2&&n_(t,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(Le(this.element,"contextmenu",t=>{n_(t,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),Jh&&this._register(Le(this.element,"auxclick",t=>{t.button===1&&up(t,this.textarea,this.screenElement)}))}_bindKeys(){this._register(Le(this.textarea,"keyup",e=>this._keyUp(e),!0)),this._register(Le(this.textarea,"keydown",e=>this._keyDown(e),!0)),this._register(Le(this.textarea,"keypress",e=>this._keyPress(e),!0)),this._register(Le(this.textarea,"compositionstart",()=>this._compositionHelper.compositionstart())),this._register(Le(this.textarea,"compositionupdate",e=>this._compositionHelper.compositionupdate(e))),this._register(Le(this.textarea,"compositionend",()=>this._compositionHelper.compositionend())),this._register(Le(this.textarea,"input",e=>this._inputEvent(e),!0)),this._register(this.onRender(()=>this._compositionHelper.updateCompositionElements()))}open(e){if(!e)throw new Error("Terminal requires a parent element.");if(e.isConnected||this._logService.debug("Terminal.open was called on an element that was not attached to the DOM"),this.element?.ownerDocument.defaultView&&this._coreBrowserService){this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView);return}this._document=e.ownerDocument,this.options.documentOverride&&this.options.documentOverride instanceof Document&&(this._document=this.optionsService.rawOptions.documentOverride),this.element=this._document.createElement("div"),this.element.dir="ltr",this.element.classList.add("terminal"),this.element.classList.add("xterm"),e.appendChild(this.element);let t=this._document.createDocumentFragment();this._viewportElement=this._document.createElement("div"),this._viewportElement.classList.add("xterm-viewport"),t.appendChild(this._viewportElement),this.screenElement=this._document.createElement("div"),this.screenElement.classList.add("xterm-screen"),this._register(Le(this.screenElement,"mousemove",l=>this.updateCursorStyle(l))),this._helperContainer=this._document.createElement("div"),this._helperContainer.classList.add("xterm-helpers"),this.screenElement.appendChild(this._helperContainer),t.appendChild(this.screenElement);let s=this.textarea=this._document.createElement("textarea");this.textarea.classList.add("xterm-helper-textarea"),this.textarea.setAttribute("aria-label",ih.get()),$p||this.textarea.setAttribute("aria-multiline","false"),this.textarea.setAttribute("autocorrect","off"),this.textarea.setAttribute("autocapitalize","off"),this.textarea.setAttribute("spellcheck","false"),this.textarea.tabIndex=0,this._register(this.optionsService.onSpecificOptionChange("disableStdin",()=>s.readOnly=this.optionsService.rawOptions.disableStdin)),this.textarea.readOnly=this.optionsService.rawOptions.disableStdin,this._coreBrowserService=this._register(this._instantiationService.createInstance(dS,this.textarea,e.ownerDocument.defaultView??window,this._document??typeof window<"u"?window.document:null)),this._instantiationService.setService(yi,this._coreBrowserService),this._register(Le(this.textarea,"focus",l=>this._handleTextAreaFocus(l))),this._register(Le(this.textarea,"blur",()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(Mh,this._document,this._helperContainer),this._instantiationService.setService(Vl,this._charSizeService),this._themeService=this._instantiationService.createInstance(Lh),this._instantiationService.setService(nn,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(Fl),this._instantiationService.setService(yp,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(Th,this.rows,this.screenElement)),this._instantiationService.setService(Si,this._renderService),this._register(this._renderService.onRenderedViewportChange(l=>this._onRender.fire(l))),this.onResize(l=>this._renderService.resize(l.cols,l.rows)),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(bh,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(Rh),this._instantiationService.setService(Kh,this._mouseService);let n=this._linkifier.value=this._register(this._instantiationService.createInstance(Wh,this.screenElement));this.element.appendChild(t);try{this._onWillOpen.fire(this.element)}catch{}this._renderService.hasRenderer()||this._renderService.setRenderer(this._createRenderer()),this._register(this.onCursorMove(()=>{this._renderService.handleCursorMove(),this._syncTextArea()})),this._register(this.onResize(()=>this._renderService.handleResize(this.cols,this.rows))),this._register(this.onBlur(()=>this._renderService.handleBlur())),this._register(this.onFocus(()=>this._renderService.handleFocus())),this._viewport=this._register(this._instantiationService.createInstance(Ch,this.element,this.screenElement)),this._register(this._viewport.onRequestScrollLines(l=>{super.scrollLines(l,!1),this.refresh(0,this.rows-1)})),this._selectionService=this._register(this._instantiationService.createInstance(Ph,this.element,this.screenElement,n)),this._instantiationService.setService(z0,this._selectionService),this._register(this._selectionService.onRequestScrollLines(l=>this.scrollLines(l.amount,l.suppressScrollEvent))),this._register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this._register(this._selectionService.onRequestRedraw(l=>this._renderService.handleSelectionChanged(l.start,l.end,l.columnSelectMode))),this._register(this._selectionService.onLinuxMouseSelection(l=>{this.textarea.value=l,this.textarea.focus(),this.textarea.select()})),this._register(Bt.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{this._selectionService.refresh(),this._viewport?.queueSync()})),this._register(this._instantiationService.createInstance(kh,this.screenElement)),this._register(Le(this.element,"mousedown",l=>this._selectionService.handleMouseDown(l))),this.coreMouseService.areMouseEventsActive?(this._selectionService.disable(),this.element.classList.add("enable-mouse-events")):this._selectionService.enable(),this.options.screenReaderMode&&(this._accessibilityManager.value=this._instantiationService.createInstance($l,this)),this._register(this.optionsService.onSpecificOptionChange("screenReaderMode",l=>this._handleScreenReaderModeOptionChange(l))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(Wl,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRuler",l=>{!this._overviewRulerRenderer&&l&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(Wl,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(Eh,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){let e=this,t=this.element;function s(c){let h=e._mouseService.getMouseReportCoords(c,e.screenElement);if(!h)return!1;let f,p;switch(c.overrideType||c.type){case"mousemove":p=32,c.buttons===void 0?(f=3,c.button!==void 0&&(f=c.button<3?c.button:3)):f=c.buttons&1?0:c.buttons&4?1:c.buttons&2?2:3;break;case"mouseup":p=0,f=c.button<3?c.button:3;break;case"mousedown":p=1,f=c.button<3?c.button:3;break;case"wheel":if(e._customWheelEventHandler&&e._customWheelEventHandler(c)===!1)return!1;let d=c.deltaY;if(d===0||e.coreMouseService.consumeWheelEvent(c,e._renderService?.dimensions?.device?.cell?.height,e._coreBrowserService?.dpr)===0)return!1;p=d<0?0:1,f=4;break;default:return!1}return p===void 0||f===void 0||f>4?!1:e.coreMouseService.triggerMouseEvent({col:h.col,row:h.row,x:h.x,y:h.y,button:f,action:p,ctrl:c.ctrlKey,alt:c.altKey,shift:c.shiftKey})}let n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},l={mouseup:c=>(s(c),c.buttons||(this._document.removeEventListener("mouseup",n.mouseup),n.mousedrag&&this._document.removeEventListener("mousemove",n.mousedrag)),this.cancel(c)),wheel:c=>(s(c),this.cancel(c,!0)),mousedrag:c=>{c.buttons&&s(c)},mousemove:c=>{c.buttons||s(c)}};this._register(this.coreMouseService.onProtocolChange(c=>{c?(this.optionsService.rawOptions.logLevel==="debug"&&this._logService.debug("Binding to mouse events:",this.coreMouseService.explainEvents(c)),this.element.classList.add("enable-mouse-events"),this._selectionService.disable()):(this._logService.debug("Unbinding from mouse events."),this.element.classList.remove("enable-mouse-events"),this._selectionService.enable()),c&8?n.mousemove||(t.addEventListener("mousemove",l.mousemove),n.mousemove=l.mousemove):(t.removeEventListener("mousemove",n.mousemove),n.mousemove=null),c&16?n.wheel||(t.addEventListener("wheel",l.wheel,{passive:!1}),n.wheel=l.wheel):(t.removeEventListener("wheel",n.wheel),n.wheel=null),c&2?n.mouseup||(n.mouseup=l.mouseup):(this._document.removeEventListener("mouseup",n.mouseup),n.mouseup=null),c&4?n.mousedrag||(n.mousedrag=l.mousedrag):(this._document.removeEventListener("mousemove",n.mousedrag),n.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this._register(Le(t,"mousedown",c=>{if(c.preventDefault(),this.focus(),!(!this.coreMouseService.areMouseEventsActive||this._selectionService.shouldForceSelection(c)))return s(c),n.mouseup&&this._document.addEventListener("mouseup",n.mouseup),n.mousedrag&&this._document.addEventListener("mousemove",n.mousedrag),this.cancel(c)})),this._register(Le(t,"wheel",c=>{if(!n.wheel){if(this._customWheelEventHandler&&this._customWheelEventHandler(c)===!1)return!1;if(!this.buffer.hasScrollback){if(c.deltaY===0)return!1;if(e.coreMouseService.consumeWheelEvent(c,e._renderService?.dimensions?.device?.cell?.height,e._coreBrowserService?.dpr)===0)return this.cancel(c,!0);let h=G.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(c.deltaY<0?"A":"B");return this.coreService.triggerDataEvent(h,!0),this.cancel(c,!0)}}},{passive:!1}))}refresh(e,t){this._renderService?.refreshRows(e,t)}updateCursorStyle(e){this._selectionService?.shouldColumnSelect(e)?this.element.classList.add("column-select"):this.element.classList.remove("column-select")}_showCursor(){this.coreService.isCursorInitialized||(this.coreService.isCursorInitialized=!0,this.refresh(this.buffer.y,this.buffer.y))}scrollLines(e,t){this._viewport?this._viewport.scrollLines(e):super.scrollLines(e,t),this.refresh(0,this.rows-1)}scrollPages(e){this.scrollLines(e*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(e){e&&this._viewport?this._viewport.scrollToLine(this.buffer.ybase,!0):this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(e){let t=e-this._bufferService.buffer.ydisp;t!==0&&this.scrollLines(t)}paste(e){hp(e,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(e){this._customKeyEventHandler=e}attachCustomWheelEventHandler(e){this._customWheelEventHandler=e}registerLinkProvider(e){return this._linkProviderService.registerLinkProvider(e)}registerCharacterJoiner(e){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");let t=this._characterJoinerService.register(e);return this.refresh(0,this.rows-1),t}deregisterCharacterJoiner(e){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");this._characterJoinerService.deregister(e)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(e){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+e)}registerDecoration(e){return this._decorationService.registerDecoration(e)}hasSelection(){return this._selectionService?this._selectionService.hasSelection:!1}select(e,t,s){this._selectionService.setSelection(e,t,s)}getSelection(){return this._selectionService?this._selectionService.selectionText:""}getSelectionPosition(){if(!(!this._selectionService||!this._selectionService.hasSelection))return{start:{x:this._selectionService.selectionStart[0],y:this._selectionService.selectionStart[1]},end:{x:this._selectionService.selectionEnd[0],y:this._selectionService.selectionEnd[1]}}}clearSelection(){this._selectionService?.clearSelection()}selectAll(){this._selectionService?.selectAll()}selectLines(e,t){this._selectionService?.selectLines(e,t)}_keyDown(e){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)return!1;let t=this.browser.isMac&&this.options.macOptionIsMeta&&e.altKey;if(!t&&!this._compositionHelper.keydown(e))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(!0),!1;!t&&(e.key==="Dead"||e.key==="AltGraph")&&(this._unprocessedDeadKey=!0);let s=vw(e,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(e),s.type===3||s.type===2){let n=this.rows-1;return this.scrollLines(s.type===2?-n:n),this.cancel(e,!0)}if(s.type===1&&this.selectAll(),this._isThirdLevelShift(this.browser,e)||(s.cancel&&this.cancel(e,!0),!s.key)||e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.key.length===1&&e.key.charCodeAt(0)>=65&&e.key.charCodeAt(0)<=90)return!0;if(this._unprocessedDeadKey)return this._unprocessedDeadKey=!1,!0;if((s.key===G.ETX||s.key===G.CR)&&(this.textarea.value=""),this._onKey.fire({key:s.key,domEvent:e}),this._showCursor(),this.coreService.triggerDataEvent(s.key,!0),!this.optionsService.rawOptions.screenReaderMode||e.altKey||e.ctrlKey)return this.cancel(e,!0);this._keyDownHandled=!0}_isThirdLevelShift(e,t){let s=e.isMac&&!this.options.macOptionIsMeta&&t.altKey&&!t.ctrlKey&&!t.metaKey||e.isWindows&&t.altKey&&t.ctrlKey&&!t.metaKey||e.isWindows&&t.getModifierState("AltGraph");return t.type==="keypress"?s:s&&(!t.keyCode||t.keyCode>47)}_keyUp(e){this._keyDownSeen=!1,!(this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)&&(Ew(e)||this.focus(),this.updateCursorStyle(e),this._keyPressHandled=!1)}_keyPress(e){let t;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(e.which===null||e.which===void 0)t=e.keyCode;else if(e.which!==0&&e.charCode!==0)t=e.which;else return!1;return!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)?!1:(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this.coreService.triggerDataEvent(t,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,!0)}_inputEvent(e){if(e.data&&e.inputType==="insertText"&&(!e.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;let t=e.data;return this.coreService.triggerDataEvent(t,!0),this.cancel(e),!0}return!1}resize(e,t){if(e===this.cols&&t===this.rows){this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure();return}super.resize(e,t)}_afterResize(e,t){this._charSizeService?.measure()}clear(){if(!(this.buffer.ybase===0&&this.buffer.y===0)){this.buffer.clearAllMarkers(),this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(let e=1;e<this.rows;e++)this.buffer.lines.push(this.buffer.getBlankLine(pt));this._onScroll.fire({position:this.buffer.ydisp}),this.refresh(0,this.rows-1)}}reset(){this.options.rows=this.rows,this.options.cols=this.cols;let e=this._customKeyEventHandler;this._setup(),super.reset(),this._selectionService?.reset(),this._decorationService.reset(),this._customKeyEventHandler=e,this.refresh(0,this.rows-1)}clearTextureAtlas(){this._renderService?.clearTextureAtlas()}_reportFocus(){this.element?.classList.contains("focus")?this.coreService.triggerDataEvent(G.ESC+"[I"):this.coreService.triggerDataEvent(G.ESC+"[O")}_reportWindowsOptions(e){if(this._renderService)switch(e){case 0:let t=this._renderService.dimensions.css.canvas.width.toFixed(0),s=this._renderService.dimensions.css.canvas.height.toFixed(0);this.coreService.triggerDataEvent(`${G.ESC}[4;${s};${t}t`);break;case 1:let n=this._renderService.dimensions.css.cell.width.toFixed(0),l=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${G.ESC}[6;${l};${n}t`);break}}cancel(e,t){if(!(!this.options.cancelEvents&&!t))return e.preventDefault(),e.stopPropagation(),!1}};function Ew(e){return e.keyCode===16||e.keyCode===17||e.keyCode===18}var Mw=class{constructor(){this._addons=[]}dispose(){for(let e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()}loadAddon(e,t){let s={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(s),t.dispose=()=>this._wrappedAddonDispose(s),t.activate(e)}_wrappedAddonDispose(e){if(e.isDisposed)return;let t=-1;for(let s=0;s<this._addons.length;s++)if(this._addons[s]===e){t=s;break}if(t===-1)throw new Error("Could not dispose an addon that has not been loaded");e.isDisposed=!0,e.dispose.apply(e.instance),this._addons.splice(t,1)}},Rw=class{constructor(e){this._line=e}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(e,t){if(!(e<0||e>=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new Rr)}translateToString(e,t,s){return this._line.translateToString(e,t,s)}},G_=class{constructor(e,t){this._buffer=e,this.type=t}init(e){return this._buffer=e,this}get cursorY(){return this._buffer.y}get cursorX(){return this._buffer.x}get viewportY(){return this._buffer.ydisp}get baseY(){return this._buffer.ybase}get length(){return this._buffer.lines.length}getLine(e){let t=this._buffer.lines.get(e);if(t)return new Rw(t)}getNullCell(){return new Rr}},Tw=class extends Ie{constructor(e){super(),this._core=e,this._onBufferChange=this._register(new ce),this.onBufferChange=this._onBufferChange.event,this._normal=new G_(this._core.buffers.normal,"normal"),this._alternate=new G_(this._core.buffers.alt,"alternate"),this._core.buffers.onBufferActivate(()=>this._onBufferChange.fire(this.active))}get active(){if(this._core.buffers.active===this._core.buffers.normal)return this.normal;if(this._core.buffers.active===this._core.buffers.alt)return this.alternate;throw new Error("Active buffer is neither normal nor alternate")}get normal(){return this._normal.init(this._core.buffers.normal)}get alternate(){return this._alternate.init(this._core.buffers.alt)}},Pw=class{constructor(e){this._core=e}registerCsiHandler(e,t){return this._core.registerCsiHandler(e,s=>t(s.toArray()))}addCsiHandler(e,t){return this.registerCsiHandler(e,t)}registerDcsHandler(e,t){return this._core.registerDcsHandler(e,(s,n)=>t(s,n.toArray()))}addDcsHandler(e,t){return this.registerDcsHandler(e,t)}registerEscHandler(e,t){return this._core.registerEscHandler(e,t)}addEscHandler(e,t){return this.registerEscHandler(e,t)}registerOscHandler(e,t){return this._core.registerOscHandler(e,t)}addOscHandler(e,t){return this.registerOscHandler(e,t)}},Lw=class{constructor(e){this._core=e}register(e){this._core.unicodeService.register(e)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(e){this._core.unicodeService.activeVersion=e}},Dw=["cols","rows"],ei=0,Bw=class extends Ie{constructor(e){super(),this._core=this._register(new xw(e)),this._addonManager=this._register(new Mw),this._publicOptions={...this._core.options};let t=n=>this._core.options[n],s=(n,l)=>{this._checkReadonlyOptions(n),this._core.options[n]=l};for(let n in this._core.options){let l={get:t.bind(this,n),set:s.bind(this,n)};Object.defineProperty(this._publicOptions,n,l)}}_checkReadonlyOptions(e){if(Dw.includes(e))throw new Error(`Option "${e}" can only be set in the constructor`)}_checkProposedApi(){if(!this._core.optionsService.rawOptions.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")}get onBell(){return this._core.onBell}get onBinary(){return this._core.onBinary}get onCursorMove(){return this._core.onCursorMove}get onData(){return this._core.onData}get onKey(){return this._core.onKey}get onLineFeed(){return this._core.onLineFeed}get onRender(){return this._core.onRender}get onResize(){return this._core.onResize}get onScroll(){return this._core.onScroll}get onSelectionChange(){return this._core.onSelectionChange}get onTitleChange(){return this._core.onTitleChange}get onWriteParsed(){return this._core.onWriteParsed}get element(){return this._core.element}get parser(){return this._parser||(this._parser=new Pw(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new Lw(this._core)}get textarea(){return this._core.textarea}get rows(){return this._core.rows}get cols(){return this._core.cols}get buffer(){return this._buffer||(this._buffer=this._register(new Tw(this._core))),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){let e=this._core.coreService.decPrivateModes,t="none";switch(this._core.coreMouseService.activeProtocol){case"X10":t="x10";break;case"VT200":t="vt200";break;case"DRAG":t="drag";break;case"ANY":t="any";break}return{applicationCursorKeysMode:e.applicationCursorKeys,applicationKeypadMode:e.applicationKeypad,bracketedPasteMode:e.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:t,originMode:e.origin,reverseWraparoundMode:e.reverseWraparound,sendFocusMode:e.sendFocus,synchronizedOutputMode:e.synchronizedOutput,wraparoundMode:e.wraparound}}get options(){return this._publicOptions}set options(e){for(let t in e)this._publicOptions[t]=e[t]}blur(){this._core.blur()}focus(){this._core.focus()}input(e,t=!0){this._core.input(e,t)}resize(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)}open(e){this._core.open(e)}attachCustomKeyEventHandler(e){this._core.attachCustomKeyEventHandler(e)}attachCustomWheelEventHandler(e){this._core.attachCustomWheelEventHandler(e)}registerLinkProvider(e){return this._core.registerLinkProvider(e)}registerCharacterJoiner(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)}deregisterCharacterJoiner(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)}registerMarker(e=0){return this._verifyIntegers(e),this._core.registerMarker(e)}registerDecoration(e){return this._checkProposedApi(),this._verifyPositiveIntegers(e.x??0,e.width??0,e.height??0),this._core.registerDecoration(e)}hasSelection(){return this._core.hasSelection()}select(e,t,s){this._verifyIntegers(e,t,s),this._core.select(e,t,s)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)}dispose(){super.dispose()}scrollLines(e){this._verifyIntegers(e),this._core.scrollLines(e)}scrollPages(e){this._verifyIntegers(e),this._core.scrollPages(e)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(e){this._verifyIntegers(e),this._core.scrollToLine(e)}clear(){this._core.clear()}write(e,t){this._core.write(e,t)}writeln(e,t){this._core.write(e),this._core.write(`\r
|
|
77
|
+
`,t)}paste(e){this._core.paste(e)}refresh(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(e){this._addonManager.loadAddon(this,e)}static get strings(){return{get promptLabel(){return ih.get()},set promptLabel(e){ih.set(e)},get tooMuchOutput(){return sh.get()},set tooMuchOutput(e){sh.set(e)}}}_verifyIntegers(...e){for(ei of e)if(ei===1/0||isNaN(ei)||ei%1!==0)throw new Error("This API only accepts integers")}_verifyPositiveIntegers(...e){for(ei of e)if(ei&&(ei===1/0||isNaN(ei)||ei%1!==0||ei<0))throw new Error("This API only accepts positive integers")}};const Nw=`
|
|
78
|
+
`,Iw={background:"#1a1b26",foreground:"#c0caf5",cursor:"#c0caf5",cursorAccent:"#1a1b26",selectionBackground:"rgba(122, 162, 247, 0.28)",selectionInactiveBackground:"rgba(122, 162, 247, 0.2)",black:"#15161e",red:"#f7768e",green:"#9ece6a",yellow:"#e0af68",blue:"#7aa2f7",magenta:"#bb9af7",cyan:"#7dcfff",white:"#a9b1d6",brightBlack:"#414868",brightRed:"#f7768e",brightGreen:"#9ece6a",brightYellow:"#e0af68",brightBlue:"#7aa2f7",brightMagenta:"#bb9af7",brightCyan:"#7dcfff",brightWhite:"#c0caf5"};function Aw({workerId:e,workerName:t,focusRequestKey:s}){const n=x.useRef(null),l=x.useRef(null),c=x.useRef(null),h=x.useRef(null),f=x.useRef(null),p=x.useRef(void 0),d=x.useCallback(()=>{l.current?.focus()},[]),g=x.useCallback(()=>{const S=h.current,v=l.current;!S||!v||S.readyState===WebSocket.OPEN&&S.send(JSON.stringify({type:"resize",cols:v.cols,rows:v.rows}))},[]),y=x.useCallback(()=>{const S=n.current,v=c.current,w=l.current;if(!S||!v||!w)return!1;const E=S.clientWidth,L=S.clientHeight;if(E<8||L<8||S.getClientRects().length===0)return!1;try{v.fit()}catch{return!1}return w.cols>0&&w.rows>0},[]),C=x.useCallback((S=16)=>{f.current&&cancelAnimationFrame(f.current);const v=w=>{if(y()){g();return}w<=0||(f.current=requestAnimationFrame(()=>{v(w-1)}))};f.current=requestAnimationFrame(()=>{v(S)})},[y,g]);return x.useEffect(()=>{if(!n.current)return;const S=new Bw({cursorBlink:!1,cursorStyle:"block",cursorInactiveStyle:"block",fontSize:13,lineHeight:1,theme:Iw}),v=new b0;S.loadAddon(v),S.attachCustomKeyEventHandler(E=>{if(!Ow(E))return!0;E.preventDefault(),E.stopPropagation();const L=h.current;return L?.readyState===WebSocket.OPEN&&L.send(Nw),!1}),S.open(n.current),S.writeln("Select an agent to connect its terminal."),l.current=S,c.current=v,C();const w=new ResizeObserver(()=>{C()});return w.observe(n.current),()=>{w.disconnect(),f.current&&(cancelAnimationFrame(f.current),f.current=null),h.current?.close(),S.dispose(),l.current=null,c.current=null}},[C]),x.useEffect(()=>{const S=l.current;if(!S)return;if(h.current?.close(),h.current=null,S.clear(),C(),!e){S.writeln("Select an agent to connect its terminal.");return}S.writeln(`Connecting to ${t??e}...`);const v=window.location.protocol==="https:"?"wss":"ws",w=new WebSocket(`${v}://${window.location.host}/api/terminal/${e}`);h.current=w;const E=S.onData(L=>{w.readyState===WebSocket.OPEN&&w.send(L)});return w.addEventListener("open",()=>{g(),C(24)}),w.addEventListener("message",L=>{typeof L.data=="string"?S.write(L.data):L.data instanceof Blob&&L.data.text().then(j=>{S.write(j)})}),w.addEventListener("close",()=>{S.writeln(`\r
|
|
79
|
+
[terminal disconnected]`)}),w.addEventListener("error",()=>{S.writeln(`\r
|
|
80
|
+
[terminal connection error]`)}),()=>{E.dispose(),w.close(),h.current===w&&(h.current=null)}},[C,g,e,t]),x.useEffect(()=>{if(!e||s===void 0||p.current===s)return;p.current=s,d();const S=setTimeout(()=>{d()},0);return()=>{clearTimeout(S)}},[s,d,e]),T.jsx("div",{className:"terminal-panel",ref:n})}function Ow(e){return e.type==="keydown"&&e.key==="Enter"&&e.shiftKey&&!e.ctrlKey&&!e.metaKey&&!e.altKey}function zw({activeWorkers:e,selectedWorkers:t,terminalWorker:s,terminalFocused:n,selectedGroupActiveIndex:l,setSelectedGroupActiveIndex:c,setFocusedSelectedWorkerId:h,rallyCommandInputRef:f,rallyCommandDraft:p,rallyCommandSending:d,rallyCommandResultText:g,onRallyCommandDraftChange:y,onSendRallyCommand:C,rosterEntries:S,completionPendingWorkerIds:v,rosterActiveIndex:w,setRosterActiveIndex:E,onActivateRosterIndex:L,onOpenSelectedInTerminal:j,terminalFocusToken:$}){const W=x.useMemo(()=>new Set(v),[v]),Q=v.length;return T.jsxs("div",{className:`terminal-column${s?" terminal-column-selected":""}${s&&n?" terminal-column-focused":""}`,children:[T.jsxs("div",{className:"terminal-header",children:[T.jsx("div",{className:"terminal-header-title",children:t.length>1&&!s?`${t.length} selected agents`:s?`${s.displayName??s.name} (${s.status})`:`Agents (${e.length})`}),!s&&Q>0?T.jsxs("div",{className:"terminal-ready-chip",title:"Agents finished but not yet reviewed in terminal",children:["✦ ",Q," ready"]}):null,s?T.jsx("button",{className:"terminal-open-external",onClick:()=>{j()},disabled:s.status==="stopped",title:"Open in external terminal",type:"button",children:"↗"}):null]}),t.length>1&&!s?T.jsxs("div",{className:"worker-roster",children:[T.jsx("div",{className:"worker-roster-section-label",children:"Selected Group"}),t.map((K,Z)=>T.jsx("button",{className:`worker-roster-item ${Z===l?"active":""}`,onMouseEnter:()=>c(Z),onClick:()=>{c(Z),h(K.id)},type:"button",children:T.jsxs("div",{className:"worker-roster-main",children:[T.jsx("img",{className:"worker-roster-avatar",src:`/api/assets/characters/${encodeURIComponent(K.avatarType)}/rotations/south.png`,alt:"",loading:"lazy","aria-hidden":"true"}),T.jsxs("div",{className:"worker-roster-text",children:[T.jsxs("div",{className:"worker-roster-name-row",children:[T.jsx("div",{className:"worker-roster-name",children:K.displayName??K.name}),W.has(K.id)?T.jsx("span",{className:"worker-complete-badge",title:"Finished and waiting for review",children:"READY"}):null]}),T.jsxs("div",{className:"worker-roster-meta",children:[K.projectId," · ",K.runtimeId," · ",K.status]}),K.activityText?T.jsx("div",{className:"worker-roster-activity",children:K.activityText}):null]})]})},K.id)),T.jsxs("form",{className:"rally-command-card",onSubmit:K=>{K.preventDefault(),C()},children:[T.jsxs("div",{className:"rally-command-header",children:[T.jsx("div",{className:"rally-command-title",children:"Rally Command"}),T.jsxs("div",{className:"rally-command-count",children:[t.length," agents"]})]}),T.jsx("textarea",{ref:f,className:"input rally-command-input",value:p,onChange:K=>{y(K.target.value)},onKeyDown:K=>{K.key==="Enter"&&!K.shiftKey&&!K.ctrlKey&&!K.metaKey&&!K.altKey&&(K.preventDefault(),C())},placeholder:"Type once, send to all selected agents (use $NAME for per-agent names)...",disabled:d,rows:3}),T.jsxs("div",{className:"rally-command-actions",children:[T.jsx("div",{className:"rally-command-hint",children:"Enter sends, Shift+Enter adds a new line, $NAME inserts each agent's name"}),T.jsx("button",{className:"bar-btn",type:"submit",disabled:d||p.length===0,children:d?"Sending...":`Send to ${t.length}`})]}),g?T.jsx("div",{className:"rally-command-result",children:g}):null]})]}):s?T.jsx(Aw,{workerId:s.id,workerName:s.displayName??s.name,focusRequestKey:$}):T.jsx("div",{className:"worker-roster",children:S.length===0?T.jsx("div",{className:"worker-roster-empty",children:"No active agents yet. Summon one from the bottom bar."}):S.map((K,Z)=>T.jsxs("div",{children:[K.kind==="shortcut"&&(Z===0||S[Z-1]?.kind!=="shortcut")?T.jsx("div",{className:"worker-roster-section-label",children:"Summon"}):null,K.kind==="worker"?T.jsx("button",{className:`worker-roster-item ${Z===w?"active":""}`,onMouseEnter:()=>E(Z),onClick:()=>L(Z),type:"button",children:T.jsxs("div",{className:"worker-roster-main",children:[T.jsx("img",{className:"worker-roster-avatar",src:`/api/assets/characters/${encodeURIComponent(K.worker.avatarType)}/rotations/south.png`,alt:"",loading:"lazy","aria-hidden":"true"}),T.jsxs("div",{className:"worker-roster-text",children:[T.jsxs("div",{className:"worker-roster-name-row",children:[T.jsx("div",{className:"worker-roster-name",children:K.worker.displayName??K.worker.name}),W.has(K.worker.id)?T.jsx("span",{className:"worker-complete-badge",title:"Finished and waiting for review",children:"READY"}):null]}),T.jsxs("div",{className:"worker-roster-meta",children:[K.worker.projectId," · ",K.worker.runtimeId," · ",K.worker.status]}),K.worker.activityText?T.jsx("div",{className:"worker-roster-activity",children:K.worker.activityText}):null]})]})}):T.jsx("button",{className:`worker-roster-item worker-roster-item-summon ${Z===w?"active":""}`,onMouseEnter:()=>E(Z),onClick:()=>L(Z),type:"button",children:T.jsxs("div",{className:"worker-roster-main",children:[K.shortcut.avatar?T.jsx("img",{className:"worker-roster-avatar worker-roster-summon-avatar",src:`/api/assets/characters/${encodeURIComponent(K.shortcut.avatar)}/rotations/south.png`,alt:"",loading:"lazy","aria-hidden":"true"}):T.jsx("div",{className:"worker-roster-summon-glyph","aria-hidden":"true",children:"+"}),T.jsxs("div",{className:"worker-roster-text",children:[T.jsx("div",{className:"worker-roster-name",children:K.shortcut.label}),T.jsxs("div",{className:"worker-roster-meta",children:[K.shortcut.project," · ",K.shortcut.runtime]}),T.jsx("div",{className:"worker-roster-activity",children:tv(K.shortcut.hotkeys)})]})]})})]},K.kind==="worker"?K.worker.id:`shortcut-${K.shortcutIndex}-${K.shortcut.label}`))})]})}function Ww(e,t){if(t.killConfirmWorkerIds.length>0)return Il(e)?(e.preventDefault(),t.confirmKillSelection(),!0):(e.preventDefault(),t.closeKillConfirm(),!0);if(!t.isEditableTarget(e.target)&&!t.isTerminalTarget(e.target)){const s=t.findMatchingShortcutIndexes(t.shortcutHotkeyBindings,e);if(s.length>0){e.preventDefault();for(const n of s)t.runSpawn({shortcutIndex:n})}}if(e.key==="Escape")return t.renameModalOpen?(e.preventDefault(),t.closeRenameModal(),!0):t.shortcutsOverlayOpen?(e.preventDefault(),t.setShortcutsOverlayOpen(!1),!0):t.paletteOpen||t.spawnDialogOpen?(e.preventDefault(),t.setPaletteOpen(!1),t.setSpawnDialogOpen(!1),!0):(t.isTerminalTarget(e.target)||t.selectedWorkerId&&(e.preventDefault(),t.applySelection([])),!0);if(t.isTerminalEscapeShortcut(e)){if(!t.renameModalOpen&&!t.shortcutsOverlayOpen&&!t.paletteOpen&&!t.spawnDialogOpen&&t.selectedWorkers.length>1&&t.focusedSelectedWorkerId){const n=t.escapeTerminalFocus();return e.preventDefault(),n&&e.stopPropagation(),t.setFocusedSelectedWorkerId(void 0),!0}if(t.escapeTerminalFocus())return e.preventDefault(),e.stopPropagation(),!0;if(!t.renameModalOpen&&!t.shortcutsOverlayOpen&&!t.paletteOpen&&!t.spawnDialogOpen&&t.selectedWorkerIds.length>0){if(e.preventDefault(),t.selectedWorkerId){const n=t.rosterEntries.findIndex(l=>l.kind==="worker"&&l.worker.id===t.selectedWorkerId);n>=0&&t.setRosterActiveIndex(n)}t.applySelection([])}return!0}return e.key==="?"&&!e.ctrlKey&&!e.metaKey&&!e.altKey?((!t.isEditableTarget(e.target)||t.shortcutsOverlayOpen)&&(e.preventDefault(),t.setShortcutsOverlayOpen(s=>!s)),!0):(e.code==="BracketLeft"||e.code==="BracketRight"||e.key==="="&&!e.shiftKey)&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&!t.isEditableTarget(e.target)&&!t.isTerminalTarget(e.target)?(e.preventDefault(),e.code==="BracketLeft"?t.nudgeMapColumnRatio(e.shiftKey?-1:-t.mapColumnRatioStep):e.code==="BracketRight"?t.nudgeMapColumnRatio(e.shiftKey?1:t.mapColumnRatioStep):t.resetMapColumnRatio(),!0):!1}function Fw(e,t){if(e.key==="Tab"&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&!t.isEditableTarget(e.target))return t.isTerminalTarget(e.target)?!0:(e.preventDefault(),t.selectedWorkers.length>1?(t.cycleSelectedGroupFocus(e.shiftKey?-1:1),!0):(t.cycleSelection(e.shiftKey?-1:1),!0));if(e.code==="Period"&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&!t.isEditableTarget(e.target))return t.isTerminalTarget(e.target)||(e.preventDefault(),t.cycleIdleSelection(e.shiftKey?-1:1)),!0;if(e.code==="Comma"&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&!t.isEditableTarget(e.target))return t.isTerminalTarget(e.target)||(e.preventDefault(),t.cycleIdleSelection(-1)),!0;const s=t.parseControlGroupDigit(e);if(s===void 0)return!1;if((e.ctrlKey||e.metaKey)&&!e.altKey&&t.selectedWorkerIds.length>0)return e.preventDefault(),t.setControlGroups(n=>{const l=new Set(t.selectedWorkerIds),c=n[s]??[],h=new Set(c);if(c.length===t.selectedWorkerIds.length&&t.selectedWorkerIds.every(d=>h.has(d))){const d={...n};return delete d[s],d}const p={...n};for(const[d,g]of Object.entries(p)){const y=Number(d);!Number.isInteger(y)||y<0||y>9||y===s||!Array.isArray(g)||(p[y]=g.filter(C=>!l.has(C)))}return p[s]=[...t.selectedWorkerIds],p}),!0;if(!e.ctrlKey&&!e.metaKey&&!e.altKey&&!e.shiftKey&&!t.isEditableTarget(e.target)){const n=t.controlGroupByDigitRef.current[s]??[];if(n.length===0)return!0;const l=new Set(t.activeWorkers.map(h=>h.id)),c=n.filter(h=>l.has(h));if(c.length===0)return t.setControlGroups(h=>{if(!(s in h))return h;const f={...h};return delete f[s],f}),!0;e.preventDefault(),t.applySelection(c,{center:c.length===1})}return!0}function Hw(e,t){if(t.isEditableTarget(e.target))return!0;const s=e.key.toLowerCase();if((s==="k"&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&(t.inSelectedGroupView?e.shiftKey:!e.shiftKey)||e.key==="Delete")&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&t.selectedWorkerIds.length>0)return e.preventDefault(),t.onKillSelected(),!0;if(t.selectedWorkers.length>1&&!t.isTerminalTarget(e.target)){if(t.inSelectedGroupView&&s==="c"&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&!e.shiftKey)return t.focusRallyCommandInput()&&e.preventDefault(),!0;if((s==="j"||s==="k")&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&!e.shiftKey){e.preventDefault();const l=s==="j"?1:-1,c=t.clampNumber(t.selectedGroupActiveIndex+l,0,t.selectedWorkers.length-1),h=t.selectedWorkers[c];return t.setSelectedGroupActiveIndex(c),t.focusedSelectedWorkerId&&h&&t.setFocusedSelectedWorkerId(h.id),!0}if(Il(e)){const l=t.selectedWorkers.find(c=>c.id===t.focusedSelectedWorkerId)??t.selectedWorkers[t.selectedGroupActiveIndex]??t.selectedWorkers[0];return l&&(e.preventDefault(),t.setFocusedSelectedWorkerId(l.id),t.requestTerminalFocus()),!0}}if(t.selectedWorkerIds.length===0&&t.rosterEntries.length>0&&!t.isTerminalTarget(e.target)){if(s==="k"&&e.shiftKey&&!e.ctrlKey&&!e.metaKey&&!e.altKey)return e.preventDefault(),t.onKillRosterActive(),!0;if(s==="n"&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&!e.shiftKey&&t.firstSummonEntryIndex!==void 0)return e.preventDefault(),t.setRosterActiveIndex(t.firstSummonEntryIndex),!0;if((s==="j"||s==="k")&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&!e.shiftKey)return e.preventDefault(),t.setRosterActiveIndex(l=>{const c=s==="j"?1:-1;return t.clampNumber(l+c,0,t.rosterEntries.length-1)}),!0;if(Il(e))return e.preventDefault(),t.onActivateRosterIndex(t.rosterActiveIndex),!0}if(s==="r"&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&t.selectedWorkers.length>0){e.preventDefault();const l=t.selectedWorkers.length>1?t.selectedWorkers.find(c=>c.id===t.focusedSelectedWorkerId):void 0;return t.openRenameForWorkers(l?[l]:t.selectedWorkers),!0}return s==="m"&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&t.selectedWorkers.length>0?(e.preventDefault(),t.onToggleMovementModeSelected(),!0):Il(e)&&t.selectedWorkerId?(e.preventDefault(),t.requestTerminalFocus(),!0):e.key!=="/"||e.metaKey||e.ctrlKey||e.altKey?!1:(e.preventDefault(),t.setPaletteOpen(!0),t.setSpawnDialogOpen(!1),t.setShortcutsOverlayOpen(!1),!0)}function Il(e){return e.key==="Enter"&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&!e.shiftKey}function jw(e){const t=x.useRef(e);t.current=e,x.useEffect(()=>{const s=n=>{const l=t.current;$w(n,l)||Ww(n,l)||Fw(n,l)||Hw(n,l)};return window.addEventListener("keydown",s,!0),()=>window.removeEventListener("keydown",s,!0)},[])}function $w(e,t){return!(!t.isTerminalTarget(e.target)||t.killConfirmWorkerIds.length>0||t.renameModalOpen||t.shortcutsOverlayOpen||t.paletteOpen||t.spawnDialogOpen||e.key==="Escape"||t.isTerminalEscapeShortcut(e))}async function wi(e,t){const s=await fetch(e,{headers:{"Content-Type":"application/json",...t?.headers??{}},...t});if(!s.ok){const n=await s.json().catch(()=>({error:s.statusText}));throw new Error(n.error??`Request failed: ${s.status}`)}if(s.status!==204)return await s.json()}function Kw(){return wi("/api/config")}async function Q_(){return(await wi("/api/workers")).workers}function Uw(e){return wi("/api/workers/spawn",{method:"POST",body:JSON.stringify(e)})}function Vw(e){return wi(`/api/workers/${e}/stop`,{method:"POST"})}function Yw(e,t,s){return wi(`/api/workers/${e}/position`,{method:"PATCH",body:JSON.stringify({x:t,y:s})})}function J_(e,t){return wi(`/api/workers/${e}/rename`,{method:"PATCH",body:JSON.stringify({displayName:t})})}function qw(e,t){return wi(`/api/workers/${e}/movement-mode`,{method:"PATCH",body:JSON.stringify({movementMode:t})})}function Xw(e){return wi(`/api/workers/${e}/open-terminal`,{method:"POST"})}function Z_(e,t,s=!0){return wi("/api/workers/broadcast-input",{method:"POST",body:JSON.stringify({workerIds:e,text:t,submit:s})})}const Gw=3e4;function Qw(e){const[t,s]=x.useState(null),[n,l]=x.useState([]),[c,h]=x.useState(!1);return x.useEffect(()=>{Promise.all([Kw(),Q_()]).then(([f,p])=>{s(f),l(p),h(!0)}).catch(f=>{const p=f instanceof Error?f.message:"Failed to load Arcane Agents data";e(p)})},[e]),x.useEffect(()=>{let f=null,p=null,d=null,g=!1,y=!1;const C=async()=>{if(!(g||y)){y=!0;try{const E=await Q_();if(g)return;l(E),h(!0)}catch{}finally{y=!1}}},S=()=>{document.visibilityState==="visible"&&C()},v=()=>{C()};function w(){if(g)return;const E=window.location.protocol==="https:"?"wss":"ws";f=new WebSocket(`${E}://${window.location.host}/api/ws`),f.addEventListener("open",()=>{e(void 0),C()}),f.addEventListener("message",L=>{const j=JSON.parse(String(L.data));if(j.type==="init"){s(j.config),l(j.workers),h(!0);return}if(j.type==="worker-created"||j.type==="worker-updated"){l($=>tn($,j.worker));return}j.type==="worker-removed"&&l($=>$.filter(W=>W.id!==j.workerId))}),f.addEventListener("error",()=>{e("Realtime connection failed. Retrying...")}),f.addEventListener("close",()=>{g||(p=setTimeout(w,2e3))})}return d=setInterval(()=>{C()},Gw),window.addEventListener("focus",v),document.addEventListener("visibilitychange",S),w(),()=>{g=!0,p&&clearTimeout(p),d&&clearInterval(d),window.removeEventListener("focus",v),document.removeEventListener("visibilitychange",S),f?.close()}},[e]),{config:t,workers:n,setWorkers:l,workersHydrated:c}}function Jw(e,t){const[s,n]=x.useState(()=>Xg()),l=x.useRef(s),[c,h]=x.useState(()=>Qg());return x.useEffect(()=>{l.current=s,Gg(s)},[s]),x.useEffect(()=>{Jg(c)},[c]),x.useEffect(()=>{if(!t)return;const f=new Set(e.map(p=>p.id));n(p=>{let d=!1;const g={...p};for(const[y,C]of Object.entries(g)){if(!Array.isArray(C)||C.length===0){delete g[Number(y)],d=!0;continue}const S=C.filter(v=>f.has(v));S.length!==C.length&&(S.length===0?delete g[Number(y)]:g[Number(y)]=S,d=!0)}return d?g:p})},[e,t]),{controlGroups:s,setControlGroups:n,controlGroupByDigitRef:l,mapColumnRatio:c,setMapColumnRatio:f=>{h(p=>{const d=vi(f,no,oo);return d===p?p:d})},nudgeMapColumnRatio:f=>{h(p=>vi(p+f,no,oo))},resetMapColumnRatio:()=>{h(Gn)}}}function Zw(e,t,s){const[n,l]=x.useState([]),[c,h]=x.useState(0),[f,p]=x.useState(void 0),[d,g]=x.useState(void 0),[y,C]=x.useState(0),[S,v]=x.useState(0),[w,E]=x.useState(void 0),L=n.length===1?n[0]:void 0,j=x.useMemo(()=>new Set(n),[n]),$=x.useMemo(()=>e.filter(b=>j.has(b.id)),[e,j]),W=x.useMemo(()=>e.filter(b=>b.status==="idle"),[e]),Q=x.useCallback((b,I)=>{const N=Array.from(new Set(b));l(N),E(void 0);const O=N.length===1?N[0]:void 0;I?.center&&O&&(p(O),h(Y=>Y+1)),I?.focusTerminal&&O&&g(Y=>(Y??0)+1)},[]),K=x.useCallback(()=>{g(b=>(b??0)+1)},[]),Z=x.useCallback(b=>{Q(b?[b]:[])},[Q]),fe=x.useCallback(b=>{Q(b)},[Q]),oe=x.useCallback(b=>{Q([b],{focusTerminal:!0})},[Q]),he=x.useCallback(b=>{if(e.length===0)return;const I=e.findIndex(B=>B.id===L),O=((I>=0?I:b>0?-1:0)+b+e.length)%e.length,Y=e[O];Y&&Q([Y.id],{center:!0})},[e,Q,L]),V=x.useCallback(b=>{if(W.length===0)return;const I=W.findIndex(B=>B.id===L),O=((I>=0?I:b>0?-1:0)+b+W.length)%W.length,Y=W[O];Y&&Q([Y.id],{center:!0})},[Q,W,L]),D=x.useCallback(b=>{if($.length<=1)return;const I=w?$.findIndex(B=>B.id===w):vi(S,0,$.length-1),O=((I>=0?I:b>0?-1:0)+b+$.length)%$.length,Y=$[O];Y&&(v(O),E(Y.id))},[w,S,$]);return x.useEffect(()=>{if(t.length===0){C(0);return}if(L){const b=t.findIndex(I=>I.kind==="worker"&&I.worker.id===L);b>=0&&C(b);return}C(b=>vi(b,0,t.length-1))},[t,L]),x.useEffect(()=>{if($.length<=1){v(0),E(void 0),s?.();return}if(w){const b=$.findIndex(I=>I.id===w);if(b>=0){v(b);return}E(void 0)}v(b=>vi(b,0,$.length-1))},[w,s,$]),x.useEffect(()=>{const b=new Set(e.map(I=>I.id));l(I=>I.filter(N=>b.has(N)))},[e]),{selectedWorkerIds:n,setSelectedWorkerIds:l,selectedWorkerId:L,selectedWorkers:$,mapCenterToken:c,mapCenterWorkerId:f,terminalFocusToken:d,rosterActiveIndex:y,setRosterActiveIndex:C,selectedGroupActiveIndex:S,setSelectedGroupActiveIndex:v,focusedSelectedWorkerId:w,setFocusedSelectedWorkerId:E,applySelection:Q,requestTerminalFocus:K,onSelectWorker:Z,onSelectionChange:fe,onActivateWorker:oe,cycleSelection:he,cycleIdleSelection:V,cycleSelectedGroupFocus:D}}function e1(e){const[t,s]=x.useState(!1);return x.useEffect(()=>{e||s(!1)},[e]),x.useEffect(()=>{const n=()=>{s(Kl(document.activeElement))},l=()=>{setTimeout(n,0)},c=()=>{s(!1)};return window.addEventListener("focusin",n,!0),window.addEventListener("focusout",l,!0),window.addEventListener("blur",c),n(),()=>{window.removeEventListener("focusin",n,!0),window.removeEventListener("focusout",l,!0),window.removeEventListener("blur",c)}},[]),t}function t1({workers:e,reviewedWorkerId:t}){const[s,n]=x.useState([]),l=x.useRef(new Map),c=x.useRef(t);return x.useEffect(()=>{c.current=t},[t]),x.useEffect(()=>{const h=new Set(e.map(g=>g.id)),f=new Set,p=new Set;for(const g of e)if(l.current.get(g.id)==="working"&&g.status==="idle"){if(g.id===c.current)continue;p.add(g.id)}else g.status!=="idle"&&f.add(g.id);const d=new Map;for(const g of e)d.set(g.id,g.status);l.current=d,n(g=>{const C=[...g.filter(S=>h.has(S)&&!f.has(S))];for(const S of p)C.includes(S)||C.push(S);return C.length===g.length&&C.every((S,v)=>S===g[v])?g:C})},[e]),x.useEffect(()=>{t&&n(h=>h.filter(f=>f!==t))},[t]),{pendingCompletionWorkerIds:s}}function r1(e){const[t,s]=x.useState([]),n=x.useCallback(c=>{s(h=>[{worker:c,startedAtMs:Date.now()},...h.filter(f=>f.worker.id!==c.id)])},[]),l=x.useCallback(c=>{s(h=>h.filter(f=>f.worker.id!==c))},[]);return x.useEffect(()=>{const c=setInterval(()=>{const h=Date.now();s(f=>f.filter(p=>h-p.startedAtMs<e))},80);return()=>{clearInterval(c)}},[e]),{fadingWorkers:t,queueWorkerFade:n,removeWorkerFade:l}}const i1=1600,Jc=["move","selected"],s1={move:["move.mp3","move_variant_1.mp3","move_variant_2.mp3","move_variant_3.mp3"],selected:["selected.mp3","selected_variant_1.mp3","selected_variant_2.mp3","selected_variant_3.mp3"]};function n1({config:e,workers:t,workersHydrated:s,selectedWorkerIds:n}){const l=e?.audio.enableSound??!0,c=x.useRef(new Map),h=x.useRef(new Set),f=x.useRef(new Map),p=x.useRef(!1),d=x.useRef(!1),g=x.useRef(new Map),y=x.useRef(new Set),C=x.useRef(new Map),S=x.useRef(new Map),v=x.useRef(new Set),w=x.useRef(null);x.useEffect(()=>{f.current=new Map(t.map(V=>[V.id,V]))},[t]);const E=x.useCallback((V,D)=>`/api/assets/characters/${encodeURIComponent(V)}/voice-lines/${D}.mp3`,[]),L=x.useCallback((V,D)=>`/api/assets/characters/${encodeURIComponent(V)}/voice-lines/${encodeURIComponent(D)}`,[]),j=x.useCallback((V,D)=>{const b=g.current.get(V)?.[D]??[];return b.length>0?b:s1[D].map(I=>L(V,I))},[L]),$=x.useCallback(V=>{if(v.current.has(V))return;v.current.add(V);const D=new Audio(V);D.preload="auto",D.addEventListener("canplay",()=>{S.current.set(V,!0)},{once:!0}),D.addEventListener("error",()=>{S.current.set(V,!1)},{once:!0}),D.load()},[]),W=x.useCallback(V=>{if(!l||S.current.get(V)===!1)return;const D=w.current;D&&(D.pause(),D.currentTime=0);const b=new Audio(V);b.preload="auto",b.addEventListener("canplay",()=>{S.current.set(V,!0)},{once:!0}),b.addEventListener("error",()=>{S.current.set(V,!1)},{once:!0}),w.current=b,b.play().catch(()=>{})},[l]),Q=x.useCallback((V,D)=>{W(E(V.avatarType,D))},[W,E]),K=x.useCallback(V=>{if(!l)return;const D=V.filter(O=>S.current.get(O)===!0),b=V.filter(O=>S.current.get(O)!==!1),I=D.length>0?D:b,N=ep(I);N&&W(N)},[W,l]),Z=x.useCallback(V=>{const D=j(V.avatarType,"selected");K(D)},[K,j]),fe=x.useCallback(V=>{const D=j(V.avatarType,"move");K(D)},[K,j]),oe=x.useCallback(async V=>{try{const D=await fetch(`/api/avatars/${encodeURIComponent(V)}/voice-lines`);if(!D.ok)return;const b=await D.json();if(!Array.isArray(b.files))return;const I=b.files.filter(O=>typeof O=="string"&&O.toLowerCase().endsWith(".mp3")).sort((O,Y)=>O.localeCompare(Y)),N={move:[],selected:[]};for(const O of Jc)N[O]=I.filter(Y=>Y.toLowerCase().startsWith(O)).map(Y=>L(V,Y));g.current.set(V,N);for(const O of Jc)for(const Y of N[O])$(Y)}catch{y.current.delete(V)}},[$,L]);x.useEffect(()=>{const V=Array.from(new Set(t.map(D=>D.avatarType)));for(const D of V)y.current.has(D)||(y.current.add(D),oe(D))},[oe,t]),x.useEffect(()=>{if(!l)return;const V=Array.from(new Set(t.map(b=>b.avatarType))),D=["arrive","attention","complete","death"];for(const b of V){for(const I of D)$(E(b,I));for(const I of Jc)for(const N of j(b,I))$(N)}},[$,E,j,l,t]),x.useEffect(()=>{if(!s)return;const V=new Map(t.map(N=>[N.id,N])),D=c.current,b=C.current,I=performance.now();if(!p.current){p.current=!0,c.current=V;return}for(const N of t){const O=D.get(N.id);if(!O){Q(N,"arrive"),b.set(N.id,I+i1);continue}o1(O.status,N.status)&&Q(N,"attention"),l1(O.status,N.status)&&!c1(N)&&Q(N,"complete")}for(const[N,O]of D.entries())V.has(N)||(Q(O,"death"),b.delete(N));c.current=V},[Q,t,s]),x.useEffect(()=>{if(!s)return;const V=new Set(n),D=h.current;if(!d.current){d.current=!0,h.current=V;return}const b=n.filter(B=>!D.has(B)),I=C.current,N=performance.now(),O=b.filter(B=>{const F=I.get(B);return F===void 0?!0:F<=N?(I.delete(B),!0):!1}),Y=ep(O);if(Y){const B=f.current.get(Y);B&&Z(B)}h.current=V},[Z,n,s]);const he=x.useCallback(V=>{const D=f.current.get(V);D&&fe(D)},[fe]);return x.useEffect(()=>()=>{const V=w.current;V&&(V.pause(),V.currentTime=0,w.current=null)},[]),{playMoveVoiceLine:he}}function o1(e,t){return e!=="attention"&&t==="attention"}function l1(e,t){return e==="working"&&t==="idle"}const a1=1e4;function c1(e){return Date.now()-new Date(e.createdAt).getTime()<a1}function ep(e){if(e.length===0)return;const t=Math.floor(Math.random()*e.length);return e[t]}function h1({workers:e,activeWorkers:t,renameModalOpen:s,setRenameModalOpen:n,renameTargetWorkerIds:l,setRenameTargetWorkerIds:c,killConfirmWorkerIds:h,setKillConfirmWorkerIds:f,setRenameDraft:p}){const d=x.useMemo(()=>{if(l.length===0)return[];const v=new Map(e.map(w=>[w.id,w]));return l.map(w=>v.get(w)).filter(w=>!!w)},[l,e]),g=x.useMemo(()=>{if(h.length===0)return[];const v=new Map(e.map(w=>[w.id,w]));return h.map(w=>v.get(w)).filter(w=>!!w)},[h,e]),y=x.useCallback(()=>{n(!1),c([])},[n,c]),C=x.useCallback(()=>{f([])},[f]),S=x.useCallback(v=>{v.length!==0&&(p(v.length===1?v[0].displayName??v[0].name:""),c(v.map(w=>w.id)),n(!0))},[p,n,c]);return x.useEffect(()=>{if(!s||l.length===0)return;const v=new Set(t.map(w=>w.id));l.some(w=>v.has(w))||y()},[t,y,s,l]),x.useEffect(()=>{if(h.length===0)return;const v=new Set(t.map(w=>w.id));h.some(w=>v.has(w))||C()},[t,C,h]),{renameTargetWorkers:d,killConfirmWorkers:g,closeRenameModal:y,closeKillConfirm:C,openRenameForWorkers:S}}function u1({workers:e,selectedWorkerIds:t,setSelectedWorkerIds:s,rosterEntries:n,rosterActiveIndex:l,setKillConfirmWorkerIds:c,closeKillConfirm:h,killConfirmWorkerIds:f,queueWorkerFade:p,removeWorkerFade:d,setWorkers:g,showError:y}){const C=x.useCallback(async E=>{const L=e.find(j=>j.id===E);if(L){h(),p(L);try{const j=await Vw(E);g($=>$.filter(W=>W.id!==j.workerId)),s($=>$.filter(W=>W!==j.workerId))}catch(j){d(E),y(j)}}},[h,p,d,s,g,y,e]),S=x.useCallback(()=>{t.length!==0&&c(t)},[t,c]),v=x.useCallback(()=>{const E=n[l];!E||E.kind!=="worker"||c([E.worker.id])},[l,n,c]),w=x.useCallback(()=>{if(f.length===0)return;const E=[...f];h();for(const L of E)C(L)},[h,f,C]);return{onKillSelected:S,onKillRosterActive:v,confirmKillSelection:w}}function d1({setWorkers:e,selectedWorkers:t,terminalWorkerId:s,applySelection:n,setSpawnDialogOpen:l,setPaletteOpen:c,renameTargetWorkerIds:h,closeRenameModal:f,showError:p}){const d=x.useCallback(async v=>{try{const w=t.map(j=>j.id),E="shortcutIndex"in v&&w.length>0?{...v,spawnNearWorkerIds:w}:v,L=await Uw(E);e(j=>tn(j,L)),n([L.id],{center:!0}),l(!1),c(!1)}catch(w){p(w)}},[n,t,c,l,e,p]),g=x.useCallback(async v=>{const w=[...h];if(w.length===0){f();return}try{if(w.length===1){const E=await J_(w[0],v);e(L=>tn(L,E))}else{const E=v.trim(),L=await Promise.all(w.map((j,$)=>J_(j,E.length>0?`${E} ${$+1}`:"")));e(j=>{let $=j;for(const W of L)$=tn($,W);return $})}f()}catch(E){p(E)}},[f,h,e,p]),y=x.useCallback(async()=>{if(t.length===0)return;const v=t.every(w=>w.movementMode==="hold")?"wander":"hold";try{const w=await Promise.all(t.map(E=>qw(E.id,v)));e(E=>{let L=E;for(const j of w)L=tn(L,j);return L})}catch(w){p(w)}},[t,e,p]),C=x.useCallback(async()=>{if(s)try{await Xw(s)}catch(v){p(v)}},[p,s]),S=x.useCallback((v,w)=>{Yw(v,w.x,w.y).then(E=>{e(L=>tn(L,E))}).catch(E=>{p(E)})},[e,p]);return{runSpawn:d,submitRename:g,onToggleMovementModeSelected:y,onOpenSelectedInTerminal:C,onPositionCommit:S}}function f1({selectedWorkers:e,rallyCommandDraft:t,setRallyCommandDraft:s,rallyCommandSending:n,setRallyCommandSending:l,rallyCommandResultText:c,setRallyCommandResultText:h,showError:f}){const p=x.useCallback(async()=>{if(n)return;const g=e.map(y=>y.id);if(!(g.length<=1)){if(t.length===0){h("Enter a command to broadcast.");return}l(!0),h(void 0);try{const C=t.includes("$NAME")?iv(await Promise.all(e.map(async S=>{const v=t.replace(/\$NAME/g,S.displayName??S.name);try{return await Z_([S.id],v,!0)}catch(w){return{requestedCount:1,deliveredWorkerIds:[],skippedWorkerIds:[],failed:[{workerId:S.id,error:w instanceof Error?w.message:"Failed to send input"}]}}}))):await Z_(g,t,!0);s(""),h(rv(C))}catch(y){f(y)}finally{l(!1)}}},[t,n,e,s,h,l,f]),d=x.useCallback(g=>{s(g),c&&h(void 0)},[c,s,h]);return{onSendRallyCommand:p,onRallyCommandDraftChange:d}}function _1({workers:e,activeWorkers:t,setWorkers:s,selectedWorkers:n,selectedWorkerIds:l,setSelectedWorkerIds:c,focusedSelectedWorkerId:h,terminalWorkerId:f,rosterEntries:p,rosterActiveIndex:d,setRosterActiveIndex:g,applySelection:y,setSpawnDialogOpen:C,setPaletteOpen:S,renameModalOpen:v,setRenameModalOpen:w,renameTargetWorkerIds:E,setRenameTargetWorkerIds:L,setRenameDraft:j,killConfirmWorkerIds:$,setKillConfirmWorkerIds:W,rallyCommandDraft:Q,setRallyCommandDraft:K,rallyCommandSending:Z,setRallyCommandSending:fe,rallyCommandResultText:oe,setRallyCommandResultText:he,queueWorkerFade:V,removeWorkerFade:D,setErrorText:b}){const I=x.useCallback(Fe=>{b(Fe instanceof Error?Fe.message:"Unknown request failure")},[b]),{renameTargetWorkers:N,killConfirmWorkers:O,closeRenameModal:Y,closeKillConfirm:B,openRenameForWorkers:F}=h1({workers:e,activeWorkers:t,renameModalOpen:v,setRenameModalOpen:w,renameTargetWorkerIds:E,setRenameTargetWorkerIds:L,killConfirmWorkerIds:$,setKillConfirmWorkerIds:W,setRenameDraft:j}),{runSpawn:J,submitRename:R,onToggleMovementModeSelected:U,onOpenSelectedInTerminal:le,onPositionCommit:ie}=d1({setWorkers:s,selectedWorkers:n,terminalWorkerId:f,applySelection:y,setSpawnDialogOpen:C,setPaletteOpen:S,renameTargetWorkerIds:E,closeRenameModal:Y,showError:I}),{onKillSelected:ue,onKillRosterActive:_e,confirmKillSelection:Re}=u1({workers:e,selectedWorkerIds:l,setSelectedWorkerIds:c,rosterEntries:p,rosterActiveIndex:d,setKillConfirmWorkerIds:W,closeKillConfirm:B,killConfirmWorkerIds:$,queueWorkerFade:V,removeWorkerFade:D,setWorkers:s,showError:I}),{onSendRallyCommand:ge,onRallyCommandDraftChange:ke}=f1({selectedWorkers:n,rallyCommandDraft:Q,setRallyCommandDraft:K,rallyCommandSending:Z,setRallyCommandSending:fe,rallyCommandResultText:oe,setRallyCommandResultText:he,showError:I}),Ae=x.useCallback(Fe=>{const be=p[Fe];if(be){if(g(Fe),be.kind==="worker"){y([be.worker.id],{center:!0});return}J({shortcutIndex:be.shortcutIndex})}},[y,p,J,g]),Ye=x.useCallback(()=>{if(n.length===0)return;const Fe=n.length>1?n.find(be=>be.id===h):void 0;F(Fe?[Fe]:n)},[h,F,n]);return{renameTargetWorkers:N,killConfirmWorkers:O,runSpawn:J,closeRenameModal:Y,closeKillConfirm:B,openRenameForWorkers:F,submitRename:R,onKillSelected:ue,onKillRosterActive:_e,confirmKillSelection:Re,onToggleMovementModeSelected:U,onActivateRosterIndex:Ae,onOpenSelectedInTerminal:le,onSendRallyCommand:ge,onRallyCommandDraftChange:ke,onRenameSelected:Ye,onPositionCommit:ie}}function p1(e){const t=[];return e.forEach((s,n)=>{for(const l of s.hotkeys??[]){const c=v1(l);c&&t.push({shortcutIndex:n,hotkey:c})}}),t}function m1(e,t){const s=[],n=new Set;for(const l of e)g1(l.hotkey,t)&&(n.has(l.shortcutIndex)||(n.add(l.shortcutIndex),s.push(l.shortcutIndex)));return s}function g1(e,t){return t.ctrlKey!==e.ctrl||t.metaKey!==e.meta||t.altKey!==e.alt||t.shiftKey!==e.shift?!1:w1(t.key)===e.key?!0:e.code?t.code===e.code:!1}function v1(e){const t=y1(e);if(t.length===0)return;let s=!1,n=!1,l=!1,c=!1,h;for(const p of t){const d=p.trim().toLowerCase();if(d){if(d==="ctrl"||d==="control"){s=!0;continue}if(d==="cmd"||d==="meta"||d==="super"){n=!0;continue}if(d==="alt"||d==="option"){l=!0;continue}if(d==="shift"){c=!0;continue}if(h)return;h=p}}if(!h)return;const f=S1(h);if(f)return{key:f.key,code:f.code,ctrl:s,meta:n,alt:l,shift:c}}function y1(e){const t=e.trim().replace(/\s+/g,"");if(!t)return[];if(t.includes("+"))return t.split("+").filter(l=>l.length>0);const s=t.toLowerCase();return s.includes("ctrl-")||s.includes("control-")||s.includes("cmd-")||s.includes("meta-")||s.includes("super-")||s.includes("alt-")||s.includes("option-")||s.includes("shift-")?t.split("-").filter(l=>l.length>0):[t]}function S1(e){const t=e.trim();if(!t)return;const s=t.toLowerCase();if(s==="space"||s==="spacebar")return{key:" ",code:"Space"};if(s==="esc")return{key:"escape",code:"Escape"};if(s==="return")return{key:"enter",code:"Enter"};if(s==="up")return{key:"arrowup",code:"ArrowUp"};if(s==="down")return{key:"arrowdown",code:"ArrowDown"};if(s==="left")return{key:"arrowleft",code:"ArrowLeft"};if(s==="right")return{key:"arrowright",code:"ArrowRight"};if(/^key[a-z]$/.test(s)){const n=s.slice(3);return{key:n,code:`Key${n.toUpperCase()}`}}if(/^digit[0-9]$/.test(s)){const n=s.slice(5);return{key:n,code:`Digit${n}`}}if(/^numpad[0-9]$/.test(s)){const n=s.slice(6);return{key:n,code:`Numpad${n}`}}if(/^f[0-9]{1,2}$/.test(s))return{key:s,code:s.toUpperCase()};if(t.length===1){if(/^[a-z]$/i.test(t)){const n=t.toLowerCase();return{key:n,code:`Key${n.toUpperCase()}`}}return/^[0-9]$/.test(t)?{key:t}:{key:t}}return{key:s}}function w1(e){const t=e.toLowerCase();return t==="spacebar"?" ":t}function C1(){const[e,t]=x.useState(!1),[s,n]=x.useState(!1),[l,c]=x.useState(!1),[h,f]=x.useState(!1),[p,d]=x.useState([]),[g,y]=x.useState(""),[C,S]=x.useState([]),[v,w]=x.useState(""),[E,L]=x.useState(!1),[j,$]=x.useState(void 0),[W,Q]=x.useState(void 0),K=x.useRef(null),{config:Z,workers:fe,setWorkers:oe,workersHydrated:he}=Qw(Q),{fadingWorkers:V,queueWorkerFade:D,removeWorkerFade:b}=r1(qg),I=x.useMemo(()=>fe.filter(ne=>ne.status!=="stopped"),[fe]),{controlGroups:N,setControlGroups:O,controlGroupByDigitRef:Y,mapColumnRatio:B,setMapColumnRatio:F,nudgeMapColumnRatio:J,resetMapColumnRatio:R}=Jw(I,he),U=x.useRef(null),le=x.useRef(void 0),[ie,ue]=x.useState(!1),_e=x.useMemo(()=>Z?.shortcuts??[],[Z]),Re=x.useMemo(()=>p1(_e),[_e]),ge=x.useMemo(()=>[...I.map(ne=>({kind:"worker",worker:ne})),..._e.map((ne,De)=>({kind:"shortcut",shortcut:ne,shortcutIndex:De}))],[I,_e]),ke=x.useMemo(()=>{const ne=ge.findIndex(De=>De.kind==="shortcut");return ne>=0?ne:void 0},[ge]),Ae=x.useCallback(()=>{w(""),$(void 0)},[]),{selectedWorkerIds:Ye,setSelectedWorkerIds:Fe,selectedWorkerId:be,selectedWorkers:et,mapCenterToken:ni,mapCenterWorkerId:it,terminalFocusToken:dr,rosterActiveIndex:Ft,setRosterActiveIndex:at,selectedGroupActiveIndex:qt,setSelectedGroupActiveIndex:Nt,focusedSelectedWorkerId:fr,setFocusedSelectedWorkerId:Ci,applySelection:ki,requestTerminalFocus:bi,onSelectWorker:Ji,onSelectionChange:xi,onActivateWorker:Tr,cycleSelection:Oe,cycleIdleSelection:oi,cycleSelectedGroupFocus:Fr}=Zw(I,ge,Ae),rr=x.useMemo(()=>I.find(ne=>ne.id===be),[I,be]),Pr=x.useMemo(()=>{if(fr)return et.find(ne=>ne.id===fr)},[fr,et]),Ei=rr??(et.length>1?Pr:void 0),_r=Ei?.id,pr=et.length>1&&!Ei,Hr=e1(_r),{pendingCompletionWorkerIds:Lr}=t1({workers:I,reviewedWorkerId:_r}),{playMoveVoiceLine:jr}=n1({config:Z,workers:I,workersHydrated:he,selectedWorkerIds:Ye}),Zi=x.useCallback(()=>{const ne=document.activeElement;return!(ne instanceof HTMLElement)||!ne.closest(".terminal-panel")?!1:(ne.blur(),document.querySelector(".map-canvas")?.focus(),!0)},[]),$r=x.useCallback(()=>{const ne=K.current;if(!ne)return!1;ne.focus();const De=ne.value.length;return ne.setSelectionRange(De,De),!0},[]),ir=x.useCallback(ne=>{const De=U.current;if(!De)return;const Ge=De.getBoundingClientRect(),$e=Math.max(1,Ge.width-Bc),sr=ne-Ge.left-Bc/2,Me=vi(sr/$e,no,oo);F(Me)},[F]);x.useEffect(()=>{if(ie)return document.body.classList.add("split-pane-dragging"),()=>{document.body.classList.remove("split-pane-dragging")}},[ie]);const{renameTargetWorkers:Kr,killConfirmWorkers:Es,runSpawn:Ur,closeRenameModal:es,closeKillConfirm:ts,openRenameForWorkers:rs,submitRename:Ms,onKillSelected:Vr,onKillRosterActive:is,confirmKillSelection:mr,onToggleMovementModeSelected:Rs,onActivateRosterIndex:q,onOpenSelectedInTerminal:X,onSendRallyCommand:se,onRallyCommandDraftChange:de,onRenameSelected:ye,onPositionCommit:ze}=_1({workers:fe,activeWorkers:I,setWorkers:oe,selectedWorkers:et,selectedWorkerIds:Ye,setSelectedWorkerIds:Fe,focusedSelectedWorkerId:fr,terminalWorkerId:_r,rosterEntries:ge,rosterActiveIndex:Ft,setRosterActiveIndex:at,applySelection:ki,setSpawnDialogOpen:t,setPaletteOpen:n,renameModalOpen:h,setRenameModalOpen:f,renameTargetWorkerIds:C,setRenameTargetWorkerIds:S,setRenameDraft:y,killConfirmWorkerIds:p,setKillConfirmWorkerIds:d,rallyCommandDraft:v,setRallyCommandDraft:w,rallyCommandSending:E,setRallyCommandSending:L,rallyCommandResultText:j,setRallyCommandResultText:$,queueWorkerFade:D,removeWorkerFade:b,setErrorText:Q});return jw({activeWorkers:I,applySelection:ki,clampNumber:vi,closeKillConfirm:ts,closeRenameModal:es,confirmKillSelection:mr,controlGroupByDigitRef:Y,cycleIdleSelection:oi,cycleSelectedGroupFocus:Fr,cycleSelection:Oe,escapeTerminalFocus:Zi,findMatchingShortcutIndexes:m1,firstSummonEntryIndex:ke,focusRallyCommandInput:$r,focusedSelectedWorkerId:fr,inSelectedGroupView:pr,isEditableTarget:jh,isTerminalEscapeShortcut:nv,isTerminalTarget:Zg,killConfirmWorkerIds:p,mapColumnRatioStep:Hh,nudgeMapColumnRatio:J,onActivateRosterIndex:q,onKillRosterActive:is,onKillSelected:Vr,onToggleMovementModeSelected:Rs,openRenameForWorkers:rs,paletteOpen:s,parseControlGroupDigit:sv,renameModalOpen:h,requestTerminalFocus:bi,resetMapColumnRatio:R,rosterActiveIndex:Ft,rosterEntries:ge,runSpawn:Ur,selectedGroupActiveIndex:qt,selectedWorkerId:be,selectedWorkerIds:Ye,selectedWorkers:et,setControlGroups:O,setFocusedSelectedWorkerId:Ci,setPaletteOpen:n,setRosterActiveIndex:at,setSelectedGroupActiveIndex:Nt,setShortcutsOverlayOpen:c,setSpawnDialogOpen:t,shortcutHotkeyBindings:Re,shortcutsOverlayOpen:l,spawnDialogOpen:e}),T.jsxs("div",{ref:U,className:"app-shell",style:{gridTemplateColumns:`minmax(0px, ${B.toFixed(3)}fr) ${Bc}px minmax(0px, ${(1-B).toFixed(3)}fr)`},children:[T.jsxs("div",{className:"map-column",children:[T.jsx(v0,{workers:I,fadingWorkers:V,selectedWorkerId:be,selectedWorkerIds:Ye,focusedSelectedWorkerId:fr,terminalFocusedSelected:!!(be&&Hr),terminalFocusedWorkerId:Hr?_r:void 0,controlGroups:N,completionPendingWorkerIds:Lr,onSelect:Ji,onSelectionChange:xi,onActivateWorker:Tr,onMoveOrderIssued:jr,onPositionCommit:ze,centerOnWorkerId:it,centerRequestKey:ni}),T.jsx(ov,{shortcuts:Z?.shortcuts??[],selectedWorker:rr,selectedWorkers:et,onSpawnShortcut:ne=>{Ur({shortcutIndex:ne})},onOpenSpawnDialog:()=>{t(!0),n(!1)},onOpenPalette:()=>{n(!0),t(!1)},onDeselect:()=>Ji(void 0),onKillSelected:()=>{Vr()},onRenameSelected:()=>{ye()},onToggleMovementMode:()=>{Rs()}})]}),T.jsx("div",{className:`layout-divider${ie?" layout-divider-active":""}`,role:"separator","aria-label":"Resize map and terminal columns","aria-orientation":"vertical",onPointerDown:ne=>{ne.button===0&&(ne.preventDefault(),le.current=ne.pointerId,ue(!0),ne.currentTarget.setPointerCapture(ne.pointerId),ir(ne.clientX))},onPointerMove:ne=>{le.current===ne.pointerId&&(ne.preventDefault(),ir(ne.clientX))},onPointerUp:ne=>{le.current===ne.pointerId&&(ne.preventDefault(),ne.currentTarget.hasPointerCapture(ne.pointerId)&&ne.currentTarget.releasePointerCapture(ne.pointerId),le.current=void 0,ue(!1))},onPointerCancel:ne=>{le.current===ne.pointerId&&(ne.currentTarget.hasPointerCapture(ne.pointerId)&&ne.currentTarget.releasePointerCapture(ne.pointerId),le.current=void 0,ue(!1))}}),T.jsx(zw,{activeWorkers:I,selectedWorkers:et,terminalWorker:Ei,terminalFocused:Hr,selectedGroupActiveIndex:qt,setSelectedGroupActiveIndex:Nt,setFocusedSelectedWorkerId:Ci,rallyCommandInputRef:K,rallyCommandDraft:v,rallyCommandSending:E,rallyCommandResultText:j,onRallyCommandDraftChange:de,onSendRallyCommand:se,rosterEntries:ge,completionPendingWorkerIds:Lr,rosterActiveIndex:Ft,setRosterActiveIndex:at,onActivateRosterIndex:q,onOpenSelectedInTerminal:X,terminalFocusToken:dr}),Z?T.jsx(w0,{open:e,projects:Z.projects,runtimes:Z.runtimes,onClose:()=>t(!1),onSpawn:(ne,De)=>{Ur({projectId:ne,runtimeId:De})}}):null,Z?T.jsx(lv,{open:s,config:Z,onClose:()=>n(!1),onSpawnShortcut:ne=>{Ur({shortcutIndex:ne})},onSpawnProjectRuntime:(ne,De)=>{Ur({projectId:ne,runtimeId:De})}}):null,T.jsx(S0,{open:l,onClose:()=>{c(!1)}}),T.jsx(av,{workerIds:p,workers:Es,onClose:ts,onConfirm:mr}),T.jsx(y0,{open:h,targetWorkerIds:C,targetWorkers:Kr,initialDraft:g,onClose:es,onSubmit:Ms}),W?T.jsx("div",{className:"error-toast",onClick:()=>Q(void 0),children:W}):null]})}const Zp=document.getElementById("root");if(!Zp)throw new Error("Missing #root container");Yg.createRoot(Zp).render(T.jsx(x.StrictMode,{children:T.jsx(C1,{})}));
|